--- /srv/rebuilderd/tmp/rebuilderdZq4w4b/inputs/ssg-nondebian_0.1.82-1_all.deb +++ /srv/rebuilderd/tmp/rebuilderdZq4w4b/out/ssg-nondebian_0.1.82-1_all.deb ├── file list │ @@ -1,3 +1,3 @@ │ -rw-r--r-- 0 0 0 4 2026-09-07 19:17:46.000000 debian-binary │ --rw-r--r-- 0 0 0 19948 2026-09-07 19:17:46.000000 control.tar.xz │ --rw-r--r-- 0 0 0 45288532 2026-09-07 19:17:46.000000 data.tar.xz │ +-rw-r--r-- 0 0 0 19924 2026-09-07 19:17:46.000000 control.tar.xz │ +-rw-r--r-- 0 0 0 45282816 2026-09-07 19:17:46.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 Remedia │ │ │ -0004e430: 7469 6f6e 204f 5342 7569 6c64 2042 6c75 tion OSBuild Blu │ │ │ -0004e440: 6570 7269 6e74 2073 6e69 7070 6574 20e2 eprint snippet . │ │ │ -0004e450: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
.[[packages]
│ │ │ -0004e4a0: 5d0a 6e61 6d65 203d 2022 7375 646f 220a  ].name = "sudo".
│ │ │ -0004e4b0: 7665 7273 696f 6e20 3d20 222a 220a 3c2f  version = "*".
Rem │ │ │ -0004e570: 6564 6961 7469 6f6e 2041 6e61 636f 6e64 ediation Anacond │ │ │ -0004e580: 6120 736e 6970 7065 7420 e287 b23c 2f61 a snippet ...
low< │ │ │ -0004e630: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ -0004e680: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
Co │ │ │ -0004e610: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -0004e640: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ -0004e660: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ -0004e670: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ -0004e690: 3c2f 7468 3e3c 7464 3e65 6e61 626c 653c enable< │ │ │ -0004e6a0: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
.pac
│ │ │ -0004e6c0: 6b61 6765 202d 2d61 6464 3d73 7564 6f0a  kage --add=sudo.
│ │ │ -0004e6d0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
R │ │ │ -0004e780: 656d 6564 6961 7469 6f6e 2050 7570 7065 emediation Puppe │ │ │ -0004e790: 7420 736e 6970 7065 7420 e287 b23c 2f61 t snippet ...
low< │ │ │ -0004e840: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ -0004e890: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
Co │ │ │ -0004e820: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -0004e850: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ -0004e870: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ -0004e880: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ -0004e8a0: 3c2f 7468 3e3c 7464 3e65 6e61 626c 653c enable< │ │ │ -0004e8b0: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
incl
│ │ │ -0004e8d0: 7564 6520 696e 7374 616c 6c5f 7375 646f  ude install_sudo
│ │ │ -0004e8e0: 0a0a 636c 6173 7320 696e 7374 616c 6c5f  ..class install_
│ │ │ -0004e8f0: 7375 646f 207b 0a20 2070 6163 6b61 6765  sudo {.  package
│ │ │ -0004e900: 207b 2027 7375 646f 273a 0a20 2020 2065   { 'sudo':.    e
│ │ │ -0004e910: 6e73 7572 6520 3d26 6774 3b20 2769 6e73  nsure => 'ins
│ │ │ -0004e920: 7461 6c6c 6564 272c 0a20 207d 0a7d 0a3c  talled',.  }.}.<
│ │ │ -0004e930: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
Re │ │ │ -0004e9e0: 6d65 6469 6174 696f 6e20 416e 7369 626c mediation Ansibl │ │ │ -0004e9f0: 6520 736e 6970 7065 7420 e287 b23c 2f61 e snippet ...
low< │ │ │ -0004eaa0: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ -0004eaf0: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
Co │ │ │ -0004ea80: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -0004eab0: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ -0004ead0: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ -0004eae0: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ -0004eb00: 3c2f 7468 3e3c 7464 3e65 6e61 626c 653c enable< │ │ │ -0004eb10: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
- na
│ │ │ -0004eb30: 6d65 3a20 4761 7468 6572 2074 6865 2070  me: Gather the p
│ │ │ -0004eb40: 6163 6b61 6765 2066 6163 7473 0a20 2070  ackage facts.  p
│ │ │ -0004eb50: 6163 6b61 6765 5f66 6163 7473 3a0a 2020  ackage_facts:.  
│ │ │ -0004eb60: 2020 6d61 6e61 6765 723a 2061 7574 6f0a    manager: auto.
│ │ │ -0004eb70: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ -0004eb80: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ -0004eb90: 2020 2d20 5043 492d 4453 5376 342d 322e    - PCI-DSSv4-2.
│ │ │ -0004eba0: 320a 2020 2d20 5043 492d 4453 5376 342d  2.  - PCI-DSSv4-
│ │ │ -0004ebb0: 322e 322e 360a 2020 2d20 656e 6162 6c65  2.2.6.  - enable
│ │ │ -0004ebc0: 5f73 7472 6174 6567 790a 2020 2d20 6c6f  _strategy.  - lo
│ │ │ -0004ebd0: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ -0004ebe0: 206c 6f77 5f64 6973 7275 7074 696f 6e0a   low_disruption.
│ │ │ -0004ebf0: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ -0004ec00: 6974 790a 2020 2d20 6e6f 5f72 6562 6f6f  ity.  - no_reboo
│ │ │ -0004ec10: 745f 6e65 6564 6564 0a20 202d 2070 6163  t_needed.  - pac
│ │ │ -0004ec20: 6b61 6765 5f73 7564 6f5f 696e 7374 616c  kage_sudo_instal
│ │ │ -0004ec30: 6c65 640a 0a2d 206e 616d 653a 2045 6e73  led..- name: Ens
│ │ │ -0004ec40: 7572 6520 7375 646f 2069 7320 696e 7374  ure sudo is inst
│ │ │ -0004ec50: 616c 6c65 640a 2020 616e 7369 626c 652e  alled.  ansible.
│ │ │ -0004ec60: 6275 696c 7469 6e2e 7061 636b 6167 653a  builtin.package:
│ │ │ -0004ec70: 0a20 2020 206e 616d 653a 2073 7564 6f0a  .    name: sudo.
│ │ │ -0004ec80: 2020 2020 7374 6174 653a 2070 7265 7365      state: prese
│ │ │ -0004ec90: 6e74 0a20 2077 6865 6e3a 2027 226b 6572  nt.  when: '"ker
│ │ │ -0004eca0: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ -0004ecb0: 6661 6374 732e 7061 636b 6167 6573 270a  facts.packages'.
│ │ │ -0004ecc0: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ -0004ecd0: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ -0004ece0: 2020 2d20 5043 492d 4453 5376 342d 322e    - PCI-DSSv4-2.
│ │ │ -0004ecf0: 320a 2020 2d20 5043 492d 4453 5376 342d  2.  - PCI-DSSv4-
│ │ │ -0004ed00: 322e 322e 360a 2020 2d20 656e 6162 6c65  2.2.6.  - enable
│ │ │ -0004ed10: 5f73 7472 6174 6567 790a 2020 2d20 6c6f  _strategy.  - lo
│ │ │ -0004ed20: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ -0004ed30: 206c 6f77 5f64 6973 7275 7074 696f 6e0a   low_disruption.
│ │ │ -0004ed40: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ -0004ed50: 6974 790a 2020 2d20 6e6f 5f72 6562 6f6f  ity.  - no_reboo
│ │ │ -0004ed60: 745f 6e65 6564 6564 0a20 202d 2070 6163  t_needed.  - pac
│ │ │ -0004ed70: 6b61 6765 5f73 7564 6f5f 696e 7374 616c  kage_sudo_instal
│ │ │ -0004ed80: 6c65 640a 3c2f 636f 6465 3e3c 2f70 7265  led.
Remediation S │ │ │ -0004ee40: 6865 6c6c 2073 6372 6970 7420 e287 b23c hell script ...< │ │ │ -0004ee50: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
│ │ │ -0004eee0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
# 
│ │ │ -0004ef80: 5265 6d65 6469 6174 696f 6e20 6973 2061  Remediation is a
│ │ │ -0004ef90: 7070 6c69 6361 626c 6520 6f6e 6c79 2069  pplicable only i
│ │ │ -0004efa0: 6e20 6365 7274 6169 6e20 706c 6174 666f  n certain platfo
│ │ │ -0004efb0: 726d 730a 6966 2072 706d 202d 2d71 7569  rms.if rpm --qui
│ │ │ -0004efc0: 6574 202d 7120 6b65 726e 656c 3b20 7468  et -q kernel; th
│ │ │ -0004efd0: 656e 0a0a 6966 2021 2072 706d 202d 7120  en..if ! rpm -q 
│ │ │ -0004efe0: 2d2d 7175 6965 7420 2273 7564 6f22 203b  --quiet "sudo" ;
│ │ │ -0004eff0: 2074 6865 6e0a 2020 2020 646e 6620 696e   then.    dnf in
│ │ │ -0004f000: 7374 616c 6c20 2d79 2022 7375 646f 220a  stall -y "sudo".
│ │ │ -0004f010: 6669 0a0a 656c 7365 0a20 2020 2026 6774  fi..else.    >
│ │ │ -0004f020: 3b26 616d 703b 3220 6563 686f 2027 5265  ;&2 echo 'Re
│ │ │ -0004f030: 6d65 6469 6174 696f 6e20 6973 206e 6f74  mediation is not
│ │ │ -0004f040: 2061 7070 6c69 6361 626c 652c 206e 6f74   applicable, not
│ │ │ -0004f050: 6869 6e67 2077 6173 2064 6f6e 6527 0a66  hing was done'.f
│ │ │ -0004f060: 690a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  i.
< │ │ │ +0004e430: 7469 6f6e 2041 6e73 6962 6c65 2073 6e69 tion Ansible sni │ │ │ +0004e440: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ +0004e450: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
< │ │ │ +0004e480: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +0004e490: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +0004e4a0: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +0004e4b0: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +0004e4c0: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >
Disruption:Strategy: │ │ │ +0004e550: 3c74 643e 656e 6162 6c65 3c2f 7464 3e3c < │ │ │ +0004e560: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
│ │ │ -0004eed0: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -0004ef00: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -0004ef10: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -0004ef50: 793a 3c2f 7468 3e3c 7464 3e65 6e61 626c y:enabl │ │ │ -0004ef60: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
Complex │ │ │ +0004e4d0: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ +0004e4e0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
low
Reboo │ │ │ +0004e520: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ +0004e530: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
enable
- name: G
│ │ │ +0004e580: 6174 6865 7220 7468 6520 7061 636b 6167  ather the packag
│ │ │ +0004e590: 6520 6661 6374 730a 2020 7061 636b 6167  e facts.  packag
│ │ │ +0004e5a0: 655f 6661 6374 733a 0a20 2020 206d 616e  e_facts:.    man
│ │ │ +0004e5b0: 6167 6572 3a20 6175 746f 0a20 2074 6167  ager: auto.  tag
│ │ │ +0004e5c0: 733a 0a20 202d 204e 4953 542d 3830 302d  s:.  - NIST-800-
│ │ │ +0004e5d0: 3533 2d43 4d2d 3628 6129 0a20 202d 2050  53-CM-6(a).  - P
│ │ │ +0004e5e0: 4349 2d44 5353 7634 2d32 2e32 0a20 202d  CI-DSSv4-2.2.  -
│ │ │ +0004e5f0: 2050 4349 2d44 5353 7634 2d32 2e32 2e36   PCI-DSSv4-2.2.6
│ │ │ +0004e600: 0a20 202d 2065 6e61 626c 655f 7374 7261  .  - enable_stra
│ │ │ +0004e610: 7465 6779 0a20 202d 206c 6f77 5f63 6f6d  tegy.  - low_com
│ │ │ +0004e620: 706c 6578 6974 790a 2020 2d20 6c6f 775f  plexity.  - low_
│ │ │ +0004e630: 6469 7372 7570 7469 6f6e 0a20 202d 206d  disruption.  - m
│ │ │ +0004e640: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ +0004e650: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ +0004e660: 6465 640a 2020 2d20 7061 636b 6167 655f  ded.  - package_
│ │ │ +0004e670: 7375 646f 5f69 6e73 7461 6c6c 6564 0a0a  sudo_installed..
│ │ │ +0004e680: 2d20 6e61 6d65 3a20 456e 7375 7265 2073  - name: Ensure s
│ │ │ +0004e690: 7564 6f20 6973 2069 6e73 7461 6c6c 6564  udo is installed
│ │ │ +0004e6a0: 0a20 2061 6e73 6962 6c65 2e62 7569 6c74  .  ansible.built
│ │ │ +0004e6b0: 696e 2e70 6163 6b61 6765 3a0a 2020 2020  in.package:.    
│ │ │ +0004e6c0: 6e61 6d65 3a20 7375 646f 0a20 2020 2073  name: sudo.    s
│ │ │ +0004e6d0: 7461 7465 3a20 7072 6573 656e 740a 2020  tate: present.  
│ │ │ +0004e6e0: 7768 656e 3a20 2722 6b65 726e 656c 2220  when: '"kernel" 
│ │ │ +0004e6f0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +0004e700: 2e70 6163 6b61 6765 7327 0a20 2074 6167  .packages'.  tag
│ │ │ +0004e710: 733a 0a20 202d 204e 4953 542d 3830 302d  s:.  - NIST-800-
│ │ │ +0004e720: 3533 2d43 4d2d 3628 6129 0a20 202d 2050  53-CM-6(a).  - P
│ │ │ +0004e730: 4349 2d44 5353 7634 2d32 2e32 0a20 202d  CI-DSSv4-2.2.  -
│ │ │ +0004e740: 2050 4349 2d44 5353 7634 2d32 2e32 2e36   PCI-DSSv4-2.2.6
│ │ │ +0004e750: 0a20 202d 2065 6e61 626c 655f 7374 7261  .  - enable_stra
│ │ │ +0004e760: 7465 6779 0a20 202d 206c 6f77 5f63 6f6d  tegy.  - low_com
│ │ │ +0004e770: 706c 6578 6974 790a 2020 2d20 6c6f 775f  plexity.  - low_
│ │ │ +0004e780: 6469 7372 7570 7469 6f6e 0a20 202d 206d  disruption.  - m
│ │ │ +0004e790: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ +0004e7a0: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ +0004e7b0: 6465 640a 2020 2d20 7061 636b 6167 655f  ded.  - package_
│ │ │ +0004e7c0: 7375 646f 5f69 6e73 7461 6c6c 6564 0a3c  sudo_installed.<
│ │ │ +0004e7d0: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
Re │ │ │ +0004e880: 6d65 6469 6174 696f 6e20 5075 7070 6574 mediation Puppet │ │ │ +0004e890: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ +0004e8a0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
Com │ │ │ +0004e920: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ +0004e950: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ +0004e970: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +0004e980: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ +0004e9a0: 2f74 683e 3c74 643e 656e 6162 6c65 3c2f /th>enable
│ │ │ +0004e9c0: 3c70 7265 3e3c 636f 6465 3e69 6e63 6c75
inclu
│ │ │ +0004e9d0: 6465 2069 6e73 7461 6c6c 5f73 7564 6f0a  de install_sudo.
│ │ │ +0004e9e0: 0a63 6c61 7373 2069 6e73 7461 6c6c 5f73  .class install_s
│ │ │ +0004e9f0: 7564 6f20 7b0a 2020 7061 636b 6167 6520  udo {.  package 
│ │ │ +0004ea00: 7b20 2773 7564 6f27 3a0a 2020 2020 656e  { 'sudo':.    en
│ │ │ +0004ea10: 7375 7265 203d 2667 743b 2027 696e 7374  sure => 'inst
│ │ │ +0004ea20: 616c 6c65 6427 2c0a 2020 7d0a 7d0a 3c2f  alled',.  }.}.
Rem │ │ │ +0004eae0: 6564 6961 7469 6f6e 204f 5342 7569 6c64 ediation OSBuild │ │ │ +0004eaf0: 2042 6c75 6570 7269 6e74 2073 6e69 7070 Blueprint snipp │ │ │ +0004eb00: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
.[[packa │ │ │ +0004eb50: 6765 735d 5d0a 6e61 6d65 203d 2022 7375 ges]].name = "su │ │ │ +0004eb60: 646f 220a 7665 7273 696f 6e20 3d20 222a do".version = "* │ │ │ +0004eb70: 220a 3c2f 636f 6465 3e3c 2f70 7265 3e3c ".< │ │ │ +0004eb80: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation She │ │ │ +0004ec30: 6c6c 2073 6372 6970 7420 e287 b23c 2f61 ll script ...
low< │ │ │ +0004ece0: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ +0004ed30: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
Co │ │ │ +0004ecc0: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +0004ecf0: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +0004ed10: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +0004ed20: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +0004ed40: 3c2f 7468 3e3c 7464 3e65 6e61 626c 653c enable< │ │ │ +0004ed50: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
# Re
│ │ │ +0004ed70: 6d65 6469 6174 696f 6e20 6973 2061 7070  mediation is app
│ │ │ +0004ed80: 6c69 6361 626c 6520 6f6e 6c79 2069 6e20  licable only in 
│ │ │ +0004ed90: 6365 7274 6169 6e20 706c 6174 666f 726d  certain platform
│ │ │ +0004eda0: 730a 6966 2072 706d 202d 2d71 7569 6574  s.if rpm --quiet
│ │ │ +0004edb0: 202d 7120 6b65 726e 656c 3b20 7468 656e   -q kernel; then
│ │ │ +0004edc0: 0a0a 6966 2021 2072 706d 202d 7120 2d2d  ..if ! rpm -q --
│ │ │ +0004edd0: 7175 6965 7420 2273 7564 6f22 203b 2074  quiet "sudo" ; t
│ │ │ +0004ede0: 6865 6e0a 2020 2020 646e 6620 696e 7374  hen.    dnf inst
│ │ │ +0004edf0: 616c 6c20 2d79 2022 7375 646f 220a 6669  all -y "sudo".fi
│ │ │ +0004ee00: 0a0a 656c 7365 0a20 2020 2026 6774 3b26  ..else.    >&
│ │ │ +0004ee10: 616d 703b 3220 6563 686f 2027 5265 6d65  amp;2 echo 'Reme
│ │ │ +0004ee20: 6469 6174 696f 6e20 6973 206e 6f74 2061  diation is not a
│ │ │ +0004ee30: 7070 6c69 6361 626c 652c 206e 6f74 6869  pplicable, nothi
│ │ │ +0004ee40: 6e67 2077 6173 2064 6f6e 6527 0a66 690a  ng was done'.fi.
│ │ │ +0004ee50: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
R │ │ │ +0004ef00: 656d 6564 6961 7469 6f6e 2041 6e61 636f emediation Anaco │ │ │ +0004ef10: 6e64 6120 736e 6970 7065 7420 e287 b23c nda snippet ...< │ │ │ +0004ef20: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
│ │ │ +0004efb0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
.p
│ │ │ +0004f050: 6163 6b61 6765 202d 2d61 6464 3d73 7564  ackage --add=sud
│ │ │ +0004f060: 6f0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  o.
< │ │ │ 0004f070: 2f64 6976 3e3c 2f64 6976 3e3c 2f74 643e /div> │ │ │ 0004f080: 3c2f 7472 3e3c 2f74 626f 6479 3e3c 2f74 < │ │ │ 0004f0a0: 7472 2064 6174 612d 7474 2d69 643d 2278 tr data-tt-id="x │ │ │ 0004f0b0: 6363 6466 5f6f 7267 2e73 7367 7072 6f6a ccdf_org.ssgproj │ │ │ 0004f0c0: 6563 742e 636f 6e74 656e 745f 7275 6c65 ect.content_rule │ │ │ 0004f0d0: 5f73 7564 6f5f 6164 645f 7573 655f 7074 _sudo_add_use_pt │ │ │ @@ -67256,154 +67256,154 @@ │ │ │ 00106b70: 6170 7365 2220 6461 7461 2d74 6172 6765 apse" data-targe │ │ │ 00106b80: 743d 2223 6964 3234 3322 2074 6162 696e t="#id243" tabin │ │ │ 00106b90: 6465 783d 2230 2220 726f 6c65 3d22 6275 dex="0" role="bu │ │ │ 00106ba0: 7474 6f6e 2220 6172 6961 2d65 7870 616e tton" aria-expan │ │ │ 00106bb0: 6465 643d 2266 616c 7365 2220 7469 746c ded="false" titl │ │ │ 00106bc0: 653d 2241 6374 6976 6174 6520 746f 2072 e="Activate to r │ │ │ 00106bd0: 6576 6561 6c22 2068 7265 663d 2223 2122 eveal" href="#!" │ │ │ -00106be0: 3e52 656d 6564 6961 7469 6f6e 204f 5342 >Remediation OSB │ │ │ -00106bf0: 7569 6c64 2042 6c75 6570 7269 6e74 2073 uild Blueprint s │ │ │ -00106c00: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
.[c
│ │ │ -00106c50: 7573 746f 6d69 7a61 7469 6f6e 732e 7365  ustomizations.se
│ │ │ -00106c60: 7276 6963 6573 5d0a 656e 6162 6c65 6420  rvices].enabled 
│ │ │ -00106c70: 3d20 5b22 7379 7374 656d 642d 6a6f 7572  = ["systemd-jour
│ │ │ -00106c80: 6e61 6c64 225d 0a3c 2f63 6f64 653e 3c2f  nald"].
Remediati │ │ │ -00106d40: 6f6e 2050 7570 7065 7420 736e 6970 7065 on Puppet snippe │ │ │ -00106d50: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ -00106dd0: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>
│ │ │ -00106e10: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 enable
│ │ │ +0004efa0: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +0004efd0: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +0004efe0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +0004f020: 793a 3c2f 7468 3e3c 7464 3e65 6e61 626c y:enabl │ │ │ +0004f030: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
Complexit │ │ │ -00106de0: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low
│ │ │ -00106e00: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption:low
Reboot: │ │ │ -00106e30: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false
│ │ │ -00106e50: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:
<
│ │ │ -00106e80: 636f 6465 3e69 6e63 6c75 6465 2065 6e61  code>include ena
│ │ │ -00106e90: 626c 655f 7379 7374 656d 642d 6a6f 7572  ble_systemd-jour
│ │ │ -00106ea0: 6e61 6c64 0a0a 636c 6173 7320 656e 6162  nald..class enab
│ │ │ -00106eb0: 6c65 5f73 7973 7465 6d64 2d6a 6f75 726e  le_systemd-journ
│ │ │ -00106ec0: 616c 6420 7b0a 2020 7365 7276 6963 6520  ald {.  service 
│ │ │ -00106ed0: 7b27 7379 7374 656d 642d 6a6f 7572 6e61  {'systemd-journa
│ │ │ -00106ee0: 6c64 273a 0a20 2020 2065 6e61 626c 6520  ld':.    enable 
│ │ │ -00106ef0: 3d26 6774 3b20 7472 7565 2c0a 2020 2020  => true,.    
│ │ │ -00106f00: 656e 7375 7265 203d 2667 743b 2027 7275  ensure => 'ru
│ │ │ -00106f10: 6e6e 696e 6727 2c0a 2020 7d0a 7d0a 3c2f  nning',.  }.}.
Re │ │ │ -00106fd0: 6d65 6469 6174 696f 6e20 416e 7369 626c mediation Ansibl │ │ │ -00106fe0: 6520 736e 6970 7065 7420 e287 b23c 2f61 e snippet ...
< │ │ │ -00107080: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -00107090: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ -001070e0: 3c74 723e 3c74 683e 5374 7261 7465 6779
- n
│ │ │ -00107120: 616d 653a 2047 6174 6865 7220 7468 6520  ame: Gather the 
│ │ │ -00107130: 7061 636b 6167 6520 6661 6374 730a 2020  package facts.  
│ │ │ -00107140: 7061 636b 6167 655f 6661 6374 733a 0a20  package_facts:. 
│ │ │ -00107150: 2020 206d 616e 6167 6572 3a20 6175 746f     manager: auto
│ │ │ -00107160: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ -00107170: 542d 3830 302d 3533 2d53 432d 3234 0a20  T-800-53-SC-24. 
│ │ │ -00107180: 202d 2065 6e61 626c 655f 7374 7261 7465   - enable_strate
│ │ │ -00107190: 6779 0a20 202d 206c 6f77 5f63 6f6d 706c  gy.  - low_compl
│ │ │ -001071a0: 6578 6974 790a 2020 2d20 6c6f 775f 6469  exity.  - low_di
│ │ │ -001071b0: 7372 7570 7469 6f6e 0a20 202d 206d 6564  sruption.  - med
│ │ │ -001071c0: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ -001071d0: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ -001071e0: 640a 2020 2d20 7365 7276 6963 655f 7379  d.  - service_sy
│ │ │ -001071f0: 7374 656d 642d 6a6f 7572 6e61 6c64 5f65  stemd-journald_e
│ │ │ -00107200: 6e61 626c 6564 0a0a 2d20 6e61 6d65 3a20  nabled..- name: 
│ │ │ -00107210: 456e 6162 6c65 2073 7973 7465 6d64 2d6a  Enable systemd-j
│ │ │ -00107220: 6f75 726e 616c 6420 5365 7276 6963 6520  ournald Service 
│ │ │ -00107230: 2d20 456e 6162 6c65 2073 6572 7669 6365  - Enable service
│ │ │ -00107240: 2073 7973 7465 6d64 2d6a 6f75 726e 616c   systemd-journal
│ │ │ -00107250: 640a 2020 626c 6f63 6b3a 0a0a 2020 2d20  d.  block:..  - 
│ │ │ -00107260: 6e61 6d65 3a20 4761 7468 6572 2074 6865  name: Gather the
│ │ │ -00107270: 2070 6163 6b61 6765 2066 6163 7473 0a20   package facts. 
│ │ │ -00107280: 2020 2061 6e73 6962 6c65 2e62 7569 6c74     ansible.built
│ │ │ -00107290: 696e 2e70 6163 6b61 6765 5f66 6163 7473  in.package_facts
│ │ │ -001072a0: 3a0a 2020 2020 2020 6d61 6e61 6765 723a  :.      manager:
│ │ │ -001072b0: 2061 7574 6f0a 0a20 202d 206e 616d 653a   auto..  - name:
│ │ │ -001072c0: 2045 6e61 626c 6520 7379 7374 656d 642d   Enable systemd-
│ │ │ -001072d0: 6a6f 7572 6e61 6c64 2053 6572 7669 6365  journald Service
│ │ │ -001072e0: 202d 2045 6e61 626c 6520 5365 7276 6963   - Enable Servic
│ │ │ -001072f0: 6520 7379 7374 656d 642d 6a6f 7572 6e61  e systemd-journa
│ │ │ -00107300: 6c64 0a20 2020 2061 6e73 6962 6c65 2e62  ld.    ansible.b
│ │ │ -00107310: 7569 6c74 696e 2e73 7973 7465 6d64 3a0a  uiltin.systemd:.
│ │ │ -00107320: 2020 2020 2020 6e61 6d65 3a20 7379 7374        name: syst
│ │ │ -00107330: 656d 642d 6a6f 7572 6e61 6c64 0a20 2020  emd-journald.   
│ │ │ -00107340: 2020 2065 6e61 626c 6564 3a20 7472 7565     enabled: true
│ │ │ -00107350: 0a20 2020 2020 2073 7461 7465 3a20 7374  .      state: st
│ │ │ -00107360: 6172 7465 640a 2020 2020 2020 6d61 736b  arted.      mask
│ │ │ -00107370: 6564 3a20 6661 6c73 650a 2020 2020 7768  ed: false.    wh
│ │ │ -00107380: 656e 3a0a 2020 2020 2d20 2722 7379 7374  en:.    - '"syst
│ │ │ -00107390: 656d 6422 2069 6e20 616e 7369 626c 655f  emd" in ansible_
│ │ │ -001073a0: 6661 6374 732e 7061 636b 6167 6573 270a  facts.packages'.
│ │ │ -001073b0: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ -001073c0: 2d38 3030 2d35 332d 5343 2d32 340a 2020  -800-53-SC-24.  
│ │ │ -001073d0: 2d20 656e 6162 6c65 5f73 7472 6174 6567  - enable_strateg
│ │ │ -001073e0: 790a 2020 2d20 6c6f 775f 636f 6d70 6c65  y.  - low_comple
│ │ │ -001073f0: 7869 7479 0a20 202d 206c 6f77 5f64 6973  xity.  - low_dis
│ │ │ -00107400: 7275 7074 696f 6e0a 2020 2d20 6d65 6469  ruption.  - medi
│ │ │ -00107410: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ -00107420: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ -00107430: 0a20 202d 2073 6572 7669 6365 5f73 7973  .  - service_sys
│ │ │ -00107440: 7465 6d64 2d6a 6f75 726e 616c 645f 656e  temd-journald_en
│ │ │ -00107450: 6162 6c65 640a 2020 2d20 7370 6563 6961  abled.  - specia
│ │ │ -00107460: 6c5f 7365 7276 6963 655f 626c 6f63 6b0a  l_service_block.
│ │ │ -00107470: 2020 7768 656e 3a20 2722 6b65 726e 656c    when: '"kernel
│ │ │ -00107480: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -00107490: 7473 2e70 6163 6b61 6765 7327 0a3c 2f63  ts.packages'.Remediation Ans
│ │ │ +00106bf0: 6962 6c65 2073 6e69 7070 6574 20e2 87b2  ible snippet ...
│ │ │ +00106c00: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61  
C │ │ │ -00107070: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -001070a0: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ -001070b0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -001070f0: 3a3c 2f74 683e 3c74 643e 656e 6162 6c65 :enable │ │ │ -00107100: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Complexity: │ │ │ +00106cd0: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +00106ce0: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f

│ │ │ +00106d30: 2d20 6e61 6d65 3a20 4761 7468 6572 2074  - name: Gather t
│ │ │ +00106d40: 6865 2070 6163 6b61 6765 2066 6163 7473  he package facts
│ │ │ +00106d50: 0a20 2070 6163 6b61 6765 5f66 6163 7473  .  package_facts
│ │ │ +00106d60: 3a0a 2020 2020 6d61 6e61 6765 723a 2061  :.    manager: a
│ │ │ +00106d70: 7574 6f0a 2020 7461 6773 3a0a 2020 2d20  uto.  tags:.  - 
│ │ │ +00106d80: 4e49 5354 2d38 3030 2d35 332d 5343 2d32  NIST-800-53-SC-2
│ │ │ +00106d90: 340a 2020 2d20 656e 6162 6c65 5f73 7472  4.  - enable_str
│ │ │ +00106da0: 6174 6567 790a 2020 2d20 6c6f 775f 636f  ategy.  - low_co
│ │ │ +00106db0: 6d70 6c65 7869 7479 0a20 202d 206c 6f77  mplexity.  - low
│ │ │ +00106dc0: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +00106dd0: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ +00106de0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ +00106df0: 6564 6564 0a20 202d 2073 6572 7669 6365  eded.  - service
│ │ │ +00106e00: 5f73 7973 7465 6d64 2d6a 6f75 726e 616c  _systemd-journal
│ │ │ +00106e10: 645f 656e 6162 6c65 640a 0a2d 206e 616d  d_enabled..- nam
│ │ │ +00106e20: 653a 2045 6e61 626c 6520 7379 7374 656d  e: Enable system
│ │ │ +00106e30: 642d 6a6f 7572 6e61 6c64 2053 6572 7669  d-journald Servi
│ │ │ +00106e40: 6365 202d 2045 6e61 626c 6520 7365 7276  ce - Enable serv
│ │ │ +00106e50: 6963 6520 7379 7374 656d 642d 6a6f 7572  ice systemd-jour
│ │ │ +00106e60: 6e61 6c64 0a20 2062 6c6f 636b 3a0a 0a20  nald.  block:.. 
│ │ │ +00106e70: 202d 206e 616d 653a 2047 6174 6865 7220   - name: Gather 
│ │ │ +00106e80: 7468 6520 7061 636b 6167 6520 6661 6374  the package fact
│ │ │ +00106e90: 730a 2020 2020 616e 7369 626c 652e 6275  s.    ansible.bu
│ │ │ +00106ea0: 696c 7469 6e2e 7061 636b 6167 655f 6661  iltin.package_fa
│ │ │ +00106eb0: 6374 733a 0a20 2020 2020 206d 616e 6167  cts:.      manag
│ │ │ +00106ec0: 6572 3a20 6175 746f 0a0a 2020 2d20 6e61  er: auto..  - na
│ │ │ +00106ed0: 6d65 3a20 456e 6162 6c65 2073 7973 7465  me: Enable syste
│ │ │ +00106ee0: 6d64 2d6a 6f75 726e 616c 6420 5365 7276  md-journald Serv
│ │ │ +00106ef0: 6963 6520 2d20 456e 6162 6c65 2053 6572  ice - Enable Ser
│ │ │ +00106f00: 7669 6365 2073 7973 7465 6d64 2d6a 6f75  vice systemd-jou
│ │ │ +00106f10: 726e 616c 640a 2020 2020 616e 7369 626c  rnald.    ansibl
│ │ │ +00106f20: 652e 6275 696c 7469 6e2e 7379 7374 656d  e.builtin.system
│ │ │ +00106f30: 643a 0a20 2020 2020 206e 616d 653a 2073  d:.      name: s
│ │ │ +00106f40: 7973 7465 6d64 2d6a 6f75 726e 616c 640a  ystemd-journald.
│ │ │ +00106f50: 2020 2020 2020 656e 6162 6c65 643a 2074        enabled: t
│ │ │ +00106f60: 7275 650a 2020 2020 2020 7374 6174 653a  rue.      state:
│ │ │ +00106f70: 2073 7461 7274 6564 0a20 2020 2020 206d   started.      m
│ │ │ +00106f80: 6173 6b65 643a 2066 616c 7365 0a20 2020  asked: false.   
│ │ │ +00106f90: 2077 6865 6e3a 0a20 2020 202d 2027 2273   when:.    - '"s
│ │ │ +00106fa0: 7973 7465 6d64 2220 696e 2061 6e73 6962  ystemd" in ansib
│ │ │ +00106fb0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +00106fc0: 7327 0a20 2074 6167 733a 0a20 202d 204e  s'.  tags:.  - N
│ │ │ +00106fd0: 4953 542d 3830 302d 3533 2d53 432d 3234  IST-800-53-SC-24
│ │ │ +00106fe0: 0a20 202d 2065 6e61 626c 655f 7374 7261  .  - enable_stra
│ │ │ +00106ff0: 7465 6779 0a20 202d 206c 6f77 5f63 6f6d  tegy.  - low_com
│ │ │ +00107000: 706c 6578 6974 790a 2020 2d20 6c6f 775f  plexity.  - low_
│ │ │ +00107010: 6469 7372 7570 7469 6f6e 0a20 202d 206d  disruption.  - m
│ │ │ +00107020: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ +00107030: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ +00107040: 6465 640a 2020 2d20 7365 7276 6963 655f  ded.  - service_
│ │ │ +00107050: 7379 7374 656d 642d 6a6f 7572 6e61 6c64  systemd-journald
│ │ │ +00107060: 5f65 6e61 626c 6564 0a20 202d 2073 7065  _enabled.  - spe
│ │ │ +00107070: 6369 616c 5f73 6572 7669 6365 5f62 6c6f  cial_service_blo
│ │ │ +00107080: 636b 0a20 2077 6865 6e3a 2027 226b 6572  ck.  when: '"ker
│ │ │ +00107090: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ +001070a0: 6661 6374 732e 7061 636b 6167 6573 270a  facts.packages'.
│ │ │ +001070b0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ +00107160: 5265 6d65 6469 6174 696f 6e20 5075 7070 Remediation Pupp │ │ │ +00107170: 6574 2073 6e69 7070 6574 20e2 87b2 3c2f et snippet ...
low
Disru │ │ │ +00106cb0: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +00106cc0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +00106d00: 6567 793a 3c2f 7468 3e3c 7464 3e65 6e61 egy:ena │ │ │ +00106d10: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
│ │ │ +00107210: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
in
│ │ │ +001072b0: 636c 7564 6520 656e 6162 6c65 5f73 7973  clude enable_sys
│ │ │ +001072c0: 7465 6d64 2d6a 6f75 726e 616c 640a 0a63  temd-journald..c
│ │ │ +001072d0: 6c61 7373 2065 6e61 626c 655f 7379 7374  lass enable_syst
│ │ │ +001072e0: 656d 642d 6a6f 7572 6e61 6c64 207b 0a20  emd-journald {. 
│ │ │ +001072f0: 2073 6572 7669 6365 207b 2773 7973 7465   service {'syste
│ │ │ +00107300: 6d64 2d6a 6f75 726e 616c 6427 3a0a 2020  md-journald':.  
│ │ │ +00107310: 2020 656e 6162 6c65 203d 2667 743b 2074    enable => t
│ │ │ +00107320: 7275 652c 0a20 2020 2065 6e73 7572 6520  rue,.    ensure 
│ │ │ +00107330: 3d26 6774 3b20 2772 756e 6e69 6e67 272c  => 'running',
│ │ │ +00107340: 0a20 207d 0a7d 0a3c 2f63 6f64 653e 3c2f  .  }.}.Remediati
│ │ │ +00107400: 6f6e 204f 5342 7569 6c64 2042 6c75 6570  on OSBuild Bluep
│ │ │ +00107410: 7269 6e74 2073 6e69 7070 6574 20e2 87b2  rint snippet ...
│ │ │ +00107420: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61  
.[customizati
│ │ │ +00107470: 6f6e 732e 7365 7276 6963 6573 5d0a 656e  ons.services].en
│ │ │ +00107480: 6162 6c65 6420 3d20 5b22 7379 7374 656d  abled = ["system
│ │ │ +00107490: 642d 6a6f 7572 6e61 6c64 225d 0a3c 2f63  d-journald"].
│ │ │ 001074b0: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Remediation OSB │ │ │ -00114260: 7569 6c64 2042 6c75 6570 7269 6e74 2073 uild Blueprint s │ │ │ -00114270: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
.[[
│ │ │ -001142c0: 7061 636b 6167 6573 5d5d 0a6e 616d 6520  packages]].name 
│ │ │ -001142d0: 3d20 2272 7379 736c 6f67 220a 7665 7273  = "rsyslog".vers
│ │ │ -001142e0: 696f 6e20 3d20 222a 220a 3c2f 636f 6465  ion = "*".
Remedi │ │ │ -001143a0: 6174 696f 6e20 416e 6163 6f6e 6461 2073 ation Anaconda s │ │ │ -001143b0: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
│ │ │ +00107200: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +00107230: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +00107240: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +00107280: 793a 3c2f 7468 3e3c 7464 3e65 6e61 626c y:enabl │ │ │ +00107290: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
Comp │ │ │ -00114440: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -00114450: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -00114470: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ -00114490: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -001144a0: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:enable
< │ │ │ -001144e0: 7072 653e 3c63 6f64 653e 0a70 6163 6b61 pre>.packa │ │ │ -001144f0: 6765 202d 2d61 6464 3d72 7379 736c 6f67 ge --add=rsyslog │ │ │ -00114500: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f .Remediation Pup │ │ │ -001145c0: 7065 7420 736e 6970 7065 7420 e287 b23c pet snippet ...< │ │ │ -001145d0: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
< │ │ │ -001146a0: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -001146b0: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
i
│ │ │ -00114700: 6e63 6c75 6465 2069 6e73 7461 6c6c 5f72  nclude install_r
│ │ │ -00114710: 7379 736c 6f67 0a0a 636c 6173 7320 696e  syslog..class in
│ │ │ -00114720: 7374 616c 6c5f 7273 7973 6c6f 6720 7b0a  stall_rsyslog {.
│ │ │ -00114730: 2020 7061 636b 6167 6520 7b20 2772 7379    package { 'rsy
│ │ │ -00114740: 736c 6f67 273a 0a20 2020 2065 6e73 7572  slog':.    ensur
│ │ │ -00114750: 6520 3d26 6774 3b20 2769 6e73 7461 6c6c  e => 'install
│ │ │ -00114760: 6564 272c 0a20 207d 0a7d 0a3c 2f63 6f64  ed',.  }.}.
Remed │ │ │ -00114820: 6961 7469 6f6e 2041 6e73 6962 6c65 2073 iation Ansible s │ │ │ -00114830: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Complexity:low
Disrup │ │ │ -00114680: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -00114690: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -001146d0: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ -001146e0: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Comp │ │ │ -001148c0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -001148d0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -001148f0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ -00114910: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -00114920: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:enable
< │ │ │ -00114960: 7072 653e 3c63 6f64 653e 2d20 6e61 6d65 pre>- name │ │ │ -00114970: 3a20 4761 7468 6572 2074 6865 2070 6163 : Gather the pac │ │ │ -00114980: 6b61 6765 2066 6163 7473 0a20 2070 6163 kage facts. pac │ │ │ -00114990: 6b61 6765 5f66 6163 7473 3a0a 2020 2020 kage_facts:. │ │ │ -001149a0: 6d61 6e61 6765 723a 2061 7574 6f0a 2020 manager: auto. │ │ │ -001149b0: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38 tags:. - NIST-8 │ │ │ -001149c0: 3030 2d35 332d 434d 2d36 2861 290a 2020 00-53-CM-6(a). │ │ │ -001149d0: 2d20 656e 6162 6c65 5f73 7472 6174 6567 - enable_strateg │ │ │ -001149e0: 790a 2020 2d20 6c6f 775f 636f 6d70 6c65 y. - low_comple │ │ │ -001149f0: 7869 7479 0a20 202d 206c 6f77 5f64 6973 xity. - low_dis │ │ │ -00114a00: 7275 7074 696f 6e0a 2020 2d20 6d65 6469 ruption. - medi │ │ │ -00114a10: 756d 5f73 6576 6572 6974 790a 2020 2d20 um_severity. - │ │ │ -00114a20: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564 no_reboot_needed │ │ │ -00114a30: 0a20 202d 2070 6163 6b61 6765 5f72 7379 . - package_rsy │ │ │ -00114a40: 736c 6f67 5f69 6e73 7461 6c6c 6564 0a0a slog_installed.. │ │ │ -00114a50: 2d20 6e61 6d65 3a20 456e 7375 7265 2072 - name: Ensure r │ │ │ -00114a60: 7379 736c 6f67 2069 7320 696e 7374 616c syslog is instal │ │ │ -00114a70: 6c65 640a 2020 616e 7369 626c 652e 6275 led. ansible.bu │ │ │ -00114a80: 696c 7469 6e2e 7061 636b 6167 653a 0a20 iltin.package:. │ │ │ -00114a90: 2020 206e 616d 653a 2072 7379 736c 6f67 name: rsyslog │ │ │ -00114aa0: 0a20 2020 2073 7461 7465 3a20 7072 6573 . state: pres │ │ │ -00114ab0: 656e 740a 2020 7768 656e 3a20 2722 6b65 ent. when: '"ke │ │ │ -00114ac0: 726e 656c 2220 696e 2061 6e73 6962 6c65 rnel" in ansible │ │ │ -00114ad0: 5f66 6163 7473 2e70 6163 6b61 6765 7327 _facts.packages' │ │ │ -00114ae0: 0a20 2074 6167 733a 0a20 202d 204e 4953 . tags:. - NIS │ │ │ -00114af0: 542d 3830 302d 3533 2d43 4d2d 3628 6129 T-800-53-CM-6(a) │ │ │ -00114b00: 0a20 202d 2065 6e61 626c 655f 7374 7261 . - enable_stra │ │ │ -00114b10: 7465 6779 0a20 202d 206c 6f77 5f63 6f6d tegy. - low_com │ │ │ -00114b20: 706c 6578 6974 790a 2020 2d20 6c6f 775f plexity. - low_ │ │ │ -00114b30: 6469 7372 7570 7469 6f6e 0a20 202d 206d disruption. - m │ │ │ -00114b40: 6564 6975 6d5f 7365 7665 7269 7479 0a20 edium_severity. │ │ │ -00114b50: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565 - no_reboot_nee │ │ │ -00114b60: 6465 640a 2020 2d20 7061 636b 6167 655f ded. - package_ │ │ │ -00114b70: 7273 7973 6c6f 675f 696e 7374 616c 6c65 rsyslog_installe │ │ │ -00114b80: 640a 3c2f 636f 6465 3e3c 2f70 7265 3e3c d.< │ │ │ -00114b90: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Sh │ │ │ -00114c40: 656c 6c20 7363 7269 7074 20e2 87b2 3c2f ell script ...
│ │ │ -00114ce0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
# 
│ │ │ -00114d80: 5265 6d65 6469 6174 696f 6e20 6973 2061  Remediation is a
│ │ │ -00114d90: 7070 6c69 6361 626c 6520 6f6e 6c79 2069  pplicable only i
│ │ │ -00114da0: 6e20 6365 7274 6169 6e20 706c 6174 666f  n certain platfo
│ │ │ -00114db0: 726d 730a 6966 2072 706d 202d 2d71 7569  rms.if rpm --qui
│ │ │ -00114dc0: 6574 202d 7120 6b65 726e 656c 3b20 7468  et -q kernel; th
│ │ │ -00114dd0: 656e 0a0a 6966 2021 2072 706d 202d 7120  en..if ! rpm -q 
│ │ │ -00114de0: 2d2d 7175 6965 7420 2272 7379 736c 6f67  --quiet "rsyslog
│ │ │ -00114df0: 2220 3b20 7468 656e 0a20 2020 2064 6e66  " ; then.    dnf
│ │ │ -00114e00: 2069 6e73 7461 6c6c 202d 7920 2272 7379   install -y "rsy
│ │ │ -00114e10: 736c 6f67 220a 6669 0a0a 656c 7365 0a20  slog".fi..else. 
│ │ │ -00114e20: 2020 2026 6774 3b26 616d 703b 3220 6563     >&2 ec
│ │ │ -00114e30: 686f 2027 5265 6d65 6469 6174 696f 6e20  ho 'Remediation 
│ │ │ -00114e40: 6973 206e 6f74 2061 7070 6c69 6361 626c  is not applicabl
│ │ │ -00114e50: 652c 206e 6f74 6869 6e67 2077 6173 2064  e, nothing was d
│ │ │ -00114e60: 6f6e 6527 0a66 690a 3c2f 636f 6465 3e3c  one'.fi.<
│ │ │ +00114250: 3e52 656d 6564 6961 7469 6f6e 2041 6e73  >Remediation Ans
│ │ │ +00114260: 6962 6c65 2073 6e69 7070 6574 20e2 87b2  ible snippet ...
│ │ │ +00114270: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61  
│ │ │ -00114cd0: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -00114d00: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -00114d10: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -00114d50: 793a 3c2f 7468 3e3c 7464 3e65 6e61 626c y:enabl │ │ │ -00114d60: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
Complexity: │ │ │ +00114340: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +00114350: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f

│ │ │ +001143a0: 2d20 6e61 6d65 3a20 4761 7468 6572 2074  - name: Gather t
│ │ │ +001143b0: 6865 2070 6163 6b61 6765 2066 6163 7473  he package facts
│ │ │ +001143c0: 0a20 2070 6163 6b61 6765 5f66 6163 7473  .  package_facts
│ │ │ +001143d0: 3a0a 2020 2020 6d61 6e61 6765 723a 2061  :.    manager: a
│ │ │ +001143e0: 7574 6f0a 2020 7461 6773 3a0a 2020 2d20  uto.  tags:.  - 
│ │ │ +001143f0: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ +00114400: 2861 290a 2020 2d20 656e 6162 6c65 5f73  (a).  - enable_s
│ │ │ +00114410: 7472 6174 6567 790a 2020 2d20 6c6f 775f  trategy.  - low_
│ │ │ +00114420: 636f 6d70 6c65 7869 7479 0a20 202d 206c  complexity.  - l
│ │ │ +00114430: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ +00114440: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ +00114450: 790a 2020 2d20 6e6f 5f72 6562 6f6f 745f  y.  - no_reboot_
│ │ │ +00114460: 6e65 6564 6564 0a20 202d 2070 6163 6b61  needed.  - packa
│ │ │ +00114470: 6765 5f72 7379 736c 6f67 5f69 6e73 7461  ge_rsyslog_insta
│ │ │ +00114480: 6c6c 6564 0a0a 2d20 6e61 6d65 3a20 456e  lled..- name: En
│ │ │ +00114490: 7375 7265 2072 7379 736c 6f67 2069 7320  sure rsyslog is 
│ │ │ +001144a0: 696e 7374 616c 6c65 640a 2020 616e 7369  installed.  ansi
│ │ │ +001144b0: 626c 652e 6275 696c 7469 6e2e 7061 636b  ble.builtin.pack
│ │ │ +001144c0: 6167 653a 0a20 2020 206e 616d 653a 2072  age:.    name: r
│ │ │ +001144d0: 7379 736c 6f67 0a20 2020 2073 7461 7465  syslog.    state
│ │ │ +001144e0: 3a20 7072 6573 656e 740a 2020 7768 656e  : present.  when
│ │ │ +001144f0: 3a20 2722 6b65 726e 656c 2220 696e 2061  : '"kernel" in a
│ │ │ +00114500: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +00114510: 6b61 6765 7327 0a20 2074 6167 733a 0a20  kages'.  tags:. 
│ │ │ +00114520: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +00114530: 4d2d 3628 6129 0a20 202d 2065 6e61 626c  M-6(a).  - enabl
│ │ │ +00114540: 655f 7374 7261 7465 6779 0a20 202d 206c  e_strategy.  - l
│ │ │ +00114550: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ +00114560: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ +00114570: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ +00114580: 7269 7479 0a20 202d 206e 6f5f 7265 626f  rity.  - no_rebo
│ │ │ +00114590: 6f74 5f6e 6565 6465 640a 2020 2d20 7061  ot_needed.  - pa
│ │ │ +001145a0: 636b 6167 655f 7273 7973 6c6f 675f 696e  ckage_rsyslog_in
│ │ │ +001145b0: 7374 616c 6c65 640a 3c2f 636f 6465 3e3c  stalled.<
│ │ │ +001145c0: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>Remediat
│ │ │ +00114670: 696f 6e20 5075 7070 6574 2073 6e69 7070  ion Puppet snipp
│ │ │ +00114680: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64  et ...
│ │ │ +00114700: 3c74 723e 3c74 683e 436f 6d70 6c65 7869
< │ │ │ +00114790: 7464 3e65 6e61 626c 653c 2f74 643e 3c2f td>enable
low
Disru │ │ │ +00114320: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +00114330: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +00114370: 6567 793a 3c2f 7468 3e3c 7464 3e65 6e61 egy:ena │ │ │ +00114380: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Complexi │ │ │ +00114710: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +00114720: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Disruption:low
Reboot │ │ │ +00114760: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +00114770: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Strategy:
│ │ │ +001147b0: 3c63 6f64 653e 696e 636c 7564 6520 696e  include in
│ │ │ +001147c0: 7374 616c 6c5f 7273 7973 6c6f 670a 0a63  stall_rsyslog..c
│ │ │ +001147d0: 6c61 7373 2069 6e73 7461 6c6c 5f72 7379  lass install_rsy
│ │ │ +001147e0: 736c 6f67 207b 0a20 2070 6163 6b61 6765  slog {.  package
│ │ │ +001147f0: 207b 2027 7273 7973 6c6f 6727 3a0a 2020   { 'rsyslog':.  
│ │ │ +00114800: 2020 656e 7375 7265 203d 2667 743b 2027    ensure => '
│ │ │ +00114810: 696e 7374 616c 6c65 6427 2c0a 2020 7d0a  installed',.  }.
│ │ │ +00114820: 7d0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  }.
< │ │ │ +00114830: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation OS │ │ │ +001148e0: 4275 696c 6420 426c 7565 7072 696e 7420 Build Blueprint │ │ │ +001148f0: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ +00114900: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
.[
│ │ │ +00114940: 5b70 6163 6b61 6765 735d 5d0a 6e61 6d65  [packages]].name
│ │ │ +00114950: 203d 2022 7273 7973 6c6f 6722 0a76 6572   = "rsyslog".ver
│ │ │ +00114960: 7369 6f6e 203d 2022 2a22 0a3c 2f63 6f64  sion = "*".
Remed │ │ │ +00114a20: 6961 7469 6f6e 2053 6865 6c6c 2073 6372 iation Shell scr │ │ │ +00114a30: 6970 7420 e287 b23c 2f61 3e3c 6272 3e3c ipt ...
< │ │ │ +00114a40: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +00114a50: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +00114a60: 7365 2220 6964 3d22 6964 3236 3922 3e3c se" id="id269">< │ │ │ +00114a70: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +00114a80: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +00114a90: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +00114aa0: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +00114ab0: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Complex │ │ │ +00114ac0: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ +00114ad0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Disruption:lowReboo │ │ │ +00114b10: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ +00114b20: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ +00114b40: 3c74 643e 656e 6162 6c65 3c2f 7464 3e3c enable< │ │ │ +00114b50: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
# Remedia
│ │ │ +00114b70: 7469 6f6e 2069 7320 6170 706c 6963 6162  tion is applicab
│ │ │ +00114b80: 6c65 206f 6e6c 7920 696e 2063 6572 7461  le only in certa
│ │ │ +00114b90: 696e 2070 6c61 7466 6f72 6d73 0a69 6620  in platforms.if 
│ │ │ +00114ba0: 7270 6d20 2d2d 7175 6965 7420 2d71 206b  rpm --quiet -q k
│ │ │ +00114bb0: 6572 6e65 6c3b 2074 6865 6e0a 0a69 6620  ernel; then..if 
│ │ │ +00114bc0: 2120 7270 6d20 2d71 202d 2d71 7569 6574  ! rpm -q --quiet
│ │ │ +00114bd0: 2022 7273 7973 6c6f 6722 203b 2074 6865   "rsyslog" ; the
│ │ │ +00114be0: 6e0a 2020 2020 646e 6620 696e 7374 616c  n.    dnf instal
│ │ │ +00114bf0: 6c20 2d79 2022 7273 7973 6c6f 6722 0a66  l -y "rsyslog".f
│ │ │ +00114c00: 690a 0a65 6c73 650a 2020 2020 2667 743b  i..else.    >
│ │ │ +00114c10: 2661 6d70 3b32 2065 6368 6f20 2752 656d  &2 echo 'Rem
│ │ │ +00114c20: 6564 6961 7469 6f6e 2069 7320 6e6f 7420  ediation is not 
│ │ │ +00114c30: 6170 706c 6963 6162 6c65 2c20 6e6f 7468  applicable, noth
│ │ │ +00114c40: 696e 6720 7761 7320 646f 6e65 270a 6669  ing was done'.fi
│ │ │ +00114c50: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation Ana │ │ │ +00114d10: 636f 6e64 6120 736e 6970 7065 7420 e287 conda snippet .. │ │ │ +00114d20: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ +00114da0: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ +00114dc0: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ +00114e10: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
.package --add=
│ │ │ +00114e60: 7273 7973 6c6f 670a 3c2f 636f 6465 3e3c  rsyslog.<
│ │ │  00114e70: 2f70 7265 3e3c 2f64 6976 3e3c 2f64 6976  /pre>
low
Disr │ │ │ +00114dd0: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +00114de0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ +00114e20: 7465 6779 3a3c 2f74 683e 3c74 643e 656e tegy:en │ │ │ +00114e30: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
│ │ │ 00114ea0: 3c2f 7472 3e3c 7472 2064 6174 612d 7474 Re │ │ │ -00119ba0: 6d65 6469 6174 696f 6e20 4f53 4275 696c mediation OSBuil │ │ │ -00119bb0: 6420 426c 7565 7072 696e 7420 736e 6970 d Blueprint snip │ │ │ -00119bc0: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ -00119bd0: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -00119be0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -00119bf0: 7365 2220 6964 3d22 6964 3237 3522 3e3c se" id="id275">< │ │ │ -00119c00: 7072 653e 3c63 6f64 653e 0a5b 5b70 6163 pre>.[[pac │ │ │ -00119c10: 6b61 6765 735d 5d0a 6e61 6d65 203d 2022 kages]].name = " │ │ │ -00119c20: 6669 7265 7761 6c6c 6422 0a76 6572 7369 firewalld".versi │ │ │ -00119c30: 6f6e 203d 2022 2a22 0a3c 2f63 6f64 653e on = "*". │ │ │ -00119c40: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063
Remedia │ │ │ -00119cf0: 7469 6f6e 2041 6e61 636f 6e64 6120 736e tion Anaconda sn │ │ │ -00119d00: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ -00119db0: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ -00119dd0: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ -00119e00: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ -00119d90: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ -00119da0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ -00119dc0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ -00119de0: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -00119df0: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:enable

.packag │ │ │ -00119e40: 6520 2d2d 6164 643d 6669 7265 7761 6c6c e --add=firewall │ │ │ -00119e50: 640a 3c2f 636f 6465 3e3c 2f70 7265 3e3c d.< │ │ │ -00119e60: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Pu │ │ │ -00119f10: 7070 6574 2073 6e69 7070 6574 20e2 87b2 ppet snippet ... │ │ │ -00119f20: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61

Complexity: │ │ │ -00119ff0: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -0011a000: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f

│ │ │ -0011a050: 696e 636c 7564 6520 696e 7374 616c 6c5f  include install_
│ │ │ -0011a060: 6669 7265 7761 6c6c 640a 0a63 6c61 7373  firewalld..class
│ │ │ -0011a070: 2069 6e73 7461 6c6c 5f66 6972 6577 616c   install_firewal
│ │ │ -0011a080: 6c64 207b 0a20 2070 6163 6b61 6765 207b  ld {.  package {
│ │ │ -0011a090: 2027 6669 7265 7761 6c6c 6427 3a0a 2020   'firewalld':.  
│ │ │ -0011a0a0: 2020 656e 7375 7265 203d 2667 743b 2027    ensure => '
│ │ │ -0011a0b0: 696e 7374 616c 6c65 6427 2c0a 2020 7d0a  installed',.  }.
│ │ │ -0011a0c0: 7d0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  }.
< │ │ │ -0011a0d0: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation An │ │ │ -0011a180: 7369 626c 6520 736e 6970 7065 7420 e287 sible snippet .. │ │ │ -0011a190: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
low
Disru │ │ │ -00119fd0: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ -00119fe0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ -0011a020: 6567 793a 3c2f 7468 3e3c 7464 3e65 6e61 egy:ena │ │ │ -0011a030: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
< │ │ │ -0011a210: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -0011a230: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -0011a280: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
- name: Gather 
│ │ │ -0011a2d0: 7468 6520 7061 636b 6167 6520 6661 6374  the package fact
│ │ │ -0011a2e0: 730a 2020 7061 636b 6167 655f 6661 6374  s.  package_fact
│ │ │ -0011a2f0: 733a 0a20 2020 206d 616e 6167 6572 3a20  s:.    manager: 
│ │ │ -0011a300: 6175 746f 0a20 2074 6167 733a 0a20 202d  auto.  tags:.  -
│ │ │ -0011a310: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -0011a320: 3628 6129 0a20 202d 2050 4349 2d44 5353  6(a).  - PCI-DSS
│ │ │ -0011a330: 7634 2d31 2e32 0a20 202d 2050 4349 2d44  v4-1.2.  - PCI-D
│ │ │ -0011a340: 5353 7634 2d31 2e32 2e31 0a20 202d 2065  SSv4-1.2.1.  - e
│ │ │ -0011a350: 6e61 626c 655f 7374 7261 7465 6779 0a20  nable_strategy. 
│ │ │ -0011a360: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ -0011a370: 790a 2020 2d20 6c6f 775f 6469 7372 7570  y.  - low_disrup
│ │ │ -0011a380: 7469 6f6e 0a20 202d 206d 6564 6975 6d5f  tion.  - medium_
│ │ │ -0011a390: 7365 7665 7269 7479 0a20 202d 206e 6f5f  severity.  - no_
│ │ │ -0011a3a0: 7265 626f 6f74 5f6e 6565 6465 640a 2020  reboot_needed.  
│ │ │ -0011a3b0: 2d20 7061 636b 6167 655f 6669 7265 7761  - package_firewa
│ │ │ -0011a3c0: 6c6c 645f 696e 7374 616c 6c65 640a 0a2d  lld_installed..-
│ │ │ -0011a3d0: 206e 616d 653a 2045 6e73 7572 6520 6669   name: Ensure fi
│ │ │ -0011a3e0: 7265 7761 6c6c 6420 6973 2069 6e73 7461  rewalld is insta
│ │ │ -0011a3f0: 6c6c 6564 0a20 2061 6e73 6962 6c65 2e62  lled.  ansible.b
│ │ │ -0011a400: 7569 6c74 696e 2e70 6163 6b61 6765 3a0a  uiltin.package:.
│ │ │ -0011a410: 2020 2020 6e61 6d65 3a20 6669 7265 7761      name: firewa
│ │ │ -0011a420: 6c6c 640a 2020 2020 7374 6174 653a 2070  lld.    state: p
│ │ │ -0011a430: 7265 7365 6e74 0a20 2077 6865 6e3a 2027  resent.  when: '
│ │ │ -0011a440: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ -0011a450: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -0011a460: 6573 270a 2020 7461 6773 3a0a 2020 2d20  es'.  tags:.  - 
│ │ │ -0011a470: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ -0011a480: 2861 290a 2020 2d20 5043 492d 4453 5376  (a).  - PCI-DSSv
│ │ │ -0011a490: 342d 312e 320a 2020 2d20 5043 492d 4453  4-1.2.  - PCI-DS
│ │ │ -0011a4a0: 5376 342d 312e 322e 310a 2020 2d20 656e  Sv4-1.2.1.  - en
│ │ │ -0011a4b0: 6162 6c65 5f73 7472 6174 6567 790a 2020  able_strategy.  
│ │ │ -0011a4c0: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ -0011a4d0: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ -0011a4e0: 696f 6e0a 2020 2d20 6d65 6469 756d 5f73  ion.  - medium_s
│ │ │ -0011a4f0: 6576 6572 6974 790a 2020 2d20 6e6f 5f72  everity.  - no_r
│ │ │ -0011a500: 6562 6f6f 745f 6e65 6564 6564 0a20 202d  eboot_needed.  -
│ │ │ -0011a510: 2070 6163 6b61 6765 5f66 6972 6577 616c   package_firewal
│ │ │ -0011a520: 6c64 5f69 6e73 7461 6c6c 6564 0a3c 2f63  ld_installed.
│ │ │ -0011a540: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ -0011a5e0: 6564 6961 7469 6f6e 2053 6865 6c6c 2073 ediation Shell s │ │ │ -0011a5f0: 6372 6970 7420 e287 b23c 2f61 3e3c 6272 cript ...
low
Disr │ │ │ -0011a240: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -0011a250: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ -0011a290: 7465 6779 3a3c 2f74 683e 3c74 643e 656e tegy:en │ │ │ -0011a2a0: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
│ │ │ -0011a6a0: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ -0011a6c0: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ -0011a6f0: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ -0011a680: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ -0011a690: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ -0011a6b0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ -0011a6d0: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -0011a6e0: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:enable

# Remed │ │ │ -0011a730: 6961 7469 6f6e 2069 7320 6170 706c 6963 iation is applic │ │ │ -0011a740: 6162 6c65 206f 6e6c 7920 696e 2063 6572 able only in cer │ │ │ -0011a750: 7461 696e 2070 6c61 7466 6f72 6d73 0a69 tain platforms.i │ │ │ -0011a760: 6620 7270 6d20 2d2d 7175 6965 7420 2d71 f rpm --quiet -q │ │ │ -0011a770: 206b 6572 6e65 6c3b 2074 6865 6e0a 0a69 kernel; then..i │ │ │ -0011a780: 6620 2120 7270 6d20 2d71 202d 2d71 7569 f ! rpm -q --qui │ │ │ -0011a790: 6574 2022 6669 7265 7761 6c6c 6422 203b et "firewalld" ; │ │ │ -0011a7a0: 2074 6865 6e0a 2020 2020 646e 6620 696e then. dnf in │ │ │ -0011a7b0: 7374 616c 6c20 2d79 2022 6669 7265 7761 stall -y "firewa │ │ │ -0011a7c0: 6c6c 6422 0a66 690a 0a65 6c73 650a 2020 lld".fi..else. │ │ │ -0011a7d0: 2020 2667 743b 2661 6d70 3b32 2065 6368 >&2 ech │ │ │ -0011a7e0: 6f20 2752 656d 6564 6961 7469 6f6e 2069 o 'Remediation i │ │ │ -0011a7f0: 7320 6e6f 7420 6170 706c 6963 6162 6c65 s not applicable │ │ │ -0011a800: 2c20 6e6f 7468 696e 6720 7761 7320 646f , nothing was do │ │ │ -0011a810: 6e65 270a 6669 0a3c 2f63 6f64 653e 3c2f ne'.fi.

< │ │ │ +00119c50: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +00119c60: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ +00119cb0: 3c74 723e 3c74 683e 5374 7261 7465 6779
- n
│ │ │ +00119cf0: 616d 653a 2047 6174 6865 7220 7468 6520  ame: Gather the 
│ │ │ +00119d00: 7061 636b 6167 6520 6661 6374 730a 2020  package facts.  
│ │ │ +00119d10: 7061 636b 6167 655f 6661 6374 733a 0a20  package_facts:. 
│ │ │ +00119d20: 2020 206d 616e 6167 6572 3a20 6175 746f     manager: auto
│ │ │ +00119d30: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ +00119d40: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ +00119d50: 0a20 202d 2050 4349 2d44 5353 7634 2d31  .  - PCI-DSSv4-1
│ │ │ +00119d60: 2e32 0a20 202d 2050 4349 2d44 5353 7634  .2.  - PCI-DSSv4
│ │ │ +00119d70: 2d31 2e32 2e31 0a20 202d 2065 6e61 626c  -1.2.1.  - enabl
│ │ │ +00119d80: 655f 7374 7261 7465 6779 0a20 202d 206c  e_strategy.  - l
│ │ │ +00119d90: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ +00119da0: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ +00119db0: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ +00119dc0: 7269 7479 0a20 202d 206e 6f5f 7265 626f  rity.  - no_rebo
│ │ │ +00119dd0: 6f74 5f6e 6565 6465 640a 2020 2d20 7061  ot_needed.  - pa
│ │ │ +00119de0: 636b 6167 655f 6669 7265 7761 6c6c 645f  ckage_firewalld_
│ │ │ +00119df0: 696e 7374 616c 6c65 640a 0a2d 206e 616d  installed..- nam
│ │ │ +00119e00: 653a 2045 6e73 7572 6520 6669 7265 7761  e: Ensure firewa
│ │ │ +00119e10: 6c6c 6420 6973 2069 6e73 7461 6c6c 6564  lld is installed
│ │ │ +00119e20: 0a20 2061 6e73 6962 6c65 2e62 7569 6c74  .  ansible.built
│ │ │ +00119e30: 696e 2e70 6163 6b61 6765 3a0a 2020 2020  in.package:.    
│ │ │ +00119e40: 6e61 6d65 3a20 6669 7265 7761 6c6c 640a  name: firewalld.
│ │ │ +00119e50: 2020 2020 7374 6174 653a 2070 7265 7365      state: prese
│ │ │ +00119e60: 6e74 0a20 2077 6865 6e3a 2027 226b 6572  nt.  when: '"ker
│ │ │ +00119e70: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ +00119e80: 6661 6374 732e 7061 636b 6167 6573 270a  facts.packages'.
│ │ │ +00119e90: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ +00119ea0: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ +00119eb0: 2020 2d20 5043 492d 4453 5376 342d 312e    - PCI-DSSv4-1.
│ │ │ +00119ec0: 320a 2020 2d20 5043 492d 4453 5376 342d  2.  - PCI-DSSv4-
│ │ │ +00119ed0: 312e 322e 310a 2020 2d20 656e 6162 6c65  1.2.1.  - enable
│ │ │ +00119ee0: 5f73 7472 6174 6567 790a 2020 2d20 6c6f  _strategy.  - lo
│ │ │ +00119ef0: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ +00119f00: 206c 6f77 5f64 6973 7275 7074 696f 6e0a   low_disruption.
│ │ │ +00119f10: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ +00119f20: 6974 790a 2020 2d20 6e6f 5f72 6562 6f6f  ity.  - no_reboo
│ │ │ +00119f30: 745f 6e65 6564 6564 0a20 202d 2070 6163  t_needed.  - pac
│ │ │ +00119f40: 6b61 6765 5f66 6972 6577 616c 6c64 5f69  kage_firewalld_i
│ │ │ +00119f50: 6e73 7461 6c6c 6564 0a3c 2f63 6f64 653e  nstalled.
│ │ │ +00119f60: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ +0011a010: 7469 6f6e 2050 7570 7065 7420 736e 6970 tion Puppet snip │ │ │ +0011a020: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ +0011a030: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +0011a040: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +0011a050: 7365 2220 6964 3d22 6964 3237 3622 3e3c se" id="id276">< │ │ │ +0011a060: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +0011a070: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +0011a080: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +0011a090: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +0011a0a0: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >
Disruption:Strategy: │ │ │ +0011a130: 3c74 643e 656e 6162 6c65 3c2f 7464 3e3c < │ │ │ +0011a140: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
C │ │ │ +00119c40: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ +00119c70: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ +00119c80: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ +00119cc0: 3a3c 2f74 683e 3c74 643e 656e 6162 6c65 :enable │ │ │ +00119cd0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Complex │ │ │ +0011a0b0: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ +0011a0c0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
low
Reboo │ │ │ +0011a100: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ +0011a110: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
enable
include i
│ │ │ +0011a160: 6e73 7461 6c6c 5f66 6972 6577 616c 6c64  nstall_firewalld
│ │ │ +0011a170: 0a0a 636c 6173 7320 696e 7374 616c 6c5f  ..class install_
│ │ │ +0011a180: 6669 7265 7761 6c6c 6420 7b0a 2020 7061  firewalld {.  pa
│ │ │ +0011a190: 636b 6167 6520 7b20 2766 6972 6577 616c  ckage { 'firewal
│ │ │ +0011a1a0: 6c64 273a 0a20 2020 2065 6e73 7572 6520  ld':.    ensure 
│ │ │ +0011a1b0: 3d26 6774 3b20 2769 6e73 7461 6c6c 6564  => 'installed
│ │ │ +0011a1c0: 272c 0a20 207d 0a7d 0a3c 2f63 6f64 653e  ',.  }.}.
│ │ │ +0011a1d0: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ +0011a280: 7469 6f6e 204f 5342 7569 6c64 2042 6c75 tion OSBuild Blu │ │ │ +0011a290: 6570 7269 6e74 2073 6e69 7070 6574 20e2 eprint snippet . │ │ │ +0011a2a0: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
<
│ │ │ +0011a2e0: 636f 6465 3e0a 5b5b 7061 636b 6167 6573  code>.[[packages
│ │ │ +0011a2f0: 5d5d 0a6e 616d 6520 3d20 2266 6972 6577  ]].name = "firew
│ │ │ +0011a300: 616c 6c64 220a 7665 7273 696f 6e20 3d20  alld".version = 
│ │ │ +0011a310: 222a 220a 3c2f 636f 6465 3e3c 2f70 7265  "*".
Remediation │ │ │ +0011a3d0: 5368 656c 6c20 7363 7269 7074 20e2 87b2 Shell script ... │ │ │ +0011a3e0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity: │ │ │ +0011a4b0: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +0011a4c0: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f

│ │ │ +0011a510: 2320 5265 6d65 6469 6174 696f 6e20 6973  # Remediation is
│ │ │ +0011a520: 2061 7070 6c69 6361 626c 6520 6f6e 6c79   applicable only
│ │ │ +0011a530: 2069 6e20 6365 7274 6169 6e20 706c 6174   in certain plat
│ │ │ +0011a540: 666f 726d 730a 6966 2072 706d 202d 2d71  forms.if rpm --q
│ │ │ +0011a550: 7569 6574 202d 7120 6b65 726e 656c 3b20  uiet -q kernel; 
│ │ │ +0011a560: 7468 656e 0a0a 6966 2021 2072 706d 202d  then..if ! rpm -
│ │ │ +0011a570: 7120 2d2d 7175 6965 7420 2266 6972 6577  q --quiet "firew
│ │ │ +0011a580: 616c 6c64 2220 3b20 7468 656e 0a20 2020  alld" ; then.   
│ │ │ +0011a590: 2064 6e66 2069 6e73 7461 6c6c 202d 7920   dnf install -y 
│ │ │ +0011a5a0: 2266 6972 6577 616c 6c64 220a 6669 0a0a  "firewalld".fi..
│ │ │ +0011a5b0: 656c 7365 0a20 2020 2026 6774 3b26 616d  else.    >&am
│ │ │ +0011a5c0: 703b 3220 6563 686f 2027 5265 6d65 6469  p;2 echo 'Remedi
│ │ │ +0011a5d0: 6174 696f 6e20 6973 206e 6f74 2061 7070  ation is not app
│ │ │ +0011a5e0: 6c69 6361 626c 652c 206e 6f74 6869 6e67  licable, nothing
│ │ │ +0011a5f0: 2077 6173 2064 6f6e 6527 0a66 690a 3c2f   was done'.fi.
Re │ │ │ +0011a6b0: 6d65 6469 6174 696f 6e20 416e 6163 6f6e mediation Anacon │ │ │ +0011a6c0: 6461 2073 6e69 7070 6574 20e2 87b2 3c2f da snippet ...
low
Disru │ │ │ +0011a490: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +0011a4a0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +0011a4e0: 6567 793a 3c2f 7468 3e3c 7464 3e65 6e61 egy:ena │ │ │ +0011a4f0: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
│ │ │ +0011a760: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
.p
│ │ │ +0011a800: 6163 6b61 6765 202d 2d61 6464 3d66 6972  ackage --add=fir
│ │ │ +0011a810: 6577 616c 6c64 0a3c 2f63 6f64 653e 3c2f  ewalld.
│ │ │  0011a830: 3c2f 7464 3e3c 2f74 723e 3c2f 7462 6f64  
│ │ │ +0011a750: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +0011a780: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +0011a790: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +0011a7d0: 793a 3c2f 7468 3e3c 7464 3e65 6e61 626c y:enabl │ │ │ +0011a7e0: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
< │ │ │ 0011a850: 2f74 723e 3c74 7220 6461 7461 2d74 742d /tr>Remediation OSB │ │ │ -0011b860: 7569 6c64 2042 6c75 6570 7269 6e74 2073 uild Blueprint s │ │ │ -0011b870: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
.[c
│ │ │ -0011b8c0: 7573 746f 6d69 7a61 7469 6f6e 732e 7365  ustomizations.se
│ │ │ -0011b8d0: 7276 6963 6573 5d0a 656e 6162 6c65 6420  rvices].enabled 
│ │ │ -0011b8e0: 3d20 5b22 6669 7265 7761 6c6c 6422 5d0a  = ["firewalld"].
│ │ │ -0011b8f0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ -0011b9a0: 5265 6d65 6469 6174 696f 6e20 5075 7070 Remediation Pupp │ │ │ -0011b9b0: 6574 2073 6e69 7070 6574 20e2 87b2 3c2f et snippet ...
│ │ │ -0011ba50: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
in
│ │ │ -0011baf0: 636c 7564 6520 656e 6162 6c65 5f66 6972  clude enable_fir
│ │ │ -0011bb00: 6577 616c 6c64 0a0a 636c 6173 7320 656e  ewalld..class en
│ │ │ -0011bb10: 6162 6c65 5f66 6972 6577 616c 6c64 207b  able_firewalld {
│ │ │ -0011bb20: 0a20 2073 6572 7669 6365 207b 2766 6972  .  service {'fir
│ │ │ -0011bb30: 6577 616c 6c64 273a 0a20 2020 2065 6e61  ewalld':.    ena
│ │ │ -0011bb40: 626c 6520 3d26 6774 3b20 7472 7565 2c0a  ble => true,.
│ │ │ -0011bb50: 2020 2020 656e 7375 7265 203d 2667 743b      ensure =>
│ │ │ -0011bb60: 2027 7275 6e6e 696e 6727 2c0a 2020 7d0a   'running',.  }.
│ │ │ -0011bb70: 7d0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  }.
< │ │ │ -0011bb80: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation An │ │ │ -0011bc30: 7369 626c 6520 736e 6970 7065 7420 e287 sible snippet .. │ │ │ -0011bc40: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
│ │ │ -0011ba40: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -0011ba70: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -0011ba80: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -0011bac0: 793a 3c2f 7468 3e3c 7464 3e65 6e61 626c y:enabl │ │ │ -0011bad0: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
< │ │ │ -0011bcc0: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -0011bce0: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -0011bd30: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
- name: Gather 
│ │ │ -0011bd80: 7468 6520 7061 636b 6167 6520 6661 6374  the package fact
│ │ │ -0011bd90: 730a 2020 7061 636b 6167 655f 6661 6374  s.  package_fact
│ │ │ -0011bda0: 733a 0a20 2020 206d 616e 6167 6572 3a20  s:.    manager: 
│ │ │ -0011bdb0: 6175 746f 0a20 2074 6167 733a 0a20 202d  auto.  tags:.  -
│ │ │ -0011bdc0: 204e 4953 542d 3830 302d 3137 312d 332e   NIST-800-171-3.
│ │ │ -0011bdd0: 312e 330a 2020 2d20 4e49 5354 2d38 3030  1.3.  - NIST-800
│ │ │ -0011bde0: 2d31 3731 2d33 2e34 2e37 0a20 202d 204e  -171-3.4.7.  - N
│ │ │ -0011bdf0: 4953 542d 3830 302d 3533 2d41 432d 340a  IST-800-53-AC-4.
│ │ │ -0011be00: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -0011be10: 4341 2d33 2835 290a 2020 2d20 4e49 5354  CA-3(5).  - NIST
│ │ │ -0011be20: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ -0011be30: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -0011be40: 434d 2d37 2862 290a 2020 2d20 4e49 5354  CM-7(b).  - NIST
│ │ │ -0011be50: 2d38 3030 2d35 332d 5343 2d37 2832 3129  -800-53-SC-7(21)
│ │ │ -0011be60: 0a20 202d 2050 4349 2d44 5353 7634 2d31  .  - PCI-DSSv4-1
│ │ │ -0011be70: 2e32 0a20 202d 2050 4349 2d44 5353 7634  .2.  - PCI-DSSv4
│ │ │ -0011be80: 2d31 2e32 2e31 0a20 202d 2065 6e61 626c  -1.2.1.  - enabl
│ │ │ -0011be90: 655f 7374 7261 7465 6779 0a20 202d 206c  e_strategy.  - l
│ │ │ -0011bea0: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ -0011beb0: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ -0011bec0: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ -0011bed0: 7269 7479 0a20 202d 206e 6f5f 7265 626f  rity.  - no_rebo
│ │ │ -0011bee0: 6f74 5f6e 6565 6465 640a 2020 2d20 7365  ot_needed.  - se
│ │ │ -0011bef0: 7276 6963 655f 6669 7265 7761 6c6c 645f  rvice_firewalld_
│ │ │ -0011bf00: 656e 6162 6c65 640a 0a2d 206e 616d 653a  enabled..- name:
│ │ │ -0011bf10: 2056 6572 6966 7920 6669 7265 7761 6c6c   Verify firewall
│ │ │ -0011bf20: 6420 456e 6162 6c65 6420 2d20 456e 6162  d Enabled - Enab
│ │ │ -0011bf30: 6c65 2073 6572 7669 6365 2066 6972 6577  le service firew
│ │ │ -0011bf40: 616c 6c64 0a20 2062 6c6f 636b 3a0a 0a20  alld.  block:.. 
│ │ │ -0011bf50: 202d 206e 616d 653a 2047 6174 6865 7220   - name: Gather 
│ │ │ -0011bf60: 7468 6520 7061 636b 6167 6520 6661 6374  the package fact
│ │ │ -0011bf70: 730a 2020 2020 616e 7369 626c 652e 6275  s.    ansible.bu
│ │ │ -0011bf80: 696c 7469 6e2e 7061 636b 6167 655f 6661  iltin.package_fa
│ │ │ -0011bf90: 6374 733a 0a20 2020 2020 206d 616e 6167  cts:.      manag
│ │ │ -0011bfa0: 6572 3a20 6175 746f 0a0a 2020 2d20 6e61  er: auto..  - na
│ │ │ -0011bfb0: 6d65 3a20 5665 7269 6679 2066 6972 6577  me: Verify firew
│ │ │ -0011bfc0: 616c 6c64 2045 6e61 626c 6564 202d 2045  alld Enabled - E
│ │ │ -0011bfd0: 6e61 626c 6520 5365 7276 6963 6520 6669  nable Service fi
│ │ │ -0011bfe0: 7265 7761 6c6c 640a 2020 2020 616e 7369  rewalld.    ansi
│ │ │ -0011bff0: 626c 652e 6275 696c 7469 6e2e 7379 7374  ble.builtin.syst
│ │ │ -0011c000: 656d 643a 0a20 2020 2020 206e 616d 653a  emd:.      name:
│ │ │ -0011c010: 2066 6972 6577 616c 6c64 0a20 2020 2020   firewalld.     
│ │ │ -0011c020: 2065 6e61 626c 6564 3a20 7472 7565 0a20   enabled: true. 
│ │ │ -0011c030: 2020 2020 2073 7461 7465 3a20 7374 6172       state: star
│ │ │ -0011c040: 7465 640a 2020 2020 2020 6d61 736b 6564  ted.      masked
│ │ │ -0011c050: 3a20 6661 6c73 650a 2020 2020 7768 656e  : false.    when
│ │ │ -0011c060: 3a0a 2020 2020 2d20 2722 6669 7265 7761  :.    - '"firewa
│ │ │ -0011c070: 6c6c 6422 2069 6e20 616e 7369 626c 655f  lld" in ansible_
│ │ │ -0011c080: 6661 6374 732e 7061 636b 6167 6573 270a  facts.packages'.
│ │ │ -0011c090: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ -0011c0a0: 2d38 3030 2d31 3731 2d33 2e31 2e33 0a20  -800-171-3.1.3. 
│ │ │ -0011c0b0: 202d 204e 4953 542d 3830 302d 3137 312d   - NIST-800-171-
│ │ │ -0011c0c0: 332e 342e 370a 2020 2d20 4e49 5354 2d38  3.4.7.  - NIST-8
│ │ │ -0011c0d0: 3030 2d35 332d 4143 2d34 0a20 202d 204e  00-53-AC-4.  - N
│ │ │ -0011c0e0: 4953 542d 3830 302d 3533 2d43 412d 3328  IST-800-53-CA-3(
│ │ │ -0011c0f0: 3529 0a20 202d 204e 4953 542d 3830 302d  5).  - NIST-800-
│ │ │ -0011c100: 3533 2d43 4d2d 3628 6129 0a20 202d 204e  53-CM-6(a).  - N
│ │ │ -0011c110: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ -0011c120: 6229 0a20 202d 204e 4953 542d 3830 302d  b).  - NIST-800-
│ │ │ -0011c130: 3533 2d53 432d 3728 3231 290a 2020 2d20  53-SC-7(21).  - 
│ │ │ -0011c140: 5043 492d 4453 5376 342d 312e 320a 2020  PCI-DSSv4-1.2.  
│ │ │ -0011c150: 2d20 5043 492d 4453 5376 342d 312e 322e  - PCI-DSSv4-1.2.
│ │ │ -0011c160: 310a 2020 2d20 656e 6162 6c65 5f73 7472  1.  - enable_str
│ │ │ -0011c170: 6174 6567 790a 2020 2d20 6c6f 775f 636f  ategy.  - low_co
│ │ │ -0011c180: 6d70 6c65 7869 7479 0a20 202d 206c 6f77  mplexity.  - low
│ │ │ -0011c190: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ -0011c1a0: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ -0011c1b0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ -0011c1c0: 6564 6564 0a20 202d 2073 6572 7669 6365  eded.  - service
│ │ │ -0011c1d0: 5f66 6972 6577 616c 6c64 5f65 6e61 626c  _firewalld_enabl
│ │ │ -0011c1e0: 6564 0a20 202d 2073 7065 6369 616c 5f73  ed.  - special_s
│ │ │ -0011c1f0: 6572 7669 6365 5f62 6c6f 636b 0a20 2077  ervice_block.  w
│ │ │ -0011c200: 6865 6e3a 0a20 202d 2027 226b 6572 6e65  hen:.  - '"kerne
│ │ │ -0011c210: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ -0011c220: 6374 732e 7061 636b 6167 6573 270a 2020  cts.packages'.  
│ │ │ -0011c230: 2d20 2722 6669 7265 7761 6c6c 6422 2069  - '"firewalld" i
│ │ │ -0011c240: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -0011c250: 7061 636b 6167 6573 270a 3c2f 636f 6465  packages'.Remediation Ans
│ │ │ +0011b860: 6962 6c65 2073 6e69 7070 6574 20e2 87b2  ible snippet ...
│ │ │ +0011b870: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61  
low
Disr │ │ │ -0011bcf0: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -0011bd00: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ -0011bd40: 7465 6779 3a3c 2f74 683e 3c74 643e 656e tegy:en │ │ │ -0011bd50: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
Complexity: │ │ │ +0011b940: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +0011b950: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f

│ │ │ +0011b9a0: 2d20 6e61 6d65 3a20 4761 7468 6572 2074  - name: Gather t
│ │ │ +0011b9b0: 6865 2070 6163 6b61 6765 2066 6163 7473  he package facts
│ │ │ +0011b9c0: 0a20 2070 6163 6b61 6765 5f66 6163 7473  .  package_facts
│ │ │ +0011b9d0: 3a0a 2020 2020 6d61 6e61 6765 723a 2061  :.    manager: a
│ │ │ +0011b9e0: 7574 6f0a 2020 7461 6773 3a0a 2020 2d20  uto.  tags:.  - 
│ │ │ +0011b9f0: 4e49 5354 2d38 3030 2d31 3731 2d33 2e31  NIST-800-171-3.1
│ │ │ +0011ba00: 2e33 0a20 202d 204e 4953 542d 3830 302d  .3.  - NIST-800-
│ │ │ +0011ba10: 3137 312d 332e 342e 370a 2020 2d20 4e49  171-3.4.7.  - NI
│ │ │ +0011ba20: 5354 2d38 3030 2d35 332d 4143 2d34 0a20  ST-800-53-AC-4. 
│ │ │ +0011ba30: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +0011ba40: 412d 3328 3529 0a20 202d 204e 4953 542d  A-3(5).  - NIST-
│ │ │ +0011ba50: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ +0011ba60: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +0011ba70: 4d2d 3728 6229 0a20 202d 204e 4953 542d  M-7(b).  - NIST-
│ │ │ +0011ba80: 3830 302d 3533 2d53 432d 3728 3231 290a  800-53-SC-7(21).
│ │ │ +0011ba90: 2020 2d20 5043 492d 4453 5376 342d 312e    - PCI-DSSv4-1.
│ │ │ +0011baa0: 320a 2020 2d20 5043 492d 4453 5376 342d  2.  - PCI-DSSv4-
│ │ │ +0011bab0: 312e 322e 310a 2020 2d20 656e 6162 6c65  1.2.1.  - enable
│ │ │ +0011bac0: 5f73 7472 6174 6567 790a 2020 2d20 6c6f  _strategy.  - lo
│ │ │ +0011bad0: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ +0011bae0: 206c 6f77 5f64 6973 7275 7074 696f 6e0a   low_disruption.
│ │ │ +0011baf0: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ +0011bb00: 6974 790a 2020 2d20 6e6f 5f72 6562 6f6f  ity.  - no_reboo
│ │ │ +0011bb10: 745f 6e65 6564 6564 0a20 202d 2073 6572  t_needed.  - ser
│ │ │ +0011bb20: 7669 6365 5f66 6972 6577 616c 6c64 5f65  vice_firewalld_e
│ │ │ +0011bb30: 6e61 626c 6564 0a0a 2d20 6e61 6d65 3a20  nabled..- name: 
│ │ │ +0011bb40: 5665 7269 6679 2066 6972 6577 616c 6c64  Verify firewalld
│ │ │ +0011bb50: 2045 6e61 626c 6564 202d 2045 6e61 626c   Enabled - Enabl
│ │ │ +0011bb60: 6520 7365 7276 6963 6520 6669 7265 7761  e service firewa
│ │ │ +0011bb70: 6c6c 640a 2020 626c 6f63 6b3a 0a0a 2020  lld.  block:..  
│ │ │ +0011bb80: 2d20 6e61 6d65 3a20 4761 7468 6572 2074  - name: Gather t
│ │ │ +0011bb90: 6865 2070 6163 6b61 6765 2066 6163 7473  he package facts
│ │ │ +0011bba0: 0a20 2020 2061 6e73 6962 6c65 2e62 7569  .    ansible.bui
│ │ │ +0011bbb0: 6c74 696e 2e70 6163 6b61 6765 5f66 6163  ltin.package_fac
│ │ │ +0011bbc0: 7473 3a0a 2020 2020 2020 6d61 6e61 6765  ts:.      manage
│ │ │ +0011bbd0: 723a 2061 7574 6f0a 0a20 202d 206e 616d  r: auto..  - nam
│ │ │ +0011bbe0: 653a 2056 6572 6966 7920 6669 7265 7761  e: Verify firewa
│ │ │ +0011bbf0: 6c6c 6420 456e 6162 6c65 6420 2d20 456e  lld Enabled - En
│ │ │ +0011bc00: 6162 6c65 2053 6572 7669 6365 2066 6972  able Service fir
│ │ │ +0011bc10: 6577 616c 6c64 0a20 2020 2061 6e73 6962  ewalld.    ansib
│ │ │ +0011bc20: 6c65 2e62 7569 6c74 696e 2e73 7973 7465  le.builtin.syste
│ │ │ +0011bc30: 6d64 3a0a 2020 2020 2020 6e61 6d65 3a20  md:.      name: 
│ │ │ +0011bc40: 6669 7265 7761 6c6c 640a 2020 2020 2020  firewalld.      
│ │ │ +0011bc50: 656e 6162 6c65 643a 2074 7275 650a 2020  enabled: true.  
│ │ │ +0011bc60: 2020 2020 7374 6174 653a 2073 7461 7274      state: start
│ │ │ +0011bc70: 6564 0a20 2020 2020 206d 6173 6b65 643a  ed.      masked:
│ │ │ +0011bc80: 2066 616c 7365 0a20 2020 2077 6865 6e3a   false.    when:
│ │ │ +0011bc90: 0a20 2020 202d 2027 2266 6972 6577 616c  .    - '"firewal
│ │ │ +0011bca0: 6c64 2220 696e 2061 6e73 6962 6c65 5f66  ld" in ansible_f
│ │ │ +0011bcb0: 6163 7473 2e70 6163 6b61 6765 7327 0a20  acts.packages'. 
│ │ │ +0011bcc0: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ +0011bcd0: 3830 302d 3137 312d 332e 312e 330a 2020  800-171-3.1.3.  
│ │ │ +0011bce0: 2d20 4e49 5354 2d38 3030 2d31 3731 2d33  - NIST-800-171-3
│ │ │ +0011bcf0: 2e34 2e37 0a20 202d 204e 4953 542d 3830  .4.7.  - NIST-80
│ │ │ +0011bd00: 302d 3533 2d41 432d 340a 2020 2d20 4e49  0-53-AC-4.  - NI
│ │ │ +0011bd10: 5354 2d38 3030 2d35 332d 4341 2d33 2835  ST-800-53-CA-3(5
│ │ │ +0011bd20: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +0011bd30: 332d 434d 2d36 2861 290a 2020 2d20 4e49  3-CM-6(a).  - NI
│ │ │ +0011bd40: 5354 2d38 3030 2d35 332d 434d 2d37 2862  ST-800-53-CM-7(b
│ │ │ +0011bd50: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +0011bd60: 332d 5343 2d37 2832 3129 0a20 202d 2050  3-SC-7(21).  - P
│ │ │ +0011bd70: 4349 2d44 5353 7634 2d31 2e32 0a20 202d  CI-DSSv4-1.2.  -
│ │ │ +0011bd80: 2050 4349 2d44 5353 7634 2d31 2e32 2e31   PCI-DSSv4-1.2.1
│ │ │ +0011bd90: 0a20 202d 2065 6e61 626c 655f 7374 7261  .  - enable_stra
│ │ │ +0011bda0: 7465 6779 0a20 202d 206c 6f77 5f63 6f6d  tegy.  - low_com
│ │ │ +0011bdb0: 706c 6578 6974 790a 2020 2d20 6c6f 775f  plexity.  - low_
│ │ │ +0011bdc0: 6469 7372 7570 7469 6f6e 0a20 202d 206d  disruption.  - m
│ │ │ +0011bdd0: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ +0011bde0: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ +0011bdf0: 6465 640a 2020 2d20 7365 7276 6963 655f  ded.  - service_
│ │ │ +0011be00: 6669 7265 7761 6c6c 645f 656e 6162 6c65  firewalld_enable
│ │ │ +0011be10: 640a 2020 2d20 7370 6563 6961 6c5f 7365  d.  - special_se
│ │ │ +0011be20: 7276 6963 655f 626c 6f63 6b0a 2020 7768  rvice_block.  wh
│ │ │ +0011be30: 656e 3a0a 2020 2d20 2722 6b65 726e 656c  en:.  - '"kernel
│ │ │ +0011be40: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +0011be50: 7473 2e70 6163 6b61 6765 7327 0a20 202d  ts.packages'.  -
│ │ │ +0011be60: 2027 2266 6972 6577 616c 6c64 2220 696e   '"firewalld" in
│ │ │ +0011be70: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +0011be80: 6163 6b61 6765 7327 0a3c 2f63 6f64 653e  ackages'.
│ │ │ +0011be90: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ +0011bf40: 7469 6f6e 2050 7570 7065 7420 736e 6970 tion Puppet snip │ │ │ +0011bf50: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ +0011bf60: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +0011bf70: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +0011bf80: 7365 2220 6964 3d22 6964 3238 3222 3e3c se" id="id282">< │ │ │ +0011bf90: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +0011bfa0: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +0011bfb0: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +0011bfc0: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +0011bfd0: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Disruption:Strategy: │ │ │ +0011c060: 3c74 643e 656e 6162 6c65 3c2f 7464 3e3c < │ │ │ +0011c070: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
low
Disru │ │ │ +0011b920: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +0011b930: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +0011b970: 6567 793a 3c2f 7468 3e3c 7464 3e65 6e61 egy:ena │ │ │ +0011b980: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Complex │ │ │ +0011bfe0: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ +0011bff0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
low
Reboo │ │ │ +0011c030: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ +0011c040: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
enable
include e
│ │ │ +0011c090: 6e61 626c 655f 6669 7265 7761 6c6c 640a  nable_firewalld.
│ │ │ +0011c0a0: 0a63 6c61 7373 2065 6e61 626c 655f 6669  .class enable_fi
│ │ │ +0011c0b0: 7265 7761 6c6c 6420 7b0a 2020 7365 7276  rewalld {.  serv
│ │ │ +0011c0c0: 6963 6520 7b27 6669 7265 7761 6c6c 6427  ice {'firewalld'
│ │ │ +0011c0d0: 3a0a 2020 2020 656e 6162 6c65 203d 2667  :.    enable =&g
│ │ │ +0011c0e0: 743b 2074 7275 652c 0a20 2020 2065 6e73  t; true,.    ens
│ │ │ +0011c0f0: 7572 6520 3d26 6774 3b20 2772 756e 6e69  ure => 'runni
│ │ │ +0011c100: 6e67 272c 0a20 207d 0a7d 0a3c 2f63 6f64  ng',.  }.}.
Remed │ │ │ +0011c1c0: 6961 7469 6f6e 204f 5342 7569 6c64 2042 iation OSBuild B │ │ │ +0011c1d0: 6c75 6570 7269 6e74 2073 6e69 7070 6574 lueprint snippet │ │ │ +0011c1e0: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
.[customi
│ │ │ +0011c230: 7a61 7469 6f6e 732e 7365 7276 6963 6573  zations.services
│ │ │ +0011c240: 5d0a 656e 6162 6c65 6420 3d20 5b22 6669  ].enabled = ["fi
│ │ │ +0011c250: 7265 7761 6c6c 6422 5d0a 3c2f 636f 6465  rewalld"].
Reme │ │ │ -0016d600: 6469 6174 696f 6e20 4f53 4275 696c 6420 diation OSBuild │ │ │ -0016d610: 426c 7565 7072 696e 7420 736e 6970 7065 Blueprint snippe │ │ │ -0016d620: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
.[[packa │ │ │ -0016d670: 6765 735d 5d0a 6e61 6d65 203d 2022 6e66 ges]].name = "nf │ │ │ -0016d680: 7461 626c 6573 220a 7665 7273 696f 6e20 tables".version │ │ │ -0016d690: 3d20 222a 220a 3c2f 636f 6465 3e3c 2f70 = "*".

Remediatio │ │ │ -0016d750: 6e20 416e 6163 6f6e 6461 2073 6e69 7070 n Anaconda snipp │ │ │ -0016d760: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ -0016d7e0: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ -0016d7f0: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -0016d800: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ -0016d840: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -0016d850: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ -0016d870: 7464 3e65 6e61 626c 653c 2f74 643e 3c2f td>enable
│ │ │ -0016d890: 3c63 6f64 653e 0a70 6163 6b61 6765 202d  .package -
│ │ │ -0016d8a0: 2d61 6464 3d6e 6674 6162 6c65 730a 3c2f  -add=nftables.
Re │ │ │ -0016d960: 6d65 6469 6174 696f 6e20 5075 7070 6574 mediation Puppet │ │ │ -0016d970: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -0016d980: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ -0016da20: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ -0016da70: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
Co │ │ │ -0016da00: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -0016da30: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ -0016da50: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ -0016da60: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ -0016da80: 3c2f 7468 3e3c 7464 3e65 6e61 626c 653c enable< │ │ │ -0016da90: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
incl
│ │ │ -0016dab0: 7564 6520 696e 7374 616c 6c5f 6e66 7461  ude install_nfta
│ │ │ -0016dac0: 626c 6573 0a0a 636c 6173 7320 696e 7374  bles..class inst
│ │ │ -0016dad0: 616c 6c5f 6e66 7461 626c 6573 207b 0a20  all_nftables {. 
│ │ │ -0016dae0: 2070 6163 6b61 6765 207b 2027 6e66 7461   package { 'nfta
│ │ │ -0016daf0: 626c 6573 273a 0a20 2020 2065 6e73 7572  bles':.    ensur
│ │ │ -0016db00: 6520 3d26 6774 3b20 2769 6e73 7461 6c6c  e => 'install
│ │ │ -0016db10: 6564 272c 0a20 207d 0a7d 0a3c 2f63 6f64  ed',.  }.}.
Remed │ │ │ -0016dbd0: 6961 7469 6f6e 2041 6e73 6962 6c65 2073 iation Ansible s │ │ │ -0016dbe0: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ -0016dc70: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -0016dc80: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -0016dca0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ -0016dcc0: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -0016dcd0: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:enable
< │ │ │ -0016dd10: 7072 653e 3c63 6f64 653e 2d20 6e61 6d65 pre>- name │ │ │ -0016dd20: 3a20 4761 7468 6572 2074 6865 2070 6163 : Gather the pac │ │ │ -0016dd30: 6b61 6765 2066 6163 7473 0a20 2070 6163 kage facts. pac │ │ │ -0016dd40: 6b61 6765 5f66 6163 7473 3a0a 2020 2020 kage_facts:. │ │ │ -0016dd50: 6d61 6e61 6765 723a 2061 7574 6f0a 2020 manager: auto. │ │ │ -0016dd60: 7461 6773 3a0a 2020 2d20 5043 492d 4453 tags:. - PCI-DS │ │ │ -0016dd70: 5376 342d 312e 320a 2020 2d20 5043 492d Sv4-1.2. - PCI- │ │ │ -0016dd80: 4453 5376 342d 312e 322e 310a 2020 2d20 DSSv4-1.2.1. - │ │ │ -0016dd90: 656e 6162 6c65 5f73 7472 6174 6567 790a enable_strategy. │ │ │ -0016dda0: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869 - low_complexi │ │ │ -0016ddb0: 7479 0a20 202d 206c 6f77 5f64 6973 7275 ty. - low_disru │ │ │ -0016ddc0: 7074 696f 6e0a 2020 2d20 6d65 6469 756d ption. - medium │ │ │ -0016ddd0: 5f73 6576 6572 6974 790a 2020 2d20 6e6f _severity. - no │ │ │ -0016dde0: 5f72 6562 6f6f 745f 6e65 6564 6564 0a20 _reboot_needed. │ │ │ -0016ddf0: 202d 2070 6163 6b61 6765 5f6e 6674 6162 - package_nftab │ │ │ -0016de00: 6c65 735f 696e 7374 616c 6c65 640a 0a2d les_installed..- │ │ │ -0016de10: 206e 616d 653a 2045 6e73 7572 6520 6e66 name: Ensure nf │ │ │ -0016de20: 7461 626c 6573 2069 7320 696e 7374 616c tables is instal │ │ │ -0016de30: 6c65 640a 2020 616e 7369 626c 652e 6275 led. ansible.bu │ │ │ -0016de40: 696c 7469 6e2e 7061 636b 6167 653a 0a20 iltin.package:. │ │ │ -0016de50: 2020 206e 616d 653a 206e 6674 6162 6c65 name: nftable │ │ │ -0016de60: 730a 2020 2020 7374 6174 653a 2070 7265 s. state: pre │ │ │ -0016de70: 7365 6e74 0a20 2077 6865 6e3a 2028 2022 sent. when: ( " │ │ │ -0016de80: 6b65 726e 656c 2220 696e 2061 6e73 6962 kernel" in ansib │ │ │ -0016de90: 6c65 5f66 6163 7473 2e70 6163 6b61 6765 le_facts.package │ │ │ -0016dea0: 7320 290a 2020 7461 6773 3a0a 2020 2d20 s ). tags:. - │ │ │ -0016deb0: 5043 492d 4453 5376 342d 312e 320a 2020 PCI-DSSv4-1.2. │ │ │ -0016dec0: 2d20 5043 492d 4453 5376 342d 312e 322e - PCI-DSSv4-1.2. │ │ │ -0016ded0: 310a 2020 2d20 656e 6162 6c65 5f73 7472 1. - enable_str │ │ │ -0016dee0: 6174 6567 790a 2020 2d20 6c6f 775f 636f ategy. - low_co │ │ │ -0016def0: 6d70 6c65 7869 7479 0a20 202d 206c 6f77 mplexity. - low │ │ │ -0016df00: 5f64 6973 7275 7074 696f 6e0a 2020 2d20 _disruption. - │ │ │ -0016df10: 6d65 6469 756d 5f73 6576 6572 6974 790a medium_severity. │ │ │ -0016df20: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65 - no_reboot_ne │ │ │ -0016df30: 6564 6564 0a20 202d 2070 6163 6b61 6765 eded. - package │ │ │ -0016df40: 5f6e 6674 6162 6c65 735f 696e 7374 616c _nftables_instal │ │ │ -0016df50: 6c65 640a 3c2f 636f 6465 3e3c 2f70 7265 led.
Remediation │ │ │ -0016e010: 5368 656c 6c20 7363 7269 7074 20e2 87b2 Shell script ... │ │ │ -0016e020: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity: │ │ │ -0016e0f0: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -0016e100: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f

│ │ │ -0016e150: 2320 5265 6d65 6469 6174 696f 6e20 6973  # Remediation is
│ │ │ -0016e160: 2061 7070 6c69 6361 626c 6520 6f6e 6c79   applicable only
│ │ │ -0016e170: 2069 6e20 6365 7274 6169 6e20 706c 6174   in certain plat
│ │ │ -0016e180: 666f 726d 730a 6966 2028 2028 2021 2028  forms.if ( ( ! (
│ │ │ -0016e190: 7379 7374 656d 6374 6c20 6973 2d61 6374  systemctl is-act
│ │ │ -0016e1a0: 6976 6520 6970 7461 626c 6573 2026 616d  ive iptables &am
│ │ │ -0016e1b0: 703b 2667 743b 2f64 6576 2f6e 756c 6c29  p;>/dev/null)
│ │ │ -0016e1c0: 2026 616d 703b 2661 6d70 3b20 2120 2873   && ! (s
│ │ │ -0016e1d0: 7973 7465 6d63 746c 2069 732d 6163 7469  ystemctl is-acti
│ │ │ -0016e1e0: 7665 2075 6677 2026 616d 703b 2667 743b  ve ufw &>
│ │ │ -0016e1f0: 2f64 6576 2f6e 756c 6c29 2026 616d 703b  /dev/null) &
│ │ │ -0016e200: 2661 6d70 3b20 7270 6d20 2d2d 7175 6965  & rpm --quie
│ │ │ -0016e210: 7420 2d71 206b 6572 6e65 6c20 2920 293b  t -q kernel ) );
│ │ │ -0016e220: 2074 6865 6e0a 0a69 6620 2120 7270 6d20   then..if ! rpm 
│ │ │ -0016e230: 2d71 202d 2d71 7569 6574 2022 6e66 7461  -q --quiet "nfta
│ │ │ -0016e240: 626c 6573 2220 3b20 7468 656e 0a20 2020  bles" ; then.   
│ │ │ -0016e250: 2064 6e66 2069 6e73 7461 6c6c 202d 7920   dnf install -y 
│ │ │ -0016e260: 226e 6674 6162 6c65 7322 0a66 690a 0a65  "nftables".fi..e
│ │ │ -0016e270: 6c73 650a 2020 2020 2667 743b 2661 6d70  lse.    >&
│ │ │ -0016e280: 3b32 2065 6368 6f20 2752 656d 6564 6961  ;2 echo 'Remedia
│ │ │ -0016e290: 7469 6f6e 2069 7320 6e6f 7420 6170 706c  tion is not appl
│ │ │ -0016e2a0: 6963 6162 6c65 2c20 6e6f 7468 696e 6720  icable, nothing 
│ │ │ -0016e2b0: 7761 7320 646f 6e65 270a 6669 0a3c 2f63  was done'.fi.<
│ │ │ +0016d620: 6272 3e3c 6469 7620 636c 6173 733d 2270  br>
low
Disru │ │ │ -0016e0d0: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ -0016e0e0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ -0016e120: 6567 793a 3c2f 7468 3e3c 7464 3e65 6e61 egy:ena │ │ │ -0016e130: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Com │ │ │ +0016d6a0: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ +0016d6d0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ +0016d6f0: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +0016d700: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ +0016d720: 2f74 683e 3c74 643e 656e 6162 6c65 3c2f /th>enable
│ │ │ +0016d740: 3c70 7265 3e3c 636f 6465 3e2d 206e 616d
- nam
│ │ │ +0016d750: 653a 2047 6174 6865 7220 7468 6520 7061  e: Gather the pa
│ │ │ +0016d760: 636b 6167 6520 6661 6374 730a 2020 7061  ckage facts.  pa
│ │ │ +0016d770: 636b 6167 655f 6661 6374 733a 0a20 2020  ckage_facts:.   
│ │ │ +0016d780: 206d 616e 6167 6572 3a20 6175 746f 0a20   manager: auto. 
│ │ │ +0016d790: 2074 6167 733a 0a20 202d 2050 4349 2d44   tags:.  - PCI-D
│ │ │ +0016d7a0: 5353 7634 2d31 2e32 0a20 202d 2050 4349  SSv4-1.2.  - PCI
│ │ │ +0016d7b0: 2d44 5353 7634 2d31 2e32 2e31 0a20 202d  -DSSv4-1.2.1.  -
│ │ │ +0016d7c0: 2065 6e61 626c 655f 7374 7261 7465 6779   enable_strategy
│ │ │ +0016d7d0: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ +0016d7e0: 6974 790a 2020 2d20 6c6f 775f 6469 7372  ity.  - low_disr
│ │ │ +0016d7f0: 7570 7469 6f6e 0a20 202d 206d 6564 6975  uption.  - mediu
│ │ │ +0016d800: 6d5f 7365 7665 7269 7479 0a20 202d 206e  m_severity.  - n
│ │ │ +0016d810: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ +0016d820: 2020 2d20 7061 636b 6167 655f 6e66 7461    - package_nfta
│ │ │ +0016d830: 626c 6573 5f69 6e73 7461 6c6c 6564 0a0a  bles_installed..
│ │ │ +0016d840: 2d20 6e61 6d65 3a20 456e 7375 7265 206e  - name: Ensure n
│ │ │ +0016d850: 6674 6162 6c65 7320 6973 2069 6e73 7461  ftables is insta
│ │ │ +0016d860: 6c6c 6564 0a20 2061 6e73 6962 6c65 2e62  lled.  ansible.b
│ │ │ +0016d870: 7569 6c74 696e 2e70 6163 6b61 6765 3a0a  uiltin.package:.
│ │ │ +0016d880: 2020 2020 6e61 6d65 3a20 6e66 7461 626c      name: nftabl
│ │ │ +0016d890: 6573 0a20 2020 2073 7461 7465 3a20 7072  es.    state: pr
│ │ │ +0016d8a0: 6573 656e 740a 2020 7768 656e 3a20 2820  esent.  when: ( 
│ │ │ +0016d8b0: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ +0016d8c0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +0016d8d0: 6573 2029 0a20 2074 6167 733a 0a20 202d  es ).  tags:.  -
│ │ │ +0016d8e0: 2050 4349 2d44 5353 7634 2d31 2e32 0a20   PCI-DSSv4-1.2. 
│ │ │ +0016d8f0: 202d 2050 4349 2d44 5353 7634 2d31 2e32   - PCI-DSSv4-1.2
│ │ │ +0016d900: 2e31 0a20 202d 2065 6e61 626c 655f 7374  .1.  - enable_st
│ │ │ +0016d910: 7261 7465 6779 0a20 202d 206c 6f77 5f63  rategy.  - low_c
│ │ │ +0016d920: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f  omplexity.  - lo
│ │ │ +0016d930: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ +0016d940: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ +0016d950: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ +0016d960: 6565 6465 640a 2020 2d20 7061 636b 6167  eeded.  - packag
│ │ │ +0016d970: 655f 6e66 7461 626c 6573 5f69 6e73 7461  e_nftables_insta
│ │ │ +0016d980: 6c6c 6564 0a3c 2f63 6f64 653e 3c2f 7072  lled.
Remediation │ │ │ +0016da40: 2050 7570 7065 7420 736e 6970 7065 7420 Puppet snippet │ │ │ +0016da50: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
Complexity: │ │ │ +0016dae0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ +0016db00: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:low< │ │ │ +0016db20: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:falseSt │ │ │ +0016db50: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ +0016db60: 656e 6162 6c65 3c2f 7464 3e3c 2f74 723e enable │ │ │ +0016db70: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
include insta
│ │ │ +0016db90: 6c6c 5f6e 6674 6162 6c65 730a 0a63 6c61  ll_nftables..cla
│ │ │ +0016dba0: 7373 2069 6e73 7461 6c6c 5f6e 6674 6162  ss install_nftab
│ │ │ +0016dbb0: 6c65 7320 7b0a 2020 7061 636b 6167 6520  les {.  package 
│ │ │ +0016dbc0: 7b20 276e 6674 6162 6c65 7327 3a0a 2020  { 'nftables':.  
│ │ │ +0016dbd0: 2020 656e 7375 7265 203d 2667 743b 2027    ensure => '
│ │ │ +0016dbe0: 696e 7374 616c 6c65 6427 2c0a 2020 7d0a  installed',.  }.
│ │ │ +0016dbf0: 7d0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  }.
< │ │ │ +0016dc00: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation OS │ │ │ +0016dcb0: 4275 696c 6420 426c 7565 7072 696e 7420 Build Blueprint │ │ │ +0016dcc0: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ +0016dcd0: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
.[
│ │ │ +0016dd10: 5b70 6163 6b61 6765 735d 5d0a 6e61 6d65  [packages]].name
│ │ │ +0016dd20: 203d 2022 6e66 7461 626c 6573 220a 7665   = "nftables".ve
│ │ │ +0016dd30: 7273 696f 6e20 3d20 222a 220a 3c2f 636f  rsion = "*".
< │ │ │ +0016dd50: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ +0016dd60: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ +0016dd70: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ +0016dd80: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ +0016dd90: 6433 3635 2220 7461 6269 6e64 6578 3d22 d365" tabindex=" │ │ │ +0016dda0: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ +0016ddb0: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ +0016ddc0: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ +0016ddd0: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ +0016dde0: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ +0016ddf0: 6469 6174 696f 6e20 5368 656c 6c20 7363 diation Shell sc │ │ │ +0016de00: 7269 7074 20e2 87b2 3c2f 613e 3c62 723e ript ...
│ │ │ +0016de10: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ +0016de40: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ +0016deb0: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ +0016ded0: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ +0016df00: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy: │ │ │ +0016df20: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
Comple │ │ │ +0016de90: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ +0016dea0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ +0016dee0: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +0016def0: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
enable
# Remedi │ │ │ +0016df40: 6174 696f 6e20 6973 2061 7070 6c69 6361 ation is applica │ │ │ +0016df50: 626c 6520 6f6e 6c79 2069 6e20 6365 7274 ble only in cert │ │ │ +0016df60: 6169 6e20 706c 6174 666f 726d 730a 6966 ain platforms.if │ │ │ +0016df70: 2028 2028 2021 2028 7379 7374 656d 6374 ( ( ! (systemct │ │ │ +0016df80: 6c20 6973 2d61 6374 6976 6520 6970 7461 l is-active ipta │ │ │ +0016df90: 626c 6573 2026 616d 703b 2667 743b 2f64 bles &>/d │ │ │ +0016dfa0: 6576 2f6e 756c 6c29 2026 616d 703b 2661 ev/null) &&a │ │ │ +0016dfb0: 6d70 3b20 2120 2873 7973 7465 6d63 746c mp; ! (systemctl │ │ │ +0016dfc0: 2069 732d 6163 7469 7665 2075 6677 2026 is-active ufw & │ │ │ +0016dfd0: 616d 703b 2667 743b 2f64 6576 2f6e 756c amp;>/dev/nul │ │ │ +0016dfe0: 6c29 2026 616d 703b 2661 6d70 3b20 7270 l) && rp │ │ │ +0016dff0: 6d20 2d2d 7175 6965 7420 2d71 206b 6572 m --quiet -q ker │ │ │ +0016e000: 6e65 6c20 2920 293b 2074 6865 6e0a 0a69 nel ) ); then..i │ │ │ +0016e010: 6620 2120 7270 6d20 2d71 202d 2d71 7569 f ! rpm -q --qui │ │ │ +0016e020: 6574 2022 6e66 7461 626c 6573 2220 3b20 et "nftables" ; │ │ │ +0016e030: 7468 656e 0a20 2020 2064 6e66 2069 6e73 then. dnf ins │ │ │ +0016e040: 7461 6c6c 202d 7920 226e 6674 6162 6c65 tall -y "nftable │ │ │ +0016e050: 7322 0a66 690a 0a65 6c73 650a 2020 2020 s".fi..else. │ │ │ +0016e060: 2667 743b 2661 6d70 3b32 2065 6368 6f20 >&2 echo │ │ │ +0016e070: 2752 656d 6564 6961 7469 6f6e 2069 7320 'Remediation is │ │ │ +0016e080: 6e6f 7420 6170 706c 6963 6162 6c65 2c20 not applicable, │ │ │ +0016e090: 6e6f 7468 696e 6720 7761 7320 646f 6e65 nothing was done │ │ │ +0016e0a0: 270a 6669 0a3c 2f63 6f64 653e 3c2f 7072 '.fi.
Remediation │ │ │ +0016e160: 2041 6e61 636f 6e64 6120 736e 6970 7065 Anaconda snippe │ │ │ +0016e170: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ +0016e1f0: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ +0016e200: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ +0016e220: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ +0016e230: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ +0016e250: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ +0016e270: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:enable
<
│ │ │ +0016e2a0: 636f 6465 3e0a 7061 636b 6167 6520 2d2d  code>.package --
│ │ │ +0016e2b0: 6164 643d 6e66 7461 626c 6573 0a3c 2f63  add=nftables.
│ │ │ 0016e2d0: 3c2f 6469 763e 3c2f 7464 3e3c 2f74 723e
│ │ │ 0016e2e0: 3c2f 7462 6f64 793e 3c2f 7461 626c 653e │ │ │ 0016e2f0: 3c2f 7464 3e3c 2f74 723e 3c74 7220 6461 Remedia │ │ │ -0016ec20: 7469 6f6e 204f 5342 7569 6c64 2042 6c75 tion OSBuild Blu │ │ │ -0016ec30: 6570 7269 6e74 2073 6e69 7070 6574 20e2 eprint snippet . │ │ │ -0016ec40: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
<
│ │ │ -0016ec80: 636f 6465 3e0a 5b63 7573 746f 6d69 7a61  code>.[customiza
│ │ │ -0016ec90: 7469 6f6e 732e 7365 7276 6963 6573 5d0a  tions.services].
│ │ │ -0016eca0: 6d61 736b 6564 203d 205b 226e 6674 6162  masked = ["nftab
│ │ │ -0016ecb0: 6c65 7322 5d0a 3c2f 636f 6465 3e3c 2f70  les"].

Remediatio │ │ │ -0016ed70: 6e20 5075 7070 6574 2073 6e69 7070 6574 n Puppet snippet │ │ │ -0016ed80: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Complexity │ │ │ -0016ee10: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ -0016ee30: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ -0016ee40: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -0016ee50: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ -0016ee60: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ -0016ee80: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:enable
include disa
│ │ │ -0016eec0: 626c 655f 6e66 7461 626c 6573 0a0a 636c  ble_nftables..cl
│ │ │ -0016eed0: 6173 7320 6469 7361 626c 655f 6e66 7461  ass disable_nfta
│ │ │ -0016eee0: 626c 6573 207b 0a20 2073 6572 7669 6365  bles {.  service
│ │ │ -0016eef0: 207b 276e 6674 6162 6c65 7327 3a0a 2020   {'nftables':.  
│ │ │ -0016ef00: 2020 656e 6162 6c65 203d 2667 743b 2066    enable => f
│ │ │ -0016ef10: 616c 7365 2c0a 2020 2020 656e 7375 7265  alse,.    ensure
│ │ │ -0016ef20: 203d 2667 743b 2027 7374 6f70 7065 6427   => 'stopped'
│ │ │ -0016ef30: 2c0a 2020 7d0a 7d0a 3c2f 636f 6465 3e3c  ,.  }.}.<
│ │ │ -0016ef40: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>
Remediat │ │ │ -0016eff0: 696f 6e20 416e 7369 626c 6520 736e 6970 ion Ansible snip │ │ │ -0016f000: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ -0016f010: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -0016f020: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -0016f030: 7365 2220 6964 3d22 6964 3337 3022 3e3c se" id="id370">< │ │ │ -0016f040: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ -0016f050: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ -0016f060: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ -0016f070: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ -0016f080: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Complex │ │ │ -0016f090: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ -0016f0a0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Disruption:lowReboo │ │ │ -0016f0e0: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -0016f0f0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ -0016f110: 3c74 643e 6469 7361 626c 653c 2f74 643e disable │ │ │ -0016f120: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072 - name: │ │ │ -0016f140: 4761 7468 6572 2074 6865 2070 6163 6b61 Gather the packa │ │ │ -0016f150: 6765 2066 6163 7473 0a20 2070 6163 6b61 ge facts. packa │ │ │ -0016f160: 6765 5f66 6163 7473 3a0a 2020 2020 6d61 ge_facts:. ma │ │ │ -0016f170: 6e61 6765 723a 2061 7574 6f0a 2020 7461 nager: auto. ta │ │ │ -0016f180: 6773 3a0a 2020 2d20 5043 492d 4453 5376 gs:. - PCI-DSSv │ │ │ -0016f190: 342d 312e 320a 2020 2d20 5043 492d 4453 4-1.2. - PCI-DS │ │ │ -0016f1a0: 5376 342d 312e 322e 310a 2020 2d20 6469 Sv4-1.2.1. - di │ │ │ -0016f1b0: 7361 626c 655f 7374 7261 7465 6779 0a20 sable_strategy. │ │ │ -0016f1c0: 202d 206c 6f77 5f63 6f6d 706c 6578 6974 - low_complexit │ │ │ -0016f1d0: 790a 2020 2d20 6c6f 775f 6469 7372 7570 y. - low_disrup │ │ │ -0016f1e0: 7469 6f6e 0a20 202d 206d 6564 6975 6d5f tion. - medium_ │ │ │ -0016f1f0: 7365 7665 7269 7479 0a20 202d 206e 6f5f severity. - no_ │ │ │ -0016f200: 7265 626f 6f74 5f6e 6565 6465 640a 2020 reboot_needed. │ │ │ -0016f210: 2d20 7365 7276 6963 655f 6e66 7461 626c - service_nftabl │ │ │ -0016f220: 6573 5f64 6973 6162 6c65 640a 0a2d 206e es_disabled..- n │ │ │ -0016f230: 616d 653a 2056 6572 6966 7920 6e66 7461 ame: Verify nfta │ │ │ -0016f240: 626c 6573 2053 6572 7669 6365 2069 7320 bles Service is │ │ │ -0016f250: 4469 7361 626c 6564 202d 2044 6973 6162 Disabled - Disab │ │ │ -0016f260: 6c65 2073 6572 7669 6365 206e 6674 6162 le service nftab │ │ │ -0016f270: 6c65 730a 2020 626c 6f63 6b3a 0a0a 2020 les. block:.. │ │ │ -0016f280: 2d20 6e61 6d65 3a20 5665 7269 6679 206e - name: Verify n │ │ │ -0016f290: 6674 6162 6c65 7320 5365 7276 6963 6520 ftables Service │ │ │ -0016f2a0: 6973 2044 6973 6162 6c65 6420 2d20 436f is Disabled - Co │ │ │ -0016f2b0: 6c6c 6563 7420 7379 7374 656d 6420 5365 llect systemd Se │ │ │ -0016f2c0: 7276 6963 6573 2050 7265 7365 6e74 2069 rvices Present i │ │ │ -0016f2d0: 6e0a 2020 2020 2020 7468 6520 5379 7374 n. the Syst │ │ │ -0016f2e0: 656d 0a20 2020 2061 6e73 6962 6c65 2e62 em. ansible.b │ │ │ -0016f2f0: 7569 6c74 696e 2e63 6f6d 6d61 6e64 3a20 uiltin.command: │ │ │ -0016f300: 7379 7374 656d 6374 6c20 2d71 206c 6973 systemctl -q lis │ │ │ -0016f310: 742d 756e 6974 2d66 696c 6573 202d 2d74 t-unit-files --t │ │ │ -0016f320: 7970 6520 7365 7276 6963 650a 2020 2020 ype service. │ │ │ -0016f330: 7265 6769 7374 6572 3a20 7365 7276 6963 register: servic │ │ │ -0016f340: 655f 6578 6973 7473 0a20 2020 2063 6861 e_exists. cha │ │ │ -0016f350: 6e67 6564 5f77 6865 6e3a 2066 616c 7365 nged_when: false │ │ │ -0016f360: 0a20 2020 2066 6169 6c65 645f 7768 656e . failed_when │ │ │ -0016f370: 3a20 7365 7276 6963 655f 6578 6973 7473 : service_exists │ │ │ -0016f380: 2e72 6320 6e6f 7420 696e 205b 302c 2031 .rc not in [0, 1 │ │ │ -0016f390: 5d0a 2020 2020 6368 6563 6b5f 6d6f 6465 ]. check_mode │ │ │ -0016f3a0: 3a20 6661 6c73 650a 0a20 202d 206e 616d : false.. - nam │ │ │ -0016f3b0: 653a 2056 6572 6966 7920 6e66 7461 626c e: Verify nftabl │ │ │ -0016f3c0: 6573 2053 6572 7669 6365 2069 7320 4469 es Service is Di │ │ │ -0016f3d0: 7361 626c 6564 202d 2045 6e73 7572 6520 sabled - Ensure │ │ │ -0016f3e0: 6e66 7461 626c 6573 2e73 6572 7669 6365 nftables.service │ │ │ -0016f3f0: 2069 7320 4d61 736b 6564 0a20 2020 2061 is Masked. a │ │ │ -0016f400: 6e73 6962 6c65 2e62 7569 6c74 696e 2e73 nsible.builtin.s │ │ │ -0016f410: 7973 7465 6d64 3a0a 2020 2020 2020 6e61 ystemd:. na │ │ │ -0016f420: 6d65 3a20 6e66 7461 626c 6573 2e73 6572 me: nftables.ser │ │ │ -0016f430: 7669 6365 0a20 2020 2020 2073 7461 7465 vice. state │ │ │ -0016f440: 3a20 7374 6f70 7065 640a 2020 2020 2020 : stopped. │ │ │ -0016f450: 656e 6162 6c65 643a 2066 616c 7365 0a20 enabled: false. │ │ │ -0016f460: 2020 2020 206d 6173 6b65 643a 2074 7275 masked: tru │ │ │ -0016f470: 650a 2020 2020 7768 656e 3a20 7365 7276 e. when: serv │ │ │ -0016f480: 6963 655f 6578 6973 7473 2e73 7464 6f75 ice_exists.stdou │ │ │ -0016f490: 745f 6c69 6e65 7320 6973 2073 6561 7263 t_lines is searc │ │ │ -0016f4a0: 6828 226e 6674 6162 6c65 732e 7365 7276 h("nftables.serv │ │ │ -0016f4b0: 6963 6522 2c20 6d75 6c74 696c 696e 653d ice", multiline= │ │ │ -0016f4c0: 5472 7565 290a 0a20 202d 206e 616d 653a True).. - name: │ │ │ -0016f4d0: 2055 6e69 7420 536f 636b 6574 2045 7869 Unit Socket Exi │ │ │ -0016f4e0: 7374 7320 2d20 6e66 7461 626c 6573 2e73 sts - nftables.s │ │ │ -0016f4f0: 6f63 6b65 740a 2020 2020 616e 7369 626c ocket. ansibl │ │ │ -0016f500: 652e 6275 696c 7469 6e2e 636f 6d6d 616e e.builtin.comman │ │ │ -0016f510: 643a 2073 7973 7465 6d63 746c 202d 7120 d: systemctl -q │ │ │ -0016f520: 6c69 7374 2d75 6e69 742d 6669 6c65 7320 list-unit-files │ │ │ -0016f530: 6e66 7461 626c 6573 2e73 6f63 6b65 740a nftables.socket. │ │ │ -0016f540: 2020 2020 7265 6769 7374 6572 3a20 736f register: so │ │ │ -0016f550: 636b 6574 5f66 696c 655f 6578 6973 7473 cket_file_exists │ │ │ -0016f560: 0a20 2020 2063 6861 6e67 6564 5f77 6865 . changed_whe │ │ │ -0016f570: 6e3a 2066 616c 7365 0a20 2020 2066 6169 n: false. fai │ │ │ -0016f580: 6c65 645f 7768 656e 3a20 736f 636b 6574 led_when: socket │ │ │ -0016f590: 5f66 696c 655f 6578 6973 7473 2e72 6320 _file_exists.rc │ │ │ -0016f5a0: 6e6f 7420 696e 205b 302c 2031 5d0a 2020 not in [0, 1]. │ │ │ -0016f5b0: 2020 6368 6563 6b5f 6d6f 6465 3a20 6661 check_mode: fa │ │ │ -0016f5c0: 6c73 650a 0a20 202d 206e 616d 653a 2056 lse.. - name: V │ │ │ -0016f5d0: 6572 6966 7920 6e66 7461 626c 6573 2053 erify nftables S │ │ │ -0016f5e0: 6572 7669 6365 2069 7320 4469 7361 626c ervice is Disabl │ │ │ -0016f5f0: 6564 202d 2044 6973 6162 6c65 2053 6f63 ed - Disable Soc │ │ │ -0016f600: 6b65 7420 6e66 7461 626c 6573 0a20 2020 ket nftables. │ │ │ -0016f610: 2061 6e73 6962 6c65 2e62 7569 6c74 696e ansible.builtin │ │ │ -0016f620: 2e73 7973 7465 6d64 3a0a 2020 2020 2020 .systemd:. │ │ │ -0016f630: 6e61 6d65 3a20 6e66 7461 626c 6573 2e73 name: nftables.s │ │ │ -0016f640: 6f63 6b65 740a 2020 2020 2020 656e 6162 ocket. enab │ │ │ -0016f650: 6c65 643a 2066 616c 7365 0a20 2020 2020 led: false. │ │ │ -0016f660: 2073 7461 7465 3a20 7374 6f70 7065 640a state: stopped. │ │ │ -0016f670: 2020 2020 2020 6d61 736b 6564 3a20 7472 masked: tr │ │ │ -0016f680: 7565 0a20 2020 2077 6865 6e3a 2073 6f63 ue. when: soc │ │ │ -0016f690: 6b65 745f 6669 6c65 5f65 7869 7374 732e ket_file_exists. │ │ │ -0016f6a0: 7374 646f 7574 5f6c 696e 6573 2069 7320 stdout_lines is │ │ │ -0016f6b0: 7365 6172 6368 2822 6e66 7461 626c 6573 search("nftables │ │ │ -0016f6c0: 2e73 6f63 6b65 7422 2c20 6d75 6c74 696c .socket", multil │ │ │ -0016f6d0: 696e 653d 5472 7565 290a 2020 7461 6773 ine=True). tags │ │ │ -0016f6e0: 3a0a 2020 2d20 5043 492d 4453 5376 342d :. - PCI-DSSv4- │ │ │ -0016f6f0: 312e 320a 2020 2d20 5043 492d 4453 5376 1.2. - PCI-DSSv │ │ │ -0016f700: 342d 312e 322e 310a 2020 2d20 6469 7361 4-1.2.1. - disa │ │ │ -0016f710: 626c 655f 7374 7261 7465 6779 0a20 202d ble_strategy. - │ │ │ -0016f720: 206c 6f77 5f63 6f6d 706c 6578 6974 790a low_complexity. │ │ │ -0016f730: 2020 2d20 6c6f 775f 6469 7372 7570 7469 - low_disrupti │ │ │ -0016f740: 6f6e 0a20 202d 206d 6564 6975 6d5f 7365 on. - medium_se │ │ │ -0016f750: 7665 7269 7479 0a20 202d 206e 6f5f 7265 verity. - no_re │ │ │ -0016f760: 626f 6f74 5f6e 6565 6465 640a 2020 2d20 boot_needed. - │ │ │ -0016f770: 7365 7276 6963 655f 6e66 7461 626c 6573 service_nftables │ │ │ -0016f780: 5f64 6973 6162 6c65 640a 2020 2d20 7370 _disabled. - sp │ │ │ -0016f790: 6563 6961 6c5f 7365 7276 6963 655f 626c ecial_service_bl │ │ │ -0016f7a0: 6f63 6b0a 2020 7768 656e 3a20 2820 2266 ock. when: ( "f │ │ │ -0016f7b0: 6972 6577 616c 6c64 2220 696e 2061 6e73 irewalld" in ans │ │ │ -0016f7c0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61 ible_facts.packa │ │ │ -0016f7d0: 6765 7320 616e 6420 226e 6674 6162 6c65 ges and "nftable │ │ │ -0016f7e0: 7322 2069 6e20 616e 7369 626c 655f 6661 s" in ansible_fa │ │ │ -0016f7f0: 6374 732e 7061 636b 6167 6573 0a20 2020 cts.packages. │ │ │ -0016f800: 2061 6e64 2022 6b65 726e 656c 2220 696e and "kernel" in │ │ │ -0016f810: 2061 6e73 6962 6c65 5f66 6163 7473 2e70 ansible_facts.p │ │ │ -0016f820: 6163 6b61 6765 7320 290a 3c2f 636f 6465 ackages ).
│ │ │ +0016ec40: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ +0016ec70: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ +0016ece0: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ +0016ed00: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ +0016ed30: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
Comple │ │ │ +0016ecc0: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ +0016ecd0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ +0016ed10: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +0016ed20: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
disable

- name: │ │ │ +0016ed70: 2047 6174 6865 7220 7468 6520 7061 636b Gather the pack │ │ │ +0016ed80: 6167 6520 6661 6374 730a 2020 7061 636b age facts. pack │ │ │ +0016ed90: 6167 655f 6661 6374 733a 0a20 2020 206d age_facts:. m │ │ │ +0016eda0: 616e 6167 6572 3a20 6175 746f 0a20 2074 anager: auto. t │ │ │ +0016edb0: 6167 733a 0a20 202d 2050 4349 2d44 5353 ags:. - PCI-DSS │ │ │ +0016edc0: 7634 2d31 2e32 0a20 202d 2050 4349 2d44 v4-1.2. - PCI-D │ │ │ +0016edd0: 5353 7634 2d31 2e32 2e31 0a20 202d 2064 SSv4-1.2.1. - d │ │ │ +0016ede0: 6973 6162 6c65 5f73 7472 6174 6567 790a isable_strategy. │ │ │ +0016edf0: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869 - low_complexi │ │ │ +0016ee00: 7479 0a20 202d 206c 6f77 5f64 6973 7275 ty. - low_disru │ │ │ +0016ee10: 7074 696f 6e0a 2020 2d20 6d65 6469 756d ption. - medium │ │ │ +0016ee20: 5f73 6576 6572 6974 790a 2020 2d20 6e6f _severity. - no │ │ │ +0016ee30: 5f72 6562 6f6f 745f 6e65 6564 6564 0a20 _reboot_needed. │ │ │ +0016ee40: 202d 2073 6572 7669 6365 5f6e 6674 6162 - service_nftab │ │ │ +0016ee50: 6c65 735f 6469 7361 626c 6564 0a0a 2d20 les_disabled..- │ │ │ +0016ee60: 6e61 6d65 3a20 5665 7269 6679 206e 6674 name: Verify nft │ │ │ +0016ee70: 6162 6c65 7320 5365 7276 6963 6520 6973 ables Service is │ │ │ +0016ee80: 2044 6973 6162 6c65 6420 2d20 4469 7361 Disabled - Disa │ │ │ +0016ee90: 626c 6520 7365 7276 6963 6520 6e66 7461 ble service nfta │ │ │ +0016eea0: 626c 6573 0a20 2062 6c6f 636b 3a0a 0a20 bles. block:.. │ │ │ +0016eeb0: 202d 206e 616d 653a 2056 6572 6966 7920 - name: Verify │ │ │ +0016eec0: 6e66 7461 626c 6573 2053 6572 7669 6365 nftables Service │ │ │ +0016eed0: 2069 7320 4469 7361 626c 6564 202d 2043 is Disabled - C │ │ │ +0016eee0: 6f6c 6c65 6374 2073 7973 7465 6d64 2053 ollect systemd S │ │ │ +0016eef0: 6572 7669 6365 7320 5072 6573 656e 7420 ervices Present │ │ │ +0016ef00: 696e 0a20 2020 2020 2074 6865 2053 7973 in. the Sys │ │ │ +0016ef10: 7465 6d0a 2020 2020 616e 7369 626c 652e tem. ansible. │ │ │ +0016ef20: 6275 696c 7469 6e2e 636f 6d6d 616e 643a builtin.command: │ │ │ +0016ef30: 2073 7973 7465 6d63 746c 202d 7120 6c69 systemctl -q li │ │ │ +0016ef40: 7374 2d75 6e69 742d 6669 6c65 7320 2d2d st-unit-files -- │ │ │ +0016ef50: 7479 7065 2073 6572 7669 6365 0a20 2020 type service. │ │ │ +0016ef60: 2072 6567 6973 7465 723a 2073 6572 7669 register: servi │ │ │ +0016ef70: 6365 5f65 7869 7374 730a 2020 2020 6368 ce_exists. ch │ │ │ +0016ef80: 616e 6765 645f 7768 656e 3a20 6661 6c73 anged_when: fals │ │ │ +0016ef90: 650a 2020 2020 6661 696c 6564 5f77 6865 e. failed_whe │ │ │ +0016efa0: 6e3a 2073 6572 7669 6365 5f65 7869 7374 n: service_exist │ │ │ +0016efb0: 732e 7263 206e 6f74 2069 6e20 5b30 2c20 s.rc not in [0, │ │ │ +0016efc0: 315d 0a20 2020 2063 6865 636b 5f6d 6f64 1]. check_mod │ │ │ +0016efd0: 653a 2066 616c 7365 0a0a 2020 2d20 6e61 e: false.. - na │ │ │ +0016efe0: 6d65 3a20 5665 7269 6679 206e 6674 6162 me: Verify nftab │ │ │ +0016eff0: 6c65 7320 5365 7276 6963 6520 6973 2044 les Service is D │ │ │ +0016f000: 6973 6162 6c65 6420 2d20 456e 7375 7265 isabled - Ensure │ │ │ +0016f010: 206e 6674 6162 6c65 732e 7365 7276 6963 nftables.servic │ │ │ +0016f020: 6520 6973 204d 6173 6b65 640a 2020 2020 e is Masked. │ │ │ +0016f030: 616e 7369 626c 652e 6275 696c 7469 6e2e ansible.builtin. │ │ │ +0016f040: 7379 7374 656d 643a 0a20 2020 2020 206e systemd:. n │ │ │ +0016f050: 616d 653a 206e 6674 6162 6c65 732e 7365 ame: nftables.se │ │ │ +0016f060: 7276 6963 650a 2020 2020 2020 7374 6174 rvice. stat │ │ │ +0016f070: 653a 2073 746f 7070 6564 0a20 2020 2020 e: stopped. │ │ │ +0016f080: 2065 6e61 626c 6564 3a20 6661 6c73 650a enabled: false. │ │ │ +0016f090: 2020 2020 2020 6d61 736b 6564 3a20 7472 masked: tr │ │ │ +0016f0a0: 7565 0a20 2020 2077 6865 6e3a 2073 6572 ue. when: ser │ │ │ +0016f0b0: 7669 6365 5f65 7869 7374 732e 7374 646f vice_exists.stdo │ │ │ +0016f0c0: 7574 5f6c 696e 6573 2069 7320 7365 6172 ut_lines is sear │ │ │ +0016f0d0: 6368 2822 6e66 7461 626c 6573 2e73 6572 ch("nftables.ser │ │ │ +0016f0e0: 7669 6365 222c 206d 756c 7469 6c69 6e65 vice", multiline │ │ │ +0016f0f0: 3d54 7275 6529 0a0a 2020 2d20 6e61 6d65 =True).. - name │ │ │ +0016f100: 3a20 556e 6974 2053 6f63 6b65 7420 4578 : Unit Socket Ex │ │ │ +0016f110: 6973 7473 202d 206e 6674 6162 6c65 732e ists - nftables. │ │ │ +0016f120: 736f 636b 6574 0a20 2020 2061 6e73 6962 socket. ansib │ │ │ +0016f130: 6c65 2e62 7569 6c74 696e 2e63 6f6d 6d61 le.builtin.comma │ │ │ +0016f140: 6e64 3a20 7379 7374 656d 6374 6c20 2d71 nd: systemctl -q │ │ │ +0016f150: 206c 6973 742d 756e 6974 2d66 696c 6573 list-unit-files │ │ │ +0016f160: 206e 6674 6162 6c65 732e 736f 636b 6574 nftables.socket │ │ │ +0016f170: 0a20 2020 2072 6567 6973 7465 723a 2073 . register: s │ │ │ +0016f180: 6f63 6b65 745f 6669 6c65 5f65 7869 7374 ocket_file_exist │ │ │ +0016f190: 730a 2020 2020 6368 616e 6765 645f 7768 s. changed_wh │ │ │ +0016f1a0: 656e 3a20 6661 6c73 650a 2020 2020 6661 en: false. fa │ │ │ +0016f1b0: 696c 6564 5f77 6865 6e3a 2073 6f63 6b65 iled_when: socke │ │ │ +0016f1c0: 745f 6669 6c65 5f65 7869 7374 732e 7263 t_file_exists.rc │ │ │ +0016f1d0: 206e 6f74 2069 6e20 5b30 2c20 315d 0a20 not in [0, 1]. │ │ │ +0016f1e0: 2020 2063 6865 636b 5f6d 6f64 653a 2066 check_mode: f │ │ │ +0016f1f0: 616c 7365 0a0a 2020 2d20 6e61 6d65 3a20 alse.. - name: │ │ │ +0016f200: 5665 7269 6679 206e 6674 6162 6c65 7320 Verify nftables │ │ │ +0016f210: 5365 7276 6963 6520 6973 2044 6973 6162 Service is Disab │ │ │ +0016f220: 6c65 6420 2d20 4469 7361 626c 6520 536f led - Disable So │ │ │ +0016f230: 636b 6574 206e 6674 6162 6c65 730a 2020 cket nftables. │ │ │ +0016f240: 2020 616e 7369 626c 652e 6275 696c 7469 ansible.builti │ │ │ +0016f250: 6e2e 7379 7374 656d 643a 0a20 2020 2020 n.systemd:. │ │ │ +0016f260: 206e 616d 653a 206e 6674 6162 6c65 732e name: nftables. │ │ │ +0016f270: 736f 636b 6574 0a20 2020 2020 2065 6e61 socket. ena │ │ │ +0016f280: 626c 6564 3a20 6661 6c73 650a 2020 2020 bled: false. │ │ │ +0016f290: 2020 7374 6174 653a 2073 746f 7070 6564 state: stopped │ │ │ +0016f2a0: 0a20 2020 2020 206d 6173 6b65 643a 2074 . masked: t │ │ │ +0016f2b0: 7275 650a 2020 2020 7768 656e 3a20 736f rue. when: so │ │ │ +0016f2c0: 636b 6574 5f66 696c 655f 6578 6973 7473 cket_file_exists │ │ │ +0016f2d0: 2e73 7464 6f75 745f 6c69 6e65 7320 6973 .stdout_lines is │ │ │ +0016f2e0: 2073 6561 7263 6828 226e 6674 6162 6c65 search("nftable │ │ │ +0016f2f0: 732e 736f 636b 6574 222c 206d 756c 7469 s.socket", multi │ │ │ +0016f300: 6c69 6e65 3d54 7275 6529 0a20 2074 6167 line=True). tag │ │ │ +0016f310: 733a 0a20 202d 2050 4349 2d44 5353 7634 s:. - PCI-DSSv4 │ │ │ +0016f320: 2d31 2e32 0a20 202d 2050 4349 2d44 5353 -1.2. - PCI-DSS │ │ │ +0016f330: 7634 2d31 2e32 2e31 0a20 202d 2064 6973 v4-1.2.1. - dis │ │ │ +0016f340: 6162 6c65 5f73 7472 6174 6567 790a 2020 able_strategy. │ │ │ +0016f350: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479 - low_complexity │ │ │ +0016f360: 0a20 202d 206c 6f77 5f64 6973 7275 7074 . - low_disrupt │ │ │ +0016f370: 696f 6e0a 2020 2d20 6d65 6469 756d 5f73 ion. - medium_s │ │ │ +0016f380: 6576 6572 6974 790a 2020 2d20 6e6f 5f72 everity. - no_r │ │ │ +0016f390: 6562 6f6f 745f 6e65 6564 6564 0a20 202d eboot_needed. - │ │ │ +0016f3a0: 2073 6572 7669 6365 5f6e 6674 6162 6c65 service_nftable │ │ │ +0016f3b0: 735f 6469 7361 626c 6564 0a20 202d 2073 s_disabled. - s │ │ │ +0016f3c0: 7065 6369 616c 5f73 6572 7669 6365 5f62 pecial_service_b │ │ │ +0016f3d0: 6c6f 636b 0a20 2077 6865 6e3a 2028 2022 lock. when: ( " │ │ │ +0016f3e0: 6669 7265 7761 6c6c 6422 2069 6e20 616e firewalld" in an │ │ │ +0016f3f0: 7369 626c 655f 6661 6374 732e 7061 636b sible_facts.pack │ │ │ +0016f400: 6167 6573 2061 6e64 2022 6e66 7461 626c ages and "nftabl │ │ │ +0016f410: 6573 2220 696e 2061 6e73 6962 6c65 5f66 es" in ansible_f │ │ │ +0016f420: 6163 7473 2e70 6163 6b61 6765 730a 2020 acts.packages. │ │ │ +0016f430: 2020 616e 6420 226b 6572 6e65 6c22 2069 and "kernel" i │ │ │ +0016f440: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ +0016f450: 7061 636b 6167 6573 2029 0a3c 2f63 6f64 packages ).

Remed │ │ │ +0016f510: 6961 7469 6f6e 2050 7570 7065 7420 736e iation Puppet sn │ │ │ +0016f520: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ +0016f5d0: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ +0016f5f0: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ +0016f620: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ +0016f5b0: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ +0016f5c0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ +0016f5e0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ +0016f600: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ +0016f610: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:enable

include │ │ │ +0016f660: 2064 6973 6162 6c65 5f6e 6674 6162 6c65 disable_nftable │ │ │ +0016f670: 730a 0a63 6c61 7373 2064 6973 6162 6c65 s..class disable │ │ │ +0016f680: 5f6e 6674 6162 6c65 7320 7b0a 2020 7365 _nftables {. se │ │ │ +0016f690: 7276 6963 6520 7b27 6e66 7461 626c 6573 rvice {'nftables │ │ │ +0016f6a0: 273a 0a20 2020 2065 6e61 626c 6520 3d26 ':. enable =& │ │ │ +0016f6b0: 6774 3b20 6661 6c73 652c 0a20 2020 2065 gt; false,. e │ │ │ +0016f6c0: 6e73 7572 6520 3d26 6774 3b20 2773 746f nsure => 'sto │ │ │ +0016f6d0: 7070 6564 272c 0a20 207d 0a7d 0a3c 2f63 pped',. }.}.

│ │ │ +0016f6f0: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ +0016f790: 6564 6961 7469 6f6e 204f 5342 7569 6c64 ediation OSBuild │ │ │ +0016f7a0: 2042 6c75 6570 7269 6e74 2073 6e69 7070 Blueprint snipp │ │ │ +0016f7b0: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...

.[custo │ │ │ +0016f800: 6d69 7a61 7469 6f6e 732e 7365 7276 6963 mizations.servic │ │ │ +0016f810: 6573 5d0a 6d61 736b 6564 203d 205b 226e es].masked = ["n │ │ │ +0016f820: 6674 6162 6c65 7322 5d0a 3c2f 636f 6465 ftables"].

Remediation A │ │ │ -001b7d50: 6e61 636f 6e64 6120 736e 6970 7065 7420 naconda snippet │ │ │ -001b7d60: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
Complexity: │ │ │ -001b7df0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ -001b7e10: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:high │ │ │ -001b7e30: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ -001b7e40: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ -001b7e60: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:enable
.part /home 
│ │ │ -001b7ea0: 2d2d 6d6f 756e 746f 7074 696f 6e73 3d22  --mountoptions="
│ │ │ -001b7eb0: 6e6f 6465 7622 0a3c 2f63 6f64 653e 3c2f  nodev".
Remediati │ │ │ -001b7f70: 6f6e 2041 6e73 6962 6c65 2073 6e69 7070 on Ansible snipp │ │ │ -001b7f80: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ -001b8000: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ -001b8010: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -001b8020: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:highReboo │ │ │ -001b8060: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -001b8070: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ -001b8090: 3c74 643e 636f 6e66 6967 7572 653c 2f74 configure< │ │ │ -001b80b0: 7072 653e 3c63 6f64 653e 2d20 6e61 6d65 pre>- name │ │ │ -001b80c0: 3a20 4761 7468 6572 2074 6865 2070 6163 : Gather the pac │ │ │ -001b80d0: 6b61 6765 2066 6163 7473 0a20 2070 6163 kage facts. pac │ │ │ -001b80e0: 6b61 6765 5f66 6163 7473 3a0a 2020 2020 kage_facts:. │ │ │ -001b80f0: 6d61 6e61 6765 723a 2061 7574 6f0a 2020 manager: auto. │ │ │ -001b8100: 7461 6773 3a0a 2020 2d20 636f 6e66 6967 tags:. - config │ │ │ -001b8110: 7572 655f 7374 7261 7465 6779 0a20 202d ure_strategy. - │ │ │ -001b8120: 2068 6967 685f 6469 7372 7570 7469 6f6e high_disruption │ │ │ -001b8130: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578 . - low_complex │ │ │ -001b8140: 6974 790a 2020 2d20 6d6f 756e 745f 6f70 ity. - mount_op │ │ │ -001b8150: 7469 6f6e 5f68 6f6d 655f 6e6f 6465 760a tion_home_nodev. │ │ │ -001b8160: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65 - no_reboot_ne │ │ │ -001b8170: 6564 6564 0a20 202d 2075 6e6b 6e6f 776e eded. - unknown │ │ │ -001b8180: 5f73 6576 6572 6974 790a 0a2d 206e 616d _severity..- nam │ │ │ -001b8190: 653a 2027 4164 6420 6e6f 6465 7620 4f70 e: 'Add nodev Op │ │ │ -001b81a0: 7469 6f6e 2074 6f20 2f68 6f6d 653a 2043 tion to /home: C │ │ │ -001b81b0: 6865 636b 2069 6e66 6f72 6d61 7469 6f6e heck information │ │ │ -001b81c0: 2061 7373 6f63 6961 7465 6420 746f 206d associated to m │ │ │ -001b81d0: 6f75 6e74 706f 696e 7427 0a20 2061 6e73 ountpoint'. ans │ │ │ -001b81e0: 6962 6c65 2e62 7569 6c74 696e 2e63 6f6d ible.builtin.com │ │ │ -001b81f0: 6d61 6e64 3a20 6669 6e64 6d6e 7420 2d2d mand: findmnt -- │ │ │ -001b8200: 6673 7461 6220 272f 686f 6d65 270a 2020 fstab '/home'. │ │ │ -001b8210: 7265 6769 7374 6572 3a20 6465 7669 6365 register: device │ │ │ -001b8220: 5f6e 616d 650a 2020 6661 696c 6564 5f77 _name. failed_w │ │ │ -001b8230: 6865 6e3a 2064 6576 6963 655f 6e61 6d65 hen: device_name │ │ │ -001b8240: 2e72 6320 2667 743b 2031 0a20 2063 6861 .rc > 1. cha │ │ │ -001b8250: 6e67 6564 5f77 6865 6e3a 2066 616c 7365 nged_when: false │ │ │ -001b8260: 0a20 2063 6865 636b 5f6d 6f64 653a 2066 . check_mode: f │ │ │ -001b8270: 616c 7365 0a20 2077 6865 6e3a 0a20 202d alse. when:. - │ │ │ -001b8280: 2028 206e 6f74 2028 2022 6b65 726e 656c ( not ( "kernel │ │ │ -001b8290: 2220 696e 2061 6e73 6962 6c65 5f66 6163 " in ansible_fac │ │ │ -001b82a0: 7473 2e70 6163 6b61 6765 7320 616e 6420 ts.packages and │ │ │ -001b82b0: 2262 6f6f 7463 2220 696e 2061 6e73 6962 "bootc" in ansib │ │ │ -001b82c0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765 le_facts.package │ │ │ -001b82d0: 730a 2020 2020 616e 6420 6e6f 7420 226f s. and not "o │ │ │ -001b82e0: 7065 6e73 6869 6674 2d6b 7562 656c 6574 penshift-kubelet │ │ │ -001b82f0: 2220 696e 2061 6e73 6962 6c65 5f66 6163 " in ansible_fac │ │ │ -001b8300: 7473 2e70 6163 6b61 6765 7320 616e 6420 ts.packages and │ │ │ -001b8310: 226f 7374 7265 6522 2069 6e20 616e 7369 "ostree" in ansi │ │ │ -001b8320: 626c 655f 7072 6f63 5f63 6d64 6c69 6e65 ble_proc_cmdline │ │ │ -001b8330: 0a20 2020 2029 2061 6e64 206e 6f74 2028 . ) and not ( │ │ │ -001b8340: 2061 6e73 6962 6c65 5f76 6972 7475 616c ansible_virtual │ │ │ -001b8350: 697a 6174 696f 6e5f 7479 7065 2069 6e20 ization_type in │ │ │ -001b8360: 5b22 646f 636b 6572 222c 2022 6c78 6322 ["docker", "lxc" │ │ │ -001b8370: 2c20 226f 7065 6e76 7a22 2c20 2270 6f64 , "openvz", "pod │ │ │ -001b8380: 6d61 6e22 2c0a 2020 2020 2263 6f6e 7461 man",. "conta │ │ │ -001b8390: 696e 6572 225d 2029 2029 0a20 202d 2027 iner"] ) ). - ' │ │ │ -001b83a0: 222f 686f 6d65 2220 696e 2061 6e73 6962 "/home" in ansib │ │ │ -001b83b0: 6c65 5f6d 6f75 6e74 7320 7c20 6d61 7028 le_mounts | map( │ │ │ -001b83c0: 6174 7472 6962 7574 653d 226d 6f75 6e74 attribute="mount │ │ │ -001b83d0: 2229 207c 206c 6973 7427 0a20 2074 6167 ") | list'. tag │ │ │ -001b83e0: 733a 0a20 202d 2063 6f6e 6669 6775 7265 s:. - configure │ │ │ -001b83f0: 5f73 7472 6174 6567 790a 2020 2d20 6869 _strategy. - hi │ │ │ -001b8400: 6768 5f64 6973 7275 7074 696f 6e0a 2020 gh_disruption. │ │ │ -001b8410: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479 - low_complexity │ │ │ -001b8420: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f . - mount_optio │ │ │ -001b8430: 6e5f 686f 6d65 5f6e 6f64 6576 0a20 202d n_home_nodev. - │ │ │ -001b8440: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465 no_reboot_neede │ │ │ -001b8450: 640a 2020 2d20 756e 6b6e 6f77 6e5f 7365 d. - unknown_se │ │ │ -001b8460: 7665 7269 7479 0a0a 2d20 6e61 6d65 3a20 verity..- name: │ │ │ -001b8470: 2741 6464 206e 6f64 6576 204f 7074 696f 'Add nodev Optio │ │ │ -001b8480: 6e20 746f 202f 686f 6d65 3a20 4372 6561 n to /home: Crea │ │ │ -001b8490: 7465 206d 6f75 6e74 5f69 6e66 6f20 6469 te mount_info di │ │ │ -001b84a0: 6374 696f 6e61 7279 2076 6172 6961 626c ctionary variabl │ │ │ -001b84b0: 6527 0a20 2073 6574 5f66 6163 743a 0a20 e'. set_fact:. │ │ │ -001b84c0: 2020 206d 6f75 6e74 5f69 6e66 6f3a 2027 mount_info: ' │ │ │ -001b84d0: 7b7b 206d 6f75 6e74 5f69 6e66 6f7c 6465 {{ mount_info|de │ │ │ -001b84e0: 6661 756c 7428 7b7d 297c 636f 6d62 696e fault({})|combin │ │ │ -001b84f0: 6528 7b69 7465 6d2e 303a 2069 7465 6d2e e({item.0: item. │ │ │ -001b8500: 317d 2920 7d7d 270a 2020 7769 7468 5f74 1}) }}'. with_t │ │ │ -001b8510: 6f67 6574 6865 723a 0a20 202d 2027 7b7b ogether:. - '{{ │ │ │ -001b8520: 2064 6576 6963 655f 6e61 6d65 2e73 7464 device_name.std │ │ │ -001b8530: 6f75 745f 6c69 6e65 735b 305d 2e73 706c out_lines[0].spl │ │ │ -001b8540: 6974 2829 207c 206d 6170 2827 276c 6f77 it() | map(''low │ │ │ -001b8550: 6572 2727 2920 7c20 6c69 7374 207d 7d27 er'') | list }}' │ │ │ -001b8560: 0a20 202d 2027 7b7b 2064 6576 6963 655f . - '{{ device_ │ │ │ -001b8570: 6e61 6d65 2e73 7464 6f75 745f 6c69 6e65 name.stdout_line │ │ │ -001b8580: 735b 315d 2e73 706c 6974 2829 207c 206c s[1].split() | l │ │ │ -001b8590: 6973 7420 7d7d 270a 2020 7768 656e 3a0a ist }}'. when:. │ │ │ -001b85a0: 2020 2d20 2820 6e6f 7420 2820 226b 6572 - ( not ( "ker │ │ │ -001b85b0: 6e65 6c22 2069 6e20 616e 7369 626c 655f nel" in ansible_ │ │ │ -001b85c0: 6661 6374 732e 7061 636b 6167 6573 2061 facts.packages a │ │ │ -001b85d0: 6e64 2022 626f 6f74 6322 2069 6e20 616e nd "bootc" in an │ │ │ -001b85e0: 7369 626c 655f 6661 6374 732e 7061 636b sible_facts.pack │ │ │ -001b85f0: 6167 6573 0a20 2020 2061 6e64 206e 6f74 ages. and not │ │ │ -001b8600: 2022 6f70 656e 7368 6966 742d 6b75 6265 "openshift-kube │ │ │ -001b8610: 6c65 7422 2069 6e20 616e 7369 626c 655f let" in ansible_ │ │ │ -001b8620: 6661 6374 732e 7061 636b 6167 6573 2061 facts.packages a │ │ │ -001b8630: 6e64 2022 6f73 7472 6565 2220 696e 2061 nd "ostree" in a │ │ │ -001b8640: 6e73 6962 6c65 5f70 726f 635f 636d 646c nsible_proc_cmdl │ │ │ -001b8650: 696e 650a 2020 2020 2920 616e 6420 6e6f ine. ) and no │ │ │ -001b8660: 7420 2820 616e 7369 626c 655f 7669 7274 t ( ansible_virt │ │ │ -001b8670: 7561 6c69 7a61 7469 6f6e 5f74 7970 6520 ualization_type │ │ │ -001b8680: 696e 205b 2264 6f63 6b65 7222 2c20 226c in ["docker", "l │ │ │ -001b8690: 7863 222c 2022 6f70 656e 767a 222c 2022 xc", "openvz", " │ │ │ -001b86a0: 706f 646d 616e 222c 0a20 2020 2022 636f podman",. "co │ │ │ -001b86b0: 6e74 6169 6e65 7222 5d20 2920 290a 2020 ntainer"] ) ). │ │ │ -001b86c0: 2d20 2722 2f68 6f6d 6522 2069 6e20 616e - '"/home" in an │ │ │ -001b86d0: 7369 626c 655f 6d6f 756e 7473 207c 206d sible_mounts | m │ │ │ -001b86e0: 6170 2861 7474 7269 6275 7465 3d22 6d6f ap(attribute="mo │ │ │ -001b86f0: 756e 7422 2920 7c20 6c69 7374 270a 2020 unt") | list'. │ │ │ -001b8700: 2d20 6465 7669 6365 5f6e 616d 652e 7374 - device_name.st │ │ │ -001b8710: 646f 7574 2069 7320 6465 6669 6e65 6420 dout is defined │ │ │ -001b8720: 616e 6420 6465 7669 6365 5f6e 616d 652e and device_name. │ │ │ -001b8730: 7374 646f 7574 5f6c 696e 6573 2069 7320 stdout_lines is │ │ │ -001b8740: 6465 6669 6e65 640a 2020 2d20 2864 6576 defined. - (dev │ │ │ -001b8750: 6963 655f 6e61 6d65 2e73 7464 6f75 7420 ice_name.stdout │ │ │ -001b8760: 7c20 6c65 6e67 7468 2026 6774 3b20 3029 | length > 0) │ │ │ -001b8770: 0a20 2074 6167 733a 0a20 202d 2063 6f6e . tags:. - con │ │ │ -001b8780: 6669 6775 7265 5f73 7472 6174 6567 790a figure_strategy. │ │ │ -001b8790: 2020 2d20 6869 6768 5f64 6973 7275 7074 - high_disrupt │ │ │ -001b87a0: 696f 6e0a 2020 2d20 6c6f 775f 636f 6d70 ion. - low_comp │ │ │ -001b87b0: 6c65 7869 7479 0a20 202d 206d 6f75 6e74 lexity. - mount │ │ │ -001b87c0: 5f6f 7074 696f 6e5f 686f 6d65 5f6e 6f64 _option_home_nod │ │ │ -001b87d0: 6576 0a20 202d 206e 6f5f 7265 626f 6f74 ev. - no_reboot │ │ │ -001b87e0: 5f6e 6565 6465 640a 2020 2d20 756e 6b6e _needed. - unkn │ │ │ -001b87f0: 6f77 6e5f 7365 7665 7269 7479 0a0a 2d20 own_severity..- │ │ │ -001b8800: 6e61 6d65 3a20 2741 6464 206e 6f64 6576 name: 'Add nodev │ │ │ -001b8810: 204f 7074 696f 6e20 746f 202f 686f 6d65 Option to /home │ │ │ -001b8820: 3a20 4966 202f 686f 6d65 206e 6f74 206d : If /home not m │ │ │ -001b8830: 6f75 6e74 6564 2c20 6372 6166 7420 6d6f ounted, craft mo │ │ │ -001b8840: 756e 745f 696e 666f 206d 616e 7561 6c6c unt_info manuall │ │ │ -001b8850: 7927 0a20 2073 6574 5f66 6163 743a 0a20 y'. set_fact:. │ │ │ -001b8860: 2020 206d 6f75 6e74 5f69 6e66 6f3a 2027 mount_info: ' │ │ │ -001b8870: 7b7b 206d 6f75 6e74 5f69 6e66 6f7c 6465 {{ mount_info|de │ │ │ -001b8880: 6661 756c 7428 7b7d 297c 636f 6d62 696e fault({})|combin │ │ │ -001b8890: 6528 7b69 7465 6d2e 303a 2069 7465 6d2e e({item.0: item. │ │ │ -001b88a0: 317d 2920 7d7d 270a 2020 7769 7468 5f74 1}) }}'. with_t │ │ │ -001b88b0: 6f67 6574 6865 723a 0a20 202d 202d 2074 ogether:. - - t │ │ │ -001b88c0: 6172 6765 740a 2020 2020 2d20 736f 7572 arget. - sour │ │ │ -001b88d0: 6365 0a20 2020 202d 2066 7374 7970 650a ce. - fstype. │ │ │ -001b88e0: 2020 2020 2d20 6f70 7469 6f6e 730a 2020 - options. │ │ │ -001b88f0: 2d20 2d20 2f68 6f6d 650a 2020 2020 2d20 - - /home. - │ │ │ -001b8900: 2727 0a20 2020 202d 2027 270a 2020 2020 ''. - ''. │ │ │ -001b8910: 2d20 6465 6661 756c 7473 0a20 2077 6865 - defaults. whe │ │ │ -001b8920: 6e3a 0a20 202d 2028 206e 6f74 2028 2022 n:. - ( not ( " │ │ │ -001b8930: 6b65 726e 656c 2220 696e 2061 6e73 6962 kernel" in ansib │ │ │ -001b8940: 6c65 5f66 6163 7473 2e70 6163 6b61 6765 le_facts.package │ │ │ -001b8950: 7320 616e 6420 2262 6f6f 7463 2220 696e s and "bootc" in │ │ │ -001b8960: 2061 6e73 6962 6c65 5f66 6163 7473 2e70 ansible_facts.p │ │ │ -001b8970: 6163 6b61 6765 730a 2020 2020 616e 6420 ackages. and │ │ │ -001b8980: 6e6f 7420 226f 7065 6e73 6869 6674 2d6b not "openshift-k │ │ │ -001b8990: 7562 656c 6574 2220 696e 2061 6e73 6962 ubelet" in ansib │ │ │ -001b89a0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765 le_facts.package │ │ │ -001b89b0: 7320 616e 6420 226f 7374 7265 6522 2069 s and "ostree" i │ │ │ -001b89c0: 6e20 616e 7369 626c 655f 7072 6f63 5f63 n ansible_proc_c │ │ │ -001b89d0: 6d64 6c69 6e65 0a20 2020 2029 2061 6e64 mdline. ) and │ │ │ -001b89e0: 206e 6f74 2028 2061 6e73 6962 6c65 5f76 not ( ansible_v │ │ │ -001b89f0: 6972 7475 616c 697a 6174 696f 6e5f 7479 irtualization_ty │ │ │ -001b8a00: 7065 2069 6e20 5b22 646f 636b 6572 222c pe in ["docker", │ │ │ -001b8a10: 2022 6c78 6322 2c20 226f 7065 6e76 7a22 "lxc", "openvz" │ │ │ -001b8a20: 2c20 2270 6f64 6d61 6e22 2c0a 2020 2020 , "podman",. │ │ │ -001b8a30: 2263 6f6e 7461 696e 6572 225d 2029 2029 "container"] ) ) │ │ │ -001b8a40: 0a20 202d 2027 222f 686f 6d65 2220 696e . - '"/home" in │ │ │ -001b8a50: 2061 6e73 6962 6c65 5f6d 6f75 6e74 7320 ansible_mounts │ │ │ -001b8a60: 7c20 6d61 7028 6174 7472 6962 7574 653d | map(attribute= │ │ │ -001b8a70: 226d 6f75 6e74 2229 207c 206c 6973 7427 "mount") | list' │ │ │ -001b8a80: 0a20 202d 2028 222d 2d66 7374 6162 2220 . - ("--fstab" │ │ │ -001b8a90: 7c20 6c65 6e67 7468 203d 3d20 3029 0a20 | length == 0). │ │ │ -001b8aa0: 202d 2064 6576 6963 655f 6e61 6d65 2e73 - device_name.s │ │ │ -001b8ab0: 7464 6f75 7420 6973 2064 6566 696e 6564 tdout is defined │ │ │ -001b8ac0: 2061 6e64 2064 6576 6963 655f 6e61 6d65 and device_name │ │ │ -001b8ad0: 2e73 7464 6f75 745f 6c69 6e65 7320 6973 .stdout_lines is │ │ │ -001b8ae0: 2064 6566 696e 6564 0a20 202d 2028 6465 defined. - (de │ │ │ -001b8af0: 7669 6365 5f6e 616d 652e 7374 646f 7574 vice_name.stdout │ │ │ -001b8b00: 207c 206c 656e 6774 6820 3d3d 2030 290a | length == 0). │ │ │ -001b8b10: 2020 7461 6773 3a0a 2020 2d20 636f 6e66 tags:. - conf │ │ │ -001b8b20: 6967 7572 655f 7374 7261 7465 6779 0a20 igure_strategy. │ │ │ -001b8b30: 202d 2068 6967 685f 6469 7372 7570 7469 - high_disrupti │ │ │ -001b8b40: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c on. - low_compl │ │ │ -001b8b50: 6578 6974 790a 2020 2d20 6d6f 756e 745f exity. - mount_ │ │ │ -001b8b60: 6f70 7469 6f6e 5f68 6f6d 655f 6e6f 6465 option_home_node │ │ │ -001b8b70: 760a 2020 2d20 6e6f 5f72 6562 6f6f 745f v. - no_reboot_ │ │ │ -001b8b80: 6e65 6564 6564 0a20 202d 2075 6e6b 6e6f needed. - unkno │ │ │ -001b8b90: 776e 5f73 6576 6572 6974 790a 0a2d 206e wn_severity..- n │ │ │ -001b8ba0: 616d 653a 2027 4164 6420 6e6f 6465 7620 ame: 'Add nodev │ │ │ -001b8bb0: 4f70 7469 6f6e 2074 6f20 2f68 6f6d 653a Option to /home: │ │ │ -001b8bc0: 204d 616b 6520 7375 7265 206e 6f64 6576 Make sure nodev │ │ │ -001b8bd0: 206f 7074 696f 6e20 6973 2070 6172 7420 option is part │ │ │ -001b8be0: 6f66 2074 6865 2074 6f20 2f68 6f6d 650a of the to /home. │ │ │ -001b8bf0: 2020 2020 6f70 7469 6f6e 7327 0a20 2073 options'. s │ │ │ -001b8c00: 6574 5f66 6163 743a 0a20 2020 206d 6f75 et_fact:. mou │ │ │ -001b8c10: 6e74 5f69 6e66 6f3a 2027 7b7b 206d 6f75 nt_info: '{{ mou │ │ │ -001b8c20: 6e74 5f69 6e66 6f20 7c20 636f 6d62 696e nt_info | combin │ │ │ -001b8c30: 6528 207b 2727 6f70 7469 6f6e 7327 273a e( {''options'': │ │ │ -001b8c40: 2727 2727 7e28 6d6f 756e 745f 696e 666f ''''~(mount_info │ │ │ -001b8c50: 2e6f 7074 696f 6e73 207c 0a20 2020 2020 .options |. │ │ │ -001b8c60: 2064 6566 6175 6c74 2827 2727 2729 297e default(''''))~ │ │ │ -001b8c70: 2827 272c 2727 2069 6620 286d 6f75 6e74 ('','' if (mount │ │ │ -001b8c80: 5f69 6e66 6f2e 6f70 7469 6f6e 7320 7c20 _info.options | │ │ │ -001b8c90: 6465 6661 756c 7428 2727 2727 2929 2065 default('''')) e │ │ │ -001b8ca0: 6c73 6520 2727 2727 297e 2727 6e6f 6465 lse '''')~''node │ │ │ -001b8cb0: 7627 270a 2020 2020 2020 7d29 207d 7d27 v''. }) }}' │ │ │ -001b8cc0: 0a20 2077 6865 6e3a 0a20 202d 2028 206e . when:. - ( n │ │ │ -001b8cd0: 6f74 2028 2022 6b65 726e 656c 2220 696e ot ( "kernel" in │ │ │ -001b8ce0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70 ansible_facts.p │ │ │ -001b8cf0: 6163 6b61 6765 7320 616e 6420 2262 6f6f ackages and "boo │ │ │ -001b8d00: 7463 2220 696e 2061 6e73 6962 6c65 5f66 tc" in ansible_f │ │ │ -001b8d10: 6163 7473 2e70 6163 6b61 6765 730a 2020 acts.packages. │ │ │ -001b8d20: 2020 616e 6420 6e6f 7420 226f 7065 6e73 and not "opens │ │ │ -001b8d30: 6869 6674 2d6b 7562 656c 6574 2220 696e hift-kubelet" in │ │ │ -001b8d40: 2061 6e73 6962 6c65 5f66 6163 7473 2e70 ansible_facts.p │ │ │ -001b8d50: 6163 6b61 6765 7320 616e 6420 226f 7374 ackages and "ost │ │ │ -001b8d60: 7265 6522 2069 6e20 616e 7369 626c 655f ree" in ansible_ │ │ │ -001b8d70: 7072 6f63 5f63 6d64 6c69 6e65 0a20 2020 proc_cmdline. │ │ │ -001b8d80: 2029 2061 6e64 206e 6f74 2028 2061 6e73 ) and not ( ans │ │ │ -001b8d90: 6962 6c65 5f76 6972 7475 616c 697a 6174 ible_virtualizat │ │ │ -001b8da0: 696f 6e5f 7479 7065 2069 6e20 5b22 646f ion_type in ["do │ │ │ -001b8db0: 636b 6572 222c 2022 6c78 6322 2c20 226f cker", "lxc", "o │ │ │ -001b8dc0: 7065 6e76 7a22 2c20 2270 6f64 6d61 6e22 penvz", "podman" │ │ │ -001b8dd0: 2c0a 2020 2020 2263 6f6e 7461 696e 6572 ,. "container │ │ │ -001b8de0: 225d 2029 2029 0a20 202d 2027 222f 686f "] ) ). - '"/ho │ │ │ -001b8df0: 6d65 2220 696e 2061 6e73 6962 6c65 5f6d me" in ansible_m │ │ │ -001b8e00: 6f75 6e74 7320 7c20 6d61 7028 6174 7472 ounts | map(attr │ │ │ -001b8e10: 6962 7574 653d 226d 6f75 6e74 2229 207c ibute="mount") | │ │ │ -001b8e20: 206c 6973 7427 0a20 202d 206d 6f75 6e74 list'. - mount │ │ │ -001b8e30: 5f69 6e66 6f20 6973 2064 6566 696e 6564 _info is defined │ │ │ -001b8e40: 2061 6e64 2022 6e6f 6465 7622 206e 6f74 and "nodev" not │ │ │ -001b8e50: 2069 6e20 286d 6f75 6e74 5f69 6e66 6f2e in (mount_info. │ │ │ -001b8e60: 6f70 7469 6f6e 7320 7c20 6465 6661 756c options | defaul │ │ │ -001b8e70: 7428 2727 2929 0a20 2074 6167 733a 0a20 t('')). tags:. │ │ │ -001b8e80: 202d 2063 6f6e 6669 6775 7265 5f73 7472 - configure_str │ │ │ -001b8e90: 6174 6567 790a 2020 2d20 6869 6768 5f64 ategy. - high_d │ │ │ -001b8ea0: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f isruption. - lo │ │ │ -001b8eb0: 775f 636f 6d70 6c65 7869 7479 0a20 202d w_complexity. - │ │ │ -001b8ec0: 206d 6f75 6e74 5f6f 7074 696f 6e5f 686f mount_option_ho │ │ │ -001b8ed0: 6d65 5f6e 6f64 6576 0a20 202d 206e 6f5f me_nodev. - no_ │ │ │ -001b8ee0: 7265 626f 6f74 5f6e 6565 6465 640a 2020 reboot_needed. │ │ │ -001b8ef0: 2d20 756e 6b6e 6f77 6e5f 7365 7665 7269 - unknown_severi │ │ │ -001b8f00: 7479 0a0a 2d20 6e61 6d65 3a20 2741 6464 ty..- name: 'Add │ │ │ -001b8f10: 206e 6f64 6576 204f 7074 696f 6e20 746f nodev Option to │ │ │ -001b8f20: 202f 686f 6d65 3a20 456e 7375 7265 202f /home: Ensure / │ │ │ -001b8f30: 686f 6d65 2069 7320 6d6f 756e 7465 6420 home is mounted │ │ │ -001b8f40: 7769 7468 206e 6f64 6576 206f 7074 696f with nodev optio │ │ │ -001b8f50: 6e27 0a20 2061 6e73 6962 6c65 2e70 6f73 n'. ansible.pos │ │ │ -001b8f60: 6978 2e6d 6f75 6e74 3a0a 2020 2020 7061 ix.mount:. pa │ │ │ -001b8f70: 7468 3a20 2f68 6f6d 650a 2020 2020 7372 th: /home. sr │ │ │ -001b8f80: 633a 2027 7b7b 206d 6f75 6e74 5f69 6e66 c: '{{ mount_inf │ │ │ -001b8f90: 6f2e 736f 7572 6365 207c 2064 6566 6175 o.source | defau │ │ │ -001b8fa0: 6c74 2827 2727 2729 207d 7d27 0a20 2020 lt('''') }}'. │ │ │ -001b8fb0: 206f 7074 733a 2027 7b7b 206d 6f75 6e74 opts: '{{ mount │ │ │ -001b8fc0: 5f69 6e66 6f2e 6f70 7469 6f6e 7320 7c20 _info.options | │ │ │ -001b8fd0: 6465 6661 756c 7428 2727 2727 2920 7d7d default('''') }} │ │ │ -001b8fe0: 270a 2020 2020 7374 6174 653a 206d 6f75 '. state: mou │ │ │ -001b8ff0: 6e74 6564 0a20 2020 2066 7374 7970 653a nted. fstype: │ │ │ -001b9000: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f2e '{{ mount_info. │ │ │ -001b9010: 6673 7479 7065 207c 2064 6566 6175 6c74 fstype | default │ │ │ -001b9020: 2827 2727 2729 207d 7d27 0a20 2072 6567 ('''') }}'. reg │ │ │ -001b9030: 6973 7465 723a 206d 6f75 6e74 5f72 6573 ister: mount_res │ │ │ -001b9040: 756c 740a 2020 6661 696c 6564 5f77 6865 ult. failed_whe │ │ │ -001b9050: 6e3a 0a20 202d 206d 6f75 6e74 5f72 6573 n:. - mount_res │ │ │ -001b9060: 756c 7420 6973 2066 6169 6c65 640a 2020 ult is failed. │ │ │ -001b9070: 2d20 2727 2774 6172 6765 7420 6973 2062 - '''target is b │ │ │ -001b9080: 7573 7927 2720 6e6f 7420 696e 2028 6d6f usy'' not in (mo │ │ │ -001b9090: 756e 745f 7265 7375 6c74 2e6d 7367 207c unt_result.msg | │ │ │ -001b90a0: 2064 6566 6175 6c74 2827 2727 2729 2927 default(''''))' │ │ │ -001b90b0: 0a20 202d 2027 2727 616c 7265 6164 7920 . - '''already │ │ │ -001b90c0: 6d6f 756e 7465 6427 2720 6e6f 7420 696e mounted'' not in │ │ │ -001b90d0: 2028 6d6f 756e 745f 7265 7375 6c74 2e6d (mount_result.m │ │ │ -001b90e0: 7367 207c 2064 6566 6175 6c74 2827 2727 sg | default(''' │ │ │ -001b90f0: 2729 2927 0a20 2077 6865 6e3a 0a20 202d '))'. when:. - │ │ │ -001b9100: 2028 206e 6f74 2028 2022 6b65 726e 656c ( not ( "kernel │ │ │ -001b9110: 2220 696e 2061 6e73 6962 6c65 5f66 6163 " in ansible_fac │ │ │ -001b9120: 7473 2e70 6163 6b61 6765 7320 616e 6420 ts.packages and │ │ │ -001b9130: 2262 6f6f 7463 2220 696e 2061 6e73 6962 "bootc" in ansib │ │ │ -001b9140: 6c65 5f66 6163 7473 2e70 6163 6b61 6765 le_facts.package │ │ │ -001b9150: 730a 2020 2020 616e 6420 6e6f 7420 226f s. and not "o │ │ │ -001b9160: 7065 6e73 6869 6674 2d6b 7562 656c 6574 penshift-kubelet │ │ │ -001b9170: 2220 696e 2061 6e73 6962 6c65 5f66 6163 " in ansible_fac │ │ │ -001b9180: 7473 2e70 6163 6b61 6765 7320 616e 6420 ts.packages and │ │ │ -001b9190: 226f 7374 7265 6522 2069 6e20 616e 7369 "ostree" in ansi │ │ │ -001b91a0: 626c 655f 7072 6f63 5f63 6d64 6c69 6e65 ble_proc_cmdline │ │ │ -001b91b0: 0a20 2020 2029 2061 6e64 206e 6f74 2028 . ) and not ( │ │ │ -001b91c0: 2061 6e73 6962 6c65 5f76 6972 7475 616c ansible_virtual │ │ │ -001b91d0: 697a 6174 696f 6e5f 7479 7065 2069 6e20 ization_type in │ │ │ -001b91e0: 5b22 646f 636b 6572 222c 2022 6c78 6322 ["docker", "lxc" │ │ │ -001b91f0: 2c20 226f 7065 6e76 7a22 2c20 2270 6f64 , "openvz", "pod │ │ │ -001b9200: 6d61 6e22 2c0a 2020 2020 2263 6f6e 7461 man",. "conta │ │ │ -001b9210: 696e 6572 225d 2029 2029 0a20 202d 2027 iner"] ) ). - ' │ │ │ -001b9220: 222f 686f 6d65 2220 696e 2061 6e73 6962 "/home" in ansib │ │ │ -001b9230: 6c65 5f6d 6f75 6e74 7320 7c20 6d61 7028 le_mounts | map( │ │ │ -001b9240: 6174 7472 6962 7574 653d 226d 6f75 6e74 attribute="mount │ │ │ -001b9250: 2229 207c 206c 6973 7427 0a20 202d 206d ") | list'. - m │ │ │ -001b9260: 6f75 6e74 5f69 6e66 6f20 6973 2064 6566 ount_info is def │ │ │ -001b9270: 696e 6564 0a20 202d 2028 6465 7669 6365 ined. - (device │ │ │ -001b9280: 5f6e 616d 652e 7374 646f 7574 2069 7320 _name.stdout is │ │ │ -001b9290: 6465 6669 6e65 6420 616e 6420 2864 6576 defined and (dev │ │ │ -001b92a0: 6963 655f 6e61 6d65 2e73 7464 6f75 7420 ice_name.stdout │ │ │ -001b92b0: 7c20 6c65 6e67 7468 2026 6774 3b20 3029 | length > 0) │ │ │ -001b92c0: 2920 6f72 2028 222d 2d66 7374 6162 220a ) or ("--fstab". │ │ │ -001b92d0: 2020 2020 7c20 6c65 6e67 7468 203d 3d20 | length == │ │ │ -001b92e0: 3029 0a20 2074 6167 733a 0a20 202d 2063 0). tags:. - c │ │ │ -001b92f0: 6f6e 6669 6775 7265 5f73 7472 6174 6567 onfigure_strateg │ │ │ -001b9300: 790a 2020 2d20 6869 6768 5f64 6973 7275 y. - high_disru │ │ │ -001b9310: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f ption. - low_co │ │ │ -001b9320: 6d70 6c65 7869 7479 0a20 202d 206d 6f75 mplexity. - mou │ │ │ -001b9330: 6e74 5f6f 7074 696f 6e5f 686f 6d65 5f6e nt_option_home_n │ │ │ -001b9340: 6f64 6576 0a20 202d 206e 6f5f 7265 626f odev. - no_rebo │ │ │ -001b9350: 6f74 5f6e 6565 6465 640a 2020 2d20 756e ot_needed. - un │ │ │ -001b9360: 6b6e 6f77 6e5f 7365 7665 7269 7479 0a3c known_severity.< │ │ │ -001b9370: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469 /code>R │ │ │ -001b9420: 656d 6564 6961 7469 6f6e 2053 6865 6c6c emediation Shell │ │ │ -001b9430: 2073 6372 6970 7420 e287 b23c 2f61 3e3c script ...< │ │ │ -001b9440: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
#
│ │ │ -001b94f0: 2052 656d 6564 6961 7469 6f6e 2069 7320   Remediation is 
│ │ │ -001b9500: 6170 706c 6963 6162 6c65 206f 6e6c 7920  applicable only 
│ │ │ -001b9510: 696e 2063 6572 7461 696e 2070 6c61 7466  in certain platf
│ │ │ -001b9520: 6f72 6d73 0a69 6620 2820 2120 2820 7b20  orms.if ( ! ( { 
│ │ │ -001b9530: 7270 6d20 2d2d 7175 6965 7420 2d71 206b  rpm --quiet -q k
│ │ │ -001b9540: 6572 6e65 6c20 3b7d 2026 616d 703b 2661  ernel ;} &&a
│ │ │ -001b9550: 6d70 3b20 7b20 7270 6d20 2d2d 7175 6965  mp; { rpm --quie
│ │ │ -001b9560: 7420 2d71 2062 6f6f 7463 203b 7d20 2661  t -q bootc ;} &a
│ │ │ -001b9570: 6d70 3b26 616d 703b 207b 2021 2072 706d  mp;& { ! rpm
│ │ │ -001b9580: 202d 2d71 7569 6574 202d 7120 6f70 656e   --quiet -q open
│ │ │ -001b9590: 7368 6966 742d 6b75 6265 6c65 7420 3b7d  shift-kubelet ;}
│ │ │ -001b95a0: 2026 616d 703b 2661 6d70 3b20 285b 202d   && ([ -
│ │ │ -001b95b0: 6620 2f72 756e 2f6f 7374 7265 652d 626f  f /run/ostree-bo
│ │ │ -001b95c0: 6f74 6564 205d 207c 7c20 5b20 2d4c 202f  oted ] || [ -L /
│ │ │ -001b95d0: 6f73 7472 6565 205d 2920 2920 2661 6d70  ostree ]) ) &
│ │ │ -001b95e0: 3b26 616d 703b 2021 2028 205b 202d 6620  ;& ! ( [ -f 
│ │ │ -001b95f0: 2f2e 646f 636b 6572 656e 7620 5d20 7c7c  /.dockerenv ] ||
│ │ │ -001b9600: 205b 202d 6620 2f72 756e 2f2e 636f 6e74   [ -f /run/.cont
│ │ │ -001b9610: 6169 6e65 7265 6e76 205d 2029 2029 2026  ainerenv ] ) ) &
│ │ │ -001b9620: 616d 703b 2661 6d70 3b20 7b20 2820 6669  amp;& { ( fi
│ │ │ -001b9630: 6e64 6d6e 7420 2d2d 6b65 726e 656c 2022  ndmnt --kernel "
│ │ │ -001b9640: 2f68 6f6d 6522 2026 6774 3b20 2f64 6576  /home" > /dev
│ │ │ -001b9650: 2f6e 756c 6c20 7c7c 2066 696e 646d 6e74  /null || findmnt
│ │ │ -001b9660: 202d 2d66 7374 6162 2022 2f68 6f6d 6522   --fstab "/home"
│ │ │ -001b9670: 2026 6774 3b20 2f64 6576 2f6e 756c 6c20   > /dev/null 
│ │ │ -001b9680: 293b 207d 3b20 7468 656e 0a0a 6675 6e63  ); }; then..func
│ │ │ -001b9690: 7469 6f6e 2070 6572 666f 726d 5f72 656d  tion perform_rem
│ │ │ -001b96a0: 6564 6961 7469 6f6e 207b 0a0a 2020 2020  ediation {..    
│ │ │ -001b96b0: 0a20 2020 2020 2020 2023 2074 6865 206d  .        # the m
│ │ │ -001b96c0: 6f75 6e74 2070 6f69 6e74 202f 686f 6d65  ount point /home
│ │ │ -001b96d0: 2068 6173 2074 6f20 6265 2064 6566 696e   has to be defin
│ │ │ -001b96e0: 6564 2069 6e20 2f65 7463 2f66 7374 6162  ed in /etc/fstab
│ │ │ -001b96f0: 0a20 2020 2020 2020 2023 2062 6566 6f72  .        # befor
│ │ │ -001b9700: 6520 7468 6973 2072 656d 6564 6961 7469  e this remediati
│ │ │ -001b9710: 6f6e 2063 616e 2062 6520 6578 6563 7574  on can be execut
│ │ │ -001b9720: 6564 2e20 496e 2063 6173 6520 6974 2069  ed. In case it i
│ │ │ -001b9730: 7320 6e6f 7420 6465 6669 6e65 642c 2074  s not defined, t
│ │ │ -001b9740: 6865 0a20 2020 2020 2020 2023 2072 656d  he.        # rem
│ │ │ -001b9750: 6564 6961 7469 6f6e 2061 626f 7274 7320  ediation aborts 
│ │ │ -001b9760: 616e 6420 6e6f 2063 6861 6e67 6573 2072  and no changes r
│ │ │ -001b9770: 6567 6172 6469 6e67 2074 6865 206d 6f75  egarding the mou
│ │ │ -001b9780: 6e74 2070 6f69 6e74 2061 7265 2064 6f6e  nt point are don
│ │ │ -001b9790: 652e 0a20 2020 2020 2020 206d 6f75 6e74  e..        mount
│ │ │ -001b97a0: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ -001b97b0: 6578 703d 2224 2870 7269 6e74 6620 225e  exp="$(printf "^
│ │ │ -001b97c0: 5b5b 3a73 7061 6365 3a5d 5d2a 5b5e 235d  [[:space:]]*[^#]
│ │ │ -001b97d0: 2e2a 5b5b 3a73 7061 6365 3a5d 5d25 735b  .*[[:space:]]%s[
│ │ │ -001b97e0: 5b3a 7370 6163 653a 5d5d 2220 222f 686f  [:space:]]" "/ho
│ │ │ -001b97f0: 6d65 2229 220a 0a20 2020 2067 7265 7020  me")"..    grep 
│ │ │ -001b9800: 2224 6d6f 756e 745f 706f 696e 745f 6d61  "$mount_point_ma
│ │ │ -001b9810: 7463 685f 7265 6765 7870 2220 2d71 202f  tch_regexp" -q /
│ │ │ -001b9820: 6574 632f 6673 7461 6220 5c0a 2020 2020  etc/fstab \.    
│ │ │ -001b9830: 2020 2020 7c7c 207b 2065 6368 6f20 2254      || { echo "T
│ │ │ -001b9840: 6865 206d 6f75 6e74 2070 6f69 6e74 2027  he mount point '
│ │ │ -001b9850: 2f68 6f6d 6527 2069 7320 6e6f 7420 6576  /home' is not ev
│ │ │ -001b9860: 656e 2069 6e20 2f65 7463 2f66 7374 6162  en in /etc/fstab
│ │ │ -001b9870: 2c20 736f 2077 6520 6361 6e27 7420 7365  , so we can't se
│ │ │ -001b9880: 7420 7570 206d 6f75 6e74 206f 7074 696f  t up mount optio
│ │ │ -001b9890: 6e73 2220 2667 743b 2661 6d70 3b32 3b0a  ns" >&2;.
│ │ │ -001b98a0: 2020 2020 2020 2020 2020 2020 2020 2020                  
│ │ │ -001b98b0: 6563 686f 2022 4e6f 7420 7265 6d65 6469  echo "Not remedi
│ │ │ -001b98c0: 6174 696e 672c 2062 6563 6175 7365 2074  ating, because t
│ │ │ -001b98d0: 6865 7265 2069 7320 6e6f 2072 6563 6f72  here is no recor
│ │ │ -001b98e0: 6420 6f66 202f 686f 6d65 2069 6e20 2f65  d of /home in /e
│ │ │ -001b98f0: 7463 2f66 7374 6162 2220 2667 743b 2661  tc/fstab" >&a
│ │ │ -001b9900: 6d70 3b32 3b20 7265 7475 726e 2031 3b20  mp;2; return 1; 
│ │ │ -001b9910: 7d0a 2020 2020 0a0a 0a20 2020 206d 6f75  }.    ...    mou
│ │ │ -001b9920: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ -001b9930: 6567 6578 703d 2224 2870 7269 6e74 6620  egexp="$(printf 
│ │ │ -001b9940: 225e 5b5b 3a73 7061 6365 3a5d 5d2a 5b5e  "^[[:space:]]*[^
│ │ │ -001b9950: 235d 2e2a 5b5b 3a73 7061 6365 3a5d 5d25  #].*[[:space:]]%
│ │ │ -001b9960: 735b 5b3a 7370 6163 653a 5d5d 2220 2f68  s[[:space:]]" /h
│ │ │ -001b9970: 6f6d 6529 220a 0a20 2020 2023 2049 6620  ome)"..    # If 
│ │ │ -001b9980: 7468 6520 6d6f 756e 7420 706f 696e 7420  the mount point 
│ │ │ -001b9990: 6973 206e 6f74 2069 6e20 2f65 7463 2f66  is not in /etc/f
│ │ │ -001b99a0: 7374 6162 2c20 6765 7420 7072 6576 696f  stab, get previo
│ │ │ -001b99b0: 7573 206d 6f75 6e74 206f 7074 696f 6e73  us mount options
│ │ │ -001b99c0: 2066 726f 6d20 2f65 7463 2f6d 7461 620a   from /etc/mtab.
│ │ │ -001b99d0: 2020 2020 6966 2021 2067 7265 7020 2d71      if ! grep -q
│ │ │ -001b99e0: 2022 246d 6f75 6e74 5f70 6f69 6e74 5f6d   "$mount_point_m
│ │ │ -001b99f0: 6174 6368 5f72 6567 6578 7022 202f 6574  atch_regexp" /et
│ │ │ -001b9a00: 632f 6673 7461 623b 2074 6865 6e0a 2020  c/fstab; then.  
│ │ │ -001b9a10: 2020 2020 2020 2320 7275 6e74 696d 6520        # runtime 
│ │ │ -001b9a20: 6f70 7473 2077 6974 686f 7574 2073 6f6d  opts without som
│ │ │ -001b9a30: 6520 6175 746f 6d61 7469 6320 6b65 726e  e automatic kern
│ │ │ -001b9a40: 656c 2f75 7365 7273 7061 6365 2d61 6464  el/userspace-add
│ │ │ -001b9a50: 6564 2064 6566 6175 6c74 730a 2020 2020  ed defaults.    
│ │ │ -001b9a60: 2020 2020 7072 6576 696f 7573 5f6d 6f75      previous_mou
│ │ │ -001b9a70: 6e74 5f6f 7074 733d 2428 6772 6570 2022  nt_opts=$(grep "
│ │ │ -001b9a80: 246d 6f75 6e74 5f70 6f69 6e74 5f6d 6174  $mount_point_mat
│ │ │ -001b9a90: 6368 5f72 6567 6578 7022 202f 6574 632f  ch_regexp" /etc/
│ │ │ -001b9aa0: 6d74 6162 207c 2068 6561 6420 2d31 207c  mtab | head -1 |
│ │ │ -001b9ab0: 2020 6177 6b20 277b 7072 696e 7420 2434    awk '{print $4
│ │ │ -001b9ac0: 7d27 205c 0a20 2020 2020 2020 2020 2020  }' \.           
│ │ │ -001b9ad0: 2020 2020 2020 2020 207c 2073 6564 202d           | sed -
│ │ │ -001b9ae0: 4520 2273 2f28 7277 7c64 6566 6175 6c74  E "s/(rw|default
│ │ │ -001b9af0: 737c 7365 636c 6162 656c 7c6e 6f64 6576  s|seclabel|nodev
│ │ │ -001b9b00: 2928 2c7c 2429 2f2f 673b 732f 2c24 2f2f  )(,|$)//g;s/,$//
│ │ │ -001b9b10: 2229 0a20 2020 2020 2020 205b 2022 2470  ").        [ "$p
│ │ │ -001b9b20: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ -001b9b30: 7473 2220 5d20 2661 6d70 3b26 616d 703b  ts" ] &&
│ │ │ -001b9b40: 2070 7265 7669 6f75 735f 6d6f 756e 745f   previous_mount_
│ │ │ -001b9b50: 6f70 7473 2b3d 222c 220a 2020 2020 2020  opts+=",".      
│ │ │ -001b9b60: 2020 2320 496e 2069 736f 3936 3630 2066    # In iso9660 f
│ │ │ -001b9b70: 696c 6573 7973 7465 6d73 206d 7461 6220  ilesystems mtab 
│ │ │ -001b9b80: 636f 756c 6420 6465 7363 7269 6265 2061  could describe a
│ │ │ -001b9b90: 2022 626c 6f63 6b73 697a 6522 2076 616c   "blocksize" val
│ │ │ -001b9ba0: 7565 2c20 7468 6973 2073 686f 756c 6420  ue, this should 
│ │ │ -001b9bb0: 6265 2072 6566 6c65 6374 6564 2069 6e0a  be reflected in.
│ │ │ -001b9bc0: 2020 2020 2020 2020 2320 6673 7461 6220          # fstab 
│ │ │ -001b9bd0: 6173 2022 626c 6f63 6b22 2e20 2054 6865  as "block".  The
│ │ │ -001b9be0: 206e 6578 7420 7661 7269 6162 6c65 2069   next variable i
│ │ │ -001b9bf0: 7320 746f 2073 6174 6973 6679 2073 6865  s to satisfy she
│ │ │ -001b9c00: 6c6c 6368 6563 6b20 5343 3230 3530 2e0a  llcheck SC2050..
│ │ │ -001b9c10: 2020 2020 2020 2020 6673 5f74 7970 653d          fs_type=
│ │ │ -001b9c20: 2222 0a20 2020 2020 2020 2069 6620 5b20  "".        if [ 
│ │ │ -001b9c30: 2022 2466 735f 7479 7065 2220 3d3d 2022   "$fs_type" == "
│ │ │ -001b9c40: 6973 6f39 3636 3022 205d 203b 2074 6865  iso9660" ] ; the
│ │ │ -001b9c50: 6e0a 2020 2020 2020 2020 2020 2020 7072  n.            pr
│ │ │ -001b9c60: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ -001b9c70: 733d 2428 7365 6420 2773 2f62 6c6f 636b  s=$(sed 's/block
│ │ │ -001b9c80: 7369 7a65 3d2f 626c 6f63 6b3d 2f27 2026  size=/block=/' &
│ │ │ -001b9c90: 6c74 3b26 6c74 3b26 6c74 3b20 2224 7072  lt;<< "$pr
│ │ │ -001b9ca0: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ -001b9cb0: 7322 290a 2020 2020 2020 2020 6669 0a20  s").        fi. 
│ │ │ -001b9cc0: 2020 2020 2020 2065 6368 6f20 2220 2f68         echo " /h
│ │ │ -001b9cd0: 6f6d 6520 2064 6566 6175 6c74 732c 247b  ome  defaults,${
│ │ │ -001b9ce0: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ -001b9cf0: 7074 737d 6e6f 6465 7620 3020 3022 2026  pts}nodev 0 0" &
│ │ │ -001b9d00: 6774 3b26 6774 3b20 2f65 7463 2f66 7374  gt;> /etc/fst
│ │ │ -001b9d10: 6162 0a20 2020 2023 2049 6620 7468 6520  ab.    # If the 
│ │ │ -001b9d20: 6d6f 756e 745f 6f70 7420 6f70 7469 6f6e  mount_opt option
│ │ │ -001b9d30: 2069 7320 6e6f 7420 616c 7265 6164 7920   is not already 
│ │ │ -001b9d40: 696e 2074 6865 206d 6f75 6e74 2070 6f69  in the mount poi
│ │ │ -001b9d50: 6e74 2773 202f 6574 632f 6673 7461 6220  nt's /etc/fstab 
│ │ │ -001b9d60: 656e 7472 792c 2061 6464 2069 740a 2020  entry, add it.  
│ │ │ -001b9d70: 2020 656c 6966 2021 2067 7265 7020 2224    elif ! grep "$
│ │ │ -001b9d80: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ -001b9d90: 685f 7265 6765 7870 2220 2f65 7463 2f66  h_regexp" /etc/f
│ │ │ -001b9da0: 7374 6162 207c 2067 7265 7020 2d71 2022  stab | grep -q "
│ │ │ -001b9db0: 6e6f 6465 7622 3b20 7468 656e 0a20 2020  nodev"; then.   
│ │ │ -001b9dc0: 2020 2020 2070 7265 7669 6f75 735f 6d6f       previous_mo
│ │ │ -001b9dd0: 756e 745f 6f70 7473 3d24 2867 7265 7020  unt_opts=$(grep 
│ │ │ -001b9de0: 2224 6d6f 756e 745f 706f 696e 745f 6d61  "$mount_point_ma
│ │ │ -001b9df0: 7463 685f 7265 6765 7870 2220 2f65 7463  tch_regexp" /etc
│ │ │ -001b9e00: 2f66 7374 6162 207c 2061 776b 2027 7b70  /fstab | awk '{p
│ │ │ -001b9e10: 7269 6e74 2024 347d 2729 0a20 2020 2020  rint $4}').     
│ │ │ -001b9e20: 2020 2073 6564 202d 6920 2273 7c5c 2824     sed -i "s|\($
│ │ │ -001b9e30: 7b6d 6f75 6e74 5f70 6f69 6e74 5f6d 6174  {mount_point_mat
│ │ │ -001b9e40: 6368 5f72 6567 6578 707d 2e2a 247b 7072  ch_regexp}.*${pr
│ │ │ -001b9e50: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ -001b9e60: 737d 5c29 7c5c 312c 6e6f 6465 767c 2220  s}\)|\1,nodev|" 
│ │ │ -001b9e70: 2f65 7463 2f66 7374 6162 0a20 2020 2066  /etc/fstab.    f
│ │ │ -001b9e80: 690a 0a0a 2020 2020 6966 206d 6b64 6972  i...    if mkdir
│ │ │ -001b9e90: 202d 7020 222f 686f 6d65 223b 2074 6865   -p "/home"; the
│ │ │ -001b9ea0: 6e0a 2020 2020 2020 2020 6966 206d 6f75  n.        if mou
│ │ │ -001b9eb0: 6e74 706f 696e 7420 2d71 2022 2f68 6f6d  ntpoint -q "/hom
│ │ │ -001b9ec0: 6522 3b20 7468 656e 0a20 2020 2020 2020  e"; then.       
│ │ │ -001b9ed0: 2020 2020 206d 6f75 6e74 202d 6f20 7265       mount -o re
│ │ │ -001b9ee0: 6d6f 756e 7420 2d2d 7461 7267 6574 2022  mount --target "
│ │ │ -001b9ef0: 2f68 6f6d 6522 0a20 2020 2020 2020 2066  /home".        f
│ │ │ -001b9f00: 690a 2020 2020 6669 0a7d 0a0a 7065 7266  i.    fi.}..perf
│ │ │ -001b9f10: 6f72 6d5f 7265 6d65 6469 6174 696f 6e0a  orm_remediation.
│ │ │ -001b9f20: 0a65 6c73 650a 2020 2020 2667 743b 2661  .else.    >&a
│ │ │ -001b9f30: 6d70 3b32 2065 6368 6f20 2752 656d 6564  mp;2 echo 'Remed
│ │ │ -001b9f40: 6961 7469 6f6e 2069 7320 6e6f 7420 6170  iation is not ap
│ │ │ -001b9f50: 706c 6963 6162 6c65 2c20 6e6f 7468 696e  plicable, nothin
│ │ │ -001b9f60: 6720 7761 7320 646f 6e65 270a 6669 0a3c  g was done'.fi.<
│ │ │ +001b7d50: 6e73 6962 6c65 2073 6e69 7070 6574 20e2  nsible snippet .
│ │ │ +001b7d60: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063  ..
Reb │ │ │ -001b94c0: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -001b94d0: 7365 3c2f 7464 3e3c 2f74 723e 3c2f 7461 se
│ │ │ +001b7de0: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +001b7e00: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 < │ │ │ +001b7e30: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>
Complexity:< │ │ │ +001b7df0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +001b7e10: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:high
Reboot:false
St │ │ │ +001b7e60: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ +001b7e70: 636f 6e66 6967 7572 653c 2f74 643e 3c2f configure
│ │ │ +001b7e90: 3c63 6f64 653e 2d20 6e61 6d65 3a20 4761  - name: Ga
│ │ │ +001b7ea0: 7468 6572 2074 6865 2070 6163 6b61 6765  ther the package
│ │ │ +001b7eb0: 2066 6163 7473 0a20 2070 6163 6b61 6765   facts.  package
│ │ │ +001b7ec0: 5f66 6163 7473 3a0a 2020 2020 6d61 6e61  _facts:.    mana
│ │ │ +001b7ed0: 6765 723a 2061 7574 6f0a 2020 7461 6773  ger: auto.  tags
│ │ │ +001b7ee0: 3a0a 2020 2d20 636f 6e66 6967 7572 655f  :.  - configure_
│ │ │ +001b7ef0: 7374 7261 7465 6779 0a20 202d 2068 6967  strategy.  - hig
│ │ │ +001b7f00: 685f 6469 7372 7570 7469 6f6e 0a20 202d  h_disruption.  -
│ │ │ +001b7f10: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ +001b7f20: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e    - mount_option
│ │ │ +001b7f30: 5f68 6f6d 655f 6e6f 6465 760a 2020 2d20  _home_nodev.  - 
│ │ │ +001b7f40: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ +001b7f50: 0a20 202d 2075 6e6b 6e6f 776e 5f73 6576  .  - unknown_sev
│ │ │ +001b7f60: 6572 6974 790a 0a2d 206e 616d 653a 2027  erity..- name: '
│ │ │ +001b7f70: 4164 6420 6e6f 6465 7620 4f70 7469 6f6e  Add nodev Option
│ │ │ +001b7f80: 2074 6f20 2f68 6f6d 653a 2043 6865 636b   to /home: Check
│ │ │ +001b7f90: 2069 6e66 6f72 6d61 7469 6f6e 2061 7373   information ass
│ │ │ +001b7fa0: 6f63 6961 7465 6420 746f 206d 6f75 6e74  ociated to mount
│ │ │ +001b7fb0: 706f 696e 7427 0a20 2061 6e73 6962 6c65  point'.  ansible
│ │ │ +001b7fc0: 2e62 7569 6c74 696e 2e63 6f6d 6d61 6e64  .builtin.command
│ │ │ +001b7fd0: 3a20 6669 6e64 6d6e 7420 2d2d 6673 7461  : findmnt --fsta
│ │ │ +001b7fe0: 6220 272f 686f 6d65 270a 2020 7265 6769  b '/home'.  regi
│ │ │ +001b7ff0: 7374 6572 3a20 6465 7669 6365 5f6e 616d  ster: device_nam
│ │ │ +001b8000: 650a 2020 6661 696c 6564 5f77 6865 6e3a  e.  failed_when:
│ │ │ +001b8010: 2064 6576 6963 655f 6e61 6d65 2e72 6320   device_name.rc 
│ │ │ +001b8020: 2667 743b 2031 0a20 2063 6861 6e67 6564  > 1.  changed
│ │ │ +001b8030: 5f77 6865 6e3a 2066 616c 7365 0a20 2063  _when: false.  c
│ │ │ +001b8040: 6865 636b 5f6d 6f64 653a 2066 616c 7365  heck_mode: false
│ │ │ +001b8050: 0a20 2077 6865 6e3a 0a20 202d 2028 206e  .  when:.  - ( n
│ │ │ +001b8060: 6f74 2028 2022 6b65 726e 656c 2220 696e  ot ( "kernel" in
│ │ │ +001b8070: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001b8080: 6163 6b61 6765 7320 616e 6420 2262 6f6f  ackages and "boo
│ │ │ +001b8090: 7463 2220 696e 2061 6e73 6962 6c65 5f66  tc" in ansible_f
│ │ │ +001b80a0: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ +001b80b0: 2020 616e 6420 6e6f 7420 226f 7065 6e73    and not "opens
│ │ │ +001b80c0: 6869 6674 2d6b 7562 656c 6574 2220 696e  hift-kubelet" in
│ │ │ +001b80d0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001b80e0: 6163 6b61 6765 7320 616e 6420 226f 7374  ackages and "ost
│ │ │ +001b80f0: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ +001b8100: 7072 6f63 5f63 6d64 6c69 6e65 0a20 2020  proc_cmdline.   
│ │ │ +001b8110: 2029 2061 6e64 206e 6f74 2028 2061 6e73   ) and not ( ans
│ │ │ +001b8120: 6962 6c65 5f76 6972 7475 616c 697a 6174  ible_virtualizat
│ │ │ +001b8130: 696f 6e5f 7479 7065 2069 6e20 5b22 646f  ion_type in ["do
│ │ │ +001b8140: 636b 6572 222c 2022 6c78 6322 2c20 226f  cker", "lxc", "o
│ │ │ +001b8150: 7065 6e76 7a22 2c20 2270 6f64 6d61 6e22  penvz", "podman"
│ │ │ +001b8160: 2c0a 2020 2020 2263 6f6e 7461 696e 6572  ,.    "container
│ │ │ +001b8170: 225d 2029 2029 0a20 202d 2027 222f 686f  "] ) ).  - '"/ho
│ │ │ +001b8180: 6d65 2220 696e 2061 6e73 6962 6c65 5f6d  me" in ansible_m
│ │ │ +001b8190: 6f75 6e74 7320 7c20 6d61 7028 6174 7472  ounts | map(attr
│ │ │ +001b81a0: 6962 7574 653d 226d 6f75 6e74 2229 207c  ibute="mount") |
│ │ │ +001b81b0: 206c 6973 7427 0a20 2074 6167 733a 0a20   list'.  tags:. 
│ │ │ +001b81c0: 202d 2063 6f6e 6669 6775 7265 5f73 7472   - configure_str
│ │ │ +001b81d0: 6174 6567 790a 2020 2d20 6869 6768 5f64  ategy.  - high_d
│ │ │ +001b81e0: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ +001b81f0: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ +001b8200: 206d 6f75 6e74 5f6f 7074 696f 6e5f 686f   mount_option_ho
│ │ │ +001b8210: 6d65 5f6e 6f64 6576 0a20 202d 206e 6f5f  me_nodev.  - no_
│ │ │ +001b8220: 7265 626f 6f74 5f6e 6565 6465 640a 2020  reboot_needed.  
│ │ │ +001b8230: 2d20 756e 6b6e 6f77 6e5f 7365 7665 7269  - unknown_severi
│ │ │ +001b8240: 7479 0a0a 2d20 6e61 6d65 3a20 2741 6464  ty..- name: 'Add
│ │ │ +001b8250: 206e 6f64 6576 204f 7074 696f 6e20 746f   nodev Option to
│ │ │ +001b8260: 202f 686f 6d65 3a20 4372 6561 7465 206d   /home: Create m
│ │ │ +001b8270: 6f75 6e74 5f69 6e66 6f20 6469 6374 696f  ount_info dictio
│ │ │ +001b8280: 6e61 7279 2076 6172 6961 626c 6527 0a20  nary variable'. 
│ │ │ +001b8290: 2073 6574 5f66 6163 743a 0a20 2020 206d   set_fact:.    m
│ │ │ +001b82a0: 6f75 6e74 5f69 6e66 6f3a 2027 7b7b 206d  ount_info: '{{ m
│ │ │ +001b82b0: 6f75 6e74 5f69 6e66 6f7c 6465 6661 756c  ount_info|defaul
│ │ │ +001b82c0: 7428 7b7d 297c 636f 6d62 696e 6528 7b69  t({})|combine({i
│ │ │ +001b82d0: 7465 6d2e 303a 2069 7465 6d2e 317d 2920  tem.0: item.1}) 
│ │ │ +001b82e0: 7d7d 270a 2020 7769 7468 5f74 6f67 6574  }}'.  with_toget
│ │ │ +001b82f0: 6865 723a 0a20 202d 2027 7b7b 2064 6576  her:.  - '{{ dev
│ │ │ +001b8300: 6963 655f 6e61 6d65 2e73 7464 6f75 745f  ice_name.stdout_
│ │ │ +001b8310: 6c69 6e65 735b 305d 2e73 706c 6974 2829  lines[0].split()
│ │ │ +001b8320: 207c 206d 6170 2827 276c 6f77 6572 2727   | map(''lower''
│ │ │ +001b8330: 2920 7c20 6c69 7374 207d 7d27 0a20 202d  ) | list }}'.  -
│ │ │ +001b8340: 2027 7b7b 2064 6576 6963 655f 6e61 6d65   '{{ device_name
│ │ │ +001b8350: 2e73 7464 6f75 745f 6c69 6e65 735b 315d  .stdout_lines[1]
│ │ │ +001b8360: 2e73 706c 6974 2829 207c 206c 6973 7420  .split() | list 
│ │ │ +001b8370: 7d7d 270a 2020 7768 656e 3a0a 2020 2d20  }}'.  when:.  - 
│ │ │ +001b8380: 2820 6e6f 7420 2820 226b 6572 6e65 6c22  ( not ( "kernel"
│ │ │ +001b8390: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001b83a0: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ +001b83b0: 626f 6f74 6322 2069 6e20 616e 7369 626c  bootc" in ansibl
│ │ │ +001b83c0: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +001b83d0: 0a20 2020 2061 6e64 206e 6f74 2022 6f70  .    and not "op
│ │ │ +001b83e0: 656e 7368 6966 742d 6b75 6265 6c65 7422  enshift-kubelet"
│ │ │ +001b83f0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001b8400: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ +001b8410: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ +001b8420: 6c65 5f70 726f 635f 636d 646c 696e 650a  le_proc_cmdline.
│ │ │ +001b8430: 2020 2020 2920 616e 6420 6e6f 7420 2820      ) and not ( 
│ │ │ +001b8440: 616e 7369 626c 655f 7669 7274 7561 6c69  ansible_virtuali
│ │ │ +001b8450: 7a61 7469 6f6e 5f74 7970 6520 696e 205b  zation_type in [
│ │ │ +001b8460: 2264 6f63 6b65 7222 2c20 226c 7863 222c  "docker", "lxc",
│ │ │ +001b8470: 2022 6f70 656e 767a 222c 2022 706f 646d   "openvz", "podm
│ │ │ +001b8480: 616e 222c 0a20 2020 2022 636f 6e74 6169  an",.    "contai
│ │ │ +001b8490: 6e65 7222 5d20 2920 290a 2020 2d20 2722  ner"] ) ).  - '"
│ │ │ +001b84a0: 2f68 6f6d 6522 2069 6e20 616e 7369 626c  /home" in ansibl
│ │ │ +001b84b0: 655f 6d6f 756e 7473 207c 206d 6170 2861  e_mounts | map(a
│ │ │ +001b84c0: 7474 7269 6275 7465 3d22 6d6f 756e 7422  ttribute="mount"
│ │ │ +001b84d0: 2920 7c20 6c69 7374 270a 2020 2d20 6465  ) | list'.  - de
│ │ │ +001b84e0: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ +001b84f0: 2069 7320 6465 6669 6e65 6420 616e 6420   is defined and 
│ │ │ +001b8500: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ +001b8510: 7574 5f6c 696e 6573 2069 7320 6465 6669  ut_lines is defi
│ │ │ +001b8520: 6e65 640a 2020 2d20 2864 6576 6963 655f  ned.  - (device_
│ │ │ +001b8530: 6e61 6d65 2e73 7464 6f75 7420 7c20 6c65  name.stdout | le
│ │ │ +001b8540: 6e67 7468 2026 6774 3b20 3029 0a20 2074  ngth > 0).  t
│ │ │ +001b8550: 6167 733a 0a20 202d 2063 6f6e 6669 6775  ags:.  - configu
│ │ │ +001b8560: 7265 5f73 7472 6174 6567 790a 2020 2d20  re_strategy.  - 
│ │ │ +001b8570: 6869 6768 5f64 6973 7275 7074 696f 6e0a  high_disruption.
│ │ │ +001b8580: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ +001b8590: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074  ty.  - mount_opt
│ │ │ +001b85a0: 696f 6e5f 686f 6d65 5f6e 6f64 6576 0a20  ion_home_nodev. 
│ │ │ +001b85b0: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ +001b85c0: 6465 640a 2020 2d20 756e 6b6e 6f77 6e5f  ded.  - unknown_
│ │ │ +001b85d0: 7365 7665 7269 7479 0a0a 2d20 6e61 6d65  severity..- name
│ │ │ +001b85e0: 3a20 2741 6464 206e 6f64 6576 204f 7074  : 'Add nodev Opt
│ │ │ +001b85f0: 696f 6e20 746f 202f 686f 6d65 3a20 4966  ion to /home: If
│ │ │ +001b8600: 202f 686f 6d65 206e 6f74 206d 6f75 6e74   /home not mount
│ │ │ +001b8610: 6564 2c20 6372 6166 7420 6d6f 756e 745f  ed, craft mount_
│ │ │ +001b8620: 696e 666f 206d 616e 7561 6c6c 7927 0a20  info manually'. 
│ │ │ +001b8630: 2073 6574 5f66 6163 743a 0a20 2020 206d   set_fact:.    m
│ │ │ +001b8640: 6f75 6e74 5f69 6e66 6f3a 2027 7b7b 206d  ount_info: '{{ m
│ │ │ +001b8650: 6f75 6e74 5f69 6e66 6f7c 6465 6661 756c  ount_info|defaul
│ │ │ +001b8660: 7428 7b7d 297c 636f 6d62 696e 6528 7b69  t({})|combine({i
│ │ │ +001b8670: 7465 6d2e 303a 2069 7465 6d2e 317d 2920  tem.0: item.1}) 
│ │ │ +001b8680: 7d7d 270a 2020 7769 7468 5f74 6f67 6574  }}'.  with_toget
│ │ │ +001b8690: 6865 723a 0a20 202d 202d 2074 6172 6765  her:.  - - targe
│ │ │ +001b86a0: 740a 2020 2020 2d20 736f 7572 6365 0a20  t.    - source. 
│ │ │ +001b86b0: 2020 202d 2066 7374 7970 650a 2020 2020     - fstype.    
│ │ │ +001b86c0: 2d20 6f70 7469 6f6e 730a 2020 2d20 2d20  - options.  - - 
│ │ │ +001b86d0: 2f68 6f6d 650a 2020 2020 2d20 2727 0a20  /home.    - ''. 
│ │ │ +001b86e0: 2020 202d 2027 270a 2020 2020 2d20 6465     - ''.    - de
│ │ │ +001b86f0: 6661 756c 7473 0a20 2077 6865 6e3a 0a20  faults.  when:. 
│ │ │ +001b8700: 202d 2028 206e 6f74 2028 2022 6b65 726e   - ( not ( "kern
│ │ │ +001b8710: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ +001b8720: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +001b8730: 6420 2262 6f6f 7463 2220 696e 2061 6e73  d "bootc" in ans
│ │ │ +001b8740: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001b8750: 6765 730a 2020 2020 616e 6420 6e6f 7420  ges.    and not 
│ │ │ +001b8760: 226f 7065 6e73 6869 6674 2d6b 7562 656c  "openshift-kubel
│ │ │ +001b8770: 6574 2220 696e 2061 6e73 6962 6c65 5f66  et" in ansible_f
│ │ │ +001b8780: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +001b8790: 6420 226f 7374 7265 6522 2069 6e20 616e  d "ostree" in an
│ │ │ +001b87a0: 7369 626c 655f 7072 6f63 5f63 6d64 6c69  sible_proc_cmdli
│ │ │ +001b87b0: 6e65 0a20 2020 2029 2061 6e64 206e 6f74  ne.    ) and not
│ │ │ +001b87c0: 2028 2061 6e73 6962 6c65 5f76 6972 7475   ( ansible_virtu
│ │ │ +001b87d0: 616c 697a 6174 696f 6e5f 7479 7065 2069  alization_type i
│ │ │ +001b87e0: 6e20 5b22 646f 636b 6572 222c 2022 6c78  n ["docker", "lx
│ │ │ +001b87f0: 6322 2c20 226f 7065 6e76 7a22 2c20 2270  c", "openvz", "p
│ │ │ +001b8800: 6f64 6d61 6e22 2c0a 2020 2020 2263 6f6e  odman",.    "con
│ │ │ +001b8810: 7461 696e 6572 225d 2029 2029 0a20 202d  tainer"] ) ).  -
│ │ │ +001b8820: 2027 222f 686f 6d65 2220 696e 2061 6e73   '"/home" in ans
│ │ │ +001b8830: 6962 6c65 5f6d 6f75 6e74 7320 7c20 6d61  ible_mounts | ma
│ │ │ +001b8840: 7028 6174 7472 6962 7574 653d 226d 6f75  p(attribute="mou
│ │ │ +001b8850: 6e74 2229 207c 206c 6973 7427 0a20 202d  nt") | list'.  -
│ │ │ +001b8860: 2028 222d 2d66 7374 6162 2220 7c20 6c65   ("--fstab" | le
│ │ │ +001b8870: 6e67 7468 203d 3d20 3029 0a20 202d 2064  ngth == 0).  - d
│ │ │ +001b8880: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ +001b8890: 7420 6973 2064 6566 696e 6564 2061 6e64  t is defined and
│ │ │ +001b88a0: 2064 6576 6963 655f 6e61 6d65 2e73 7464   device_name.std
│ │ │ +001b88b0: 6f75 745f 6c69 6e65 7320 6973 2064 6566  out_lines is def
│ │ │ +001b88c0: 696e 6564 0a20 202d 2028 6465 7669 6365  ined.  - (device
│ │ │ +001b88d0: 5f6e 616d 652e 7374 646f 7574 207c 206c  _name.stdout | l
│ │ │ +001b88e0: 656e 6774 6820 3d3d 2030 290a 2020 7461  ength == 0).  ta
│ │ │ +001b88f0: 6773 3a0a 2020 2d20 636f 6e66 6967 7572  gs:.  - configur
│ │ │ +001b8900: 655f 7374 7261 7465 6779 0a20 202d 2068  e_strategy.  - h
│ │ │ +001b8910: 6967 685f 6469 7372 7570 7469 6f6e 0a20  igh_disruption. 
│ │ │ +001b8920: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ +001b8930: 790a 2020 2d20 6d6f 756e 745f 6f70 7469  y.  - mount_opti
│ │ │ +001b8940: 6f6e 5f68 6f6d 655f 6e6f 6465 760a 2020  on_home_nodev.  
│ │ │ +001b8950: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ +001b8960: 6564 0a20 202d 2075 6e6b 6e6f 776e 5f73  ed.  - unknown_s
│ │ │ +001b8970: 6576 6572 6974 790a 0a2d 206e 616d 653a  everity..- name:
│ │ │ +001b8980: 2027 4164 6420 6e6f 6465 7620 4f70 7469   'Add nodev Opti
│ │ │ +001b8990: 6f6e 2074 6f20 2f68 6f6d 653a 204d 616b  on to /home: Mak
│ │ │ +001b89a0: 6520 7375 7265 206e 6f64 6576 206f 7074  e sure nodev opt
│ │ │ +001b89b0: 696f 6e20 6973 2070 6172 7420 6f66 2074  ion is part of t
│ │ │ +001b89c0: 6865 2074 6f20 2f68 6f6d 650a 2020 2020  he to /home.    
│ │ │ +001b89d0: 6f70 7469 6f6e 7327 0a20 2073 6574 5f66  options'.  set_f
│ │ │ +001b89e0: 6163 743a 0a20 2020 206d 6f75 6e74 5f69  act:.    mount_i
│ │ │ +001b89f0: 6e66 6f3a 2027 7b7b 206d 6f75 6e74 5f69  nfo: '{{ mount_i
│ │ │ +001b8a00: 6e66 6f20 7c20 636f 6d62 696e 6528 207b  nfo | combine( {
│ │ │ +001b8a10: 2727 6f70 7469 6f6e 7327 273a 2727 2727  ''options'':''''
│ │ │ +001b8a20: 7e28 6d6f 756e 745f 696e 666f 2e6f 7074  ~(mount_info.opt
│ │ │ +001b8a30: 696f 6e73 207c 0a20 2020 2020 2064 6566  ions |.      def
│ │ │ +001b8a40: 6175 6c74 2827 2727 2729 297e 2827 272c  ault(''''))~('',
│ │ │ +001b8a50: 2727 2069 6620 286d 6f75 6e74 5f69 6e66  '' if (mount_inf
│ │ │ +001b8a60: 6f2e 6f70 7469 6f6e 7320 7c20 6465 6661  o.options | defa
│ │ │ +001b8a70: 756c 7428 2727 2727 2929 2065 6c73 6520  ult('''')) else 
│ │ │ +001b8a80: 2727 2727 297e 2727 6e6f 6465 7627 270a  '''')~''nodev''.
│ │ │ +001b8a90: 2020 2020 2020 7d29 207d 7d27 0a20 2077        }) }}'.  w
│ │ │ +001b8aa0: 6865 6e3a 0a20 202d 2028 206e 6f74 2028  hen:.  - ( not (
│ │ │ +001b8ab0: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ +001b8ac0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001b8ad0: 6765 7320 616e 6420 2262 6f6f 7463 2220  ges and "bootc" 
│ │ │ +001b8ae0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001b8af0: 2e70 6163 6b61 6765 730a 2020 2020 616e  .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 7320 616e 6420 226f 7374 7265 6522  ges and "ostree"
│ │ │ +001b8b40: 2069 6e20 616e 7369 626c 655f 7072 6f63   in ansible_proc
│ │ │ +001b8b50: 5f63 6d64 6c69 6e65 0a20 2020 2029 2061  _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 6e20 5b22 646f 636b 6572  type in ["docker
│ │ │ +001b8b90: 222c 2022 6c78 6322 2c20 226f 7065 6e76  ", "lxc", "openv
│ │ │ +001b8ba0: 7a22 2c20 2270 6f64 6d61 6e22 2c0a 2020  z", "podman",.  
│ │ │ +001b8bb0: 2020 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 2061 6e64  o is defined and
│ │ │ +001b8c20: 2022 6e6f 6465 7622 206e 6f74 2069 6e20   "nodev" not in 
│ │ │ +001b8c30: 286d 6f75 6e74 5f69 6e66 6f2e 6f70 7469  (mount_info.opti
│ │ │ +001b8c40: 6f6e 7320 7c20 6465 6661 756c 7428 2727  ons | default(''
│ │ │ +001b8c50: 2929 0a20 2074 6167 733a 0a20 202d 2063  )).  tags:.  - c
│ │ │ +001b8c60: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ +001b8c70: 790a 2020 2d20 6869 6768 5f64 6973 7275  y.  - high_disru
│ │ │ +001b8c80: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f  ption.  - low_co
│ │ │ +001b8c90: 6d70 6c65 7869 7479 0a20 202d 206d 6f75  mplexity.  - mou
│ │ │ +001b8ca0: 6e74 5f6f 7074 696f 6e5f 686f 6d65 5f6e  nt_option_home_n
│ │ │ +001b8cb0: 6f64 6576 0a20 202d 206e 6f5f 7265 626f  odev.  - no_rebo
│ │ │ +001b8cc0: 6f74 5f6e 6565 6465 640a 2020 2d20 756e  ot_needed.  - un
│ │ │ +001b8cd0: 6b6e 6f77 6e5f 7365 7665 7269 7479 0a0a  known_severity..
│ │ │ +001b8ce0: 2d20 6e61 6d65 3a20 2741 6464 206e 6f64  - name: 'Add nod
│ │ │ +001b8cf0: 6576 204f 7074 696f 6e20 746f 202f 686f  ev Option to /ho
│ │ │ +001b8d00: 6d65 3a20 456e 7375 7265 202f 686f 6d65  me: Ensure /home
│ │ │ +001b8d10: 2069 7320 6d6f 756e 7465 6420 7769 7468   is mounted with
│ │ │ +001b8d20: 206e 6f64 6576 206f 7074 696f 6e27 0a20   nodev option'. 
│ │ │ +001b8d30: 2061 6e73 6962 6c65 2e70 6f73 6978 2e6d   ansible.posix.m
│ │ │ +001b8d40: 6f75 6e74 3a0a 2020 2020 7061 7468 3a20  ount:.    path: 
│ │ │ +001b8d50: 2f68 6f6d 650a 2020 2020 7372 633a 2027  /home.    src: '
│ │ │ +001b8d60: 7b7b 206d 6f75 6e74 5f69 6e66 6f2e 736f  {{ mount_info.so
│ │ │ +001b8d70: 7572 6365 207c 2064 6566 6175 6c74 2827  urce | default('
│ │ │ +001b8d80: 2727 2729 207d 7d27 0a20 2020 206f 7074  ''') }}'.    opt
│ │ │ +001b8d90: 733a 2027 7b7b 206d 6f75 6e74 5f69 6e66  s: '{{ mount_inf
│ │ │ +001b8da0: 6f2e 6f70 7469 6f6e 7320 7c20 6465 6661  o.options | defa
│ │ │ +001b8db0: 756c 7428 2727 2727 2920 7d7d 270a 2020  ult('''') }}'.  
│ │ │ +001b8dc0: 2020 7374 6174 653a 206d 6f75 6e74 6564    state: mounted
│ │ │ +001b8dd0: 0a20 2020 2066 7374 7970 653a 2027 7b7b  .    fstype: '{{
│ │ │ +001b8de0: 206d 6f75 6e74 5f69 6e66 6f2e 6673 7479   mount_info.fsty
│ │ │ +001b8df0: 7065 207c 2064 6566 6175 6c74 2827 2727  pe | default('''
│ │ │ +001b8e00: 2729 207d 7d27 0a20 2072 6567 6973 7465  ') }}'.  registe
│ │ │ +001b8e10: 723a 206d 6f75 6e74 5f72 6573 756c 740a  r: mount_result.
│ │ │ +001b8e20: 2020 6661 696c 6564 5f77 6865 6e3a 0a20    failed_when:. 
│ │ │ +001b8e30: 202d 206d 6f75 6e74 5f72 6573 756c 7420   - mount_result 
│ │ │ +001b8e40: 6973 2066 6169 6c65 640a 2020 2d20 2727  is failed.  - ''
│ │ │ +001b8e50: 2774 6172 6765 7420 6973 2062 7573 7927  'target is busy'
│ │ │ +001b8e60: 2720 6e6f 7420 696e 2028 6d6f 756e 745f  ' not in (mount_
│ │ │ +001b8e70: 7265 7375 6c74 2e6d 7367 207c 2064 6566  result.msg | def
│ │ │ +001b8e80: 6175 6c74 2827 2727 2729 2927 0a20 202d  ault(''''))'.  -
│ │ │ +001b8e90: 2027 2727 616c 7265 6164 7920 6d6f 756e   '''already moun
│ │ │ +001b8ea0: 7465 6427 2720 6e6f 7420 696e 2028 6d6f  ted'' not in (mo
│ │ │ +001b8eb0: 756e 745f 7265 7375 6c74 2e6d 7367 207c  unt_result.msg |
│ │ │ +001b8ec0: 2064 6566 6175 6c74 2827 2727 2729 2927   default(''''))'
│ │ │ +001b8ed0: 0a20 2077 6865 6e3a 0a20 202d 2028 206e  .  when:.  - ( n
│ │ │ +001b8ee0: 6f74 2028 2022 6b65 726e 656c 2220 696e  ot ( "kernel" in
│ │ │ +001b8ef0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001b8f00: 6163 6b61 6765 7320 616e 6420 2262 6f6f  ackages and "boo
│ │ │ +001b8f10: 7463 2220 696e 2061 6e73 6962 6c65 5f66  tc" in ansible_f
│ │ │ +001b8f20: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ +001b8f30: 2020 616e 6420 6e6f 7420 226f 7065 6e73    and not "opens
│ │ │ +001b8f40: 6869 6674 2d6b 7562 656c 6574 2220 696e  hift-kubelet" in
│ │ │ +001b8f50: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001b8f60: 6163 6b61 6765 7320 616e 6420 226f 7374  ackages and "ost
│ │ │ +001b8f70: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ +001b8f80: 7072 6f63 5f63 6d64 6c69 6e65 0a20 2020  proc_cmdline.   
│ │ │ +001b8f90: 2029 2061 6e64 206e 6f74 2028 2061 6e73   ) and not ( ans
│ │ │ +001b8fa0: 6962 6c65 5f76 6972 7475 616c 697a 6174  ible_virtualizat
│ │ │ +001b8fb0: 696f 6e5f 7479 7065 2069 6e20 5b22 646f  ion_type in ["do
│ │ │ +001b8fc0: 636b 6572 222c 2022 6c78 6322 2c20 226f  cker", "lxc", "o
│ │ │ +001b8fd0: 7065 6e76 7a22 2c20 2270 6f64 6d61 6e22  penvz", "podman"
│ │ │ +001b8fe0: 2c0a 2020 2020 2263 6f6e 7461 696e 6572  ,.    "container
│ │ │ +001b8ff0: 225d 2029 2029 0a20 202d 2027 222f 686f  "] ) ).  - '"/ho
│ │ │ +001b9000: 6d65 2220 696e 2061 6e73 6962 6c65 5f6d  me" in ansible_m
│ │ │ +001b9010: 6f75 6e74 7320 7c20 6d61 7028 6174 7472  ounts | map(attr
│ │ │ +001b9020: 6962 7574 653d 226d 6f75 6e74 2229 207c  ibute="mount") |
│ │ │ +001b9030: 206c 6973 7427 0a20 202d 206d 6f75 6e74   list'.  - mount
│ │ │ +001b9040: 5f69 6e66 6f20 6973 2064 6566 696e 6564  _info is defined
│ │ │ +001b9050: 0a20 202d 2028 6465 7669 6365 5f6e 616d  .  - (device_nam
│ │ │ +001b9060: 652e 7374 646f 7574 2069 7320 6465 6669  e.stdout is defi
│ │ │ +001b9070: 6e65 6420 616e 6420 2864 6576 6963 655f  ned and (device_
│ │ │ +001b9080: 6e61 6d65 2e73 7464 6f75 7420 7c20 6c65  name.stdout | le
│ │ │ +001b9090: 6e67 7468 2026 6774 3b20 3029 2920 6f72  ngth > 0)) or
│ │ │ +001b90a0: 2028 222d 2d66 7374 6162 220a 2020 2020   ("--fstab".    
│ │ │ +001b90b0: 7c20 6c65 6e67 7468 203d 3d20 3029 0a20  | length == 0). 
│ │ │ +001b90c0: 2074 6167 733a 0a20 202d 2063 6f6e 6669   tags:.  - confi
│ │ │ +001b90d0: 6775 7265 5f73 7472 6174 6567 790a 2020  gure_strategy.  
│ │ │ +001b90e0: 2d20 6869 6768 5f64 6973 7275 7074 696f  - high_disruptio
│ │ │ +001b90f0: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65  n.  - low_comple
│ │ │ +001b9100: 7869 7479 0a20 202d 206d 6f75 6e74 5f6f  xity.  - mount_o
│ │ │ +001b9110: 7074 696f 6e5f 686f 6d65 5f6e 6f64 6576  ption_home_nodev
│ │ │ +001b9120: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ +001b9130: 6565 6465 640a 2020 2d20 756e 6b6e 6f77  eeded.  - unknow
│ │ │ +001b9140: 6e5f 7365 7665 7269 7479 0a3c 2f63 6f64  n_severity.
Remed │ │ │ +001b9200: 6961 7469 6f6e 2053 6865 6c6c 2073 6372 iation Shell scr │ │ │ +001b9210: 6970 7420 e287 b23c 2f61 3e3c 6272 3e3c ipt ...
< │ │ │ +001b9220: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +001b9230: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +001b9240: 7365 2220 6964 3d22 6964 3530 3122 3e3c se" id="id501">< │ │ │ +001b9250: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +001b9260: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +001b9270: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +001b9280: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +001b9290: 3e3c 7472 3e3c 7468 3e52 6562 6f6f 743a >Reboot: │ │ │ +001b92a0: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ +001b92c0: 3c70 7265 3e3c 636f 6465 3e23 2052 656d
# Rem
│ │ │ +001b92d0: 6564 6961 7469 6f6e 2069 7320 6170 706c  ediation is appl
│ │ │ +001b92e0: 6963 6162 6c65 206f 6e6c 7920 696e 2063  icable only in c
│ │ │ +001b92f0: 6572 7461 696e 2070 6c61 7466 6f72 6d73  ertain platforms
│ │ │ +001b9300: 0a69 6620 2820 2120 2820 7b20 7270 6d20  .if ( ! ( { rpm 
│ │ │ +001b9310: 2d2d 7175 6965 7420 2d71 206b 6572 6e65  --quiet -q kerne
│ │ │ +001b9320: 6c20 3b7d 2026 616d 703b 2661 6d70 3b20  l ;} && 
│ │ │ +001b9330: 7b20 7270 6d20 2d2d 7175 6965 7420 2d71  { rpm --quiet -q
│ │ │ +001b9340: 2062 6f6f 7463 203b 7d20 2661 6d70 3b26   bootc ;} &&
│ │ │ +001b9350: 616d 703b 207b 2021 2072 706d 202d 2d71  amp; { ! rpm --q
│ │ │ +001b9360: 7569 6574 202d 7120 6f70 656e 7368 6966  uiet -q openshif
│ │ │ +001b9370: 742d 6b75 6265 6c65 7420 3b7d 2026 616d  t-kubelet ;} &am
│ │ │ +001b9380: 703b 2661 6d70 3b20 285b 202d 6620 2f72  p;& ([ -f /r
│ │ │ +001b9390: 756e 2f6f 7374 7265 652d 626f 6f74 6564  un/ostree-booted
│ │ │ +001b93a0: 205d 207c 7c20 5b20 2d4c 202f 6f73 7472   ] || [ -L /ostr
│ │ │ +001b93b0: 6565 205d 2920 2920 2661 6d70 3b26 616d  ee ]) ) &&am
│ │ │ +001b93c0: 703b 2021 2028 205b 202d 6620 2f2e 646f  p; ! ( [ -f /.do
│ │ │ +001b93d0: 636b 6572 656e 7620 5d20 7c7c 205b 202d  ckerenv ] || [ -
│ │ │ +001b93e0: 6620 2f72 756e 2f2e 636f 6e74 6169 6e65  f /run/.containe
│ │ │ +001b93f0: 7265 6e76 205d 2029 2029 2026 616d 703b  renv ] ) ) &
│ │ │ +001b9400: 2661 6d70 3b20 7b20 2820 6669 6e64 6d6e  & { ( findmn
│ │ │ +001b9410: 7420 2d2d 6b65 726e 656c 2022 2f68 6f6d  t --kernel "/hom
│ │ │ +001b9420: 6522 2026 6774 3b20 2f64 6576 2f6e 756c  e" > /dev/nul
│ │ │ +001b9430: 6c20 7c7c 2066 696e 646d 6e74 202d 2d66  l || findmnt --f
│ │ │ +001b9440: 7374 6162 2022 2f68 6f6d 6522 2026 6774  stab "/home" >
│ │ │ +001b9450: 3b20 2f64 6576 2f6e 756c 6c20 293b 207d  ; /dev/null ); }
│ │ │ +001b9460: 3b20 7468 656e 0a0a 6675 6e63 7469 6f6e  ; then..function
│ │ │ +001b9470: 2070 6572 666f 726d 5f72 656d 6564 6961   perform_remedia
│ │ │ +001b9480: 7469 6f6e 207b 0a0a 2020 2020 0a20 2020  tion {..    .   
│ │ │ +001b9490: 2020 2020 2023 2074 6865 206d 6f75 6e74       # the mount
│ │ │ +001b94a0: 2070 6f69 6e74 202f 686f 6d65 2068 6173   point /home has
│ │ │ +001b94b0: 2074 6f20 6265 2064 6566 696e 6564 2069   to be defined i
│ │ │ +001b94c0: 6e20 2f65 7463 2f66 7374 6162 0a20 2020  n /etc/fstab.   
│ │ │ +001b94d0: 2020 2020 2023 2062 6566 6f72 6520 7468       # before th
│ │ │ +001b94e0: 6973 2072 656d 6564 6961 7469 6f6e 2063  is remediation c
│ │ │ +001b94f0: 616e 2062 6520 6578 6563 7574 6564 2e20  an be executed. 
│ │ │ +001b9500: 496e 2063 6173 6520 6974 2069 7320 6e6f  In case it is no
│ │ │ +001b9510: 7420 6465 6669 6e65 642c 2074 6865 0a20  t defined, the. 
│ │ │ +001b9520: 2020 2020 2020 2023 2072 656d 6564 6961         # remedia
│ │ │ +001b9530: 7469 6f6e 2061 626f 7274 7320 616e 6420  tion aborts and 
│ │ │ +001b9540: 6e6f 2063 6861 6e67 6573 2072 6567 6172  no changes regar
│ │ │ +001b9550: 6469 6e67 2074 6865 206d 6f75 6e74 2070  ding the mount p
│ │ │ +001b9560: 6f69 6e74 2061 7265 2064 6f6e 652e 0a20  oint are done.. 
│ │ │ +001b9570: 2020 2020 2020 206d 6f75 6e74 5f70 6f69         mount_poi
│ │ │ +001b9580: 6e74 5f6d 6174 6368 5f72 6567 6578 703d  nt_match_regexp=
│ │ │ +001b9590: 2224 2870 7269 6e74 6620 225e 5b5b 3a73  "$(printf "^[[:s
│ │ │ +001b95a0: 7061 6365 3a5d 5d2a 5b5e 235d 2e2a 5b5b  pace:]]*[^#].*[[
│ │ │ +001b95b0: 3a73 7061 6365 3a5d 5d25 735b 5b3a 7370  :space:]]%s[[:sp
│ │ │ +001b95c0: 6163 653a 5d5d 2220 222f 686f 6d65 2229  ace:]]" "/home")
│ │ │ +001b95d0: 220a 0a20 2020 2067 7265 7020 2224 6d6f  "..    grep "$mo
│ │ │ +001b95e0: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ +001b95f0: 7265 6765 7870 2220 2d71 202f 6574 632f  regexp" -q /etc/
│ │ │ +001b9600: 6673 7461 6220 5c0a 2020 2020 2020 2020  fstab \.        
│ │ │ +001b9610: 7c7c 207b 2065 6368 6f20 2254 6865 206d  || { echo "The m
│ │ │ +001b9620: 6f75 6e74 2070 6f69 6e74 2027 2f68 6f6d  ount point '/hom
│ │ │ +001b9630: 6527 2069 7320 6e6f 7420 6576 656e 2069  e' is not even i
│ │ │ +001b9640: 6e20 2f65 7463 2f66 7374 6162 2c20 736f  n /etc/fstab, so
│ │ │ +001b9650: 2077 6520 6361 6e27 7420 7365 7420 7570   we can't set up
│ │ │ +001b9660: 206d 6f75 6e74 206f 7074 696f 6e73 2220   mount options" 
│ │ │ +001b9670: 2667 743b 2661 6d70 3b32 3b0a 2020 2020  >&2;.    
│ │ │ +001b9680: 2020 2020 2020 2020 2020 2020 6563 686f              echo
│ │ │ +001b9690: 2022 4e6f 7420 7265 6d65 6469 6174 696e   "Not remediatin
│ │ │ +001b96a0: 672c 2062 6563 6175 7365 2074 6865 7265  g, because there
│ │ │ +001b96b0: 2069 7320 6e6f 2072 6563 6f72 6420 6f66   is no record of
│ │ │ +001b96c0: 202f 686f 6d65 2069 6e20 2f65 7463 2f66   /home in /etc/f
│ │ │ +001b96d0: 7374 6162 2220 2667 743b 2661 6d70 3b32  stab" >&2
│ │ │ +001b96e0: 3b20 7265 7475 726e 2031 3b20 7d0a 2020  ; return 1; }.  
│ │ │ +001b96f0: 2020 0a0a 0a20 2020 206d 6f75 6e74 5f70    ...    mount_p
│ │ │ +001b9700: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ +001b9710: 703d 2224 2870 7269 6e74 6620 225e 5b5b  p="$(printf "^[[
│ │ │ +001b9720: 3a73 7061 6365 3a5d 5d2a 5b5e 235d 2e2a  :space:]]*[^#].*
│ │ │ +001b9730: 5b5b 3a73 7061 6365 3a5d 5d25 735b 5b3a  [[:space:]]%s[[:
│ │ │ +001b9740: 7370 6163 653a 5d5d 2220 2f68 6f6d 6529  space:]]" /home)
│ │ │ +001b9750: 220a 0a20 2020 2023 2049 6620 7468 6520  "..    # If the 
│ │ │ +001b9760: 6d6f 756e 7420 706f 696e 7420 6973 206e  mount point is n
│ │ │ +001b9770: 6f74 2069 6e20 2f65 7463 2f66 7374 6162  ot in /etc/fstab
│ │ │ +001b9780: 2c20 6765 7420 7072 6576 696f 7573 206d  , get previous m
│ │ │ +001b9790: 6f75 6e74 206f 7074 696f 6e73 2066 726f  ount options fro
│ │ │ +001b97a0: 6d20 2f65 7463 2f6d 7461 620a 2020 2020  m /etc/mtab.    
│ │ │ +001b97b0: 6966 2021 2067 7265 7020 2d71 2022 246d  if ! grep -q "$m
│ │ │ +001b97c0: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ +001b97d0: 5f72 6567 6578 7022 202f 6574 632f 6673  _regexp" /etc/fs
│ │ │ +001b97e0: 7461 623b 2074 6865 6e0a 2020 2020 2020  tab; then.      
│ │ │ +001b97f0: 2020 2320 7275 6e74 696d 6520 6f70 7473    # runtime opts
│ │ │ +001b9800: 2077 6974 686f 7574 2073 6f6d 6520 6175   without some au
│ │ │ +001b9810: 746f 6d61 7469 6320 6b65 726e 656c 2f75  tomatic kernel/u
│ │ │ +001b9820: 7365 7273 7061 6365 2d61 6464 6564 2064  serspace-added d
│ │ │ +001b9830: 6566 6175 6c74 730a 2020 2020 2020 2020  efaults.        
│ │ │ +001b9840: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ +001b9850: 7074 733d 2428 6772 6570 2022 246d 6f75  pts=$(grep "$mou
│ │ │ +001b9860: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ +001b9870: 6567 6578 7022 202f 6574 632f 6d74 6162  egexp" /etc/mtab
│ │ │ +001b9880: 207c 2068 6561 6420 2d31 207c 2020 6177   | head -1 |  aw
│ │ │ +001b9890: 6b20 277b 7072 696e 7420 2434 7d27 205c  k '{print $4}' \
│ │ │ +001b98a0: 0a20 2020 2020 2020 2020 2020 2020 2020  .               
│ │ │ +001b98b0: 2020 2020 207c 2073 6564 202d 4520 2273       | sed -E "s
│ │ │ +001b98c0: 2f28 7277 7c64 6566 6175 6c74 737c 7365  /(rw|defaults|se
│ │ │ +001b98d0: 636c 6162 656c 7c6e 6f64 6576 2928 2c7c  clabel|nodev)(,|
│ │ │ +001b98e0: 2429 2f2f 673b 732f 2c24 2f2f 2229 0a20  $)//g;s/,$//"). 
│ │ │ +001b98f0: 2020 2020 2020 205b 2022 2470 7265 7669         [ "$previ
│ │ │ +001b9900: 6f75 735f 6d6f 756e 745f 6f70 7473 2220  ous_mount_opts" 
│ │ │ +001b9910: 5d20 2661 6d70 3b26 616d 703b 2070 7265  ] && pre
│ │ │ +001b9920: 7669 6f75 735f 6d6f 756e 745f 6f70 7473  vious_mount_opts
│ │ │ +001b9930: 2b3d 222c 220a 2020 2020 2020 2020 2320  +=",".        # 
│ │ │ +001b9940: 496e 2069 736f 3936 3630 2066 696c 6573  In iso9660 files
│ │ │ +001b9950: 7973 7465 6d73 206d 7461 6220 636f 756c  ystems mtab coul
│ │ │ +001b9960: 6420 6465 7363 7269 6265 2061 2022 626c  d describe a "bl
│ │ │ +001b9970: 6f63 6b73 697a 6522 2076 616c 7565 2c20  ocksize" value, 
│ │ │ +001b9980: 7468 6973 2073 686f 756c 6420 6265 2072  this should be r
│ │ │ +001b9990: 6566 6c65 6374 6564 2069 6e0a 2020 2020  eflected in.    
│ │ │ +001b99a0: 2020 2020 2320 6673 7461 6220 6173 2022      # fstab as "
│ │ │ +001b99b0: 626c 6f63 6b22 2e20 2054 6865 206e 6578  block".  The nex
│ │ │ +001b99c0: 7420 7661 7269 6162 6c65 2069 7320 746f  t variable is to
│ │ │ +001b99d0: 2073 6174 6973 6679 2073 6865 6c6c 6368   satisfy shellch
│ │ │ +001b99e0: 6563 6b20 5343 3230 3530 2e0a 2020 2020  eck SC2050..    
│ │ │ +001b99f0: 2020 2020 6673 5f74 7970 653d 2222 0a20      fs_type="". 
│ │ │ +001b9a00: 2020 2020 2020 2069 6620 5b20 2022 2466         if [  "$f
│ │ │ +001b9a10: 735f 7479 7065 2220 3d3d 2022 6973 6f39  s_type" == "iso9
│ │ │ +001b9a20: 3636 3022 205d 203b 2074 6865 6e0a 2020  660" ] ; then.  
│ │ │ +001b9a30: 2020 2020 2020 2020 2020 7072 6576 696f            previo
│ │ │ +001b9a40: 7573 5f6d 6f75 6e74 5f6f 7074 733d 2428  us_mount_opts=$(
│ │ │ +001b9a50: 7365 6420 2773 2f62 6c6f 636b 7369 7a65  sed 's/blocksize
│ │ │ +001b9a60: 3d2f 626c 6f63 6b3d 2f27 2026 6c74 3b26  =/block=/' <&
│ │ │ +001b9a70: 6c74 3b26 6c74 3b20 2224 7072 6576 696f  lt;< "$previo
│ │ │ +001b9a80: 7573 5f6d 6f75 6e74 5f6f 7074 7322 290a  us_mount_opts").
│ │ │ +001b9a90: 2020 2020 2020 2020 6669 0a20 2020 2020          fi.     
│ │ │ +001b9aa0: 2020 2065 6368 6f20 2220 2f68 6f6d 6520     echo " /home 
│ │ │ +001b9ab0: 2064 6566 6175 6c74 732c 247b 7072 6576   defaults,${prev
│ │ │ +001b9ac0: 696f 7573 5f6d 6f75 6e74 5f6f 7074 737d  ious_mount_opts}
│ │ │ +001b9ad0: 6e6f 6465 7620 3020 3022 2026 6774 3b26  nodev 0 0" >&
│ │ │ +001b9ae0: 6774 3b20 2f65 7463 2f66 7374 6162 0a20  gt; /etc/fstab. 
│ │ │ +001b9af0: 2020 2023 2049 6620 7468 6520 6d6f 756e     # If the moun
│ │ │ +001b9b00: 745f 6f70 7420 6f70 7469 6f6e 2069 7320  t_opt option is 
│ │ │ +001b9b10: 6e6f 7420 616c 7265 6164 7920 696e 2074  not already in t
│ │ │ +001b9b20: 6865 206d 6f75 6e74 2070 6f69 6e74 2773  he mount point's
│ │ │ +001b9b30: 202f 6574 632f 6673 7461 6220 656e 7472   /etc/fstab entr
│ │ │ +001b9b40: 792c 2061 6464 2069 740a 2020 2020 656c  y, add it.    el
│ │ │ +001b9b50: 6966 2021 2067 7265 7020 2224 6d6f 756e  if ! grep "$moun
│ │ │ +001b9b60: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ +001b9b70: 6765 7870 2220 2f65 7463 2f66 7374 6162  gexp" /etc/fstab
│ │ │ +001b9b80: 207c 2067 7265 7020 2d71 2022 6e6f 6465   | grep -q "node
│ │ │ +001b9b90: 7622 3b20 7468 656e 0a20 2020 2020 2020  v"; then.       
│ │ │ +001b9ba0: 2070 7265 7669 6f75 735f 6d6f 756e 745f   previous_mount_
│ │ │ +001b9bb0: 6f70 7473 3d24 2867 7265 7020 2224 6d6f  opts=$(grep "$mo
│ │ │ +001b9bc0: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ +001b9bd0: 7265 6765 7870 2220 2f65 7463 2f66 7374  regexp" /etc/fst
│ │ │ +001b9be0: 6162 207c 2061 776b 2027 7b70 7269 6e74  ab | awk '{print
│ │ │ +001b9bf0: 2024 347d 2729 0a20 2020 2020 2020 2073   $4}').        s
│ │ │ +001b9c00: 6564 202d 6920 2273 7c5c 2824 7b6d 6f75  ed -i "s|\(${mou
│ │ │ +001b9c10: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ +001b9c20: 6567 6578 707d 2e2a 247b 7072 6576 696f  egexp}.*${previo
│ │ │ +001b9c30: 7573 5f6d 6f75 6e74 5f6f 7074 737d 5c29  us_mount_opts}\)
│ │ │ +001b9c40: 7c5c 312c 6e6f 6465 767c 2220 2f65 7463  |\1,nodev|" /etc
│ │ │ +001b9c50: 2f66 7374 6162 0a20 2020 2066 690a 0a0a  /fstab.    fi...
│ │ │ +001b9c60: 2020 2020 6966 206d 6b64 6972 202d 7020      if mkdir -p 
│ │ │ +001b9c70: 222f 686f 6d65 223b 2074 6865 6e0a 2020  "/home"; then.  
│ │ │ +001b9c80: 2020 2020 2020 6966 206d 6f75 6e74 706f        if mountpo
│ │ │ +001b9c90: 696e 7420 2d71 2022 2f68 6f6d 6522 3b20  int -q "/home"; 
│ │ │ +001b9ca0: 7468 656e 0a20 2020 2020 2020 2020 2020  then.           
│ │ │ +001b9cb0: 206d 6f75 6e74 202d 6f20 7265 6d6f 756e   mount -o remoun
│ │ │ +001b9cc0: 7420 2d2d 7461 7267 6574 2022 2f68 6f6d  t --target "/hom
│ │ │ +001b9cd0: 6522 0a20 2020 2020 2020 2066 690a 2020  e".        fi.  
│ │ │ +001b9ce0: 2020 6669 0a7d 0a0a 7065 7266 6f72 6d5f    fi.}..perform_
│ │ │ +001b9cf0: 7265 6d65 6469 6174 696f 6e0a 0a65 6c73  remediation..els
│ │ │ +001b9d00: 650a 2020 2020 2667 743b 2661 6d70 3b32  e.    >&2
│ │ │ +001b9d10: 2065 6368 6f20 2752 656d 6564 6961 7469   echo 'Remediati
│ │ │ +001b9d20: 6f6e 2069 7320 6e6f 7420 6170 706c 6963  on is not applic
│ │ │ +001b9d30: 6162 6c65 2c20 6e6f 7468 696e 6720 7761  able, nothing wa
│ │ │ +001b9d40: 7320 646f 6e65 270a 6669 0a3c 2f63 6f64  s done'.fi.
Remed │ │ │ +001b9e00: 6961 7469 6f6e 2041 6e61 636f 6e64 6120 iation Anaconda │ │ │ +001b9e10: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ +001b9e20: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
< │ │ │ +001b9f10: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
Com │ │ │ +001b9ea0: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ +001b9ed0: 3a3c 2f74 683e 3c74 643e 6869 6768 3c2f :high
│ │ │ +001b9ef0: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +001b9f00: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +001b9f20: 3c2f 7468 3e3c 7464 3e65 6e61 626c 653c enable< │ │ │ +001b9f30: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
.par
│ │ │ +001b9f50: 7420 2f68 6f6d 6520 2d2d 6d6f 756e 746f  t /home --mounto
│ │ │ +001b9f60: 7074 696f 6e73 3d22 6e6f 6465 7622 0a3c  ptions="nodev".<
│ │ │  001b9f70: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
Re │ │ │ -001bb080: 6d65 6469 6174 696f 6e20 416e 6163 6f6e mediation Anacon │ │ │ -001bb090: 6461 2073 6e69 7070 6574 20e2 87b2 3c2f da snippet ...
│ │ │ -001bb130: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 < │ │ │ -001bb170: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -001bb180: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
.
│ │ │ -001bb1d0: 7061 7274 202f 686f 6d65 202d 2d6d 6f75  part /home --mou
│ │ │ -001bb1e0: 6e74 6f70 7469 6f6e 733d 226e 6f73 7569  ntoptions="nosui
│ │ │ -001bb1f0: 6422 0a3c 2f63 6f64 653e 3c2f 7072 653e  d".
│ │ │ -001bb200: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22 Remediation A │ │ │ -001bb2b0: 6e73 6962 6c65 2073 6e69 7070 6574 20e2 nsible snippet . │ │ │ -001bb2c0: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ -001bb120: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -001bb150: 696f 6e3a 3c2f 7468 3e3c 7464 3e68 6967 ion:hig │ │ │ -001bb160: 683c 2f74 643e 3c2f 7472 3e3c 7472 3e3c h
Strate │ │ │ -001bb1a0: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ -001bb1b0: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
│ │ │ -001bb340: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -001bb360: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 < │ │ │ -001bb390: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>
Complexity:< │ │ │ -001bb350: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ -001bb370: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:high
Reboot:false
St │ │ │ -001bb3c0: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ -001bb3d0: 636f 6e66 6967 7572 653c 2f74 643e 3c2f configure
│ │ │ -001bb3f0: 3c63 6f64 653e 2d20 6e61 6d65 3a20 4761  - name: Ga
│ │ │ -001bb400: 7468 6572 2074 6865 2070 6163 6b61 6765  ther the package
│ │ │ -001bb410: 2066 6163 7473 0a20 2070 6163 6b61 6765   facts.  package
│ │ │ -001bb420: 5f66 6163 7473 3a0a 2020 2020 6d61 6e61  _facts:.    mana
│ │ │ -001bb430: 6765 723a 2061 7574 6f0a 2020 7461 6773  ger: auto.  tags
│ │ │ -001bb440: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ -001bb450: 332d 4143 2d36 0a20 202d 204e 4953 542d  3-AC-6.  - NIST-
│ │ │ -001bb460: 3830 302d 3533 2d41 432d 3628 3129 0a20  800-53-AC-6(1). 
│ │ │ -001bb470: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -001bb480: 4d2d 3628 6129 0a20 202d 204e 4953 542d  M-6(a).  - NIST-
│ │ │ -001bb490: 3830 302d 3533 2d43 4d2d 3728 6129 0a20  800-53-CM-7(a). 
│ │ │ -001bb4a0: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -001bb4b0: 4d2d 3728 6229 0a20 202d 204e 4953 542d  M-7(b).  - NIST-
│ │ │ -001bb4c0: 3830 302d 3533 2d4d 502d 370a 2020 2d20  800-53-MP-7.  - 
│ │ │ -001bb4d0: 636f 6e66 6967 7572 655f 7374 7261 7465  configure_strate
│ │ │ -001bb4e0: 6779 0a20 202d 2068 6967 685f 6469 7372  gy.  - high_disr
│ │ │ -001bb4f0: 7570 7469 6f6e 0a20 202d 206c 6f77 5f63  uption.  - low_c
│ │ │ -001bb500: 6f6d 706c 6578 6974 790a 2020 2d20 6d65  omplexity.  - me
│ │ │ -001bb510: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ -001bb520: 2d20 6d6f 756e 745f 6f70 7469 6f6e 5f68  - mount_option_h
│ │ │ -001bb530: 6f6d 655f 6e6f 7375 6964 0a20 202d 206e  ome_nosuid.  - n
│ │ │ -001bb540: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ -001bb550: 0a2d 206e 616d 653a 2027 4164 6420 6e6f  .- name: 'Add no
│ │ │ -001bb560: 7375 6964 204f 7074 696f 6e20 746f 202f  suid Option to /
│ │ │ -001bb570: 686f 6d65 3a20 4368 6563 6b20 696e 666f  home: Check info
│ │ │ -001bb580: 726d 6174 696f 6e20 6173 736f 6369 6174  rmation associat
│ │ │ -001bb590: 6564 2074 6f20 6d6f 756e 7470 6f69 6e74  ed to mountpoint
│ │ │ -001bb5a0: 270a 2020 616e 7369 626c 652e 6275 696c  '.  ansible.buil
│ │ │ -001bb5b0: 7469 6e2e 636f 6d6d 616e 643a 2066 696e  tin.command: fin
│ │ │ -001bb5c0: 646d 6e74 202d 2d66 7374 6162 2027 2f68  dmnt --fstab '/h
│ │ │ -001bb5d0: 6f6d 6527 0a20 2072 6567 6973 7465 723a  ome'.  register:
│ │ │ -001bb5e0: 2064 6576 6963 655f 6e61 6d65 0a20 2066   device_name.  f
│ │ │ -001bb5f0: 6169 6c65 645f 7768 656e 3a20 6465 7669  ailed_when: devi
│ │ │ -001bb600: 6365 5f6e 616d 652e 7263 2026 6774 3b20  ce_name.rc > 
│ │ │ -001bb610: 310a 2020 6368 616e 6765 645f 7768 656e  1.  changed_when
│ │ │ -001bb620: 3a20 6661 6c73 650a 2020 6368 6563 6b5f  : false.  check_
│ │ │ -001bb630: 6d6f 6465 3a20 6661 6c73 650a 2020 7768  mode: false.  wh
│ │ │ -001bb640: 656e 3a0a 2020 2d20 2820 6e6f 7420 2820  en:.  - ( not ( 
│ │ │ -001bb650: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ -001bb660: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001bb670: 6573 2061 6e64 2022 626f 6f74 6322 2069  es and "bootc" i
│ │ │ -001bb680: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -001bb690: 7061 636b 6167 6573 0a20 2020 2061 6e64  packages.    and
│ │ │ -001bb6a0: 206e 6f74 2022 6f70 656e 7368 6966 742d   not "openshift-
│ │ │ -001bb6b0: 6b75 6265 6c65 7422 2069 6e20 616e 7369  kubelet" in ansi
│ │ │ -001bb6c0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001bb6d0: 6573 2061 6e64 2022 6f73 7472 6565 2220  es and "ostree" 
│ │ │ -001bb6e0: 696e 2061 6e73 6962 6c65 5f70 726f 635f  in ansible_proc_
│ │ │ -001bb6f0: 636d 646c 696e 650a 2020 2020 2920 616e  cmdline.    ) an
│ │ │ -001bb700: 6420 6e6f 7420 2820 616e 7369 626c 655f  d not ( ansible_
│ │ │ -001bb710: 7669 7274 7561 6c69 7a61 7469 6f6e 5f74  virtualization_t
│ │ │ -001bb720: 7970 6520 696e 205b 2264 6f63 6b65 7222  ype in ["docker"
│ │ │ -001bb730: 2c20 226c 7863 222c 2022 6f70 656e 767a  , "lxc", "openvz
│ │ │ -001bb740: 222c 2022 706f 646d 616e 222c 0a20 2020  ", "podman",.   
│ │ │ -001bb750: 2022 636f 6e74 6169 6e65 7222 5d20 2920   "container"] ) 
│ │ │ -001bb760: 290a 2020 2d20 2722 2f68 6f6d 6522 2069  ).  - '"/home" i
│ │ │ -001bb770: 6e20 616e 7369 626c 655f 6d6f 756e 7473  n ansible_mounts
│ │ │ -001bb780: 207c 206d 6170 2861 7474 7269 6275 7465   | map(attribute
│ │ │ -001bb790: 3d22 6d6f 756e 7422 2920 7c20 6c69 7374  ="mount") | list
│ │ │ -001bb7a0: 270a 2020 7461 6773 3a0a 2020 2d20 4e49  '.  tags:.  - NI
│ │ │ -001bb7b0: 5354 2d38 3030 2d35 332d 4143 2d36 0a20  ST-800-53-AC-6. 
│ │ │ -001bb7c0: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ -001bb7d0: 432d 3628 3129 0a20 202d 204e 4953 542d  C-6(1).  - NIST-
│ │ │ -001bb7e0: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ -001bb7f0: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -001bb800: 4d2d 3728 6129 0a20 202d 204e 4953 542d  M-7(a).  - NIST-
│ │ │ -001bb810: 3830 302d 3533 2d43 4d2d 3728 6229 0a20  800-53-CM-7(b). 
│ │ │ -001bb820: 202d 204e 4953 542d 3830 302d 3533 2d4d   - NIST-800-53-M
│ │ │ -001bb830: 502d 370a 2020 2d20 636f 6e66 6967 7572  P-7.  - configur
│ │ │ -001bb840: 655f 7374 7261 7465 6779 0a20 202d 2068  e_strategy.  - h
│ │ │ -001bb850: 6967 685f 6469 7372 7570 7469 6f6e 0a20  igh_disruption. 
│ │ │ -001bb860: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ -001bb870: 790a 2020 2d20 6d65 6469 756d 5f73 6576  y.  - medium_sev
│ │ │ -001bb880: 6572 6974 790a 2020 2d20 6d6f 756e 745f  erity.  - mount_
│ │ │ -001bb890: 6f70 7469 6f6e 5f68 6f6d 655f 6e6f 7375  option_home_nosu
│ │ │ -001bb8a0: 6964 0a20 202d 206e 6f5f 7265 626f 6f74  id.  - no_reboot
│ │ │ -001bb8b0: 5f6e 6565 6465 640a 0a2d 206e 616d 653a  _needed..- name:
│ │ │ -001bb8c0: 2027 4164 6420 6e6f 7375 6964 204f 7074   'Add nosuid Opt
│ │ │ -001bb8d0: 696f 6e20 746f 202f 686f 6d65 3a20 4372  ion to /home: Cr
│ │ │ -001bb8e0: 6561 7465 206d 6f75 6e74 5f69 6e66 6f20  eate mount_info 
│ │ │ -001bb8f0: 6469 6374 696f 6e61 7279 2076 6172 6961  dictionary varia
│ │ │ -001bb900: 626c 6527 0a20 2073 6574 5f66 6163 743a  ble'.  set_fact:
│ │ │ -001bb910: 0a20 2020 206d 6f75 6e74 5f69 6e66 6f3a  .    mount_info:
│ │ │ -001bb920: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f7c   '{{ mount_info|
│ │ │ -001bb930: 6465 6661 756c 7428 7b7d 297c 636f 6d62  default({})|comb
│ │ │ -001bb940: 696e 6528 7b69 7465 6d2e 303a 2069 7465  ine({item.0: ite
│ │ │ -001bb950: 6d2e 317d 2920 7d7d 270a 2020 7769 7468  m.1}) }}'.  with
│ │ │ -001bb960: 5f74 6f67 6574 6865 723a 0a20 202d 2027  _together:.  - '
│ │ │ -001bb970: 7b7b 2064 6576 6963 655f 6e61 6d65 2e73  {{ device_name.s
│ │ │ -001bb980: 7464 6f75 745f 6c69 6e65 735b 305d 2e73  tdout_lines[0].s
│ │ │ -001bb990: 706c 6974 2829 207c 206d 6170 2827 276c  plit() | map(''l
│ │ │ -001bb9a0: 6f77 6572 2727 2920 7c20 6c69 7374 207d  ower'') | list }
│ │ │ -001bb9b0: 7d27 0a20 202d 2027 7b7b 2064 6576 6963  }'.  - '{{ devic
│ │ │ -001bb9c0: 655f 6e61 6d65 2e73 7464 6f75 745f 6c69  e_name.stdout_li
│ │ │ -001bb9d0: 6e65 735b 315d 2e73 706c 6974 2829 207c  nes[1].split() |
│ │ │ -001bb9e0: 206c 6973 7420 7d7d 270a 2020 7768 656e   list }}'.  when
│ │ │ -001bb9f0: 3a0a 2020 2d20 2820 6e6f 7420 2820 226b  :.  - ( not ( "k
│ │ │ -001bba00: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ -001bba10: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001bba20: 2061 6e64 2022 626f 6f74 6322 2069 6e20   and "bootc" in 
│ │ │ -001bba30: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001bba40: 636b 6167 6573 0a20 2020 2061 6e64 206e  ckages.    and n
│ │ │ -001bba50: 6f74 2022 6f70 656e 7368 6966 742d 6b75  ot "openshift-ku
│ │ │ -001bba60: 6265 6c65 7422 2069 6e20 616e 7369 626c  belet" in ansibl
│ │ │ -001bba70: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001bba80: 2061 6e64 2022 6f73 7472 6565 2220 696e   and "ostree" in
│ │ │ -001bba90: 2061 6e73 6962 6c65 5f70 726f 635f 636d   ansible_proc_cm
│ │ │ -001bbaa0: 646c 696e 650a 2020 2020 2920 616e 6420  dline.    ) and 
│ │ │ -001bbab0: 6e6f 7420 2820 616e 7369 626c 655f 7669  not ( ansible_vi
│ │ │ -001bbac0: 7274 7561 6c69 7a61 7469 6f6e 5f74 7970  rtualization_typ
│ │ │ -001bbad0: 6520 696e 205b 2264 6f63 6b65 7222 2c20  e in ["docker", 
│ │ │ -001bbae0: 226c 7863 222c 2022 6f70 656e 767a 222c  "lxc", "openvz",
│ │ │ -001bbaf0: 2022 706f 646d 616e 222c 0a20 2020 2022   "podman",.    "
│ │ │ -001bbb00: 636f 6e74 6169 6e65 7222 5d20 2920 290a  container"] ) ).
│ │ │ -001bbb10: 2020 2d20 2722 2f68 6f6d 6522 2069 6e20    - '"/home" in 
│ │ │ -001bbb20: 616e 7369 626c 655f 6d6f 756e 7473 207c  ansible_mounts |
│ │ │ -001bbb30: 206d 6170 2861 7474 7269 6275 7465 3d22   map(attribute="
│ │ │ -001bbb40: 6d6f 756e 7422 2920 7c20 6c69 7374 270a  mount") | list'.
│ │ │ -001bbb50: 2020 2d20 6465 7669 6365 5f6e 616d 652e    - device_name.
│ │ │ -001bbb60: 7374 646f 7574 2069 7320 6465 6669 6e65  stdout is define
│ │ │ -001bbb70: 6420 616e 6420 6465 7669 6365 5f6e 616d  d and device_nam
│ │ │ -001bbb80: 652e 7374 646f 7574 5f6c 696e 6573 2069  e.stdout_lines i
│ │ │ -001bbb90: 7320 6465 6669 6e65 640a 2020 2d20 2864  s defined.  - (d
│ │ │ -001bbba0: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ -001bbbb0: 7420 7c20 6c65 6e67 7468 2026 6774 3b20  t | length > 
│ │ │ -001bbbc0: 3029 0a20 2074 6167 733a 0a20 202d 204e  0).  tags:.  - N
│ │ │ -001bbbd0: 4953 542d 3830 302d 3533 2d41 432d 360a  IST-800-53-AC-6.
│ │ │ -001bbbe0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001bbbf0: 4143 2d36 2831 290a 2020 2d20 4e49 5354  AC-6(1).  - NIST
│ │ │ -001bbc00: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ -001bbc10: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001bbc20: 434d 2d37 2861 290a 2020 2d20 4e49 5354  CM-7(a).  - NIST
│ │ │ -001bbc30: 2d38 3030 2d35 332d 434d 2d37 2862 290a  -800-53-CM-7(b).
│ │ │ -001bbc40: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001bbc50: 4d50 2d37 0a20 202d 2063 6f6e 6669 6775  MP-7.  - configu
│ │ │ -001bbc60: 7265 5f73 7472 6174 6567 790a 2020 2d20  re_strategy.  - 
│ │ │ -001bbc70: 6869 6768 5f64 6973 7275 7074 696f 6e0a  high_disruption.
│ │ │ -001bbc80: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ -001bbc90: 7479 0a20 202d 206d 6564 6975 6d5f 7365  ty.  - medium_se
│ │ │ -001bbca0: 7665 7269 7479 0a20 202d 206d 6f75 6e74  verity.  - mount
│ │ │ -001bbcb0: 5f6f 7074 696f 6e5f 686f 6d65 5f6e 6f73  _option_home_nos
│ │ │ -001bbcc0: 7569 640a 2020 2d20 6e6f 5f72 6562 6f6f  uid.  - no_reboo
│ │ │ -001bbcd0: 745f 6e65 6564 6564 0a0a 2d20 6e61 6d65  t_needed..- name
│ │ │ -001bbce0: 3a20 2741 6464 206e 6f73 7569 6420 4f70  : 'Add nosuid Op
│ │ │ -001bbcf0: 7469 6f6e 2074 6f20 2f68 6f6d 653a 2049  tion to /home: I
│ │ │ -001bbd00: 6620 2f68 6f6d 6520 6e6f 7420 6d6f 756e  f /home not moun
│ │ │ -001bbd10: 7465 642c 2063 7261 6674 206d 6f75 6e74  ted, craft mount
│ │ │ -001bbd20: 5f69 6e66 6f20 6d61 6e75 616c 6c79 270a  _info manually'.
│ │ │ -001bbd30: 2020 7365 745f 6661 6374 3a0a 2020 2020    set_fact:.    
│ │ │ -001bbd40: 6d6f 756e 745f 696e 666f 3a20 277b 7b20  mount_info: '{{ 
│ │ │ -001bbd50: 6d6f 756e 745f 696e 666f 7c64 6566 6175  mount_info|defau
│ │ │ -001bbd60: 6c74 287b 7d29 7c63 6f6d 6269 6e65 287b  lt({})|combine({
│ │ │ -001bbd70: 6974 656d 2e30 3a20 6974 656d 2e31 7d29  item.0: item.1})
│ │ │ -001bbd80: 207d 7d27 0a20 2077 6974 685f 746f 6765   }}'.  with_toge
│ │ │ -001bbd90: 7468 6572 3a0a 2020 2d20 2d20 7461 7267  ther:.  - - targ
│ │ │ -001bbda0: 6574 0a20 2020 202d 2073 6f75 7263 650a  et.    - source.
│ │ │ -001bbdb0: 2020 2020 2d20 6673 7479 7065 0a20 2020      - fstype.   
│ │ │ -001bbdc0: 202d 206f 7074 696f 6e73 0a20 202d 202d   - options.  - -
│ │ │ -001bbdd0: 202f 686f 6d65 0a20 2020 202d 2027 270a   /home.    - ''.
│ │ │ -001bbde0: 2020 2020 2d20 2727 0a20 2020 202d 2064      - ''.    - d
│ │ │ -001bbdf0: 6566 6175 6c74 730a 2020 7768 656e 3a0a  efaults.  when:.
│ │ │ -001bbe00: 2020 2d20 2820 6e6f 7420 2820 226b 6572    - ( not ( "ker
│ │ │ -001bbe10: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ -001bbe20: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ -001bbe30: 6e64 2022 626f 6f74 6322 2069 6e20 616e  nd "bootc" in an
│ │ │ -001bbe40: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001bbe50: 6167 6573 0a20 2020 2061 6e64 206e 6f74  ages.    and not
│ │ │ -001bbe60: 2022 6f70 656e 7368 6966 742d 6b75 6265   "openshift-kube
│ │ │ -001bbe70: 6c65 7422 2069 6e20 616e 7369 626c 655f  let" in ansible_
│ │ │ -001bbe80: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ -001bbe90: 6e64 2022 6f73 7472 6565 2220 696e 2061  nd "ostree" in a
│ │ │ -001bbea0: 6e73 6962 6c65 5f70 726f 635f 636d 646c  nsible_proc_cmdl
│ │ │ -001bbeb0: 696e 650a 2020 2020 2920 616e 6420 6e6f  ine.    ) and no
│ │ │ -001bbec0: 7420 2820 616e 7369 626c 655f 7669 7274  t ( ansible_virt
│ │ │ -001bbed0: 7561 6c69 7a61 7469 6f6e 5f74 7970 6520  ualization_type 
│ │ │ -001bbee0: 696e 205b 2264 6f63 6b65 7222 2c20 226c  in ["docker", "l
│ │ │ -001bbef0: 7863 222c 2022 6f70 656e 767a 222c 2022  xc", "openvz", "
│ │ │ -001bbf00: 706f 646d 616e 222c 0a20 2020 2022 636f  podman",.    "co
│ │ │ -001bbf10: 6e74 6169 6e65 7222 5d20 2920 290a 2020  ntainer"] ) ).  
│ │ │ -001bbf20: 2d20 2722 2f68 6f6d 6522 2069 6e20 616e  - '"/home" in an
│ │ │ -001bbf30: 7369 626c 655f 6d6f 756e 7473 207c 206d  sible_mounts | m
│ │ │ -001bbf40: 6170 2861 7474 7269 6275 7465 3d22 6d6f  ap(attribute="mo
│ │ │ -001bbf50: 756e 7422 2920 7c20 6c69 7374 270a 2020  unt") | list'.  
│ │ │ -001bbf60: 2d20 2822 2d2d 6673 7461 6222 207c 206c  - ("--fstab" | l
│ │ │ -001bbf70: 656e 6774 6820 3d3d 2030 290a 2020 2d20  ength == 0).  - 
│ │ │ -001bbf80: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ -001bbf90: 7574 2069 7320 6465 6669 6e65 6420 616e  ut is defined an
│ │ │ -001bbfa0: 6420 6465 7669 6365 5f6e 616d 652e 7374  d device_name.st
│ │ │ -001bbfb0: 646f 7574 5f6c 696e 6573 2069 7320 6465  dout_lines is de
│ │ │ -001bbfc0: 6669 6e65 640a 2020 2d20 2864 6576 6963  fined.  - (devic
│ │ │ -001bbfd0: 655f 6e61 6d65 2e73 7464 6f75 7420 7c20  e_name.stdout | 
│ │ │ -001bbfe0: 6c65 6e67 7468 203d 3d20 3029 0a20 2074  length == 0).  t
│ │ │ -001bbff0: 6167 733a 0a20 202d 204e 4953 542d 3830  ags:.  - NIST-80
│ │ │ -001bc000: 302d 3533 2d41 432d 360a 2020 2d20 4e49  0-53-AC-6.  - NI
│ │ │ -001bc010: 5354 2d38 3030 2d35 332d 4143 2d36 2831  ST-800-53-AC-6(1
│ │ │ -001bc020: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -001bc030: 332d 434d 2d36 2861 290a 2020 2d20 4e49  3-CM-6(a).  - NI
│ │ │ -001bc040: 5354 2d38 3030 2d35 332d 434d 2d37 2861  ST-800-53-CM-7(a
│ │ │ -001bc050: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -001bc060: 332d 434d 2d37 2862 290a 2020 2d20 4e49  3-CM-7(b).  - NI
│ │ │ -001bc070: 5354 2d38 3030 2d35 332d 4d50 2d37 0a20  ST-800-53-MP-7. 
│ │ │ -001bc080: 202d 2063 6f6e 6669 6775 7265 5f73 7472   - configure_str
│ │ │ -001bc090: 6174 6567 790a 2020 2d20 6869 6768 5f64  ategy.  - high_d
│ │ │ -001bc0a0: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ -001bc0b0: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ -001bc0c0: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ -001bc0d0: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f  .  - mount_optio
│ │ │ -001bc0e0: 6e5f 686f 6d65 5f6e 6f73 7569 640a 2020  n_home_nosuid.  
│ │ │ -001bc0f0: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ -001bc100: 6564 0a0a 2d20 6e61 6d65 3a20 2741 6464  ed..- name: 'Add
│ │ │ -001bc110: 206e 6f73 7569 6420 4f70 7469 6f6e 2074   nosuid Option t
│ │ │ -001bc120: 6f20 2f68 6f6d 653a 204d 616b 6520 7375  o /home: Make su
│ │ │ -001bc130: 7265 206e 6f73 7569 6420 6f70 7469 6f6e  re nosuid option
│ │ │ -001bc140: 2069 7320 7061 7274 206f 6620 7468 6520   is part of the 
│ │ │ -001bc150: 746f 202f 686f 6d65 0a20 2020 206f 7074  to /home.    opt
│ │ │ -001bc160: 696f 6e73 270a 2020 7365 745f 6661 6374  ions'.  set_fact
│ │ │ -001bc170: 3a0a 2020 2020 6d6f 756e 745f 696e 666f  :.    mount_info
│ │ │ -001bc180: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ -001bc190: 207c 2063 6f6d 6269 6e65 2820 7b27 276f   | combine( {''o
│ │ │ -001bc1a0: 7074 696f 6e73 2727 3a27 2727 277e 286d  ptions'':''''~(m
│ │ │ -001bc1b0: 6f75 6e74 5f69 6e66 6f2e 6f70 7469 6f6e  ount_info.option
│ │ │ -001bc1c0: 7320 7c0a 2020 2020 2020 6465 6661 756c  s |.      defaul
│ │ │ -001bc1d0: 7428 2727 2727 2929 7e28 2727 2c27 2720  t(''''))~('','' 
│ │ │ -001bc1e0: 6966 2028 6d6f 756e 745f 696e 666f 2e6f  if (mount_info.o
│ │ │ -001bc1f0: 7074 696f 6e73 207c 2064 6566 6175 6c74  ptions | default
│ │ │ -001bc200: 2827 2727 2729 2920 656c 7365 2027 2727  ('''')) else '''
│ │ │ -001bc210: 2729 7e27 276e 6f73 7569 6427 270a 2020  ')~''nosuid''.  
│ │ │ -001bc220: 2020 2020 7d29 207d 7d27 0a20 2077 6865      }) }}'.  whe
│ │ │ -001bc230: 6e3a 0a20 202d 2028 206e 6f74 2028 2022  n:.  - ( not ( "
│ │ │ -001bc240: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ -001bc250: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -001bc260: 7320 616e 6420 2262 6f6f 7463 2220 696e  s and "bootc" in
│ │ │ -001bc270: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -001bc280: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ -001bc290: 6e6f 7420 226f 7065 6e73 6869 6674 2d6b  not "openshift-k
│ │ │ -001bc2a0: 7562 656c 6574 2220 696e 2061 6e73 6962  ubelet" in ansib
│ │ │ -001bc2b0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -001bc2c0: 7320 616e 6420 226f 7374 7265 6522 2069  s and "ostree" i
│ │ │ -001bc2d0: 6e20 616e 7369 626c 655f 7072 6f63 5f63  n ansible_proc_c
│ │ │ -001bc2e0: 6d64 6c69 6e65 0a20 2020 2029 2061 6e64  mdline.    ) and
│ │ │ -001bc2f0: 206e 6f74 2028 2061 6e73 6962 6c65 5f76   not ( ansible_v
│ │ │ -001bc300: 6972 7475 616c 697a 6174 696f 6e5f 7479  irtualization_ty
│ │ │ -001bc310: 7065 2069 6e20 5b22 646f 636b 6572 222c  pe in ["docker",
│ │ │ -001bc320: 2022 6c78 6322 2c20 226f 7065 6e76 7a22   "lxc", "openvz"
│ │ │ -001bc330: 2c20 2270 6f64 6d61 6e22 2c0a 2020 2020  , "podman",.    
│ │ │ -001bc340: 2263 6f6e 7461 696e 6572 225d 2029 2029  "container"] ) )
│ │ │ -001bc350: 0a20 202d 2027 222f 686f 6d65 2220 696e  .  - '"/home" in
│ │ │ -001bc360: 2061 6e73 6962 6c65 5f6d 6f75 6e74 7320   ansible_mounts 
│ │ │ -001bc370: 7c20 6d61 7028 6174 7472 6962 7574 653d  | map(attribute=
│ │ │ -001bc380: 226d 6f75 6e74 2229 207c 206c 6973 7427  "mount") | list'
│ │ │ -001bc390: 0a20 202d 206d 6f75 6e74 5f69 6e66 6f20  .  - mount_info 
│ │ │ -001bc3a0: 6973 2064 6566 696e 6564 2061 6e64 2022  is defined and "
│ │ │ -001bc3b0: 6e6f 7375 6964 2220 6e6f 7420 696e 2028  nosuid" not in (
│ │ │ -001bc3c0: 6d6f 756e 745f 696e 666f 2e6f 7074 696f  mount_info.optio
│ │ │ -001bc3d0: 6e73 207c 2064 6566 6175 6c74 2827 2729  ns | default('')
│ │ │ -001bc3e0: 290a 2020 7461 6773 3a0a 2020 2d20 4e49  ).  tags:.  - NI
│ │ │ -001bc3f0: 5354 2d38 3030 2d35 332d 4143 2d36 0a20  ST-800-53-AC-6. 
│ │ │ -001bc400: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ -001bc410: 432d 3628 3129 0a20 202d 204e 4953 542d  C-6(1).  - NIST-
│ │ │ -001bc420: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ -001bc430: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -001bc440: 4d2d 3728 6129 0a20 202d 204e 4953 542d  M-7(a).  - NIST-
│ │ │ -001bc450: 3830 302d 3533 2d43 4d2d 3728 6229 0a20  800-53-CM-7(b). 
│ │ │ -001bc460: 202d 204e 4953 542d 3830 302d 3533 2d4d   - NIST-800-53-M
│ │ │ -001bc470: 502d 370a 2020 2d20 636f 6e66 6967 7572  P-7.  - configur
│ │ │ -001bc480: 655f 7374 7261 7465 6779 0a20 202d 2068  e_strategy.  - h
│ │ │ -001bc490: 6967 685f 6469 7372 7570 7469 6f6e 0a20  igh_disruption. 
│ │ │ -001bc4a0: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ -001bc4b0: 790a 2020 2d20 6d65 6469 756d 5f73 6576  y.  - medium_sev
│ │ │ -001bc4c0: 6572 6974 790a 2020 2d20 6d6f 756e 745f  erity.  - mount_
│ │ │ -001bc4d0: 6f70 7469 6f6e 5f68 6f6d 655f 6e6f 7375  option_home_nosu
│ │ │ -001bc4e0: 6964 0a20 202d 206e 6f5f 7265 626f 6f74  id.  - no_reboot
│ │ │ -001bc4f0: 5f6e 6565 6465 640a 0a2d 206e 616d 653a  _needed..- name:
│ │ │ -001bc500: 2027 4164 6420 6e6f 7375 6964 204f 7074   'Add nosuid Opt
│ │ │ -001bc510: 696f 6e20 746f 202f 686f 6d65 3a20 456e  ion to /home: En
│ │ │ -001bc520: 7375 7265 202f 686f 6d65 2069 7320 6d6f  sure /home is mo
│ │ │ -001bc530: 756e 7465 6420 7769 7468 206e 6f73 7569  unted with nosui
│ │ │ -001bc540: 6420 6f70 7469 6f6e 270a 2020 616e 7369  d option'.  ansi
│ │ │ -001bc550: 626c 652e 706f 7369 782e 6d6f 756e 743a  ble.posix.mount:
│ │ │ -001bc560: 0a20 2020 2070 6174 683a 202f 686f 6d65  .    path: /home
│ │ │ -001bc570: 0a20 2020 2073 7263 3a20 277b 7b20 6d6f  .    src: '{{ mo
│ │ │ -001bc580: 756e 745f 696e 666f 2e73 6f75 7263 6520  unt_info.source 
│ │ │ -001bc590: 7c20 6465 6661 756c 7428 2727 2727 2920  | default('''') 
│ │ │ -001bc5a0: 7d7d 270a 2020 2020 6f70 7473 3a20 277b  }}'.    opts: '{
│ │ │ -001bc5b0: 7b20 6d6f 756e 745f 696e 666f 2e6f 7074  { mount_info.opt
│ │ │ -001bc5c0: 696f 6e73 207c 2064 6566 6175 6c74 2827  ions | default('
│ │ │ -001bc5d0: 2727 2729 207d 7d27 0a20 2020 2073 7461  ''') }}'.    sta
│ │ │ -001bc5e0: 7465 3a20 6d6f 756e 7465 640a 2020 2020  te: mounted.    
│ │ │ -001bc5f0: 6673 7479 7065 3a20 277b 7b20 6d6f 756e  fstype: '{{ moun
│ │ │ -001bc600: 745f 696e 666f 2e66 7374 7970 6520 7c20  t_info.fstype | 
│ │ │ -001bc610: 6465 6661 756c 7428 2727 2727 2920 7d7d  default('''') }}
│ │ │ -001bc620: 270a 2020 7265 6769 7374 6572 3a20 6d6f  '.  register: mo
│ │ │ -001bc630: 756e 745f 7265 7375 6c74 0a20 2066 6169  unt_result.  fai
│ │ │ -001bc640: 6c65 645f 7768 656e 3a0a 2020 2d20 6d6f  led_when:.  - mo
│ │ │ -001bc650: 756e 745f 7265 7375 6c74 2069 7320 6661  unt_result is fa
│ │ │ -001bc660: 696c 6564 0a20 202d 2027 2727 7461 7267  iled.  - '''targ
│ │ │ -001bc670: 6574 2069 7320 6275 7379 2727 206e 6f74  et is busy'' not
│ │ │ -001bc680: 2069 6e20 286d 6f75 6e74 5f72 6573 756c   in (mount_resul
│ │ │ -001bc690: 742e 6d73 6720 7c20 6465 6661 756c 7428  t.msg | default(
│ │ │ -001bc6a0: 2727 2727 2929 270a 2020 2d20 2727 2761  ''''))'.  - '''a
│ │ │ -001bc6b0: 6c72 6561 6479 206d 6f75 6e74 6564 2727  lready mounted''
│ │ │ -001bc6c0: 206e 6f74 2069 6e20 286d 6f75 6e74 5f72   not in (mount_r
│ │ │ -001bc6d0: 6573 756c 742e 6d73 6720 7c20 6465 6661  esult.msg | defa
│ │ │ -001bc6e0: 756c 7428 2727 2727 2929 270a 2020 7768  ult(''''))'.  wh
│ │ │ -001bc6f0: 656e 3a0a 2020 2d20 2820 6e6f 7420 2820  en:.  - ( not ( 
│ │ │ -001bc700: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ -001bc710: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001bc720: 6573 2061 6e64 2022 626f 6f74 6322 2069  es and "bootc" i
│ │ │ -001bc730: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -001bc740: 7061 636b 6167 6573 0a20 2020 2061 6e64  packages.    and
│ │ │ -001bc750: 206e 6f74 2022 6f70 656e 7368 6966 742d   not "openshift-
│ │ │ -001bc760: 6b75 6265 6c65 7422 2069 6e20 616e 7369  kubelet" in ansi
│ │ │ -001bc770: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001bc780: 6573 2061 6e64 2022 6f73 7472 6565 2220  es and "ostree" 
│ │ │ -001bc790: 696e 2061 6e73 6962 6c65 5f70 726f 635f  in ansible_proc_
│ │ │ -001bc7a0: 636d 646c 696e 650a 2020 2020 2920 616e  cmdline.    ) an
│ │ │ -001bc7b0: 6420 6e6f 7420 2820 616e 7369 626c 655f  d not ( ansible_
│ │ │ -001bc7c0: 7669 7274 7561 6c69 7a61 7469 6f6e 5f74  virtualization_t
│ │ │ -001bc7d0: 7970 6520 696e 205b 2264 6f63 6b65 7222  ype in ["docker"
│ │ │ -001bc7e0: 2c20 226c 7863 222c 2022 6f70 656e 767a  , "lxc", "openvz
│ │ │ -001bc7f0: 222c 2022 706f 646d 616e 222c 0a20 2020  ", "podman",.   
│ │ │ -001bc800: 2022 636f 6e74 6169 6e65 7222 5d20 2920   "container"] ) 
│ │ │ -001bc810: 290a 2020 2d20 2722 2f68 6f6d 6522 2069  ).  - '"/home" i
│ │ │ -001bc820: 6e20 616e 7369 626c 655f 6d6f 756e 7473  n ansible_mounts
│ │ │ -001bc830: 207c 206d 6170 2861 7474 7269 6275 7465   | map(attribute
│ │ │ -001bc840: 3d22 6d6f 756e 7422 2920 7c20 6c69 7374  ="mount") | list
│ │ │ -001bc850: 270a 2020 2d20 6d6f 756e 745f 696e 666f  '.  - mount_info
│ │ │ -001bc860: 2069 7320 6465 6669 6e65 640a 2020 2d20   is defined.  - 
│ │ │ -001bc870: 2864 6576 6963 655f 6e61 6d65 2e73 7464  (device_name.std
│ │ │ -001bc880: 6f75 7420 6973 2064 6566 696e 6564 2061  out is defined a
│ │ │ -001bc890: 6e64 2028 6465 7669 6365 5f6e 616d 652e  nd (device_name.
│ │ │ -001bc8a0: 7374 646f 7574 207c 206c 656e 6774 6820  stdout | length 
│ │ │ -001bc8b0: 2667 743b 2030 2929 206f 7220 2822 2d2d  > 0)) or ("--
│ │ │ -001bc8c0: 6673 7461 6222 0a20 2020 207c 206c 656e  fstab".    | len
│ │ │ -001bc8d0: 6774 6820 3d3d 2030 290a 2020 7461 6773  gth == 0).  tags
│ │ │ -001bc8e0: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ -001bc8f0: 332d 4143 2d36 0a20 202d 204e 4953 542d  3-AC-6.  - NIST-
│ │ │ -001bc900: 3830 302d 3533 2d41 432d 3628 3129 0a20  800-53-AC-6(1). 
│ │ │ -001bc910: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -001bc920: 4d2d 3628 6129 0a20 202d 204e 4953 542d  M-6(a).  - NIST-
│ │ │ -001bc930: 3830 302d 3533 2d43 4d2d 3728 6129 0a20  800-53-CM-7(a). 
│ │ │ -001bc940: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -001bc950: 4d2d 3728 6229 0a20 202d 204e 4953 542d  M-7(b).  - NIST-
│ │ │ -001bc960: 3830 302d 3533 2d4d 502d 370a 2020 2d20  800-53-MP-7.  - 
│ │ │ -001bc970: 636f 6e66 6967 7572 655f 7374 7261 7465  configure_strate
│ │ │ -001bc980: 6779 0a20 202d 2068 6967 685f 6469 7372  gy.  - high_disr
│ │ │ -001bc990: 7570 7469 6f6e 0a20 202d 206c 6f77 5f63  uption.  - low_c
│ │ │ -001bc9a0: 6f6d 706c 6578 6974 790a 2020 2d20 6d65  omplexity.  - me
│ │ │ -001bc9b0: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ -001bc9c0: 2d20 6d6f 756e 745f 6f70 7469 6f6e 5f68  - mount_option_h
│ │ │ -001bc9d0: 6f6d 655f 6e6f 7375 6964 0a20 202d 206e  ome_nosuid.  - n
│ │ │ -001bc9e0: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ -001bc9f0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ -001bcaa0: 5265 6d65 6469 6174 696f 6e20 5368 656c Remediation Shel │ │ │ -001bcab0: 6c20 7363 7269 7074 20e2 87b2 3c2f 613e l script ... │ │ │ -001bcac0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22

│ │ │ -001bcb70: 2320 5265 6d65 6469 6174 696f 6e20 6973  # Remediation is
│ │ │ -001bcb80: 2061 7070 6c69 6361 626c 6520 6f6e 6c79   applicable only
│ │ │ -001bcb90: 2069 6e20 6365 7274 6169 6e20 706c 6174   in certain plat
│ │ │ -001bcba0: 666f 726d 730a 6966 2028 2021 2028 207b  forms.if ( ! ( {
│ │ │ -001bcbb0: 2072 706d 202d 2d71 7569 6574 202d 7120   rpm --quiet -q 
│ │ │ -001bcbc0: 6b65 726e 656c 203b 7d20 2661 6d70 3b26  kernel ;} &&
│ │ │ -001bcbd0: 616d 703b 207b 2072 706d 202d 2d71 7569  amp; { rpm --qui
│ │ │ -001bcbe0: 6574 202d 7120 626f 6f74 6320 3b7d 2026  et -q bootc ;} &
│ │ │ -001bcbf0: 616d 703b 2661 6d70 3b20 7b20 2120 7270  amp;& { ! rp
│ │ │ -001bcc00: 6d20 2d2d 7175 6965 7420 2d71 206f 7065  m --quiet -q ope
│ │ │ -001bcc10: 6e73 6869 6674 2d6b 7562 656c 6574 203b  nshift-kubelet ;
│ │ │ -001bcc20: 7d20 2661 6d70 3b26 616d 703b 2028 5b20  } && ([ 
│ │ │ -001bcc30: 2d66 202f 7275 6e2f 6f73 7472 6565 2d62  -f /run/ostree-b
│ │ │ -001bcc40: 6f6f 7465 6420 5d20 7c7c 205b 202d 4c20  ooted ] || [ -L 
│ │ │ -001bcc50: 2f6f 7374 7265 6520 5d29 2029 2026 616d  /ostree ]) ) &am
│ │ │ -001bcc60: 703b 2661 6d70 3b20 2120 2820 5b20 2d66  p;& ! ( [ -f
│ │ │ -001bcc70: 202f 2e64 6f63 6b65 7265 6e76 205d 207c   /.dockerenv ] |
│ │ │ -001bcc80: 7c20 5b20 2d66 202f 7275 6e2f 2e63 6f6e  | [ -f /run/.con
│ │ │ -001bcc90: 7461 696e 6572 656e 7620 5d20 2920 2920  tainerenv ] ) ) 
│ │ │ -001bcca0: 2661 6d70 3b26 616d 703b 207b 2028 2066  && { ( f
│ │ │ -001bccb0: 696e 646d 6e74 202d 2d6b 6572 6e65 6c20  indmnt --kernel 
│ │ │ -001bccc0: 222f 686f 6d65 2220 2667 743b 202f 6465  "/home" > /de
│ │ │ -001bccd0: 762f 6e75 6c6c 207c 7c20 6669 6e64 6d6e  v/null || findmn
│ │ │ -001bcce0: 7420 2d2d 6673 7461 6220 222f 686f 6d65  t --fstab "/home
│ │ │ -001bccf0: 2220 2667 743b 202f 6465 762f 6e75 6c6c  " > /dev/null
│ │ │ -001bcd00: 2029 3b20 7d3b 2074 6865 6e0a 0a66 756e   ); }; then..fun
│ │ │ -001bcd10: 6374 696f 6e20 7065 7266 6f72 6d5f 7265  ction perform_re
│ │ │ -001bcd20: 6d65 6469 6174 696f 6e20 7b0a 0a20 2020  mediation {..   
│ │ │ -001bcd30: 200a 2020 2020 2020 2020 2320 7468 6520   .        # the 
│ │ │ -001bcd40: 6d6f 756e 7420 706f 696e 7420 2f68 6f6d  mount point /hom
│ │ │ -001bcd50: 6520 6861 7320 746f 2062 6520 6465 6669  e has to be defi
│ │ │ -001bcd60: 6e65 6420 696e 202f 6574 632f 6673 7461  ned in /etc/fsta
│ │ │ -001bcd70: 620a 2020 2020 2020 2020 2320 6265 666f  b.        # befo
│ │ │ -001bcd80: 7265 2074 6869 7320 7265 6d65 6469 6174  re this remediat
│ │ │ -001bcd90: 696f 6e20 6361 6e20 6265 2065 7865 6375  ion can be execu
│ │ │ -001bcda0: 7465 642e 2049 6e20 6361 7365 2069 7420  ted. In case it 
│ │ │ -001bcdb0: 6973 206e 6f74 2064 6566 696e 6564 2c20  is not defined, 
│ │ │ -001bcdc0: 7468 650a 2020 2020 2020 2020 2320 7265  the.        # re
│ │ │ -001bcdd0: 6d65 6469 6174 696f 6e20 6162 6f72 7473  mediation aborts
│ │ │ -001bcde0: 2061 6e64 206e 6f20 6368 616e 6765 7320   and no changes 
│ │ │ -001bcdf0: 7265 6761 7264 696e 6720 7468 6520 6d6f  regarding the mo
│ │ │ -001bce00: 756e 7420 706f 696e 7420 6172 6520 646f  unt point are do
│ │ │ -001bce10: 6e65 2e0a 2020 2020 2020 2020 6d6f 756e  ne..        moun
│ │ │ -001bce20: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ -001bce30: 6765 7870 3d22 2428 7072 696e 7466 2022  gexp="$(printf "
│ │ │ -001bce40: 5e5b 5b3a 7370 6163 653a 5d5d 2a5b 5e23  ^[[:space:]]*[^#
│ │ │ -001bce50: 5d2e 2a5b 5b3a 7370 6163 653a 5d5d 2573  ].*[[:space:]]%s
│ │ │ -001bce60: 5b5b 3a73 7061 6365 3a5d 5d22 2022 2f68  [[:space:]]" "/h
│ │ │ -001bce70: 6f6d 6522 2922 0a0a 2020 2020 6772 6570  ome")"..    grep
│ │ │ -001bce80: 2022 246d 6f75 6e74 5f70 6f69 6e74 5f6d   "$mount_point_m
│ │ │ -001bce90: 6174 6368 5f72 6567 6578 7022 202d 7120  atch_regexp" -q 
│ │ │ -001bcea0: 2f65 7463 2f66 7374 6162 205c 0a20 2020  /etc/fstab \.   
│ │ │ -001bceb0: 2020 2020 207c 7c20 7b20 6563 686f 2022       || { echo "
│ │ │ -001bcec0: 5468 6520 6d6f 756e 7420 706f 696e 7420  The mount point 
│ │ │ -001bced0: 272f 686f 6d65 2720 6973 206e 6f74 2065  '/home' is not e
│ │ │ -001bcee0: 7665 6e20 696e 202f 6574 632f 6673 7461  ven in /etc/fsta
│ │ │ -001bcef0: 622c 2073 6f20 7765 2063 616e 2774 2073  b, so we can't s
│ │ │ -001bcf00: 6574 2075 7020 6d6f 756e 7420 6f70 7469  et up mount opti
│ │ │ -001bcf10: 6f6e 7322 2026 6774 3b26 616d 703b 323b  ons" >&2;
│ │ │ +001bb080: 6d65 6469 6174 696f 6e20 416e 7369 626c  mediation Ansibl
│ │ │ +001bb090: 6520 736e 6970 7065 7420 e287 b23c 2f61  e snippet ...
Re │ │ │ -001bcb40: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -001bcb50: 6c73 653c 2f74 643e 3c2f 7472 3e3c 2f74 lse
< │ │ │ +001bb130: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +001bb140: 3c74 723e 3c74 683e 4469 7372 7570 7469 Reboot:false
- name: Gather 
│ │ │ +001bb1e0: 7468 6520 7061 636b 6167 6520 6661 6374  the package fact
│ │ │ +001bb1f0: 730a 2020 7061 636b 6167 655f 6661 6374  s.  package_fact
│ │ │ +001bb200: 733a 0a20 2020 206d 616e 6167 6572 3a20  s:.    manager: 
│ │ │ +001bb210: 6175 746f 0a20 2074 6167 733a 0a20 202d  auto.  tags:.  -
│ │ │ +001bb220: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ +001bb230: 360a 2020 2d20 4e49 5354 2d38 3030 2d35  6.  - NIST-800-5
│ │ │ +001bb240: 332d 4143 2d36 2831 290a 2020 2d20 4e49  3-AC-6(1).  - NI
│ │ │ +001bb250: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ +001bb260: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001bb270: 332d 434d 2d37 2861 290a 2020 2d20 4e49  3-CM-7(a).  - NI
│ │ │ +001bb280: 5354 2d38 3030 2d35 332d 434d 2d37 2862  ST-800-53-CM-7(b
│ │ │ +001bb290: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001bb2a0: 332d 4d50 2d37 0a20 202d 2063 6f6e 6669  3-MP-7.  - confi
│ │ │ +001bb2b0: 6775 7265 5f73 7472 6174 6567 790a 2020  gure_strategy.  
│ │ │ +001bb2c0: 2d20 6869 6768 5f64 6973 7275 7074 696f  - high_disruptio
│ │ │ +001bb2d0: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65  n.  - low_comple
│ │ │ +001bb2e0: 7869 7479 0a20 202d 206d 6564 6975 6d5f  xity.  - medium_
│ │ │ +001bb2f0: 7365 7665 7269 7479 0a20 202d 206d 6f75  severity.  - mou
│ │ │ +001bb300: 6e74 5f6f 7074 696f 6e5f 686f 6d65 5f6e  nt_option_home_n
│ │ │ +001bb310: 6f73 7569 640a 2020 2d20 6e6f 5f72 6562  osuid.  - no_reb
│ │ │ +001bb320: 6f6f 745f 6e65 6564 6564 0a0a 2d20 6e61  oot_needed..- na
│ │ │ +001bb330: 6d65 3a20 2741 6464 206e 6f73 7569 6420  me: 'Add nosuid 
│ │ │ +001bb340: 4f70 7469 6f6e 2074 6f20 2f68 6f6d 653a  Option to /home:
│ │ │ +001bb350: 2043 6865 636b 2069 6e66 6f72 6d61 7469   Check informati
│ │ │ +001bb360: 6f6e 2061 7373 6f63 6961 7465 6420 746f  on associated to
│ │ │ +001bb370: 206d 6f75 6e74 706f 696e 7427 0a20 2061   mountpoint'.  a
│ │ │ +001bb380: 6e73 6962 6c65 2e62 7569 6c74 696e 2e63  nsible.builtin.c
│ │ │ +001bb390: 6f6d 6d61 6e64 3a20 6669 6e64 6d6e 7420  ommand: findmnt 
│ │ │ +001bb3a0: 2d2d 6673 7461 6220 272f 686f 6d65 270a  --fstab '/home'.
│ │ │ +001bb3b0: 2020 7265 6769 7374 6572 3a20 6465 7669    register: devi
│ │ │ +001bb3c0: 6365 5f6e 616d 650a 2020 6661 696c 6564  ce_name.  failed
│ │ │ +001bb3d0: 5f77 6865 6e3a 2064 6576 6963 655f 6e61  _when: device_na
│ │ │ +001bb3e0: 6d65 2e72 6320 2667 743b 2031 0a20 2063  me.rc > 1.  c
│ │ │ +001bb3f0: 6861 6e67 6564 5f77 6865 6e3a 2066 616c  hanged_when: fal
│ │ │ +001bb400: 7365 0a20 2063 6865 636b 5f6d 6f64 653a  se.  check_mode:
│ │ │ +001bb410: 2066 616c 7365 0a20 2077 6865 6e3a 0a20   false.  when:. 
│ │ │ +001bb420: 202d 2028 206e 6f74 2028 2022 6b65 726e   - ( not ( "kern
│ │ │ +001bb430: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ +001bb440: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +001bb450: 6420 2262 6f6f 7463 2220 696e 2061 6e73  d "bootc" in ans
│ │ │ +001bb460: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001bb470: 6765 730a 2020 2020 616e 6420 6e6f 7420  ges.    and not 
│ │ │ +001bb480: 226f 7065 6e73 6869 6674 2d6b 7562 656c  "openshift-kubel
│ │ │ +001bb490: 6574 2220 696e 2061 6e73 6962 6c65 5f66  et" in ansible_f
│ │ │ +001bb4a0: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +001bb4b0: 6420 226f 7374 7265 6522 2069 6e20 616e  d "ostree" in an
│ │ │ +001bb4c0: 7369 626c 655f 7072 6f63 5f63 6d64 6c69  sible_proc_cmdli
│ │ │ +001bb4d0: 6e65 0a20 2020 2029 2061 6e64 206e 6f74  ne.    ) and not
│ │ │ +001bb4e0: 2028 2061 6e73 6962 6c65 5f76 6972 7475   ( ansible_virtu
│ │ │ +001bb4f0: 616c 697a 6174 696f 6e5f 7479 7065 2069  alization_type i
│ │ │ +001bb500: 6e20 5b22 646f 636b 6572 222c 2022 6c78  n ["docker", "lx
│ │ │ +001bb510: 6322 2c20 226f 7065 6e76 7a22 2c20 2270  c", "openvz", "p
│ │ │ +001bb520: 6f64 6d61 6e22 2c0a 2020 2020 2263 6f6e  odman",.    "con
│ │ │ +001bb530: 7461 696e 6572 225d 2029 2029 0a20 202d  tainer"] ) ).  -
│ │ │ +001bb540: 2027 222f 686f 6d65 2220 696e 2061 6e73   '"/home" in ans
│ │ │ +001bb550: 6962 6c65 5f6d 6f75 6e74 7320 7c20 6d61  ible_mounts | ma
│ │ │ +001bb560: 7028 6174 7472 6962 7574 653d 226d 6f75  p(attribute="mou
│ │ │ +001bb570: 6e74 2229 207c 206c 6973 7427 0a20 2074  nt") | list'.  t
│ │ │ +001bb580: 6167 733a 0a20 202d 204e 4953 542d 3830  ags:.  - NIST-80
│ │ │ +001bb590: 302d 3533 2d41 432d 360a 2020 2d20 4e49  0-53-AC-6.  - NI
│ │ │ +001bb5a0: 5354 2d38 3030 2d35 332d 4143 2d36 2831  ST-800-53-AC-6(1
│ │ │ +001bb5b0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001bb5c0: 332d 434d 2d36 2861 290a 2020 2d20 4e49  3-CM-6(a).  - NI
│ │ │ +001bb5d0: 5354 2d38 3030 2d35 332d 434d 2d37 2861  ST-800-53-CM-7(a
│ │ │ +001bb5e0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001bb5f0: 332d 434d 2d37 2862 290a 2020 2d20 4e49  3-CM-7(b).  - NI
│ │ │ +001bb600: 5354 2d38 3030 2d35 332d 4d50 2d37 0a20  ST-800-53-MP-7. 
│ │ │ +001bb610: 202d 2063 6f6e 6669 6775 7265 5f73 7472   - configure_str
│ │ │ +001bb620: 6174 6567 790a 2020 2d20 6869 6768 5f64  ategy.  - high_d
│ │ │ +001bb630: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ +001bb640: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ +001bb650: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ +001bb660: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f  .  - mount_optio
│ │ │ +001bb670: 6e5f 686f 6d65 5f6e 6f73 7569 640a 2020  n_home_nosuid.  
│ │ │ +001bb680: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ +001bb690: 6564 0a0a 2d20 6e61 6d65 3a20 2741 6464  ed..- name: 'Add
│ │ │ +001bb6a0: 206e 6f73 7569 6420 4f70 7469 6f6e 2074   nosuid Option t
│ │ │ +001bb6b0: 6f20 2f68 6f6d 653a 2043 7265 6174 6520  o /home: Create 
│ │ │ +001bb6c0: 6d6f 756e 745f 696e 666f 2064 6963 7469  mount_info dicti
│ │ │ +001bb6d0: 6f6e 6172 7920 7661 7269 6162 6c65 270a  onary variable'.
│ │ │ +001bb6e0: 2020 7365 745f 6661 6374 3a0a 2020 2020    set_fact:.    
│ │ │ +001bb6f0: 6d6f 756e 745f 696e 666f 3a20 277b 7b20  mount_info: '{{ 
│ │ │ +001bb700: 6d6f 756e 745f 696e 666f 7c64 6566 6175  mount_info|defau
│ │ │ +001bb710: 6c74 287b 7d29 7c63 6f6d 6269 6e65 287b  lt({})|combine({
│ │ │ +001bb720: 6974 656d 2e30 3a20 6974 656d 2e31 7d29  item.0: item.1})
│ │ │ +001bb730: 207d 7d27 0a20 2077 6974 685f 746f 6765   }}'.  with_toge
│ │ │ +001bb740: 7468 6572 3a0a 2020 2d20 277b 7b20 6465  ther:.  - '{{ de
│ │ │ +001bb750: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ +001bb760: 5f6c 696e 6573 5b30 5d2e 7370 6c69 7428  _lines[0].split(
│ │ │ +001bb770: 2920 7c20 6d61 7028 2727 6c6f 7765 7227  ) | map(''lower'
│ │ │ +001bb780: 2729 207c 206c 6973 7420 7d7d 270a 2020  ') | list }}'.  
│ │ │ +001bb790: 2d20 277b 7b20 6465 7669 6365 5f6e 616d  - '{{ device_nam
│ │ │ +001bb7a0: 652e 7374 646f 7574 5f6c 696e 6573 5b31  e.stdout_lines[1
│ │ │ +001bb7b0: 5d2e 7370 6c69 7428 2920 7c20 6c69 7374  ].split() | list
│ │ │ +001bb7c0: 207d 7d27 0a20 2077 6865 6e3a 0a20 202d   }}'.  when:.  -
│ │ │ +001bb7d0: 2028 206e 6f74 2028 2022 6b65 726e 656c   ( not ( "kernel
│ │ │ +001bb7e0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +001bb7f0: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ +001bb800: 2262 6f6f 7463 2220 696e 2061 6e73 6962  "bootc" in ansib
│ │ │ +001bb810: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001bb820: 730a 2020 2020 616e 6420 6e6f 7420 226f  s.    and not "o
│ │ │ +001bb830: 7065 6e73 6869 6674 2d6b 7562 656c 6574  penshift-kubelet
│ │ │ +001bb840: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +001bb850: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ +001bb860: 226f 7374 7265 6522 2069 6e20 616e 7369  "ostree" in ansi
│ │ │ +001bb870: 626c 655f 7072 6f63 5f63 6d64 6c69 6e65  ble_proc_cmdline
│ │ │ +001bb880: 0a20 2020 2029 2061 6e64 206e 6f74 2028  .    ) and not (
│ │ │ +001bb890: 2061 6e73 6962 6c65 5f76 6972 7475 616c   ansible_virtual
│ │ │ +001bb8a0: 697a 6174 696f 6e5f 7479 7065 2069 6e20  ization_type in 
│ │ │ +001bb8b0: 5b22 646f 636b 6572 222c 2022 6c78 6322  ["docker", "lxc"
│ │ │ +001bb8c0: 2c20 226f 7065 6e76 7a22 2c20 2270 6f64  , "openvz", "pod
│ │ │ +001bb8d0: 6d61 6e22 2c0a 2020 2020 2263 6f6e 7461  man",.    "conta
│ │ │ +001bb8e0: 696e 6572 225d 2029 2029 0a20 202d 2027  iner"] ) ).  - '
│ │ │ +001bb8f0: 222f 686f 6d65 2220 696e 2061 6e73 6962  "/home" in ansib
│ │ │ +001bb900: 6c65 5f6d 6f75 6e74 7320 7c20 6d61 7028  le_mounts | map(
│ │ │ +001bb910: 6174 7472 6962 7574 653d 226d 6f75 6e74  attribute="mount
│ │ │ +001bb920: 2229 207c 206c 6973 7427 0a20 202d 2064  ") | list'.  - d
│ │ │ +001bb930: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ +001bb940: 7420 6973 2064 6566 696e 6564 2061 6e64  t is defined and
│ │ │ +001bb950: 2064 6576 6963 655f 6e61 6d65 2e73 7464   device_name.std
│ │ │ +001bb960: 6f75 745f 6c69 6e65 7320 6973 2064 6566  out_lines is def
│ │ │ +001bb970: 696e 6564 0a20 202d 2028 6465 7669 6365  ined.  - (device
│ │ │ +001bb980: 5f6e 616d 652e 7374 646f 7574 207c 206c  _name.stdout | l
│ │ │ +001bb990: 656e 6774 6820 2667 743b 2030 290a 2020  ength > 0).  
│ │ │ +001bb9a0: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38  tags:.  - NIST-8
│ │ │ +001bb9b0: 3030 2d35 332d 4143 2d36 0a20 202d 204e  00-53-AC-6.  - N
│ │ │ +001bb9c0: 4953 542d 3830 302d 3533 2d41 432d 3628  IST-800-53-AC-6(
│ │ │ +001bb9d0: 3129 0a20 202d 204e 4953 542d 3830 302d  1).  - NIST-800-
│ │ │ +001bb9e0: 3533 2d43 4d2d 3628 6129 0a20 202d 204e  53-CM-6(a).  - N
│ │ │ +001bb9f0: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ +001bba00: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ +001bba10: 3533 2d43 4d2d 3728 6229 0a20 202d 204e  53-CM-7(b).  - N
│ │ │ +001bba20: 4953 542d 3830 302d 3533 2d4d 502d 370a  IST-800-53-MP-7.
│ │ │ +001bba30: 2020 2d20 636f 6e66 6967 7572 655f 7374    - configure_st
│ │ │ +001bba40: 7261 7465 6779 0a20 202d 2068 6967 685f  rategy.  - high_
│ │ │ +001bba50: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ +001bba60: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ +001bba70: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ +001bba80: 790a 2020 2d20 6d6f 756e 745f 6f70 7469  y.  - mount_opti
│ │ │ +001bba90: 6f6e 5f68 6f6d 655f 6e6f 7375 6964 0a20  on_home_nosuid. 
│ │ │ +001bbaa0: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ +001bbab0: 6465 640a 0a2d 206e 616d 653a 2027 4164  ded..- name: 'Ad
│ │ │ +001bbac0: 6420 6e6f 7375 6964 204f 7074 696f 6e20  d nosuid Option 
│ │ │ +001bbad0: 746f 202f 686f 6d65 3a20 4966 202f 686f  to /home: If /ho
│ │ │ +001bbae0: 6d65 206e 6f74 206d 6f75 6e74 6564 2c20  me not mounted, 
│ │ │ +001bbaf0: 6372 6166 7420 6d6f 756e 745f 696e 666f  craft mount_info
│ │ │ +001bbb00: 206d 616e 7561 6c6c 7927 0a20 2073 6574   manually'.  set
│ │ │ +001bbb10: 5f66 6163 743a 0a20 2020 206d 6f75 6e74  _fact:.    mount
│ │ │ +001bbb20: 5f69 6e66 6f3a 2027 7b7b 206d 6f75 6e74  _info: '{{ mount
│ │ │ +001bbb30: 5f69 6e66 6f7c 6465 6661 756c 7428 7b7d  _info|default({}
│ │ │ +001bbb40: 297c 636f 6d62 696e 6528 7b69 7465 6d2e  )|combine({item.
│ │ │ +001bbb50: 303a 2069 7465 6d2e 317d 2920 7d7d 270a  0: item.1}) }}'.
│ │ │ +001bbb60: 2020 7769 7468 5f74 6f67 6574 6865 723a    with_together:
│ │ │ +001bbb70: 0a20 202d 202d 2074 6172 6765 740a 2020  .  - - target.  
│ │ │ +001bbb80: 2020 2d20 736f 7572 6365 0a20 2020 202d    - source.    -
│ │ │ +001bbb90: 2066 7374 7970 650a 2020 2020 2d20 6f70   fstype.    - op
│ │ │ +001bbba0: 7469 6f6e 730a 2020 2d20 2d20 2f68 6f6d  tions.  - - /hom
│ │ │ +001bbbb0: 650a 2020 2020 2d20 2727 0a20 2020 202d  e.    - ''.    -
│ │ │ +001bbbc0: 2027 270a 2020 2020 2d20 6465 6661 756c   ''.    - defaul
│ │ │ +001bbbd0: 7473 0a20 2077 6865 6e3a 0a20 202d 2028  ts.  when:.  - (
│ │ │ +001bbbe0: 206e 6f74 2028 2022 6b65 726e 656c 2220   not ( "kernel" 
│ │ │ +001bbbf0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001bbc00: 2e70 6163 6b61 6765 7320 616e 6420 2262  .packages and "b
│ │ │ +001bbc10: 6f6f 7463 2220 696e 2061 6e73 6962 6c65  ootc" in ansible
│ │ │ +001bbc20: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ +001bbc30: 2020 2020 616e 6420 6e6f 7420 226f 7065      and not "ope
│ │ │ +001bbc40: 6e73 6869 6674 2d6b 7562 656c 6574 2220  nshift-kubelet" 
│ │ │ +001bbc50: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001bbc60: 2e70 6163 6b61 6765 7320 616e 6420 226f  .packages and "o
│ │ │ +001bbc70: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ +001bbc80: 655f 7072 6f63 5f63 6d64 6c69 6e65 0a20  e_proc_cmdline. 
│ │ │ +001bbc90: 2020 2029 2061 6e64 206e 6f74 2028 2061     ) and not ( a
│ │ │ +001bbca0: 6e73 6962 6c65 5f76 6972 7475 616c 697a  nsible_virtualiz
│ │ │ +001bbcb0: 6174 696f 6e5f 7479 7065 2069 6e20 5b22  ation_type in ["
│ │ │ +001bbcc0: 646f 636b 6572 222c 2022 6c78 6322 2c20  docker", "lxc", 
│ │ │ +001bbcd0: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61  "openvz", "podma
│ │ │ +001bbce0: 6e22 2c0a 2020 2020 2263 6f6e 7461 696e  n",.    "contain
│ │ │ +001bbcf0: 6572 225d 2029 2029 0a20 202d 2027 222f  er"] ) ).  - '"/
│ │ │ +001bbd00: 686f 6d65 2220 696e 2061 6e73 6962 6c65  home" in ansible
│ │ │ +001bbd10: 5f6d 6f75 6e74 7320 7c20 6d61 7028 6174  _mounts | map(at
│ │ │ +001bbd20: 7472 6962 7574 653d 226d 6f75 6e74 2229  tribute="mount")
│ │ │ +001bbd30: 207c 206c 6973 7427 0a20 202d 2028 222d   | list'.  - ("-
│ │ │ +001bbd40: 2d66 7374 6162 2220 7c20 6c65 6e67 7468  -fstab" | length
│ │ │ +001bbd50: 203d 3d20 3029 0a20 202d 2064 6576 6963   == 0).  - devic
│ │ │ +001bbd60: 655f 6e61 6d65 2e73 7464 6f75 7420 6973  e_name.stdout is
│ │ │ +001bbd70: 2064 6566 696e 6564 2061 6e64 2064 6576   defined and dev
│ │ │ +001bbd80: 6963 655f 6e61 6d65 2e73 7464 6f75 745f  ice_name.stdout_
│ │ │ +001bbd90: 6c69 6e65 7320 6973 2064 6566 696e 6564  lines is defined
│ │ │ +001bbda0: 0a20 202d 2028 6465 7669 6365 5f6e 616d  .  - (device_nam
│ │ │ +001bbdb0: 652e 7374 646f 7574 207c 206c 656e 6774  e.stdout | lengt
│ │ │ +001bbdc0: 6820 3d3d 2030 290a 2020 7461 6773 3a0a  h == 0).  tags:.
│ │ │ +001bbdd0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001bbde0: 4143 2d36 0a20 202d 204e 4953 542d 3830  AC-6.  - NIST-80
│ │ │ +001bbdf0: 302d 3533 2d41 432d 3628 3129 0a20 202d  0-53-AC-6(1).  -
│ │ │ +001bbe00: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +001bbe10: 3628 6129 0a20 202d 204e 4953 542d 3830  6(a).  - NIST-80
│ │ │ +001bbe20: 302d 3533 2d43 4d2d 3728 6129 0a20 202d  0-53-CM-7(a).  -
│ │ │ +001bbe30: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +001bbe40: 3728 6229 0a20 202d 204e 4953 542d 3830  7(b).  - NIST-80
│ │ │ +001bbe50: 302d 3533 2d4d 502d 370a 2020 2d20 636f  0-53-MP-7.  - co
│ │ │ +001bbe60: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ +001bbe70: 0a20 202d 2068 6967 685f 6469 7372 7570  .  - high_disrup
│ │ │ +001bbe80: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d  tion.  - low_com
│ │ │ +001bbe90: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ +001bbea0: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ +001bbeb0: 6d6f 756e 745f 6f70 7469 6f6e 5f68 6f6d  mount_option_hom
│ │ │ +001bbec0: 655f 6e6f 7375 6964 0a20 202d 206e 6f5f  e_nosuid.  - no_
│ │ │ +001bbed0: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ +001bbee0: 206e 616d 653a 2027 4164 6420 6e6f 7375   name: 'Add nosu
│ │ │ +001bbef0: 6964 204f 7074 696f 6e20 746f 202f 686f  id Option to /ho
│ │ │ +001bbf00: 6d65 3a20 4d61 6b65 2073 7572 6520 6e6f  me: Make sure no
│ │ │ +001bbf10: 7375 6964 206f 7074 696f 6e20 6973 2070  suid option is p
│ │ │ +001bbf20: 6172 7420 6f66 2074 6865 2074 6f20 2f68  art of the to /h
│ │ │ +001bbf30: 6f6d 650a 2020 2020 6f70 7469 6f6e 7327  ome.    options'
│ │ │ +001bbf40: 0a20 2073 6574 5f66 6163 743a 0a20 2020  .  set_fact:.   
│ │ │ +001bbf50: 206d 6f75 6e74 5f69 6e66 6f3a 2027 7b7b   mount_info: '{{
│ │ │ +001bbf60: 206d 6f75 6e74 5f69 6e66 6f20 7c20 636f   mount_info | co
│ │ │ +001bbf70: 6d62 696e 6528 207b 2727 6f70 7469 6f6e  mbine( {''option
│ │ │ +001bbf80: 7327 273a 2727 2727 7e28 6d6f 756e 745f  s'':''''~(mount_
│ │ │ +001bbf90: 696e 666f 2e6f 7074 696f 6e73 207c 0a20  info.options |. 
│ │ │ +001bbfa0: 2020 2020 2064 6566 6175 6c74 2827 2727       default('''
│ │ │ +001bbfb0: 2729 297e 2827 272c 2727 2069 6620 286d  '))~('','' if (m
│ │ │ +001bbfc0: 6f75 6e74 5f69 6e66 6f2e 6f70 7469 6f6e  ount_info.option
│ │ │ +001bbfd0: 7320 7c20 6465 6661 756c 7428 2727 2727  s | default(''''
│ │ │ +001bbfe0: 2929 2065 6c73 6520 2727 2727 297e 2727  )) else '''')~''
│ │ │ +001bbff0: 6e6f 7375 6964 2727 0a20 2020 2020 207d  nosuid''.      }
│ │ │ +001bc000: 2920 7d7d 270a 2020 7768 656e 3a0a 2020  ) }}'.  when:.  
│ │ │ +001bc010: 2d20 2820 6e6f 7420 2820 226b 6572 6e65  - ( not ( "kerne
│ │ │ +001bc020: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ +001bc030: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ +001bc040: 2022 626f 6f74 6322 2069 6e20 616e 7369   "bootc" in ansi
│ │ │ +001bc050: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001bc060: 6573 0a20 2020 2061 6e64 206e 6f74 2022  es.    and not "
│ │ │ +001bc070: 6f70 656e 7368 6966 742d 6b75 6265 6c65  openshift-kubele
│ │ │ +001bc080: 7422 2069 6e20 616e 7369 626c 655f 6661  t" in ansible_fa
│ │ │ +001bc090: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ +001bc0a0: 2022 6f73 7472 6565 2220 696e 2061 6e73   "ostree" in ans
│ │ │ +001bc0b0: 6962 6c65 5f70 726f 635f 636d 646c 696e  ible_proc_cmdlin
│ │ │ +001bc0c0: 650a 2020 2020 2920 616e 6420 6e6f 7420  e.    ) and not 
│ │ │ +001bc0d0: 2820 616e 7369 626c 655f 7669 7274 7561  ( ansible_virtua
│ │ │ +001bc0e0: 6c69 7a61 7469 6f6e 5f74 7970 6520 696e  lization_type in
│ │ │ +001bc0f0: 205b 2264 6f63 6b65 7222 2c20 226c 7863   ["docker", "lxc
│ │ │ +001bc100: 222c 2022 6f70 656e 767a 222c 2022 706f  ", "openvz", "po
│ │ │ +001bc110: 646d 616e 222c 0a20 2020 2022 636f 6e74  dman",.    "cont
│ │ │ +001bc120: 6169 6e65 7222 5d20 2920 290a 2020 2d20  ainer"] ) ).  - 
│ │ │ +001bc130: 2722 2f68 6f6d 6522 2069 6e20 616e 7369  '"/home" in ansi
│ │ │ +001bc140: 626c 655f 6d6f 756e 7473 207c 206d 6170  ble_mounts | map
│ │ │ +001bc150: 2861 7474 7269 6275 7465 3d22 6d6f 756e  (attribute="moun
│ │ │ +001bc160: 7422 2920 7c20 6c69 7374 270a 2020 2d20  t") | list'.  - 
│ │ │ +001bc170: 6d6f 756e 745f 696e 666f 2069 7320 6465  mount_info is de
│ │ │ +001bc180: 6669 6e65 6420 616e 6420 226e 6f73 7569  fined and "nosui
│ │ │ +001bc190: 6422 206e 6f74 2069 6e20 286d 6f75 6e74  d" not in (mount
│ │ │ +001bc1a0: 5f69 6e66 6f2e 6f70 7469 6f6e 7320 7c20  _info.options | 
│ │ │ +001bc1b0: 6465 6661 756c 7428 2727 2929 0a20 2074  default('')).  t
│ │ │ +001bc1c0: 6167 733a 0a20 202d 204e 4953 542d 3830  ags:.  - NIST-80
│ │ │ +001bc1d0: 302d 3533 2d41 432d 360a 2020 2d20 4e49  0-53-AC-6.  - NI
│ │ │ +001bc1e0: 5354 2d38 3030 2d35 332d 4143 2d36 2831  ST-800-53-AC-6(1
│ │ │ +001bc1f0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001bc200: 332d 434d 2d36 2861 290a 2020 2d20 4e49  3-CM-6(a).  - NI
│ │ │ +001bc210: 5354 2d38 3030 2d35 332d 434d 2d37 2861  ST-800-53-CM-7(a
│ │ │ +001bc220: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001bc230: 332d 434d 2d37 2862 290a 2020 2d20 4e49  3-CM-7(b).  - NI
│ │ │ +001bc240: 5354 2d38 3030 2d35 332d 4d50 2d37 0a20  ST-800-53-MP-7. 
│ │ │ +001bc250: 202d 2063 6f6e 6669 6775 7265 5f73 7472   - configure_str
│ │ │ +001bc260: 6174 6567 790a 2020 2d20 6869 6768 5f64  ategy.  - high_d
│ │ │ +001bc270: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ +001bc280: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ +001bc290: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ +001bc2a0: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f  .  - mount_optio
│ │ │ +001bc2b0: 6e5f 686f 6d65 5f6e 6f73 7569 640a 2020  n_home_nosuid.  
│ │ │ +001bc2c0: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ +001bc2d0: 6564 0a0a 2d20 6e61 6d65 3a20 2741 6464  ed..- name: 'Add
│ │ │ +001bc2e0: 206e 6f73 7569 6420 4f70 7469 6f6e 2074   nosuid Option t
│ │ │ +001bc2f0: 6f20 2f68 6f6d 653a 2045 6e73 7572 6520  o /home: Ensure 
│ │ │ +001bc300: 2f68 6f6d 6520 6973 206d 6f75 6e74 6564  /home is mounted
│ │ │ +001bc310: 2077 6974 6820 6e6f 7375 6964 206f 7074   with nosuid opt
│ │ │ +001bc320: 696f 6e27 0a20 2061 6e73 6962 6c65 2e70  ion'.  ansible.p
│ │ │ +001bc330: 6f73 6978 2e6d 6f75 6e74 3a0a 2020 2020  osix.mount:.    
│ │ │ +001bc340: 7061 7468 3a20 2f68 6f6d 650a 2020 2020  path: /home.    
│ │ │ +001bc350: 7372 633a 2027 7b7b 206d 6f75 6e74 5f69  src: '{{ mount_i
│ │ │ +001bc360: 6e66 6f2e 736f 7572 6365 207c 2064 6566  nfo.source | def
│ │ │ +001bc370: 6175 6c74 2827 2727 2729 207d 7d27 0a20  ault('''') }}'. 
│ │ │ +001bc380: 2020 206f 7074 733a 2027 7b7b 206d 6f75     opts: '{{ mou
│ │ │ +001bc390: 6e74 5f69 6e66 6f2e 6f70 7469 6f6e 7320  nt_info.options 
│ │ │ +001bc3a0: 7c20 6465 6661 756c 7428 2727 2727 2920  | default('''') 
│ │ │ +001bc3b0: 7d7d 270a 2020 2020 7374 6174 653a 206d  }}'.    state: m
│ │ │ +001bc3c0: 6f75 6e74 6564 0a20 2020 2066 7374 7970  ounted.    fstyp
│ │ │ +001bc3d0: 653a 2027 7b7b 206d 6f75 6e74 5f69 6e66  e: '{{ mount_inf
│ │ │ +001bc3e0: 6f2e 6673 7479 7065 207c 2064 6566 6175  o.fstype | defau
│ │ │ +001bc3f0: 6c74 2827 2727 2729 207d 7d27 0a20 2072  lt('''') }}'.  r
│ │ │ +001bc400: 6567 6973 7465 723a 206d 6f75 6e74 5f72  egister: mount_r
│ │ │ +001bc410: 6573 756c 740a 2020 6661 696c 6564 5f77  esult.  failed_w
│ │ │ +001bc420: 6865 6e3a 0a20 202d 206d 6f75 6e74 5f72  hen:.  - mount_r
│ │ │ +001bc430: 6573 756c 7420 6973 2066 6169 6c65 640a  esult is failed.
│ │ │ +001bc440: 2020 2d20 2727 2774 6172 6765 7420 6973    - '''target is
│ │ │ +001bc450: 2062 7573 7927 2720 6e6f 7420 696e 2028   busy'' not in (
│ │ │ +001bc460: 6d6f 756e 745f 7265 7375 6c74 2e6d 7367  mount_result.msg
│ │ │ +001bc470: 207c 2064 6566 6175 6c74 2827 2727 2729   | default('''')
│ │ │ +001bc480: 2927 0a20 202d 2027 2727 616c 7265 6164  )'.  - '''alread
│ │ │ +001bc490: 7920 6d6f 756e 7465 6427 2720 6e6f 7420  y mounted'' not 
│ │ │ +001bc4a0: 696e 2028 6d6f 756e 745f 7265 7375 6c74  in (mount_result
│ │ │ +001bc4b0: 2e6d 7367 207c 2064 6566 6175 6c74 2827  .msg | default('
│ │ │ +001bc4c0: 2727 2729 2927 0a20 2077 6865 6e3a 0a20  '''))'.  when:. 
│ │ │ +001bc4d0: 202d 2028 206e 6f74 2028 2022 6b65 726e   - ( not ( "kern
│ │ │ +001bc4e0: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ +001bc4f0: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +001bc500: 6420 2262 6f6f 7463 2220 696e 2061 6e73  d "bootc" in ans
│ │ │ +001bc510: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001bc520: 6765 730a 2020 2020 616e 6420 6e6f 7420  ges.    and not 
│ │ │ +001bc530: 226f 7065 6e73 6869 6674 2d6b 7562 656c  "openshift-kubel
│ │ │ +001bc540: 6574 2220 696e 2061 6e73 6962 6c65 5f66  et" in ansible_f
│ │ │ +001bc550: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +001bc560: 6420 226f 7374 7265 6522 2069 6e20 616e  d "ostree" in an
│ │ │ +001bc570: 7369 626c 655f 7072 6f63 5f63 6d64 6c69  sible_proc_cmdli
│ │ │ +001bc580: 6e65 0a20 2020 2029 2061 6e64 206e 6f74  ne.    ) and not
│ │ │ +001bc590: 2028 2061 6e73 6962 6c65 5f76 6972 7475   ( ansible_virtu
│ │ │ +001bc5a0: 616c 697a 6174 696f 6e5f 7479 7065 2069  alization_type i
│ │ │ +001bc5b0: 6e20 5b22 646f 636b 6572 222c 2022 6c78  n ["docker", "lx
│ │ │ +001bc5c0: 6322 2c20 226f 7065 6e76 7a22 2c20 2270  c", "openvz", "p
│ │ │ +001bc5d0: 6f64 6d61 6e22 2c0a 2020 2020 2263 6f6e  odman",.    "con
│ │ │ +001bc5e0: 7461 696e 6572 225d 2029 2029 0a20 202d  tainer"] ) ).  -
│ │ │ +001bc5f0: 2027 222f 686f 6d65 2220 696e 2061 6e73   '"/home" in ans
│ │ │ +001bc600: 6962 6c65 5f6d 6f75 6e74 7320 7c20 6d61  ible_mounts | ma
│ │ │ +001bc610: 7028 6174 7472 6962 7574 653d 226d 6f75  p(attribute="mou
│ │ │ +001bc620: 6e74 2229 207c 206c 6973 7427 0a20 202d  nt") | list'.  -
│ │ │ +001bc630: 206d 6f75 6e74 5f69 6e66 6f20 6973 2064   mount_info is d
│ │ │ +001bc640: 6566 696e 6564 0a20 202d 2028 6465 7669  efined.  - (devi
│ │ │ +001bc650: 6365 5f6e 616d 652e 7374 646f 7574 2069  ce_name.stdout i
│ │ │ +001bc660: 7320 6465 6669 6e65 6420 616e 6420 2864  s defined and (d
│ │ │ +001bc670: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ +001bc680: 7420 7c20 6c65 6e67 7468 2026 6774 3b20  t | length > 
│ │ │ +001bc690: 3029 2920 6f72 2028 222d 2d66 7374 6162  0)) or ("--fstab
│ │ │ +001bc6a0: 220a 2020 2020 7c20 6c65 6e67 7468 203d  ".    | length =
│ │ │ +001bc6b0: 3d20 3029 0a20 2074 6167 733a 0a20 202d  = 0).  tags:.  -
│ │ │ +001bc6c0: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ +001bc6d0: 360a 2020 2d20 4e49 5354 2d38 3030 2d35  6.  - NIST-800-5
│ │ │ +001bc6e0: 332d 4143 2d36 2831 290a 2020 2d20 4e49  3-AC-6(1).  - NI
│ │ │ +001bc6f0: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ +001bc700: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001bc710: 332d 434d 2d37 2861 290a 2020 2d20 4e49  3-CM-7(a).  - NI
│ │ │ +001bc720: 5354 2d38 3030 2d35 332d 434d 2d37 2862  ST-800-53-CM-7(b
│ │ │ +001bc730: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001bc740: 332d 4d50 2d37 0a20 202d 2063 6f6e 6669  3-MP-7.  - confi
│ │ │ +001bc750: 6775 7265 5f73 7472 6174 6567 790a 2020  gure_strategy.  
│ │ │ +001bc760: 2d20 6869 6768 5f64 6973 7275 7074 696f  - high_disruptio
│ │ │ +001bc770: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65  n.  - low_comple
│ │ │ +001bc780: 7869 7479 0a20 202d 206d 6564 6975 6d5f  xity.  - medium_
│ │ │ +001bc790: 7365 7665 7269 7479 0a20 202d 206d 6f75  severity.  - mou
│ │ │ +001bc7a0: 6e74 5f6f 7074 696f 6e5f 686f 6d65 5f6e  nt_option_home_n
│ │ │ +001bc7b0: 6f73 7569 640a 2020 2d20 6e6f 5f72 6562  osuid.  - no_reb
│ │ │ +001bc7c0: 6f6f 745f 6e65 6564 6564 0a3c 2f63 6f64  oot_needed.
Remed │ │ │ +001bc880: 6961 7469 6f6e 2053 6865 6c6c 2073 6372 iation Shell scr │ │ │ +001bc890: 6970 7420 e287 b23c 2f61 3e3c 6272 3e3c ipt ...
< │ │ │ +001bc8a0: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +001bc8b0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +001bc8c0: 7365 2220 6964 3d22 6964 3530 3522 3e3c se" id="id505">< │ │ │ +001bc8d0: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +001bc8e0: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +001bc8f0: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +001bc900: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +001bc910: 3e3c 7472 3e3c 7468 3e52 6562 6f6f 743a >
C │ │ │ +001bb120: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ +001bb150: 6f6e 3a3c 2f74 683e 3c74 643e 6869 6768 on:high │ │ │ +001bb160: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +001bb1a0: 793a 3c2f 7468 3e3c 7464 3e63 6f6e 6669 y:confi │ │ │ +001bb1b0: 6775 7265 3c2f 7464 3e3c 2f74 723e 3c2f gure
Reboot: │ │ │ +001bc920: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false
│ │ │ +001bc940: 3c70 7265 3e3c 636f 6465 3e23 2052 656d
# Rem
│ │ │ +001bc950: 6564 6961 7469 6f6e 2069 7320 6170 706c  ediation is appl
│ │ │ +001bc960: 6963 6162 6c65 206f 6e6c 7920 696e 2063  icable only in c
│ │ │ +001bc970: 6572 7461 696e 2070 6c61 7466 6f72 6d73  ertain platforms
│ │ │ +001bc980: 0a69 6620 2820 2120 2820 7b20 7270 6d20  .if ( ! ( { rpm 
│ │ │ +001bc990: 2d2d 7175 6965 7420 2d71 206b 6572 6e65  --quiet -q kerne
│ │ │ +001bc9a0: 6c20 3b7d 2026 616d 703b 2661 6d70 3b20  l ;} && 
│ │ │ +001bc9b0: 7b20 7270 6d20 2d2d 7175 6965 7420 2d71  { rpm --quiet -q
│ │ │ +001bc9c0: 2062 6f6f 7463 203b 7d20 2661 6d70 3b26   bootc ;} &&
│ │ │ +001bc9d0: 616d 703b 207b 2021 2072 706d 202d 2d71  amp; { ! rpm --q
│ │ │ +001bc9e0: 7569 6574 202d 7120 6f70 656e 7368 6966  uiet -q openshif
│ │ │ +001bc9f0: 742d 6b75 6265 6c65 7420 3b7d 2026 616d  t-kubelet ;} &am
│ │ │ +001bca00: 703b 2661 6d70 3b20 285b 202d 6620 2f72  p;& ([ -f /r
│ │ │ +001bca10: 756e 2f6f 7374 7265 652d 626f 6f74 6564  un/ostree-booted
│ │ │ +001bca20: 205d 207c 7c20 5b20 2d4c 202f 6f73 7472   ] || [ -L /ostr
│ │ │ +001bca30: 6565 205d 2920 2920 2661 6d70 3b26 616d  ee ]) ) &&am
│ │ │ +001bca40: 703b 2021 2028 205b 202d 6620 2f2e 646f  p; ! ( [ -f /.do
│ │ │ +001bca50: 636b 6572 656e 7620 5d20 7c7c 205b 202d  ckerenv ] || [ -
│ │ │ +001bca60: 6620 2f72 756e 2f2e 636f 6e74 6169 6e65  f /run/.containe
│ │ │ +001bca70: 7265 6e76 205d 2029 2029 2026 616d 703b  renv ] ) ) &
│ │ │ +001bca80: 2661 6d70 3b20 7b20 2820 6669 6e64 6d6e  & { ( findmn
│ │ │ +001bca90: 7420 2d2d 6b65 726e 656c 2022 2f68 6f6d  t --kernel "/hom
│ │ │ +001bcaa0: 6522 2026 6774 3b20 2f64 6576 2f6e 756c  e" > /dev/nul
│ │ │ +001bcab0: 6c20 7c7c 2066 696e 646d 6e74 202d 2d66  l || findmnt --f
│ │ │ +001bcac0: 7374 6162 2022 2f68 6f6d 6522 2026 6774  stab "/home" >
│ │ │ +001bcad0: 3b20 2f64 6576 2f6e 756c 6c20 293b 207d  ; /dev/null ); }
│ │ │ +001bcae0: 3b20 7468 656e 0a0a 6675 6e63 7469 6f6e  ; then..function
│ │ │ +001bcaf0: 2070 6572 666f 726d 5f72 656d 6564 6961   perform_remedia
│ │ │ +001bcb00: 7469 6f6e 207b 0a0a 2020 2020 0a20 2020  tion {..    .   
│ │ │ +001bcb10: 2020 2020 2023 2074 6865 206d 6f75 6e74       # the mount
│ │ │ +001bcb20: 2070 6f69 6e74 202f 686f 6d65 2068 6173   point /home has
│ │ │ +001bcb30: 2074 6f20 6265 2064 6566 696e 6564 2069   to be defined i
│ │ │ +001bcb40: 6e20 2f65 7463 2f66 7374 6162 0a20 2020  n /etc/fstab.   
│ │ │ +001bcb50: 2020 2020 2023 2062 6566 6f72 6520 7468       # before th
│ │ │ +001bcb60: 6973 2072 656d 6564 6961 7469 6f6e 2063  is remediation c
│ │ │ +001bcb70: 616e 2062 6520 6578 6563 7574 6564 2e20  an be executed. 
│ │ │ +001bcb80: 496e 2063 6173 6520 6974 2069 7320 6e6f  In case it is no
│ │ │ +001bcb90: 7420 6465 6669 6e65 642c 2074 6865 0a20  t defined, the. 
│ │ │ +001bcba0: 2020 2020 2020 2023 2072 656d 6564 6961         # remedia
│ │ │ +001bcbb0: 7469 6f6e 2061 626f 7274 7320 616e 6420  tion aborts and 
│ │ │ +001bcbc0: 6e6f 2063 6861 6e67 6573 2072 6567 6172  no changes regar
│ │ │ +001bcbd0: 6469 6e67 2074 6865 206d 6f75 6e74 2070  ding the mount p
│ │ │ +001bcbe0: 6f69 6e74 2061 7265 2064 6f6e 652e 0a20  oint are done.. 
│ │ │ +001bcbf0: 2020 2020 2020 206d 6f75 6e74 5f70 6f69         mount_poi
│ │ │ +001bcc00: 6e74 5f6d 6174 6368 5f72 6567 6578 703d  nt_match_regexp=
│ │ │ +001bcc10: 2224 2870 7269 6e74 6620 225e 5b5b 3a73  "$(printf "^[[:s
│ │ │ +001bcc20: 7061 6365 3a5d 5d2a 5b5e 235d 2e2a 5b5b  pace:]]*[^#].*[[
│ │ │ +001bcc30: 3a73 7061 6365 3a5d 5d25 735b 5b3a 7370  :space:]]%s[[:sp
│ │ │ +001bcc40: 6163 653a 5d5d 2220 222f 686f 6d65 2229  ace:]]" "/home")
│ │ │ +001bcc50: 220a 0a20 2020 2067 7265 7020 2224 6d6f  "..    grep "$mo
│ │ │ +001bcc60: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ +001bcc70: 7265 6765 7870 2220 2d71 202f 6574 632f  regexp" -q /etc/
│ │ │ +001bcc80: 6673 7461 6220 5c0a 2020 2020 2020 2020  fstab \.        
│ │ │ +001bcc90: 7c7c 207b 2065 6368 6f20 2254 6865 206d  || { echo "The m
│ │ │ +001bcca0: 6f75 6e74 2070 6f69 6e74 2027 2f68 6f6d  ount point '/hom
│ │ │ +001bccb0: 6527 2069 7320 6e6f 7420 6576 656e 2069  e' is not even i
│ │ │ +001bccc0: 6e20 2f65 7463 2f66 7374 6162 2c20 736f  n /etc/fstab, so
│ │ │ +001bccd0: 2077 6520 6361 6e27 7420 7365 7420 7570   we can't set up
│ │ │ +001bcce0: 206d 6f75 6e74 206f 7074 696f 6e73 2220   mount options" 
│ │ │ +001bccf0: 2667 743b 2661 6d70 3b32 3b0a 2020 2020  >&2;.    
│ │ │ +001bcd00: 2020 2020 2020 2020 2020 2020 6563 686f              echo
│ │ │ +001bcd10: 2022 4e6f 7420 7265 6d65 6469 6174 696e   "Not remediatin
│ │ │ +001bcd20: 672c 2062 6563 6175 7365 2074 6865 7265  g, because there
│ │ │ +001bcd30: 2069 7320 6e6f 2072 6563 6f72 6420 6f66   is no record of
│ │ │ +001bcd40: 202f 686f 6d65 2069 6e20 2f65 7463 2f66   /home in /etc/f
│ │ │ +001bcd50: 7374 6162 2220 2667 743b 2661 6d70 3b32  stab" >&2
│ │ │ +001bcd60: 3b20 7265 7475 726e 2031 3b20 7d0a 2020  ; return 1; }.  
│ │ │ +001bcd70: 2020 0a0a 0a20 2020 206d 6f75 6e74 5f70    ...    mount_p
│ │ │ +001bcd80: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ +001bcd90: 703d 2224 2870 7269 6e74 6620 225e 5b5b  p="$(printf "^[[
│ │ │ +001bcda0: 3a73 7061 6365 3a5d 5d2a 5b5e 235d 2e2a  :space:]]*[^#].*
│ │ │ +001bcdb0: 5b5b 3a73 7061 6365 3a5d 5d25 735b 5b3a  [[:space:]]%s[[:
│ │ │ +001bcdc0: 7370 6163 653a 5d5d 2220 2f68 6f6d 6529  space:]]" /home)
│ │ │ +001bcdd0: 220a 0a20 2020 2023 2049 6620 7468 6520  "..    # If the 
│ │ │ +001bcde0: 6d6f 756e 7420 706f 696e 7420 6973 206e  mount point is n
│ │ │ +001bcdf0: 6f74 2069 6e20 2f65 7463 2f66 7374 6162  ot in /etc/fstab
│ │ │ +001bce00: 2c20 6765 7420 7072 6576 696f 7573 206d  , get previous m
│ │ │ +001bce10: 6f75 6e74 206f 7074 696f 6e73 2066 726f  ount options fro
│ │ │ +001bce20: 6d20 2f65 7463 2f6d 7461 620a 2020 2020  m /etc/mtab.    
│ │ │ +001bce30: 6966 2021 2067 7265 7020 2d71 2022 246d  if ! grep -q "$m
│ │ │ +001bce40: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ +001bce50: 5f72 6567 6578 7022 202f 6574 632f 6673  _regexp" /etc/fs
│ │ │ +001bce60: 7461 623b 2074 6865 6e0a 2020 2020 2020  tab; then.      
│ │ │ +001bce70: 2020 2320 7275 6e74 696d 6520 6f70 7473    # runtime opts
│ │ │ +001bce80: 2077 6974 686f 7574 2073 6f6d 6520 6175   without some au
│ │ │ +001bce90: 746f 6d61 7469 6320 6b65 726e 656c 2f75  tomatic kernel/u
│ │ │ +001bcea0: 7365 7273 7061 6365 2d61 6464 6564 2064  serspace-added d
│ │ │ +001bceb0: 6566 6175 6c74 730a 2020 2020 2020 2020  efaults.        
│ │ │ +001bcec0: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ +001bced0: 7074 733d 2428 6772 6570 2022 246d 6f75  pts=$(grep "$mou
│ │ │ +001bcee0: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ +001bcef0: 6567 6578 7022 202f 6574 632f 6d74 6162  egexp" /etc/mtab
│ │ │ +001bcf00: 207c 2068 6561 6420 2d31 207c 2020 6177   | head -1 |  aw
│ │ │ +001bcf10: 6b20 277b 7072 696e 7420 2434 7d27 205c  k '{print $4}' \
│ │ │  001bcf20: 0a20 2020 2020 2020 2020 2020 2020 2020  .               
│ │ │ -001bcf30: 2065 6368 6f20 224e 6f74 2072 656d 6564   echo "Not remed
│ │ │ -001bcf40: 6961 7469 6e67 2c20 6265 6361 7573 6520  iating, because 
│ │ │ -001bcf50: 7468 6572 6520 6973 206e 6f20 7265 636f  there is no reco
│ │ │ -001bcf60: 7264 206f 6620 2f68 6f6d 6520 696e 202f  rd of /home in /
│ │ │ -001bcf70: 6574 632f 6673 7461 6222 2026 6774 3b26  etc/fstab" >&
│ │ │ -001bcf80: 616d 703b 323b 2072 6574 7572 6e20 313b  amp;2; return 1;
│ │ │ -001bcf90: 207d 0a20 2020 200a 0a0a 2020 2020 6d6f   }.    ...    mo
│ │ │ -001bcfa0: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ -001bcfb0: 7265 6765 7870 3d22 2428 7072 696e 7466  regexp="$(printf
│ │ │ -001bcfc0: 2022 5e5b 5b3a 7370 6163 653a 5d5d 2a5b   "^[[:space:]]*[
│ │ │ -001bcfd0: 5e23 5d2e 2a5b 5b3a 7370 6163 653a 5d5d  ^#].*[[:space:]]
│ │ │ -001bcfe0: 2573 5b5b 3a73 7061 6365 3a5d 5d22 202f  %s[[:space:]]" /
│ │ │ -001bcff0: 686f 6d65 2922 0a0a 2020 2020 2320 4966  home)"..    # If
│ │ │ -001bd000: 2074 6865 206d 6f75 6e74 2070 6f69 6e74   the mount point
│ │ │ -001bd010: 2069 7320 6e6f 7420 696e 202f 6574 632f   is not in /etc/
│ │ │ -001bd020: 6673 7461 622c 2067 6574 2070 7265 7669  fstab, get previ
│ │ │ -001bd030: 6f75 7320 6d6f 756e 7420 6f70 7469 6f6e  ous mount option
│ │ │ -001bd040: 7320 6672 6f6d 202f 6574 632f 6d74 6162  s from /etc/mtab
│ │ │ -001bd050: 0a20 2020 2069 6620 2120 6772 6570 202d  .    if ! grep -
│ │ │ -001bd060: 7120 2224 6d6f 756e 745f 706f 696e 745f  q "$mount_point_
│ │ │ -001bd070: 6d61 7463 685f 7265 6765 7870 2220 2f65  match_regexp" /e
│ │ │ -001bd080: 7463 2f66 7374 6162 3b20 7468 656e 0a20  tc/fstab; then. 
│ │ │ -001bd090: 2020 2020 2020 2023 2072 756e 7469 6d65         # runtime
│ │ │ -001bd0a0: 206f 7074 7320 7769 7468 6f75 7420 736f   opts without so
│ │ │ -001bd0b0: 6d65 2061 7574 6f6d 6174 6963 206b 6572  me automatic ker
│ │ │ -001bd0c0: 6e65 6c2f 7573 6572 7370 6163 652d 6164  nel/userspace-ad
│ │ │ -001bd0d0: 6465 6420 6465 6661 756c 7473 0a20 2020  ded defaults.   
│ │ │ -001bd0e0: 2020 2020 2070 7265 7669 6f75 735f 6d6f       previous_mo
│ │ │ -001bd0f0: 756e 745f 6f70 7473 3d24 2867 7265 7020  unt_opts=$(grep 
│ │ │ -001bd100: 2224 6d6f 756e 745f 706f 696e 745f 6d61  "$mount_point_ma
│ │ │ -001bd110: 7463 685f 7265 6765 7870 2220 2f65 7463  tch_regexp" /etc
│ │ │ -001bd120: 2f6d 7461 6220 7c20 6865 6164 202d 3120  /mtab | head -1 
│ │ │ -001bd130: 7c20 2061 776b 2027 7b70 7269 6e74 2024  |  awk '{print $
│ │ │ -001bd140: 347d 2720 5c0a 2020 2020 2020 2020 2020  4}' \.          
│ │ │ -001bd150: 2020 2020 2020 2020 2020 7c20 7365 6420            | sed 
│ │ │ -001bd160: 2d45 2022 732f 2872 777c 6465 6661 756c  -E "s/(rw|defaul
│ │ │ -001bd170: 7473 7c73 6563 6c61 6265 6c7c 6e6f 7375  ts|seclabel|nosu
│ │ │ -001bd180: 6964 2928 2c7c 2429 2f2f 673b 732f 2c24  id)(,|$)//g;s/,$
│ │ │ -001bd190: 2f2f 2229 0a20 2020 2020 2020 205b 2022  //").        [ "
│ │ │ -001bd1a0: 2470 7265 7669 6f75 735f 6d6f 756e 745f  $previous_mount_
│ │ │ -001bd1b0: 6f70 7473 2220 5d20 2661 6d70 3b26 616d  opts" ] &&am
│ │ │ -001bd1c0: 703b 2070 7265 7669 6f75 735f 6d6f 756e  p; previous_moun
│ │ │ -001bd1d0: 745f 6f70 7473 2b3d 222c 220a 2020 2020  t_opts+=",".    
│ │ │ -001bd1e0: 2020 2020 2320 496e 2069 736f 3936 3630      # In iso9660
│ │ │ -001bd1f0: 2066 696c 6573 7973 7465 6d73 206d 7461   filesystems mta
│ │ │ -001bd200: 6220 636f 756c 6420 6465 7363 7269 6265  b could describe
│ │ │ -001bd210: 2061 2022 626c 6f63 6b73 697a 6522 2076   a "blocksize" v
│ │ │ -001bd220: 616c 7565 2c20 7468 6973 2073 686f 756c  alue, this shoul
│ │ │ -001bd230: 6420 6265 2072 6566 6c65 6374 6564 2069  d be reflected i
│ │ │ -001bd240: 6e0a 2020 2020 2020 2020 2320 6673 7461  n.        # fsta
│ │ │ -001bd250: 6220 6173 2022 626c 6f63 6b22 2e20 2054  b as "block".  T
│ │ │ -001bd260: 6865 206e 6578 7420 7661 7269 6162 6c65  he next variable
│ │ │ -001bd270: 2069 7320 746f 2073 6174 6973 6679 2073   is to satisfy s
│ │ │ -001bd280: 6865 6c6c 6368 6563 6b20 5343 3230 3530  hellcheck SC2050
│ │ │ -001bd290: 2e0a 2020 2020 2020 2020 6673 5f74 7970  ..        fs_typ
│ │ │ -001bd2a0: 653d 2222 0a20 2020 2020 2020 2069 6620  e="".        if 
│ │ │ -001bd2b0: 5b20 2022 2466 735f 7479 7065 2220 3d3d  [  "$fs_type" ==
│ │ │ -001bd2c0: 2022 6973 6f39 3636 3022 205d 203b 2074   "iso9660" ] ; t
│ │ │ -001bd2d0: 6865 6e0a 2020 2020 2020 2020 2020 2020  hen.            
│ │ │ -001bd2e0: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ -001bd2f0: 7074 733d 2428 7365 6420 2773 2f62 6c6f  pts=$(sed 's/blo
│ │ │ -001bd300: 636b 7369 7a65 3d2f 626c 6f63 6b3d 2f27  cksize=/block=/'
│ │ │ -001bd310: 2026 6c74 3b26 6c74 3b26 6c74 3b20 2224   <<< "$
│ │ │ -001bd320: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ -001bd330: 7074 7322 290a 2020 2020 2020 2020 6669  pts").        fi
│ │ │ -001bd340: 0a20 2020 2020 2020 2065 6368 6f20 2220  .        echo " 
│ │ │ -001bd350: 2f68 6f6d 6520 2064 6566 6175 6c74 732c  /home  defaults,
│ │ │ -001bd360: 247b 7072 6576 696f 7573 5f6d 6f75 6e74  ${previous_mount
│ │ │ -001bd370: 5f6f 7074 737d 6e6f 7375 6964 2030 2030  _opts}nosuid 0 0
│ │ │ -001bd380: 2220 2667 743b 2667 743b 202f 6574 632f  " >> /etc/
│ │ │ -001bd390: 6673 7461 620a 2020 2020 2320 4966 2074  fstab.    # If t
│ │ │ -001bd3a0: 6865 206d 6f75 6e74 5f6f 7074 206f 7074  he mount_opt opt
│ │ │ -001bd3b0: 696f 6e20 6973 206e 6f74 2061 6c72 6561  ion is not alrea
│ │ │ -001bd3c0: 6479 2069 6e20 7468 6520 6d6f 756e 7420  dy in the mount 
│ │ │ -001bd3d0: 706f 696e 7427 7320 2f65 7463 2f66 7374  point's /etc/fst
│ │ │ -001bd3e0: 6162 2065 6e74 7279 2c20 6164 6420 6974  ab entry, add it
│ │ │ -001bd3f0: 0a20 2020 2065 6c69 6620 2120 6772 6570  .    elif ! grep
│ │ │ -001bd400: 2022 246d 6f75 6e74 5f70 6f69 6e74 5f6d   "$mount_point_m
│ │ │ -001bd410: 6174 6368 5f72 6567 6578 7022 202f 6574  atch_regexp" /et
│ │ │ -001bd420: 632f 6673 7461 6220 7c20 6772 6570 202d  c/fstab | grep -
│ │ │ -001bd430: 7120 226e 6f73 7569 6422 3b20 7468 656e  q "nosuid"; then
│ │ │ -001bd440: 0a20 2020 2020 2020 2070 7265 7669 6f75  .        previou
│ │ │ -001bd450: 735f 6d6f 756e 745f 6f70 7473 3d24 2867  s_mount_opts=$(g
│ │ │ -001bd460: 7265 7020 2224 6d6f 756e 745f 706f 696e  rep "$mount_poin
│ │ │ -001bd470: 745f 6d61 7463 685f 7265 6765 7870 2220  t_match_regexp" 
│ │ │ -001bd480: 2f65 7463 2f66 7374 6162 207c 2061 776b  /etc/fstab | awk
│ │ │ -001bd490: 2027 7b70 7269 6e74 2024 347d 2729 0a20   '{print $4}'). 
│ │ │ -001bd4a0: 2020 2020 2020 2073 6564 202d 6920 2273         sed -i "s
│ │ │ -001bd4b0: 7c5c 2824 7b6d 6f75 6e74 5f70 6f69 6e74  |\(${mount_point
│ │ │ -001bd4c0: 5f6d 6174 6368 5f72 6567 6578 707d 2e2a  _match_regexp}.*
│ │ │ -001bd4d0: 247b 7072 6576 696f 7573 5f6d 6f75 6e74  ${previous_mount
│ │ │ -001bd4e0: 5f6f 7074 737d 5c29 7c5c 312c 6e6f 7375  _opts}\)|\1,nosu
│ │ │ -001bd4f0: 6964 7c22 202f 6574 632f 6673 7461 620a  id|" /etc/fstab.
│ │ │ -001bd500: 2020 2020 6669 0a0a 0a20 2020 2069 6620      fi...    if 
│ │ │ -001bd510: 6d6b 6469 7220 2d70 2022 2f68 6f6d 6522  mkdir -p "/home"
│ │ │ -001bd520: 3b20 7468 656e 0a20 2020 2020 2020 2069  ; then.        i
│ │ │ -001bd530: 6620 6d6f 756e 7470 6f69 6e74 202d 7120  f mountpoint -q 
│ │ │ -001bd540: 222f 686f 6d65 223b 2074 6865 6e0a 2020  "/home"; then.  
│ │ │ -001bd550: 2020 2020 2020 2020 2020 6d6f 756e 7420            mount 
│ │ │ -001bd560: 2d6f 2072 656d 6f75 6e74 202d 2d74 6172  -o remount --tar
│ │ │ -001bd570: 6765 7420 222f 686f 6d65 220a 2020 2020  get "/home".    
│ │ │ -001bd580: 2020 2020 6669 0a20 2020 2066 690a 7d0a      fi.    fi.}.
│ │ │ -001bd590: 0a70 6572 666f 726d 5f72 656d 6564 6961  .perform_remedia
│ │ │ -001bd5a0: 7469 6f6e 0a0a 656c 7365 0a20 2020 2026  tion..else.    &
│ │ │ -001bd5b0: 6774 3b26 616d 703b 3220 6563 686f 2027  gt;&2 echo '
│ │ │ -001bd5c0: 5265 6d65 6469 6174 696f 6e20 6973 206e  Remediation is n
│ │ │ -001bd5d0: 6f74 2061 7070 6c69 6361 626c 652c 206e  ot applicable, n
│ │ │ -001bd5e0: 6f74 6869 6e67 2077 6173 2064 6f6e 6527  othing was done'
│ │ │ -001bd5f0: 0a66 690a 3c2f 636f 6465 3e3c 2f70 7265  .fi.
R │ │ │ +001bd480: 656d 6564 6961 7469 6f6e 2041 6e61 636f emediation Anaco │ │ │ +001bd490: 6e64 6120 736e 6970 7065 7420 e287 b23c nda snippet ...< │ │ │ +001bd4a0: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
│ │ │ +001bd570: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +001bd580: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f

│ │ │ +001bd5d0: 0a70 6172 7420 2f68 6f6d 6520 2d2d 6d6f  .part /home --mo
│ │ │ +001bd5e0: 756e 746f 7074 696f 6e73 3d22 6e6f 7375  untoptions="nosu
│ │ │ +001bd5f0: 6964 220a 3c2f 636f 6465 3e3c 2f70 7265  id".
< │ │ │ 001bd620: 2f74 6162 6c65 3e3c 2f74 643e 3c2f 7472 /table>Remediati │ │ │ -001be670: 6f6e 2041 6e61 636f 6e64 6120 736e 6970 on Anaconda snip │ │ │ -001be680: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ -001be690: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -001be6a0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -001be6b0: 7365 2220 6964 3d22 6964 3530 3822 3e3c se" id="id508">< │ │ │ -001be6c0: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ -001be6d0: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ -001be6e0: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ -001be6f0: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ -001be700: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Disruption:< │ │ │ -001be750: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ -001be780: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy: │ │ │ -001be7a0: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
Complexity:low
Disrup │ │ │ +001bd550: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6869 tion:hi │ │ │ +001bd560: 6768 3c2f 7464 3e3c 2f74 723e 3c74 723e gh
Reboot:false
Strat │ │ │ +001bd5a0: 6567 793a 3c2f 7468 3e3c 7464 3e65 6e61 egy:ena │ │ │ +001bd5b0: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Complex │ │ │ -001be710: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ -001be720: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
high
Rebo │ │ │ -001be760: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ -001be770: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
enable
.part /t │ │ │ -001be7c0: 6d70 202d 2d6d 6f75 6e74 6f70 7469 6f6e mp --mountoption │ │ │ -001be7d0: 733d 226e 6f64 6576 220a 3c2f 636f 6465 s="nodev".
Remedi │ │ │ -001be890: 6174 696f 6e20 416e 7369 626c 6520 736e ation Ansible sn │ │ │ -001be8a0: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ -001be950: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c
- n
│ │ │ -001be9e0: 616d 653a 2047 6174 6865 7220 7468 6520  ame: Gather the 
│ │ │ -001be9f0: 7061 636b 6167 6520 6661 6374 730a 2020  package facts.  
│ │ │ -001bea00: 7061 636b 6167 655f 6661 6374 733a 0a20  package_facts:. 
│ │ │ -001bea10: 2020 206d 616e 6167 6572 3a20 6175 746f     manager: auto
│ │ │ -001bea20: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ -001bea30: 542d 3830 302d 3533 2d41 432d 360a 2020  T-800-53-AC-6.  
│ │ │ -001bea40: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ -001bea50: 2d36 2831 290a 2020 2d20 4e49 5354 2d38  -6(1).  - NIST-8
│ │ │ -001bea60: 3030 2d35 332d 434d 2d36 2861 290a 2020  00-53-CM-6(a).  
│ │ │ -001bea70: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -001bea80: 2d37 2861 290a 2020 2d20 4e49 5354 2d38  -7(a).  - NIST-8
│ │ │ -001bea90: 3030 2d35 332d 434d 2d37 2862 290a 2020  00-53-CM-7(b).  
│ │ │ -001beaa0: 2d20 4e49 5354 2d38 3030 2d35 332d 4d50  - NIST-800-53-MP
│ │ │ -001beab0: 2d37 0a20 202d 2063 6f6e 6669 6775 7265  -7.  - configure
│ │ │ -001beac0: 5f73 7472 6174 6567 790a 2020 2d20 6869  _strategy.  - hi
│ │ │ -001bead0: 6768 5f64 6973 7275 7074 696f 6e0a 2020  gh_disruption.  
│ │ │ -001beae0: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ -001beaf0: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ -001beb00: 7269 7479 0a20 202d 206d 6f75 6e74 5f6f  rity.  - mount_o
│ │ │ -001beb10: 7074 696f 6e5f 746d 705f 6e6f 6465 760a  ption_tmp_nodev.
│ │ │ -001beb20: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ -001beb30: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741  eded..- name: 'A
│ │ │ -001beb40: 6464 206e 6f64 6576 204f 7074 696f 6e20  dd nodev Option 
│ │ │ -001beb50: 746f 202f 746d 703a 2043 6865 636b 2069  to /tmp: Check i
│ │ │ -001beb60: 6e66 6f72 6d61 7469 6f6e 2061 7373 6f63  nformation assoc
│ │ │ -001beb70: 6961 7465 6420 746f 206d 6f75 6e74 706f  iated to mountpo
│ │ │ -001beb80: 696e 7427 0a20 2061 6e73 6962 6c65 2e62  int'.  ansible.b
│ │ │ -001beb90: 7569 6c74 696e 2e63 6f6d 6d61 6e64 3a20  uiltin.command: 
│ │ │ -001beba0: 6669 6e64 6d6e 7420 2d2d 6673 7461 6220  findmnt --fstab 
│ │ │ -001bebb0: 272f 746d 7027 0a20 2072 6567 6973 7465  '/tmp'.  registe
│ │ │ -001bebc0: 723a 2064 6576 6963 655f 6e61 6d65 0a20  r: device_name. 
│ │ │ -001bebd0: 2066 6169 6c65 645f 7768 656e 3a20 6465   failed_when: de
│ │ │ -001bebe0: 7669 6365 5f6e 616d 652e 7263 2026 6774  vice_name.rc >
│ │ │ -001bebf0: 3b20 310a 2020 6368 616e 6765 645f 7768  ; 1.  changed_wh
│ │ │ -001bec00: 656e 3a20 6661 6c73 650a 2020 6368 6563  en: false.  chec
│ │ │ -001bec10: 6b5f 6d6f 6465 3a20 6661 6c73 650a 2020  k_mode: false.  
│ │ │ -001bec20: 7768 656e 3a0a 2020 2d20 2820 6e6f 7420  when:.  - ( not 
│ │ │ -001bec30: 2820 226b 6572 6e65 6c22 2069 6e20 616e  ( "kernel" in an
│ │ │ -001bec40: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001bec50: 6167 6573 2061 6e64 2022 626f 6f74 6322  ages and "bootc"
│ │ │ -001bec60: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001bec70: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ -001bec80: 6e64 206e 6f74 2022 6f70 656e 7368 6966  nd not "openshif
│ │ │ -001bec90: 742d 6b75 6265 6c65 7422 2069 6e20 616e  t-kubelet" in an
│ │ │ -001beca0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001becb0: 6167 6573 2061 6e64 2022 6f73 7472 6565  ages and "ostree
│ │ │ -001becc0: 2220 696e 2061 6e73 6962 6c65 5f70 726f  " in ansible_pro
│ │ │ -001becd0: 635f 636d 646c 696e 650a 2020 2020 2920  c_cmdline.    ) 
│ │ │ -001bece0: 616e 6420 6e6f 7420 2820 616e 7369 626c  and not ( ansibl
│ │ │ -001becf0: 655f 7669 7274 7561 6c69 7a61 7469 6f6e  e_virtualization
│ │ │ -001bed00: 5f74 7970 6520 696e 205b 2264 6f63 6b65  _type in ["docke
│ │ │ -001bed10: 7222 2c20 226c 7863 222c 2022 6f70 656e  r", "lxc", "open
│ │ │ -001bed20: 767a 222c 2022 706f 646d 616e 222c 0a20  vz", "podman",. 
│ │ │ -001bed30: 2020 2022 636f 6e74 6169 6e65 7222 5d20     "container"] 
│ │ │ -001bed40: 2920 290a 2020 2d20 2722 2f74 6d70 2220  ) ).  - '"/tmp" 
│ │ │ -001bed50: 696e 2061 6e73 6962 6c65 5f6d 6f75 6e74  in ansible_mount
│ │ │ -001bed60: 7320 7c20 6d61 7028 6174 7472 6962 7574  s | map(attribut
│ │ │ -001bed70: 653d 226d 6f75 6e74 2229 207c 206c 6973  e="mount") | lis
│ │ │ -001bed80: 7427 0a20 2074 6167 733a 0a20 202d 204e  t'.  tags:.  - N
│ │ │ -001bed90: 4953 542d 3830 302d 3533 2d41 432d 360a  IST-800-53-AC-6.
│ │ │ -001beda0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001bedb0: 4143 2d36 2831 290a 2020 2d20 4e49 5354  AC-6(1).  - NIST
│ │ │ -001bedc0: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ -001bedd0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001bede0: 434d 2d37 2861 290a 2020 2d20 4e49 5354  CM-7(a).  - NIST
│ │ │ -001bedf0: 2d38 3030 2d35 332d 434d 2d37 2862 290a  -800-53-CM-7(b).
│ │ │ -001bee00: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001bee10: 4d50 2d37 0a20 202d 2063 6f6e 6669 6775  MP-7.  - configu
│ │ │ -001bee20: 7265 5f73 7472 6174 6567 790a 2020 2d20  re_strategy.  - 
│ │ │ -001bee30: 6869 6768 5f64 6973 7275 7074 696f 6e0a  high_disruption.
│ │ │ -001bee40: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ -001bee50: 7479 0a20 202d 206d 6564 6975 6d5f 7365  ty.  - medium_se
│ │ │ -001bee60: 7665 7269 7479 0a20 202d 206d 6f75 6e74  verity.  - mount
│ │ │ -001bee70: 5f6f 7074 696f 6e5f 746d 705f 6e6f 6465  _option_tmp_node
│ │ │ -001bee80: 760a 2020 2d20 6e6f 5f72 6562 6f6f 745f  v.  - no_reboot_
│ │ │ -001bee90: 6e65 6564 6564 0a0a 2d20 6e61 6d65 3a20  needed..- name: 
│ │ │ -001beea0: 2741 6464 206e 6f64 6576 204f 7074 696f  'Add nodev Optio
│ │ │ -001beeb0: 6e20 746f 202f 746d 703a 2043 7265 6174  n to /tmp: Creat
│ │ │ -001beec0: 6520 6d6f 756e 745f 696e 666f 2064 6963  e mount_info dic
│ │ │ -001beed0: 7469 6f6e 6172 7920 7661 7269 6162 6c65  tionary variable
│ │ │ -001beee0: 270a 2020 7365 745f 6661 6374 3a0a 2020  '.  set_fact:.  
│ │ │ -001beef0: 2020 6d6f 756e 745f 696e 666f 3a20 277b    mount_info: '{
│ │ │ -001bef00: 7b20 6d6f 756e 745f 696e 666f 7c64 6566  { mount_info|def
│ │ │ -001bef10: 6175 6c74 287b 7d29 7c63 6f6d 6269 6e65  ault({})|combine
│ │ │ -001bef20: 287b 6974 656d 2e30 3a20 6974 656d 2e31  ({item.0: item.1
│ │ │ -001bef30: 7d29 207d 7d27 0a20 2077 6974 685f 746f  }) }}'.  with_to
│ │ │ -001bef40: 6765 7468 6572 3a0a 2020 2d20 277b 7b20  gether:.  - '{{ 
│ │ │ -001bef50: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ -001bef60: 7574 5f6c 696e 6573 5b30 5d2e 7370 6c69  ut_lines[0].spli
│ │ │ -001bef70: 7428 2920 7c20 6d61 7028 2727 6c6f 7765  t() | map(''lowe
│ │ │ -001bef80: 7227 2729 207c 206c 6973 7420 7d7d 270a  r'') | list }}'.
│ │ │ -001bef90: 2020 2d20 277b 7b20 6465 7669 6365 5f6e    - '{{ device_n
│ │ │ -001befa0: 616d 652e 7374 646f 7574 5f6c 696e 6573  ame.stdout_lines
│ │ │ -001befb0: 5b31 5d2e 7370 6c69 7428 2920 7c20 6c69  [1].split() | li
│ │ │ -001befc0: 7374 207d 7d27 0a20 2077 6865 6e3a 0a20  st }}'.  when:. 
│ │ │ -001befd0: 202d 2028 206e 6f74 2028 2022 6b65 726e   - ( not ( "kern
│ │ │ -001befe0: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ -001beff0: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ -001bf000: 6420 2262 6f6f 7463 2220 696e 2061 6e73  d "bootc" in ans
│ │ │ -001bf010: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001bf020: 6765 730a 2020 2020 616e 6420 6e6f 7420  ges.    and not 
│ │ │ -001bf030: 226f 7065 6e73 6869 6674 2d6b 7562 656c  "openshift-kubel
│ │ │ -001bf040: 6574 2220 696e 2061 6e73 6962 6c65 5f66  et" in ansible_f
│ │ │ -001bf050: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ -001bf060: 6420 226f 7374 7265 6522 2069 6e20 616e  d "ostree" in an
│ │ │ -001bf070: 7369 626c 655f 7072 6f63 5f63 6d64 6c69  sible_proc_cmdli
│ │ │ -001bf080: 6e65 0a20 2020 2029 2061 6e64 206e 6f74  ne.    ) and not
│ │ │ -001bf090: 2028 2061 6e73 6962 6c65 5f76 6972 7475   ( ansible_virtu
│ │ │ -001bf0a0: 616c 697a 6174 696f 6e5f 7479 7065 2069  alization_type i
│ │ │ -001bf0b0: 6e20 5b22 646f 636b 6572 222c 2022 6c78  n ["docker", "lx
│ │ │ -001bf0c0: 6322 2c20 226f 7065 6e76 7a22 2c20 2270  c", "openvz", "p
│ │ │ -001bf0d0: 6f64 6d61 6e22 2c0a 2020 2020 2263 6f6e  odman",.    "con
│ │ │ -001bf0e0: 7461 696e 6572 225d 2029 2029 0a20 202d  tainer"] ) ).  -
│ │ │ -001bf0f0: 2027 222f 746d 7022 2069 6e20 616e 7369   '"/tmp" in ansi
│ │ │ -001bf100: 626c 655f 6d6f 756e 7473 207c 206d 6170  ble_mounts | map
│ │ │ -001bf110: 2861 7474 7269 6275 7465 3d22 6d6f 756e  (attribute="moun
│ │ │ -001bf120: 7422 2920 7c20 6c69 7374 270a 2020 2d20  t") | list'.  - 
│ │ │ -001bf130: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ -001bf140: 7574 2069 7320 6465 6669 6e65 6420 616e  ut is defined an
│ │ │ -001bf150: 6420 6465 7669 6365 5f6e 616d 652e 7374  d device_name.st
│ │ │ -001bf160: 646f 7574 5f6c 696e 6573 2069 7320 6465  dout_lines is de
│ │ │ -001bf170: 6669 6e65 640a 2020 2d20 2864 6576 6963  fined.  - (devic
│ │ │ -001bf180: 655f 6e61 6d65 2e73 7464 6f75 7420 7c20  e_name.stdout | 
│ │ │ -001bf190: 6c65 6e67 7468 2026 6774 3b20 3029 0a20  length > 0). 
│ │ │ -001bf1a0: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ -001bf1b0: 3830 302d 3533 2d41 432d 360a 2020 2d20  800-53-AC-6.  - 
│ │ │ -001bf1c0: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ -001bf1d0: 2831 290a 2020 2d20 4e49 5354 2d38 3030  (1).  - NIST-800
│ │ │ -001bf1e0: 2d35 332d 434d 2d36 2861 290a 2020 2d20  -53-CM-6(a).  - 
│ │ │ -001bf1f0: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ -001bf200: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ -001bf210: 2d35 332d 434d 2d37 2862 290a 2020 2d20  -53-CM-7(b).  - 
│ │ │ -001bf220: 4e49 5354 2d38 3030 2d35 332d 4d50 2d37  NIST-800-53-MP-7
│ │ │ -001bf230: 0a20 202d 2063 6f6e 6669 6775 7265 5f73  .  - configure_s
│ │ │ -001bf240: 7472 6174 6567 790a 2020 2d20 6869 6768  trategy.  - high
│ │ │ -001bf250: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ -001bf260: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ -001bf270: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ -001bf280: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074  ty.  - mount_opt
│ │ │ -001bf290: 696f 6e5f 746d 705f 6e6f 6465 760a 2020  ion_tmp_nodev.  
│ │ │ -001bf2a0: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ -001bf2b0: 6564 0a0a 2d20 6e61 6d65 3a20 2741 6464  ed..- name: 'Add
│ │ │ -001bf2c0: 206e 6f64 6576 204f 7074 696f 6e20 746f   nodev Option to
│ │ │ -001bf2d0: 202f 746d 703a 2049 6620 2f74 6d70 206e   /tmp: If /tmp n
│ │ │ -001bf2e0: 6f74 206d 6f75 6e74 6564 2c20 6372 6166  ot mounted, craf
│ │ │ -001bf2f0: 7420 6d6f 756e 745f 696e 666f 206d 616e  t mount_info man
│ │ │ -001bf300: 7561 6c6c 7927 0a20 2073 6574 5f66 6163  ually'.  set_fac
│ │ │ -001bf310: 743a 0a20 2020 206d 6f75 6e74 5f69 6e66  t:.    mount_inf
│ │ │ -001bf320: 6f3a 2027 7b7b 206d 6f75 6e74 5f69 6e66  o: '{{ mount_inf
│ │ │ -001bf330: 6f7c 6465 6661 756c 7428 7b7d 297c 636f  o|default({})|co
│ │ │ -001bf340: 6d62 696e 6528 7b69 7465 6d2e 303a 2069  mbine({item.0: i
│ │ │ -001bf350: 7465 6d2e 317d 2920 7d7d 270a 2020 7769  tem.1}) }}'.  wi
│ │ │ -001bf360: 7468 5f74 6f67 6574 6865 723a 0a20 202d  th_together:.  -
│ │ │ -001bf370: 202d 2074 6172 6765 740a 2020 2020 2d20   - target.    - 
│ │ │ -001bf380: 736f 7572 6365 0a20 2020 202d 2066 7374  source.    - fst
│ │ │ -001bf390: 7970 650a 2020 2020 2d20 6f70 7469 6f6e  ype.    - option
│ │ │ -001bf3a0: 730a 2020 2d20 2d20 2f74 6d70 0a20 2020  s.  - - /tmp.   
│ │ │ -001bf3b0: 202d 2027 270a 2020 2020 2d20 2727 0a20   - ''.    - ''. 
│ │ │ -001bf3c0: 2020 202d 2064 6566 6175 6c74 730a 2020     - defaults.  
│ │ │ -001bf3d0: 7768 656e 3a0a 2020 2d20 2820 6e6f 7420  when:.  - ( not 
│ │ │ -001bf3e0: 2820 226b 6572 6e65 6c22 2069 6e20 616e  ( "kernel" in an
│ │ │ -001bf3f0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001bf400: 6167 6573 2061 6e64 2022 626f 6f74 6322  ages and "bootc"
│ │ │ -001bf410: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001bf420: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ -001bf430: 6e64 206e 6f74 2022 6f70 656e 7368 6966  nd not "openshif
│ │ │ -001bf440: 742d 6b75 6265 6c65 7422 2069 6e20 616e  t-kubelet" in an
│ │ │ -001bf450: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001bf460: 6167 6573 2061 6e64 2022 6f73 7472 6565  ages and "ostree
│ │ │ -001bf470: 2220 696e 2061 6e73 6962 6c65 5f70 726f  " in ansible_pro
│ │ │ -001bf480: 635f 636d 646c 696e 650a 2020 2020 2920  c_cmdline.    ) 
│ │ │ -001bf490: 616e 6420 6e6f 7420 2820 616e 7369 626c  and not ( ansibl
│ │ │ -001bf4a0: 655f 7669 7274 7561 6c69 7a61 7469 6f6e  e_virtualization
│ │ │ -001bf4b0: 5f74 7970 6520 696e 205b 2264 6f63 6b65  _type in ["docke
│ │ │ -001bf4c0: 7222 2c20 226c 7863 222c 2022 6f70 656e  r", "lxc", "open
│ │ │ -001bf4d0: 767a 222c 2022 706f 646d 616e 222c 0a20  vz", "podman",. 
│ │ │ -001bf4e0: 2020 2022 636f 6e74 6169 6e65 7222 5d20     "container"] 
│ │ │ -001bf4f0: 2920 290a 2020 2d20 2722 2f74 6d70 2220  ) ).  - '"/tmp" 
│ │ │ -001bf500: 696e 2061 6e73 6962 6c65 5f6d 6f75 6e74  in ansible_mount
│ │ │ -001bf510: 7320 7c20 6d61 7028 6174 7472 6962 7574  s | map(attribut
│ │ │ -001bf520: 653d 226d 6f75 6e74 2229 207c 206c 6973  e="mount") | lis
│ │ │ -001bf530: 7427 0a20 202d 2028 222d 2d66 7374 6162  t'.  - ("--fstab
│ │ │ -001bf540: 2220 7c20 6c65 6e67 7468 203d 3d20 3029  " | length == 0)
│ │ │ -001bf550: 0a20 202d 2064 6576 6963 655f 6e61 6d65  .  - device_name
│ │ │ -001bf560: 2e73 7464 6f75 7420 6973 2064 6566 696e  .stdout is defin
│ │ │ -001bf570: 6564 2061 6e64 2064 6576 6963 655f 6e61  ed and device_na
│ │ │ -001bf580: 6d65 2e73 7464 6f75 745f 6c69 6e65 7320  me.stdout_lines 
│ │ │ -001bf590: 6973 2064 6566 696e 6564 0a20 202d 2028  is defined.  - (
│ │ │ -001bf5a0: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ -001bf5b0: 7574 207c 206c 656e 6774 6820 3d3d 2030  ut | length == 0
│ │ │ -001bf5c0: 290a 2020 7461 6773 3a0a 2020 2d20 4e49  ).  tags:.  - NI
│ │ │ -001bf5d0: 5354 2d38 3030 2d35 332d 4143 2d36 0a20  ST-800-53-AC-6. 
│ │ │ -001bf5e0: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ -001bf5f0: 432d 3628 3129 0a20 202d 204e 4953 542d  C-6(1).  - NIST-
│ │ │ -001bf600: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ -001bf610: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -001bf620: 4d2d 3728 6129 0a20 202d 204e 4953 542d  M-7(a).  - NIST-
│ │ │ -001bf630: 3830 302d 3533 2d43 4d2d 3728 6229 0a20  800-53-CM-7(b). 
│ │ │ -001bf640: 202d 204e 4953 542d 3830 302d 3533 2d4d   - NIST-800-53-M
│ │ │ -001bf650: 502d 370a 2020 2d20 636f 6e66 6967 7572  P-7.  - configur
│ │ │ -001bf660: 655f 7374 7261 7465 6779 0a20 202d 2068  e_strategy.  - h
│ │ │ -001bf670: 6967 685f 6469 7372 7570 7469 6f6e 0a20  igh_disruption. 
│ │ │ -001bf680: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ -001bf690: 790a 2020 2d20 6d65 6469 756d 5f73 6576  y.  - medium_sev
│ │ │ -001bf6a0: 6572 6974 790a 2020 2d20 6d6f 756e 745f  erity.  - mount_
│ │ │ -001bf6b0: 6f70 7469 6f6e 5f74 6d70 5f6e 6f64 6576  option_tmp_nodev
│ │ │ -001bf6c0: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ -001bf6d0: 6565 6465 640a 0a2d 206e 616d 653a 2027  eeded..- name: '
│ │ │ -001bf6e0: 4164 6420 6e6f 6465 7620 4f70 7469 6f6e  Add nodev Option
│ │ │ -001bf6f0: 2074 6f20 2f74 6d70 3a20 4d61 6b65 2073   to /tmp: Make s
│ │ │ -001bf700: 7572 6520 6e6f 6465 7620 6f70 7469 6f6e  ure nodev option
│ │ │ -001bf710: 2069 7320 7061 7274 206f 6620 7468 6520   is part of the 
│ │ │ -001bf720: 746f 202f 746d 7020 6f70 7469 6f6e 7327  to /tmp options'
│ │ │ -001bf730: 0a20 2073 6574 5f66 6163 743a 0a20 2020  .  set_fact:.   
│ │ │ -001bf740: 206d 6f75 6e74 5f69 6e66 6f3a 2027 7b7b   mount_info: '{{
│ │ │ -001bf750: 206d 6f75 6e74 5f69 6e66 6f20 7c20 636f   mount_info | co
│ │ │ -001bf760: 6d62 696e 6528 207b 2727 6f70 7469 6f6e  mbine( {''option
│ │ │ -001bf770: 7327 273a 2727 2727 7e28 6d6f 756e 745f  s'':''''~(mount_
│ │ │ -001bf780: 696e 666f 2e6f 7074 696f 6e73 207c 0a20  info.options |. 
│ │ │ -001bf790: 2020 2020 2064 6566 6175 6c74 2827 2727       default('''
│ │ │ -001bf7a0: 2729 297e 2827 272c 2727 2069 6620 286d  '))~('','' if (m
│ │ │ -001bf7b0: 6f75 6e74 5f69 6e66 6f2e 6f70 7469 6f6e  ount_info.option
│ │ │ -001bf7c0: 7320 7c20 6465 6661 756c 7428 2727 2727  s | default(''''
│ │ │ -001bf7d0: 2929 2065 6c73 6520 2727 2727 297e 2727  )) else '''')~''
│ │ │ -001bf7e0: 6e6f 6465 7627 270a 2020 2020 2020 7d29  nodev''.      })
│ │ │ -001bf7f0: 207d 7d27 0a20 2077 6865 6e3a 0a20 202d   }}'.  when:.  -
│ │ │ -001bf800: 2028 206e 6f74 2028 2022 6b65 726e 656c   ( not ( "kernel
│ │ │ -001bf810: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001bf820: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ -001bf830: 2262 6f6f 7463 2220 696e 2061 6e73 6962  "bootc" in ansib
│ │ │ -001bf840: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -001bf850: 730a 2020 2020 616e 6420 6e6f 7420 226f  s.    and not "o
│ │ │ -001bf860: 7065 6e73 6869 6674 2d6b 7562 656c 6574  penshift-kubelet
│ │ │ -001bf870: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001bf880: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ -001bf890: 226f 7374 7265 6522 2069 6e20 616e 7369  "ostree" in ansi
│ │ │ -001bf8a0: 626c 655f 7072 6f63 5f63 6d64 6c69 6e65  ble_proc_cmdline
│ │ │ -001bf8b0: 0a20 2020 2029 2061 6e64 206e 6f74 2028  .    ) and not (
│ │ │ -001bf8c0: 2061 6e73 6962 6c65 5f76 6972 7475 616c   ansible_virtual
│ │ │ -001bf8d0: 697a 6174 696f 6e5f 7479 7065 2069 6e20  ization_type in 
│ │ │ -001bf8e0: 5b22 646f 636b 6572 222c 2022 6c78 6322  ["docker", "lxc"
│ │ │ -001bf8f0: 2c20 226f 7065 6e76 7a22 2c20 2270 6f64  , "openvz", "pod
│ │ │ -001bf900: 6d61 6e22 2c0a 2020 2020 2263 6f6e 7461  man",.    "conta
│ │ │ -001bf910: 696e 6572 225d 2029 2029 0a20 202d 2027  iner"] ) ).  - '
│ │ │ -001bf920: 222f 746d 7022 2069 6e20 616e 7369 626c  "/tmp" in ansibl
│ │ │ -001bf930: 655f 6d6f 756e 7473 207c 206d 6170 2861  e_mounts | map(a
│ │ │ -001bf940: 7474 7269 6275 7465 3d22 6d6f 756e 7422  ttribute="mount"
│ │ │ -001bf950: 2920 7c20 6c69 7374 270a 2020 2d20 6d6f  ) | list'.  - mo
│ │ │ -001bf960: 756e 745f 696e 666f 2069 7320 6465 6669  unt_info is defi
│ │ │ -001bf970: 6e65 6420 616e 6420 226e 6f64 6576 2220  ned and "nodev" 
│ │ │ -001bf980: 6e6f 7420 696e 2028 6d6f 756e 745f 696e  not in (mount_in
│ │ │ -001bf990: 666f 2e6f 7074 696f 6e73 207c 2064 6566  fo.options | def
│ │ │ -001bf9a0: 6175 6c74 2827 2729 290a 2020 7461 6773  ault('')).  tags
│ │ │ -001bf9b0: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ -001bf9c0: 332d 4143 2d36 0a20 202d 204e 4953 542d  3-AC-6.  - NIST-
│ │ │ -001bf9d0: 3830 302d 3533 2d41 432d 3628 3129 0a20  800-53-AC-6(1). 
│ │ │ -001bf9e0: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -001bf9f0: 4d2d 3628 6129 0a20 202d 204e 4953 542d  M-6(a).  - NIST-
│ │ │ -001bfa00: 3830 302d 3533 2d43 4d2d 3728 6129 0a20  800-53-CM-7(a). 
│ │ │ -001bfa10: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -001bfa20: 4d2d 3728 6229 0a20 202d 204e 4953 542d  M-7(b).  - NIST-
│ │ │ -001bfa30: 3830 302d 3533 2d4d 502d 370a 2020 2d20  800-53-MP-7.  - 
│ │ │ -001bfa40: 636f 6e66 6967 7572 655f 7374 7261 7465  configure_strate
│ │ │ -001bfa50: 6779 0a20 202d 2068 6967 685f 6469 7372  gy.  - high_disr
│ │ │ -001bfa60: 7570 7469 6f6e 0a20 202d 206c 6f77 5f63  uption.  - low_c
│ │ │ -001bfa70: 6f6d 706c 6578 6974 790a 2020 2d20 6d65  omplexity.  - me
│ │ │ -001bfa80: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ -001bfa90: 2d20 6d6f 756e 745f 6f70 7469 6f6e 5f74  - mount_option_t
│ │ │ -001bfaa0: 6d70 5f6e 6f64 6576 0a20 202d 206e 6f5f  mp_nodev.  - no_
│ │ │ -001bfab0: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ -001bfac0: 206e 616d 653a 2027 4164 6420 6e6f 6465   name: 'Add node
│ │ │ -001bfad0: 7620 4f70 7469 6f6e 2074 6f20 2f74 6d70  v Option to /tmp
│ │ │ -001bfae0: 3a20 456e 7375 7265 202f 746d 7020 6973  : Ensure /tmp is
│ │ │ -001bfaf0: 206d 6f75 6e74 6564 2077 6974 6820 6e6f   mounted with no
│ │ │ -001bfb00: 6465 7620 6f70 7469 6f6e 270a 2020 616e  dev option'.  an
│ │ │ -001bfb10: 7369 626c 652e 706f 7369 782e 6d6f 756e  sible.posix.moun
│ │ │ -001bfb20: 743a 0a20 2020 2070 6174 683a 202f 746d  t:.    path: /tm
│ │ │ -001bfb30: 700a 2020 2020 7372 633a 2027 7b7b 206d  p.    src: '{{ m
│ │ │ -001bfb40: 6f75 6e74 5f69 6e66 6f2e 736f 7572 6365  ount_info.source
│ │ │ -001bfb50: 207c 2064 6566 6175 6c74 2827 2727 2729   | default('''')
│ │ │ -001bfb60: 207d 7d27 0a20 2020 206f 7074 733a 2027   }}'.    opts: '
│ │ │ -001bfb70: 7b7b 206d 6f75 6e74 5f69 6e66 6f2e 6f70  {{ mount_info.op
│ │ │ -001bfb80: 7469 6f6e 7320 7c20 6465 6661 756c 7428  tions | default(
│ │ │ -001bfb90: 2727 2727 2920 7d7d 270a 2020 2020 7374  '''') }}'.    st
│ │ │ -001bfba0: 6174 653a 206d 6f75 6e74 6564 0a20 2020  ate: mounted.   
│ │ │ -001bfbb0: 2066 7374 7970 653a 2027 7b7b 206d 6f75   fstype: '{{ mou
│ │ │ -001bfbc0: 6e74 5f69 6e66 6f2e 6673 7479 7065 207c  nt_info.fstype |
│ │ │ -001bfbd0: 2064 6566 6175 6c74 2827 2727 2729 207d   default('''') }
│ │ │ -001bfbe0: 7d27 0a20 2072 6567 6973 7465 723a 206d  }'.  register: m
│ │ │ -001bfbf0: 6f75 6e74 5f72 6573 756c 740a 2020 6661  ount_result.  fa
│ │ │ -001bfc00: 696c 6564 5f77 6865 6e3a 0a20 202d 206d  iled_when:.  - m
│ │ │ -001bfc10: 6f75 6e74 5f72 6573 756c 7420 6973 2066  ount_result is f
│ │ │ -001bfc20: 6169 6c65 640a 2020 2d20 2727 2774 6172  ailed.  - '''tar
│ │ │ -001bfc30: 6765 7420 6973 2062 7573 7927 2720 6e6f  get is busy'' no
│ │ │ -001bfc40: 7420 696e 2028 6d6f 756e 745f 7265 7375  t in (mount_resu
│ │ │ -001bfc50: 6c74 2e6d 7367 207c 2064 6566 6175 6c74  lt.msg | default
│ │ │ -001bfc60: 2827 2727 2729 2927 0a20 202d 2027 2727  (''''))'.  - '''
│ │ │ -001bfc70: 616c 7265 6164 7920 6d6f 756e 7465 6427  already mounted'
│ │ │ -001bfc80: 2720 6e6f 7420 696e 2028 6d6f 756e 745f  ' not in (mount_
│ │ │ -001bfc90: 7265 7375 6c74 2e6d 7367 207c 2064 6566  result.msg | def
│ │ │ -001bfca0: 6175 6c74 2827 2727 2729 2927 0a20 2077  ault(''''))'.  w
│ │ │ -001bfcb0: 6865 6e3a 0a20 202d 2028 206e 6f74 2028  hen:.  - ( not (
│ │ │ -001bfcc0: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ -001bfcd0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001bfce0: 6765 7320 616e 6420 2262 6f6f 7463 2220  ges and "bootc" 
│ │ │ -001bfcf0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001bfd00: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ -001bfd10: 6420 6e6f 7420 226f 7065 6e73 6869 6674  d not "openshift
│ │ │ -001bfd20: 2d6b 7562 656c 6574 2220 696e 2061 6e73  -kubelet" in ans
│ │ │ -001bfd30: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001bfd40: 6765 7320 616e 6420 226f 7374 7265 6522  ges and "ostree"
│ │ │ -001bfd50: 2069 6e20 616e 7369 626c 655f 7072 6f63   in ansible_proc
│ │ │ -001bfd60: 5f63 6d64 6c69 6e65 0a20 2020 2029 2061  _cmdline.    ) a
│ │ │ -001bfd70: 6e64 206e 6f74 2028 2061 6e73 6962 6c65  nd not ( ansible
│ │ │ -001bfd80: 5f76 6972 7475 616c 697a 6174 696f 6e5f  _virtualization_
│ │ │ -001bfd90: 7479 7065 2069 6e20 5b22 646f 636b 6572  type in ["docker
│ │ │ -001bfda0: 222c 2022 6c78 6322 2c20 226f 7065 6e76  ", "lxc", "openv
│ │ │ -001bfdb0: 7a22 2c20 2270 6f64 6d61 6e22 2c0a 2020  z", "podman",.  
│ │ │ -001bfdc0: 2020 2263 6f6e 7461 696e 6572 225d 2029    "container"] )
│ │ │ -001bfdd0: 2029 0a20 202d 2027 222f 746d 7022 2069   ).  - '"/tmp" i
│ │ │ -001bfde0: 6e20 616e 7369 626c 655f 6d6f 756e 7473  n ansible_mounts
│ │ │ -001bfdf0: 207c 206d 6170 2861 7474 7269 6275 7465   | map(attribute
│ │ │ -001bfe00: 3d22 6d6f 756e 7422 2920 7c20 6c69 7374  ="mount") | list
│ │ │ -001bfe10: 270a 2020 2d20 6d6f 756e 745f 696e 666f  '.  - mount_info
│ │ │ -001bfe20: 2069 7320 6465 6669 6e65 640a 2020 2d20   is defined.  - 
│ │ │ -001bfe30: 2864 6576 6963 655f 6e61 6d65 2e73 7464  (device_name.std
│ │ │ -001bfe40: 6f75 7420 6973 2064 6566 696e 6564 2061  out is defined a
│ │ │ -001bfe50: 6e64 2028 6465 7669 6365 5f6e 616d 652e  nd (device_name.
│ │ │ -001bfe60: 7374 646f 7574 207c 206c 656e 6774 6820  stdout | length 
│ │ │ -001bfe70: 2667 743b 2030 2929 206f 7220 2822 2d2d  > 0)) or ("--
│ │ │ -001bfe80: 6673 7461 6222 0a20 2020 207c 206c 656e  fstab".    | len
│ │ │ -001bfe90: 6774 6820 3d3d 2030 290a 2020 7461 6773  gth == 0).  tags
│ │ │ -001bfea0: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ -001bfeb0: 332d 4143 2d36 0a20 202d 204e 4953 542d  3-AC-6.  - NIST-
│ │ │ -001bfec0: 3830 302d 3533 2d41 432d 3628 3129 0a20  800-53-AC-6(1). 
│ │ │ -001bfed0: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -001bfee0: 4d2d 3628 6129 0a20 202d 204e 4953 542d  M-6(a).  - NIST-
│ │ │ -001bfef0: 3830 302d 3533 2d43 4d2d 3728 6129 0a20  800-53-CM-7(a). 
│ │ │ -001bff00: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -001bff10: 4d2d 3728 6229 0a20 202d 204e 4953 542d  M-7(b).  - NIST-
│ │ │ -001bff20: 3830 302d 3533 2d4d 502d 370a 2020 2d20  800-53-MP-7.  - 
│ │ │ -001bff30: 636f 6e66 6967 7572 655f 7374 7261 7465  configure_strate
│ │ │ -001bff40: 6779 0a20 202d 2068 6967 685f 6469 7372  gy.  - high_disr
│ │ │ -001bff50: 7570 7469 6f6e 0a20 202d 206c 6f77 5f63  uption.  - low_c
│ │ │ -001bff60: 6f6d 706c 6578 6974 790a 2020 2d20 6d65  omplexity.  - me
│ │ │ -001bff70: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ -001bff80: 2d20 6d6f 756e 745f 6f70 7469 6f6e 5f74  - mount_option_t
│ │ │ -001bff90: 6d70 5f6e 6f64 6576 0a20 202d 206e 6f5f  mp_nodev.  - no_
│ │ │ -001bffa0: 7265 626f 6f74 5f6e 6565 6465 640a 3c2f  reboot_needed.
Re │ │ │ -001c0060: 6d65 6469 6174 696f 6e20 5368 656c 6c20 mediation Shell │ │ │ -001c0070: 7363 7269 7074 20e2 87b2 3c2f 613e 3c62 script ...
Compl │ │ │ -001be930: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ -001be940: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ -001be960: 2f74 683e 3c74 643e 6869 6768 3c2f 7464 /th>high
Re │ │ │ -001be980: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -001be990: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:configure │ │ │ -001be9c0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
# 
│ │ │ -001c0130: 5265 6d65 6469 6174 696f 6e20 6973 2061  Remediation is a
│ │ │ -001c0140: 7070 6c69 6361 626c 6520 6f6e 6c79 2069  pplicable only i
│ │ │ -001c0150: 6e20 6365 7274 6169 6e20 706c 6174 666f  n certain platfo
│ │ │ -001c0160: 726d 730a 6966 2028 2021 2028 207b 2072  rms.if ( ! ( { r
│ │ │ -001c0170: 706d 202d 2d71 7569 6574 202d 7120 6b65  pm --quiet -q ke
│ │ │ -001c0180: 726e 656c 203b 7d20 2661 6d70 3b26 616d  rnel ;} &&am
│ │ │ -001c0190: 703b 207b 2072 706d 202d 2d71 7569 6574  p; { rpm --quiet
│ │ │ -001c01a0: 202d 7120 626f 6f74 6320 3b7d 2026 616d   -q bootc ;} &am
│ │ │ -001c01b0: 703b 2661 6d70 3b20 7b20 2120 7270 6d20  p;& { ! rpm 
│ │ │ -001c01c0: 2d2d 7175 6965 7420 2d71 206f 7065 6e73  --quiet -q opens
│ │ │ -001c01d0: 6869 6674 2d6b 7562 656c 6574 203b 7d20  hift-kubelet ;} 
│ │ │ -001c01e0: 2661 6d70 3b26 616d 703b 2028 5b20 2d66  && ([ -f
│ │ │ -001c01f0: 202f 7275 6e2f 6f73 7472 6565 2d62 6f6f   /run/ostree-boo
│ │ │ -001c0200: 7465 6420 5d20 7c7c 205b 202d 4c20 2f6f  ted ] || [ -L /o
│ │ │ -001c0210: 7374 7265 6520 5d29 2029 2026 616d 703b  stree ]) ) &
│ │ │ -001c0220: 2661 6d70 3b20 2120 2820 5b20 2d66 202f  & ! ( [ -f /
│ │ │ -001c0230: 2e64 6f63 6b65 7265 6e76 205d 207c 7c20  .dockerenv ] || 
│ │ │ -001c0240: 5b20 2d66 202f 7275 6e2f 2e63 6f6e 7461  [ -f /run/.conta
│ │ │ -001c0250: 696e 6572 656e 7620 5d20 2920 2920 2661  inerenv ] ) ) &a
│ │ │ -001c0260: 6d70 3b26 616d 703b 207b 2028 2066 696e  mp;& { ( fin
│ │ │ -001c0270: 646d 6e74 202d 2d6b 6572 6e65 6c20 222f  dmnt --kernel "/
│ │ │ -001c0280: 746d 7022 2026 6774 3b20 2f64 6576 2f6e  tmp" > /dev/n
│ │ │ -001c0290: 756c 6c20 7c7c 2066 696e 646d 6e74 202d  ull || findmnt -
│ │ │ -001c02a0: 2d66 7374 6162 2022 2f74 6d70 2220 2667  -fstab "/tmp" &g
│ │ │ -001c02b0: 743b 202f 6465 762f 6e75 6c6c 2029 3b20  t; /dev/null ); 
│ │ │ -001c02c0: 7d3b 2074 6865 6e0a 0a66 756e 6374 696f  }; then..functio
│ │ │ -001c02d0: 6e20 7065 7266 6f72 6d5f 7265 6d65 6469  n perform_remedi
│ │ │ -001c02e0: 6174 696f 6e20 7b0a 0a20 2020 200a 2020  ation {..    .  
│ │ │ -001c02f0: 2020 2020 2020 2320 7468 6520 6d6f 756e        # the moun
│ │ │ -001c0300: 7420 706f 696e 7420 2f74 6d70 2068 6173  t point /tmp has
│ │ │ -001c0310: 2074 6f20 6265 2064 6566 696e 6564 2069   to be defined i
│ │ │ -001c0320: 6e20 2f65 7463 2f66 7374 6162 0a20 2020  n /etc/fstab.   
│ │ │ -001c0330: 2020 2020 2023 2062 6566 6f72 6520 7468       # before th
│ │ │ -001c0340: 6973 2072 656d 6564 6961 7469 6f6e 2063  is remediation c
│ │ │ -001c0350: 616e 2062 6520 6578 6563 7574 6564 2e20  an be executed. 
│ │ │ -001c0360: 496e 2063 6173 6520 6974 2069 7320 6e6f  In case it is no
│ │ │ -001c0370: 7420 6465 6669 6e65 642c 2074 6865 0a20  t defined, the. 
│ │ │ -001c0380: 2020 2020 2020 2023 2072 656d 6564 6961         # remedia
│ │ │ -001c0390: 7469 6f6e 2061 626f 7274 7320 616e 6420  tion aborts and 
│ │ │ -001c03a0: 6e6f 2063 6861 6e67 6573 2072 6567 6172  no changes regar
│ │ │ -001c03b0: 6469 6e67 2074 6865 206d 6f75 6e74 2070  ding the mount p
│ │ │ -001c03c0: 6f69 6e74 2061 7265 2064 6f6e 652e 0a20  oint are done.. 
│ │ │ -001c03d0: 2020 2020 2020 206d 6f75 6e74 5f70 6f69         mount_poi
│ │ │ -001c03e0: 6e74 5f6d 6174 6368 5f72 6567 6578 703d  nt_match_regexp=
│ │ │ -001c03f0: 2224 2870 7269 6e74 6620 225e 5b5b 3a73  "$(printf "^[[:s
│ │ │ -001c0400: 7061 6365 3a5d 5d2a 5b5e 235d 2e2a 5b5b  pace:]]*[^#].*[[
│ │ │ -001c0410: 3a73 7061 6365 3a5d 5d25 735b 5b3a 7370  :space:]]%s[[:sp
│ │ │ -001c0420: 6163 653a 5d5d 2220 222f 746d 7022 2922  ace:]]" "/tmp")"
│ │ │ -001c0430: 0a0a 2020 2020 6772 6570 2022 246d 6f75  ..    grep "$mou
│ │ │ -001c0440: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ -001c0450: 6567 6578 7022 202d 7120 2f65 7463 2f66  egexp" -q /etc/f
│ │ │ -001c0460: 7374 6162 205c 0a20 2020 2020 2020 207c  stab \.        |
│ │ │ -001c0470: 7c20 7b20 6563 686f 2022 5468 6520 6d6f  | { echo "The mo
│ │ │ -001c0480: 756e 7420 706f 696e 7420 272f 746d 7027  unt point '/tmp'
│ │ │ -001c0490: 2069 7320 6e6f 7420 6576 656e 2069 6e20   is not even in 
│ │ │ -001c04a0: 2f65 7463 2f66 7374 6162 2c20 736f 2077  /etc/fstab, so w
│ │ │ -001c04b0: 6520 6361 6e27 7420 7365 7420 7570 206d  e can't set up m
│ │ │ -001c04c0: 6f75 6e74 206f 7074 696f 6e73 2220 2667  ount options" &g
│ │ │ -001c04d0: 743b 2661 6d70 3b32 3b0a 2020 2020 2020  t;&2;.      
│ │ │ -001c04e0: 2020 2020 2020 2020 2020 6563 686f 2022            echo "
│ │ │ -001c04f0: 4e6f 7420 7265 6d65 6469 6174 696e 672c  Not remediating,
│ │ │ -001c0500: 2062 6563 6175 7365 2074 6865 7265 2069   because there i
│ │ │ -001c0510: 7320 6e6f 2072 6563 6f72 6420 6f66 202f  s no record of /
│ │ │ -001c0520: 746d 7020 696e 202f 6574 632f 6673 7461  tmp in /etc/fsta
│ │ │ -001c0530: 6222 2026 6774 3b26 616d 703b 323b 2072  b" >&2; r
│ │ │ -001c0540: 6574 7572 6e20 313b 207d 0a20 2020 200a  eturn 1; }.    .
│ │ │ -001c0550: 0a0a 2020 2020 6d6f 756e 745f 706f 696e  ..    mount_poin
│ │ │ -001c0560: 745f 6d61 7463 685f 7265 6765 7870 3d22  t_match_regexp="
│ │ │ -001c0570: 2428 7072 696e 7466 2022 5e5b 5b3a 7370  $(printf "^[[:sp
│ │ │ -001c0580: 6163 653a 5d5d 2a5b 5e23 5d2e 2a5b 5b3a  ace:]]*[^#].*[[:
│ │ │ -001c0590: 7370 6163 653a 5d5d 2573 5b5b 3a73 7061  space:]]%s[[:spa
│ │ │ -001c05a0: 6365 3a5d 5d22 202f 746d 7029 220a 0a20  ce:]]" /tmp)".. 
│ │ │ -001c05b0: 2020 2023 2049 6620 7468 6520 6d6f 756e     # If the moun
│ │ │ -001c05c0: 7420 706f 696e 7420 6973 206e 6f74 2069  t point is not i
│ │ │ -001c05d0: 6e20 2f65 7463 2f66 7374 6162 2c20 6765  n /etc/fstab, ge
│ │ │ -001c05e0: 7420 7072 6576 696f 7573 206d 6f75 6e74  t previous mount
│ │ │ -001c05f0: 206f 7074 696f 6e73 2066 726f 6d20 2f65   options from /e
│ │ │ -001c0600: 7463 2f6d 7461 620a 2020 2020 6966 2021  tc/mtab.    if !
│ │ │ -001c0610: 2067 7265 7020 2d71 2022 246d 6f75 6e74   grep -q "$mount
│ │ │ -001c0620: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ -001c0630: 6578 7022 202f 6574 632f 6673 7461 623b  exp" /etc/fstab;
│ │ │ -001c0640: 2074 6865 6e0a 2020 2020 2020 2020 2320   then.        # 
│ │ │ -001c0650: 7275 6e74 696d 6520 6f70 7473 2077 6974  runtime opts wit
│ │ │ -001c0660: 686f 7574 2073 6f6d 6520 6175 746f 6d61  hout some automa
│ │ │ -001c0670: 7469 6320 6b65 726e 656c 2f75 7365 7273  tic kernel/users
│ │ │ -001c0680: 7061 6365 2d61 6464 6564 2064 6566 6175  pace-added defau
│ │ │ -001c0690: 6c74 730a 2020 2020 2020 2020 7072 6576  lts.        prev
│ │ │ -001c06a0: 696f 7573 5f6d 6f75 6e74 5f6f 7074 733d  ious_mount_opts=
│ │ │ -001c06b0: 2428 6772 6570 2022 246d 6f75 6e74 5f70  $(grep "$mount_p
│ │ │ -001c06c0: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ -001c06d0: 7022 202f 6574 632f 6d74 6162 207c 2068  p" /etc/mtab | h
│ │ │ -001c06e0: 6561 6420 2d31 207c 2020 6177 6b20 277b  ead -1 |  awk '{
│ │ │ -001c06f0: 7072 696e 7420 2434 7d27 205c 0a20 2020  print $4}' \.   
│ │ │ -001c0700: 2020 2020 2020 2020 2020 2020 2020 2020                  
│ │ │ -001c0710: 207c 2073 6564 202d 4520 2273 2f28 7277   | sed -E "s/(rw
│ │ │ -001c0720: 7c64 6566 6175 6c74 737c 7365 636c 6162  |defaults|seclab
│ │ │ -001c0730: 656c 7c6e 6f64 6576 2928 2c7c 2429 2f2f  el|nodev)(,|$)//
│ │ │ -001c0740: 673b 732f 2c24 2f2f 2229 0a20 2020 2020  g;s/,$//").     
│ │ │ -001c0750: 2020 205b 2022 2470 7265 7669 6f75 735f     [ "$previous_
│ │ │ -001c0760: 6d6f 756e 745f 6f70 7473 2220 5d20 2661  mount_opts" ] &a
│ │ │ -001c0770: 6d70 3b26 616d 703b 2070 7265 7669 6f75  mp;& previou
│ │ │ -001c0780: 735f 6d6f 756e 745f 6f70 7473 2b3d 222c  s_mount_opts+=",
│ │ │ -001c0790: 220a 2020 2020 2020 2020 2320 496e 2069  ".        # In i
│ │ │ -001c07a0: 736f 3936 3630 2066 696c 6573 7973 7465  so9660 filesyste
│ │ │ -001c07b0: 6d73 206d 7461 6220 636f 756c 6420 6465  ms mtab could de
│ │ │ -001c07c0: 7363 7269 6265 2061 2022 626c 6f63 6b73  scribe a "blocks
│ │ │ -001c07d0: 697a 6522 2076 616c 7565 2c20 7468 6973  ize" value, this
│ │ │ -001c07e0: 2073 686f 756c 6420 6265 2072 6566 6c65   should be refle
│ │ │ -001c07f0: 6374 6564 2069 6e0a 2020 2020 2020 2020  cted in.        
│ │ │ -001c0800: 2320 6673 7461 6220 6173 2022 626c 6f63  # fstab as "bloc
│ │ │ -001c0810: 6b22 2e20 2054 6865 206e 6578 7420 7661  k".  The next va
│ │ │ -001c0820: 7269 6162 6c65 2069 7320 746f 2073 6174  riable is to sat
│ │ │ -001c0830: 6973 6679 2073 6865 6c6c 6368 6563 6b20  isfy shellcheck 
│ │ │ -001c0840: 5343 3230 3530 2e0a 2020 2020 2020 2020  SC2050..        
│ │ │ -001c0850: 6673 5f74 7970 653d 2222 0a20 2020 2020  fs_type="".     
│ │ │ -001c0860: 2020 2069 6620 5b20 2022 2466 735f 7479     if [  "$fs_ty
│ │ │ -001c0870: 7065 2220 3d3d 2022 6973 6f39 3636 3022  pe" == "iso9660"
│ │ │ -001c0880: 205d 203b 2074 6865 6e0a 2020 2020 2020   ] ; then.      
│ │ │ -001c0890: 2020 2020 2020 7072 6576 696f 7573 5f6d        previous_m
│ │ │ -001c08a0: 6f75 6e74 5f6f 7074 733d 2428 7365 6420  ount_opts=$(sed 
│ │ │ -001c08b0: 2773 2f62 6c6f 636b 7369 7a65 3d2f 626c  's/blocksize=/bl
│ │ │ -001c08c0: 6f63 6b3d 2f27 2026 6c74 3b26 6c74 3b26  ock=/' <<&
│ │ │ -001c08d0: 6c74 3b20 2224 7072 6576 696f 7573 5f6d  lt; "$previous_m
│ │ │ -001c08e0: 6f75 6e74 5f6f 7074 7322 290a 2020 2020  ount_opts").    
│ │ │ -001c08f0: 2020 2020 6669 0a20 2020 2020 2020 2065      fi.        e
│ │ │ -001c0900: 6368 6f20 2220 2f74 6d70 2020 6465 6661  cho " /tmp  defa
│ │ │ -001c0910: 756c 7473 2c24 7b70 7265 7669 6f75 735f  ults,${previous_
│ │ │ -001c0920: 6d6f 756e 745f 6f70 7473 7d6e 6f64 6576  mount_opts}nodev
│ │ │ -001c0930: 2030 2030 2220 2667 743b 2667 743b 202f   0 0" >> /
│ │ │ -001c0940: 6574 632f 6673 7461 620a 2020 2020 2320  etc/fstab.    # 
│ │ │ -001c0950: 4966 2074 6865 206d 6f75 6e74 5f6f 7074  If the mount_opt
│ │ │ -001c0960: 206f 7074 696f 6e20 6973 206e 6f74 2061   option is not a
│ │ │ -001c0970: 6c72 6561 6479 2069 6e20 7468 6520 6d6f  lready in the mo
│ │ │ -001c0980: 756e 7420 706f 696e 7427 7320 2f65 7463  unt point's /etc
│ │ │ -001c0990: 2f66 7374 6162 2065 6e74 7279 2c20 6164  /fstab entry, ad
│ │ │ -001c09a0: 6420 6974 0a20 2020 2065 6c69 6620 2120  d it.    elif ! 
│ │ │ -001c09b0: 6772 6570 2022 246d 6f75 6e74 5f70 6f69  grep "$mount_poi
│ │ │ -001c09c0: 6e74 5f6d 6174 6368 5f72 6567 6578 7022  nt_match_regexp"
│ │ │ -001c09d0: 202f 6574 632f 6673 7461 6220 7c20 6772   /etc/fstab | gr
│ │ │ -001c09e0: 6570 202d 7120 226e 6f64 6576 223b 2074  ep -q "nodev"; t
│ │ │ -001c09f0: 6865 6e0a 2020 2020 2020 2020 7072 6576  hen.        prev
│ │ │ -001c0a00: 696f 7573 5f6d 6f75 6e74 5f6f 7074 733d  ious_mount_opts=
│ │ │ -001c0a10: 2428 6772 6570 2022 246d 6f75 6e74 5f70  $(grep "$mount_p
│ │ │ -001c0a20: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ -001c0a30: 7022 202f 6574 632f 6673 7461 6220 7c20  p" /etc/fstab | 
│ │ │ -001c0a40: 6177 6b20 277b 7072 696e 7420 2434 7d27  awk '{print $4}'
│ │ │ -001c0a50: 290a 2020 2020 2020 2020 7365 6420 2d69  ).        sed -i
│ │ │ -001c0a60: 2022 737c 5c28 247b 6d6f 756e 745f 706f   "s|\(${mount_po
│ │ │ -001c0a70: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ -001c0a80: 7d2e 2a24 7b70 7265 7669 6f75 735f 6d6f  }.*${previous_mo
│ │ │ -001c0a90: 756e 745f 6f70 7473 7d5c 297c 5c31 2c6e  unt_opts}\)|\1,n
│ │ │ -001c0aa0: 6f64 6576 7c22 202f 6574 632f 6673 7461  odev|" /etc/fsta
│ │ │ -001c0ab0: 620a 2020 2020 6669 0a0a 0a20 2020 2069  b.    fi...    i
│ │ │ -001c0ac0: 6620 6d6b 6469 7220 2d70 2022 2f74 6d70  f mkdir -p "/tmp
│ │ │ -001c0ad0: 223b 2074 6865 6e0a 2020 2020 2020 2020  "; then.        
│ │ │ -001c0ae0: 6966 206d 6f75 6e74 706f 696e 7420 2d71  if mountpoint -q
│ │ │ -001c0af0: 2022 2f74 6d70 223b 2074 6865 6e0a 2020   "/tmp"; then.  
│ │ │ -001c0b00: 2020 2020 2020 2020 2020 6d6f 756e 7420            mount 
│ │ │ -001c0b10: 2d6f 2072 656d 6f75 6e74 202d 2d74 6172  -o remount --tar
│ │ │ -001c0b20: 6765 7420 222f 746d 7022 0a20 2020 2020  get "/tmp".     
│ │ │ -001c0b30: 2020 2066 690a 2020 2020 6669 0a7d 0a0a     fi.    fi.}..
│ │ │ -001c0b40: 7065 7266 6f72 6d5f 7265 6d65 6469 6174  perform_remediat
│ │ │ -001c0b50: 696f 6e0a 0a65 6c73 650a 2020 2020 2667  ion..else.    &g
│ │ │ -001c0b60: 743b 2661 6d70 3b32 2065 6368 6f20 2752  t;&2 echo 'R
│ │ │ -001c0b70: 656d 6564 6961 7469 6f6e 2069 7320 6e6f  emediation is no
│ │ │ -001c0b80: 7420 6170 706c 6963 6162 6c65 2c20 6e6f  t applicable, no
│ │ │ -001c0b90: 7468 696e 6720 7761 7320 646f 6e65 270a  thing was done'.
│ │ │ -001c0ba0: 6669 0a3c 2f63 6f64 653e 3c2f 7072 653e  fi.
│ │ │ +001be670: 6f6e 2041 6e73 6962 6c65 2073 6e69 7070 on Ansible snipp │ │ │ +001be680: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ +001be700: 3c74 723e 3c74 683e 436f 6d70 6c65 7869
Strategy: │ │ │ +001be790: 3c74 643e 636f 6e66 6967 7572 653c 2f74
Rebo │ │ │ -001c0100: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ -001c0110: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
Complexi │ │ │ +001be710: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +001be720: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Disruption:high
Reboo │ │ │ +001be760: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ +001be770: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
configure
< │ │ │ +001be7b0: 7072 653e 3c63 6f64 653e 2d20 6e61 6d65 pre>- name │ │ │ +001be7c0: 3a20 4761 7468 6572 2074 6865 2070 6163 : Gather the pac │ │ │ +001be7d0: 6b61 6765 2066 6163 7473 0a20 2070 6163 kage facts. pac │ │ │ +001be7e0: 6b61 6765 5f66 6163 7473 3a0a 2020 2020 kage_facts:. │ │ │ +001be7f0: 6d61 6e61 6765 723a 2061 7574 6f0a 2020 manager: auto. │ │ │ +001be800: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38 tags:. - NIST-8 │ │ │ +001be810: 3030 2d35 332d 4143 2d36 0a20 202d 204e 00-53-AC-6. - N │ │ │ +001be820: 4953 542d 3830 302d 3533 2d41 432d 3628 IST-800-53-AC-6( │ │ │ +001be830: 3129 0a20 202d 204e 4953 542d 3830 302d 1). - NIST-800- │ │ │ +001be840: 3533 2d43 4d2d 3628 6129 0a20 202d 204e 53-CM-6(a). - N │ │ │ +001be850: 4953 542d 3830 302d 3533 2d43 4d2d 3728 IST-800-53-CM-7( │ │ │ +001be860: 6129 0a20 202d 204e 4953 542d 3830 302d a). - NIST-800- │ │ │ +001be870: 3533 2d43 4d2d 3728 6229 0a20 202d 204e 53-CM-7(b). - N │ │ │ +001be880: 4953 542d 3830 302d 3533 2d4d 502d 370a IST-800-53-MP-7. │ │ │ +001be890: 2020 2d20 636f 6e66 6967 7572 655f 7374 - configure_st │ │ │ +001be8a0: 7261 7465 6779 0a20 202d 2068 6967 685f rategy. - high_ │ │ │ +001be8b0: 6469 7372 7570 7469 6f6e 0a20 202d 206c disruption. - l │ │ │ +001be8c0: 6f77 5f63 6f6d 706c 6578 6974 790a 2020 ow_complexity. │ │ │ +001be8d0: 2d20 6d65 6469 756d 5f73 6576 6572 6974 - medium_severit │ │ │ +001be8e0: 790a 2020 2d20 6d6f 756e 745f 6f70 7469 y. - mount_opti │ │ │ +001be8f0: 6f6e 5f74 6d70 5f6e 6f64 6576 0a20 202d on_tmp_nodev. - │ │ │ +001be900: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465 no_reboot_neede │ │ │ +001be910: 640a 0a2d 206e 616d 653a 2027 4164 6420 d..- name: 'Add │ │ │ +001be920: 6e6f 6465 7620 4f70 7469 6f6e 2074 6f20 nodev Option to │ │ │ +001be930: 2f74 6d70 3a20 4368 6563 6b20 696e 666f /tmp: Check info │ │ │ +001be940: 726d 6174 696f 6e20 6173 736f 6369 6174 rmation associat │ │ │ +001be950: 6564 2074 6f20 6d6f 756e 7470 6f69 6e74 ed to mountpoint │ │ │ +001be960: 270a 2020 616e 7369 626c 652e 6275 696c '. ansible.buil │ │ │ +001be970: 7469 6e2e 636f 6d6d 616e 643a 2066 696e tin.command: fin │ │ │ +001be980: 646d 6e74 202d 2d66 7374 6162 2027 2f74 dmnt --fstab '/t │ │ │ +001be990: 6d70 270a 2020 7265 6769 7374 6572 3a20 mp'. register: │ │ │ +001be9a0: 6465 7669 6365 5f6e 616d 650a 2020 6661 device_name. fa │ │ │ +001be9b0: 696c 6564 5f77 6865 6e3a 2064 6576 6963 iled_when: devic │ │ │ +001be9c0: 655f 6e61 6d65 2e72 6320 2667 743b 2031 e_name.rc > 1 │ │ │ +001be9d0: 0a20 2063 6861 6e67 6564 5f77 6865 6e3a . changed_when: │ │ │ +001be9e0: 2066 616c 7365 0a20 2063 6865 636b 5f6d false. check_m │ │ │ +001be9f0: 6f64 653a 2066 616c 7365 0a20 2077 6865 ode: false. whe │ │ │ +001bea00: 6e3a 0a20 202d 2028 206e 6f74 2028 2022 n:. - ( not ( " │ │ │ +001bea10: 6b65 726e 656c 2220 696e 2061 6e73 6962 kernel" in ansib │ │ │ +001bea20: 6c65 5f66 6163 7473 2e70 6163 6b61 6765 le_facts.package │ │ │ +001bea30: 7320 616e 6420 2262 6f6f 7463 2220 696e s and "bootc" in │ │ │ +001bea40: 2061 6e73 6962 6c65 5f66 6163 7473 2e70 ansible_facts.p │ │ │ +001bea50: 6163 6b61 6765 730a 2020 2020 616e 6420 ackages. and │ │ │ +001bea60: 6e6f 7420 226f 7065 6e73 6869 6674 2d6b not "openshift-k │ │ │ +001bea70: 7562 656c 6574 2220 696e 2061 6e73 6962 ubelet" in ansib │ │ │ +001bea80: 6c65 5f66 6163 7473 2e70 6163 6b61 6765 le_facts.package │ │ │ +001bea90: 7320 616e 6420 226f 7374 7265 6522 2069 s and "ostree" i │ │ │ +001beaa0: 6e20 616e 7369 626c 655f 7072 6f63 5f63 n ansible_proc_c │ │ │ +001beab0: 6d64 6c69 6e65 0a20 2020 2029 2061 6e64 mdline. ) and │ │ │ +001beac0: 206e 6f74 2028 2061 6e73 6962 6c65 5f76 not ( ansible_v │ │ │ +001bead0: 6972 7475 616c 697a 6174 696f 6e5f 7479 irtualization_ty │ │ │ +001beae0: 7065 2069 6e20 5b22 646f 636b 6572 222c pe in ["docker", │ │ │ +001beaf0: 2022 6c78 6322 2c20 226f 7065 6e76 7a22 "lxc", "openvz" │ │ │ +001beb00: 2c20 2270 6f64 6d61 6e22 2c0a 2020 2020 , "podman",. │ │ │ +001beb10: 2263 6f6e 7461 696e 6572 225d 2029 2029 "container"] ) ) │ │ │ +001beb20: 0a20 202d 2027 222f 746d 7022 2069 6e20 . - '"/tmp" in │ │ │ +001beb30: 616e 7369 626c 655f 6d6f 756e 7473 207c ansible_mounts | │ │ │ +001beb40: 206d 6170 2861 7474 7269 6275 7465 3d22 map(attribute=" │ │ │ +001beb50: 6d6f 756e 7422 2920 7c20 6c69 7374 270a mount") | list'. │ │ │ +001beb60: 2020 7461 6773 3a0a 2020 2d20 4e49 5354 tags:. - NIST │ │ │ +001beb70: 2d38 3030 2d35 332d 4143 2d36 0a20 202d -800-53-AC-6. - │ │ │ +001beb80: 204e 4953 542d 3830 302d 3533 2d41 432d NIST-800-53-AC- │ │ │ +001beb90: 3628 3129 0a20 202d 204e 4953 542d 3830 6(1). - NIST-80 │ │ │ +001beba0: 302d 3533 2d43 4d2d 3628 6129 0a20 202d 0-53-CM-6(a). - │ │ │ +001bebb0: 204e 4953 542d 3830 302d 3533 2d43 4d2d NIST-800-53-CM- │ │ │ +001bebc0: 3728 6129 0a20 202d 204e 4953 542d 3830 7(a). - NIST-80 │ │ │ +001bebd0: 302d 3533 2d43 4d2d 3728 6229 0a20 202d 0-53-CM-7(b). - │ │ │ +001bebe0: 204e 4953 542d 3830 302d 3533 2d4d 502d NIST-800-53-MP- │ │ │ +001bebf0: 370a 2020 2d20 636f 6e66 6967 7572 655f 7. - configure_ │ │ │ +001bec00: 7374 7261 7465 6779 0a20 202d 2068 6967 strategy. - hig │ │ │ +001bec10: 685f 6469 7372 7570 7469 6f6e 0a20 202d h_disruption. - │ │ │ +001bec20: 206c 6f77 5f63 6f6d 706c 6578 6974 790a low_complexity. │ │ │ +001bec30: 2020 2d20 6d65 6469 756d 5f73 6576 6572 - medium_sever │ │ │ +001bec40: 6974 790a 2020 2d20 6d6f 756e 745f 6f70 ity. - mount_op │ │ │ +001bec50: 7469 6f6e 5f74 6d70 5f6e 6f64 6576 0a20 tion_tmp_nodev. │ │ │ +001bec60: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565 - no_reboot_nee │ │ │ +001bec70: 6465 640a 0a2d 206e 616d 653a 2027 4164 ded..- name: 'Ad │ │ │ +001bec80: 6420 6e6f 6465 7620 4f70 7469 6f6e 2074 d nodev Option t │ │ │ +001bec90: 6f20 2f74 6d70 3a20 4372 6561 7465 206d o /tmp: Create m │ │ │ +001beca0: 6f75 6e74 5f69 6e66 6f20 6469 6374 696f ount_info dictio │ │ │ +001becb0: 6e61 7279 2076 6172 6961 626c 6527 0a20 nary variable'. │ │ │ +001becc0: 2073 6574 5f66 6163 743a 0a20 2020 206d set_fact:. m │ │ │ +001becd0: 6f75 6e74 5f69 6e66 6f3a 2027 7b7b 206d ount_info: '{{ m │ │ │ +001bece0: 6f75 6e74 5f69 6e66 6f7c 6465 6661 756c ount_info|defaul │ │ │ +001becf0: 7428 7b7d 297c 636f 6d62 696e 6528 7b69 t({})|combine({i │ │ │ +001bed00: 7465 6d2e 303a 2069 7465 6d2e 317d 2920 tem.0: item.1}) │ │ │ +001bed10: 7d7d 270a 2020 7769 7468 5f74 6f67 6574 }}'. with_toget │ │ │ +001bed20: 6865 723a 0a20 202d 2027 7b7b 2064 6576 her:. - '{{ dev │ │ │ +001bed30: 6963 655f 6e61 6d65 2e73 7464 6f75 745f ice_name.stdout_ │ │ │ +001bed40: 6c69 6e65 735b 305d 2e73 706c 6974 2829 lines[0].split() │ │ │ +001bed50: 207c 206d 6170 2827 276c 6f77 6572 2727 | map(''lower'' │ │ │ +001bed60: 2920 7c20 6c69 7374 207d 7d27 0a20 202d ) | list }}'. - │ │ │ +001bed70: 2027 7b7b 2064 6576 6963 655f 6e61 6d65 '{{ device_name │ │ │ +001bed80: 2e73 7464 6f75 745f 6c69 6e65 735b 315d .stdout_lines[1] │ │ │ +001bed90: 2e73 706c 6974 2829 207c 206c 6973 7420 .split() | list │ │ │ +001beda0: 7d7d 270a 2020 7768 656e 3a0a 2020 2d20 }}'. when:. - │ │ │ +001bedb0: 2820 6e6f 7420 2820 226b 6572 6e65 6c22 ( not ( "kernel" │ │ │ +001bedc0: 2069 6e20 616e 7369 626c 655f 6661 6374 in ansible_fact │ │ │ +001bedd0: 732e 7061 636b 6167 6573 2061 6e64 2022 s.packages and " │ │ │ +001bede0: 626f 6f74 6322 2069 6e20 616e 7369 626c bootc" in ansibl │ │ │ +001bedf0: 655f 6661 6374 732e 7061 636b 6167 6573 e_facts.packages │ │ │ +001bee00: 0a20 2020 2061 6e64 206e 6f74 2022 6f70 . and not "op │ │ │ +001bee10: 656e 7368 6966 742d 6b75 6265 6c65 7422 enshift-kubelet" │ │ │ +001bee20: 2069 6e20 616e 7369 626c 655f 6661 6374 in ansible_fact │ │ │ +001bee30: 732e 7061 636b 6167 6573 2061 6e64 2022 s.packages and " │ │ │ +001bee40: 6f73 7472 6565 2220 696e 2061 6e73 6962 ostree" in ansib │ │ │ +001bee50: 6c65 5f70 726f 635f 636d 646c 696e 650a le_proc_cmdline. │ │ │ +001bee60: 2020 2020 2920 616e 6420 6e6f 7420 2820 ) and not ( │ │ │ +001bee70: 616e 7369 626c 655f 7669 7274 7561 6c69 ansible_virtuali │ │ │ +001bee80: 7a61 7469 6f6e 5f74 7970 6520 696e 205b zation_type in [ │ │ │ +001bee90: 2264 6f63 6b65 7222 2c20 226c 7863 222c "docker", "lxc", │ │ │ +001beea0: 2022 6f70 656e 767a 222c 2022 706f 646d "openvz", "podm │ │ │ +001beeb0: 616e 222c 0a20 2020 2022 636f 6e74 6169 an",. "contai │ │ │ +001beec0: 6e65 7222 5d20 2920 290a 2020 2d20 2722 ner"] ) ). - '" │ │ │ +001beed0: 2f74 6d70 2220 696e 2061 6e73 6962 6c65 /tmp" in ansible │ │ │ +001beee0: 5f6d 6f75 6e74 7320 7c20 6d61 7028 6174 _mounts | map(at │ │ │ +001beef0: 7472 6962 7574 653d 226d 6f75 6e74 2229 tribute="mount") │ │ │ +001bef00: 207c 206c 6973 7427 0a20 202d 2064 6576 | list'. - dev │ │ │ +001bef10: 6963 655f 6e61 6d65 2e73 7464 6f75 7420 ice_name.stdout │ │ │ +001bef20: 6973 2064 6566 696e 6564 2061 6e64 2064 is defined and d │ │ │ +001bef30: 6576 6963 655f 6e61 6d65 2e73 7464 6f75 evice_name.stdou │ │ │ +001bef40: 745f 6c69 6e65 7320 6973 2064 6566 696e t_lines is defin │ │ │ +001bef50: 6564 0a20 202d 2028 6465 7669 6365 5f6e ed. - (device_n │ │ │ +001bef60: 616d 652e 7374 646f 7574 207c 206c 656e ame.stdout | len │ │ │ +001bef70: 6774 6820 2667 743b 2030 290a 2020 7461 gth > 0). ta │ │ │ +001bef80: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030 gs:. - NIST-800 │ │ │ +001bef90: 2d35 332d 4143 2d36 0a20 202d 204e 4953 -53-AC-6. - NIS │ │ │ +001befa0: 542d 3830 302d 3533 2d41 432d 3628 3129 T-800-53-AC-6(1) │ │ │ +001befb0: 0a20 202d 204e 4953 542d 3830 302d 3533 . - NIST-800-53 │ │ │ +001befc0: 2d43 4d2d 3628 6129 0a20 202d 204e 4953 -CM-6(a). - NIS │ │ │ +001befd0: 542d 3830 302d 3533 2d43 4d2d 3728 6129 T-800-53-CM-7(a) │ │ │ +001befe0: 0a20 202d 204e 4953 542d 3830 302d 3533 . - NIST-800-53 │ │ │ +001beff0: 2d43 4d2d 3728 6229 0a20 202d 204e 4953 -CM-7(b). - NIS │ │ │ +001bf000: 542d 3830 302d 3533 2d4d 502d 370a 2020 T-800-53-MP-7. │ │ │ +001bf010: 2d20 636f 6e66 6967 7572 655f 7374 7261 - configure_stra │ │ │ +001bf020: 7465 6779 0a20 202d 2068 6967 685f 6469 tegy. - high_di │ │ │ +001bf030: 7372 7570 7469 6f6e 0a20 202d 206c 6f77 sruption. - low │ │ │ +001bf040: 5f63 6f6d 706c 6578 6974 790a 2020 2d20 _complexity. - │ │ │ +001bf050: 6d65 6469 756d 5f73 6576 6572 6974 790a medium_severity. │ │ │ +001bf060: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e - mount_option │ │ │ +001bf070: 5f74 6d70 5f6e 6f64 6576 0a20 202d 206e _tmp_nodev. - n │ │ │ +001bf080: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a o_reboot_needed. │ │ │ +001bf090: 0a2d 206e 616d 653a 2027 4164 6420 6e6f .- name: 'Add no │ │ │ +001bf0a0: 6465 7620 4f70 7469 6f6e 2074 6f20 2f74 dev Option to /t │ │ │ +001bf0b0: 6d70 3a20 4966 202f 746d 7020 6e6f 7420 mp: If /tmp not │ │ │ +001bf0c0: 6d6f 756e 7465 642c 2063 7261 6674 206d mounted, craft m │ │ │ +001bf0d0: 6f75 6e74 5f69 6e66 6f20 6d61 6e75 616c ount_info manual │ │ │ +001bf0e0: 6c79 270a 2020 7365 745f 6661 6374 3a0a ly'. set_fact:. │ │ │ +001bf0f0: 2020 2020 6d6f 756e 745f 696e 666f 3a20 mount_info: │ │ │ +001bf100: 277b 7b20 6d6f 756e 745f 696e 666f 7c64 '{{ mount_info|d │ │ │ +001bf110: 6566 6175 6c74 287b 7d29 7c63 6f6d 6269 efault({})|combi │ │ │ +001bf120: 6e65 287b 6974 656d 2e30 3a20 6974 656d ne({item.0: item │ │ │ +001bf130: 2e31 7d29 207d 7d27 0a20 2077 6974 685f .1}) }}'. with_ │ │ │ +001bf140: 746f 6765 7468 6572 3a0a 2020 2d20 2d20 together:. - - │ │ │ +001bf150: 7461 7267 6574 0a20 2020 202d 2073 6f75 target. - sou │ │ │ +001bf160: 7263 650a 2020 2020 2d20 6673 7479 7065 rce. - fstype │ │ │ +001bf170: 0a20 2020 202d 206f 7074 696f 6e73 0a20 . - options. │ │ │ +001bf180: 202d 202d 202f 746d 700a 2020 2020 2d20 - - /tmp. - │ │ │ +001bf190: 2727 0a20 2020 202d 2027 270a 2020 2020 ''. - ''. │ │ │ +001bf1a0: 2d20 6465 6661 756c 7473 0a20 2077 6865 - defaults. whe │ │ │ +001bf1b0: 6e3a 0a20 202d 2028 206e 6f74 2028 2022 n:. - ( not ( " │ │ │ +001bf1c0: 6b65 726e 656c 2220 696e 2061 6e73 6962 kernel" in ansib │ │ │ +001bf1d0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765 le_facts.package │ │ │ +001bf1e0: 7320 616e 6420 2262 6f6f 7463 2220 696e s and "bootc" in │ │ │ +001bf1f0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70 ansible_facts.p │ │ │ +001bf200: 6163 6b61 6765 730a 2020 2020 616e 6420 ackages. and │ │ │ +001bf210: 6e6f 7420 226f 7065 6e73 6869 6674 2d6b not "openshift-k │ │ │ +001bf220: 7562 656c 6574 2220 696e 2061 6e73 6962 ubelet" in ansib │ │ │ +001bf230: 6c65 5f66 6163 7473 2e70 6163 6b61 6765 le_facts.package │ │ │ +001bf240: 7320 616e 6420 226f 7374 7265 6522 2069 s and "ostree" i │ │ │ +001bf250: 6e20 616e 7369 626c 655f 7072 6f63 5f63 n ansible_proc_c │ │ │ +001bf260: 6d64 6c69 6e65 0a20 2020 2029 2061 6e64 mdline. ) and │ │ │ +001bf270: 206e 6f74 2028 2061 6e73 6962 6c65 5f76 not ( ansible_v │ │ │ +001bf280: 6972 7475 616c 697a 6174 696f 6e5f 7479 irtualization_ty │ │ │ +001bf290: 7065 2069 6e20 5b22 646f 636b 6572 222c pe in ["docker", │ │ │ +001bf2a0: 2022 6c78 6322 2c20 226f 7065 6e76 7a22 "lxc", "openvz" │ │ │ +001bf2b0: 2c20 2270 6f64 6d61 6e22 2c0a 2020 2020 , "podman",. │ │ │ +001bf2c0: 2263 6f6e 7461 696e 6572 225d 2029 2029 "container"] ) ) │ │ │ +001bf2d0: 0a20 202d 2027 222f 746d 7022 2069 6e20 . - '"/tmp" in │ │ │ +001bf2e0: 616e 7369 626c 655f 6d6f 756e 7473 207c ansible_mounts | │ │ │ +001bf2f0: 206d 6170 2861 7474 7269 6275 7465 3d22 map(attribute=" │ │ │ +001bf300: 6d6f 756e 7422 2920 7c20 6c69 7374 270a mount") | list'. │ │ │ +001bf310: 2020 2d20 2822 2d2d 6673 7461 6222 207c - ("--fstab" | │ │ │ +001bf320: 206c 656e 6774 6820 3d3d 2030 290a 2020 length == 0). │ │ │ +001bf330: 2d20 6465 7669 6365 5f6e 616d 652e 7374 - device_name.st │ │ │ +001bf340: 646f 7574 2069 7320 6465 6669 6e65 6420 dout is defined │ │ │ +001bf350: 616e 6420 6465 7669 6365 5f6e 616d 652e and device_name. │ │ │ +001bf360: 7374 646f 7574 5f6c 696e 6573 2069 7320 stdout_lines is │ │ │ +001bf370: 6465 6669 6e65 640a 2020 2d20 2864 6576 defined. - (dev │ │ │ +001bf380: 6963 655f 6e61 6d65 2e73 7464 6f75 7420 ice_name.stdout │ │ │ +001bf390: 7c20 6c65 6e67 7468 203d 3d20 3029 0a20 | length == 0). │ │ │ +001bf3a0: 2074 6167 733a 0a20 202d 204e 4953 542d tags:. - NIST- │ │ │ +001bf3b0: 3830 302d 3533 2d41 432d 360a 2020 2d20 800-53-AC-6. - │ │ │ +001bf3c0: 4e49 5354 2d38 3030 2d35 332d 4143 2d36 NIST-800-53-AC-6 │ │ │ +001bf3d0: 2831 290a 2020 2d20 4e49 5354 2d38 3030 (1). - NIST-800 │ │ │ +001bf3e0: 2d35 332d 434d 2d36 2861 290a 2020 2d20 -53-CM-6(a). - │ │ │ +001bf3f0: 4e49 5354 2d38 3030 2d35 332d 434d 2d37 NIST-800-53-CM-7 │ │ │ +001bf400: 2861 290a 2020 2d20 4e49 5354 2d38 3030 (a). - NIST-800 │ │ │ +001bf410: 2d35 332d 434d 2d37 2862 290a 2020 2d20 -53-CM-7(b). - │ │ │ +001bf420: 4e49 5354 2d38 3030 2d35 332d 4d50 2d37 NIST-800-53-MP-7 │ │ │ +001bf430: 0a20 202d 2063 6f6e 6669 6775 7265 5f73 . - configure_s │ │ │ +001bf440: 7472 6174 6567 790a 2020 2d20 6869 6768 trategy. - high │ │ │ +001bf450: 5f64 6973 7275 7074 696f 6e0a 2020 2d20 _disruption. - │ │ │ +001bf460: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20 low_complexity. │ │ │ +001bf470: 202d 206d 6564 6975 6d5f 7365 7665 7269 - medium_severi │ │ │ +001bf480: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074 ty. - mount_opt │ │ │ +001bf490: 696f 6e5f 746d 705f 6e6f 6465 760a 2020 ion_tmp_nodev. │ │ │ +001bf4a0: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564 - no_reboot_need │ │ │ +001bf4b0: 6564 0a0a 2d20 6e61 6d65 3a20 2741 6464 ed..- name: 'Add │ │ │ +001bf4c0: 206e 6f64 6576 204f 7074 696f 6e20 746f nodev Option to │ │ │ +001bf4d0: 202f 746d 703a 204d 616b 6520 7375 7265 /tmp: Make sure │ │ │ +001bf4e0: 206e 6f64 6576 206f 7074 696f 6e20 6973 nodev option is │ │ │ +001bf4f0: 2070 6172 7420 6f66 2074 6865 2074 6f20 part of the to │ │ │ +001bf500: 2f74 6d70 206f 7074 696f 6e73 270a 2020 /tmp options'. │ │ │ +001bf510: 7365 745f 6661 6374 3a0a 2020 2020 6d6f set_fact:. mo │ │ │ +001bf520: 756e 745f 696e 666f 3a20 277b 7b20 6d6f unt_info: '{{ mo │ │ │ +001bf530: 756e 745f 696e 666f 207c 2063 6f6d 6269 unt_info | combi │ │ │ +001bf540: 6e65 2820 7b27 276f 7074 696f 6e73 2727 ne( {''options'' │ │ │ +001bf550: 3a27 2727 277e 286d 6f75 6e74 5f69 6e66 :''''~(mount_inf │ │ │ +001bf560: 6f2e 6f70 7469 6f6e 7320 7c0a 2020 2020 o.options |. │ │ │ +001bf570: 2020 6465 6661 756c 7428 2727 2727 2929 default('''')) │ │ │ +001bf580: 7e28 2727 2c27 2720 6966 2028 6d6f 756e ~('','' if (moun │ │ │ +001bf590: 745f 696e 666f 2e6f 7074 696f 6e73 207c t_info.options | │ │ │ +001bf5a0: 2064 6566 6175 6c74 2827 2727 2729 2920 default('''')) │ │ │ +001bf5b0: 656c 7365 2027 2727 2729 7e27 276e 6f64 else '''')~''nod │ │ │ +001bf5c0: 6576 2727 0a20 2020 2020 207d 2920 7d7d ev''. }) }} │ │ │ +001bf5d0: 270a 2020 7768 656e 3a0a 2020 2d20 2820 '. when:. - ( │ │ │ +001bf5e0: 6e6f 7420 2820 226b 6572 6e65 6c22 2069 not ( "kernel" i │ │ │ +001bf5f0: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ +001bf600: 7061 636b 6167 6573 2061 6e64 2022 626f packages and "bo │ │ │ +001bf610: 6f74 6322 2069 6e20 616e 7369 626c 655f otc" in ansible_ │ │ │ +001bf620: 6661 6374 732e 7061 636b 6167 6573 0a20 facts.packages. │ │ │ +001bf630: 2020 2061 6e64 206e 6f74 2022 6f70 656e and not "open │ │ │ +001bf640: 7368 6966 742d 6b75 6265 6c65 7422 2069 shift-kubelet" i │ │ │ +001bf650: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ +001bf660: 7061 636b 6167 6573 2061 6e64 2022 6f73 packages and "os │ │ │ +001bf670: 7472 6565 2220 696e 2061 6e73 6962 6c65 tree" in ansible │ │ │ +001bf680: 5f70 726f 635f 636d 646c 696e 650a 2020 _proc_cmdline. │ │ │ +001bf690: 2020 2920 616e 6420 6e6f 7420 2820 616e ) and not ( an │ │ │ +001bf6a0: 7369 626c 655f 7669 7274 7561 6c69 7a61 sible_virtualiza │ │ │ +001bf6b0: 7469 6f6e 5f74 7970 6520 696e 205b 2264 tion_type in ["d │ │ │ +001bf6c0: 6f63 6b65 7222 2c20 226c 7863 222c 2022 ocker", "lxc", " │ │ │ +001bf6d0: 6f70 656e 767a 222c 2022 706f 646d 616e openvz", "podman │ │ │ +001bf6e0: 222c 0a20 2020 2022 636f 6e74 6169 6e65 ",. "containe │ │ │ +001bf6f0: 7222 5d20 2920 290a 2020 2d20 2722 2f74 r"] ) ). - '"/t │ │ │ +001bf700: 6d70 2220 696e 2061 6e73 6962 6c65 5f6d mp" in ansible_m │ │ │ +001bf710: 6f75 6e74 7320 7c20 6d61 7028 6174 7472 ounts | map(attr │ │ │ +001bf720: 6962 7574 653d 226d 6f75 6e74 2229 207c ibute="mount") | │ │ │ +001bf730: 206c 6973 7427 0a20 202d 206d 6f75 6e74 list'. - mount │ │ │ +001bf740: 5f69 6e66 6f20 6973 2064 6566 696e 6564 _info is defined │ │ │ +001bf750: 2061 6e64 2022 6e6f 6465 7622 206e 6f74 and "nodev" not │ │ │ +001bf760: 2069 6e20 286d 6f75 6e74 5f69 6e66 6f2e in (mount_info. │ │ │ +001bf770: 6f70 7469 6f6e 7320 7c20 6465 6661 756c options | defaul │ │ │ +001bf780: 7428 2727 2929 0a20 2074 6167 733a 0a20 t('')). tags:. │ │ │ +001bf790: 202d 204e 4953 542d 3830 302d 3533 2d41 - NIST-800-53-A │ │ │ +001bf7a0: 432d 360a 2020 2d20 4e49 5354 2d38 3030 C-6. - NIST-800 │ │ │ +001bf7b0: 2d35 332d 4143 2d36 2831 290a 2020 2d20 -53-AC-6(1). - │ │ │ +001bf7c0: 4e49 5354 2d38 3030 2d35 332d 434d 2d36 NIST-800-53-CM-6 │ │ │ +001bf7d0: 2861 290a 2020 2d20 4e49 5354 2d38 3030 (a). - NIST-800 │ │ │ +001bf7e0: 2d35 332d 434d 2d37 2861 290a 2020 2d20 -53-CM-7(a). - │ │ │ +001bf7f0: 4e49 5354 2d38 3030 2d35 332d 434d 2d37 NIST-800-53-CM-7 │ │ │ +001bf800: 2862 290a 2020 2d20 4e49 5354 2d38 3030 (b). - NIST-800 │ │ │ +001bf810: 2d35 332d 4d50 2d37 0a20 202d 2063 6f6e -53-MP-7. - con │ │ │ +001bf820: 6669 6775 7265 5f73 7472 6174 6567 790a figure_strategy. │ │ │ +001bf830: 2020 2d20 6869 6768 5f64 6973 7275 7074 - high_disrupt │ │ │ +001bf840: 696f 6e0a 2020 2d20 6c6f 775f 636f 6d70 ion. - low_comp │ │ │ +001bf850: 6c65 7869 7479 0a20 202d 206d 6564 6975 lexity. - mediu │ │ │ +001bf860: 6d5f 7365 7665 7269 7479 0a20 202d 206d m_severity. - m │ │ │ +001bf870: 6f75 6e74 5f6f 7074 696f 6e5f 746d 705f ount_option_tmp_ │ │ │ +001bf880: 6e6f 6465 760a 2020 2d20 6e6f 5f72 6562 nodev. - no_reb │ │ │ +001bf890: 6f6f 745f 6e65 6564 6564 0a0a 2d20 6e61 oot_needed..- na │ │ │ +001bf8a0: 6d65 3a20 2741 6464 206e 6f64 6576 204f me: 'Add nodev O │ │ │ +001bf8b0: 7074 696f 6e20 746f 202f 746d 703a 2045 ption to /tmp: E │ │ │ +001bf8c0: 6e73 7572 6520 2f74 6d70 2069 7320 6d6f nsure /tmp is mo │ │ │ +001bf8d0: 756e 7465 6420 7769 7468 206e 6f64 6576 unted with nodev │ │ │ +001bf8e0: 206f 7074 696f 6e27 0a20 2061 6e73 6962 option'. ansib │ │ │ +001bf8f0: 6c65 2e70 6f73 6978 2e6d 6f75 6e74 3a0a le.posix.mount:. │ │ │ +001bf900: 2020 2020 7061 7468 3a20 2f74 6d70 0a20 path: /tmp. │ │ │ +001bf910: 2020 2073 7263 3a20 277b 7b20 6d6f 756e src: '{{ moun │ │ │ +001bf920: 745f 696e 666f 2e73 6f75 7263 6520 7c20 t_info.source | │ │ │ +001bf930: 6465 6661 756c 7428 2727 2727 2920 7d7d default('''') }} │ │ │ +001bf940: 270a 2020 2020 6f70 7473 3a20 277b 7b20 '. opts: '{{ │ │ │ +001bf950: 6d6f 756e 745f 696e 666f 2e6f 7074 696f mount_info.optio │ │ │ +001bf960: 6e73 207c 2064 6566 6175 6c74 2827 2727 ns | default(''' │ │ │ +001bf970: 2729 207d 7d27 0a20 2020 2073 7461 7465 ') }}'. state │ │ │ +001bf980: 3a20 6d6f 756e 7465 640a 2020 2020 6673 : mounted. fs │ │ │ +001bf990: 7479 7065 3a20 277b 7b20 6d6f 756e 745f type: '{{ mount_ │ │ │ +001bf9a0: 696e 666f 2e66 7374 7970 6520 7c20 6465 info.fstype | de │ │ │ +001bf9b0: 6661 756c 7428 2727 2727 2920 7d7d 270a fault('''') }}'. │ │ │ +001bf9c0: 2020 7265 6769 7374 6572 3a20 6d6f 756e register: moun │ │ │ +001bf9d0: 745f 7265 7375 6c74 0a20 2066 6169 6c65 t_result. faile │ │ │ +001bf9e0: 645f 7768 656e 3a0a 2020 2d20 6d6f 756e d_when:. - moun │ │ │ +001bf9f0: 745f 7265 7375 6c74 2069 7320 6661 696c t_result is fail │ │ │ +001bfa00: 6564 0a20 202d 2027 2727 7461 7267 6574 ed. - '''target │ │ │ +001bfa10: 2069 7320 6275 7379 2727 206e 6f74 2069 is busy'' not i │ │ │ +001bfa20: 6e20 286d 6f75 6e74 5f72 6573 756c 742e n (mount_result. │ │ │ +001bfa30: 6d73 6720 7c20 6465 6661 756c 7428 2727 msg | default('' │ │ │ +001bfa40: 2727 2929 270a 2020 2d20 2727 2761 6c72 ''))'. - '''alr │ │ │ +001bfa50: 6561 6479 206d 6f75 6e74 6564 2727 206e eady mounted'' n │ │ │ +001bfa60: 6f74 2069 6e20 286d 6f75 6e74 5f72 6573 ot in (mount_res │ │ │ +001bfa70: 756c 742e 6d73 6720 7c20 6465 6661 756c ult.msg | defaul │ │ │ +001bfa80: 7428 2727 2727 2929 270a 2020 7768 656e t(''''))'. when │ │ │ +001bfa90: 3a0a 2020 2d20 2820 6e6f 7420 2820 226b :. - ( not ( "k │ │ │ +001bfaa0: 6572 6e65 6c22 2069 6e20 616e 7369 626c ernel" in ansibl │ │ │ +001bfab0: 655f 6661 6374 732e 7061 636b 6167 6573 e_facts.packages │ │ │ +001bfac0: 2061 6e64 2022 626f 6f74 6322 2069 6e20 and "bootc" in │ │ │ +001bfad0: 616e 7369 626c 655f 6661 6374 732e 7061 ansible_facts.pa │ │ │ +001bfae0: 636b 6167 6573 0a20 2020 2061 6e64 206e ckages. and n │ │ │ +001bfaf0: 6f74 2022 6f70 656e 7368 6966 742d 6b75 ot "openshift-ku │ │ │ +001bfb00: 6265 6c65 7422 2069 6e20 616e 7369 626c belet" in ansibl │ │ │ +001bfb10: 655f 6661 6374 732e 7061 636b 6167 6573 e_facts.packages │ │ │ +001bfb20: 2061 6e64 2022 6f73 7472 6565 2220 696e and "ostree" in │ │ │ +001bfb30: 2061 6e73 6962 6c65 5f70 726f 635f 636d ansible_proc_cm │ │ │ +001bfb40: 646c 696e 650a 2020 2020 2920 616e 6420 dline. ) and │ │ │ +001bfb50: 6e6f 7420 2820 616e 7369 626c 655f 7669 not ( ansible_vi │ │ │ +001bfb60: 7274 7561 6c69 7a61 7469 6f6e 5f74 7970 rtualization_typ │ │ │ +001bfb70: 6520 696e 205b 2264 6f63 6b65 7222 2c20 e in ["docker", │ │ │ +001bfb80: 226c 7863 222c 2022 6f70 656e 767a 222c "lxc", "openvz", │ │ │ +001bfb90: 2022 706f 646d 616e 222c 0a20 2020 2022 "podman",. " │ │ │ +001bfba0: 636f 6e74 6169 6e65 7222 5d20 2920 290a container"] ) ). │ │ │ +001bfbb0: 2020 2d20 2722 2f74 6d70 2220 696e 2061 - '"/tmp" in a │ │ │ +001bfbc0: 6e73 6962 6c65 5f6d 6f75 6e74 7320 7c20 nsible_mounts | │ │ │ +001bfbd0: 6d61 7028 6174 7472 6962 7574 653d 226d map(attribute="m │ │ │ +001bfbe0: 6f75 6e74 2229 207c 206c 6973 7427 0a20 ount") | list'. │ │ │ +001bfbf0: 202d 206d 6f75 6e74 5f69 6e66 6f20 6973 - mount_info is │ │ │ +001bfc00: 2064 6566 696e 6564 0a20 202d 2028 6465 defined. - (de │ │ │ +001bfc10: 7669 6365 5f6e 616d 652e 7374 646f 7574 vice_name.stdout │ │ │ +001bfc20: 2069 7320 6465 6669 6e65 6420 616e 6420 is defined and │ │ │ +001bfc30: 2864 6576 6963 655f 6e61 6d65 2e73 7464 (device_name.std │ │ │ +001bfc40: 6f75 7420 7c20 6c65 6e67 7468 2026 6774 out | length > │ │ │ +001bfc50: 3b20 3029 2920 6f72 2028 222d 2d66 7374 ; 0)) or ("--fst │ │ │ +001bfc60: 6162 220a 2020 2020 7c20 6c65 6e67 7468 ab". | length │ │ │ +001bfc70: 203d 3d20 3029 0a20 2074 6167 733a 0a20 == 0). tags:. │ │ │ +001bfc80: 202d 204e 4953 542d 3830 302d 3533 2d41 - NIST-800-53-A │ │ │ +001bfc90: 432d 360a 2020 2d20 4e49 5354 2d38 3030 C-6. - NIST-800 │ │ │ +001bfca0: 2d35 332d 4143 2d36 2831 290a 2020 2d20 -53-AC-6(1). - │ │ │ +001bfcb0: 4e49 5354 2d38 3030 2d35 332d 434d 2d36 NIST-800-53-CM-6 │ │ │ +001bfcc0: 2861 290a 2020 2d20 4e49 5354 2d38 3030 (a). - NIST-800 │ │ │ +001bfcd0: 2d35 332d 434d 2d37 2861 290a 2020 2d20 -53-CM-7(a). - │ │ │ +001bfce0: 4e49 5354 2d38 3030 2d35 332d 434d 2d37 NIST-800-53-CM-7 │ │ │ +001bfcf0: 2862 290a 2020 2d20 4e49 5354 2d38 3030 (b). - NIST-800 │ │ │ +001bfd00: 2d35 332d 4d50 2d37 0a20 202d 2063 6f6e -53-MP-7. - con │ │ │ +001bfd10: 6669 6775 7265 5f73 7472 6174 6567 790a figure_strategy. │ │ │ +001bfd20: 2020 2d20 6869 6768 5f64 6973 7275 7074 - high_disrupt │ │ │ +001bfd30: 696f 6e0a 2020 2d20 6c6f 775f 636f 6d70 ion. - low_comp │ │ │ +001bfd40: 6c65 7869 7479 0a20 202d 206d 6564 6975 lexity. - mediu │ │ │ +001bfd50: 6d5f 7365 7665 7269 7479 0a20 202d 206d m_severity. - m │ │ │ +001bfd60: 6f75 6e74 5f6f 7074 696f 6e5f 746d 705f ount_option_tmp_ │ │ │ +001bfd70: 6e6f 6465 760a 2020 2d20 6e6f 5f72 6562 nodev. - no_reb │ │ │ +001bfd80: 6f6f 745f 6e65 6564 6564 0a3c 2f63 6f64 oot_needed.
Remed │ │ │ +001bfe40: 6961 7469 6f6e 2053 6865 6c6c 2073 6372 iation Shell scr │ │ │ +001bfe50: 6970 7420 e287 b23c 2f61 3e3c 6272 3e3c ipt ...
< │ │ │ +001bfe60: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +001bfe70: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +001bfe80: 7365 2220 6964 3d22 6964 3530 3922 3e3c se" id="id509">< │ │ │ +001bfe90: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +001bfea0: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +001bfeb0: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +001bfec0: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +001bfed0: 3e3c 7472 3e3c 7468 3e52 6562 6f6f 743a >Reboot: │ │ │ +001bfee0: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ +001bff00: 3c70 7265 3e3c 636f 6465 3e23 2052 656d
# Rem
│ │ │ +001bff10: 6564 6961 7469 6f6e 2069 7320 6170 706c  ediation is appl
│ │ │ +001bff20: 6963 6162 6c65 206f 6e6c 7920 696e 2063  icable only in c
│ │ │ +001bff30: 6572 7461 696e 2070 6c61 7466 6f72 6d73  ertain platforms
│ │ │ +001bff40: 0a69 6620 2820 2120 2820 7b20 7270 6d20  .if ( ! ( { rpm 
│ │ │ +001bff50: 2d2d 7175 6965 7420 2d71 206b 6572 6e65  --quiet -q kerne
│ │ │ +001bff60: 6c20 3b7d 2026 616d 703b 2661 6d70 3b20  l ;} && 
│ │ │ +001bff70: 7b20 7270 6d20 2d2d 7175 6965 7420 2d71  { rpm --quiet -q
│ │ │ +001bff80: 2062 6f6f 7463 203b 7d20 2661 6d70 3b26   bootc ;} &&
│ │ │ +001bff90: 616d 703b 207b 2021 2072 706d 202d 2d71  amp; { ! rpm --q
│ │ │ +001bffa0: 7569 6574 202d 7120 6f70 656e 7368 6966  uiet -q openshif
│ │ │ +001bffb0: 742d 6b75 6265 6c65 7420 3b7d 2026 616d  t-kubelet ;} &am
│ │ │ +001bffc0: 703b 2661 6d70 3b20 285b 202d 6620 2f72  p;& ([ -f /r
│ │ │ +001bffd0: 756e 2f6f 7374 7265 652d 626f 6f74 6564  un/ostree-booted
│ │ │ +001bffe0: 205d 207c 7c20 5b20 2d4c 202f 6f73 7472   ] || [ -L /ostr
│ │ │ +001bfff0: 6565 205d 2920 2920 2661 6d70 3b26 616d  ee ]) ) &&am
│ │ │ +001c0000: 703b 2021 2028 205b 202d 6620 2f2e 646f  p; ! ( [ -f /.do
│ │ │ +001c0010: 636b 6572 656e 7620 5d20 7c7c 205b 202d  ckerenv ] || [ -
│ │ │ +001c0020: 6620 2f72 756e 2f2e 636f 6e74 6169 6e65  f /run/.containe
│ │ │ +001c0030: 7265 6e76 205d 2029 2029 2026 616d 703b  renv ] ) ) &
│ │ │ +001c0040: 2661 6d70 3b20 7b20 2820 6669 6e64 6d6e  & { ( findmn
│ │ │ +001c0050: 7420 2d2d 6b65 726e 656c 2022 2f74 6d70  t --kernel "/tmp
│ │ │ +001c0060: 2220 2667 743b 202f 6465 762f 6e75 6c6c  " > /dev/null
│ │ │ +001c0070: 207c 7c20 6669 6e64 6d6e 7420 2d2d 6673   || findmnt --fs
│ │ │ +001c0080: 7461 6220 222f 746d 7022 2026 6774 3b20  tab "/tmp" > 
│ │ │ +001c0090: 2f64 6576 2f6e 756c 6c20 293b 207d 3b20  /dev/null ); }; 
│ │ │ +001c00a0: 7468 656e 0a0a 6675 6e63 7469 6f6e 2070  then..function p
│ │ │ +001c00b0: 6572 666f 726d 5f72 656d 6564 6961 7469  erform_remediati
│ │ │ +001c00c0: 6f6e 207b 0a0a 2020 2020 0a20 2020 2020  on {..    .     
│ │ │ +001c00d0: 2020 2023 2074 6865 206d 6f75 6e74 2070     # the mount p
│ │ │ +001c00e0: 6f69 6e74 202f 746d 7020 6861 7320 746f  oint /tmp has to
│ │ │ +001c00f0: 2062 6520 6465 6669 6e65 6420 696e 202f   be defined in /
│ │ │ +001c0100: 6574 632f 6673 7461 620a 2020 2020 2020  etc/fstab.      
│ │ │ +001c0110: 2020 2320 6265 666f 7265 2074 6869 7320    # before this 
│ │ │ +001c0120: 7265 6d65 6469 6174 696f 6e20 6361 6e20  remediation can 
│ │ │ +001c0130: 6265 2065 7865 6375 7465 642e 2049 6e20  be executed. In 
│ │ │ +001c0140: 6361 7365 2069 7420 6973 206e 6f74 2064  case it is not d
│ │ │ +001c0150: 6566 696e 6564 2c20 7468 650a 2020 2020  efined, the.    
│ │ │ +001c0160: 2020 2020 2320 7265 6d65 6469 6174 696f      # remediatio
│ │ │ +001c0170: 6e20 6162 6f72 7473 2061 6e64 206e 6f20  n aborts and no 
│ │ │ +001c0180: 6368 616e 6765 7320 7265 6761 7264 696e  changes regardin
│ │ │ +001c0190: 6720 7468 6520 6d6f 756e 7420 706f 696e  g the mount poin
│ │ │ +001c01a0: 7420 6172 6520 646f 6e65 2e0a 2020 2020  t are done..    
│ │ │ +001c01b0: 2020 2020 6d6f 756e 745f 706f 696e 745f      mount_point_
│ │ │ +001c01c0: 6d61 7463 685f 7265 6765 7870 3d22 2428  match_regexp="$(
│ │ │ +001c01d0: 7072 696e 7466 2022 5e5b 5b3a 7370 6163  printf "^[[:spac
│ │ │ +001c01e0: 653a 5d5d 2a5b 5e23 5d2e 2a5b 5b3a 7370  e:]]*[^#].*[[:sp
│ │ │ +001c01f0: 6163 653a 5d5d 2573 5b5b 3a73 7061 6365  ace:]]%s[[:space
│ │ │ +001c0200: 3a5d 5d22 2022 2f74 6d70 2229 220a 0a20  :]]" "/tmp")".. 
│ │ │ +001c0210: 2020 2067 7265 7020 2224 6d6f 756e 745f     grep "$mount_
│ │ │ +001c0220: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ +001c0230: 7870 2220 2d71 202f 6574 632f 6673 7461  xp" -q /etc/fsta
│ │ │ +001c0240: 6220 5c0a 2020 2020 2020 2020 7c7c 207b  b \.        || {
│ │ │ +001c0250: 2065 6368 6f20 2254 6865 206d 6f75 6e74   echo "The mount
│ │ │ +001c0260: 2070 6f69 6e74 2027 2f74 6d70 2720 6973   point '/tmp' is
│ │ │ +001c0270: 206e 6f74 2065 7665 6e20 696e 202f 6574   not even in /et
│ │ │ +001c0280: 632f 6673 7461 622c 2073 6f20 7765 2063  c/fstab, so we c
│ │ │ +001c0290: 616e 2774 2073 6574 2075 7020 6d6f 756e  an't set up moun
│ │ │ +001c02a0: 7420 6f70 7469 6f6e 7322 2026 6774 3b26  t options" >&
│ │ │ +001c02b0: 616d 703b 323b 0a20 2020 2020 2020 2020  amp;2;.         
│ │ │ +001c02c0: 2020 2020 2020 2065 6368 6f20 224e 6f74         echo "Not
│ │ │ +001c02d0: 2072 656d 6564 6961 7469 6e67 2c20 6265   remediating, be
│ │ │ +001c02e0: 6361 7573 6520 7468 6572 6520 6973 206e  cause there is n
│ │ │ +001c02f0: 6f20 7265 636f 7264 206f 6620 2f74 6d70  o record of /tmp
│ │ │ +001c0300: 2069 6e20 2f65 7463 2f66 7374 6162 2220   in /etc/fstab" 
│ │ │ +001c0310: 2667 743b 2661 6d70 3b32 3b20 7265 7475  >&2; retu
│ │ │ +001c0320: 726e 2031 3b20 7d0a 2020 2020 0a0a 0a20  rn 1; }.    ... 
│ │ │ +001c0330: 2020 206d 6f75 6e74 5f70 6f69 6e74 5f6d     mount_point_m
│ │ │ +001c0340: 6174 6368 5f72 6567 6578 703d 2224 2870  atch_regexp="$(p
│ │ │ +001c0350: 7269 6e74 6620 225e 5b5b 3a73 7061 6365  rintf "^[[:space
│ │ │ +001c0360: 3a5d 5d2a 5b5e 235d 2e2a 5b5b 3a73 7061  :]]*[^#].*[[:spa
│ │ │ +001c0370: 6365 3a5d 5d25 735b 5b3a 7370 6163 653a  ce:]]%s[[:space:
│ │ │ +001c0380: 5d5d 2220 2f74 6d70 2922 0a0a 2020 2020  ]]" /tmp)"..    
│ │ │ +001c0390: 2320 4966 2074 6865 206d 6f75 6e74 2070  # If the mount p
│ │ │ +001c03a0: 6f69 6e74 2069 7320 6e6f 7420 696e 202f  oint is not in /
│ │ │ +001c03b0: 6574 632f 6673 7461 622c 2067 6574 2070  etc/fstab, get p
│ │ │ +001c03c0: 7265 7669 6f75 7320 6d6f 756e 7420 6f70  revious mount op
│ │ │ +001c03d0: 7469 6f6e 7320 6672 6f6d 202f 6574 632f  tions from /etc/
│ │ │ +001c03e0: 6d74 6162 0a20 2020 2069 6620 2120 6772  mtab.    if ! gr
│ │ │ +001c03f0: 6570 202d 7120 2224 6d6f 756e 745f 706f  ep -q "$mount_po
│ │ │ +001c0400: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ +001c0410: 2220 2f65 7463 2f66 7374 6162 3b20 7468  " /etc/fstab; th
│ │ │ +001c0420: 656e 0a20 2020 2020 2020 2023 2072 756e  en.        # run
│ │ │ +001c0430: 7469 6d65 206f 7074 7320 7769 7468 6f75  time opts withou
│ │ │ +001c0440: 7420 736f 6d65 2061 7574 6f6d 6174 6963  t some automatic
│ │ │ +001c0450: 206b 6572 6e65 6c2f 7573 6572 7370 6163   kernel/userspac
│ │ │ +001c0460: 652d 6164 6465 6420 6465 6661 756c 7473  e-added defaults
│ │ │ +001c0470: 0a20 2020 2020 2020 2070 7265 7669 6f75  .        previou
│ │ │ +001c0480: 735f 6d6f 756e 745f 6f70 7473 3d24 2867  s_mount_opts=$(g
│ │ │ +001c0490: 7265 7020 2224 6d6f 756e 745f 706f 696e  rep "$mount_poin
│ │ │ +001c04a0: 745f 6d61 7463 685f 7265 6765 7870 2220  t_match_regexp" 
│ │ │ +001c04b0: 2f65 7463 2f6d 7461 6220 7c20 6865 6164  /etc/mtab | head
│ │ │ +001c04c0: 202d 3120 7c20 2061 776b 2027 7b70 7269   -1 |  awk '{pri
│ │ │ +001c04d0: 6e74 2024 347d 2720 5c0a 2020 2020 2020  nt $4}' \.      
│ │ │ +001c04e0: 2020 2020 2020 2020 2020 2020 2020 7c20                | 
│ │ │ +001c04f0: 7365 6420 2d45 2022 732f 2872 777c 6465  sed -E "s/(rw|de
│ │ │ +001c0500: 6661 756c 7473 7c73 6563 6c61 6265 6c7c  faults|seclabel|
│ │ │ +001c0510: 6e6f 6465 7629 282c 7c24 292f 2f67 3b73  nodev)(,|$)//g;s
│ │ │ +001c0520: 2f2c 242f 2f22 290a 2020 2020 2020 2020  /,$//").        
│ │ │ +001c0530: 5b20 2224 7072 6576 696f 7573 5f6d 6f75  [ "$previous_mou
│ │ │ +001c0540: 6e74 5f6f 7074 7322 205d 2026 616d 703b  nt_opts" ] &
│ │ │ +001c0550: 2661 6d70 3b20 7072 6576 696f 7573 5f6d  & previous_m
│ │ │ +001c0560: 6f75 6e74 5f6f 7074 732b 3d22 2c22 0a20  ount_opts+=",". 
│ │ │ +001c0570: 2020 2020 2020 2023 2049 6e20 6973 6f39         # In iso9
│ │ │ +001c0580: 3636 3020 6669 6c65 7379 7374 656d 7320  660 filesystems 
│ │ │ +001c0590: 6d74 6162 2063 6f75 6c64 2064 6573 6372  mtab could descr
│ │ │ +001c05a0: 6962 6520 6120 2262 6c6f 636b 7369 7a65  ibe a "blocksize
│ │ │ +001c05b0: 2220 7661 6c75 652c 2074 6869 7320 7368  " value, this sh
│ │ │ +001c05c0: 6f75 6c64 2062 6520 7265 666c 6563 7465  ould be reflecte
│ │ │ +001c05d0: 6420 696e 0a20 2020 2020 2020 2023 2066  d in.        # f
│ │ │ +001c05e0: 7374 6162 2061 7320 2262 6c6f 636b 222e  stab as "block".
│ │ │ +001c05f0: 2020 5468 6520 6e65 7874 2076 6172 6961    The next varia
│ │ │ +001c0600: 626c 6520 6973 2074 6f20 7361 7469 7366  ble is to satisf
│ │ │ +001c0610: 7920 7368 656c 6c63 6865 636b 2053 4332  y shellcheck SC2
│ │ │ +001c0620: 3035 302e 0a20 2020 2020 2020 2066 735f  050..        fs_
│ │ │ +001c0630: 7479 7065 3d22 220a 2020 2020 2020 2020  type="".        
│ │ │ +001c0640: 6966 205b 2020 2224 6673 5f74 7970 6522  if [  "$fs_type"
│ │ │ +001c0650: 203d 3d20 2269 736f 3936 3630 2220 5d20   == "iso9660" ] 
│ │ │ +001c0660: 3b20 7468 656e 0a20 2020 2020 2020 2020  ; then.         
│ │ │ +001c0670: 2020 2070 7265 7669 6f75 735f 6d6f 756e     previous_moun
│ │ │ +001c0680: 745f 6f70 7473 3d24 2873 6564 2027 732f  t_opts=$(sed 's/
│ │ │ +001c0690: 626c 6f63 6b73 697a 653d 2f62 6c6f 636b  blocksize=/block
│ │ │ +001c06a0: 3d2f 2720 266c 743b 266c 743b 266c 743b  =/' <<<
│ │ │ +001c06b0: 2022 2470 7265 7669 6f75 735f 6d6f 756e   "$previous_moun
│ │ │ +001c06c0: 745f 6f70 7473 2229 0a20 2020 2020 2020  t_opts").       
│ │ │ +001c06d0: 2066 690a 2020 2020 2020 2020 6563 686f   fi.        echo
│ │ │ +001c06e0: 2022 202f 746d 7020 2064 6566 6175 6c74   " /tmp  default
│ │ │ +001c06f0: 732c 247b 7072 6576 696f 7573 5f6d 6f75  s,${previous_mou
│ │ │ +001c0700: 6e74 5f6f 7074 737d 6e6f 6465 7620 3020  nt_opts}nodev 0 
│ │ │ +001c0710: 3022 2026 6774 3b26 6774 3b20 2f65 7463  0" >> /etc
│ │ │ +001c0720: 2f66 7374 6162 0a20 2020 2023 2049 6620  /fstab.    # If 
│ │ │ +001c0730: 7468 6520 6d6f 756e 745f 6f70 7420 6f70  the mount_opt op
│ │ │ +001c0740: 7469 6f6e 2069 7320 6e6f 7420 616c 7265  tion is not alre
│ │ │ +001c0750: 6164 7920 696e 2074 6865 206d 6f75 6e74  ady in the mount
│ │ │ +001c0760: 2070 6f69 6e74 2773 202f 6574 632f 6673   point's /etc/fs
│ │ │ +001c0770: 7461 6220 656e 7472 792c 2061 6464 2069  tab entry, add i
│ │ │ +001c0780: 740a 2020 2020 656c 6966 2021 2067 7265  t.    elif ! gre
│ │ │ +001c0790: 7020 2224 6d6f 756e 745f 706f 696e 745f  p "$mount_point_
│ │ │ +001c07a0: 6d61 7463 685f 7265 6765 7870 2220 2f65  match_regexp" /e
│ │ │ +001c07b0: 7463 2f66 7374 6162 207c 2067 7265 7020  tc/fstab | grep 
│ │ │ +001c07c0: 2d71 2022 6e6f 6465 7622 3b20 7468 656e  -q "nodev"; then
│ │ │ +001c07d0: 0a20 2020 2020 2020 2070 7265 7669 6f75  .        previou
│ │ │ +001c07e0: 735f 6d6f 756e 745f 6f70 7473 3d24 2867  s_mount_opts=$(g
│ │ │ +001c07f0: 7265 7020 2224 6d6f 756e 745f 706f 696e  rep "$mount_poin
│ │ │ +001c0800: 745f 6d61 7463 685f 7265 6765 7870 2220  t_match_regexp" 
│ │ │ +001c0810: 2f65 7463 2f66 7374 6162 207c 2061 776b  /etc/fstab | awk
│ │ │ +001c0820: 2027 7b70 7269 6e74 2024 347d 2729 0a20   '{print $4}'). 
│ │ │ +001c0830: 2020 2020 2020 2073 6564 202d 6920 2273         sed -i "s
│ │ │ +001c0840: 7c5c 2824 7b6d 6f75 6e74 5f70 6f69 6e74  |\(${mount_point
│ │ │ +001c0850: 5f6d 6174 6368 5f72 6567 6578 707d 2e2a  _match_regexp}.*
│ │ │ +001c0860: 247b 7072 6576 696f 7573 5f6d 6f75 6e74  ${previous_mount
│ │ │ +001c0870: 5f6f 7074 737d 5c29 7c5c 312c 6e6f 6465  _opts}\)|\1,node
│ │ │ +001c0880: 767c 2220 2f65 7463 2f66 7374 6162 0a20  v|" /etc/fstab. 
│ │ │ +001c0890: 2020 2066 690a 0a0a 2020 2020 6966 206d     fi...    if m
│ │ │ +001c08a0: 6b64 6972 202d 7020 222f 746d 7022 3b20  kdir -p "/tmp"; 
│ │ │ +001c08b0: 7468 656e 0a20 2020 2020 2020 2069 6620  then.        if 
│ │ │ +001c08c0: 6d6f 756e 7470 6f69 6e74 202d 7120 222f  mountpoint -q "/
│ │ │ +001c08d0: 746d 7022 3b20 7468 656e 0a20 2020 2020  tmp"; then.     
│ │ │ +001c08e0: 2020 2020 2020 206d 6f75 6e74 202d 6f20         mount -o 
│ │ │ +001c08f0: 7265 6d6f 756e 7420 2d2d 7461 7267 6574  remount --target
│ │ │ +001c0900: 2022 2f74 6d70 220a 2020 2020 2020 2020   "/tmp".        
│ │ │ +001c0910: 6669 0a20 2020 2066 690a 7d0a 0a70 6572  fi.    fi.}..per
│ │ │ +001c0920: 666f 726d 5f72 656d 6564 6961 7469 6f6e  form_remediation
│ │ │ +001c0930: 0a0a 656c 7365 0a20 2020 2026 6774 3b26  ..else.    >&
│ │ │ +001c0940: 616d 703b 3220 6563 686f 2027 5265 6d65  amp;2 echo 'Reme
│ │ │ +001c0950: 6469 6174 696f 6e20 6973 206e 6f74 2061  diation is not a
│ │ │ +001c0960: 7070 6c69 6361 626c 652c 206e 6f74 6869  pplicable, nothi
│ │ │ +001c0970: 6e67 2077 6173 2064 6f6e 6527 0a66 690a  ng was done'.fi.
│ │ │ +001c0980: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ +001c0a30: 5265 6d65 6469 6174 696f 6e20 416e 6163 Remediation Anac │ │ │ +001c0a40: 6f6e 6461 2073 6e69 7070 6574 20e2 87b2 onda snippet ... │ │ │ +001c0a50: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity:< │ │ │ +001c0b40: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
.part /tmp --mo
│ │ │ +001c0b90: 756e 746f 7074 696f 6e73 3d22 6e6f 6465  untoptions="node
│ │ │ +001c0ba0: 7622 0a3c 2f63 6f64 653e 3c2f 7072 653e  v".
│ │ │ 001c0bb0: 3c2f 6469 763e 3c2f 6469 763e 3c2f 7464 │ │ │ 001c0be0: 3c74 7220 6461 7461 2d74 742d 6964 3d22 Remediatio │ │ │ -001c1c60: 6e20 416e 6163 6f6e 6461 2073 6e69 7070 n Anaconda snipp │ │ │ -001c1c70: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ -001c1cf0: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Strategy: │ │ │ -001c1d80: 3c74 643e 656e 6162 6c65 3c2f 7464 3e3c < │ │ │ -001c1d90: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
low
Disru │ │ │ +001c0b00: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e68 ption:h │ │ │ +001c0b10: 6967 683c 2f74 643e 3c2f 7472 3e3c 7472 igh
Reboot:false
Stra │ │ │ +001c0b50: 7465 6779 3a3c 2f74 683e 3c74 643e 656e tegy:en │ │ │ +001c0b60: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
Complexi │ │ │ -001c1d00: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -001c1d10: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Disruption:high
Reboo │ │ │ -001c1d50: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -001c1d60: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
enable
.part /tm
│ │ │ -001c1db0: 7020 2d2d 6d6f 756e 746f 7074 696f 6e73  p --mountoptions
│ │ │ -001c1dc0: 3d22 6e6f 6578 6563 220a 3c2f 636f 6465  ="noexec".
Remedi │ │ │ -001c1e80: 6174 696f 6e20 416e 7369 626c 6520 736e ation Ansible sn │ │ │ -001c1e90: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ -001c1f40: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c
- n
│ │ │ -001c1fd0: 616d 653a 2047 6174 6865 7220 7468 6520  ame: Gather the 
│ │ │ -001c1fe0: 7061 636b 6167 6520 6661 6374 730a 2020  package facts.  
│ │ │ -001c1ff0: 7061 636b 6167 655f 6661 6374 733a 0a20  package_facts:. 
│ │ │ -001c2000: 2020 206d 616e 6167 6572 3a20 6175 746f     manager: auto
│ │ │ -001c2010: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ -001c2020: 542d 3830 302d 3533 2d41 432d 360a 2020  T-800-53-AC-6.  
│ │ │ -001c2030: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ -001c2040: 2d36 2831 290a 2020 2d20 4e49 5354 2d38  -6(1).  - NIST-8
│ │ │ -001c2050: 3030 2d35 332d 434d 2d36 2861 290a 2020  00-53-CM-6(a).  
│ │ │ -001c2060: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -001c2070: 2d37 2861 290a 2020 2d20 4e49 5354 2d38  -7(a).  - NIST-8
│ │ │ -001c2080: 3030 2d35 332d 434d 2d37 2862 290a 2020  00-53-CM-7(b).  
│ │ │ -001c2090: 2d20 4e49 5354 2d38 3030 2d35 332d 4d50  - NIST-800-53-MP
│ │ │ -001c20a0: 2d37 0a20 202d 2063 6f6e 6669 6775 7265  -7.  - configure
│ │ │ -001c20b0: 5f73 7472 6174 6567 790a 2020 2d20 6869  _strategy.  - hi
│ │ │ -001c20c0: 6768 5f64 6973 7275 7074 696f 6e0a 2020  gh_disruption.  
│ │ │ -001c20d0: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ -001c20e0: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ -001c20f0: 7269 7479 0a20 202d 206d 6f75 6e74 5f6f  rity.  - mount_o
│ │ │ -001c2100: 7074 696f 6e5f 746d 705f 6e6f 6578 6563  ption_tmp_noexec
│ │ │ -001c2110: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ -001c2120: 6565 6465 640a 0a2d 206e 616d 653a 2027  eeded..- name: '
│ │ │ -001c2130: 4164 6420 6e6f 6578 6563 204f 7074 696f  Add noexec Optio
│ │ │ -001c2140: 6e20 746f 202f 746d 703a 2043 6865 636b  n to /tmp: Check
│ │ │ -001c2150: 2069 6e66 6f72 6d61 7469 6f6e 2061 7373   information ass
│ │ │ -001c2160: 6f63 6961 7465 6420 746f 206d 6f75 6e74  ociated to mount
│ │ │ -001c2170: 706f 696e 7427 0a20 2061 6e73 6962 6c65  point'.  ansible
│ │ │ -001c2180: 2e62 7569 6c74 696e 2e63 6f6d 6d61 6e64  .builtin.command
│ │ │ -001c2190: 3a20 6669 6e64 6d6e 7420 2d2d 6673 7461  : findmnt --fsta
│ │ │ -001c21a0: 6220 272f 746d 7027 0a20 2072 6567 6973  b '/tmp'.  regis
│ │ │ -001c21b0: 7465 723a 2064 6576 6963 655f 6e61 6d65  ter: device_name
│ │ │ -001c21c0: 0a20 2066 6169 6c65 645f 7768 656e 3a20  .  failed_when: 
│ │ │ -001c21d0: 6465 7669 6365 5f6e 616d 652e 7263 2026  device_name.rc &
│ │ │ -001c21e0: 6774 3b20 310a 2020 6368 616e 6765 645f  gt; 1.  changed_
│ │ │ -001c21f0: 7768 656e 3a20 6661 6c73 650a 2020 6368  when: false.  ch
│ │ │ -001c2200: 6563 6b5f 6d6f 6465 3a20 6661 6c73 650a  eck_mode: false.
│ │ │ -001c2210: 2020 7768 656e 3a0a 2020 2d20 2820 6e6f    when:.  - ( no
│ │ │ -001c2220: 7420 2820 226b 6572 6e65 6c22 2069 6e20  t ( "kernel" in 
│ │ │ -001c2230: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001c2240: 636b 6167 6573 2061 6e64 2022 626f 6f74  ckages and "boot
│ │ │ -001c2250: 6322 2069 6e20 616e 7369 626c 655f 6661  c" in ansible_fa
│ │ │ -001c2260: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ -001c2270: 2061 6e64 206e 6f74 2022 6f70 656e 7368   and not "opensh
│ │ │ -001c2280: 6966 742d 6b75 6265 6c65 7422 2069 6e20  ift-kubelet" in 
│ │ │ -001c2290: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001c22a0: 636b 6167 6573 2061 6e64 2022 6f73 7472  ckages and "ostr
│ │ │ -001c22b0: 6565 2220 696e 2061 6e73 6962 6c65 5f70  ee" in ansible_p
│ │ │ -001c22c0: 726f 635f 636d 646c 696e 650a 2020 2020  roc_cmdline.    
│ │ │ -001c22d0: 2920 616e 6420 6e6f 7420 2820 616e 7369  ) and not ( ansi
│ │ │ -001c22e0: 626c 655f 7669 7274 7561 6c69 7a61 7469  ble_virtualizati
│ │ │ -001c22f0: 6f6e 5f74 7970 6520 696e 205b 2264 6f63  on_type in ["doc
│ │ │ -001c2300: 6b65 7222 2c20 226c 7863 222c 2022 6f70  ker", "lxc", "op
│ │ │ -001c2310: 656e 767a 222c 2022 706f 646d 616e 222c  envz", "podman",
│ │ │ -001c2320: 0a20 2020 2022 636f 6e74 6169 6e65 7222  .    "container"
│ │ │ -001c2330: 5d20 2920 290a 2020 2d20 2722 2f74 6d70  ] ) ).  - '"/tmp
│ │ │ -001c2340: 2220 696e 2061 6e73 6962 6c65 5f6d 6f75  " in ansible_mou
│ │ │ -001c2350: 6e74 7320 7c20 6d61 7028 6174 7472 6962  nts | map(attrib
│ │ │ -001c2360: 7574 653d 226d 6f75 6e74 2229 207c 206c  ute="mount") | l
│ │ │ -001c2370: 6973 7427 0a20 2074 6167 733a 0a20 202d  ist'.  tags:.  -
│ │ │ -001c2380: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ -001c2390: 360a 2020 2d20 4e49 5354 2d38 3030 2d35  6.  - NIST-800-5
│ │ │ -001c23a0: 332d 4143 2d36 2831 290a 2020 2d20 4e49  3-AC-6(1).  - NI
│ │ │ -001c23b0: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ -001c23c0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -001c23d0: 332d 434d 2d37 2861 290a 2020 2d20 4e49  3-CM-7(a).  - NI
│ │ │ -001c23e0: 5354 2d38 3030 2d35 332d 434d 2d37 2862  ST-800-53-CM-7(b
│ │ │ -001c23f0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -001c2400: 332d 4d50 2d37 0a20 202d 2063 6f6e 6669  3-MP-7.  - confi
│ │ │ -001c2410: 6775 7265 5f73 7472 6174 6567 790a 2020  gure_strategy.  
│ │ │ -001c2420: 2d20 6869 6768 5f64 6973 7275 7074 696f  - high_disruptio
│ │ │ -001c2430: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65  n.  - low_comple
│ │ │ -001c2440: 7869 7479 0a20 202d 206d 6564 6975 6d5f  xity.  - medium_
│ │ │ -001c2450: 7365 7665 7269 7479 0a20 202d 206d 6f75  severity.  - mou
│ │ │ -001c2460: 6e74 5f6f 7074 696f 6e5f 746d 705f 6e6f  nt_option_tmp_no
│ │ │ -001c2470: 6578 6563 0a20 202d 206e 6f5f 7265 626f  exec.  - no_rebo
│ │ │ -001c2480: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d  ot_needed..- nam
│ │ │ -001c2490: 653a 2027 4164 6420 6e6f 6578 6563 204f  e: 'Add noexec O
│ │ │ -001c24a0: 7074 696f 6e20 746f 202f 746d 703a 2043  ption to /tmp: C
│ │ │ -001c24b0: 7265 6174 6520 6d6f 756e 745f 696e 666f  reate mount_info
│ │ │ -001c24c0: 2064 6963 7469 6f6e 6172 7920 7661 7269   dictionary vari
│ │ │ -001c24d0: 6162 6c65 270a 2020 7365 745f 6661 6374  able'.  set_fact
│ │ │ -001c24e0: 3a0a 2020 2020 6d6f 756e 745f 696e 666f  :.    mount_info
│ │ │ -001c24f0: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ -001c2500: 7c64 6566 6175 6c74 287b 7d29 7c63 6f6d  |default({})|com
│ │ │ -001c2510: 6269 6e65 287b 6974 656d 2e30 3a20 6974  bine({item.0: it
│ │ │ -001c2520: 656d 2e31 7d29 207d 7d27 0a20 2077 6974  em.1}) }}'.  wit
│ │ │ -001c2530: 685f 746f 6765 7468 6572 3a0a 2020 2d20  h_together:.  - 
│ │ │ -001c2540: 277b 7b20 6465 7669 6365 5f6e 616d 652e  '{{ device_name.
│ │ │ -001c2550: 7374 646f 7574 5f6c 696e 6573 5b30 5d2e  stdout_lines[0].
│ │ │ -001c2560: 7370 6c69 7428 2920 7c20 6d61 7028 2727  split() | map(''
│ │ │ -001c2570: 6c6f 7765 7227 2729 207c 206c 6973 7420  lower'') | list 
│ │ │ -001c2580: 7d7d 270a 2020 2d20 277b 7b20 6465 7669  }}'.  - '{{ devi
│ │ │ -001c2590: 6365 5f6e 616d 652e 7374 646f 7574 5f6c  ce_name.stdout_l
│ │ │ -001c25a0: 696e 6573 5b31 5d2e 7370 6c69 7428 2920  ines[1].split() 
│ │ │ -001c25b0: 7c20 6c69 7374 207d 7d27 0a20 2077 6865  | list }}'.  whe
│ │ │ -001c25c0: 6e3a 0a20 202d 2028 206e 6f74 2028 2022  n:.  - ( not ( "
│ │ │ -001c25d0: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ -001c25e0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -001c25f0: 7320 616e 6420 2262 6f6f 7463 2220 696e  s and "bootc" in
│ │ │ -001c2600: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -001c2610: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ -001c2620: 6e6f 7420 226f 7065 6e73 6869 6674 2d6b  not "openshift-k
│ │ │ -001c2630: 7562 656c 6574 2220 696e 2061 6e73 6962  ubelet" in ansib
│ │ │ -001c2640: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -001c2650: 7320 616e 6420 226f 7374 7265 6522 2069  s and "ostree" i
│ │ │ -001c2660: 6e20 616e 7369 626c 655f 7072 6f63 5f63  n ansible_proc_c
│ │ │ -001c2670: 6d64 6c69 6e65 0a20 2020 2029 2061 6e64  mdline.    ) and
│ │ │ -001c2680: 206e 6f74 2028 2061 6e73 6962 6c65 5f76   not ( ansible_v
│ │ │ -001c2690: 6972 7475 616c 697a 6174 696f 6e5f 7479  irtualization_ty
│ │ │ -001c26a0: 7065 2069 6e20 5b22 646f 636b 6572 222c  pe in ["docker",
│ │ │ -001c26b0: 2022 6c78 6322 2c20 226f 7065 6e76 7a22   "lxc", "openvz"
│ │ │ -001c26c0: 2c20 2270 6f64 6d61 6e22 2c0a 2020 2020  , "podman",.    
│ │ │ -001c26d0: 2263 6f6e 7461 696e 6572 225d 2029 2029  "container"] ) )
│ │ │ -001c26e0: 0a20 202d 2027 222f 746d 7022 2069 6e20  .  - '"/tmp" in 
│ │ │ -001c26f0: 616e 7369 626c 655f 6d6f 756e 7473 207c  ansible_mounts |
│ │ │ -001c2700: 206d 6170 2861 7474 7269 6275 7465 3d22   map(attribute="
│ │ │ -001c2710: 6d6f 756e 7422 2920 7c20 6c69 7374 270a  mount") | list'.
│ │ │ -001c2720: 2020 2d20 6465 7669 6365 5f6e 616d 652e    - device_name.
│ │ │ -001c2730: 7374 646f 7574 2069 7320 6465 6669 6e65  stdout is define
│ │ │ -001c2740: 6420 616e 6420 6465 7669 6365 5f6e 616d  d and device_nam
│ │ │ -001c2750: 652e 7374 646f 7574 5f6c 696e 6573 2069  e.stdout_lines i
│ │ │ -001c2760: 7320 6465 6669 6e65 640a 2020 2d20 2864  s defined.  - (d
│ │ │ -001c2770: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ -001c2780: 7420 7c20 6c65 6e67 7468 2026 6774 3b20  t | length > 
│ │ │ -001c2790: 3029 0a20 2074 6167 733a 0a20 202d 204e  0).  tags:.  - N
│ │ │ -001c27a0: 4953 542d 3830 302d 3533 2d41 432d 360a  IST-800-53-AC-6.
│ │ │ -001c27b0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001c27c0: 4143 2d36 2831 290a 2020 2d20 4e49 5354  AC-6(1).  - NIST
│ │ │ -001c27d0: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ -001c27e0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001c27f0: 434d 2d37 2861 290a 2020 2d20 4e49 5354  CM-7(a).  - NIST
│ │ │ -001c2800: 2d38 3030 2d35 332d 434d 2d37 2862 290a  -800-53-CM-7(b).
│ │ │ -001c2810: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001c2820: 4d50 2d37 0a20 202d 2063 6f6e 6669 6775  MP-7.  - configu
│ │ │ -001c2830: 7265 5f73 7472 6174 6567 790a 2020 2d20  re_strategy.  - 
│ │ │ -001c2840: 6869 6768 5f64 6973 7275 7074 696f 6e0a  high_disruption.
│ │ │ -001c2850: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ -001c2860: 7479 0a20 202d 206d 6564 6975 6d5f 7365  ty.  - medium_se
│ │ │ -001c2870: 7665 7269 7479 0a20 202d 206d 6f75 6e74  verity.  - mount
│ │ │ -001c2880: 5f6f 7074 696f 6e5f 746d 705f 6e6f 6578  _option_tmp_noex
│ │ │ -001c2890: 6563 0a20 202d 206e 6f5f 7265 626f 6f74  ec.  - no_reboot
│ │ │ -001c28a0: 5f6e 6565 6465 640a 0a2d 206e 616d 653a  _needed..- name:
│ │ │ -001c28b0: 2027 4164 6420 6e6f 6578 6563 204f 7074   'Add noexec Opt
│ │ │ -001c28c0: 696f 6e20 746f 202f 746d 703a 2049 6620  ion to /tmp: If 
│ │ │ -001c28d0: 2f74 6d70 206e 6f74 206d 6f75 6e74 6564  /tmp not mounted
│ │ │ -001c28e0: 2c20 6372 6166 7420 6d6f 756e 745f 696e  , craft mount_in
│ │ │ -001c28f0: 666f 206d 616e 7561 6c6c 7927 0a20 2073  fo manually'.  s
│ │ │ -001c2900: 6574 5f66 6163 743a 0a20 2020 206d 6f75  et_fact:.    mou
│ │ │ -001c2910: 6e74 5f69 6e66 6f3a 2027 7b7b 206d 6f75  nt_info: '{{ mou
│ │ │ -001c2920: 6e74 5f69 6e66 6f7c 6465 6661 756c 7428  nt_info|default(
│ │ │ -001c2930: 7b7d 297c 636f 6d62 696e 6528 7b69 7465  {})|combine({ite
│ │ │ -001c2940: 6d2e 303a 2069 7465 6d2e 317d 2920 7d7d  m.0: item.1}) }}
│ │ │ -001c2950: 270a 2020 7769 7468 5f74 6f67 6574 6865  '.  with_togethe
│ │ │ -001c2960: 723a 0a20 202d 202d 2074 6172 6765 740a  r:.  - - target.
│ │ │ -001c2970: 2020 2020 2d20 736f 7572 6365 0a20 2020      - source.   
│ │ │ -001c2980: 202d 2066 7374 7970 650a 2020 2020 2d20   - fstype.    - 
│ │ │ -001c2990: 6f70 7469 6f6e 730a 2020 2d20 2d20 2f74  options.  - - /t
│ │ │ -001c29a0: 6d70 0a20 2020 202d 2027 270a 2020 2020  mp.    - ''.    
│ │ │ -001c29b0: 2d20 2727 0a20 2020 202d 2064 6566 6175  - ''.    - defau
│ │ │ -001c29c0: 6c74 730a 2020 7768 656e 3a0a 2020 2d20  lts.  when:.  - 
│ │ │ -001c29d0: 2820 6e6f 7420 2820 226b 6572 6e65 6c22  ( not ( "kernel"
│ │ │ -001c29e0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001c29f0: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ -001c2a00: 626f 6f74 6322 2069 6e20 616e 7369 626c  bootc" in ansibl
│ │ │ -001c2a10: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001c2a20: 0a20 2020 2061 6e64 206e 6f74 2022 6f70  .    and not "op
│ │ │ -001c2a30: 656e 7368 6966 742d 6b75 6265 6c65 7422  enshift-kubelet"
│ │ │ -001c2a40: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001c2a50: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ -001c2a60: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ -001c2a70: 6c65 5f70 726f 635f 636d 646c 696e 650a  le_proc_cmdline.
│ │ │ -001c2a80: 2020 2020 2920 616e 6420 6e6f 7420 2820      ) and not ( 
│ │ │ -001c2a90: 616e 7369 626c 655f 7669 7274 7561 6c69  ansible_virtuali
│ │ │ -001c2aa0: 7a61 7469 6f6e 5f74 7970 6520 696e 205b  zation_type in [
│ │ │ -001c2ab0: 2264 6f63 6b65 7222 2c20 226c 7863 222c  "docker", "lxc",
│ │ │ -001c2ac0: 2022 6f70 656e 767a 222c 2022 706f 646d   "openvz", "podm
│ │ │ -001c2ad0: 616e 222c 0a20 2020 2022 636f 6e74 6169  an",.    "contai
│ │ │ -001c2ae0: 6e65 7222 5d20 2920 290a 2020 2d20 2722  ner"] ) ).  - '"
│ │ │ -001c2af0: 2f74 6d70 2220 696e 2061 6e73 6962 6c65  /tmp" in ansible
│ │ │ -001c2b00: 5f6d 6f75 6e74 7320 7c20 6d61 7028 6174  _mounts | map(at
│ │ │ -001c2b10: 7472 6962 7574 653d 226d 6f75 6e74 2229  tribute="mount")
│ │ │ -001c2b20: 207c 206c 6973 7427 0a20 202d 2028 222d   | list'.  - ("-
│ │ │ -001c2b30: 2d66 7374 6162 2220 7c20 6c65 6e67 7468  -fstab" | length
│ │ │ -001c2b40: 203d 3d20 3029 0a20 202d 2064 6576 6963   == 0).  - devic
│ │ │ -001c2b50: 655f 6e61 6d65 2e73 7464 6f75 7420 6973  e_name.stdout is
│ │ │ -001c2b60: 2064 6566 696e 6564 2061 6e64 2064 6576   defined and dev
│ │ │ -001c2b70: 6963 655f 6e61 6d65 2e73 7464 6f75 745f  ice_name.stdout_
│ │ │ -001c2b80: 6c69 6e65 7320 6973 2064 6566 696e 6564  lines is defined
│ │ │ -001c2b90: 0a20 202d 2028 6465 7669 6365 5f6e 616d  .  - (device_nam
│ │ │ -001c2ba0: 652e 7374 646f 7574 207c 206c 656e 6774  e.stdout | lengt
│ │ │ -001c2bb0: 6820 3d3d 2030 290a 2020 7461 6773 3a0a  h == 0).  tags:.
│ │ │ -001c2bc0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001c2bd0: 4143 2d36 0a20 202d 204e 4953 542d 3830  AC-6.  - NIST-80
│ │ │ -001c2be0: 302d 3533 2d41 432d 3628 3129 0a20 202d  0-53-AC-6(1).  -
│ │ │ -001c2bf0: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -001c2c00: 3628 6129 0a20 202d 204e 4953 542d 3830  6(a).  - NIST-80
│ │ │ -001c2c10: 302d 3533 2d43 4d2d 3728 6129 0a20 202d  0-53-CM-7(a).  -
│ │ │ -001c2c20: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -001c2c30: 3728 6229 0a20 202d 204e 4953 542d 3830  7(b).  - NIST-80
│ │ │ -001c2c40: 302d 3533 2d4d 502d 370a 2020 2d20 636f  0-53-MP-7.  - co
│ │ │ -001c2c50: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ -001c2c60: 0a20 202d 2068 6967 685f 6469 7372 7570  .  - high_disrup
│ │ │ -001c2c70: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d  tion.  - low_com
│ │ │ -001c2c80: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ -001c2c90: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ -001c2ca0: 6d6f 756e 745f 6f70 7469 6f6e 5f74 6d70  mount_option_tmp
│ │ │ -001c2cb0: 5f6e 6f65 7865 630a 2020 2d20 6e6f 5f72  _noexec.  - no_r
│ │ │ -001c2cc0: 6562 6f6f 745f 6e65 6564 6564 0a0a 2d20  eboot_needed..- 
│ │ │ -001c2cd0: 6e61 6d65 3a20 2741 6464 206e 6f65 7865  name: 'Add noexe
│ │ │ -001c2ce0: 6320 4f70 7469 6f6e 2074 6f20 2f74 6d70  c Option to /tmp
│ │ │ -001c2cf0: 3a20 4d61 6b65 2073 7572 6520 6e6f 6578  : Make sure noex
│ │ │ -001c2d00: 6563 206f 7074 696f 6e20 6973 2070 6172  ec option is par
│ │ │ -001c2d10: 7420 6f66 2074 6865 2074 6f20 2f74 6d70  t of the to /tmp
│ │ │ -001c2d20: 0a20 2020 206f 7074 696f 6e73 270a 2020  .    options'.  
│ │ │ -001c2d30: 7365 745f 6661 6374 3a0a 2020 2020 6d6f  set_fact:.    mo
│ │ │ -001c2d40: 756e 745f 696e 666f 3a20 277b 7b20 6d6f  unt_info: '{{ mo
│ │ │ -001c2d50: 756e 745f 696e 666f 207c 2063 6f6d 6269  unt_info | combi
│ │ │ -001c2d60: 6e65 2820 7b27 276f 7074 696f 6e73 2727  ne( {''options''
│ │ │ -001c2d70: 3a27 2727 277e 286d 6f75 6e74 5f69 6e66  :''''~(mount_inf
│ │ │ -001c2d80: 6f2e 6f70 7469 6f6e 7320 7c0a 2020 2020  o.options |.    
│ │ │ -001c2d90: 2020 6465 6661 756c 7428 2727 2727 2929    default(''''))
│ │ │ -001c2da0: 7e28 2727 2c27 2720 6966 2028 6d6f 756e  ~('','' if (moun
│ │ │ -001c2db0: 745f 696e 666f 2e6f 7074 696f 6e73 207c  t_info.options |
│ │ │ -001c2dc0: 2064 6566 6175 6c74 2827 2727 2729 2920   default('''')) 
│ │ │ -001c2dd0: 656c 7365 2027 2727 2729 7e27 276e 6f65  else '''')~''noe
│ │ │ -001c2de0: 7865 6327 270a 2020 2020 2020 7d29 207d  xec''.      }) }
│ │ │ -001c2df0: 7d27 0a20 2077 6865 6e3a 0a20 202d 2028  }'.  when:.  - (
│ │ │ -001c2e00: 206e 6f74 2028 2022 6b65 726e 656c 2220   not ( "kernel" 
│ │ │ -001c2e10: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001c2e20: 2e70 6163 6b61 6765 7320 616e 6420 2262  .packages and "b
│ │ │ -001c2e30: 6f6f 7463 2220 696e 2061 6e73 6962 6c65  ootc" in ansible
│ │ │ -001c2e40: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ -001c2e50: 2020 2020 616e 6420 6e6f 7420 226f 7065      and not "ope
│ │ │ -001c2e60: 6e73 6869 6674 2d6b 7562 656c 6574 2220  nshift-kubelet" 
│ │ │ -001c2e70: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001c2e80: 2e70 6163 6b61 6765 7320 616e 6420 226f  .packages and "o
│ │ │ -001c2e90: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ -001c2ea0: 655f 7072 6f63 5f63 6d64 6c69 6e65 0a20  e_proc_cmdline. 
│ │ │ -001c2eb0: 2020 2029 2061 6e64 206e 6f74 2028 2061     ) and not ( a
│ │ │ -001c2ec0: 6e73 6962 6c65 5f76 6972 7475 616c 697a  nsible_virtualiz
│ │ │ -001c2ed0: 6174 696f 6e5f 7479 7065 2069 6e20 5b22  ation_type in ["
│ │ │ -001c2ee0: 646f 636b 6572 222c 2022 6c78 6322 2c20  docker", "lxc", 
│ │ │ -001c2ef0: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61  "openvz", "podma
│ │ │ -001c2f00: 6e22 2c0a 2020 2020 2263 6f6e 7461 696e  n",.    "contain
│ │ │ -001c2f10: 6572 225d 2029 2029 0a20 202d 2027 222f  er"] ) ).  - '"/
│ │ │ -001c2f20: 746d 7022 2069 6e20 616e 7369 626c 655f  tmp" in ansible_
│ │ │ -001c2f30: 6d6f 756e 7473 207c 206d 6170 2861 7474  mounts | map(att
│ │ │ -001c2f40: 7269 6275 7465 3d22 6d6f 756e 7422 2920  ribute="mount") 
│ │ │ -001c2f50: 7c20 6c69 7374 270a 2020 2d20 6d6f 756e  | list'.  - moun
│ │ │ -001c2f60: 745f 696e 666f 2069 7320 6465 6669 6e65  t_info is define
│ │ │ -001c2f70: 6420 616e 6420 226e 6f65 7865 6322 206e  d and "noexec" n
│ │ │ -001c2f80: 6f74 2069 6e20 286d 6f75 6e74 5f69 6e66  ot in (mount_inf
│ │ │ -001c2f90: 6f2e 6f70 7469 6f6e 7320 7c20 6465 6661  o.options | defa
│ │ │ -001c2fa0: 756c 7428 2727 2929 0a20 2074 6167 733a  ult('')).  tags:
│ │ │ -001c2fb0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001c2fc0: 2d41 432d 360a 2020 2d20 4e49 5354 2d38  -AC-6.  - NIST-8
│ │ │ -001c2fd0: 3030 2d35 332d 4143 2d36 2831 290a 2020  00-53-AC-6(1).  
│ │ │ -001c2fe0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -001c2ff0: 2d36 2861 290a 2020 2d20 4e49 5354 2d38  -6(a).  - NIST-8
│ │ │ -001c3000: 3030 2d35 332d 434d 2d37 2861 290a 2020  00-53-CM-7(a).  
│ │ │ -001c3010: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -001c3020: 2d37 2862 290a 2020 2d20 4e49 5354 2d38  -7(b).  - NIST-8
│ │ │ -001c3030: 3030 2d35 332d 4d50 2d37 0a20 202d 2063  00-53-MP-7.  - c
│ │ │ -001c3040: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ -001c3050: 790a 2020 2d20 6869 6768 5f64 6973 7275  y.  - high_disru
│ │ │ -001c3060: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f  ption.  - low_co
│ │ │ -001c3070: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ -001c3080: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ -001c3090: 206d 6f75 6e74 5f6f 7074 696f 6e5f 746d   mount_option_tm
│ │ │ -001c30a0: 705f 6e6f 6578 6563 0a20 202d 206e 6f5f  p_noexec.  - no_
│ │ │ -001c30b0: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ -001c30c0: 206e 616d 653a 2027 4164 6420 6e6f 6578   name: 'Add noex
│ │ │ -001c30d0: 6563 204f 7074 696f 6e20 746f 202f 746d  ec Option to /tm
│ │ │ -001c30e0: 703a 2045 6e73 7572 6520 2f74 6d70 2069  p: Ensure /tmp i
│ │ │ -001c30f0: 7320 6d6f 756e 7465 6420 7769 7468 206e  s mounted with n
│ │ │ -001c3100: 6f65 7865 6320 6f70 7469 6f6e 270a 2020  oexec option'.  
│ │ │ -001c3110: 616e 7369 626c 652e 706f 7369 782e 6d6f  ansible.posix.mo
│ │ │ -001c3120: 756e 743a 0a20 2020 2070 6174 683a 202f  unt:.    path: /
│ │ │ -001c3130: 746d 700a 2020 2020 7372 633a 2027 7b7b  tmp.    src: '{{
│ │ │ -001c3140: 206d 6f75 6e74 5f69 6e66 6f2e 736f 7572   mount_info.sour
│ │ │ -001c3150: 6365 207c 2064 6566 6175 6c74 2827 2727  ce | default('''
│ │ │ -001c3160: 2729 207d 7d27 0a20 2020 206f 7074 733a  ') }}'.    opts:
│ │ │ -001c3170: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f2e   '{{ mount_info.
│ │ │ -001c3180: 6f70 7469 6f6e 7320 7c20 6465 6661 756c  options | defaul
│ │ │ -001c3190: 7428 2727 2727 2920 7d7d 270a 2020 2020  t('''') }}'.    
│ │ │ -001c31a0: 7374 6174 653a 206d 6f75 6e74 6564 0a20  state: mounted. 
│ │ │ -001c31b0: 2020 2066 7374 7970 653a 2027 7b7b 206d     fstype: '{{ m
│ │ │ -001c31c0: 6f75 6e74 5f69 6e66 6f2e 6673 7479 7065  ount_info.fstype
│ │ │ -001c31d0: 207c 2064 6566 6175 6c74 2827 2727 2729   | default('''')
│ │ │ -001c31e0: 207d 7d27 0a20 2072 6567 6973 7465 723a   }}'.  register:
│ │ │ -001c31f0: 206d 6f75 6e74 5f72 6573 756c 740a 2020   mount_result.  
│ │ │ -001c3200: 6661 696c 6564 5f77 6865 6e3a 0a20 202d  failed_when:.  -
│ │ │ -001c3210: 206d 6f75 6e74 5f72 6573 756c 7420 6973   mount_result is
│ │ │ -001c3220: 2066 6169 6c65 640a 2020 2d20 2727 2774   failed.  - '''t
│ │ │ -001c3230: 6172 6765 7420 6973 2062 7573 7927 2720  arget is busy'' 
│ │ │ -001c3240: 6e6f 7420 696e 2028 6d6f 756e 745f 7265  not in (mount_re
│ │ │ -001c3250: 7375 6c74 2e6d 7367 207c 2064 6566 6175  sult.msg | defau
│ │ │ -001c3260: 6c74 2827 2727 2729 2927 0a20 202d 2027  lt(''''))'.  - '
│ │ │ -001c3270: 2727 616c 7265 6164 7920 6d6f 756e 7465  ''already mounte
│ │ │ -001c3280: 6427 2720 6e6f 7420 696e 2028 6d6f 756e  d'' not in (moun
│ │ │ -001c3290: 745f 7265 7375 6c74 2e6d 7367 207c 2064  t_result.msg | d
│ │ │ -001c32a0: 6566 6175 6c74 2827 2727 2729 2927 0a20  efault(''''))'. 
│ │ │ -001c32b0: 2077 6865 6e3a 0a20 202d 2028 206e 6f74   when:.  - ( not
│ │ │ -001c32c0: 2028 2022 6b65 726e 656c 2220 696e 2061   ( "kernel" in a
│ │ │ -001c32d0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001c32e0: 6b61 6765 7320 616e 6420 2262 6f6f 7463  kages and "bootc
│ │ │ -001c32f0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001c3300: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ -001c3310: 616e 6420 6e6f 7420 226f 7065 6e73 6869  and not "openshi
│ │ │ -001c3320: 6674 2d6b 7562 656c 6574 2220 696e 2061  ft-kubelet" in a
│ │ │ -001c3330: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001c3340: 6b61 6765 7320 616e 6420 226f 7374 7265  kages and "ostre
│ │ │ -001c3350: 6522 2069 6e20 616e 7369 626c 655f 7072  e" in ansible_pr
│ │ │ -001c3360: 6f63 5f63 6d64 6c69 6e65 0a20 2020 2029  oc_cmdline.    )
│ │ │ -001c3370: 2061 6e64 206e 6f74 2028 2061 6e73 6962   and not ( ansib
│ │ │ -001c3380: 6c65 5f76 6972 7475 616c 697a 6174 696f  le_virtualizatio
│ │ │ -001c3390: 6e5f 7479 7065 2069 6e20 5b22 646f 636b  n_type in ["dock
│ │ │ -001c33a0: 6572 222c 2022 6c78 6322 2c20 226f 7065  er", "lxc", "ope
│ │ │ -001c33b0: 6e76 7a22 2c20 2270 6f64 6d61 6e22 2c0a  nvz", "podman",.
│ │ │ -001c33c0: 2020 2020 2263 6f6e 7461 696e 6572 225d      "container"]
│ │ │ -001c33d0: 2029 2029 0a20 202d 2027 222f 746d 7022   ) ).  - '"/tmp"
│ │ │ -001c33e0: 2069 6e20 616e 7369 626c 655f 6d6f 756e   in ansible_moun
│ │ │ -001c33f0: 7473 207c 206d 6170 2861 7474 7269 6275  ts | map(attribu
│ │ │ -001c3400: 7465 3d22 6d6f 756e 7422 2920 7c20 6c69  te="mount") | li
│ │ │ -001c3410: 7374 270a 2020 2d20 6d6f 756e 745f 696e  st'.  - mount_in
│ │ │ -001c3420: 666f 2069 7320 6465 6669 6e65 640a 2020  fo is defined.  
│ │ │ -001c3430: 2d20 2864 6576 6963 655f 6e61 6d65 2e73  - (device_name.s
│ │ │ -001c3440: 7464 6f75 7420 6973 2064 6566 696e 6564  tdout is defined
│ │ │ -001c3450: 2061 6e64 2028 6465 7669 6365 5f6e 616d   and (device_nam
│ │ │ -001c3460: 652e 7374 646f 7574 207c 206c 656e 6774  e.stdout | lengt
│ │ │ -001c3470: 6820 2667 743b 2030 2929 206f 7220 2822  h > 0)) or ("
│ │ │ -001c3480: 2d2d 6673 7461 6222 0a20 2020 207c 206c  --fstab".    | l
│ │ │ -001c3490: 656e 6774 6820 3d3d 2030 290a 2020 7461  ength == 0).  ta
│ │ │ -001c34a0: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030  gs:.  - NIST-800
│ │ │ -001c34b0: 2d35 332d 4143 2d36 0a20 202d 204e 4953  -53-AC-6.  - NIS
│ │ │ -001c34c0: 542d 3830 302d 3533 2d41 432d 3628 3129  T-800-53-AC-6(1)
│ │ │ -001c34d0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001c34e0: 2d43 4d2d 3628 6129 0a20 202d 204e 4953  -CM-6(a).  - NIS
│ │ │ -001c34f0: 542d 3830 302d 3533 2d43 4d2d 3728 6129  T-800-53-CM-7(a)
│ │ │ -001c3500: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001c3510: 2d43 4d2d 3728 6229 0a20 202d 204e 4953  -CM-7(b).  - NIS
│ │ │ -001c3520: 542d 3830 302d 3533 2d4d 502d 370a 2020  T-800-53-MP-7.  
│ │ │ -001c3530: 2d20 636f 6e66 6967 7572 655f 7374 7261  - configure_stra
│ │ │ -001c3540: 7465 6779 0a20 202d 2068 6967 685f 6469  tegy.  - high_di
│ │ │ -001c3550: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ -001c3560: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ -001c3570: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ -001c3580: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e    - mount_option
│ │ │ -001c3590: 5f74 6d70 5f6e 6f65 7865 630a 2020 2d20  _tmp_noexec.  - 
│ │ │ -001c35a0: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ -001c35b0: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation She │ │ │ -001c3670: 6c6c 2073 6372 6970 7420 e287 b23c 2f61 ll script ...
Compl │ │ │ -001c1f20: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ -001c1f30: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ -001c1f50: 2f74 683e 3c74 643e 6869 6768 3c2f 7464 /th>high
Re │ │ │ -001c1f70: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -001c1f80: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:configure │ │ │ -001c1fb0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
# Remediation i
│ │ │ -001c3740: 7320 6170 706c 6963 6162 6c65 206f 6e6c  s applicable onl
│ │ │ -001c3750: 7920 696e 2063 6572 7461 696e 2070 6c61  y in certain pla
│ │ │ -001c3760: 7466 6f72 6d73 0a69 6620 2820 2120 2820  tforms.if ( ! ( 
│ │ │ -001c3770: 7b20 7270 6d20 2d2d 7175 6965 7420 2d71  { rpm --quiet -q
│ │ │ -001c3780: 206b 6572 6e65 6c20 3b7d 2026 616d 703b   kernel ;} &
│ │ │ -001c3790: 2661 6d70 3b20 7b20 7270 6d20 2d2d 7175  & { rpm --qu
│ │ │ -001c37a0: 6965 7420 2d71 2062 6f6f 7463 203b 7d20  iet -q bootc ;} 
│ │ │ -001c37b0: 2661 6d70 3b26 616d 703b 207b 2021 2072  && { ! r
│ │ │ -001c37c0: 706d 202d 2d71 7569 6574 202d 7120 6f70  pm --quiet -q op
│ │ │ -001c37d0: 656e 7368 6966 742d 6b75 6265 6c65 7420  enshift-kubelet 
│ │ │ -001c37e0: 3b7d 2026 616d 703b 2661 6d70 3b20 285b  ;} && ([
│ │ │ -001c37f0: 202d 6620 2f72 756e 2f6f 7374 7265 652d   -f /run/ostree-
│ │ │ -001c3800: 626f 6f74 6564 205d 207c 7c20 5b20 2d4c  booted ] || [ -L
│ │ │ -001c3810: 202f 6f73 7472 6565 205d 2920 2920 2661   /ostree ]) ) &a
│ │ │ -001c3820: 6d70 3b26 616d 703b 2021 2028 205b 202d  mp;& ! ( [ -
│ │ │ -001c3830: 6620 2f2e 646f 636b 6572 656e 7620 5d20  f /.dockerenv ] 
│ │ │ -001c3840: 7c7c 205b 202d 6620 2f72 756e 2f2e 636f  || [ -f /run/.co
│ │ │ -001c3850: 6e74 6169 6e65 7265 6e76 205d 2029 2029  ntainerenv ] ) )
│ │ │ -001c3860: 2026 616d 703b 2661 6d70 3b20 7b20 2820   && { ( 
│ │ │ -001c3870: 6669 6e64 6d6e 7420 2d2d 6b65 726e 656c  findmnt --kernel
│ │ │ -001c3880: 2022 2f74 6d70 2220 2667 743b 202f 6465   "/tmp" > /de
│ │ │ -001c3890: 762f 6e75 6c6c 207c 7c20 6669 6e64 6d6e  v/null || findmn
│ │ │ -001c38a0: 7420 2d2d 6673 7461 6220 222f 746d 7022  t --fstab "/tmp"
│ │ │ -001c38b0: 2026 6774 3b20 2f64 6576 2f6e 756c 6c20   > /dev/null 
│ │ │ -001c38c0: 293b 207d 3b20 7468 656e 0a0a 6675 6e63  ); }; then..func
│ │ │ -001c38d0: 7469 6f6e 2070 6572 666f 726d 5f72 656d  tion perform_rem
│ │ │ -001c38e0: 6564 6961 7469 6f6e 207b 0a0a 2020 2020  ediation {..    
│ │ │ -001c38f0: 0a20 2020 2020 2020 2023 2074 6865 206d  .        # the m
│ │ │ -001c3900: 6f75 6e74 2070 6f69 6e74 202f 746d 7020  ount point /tmp 
│ │ │ -001c3910: 6861 7320 746f 2062 6520 6465 6669 6e65  has to be define
│ │ │ -001c3920: 6420 696e 202f 6574 632f 6673 7461 620a  d in /etc/fstab.
│ │ │ -001c3930: 2020 2020 2020 2020 2320 6265 666f 7265          # before
│ │ │ -001c3940: 2074 6869 7320 7265 6d65 6469 6174 696f   this remediatio
│ │ │ -001c3950: 6e20 6361 6e20 6265 2065 7865 6375 7465  n can be execute
│ │ │ -001c3960: 642e 2049 6e20 6361 7365 2069 7420 6973  d. In case it is
│ │ │ -001c3970: 206e 6f74 2064 6566 696e 6564 2c20 7468   not defined, th
│ │ │ -001c3980: 650a 2020 2020 2020 2020 2320 7265 6d65  e.        # reme
│ │ │ -001c3990: 6469 6174 696f 6e20 6162 6f72 7473 2061  diation aborts a
│ │ │ -001c39a0: 6e64 206e 6f20 6368 616e 6765 7320 7265  nd no changes re
│ │ │ -001c39b0: 6761 7264 696e 6720 7468 6520 6d6f 756e  garding the moun
│ │ │ -001c39c0: 7420 706f 696e 7420 6172 6520 646f 6e65  t point are done
│ │ │ -001c39d0: 2e0a 2020 2020 2020 2020 6d6f 756e 745f  ..        mount_
│ │ │ -001c39e0: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ -001c39f0: 7870 3d22 2428 7072 696e 7466 2022 5e5b  xp="$(printf "^[
│ │ │ -001c3a00: 5b3a 7370 6163 653a 5d5d 2a5b 5e23 5d2e  [:space:]]*[^#].
│ │ │ -001c3a10: 2a5b 5b3a 7370 6163 653a 5d5d 2573 5b5b  *[[:space:]]%s[[
│ │ │ -001c3a20: 3a73 7061 6365 3a5d 5d22 2022 2f74 6d70  :space:]]" "/tmp
│ │ │ -001c3a30: 2229 220a 0a20 2020 2067 7265 7020 2224  ")"..    grep "$
│ │ │ -001c3a40: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ -001c3a50: 685f 7265 6765 7870 2220 2d71 202f 6574  h_regexp" -q /et
│ │ │ -001c3a60: 632f 6673 7461 6220 5c0a 2020 2020 2020  c/fstab \.      
│ │ │ -001c3a70: 2020 7c7c 207b 2065 6368 6f20 2254 6865    || { echo "The
│ │ │ -001c3a80: 206d 6f75 6e74 2070 6f69 6e74 2027 2f74   mount point '/t
│ │ │ -001c3a90: 6d70 2720 6973 206e 6f74 2065 7665 6e20  mp' is not even 
│ │ │ -001c3aa0: 696e 202f 6574 632f 6673 7461 622c 2073  in /etc/fstab, s
│ │ │ -001c3ab0: 6f20 7765 2063 616e 2774 2073 6574 2075  o we can't set u
│ │ │ -001c3ac0: 7020 6d6f 756e 7420 6f70 7469 6f6e 7322  p mount options"
│ │ │ -001c3ad0: 2026 6774 3b26 616d 703b 323b 0a20 2020   >&2;.   
│ │ │ -001c3ae0: 2020 2020 2020 2020 2020 2020 2065 6368               ech
│ │ │ -001c3af0: 6f20 224e 6f74 2072 656d 6564 6961 7469  o "Not remediati
│ │ │ -001c3b00: 6e67 2c20 6265 6361 7573 6520 7468 6572  ng, because ther
│ │ │ -001c3b10: 6520 6973 206e 6f20 7265 636f 7264 206f  e is no record o
│ │ │ -001c3b20: 6620 2f74 6d70 2069 6e20 2f65 7463 2f66  f /tmp in /etc/f
│ │ │ -001c3b30: 7374 6162 2220 2667 743b 2661 6d70 3b32  stab" >&2
│ │ │ -001c3b40: 3b20 7265 7475 726e 2031 3b20 7d0a 2020  ; return 1; }.  
│ │ │ -001c3b50: 2020 0a0a 0a20 2020 206d 6f75 6e74 5f70    ...    mount_p
│ │ │ -001c3b60: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ -001c3b70: 703d 2224 2870 7269 6e74 6620 225e 5b5b  p="$(printf "^[[
│ │ │ -001c3b80: 3a73 7061 6365 3a5d 5d2a 5b5e 235d 2e2a  :space:]]*[^#].*
│ │ │ -001c3b90: 5b5b 3a73 7061 6365 3a5d 5d25 735b 5b3a  [[:space:]]%s[[:
│ │ │ -001c3ba0: 7370 6163 653a 5d5d 2220 2f74 6d70 2922  space:]]" /tmp)"
│ │ │ -001c3bb0: 0a0a 2020 2020 2320 4966 2074 6865 206d  ..    # If the m
│ │ │ -001c3bc0: 6f75 6e74 2070 6f69 6e74 2069 7320 6e6f  ount point is no
│ │ │ -001c3bd0: 7420 696e 202f 6574 632f 6673 7461 622c  t in /etc/fstab,
│ │ │ -001c3be0: 2067 6574 2070 7265 7669 6f75 7320 6d6f   get previous mo
│ │ │ -001c3bf0: 756e 7420 6f70 7469 6f6e 7320 6672 6f6d  unt options from
│ │ │ -001c3c00: 202f 6574 632f 6d74 6162 0a20 2020 2069   /etc/mtab.    i
│ │ │ -001c3c10: 6620 2120 6772 6570 202d 7120 2224 6d6f  f ! grep -q "$mo
│ │ │ -001c3c20: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ -001c3c30: 7265 6765 7870 2220 2f65 7463 2f66 7374  regexp" /etc/fst
│ │ │ -001c3c40: 6162 3b20 7468 656e 0a20 2020 2020 2020  ab; then.       
│ │ │ -001c3c50: 2023 2072 756e 7469 6d65 206f 7074 7320   # runtime opts 
│ │ │ -001c3c60: 7769 7468 6f75 7420 736f 6d65 2061 7574  without some aut
│ │ │ -001c3c70: 6f6d 6174 6963 206b 6572 6e65 6c2f 7573  omatic kernel/us
│ │ │ -001c3c80: 6572 7370 6163 652d 6164 6465 6420 6465  erspace-added de
│ │ │ -001c3c90: 6661 756c 7473 0a20 2020 2020 2020 2070  faults.        p
│ │ │ -001c3ca0: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ -001c3cb0: 7473 3d24 2867 7265 7020 2224 6d6f 756e  ts=$(grep "$moun
│ │ │ -001c3cc0: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ -001c3cd0: 6765 7870 2220 2f65 7463 2f6d 7461 6220  gexp" /etc/mtab 
│ │ │ -001c3ce0: 7c20 6865 6164 202d 3120 7c20 2061 776b  | head -1 |  awk
│ │ │ -001c3cf0: 2027 7b70 7269 6e74 2024 347d 2720 5c0a   '{print $4}' \.
│ │ │ -001c3d00: 2020 2020 2020 2020 2020 2020 2020 2020                  
│ │ │ -001c3d10: 2020 2020 7c20 7365 6420 2d45 2022 732f      | sed -E "s/
│ │ │ -001c3d20: 2872 777c 6465 6661 756c 7473 7c73 6563  (rw|defaults|sec
│ │ │ -001c3d30: 6c61 6265 6c7c 6e6f 6578 6563 2928 2c7c  label|noexec)(,|
│ │ │ -001c3d40: 2429 2f2f 673b 732f 2c24 2f2f 2229 0a20  $)//g;s/,$//"). 
│ │ │ -001c3d50: 2020 2020 2020 205b 2022 2470 7265 7669         [ "$previ
│ │ │ -001c3d60: 6f75 735f 6d6f 756e 745f 6f70 7473 2220  ous_mount_opts" 
│ │ │ -001c3d70: 5d20 2661 6d70 3b26 616d 703b 2070 7265  ] && pre
│ │ │ -001c3d80: 7669 6f75 735f 6d6f 756e 745f 6f70 7473  vious_mount_opts
│ │ │ -001c3d90: 2b3d 222c 220a 2020 2020 2020 2020 2320  +=",".        # 
│ │ │ -001c3da0: 496e 2069 736f 3936 3630 2066 696c 6573  In iso9660 files
│ │ │ -001c3db0: 7973 7465 6d73 206d 7461 6220 636f 756c  ystems mtab coul
│ │ │ -001c3dc0: 6420 6465 7363 7269 6265 2061 2022 626c  d describe a "bl
│ │ │ -001c3dd0: 6f63 6b73 697a 6522 2076 616c 7565 2c20  ocksize" value, 
│ │ │ -001c3de0: 7468 6973 2073 686f 756c 6420 6265 2072  this should be r
│ │ │ -001c3df0: 6566 6c65 6374 6564 2069 6e0a 2020 2020  eflected in.    
│ │ │ -001c3e00: 2020 2020 2320 6673 7461 6220 6173 2022      # fstab as "
│ │ │ -001c3e10: 626c 6f63 6b22 2e20 2054 6865 206e 6578  block".  The nex
│ │ │ -001c3e20: 7420 7661 7269 6162 6c65 2069 7320 746f  t variable is to
│ │ │ -001c3e30: 2073 6174 6973 6679 2073 6865 6c6c 6368   satisfy shellch
│ │ │ -001c3e40: 6563 6b20 5343 3230 3530 2e0a 2020 2020  eck SC2050..    
│ │ │ -001c3e50: 2020 2020 6673 5f74 7970 653d 2222 0a20      fs_type="". 
│ │ │ -001c3e60: 2020 2020 2020 2069 6620 5b20 2022 2466         if [  "$f
│ │ │ -001c3e70: 735f 7479 7065 2220 3d3d 2022 6973 6f39  s_type" == "iso9
│ │ │ -001c3e80: 3636 3022 205d 203b 2074 6865 6e0a 2020  660" ] ; then.  
│ │ │ -001c3e90: 2020 2020 2020 2020 2020 7072 6576 696f            previo
│ │ │ -001c3ea0: 7573 5f6d 6f75 6e74 5f6f 7074 733d 2428  us_mount_opts=$(
│ │ │ -001c3eb0: 7365 6420 2773 2f62 6c6f 636b 7369 7a65  sed 's/blocksize
│ │ │ -001c3ec0: 3d2f 626c 6f63 6b3d 2f27 2026 6c74 3b26  =/block=/' <&
│ │ │ -001c3ed0: 6c74 3b26 6c74 3b20 2224 7072 6576 696f  lt;< "$previo
│ │ │ -001c3ee0: 7573 5f6d 6f75 6e74 5f6f 7074 7322 290a  us_mount_opts").
│ │ │ -001c3ef0: 2020 2020 2020 2020 6669 0a20 2020 2020          fi.     
│ │ │ -001c3f00: 2020 2065 6368 6f20 2220 2f74 6d70 2020     echo " /tmp  
│ │ │ -001c3f10: 6465 6661 756c 7473 2c24 7b70 7265 7669  defaults,${previ
│ │ │ -001c3f20: 6f75 735f 6d6f 756e 745f 6f70 7473 7d6e  ous_mount_opts}n
│ │ │ -001c3f30: 6f65 7865 6320 3020 3022 2026 6774 3b26  oexec 0 0" >&
│ │ │ -001c3f40: 6774 3b20 2f65 7463 2f66 7374 6162 0a20  gt; /etc/fstab. 
│ │ │ -001c3f50: 2020 2023 2049 6620 7468 6520 6d6f 756e     # If the moun
│ │ │ -001c3f60: 745f 6f70 7420 6f70 7469 6f6e 2069 7320  t_opt option is 
│ │ │ -001c3f70: 6e6f 7420 616c 7265 6164 7920 696e 2074  not already in t
│ │ │ -001c3f80: 6865 206d 6f75 6e74 2070 6f69 6e74 2773  he mount point's
│ │ │ -001c3f90: 202f 6574 632f 6673 7461 6220 656e 7472   /etc/fstab entr
│ │ │ -001c3fa0: 792c 2061 6464 2069 740a 2020 2020 656c  y, add it.    el
│ │ │ -001c3fb0: 6966 2021 2067 7265 7020 2224 6d6f 756e  if ! grep "$moun
│ │ │ -001c3fc0: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ -001c3fd0: 6765 7870 2220 2f65 7463 2f66 7374 6162  gexp" /etc/fstab
│ │ │ -001c3fe0: 207c 2067 7265 7020 2d71 2022 6e6f 6578   | grep -q "noex
│ │ │ -001c3ff0: 6563 223b 2074 6865 6e0a 2020 2020 2020  ec"; then.      
│ │ │ -001c4000: 2020 7072 6576 696f 7573 5f6d 6f75 6e74    previous_mount
│ │ │ -001c4010: 5f6f 7074 733d 2428 6772 6570 2022 246d  _opts=$(grep "$m
│ │ │ -001c4020: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ -001c4030: 5f72 6567 6578 7022 202f 6574 632f 6673  _regexp" /etc/fs
│ │ │ -001c4040: 7461 6220 7c20 6177 6b20 277b 7072 696e  tab | awk '{prin
│ │ │ -001c4050: 7420 2434 7d27 290a 2020 2020 2020 2020  t $4}').        
│ │ │ -001c4060: 7365 6420 2d69 2022 737c 5c28 247b 6d6f  sed -i "s|\(${mo
│ │ │ -001c4070: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ -001c4080: 7265 6765 7870 7d2e 2a24 7b70 7265 7669  regexp}.*${previ
│ │ │ -001c4090: 6f75 735f 6d6f 756e 745f 6f70 7473 7d5c  ous_mount_opts}\
│ │ │ -001c40a0: 297c 5c31 2c6e 6f65 7865 637c 2220 2f65  )|\1,noexec|" /e
│ │ │ -001c40b0: 7463 2f66 7374 6162 0a20 2020 2066 690a  tc/fstab.    fi.
│ │ │ -001c40c0: 0a0a 2020 2020 6966 206d 6b64 6972 202d  ..    if mkdir -
│ │ │ -001c40d0: 7020 222f 746d 7022 3b20 7468 656e 0a20  p "/tmp"; then. 
│ │ │ -001c40e0: 2020 2020 2020 2069 6620 6d6f 756e 7470         if mountp
│ │ │ -001c40f0: 6f69 6e74 202d 7120 222f 746d 7022 3b20  oint -q "/tmp"; 
│ │ │ -001c4100: 7468 656e 0a20 2020 2020 2020 2020 2020  then.           
│ │ │ -001c4110: 206d 6f75 6e74 202d 6f20 7265 6d6f 756e   mount -o remoun
│ │ │ -001c4120: 7420 2d2d 7461 7267 6574 2022 2f74 6d70  t --target "/tmp
│ │ │ -001c4130: 220a 2020 2020 2020 2020 6669 0a20 2020  ".        fi.   
│ │ │ -001c4140: 2066 690a 7d0a 0a70 6572 666f 726d 5f72   fi.}..perform_r
│ │ │ -001c4150: 656d 6564 6961 7469 6f6e 0a0a 656c 7365  emediation..else
│ │ │ -001c4160: 0a20 2020 2026 6774 3b26 616d 703b 3220  .    >&2 
│ │ │ -001c4170: 6563 686f 2027 5265 6d65 6469 6174 696f  echo 'Remediatio
│ │ │ -001c4180: 6e20 6973 206e 6f74 2061 7070 6c69 6361  n is not applica
│ │ │ -001c4190: 626c 652c 206e 6f74 6869 6e67 2077 6173  ble, nothing was
│ │ │ -001c41a0: 2064 6f6e 6527 0a66 690a 3c2f 636f 6465   done'.fi.
< │ │ │ +001c1cf0: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>
│ │ │ +001c1d30: 3c74 643e 6869 6768 3c2f 7464 3e3c 2f74 < │ │ │ +001c1d80: 7464 3e63 6f6e 6669 6775 7265 3c2f 7464 td>configure
R │ │ │ -001c3700: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -001c3710: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c2f alse
Complexit │ │ │ +001c1d00: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low
│ │ │ +001c1d20: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption:high
Reboot │ │ │ +001c1d50: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +001c1d60: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Strategy:

- name: │ │ │ +001c1db0: 2047 6174 6865 7220 7468 6520 7061 636b Gather the pack │ │ │ +001c1dc0: 6167 6520 6661 6374 730a 2020 7061 636b age facts. pack │ │ │ +001c1dd0: 6167 655f 6661 6374 733a 0a20 2020 206d age_facts:. m │ │ │ +001c1de0: 616e 6167 6572 3a20 6175 746f 0a20 2074 anager: auto. t │ │ │ +001c1df0: 6167 733a 0a20 202d 204e 4953 542d 3830 ags:. - NIST-80 │ │ │ +001c1e00: 302d 3533 2d41 432d 360a 2020 2d20 4e49 0-53-AC-6. - NI │ │ │ +001c1e10: 5354 2d38 3030 2d35 332d 4143 2d36 2831 ST-800-53-AC-6(1 │ │ │ +001c1e20: 290a 2020 2d20 4e49 5354 2d38 3030 2d35 ). - NIST-800-5 │ │ │ +001c1e30: 332d 434d 2d36 2861 290a 2020 2d20 4e49 3-CM-6(a). - NI │ │ │ +001c1e40: 5354 2d38 3030 2d35 332d 434d 2d37 2861 ST-800-53-CM-7(a │ │ │ +001c1e50: 290a 2020 2d20 4e49 5354 2d38 3030 2d35 ). - NIST-800-5 │ │ │ +001c1e60: 332d 434d 2d37 2862 290a 2020 2d20 4e49 3-CM-7(b). - NI │ │ │ +001c1e70: 5354 2d38 3030 2d35 332d 4d50 2d37 0a20 ST-800-53-MP-7. │ │ │ +001c1e80: 202d 2063 6f6e 6669 6775 7265 5f73 7472 - configure_str │ │ │ +001c1e90: 6174 6567 790a 2020 2d20 6869 6768 5f64 ategy. - high_d │ │ │ +001c1ea0: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f isruption. - lo │ │ │ +001c1eb0: 775f 636f 6d70 6c65 7869 7479 0a20 202d w_complexity. - │ │ │ +001c1ec0: 206d 6564 6975 6d5f 7365 7665 7269 7479 medium_severity │ │ │ +001c1ed0: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f . - mount_optio │ │ │ +001c1ee0: 6e5f 746d 705f 6e6f 6578 6563 0a20 202d n_tmp_noexec. - │ │ │ +001c1ef0: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465 no_reboot_neede │ │ │ +001c1f00: 640a 0a2d 206e 616d 653a 2027 4164 6420 d..- name: 'Add │ │ │ +001c1f10: 6e6f 6578 6563 204f 7074 696f 6e20 746f noexec Option to │ │ │ +001c1f20: 202f 746d 703a 2043 6865 636b 2069 6e66 /tmp: Check inf │ │ │ +001c1f30: 6f72 6d61 7469 6f6e 2061 7373 6f63 6961 ormation associa │ │ │ +001c1f40: 7465 6420 746f 206d 6f75 6e74 706f 696e ted to mountpoin │ │ │ +001c1f50: 7427 0a20 2061 6e73 6962 6c65 2e62 7569 t'. ansible.bui │ │ │ +001c1f60: 6c74 696e 2e63 6f6d 6d61 6e64 3a20 6669 ltin.command: fi │ │ │ +001c1f70: 6e64 6d6e 7420 2d2d 6673 7461 6220 272f ndmnt --fstab '/ │ │ │ +001c1f80: 746d 7027 0a20 2072 6567 6973 7465 723a tmp'. register: │ │ │ +001c1f90: 2064 6576 6963 655f 6e61 6d65 0a20 2066 device_name. f │ │ │ +001c1fa0: 6169 6c65 645f 7768 656e 3a20 6465 7669 ailed_when: devi │ │ │ +001c1fb0: 6365 5f6e 616d 652e 7263 2026 6774 3b20 ce_name.rc > │ │ │ +001c1fc0: 310a 2020 6368 616e 6765 645f 7768 656e 1. changed_when │ │ │ +001c1fd0: 3a20 6661 6c73 650a 2020 6368 6563 6b5f : false. check_ │ │ │ +001c1fe0: 6d6f 6465 3a20 6661 6c73 650a 2020 7768 mode: false. wh │ │ │ +001c1ff0: 656e 3a0a 2020 2d20 2820 6e6f 7420 2820 en:. - ( not ( │ │ │ +001c2000: 226b 6572 6e65 6c22 2069 6e20 616e 7369 "kernel" in ansi │ │ │ +001c2010: 626c 655f 6661 6374 732e 7061 636b 6167 ble_facts.packag │ │ │ +001c2020: 6573 2061 6e64 2022 626f 6f74 6322 2069 es and "bootc" i │ │ │ +001c2030: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ +001c2040: 7061 636b 6167 6573 0a20 2020 2061 6e64 packages. and │ │ │ +001c2050: 206e 6f74 2022 6f70 656e 7368 6966 742d not "openshift- │ │ │ +001c2060: 6b75 6265 6c65 7422 2069 6e20 616e 7369 kubelet" in ansi │ │ │ +001c2070: 626c 655f 6661 6374 732e 7061 636b 6167 ble_facts.packag │ │ │ +001c2080: 6573 2061 6e64 2022 6f73 7472 6565 2220 es and "ostree" │ │ │ +001c2090: 696e 2061 6e73 6962 6c65 5f70 726f 635f in ansible_proc_ │ │ │ +001c20a0: 636d 646c 696e 650a 2020 2020 2920 616e cmdline. ) an │ │ │ +001c20b0: 6420 6e6f 7420 2820 616e 7369 626c 655f d not ( ansible_ │ │ │ +001c20c0: 7669 7274 7561 6c69 7a61 7469 6f6e 5f74 virtualization_t │ │ │ +001c20d0: 7970 6520 696e 205b 2264 6f63 6b65 7222 ype in ["docker" │ │ │ +001c20e0: 2c20 226c 7863 222c 2022 6f70 656e 767a , "lxc", "openvz │ │ │ +001c20f0: 222c 2022 706f 646d 616e 222c 0a20 2020 ", "podman",. │ │ │ +001c2100: 2022 636f 6e74 6169 6e65 7222 5d20 2920 "container"] ) │ │ │ +001c2110: 290a 2020 2d20 2722 2f74 6d70 2220 696e ). - '"/tmp" in │ │ │ +001c2120: 2061 6e73 6962 6c65 5f6d 6f75 6e74 7320 ansible_mounts │ │ │ +001c2130: 7c20 6d61 7028 6174 7472 6962 7574 653d | map(attribute= │ │ │ +001c2140: 226d 6f75 6e74 2229 207c 206c 6973 7427 "mount") | list' │ │ │ +001c2150: 0a20 2074 6167 733a 0a20 202d 204e 4953 . tags:. - NIS │ │ │ +001c2160: 542d 3830 302d 3533 2d41 432d 360a 2020 T-800-53-AC-6. │ │ │ +001c2170: 2d20 4e49 5354 2d38 3030 2d35 332d 4143 - NIST-800-53-AC │ │ │ +001c2180: 2d36 2831 290a 2020 2d20 4e49 5354 2d38 -6(1). - NIST-8 │ │ │ +001c2190: 3030 2d35 332d 434d 2d36 2861 290a 2020 00-53-CM-6(a). │ │ │ +001c21a0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d - NIST-800-53-CM │ │ │ +001c21b0: 2d37 2861 290a 2020 2d20 4e49 5354 2d38 -7(a). - NIST-8 │ │ │ +001c21c0: 3030 2d35 332d 434d 2d37 2862 290a 2020 00-53-CM-7(b). │ │ │ +001c21d0: 2d20 4e49 5354 2d38 3030 2d35 332d 4d50 - NIST-800-53-MP │ │ │ +001c21e0: 2d37 0a20 202d 2063 6f6e 6669 6775 7265 -7. - configure │ │ │ +001c21f0: 5f73 7472 6174 6567 790a 2020 2d20 6869 _strategy. - hi │ │ │ +001c2200: 6768 5f64 6973 7275 7074 696f 6e0a 2020 gh_disruption. │ │ │ +001c2210: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479 - low_complexity │ │ │ +001c2220: 0a20 202d 206d 6564 6975 6d5f 7365 7665 . - medium_seve │ │ │ +001c2230: 7269 7479 0a20 202d 206d 6f75 6e74 5f6f rity. - mount_o │ │ │ +001c2240: 7074 696f 6e5f 746d 705f 6e6f 6578 6563 ption_tmp_noexec │ │ │ +001c2250: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e . - no_reboot_n │ │ │ +001c2260: 6565 6465 640a 0a2d 206e 616d 653a 2027 eeded..- name: ' │ │ │ +001c2270: 4164 6420 6e6f 6578 6563 204f 7074 696f Add noexec Optio │ │ │ +001c2280: 6e20 746f 202f 746d 703a 2043 7265 6174 n to /tmp: Creat │ │ │ +001c2290: 6520 6d6f 756e 745f 696e 666f 2064 6963 e mount_info dic │ │ │ +001c22a0: 7469 6f6e 6172 7920 7661 7269 6162 6c65 tionary variable │ │ │ +001c22b0: 270a 2020 7365 745f 6661 6374 3a0a 2020 '. set_fact:. │ │ │ +001c22c0: 2020 6d6f 756e 745f 696e 666f 3a20 277b mount_info: '{ │ │ │ +001c22d0: 7b20 6d6f 756e 745f 696e 666f 7c64 6566 { mount_info|def │ │ │ +001c22e0: 6175 6c74 287b 7d29 7c63 6f6d 6269 6e65 ault({})|combine │ │ │ +001c22f0: 287b 6974 656d 2e30 3a20 6974 656d 2e31 ({item.0: item.1 │ │ │ +001c2300: 7d29 207d 7d27 0a20 2077 6974 685f 746f }) }}'. with_to │ │ │ +001c2310: 6765 7468 6572 3a0a 2020 2d20 277b 7b20 gether:. - '{{ │ │ │ +001c2320: 6465 7669 6365 5f6e 616d 652e 7374 646f device_name.stdo │ │ │ +001c2330: 7574 5f6c 696e 6573 5b30 5d2e 7370 6c69 ut_lines[0].spli │ │ │ +001c2340: 7428 2920 7c20 6d61 7028 2727 6c6f 7765 t() | map(''lowe │ │ │ +001c2350: 7227 2729 207c 206c 6973 7420 7d7d 270a r'') | list }}'. │ │ │ +001c2360: 2020 2d20 277b 7b20 6465 7669 6365 5f6e - '{{ device_n │ │ │ +001c2370: 616d 652e 7374 646f 7574 5f6c 696e 6573 ame.stdout_lines │ │ │ +001c2380: 5b31 5d2e 7370 6c69 7428 2920 7c20 6c69 [1].split() | li │ │ │ +001c2390: 7374 207d 7d27 0a20 2077 6865 6e3a 0a20 st }}'. when:. │ │ │ +001c23a0: 202d 2028 206e 6f74 2028 2022 6b65 726e - ( not ( "kern │ │ │ +001c23b0: 656c 2220 696e 2061 6e73 6962 6c65 5f66 el" in ansible_f │ │ │ +001c23c0: 6163 7473 2e70 6163 6b61 6765 7320 616e acts.packages an │ │ │ +001c23d0: 6420 2262 6f6f 7463 2220 696e 2061 6e73 d "bootc" in ans │ │ │ +001c23e0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61 ible_facts.packa │ │ │ +001c23f0: 6765 730a 2020 2020 616e 6420 6e6f 7420 ges. and not │ │ │ +001c2400: 226f 7065 6e73 6869 6674 2d6b 7562 656c "openshift-kubel │ │ │ +001c2410: 6574 2220 696e 2061 6e73 6962 6c65 5f66 et" in ansible_f │ │ │ +001c2420: 6163 7473 2e70 6163 6b61 6765 7320 616e acts.packages an │ │ │ +001c2430: 6420 226f 7374 7265 6522 2069 6e20 616e d "ostree" in an │ │ │ +001c2440: 7369 626c 655f 7072 6f63 5f63 6d64 6c69 sible_proc_cmdli │ │ │ +001c2450: 6e65 0a20 2020 2029 2061 6e64 206e 6f74 ne. ) and not │ │ │ +001c2460: 2028 2061 6e73 6962 6c65 5f76 6972 7475 ( ansible_virtu │ │ │ +001c2470: 616c 697a 6174 696f 6e5f 7479 7065 2069 alization_type i │ │ │ +001c2480: 6e20 5b22 646f 636b 6572 222c 2022 6c78 n ["docker", "lx │ │ │ +001c2490: 6322 2c20 226f 7065 6e76 7a22 2c20 2270 c", "openvz", "p │ │ │ +001c24a0: 6f64 6d61 6e22 2c0a 2020 2020 2263 6f6e odman",. "con │ │ │ +001c24b0: 7461 696e 6572 225d 2029 2029 0a20 202d tainer"] ) ). - │ │ │ +001c24c0: 2027 222f 746d 7022 2069 6e20 616e 7369 '"/tmp" in ansi │ │ │ +001c24d0: 626c 655f 6d6f 756e 7473 207c 206d 6170 ble_mounts | map │ │ │ +001c24e0: 2861 7474 7269 6275 7465 3d22 6d6f 756e (attribute="moun │ │ │ +001c24f0: 7422 2920 7c20 6c69 7374 270a 2020 2d20 t") | list'. - │ │ │ +001c2500: 6465 7669 6365 5f6e 616d 652e 7374 646f device_name.stdo │ │ │ +001c2510: 7574 2069 7320 6465 6669 6e65 6420 616e ut is defined an │ │ │ +001c2520: 6420 6465 7669 6365 5f6e 616d 652e 7374 d device_name.st │ │ │ +001c2530: 646f 7574 5f6c 696e 6573 2069 7320 6465 dout_lines is de │ │ │ +001c2540: 6669 6e65 640a 2020 2d20 2864 6576 6963 fined. - (devic │ │ │ +001c2550: 655f 6e61 6d65 2e73 7464 6f75 7420 7c20 e_name.stdout | │ │ │ +001c2560: 6c65 6e67 7468 2026 6774 3b20 3029 0a20 length > 0). │ │ │ +001c2570: 2074 6167 733a 0a20 202d 204e 4953 542d tags:. - NIST- │ │ │ +001c2580: 3830 302d 3533 2d41 432d 360a 2020 2d20 800-53-AC-6. - │ │ │ +001c2590: 4e49 5354 2d38 3030 2d35 332d 4143 2d36 NIST-800-53-AC-6 │ │ │ +001c25a0: 2831 290a 2020 2d20 4e49 5354 2d38 3030 (1). - NIST-800 │ │ │ +001c25b0: 2d35 332d 434d 2d36 2861 290a 2020 2d20 -53-CM-6(a). - │ │ │ +001c25c0: 4e49 5354 2d38 3030 2d35 332d 434d 2d37 NIST-800-53-CM-7 │ │ │ +001c25d0: 2861 290a 2020 2d20 4e49 5354 2d38 3030 (a). - NIST-800 │ │ │ +001c25e0: 2d35 332d 434d 2d37 2862 290a 2020 2d20 -53-CM-7(b). - │ │ │ +001c25f0: 4e49 5354 2d38 3030 2d35 332d 4d50 2d37 NIST-800-53-MP-7 │ │ │ +001c2600: 0a20 202d 2063 6f6e 6669 6775 7265 5f73 . - configure_s │ │ │ +001c2610: 7472 6174 6567 790a 2020 2d20 6869 6768 trategy. - high │ │ │ +001c2620: 5f64 6973 7275 7074 696f 6e0a 2020 2d20 _disruption. - │ │ │ +001c2630: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20 low_complexity. │ │ │ +001c2640: 202d 206d 6564 6975 6d5f 7365 7665 7269 - medium_severi │ │ │ +001c2650: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074 ty. - mount_opt │ │ │ +001c2660: 696f 6e5f 746d 705f 6e6f 6578 6563 0a20 ion_tmp_noexec. │ │ │ +001c2670: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565 - no_reboot_nee │ │ │ +001c2680: 6465 640a 0a2d 206e 616d 653a 2027 4164 ded..- name: 'Ad │ │ │ +001c2690: 6420 6e6f 6578 6563 204f 7074 696f 6e20 d noexec Option │ │ │ +001c26a0: 746f 202f 746d 703a 2049 6620 2f74 6d70 to /tmp: If /tmp │ │ │ +001c26b0: 206e 6f74 206d 6f75 6e74 6564 2c20 6372 not mounted, cr │ │ │ +001c26c0: 6166 7420 6d6f 756e 745f 696e 666f 206d aft mount_info m │ │ │ +001c26d0: 616e 7561 6c6c 7927 0a20 2073 6574 5f66 anually'. set_f │ │ │ +001c26e0: 6163 743a 0a20 2020 206d 6f75 6e74 5f69 act:. mount_i │ │ │ +001c26f0: 6e66 6f3a 2027 7b7b 206d 6f75 6e74 5f69 nfo: '{{ mount_i │ │ │ +001c2700: 6e66 6f7c 6465 6661 756c 7428 7b7d 297c nfo|default({})| │ │ │ +001c2710: 636f 6d62 696e 6528 7b69 7465 6d2e 303a combine({item.0: │ │ │ +001c2720: 2069 7465 6d2e 317d 2920 7d7d 270a 2020 item.1}) }}'. │ │ │ +001c2730: 7769 7468 5f74 6f67 6574 6865 723a 0a20 with_together:. │ │ │ +001c2740: 202d 202d 2074 6172 6765 740a 2020 2020 - - target. │ │ │ +001c2750: 2d20 736f 7572 6365 0a20 2020 202d 2066 - source. - f │ │ │ +001c2760: 7374 7970 650a 2020 2020 2d20 6f70 7469 stype. - opti │ │ │ +001c2770: 6f6e 730a 2020 2d20 2d20 2f74 6d70 0a20 ons. - - /tmp. │ │ │ +001c2780: 2020 202d 2027 270a 2020 2020 2d20 2727 - ''. - '' │ │ │ +001c2790: 0a20 2020 202d 2064 6566 6175 6c74 730a . - defaults. │ │ │ +001c27a0: 2020 7768 656e 3a0a 2020 2d20 2820 6e6f when:. - ( no │ │ │ +001c27b0: 7420 2820 226b 6572 6e65 6c22 2069 6e20 t ( "kernel" in │ │ │ +001c27c0: 616e 7369 626c 655f 6661 6374 732e 7061 ansible_facts.pa │ │ │ +001c27d0: 636b 6167 6573 2061 6e64 2022 626f 6f74 ckages and "boot │ │ │ +001c27e0: 6322 2069 6e20 616e 7369 626c 655f 6661 c" in ansible_fa │ │ │ +001c27f0: 6374 732e 7061 636b 6167 6573 0a20 2020 cts.packages. │ │ │ +001c2800: 2061 6e64 206e 6f74 2022 6f70 656e 7368 and not "opensh │ │ │ +001c2810: 6966 742d 6b75 6265 6c65 7422 2069 6e20 ift-kubelet" in │ │ │ +001c2820: 616e 7369 626c 655f 6661 6374 732e 7061 ansible_facts.pa │ │ │ +001c2830: 636b 6167 6573 2061 6e64 2022 6f73 7472 ckages and "ostr │ │ │ +001c2840: 6565 2220 696e 2061 6e73 6962 6c65 5f70 ee" in ansible_p │ │ │ +001c2850: 726f 635f 636d 646c 696e 650a 2020 2020 roc_cmdline. │ │ │ +001c2860: 2920 616e 6420 6e6f 7420 2820 616e 7369 ) and not ( ansi │ │ │ +001c2870: 626c 655f 7669 7274 7561 6c69 7a61 7469 ble_virtualizati │ │ │ +001c2880: 6f6e 5f74 7970 6520 696e 205b 2264 6f63 on_type in ["doc │ │ │ +001c2890: 6b65 7222 2c20 226c 7863 222c 2022 6f70 ker", "lxc", "op │ │ │ +001c28a0: 656e 767a 222c 2022 706f 646d 616e 222c envz", "podman", │ │ │ +001c28b0: 0a20 2020 2022 636f 6e74 6169 6e65 7222 . "container" │ │ │ +001c28c0: 5d20 2920 290a 2020 2d20 2722 2f74 6d70 ] ) ). - '"/tmp │ │ │ +001c28d0: 2220 696e 2061 6e73 6962 6c65 5f6d 6f75 " in ansible_mou │ │ │ +001c28e0: 6e74 7320 7c20 6d61 7028 6174 7472 6962 nts | map(attrib │ │ │ +001c28f0: 7574 653d 226d 6f75 6e74 2229 207c 206c ute="mount") | l │ │ │ +001c2900: 6973 7427 0a20 202d 2028 222d 2d66 7374 ist'. - ("--fst │ │ │ +001c2910: 6162 2220 7c20 6c65 6e67 7468 203d 3d20 ab" | length == │ │ │ +001c2920: 3029 0a20 202d 2064 6576 6963 655f 6e61 0). - device_na │ │ │ +001c2930: 6d65 2e73 7464 6f75 7420 6973 2064 6566 me.stdout is def │ │ │ +001c2940: 696e 6564 2061 6e64 2064 6576 6963 655f ined and device_ │ │ │ +001c2950: 6e61 6d65 2e73 7464 6f75 745f 6c69 6e65 name.stdout_line │ │ │ +001c2960: 7320 6973 2064 6566 696e 6564 0a20 202d s is defined. - │ │ │ +001c2970: 2028 6465 7669 6365 5f6e 616d 652e 7374 (device_name.st │ │ │ +001c2980: 646f 7574 207c 206c 656e 6774 6820 3d3d dout | length == │ │ │ +001c2990: 2030 290a 2020 7461 6773 3a0a 2020 2d20 0). tags:. - │ │ │ +001c29a0: 4e49 5354 2d38 3030 2d35 332d 4143 2d36 NIST-800-53-AC-6 │ │ │ +001c29b0: 0a20 202d 204e 4953 542d 3830 302d 3533 . - NIST-800-53 │ │ │ +001c29c0: 2d41 432d 3628 3129 0a20 202d 204e 4953 -AC-6(1). - NIS │ │ │ +001c29d0: 542d 3830 302d 3533 2d43 4d2d 3628 6129 T-800-53-CM-6(a) │ │ │ +001c29e0: 0a20 202d 204e 4953 542d 3830 302d 3533 . - NIST-800-53 │ │ │ +001c29f0: 2d43 4d2d 3728 6129 0a20 202d 204e 4953 -CM-7(a). - NIS │ │ │ +001c2a00: 542d 3830 302d 3533 2d43 4d2d 3728 6229 T-800-53-CM-7(b) │ │ │ +001c2a10: 0a20 202d 204e 4953 542d 3830 302d 3533 . - NIST-800-53 │ │ │ +001c2a20: 2d4d 502d 370a 2020 2d20 636f 6e66 6967 -MP-7. - config │ │ │ +001c2a30: 7572 655f 7374 7261 7465 6779 0a20 202d ure_strategy. - │ │ │ +001c2a40: 2068 6967 685f 6469 7372 7570 7469 6f6e high_disruption │ │ │ +001c2a50: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578 . - low_complex │ │ │ +001c2a60: 6974 790a 2020 2d20 6d65 6469 756d 5f73 ity. - medium_s │ │ │ +001c2a70: 6576 6572 6974 790a 2020 2d20 6d6f 756e everity. - moun │ │ │ +001c2a80: 745f 6f70 7469 6f6e 5f74 6d70 5f6e 6f65 t_option_tmp_noe │ │ │ +001c2a90: 7865 630a 2020 2d20 6e6f 5f72 6562 6f6f xec. - no_reboo │ │ │ +001c2aa0: 745f 6e65 6564 6564 0a0a 2d20 6e61 6d65 t_needed..- name │ │ │ +001c2ab0: 3a20 2741 6464 206e 6f65 7865 6320 4f70 : 'Add noexec Op │ │ │ +001c2ac0: 7469 6f6e 2074 6f20 2f74 6d70 3a20 4d61 tion to /tmp: Ma │ │ │ +001c2ad0: 6b65 2073 7572 6520 6e6f 6578 6563 206f ke sure noexec o │ │ │ +001c2ae0: 7074 696f 6e20 6973 2070 6172 7420 6f66 ption is part of │ │ │ +001c2af0: 2074 6865 2074 6f20 2f74 6d70 0a20 2020 the to /tmp. │ │ │ +001c2b00: 206f 7074 696f 6e73 270a 2020 7365 745f options'. set_ │ │ │ +001c2b10: 6661 6374 3a0a 2020 2020 6d6f 756e 745f fact:. mount_ │ │ │ +001c2b20: 696e 666f 3a20 277b 7b20 6d6f 756e 745f info: '{{ mount_ │ │ │ +001c2b30: 696e 666f 207c 2063 6f6d 6269 6e65 2820 info | combine( │ │ │ +001c2b40: 7b27 276f 7074 696f 6e73 2727 3a27 2727 {''options'':''' │ │ │ +001c2b50: 277e 286d 6f75 6e74 5f69 6e66 6f2e 6f70 '~(mount_info.op │ │ │ +001c2b60: 7469 6f6e 7320 7c0a 2020 2020 2020 6465 tions |. de │ │ │ +001c2b70: 6661 756c 7428 2727 2727 2929 7e28 2727 fault(''''))~('' │ │ │ +001c2b80: 2c27 2720 6966 2028 6d6f 756e 745f 696e ,'' if (mount_in │ │ │ +001c2b90: 666f 2e6f 7074 696f 6e73 207c 2064 6566 fo.options | def │ │ │ +001c2ba0: 6175 6c74 2827 2727 2729 2920 656c 7365 ault('''')) else │ │ │ +001c2bb0: 2027 2727 2729 7e27 276e 6f65 7865 6327 '''')~''noexec' │ │ │ +001c2bc0: 270a 2020 2020 2020 7d29 207d 7d27 0a20 '. }) }}'. │ │ │ +001c2bd0: 2077 6865 6e3a 0a20 202d 2028 206e 6f74 when:. - ( not │ │ │ +001c2be0: 2028 2022 6b65 726e 656c 2220 696e 2061 ( "kernel" in a │ │ │ +001c2bf0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163 nsible_facts.pac │ │ │ +001c2c00: 6b61 6765 7320 616e 6420 2262 6f6f 7463 kages and "bootc │ │ │ +001c2c10: 2220 696e 2061 6e73 6962 6c65 5f66 6163 " in ansible_fac │ │ │ +001c2c20: 7473 2e70 6163 6b61 6765 730a 2020 2020 ts.packages. │ │ │ +001c2c30: 616e 6420 6e6f 7420 226f 7065 6e73 6869 and not "openshi │ │ │ +001c2c40: 6674 2d6b 7562 656c 6574 2220 696e 2061 ft-kubelet" in a │ │ │ +001c2c50: 6e73 6962 6c65 5f66 6163 7473 2e70 6163 nsible_facts.pac │ │ │ +001c2c60: 6b61 6765 7320 616e 6420 226f 7374 7265 kages and "ostre │ │ │ +001c2c70: 6522 2069 6e20 616e 7369 626c 655f 7072 e" in ansible_pr │ │ │ +001c2c80: 6f63 5f63 6d64 6c69 6e65 0a20 2020 2029 oc_cmdline. ) │ │ │ +001c2c90: 2061 6e64 206e 6f74 2028 2061 6e73 6962 and not ( ansib │ │ │ +001c2ca0: 6c65 5f76 6972 7475 616c 697a 6174 696f le_virtualizatio │ │ │ +001c2cb0: 6e5f 7479 7065 2069 6e20 5b22 646f 636b n_type in ["dock │ │ │ +001c2cc0: 6572 222c 2022 6c78 6322 2c20 226f 7065 er", "lxc", "ope │ │ │ +001c2cd0: 6e76 7a22 2c20 2270 6f64 6d61 6e22 2c0a nvz", "podman",. │ │ │ +001c2ce0: 2020 2020 2263 6f6e 7461 696e 6572 225d "container"] │ │ │ +001c2cf0: 2029 2029 0a20 202d 2027 222f 746d 7022 ) ). - '"/tmp" │ │ │ +001c2d00: 2069 6e20 616e 7369 626c 655f 6d6f 756e in ansible_moun │ │ │ +001c2d10: 7473 207c 206d 6170 2861 7474 7269 6275 ts | map(attribu │ │ │ +001c2d20: 7465 3d22 6d6f 756e 7422 2920 7c20 6c69 te="mount") | li │ │ │ +001c2d30: 7374 270a 2020 2d20 6d6f 756e 745f 696e st'. - mount_in │ │ │ +001c2d40: 666f 2069 7320 6465 6669 6e65 6420 616e fo is defined an │ │ │ +001c2d50: 6420 226e 6f65 7865 6322 206e 6f74 2069 d "noexec" not i │ │ │ +001c2d60: 6e20 286d 6f75 6e74 5f69 6e66 6f2e 6f70 n (mount_info.op │ │ │ +001c2d70: 7469 6f6e 7320 7c20 6465 6661 756c 7428 tions | default( │ │ │ +001c2d80: 2727 2929 0a20 2074 6167 733a 0a20 202d '')). tags:. - │ │ │ +001c2d90: 204e 4953 542d 3830 302d 3533 2d41 432d NIST-800-53-AC- │ │ │ +001c2da0: 360a 2020 2d20 4e49 5354 2d38 3030 2d35 6. - NIST-800-5 │ │ │ +001c2db0: 332d 4143 2d36 2831 290a 2020 2d20 4e49 3-AC-6(1). - NI │ │ │ +001c2dc0: 5354 2d38 3030 2d35 332d 434d 2d36 2861 ST-800-53-CM-6(a │ │ │ +001c2dd0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35 ). - NIST-800-5 │ │ │ +001c2de0: 332d 434d 2d37 2861 290a 2020 2d20 4e49 3-CM-7(a). - NI │ │ │ +001c2df0: 5354 2d38 3030 2d35 332d 434d 2d37 2862 ST-800-53-CM-7(b │ │ │ +001c2e00: 290a 2020 2d20 4e49 5354 2d38 3030 2d35 ). - NIST-800-5 │ │ │ +001c2e10: 332d 4d50 2d37 0a20 202d 2063 6f6e 6669 3-MP-7. - confi │ │ │ +001c2e20: 6775 7265 5f73 7472 6174 6567 790a 2020 gure_strategy. │ │ │ +001c2e30: 2d20 6869 6768 5f64 6973 7275 7074 696f - high_disruptio │ │ │ +001c2e40: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65 n. - low_comple │ │ │ +001c2e50: 7869 7479 0a20 202d 206d 6564 6975 6d5f xity. - medium_ │ │ │ +001c2e60: 7365 7665 7269 7479 0a20 202d 206d 6f75 severity. - mou │ │ │ +001c2e70: 6e74 5f6f 7074 696f 6e5f 746d 705f 6e6f nt_option_tmp_no │ │ │ +001c2e80: 6578 6563 0a20 202d 206e 6f5f 7265 626f exec. - no_rebo │ │ │ +001c2e90: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d ot_needed..- nam │ │ │ +001c2ea0: 653a 2027 4164 6420 6e6f 6578 6563 204f e: 'Add noexec O │ │ │ +001c2eb0: 7074 696f 6e20 746f 202f 746d 703a 2045 ption to /tmp: E │ │ │ +001c2ec0: 6e73 7572 6520 2f74 6d70 2069 7320 6d6f nsure /tmp is mo │ │ │ +001c2ed0: 756e 7465 6420 7769 7468 206e 6f65 7865 unted with noexe │ │ │ +001c2ee0: 6320 6f70 7469 6f6e 270a 2020 616e 7369 c option'. ansi │ │ │ +001c2ef0: 626c 652e 706f 7369 782e 6d6f 756e 743a ble.posix.mount: │ │ │ +001c2f00: 0a20 2020 2070 6174 683a 202f 746d 700a . path: /tmp. │ │ │ +001c2f10: 2020 2020 7372 633a 2027 7b7b 206d 6f75 src: '{{ mou │ │ │ +001c2f20: 6e74 5f69 6e66 6f2e 736f 7572 6365 207c nt_info.source | │ │ │ +001c2f30: 2064 6566 6175 6c74 2827 2727 2729 207d default('''') } │ │ │ +001c2f40: 7d27 0a20 2020 206f 7074 733a 2027 7b7b }'. opts: '{{ │ │ │ +001c2f50: 206d 6f75 6e74 5f69 6e66 6f2e 6f70 7469 mount_info.opti │ │ │ +001c2f60: 6f6e 7320 7c20 6465 6661 756c 7428 2727 ons | default('' │ │ │ +001c2f70: 2727 2920 7d7d 270a 2020 2020 7374 6174 '') }}'. stat │ │ │ +001c2f80: 653a 206d 6f75 6e74 6564 0a20 2020 2066 e: mounted. f │ │ │ +001c2f90: 7374 7970 653a 2027 7b7b 206d 6f75 6e74 stype: '{{ mount │ │ │ +001c2fa0: 5f69 6e66 6f2e 6673 7479 7065 207c 2064 _info.fstype | d │ │ │ +001c2fb0: 6566 6175 6c74 2827 2727 2729 207d 7d27 efault('''') }}' │ │ │ +001c2fc0: 0a20 2072 6567 6973 7465 723a 206d 6f75 . register: mou │ │ │ +001c2fd0: 6e74 5f72 6573 756c 740a 2020 6661 696c nt_result. fail │ │ │ +001c2fe0: 6564 5f77 6865 6e3a 0a20 202d 206d 6f75 ed_when:. - mou │ │ │ +001c2ff0: 6e74 5f72 6573 756c 7420 6973 2066 6169 nt_result is fai │ │ │ +001c3000: 6c65 640a 2020 2d20 2727 2774 6172 6765 led. - '''targe │ │ │ +001c3010: 7420 6973 2062 7573 7927 2720 6e6f 7420 t is busy'' not │ │ │ +001c3020: 696e 2028 6d6f 756e 745f 7265 7375 6c74 in (mount_result │ │ │ +001c3030: 2e6d 7367 207c 2064 6566 6175 6c74 2827 .msg | default(' │ │ │ +001c3040: 2727 2729 2927 0a20 202d 2027 2727 616c '''))'. - '''al │ │ │ +001c3050: 7265 6164 7920 6d6f 756e 7465 6427 2720 ready mounted'' │ │ │ +001c3060: 6e6f 7420 696e 2028 6d6f 756e 745f 7265 not in (mount_re │ │ │ +001c3070: 7375 6c74 2e6d 7367 207c 2064 6566 6175 sult.msg | defau │ │ │ +001c3080: 6c74 2827 2727 2729 2927 0a20 2077 6865 lt(''''))'. whe │ │ │ +001c3090: 6e3a 0a20 202d 2028 206e 6f74 2028 2022 n:. - ( not ( " │ │ │ +001c30a0: 6b65 726e 656c 2220 696e 2061 6e73 6962 kernel" in ansib │ │ │ +001c30b0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765 le_facts.package │ │ │ +001c30c0: 7320 616e 6420 2262 6f6f 7463 2220 696e s and "bootc" in │ │ │ +001c30d0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70 ansible_facts.p │ │ │ +001c30e0: 6163 6b61 6765 730a 2020 2020 616e 6420 ackages. and │ │ │ +001c30f0: 6e6f 7420 226f 7065 6e73 6869 6674 2d6b not "openshift-k │ │ │ +001c3100: 7562 656c 6574 2220 696e 2061 6e73 6962 ubelet" in ansib │ │ │ +001c3110: 6c65 5f66 6163 7473 2e70 6163 6b61 6765 le_facts.package │ │ │ +001c3120: 7320 616e 6420 226f 7374 7265 6522 2069 s and "ostree" i │ │ │ +001c3130: 6e20 616e 7369 626c 655f 7072 6f63 5f63 n ansible_proc_c │ │ │ +001c3140: 6d64 6c69 6e65 0a20 2020 2029 2061 6e64 mdline. ) and │ │ │ +001c3150: 206e 6f74 2028 2061 6e73 6962 6c65 5f76 not ( ansible_v │ │ │ +001c3160: 6972 7475 616c 697a 6174 696f 6e5f 7479 irtualization_ty │ │ │ +001c3170: 7065 2069 6e20 5b22 646f 636b 6572 222c pe in ["docker", │ │ │ +001c3180: 2022 6c78 6322 2c20 226f 7065 6e76 7a22 "lxc", "openvz" │ │ │ +001c3190: 2c20 2270 6f64 6d61 6e22 2c0a 2020 2020 , "podman",. │ │ │ +001c31a0: 2263 6f6e 7461 696e 6572 225d 2029 2029 "container"] ) ) │ │ │ +001c31b0: 0a20 202d 2027 222f 746d 7022 2069 6e20 . - '"/tmp" in │ │ │ +001c31c0: 616e 7369 626c 655f 6d6f 756e 7473 207c ansible_mounts | │ │ │ +001c31d0: 206d 6170 2861 7474 7269 6275 7465 3d22 map(attribute=" │ │ │ +001c31e0: 6d6f 756e 7422 2920 7c20 6c69 7374 270a mount") | list'. │ │ │ +001c31f0: 2020 2d20 6d6f 756e 745f 696e 666f 2069 - mount_info i │ │ │ +001c3200: 7320 6465 6669 6e65 640a 2020 2d20 2864 s defined. - (d │ │ │ +001c3210: 6576 6963 655f 6e61 6d65 2e73 7464 6f75 evice_name.stdou │ │ │ +001c3220: 7420 6973 2064 6566 696e 6564 2061 6e64 t is defined and │ │ │ +001c3230: 2028 6465 7669 6365 5f6e 616d 652e 7374 (device_name.st │ │ │ +001c3240: 646f 7574 207c 206c 656e 6774 6820 2667 dout | length &g │ │ │ +001c3250: 743b 2030 2929 206f 7220 2822 2d2d 6673 t; 0)) or ("--fs │ │ │ +001c3260: 7461 6222 0a20 2020 207c 206c 656e 6774 tab". | lengt │ │ │ +001c3270: 6820 3d3d 2030 290a 2020 7461 6773 3a0a h == 0). tags:. │ │ │ +001c3280: 2020 2d20 4e49 5354 2d38 3030 2d35 332d - NIST-800-53- │ │ │ +001c3290: 4143 2d36 0a20 202d 204e 4953 542d 3830 AC-6. - NIST-80 │ │ │ +001c32a0: 302d 3533 2d41 432d 3628 3129 0a20 202d 0-53-AC-6(1). - │ │ │ +001c32b0: 204e 4953 542d 3830 302d 3533 2d43 4d2d NIST-800-53-CM- │ │ │ +001c32c0: 3628 6129 0a20 202d 204e 4953 542d 3830 6(a). - NIST-80 │ │ │ +001c32d0: 302d 3533 2d43 4d2d 3728 6129 0a20 202d 0-53-CM-7(a). - │ │ │ +001c32e0: 204e 4953 542d 3830 302d 3533 2d43 4d2d NIST-800-53-CM- │ │ │ +001c32f0: 3728 6229 0a20 202d 204e 4953 542d 3830 7(b). - NIST-80 │ │ │ +001c3300: 302d 3533 2d4d 502d 370a 2020 2d20 636f 0-53-MP-7. - co │ │ │ +001c3310: 6e66 6967 7572 655f 7374 7261 7465 6779 nfigure_strategy │ │ │ +001c3320: 0a20 202d 2068 6967 685f 6469 7372 7570 . - high_disrup │ │ │ +001c3330: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d tion. - low_com │ │ │ +001c3340: 706c 6578 6974 790a 2020 2d20 6d65 6469 plexity. - medi │ │ │ +001c3350: 756d 5f73 6576 6572 6974 790a 2020 2d20 um_severity. - │ │ │ +001c3360: 6d6f 756e 745f 6f70 7469 6f6e 5f74 6d70 mount_option_tmp │ │ │ +001c3370: 5f6e 6f65 7865 630a 2020 2d20 6e6f 5f72 _noexec. - no_r │ │ │ +001c3380: 6562 6f6f 745f 6e65 6564 6564 0a3c 2f63 eboot_needed.

│ │ │ +001c33a0: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ +001c3440: 6564 6961 7469 6f6e 2053 6865 6c6c 2073 ediation Shell s │ │ │ +001c3450: 6372 6970 7420 e287 b23c 2f61 3e3c 6272 cript ...
# R
│ │ │ +001c3510: 656d 6564 6961 7469 6f6e 2069 7320 6170  emediation is ap
│ │ │ +001c3520: 706c 6963 6162 6c65 206f 6e6c 7920 696e  plicable only in
│ │ │ +001c3530: 2063 6572 7461 696e 2070 6c61 7466 6f72   certain platfor
│ │ │ +001c3540: 6d73 0a69 6620 2820 2120 2820 7b20 7270  ms.if ( ! ( { rp
│ │ │ +001c3550: 6d20 2d2d 7175 6965 7420 2d71 206b 6572  m --quiet -q ker
│ │ │ +001c3560: 6e65 6c20 3b7d 2026 616d 703b 2661 6d70  nel ;} &&
│ │ │ +001c3570: 3b20 7b20 7270 6d20 2d2d 7175 6965 7420  ; { rpm --quiet 
│ │ │ +001c3580: 2d71 2062 6f6f 7463 203b 7d20 2661 6d70  -q bootc ;} &
│ │ │ +001c3590: 3b26 616d 703b 207b 2021 2072 706d 202d  ;& { ! rpm -
│ │ │ +001c35a0: 2d71 7569 6574 202d 7120 6f70 656e 7368  -quiet -q opensh
│ │ │ +001c35b0: 6966 742d 6b75 6265 6c65 7420 3b7d 2026  ift-kubelet ;} &
│ │ │ +001c35c0: 616d 703b 2661 6d70 3b20 285b 202d 6620  amp;& ([ -f 
│ │ │ +001c35d0: 2f72 756e 2f6f 7374 7265 652d 626f 6f74  /run/ostree-boot
│ │ │ +001c35e0: 6564 205d 207c 7c20 5b20 2d4c 202f 6f73  ed ] || [ -L /os
│ │ │ +001c35f0: 7472 6565 205d 2920 2920 2661 6d70 3b26  tree ]) ) &&
│ │ │ +001c3600: 616d 703b 2021 2028 205b 202d 6620 2f2e  amp; ! ( [ -f /.
│ │ │ +001c3610: 646f 636b 6572 656e 7620 5d20 7c7c 205b  dockerenv ] || [
│ │ │ +001c3620: 202d 6620 2f72 756e 2f2e 636f 6e74 6169   -f /run/.contai
│ │ │ +001c3630: 6e65 7265 6e76 205d 2029 2029 2026 616d  nerenv ] ) ) &am
│ │ │ +001c3640: 703b 2661 6d70 3b20 7b20 2820 6669 6e64  p;& { ( find
│ │ │ +001c3650: 6d6e 7420 2d2d 6b65 726e 656c 2022 2f74  mnt --kernel "/t
│ │ │ +001c3660: 6d70 2220 2667 743b 202f 6465 762f 6e75  mp" > /dev/nu
│ │ │ +001c3670: 6c6c 207c 7c20 6669 6e64 6d6e 7420 2d2d  ll || findmnt --
│ │ │ +001c3680: 6673 7461 6220 222f 746d 7022 2026 6774  fstab "/tmp" >
│ │ │ +001c3690: 3b20 2f64 6576 2f6e 756c 6c20 293b 207d  ; /dev/null ); }
│ │ │ +001c36a0: 3b20 7468 656e 0a0a 6675 6e63 7469 6f6e  ; then..function
│ │ │ +001c36b0: 2070 6572 666f 726d 5f72 656d 6564 6961   perform_remedia
│ │ │ +001c36c0: 7469 6f6e 207b 0a0a 2020 2020 0a20 2020  tion {..    .   
│ │ │ +001c36d0: 2020 2020 2023 2074 6865 206d 6f75 6e74       # the mount
│ │ │ +001c36e0: 2070 6f69 6e74 202f 746d 7020 6861 7320   point /tmp has 
│ │ │ +001c36f0: 746f 2062 6520 6465 6669 6e65 6420 696e  to be defined in
│ │ │ +001c3700: 202f 6574 632f 6673 7461 620a 2020 2020   /etc/fstab.    
│ │ │ +001c3710: 2020 2020 2320 6265 666f 7265 2074 6869      # before thi
│ │ │ +001c3720: 7320 7265 6d65 6469 6174 696f 6e20 6361  s remediation ca
│ │ │ +001c3730: 6e20 6265 2065 7865 6375 7465 642e 2049  n be executed. I
│ │ │ +001c3740: 6e20 6361 7365 2069 7420 6973 206e 6f74  n case it is not
│ │ │ +001c3750: 2064 6566 696e 6564 2c20 7468 650a 2020   defined, the.  
│ │ │ +001c3760: 2020 2020 2020 2320 7265 6d65 6469 6174        # remediat
│ │ │ +001c3770: 696f 6e20 6162 6f72 7473 2061 6e64 206e  ion aborts and n
│ │ │ +001c3780: 6f20 6368 616e 6765 7320 7265 6761 7264  o changes regard
│ │ │ +001c3790: 696e 6720 7468 6520 6d6f 756e 7420 706f  ing the mount po
│ │ │ +001c37a0: 696e 7420 6172 6520 646f 6e65 2e0a 2020  int are done..  
│ │ │ +001c37b0: 2020 2020 2020 6d6f 756e 745f 706f 696e        mount_poin
│ │ │ +001c37c0: 745f 6d61 7463 685f 7265 6765 7870 3d22  t_match_regexp="
│ │ │ +001c37d0: 2428 7072 696e 7466 2022 5e5b 5b3a 7370  $(printf "^[[:sp
│ │ │ +001c37e0: 6163 653a 5d5d 2a5b 5e23 5d2e 2a5b 5b3a  ace:]]*[^#].*[[:
│ │ │ +001c37f0: 7370 6163 653a 5d5d 2573 5b5b 3a73 7061  space:]]%s[[:spa
│ │ │ +001c3800: 6365 3a5d 5d22 2022 2f74 6d70 2229 220a  ce:]]" "/tmp")".
│ │ │ +001c3810: 0a20 2020 2067 7265 7020 2224 6d6f 756e  .    grep "$moun
│ │ │ +001c3820: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ +001c3830: 6765 7870 2220 2d71 202f 6574 632f 6673  gexp" -q /etc/fs
│ │ │ +001c3840: 7461 6220 5c0a 2020 2020 2020 2020 7c7c  tab \.        ||
│ │ │ +001c3850: 207b 2065 6368 6f20 2254 6865 206d 6f75   { echo "The mou
│ │ │ +001c3860: 6e74 2070 6f69 6e74 2027 2f74 6d70 2720  nt point '/tmp' 
│ │ │ +001c3870: 6973 206e 6f74 2065 7665 6e20 696e 202f  is not even in /
│ │ │ +001c3880: 6574 632f 6673 7461 622c 2073 6f20 7765  etc/fstab, so we
│ │ │ +001c3890: 2063 616e 2774 2073 6574 2075 7020 6d6f   can't set up mo
│ │ │ +001c38a0: 756e 7420 6f70 7469 6f6e 7322 2026 6774  unt options" >
│ │ │ +001c38b0: 3b26 616d 703b 323b 0a20 2020 2020 2020  ;&2;.       
│ │ │ +001c38c0: 2020 2020 2020 2020 2065 6368 6f20 224e           echo "N
│ │ │ +001c38d0: 6f74 2072 656d 6564 6961 7469 6e67 2c20  ot remediating, 
│ │ │ +001c38e0: 6265 6361 7573 6520 7468 6572 6520 6973  because there is
│ │ │ +001c38f0: 206e 6f20 7265 636f 7264 206f 6620 2f74   no record of /t
│ │ │ +001c3900: 6d70 2069 6e20 2f65 7463 2f66 7374 6162  mp in /etc/fstab
│ │ │ +001c3910: 2220 2667 743b 2661 6d70 3b32 3b20 7265  " >&2; re
│ │ │ +001c3920: 7475 726e 2031 3b20 7d0a 2020 2020 0a0a  turn 1; }.    ..
│ │ │ +001c3930: 0a20 2020 206d 6f75 6e74 5f70 6f69 6e74  .    mount_point
│ │ │ +001c3940: 5f6d 6174 6368 5f72 6567 6578 703d 2224  _match_regexp="$
│ │ │ +001c3950: 2870 7269 6e74 6620 225e 5b5b 3a73 7061  (printf "^[[:spa
│ │ │ +001c3960: 6365 3a5d 5d2a 5b5e 235d 2e2a 5b5b 3a73  ce:]]*[^#].*[[:s
│ │ │ +001c3970: 7061 6365 3a5d 5d25 735b 5b3a 7370 6163  pace:]]%s[[:spac
│ │ │ +001c3980: 653a 5d5d 2220 2f74 6d70 2922 0a0a 2020  e:]]" /tmp)"..  
│ │ │ +001c3990: 2020 2320 4966 2074 6865 206d 6f75 6e74    # If the mount
│ │ │ +001c39a0: 2070 6f69 6e74 2069 7320 6e6f 7420 696e   point is not in
│ │ │ +001c39b0: 202f 6574 632f 6673 7461 622c 2067 6574   /etc/fstab, get
│ │ │ +001c39c0: 2070 7265 7669 6f75 7320 6d6f 756e 7420   previous mount 
│ │ │ +001c39d0: 6f70 7469 6f6e 7320 6672 6f6d 202f 6574  options from /et
│ │ │ +001c39e0: 632f 6d74 6162 0a20 2020 2069 6620 2120  c/mtab.    if ! 
│ │ │ +001c39f0: 6772 6570 202d 7120 2224 6d6f 756e 745f  grep -q "$mount_
│ │ │ +001c3a00: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ +001c3a10: 7870 2220 2f65 7463 2f66 7374 6162 3b20  xp" /etc/fstab; 
│ │ │ +001c3a20: 7468 656e 0a20 2020 2020 2020 2023 2072  then.        # r
│ │ │ +001c3a30: 756e 7469 6d65 206f 7074 7320 7769 7468  untime opts with
│ │ │ +001c3a40: 6f75 7420 736f 6d65 2061 7574 6f6d 6174  out some automat
│ │ │ +001c3a50: 6963 206b 6572 6e65 6c2f 7573 6572 7370  ic kernel/usersp
│ │ │ +001c3a60: 6163 652d 6164 6465 6420 6465 6661 756c  ace-added defaul
│ │ │ +001c3a70: 7473 0a20 2020 2020 2020 2070 7265 7669  ts.        previ
│ │ │ +001c3a80: 6f75 735f 6d6f 756e 745f 6f70 7473 3d24  ous_mount_opts=$
│ │ │ +001c3a90: 2867 7265 7020 2224 6d6f 756e 745f 706f  (grep "$mount_po
│ │ │ +001c3aa0: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ +001c3ab0: 2220 2f65 7463 2f6d 7461 6220 7c20 6865  " /etc/mtab | he
│ │ │ +001c3ac0: 6164 202d 3120 7c20 2061 776b 2027 7b70  ad -1 |  awk '{p
│ │ │ +001c3ad0: 7269 6e74 2024 347d 2720 5c0a 2020 2020  rint $4}' \.    
│ │ │ +001c3ae0: 2020 2020 2020 2020 2020 2020 2020 2020                  
│ │ │ +001c3af0: 7c20 7365 6420 2d45 2022 732f 2872 777c  | sed -E "s/(rw|
│ │ │ +001c3b00: 6465 6661 756c 7473 7c73 6563 6c61 6265  defaults|seclabe
│ │ │ +001c3b10: 6c7c 6e6f 6578 6563 2928 2c7c 2429 2f2f  l|noexec)(,|$)//
│ │ │ +001c3b20: 673b 732f 2c24 2f2f 2229 0a20 2020 2020  g;s/,$//").     
│ │ │ +001c3b30: 2020 205b 2022 2470 7265 7669 6f75 735f     [ "$previous_
│ │ │ +001c3b40: 6d6f 756e 745f 6f70 7473 2220 5d20 2661  mount_opts" ] &a
│ │ │ +001c3b50: 6d70 3b26 616d 703b 2070 7265 7669 6f75  mp;& previou
│ │ │ +001c3b60: 735f 6d6f 756e 745f 6f70 7473 2b3d 222c  s_mount_opts+=",
│ │ │ +001c3b70: 220a 2020 2020 2020 2020 2320 496e 2069  ".        # In i
│ │ │ +001c3b80: 736f 3936 3630 2066 696c 6573 7973 7465  so9660 filesyste
│ │ │ +001c3b90: 6d73 206d 7461 6220 636f 756c 6420 6465  ms mtab could de
│ │ │ +001c3ba0: 7363 7269 6265 2061 2022 626c 6f63 6b73  scribe a "blocks
│ │ │ +001c3bb0: 697a 6522 2076 616c 7565 2c20 7468 6973  ize" value, this
│ │ │ +001c3bc0: 2073 686f 756c 6420 6265 2072 6566 6c65   should be refle
│ │ │ +001c3bd0: 6374 6564 2069 6e0a 2020 2020 2020 2020  cted in.        
│ │ │ +001c3be0: 2320 6673 7461 6220 6173 2022 626c 6f63  # fstab as "bloc
│ │ │ +001c3bf0: 6b22 2e20 2054 6865 206e 6578 7420 7661  k".  The next va
│ │ │ +001c3c00: 7269 6162 6c65 2069 7320 746f 2073 6174  riable is to sat
│ │ │ +001c3c10: 6973 6679 2073 6865 6c6c 6368 6563 6b20  isfy shellcheck 
│ │ │ +001c3c20: 5343 3230 3530 2e0a 2020 2020 2020 2020  SC2050..        
│ │ │ +001c3c30: 6673 5f74 7970 653d 2222 0a20 2020 2020  fs_type="".     
│ │ │ +001c3c40: 2020 2069 6620 5b20 2022 2466 735f 7479     if [  "$fs_ty
│ │ │ +001c3c50: 7065 2220 3d3d 2022 6973 6f39 3636 3022  pe" == "iso9660"
│ │ │ +001c3c60: 205d 203b 2074 6865 6e0a 2020 2020 2020   ] ; then.      
│ │ │ +001c3c70: 2020 2020 2020 7072 6576 696f 7573 5f6d        previous_m
│ │ │ +001c3c80: 6f75 6e74 5f6f 7074 733d 2428 7365 6420  ount_opts=$(sed 
│ │ │ +001c3c90: 2773 2f62 6c6f 636b 7369 7a65 3d2f 626c  's/blocksize=/bl
│ │ │ +001c3ca0: 6f63 6b3d 2f27 2026 6c74 3b26 6c74 3b26  ock=/' <<&
│ │ │ +001c3cb0: 6c74 3b20 2224 7072 6576 696f 7573 5f6d  lt; "$previous_m
│ │ │ +001c3cc0: 6f75 6e74 5f6f 7074 7322 290a 2020 2020  ount_opts").    
│ │ │ +001c3cd0: 2020 2020 6669 0a20 2020 2020 2020 2065      fi.        e
│ │ │ +001c3ce0: 6368 6f20 2220 2f74 6d70 2020 6465 6661  cho " /tmp  defa
│ │ │ +001c3cf0: 756c 7473 2c24 7b70 7265 7669 6f75 735f  ults,${previous_
│ │ │ +001c3d00: 6d6f 756e 745f 6f70 7473 7d6e 6f65 7865  mount_opts}noexe
│ │ │ +001c3d10: 6320 3020 3022 2026 6774 3b26 6774 3b20  c 0 0" >> 
│ │ │ +001c3d20: 2f65 7463 2f66 7374 6162 0a20 2020 2023  /etc/fstab.    #
│ │ │ +001c3d30: 2049 6620 7468 6520 6d6f 756e 745f 6f70   If the mount_op
│ │ │ +001c3d40: 7420 6f70 7469 6f6e 2069 7320 6e6f 7420  t option is not 
│ │ │ +001c3d50: 616c 7265 6164 7920 696e 2074 6865 206d  already in the m
│ │ │ +001c3d60: 6f75 6e74 2070 6f69 6e74 2773 202f 6574  ount point's /et
│ │ │ +001c3d70: 632f 6673 7461 6220 656e 7472 792c 2061  c/fstab entry, a
│ │ │ +001c3d80: 6464 2069 740a 2020 2020 656c 6966 2021  dd it.    elif !
│ │ │ +001c3d90: 2067 7265 7020 2224 6d6f 756e 745f 706f   grep "$mount_po
│ │ │ +001c3da0: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ +001c3db0: 2220 2f65 7463 2f66 7374 6162 207c 2067  " /etc/fstab | g
│ │ │ +001c3dc0: 7265 7020 2d71 2022 6e6f 6578 6563 223b  rep -q "noexec";
│ │ │ +001c3dd0: 2074 6865 6e0a 2020 2020 2020 2020 7072   then.        pr
│ │ │ +001c3de0: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ +001c3df0: 733d 2428 6772 6570 2022 246d 6f75 6e74  s=$(grep "$mount
│ │ │ +001c3e00: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ +001c3e10: 6578 7022 202f 6574 632f 6673 7461 6220  exp" /etc/fstab 
│ │ │ +001c3e20: 7c20 6177 6b20 277b 7072 696e 7420 2434  | awk '{print $4
│ │ │ +001c3e30: 7d27 290a 2020 2020 2020 2020 7365 6420  }').        sed 
│ │ │ +001c3e40: 2d69 2022 737c 5c28 247b 6d6f 756e 745f  -i "s|\(${mount_
│ │ │ +001c3e50: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ +001c3e60: 7870 7d2e 2a24 7b70 7265 7669 6f75 735f  xp}.*${previous_
│ │ │ +001c3e70: 6d6f 756e 745f 6f70 7473 7d5c 297c 5c31  mount_opts}\)|\1
│ │ │ +001c3e80: 2c6e 6f65 7865 637c 2220 2f65 7463 2f66  ,noexec|" /etc/f
│ │ │ +001c3e90: 7374 6162 0a20 2020 2066 690a 0a0a 2020  stab.    fi...  
│ │ │ +001c3ea0: 2020 6966 206d 6b64 6972 202d 7020 222f    if mkdir -p "/
│ │ │ +001c3eb0: 746d 7022 3b20 7468 656e 0a20 2020 2020  tmp"; then.     
│ │ │ +001c3ec0: 2020 2069 6620 6d6f 756e 7470 6f69 6e74     if mountpoint
│ │ │ +001c3ed0: 202d 7120 222f 746d 7022 3b20 7468 656e   -q "/tmp"; then
│ │ │ +001c3ee0: 0a20 2020 2020 2020 2020 2020 206d 6f75  .            mou
│ │ │ +001c3ef0: 6e74 202d 6f20 7265 6d6f 756e 7420 2d2d  nt -o remount --
│ │ │ +001c3f00: 7461 7267 6574 2022 2f74 6d70 220a 2020  target "/tmp".  
│ │ │ +001c3f10: 2020 2020 2020 6669 0a20 2020 2066 690a        fi.    fi.
│ │ │ +001c3f20: 7d0a 0a70 6572 666f 726d 5f72 656d 6564  }..perform_remed
│ │ │ +001c3f30: 6961 7469 6f6e 0a0a 656c 7365 0a20 2020  iation..else.   
│ │ │ +001c3f40: 2026 6774 3b26 616d 703b 3220 6563 686f   >&2 echo
│ │ │ +001c3f50: 2027 5265 6d65 6469 6174 696f 6e20 6973   'Remediation is
│ │ │ +001c3f60: 206e 6f74 2061 7070 6c69 6361 626c 652c   not applicable,
│ │ │ +001c3f70: 206e 6f74 6869 6e67 2077 6173 2064 6f6e   nothing was don
│ │ │ +001c3f80: 6527 0a66 690a 3c2f 636f 6465 3e3c 2f70  e'.fi.

Remediatio │ │ │ +001c4040: 6e20 416e 6163 6f6e 6461 2073 6e69 7070 n Anaconda snipp │ │ │ +001c4050: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ +001c40d0: 3c74 723e 3c74 683e 436f 6d70 6c65 7869
Strategy: │ │ │ +001c4160: 3c74 643e 656e 6162 6c65 3c2f 7464 3e3c < │ │ │ +001c4170: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
Reboo │ │ │ +001c34e0: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ +001c34f0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Complexi │ │ │ +001c40e0: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +001c40f0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Disruption:high
Reboo │ │ │ +001c4130: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ +001c4140: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
enable
.part /tm
│ │ │ +001c4190: 7020 2d2d 6d6f 756e 746f 7074 696f 6e73  p --mountoptions
│ │ │ +001c41a0: 3d22 6e6f 6578 6563 220a 3c2f 636f 6465  ="noexec".
Remedi │ │ │ -001c52a0: 6174 696f 6e20 416e 6163 6f6e 6461 2073 ation Anaconda s │ │ │ -001c52b0: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ -001c5340: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -001c5350: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -001c5370: 3c2f 7468 3e3c 7464 3e68 6967 683c 2f74 high
R │ │ │ -001c5390: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -001c53a0: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -001c53c0: 2f74 683e 3c74 643e 656e 6162 6c65 3c2f /th>enable
│ │ │ -001c53e0: 3c70 7265 3e3c 636f 6465 3e0a 7061 7274
.part
│ │ │ -001c53f0: 202f 746d 7020 2d2d 6d6f 756e 746f 7074   /tmp --mountopt
│ │ │ -001c5400: 696f 6e73 3d22 6e6f 7375 6964 220a 3c2f  ions="nosuid".
Re │ │ │ -001c54c0: 6d65 6469 6174 696f 6e20 416e 7369 626c mediation Ansibl │ │ │ -001c54d0: 6520 736e 6970 7065 7420 e287 b23c 2f61 e snippet ...
< │ │ │ -001c5570: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -001c5580: 3c74 723e 3c74 683e 4469 7372 7570 7469 Reboot:false
- name: Gather 
│ │ │ -001c5620: 7468 6520 7061 636b 6167 6520 6661 6374  the package fact
│ │ │ -001c5630: 730a 2020 7061 636b 6167 655f 6661 6374  s.  package_fact
│ │ │ -001c5640: 733a 0a20 2020 206d 616e 6167 6572 3a20  s:.    manager: 
│ │ │ -001c5650: 6175 746f 0a20 2074 6167 733a 0a20 202d  auto.  tags:.  -
│ │ │ -001c5660: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ -001c5670: 360a 2020 2d20 4e49 5354 2d38 3030 2d35  6.  - NIST-800-5
│ │ │ -001c5680: 332d 4143 2d36 2831 290a 2020 2d20 4e49  3-AC-6(1).  - NI
│ │ │ -001c5690: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ -001c56a0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -001c56b0: 332d 434d 2d37 2861 290a 2020 2d20 4e49  3-CM-7(a).  - NI
│ │ │ -001c56c0: 5354 2d38 3030 2d35 332d 434d 2d37 2862  ST-800-53-CM-7(b
│ │ │ -001c56d0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -001c56e0: 332d 4d50 2d37 0a20 202d 2063 6f6e 6669  3-MP-7.  - confi
│ │ │ -001c56f0: 6775 7265 5f73 7472 6174 6567 790a 2020  gure_strategy.  
│ │ │ -001c5700: 2d20 6869 6768 5f64 6973 7275 7074 696f  - high_disruptio
│ │ │ -001c5710: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65  n.  - low_comple
│ │ │ -001c5720: 7869 7479 0a20 202d 206d 6564 6975 6d5f  xity.  - medium_
│ │ │ -001c5730: 7365 7665 7269 7479 0a20 202d 206d 6f75  severity.  - mou
│ │ │ -001c5740: 6e74 5f6f 7074 696f 6e5f 746d 705f 6e6f  nt_option_tmp_no
│ │ │ -001c5750: 7375 6964 0a20 202d 206e 6f5f 7265 626f  suid.  - no_rebo
│ │ │ -001c5760: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d  ot_needed..- nam
│ │ │ -001c5770: 653a 2027 4164 6420 6e6f 7375 6964 204f  e: 'Add nosuid O
│ │ │ -001c5780: 7074 696f 6e20 746f 202f 746d 703a 2043  ption to /tmp: C
│ │ │ -001c5790: 6865 636b 2069 6e66 6f72 6d61 7469 6f6e  heck information
│ │ │ -001c57a0: 2061 7373 6f63 6961 7465 6420 746f 206d   associated to m
│ │ │ -001c57b0: 6f75 6e74 706f 696e 7427 0a20 2061 6e73  ountpoint'.  ans
│ │ │ -001c57c0: 6962 6c65 2e62 7569 6c74 696e 2e63 6f6d  ible.builtin.com
│ │ │ -001c57d0: 6d61 6e64 3a20 6669 6e64 6d6e 7420 2d2d  mand: findmnt --
│ │ │ -001c57e0: 6673 7461 6220 272f 746d 7027 0a20 2072  fstab '/tmp'.  r
│ │ │ -001c57f0: 6567 6973 7465 723a 2064 6576 6963 655f  egister: device_
│ │ │ -001c5800: 6e61 6d65 0a20 2066 6169 6c65 645f 7768  name.  failed_wh
│ │ │ -001c5810: 656e 3a20 6465 7669 6365 5f6e 616d 652e  en: device_name.
│ │ │ -001c5820: 7263 2026 6774 3b20 310a 2020 6368 616e  rc > 1.  chan
│ │ │ -001c5830: 6765 645f 7768 656e 3a20 6661 6c73 650a  ged_when: false.
│ │ │ -001c5840: 2020 6368 6563 6b5f 6d6f 6465 3a20 6661    check_mode: fa
│ │ │ -001c5850: 6c73 650a 2020 7768 656e 3a0a 2020 2d20  lse.  when:.  - 
│ │ │ -001c5860: 2820 6e6f 7420 2820 226b 6572 6e65 6c22  ( not ( "kernel"
│ │ │ -001c5870: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001c5880: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ -001c5890: 626f 6f74 6322 2069 6e20 616e 7369 626c  bootc" in ansibl
│ │ │ -001c58a0: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001c58b0: 0a20 2020 2061 6e64 206e 6f74 2022 6f70  .    and not "op
│ │ │ -001c58c0: 656e 7368 6966 742d 6b75 6265 6c65 7422  enshift-kubelet"
│ │ │ -001c58d0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001c58e0: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ -001c58f0: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ -001c5900: 6c65 5f70 726f 635f 636d 646c 696e 650a  le_proc_cmdline.
│ │ │ -001c5910: 2020 2020 2920 616e 6420 6e6f 7420 2820      ) and not ( 
│ │ │ -001c5920: 616e 7369 626c 655f 7669 7274 7561 6c69  ansible_virtuali
│ │ │ -001c5930: 7a61 7469 6f6e 5f74 7970 6520 696e 205b  zation_type in [
│ │ │ -001c5940: 2264 6f63 6b65 7222 2c20 226c 7863 222c  "docker", "lxc",
│ │ │ -001c5950: 2022 6f70 656e 767a 222c 2022 706f 646d   "openvz", "podm
│ │ │ -001c5960: 616e 222c 0a20 2020 2022 636f 6e74 6169  an",.    "contai
│ │ │ -001c5970: 6e65 7222 5d20 2920 290a 2020 2d20 2722  ner"] ) ).  - '"
│ │ │ -001c5980: 2f74 6d70 2220 696e 2061 6e73 6962 6c65  /tmp" in ansible
│ │ │ -001c5990: 5f6d 6f75 6e74 7320 7c20 6d61 7028 6174  _mounts | map(at
│ │ │ -001c59a0: 7472 6962 7574 653d 226d 6f75 6e74 2229  tribute="mount")
│ │ │ -001c59b0: 207c 206c 6973 7427 0a20 2074 6167 733a   | list'.  tags:
│ │ │ -001c59c0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001c59d0: 2d41 432d 360a 2020 2d20 4e49 5354 2d38  -AC-6.  - NIST-8
│ │ │ -001c59e0: 3030 2d35 332d 4143 2d36 2831 290a 2020  00-53-AC-6(1).  
│ │ │ -001c59f0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -001c5a00: 2d36 2861 290a 2020 2d20 4e49 5354 2d38  -6(a).  - NIST-8
│ │ │ -001c5a10: 3030 2d35 332d 434d 2d37 2861 290a 2020  00-53-CM-7(a).  
│ │ │ -001c5a20: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -001c5a30: 2d37 2862 290a 2020 2d20 4e49 5354 2d38  -7(b).  - NIST-8
│ │ │ -001c5a40: 3030 2d35 332d 4d50 2d37 0a20 202d 2063  00-53-MP-7.  - c
│ │ │ -001c5a50: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ -001c5a60: 790a 2020 2d20 6869 6768 5f64 6973 7275  y.  - high_disru
│ │ │ -001c5a70: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f  ption.  - low_co
│ │ │ -001c5a80: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ -001c5a90: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ -001c5aa0: 206d 6f75 6e74 5f6f 7074 696f 6e5f 746d   mount_option_tm
│ │ │ -001c5ab0: 705f 6e6f 7375 6964 0a20 202d 206e 6f5f  p_nosuid.  - no_
│ │ │ -001c5ac0: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ -001c5ad0: 206e 616d 653a 2027 4164 6420 6e6f 7375   name: 'Add nosu
│ │ │ -001c5ae0: 6964 204f 7074 696f 6e20 746f 202f 746d  id Option to /tm
│ │ │ -001c5af0: 703a 2043 7265 6174 6520 6d6f 756e 745f  p: Create mount_
│ │ │ -001c5b00: 696e 666f 2064 6963 7469 6f6e 6172 7920  info dictionary 
│ │ │ -001c5b10: 7661 7269 6162 6c65 270a 2020 7365 745f  variable'.  set_
│ │ │ -001c5b20: 6661 6374 3a0a 2020 2020 6d6f 756e 745f  fact:.    mount_
│ │ │ -001c5b30: 696e 666f 3a20 277b 7b20 6d6f 756e 745f  info: '{{ mount_
│ │ │ -001c5b40: 696e 666f 7c64 6566 6175 6c74 287b 7d29  info|default({})
│ │ │ -001c5b50: 7c63 6f6d 6269 6e65 287b 6974 656d 2e30  |combine({item.0
│ │ │ -001c5b60: 3a20 6974 656d 2e31 7d29 207d 7d27 0a20  : item.1}) }}'. 
│ │ │ -001c5b70: 2077 6974 685f 746f 6765 7468 6572 3a0a   with_together:.
│ │ │ -001c5b80: 2020 2d20 277b 7b20 6465 7669 6365 5f6e    - '{{ device_n
│ │ │ -001c5b90: 616d 652e 7374 646f 7574 5f6c 696e 6573  ame.stdout_lines
│ │ │ -001c5ba0: 5b30 5d2e 7370 6c69 7428 2920 7c20 6d61  [0].split() | ma
│ │ │ -001c5bb0: 7028 2727 6c6f 7765 7227 2729 207c 206c  p(''lower'') | l
│ │ │ -001c5bc0: 6973 7420 7d7d 270a 2020 2d20 277b 7b20  ist }}'.  - '{{ 
│ │ │ -001c5bd0: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ -001c5be0: 7574 5f6c 696e 6573 5b31 5d2e 7370 6c69  ut_lines[1].spli
│ │ │ -001c5bf0: 7428 2920 7c20 6c69 7374 207d 7d27 0a20  t() | list }}'. 
│ │ │ -001c5c00: 2077 6865 6e3a 0a20 202d 2028 206e 6f74   when:.  - ( not
│ │ │ -001c5c10: 2028 2022 6b65 726e 656c 2220 696e 2061   ( "kernel" in a
│ │ │ -001c5c20: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001c5c30: 6b61 6765 7320 616e 6420 2262 6f6f 7463  kages and "bootc
│ │ │ -001c5c40: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001c5c50: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ -001c5c60: 616e 6420 6e6f 7420 226f 7065 6e73 6869  and not "openshi
│ │ │ -001c5c70: 6674 2d6b 7562 656c 6574 2220 696e 2061  ft-kubelet" in a
│ │ │ -001c5c80: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001c5c90: 6b61 6765 7320 616e 6420 226f 7374 7265  kages and "ostre
│ │ │ -001c5ca0: 6522 2069 6e20 616e 7369 626c 655f 7072  e" in ansible_pr
│ │ │ -001c5cb0: 6f63 5f63 6d64 6c69 6e65 0a20 2020 2029  oc_cmdline.    )
│ │ │ -001c5cc0: 2061 6e64 206e 6f74 2028 2061 6e73 6962   and not ( ansib
│ │ │ -001c5cd0: 6c65 5f76 6972 7475 616c 697a 6174 696f  le_virtualizatio
│ │ │ -001c5ce0: 6e5f 7479 7065 2069 6e20 5b22 646f 636b  n_type in ["dock
│ │ │ -001c5cf0: 6572 222c 2022 6c78 6322 2c20 226f 7065  er", "lxc", "ope
│ │ │ -001c5d00: 6e76 7a22 2c20 2270 6f64 6d61 6e22 2c0a  nvz", "podman",.
│ │ │ -001c5d10: 2020 2020 2263 6f6e 7461 696e 6572 225d      "container"]
│ │ │ -001c5d20: 2029 2029 0a20 202d 2027 222f 746d 7022   ) ).  - '"/tmp"
│ │ │ -001c5d30: 2069 6e20 616e 7369 626c 655f 6d6f 756e   in ansible_moun
│ │ │ -001c5d40: 7473 207c 206d 6170 2861 7474 7269 6275  ts | map(attribu
│ │ │ -001c5d50: 7465 3d22 6d6f 756e 7422 2920 7c20 6c69  te="mount") | li
│ │ │ -001c5d60: 7374 270a 2020 2d20 6465 7669 6365 5f6e  st'.  - device_n
│ │ │ -001c5d70: 616d 652e 7374 646f 7574 2069 7320 6465  ame.stdout is de
│ │ │ -001c5d80: 6669 6e65 6420 616e 6420 6465 7669 6365  fined and device
│ │ │ -001c5d90: 5f6e 616d 652e 7374 646f 7574 5f6c 696e  _name.stdout_lin
│ │ │ -001c5da0: 6573 2069 7320 6465 6669 6e65 640a 2020  es is defined.  
│ │ │ -001c5db0: 2d20 2864 6576 6963 655f 6e61 6d65 2e73  - (device_name.s
│ │ │ -001c5dc0: 7464 6f75 7420 7c20 6c65 6e67 7468 2026  tdout | length &
│ │ │ -001c5dd0: 6774 3b20 3029 0a20 2074 6167 733a 0a20  gt; 0).  tags:. 
│ │ │ -001c5de0: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ -001c5df0: 432d 360a 2020 2d20 4e49 5354 2d38 3030  C-6.  - NIST-800
│ │ │ -001c5e00: 2d35 332d 4143 2d36 2831 290a 2020 2d20  -53-AC-6(1).  - 
│ │ │ -001c5e10: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ -001c5e20: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ -001c5e30: 2d35 332d 434d 2d37 2861 290a 2020 2d20  -53-CM-7(a).  - 
│ │ │ -001c5e40: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ -001c5e50: 2862 290a 2020 2d20 4e49 5354 2d38 3030  (b).  - NIST-800
│ │ │ -001c5e60: 2d35 332d 4d50 2d37 0a20 202d 2063 6f6e  -53-MP-7.  - con
│ │ │ -001c5e70: 6669 6775 7265 5f73 7472 6174 6567 790a  figure_strategy.
│ │ │ -001c5e80: 2020 2d20 6869 6768 5f64 6973 7275 7074    - high_disrupt
│ │ │ -001c5e90: 696f 6e0a 2020 2d20 6c6f 775f 636f 6d70  ion.  - low_comp
│ │ │ -001c5ea0: 6c65 7869 7479 0a20 202d 206d 6564 6975  lexity.  - mediu
│ │ │ -001c5eb0: 6d5f 7365 7665 7269 7479 0a20 202d 206d  m_severity.  - m
│ │ │ -001c5ec0: 6f75 6e74 5f6f 7074 696f 6e5f 746d 705f  ount_option_tmp_
│ │ │ -001c5ed0: 6e6f 7375 6964 0a20 202d 206e 6f5f 7265  nosuid.  - no_re
│ │ │ -001c5ee0: 626f 6f74 5f6e 6565 6465 640a 0a2d 206e  boot_needed..- n
│ │ │ -001c5ef0: 616d 653a 2027 4164 6420 6e6f 7375 6964  ame: 'Add nosuid
│ │ │ -001c5f00: 204f 7074 696f 6e20 746f 202f 746d 703a   Option to /tmp:
│ │ │ -001c5f10: 2049 6620 2f74 6d70 206e 6f74 206d 6f75   If /tmp not mou
│ │ │ -001c5f20: 6e74 6564 2c20 6372 6166 7420 6d6f 756e  nted, craft moun
│ │ │ -001c5f30: 745f 696e 666f 206d 616e 7561 6c6c 7927  t_info manually'
│ │ │ -001c5f40: 0a20 2073 6574 5f66 6163 743a 0a20 2020  .  set_fact:.   
│ │ │ -001c5f50: 206d 6f75 6e74 5f69 6e66 6f3a 2027 7b7b   mount_info: '{{
│ │ │ -001c5f60: 206d 6f75 6e74 5f69 6e66 6f7c 6465 6661   mount_info|defa
│ │ │ -001c5f70: 756c 7428 7b7d 297c 636f 6d62 696e 6528  ult({})|combine(
│ │ │ -001c5f80: 7b69 7465 6d2e 303a 2069 7465 6d2e 317d  {item.0: item.1}
│ │ │ -001c5f90: 2920 7d7d 270a 2020 7769 7468 5f74 6f67  ) }}'.  with_tog
│ │ │ -001c5fa0: 6574 6865 723a 0a20 202d 202d 2074 6172  ether:.  - - tar
│ │ │ -001c5fb0: 6765 740a 2020 2020 2d20 736f 7572 6365  get.    - source
│ │ │ -001c5fc0: 0a20 2020 202d 2066 7374 7970 650a 2020  .    - fstype.  
│ │ │ -001c5fd0: 2020 2d20 6f70 7469 6f6e 730a 2020 2d20    - options.  - 
│ │ │ -001c5fe0: 2d20 2f74 6d70 0a20 2020 202d 2027 270a  - /tmp.    - ''.
│ │ │ -001c5ff0: 2020 2020 2d20 2727 0a20 2020 202d 2064      - ''.    - d
│ │ │ -001c6000: 6566 6175 6c74 730a 2020 7768 656e 3a0a  efaults.  when:.
│ │ │ -001c6010: 2020 2d20 2820 6e6f 7420 2820 226b 6572    - ( not ( "ker
│ │ │ -001c6020: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ -001c6030: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ -001c6040: 6e64 2022 626f 6f74 6322 2069 6e20 616e  nd "bootc" in an
│ │ │ -001c6050: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001c6060: 6167 6573 0a20 2020 2061 6e64 206e 6f74  ages.    and not
│ │ │ -001c6070: 2022 6f70 656e 7368 6966 742d 6b75 6265   "openshift-kube
│ │ │ -001c6080: 6c65 7422 2069 6e20 616e 7369 626c 655f  let" in ansible_
│ │ │ -001c6090: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ -001c60a0: 6e64 2022 6f73 7472 6565 2220 696e 2061  nd "ostree" in a
│ │ │ -001c60b0: 6e73 6962 6c65 5f70 726f 635f 636d 646c  nsible_proc_cmdl
│ │ │ -001c60c0: 696e 650a 2020 2020 2920 616e 6420 6e6f  ine.    ) and no
│ │ │ -001c60d0: 7420 2820 616e 7369 626c 655f 7669 7274  t ( ansible_virt
│ │ │ -001c60e0: 7561 6c69 7a61 7469 6f6e 5f74 7970 6520  ualization_type 
│ │ │ -001c60f0: 696e 205b 2264 6f63 6b65 7222 2c20 226c  in ["docker", "l
│ │ │ -001c6100: 7863 222c 2022 6f70 656e 767a 222c 2022  xc", "openvz", "
│ │ │ -001c6110: 706f 646d 616e 222c 0a20 2020 2022 636f  podman",.    "co
│ │ │ -001c6120: 6e74 6169 6e65 7222 5d20 2920 290a 2020  ntainer"] ) ).  
│ │ │ -001c6130: 2d20 2722 2f74 6d70 2220 696e 2061 6e73  - '"/tmp" in ans
│ │ │ -001c6140: 6962 6c65 5f6d 6f75 6e74 7320 7c20 6d61  ible_mounts | ma
│ │ │ -001c6150: 7028 6174 7472 6962 7574 653d 226d 6f75  p(attribute="mou
│ │ │ -001c6160: 6e74 2229 207c 206c 6973 7427 0a20 202d  nt") | list'.  -
│ │ │ -001c6170: 2028 222d 2d66 7374 6162 2220 7c20 6c65   ("--fstab" | le
│ │ │ -001c6180: 6e67 7468 203d 3d20 3029 0a20 202d 2064  ngth == 0).  - d
│ │ │ -001c6190: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ -001c61a0: 7420 6973 2064 6566 696e 6564 2061 6e64  t is defined and
│ │ │ -001c61b0: 2064 6576 6963 655f 6e61 6d65 2e73 7464   device_name.std
│ │ │ -001c61c0: 6f75 745f 6c69 6e65 7320 6973 2064 6566  out_lines is def
│ │ │ -001c61d0: 696e 6564 0a20 202d 2028 6465 7669 6365  ined.  - (device
│ │ │ -001c61e0: 5f6e 616d 652e 7374 646f 7574 207c 206c  _name.stdout | l
│ │ │ -001c61f0: 656e 6774 6820 3d3d 2030 290a 2020 7461  ength == 0).  ta
│ │ │ -001c6200: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030  gs:.  - NIST-800
│ │ │ -001c6210: 2d35 332d 4143 2d36 0a20 202d 204e 4953  -53-AC-6.  - NIS
│ │ │ -001c6220: 542d 3830 302d 3533 2d41 432d 3628 3129  T-800-53-AC-6(1)
│ │ │ -001c6230: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001c6240: 2d43 4d2d 3628 6129 0a20 202d 204e 4953  -CM-6(a).  - NIS
│ │ │ -001c6250: 542d 3830 302d 3533 2d43 4d2d 3728 6129  T-800-53-CM-7(a)
│ │ │ -001c6260: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001c6270: 2d43 4d2d 3728 6229 0a20 202d 204e 4953  -CM-7(b).  - NIS
│ │ │ -001c6280: 542d 3830 302d 3533 2d4d 502d 370a 2020  T-800-53-MP-7.  
│ │ │ -001c6290: 2d20 636f 6e66 6967 7572 655f 7374 7261  - configure_stra
│ │ │ -001c62a0: 7465 6779 0a20 202d 2068 6967 685f 6469  tegy.  - high_di
│ │ │ -001c62b0: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ -001c62c0: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ -001c62d0: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ -001c62e0: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e    - mount_option
│ │ │ -001c62f0: 5f74 6d70 5f6e 6f73 7569 640a 2020 2d20  _tmp_nosuid.  - 
│ │ │ -001c6300: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ -001c6310: 0a0a 2d20 6e61 6d65 3a20 2741 6464 206e  ..- name: 'Add n
│ │ │ -001c6320: 6f73 7569 6420 4f70 7469 6f6e 2074 6f20  osuid Option to 
│ │ │ -001c6330: 2f74 6d70 3a20 4d61 6b65 2073 7572 6520  /tmp: Make sure 
│ │ │ -001c6340: 6e6f 7375 6964 206f 7074 696f 6e20 6973  nosuid option is
│ │ │ -001c6350: 2070 6172 7420 6f66 2074 6865 2074 6f20   part of the to 
│ │ │ -001c6360: 2f74 6d70 0a20 2020 206f 7074 696f 6e73  /tmp.    options
│ │ │ -001c6370: 270a 2020 7365 745f 6661 6374 3a0a 2020  '.  set_fact:.  
│ │ │ -001c6380: 2020 6d6f 756e 745f 696e 666f 3a20 277b    mount_info: '{
│ │ │ -001c6390: 7b20 6d6f 756e 745f 696e 666f 207c 2063  { mount_info | c
│ │ │ -001c63a0: 6f6d 6269 6e65 2820 7b27 276f 7074 696f  ombine( {''optio
│ │ │ -001c63b0: 6e73 2727 3a27 2727 277e 286d 6f75 6e74  ns'':''''~(mount
│ │ │ -001c63c0: 5f69 6e66 6f2e 6f70 7469 6f6e 7320 7c0a  _info.options |.
│ │ │ -001c63d0: 2020 2020 2020 6465 6661 756c 7428 2727        default(''
│ │ │ -001c63e0: 2727 2929 7e28 2727 2c27 2720 6966 2028  ''))~('','' if (
│ │ │ -001c63f0: 6d6f 756e 745f 696e 666f 2e6f 7074 696f  mount_info.optio
│ │ │ -001c6400: 6e73 207c 2064 6566 6175 6c74 2827 2727  ns | default('''
│ │ │ -001c6410: 2729 2920 656c 7365 2027 2727 2729 7e27  ')) else '''')~'
│ │ │ -001c6420: 276e 6f73 7569 6427 270a 2020 2020 2020  'nosuid''.      
│ │ │ -001c6430: 7d29 207d 7d27 0a20 2077 6865 6e3a 0a20  }) }}'.  when:. 
│ │ │ -001c6440: 202d 2028 206e 6f74 2028 2022 6b65 726e   - ( not ( "kern
│ │ │ -001c6450: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ -001c6460: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ -001c6470: 6420 2262 6f6f 7463 2220 696e 2061 6e73  d "bootc" in ans
│ │ │ -001c6480: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001c6490: 6765 730a 2020 2020 616e 6420 6e6f 7420  ges.    and not 
│ │ │ -001c64a0: 226f 7065 6e73 6869 6674 2d6b 7562 656c  "openshift-kubel
│ │ │ -001c64b0: 6574 2220 696e 2061 6e73 6962 6c65 5f66  et" in ansible_f
│ │ │ -001c64c0: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ -001c64d0: 6420 226f 7374 7265 6522 2069 6e20 616e  d "ostree" in an
│ │ │ -001c64e0: 7369 626c 655f 7072 6f63 5f63 6d64 6c69  sible_proc_cmdli
│ │ │ -001c64f0: 6e65 0a20 2020 2029 2061 6e64 206e 6f74  ne.    ) and not
│ │ │ -001c6500: 2028 2061 6e73 6962 6c65 5f76 6972 7475   ( ansible_virtu
│ │ │ -001c6510: 616c 697a 6174 696f 6e5f 7479 7065 2069  alization_type i
│ │ │ -001c6520: 6e20 5b22 646f 636b 6572 222c 2022 6c78  n ["docker", "lx
│ │ │ -001c6530: 6322 2c20 226f 7065 6e76 7a22 2c20 2270  c", "openvz", "p
│ │ │ -001c6540: 6f64 6d61 6e22 2c0a 2020 2020 2263 6f6e  odman",.    "con
│ │ │ -001c6550: 7461 696e 6572 225d 2029 2029 0a20 202d  tainer"] ) ).  -
│ │ │ -001c6560: 2027 222f 746d 7022 2069 6e20 616e 7369   '"/tmp" in ansi
│ │ │ -001c6570: 626c 655f 6d6f 756e 7473 207c 206d 6170  ble_mounts | map
│ │ │ -001c6580: 2861 7474 7269 6275 7465 3d22 6d6f 756e  (attribute="moun
│ │ │ -001c6590: 7422 2920 7c20 6c69 7374 270a 2020 2d20  t") | list'.  - 
│ │ │ -001c65a0: 6d6f 756e 745f 696e 666f 2069 7320 6465  mount_info is de
│ │ │ -001c65b0: 6669 6e65 6420 616e 6420 226e 6f73 7569  fined and "nosui
│ │ │ -001c65c0: 6422 206e 6f74 2069 6e20 286d 6f75 6e74  d" not in (mount
│ │ │ -001c65d0: 5f69 6e66 6f2e 6f70 7469 6f6e 7320 7c20  _info.options | 
│ │ │ -001c65e0: 6465 6661 756c 7428 2727 2929 0a20 2074  default('')).  t
│ │ │ -001c65f0: 6167 733a 0a20 202d 204e 4953 542d 3830  ags:.  - NIST-80
│ │ │ -001c6600: 302d 3533 2d41 432d 360a 2020 2d20 4e49  0-53-AC-6.  - NI
│ │ │ -001c6610: 5354 2d38 3030 2d35 332d 4143 2d36 2831  ST-800-53-AC-6(1
│ │ │ -001c6620: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -001c6630: 332d 434d 2d36 2861 290a 2020 2d20 4e49  3-CM-6(a).  - NI
│ │ │ -001c6640: 5354 2d38 3030 2d35 332d 434d 2d37 2861  ST-800-53-CM-7(a
│ │ │ -001c6650: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -001c6660: 332d 434d 2d37 2862 290a 2020 2d20 4e49  3-CM-7(b).  - NI
│ │ │ -001c6670: 5354 2d38 3030 2d35 332d 4d50 2d37 0a20  ST-800-53-MP-7. 
│ │ │ -001c6680: 202d 2063 6f6e 6669 6775 7265 5f73 7472   - configure_str
│ │ │ -001c6690: 6174 6567 790a 2020 2d20 6869 6768 5f64  ategy.  - high_d
│ │ │ -001c66a0: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ -001c66b0: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ -001c66c0: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ -001c66d0: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f  .  - mount_optio
│ │ │ -001c66e0: 6e5f 746d 705f 6e6f 7375 6964 0a20 202d  n_tmp_nosuid.  -
│ │ │ -001c66f0: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ -001c6700: 640a 0a2d 206e 616d 653a 2027 4164 6420  d..- name: 'Add 
│ │ │ -001c6710: 6e6f 7375 6964 204f 7074 696f 6e20 746f  nosuid Option to
│ │ │ -001c6720: 202f 746d 703a 2045 6e73 7572 6520 2f74   /tmp: Ensure /t
│ │ │ -001c6730: 6d70 2069 7320 6d6f 756e 7465 6420 7769  mp is mounted wi
│ │ │ -001c6740: 7468 206e 6f73 7569 6420 6f70 7469 6f6e  th nosuid option
│ │ │ -001c6750: 270a 2020 616e 7369 626c 652e 706f 7369  '.  ansible.posi
│ │ │ -001c6760: 782e 6d6f 756e 743a 0a20 2020 2070 6174  x.mount:.    pat
│ │ │ -001c6770: 683a 202f 746d 700a 2020 2020 7372 633a  h: /tmp.    src:
│ │ │ -001c6780: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f2e   '{{ mount_info.
│ │ │ -001c6790: 736f 7572 6365 207c 2064 6566 6175 6c74  source | default
│ │ │ -001c67a0: 2827 2727 2729 207d 7d27 0a20 2020 206f  ('''') }}'.    o
│ │ │ -001c67b0: 7074 733a 2027 7b7b 206d 6f75 6e74 5f69  pts: '{{ mount_i
│ │ │ -001c67c0: 6e66 6f2e 6f70 7469 6f6e 7320 7c20 6465  nfo.options | de
│ │ │ -001c67d0: 6661 756c 7428 2727 2727 2920 7d7d 270a  fault('''') }}'.
│ │ │ -001c67e0: 2020 2020 7374 6174 653a 206d 6f75 6e74      state: mount
│ │ │ -001c67f0: 6564 0a20 2020 2066 7374 7970 653a 2027  ed.    fstype: '
│ │ │ -001c6800: 7b7b 206d 6f75 6e74 5f69 6e66 6f2e 6673  {{ mount_info.fs
│ │ │ -001c6810: 7479 7065 207c 2064 6566 6175 6c74 2827  type | default('
│ │ │ -001c6820: 2727 2729 207d 7d27 0a20 2072 6567 6973  ''') }}'.  regis
│ │ │ -001c6830: 7465 723a 206d 6f75 6e74 5f72 6573 756c  ter: mount_resul
│ │ │ -001c6840: 740a 2020 6661 696c 6564 5f77 6865 6e3a  t.  failed_when:
│ │ │ -001c6850: 0a20 202d 206d 6f75 6e74 5f72 6573 756c  .  - mount_resul
│ │ │ -001c6860: 7420 6973 2066 6169 6c65 640a 2020 2d20  t is failed.  - 
│ │ │ -001c6870: 2727 2774 6172 6765 7420 6973 2062 7573  '''target is bus
│ │ │ -001c6880: 7927 2720 6e6f 7420 696e 2028 6d6f 756e  y'' not in (moun
│ │ │ -001c6890: 745f 7265 7375 6c74 2e6d 7367 207c 2064  t_result.msg | d
│ │ │ -001c68a0: 6566 6175 6c74 2827 2727 2729 2927 0a20  efault(''''))'. 
│ │ │ -001c68b0: 202d 2027 2727 616c 7265 6164 7920 6d6f   - '''already mo
│ │ │ -001c68c0: 756e 7465 6427 2720 6e6f 7420 696e 2028  unted'' not in (
│ │ │ -001c68d0: 6d6f 756e 745f 7265 7375 6c74 2e6d 7367  mount_result.msg
│ │ │ -001c68e0: 207c 2064 6566 6175 6c74 2827 2727 2729   | default('''')
│ │ │ -001c68f0: 2927 0a20 2077 6865 6e3a 0a20 202d 2028  )'.  when:.  - (
│ │ │ -001c6900: 206e 6f74 2028 2022 6b65 726e 656c 2220   not ( "kernel" 
│ │ │ -001c6910: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001c6920: 2e70 6163 6b61 6765 7320 616e 6420 2262  .packages and "b
│ │ │ -001c6930: 6f6f 7463 2220 696e 2061 6e73 6962 6c65  ootc" in ansible
│ │ │ -001c6940: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ -001c6950: 2020 2020 616e 6420 6e6f 7420 226f 7065      and not "ope
│ │ │ -001c6960: 6e73 6869 6674 2d6b 7562 656c 6574 2220  nshift-kubelet" 
│ │ │ -001c6970: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001c6980: 2e70 6163 6b61 6765 7320 616e 6420 226f  .packages and "o
│ │ │ -001c6990: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ -001c69a0: 655f 7072 6f63 5f63 6d64 6c69 6e65 0a20  e_proc_cmdline. 
│ │ │ -001c69b0: 2020 2029 2061 6e64 206e 6f74 2028 2061     ) and not ( a
│ │ │ -001c69c0: 6e73 6962 6c65 5f76 6972 7475 616c 697a  nsible_virtualiz
│ │ │ -001c69d0: 6174 696f 6e5f 7479 7065 2069 6e20 5b22  ation_type in ["
│ │ │ -001c69e0: 646f 636b 6572 222c 2022 6c78 6322 2c20  docker", "lxc", 
│ │ │ -001c69f0: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61  "openvz", "podma
│ │ │ -001c6a00: 6e22 2c0a 2020 2020 2263 6f6e 7461 696e  n",.    "contain
│ │ │ -001c6a10: 6572 225d 2029 2029 0a20 202d 2027 222f  er"] ) ).  - '"/
│ │ │ -001c6a20: 746d 7022 2069 6e20 616e 7369 626c 655f  tmp" in ansible_
│ │ │ -001c6a30: 6d6f 756e 7473 207c 206d 6170 2861 7474  mounts | map(att
│ │ │ -001c6a40: 7269 6275 7465 3d22 6d6f 756e 7422 2920  ribute="mount") 
│ │ │ -001c6a50: 7c20 6c69 7374 270a 2020 2d20 6d6f 756e  | list'.  - moun
│ │ │ -001c6a60: 745f 696e 666f 2069 7320 6465 6669 6e65  t_info is define
│ │ │ -001c6a70: 640a 2020 2d20 2864 6576 6963 655f 6e61  d.  - (device_na
│ │ │ -001c6a80: 6d65 2e73 7464 6f75 7420 6973 2064 6566  me.stdout is def
│ │ │ -001c6a90: 696e 6564 2061 6e64 2028 6465 7669 6365  ined and (device
│ │ │ -001c6aa0: 5f6e 616d 652e 7374 646f 7574 207c 206c  _name.stdout | l
│ │ │ -001c6ab0: 656e 6774 6820 2667 743b 2030 2929 206f  ength > 0)) o
│ │ │ -001c6ac0: 7220 2822 2d2d 6673 7461 6222 0a20 2020  r ("--fstab".   
│ │ │ -001c6ad0: 207c 206c 656e 6774 6820 3d3d 2030 290a   | length == 0).
│ │ │ -001c6ae0: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ -001c6af0: 2d38 3030 2d35 332d 4143 2d36 0a20 202d  -800-53-AC-6.  -
│ │ │ -001c6b00: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ -001c6b10: 3628 3129 0a20 202d 204e 4953 542d 3830  6(1).  - NIST-80
│ │ │ -001c6b20: 302d 3533 2d43 4d2d 3628 6129 0a20 202d  0-53-CM-6(a).  -
│ │ │ -001c6b30: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -001c6b40: 3728 6129 0a20 202d 204e 4953 542d 3830  7(a).  - NIST-80
│ │ │ -001c6b50: 302d 3533 2d43 4d2d 3728 6229 0a20 202d  0-53-CM-7(b).  -
│ │ │ -001c6b60: 204e 4953 542d 3830 302d 3533 2d4d 502d   NIST-800-53-MP-
│ │ │ -001c6b70: 370a 2020 2d20 636f 6e66 6967 7572 655f  7.  - configure_
│ │ │ -001c6b80: 7374 7261 7465 6779 0a20 202d 2068 6967  strategy.  - hig
│ │ │ -001c6b90: 685f 6469 7372 7570 7469 6f6e 0a20 202d  h_disruption.  -
│ │ │ -001c6ba0: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ -001c6bb0: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ -001c6bc0: 6974 790a 2020 2d20 6d6f 756e 745f 6f70  ity.  - mount_op
│ │ │ -001c6bd0: 7469 6f6e 5f74 6d70 5f6e 6f73 7569 640a  tion_tmp_nosuid.
│ │ │ -001c6be0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ -001c6bf0: 6564 6564 0a3c 2f63 6f64 653e 3c2f 7072  eded.Remediation
│ │ │ -001c6cb0: 2053 6865 6c6c 2073 6372 6970 7420 e287   Shell script ..
│ │ │ -001c6cc0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c  .
C │ │ │ -001c5560: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -001c5590: 6f6e 3a3c 2f74 683e 3c74 643e 6869 6768 on:high │ │ │ -001c55a0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -001c55e0: 793a 3c2f 7468 3e3c 7464 3e63 6f6e 6669 y:confi │ │ │ -001c55f0: 6775 7265 3c2f 7464 3e3c 2f74 723e 3c2f gure
< │ │ │ -001c6d40: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -001c6d50: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
<
│ │ │ -001c6d70: 636f 6465 3e23 2052 656d 6564 6961 7469  code># Remediati
│ │ │ -001c6d80: 6f6e 2069 7320 6170 706c 6963 6162 6c65  on is applicable
│ │ │ -001c6d90: 206f 6e6c 7920 696e 2063 6572 7461 696e   only in certain
│ │ │ -001c6da0: 2070 6c61 7466 6f72 6d73 0a69 6620 2820   platforms.if ( 
│ │ │ -001c6db0: 2120 2820 7b20 7270 6d20 2d2d 7175 6965  ! ( { rpm --quie
│ │ │ -001c6dc0: 7420 2d71 206b 6572 6e65 6c20 3b7d 2026  t -q kernel ;} &
│ │ │ -001c6dd0: 616d 703b 2661 6d70 3b20 7b20 7270 6d20  amp;& { rpm 
│ │ │ -001c6de0: 2d2d 7175 6965 7420 2d71 2062 6f6f 7463  --quiet -q bootc
│ │ │ -001c6df0: 203b 7d20 2661 6d70 3b26 616d 703b 207b   ;} && {
│ │ │ -001c6e00: 2021 2072 706d 202d 2d71 7569 6574 202d   ! rpm --quiet -
│ │ │ -001c6e10: 7120 6f70 656e 7368 6966 742d 6b75 6265  q openshift-kube
│ │ │ -001c6e20: 6c65 7420 3b7d 2026 616d 703b 2661 6d70  let ;} &&
│ │ │ -001c6e30: 3b20 285b 202d 6620 2f72 756e 2f6f 7374  ; ([ -f /run/ost
│ │ │ -001c6e40: 7265 652d 626f 6f74 6564 205d 207c 7c20  ree-booted ] || 
│ │ │ -001c6e50: 5b20 2d4c 202f 6f73 7472 6565 205d 2920  [ -L /ostree ]) 
│ │ │ -001c6e60: 2920 2661 6d70 3b26 616d 703b 2021 2028  ) && ! (
│ │ │ -001c6e70: 205b 202d 6620 2f2e 646f 636b 6572 656e   [ -f /.dockeren
│ │ │ -001c6e80: 7620 5d20 7c7c 205b 202d 6620 2f72 756e  v ] || [ -f /run
│ │ │ -001c6e90: 2f2e 636f 6e74 6169 6e65 7265 6e76 205d  /.containerenv ]
│ │ │ -001c6ea0: 2029 2029 2026 616d 703b 2661 6d70 3b20   ) ) && 
│ │ │ -001c6eb0: 7b20 2820 6669 6e64 6d6e 7420 2d2d 6b65  { ( findmnt --ke
│ │ │ -001c6ec0: 726e 656c 2022 2f74 6d70 2220 2667 743b  rnel "/tmp" >
│ │ │ -001c6ed0: 202f 6465 762f 6e75 6c6c 207c 7c20 6669   /dev/null || fi
│ │ │ -001c6ee0: 6e64 6d6e 7420 2d2d 6673 7461 6220 222f  ndmnt --fstab "/
│ │ │ -001c6ef0: 746d 7022 2026 6774 3b20 2f64 6576 2f6e  tmp" > /dev/n
│ │ │ -001c6f00: 756c 6c20 293b 207d 3b20 7468 656e 0a0a  ull ); }; then..
│ │ │ -001c6f10: 6675 6e63 7469 6f6e 2070 6572 666f 726d  function perform
│ │ │ -001c6f20: 5f72 656d 6564 6961 7469 6f6e 207b 0a0a  _remediation {..
│ │ │ -001c6f30: 2020 2020 0a20 2020 2020 2020 2023 2074      .        # t
│ │ │ -001c6f40: 6865 206d 6f75 6e74 2070 6f69 6e74 202f  he mount point /
│ │ │ -001c6f50: 746d 7020 6861 7320 746f 2062 6520 6465  tmp has to be de
│ │ │ -001c6f60: 6669 6e65 6420 696e 202f 6574 632f 6673  fined in /etc/fs
│ │ │ -001c6f70: 7461 620a 2020 2020 2020 2020 2320 6265  tab.        # be
│ │ │ -001c6f80: 666f 7265 2074 6869 7320 7265 6d65 6469  fore this remedi
│ │ │ -001c6f90: 6174 696f 6e20 6361 6e20 6265 2065 7865  ation can be exe
│ │ │ -001c6fa0: 6375 7465 642e 2049 6e20 6361 7365 2069  cuted. In case i
│ │ │ -001c6fb0: 7420 6973 206e 6f74 2064 6566 696e 6564  t is not defined
│ │ │ -001c6fc0: 2c20 7468 650a 2020 2020 2020 2020 2320  , the.        # 
│ │ │ -001c6fd0: 7265 6d65 6469 6174 696f 6e20 6162 6f72  remediation abor
│ │ │ -001c6fe0: 7473 2061 6e64 206e 6f20 6368 616e 6765  ts and no change
│ │ │ -001c6ff0: 7320 7265 6761 7264 696e 6720 7468 6520  s regarding the 
│ │ │ -001c7000: 6d6f 756e 7420 706f 696e 7420 6172 6520  mount point are 
│ │ │ -001c7010: 646f 6e65 2e0a 2020 2020 2020 2020 6d6f  done..        mo
│ │ │ -001c7020: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ -001c7030: 7265 6765 7870 3d22 2428 7072 696e 7466  regexp="$(printf
│ │ │ -001c7040: 2022 5e5b 5b3a 7370 6163 653a 5d5d 2a5b   "^[[:space:]]*[
│ │ │ -001c7050: 5e23 5d2e 2a5b 5b3a 7370 6163 653a 5d5d  ^#].*[[:space:]]
│ │ │ -001c7060: 2573 5b5b 3a73 7061 6365 3a5d 5d22 2022  %s[[:space:]]" "
│ │ │ -001c7070: 2f74 6d70 2229 220a 0a20 2020 2067 7265  /tmp")"..    gre
│ │ │ -001c7080: 7020 2224 6d6f 756e 745f 706f 696e 745f  p "$mount_point_
│ │ │ -001c7090: 6d61 7463 685f 7265 6765 7870 2220 2d71  match_regexp" -q
│ │ │ -001c70a0: 202f 6574 632f 6673 7461 6220 5c0a 2020   /etc/fstab \.  
│ │ │ -001c70b0: 2020 2020 2020 7c7c 207b 2065 6368 6f20        || { echo 
│ │ │ -001c70c0: 2254 6865 206d 6f75 6e74 2070 6f69 6e74  "The mount point
│ │ │ -001c70d0: 2027 2f74 6d70 2720 6973 206e 6f74 2065   '/tmp' is not e
│ │ │ -001c70e0: 7665 6e20 696e 202f 6574 632f 6673 7461  ven in /etc/fsta
│ │ │ -001c70f0: 622c 2073 6f20 7765 2063 616e 2774 2073  b, so we can't s
│ │ │ -001c7100: 6574 2075 7020 6d6f 756e 7420 6f70 7469  et up mount opti
│ │ │ -001c7110: 6f6e 7322 2026 6774 3b26 616d 703b 323b  ons" >&2;
│ │ │ -001c7120: 0a20 2020 2020 2020 2020 2020 2020 2020  .               
│ │ │ -001c7130: 2065 6368 6f20 224e 6f74 2072 656d 6564   echo "Not remed
│ │ │ -001c7140: 6961 7469 6e67 2c20 6265 6361 7573 6520  iating, because 
│ │ │ -001c7150: 7468 6572 6520 6973 206e 6f20 7265 636f  there is no reco
│ │ │ -001c7160: 7264 206f 6620 2f74 6d70 2069 6e20 2f65  rd of /tmp in /e
│ │ │ -001c7170: 7463 2f66 7374 6162 2220 2667 743b 2661  tc/fstab" >&a
│ │ │ -001c7180: 6d70 3b32 3b20 7265 7475 726e 2031 3b20  mp;2; return 1; 
│ │ │ -001c7190: 7d0a 2020 2020 0a0a 0a20 2020 206d 6f75  }.    ...    mou
│ │ │ -001c71a0: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ -001c71b0: 6567 6578 703d 2224 2870 7269 6e74 6620  egexp="$(printf 
│ │ │ -001c71c0: 225e 5b5b 3a73 7061 6365 3a5d 5d2a 5b5e  "^[[:space:]]*[^
│ │ │ -001c71d0: 235d 2e2a 5b5b 3a73 7061 6365 3a5d 5d25  #].*[[:space:]]%
│ │ │ -001c71e0: 735b 5b3a 7370 6163 653a 5d5d 2220 2f74  s[[:space:]]" /t
│ │ │ -001c71f0: 6d70 2922 0a0a 2020 2020 2320 4966 2074  mp)"..    # If t
│ │ │ -001c7200: 6865 206d 6f75 6e74 2070 6f69 6e74 2069  he mount point i
│ │ │ -001c7210: 7320 6e6f 7420 696e 202f 6574 632f 6673  s not in /etc/fs
│ │ │ -001c7220: 7461 622c 2067 6574 2070 7265 7669 6f75  tab, get previou
│ │ │ -001c7230: 7320 6d6f 756e 7420 6f70 7469 6f6e 7320  s mount options 
│ │ │ -001c7240: 6672 6f6d 202f 6574 632f 6d74 6162 0a20  from /etc/mtab. 
│ │ │ -001c7250: 2020 2069 6620 2120 6772 6570 202d 7120     if ! grep -q 
│ │ │ -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: 2f66 7374 6162 3b20 7468 656e 0a20 2020  /fstab; then.   
│ │ │ -001c7290: 2020 2020 2023 2072 756e 7469 6d65 206f       # runtime o
│ │ │ -001c72a0: 7074 7320 7769 7468 6f75 7420 736f 6d65  pts without some
│ │ │ -001c72b0: 2061 7574 6f6d 6174 6963 206b 6572 6e65   automatic kerne
│ │ │ -001c72c0: 6c2f 7573 6572 7370 6163 652d 6164 6465  l/userspace-adde
│ │ │ -001c72d0: 6420 6465 6661 756c 7473 0a20 2020 2020  d defaults.     
│ │ │ -001c72e0: 2020 2070 7265 7669 6f75 735f 6d6f 756e     previous_moun
│ │ │ -001c72f0: 745f 6f70 7473 3d24 2867 7265 7020 2224  t_opts=$(grep "$
│ │ │ -001c7300: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ -001c7310: 685f 7265 6765 7870 2220 2f65 7463 2f6d  h_regexp" /etc/m
│ │ │ -001c7320: 7461 6220 7c20 6865 6164 202d 3120 7c20  tab | head -1 | 
│ │ │ -001c7330: 2061 776b 2027 7b70 7269 6e74 2024 347d   awk '{print $4}
│ │ │ -001c7340: 2720 5c0a 2020 2020 2020 2020 2020 2020  ' \.            
│ │ │ -001c7350: 2020 2020 2020 2020 7c20 7365 6420 2d45          | sed -E
│ │ │ -001c7360: 2022 732f 2872 777c 6465 6661 756c 7473   "s/(rw|defaults
│ │ │ -001c7370: 7c73 6563 6c61 6265 6c7c 6e6f 7375 6964  |seclabel|nosuid
│ │ │ -001c7380: 2928 2c7c 2429 2f2f 673b 732f 2c24 2f2f  )(,|$)//g;s/,$//
│ │ │ -001c7390: 2229 0a20 2020 2020 2020 205b 2022 2470  ").        [ "$p
│ │ │ -001c73a0: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ -001c73b0: 7473 2220 5d20 2661 6d70 3b26 616d 703b  ts" ] &&
│ │ │ -001c73c0: 2070 7265 7669 6f75 735f 6d6f 756e 745f   previous_mount_
│ │ │ -001c73d0: 6f70 7473 2b3d 222c 220a 2020 2020 2020  opts+=",".      
│ │ │ -001c73e0: 2020 2320 496e 2069 736f 3936 3630 2066    # In iso9660 f
│ │ │ -001c73f0: 696c 6573 7973 7465 6d73 206d 7461 6220  ilesystems mtab 
│ │ │ -001c7400: 636f 756c 6420 6465 7363 7269 6265 2061  could describe a
│ │ │ -001c7410: 2022 626c 6f63 6b73 697a 6522 2076 616c   "blocksize" val
│ │ │ -001c7420: 7565 2c20 7468 6973 2073 686f 756c 6420  ue, this should 
│ │ │ -001c7430: 6265 2072 6566 6c65 6374 6564 2069 6e0a  be reflected in.
│ │ │ -001c7440: 2020 2020 2020 2020 2320 6673 7461 6220          # fstab 
│ │ │ -001c7450: 6173 2022 626c 6f63 6b22 2e20 2054 6865  as "block".  The
│ │ │ -001c7460: 206e 6578 7420 7661 7269 6162 6c65 2069   next variable i
│ │ │ -001c7470: 7320 746f 2073 6174 6973 6679 2073 6865  s to satisfy she
│ │ │ -001c7480: 6c6c 6368 6563 6b20 5343 3230 3530 2e0a  llcheck SC2050..
│ │ │ -001c7490: 2020 2020 2020 2020 6673 5f74 7970 653d          fs_type=
│ │ │ -001c74a0: 2222 0a20 2020 2020 2020 2069 6620 5b20  "".        if [ 
│ │ │ -001c74b0: 2022 2466 735f 7479 7065 2220 3d3d 2022   "$fs_type" == "
│ │ │ -001c74c0: 6973 6f39 3636 3022 205d 203b 2074 6865  iso9660" ] ; the
│ │ │ -001c74d0: 6e0a 2020 2020 2020 2020 2020 2020 7072  n.            pr
│ │ │ -001c74e0: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ -001c74f0: 733d 2428 7365 6420 2773 2f62 6c6f 636b  s=$(sed 's/block
│ │ │ -001c7500: 7369 7a65 3d2f 626c 6f63 6b3d 2f27 2026  size=/block=/' &
│ │ │ -001c7510: 6c74 3b26 6c74 3b26 6c74 3b20 2224 7072  lt;<< "$pr
│ │ │ -001c7520: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ -001c7530: 7322 290a 2020 2020 2020 2020 6669 0a20  s").        fi. 
│ │ │ -001c7540: 2020 2020 2020 2065 6368 6f20 2220 2f74         echo " /t
│ │ │ -001c7550: 6d70 2020 6465 6661 756c 7473 2c24 7b70  mp  defaults,${p
│ │ │ -001c7560: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ -001c7570: 7473 7d6e 6f73 7569 6420 3020 3022 2026  ts}nosuid 0 0" &
│ │ │ -001c7580: 6774 3b26 6774 3b20 2f65 7463 2f66 7374  gt;> /etc/fst
│ │ │ -001c7590: 6162 0a20 2020 2023 2049 6620 7468 6520  ab.    # If the 
│ │ │ -001c75a0: 6d6f 756e 745f 6f70 7420 6f70 7469 6f6e  mount_opt option
│ │ │ -001c75b0: 2069 7320 6e6f 7420 616c 7265 6164 7920   is not already 
│ │ │ -001c75c0: 696e 2074 6865 206d 6f75 6e74 2070 6f69  in the mount poi
│ │ │ -001c75d0: 6e74 2773 202f 6574 632f 6673 7461 6220  nt's /etc/fstab 
│ │ │ -001c75e0: 656e 7472 792c 2061 6464 2069 740a 2020  entry, add it.  
│ │ │ -001c75f0: 2020 656c 6966 2021 2067 7265 7020 2224    elif ! grep "$
│ │ │ -001c7600: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ -001c7610: 685f 7265 6765 7870 2220 2f65 7463 2f66  h_regexp" /etc/f
│ │ │ -001c7620: 7374 6162 207c 2067 7265 7020 2d71 2022  stab | grep -q "
│ │ │ -001c7630: 6e6f 7375 6964 223b 2074 6865 6e0a 2020  nosuid"; then.  
│ │ │ -001c7640: 2020 2020 2020 7072 6576 696f 7573 5f6d        previous_m
│ │ │ -001c7650: 6f75 6e74 5f6f 7074 733d 2428 6772 6570  ount_opts=$(grep
│ │ │ -001c7660: 2022 246d 6f75 6e74 5f70 6f69 6e74 5f6d   "$mount_point_m
│ │ │ -001c7670: 6174 6368 5f72 6567 6578 7022 202f 6574  atch_regexp" /et
│ │ │ -001c7680: 632f 6673 7461 6220 7c20 6177 6b20 277b  c/fstab | awk '{
│ │ │ -001c7690: 7072 696e 7420 2434 7d27 290a 2020 2020  print $4}').    
│ │ │ -001c76a0: 2020 2020 7365 6420 2d69 2022 737c 5c28      sed -i "s|\(
│ │ │ -001c76b0: 247b 6d6f 756e 745f 706f 696e 745f 6d61  ${mount_point_ma
│ │ │ -001c76c0: 7463 685f 7265 6765 7870 7d2e 2a24 7b70  tch_regexp}.*${p
│ │ │ -001c76d0: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ -001c76e0: 7473 7d5c 297c 5c31 2c6e 6f73 7569 647c  ts}\)|\1,nosuid|
│ │ │ -001c76f0: 2220 2f65 7463 2f66 7374 6162 0a20 2020  " /etc/fstab.   
│ │ │ -001c7700: 2066 690a 0a0a 2020 2020 6966 206d 6b64   fi...    if mkd
│ │ │ -001c7710: 6972 202d 7020 222f 746d 7022 3b20 7468  ir -p "/tmp"; th
│ │ │ -001c7720: 656e 0a20 2020 2020 2020 2069 6620 6d6f  en.        if mo
│ │ │ -001c7730: 756e 7470 6f69 6e74 202d 7120 222f 746d  untpoint -q "/tm
│ │ │ -001c7740: 7022 3b20 7468 656e 0a20 2020 2020 2020  p"; then.       
│ │ │ -001c7750: 2020 2020 206d 6f75 6e74 202d 6f20 7265       mount -o re
│ │ │ -001c7760: 6d6f 756e 7420 2d2d 7461 7267 6574 2022  mount --target "
│ │ │ -001c7770: 2f74 6d70 220a 2020 2020 2020 2020 6669  /tmp".        fi
│ │ │ -001c7780: 0a20 2020 2066 690a 7d0a 0a70 6572 666f  .    fi.}..perfo
│ │ │ -001c7790: 726d 5f72 656d 6564 6961 7469 6f6e 0a0a  rm_remediation..
│ │ │ -001c77a0: 656c 7365 0a20 2020 2026 6774 3b26 616d  else.    >&am
│ │ │ -001c77b0: 703b 3220 6563 686f 2027 5265 6d65 6469  p;2 echo 'Remedi
│ │ │ -001c77c0: 6174 696f 6e20 6973 206e 6f74 2061 7070  ation is not app
│ │ │ -001c77d0: 6c69 6361 626c 652c 206e 6f74 6869 6e67  licable, nothing
│ │ │ -001c77e0: 2077 6173 2064 6f6e 6527 0a66 690a 3c2f   was done'.fi.
│ │ │ +001c5360: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c
- n
│ │ │ +001c53f0: 616d 653a 2047 6174 6865 7220 7468 6520  ame: Gather the 
│ │ │ +001c5400: 7061 636b 6167 6520 6661 6374 730a 2020  package facts.  
│ │ │ +001c5410: 7061 636b 6167 655f 6661 6374 733a 0a20  package_facts:. 
│ │ │ +001c5420: 2020 206d 616e 6167 6572 3a20 6175 746f     manager: auto
│ │ │ +001c5430: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ +001c5440: 542d 3830 302d 3533 2d41 432d 360a 2020  T-800-53-AC-6.  
│ │ │ +001c5450: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ +001c5460: 2d36 2831 290a 2020 2d20 4e49 5354 2d38  -6(1).  - NIST-8
│ │ │ +001c5470: 3030 2d35 332d 434d 2d36 2861 290a 2020  00-53-CM-6(a).  
│ │ │ +001c5480: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +001c5490: 2d37 2861 290a 2020 2d20 4e49 5354 2d38  -7(a).  - NIST-8
│ │ │ +001c54a0: 3030 2d35 332d 434d 2d37 2862 290a 2020  00-53-CM-7(b).  
│ │ │ +001c54b0: 2d20 4e49 5354 2d38 3030 2d35 332d 4d50  - NIST-800-53-MP
│ │ │ +001c54c0: 2d37 0a20 202d 2063 6f6e 6669 6775 7265  -7.  - configure
│ │ │ +001c54d0: 5f73 7472 6174 6567 790a 2020 2d20 6869  _strategy.  - hi
│ │ │ +001c54e0: 6768 5f64 6973 7275 7074 696f 6e0a 2020  gh_disruption.  
│ │ │ +001c54f0: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ +001c5500: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ +001c5510: 7269 7479 0a20 202d 206d 6f75 6e74 5f6f  rity.  - mount_o
│ │ │ +001c5520: 7074 696f 6e5f 746d 705f 6e6f 7375 6964  ption_tmp_nosuid
│ │ │ +001c5530: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ +001c5540: 6565 6465 640a 0a2d 206e 616d 653a 2027  eeded..- name: '
│ │ │ +001c5550: 4164 6420 6e6f 7375 6964 204f 7074 696f  Add nosuid Optio
│ │ │ +001c5560: 6e20 746f 202f 746d 703a 2043 6865 636b  n to /tmp: Check
│ │ │ +001c5570: 2069 6e66 6f72 6d61 7469 6f6e 2061 7373   information ass
│ │ │ +001c5580: 6f63 6961 7465 6420 746f 206d 6f75 6e74  ociated to mount
│ │ │ +001c5590: 706f 696e 7427 0a20 2061 6e73 6962 6c65  point'.  ansible
│ │ │ +001c55a0: 2e62 7569 6c74 696e 2e63 6f6d 6d61 6e64  .builtin.command
│ │ │ +001c55b0: 3a20 6669 6e64 6d6e 7420 2d2d 6673 7461  : findmnt --fsta
│ │ │ +001c55c0: 6220 272f 746d 7027 0a20 2072 6567 6973  b '/tmp'.  regis
│ │ │ +001c55d0: 7465 723a 2064 6576 6963 655f 6e61 6d65  ter: device_name
│ │ │ +001c55e0: 0a20 2066 6169 6c65 645f 7768 656e 3a20  .  failed_when: 
│ │ │ +001c55f0: 6465 7669 6365 5f6e 616d 652e 7263 2026  device_name.rc &
│ │ │ +001c5600: 6774 3b20 310a 2020 6368 616e 6765 645f  gt; 1.  changed_
│ │ │ +001c5610: 7768 656e 3a20 6661 6c73 650a 2020 6368  when: false.  ch
│ │ │ +001c5620: 6563 6b5f 6d6f 6465 3a20 6661 6c73 650a  eck_mode: false.
│ │ │ +001c5630: 2020 7768 656e 3a0a 2020 2d20 2820 6e6f    when:.  - ( no
│ │ │ +001c5640: 7420 2820 226b 6572 6e65 6c22 2069 6e20  t ( "kernel" in 
│ │ │ +001c5650: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001c5660: 636b 6167 6573 2061 6e64 2022 626f 6f74  ckages and "boot
│ │ │ +001c5670: 6322 2069 6e20 616e 7369 626c 655f 6661  c" in ansible_fa
│ │ │ +001c5680: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ +001c5690: 2061 6e64 206e 6f74 2022 6f70 656e 7368   and not "opensh
│ │ │ +001c56a0: 6966 742d 6b75 6265 6c65 7422 2069 6e20  ift-kubelet" in 
│ │ │ +001c56b0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001c56c0: 636b 6167 6573 2061 6e64 2022 6f73 7472  ckages and "ostr
│ │ │ +001c56d0: 6565 2220 696e 2061 6e73 6962 6c65 5f70  ee" in ansible_p
│ │ │ +001c56e0: 726f 635f 636d 646c 696e 650a 2020 2020  roc_cmdline.    
│ │ │ +001c56f0: 2920 616e 6420 6e6f 7420 2820 616e 7369  ) and not ( ansi
│ │ │ +001c5700: 626c 655f 7669 7274 7561 6c69 7a61 7469  ble_virtualizati
│ │ │ +001c5710: 6f6e 5f74 7970 6520 696e 205b 2264 6f63  on_type in ["doc
│ │ │ +001c5720: 6b65 7222 2c20 226c 7863 222c 2022 6f70  ker", "lxc", "op
│ │ │ +001c5730: 656e 767a 222c 2022 706f 646d 616e 222c  envz", "podman",
│ │ │ +001c5740: 0a20 2020 2022 636f 6e74 6169 6e65 7222  .    "container"
│ │ │ +001c5750: 5d20 2920 290a 2020 2d20 2722 2f74 6d70  ] ) ).  - '"/tmp
│ │ │ +001c5760: 2220 696e 2061 6e73 6962 6c65 5f6d 6f75  " in ansible_mou
│ │ │ +001c5770: 6e74 7320 7c20 6d61 7028 6174 7472 6962  nts | map(attrib
│ │ │ +001c5780: 7574 653d 226d 6f75 6e74 2229 207c 206c  ute="mount") | l
│ │ │ +001c5790: 6973 7427 0a20 2074 6167 733a 0a20 202d  ist'.  tags:.  -
│ │ │ +001c57a0: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ +001c57b0: 360a 2020 2d20 4e49 5354 2d38 3030 2d35  6.  - NIST-800-5
│ │ │ +001c57c0: 332d 4143 2d36 2831 290a 2020 2d20 4e49  3-AC-6(1).  - NI
│ │ │ +001c57d0: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ +001c57e0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001c57f0: 332d 434d 2d37 2861 290a 2020 2d20 4e49  3-CM-7(a).  - NI
│ │ │ +001c5800: 5354 2d38 3030 2d35 332d 434d 2d37 2862  ST-800-53-CM-7(b
│ │ │ +001c5810: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001c5820: 332d 4d50 2d37 0a20 202d 2063 6f6e 6669  3-MP-7.  - confi
│ │ │ +001c5830: 6775 7265 5f73 7472 6174 6567 790a 2020  gure_strategy.  
│ │ │ +001c5840: 2d20 6869 6768 5f64 6973 7275 7074 696f  - high_disruptio
│ │ │ +001c5850: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65  n.  - low_comple
│ │ │ +001c5860: 7869 7479 0a20 202d 206d 6564 6975 6d5f  xity.  - medium_
│ │ │ +001c5870: 7365 7665 7269 7479 0a20 202d 206d 6f75  severity.  - mou
│ │ │ +001c5880: 6e74 5f6f 7074 696f 6e5f 746d 705f 6e6f  nt_option_tmp_no
│ │ │ +001c5890: 7375 6964 0a20 202d 206e 6f5f 7265 626f  suid.  - no_rebo
│ │ │ +001c58a0: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d  ot_needed..- nam
│ │ │ +001c58b0: 653a 2027 4164 6420 6e6f 7375 6964 204f  e: 'Add nosuid O
│ │ │ +001c58c0: 7074 696f 6e20 746f 202f 746d 703a 2043  ption to /tmp: C
│ │ │ +001c58d0: 7265 6174 6520 6d6f 756e 745f 696e 666f  reate mount_info
│ │ │ +001c58e0: 2064 6963 7469 6f6e 6172 7920 7661 7269   dictionary vari
│ │ │ +001c58f0: 6162 6c65 270a 2020 7365 745f 6661 6374  able'.  set_fact
│ │ │ +001c5900: 3a0a 2020 2020 6d6f 756e 745f 696e 666f  :.    mount_info
│ │ │ +001c5910: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ +001c5920: 7c64 6566 6175 6c74 287b 7d29 7c63 6f6d  |default({})|com
│ │ │ +001c5930: 6269 6e65 287b 6974 656d 2e30 3a20 6974  bine({item.0: it
│ │ │ +001c5940: 656d 2e31 7d29 207d 7d27 0a20 2077 6974  em.1}) }}'.  wit
│ │ │ +001c5950: 685f 746f 6765 7468 6572 3a0a 2020 2d20  h_together:.  - 
│ │ │ +001c5960: 277b 7b20 6465 7669 6365 5f6e 616d 652e  '{{ device_name.
│ │ │ +001c5970: 7374 646f 7574 5f6c 696e 6573 5b30 5d2e  stdout_lines[0].
│ │ │ +001c5980: 7370 6c69 7428 2920 7c20 6d61 7028 2727  split() | map(''
│ │ │ +001c5990: 6c6f 7765 7227 2729 207c 206c 6973 7420  lower'') | list 
│ │ │ +001c59a0: 7d7d 270a 2020 2d20 277b 7b20 6465 7669  }}'.  - '{{ devi
│ │ │ +001c59b0: 6365 5f6e 616d 652e 7374 646f 7574 5f6c  ce_name.stdout_l
│ │ │ +001c59c0: 696e 6573 5b31 5d2e 7370 6c69 7428 2920  ines[1].split() 
│ │ │ +001c59d0: 7c20 6c69 7374 207d 7d27 0a20 2077 6865  | list }}'.  whe
│ │ │ +001c59e0: 6e3a 0a20 202d 2028 206e 6f74 2028 2022  n:.  - ( not ( "
│ │ │ +001c59f0: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ +001c5a00: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001c5a10: 7320 616e 6420 2262 6f6f 7463 2220 696e  s and "bootc" in
│ │ │ +001c5a20: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001c5a30: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ +001c5a40: 6e6f 7420 226f 7065 6e73 6869 6674 2d6b  not "openshift-k
│ │ │ +001c5a50: 7562 656c 6574 2220 696e 2061 6e73 6962  ubelet" in ansib
│ │ │ +001c5a60: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001c5a70: 7320 616e 6420 226f 7374 7265 6522 2069  s and "ostree" i
│ │ │ +001c5a80: 6e20 616e 7369 626c 655f 7072 6f63 5f63  n ansible_proc_c
│ │ │ +001c5a90: 6d64 6c69 6e65 0a20 2020 2029 2061 6e64  mdline.    ) and
│ │ │ +001c5aa0: 206e 6f74 2028 2061 6e73 6962 6c65 5f76   not ( ansible_v
│ │ │ +001c5ab0: 6972 7475 616c 697a 6174 696f 6e5f 7479  irtualization_ty
│ │ │ +001c5ac0: 7065 2069 6e20 5b22 646f 636b 6572 222c  pe in ["docker",
│ │ │ +001c5ad0: 2022 6c78 6322 2c20 226f 7065 6e76 7a22   "lxc", "openvz"
│ │ │ +001c5ae0: 2c20 2270 6f64 6d61 6e22 2c0a 2020 2020  , "podman",.    
│ │ │ +001c5af0: 2263 6f6e 7461 696e 6572 225d 2029 2029  "container"] ) )
│ │ │ +001c5b00: 0a20 202d 2027 222f 746d 7022 2069 6e20  .  - '"/tmp" in 
│ │ │ +001c5b10: 616e 7369 626c 655f 6d6f 756e 7473 207c  ansible_mounts |
│ │ │ +001c5b20: 206d 6170 2861 7474 7269 6275 7465 3d22   map(attribute="
│ │ │ +001c5b30: 6d6f 756e 7422 2920 7c20 6c69 7374 270a  mount") | list'.
│ │ │ +001c5b40: 2020 2d20 6465 7669 6365 5f6e 616d 652e    - device_name.
│ │ │ +001c5b50: 7374 646f 7574 2069 7320 6465 6669 6e65  stdout is define
│ │ │ +001c5b60: 6420 616e 6420 6465 7669 6365 5f6e 616d  d and device_nam
│ │ │ +001c5b70: 652e 7374 646f 7574 5f6c 696e 6573 2069  e.stdout_lines i
│ │ │ +001c5b80: 7320 6465 6669 6e65 640a 2020 2d20 2864  s defined.  - (d
│ │ │ +001c5b90: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ +001c5ba0: 7420 7c20 6c65 6e67 7468 2026 6774 3b20  t | length > 
│ │ │ +001c5bb0: 3029 0a20 2074 6167 733a 0a20 202d 204e  0).  tags:.  - N
│ │ │ +001c5bc0: 4953 542d 3830 302d 3533 2d41 432d 360a  IST-800-53-AC-6.
│ │ │ +001c5bd0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001c5be0: 4143 2d36 2831 290a 2020 2d20 4e49 5354  AC-6(1).  - NIST
│ │ │ +001c5bf0: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ +001c5c00: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001c5c10: 434d 2d37 2861 290a 2020 2d20 4e49 5354  CM-7(a).  - NIST
│ │ │ +001c5c20: 2d38 3030 2d35 332d 434d 2d37 2862 290a  -800-53-CM-7(b).
│ │ │ +001c5c30: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001c5c40: 4d50 2d37 0a20 202d 2063 6f6e 6669 6775  MP-7.  - configu
│ │ │ +001c5c50: 7265 5f73 7472 6174 6567 790a 2020 2d20  re_strategy.  - 
│ │ │ +001c5c60: 6869 6768 5f64 6973 7275 7074 696f 6e0a  high_disruption.
│ │ │ +001c5c70: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ +001c5c80: 7479 0a20 202d 206d 6564 6975 6d5f 7365  ty.  - medium_se
│ │ │ +001c5c90: 7665 7269 7479 0a20 202d 206d 6f75 6e74  verity.  - mount
│ │ │ +001c5ca0: 5f6f 7074 696f 6e5f 746d 705f 6e6f 7375  _option_tmp_nosu
│ │ │ +001c5cb0: 6964 0a20 202d 206e 6f5f 7265 626f 6f74  id.  - no_reboot
│ │ │ +001c5cc0: 5f6e 6565 6465 640a 0a2d 206e 616d 653a  _needed..- name:
│ │ │ +001c5cd0: 2027 4164 6420 6e6f 7375 6964 204f 7074   'Add nosuid Opt
│ │ │ +001c5ce0: 696f 6e20 746f 202f 746d 703a 2049 6620  ion to /tmp: If 
│ │ │ +001c5cf0: 2f74 6d70 206e 6f74 206d 6f75 6e74 6564  /tmp not mounted
│ │ │ +001c5d00: 2c20 6372 6166 7420 6d6f 756e 745f 696e  , craft mount_in
│ │ │ +001c5d10: 666f 206d 616e 7561 6c6c 7927 0a20 2073  fo manually'.  s
│ │ │ +001c5d20: 6574 5f66 6163 743a 0a20 2020 206d 6f75  et_fact:.    mou
│ │ │ +001c5d30: 6e74 5f69 6e66 6f3a 2027 7b7b 206d 6f75  nt_info: '{{ mou
│ │ │ +001c5d40: 6e74 5f69 6e66 6f7c 6465 6661 756c 7428  nt_info|default(
│ │ │ +001c5d50: 7b7d 297c 636f 6d62 696e 6528 7b69 7465  {})|combine({ite
│ │ │ +001c5d60: 6d2e 303a 2069 7465 6d2e 317d 2920 7d7d  m.0: item.1}) }}
│ │ │ +001c5d70: 270a 2020 7769 7468 5f74 6f67 6574 6865  '.  with_togethe
│ │ │ +001c5d80: 723a 0a20 202d 202d 2074 6172 6765 740a  r:.  - - target.
│ │ │ +001c5d90: 2020 2020 2d20 736f 7572 6365 0a20 2020      - source.   
│ │ │ +001c5da0: 202d 2066 7374 7970 650a 2020 2020 2d20   - fstype.    - 
│ │ │ +001c5db0: 6f70 7469 6f6e 730a 2020 2d20 2d20 2f74  options.  - - /t
│ │ │ +001c5dc0: 6d70 0a20 2020 202d 2027 270a 2020 2020  mp.    - ''.    
│ │ │ +001c5dd0: 2d20 2727 0a20 2020 202d 2064 6566 6175  - ''.    - defau
│ │ │ +001c5de0: 6c74 730a 2020 7768 656e 3a0a 2020 2d20  lts.  when:.  - 
│ │ │ +001c5df0: 2820 6e6f 7420 2820 226b 6572 6e65 6c22  ( not ( "kernel"
│ │ │ +001c5e00: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001c5e10: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ +001c5e20: 626f 6f74 6322 2069 6e20 616e 7369 626c  bootc" in ansibl
│ │ │ +001c5e30: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +001c5e40: 0a20 2020 2061 6e64 206e 6f74 2022 6f70  .    and not "op
│ │ │ +001c5e50: 656e 7368 6966 742d 6b75 6265 6c65 7422  enshift-kubelet"
│ │ │ +001c5e60: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001c5e70: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ +001c5e80: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ +001c5e90: 6c65 5f70 726f 635f 636d 646c 696e 650a  le_proc_cmdline.
│ │ │ +001c5ea0: 2020 2020 2920 616e 6420 6e6f 7420 2820      ) and not ( 
│ │ │ +001c5eb0: 616e 7369 626c 655f 7669 7274 7561 6c69  ansible_virtuali
│ │ │ +001c5ec0: 7a61 7469 6f6e 5f74 7970 6520 696e 205b  zation_type in [
│ │ │ +001c5ed0: 2264 6f63 6b65 7222 2c20 226c 7863 222c  "docker", "lxc",
│ │ │ +001c5ee0: 2022 6f70 656e 767a 222c 2022 706f 646d   "openvz", "podm
│ │ │ +001c5ef0: 616e 222c 0a20 2020 2022 636f 6e74 6169  an",.    "contai
│ │ │ +001c5f00: 6e65 7222 5d20 2920 290a 2020 2d20 2722  ner"] ) ).  - '"
│ │ │ +001c5f10: 2f74 6d70 2220 696e 2061 6e73 6962 6c65  /tmp" in ansible
│ │ │ +001c5f20: 5f6d 6f75 6e74 7320 7c20 6d61 7028 6174  _mounts | map(at
│ │ │ +001c5f30: 7472 6962 7574 653d 226d 6f75 6e74 2229  tribute="mount")
│ │ │ +001c5f40: 207c 206c 6973 7427 0a20 202d 2028 222d   | list'.  - ("-
│ │ │ +001c5f50: 2d66 7374 6162 2220 7c20 6c65 6e67 7468  -fstab" | length
│ │ │ +001c5f60: 203d 3d20 3029 0a20 202d 2064 6576 6963   == 0).  - devic
│ │ │ +001c5f70: 655f 6e61 6d65 2e73 7464 6f75 7420 6973  e_name.stdout is
│ │ │ +001c5f80: 2064 6566 696e 6564 2061 6e64 2064 6576   defined and dev
│ │ │ +001c5f90: 6963 655f 6e61 6d65 2e73 7464 6f75 745f  ice_name.stdout_
│ │ │ +001c5fa0: 6c69 6e65 7320 6973 2064 6566 696e 6564  lines is defined
│ │ │ +001c5fb0: 0a20 202d 2028 6465 7669 6365 5f6e 616d  .  - (device_nam
│ │ │ +001c5fc0: 652e 7374 646f 7574 207c 206c 656e 6774  e.stdout | lengt
│ │ │ +001c5fd0: 6820 3d3d 2030 290a 2020 7461 6773 3a0a  h == 0).  tags:.
│ │ │ +001c5fe0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001c5ff0: 4143 2d36 0a20 202d 204e 4953 542d 3830  AC-6.  - NIST-80
│ │ │ +001c6000: 302d 3533 2d41 432d 3628 3129 0a20 202d  0-53-AC-6(1).  -
│ │ │ +001c6010: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +001c6020: 3628 6129 0a20 202d 204e 4953 542d 3830  6(a).  - NIST-80
│ │ │ +001c6030: 302d 3533 2d43 4d2d 3728 6129 0a20 202d  0-53-CM-7(a).  -
│ │ │ +001c6040: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +001c6050: 3728 6229 0a20 202d 204e 4953 542d 3830  7(b).  - NIST-80
│ │ │ +001c6060: 302d 3533 2d4d 502d 370a 2020 2d20 636f  0-53-MP-7.  - co
│ │ │ +001c6070: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ +001c6080: 0a20 202d 2068 6967 685f 6469 7372 7570  .  - high_disrup
│ │ │ +001c6090: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d  tion.  - low_com
│ │ │ +001c60a0: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ +001c60b0: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ +001c60c0: 6d6f 756e 745f 6f70 7469 6f6e 5f74 6d70  mount_option_tmp
│ │ │ +001c60d0: 5f6e 6f73 7569 640a 2020 2d20 6e6f 5f72  _nosuid.  - no_r
│ │ │ +001c60e0: 6562 6f6f 745f 6e65 6564 6564 0a0a 2d20  eboot_needed..- 
│ │ │ +001c60f0: 6e61 6d65 3a20 2741 6464 206e 6f73 7569  name: 'Add nosui
│ │ │ +001c6100: 6420 4f70 7469 6f6e 2074 6f20 2f74 6d70  d Option to /tmp
│ │ │ +001c6110: 3a20 4d61 6b65 2073 7572 6520 6e6f 7375  : Make sure nosu
│ │ │ +001c6120: 6964 206f 7074 696f 6e20 6973 2070 6172  id option is par
│ │ │ +001c6130: 7420 6f66 2074 6865 2074 6f20 2f74 6d70  t of the to /tmp
│ │ │ +001c6140: 0a20 2020 206f 7074 696f 6e73 270a 2020  .    options'.  
│ │ │ +001c6150: 7365 745f 6661 6374 3a0a 2020 2020 6d6f  set_fact:.    mo
│ │ │ +001c6160: 756e 745f 696e 666f 3a20 277b 7b20 6d6f  unt_info: '{{ mo
│ │ │ +001c6170: 756e 745f 696e 666f 207c 2063 6f6d 6269  unt_info | combi
│ │ │ +001c6180: 6e65 2820 7b27 276f 7074 696f 6e73 2727  ne( {''options''
│ │ │ +001c6190: 3a27 2727 277e 286d 6f75 6e74 5f69 6e66  :''''~(mount_inf
│ │ │ +001c61a0: 6f2e 6f70 7469 6f6e 7320 7c0a 2020 2020  o.options |.    
│ │ │ +001c61b0: 2020 6465 6661 756c 7428 2727 2727 2929    default(''''))
│ │ │ +001c61c0: 7e28 2727 2c27 2720 6966 2028 6d6f 756e  ~('','' if (moun
│ │ │ +001c61d0: 745f 696e 666f 2e6f 7074 696f 6e73 207c  t_info.options |
│ │ │ +001c61e0: 2064 6566 6175 6c74 2827 2727 2729 2920   default('''')) 
│ │ │ +001c61f0: 656c 7365 2027 2727 2729 7e27 276e 6f73  else '''')~''nos
│ │ │ +001c6200: 7569 6427 270a 2020 2020 2020 7d29 207d  uid''.      }) }
│ │ │ +001c6210: 7d27 0a20 2077 6865 6e3a 0a20 202d 2028  }'.  when:.  - (
│ │ │ +001c6220: 206e 6f74 2028 2022 6b65 726e 656c 2220   not ( "kernel" 
│ │ │ +001c6230: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001c6240: 2e70 6163 6b61 6765 7320 616e 6420 2262  .packages and "b
│ │ │ +001c6250: 6f6f 7463 2220 696e 2061 6e73 6962 6c65  ootc" in ansible
│ │ │ +001c6260: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ +001c6270: 2020 2020 616e 6420 6e6f 7420 226f 7065      and not "ope
│ │ │ +001c6280: 6e73 6869 6674 2d6b 7562 656c 6574 2220  nshift-kubelet" 
│ │ │ +001c6290: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001c62a0: 2e70 6163 6b61 6765 7320 616e 6420 226f  .packages and "o
│ │ │ +001c62b0: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ +001c62c0: 655f 7072 6f63 5f63 6d64 6c69 6e65 0a20  e_proc_cmdline. 
│ │ │ +001c62d0: 2020 2029 2061 6e64 206e 6f74 2028 2061     ) and not ( a
│ │ │ +001c62e0: 6e73 6962 6c65 5f76 6972 7475 616c 697a  nsible_virtualiz
│ │ │ +001c62f0: 6174 696f 6e5f 7479 7065 2069 6e20 5b22  ation_type in ["
│ │ │ +001c6300: 646f 636b 6572 222c 2022 6c78 6322 2c20  docker", "lxc", 
│ │ │ +001c6310: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61  "openvz", "podma
│ │ │ +001c6320: 6e22 2c0a 2020 2020 2263 6f6e 7461 696e  n",.    "contain
│ │ │ +001c6330: 6572 225d 2029 2029 0a20 202d 2027 222f  er"] ) ).  - '"/
│ │ │ +001c6340: 746d 7022 2069 6e20 616e 7369 626c 655f  tmp" in ansible_
│ │ │ +001c6350: 6d6f 756e 7473 207c 206d 6170 2861 7474  mounts | map(att
│ │ │ +001c6360: 7269 6275 7465 3d22 6d6f 756e 7422 2920  ribute="mount") 
│ │ │ +001c6370: 7c20 6c69 7374 270a 2020 2d20 6d6f 756e  | list'.  - moun
│ │ │ +001c6380: 745f 696e 666f 2069 7320 6465 6669 6e65  t_info is define
│ │ │ +001c6390: 6420 616e 6420 226e 6f73 7569 6422 206e  d and "nosuid" n
│ │ │ +001c63a0: 6f74 2069 6e20 286d 6f75 6e74 5f69 6e66  ot in (mount_inf
│ │ │ +001c63b0: 6f2e 6f70 7469 6f6e 7320 7c20 6465 6661  o.options | defa
│ │ │ +001c63c0: 756c 7428 2727 2929 0a20 2074 6167 733a  ult('')).  tags:
│ │ │ +001c63d0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001c63e0: 2d41 432d 360a 2020 2d20 4e49 5354 2d38  -AC-6.  - NIST-8
│ │ │ +001c63f0: 3030 2d35 332d 4143 2d36 2831 290a 2020  00-53-AC-6(1).  
│ │ │ +001c6400: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +001c6410: 2d36 2861 290a 2020 2d20 4e49 5354 2d38  -6(a).  - NIST-8
│ │ │ +001c6420: 3030 2d35 332d 434d 2d37 2861 290a 2020  00-53-CM-7(a).  
│ │ │ +001c6430: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +001c6440: 2d37 2862 290a 2020 2d20 4e49 5354 2d38  -7(b).  - NIST-8
│ │ │ +001c6450: 3030 2d35 332d 4d50 2d37 0a20 202d 2063  00-53-MP-7.  - c
│ │ │ +001c6460: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ +001c6470: 790a 2020 2d20 6869 6768 5f64 6973 7275  y.  - high_disru
│ │ │ +001c6480: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f  ption.  - low_co
│ │ │ +001c6490: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ +001c64a0: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ +001c64b0: 206d 6f75 6e74 5f6f 7074 696f 6e5f 746d   mount_option_tm
│ │ │ +001c64c0: 705f 6e6f 7375 6964 0a20 202d 206e 6f5f  p_nosuid.  - no_
│ │ │ +001c64d0: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ +001c64e0: 206e 616d 653a 2027 4164 6420 6e6f 7375   name: 'Add nosu
│ │ │ +001c64f0: 6964 204f 7074 696f 6e20 746f 202f 746d  id Option to /tm
│ │ │ +001c6500: 703a 2045 6e73 7572 6520 2f74 6d70 2069  p: Ensure /tmp i
│ │ │ +001c6510: 7320 6d6f 756e 7465 6420 7769 7468 206e  s mounted with n
│ │ │ +001c6520: 6f73 7569 6420 6f70 7469 6f6e 270a 2020  osuid option'.  
│ │ │ +001c6530: 616e 7369 626c 652e 706f 7369 782e 6d6f  ansible.posix.mo
│ │ │ +001c6540: 756e 743a 0a20 2020 2070 6174 683a 202f  unt:.    path: /
│ │ │ +001c6550: 746d 700a 2020 2020 7372 633a 2027 7b7b  tmp.    src: '{{
│ │ │ +001c6560: 206d 6f75 6e74 5f69 6e66 6f2e 736f 7572   mount_info.sour
│ │ │ +001c6570: 6365 207c 2064 6566 6175 6c74 2827 2727  ce | default('''
│ │ │ +001c6580: 2729 207d 7d27 0a20 2020 206f 7074 733a  ') }}'.    opts:
│ │ │ +001c6590: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f2e   '{{ mount_info.
│ │ │ +001c65a0: 6f70 7469 6f6e 7320 7c20 6465 6661 756c  options | defaul
│ │ │ +001c65b0: 7428 2727 2727 2920 7d7d 270a 2020 2020  t('''') }}'.    
│ │ │ +001c65c0: 7374 6174 653a 206d 6f75 6e74 6564 0a20  state: mounted. 
│ │ │ +001c65d0: 2020 2066 7374 7970 653a 2027 7b7b 206d     fstype: '{{ m
│ │ │ +001c65e0: 6f75 6e74 5f69 6e66 6f2e 6673 7479 7065  ount_info.fstype
│ │ │ +001c65f0: 207c 2064 6566 6175 6c74 2827 2727 2729   | default('''')
│ │ │ +001c6600: 207d 7d27 0a20 2072 6567 6973 7465 723a   }}'.  register:
│ │ │ +001c6610: 206d 6f75 6e74 5f72 6573 756c 740a 2020   mount_result.  
│ │ │ +001c6620: 6661 696c 6564 5f77 6865 6e3a 0a20 202d  failed_when:.  -
│ │ │ +001c6630: 206d 6f75 6e74 5f72 6573 756c 7420 6973   mount_result is
│ │ │ +001c6640: 2066 6169 6c65 640a 2020 2d20 2727 2774   failed.  - '''t
│ │ │ +001c6650: 6172 6765 7420 6973 2062 7573 7927 2720  arget is busy'' 
│ │ │ +001c6660: 6e6f 7420 696e 2028 6d6f 756e 745f 7265  not in (mount_re
│ │ │ +001c6670: 7375 6c74 2e6d 7367 207c 2064 6566 6175  sult.msg | defau
│ │ │ +001c6680: 6c74 2827 2727 2729 2927 0a20 202d 2027  lt(''''))'.  - '
│ │ │ +001c6690: 2727 616c 7265 6164 7920 6d6f 756e 7465  ''already mounte
│ │ │ +001c66a0: 6427 2720 6e6f 7420 696e 2028 6d6f 756e  d'' not in (moun
│ │ │ +001c66b0: 745f 7265 7375 6c74 2e6d 7367 207c 2064  t_result.msg | d
│ │ │ +001c66c0: 6566 6175 6c74 2827 2727 2729 2927 0a20  efault(''''))'. 
│ │ │ +001c66d0: 2077 6865 6e3a 0a20 202d 2028 206e 6f74   when:.  - ( not
│ │ │ +001c66e0: 2028 2022 6b65 726e 656c 2220 696e 2061   ( "kernel" in a
│ │ │ +001c66f0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +001c6700: 6b61 6765 7320 616e 6420 2262 6f6f 7463  kages and "bootc
│ │ │ +001c6710: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +001c6720: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ +001c6730: 616e 6420 6e6f 7420 226f 7065 6e73 6869  and not "openshi
│ │ │ +001c6740: 6674 2d6b 7562 656c 6574 2220 696e 2061  ft-kubelet" in a
│ │ │ +001c6750: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +001c6760: 6b61 6765 7320 616e 6420 226f 7374 7265  kages and "ostre
│ │ │ +001c6770: 6522 2069 6e20 616e 7369 626c 655f 7072  e" in ansible_pr
│ │ │ +001c6780: 6f63 5f63 6d64 6c69 6e65 0a20 2020 2029  oc_cmdline.    )
│ │ │ +001c6790: 2061 6e64 206e 6f74 2028 2061 6e73 6962   and not ( ansib
│ │ │ +001c67a0: 6c65 5f76 6972 7475 616c 697a 6174 696f  le_virtualizatio
│ │ │ +001c67b0: 6e5f 7479 7065 2069 6e20 5b22 646f 636b  n_type in ["dock
│ │ │ +001c67c0: 6572 222c 2022 6c78 6322 2c20 226f 7065  er", "lxc", "ope
│ │ │ +001c67d0: 6e76 7a22 2c20 2270 6f64 6d61 6e22 2c0a  nvz", "podman",.
│ │ │ +001c67e0: 2020 2020 2263 6f6e 7461 696e 6572 225d      "container"]
│ │ │ +001c67f0: 2029 2029 0a20 202d 2027 222f 746d 7022   ) ).  - '"/tmp"
│ │ │ +001c6800: 2069 6e20 616e 7369 626c 655f 6d6f 756e   in ansible_moun
│ │ │ +001c6810: 7473 207c 206d 6170 2861 7474 7269 6275  ts | map(attribu
│ │ │ +001c6820: 7465 3d22 6d6f 756e 7422 2920 7c20 6c69  te="mount") | li
│ │ │ +001c6830: 7374 270a 2020 2d20 6d6f 756e 745f 696e  st'.  - mount_in
│ │ │ +001c6840: 666f 2069 7320 6465 6669 6e65 640a 2020  fo is defined.  
│ │ │ +001c6850: 2d20 2864 6576 6963 655f 6e61 6d65 2e73  - (device_name.s
│ │ │ +001c6860: 7464 6f75 7420 6973 2064 6566 696e 6564  tdout is defined
│ │ │ +001c6870: 2061 6e64 2028 6465 7669 6365 5f6e 616d   and (device_nam
│ │ │ +001c6880: 652e 7374 646f 7574 207c 206c 656e 6774  e.stdout | lengt
│ │ │ +001c6890: 6820 2667 743b 2030 2929 206f 7220 2822  h > 0)) or ("
│ │ │ +001c68a0: 2d2d 6673 7461 6222 0a20 2020 207c 206c  --fstab".    | l
│ │ │ +001c68b0: 656e 6774 6820 3d3d 2030 290a 2020 7461  ength == 0).  ta
│ │ │ +001c68c0: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030  gs:.  - NIST-800
│ │ │ +001c68d0: 2d35 332d 4143 2d36 0a20 202d 204e 4953  -53-AC-6.  - NIS
│ │ │ +001c68e0: 542d 3830 302d 3533 2d41 432d 3628 3129  T-800-53-AC-6(1)
│ │ │ +001c68f0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001c6900: 2d43 4d2d 3628 6129 0a20 202d 204e 4953  -CM-6(a).  - NIS
│ │ │ +001c6910: 542d 3830 302d 3533 2d43 4d2d 3728 6129  T-800-53-CM-7(a)
│ │ │ +001c6920: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001c6930: 2d43 4d2d 3728 6229 0a20 202d 204e 4953  -CM-7(b).  - NIS
│ │ │ +001c6940: 542d 3830 302d 3533 2d4d 502d 370a 2020  T-800-53-MP-7.  
│ │ │ +001c6950: 2d20 636f 6e66 6967 7572 655f 7374 7261  - configure_stra
│ │ │ +001c6960: 7465 6779 0a20 202d 2068 6967 685f 6469  tegy.  - high_di
│ │ │ +001c6970: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ +001c6980: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +001c6990: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ +001c69a0: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e    - mount_option
│ │ │ +001c69b0: 5f74 6d70 5f6e 6f73 7569 640a 2020 2d20  _tmp_nosuid.  - 
│ │ │ +001c69c0: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ +001c69d0: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation She │ │ │ +001c6a90: 6c6c 2073 6372 6970 7420 e287 b23c 2f61 ll script ...
Compl │ │ │ +001c5340: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ +001c5350: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ +001c5370: 2f74 683e 3c74 643e 6869 6768 3c2f 7464 /th>high
Re │ │ │ +001c5390: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +001c53a0: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:configure │ │ │ +001c53d0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
# Remediation i
│ │ │ +001c6b60: 7320 6170 706c 6963 6162 6c65 206f 6e6c  s applicable onl
│ │ │ +001c6b70: 7920 696e 2063 6572 7461 696e 2070 6c61  y in certain pla
│ │ │ +001c6b80: 7466 6f72 6d73 0a69 6620 2820 2120 2820  tforms.if ( ! ( 
│ │ │ +001c6b90: 7b20 7270 6d20 2d2d 7175 6965 7420 2d71  { rpm --quiet -q
│ │ │ +001c6ba0: 206b 6572 6e65 6c20 3b7d 2026 616d 703b   kernel ;} &
│ │ │ +001c6bb0: 2661 6d70 3b20 7b20 7270 6d20 2d2d 7175  & { rpm --qu
│ │ │ +001c6bc0: 6965 7420 2d71 2062 6f6f 7463 203b 7d20  iet -q bootc ;} 
│ │ │ +001c6bd0: 2661 6d70 3b26 616d 703b 207b 2021 2072  && { ! r
│ │ │ +001c6be0: 706d 202d 2d71 7569 6574 202d 7120 6f70  pm --quiet -q op
│ │ │ +001c6bf0: 656e 7368 6966 742d 6b75 6265 6c65 7420  enshift-kubelet 
│ │ │ +001c6c00: 3b7d 2026 616d 703b 2661 6d70 3b20 285b  ;} && ([
│ │ │ +001c6c10: 202d 6620 2f72 756e 2f6f 7374 7265 652d   -f /run/ostree-
│ │ │ +001c6c20: 626f 6f74 6564 205d 207c 7c20 5b20 2d4c  booted ] || [ -L
│ │ │ +001c6c30: 202f 6f73 7472 6565 205d 2920 2920 2661   /ostree ]) ) &a
│ │ │ +001c6c40: 6d70 3b26 616d 703b 2021 2028 205b 202d  mp;& ! ( [ -
│ │ │ +001c6c50: 6620 2f2e 646f 636b 6572 656e 7620 5d20  f /.dockerenv ] 
│ │ │ +001c6c60: 7c7c 205b 202d 6620 2f72 756e 2f2e 636f  || [ -f /run/.co
│ │ │ +001c6c70: 6e74 6169 6e65 7265 6e76 205d 2029 2029  ntainerenv ] ) )
│ │ │ +001c6c80: 2026 616d 703b 2661 6d70 3b20 7b20 2820   && { ( 
│ │ │ +001c6c90: 6669 6e64 6d6e 7420 2d2d 6b65 726e 656c  findmnt --kernel
│ │ │ +001c6ca0: 2022 2f74 6d70 2220 2667 743b 202f 6465   "/tmp" > /de
│ │ │ +001c6cb0: 762f 6e75 6c6c 207c 7c20 6669 6e64 6d6e  v/null || findmn
│ │ │ +001c6cc0: 7420 2d2d 6673 7461 6220 222f 746d 7022  t --fstab "/tmp"
│ │ │ +001c6cd0: 2026 6774 3b20 2f64 6576 2f6e 756c 6c20   > /dev/null 
│ │ │ +001c6ce0: 293b 207d 3b20 7468 656e 0a0a 6675 6e63  ); }; then..func
│ │ │ +001c6cf0: 7469 6f6e 2070 6572 666f 726d 5f72 656d  tion perform_rem
│ │ │ +001c6d00: 6564 6961 7469 6f6e 207b 0a0a 2020 2020  ediation {..    
│ │ │ +001c6d10: 0a20 2020 2020 2020 2023 2074 6865 206d  .        # the m
│ │ │ +001c6d20: 6f75 6e74 2070 6f69 6e74 202f 746d 7020  ount point /tmp 
│ │ │ +001c6d30: 6861 7320 746f 2062 6520 6465 6669 6e65  has to be define
│ │ │ +001c6d40: 6420 696e 202f 6574 632f 6673 7461 620a  d in /etc/fstab.
│ │ │ +001c6d50: 2020 2020 2020 2020 2320 6265 666f 7265          # before
│ │ │ +001c6d60: 2074 6869 7320 7265 6d65 6469 6174 696f   this remediatio
│ │ │ +001c6d70: 6e20 6361 6e20 6265 2065 7865 6375 7465  n can be execute
│ │ │ +001c6d80: 642e 2049 6e20 6361 7365 2069 7420 6973  d. In case it is
│ │ │ +001c6d90: 206e 6f74 2064 6566 696e 6564 2c20 7468   not defined, th
│ │ │ +001c6da0: 650a 2020 2020 2020 2020 2320 7265 6d65  e.        # reme
│ │ │ +001c6db0: 6469 6174 696f 6e20 6162 6f72 7473 2061  diation aborts a
│ │ │ +001c6dc0: 6e64 206e 6f20 6368 616e 6765 7320 7265  nd no changes re
│ │ │ +001c6dd0: 6761 7264 696e 6720 7468 6520 6d6f 756e  garding the moun
│ │ │ +001c6de0: 7420 706f 696e 7420 6172 6520 646f 6e65  t point are done
│ │ │ +001c6df0: 2e0a 2020 2020 2020 2020 6d6f 756e 745f  ..        mount_
│ │ │ +001c6e00: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ +001c6e10: 7870 3d22 2428 7072 696e 7466 2022 5e5b  xp="$(printf "^[
│ │ │ +001c6e20: 5b3a 7370 6163 653a 5d5d 2a5b 5e23 5d2e  [:space:]]*[^#].
│ │ │ +001c6e30: 2a5b 5b3a 7370 6163 653a 5d5d 2573 5b5b  *[[:space:]]%s[[
│ │ │ +001c6e40: 3a73 7061 6365 3a5d 5d22 2022 2f74 6d70  :space:]]" "/tmp
│ │ │ +001c6e50: 2229 220a 0a20 2020 2067 7265 7020 2224  ")"..    grep "$
│ │ │ +001c6e60: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ +001c6e70: 685f 7265 6765 7870 2220 2d71 202f 6574  h_regexp" -q /et
│ │ │ +001c6e80: 632f 6673 7461 6220 5c0a 2020 2020 2020  c/fstab \.      
│ │ │ +001c6e90: 2020 7c7c 207b 2065 6368 6f20 2254 6865    || { echo "The
│ │ │ +001c6ea0: 206d 6f75 6e74 2070 6f69 6e74 2027 2f74   mount point '/t
│ │ │ +001c6eb0: 6d70 2720 6973 206e 6f74 2065 7665 6e20  mp' is not even 
│ │ │ +001c6ec0: 696e 202f 6574 632f 6673 7461 622c 2073  in /etc/fstab, s
│ │ │ +001c6ed0: 6f20 7765 2063 616e 2774 2073 6574 2075  o we can't set u
│ │ │ +001c6ee0: 7020 6d6f 756e 7420 6f70 7469 6f6e 7322  p mount options"
│ │ │ +001c6ef0: 2026 6774 3b26 616d 703b 323b 0a20 2020   >&2;.   
│ │ │ +001c6f00: 2020 2020 2020 2020 2020 2020 2065 6368               ech
│ │ │ +001c6f10: 6f20 224e 6f74 2072 656d 6564 6961 7469  o "Not remediati
│ │ │ +001c6f20: 6e67 2c20 6265 6361 7573 6520 7468 6572  ng, because ther
│ │ │ +001c6f30: 6520 6973 206e 6f20 7265 636f 7264 206f  e is no record o
│ │ │ +001c6f40: 6620 2f74 6d70 2069 6e20 2f65 7463 2f66  f /tmp in /etc/f
│ │ │ +001c6f50: 7374 6162 2220 2667 743b 2661 6d70 3b32  stab" >&2
│ │ │ +001c6f60: 3b20 7265 7475 726e 2031 3b20 7d0a 2020  ; return 1; }.  
│ │ │ +001c6f70: 2020 0a0a 0a20 2020 206d 6f75 6e74 5f70    ...    mount_p
│ │ │ +001c6f80: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ +001c6f90: 703d 2224 2870 7269 6e74 6620 225e 5b5b  p="$(printf "^[[
│ │ │ +001c6fa0: 3a73 7061 6365 3a5d 5d2a 5b5e 235d 2e2a  :space:]]*[^#].*
│ │ │ +001c6fb0: 5b5b 3a73 7061 6365 3a5d 5d25 735b 5b3a  [[:space:]]%s[[:
│ │ │ +001c6fc0: 7370 6163 653a 5d5d 2220 2f74 6d70 2922  space:]]" /tmp)"
│ │ │ +001c6fd0: 0a0a 2020 2020 2320 4966 2074 6865 206d  ..    # If the m
│ │ │ +001c6fe0: 6f75 6e74 2070 6f69 6e74 2069 7320 6e6f  ount point is no
│ │ │ +001c6ff0: 7420 696e 202f 6574 632f 6673 7461 622c  t in /etc/fstab,
│ │ │ +001c7000: 2067 6574 2070 7265 7669 6f75 7320 6d6f   get previous mo
│ │ │ +001c7010: 756e 7420 6f70 7469 6f6e 7320 6672 6f6d  unt options from
│ │ │ +001c7020: 202f 6574 632f 6d74 6162 0a20 2020 2069   /etc/mtab.    i
│ │ │ +001c7030: 6620 2120 6772 6570 202d 7120 2224 6d6f  f ! grep -q "$mo
│ │ │ +001c7040: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ +001c7050: 7265 6765 7870 2220 2f65 7463 2f66 7374  regexp" /etc/fst
│ │ │ +001c7060: 6162 3b20 7468 656e 0a20 2020 2020 2020  ab; then.       
│ │ │ +001c7070: 2023 2072 756e 7469 6d65 206f 7074 7320   # runtime opts 
│ │ │ +001c7080: 7769 7468 6f75 7420 736f 6d65 2061 7574  without some aut
│ │ │ +001c7090: 6f6d 6174 6963 206b 6572 6e65 6c2f 7573  omatic kernel/us
│ │ │ +001c70a0: 6572 7370 6163 652d 6164 6465 6420 6465  erspace-added de
│ │ │ +001c70b0: 6661 756c 7473 0a20 2020 2020 2020 2070  faults.        p
│ │ │ +001c70c0: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ +001c70d0: 7473 3d24 2867 7265 7020 2224 6d6f 756e  ts=$(grep "$moun
│ │ │ +001c70e0: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ +001c70f0: 6765 7870 2220 2f65 7463 2f6d 7461 6220  gexp" /etc/mtab 
│ │ │ +001c7100: 7c20 6865 6164 202d 3120 7c20 2061 776b  | head -1 |  awk
│ │ │ +001c7110: 2027 7b70 7269 6e74 2024 347d 2720 5c0a   '{print $4}' \.
│ │ │ +001c7120: 2020 2020 2020 2020 2020 2020 2020 2020                  
│ │ │ +001c7130: 2020 2020 7c20 7365 6420 2d45 2022 732f      | sed -E "s/
│ │ │ +001c7140: 2872 777c 6465 6661 756c 7473 7c73 6563  (rw|defaults|sec
│ │ │ +001c7150: 6c61 6265 6c7c 6e6f 7375 6964 2928 2c7c  label|nosuid)(,|
│ │ │ +001c7160: 2429 2f2f 673b 732f 2c24 2f2f 2229 0a20  $)//g;s/,$//"). 
│ │ │ +001c7170: 2020 2020 2020 205b 2022 2470 7265 7669         [ "$previ
│ │ │ +001c7180: 6f75 735f 6d6f 756e 745f 6f70 7473 2220  ous_mount_opts" 
│ │ │ +001c7190: 5d20 2661 6d70 3b26 616d 703b 2070 7265  ] && pre
│ │ │ +001c71a0: 7669 6f75 735f 6d6f 756e 745f 6f70 7473  vious_mount_opts
│ │ │ +001c71b0: 2b3d 222c 220a 2020 2020 2020 2020 2320  +=",".        # 
│ │ │ +001c71c0: 496e 2069 736f 3936 3630 2066 696c 6573  In iso9660 files
│ │ │ +001c71d0: 7973 7465 6d73 206d 7461 6220 636f 756c  ystems mtab coul
│ │ │ +001c71e0: 6420 6465 7363 7269 6265 2061 2022 626c  d describe a "bl
│ │ │ +001c71f0: 6f63 6b73 697a 6522 2076 616c 7565 2c20  ocksize" value, 
│ │ │ +001c7200: 7468 6973 2073 686f 756c 6420 6265 2072  this should be r
│ │ │ +001c7210: 6566 6c65 6374 6564 2069 6e0a 2020 2020  eflected in.    
│ │ │ +001c7220: 2020 2020 2320 6673 7461 6220 6173 2022      # fstab as "
│ │ │ +001c7230: 626c 6f63 6b22 2e20 2054 6865 206e 6578  block".  The nex
│ │ │ +001c7240: 7420 7661 7269 6162 6c65 2069 7320 746f  t variable is to
│ │ │ +001c7250: 2073 6174 6973 6679 2073 6865 6c6c 6368   satisfy shellch
│ │ │ +001c7260: 6563 6b20 5343 3230 3530 2e0a 2020 2020  eck SC2050..    
│ │ │ +001c7270: 2020 2020 6673 5f74 7970 653d 2222 0a20      fs_type="". 
│ │ │ +001c7280: 2020 2020 2020 2069 6620 5b20 2022 2466         if [  "$f
│ │ │ +001c7290: 735f 7479 7065 2220 3d3d 2022 6973 6f39  s_type" == "iso9
│ │ │ +001c72a0: 3636 3022 205d 203b 2074 6865 6e0a 2020  660" ] ; then.  
│ │ │ +001c72b0: 2020 2020 2020 2020 2020 7072 6576 696f            previo
│ │ │ +001c72c0: 7573 5f6d 6f75 6e74 5f6f 7074 733d 2428  us_mount_opts=$(
│ │ │ +001c72d0: 7365 6420 2773 2f62 6c6f 636b 7369 7a65  sed 's/blocksize
│ │ │ +001c72e0: 3d2f 626c 6f63 6b3d 2f27 2026 6c74 3b26  =/block=/' <&
│ │ │ +001c72f0: 6c74 3b26 6c74 3b20 2224 7072 6576 696f  lt;< "$previo
│ │ │ +001c7300: 7573 5f6d 6f75 6e74 5f6f 7074 7322 290a  us_mount_opts").
│ │ │ +001c7310: 2020 2020 2020 2020 6669 0a20 2020 2020          fi.     
│ │ │ +001c7320: 2020 2065 6368 6f20 2220 2f74 6d70 2020     echo " /tmp  
│ │ │ +001c7330: 6465 6661 756c 7473 2c24 7b70 7265 7669  defaults,${previ
│ │ │ +001c7340: 6f75 735f 6d6f 756e 745f 6f70 7473 7d6e  ous_mount_opts}n
│ │ │ +001c7350: 6f73 7569 6420 3020 3022 2026 6774 3b26  osuid 0 0" >&
│ │ │ +001c7360: 6774 3b20 2f65 7463 2f66 7374 6162 0a20  gt; /etc/fstab. 
│ │ │ +001c7370: 2020 2023 2049 6620 7468 6520 6d6f 756e     # If the moun
│ │ │ +001c7380: 745f 6f70 7420 6f70 7469 6f6e 2069 7320  t_opt option is 
│ │ │ +001c7390: 6e6f 7420 616c 7265 6164 7920 696e 2074  not already in t
│ │ │ +001c73a0: 6865 206d 6f75 6e74 2070 6f69 6e74 2773  he mount point's
│ │ │ +001c73b0: 202f 6574 632f 6673 7461 6220 656e 7472   /etc/fstab entr
│ │ │ +001c73c0: 792c 2061 6464 2069 740a 2020 2020 656c  y, add it.    el
│ │ │ +001c73d0: 6966 2021 2067 7265 7020 2224 6d6f 756e  if ! grep "$moun
│ │ │ +001c73e0: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ +001c73f0: 6765 7870 2220 2f65 7463 2f66 7374 6162  gexp" /etc/fstab
│ │ │ +001c7400: 207c 2067 7265 7020 2d71 2022 6e6f 7375   | grep -q "nosu
│ │ │ +001c7410: 6964 223b 2074 6865 6e0a 2020 2020 2020  id"; then.      
│ │ │ +001c7420: 2020 7072 6576 696f 7573 5f6d 6f75 6e74    previous_mount
│ │ │ +001c7430: 5f6f 7074 733d 2428 6772 6570 2022 246d  _opts=$(grep "$m
│ │ │ +001c7440: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ +001c7450: 5f72 6567 6578 7022 202f 6574 632f 6673  _regexp" /etc/fs
│ │ │ +001c7460: 7461 6220 7c20 6177 6b20 277b 7072 696e  tab | awk '{prin
│ │ │ +001c7470: 7420 2434 7d27 290a 2020 2020 2020 2020  t $4}').        
│ │ │ +001c7480: 7365 6420 2d69 2022 737c 5c28 247b 6d6f  sed -i "s|\(${mo
│ │ │ +001c7490: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ +001c74a0: 7265 6765 7870 7d2e 2a24 7b70 7265 7669  regexp}.*${previ
│ │ │ +001c74b0: 6f75 735f 6d6f 756e 745f 6f70 7473 7d5c  ous_mount_opts}\
│ │ │ +001c74c0: 297c 5c31 2c6e 6f73 7569 647c 2220 2f65  )|\1,nosuid|" /e
│ │ │ +001c74d0: 7463 2f66 7374 6162 0a20 2020 2066 690a  tc/fstab.    fi.
│ │ │ +001c74e0: 0a0a 2020 2020 6966 206d 6b64 6972 202d  ..    if mkdir -
│ │ │ +001c74f0: 7020 222f 746d 7022 3b20 7468 656e 0a20  p "/tmp"; then. 
│ │ │ +001c7500: 2020 2020 2020 2069 6620 6d6f 756e 7470         if mountp
│ │ │ +001c7510: 6f69 6e74 202d 7120 222f 746d 7022 3b20  oint -q "/tmp"; 
│ │ │ +001c7520: 7468 656e 0a20 2020 2020 2020 2020 2020  then.           
│ │ │ +001c7530: 206d 6f75 6e74 202d 6f20 7265 6d6f 756e   mount -o remoun
│ │ │ +001c7540: 7420 2d2d 7461 7267 6574 2022 2f74 6d70  t --target "/tmp
│ │ │ +001c7550: 220a 2020 2020 2020 2020 6669 0a20 2020  ".        fi.   
│ │ │ +001c7560: 2066 690a 7d0a 0a70 6572 666f 726d 5f72   fi.}..perform_r
│ │ │ +001c7570: 656d 6564 6961 7469 6f6e 0a0a 656c 7365  emediation..else
│ │ │ +001c7580: 0a20 2020 2026 6774 3b26 616d 703b 3220  .    >&2 
│ │ │ +001c7590: 6563 686f 2027 5265 6d65 6469 6174 696f  echo 'Remediatio
│ │ │ +001c75a0: 6e20 6973 206e 6f74 2061 7070 6c69 6361  n is not applica
│ │ │ +001c75b0: 626c 652c 206e 6f74 6869 6e67 2077 6173  ble, nothing was
│ │ │ +001c75c0: 2064 6f6e 6527 0a66 690a 3c2f 636f 6465   done'.fi.
Remedi │ │ │ +001c7680: 6174 696f 6e20 416e 6163 6f6e 6461 2073 ation Anaconda s │ │ │ +001c7690: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
R │ │ │ +001c6b20: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +001c6b30: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c2f alse
Comp │ │ │ +001c7720: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +001c7730: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ +001c7750: 3c2f 7468 3e3c 7464 3e68 6967 683c 2f74 high
R │ │ │ +001c7770: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +001c7780: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ +001c77a0: 2f74 683e 3c74 643e 656e 6162 6c65 3c2f /th>enable
│ │ │ +001c77c0: 3c70 7265 3e3c 636f 6465 3e0a 7061 7274
.part
│ │ │ +001c77d0: 202f 746d 7020 2d2d 6d6f 756e 746f 7074   /tmp --mountopt
│ │ │ +001c77e0: 696f 6e73 3d22 6e6f 7375 6964 220a 3c2f  ions="nosuid".
Remediat │ │ │ -001c84a0: 696f 6e20 416e 6163 6f6e 6461 2073 6e69 ion Anaconda sni │ │ │ -001c84b0: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -001c84c0: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -001c84f0: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ -001c8560: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption: │ │ │ -001c8580: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ -001c85b0: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Comple │ │ │ -001c8540: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ -001c8550: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
high
Reb │ │ │ -001c8590: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -001c85a0: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:enable

.part / │ │ │ -001c85f0: 7661 722f 6c6f 672f 6175 6469 7420 2d2d var/log/audit -- │ │ │ -001c8600: 6d6f 756e 746f 7074 696f 6e73 3d22 6e6f mountoptions="no │ │ │ -001c8610: 6465 7622 0a3c 2f63 6f64 653e 3c2f 7072 dev".

Remediation │ │ │ -001c86d0: 2041 6e73 6962 6c65 2073 6e69 7070 6574 Ansible snippet │ │ │ -001c86e0: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Complexity │ │ │ -001c8770: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ -001c8790: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ -001c87a0: 7464 3e68 6967 683c 2f74 643e 3c2f 7472 td>highReboot: │ │ │ -001c87c0: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ -001c87e0: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:configure │ │ │ -001c8800: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072 - name: │ │ │ -001c8820: 4761 7468 6572 2074 6865 2070 6163 6b61 Gather the packa │ │ │ -001c8830: 6765 2066 6163 7473 0a20 2070 6163 6b61 ge facts. packa │ │ │ -001c8840: 6765 5f66 6163 7473 3a0a 2020 2020 6d61 ge_facts:. ma │ │ │ -001c8850: 6e61 6765 723a 2061 7574 6f0a 2020 7461 nager: auto. ta │ │ │ -001c8860: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030 gs:. - NIST-800 │ │ │ -001c8870: 2d35 332d 4143 2d36 0a20 202d 204e 4953 -53-AC-6. - NIS │ │ │ -001c8880: 542d 3830 302d 3533 2d41 432d 3628 3129 T-800-53-AC-6(1) │ │ │ -001c8890: 0a20 202d 204e 4953 542d 3830 302d 3533 . - NIST-800-53 │ │ │ -001c88a0: 2d43 4d2d 3628 6129 0a20 202d 204e 4953 -CM-6(a). - NIS │ │ │ -001c88b0: 542d 3830 302d 3533 2d43 4d2d 3728 6129 T-800-53-CM-7(a) │ │ │ -001c88c0: 0a20 202d 204e 4953 542d 3830 302d 3533 . - NIST-800-53 │ │ │ -001c88d0: 2d43 4d2d 3728 6229 0a20 202d 204e 4953 -CM-7(b). - NIS │ │ │ -001c88e0: 542d 3830 302d 3533 2d4d 502d 370a 2020 T-800-53-MP-7. │ │ │ -001c88f0: 2d20 636f 6e66 6967 7572 655f 7374 7261 - configure_stra │ │ │ -001c8900: 7465 6779 0a20 202d 2068 6967 685f 6469 tegy. - high_di │ │ │ -001c8910: 7372 7570 7469 6f6e 0a20 202d 206c 6f77 sruption. - low │ │ │ -001c8920: 5f63 6f6d 706c 6578 6974 790a 2020 2d20 _complexity. - │ │ │ -001c8930: 6d65 6469 756d 5f73 6576 6572 6974 790a medium_severity. │ │ │ -001c8940: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e - mount_option │ │ │ -001c8950: 5f76 6172 5f6c 6f67 5f61 7564 6974 5f6e _var_log_audit_n │ │ │ -001c8960: 6f64 6576 0a20 202d 206e 6f5f 7265 626f odev. - no_rebo │ │ │ -001c8970: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d ot_needed..- nam │ │ │ -001c8980: 653a 2027 4164 6420 6e6f 6465 7620 4f70 e: 'Add nodev Op │ │ │ -001c8990: 7469 6f6e 2074 6f20 2f76 6172 2f6c 6f67 tion to /var/log │ │ │ -001c89a0: 2f61 7564 6974 3a20 4368 6563 6b20 696e /audit: Check in │ │ │ -001c89b0: 666f 726d 6174 696f 6e20 6173 736f 6369 formation associ │ │ │ -001c89c0: 6174 6564 2074 6f20 6d6f 756e 7470 6f69 ated to mountpoi │ │ │ -001c89d0: 6e74 270a 2020 616e 7369 626c 652e 6275 nt'. ansible.bu │ │ │ -001c89e0: 696c 7469 6e2e 636f 6d6d 616e 643a 2066 iltin.command: f │ │ │ -001c89f0: 696e 646d 6e74 202d 2d66 7374 6162 2027 indmnt --fstab ' │ │ │ -001c8a00: 2f76 6172 2f6c 6f67 2f61 7564 6974 270a /var/log/audit'. │ │ │ -001c8a10: 2020 7265 6769 7374 6572 3a20 6465 7669 register: devi │ │ │ -001c8a20: 6365 5f6e 616d 650a 2020 6661 696c 6564 ce_name. failed │ │ │ -001c8a30: 5f77 6865 6e3a 2064 6576 6963 655f 6e61 _when: device_na │ │ │ -001c8a40: 6d65 2e72 6320 2667 743b 2031 0a20 2063 me.rc > 1. c │ │ │ -001c8a50: 6861 6e67 6564 5f77 6865 6e3a 2066 616c hanged_when: fal │ │ │ -001c8a60: 7365 0a20 2063 6865 636b 5f6d 6f64 653a se. check_mode: │ │ │ -001c8a70: 2066 616c 7365 0a20 2077 6865 6e3a 0a20 false. when:. │ │ │ -001c8a80: 202d 2028 206e 6f74 2028 2022 6b65 726e - ( not ( "kern │ │ │ -001c8a90: 656c 2220 696e 2061 6e73 6962 6c65 5f66 el" in ansible_f │ │ │ -001c8aa0: 6163 7473 2e70 6163 6b61 6765 7320 616e acts.packages an │ │ │ -001c8ab0: 6420 2262 6f6f 7463 2220 696e 2061 6e73 d "bootc" in ans │ │ │ -001c8ac0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61 ible_facts.packa │ │ │ -001c8ad0: 6765 730a 2020 2020 616e 6420 6e6f 7420 ges. and not │ │ │ -001c8ae0: 226f 7065 6e73 6869 6674 2d6b 7562 656c "openshift-kubel │ │ │ -001c8af0: 6574 2220 696e 2061 6e73 6962 6c65 5f66 et" in ansible_f │ │ │ -001c8b00: 6163 7473 2e70 6163 6b61 6765 7320 616e acts.packages an │ │ │ -001c8b10: 6420 226f 7374 7265 6522 2069 6e20 616e d "ostree" in an │ │ │ -001c8b20: 7369 626c 655f 7072 6f63 5f63 6d64 6c69 sible_proc_cmdli │ │ │ -001c8b30: 6e65 0a20 2020 2029 2061 6e64 206e 6f74 ne. ) and not │ │ │ -001c8b40: 2028 2061 6e73 6962 6c65 5f76 6972 7475 ( ansible_virtu │ │ │ -001c8b50: 616c 697a 6174 696f 6e5f 7479 7065 2069 alization_type i │ │ │ -001c8b60: 6e20 5b22 646f 636b 6572 222c 2022 6c78 n ["docker", "lx │ │ │ -001c8b70: 6322 2c20 226f 7065 6e76 7a22 2c20 2270 c", "openvz", "p │ │ │ -001c8b80: 6f64 6d61 6e22 2c0a 2020 2020 2263 6f6e odman",. "con │ │ │ -001c8b90: 7461 696e 6572 225d 2029 2029 0a20 202d tainer"] ) ). - │ │ │ -001c8ba0: 2027 222f 7661 722f 6c6f 672f 6175 6469 '"/var/log/audi │ │ │ -001c8bb0: 7422 2069 6e20 616e 7369 626c 655f 6d6f t" in ansible_mo │ │ │ -001c8bc0: 756e 7473 207c 206d 6170 2861 7474 7269 unts | map(attri │ │ │ -001c8bd0: 6275 7465 3d22 6d6f 756e 7422 2920 7c20 bute="mount") | │ │ │ -001c8be0: 6c69 7374 270a 2020 7461 6773 3a0a 2020 list'. tags:. │ │ │ -001c8bf0: 2d20 4e49 5354 2d38 3030 2d35 332d 4143 - NIST-800-53-AC │ │ │ -001c8c00: 2d36 0a20 202d 204e 4953 542d 3830 302d -6. - NIST-800- │ │ │ -001c8c10: 3533 2d41 432d 3628 3129 0a20 202d 204e 53-AC-6(1). - N │ │ │ -001c8c20: 4953 542d 3830 302d 3533 2d43 4d2d 3628 IST-800-53-CM-6( │ │ │ -001c8c30: 6129 0a20 202d 204e 4953 542d 3830 302d a). - NIST-800- │ │ │ -001c8c40: 3533 2d43 4d2d 3728 6129 0a20 202d 204e 53-CM-7(a). - N │ │ │ -001c8c50: 4953 542d 3830 302d 3533 2d43 4d2d 3728 IST-800-53-CM-7( │ │ │ -001c8c60: 6229 0a20 202d 204e 4953 542d 3830 302d b). - NIST-800- │ │ │ -001c8c70: 3533 2d4d 502d 370a 2020 2d20 636f 6e66 53-MP-7. - conf │ │ │ -001c8c80: 6967 7572 655f 7374 7261 7465 6779 0a20 igure_strategy. │ │ │ -001c8c90: 202d 2068 6967 685f 6469 7372 7570 7469 - high_disrupti │ │ │ -001c8ca0: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c on. - low_compl │ │ │ -001c8cb0: 6578 6974 790a 2020 2d20 6d65 6469 756d exity. - medium │ │ │ -001c8cc0: 5f73 6576 6572 6974 790a 2020 2d20 6d6f _severity. - mo │ │ │ -001c8cd0: 756e 745f 6f70 7469 6f6e 5f76 6172 5f6c unt_option_var_l │ │ │ -001c8ce0: 6f67 5f61 7564 6974 5f6e 6f64 6576 0a20 og_audit_nodev. │ │ │ -001c8cf0: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565 - no_reboot_nee │ │ │ -001c8d00: 6465 640a 0a2d 206e 616d 653a 2027 4164 ded..- name: 'Ad │ │ │ -001c8d10: 6420 6e6f 6465 7620 4f70 7469 6f6e 2074 d nodev Option t │ │ │ -001c8d20: 6f20 2f76 6172 2f6c 6f67 2f61 7564 6974 o /var/log/audit │ │ │ -001c8d30: 3a20 4372 6561 7465 206d 6f75 6e74 5f69 : Create mount_i │ │ │ -001c8d40: 6e66 6f20 6469 6374 696f 6e61 7279 2076 nfo dictionary v │ │ │ -001c8d50: 6172 6961 626c 6527 0a20 2073 6574 5f66 ariable'. set_f │ │ │ -001c8d60: 6163 743a 0a20 2020 206d 6f75 6e74 5f69 act:. mount_i │ │ │ -001c8d70: 6e66 6f3a 2027 7b7b 206d 6f75 6e74 5f69 nfo: '{{ mount_i │ │ │ -001c8d80: 6e66 6f7c 6465 6661 756c 7428 7b7d 297c nfo|default({})| │ │ │ -001c8d90: 636f 6d62 696e 6528 7b69 7465 6d2e 303a combine({item.0: │ │ │ -001c8da0: 2069 7465 6d2e 317d 2920 7d7d 270a 2020 item.1}) }}'. │ │ │ -001c8db0: 7769 7468 5f74 6f67 6574 6865 723a 0a20 with_together:. │ │ │ -001c8dc0: 202d 2027 7b7b 2064 6576 6963 655f 6e61 - '{{ device_na │ │ │ -001c8dd0: 6d65 2e73 7464 6f75 745f 6c69 6e65 735b me.stdout_lines[ │ │ │ -001c8de0: 305d 2e73 706c 6974 2829 207c 206d 6170 0].split() | map │ │ │ -001c8df0: 2827 276c 6f77 6572 2727 2920 7c20 6c69 (''lower'') | li │ │ │ -001c8e00: 7374 207d 7d27 0a20 202d 2027 7b7b 2064 st }}'. - '{{ d │ │ │ -001c8e10: 6576 6963 655f 6e61 6d65 2e73 7464 6f75 evice_name.stdou │ │ │ -001c8e20: 745f 6c69 6e65 735b 315d 2e73 706c 6974 t_lines[1].split │ │ │ -001c8e30: 2829 207c 206c 6973 7420 7d7d 270a 2020 () | list }}'. │ │ │ -001c8e40: 7768 656e 3a0a 2020 2d20 2820 6e6f 7420 when:. - ( not │ │ │ -001c8e50: 2820 226b 6572 6e65 6c22 2069 6e20 616e ( "kernel" in an │ │ │ -001c8e60: 7369 626c 655f 6661 6374 732e 7061 636b sible_facts.pack │ │ │ -001c8e70: 6167 6573 2061 6e64 2022 626f 6f74 6322 ages and "bootc" │ │ │ -001c8e80: 2069 6e20 616e 7369 626c 655f 6661 6374 in ansible_fact │ │ │ -001c8e90: 732e 7061 636b 6167 6573 0a20 2020 2061 s.packages. a │ │ │ -001c8ea0: 6e64 206e 6f74 2022 6f70 656e 7368 6966 nd not "openshif │ │ │ -001c8eb0: 742d 6b75 6265 6c65 7422 2069 6e20 616e t-kubelet" in an │ │ │ -001c8ec0: 7369 626c 655f 6661 6374 732e 7061 636b sible_facts.pack │ │ │ -001c8ed0: 6167 6573 2061 6e64 2022 6f73 7472 6565 ages and "ostree │ │ │ -001c8ee0: 2220 696e 2061 6e73 6962 6c65 5f70 726f " in ansible_pro │ │ │ -001c8ef0: 635f 636d 646c 696e 650a 2020 2020 2920 c_cmdline. ) │ │ │ -001c8f00: 616e 6420 6e6f 7420 2820 616e 7369 626c and not ( ansibl │ │ │ -001c8f10: 655f 7669 7274 7561 6c69 7a61 7469 6f6e e_virtualization │ │ │ -001c8f20: 5f74 7970 6520 696e 205b 2264 6f63 6b65 _type in ["docke │ │ │ -001c8f30: 7222 2c20 226c 7863 222c 2022 6f70 656e r", "lxc", "open │ │ │ -001c8f40: 767a 222c 2022 706f 646d 616e 222c 0a20 vz", "podman",. │ │ │ -001c8f50: 2020 2022 636f 6e74 6169 6e65 7222 5d20 "container"] │ │ │ -001c8f60: 2920 290a 2020 2d20 2722 2f76 6172 2f6c ) ). - '"/var/l │ │ │ -001c8f70: 6f67 2f61 7564 6974 2220 696e 2061 6e73 og/audit" in ans │ │ │ -001c8f80: 6962 6c65 5f6d 6f75 6e74 7320 7c20 6d61 ible_mounts | ma │ │ │ -001c8f90: 7028 6174 7472 6962 7574 653d 226d 6f75 p(attribute="mou │ │ │ -001c8fa0: 6e74 2229 207c 206c 6973 7427 0a20 202d nt") | list'. - │ │ │ -001c8fb0: 2064 6576 6963 655f 6e61 6d65 2e73 7464 device_name.std │ │ │ -001c8fc0: 6f75 7420 6973 2064 6566 696e 6564 2061 out is defined a │ │ │ -001c8fd0: 6e64 2064 6576 6963 655f 6e61 6d65 2e73 nd device_name.s │ │ │ -001c8fe0: 7464 6f75 745f 6c69 6e65 7320 6973 2064 tdout_lines is d │ │ │ -001c8ff0: 6566 696e 6564 0a20 202d 2028 6465 7669 efined. - (devi │ │ │ -001c9000: 6365 5f6e 616d 652e 7374 646f 7574 207c ce_name.stdout | │ │ │ -001c9010: 206c 656e 6774 6820 2667 743b 2030 290a length > 0). │ │ │ -001c9020: 2020 7461 6773 3a0a 2020 2d20 4e49 5354 tags:. - NIST │ │ │ -001c9030: 2d38 3030 2d35 332d 4143 2d36 0a20 202d -800-53-AC-6. - │ │ │ -001c9040: 204e 4953 542d 3830 302d 3533 2d41 432d NIST-800-53-AC- │ │ │ -001c9050: 3628 3129 0a20 202d 204e 4953 542d 3830 6(1). - NIST-80 │ │ │ -001c9060: 302d 3533 2d43 4d2d 3628 6129 0a20 202d 0-53-CM-6(a). - │ │ │ -001c9070: 204e 4953 542d 3830 302d 3533 2d43 4d2d NIST-800-53-CM- │ │ │ -001c9080: 3728 6129 0a20 202d 204e 4953 542d 3830 7(a). - NIST-80 │ │ │ -001c9090: 302d 3533 2d43 4d2d 3728 6229 0a20 202d 0-53-CM-7(b). - │ │ │ -001c90a0: 204e 4953 542d 3830 302d 3533 2d4d 502d NIST-800-53-MP- │ │ │ -001c90b0: 370a 2020 2d20 636f 6e66 6967 7572 655f 7. - configure_ │ │ │ -001c90c0: 7374 7261 7465 6779 0a20 202d 2068 6967 strategy. - hig │ │ │ -001c90d0: 685f 6469 7372 7570 7469 6f6e 0a20 202d h_disruption. - │ │ │ -001c90e0: 206c 6f77 5f63 6f6d 706c 6578 6974 790a low_complexity. │ │ │ -001c90f0: 2020 2d20 6d65 6469 756d 5f73 6576 6572 - medium_sever │ │ │ -001c9100: 6974 790a 2020 2d20 6d6f 756e 745f 6f70 ity. - mount_op │ │ │ -001c9110: 7469 6f6e 5f76 6172 5f6c 6f67 5f61 7564 tion_var_log_aud │ │ │ -001c9120: 6974 5f6e 6f64 6576 0a20 202d 206e 6f5f it_nodev. - no_ │ │ │ -001c9130: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d reboot_needed..- │ │ │ -001c9140: 206e 616d 653a 2027 4164 6420 6e6f 6465 name: 'Add node │ │ │ -001c9150: 7620 4f70 7469 6f6e 2074 6f20 2f76 6172 v Option to /var │ │ │ -001c9160: 2f6c 6f67 2f61 7564 6974 3a20 4966 202f /log/audit: If / │ │ │ -001c9170: 7661 722f 6c6f 672f 6175 6469 7420 6e6f var/log/audit no │ │ │ -001c9180: 7420 6d6f 756e 7465 642c 2063 7261 6674 t mounted, craft │ │ │ -001c9190: 0a20 2020 206d 6f75 6e74 5f69 6e66 6f20 . mount_info │ │ │ -001c91a0: 6d61 6e75 616c 6c79 270a 2020 7365 745f manually'. set_ │ │ │ -001c91b0: 6661 6374 3a0a 2020 2020 6d6f 756e 745f fact:. mount_ │ │ │ -001c91c0: 696e 666f 3a20 277b 7b20 6d6f 756e 745f info: '{{ mount_ │ │ │ -001c91d0: 696e 666f 7c64 6566 6175 6c74 287b 7d29 info|default({}) │ │ │ -001c91e0: 7c63 6f6d 6269 6e65 287b 6974 656d 2e30 |combine({item.0 │ │ │ -001c91f0: 3a20 6974 656d 2e31 7d29 207d 7d27 0a20 : item.1}) }}'. │ │ │ -001c9200: 2077 6974 685f 746f 6765 7468 6572 3a0a with_together:. │ │ │ -001c9210: 2020 2d20 2d20 7461 7267 6574 0a20 2020 - - target. │ │ │ -001c9220: 202d 2073 6f75 7263 650a 2020 2020 2d20 - source. - │ │ │ -001c9230: 6673 7479 7065 0a20 2020 202d 206f 7074 fstype. - opt │ │ │ -001c9240: 696f 6e73 0a20 202d 202d 202f 7661 722f ions. - - /var/ │ │ │ -001c9250: 6c6f 672f 6175 6469 740a 2020 2020 2d20 log/audit. - │ │ │ -001c9260: 2727 0a20 2020 202d 2027 270a 2020 2020 ''. - ''. │ │ │ -001c9270: 2d20 6465 6661 756c 7473 0a20 2077 6865 - defaults. whe │ │ │ -001c9280: 6e3a 0a20 202d 2028 206e 6f74 2028 2022 n:. - ( not ( " │ │ │ -001c9290: 6b65 726e 656c 2220 696e 2061 6e73 6962 kernel" in ansib │ │ │ -001c92a0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765 le_facts.package │ │ │ -001c92b0: 7320 616e 6420 2262 6f6f 7463 2220 696e s and "bootc" in │ │ │ -001c92c0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70 ansible_facts.p │ │ │ -001c92d0: 6163 6b61 6765 730a 2020 2020 616e 6420 ackages. and │ │ │ -001c92e0: 6e6f 7420 226f 7065 6e73 6869 6674 2d6b not "openshift-k │ │ │ -001c92f0: 7562 656c 6574 2220 696e 2061 6e73 6962 ubelet" in ansib │ │ │ -001c9300: 6c65 5f66 6163 7473 2e70 6163 6b61 6765 le_facts.package │ │ │ -001c9310: 7320 616e 6420 226f 7374 7265 6522 2069 s and "ostree" i │ │ │ -001c9320: 6e20 616e 7369 626c 655f 7072 6f63 5f63 n ansible_proc_c │ │ │ -001c9330: 6d64 6c69 6e65 0a20 2020 2029 2061 6e64 mdline. ) and │ │ │ -001c9340: 206e 6f74 2028 2061 6e73 6962 6c65 5f76 not ( ansible_v │ │ │ -001c9350: 6972 7475 616c 697a 6174 696f 6e5f 7479 irtualization_ty │ │ │ -001c9360: 7065 2069 6e20 5b22 646f 636b 6572 222c pe in ["docker", │ │ │ -001c9370: 2022 6c78 6322 2c20 226f 7065 6e76 7a22 "lxc", "openvz" │ │ │ -001c9380: 2c20 2270 6f64 6d61 6e22 2c0a 2020 2020 , "podman",. │ │ │ -001c9390: 2263 6f6e 7461 696e 6572 225d 2029 2029 "container"] ) ) │ │ │ -001c93a0: 0a20 202d 2027 222f 7661 722f 6c6f 672f . - '"/var/log/ │ │ │ -001c93b0: 6175 6469 7422 2069 6e20 616e 7369 626c audit" in ansibl │ │ │ -001c93c0: 655f 6d6f 756e 7473 207c 206d 6170 2861 e_mounts | map(a │ │ │ -001c93d0: 7474 7269 6275 7465 3d22 6d6f 756e 7422 ttribute="mount" │ │ │ -001c93e0: 2920 7c20 6c69 7374 270a 2020 2d20 2822 ) | list'. - (" │ │ │ -001c93f0: 2d2d 6673 7461 6222 207c 206c 656e 6774 --fstab" | lengt │ │ │ -001c9400: 6820 3d3d 2030 290a 2020 2d20 6465 7669 h == 0). - devi │ │ │ -001c9410: 6365 5f6e 616d 652e 7374 646f 7574 2069 ce_name.stdout i │ │ │ -001c9420: 7320 6465 6669 6e65 6420 616e 6420 6465 s defined and de │ │ │ -001c9430: 7669 6365 5f6e 616d 652e 7374 646f 7574 vice_name.stdout │ │ │ -001c9440: 5f6c 696e 6573 2069 7320 6465 6669 6e65 _lines is define │ │ │ -001c9450: 640a 2020 2d20 2864 6576 6963 655f 6e61 d. - (device_na │ │ │ -001c9460: 6d65 2e73 7464 6f75 7420 7c20 6c65 6e67 me.stdout | leng │ │ │ -001c9470: 7468 203d 3d20 3029 0a20 2074 6167 733a th == 0). tags: │ │ │ -001c9480: 0a20 202d 204e 4953 542d 3830 302d 3533 . - NIST-800-53 │ │ │ -001c9490: 2d41 432d 360a 2020 2d20 4e49 5354 2d38 -AC-6. - NIST-8 │ │ │ -001c94a0: 3030 2d35 332d 4143 2d36 2831 290a 2020 00-53-AC-6(1). │ │ │ -001c94b0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d - NIST-800-53-CM │ │ │ -001c94c0: 2d36 2861 290a 2020 2d20 4e49 5354 2d38 -6(a). - NIST-8 │ │ │ -001c94d0: 3030 2d35 332d 434d 2d37 2861 290a 2020 00-53-CM-7(a). │ │ │ -001c94e0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d - NIST-800-53-CM │ │ │ -001c94f0: 2d37 2862 290a 2020 2d20 4e49 5354 2d38 -7(b). - NIST-8 │ │ │ -001c9500: 3030 2d35 332d 4d50 2d37 0a20 202d 2063 00-53-MP-7. - c │ │ │ -001c9510: 6f6e 6669 6775 7265 5f73 7472 6174 6567 onfigure_strateg │ │ │ -001c9520: 790a 2020 2d20 6869 6768 5f64 6973 7275 y. - high_disru │ │ │ -001c9530: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f ption. - low_co │ │ │ -001c9540: 6d70 6c65 7869 7479 0a20 202d 206d 6564 mplexity. - med │ │ │ -001c9550: 6975 6d5f 7365 7665 7269 7479 0a20 202d ium_severity. - │ │ │ -001c9560: 206d 6f75 6e74 5f6f 7074 696f 6e5f 7661 mount_option_va │ │ │ -001c9570: 725f 6c6f 675f 6175 6469 745f 6e6f 6465 r_log_audit_node │ │ │ -001c9580: 760a 2020 2d20 6e6f 5f72 6562 6f6f 745f v. - no_reboot_ │ │ │ -001c9590: 6e65 6564 6564 0a0a 2d20 6e61 6d65 3a20 needed..- name: │ │ │ -001c95a0: 2741 6464 206e 6f64 6576 204f 7074 696f 'Add nodev Optio │ │ │ -001c95b0: 6e20 746f 202f 7661 722f 6c6f 672f 6175 n to /var/log/au │ │ │ -001c95c0: 6469 743a 204d 616b 6520 7375 7265 206e dit: Make sure n │ │ │ -001c95d0: 6f64 6576 206f 7074 696f 6e20 6973 2070 odev option is p │ │ │ -001c95e0: 6172 7420 6f66 2074 6865 0a20 2020 2074 art of the. t │ │ │ -001c95f0: 6f20 2f76 6172 2f6c 6f67 2f61 7564 6974 o /var/log/audit │ │ │ -001c9600: 206f 7074 696f 6e73 270a 2020 7365 745f options'. set_ │ │ │ -001c9610: 6661 6374 3a0a 2020 2020 6d6f 756e 745f fact:. mount_ │ │ │ -001c9620: 696e 666f 3a20 277b 7b20 6d6f 756e 745f info: '{{ mount_ │ │ │ -001c9630: 696e 666f 207c 2063 6f6d 6269 6e65 2820 info | combine( │ │ │ -001c9640: 7b27 276f 7074 696f 6e73 2727 3a27 2727 {''options'':''' │ │ │ -001c9650: 277e 286d 6f75 6e74 5f69 6e66 6f2e 6f70 '~(mount_info.op │ │ │ -001c9660: 7469 6f6e 7320 7c0a 2020 2020 2020 6465 tions |. de │ │ │ -001c9670: 6661 756c 7428 2727 2727 2929 7e28 2727 fault(''''))~('' │ │ │ -001c9680: 2c27 2720 6966 2028 6d6f 756e 745f 696e ,'' if (mount_in │ │ │ -001c9690: 666f 2e6f 7074 696f 6e73 207c 2064 6566 fo.options | def │ │ │ -001c96a0: 6175 6c74 2827 2727 2729 2920 656c 7365 ault('''')) else │ │ │ -001c96b0: 2027 2727 2729 7e27 276e 6f64 6576 2727 '''')~''nodev'' │ │ │ -001c96c0: 0a20 2020 2020 207d 2920 7d7d 270a 2020 . }) }}'. │ │ │ -001c96d0: 7768 656e 3a0a 2020 2d20 2820 6e6f 7420 when:. - ( not │ │ │ -001c96e0: 2820 226b 6572 6e65 6c22 2069 6e20 616e ( "kernel" in an │ │ │ -001c96f0: 7369 626c 655f 6661 6374 732e 7061 636b sible_facts.pack │ │ │ -001c9700: 6167 6573 2061 6e64 2022 626f 6f74 6322 ages and "bootc" │ │ │ -001c9710: 2069 6e20 616e 7369 626c 655f 6661 6374 in ansible_fact │ │ │ -001c9720: 732e 7061 636b 6167 6573 0a20 2020 2061 s.packages. a │ │ │ -001c9730: 6e64 206e 6f74 2022 6f70 656e 7368 6966 nd not "openshif │ │ │ -001c9740: 742d 6b75 6265 6c65 7422 2069 6e20 616e t-kubelet" in an │ │ │ -001c9750: 7369 626c 655f 6661 6374 732e 7061 636b sible_facts.pack │ │ │ -001c9760: 6167 6573 2061 6e64 2022 6f73 7472 6565 ages and "ostree │ │ │ -001c9770: 2220 696e 2061 6e73 6962 6c65 5f70 726f " in ansible_pro │ │ │ -001c9780: 635f 636d 646c 696e 650a 2020 2020 2920 c_cmdline. ) │ │ │ -001c9790: 616e 6420 6e6f 7420 2820 616e 7369 626c and not ( ansibl │ │ │ -001c97a0: 655f 7669 7274 7561 6c69 7a61 7469 6f6e e_virtualization │ │ │ -001c97b0: 5f74 7970 6520 696e 205b 2264 6f63 6b65 _type in ["docke │ │ │ -001c97c0: 7222 2c20 226c 7863 222c 2022 6f70 656e r", "lxc", "open │ │ │ -001c97d0: 767a 222c 2022 706f 646d 616e 222c 0a20 vz", "podman",. │ │ │ -001c97e0: 2020 2022 636f 6e74 6169 6e65 7222 5d20 "container"] │ │ │ -001c97f0: 2920 290a 2020 2d20 2722 2f76 6172 2f6c ) ). - '"/var/l │ │ │ -001c9800: 6f67 2f61 7564 6974 2220 696e 2061 6e73 og/audit" in ans │ │ │ -001c9810: 6962 6c65 5f6d 6f75 6e74 7320 7c20 6d61 ible_mounts | ma │ │ │ -001c9820: 7028 6174 7472 6962 7574 653d 226d 6f75 p(attribute="mou │ │ │ -001c9830: 6e74 2229 207c 206c 6973 7427 0a20 202d nt") | list'. - │ │ │ -001c9840: 206d 6f75 6e74 5f69 6e66 6f20 6973 2064 mount_info is d │ │ │ -001c9850: 6566 696e 6564 2061 6e64 2022 6e6f 6465 efined and "node │ │ │ -001c9860: 7622 206e 6f74 2069 6e20 286d 6f75 6e74 v" not in (mount │ │ │ -001c9870: 5f69 6e66 6f2e 6f70 7469 6f6e 7320 7c20 _info.options | │ │ │ -001c9880: 6465 6661 756c 7428 2727 2929 0a20 2074 default('')). t │ │ │ -001c9890: 6167 733a 0a20 202d 204e 4953 542d 3830 ags:. - NIST-80 │ │ │ -001c98a0: 302d 3533 2d41 432d 360a 2020 2d20 4e49 0-53-AC-6. - NI │ │ │ -001c98b0: 5354 2d38 3030 2d35 332d 4143 2d36 2831 ST-800-53-AC-6(1 │ │ │ -001c98c0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35 ). - NIST-800-5 │ │ │ -001c98d0: 332d 434d 2d36 2861 290a 2020 2d20 4e49 3-CM-6(a). - NI │ │ │ -001c98e0: 5354 2d38 3030 2d35 332d 434d 2d37 2861 ST-800-53-CM-7(a │ │ │ -001c98f0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35 ). - NIST-800-5 │ │ │ -001c9900: 332d 434d 2d37 2862 290a 2020 2d20 4e49 3-CM-7(b). - NI │ │ │ -001c9910: 5354 2d38 3030 2d35 332d 4d50 2d37 0a20 ST-800-53-MP-7. │ │ │ -001c9920: 202d 2063 6f6e 6669 6775 7265 5f73 7472 - configure_str │ │ │ -001c9930: 6174 6567 790a 2020 2d20 6869 6768 5f64 ategy. - high_d │ │ │ -001c9940: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f isruption. - lo │ │ │ -001c9950: 775f 636f 6d70 6c65 7869 7479 0a20 202d w_complexity. - │ │ │ -001c9960: 206d 6564 6975 6d5f 7365 7665 7269 7479 medium_severity │ │ │ -001c9970: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f . - mount_optio │ │ │ -001c9980: 6e5f 7661 725f 6c6f 675f 6175 6469 745f n_var_log_audit_ │ │ │ -001c9990: 6e6f 6465 760a 2020 2d20 6e6f 5f72 6562 nodev. - no_reb │ │ │ -001c99a0: 6f6f 745f 6e65 6564 6564 0a0a 2d20 6e61 oot_needed..- na │ │ │ -001c99b0: 6d65 3a20 2741 6464 206e 6f64 6576 204f me: 'Add nodev O │ │ │ -001c99c0: 7074 696f 6e20 746f 202f 7661 722f 6c6f ption to /var/lo │ │ │ -001c99d0: 672f 6175 6469 743a 2045 6e73 7572 6520 g/audit: Ensure │ │ │ -001c99e0: 2f76 6172 2f6c 6f67 2f61 7564 6974 2069 /var/log/audit i │ │ │ -001c99f0: 7320 6d6f 756e 7465 6420 7769 7468 0a20 s mounted with. │ │ │ -001c9a00: 2020 206e 6f64 6576 206f 7074 696f 6e27 nodev option' │ │ │ -001c9a10: 0a20 2061 6e73 6962 6c65 2e70 6f73 6978 . ansible.posix │ │ │ -001c9a20: 2e6d 6f75 6e74 3a0a 2020 2020 7061 7468 .mount:. path │ │ │ -001c9a30: 3a20 2f76 6172 2f6c 6f67 2f61 7564 6974 : /var/log/audit │ │ │ -001c9a40: 0a20 2020 2073 7263 3a20 277b 7b20 6d6f . src: '{{ mo │ │ │ -001c9a50: 756e 745f 696e 666f 2e73 6f75 7263 6520 unt_info.source │ │ │ -001c9a60: 7c20 6465 6661 756c 7428 2727 2727 2920 | default('''') │ │ │ -001c9a70: 7d7d 270a 2020 2020 6f70 7473 3a20 277b }}'. opts: '{ │ │ │ -001c9a80: 7b20 6d6f 756e 745f 696e 666f 2e6f 7074 { mount_info.opt │ │ │ -001c9a90: 696f 6e73 207c 2064 6566 6175 6c74 2827 ions | default(' │ │ │ -001c9aa0: 2727 2729 207d 7d27 0a20 2020 2073 7461 ''') }}'. sta │ │ │ -001c9ab0: 7465 3a20 6d6f 756e 7465 640a 2020 2020 te: mounted. │ │ │ -001c9ac0: 6673 7479 7065 3a20 277b 7b20 6d6f 756e fstype: '{{ moun │ │ │ -001c9ad0: 745f 696e 666f 2e66 7374 7970 6520 7c20 t_info.fstype | │ │ │ -001c9ae0: 6465 6661 756c 7428 2727 2727 2920 7d7d default('''') }} │ │ │ -001c9af0: 270a 2020 7265 6769 7374 6572 3a20 6d6f '. register: mo │ │ │ -001c9b00: 756e 745f 7265 7375 6c74 0a20 2066 6169 unt_result. fai │ │ │ -001c9b10: 6c65 645f 7768 656e 3a0a 2020 2d20 6d6f led_when:. - mo │ │ │ -001c9b20: 756e 745f 7265 7375 6c74 2069 7320 6661 unt_result is fa │ │ │ -001c9b30: 696c 6564 0a20 202d 2027 2727 7461 7267 iled. - '''targ │ │ │ -001c9b40: 6574 2069 7320 6275 7379 2727 206e 6f74 et is busy'' not │ │ │ -001c9b50: 2069 6e20 286d 6f75 6e74 5f72 6573 756c in (mount_resul │ │ │ -001c9b60: 742e 6d73 6720 7c20 6465 6661 756c 7428 t.msg | default( │ │ │ -001c9b70: 2727 2727 2929 270a 2020 2d20 2727 2761 ''''))'. - '''a │ │ │ -001c9b80: 6c72 6561 6479 206d 6f75 6e74 6564 2727 lready mounted'' │ │ │ -001c9b90: 206e 6f74 2069 6e20 286d 6f75 6e74 5f72 not in (mount_r │ │ │ -001c9ba0: 6573 756c 742e 6d73 6720 7c20 6465 6661 esult.msg | defa │ │ │ -001c9bb0: 756c 7428 2727 2727 2929 270a 2020 7768 ult(''''))'. wh │ │ │ -001c9bc0: 656e 3a0a 2020 2d20 2820 6e6f 7420 2820 en:. - ( not ( │ │ │ -001c9bd0: 226b 6572 6e65 6c22 2069 6e20 616e 7369 "kernel" in ansi │ │ │ -001c9be0: 626c 655f 6661 6374 732e 7061 636b 6167 ble_facts.packag │ │ │ -001c9bf0: 6573 2061 6e64 2022 626f 6f74 6322 2069 es and "bootc" i │ │ │ -001c9c00: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ -001c9c10: 7061 636b 6167 6573 0a20 2020 2061 6e64 packages. and │ │ │ -001c9c20: 206e 6f74 2022 6f70 656e 7368 6966 742d not "openshift- │ │ │ -001c9c30: 6b75 6265 6c65 7422 2069 6e20 616e 7369 kubelet" in ansi │ │ │ -001c9c40: 626c 655f 6661 6374 732e 7061 636b 6167 ble_facts.packag │ │ │ -001c9c50: 6573 2061 6e64 2022 6f73 7472 6565 2220 es and "ostree" │ │ │ -001c9c60: 696e 2061 6e73 6962 6c65 5f70 726f 635f in ansible_proc_ │ │ │ -001c9c70: 636d 646c 696e 650a 2020 2020 2920 616e cmdline. ) an │ │ │ -001c9c80: 6420 6e6f 7420 2820 616e 7369 626c 655f d not ( ansible_ │ │ │ -001c9c90: 7669 7274 7561 6c69 7a61 7469 6f6e 5f74 virtualization_t │ │ │ -001c9ca0: 7970 6520 696e 205b 2264 6f63 6b65 7222 ype in ["docker" │ │ │ -001c9cb0: 2c20 226c 7863 222c 2022 6f70 656e 767a , "lxc", "openvz │ │ │ -001c9cc0: 222c 2022 706f 646d 616e 222c 0a20 2020 ", "podman",. │ │ │ -001c9cd0: 2022 636f 6e74 6169 6e65 7222 5d20 2920 "container"] ) │ │ │ -001c9ce0: 290a 2020 2d20 2722 2f76 6172 2f6c 6f67 ). - '"/var/log │ │ │ -001c9cf0: 2f61 7564 6974 2220 696e 2061 6e73 6962 /audit" in ansib │ │ │ -001c9d00: 6c65 5f6d 6f75 6e74 7320 7c20 6d61 7028 le_mounts | map( │ │ │ -001c9d10: 6174 7472 6962 7574 653d 226d 6f75 6e74 attribute="mount │ │ │ -001c9d20: 2229 207c 206c 6973 7427 0a20 202d 206d ") | list'. - m │ │ │ -001c9d30: 6f75 6e74 5f69 6e66 6f20 6973 2064 6566 ount_info is def │ │ │ -001c9d40: 696e 6564 0a20 202d 2028 6465 7669 6365 ined. - (device │ │ │ -001c9d50: 5f6e 616d 652e 7374 646f 7574 2069 7320 _name.stdout is │ │ │ -001c9d60: 6465 6669 6e65 6420 616e 6420 2864 6576 defined and (dev │ │ │ -001c9d70: 6963 655f 6e61 6d65 2e73 7464 6f75 7420 ice_name.stdout │ │ │ -001c9d80: 7c20 6c65 6e67 7468 2026 6774 3b20 3029 | length > 0) │ │ │ -001c9d90: 2920 6f72 2028 222d 2d66 7374 6162 220a ) or ("--fstab". │ │ │ -001c9da0: 2020 2020 7c20 6c65 6e67 7468 203d 3d20 | length == │ │ │ -001c9db0: 3029 0a20 2074 6167 733a 0a20 202d 204e 0). tags:. - N │ │ │ -001c9dc0: 4953 542d 3830 302d 3533 2d41 432d 360a IST-800-53-AC-6. │ │ │ -001c9dd0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d - NIST-800-53- │ │ │ -001c9de0: 4143 2d36 2831 290a 2020 2d20 4e49 5354 AC-6(1). - NIST │ │ │ -001c9df0: 2d38 3030 2d35 332d 434d 2d36 2861 290a -800-53-CM-6(a). │ │ │ -001c9e00: 2020 2d20 4e49 5354 2d38 3030 2d35 332d - NIST-800-53- │ │ │ -001c9e10: 434d 2d37 2861 290a 2020 2d20 4e49 5354 CM-7(a). - NIST │ │ │ -001c9e20: 2d38 3030 2d35 332d 434d 2d37 2862 290a -800-53-CM-7(b). │ │ │ -001c9e30: 2020 2d20 4e49 5354 2d38 3030 2d35 332d - NIST-800-53- │ │ │ -001c9e40: 4d50 2d37 0a20 202d 2063 6f6e 6669 6775 MP-7. - configu │ │ │ -001c9e50: 7265 5f73 7472 6174 6567 790a 2020 2d20 re_strategy. - │ │ │ -001c9e60: 6869 6768 5f64 6973 7275 7074 696f 6e0a high_disruption. │ │ │ -001c9e70: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869 - low_complexi │ │ │ -001c9e80: 7479 0a20 202d 206d 6564 6975 6d5f 7365 ty. - medium_se │ │ │ -001c9e90: 7665 7269 7479 0a20 202d 206d 6f75 6e74 verity. - mount │ │ │ -001c9ea0: 5f6f 7074 696f 6e5f 7661 725f 6c6f 675f _option_var_log_ │ │ │ -001c9eb0: 6175 6469 745f 6e6f 6465 760a 2020 2d20 audit_nodev. - │ │ │ -001c9ec0: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564 no_reboot_needed │ │ │ -001c9ed0: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f .Remediation She │ │ │ -001c9f90: 6c6c 2073 6372 6970 7420 e287 b23c 2f61 ll script ...
# Remediation i
│ │ │ -001ca060: 7320 6170 706c 6963 6162 6c65 206f 6e6c  s applicable onl
│ │ │ -001ca070: 7920 696e 2063 6572 7461 696e 2070 6c61  y in certain pla
│ │ │ -001ca080: 7466 6f72 6d73 0a69 6620 2820 2120 2820  tforms.if ( ! ( 
│ │ │ -001ca090: 7b20 7270 6d20 2d2d 7175 6965 7420 2d71  { rpm --quiet -q
│ │ │ -001ca0a0: 206b 6572 6e65 6c20 3b7d 2026 616d 703b   kernel ;} &
│ │ │ -001ca0b0: 2661 6d70 3b20 7b20 7270 6d20 2d2d 7175  & { rpm --qu
│ │ │ -001ca0c0: 6965 7420 2d71 2062 6f6f 7463 203b 7d20  iet -q bootc ;} 
│ │ │ -001ca0d0: 2661 6d70 3b26 616d 703b 207b 2021 2072  && { ! r
│ │ │ -001ca0e0: 706d 202d 2d71 7569 6574 202d 7120 6f70  pm --quiet -q op
│ │ │ -001ca0f0: 656e 7368 6966 742d 6b75 6265 6c65 7420  enshift-kubelet 
│ │ │ -001ca100: 3b7d 2026 616d 703b 2661 6d70 3b20 285b  ;} && ([
│ │ │ -001ca110: 202d 6620 2f72 756e 2f6f 7374 7265 652d   -f /run/ostree-
│ │ │ -001ca120: 626f 6f74 6564 205d 207c 7c20 5b20 2d4c  booted ] || [ -L
│ │ │ -001ca130: 202f 6f73 7472 6565 205d 2920 2920 2661   /ostree ]) ) &a
│ │ │ -001ca140: 6d70 3b26 616d 703b 2021 2028 205b 202d  mp;& ! ( [ -
│ │ │ -001ca150: 6620 2f2e 646f 636b 6572 656e 7620 5d20  f /.dockerenv ] 
│ │ │ -001ca160: 7c7c 205b 202d 6620 2f72 756e 2f2e 636f  || [ -f /run/.co
│ │ │ -001ca170: 6e74 6169 6e65 7265 6e76 205d 2029 2029  ntainerenv ] ) )
│ │ │ -001ca180: 2026 616d 703b 2661 6d70 3b20 7b20 2820   && { ( 
│ │ │ -001ca190: 6669 6e64 6d6e 7420 2d2d 6b65 726e 656c  findmnt --kernel
│ │ │ -001ca1a0: 2022 2f76 6172 2f6c 6f67 2f61 7564 6974   "/var/log/audit
│ │ │ -001ca1b0: 2220 2667 743b 202f 6465 762f 6e75 6c6c  " > /dev/null
│ │ │ -001ca1c0: 207c 7c20 6669 6e64 6d6e 7420 2d2d 6673   || findmnt --fs
│ │ │ -001ca1d0: 7461 6220 222f 7661 722f 6c6f 672f 6175  tab "/var/log/au
│ │ │ -001ca1e0: 6469 7422 2026 6774 3b20 2f64 6576 2f6e  dit" > /dev/n
│ │ │ -001ca1f0: 756c 6c20 293b 207d 3b20 7468 656e 0a0a  ull ); }; then..
│ │ │ -001ca200: 6675 6e63 7469 6f6e 2070 6572 666f 726d  function perform
│ │ │ -001ca210: 5f72 656d 6564 6961 7469 6f6e 207b 0a0a  _remediation {..
│ │ │ -001ca220: 2020 2020 0a20 2020 2020 2020 2023 2074      .        # t
│ │ │ -001ca230: 6865 206d 6f75 6e74 2070 6f69 6e74 202f  he mount point /
│ │ │ -001ca240: 7661 722f 6c6f 672f 6175 6469 7420 6861  var/log/audit ha
│ │ │ -001ca250: 7320 746f 2062 6520 6465 6669 6e65 6420  s to be defined 
│ │ │ -001ca260: 696e 202f 6574 632f 6673 7461 620a 2020  in /etc/fstab.  
│ │ │ -001ca270: 2020 2020 2020 2320 6265 666f 7265 2074        # before t
│ │ │ -001ca280: 6869 7320 7265 6d65 6469 6174 696f 6e20  his remediation 
│ │ │ -001ca290: 6361 6e20 6265 2065 7865 6375 7465 642e  can be executed.
│ │ │ -001ca2a0: 2049 6e20 6361 7365 2069 7420 6973 206e   In case it is n
│ │ │ -001ca2b0: 6f74 2064 6566 696e 6564 2c20 7468 650a  ot defined, the.
│ │ │ -001ca2c0: 2020 2020 2020 2020 2320 7265 6d65 6469          # remedi
│ │ │ -001ca2d0: 6174 696f 6e20 6162 6f72 7473 2061 6e64  ation aborts and
│ │ │ -001ca2e0: 206e 6f20 6368 616e 6765 7320 7265 6761   no changes rega
│ │ │ -001ca2f0: 7264 696e 6720 7468 6520 6d6f 756e 7420  rding the mount 
│ │ │ -001ca300: 706f 696e 7420 6172 6520 646f 6e65 2e0a  point are done..
│ │ │ -001ca310: 2020 2020 2020 2020 6d6f 756e 745f 706f          mount_po
│ │ │ -001ca320: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ -001ca330: 3d22 2428 7072 696e 7466 2022 5e5b 5b3a  ="$(printf "^[[:
│ │ │ -001ca340: 7370 6163 653a 5d5d 2a5b 5e23 5d2e 2a5b  space:]]*[^#].*[
│ │ │ -001ca350: 5b3a 7370 6163 653a 5d5d 2573 5b5b 3a73  [:space:]]%s[[:s
│ │ │ -001ca360: 7061 6365 3a5d 5d22 2022 2f76 6172 2f6c  pace:]]" "/var/l
│ │ │ -001ca370: 6f67 2f61 7564 6974 2229 220a 0a20 2020  og/audit")"..   
│ │ │ -001ca380: 2067 7265 7020 2224 6d6f 756e 745f 706f   grep "$mount_po
│ │ │ -001ca390: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ -001ca3a0: 2220 2d71 202f 6574 632f 6673 7461 6220  " -q /etc/fstab 
│ │ │ -001ca3b0: 5c0a 2020 2020 2020 2020 7c7c 207b 2065  \.        || { e
│ │ │ -001ca3c0: 6368 6f20 2254 6865 206d 6f75 6e74 2070  cho "The mount p
│ │ │ -001ca3d0: 6f69 6e74 2027 2f76 6172 2f6c 6f67 2f61  oint '/var/log/a
│ │ │ -001ca3e0: 7564 6974 2720 6973 206e 6f74 2065 7665  udit' is not eve
│ │ │ -001ca3f0: 6e20 696e 202f 6574 632f 6673 7461 622c  n in /etc/fstab,
│ │ │ -001ca400: 2073 6f20 7765 2063 616e 2774 2073 6574   so we can't set
│ │ │ -001ca410: 2075 7020 6d6f 756e 7420 6f70 7469 6f6e   up mount option
│ │ │ -001ca420: 7322 2026 6774 3b26 616d 703b 323b 0a20  s" >&2;. 
│ │ │ -001ca430: 2020 2020 2020 2020 2020 2020 2020 2065                 e
│ │ │ -001ca440: 6368 6f20 224e 6f74 2072 656d 6564 6961  cho "Not remedia
│ │ │ -001ca450: 7469 6e67 2c20 6265 6361 7573 6520 7468  ting, because th
│ │ │ -001ca460: 6572 6520 6973 206e 6f20 7265 636f 7264  ere is no record
│ │ │ -001ca470: 206f 6620 2f76 6172 2f6c 6f67 2f61 7564   of /var/log/aud
│ │ │ -001ca480: 6974 2069 6e20 2f65 7463 2f66 7374 6162  it in /etc/fstab
│ │ │ -001ca490: 2220 2667 743b 2661 6d70 3b32 3b20 7265  " >&2; re
│ │ │ -001ca4a0: 7475 726e 2031 3b20 7d0a 2020 2020 0a0a  turn 1; }.    ..
│ │ │ -001ca4b0: 0a20 2020 206d 6f75 6e74 5f70 6f69 6e74  .    mount_point
│ │ │ -001ca4c0: 5f6d 6174 6368 5f72 6567 6578 703d 2224  _match_regexp="$
│ │ │ -001ca4d0: 2870 7269 6e74 6620 225e 5b5b 3a73 7061  (printf "^[[:spa
│ │ │ -001ca4e0: 6365 3a5d 5d2a 5b5e 235d 2e2a 5b5b 3a73  ce:]]*[^#].*[[:s
│ │ │ -001ca4f0: 7061 6365 3a5d 5d25 735b 5b3a 7370 6163  pace:]]%s[[:spac
│ │ │ -001ca500: 653a 5d5d 2220 2f76 6172 2f6c 6f67 2f61  e:]]" /var/log/a
│ │ │ -001ca510: 7564 6974 2922 0a0a 2020 2020 2320 4966  udit)"..    # If
│ │ │ -001ca520: 2074 6865 206d 6f75 6e74 2070 6f69 6e74   the mount point
│ │ │ -001ca530: 2069 7320 6e6f 7420 696e 202f 6574 632f   is not in /etc/
│ │ │ -001ca540: 6673 7461 622c 2067 6574 2070 7265 7669  fstab, get previ
│ │ │ -001ca550: 6f75 7320 6d6f 756e 7420 6f70 7469 6f6e  ous mount option
│ │ │ -001ca560: 7320 6672 6f6d 202f 6574 632f 6d74 6162  s from /etc/mtab
│ │ │ -001ca570: 0a20 2020 2069 6620 2120 6772 6570 202d  .    if ! grep -
│ │ │ -001ca580: 7120 2224 6d6f 756e 745f 706f 696e 745f  q "$mount_point_
│ │ │ -001ca590: 6d61 7463 685f 7265 6765 7870 2220 2f65  match_regexp" /e
│ │ │ -001ca5a0: 7463 2f66 7374 6162 3b20 7468 656e 0a20  tc/fstab; then. 
│ │ │ -001ca5b0: 2020 2020 2020 2023 2072 756e 7469 6d65         # runtime
│ │ │ -001ca5c0: 206f 7074 7320 7769 7468 6f75 7420 736f   opts without so
│ │ │ -001ca5d0: 6d65 2061 7574 6f6d 6174 6963 206b 6572  me automatic ker
│ │ │ -001ca5e0: 6e65 6c2f 7573 6572 7370 6163 652d 6164  nel/userspace-ad
│ │ │ -001ca5f0: 6465 6420 6465 6661 756c 7473 0a20 2020  ded defaults.   
│ │ │ -001ca600: 2020 2020 2070 7265 7669 6f75 735f 6d6f       previous_mo
│ │ │ -001ca610: 756e 745f 6f70 7473 3d24 2867 7265 7020  unt_opts=$(grep 
│ │ │ -001ca620: 2224 6d6f 756e 745f 706f 696e 745f 6d61  "$mount_point_ma
│ │ │ -001ca630: 7463 685f 7265 6765 7870 2220 2f65 7463  tch_regexp" /etc
│ │ │ -001ca640: 2f6d 7461 6220 7c20 6865 6164 202d 3120  /mtab | head -1 
│ │ │ -001ca650: 7c20 2061 776b 2027 7b70 7269 6e74 2024  |  awk '{print $
│ │ │ -001ca660: 347d 2720 5c0a 2020 2020 2020 2020 2020  4}' \.          
│ │ │ -001ca670: 2020 2020 2020 2020 2020 7c20 7365 6420            | sed 
│ │ │ -001ca680: 2d45 2022 732f 2872 777c 6465 6661 756c  -E "s/(rw|defaul
│ │ │ -001ca690: 7473 7c73 6563 6c61 6265 6c7c 6e6f 6465  ts|seclabel|node
│ │ │ -001ca6a0: 7629 282c 7c24 292f 2f67 3b73 2f2c 242f  v)(,|$)//g;s/,$/
│ │ │ -001ca6b0: 2f22 290a 2020 2020 2020 2020 5b20 2224  /").        [ "$
│ │ │ -001ca6c0: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ -001ca6d0: 7074 7322 205d 2026 616d 703b 2661 6d70  pts" ] &&
│ │ │ -001ca6e0: 3b20 7072 6576 696f 7573 5f6d 6f75 6e74  ; previous_mount
│ │ │ -001ca6f0: 5f6f 7074 732b 3d22 2c22 0a20 2020 2020  _opts+=",".     
│ │ │ -001ca700: 2020 2023 2049 6e20 6973 6f39 3636 3020     # In iso9660 
│ │ │ -001ca710: 6669 6c65 7379 7374 656d 7320 6d74 6162  filesystems mtab
│ │ │ -001ca720: 2063 6f75 6c64 2064 6573 6372 6962 6520   could describe 
│ │ │ -001ca730: 6120 2262 6c6f 636b 7369 7a65 2220 7661  a "blocksize" va
│ │ │ -001ca740: 6c75 652c 2074 6869 7320 7368 6f75 6c64  lue, this should
│ │ │ -001ca750: 2062 6520 7265 666c 6563 7465 6420 696e   be reflected in
│ │ │ -001ca760: 0a20 2020 2020 2020 2023 2066 7374 6162  .        # fstab
│ │ │ -001ca770: 2061 7320 2262 6c6f 636b 222e 2020 5468   as "block".  Th
│ │ │ -001ca780: 6520 6e65 7874 2076 6172 6961 626c 6520  e next variable 
│ │ │ -001ca790: 6973 2074 6f20 7361 7469 7366 7920 7368  is to satisfy sh
│ │ │ -001ca7a0: 656c 6c63 6865 636b 2053 4332 3035 302e  ellcheck SC2050.
│ │ │ -001ca7b0: 0a20 2020 2020 2020 2066 735f 7479 7065  .        fs_type
│ │ │ -001ca7c0: 3d22 220a 2020 2020 2020 2020 6966 205b  ="".        if [
│ │ │ -001ca7d0: 2020 2224 6673 5f74 7970 6522 203d 3d20    "$fs_type" == 
│ │ │ -001ca7e0: 2269 736f 3936 3630 2220 5d20 3b20 7468  "iso9660" ] ; th
│ │ │ -001ca7f0: 656e 0a20 2020 2020 2020 2020 2020 2070  en.            p
│ │ │ -001ca800: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ -001ca810: 7473 3d24 2873 6564 2027 732f 626c 6f63  ts=$(sed 's/bloc
│ │ │ -001ca820: 6b73 697a 653d 2f62 6c6f 636b 3d2f 2720  ksize=/block=/' 
│ │ │ -001ca830: 266c 743b 266c 743b 266c 743b 2022 2470  <<< "$p
│ │ │ -001ca840: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ -001ca850: 7473 2229 0a20 2020 2020 2020 2066 690a  ts").        fi.
│ │ │ -001ca860: 2020 2020 2020 2020 6563 686f 2022 202f          echo " /
│ │ │ -001ca870: 7661 722f 6c6f 672f 6175 6469 7420 2064  var/log/audit  d
│ │ │ -001ca880: 6566 6175 6c74 732c 247b 7072 6576 696f  efaults,${previo
│ │ │ -001ca890: 7573 5f6d 6f75 6e74 5f6f 7074 737d 6e6f  us_mount_opts}no
│ │ │ -001ca8a0: 6465 7620 3020 3022 2026 6774 3b26 6774  dev 0 0" >>
│ │ │ -001ca8b0: 3b20 2f65 7463 2f66 7374 6162 0a20 2020  ; /etc/fstab.   
│ │ │ -001ca8c0: 2023 2049 6620 7468 6520 6d6f 756e 745f   # If the mount_
│ │ │ -001ca8d0: 6f70 7420 6f70 7469 6f6e 2069 7320 6e6f  opt option is no
│ │ │ -001ca8e0: 7420 616c 7265 6164 7920 696e 2074 6865  t already in the
│ │ │ -001ca8f0: 206d 6f75 6e74 2070 6f69 6e74 2773 202f   mount point's /
│ │ │ -001ca900: 6574 632f 6673 7461 6220 656e 7472 792c  etc/fstab entry,
│ │ │ -001ca910: 2061 6464 2069 740a 2020 2020 656c 6966   add it.    elif
│ │ │ -001ca920: 2021 2067 7265 7020 2224 6d6f 756e 745f   ! grep "$mount_
│ │ │ -001ca930: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ -001ca940: 7870 2220 2f65 7463 2f66 7374 6162 207c  xp" /etc/fstab |
│ │ │ -001ca950: 2067 7265 7020 2d71 2022 6e6f 6465 7622   grep -q "nodev"
│ │ │ -001ca960: 3b20 7468 656e 0a20 2020 2020 2020 2070  ; then.        p
│ │ │ -001ca970: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ -001ca980: 7473 3d24 2867 7265 7020 2224 6d6f 756e  ts=$(grep "$moun
│ │ │ -001ca990: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ -001ca9a0: 6765 7870 2220 2f65 7463 2f66 7374 6162  gexp" /etc/fstab
│ │ │ -001ca9b0: 207c 2061 776b 2027 7b70 7269 6e74 2024   | awk '{print $
│ │ │ -001ca9c0: 347d 2729 0a20 2020 2020 2020 2073 6564  4}').        sed
│ │ │ -001ca9d0: 202d 6920 2273 7c5c 2824 7b6d 6f75 6e74   -i "s|\(${mount
│ │ │ -001ca9e0: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ -001ca9f0: 6578 707d 2e2a 247b 7072 6576 696f 7573  exp}.*${previous
│ │ │ -001caa00: 5f6d 6f75 6e74 5f6f 7074 737d 5c29 7c5c  _mount_opts}\)|\
│ │ │ -001caa10: 312c 6e6f 6465 767c 2220 2f65 7463 2f66  1,nodev|" /etc/f
│ │ │ -001caa20: 7374 6162 0a20 2020 2066 690a 0a0a 2020  stab.    fi...  
│ │ │ -001caa30: 2020 6966 206d 6b64 6972 202d 7020 222f    if mkdir -p "/
│ │ │ -001caa40: 7661 722f 6c6f 672f 6175 6469 7422 3b20  var/log/audit"; 
│ │ │ -001caa50: 7468 656e 0a20 2020 2020 2020 2069 6620  then.        if 
│ │ │ -001caa60: 6d6f 756e 7470 6f69 6e74 202d 7120 222f  mountpoint -q "/
│ │ │ -001caa70: 7661 722f 6c6f 672f 6175 6469 7422 3b20  var/log/audit"; 
│ │ │ -001caa80: 7468 656e 0a20 2020 2020 2020 2020 2020  then.           
│ │ │ -001caa90: 206d 6f75 6e74 202d 6f20 7265 6d6f 756e   mount -o remoun
│ │ │ -001caaa0: 7420 2d2d 7461 7267 6574 2022 2f76 6172  t --target "/var
│ │ │ -001caab0: 2f6c 6f67 2f61 7564 6974 220a 2020 2020  /log/audit".    
│ │ │ -001caac0: 2020 2020 6669 0a20 2020 2066 690a 7d0a      fi.    fi.}.
│ │ │ -001caad0: 0a70 6572 666f 726d 5f72 656d 6564 6961  .perform_remedia
│ │ │ -001caae0: 7469 6f6e 0a0a 656c 7365 0a20 2020 2026  tion..else.    &
│ │ │ -001caaf0: 6774 3b26 616d 703b 3220 6563 686f 2027  gt;&2 echo '
│ │ │ -001cab00: 5265 6d65 6469 6174 696f 6e20 6973 206e  Remediation is n
│ │ │ -001cab10: 6f74 2061 7070 6c69 6361 626c 652c 206e  ot applicable, n
│ │ │ -001cab20: 6f74 6869 6e67 2077 6173 2064 6f6e 6527  othing was done'
│ │ │ -001cab30: 0a66 690a 3c2f 636f 6465 3e3c 2f70 7265  .fi.

< │ │ │ +001c84c0: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +001c84d0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +001c84e0: 7365 2220 6964 3d22 6964 3532 3022 3e3c se" id="id520">< │ │ │ +001c84f0: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +001c8500: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +001c8510: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +001c8520: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +001c8530: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Disruption:< │ │ │ +001c8580: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ +001c85b0: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
R │ │ │ -001ca020: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -001ca030: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c2f alse
Complex │ │ │ +001c8540: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ +001c8550: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
high
Rebo │ │ │ +001c8590: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +001c85a0: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
configure
│ │ │ +001c85e0: 3c70 7265 3e3c 636f 6465 3e2d 206e 616d
- nam
│ │ │ +001c85f0: 653a 2047 6174 6865 7220 7468 6520 7061  e: Gather the pa
│ │ │ +001c8600: 636b 6167 6520 6661 6374 730a 2020 7061  ckage facts.  pa
│ │ │ +001c8610: 636b 6167 655f 6661 6374 733a 0a20 2020  ckage_facts:.   
│ │ │ +001c8620: 206d 616e 6167 6572 3a20 6175 746f 0a20   manager: auto. 
│ │ │ +001c8630: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ +001c8640: 3830 302d 3533 2d41 432d 360a 2020 2d20  800-53-AC-6.  - 
│ │ │ +001c8650: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ +001c8660: 2831 290a 2020 2d20 4e49 5354 2d38 3030  (1).  - NIST-800
│ │ │ +001c8670: 2d35 332d 434d 2d36 2861 290a 2020 2d20  -53-CM-6(a).  - 
│ │ │ +001c8680: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ +001c8690: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ +001c86a0: 2d35 332d 434d 2d37 2862 290a 2020 2d20  -53-CM-7(b).  - 
│ │ │ +001c86b0: 4e49 5354 2d38 3030 2d35 332d 4d50 2d37  NIST-800-53-MP-7
│ │ │ +001c86c0: 0a20 202d 2063 6f6e 6669 6775 7265 5f73  .  - configure_s
│ │ │ +001c86d0: 7472 6174 6567 790a 2020 2d20 6869 6768  trategy.  - high
│ │ │ +001c86e0: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +001c86f0: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ +001c8700: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ +001c8710: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074  ty.  - mount_opt
│ │ │ +001c8720: 696f 6e5f 7661 725f 6c6f 675f 6175 6469  ion_var_log_audi
│ │ │ +001c8730: 745f 6e6f 6465 760a 2020 2d20 6e6f 5f72  t_nodev.  - no_r
│ │ │ +001c8740: 6562 6f6f 745f 6e65 6564 6564 0a0a 2d20  eboot_needed..- 
│ │ │ +001c8750: 6e61 6d65 3a20 2741 6464 206e 6f64 6576  name: 'Add nodev
│ │ │ +001c8760: 204f 7074 696f 6e20 746f 202f 7661 722f   Option to /var/
│ │ │ +001c8770: 6c6f 672f 6175 6469 743a 2043 6865 636b  log/audit: Check
│ │ │ +001c8780: 2069 6e66 6f72 6d61 7469 6f6e 2061 7373   information ass
│ │ │ +001c8790: 6f63 6961 7465 6420 746f 206d 6f75 6e74  ociated to mount
│ │ │ +001c87a0: 706f 696e 7427 0a20 2061 6e73 6962 6c65  point'.  ansible
│ │ │ +001c87b0: 2e62 7569 6c74 696e 2e63 6f6d 6d61 6e64  .builtin.command
│ │ │ +001c87c0: 3a20 6669 6e64 6d6e 7420 2d2d 6673 7461  : findmnt --fsta
│ │ │ +001c87d0: 6220 272f 7661 722f 6c6f 672f 6175 6469  b '/var/log/audi
│ │ │ +001c87e0: 7427 0a20 2072 6567 6973 7465 723a 2064  t'.  register: d
│ │ │ +001c87f0: 6576 6963 655f 6e61 6d65 0a20 2066 6169  evice_name.  fai
│ │ │ +001c8800: 6c65 645f 7768 656e 3a20 6465 7669 6365  led_when: device
│ │ │ +001c8810: 5f6e 616d 652e 7263 2026 6774 3b20 310a  _name.rc > 1.
│ │ │ +001c8820: 2020 6368 616e 6765 645f 7768 656e 3a20    changed_when: 
│ │ │ +001c8830: 6661 6c73 650a 2020 6368 6563 6b5f 6d6f  false.  check_mo
│ │ │ +001c8840: 6465 3a20 6661 6c73 650a 2020 7768 656e  de: false.  when
│ │ │ +001c8850: 3a0a 2020 2d20 2820 6e6f 7420 2820 226b  :.  - ( not ( "k
│ │ │ +001c8860: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ +001c8870: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +001c8880: 2061 6e64 2022 626f 6f74 6322 2069 6e20   and "bootc" in 
│ │ │ +001c8890: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001c88a0: 636b 6167 6573 0a20 2020 2061 6e64 206e  ckages.    and n
│ │ │ +001c88b0: 6f74 2022 6f70 656e 7368 6966 742d 6b75  ot "openshift-ku
│ │ │ +001c88c0: 6265 6c65 7422 2069 6e20 616e 7369 626c  belet" in ansibl
│ │ │ +001c88d0: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +001c88e0: 2061 6e64 2022 6f73 7472 6565 2220 696e   and "ostree" in
│ │ │ +001c88f0: 2061 6e73 6962 6c65 5f70 726f 635f 636d   ansible_proc_cm
│ │ │ +001c8900: 646c 696e 650a 2020 2020 2920 616e 6420  dline.    ) and 
│ │ │ +001c8910: 6e6f 7420 2820 616e 7369 626c 655f 7669  not ( ansible_vi
│ │ │ +001c8920: 7274 7561 6c69 7a61 7469 6f6e 5f74 7970  rtualization_typ
│ │ │ +001c8930: 6520 696e 205b 2264 6f63 6b65 7222 2c20  e in ["docker", 
│ │ │ +001c8940: 226c 7863 222c 2022 6f70 656e 767a 222c  "lxc", "openvz",
│ │ │ +001c8950: 2022 706f 646d 616e 222c 0a20 2020 2022   "podman",.    "
│ │ │ +001c8960: 636f 6e74 6169 6e65 7222 5d20 2920 290a  container"] ) ).
│ │ │ +001c8970: 2020 2d20 2722 2f76 6172 2f6c 6f67 2f61    - '"/var/log/a
│ │ │ +001c8980: 7564 6974 2220 696e 2061 6e73 6962 6c65  udit" in ansible
│ │ │ +001c8990: 5f6d 6f75 6e74 7320 7c20 6d61 7028 6174  _mounts | map(at
│ │ │ +001c89a0: 7472 6962 7574 653d 226d 6f75 6e74 2229  tribute="mount")
│ │ │ +001c89b0: 207c 206c 6973 7427 0a20 2074 6167 733a   | list'.  tags:
│ │ │ +001c89c0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001c89d0: 2d41 432d 360a 2020 2d20 4e49 5354 2d38  -AC-6.  - NIST-8
│ │ │ +001c89e0: 3030 2d35 332d 4143 2d36 2831 290a 2020  00-53-AC-6(1).  
│ │ │ +001c89f0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +001c8a00: 2d36 2861 290a 2020 2d20 4e49 5354 2d38  -6(a).  - NIST-8
│ │ │ +001c8a10: 3030 2d35 332d 434d 2d37 2861 290a 2020  00-53-CM-7(a).  
│ │ │ +001c8a20: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +001c8a30: 2d37 2862 290a 2020 2d20 4e49 5354 2d38  -7(b).  - NIST-8
│ │ │ +001c8a40: 3030 2d35 332d 4d50 2d37 0a20 202d 2063  00-53-MP-7.  - c
│ │ │ +001c8a50: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ +001c8a60: 790a 2020 2d20 6869 6768 5f64 6973 7275  y.  - high_disru
│ │ │ +001c8a70: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f  ption.  - low_co
│ │ │ +001c8a80: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ +001c8a90: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ +001c8aa0: 206d 6f75 6e74 5f6f 7074 696f 6e5f 7661   mount_option_va
│ │ │ +001c8ab0: 725f 6c6f 675f 6175 6469 745f 6e6f 6465  r_log_audit_node
│ │ │ +001c8ac0: 760a 2020 2d20 6e6f 5f72 6562 6f6f 745f  v.  - no_reboot_
│ │ │ +001c8ad0: 6e65 6564 6564 0a0a 2d20 6e61 6d65 3a20  needed..- name: 
│ │ │ +001c8ae0: 2741 6464 206e 6f64 6576 204f 7074 696f  'Add nodev Optio
│ │ │ +001c8af0: 6e20 746f 202f 7661 722f 6c6f 672f 6175  n to /var/log/au
│ │ │ +001c8b00: 6469 743a 2043 7265 6174 6520 6d6f 756e  dit: Create moun
│ │ │ +001c8b10: 745f 696e 666f 2064 6963 7469 6f6e 6172  t_info dictionar
│ │ │ +001c8b20: 7920 7661 7269 6162 6c65 270a 2020 7365  y variable'.  se
│ │ │ +001c8b30: 745f 6661 6374 3a0a 2020 2020 6d6f 756e  t_fact:.    moun
│ │ │ +001c8b40: 745f 696e 666f 3a20 277b 7b20 6d6f 756e  t_info: '{{ moun
│ │ │ +001c8b50: 745f 696e 666f 7c64 6566 6175 6c74 287b  t_info|default({
│ │ │ +001c8b60: 7d29 7c63 6f6d 6269 6e65 287b 6974 656d  })|combine({item
│ │ │ +001c8b70: 2e30 3a20 6974 656d 2e31 7d29 207d 7d27  .0: item.1}) }}'
│ │ │ +001c8b80: 0a20 2077 6974 685f 746f 6765 7468 6572  .  with_together
│ │ │ +001c8b90: 3a0a 2020 2d20 277b 7b20 6465 7669 6365  :.  - '{{ device
│ │ │ +001c8ba0: 5f6e 616d 652e 7374 646f 7574 5f6c 696e  _name.stdout_lin
│ │ │ +001c8bb0: 6573 5b30 5d2e 7370 6c69 7428 2920 7c20  es[0].split() | 
│ │ │ +001c8bc0: 6d61 7028 2727 6c6f 7765 7227 2729 207c  map(''lower'') |
│ │ │ +001c8bd0: 206c 6973 7420 7d7d 270a 2020 2d20 277b   list }}'.  - '{
│ │ │ +001c8be0: 7b20 6465 7669 6365 5f6e 616d 652e 7374  { device_name.st
│ │ │ +001c8bf0: 646f 7574 5f6c 696e 6573 5b31 5d2e 7370  dout_lines[1].sp
│ │ │ +001c8c00: 6c69 7428 2920 7c20 6c69 7374 207d 7d27  lit() | list }}'
│ │ │ +001c8c10: 0a20 2077 6865 6e3a 0a20 202d 2028 206e  .  when:.  - ( n
│ │ │ +001c8c20: 6f74 2028 2022 6b65 726e 656c 2220 696e  ot ( "kernel" in
│ │ │ +001c8c30: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001c8c40: 6163 6b61 6765 7320 616e 6420 2262 6f6f  ackages and "boo
│ │ │ +001c8c50: 7463 2220 696e 2061 6e73 6962 6c65 5f66  tc" in ansible_f
│ │ │ +001c8c60: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ +001c8c70: 2020 616e 6420 6e6f 7420 226f 7065 6e73    and not "opens
│ │ │ +001c8c80: 6869 6674 2d6b 7562 656c 6574 2220 696e  hift-kubelet" in
│ │ │ +001c8c90: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001c8ca0: 6163 6b61 6765 7320 616e 6420 226f 7374  ackages and "ost
│ │ │ +001c8cb0: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ +001c8cc0: 7072 6f63 5f63 6d64 6c69 6e65 0a20 2020  proc_cmdline.   
│ │ │ +001c8cd0: 2029 2061 6e64 206e 6f74 2028 2061 6e73   ) and not ( ans
│ │ │ +001c8ce0: 6962 6c65 5f76 6972 7475 616c 697a 6174  ible_virtualizat
│ │ │ +001c8cf0: 696f 6e5f 7479 7065 2069 6e20 5b22 646f  ion_type in ["do
│ │ │ +001c8d00: 636b 6572 222c 2022 6c78 6322 2c20 226f  cker", "lxc", "o
│ │ │ +001c8d10: 7065 6e76 7a22 2c20 2270 6f64 6d61 6e22  penvz", "podman"
│ │ │ +001c8d20: 2c0a 2020 2020 2263 6f6e 7461 696e 6572  ,.    "container
│ │ │ +001c8d30: 225d 2029 2029 0a20 202d 2027 222f 7661  "] ) ).  - '"/va
│ │ │ +001c8d40: 722f 6c6f 672f 6175 6469 7422 2069 6e20  r/log/audit" in 
│ │ │ +001c8d50: 616e 7369 626c 655f 6d6f 756e 7473 207c  ansible_mounts |
│ │ │ +001c8d60: 206d 6170 2861 7474 7269 6275 7465 3d22   map(attribute="
│ │ │ +001c8d70: 6d6f 756e 7422 2920 7c20 6c69 7374 270a  mount") | list'.
│ │ │ +001c8d80: 2020 2d20 6465 7669 6365 5f6e 616d 652e    - device_name.
│ │ │ +001c8d90: 7374 646f 7574 2069 7320 6465 6669 6e65  stdout is define
│ │ │ +001c8da0: 6420 616e 6420 6465 7669 6365 5f6e 616d  d and device_nam
│ │ │ +001c8db0: 652e 7374 646f 7574 5f6c 696e 6573 2069  e.stdout_lines i
│ │ │ +001c8dc0: 7320 6465 6669 6e65 640a 2020 2d20 2864  s defined.  - (d
│ │ │ +001c8dd0: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ +001c8de0: 7420 7c20 6c65 6e67 7468 2026 6774 3b20  t | length > 
│ │ │ +001c8df0: 3029 0a20 2074 6167 733a 0a20 202d 204e  0).  tags:.  - N
│ │ │ +001c8e00: 4953 542d 3830 302d 3533 2d41 432d 360a  IST-800-53-AC-6.
│ │ │ +001c8e10: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001c8e20: 4143 2d36 2831 290a 2020 2d20 4e49 5354  AC-6(1).  - NIST
│ │ │ +001c8e30: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ +001c8e40: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001c8e50: 434d 2d37 2861 290a 2020 2d20 4e49 5354  CM-7(a).  - NIST
│ │ │ +001c8e60: 2d38 3030 2d35 332d 434d 2d37 2862 290a  -800-53-CM-7(b).
│ │ │ +001c8e70: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001c8e80: 4d50 2d37 0a20 202d 2063 6f6e 6669 6775  MP-7.  - configu
│ │ │ +001c8e90: 7265 5f73 7472 6174 6567 790a 2020 2d20  re_strategy.  - 
│ │ │ +001c8ea0: 6869 6768 5f64 6973 7275 7074 696f 6e0a  high_disruption.
│ │ │ +001c8eb0: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ +001c8ec0: 7479 0a20 202d 206d 6564 6975 6d5f 7365  ty.  - medium_se
│ │ │ +001c8ed0: 7665 7269 7479 0a20 202d 206d 6f75 6e74  verity.  - mount
│ │ │ +001c8ee0: 5f6f 7074 696f 6e5f 7661 725f 6c6f 675f  _option_var_log_
│ │ │ +001c8ef0: 6175 6469 745f 6e6f 6465 760a 2020 2d20  audit_nodev.  - 
│ │ │ +001c8f00: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ +001c8f10: 0a0a 2d20 6e61 6d65 3a20 2741 6464 206e  ..- name: 'Add n
│ │ │ +001c8f20: 6f64 6576 204f 7074 696f 6e20 746f 202f  odev Option to /
│ │ │ +001c8f30: 7661 722f 6c6f 672f 6175 6469 743a 2049  var/log/audit: I
│ │ │ +001c8f40: 6620 2f76 6172 2f6c 6f67 2f61 7564 6974  f /var/log/audit
│ │ │ +001c8f50: 206e 6f74 206d 6f75 6e74 6564 2c20 6372   not mounted, cr
│ │ │ +001c8f60: 6166 740a 2020 2020 6d6f 756e 745f 696e  aft.    mount_in
│ │ │ +001c8f70: 666f 206d 616e 7561 6c6c 7927 0a20 2073  fo manually'.  s
│ │ │ +001c8f80: 6574 5f66 6163 743a 0a20 2020 206d 6f75  et_fact:.    mou
│ │ │ +001c8f90: 6e74 5f69 6e66 6f3a 2027 7b7b 206d 6f75  nt_info: '{{ mou
│ │ │ +001c8fa0: 6e74 5f69 6e66 6f7c 6465 6661 756c 7428  nt_info|default(
│ │ │ +001c8fb0: 7b7d 297c 636f 6d62 696e 6528 7b69 7465  {})|combine({ite
│ │ │ +001c8fc0: 6d2e 303a 2069 7465 6d2e 317d 2920 7d7d  m.0: item.1}) }}
│ │ │ +001c8fd0: 270a 2020 7769 7468 5f74 6f67 6574 6865  '.  with_togethe
│ │ │ +001c8fe0: 723a 0a20 202d 202d 2074 6172 6765 740a  r:.  - - target.
│ │ │ +001c8ff0: 2020 2020 2d20 736f 7572 6365 0a20 2020      - source.   
│ │ │ +001c9000: 202d 2066 7374 7970 650a 2020 2020 2d20   - fstype.    - 
│ │ │ +001c9010: 6f70 7469 6f6e 730a 2020 2d20 2d20 2f76  options.  - - /v
│ │ │ +001c9020: 6172 2f6c 6f67 2f61 7564 6974 0a20 2020  ar/log/audit.   
│ │ │ +001c9030: 202d 2027 270a 2020 2020 2d20 2727 0a20   - ''.    - ''. 
│ │ │ +001c9040: 2020 202d 2064 6566 6175 6c74 730a 2020     - defaults.  
│ │ │ +001c9050: 7768 656e 3a0a 2020 2d20 2820 6e6f 7420  when:.  - ( not 
│ │ │ +001c9060: 2820 226b 6572 6e65 6c22 2069 6e20 616e  ( "kernel" in an
│ │ │ +001c9070: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001c9080: 6167 6573 2061 6e64 2022 626f 6f74 6322  ages and "bootc"
│ │ │ +001c9090: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001c90a0: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ +001c90b0: 6e64 206e 6f74 2022 6f70 656e 7368 6966  nd not "openshif
│ │ │ +001c90c0: 742d 6b75 6265 6c65 7422 2069 6e20 616e  t-kubelet" in an
│ │ │ +001c90d0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001c90e0: 6167 6573 2061 6e64 2022 6f73 7472 6565  ages and "ostree
│ │ │ +001c90f0: 2220 696e 2061 6e73 6962 6c65 5f70 726f  " in ansible_pro
│ │ │ +001c9100: 635f 636d 646c 696e 650a 2020 2020 2920  c_cmdline.    ) 
│ │ │ +001c9110: 616e 6420 6e6f 7420 2820 616e 7369 626c  and not ( ansibl
│ │ │ +001c9120: 655f 7669 7274 7561 6c69 7a61 7469 6f6e  e_virtualization
│ │ │ +001c9130: 5f74 7970 6520 696e 205b 2264 6f63 6b65  _type in ["docke
│ │ │ +001c9140: 7222 2c20 226c 7863 222c 2022 6f70 656e  r", "lxc", "open
│ │ │ +001c9150: 767a 222c 2022 706f 646d 616e 222c 0a20  vz", "podman",. 
│ │ │ +001c9160: 2020 2022 636f 6e74 6169 6e65 7222 5d20     "container"] 
│ │ │ +001c9170: 2920 290a 2020 2d20 2722 2f76 6172 2f6c  ) ).  - '"/var/l
│ │ │ +001c9180: 6f67 2f61 7564 6974 2220 696e 2061 6e73  og/audit" in ans
│ │ │ +001c9190: 6962 6c65 5f6d 6f75 6e74 7320 7c20 6d61  ible_mounts | ma
│ │ │ +001c91a0: 7028 6174 7472 6962 7574 653d 226d 6f75  p(attribute="mou
│ │ │ +001c91b0: 6e74 2229 207c 206c 6973 7427 0a20 202d  nt") | list'.  -
│ │ │ +001c91c0: 2028 222d 2d66 7374 6162 2220 7c20 6c65   ("--fstab" | le
│ │ │ +001c91d0: 6e67 7468 203d 3d20 3029 0a20 202d 2064  ngth == 0).  - d
│ │ │ +001c91e0: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ +001c91f0: 7420 6973 2064 6566 696e 6564 2061 6e64  t is defined and
│ │ │ +001c9200: 2064 6576 6963 655f 6e61 6d65 2e73 7464   device_name.std
│ │ │ +001c9210: 6f75 745f 6c69 6e65 7320 6973 2064 6566  out_lines is def
│ │ │ +001c9220: 696e 6564 0a20 202d 2028 6465 7669 6365  ined.  - (device
│ │ │ +001c9230: 5f6e 616d 652e 7374 646f 7574 207c 206c  _name.stdout | l
│ │ │ +001c9240: 656e 6774 6820 3d3d 2030 290a 2020 7461  ength == 0).  ta
│ │ │ +001c9250: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030  gs:.  - NIST-800
│ │ │ +001c9260: 2d35 332d 4143 2d36 0a20 202d 204e 4953  -53-AC-6.  - NIS
│ │ │ +001c9270: 542d 3830 302d 3533 2d41 432d 3628 3129  T-800-53-AC-6(1)
│ │ │ +001c9280: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001c9290: 2d43 4d2d 3628 6129 0a20 202d 204e 4953  -CM-6(a).  - NIS
│ │ │ +001c92a0: 542d 3830 302d 3533 2d43 4d2d 3728 6129  T-800-53-CM-7(a)
│ │ │ +001c92b0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001c92c0: 2d43 4d2d 3728 6229 0a20 202d 204e 4953  -CM-7(b).  - NIS
│ │ │ +001c92d0: 542d 3830 302d 3533 2d4d 502d 370a 2020  T-800-53-MP-7.  
│ │ │ +001c92e0: 2d20 636f 6e66 6967 7572 655f 7374 7261  - configure_stra
│ │ │ +001c92f0: 7465 6779 0a20 202d 2068 6967 685f 6469  tegy.  - high_di
│ │ │ +001c9300: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ +001c9310: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +001c9320: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ +001c9330: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e    - mount_option
│ │ │ +001c9340: 5f76 6172 5f6c 6f67 5f61 7564 6974 5f6e  _var_log_audit_n
│ │ │ +001c9350: 6f64 6576 0a20 202d 206e 6f5f 7265 626f  odev.  - no_rebo
│ │ │ +001c9360: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d  ot_needed..- nam
│ │ │ +001c9370: 653a 2027 4164 6420 6e6f 6465 7620 4f70  e: 'Add nodev Op
│ │ │ +001c9380: 7469 6f6e 2074 6f20 2f76 6172 2f6c 6f67  tion to /var/log
│ │ │ +001c9390: 2f61 7564 6974 3a20 4d61 6b65 2073 7572  /audit: Make sur
│ │ │ +001c93a0: 6520 6e6f 6465 7620 6f70 7469 6f6e 2069  e nodev option i
│ │ │ +001c93b0: 7320 7061 7274 206f 6620 7468 650a 2020  s part of the.  
│ │ │ +001c93c0: 2020 746f 202f 7661 722f 6c6f 672f 6175    to /var/log/au
│ │ │ +001c93d0: 6469 7420 6f70 7469 6f6e 7327 0a20 2073  dit options'.  s
│ │ │ +001c93e0: 6574 5f66 6163 743a 0a20 2020 206d 6f75  et_fact:.    mou
│ │ │ +001c93f0: 6e74 5f69 6e66 6f3a 2027 7b7b 206d 6f75  nt_info: '{{ mou
│ │ │ +001c9400: 6e74 5f69 6e66 6f20 7c20 636f 6d62 696e  nt_info | combin
│ │ │ +001c9410: 6528 207b 2727 6f70 7469 6f6e 7327 273a  e( {''options'':
│ │ │ +001c9420: 2727 2727 7e28 6d6f 756e 745f 696e 666f  ''''~(mount_info
│ │ │ +001c9430: 2e6f 7074 696f 6e73 207c 0a20 2020 2020  .options |.     
│ │ │ +001c9440: 2064 6566 6175 6c74 2827 2727 2729 297e   default(''''))~
│ │ │ +001c9450: 2827 272c 2727 2069 6620 286d 6f75 6e74  ('','' if (mount
│ │ │ +001c9460: 5f69 6e66 6f2e 6f70 7469 6f6e 7320 7c20  _info.options | 
│ │ │ +001c9470: 6465 6661 756c 7428 2727 2727 2929 2065  default('''')) e
│ │ │ +001c9480: 6c73 6520 2727 2727 297e 2727 6e6f 6465  lse '''')~''node
│ │ │ +001c9490: 7627 270a 2020 2020 2020 7d29 207d 7d27  v''.      }) }}'
│ │ │ +001c94a0: 0a20 2077 6865 6e3a 0a20 202d 2028 206e  .  when:.  - ( n
│ │ │ +001c94b0: 6f74 2028 2022 6b65 726e 656c 2220 696e  ot ( "kernel" in
│ │ │ +001c94c0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001c94d0: 6163 6b61 6765 7320 616e 6420 2262 6f6f  ackages and "boo
│ │ │ +001c94e0: 7463 2220 696e 2061 6e73 6962 6c65 5f66  tc" in ansible_f
│ │ │ +001c94f0: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ +001c9500: 2020 616e 6420 6e6f 7420 226f 7065 6e73    and not "opens
│ │ │ +001c9510: 6869 6674 2d6b 7562 656c 6574 2220 696e  hift-kubelet" in
│ │ │ +001c9520: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001c9530: 6163 6b61 6765 7320 616e 6420 226f 7374  ackages and "ost
│ │ │ +001c9540: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ +001c9550: 7072 6f63 5f63 6d64 6c69 6e65 0a20 2020  proc_cmdline.   
│ │ │ +001c9560: 2029 2061 6e64 206e 6f74 2028 2061 6e73   ) and not ( ans
│ │ │ +001c9570: 6962 6c65 5f76 6972 7475 616c 697a 6174  ible_virtualizat
│ │ │ +001c9580: 696f 6e5f 7479 7065 2069 6e20 5b22 646f  ion_type in ["do
│ │ │ +001c9590: 636b 6572 222c 2022 6c78 6322 2c20 226f  cker", "lxc", "o
│ │ │ +001c95a0: 7065 6e76 7a22 2c20 2270 6f64 6d61 6e22  penvz", "podman"
│ │ │ +001c95b0: 2c0a 2020 2020 2263 6f6e 7461 696e 6572  ,.    "container
│ │ │ +001c95c0: 225d 2029 2029 0a20 202d 2027 222f 7661  "] ) ).  - '"/va
│ │ │ +001c95d0: 722f 6c6f 672f 6175 6469 7422 2069 6e20  r/log/audit" in 
│ │ │ +001c95e0: 616e 7369 626c 655f 6d6f 756e 7473 207c  ansible_mounts |
│ │ │ +001c95f0: 206d 6170 2861 7474 7269 6275 7465 3d22   map(attribute="
│ │ │ +001c9600: 6d6f 756e 7422 2920 7c20 6c69 7374 270a  mount") | list'.
│ │ │ +001c9610: 2020 2d20 6d6f 756e 745f 696e 666f 2069    - mount_info i
│ │ │ +001c9620: 7320 6465 6669 6e65 6420 616e 6420 226e  s defined and "n
│ │ │ +001c9630: 6f64 6576 2220 6e6f 7420 696e 2028 6d6f  odev" not in (mo
│ │ │ +001c9640: 756e 745f 696e 666f 2e6f 7074 696f 6e73  unt_info.options
│ │ │ +001c9650: 207c 2064 6566 6175 6c74 2827 2729 290a   | default('')).
│ │ │ +001c9660: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ +001c9670: 2d38 3030 2d35 332d 4143 2d36 0a20 202d  -800-53-AC-6.  -
│ │ │ +001c9680: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ +001c9690: 3628 3129 0a20 202d 204e 4953 542d 3830  6(1).  - NIST-80
│ │ │ +001c96a0: 302d 3533 2d43 4d2d 3628 6129 0a20 202d  0-53-CM-6(a).  -
│ │ │ +001c96b0: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +001c96c0: 3728 6129 0a20 202d 204e 4953 542d 3830  7(a).  - NIST-80
│ │ │ +001c96d0: 302d 3533 2d43 4d2d 3728 6229 0a20 202d  0-53-CM-7(b).  -
│ │ │ +001c96e0: 204e 4953 542d 3830 302d 3533 2d4d 502d   NIST-800-53-MP-
│ │ │ +001c96f0: 370a 2020 2d20 636f 6e66 6967 7572 655f  7.  - configure_
│ │ │ +001c9700: 7374 7261 7465 6779 0a20 202d 2068 6967  strategy.  - hig
│ │ │ +001c9710: 685f 6469 7372 7570 7469 6f6e 0a20 202d  h_disruption.  -
│ │ │ +001c9720: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ +001c9730: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ +001c9740: 6974 790a 2020 2d20 6d6f 756e 745f 6f70  ity.  - mount_op
│ │ │ +001c9750: 7469 6f6e 5f76 6172 5f6c 6f67 5f61 7564  tion_var_log_aud
│ │ │ +001c9760: 6974 5f6e 6f64 6576 0a20 202d 206e 6f5f  it_nodev.  - no_
│ │ │ +001c9770: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ +001c9780: 206e 616d 653a 2027 4164 6420 6e6f 6465   name: 'Add node
│ │ │ +001c9790: 7620 4f70 7469 6f6e 2074 6f20 2f76 6172  v Option to /var
│ │ │ +001c97a0: 2f6c 6f67 2f61 7564 6974 3a20 456e 7375  /log/audit: Ensu
│ │ │ +001c97b0: 7265 202f 7661 722f 6c6f 672f 6175 6469  re /var/log/audi
│ │ │ +001c97c0: 7420 6973 206d 6f75 6e74 6564 2077 6974  t is mounted wit
│ │ │ +001c97d0: 680a 2020 2020 6e6f 6465 7620 6f70 7469  h.    nodev opti
│ │ │ +001c97e0: 6f6e 270a 2020 616e 7369 626c 652e 706f  on'.  ansible.po
│ │ │ +001c97f0: 7369 782e 6d6f 756e 743a 0a20 2020 2070  six.mount:.    p
│ │ │ +001c9800: 6174 683a 202f 7661 722f 6c6f 672f 6175  ath: /var/log/au
│ │ │ +001c9810: 6469 740a 2020 2020 7372 633a 2027 7b7b  dit.    src: '{{
│ │ │ +001c9820: 206d 6f75 6e74 5f69 6e66 6f2e 736f 7572   mount_info.sour
│ │ │ +001c9830: 6365 207c 2064 6566 6175 6c74 2827 2727  ce | default('''
│ │ │ +001c9840: 2729 207d 7d27 0a20 2020 206f 7074 733a  ') }}'.    opts:
│ │ │ +001c9850: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f2e   '{{ mount_info.
│ │ │ +001c9860: 6f70 7469 6f6e 7320 7c20 6465 6661 756c  options | defaul
│ │ │ +001c9870: 7428 2727 2727 2920 7d7d 270a 2020 2020  t('''') }}'.    
│ │ │ +001c9880: 7374 6174 653a 206d 6f75 6e74 6564 0a20  state: mounted. 
│ │ │ +001c9890: 2020 2066 7374 7970 653a 2027 7b7b 206d     fstype: '{{ m
│ │ │ +001c98a0: 6f75 6e74 5f69 6e66 6f2e 6673 7479 7065  ount_info.fstype
│ │ │ +001c98b0: 207c 2064 6566 6175 6c74 2827 2727 2729   | default('''')
│ │ │ +001c98c0: 207d 7d27 0a20 2072 6567 6973 7465 723a   }}'.  register:
│ │ │ +001c98d0: 206d 6f75 6e74 5f72 6573 756c 740a 2020   mount_result.  
│ │ │ +001c98e0: 6661 696c 6564 5f77 6865 6e3a 0a20 202d  failed_when:.  -
│ │ │ +001c98f0: 206d 6f75 6e74 5f72 6573 756c 7420 6973   mount_result is
│ │ │ +001c9900: 2066 6169 6c65 640a 2020 2d20 2727 2774   failed.  - '''t
│ │ │ +001c9910: 6172 6765 7420 6973 2062 7573 7927 2720  arget is busy'' 
│ │ │ +001c9920: 6e6f 7420 696e 2028 6d6f 756e 745f 7265  not in (mount_re
│ │ │ +001c9930: 7375 6c74 2e6d 7367 207c 2064 6566 6175  sult.msg | defau
│ │ │ +001c9940: 6c74 2827 2727 2729 2927 0a20 202d 2027  lt(''''))'.  - '
│ │ │ +001c9950: 2727 616c 7265 6164 7920 6d6f 756e 7465  ''already mounte
│ │ │ +001c9960: 6427 2720 6e6f 7420 696e 2028 6d6f 756e  d'' not in (moun
│ │ │ +001c9970: 745f 7265 7375 6c74 2e6d 7367 207c 2064  t_result.msg | d
│ │ │ +001c9980: 6566 6175 6c74 2827 2727 2729 2927 0a20  efault(''''))'. 
│ │ │ +001c9990: 2077 6865 6e3a 0a20 202d 2028 206e 6f74   when:.  - ( not
│ │ │ +001c99a0: 2028 2022 6b65 726e 656c 2220 696e 2061   ( "kernel" in a
│ │ │ +001c99b0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +001c99c0: 6b61 6765 7320 616e 6420 2262 6f6f 7463  kages and "bootc
│ │ │ +001c99d0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +001c99e0: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ +001c99f0: 616e 6420 6e6f 7420 226f 7065 6e73 6869  and not "openshi
│ │ │ +001c9a00: 6674 2d6b 7562 656c 6574 2220 696e 2061  ft-kubelet" in a
│ │ │ +001c9a10: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +001c9a20: 6b61 6765 7320 616e 6420 226f 7374 7265  kages and "ostre
│ │ │ +001c9a30: 6522 2069 6e20 616e 7369 626c 655f 7072  e" in ansible_pr
│ │ │ +001c9a40: 6f63 5f63 6d64 6c69 6e65 0a20 2020 2029  oc_cmdline.    )
│ │ │ +001c9a50: 2061 6e64 206e 6f74 2028 2061 6e73 6962   and not ( ansib
│ │ │ +001c9a60: 6c65 5f76 6972 7475 616c 697a 6174 696f  le_virtualizatio
│ │ │ +001c9a70: 6e5f 7479 7065 2069 6e20 5b22 646f 636b  n_type in ["dock
│ │ │ +001c9a80: 6572 222c 2022 6c78 6322 2c20 226f 7065  er", "lxc", "ope
│ │ │ +001c9a90: 6e76 7a22 2c20 2270 6f64 6d61 6e22 2c0a  nvz", "podman",.
│ │ │ +001c9aa0: 2020 2020 2263 6f6e 7461 696e 6572 225d      "container"]
│ │ │ +001c9ab0: 2029 2029 0a20 202d 2027 222f 7661 722f   ) ).  - '"/var/
│ │ │ +001c9ac0: 6c6f 672f 6175 6469 7422 2069 6e20 616e  log/audit" in an
│ │ │ +001c9ad0: 7369 626c 655f 6d6f 756e 7473 207c 206d  sible_mounts | m
│ │ │ +001c9ae0: 6170 2861 7474 7269 6275 7465 3d22 6d6f  ap(attribute="mo
│ │ │ +001c9af0: 756e 7422 2920 7c20 6c69 7374 270a 2020  unt") | list'.  
│ │ │ +001c9b00: 2d20 6d6f 756e 745f 696e 666f 2069 7320  - mount_info is 
│ │ │ +001c9b10: 6465 6669 6e65 640a 2020 2d20 2864 6576  defined.  - (dev
│ │ │ +001c9b20: 6963 655f 6e61 6d65 2e73 7464 6f75 7420  ice_name.stdout 
│ │ │ +001c9b30: 6973 2064 6566 696e 6564 2061 6e64 2028  is defined and (
│ │ │ +001c9b40: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ +001c9b50: 7574 207c 206c 656e 6774 6820 2667 743b  ut | length >
│ │ │ +001c9b60: 2030 2929 206f 7220 2822 2d2d 6673 7461   0)) or ("--fsta
│ │ │ +001c9b70: 6222 0a20 2020 207c 206c 656e 6774 6820  b".    | length 
│ │ │ +001c9b80: 3d3d 2030 290a 2020 7461 6773 3a0a 2020  == 0).  tags:.  
│ │ │ +001c9b90: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ +001c9ba0: 2d36 0a20 202d 204e 4953 542d 3830 302d  -6.  - NIST-800-
│ │ │ +001c9bb0: 3533 2d41 432d 3628 3129 0a20 202d 204e  53-AC-6(1).  - N
│ │ │ +001c9bc0: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ +001c9bd0: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ +001c9be0: 3533 2d43 4d2d 3728 6129 0a20 202d 204e  53-CM-7(a).  - N
│ │ │ +001c9bf0: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ +001c9c00: 6229 0a20 202d 204e 4953 542d 3830 302d  b).  - NIST-800-
│ │ │ +001c9c10: 3533 2d4d 502d 370a 2020 2d20 636f 6e66  53-MP-7.  - conf
│ │ │ +001c9c20: 6967 7572 655f 7374 7261 7465 6779 0a20  igure_strategy. 
│ │ │ +001c9c30: 202d 2068 6967 685f 6469 7372 7570 7469   - high_disrupti
│ │ │ +001c9c40: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c  on.  - low_compl
│ │ │ +001c9c50: 6578 6974 790a 2020 2d20 6d65 6469 756d  exity.  - medium
│ │ │ +001c9c60: 5f73 6576 6572 6974 790a 2020 2d20 6d6f  _severity.  - mo
│ │ │ +001c9c70: 756e 745f 6f70 7469 6f6e 5f76 6172 5f6c  unt_option_var_l
│ │ │ +001c9c80: 6f67 5f61 7564 6974 5f6e 6f64 6576 0a20  og_audit_nodev. 
│ │ │ +001c9c90: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ +001c9ca0: 6465 640a 3c2f 636f 6465 3e3c 2f70 7265  ded.
Remediation │ │ │ +001c9d60: 5368 656c 6c20 7363 7269 7074 20e2 87b2 Shell script ... │ │ │ +001c9d70: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Reboot:false
# Remediatio
│ │ │ +001c9e30: 6e20 6973 2061 7070 6c69 6361 626c 6520  n is applicable 
│ │ │ +001c9e40: 6f6e 6c79 2069 6e20 6365 7274 6169 6e20  only in certain 
│ │ │ +001c9e50: 706c 6174 666f 726d 730a 6966 2028 2021  platforms.if ( !
│ │ │ +001c9e60: 2028 207b 2072 706d 202d 2d71 7569 6574   ( { rpm --quiet
│ │ │ +001c9e70: 202d 7120 6b65 726e 656c 203b 7d20 2661   -q kernel ;} &a
│ │ │ +001c9e80: 6d70 3b26 616d 703b 207b 2072 706d 202d  mp;& { rpm -
│ │ │ +001c9e90: 2d71 7569 6574 202d 7120 626f 6f74 6320  -quiet -q bootc 
│ │ │ +001c9ea0: 3b7d 2026 616d 703b 2661 6d70 3b20 7b20  ;} && { 
│ │ │ +001c9eb0: 2120 7270 6d20 2d2d 7175 6965 7420 2d71  ! rpm --quiet -q
│ │ │ +001c9ec0: 206f 7065 6e73 6869 6674 2d6b 7562 656c   openshift-kubel
│ │ │ +001c9ed0: 6574 203b 7d20 2661 6d70 3b26 616d 703b  et ;} &&
│ │ │ +001c9ee0: 2028 5b20 2d66 202f 7275 6e2f 6f73 7472   ([ -f /run/ostr
│ │ │ +001c9ef0: 6565 2d62 6f6f 7465 6420 5d20 7c7c 205b  ee-booted ] || [
│ │ │ +001c9f00: 202d 4c20 2f6f 7374 7265 6520 5d29 2029   -L /ostree ]) )
│ │ │ +001c9f10: 2026 616d 703b 2661 6d70 3b20 2120 2820   && ! ( 
│ │ │ +001c9f20: 5b20 2d66 202f 2e64 6f63 6b65 7265 6e76  [ -f /.dockerenv
│ │ │ +001c9f30: 205d 207c 7c20 5b20 2d66 202f 7275 6e2f   ] || [ -f /run/
│ │ │ +001c9f40: 2e63 6f6e 7461 696e 6572 656e 7620 5d20  .containerenv ] 
│ │ │ +001c9f50: 2920 2920 2661 6d70 3b26 616d 703b 207b  ) ) && {
│ │ │ +001c9f60: 2028 2066 696e 646d 6e74 202d 2d6b 6572   ( findmnt --ker
│ │ │ +001c9f70: 6e65 6c20 222f 7661 722f 6c6f 672f 6175  nel "/var/log/au
│ │ │ +001c9f80: 6469 7422 2026 6774 3b20 2f64 6576 2f6e  dit" > /dev/n
│ │ │ +001c9f90: 756c 6c20 7c7c 2066 696e 646d 6e74 202d  ull || findmnt -
│ │ │ +001c9fa0: 2d66 7374 6162 2022 2f76 6172 2f6c 6f67  -fstab "/var/log
│ │ │ +001c9fb0: 2f61 7564 6974 2220 2667 743b 202f 6465  /audit" > /de
│ │ │ +001c9fc0: 762f 6e75 6c6c 2029 3b20 7d3b 2074 6865  v/null ); }; the
│ │ │ +001c9fd0: 6e0a 0a66 756e 6374 696f 6e20 7065 7266  n..function perf
│ │ │ +001c9fe0: 6f72 6d5f 7265 6d65 6469 6174 696f 6e20  orm_remediation 
│ │ │ +001c9ff0: 7b0a 0a20 2020 200a 2020 2020 2020 2020  {..    .        
│ │ │ +001ca000: 2320 7468 6520 6d6f 756e 7420 706f 696e  # the mount poin
│ │ │ +001ca010: 7420 2f76 6172 2f6c 6f67 2f61 7564 6974  t /var/log/audit
│ │ │ +001ca020: 2068 6173 2074 6f20 6265 2064 6566 696e   has to be defin
│ │ │ +001ca030: 6564 2069 6e20 2f65 7463 2f66 7374 6162  ed in /etc/fstab
│ │ │ +001ca040: 0a20 2020 2020 2020 2023 2062 6566 6f72  .        # befor
│ │ │ +001ca050: 6520 7468 6973 2072 656d 6564 6961 7469  e this remediati
│ │ │ +001ca060: 6f6e 2063 616e 2062 6520 6578 6563 7574  on can be execut
│ │ │ +001ca070: 6564 2e20 496e 2063 6173 6520 6974 2069  ed. In case it i
│ │ │ +001ca080: 7320 6e6f 7420 6465 6669 6e65 642c 2074  s not defined, t
│ │ │ +001ca090: 6865 0a20 2020 2020 2020 2023 2072 656d  he.        # rem
│ │ │ +001ca0a0: 6564 6961 7469 6f6e 2061 626f 7274 7320  ediation aborts 
│ │ │ +001ca0b0: 616e 6420 6e6f 2063 6861 6e67 6573 2072  and no changes r
│ │ │ +001ca0c0: 6567 6172 6469 6e67 2074 6865 206d 6f75  egarding the mou
│ │ │ +001ca0d0: 6e74 2070 6f69 6e74 2061 7265 2064 6f6e  nt point are don
│ │ │ +001ca0e0: 652e 0a20 2020 2020 2020 206d 6f75 6e74  e..        mount
│ │ │ +001ca0f0: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ +001ca100: 6578 703d 2224 2870 7269 6e74 6620 225e  exp="$(printf "^
│ │ │ +001ca110: 5b5b 3a73 7061 6365 3a5d 5d2a 5b5e 235d  [[:space:]]*[^#]
│ │ │ +001ca120: 2e2a 5b5b 3a73 7061 6365 3a5d 5d25 735b  .*[[:space:]]%s[
│ │ │ +001ca130: 5b3a 7370 6163 653a 5d5d 2220 222f 7661  [:space:]]" "/va
│ │ │ +001ca140: 722f 6c6f 672f 6175 6469 7422 2922 0a0a  r/log/audit")"..
│ │ │ +001ca150: 2020 2020 6772 6570 2022 246d 6f75 6e74      grep "$mount
│ │ │ +001ca160: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ +001ca170: 6578 7022 202d 7120 2f65 7463 2f66 7374  exp" -q /etc/fst
│ │ │ +001ca180: 6162 205c 0a20 2020 2020 2020 207c 7c20  ab \.        || 
│ │ │ +001ca190: 7b20 6563 686f 2022 5468 6520 6d6f 756e  { echo "The moun
│ │ │ +001ca1a0: 7420 706f 696e 7420 272f 7661 722f 6c6f  t point '/var/lo
│ │ │ +001ca1b0: 672f 6175 6469 7427 2069 7320 6e6f 7420  g/audit' is not 
│ │ │ +001ca1c0: 6576 656e 2069 6e20 2f65 7463 2f66 7374  even in /etc/fst
│ │ │ +001ca1d0: 6162 2c20 736f 2077 6520 6361 6e27 7420  ab, so we can't 
│ │ │ +001ca1e0: 7365 7420 7570 206d 6f75 6e74 206f 7074  set up mount opt
│ │ │ +001ca1f0: 696f 6e73 2220 2667 743b 2661 6d70 3b32  ions" >&2
│ │ │ +001ca200: 3b0a 2020 2020 2020 2020 2020 2020 2020  ;.              
│ │ │ +001ca210: 2020 6563 686f 2022 4e6f 7420 7265 6d65    echo "Not reme
│ │ │ +001ca220: 6469 6174 696e 672c 2062 6563 6175 7365  diating, because
│ │ │ +001ca230: 2074 6865 7265 2069 7320 6e6f 2072 6563   there is no rec
│ │ │ +001ca240: 6f72 6420 6f66 202f 7661 722f 6c6f 672f  ord of /var/log/
│ │ │ +001ca250: 6175 6469 7420 696e 202f 6574 632f 6673  audit in /etc/fs
│ │ │ +001ca260: 7461 6222 2026 6774 3b26 616d 703b 323b  tab" >&2;
│ │ │ +001ca270: 2072 6574 7572 6e20 313b 207d 0a20 2020   return 1; }.   
│ │ │ +001ca280: 200a 0a0a 2020 2020 6d6f 756e 745f 706f   ...    mount_po
│ │ │ +001ca290: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ +001ca2a0: 3d22 2428 7072 696e 7466 2022 5e5b 5b3a  ="$(printf "^[[:
│ │ │ +001ca2b0: 7370 6163 653a 5d5d 2a5b 5e23 5d2e 2a5b  space:]]*[^#].*[
│ │ │ +001ca2c0: 5b3a 7370 6163 653a 5d5d 2573 5b5b 3a73  [:space:]]%s[[:s
│ │ │ +001ca2d0: 7061 6365 3a5d 5d22 202f 7661 722f 6c6f  pace:]]" /var/lo
│ │ │ +001ca2e0: 672f 6175 6469 7429 220a 0a20 2020 2023  g/audit)"..    #
│ │ │ +001ca2f0: 2049 6620 7468 6520 6d6f 756e 7420 706f   If the mount po
│ │ │ +001ca300: 696e 7420 6973 206e 6f74 2069 6e20 2f65  int is not in /e
│ │ │ +001ca310: 7463 2f66 7374 6162 2c20 6765 7420 7072  tc/fstab, get pr
│ │ │ +001ca320: 6576 696f 7573 206d 6f75 6e74 206f 7074  evious mount opt
│ │ │ +001ca330: 696f 6e73 2066 726f 6d20 2f65 7463 2f6d  ions from /etc/m
│ │ │ +001ca340: 7461 620a 2020 2020 6966 2021 2067 7265  tab.    if ! gre
│ │ │ +001ca350: 7020 2d71 2022 246d 6f75 6e74 5f70 6f69  p -q "$mount_poi
│ │ │ +001ca360: 6e74 5f6d 6174 6368 5f72 6567 6578 7022  nt_match_regexp"
│ │ │ +001ca370: 202f 6574 632f 6673 7461 623b 2074 6865   /etc/fstab; the
│ │ │ +001ca380: 6e0a 2020 2020 2020 2020 2320 7275 6e74  n.        # runt
│ │ │ +001ca390: 696d 6520 6f70 7473 2077 6974 686f 7574  ime opts without
│ │ │ +001ca3a0: 2073 6f6d 6520 6175 746f 6d61 7469 6320   some automatic 
│ │ │ +001ca3b0: 6b65 726e 656c 2f75 7365 7273 7061 6365  kernel/userspace
│ │ │ +001ca3c0: 2d61 6464 6564 2064 6566 6175 6c74 730a  -added defaults.
│ │ │ +001ca3d0: 2020 2020 2020 2020 7072 6576 696f 7573          previous
│ │ │ +001ca3e0: 5f6d 6f75 6e74 5f6f 7074 733d 2428 6772  _mount_opts=$(gr
│ │ │ +001ca3f0: 6570 2022 246d 6f75 6e74 5f70 6f69 6e74  ep "$mount_point
│ │ │ +001ca400: 5f6d 6174 6368 5f72 6567 6578 7022 202f  _match_regexp" /
│ │ │ +001ca410: 6574 632f 6d74 6162 207c 2068 6561 6420  etc/mtab | head 
│ │ │ +001ca420: 2d31 207c 2020 6177 6b20 277b 7072 696e  -1 |  awk '{prin
│ │ │ +001ca430: 7420 2434 7d27 205c 0a20 2020 2020 2020  t $4}' \.       
│ │ │ +001ca440: 2020 2020 2020 2020 2020 2020 207c 2073               | s
│ │ │ +001ca450: 6564 202d 4520 2273 2f28 7277 7c64 6566  ed -E "s/(rw|def
│ │ │ +001ca460: 6175 6c74 737c 7365 636c 6162 656c 7c6e  aults|seclabel|n
│ │ │ +001ca470: 6f64 6576 2928 2c7c 2429 2f2f 673b 732f  odev)(,|$)//g;s/
│ │ │ +001ca480: 2c24 2f2f 2229 0a20 2020 2020 2020 205b  ,$//").        [
│ │ │ +001ca490: 2022 2470 7265 7669 6f75 735f 6d6f 756e   "$previous_moun
│ │ │ +001ca4a0: 745f 6f70 7473 2220 5d20 2661 6d70 3b26  t_opts" ] &&
│ │ │ +001ca4b0: 616d 703b 2070 7265 7669 6f75 735f 6d6f  amp; previous_mo
│ │ │ +001ca4c0: 756e 745f 6f70 7473 2b3d 222c 220a 2020  unt_opts+=",".  
│ │ │ +001ca4d0: 2020 2020 2020 2320 496e 2069 736f 3936        # In iso96
│ │ │ +001ca4e0: 3630 2066 696c 6573 7973 7465 6d73 206d  60 filesystems m
│ │ │ +001ca4f0: 7461 6220 636f 756c 6420 6465 7363 7269  tab could descri
│ │ │ +001ca500: 6265 2061 2022 626c 6f63 6b73 697a 6522  be a "blocksize"
│ │ │ +001ca510: 2076 616c 7565 2c20 7468 6973 2073 686f   value, this sho
│ │ │ +001ca520: 756c 6420 6265 2072 6566 6c65 6374 6564  uld be reflected
│ │ │ +001ca530: 2069 6e0a 2020 2020 2020 2020 2320 6673   in.        # fs
│ │ │ +001ca540: 7461 6220 6173 2022 626c 6f63 6b22 2e20  tab as "block". 
│ │ │ +001ca550: 2054 6865 206e 6578 7420 7661 7269 6162   The next variab
│ │ │ +001ca560: 6c65 2069 7320 746f 2073 6174 6973 6679  le is to satisfy
│ │ │ +001ca570: 2073 6865 6c6c 6368 6563 6b20 5343 3230   shellcheck SC20
│ │ │ +001ca580: 3530 2e0a 2020 2020 2020 2020 6673 5f74  50..        fs_t
│ │ │ +001ca590: 7970 653d 2222 0a20 2020 2020 2020 2069  ype="".        i
│ │ │ +001ca5a0: 6620 5b20 2022 2466 735f 7479 7065 2220  f [  "$fs_type" 
│ │ │ +001ca5b0: 3d3d 2022 6973 6f39 3636 3022 205d 203b  == "iso9660" ] ;
│ │ │ +001ca5c0: 2074 6865 6e0a 2020 2020 2020 2020 2020   then.          
│ │ │ +001ca5d0: 2020 7072 6576 696f 7573 5f6d 6f75 6e74    previous_mount
│ │ │ +001ca5e0: 5f6f 7074 733d 2428 7365 6420 2773 2f62  _opts=$(sed 's/b
│ │ │ +001ca5f0: 6c6f 636b 7369 7a65 3d2f 626c 6f63 6b3d  locksize=/block=
│ │ │ +001ca600: 2f27 2026 6c74 3b26 6c74 3b26 6c74 3b20  /' <<< 
│ │ │ +001ca610: 2224 7072 6576 696f 7573 5f6d 6f75 6e74  "$previous_mount
│ │ │ +001ca620: 5f6f 7074 7322 290a 2020 2020 2020 2020  _opts").        
│ │ │ +001ca630: 6669 0a20 2020 2020 2020 2065 6368 6f20  fi.        echo 
│ │ │ +001ca640: 2220 2f76 6172 2f6c 6f67 2f61 7564 6974  " /var/log/audit
│ │ │ +001ca650: 2020 6465 6661 756c 7473 2c24 7b70 7265    defaults,${pre
│ │ │ +001ca660: 7669 6f75 735f 6d6f 756e 745f 6f70 7473  vious_mount_opts
│ │ │ +001ca670: 7d6e 6f64 6576 2030 2030 2220 2667 743b  }nodev 0 0" >
│ │ │ +001ca680: 2667 743b 202f 6574 632f 6673 7461 620a  > /etc/fstab.
│ │ │ +001ca690: 2020 2020 2320 4966 2074 6865 206d 6f75      # If the mou
│ │ │ +001ca6a0: 6e74 5f6f 7074 206f 7074 696f 6e20 6973  nt_opt option is
│ │ │ +001ca6b0: 206e 6f74 2061 6c72 6561 6479 2069 6e20   not already in 
│ │ │ +001ca6c0: 7468 6520 6d6f 756e 7420 706f 696e 7427  the mount point'
│ │ │ +001ca6d0: 7320 2f65 7463 2f66 7374 6162 2065 6e74  s /etc/fstab ent
│ │ │ +001ca6e0: 7279 2c20 6164 6420 6974 0a20 2020 2065  ry, add it.    e
│ │ │ +001ca6f0: 6c69 6620 2120 6772 6570 2022 246d 6f75  lif ! grep "$mou
│ │ │ +001ca700: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ +001ca710: 6567 6578 7022 202f 6574 632f 6673 7461  egexp" /etc/fsta
│ │ │ +001ca720: 6220 7c20 6772 6570 202d 7120 226e 6f64  b | grep -q "nod
│ │ │ +001ca730: 6576 223b 2074 6865 6e0a 2020 2020 2020  ev"; then.      
│ │ │ +001ca740: 2020 7072 6576 696f 7573 5f6d 6f75 6e74    previous_mount
│ │ │ +001ca750: 5f6f 7074 733d 2428 6772 6570 2022 246d  _opts=$(grep "$m
│ │ │ +001ca760: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ +001ca770: 5f72 6567 6578 7022 202f 6574 632f 6673  _regexp" /etc/fs
│ │ │ +001ca780: 7461 6220 7c20 6177 6b20 277b 7072 696e  tab | awk '{prin
│ │ │ +001ca790: 7420 2434 7d27 290a 2020 2020 2020 2020  t $4}').        
│ │ │ +001ca7a0: 7365 6420 2d69 2022 737c 5c28 247b 6d6f  sed -i "s|\(${mo
│ │ │ +001ca7b0: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ +001ca7c0: 7265 6765 7870 7d2e 2a24 7b70 7265 7669  regexp}.*${previ
│ │ │ +001ca7d0: 6f75 735f 6d6f 756e 745f 6f70 7473 7d5c  ous_mount_opts}\
│ │ │ +001ca7e0: 297c 5c31 2c6e 6f64 6576 7c22 202f 6574  )|\1,nodev|" /et
│ │ │ +001ca7f0: 632f 6673 7461 620a 2020 2020 6669 0a0a  c/fstab.    fi..
│ │ │ +001ca800: 0a20 2020 2069 6620 6d6b 6469 7220 2d70  .    if mkdir -p
│ │ │ +001ca810: 2022 2f76 6172 2f6c 6f67 2f61 7564 6974   "/var/log/audit
│ │ │ +001ca820: 223b 2074 6865 6e0a 2020 2020 2020 2020  "; then.        
│ │ │ +001ca830: 6966 206d 6f75 6e74 706f 696e 7420 2d71  if mountpoint -q
│ │ │ +001ca840: 2022 2f76 6172 2f6c 6f67 2f61 7564 6974   "/var/log/audit
│ │ │ +001ca850: 223b 2074 6865 6e0a 2020 2020 2020 2020  "; then.        
│ │ │ +001ca860: 2020 2020 6d6f 756e 7420 2d6f 2072 656d      mount -o rem
│ │ │ +001ca870: 6f75 6e74 202d 2d74 6172 6765 7420 222f  ount --target "/
│ │ │ +001ca880: 7661 722f 6c6f 672f 6175 6469 7422 0a20  var/log/audit". 
│ │ │ +001ca890: 2020 2020 2020 2066 690a 2020 2020 6669         fi.    fi
│ │ │ +001ca8a0: 0a7d 0a0a 7065 7266 6f72 6d5f 7265 6d65  .}..perform_reme
│ │ │ +001ca8b0: 6469 6174 696f 6e0a 0a65 6c73 650a 2020  diation..else.  
│ │ │ +001ca8c0: 2020 2667 743b 2661 6d70 3b32 2065 6368    >&2 ech
│ │ │ +001ca8d0: 6f20 2752 656d 6564 6961 7469 6f6e 2069  o 'Remediation i
│ │ │ +001ca8e0: 7320 6e6f 7420 6170 706c 6963 6162 6c65  s not applicable
│ │ │ +001ca8f0: 2c20 6e6f 7468 696e 6720 7761 7320 646f  , nothing was do
│ │ │ +001ca900: 6e65 270a 6669 0a3c 2f63 6f64 653e 3c2f  ne'.fi.
Remediati │ │ │ +001ca9c0: 6f6e 2041 6e61 636f 6e64 6120 736e 6970 on Anaconda snip │ │ │ +001ca9d0: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ +001ca9e0: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +001ca9f0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +001caa00: 7365 2220 6964 3d22 6964 3532 3222 3e3c se" id="id522">< │ │ │ +001caa10: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +001caa20: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +001caa30: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +001caa40: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +001caa50: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Complex │ │ │ +001caa60: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ +001caa70: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Disruption:high< │ │ │ +001caaa0: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>Rebo │ │ │ +001caab0: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +001caac0: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e< │ │ │ +001caad0: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:enable │ │ │ +001caaf0: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072 .part /v │ │ │ +001cab10: 6172 2f6c 6f67 2f61 7564 6974 202d 2d6d ar/log/audit --m │ │ │ +001cab20: 6f75 6e74 6f70 7469 6f6e 733d 226e 6f64 ountoptions="nod │ │ │ +001cab30: 6576 220a 3c2f 636f 6465 3e3c 2f70 7265 ev".
< │ │ │ 001cab60: 2f74 6162 6c65 3e3c 2f74 643e 3c2f 7472 /table>Remed │ │ │ -001cb780: 6961 7469 6f6e 2041 6e61 636f 6e64 6120 iation Anaconda │ │ │ -001cb790: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ -001cb7a0: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
< │ │ │ -001cb890: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
Com │ │ │ -001cb820: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ -001cb850: 3a3c 2f74 683e 3c74 643e 6869 6768 3c2f :high
│ │ │ -001cb870: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ -001cb880: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ -001cb8a0: 3c2f 7468 3e3c 7464 3e65 6e61 626c 653c enable< │ │ │ -001cb8b0: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
.par
│ │ │ -001cb8d0: 7420 2f76 6172 2f6c 6f67 2f61 7564 6974  t /var/log/audit
│ │ │ -001cb8e0: 202d 2d6d 6f75 6e74 6f70 7469 6f6e 733d   --mountoptions=
│ │ │ -001cb8f0: 226e 6f65 7865 6322 0a3c 2f63 6f64 653e  "noexec".
│ │ │ -001cb900: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ -001cb9b0: 7469 6f6e 2041 6e73 6962 6c65 2073 6e69 tion Ansible sni │ │ │ -001cb9c0: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -001cb9d0: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -001cba00: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ -001cba70: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption: │ │ │ -001cba90: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ -001cbac0: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Comple │ │ │ -001cba50: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ -001cba60: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
high
Reb │ │ │ -001cbaa0: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -001cbab0: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:configure< │ │ │ -001cbae0: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
- na
│ │ │ -001cbb00: 6d65 3a20 4761 7468 6572 2074 6865 2070  me: Gather the p
│ │ │ -001cbb10: 6163 6b61 6765 2066 6163 7473 0a20 2070  ackage facts.  p
│ │ │ -001cbb20: 6163 6b61 6765 5f66 6163 7473 3a0a 2020  ackage_facts:.  
│ │ │ -001cbb30: 2020 6d61 6e61 6765 723a 2061 7574 6f0a    manager: auto.
│ │ │ -001cbb40: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ -001cbb50: 2d38 3030 2d35 332d 4143 2d36 0a20 202d  -800-53-AC-6.  -
│ │ │ -001cbb60: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ -001cbb70: 3628 3129 0a20 202d 204e 4953 542d 3830  6(1).  - NIST-80
│ │ │ -001cbb80: 302d 3533 2d43 4d2d 3628 6129 0a20 202d  0-53-CM-6(a).  -
│ │ │ -001cbb90: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -001cbba0: 3728 6129 0a20 202d 204e 4953 542d 3830  7(a).  - NIST-80
│ │ │ -001cbbb0: 302d 3533 2d43 4d2d 3728 6229 0a20 202d  0-53-CM-7(b).  -
│ │ │ -001cbbc0: 204e 4953 542d 3830 302d 3533 2d4d 502d   NIST-800-53-MP-
│ │ │ -001cbbd0: 370a 2020 2d20 636f 6e66 6967 7572 655f  7.  - configure_
│ │ │ -001cbbe0: 7374 7261 7465 6779 0a20 202d 2068 6967  strategy.  - hig
│ │ │ -001cbbf0: 685f 6469 7372 7570 7469 6f6e 0a20 202d  h_disruption.  -
│ │ │ -001cbc00: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ -001cbc10: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ -001cbc20: 6974 790a 2020 2d20 6d6f 756e 745f 6f70  ity.  - mount_op
│ │ │ -001cbc30: 7469 6f6e 5f76 6172 5f6c 6f67 5f61 7564  tion_var_log_aud
│ │ │ -001cbc40: 6974 5f6e 6f65 7865 630a 2020 2d20 6e6f  it_noexec.  - no
│ │ │ -001cbc50: 5f72 6562 6f6f 745f 6e65 6564 6564 0a0a  _reboot_needed..
│ │ │ -001cbc60: 2d20 6e61 6d65 3a20 2741 6464 206e 6f65  - name: 'Add noe
│ │ │ -001cbc70: 7865 6320 4f70 7469 6f6e 2074 6f20 2f76  xec Option to /v
│ │ │ -001cbc80: 6172 2f6c 6f67 2f61 7564 6974 3a20 4368  ar/log/audit: Ch
│ │ │ -001cbc90: 6563 6b20 696e 666f 726d 6174 696f 6e20  eck information 
│ │ │ -001cbca0: 6173 736f 6369 6174 6564 2074 6f20 6d6f  associated to mo
│ │ │ -001cbcb0: 756e 7470 6f69 6e74 270a 2020 616e 7369  untpoint'.  ansi
│ │ │ -001cbcc0: 626c 652e 6275 696c 7469 6e2e 636f 6d6d  ble.builtin.comm
│ │ │ -001cbcd0: 616e 643a 2066 696e 646d 6e74 202d 2d66  and: findmnt --f
│ │ │ -001cbce0: 7374 6162 2027 2f76 6172 2f6c 6f67 2f61  stab '/var/log/a
│ │ │ -001cbcf0: 7564 6974 270a 2020 7265 6769 7374 6572  udit'.  register
│ │ │ -001cbd00: 3a20 6465 7669 6365 5f6e 616d 650a 2020  : device_name.  
│ │ │ -001cbd10: 6661 696c 6564 5f77 6865 6e3a 2064 6576  failed_when: dev
│ │ │ -001cbd20: 6963 655f 6e61 6d65 2e72 6320 2667 743b  ice_name.rc >
│ │ │ -001cbd30: 2031 0a20 2063 6861 6e67 6564 5f77 6865   1.  changed_whe
│ │ │ -001cbd40: 6e3a 2066 616c 7365 0a20 2063 6865 636b  n: false.  check
│ │ │ -001cbd50: 5f6d 6f64 653a 2066 616c 7365 0a20 2077  _mode: false.  w
│ │ │ -001cbd60: 6865 6e3a 0a20 202d 2028 206e 6f74 2028  hen:.  - ( not (
│ │ │ -001cbd70: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ -001cbd80: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001cbd90: 6765 7320 616e 6420 2262 6f6f 7463 2220  ges and "bootc" 
│ │ │ -001cbda0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001cbdb0: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ -001cbdc0: 6420 6e6f 7420 226f 7065 6e73 6869 6674  d not "openshift
│ │ │ -001cbdd0: 2d6b 7562 656c 6574 2220 696e 2061 6e73  -kubelet" in ans
│ │ │ -001cbde0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001cbdf0: 6765 7320 616e 6420 226f 7374 7265 6522  ges and "ostree"
│ │ │ -001cbe00: 2069 6e20 616e 7369 626c 655f 7072 6f63   in ansible_proc
│ │ │ -001cbe10: 5f63 6d64 6c69 6e65 0a20 2020 2029 2061  _cmdline.    ) a
│ │ │ -001cbe20: 6e64 206e 6f74 2028 2061 6e73 6962 6c65  nd not ( ansible
│ │ │ -001cbe30: 5f76 6972 7475 616c 697a 6174 696f 6e5f  _virtualization_
│ │ │ -001cbe40: 7479 7065 2069 6e20 5b22 646f 636b 6572  type in ["docker
│ │ │ -001cbe50: 222c 2022 6c78 6322 2c20 226f 7065 6e76  ", "lxc", "openv
│ │ │ -001cbe60: 7a22 2c20 2270 6f64 6d61 6e22 2c0a 2020  z", "podman",.  
│ │ │ -001cbe70: 2020 2263 6f6e 7461 696e 6572 225d 2029    "container"] )
│ │ │ -001cbe80: 2029 0a20 202d 2027 222f 7661 722f 6c6f   ).  - '"/var/lo
│ │ │ -001cbe90: 672f 6175 6469 7422 2069 6e20 616e 7369  g/audit" in ansi
│ │ │ -001cbea0: 626c 655f 6d6f 756e 7473 207c 206d 6170  ble_mounts | map
│ │ │ -001cbeb0: 2861 7474 7269 6275 7465 3d22 6d6f 756e  (attribute="moun
│ │ │ -001cbec0: 7422 2920 7c20 6c69 7374 270a 2020 7461  t") | list'.  ta
│ │ │ -001cbed0: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030  gs:.  - NIST-800
│ │ │ -001cbee0: 2d35 332d 4143 2d36 0a20 202d 204e 4953  -53-AC-6.  - NIS
│ │ │ -001cbef0: 542d 3830 302d 3533 2d41 432d 3628 3129  T-800-53-AC-6(1)
│ │ │ -001cbf00: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001cbf10: 2d43 4d2d 3628 6129 0a20 202d 204e 4953  -CM-6(a).  - NIS
│ │ │ -001cbf20: 542d 3830 302d 3533 2d43 4d2d 3728 6129  T-800-53-CM-7(a)
│ │ │ -001cbf30: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001cbf40: 2d43 4d2d 3728 6229 0a20 202d 204e 4953  -CM-7(b).  - NIS
│ │ │ -001cbf50: 542d 3830 302d 3533 2d4d 502d 370a 2020  T-800-53-MP-7.  
│ │ │ -001cbf60: 2d20 636f 6e66 6967 7572 655f 7374 7261  - configure_stra
│ │ │ -001cbf70: 7465 6779 0a20 202d 2068 6967 685f 6469  tegy.  - high_di
│ │ │ -001cbf80: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ -001cbf90: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ -001cbfa0: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ -001cbfb0: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e    - mount_option
│ │ │ -001cbfc0: 5f76 6172 5f6c 6f67 5f61 7564 6974 5f6e  _var_log_audit_n
│ │ │ -001cbfd0: 6f65 7865 630a 2020 2d20 6e6f 5f72 6562  oexec.  - no_reb
│ │ │ -001cbfe0: 6f6f 745f 6e65 6564 6564 0a0a 2d20 6e61  oot_needed..- na
│ │ │ -001cbff0: 6d65 3a20 2741 6464 206e 6f65 7865 6320  me: 'Add noexec 
│ │ │ -001cc000: 4f70 7469 6f6e 2074 6f20 2f76 6172 2f6c  Option to /var/l
│ │ │ -001cc010: 6f67 2f61 7564 6974 3a20 4372 6561 7465  og/audit: Create
│ │ │ -001cc020: 206d 6f75 6e74 5f69 6e66 6f20 6469 6374   mount_info dict
│ │ │ -001cc030: 696f 6e61 7279 2076 6172 6961 626c 6527  ionary variable'
│ │ │ -001cc040: 0a20 2073 6574 5f66 6163 743a 0a20 2020  .  set_fact:.   
│ │ │ -001cc050: 206d 6f75 6e74 5f69 6e66 6f3a 2027 7b7b   mount_info: '{{
│ │ │ -001cc060: 206d 6f75 6e74 5f69 6e66 6f7c 6465 6661   mount_info|defa
│ │ │ -001cc070: 756c 7428 7b7d 297c 636f 6d62 696e 6528  ult({})|combine(
│ │ │ -001cc080: 7b69 7465 6d2e 303a 2069 7465 6d2e 317d  {item.0: item.1}
│ │ │ -001cc090: 2920 7d7d 270a 2020 7769 7468 5f74 6f67  ) }}'.  with_tog
│ │ │ -001cc0a0: 6574 6865 723a 0a20 202d 2027 7b7b 2064  ether:.  - '{{ d
│ │ │ -001cc0b0: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ -001cc0c0: 745f 6c69 6e65 735b 305d 2e73 706c 6974  t_lines[0].split
│ │ │ -001cc0d0: 2829 207c 206d 6170 2827 276c 6f77 6572  () | map(''lower
│ │ │ -001cc0e0: 2727 2920 7c20 6c69 7374 207d 7d27 0a20  '') | list }}'. 
│ │ │ -001cc0f0: 202d 2027 7b7b 2064 6576 6963 655f 6e61   - '{{ device_na
│ │ │ -001cc100: 6d65 2e73 7464 6f75 745f 6c69 6e65 735b  me.stdout_lines[
│ │ │ -001cc110: 315d 2e73 706c 6974 2829 207c 206c 6973  1].split() | lis
│ │ │ -001cc120: 7420 7d7d 270a 2020 7768 656e 3a0a 2020  t }}'.  when:.  
│ │ │ -001cc130: 2d20 2820 6e6f 7420 2820 226b 6572 6e65  - ( not ( "kerne
│ │ │ -001cc140: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ -001cc150: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ -001cc160: 2022 626f 6f74 6322 2069 6e20 616e 7369   "bootc" in ansi
│ │ │ -001cc170: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001cc180: 6573 0a20 2020 2061 6e64 206e 6f74 2022  es.    and not "
│ │ │ -001cc190: 6f70 656e 7368 6966 742d 6b75 6265 6c65  openshift-kubele
│ │ │ -001cc1a0: 7422 2069 6e20 616e 7369 626c 655f 6661  t" in ansible_fa
│ │ │ -001cc1b0: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ -001cc1c0: 2022 6f73 7472 6565 2220 696e 2061 6e73   "ostree" in ans
│ │ │ -001cc1d0: 6962 6c65 5f70 726f 635f 636d 646c 696e  ible_proc_cmdlin
│ │ │ -001cc1e0: 650a 2020 2020 2920 616e 6420 6e6f 7420  e.    ) and not 
│ │ │ -001cc1f0: 2820 616e 7369 626c 655f 7669 7274 7561  ( ansible_virtua
│ │ │ -001cc200: 6c69 7a61 7469 6f6e 5f74 7970 6520 696e  lization_type in
│ │ │ -001cc210: 205b 2264 6f63 6b65 7222 2c20 226c 7863   ["docker", "lxc
│ │ │ -001cc220: 222c 2022 6f70 656e 767a 222c 2022 706f  ", "openvz", "po
│ │ │ -001cc230: 646d 616e 222c 0a20 2020 2022 636f 6e74  dman",.    "cont
│ │ │ -001cc240: 6169 6e65 7222 5d20 2920 290a 2020 2d20  ainer"] ) ).  - 
│ │ │ -001cc250: 2722 2f76 6172 2f6c 6f67 2f61 7564 6974  '"/var/log/audit
│ │ │ -001cc260: 2220 696e 2061 6e73 6962 6c65 5f6d 6f75  " in ansible_mou
│ │ │ -001cc270: 6e74 7320 7c20 6d61 7028 6174 7472 6962  nts | map(attrib
│ │ │ -001cc280: 7574 653d 226d 6f75 6e74 2229 207c 206c  ute="mount") | l
│ │ │ -001cc290: 6973 7427 0a20 202d 2064 6576 6963 655f  ist'.  - device_
│ │ │ -001cc2a0: 6e61 6d65 2e73 7464 6f75 7420 6973 2064  name.stdout is d
│ │ │ -001cc2b0: 6566 696e 6564 2061 6e64 2064 6576 6963  efined and devic
│ │ │ -001cc2c0: 655f 6e61 6d65 2e73 7464 6f75 745f 6c69  e_name.stdout_li
│ │ │ -001cc2d0: 6e65 7320 6973 2064 6566 696e 6564 0a20  nes is defined. 
│ │ │ -001cc2e0: 202d 2028 6465 7669 6365 5f6e 616d 652e   - (device_name.
│ │ │ -001cc2f0: 7374 646f 7574 207c 206c 656e 6774 6820  stdout | length 
│ │ │ -001cc300: 2667 743b 2030 290a 2020 7461 6773 3a0a  > 0).  tags:.
│ │ │ -001cc310: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001cc320: 4143 2d36 0a20 202d 204e 4953 542d 3830  AC-6.  - NIST-80
│ │ │ -001cc330: 302d 3533 2d41 432d 3628 3129 0a20 202d  0-53-AC-6(1).  -
│ │ │ -001cc340: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -001cc350: 3628 6129 0a20 202d 204e 4953 542d 3830  6(a).  - NIST-80
│ │ │ -001cc360: 302d 3533 2d43 4d2d 3728 6129 0a20 202d  0-53-CM-7(a).  -
│ │ │ -001cc370: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -001cc380: 3728 6229 0a20 202d 204e 4953 542d 3830  7(b).  - NIST-80
│ │ │ -001cc390: 302d 3533 2d4d 502d 370a 2020 2d20 636f  0-53-MP-7.  - co
│ │ │ -001cc3a0: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ -001cc3b0: 0a20 202d 2068 6967 685f 6469 7372 7570  .  - high_disrup
│ │ │ -001cc3c0: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d  tion.  - low_com
│ │ │ -001cc3d0: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ -001cc3e0: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ -001cc3f0: 6d6f 756e 745f 6f70 7469 6f6e 5f76 6172  mount_option_var
│ │ │ -001cc400: 5f6c 6f67 5f61 7564 6974 5f6e 6f65 7865  _log_audit_noexe
│ │ │ -001cc410: 630a 2020 2d20 6e6f 5f72 6562 6f6f 745f  c.  - no_reboot_
│ │ │ -001cc420: 6e65 6564 6564 0a0a 2d20 6e61 6d65 3a20  needed..- name: 
│ │ │ -001cc430: 2741 6464 206e 6f65 7865 6320 4f70 7469  'Add noexec Opti
│ │ │ -001cc440: 6f6e 2074 6f20 2f76 6172 2f6c 6f67 2f61  on to /var/log/a
│ │ │ -001cc450: 7564 6974 3a20 4966 202f 7661 722f 6c6f  udit: If /var/lo
│ │ │ -001cc460: 672f 6175 6469 7420 6e6f 7420 6d6f 756e  g/audit not moun
│ │ │ -001cc470: 7465 642c 2063 7261 6674 0a20 2020 206d  ted, craft.    m
│ │ │ -001cc480: 6f75 6e74 5f69 6e66 6f20 6d61 6e75 616c  ount_info manual
│ │ │ -001cc490: 6c79 270a 2020 7365 745f 6661 6374 3a0a  ly'.  set_fact:.
│ │ │ -001cc4a0: 2020 2020 6d6f 756e 745f 696e 666f 3a20      mount_info: 
│ │ │ -001cc4b0: 277b 7b20 6d6f 756e 745f 696e 666f 7c64  '{{ mount_info|d
│ │ │ -001cc4c0: 6566 6175 6c74 287b 7d29 7c63 6f6d 6269  efault({})|combi
│ │ │ -001cc4d0: 6e65 287b 6974 656d 2e30 3a20 6974 656d  ne({item.0: item
│ │ │ -001cc4e0: 2e31 7d29 207d 7d27 0a20 2077 6974 685f  .1}) }}'.  with_
│ │ │ -001cc4f0: 746f 6765 7468 6572 3a0a 2020 2d20 2d20  together:.  - - 
│ │ │ -001cc500: 7461 7267 6574 0a20 2020 202d 2073 6f75  target.    - sou
│ │ │ -001cc510: 7263 650a 2020 2020 2d20 6673 7479 7065  rce.    - fstype
│ │ │ -001cc520: 0a20 2020 202d 206f 7074 696f 6e73 0a20  .    - options. 
│ │ │ -001cc530: 202d 202d 202f 7661 722f 6c6f 672f 6175   - - /var/log/au
│ │ │ -001cc540: 6469 740a 2020 2020 2d20 2727 0a20 2020  dit.    - ''.   
│ │ │ -001cc550: 202d 2027 270a 2020 2020 2d20 6465 6661   - ''.    - defa
│ │ │ -001cc560: 756c 7473 0a20 2077 6865 6e3a 0a20 202d  ults.  when:.  -
│ │ │ -001cc570: 2028 206e 6f74 2028 2022 6b65 726e 656c   ( not ( "kernel
│ │ │ -001cc580: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001cc590: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ -001cc5a0: 2262 6f6f 7463 2220 696e 2061 6e73 6962  "bootc" in ansib
│ │ │ -001cc5b0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -001cc5c0: 730a 2020 2020 616e 6420 6e6f 7420 226f  s.    and not "o
│ │ │ -001cc5d0: 7065 6e73 6869 6674 2d6b 7562 656c 6574  penshift-kubelet
│ │ │ -001cc5e0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001cc5f0: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ -001cc600: 226f 7374 7265 6522 2069 6e20 616e 7369  "ostree" in ansi
│ │ │ -001cc610: 626c 655f 7072 6f63 5f63 6d64 6c69 6e65  ble_proc_cmdline
│ │ │ -001cc620: 0a20 2020 2029 2061 6e64 206e 6f74 2028  .    ) and not (
│ │ │ -001cc630: 2061 6e73 6962 6c65 5f76 6972 7475 616c   ansible_virtual
│ │ │ -001cc640: 697a 6174 696f 6e5f 7479 7065 2069 6e20  ization_type in 
│ │ │ -001cc650: 5b22 646f 636b 6572 222c 2022 6c78 6322  ["docker", "lxc"
│ │ │ -001cc660: 2c20 226f 7065 6e76 7a22 2c20 2270 6f64  , "openvz", "pod
│ │ │ -001cc670: 6d61 6e22 2c0a 2020 2020 2263 6f6e 7461  man",.    "conta
│ │ │ -001cc680: 696e 6572 225d 2029 2029 0a20 202d 2027  iner"] ) ).  - '
│ │ │ -001cc690: 222f 7661 722f 6c6f 672f 6175 6469 7422  "/var/log/audit"
│ │ │ -001cc6a0: 2069 6e20 616e 7369 626c 655f 6d6f 756e   in ansible_moun
│ │ │ -001cc6b0: 7473 207c 206d 6170 2861 7474 7269 6275  ts | map(attribu
│ │ │ -001cc6c0: 7465 3d22 6d6f 756e 7422 2920 7c20 6c69  te="mount") | li
│ │ │ -001cc6d0: 7374 270a 2020 2d20 2822 2d2d 6673 7461  st'.  - ("--fsta
│ │ │ -001cc6e0: 6222 207c 206c 656e 6774 6820 3d3d 2030  b" | length == 0
│ │ │ -001cc6f0: 290a 2020 2d20 6465 7669 6365 5f6e 616d  ).  - device_nam
│ │ │ -001cc700: 652e 7374 646f 7574 2069 7320 6465 6669  e.stdout is defi
│ │ │ -001cc710: 6e65 6420 616e 6420 6465 7669 6365 5f6e  ned and device_n
│ │ │ -001cc720: 616d 652e 7374 646f 7574 5f6c 696e 6573  ame.stdout_lines
│ │ │ -001cc730: 2069 7320 6465 6669 6e65 640a 2020 2d20   is defined.  - 
│ │ │ -001cc740: 2864 6576 6963 655f 6e61 6d65 2e73 7464  (device_name.std
│ │ │ -001cc750: 6f75 7420 7c20 6c65 6e67 7468 203d 3d20  out | length == 
│ │ │ -001cc760: 3029 0a20 2074 6167 733a 0a20 202d 204e  0).  tags:.  - N
│ │ │ -001cc770: 4953 542d 3830 302d 3533 2d41 432d 360a  IST-800-53-AC-6.
│ │ │ -001cc780: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001cc790: 4143 2d36 2831 290a 2020 2d20 4e49 5354  AC-6(1).  - NIST
│ │ │ -001cc7a0: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ -001cc7b0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001cc7c0: 434d 2d37 2861 290a 2020 2d20 4e49 5354  CM-7(a).  - NIST
│ │ │ -001cc7d0: 2d38 3030 2d35 332d 434d 2d37 2862 290a  -800-53-CM-7(b).
│ │ │ -001cc7e0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001cc7f0: 4d50 2d37 0a20 202d 2063 6f6e 6669 6775  MP-7.  - configu
│ │ │ -001cc800: 7265 5f73 7472 6174 6567 790a 2020 2d20  re_strategy.  - 
│ │ │ -001cc810: 6869 6768 5f64 6973 7275 7074 696f 6e0a  high_disruption.
│ │ │ -001cc820: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ -001cc830: 7479 0a20 202d 206d 6564 6975 6d5f 7365  ty.  - medium_se
│ │ │ -001cc840: 7665 7269 7479 0a20 202d 206d 6f75 6e74  verity.  - mount
│ │ │ -001cc850: 5f6f 7074 696f 6e5f 7661 725f 6c6f 675f  _option_var_log_
│ │ │ -001cc860: 6175 6469 745f 6e6f 6578 6563 0a20 202d  audit_noexec.  -
│ │ │ -001cc870: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ -001cc880: 640a 0a2d 206e 616d 653a 2027 4164 6420  d..- name: 'Add 
│ │ │ -001cc890: 6e6f 6578 6563 204f 7074 696f 6e20 746f  noexec Option to
│ │ │ -001cc8a0: 202f 7661 722f 6c6f 672f 6175 6469 743a   /var/log/audit:
│ │ │ -001cc8b0: 204d 616b 6520 7375 7265 206e 6f65 7865   Make sure noexe
│ │ │ -001cc8c0: 6320 6f70 7469 6f6e 2069 7320 7061 7274  c option is part
│ │ │ -001cc8d0: 206f 6620 7468 650a 2020 2020 746f 202f   of the.    to /
│ │ │ -001cc8e0: 7661 722f 6c6f 672f 6175 6469 7420 6f70  var/log/audit op
│ │ │ -001cc8f0: 7469 6f6e 7327 0a20 2073 6574 5f66 6163  tions'.  set_fac
│ │ │ -001cc900: 743a 0a20 2020 206d 6f75 6e74 5f69 6e66  t:.    mount_inf
│ │ │ -001cc910: 6f3a 2027 7b7b 206d 6f75 6e74 5f69 6e66  o: '{{ mount_inf
│ │ │ -001cc920: 6f20 7c20 636f 6d62 696e 6528 207b 2727  o | combine( {''
│ │ │ -001cc930: 6f70 7469 6f6e 7327 273a 2727 2727 7e28  options'':''''~(
│ │ │ -001cc940: 6d6f 756e 745f 696e 666f 2e6f 7074 696f  mount_info.optio
│ │ │ -001cc950: 6e73 207c 0a20 2020 2020 2064 6566 6175  ns |.      defau
│ │ │ -001cc960: 6c74 2827 2727 2729 297e 2827 272c 2727  lt(''''))~('',''
│ │ │ -001cc970: 2069 6620 286d 6f75 6e74 5f69 6e66 6f2e   if (mount_info.
│ │ │ -001cc980: 6f70 7469 6f6e 7320 7c20 6465 6661 756c  options | defaul
│ │ │ -001cc990: 7428 2727 2727 2929 2065 6c73 6520 2727  t('''')) else ''
│ │ │ -001cc9a0: 2727 297e 2727 6e6f 6578 6563 2727 0a20  '')~''noexec''. 
│ │ │ -001cc9b0: 2020 2020 207d 2920 7d7d 270a 2020 7768       }) }}'.  wh
│ │ │ -001cc9c0: 656e 3a0a 2020 2d20 2820 6e6f 7420 2820  en:.  - ( not ( 
│ │ │ -001cc9d0: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ -001cc9e0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001cc9f0: 6573 2061 6e64 2022 626f 6f74 6322 2069  es and "bootc" i
│ │ │ -001cca00: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -001cca10: 7061 636b 6167 6573 0a20 2020 2061 6e64  packages.    and
│ │ │ -001cca20: 206e 6f74 2022 6f70 656e 7368 6966 742d   not "openshift-
│ │ │ -001cca30: 6b75 6265 6c65 7422 2069 6e20 616e 7369  kubelet" in ansi
│ │ │ -001cca40: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001cca50: 6573 2061 6e64 2022 6f73 7472 6565 2220  es and "ostree" 
│ │ │ -001cca60: 696e 2061 6e73 6962 6c65 5f70 726f 635f  in ansible_proc_
│ │ │ -001cca70: 636d 646c 696e 650a 2020 2020 2920 616e  cmdline.    ) an
│ │ │ -001cca80: 6420 6e6f 7420 2820 616e 7369 626c 655f  d not ( ansible_
│ │ │ -001cca90: 7669 7274 7561 6c69 7a61 7469 6f6e 5f74  virtualization_t
│ │ │ -001ccaa0: 7970 6520 696e 205b 2264 6f63 6b65 7222  ype in ["docker"
│ │ │ -001ccab0: 2c20 226c 7863 222c 2022 6f70 656e 767a  , "lxc", "openvz
│ │ │ -001ccac0: 222c 2022 706f 646d 616e 222c 0a20 2020  ", "podman",.   
│ │ │ -001ccad0: 2022 636f 6e74 6169 6e65 7222 5d20 2920   "container"] ) 
│ │ │ -001ccae0: 290a 2020 2d20 2722 2f76 6172 2f6c 6f67  ).  - '"/var/log
│ │ │ -001ccaf0: 2f61 7564 6974 2220 696e 2061 6e73 6962  /audit" in ansib
│ │ │ -001ccb00: 6c65 5f6d 6f75 6e74 7320 7c20 6d61 7028  le_mounts | map(
│ │ │ -001ccb10: 6174 7472 6962 7574 653d 226d 6f75 6e74  attribute="mount
│ │ │ -001ccb20: 2229 207c 206c 6973 7427 0a20 202d 206d  ") | list'.  - m
│ │ │ -001ccb30: 6f75 6e74 5f69 6e66 6f20 6973 2064 6566  ount_info is def
│ │ │ -001ccb40: 696e 6564 2061 6e64 2022 6e6f 6578 6563  ined and "noexec
│ │ │ -001ccb50: 2220 6e6f 7420 696e 2028 6d6f 756e 745f  " not in (mount_
│ │ │ -001ccb60: 696e 666f 2e6f 7074 696f 6e73 207c 2064  info.options | d
│ │ │ -001ccb70: 6566 6175 6c74 2827 2729 290a 2020 7461  efault('')).  ta
│ │ │ -001ccb80: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030  gs:.  - NIST-800
│ │ │ -001ccb90: 2d35 332d 4143 2d36 0a20 202d 204e 4953  -53-AC-6.  - NIS
│ │ │ -001ccba0: 542d 3830 302d 3533 2d41 432d 3628 3129  T-800-53-AC-6(1)
│ │ │ -001ccbb0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001ccbc0: 2d43 4d2d 3628 6129 0a20 202d 204e 4953  -CM-6(a).  - NIS
│ │ │ -001ccbd0: 542d 3830 302d 3533 2d43 4d2d 3728 6129  T-800-53-CM-7(a)
│ │ │ -001ccbe0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001ccbf0: 2d43 4d2d 3728 6229 0a20 202d 204e 4953  -CM-7(b).  - NIS
│ │ │ -001ccc00: 542d 3830 302d 3533 2d4d 502d 370a 2020  T-800-53-MP-7.  
│ │ │ -001ccc10: 2d20 636f 6e66 6967 7572 655f 7374 7261  - configure_stra
│ │ │ -001ccc20: 7465 6779 0a20 202d 2068 6967 685f 6469  tegy.  - high_di
│ │ │ -001ccc30: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ -001ccc40: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ -001ccc50: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ -001ccc60: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e    - mount_option
│ │ │ -001ccc70: 5f76 6172 5f6c 6f67 5f61 7564 6974 5f6e  _var_log_audit_n
│ │ │ -001ccc80: 6f65 7865 630a 2020 2d20 6e6f 5f72 6562  oexec.  - no_reb
│ │ │ -001ccc90: 6f6f 745f 6e65 6564 6564 0a0a 2d20 6e61  oot_needed..- na
│ │ │ -001ccca0: 6d65 3a20 2741 6464 206e 6f65 7865 6320  me: 'Add noexec 
│ │ │ -001cccb0: 4f70 7469 6f6e 2074 6f20 2f76 6172 2f6c  Option to /var/l
│ │ │ -001cccc0: 6f67 2f61 7564 6974 3a20 456e 7375 7265  og/audit: Ensure
│ │ │ -001cccd0: 202f 7661 722f 6c6f 672f 6175 6469 7420   /var/log/audit 
│ │ │ -001ccce0: 6973 206d 6f75 6e74 6564 2077 6974 680a  is mounted with.
│ │ │ -001cccf0: 2020 2020 6e6f 6578 6563 206f 7074 696f      noexec optio
│ │ │ -001ccd00: 6e27 0a20 2061 6e73 6962 6c65 2e70 6f73  n'.  ansible.pos
│ │ │ -001ccd10: 6978 2e6d 6f75 6e74 3a0a 2020 2020 7061  ix.mount:.    pa
│ │ │ -001ccd20: 7468 3a20 2f76 6172 2f6c 6f67 2f61 7564  th: /var/log/aud
│ │ │ -001ccd30: 6974 0a20 2020 2073 7263 3a20 277b 7b20  it.    src: '{{ 
│ │ │ -001ccd40: 6d6f 756e 745f 696e 666f 2e73 6f75 7263  mount_info.sourc
│ │ │ -001ccd50: 6520 7c20 6465 6661 756c 7428 2727 2727  e | default(''''
│ │ │ -001ccd60: 2920 7d7d 270a 2020 2020 6f70 7473 3a20  ) }}'.    opts: 
│ │ │ -001ccd70: 277b 7b20 6d6f 756e 745f 696e 666f 2e6f  '{{ mount_info.o
│ │ │ -001ccd80: 7074 696f 6e73 207c 2064 6566 6175 6c74  ptions | default
│ │ │ -001ccd90: 2827 2727 2729 207d 7d27 0a20 2020 2073  ('''') }}'.    s
│ │ │ -001ccda0: 7461 7465 3a20 6d6f 756e 7465 640a 2020  tate: mounted.  
│ │ │ -001ccdb0: 2020 6673 7479 7065 3a20 277b 7b20 6d6f    fstype: '{{ mo
│ │ │ -001ccdc0: 756e 745f 696e 666f 2e66 7374 7970 6520  unt_info.fstype 
│ │ │ -001ccdd0: 7c20 6465 6661 756c 7428 2727 2727 2920  | default('''') 
│ │ │ -001ccde0: 7d7d 270a 2020 7265 6769 7374 6572 3a20  }}'.  register: 
│ │ │ -001ccdf0: 6d6f 756e 745f 7265 7375 6c74 0a20 2066  mount_result.  f
│ │ │ -001cce00: 6169 6c65 645f 7768 656e 3a0a 2020 2d20  ailed_when:.  - 
│ │ │ -001cce10: 6d6f 756e 745f 7265 7375 6c74 2069 7320  mount_result is 
│ │ │ -001cce20: 6661 696c 6564 0a20 202d 2027 2727 7461  failed.  - '''ta
│ │ │ -001cce30: 7267 6574 2069 7320 6275 7379 2727 206e  rget is busy'' n
│ │ │ -001cce40: 6f74 2069 6e20 286d 6f75 6e74 5f72 6573  ot in (mount_res
│ │ │ -001cce50: 756c 742e 6d73 6720 7c20 6465 6661 756c  ult.msg | defaul
│ │ │ -001cce60: 7428 2727 2727 2929 270a 2020 2d20 2727  t(''''))'.  - ''
│ │ │ -001cce70: 2761 6c72 6561 6479 206d 6f75 6e74 6564  'already mounted
│ │ │ -001cce80: 2727 206e 6f74 2069 6e20 286d 6f75 6e74  '' not in (mount
│ │ │ -001cce90: 5f72 6573 756c 742e 6d73 6720 7c20 6465  _result.msg | de
│ │ │ -001ccea0: 6661 756c 7428 2727 2727 2929 270a 2020  fault(''''))'.  
│ │ │ -001cceb0: 7768 656e 3a0a 2020 2d20 2820 6e6f 7420  when:.  - ( not 
│ │ │ -001ccec0: 2820 226b 6572 6e65 6c22 2069 6e20 616e  ( "kernel" in an
│ │ │ -001cced0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001ccee0: 6167 6573 2061 6e64 2022 626f 6f74 6322  ages and "bootc"
│ │ │ -001ccef0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001ccf00: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ -001ccf10: 6e64 206e 6f74 2022 6f70 656e 7368 6966  nd not "openshif
│ │ │ -001ccf20: 742d 6b75 6265 6c65 7422 2069 6e20 616e  t-kubelet" in an
│ │ │ -001ccf30: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001ccf40: 6167 6573 2061 6e64 2022 6f73 7472 6565  ages and "ostree
│ │ │ -001ccf50: 2220 696e 2061 6e73 6962 6c65 5f70 726f  " in ansible_pro
│ │ │ -001ccf60: 635f 636d 646c 696e 650a 2020 2020 2920  c_cmdline.    ) 
│ │ │ -001ccf70: 616e 6420 6e6f 7420 2820 616e 7369 626c  and not ( ansibl
│ │ │ -001ccf80: 655f 7669 7274 7561 6c69 7a61 7469 6f6e  e_virtualization
│ │ │ -001ccf90: 5f74 7970 6520 696e 205b 2264 6f63 6b65  _type in ["docke
│ │ │ -001ccfa0: 7222 2c20 226c 7863 222c 2022 6f70 656e  r", "lxc", "open
│ │ │ -001ccfb0: 767a 222c 2022 706f 646d 616e 222c 0a20  vz", "podman",. 
│ │ │ -001ccfc0: 2020 2022 636f 6e74 6169 6e65 7222 5d20     "container"] 
│ │ │ -001ccfd0: 2920 290a 2020 2d20 2722 2f76 6172 2f6c  ) ).  - '"/var/l
│ │ │ -001ccfe0: 6f67 2f61 7564 6974 2220 696e 2061 6e73  og/audit" in ans
│ │ │ -001ccff0: 6962 6c65 5f6d 6f75 6e74 7320 7c20 6d61  ible_mounts | ma
│ │ │ -001cd000: 7028 6174 7472 6962 7574 653d 226d 6f75  p(attribute="mou
│ │ │ -001cd010: 6e74 2229 207c 206c 6973 7427 0a20 202d  nt") | list'.  -
│ │ │ -001cd020: 206d 6f75 6e74 5f69 6e66 6f20 6973 2064   mount_info is d
│ │ │ -001cd030: 6566 696e 6564 0a20 202d 2028 6465 7669  efined.  - (devi
│ │ │ -001cd040: 6365 5f6e 616d 652e 7374 646f 7574 2069  ce_name.stdout i
│ │ │ -001cd050: 7320 6465 6669 6e65 6420 616e 6420 2864  s defined and (d
│ │ │ -001cd060: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ -001cd070: 7420 7c20 6c65 6e67 7468 2026 6774 3b20  t | length > 
│ │ │ -001cd080: 3029 2920 6f72 2028 222d 2d66 7374 6162  0)) or ("--fstab
│ │ │ -001cd090: 220a 2020 2020 7c20 6c65 6e67 7468 203d  ".    | length =
│ │ │ -001cd0a0: 3d20 3029 0a20 2074 6167 733a 0a20 202d  = 0).  tags:.  -
│ │ │ -001cd0b0: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ -001cd0c0: 360a 2020 2d20 4e49 5354 2d38 3030 2d35  6.  - NIST-800-5
│ │ │ -001cd0d0: 332d 4143 2d36 2831 290a 2020 2d20 4e49  3-AC-6(1).  - NI
│ │ │ -001cd0e0: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ -001cd0f0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -001cd100: 332d 434d 2d37 2861 290a 2020 2d20 4e49  3-CM-7(a).  - NI
│ │ │ -001cd110: 5354 2d38 3030 2d35 332d 434d 2d37 2862  ST-800-53-CM-7(b
│ │ │ -001cd120: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -001cd130: 332d 4d50 2d37 0a20 202d 2063 6f6e 6669  3-MP-7.  - confi
│ │ │ -001cd140: 6775 7265 5f73 7472 6174 6567 790a 2020  gure_strategy.  
│ │ │ -001cd150: 2d20 6869 6768 5f64 6973 7275 7074 696f  - high_disruptio
│ │ │ -001cd160: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65  n.  - low_comple
│ │ │ -001cd170: 7869 7479 0a20 202d 206d 6564 6975 6d5f  xity.  - medium_
│ │ │ -001cd180: 7365 7665 7269 7479 0a20 202d 206d 6f75  severity.  - mou
│ │ │ -001cd190: 6e74 5f6f 7074 696f 6e5f 7661 725f 6c6f  nt_option_var_lo
│ │ │ -001cd1a0: 675f 6175 6469 745f 6e6f 6578 6563 0a20  g_audit_noexec. 
│ │ │ -001cd1b0: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ -001cd1c0: 6465 640a 3c2f 636f 6465 3e3c 2f70 7265  ded.
Remediation │ │ │ -001cd280: 5368 656c 6c20 7363 7269 7074 20e2 87b2 Shell script ... │ │ │ -001cd290: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Reboot:false
# Remediatio
│ │ │ -001cd350: 6e20 6973 2061 7070 6c69 6361 626c 6520  n is applicable 
│ │ │ -001cd360: 6f6e 6c79 2069 6e20 6365 7274 6169 6e20  only in certain 
│ │ │ -001cd370: 706c 6174 666f 726d 730a 6966 2028 2021  platforms.if ( !
│ │ │ -001cd380: 2028 207b 2072 706d 202d 2d71 7569 6574   ( { rpm --quiet
│ │ │ -001cd390: 202d 7120 6b65 726e 656c 203b 7d20 2661   -q kernel ;} &a
│ │ │ -001cd3a0: 6d70 3b26 616d 703b 207b 2072 706d 202d  mp;& { rpm -
│ │ │ -001cd3b0: 2d71 7569 6574 202d 7120 626f 6f74 6320  -quiet -q bootc 
│ │ │ -001cd3c0: 3b7d 2026 616d 703b 2661 6d70 3b20 7b20  ;} && { 
│ │ │ -001cd3d0: 2120 7270 6d20 2d2d 7175 6965 7420 2d71  ! rpm --quiet -q
│ │ │ -001cd3e0: 206f 7065 6e73 6869 6674 2d6b 7562 656c   openshift-kubel
│ │ │ -001cd3f0: 6574 203b 7d20 2661 6d70 3b26 616d 703b  et ;} &&
│ │ │ -001cd400: 2028 5b20 2d66 202f 7275 6e2f 6f73 7472   ([ -f /run/ostr
│ │ │ -001cd410: 6565 2d62 6f6f 7465 6420 5d20 7c7c 205b  ee-booted ] || [
│ │ │ -001cd420: 202d 4c20 2f6f 7374 7265 6520 5d29 2029   -L /ostree ]) )
│ │ │ -001cd430: 2026 616d 703b 2661 6d70 3b20 2120 2820   && ! ( 
│ │ │ -001cd440: 5b20 2d66 202f 2e64 6f63 6b65 7265 6e76  [ -f /.dockerenv
│ │ │ -001cd450: 205d 207c 7c20 5b20 2d66 202f 7275 6e2f   ] || [ -f /run/
│ │ │ -001cd460: 2e63 6f6e 7461 696e 6572 656e 7620 5d20  .containerenv ] 
│ │ │ -001cd470: 2920 2920 2661 6d70 3b26 616d 703b 207b  ) ) && {
│ │ │ -001cd480: 2028 2066 696e 646d 6e74 202d 2d6b 6572   ( findmnt --ker
│ │ │ -001cd490: 6e65 6c20 222f 7661 722f 6c6f 672f 6175  nel "/var/log/au
│ │ │ -001cd4a0: 6469 7422 2026 6774 3b20 2f64 6576 2f6e  dit" > /dev/n
│ │ │ -001cd4b0: 756c 6c20 7c7c 2066 696e 646d 6e74 202d  ull || findmnt -
│ │ │ -001cd4c0: 2d66 7374 6162 2022 2f76 6172 2f6c 6f67  -fstab "/var/log
│ │ │ -001cd4d0: 2f61 7564 6974 2220 2667 743b 202f 6465  /audit" > /de
│ │ │ -001cd4e0: 762f 6e75 6c6c 2029 3b20 7d3b 2074 6865  v/null ); }; the
│ │ │ -001cd4f0: 6e0a 0a66 756e 6374 696f 6e20 7065 7266  n..function perf
│ │ │ -001cd500: 6f72 6d5f 7265 6d65 6469 6174 696f 6e20  orm_remediation 
│ │ │ -001cd510: 7b0a 0a20 2020 200a 2020 2020 2020 2020  {..    .        
│ │ │ -001cd520: 2320 7468 6520 6d6f 756e 7420 706f 696e  # the mount poin
│ │ │ -001cd530: 7420 2f76 6172 2f6c 6f67 2f61 7564 6974  t /var/log/audit
│ │ │ -001cd540: 2068 6173 2074 6f20 6265 2064 6566 696e   has to be defin
│ │ │ -001cd550: 6564 2069 6e20 2f65 7463 2f66 7374 6162  ed in /etc/fstab
│ │ │ -001cd560: 0a20 2020 2020 2020 2023 2062 6566 6f72  .        # befor
│ │ │ -001cd570: 6520 7468 6973 2072 656d 6564 6961 7469  e this remediati
│ │ │ -001cd580: 6f6e 2063 616e 2062 6520 6578 6563 7574  on can be execut
│ │ │ -001cd590: 6564 2e20 496e 2063 6173 6520 6974 2069  ed. In case it i
│ │ │ -001cd5a0: 7320 6e6f 7420 6465 6669 6e65 642c 2074  s not defined, t
│ │ │ -001cd5b0: 6865 0a20 2020 2020 2020 2023 2072 656d  he.        # rem
│ │ │ -001cd5c0: 6564 6961 7469 6f6e 2061 626f 7274 7320  ediation aborts 
│ │ │ -001cd5d0: 616e 6420 6e6f 2063 6861 6e67 6573 2072  and no changes r
│ │ │ -001cd5e0: 6567 6172 6469 6e67 2074 6865 206d 6f75  egarding the mou
│ │ │ -001cd5f0: 6e74 2070 6f69 6e74 2061 7265 2064 6f6e  nt point are don
│ │ │ -001cd600: 652e 0a20 2020 2020 2020 206d 6f75 6e74  e..        mount
│ │ │ -001cd610: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ -001cd620: 6578 703d 2224 2870 7269 6e74 6620 225e  exp="$(printf "^
│ │ │ -001cd630: 5b5b 3a73 7061 6365 3a5d 5d2a 5b5e 235d  [[:space:]]*[^#]
│ │ │ -001cd640: 2e2a 5b5b 3a73 7061 6365 3a5d 5d25 735b  .*[[:space:]]%s[
│ │ │ -001cd650: 5b3a 7370 6163 653a 5d5d 2220 222f 7661  [:space:]]" "/va
│ │ │ -001cd660: 722f 6c6f 672f 6175 6469 7422 2922 0a0a  r/log/audit")"..
│ │ │ -001cd670: 2020 2020 6772 6570 2022 246d 6f75 6e74      grep "$mount
│ │ │ -001cd680: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ -001cd690: 6578 7022 202d 7120 2f65 7463 2f66 7374  exp" -q /etc/fst
│ │ │ -001cd6a0: 6162 205c 0a20 2020 2020 2020 207c 7c20  ab \.        || 
│ │ │ -001cd6b0: 7b20 6563 686f 2022 5468 6520 6d6f 756e  { echo "The moun
│ │ │ -001cd6c0: 7420 706f 696e 7420 272f 7661 722f 6c6f  t point '/var/lo
│ │ │ -001cd6d0: 672f 6175 6469 7427 2069 7320 6e6f 7420  g/audit' is not 
│ │ │ -001cd6e0: 6576 656e 2069 6e20 2f65 7463 2f66 7374  even in /etc/fst
│ │ │ -001cd6f0: 6162 2c20 736f 2077 6520 6361 6e27 7420  ab, so we can't 
│ │ │ -001cd700: 7365 7420 7570 206d 6f75 6e74 206f 7074  set up mount opt
│ │ │ -001cd710: 696f 6e73 2220 2667 743b 2661 6d70 3b32  ions" >&2
│ │ │ -001cd720: 3b0a 2020 2020 2020 2020 2020 2020 2020  ;.              
│ │ │ -001cd730: 2020 6563 686f 2022 4e6f 7420 7265 6d65    echo "Not reme
│ │ │ -001cd740: 6469 6174 696e 672c 2062 6563 6175 7365  diating, because
│ │ │ -001cd750: 2074 6865 7265 2069 7320 6e6f 2072 6563   there is no rec
│ │ │ -001cd760: 6f72 6420 6f66 202f 7661 722f 6c6f 672f  ord of /var/log/
│ │ │ -001cd770: 6175 6469 7420 696e 202f 6574 632f 6673  audit in /etc/fs
│ │ │ -001cd780: 7461 6222 2026 6774 3b26 616d 703b 323b  tab" >&2;
│ │ │ -001cd790: 2072 6574 7572 6e20 313b 207d 0a20 2020   return 1; }.   
│ │ │ -001cd7a0: 200a 0a0a 2020 2020 6d6f 756e 745f 706f   ...    mount_po
│ │ │ -001cd7b0: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ -001cd7c0: 3d22 2428 7072 696e 7466 2022 5e5b 5b3a  ="$(printf "^[[:
│ │ │ -001cd7d0: 7370 6163 653a 5d5d 2a5b 5e23 5d2e 2a5b  space:]]*[^#].*[
│ │ │ -001cd7e0: 5b3a 7370 6163 653a 5d5d 2573 5b5b 3a73  [:space:]]%s[[:s
│ │ │ -001cd7f0: 7061 6365 3a5d 5d22 202f 7661 722f 6c6f  pace:]]" /var/lo
│ │ │ -001cd800: 672f 6175 6469 7429 220a 0a20 2020 2023  g/audit)"..    #
│ │ │ -001cd810: 2049 6620 7468 6520 6d6f 756e 7420 706f   If the mount po
│ │ │ -001cd820: 696e 7420 6973 206e 6f74 2069 6e20 2f65  int is not in /e
│ │ │ -001cd830: 7463 2f66 7374 6162 2c20 6765 7420 7072  tc/fstab, get pr
│ │ │ -001cd840: 6576 696f 7573 206d 6f75 6e74 206f 7074  evious mount opt
│ │ │ -001cd850: 696f 6e73 2066 726f 6d20 2f65 7463 2f6d  ions from /etc/m
│ │ │ -001cd860: 7461 620a 2020 2020 6966 2021 2067 7265  tab.    if ! gre
│ │ │ -001cd870: 7020 2d71 2022 246d 6f75 6e74 5f70 6f69  p -q "$mount_poi
│ │ │ -001cd880: 6e74 5f6d 6174 6368 5f72 6567 6578 7022  nt_match_regexp"
│ │ │ -001cd890: 202f 6574 632f 6673 7461 623b 2074 6865   /etc/fstab; the
│ │ │ -001cd8a0: 6e0a 2020 2020 2020 2020 2320 7275 6e74  n.        # runt
│ │ │ -001cd8b0: 696d 6520 6f70 7473 2077 6974 686f 7574  ime opts without
│ │ │ -001cd8c0: 2073 6f6d 6520 6175 746f 6d61 7469 6320   some automatic 
│ │ │ -001cd8d0: 6b65 726e 656c 2f75 7365 7273 7061 6365  kernel/userspace
│ │ │ -001cd8e0: 2d61 6464 6564 2064 6566 6175 6c74 730a  -added defaults.
│ │ │ -001cd8f0: 2020 2020 2020 2020 7072 6576 696f 7573          previous
│ │ │ -001cd900: 5f6d 6f75 6e74 5f6f 7074 733d 2428 6772  _mount_opts=$(gr
│ │ │ -001cd910: 6570 2022 246d 6f75 6e74 5f70 6f69 6e74  ep "$mount_point
│ │ │ -001cd920: 5f6d 6174 6368 5f72 6567 6578 7022 202f  _match_regexp" /
│ │ │ -001cd930: 6574 632f 6d74 6162 207c 2068 6561 6420  etc/mtab | head 
│ │ │ -001cd940: 2d31 207c 2020 6177 6b20 277b 7072 696e  -1 |  awk '{prin
│ │ │ -001cd950: 7420 2434 7d27 205c 0a20 2020 2020 2020  t $4}' \.       
│ │ │ -001cd960: 2020 2020 2020 2020 2020 2020 207c 2073               | s
│ │ │ -001cd970: 6564 202d 4520 2273 2f28 7277 7c64 6566  ed -E "s/(rw|def
│ │ │ -001cd980: 6175 6c74 737c 7365 636c 6162 656c 7c6e  aults|seclabel|n
│ │ │ -001cd990: 6f65 7865 6329 282c 7c24 292f 2f67 3b73  oexec)(,|$)//g;s
│ │ │ -001cd9a0: 2f2c 242f 2f22 290a 2020 2020 2020 2020  /,$//").        
│ │ │ -001cd9b0: 5b20 2224 7072 6576 696f 7573 5f6d 6f75  [ "$previous_mou
│ │ │ -001cd9c0: 6e74 5f6f 7074 7322 205d 2026 616d 703b  nt_opts" ] &
│ │ │ -001cd9d0: 2661 6d70 3b20 7072 6576 696f 7573 5f6d  & previous_m
│ │ │ -001cd9e0: 6f75 6e74 5f6f 7074 732b 3d22 2c22 0a20  ount_opts+=",". 
│ │ │ -001cd9f0: 2020 2020 2020 2023 2049 6e20 6973 6f39         # In iso9
│ │ │ -001cda00: 3636 3020 6669 6c65 7379 7374 656d 7320  660 filesystems 
│ │ │ -001cda10: 6d74 6162 2063 6f75 6c64 2064 6573 6372  mtab could descr
│ │ │ -001cda20: 6962 6520 6120 2262 6c6f 636b 7369 7a65  ibe a "blocksize
│ │ │ -001cda30: 2220 7661 6c75 652c 2074 6869 7320 7368  " value, this sh
│ │ │ -001cda40: 6f75 6c64 2062 6520 7265 666c 6563 7465  ould be reflecte
│ │ │ -001cda50: 6420 696e 0a20 2020 2020 2020 2023 2066  d in.        # f
│ │ │ -001cda60: 7374 6162 2061 7320 2262 6c6f 636b 222e  stab as "block".
│ │ │ -001cda70: 2020 5468 6520 6e65 7874 2076 6172 6961    The next varia
│ │ │ -001cda80: 626c 6520 6973 2074 6f20 7361 7469 7366  ble is to satisf
│ │ │ -001cda90: 7920 7368 656c 6c63 6865 636b 2053 4332  y shellcheck SC2
│ │ │ -001cdaa0: 3035 302e 0a20 2020 2020 2020 2066 735f  050..        fs_
│ │ │ -001cdab0: 7479 7065 3d22 220a 2020 2020 2020 2020  type="".        
│ │ │ -001cdac0: 6966 205b 2020 2224 6673 5f74 7970 6522  if [  "$fs_type"
│ │ │ -001cdad0: 203d 3d20 2269 736f 3936 3630 2220 5d20   == "iso9660" ] 
│ │ │ -001cdae0: 3b20 7468 656e 0a20 2020 2020 2020 2020  ; then.         
│ │ │ -001cdaf0: 2020 2070 7265 7669 6f75 735f 6d6f 756e     previous_moun
│ │ │ -001cdb00: 745f 6f70 7473 3d24 2873 6564 2027 732f  t_opts=$(sed 's/
│ │ │ -001cdb10: 626c 6f63 6b73 697a 653d 2f62 6c6f 636b  blocksize=/block
│ │ │ -001cdb20: 3d2f 2720 266c 743b 266c 743b 266c 743b  =/' <<<
│ │ │ -001cdb30: 2022 2470 7265 7669 6f75 735f 6d6f 756e   "$previous_moun
│ │ │ -001cdb40: 745f 6f70 7473 2229 0a20 2020 2020 2020  t_opts").       
│ │ │ -001cdb50: 2066 690a 2020 2020 2020 2020 6563 686f   fi.        echo
│ │ │ -001cdb60: 2022 202f 7661 722f 6c6f 672f 6175 6469   " /var/log/audi
│ │ │ -001cdb70: 7420 2064 6566 6175 6c74 732c 247b 7072  t  defaults,${pr
│ │ │ -001cdb80: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ -001cdb90: 737d 6e6f 6578 6563 2030 2030 2220 2667  s}noexec 0 0" &g
│ │ │ -001cdba0: 743b 2667 743b 202f 6574 632f 6673 7461  t;> /etc/fsta
│ │ │ -001cdbb0: 620a 2020 2020 2320 4966 2074 6865 206d  b.    # If the m
│ │ │ -001cdbc0: 6f75 6e74 5f6f 7074 206f 7074 696f 6e20  ount_opt option 
│ │ │ -001cdbd0: 6973 206e 6f74 2061 6c72 6561 6479 2069  is not already i
│ │ │ -001cdbe0: 6e20 7468 6520 6d6f 756e 7420 706f 696e  n the mount poin
│ │ │ -001cdbf0: 7427 7320 2f65 7463 2f66 7374 6162 2065  t's /etc/fstab e
│ │ │ -001cdc00: 6e74 7279 2c20 6164 6420 6974 0a20 2020  ntry, add it.   
│ │ │ -001cdc10: 2065 6c69 6620 2120 6772 6570 2022 246d   elif ! grep "$m
│ │ │ -001cdc20: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ -001cdc30: 5f72 6567 6578 7022 202f 6574 632f 6673  _regexp" /etc/fs
│ │ │ -001cdc40: 7461 6220 7c20 6772 6570 202d 7120 226e  tab | grep -q "n
│ │ │ -001cdc50: 6f65 7865 6322 3b20 7468 656e 0a20 2020  oexec"; then.   
│ │ │ -001cdc60: 2020 2020 2070 7265 7669 6f75 735f 6d6f       previous_mo
│ │ │ -001cdc70: 756e 745f 6f70 7473 3d24 2867 7265 7020  unt_opts=$(grep 
│ │ │ -001cdc80: 2224 6d6f 756e 745f 706f 696e 745f 6d61  "$mount_point_ma
│ │ │ -001cdc90: 7463 685f 7265 6765 7870 2220 2f65 7463  tch_regexp" /etc
│ │ │ -001cdca0: 2f66 7374 6162 207c 2061 776b 2027 7b70  /fstab | awk '{p
│ │ │ -001cdcb0: 7269 6e74 2024 347d 2729 0a20 2020 2020  rint $4}').     
│ │ │ -001cdcc0: 2020 2073 6564 202d 6920 2273 7c5c 2824     sed -i "s|\($
│ │ │ -001cdcd0: 7b6d 6f75 6e74 5f70 6f69 6e74 5f6d 6174  {mount_point_mat
│ │ │ -001cdce0: 6368 5f72 6567 6578 707d 2e2a 247b 7072  ch_regexp}.*${pr
│ │ │ -001cdcf0: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ -001cdd00: 737d 5c29 7c5c 312c 6e6f 6578 6563 7c22  s}\)|\1,noexec|"
│ │ │ -001cdd10: 202f 6574 632f 6673 7461 620a 2020 2020   /etc/fstab.    
│ │ │ -001cdd20: 6669 0a0a 0a20 2020 2069 6620 6d6b 6469  fi...    if mkdi
│ │ │ -001cdd30: 7220 2d70 2022 2f76 6172 2f6c 6f67 2f61  r -p "/var/log/a
│ │ │ -001cdd40: 7564 6974 223b 2074 6865 6e0a 2020 2020  udit"; then.    
│ │ │ -001cdd50: 2020 2020 6966 206d 6f75 6e74 706f 696e      if mountpoin
│ │ │ -001cdd60: 7420 2d71 2022 2f76 6172 2f6c 6f67 2f61  t -q "/var/log/a
│ │ │ -001cdd70: 7564 6974 223b 2074 6865 6e0a 2020 2020  udit"; then.    
│ │ │ -001cdd80: 2020 2020 2020 2020 6d6f 756e 7420 2d6f          mount -o
│ │ │ -001cdd90: 2072 656d 6f75 6e74 202d 2d74 6172 6765   remount --targe
│ │ │ -001cdda0: 7420 222f 7661 722f 6c6f 672f 6175 6469  t "/var/log/audi
│ │ │ -001cddb0: 7422 0a20 2020 2020 2020 2066 690a 2020  t".        fi.  
│ │ │ -001cddc0: 2020 6669 0a7d 0a0a 7065 7266 6f72 6d5f    fi.}..perform_
│ │ │ -001cddd0: 7265 6d65 6469 6174 696f 6e0a 0a65 6c73  remediation..els
│ │ │ -001cdde0: 650a 2020 2020 2667 743b 2661 6d70 3b32  e.    >&2
│ │ │ -001cddf0: 2065 6368 6f20 2752 656d 6564 6961 7469   echo 'Remediati
│ │ │ -001cde00: 6f6e 2069 7320 6e6f 7420 6170 706c 6963  on is not applic
│ │ │ -001cde10: 6162 6c65 2c20 6e6f 7468 696e 6720 7761  able, nothing wa
│ │ │ -001cde20: 7320 646f 6e65 270a 6669 0a3c 2f63 6f64  s done'.fi.
- 
│ │ │ +001cb8d0: 6e61 6d65 3a20 4761 7468 6572 2074 6865  name: Gather the
│ │ │ +001cb8e0: 2070 6163 6b61 6765 2066 6163 7473 0a20   package facts. 
│ │ │ +001cb8f0: 2070 6163 6b61 6765 5f66 6163 7473 3a0a   package_facts:.
│ │ │ +001cb900: 2020 2020 6d61 6e61 6765 723a 2061 7574      manager: aut
│ │ │ +001cb910: 6f0a 2020 7461 6773 3a0a 2020 2d20 4e49  o.  tags:.  - NI
│ │ │ +001cb920: 5354 2d38 3030 2d35 332d 4143 2d36 0a20  ST-800-53-AC-6. 
│ │ │ +001cb930: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ +001cb940: 432d 3628 3129 0a20 202d 204e 4953 542d  C-6(1).  - NIST-
│ │ │ +001cb950: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ +001cb960: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +001cb970: 4d2d 3728 6129 0a20 202d 204e 4953 542d  M-7(a).  - NIST-
│ │ │ +001cb980: 3830 302d 3533 2d43 4d2d 3728 6229 0a20  800-53-CM-7(b). 
│ │ │ +001cb990: 202d 204e 4953 542d 3830 302d 3533 2d4d   - NIST-800-53-M
│ │ │ +001cb9a0: 502d 370a 2020 2d20 636f 6e66 6967 7572  P-7.  - configur
│ │ │ +001cb9b0: 655f 7374 7261 7465 6779 0a20 202d 2068  e_strategy.  - h
│ │ │ +001cb9c0: 6967 685f 6469 7372 7570 7469 6f6e 0a20  igh_disruption. 
│ │ │ +001cb9d0: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ +001cb9e0: 790a 2020 2d20 6d65 6469 756d 5f73 6576  y.  - medium_sev
│ │ │ +001cb9f0: 6572 6974 790a 2020 2d20 6d6f 756e 745f  erity.  - mount_
│ │ │ +001cba00: 6f70 7469 6f6e 5f76 6172 5f6c 6f67 5f61  option_var_log_a
│ │ │ +001cba10: 7564 6974 5f6e 6f65 7865 630a 2020 2d20  udit_noexec.  - 
│ │ │ +001cba20: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ +001cba30: 0a0a 2d20 6e61 6d65 3a20 2741 6464 206e  ..- name: 'Add n
│ │ │ +001cba40: 6f65 7865 6320 4f70 7469 6f6e 2074 6f20  oexec Option to 
│ │ │ +001cba50: 2f76 6172 2f6c 6f67 2f61 7564 6974 3a20  /var/log/audit: 
│ │ │ +001cba60: 4368 6563 6b20 696e 666f 726d 6174 696f  Check informatio
│ │ │ +001cba70: 6e20 6173 736f 6369 6174 6564 2074 6f20  n associated to 
│ │ │ +001cba80: 6d6f 756e 7470 6f69 6e74 270a 2020 616e  mountpoint'.  an
│ │ │ +001cba90: 7369 626c 652e 6275 696c 7469 6e2e 636f  sible.builtin.co
│ │ │ +001cbaa0: 6d6d 616e 643a 2066 696e 646d 6e74 202d  mmand: findmnt -
│ │ │ +001cbab0: 2d66 7374 6162 2027 2f76 6172 2f6c 6f67  -fstab '/var/log
│ │ │ +001cbac0: 2f61 7564 6974 270a 2020 7265 6769 7374  /audit'.  regist
│ │ │ +001cbad0: 6572 3a20 6465 7669 6365 5f6e 616d 650a  er: device_name.
│ │ │ +001cbae0: 2020 6661 696c 6564 5f77 6865 6e3a 2064    failed_when: d
│ │ │ +001cbaf0: 6576 6963 655f 6e61 6d65 2e72 6320 2667  evice_name.rc &g
│ │ │ +001cbb00: 743b 2031 0a20 2063 6861 6e67 6564 5f77  t; 1.  changed_w
│ │ │ +001cbb10: 6865 6e3a 2066 616c 7365 0a20 2063 6865  hen: false.  che
│ │ │ +001cbb20: 636b 5f6d 6f64 653a 2066 616c 7365 0a20  ck_mode: false. 
│ │ │ +001cbb30: 2077 6865 6e3a 0a20 202d 2028 206e 6f74   when:.  - ( not
│ │ │ +001cbb40: 2028 2022 6b65 726e 656c 2220 696e 2061   ( "kernel" in a
│ │ │ +001cbb50: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +001cbb60: 6b61 6765 7320 616e 6420 2262 6f6f 7463  kages and "bootc
│ │ │ +001cbb70: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +001cbb80: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ +001cbb90: 616e 6420 6e6f 7420 226f 7065 6e73 6869  and not "openshi
│ │ │ +001cbba0: 6674 2d6b 7562 656c 6574 2220 696e 2061  ft-kubelet" in a
│ │ │ +001cbbb0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +001cbbc0: 6b61 6765 7320 616e 6420 226f 7374 7265  kages and "ostre
│ │ │ +001cbbd0: 6522 2069 6e20 616e 7369 626c 655f 7072  e" in ansible_pr
│ │ │ +001cbbe0: 6f63 5f63 6d64 6c69 6e65 0a20 2020 2029  oc_cmdline.    )
│ │ │ +001cbbf0: 2061 6e64 206e 6f74 2028 2061 6e73 6962   and not ( ansib
│ │ │ +001cbc00: 6c65 5f76 6972 7475 616c 697a 6174 696f  le_virtualizatio
│ │ │ +001cbc10: 6e5f 7479 7065 2069 6e20 5b22 646f 636b  n_type in ["dock
│ │ │ +001cbc20: 6572 222c 2022 6c78 6322 2c20 226f 7065  er", "lxc", "ope
│ │ │ +001cbc30: 6e76 7a22 2c20 2270 6f64 6d61 6e22 2c0a  nvz", "podman",.
│ │ │ +001cbc40: 2020 2020 2263 6f6e 7461 696e 6572 225d      "container"]
│ │ │ +001cbc50: 2029 2029 0a20 202d 2027 222f 7661 722f   ) ).  - '"/var/
│ │ │ +001cbc60: 6c6f 672f 6175 6469 7422 2069 6e20 616e  log/audit" in an
│ │ │ +001cbc70: 7369 626c 655f 6d6f 756e 7473 207c 206d  sible_mounts | m
│ │ │ +001cbc80: 6170 2861 7474 7269 6275 7465 3d22 6d6f  ap(attribute="mo
│ │ │ +001cbc90: 756e 7422 2920 7c20 6c69 7374 270a 2020  unt") | list'.  
│ │ │ +001cbca0: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38  tags:.  - NIST-8
│ │ │ +001cbcb0: 3030 2d35 332d 4143 2d36 0a20 202d 204e  00-53-AC-6.  - N
│ │ │ +001cbcc0: 4953 542d 3830 302d 3533 2d41 432d 3628  IST-800-53-AC-6(
│ │ │ +001cbcd0: 3129 0a20 202d 204e 4953 542d 3830 302d  1).  - NIST-800-
│ │ │ +001cbce0: 3533 2d43 4d2d 3628 6129 0a20 202d 204e  53-CM-6(a).  - N
│ │ │ +001cbcf0: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ +001cbd00: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ +001cbd10: 3533 2d43 4d2d 3728 6229 0a20 202d 204e  53-CM-7(b).  - N
│ │ │ +001cbd20: 4953 542d 3830 302d 3533 2d4d 502d 370a  IST-800-53-MP-7.
│ │ │ +001cbd30: 2020 2d20 636f 6e66 6967 7572 655f 7374    - configure_st
│ │ │ +001cbd40: 7261 7465 6779 0a20 202d 2068 6967 685f  rategy.  - high_
│ │ │ +001cbd50: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ +001cbd60: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ +001cbd70: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ +001cbd80: 790a 2020 2d20 6d6f 756e 745f 6f70 7469  y.  - mount_opti
│ │ │ +001cbd90: 6f6e 5f76 6172 5f6c 6f67 5f61 7564 6974  on_var_log_audit
│ │ │ +001cbda0: 5f6e 6f65 7865 630a 2020 2d20 6e6f 5f72  _noexec.  - no_r
│ │ │ +001cbdb0: 6562 6f6f 745f 6e65 6564 6564 0a0a 2d20  eboot_needed..- 
│ │ │ +001cbdc0: 6e61 6d65 3a20 2741 6464 206e 6f65 7865  name: 'Add noexe
│ │ │ +001cbdd0: 6320 4f70 7469 6f6e 2074 6f20 2f76 6172  c Option to /var
│ │ │ +001cbde0: 2f6c 6f67 2f61 7564 6974 3a20 4372 6561  /log/audit: Crea
│ │ │ +001cbdf0: 7465 206d 6f75 6e74 5f69 6e66 6f20 6469  te mount_info di
│ │ │ +001cbe00: 6374 696f 6e61 7279 2076 6172 6961 626c  ctionary variabl
│ │ │ +001cbe10: 6527 0a20 2073 6574 5f66 6163 743a 0a20  e'.  set_fact:. 
│ │ │ +001cbe20: 2020 206d 6f75 6e74 5f69 6e66 6f3a 2027     mount_info: '
│ │ │ +001cbe30: 7b7b 206d 6f75 6e74 5f69 6e66 6f7c 6465  {{ mount_info|de
│ │ │ +001cbe40: 6661 756c 7428 7b7d 297c 636f 6d62 696e  fault({})|combin
│ │ │ +001cbe50: 6528 7b69 7465 6d2e 303a 2069 7465 6d2e  e({item.0: item.
│ │ │ +001cbe60: 317d 2920 7d7d 270a 2020 7769 7468 5f74  1}) }}'.  with_t
│ │ │ +001cbe70: 6f67 6574 6865 723a 0a20 202d 2027 7b7b  ogether:.  - '{{
│ │ │ +001cbe80: 2064 6576 6963 655f 6e61 6d65 2e73 7464   device_name.std
│ │ │ +001cbe90: 6f75 745f 6c69 6e65 735b 305d 2e73 706c  out_lines[0].spl
│ │ │ +001cbea0: 6974 2829 207c 206d 6170 2827 276c 6f77  it() | map(''low
│ │ │ +001cbeb0: 6572 2727 2920 7c20 6c69 7374 207d 7d27  er'') | list }}'
│ │ │ +001cbec0: 0a20 202d 2027 7b7b 2064 6576 6963 655f  .  - '{{ device_
│ │ │ +001cbed0: 6e61 6d65 2e73 7464 6f75 745f 6c69 6e65  name.stdout_line
│ │ │ +001cbee0: 735b 315d 2e73 706c 6974 2829 207c 206c  s[1].split() | l
│ │ │ +001cbef0: 6973 7420 7d7d 270a 2020 7768 656e 3a0a  ist }}'.  when:.
│ │ │ +001cbf00: 2020 2d20 2820 6e6f 7420 2820 226b 6572    - ( not ( "ker
│ │ │ +001cbf10: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ +001cbf20: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ +001cbf30: 6e64 2022 626f 6f74 6322 2069 6e20 616e  nd "bootc" in an
│ │ │ +001cbf40: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001cbf50: 6167 6573 0a20 2020 2061 6e64 206e 6f74  ages.    and not
│ │ │ +001cbf60: 2022 6f70 656e 7368 6966 742d 6b75 6265   "openshift-kube
│ │ │ +001cbf70: 6c65 7422 2069 6e20 616e 7369 626c 655f  let" in ansible_
│ │ │ +001cbf80: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ +001cbf90: 6e64 2022 6f73 7472 6565 2220 696e 2061  nd "ostree" in a
│ │ │ +001cbfa0: 6e73 6962 6c65 5f70 726f 635f 636d 646c  nsible_proc_cmdl
│ │ │ +001cbfb0: 696e 650a 2020 2020 2920 616e 6420 6e6f  ine.    ) and no
│ │ │ +001cbfc0: 7420 2820 616e 7369 626c 655f 7669 7274  t ( ansible_virt
│ │ │ +001cbfd0: 7561 6c69 7a61 7469 6f6e 5f74 7970 6520  ualization_type 
│ │ │ +001cbfe0: 696e 205b 2264 6f63 6b65 7222 2c20 226c  in ["docker", "l
│ │ │ +001cbff0: 7863 222c 2022 6f70 656e 767a 222c 2022  xc", "openvz", "
│ │ │ +001cc000: 706f 646d 616e 222c 0a20 2020 2022 636f  podman",.    "co
│ │ │ +001cc010: 6e74 6169 6e65 7222 5d20 2920 290a 2020  ntainer"] ) ).  
│ │ │ +001cc020: 2d20 2722 2f76 6172 2f6c 6f67 2f61 7564  - '"/var/log/aud
│ │ │ +001cc030: 6974 2220 696e 2061 6e73 6962 6c65 5f6d  it" in ansible_m
│ │ │ +001cc040: 6f75 6e74 7320 7c20 6d61 7028 6174 7472  ounts | map(attr
│ │ │ +001cc050: 6962 7574 653d 226d 6f75 6e74 2229 207c  ibute="mount") |
│ │ │ +001cc060: 206c 6973 7427 0a20 202d 2064 6576 6963   list'.  - devic
│ │ │ +001cc070: 655f 6e61 6d65 2e73 7464 6f75 7420 6973  e_name.stdout is
│ │ │ +001cc080: 2064 6566 696e 6564 2061 6e64 2064 6576   defined and dev
│ │ │ +001cc090: 6963 655f 6e61 6d65 2e73 7464 6f75 745f  ice_name.stdout_
│ │ │ +001cc0a0: 6c69 6e65 7320 6973 2064 6566 696e 6564  lines is defined
│ │ │ +001cc0b0: 0a20 202d 2028 6465 7669 6365 5f6e 616d  .  - (device_nam
│ │ │ +001cc0c0: 652e 7374 646f 7574 207c 206c 656e 6774  e.stdout | lengt
│ │ │ +001cc0d0: 6820 2667 743b 2030 290a 2020 7461 6773  h > 0).  tags
│ │ │ +001cc0e0: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ +001cc0f0: 332d 4143 2d36 0a20 202d 204e 4953 542d  3-AC-6.  - NIST-
│ │ │ +001cc100: 3830 302d 3533 2d41 432d 3628 3129 0a20  800-53-AC-6(1). 
│ │ │ +001cc110: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +001cc120: 4d2d 3628 6129 0a20 202d 204e 4953 542d  M-6(a).  - NIST-
│ │ │ +001cc130: 3830 302d 3533 2d43 4d2d 3728 6129 0a20  800-53-CM-7(a). 
│ │ │ +001cc140: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +001cc150: 4d2d 3728 6229 0a20 202d 204e 4953 542d  M-7(b).  - NIST-
│ │ │ +001cc160: 3830 302d 3533 2d4d 502d 370a 2020 2d20  800-53-MP-7.  - 
│ │ │ +001cc170: 636f 6e66 6967 7572 655f 7374 7261 7465  configure_strate
│ │ │ +001cc180: 6779 0a20 202d 2068 6967 685f 6469 7372  gy.  - high_disr
│ │ │ +001cc190: 7570 7469 6f6e 0a20 202d 206c 6f77 5f63  uption.  - low_c
│ │ │ +001cc1a0: 6f6d 706c 6578 6974 790a 2020 2d20 6d65  omplexity.  - me
│ │ │ +001cc1b0: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ +001cc1c0: 2d20 6d6f 756e 745f 6f70 7469 6f6e 5f76  - mount_option_v
│ │ │ +001cc1d0: 6172 5f6c 6f67 5f61 7564 6974 5f6e 6f65  ar_log_audit_noe
│ │ │ +001cc1e0: 7865 630a 2020 2d20 6e6f 5f72 6562 6f6f  xec.  - no_reboo
│ │ │ +001cc1f0: 745f 6e65 6564 6564 0a0a 2d20 6e61 6d65  t_needed..- name
│ │ │ +001cc200: 3a20 2741 6464 206e 6f65 7865 6320 4f70  : 'Add noexec Op
│ │ │ +001cc210: 7469 6f6e 2074 6f20 2f76 6172 2f6c 6f67  tion to /var/log
│ │ │ +001cc220: 2f61 7564 6974 3a20 4966 202f 7661 722f  /audit: If /var/
│ │ │ +001cc230: 6c6f 672f 6175 6469 7420 6e6f 7420 6d6f  log/audit not mo
│ │ │ +001cc240: 756e 7465 642c 2063 7261 6674 0a20 2020  unted, craft.   
│ │ │ +001cc250: 206d 6f75 6e74 5f69 6e66 6f20 6d61 6e75   mount_info manu
│ │ │ +001cc260: 616c 6c79 270a 2020 7365 745f 6661 6374  ally'.  set_fact
│ │ │ +001cc270: 3a0a 2020 2020 6d6f 756e 745f 696e 666f  :.    mount_info
│ │ │ +001cc280: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ +001cc290: 7c64 6566 6175 6c74 287b 7d29 7c63 6f6d  |default({})|com
│ │ │ +001cc2a0: 6269 6e65 287b 6974 656d 2e30 3a20 6974  bine({item.0: it
│ │ │ +001cc2b0: 656d 2e31 7d29 207d 7d27 0a20 2077 6974  em.1}) }}'.  wit
│ │ │ +001cc2c0: 685f 746f 6765 7468 6572 3a0a 2020 2d20  h_together:.  - 
│ │ │ +001cc2d0: 2d20 7461 7267 6574 0a20 2020 202d 2073  - target.    - s
│ │ │ +001cc2e0: 6f75 7263 650a 2020 2020 2d20 6673 7479  ource.    - fsty
│ │ │ +001cc2f0: 7065 0a20 2020 202d 206f 7074 696f 6e73  pe.    - options
│ │ │ +001cc300: 0a20 202d 202d 202f 7661 722f 6c6f 672f  .  - - /var/log/
│ │ │ +001cc310: 6175 6469 740a 2020 2020 2d20 2727 0a20  audit.    - ''. 
│ │ │ +001cc320: 2020 202d 2027 270a 2020 2020 2d20 6465     - ''.    - de
│ │ │ +001cc330: 6661 756c 7473 0a20 2077 6865 6e3a 0a20  faults.  when:. 
│ │ │ +001cc340: 202d 2028 206e 6f74 2028 2022 6b65 726e   - ( not ( "kern
│ │ │ +001cc350: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ +001cc360: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +001cc370: 6420 2262 6f6f 7463 2220 696e 2061 6e73  d "bootc" in ans
│ │ │ +001cc380: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001cc390: 6765 730a 2020 2020 616e 6420 6e6f 7420  ges.    and not 
│ │ │ +001cc3a0: 226f 7065 6e73 6869 6674 2d6b 7562 656c  "openshift-kubel
│ │ │ +001cc3b0: 6574 2220 696e 2061 6e73 6962 6c65 5f66  et" in ansible_f
│ │ │ +001cc3c0: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +001cc3d0: 6420 226f 7374 7265 6522 2069 6e20 616e  d "ostree" in an
│ │ │ +001cc3e0: 7369 626c 655f 7072 6f63 5f63 6d64 6c69  sible_proc_cmdli
│ │ │ +001cc3f0: 6e65 0a20 2020 2029 2061 6e64 206e 6f74  ne.    ) and not
│ │ │ +001cc400: 2028 2061 6e73 6962 6c65 5f76 6972 7475   ( ansible_virtu
│ │ │ +001cc410: 616c 697a 6174 696f 6e5f 7479 7065 2069  alization_type i
│ │ │ +001cc420: 6e20 5b22 646f 636b 6572 222c 2022 6c78  n ["docker", "lx
│ │ │ +001cc430: 6322 2c20 226f 7065 6e76 7a22 2c20 2270  c", "openvz", "p
│ │ │ +001cc440: 6f64 6d61 6e22 2c0a 2020 2020 2263 6f6e  odman",.    "con
│ │ │ +001cc450: 7461 696e 6572 225d 2029 2029 0a20 202d  tainer"] ) ).  -
│ │ │ +001cc460: 2027 222f 7661 722f 6c6f 672f 6175 6469   '"/var/log/audi
│ │ │ +001cc470: 7422 2069 6e20 616e 7369 626c 655f 6d6f  t" in ansible_mo
│ │ │ +001cc480: 756e 7473 207c 206d 6170 2861 7474 7269  unts | map(attri
│ │ │ +001cc490: 6275 7465 3d22 6d6f 756e 7422 2920 7c20  bute="mount") | 
│ │ │ +001cc4a0: 6c69 7374 270a 2020 2d20 2822 2d2d 6673  list'.  - ("--fs
│ │ │ +001cc4b0: 7461 6222 207c 206c 656e 6774 6820 3d3d  tab" | length ==
│ │ │ +001cc4c0: 2030 290a 2020 2d20 6465 7669 6365 5f6e   0).  - device_n
│ │ │ +001cc4d0: 616d 652e 7374 646f 7574 2069 7320 6465  ame.stdout is de
│ │ │ +001cc4e0: 6669 6e65 6420 616e 6420 6465 7669 6365  fined and device
│ │ │ +001cc4f0: 5f6e 616d 652e 7374 646f 7574 5f6c 696e  _name.stdout_lin
│ │ │ +001cc500: 6573 2069 7320 6465 6669 6e65 640a 2020  es is defined.  
│ │ │ +001cc510: 2d20 2864 6576 6963 655f 6e61 6d65 2e73  - (device_name.s
│ │ │ +001cc520: 7464 6f75 7420 7c20 6c65 6e67 7468 203d  tdout | length =
│ │ │ +001cc530: 3d20 3029 0a20 2074 6167 733a 0a20 202d  = 0).  tags:.  -
│ │ │ +001cc540: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ +001cc550: 360a 2020 2d20 4e49 5354 2d38 3030 2d35  6.  - NIST-800-5
│ │ │ +001cc560: 332d 4143 2d36 2831 290a 2020 2d20 4e49  3-AC-6(1).  - NI
│ │ │ +001cc570: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ +001cc580: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001cc590: 332d 434d 2d37 2861 290a 2020 2d20 4e49  3-CM-7(a).  - NI
│ │ │ +001cc5a0: 5354 2d38 3030 2d35 332d 434d 2d37 2862  ST-800-53-CM-7(b
│ │ │ +001cc5b0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001cc5c0: 332d 4d50 2d37 0a20 202d 2063 6f6e 6669  3-MP-7.  - confi
│ │ │ +001cc5d0: 6775 7265 5f73 7472 6174 6567 790a 2020  gure_strategy.  
│ │ │ +001cc5e0: 2d20 6869 6768 5f64 6973 7275 7074 696f  - high_disruptio
│ │ │ +001cc5f0: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65  n.  - low_comple
│ │ │ +001cc600: 7869 7479 0a20 202d 206d 6564 6975 6d5f  xity.  - medium_
│ │ │ +001cc610: 7365 7665 7269 7479 0a20 202d 206d 6f75  severity.  - mou
│ │ │ +001cc620: 6e74 5f6f 7074 696f 6e5f 7661 725f 6c6f  nt_option_var_lo
│ │ │ +001cc630: 675f 6175 6469 745f 6e6f 6578 6563 0a20  g_audit_noexec. 
│ │ │ +001cc640: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ +001cc650: 6465 640a 0a2d 206e 616d 653a 2027 4164  ded..- name: 'Ad
│ │ │ +001cc660: 6420 6e6f 6578 6563 204f 7074 696f 6e20  d noexec Option 
│ │ │ +001cc670: 746f 202f 7661 722f 6c6f 672f 6175 6469  to /var/log/audi
│ │ │ +001cc680: 743a 204d 616b 6520 7375 7265 206e 6f65  t: Make sure noe
│ │ │ +001cc690: 7865 6320 6f70 7469 6f6e 2069 7320 7061  xec option is pa
│ │ │ +001cc6a0: 7274 206f 6620 7468 650a 2020 2020 746f  rt of the.    to
│ │ │ +001cc6b0: 202f 7661 722f 6c6f 672f 6175 6469 7420   /var/log/audit 
│ │ │ +001cc6c0: 6f70 7469 6f6e 7327 0a20 2073 6574 5f66  options'.  set_f
│ │ │ +001cc6d0: 6163 743a 0a20 2020 206d 6f75 6e74 5f69  act:.    mount_i
│ │ │ +001cc6e0: 6e66 6f3a 2027 7b7b 206d 6f75 6e74 5f69  nfo: '{{ mount_i
│ │ │ +001cc6f0: 6e66 6f20 7c20 636f 6d62 696e 6528 207b  nfo | combine( {
│ │ │ +001cc700: 2727 6f70 7469 6f6e 7327 273a 2727 2727  ''options'':''''
│ │ │ +001cc710: 7e28 6d6f 756e 745f 696e 666f 2e6f 7074  ~(mount_info.opt
│ │ │ +001cc720: 696f 6e73 207c 0a20 2020 2020 2064 6566  ions |.      def
│ │ │ +001cc730: 6175 6c74 2827 2727 2729 297e 2827 272c  ault(''''))~('',
│ │ │ +001cc740: 2727 2069 6620 286d 6f75 6e74 5f69 6e66  '' if (mount_inf
│ │ │ +001cc750: 6f2e 6f70 7469 6f6e 7320 7c20 6465 6661  o.options | defa
│ │ │ +001cc760: 756c 7428 2727 2727 2929 2065 6c73 6520  ult('''')) else 
│ │ │ +001cc770: 2727 2727 297e 2727 6e6f 6578 6563 2727  '''')~''noexec''
│ │ │ +001cc780: 0a20 2020 2020 207d 2920 7d7d 270a 2020  .      }) }}'.  
│ │ │ +001cc790: 7768 656e 3a0a 2020 2d20 2820 6e6f 7420  when:.  - ( not 
│ │ │ +001cc7a0: 2820 226b 6572 6e65 6c22 2069 6e20 616e  ( "kernel" in an
│ │ │ +001cc7b0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001cc7c0: 6167 6573 2061 6e64 2022 626f 6f74 6322  ages and "bootc"
│ │ │ +001cc7d0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001cc7e0: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ +001cc7f0: 6e64 206e 6f74 2022 6f70 656e 7368 6966  nd not "openshif
│ │ │ +001cc800: 742d 6b75 6265 6c65 7422 2069 6e20 616e  t-kubelet" in an
│ │ │ +001cc810: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001cc820: 6167 6573 2061 6e64 2022 6f73 7472 6565  ages and "ostree
│ │ │ +001cc830: 2220 696e 2061 6e73 6962 6c65 5f70 726f  " in ansible_pro
│ │ │ +001cc840: 635f 636d 646c 696e 650a 2020 2020 2920  c_cmdline.    ) 
│ │ │ +001cc850: 616e 6420 6e6f 7420 2820 616e 7369 626c  and not ( ansibl
│ │ │ +001cc860: 655f 7669 7274 7561 6c69 7a61 7469 6f6e  e_virtualization
│ │ │ +001cc870: 5f74 7970 6520 696e 205b 2264 6f63 6b65  _type in ["docke
│ │ │ +001cc880: 7222 2c20 226c 7863 222c 2022 6f70 656e  r", "lxc", "open
│ │ │ +001cc890: 767a 222c 2022 706f 646d 616e 222c 0a20  vz", "podman",. 
│ │ │ +001cc8a0: 2020 2022 636f 6e74 6169 6e65 7222 5d20     "container"] 
│ │ │ +001cc8b0: 2920 290a 2020 2d20 2722 2f76 6172 2f6c  ) ).  - '"/var/l
│ │ │ +001cc8c0: 6f67 2f61 7564 6974 2220 696e 2061 6e73  og/audit" in ans
│ │ │ +001cc8d0: 6962 6c65 5f6d 6f75 6e74 7320 7c20 6d61  ible_mounts | ma
│ │ │ +001cc8e0: 7028 6174 7472 6962 7574 653d 226d 6f75  p(attribute="mou
│ │ │ +001cc8f0: 6e74 2229 207c 206c 6973 7427 0a20 202d  nt") | list'.  -
│ │ │ +001cc900: 206d 6f75 6e74 5f69 6e66 6f20 6973 2064   mount_info is d
│ │ │ +001cc910: 6566 696e 6564 2061 6e64 2022 6e6f 6578  efined and "noex
│ │ │ +001cc920: 6563 2220 6e6f 7420 696e 2028 6d6f 756e  ec" not in (moun
│ │ │ +001cc930: 745f 696e 666f 2e6f 7074 696f 6e73 207c  t_info.options |
│ │ │ +001cc940: 2064 6566 6175 6c74 2827 2729 290a 2020   default('')).  
│ │ │ +001cc950: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38  tags:.  - NIST-8
│ │ │ +001cc960: 3030 2d35 332d 4143 2d36 0a20 202d 204e  00-53-AC-6.  - N
│ │ │ +001cc970: 4953 542d 3830 302d 3533 2d41 432d 3628  IST-800-53-AC-6(
│ │ │ +001cc980: 3129 0a20 202d 204e 4953 542d 3830 302d  1).  - NIST-800-
│ │ │ +001cc990: 3533 2d43 4d2d 3628 6129 0a20 202d 204e  53-CM-6(a).  - N
│ │ │ +001cc9a0: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ +001cc9b0: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ +001cc9c0: 3533 2d43 4d2d 3728 6229 0a20 202d 204e  53-CM-7(b).  - N
│ │ │ +001cc9d0: 4953 542d 3830 302d 3533 2d4d 502d 370a  IST-800-53-MP-7.
│ │ │ +001cc9e0: 2020 2d20 636f 6e66 6967 7572 655f 7374    - configure_st
│ │ │ +001cc9f0: 7261 7465 6779 0a20 202d 2068 6967 685f  rategy.  - high_
│ │ │ +001cca00: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ +001cca10: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ +001cca20: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ +001cca30: 790a 2020 2d20 6d6f 756e 745f 6f70 7469  y.  - mount_opti
│ │ │ +001cca40: 6f6e 5f76 6172 5f6c 6f67 5f61 7564 6974  on_var_log_audit
│ │ │ +001cca50: 5f6e 6f65 7865 630a 2020 2d20 6e6f 5f72  _noexec.  - no_r
│ │ │ +001cca60: 6562 6f6f 745f 6e65 6564 6564 0a0a 2d20  eboot_needed..- 
│ │ │ +001cca70: 6e61 6d65 3a20 2741 6464 206e 6f65 7865  name: 'Add noexe
│ │ │ +001cca80: 6320 4f70 7469 6f6e 2074 6f20 2f76 6172  c Option to /var
│ │ │ +001cca90: 2f6c 6f67 2f61 7564 6974 3a20 456e 7375  /log/audit: Ensu
│ │ │ +001ccaa0: 7265 202f 7661 722f 6c6f 672f 6175 6469  re /var/log/audi
│ │ │ +001ccab0: 7420 6973 206d 6f75 6e74 6564 2077 6974  t is mounted wit
│ │ │ +001ccac0: 680a 2020 2020 6e6f 6578 6563 206f 7074  h.    noexec opt
│ │ │ +001ccad0: 696f 6e27 0a20 2061 6e73 6962 6c65 2e70  ion'.  ansible.p
│ │ │ +001ccae0: 6f73 6978 2e6d 6f75 6e74 3a0a 2020 2020  osix.mount:.    
│ │ │ +001ccaf0: 7061 7468 3a20 2f76 6172 2f6c 6f67 2f61  path: /var/log/a
│ │ │ +001ccb00: 7564 6974 0a20 2020 2073 7263 3a20 277b  udit.    src: '{
│ │ │ +001ccb10: 7b20 6d6f 756e 745f 696e 666f 2e73 6f75  { mount_info.sou
│ │ │ +001ccb20: 7263 6520 7c20 6465 6661 756c 7428 2727  rce | default(''
│ │ │ +001ccb30: 2727 2920 7d7d 270a 2020 2020 6f70 7473  '') }}'.    opts
│ │ │ +001ccb40: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ +001ccb50: 2e6f 7074 696f 6e73 207c 2064 6566 6175  .options | defau
│ │ │ +001ccb60: 6c74 2827 2727 2729 207d 7d27 0a20 2020  lt('''') }}'.   
│ │ │ +001ccb70: 2073 7461 7465 3a20 6d6f 756e 7465 640a   state: mounted.
│ │ │ +001ccb80: 2020 2020 6673 7479 7065 3a20 277b 7b20      fstype: '{{ 
│ │ │ +001ccb90: 6d6f 756e 745f 696e 666f 2e66 7374 7970  mount_info.fstyp
│ │ │ +001ccba0: 6520 7c20 6465 6661 756c 7428 2727 2727  e | default(''''
│ │ │ +001ccbb0: 2920 7d7d 270a 2020 7265 6769 7374 6572  ) }}'.  register
│ │ │ +001ccbc0: 3a20 6d6f 756e 745f 7265 7375 6c74 0a20  : mount_result. 
│ │ │ +001ccbd0: 2066 6169 6c65 645f 7768 656e 3a0a 2020   failed_when:.  
│ │ │ +001ccbe0: 2d20 6d6f 756e 745f 7265 7375 6c74 2069  - mount_result i
│ │ │ +001ccbf0: 7320 6661 696c 6564 0a20 202d 2027 2727  s failed.  - '''
│ │ │ +001ccc00: 7461 7267 6574 2069 7320 6275 7379 2727  target is busy''
│ │ │ +001ccc10: 206e 6f74 2069 6e20 286d 6f75 6e74 5f72   not in (mount_r
│ │ │ +001ccc20: 6573 756c 742e 6d73 6720 7c20 6465 6661  esult.msg | defa
│ │ │ +001ccc30: 756c 7428 2727 2727 2929 270a 2020 2d20  ult(''''))'.  - 
│ │ │ +001ccc40: 2727 2761 6c72 6561 6479 206d 6f75 6e74  '''already mount
│ │ │ +001ccc50: 6564 2727 206e 6f74 2069 6e20 286d 6f75  ed'' not in (mou
│ │ │ +001ccc60: 6e74 5f72 6573 756c 742e 6d73 6720 7c20  nt_result.msg | 
│ │ │ +001ccc70: 6465 6661 756c 7428 2727 2727 2929 270a  default(''''))'.
│ │ │ +001ccc80: 2020 7768 656e 3a0a 2020 2d20 2820 6e6f    when:.  - ( no
│ │ │ +001ccc90: 7420 2820 226b 6572 6e65 6c22 2069 6e20  t ( "kernel" in 
│ │ │ +001ccca0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001cccb0: 636b 6167 6573 2061 6e64 2022 626f 6f74  ckages and "boot
│ │ │ +001cccc0: 6322 2069 6e20 616e 7369 626c 655f 6661  c" in ansible_fa
│ │ │ +001cccd0: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ +001ccce0: 2061 6e64 206e 6f74 2022 6f70 656e 7368   and not "opensh
│ │ │ +001cccf0: 6966 742d 6b75 6265 6c65 7422 2069 6e20  ift-kubelet" in 
│ │ │ +001ccd00: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001ccd10: 636b 6167 6573 2061 6e64 2022 6f73 7472  ckages and "ostr
│ │ │ +001ccd20: 6565 2220 696e 2061 6e73 6962 6c65 5f70  ee" in ansible_p
│ │ │ +001ccd30: 726f 635f 636d 646c 696e 650a 2020 2020  roc_cmdline.    
│ │ │ +001ccd40: 2920 616e 6420 6e6f 7420 2820 616e 7369  ) and not ( ansi
│ │ │ +001ccd50: 626c 655f 7669 7274 7561 6c69 7a61 7469  ble_virtualizati
│ │ │ +001ccd60: 6f6e 5f74 7970 6520 696e 205b 2264 6f63  on_type in ["doc
│ │ │ +001ccd70: 6b65 7222 2c20 226c 7863 222c 2022 6f70  ker", "lxc", "op
│ │ │ +001ccd80: 656e 767a 222c 2022 706f 646d 616e 222c  envz", "podman",
│ │ │ +001ccd90: 0a20 2020 2022 636f 6e74 6169 6e65 7222  .    "container"
│ │ │ +001ccda0: 5d20 2920 290a 2020 2d20 2722 2f76 6172  ] ) ).  - '"/var
│ │ │ +001ccdb0: 2f6c 6f67 2f61 7564 6974 2220 696e 2061  /log/audit" in a
│ │ │ +001ccdc0: 6e73 6962 6c65 5f6d 6f75 6e74 7320 7c20  nsible_mounts | 
│ │ │ +001ccdd0: 6d61 7028 6174 7472 6962 7574 653d 226d  map(attribute="m
│ │ │ +001ccde0: 6f75 6e74 2229 207c 206c 6973 7427 0a20  ount") | list'. 
│ │ │ +001ccdf0: 202d 206d 6f75 6e74 5f69 6e66 6f20 6973   - mount_info is
│ │ │ +001cce00: 2064 6566 696e 6564 0a20 202d 2028 6465   defined.  - (de
│ │ │ +001cce10: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ +001cce20: 2069 7320 6465 6669 6e65 6420 616e 6420   is defined and 
│ │ │ +001cce30: 2864 6576 6963 655f 6e61 6d65 2e73 7464  (device_name.std
│ │ │ +001cce40: 6f75 7420 7c20 6c65 6e67 7468 2026 6774  out | length >
│ │ │ +001cce50: 3b20 3029 2920 6f72 2028 222d 2d66 7374  ; 0)) or ("--fst
│ │ │ +001cce60: 6162 220a 2020 2020 7c20 6c65 6e67 7468  ab".    | length
│ │ │ +001cce70: 203d 3d20 3029 0a20 2074 6167 733a 0a20   == 0).  tags:. 
│ │ │ +001cce80: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ +001cce90: 432d 360a 2020 2d20 4e49 5354 2d38 3030  C-6.  - NIST-800
│ │ │ +001ccea0: 2d35 332d 4143 2d36 2831 290a 2020 2d20  -53-AC-6(1).  - 
│ │ │ +001cceb0: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ +001ccec0: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ +001cced0: 2d35 332d 434d 2d37 2861 290a 2020 2d20  -53-CM-7(a).  - 
│ │ │ +001ccee0: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ +001ccef0: 2862 290a 2020 2d20 4e49 5354 2d38 3030  (b).  - NIST-800
│ │ │ +001ccf00: 2d35 332d 4d50 2d37 0a20 202d 2063 6f6e  -53-MP-7.  - con
│ │ │ +001ccf10: 6669 6775 7265 5f73 7472 6174 6567 790a  figure_strategy.
│ │ │ +001ccf20: 2020 2d20 6869 6768 5f64 6973 7275 7074    - high_disrupt
│ │ │ +001ccf30: 696f 6e0a 2020 2d20 6c6f 775f 636f 6d70  ion.  - low_comp
│ │ │ +001ccf40: 6c65 7869 7479 0a20 202d 206d 6564 6975  lexity.  - mediu
│ │ │ +001ccf50: 6d5f 7365 7665 7269 7479 0a20 202d 206d  m_severity.  - m
│ │ │ +001ccf60: 6f75 6e74 5f6f 7074 696f 6e5f 7661 725f  ount_option_var_
│ │ │ +001ccf70: 6c6f 675f 6175 6469 745f 6e6f 6578 6563  log_audit_noexec
│ │ │ +001ccf80: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ +001ccf90: 6565 6465 640a 3c2f 636f 6465 3e3c 2f70  eeded.

Remediatio │ │ │ +001cd050: 6e20 5368 656c 6c20 7363 7269 7074 20e2 n Shell script . │ │ │ +001cd060: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
Comp │ │ │ +001cb820: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +001cb830: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ +001cb850: 3c2f 7468 3e3c 7464 3e68 6967 683c 2f74 high
R │ │ │ +001cb870: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +001cb880: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ +001cb8a0: 2f74 683e 3c74 643e 636f 6e66 6967 7572 /th>configur │ │ │ +001cb8b0: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
│ │ │ +001cd0e0: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +001cd0f0: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
Reboot:false
│ │ │ +001cd110: 3c63 6f64 653e 2320 5265 6d65 6469 6174  # Remediat
│ │ │ +001cd120: 696f 6e20 6973 2061 7070 6c69 6361 626c  ion is applicabl
│ │ │ +001cd130: 6520 6f6e 6c79 2069 6e20 6365 7274 6169  e only in certai
│ │ │ +001cd140: 6e20 706c 6174 666f 726d 730a 6966 2028  n platforms.if (
│ │ │ +001cd150: 2021 2028 207b 2072 706d 202d 2d71 7569   ! ( { rpm --qui
│ │ │ +001cd160: 6574 202d 7120 6b65 726e 656c 203b 7d20  et -q kernel ;} 
│ │ │ +001cd170: 2661 6d70 3b26 616d 703b 207b 2072 706d  && { rpm
│ │ │ +001cd180: 202d 2d71 7569 6574 202d 7120 626f 6f74   --quiet -q boot
│ │ │ +001cd190: 6320 3b7d 2026 616d 703b 2661 6d70 3b20  c ;} && 
│ │ │ +001cd1a0: 7b20 2120 7270 6d20 2d2d 7175 6965 7420  { ! rpm --quiet 
│ │ │ +001cd1b0: 2d71 206f 7065 6e73 6869 6674 2d6b 7562  -q openshift-kub
│ │ │ +001cd1c0: 656c 6574 203b 7d20 2661 6d70 3b26 616d  elet ;} &&am
│ │ │ +001cd1d0: 703b 2028 5b20 2d66 202f 7275 6e2f 6f73  p; ([ -f /run/os
│ │ │ +001cd1e0: 7472 6565 2d62 6f6f 7465 6420 5d20 7c7c  tree-booted ] ||
│ │ │ +001cd1f0: 205b 202d 4c20 2f6f 7374 7265 6520 5d29   [ -L /ostree ])
│ │ │ +001cd200: 2029 2026 616d 703b 2661 6d70 3b20 2120   ) && ! 
│ │ │ +001cd210: 2820 5b20 2d66 202f 2e64 6f63 6b65 7265  ( [ -f /.dockere
│ │ │ +001cd220: 6e76 205d 207c 7c20 5b20 2d66 202f 7275  nv ] || [ -f /ru
│ │ │ +001cd230: 6e2f 2e63 6f6e 7461 696e 6572 656e 7620  n/.containerenv 
│ │ │ +001cd240: 5d20 2920 2920 2661 6d70 3b26 616d 703b  ] ) ) &&
│ │ │ +001cd250: 207b 2028 2066 696e 646d 6e74 202d 2d6b   { ( findmnt --k
│ │ │ +001cd260: 6572 6e65 6c20 222f 7661 722f 6c6f 672f  ernel "/var/log/
│ │ │ +001cd270: 6175 6469 7422 2026 6774 3b20 2f64 6576  audit" > /dev
│ │ │ +001cd280: 2f6e 756c 6c20 7c7c 2066 696e 646d 6e74  /null || findmnt
│ │ │ +001cd290: 202d 2d66 7374 6162 2022 2f76 6172 2f6c   --fstab "/var/l
│ │ │ +001cd2a0: 6f67 2f61 7564 6974 2220 2667 743b 202f  og/audit" > /
│ │ │ +001cd2b0: 6465 762f 6e75 6c6c 2029 3b20 7d3b 2074  dev/null ); }; t
│ │ │ +001cd2c0: 6865 6e0a 0a66 756e 6374 696f 6e20 7065  hen..function pe
│ │ │ +001cd2d0: 7266 6f72 6d5f 7265 6d65 6469 6174 696f  rform_remediatio
│ │ │ +001cd2e0: 6e20 7b0a 0a20 2020 200a 2020 2020 2020  n {..    .      
│ │ │ +001cd2f0: 2020 2320 7468 6520 6d6f 756e 7420 706f    # the mount po
│ │ │ +001cd300: 696e 7420 2f76 6172 2f6c 6f67 2f61 7564  int /var/log/aud
│ │ │ +001cd310: 6974 2068 6173 2074 6f20 6265 2064 6566  it has to be def
│ │ │ +001cd320: 696e 6564 2069 6e20 2f65 7463 2f66 7374  ined in /etc/fst
│ │ │ +001cd330: 6162 0a20 2020 2020 2020 2023 2062 6566  ab.        # bef
│ │ │ +001cd340: 6f72 6520 7468 6973 2072 656d 6564 6961  ore this remedia
│ │ │ +001cd350: 7469 6f6e 2063 616e 2062 6520 6578 6563  tion can be exec
│ │ │ +001cd360: 7574 6564 2e20 496e 2063 6173 6520 6974  uted. In case it
│ │ │ +001cd370: 2069 7320 6e6f 7420 6465 6669 6e65 642c   is not defined,
│ │ │ +001cd380: 2074 6865 0a20 2020 2020 2020 2023 2072   the.        # r
│ │ │ +001cd390: 656d 6564 6961 7469 6f6e 2061 626f 7274  emediation abort
│ │ │ +001cd3a0: 7320 616e 6420 6e6f 2063 6861 6e67 6573  s and no changes
│ │ │ +001cd3b0: 2072 6567 6172 6469 6e67 2074 6865 206d   regarding the m
│ │ │ +001cd3c0: 6f75 6e74 2070 6f69 6e74 2061 7265 2064  ount point are d
│ │ │ +001cd3d0: 6f6e 652e 0a20 2020 2020 2020 206d 6f75  one..        mou
│ │ │ +001cd3e0: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ +001cd3f0: 6567 6578 703d 2224 2870 7269 6e74 6620  egexp="$(printf 
│ │ │ +001cd400: 225e 5b5b 3a73 7061 6365 3a5d 5d2a 5b5e  "^[[:space:]]*[^
│ │ │ +001cd410: 235d 2e2a 5b5b 3a73 7061 6365 3a5d 5d25  #].*[[:space:]]%
│ │ │ +001cd420: 735b 5b3a 7370 6163 653a 5d5d 2220 222f  s[[:space:]]" "/
│ │ │ +001cd430: 7661 722f 6c6f 672f 6175 6469 7422 2922  var/log/audit")"
│ │ │ +001cd440: 0a0a 2020 2020 6772 6570 2022 246d 6f75  ..    grep "$mou
│ │ │ +001cd450: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ +001cd460: 6567 6578 7022 202d 7120 2f65 7463 2f66  egexp" -q /etc/f
│ │ │ +001cd470: 7374 6162 205c 0a20 2020 2020 2020 207c  stab \.        |
│ │ │ +001cd480: 7c20 7b20 6563 686f 2022 5468 6520 6d6f  | { echo "The mo
│ │ │ +001cd490: 756e 7420 706f 696e 7420 272f 7661 722f  unt point '/var/
│ │ │ +001cd4a0: 6c6f 672f 6175 6469 7427 2069 7320 6e6f  log/audit' is no
│ │ │ +001cd4b0: 7420 6576 656e 2069 6e20 2f65 7463 2f66  t even in /etc/f
│ │ │ +001cd4c0: 7374 6162 2c20 736f 2077 6520 6361 6e27  stab, so we can'
│ │ │ +001cd4d0: 7420 7365 7420 7570 206d 6f75 6e74 206f  t set up mount o
│ │ │ +001cd4e0: 7074 696f 6e73 2220 2667 743b 2661 6d70  ptions" >&
│ │ │ +001cd4f0: 3b32 3b0a 2020 2020 2020 2020 2020 2020  ;2;.            
│ │ │ +001cd500: 2020 2020 6563 686f 2022 4e6f 7420 7265      echo "Not re
│ │ │ +001cd510: 6d65 6469 6174 696e 672c 2062 6563 6175  mediating, becau
│ │ │ +001cd520: 7365 2074 6865 7265 2069 7320 6e6f 2072  se there is no r
│ │ │ +001cd530: 6563 6f72 6420 6f66 202f 7661 722f 6c6f  ecord of /var/lo
│ │ │ +001cd540: 672f 6175 6469 7420 696e 202f 6574 632f  g/audit in /etc/
│ │ │ +001cd550: 6673 7461 6222 2026 6774 3b26 616d 703b  fstab" >&
│ │ │ +001cd560: 323b 2072 6574 7572 6e20 313b 207d 0a20  2; return 1; }. 
│ │ │ +001cd570: 2020 200a 0a0a 2020 2020 6d6f 756e 745f     ...    mount_
│ │ │ +001cd580: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ +001cd590: 7870 3d22 2428 7072 696e 7466 2022 5e5b  xp="$(printf "^[
│ │ │ +001cd5a0: 5b3a 7370 6163 653a 5d5d 2a5b 5e23 5d2e  [:space:]]*[^#].
│ │ │ +001cd5b0: 2a5b 5b3a 7370 6163 653a 5d5d 2573 5b5b  *[[:space:]]%s[[
│ │ │ +001cd5c0: 3a73 7061 6365 3a5d 5d22 202f 7661 722f  :space:]]" /var/
│ │ │ +001cd5d0: 6c6f 672f 6175 6469 7429 220a 0a20 2020  log/audit)"..   
│ │ │ +001cd5e0: 2023 2049 6620 7468 6520 6d6f 756e 7420   # If the mount 
│ │ │ +001cd5f0: 706f 696e 7420 6973 206e 6f74 2069 6e20  point is not in 
│ │ │ +001cd600: 2f65 7463 2f66 7374 6162 2c20 6765 7420  /etc/fstab, get 
│ │ │ +001cd610: 7072 6576 696f 7573 206d 6f75 6e74 206f  previous mount o
│ │ │ +001cd620: 7074 696f 6e73 2066 726f 6d20 2f65 7463  ptions from /etc
│ │ │ +001cd630: 2f6d 7461 620a 2020 2020 6966 2021 2067  /mtab.    if ! g
│ │ │ +001cd640: 7265 7020 2d71 2022 246d 6f75 6e74 5f70  rep -q "$mount_p
│ │ │ +001cd650: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ +001cd660: 7022 202f 6574 632f 6673 7461 623b 2074  p" /etc/fstab; t
│ │ │ +001cd670: 6865 6e0a 2020 2020 2020 2020 2320 7275  hen.        # ru
│ │ │ +001cd680: 6e74 696d 6520 6f70 7473 2077 6974 686f  ntime opts witho
│ │ │ +001cd690: 7574 2073 6f6d 6520 6175 746f 6d61 7469  ut some automati
│ │ │ +001cd6a0: 6320 6b65 726e 656c 2f75 7365 7273 7061  c kernel/userspa
│ │ │ +001cd6b0: 6365 2d61 6464 6564 2064 6566 6175 6c74  ce-added default
│ │ │ +001cd6c0: 730a 2020 2020 2020 2020 7072 6576 696f  s.        previo
│ │ │ +001cd6d0: 7573 5f6d 6f75 6e74 5f6f 7074 733d 2428  us_mount_opts=$(
│ │ │ +001cd6e0: 6772 6570 2022 246d 6f75 6e74 5f70 6f69  grep "$mount_poi
│ │ │ +001cd6f0: 6e74 5f6d 6174 6368 5f72 6567 6578 7022  nt_match_regexp"
│ │ │ +001cd700: 202f 6574 632f 6d74 6162 207c 2068 6561   /etc/mtab | hea
│ │ │ +001cd710: 6420 2d31 207c 2020 6177 6b20 277b 7072  d -1 |  awk '{pr
│ │ │ +001cd720: 696e 7420 2434 7d27 205c 0a20 2020 2020  int $4}' \.     
│ │ │ +001cd730: 2020 2020 2020 2020 2020 2020 2020 207c                 |
│ │ │ +001cd740: 2073 6564 202d 4520 2273 2f28 7277 7c64   sed -E "s/(rw|d
│ │ │ +001cd750: 6566 6175 6c74 737c 7365 636c 6162 656c  efaults|seclabel
│ │ │ +001cd760: 7c6e 6f65 7865 6329 282c 7c24 292f 2f67  |noexec)(,|$)//g
│ │ │ +001cd770: 3b73 2f2c 242f 2f22 290a 2020 2020 2020  ;s/,$//").      
│ │ │ +001cd780: 2020 5b20 2224 7072 6576 696f 7573 5f6d    [ "$previous_m
│ │ │ +001cd790: 6f75 6e74 5f6f 7074 7322 205d 2026 616d  ount_opts" ] &am
│ │ │ +001cd7a0: 703b 2661 6d70 3b20 7072 6576 696f 7573  p;& previous
│ │ │ +001cd7b0: 5f6d 6f75 6e74 5f6f 7074 732b 3d22 2c22  _mount_opts+=","
│ │ │ +001cd7c0: 0a20 2020 2020 2020 2023 2049 6e20 6973  .        # In is
│ │ │ +001cd7d0: 6f39 3636 3020 6669 6c65 7379 7374 656d  o9660 filesystem
│ │ │ +001cd7e0: 7320 6d74 6162 2063 6f75 6c64 2064 6573  s mtab could des
│ │ │ +001cd7f0: 6372 6962 6520 6120 2262 6c6f 636b 7369  cribe a "blocksi
│ │ │ +001cd800: 7a65 2220 7661 6c75 652c 2074 6869 7320  ze" value, this 
│ │ │ +001cd810: 7368 6f75 6c64 2062 6520 7265 666c 6563  should be reflec
│ │ │ +001cd820: 7465 6420 696e 0a20 2020 2020 2020 2023  ted in.        #
│ │ │ +001cd830: 2066 7374 6162 2061 7320 2262 6c6f 636b   fstab as "block
│ │ │ +001cd840: 222e 2020 5468 6520 6e65 7874 2076 6172  ".  The next var
│ │ │ +001cd850: 6961 626c 6520 6973 2074 6f20 7361 7469  iable is to sati
│ │ │ +001cd860: 7366 7920 7368 656c 6c63 6865 636b 2053  sfy shellcheck S
│ │ │ +001cd870: 4332 3035 302e 0a20 2020 2020 2020 2066  C2050..        f
│ │ │ +001cd880: 735f 7479 7065 3d22 220a 2020 2020 2020  s_type="".      
│ │ │ +001cd890: 2020 6966 205b 2020 2224 6673 5f74 7970    if [  "$fs_typ
│ │ │ +001cd8a0: 6522 203d 3d20 2269 736f 3936 3630 2220  e" == "iso9660" 
│ │ │ +001cd8b0: 5d20 3b20 7468 656e 0a20 2020 2020 2020  ] ; then.       
│ │ │ +001cd8c0: 2020 2020 2070 7265 7669 6f75 735f 6d6f       previous_mo
│ │ │ +001cd8d0: 756e 745f 6f70 7473 3d24 2873 6564 2027  unt_opts=$(sed '
│ │ │ +001cd8e0: 732f 626c 6f63 6b73 697a 653d 2f62 6c6f  s/blocksize=/blo
│ │ │ +001cd8f0: 636b 3d2f 2720 266c 743b 266c 743b 266c  ck=/' <<&l
│ │ │ +001cd900: 743b 2022 2470 7265 7669 6f75 735f 6d6f  t; "$previous_mo
│ │ │ +001cd910: 756e 745f 6f70 7473 2229 0a20 2020 2020  unt_opts").     
│ │ │ +001cd920: 2020 2066 690a 2020 2020 2020 2020 6563     fi.        ec
│ │ │ +001cd930: 686f 2022 202f 7661 722f 6c6f 672f 6175  ho " /var/log/au
│ │ │ +001cd940: 6469 7420 2064 6566 6175 6c74 732c 247b  dit  defaults,${
│ │ │ +001cd950: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ +001cd960: 7074 737d 6e6f 6578 6563 2030 2030 2220  pts}noexec 0 0" 
│ │ │ +001cd970: 2667 743b 2667 743b 202f 6574 632f 6673  >> /etc/fs
│ │ │ +001cd980: 7461 620a 2020 2020 2320 4966 2074 6865  tab.    # If the
│ │ │ +001cd990: 206d 6f75 6e74 5f6f 7074 206f 7074 696f   mount_opt optio
│ │ │ +001cd9a0: 6e20 6973 206e 6f74 2061 6c72 6561 6479  n is not already
│ │ │ +001cd9b0: 2069 6e20 7468 6520 6d6f 756e 7420 706f   in the mount po
│ │ │ +001cd9c0: 696e 7427 7320 2f65 7463 2f66 7374 6162  int's /etc/fstab
│ │ │ +001cd9d0: 2065 6e74 7279 2c20 6164 6420 6974 0a20   entry, add it. 
│ │ │ +001cd9e0: 2020 2065 6c69 6620 2120 6772 6570 2022     elif ! grep "
│ │ │ +001cd9f0: 246d 6f75 6e74 5f70 6f69 6e74 5f6d 6174  $mount_point_mat
│ │ │ +001cda00: 6368 5f72 6567 6578 7022 202f 6574 632f  ch_regexp" /etc/
│ │ │ +001cda10: 6673 7461 6220 7c20 6772 6570 202d 7120  fstab | grep -q 
│ │ │ +001cda20: 226e 6f65 7865 6322 3b20 7468 656e 0a20  "noexec"; then. 
│ │ │ +001cda30: 2020 2020 2020 2070 7265 7669 6f75 735f         previous_
│ │ │ +001cda40: 6d6f 756e 745f 6f70 7473 3d24 2867 7265  mount_opts=$(gre
│ │ │ +001cda50: 7020 2224 6d6f 756e 745f 706f 696e 745f  p "$mount_point_
│ │ │ +001cda60: 6d61 7463 685f 7265 6765 7870 2220 2f65  match_regexp" /e
│ │ │ +001cda70: 7463 2f66 7374 6162 207c 2061 776b 2027  tc/fstab | awk '
│ │ │ +001cda80: 7b70 7269 6e74 2024 347d 2729 0a20 2020  {print $4}').   
│ │ │ +001cda90: 2020 2020 2073 6564 202d 6920 2273 7c5c       sed -i "s|\
│ │ │ +001cdaa0: 2824 7b6d 6f75 6e74 5f70 6f69 6e74 5f6d  (${mount_point_m
│ │ │ +001cdab0: 6174 6368 5f72 6567 6578 707d 2e2a 247b  atch_regexp}.*${
│ │ │ +001cdac0: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ +001cdad0: 7074 737d 5c29 7c5c 312c 6e6f 6578 6563  pts}\)|\1,noexec
│ │ │ +001cdae0: 7c22 202f 6574 632f 6673 7461 620a 2020  |" /etc/fstab.  
│ │ │ +001cdaf0: 2020 6669 0a0a 0a20 2020 2069 6620 6d6b    fi...    if mk
│ │ │ +001cdb00: 6469 7220 2d70 2022 2f76 6172 2f6c 6f67  dir -p "/var/log
│ │ │ +001cdb10: 2f61 7564 6974 223b 2074 6865 6e0a 2020  /audit"; then.  
│ │ │ +001cdb20: 2020 2020 2020 6966 206d 6f75 6e74 706f        if mountpo
│ │ │ +001cdb30: 696e 7420 2d71 2022 2f76 6172 2f6c 6f67  int -q "/var/log
│ │ │ +001cdb40: 2f61 7564 6974 223b 2074 6865 6e0a 2020  /audit"; then.  
│ │ │ +001cdb50: 2020 2020 2020 2020 2020 6d6f 756e 7420            mount 
│ │ │ +001cdb60: 2d6f 2072 656d 6f75 6e74 202d 2d74 6172  -o remount --tar
│ │ │ +001cdb70: 6765 7420 222f 7661 722f 6c6f 672f 6175  get "/var/log/au
│ │ │ +001cdb80: 6469 7422 0a20 2020 2020 2020 2066 690a  dit".        fi.
│ │ │ +001cdb90: 2020 2020 6669 0a7d 0a0a 7065 7266 6f72      fi.}..perfor
│ │ │ +001cdba0: 6d5f 7265 6d65 6469 6174 696f 6e0a 0a65  m_remediation..e
│ │ │ +001cdbb0: 6c73 650a 2020 2020 2667 743b 2661 6d70  lse.    >&
│ │ │ +001cdbc0: 3b32 2065 6368 6f20 2752 656d 6564 6961  ;2 echo 'Remedia
│ │ │ +001cdbd0: 7469 6f6e 2069 7320 6e6f 7420 6170 706c  tion is not appl
│ │ │ +001cdbe0: 6963 6162 6c65 2c20 6e6f 7468 696e 6720  icable, nothing 
│ │ │ +001cdbf0: 7761 7320 646f 6e65 270a 6669 0a3c 2f63  was done'.fi.
│ │ │ +001cdc10: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ +001cdcb0: 6564 6961 7469 6f6e 2041 6e61 636f 6e64 ediation Anacond │ │ │ +001cdcc0: 6120 736e 6970 7065 7420 e287 b23c 2f61 a snippet ...
< │ │ │ +001cdd60: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +001cdd70: 3c74 723e 3c74 683e 4469 7372 7570 7469 Reboot:false
.p
│ │ │ +001cde00: 6172 7420 2f76 6172 2f6c 6f67 2f61 7564  art /var/log/aud
│ │ │ +001cde10: 6974 202d 2d6d 6f75 6e74 6f70 7469 6f6e  it --mountoption
│ │ │ +001cde20: 733d 226e 6f65 7865 6322 0a3c 2f63 6f64  s="noexec".
C │ │ │ +001cdd50: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ +001cdd80: 6f6e 3a3c 2f74 683e 3c74 643e 6869 6768 on:high │ │ │ +001cdd90: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +001cddd0: 793a 3c2f 7468 3e3c 7464 3e65 6e61 626c y:enabl │ │ │ +001cdde0: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
Reme │ │ │ -001ceab0: 6469 6174 696f 6e20 416e 6163 6f6e 6461 diation Anaconda │ │ │ -001ceac0: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -001cead0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ -001ceb70: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr> │ │ │ -001cebc0: 3c74 723e 3c74 683e 5374 7261 7465 6779
.pa
│ │ │ -001cec00: 7274 202f 7661 722f 6c6f 672f 6175 6469  rt /var/log/audi
│ │ │ -001cec10: 7420 2d2d 6d6f 756e 746f 7074 696f 6e73  t --mountoptions
│ │ │ -001cec20: 3d22 6e6f 7375 6964 220a 3c2f 636f 6465  ="nosuid".
Remedi │ │ │ -001cece0: 6174 696f 6e20 416e 7369 626c 6520 736e ation Ansible sn │ │ │ -001cecf0: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
Co │ │ │ -001ceb50: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -001ceb80: 6e3a 3c2f 7468 3e3c 7464 3e68 6967 683c n:high< │ │ │ -001ceb90: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -001cebd0: 3a3c 2f74 683e 3c74 643e 656e 6162 6c65 :enable │ │ │ -001cebe0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
│ │ │ -001ceda0: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c
- n
│ │ │ -001cee30: 616d 653a 2047 6174 6865 7220 7468 6520  ame: Gather the 
│ │ │ -001cee40: 7061 636b 6167 6520 6661 6374 730a 2020  package facts.  
│ │ │ -001cee50: 7061 636b 6167 655f 6661 6374 733a 0a20  package_facts:. 
│ │ │ -001cee60: 2020 206d 616e 6167 6572 3a20 6175 746f     manager: auto
│ │ │ -001cee70: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ -001cee80: 542d 3830 302d 3533 2d41 432d 360a 2020  T-800-53-AC-6.  
│ │ │ -001cee90: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ -001ceea0: 2d36 2831 290a 2020 2d20 4e49 5354 2d38  -6(1).  - NIST-8
│ │ │ -001ceeb0: 3030 2d35 332d 434d 2d36 2861 290a 2020  00-53-CM-6(a).  
│ │ │ -001ceec0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -001ceed0: 2d37 2861 290a 2020 2d20 4e49 5354 2d38  -7(a).  - NIST-8
│ │ │ -001ceee0: 3030 2d35 332d 434d 2d37 2862 290a 2020  00-53-CM-7(b).  
│ │ │ -001ceef0: 2d20 4e49 5354 2d38 3030 2d35 332d 4d50  - NIST-800-53-MP
│ │ │ -001cef00: 2d37 0a20 202d 2063 6f6e 6669 6775 7265  -7.  - configure
│ │ │ -001cef10: 5f73 7472 6174 6567 790a 2020 2d20 6869  _strategy.  - hi
│ │ │ -001cef20: 6768 5f64 6973 7275 7074 696f 6e0a 2020  gh_disruption.  
│ │ │ -001cef30: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ -001cef40: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ -001cef50: 7269 7479 0a20 202d 206d 6f75 6e74 5f6f  rity.  - mount_o
│ │ │ -001cef60: 7074 696f 6e5f 7661 725f 6c6f 675f 6175  ption_var_log_au
│ │ │ -001cef70: 6469 745f 6e6f 7375 6964 0a20 202d 206e  dit_nosuid.  - n
│ │ │ -001cef80: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ -001cef90: 0a2d 206e 616d 653a 2027 4164 6420 6e6f  .- name: 'Add no
│ │ │ -001cefa0: 7375 6964 204f 7074 696f 6e20 746f 202f  suid Option to /
│ │ │ -001cefb0: 7661 722f 6c6f 672f 6175 6469 743a 2043  var/log/audit: C
│ │ │ -001cefc0: 6865 636b 2069 6e66 6f72 6d61 7469 6f6e  heck information
│ │ │ -001cefd0: 2061 7373 6f63 6961 7465 6420 746f 206d   associated to m
│ │ │ -001cefe0: 6f75 6e74 706f 696e 7427 0a20 2061 6e73  ountpoint'.  ans
│ │ │ -001ceff0: 6962 6c65 2e62 7569 6c74 696e 2e63 6f6d  ible.builtin.com
│ │ │ -001cf000: 6d61 6e64 3a20 6669 6e64 6d6e 7420 2d2d  mand: findmnt --
│ │ │ -001cf010: 6673 7461 6220 272f 7661 722f 6c6f 672f  fstab '/var/log/
│ │ │ -001cf020: 6175 6469 7427 0a20 2072 6567 6973 7465  audit'.  registe
│ │ │ -001cf030: 723a 2064 6576 6963 655f 6e61 6d65 0a20  r: device_name. 
│ │ │ -001cf040: 2066 6169 6c65 645f 7768 656e 3a20 6465   failed_when: de
│ │ │ -001cf050: 7669 6365 5f6e 616d 652e 7263 2026 6774  vice_name.rc >
│ │ │ -001cf060: 3b20 310a 2020 6368 616e 6765 645f 7768  ; 1.  changed_wh
│ │ │ -001cf070: 656e 3a20 6661 6c73 650a 2020 6368 6563  en: false.  chec
│ │ │ -001cf080: 6b5f 6d6f 6465 3a20 6661 6c73 650a 2020  k_mode: false.  
│ │ │ -001cf090: 7768 656e 3a0a 2020 2d20 2820 6e6f 7420  when:.  - ( not 
│ │ │ -001cf0a0: 2820 226b 6572 6e65 6c22 2069 6e20 616e  ( "kernel" in an
│ │ │ -001cf0b0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001cf0c0: 6167 6573 2061 6e64 2022 626f 6f74 6322  ages and "bootc"
│ │ │ -001cf0d0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001cf0e0: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ -001cf0f0: 6e64 206e 6f74 2022 6f70 656e 7368 6966  nd not "openshif
│ │ │ -001cf100: 742d 6b75 6265 6c65 7422 2069 6e20 616e  t-kubelet" in an
│ │ │ -001cf110: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001cf120: 6167 6573 2061 6e64 2022 6f73 7472 6565  ages and "ostree
│ │ │ -001cf130: 2220 696e 2061 6e73 6962 6c65 5f70 726f  " in ansible_pro
│ │ │ -001cf140: 635f 636d 646c 696e 650a 2020 2020 2920  c_cmdline.    ) 
│ │ │ -001cf150: 616e 6420 6e6f 7420 2820 616e 7369 626c  and not ( ansibl
│ │ │ -001cf160: 655f 7669 7274 7561 6c69 7a61 7469 6f6e  e_virtualization
│ │ │ -001cf170: 5f74 7970 6520 696e 205b 2264 6f63 6b65  _type in ["docke
│ │ │ -001cf180: 7222 2c20 226c 7863 222c 2022 6f70 656e  r", "lxc", "open
│ │ │ -001cf190: 767a 222c 2022 706f 646d 616e 222c 0a20  vz", "podman",. 
│ │ │ -001cf1a0: 2020 2022 636f 6e74 6169 6e65 7222 5d20     "container"] 
│ │ │ -001cf1b0: 2920 290a 2020 2d20 2722 2f76 6172 2f6c  ) ).  - '"/var/l
│ │ │ -001cf1c0: 6f67 2f61 7564 6974 2220 696e 2061 6e73  og/audit" in ans
│ │ │ -001cf1d0: 6962 6c65 5f6d 6f75 6e74 7320 7c20 6d61  ible_mounts | ma
│ │ │ -001cf1e0: 7028 6174 7472 6962 7574 653d 226d 6f75  p(attribute="mou
│ │ │ -001cf1f0: 6e74 2229 207c 206c 6973 7427 0a20 2074  nt") | list'.  t
│ │ │ -001cf200: 6167 733a 0a20 202d 204e 4953 542d 3830  ags:.  - NIST-80
│ │ │ -001cf210: 302d 3533 2d41 432d 360a 2020 2d20 4e49  0-53-AC-6.  - NI
│ │ │ -001cf220: 5354 2d38 3030 2d35 332d 4143 2d36 2831  ST-800-53-AC-6(1
│ │ │ -001cf230: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -001cf240: 332d 434d 2d36 2861 290a 2020 2d20 4e49  3-CM-6(a).  - NI
│ │ │ -001cf250: 5354 2d38 3030 2d35 332d 434d 2d37 2861  ST-800-53-CM-7(a
│ │ │ -001cf260: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -001cf270: 332d 434d 2d37 2862 290a 2020 2d20 4e49  3-CM-7(b).  - NI
│ │ │ -001cf280: 5354 2d38 3030 2d35 332d 4d50 2d37 0a20  ST-800-53-MP-7. 
│ │ │ -001cf290: 202d 2063 6f6e 6669 6775 7265 5f73 7472   - configure_str
│ │ │ -001cf2a0: 6174 6567 790a 2020 2d20 6869 6768 5f64  ategy.  - high_d
│ │ │ -001cf2b0: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ -001cf2c0: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ -001cf2d0: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ -001cf2e0: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f  .  - mount_optio
│ │ │ -001cf2f0: 6e5f 7661 725f 6c6f 675f 6175 6469 745f  n_var_log_audit_
│ │ │ -001cf300: 6e6f 7375 6964 0a20 202d 206e 6f5f 7265  nosuid.  - no_re
│ │ │ -001cf310: 626f 6f74 5f6e 6565 6465 640a 0a2d 206e  boot_needed..- n
│ │ │ -001cf320: 616d 653a 2027 4164 6420 6e6f 7375 6964  ame: 'Add nosuid
│ │ │ -001cf330: 204f 7074 696f 6e20 746f 202f 7661 722f   Option to /var/
│ │ │ -001cf340: 6c6f 672f 6175 6469 743a 2043 7265 6174  log/audit: Creat
│ │ │ -001cf350: 6520 6d6f 756e 745f 696e 666f 2064 6963  e mount_info dic
│ │ │ -001cf360: 7469 6f6e 6172 7920 7661 7269 6162 6c65  tionary variable
│ │ │ -001cf370: 270a 2020 7365 745f 6661 6374 3a0a 2020  '.  set_fact:.  
│ │ │ -001cf380: 2020 6d6f 756e 745f 696e 666f 3a20 277b    mount_info: '{
│ │ │ -001cf390: 7b20 6d6f 756e 745f 696e 666f 7c64 6566  { mount_info|def
│ │ │ -001cf3a0: 6175 6c74 287b 7d29 7c63 6f6d 6269 6e65  ault({})|combine
│ │ │ -001cf3b0: 287b 6974 656d 2e30 3a20 6974 656d 2e31  ({item.0: item.1
│ │ │ -001cf3c0: 7d29 207d 7d27 0a20 2077 6974 685f 746f  }) }}'.  with_to
│ │ │ -001cf3d0: 6765 7468 6572 3a0a 2020 2d20 277b 7b20  gether:.  - '{{ 
│ │ │ -001cf3e0: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ -001cf3f0: 7574 5f6c 696e 6573 5b30 5d2e 7370 6c69  ut_lines[0].spli
│ │ │ -001cf400: 7428 2920 7c20 6d61 7028 2727 6c6f 7765  t() | map(''lowe
│ │ │ -001cf410: 7227 2729 207c 206c 6973 7420 7d7d 270a  r'') | list }}'.
│ │ │ -001cf420: 2020 2d20 277b 7b20 6465 7669 6365 5f6e    - '{{ device_n
│ │ │ -001cf430: 616d 652e 7374 646f 7574 5f6c 696e 6573  ame.stdout_lines
│ │ │ -001cf440: 5b31 5d2e 7370 6c69 7428 2920 7c20 6c69  [1].split() | li
│ │ │ -001cf450: 7374 207d 7d27 0a20 2077 6865 6e3a 0a20  st }}'.  when:. 
│ │ │ -001cf460: 202d 2028 206e 6f74 2028 2022 6b65 726e   - ( not ( "kern
│ │ │ -001cf470: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ -001cf480: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ -001cf490: 6420 2262 6f6f 7463 2220 696e 2061 6e73  d "bootc" in ans
│ │ │ -001cf4a0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001cf4b0: 6765 730a 2020 2020 616e 6420 6e6f 7420  ges.    and not 
│ │ │ -001cf4c0: 226f 7065 6e73 6869 6674 2d6b 7562 656c  "openshift-kubel
│ │ │ -001cf4d0: 6574 2220 696e 2061 6e73 6962 6c65 5f66  et" in ansible_f
│ │ │ -001cf4e0: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ -001cf4f0: 6420 226f 7374 7265 6522 2069 6e20 616e  d "ostree" in an
│ │ │ -001cf500: 7369 626c 655f 7072 6f63 5f63 6d64 6c69  sible_proc_cmdli
│ │ │ -001cf510: 6e65 0a20 2020 2029 2061 6e64 206e 6f74  ne.    ) and not
│ │ │ -001cf520: 2028 2061 6e73 6962 6c65 5f76 6972 7475   ( ansible_virtu
│ │ │ -001cf530: 616c 697a 6174 696f 6e5f 7479 7065 2069  alization_type i
│ │ │ -001cf540: 6e20 5b22 646f 636b 6572 222c 2022 6c78  n ["docker", "lx
│ │ │ -001cf550: 6322 2c20 226f 7065 6e76 7a22 2c20 2270  c", "openvz", "p
│ │ │ -001cf560: 6f64 6d61 6e22 2c0a 2020 2020 2263 6f6e  odman",.    "con
│ │ │ -001cf570: 7461 696e 6572 225d 2029 2029 0a20 202d  tainer"] ) ).  -
│ │ │ -001cf580: 2027 222f 7661 722f 6c6f 672f 6175 6469   '"/var/log/audi
│ │ │ -001cf590: 7422 2069 6e20 616e 7369 626c 655f 6d6f  t" in ansible_mo
│ │ │ -001cf5a0: 756e 7473 207c 206d 6170 2861 7474 7269  unts | map(attri
│ │ │ -001cf5b0: 6275 7465 3d22 6d6f 756e 7422 2920 7c20  bute="mount") | 
│ │ │ -001cf5c0: 6c69 7374 270a 2020 2d20 6465 7669 6365  list'.  - device
│ │ │ -001cf5d0: 5f6e 616d 652e 7374 646f 7574 2069 7320  _name.stdout is 
│ │ │ -001cf5e0: 6465 6669 6e65 6420 616e 6420 6465 7669  defined and devi
│ │ │ -001cf5f0: 6365 5f6e 616d 652e 7374 646f 7574 5f6c  ce_name.stdout_l
│ │ │ -001cf600: 696e 6573 2069 7320 6465 6669 6e65 640a  ines is defined.
│ │ │ -001cf610: 2020 2d20 2864 6576 6963 655f 6e61 6d65    - (device_name
│ │ │ -001cf620: 2e73 7464 6f75 7420 7c20 6c65 6e67 7468  .stdout | length
│ │ │ -001cf630: 2026 6774 3b20 3029 0a20 2074 6167 733a   > 0).  tags:
│ │ │ -001cf640: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001cf650: 2d41 432d 360a 2020 2d20 4e49 5354 2d38  -AC-6.  - NIST-8
│ │ │ -001cf660: 3030 2d35 332d 4143 2d36 2831 290a 2020  00-53-AC-6(1).  
│ │ │ -001cf670: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -001cf680: 2d36 2861 290a 2020 2d20 4e49 5354 2d38  -6(a).  - NIST-8
│ │ │ -001cf690: 3030 2d35 332d 434d 2d37 2861 290a 2020  00-53-CM-7(a).  
│ │ │ -001cf6a0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -001cf6b0: 2d37 2862 290a 2020 2d20 4e49 5354 2d38  -7(b).  - NIST-8
│ │ │ -001cf6c0: 3030 2d35 332d 4d50 2d37 0a20 202d 2063  00-53-MP-7.  - c
│ │ │ -001cf6d0: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ -001cf6e0: 790a 2020 2d20 6869 6768 5f64 6973 7275  y.  - high_disru
│ │ │ -001cf6f0: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f  ption.  - low_co
│ │ │ -001cf700: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ -001cf710: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ -001cf720: 206d 6f75 6e74 5f6f 7074 696f 6e5f 7661   mount_option_va
│ │ │ -001cf730: 725f 6c6f 675f 6175 6469 745f 6e6f 7375  r_log_audit_nosu
│ │ │ -001cf740: 6964 0a20 202d 206e 6f5f 7265 626f 6f74  id.  - no_reboot
│ │ │ -001cf750: 5f6e 6565 6465 640a 0a2d 206e 616d 653a  _needed..- name:
│ │ │ -001cf760: 2027 4164 6420 6e6f 7375 6964 204f 7074   'Add nosuid Opt
│ │ │ -001cf770: 696f 6e20 746f 202f 7661 722f 6c6f 672f  ion to /var/log/
│ │ │ -001cf780: 6175 6469 743a 2049 6620 2f76 6172 2f6c  audit: If /var/l
│ │ │ -001cf790: 6f67 2f61 7564 6974 206e 6f74 206d 6f75  og/audit not mou
│ │ │ -001cf7a0: 6e74 6564 2c20 6372 6166 740a 2020 2020  nted, craft.    
│ │ │ -001cf7b0: 6d6f 756e 745f 696e 666f 206d 616e 7561  mount_info manua
│ │ │ -001cf7c0: 6c6c 7927 0a20 2073 6574 5f66 6163 743a  lly'.  set_fact:
│ │ │ -001cf7d0: 0a20 2020 206d 6f75 6e74 5f69 6e66 6f3a  .    mount_info:
│ │ │ -001cf7e0: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f7c   '{{ mount_info|
│ │ │ -001cf7f0: 6465 6661 756c 7428 7b7d 297c 636f 6d62  default({})|comb
│ │ │ -001cf800: 696e 6528 7b69 7465 6d2e 303a 2069 7465  ine({item.0: ite
│ │ │ -001cf810: 6d2e 317d 2920 7d7d 270a 2020 7769 7468  m.1}) }}'.  with
│ │ │ -001cf820: 5f74 6f67 6574 6865 723a 0a20 202d 202d  _together:.  - -
│ │ │ -001cf830: 2074 6172 6765 740a 2020 2020 2d20 736f   target.    - so
│ │ │ -001cf840: 7572 6365 0a20 2020 202d 2066 7374 7970  urce.    - fstyp
│ │ │ -001cf850: 650a 2020 2020 2d20 6f70 7469 6f6e 730a  e.    - options.
│ │ │ -001cf860: 2020 2d20 2d20 2f76 6172 2f6c 6f67 2f61    - - /var/log/a
│ │ │ -001cf870: 7564 6974 0a20 2020 202d 2027 270a 2020  udit.    - ''.  
│ │ │ -001cf880: 2020 2d20 2727 0a20 2020 202d 2064 6566    - ''.    - def
│ │ │ -001cf890: 6175 6c74 730a 2020 7768 656e 3a0a 2020  aults.  when:.  
│ │ │ -001cf8a0: 2d20 2820 6e6f 7420 2820 226b 6572 6e65  - ( not ( "kerne
│ │ │ -001cf8b0: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ -001cf8c0: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ -001cf8d0: 2022 626f 6f74 6322 2069 6e20 616e 7369   "bootc" in ansi
│ │ │ -001cf8e0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001cf8f0: 6573 0a20 2020 2061 6e64 206e 6f74 2022  es.    and not "
│ │ │ -001cf900: 6f70 656e 7368 6966 742d 6b75 6265 6c65  openshift-kubele
│ │ │ -001cf910: 7422 2069 6e20 616e 7369 626c 655f 6661  t" in ansible_fa
│ │ │ -001cf920: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ -001cf930: 2022 6f73 7472 6565 2220 696e 2061 6e73   "ostree" in ans
│ │ │ -001cf940: 6962 6c65 5f70 726f 635f 636d 646c 696e  ible_proc_cmdlin
│ │ │ -001cf950: 650a 2020 2020 2920 616e 6420 6e6f 7420  e.    ) and not 
│ │ │ -001cf960: 2820 616e 7369 626c 655f 7669 7274 7561  ( ansible_virtua
│ │ │ -001cf970: 6c69 7a61 7469 6f6e 5f74 7970 6520 696e  lization_type in
│ │ │ -001cf980: 205b 2264 6f63 6b65 7222 2c20 226c 7863   ["docker", "lxc
│ │ │ -001cf990: 222c 2022 6f70 656e 767a 222c 2022 706f  ", "openvz", "po
│ │ │ -001cf9a0: 646d 616e 222c 0a20 2020 2022 636f 6e74  dman",.    "cont
│ │ │ -001cf9b0: 6169 6e65 7222 5d20 2920 290a 2020 2d20  ainer"] ) ).  - 
│ │ │ -001cf9c0: 2722 2f76 6172 2f6c 6f67 2f61 7564 6974  '"/var/log/audit
│ │ │ -001cf9d0: 2220 696e 2061 6e73 6962 6c65 5f6d 6f75  " in ansible_mou
│ │ │ -001cf9e0: 6e74 7320 7c20 6d61 7028 6174 7472 6962  nts | map(attrib
│ │ │ -001cf9f0: 7574 653d 226d 6f75 6e74 2229 207c 206c  ute="mount") | l
│ │ │ -001cfa00: 6973 7427 0a20 202d 2028 222d 2d66 7374  ist'.  - ("--fst
│ │ │ -001cfa10: 6162 2220 7c20 6c65 6e67 7468 203d 3d20  ab" | length == 
│ │ │ -001cfa20: 3029 0a20 202d 2064 6576 6963 655f 6e61  0).  - device_na
│ │ │ -001cfa30: 6d65 2e73 7464 6f75 7420 6973 2064 6566  me.stdout is def
│ │ │ -001cfa40: 696e 6564 2061 6e64 2064 6576 6963 655f  ined and device_
│ │ │ -001cfa50: 6e61 6d65 2e73 7464 6f75 745f 6c69 6e65  name.stdout_line
│ │ │ -001cfa60: 7320 6973 2064 6566 696e 6564 0a20 202d  s is defined.  -
│ │ │ -001cfa70: 2028 6465 7669 6365 5f6e 616d 652e 7374   (device_name.st
│ │ │ -001cfa80: 646f 7574 207c 206c 656e 6774 6820 3d3d  dout | length ==
│ │ │ -001cfa90: 2030 290a 2020 7461 6773 3a0a 2020 2d20   0).  tags:.  - 
│ │ │ -001cfaa0: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ -001cfab0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001cfac0: 2d41 432d 3628 3129 0a20 202d 204e 4953  -AC-6(1).  - NIS
│ │ │ -001cfad0: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ -001cfae0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001cfaf0: 2d43 4d2d 3728 6129 0a20 202d 204e 4953  -CM-7(a).  - NIS
│ │ │ -001cfb00: 542d 3830 302d 3533 2d43 4d2d 3728 6229  T-800-53-CM-7(b)
│ │ │ -001cfb10: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001cfb20: 2d4d 502d 370a 2020 2d20 636f 6e66 6967  -MP-7.  - config
│ │ │ -001cfb30: 7572 655f 7374 7261 7465 6779 0a20 202d  ure_strategy.  -
│ │ │ -001cfb40: 2068 6967 685f 6469 7372 7570 7469 6f6e   high_disruption
│ │ │ -001cfb50: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ -001cfb60: 6974 790a 2020 2d20 6d65 6469 756d 5f73  ity.  - medium_s
│ │ │ -001cfb70: 6576 6572 6974 790a 2020 2d20 6d6f 756e  everity.  - moun
│ │ │ -001cfb80: 745f 6f70 7469 6f6e 5f76 6172 5f6c 6f67  t_option_var_log
│ │ │ -001cfb90: 5f61 7564 6974 5f6e 6f73 7569 640a 2020  _audit_nosuid.  
│ │ │ -001cfba0: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ -001cfbb0: 6564 0a0a 2d20 6e61 6d65 3a20 2741 6464  ed..- name: 'Add
│ │ │ -001cfbc0: 206e 6f73 7569 6420 4f70 7469 6f6e 2074   nosuid Option t
│ │ │ -001cfbd0: 6f20 2f76 6172 2f6c 6f67 2f61 7564 6974  o /var/log/audit
│ │ │ -001cfbe0: 3a20 4d61 6b65 2073 7572 6520 6e6f 7375  : Make sure nosu
│ │ │ -001cfbf0: 6964 206f 7074 696f 6e20 6973 2070 6172  id option is par
│ │ │ -001cfc00: 7420 6f66 2074 6865 0a20 2020 2074 6f20  t of the.    to 
│ │ │ -001cfc10: 2f76 6172 2f6c 6f67 2f61 7564 6974 206f  /var/log/audit o
│ │ │ -001cfc20: 7074 696f 6e73 270a 2020 7365 745f 6661  ptions'.  set_fa
│ │ │ -001cfc30: 6374 3a0a 2020 2020 6d6f 756e 745f 696e  ct:.    mount_in
│ │ │ -001cfc40: 666f 3a20 277b 7b20 6d6f 756e 745f 696e  fo: '{{ mount_in
│ │ │ -001cfc50: 666f 207c 2063 6f6d 6269 6e65 2820 7b27  fo | combine( {'
│ │ │ -001cfc60: 276f 7074 696f 6e73 2727 3a27 2727 277e  'options'':''''~
│ │ │ -001cfc70: 286d 6f75 6e74 5f69 6e66 6f2e 6f70 7469  (mount_info.opti
│ │ │ -001cfc80: 6f6e 7320 7c0a 2020 2020 2020 6465 6661  ons |.      defa
│ │ │ -001cfc90: 756c 7428 2727 2727 2929 7e28 2727 2c27  ult(''''))~('','
│ │ │ -001cfca0: 2720 6966 2028 6d6f 756e 745f 696e 666f  ' if (mount_info
│ │ │ -001cfcb0: 2e6f 7074 696f 6e73 207c 2064 6566 6175  .options | defau
│ │ │ -001cfcc0: 6c74 2827 2727 2729 2920 656c 7365 2027  lt('''')) else '
│ │ │ -001cfcd0: 2727 2729 7e27 276e 6f73 7569 6427 270a  ''')~''nosuid''.
│ │ │ -001cfce0: 2020 2020 2020 7d29 207d 7d27 0a20 2077        }) }}'.  w
│ │ │ -001cfcf0: 6865 6e3a 0a20 202d 2028 206e 6f74 2028  hen:.  - ( not (
│ │ │ -001cfd00: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ -001cfd10: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001cfd20: 6765 7320 616e 6420 2262 6f6f 7463 2220  ges and "bootc" 
│ │ │ -001cfd30: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001cfd40: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ -001cfd50: 6420 6e6f 7420 226f 7065 6e73 6869 6674  d not "openshift
│ │ │ -001cfd60: 2d6b 7562 656c 6574 2220 696e 2061 6e73  -kubelet" in ans
│ │ │ -001cfd70: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001cfd80: 6765 7320 616e 6420 226f 7374 7265 6522  ges and "ostree"
│ │ │ -001cfd90: 2069 6e20 616e 7369 626c 655f 7072 6f63   in ansible_proc
│ │ │ -001cfda0: 5f63 6d64 6c69 6e65 0a20 2020 2029 2061  _cmdline.    ) a
│ │ │ -001cfdb0: 6e64 206e 6f74 2028 2061 6e73 6962 6c65  nd not ( ansible
│ │ │ -001cfdc0: 5f76 6972 7475 616c 697a 6174 696f 6e5f  _virtualization_
│ │ │ -001cfdd0: 7479 7065 2069 6e20 5b22 646f 636b 6572  type in ["docker
│ │ │ -001cfde0: 222c 2022 6c78 6322 2c20 226f 7065 6e76  ", "lxc", "openv
│ │ │ -001cfdf0: 7a22 2c20 2270 6f64 6d61 6e22 2c0a 2020  z", "podman",.  
│ │ │ -001cfe00: 2020 2263 6f6e 7461 696e 6572 225d 2029    "container"] )
│ │ │ -001cfe10: 2029 0a20 202d 2027 222f 7661 722f 6c6f   ).  - '"/var/lo
│ │ │ -001cfe20: 672f 6175 6469 7422 2069 6e20 616e 7369  g/audit" in ansi
│ │ │ -001cfe30: 626c 655f 6d6f 756e 7473 207c 206d 6170  ble_mounts | map
│ │ │ -001cfe40: 2861 7474 7269 6275 7465 3d22 6d6f 756e  (attribute="moun
│ │ │ -001cfe50: 7422 2920 7c20 6c69 7374 270a 2020 2d20  t") | list'.  - 
│ │ │ -001cfe60: 6d6f 756e 745f 696e 666f 2069 7320 6465  mount_info is de
│ │ │ -001cfe70: 6669 6e65 6420 616e 6420 226e 6f73 7569  fined and "nosui
│ │ │ -001cfe80: 6422 206e 6f74 2069 6e20 286d 6f75 6e74  d" not in (mount
│ │ │ -001cfe90: 5f69 6e66 6f2e 6f70 7469 6f6e 7320 7c20  _info.options | 
│ │ │ -001cfea0: 6465 6661 756c 7428 2727 2929 0a20 2074  default('')).  t
│ │ │ -001cfeb0: 6167 733a 0a20 202d 204e 4953 542d 3830  ags:.  - NIST-80
│ │ │ -001cfec0: 302d 3533 2d41 432d 360a 2020 2d20 4e49  0-53-AC-6.  - NI
│ │ │ -001cfed0: 5354 2d38 3030 2d35 332d 4143 2d36 2831  ST-800-53-AC-6(1
│ │ │ -001cfee0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -001cfef0: 332d 434d 2d36 2861 290a 2020 2d20 4e49  3-CM-6(a).  - NI
│ │ │ -001cff00: 5354 2d38 3030 2d35 332d 434d 2d37 2861  ST-800-53-CM-7(a
│ │ │ -001cff10: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -001cff20: 332d 434d 2d37 2862 290a 2020 2d20 4e49  3-CM-7(b).  - NI
│ │ │ -001cff30: 5354 2d38 3030 2d35 332d 4d50 2d37 0a20  ST-800-53-MP-7. 
│ │ │ -001cff40: 202d 2063 6f6e 6669 6775 7265 5f73 7472   - configure_str
│ │ │ -001cff50: 6174 6567 790a 2020 2d20 6869 6768 5f64  ategy.  - high_d
│ │ │ -001cff60: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ -001cff70: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ -001cff80: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ -001cff90: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f  .  - mount_optio
│ │ │ -001cffa0: 6e5f 7661 725f 6c6f 675f 6175 6469 745f  n_var_log_audit_
│ │ │ -001cffb0: 6e6f 7375 6964 0a20 202d 206e 6f5f 7265  nosuid.  - no_re
│ │ │ -001cffc0: 626f 6f74 5f6e 6565 6465 640a 0a2d 206e  boot_needed..- n
│ │ │ -001cffd0: 616d 653a 2027 4164 6420 6e6f 7375 6964  ame: 'Add nosuid
│ │ │ -001cffe0: 204f 7074 696f 6e20 746f 202f 7661 722f   Option to /var/
│ │ │ -001cfff0: 6c6f 672f 6175 6469 743a 2045 6e73 7572  log/audit: Ensur
│ │ │ -001d0000: 6520 2f76 6172 2f6c 6f67 2f61 7564 6974  e /var/log/audit
│ │ │ -001d0010: 2069 7320 6d6f 756e 7465 6420 7769 7468   is mounted with
│ │ │ -001d0020: 0a20 2020 206e 6f73 7569 6420 6f70 7469  .    nosuid opti
│ │ │ -001d0030: 6f6e 270a 2020 616e 7369 626c 652e 706f  on'.  ansible.po
│ │ │ -001d0040: 7369 782e 6d6f 756e 743a 0a20 2020 2070  six.mount:.    p
│ │ │ -001d0050: 6174 683a 202f 7661 722f 6c6f 672f 6175  ath: /var/log/au
│ │ │ -001d0060: 6469 740a 2020 2020 7372 633a 2027 7b7b  dit.    src: '{{
│ │ │ -001d0070: 206d 6f75 6e74 5f69 6e66 6f2e 736f 7572   mount_info.sour
│ │ │ -001d0080: 6365 207c 2064 6566 6175 6c74 2827 2727  ce | default('''
│ │ │ -001d0090: 2729 207d 7d27 0a20 2020 206f 7074 733a  ') }}'.    opts:
│ │ │ -001d00a0: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f2e   '{{ mount_info.
│ │ │ -001d00b0: 6f70 7469 6f6e 7320 7c20 6465 6661 756c  options | defaul
│ │ │ -001d00c0: 7428 2727 2727 2920 7d7d 270a 2020 2020  t('''') }}'.    
│ │ │ -001d00d0: 7374 6174 653a 206d 6f75 6e74 6564 0a20  state: mounted. 
│ │ │ -001d00e0: 2020 2066 7374 7970 653a 2027 7b7b 206d     fstype: '{{ m
│ │ │ -001d00f0: 6f75 6e74 5f69 6e66 6f2e 6673 7479 7065  ount_info.fstype
│ │ │ -001d0100: 207c 2064 6566 6175 6c74 2827 2727 2729   | default('''')
│ │ │ -001d0110: 207d 7d27 0a20 2072 6567 6973 7465 723a   }}'.  register:
│ │ │ -001d0120: 206d 6f75 6e74 5f72 6573 756c 740a 2020   mount_result.  
│ │ │ -001d0130: 6661 696c 6564 5f77 6865 6e3a 0a20 202d  failed_when:.  -
│ │ │ -001d0140: 206d 6f75 6e74 5f72 6573 756c 7420 6973   mount_result is
│ │ │ -001d0150: 2066 6169 6c65 640a 2020 2d20 2727 2774   failed.  - '''t
│ │ │ -001d0160: 6172 6765 7420 6973 2062 7573 7927 2720  arget is busy'' 
│ │ │ -001d0170: 6e6f 7420 696e 2028 6d6f 756e 745f 7265  not in (mount_re
│ │ │ -001d0180: 7375 6c74 2e6d 7367 207c 2064 6566 6175  sult.msg | defau
│ │ │ -001d0190: 6c74 2827 2727 2729 2927 0a20 202d 2027  lt(''''))'.  - '
│ │ │ -001d01a0: 2727 616c 7265 6164 7920 6d6f 756e 7465  ''already mounte
│ │ │ -001d01b0: 6427 2720 6e6f 7420 696e 2028 6d6f 756e  d'' not in (moun
│ │ │ -001d01c0: 745f 7265 7375 6c74 2e6d 7367 207c 2064  t_result.msg | d
│ │ │ -001d01d0: 6566 6175 6c74 2827 2727 2729 2927 0a20  efault(''''))'. 
│ │ │ -001d01e0: 2077 6865 6e3a 0a20 202d 2028 206e 6f74   when:.  - ( not
│ │ │ -001d01f0: 2028 2022 6b65 726e 656c 2220 696e 2061   ( "kernel" in a
│ │ │ -001d0200: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001d0210: 6b61 6765 7320 616e 6420 2262 6f6f 7463  kages and "bootc
│ │ │ -001d0220: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001d0230: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ -001d0240: 616e 6420 6e6f 7420 226f 7065 6e73 6869  and not "openshi
│ │ │ -001d0250: 6674 2d6b 7562 656c 6574 2220 696e 2061  ft-kubelet" in a
│ │ │ -001d0260: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001d0270: 6b61 6765 7320 616e 6420 226f 7374 7265  kages and "ostre
│ │ │ -001d0280: 6522 2069 6e20 616e 7369 626c 655f 7072  e" in ansible_pr
│ │ │ -001d0290: 6f63 5f63 6d64 6c69 6e65 0a20 2020 2029  oc_cmdline.    )
│ │ │ -001d02a0: 2061 6e64 206e 6f74 2028 2061 6e73 6962   and not ( ansib
│ │ │ -001d02b0: 6c65 5f76 6972 7475 616c 697a 6174 696f  le_virtualizatio
│ │ │ -001d02c0: 6e5f 7479 7065 2069 6e20 5b22 646f 636b  n_type in ["dock
│ │ │ -001d02d0: 6572 222c 2022 6c78 6322 2c20 226f 7065  er", "lxc", "ope
│ │ │ -001d02e0: 6e76 7a22 2c20 2270 6f64 6d61 6e22 2c0a  nvz", "podman",.
│ │ │ -001d02f0: 2020 2020 2263 6f6e 7461 696e 6572 225d      "container"]
│ │ │ -001d0300: 2029 2029 0a20 202d 2027 222f 7661 722f   ) ).  - '"/var/
│ │ │ -001d0310: 6c6f 672f 6175 6469 7422 2069 6e20 616e  log/audit" in an
│ │ │ -001d0320: 7369 626c 655f 6d6f 756e 7473 207c 206d  sible_mounts | m
│ │ │ -001d0330: 6170 2861 7474 7269 6275 7465 3d22 6d6f  ap(attribute="mo
│ │ │ -001d0340: 756e 7422 2920 7c20 6c69 7374 270a 2020  unt") | list'.  
│ │ │ -001d0350: 2d20 6d6f 756e 745f 696e 666f 2069 7320  - mount_info is 
│ │ │ -001d0360: 6465 6669 6e65 640a 2020 2d20 2864 6576  defined.  - (dev
│ │ │ -001d0370: 6963 655f 6e61 6d65 2e73 7464 6f75 7420  ice_name.stdout 
│ │ │ -001d0380: 6973 2064 6566 696e 6564 2061 6e64 2028  is defined and (
│ │ │ -001d0390: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ -001d03a0: 7574 207c 206c 656e 6774 6820 2667 743b  ut | length >
│ │ │ -001d03b0: 2030 2929 206f 7220 2822 2d2d 6673 7461   0)) or ("--fsta
│ │ │ -001d03c0: 6222 0a20 2020 207c 206c 656e 6774 6820  b".    | length 
│ │ │ -001d03d0: 3d3d 2030 290a 2020 7461 6773 3a0a 2020  == 0).  tags:.  
│ │ │ -001d03e0: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ -001d03f0: 2d36 0a20 202d 204e 4953 542d 3830 302d  -6.  - NIST-800-
│ │ │ -001d0400: 3533 2d41 432d 3628 3129 0a20 202d 204e  53-AC-6(1).  - N
│ │ │ -001d0410: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ -001d0420: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ -001d0430: 3533 2d43 4d2d 3728 6129 0a20 202d 204e  53-CM-7(a).  - N
│ │ │ -001d0440: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ -001d0450: 6229 0a20 202d 204e 4953 542d 3830 302d  b).  - NIST-800-
│ │ │ -001d0460: 3533 2d4d 502d 370a 2020 2d20 636f 6e66  53-MP-7.  - conf
│ │ │ -001d0470: 6967 7572 655f 7374 7261 7465 6779 0a20  igure_strategy. 
│ │ │ -001d0480: 202d 2068 6967 685f 6469 7372 7570 7469   - high_disrupti
│ │ │ -001d0490: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c  on.  - low_compl
│ │ │ -001d04a0: 6578 6974 790a 2020 2d20 6d65 6469 756d  exity.  - medium
│ │ │ -001d04b0: 5f73 6576 6572 6974 790a 2020 2d20 6d6f  _severity.  - mo
│ │ │ -001d04c0: 756e 745f 6f70 7469 6f6e 5f76 6172 5f6c  unt_option_var_l
│ │ │ -001d04d0: 6f67 5f61 7564 6974 5f6e 6f73 7569 640a  og_audit_nosuid.
│ │ │ -001d04e0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ -001d04f0: 6564 6564 0a3c 2f63 6f64 653e 3c2f 7072  eded.Remediation
│ │ │ -001d05b0: 2053 6865 6c6c 2073 6372 6970 7420 e287   Shell script ..
│ │ │ -001d05c0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c  .
Compl │ │ │ -001ced80: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ -001ced90: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ -001cedb0: 2f74 683e 3c74 643e 6869 6768 3c2f 7464 /th>high
Re │ │ │ -001cedd0: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -001cede0: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:configure │ │ │ -001cee10: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
< │ │ │ -001d0640: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -001d0650: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
<
│ │ │ -001d0670: 636f 6465 3e23 2052 656d 6564 6961 7469  code># Remediati
│ │ │ -001d0680: 6f6e 2069 7320 6170 706c 6963 6162 6c65  on is applicable
│ │ │ -001d0690: 206f 6e6c 7920 696e 2063 6572 7461 696e   only in certain
│ │ │ -001d06a0: 2070 6c61 7466 6f72 6d73 0a69 6620 2820   platforms.if ( 
│ │ │ -001d06b0: 2120 2820 7b20 7270 6d20 2d2d 7175 6965  ! ( { rpm --quie
│ │ │ -001d06c0: 7420 2d71 206b 6572 6e65 6c20 3b7d 2026  t -q kernel ;} &
│ │ │ -001d06d0: 616d 703b 2661 6d70 3b20 7b20 7270 6d20  amp;& { rpm 
│ │ │ -001d06e0: 2d2d 7175 6965 7420 2d71 2062 6f6f 7463  --quiet -q bootc
│ │ │ -001d06f0: 203b 7d20 2661 6d70 3b26 616d 703b 207b   ;} && {
│ │ │ -001d0700: 2021 2072 706d 202d 2d71 7569 6574 202d   ! rpm --quiet -
│ │ │ -001d0710: 7120 6f70 656e 7368 6966 742d 6b75 6265  q openshift-kube
│ │ │ -001d0720: 6c65 7420 3b7d 2026 616d 703b 2661 6d70  let ;} &&
│ │ │ -001d0730: 3b20 285b 202d 6620 2f72 756e 2f6f 7374  ; ([ -f /run/ost
│ │ │ -001d0740: 7265 652d 626f 6f74 6564 205d 207c 7c20  ree-booted ] || 
│ │ │ -001d0750: 5b20 2d4c 202f 6f73 7472 6565 205d 2920  [ -L /ostree ]) 
│ │ │ -001d0760: 2920 2661 6d70 3b26 616d 703b 2021 2028  ) && ! (
│ │ │ -001d0770: 205b 202d 6620 2f2e 646f 636b 6572 656e   [ -f /.dockeren
│ │ │ -001d0780: 7620 5d20 7c7c 205b 202d 6620 2f72 756e  v ] || [ -f /run
│ │ │ -001d0790: 2f2e 636f 6e74 6169 6e65 7265 6e76 205d  /.containerenv ]
│ │ │ -001d07a0: 2029 2029 2026 616d 703b 2661 6d70 3b20   ) ) && 
│ │ │ -001d07b0: 7b20 2820 6669 6e64 6d6e 7420 2d2d 6b65  { ( findmnt --ke
│ │ │ -001d07c0: 726e 656c 2022 2f76 6172 2f6c 6f67 2f61  rnel "/var/log/a
│ │ │ -001d07d0: 7564 6974 2220 2667 743b 202f 6465 762f  udit" > /dev/
│ │ │ -001d07e0: 6e75 6c6c 207c 7c20 6669 6e64 6d6e 7420  null || findmnt 
│ │ │ -001d07f0: 2d2d 6673 7461 6220 222f 7661 722f 6c6f  --fstab "/var/lo
│ │ │ -001d0800: 672f 6175 6469 7422 2026 6774 3b20 2f64  g/audit" > /d
│ │ │ -001d0810: 6576 2f6e 756c 6c20 293b 207d 3b20 7468  ev/null ); }; th
│ │ │ -001d0820: 656e 0a0a 6675 6e63 7469 6f6e 2070 6572  en..function per
│ │ │ -001d0830: 666f 726d 5f72 656d 6564 6961 7469 6f6e  form_remediation
│ │ │ -001d0840: 207b 0a0a 2020 2020 0a20 2020 2020 2020   {..    .       
│ │ │ -001d0850: 2023 2074 6865 206d 6f75 6e74 2070 6f69   # the mount poi
│ │ │ -001d0860: 6e74 202f 7661 722f 6c6f 672f 6175 6469  nt /var/log/audi
│ │ │ -001d0870: 7420 6861 7320 746f 2062 6520 6465 6669  t has to be defi
│ │ │ -001d0880: 6e65 6420 696e 202f 6574 632f 6673 7461  ned in /etc/fsta
│ │ │ -001d0890: 620a 2020 2020 2020 2020 2320 6265 666f  b.        # befo
│ │ │ -001d08a0: 7265 2074 6869 7320 7265 6d65 6469 6174  re this remediat
│ │ │ -001d08b0: 696f 6e20 6361 6e20 6265 2065 7865 6375  ion can be execu
│ │ │ -001d08c0: 7465 642e 2049 6e20 6361 7365 2069 7420  ted. In case it 
│ │ │ -001d08d0: 6973 206e 6f74 2064 6566 696e 6564 2c20  is not defined, 
│ │ │ -001d08e0: 7468 650a 2020 2020 2020 2020 2320 7265  the.        # re
│ │ │ -001d08f0: 6d65 6469 6174 696f 6e20 6162 6f72 7473  mediation aborts
│ │ │ -001d0900: 2061 6e64 206e 6f20 6368 616e 6765 7320   and no changes 
│ │ │ -001d0910: 7265 6761 7264 696e 6720 7468 6520 6d6f  regarding the mo
│ │ │ -001d0920: 756e 7420 706f 696e 7420 6172 6520 646f  unt point are do
│ │ │ -001d0930: 6e65 2e0a 2020 2020 2020 2020 6d6f 756e  ne..        moun
│ │ │ -001d0940: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ -001d0950: 6765 7870 3d22 2428 7072 696e 7466 2022  gexp="$(printf "
│ │ │ -001d0960: 5e5b 5b3a 7370 6163 653a 5d5d 2a5b 5e23  ^[[:space:]]*[^#
│ │ │ -001d0970: 5d2e 2a5b 5b3a 7370 6163 653a 5d5d 2573  ].*[[:space:]]%s
│ │ │ -001d0980: 5b5b 3a73 7061 6365 3a5d 5d22 2022 2f76  [[:space:]]" "/v
│ │ │ -001d0990: 6172 2f6c 6f67 2f61 7564 6974 2229 220a  ar/log/audit")".
│ │ │ -001d09a0: 0a20 2020 2067 7265 7020 2224 6d6f 756e  .    grep "$moun
│ │ │ -001d09b0: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ -001d09c0: 6765 7870 2220 2d71 202f 6574 632f 6673  gexp" -q /etc/fs
│ │ │ -001d09d0: 7461 6220 5c0a 2020 2020 2020 2020 7c7c  tab \.        ||
│ │ │ -001d09e0: 207b 2065 6368 6f20 2254 6865 206d 6f75   { echo "The mou
│ │ │ -001d09f0: 6e74 2070 6f69 6e74 2027 2f76 6172 2f6c  nt point '/var/l
│ │ │ -001d0a00: 6f67 2f61 7564 6974 2720 6973 206e 6f74  og/audit' is not
│ │ │ -001d0a10: 2065 7665 6e20 696e 202f 6574 632f 6673   even in /etc/fs
│ │ │ -001d0a20: 7461 622c 2073 6f20 7765 2063 616e 2774  tab, so we can't
│ │ │ -001d0a30: 2073 6574 2075 7020 6d6f 756e 7420 6f70   set up mount op
│ │ │ -001d0a40: 7469 6f6e 7322 2026 6774 3b26 616d 703b  tions" >&
│ │ │ -001d0a50: 323b 0a20 2020 2020 2020 2020 2020 2020  2;.             
│ │ │ -001d0a60: 2020 2065 6368 6f20 224e 6f74 2072 656d     echo "Not rem
│ │ │ -001d0a70: 6564 6961 7469 6e67 2c20 6265 6361 7573  ediating, becaus
│ │ │ -001d0a80: 6520 7468 6572 6520 6973 206e 6f20 7265  e there is no re
│ │ │ -001d0a90: 636f 7264 206f 6620 2f76 6172 2f6c 6f67  cord of /var/log
│ │ │ -001d0aa0: 2f61 7564 6974 2069 6e20 2f65 7463 2f66  /audit in /etc/f
│ │ │ -001d0ab0: 7374 6162 2220 2667 743b 2661 6d70 3b32  stab" >&2
│ │ │ -001d0ac0: 3b20 7265 7475 726e 2031 3b20 7d0a 2020  ; return 1; }.  
│ │ │ -001d0ad0: 2020 0a0a 0a20 2020 206d 6f75 6e74 5f70    ...    mount_p
│ │ │ -001d0ae0: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ -001d0af0: 703d 2224 2870 7269 6e74 6620 225e 5b5b  p="$(printf "^[[
│ │ │ -001d0b00: 3a73 7061 6365 3a5d 5d2a 5b5e 235d 2e2a  :space:]]*[^#].*
│ │ │ -001d0b10: 5b5b 3a73 7061 6365 3a5d 5d25 735b 5b3a  [[:space:]]%s[[:
│ │ │ -001d0b20: 7370 6163 653a 5d5d 2220 2f76 6172 2f6c  space:]]" /var/l
│ │ │ -001d0b30: 6f67 2f61 7564 6974 2922 0a0a 2020 2020  og/audit)"..    
│ │ │ -001d0b40: 2320 4966 2074 6865 206d 6f75 6e74 2070  # If the mount p
│ │ │ -001d0b50: 6f69 6e74 2069 7320 6e6f 7420 696e 202f  oint is not in /
│ │ │ -001d0b60: 6574 632f 6673 7461 622c 2067 6574 2070  etc/fstab, get p
│ │ │ -001d0b70: 7265 7669 6f75 7320 6d6f 756e 7420 6f70  revious mount op
│ │ │ -001d0b80: 7469 6f6e 7320 6672 6f6d 202f 6574 632f  tions from /etc/
│ │ │ -001d0b90: 6d74 6162 0a20 2020 2069 6620 2120 6772  mtab.    if ! gr
│ │ │ -001d0ba0: 6570 202d 7120 2224 6d6f 756e 745f 706f  ep -q "$mount_po
│ │ │ -001d0bb0: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ -001d0bc0: 2220 2f65 7463 2f66 7374 6162 3b20 7468  " /etc/fstab; th
│ │ │ -001d0bd0: 656e 0a20 2020 2020 2020 2023 2072 756e  en.        # run
│ │ │ -001d0be0: 7469 6d65 206f 7074 7320 7769 7468 6f75  time opts withou
│ │ │ -001d0bf0: 7420 736f 6d65 2061 7574 6f6d 6174 6963  t some automatic
│ │ │ -001d0c00: 206b 6572 6e65 6c2f 7573 6572 7370 6163   kernel/userspac
│ │ │ -001d0c10: 652d 6164 6465 6420 6465 6661 756c 7473  e-added defaults
│ │ │ -001d0c20: 0a20 2020 2020 2020 2070 7265 7669 6f75  .        previou
│ │ │ -001d0c30: 735f 6d6f 756e 745f 6f70 7473 3d24 2867  s_mount_opts=$(g
│ │ │ -001d0c40: 7265 7020 2224 6d6f 756e 745f 706f 696e  rep "$mount_poin
│ │ │ -001d0c50: 745f 6d61 7463 685f 7265 6765 7870 2220  t_match_regexp" 
│ │ │ -001d0c60: 2f65 7463 2f6d 7461 6220 7c20 6865 6164  /etc/mtab | head
│ │ │ -001d0c70: 202d 3120 7c20 2061 776b 2027 7b70 7269   -1 |  awk '{pri
│ │ │ -001d0c80: 6e74 2024 347d 2720 5c0a 2020 2020 2020  nt $4}' \.      
│ │ │ -001d0c90: 2020 2020 2020 2020 2020 2020 2020 7c20                | 
│ │ │ -001d0ca0: 7365 6420 2d45 2022 732f 2872 777c 6465  sed -E "s/(rw|de
│ │ │ -001d0cb0: 6661 756c 7473 7c73 6563 6c61 6265 6c7c  faults|seclabel|
│ │ │ -001d0cc0: 6e6f 7375 6964 2928 2c7c 2429 2f2f 673b  nosuid)(,|$)//g;
│ │ │ -001d0cd0: 732f 2c24 2f2f 2229 0a20 2020 2020 2020  s/,$//").       
│ │ │ -001d0ce0: 205b 2022 2470 7265 7669 6f75 735f 6d6f   [ "$previous_mo
│ │ │ -001d0cf0: 756e 745f 6f70 7473 2220 5d20 2661 6d70  unt_opts" ] &
│ │ │ -001d0d00: 3b26 616d 703b 2070 7265 7669 6f75 735f  ;& previous_
│ │ │ -001d0d10: 6d6f 756e 745f 6f70 7473 2b3d 222c 220a  mount_opts+=",".
│ │ │ -001d0d20: 2020 2020 2020 2020 2320 496e 2069 736f          # In iso
│ │ │ -001d0d30: 3936 3630 2066 696c 6573 7973 7465 6d73  9660 filesystems
│ │ │ -001d0d40: 206d 7461 6220 636f 756c 6420 6465 7363   mtab could desc
│ │ │ -001d0d50: 7269 6265 2061 2022 626c 6f63 6b73 697a  ribe a "blocksiz
│ │ │ -001d0d60: 6522 2076 616c 7565 2c20 7468 6973 2073  e" value, this s
│ │ │ -001d0d70: 686f 756c 6420 6265 2072 6566 6c65 6374  hould be reflect
│ │ │ -001d0d80: 6564 2069 6e0a 2020 2020 2020 2020 2320  ed in.        # 
│ │ │ -001d0d90: 6673 7461 6220 6173 2022 626c 6f63 6b22  fstab as "block"
│ │ │ -001d0da0: 2e20 2054 6865 206e 6578 7420 7661 7269  .  The next vari
│ │ │ -001d0db0: 6162 6c65 2069 7320 746f 2073 6174 6973  able is to satis
│ │ │ -001d0dc0: 6679 2073 6865 6c6c 6368 6563 6b20 5343  fy shellcheck SC
│ │ │ -001d0dd0: 3230 3530 2e0a 2020 2020 2020 2020 6673  2050..        fs
│ │ │ -001d0de0: 5f74 7970 653d 2222 0a20 2020 2020 2020  _type="".       
│ │ │ -001d0df0: 2069 6620 5b20 2022 2466 735f 7479 7065   if [  "$fs_type
│ │ │ -001d0e00: 2220 3d3d 2022 6973 6f39 3636 3022 205d  " == "iso9660" ]
│ │ │ -001d0e10: 203b 2074 6865 6e0a 2020 2020 2020 2020   ; then.        
│ │ │ -001d0e20: 2020 2020 7072 6576 696f 7573 5f6d 6f75      previous_mou
│ │ │ -001d0e30: 6e74 5f6f 7074 733d 2428 7365 6420 2773  nt_opts=$(sed 's
│ │ │ -001d0e40: 2f62 6c6f 636b 7369 7a65 3d2f 626c 6f63  /blocksize=/bloc
│ │ │ -001d0e50: 6b3d 2f27 2026 6c74 3b26 6c74 3b26 6c74  k=/' <<<
│ │ │ -001d0e60: 3b20 2224 7072 6576 696f 7573 5f6d 6f75  ; "$previous_mou
│ │ │ -001d0e70: 6e74 5f6f 7074 7322 290a 2020 2020 2020  nt_opts").      
│ │ │ -001d0e80: 2020 6669 0a20 2020 2020 2020 2065 6368    fi.        ech
│ │ │ -001d0e90: 6f20 2220 2f76 6172 2f6c 6f67 2f61 7564  o " /var/log/aud
│ │ │ -001d0ea0: 6974 2020 6465 6661 756c 7473 2c24 7b70  it  defaults,${p
│ │ │ -001d0eb0: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ -001d0ec0: 7473 7d6e 6f73 7569 6420 3020 3022 2026  ts}nosuid 0 0" &
│ │ │ -001d0ed0: 6774 3b26 6774 3b20 2f65 7463 2f66 7374  gt;> /etc/fst
│ │ │ -001d0ee0: 6162 0a20 2020 2023 2049 6620 7468 6520  ab.    # If the 
│ │ │ -001d0ef0: 6d6f 756e 745f 6f70 7420 6f70 7469 6f6e  mount_opt option
│ │ │ -001d0f00: 2069 7320 6e6f 7420 616c 7265 6164 7920   is not already 
│ │ │ -001d0f10: 696e 2074 6865 206d 6f75 6e74 2070 6f69  in the mount poi
│ │ │ -001d0f20: 6e74 2773 202f 6574 632f 6673 7461 6220  nt's /etc/fstab 
│ │ │ -001d0f30: 656e 7472 792c 2061 6464 2069 740a 2020  entry, add it.  
│ │ │ -001d0f40: 2020 656c 6966 2021 2067 7265 7020 2224    elif ! grep "$
│ │ │ -001d0f50: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ -001d0f60: 685f 7265 6765 7870 2220 2f65 7463 2f66  h_regexp" /etc/f
│ │ │ -001d0f70: 7374 6162 207c 2067 7265 7020 2d71 2022  stab | grep -q "
│ │ │ -001d0f80: 6e6f 7375 6964 223b 2074 6865 6e0a 2020  nosuid"; then.  
│ │ │ -001d0f90: 2020 2020 2020 7072 6576 696f 7573 5f6d        previous_m
│ │ │ -001d0fa0: 6f75 6e74 5f6f 7074 733d 2428 6772 6570  ount_opts=$(grep
│ │ │ -001d0fb0: 2022 246d 6f75 6e74 5f70 6f69 6e74 5f6d   "$mount_point_m
│ │ │ -001d0fc0: 6174 6368 5f72 6567 6578 7022 202f 6574  atch_regexp" /et
│ │ │ -001d0fd0: 632f 6673 7461 6220 7c20 6177 6b20 277b  c/fstab | awk '{
│ │ │ -001d0fe0: 7072 696e 7420 2434 7d27 290a 2020 2020  print $4}').    
│ │ │ -001d0ff0: 2020 2020 7365 6420 2d69 2022 737c 5c28      sed -i "s|\(
│ │ │ -001d1000: 247b 6d6f 756e 745f 706f 696e 745f 6d61  ${mount_point_ma
│ │ │ -001d1010: 7463 685f 7265 6765 7870 7d2e 2a24 7b70  tch_regexp}.*${p
│ │ │ -001d1020: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ -001d1030: 7473 7d5c 297c 5c31 2c6e 6f73 7569 647c  ts}\)|\1,nosuid|
│ │ │ -001d1040: 2220 2f65 7463 2f66 7374 6162 0a20 2020  " /etc/fstab.   
│ │ │ -001d1050: 2066 690a 0a0a 2020 2020 6966 206d 6b64   fi...    if mkd
│ │ │ -001d1060: 6972 202d 7020 222f 7661 722f 6c6f 672f  ir -p "/var/log/
│ │ │ -001d1070: 6175 6469 7422 3b20 7468 656e 0a20 2020  audit"; then.   
│ │ │ -001d1080: 2020 2020 2069 6620 6d6f 756e 7470 6f69       if mountpoi
│ │ │ -001d1090: 6e74 202d 7120 222f 7661 722f 6c6f 672f  nt -q "/var/log/
│ │ │ -001d10a0: 6175 6469 7422 3b20 7468 656e 0a20 2020  audit"; then.   
│ │ │ -001d10b0: 2020 2020 2020 2020 206d 6f75 6e74 202d           mount -
│ │ │ -001d10c0: 6f20 7265 6d6f 756e 7420 2d2d 7461 7267  o remount --targ
│ │ │ -001d10d0: 6574 2022 2f76 6172 2f6c 6f67 2f61 7564  et "/var/log/aud
│ │ │ -001d10e0: 6974 220a 2020 2020 2020 2020 6669 0a20  it".        fi. 
│ │ │ -001d10f0: 2020 2066 690a 7d0a 0a70 6572 666f 726d     fi.}..perform
│ │ │ -001d1100: 5f72 656d 6564 6961 7469 6f6e 0a0a 656c  _remediation..el
│ │ │ -001d1110: 7365 0a20 2020 2026 6774 3b26 616d 703b  se.    >&
│ │ │ -001d1120: 3220 6563 686f 2027 5265 6d65 6469 6174  2 echo 'Remediat
│ │ │ -001d1130: 696f 6e20 6973 206e 6f74 2061 7070 6c69  ion is not appli
│ │ │ -001d1140: 6361 626c 652c 206e 6f74 6869 6e67 2077  cable, nothing w
│ │ │ -001d1150: 6173 2064 6f6e 6527 0a66 690a 3c2f 636f  as done'.fi.<
│ │ │ +001cead0: 6272 3e3c 6469 7620 636c 6173 733d 2270  br>
< │ │ │ +001cebc0: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
-
│ │ │ +001cec00: 206e 616d 653a 2047 6174 6865 7220 7468   name: Gather th
│ │ │ +001cec10: 6520 7061 636b 6167 6520 6661 6374 730a  e package facts.
│ │ │ +001cec20: 2020 7061 636b 6167 655f 6661 6374 733a    package_facts:
│ │ │ +001cec30: 0a20 2020 206d 616e 6167 6572 3a20 6175  .    manager: au
│ │ │ +001cec40: 746f 0a20 2074 6167 733a 0a20 202d 204e  to.  tags:.  - N
│ │ │ +001cec50: 4953 542d 3830 302d 3533 2d41 432d 360a  IST-800-53-AC-6.
│ │ │ +001cec60: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001cec70: 4143 2d36 2831 290a 2020 2d20 4e49 5354  AC-6(1).  - NIST
│ │ │ +001cec80: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ +001cec90: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001ceca0: 434d 2d37 2861 290a 2020 2d20 4e49 5354  CM-7(a).  - NIST
│ │ │ +001cecb0: 2d38 3030 2d35 332d 434d 2d37 2862 290a  -800-53-CM-7(b).
│ │ │ +001cecc0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001cecd0: 4d50 2d37 0a20 202d 2063 6f6e 6669 6775  MP-7.  - configu
│ │ │ +001cece0: 7265 5f73 7472 6174 6567 790a 2020 2d20  re_strategy.  - 
│ │ │ +001cecf0: 6869 6768 5f64 6973 7275 7074 696f 6e0a  high_disruption.
│ │ │ +001ced00: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ +001ced10: 7479 0a20 202d 206d 6564 6975 6d5f 7365  ty.  - medium_se
│ │ │ +001ced20: 7665 7269 7479 0a20 202d 206d 6f75 6e74  verity.  - mount
│ │ │ +001ced30: 5f6f 7074 696f 6e5f 7661 725f 6c6f 675f  _option_var_log_
│ │ │ +001ced40: 6175 6469 745f 6e6f 7375 6964 0a20 202d  audit_nosuid.  -
│ │ │ +001ced50: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ +001ced60: 640a 0a2d 206e 616d 653a 2027 4164 6420  d..- name: 'Add 
│ │ │ +001ced70: 6e6f 7375 6964 204f 7074 696f 6e20 746f  nosuid Option to
│ │ │ +001ced80: 202f 7661 722f 6c6f 672f 6175 6469 743a   /var/log/audit:
│ │ │ +001ced90: 2043 6865 636b 2069 6e66 6f72 6d61 7469   Check informati
│ │ │ +001ceda0: 6f6e 2061 7373 6f63 6961 7465 6420 746f  on associated to
│ │ │ +001cedb0: 206d 6f75 6e74 706f 696e 7427 0a20 2061   mountpoint'.  a
│ │ │ +001cedc0: 6e73 6962 6c65 2e62 7569 6c74 696e 2e63  nsible.builtin.c
│ │ │ +001cedd0: 6f6d 6d61 6e64 3a20 6669 6e64 6d6e 7420  ommand: findmnt 
│ │ │ +001cede0: 2d2d 6673 7461 6220 272f 7661 722f 6c6f  --fstab '/var/lo
│ │ │ +001cedf0: 672f 6175 6469 7427 0a20 2072 6567 6973  g/audit'.  regis
│ │ │ +001cee00: 7465 723a 2064 6576 6963 655f 6e61 6d65  ter: device_name
│ │ │ +001cee10: 0a20 2066 6169 6c65 645f 7768 656e 3a20  .  failed_when: 
│ │ │ +001cee20: 6465 7669 6365 5f6e 616d 652e 7263 2026  device_name.rc &
│ │ │ +001cee30: 6774 3b20 310a 2020 6368 616e 6765 645f  gt; 1.  changed_
│ │ │ +001cee40: 7768 656e 3a20 6661 6c73 650a 2020 6368  when: false.  ch
│ │ │ +001cee50: 6563 6b5f 6d6f 6465 3a20 6661 6c73 650a  eck_mode: false.
│ │ │ +001cee60: 2020 7768 656e 3a0a 2020 2d20 2820 6e6f    when:.  - ( no
│ │ │ +001cee70: 7420 2820 226b 6572 6e65 6c22 2069 6e20  t ( "kernel" in 
│ │ │ +001cee80: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001cee90: 636b 6167 6573 2061 6e64 2022 626f 6f74  ckages and "boot
│ │ │ +001ceea0: 6322 2069 6e20 616e 7369 626c 655f 6661  c" in ansible_fa
│ │ │ +001ceeb0: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ +001ceec0: 2061 6e64 206e 6f74 2022 6f70 656e 7368   and not "opensh
│ │ │ +001ceed0: 6966 742d 6b75 6265 6c65 7422 2069 6e20  ift-kubelet" in 
│ │ │ +001ceee0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001ceef0: 636b 6167 6573 2061 6e64 2022 6f73 7472  ckages and "ostr
│ │ │ +001cef00: 6565 2220 696e 2061 6e73 6962 6c65 5f70  ee" in ansible_p
│ │ │ +001cef10: 726f 635f 636d 646c 696e 650a 2020 2020  roc_cmdline.    
│ │ │ +001cef20: 2920 616e 6420 6e6f 7420 2820 616e 7369  ) and not ( ansi
│ │ │ +001cef30: 626c 655f 7669 7274 7561 6c69 7a61 7469  ble_virtualizati
│ │ │ +001cef40: 6f6e 5f74 7970 6520 696e 205b 2264 6f63  on_type in ["doc
│ │ │ +001cef50: 6b65 7222 2c20 226c 7863 222c 2022 6f70  ker", "lxc", "op
│ │ │ +001cef60: 656e 767a 222c 2022 706f 646d 616e 222c  envz", "podman",
│ │ │ +001cef70: 0a20 2020 2022 636f 6e74 6169 6e65 7222  .    "container"
│ │ │ +001cef80: 5d20 2920 290a 2020 2d20 2722 2f76 6172  ] ) ).  - '"/var
│ │ │ +001cef90: 2f6c 6f67 2f61 7564 6974 2220 696e 2061  /log/audit" in a
│ │ │ +001cefa0: 6e73 6962 6c65 5f6d 6f75 6e74 7320 7c20  nsible_mounts | 
│ │ │ +001cefb0: 6d61 7028 6174 7472 6962 7574 653d 226d  map(attribute="m
│ │ │ +001cefc0: 6f75 6e74 2229 207c 206c 6973 7427 0a20  ount") | list'. 
│ │ │ +001cefd0: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ +001cefe0: 3830 302d 3533 2d41 432d 360a 2020 2d20  800-53-AC-6.  - 
│ │ │ +001ceff0: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ +001cf000: 2831 290a 2020 2d20 4e49 5354 2d38 3030  (1).  - NIST-800
│ │ │ +001cf010: 2d35 332d 434d 2d36 2861 290a 2020 2d20  -53-CM-6(a).  - 
│ │ │ +001cf020: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ +001cf030: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ +001cf040: 2d35 332d 434d 2d37 2862 290a 2020 2d20  -53-CM-7(b).  - 
│ │ │ +001cf050: 4e49 5354 2d38 3030 2d35 332d 4d50 2d37  NIST-800-53-MP-7
│ │ │ +001cf060: 0a20 202d 2063 6f6e 6669 6775 7265 5f73  .  - configure_s
│ │ │ +001cf070: 7472 6174 6567 790a 2020 2d20 6869 6768  trategy.  - high
│ │ │ +001cf080: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +001cf090: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ +001cf0a0: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ +001cf0b0: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074  ty.  - mount_opt
│ │ │ +001cf0c0: 696f 6e5f 7661 725f 6c6f 675f 6175 6469  ion_var_log_audi
│ │ │ +001cf0d0: 745f 6e6f 7375 6964 0a20 202d 206e 6f5f  t_nosuid.  - no_
│ │ │ +001cf0e0: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ +001cf0f0: 206e 616d 653a 2027 4164 6420 6e6f 7375   name: 'Add nosu
│ │ │ +001cf100: 6964 204f 7074 696f 6e20 746f 202f 7661  id Option to /va
│ │ │ +001cf110: 722f 6c6f 672f 6175 6469 743a 2043 7265  r/log/audit: Cre
│ │ │ +001cf120: 6174 6520 6d6f 756e 745f 696e 666f 2064  ate mount_info d
│ │ │ +001cf130: 6963 7469 6f6e 6172 7920 7661 7269 6162  ictionary variab
│ │ │ +001cf140: 6c65 270a 2020 7365 745f 6661 6374 3a0a  le'.  set_fact:.
│ │ │ +001cf150: 2020 2020 6d6f 756e 745f 696e 666f 3a20      mount_info: 
│ │ │ +001cf160: 277b 7b20 6d6f 756e 745f 696e 666f 7c64  '{{ mount_info|d
│ │ │ +001cf170: 6566 6175 6c74 287b 7d29 7c63 6f6d 6269  efault({})|combi
│ │ │ +001cf180: 6e65 287b 6974 656d 2e30 3a20 6974 656d  ne({item.0: item
│ │ │ +001cf190: 2e31 7d29 207d 7d27 0a20 2077 6974 685f  .1}) }}'.  with_
│ │ │ +001cf1a0: 746f 6765 7468 6572 3a0a 2020 2d20 277b  together:.  - '{
│ │ │ +001cf1b0: 7b20 6465 7669 6365 5f6e 616d 652e 7374  { device_name.st
│ │ │ +001cf1c0: 646f 7574 5f6c 696e 6573 5b30 5d2e 7370  dout_lines[0].sp
│ │ │ +001cf1d0: 6c69 7428 2920 7c20 6d61 7028 2727 6c6f  lit() | map(''lo
│ │ │ +001cf1e0: 7765 7227 2729 207c 206c 6973 7420 7d7d  wer'') | list }}
│ │ │ +001cf1f0: 270a 2020 2d20 277b 7b20 6465 7669 6365  '.  - '{{ device
│ │ │ +001cf200: 5f6e 616d 652e 7374 646f 7574 5f6c 696e  _name.stdout_lin
│ │ │ +001cf210: 6573 5b31 5d2e 7370 6c69 7428 2920 7c20  es[1].split() | 
│ │ │ +001cf220: 6c69 7374 207d 7d27 0a20 2077 6865 6e3a  list }}'.  when:
│ │ │ +001cf230: 0a20 202d 2028 206e 6f74 2028 2022 6b65  .  - ( not ( "ke
│ │ │ +001cf240: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ +001cf250: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ +001cf260: 616e 6420 2262 6f6f 7463 2220 696e 2061  and "bootc" in a
│ │ │ +001cf270: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +001cf280: 6b61 6765 730a 2020 2020 616e 6420 6e6f  kages.    and no
│ │ │ +001cf290: 7420 226f 7065 6e73 6869 6674 2d6b 7562  t "openshift-kub
│ │ │ +001cf2a0: 656c 6574 2220 696e 2061 6e73 6962 6c65  elet" in ansible
│ │ │ +001cf2b0: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ +001cf2c0: 616e 6420 226f 7374 7265 6522 2069 6e20  and "ostree" in 
│ │ │ +001cf2d0: 616e 7369 626c 655f 7072 6f63 5f63 6d64  ansible_proc_cmd
│ │ │ +001cf2e0: 6c69 6e65 0a20 2020 2029 2061 6e64 206e  line.    ) and n
│ │ │ +001cf2f0: 6f74 2028 2061 6e73 6962 6c65 5f76 6972  ot ( ansible_vir
│ │ │ +001cf300: 7475 616c 697a 6174 696f 6e5f 7479 7065  tualization_type
│ │ │ +001cf310: 2069 6e20 5b22 646f 636b 6572 222c 2022   in ["docker", "
│ │ │ +001cf320: 6c78 6322 2c20 226f 7065 6e76 7a22 2c20  lxc", "openvz", 
│ │ │ +001cf330: 2270 6f64 6d61 6e22 2c0a 2020 2020 2263  "podman",.    "c
│ │ │ +001cf340: 6f6e 7461 696e 6572 225d 2029 2029 0a20  ontainer"] ) ). 
│ │ │ +001cf350: 202d 2027 222f 7661 722f 6c6f 672f 6175   - '"/var/log/au
│ │ │ +001cf360: 6469 7422 2069 6e20 616e 7369 626c 655f  dit" in ansible_
│ │ │ +001cf370: 6d6f 756e 7473 207c 206d 6170 2861 7474  mounts | map(att
│ │ │ +001cf380: 7269 6275 7465 3d22 6d6f 756e 7422 2920  ribute="mount") 
│ │ │ +001cf390: 7c20 6c69 7374 270a 2020 2d20 6465 7669  | list'.  - devi
│ │ │ +001cf3a0: 6365 5f6e 616d 652e 7374 646f 7574 2069  ce_name.stdout i
│ │ │ +001cf3b0: 7320 6465 6669 6e65 6420 616e 6420 6465  s defined and de
│ │ │ +001cf3c0: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ +001cf3d0: 5f6c 696e 6573 2069 7320 6465 6669 6e65  _lines is define
│ │ │ +001cf3e0: 640a 2020 2d20 2864 6576 6963 655f 6e61  d.  - (device_na
│ │ │ +001cf3f0: 6d65 2e73 7464 6f75 7420 7c20 6c65 6e67  me.stdout | leng
│ │ │ +001cf400: 7468 2026 6774 3b20 3029 0a20 2074 6167  th > 0).  tag
│ │ │ +001cf410: 733a 0a20 202d 204e 4953 542d 3830 302d  s:.  - NIST-800-
│ │ │ +001cf420: 3533 2d41 432d 360a 2020 2d20 4e49 5354  53-AC-6.  - NIST
│ │ │ +001cf430: 2d38 3030 2d35 332d 4143 2d36 2831 290a  -800-53-AC-6(1).
│ │ │ +001cf440: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001cf450: 434d 2d36 2861 290a 2020 2d20 4e49 5354  CM-6(a).  - NIST
│ │ │ +001cf460: 2d38 3030 2d35 332d 434d 2d37 2861 290a  -800-53-CM-7(a).
│ │ │ +001cf470: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001cf480: 434d 2d37 2862 290a 2020 2d20 4e49 5354  CM-7(b).  - NIST
│ │ │ +001cf490: 2d38 3030 2d35 332d 4d50 2d37 0a20 202d  -800-53-MP-7.  -
│ │ │ +001cf4a0: 2063 6f6e 6669 6775 7265 5f73 7472 6174   configure_strat
│ │ │ +001cf4b0: 6567 790a 2020 2d20 6869 6768 5f64 6973  egy.  - high_dis
│ │ │ +001cf4c0: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f  ruption.  - low_
│ │ │ +001cf4d0: 636f 6d70 6c65 7869 7479 0a20 202d 206d  complexity.  - m
│ │ │ +001cf4e0: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ +001cf4f0: 202d 206d 6f75 6e74 5f6f 7074 696f 6e5f   - mount_option_
│ │ │ +001cf500: 7661 725f 6c6f 675f 6175 6469 745f 6e6f  var_log_audit_no
│ │ │ +001cf510: 7375 6964 0a20 202d 206e 6f5f 7265 626f  suid.  - no_rebo
│ │ │ +001cf520: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d  ot_needed..- nam
│ │ │ +001cf530: 653a 2027 4164 6420 6e6f 7375 6964 204f  e: 'Add nosuid O
│ │ │ +001cf540: 7074 696f 6e20 746f 202f 7661 722f 6c6f  ption to /var/lo
│ │ │ +001cf550: 672f 6175 6469 743a 2049 6620 2f76 6172  g/audit: If /var
│ │ │ +001cf560: 2f6c 6f67 2f61 7564 6974 206e 6f74 206d  /log/audit not m
│ │ │ +001cf570: 6f75 6e74 6564 2c20 6372 6166 740a 2020  ounted, craft.  
│ │ │ +001cf580: 2020 6d6f 756e 745f 696e 666f 206d 616e    mount_info man
│ │ │ +001cf590: 7561 6c6c 7927 0a20 2073 6574 5f66 6163  ually'.  set_fac
│ │ │ +001cf5a0: 743a 0a20 2020 206d 6f75 6e74 5f69 6e66  t:.    mount_inf
│ │ │ +001cf5b0: 6f3a 2027 7b7b 206d 6f75 6e74 5f69 6e66  o: '{{ mount_inf
│ │ │ +001cf5c0: 6f7c 6465 6661 756c 7428 7b7d 297c 636f  o|default({})|co
│ │ │ +001cf5d0: 6d62 696e 6528 7b69 7465 6d2e 303a 2069  mbine({item.0: i
│ │ │ +001cf5e0: 7465 6d2e 317d 2920 7d7d 270a 2020 7769  tem.1}) }}'.  wi
│ │ │ +001cf5f0: 7468 5f74 6f67 6574 6865 723a 0a20 202d  th_together:.  -
│ │ │ +001cf600: 202d 2074 6172 6765 740a 2020 2020 2d20   - target.    - 
│ │ │ +001cf610: 736f 7572 6365 0a20 2020 202d 2066 7374  source.    - fst
│ │ │ +001cf620: 7970 650a 2020 2020 2d20 6f70 7469 6f6e  ype.    - option
│ │ │ +001cf630: 730a 2020 2d20 2d20 2f76 6172 2f6c 6f67  s.  - - /var/log
│ │ │ +001cf640: 2f61 7564 6974 0a20 2020 202d 2027 270a  /audit.    - ''.
│ │ │ +001cf650: 2020 2020 2d20 2727 0a20 2020 202d 2064      - ''.    - d
│ │ │ +001cf660: 6566 6175 6c74 730a 2020 7768 656e 3a0a  efaults.  when:.
│ │ │ +001cf670: 2020 2d20 2820 6e6f 7420 2820 226b 6572    - ( not ( "ker
│ │ │ +001cf680: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ +001cf690: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ +001cf6a0: 6e64 2022 626f 6f74 6322 2069 6e20 616e  nd "bootc" in an
│ │ │ +001cf6b0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001cf6c0: 6167 6573 0a20 2020 2061 6e64 206e 6f74  ages.    and not
│ │ │ +001cf6d0: 2022 6f70 656e 7368 6966 742d 6b75 6265   "openshift-kube
│ │ │ +001cf6e0: 6c65 7422 2069 6e20 616e 7369 626c 655f  let" in ansible_
│ │ │ +001cf6f0: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ +001cf700: 6e64 2022 6f73 7472 6565 2220 696e 2061  nd "ostree" in a
│ │ │ +001cf710: 6e73 6962 6c65 5f70 726f 635f 636d 646c  nsible_proc_cmdl
│ │ │ +001cf720: 696e 650a 2020 2020 2920 616e 6420 6e6f  ine.    ) and no
│ │ │ +001cf730: 7420 2820 616e 7369 626c 655f 7669 7274  t ( ansible_virt
│ │ │ +001cf740: 7561 6c69 7a61 7469 6f6e 5f74 7970 6520  ualization_type 
│ │ │ +001cf750: 696e 205b 2264 6f63 6b65 7222 2c20 226c  in ["docker", "l
│ │ │ +001cf760: 7863 222c 2022 6f70 656e 767a 222c 2022  xc", "openvz", "
│ │ │ +001cf770: 706f 646d 616e 222c 0a20 2020 2022 636f  podman",.    "co
│ │ │ +001cf780: 6e74 6169 6e65 7222 5d20 2920 290a 2020  ntainer"] ) ).  
│ │ │ +001cf790: 2d20 2722 2f76 6172 2f6c 6f67 2f61 7564  - '"/var/log/aud
│ │ │ +001cf7a0: 6974 2220 696e 2061 6e73 6962 6c65 5f6d  it" in ansible_m
│ │ │ +001cf7b0: 6f75 6e74 7320 7c20 6d61 7028 6174 7472  ounts | map(attr
│ │ │ +001cf7c0: 6962 7574 653d 226d 6f75 6e74 2229 207c  ibute="mount") |
│ │ │ +001cf7d0: 206c 6973 7427 0a20 202d 2028 222d 2d66   list'.  - ("--f
│ │ │ +001cf7e0: 7374 6162 2220 7c20 6c65 6e67 7468 203d  stab" | length =
│ │ │ +001cf7f0: 3d20 3029 0a20 202d 2064 6576 6963 655f  = 0).  - device_
│ │ │ +001cf800: 6e61 6d65 2e73 7464 6f75 7420 6973 2064  name.stdout is d
│ │ │ +001cf810: 6566 696e 6564 2061 6e64 2064 6576 6963  efined and devic
│ │ │ +001cf820: 655f 6e61 6d65 2e73 7464 6f75 745f 6c69  e_name.stdout_li
│ │ │ +001cf830: 6e65 7320 6973 2064 6566 696e 6564 0a20  nes is defined. 
│ │ │ +001cf840: 202d 2028 6465 7669 6365 5f6e 616d 652e   - (device_name.
│ │ │ +001cf850: 7374 646f 7574 207c 206c 656e 6774 6820  stdout | length 
│ │ │ +001cf860: 3d3d 2030 290a 2020 7461 6773 3a0a 2020  == 0).  tags:.  
│ │ │ +001cf870: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ +001cf880: 2d36 0a20 202d 204e 4953 542d 3830 302d  -6.  - NIST-800-
│ │ │ +001cf890: 3533 2d41 432d 3628 3129 0a20 202d 204e  53-AC-6(1).  - N
│ │ │ +001cf8a0: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ +001cf8b0: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ +001cf8c0: 3533 2d43 4d2d 3728 6129 0a20 202d 204e  53-CM-7(a).  - N
│ │ │ +001cf8d0: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ +001cf8e0: 6229 0a20 202d 204e 4953 542d 3830 302d  b).  - NIST-800-
│ │ │ +001cf8f0: 3533 2d4d 502d 370a 2020 2d20 636f 6e66  53-MP-7.  - conf
│ │ │ +001cf900: 6967 7572 655f 7374 7261 7465 6779 0a20  igure_strategy. 
│ │ │ +001cf910: 202d 2068 6967 685f 6469 7372 7570 7469   - high_disrupti
│ │ │ +001cf920: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c  on.  - low_compl
│ │ │ +001cf930: 6578 6974 790a 2020 2d20 6d65 6469 756d  exity.  - medium
│ │ │ +001cf940: 5f73 6576 6572 6974 790a 2020 2d20 6d6f  _severity.  - mo
│ │ │ +001cf950: 756e 745f 6f70 7469 6f6e 5f76 6172 5f6c  unt_option_var_l
│ │ │ +001cf960: 6f67 5f61 7564 6974 5f6e 6f73 7569 640a  og_audit_nosuid.
│ │ │ +001cf970: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ +001cf980: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741  eded..- name: 'A
│ │ │ +001cf990: 6464 206e 6f73 7569 6420 4f70 7469 6f6e  dd nosuid Option
│ │ │ +001cf9a0: 2074 6f20 2f76 6172 2f6c 6f67 2f61 7564   to /var/log/aud
│ │ │ +001cf9b0: 6974 3a20 4d61 6b65 2073 7572 6520 6e6f  it: Make sure no
│ │ │ +001cf9c0: 7375 6964 206f 7074 696f 6e20 6973 2070  suid option is p
│ │ │ +001cf9d0: 6172 7420 6f66 2074 6865 0a20 2020 2074  art of the.    t
│ │ │ +001cf9e0: 6f20 2f76 6172 2f6c 6f67 2f61 7564 6974  o /var/log/audit
│ │ │ +001cf9f0: 206f 7074 696f 6e73 270a 2020 7365 745f   options'.  set_
│ │ │ +001cfa00: 6661 6374 3a0a 2020 2020 6d6f 756e 745f  fact:.    mount_
│ │ │ +001cfa10: 696e 666f 3a20 277b 7b20 6d6f 756e 745f  info: '{{ mount_
│ │ │ +001cfa20: 696e 666f 207c 2063 6f6d 6269 6e65 2820  info | combine( 
│ │ │ +001cfa30: 7b27 276f 7074 696f 6e73 2727 3a27 2727  {''options'':'''
│ │ │ +001cfa40: 277e 286d 6f75 6e74 5f69 6e66 6f2e 6f70  '~(mount_info.op
│ │ │ +001cfa50: 7469 6f6e 7320 7c0a 2020 2020 2020 6465  tions |.      de
│ │ │ +001cfa60: 6661 756c 7428 2727 2727 2929 7e28 2727  fault(''''))~(''
│ │ │ +001cfa70: 2c27 2720 6966 2028 6d6f 756e 745f 696e  ,'' if (mount_in
│ │ │ +001cfa80: 666f 2e6f 7074 696f 6e73 207c 2064 6566  fo.options | def
│ │ │ +001cfa90: 6175 6c74 2827 2727 2729 2920 656c 7365  ault('''')) else
│ │ │ +001cfaa0: 2027 2727 2729 7e27 276e 6f73 7569 6427   '''')~''nosuid'
│ │ │ +001cfab0: 270a 2020 2020 2020 7d29 207d 7d27 0a20  '.      }) }}'. 
│ │ │ +001cfac0: 2077 6865 6e3a 0a20 202d 2028 206e 6f74   when:.  - ( not
│ │ │ +001cfad0: 2028 2022 6b65 726e 656c 2220 696e 2061   ( "kernel" in a
│ │ │ +001cfae0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +001cfaf0: 6b61 6765 7320 616e 6420 2262 6f6f 7463  kages and "bootc
│ │ │ +001cfb00: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +001cfb10: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ +001cfb20: 616e 6420 6e6f 7420 226f 7065 6e73 6869  and not "openshi
│ │ │ +001cfb30: 6674 2d6b 7562 656c 6574 2220 696e 2061  ft-kubelet" in a
│ │ │ +001cfb40: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +001cfb50: 6b61 6765 7320 616e 6420 226f 7374 7265  kages and "ostre
│ │ │ +001cfb60: 6522 2069 6e20 616e 7369 626c 655f 7072  e" in ansible_pr
│ │ │ +001cfb70: 6f63 5f63 6d64 6c69 6e65 0a20 2020 2029  oc_cmdline.    )
│ │ │ +001cfb80: 2061 6e64 206e 6f74 2028 2061 6e73 6962   and not ( ansib
│ │ │ +001cfb90: 6c65 5f76 6972 7475 616c 697a 6174 696f  le_virtualizatio
│ │ │ +001cfba0: 6e5f 7479 7065 2069 6e20 5b22 646f 636b  n_type in ["dock
│ │ │ +001cfbb0: 6572 222c 2022 6c78 6322 2c20 226f 7065  er", "lxc", "ope
│ │ │ +001cfbc0: 6e76 7a22 2c20 2270 6f64 6d61 6e22 2c0a  nvz", "podman",.
│ │ │ +001cfbd0: 2020 2020 2263 6f6e 7461 696e 6572 225d      "container"]
│ │ │ +001cfbe0: 2029 2029 0a20 202d 2027 222f 7661 722f   ) ).  - '"/var/
│ │ │ +001cfbf0: 6c6f 672f 6175 6469 7422 2069 6e20 616e  log/audit" in an
│ │ │ +001cfc00: 7369 626c 655f 6d6f 756e 7473 207c 206d  sible_mounts | m
│ │ │ +001cfc10: 6170 2861 7474 7269 6275 7465 3d22 6d6f  ap(attribute="mo
│ │ │ +001cfc20: 756e 7422 2920 7c20 6c69 7374 270a 2020  unt") | list'.  
│ │ │ +001cfc30: 2d20 6d6f 756e 745f 696e 666f 2069 7320  - mount_info is 
│ │ │ +001cfc40: 6465 6669 6e65 6420 616e 6420 226e 6f73  defined and "nos
│ │ │ +001cfc50: 7569 6422 206e 6f74 2069 6e20 286d 6f75  uid" not in (mou
│ │ │ +001cfc60: 6e74 5f69 6e66 6f2e 6f70 7469 6f6e 7320  nt_info.options 
│ │ │ +001cfc70: 7c20 6465 6661 756c 7428 2727 2929 0a20  | default('')). 
│ │ │ +001cfc80: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ +001cfc90: 3830 302d 3533 2d41 432d 360a 2020 2d20  800-53-AC-6.  - 
│ │ │ +001cfca0: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ +001cfcb0: 2831 290a 2020 2d20 4e49 5354 2d38 3030  (1).  - NIST-800
│ │ │ +001cfcc0: 2d35 332d 434d 2d36 2861 290a 2020 2d20  -53-CM-6(a).  - 
│ │ │ +001cfcd0: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ +001cfce0: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ +001cfcf0: 2d35 332d 434d 2d37 2862 290a 2020 2d20  -53-CM-7(b).  - 
│ │ │ +001cfd00: 4e49 5354 2d38 3030 2d35 332d 4d50 2d37  NIST-800-53-MP-7
│ │ │ +001cfd10: 0a20 202d 2063 6f6e 6669 6775 7265 5f73  .  - configure_s
│ │ │ +001cfd20: 7472 6174 6567 790a 2020 2d20 6869 6768  trategy.  - high
│ │ │ +001cfd30: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +001cfd40: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ +001cfd50: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ +001cfd60: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074  ty.  - mount_opt
│ │ │ +001cfd70: 696f 6e5f 7661 725f 6c6f 675f 6175 6469  ion_var_log_audi
│ │ │ +001cfd80: 745f 6e6f 7375 6964 0a20 202d 206e 6f5f  t_nosuid.  - no_
│ │ │ +001cfd90: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ +001cfda0: 206e 616d 653a 2027 4164 6420 6e6f 7375   name: 'Add nosu
│ │ │ +001cfdb0: 6964 204f 7074 696f 6e20 746f 202f 7661  id Option to /va
│ │ │ +001cfdc0: 722f 6c6f 672f 6175 6469 743a 2045 6e73  r/log/audit: Ens
│ │ │ +001cfdd0: 7572 6520 2f76 6172 2f6c 6f67 2f61 7564  ure /var/log/aud
│ │ │ +001cfde0: 6974 2069 7320 6d6f 756e 7465 6420 7769  it is mounted wi
│ │ │ +001cfdf0: 7468 0a20 2020 206e 6f73 7569 6420 6f70  th.    nosuid op
│ │ │ +001cfe00: 7469 6f6e 270a 2020 616e 7369 626c 652e  tion'.  ansible.
│ │ │ +001cfe10: 706f 7369 782e 6d6f 756e 743a 0a20 2020  posix.mount:.   
│ │ │ +001cfe20: 2070 6174 683a 202f 7661 722f 6c6f 672f   path: /var/log/
│ │ │ +001cfe30: 6175 6469 740a 2020 2020 7372 633a 2027  audit.    src: '
│ │ │ +001cfe40: 7b7b 206d 6f75 6e74 5f69 6e66 6f2e 736f  {{ mount_info.so
│ │ │ +001cfe50: 7572 6365 207c 2064 6566 6175 6c74 2827  urce | default('
│ │ │ +001cfe60: 2727 2729 207d 7d27 0a20 2020 206f 7074  ''') }}'.    opt
│ │ │ +001cfe70: 733a 2027 7b7b 206d 6f75 6e74 5f69 6e66  s: '{{ mount_inf
│ │ │ +001cfe80: 6f2e 6f70 7469 6f6e 7320 7c20 6465 6661  o.options | defa
│ │ │ +001cfe90: 756c 7428 2727 2727 2920 7d7d 270a 2020  ult('''') }}'.  
│ │ │ +001cfea0: 2020 7374 6174 653a 206d 6f75 6e74 6564    state: mounted
│ │ │ +001cfeb0: 0a20 2020 2066 7374 7970 653a 2027 7b7b  .    fstype: '{{
│ │ │ +001cfec0: 206d 6f75 6e74 5f69 6e66 6f2e 6673 7479   mount_info.fsty
│ │ │ +001cfed0: 7065 207c 2064 6566 6175 6c74 2827 2727  pe | default('''
│ │ │ +001cfee0: 2729 207d 7d27 0a20 2072 6567 6973 7465  ') }}'.  registe
│ │ │ +001cfef0: 723a 206d 6f75 6e74 5f72 6573 756c 740a  r: mount_result.
│ │ │ +001cff00: 2020 6661 696c 6564 5f77 6865 6e3a 0a20    failed_when:. 
│ │ │ +001cff10: 202d 206d 6f75 6e74 5f72 6573 756c 7420   - mount_result 
│ │ │ +001cff20: 6973 2066 6169 6c65 640a 2020 2d20 2727  is failed.  - ''
│ │ │ +001cff30: 2774 6172 6765 7420 6973 2062 7573 7927  'target is busy'
│ │ │ +001cff40: 2720 6e6f 7420 696e 2028 6d6f 756e 745f  ' not in (mount_
│ │ │ +001cff50: 7265 7375 6c74 2e6d 7367 207c 2064 6566  result.msg | def
│ │ │ +001cff60: 6175 6c74 2827 2727 2729 2927 0a20 202d  ault(''''))'.  -
│ │ │ +001cff70: 2027 2727 616c 7265 6164 7920 6d6f 756e   '''already moun
│ │ │ +001cff80: 7465 6427 2720 6e6f 7420 696e 2028 6d6f  ted'' not in (mo
│ │ │ +001cff90: 756e 745f 7265 7375 6c74 2e6d 7367 207c  unt_result.msg |
│ │ │ +001cffa0: 2064 6566 6175 6c74 2827 2727 2729 2927   default(''''))'
│ │ │ +001cffb0: 0a20 2077 6865 6e3a 0a20 202d 2028 206e  .  when:.  - ( n
│ │ │ +001cffc0: 6f74 2028 2022 6b65 726e 656c 2220 696e  ot ( "kernel" in
│ │ │ +001cffd0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001cffe0: 6163 6b61 6765 7320 616e 6420 2262 6f6f  ackages and "boo
│ │ │ +001cfff0: 7463 2220 696e 2061 6e73 6962 6c65 5f66  tc" in ansible_f
│ │ │ +001d0000: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ +001d0010: 2020 616e 6420 6e6f 7420 226f 7065 6e73    and not "opens
│ │ │ +001d0020: 6869 6674 2d6b 7562 656c 6574 2220 696e  hift-kubelet" in
│ │ │ +001d0030: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001d0040: 6163 6b61 6765 7320 616e 6420 226f 7374  ackages and "ost
│ │ │ +001d0050: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ +001d0060: 7072 6f63 5f63 6d64 6c69 6e65 0a20 2020  proc_cmdline.   
│ │ │ +001d0070: 2029 2061 6e64 206e 6f74 2028 2061 6e73   ) and not ( ans
│ │ │ +001d0080: 6962 6c65 5f76 6972 7475 616c 697a 6174  ible_virtualizat
│ │ │ +001d0090: 696f 6e5f 7479 7065 2069 6e20 5b22 646f  ion_type in ["do
│ │ │ +001d00a0: 636b 6572 222c 2022 6c78 6322 2c20 226f  cker", "lxc", "o
│ │ │ +001d00b0: 7065 6e76 7a22 2c20 2270 6f64 6d61 6e22  penvz", "podman"
│ │ │ +001d00c0: 2c0a 2020 2020 2263 6f6e 7461 696e 6572  ,.    "container
│ │ │ +001d00d0: 225d 2029 2029 0a20 202d 2027 222f 7661  "] ) ).  - '"/va
│ │ │ +001d00e0: 722f 6c6f 672f 6175 6469 7422 2069 6e20  r/log/audit" in 
│ │ │ +001d00f0: 616e 7369 626c 655f 6d6f 756e 7473 207c  ansible_mounts |
│ │ │ +001d0100: 206d 6170 2861 7474 7269 6275 7465 3d22   map(attribute="
│ │ │ +001d0110: 6d6f 756e 7422 2920 7c20 6c69 7374 270a  mount") | list'.
│ │ │ +001d0120: 2020 2d20 6d6f 756e 745f 696e 666f 2069    - mount_info i
│ │ │ +001d0130: 7320 6465 6669 6e65 640a 2020 2d20 2864  s defined.  - (d
│ │ │ +001d0140: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ +001d0150: 7420 6973 2064 6566 696e 6564 2061 6e64  t is defined and
│ │ │ +001d0160: 2028 6465 7669 6365 5f6e 616d 652e 7374   (device_name.st
│ │ │ +001d0170: 646f 7574 207c 206c 656e 6774 6820 2667  dout | length &g
│ │ │ +001d0180: 743b 2030 2929 206f 7220 2822 2d2d 6673  t; 0)) or ("--fs
│ │ │ +001d0190: 7461 6222 0a20 2020 207c 206c 656e 6774  tab".    | lengt
│ │ │ +001d01a0: 6820 3d3d 2030 290a 2020 7461 6773 3a0a  h == 0).  tags:.
│ │ │ +001d01b0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001d01c0: 4143 2d36 0a20 202d 204e 4953 542d 3830  AC-6.  - NIST-80
│ │ │ +001d01d0: 302d 3533 2d41 432d 3628 3129 0a20 202d  0-53-AC-6(1).  -
│ │ │ +001d01e0: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +001d01f0: 3628 6129 0a20 202d 204e 4953 542d 3830  6(a).  - NIST-80
│ │ │ +001d0200: 302d 3533 2d43 4d2d 3728 6129 0a20 202d  0-53-CM-7(a).  -
│ │ │ +001d0210: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +001d0220: 3728 6229 0a20 202d 204e 4953 542d 3830  7(b).  - NIST-80
│ │ │ +001d0230: 302d 3533 2d4d 502d 370a 2020 2d20 636f  0-53-MP-7.  - co
│ │ │ +001d0240: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ +001d0250: 0a20 202d 2068 6967 685f 6469 7372 7570  .  - high_disrup
│ │ │ +001d0260: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d  tion.  - low_com
│ │ │ +001d0270: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ +001d0280: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ +001d0290: 6d6f 756e 745f 6f70 7469 6f6e 5f76 6172  mount_option_var
│ │ │ +001d02a0: 5f6c 6f67 5f61 7564 6974 5f6e 6f73 7569  _log_audit_nosui
│ │ │ +001d02b0: 640a 2020 2d20 6e6f 5f72 6562 6f6f 745f  d.  - no_reboot_
│ │ │ +001d02c0: 6e65 6564 6564 0a3c 2f63 6f64 653e 3c2f  needed.Remediati
│ │ │ +001d0380: 6f6e 2053 6865 6c6c 2073 6372 6970 7420  on Shell script 
│ │ │ +001d0390: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620  ...
< │ │ │ +001d0430: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
Com │ │ │ +001ceb50: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ +001ceb80: 3a3c 2f74 683e 3c74 643e 6869 6768 3c2f :high
│ │ │ +001ceba0: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +001cebb0: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +001cebd0: 3c2f 7468 3e3c 7464 3e63 6f6e 6669 6775 configu │ │ │ +001cebe0: 7265 3c2f 7464 3e3c 2f74 723e 3c2f 7461 re
Reboot:false
# Remedia
│ │ │ +001d0450: 7469 6f6e 2069 7320 6170 706c 6963 6162  tion is applicab
│ │ │ +001d0460: 6c65 206f 6e6c 7920 696e 2063 6572 7461  le only in certa
│ │ │ +001d0470: 696e 2070 6c61 7466 6f72 6d73 0a69 6620  in platforms.if 
│ │ │ +001d0480: 2820 2120 2820 7b20 7270 6d20 2d2d 7175  ( ! ( { rpm --qu
│ │ │ +001d0490: 6965 7420 2d71 206b 6572 6e65 6c20 3b7d  iet -q kernel ;}
│ │ │ +001d04a0: 2026 616d 703b 2661 6d70 3b20 7b20 7270   && { rp
│ │ │ +001d04b0: 6d20 2d2d 7175 6965 7420 2d71 2062 6f6f  m --quiet -q boo
│ │ │ +001d04c0: 7463 203b 7d20 2661 6d70 3b26 616d 703b  tc ;} &&
│ │ │ +001d04d0: 207b 2021 2072 706d 202d 2d71 7569 6574   { ! rpm --quiet
│ │ │ +001d04e0: 202d 7120 6f70 656e 7368 6966 742d 6b75   -q openshift-ku
│ │ │ +001d04f0: 6265 6c65 7420 3b7d 2026 616d 703b 2661  belet ;} &&a
│ │ │ +001d0500: 6d70 3b20 285b 202d 6620 2f72 756e 2f6f  mp; ([ -f /run/o
│ │ │ +001d0510: 7374 7265 652d 626f 6f74 6564 205d 207c  stree-booted ] |
│ │ │ +001d0520: 7c20 5b20 2d4c 202f 6f73 7472 6565 205d  | [ -L /ostree ]
│ │ │ +001d0530: 2920 2920 2661 6d70 3b26 616d 703b 2021  ) ) && !
│ │ │ +001d0540: 2028 205b 202d 6620 2f2e 646f 636b 6572   ( [ -f /.docker
│ │ │ +001d0550: 656e 7620 5d20 7c7c 205b 202d 6620 2f72  env ] || [ -f /r
│ │ │ +001d0560: 756e 2f2e 636f 6e74 6169 6e65 7265 6e76  un/.containerenv
│ │ │ +001d0570: 205d 2029 2029 2026 616d 703b 2661 6d70   ] ) ) &&
│ │ │ +001d0580: 3b20 7b20 2820 6669 6e64 6d6e 7420 2d2d  ; { ( findmnt --
│ │ │ +001d0590: 6b65 726e 656c 2022 2f76 6172 2f6c 6f67  kernel "/var/log
│ │ │ +001d05a0: 2f61 7564 6974 2220 2667 743b 202f 6465  /audit" > /de
│ │ │ +001d05b0: 762f 6e75 6c6c 207c 7c20 6669 6e64 6d6e  v/null || findmn
│ │ │ +001d05c0: 7420 2d2d 6673 7461 6220 222f 7661 722f  t --fstab "/var/
│ │ │ +001d05d0: 6c6f 672f 6175 6469 7422 2026 6774 3b20  log/audit" > 
│ │ │ +001d05e0: 2f64 6576 2f6e 756c 6c20 293b 207d 3b20  /dev/null ); }; 
│ │ │ +001d05f0: 7468 656e 0a0a 6675 6e63 7469 6f6e 2070  then..function p
│ │ │ +001d0600: 6572 666f 726d 5f72 656d 6564 6961 7469  erform_remediati
│ │ │ +001d0610: 6f6e 207b 0a0a 2020 2020 0a20 2020 2020  on {..    .     
│ │ │ +001d0620: 2020 2023 2074 6865 206d 6f75 6e74 2070     # the mount p
│ │ │ +001d0630: 6f69 6e74 202f 7661 722f 6c6f 672f 6175  oint /var/log/au
│ │ │ +001d0640: 6469 7420 6861 7320 746f 2062 6520 6465  dit has to be de
│ │ │ +001d0650: 6669 6e65 6420 696e 202f 6574 632f 6673  fined in /etc/fs
│ │ │ +001d0660: 7461 620a 2020 2020 2020 2020 2320 6265  tab.        # be
│ │ │ +001d0670: 666f 7265 2074 6869 7320 7265 6d65 6469  fore this remedi
│ │ │ +001d0680: 6174 696f 6e20 6361 6e20 6265 2065 7865  ation can be exe
│ │ │ +001d0690: 6375 7465 642e 2049 6e20 6361 7365 2069  cuted. In case i
│ │ │ +001d06a0: 7420 6973 206e 6f74 2064 6566 696e 6564  t is not defined
│ │ │ +001d06b0: 2c20 7468 650a 2020 2020 2020 2020 2320  , the.        # 
│ │ │ +001d06c0: 7265 6d65 6469 6174 696f 6e20 6162 6f72  remediation abor
│ │ │ +001d06d0: 7473 2061 6e64 206e 6f20 6368 616e 6765  ts and no change
│ │ │ +001d06e0: 7320 7265 6761 7264 696e 6720 7468 6520  s regarding the 
│ │ │ +001d06f0: 6d6f 756e 7420 706f 696e 7420 6172 6520  mount point are 
│ │ │ +001d0700: 646f 6e65 2e0a 2020 2020 2020 2020 6d6f  done..        mo
│ │ │ +001d0710: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ +001d0720: 7265 6765 7870 3d22 2428 7072 696e 7466  regexp="$(printf
│ │ │ +001d0730: 2022 5e5b 5b3a 7370 6163 653a 5d5d 2a5b   "^[[:space:]]*[
│ │ │ +001d0740: 5e23 5d2e 2a5b 5b3a 7370 6163 653a 5d5d  ^#].*[[:space:]]
│ │ │ +001d0750: 2573 5b5b 3a73 7061 6365 3a5d 5d22 2022  %s[[:space:]]" "
│ │ │ +001d0760: 2f76 6172 2f6c 6f67 2f61 7564 6974 2229  /var/log/audit")
│ │ │ +001d0770: 220a 0a20 2020 2067 7265 7020 2224 6d6f  "..    grep "$mo
│ │ │ +001d0780: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ +001d0790: 7265 6765 7870 2220 2d71 202f 6574 632f  regexp" -q /etc/
│ │ │ +001d07a0: 6673 7461 6220 5c0a 2020 2020 2020 2020  fstab \.        
│ │ │ +001d07b0: 7c7c 207b 2065 6368 6f20 2254 6865 206d  || { echo "The m
│ │ │ +001d07c0: 6f75 6e74 2070 6f69 6e74 2027 2f76 6172  ount point '/var
│ │ │ +001d07d0: 2f6c 6f67 2f61 7564 6974 2720 6973 206e  /log/audit' is n
│ │ │ +001d07e0: 6f74 2065 7665 6e20 696e 202f 6574 632f  ot even in /etc/
│ │ │ +001d07f0: 6673 7461 622c 2073 6f20 7765 2063 616e  fstab, so we can
│ │ │ +001d0800: 2774 2073 6574 2075 7020 6d6f 756e 7420  't set up mount 
│ │ │ +001d0810: 6f70 7469 6f6e 7322 2026 6774 3b26 616d  options" >&am
│ │ │ +001d0820: 703b 323b 0a20 2020 2020 2020 2020 2020  p;2;.           
│ │ │ +001d0830: 2020 2020 2065 6368 6f20 224e 6f74 2072       echo "Not r
│ │ │ +001d0840: 656d 6564 6961 7469 6e67 2c20 6265 6361  emediating, beca
│ │ │ +001d0850: 7573 6520 7468 6572 6520 6973 206e 6f20  use there is no 
│ │ │ +001d0860: 7265 636f 7264 206f 6620 2f76 6172 2f6c  record of /var/l
│ │ │ +001d0870: 6f67 2f61 7564 6974 2069 6e20 2f65 7463  og/audit in /etc
│ │ │ +001d0880: 2f66 7374 6162 2220 2667 743b 2661 6d70  /fstab" >&
│ │ │ +001d0890: 3b32 3b20 7265 7475 726e 2031 3b20 7d0a  ;2; return 1; }.
│ │ │ +001d08a0: 2020 2020 0a0a 0a20 2020 206d 6f75 6e74      ...    mount
│ │ │ +001d08b0: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ +001d08c0: 6578 703d 2224 2870 7269 6e74 6620 225e  exp="$(printf "^
│ │ │ +001d08d0: 5b5b 3a73 7061 6365 3a5d 5d2a 5b5e 235d  [[:space:]]*[^#]
│ │ │ +001d08e0: 2e2a 5b5b 3a73 7061 6365 3a5d 5d25 735b  .*[[:space:]]%s[
│ │ │ +001d08f0: 5b3a 7370 6163 653a 5d5d 2220 2f76 6172  [:space:]]" /var
│ │ │ +001d0900: 2f6c 6f67 2f61 7564 6974 2922 0a0a 2020  /log/audit)"..  
│ │ │ +001d0910: 2020 2320 4966 2074 6865 206d 6f75 6e74    # If the mount
│ │ │ +001d0920: 2070 6f69 6e74 2069 7320 6e6f 7420 696e   point is not in
│ │ │ +001d0930: 202f 6574 632f 6673 7461 622c 2067 6574   /etc/fstab, get
│ │ │ +001d0940: 2070 7265 7669 6f75 7320 6d6f 756e 7420   previous mount 
│ │ │ +001d0950: 6f70 7469 6f6e 7320 6672 6f6d 202f 6574  options from /et
│ │ │ +001d0960: 632f 6d74 6162 0a20 2020 2069 6620 2120  c/mtab.    if ! 
│ │ │ +001d0970: 6772 6570 202d 7120 2224 6d6f 756e 745f  grep -q "$mount_
│ │ │ +001d0980: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ +001d0990: 7870 2220 2f65 7463 2f66 7374 6162 3b20  xp" /etc/fstab; 
│ │ │ +001d09a0: 7468 656e 0a20 2020 2020 2020 2023 2072  then.        # r
│ │ │ +001d09b0: 756e 7469 6d65 206f 7074 7320 7769 7468  untime opts with
│ │ │ +001d09c0: 6f75 7420 736f 6d65 2061 7574 6f6d 6174  out some automat
│ │ │ +001d09d0: 6963 206b 6572 6e65 6c2f 7573 6572 7370  ic kernel/usersp
│ │ │ +001d09e0: 6163 652d 6164 6465 6420 6465 6661 756c  ace-added defaul
│ │ │ +001d09f0: 7473 0a20 2020 2020 2020 2070 7265 7669  ts.        previ
│ │ │ +001d0a00: 6f75 735f 6d6f 756e 745f 6f70 7473 3d24  ous_mount_opts=$
│ │ │ +001d0a10: 2867 7265 7020 2224 6d6f 756e 745f 706f  (grep "$mount_po
│ │ │ +001d0a20: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ +001d0a30: 2220 2f65 7463 2f6d 7461 6220 7c20 6865  " /etc/mtab | he
│ │ │ +001d0a40: 6164 202d 3120 7c20 2061 776b 2027 7b70  ad -1 |  awk '{p
│ │ │ +001d0a50: 7269 6e74 2024 347d 2720 5c0a 2020 2020  rint $4}' \.    
│ │ │ +001d0a60: 2020 2020 2020 2020 2020 2020 2020 2020                  
│ │ │ +001d0a70: 7c20 7365 6420 2d45 2022 732f 2872 777c  | sed -E "s/(rw|
│ │ │ +001d0a80: 6465 6661 756c 7473 7c73 6563 6c61 6265  defaults|seclabe
│ │ │ +001d0a90: 6c7c 6e6f 7375 6964 2928 2c7c 2429 2f2f  l|nosuid)(,|$)//
│ │ │ +001d0aa0: 673b 732f 2c24 2f2f 2229 0a20 2020 2020  g;s/,$//").     
│ │ │ +001d0ab0: 2020 205b 2022 2470 7265 7669 6f75 735f     [ "$previous_
│ │ │ +001d0ac0: 6d6f 756e 745f 6f70 7473 2220 5d20 2661  mount_opts" ] &a
│ │ │ +001d0ad0: 6d70 3b26 616d 703b 2070 7265 7669 6f75  mp;& previou
│ │ │ +001d0ae0: 735f 6d6f 756e 745f 6f70 7473 2b3d 222c  s_mount_opts+=",
│ │ │ +001d0af0: 220a 2020 2020 2020 2020 2320 496e 2069  ".        # In i
│ │ │ +001d0b00: 736f 3936 3630 2066 696c 6573 7973 7465  so9660 filesyste
│ │ │ +001d0b10: 6d73 206d 7461 6220 636f 756c 6420 6465  ms mtab could de
│ │ │ +001d0b20: 7363 7269 6265 2061 2022 626c 6f63 6b73  scribe a "blocks
│ │ │ +001d0b30: 697a 6522 2076 616c 7565 2c20 7468 6973  ize" value, this
│ │ │ +001d0b40: 2073 686f 756c 6420 6265 2072 6566 6c65   should be refle
│ │ │ +001d0b50: 6374 6564 2069 6e0a 2020 2020 2020 2020  cted in.        
│ │ │ +001d0b60: 2320 6673 7461 6220 6173 2022 626c 6f63  # fstab as "bloc
│ │ │ +001d0b70: 6b22 2e20 2054 6865 206e 6578 7420 7661  k".  The next va
│ │ │ +001d0b80: 7269 6162 6c65 2069 7320 746f 2073 6174  riable is to sat
│ │ │ +001d0b90: 6973 6679 2073 6865 6c6c 6368 6563 6b20  isfy shellcheck 
│ │ │ +001d0ba0: 5343 3230 3530 2e0a 2020 2020 2020 2020  SC2050..        
│ │ │ +001d0bb0: 6673 5f74 7970 653d 2222 0a20 2020 2020  fs_type="".     
│ │ │ +001d0bc0: 2020 2069 6620 5b20 2022 2466 735f 7479     if [  "$fs_ty
│ │ │ +001d0bd0: 7065 2220 3d3d 2022 6973 6f39 3636 3022  pe" == "iso9660"
│ │ │ +001d0be0: 205d 203b 2074 6865 6e0a 2020 2020 2020   ] ; then.      
│ │ │ +001d0bf0: 2020 2020 2020 7072 6576 696f 7573 5f6d        previous_m
│ │ │ +001d0c00: 6f75 6e74 5f6f 7074 733d 2428 7365 6420  ount_opts=$(sed 
│ │ │ +001d0c10: 2773 2f62 6c6f 636b 7369 7a65 3d2f 626c  's/blocksize=/bl
│ │ │ +001d0c20: 6f63 6b3d 2f27 2026 6c74 3b26 6c74 3b26  ock=/' <<&
│ │ │ +001d0c30: 6c74 3b20 2224 7072 6576 696f 7573 5f6d  lt; "$previous_m
│ │ │ +001d0c40: 6f75 6e74 5f6f 7074 7322 290a 2020 2020  ount_opts").    
│ │ │ +001d0c50: 2020 2020 6669 0a20 2020 2020 2020 2065      fi.        e
│ │ │ +001d0c60: 6368 6f20 2220 2f76 6172 2f6c 6f67 2f61  cho " /var/log/a
│ │ │ +001d0c70: 7564 6974 2020 6465 6661 756c 7473 2c24  udit  defaults,$
│ │ │ +001d0c80: 7b70 7265 7669 6f75 735f 6d6f 756e 745f  {previous_mount_
│ │ │ +001d0c90: 6f70 7473 7d6e 6f73 7569 6420 3020 3022  opts}nosuid 0 0"
│ │ │ +001d0ca0: 2026 6774 3b26 6774 3b20 2f65 7463 2f66   >> /etc/f
│ │ │ +001d0cb0: 7374 6162 0a20 2020 2023 2049 6620 7468  stab.    # If th
│ │ │ +001d0cc0: 6520 6d6f 756e 745f 6f70 7420 6f70 7469  e mount_opt opti
│ │ │ +001d0cd0: 6f6e 2069 7320 6e6f 7420 616c 7265 6164  on is not alread
│ │ │ +001d0ce0: 7920 696e 2074 6865 206d 6f75 6e74 2070  y in the mount p
│ │ │ +001d0cf0: 6f69 6e74 2773 202f 6574 632f 6673 7461  oint's /etc/fsta
│ │ │ +001d0d00: 6220 656e 7472 792c 2061 6464 2069 740a  b entry, add it.
│ │ │ +001d0d10: 2020 2020 656c 6966 2021 2067 7265 7020      elif ! grep 
│ │ │ +001d0d20: 2224 6d6f 756e 745f 706f 696e 745f 6d61  "$mount_point_ma
│ │ │ +001d0d30: 7463 685f 7265 6765 7870 2220 2f65 7463  tch_regexp" /etc
│ │ │ +001d0d40: 2f66 7374 6162 207c 2067 7265 7020 2d71  /fstab | grep -q
│ │ │ +001d0d50: 2022 6e6f 7375 6964 223b 2074 6865 6e0a   "nosuid"; then.
│ │ │ +001d0d60: 2020 2020 2020 2020 7072 6576 696f 7573          previous
│ │ │ +001d0d70: 5f6d 6f75 6e74 5f6f 7074 733d 2428 6772  _mount_opts=$(gr
│ │ │ +001d0d80: 6570 2022 246d 6f75 6e74 5f70 6f69 6e74  ep "$mount_point
│ │ │ +001d0d90: 5f6d 6174 6368 5f72 6567 6578 7022 202f  _match_regexp" /
│ │ │ +001d0da0: 6574 632f 6673 7461 6220 7c20 6177 6b20  etc/fstab | awk 
│ │ │ +001d0db0: 277b 7072 696e 7420 2434 7d27 290a 2020  '{print $4}').  
│ │ │ +001d0dc0: 2020 2020 2020 7365 6420 2d69 2022 737c        sed -i "s|
│ │ │ +001d0dd0: 5c28 247b 6d6f 756e 745f 706f 696e 745f  \(${mount_point_
│ │ │ +001d0de0: 6d61 7463 685f 7265 6765 7870 7d2e 2a24  match_regexp}.*$
│ │ │ +001d0df0: 7b70 7265 7669 6f75 735f 6d6f 756e 745f  {previous_mount_
│ │ │ +001d0e00: 6f70 7473 7d5c 297c 5c31 2c6e 6f73 7569  opts}\)|\1,nosui
│ │ │ +001d0e10: 647c 2220 2f65 7463 2f66 7374 6162 0a20  d|" /etc/fstab. 
│ │ │ +001d0e20: 2020 2066 690a 0a0a 2020 2020 6966 206d     fi...    if m
│ │ │ +001d0e30: 6b64 6972 202d 7020 222f 7661 722f 6c6f  kdir -p "/var/lo
│ │ │ +001d0e40: 672f 6175 6469 7422 3b20 7468 656e 0a20  g/audit"; then. 
│ │ │ +001d0e50: 2020 2020 2020 2069 6620 6d6f 756e 7470         if mountp
│ │ │ +001d0e60: 6f69 6e74 202d 7120 222f 7661 722f 6c6f  oint -q "/var/lo
│ │ │ +001d0e70: 672f 6175 6469 7422 3b20 7468 656e 0a20  g/audit"; then. 
│ │ │ +001d0e80: 2020 2020 2020 2020 2020 206d 6f75 6e74             mount
│ │ │ +001d0e90: 202d 6f20 7265 6d6f 756e 7420 2d2d 7461   -o remount --ta
│ │ │ +001d0ea0: 7267 6574 2022 2f76 6172 2f6c 6f67 2f61  rget "/var/log/a
│ │ │ +001d0eb0: 7564 6974 220a 2020 2020 2020 2020 6669  udit".        fi
│ │ │ +001d0ec0: 0a20 2020 2066 690a 7d0a 0a70 6572 666f  .    fi.}..perfo
│ │ │ +001d0ed0: 726d 5f72 656d 6564 6961 7469 6f6e 0a0a  rm_remediation..
│ │ │ +001d0ee0: 656c 7365 0a20 2020 2026 6774 3b26 616d  else.    >&am
│ │ │ +001d0ef0: 703b 3220 6563 686f 2027 5265 6d65 6469  p;2 echo 'Remedi
│ │ │ +001d0f00: 6174 696f 6e20 6973 206e 6f74 2061 7070  ation is not app
│ │ │ +001d0f10: 6c69 6361 626c 652c 206e 6f74 6869 6e67  licable, nothing
│ │ │ +001d0f20: 2077 6173 2064 6f6e 6527 0a66 690a 3c2f   was done'.fi.
Re │ │ │ +001d0fe0: 6d65 6469 6174 696f 6e20 416e 6163 6f6e mediation Anacon │ │ │ +001d0ff0: 6461 2073 6e69 7070 6574 20e2 87b2 3c2f da snippet ...
│ │ │ +001d1090: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 < │ │ │ +001d10d0: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +001d10e0: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
.
│ │ │ +001d1130: 7061 7274 202f 7661 722f 6c6f 672f 6175  part /var/log/au
│ │ │ +001d1140: 6469 7420 2d2d 6d6f 756e 746f 7074 696f  dit --mountoptio
│ │ │ +001d1150: 6e73 3d22 6e6f 7375 6964 220a 3c2f 636f  ns="nosuid".
< │ │ │ 001d1170: 2f64 6976 3e3c 2f74 643e 3c2f 7472 3e3c /div>< │ │ │ 001d1180: 2f74 626f 6479 3e3c 2f74 6162 6c65 3e3c /tbody>
│ │ │ +001d1080: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +001d10b0: 696f 6e3a 3c2f 7468 3e3c 7464 3e68 6967 ion:hig │ │ │ +001d10c0: 683c 2f74 643e 3c2f 7472 3e3c 7472 3e3c h
Strate │ │ │ +001d1100: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ +001d1110: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
< │ │ │ 001d1190: 2f74 643e 3c2f 7472 3e3c 7472 2064 6174 /td>Remediation An │ │ │ -001d1d80: 6163 6f6e 6461 2073 6e69 7070 6574 20e2 aconda snippet . │ │ │ -001d1d90: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..

│ │ │ -001d1e10: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -001d1e30: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 < │ │ │ -001d1e60: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr> │ │ │ -001d1eb0: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ -001d1e20: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ -001d1e40: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:high
Reboot:false
St │ │ │ -001d1e90: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ -001d1ea0: 656e 6162 6c65 3c2f 7464 3e3c 2f74 723e enable
.part /var/lo
│ │ │ -001d1ed0: 6720 2d2d 6d6f 756e 746f 7074 696f 6e73  g --mountoptions
│ │ │ -001d1ee0: 3d22 6e6f 6465 7622 0a3c 2f63 6f64 653e  ="nodev".
│ │ │ -001d1ef0: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ -001d1fa0: 7469 6f6e 2041 6e73 6962 6c65 2073 6e69 tion Ansible sni │ │ │ -001d1fb0: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -001d1fc0: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -001d1ff0: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ -001d2060: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption: │ │ │ -001d2080: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ -001d20b0: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Comple │ │ │ -001d2040: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ -001d2050: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
high
Reb │ │ │ -001d2090: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -001d20a0: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:configure< │ │ │ -001d20d0: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
- na
│ │ │ -001d20f0: 6d65 3a20 4761 7468 6572 2074 6865 2070  me: Gather the p
│ │ │ -001d2100: 6163 6b61 6765 2066 6163 7473 0a20 2070  ackage facts.  p
│ │ │ -001d2110: 6163 6b61 6765 5f66 6163 7473 3a0a 2020  ackage_facts:.  
│ │ │ -001d2120: 2020 6d61 6e61 6765 723a 2061 7574 6f0a    manager: auto.
│ │ │ -001d2130: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ -001d2140: 2d38 3030 2d35 332d 4143 2d36 0a20 202d  -800-53-AC-6.  -
│ │ │ -001d2150: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ -001d2160: 3628 3129 0a20 202d 204e 4953 542d 3830  6(1).  - NIST-80
│ │ │ -001d2170: 302d 3533 2d43 4d2d 3628 6129 0a20 202d  0-53-CM-6(a).  -
│ │ │ -001d2180: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -001d2190: 3728 6129 0a20 202d 204e 4953 542d 3830  7(a).  - NIST-80
│ │ │ -001d21a0: 302d 3533 2d43 4d2d 3728 6229 0a20 202d  0-53-CM-7(b).  -
│ │ │ -001d21b0: 204e 4953 542d 3830 302d 3533 2d4d 502d   NIST-800-53-MP-
│ │ │ -001d21c0: 370a 2020 2d20 636f 6e66 6967 7572 655f  7.  - configure_
│ │ │ -001d21d0: 7374 7261 7465 6779 0a20 202d 2068 6967  strategy.  - hig
│ │ │ -001d21e0: 685f 6469 7372 7570 7469 6f6e 0a20 202d  h_disruption.  -
│ │ │ -001d21f0: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ -001d2200: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ -001d2210: 6974 790a 2020 2d20 6d6f 756e 745f 6f70  ity.  - mount_op
│ │ │ -001d2220: 7469 6f6e 5f76 6172 5f6c 6f67 5f6e 6f64  tion_var_log_nod
│ │ │ -001d2230: 6576 0a20 202d 206e 6f5f 7265 626f 6f74  ev.  - no_reboot
│ │ │ -001d2240: 5f6e 6565 6465 640a 0a2d 206e 616d 653a  _needed..- name:
│ │ │ -001d2250: 2027 4164 6420 6e6f 6465 7620 4f70 7469   'Add nodev Opti
│ │ │ -001d2260: 6f6e 2074 6f20 2f76 6172 2f6c 6f67 3a20  on to /var/log: 
│ │ │ -001d2270: 4368 6563 6b20 696e 666f 726d 6174 696f  Check informatio
│ │ │ -001d2280: 6e20 6173 736f 6369 6174 6564 2074 6f20  n associated to 
│ │ │ -001d2290: 6d6f 756e 7470 6f69 6e74 270a 2020 616e  mountpoint'.  an
│ │ │ -001d22a0: 7369 626c 652e 6275 696c 7469 6e2e 636f  sible.builtin.co
│ │ │ -001d22b0: 6d6d 616e 643a 2066 696e 646d 6e74 202d  mmand: findmnt -
│ │ │ -001d22c0: 2d66 7374 6162 2027 2f76 6172 2f6c 6f67  -fstab '/var/log
│ │ │ -001d22d0: 270a 2020 7265 6769 7374 6572 3a20 6465  '.  register: de
│ │ │ -001d22e0: 7669 6365 5f6e 616d 650a 2020 6661 696c  vice_name.  fail
│ │ │ -001d22f0: 6564 5f77 6865 6e3a 2064 6576 6963 655f  ed_when: device_
│ │ │ -001d2300: 6e61 6d65 2e72 6320 2667 743b 2031 0a20  name.rc > 1. 
│ │ │ -001d2310: 2063 6861 6e67 6564 5f77 6865 6e3a 2066   changed_when: f
│ │ │ -001d2320: 616c 7365 0a20 2063 6865 636b 5f6d 6f64  alse.  check_mod
│ │ │ -001d2330: 653a 2066 616c 7365 0a20 2077 6865 6e3a  e: false.  when:
│ │ │ -001d2340: 0a20 202d 2028 206e 6f74 2028 2022 6b65  .  - ( not ( "ke
│ │ │ -001d2350: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ -001d2360: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ -001d2370: 616e 6420 2262 6f6f 7463 2220 696e 2061  and "bootc" in a
│ │ │ -001d2380: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001d2390: 6b61 6765 730a 2020 2020 616e 6420 6e6f  kages.    and no
│ │ │ -001d23a0: 7420 226f 7065 6e73 6869 6674 2d6b 7562  t "openshift-kub
│ │ │ -001d23b0: 656c 6574 2220 696e 2061 6e73 6962 6c65  elet" in ansible
│ │ │ -001d23c0: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ -001d23d0: 616e 6420 226f 7374 7265 6522 2069 6e20  and "ostree" in 
│ │ │ -001d23e0: 616e 7369 626c 655f 7072 6f63 5f63 6d64  ansible_proc_cmd
│ │ │ -001d23f0: 6c69 6e65 0a20 2020 2029 2061 6e64 206e  line.    ) and n
│ │ │ -001d2400: 6f74 2028 2061 6e73 6962 6c65 5f76 6972  ot ( ansible_vir
│ │ │ -001d2410: 7475 616c 697a 6174 696f 6e5f 7479 7065  tualization_type
│ │ │ -001d2420: 2069 6e20 5b22 646f 636b 6572 222c 2022   in ["docker", "
│ │ │ -001d2430: 6c78 6322 2c20 226f 7065 6e76 7a22 2c20  lxc", "openvz", 
│ │ │ -001d2440: 2270 6f64 6d61 6e22 2c0a 2020 2020 2263  "podman",.    "c
│ │ │ -001d2450: 6f6e 7461 696e 6572 225d 2029 2029 0a20  ontainer"] ) ). 
│ │ │ -001d2460: 202d 2027 222f 7661 722f 6c6f 6722 2069   - '"/var/log" i
│ │ │ -001d2470: 6e20 616e 7369 626c 655f 6d6f 756e 7473  n ansible_mounts
│ │ │ -001d2480: 207c 206d 6170 2861 7474 7269 6275 7465   | map(attribute
│ │ │ -001d2490: 3d22 6d6f 756e 7422 2920 7c20 6c69 7374  ="mount") | list
│ │ │ -001d24a0: 270a 2020 7461 6773 3a0a 2020 2d20 4e49  '.  tags:.  - NI
│ │ │ -001d24b0: 5354 2d38 3030 2d35 332d 4143 2d36 0a20  ST-800-53-AC-6. 
│ │ │ -001d24c0: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ -001d24d0: 432d 3628 3129 0a20 202d 204e 4953 542d  C-6(1).  - NIST-
│ │ │ -001d24e0: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ -001d24f0: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -001d2500: 4d2d 3728 6129 0a20 202d 204e 4953 542d  M-7(a).  - NIST-
│ │ │ -001d2510: 3830 302d 3533 2d43 4d2d 3728 6229 0a20  800-53-CM-7(b). 
│ │ │ -001d2520: 202d 204e 4953 542d 3830 302d 3533 2d4d   - NIST-800-53-M
│ │ │ -001d2530: 502d 370a 2020 2d20 636f 6e66 6967 7572  P-7.  - configur
│ │ │ -001d2540: 655f 7374 7261 7465 6779 0a20 202d 2068  e_strategy.  - h
│ │ │ -001d2550: 6967 685f 6469 7372 7570 7469 6f6e 0a20  igh_disruption. 
│ │ │ -001d2560: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ -001d2570: 790a 2020 2d20 6d65 6469 756d 5f73 6576  y.  - medium_sev
│ │ │ -001d2580: 6572 6974 790a 2020 2d20 6d6f 756e 745f  erity.  - mount_
│ │ │ -001d2590: 6f70 7469 6f6e 5f76 6172 5f6c 6f67 5f6e  option_var_log_n
│ │ │ -001d25a0: 6f64 6576 0a20 202d 206e 6f5f 7265 626f  odev.  - no_rebo
│ │ │ -001d25b0: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d  ot_needed..- nam
│ │ │ -001d25c0: 653a 2027 4164 6420 6e6f 6465 7620 4f70  e: 'Add nodev Op
│ │ │ -001d25d0: 7469 6f6e 2074 6f20 2f76 6172 2f6c 6f67  tion to /var/log
│ │ │ -001d25e0: 3a20 4372 6561 7465 206d 6f75 6e74 5f69  : Create mount_i
│ │ │ -001d25f0: 6e66 6f20 6469 6374 696f 6e61 7279 2076  nfo dictionary v
│ │ │ -001d2600: 6172 6961 626c 6527 0a20 2073 6574 5f66  ariable'.  set_f
│ │ │ -001d2610: 6163 743a 0a20 2020 206d 6f75 6e74 5f69  act:.    mount_i
│ │ │ -001d2620: 6e66 6f3a 2027 7b7b 206d 6f75 6e74 5f69  nfo: '{{ mount_i
│ │ │ -001d2630: 6e66 6f7c 6465 6661 756c 7428 7b7d 297c  nfo|default({})|
│ │ │ -001d2640: 636f 6d62 696e 6528 7b69 7465 6d2e 303a  combine({item.0:
│ │ │ -001d2650: 2069 7465 6d2e 317d 2920 7d7d 270a 2020   item.1}) }}'.  
│ │ │ -001d2660: 7769 7468 5f74 6f67 6574 6865 723a 0a20  with_together:. 
│ │ │ -001d2670: 202d 2027 7b7b 2064 6576 6963 655f 6e61   - '{{ device_na
│ │ │ -001d2680: 6d65 2e73 7464 6f75 745f 6c69 6e65 735b  me.stdout_lines[
│ │ │ -001d2690: 305d 2e73 706c 6974 2829 207c 206d 6170  0].split() | map
│ │ │ -001d26a0: 2827 276c 6f77 6572 2727 2920 7c20 6c69  (''lower'') | li
│ │ │ -001d26b0: 7374 207d 7d27 0a20 202d 2027 7b7b 2064  st }}'.  - '{{ d
│ │ │ -001d26c0: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ -001d26d0: 745f 6c69 6e65 735b 315d 2e73 706c 6974  t_lines[1].split
│ │ │ -001d26e0: 2829 207c 206c 6973 7420 7d7d 270a 2020  () | list }}'.  
│ │ │ -001d26f0: 7768 656e 3a0a 2020 2d20 2820 6e6f 7420  when:.  - ( not 
│ │ │ -001d2700: 2820 226b 6572 6e65 6c22 2069 6e20 616e  ( "kernel" in an
│ │ │ -001d2710: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001d2720: 6167 6573 2061 6e64 2022 626f 6f74 6322  ages and "bootc"
│ │ │ -001d2730: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001d2740: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ -001d2750: 6e64 206e 6f74 2022 6f70 656e 7368 6966  nd not "openshif
│ │ │ -001d2760: 742d 6b75 6265 6c65 7422 2069 6e20 616e  t-kubelet" in an
│ │ │ -001d2770: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001d2780: 6167 6573 2061 6e64 2022 6f73 7472 6565  ages and "ostree
│ │ │ -001d2790: 2220 696e 2061 6e73 6962 6c65 5f70 726f  " in ansible_pro
│ │ │ -001d27a0: 635f 636d 646c 696e 650a 2020 2020 2920  c_cmdline.    ) 
│ │ │ -001d27b0: 616e 6420 6e6f 7420 2820 616e 7369 626c  and not ( ansibl
│ │ │ -001d27c0: 655f 7669 7274 7561 6c69 7a61 7469 6f6e  e_virtualization
│ │ │ -001d27d0: 5f74 7970 6520 696e 205b 2264 6f63 6b65  _type in ["docke
│ │ │ -001d27e0: 7222 2c20 226c 7863 222c 2022 6f70 656e  r", "lxc", "open
│ │ │ -001d27f0: 767a 222c 2022 706f 646d 616e 222c 0a20  vz", "podman",. 
│ │ │ -001d2800: 2020 2022 636f 6e74 6169 6e65 7222 5d20     "container"] 
│ │ │ -001d2810: 2920 290a 2020 2d20 2722 2f76 6172 2f6c  ) ).  - '"/var/l
│ │ │ -001d2820: 6f67 2220 696e 2061 6e73 6962 6c65 5f6d  og" in ansible_m
│ │ │ -001d2830: 6f75 6e74 7320 7c20 6d61 7028 6174 7472  ounts | map(attr
│ │ │ -001d2840: 6962 7574 653d 226d 6f75 6e74 2229 207c  ibute="mount") |
│ │ │ -001d2850: 206c 6973 7427 0a20 202d 2064 6576 6963   list'.  - devic
│ │ │ -001d2860: 655f 6e61 6d65 2e73 7464 6f75 7420 6973  e_name.stdout is
│ │ │ -001d2870: 2064 6566 696e 6564 2061 6e64 2064 6576   defined and dev
│ │ │ -001d2880: 6963 655f 6e61 6d65 2e73 7464 6f75 745f  ice_name.stdout_
│ │ │ -001d2890: 6c69 6e65 7320 6973 2064 6566 696e 6564  lines is defined
│ │ │ -001d28a0: 0a20 202d 2028 6465 7669 6365 5f6e 616d  .  - (device_nam
│ │ │ -001d28b0: 652e 7374 646f 7574 207c 206c 656e 6774  e.stdout | lengt
│ │ │ -001d28c0: 6820 2667 743b 2030 290a 2020 7461 6773  h > 0).  tags
│ │ │ -001d28d0: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ -001d28e0: 332d 4143 2d36 0a20 202d 204e 4953 542d  3-AC-6.  - NIST-
│ │ │ -001d28f0: 3830 302d 3533 2d41 432d 3628 3129 0a20  800-53-AC-6(1). 
│ │ │ -001d2900: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -001d2910: 4d2d 3628 6129 0a20 202d 204e 4953 542d  M-6(a).  - NIST-
│ │ │ -001d2920: 3830 302d 3533 2d43 4d2d 3728 6129 0a20  800-53-CM-7(a). 
│ │ │ -001d2930: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -001d2940: 4d2d 3728 6229 0a20 202d 204e 4953 542d  M-7(b).  - NIST-
│ │ │ -001d2950: 3830 302d 3533 2d4d 502d 370a 2020 2d20  800-53-MP-7.  - 
│ │ │ -001d2960: 636f 6e66 6967 7572 655f 7374 7261 7465  configure_strate
│ │ │ -001d2970: 6779 0a20 202d 2068 6967 685f 6469 7372  gy.  - high_disr
│ │ │ -001d2980: 7570 7469 6f6e 0a20 202d 206c 6f77 5f63  uption.  - low_c
│ │ │ -001d2990: 6f6d 706c 6578 6974 790a 2020 2d20 6d65  omplexity.  - me
│ │ │ -001d29a0: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ -001d29b0: 2d20 6d6f 756e 745f 6f70 7469 6f6e 5f76  - mount_option_v
│ │ │ -001d29c0: 6172 5f6c 6f67 5f6e 6f64 6576 0a20 202d  ar_log_nodev.  -
│ │ │ -001d29d0: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ -001d29e0: 640a 0a2d 206e 616d 653a 2027 4164 6420  d..- name: 'Add 
│ │ │ -001d29f0: 6e6f 6465 7620 4f70 7469 6f6e 2074 6f20  nodev Option to 
│ │ │ -001d2a00: 2f76 6172 2f6c 6f67 3a20 4966 202f 7661  /var/log: If /va
│ │ │ -001d2a10: 722f 6c6f 6720 6e6f 7420 6d6f 756e 7465  r/log not mounte
│ │ │ -001d2a20: 642c 2063 7261 6674 206d 6f75 6e74 5f69  d, craft mount_i
│ │ │ -001d2a30: 6e66 6f20 6d61 6e75 616c 6c79 270a 2020  nfo manually'.  
│ │ │ -001d2a40: 7365 745f 6661 6374 3a0a 2020 2020 6d6f  set_fact:.    mo
│ │ │ -001d2a50: 756e 745f 696e 666f 3a20 277b 7b20 6d6f  unt_info: '{{ mo
│ │ │ -001d2a60: 756e 745f 696e 666f 7c64 6566 6175 6c74  unt_info|default
│ │ │ -001d2a70: 287b 7d29 7c63 6f6d 6269 6e65 287b 6974  ({})|combine({it
│ │ │ -001d2a80: 656d 2e30 3a20 6974 656d 2e31 7d29 207d  em.0: item.1}) }
│ │ │ -001d2a90: 7d27 0a20 2077 6974 685f 746f 6765 7468  }'.  with_togeth
│ │ │ -001d2aa0: 6572 3a0a 2020 2d20 2d20 7461 7267 6574  er:.  - - target
│ │ │ -001d2ab0: 0a20 2020 202d 2073 6f75 7263 650a 2020  .    - source.  
│ │ │ -001d2ac0: 2020 2d20 6673 7479 7065 0a20 2020 202d    - fstype.    -
│ │ │ -001d2ad0: 206f 7074 696f 6e73 0a20 202d 202d 202f   options.  - - /
│ │ │ -001d2ae0: 7661 722f 6c6f 670a 2020 2020 2d20 2727  var/log.    - ''
│ │ │ -001d2af0: 0a20 2020 202d 2027 270a 2020 2020 2d20  .    - ''.    - 
│ │ │ -001d2b00: 6465 6661 756c 7473 0a20 2077 6865 6e3a  defaults.  when:
│ │ │ -001d2b10: 0a20 202d 2028 206e 6f74 2028 2022 6b65  .  - ( not ( "ke
│ │ │ -001d2b20: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ -001d2b30: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ -001d2b40: 616e 6420 2262 6f6f 7463 2220 696e 2061  and "bootc" in a
│ │ │ -001d2b50: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001d2b60: 6b61 6765 730a 2020 2020 616e 6420 6e6f  kages.    and no
│ │ │ -001d2b70: 7420 226f 7065 6e73 6869 6674 2d6b 7562  t "openshift-kub
│ │ │ -001d2b80: 656c 6574 2220 696e 2061 6e73 6962 6c65  elet" in ansible
│ │ │ -001d2b90: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ -001d2ba0: 616e 6420 226f 7374 7265 6522 2069 6e20  and "ostree" in 
│ │ │ -001d2bb0: 616e 7369 626c 655f 7072 6f63 5f63 6d64  ansible_proc_cmd
│ │ │ -001d2bc0: 6c69 6e65 0a20 2020 2029 2061 6e64 206e  line.    ) and n
│ │ │ -001d2bd0: 6f74 2028 2061 6e73 6962 6c65 5f76 6972  ot ( ansible_vir
│ │ │ -001d2be0: 7475 616c 697a 6174 696f 6e5f 7479 7065  tualization_type
│ │ │ -001d2bf0: 2069 6e20 5b22 646f 636b 6572 222c 2022   in ["docker", "
│ │ │ -001d2c00: 6c78 6322 2c20 226f 7065 6e76 7a22 2c20  lxc", "openvz", 
│ │ │ -001d2c10: 2270 6f64 6d61 6e22 2c0a 2020 2020 2263  "podman",.    "c
│ │ │ -001d2c20: 6f6e 7461 696e 6572 225d 2029 2029 0a20  ontainer"] ) ). 
│ │ │ -001d2c30: 202d 2027 222f 7661 722f 6c6f 6722 2069   - '"/var/log" i
│ │ │ -001d2c40: 6e20 616e 7369 626c 655f 6d6f 756e 7473  n ansible_mounts
│ │ │ -001d2c50: 207c 206d 6170 2861 7474 7269 6275 7465   | map(attribute
│ │ │ -001d2c60: 3d22 6d6f 756e 7422 2920 7c20 6c69 7374  ="mount") | list
│ │ │ -001d2c70: 270a 2020 2d20 2822 2d2d 6673 7461 6222  '.  - ("--fstab"
│ │ │ -001d2c80: 207c 206c 656e 6774 6820 3d3d 2030 290a   | length == 0).
│ │ │ -001d2c90: 2020 2d20 6465 7669 6365 5f6e 616d 652e    - device_name.
│ │ │ -001d2ca0: 7374 646f 7574 2069 7320 6465 6669 6e65  stdout is define
│ │ │ -001d2cb0: 6420 616e 6420 6465 7669 6365 5f6e 616d  d and device_nam
│ │ │ -001d2cc0: 652e 7374 646f 7574 5f6c 696e 6573 2069  e.stdout_lines i
│ │ │ -001d2cd0: 7320 6465 6669 6e65 640a 2020 2d20 2864  s defined.  - (d
│ │ │ -001d2ce0: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ -001d2cf0: 7420 7c20 6c65 6e67 7468 203d 3d20 3029  t | length == 0)
│ │ │ -001d2d00: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ -001d2d10: 542d 3830 302d 3533 2d41 432d 360a 2020  T-800-53-AC-6.  
│ │ │ -001d2d20: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ -001d2d30: 2d36 2831 290a 2020 2d20 4e49 5354 2d38  -6(1).  - NIST-8
│ │ │ -001d2d40: 3030 2d35 332d 434d 2d36 2861 290a 2020  00-53-CM-6(a).  
│ │ │ -001d2d50: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -001d2d60: 2d37 2861 290a 2020 2d20 4e49 5354 2d38  -7(a).  - NIST-8
│ │ │ -001d2d70: 3030 2d35 332d 434d 2d37 2862 290a 2020  00-53-CM-7(b).  
│ │ │ -001d2d80: 2d20 4e49 5354 2d38 3030 2d35 332d 4d50  - NIST-800-53-MP
│ │ │ -001d2d90: 2d37 0a20 202d 2063 6f6e 6669 6775 7265  -7.  - configure
│ │ │ -001d2da0: 5f73 7472 6174 6567 790a 2020 2d20 6869  _strategy.  - hi
│ │ │ -001d2db0: 6768 5f64 6973 7275 7074 696f 6e0a 2020  gh_disruption.  
│ │ │ -001d2dc0: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ -001d2dd0: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ -001d2de0: 7269 7479 0a20 202d 206d 6f75 6e74 5f6f  rity.  - mount_o
│ │ │ -001d2df0: 7074 696f 6e5f 7661 725f 6c6f 675f 6e6f  ption_var_log_no
│ │ │ -001d2e00: 6465 760a 2020 2d20 6e6f 5f72 6562 6f6f  dev.  - no_reboo
│ │ │ -001d2e10: 745f 6e65 6564 6564 0a0a 2d20 6e61 6d65  t_needed..- name
│ │ │ -001d2e20: 3a20 2741 6464 206e 6f64 6576 204f 7074  : 'Add nodev Opt
│ │ │ -001d2e30: 696f 6e20 746f 202f 7661 722f 6c6f 673a  ion to /var/log:
│ │ │ -001d2e40: 204d 616b 6520 7375 7265 206e 6f64 6576   Make sure nodev
│ │ │ -001d2e50: 206f 7074 696f 6e20 6973 2070 6172 7420   option is part 
│ │ │ -001d2e60: 6f66 2074 6865 2074 6f20 2f76 6172 2f6c  of the to /var/l
│ │ │ -001d2e70: 6f67 0a20 2020 206f 7074 696f 6e73 270a  og.    options'.
│ │ │ -001d2e80: 2020 7365 745f 6661 6374 3a0a 2020 2020    set_fact:.    
│ │ │ -001d2e90: 6d6f 756e 745f 696e 666f 3a20 277b 7b20  mount_info: '{{ 
│ │ │ -001d2ea0: 6d6f 756e 745f 696e 666f 207c 2063 6f6d  mount_info | com
│ │ │ -001d2eb0: 6269 6e65 2820 7b27 276f 7074 696f 6e73  bine( {''options
│ │ │ -001d2ec0: 2727 3a27 2727 277e 286d 6f75 6e74 5f69  '':''''~(mount_i
│ │ │ -001d2ed0: 6e66 6f2e 6f70 7469 6f6e 7320 7c0a 2020  nfo.options |.  
│ │ │ -001d2ee0: 2020 2020 6465 6661 756c 7428 2727 2727      default(''''
│ │ │ -001d2ef0: 2929 7e28 2727 2c27 2720 6966 2028 6d6f  ))~('','' if (mo
│ │ │ -001d2f00: 756e 745f 696e 666f 2e6f 7074 696f 6e73  unt_info.options
│ │ │ -001d2f10: 207c 2064 6566 6175 6c74 2827 2727 2729   | default('''')
│ │ │ -001d2f20: 2920 656c 7365 2027 2727 2729 7e27 276e  ) else '''')~''n
│ │ │ -001d2f30: 6f64 6576 2727 0a20 2020 2020 207d 2920  odev''.      }) 
│ │ │ -001d2f40: 7d7d 270a 2020 7768 656e 3a0a 2020 2d20  }}'.  when:.  - 
│ │ │ -001d2f50: 2820 6e6f 7420 2820 226b 6572 6e65 6c22  ( not ( "kernel"
│ │ │ -001d2f60: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001d2f70: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ -001d2f80: 626f 6f74 6322 2069 6e20 616e 7369 626c  bootc" in ansibl
│ │ │ -001d2f90: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001d2fa0: 0a20 2020 2061 6e64 206e 6f74 2022 6f70  .    and not "op
│ │ │ -001d2fb0: 656e 7368 6966 742d 6b75 6265 6c65 7422  enshift-kubelet"
│ │ │ -001d2fc0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001d2fd0: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ -001d2fe0: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ -001d2ff0: 6c65 5f70 726f 635f 636d 646c 696e 650a  le_proc_cmdline.
│ │ │ -001d3000: 2020 2020 2920 616e 6420 6e6f 7420 2820      ) and not ( 
│ │ │ -001d3010: 616e 7369 626c 655f 7669 7274 7561 6c69  ansible_virtuali
│ │ │ -001d3020: 7a61 7469 6f6e 5f74 7970 6520 696e 205b  zation_type in [
│ │ │ -001d3030: 2264 6f63 6b65 7222 2c20 226c 7863 222c  "docker", "lxc",
│ │ │ -001d3040: 2022 6f70 656e 767a 222c 2022 706f 646d   "openvz", "podm
│ │ │ -001d3050: 616e 222c 0a20 2020 2022 636f 6e74 6169  an",.    "contai
│ │ │ -001d3060: 6e65 7222 5d20 2920 290a 2020 2d20 2722  ner"] ) ).  - '"
│ │ │ -001d3070: 2f76 6172 2f6c 6f67 2220 696e 2061 6e73  /var/log" in ans
│ │ │ -001d3080: 6962 6c65 5f6d 6f75 6e74 7320 7c20 6d61  ible_mounts | ma
│ │ │ -001d3090: 7028 6174 7472 6962 7574 653d 226d 6f75  p(attribute="mou
│ │ │ -001d30a0: 6e74 2229 207c 206c 6973 7427 0a20 202d  nt") | list'.  -
│ │ │ -001d30b0: 206d 6f75 6e74 5f69 6e66 6f20 6973 2064   mount_info is d
│ │ │ -001d30c0: 6566 696e 6564 2061 6e64 2022 6e6f 6465  efined and "node
│ │ │ -001d30d0: 7622 206e 6f74 2069 6e20 286d 6f75 6e74  v" not in (mount
│ │ │ -001d30e0: 5f69 6e66 6f2e 6f70 7469 6f6e 7320 7c20  _info.options | 
│ │ │ -001d30f0: 6465 6661 756c 7428 2727 2929 0a20 2074  default('')).  t
│ │ │ -001d3100: 6167 733a 0a20 202d 204e 4953 542d 3830  ags:.  - NIST-80
│ │ │ -001d3110: 302d 3533 2d41 432d 360a 2020 2d20 4e49  0-53-AC-6.  - NI
│ │ │ -001d3120: 5354 2d38 3030 2d35 332d 4143 2d36 2831  ST-800-53-AC-6(1
│ │ │ -001d3130: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -001d3140: 332d 434d 2d36 2861 290a 2020 2d20 4e49  3-CM-6(a).  - NI
│ │ │ -001d3150: 5354 2d38 3030 2d35 332d 434d 2d37 2861  ST-800-53-CM-7(a
│ │ │ -001d3160: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -001d3170: 332d 434d 2d37 2862 290a 2020 2d20 4e49  3-CM-7(b).  - NI
│ │ │ -001d3180: 5354 2d38 3030 2d35 332d 4d50 2d37 0a20  ST-800-53-MP-7. 
│ │ │ -001d3190: 202d 2063 6f6e 6669 6775 7265 5f73 7472   - configure_str
│ │ │ -001d31a0: 6174 6567 790a 2020 2d20 6869 6768 5f64  ategy.  - high_d
│ │ │ -001d31b0: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ -001d31c0: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ -001d31d0: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ -001d31e0: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f  .  - mount_optio
│ │ │ -001d31f0: 6e5f 7661 725f 6c6f 675f 6e6f 6465 760a  n_var_log_nodev.
│ │ │ -001d3200: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ -001d3210: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741  eded..- name: 'A
│ │ │ -001d3220: 6464 206e 6f64 6576 204f 7074 696f 6e20  dd nodev Option 
│ │ │ -001d3230: 746f 202f 7661 722f 6c6f 673a 2045 6e73  to /var/log: Ens
│ │ │ -001d3240: 7572 6520 2f76 6172 2f6c 6f67 2069 7320  ure /var/log is 
│ │ │ -001d3250: 6d6f 756e 7465 6420 7769 7468 206e 6f64  mounted with nod
│ │ │ -001d3260: 6576 206f 7074 696f 6e27 0a20 2061 6e73  ev option'.  ans
│ │ │ -001d3270: 6962 6c65 2e70 6f73 6978 2e6d 6f75 6e74  ible.posix.mount
│ │ │ -001d3280: 3a0a 2020 2020 7061 7468 3a20 2f76 6172  :.    path: /var
│ │ │ -001d3290: 2f6c 6f67 0a20 2020 2073 7263 3a20 277b  /log.    src: '{
│ │ │ -001d32a0: 7b20 6d6f 756e 745f 696e 666f 2e73 6f75  { mount_info.sou
│ │ │ -001d32b0: 7263 6520 7c20 6465 6661 756c 7428 2727  rce | default(''
│ │ │ -001d32c0: 2727 2920 7d7d 270a 2020 2020 6f70 7473  '') }}'.    opts
│ │ │ -001d32d0: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ -001d32e0: 2e6f 7074 696f 6e73 207c 2064 6566 6175  .options | defau
│ │ │ -001d32f0: 6c74 2827 2727 2729 207d 7d27 0a20 2020  lt('''') }}'.   
│ │ │ -001d3300: 2073 7461 7465 3a20 6d6f 756e 7465 640a   state: mounted.
│ │ │ -001d3310: 2020 2020 6673 7479 7065 3a20 277b 7b20      fstype: '{{ 
│ │ │ -001d3320: 6d6f 756e 745f 696e 666f 2e66 7374 7970  mount_info.fstyp
│ │ │ -001d3330: 6520 7c20 6465 6661 756c 7428 2727 2727  e | default(''''
│ │ │ -001d3340: 2920 7d7d 270a 2020 7265 6769 7374 6572  ) }}'.  register
│ │ │ -001d3350: 3a20 6d6f 756e 745f 7265 7375 6c74 0a20  : mount_result. 
│ │ │ -001d3360: 2066 6169 6c65 645f 7768 656e 3a0a 2020   failed_when:.  
│ │ │ -001d3370: 2d20 6d6f 756e 745f 7265 7375 6c74 2069  - mount_result i
│ │ │ -001d3380: 7320 6661 696c 6564 0a20 202d 2027 2727  s failed.  - '''
│ │ │ -001d3390: 7461 7267 6574 2069 7320 6275 7379 2727  target is busy''
│ │ │ -001d33a0: 206e 6f74 2069 6e20 286d 6f75 6e74 5f72   not in (mount_r
│ │ │ -001d33b0: 6573 756c 742e 6d73 6720 7c20 6465 6661  esult.msg | defa
│ │ │ -001d33c0: 756c 7428 2727 2727 2929 270a 2020 2d20  ult(''''))'.  - 
│ │ │ -001d33d0: 2727 2761 6c72 6561 6479 206d 6f75 6e74  '''already mount
│ │ │ -001d33e0: 6564 2727 206e 6f74 2069 6e20 286d 6f75  ed'' not in (mou
│ │ │ -001d33f0: 6e74 5f72 6573 756c 742e 6d73 6720 7c20  nt_result.msg | 
│ │ │ -001d3400: 6465 6661 756c 7428 2727 2727 2929 270a  default(''''))'.
│ │ │ -001d3410: 2020 7768 656e 3a0a 2020 2d20 2820 6e6f    when:.  - ( no
│ │ │ -001d3420: 7420 2820 226b 6572 6e65 6c22 2069 6e20  t ( "kernel" in 
│ │ │ -001d3430: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001d3440: 636b 6167 6573 2061 6e64 2022 626f 6f74  ckages and "boot
│ │ │ -001d3450: 6322 2069 6e20 616e 7369 626c 655f 6661  c" in ansible_fa
│ │ │ -001d3460: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ -001d3470: 2061 6e64 206e 6f74 2022 6f70 656e 7368   and not "opensh
│ │ │ -001d3480: 6966 742d 6b75 6265 6c65 7422 2069 6e20  ift-kubelet" in 
│ │ │ -001d3490: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001d34a0: 636b 6167 6573 2061 6e64 2022 6f73 7472  ckages and "ostr
│ │ │ -001d34b0: 6565 2220 696e 2061 6e73 6962 6c65 5f70  ee" in ansible_p
│ │ │ -001d34c0: 726f 635f 636d 646c 696e 650a 2020 2020  roc_cmdline.    
│ │ │ -001d34d0: 2920 616e 6420 6e6f 7420 2820 616e 7369  ) and not ( ansi
│ │ │ -001d34e0: 626c 655f 7669 7274 7561 6c69 7a61 7469  ble_virtualizati
│ │ │ -001d34f0: 6f6e 5f74 7970 6520 696e 205b 2264 6f63  on_type in ["doc
│ │ │ -001d3500: 6b65 7222 2c20 226c 7863 222c 2022 6f70  ker", "lxc", "op
│ │ │ -001d3510: 656e 767a 222c 2022 706f 646d 616e 222c  envz", "podman",
│ │ │ -001d3520: 0a20 2020 2022 636f 6e74 6169 6e65 7222  .    "container"
│ │ │ -001d3530: 5d20 2920 290a 2020 2d20 2722 2f76 6172  ] ) ).  - '"/var
│ │ │ -001d3540: 2f6c 6f67 2220 696e 2061 6e73 6962 6c65  /log" in ansible
│ │ │ -001d3550: 5f6d 6f75 6e74 7320 7c20 6d61 7028 6174  _mounts | map(at
│ │ │ -001d3560: 7472 6962 7574 653d 226d 6f75 6e74 2229  tribute="mount")
│ │ │ -001d3570: 207c 206c 6973 7427 0a20 202d 206d 6f75   | list'.  - mou
│ │ │ -001d3580: 6e74 5f69 6e66 6f20 6973 2064 6566 696e  nt_info is defin
│ │ │ -001d3590: 6564 0a20 202d 2028 6465 7669 6365 5f6e  ed.  - (device_n
│ │ │ -001d35a0: 616d 652e 7374 646f 7574 2069 7320 6465  ame.stdout is de
│ │ │ -001d35b0: 6669 6e65 6420 616e 6420 2864 6576 6963  fined and (devic
│ │ │ -001d35c0: 655f 6e61 6d65 2e73 7464 6f75 7420 7c20  e_name.stdout | 
│ │ │ -001d35d0: 6c65 6e67 7468 2026 6774 3b20 3029 2920  length > 0)) 
│ │ │ -001d35e0: 6f72 2028 222d 2d66 7374 6162 220a 2020  or ("--fstab".  
│ │ │ -001d35f0: 2020 7c20 6c65 6e67 7468 203d 3d20 3029    | length == 0)
│ │ │ -001d3600: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ -001d3610: 542d 3830 302d 3533 2d41 432d 360a 2020  T-800-53-AC-6.  
│ │ │ -001d3620: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ -001d3630: 2d36 2831 290a 2020 2d20 4e49 5354 2d38  -6(1).  - NIST-8
│ │ │ -001d3640: 3030 2d35 332d 434d 2d36 2861 290a 2020  00-53-CM-6(a).  
│ │ │ -001d3650: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -001d3660: 2d37 2861 290a 2020 2d20 4e49 5354 2d38  -7(a).  - NIST-8
│ │ │ -001d3670: 3030 2d35 332d 434d 2d37 2862 290a 2020  00-53-CM-7(b).  
│ │ │ -001d3680: 2d20 4e49 5354 2d38 3030 2d35 332d 4d50  - NIST-800-53-MP
│ │ │ -001d3690: 2d37 0a20 202d 2063 6f6e 6669 6775 7265  -7.  - configure
│ │ │ -001d36a0: 5f73 7472 6174 6567 790a 2020 2d20 6869  _strategy.  - hi
│ │ │ -001d36b0: 6768 5f64 6973 7275 7074 696f 6e0a 2020  gh_disruption.  
│ │ │ -001d36c0: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ -001d36d0: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ -001d36e0: 7269 7479 0a20 202d 206d 6f75 6e74 5f6f  rity.  - mount_o
│ │ │ -001d36f0: 7074 696f 6e5f 7661 725f 6c6f 675f 6e6f  ption_var_log_no
│ │ │ -001d3700: 6465 760a 2020 2d20 6e6f 5f72 6562 6f6f  dev.  - no_reboo
│ │ │ -001d3710: 745f 6e65 6564 6564 0a3c 2f63 6f64 653e  t_needed.
│ │ │ -001d3720: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ -001d37d0: 7469 6f6e 2053 6865 6c6c 2073 6372 6970 tion Shell scrip │ │ │ -001d37e0: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ -001d3860: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:false

# Remed │ │ │ -001d38a0: 6961 7469 6f6e 2069 7320 6170 706c 6963 iation is applic │ │ │ -001d38b0: 6162 6c65 206f 6e6c 7920 696e 2063 6572 able only in cer │ │ │ -001d38c0: 7461 696e 2070 6c61 7466 6f72 6d73 0a69 tain platforms.i │ │ │ -001d38d0: 6620 2820 2120 2820 7b20 7270 6d20 2d2d f ( ! ( { rpm -- │ │ │ -001d38e0: 7175 6965 7420 2d71 206b 6572 6e65 6c20 quiet -q kernel │ │ │ -001d38f0: 3b7d 2026 616d 703b 2661 6d70 3b20 7b20 ;} && { │ │ │ -001d3900: 7270 6d20 2d2d 7175 6965 7420 2d71 2062 rpm --quiet -q b │ │ │ -001d3910: 6f6f 7463 203b 7d20 2661 6d70 3b26 616d ootc ;} &&am │ │ │ -001d3920: 703b 207b 2021 2072 706d 202d 2d71 7569 p; { ! rpm --qui │ │ │ -001d3930: 6574 202d 7120 6f70 656e 7368 6966 742d et -q openshift- │ │ │ -001d3940: 6b75 6265 6c65 7420 3b7d 2026 616d 703b kubelet ;} & │ │ │ -001d3950: 2661 6d70 3b20 285b 202d 6620 2f72 756e & ([ -f /run │ │ │ -001d3960: 2f6f 7374 7265 652d 626f 6f74 6564 205d /ostree-booted ] │ │ │ -001d3970: 207c 7c20 5b20 2d4c 202f 6f73 7472 6565 || [ -L /ostree │ │ │ -001d3980: 205d 2920 2920 2661 6d70 3b26 616d 703b ]) ) && │ │ │ -001d3990: 2021 2028 205b 202d 6620 2f2e 646f 636b ! ( [ -f /.dock │ │ │ -001d39a0: 6572 656e 7620 5d20 7c7c 205b 202d 6620 erenv ] || [ -f │ │ │ -001d39b0: 2f72 756e 2f2e 636f 6e74 6169 6e65 7265 /run/.containere │ │ │ -001d39c0: 6e76 205d 2029 2029 2026 616d 703b 2661 nv ] ) ) &&a │ │ │ -001d39d0: 6d70 3b20 7b20 2820 6669 6e64 6d6e 7420 mp; { ( findmnt │ │ │ -001d39e0: 2d2d 6b65 726e 656c 2022 2f76 6172 2f6c --kernel "/var/l │ │ │ -001d39f0: 6f67 2220 2667 743b 202f 6465 762f 6e75 og" > /dev/nu │ │ │ -001d3a00: 6c6c 207c 7c20 6669 6e64 6d6e 7420 2d2d ll || findmnt -- │ │ │ -001d3a10: 6673 7461 6220 222f 7661 722f 6c6f 6722 fstab "/var/log" │ │ │ -001d3a20: 2026 6774 3b20 2f64 6576 2f6e 756c 6c20 > /dev/null │ │ │ -001d3a30: 293b 207d 3b20 7468 656e 0a0a 6675 6e63 ); }; then..func │ │ │ -001d3a40: 7469 6f6e 2070 6572 666f 726d 5f72 656d tion perform_rem │ │ │ -001d3a50: 6564 6961 7469 6f6e 207b 0a0a 2020 2020 ediation {.. │ │ │ -001d3a60: 0a20 2020 2020 2020 2023 2074 6865 206d . # the m │ │ │ -001d3a70: 6f75 6e74 2070 6f69 6e74 202f 7661 722f ount point /var/ │ │ │ -001d3a80: 6c6f 6720 6861 7320 746f 2062 6520 6465 log has to be de │ │ │ -001d3a90: 6669 6e65 6420 696e 202f 6574 632f 6673 fined in /etc/fs │ │ │ -001d3aa0: 7461 620a 2020 2020 2020 2020 2320 6265 tab. # be │ │ │ -001d3ab0: 666f 7265 2074 6869 7320 7265 6d65 6469 fore this remedi │ │ │ -001d3ac0: 6174 696f 6e20 6361 6e20 6265 2065 7865 ation can be exe │ │ │ -001d3ad0: 6375 7465 642e 2049 6e20 6361 7365 2069 cuted. In case i │ │ │ -001d3ae0: 7420 6973 206e 6f74 2064 6566 696e 6564 t is not defined │ │ │ -001d3af0: 2c20 7468 650a 2020 2020 2020 2020 2320 , the. # │ │ │ -001d3b00: 7265 6d65 6469 6174 696f 6e20 6162 6f72 remediation abor │ │ │ -001d3b10: 7473 2061 6e64 206e 6f20 6368 616e 6765 ts and no change │ │ │ -001d3b20: 7320 7265 6761 7264 696e 6720 7468 6520 s regarding the │ │ │ -001d3b30: 6d6f 756e 7420 706f 696e 7420 6172 6520 mount point are │ │ │ -001d3b40: 646f 6e65 2e0a 2020 2020 2020 2020 6d6f done.. mo │ │ │ -001d3b50: 756e 745f 706f 696e 745f 6d61 7463 685f unt_point_match_ │ │ │ -001d3b60: 7265 6765 7870 3d22 2428 7072 696e 7466 regexp="$(printf │ │ │ -001d3b70: 2022 5e5b 5b3a 7370 6163 653a 5d5d 2a5b "^[[:space:]]*[ │ │ │ -001d3b80: 5e23 5d2e 2a5b 5b3a 7370 6163 653a 5d5d ^#].*[[:space:]] │ │ │ -001d3b90: 2573 5b5b 3a73 7061 6365 3a5d 5d22 2022 %s[[:space:]]" " │ │ │ -001d3ba0: 2f76 6172 2f6c 6f67 2229 220a 0a20 2020 /var/log")".. │ │ │ -001d3bb0: 2067 7265 7020 2224 6d6f 756e 745f 706f grep "$mount_po │ │ │ -001d3bc0: 696e 745f 6d61 7463 685f 7265 6765 7870 int_match_regexp │ │ │ -001d3bd0: 2220 2d71 202f 6574 632f 6673 7461 6220 " -q /etc/fstab │ │ │ -001d3be0: 5c0a 2020 2020 2020 2020 7c7c 207b 2065 \. || { e │ │ │ -001d3bf0: 6368 6f20 2254 6865 206d 6f75 6e74 2070 cho "The mount p │ │ │ -001d3c00: 6f69 6e74 2027 2f76 6172 2f6c 6f67 2720 oint '/var/log' │ │ │ -001d3c10: 6973 206e 6f74 2065 7665 6e20 696e 202f is not even in / │ │ │ -001d3c20: 6574 632f 6673 7461 622c 2073 6f20 7765 etc/fstab, so we │ │ │ -001d3c30: 2063 616e 2774 2073 6574 2075 7020 6d6f can't set up mo │ │ │ -001d3c40: 756e 7420 6f70 7469 6f6e 7322 2026 6774 unt options" > │ │ │ -001d3c50: 3b26 616d 703b 323b 0a20 2020 2020 2020 ;&2;. │ │ │ -001d3c60: 2020 2020 2020 2020 2065 6368 6f20 224e echo "N │ │ │ -001d3c70: 6f74 2072 656d 6564 6961 7469 6e67 2c20 ot remediating, │ │ │ -001d3c80: 6265 6361 7573 6520 7468 6572 6520 6973 because there is │ │ │ -001d3c90: 206e 6f20 7265 636f 7264 206f 6620 2f76 no record of /v │ │ │ -001d3ca0: 6172 2f6c 6f67 2069 6e20 2f65 7463 2f66 ar/log in /etc/f │ │ │ -001d3cb0: 7374 6162 2220 2667 743b 2661 6d70 3b32 stab" >&2 │ │ │ -001d3cc0: 3b20 7265 7475 726e 2031 3b20 7d0a 2020 ; return 1; }. │ │ │ -001d3cd0: 2020 0a0a 0a20 2020 206d 6f75 6e74 5f70 ... mount_p │ │ │ -001d3ce0: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578 oint_match_regex │ │ │ -001d3cf0: 703d 2224 2870 7269 6e74 6620 225e 5b5b p="$(printf "^[[ │ │ │ -001d3d00: 3a73 7061 6365 3a5d 5d2a 5b5e 235d 2e2a :space:]]*[^#].* │ │ │ -001d3d10: 5b5b 3a73 7061 6365 3a5d 5d25 735b 5b3a [[:space:]]%s[[: │ │ │ -001d3d20: 7370 6163 653a 5d5d 2220 2f76 6172 2f6c space:]]" /var/l │ │ │ -001d3d30: 6f67 2922 0a0a 2020 2020 2320 4966 2074 og)".. # If t │ │ │ -001d3d40: 6865 206d 6f75 6e74 2070 6f69 6e74 2069 he mount point i │ │ │ -001d3d50: 7320 6e6f 7420 696e 202f 6574 632f 6673 s not in /etc/fs │ │ │ -001d3d60: 7461 622c 2067 6574 2070 7265 7669 6f75 tab, get previou │ │ │ -001d3d70: 7320 6d6f 756e 7420 6f70 7469 6f6e 7320 s mount options │ │ │ -001d3d80: 6672 6f6d 202f 6574 632f 6d74 6162 0a20 from /etc/mtab. │ │ │ -001d3d90: 2020 2069 6620 2120 6772 6570 202d 7120 if ! grep -q │ │ │ -001d3da0: 2224 6d6f 756e 745f 706f 696e 745f 6d61 "$mount_point_ma │ │ │ -001d3db0: 7463 685f 7265 6765 7870 2220 2f65 7463 tch_regexp" /etc │ │ │ -001d3dc0: 2f66 7374 6162 3b20 7468 656e 0a20 2020 /fstab; then. │ │ │ -001d3dd0: 2020 2020 2023 2072 756e 7469 6d65 206f # runtime o │ │ │ -001d3de0: 7074 7320 7769 7468 6f75 7420 736f 6d65 pts without some │ │ │ -001d3df0: 2061 7574 6f6d 6174 6963 206b 6572 6e65 automatic kerne │ │ │ -001d3e00: 6c2f 7573 6572 7370 6163 652d 6164 6465 l/userspace-adde │ │ │ -001d3e10: 6420 6465 6661 756c 7473 0a20 2020 2020 d defaults. │ │ │ -001d3e20: 2020 2070 7265 7669 6f75 735f 6d6f 756e previous_moun │ │ │ -001d3e30: 745f 6f70 7473 3d24 2867 7265 7020 2224 t_opts=$(grep "$ │ │ │ -001d3e40: 6d6f 756e 745f 706f 696e 745f 6d61 7463 mount_point_matc │ │ │ -001d3e50: 685f 7265 6765 7870 2220 2f65 7463 2f6d h_regexp" /etc/m │ │ │ -001d3e60: 7461 6220 7c20 6865 6164 202d 3120 7c20 tab | head -1 | │ │ │ -001d3e70: 2061 776b 2027 7b70 7269 6e74 2024 347d awk '{print $4} │ │ │ -001d3e80: 2720 5c0a 2020 2020 2020 2020 2020 2020 ' \. │ │ │ -001d3e90: 2020 2020 2020 2020 7c20 7365 6420 2d45 | sed -E │ │ │ -001d3ea0: 2022 732f 2872 777c 6465 6661 756c 7473 "s/(rw|defaults │ │ │ -001d3eb0: 7c73 6563 6c61 6265 6c7c 6e6f 6465 7629 |seclabel|nodev) │ │ │ -001d3ec0: 282c 7c24 292f 2f67 3b73 2f2c 242f 2f22 (,|$)//g;s/,$//" │ │ │ -001d3ed0: 290a 2020 2020 2020 2020 5b20 2224 7072 ). [ "$pr │ │ │ -001d3ee0: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074 evious_mount_opt │ │ │ -001d3ef0: 7322 205d 2026 616d 703b 2661 6d70 3b20 s" ] && │ │ │ -001d3f00: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f previous_mount_o │ │ │ -001d3f10: 7074 732b 3d22 2c22 0a20 2020 2020 2020 pts+=",". │ │ │ -001d3f20: 2023 2049 6e20 6973 6f39 3636 3020 6669 # In iso9660 fi │ │ │ -001d3f30: 6c65 7379 7374 656d 7320 6d74 6162 2063 lesystems mtab c │ │ │ -001d3f40: 6f75 6c64 2064 6573 6372 6962 6520 6120 ould describe a │ │ │ -001d3f50: 2262 6c6f 636b 7369 7a65 2220 7661 6c75 "blocksize" valu │ │ │ -001d3f60: 652c 2074 6869 7320 7368 6f75 6c64 2062 e, this should b │ │ │ -001d3f70: 6520 7265 666c 6563 7465 6420 696e 0a20 e reflected in. │ │ │ -001d3f80: 2020 2020 2020 2023 2066 7374 6162 2061 # fstab a │ │ │ -001d3f90: 7320 2262 6c6f 636b 222e 2020 5468 6520 s "block". The │ │ │ -001d3fa0: 6e65 7874 2076 6172 6961 626c 6520 6973 next variable is │ │ │ -001d3fb0: 2074 6f20 7361 7469 7366 7920 7368 656c to satisfy shel │ │ │ -001d3fc0: 6c63 6865 636b 2053 4332 3035 302e 0a20 lcheck SC2050.. │ │ │ -001d3fd0: 2020 2020 2020 2066 735f 7479 7065 3d22 fs_type=" │ │ │ -001d3fe0: 220a 2020 2020 2020 2020 6966 205b 2020 ". if [ │ │ │ -001d3ff0: 2224 6673 5f74 7970 6522 203d 3d20 2269 "$fs_type" == "i │ │ │ -001d4000: 736f 3936 3630 2220 5d20 3b20 7468 656e so9660" ] ; then │ │ │ -001d4010: 0a20 2020 2020 2020 2020 2020 2070 7265 . pre │ │ │ -001d4020: 7669 6f75 735f 6d6f 756e 745f 6f70 7473 vious_mount_opts │ │ │ -001d4030: 3d24 2873 6564 2027 732f 626c 6f63 6b73 =$(sed 's/blocks │ │ │ -001d4040: 697a 653d 2f62 6c6f 636b 3d2f 2720 266c ize=/block=/' &l │ │ │ -001d4050: 743b 266c 743b 266c 743b 2022 2470 7265 t;<< "$pre │ │ │ -001d4060: 7669 6f75 735f 6d6f 756e 745f 6f70 7473 vious_mount_opts │ │ │ -001d4070: 2229 0a20 2020 2020 2020 2066 690a 2020 "). fi. │ │ │ -001d4080: 2020 2020 2020 6563 686f 2022 202f 7661 echo " /va │ │ │ -001d4090: 722f 6c6f 6720 2064 6566 6175 6c74 732c r/log defaults, │ │ │ -001d40a0: 247b 7072 6576 696f 7573 5f6d 6f75 6e74 ${previous_mount │ │ │ -001d40b0: 5f6f 7074 737d 6e6f 6465 7620 3020 3022 _opts}nodev 0 0" │ │ │ -001d40c0: 2026 6774 3b26 6774 3b20 2f65 7463 2f66 >> /etc/f │ │ │ -001d40d0: 7374 6162 0a20 2020 2023 2049 6620 7468 stab. # If th │ │ │ -001d40e0: 6520 6d6f 756e 745f 6f70 7420 6f70 7469 e mount_opt opti │ │ │ -001d40f0: 6f6e 2069 7320 6e6f 7420 616c 7265 6164 on is not alread │ │ │ -001d4100: 7920 696e 2074 6865 206d 6f75 6e74 2070 y in the mount p │ │ │ -001d4110: 6f69 6e74 2773 202f 6574 632f 6673 7461 oint's /etc/fsta │ │ │ -001d4120: 6220 656e 7472 792c 2061 6464 2069 740a b entry, add it. │ │ │ -001d4130: 2020 2020 656c 6966 2021 2067 7265 7020 elif ! grep │ │ │ -001d4140: 2224 6d6f 756e 745f 706f 696e 745f 6d61 "$mount_point_ma │ │ │ -001d4150: 7463 685f 7265 6765 7870 2220 2f65 7463 tch_regexp" /etc │ │ │ -001d4160: 2f66 7374 6162 207c 2067 7265 7020 2d71 /fstab | grep -q │ │ │ -001d4170: 2022 6e6f 6465 7622 3b20 7468 656e 0a20 "nodev"; then. │ │ │ -001d4180: 2020 2020 2020 2070 7265 7669 6f75 735f previous_ │ │ │ -001d4190: 6d6f 756e 745f 6f70 7473 3d24 2867 7265 mount_opts=$(gre │ │ │ -001d41a0: 7020 2224 6d6f 756e 745f 706f 696e 745f p "$mount_point_ │ │ │ -001d41b0: 6d61 7463 685f 7265 6765 7870 2220 2f65 match_regexp" /e │ │ │ -001d41c0: 7463 2f66 7374 6162 207c 2061 776b 2027 tc/fstab | awk ' │ │ │ -001d41d0: 7b70 7269 6e74 2024 347d 2729 0a20 2020 {print $4}'). │ │ │ -001d41e0: 2020 2020 2073 6564 202d 6920 2273 7c5c sed -i "s|\ │ │ │ -001d41f0: 2824 7b6d 6f75 6e74 5f70 6f69 6e74 5f6d (${mount_point_m │ │ │ -001d4200: 6174 6368 5f72 6567 6578 707d 2e2a 247b atch_regexp}.*${ │ │ │ -001d4210: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f previous_mount_o │ │ │ -001d4220: 7074 737d 5c29 7c5c 312c 6e6f 6465 767c pts}\)|\1,nodev| │ │ │ -001d4230: 2220 2f65 7463 2f66 7374 6162 0a20 2020 " /etc/fstab. │ │ │ -001d4240: 2066 690a 0a0a 2020 2020 6966 206d 6b64 fi... if mkd │ │ │ -001d4250: 6972 202d 7020 222f 7661 722f 6c6f 6722 ir -p "/var/log" │ │ │ -001d4260: 3b20 7468 656e 0a20 2020 2020 2020 2069 ; then. i │ │ │ -001d4270: 6620 6d6f 756e 7470 6f69 6e74 202d 7120 f mountpoint -q │ │ │ -001d4280: 222f 7661 722f 6c6f 6722 3b20 7468 656e "/var/log"; then │ │ │ -001d4290: 0a20 2020 2020 2020 2020 2020 206d 6f75 . mou │ │ │ -001d42a0: 6e74 202d 6f20 7265 6d6f 756e 7420 2d2d nt -o remount -- │ │ │ -001d42b0: 7461 7267 6574 2022 2f76 6172 2f6c 6f67 target "/var/log │ │ │ -001d42c0: 220a 2020 2020 2020 2020 6669 0a20 2020 ". fi. │ │ │ -001d42d0: 2066 690a 7d0a 0a70 6572 666f 726d 5f72 fi.}..perform_r │ │ │ -001d42e0: 656d 6564 6961 7469 6f6e 0a0a 656c 7365 emediation..else │ │ │ -001d42f0: 0a20 2020 2026 6774 3b26 616d 703b 3220 . >&2 │ │ │ -001d4300: 6563 686f 2027 5265 6d65 6469 6174 696f echo 'Remediatio │ │ │ -001d4310: 6e20 6973 206e 6f74 2061 7070 6c69 6361 n is not applica │ │ │ -001d4320: 626c 652c 206e 6f74 6869 6e67 2077 6173 ble, nothing was │ │ │ -001d4330: 2064 6f6e 6527 0a66 690a 3c2f 636f 6465 done'.fi.

< │ │ │ +001d1e10: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ +001d1e30: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr> │ │ │ +001d1e80: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472
low
Disr │ │ │ +001d1e40: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +001d1e50: 6869 6768 3c2f 7464 3e3c 2f74 723e 3c74 high
Reboot:false
Str │ │ │ +001d1e90: 6174 6567 793a 3c2f 7468 3e3c 7464 3e63 ategy:c │ │ │ +001d1ea0: 6f6e 6669 6775 7265 3c2f 7464 3e3c 2f74 onfigure
<
│ │ │ +001d1ec0: 636f 6465 3e2d 206e 616d 653a 2047 6174  code>- name: Gat
│ │ │ +001d1ed0: 6865 7220 7468 6520 7061 636b 6167 6520  her the package 
│ │ │ +001d1ee0: 6661 6374 730a 2020 7061 636b 6167 655f  facts.  package_
│ │ │ +001d1ef0: 6661 6374 733a 0a20 2020 206d 616e 6167  facts:.    manag
│ │ │ +001d1f00: 6572 3a20 6175 746f 0a20 2074 6167 733a  er: auto.  tags:
│ │ │ +001d1f10: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001d1f20: 2d41 432d 360a 2020 2d20 4e49 5354 2d38  -AC-6.  - NIST-8
│ │ │ +001d1f30: 3030 2d35 332d 4143 2d36 2831 290a 2020  00-53-AC-6(1).  
│ │ │ +001d1f40: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +001d1f50: 2d36 2861 290a 2020 2d20 4e49 5354 2d38  -6(a).  - NIST-8
│ │ │ +001d1f60: 3030 2d35 332d 434d 2d37 2861 290a 2020  00-53-CM-7(a).  
│ │ │ +001d1f70: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +001d1f80: 2d37 2862 290a 2020 2d20 4e49 5354 2d38  -7(b).  - NIST-8
│ │ │ +001d1f90: 3030 2d35 332d 4d50 2d37 0a20 202d 2063  00-53-MP-7.  - c
│ │ │ +001d1fa0: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ +001d1fb0: 790a 2020 2d20 6869 6768 5f64 6973 7275  y.  - high_disru
│ │ │ +001d1fc0: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f  ption.  - low_co
│ │ │ +001d1fd0: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ +001d1fe0: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ +001d1ff0: 206d 6f75 6e74 5f6f 7074 696f 6e5f 7661   mount_option_va
│ │ │ +001d2000: 725f 6c6f 675f 6e6f 6465 760a 2020 2d20  r_log_nodev.  - 
│ │ │ +001d2010: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ +001d2020: 0a0a 2d20 6e61 6d65 3a20 2741 6464 206e  ..- name: 'Add n
│ │ │ +001d2030: 6f64 6576 204f 7074 696f 6e20 746f 202f  odev Option to /
│ │ │ +001d2040: 7661 722f 6c6f 673a 2043 6865 636b 2069  var/log: Check i
│ │ │ +001d2050: 6e66 6f72 6d61 7469 6f6e 2061 7373 6f63  nformation assoc
│ │ │ +001d2060: 6961 7465 6420 746f 206d 6f75 6e74 706f  iated to mountpo
│ │ │ +001d2070: 696e 7427 0a20 2061 6e73 6962 6c65 2e62  int'.  ansible.b
│ │ │ +001d2080: 7569 6c74 696e 2e63 6f6d 6d61 6e64 3a20  uiltin.command: 
│ │ │ +001d2090: 6669 6e64 6d6e 7420 2d2d 6673 7461 6220  findmnt --fstab 
│ │ │ +001d20a0: 272f 7661 722f 6c6f 6727 0a20 2072 6567  '/var/log'.  reg
│ │ │ +001d20b0: 6973 7465 723a 2064 6576 6963 655f 6e61  ister: device_na
│ │ │ +001d20c0: 6d65 0a20 2066 6169 6c65 645f 7768 656e  me.  failed_when
│ │ │ +001d20d0: 3a20 6465 7669 6365 5f6e 616d 652e 7263  : device_name.rc
│ │ │ +001d20e0: 2026 6774 3b20 310a 2020 6368 616e 6765   > 1.  change
│ │ │ +001d20f0: 645f 7768 656e 3a20 6661 6c73 650a 2020  d_when: false.  
│ │ │ +001d2100: 6368 6563 6b5f 6d6f 6465 3a20 6661 6c73  check_mode: fals
│ │ │ +001d2110: 650a 2020 7768 656e 3a0a 2020 2d20 2820  e.  when:.  - ( 
│ │ │ +001d2120: 6e6f 7420 2820 226b 6572 6e65 6c22 2069  not ( "kernel" i
│ │ │ +001d2130: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001d2140: 7061 636b 6167 6573 2061 6e64 2022 626f  packages and "bo
│ │ │ +001d2150: 6f74 6322 2069 6e20 616e 7369 626c 655f  otc" in ansible_
│ │ │ +001d2160: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ +001d2170: 2020 2061 6e64 206e 6f74 2022 6f70 656e     and not "open
│ │ │ +001d2180: 7368 6966 742d 6b75 6265 6c65 7422 2069  shift-kubelet" i
│ │ │ +001d2190: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001d21a0: 7061 636b 6167 6573 2061 6e64 2022 6f73  packages and "os
│ │ │ +001d21b0: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ +001d21c0: 5f70 726f 635f 636d 646c 696e 650a 2020  _proc_cmdline.  
│ │ │ +001d21d0: 2020 2920 616e 6420 6e6f 7420 2820 616e    ) and not ( an
│ │ │ +001d21e0: 7369 626c 655f 7669 7274 7561 6c69 7a61  sible_virtualiza
│ │ │ +001d21f0: 7469 6f6e 5f74 7970 6520 696e 205b 2264  tion_type in ["d
│ │ │ +001d2200: 6f63 6b65 7222 2c20 226c 7863 222c 2022  ocker", "lxc", "
│ │ │ +001d2210: 6f70 656e 767a 222c 2022 706f 646d 616e  openvz", "podman
│ │ │ +001d2220: 222c 0a20 2020 2022 636f 6e74 6169 6e65  ",.    "containe
│ │ │ +001d2230: 7222 5d20 2920 290a 2020 2d20 2722 2f76  r"] ) ).  - '"/v
│ │ │ +001d2240: 6172 2f6c 6f67 2220 696e 2061 6e73 6962  ar/log" in ansib
│ │ │ +001d2250: 6c65 5f6d 6f75 6e74 7320 7c20 6d61 7028  le_mounts | map(
│ │ │ +001d2260: 6174 7472 6962 7574 653d 226d 6f75 6e74  attribute="mount
│ │ │ +001d2270: 2229 207c 206c 6973 7427 0a20 2074 6167  ") | list'.  tag
│ │ │ +001d2280: 733a 0a20 202d 204e 4953 542d 3830 302d  s:.  - NIST-800-
│ │ │ +001d2290: 3533 2d41 432d 360a 2020 2d20 4e49 5354  53-AC-6.  - NIST
│ │ │ +001d22a0: 2d38 3030 2d35 332d 4143 2d36 2831 290a  -800-53-AC-6(1).
│ │ │ +001d22b0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001d22c0: 434d 2d36 2861 290a 2020 2d20 4e49 5354  CM-6(a).  - NIST
│ │ │ +001d22d0: 2d38 3030 2d35 332d 434d 2d37 2861 290a  -800-53-CM-7(a).
│ │ │ +001d22e0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001d22f0: 434d 2d37 2862 290a 2020 2d20 4e49 5354  CM-7(b).  - NIST
│ │ │ +001d2300: 2d38 3030 2d35 332d 4d50 2d37 0a20 202d  -800-53-MP-7.  -
│ │ │ +001d2310: 2063 6f6e 6669 6775 7265 5f73 7472 6174   configure_strat
│ │ │ +001d2320: 6567 790a 2020 2d20 6869 6768 5f64 6973  egy.  - high_dis
│ │ │ +001d2330: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f  ruption.  - low_
│ │ │ +001d2340: 636f 6d70 6c65 7869 7479 0a20 202d 206d  complexity.  - m
│ │ │ +001d2350: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ +001d2360: 202d 206d 6f75 6e74 5f6f 7074 696f 6e5f   - mount_option_
│ │ │ +001d2370: 7661 725f 6c6f 675f 6e6f 6465 760a 2020  var_log_nodev.  
│ │ │ +001d2380: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ +001d2390: 6564 0a0a 2d20 6e61 6d65 3a20 2741 6464  ed..- name: 'Add
│ │ │ +001d23a0: 206e 6f64 6576 204f 7074 696f 6e20 746f   nodev Option to
│ │ │ +001d23b0: 202f 7661 722f 6c6f 673a 2043 7265 6174   /var/log: Creat
│ │ │ +001d23c0: 6520 6d6f 756e 745f 696e 666f 2064 6963  e mount_info dic
│ │ │ +001d23d0: 7469 6f6e 6172 7920 7661 7269 6162 6c65  tionary variable
│ │ │ +001d23e0: 270a 2020 7365 745f 6661 6374 3a0a 2020  '.  set_fact:.  
│ │ │ +001d23f0: 2020 6d6f 756e 745f 696e 666f 3a20 277b    mount_info: '{
│ │ │ +001d2400: 7b20 6d6f 756e 745f 696e 666f 7c64 6566  { mount_info|def
│ │ │ +001d2410: 6175 6c74 287b 7d29 7c63 6f6d 6269 6e65  ault({})|combine
│ │ │ +001d2420: 287b 6974 656d 2e30 3a20 6974 656d 2e31  ({item.0: item.1
│ │ │ +001d2430: 7d29 207d 7d27 0a20 2077 6974 685f 746f  }) }}'.  with_to
│ │ │ +001d2440: 6765 7468 6572 3a0a 2020 2d20 277b 7b20  gether:.  - '{{ 
│ │ │ +001d2450: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ +001d2460: 7574 5f6c 696e 6573 5b30 5d2e 7370 6c69  ut_lines[0].spli
│ │ │ +001d2470: 7428 2920 7c20 6d61 7028 2727 6c6f 7765  t() | map(''lowe
│ │ │ +001d2480: 7227 2729 207c 206c 6973 7420 7d7d 270a  r'') | list }}'.
│ │ │ +001d2490: 2020 2d20 277b 7b20 6465 7669 6365 5f6e    - '{{ device_n
│ │ │ +001d24a0: 616d 652e 7374 646f 7574 5f6c 696e 6573  ame.stdout_lines
│ │ │ +001d24b0: 5b31 5d2e 7370 6c69 7428 2920 7c20 6c69  [1].split() | li
│ │ │ +001d24c0: 7374 207d 7d27 0a20 2077 6865 6e3a 0a20  st }}'.  when:. 
│ │ │ +001d24d0: 202d 2028 206e 6f74 2028 2022 6b65 726e   - ( not ( "kern
│ │ │ +001d24e0: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ +001d24f0: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +001d2500: 6420 2262 6f6f 7463 2220 696e 2061 6e73  d "bootc" in ans
│ │ │ +001d2510: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001d2520: 6765 730a 2020 2020 616e 6420 6e6f 7420  ges.    and not 
│ │ │ +001d2530: 226f 7065 6e73 6869 6674 2d6b 7562 656c  "openshift-kubel
│ │ │ +001d2540: 6574 2220 696e 2061 6e73 6962 6c65 5f66  et" in ansible_f
│ │ │ +001d2550: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +001d2560: 6420 226f 7374 7265 6522 2069 6e20 616e  d "ostree" in an
│ │ │ +001d2570: 7369 626c 655f 7072 6f63 5f63 6d64 6c69  sible_proc_cmdli
│ │ │ +001d2580: 6e65 0a20 2020 2029 2061 6e64 206e 6f74  ne.    ) and not
│ │ │ +001d2590: 2028 2061 6e73 6962 6c65 5f76 6972 7475   ( ansible_virtu
│ │ │ +001d25a0: 616c 697a 6174 696f 6e5f 7479 7065 2069  alization_type i
│ │ │ +001d25b0: 6e20 5b22 646f 636b 6572 222c 2022 6c78  n ["docker", "lx
│ │ │ +001d25c0: 6322 2c20 226f 7065 6e76 7a22 2c20 2270  c", "openvz", "p
│ │ │ +001d25d0: 6f64 6d61 6e22 2c0a 2020 2020 2263 6f6e  odman",.    "con
│ │ │ +001d25e0: 7461 696e 6572 225d 2029 2029 0a20 202d  tainer"] ) ).  -
│ │ │ +001d25f0: 2027 222f 7661 722f 6c6f 6722 2069 6e20   '"/var/log" in 
│ │ │ +001d2600: 616e 7369 626c 655f 6d6f 756e 7473 207c  ansible_mounts |
│ │ │ +001d2610: 206d 6170 2861 7474 7269 6275 7465 3d22   map(attribute="
│ │ │ +001d2620: 6d6f 756e 7422 2920 7c20 6c69 7374 270a  mount") | list'.
│ │ │ +001d2630: 2020 2d20 6465 7669 6365 5f6e 616d 652e    - device_name.
│ │ │ +001d2640: 7374 646f 7574 2069 7320 6465 6669 6e65  stdout is define
│ │ │ +001d2650: 6420 616e 6420 6465 7669 6365 5f6e 616d  d and device_nam
│ │ │ +001d2660: 652e 7374 646f 7574 5f6c 696e 6573 2069  e.stdout_lines i
│ │ │ +001d2670: 7320 6465 6669 6e65 640a 2020 2d20 2864  s defined.  - (d
│ │ │ +001d2680: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ +001d2690: 7420 7c20 6c65 6e67 7468 2026 6774 3b20  t | length > 
│ │ │ +001d26a0: 3029 0a20 2074 6167 733a 0a20 202d 204e  0).  tags:.  - N
│ │ │ +001d26b0: 4953 542d 3830 302d 3533 2d41 432d 360a  IST-800-53-AC-6.
│ │ │ +001d26c0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001d26d0: 4143 2d36 2831 290a 2020 2d20 4e49 5354  AC-6(1).  - NIST
│ │ │ +001d26e0: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ +001d26f0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001d2700: 434d 2d37 2861 290a 2020 2d20 4e49 5354  CM-7(a).  - NIST
│ │ │ +001d2710: 2d38 3030 2d35 332d 434d 2d37 2862 290a  -800-53-CM-7(b).
│ │ │ +001d2720: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001d2730: 4d50 2d37 0a20 202d 2063 6f6e 6669 6775  MP-7.  - configu
│ │ │ +001d2740: 7265 5f73 7472 6174 6567 790a 2020 2d20  re_strategy.  - 
│ │ │ +001d2750: 6869 6768 5f64 6973 7275 7074 696f 6e0a  high_disruption.
│ │ │ +001d2760: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ +001d2770: 7479 0a20 202d 206d 6564 6975 6d5f 7365  ty.  - medium_se
│ │ │ +001d2780: 7665 7269 7479 0a20 202d 206d 6f75 6e74  verity.  - mount
│ │ │ +001d2790: 5f6f 7074 696f 6e5f 7661 725f 6c6f 675f  _option_var_log_
│ │ │ +001d27a0: 6e6f 6465 760a 2020 2d20 6e6f 5f72 6562  nodev.  - no_reb
│ │ │ +001d27b0: 6f6f 745f 6e65 6564 6564 0a0a 2d20 6e61  oot_needed..- na
│ │ │ +001d27c0: 6d65 3a20 2741 6464 206e 6f64 6576 204f  me: 'Add nodev O
│ │ │ +001d27d0: 7074 696f 6e20 746f 202f 7661 722f 6c6f  ption to /var/lo
│ │ │ +001d27e0: 673a 2049 6620 2f76 6172 2f6c 6f67 206e  g: If /var/log n
│ │ │ +001d27f0: 6f74 206d 6f75 6e74 6564 2c20 6372 6166  ot mounted, craf
│ │ │ +001d2800: 7420 6d6f 756e 745f 696e 666f 206d 616e  t mount_info man
│ │ │ +001d2810: 7561 6c6c 7927 0a20 2073 6574 5f66 6163  ually'.  set_fac
│ │ │ +001d2820: 743a 0a20 2020 206d 6f75 6e74 5f69 6e66  t:.    mount_inf
│ │ │ +001d2830: 6f3a 2027 7b7b 206d 6f75 6e74 5f69 6e66  o: '{{ mount_inf
│ │ │ +001d2840: 6f7c 6465 6661 756c 7428 7b7d 297c 636f  o|default({})|co
│ │ │ +001d2850: 6d62 696e 6528 7b69 7465 6d2e 303a 2069  mbine({item.0: i
│ │ │ +001d2860: 7465 6d2e 317d 2920 7d7d 270a 2020 7769  tem.1}) }}'.  wi
│ │ │ +001d2870: 7468 5f74 6f67 6574 6865 723a 0a20 202d  th_together:.  -
│ │ │ +001d2880: 202d 2074 6172 6765 740a 2020 2020 2d20   - target.    - 
│ │ │ +001d2890: 736f 7572 6365 0a20 2020 202d 2066 7374  source.    - fst
│ │ │ +001d28a0: 7970 650a 2020 2020 2d20 6f70 7469 6f6e  ype.    - option
│ │ │ +001d28b0: 730a 2020 2d20 2d20 2f76 6172 2f6c 6f67  s.  - - /var/log
│ │ │ +001d28c0: 0a20 2020 202d 2027 270a 2020 2020 2d20  .    - ''.    - 
│ │ │ +001d28d0: 2727 0a20 2020 202d 2064 6566 6175 6c74  ''.    - default
│ │ │ +001d28e0: 730a 2020 7768 656e 3a0a 2020 2d20 2820  s.  when:.  - ( 
│ │ │ +001d28f0: 6e6f 7420 2820 226b 6572 6e65 6c22 2069  not ( "kernel" i
│ │ │ +001d2900: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001d2910: 7061 636b 6167 6573 2061 6e64 2022 626f  packages and "bo
│ │ │ +001d2920: 6f74 6322 2069 6e20 616e 7369 626c 655f  otc" in ansible_
│ │ │ +001d2930: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ +001d2940: 2020 2061 6e64 206e 6f74 2022 6f70 656e     and not "open
│ │ │ +001d2950: 7368 6966 742d 6b75 6265 6c65 7422 2069  shift-kubelet" i
│ │ │ +001d2960: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001d2970: 7061 636b 6167 6573 2061 6e64 2022 6f73  packages and "os
│ │ │ +001d2980: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ +001d2990: 5f70 726f 635f 636d 646c 696e 650a 2020  _proc_cmdline.  
│ │ │ +001d29a0: 2020 2920 616e 6420 6e6f 7420 2820 616e    ) and not ( an
│ │ │ +001d29b0: 7369 626c 655f 7669 7274 7561 6c69 7a61  sible_virtualiza
│ │ │ +001d29c0: 7469 6f6e 5f74 7970 6520 696e 205b 2264  tion_type in ["d
│ │ │ +001d29d0: 6f63 6b65 7222 2c20 226c 7863 222c 2022  ocker", "lxc", "
│ │ │ +001d29e0: 6f70 656e 767a 222c 2022 706f 646d 616e  openvz", "podman
│ │ │ +001d29f0: 222c 0a20 2020 2022 636f 6e74 6169 6e65  ",.    "containe
│ │ │ +001d2a00: 7222 5d20 2920 290a 2020 2d20 2722 2f76  r"] ) ).  - '"/v
│ │ │ +001d2a10: 6172 2f6c 6f67 2220 696e 2061 6e73 6962  ar/log" in ansib
│ │ │ +001d2a20: 6c65 5f6d 6f75 6e74 7320 7c20 6d61 7028  le_mounts | map(
│ │ │ +001d2a30: 6174 7472 6962 7574 653d 226d 6f75 6e74  attribute="mount
│ │ │ +001d2a40: 2229 207c 206c 6973 7427 0a20 202d 2028  ") | list'.  - (
│ │ │ +001d2a50: 222d 2d66 7374 6162 2220 7c20 6c65 6e67  "--fstab" | leng
│ │ │ +001d2a60: 7468 203d 3d20 3029 0a20 202d 2064 6576  th == 0).  - dev
│ │ │ +001d2a70: 6963 655f 6e61 6d65 2e73 7464 6f75 7420  ice_name.stdout 
│ │ │ +001d2a80: 6973 2064 6566 696e 6564 2061 6e64 2064  is defined and d
│ │ │ +001d2a90: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ +001d2aa0: 745f 6c69 6e65 7320 6973 2064 6566 696e  t_lines is defin
│ │ │ +001d2ab0: 6564 0a20 202d 2028 6465 7669 6365 5f6e  ed.  - (device_n
│ │ │ +001d2ac0: 616d 652e 7374 646f 7574 207c 206c 656e  ame.stdout | len
│ │ │ +001d2ad0: 6774 6820 3d3d 2030 290a 2020 7461 6773  gth == 0).  tags
│ │ │ +001d2ae0: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ +001d2af0: 332d 4143 2d36 0a20 202d 204e 4953 542d  3-AC-6.  - NIST-
│ │ │ +001d2b00: 3830 302d 3533 2d41 432d 3628 3129 0a20  800-53-AC-6(1). 
│ │ │ +001d2b10: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +001d2b20: 4d2d 3628 6129 0a20 202d 204e 4953 542d  M-6(a).  - NIST-
│ │ │ +001d2b30: 3830 302d 3533 2d43 4d2d 3728 6129 0a20  800-53-CM-7(a). 
│ │ │ +001d2b40: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +001d2b50: 4d2d 3728 6229 0a20 202d 204e 4953 542d  M-7(b).  - NIST-
│ │ │ +001d2b60: 3830 302d 3533 2d4d 502d 370a 2020 2d20  800-53-MP-7.  - 
│ │ │ +001d2b70: 636f 6e66 6967 7572 655f 7374 7261 7465  configure_strate
│ │ │ +001d2b80: 6779 0a20 202d 2068 6967 685f 6469 7372  gy.  - high_disr
│ │ │ +001d2b90: 7570 7469 6f6e 0a20 202d 206c 6f77 5f63  uption.  - low_c
│ │ │ +001d2ba0: 6f6d 706c 6578 6974 790a 2020 2d20 6d65  omplexity.  - me
│ │ │ +001d2bb0: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ +001d2bc0: 2d20 6d6f 756e 745f 6f70 7469 6f6e 5f76  - mount_option_v
│ │ │ +001d2bd0: 6172 5f6c 6f67 5f6e 6f64 6576 0a20 202d  ar_log_nodev.  -
│ │ │ +001d2be0: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ +001d2bf0: 640a 0a2d 206e 616d 653a 2027 4164 6420  d..- name: 'Add 
│ │ │ +001d2c00: 6e6f 6465 7620 4f70 7469 6f6e 2074 6f20  nodev Option to 
│ │ │ +001d2c10: 2f76 6172 2f6c 6f67 3a20 4d61 6b65 2073  /var/log: Make s
│ │ │ +001d2c20: 7572 6520 6e6f 6465 7620 6f70 7469 6f6e  ure nodev option
│ │ │ +001d2c30: 2069 7320 7061 7274 206f 6620 7468 6520   is part of the 
│ │ │ +001d2c40: 746f 202f 7661 722f 6c6f 670a 2020 2020  to /var/log.    
│ │ │ +001d2c50: 6f70 7469 6f6e 7327 0a20 2073 6574 5f66  options'.  set_f
│ │ │ +001d2c60: 6163 743a 0a20 2020 206d 6f75 6e74 5f69  act:.    mount_i
│ │ │ +001d2c70: 6e66 6f3a 2027 7b7b 206d 6f75 6e74 5f69  nfo: '{{ mount_i
│ │ │ +001d2c80: 6e66 6f20 7c20 636f 6d62 696e 6528 207b  nfo | combine( {
│ │ │ +001d2c90: 2727 6f70 7469 6f6e 7327 273a 2727 2727  ''options'':''''
│ │ │ +001d2ca0: 7e28 6d6f 756e 745f 696e 666f 2e6f 7074  ~(mount_info.opt
│ │ │ +001d2cb0: 696f 6e73 207c 0a20 2020 2020 2064 6566  ions |.      def
│ │ │ +001d2cc0: 6175 6c74 2827 2727 2729 297e 2827 272c  ault(''''))~('',
│ │ │ +001d2cd0: 2727 2069 6620 286d 6f75 6e74 5f69 6e66  '' if (mount_inf
│ │ │ +001d2ce0: 6f2e 6f70 7469 6f6e 7320 7c20 6465 6661  o.options | defa
│ │ │ +001d2cf0: 756c 7428 2727 2727 2929 2065 6c73 6520  ult('''')) else 
│ │ │ +001d2d00: 2727 2727 297e 2727 6e6f 6465 7627 270a  '''')~''nodev''.
│ │ │ +001d2d10: 2020 2020 2020 7d29 207d 7d27 0a20 2077        }) }}'.  w
│ │ │ +001d2d20: 6865 6e3a 0a20 202d 2028 206e 6f74 2028  hen:.  - ( not (
│ │ │ +001d2d30: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ +001d2d40: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001d2d50: 6765 7320 616e 6420 2262 6f6f 7463 2220  ges and "bootc" 
│ │ │ +001d2d60: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001d2d70: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ +001d2d80: 6420 6e6f 7420 226f 7065 6e73 6869 6674  d not "openshift
│ │ │ +001d2d90: 2d6b 7562 656c 6574 2220 696e 2061 6e73  -kubelet" in ans
│ │ │ +001d2da0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001d2db0: 6765 7320 616e 6420 226f 7374 7265 6522  ges and "ostree"
│ │ │ +001d2dc0: 2069 6e20 616e 7369 626c 655f 7072 6f63   in ansible_proc
│ │ │ +001d2dd0: 5f63 6d64 6c69 6e65 0a20 2020 2029 2061  _cmdline.    ) a
│ │ │ +001d2de0: 6e64 206e 6f74 2028 2061 6e73 6962 6c65  nd not ( ansible
│ │ │ +001d2df0: 5f76 6972 7475 616c 697a 6174 696f 6e5f  _virtualization_
│ │ │ +001d2e00: 7479 7065 2069 6e20 5b22 646f 636b 6572  type in ["docker
│ │ │ +001d2e10: 222c 2022 6c78 6322 2c20 226f 7065 6e76  ", "lxc", "openv
│ │ │ +001d2e20: 7a22 2c20 2270 6f64 6d61 6e22 2c0a 2020  z", "podman",.  
│ │ │ +001d2e30: 2020 2263 6f6e 7461 696e 6572 225d 2029    "container"] )
│ │ │ +001d2e40: 2029 0a20 202d 2027 222f 7661 722f 6c6f   ).  - '"/var/lo
│ │ │ +001d2e50: 6722 2069 6e20 616e 7369 626c 655f 6d6f  g" in ansible_mo
│ │ │ +001d2e60: 756e 7473 207c 206d 6170 2861 7474 7269  unts | map(attri
│ │ │ +001d2e70: 6275 7465 3d22 6d6f 756e 7422 2920 7c20  bute="mount") | 
│ │ │ +001d2e80: 6c69 7374 270a 2020 2d20 6d6f 756e 745f  list'.  - mount_
│ │ │ +001d2e90: 696e 666f 2069 7320 6465 6669 6e65 6420  info is defined 
│ │ │ +001d2ea0: 616e 6420 226e 6f64 6576 2220 6e6f 7420  and "nodev" not 
│ │ │ +001d2eb0: 696e 2028 6d6f 756e 745f 696e 666f 2e6f  in (mount_info.o
│ │ │ +001d2ec0: 7074 696f 6e73 207c 2064 6566 6175 6c74  ptions | default
│ │ │ +001d2ed0: 2827 2729 290a 2020 7461 6773 3a0a 2020  ('')).  tags:.  
│ │ │ +001d2ee0: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ +001d2ef0: 2d36 0a20 202d 204e 4953 542d 3830 302d  -6.  - NIST-800-
│ │ │ +001d2f00: 3533 2d41 432d 3628 3129 0a20 202d 204e  53-AC-6(1).  - N
│ │ │ +001d2f10: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ +001d2f20: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ +001d2f30: 3533 2d43 4d2d 3728 6129 0a20 202d 204e  53-CM-7(a).  - N
│ │ │ +001d2f40: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ +001d2f50: 6229 0a20 202d 204e 4953 542d 3830 302d  b).  - NIST-800-
│ │ │ +001d2f60: 3533 2d4d 502d 370a 2020 2d20 636f 6e66  53-MP-7.  - conf
│ │ │ +001d2f70: 6967 7572 655f 7374 7261 7465 6779 0a20  igure_strategy. 
│ │ │ +001d2f80: 202d 2068 6967 685f 6469 7372 7570 7469   - high_disrupti
│ │ │ +001d2f90: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c  on.  - low_compl
│ │ │ +001d2fa0: 6578 6974 790a 2020 2d20 6d65 6469 756d  exity.  - medium
│ │ │ +001d2fb0: 5f73 6576 6572 6974 790a 2020 2d20 6d6f  _severity.  - mo
│ │ │ +001d2fc0: 756e 745f 6f70 7469 6f6e 5f76 6172 5f6c  unt_option_var_l
│ │ │ +001d2fd0: 6f67 5f6e 6f64 6576 0a20 202d 206e 6f5f  og_nodev.  - no_
│ │ │ +001d2fe0: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ +001d2ff0: 206e 616d 653a 2027 4164 6420 6e6f 6465   name: 'Add node
│ │ │ +001d3000: 7620 4f70 7469 6f6e 2074 6f20 2f76 6172  v Option to /var
│ │ │ +001d3010: 2f6c 6f67 3a20 456e 7375 7265 202f 7661  /log: Ensure /va
│ │ │ +001d3020: 722f 6c6f 6720 6973 206d 6f75 6e74 6564  r/log is mounted
│ │ │ +001d3030: 2077 6974 6820 6e6f 6465 7620 6f70 7469   with nodev opti
│ │ │ +001d3040: 6f6e 270a 2020 616e 7369 626c 652e 706f  on'.  ansible.po
│ │ │ +001d3050: 7369 782e 6d6f 756e 743a 0a20 2020 2070  six.mount:.    p
│ │ │ +001d3060: 6174 683a 202f 7661 722f 6c6f 670a 2020  ath: /var/log.  
│ │ │ +001d3070: 2020 7372 633a 2027 7b7b 206d 6f75 6e74    src: '{{ mount
│ │ │ +001d3080: 5f69 6e66 6f2e 736f 7572 6365 207c 2064  _info.source | d
│ │ │ +001d3090: 6566 6175 6c74 2827 2727 2729 207d 7d27  efault('''') }}'
│ │ │ +001d30a0: 0a20 2020 206f 7074 733a 2027 7b7b 206d  .    opts: '{{ m
│ │ │ +001d30b0: 6f75 6e74 5f69 6e66 6f2e 6f70 7469 6f6e  ount_info.option
│ │ │ +001d30c0: 7320 7c20 6465 6661 756c 7428 2727 2727  s | default(''''
│ │ │ +001d30d0: 2920 7d7d 270a 2020 2020 7374 6174 653a  ) }}'.    state:
│ │ │ +001d30e0: 206d 6f75 6e74 6564 0a20 2020 2066 7374   mounted.    fst
│ │ │ +001d30f0: 7970 653a 2027 7b7b 206d 6f75 6e74 5f69  ype: '{{ mount_i
│ │ │ +001d3100: 6e66 6f2e 6673 7479 7065 207c 2064 6566  nfo.fstype | def
│ │ │ +001d3110: 6175 6c74 2827 2727 2729 207d 7d27 0a20  ault('''') }}'. 
│ │ │ +001d3120: 2072 6567 6973 7465 723a 206d 6f75 6e74   register: mount
│ │ │ +001d3130: 5f72 6573 756c 740a 2020 6661 696c 6564  _result.  failed
│ │ │ +001d3140: 5f77 6865 6e3a 0a20 202d 206d 6f75 6e74  _when:.  - mount
│ │ │ +001d3150: 5f72 6573 756c 7420 6973 2066 6169 6c65  _result is faile
│ │ │ +001d3160: 640a 2020 2d20 2727 2774 6172 6765 7420  d.  - '''target 
│ │ │ +001d3170: 6973 2062 7573 7927 2720 6e6f 7420 696e  is busy'' not in
│ │ │ +001d3180: 2028 6d6f 756e 745f 7265 7375 6c74 2e6d   (mount_result.m
│ │ │ +001d3190: 7367 207c 2064 6566 6175 6c74 2827 2727  sg | default('''
│ │ │ +001d31a0: 2729 2927 0a20 202d 2027 2727 616c 7265  '))'.  - '''alre
│ │ │ +001d31b0: 6164 7920 6d6f 756e 7465 6427 2720 6e6f  ady mounted'' no
│ │ │ +001d31c0: 7420 696e 2028 6d6f 756e 745f 7265 7375  t in (mount_resu
│ │ │ +001d31d0: 6c74 2e6d 7367 207c 2064 6566 6175 6c74  lt.msg | default
│ │ │ +001d31e0: 2827 2727 2729 2927 0a20 2077 6865 6e3a  (''''))'.  when:
│ │ │ +001d31f0: 0a20 202d 2028 206e 6f74 2028 2022 6b65  .  - ( not ( "ke
│ │ │ +001d3200: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ +001d3210: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ +001d3220: 616e 6420 2262 6f6f 7463 2220 696e 2061  and "bootc" in a
│ │ │ +001d3230: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +001d3240: 6b61 6765 730a 2020 2020 616e 6420 6e6f  kages.    and no
│ │ │ +001d3250: 7420 226f 7065 6e73 6869 6674 2d6b 7562  t "openshift-kub
│ │ │ +001d3260: 656c 6574 2220 696e 2061 6e73 6962 6c65  elet" in ansible
│ │ │ +001d3270: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ +001d3280: 616e 6420 226f 7374 7265 6522 2069 6e20  and "ostree" in 
│ │ │ +001d3290: 616e 7369 626c 655f 7072 6f63 5f63 6d64  ansible_proc_cmd
│ │ │ +001d32a0: 6c69 6e65 0a20 2020 2029 2061 6e64 206e  line.    ) and n
│ │ │ +001d32b0: 6f74 2028 2061 6e73 6962 6c65 5f76 6972  ot ( ansible_vir
│ │ │ +001d32c0: 7475 616c 697a 6174 696f 6e5f 7479 7065  tualization_type
│ │ │ +001d32d0: 2069 6e20 5b22 646f 636b 6572 222c 2022   in ["docker", "
│ │ │ +001d32e0: 6c78 6322 2c20 226f 7065 6e76 7a22 2c20  lxc", "openvz", 
│ │ │ +001d32f0: 2270 6f64 6d61 6e22 2c0a 2020 2020 2263  "podman",.    "c
│ │ │ +001d3300: 6f6e 7461 696e 6572 225d 2029 2029 0a20  ontainer"] ) ). 
│ │ │ +001d3310: 202d 2027 222f 7661 722f 6c6f 6722 2069   - '"/var/log" i
│ │ │ +001d3320: 6e20 616e 7369 626c 655f 6d6f 756e 7473  n ansible_mounts
│ │ │ +001d3330: 207c 206d 6170 2861 7474 7269 6275 7465   | map(attribute
│ │ │ +001d3340: 3d22 6d6f 756e 7422 2920 7c20 6c69 7374  ="mount") | list
│ │ │ +001d3350: 270a 2020 2d20 6d6f 756e 745f 696e 666f  '.  - mount_info
│ │ │ +001d3360: 2069 7320 6465 6669 6e65 640a 2020 2d20   is defined.  - 
│ │ │ +001d3370: 2864 6576 6963 655f 6e61 6d65 2e73 7464  (device_name.std
│ │ │ +001d3380: 6f75 7420 6973 2064 6566 696e 6564 2061  out is defined a
│ │ │ +001d3390: 6e64 2028 6465 7669 6365 5f6e 616d 652e  nd (device_name.
│ │ │ +001d33a0: 7374 646f 7574 207c 206c 656e 6774 6820  stdout | length 
│ │ │ +001d33b0: 2667 743b 2030 2929 206f 7220 2822 2d2d  > 0)) or ("--
│ │ │ +001d33c0: 6673 7461 6222 0a20 2020 207c 206c 656e  fstab".    | len
│ │ │ +001d33d0: 6774 6820 3d3d 2030 290a 2020 7461 6773  gth == 0).  tags
│ │ │ +001d33e0: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ +001d33f0: 332d 4143 2d36 0a20 202d 204e 4953 542d  3-AC-6.  - NIST-
│ │ │ +001d3400: 3830 302d 3533 2d41 432d 3628 3129 0a20  800-53-AC-6(1). 
│ │ │ +001d3410: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +001d3420: 4d2d 3628 6129 0a20 202d 204e 4953 542d  M-6(a).  - NIST-
│ │ │ +001d3430: 3830 302d 3533 2d43 4d2d 3728 6129 0a20  800-53-CM-7(a). 
│ │ │ +001d3440: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +001d3450: 4d2d 3728 6229 0a20 202d 204e 4953 542d  M-7(b).  - NIST-
│ │ │ +001d3460: 3830 302d 3533 2d4d 502d 370a 2020 2d20  800-53-MP-7.  - 
│ │ │ +001d3470: 636f 6e66 6967 7572 655f 7374 7261 7465  configure_strate
│ │ │ +001d3480: 6779 0a20 202d 2068 6967 685f 6469 7372  gy.  - high_disr
│ │ │ +001d3490: 7570 7469 6f6e 0a20 202d 206c 6f77 5f63  uption.  - low_c
│ │ │ +001d34a0: 6f6d 706c 6578 6974 790a 2020 2d20 6d65  omplexity.  - me
│ │ │ +001d34b0: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ +001d34c0: 2d20 6d6f 756e 745f 6f70 7469 6f6e 5f76  - mount_option_v
│ │ │ +001d34d0: 6172 5f6c 6f67 5f6e 6f64 6576 0a20 202d  ar_log_nodev.  -
│ │ │ +001d34e0: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ +001d34f0: 640a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  d.
< │ │ │ +001d3500: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Sh │ │ │ +001d35b0: 656c 6c20 7363 7269 7074 20e2 87b2 3c2f ell script ...
< │ │ │ +001d3660: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
# Remediation 
│ │ │ +001d3680: 6973 2061 7070 6c69 6361 626c 6520 6f6e  is applicable on
│ │ │ +001d3690: 6c79 2069 6e20 6365 7274 6169 6e20 706c  ly in certain pl
│ │ │ +001d36a0: 6174 666f 726d 730a 6966 2028 2021 2028  atforms.if ( ! (
│ │ │ +001d36b0: 207b 2072 706d 202d 2d71 7569 6574 202d   { rpm --quiet -
│ │ │ +001d36c0: 7120 6b65 726e 656c 203b 7d20 2661 6d70  q kernel ;} &
│ │ │ +001d36d0: 3b26 616d 703b 207b 2072 706d 202d 2d71  ;& { rpm --q
│ │ │ +001d36e0: 7569 6574 202d 7120 626f 6f74 6320 3b7d  uiet -q bootc ;}
│ │ │ +001d36f0: 2026 616d 703b 2661 6d70 3b20 7b20 2120   && { ! 
│ │ │ +001d3700: 7270 6d20 2d2d 7175 6965 7420 2d71 206f  rpm --quiet -q o
│ │ │ +001d3710: 7065 6e73 6869 6674 2d6b 7562 656c 6574  penshift-kubelet
│ │ │ +001d3720: 203b 7d20 2661 6d70 3b26 616d 703b 2028   ;} && (
│ │ │ +001d3730: 5b20 2d66 202f 7275 6e2f 6f73 7472 6565  [ -f /run/ostree
│ │ │ +001d3740: 2d62 6f6f 7465 6420 5d20 7c7c 205b 202d  -booted ] || [ -
│ │ │ +001d3750: 4c20 2f6f 7374 7265 6520 5d29 2029 2026  L /ostree ]) ) &
│ │ │ +001d3760: 616d 703b 2661 6d70 3b20 2120 2820 5b20  amp;& ! ( [ 
│ │ │ +001d3770: 2d66 202f 2e64 6f63 6b65 7265 6e76 205d  -f /.dockerenv ]
│ │ │ +001d3780: 207c 7c20 5b20 2d66 202f 7275 6e2f 2e63   || [ -f /run/.c
│ │ │ +001d3790: 6f6e 7461 696e 6572 656e 7620 5d20 2920  ontainerenv ] ) 
│ │ │ +001d37a0: 2920 2661 6d70 3b26 616d 703b 207b 2028  ) && { (
│ │ │ +001d37b0: 2066 696e 646d 6e74 202d 2d6b 6572 6e65   findmnt --kerne
│ │ │ +001d37c0: 6c20 222f 7661 722f 6c6f 6722 2026 6774  l "/var/log" >
│ │ │ +001d37d0: 3b20 2f64 6576 2f6e 756c 6c20 7c7c 2066  ; /dev/null || f
│ │ │ +001d37e0: 696e 646d 6e74 202d 2d66 7374 6162 2022  indmnt --fstab "
│ │ │ +001d37f0: 2f76 6172 2f6c 6f67 2220 2667 743b 202f  /var/log" > /
│ │ │ +001d3800: 6465 762f 6e75 6c6c 2029 3b20 7d3b 2074  dev/null ); }; t
│ │ │ +001d3810: 6865 6e0a 0a66 756e 6374 696f 6e20 7065  hen..function pe
│ │ │ +001d3820: 7266 6f72 6d5f 7265 6d65 6469 6174 696f  rform_remediatio
│ │ │ +001d3830: 6e20 7b0a 0a20 2020 200a 2020 2020 2020  n {..    .      
│ │ │ +001d3840: 2020 2320 7468 6520 6d6f 756e 7420 706f    # the mount po
│ │ │ +001d3850: 696e 7420 2f76 6172 2f6c 6f67 2068 6173  int /var/log has
│ │ │ +001d3860: 2074 6f20 6265 2064 6566 696e 6564 2069   to be defined i
│ │ │ +001d3870: 6e20 2f65 7463 2f66 7374 6162 0a20 2020  n /etc/fstab.   
│ │ │ +001d3880: 2020 2020 2023 2062 6566 6f72 6520 7468       # before th
│ │ │ +001d3890: 6973 2072 656d 6564 6961 7469 6f6e 2063  is remediation c
│ │ │ +001d38a0: 616e 2062 6520 6578 6563 7574 6564 2e20  an be executed. 
│ │ │ +001d38b0: 496e 2063 6173 6520 6974 2069 7320 6e6f  In case it is no
│ │ │ +001d38c0: 7420 6465 6669 6e65 642c 2074 6865 0a20  t defined, the. 
│ │ │ +001d38d0: 2020 2020 2020 2023 2072 656d 6564 6961         # remedia
│ │ │ +001d38e0: 7469 6f6e 2061 626f 7274 7320 616e 6420  tion aborts and 
│ │ │ +001d38f0: 6e6f 2063 6861 6e67 6573 2072 6567 6172  no changes regar
│ │ │ +001d3900: 6469 6e67 2074 6865 206d 6f75 6e74 2070  ding the mount p
│ │ │ +001d3910: 6f69 6e74 2061 7265 2064 6f6e 652e 0a20  oint are done.. 
│ │ │ +001d3920: 2020 2020 2020 206d 6f75 6e74 5f70 6f69         mount_poi
│ │ │ +001d3930: 6e74 5f6d 6174 6368 5f72 6567 6578 703d  nt_match_regexp=
│ │ │ +001d3940: 2224 2870 7269 6e74 6620 225e 5b5b 3a73  "$(printf "^[[:s
│ │ │ +001d3950: 7061 6365 3a5d 5d2a 5b5e 235d 2e2a 5b5b  pace:]]*[^#].*[[
│ │ │ +001d3960: 3a73 7061 6365 3a5d 5d25 735b 5b3a 7370  :space:]]%s[[:sp
│ │ │ +001d3970: 6163 653a 5d5d 2220 222f 7661 722f 6c6f  ace:]]" "/var/lo
│ │ │ +001d3980: 6722 2922 0a0a 2020 2020 6772 6570 2022  g")"..    grep "
│ │ │ +001d3990: 246d 6f75 6e74 5f70 6f69 6e74 5f6d 6174  $mount_point_mat
│ │ │ +001d39a0: 6368 5f72 6567 6578 7022 202d 7120 2f65  ch_regexp" -q /e
│ │ │ +001d39b0: 7463 2f66 7374 6162 205c 0a20 2020 2020  tc/fstab \.     
│ │ │ +001d39c0: 2020 207c 7c20 7b20 6563 686f 2022 5468     || { echo "Th
│ │ │ +001d39d0: 6520 6d6f 756e 7420 706f 696e 7420 272f  e mount point '/
│ │ │ +001d39e0: 7661 722f 6c6f 6727 2069 7320 6e6f 7420  var/log' is not 
│ │ │ +001d39f0: 6576 656e 2069 6e20 2f65 7463 2f66 7374  even in /etc/fst
│ │ │ +001d3a00: 6162 2c20 736f 2077 6520 6361 6e27 7420  ab, so we can't 
│ │ │ +001d3a10: 7365 7420 7570 206d 6f75 6e74 206f 7074  set up mount opt
│ │ │ +001d3a20: 696f 6e73 2220 2667 743b 2661 6d70 3b32  ions" >&2
│ │ │ +001d3a30: 3b0a 2020 2020 2020 2020 2020 2020 2020  ;.              
│ │ │ +001d3a40: 2020 6563 686f 2022 4e6f 7420 7265 6d65    echo "Not reme
│ │ │ +001d3a50: 6469 6174 696e 672c 2062 6563 6175 7365  diating, because
│ │ │ +001d3a60: 2074 6865 7265 2069 7320 6e6f 2072 6563   there is no rec
│ │ │ +001d3a70: 6f72 6420 6f66 202f 7661 722f 6c6f 6720  ord of /var/log 
│ │ │ +001d3a80: 696e 202f 6574 632f 6673 7461 6222 2026  in /etc/fstab" &
│ │ │ +001d3a90: 6774 3b26 616d 703b 323b 2072 6574 7572  gt;&2; retur
│ │ │ +001d3aa0: 6e20 313b 207d 0a20 2020 200a 0a0a 2020  n 1; }.    ...  
│ │ │ +001d3ab0: 2020 6d6f 756e 745f 706f 696e 745f 6d61    mount_point_ma
│ │ │ +001d3ac0: 7463 685f 7265 6765 7870 3d22 2428 7072  tch_regexp="$(pr
│ │ │ +001d3ad0: 696e 7466 2022 5e5b 5b3a 7370 6163 653a  intf "^[[:space:
│ │ │ +001d3ae0: 5d5d 2a5b 5e23 5d2e 2a5b 5b3a 7370 6163  ]]*[^#].*[[:spac
│ │ │ +001d3af0: 653a 5d5d 2573 5b5b 3a73 7061 6365 3a5d  e:]]%s[[:space:]
│ │ │ +001d3b00: 5d22 202f 7661 722f 6c6f 6729 220a 0a20  ]" /var/log)".. 
│ │ │ +001d3b10: 2020 2023 2049 6620 7468 6520 6d6f 756e     # If the moun
│ │ │ +001d3b20: 7420 706f 696e 7420 6973 206e 6f74 2069  t point is not i
│ │ │ +001d3b30: 6e20 2f65 7463 2f66 7374 6162 2c20 6765  n /etc/fstab, ge
│ │ │ +001d3b40: 7420 7072 6576 696f 7573 206d 6f75 6e74  t previous mount
│ │ │ +001d3b50: 206f 7074 696f 6e73 2066 726f 6d20 2f65   options from /e
│ │ │ +001d3b60: 7463 2f6d 7461 620a 2020 2020 6966 2021  tc/mtab.    if !
│ │ │ +001d3b70: 2067 7265 7020 2d71 2022 246d 6f75 6e74   grep -q "$mount
│ │ │ +001d3b80: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ +001d3b90: 6578 7022 202f 6574 632f 6673 7461 623b  exp" /etc/fstab;
│ │ │ +001d3ba0: 2074 6865 6e0a 2020 2020 2020 2020 2320   then.        # 
│ │ │ +001d3bb0: 7275 6e74 696d 6520 6f70 7473 2077 6974  runtime opts wit
│ │ │ +001d3bc0: 686f 7574 2073 6f6d 6520 6175 746f 6d61  hout some automa
│ │ │ +001d3bd0: 7469 6320 6b65 726e 656c 2f75 7365 7273  tic kernel/users
│ │ │ +001d3be0: 7061 6365 2d61 6464 6564 2064 6566 6175  pace-added defau
│ │ │ +001d3bf0: 6c74 730a 2020 2020 2020 2020 7072 6576  lts.        prev
│ │ │ +001d3c00: 696f 7573 5f6d 6f75 6e74 5f6f 7074 733d  ious_mount_opts=
│ │ │ +001d3c10: 2428 6772 6570 2022 246d 6f75 6e74 5f70  $(grep "$mount_p
│ │ │ +001d3c20: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ +001d3c30: 7022 202f 6574 632f 6d74 6162 207c 2068  p" /etc/mtab | h
│ │ │ +001d3c40: 6561 6420 2d31 207c 2020 6177 6b20 277b  ead -1 |  awk '{
│ │ │ +001d3c50: 7072 696e 7420 2434 7d27 205c 0a20 2020  print $4}' \.   
│ │ │ +001d3c60: 2020 2020 2020 2020 2020 2020 2020 2020                  
│ │ │ +001d3c70: 207c 2073 6564 202d 4520 2273 2f28 7277   | sed -E "s/(rw
│ │ │ +001d3c80: 7c64 6566 6175 6c74 737c 7365 636c 6162  |defaults|seclab
│ │ │ +001d3c90: 656c 7c6e 6f64 6576 2928 2c7c 2429 2f2f  el|nodev)(,|$)//
│ │ │ +001d3ca0: 673b 732f 2c24 2f2f 2229 0a20 2020 2020  g;s/,$//").     
│ │ │ +001d3cb0: 2020 205b 2022 2470 7265 7669 6f75 735f     [ "$previous_
│ │ │ +001d3cc0: 6d6f 756e 745f 6f70 7473 2220 5d20 2661  mount_opts" ] &a
│ │ │ +001d3cd0: 6d70 3b26 616d 703b 2070 7265 7669 6f75  mp;& previou
│ │ │ +001d3ce0: 735f 6d6f 756e 745f 6f70 7473 2b3d 222c  s_mount_opts+=",
│ │ │ +001d3cf0: 220a 2020 2020 2020 2020 2320 496e 2069  ".        # In i
│ │ │ +001d3d00: 736f 3936 3630 2066 696c 6573 7973 7465  so9660 filesyste
│ │ │ +001d3d10: 6d73 206d 7461 6220 636f 756c 6420 6465  ms mtab could de
│ │ │ +001d3d20: 7363 7269 6265 2061 2022 626c 6f63 6b73  scribe a "blocks
│ │ │ +001d3d30: 697a 6522 2076 616c 7565 2c20 7468 6973  ize" value, this
│ │ │ +001d3d40: 2073 686f 756c 6420 6265 2072 6566 6c65   should be refle
│ │ │ +001d3d50: 6374 6564 2069 6e0a 2020 2020 2020 2020  cted in.        
│ │ │ +001d3d60: 2320 6673 7461 6220 6173 2022 626c 6f63  # fstab as "bloc
│ │ │ +001d3d70: 6b22 2e20 2054 6865 206e 6578 7420 7661  k".  The next va
│ │ │ +001d3d80: 7269 6162 6c65 2069 7320 746f 2073 6174  riable is to sat
│ │ │ +001d3d90: 6973 6679 2073 6865 6c6c 6368 6563 6b20  isfy shellcheck 
│ │ │ +001d3da0: 5343 3230 3530 2e0a 2020 2020 2020 2020  SC2050..        
│ │ │ +001d3db0: 6673 5f74 7970 653d 2222 0a20 2020 2020  fs_type="".     
│ │ │ +001d3dc0: 2020 2069 6620 5b20 2022 2466 735f 7479     if [  "$fs_ty
│ │ │ +001d3dd0: 7065 2220 3d3d 2022 6973 6f39 3636 3022  pe" == "iso9660"
│ │ │ +001d3de0: 205d 203b 2074 6865 6e0a 2020 2020 2020   ] ; then.      
│ │ │ +001d3df0: 2020 2020 2020 7072 6576 696f 7573 5f6d        previous_m
│ │ │ +001d3e00: 6f75 6e74 5f6f 7074 733d 2428 7365 6420  ount_opts=$(sed 
│ │ │ +001d3e10: 2773 2f62 6c6f 636b 7369 7a65 3d2f 626c  's/blocksize=/bl
│ │ │ +001d3e20: 6f63 6b3d 2f27 2026 6c74 3b26 6c74 3b26  ock=/' <<&
│ │ │ +001d3e30: 6c74 3b20 2224 7072 6576 696f 7573 5f6d  lt; "$previous_m
│ │ │ +001d3e40: 6f75 6e74 5f6f 7074 7322 290a 2020 2020  ount_opts").    
│ │ │ +001d3e50: 2020 2020 6669 0a20 2020 2020 2020 2065      fi.        e
│ │ │ +001d3e60: 6368 6f20 2220 2f76 6172 2f6c 6f67 2020  cho " /var/log  
│ │ │ +001d3e70: 6465 6661 756c 7473 2c24 7b70 7265 7669  defaults,${previ
│ │ │ +001d3e80: 6f75 735f 6d6f 756e 745f 6f70 7473 7d6e  ous_mount_opts}n
│ │ │ +001d3e90: 6f64 6576 2030 2030 2220 2667 743b 2667  odev 0 0" >&g
│ │ │ +001d3ea0: 743b 202f 6574 632f 6673 7461 620a 2020  t; /etc/fstab.  
│ │ │ +001d3eb0: 2020 2320 4966 2074 6865 206d 6f75 6e74    # If the mount
│ │ │ +001d3ec0: 5f6f 7074 206f 7074 696f 6e20 6973 206e  _opt option is n
│ │ │ +001d3ed0: 6f74 2061 6c72 6561 6479 2069 6e20 7468  ot already in th
│ │ │ +001d3ee0: 6520 6d6f 756e 7420 706f 696e 7427 7320  e mount point's 
│ │ │ +001d3ef0: 2f65 7463 2f66 7374 6162 2065 6e74 7279  /etc/fstab entry
│ │ │ +001d3f00: 2c20 6164 6420 6974 0a20 2020 2065 6c69  , add it.    eli
│ │ │ +001d3f10: 6620 2120 6772 6570 2022 246d 6f75 6e74  f ! grep "$mount
│ │ │ +001d3f20: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ +001d3f30: 6578 7022 202f 6574 632f 6673 7461 6220  exp" /etc/fstab 
│ │ │ +001d3f40: 7c20 6772 6570 202d 7120 226e 6f64 6576  | grep -q "nodev
│ │ │ +001d3f50: 223b 2074 6865 6e0a 2020 2020 2020 2020  "; then.        
│ │ │ +001d3f60: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ +001d3f70: 7074 733d 2428 6772 6570 2022 246d 6f75  pts=$(grep "$mou
│ │ │ +001d3f80: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ +001d3f90: 6567 6578 7022 202f 6574 632f 6673 7461  egexp" /etc/fsta
│ │ │ +001d3fa0: 6220 7c20 6177 6b20 277b 7072 696e 7420  b | awk '{print 
│ │ │ +001d3fb0: 2434 7d27 290a 2020 2020 2020 2020 7365  $4}').        se
│ │ │ +001d3fc0: 6420 2d69 2022 737c 5c28 247b 6d6f 756e  d -i "s|\(${moun
│ │ │ +001d3fd0: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ +001d3fe0: 6765 7870 7d2e 2a24 7b70 7265 7669 6f75  gexp}.*${previou
│ │ │ +001d3ff0: 735f 6d6f 756e 745f 6f70 7473 7d5c 297c  s_mount_opts}\)|
│ │ │ +001d4000: 5c31 2c6e 6f64 6576 7c22 202f 6574 632f  \1,nodev|" /etc/
│ │ │ +001d4010: 6673 7461 620a 2020 2020 6669 0a0a 0a20  fstab.    fi... 
│ │ │ +001d4020: 2020 2069 6620 6d6b 6469 7220 2d70 2022     if mkdir -p "
│ │ │ +001d4030: 2f76 6172 2f6c 6f67 223b 2074 6865 6e0a  /var/log"; then.
│ │ │ +001d4040: 2020 2020 2020 2020 6966 206d 6f75 6e74          if mount
│ │ │ +001d4050: 706f 696e 7420 2d71 2022 2f76 6172 2f6c  point -q "/var/l
│ │ │ +001d4060: 6f67 223b 2074 6865 6e0a 2020 2020 2020  og"; then.      
│ │ │ +001d4070: 2020 2020 2020 6d6f 756e 7420 2d6f 2072        mount -o r
│ │ │ +001d4080: 656d 6f75 6e74 202d 2d74 6172 6765 7420  emount --target 
│ │ │ +001d4090: 222f 7661 722f 6c6f 6722 0a20 2020 2020  "/var/log".     
│ │ │ +001d40a0: 2020 2066 690a 2020 2020 6669 0a7d 0a0a     fi.    fi.}..
│ │ │ +001d40b0: 7065 7266 6f72 6d5f 7265 6d65 6469 6174  perform_remediat
│ │ │ +001d40c0: 696f 6e0a 0a65 6c73 650a 2020 2020 2667  ion..else.    &g
│ │ │ +001d40d0: 743b 2661 6d70 3b32 2065 6368 6f20 2752  t;&2 echo 'R
│ │ │ +001d40e0: 656d 6564 6961 7469 6f6e 2069 7320 6e6f  emediation is no
│ │ │ +001d40f0: 7420 6170 706c 6963 6162 6c65 2c20 6e6f  t applicable, no
│ │ │ +001d4100: 7468 696e 6720 7761 7320 646f 6e65 270a  thing was done'.
│ │ │ +001d4110: 6669 0a3c 2f63 6f64 653e 3c2f 7072 653e  fi.
│ │ │ +001d4120: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22 Remediation A │ │ │ +001d41d0: 6e61 636f 6e64 6120 736e 6970 7065 7420 naconda snippet │ │ │ +001d41e0: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
high │ │ │ +001d42b0: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c
│ │ │ +001d3640: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +001d3650: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Complexity: │ │ │ +001d4270: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Di │ │ │ +001d4290: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:
Reboot:< │ │ │ +001d42c0: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>false
S │ │ │ +001d42e0: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:enable
.part /var/l
│ │ │ +001d4320: 6f67 202d 2d6d 6f75 6e74 6f70 7469 6f6e  og --mountoption
│ │ │ +001d4330: 733d 226e 6f64 6576 220a 3c2f 636f 6465  s="nodev".
Remediation A │ │ │ -001d4f70: 6e61 636f 6e64 6120 736e 6970 7065 7420 naconda snippet │ │ │ -001d4f80: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
Complexity: │ │ │ -001d5010: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ -001d5030: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:high │ │ │ -001d5050: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ -001d5060: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ -001d5080: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:enable
.part /var/l
│ │ │ -001d50c0: 6f67 202d 2d6d 6f75 6e74 6f70 7469 6f6e  og --mountoption
│ │ │ -001d50d0: 733d 226e 6f65 7865 6322 0a3c 2f63 6f64  s="noexec".
Remed │ │ │ -001d5190: 6961 7469 6f6e 2041 6e73 6962 6c65 2073 iation Ansible s │ │ │ -001d51a0: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
- 
│ │ │ -001d52e0: 6e61 6d65 3a20 4761 7468 6572 2074 6865  name: Gather the
│ │ │ -001d52f0: 2070 6163 6b61 6765 2066 6163 7473 0a20   package facts. 
│ │ │ -001d5300: 2070 6163 6b61 6765 5f66 6163 7473 3a0a   package_facts:.
│ │ │ -001d5310: 2020 2020 6d61 6e61 6765 723a 2061 7574      manager: aut
│ │ │ -001d5320: 6f0a 2020 7461 6773 3a0a 2020 2d20 4e49  o.  tags:.  - NI
│ │ │ -001d5330: 5354 2d38 3030 2d35 332d 4143 2d36 0a20  ST-800-53-AC-6. 
│ │ │ -001d5340: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ -001d5350: 432d 3628 3129 0a20 202d 204e 4953 542d  C-6(1).  - NIST-
│ │ │ -001d5360: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ -001d5370: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -001d5380: 4d2d 3728 6129 0a20 202d 204e 4953 542d  M-7(a).  - NIST-
│ │ │ -001d5390: 3830 302d 3533 2d43 4d2d 3728 6229 0a20  800-53-CM-7(b). 
│ │ │ -001d53a0: 202d 204e 4953 542d 3830 302d 3533 2d4d   - NIST-800-53-M
│ │ │ -001d53b0: 502d 370a 2020 2d20 636f 6e66 6967 7572  P-7.  - configur
│ │ │ -001d53c0: 655f 7374 7261 7465 6779 0a20 202d 2068  e_strategy.  - h
│ │ │ -001d53d0: 6967 685f 6469 7372 7570 7469 6f6e 0a20  igh_disruption. 
│ │ │ -001d53e0: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ -001d53f0: 790a 2020 2d20 6d65 6469 756d 5f73 6576  y.  - medium_sev
│ │ │ -001d5400: 6572 6974 790a 2020 2d20 6d6f 756e 745f  erity.  - mount_
│ │ │ -001d5410: 6f70 7469 6f6e 5f76 6172 5f6c 6f67 5f6e  option_var_log_n
│ │ │ -001d5420: 6f65 7865 630a 2020 2d20 6e6f 5f72 6562  oexec.  - no_reb
│ │ │ -001d5430: 6f6f 745f 6e65 6564 6564 0a0a 2d20 6e61  oot_needed..- na
│ │ │ -001d5440: 6d65 3a20 2741 6464 206e 6f65 7865 6320  me: 'Add noexec 
│ │ │ -001d5450: 4f70 7469 6f6e 2074 6f20 2f76 6172 2f6c  Option to /var/l
│ │ │ -001d5460: 6f67 3a20 4368 6563 6b20 696e 666f 726d  og: Check inform
│ │ │ -001d5470: 6174 696f 6e20 6173 736f 6369 6174 6564  ation associated
│ │ │ -001d5480: 2074 6f20 6d6f 756e 7470 6f69 6e74 270a   to mountpoint'.
│ │ │ -001d5490: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ -001d54a0: 6e2e 636f 6d6d 616e 643a 2066 696e 646d  n.command: findm
│ │ │ -001d54b0: 6e74 202d 2d66 7374 6162 2027 2f76 6172  nt --fstab '/var
│ │ │ -001d54c0: 2f6c 6f67 270a 2020 7265 6769 7374 6572  /log'.  register
│ │ │ -001d54d0: 3a20 6465 7669 6365 5f6e 616d 650a 2020  : device_name.  
│ │ │ -001d54e0: 6661 696c 6564 5f77 6865 6e3a 2064 6576  failed_when: dev
│ │ │ -001d54f0: 6963 655f 6e61 6d65 2e72 6320 2667 743b  ice_name.rc >
│ │ │ -001d5500: 2031 0a20 2063 6861 6e67 6564 5f77 6865   1.  changed_whe
│ │ │ -001d5510: 6e3a 2066 616c 7365 0a20 2063 6865 636b  n: false.  check
│ │ │ -001d5520: 5f6d 6f64 653a 2066 616c 7365 0a20 2077  _mode: false.  w
│ │ │ -001d5530: 6865 6e3a 0a20 202d 2028 206e 6f74 2028  hen:.  - ( not (
│ │ │ -001d5540: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ -001d5550: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001d5560: 6765 7320 616e 6420 2262 6f6f 7463 2220  ges and "bootc" 
│ │ │ -001d5570: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001d5580: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ -001d5590: 6420 6e6f 7420 226f 7065 6e73 6869 6674  d not "openshift
│ │ │ -001d55a0: 2d6b 7562 656c 6574 2220 696e 2061 6e73  -kubelet" in ans
│ │ │ -001d55b0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001d55c0: 6765 7320 616e 6420 226f 7374 7265 6522  ges and "ostree"
│ │ │ -001d55d0: 2069 6e20 616e 7369 626c 655f 7072 6f63   in ansible_proc
│ │ │ -001d55e0: 5f63 6d64 6c69 6e65 0a20 2020 2029 2061  _cmdline.    ) a
│ │ │ -001d55f0: 6e64 206e 6f74 2028 2061 6e73 6962 6c65  nd not ( ansible
│ │ │ -001d5600: 5f76 6972 7475 616c 697a 6174 696f 6e5f  _virtualization_
│ │ │ -001d5610: 7479 7065 2069 6e20 5b22 646f 636b 6572  type in ["docker
│ │ │ -001d5620: 222c 2022 6c78 6322 2c20 226f 7065 6e76  ", "lxc", "openv
│ │ │ -001d5630: 7a22 2c20 2270 6f64 6d61 6e22 2c0a 2020  z", "podman",.  
│ │ │ -001d5640: 2020 2263 6f6e 7461 696e 6572 225d 2029    "container"] )
│ │ │ -001d5650: 2029 0a20 202d 2027 222f 7661 722f 6c6f   ).  - '"/var/lo
│ │ │ -001d5660: 6722 2069 6e20 616e 7369 626c 655f 6d6f  g" in ansible_mo
│ │ │ -001d5670: 756e 7473 207c 206d 6170 2861 7474 7269  unts | map(attri
│ │ │ -001d5680: 6275 7465 3d22 6d6f 756e 7422 2920 7c20  bute="mount") | 
│ │ │ -001d5690: 6c69 7374 270a 2020 7461 6773 3a0a 2020  list'.  tags:.  
│ │ │ -001d56a0: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ -001d56b0: 2d36 0a20 202d 204e 4953 542d 3830 302d  -6.  - NIST-800-
│ │ │ -001d56c0: 3533 2d41 432d 3628 3129 0a20 202d 204e  53-AC-6(1).  - N
│ │ │ -001d56d0: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ -001d56e0: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ -001d56f0: 3533 2d43 4d2d 3728 6129 0a20 202d 204e  53-CM-7(a).  - N
│ │ │ -001d5700: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ -001d5710: 6229 0a20 202d 204e 4953 542d 3830 302d  b).  - NIST-800-
│ │ │ -001d5720: 3533 2d4d 502d 370a 2020 2d20 636f 6e66  53-MP-7.  - conf
│ │ │ -001d5730: 6967 7572 655f 7374 7261 7465 6779 0a20  igure_strategy. 
│ │ │ -001d5740: 202d 2068 6967 685f 6469 7372 7570 7469   - high_disrupti
│ │ │ -001d5750: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c  on.  - low_compl
│ │ │ -001d5760: 6578 6974 790a 2020 2d20 6d65 6469 756d  exity.  - medium
│ │ │ -001d5770: 5f73 6576 6572 6974 790a 2020 2d20 6d6f  _severity.  - mo
│ │ │ -001d5780: 756e 745f 6f70 7469 6f6e 5f76 6172 5f6c  unt_option_var_l
│ │ │ -001d5790: 6f67 5f6e 6f65 7865 630a 2020 2d20 6e6f  og_noexec.  - no
│ │ │ -001d57a0: 5f72 6562 6f6f 745f 6e65 6564 6564 0a0a  _reboot_needed..
│ │ │ -001d57b0: 2d20 6e61 6d65 3a20 2741 6464 206e 6f65  - name: 'Add noe
│ │ │ -001d57c0: 7865 6320 4f70 7469 6f6e 2074 6f20 2f76  xec Option to /v
│ │ │ -001d57d0: 6172 2f6c 6f67 3a20 4372 6561 7465 206d  ar/log: Create m
│ │ │ -001d57e0: 6f75 6e74 5f69 6e66 6f20 6469 6374 696f  ount_info dictio
│ │ │ -001d57f0: 6e61 7279 2076 6172 6961 626c 6527 0a20  nary variable'. 
│ │ │ -001d5800: 2073 6574 5f66 6163 743a 0a20 2020 206d   set_fact:.    m
│ │ │ -001d5810: 6f75 6e74 5f69 6e66 6f3a 2027 7b7b 206d  ount_info: '{{ m
│ │ │ -001d5820: 6f75 6e74 5f69 6e66 6f7c 6465 6661 756c  ount_info|defaul
│ │ │ -001d5830: 7428 7b7d 297c 636f 6d62 696e 6528 7b69  t({})|combine({i
│ │ │ -001d5840: 7465 6d2e 303a 2069 7465 6d2e 317d 2920  tem.0: item.1}) 
│ │ │ -001d5850: 7d7d 270a 2020 7769 7468 5f74 6f67 6574  }}'.  with_toget
│ │ │ -001d5860: 6865 723a 0a20 202d 2027 7b7b 2064 6576  her:.  - '{{ dev
│ │ │ -001d5870: 6963 655f 6e61 6d65 2e73 7464 6f75 745f  ice_name.stdout_
│ │ │ -001d5880: 6c69 6e65 735b 305d 2e73 706c 6974 2829  lines[0].split()
│ │ │ -001d5890: 207c 206d 6170 2827 276c 6f77 6572 2727   | map(''lower''
│ │ │ -001d58a0: 2920 7c20 6c69 7374 207d 7d27 0a20 202d  ) | list }}'.  -
│ │ │ -001d58b0: 2027 7b7b 2064 6576 6963 655f 6e61 6d65   '{{ device_name
│ │ │ -001d58c0: 2e73 7464 6f75 745f 6c69 6e65 735b 315d  .stdout_lines[1]
│ │ │ -001d58d0: 2e73 706c 6974 2829 207c 206c 6973 7420  .split() | list 
│ │ │ -001d58e0: 7d7d 270a 2020 7768 656e 3a0a 2020 2d20  }}'.  when:.  - 
│ │ │ -001d58f0: 2820 6e6f 7420 2820 226b 6572 6e65 6c22  ( not ( "kernel"
│ │ │ -001d5900: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001d5910: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ -001d5920: 626f 6f74 6322 2069 6e20 616e 7369 626c  bootc" in ansibl
│ │ │ -001d5930: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001d5940: 0a20 2020 2061 6e64 206e 6f74 2022 6f70  .    and not "op
│ │ │ -001d5950: 656e 7368 6966 742d 6b75 6265 6c65 7422  enshift-kubelet"
│ │ │ -001d5960: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001d5970: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ -001d5980: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ -001d5990: 6c65 5f70 726f 635f 636d 646c 696e 650a  le_proc_cmdline.
│ │ │ -001d59a0: 2020 2020 2920 616e 6420 6e6f 7420 2820      ) and not ( 
│ │ │ -001d59b0: 616e 7369 626c 655f 7669 7274 7561 6c69  ansible_virtuali
│ │ │ -001d59c0: 7a61 7469 6f6e 5f74 7970 6520 696e 205b  zation_type in [
│ │ │ -001d59d0: 2264 6f63 6b65 7222 2c20 226c 7863 222c  "docker", "lxc",
│ │ │ -001d59e0: 2022 6f70 656e 767a 222c 2022 706f 646d   "openvz", "podm
│ │ │ -001d59f0: 616e 222c 0a20 2020 2022 636f 6e74 6169  an",.    "contai
│ │ │ -001d5a00: 6e65 7222 5d20 2920 290a 2020 2d20 2722  ner"] ) ).  - '"
│ │ │ -001d5a10: 2f76 6172 2f6c 6f67 2220 696e 2061 6e73  /var/log" in ans
│ │ │ -001d5a20: 6962 6c65 5f6d 6f75 6e74 7320 7c20 6d61  ible_mounts | ma
│ │ │ -001d5a30: 7028 6174 7472 6962 7574 653d 226d 6f75  p(attribute="mou
│ │ │ -001d5a40: 6e74 2229 207c 206c 6973 7427 0a20 202d  nt") | list'.  -
│ │ │ -001d5a50: 2064 6576 6963 655f 6e61 6d65 2e73 7464   device_name.std
│ │ │ -001d5a60: 6f75 7420 6973 2064 6566 696e 6564 2061  out is defined a
│ │ │ -001d5a70: 6e64 2064 6576 6963 655f 6e61 6d65 2e73  nd device_name.s
│ │ │ -001d5a80: 7464 6f75 745f 6c69 6e65 7320 6973 2064  tdout_lines is d
│ │ │ -001d5a90: 6566 696e 6564 0a20 202d 2028 6465 7669  efined.  - (devi
│ │ │ -001d5aa0: 6365 5f6e 616d 652e 7374 646f 7574 207c  ce_name.stdout |
│ │ │ -001d5ab0: 206c 656e 6774 6820 2667 743b 2030 290a   length > 0).
│ │ │ -001d5ac0: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ -001d5ad0: 2d38 3030 2d35 332d 4143 2d36 0a20 202d  -800-53-AC-6.  -
│ │ │ -001d5ae0: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ -001d5af0: 3628 3129 0a20 202d 204e 4953 542d 3830  6(1).  - NIST-80
│ │ │ -001d5b00: 302d 3533 2d43 4d2d 3628 6129 0a20 202d  0-53-CM-6(a).  -
│ │ │ -001d5b10: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -001d5b20: 3728 6129 0a20 202d 204e 4953 542d 3830  7(a).  - NIST-80
│ │ │ -001d5b30: 302d 3533 2d43 4d2d 3728 6229 0a20 202d  0-53-CM-7(b).  -
│ │ │ -001d5b40: 204e 4953 542d 3830 302d 3533 2d4d 502d   NIST-800-53-MP-
│ │ │ -001d5b50: 370a 2020 2d20 636f 6e66 6967 7572 655f  7.  - configure_
│ │ │ -001d5b60: 7374 7261 7465 6779 0a20 202d 2068 6967  strategy.  - hig
│ │ │ -001d5b70: 685f 6469 7372 7570 7469 6f6e 0a20 202d  h_disruption.  -
│ │ │ -001d5b80: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ -001d5b90: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ -001d5ba0: 6974 790a 2020 2d20 6d6f 756e 745f 6f70  ity.  - mount_op
│ │ │ -001d5bb0: 7469 6f6e 5f76 6172 5f6c 6f67 5f6e 6f65  tion_var_log_noe
│ │ │ -001d5bc0: 7865 630a 2020 2d20 6e6f 5f72 6562 6f6f  xec.  - no_reboo
│ │ │ -001d5bd0: 745f 6e65 6564 6564 0a0a 2d20 6e61 6d65  t_needed..- name
│ │ │ -001d5be0: 3a20 2741 6464 206e 6f65 7865 6320 4f70  : 'Add noexec Op
│ │ │ -001d5bf0: 7469 6f6e 2074 6f20 2f76 6172 2f6c 6f67  tion to /var/log
│ │ │ -001d5c00: 3a20 4966 202f 7661 722f 6c6f 6720 6e6f  : If /var/log no
│ │ │ -001d5c10: 7420 6d6f 756e 7465 642c 2063 7261 6674  t mounted, craft
│ │ │ -001d5c20: 206d 6f75 6e74 5f69 6e66 6f0a 2020 2020   mount_info.    
│ │ │ -001d5c30: 6d61 6e75 616c 6c79 270a 2020 7365 745f  manually'.  set_
│ │ │ -001d5c40: 6661 6374 3a0a 2020 2020 6d6f 756e 745f  fact:.    mount_
│ │ │ -001d5c50: 696e 666f 3a20 277b 7b20 6d6f 756e 745f  info: '{{ mount_
│ │ │ -001d5c60: 696e 666f 7c64 6566 6175 6c74 287b 7d29  info|default({})
│ │ │ -001d5c70: 7c63 6f6d 6269 6e65 287b 6974 656d 2e30  |combine({item.0
│ │ │ -001d5c80: 3a20 6974 656d 2e31 7d29 207d 7d27 0a20  : item.1}) }}'. 
│ │ │ -001d5c90: 2077 6974 685f 746f 6765 7468 6572 3a0a   with_together:.
│ │ │ -001d5ca0: 2020 2d20 2d20 7461 7267 6574 0a20 2020    - - target.   
│ │ │ -001d5cb0: 202d 2073 6f75 7263 650a 2020 2020 2d20   - source.    - 
│ │ │ -001d5cc0: 6673 7479 7065 0a20 2020 202d 206f 7074  fstype.    - opt
│ │ │ -001d5cd0: 696f 6e73 0a20 202d 202d 202f 7661 722f  ions.  - - /var/
│ │ │ -001d5ce0: 6c6f 670a 2020 2020 2d20 2727 0a20 2020  log.    - ''.   
│ │ │ -001d5cf0: 202d 2027 270a 2020 2020 2d20 6465 6661   - ''.    - defa
│ │ │ -001d5d00: 756c 7473 0a20 2077 6865 6e3a 0a20 202d  ults.  when:.  -
│ │ │ -001d5d10: 2028 206e 6f74 2028 2022 6b65 726e 656c   ( not ( "kernel
│ │ │ -001d5d20: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001d5d30: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ -001d5d40: 2262 6f6f 7463 2220 696e 2061 6e73 6962  "bootc" in ansib
│ │ │ -001d5d50: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -001d5d60: 730a 2020 2020 616e 6420 6e6f 7420 226f  s.    and not "o
│ │ │ -001d5d70: 7065 6e73 6869 6674 2d6b 7562 656c 6574  penshift-kubelet
│ │ │ -001d5d80: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001d5d90: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ -001d5da0: 226f 7374 7265 6522 2069 6e20 616e 7369  "ostree" in ansi
│ │ │ -001d5db0: 626c 655f 7072 6f63 5f63 6d64 6c69 6e65  ble_proc_cmdline
│ │ │ -001d5dc0: 0a20 2020 2029 2061 6e64 206e 6f74 2028  .    ) and not (
│ │ │ -001d5dd0: 2061 6e73 6962 6c65 5f76 6972 7475 616c   ansible_virtual
│ │ │ -001d5de0: 697a 6174 696f 6e5f 7479 7065 2069 6e20  ization_type in 
│ │ │ -001d5df0: 5b22 646f 636b 6572 222c 2022 6c78 6322  ["docker", "lxc"
│ │ │ -001d5e00: 2c20 226f 7065 6e76 7a22 2c20 2270 6f64  , "openvz", "pod
│ │ │ -001d5e10: 6d61 6e22 2c0a 2020 2020 2263 6f6e 7461  man",.    "conta
│ │ │ -001d5e20: 696e 6572 225d 2029 2029 0a20 202d 2027  iner"] ) ).  - '
│ │ │ -001d5e30: 222f 7661 722f 6c6f 6722 2069 6e20 616e  "/var/log" in an
│ │ │ -001d5e40: 7369 626c 655f 6d6f 756e 7473 207c 206d  sible_mounts | m
│ │ │ -001d5e50: 6170 2861 7474 7269 6275 7465 3d22 6d6f  ap(attribute="mo
│ │ │ -001d5e60: 756e 7422 2920 7c20 6c69 7374 270a 2020  unt") | list'.  
│ │ │ -001d5e70: 2d20 2822 2d2d 6673 7461 6222 207c 206c  - ("--fstab" | l
│ │ │ -001d5e80: 656e 6774 6820 3d3d 2030 290a 2020 2d20  ength == 0).  - 
│ │ │ -001d5e90: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ -001d5ea0: 7574 2069 7320 6465 6669 6e65 6420 616e  ut is defined an
│ │ │ -001d5eb0: 6420 6465 7669 6365 5f6e 616d 652e 7374  d device_name.st
│ │ │ -001d5ec0: 646f 7574 5f6c 696e 6573 2069 7320 6465  dout_lines is de
│ │ │ -001d5ed0: 6669 6e65 640a 2020 2d20 2864 6576 6963  fined.  - (devic
│ │ │ -001d5ee0: 655f 6e61 6d65 2e73 7464 6f75 7420 7c20  e_name.stdout | 
│ │ │ -001d5ef0: 6c65 6e67 7468 203d 3d20 3029 0a20 2074  length == 0).  t
│ │ │ -001d5f00: 6167 733a 0a20 202d 204e 4953 542d 3830  ags:.  - NIST-80
│ │ │ -001d5f10: 302d 3533 2d41 432d 360a 2020 2d20 4e49  0-53-AC-6.  - NI
│ │ │ -001d5f20: 5354 2d38 3030 2d35 332d 4143 2d36 2831  ST-800-53-AC-6(1
│ │ │ -001d5f30: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -001d5f40: 332d 434d 2d36 2861 290a 2020 2d20 4e49  3-CM-6(a).  - NI
│ │ │ -001d5f50: 5354 2d38 3030 2d35 332d 434d 2d37 2861  ST-800-53-CM-7(a
│ │ │ -001d5f60: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -001d5f70: 332d 434d 2d37 2862 290a 2020 2d20 4e49  3-CM-7(b).  - NI
│ │ │ -001d5f80: 5354 2d38 3030 2d35 332d 4d50 2d37 0a20  ST-800-53-MP-7. 
│ │ │ -001d5f90: 202d 2063 6f6e 6669 6775 7265 5f73 7472   - configure_str
│ │ │ -001d5fa0: 6174 6567 790a 2020 2d20 6869 6768 5f64  ategy.  - high_d
│ │ │ -001d5fb0: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ -001d5fc0: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ -001d5fd0: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ -001d5fe0: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f  .  - mount_optio
│ │ │ -001d5ff0: 6e5f 7661 725f 6c6f 675f 6e6f 6578 6563  n_var_log_noexec
│ │ │ -001d6000: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ -001d6010: 6565 6465 640a 0a2d 206e 616d 653a 2027  eeded..- name: '
│ │ │ -001d6020: 4164 6420 6e6f 6578 6563 204f 7074 696f  Add noexec Optio
│ │ │ -001d6030: 6e20 746f 202f 7661 722f 6c6f 673a 204d  n to /var/log: M
│ │ │ -001d6040: 616b 6520 7375 7265 206e 6f65 7865 6320  ake sure noexec 
│ │ │ -001d6050: 6f70 7469 6f6e 2069 7320 7061 7274 206f  option is part o
│ │ │ -001d6060: 6620 7468 6520 746f 0a20 2020 202f 7661  f the to.    /va
│ │ │ -001d6070: 722f 6c6f 6720 6f70 7469 6f6e 7327 0a20  r/log options'. 
│ │ │ -001d6080: 2073 6574 5f66 6163 743a 0a20 2020 206d   set_fact:.    m
│ │ │ -001d6090: 6f75 6e74 5f69 6e66 6f3a 2027 7b7b 206d  ount_info: '{{ m
│ │ │ -001d60a0: 6f75 6e74 5f69 6e66 6f20 7c20 636f 6d62  ount_info | comb
│ │ │ -001d60b0: 696e 6528 207b 2727 6f70 7469 6f6e 7327  ine( {''options'
│ │ │ -001d60c0: 273a 2727 2727 7e28 6d6f 756e 745f 696e  ':''''~(mount_in
│ │ │ -001d60d0: 666f 2e6f 7074 696f 6e73 207c 0a20 2020  fo.options |.   
│ │ │ -001d60e0: 2020 2064 6566 6175 6c74 2827 2727 2729     default('''')
│ │ │ -001d60f0: 297e 2827 272c 2727 2069 6620 286d 6f75  )~('','' if (mou
│ │ │ -001d6100: 6e74 5f69 6e66 6f2e 6f70 7469 6f6e 7320  nt_info.options 
│ │ │ -001d6110: 7c20 6465 6661 756c 7428 2727 2727 2929  | default(''''))
│ │ │ -001d6120: 2065 6c73 6520 2727 2727 297e 2727 6e6f   else '''')~''no
│ │ │ -001d6130: 6578 6563 2727 0a20 2020 2020 207d 2920  exec''.      }) 
│ │ │ -001d6140: 7d7d 270a 2020 7768 656e 3a0a 2020 2d20  }}'.  when:.  - 
│ │ │ -001d6150: 2820 6e6f 7420 2820 226b 6572 6e65 6c22  ( not ( "kernel"
│ │ │ -001d6160: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001d6170: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ -001d6180: 626f 6f74 6322 2069 6e20 616e 7369 626c  bootc" in ansibl
│ │ │ -001d6190: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001d61a0: 0a20 2020 2061 6e64 206e 6f74 2022 6f70  .    and not "op
│ │ │ -001d61b0: 656e 7368 6966 742d 6b75 6265 6c65 7422  enshift-kubelet"
│ │ │ -001d61c0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001d61d0: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ -001d61e0: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ -001d61f0: 6c65 5f70 726f 635f 636d 646c 696e 650a  le_proc_cmdline.
│ │ │ -001d6200: 2020 2020 2920 616e 6420 6e6f 7420 2820      ) and not ( 
│ │ │ -001d6210: 616e 7369 626c 655f 7669 7274 7561 6c69  ansible_virtuali
│ │ │ -001d6220: 7a61 7469 6f6e 5f74 7970 6520 696e 205b  zation_type in [
│ │ │ -001d6230: 2264 6f63 6b65 7222 2c20 226c 7863 222c  "docker", "lxc",
│ │ │ -001d6240: 2022 6f70 656e 767a 222c 2022 706f 646d   "openvz", "podm
│ │ │ -001d6250: 616e 222c 0a20 2020 2022 636f 6e74 6169  an",.    "contai
│ │ │ -001d6260: 6e65 7222 5d20 2920 290a 2020 2d20 2722  ner"] ) ).  - '"
│ │ │ -001d6270: 2f76 6172 2f6c 6f67 2220 696e 2061 6e73  /var/log" in ans
│ │ │ -001d6280: 6962 6c65 5f6d 6f75 6e74 7320 7c20 6d61  ible_mounts | ma
│ │ │ -001d6290: 7028 6174 7472 6962 7574 653d 226d 6f75  p(attribute="mou
│ │ │ -001d62a0: 6e74 2229 207c 206c 6973 7427 0a20 202d  nt") | list'.  -
│ │ │ -001d62b0: 206d 6f75 6e74 5f69 6e66 6f20 6973 2064   mount_info is d
│ │ │ -001d62c0: 6566 696e 6564 2061 6e64 2022 6e6f 6578  efined and "noex
│ │ │ -001d62d0: 6563 2220 6e6f 7420 696e 2028 6d6f 756e  ec" not in (moun
│ │ │ -001d62e0: 745f 696e 666f 2e6f 7074 696f 6e73 207c  t_info.options |
│ │ │ -001d62f0: 2064 6566 6175 6c74 2827 2729 290a 2020   default('')).  
│ │ │ -001d6300: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38  tags:.  - NIST-8
│ │ │ -001d6310: 3030 2d35 332d 4143 2d36 0a20 202d 204e  00-53-AC-6.  - N
│ │ │ -001d6320: 4953 542d 3830 302d 3533 2d41 432d 3628  IST-800-53-AC-6(
│ │ │ -001d6330: 3129 0a20 202d 204e 4953 542d 3830 302d  1).  - NIST-800-
│ │ │ -001d6340: 3533 2d43 4d2d 3628 6129 0a20 202d 204e  53-CM-6(a).  - N
│ │ │ -001d6350: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ -001d6360: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ -001d6370: 3533 2d43 4d2d 3728 6229 0a20 202d 204e  53-CM-7(b).  - N
│ │ │ -001d6380: 4953 542d 3830 302d 3533 2d4d 502d 370a  IST-800-53-MP-7.
│ │ │ -001d6390: 2020 2d20 636f 6e66 6967 7572 655f 7374    - configure_st
│ │ │ -001d63a0: 7261 7465 6779 0a20 202d 2068 6967 685f  rategy.  - high_
│ │ │ -001d63b0: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ -001d63c0: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ -001d63d0: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ -001d63e0: 790a 2020 2d20 6d6f 756e 745f 6f70 7469  y.  - mount_opti
│ │ │ -001d63f0: 6f6e 5f76 6172 5f6c 6f67 5f6e 6f65 7865  on_var_log_noexe
│ │ │ -001d6400: 630a 2020 2d20 6e6f 5f72 6562 6f6f 745f  c.  - no_reboot_
│ │ │ -001d6410: 6e65 6564 6564 0a0a 2d20 6e61 6d65 3a20  needed..- name: 
│ │ │ -001d6420: 2741 6464 206e 6f65 7865 6320 4f70 7469  'Add noexec Opti
│ │ │ -001d6430: 6f6e 2074 6f20 2f76 6172 2f6c 6f67 3a20  on to /var/log: 
│ │ │ -001d6440: 456e 7375 7265 202f 7661 722f 6c6f 6720  Ensure /var/log 
│ │ │ -001d6450: 6973 206d 6f75 6e74 6564 2077 6974 6820  is mounted with 
│ │ │ -001d6460: 6e6f 6578 6563 206f 7074 696f 6e27 0a20  noexec option'. 
│ │ │ -001d6470: 2061 6e73 6962 6c65 2e70 6f73 6978 2e6d   ansible.posix.m
│ │ │ -001d6480: 6f75 6e74 3a0a 2020 2020 7061 7468 3a20  ount:.    path: 
│ │ │ -001d6490: 2f76 6172 2f6c 6f67 0a20 2020 2073 7263  /var/log.    src
│ │ │ -001d64a0: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ -001d64b0: 2e73 6f75 7263 6520 7c20 6465 6661 756c  .source | defaul
│ │ │ -001d64c0: 7428 2727 2727 2920 7d7d 270a 2020 2020  t('''') }}'.    
│ │ │ -001d64d0: 6f70 7473 3a20 277b 7b20 6d6f 756e 745f  opts: '{{ mount_
│ │ │ -001d64e0: 696e 666f 2e6f 7074 696f 6e73 207c 2064  info.options | d
│ │ │ -001d64f0: 6566 6175 6c74 2827 2727 2729 207d 7d27  efault('''') }}'
│ │ │ -001d6500: 0a20 2020 2073 7461 7465 3a20 6d6f 756e  .    state: moun
│ │ │ -001d6510: 7465 640a 2020 2020 6673 7479 7065 3a20  ted.    fstype: 
│ │ │ -001d6520: 277b 7b20 6d6f 756e 745f 696e 666f 2e66  '{{ mount_info.f
│ │ │ -001d6530: 7374 7970 6520 7c20 6465 6661 756c 7428  stype | default(
│ │ │ -001d6540: 2727 2727 2920 7d7d 270a 2020 7265 6769  '''') }}'.  regi
│ │ │ -001d6550: 7374 6572 3a20 6d6f 756e 745f 7265 7375  ster: mount_resu
│ │ │ -001d6560: 6c74 0a20 2066 6169 6c65 645f 7768 656e  lt.  failed_when
│ │ │ -001d6570: 3a0a 2020 2d20 6d6f 756e 745f 7265 7375  :.  - mount_resu
│ │ │ -001d6580: 6c74 2069 7320 6661 696c 6564 0a20 202d  lt is failed.  -
│ │ │ -001d6590: 2027 2727 7461 7267 6574 2069 7320 6275   '''target is bu
│ │ │ -001d65a0: 7379 2727 206e 6f74 2069 6e20 286d 6f75  sy'' not in (mou
│ │ │ -001d65b0: 6e74 5f72 6573 756c 742e 6d73 6720 7c20  nt_result.msg | 
│ │ │ -001d65c0: 6465 6661 756c 7428 2727 2727 2929 270a  default(''''))'.
│ │ │ -001d65d0: 2020 2d20 2727 2761 6c72 6561 6479 206d    - '''already m
│ │ │ -001d65e0: 6f75 6e74 6564 2727 206e 6f74 2069 6e20  ounted'' not in 
│ │ │ -001d65f0: 286d 6f75 6e74 5f72 6573 756c 742e 6d73  (mount_result.ms
│ │ │ -001d6600: 6720 7c20 6465 6661 756c 7428 2727 2727  g | default(''''
│ │ │ -001d6610: 2929 270a 2020 7768 656e 3a0a 2020 2d20  ))'.  when:.  - 
│ │ │ -001d6620: 2820 6e6f 7420 2820 226b 6572 6e65 6c22  ( not ( "kernel"
│ │ │ -001d6630: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001d6640: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ -001d6650: 626f 6f74 6322 2069 6e20 616e 7369 626c  bootc" in ansibl
│ │ │ -001d6660: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001d6670: 0a20 2020 2061 6e64 206e 6f74 2022 6f70  .    and not "op
│ │ │ -001d6680: 656e 7368 6966 742d 6b75 6265 6c65 7422  enshift-kubelet"
│ │ │ -001d6690: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001d66a0: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ -001d66b0: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ -001d66c0: 6c65 5f70 726f 635f 636d 646c 696e 650a  le_proc_cmdline.
│ │ │ -001d66d0: 2020 2020 2920 616e 6420 6e6f 7420 2820      ) and not ( 
│ │ │ -001d66e0: 616e 7369 626c 655f 7669 7274 7561 6c69  ansible_virtuali
│ │ │ -001d66f0: 7a61 7469 6f6e 5f74 7970 6520 696e 205b  zation_type in [
│ │ │ -001d6700: 2264 6f63 6b65 7222 2c20 226c 7863 222c  "docker", "lxc",
│ │ │ -001d6710: 2022 6f70 656e 767a 222c 2022 706f 646d   "openvz", "podm
│ │ │ -001d6720: 616e 222c 0a20 2020 2022 636f 6e74 6169  an",.    "contai
│ │ │ -001d6730: 6e65 7222 5d20 2920 290a 2020 2d20 2722  ner"] ) ).  - '"
│ │ │ -001d6740: 2f76 6172 2f6c 6f67 2220 696e 2061 6e73  /var/log" in ans
│ │ │ -001d6750: 6962 6c65 5f6d 6f75 6e74 7320 7c20 6d61  ible_mounts | ma
│ │ │ -001d6760: 7028 6174 7472 6962 7574 653d 226d 6f75  p(attribute="mou
│ │ │ -001d6770: 6e74 2229 207c 206c 6973 7427 0a20 202d  nt") | list'.  -
│ │ │ -001d6780: 206d 6f75 6e74 5f69 6e66 6f20 6973 2064   mount_info is d
│ │ │ -001d6790: 6566 696e 6564 0a20 202d 2028 6465 7669  efined.  - (devi
│ │ │ -001d67a0: 6365 5f6e 616d 652e 7374 646f 7574 2069  ce_name.stdout i
│ │ │ -001d67b0: 7320 6465 6669 6e65 6420 616e 6420 2864  s defined and (d
│ │ │ -001d67c0: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ -001d67d0: 7420 7c20 6c65 6e67 7468 2026 6774 3b20  t | length > 
│ │ │ -001d67e0: 3029 2920 6f72 2028 222d 2d66 7374 6162  0)) or ("--fstab
│ │ │ -001d67f0: 220a 2020 2020 7c20 6c65 6e67 7468 203d  ".    | length =
│ │ │ -001d6800: 3d20 3029 0a20 2074 6167 733a 0a20 202d  = 0).  tags:.  -
│ │ │ -001d6810: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ -001d6820: 360a 2020 2d20 4e49 5354 2d38 3030 2d35  6.  - NIST-800-5
│ │ │ -001d6830: 332d 4143 2d36 2831 290a 2020 2d20 4e49  3-AC-6(1).  - NI
│ │ │ -001d6840: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ -001d6850: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -001d6860: 332d 434d 2d37 2861 290a 2020 2d20 4e49  3-CM-7(a).  - NI
│ │ │ -001d6870: 5354 2d38 3030 2d35 332d 434d 2d37 2862  ST-800-53-CM-7(b
│ │ │ -001d6880: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -001d6890: 332d 4d50 2d37 0a20 202d 2063 6f6e 6669  3-MP-7.  - confi
│ │ │ -001d68a0: 6775 7265 5f73 7472 6174 6567 790a 2020  gure_strategy.  
│ │ │ -001d68b0: 2d20 6869 6768 5f64 6973 7275 7074 696f  - high_disruptio
│ │ │ -001d68c0: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65  n.  - low_comple
│ │ │ -001d68d0: 7869 7479 0a20 202d 206d 6564 6975 6d5f  xity.  - medium_
│ │ │ -001d68e0: 7365 7665 7269 7479 0a20 202d 206d 6f75  severity.  - mou
│ │ │ -001d68f0: 6e74 5f6f 7074 696f 6e5f 7661 725f 6c6f  nt_option_var_lo
│ │ │ -001d6900: 675f 6e6f 6578 6563 0a20 202d 206e 6f5f  g_noexec.  - no_
│ │ │ -001d6910: 7265 626f 6f74 5f6e 6565 6465 640a 3c2f  reboot_needed.
Re │ │ │ -001d69d0: 6d65 6469 6174 696f 6e20 5368 656c 6c20 mediation Shell │ │ │ -001d69e0: 7363 7269 7074 20e2 87b2 3c2f 613e 3c62 script ...
Comp │ │ │ -001d5230: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -001d5240: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -001d5260: 3c2f 7468 3e3c 7464 3e68 6967 683c 2f74 high
R │ │ │ -001d5280: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -001d5290: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -001d52b0: 2f74 683e 3c74 643e 636f 6e66 6967 7572 /th>configur │ │ │ -001d52c0: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
# 
│ │ │ -001d6aa0: 5265 6d65 6469 6174 696f 6e20 6973 2061  Remediation is a
│ │ │ -001d6ab0: 7070 6c69 6361 626c 6520 6f6e 6c79 2069  pplicable only i
│ │ │ -001d6ac0: 6e20 6365 7274 6169 6e20 706c 6174 666f  n certain platfo
│ │ │ -001d6ad0: 726d 730a 6966 2028 2021 2028 207b 2072  rms.if ( ! ( { r
│ │ │ -001d6ae0: 706d 202d 2d71 7569 6574 202d 7120 6b65  pm --quiet -q ke
│ │ │ -001d6af0: 726e 656c 203b 7d20 2661 6d70 3b26 616d  rnel ;} &&am
│ │ │ -001d6b00: 703b 207b 2072 706d 202d 2d71 7569 6574  p; { rpm --quiet
│ │ │ -001d6b10: 202d 7120 626f 6f74 6320 3b7d 2026 616d   -q bootc ;} &am
│ │ │ -001d6b20: 703b 2661 6d70 3b20 7b20 2120 7270 6d20  p;& { ! rpm 
│ │ │ -001d6b30: 2d2d 7175 6965 7420 2d71 206f 7065 6e73  --quiet -q opens
│ │ │ -001d6b40: 6869 6674 2d6b 7562 656c 6574 203b 7d20  hift-kubelet ;} 
│ │ │ -001d6b50: 2661 6d70 3b26 616d 703b 2028 5b20 2d66  && ([ -f
│ │ │ -001d6b60: 202f 7275 6e2f 6f73 7472 6565 2d62 6f6f   /run/ostree-boo
│ │ │ -001d6b70: 7465 6420 5d20 7c7c 205b 202d 4c20 2f6f  ted ] || [ -L /o
│ │ │ -001d6b80: 7374 7265 6520 5d29 2029 2026 616d 703b  stree ]) ) &
│ │ │ -001d6b90: 2661 6d70 3b20 2120 2820 5b20 2d66 202f  & ! ( [ -f /
│ │ │ -001d6ba0: 2e64 6f63 6b65 7265 6e76 205d 207c 7c20  .dockerenv ] || 
│ │ │ -001d6bb0: 5b20 2d66 202f 7275 6e2f 2e63 6f6e 7461  [ -f /run/.conta
│ │ │ -001d6bc0: 696e 6572 656e 7620 5d20 2920 2920 2661  inerenv ] ) ) &a
│ │ │ -001d6bd0: 6d70 3b26 616d 703b 207b 2028 2066 696e  mp;& { ( fin
│ │ │ -001d6be0: 646d 6e74 202d 2d6b 6572 6e65 6c20 222f  dmnt --kernel "/
│ │ │ -001d6bf0: 7661 722f 6c6f 6722 2026 6774 3b20 2f64  var/log" > /d
│ │ │ -001d6c00: 6576 2f6e 756c 6c20 7c7c 2066 696e 646d  ev/null || findm
│ │ │ -001d6c10: 6e74 202d 2d66 7374 6162 2022 2f76 6172  nt --fstab "/var
│ │ │ -001d6c20: 2f6c 6f67 2220 2667 743b 202f 6465 762f  /log" > /dev/
│ │ │ -001d6c30: 6e75 6c6c 2029 3b20 7d3b 2074 6865 6e0a  null ); }; then.
│ │ │ -001d6c40: 0a66 756e 6374 696f 6e20 7065 7266 6f72  .function perfor
│ │ │ -001d6c50: 6d5f 7265 6d65 6469 6174 696f 6e20 7b0a  m_remediation {.
│ │ │ -001d6c60: 0a20 2020 200a 2020 2020 2020 2020 2320  .    .        # 
│ │ │ -001d6c70: 7468 6520 6d6f 756e 7420 706f 696e 7420  the mount point 
│ │ │ -001d6c80: 2f76 6172 2f6c 6f67 2068 6173 2074 6f20  /var/log has to 
│ │ │ -001d6c90: 6265 2064 6566 696e 6564 2069 6e20 2f65  be defined in /e
│ │ │ -001d6ca0: 7463 2f66 7374 6162 0a20 2020 2020 2020  tc/fstab.       
│ │ │ -001d6cb0: 2023 2062 6566 6f72 6520 7468 6973 2072   # before this r
│ │ │ -001d6cc0: 656d 6564 6961 7469 6f6e 2063 616e 2062  emediation can b
│ │ │ -001d6cd0: 6520 6578 6563 7574 6564 2e20 496e 2063  e executed. In c
│ │ │ -001d6ce0: 6173 6520 6974 2069 7320 6e6f 7420 6465  ase it is not de
│ │ │ -001d6cf0: 6669 6e65 642c 2074 6865 0a20 2020 2020  fined, the.     
│ │ │ -001d6d00: 2020 2023 2072 656d 6564 6961 7469 6f6e     # remediation
│ │ │ -001d6d10: 2061 626f 7274 7320 616e 6420 6e6f 2063   aborts and no c
│ │ │ -001d6d20: 6861 6e67 6573 2072 6567 6172 6469 6e67  hanges regarding
│ │ │ -001d6d30: 2074 6865 206d 6f75 6e74 2070 6f69 6e74   the mount point
│ │ │ -001d6d40: 2061 7265 2064 6f6e 652e 0a20 2020 2020   are done..     
│ │ │ -001d6d50: 2020 206d 6f75 6e74 5f70 6f69 6e74 5f6d     mount_point_m
│ │ │ -001d6d60: 6174 6368 5f72 6567 6578 703d 2224 2870  atch_regexp="$(p
│ │ │ -001d6d70: 7269 6e74 6620 225e 5b5b 3a73 7061 6365  rintf "^[[:space
│ │ │ -001d6d80: 3a5d 5d2a 5b5e 235d 2e2a 5b5b 3a73 7061  :]]*[^#].*[[:spa
│ │ │ -001d6d90: 6365 3a5d 5d25 735b 5b3a 7370 6163 653a  ce:]]%s[[:space:
│ │ │ -001d6da0: 5d5d 2220 222f 7661 722f 6c6f 6722 2922  ]]" "/var/log")"
│ │ │ -001d6db0: 0a0a 2020 2020 6772 6570 2022 246d 6f75  ..    grep "$mou
│ │ │ -001d6dc0: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ -001d6dd0: 6567 6578 7022 202d 7120 2f65 7463 2f66  egexp" -q /etc/f
│ │ │ -001d6de0: 7374 6162 205c 0a20 2020 2020 2020 207c  stab \.        |
│ │ │ -001d6df0: 7c20 7b20 6563 686f 2022 5468 6520 6d6f  | { echo "The mo
│ │ │ -001d6e00: 756e 7420 706f 696e 7420 272f 7661 722f  unt point '/var/
│ │ │ -001d6e10: 6c6f 6727 2069 7320 6e6f 7420 6576 656e  log' is not even
│ │ │ -001d6e20: 2069 6e20 2f65 7463 2f66 7374 6162 2c20   in /etc/fstab, 
│ │ │ -001d6e30: 736f 2077 6520 6361 6e27 7420 7365 7420  so we can't set 
│ │ │ -001d6e40: 7570 206d 6f75 6e74 206f 7074 696f 6e73  up mount options
│ │ │ -001d6e50: 2220 2667 743b 2661 6d70 3b32 3b0a 2020  " >&2;.  
│ │ │ -001d6e60: 2020 2020 2020 2020 2020 2020 2020 6563                ec
│ │ │ -001d6e70: 686f 2022 4e6f 7420 7265 6d65 6469 6174  ho "Not remediat
│ │ │ -001d6e80: 696e 672c 2062 6563 6175 7365 2074 6865  ing, because the
│ │ │ -001d6e90: 7265 2069 7320 6e6f 2072 6563 6f72 6420  re is no record 
│ │ │ -001d6ea0: 6f66 202f 7661 722f 6c6f 6720 696e 202f  of /var/log in /
│ │ │ -001d6eb0: 6574 632f 6673 7461 6222 2026 6774 3b26  etc/fstab" >&
│ │ │ -001d6ec0: 616d 703b 323b 2072 6574 7572 6e20 313b  amp;2; return 1;
│ │ │ -001d6ed0: 207d 0a20 2020 200a 0a0a 2020 2020 6d6f   }.    ...    mo
│ │ │ -001d6ee0: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ -001d6ef0: 7265 6765 7870 3d22 2428 7072 696e 7466  regexp="$(printf
│ │ │ -001d6f00: 2022 5e5b 5b3a 7370 6163 653a 5d5d 2a5b   "^[[:space:]]*[
│ │ │ -001d6f10: 5e23 5d2e 2a5b 5b3a 7370 6163 653a 5d5d  ^#].*[[:space:]]
│ │ │ -001d6f20: 2573 5b5b 3a73 7061 6365 3a5d 5d22 202f  %s[[:space:]]" /
│ │ │ -001d6f30: 7661 722f 6c6f 6729 220a 0a20 2020 2023  var/log)"..    #
│ │ │ -001d6f40: 2049 6620 7468 6520 6d6f 756e 7420 706f   If the mount po
│ │ │ -001d6f50: 696e 7420 6973 206e 6f74 2069 6e20 2f65  int is not in /e
│ │ │ -001d6f60: 7463 2f66 7374 6162 2c20 6765 7420 7072  tc/fstab, get pr
│ │ │ -001d6f70: 6576 696f 7573 206d 6f75 6e74 206f 7074  evious mount opt
│ │ │ -001d6f80: 696f 6e73 2066 726f 6d20 2f65 7463 2f6d  ions from /etc/m
│ │ │ -001d6f90: 7461 620a 2020 2020 6966 2021 2067 7265  tab.    if ! gre
│ │ │ -001d6fa0: 7020 2d71 2022 246d 6f75 6e74 5f70 6f69  p -q "$mount_poi
│ │ │ -001d6fb0: 6e74 5f6d 6174 6368 5f72 6567 6578 7022  nt_match_regexp"
│ │ │ -001d6fc0: 202f 6574 632f 6673 7461 623b 2074 6865   /etc/fstab; the
│ │ │ -001d6fd0: 6e0a 2020 2020 2020 2020 2320 7275 6e74  n.        # runt
│ │ │ -001d6fe0: 696d 6520 6f70 7473 2077 6974 686f 7574  ime opts without
│ │ │ -001d6ff0: 2073 6f6d 6520 6175 746f 6d61 7469 6320   some automatic 
│ │ │ -001d7000: 6b65 726e 656c 2f75 7365 7273 7061 6365  kernel/userspace
│ │ │ -001d7010: 2d61 6464 6564 2064 6566 6175 6c74 730a  -added defaults.
│ │ │ -001d7020: 2020 2020 2020 2020 7072 6576 696f 7573          previous
│ │ │ -001d7030: 5f6d 6f75 6e74 5f6f 7074 733d 2428 6772  _mount_opts=$(gr
│ │ │ -001d7040: 6570 2022 246d 6f75 6e74 5f70 6f69 6e74  ep "$mount_point
│ │ │ -001d7050: 5f6d 6174 6368 5f72 6567 6578 7022 202f  _match_regexp" /
│ │ │ -001d7060: 6574 632f 6d74 6162 207c 2068 6561 6420  etc/mtab | head 
│ │ │ -001d7070: 2d31 207c 2020 6177 6b20 277b 7072 696e  -1 |  awk '{prin
│ │ │ -001d7080: 7420 2434 7d27 205c 0a20 2020 2020 2020  t $4}' \.       
│ │ │ -001d7090: 2020 2020 2020 2020 2020 2020 207c 2073               | s
│ │ │ -001d70a0: 6564 202d 4520 2273 2f28 7277 7c64 6566  ed -E "s/(rw|def
│ │ │ -001d70b0: 6175 6c74 737c 7365 636c 6162 656c 7c6e  aults|seclabel|n
│ │ │ -001d70c0: 6f65 7865 6329 282c 7c24 292f 2f67 3b73  oexec)(,|$)//g;s
│ │ │ -001d70d0: 2f2c 242f 2f22 290a 2020 2020 2020 2020  /,$//").        
│ │ │ -001d70e0: 5b20 2224 7072 6576 696f 7573 5f6d 6f75  [ "$previous_mou
│ │ │ -001d70f0: 6e74 5f6f 7074 7322 205d 2026 616d 703b  nt_opts" ] &
│ │ │ -001d7100: 2661 6d70 3b20 7072 6576 696f 7573 5f6d  & previous_m
│ │ │ -001d7110: 6f75 6e74 5f6f 7074 732b 3d22 2c22 0a20  ount_opts+=",". 
│ │ │ -001d7120: 2020 2020 2020 2023 2049 6e20 6973 6f39         # In iso9
│ │ │ -001d7130: 3636 3020 6669 6c65 7379 7374 656d 7320  660 filesystems 
│ │ │ -001d7140: 6d74 6162 2063 6f75 6c64 2064 6573 6372  mtab could descr
│ │ │ -001d7150: 6962 6520 6120 2262 6c6f 636b 7369 7a65  ibe a "blocksize
│ │ │ -001d7160: 2220 7661 6c75 652c 2074 6869 7320 7368  " value, this sh
│ │ │ -001d7170: 6f75 6c64 2062 6520 7265 666c 6563 7465  ould be reflecte
│ │ │ -001d7180: 6420 696e 0a20 2020 2020 2020 2023 2066  d in.        # f
│ │ │ -001d7190: 7374 6162 2061 7320 2262 6c6f 636b 222e  stab as "block".
│ │ │ -001d71a0: 2020 5468 6520 6e65 7874 2076 6172 6961    The next varia
│ │ │ -001d71b0: 626c 6520 6973 2074 6f20 7361 7469 7366  ble is to satisf
│ │ │ -001d71c0: 7920 7368 656c 6c63 6865 636b 2053 4332  y shellcheck SC2
│ │ │ -001d71d0: 3035 302e 0a20 2020 2020 2020 2066 735f  050..        fs_
│ │ │ -001d71e0: 7479 7065 3d22 220a 2020 2020 2020 2020  type="".        
│ │ │ -001d71f0: 6966 205b 2020 2224 6673 5f74 7970 6522  if [  "$fs_type"
│ │ │ -001d7200: 203d 3d20 2269 736f 3936 3630 2220 5d20   == "iso9660" ] 
│ │ │ -001d7210: 3b20 7468 656e 0a20 2020 2020 2020 2020  ; then.         
│ │ │ -001d7220: 2020 2070 7265 7669 6f75 735f 6d6f 756e     previous_moun
│ │ │ -001d7230: 745f 6f70 7473 3d24 2873 6564 2027 732f  t_opts=$(sed 's/
│ │ │ -001d7240: 626c 6f63 6b73 697a 653d 2f62 6c6f 636b  blocksize=/block
│ │ │ -001d7250: 3d2f 2720 266c 743b 266c 743b 266c 743b  =/' <<<
│ │ │ -001d7260: 2022 2470 7265 7669 6f75 735f 6d6f 756e   "$previous_moun
│ │ │ -001d7270: 745f 6f70 7473 2229 0a20 2020 2020 2020  t_opts").       
│ │ │ -001d7280: 2066 690a 2020 2020 2020 2020 6563 686f   fi.        echo
│ │ │ -001d7290: 2022 202f 7661 722f 6c6f 6720 2064 6566   " /var/log  def
│ │ │ -001d72a0: 6175 6c74 732c 247b 7072 6576 696f 7573  aults,${previous
│ │ │ -001d72b0: 5f6d 6f75 6e74 5f6f 7074 737d 6e6f 6578  _mount_opts}noex
│ │ │ -001d72c0: 6563 2030 2030 2220 2667 743b 2667 743b  ec 0 0" >>
│ │ │ -001d72d0: 202f 6574 632f 6673 7461 620a 2020 2020   /etc/fstab.    
│ │ │ -001d72e0: 2320 4966 2074 6865 206d 6f75 6e74 5f6f  # If the mount_o
│ │ │ -001d72f0: 7074 206f 7074 696f 6e20 6973 206e 6f74  pt option is not
│ │ │ -001d7300: 2061 6c72 6561 6479 2069 6e20 7468 6520   already in the 
│ │ │ -001d7310: 6d6f 756e 7420 706f 696e 7427 7320 2f65  mount point's /e
│ │ │ -001d7320: 7463 2f66 7374 6162 2065 6e74 7279 2c20  tc/fstab entry, 
│ │ │ -001d7330: 6164 6420 6974 0a20 2020 2065 6c69 6620  add it.    elif 
│ │ │ -001d7340: 2120 6772 6570 2022 246d 6f75 6e74 5f70  ! grep "$mount_p
│ │ │ -001d7350: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ -001d7360: 7022 202f 6574 632f 6673 7461 6220 7c20  p" /etc/fstab | 
│ │ │ -001d7370: 6772 6570 202d 7120 226e 6f65 7865 6322  grep -q "noexec"
│ │ │ -001d7380: 3b20 7468 656e 0a20 2020 2020 2020 2070  ; then.        p
│ │ │ -001d7390: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ -001d73a0: 7473 3d24 2867 7265 7020 2224 6d6f 756e  ts=$(grep "$moun
│ │ │ -001d73b0: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ -001d73c0: 6765 7870 2220 2f65 7463 2f66 7374 6162  gexp" /etc/fstab
│ │ │ -001d73d0: 207c 2061 776b 2027 7b70 7269 6e74 2024   | awk '{print $
│ │ │ -001d73e0: 347d 2729 0a20 2020 2020 2020 2073 6564  4}').        sed
│ │ │ -001d73f0: 202d 6920 2273 7c5c 2824 7b6d 6f75 6e74   -i "s|\(${mount
│ │ │ -001d7400: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ -001d7410: 6578 707d 2e2a 247b 7072 6576 696f 7573  exp}.*${previous
│ │ │ -001d7420: 5f6d 6f75 6e74 5f6f 7074 737d 5c29 7c5c  _mount_opts}\)|\
│ │ │ -001d7430: 312c 6e6f 6578 6563 7c22 202f 6574 632f  1,noexec|" /etc/
│ │ │ -001d7440: 6673 7461 620a 2020 2020 6669 0a0a 0a20  fstab.    fi... 
│ │ │ -001d7450: 2020 2069 6620 6d6b 6469 7220 2d70 2022     if mkdir -p "
│ │ │ -001d7460: 2f76 6172 2f6c 6f67 223b 2074 6865 6e0a  /var/log"; then.
│ │ │ -001d7470: 2020 2020 2020 2020 6966 206d 6f75 6e74          if mount
│ │ │ -001d7480: 706f 696e 7420 2d71 2022 2f76 6172 2f6c  point -q "/var/l
│ │ │ -001d7490: 6f67 223b 2074 6865 6e0a 2020 2020 2020  og"; then.      
│ │ │ -001d74a0: 2020 2020 2020 6d6f 756e 7420 2d6f 2072        mount -o r
│ │ │ -001d74b0: 656d 6f75 6e74 202d 2d74 6172 6765 7420  emount --target 
│ │ │ -001d74c0: 222f 7661 722f 6c6f 6722 0a20 2020 2020  "/var/log".     
│ │ │ -001d74d0: 2020 2066 690a 2020 2020 6669 0a7d 0a0a     fi.    fi.}..
│ │ │ -001d74e0: 7065 7266 6f72 6d5f 7265 6d65 6469 6174  perform_remediat
│ │ │ -001d74f0: 696f 6e0a 0a65 6c73 650a 2020 2020 2667  ion..else.    &g
│ │ │ -001d7500: 743b 2661 6d70 3b32 2065 6368 6f20 2752  t;&2 echo 'R
│ │ │ -001d7510: 656d 6564 6961 7469 6f6e 2069 7320 6e6f  emediation is no
│ │ │ -001d7520: 7420 6170 706c 6963 6162 6c65 2c20 6e6f  t applicable, no
│ │ │ -001d7530: 7468 696e 6720 7761 7320 646f 6e65 270a  thing was done'.
│ │ │ -001d7540: 6669 0a3c 2f63 6f64 653e 3c2f 7072 653e  fi.
│ │ │ +001d4f70: 6e73 6962 6c65 2073 6e69 7070 6574 20e2 nsible snippet . │ │ │ +001d4f80: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
Rebo │ │ │ -001d6a70: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ -001d6a80: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
│ │ │ +001d5000: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +001d5020: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 < │ │ │ +001d5050: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>
Complexity:< │ │ │ +001d5010: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +001d5030: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:high
Reboot:false
St │ │ │ +001d5080: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ +001d5090: 636f 6e66 6967 7572 653c 2f74 643e 3c2f configure
│ │ │ +001d50b0: 3c63 6f64 653e 2d20 6e61 6d65 3a20 4761  - name: Ga
│ │ │ +001d50c0: 7468 6572 2074 6865 2070 6163 6b61 6765  ther the package
│ │ │ +001d50d0: 2066 6163 7473 0a20 2070 6163 6b61 6765   facts.  package
│ │ │ +001d50e0: 5f66 6163 7473 3a0a 2020 2020 6d61 6e61  _facts:.    mana
│ │ │ +001d50f0: 6765 723a 2061 7574 6f0a 2020 7461 6773  ger: auto.  tags
│ │ │ +001d5100: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ +001d5110: 332d 4143 2d36 0a20 202d 204e 4953 542d  3-AC-6.  - NIST-
│ │ │ +001d5120: 3830 302d 3533 2d41 432d 3628 3129 0a20  800-53-AC-6(1). 
│ │ │ +001d5130: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +001d5140: 4d2d 3628 6129 0a20 202d 204e 4953 542d  M-6(a).  - NIST-
│ │ │ +001d5150: 3830 302d 3533 2d43 4d2d 3728 6129 0a20  800-53-CM-7(a). 
│ │ │ +001d5160: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +001d5170: 4d2d 3728 6229 0a20 202d 204e 4953 542d  M-7(b).  - NIST-
│ │ │ +001d5180: 3830 302d 3533 2d4d 502d 370a 2020 2d20  800-53-MP-7.  - 
│ │ │ +001d5190: 636f 6e66 6967 7572 655f 7374 7261 7465  configure_strate
│ │ │ +001d51a0: 6779 0a20 202d 2068 6967 685f 6469 7372  gy.  - high_disr
│ │ │ +001d51b0: 7570 7469 6f6e 0a20 202d 206c 6f77 5f63  uption.  - low_c
│ │ │ +001d51c0: 6f6d 706c 6578 6974 790a 2020 2d20 6d65  omplexity.  - me
│ │ │ +001d51d0: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ +001d51e0: 2d20 6d6f 756e 745f 6f70 7469 6f6e 5f76  - mount_option_v
│ │ │ +001d51f0: 6172 5f6c 6f67 5f6e 6f65 7865 630a 2020  ar_log_noexec.  
│ │ │ +001d5200: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ +001d5210: 6564 0a0a 2d20 6e61 6d65 3a20 2741 6464  ed..- name: 'Add
│ │ │ +001d5220: 206e 6f65 7865 6320 4f70 7469 6f6e 2074   noexec Option t
│ │ │ +001d5230: 6f20 2f76 6172 2f6c 6f67 3a20 4368 6563  o /var/log: Chec
│ │ │ +001d5240: 6b20 696e 666f 726d 6174 696f 6e20 6173  k information as
│ │ │ +001d5250: 736f 6369 6174 6564 2074 6f20 6d6f 756e  sociated to moun
│ │ │ +001d5260: 7470 6f69 6e74 270a 2020 616e 7369 626c  tpoint'.  ansibl
│ │ │ +001d5270: 652e 6275 696c 7469 6e2e 636f 6d6d 616e  e.builtin.comman
│ │ │ +001d5280: 643a 2066 696e 646d 6e74 202d 2d66 7374  d: findmnt --fst
│ │ │ +001d5290: 6162 2027 2f76 6172 2f6c 6f67 270a 2020  ab '/var/log'.  
│ │ │ +001d52a0: 7265 6769 7374 6572 3a20 6465 7669 6365  register: device
│ │ │ +001d52b0: 5f6e 616d 650a 2020 6661 696c 6564 5f77  _name.  failed_w
│ │ │ +001d52c0: 6865 6e3a 2064 6576 6963 655f 6e61 6d65  hen: device_name
│ │ │ +001d52d0: 2e72 6320 2667 743b 2031 0a20 2063 6861  .rc > 1.  cha
│ │ │ +001d52e0: 6e67 6564 5f77 6865 6e3a 2066 616c 7365  nged_when: false
│ │ │ +001d52f0: 0a20 2063 6865 636b 5f6d 6f64 653a 2066  .  check_mode: f
│ │ │ +001d5300: 616c 7365 0a20 2077 6865 6e3a 0a20 202d  alse.  when:.  -
│ │ │ +001d5310: 2028 206e 6f74 2028 2022 6b65 726e 656c   ( not ( "kernel
│ │ │ +001d5320: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +001d5330: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ +001d5340: 2262 6f6f 7463 2220 696e 2061 6e73 6962  "bootc" in ansib
│ │ │ +001d5350: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001d5360: 730a 2020 2020 616e 6420 6e6f 7420 226f  s.    and not "o
│ │ │ +001d5370: 7065 6e73 6869 6674 2d6b 7562 656c 6574  penshift-kubelet
│ │ │ +001d5380: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +001d5390: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ +001d53a0: 226f 7374 7265 6522 2069 6e20 616e 7369  "ostree" in ansi
│ │ │ +001d53b0: 626c 655f 7072 6f63 5f63 6d64 6c69 6e65  ble_proc_cmdline
│ │ │ +001d53c0: 0a20 2020 2029 2061 6e64 206e 6f74 2028  .    ) and not (
│ │ │ +001d53d0: 2061 6e73 6962 6c65 5f76 6972 7475 616c   ansible_virtual
│ │ │ +001d53e0: 697a 6174 696f 6e5f 7479 7065 2069 6e20  ization_type in 
│ │ │ +001d53f0: 5b22 646f 636b 6572 222c 2022 6c78 6322  ["docker", "lxc"
│ │ │ +001d5400: 2c20 226f 7065 6e76 7a22 2c20 2270 6f64  , "openvz", "pod
│ │ │ +001d5410: 6d61 6e22 2c0a 2020 2020 2263 6f6e 7461  man",.    "conta
│ │ │ +001d5420: 696e 6572 225d 2029 2029 0a20 202d 2027  iner"] ) ).  - '
│ │ │ +001d5430: 222f 7661 722f 6c6f 6722 2069 6e20 616e  "/var/log" in an
│ │ │ +001d5440: 7369 626c 655f 6d6f 756e 7473 207c 206d  sible_mounts | m
│ │ │ +001d5450: 6170 2861 7474 7269 6275 7465 3d22 6d6f  ap(attribute="mo
│ │ │ +001d5460: 756e 7422 2920 7c20 6c69 7374 270a 2020  unt") | list'.  
│ │ │ +001d5470: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38  tags:.  - NIST-8
│ │ │ +001d5480: 3030 2d35 332d 4143 2d36 0a20 202d 204e  00-53-AC-6.  - N
│ │ │ +001d5490: 4953 542d 3830 302d 3533 2d41 432d 3628  IST-800-53-AC-6(
│ │ │ +001d54a0: 3129 0a20 202d 204e 4953 542d 3830 302d  1).  - NIST-800-
│ │ │ +001d54b0: 3533 2d43 4d2d 3628 6129 0a20 202d 204e  53-CM-6(a).  - N
│ │ │ +001d54c0: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ +001d54d0: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ +001d54e0: 3533 2d43 4d2d 3728 6229 0a20 202d 204e  53-CM-7(b).  - N
│ │ │ +001d54f0: 4953 542d 3830 302d 3533 2d4d 502d 370a  IST-800-53-MP-7.
│ │ │ +001d5500: 2020 2d20 636f 6e66 6967 7572 655f 7374    - configure_st
│ │ │ +001d5510: 7261 7465 6779 0a20 202d 2068 6967 685f  rategy.  - high_
│ │ │ +001d5520: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ +001d5530: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ +001d5540: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ +001d5550: 790a 2020 2d20 6d6f 756e 745f 6f70 7469  y.  - mount_opti
│ │ │ +001d5560: 6f6e 5f76 6172 5f6c 6f67 5f6e 6f65 7865  on_var_log_noexe
│ │ │ +001d5570: 630a 2020 2d20 6e6f 5f72 6562 6f6f 745f  c.  - no_reboot_
│ │ │ +001d5580: 6e65 6564 6564 0a0a 2d20 6e61 6d65 3a20  needed..- name: 
│ │ │ +001d5590: 2741 6464 206e 6f65 7865 6320 4f70 7469  'Add noexec Opti
│ │ │ +001d55a0: 6f6e 2074 6f20 2f76 6172 2f6c 6f67 3a20  on to /var/log: 
│ │ │ +001d55b0: 4372 6561 7465 206d 6f75 6e74 5f69 6e66  Create mount_inf
│ │ │ +001d55c0: 6f20 6469 6374 696f 6e61 7279 2076 6172  o dictionary var
│ │ │ +001d55d0: 6961 626c 6527 0a20 2073 6574 5f66 6163  iable'.  set_fac
│ │ │ +001d55e0: 743a 0a20 2020 206d 6f75 6e74 5f69 6e66  t:.    mount_inf
│ │ │ +001d55f0: 6f3a 2027 7b7b 206d 6f75 6e74 5f69 6e66  o: '{{ mount_inf
│ │ │ +001d5600: 6f7c 6465 6661 756c 7428 7b7d 297c 636f  o|default({})|co
│ │ │ +001d5610: 6d62 696e 6528 7b69 7465 6d2e 303a 2069  mbine({item.0: i
│ │ │ +001d5620: 7465 6d2e 317d 2920 7d7d 270a 2020 7769  tem.1}) }}'.  wi
│ │ │ +001d5630: 7468 5f74 6f67 6574 6865 723a 0a20 202d  th_together:.  -
│ │ │ +001d5640: 2027 7b7b 2064 6576 6963 655f 6e61 6d65   '{{ device_name
│ │ │ +001d5650: 2e73 7464 6f75 745f 6c69 6e65 735b 305d  .stdout_lines[0]
│ │ │ +001d5660: 2e73 706c 6974 2829 207c 206d 6170 2827  .split() | map('
│ │ │ +001d5670: 276c 6f77 6572 2727 2920 7c20 6c69 7374  'lower'') | list
│ │ │ +001d5680: 207d 7d27 0a20 202d 2027 7b7b 2064 6576   }}'.  - '{{ dev
│ │ │ +001d5690: 6963 655f 6e61 6d65 2e73 7464 6f75 745f  ice_name.stdout_
│ │ │ +001d56a0: 6c69 6e65 735b 315d 2e73 706c 6974 2829  lines[1].split()
│ │ │ +001d56b0: 207c 206c 6973 7420 7d7d 270a 2020 7768   | list }}'.  wh
│ │ │ +001d56c0: 656e 3a0a 2020 2d20 2820 6e6f 7420 2820  en:.  - ( not ( 
│ │ │ +001d56d0: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ +001d56e0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001d56f0: 6573 2061 6e64 2022 626f 6f74 6322 2069  es and "bootc" i
│ │ │ +001d5700: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001d5710: 7061 636b 6167 6573 0a20 2020 2061 6e64  packages.    and
│ │ │ +001d5720: 206e 6f74 2022 6f70 656e 7368 6966 742d   not "openshift-
│ │ │ +001d5730: 6b75 6265 6c65 7422 2069 6e20 616e 7369  kubelet" in ansi
│ │ │ +001d5740: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001d5750: 6573 2061 6e64 2022 6f73 7472 6565 2220  es and "ostree" 
│ │ │ +001d5760: 696e 2061 6e73 6962 6c65 5f70 726f 635f  in ansible_proc_
│ │ │ +001d5770: 636d 646c 696e 650a 2020 2020 2920 616e  cmdline.    ) an
│ │ │ +001d5780: 6420 6e6f 7420 2820 616e 7369 626c 655f  d not ( ansible_
│ │ │ +001d5790: 7669 7274 7561 6c69 7a61 7469 6f6e 5f74  virtualization_t
│ │ │ +001d57a0: 7970 6520 696e 205b 2264 6f63 6b65 7222  ype in ["docker"
│ │ │ +001d57b0: 2c20 226c 7863 222c 2022 6f70 656e 767a  , "lxc", "openvz
│ │ │ +001d57c0: 222c 2022 706f 646d 616e 222c 0a20 2020  ", "podman",.   
│ │ │ +001d57d0: 2022 636f 6e74 6169 6e65 7222 5d20 2920   "container"] ) 
│ │ │ +001d57e0: 290a 2020 2d20 2722 2f76 6172 2f6c 6f67  ).  - '"/var/log
│ │ │ +001d57f0: 2220 696e 2061 6e73 6962 6c65 5f6d 6f75  " in ansible_mou
│ │ │ +001d5800: 6e74 7320 7c20 6d61 7028 6174 7472 6962  nts | map(attrib
│ │ │ +001d5810: 7574 653d 226d 6f75 6e74 2229 207c 206c  ute="mount") | l
│ │ │ +001d5820: 6973 7427 0a20 202d 2064 6576 6963 655f  ist'.  - device_
│ │ │ +001d5830: 6e61 6d65 2e73 7464 6f75 7420 6973 2064  name.stdout is d
│ │ │ +001d5840: 6566 696e 6564 2061 6e64 2064 6576 6963  efined and devic
│ │ │ +001d5850: 655f 6e61 6d65 2e73 7464 6f75 745f 6c69  e_name.stdout_li
│ │ │ +001d5860: 6e65 7320 6973 2064 6566 696e 6564 0a20  nes is defined. 
│ │ │ +001d5870: 202d 2028 6465 7669 6365 5f6e 616d 652e   - (device_name.
│ │ │ +001d5880: 7374 646f 7574 207c 206c 656e 6774 6820  stdout | length 
│ │ │ +001d5890: 2667 743b 2030 290a 2020 7461 6773 3a0a  > 0).  tags:.
│ │ │ +001d58a0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001d58b0: 4143 2d36 0a20 202d 204e 4953 542d 3830  AC-6.  - NIST-80
│ │ │ +001d58c0: 302d 3533 2d41 432d 3628 3129 0a20 202d  0-53-AC-6(1).  -
│ │ │ +001d58d0: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +001d58e0: 3628 6129 0a20 202d 204e 4953 542d 3830  6(a).  - NIST-80
│ │ │ +001d58f0: 302d 3533 2d43 4d2d 3728 6129 0a20 202d  0-53-CM-7(a).  -
│ │ │ +001d5900: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +001d5910: 3728 6229 0a20 202d 204e 4953 542d 3830  7(b).  - NIST-80
│ │ │ +001d5920: 302d 3533 2d4d 502d 370a 2020 2d20 636f  0-53-MP-7.  - co
│ │ │ +001d5930: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ +001d5940: 0a20 202d 2068 6967 685f 6469 7372 7570  .  - high_disrup
│ │ │ +001d5950: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d  tion.  - low_com
│ │ │ +001d5960: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ +001d5970: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ +001d5980: 6d6f 756e 745f 6f70 7469 6f6e 5f76 6172  mount_option_var
│ │ │ +001d5990: 5f6c 6f67 5f6e 6f65 7865 630a 2020 2d20  _log_noexec.  - 
│ │ │ +001d59a0: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ +001d59b0: 0a0a 2d20 6e61 6d65 3a20 2741 6464 206e  ..- name: 'Add n
│ │ │ +001d59c0: 6f65 7865 6320 4f70 7469 6f6e 2074 6f20  oexec Option to 
│ │ │ +001d59d0: 2f76 6172 2f6c 6f67 3a20 4966 202f 7661  /var/log: If /va
│ │ │ +001d59e0: 722f 6c6f 6720 6e6f 7420 6d6f 756e 7465  r/log not mounte
│ │ │ +001d59f0: 642c 2063 7261 6674 206d 6f75 6e74 5f69  d, craft mount_i
│ │ │ +001d5a00: 6e66 6f0a 2020 2020 6d61 6e75 616c 6c79  nfo.    manually
│ │ │ +001d5a10: 270a 2020 7365 745f 6661 6374 3a0a 2020  '.  set_fact:.  
│ │ │ +001d5a20: 2020 6d6f 756e 745f 696e 666f 3a20 277b    mount_info: '{
│ │ │ +001d5a30: 7b20 6d6f 756e 745f 696e 666f 7c64 6566  { mount_info|def
│ │ │ +001d5a40: 6175 6c74 287b 7d29 7c63 6f6d 6269 6e65  ault({})|combine
│ │ │ +001d5a50: 287b 6974 656d 2e30 3a20 6974 656d 2e31  ({item.0: item.1
│ │ │ +001d5a60: 7d29 207d 7d27 0a20 2077 6974 685f 746f  }) }}'.  with_to
│ │ │ +001d5a70: 6765 7468 6572 3a0a 2020 2d20 2d20 7461  gether:.  - - ta
│ │ │ +001d5a80: 7267 6574 0a20 2020 202d 2073 6f75 7263  rget.    - sourc
│ │ │ +001d5a90: 650a 2020 2020 2d20 6673 7479 7065 0a20  e.    - fstype. 
│ │ │ +001d5aa0: 2020 202d 206f 7074 696f 6e73 0a20 202d     - options.  -
│ │ │ +001d5ab0: 202d 202f 7661 722f 6c6f 670a 2020 2020   - /var/log.    
│ │ │ +001d5ac0: 2d20 2727 0a20 2020 202d 2027 270a 2020  - ''.    - ''.  
│ │ │ +001d5ad0: 2020 2d20 6465 6661 756c 7473 0a20 2077    - defaults.  w
│ │ │ +001d5ae0: 6865 6e3a 0a20 202d 2028 206e 6f74 2028  hen:.  - ( not (
│ │ │ +001d5af0: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ +001d5b00: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001d5b10: 6765 7320 616e 6420 2262 6f6f 7463 2220  ges and "bootc" 
│ │ │ +001d5b20: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001d5b30: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ +001d5b40: 6420 6e6f 7420 226f 7065 6e73 6869 6674  d not "openshift
│ │ │ +001d5b50: 2d6b 7562 656c 6574 2220 696e 2061 6e73  -kubelet" in ans
│ │ │ +001d5b60: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001d5b70: 6765 7320 616e 6420 226f 7374 7265 6522  ges and "ostree"
│ │ │ +001d5b80: 2069 6e20 616e 7369 626c 655f 7072 6f63   in ansible_proc
│ │ │ +001d5b90: 5f63 6d64 6c69 6e65 0a20 2020 2029 2061  _cmdline.    ) a
│ │ │ +001d5ba0: 6e64 206e 6f74 2028 2061 6e73 6962 6c65  nd not ( ansible
│ │ │ +001d5bb0: 5f76 6972 7475 616c 697a 6174 696f 6e5f  _virtualization_
│ │ │ +001d5bc0: 7479 7065 2069 6e20 5b22 646f 636b 6572  type in ["docker
│ │ │ +001d5bd0: 222c 2022 6c78 6322 2c20 226f 7065 6e76  ", "lxc", "openv
│ │ │ +001d5be0: 7a22 2c20 2270 6f64 6d61 6e22 2c0a 2020  z", "podman",.  
│ │ │ +001d5bf0: 2020 2263 6f6e 7461 696e 6572 225d 2029    "container"] )
│ │ │ +001d5c00: 2029 0a20 202d 2027 222f 7661 722f 6c6f   ).  - '"/var/lo
│ │ │ +001d5c10: 6722 2069 6e20 616e 7369 626c 655f 6d6f  g" in ansible_mo
│ │ │ +001d5c20: 756e 7473 207c 206d 6170 2861 7474 7269  unts | map(attri
│ │ │ +001d5c30: 6275 7465 3d22 6d6f 756e 7422 2920 7c20  bute="mount") | 
│ │ │ +001d5c40: 6c69 7374 270a 2020 2d20 2822 2d2d 6673  list'.  - ("--fs
│ │ │ +001d5c50: 7461 6222 207c 206c 656e 6774 6820 3d3d  tab" | length ==
│ │ │ +001d5c60: 2030 290a 2020 2d20 6465 7669 6365 5f6e   0).  - device_n
│ │ │ +001d5c70: 616d 652e 7374 646f 7574 2069 7320 6465  ame.stdout is de
│ │ │ +001d5c80: 6669 6e65 6420 616e 6420 6465 7669 6365  fined and device
│ │ │ +001d5c90: 5f6e 616d 652e 7374 646f 7574 5f6c 696e  _name.stdout_lin
│ │ │ +001d5ca0: 6573 2069 7320 6465 6669 6e65 640a 2020  es is defined.  
│ │ │ +001d5cb0: 2d20 2864 6576 6963 655f 6e61 6d65 2e73  - (device_name.s
│ │ │ +001d5cc0: 7464 6f75 7420 7c20 6c65 6e67 7468 203d  tdout | length =
│ │ │ +001d5cd0: 3d20 3029 0a20 2074 6167 733a 0a20 202d  = 0).  tags:.  -
│ │ │ +001d5ce0: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ +001d5cf0: 360a 2020 2d20 4e49 5354 2d38 3030 2d35  6.  - NIST-800-5
│ │ │ +001d5d00: 332d 4143 2d36 2831 290a 2020 2d20 4e49  3-AC-6(1).  - NI
│ │ │ +001d5d10: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ +001d5d20: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001d5d30: 332d 434d 2d37 2861 290a 2020 2d20 4e49  3-CM-7(a).  - NI
│ │ │ +001d5d40: 5354 2d38 3030 2d35 332d 434d 2d37 2862  ST-800-53-CM-7(b
│ │ │ +001d5d50: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001d5d60: 332d 4d50 2d37 0a20 202d 2063 6f6e 6669  3-MP-7.  - confi
│ │ │ +001d5d70: 6775 7265 5f73 7472 6174 6567 790a 2020  gure_strategy.  
│ │ │ +001d5d80: 2d20 6869 6768 5f64 6973 7275 7074 696f  - high_disruptio
│ │ │ +001d5d90: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65  n.  - low_comple
│ │ │ +001d5da0: 7869 7479 0a20 202d 206d 6564 6975 6d5f  xity.  - medium_
│ │ │ +001d5db0: 7365 7665 7269 7479 0a20 202d 206d 6f75  severity.  - mou
│ │ │ +001d5dc0: 6e74 5f6f 7074 696f 6e5f 7661 725f 6c6f  nt_option_var_lo
│ │ │ +001d5dd0: 675f 6e6f 6578 6563 0a20 202d 206e 6f5f  g_noexec.  - no_
│ │ │ +001d5de0: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ +001d5df0: 206e 616d 653a 2027 4164 6420 6e6f 6578   name: 'Add noex
│ │ │ +001d5e00: 6563 204f 7074 696f 6e20 746f 202f 7661  ec Option to /va
│ │ │ +001d5e10: 722f 6c6f 673a 204d 616b 6520 7375 7265  r/log: Make sure
│ │ │ +001d5e20: 206e 6f65 7865 6320 6f70 7469 6f6e 2069   noexec option i
│ │ │ +001d5e30: 7320 7061 7274 206f 6620 7468 6520 746f  s part of the to
│ │ │ +001d5e40: 0a20 2020 202f 7661 722f 6c6f 6720 6f70  .    /var/log op
│ │ │ +001d5e50: 7469 6f6e 7327 0a20 2073 6574 5f66 6163  tions'.  set_fac
│ │ │ +001d5e60: 743a 0a20 2020 206d 6f75 6e74 5f69 6e66  t:.    mount_inf
│ │ │ +001d5e70: 6f3a 2027 7b7b 206d 6f75 6e74 5f69 6e66  o: '{{ mount_inf
│ │ │ +001d5e80: 6f20 7c20 636f 6d62 696e 6528 207b 2727  o | combine( {''
│ │ │ +001d5e90: 6f70 7469 6f6e 7327 273a 2727 2727 7e28  options'':''''~(
│ │ │ +001d5ea0: 6d6f 756e 745f 696e 666f 2e6f 7074 696f  mount_info.optio
│ │ │ +001d5eb0: 6e73 207c 0a20 2020 2020 2064 6566 6175  ns |.      defau
│ │ │ +001d5ec0: 6c74 2827 2727 2729 297e 2827 272c 2727  lt(''''))~('',''
│ │ │ +001d5ed0: 2069 6620 286d 6f75 6e74 5f69 6e66 6f2e   if (mount_info.
│ │ │ +001d5ee0: 6f70 7469 6f6e 7320 7c20 6465 6661 756c  options | defaul
│ │ │ +001d5ef0: 7428 2727 2727 2929 2065 6c73 6520 2727  t('''')) else ''
│ │ │ +001d5f00: 2727 297e 2727 6e6f 6578 6563 2727 0a20  '')~''noexec''. 
│ │ │ +001d5f10: 2020 2020 207d 2920 7d7d 270a 2020 7768       }) }}'.  wh
│ │ │ +001d5f20: 656e 3a0a 2020 2d20 2820 6e6f 7420 2820  en:.  - ( not ( 
│ │ │ +001d5f30: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ +001d5f40: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001d5f50: 6573 2061 6e64 2022 626f 6f74 6322 2069  es and "bootc" i
│ │ │ +001d5f60: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001d5f70: 7061 636b 6167 6573 0a20 2020 2061 6e64  packages.    and
│ │ │ +001d5f80: 206e 6f74 2022 6f70 656e 7368 6966 742d   not "openshift-
│ │ │ +001d5f90: 6b75 6265 6c65 7422 2069 6e20 616e 7369  kubelet" in ansi
│ │ │ +001d5fa0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001d5fb0: 6573 2061 6e64 2022 6f73 7472 6565 2220  es and "ostree" 
│ │ │ +001d5fc0: 696e 2061 6e73 6962 6c65 5f70 726f 635f  in ansible_proc_
│ │ │ +001d5fd0: 636d 646c 696e 650a 2020 2020 2920 616e  cmdline.    ) an
│ │ │ +001d5fe0: 6420 6e6f 7420 2820 616e 7369 626c 655f  d not ( ansible_
│ │ │ +001d5ff0: 7669 7274 7561 6c69 7a61 7469 6f6e 5f74  virtualization_t
│ │ │ +001d6000: 7970 6520 696e 205b 2264 6f63 6b65 7222  ype in ["docker"
│ │ │ +001d6010: 2c20 226c 7863 222c 2022 6f70 656e 767a  , "lxc", "openvz
│ │ │ +001d6020: 222c 2022 706f 646d 616e 222c 0a20 2020  ", "podman",.   
│ │ │ +001d6030: 2022 636f 6e74 6169 6e65 7222 5d20 2920   "container"] ) 
│ │ │ +001d6040: 290a 2020 2d20 2722 2f76 6172 2f6c 6f67  ).  - '"/var/log
│ │ │ +001d6050: 2220 696e 2061 6e73 6962 6c65 5f6d 6f75  " in ansible_mou
│ │ │ +001d6060: 6e74 7320 7c20 6d61 7028 6174 7472 6962  nts | map(attrib
│ │ │ +001d6070: 7574 653d 226d 6f75 6e74 2229 207c 206c  ute="mount") | l
│ │ │ +001d6080: 6973 7427 0a20 202d 206d 6f75 6e74 5f69  ist'.  - mount_i
│ │ │ +001d6090: 6e66 6f20 6973 2064 6566 696e 6564 2061  nfo is defined a
│ │ │ +001d60a0: 6e64 2022 6e6f 6578 6563 2220 6e6f 7420  nd "noexec" not 
│ │ │ +001d60b0: 696e 2028 6d6f 756e 745f 696e 666f 2e6f  in (mount_info.o
│ │ │ +001d60c0: 7074 696f 6e73 207c 2064 6566 6175 6c74  ptions | default
│ │ │ +001d60d0: 2827 2729 290a 2020 7461 6773 3a0a 2020  ('')).  tags:.  
│ │ │ +001d60e0: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ +001d60f0: 2d36 0a20 202d 204e 4953 542d 3830 302d  -6.  - NIST-800-
│ │ │ +001d6100: 3533 2d41 432d 3628 3129 0a20 202d 204e  53-AC-6(1).  - N
│ │ │ +001d6110: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ +001d6120: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ +001d6130: 3533 2d43 4d2d 3728 6129 0a20 202d 204e  53-CM-7(a).  - N
│ │ │ +001d6140: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ +001d6150: 6229 0a20 202d 204e 4953 542d 3830 302d  b).  - NIST-800-
│ │ │ +001d6160: 3533 2d4d 502d 370a 2020 2d20 636f 6e66  53-MP-7.  - conf
│ │ │ +001d6170: 6967 7572 655f 7374 7261 7465 6779 0a20  igure_strategy. 
│ │ │ +001d6180: 202d 2068 6967 685f 6469 7372 7570 7469   - high_disrupti
│ │ │ +001d6190: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c  on.  - low_compl
│ │ │ +001d61a0: 6578 6974 790a 2020 2d20 6d65 6469 756d  exity.  - medium
│ │ │ +001d61b0: 5f73 6576 6572 6974 790a 2020 2d20 6d6f  _severity.  - mo
│ │ │ +001d61c0: 756e 745f 6f70 7469 6f6e 5f76 6172 5f6c  unt_option_var_l
│ │ │ +001d61d0: 6f67 5f6e 6f65 7865 630a 2020 2d20 6e6f  og_noexec.  - no
│ │ │ +001d61e0: 5f72 6562 6f6f 745f 6e65 6564 6564 0a0a  _reboot_needed..
│ │ │ +001d61f0: 2d20 6e61 6d65 3a20 2741 6464 206e 6f65  - name: 'Add noe
│ │ │ +001d6200: 7865 6320 4f70 7469 6f6e 2074 6f20 2f76  xec Option to /v
│ │ │ +001d6210: 6172 2f6c 6f67 3a20 456e 7375 7265 202f  ar/log: Ensure /
│ │ │ +001d6220: 7661 722f 6c6f 6720 6973 206d 6f75 6e74  var/log is mount
│ │ │ +001d6230: 6564 2077 6974 6820 6e6f 6578 6563 206f  ed with noexec o
│ │ │ +001d6240: 7074 696f 6e27 0a20 2061 6e73 6962 6c65  ption'.  ansible
│ │ │ +001d6250: 2e70 6f73 6978 2e6d 6f75 6e74 3a0a 2020  .posix.mount:.  
│ │ │ +001d6260: 2020 7061 7468 3a20 2f76 6172 2f6c 6f67    path: /var/log
│ │ │ +001d6270: 0a20 2020 2073 7263 3a20 277b 7b20 6d6f  .    src: '{{ mo
│ │ │ +001d6280: 756e 745f 696e 666f 2e73 6f75 7263 6520  unt_info.source 
│ │ │ +001d6290: 7c20 6465 6661 756c 7428 2727 2727 2920  | default('''') 
│ │ │ +001d62a0: 7d7d 270a 2020 2020 6f70 7473 3a20 277b  }}'.    opts: '{
│ │ │ +001d62b0: 7b20 6d6f 756e 745f 696e 666f 2e6f 7074  { mount_info.opt
│ │ │ +001d62c0: 696f 6e73 207c 2064 6566 6175 6c74 2827  ions | default('
│ │ │ +001d62d0: 2727 2729 207d 7d27 0a20 2020 2073 7461  ''') }}'.    sta
│ │ │ +001d62e0: 7465 3a20 6d6f 756e 7465 640a 2020 2020  te: mounted.    
│ │ │ +001d62f0: 6673 7479 7065 3a20 277b 7b20 6d6f 756e  fstype: '{{ moun
│ │ │ +001d6300: 745f 696e 666f 2e66 7374 7970 6520 7c20  t_info.fstype | 
│ │ │ +001d6310: 6465 6661 756c 7428 2727 2727 2920 7d7d  default('''') }}
│ │ │ +001d6320: 270a 2020 7265 6769 7374 6572 3a20 6d6f  '.  register: mo
│ │ │ +001d6330: 756e 745f 7265 7375 6c74 0a20 2066 6169  unt_result.  fai
│ │ │ +001d6340: 6c65 645f 7768 656e 3a0a 2020 2d20 6d6f  led_when:.  - mo
│ │ │ +001d6350: 756e 745f 7265 7375 6c74 2069 7320 6661  unt_result is fa
│ │ │ +001d6360: 696c 6564 0a20 202d 2027 2727 7461 7267  iled.  - '''targ
│ │ │ +001d6370: 6574 2069 7320 6275 7379 2727 206e 6f74  et is busy'' not
│ │ │ +001d6380: 2069 6e20 286d 6f75 6e74 5f72 6573 756c   in (mount_resul
│ │ │ +001d6390: 742e 6d73 6720 7c20 6465 6661 756c 7428  t.msg | default(
│ │ │ +001d63a0: 2727 2727 2929 270a 2020 2d20 2727 2761  ''''))'.  - '''a
│ │ │ +001d63b0: 6c72 6561 6479 206d 6f75 6e74 6564 2727  lready mounted''
│ │ │ +001d63c0: 206e 6f74 2069 6e20 286d 6f75 6e74 5f72   not in (mount_r
│ │ │ +001d63d0: 6573 756c 742e 6d73 6720 7c20 6465 6661  esult.msg | defa
│ │ │ +001d63e0: 756c 7428 2727 2727 2929 270a 2020 7768  ult(''''))'.  wh
│ │ │ +001d63f0: 656e 3a0a 2020 2d20 2820 6e6f 7420 2820  en:.  - ( not ( 
│ │ │ +001d6400: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ +001d6410: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001d6420: 6573 2061 6e64 2022 626f 6f74 6322 2069  es and "bootc" i
│ │ │ +001d6430: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001d6440: 7061 636b 6167 6573 0a20 2020 2061 6e64  packages.    and
│ │ │ +001d6450: 206e 6f74 2022 6f70 656e 7368 6966 742d   not "openshift-
│ │ │ +001d6460: 6b75 6265 6c65 7422 2069 6e20 616e 7369  kubelet" in ansi
│ │ │ +001d6470: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001d6480: 6573 2061 6e64 2022 6f73 7472 6565 2220  es and "ostree" 
│ │ │ +001d6490: 696e 2061 6e73 6962 6c65 5f70 726f 635f  in ansible_proc_
│ │ │ +001d64a0: 636d 646c 696e 650a 2020 2020 2920 616e  cmdline.    ) an
│ │ │ +001d64b0: 6420 6e6f 7420 2820 616e 7369 626c 655f  d not ( ansible_
│ │ │ +001d64c0: 7669 7274 7561 6c69 7a61 7469 6f6e 5f74  virtualization_t
│ │ │ +001d64d0: 7970 6520 696e 205b 2264 6f63 6b65 7222  ype in ["docker"
│ │ │ +001d64e0: 2c20 226c 7863 222c 2022 6f70 656e 767a  , "lxc", "openvz
│ │ │ +001d64f0: 222c 2022 706f 646d 616e 222c 0a20 2020  ", "podman",.   
│ │ │ +001d6500: 2022 636f 6e74 6169 6e65 7222 5d20 2920   "container"] ) 
│ │ │ +001d6510: 290a 2020 2d20 2722 2f76 6172 2f6c 6f67  ).  - '"/var/log
│ │ │ +001d6520: 2220 696e 2061 6e73 6962 6c65 5f6d 6f75  " in ansible_mou
│ │ │ +001d6530: 6e74 7320 7c20 6d61 7028 6174 7472 6962  nts | map(attrib
│ │ │ +001d6540: 7574 653d 226d 6f75 6e74 2229 207c 206c  ute="mount") | l
│ │ │ +001d6550: 6973 7427 0a20 202d 206d 6f75 6e74 5f69  ist'.  - mount_i
│ │ │ +001d6560: 6e66 6f20 6973 2064 6566 696e 6564 0a20  nfo is defined. 
│ │ │ +001d6570: 202d 2028 6465 7669 6365 5f6e 616d 652e   - (device_name.
│ │ │ +001d6580: 7374 646f 7574 2069 7320 6465 6669 6e65  stdout is define
│ │ │ +001d6590: 6420 616e 6420 2864 6576 6963 655f 6e61  d and (device_na
│ │ │ +001d65a0: 6d65 2e73 7464 6f75 7420 7c20 6c65 6e67  me.stdout | leng
│ │ │ +001d65b0: 7468 2026 6774 3b20 3029 2920 6f72 2028  th > 0)) or (
│ │ │ +001d65c0: 222d 2d66 7374 6162 220a 2020 2020 7c20  "--fstab".    | 
│ │ │ +001d65d0: 6c65 6e67 7468 203d 3d20 3029 0a20 2074  length == 0).  t
│ │ │ +001d65e0: 6167 733a 0a20 202d 204e 4953 542d 3830  ags:.  - NIST-80
│ │ │ +001d65f0: 302d 3533 2d41 432d 360a 2020 2d20 4e49  0-53-AC-6.  - NI
│ │ │ +001d6600: 5354 2d38 3030 2d35 332d 4143 2d36 2831  ST-800-53-AC-6(1
│ │ │ +001d6610: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001d6620: 332d 434d 2d36 2861 290a 2020 2d20 4e49  3-CM-6(a).  - NI
│ │ │ +001d6630: 5354 2d38 3030 2d35 332d 434d 2d37 2861  ST-800-53-CM-7(a
│ │ │ +001d6640: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001d6650: 332d 434d 2d37 2862 290a 2020 2d20 4e49  3-CM-7(b).  - NI
│ │ │ +001d6660: 5354 2d38 3030 2d35 332d 4d50 2d37 0a20  ST-800-53-MP-7. 
│ │ │ +001d6670: 202d 2063 6f6e 6669 6775 7265 5f73 7472   - configure_str
│ │ │ +001d6680: 6174 6567 790a 2020 2d20 6869 6768 5f64  ategy.  - high_d
│ │ │ +001d6690: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ +001d66a0: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ +001d66b0: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ +001d66c0: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f  .  - mount_optio
│ │ │ +001d66d0: 6e5f 7661 725f 6c6f 675f 6e6f 6578 6563  n_var_log_noexec
│ │ │ +001d66e0: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ +001d66f0: 6565 6465 640a 3c2f 636f 6465 3e3c 2f70  eeded.

Remediatio │ │ │ +001d67b0: 6e20 5368 656c 6c20 7363 7269 7074 20e2 n Shell script . │ │ │ +001d67c0: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ +001d6840: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +001d6850: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
Reboot:false
│ │ │ +001d6870: 3c63 6f64 653e 2320 5265 6d65 6469 6174  # Remediat
│ │ │ +001d6880: 696f 6e20 6973 2061 7070 6c69 6361 626c  ion is applicabl
│ │ │ +001d6890: 6520 6f6e 6c79 2069 6e20 6365 7274 6169  e only in certai
│ │ │ +001d68a0: 6e20 706c 6174 666f 726d 730a 6966 2028  n platforms.if (
│ │ │ +001d68b0: 2021 2028 207b 2072 706d 202d 2d71 7569   ! ( { rpm --qui
│ │ │ +001d68c0: 6574 202d 7120 6b65 726e 656c 203b 7d20  et -q kernel ;} 
│ │ │ +001d68d0: 2661 6d70 3b26 616d 703b 207b 2072 706d  && { rpm
│ │ │ +001d68e0: 202d 2d71 7569 6574 202d 7120 626f 6f74   --quiet -q boot
│ │ │ +001d68f0: 6320 3b7d 2026 616d 703b 2661 6d70 3b20  c ;} && 
│ │ │ +001d6900: 7b20 2120 7270 6d20 2d2d 7175 6965 7420  { ! rpm --quiet 
│ │ │ +001d6910: 2d71 206f 7065 6e73 6869 6674 2d6b 7562  -q openshift-kub
│ │ │ +001d6920: 656c 6574 203b 7d20 2661 6d70 3b26 616d  elet ;} &&am
│ │ │ +001d6930: 703b 2028 5b20 2d66 202f 7275 6e2f 6f73  p; ([ -f /run/os
│ │ │ +001d6940: 7472 6565 2d62 6f6f 7465 6420 5d20 7c7c  tree-booted ] ||
│ │ │ +001d6950: 205b 202d 4c20 2f6f 7374 7265 6520 5d29   [ -L /ostree ])
│ │ │ +001d6960: 2029 2026 616d 703b 2661 6d70 3b20 2120   ) && ! 
│ │ │ +001d6970: 2820 5b20 2d66 202f 2e64 6f63 6b65 7265  ( [ -f /.dockere
│ │ │ +001d6980: 6e76 205d 207c 7c20 5b20 2d66 202f 7275  nv ] || [ -f /ru
│ │ │ +001d6990: 6e2f 2e63 6f6e 7461 696e 6572 656e 7620  n/.containerenv 
│ │ │ +001d69a0: 5d20 2920 2920 2661 6d70 3b26 616d 703b  ] ) ) &&
│ │ │ +001d69b0: 207b 2028 2066 696e 646d 6e74 202d 2d6b   { ( findmnt --k
│ │ │ +001d69c0: 6572 6e65 6c20 222f 7661 722f 6c6f 6722  ernel "/var/log"
│ │ │ +001d69d0: 2026 6774 3b20 2f64 6576 2f6e 756c 6c20   > /dev/null 
│ │ │ +001d69e0: 7c7c 2066 696e 646d 6e74 202d 2d66 7374  || findmnt --fst
│ │ │ +001d69f0: 6162 2022 2f76 6172 2f6c 6f67 2220 2667  ab "/var/log" &g
│ │ │ +001d6a00: 743b 202f 6465 762f 6e75 6c6c 2029 3b20  t; /dev/null ); 
│ │ │ +001d6a10: 7d3b 2074 6865 6e0a 0a66 756e 6374 696f  }; then..functio
│ │ │ +001d6a20: 6e20 7065 7266 6f72 6d5f 7265 6d65 6469  n perform_remedi
│ │ │ +001d6a30: 6174 696f 6e20 7b0a 0a20 2020 200a 2020  ation {..    .  
│ │ │ +001d6a40: 2020 2020 2020 2320 7468 6520 6d6f 756e        # the moun
│ │ │ +001d6a50: 7420 706f 696e 7420 2f76 6172 2f6c 6f67  t point /var/log
│ │ │ +001d6a60: 2068 6173 2074 6f20 6265 2064 6566 696e   has to be defin
│ │ │ +001d6a70: 6564 2069 6e20 2f65 7463 2f66 7374 6162  ed in /etc/fstab
│ │ │ +001d6a80: 0a20 2020 2020 2020 2023 2062 6566 6f72  .        # befor
│ │ │ +001d6a90: 6520 7468 6973 2072 656d 6564 6961 7469  e this remediati
│ │ │ +001d6aa0: 6f6e 2063 616e 2062 6520 6578 6563 7574  on can be execut
│ │ │ +001d6ab0: 6564 2e20 496e 2063 6173 6520 6974 2069  ed. In case it i
│ │ │ +001d6ac0: 7320 6e6f 7420 6465 6669 6e65 642c 2074  s not defined, t
│ │ │ +001d6ad0: 6865 0a20 2020 2020 2020 2023 2072 656d  he.        # rem
│ │ │ +001d6ae0: 6564 6961 7469 6f6e 2061 626f 7274 7320  ediation aborts 
│ │ │ +001d6af0: 616e 6420 6e6f 2063 6861 6e67 6573 2072  and no changes r
│ │ │ +001d6b00: 6567 6172 6469 6e67 2074 6865 206d 6f75  egarding the mou
│ │ │ +001d6b10: 6e74 2070 6f69 6e74 2061 7265 2064 6f6e  nt point are don
│ │ │ +001d6b20: 652e 0a20 2020 2020 2020 206d 6f75 6e74  e..        mount
│ │ │ +001d6b30: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ +001d6b40: 6578 703d 2224 2870 7269 6e74 6620 225e  exp="$(printf "^
│ │ │ +001d6b50: 5b5b 3a73 7061 6365 3a5d 5d2a 5b5e 235d  [[:space:]]*[^#]
│ │ │ +001d6b60: 2e2a 5b5b 3a73 7061 6365 3a5d 5d25 735b  .*[[:space:]]%s[
│ │ │ +001d6b70: 5b3a 7370 6163 653a 5d5d 2220 222f 7661  [:space:]]" "/va
│ │ │ +001d6b80: 722f 6c6f 6722 2922 0a0a 2020 2020 6772  r/log")"..    gr
│ │ │ +001d6b90: 6570 2022 246d 6f75 6e74 5f70 6f69 6e74  ep "$mount_point
│ │ │ +001d6ba0: 5f6d 6174 6368 5f72 6567 6578 7022 202d  _match_regexp" -
│ │ │ +001d6bb0: 7120 2f65 7463 2f66 7374 6162 205c 0a20  q /etc/fstab \. 
│ │ │ +001d6bc0: 2020 2020 2020 207c 7c20 7b20 6563 686f         || { echo
│ │ │ +001d6bd0: 2022 5468 6520 6d6f 756e 7420 706f 696e   "The mount poin
│ │ │ +001d6be0: 7420 272f 7661 722f 6c6f 6727 2069 7320  t '/var/log' is 
│ │ │ +001d6bf0: 6e6f 7420 6576 656e 2069 6e20 2f65 7463  not even in /etc
│ │ │ +001d6c00: 2f66 7374 6162 2c20 736f 2077 6520 6361  /fstab, so we ca
│ │ │ +001d6c10: 6e27 7420 7365 7420 7570 206d 6f75 6e74  n't set up mount
│ │ │ +001d6c20: 206f 7074 696f 6e73 2220 2667 743b 2661   options" >&a
│ │ │ +001d6c30: 6d70 3b32 3b0a 2020 2020 2020 2020 2020  mp;2;.          
│ │ │ +001d6c40: 2020 2020 2020 6563 686f 2022 4e6f 7420        echo "Not 
│ │ │ +001d6c50: 7265 6d65 6469 6174 696e 672c 2062 6563  remediating, bec
│ │ │ +001d6c60: 6175 7365 2074 6865 7265 2069 7320 6e6f  ause there is no
│ │ │ +001d6c70: 2072 6563 6f72 6420 6f66 202f 7661 722f   record of /var/
│ │ │ +001d6c80: 6c6f 6720 696e 202f 6574 632f 6673 7461  log in /etc/fsta
│ │ │ +001d6c90: 6222 2026 6774 3b26 616d 703b 323b 2072  b" >&2; r
│ │ │ +001d6ca0: 6574 7572 6e20 313b 207d 0a20 2020 200a  eturn 1; }.    .
│ │ │ +001d6cb0: 0a0a 2020 2020 6d6f 756e 745f 706f 696e  ..    mount_poin
│ │ │ +001d6cc0: 745f 6d61 7463 685f 7265 6765 7870 3d22  t_match_regexp="
│ │ │ +001d6cd0: 2428 7072 696e 7466 2022 5e5b 5b3a 7370  $(printf "^[[:sp
│ │ │ +001d6ce0: 6163 653a 5d5d 2a5b 5e23 5d2e 2a5b 5b3a  ace:]]*[^#].*[[:
│ │ │ +001d6cf0: 7370 6163 653a 5d5d 2573 5b5b 3a73 7061  space:]]%s[[:spa
│ │ │ +001d6d00: 6365 3a5d 5d22 202f 7661 722f 6c6f 6729  ce:]]" /var/log)
│ │ │ +001d6d10: 220a 0a20 2020 2023 2049 6620 7468 6520  "..    # If the 
│ │ │ +001d6d20: 6d6f 756e 7420 706f 696e 7420 6973 206e  mount point is n
│ │ │ +001d6d30: 6f74 2069 6e20 2f65 7463 2f66 7374 6162  ot in /etc/fstab
│ │ │ +001d6d40: 2c20 6765 7420 7072 6576 696f 7573 206d  , get previous m
│ │ │ +001d6d50: 6f75 6e74 206f 7074 696f 6e73 2066 726f  ount options fro
│ │ │ +001d6d60: 6d20 2f65 7463 2f6d 7461 620a 2020 2020  m /etc/mtab.    
│ │ │ +001d6d70: 6966 2021 2067 7265 7020 2d71 2022 246d  if ! grep -q "$m
│ │ │ +001d6d80: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ +001d6d90: 5f72 6567 6578 7022 202f 6574 632f 6673  _regexp" /etc/fs
│ │ │ +001d6da0: 7461 623b 2074 6865 6e0a 2020 2020 2020  tab; then.      
│ │ │ +001d6db0: 2020 2320 7275 6e74 696d 6520 6f70 7473    # runtime opts
│ │ │ +001d6dc0: 2077 6974 686f 7574 2073 6f6d 6520 6175   without some au
│ │ │ +001d6dd0: 746f 6d61 7469 6320 6b65 726e 656c 2f75  tomatic kernel/u
│ │ │ +001d6de0: 7365 7273 7061 6365 2d61 6464 6564 2064  serspace-added d
│ │ │ +001d6df0: 6566 6175 6c74 730a 2020 2020 2020 2020  efaults.        
│ │ │ +001d6e00: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ +001d6e10: 7074 733d 2428 6772 6570 2022 246d 6f75  pts=$(grep "$mou
│ │ │ +001d6e20: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ +001d6e30: 6567 6578 7022 202f 6574 632f 6d74 6162  egexp" /etc/mtab
│ │ │ +001d6e40: 207c 2068 6561 6420 2d31 207c 2020 6177   | head -1 |  aw
│ │ │ +001d6e50: 6b20 277b 7072 696e 7420 2434 7d27 205c  k '{print $4}' \
│ │ │ +001d6e60: 0a20 2020 2020 2020 2020 2020 2020 2020  .               
│ │ │ +001d6e70: 2020 2020 207c 2073 6564 202d 4520 2273       | sed -E "s
│ │ │ +001d6e80: 2f28 7277 7c64 6566 6175 6c74 737c 7365  /(rw|defaults|se
│ │ │ +001d6e90: 636c 6162 656c 7c6e 6f65 7865 6329 282c  clabel|noexec)(,
│ │ │ +001d6ea0: 7c24 292f 2f67 3b73 2f2c 242f 2f22 290a  |$)//g;s/,$//").
│ │ │ +001d6eb0: 2020 2020 2020 2020 5b20 2224 7072 6576          [ "$prev
│ │ │ +001d6ec0: 696f 7573 5f6d 6f75 6e74 5f6f 7074 7322  ious_mount_opts"
│ │ │ +001d6ed0: 205d 2026 616d 703b 2661 6d70 3b20 7072   ] && pr
│ │ │ +001d6ee0: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ +001d6ef0: 732b 3d22 2c22 0a20 2020 2020 2020 2023  s+=",".        #
│ │ │ +001d6f00: 2049 6e20 6973 6f39 3636 3020 6669 6c65   In iso9660 file
│ │ │ +001d6f10: 7379 7374 656d 7320 6d74 6162 2063 6f75  systems mtab cou
│ │ │ +001d6f20: 6c64 2064 6573 6372 6962 6520 6120 2262  ld describe a "b
│ │ │ +001d6f30: 6c6f 636b 7369 7a65 2220 7661 6c75 652c  locksize" value,
│ │ │ +001d6f40: 2074 6869 7320 7368 6f75 6c64 2062 6520   this should be 
│ │ │ +001d6f50: 7265 666c 6563 7465 6420 696e 0a20 2020  reflected in.   
│ │ │ +001d6f60: 2020 2020 2023 2066 7374 6162 2061 7320       # fstab as 
│ │ │ +001d6f70: 2262 6c6f 636b 222e 2020 5468 6520 6e65  "block".  The ne
│ │ │ +001d6f80: 7874 2076 6172 6961 626c 6520 6973 2074  xt variable is t
│ │ │ +001d6f90: 6f20 7361 7469 7366 7920 7368 656c 6c63  o satisfy shellc
│ │ │ +001d6fa0: 6865 636b 2053 4332 3035 302e 0a20 2020  heck SC2050..   
│ │ │ +001d6fb0: 2020 2020 2066 735f 7479 7065 3d22 220a       fs_type="".
│ │ │ +001d6fc0: 2020 2020 2020 2020 6966 205b 2020 2224          if [  "$
│ │ │ +001d6fd0: 6673 5f74 7970 6522 203d 3d20 2269 736f  fs_type" == "iso
│ │ │ +001d6fe0: 3936 3630 2220 5d20 3b20 7468 656e 0a20  9660" ] ; then. 
│ │ │ +001d6ff0: 2020 2020 2020 2020 2020 2070 7265 7669             previ
│ │ │ +001d7000: 6f75 735f 6d6f 756e 745f 6f70 7473 3d24  ous_mount_opts=$
│ │ │ +001d7010: 2873 6564 2027 732f 626c 6f63 6b73 697a  (sed 's/blocksiz
│ │ │ +001d7020: 653d 2f62 6c6f 636b 3d2f 2720 266c 743b  e=/block=/' <
│ │ │ +001d7030: 266c 743b 266c 743b 2022 2470 7265 7669  << "$previ
│ │ │ +001d7040: 6f75 735f 6d6f 756e 745f 6f70 7473 2229  ous_mount_opts")
│ │ │ +001d7050: 0a20 2020 2020 2020 2066 690a 2020 2020  .        fi.    
│ │ │ +001d7060: 2020 2020 6563 686f 2022 202f 7661 722f      echo " /var/
│ │ │ +001d7070: 6c6f 6720 2064 6566 6175 6c74 732c 247b  log  defaults,${
│ │ │ +001d7080: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ +001d7090: 7074 737d 6e6f 6578 6563 2030 2030 2220  pts}noexec 0 0" 
│ │ │ +001d70a0: 2667 743b 2667 743b 202f 6574 632f 6673  >> /etc/fs
│ │ │ +001d70b0: 7461 620a 2020 2020 2320 4966 2074 6865  tab.    # If the
│ │ │ +001d70c0: 206d 6f75 6e74 5f6f 7074 206f 7074 696f   mount_opt optio
│ │ │ +001d70d0: 6e20 6973 206e 6f74 2061 6c72 6561 6479  n is not already
│ │ │ +001d70e0: 2069 6e20 7468 6520 6d6f 756e 7420 706f   in the mount po
│ │ │ +001d70f0: 696e 7427 7320 2f65 7463 2f66 7374 6162  int's /etc/fstab
│ │ │ +001d7100: 2065 6e74 7279 2c20 6164 6420 6974 0a20   entry, add it. 
│ │ │ +001d7110: 2020 2065 6c69 6620 2120 6772 6570 2022     elif ! grep "
│ │ │ +001d7120: 246d 6f75 6e74 5f70 6f69 6e74 5f6d 6174  $mount_point_mat
│ │ │ +001d7130: 6368 5f72 6567 6578 7022 202f 6574 632f  ch_regexp" /etc/
│ │ │ +001d7140: 6673 7461 6220 7c20 6772 6570 202d 7120  fstab | grep -q 
│ │ │ +001d7150: 226e 6f65 7865 6322 3b20 7468 656e 0a20  "noexec"; then. 
│ │ │ +001d7160: 2020 2020 2020 2070 7265 7669 6f75 735f         previous_
│ │ │ +001d7170: 6d6f 756e 745f 6f70 7473 3d24 2867 7265  mount_opts=$(gre
│ │ │ +001d7180: 7020 2224 6d6f 756e 745f 706f 696e 745f  p "$mount_point_
│ │ │ +001d7190: 6d61 7463 685f 7265 6765 7870 2220 2f65  match_regexp" /e
│ │ │ +001d71a0: 7463 2f66 7374 6162 207c 2061 776b 2027  tc/fstab | awk '
│ │ │ +001d71b0: 7b70 7269 6e74 2024 347d 2729 0a20 2020  {print $4}').   
│ │ │ +001d71c0: 2020 2020 2073 6564 202d 6920 2273 7c5c       sed -i "s|\
│ │ │ +001d71d0: 2824 7b6d 6f75 6e74 5f70 6f69 6e74 5f6d  (${mount_point_m
│ │ │ +001d71e0: 6174 6368 5f72 6567 6578 707d 2e2a 247b  atch_regexp}.*${
│ │ │ +001d71f0: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ +001d7200: 7074 737d 5c29 7c5c 312c 6e6f 6578 6563  pts}\)|\1,noexec
│ │ │ +001d7210: 7c22 202f 6574 632f 6673 7461 620a 2020  |" /etc/fstab.  
│ │ │ +001d7220: 2020 6669 0a0a 0a20 2020 2069 6620 6d6b    fi...    if mk
│ │ │ +001d7230: 6469 7220 2d70 2022 2f76 6172 2f6c 6f67  dir -p "/var/log
│ │ │ +001d7240: 223b 2074 6865 6e0a 2020 2020 2020 2020  "; then.        
│ │ │ +001d7250: 6966 206d 6f75 6e74 706f 696e 7420 2d71  if mountpoint -q
│ │ │ +001d7260: 2022 2f76 6172 2f6c 6f67 223b 2074 6865   "/var/log"; the
│ │ │ +001d7270: 6e0a 2020 2020 2020 2020 2020 2020 6d6f  n.            mo
│ │ │ +001d7280: 756e 7420 2d6f 2072 656d 6f75 6e74 202d  unt -o remount -
│ │ │ +001d7290: 2d74 6172 6765 7420 222f 7661 722f 6c6f  -target "/var/lo
│ │ │ +001d72a0: 6722 0a20 2020 2020 2020 2066 690a 2020  g".        fi.  
│ │ │ +001d72b0: 2020 6669 0a7d 0a0a 7065 7266 6f72 6d5f    fi.}..perform_
│ │ │ +001d72c0: 7265 6d65 6469 6174 696f 6e0a 0a65 6c73  remediation..els
│ │ │ +001d72d0: 650a 2020 2020 2667 743b 2661 6d70 3b32  e.    >&2
│ │ │ +001d72e0: 2065 6368 6f20 2752 656d 6564 6961 7469   echo 'Remediati
│ │ │ +001d72f0: 6f6e 2069 7320 6e6f 7420 6170 706c 6963  on is not applic
│ │ │ +001d7300: 6162 6c65 2c20 6e6f 7468 696e 6720 7761  able, nothing wa
│ │ │ +001d7310: 7320 646f 6e65 270a 6669 0a3c 2f63 6f64  s done'.fi.
Remed │ │ │ +001d73d0: 6961 7469 6f6e 2041 6e61 636f 6e64 6120 iation Anaconda │ │ │ +001d73e0: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ +001d73f0: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
< │ │ │ +001d74e0: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
Com │ │ │ +001d7470: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ +001d74a0: 3a3c 2f74 683e 3c74 643e 6869 6768 3c2f :high
│ │ │ +001d74c0: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +001d74d0: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +001d74f0: 3c2f 7468 3e3c 7464 3e65 6e61 626c 653c enable< │ │ │ +001d7500: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
.par
│ │ │ +001d7520: 7420 2f76 6172 2f6c 6f67 202d 2d6d 6f75  t /var/log --mou
│ │ │ +001d7530: 6e74 6f70 7469 6f6e 733d 226e 6f65 7865  ntoptions="noexe
│ │ │ +001d7540: 6322 0a3c 2f63 6f64 653e 3c2f 7072 653e  c".
│ │ │ 001d7550: 3c2f 6469 763e 3c2f 6469 763e 3c2f 7464
│ │ │ 001d7580: 3c74 7220 6461 7461 2d74 742d 6964 3d22 Remediatio │ │ │ -001d81b0: 6e20 416e 6163 6f6e 6461 2073 6e69 7070 n Anaconda snipp │ │ │ -001d81c0: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ -001d8240: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ -001d8250: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -001d8260: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:highReboo │ │ │ -001d82a0: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -001d82b0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ -001d82d0: 3c74 643e 656e 6162 6c65 3c2f 7464 3e3c enable< │ │ │ -001d82e0: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
.part /va
│ │ │ -001d8300: 722f 6c6f 6720 2d2d 6d6f 756e 746f 7074  r/log --mountopt
│ │ │ -001d8310: 696f 6e73 3d22 6e6f 7375 6964 220a 3c2f  ions="nosuid".
Re │ │ │ -001d83d0: 6d65 6469 6174 696f 6e20 416e 7369 626c mediation Ansibl │ │ │ -001d83e0: 6520 736e 6970 7065 7420 e287 b23c 2f61 e snippet ...
< │ │ │ -001d8480: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -001d8490: 3c74 723e 3c74 683e 4469 7372 7570 7469 Reboot:false
- name: Gather 
│ │ │ -001d8530: 7468 6520 7061 636b 6167 6520 6661 6374  the package fact
│ │ │ -001d8540: 730a 2020 7061 636b 6167 655f 6661 6374  s.  package_fact
│ │ │ -001d8550: 733a 0a20 2020 206d 616e 6167 6572 3a20  s:.    manager: 
│ │ │ -001d8560: 6175 746f 0a20 2074 6167 733a 0a20 202d  auto.  tags:.  -
│ │ │ -001d8570: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ -001d8580: 360a 2020 2d20 4e49 5354 2d38 3030 2d35  6.  - NIST-800-5
│ │ │ -001d8590: 332d 4143 2d36 2831 290a 2020 2d20 4e49  3-AC-6(1).  - NI
│ │ │ -001d85a0: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ -001d85b0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -001d85c0: 332d 434d 2d37 2861 290a 2020 2d20 4e49  3-CM-7(a).  - NI
│ │ │ -001d85d0: 5354 2d38 3030 2d35 332d 434d 2d37 2862  ST-800-53-CM-7(b
│ │ │ -001d85e0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -001d85f0: 332d 4d50 2d37 0a20 202d 2063 6f6e 6669  3-MP-7.  - confi
│ │ │ -001d8600: 6775 7265 5f73 7472 6174 6567 790a 2020  gure_strategy.  
│ │ │ -001d8610: 2d20 6869 6768 5f64 6973 7275 7074 696f  - high_disruptio
│ │ │ -001d8620: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65  n.  - low_comple
│ │ │ -001d8630: 7869 7479 0a20 202d 206d 6564 6975 6d5f  xity.  - medium_
│ │ │ -001d8640: 7365 7665 7269 7479 0a20 202d 206d 6f75  severity.  - mou
│ │ │ -001d8650: 6e74 5f6f 7074 696f 6e5f 7661 725f 6c6f  nt_option_var_lo
│ │ │ -001d8660: 675f 6e6f 7375 6964 0a20 202d 206e 6f5f  g_nosuid.  - no_
│ │ │ -001d8670: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ -001d8680: 206e 616d 653a 2027 4164 6420 6e6f 7375   name: 'Add nosu
│ │ │ -001d8690: 6964 204f 7074 696f 6e20 746f 202f 7661  id Option to /va
│ │ │ -001d86a0: 722f 6c6f 673a 2043 6865 636b 2069 6e66  r/log: Check inf
│ │ │ -001d86b0: 6f72 6d61 7469 6f6e 2061 7373 6f63 6961  ormation associa
│ │ │ -001d86c0: 7465 6420 746f 206d 6f75 6e74 706f 696e  ted to mountpoin
│ │ │ -001d86d0: 7427 0a20 2061 6e73 6962 6c65 2e62 7569  t'.  ansible.bui
│ │ │ -001d86e0: 6c74 696e 2e63 6f6d 6d61 6e64 3a20 6669  ltin.command: fi
│ │ │ -001d86f0: 6e64 6d6e 7420 2d2d 6673 7461 6220 272f  ndmnt --fstab '/
│ │ │ -001d8700: 7661 722f 6c6f 6727 0a20 2072 6567 6973  var/log'.  regis
│ │ │ -001d8710: 7465 723a 2064 6576 6963 655f 6e61 6d65  ter: device_name
│ │ │ -001d8720: 0a20 2066 6169 6c65 645f 7768 656e 3a20  .  failed_when: 
│ │ │ -001d8730: 6465 7669 6365 5f6e 616d 652e 7263 2026  device_name.rc &
│ │ │ -001d8740: 6774 3b20 310a 2020 6368 616e 6765 645f  gt; 1.  changed_
│ │ │ -001d8750: 7768 656e 3a20 6661 6c73 650a 2020 6368  when: false.  ch
│ │ │ -001d8760: 6563 6b5f 6d6f 6465 3a20 6661 6c73 650a  eck_mode: false.
│ │ │ -001d8770: 2020 7768 656e 3a0a 2020 2d20 2820 6e6f    when:.  - ( no
│ │ │ -001d8780: 7420 2820 226b 6572 6e65 6c22 2069 6e20  t ( "kernel" in 
│ │ │ -001d8790: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001d87a0: 636b 6167 6573 2061 6e64 2022 626f 6f74  ckages and "boot
│ │ │ -001d87b0: 6322 2069 6e20 616e 7369 626c 655f 6661  c" in ansible_fa
│ │ │ -001d87c0: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ -001d87d0: 2061 6e64 206e 6f74 2022 6f70 656e 7368   and not "opensh
│ │ │ -001d87e0: 6966 742d 6b75 6265 6c65 7422 2069 6e20  ift-kubelet" in 
│ │ │ -001d87f0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001d8800: 636b 6167 6573 2061 6e64 2022 6f73 7472  ckages and "ostr
│ │ │ -001d8810: 6565 2220 696e 2061 6e73 6962 6c65 5f70  ee" in ansible_p
│ │ │ -001d8820: 726f 635f 636d 646c 696e 650a 2020 2020  roc_cmdline.    
│ │ │ -001d8830: 2920 616e 6420 6e6f 7420 2820 616e 7369  ) and not ( ansi
│ │ │ -001d8840: 626c 655f 7669 7274 7561 6c69 7a61 7469  ble_virtualizati
│ │ │ -001d8850: 6f6e 5f74 7970 6520 696e 205b 2264 6f63  on_type in ["doc
│ │ │ -001d8860: 6b65 7222 2c20 226c 7863 222c 2022 6f70  ker", "lxc", "op
│ │ │ -001d8870: 656e 767a 222c 2022 706f 646d 616e 222c  envz", "podman",
│ │ │ -001d8880: 0a20 2020 2022 636f 6e74 6169 6e65 7222  .    "container"
│ │ │ -001d8890: 5d20 2920 290a 2020 2d20 2722 2f76 6172  ] ) ).  - '"/var
│ │ │ -001d88a0: 2f6c 6f67 2220 696e 2061 6e73 6962 6c65  /log" in ansible
│ │ │ -001d88b0: 5f6d 6f75 6e74 7320 7c20 6d61 7028 6174  _mounts | map(at
│ │ │ -001d88c0: 7472 6962 7574 653d 226d 6f75 6e74 2229  tribute="mount")
│ │ │ -001d88d0: 207c 206c 6973 7427 0a20 2074 6167 733a   | list'.  tags:
│ │ │ -001d88e0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001d88f0: 2d41 432d 360a 2020 2d20 4e49 5354 2d38  -AC-6.  - NIST-8
│ │ │ -001d8900: 3030 2d35 332d 4143 2d36 2831 290a 2020  00-53-AC-6(1).  
│ │ │ -001d8910: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -001d8920: 2d36 2861 290a 2020 2d20 4e49 5354 2d38  -6(a).  - NIST-8
│ │ │ -001d8930: 3030 2d35 332d 434d 2d37 2861 290a 2020  00-53-CM-7(a).  
│ │ │ -001d8940: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -001d8950: 2d37 2862 290a 2020 2d20 4e49 5354 2d38  -7(b).  - NIST-8
│ │ │ -001d8960: 3030 2d35 332d 4d50 2d37 0a20 202d 2063  00-53-MP-7.  - c
│ │ │ -001d8970: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ -001d8980: 790a 2020 2d20 6869 6768 5f64 6973 7275  y.  - high_disru
│ │ │ -001d8990: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f  ption.  - low_co
│ │ │ -001d89a0: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ -001d89b0: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ -001d89c0: 206d 6f75 6e74 5f6f 7074 696f 6e5f 7661   mount_option_va
│ │ │ -001d89d0: 725f 6c6f 675f 6e6f 7375 6964 0a20 202d  r_log_nosuid.  -
│ │ │ -001d89e0: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ -001d89f0: 640a 0a2d 206e 616d 653a 2027 4164 6420  d..- name: 'Add 
│ │ │ -001d8a00: 6e6f 7375 6964 204f 7074 696f 6e20 746f  nosuid Option to
│ │ │ -001d8a10: 202f 7661 722f 6c6f 673a 2043 7265 6174   /var/log: Creat
│ │ │ -001d8a20: 6520 6d6f 756e 745f 696e 666f 2064 6963  e mount_info dic
│ │ │ -001d8a30: 7469 6f6e 6172 7920 7661 7269 6162 6c65  tionary variable
│ │ │ -001d8a40: 270a 2020 7365 745f 6661 6374 3a0a 2020  '.  set_fact:.  
│ │ │ -001d8a50: 2020 6d6f 756e 745f 696e 666f 3a20 277b    mount_info: '{
│ │ │ -001d8a60: 7b20 6d6f 756e 745f 696e 666f 7c64 6566  { mount_info|def
│ │ │ -001d8a70: 6175 6c74 287b 7d29 7c63 6f6d 6269 6e65  ault({})|combine
│ │ │ -001d8a80: 287b 6974 656d 2e30 3a20 6974 656d 2e31  ({item.0: item.1
│ │ │ -001d8a90: 7d29 207d 7d27 0a20 2077 6974 685f 746f  }) }}'.  with_to
│ │ │ -001d8aa0: 6765 7468 6572 3a0a 2020 2d20 277b 7b20  gether:.  - '{{ 
│ │ │ -001d8ab0: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ -001d8ac0: 7574 5f6c 696e 6573 5b30 5d2e 7370 6c69  ut_lines[0].spli
│ │ │ -001d8ad0: 7428 2920 7c20 6d61 7028 2727 6c6f 7765  t() | map(''lowe
│ │ │ -001d8ae0: 7227 2729 207c 206c 6973 7420 7d7d 270a  r'') | list }}'.
│ │ │ -001d8af0: 2020 2d20 277b 7b20 6465 7669 6365 5f6e    - '{{ device_n
│ │ │ -001d8b00: 616d 652e 7374 646f 7574 5f6c 696e 6573  ame.stdout_lines
│ │ │ -001d8b10: 5b31 5d2e 7370 6c69 7428 2920 7c20 6c69  [1].split() | li
│ │ │ -001d8b20: 7374 207d 7d27 0a20 2077 6865 6e3a 0a20  st }}'.  when:. 
│ │ │ -001d8b30: 202d 2028 206e 6f74 2028 2022 6b65 726e   - ( not ( "kern
│ │ │ -001d8b40: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ -001d8b50: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ -001d8b60: 6420 2262 6f6f 7463 2220 696e 2061 6e73  d "bootc" in ans
│ │ │ -001d8b70: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001d8b80: 6765 730a 2020 2020 616e 6420 6e6f 7420  ges.    and not 
│ │ │ -001d8b90: 226f 7065 6e73 6869 6674 2d6b 7562 656c  "openshift-kubel
│ │ │ -001d8ba0: 6574 2220 696e 2061 6e73 6962 6c65 5f66  et" in ansible_f
│ │ │ -001d8bb0: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ -001d8bc0: 6420 226f 7374 7265 6522 2069 6e20 616e  d "ostree" in an
│ │ │ -001d8bd0: 7369 626c 655f 7072 6f63 5f63 6d64 6c69  sible_proc_cmdli
│ │ │ -001d8be0: 6e65 0a20 2020 2029 2061 6e64 206e 6f74  ne.    ) and not
│ │ │ -001d8bf0: 2028 2061 6e73 6962 6c65 5f76 6972 7475   ( ansible_virtu
│ │ │ -001d8c00: 616c 697a 6174 696f 6e5f 7479 7065 2069  alization_type i
│ │ │ -001d8c10: 6e20 5b22 646f 636b 6572 222c 2022 6c78  n ["docker", "lx
│ │ │ -001d8c20: 6322 2c20 226f 7065 6e76 7a22 2c20 2270  c", "openvz", "p
│ │ │ -001d8c30: 6f64 6d61 6e22 2c0a 2020 2020 2263 6f6e  odman",.    "con
│ │ │ -001d8c40: 7461 696e 6572 225d 2029 2029 0a20 202d  tainer"] ) ).  -
│ │ │ -001d8c50: 2027 222f 7661 722f 6c6f 6722 2069 6e20   '"/var/log" in 
│ │ │ -001d8c60: 616e 7369 626c 655f 6d6f 756e 7473 207c  ansible_mounts |
│ │ │ -001d8c70: 206d 6170 2861 7474 7269 6275 7465 3d22   map(attribute="
│ │ │ -001d8c80: 6d6f 756e 7422 2920 7c20 6c69 7374 270a  mount") | list'.
│ │ │ -001d8c90: 2020 2d20 6465 7669 6365 5f6e 616d 652e    - device_name.
│ │ │ -001d8ca0: 7374 646f 7574 2069 7320 6465 6669 6e65  stdout is define
│ │ │ -001d8cb0: 6420 616e 6420 6465 7669 6365 5f6e 616d  d and device_nam
│ │ │ -001d8cc0: 652e 7374 646f 7574 5f6c 696e 6573 2069  e.stdout_lines i
│ │ │ -001d8cd0: 7320 6465 6669 6e65 640a 2020 2d20 2864  s defined.  - (d
│ │ │ -001d8ce0: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ -001d8cf0: 7420 7c20 6c65 6e67 7468 2026 6774 3b20  t | length > 
│ │ │ -001d8d00: 3029 0a20 2074 6167 733a 0a20 202d 204e  0).  tags:.  - N
│ │ │ -001d8d10: 4953 542d 3830 302d 3533 2d41 432d 360a  IST-800-53-AC-6.
│ │ │ -001d8d20: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001d8d30: 4143 2d36 2831 290a 2020 2d20 4e49 5354  AC-6(1).  - NIST
│ │ │ -001d8d40: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ -001d8d50: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001d8d60: 434d 2d37 2861 290a 2020 2d20 4e49 5354  CM-7(a).  - NIST
│ │ │ -001d8d70: 2d38 3030 2d35 332d 434d 2d37 2862 290a  -800-53-CM-7(b).
│ │ │ -001d8d80: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001d8d90: 4d50 2d37 0a20 202d 2063 6f6e 6669 6775  MP-7.  - configu
│ │ │ -001d8da0: 7265 5f73 7472 6174 6567 790a 2020 2d20  re_strategy.  - 
│ │ │ -001d8db0: 6869 6768 5f64 6973 7275 7074 696f 6e0a  high_disruption.
│ │ │ -001d8dc0: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ -001d8dd0: 7479 0a20 202d 206d 6564 6975 6d5f 7365  ty.  - medium_se
│ │ │ -001d8de0: 7665 7269 7479 0a20 202d 206d 6f75 6e74  verity.  - mount
│ │ │ -001d8df0: 5f6f 7074 696f 6e5f 7661 725f 6c6f 675f  _option_var_log_
│ │ │ -001d8e00: 6e6f 7375 6964 0a20 202d 206e 6f5f 7265  nosuid.  - no_re
│ │ │ -001d8e10: 626f 6f74 5f6e 6565 6465 640a 0a2d 206e  boot_needed..- n
│ │ │ -001d8e20: 616d 653a 2027 4164 6420 6e6f 7375 6964  ame: 'Add nosuid
│ │ │ -001d8e30: 204f 7074 696f 6e20 746f 202f 7661 722f   Option to /var/
│ │ │ -001d8e40: 6c6f 673a 2049 6620 2f76 6172 2f6c 6f67  log: If /var/log
│ │ │ -001d8e50: 206e 6f74 206d 6f75 6e74 6564 2c20 6372   not mounted, cr
│ │ │ -001d8e60: 6166 7420 6d6f 756e 745f 696e 666f 0a20  aft mount_info. 
│ │ │ -001d8e70: 2020 206d 616e 7561 6c6c 7927 0a20 2073     manually'.  s
│ │ │ -001d8e80: 6574 5f66 6163 743a 0a20 2020 206d 6f75  et_fact:.    mou
│ │ │ -001d8e90: 6e74 5f69 6e66 6f3a 2027 7b7b 206d 6f75  nt_info: '{{ mou
│ │ │ -001d8ea0: 6e74 5f69 6e66 6f7c 6465 6661 756c 7428  nt_info|default(
│ │ │ -001d8eb0: 7b7d 297c 636f 6d62 696e 6528 7b69 7465  {})|combine({ite
│ │ │ -001d8ec0: 6d2e 303a 2069 7465 6d2e 317d 2920 7d7d  m.0: item.1}) }}
│ │ │ -001d8ed0: 270a 2020 7769 7468 5f74 6f67 6574 6865  '.  with_togethe
│ │ │ -001d8ee0: 723a 0a20 202d 202d 2074 6172 6765 740a  r:.  - - target.
│ │ │ -001d8ef0: 2020 2020 2d20 736f 7572 6365 0a20 2020      - source.   
│ │ │ -001d8f00: 202d 2066 7374 7970 650a 2020 2020 2d20   - fstype.    - 
│ │ │ -001d8f10: 6f70 7469 6f6e 730a 2020 2d20 2d20 2f76  options.  - - /v
│ │ │ -001d8f20: 6172 2f6c 6f67 0a20 2020 202d 2027 270a  ar/log.    - ''.
│ │ │ -001d8f30: 2020 2020 2d20 2727 0a20 2020 202d 2064      - ''.    - d
│ │ │ -001d8f40: 6566 6175 6c74 730a 2020 7768 656e 3a0a  efaults.  when:.
│ │ │ -001d8f50: 2020 2d20 2820 6e6f 7420 2820 226b 6572    - ( not ( "ker
│ │ │ -001d8f60: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ -001d8f70: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ -001d8f80: 6e64 2022 626f 6f74 6322 2069 6e20 616e  nd "bootc" in an
│ │ │ -001d8f90: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001d8fa0: 6167 6573 0a20 2020 2061 6e64 206e 6f74  ages.    and not
│ │ │ -001d8fb0: 2022 6f70 656e 7368 6966 742d 6b75 6265   "openshift-kube
│ │ │ -001d8fc0: 6c65 7422 2069 6e20 616e 7369 626c 655f  let" in ansible_
│ │ │ -001d8fd0: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ -001d8fe0: 6e64 2022 6f73 7472 6565 2220 696e 2061  nd "ostree" in a
│ │ │ -001d8ff0: 6e73 6962 6c65 5f70 726f 635f 636d 646c  nsible_proc_cmdl
│ │ │ -001d9000: 696e 650a 2020 2020 2920 616e 6420 6e6f  ine.    ) and no
│ │ │ -001d9010: 7420 2820 616e 7369 626c 655f 7669 7274  t ( ansible_virt
│ │ │ -001d9020: 7561 6c69 7a61 7469 6f6e 5f74 7970 6520  ualization_type 
│ │ │ -001d9030: 696e 205b 2264 6f63 6b65 7222 2c20 226c  in ["docker", "l
│ │ │ -001d9040: 7863 222c 2022 6f70 656e 767a 222c 2022  xc", "openvz", "
│ │ │ -001d9050: 706f 646d 616e 222c 0a20 2020 2022 636f  podman",.    "co
│ │ │ -001d9060: 6e74 6169 6e65 7222 5d20 2920 290a 2020  ntainer"] ) ).  
│ │ │ -001d9070: 2d20 2722 2f76 6172 2f6c 6f67 2220 696e  - '"/var/log" in
│ │ │ -001d9080: 2061 6e73 6962 6c65 5f6d 6f75 6e74 7320   ansible_mounts 
│ │ │ -001d9090: 7c20 6d61 7028 6174 7472 6962 7574 653d  | map(attribute=
│ │ │ -001d90a0: 226d 6f75 6e74 2229 207c 206c 6973 7427  "mount") | list'
│ │ │ -001d90b0: 0a20 202d 2028 222d 2d66 7374 6162 2220  .  - ("--fstab" 
│ │ │ -001d90c0: 7c20 6c65 6e67 7468 203d 3d20 3029 0a20  | length == 0). 
│ │ │ -001d90d0: 202d 2064 6576 6963 655f 6e61 6d65 2e73   - device_name.s
│ │ │ -001d90e0: 7464 6f75 7420 6973 2064 6566 696e 6564  tdout is defined
│ │ │ -001d90f0: 2061 6e64 2064 6576 6963 655f 6e61 6d65   and device_name
│ │ │ -001d9100: 2e73 7464 6f75 745f 6c69 6e65 7320 6973  .stdout_lines is
│ │ │ -001d9110: 2064 6566 696e 6564 0a20 202d 2028 6465   defined.  - (de
│ │ │ -001d9120: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ -001d9130: 207c 206c 656e 6774 6820 3d3d 2030 290a   | length == 0).
│ │ │ -001d9140: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ -001d9150: 2d38 3030 2d35 332d 4143 2d36 0a20 202d  -800-53-AC-6.  -
│ │ │ -001d9160: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ -001d9170: 3628 3129 0a20 202d 204e 4953 542d 3830  6(1).  - NIST-80
│ │ │ -001d9180: 302d 3533 2d43 4d2d 3628 6129 0a20 202d  0-53-CM-6(a).  -
│ │ │ -001d9190: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -001d91a0: 3728 6129 0a20 202d 204e 4953 542d 3830  7(a).  - NIST-80
│ │ │ -001d91b0: 302d 3533 2d43 4d2d 3728 6229 0a20 202d  0-53-CM-7(b).  -
│ │ │ -001d91c0: 204e 4953 542d 3830 302d 3533 2d4d 502d   NIST-800-53-MP-
│ │ │ -001d91d0: 370a 2020 2d20 636f 6e66 6967 7572 655f  7.  - configure_
│ │ │ -001d91e0: 7374 7261 7465 6779 0a20 202d 2068 6967  strategy.  - hig
│ │ │ -001d91f0: 685f 6469 7372 7570 7469 6f6e 0a20 202d  h_disruption.  -
│ │ │ -001d9200: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ -001d9210: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ -001d9220: 6974 790a 2020 2d20 6d6f 756e 745f 6f70  ity.  - mount_op
│ │ │ -001d9230: 7469 6f6e 5f76 6172 5f6c 6f67 5f6e 6f73  tion_var_log_nos
│ │ │ -001d9240: 7569 640a 2020 2d20 6e6f 5f72 6562 6f6f  uid.  - no_reboo
│ │ │ -001d9250: 745f 6e65 6564 6564 0a0a 2d20 6e61 6d65  t_needed..- name
│ │ │ -001d9260: 3a20 2741 6464 206e 6f73 7569 6420 4f70  : 'Add nosuid Op
│ │ │ -001d9270: 7469 6f6e 2074 6f20 2f76 6172 2f6c 6f67  tion to /var/log
│ │ │ -001d9280: 3a20 4d61 6b65 2073 7572 6520 6e6f 7375  : Make sure nosu
│ │ │ -001d9290: 6964 206f 7074 696f 6e20 6973 2070 6172  id option is par
│ │ │ -001d92a0: 7420 6f66 2074 6865 2074 6f0a 2020 2020  t of the to.    
│ │ │ -001d92b0: 2f76 6172 2f6c 6f67 206f 7074 696f 6e73  /var/log options
│ │ │ -001d92c0: 270a 2020 7365 745f 6661 6374 3a0a 2020  '.  set_fact:.  
│ │ │ -001d92d0: 2020 6d6f 756e 745f 696e 666f 3a20 277b    mount_info: '{
│ │ │ -001d92e0: 7b20 6d6f 756e 745f 696e 666f 207c 2063  { mount_info | c
│ │ │ -001d92f0: 6f6d 6269 6e65 2820 7b27 276f 7074 696f  ombine( {''optio
│ │ │ -001d9300: 6e73 2727 3a27 2727 277e 286d 6f75 6e74  ns'':''''~(mount
│ │ │ -001d9310: 5f69 6e66 6f2e 6f70 7469 6f6e 7320 7c0a  _info.options |.
│ │ │ -001d9320: 2020 2020 2020 6465 6661 756c 7428 2727        default(''
│ │ │ -001d9330: 2727 2929 7e28 2727 2c27 2720 6966 2028  ''))~('','' if (
│ │ │ -001d9340: 6d6f 756e 745f 696e 666f 2e6f 7074 696f  mount_info.optio
│ │ │ -001d9350: 6e73 207c 2064 6566 6175 6c74 2827 2727  ns | default('''
│ │ │ -001d9360: 2729 2920 656c 7365 2027 2727 2729 7e27  ')) else '''')~'
│ │ │ -001d9370: 276e 6f73 7569 6427 270a 2020 2020 2020  'nosuid''.      
│ │ │ -001d9380: 7d29 207d 7d27 0a20 2077 6865 6e3a 0a20  }) }}'.  when:. 
│ │ │ -001d9390: 202d 2028 206e 6f74 2028 2022 6b65 726e   - ( not ( "kern
│ │ │ -001d93a0: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ -001d93b0: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ -001d93c0: 6420 2262 6f6f 7463 2220 696e 2061 6e73  d "bootc" in ans
│ │ │ -001d93d0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001d93e0: 6765 730a 2020 2020 616e 6420 6e6f 7420  ges.    and not 
│ │ │ -001d93f0: 226f 7065 6e73 6869 6674 2d6b 7562 656c  "openshift-kubel
│ │ │ -001d9400: 6574 2220 696e 2061 6e73 6962 6c65 5f66  et" in ansible_f
│ │ │ -001d9410: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ -001d9420: 6420 226f 7374 7265 6522 2069 6e20 616e  d "ostree" in an
│ │ │ -001d9430: 7369 626c 655f 7072 6f63 5f63 6d64 6c69  sible_proc_cmdli
│ │ │ -001d9440: 6e65 0a20 2020 2029 2061 6e64 206e 6f74  ne.    ) and not
│ │ │ -001d9450: 2028 2061 6e73 6962 6c65 5f76 6972 7475   ( ansible_virtu
│ │ │ -001d9460: 616c 697a 6174 696f 6e5f 7479 7065 2069  alization_type i
│ │ │ -001d9470: 6e20 5b22 646f 636b 6572 222c 2022 6c78  n ["docker", "lx
│ │ │ -001d9480: 6322 2c20 226f 7065 6e76 7a22 2c20 2270  c", "openvz", "p
│ │ │ -001d9490: 6f64 6d61 6e22 2c0a 2020 2020 2263 6f6e  odman",.    "con
│ │ │ -001d94a0: 7461 696e 6572 225d 2029 2029 0a20 202d  tainer"] ) ).  -
│ │ │ -001d94b0: 2027 222f 7661 722f 6c6f 6722 2069 6e20   '"/var/log" in 
│ │ │ -001d94c0: 616e 7369 626c 655f 6d6f 756e 7473 207c  ansible_mounts |
│ │ │ -001d94d0: 206d 6170 2861 7474 7269 6275 7465 3d22   map(attribute="
│ │ │ -001d94e0: 6d6f 756e 7422 2920 7c20 6c69 7374 270a  mount") | list'.
│ │ │ -001d94f0: 2020 2d20 6d6f 756e 745f 696e 666f 2069    - mount_info i
│ │ │ -001d9500: 7320 6465 6669 6e65 6420 616e 6420 226e  s defined and "n
│ │ │ -001d9510: 6f73 7569 6422 206e 6f74 2069 6e20 286d  osuid" not in (m
│ │ │ -001d9520: 6f75 6e74 5f69 6e66 6f2e 6f70 7469 6f6e  ount_info.option
│ │ │ -001d9530: 7320 7c20 6465 6661 756c 7428 2727 2929  s | default(''))
│ │ │ -001d9540: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ -001d9550: 542d 3830 302d 3533 2d41 432d 360a 2020  T-800-53-AC-6.  
│ │ │ -001d9560: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ -001d9570: 2d36 2831 290a 2020 2d20 4e49 5354 2d38  -6(1).  - NIST-8
│ │ │ -001d9580: 3030 2d35 332d 434d 2d36 2861 290a 2020  00-53-CM-6(a).  
│ │ │ -001d9590: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -001d95a0: 2d37 2861 290a 2020 2d20 4e49 5354 2d38  -7(a).  - NIST-8
│ │ │ -001d95b0: 3030 2d35 332d 434d 2d37 2862 290a 2020  00-53-CM-7(b).  
│ │ │ -001d95c0: 2d20 4e49 5354 2d38 3030 2d35 332d 4d50  - NIST-800-53-MP
│ │ │ -001d95d0: 2d37 0a20 202d 2063 6f6e 6669 6775 7265  -7.  - configure
│ │ │ -001d95e0: 5f73 7472 6174 6567 790a 2020 2d20 6869  _strategy.  - hi
│ │ │ -001d95f0: 6768 5f64 6973 7275 7074 696f 6e0a 2020  gh_disruption.  
│ │ │ -001d9600: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ -001d9610: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ -001d9620: 7269 7479 0a20 202d 206d 6f75 6e74 5f6f  rity.  - mount_o
│ │ │ -001d9630: 7074 696f 6e5f 7661 725f 6c6f 675f 6e6f  ption_var_log_no
│ │ │ -001d9640: 7375 6964 0a20 202d 206e 6f5f 7265 626f  suid.  - no_rebo
│ │ │ -001d9650: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d  ot_needed..- nam
│ │ │ -001d9660: 653a 2027 4164 6420 6e6f 7375 6964 204f  e: 'Add nosuid O
│ │ │ -001d9670: 7074 696f 6e20 746f 202f 7661 722f 6c6f  ption to /var/lo
│ │ │ -001d9680: 673a 2045 6e73 7572 6520 2f76 6172 2f6c  g: Ensure /var/l
│ │ │ -001d9690: 6f67 2069 7320 6d6f 756e 7465 6420 7769  og is mounted wi
│ │ │ -001d96a0: 7468 206e 6f73 7569 6420 6f70 7469 6f6e  th nosuid option
│ │ │ -001d96b0: 270a 2020 616e 7369 626c 652e 706f 7369  '.  ansible.posi
│ │ │ -001d96c0: 782e 6d6f 756e 743a 0a20 2020 2070 6174  x.mount:.    pat
│ │ │ -001d96d0: 683a 202f 7661 722f 6c6f 670a 2020 2020  h: /var/log.    
│ │ │ -001d96e0: 7372 633a 2027 7b7b 206d 6f75 6e74 5f69  src: '{{ mount_i
│ │ │ -001d96f0: 6e66 6f2e 736f 7572 6365 207c 2064 6566  nfo.source | def
│ │ │ -001d9700: 6175 6c74 2827 2727 2729 207d 7d27 0a20  ault('''') }}'. 
│ │ │ -001d9710: 2020 206f 7074 733a 2027 7b7b 206d 6f75     opts: '{{ mou
│ │ │ -001d9720: 6e74 5f69 6e66 6f2e 6f70 7469 6f6e 7320  nt_info.options 
│ │ │ -001d9730: 7c20 6465 6661 756c 7428 2727 2727 2920  | default('''') 
│ │ │ -001d9740: 7d7d 270a 2020 2020 7374 6174 653a 206d  }}'.    state: m
│ │ │ -001d9750: 6f75 6e74 6564 0a20 2020 2066 7374 7970  ounted.    fstyp
│ │ │ -001d9760: 653a 2027 7b7b 206d 6f75 6e74 5f69 6e66  e: '{{ mount_inf
│ │ │ -001d9770: 6f2e 6673 7479 7065 207c 2064 6566 6175  o.fstype | defau
│ │ │ -001d9780: 6c74 2827 2727 2729 207d 7d27 0a20 2072  lt('''') }}'.  r
│ │ │ -001d9790: 6567 6973 7465 723a 206d 6f75 6e74 5f72  egister: mount_r
│ │ │ -001d97a0: 6573 756c 740a 2020 6661 696c 6564 5f77  esult.  failed_w
│ │ │ -001d97b0: 6865 6e3a 0a20 202d 206d 6f75 6e74 5f72  hen:.  - mount_r
│ │ │ -001d97c0: 6573 756c 7420 6973 2066 6169 6c65 640a  esult is failed.
│ │ │ -001d97d0: 2020 2d20 2727 2774 6172 6765 7420 6973    - '''target is
│ │ │ -001d97e0: 2062 7573 7927 2720 6e6f 7420 696e 2028   busy'' not in (
│ │ │ -001d97f0: 6d6f 756e 745f 7265 7375 6c74 2e6d 7367  mount_result.msg
│ │ │ -001d9800: 207c 2064 6566 6175 6c74 2827 2727 2729   | default('''')
│ │ │ -001d9810: 2927 0a20 202d 2027 2727 616c 7265 6164  )'.  - '''alread
│ │ │ -001d9820: 7920 6d6f 756e 7465 6427 2720 6e6f 7420  y mounted'' not 
│ │ │ -001d9830: 696e 2028 6d6f 756e 745f 7265 7375 6c74  in (mount_result
│ │ │ -001d9840: 2e6d 7367 207c 2064 6566 6175 6c74 2827  .msg | default('
│ │ │ -001d9850: 2727 2729 2927 0a20 2077 6865 6e3a 0a20  '''))'.  when:. 
│ │ │ -001d9860: 202d 2028 206e 6f74 2028 2022 6b65 726e   - ( not ( "kern
│ │ │ -001d9870: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ -001d9880: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ -001d9890: 6420 2262 6f6f 7463 2220 696e 2061 6e73  d "bootc" in ans
│ │ │ -001d98a0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001d98b0: 6765 730a 2020 2020 616e 6420 6e6f 7420  ges.    and not 
│ │ │ -001d98c0: 226f 7065 6e73 6869 6674 2d6b 7562 656c  "openshift-kubel
│ │ │ -001d98d0: 6574 2220 696e 2061 6e73 6962 6c65 5f66  et" in ansible_f
│ │ │ -001d98e0: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ -001d98f0: 6420 226f 7374 7265 6522 2069 6e20 616e  d "ostree" in an
│ │ │ -001d9900: 7369 626c 655f 7072 6f63 5f63 6d64 6c69  sible_proc_cmdli
│ │ │ -001d9910: 6e65 0a20 2020 2029 2061 6e64 206e 6f74  ne.    ) and not
│ │ │ -001d9920: 2028 2061 6e73 6962 6c65 5f76 6972 7475   ( ansible_virtu
│ │ │ -001d9930: 616c 697a 6174 696f 6e5f 7479 7065 2069  alization_type i
│ │ │ -001d9940: 6e20 5b22 646f 636b 6572 222c 2022 6c78  n ["docker", "lx
│ │ │ -001d9950: 6322 2c20 226f 7065 6e76 7a22 2c20 2270  c", "openvz", "p
│ │ │ -001d9960: 6f64 6d61 6e22 2c0a 2020 2020 2263 6f6e  odman",.    "con
│ │ │ -001d9970: 7461 696e 6572 225d 2029 2029 0a20 202d  tainer"] ) ).  -
│ │ │ -001d9980: 2027 222f 7661 722f 6c6f 6722 2069 6e20   '"/var/log" in 
│ │ │ -001d9990: 616e 7369 626c 655f 6d6f 756e 7473 207c  ansible_mounts |
│ │ │ -001d99a0: 206d 6170 2861 7474 7269 6275 7465 3d22   map(attribute="
│ │ │ -001d99b0: 6d6f 756e 7422 2920 7c20 6c69 7374 270a  mount") | list'.
│ │ │ -001d99c0: 2020 2d20 6d6f 756e 745f 696e 666f 2069    - mount_info i
│ │ │ -001d99d0: 7320 6465 6669 6e65 640a 2020 2d20 2864  s defined.  - (d
│ │ │ -001d99e0: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ -001d99f0: 7420 6973 2064 6566 696e 6564 2061 6e64  t is defined and
│ │ │ -001d9a00: 2028 6465 7669 6365 5f6e 616d 652e 7374   (device_name.st
│ │ │ -001d9a10: 646f 7574 207c 206c 656e 6774 6820 2667  dout | length &g
│ │ │ -001d9a20: 743b 2030 2929 206f 7220 2822 2d2d 6673  t; 0)) or ("--fs
│ │ │ -001d9a30: 7461 6222 0a20 2020 207c 206c 656e 6774  tab".    | lengt
│ │ │ -001d9a40: 6820 3d3d 2030 290a 2020 7461 6773 3a0a  h == 0).  tags:.
│ │ │ -001d9a50: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001d9a60: 4143 2d36 0a20 202d 204e 4953 542d 3830  AC-6.  - NIST-80
│ │ │ -001d9a70: 302d 3533 2d41 432d 3628 3129 0a20 202d  0-53-AC-6(1).  -
│ │ │ -001d9a80: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -001d9a90: 3628 6129 0a20 202d 204e 4953 542d 3830  6(a).  - NIST-80
│ │ │ -001d9aa0: 302d 3533 2d43 4d2d 3728 6129 0a20 202d  0-53-CM-7(a).  -
│ │ │ -001d9ab0: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -001d9ac0: 3728 6229 0a20 202d 204e 4953 542d 3830  7(b).  - NIST-80
│ │ │ -001d9ad0: 302d 3533 2d4d 502d 370a 2020 2d20 636f  0-53-MP-7.  - co
│ │ │ -001d9ae0: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ -001d9af0: 0a20 202d 2068 6967 685f 6469 7372 7570  .  - high_disrup
│ │ │ -001d9b00: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d  tion.  - low_com
│ │ │ -001d9b10: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ -001d9b20: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ -001d9b30: 6d6f 756e 745f 6f70 7469 6f6e 5f76 6172  mount_option_var
│ │ │ -001d9b40: 5f6c 6f67 5f6e 6f73 7569 640a 2020 2d20  _log_nosuid.  - 
│ │ │ -001d9b50: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ -001d9b60: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation She │ │ │ -001d9c20: 6c6c 2073 6372 6970 7420 e287 b23c 2f61 ll script ...
C │ │ │ -001d8470: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -001d84a0: 6f6e 3a3c 2f74 683e 3c74 643e 6869 6768 on:high │ │ │ -001d84b0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -001d84f0: 793a 3c2f 7468 3e3c 7464 3e63 6f6e 6669 y:confi │ │ │ -001d8500: 6775 7265 3c2f 7464 3e3c 2f74 723e 3c2f gure
# Remediation i
│ │ │ -001d9cf0: 7320 6170 706c 6963 6162 6c65 206f 6e6c  s applicable onl
│ │ │ -001d9d00: 7920 696e 2063 6572 7461 696e 2070 6c61  y in certain pla
│ │ │ -001d9d10: 7466 6f72 6d73 0a69 6620 2820 2120 2820  tforms.if ( ! ( 
│ │ │ -001d9d20: 7b20 7270 6d20 2d2d 7175 6965 7420 2d71  { rpm --quiet -q
│ │ │ -001d9d30: 206b 6572 6e65 6c20 3b7d 2026 616d 703b   kernel ;} &
│ │ │ -001d9d40: 2661 6d70 3b20 7b20 7270 6d20 2d2d 7175  & { rpm --qu
│ │ │ -001d9d50: 6965 7420 2d71 2062 6f6f 7463 203b 7d20  iet -q bootc ;} 
│ │ │ -001d9d60: 2661 6d70 3b26 616d 703b 207b 2021 2072  && { ! r
│ │ │ -001d9d70: 706d 202d 2d71 7569 6574 202d 7120 6f70  pm --quiet -q op
│ │ │ -001d9d80: 656e 7368 6966 742d 6b75 6265 6c65 7420  enshift-kubelet 
│ │ │ -001d9d90: 3b7d 2026 616d 703b 2661 6d70 3b20 285b  ;} && ([
│ │ │ -001d9da0: 202d 6620 2f72 756e 2f6f 7374 7265 652d   -f /run/ostree-
│ │ │ -001d9db0: 626f 6f74 6564 205d 207c 7c20 5b20 2d4c  booted ] || [ -L
│ │ │ -001d9dc0: 202f 6f73 7472 6565 205d 2920 2920 2661   /ostree ]) ) &a
│ │ │ -001d9dd0: 6d70 3b26 616d 703b 2021 2028 205b 202d  mp;& ! ( [ -
│ │ │ -001d9de0: 6620 2f2e 646f 636b 6572 656e 7620 5d20  f /.dockerenv ] 
│ │ │ -001d9df0: 7c7c 205b 202d 6620 2f72 756e 2f2e 636f  || [ -f /run/.co
│ │ │ -001d9e00: 6e74 6169 6e65 7265 6e76 205d 2029 2029  ntainerenv ] ) )
│ │ │ -001d9e10: 2026 616d 703b 2661 6d70 3b20 7b20 2820   && { ( 
│ │ │ -001d9e20: 6669 6e64 6d6e 7420 2d2d 6b65 726e 656c  findmnt --kernel
│ │ │ -001d9e30: 2022 2f76 6172 2f6c 6f67 2220 2667 743b   "/var/log" >
│ │ │ -001d9e40: 202f 6465 762f 6e75 6c6c 207c 7c20 6669   /dev/null || fi
│ │ │ -001d9e50: 6e64 6d6e 7420 2d2d 6673 7461 6220 222f  ndmnt --fstab "/
│ │ │ -001d9e60: 7661 722f 6c6f 6722 2026 6774 3b20 2f64  var/log" > /d
│ │ │ -001d9e70: 6576 2f6e 756c 6c20 293b 207d 3b20 7468  ev/null ); }; th
│ │ │ -001d9e80: 656e 0a0a 6675 6e63 7469 6f6e 2070 6572  en..function per
│ │ │ -001d9e90: 666f 726d 5f72 656d 6564 6961 7469 6f6e  form_remediation
│ │ │ -001d9ea0: 207b 0a0a 2020 2020 0a20 2020 2020 2020   {..    .       
│ │ │ -001d9eb0: 2023 2074 6865 206d 6f75 6e74 2070 6f69   # the mount poi
│ │ │ -001d9ec0: 6e74 202f 7661 722f 6c6f 6720 6861 7320  nt /var/log has 
│ │ │ -001d9ed0: 746f 2062 6520 6465 6669 6e65 6420 696e  to be defined in
│ │ │ -001d9ee0: 202f 6574 632f 6673 7461 620a 2020 2020   /etc/fstab.    
│ │ │ -001d9ef0: 2020 2020 2320 6265 666f 7265 2074 6869      # before thi
│ │ │ -001d9f00: 7320 7265 6d65 6469 6174 696f 6e20 6361  s remediation ca
│ │ │ -001d9f10: 6e20 6265 2065 7865 6375 7465 642e 2049  n be executed. I
│ │ │ -001d9f20: 6e20 6361 7365 2069 7420 6973 206e 6f74  n case it is not
│ │ │ -001d9f30: 2064 6566 696e 6564 2c20 7468 650a 2020   defined, the.  
│ │ │ -001d9f40: 2020 2020 2020 2320 7265 6d65 6469 6174        # remediat
│ │ │ -001d9f50: 696f 6e20 6162 6f72 7473 2061 6e64 206e  ion aborts and n
│ │ │ -001d9f60: 6f20 6368 616e 6765 7320 7265 6761 7264  o changes regard
│ │ │ -001d9f70: 696e 6720 7468 6520 6d6f 756e 7420 706f  ing the mount po
│ │ │ -001d9f80: 696e 7420 6172 6520 646f 6e65 2e0a 2020  int are done..  
│ │ │ -001d9f90: 2020 2020 2020 6d6f 756e 745f 706f 696e        mount_poin
│ │ │ -001d9fa0: 745f 6d61 7463 685f 7265 6765 7870 3d22  t_match_regexp="
│ │ │ -001d9fb0: 2428 7072 696e 7466 2022 5e5b 5b3a 7370  $(printf "^[[:sp
│ │ │ -001d9fc0: 6163 653a 5d5d 2a5b 5e23 5d2e 2a5b 5b3a  ace:]]*[^#].*[[:
│ │ │ -001d9fd0: 7370 6163 653a 5d5d 2573 5b5b 3a73 7061  space:]]%s[[:spa
│ │ │ -001d9fe0: 6365 3a5d 5d22 2022 2f76 6172 2f6c 6f67  ce:]]" "/var/log
│ │ │ -001d9ff0: 2229 220a 0a20 2020 2067 7265 7020 2224  ")"..    grep "$
│ │ │ -001da000: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ -001da010: 685f 7265 6765 7870 2220 2d71 202f 6574  h_regexp" -q /et
│ │ │ -001da020: 632f 6673 7461 6220 5c0a 2020 2020 2020  c/fstab \.      
│ │ │ -001da030: 2020 7c7c 207b 2065 6368 6f20 2254 6865    || { echo "The
│ │ │ -001da040: 206d 6f75 6e74 2070 6f69 6e74 2027 2f76   mount point '/v
│ │ │ -001da050: 6172 2f6c 6f67 2720 6973 206e 6f74 2065  ar/log' is not e
│ │ │ -001da060: 7665 6e20 696e 202f 6574 632f 6673 7461  ven in /etc/fsta
│ │ │ -001da070: 622c 2073 6f20 7765 2063 616e 2774 2073  b, so we can't s
│ │ │ -001da080: 6574 2075 7020 6d6f 756e 7420 6f70 7469  et up mount opti
│ │ │ -001da090: 6f6e 7322 2026 6774 3b26 616d 703b 323b  ons" >&2;
│ │ │ -001da0a0: 0a20 2020 2020 2020 2020 2020 2020 2020  .               
│ │ │ -001da0b0: 2065 6368 6f20 224e 6f74 2072 656d 6564   echo "Not remed
│ │ │ -001da0c0: 6961 7469 6e67 2c20 6265 6361 7573 6520  iating, because 
│ │ │ -001da0d0: 7468 6572 6520 6973 206e 6f20 7265 636f  there is no reco
│ │ │ -001da0e0: 7264 206f 6620 2f76 6172 2f6c 6f67 2069  rd of /var/log i
│ │ │ -001da0f0: 6e20 2f65 7463 2f66 7374 6162 2220 2667  n /etc/fstab" &g
│ │ │ -001da100: 743b 2661 6d70 3b32 3b20 7265 7475 726e  t;&2; return
│ │ │ -001da110: 2031 3b20 7d0a 2020 2020 0a0a 0a20 2020   1; }.    ...   
│ │ │ -001da120: 206d 6f75 6e74 5f70 6f69 6e74 5f6d 6174   mount_point_mat
│ │ │ -001da130: 6368 5f72 6567 6578 703d 2224 2870 7269  ch_regexp="$(pri
│ │ │ -001da140: 6e74 6620 225e 5b5b 3a73 7061 6365 3a5d  ntf "^[[:space:]
│ │ │ -001da150: 5d2a 5b5e 235d 2e2a 5b5b 3a73 7061 6365  ]*[^#].*[[:space
│ │ │ -001da160: 3a5d 5d25 735b 5b3a 7370 6163 653a 5d5d  :]]%s[[:space:]]
│ │ │ -001da170: 2220 2f76 6172 2f6c 6f67 2922 0a0a 2020  " /var/log)"..  
│ │ │ -001da180: 2020 2320 4966 2074 6865 206d 6f75 6e74    # If the mount
│ │ │ -001da190: 2070 6f69 6e74 2069 7320 6e6f 7420 696e   point is not in
│ │ │ -001da1a0: 202f 6574 632f 6673 7461 622c 2067 6574   /etc/fstab, get
│ │ │ -001da1b0: 2070 7265 7669 6f75 7320 6d6f 756e 7420   previous mount 
│ │ │ -001da1c0: 6f70 7469 6f6e 7320 6672 6f6d 202f 6574  options from /et
│ │ │ -001da1d0: 632f 6d74 6162 0a20 2020 2069 6620 2120  c/mtab.    if ! 
│ │ │ -001da1e0: 6772 6570 202d 7120 2224 6d6f 756e 745f  grep -q "$mount_
│ │ │ -001da1f0: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ -001da200: 7870 2220 2f65 7463 2f66 7374 6162 3b20  xp" /etc/fstab; 
│ │ │ -001da210: 7468 656e 0a20 2020 2020 2020 2023 2072  then.        # r
│ │ │ -001da220: 756e 7469 6d65 206f 7074 7320 7769 7468  untime opts with
│ │ │ -001da230: 6f75 7420 736f 6d65 2061 7574 6f6d 6174  out some automat
│ │ │ -001da240: 6963 206b 6572 6e65 6c2f 7573 6572 7370  ic kernel/usersp
│ │ │ -001da250: 6163 652d 6164 6465 6420 6465 6661 756c  ace-added defaul
│ │ │ -001da260: 7473 0a20 2020 2020 2020 2070 7265 7669  ts.        previ
│ │ │ -001da270: 6f75 735f 6d6f 756e 745f 6f70 7473 3d24  ous_mount_opts=$
│ │ │ -001da280: 2867 7265 7020 2224 6d6f 756e 745f 706f  (grep "$mount_po
│ │ │ -001da290: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ -001da2a0: 2220 2f65 7463 2f6d 7461 6220 7c20 6865  " /etc/mtab | he
│ │ │ -001da2b0: 6164 202d 3120 7c20 2061 776b 2027 7b70  ad -1 |  awk '{p
│ │ │ -001da2c0: 7269 6e74 2024 347d 2720 5c0a 2020 2020  rint $4}' \.    
│ │ │ -001da2d0: 2020 2020 2020 2020 2020 2020 2020 2020                  
│ │ │ -001da2e0: 7c20 7365 6420 2d45 2022 732f 2872 777c  | sed -E "s/(rw|
│ │ │ -001da2f0: 6465 6661 756c 7473 7c73 6563 6c61 6265  defaults|seclabe
│ │ │ -001da300: 6c7c 6e6f 7375 6964 2928 2c7c 2429 2f2f  l|nosuid)(,|$)//
│ │ │ -001da310: 673b 732f 2c24 2f2f 2229 0a20 2020 2020  g;s/,$//").     
│ │ │ -001da320: 2020 205b 2022 2470 7265 7669 6f75 735f     [ "$previous_
│ │ │ -001da330: 6d6f 756e 745f 6f70 7473 2220 5d20 2661  mount_opts" ] &a
│ │ │ -001da340: 6d70 3b26 616d 703b 2070 7265 7669 6f75  mp;& previou
│ │ │ -001da350: 735f 6d6f 756e 745f 6f70 7473 2b3d 222c  s_mount_opts+=",
│ │ │ -001da360: 220a 2020 2020 2020 2020 2320 496e 2069  ".        # In i
│ │ │ -001da370: 736f 3936 3630 2066 696c 6573 7973 7465  so9660 filesyste
│ │ │ -001da380: 6d73 206d 7461 6220 636f 756c 6420 6465  ms mtab could de
│ │ │ -001da390: 7363 7269 6265 2061 2022 626c 6f63 6b73  scribe a "blocks
│ │ │ -001da3a0: 697a 6522 2076 616c 7565 2c20 7468 6973  ize" value, this
│ │ │ -001da3b0: 2073 686f 756c 6420 6265 2072 6566 6c65   should be refle
│ │ │ -001da3c0: 6374 6564 2069 6e0a 2020 2020 2020 2020  cted in.        
│ │ │ -001da3d0: 2320 6673 7461 6220 6173 2022 626c 6f63  # fstab as "bloc
│ │ │ -001da3e0: 6b22 2e20 2054 6865 206e 6578 7420 7661  k".  The next va
│ │ │ -001da3f0: 7269 6162 6c65 2069 7320 746f 2073 6174  riable is to sat
│ │ │ -001da400: 6973 6679 2073 6865 6c6c 6368 6563 6b20  isfy shellcheck 
│ │ │ -001da410: 5343 3230 3530 2e0a 2020 2020 2020 2020  SC2050..        
│ │ │ -001da420: 6673 5f74 7970 653d 2222 0a20 2020 2020  fs_type="".     
│ │ │ -001da430: 2020 2069 6620 5b20 2022 2466 735f 7479     if [  "$fs_ty
│ │ │ -001da440: 7065 2220 3d3d 2022 6973 6f39 3636 3022  pe" == "iso9660"
│ │ │ -001da450: 205d 203b 2074 6865 6e0a 2020 2020 2020   ] ; then.      
│ │ │ -001da460: 2020 2020 2020 7072 6576 696f 7573 5f6d        previous_m
│ │ │ -001da470: 6f75 6e74 5f6f 7074 733d 2428 7365 6420  ount_opts=$(sed 
│ │ │ -001da480: 2773 2f62 6c6f 636b 7369 7a65 3d2f 626c  's/blocksize=/bl
│ │ │ -001da490: 6f63 6b3d 2f27 2026 6c74 3b26 6c74 3b26  ock=/' <<&
│ │ │ -001da4a0: 6c74 3b20 2224 7072 6576 696f 7573 5f6d  lt; "$previous_m
│ │ │ -001da4b0: 6f75 6e74 5f6f 7074 7322 290a 2020 2020  ount_opts").    
│ │ │ -001da4c0: 2020 2020 6669 0a20 2020 2020 2020 2065      fi.        e
│ │ │ -001da4d0: 6368 6f20 2220 2f76 6172 2f6c 6f67 2020  cho " /var/log  
│ │ │ -001da4e0: 6465 6661 756c 7473 2c24 7b70 7265 7669  defaults,${previ
│ │ │ -001da4f0: 6f75 735f 6d6f 756e 745f 6f70 7473 7d6e  ous_mount_opts}n
│ │ │ -001da500: 6f73 7569 6420 3020 3022 2026 6774 3b26  osuid 0 0" >&
│ │ │ -001da510: 6774 3b20 2f65 7463 2f66 7374 6162 0a20  gt; /etc/fstab. 
│ │ │ -001da520: 2020 2023 2049 6620 7468 6520 6d6f 756e     # If the moun
│ │ │ -001da530: 745f 6f70 7420 6f70 7469 6f6e 2069 7320  t_opt option is 
│ │ │ -001da540: 6e6f 7420 616c 7265 6164 7920 696e 2074  not already in t
│ │ │ -001da550: 6865 206d 6f75 6e74 2070 6f69 6e74 2773  he mount point's
│ │ │ -001da560: 202f 6574 632f 6673 7461 6220 656e 7472   /etc/fstab entr
│ │ │ -001da570: 792c 2061 6464 2069 740a 2020 2020 656c  y, add it.    el
│ │ │ -001da580: 6966 2021 2067 7265 7020 2224 6d6f 756e  if ! grep "$moun
│ │ │ -001da590: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ -001da5a0: 6765 7870 2220 2f65 7463 2f66 7374 6162  gexp" /etc/fstab
│ │ │ -001da5b0: 207c 2067 7265 7020 2d71 2022 6e6f 7375   | grep -q "nosu
│ │ │ -001da5c0: 6964 223b 2074 6865 6e0a 2020 2020 2020  id"; then.      
│ │ │ -001da5d0: 2020 7072 6576 696f 7573 5f6d 6f75 6e74    previous_mount
│ │ │ -001da5e0: 5f6f 7074 733d 2428 6772 6570 2022 246d  _opts=$(grep "$m
│ │ │ -001da5f0: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ -001da600: 5f72 6567 6578 7022 202f 6574 632f 6673  _regexp" /etc/fs
│ │ │ -001da610: 7461 6220 7c20 6177 6b20 277b 7072 696e  tab | awk '{prin
│ │ │ -001da620: 7420 2434 7d27 290a 2020 2020 2020 2020  t $4}').        
│ │ │ -001da630: 7365 6420 2d69 2022 737c 5c28 247b 6d6f  sed -i "s|\(${mo
│ │ │ -001da640: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ -001da650: 7265 6765 7870 7d2e 2a24 7b70 7265 7669  regexp}.*${previ
│ │ │ -001da660: 6f75 735f 6d6f 756e 745f 6f70 7473 7d5c  ous_mount_opts}\
│ │ │ -001da670: 297c 5c31 2c6e 6f73 7569 647c 2220 2f65  )|\1,nosuid|" /e
│ │ │ -001da680: 7463 2f66 7374 6162 0a20 2020 2066 690a  tc/fstab.    fi.
│ │ │ -001da690: 0a0a 2020 2020 6966 206d 6b64 6972 202d  ..    if mkdir -
│ │ │ -001da6a0: 7020 222f 7661 722f 6c6f 6722 3b20 7468  p "/var/log"; th
│ │ │ -001da6b0: 656e 0a20 2020 2020 2020 2069 6620 6d6f  en.        if mo
│ │ │ -001da6c0: 756e 7470 6f69 6e74 202d 7120 222f 7661  untpoint -q "/va
│ │ │ -001da6d0: 722f 6c6f 6722 3b20 7468 656e 0a20 2020  r/log"; then.   
│ │ │ -001da6e0: 2020 2020 2020 2020 206d 6f75 6e74 202d           mount -
│ │ │ -001da6f0: 6f20 7265 6d6f 756e 7420 2d2d 7461 7267  o remount --targ
│ │ │ -001da700: 6574 2022 2f76 6172 2f6c 6f67 220a 2020  et "/var/log".  
│ │ │ -001da710: 2020 2020 2020 6669 0a20 2020 2066 690a        fi.    fi.
│ │ │ -001da720: 7d0a 0a70 6572 666f 726d 5f72 656d 6564  }..perform_remed
│ │ │ -001da730: 6961 7469 6f6e 0a0a 656c 7365 0a20 2020  iation..else.   
│ │ │ -001da740: 2026 6774 3b26 616d 703b 3220 6563 686f   >&2 echo
│ │ │ -001da750: 2027 5265 6d65 6469 6174 696f 6e20 6973   'Remediation is
│ │ │ -001da760: 206e 6f74 2061 7070 6c69 6361 626c 652c   not applicable,
│ │ │ -001da770: 206e 6f74 6869 6e67 2077 6173 2064 6f6e   nothing was don
│ │ │ -001da780: 6527 0a66 690a 3c2f 636f 6465 3e3c 2f70  e'.fi.


< │ │ │ +001d8240: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>
│ │ │ +001d8280: 3c74 643e 6869 6768 3c2f 7464 3e3c 2f74 < │ │ │ +001d82d0: 7464 3e63 6f6e 6669 6775 7265 3c2f 7464 td>configure
R │ │ │ -001d9cb0: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -001d9cc0: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c2f alse
Complexit │ │ │ +001d8250: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low
│ │ │ +001d8270: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption:high
Reboot │ │ │ +001d82a0: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +001d82b0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Strategy:

- name: │ │ │ +001d8300: 2047 6174 6865 7220 7468 6520 7061 636b Gather the pack │ │ │ +001d8310: 6167 6520 6661 6374 730a 2020 7061 636b age facts. pack │ │ │ +001d8320: 6167 655f 6661 6374 733a 0a20 2020 206d age_facts:. m │ │ │ +001d8330: 616e 6167 6572 3a20 6175 746f 0a20 2074 anager: auto. t │ │ │ +001d8340: 6167 733a 0a20 202d 204e 4953 542d 3830 ags:. - NIST-80 │ │ │ +001d8350: 302d 3533 2d41 432d 360a 2020 2d20 4e49 0-53-AC-6. - NI │ │ │ +001d8360: 5354 2d38 3030 2d35 332d 4143 2d36 2831 ST-800-53-AC-6(1 │ │ │ +001d8370: 290a 2020 2d20 4e49 5354 2d38 3030 2d35 ). - NIST-800-5 │ │ │ +001d8380: 332d 434d 2d36 2861 290a 2020 2d20 4e49 3-CM-6(a). - NI │ │ │ +001d8390: 5354 2d38 3030 2d35 332d 434d 2d37 2861 ST-800-53-CM-7(a │ │ │ +001d83a0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35 ). - NIST-800-5 │ │ │ +001d83b0: 332d 434d 2d37 2862 290a 2020 2d20 4e49 3-CM-7(b). - NI │ │ │ +001d83c0: 5354 2d38 3030 2d35 332d 4d50 2d37 0a20 ST-800-53-MP-7. │ │ │ +001d83d0: 202d 2063 6f6e 6669 6775 7265 5f73 7472 - configure_str │ │ │ +001d83e0: 6174 6567 790a 2020 2d20 6869 6768 5f64 ategy. - high_d │ │ │ +001d83f0: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f isruption. - lo │ │ │ +001d8400: 775f 636f 6d70 6c65 7869 7479 0a20 202d w_complexity. - │ │ │ +001d8410: 206d 6564 6975 6d5f 7365 7665 7269 7479 medium_severity │ │ │ +001d8420: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f . - mount_optio │ │ │ +001d8430: 6e5f 7661 725f 6c6f 675f 6e6f 7375 6964 n_var_log_nosuid │ │ │ +001d8440: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e . - no_reboot_n │ │ │ +001d8450: 6565 6465 640a 0a2d 206e 616d 653a 2027 eeded..- name: ' │ │ │ +001d8460: 4164 6420 6e6f 7375 6964 204f 7074 696f Add nosuid Optio │ │ │ +001d8470: 6e20 746f 202f 7661 722f 6c6f 673a 2043 n to /var/log: C │ │ │ +001d8480: 6865 636b 2069 6e66 6f72 6d61 7469 6f6e heck information │ │ │ +001d8490: 2061 7373 6f63 6961 7465 6420 746f 206d associated to m │ │ │ +001d84a0: 6f75 6e74 706f 696e 7427 0a20 2061 6e73 ountpoint'. ans │ │ │ +001d84b0: 6962 6c65 2e62 7569 6c74 696e 2e63 6f6d ible.builtin.com │ │ │ +001d84c0: 6d61 6e64 3a20 6669 6e64 6d6e 7420 2d2d mand: findmnt -- │ │ │ +001d84d0: 6673 7461 6220 272f 7661 722f 6c6f 6727 fstab '/var/log' │ │ │ +001d84e0: 0a20 2072 6567 6973 7465 723a 2064 6576 . register: dev │ │ │ +001d84f0: 6963 655f 6e61 6d65 0a20 2066 6169 6c65 ice_name. faile │ │ │ +001d8500: 645f 7768 656e 3a20 6465 7669 6365 5f6e d_when: device_n │ │ │ +001d8510: 616d 652e 7263 2026 6774 3b20 310a 2020 ame.rc > 1. │ │ │ +001d8520: 6368 616e 6765 645f 7768 656e 3a20 6661 changed_when: fa │ │ │ +001d8530: 6c73 650a 2020 6368 6563 6b5f 6d6f 6465 lse. check_mode │ │ │ +001d8540: 3a20 6661 6c73 650a 2020 7768 656e 3a0a : false. when:. │ │ │ +001d8550: 2020 2d20 2820 6e6f 7420 2820 226b 6572 - ( not ( "ker │ │ │ +001d8560: 6e65 6c22 2069 6e20 616e 7369 626c 655f nel" in ansible_ │ │ │ +001d8570: 6661 6374 732e 7061 636b 6167 6573 2061 facts.packages a │ │ │ +001d8580: 6e64 2022 626f 6f74 6322 2069 6e20 616e nd "bootc" in an │ │ │ +001d8590: 7369 626c 655f 6661 6374 732e 7061 636b sible_facts.pack │ │ │ +001d85a0: 6167 6573 0a20 2020 2061 6e64 206e 6f74 ages. and not │ │ │ +001d85b0: 2022 6f70 656e 7368 6966 742d 6b75 6265 "openshift-kube │ │ │ +001d85c0: 6c65 7422 2069 6e20 616e 7369 626c 655f let" in ansible_ │ │ │ +001d85d0: 6661 6374 732e 7061 636b 6167 6573 2061 facts.packages a │ │ │ +001d85e0: 6e64 2022 6f73 7472 6565 2220 696e 2061 nd "ostree" in a │ │ │ +001d85f0: 6e73 6962 6c65 5f70 726f 635f 636d 646c nsible_proc_cmdl │ │ │ +001d8600: 696e 650a 2020 2020 2920 616e 6420 6e6f ine. ) and no │ │ │ +001d8610: 7420 2820 616e 7369 626c 655f 7669 7274 t ( ansible_virt │ │ │ +001d8620: 7561 6c69 7a61 7469 6f6e 5f74 7970 6520 ualization_type │ │ │ +001d8630: 696e 205b 2264 6f63 6b65 7222 2c20 226c in ["docker", "l │ │ │ +001d8640: 7863 222c 2022 6f70 656e 767a 222c 2022 xc", "openvz", " │ │ │ +001d8650: 706f 646d 616e 222c 0a20 2020 2022 636f podman",. "co │ │ │ +001d8660: 6e74 6169 6e65 7222 5d20 2920 290a 2020 ntainer"] ) ). │ │ │ +001d8670: 2d20 2722 2f76 6172 2f6c 6f67 2220 696e - '"/var/log" in │ │ │ +001d8680: 2061 6e73 6962 6c65 5f6d 6f75 6e74 7320 ansible_mounts │ │ │ +001d8690: 7c20 6d61 7028 6174 7472 6962 7574 653d | map(attribute= │ │ │ +001d86a0: 226d 6f75 6e74 2229 207c 206c 6973 7427 "mount") | list' │ │ │ +001d86b0: 0a20 2074 6167 733a 0a20 202d 204e 4953 . tags:. - NIS │ │ │ +001d86c0: 542d 3830 302d 3533 2d41 432d 360a 2020 T-800-53-AC-6. │ │ │ +001d86d0: 2d20 4e49 5354 2d38 3030 2d35 332d 4143 - NIST-800-53-AC │ │ │ +001d86e0: 2d36 2831 290a 2020 2d20 4e49 5354 2d38 -6(1). - NIST-8 │ │ │ +001d86f0: 3030 2d35 332d 434d 2d36 2861 290a 2020 00-53-CM-6(a). │ │ │ +001d8700: 2d20 4e49 5354 2d38 3030 2d35 332d 434d - NIST-800-53-CM │ │ │ +001d8710: 2d37 2861 290a 2020 2d20 4e49 5354 2d38 -7(a). - NIST-8 │ │ │ +001d8720: 3030 2d35 332d 434d 2d37 2862 290a 2020 00-53-CM-7(b). │ │ │ +001d8730: 2d20 4e49 5354 2d38 3030 2d35 332d 4d50 - NIST-800-53-MP │ │ │ +001d8740: 2d37 0a20 202d 2063 6f6e 6669 6775 7265 -7. - configure │ │ │ +001d8750: 5f73 7472 6174 6567 790a 2020 2d20 6869 _strategy. - hi │ │ │ +001d8760: 6768 5f64 6973 7275 7074 696f 6e0a 2020 gh_disruption. │ │ │ +001d8770: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479 - low_complexity │ │ │ +001d8780: 0a20 202d 206d 6564 6975 6d5f 7365 7665 . - medium_seve │ │ │ +001d8790: 7269 7479 0a20 202d 206d 6f75 6e74 5f6f rity. - mount_o │ │ │ +001d87a0: 7074 696f 6e5f 7661 725f 6c6f 675f 6e6f ption_var_log_no │ │ │ +001d87b0: 7375 6964 0a20 202d 206e 6f5f 7265 626f suid. - no_rebo │ │ │ +001d87c0: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d ot_needed..- nam │ │ │ +001d87d0: 653a 2027 4164 6420 6e6f 7375 6964 204f e: 'Add nosuid O │ │ │ +001d87e0: 7074 696f 6e20 746f 202f 7661 722f 6c6f ption to /var/lo │ │ │ +001d87f0: 673a 2043 7265 6174 6520 6d6f 756e 745f g: Create mount_ │ │ │ +001d8800: 696e 666f 2064 6963 7469 6f6e 6172 7920 info dictionary │ │ │ +001d8810: 7661 7269 6162 6c65 270a 2020 7365 745f variable'. set_ │ │ │ +001d8820: 6661 6374 3a0a 2020 2020 6d6f 756e 745f fact:. mount_ │ │ │ +001d8830: 696e 666f 3a20 277b 7b20 6d6f 756e 745f info: '{{ mount_ │ │ │ +001d8840: 696e 666f 7c64 6566 6175 6c74 287b 7d29 info|default({}) │ │ │ +001d8850: 7c63 6f6d 6269 6e65 287b 6974 656d 2e30 |combine({item.0 │ │ │ +001d8860: 3a20 6974 656d 2e31 7d29 207d 7d27 0a20 : item.1}) }}'. │ │ │ +001d8870: 2077 6974 685f 746f 6765 7468 6572 3a0a with_together:. │ │ │ +001d8880: 2020 2d20 277b 7b20 6465 7669 6365 5f6e - '{{ device_n │ │ │ +001d8890: 616d 652e 7374 646f 7574 5f6c 696e 6573 ame.stdout_lines │ │ │ +001d88a0: 5b30 5d2e 7370 6c69 7428 2920 7c20 6d61 [0].split() | ma │ │ │ +001d88b0: 7028 2727 6c6f 7765 7227 2729 207c 206c p(''lower'') | l │ │ │ +001d88c0: 6973 7420 7d7d 270a 2020 2d20 277b 7b20 ist }}'. - '{{ │ │ │ +001d88d0: 6465 7669 6365 5f6e 616d 652e 7374 646f device_name.stdo │ │ │ +001d88e0: 7574 5f6c 696e 6573 5b31 5d2e 7370 6c69 ut_lines[1].spli │ │ │ +001d88f0: 7428 2920 7c20 6c69 7374 207d 7d27 0a20 t() | list }}'. │ │ │ +001d8900: 2077 6865 6e3a 0a20 202d 2028 206e 6f74 when:. - ( not │ │ │ +001d8910: 2028 2022 6b65 726e 656c 2220 696e 2061 ( "kernel" in a │ │ │ +001d8920: 6e73 6962 6c65 5f66 6163 7473 2e70 6163 nsible_facts.pac │ │ │ +001d8930: 6b61 6765 7320 616e 6420 2262 6f6f 7463 kages and "bootc │ │ │ +001d8940: 2220 696e 2061 6e73 6962 6c65 5f66 6163 " in ansible_fac │ │ │ +001d8950: 7473 2e70 6163 6b61 6765 730a 2020 2020 ts.packages. │ │ │ +001d8960: 616e 6420 6e6f 7420 226f 7065 6e73 6869 and not "openshi │ │ │ +001d8970: 6674 2d6b 7562 656c 6574 2220 696e 2061 ft-kubelet" in a │ │ │ +001d8980: 6e73 6962 6c65 5f66 6163 7473 2e70 6163 nsible_facts.pac │ │ │ +001d8990: 6b61 6765 7320 616e 6420 226f 7374 7265 kages and "ostre │ │ │ +001d89a0: 6522 2069 6e20 616e 7369 626c 655f 7072 e" in ansible_pr │ │ │ +001d89b0: 6f63 5f63 6d64 6c69 6e65 0a20 2020 2029 oc_cmdline. ) │ │ │ +001d89c0: 2061 6e64 206e 6f74 2028 2061 6e73 6962 and not ( ansib │ │ │ +001d89d0: 6c65 5f76 6972 7475 616c 697a 6174 696f le_virtualizatio │ │ │ +001d89e0: 6e5f 7479 7065 2069 6e20 5b22 646f 636b n_type in ["dock │ │ │ +001d89f0: 6572 222c 2022 6c78 6322 2c20 226f 7065 er", "lxc", "ope │ │ │ +001d8a00: 6e76 7a22 2c20 2270 6f64 6d61 6e22 2c0a nvz", "podman",. │ │ │ +001d8a10: 2020 2020 2263 6f6e 7461 696e 6572 225d "container"] │ │ │ +001d8a20: 2029 2029 0a20 202d 2027 222f 7661 722f ) ). - '"/var/ │ │ │ +001d8a30: 6c6f 6722 2069 6e20 616e 7369 626c 655f log" in ansible_ │ │ │ +001d8a40: 6d6f 756e 7473 207c 206d 6170 2861 7474 mounts | map(att │ │ │ +001d8a50: 7269 6275 7465 3d22 6d6f 756e 7422 2920 ribute="mount") │ │ │ +001d8a60: 7c20 6c69 7374 270a 2020 2d20 6465 7669 | list'. - devi │ │ │ +001d8a70: 6365 5f6e 616d 652e 7374 646f 7574 2069 ce_name.stdout i │ │ │ +001d8a80: 7320 6465 6669 6e65 6420 616e 6420 6465 s defined and de │ │ │ +001d8a90: 7669 6365 5f6e 616d 652e 7374 646f 7574 vice_name.stdout │ │ │ +001d8aa0: 5f6c 696e 6573 2069 7320 6465 6669 6e65 _lines is define │ │ │ +001d8ab0: 640a 2020 2d20 2864 6576 6963 655f 6e61 d. - (device_na │ │ │ +001d8ac0: 6d65 2e73 7464 6f75 7420 7c20 6c65 6e67 me.stdout | leng │ │ │ +001d8ad0: 7468 2026 6774 3b20 3029 0a20 2074 6167 th > 0). tag │ │ │ +001d8ae0: 733a 0a20 202d 204e 4953 542d 3830 302d s:. - NIST-800- │ │ │ +001d8af0: 3533 2d41 432d 360a 2020 2d20 4e49 5354 53-AC-6. - NIST │ │ │ +001d8b00: 2d38 3030 2d35 332d 4143 2d36 2831 290a -800-53-AC-6(1). │ │ │ +001d8b10: 2020 2d20 4e49 5354 2d38 3030 2d35 332d - NIST-800-53- │ │ │ +001d8b20: 434d 2d36 2861 290a 2020 2d20 4e49 5354 CM-6(a). - NIST │ │ │ +001d8b30: 2d38 3030 2d35 332d 434d 2d37 2861 290a -800-53-CM-7(a). │ │ │ +001d8b40: 2020 2d20 4e49 5354 2d38 3030 2d35 332d - NIST-800-53- │ │ │ +001d8b50: 434d 2d37 2862 290a 2020 2d20 4e49 5354 CM-7(b). - NIST │ │ │ +001d8b60: 2d38 3030 2d35 332d 4d50 2d37 0a20 202d -800-53-MP-7. - │ │ │ +001d8b70: 2063 6f6e 6669 6775 7265 5f73 7472 6174 configure_strat │ │ │ +001d8b80: 6567 790a 2020 2d20 6869 6768 5f64 6973 egy. - high_dis │ │ │ +001d8b90: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f ruption. - low_ │ │ │ +001d8ba0: 636f 6d70 6c65 7869 7479 0a20 202d 206d complexity. - m │ │ │ +001d8bb0: 6564 6975 6d5f 7365 7665 7269 7479 0a20 edium_severity. │ │ │ +001d8bc0: 202d 206d 6f75 6e74 5f6f 7074 696f 6e5f - mount_option_ │ │ │ +001d8bd0: 7661 725f 6c6f 675f 6e6f 7375 6964 0a20 var_log_nosuid. │ │ │ +001d8be0: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565 - no_reboot_nee │ │ │ +001d8bf0: 6465 640a 0a2d 206e 616d 653a 2027 4164 ded..- name: 'Ad │ │ │ +001d8c00: 6420 6e6f 7375 6964 204f 7074 696f 6e20 d nosuid Option │ │ │ +001d8c10: 746f 202f 7661 722f 6c6f 673a 2049 6620 to /var/log: If │ │ │ +001d8c20: 2f76 6172 2f6c 6f67 206e 6f74 206d 6f75 /var/log not mou │ │ │ +001d8c30: 6e74 6564 2c20 6372 6166 7420 6d6f 756e nted, craft moun │ │ │ +001d8c40: 745f 696e 666f 0a20 2020 206d 616e 7561 t_info. manua │ │ │ +001d8c50: 6c6c 7927 0a20 2073 6574 5f66 6163 743a lly'. set_fact: │ │ │ +001d8c60: 0a20 2020 206d 6f75 6e74 5f69 6e66 6f3a . mount_info: │ │ │ +001d8c70: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f7c '{{ mount_info| │ │ │ +001d8c80: 6465 6661 756c 7428 7b7d 297c 636f 6d62 default({})|comb │ │ │ +001d8c90: 696e 6528 7b69 7465 6d2e 303a 2069 7465 ine({item.0: ite │ │ │ +001d8ca0: 6d2e 317d 2920 7d7d 270a 2020 7769 7468 m.1}) }}'. with │ │ │ +001d8cb0: 5f74 6f67 6574 6865 723a 0a20 202d 202d _together:. - - │ │ │ +001d8cc0: 2074 6172 6765 740a 2020 2020 2d20 736f target. - so │ │ │ +001d8cd0: 7572 6365 0a20 2020 202d 2066 7374 7970 urce. - fstyp │ │ │ +001d8ce0: 650a 2020 2020 2d20 6f70 7469 6f6e 730a e. - options. │ │ │ +001d8cf0: 2020 2d20 2d20 2f76 6172 2f6c 6f67 0a20 - - /var/log. │ │ │ +001d8d00: 2020 202d 2027 270a 2020 2020 2d20 2727 - ''. - '' │ │ │ +001d8d10: 0a20 2020 202d 2064 6566 6175 6c74 730a . - defaults. │ │ │ +001d8d20: 2020 7768 656e 3a0a 2020 2d20 2820 6e6f when:. - ( no │ │ │ +001d8d30: 7420 2820 226b 6572 6e65 6c22 2069 6e20 t ( "kernel" in │ │ │ +001d8d40: 616e 7369 626c 655f 6661 6374 732e 7061 ansible_facts.pa │ │ │ +001d8d50: 636b 6167 6573 2061 6e64 2022 626f 6f74 ckages and "boot │ │ │ +001d8d60: 6322 2069 6e20 616e 7369 626c 655f 6661 c" in ansible_fa │ │ │ +001d8d70: 6374 732e 7061 636b 6167 6573 0a20 2020 cts.packages. │ │ │ +001d8d80: 2061 6e64 206e 6f74 2022 6f70 656e 7368 and not "opensh │ │ │ +001d8d90: 6966 742d 6b75 6265 6c65 7422 2069 6e20 ift-kubelet" in │ │ │ +001d8da0: 616e 7369 626c 655f 6661 6374 732e 7061 ansible_facts.pa │ │ │ +001d8db0: 636b 6167 6573 2061 6e64 2022 6f73 7472 ckages and "ostr │ │ │ +001d8dc0: 6565 2220 696e 2061 6e73 6962 6c65 5f70 ee" in ansible_p │ │ │ +001d8dd0: 726f 635f 636d 646c 696e 650a 2020 2020 roc_cmdline. │ │ │ +001d8de0: 2920 616e 6420 6e6f 7420 2820 616e 7369 ) and not ( ansi │ │ │ +001d8df0: 626c 655f 7669 7274 7561 6c69 7a61 7469 ble_virtualizati │ │ │ +001d8e00: 6f6e 5f74 7970 6520 696e 205b 2264 6f63 on_type in ["doc │ │ │ +001d8e10: 6b65 7222 2c20 226c 7863 222c 2022 6f70 ker", "lxc", "op │ │ │ +001d8e20: 656e 767a 222c 2022 706f 646d 616e 222c envz", "podman", │ │ │ +001d8e30: 0a20 2020 2022 636f 6e74 6169 6e65 7222 . "container" │ │ │ +001d8e40: 5d20 2920 290a 2020 2d20 2722 2f76 6172 ] ) ). - '"/var │ │ │ +001d8e50: 2f6c 6f67 2220 696e 2061 6e73 6962 6c65 /log" in ansible │ │ │ +001d8e60: 5f6d 6f75 6e74 7320 7c20 6d61 7028 6174 _mounts | map(at │ │ │ +001d8e70: 7472 6962 7574 653d 226d 6f75 6e74 2229 tribute="mount") │ │ │ +001d8e80: 207c 206c 6973 7427 0a20 202d 2028 222d | list'. - ("- │ │ │ +001d8e90: 2d66 7374 6162 2220 7c20 6c65 6e67 7468 -fstab" | length │ │ │ +001d8ea0: 203d 3d20 3029 0a20 202d 2064 6576 6963 == 0). - devic │ │ │ +001d8eb0: 655f 6e61 6d65 2e73 7464 6f75 7420 6973 e_name.stdout is │ │ │ +001d8ec0: 2064 6566 696e 6564 2061 6e64 2064 6576 defined and dev │ │ │ +001d8ed0: 6963 655f 6e61 6d65 2e73 7464 6f75 745f ice_name.stdout_ │ │ │ +001d8ee0: 6c69 6e65 7320 6973 2064 6566 696e 6564 lines is defined │ │ │ +001d8ef0: 0a20 202d 2028 6465 7669 6365 5f6e 616d . - (device_nam │ │ │ +001d8f00: 652e 7374 646f 7574 207c 206c 656e 6774 e.stdout | lengt │ │ │ +001d8f10: 6820 3d3d 2030 290a 2020 7461 6773 3a0a h == 0). tags:. │ │ │ +001d8f20: 2020 2d20 4e49 5354 2d38 3030 2d35 332d - NIST-800-53- │ │ │ +001d8f30: 4143 2d36 0a20 202d 204e 4953 542d 3830 AC-6. - NIST-80 │ │ │ +001d8f40: 302d 3533 2d41 432d 3628 3129 0a20 202d 0-53-AC-6(1). - │ │ │ +001d8f50: 204e 4953 542d 3830 302d 3533 2d43 4d2d NIST-800-53-CM- │ │ │ +001d8f60: 3628 6129 0a20 202d 204e 4953 542d 3830 6(a). - NIST-80 │ │ │ +001d8f70: 302d 3533 2d43 4d2d 3728 6129 0a20 202d 0-53-CM-7(a). - │ │ │ +001d8f80: 204e 4953 542d 3830 302d 3533 2d43 4d2d NIST-800-53-CM- │ │ │ +001d8f90: 3728 6229 0a20 202d 204e 4953 542d 3830 7(b). - NIST-80 │ │ │ +001d8fa0: 302d 3533 2d4d 502d 370a 2020 2d20 636f 0-53-MP-7. - co │ │ │ +001d8fb0: 6e66 6967 7572 655f 7374 7261 7465 6779 nfigure_strategy │ │ │ +001d8fc0: 0a20 202d 2068 6967 685f 6469 7372 7570 . - high_disrup │ │ │ +001d8fd0: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d tion. - low_com │ │ │ +001d8fe0: 706c 6578 6974 790a 2020 2d20 6d65 6469 plexity. - medi │ │ │ +001d8ff0: 756d 5f73 6576 6572 6974 790a 2020 2d20 um_severity. - │ │ │ +001d9000: 6d6f 756e 745f 6f70 7469 6f6e 5f76 6172 mount_option_var │ │ │ +001d9010: 5f6c 6f67 5f6e 6f73 7569 640a 2020 2d20 _log_nosuid. - │ │ │ +001d9020: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564 no_reboot_needed │ │ │ +001d9030: 0a0a 2d20 6e61 6d65 3a20 2741 6464 206e ..- name: 'Add n │ │ │ +001d9040: 6f73 7569 6420 4f70 7469 6f6e 2074 6f20 osuid Option to │ │ │ +001d9050: 2f76 6172 2f6c 6f67 3a20 4d61 6b65 2073 /var/log: Make s │ │ │ +001d9060: 7572 6520 6e6f 7375 6964 206f 7074 696f ure nosuid optio │ │ │ +001d9070: 6e20 6973 2070 6172 7420 6f66 2074 6865 n is part of the │ │ │ +001d9080: 2074 6f0a 2020 2020 2f76 6172 2f6c 6f67 to. /var/log │ │ │ +001d9090: 206f 7074 696f 6e73 270a 2020 7365 745f options'. set_ │ │ │ +001d90a0: 6661 6374 3a0a 2020 2020 6d6f 756e 745f fact:. mount_ │ │ │ +001d90b0: 696e 666f 3a20 277b 7b20 6d6f 756e 745f info: '{{ mount_ │ │ │ +001d90c0: 696e 666f 207c 2063 6f6d 6269 6e65 2820 info | combine( │ │ │ +001d90d0: 7b27 276f 7074 696f 6e73 2727 3a27 2727 {''options'':''' │ │ │ +001d90e0: 277e 286d 6f75 6e74 5f69 6e66 6f2e 6f70 '~(mount_info.op │ │ │ +001d90f0: 7469 6f6e 7320 7c0a 2020 2020 2020 6465 tions |. de │ │ │ +001d9100: 6661 756c 7428 2727 2727 2929 7e28 2727 fault(''''))~('' │ │ │ +001d9110: 2c27 2720 6966 2028 6d6f 756e 745f 696e ,'' if (mount_in │ │ │ +001d9120: 666f 2e6f 7074 696f 6e73 207c 2064 6566 fo.options | def │ │ │ +001d9130: 6175 6c74 2827 2727 2729 2920 656c 7365 ault('''')) else │ │ │ +001d9140: 2027 2727 2729 7e27 276e 6f73 7569 6427 '''')~''nosuid' │ │ │ +001d9150: 270a 2020 2020 2020 7d29 207d 7d27 0a20 '. }) }}'. │ │ │ +001d9160: 2077 6865 6e3a 0a20 202d 2028 206e 6f74 when:. - ( not │ │ │ +001d9170: 2028 2022 6b65 726e 656c 2220 696e 2061 ( "kernel" in a │ │ │ +001d9180: 6e73 6962 6c65 5f66 6163 7473 2e70 6163 nsible_facts.pac │ │ │ +001d9190: 6b61 6765 7320 616e 6420 2262 6f6f 7463 kages and "bootc │ │ │ +001d91a0: 2220 696e 2061 6e73 6962 6c65 5f66 6163 " in ansible_fac │ │ │ +001d91b0: 7473 2e70 6163 6b61 6765 730a 2020 2020 ts.packages. │ │ │ +001d91c0: 616e 6420 6e6f 7420 226f 7065 6e73 6869 and not "openshi │ │ │ +001d91d0: 6674 2d6b 7562 656c 6574 2220 696e 2061 ft-kubelet" in a │ │ │ +001d91e0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163 nsible_facts.pac │ │ │ +001d91f0: 6b61 6765 7320 616e 6420 226f 7374 7265 kages and "ostre │ │ │ +001d9200: 6522 2069 6e20 616e 7369 626c 655f 7072 e" in ansible_pr │ │ │ +001d9210: 6f63 5f63 6d64 6c69 6e65 0a20 2020 2029 oc_cmdline. ) │ │ │ +001d9220: 2061 6e64 206e 6f74 2028 2061 6e73 6962 and not ( ansib │ │ │ +001d9230: 6c65 5f76 6972 7475 616c 697a 6174 696f le_virtualizatio │ │ │ +001d9240: 6e5f 7479 7065 2069 6e20 5b22 646f 636b n_type in ["dock │ │ │ +001d9250: 6572 222c 2022 6c78 6322 2c20 226f 7065 er", "lxc", "ope │ │ │ +001d9260: 6e76 7a22 2c20 2270 6f64 6d61 6e22 2c0a nvz", "podman",. │ │ │ +001d9270: 2020 2020 2263 6f6e 7461 696e 6572 225d "container"] │ │ │ +001d9280: 2029 2029 0a20 202d 2027 222f 7661 722f ) ). - '"/var/ │ │ │ +001d9290: 6c6f 6722 2069 6e20 616e 7369 626c 655f log" in ansible_ │ │ │ +001d92a0: 6d6f 756e 7473 207c 206d 6170 2861 7474 mounts | map(att │ │ │ +001d92b0: 7269 6275 7465 3d22 6d6f 756e 7422 2920 ribute="mount") │ │ │ +001d92c0: 7c20 6c69 7374 270a 2020 2d20 6d6f 756e | list'. - moun │ │ │ +001d92d0: 745f 696e 666f 2069 7320 6465 6669 6e65 t_info is define │ │ │ +001d92e0: 6420 616e 6420 226e 6f73 7569 6422 206e d and "nosuid" n │ │ │ +001d92f0: 6f74 2069 6e20 286d 6f75 6e74 5f69 6e66 ot in (mount_inf │ │ │ +001d9300: 6f2e 6f70 7469 6f6e 7320 7c20 6465 6661 o.options | defa │ │ │ +001d9310: 756c 7428 2727 2929 0a20 2074 6167 733a ult('')). tags: │ │ │ +001d9320: 0a20 202d 204e 4953 542d 3830 302d 3533 . - NIST-800-53 │ │ │ +001d9330: 2d41 432d 360a 2020 2d20 4e49 5354 2d38 -AC-6. - NIST-8 │ │ │ +001d9340: 3030 2d35 332d 4143 2d36 2831 290a 2020 00-53-AC-6(1). │ │ │ +001d9350: 2d20 4e49 5354 2d38 3030 2d35 332d 434d - NIST-800-53-CM │ │ │ +001d9360: 2d36 2861 290a 2020 2d20 4e49 5354 2d38 -6(a). - NIST-8 │ │ │ +001d9370: 3030 2d35 332d 434d 2d37 2861 290a 2020 00-53-CM-7(a). │ │ │ +001d9380: 2d20 4e49 5354 2d38 3030 2d35 332d 434d - NIST-800-53-CM │ │ │ +001d9390: 2d37 2862 290a 2020 2d20 4e49 5354 2d38 -7(b). - NIST-8 │ │ │ +001d93a0: 3030 2d35 332d 4d50 2d37 0a20 202d 2063 00-53-MP-7. - c │ │ │ +001d93b0: 6f6e 6669 6775 7265 5f73 7472 6174 6567 onfigure_strateg │ │ │ +001d93c0: 790a 2020 2d20 6869 6768 5f64 6973 7275 y. - high_disru │ │ │ +001d93d0: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f ption. - low_co │ │ │ +001d93e0: 6d70 6c65 7869 7479 0a20 202d 206d 6564 mplexity. - med │ │ │ +001d93f0: 6975 6d5f 7365 7665 7269 7479 0a20 202d ium_severity. - │ │ │ +001d9400: 206d 6f75 6e74 5f6f 7074 696f 6e5f 7661 mount_option_va │ │ │ +001d9410: 725f 6c6f 675f 6e6f 7375 6964 0a20 202d r_log_nosuid. - │ │ │ +001d9420: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465 no_reboot_neede │ │ │ +001d9430: 640a 0a2d 206e 616d 653a 2027 4164 6420 d..- name: 'Add │ │ │ +001d9440: 6e6f 7375 6964 204f 7074 696f 6e20 746f nosuid Option to │ │ │ +001d9450: 202f 7661 722f 6c6f 673a 2045 6e73 7572 /var/log: Ensur │ │ │ +001d9460: 6520 2f76 6172 2f6c 6f67 2069 7320 6d6f e /var/log is mo │ │ │ +001d9470: 756e 7465 6420 7769 7468 206e 6f73 7569 unted with nosui │ │ │ +001d9480: 6420 6f70 7469 6f6e 270a 2020 616e 7369 d option'. ansi │ │ │ +001d9490: 626c 652e 706f 7369 782e 6d6f 756e 743a ble.posix.mount: │ │ │ +001d94a0: 0a20 2020 2070 6174 683a 202f 7661 722f . path: /var/ │ │ │ +001d94b0: 6c6f 670a 2020 2020 7372 633a 2027 7b7b log. src: '{{ │ │ │ +001d94c0: 206d 6f75 6e74 5f69 6e66 6f2e 736f 7572 mount_info.sour │ │ │ +001d94d0: 6365 207c 2064 6566 6175 6c74 2827 2727 ce | default(''' │ │ │ +001d94e0: 2729 207d 7d27 0a20 2020 206f 7074 733a ') }}'. opts: │ │ │ +001d94f0: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f2e '{{ mount_info. │ │ │ +001d9500: 6f70 7469 6f6e 7320 7c20 6465 6661 756c options | defaul │ │ │ +001d9510: 7428 2727 2727 2920 7d7d 270a 2020 2020 t('''') }}'. │ │ │ +001d9520: 7374 6174 653a 206d 6f75 6e74 6564 0a20 state: mounted. │ │ │ +001d9530: 2020 2066 7374 7970 653a 2027 7b7b 206d fstype: '{{ m │ │ │ +001d9540: 6f75 6e74 5f69 6e66 6f2e 6673 7479 7065 ount_info.fstype │ │ │ +001d9550: 207c 2064 6566 6175 6c74 2827 2727 2729 | default('''') │ │ │ +001d9560: 207d 7d27 0a20 2072 6567 6973 7465 723a }}'. register: │ │ │ +001d9570: 206d 6f75 6e74 5f72 6573 756c 740a 2020 mount_result. │ │ │ +001d9580: 6661 696c 6564 5f77 6865 6e3a 0a20 202d failed_when:. - │ │ │ +001d9590: 206d 6f75 6e74 5f72 6573 756c 7420 6973 mount_result is │ │ │ +001d95a0: 2066 6169 6c65 640a 2020 2d20 2727 2774 failed. - '''t │ │ │ +001d95b0: 6172 6765 7420 6973 2062 7573 7927 2720 arget is busy'' │ │ │ +001d95c0: 6e6f 7420 696e 2028 6d6f 756e 745f 7265 not in (mount_re │ │ │ +001d95d0: 7375 6c74 2e6d 7367 207c 2064 6566 6175 sult.msg | defau │ │ │ +001d95e0: 6c74 2827 2727 2729 2927 0a20 202d 2027 lt(''''))'. - ' │ │ │ +001d95f0: 2727 616c 7265 6164 7920 6d6f 756e 7465 ''already mounte │ │ │ +001d9600: 6427 2720 6e6f 7420 696e 2028 6d6f 756e d'' not in (moun │ │ │ +001d9610: 745f 7265 7375 6c74 2e6d 7367 207c 2064 t_result.msg | d │ │ │ +001d9620: 6566 6175 6c74 2827 2727 2729 2927 0a20 efault(''''))'. │ │ │ +001d9630: 2077 6865 6e3a 0a20 202d 2028 206e 6f74 when:. - ( not │ │ │ +001d9640: 2028 2022 6b65 726e 656c 2220 696e 2061 ( "kernel" in a │ │ │ +001d9650: 6e73 6962 6c65 5f66 6163 7473 2e70 6163 nsible_facts.pac │ │ │ +001d9660: 6b61 6765 7320 616e 6420 2262 6f6f 7463 kages and "bootc │ │ │ +001d9670: 2220 696e 2061 6e73 6962 6c65 5f66 6163 " in ansible_fac │ │ │ +001d9680: 7473 2e70 6163 6b61 6765 730a 2020 2020 ts.packages. │ │ │ +001d9690: 616e 6420 6e6f 7420 226f 7065 6e73 6869 and not "openshi │ │ │ +001d96a0: 6674 2d6b 7562 656c 6574 2220 696e 2061 ft-kubelet" in a │ │ │ +001d96b0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163 nsible_facts.pac │ │ │ +001d96c0: 6b61 6765 7320 616e 6420 226f 7374 7265 kages and "ostre │ │ │ +001d96d0: 6522 2069 6e20 616e 7369 626c 655f 7072 e" in ansible_pr │ │ │ +001d96e0: 6f63 5f63 6d64 6c69 6e65 0a20 2020 2029 oc_cmdline. ) │ │ │ +001d96f0: 2061 6e64 206e 6f74 2028 2061 6e73 6962 and not ( ansib │ │ │ +001d9700: 6c65 5f76 6972 7475 616c 697a 6174 696f le_virtualizatio │ │ │ +001d9710: 6e5f 7479 7065 2069 6e20 5b22 646f 636b n_type in ["dock │ │ │ +001d9720: 6572 222c 2022 6c78 6322 2c20 226f 7065 er", "lxc", "ope │ │ │ +001d9730: 6e76 7a22 2c20 2270 6f64 6d61 6e22 2c0a nvz", "podman",. │ │ │ +001d9740: 2020 2020 2263 6f6e 7461 696e 6572 225d "container"] │ │ │ +001d9750: 2029 2029 0a20 202d 2027 222f 7661 722f ) ). - '"/var/ │ │ │ +001d9760: 6c6f 6722 2069 6e20 616e 7369 626c 655f log" in ansible_ │ │ │ +001d9770: 6d6f 756e 7473 207c 206d 6170 2861 7474 mounts | map(att │ │ │ +001d9780: 7269 6275 7465 3d22 6d6f 756e 7422 2920 ribute="mount") │ │ │ +001d9790: 7c20 6c69 7374 270a 2020 2d20 6d6f 756e | list'. - moun │ │ │ +001d97a0: 745f 696e 666f 2069 7320 6465 6669 6e65 t_info is define │ │ │ +001d97b0: 640a 2020 2d20 2864 6576 6963 655f 6e61 d. - (device_na │ │ │ +001d97c0: 6d65 2e73 7464 6f75 7420 6973 2064 6566 me.stdout is def │ │ │ +001d97d0: 696e 6564 2061 6e64 2028 6465 7669 6365 ined and (device │ │ │ +001d97e0: 5f6e 616d 652e 7374 646f 7574 207c 206c _name.stdout | l │ │ │ +001d97f0: 656e 6774 6820 2667 743b 2030 2929 206f ength > 0)) o │ │ │ +001d9800: 7220 2822 2d2d 6673 7461 6222 0a20 2020 r ("--fstab". │ │ │ +001d9810: 207c 206c 656e 6774 6820 3d3d 2030 290a | length == 0). │ │ │ +001d9820: 2020 7461 6773 3a0a 2020 2d20 4e49 5354 tags:. - NIST │ │ │ +001d9830: 2d38 3030 2d35 332d 4143 2d36 0a20 202d -800-53-AC-6. - │ │ │ +001d9840: 204e 4953 542d 3830 302d 3533 2d41 432d NIST-800-53-AC- │ │ │ +001d9850: 3628 3129 0a20 202d 204e 4953 542d 3830 6(1). - NIST-80 │ │ │ +001d9860: 302d 3533 2d43 4d2d 3628 6129 0a20 202d 0-53-CM-6(a). - │ │ │ +001d9870: 204e 4953 542d 3830 302d 3533 2d43 4d2d NIST-800-53-CM- │ │ │ +001d9880: 3728 6129 0a20 202d 204e 4953 542d 3830 7(a). - NIST-80 │ │ │ +001d9890: 302d 3533 2d43 4d2d 3728 6229 0a20 202d 0-53-CM-7(b). - │ │ │ +001d98a0: 204e 4953 542d 3830 302d 3533 2d4d 502d NIST-800-53-MP- │ │ │ +001d98b0: 370a 2020 2d20 636f 6e66 6967 7572 655f 7. - configure_ │ │ │ +001d98c0: 7374 7261 7465 6779 0a20 202d 2068 6967 strategy. - hig │ │ │ +001d98d0: 685f 6469 7372 7570 7469 6f6e 0a20 202d h_disruption. - │ │ │ +001d98e0: 206c 6f77 5f63 6f6d 706c 6578 6974 790a low_complexity. │ │ │ +001d98f0: 2020 2d20 6d65 6469 756d 5f73 6576 6572 - medium_sever │ │ │ +001d9900: 6974 790a 2020 2d20 6d6f 756e 745f 6f70 ity. - mount_op │ │ │ +001d9910: 7469 6f6e 5f76 6172 5f6c 6f67 5f6e 6f73 tion_var_log_nos │ │ │ +001d9920: 7569 640a 2020 2d20 6e6f 5f72 6562 6f6f uid. - no_reboo │ │ │ +001d9930: 745f 6e65 6564 6564 0a3c 2f63 6f64 653e t_needed. │ │ │ +001d9940: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063

Remedia │ │ │ +001d99f0: 7469 6f6e 2053 6865 6c6c 2073 6372 6970 tion Shell scrip │ │ │ +001d9a00: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ +001d9a80: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:false

# Remed │ │ │ +001d9ac0: 6961 7469 6f6e 2069 7320 6170 706c 6963 iation is applic │ │ │ +001d9ad0: 6162 6c65 206f 6e6c 7920 696e 2063 6572 able only in cer │ │ │ +001d9ae0: 7461 696e 2070 6c61 7466 6f72 6d73 0a69 tain platforms.i │ │ │ +001d9af0: 6620 2820 2120 2820 7b20 7270 6d20 2d2d f ( ! ( { rpm -- │ │ │ +001d9b00: 7175 6965 7420 2d71 206b 6572 6e65 6c20 quiet -q kernel │ │ │ +001d9b10: 3b7d 2026 616d 703b 2661 6d70 3b20 7b20 ;} && { │ │ │ +001d9b20: 7270 6d20 2d2d 7175 6965 7420 2d71 2062 rpm --quiet -q b │ │ │ +001d9b30: 6f6f 7463 203b 7d20 2661 6d70 3b26 616d ootc ;} &&am │ │ │ +001d9b40: 703b 207b 2021 2072 706d 202d 2d71 7569 p; { ! rpm --qui │ │ │ +001d9b50: 6574 202d 7120 6f70 656e 7368 6966 742d et -q openshift- │ │ │ +001d9b60: 6b75 6265 6c65 7420 3b7d 2026 616d 703b kubelet ;} & │ │ │ +001d9b70: 2661 6d70 3b20 285b 202d 6620 2f72 756e & ([ -f /run │ │ │ +001d9b80: 2f6f 7374 7265 652d 626f 6f74 6564 205d /ostree-booted ] │ │ │ +001d9b90: 207c 7c20 5b20 2d4c 202f 6f73 7472 6565 || [ -L /ostree │ │ │ +001d9ba0: 205d 2920 2920 2661 6d70 3b26 616d 703b ]) ) && │ │ │ +001d9bb0: 2021 2028 205b 202d 6620 2f2e 646f 636b ! ( [ -f /.dock │ │ │ +001d9bc0: 6572 656e 7620 5d20 7c7c 205b 202d 6620 erenv ] || [ -f │ │ │ +001d9bd0: 2f72 756e 2f2e 636f 6e74 6169 6e65 7265 /run/.containere │ │ │ +001d9be0: 6e76 205d 2029 2029 2026 616d 703b 2661 nv ] ) ) &&a │ │ │ +001d9bf0: 6d70 3b20 7b20 2820 6669 6e64 6d6e 7420 mp; { ( findmnt │ │ │ +001d9c00: 2d2d 6b65 726e 656c 2022 2f76 6172 2f6c --kernel "/var/l │ │ │ +001d9c10: 6f67 2220 2667 743b 202f 6465 762f 6e75 og" > /dev/nu │ │ │ +001d9c20: 6c6c 207c 7c20 6669 6e64 6d6e 7420 2d2d ll || findmnt -- │ │ │ +001d9c30: 6673 7461 6220 222f 7661 722f 6c6f 6722 fstab "/var/log" │ │ │ +001d9c40: 2026 6774 3b20 2f64 6576 2f6e 756c 6c20 > /dev/null │ │ │ +001d9c50: 293b 207d 3b20 7468 656e 0a0a 6675 6e63 ); }; then..func │ │ │ +001d9c60: 7469 6f6e 2070 6572 666f 726d 5f72 656d tion perform_rem │ │ │ +001d9c70: 6564 6961 7469 6f6e 207b 0a0a 2020 2020 ediation {.. │ │ │ +001d9c80: 0a20 2020 2020 2020 2023 2074 6865 206d . # the m │ │ │ +001d9c90: 6f75 6e74 2070 6f69 6e74 202f 7661 722f ount point /var/ │ │ │ +001d9ca0: 6c6f 6720 6861 7320 746f 2062 6520 6465 log has to be de │ │ │ +001d9cb0: 6669 6e65 6420 696e 202f 6574 632f 6673 fined in /etc/fs │ │ │ +001d9cc0: 7461 620a 2020 2020 2020 2020 2320 6265 tab. # be │ │ │ +001d9cd0: 666f 7265 2074 6869 7320 7265 6d65 6469 fore this remedi │ │ │ +001d9ce0: 6174 696f 6e20 6361 6e20 6265 2065 7865 ation can be exe │ │ │ +001d9cf0: 6375 7465 642e 2049 6e20 6361 7365 2069 cuted. In case i │ │ │ +001d9d00: 7420 6973 206e 6f74 2064 6566 696e 6564 t is not defined │ │ │ +001d9d10: 2c20 7468 650a 2020 2020 2020 2020 2320 , the. # │ │ │ +001d9d20: 7265 6d65 6469 6174 696f 6e20 6162 6f72 remediation abor │ │ │ +001d9d30: 7473 2061 6e64 206e 6f20 6368 616e 6765 ts and no change │ │ │ +001d9d40: 7320 7265 6761 7264 696e 6720 7468 6520 s regarding the │ │ │ +001d9d50: 6d6f 756e 7420 706f 696e 7420 6172 6520 mount point are │ │ │ +001d9d60: 646f 6e65 2e0a 2020 2020 2020 2020 6d6f done.. mo │ │ │ +001d9d70: 756e 745f 706f 696e 745f 6d61 7463 685f unt_point_match_ │ │ │ +001d9d80: 7265 6765 7870 3d22 2428 7072 696e 7466 regexp="$(printf │ │ │ +001d9d90: 2022 5e5b 5b3a 7370 6163 653a 5d5d 2a5b "^[[:space:]]*[ │ │ │ +001d9da0: 5e23 5d2e 2a5b 5b3a 7370 6163 653a 5d5d ^#].*[[:space:]] │ │ │ +001d9db0: 2573 5b5b 3a73 7061 6365 3a5d 5d22 2022 %s[[:space:]]" " │ │ │ +001d9dc0: 2f76 6172 2f6c 6f67 2229 220a 0a20 2020 /var/log")".. │ │ │ +001d9dd0: 2067 7265 7020 2224 6d6f 756e 745f 706f grep "$mount_po │ │ │ +001d9de0: 696e 745f 6d61 7463 685f 7265 6765 7870 int_match_regexp │ │ │ +001d9df0: 2220 2d71 202f 6574 632f 6673 7461 6220 " -q /etc/fstab │ │ │ +001d9e00: 5c0a 2020 2020 2020 2020 7c7c 207b 2065 \. || { e │ │ │ +001d9e10: 6368 6f20 2254 6865 206d 6f75 6e74 2070 cho "The mount p │ │ │ +001d9e20: 6f69 6e74 2027 2f76 6172 2f6c 6f67 2720 oint '/var/log' │ │ │ +001d9e30: 6973 206e 6f74 2065 7665 6e20 696e 202f is not even in / │ │ │ +001d9e40: 6574 632f 6673 7461 622c 2073 6f20 7765 etc/fstab, so we │ │ │ +001d9e50: 2063 616e 2774 2073 6574 2075 7020 6d6f can't set up mo │ │ │ +001d9e60: 756e 7420 6f70 7469 6f6e 7322 2026 6774 unt options" > │ │ │ +001d9e70: 3b26 616d 703b 323b 0a20 2020 2020 2020 ;&2;. │ │ │ +001d9e80: 2020 2020 2020 2020 2065 6368 6f20 224e echo "N │ │ │ +001d9e90: 6f74 2072 656d 6564 6961 7469 6e67 2c20 ot remediating, │ │ │ +001d9ea0: 6265 6361 7573 6520 7468 6572 6520 6973 because there is │ │ │ +001d9eb0: 206e 6f20 7265 636f 7264 206f 6620 2f76 no record of /v │ │ │ +001d9ec0: 6172 2f6c 6f67 2069 6e20 2f65 7463 2f66 ar/log in /etc/f │ │ │ +001d9ed0: 7374 6162 2220 2667 743b 2661 6d70 3b32 stab" >&2 │ │ │ +001d9ee0: 3b20 7265 7475 726e 2031 3b20 7d0a 2020 ; return 1; }. │ │ │ +001d9ef0: 2020 0a0a 0a20 2020 206d 6f75 6e74 5f70 ... mount_p │ │ │ +001d9f00: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578 oint_match_regex │ │ │ +001d9f10: 703d 2224 2870 7269 6e74 6620 225e 5b5b p="$(printf "^[[ │ │ │ +001d9f20: 3a73 7061 6365 3a5d 5d2a 5b5e 235d 2e2a :space:]]*[^#].* │ │ │ +001d9f30: 5b5b 3a73 7061 6365 3a5d 5d25 735b 5b3a [[:space:]]%s[[: │ │ │ +001d9f40: 7370 6163 653a 5d5d 2220 2f76 6172 2f6c space:]]" /var/l │ │ │ +001d9f50: 6f67 2922 0a0a 2020 2020 2320 4966 2074 og)".. # If t │ │ │ +001d9f60: 6865 206d 6f75 6e74 2070 6f69 6e74 2069 he mount point i │ │ │ +001d9f70: 7320 6e6f 7420 696e 202f 6574 632f 6673 s not in /etc/fs │ │ │ +001d9f80: 7461 622c 2067 6574 2070 7265 7669 6f75 tab, get previou │ │ │ +001d9f90: 7320 6d6f 756e 7420 6f70 7469 6f6e 7320 s mount options │ │ │ +001d9fa0: 6672 6f6d 202f 6574 632f 6d74 6162 0a20 from /etc/mtab. │ │ │ +001d9fb0: 2020 2069 6620 2120 6772 6570 202d 7120 if ! grep -q │ │ │ +001d9fc0: 2224 6d6f 756e 745f 706f 696e 745f 6d61 "$mount_point_ma │ │ │ +001d9fd0: 7463 685f 7265 6765 7870 2220 2f65 7463 tch_regexp" /etc │ │ │ +001d9fe0: 2f66 7374 6162 3b20 7468 656e 0a20 2020 /fstab; then. │ │ │ +001d9ff0: 2020 2020 2023 2072 756e 7469 6d65 206f # runtime o │ │ │ +001da000: 7074 7320 7769 7468 6f75 7420 736f 6d65 pts without some │ │ │ +001da010: 2061 7574 6f6d 6174 6963 206b 6572 6e65 automatic kerne │ │ │ +001da020: 6c2f 7573 6572 7370 6163 652d 6164 6465 l/userspace-adde │ │ │ +001da030: 6420 6465 6661 756c 7473 0a20 2020 2020 d defaults. │ │ │ +001da040: 2020 2070 7265 7669 6f75 735f 6d6f 756e previous_moun │ │ │ +001da050: 745f 6f70 7473 3d24 2867 7265 7020 2224 t_opts=$(grep "$ │ │ │ +001da060: 6d6f 756e 745f 706f 696e 745f 6d61 7463 mount_point_matc │ │ │ +001da070: 685f 7265 6765 7870 2220 2f65 7463 2f6d h_regexp" /etc/m │ │ │ +001da080: 7461 6220 7c20 6865 6164 202d 3120 7c20 tab | head -1 | │ │ │ +001da090: 2061 776b 2027 7b70 7269 6e74 2024 347d awk '{print $4} │ │ │ +001da0a0: 2720 5c0a 2020 2020 2020 2020 2020 2020 ' \. │ │ │ +001da0b0: 2020 2020 2020 2020 7c20 7365 6420 2d45 | sed -E │ │ │ +001da0c0: 2022 732f 2872 777c 6465 6661 756c 7473 "s/(rw|defaults │ │ │ +001da0d0: 7c73 6563 6c61 6265 6c7c 6e6f 7375 6964 |seclabel|nosuid │ │ │ +001da0e0: 2928 2c7c 2429 2f2f 673b 732f 2c24 2f2f )(,|$)//g;s/,$// │ │ │ +001da0f0: 2229 0a20 2020 2020 2020 205b 2022 2470 "). [ "$p │ │ │ +001da100: 7265 7669 6f75 735f 6d6f 756e 745f 6f70 revious_mount_op │ │ │ +001da110: 7473 2220 5d20 2661 6d70 3b26 616d 703b ts" ] && │ │ │ +001da120: 2070 7265 7669 6f75 735f 6d6f 756e 745f previous_mount_ │ │ │ +001da130: 6f70 7473 2b3d 222c 220a 2020 2020 2020 opts+=",". │ │ │ +001da140: 2020 2320 496e 2069 736f 3936 3630 2066 # In iso9660 f │ │ │ +001da150: 696c 6573 7973 7465 6d73 206d 7461 6220 ilesystems mtab │ │ │ +001da160: 636f 756c 6420 6465 7363 7269 6265 2061 could describe a │ │ │ +001da170: 2022 626c 6f63 6b73 697a 6522 2076 616c "blocksize" val │ │ │ +001da180: 7565 2c20 7468 6973 2073 686f 756c 6420 ue, this should │ │ │ +001da190: 6265 2072 6566 6c65 6374 6564 2069 6e0a be reflected in. │ │ │ +001da1a0: 2020 2020 2020 2020 2320 6673 7461 6220 # fstab │ │ │ +001da1b0: 6173 2022 626c 6f63 6b22 2e20 2054 6865 as "block". The │ │ │ +001da1c0: 206e 6578 7420 7661 7269 6162 6c65 2069 next variable i │ │ │ +001da1d0: 7320 746f 2073 6174 6973 6679 2073 6865 s to satisfy she │ │ │ +001da1e0: 6c6c 6368 6563 6b20 5343 3230 3530 2e0a llcheck SC2050.. │ │ │ +001da1f0: 2020 2020 2020 2020 6673 5f74 7970 653d fs_type= │ │ │ +001da200: 2222 0a20 2020 2020 2020 2069 6620 5b20 "". if [ │ │ │ +001da210: 2022 2466 735f 7479 7065 2220 3d3d 2022 "$fs_type" == " │ │ │ +001da220: 6973 6f39 3636 3022 205d 203b 2074 6865 iso9660" ] ; the │ │ │ +001da230: 6e0a 2020 2020 2020 2020 2020 2020 7072 n. pr │ │ │ +001da240: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074 evious_mount_opt │ │ │ +001da250: 733d 2428 7365 6420 2773 2f62 6c6f 636b s=$(sed 's/block │ │ │ +001da260: 7369 7a65 3d2f 626c 6f63 6b3d 2f27 2026 size=/block=/' & │ │ │ +001da270: 6c74 3b26 6c74 3b26 6c74 3b20 2224 7072 lt;<< "$pr │ │ │ +001da280: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074 evious_mount_opt │ │ │ +001da290: 7322 290a 2020 2020 2020 2020 6669 0a20 s"). fi. │ │ │ +001da2a0: 2020 2020 2020 2065 6368 6f20 2220 2f76 echo " /v │ │ │ +001da2b0: 6172 2f6c 6f67 2020 6465 6661 756c 7473 ar/log defaults │ │ │ +001da2c0: 2c24 7b70 7265 7669 6f75 735f 6d6f 756e ,${previous_moun │ │ │ +001da2d0: 745f 6f70 7473 7d6e 6f73 7569 6420 3020 t_opts}nosuid 0 │ │ │ +001da2e0: 3022 2026 6774 3b26 6774 3b20 2f65 7463 0" >> /etc │ │ │ +001da2f0: 2f66 7374 6162 0a20 2020 2023 2049 6620 /fstab. # If │ │ │ +001da300: 7468 6520 6d6f 756e 745f 6f70 7420 6f70 the mount_opt op │ │ │ +001da310: 7469 6f6e 2069 7320 6e6f 7420 616c 7265 tion is not alre │ │ │ +001da320: 6164 7920 696e 2074 6865 206d 6f75 6e74 ady in the mount │ │ │ +001da330: 2070 6f69 6e74 2773 202f 6574 632f 6673 point's /etc/fs │ │ │ +001da340: 7461 6220 656e 7472 792c 2061 6464 2069 tab entry, add i │ │ │ +001da350: 740a 2020 2020 656c 6966 2021 2067 7265 t. elif ! gre │ │ │ +001da360: 7020 2224 6d6f 756e 745f 706f 696e 745f p "$mount_point_ │ │ │ +001da370: 6d61 7463 685f 7265 6765 7870 2220 2f65 match_regexp" /e │ │ │ +001da380: 7463 2f66 7374 6162 207c 2067 7265 7020 tc/fstab | grep │ │ │ +001da390: 2d71 2022 6e6f 7375 6964 223b 2074 6865 -q "nosuid"; the │ │ │ +001da3a0: 6e0a 2020 2020 2020 2020 7072 6576 696f n. previo │ │ │ +001da3b0: 7573 5f6d 6f75 6e74 5f6f 7074 733d 2428 us_mount_opts=$( │ │ │ +001da3c0: 6772 6570 2022 246d 6f75 6e74 5f70 6f69 grep "$mount_poi │ │ │ +001da3d0: 6e74 5f6d 6174 6368 5f72 6567 6578 7022 nt_match_regexp" │ │ │ +001da3e0: 202f 6574 632f 6673 7461 6220 7c20 6177 /etc/fstab | aw │ │ │ +001da3f0: 6b20 277b 7072 696e 7420 2434 7d27 290a k '{print $4}'). │ │ │ +001da400: 2020 2020 2020 2020 7365 6420 2d69 2022 sed -i " │ │ │ +001da410: 737c 5c28 247b 6d6f 756e 745f 706f 696e s|\(${mount_poin │ │ │ +001da420: 745f 6d61 7463 685f 7265 6765 7870 7d2e t_match_regexp}. │ │ │ +001da430: 2a24 7b70 7265 7669 6f75 735f 6d6f 756e *${previous_moun │ │ │ +001da440: 745f 6f70 7473 7d5c 297c 5c31 2c6e 6f73 t_opts}\)|\1,nos │ │ │ +001da450: 7569 647c 2220 2f65 7463 2f66 7374 6162 uid|" /etc/fstab │ │ │ +001da460: 0a20 2020 2066 690a 0a0a 2020 2020 6966 . fi... if │ │ │ +001da470: 206d 6b64 6972 202d 7020 222f 7661 722f mkdir -p "/var/ │ │ │ +001da480: 6c6f 6722 3b20 7468 656e 0a20 2020 2020 log"; then. │ │ │ +001da490: 2020 2069 6620 6d6f 756e 7470 6f69 6e74 if mountpoint │ │ │ +001da4a0: 202d 7120 222f 7661 722f 6c6f 6722 3b20 -q "/var/log"; │ │ │ +001da4b0: 7468 656e 0a20 2020 2020 2020 2020 2020 then. │ │ │ +001da4c0: 206d 6f75 6e74 202d 6f20 7265 6d6f 756e mount -o remoun │ │ │ +001da4d0: 7420 2d2d 7461 7267 6574 2022 2f76 6172 t --target "/var │ │ │ +001da4e0: 2f6c 6f67 220a 2020 2020 2020 2020 6669 /log". fi │ │ │ +001da4f0: 0a20 2020 2066 690a 7d0a 0a70 6572 666f . fi.}..perfo │ │ │ +001da500: 726d 5f72 656d 6564 6961 7469 6f6e 0a0a rm_remediation.. │ │ │ +001da510: 656c 7365 0a20 2020 2026 6774 3b26 616d else. >&am │ │ │ +001da520: 703b 3220 6563 686f 2027 5265 6d65 6469 p;2 echo 'Remedi │ │ │ +001da530: 6174 696f 6e20 6973 206e 6f74 2061 7070 ation is not app │ │ │ +001da540: 6c69 6361 626c 652c 206e 6f74 6869 6e67 licable, nothing │ │ │ +001da550: 2077 6173 2064 6f6e 6527 0a66 690a 3c2f was done'.fi.

Re │ │ │ +001da610: 6d65 6469 6174 696f 6e20 416e 6163 6f6e mediation Anacon │ │ │ +001da620: 6461 2073 6e69 7070 6574 20e2 87b2 3c2f da snippet ...
│ │ │ +001da6c0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 < │ │ │ +001da700: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +001da710: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
.
│ │ │ +001da760: 7061 7274 202f 7661 722f 6c6f 6720 2d2d  part /var/log --
│ │ │ +001da770: 6d6f 756e 746f 7074 696f 6e73 3d22 6e6f  mountoptions="no
│ │ │ +001da780: 7375 6964 220a 3c2f 636f 6465 3e3c 2f70  suid".

< │ │ │ 001da7a0: 2f74 643e 3c2f 7472 3e3c 2f74 626f 6479 /td>
│ │ │ +001da6b0: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +001da6e0: 696f 6e3a 3c2f 7468 3e3c 7464 3e68 6967 ion:hig │ │ │ +001da6f0: 683c 2f74 643e 3c2f 7472 3e3c 7472 3e3c h
Strate │ │ │ +001da730: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ +001da740: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Reme │ │ │ -001db380: 6469 6174 696f 6e20 416e 6163 6f6e 6461 diation Anaconda │ │ │ -001db390: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ...
│ │ │ -001db3a0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ -001db440: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr> │ │ │ -001db490: 3c74 723e 3c74 683e 5374 7261 7465 6779
.pa
│ │ │ -001db4d0: 7274 202f 7661 7220 2d2d 6d6f 756e 746f  rt /var --mounto
│ │ │ -001db4e0: 7074 696f 6e73 3d22 6e6f 6465 7622 0a3c  ptions="nodev".<
│ │ │ -001db4f0: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ -001db5a0: 656d 6564 6961 7469 6f6e 2041 6e73 6962 emediation Ansib │ │ │ -001db5b0: 6c65 2073 6e69 7070 6574 20e2 87b2 3c2f le snippet ...
Co │ │ │ -001db420: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -001db450: 6e3a 3c2f 7468 3e3c 7464 3e68 6967 683c n:high< │ │ │ -001db460: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -001db4a0: 3a3c 2f74 683e 3c74 643e 656e 6162 6c65 :enable │ │ │ -001db4b0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
│ │ │ -001db650: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 < │ │ │ -001db690: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -001db6a0: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false< │ │ │ -001db6e0: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
- name: Gather
│ │ │ -001db700: 2074 6865 2070 6163 6b61 6765 2066 6163   the package fac
│ │ │ -001db710: 7473 0a20 2070 6163 6b61 6765 5f66 6163  ts.  package_fac
│ │ │ -001db720: 7473 3a0a 2020 2020 6d61 6e61 6765 723a  ts:.    manager:
│ │ │ -001db730: 2061 7574 6f0a 2020 7461 6773 3a0a 2020   auto.  tags:.  
│ │ │ -001db740: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ -001db750: 2d36 0a20 202d 204e 4953 542d 3830 302d  -6.  - NIST-800-
│ │ │ -001db760: 3533 2d41 432d 3628 3129 0a20 202d 204e  53-AC-6(1).  - N
│ │ │ -001db770: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ -001db780: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ -001db790: 3533 2d43 4d2d 3728 6129 0a20 202d 204e  53-CM-7(a).  - N
│ │ │ -001db7a0: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ -001db7b0: 6229 0a20 202d 204e 4953 542d 3830 302d  b).  - NIST-800-
│ │ │ -001db7c0: 3533 2d4d 502d 370a 2020 2d20 636f 6e66  53-MP-7.  - conf
│ │ │ -001db7d0: 6967 7572 655f 7374 7261 7465 6779 0a20  igure_strategy. 
│ │ │ -001db7e0: 202d 2068 6967 685f 6469 7372 7570 7469   - high_disrupti
│ │ │ -001db7f0: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c  on.  - low_compl
│ │ │ -001db800: 6578 6974 790a 2020 2d20 6d65 6469 756d  exity.  - medium
│ │ │ -001db810: 5f73 6576 6572 6974 790a 2020 2d20 6d6f  _severity.  - mo
│ │ │ -001db820: 756e 745f 6f70 7469 6f6e 5f76 6172 5f6e  unt_option_var_n
│ │ │ -001db830: 6f64 6576 0a20 202d 206e 6f5f 7265 626f  odev.  - no_rebo
│ │ │ -001db840: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d  ot_needed..- nam
│ │ │ -001db850: 653a 2027 4164 6420 6e6f 6465 7620 4f70  e: 'Add nodev Op
│ │ │ -001db860: 7469 6f6e 2074 6f20 2f76 6172 3a20 4368  tion to /var: Ch
│ │ │ -001db870: 6563 6b20 696e 666f 726d 6174 696f 6e20  eck information 
│ │ │ -001db880: 6173 736f 6369 6174 6564 2074 6f20 6d6f  associated to mo
│ │ │ -001db890: 756e 7470 6f69 6e74 270a 2020 616e 7369  untpoint'.  ansi
│ │ │ -001db8a0: 626c 652e 6275 696c 7469 6e2e 636f 6d6d  ble.builtin.comm
│ │ │ -001db8b0: 616e 643a 2066 696e 646d 6e74 202d 2d66  and: findmnt --f
│ │ │ -001db8c0: 7374 6162 2027 2f76 6172 270a 2020 7265  stab '/var'.  re
│ │ │ -001db8d0: 6769 7374 6572 3a20 6465 7669 6365 5f6e  gister: device_n
│ │ │ -001db8e0: 616d 650a 2020 6661 696c 6564 5f77 6865  ame.  failed_whe
│ │ │ -001db8f0: 6e3a 2064 6576 6963 655f 6e61 6d65 2e72  n: device_name.r
│ │ │ -001db900: 6320 2667 743b 2031 0a20 2063 6861 6e67  c > 1.  chang
│ │ │ -001db910: 6564 5f77 6865 6e3a 2066 616c 7365 0a20  ed_when: false. 
│ │ │ -001db920: 2063 6865 636b 5f6d 6f64 653a 2066 616c   check_mode: fal
│ │ │ -001db930: 7365 0a20 2077 6865 6e3a 0a20 202d 2028  se.  when:.  - (
│ │ │ -001db940: 206e 6f74 2028 2022 6b65 726e 656c 2220   not ( "kernel" 
│ │ │ -001db950: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001db960: 2e70 6163 6b61 6765 7320 616e 6420 2262  .packages and "b
│ │ │ -001db970: 6f6f 7463 2220 696e 2061 6e73 6962 6c65  ootc" in ansible
│ │ │ -001db980: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ -001db990: 2020 2020 616e 6420 6e6f 7420 226f 7065      and not "ope
│ │ │ -001db9a0: 6e73 6869 6674 2d6b 7562 656c 6574 2220  nshift-kubelet" 
│ │ │ -001db9b0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001db9c0: 2e70 6163 6b61 6765 7320 616e 6420 226f  .packages and "o
│ │ │ -001db9d0: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ -001db9e0: 655f 7072 6f63 5f63 6d64 6c69 6e65 0a20  e_proc_cmdline. 
│ │ │ -001db9f0: 2020 2029 2061 6e64 206e 6f74 2028 2061     ) and not ( a
│ │ │ -001dba00: 6e73 6962 6c65 5f76 6972 7475 616c 697a  nsible_virtualiz
│ │ │ -001dba10: 6174 696f 6e5f 7479 7065 2069 6e20 5b22  ation_type in ["
│ │ │ -001dba20: 646f 636b 6572 222c 2022 6c78 6322 2c20  docker", "lxc", 
│ │ │ -001dba30: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61  "openvz", "podma
│ │ │ -001dba40: 6e22 2c0a 2020 2020 2263 6f6e 7461 696e  n",.    "contain
│ │ │ -001dba50: 6572 225d 2029 2029 0a20 202d 2027 222f  er"] ) ).  - '"/
│ │ │ -001dba60: 7661 7222 2069 6e20 616e 7369 626c 655f  var" in ansible_
│ │ │ -001dba70: 6d6f 756e 7473 207c 206d 6170 2861 7474  mounts | map(att
│ │ │ -001dba80: 7269 6275 7465 3d22 6d6f 756e 7422 2920  ribute="mount") 
│ │ │ -001dba90: 7c20 6c69 7374 270a 2020 7461 6773 3a0a  | list'.  tags:.
│ │ │ -001dbaa0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001dbab0: 4143 2d36 0a20 202d 204e 4953 542d 3830  AC-6.  - NIST-80
│ │ │ -001dbac0: 302d 3533 2d41 432d 3628 3129 0a20 202d  0-53-AC-6(1).  -
│ │ │ -001dbad0: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -001dbae0: 3628 6129 0a20 202d 204e 4953 542d 3830  6(a).  - NIST-80
│ │ │ -001dbaf0: 302d 3533 2d43 4d2d 3728 6129 0a20 202d  0-53-CM-7(a).  -
│ │ │ -001dbb00: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -001dbb10: 3728 6229 0a20 202d 204e 4953 542d 3830  7(b).  - NIST-80
│ │ │ -001dbb20: 302d 3533 2d4d 502d 370a 2020 2d20 636f  0-53-MP-7.  - co
│ │ │ -001dbb30: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ -001dbb40: 0a20 202d 2068 6967 685f 6469 7372 7570  .  - high_disrup
│ │ │ -001dbb50: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d  tion.  - low_com
│ │ │ -001dbb60: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ -001dbb70: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ -001dbb80: 6d6f 756e 745f 6f70 7469 6f6e 5f76 6172  mount_option_var
│ │ │ -001dbb90: 5f6e 6f64 6576 0a20 202d 206e 6f5f 7265  _nodev.  - no_re
│ │ │ -001dbba0: 626f 6f74 5f6e 6565 6465 640a 0a2d 206e  boot_needed..- n
│ │ │ -001dbbb0: 616d 653a 2027 4164 6420 6e6f 6465 7620  ame: 'Add nodev 
│ │ │ -001dbbc0: 4f70 7469 6f6e 2074 6f20 2f76 6172 3a20  Option to /var: 
│ │ │ -001dbbd0: 4372 6561 7465 206d 6f75 6e74 5f69 6e66  Create mount_inf
│ │ │ -001dbbe0: 6f20 6469 6374 696f 6e61 7279 2076 6172  o dictionary var
│ │ │ -001dbbf0: 6961 626c 6527 0a20 2073 6574 5f66 6163  iable'.  set_fac
│ │ │ -001dbc00: 743a 0a20 2020 206d 6f75 6e74 5f69 6e66  t:.    mount_inf
│ │ │ -001dbc10: 6f3a 2027 7b7b 206d 6f75 6e74 5f69 6e66  o: '{{ mount_inf
│ │ │ -001dbc20: 6f7c 6465 6661 756c 7428 7b7d 297c 636f  o|default({})|co
│ │ │ -001dbc30: 6d62 696e 6528 7b69 7465 6d2e 303a 2069  mbine({item.0: i
│ │ │ -001dbc40: 7465 6d2e 317d 2920 7d7d 270a 2020 7769  tem.1}) }}'.  wi
│ │ │ -001dbc50: 7468 5f74 6f67 6574 6865 723a 0a20 202d  th_together:.  -
│ │ │ -001dbc60: 2027 7b7b 2064 6576 6963 655f 6e61 6d65   '{{ device_name
│ │ │ -001dbc70: 2e73 7464 6f75 745f 6c69 6e65 735b 305d  .stdout_lines[0]
│ │ │ -001dbc80: 2e73 706c 6974 2829 207c 206d 6170 2827  .split() | map('
│ │ │ -001dbc90: 276c 6f77 6572 2727 2920 7c20 6c69 7374  'lower'') | list
│ │ │ -001dbca0: 207d 7d27 0a20 202d 2027 7b7b 2064 6576   }}'.  - '{{ dev
│ │ │ -001dbcb0: 6963 655f 6e61 6d65 2e73 7464 6f75 745f  ice_name.stdout_
│ │ │ -001dbcc0: 6c69 6e65 735b 315d 2e73 706c 6974 2829  lines[1].split()
│ │ │ -001dbcd0: 207c 206c 6973 7420 7d7d 270a 2020 7768   | list }}'.  wh
│ │ │ -001dbce0: 656e 3a0a 2020 2d20 2820 6e6f 7420 2820  en:.  - ( not ( 
│ │ │ -001dbcf0: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ -001dbd00: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001dbd10: 6573 2061 6e64 2022 626f 6f74 6322 2069  es and "bootc" i
│ │ │ -001dbd20: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -001dbd30: 7061 636b 6167 6573 0a20 2020 2061 6e64  packages.    and
│ │ │ -001dbd40: 206e 6f74 2022 6f70 656e 7368 6966 742d   not "openshift-
│ │ │ -001dbd50: 6b75 6265 6c65 7422 2069 6e20 616e 7369  kubelet" in ansi
│ │ │ -001dbd60: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001dbd70: 6573 2061 6e64 2022 6f73 7472 6565 2220  es and "ostree" 
│ │ │ -001dbd80: 696e 2061 6e73 6962 6c65 5f70 726f 635f  in ansible_proc_
│ │ │ -001dbd90: 636d 646c 696e 650a 2020 2020 2920 616e  cmdline.    ) an
│ │ │ -001dbda0: 6420 6e6f 7420 2820 616e 7369 626c 655f  d not ( ansible_
│ │ │ -001dbdb0: 7669 7274 7561 6c69 7a61 7469 6f6e 5f74  virtualization_t
│ │ │ -001dbdc0: 7970 6520 696e 205b 2264 6f63 6b65 7222  ype in ["docker"
│ │ │ -001dbdd0: 2c20 226c 7863 222c 2022 6f70 656e 767a  , "lxc", "openvz
│ │ │ -001dbde0: 222c 2022 706f 646d 616e 222c 0a20 2020  ", "podman",.   
│ │ │ -001dbdf0: 2022 636f 6e74 6169 6e65 7222 5d20 2920   "container"] ) 
│ │ │ -001dbe00: 290a 2020 2d20 2722 2f76 6172 2220 696e  ).  - '"/var" in
│ │ │ -001dbe10: 2061 6e73 6962 6c65 5f6d 6f75 6e74 7320   ansible_mounts 
│ │ │ -001dbe20: 7c20 6d61 7028 6174 7472 6962 7574 653d  | map(attribute=
│ │ │ -001dbe30: 226d 6f75 6e74 2229 207c 206c 6973 7427  "mount") | list'
│ │ │ -001dbe40: 0a20 202d 2064 6576 6963 655f 6e61 6d65  .  - device_name
│ │ │ -001dbe50: 2e73 7464 6f75 7420 6973 2064 6566 696e  .stdout is defin
│ │ │ -001dbe60: 6564 2061 6e64 2064 6576 6963 655f 6e61  ed and device_na
│ │ │ -001dbe70: 6d65 2e73 7464 6f75 745f 6c69 6e65 7320  me.stdout_lines 
│ │ │ -001dbe80: 6973 2064 6566 696e 6564 0a20 202d 2028  is defined.  - (
│ │ │ -001dbe90: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ -001dbea0: 7574 207c 206c 656e 6774 6820 2667 743b  ut | length >
│ │ │ -001dbeb0: 2030 290a 2020 7461 6773 3a0a 2020 2d20   0).  tags:.  - 
│ │ │ -001dbec0: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ -001dbed0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001dbee0: 2d41 432d 3628 3129 0a20 202d 204e 4953  -AC-6(1).  - NIS
│ │ │ -001dbef0: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ -001dbf00: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001dbf10: 2d43 4d2d 3728 6129 0a20 202d 204e 4953  -CM-7(a).  - NIS
│ │ │ -001dbf20: 542d 3830 302d 3533 2d43 4d2d 3728 6229  T-800-53-CM-7(b)
│ │ │ -001dbf30: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001dbf40: 2d4d 502d 370a 2020 2d20 636f 6e66 6967  -MP-7.  - config
│ │ │ -001dbf50: 7572 655f 7374 7261 7465 6779 0a20 202d  ure_strategy.  -
│ │ │ -001dbf60: 2068 6967 685f 6469 7372 7570 7469 6f6e   high_disruption
│ │ │ -001dbf70: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ -001dbf80: 6974 790a 2020 2d20 6d65 6469 756d 5f73  ity.  - medium_s
│ │ │ -001dbf90: 6576 6572 6974 790a 2020 2d20 6d6f 756e  everity.  - moun
│ │ │ -001dbfa0: 745f 6f70 7469 6f6e 5f76 6172 5f6e 6f64  t_option_var_nod
│ │ │ -001dbfb0: 6576 0a20 202d 206e 6f5f 7265 626f 6f74  ev.  - no_reboot
│ │ │ -001dbfc0: 5f6e 6565 6465 640a 0a2d 206e 616d 653a  _needed..- name:
│ │ │ -001dbfd0: 2027 4164 6420 6e6f 6465 7620 4f70 7469   'Add nodev Opti
│ │ │ -001dbfe0: 6f6e 2074 6f20 2f76 6172 3a20 4966 202f  on to /var: If /
│ │ │ -001dbff0: 7661 7220 6e6f 7420 6d6f 756e 7465 642c  var not mounted,
│ │ │ -001dc000: 2063 7261 6674 206d 6f75 6e74 5f69 6e66   craft mount_inf
│ │ │ -001dc010: 6f20 6d61 6e75 616c 6c79 270a 2020 7365  o manually'.  se
│ │ │ -001dc020: 745f 6661 6374 3a0a 2020 2020 6d6f 756e  t_fact:.    moun
│ │ │ -001dc030: 745f 696e 666f 3a20 277b 7b20 6d6f 756e  t_info: '{{ moun
│ │ │ -001dc040: 745f 696e 666f 7c64 6566 6175 6c74 287b  t_info|default({
│ │ │ -001dc050: 7d29 7c63 6f6d 6269 6e65 287b 6974 656d  })|combine({item
│ │ │ -001dc060: 2e30 3a20 6974 656d 2e31 7d29 207d 7d27  .0: item.1}) }}'
│ │ │ -001dc070: 0a20 2077 6974 685f 746f 6765 7468 6572  .  with_together
│ │ │ -001dc080: 3a0a 2020 2d20 2d20 7461 7267 6574 0a20  :.  - - target. 
│ │ │ -001dc090: 2020 202d 2073 6f75 7263 650a 2020 2020     - source.    
│ │ │ -001dc0a0: 2d20 6673 7479 7065 0a20 2020 202d 206f  - fstype.    - o
│ │ │ -001dc0b0: 7074 696f 6e73 0a20 202d 202d 202f 7661  ptions.  - - /va
│ │ │ -001dc0c0: 720a 2020 2020 2d20 2727 0a20 2020 202d  r.    - ''.    -
│ │ │ -001dc0d0: 2027 270a 2020 2020 2d20 6465 6661 756c   ''.    - defaul
│ │ │ -001dc0e0: 7473 0a20 2077 6865 6e3a 0a20 202d 2028  ts.  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 2262  .packages and "b
│ │ │ -001dc120: 6f6f 7463 2220 696e 2061 6e73 6962 6c65  ootc" in ansible
│ │ │ -001dc130: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ -001dc140: 2020 2020 616e 6420 6e6f 7420 226f 7065      and not "ope
│ │ │ -001dc150: 6e73 6869 6674 2d6b 7562 656c 6574 2220  nshift-kubelet" 
│ │ │ -001dc160: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001dc170: 2e70 6163 6b61 6765 7320 616e 6420 226f  .packages and "o
│ │ │ -001dc180: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ -001dc190: 655f 7072 6f63 5f63 6d64 6c69 6e65 0a20  e_proc_cmdline. 
│ │ │ -001dc1a0: 2020 2029 2061 6e64 206e 6f74 2028 2061     ) and not ( a
│ │ │ -001dc1b0: 6e73 6962 6c65 5f76 6972 7475 616c 697a  nsible_virtualiz
│ │ │ -001dc1c0: 6174 696f 6e5f 7479 7065 2069 6e20 5b22  ation_type in ["
│ │ │ -001dc1d0: 646f 636b 6572 222c 2022 6c78 6322 2c20  docker", "lxc", 
│ │ │ -001dc1e0: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61  "openvz", "podma
│ │ │ -001dc1f0: 6e22 2c0a 2020 2020 2263 6f6e 7461 696e  n",.    "contain
│ │ │ -001dc200: 6572 225d 2029 2029 0a20 202d 2027 222f  er"] ) ).  - '"/
│ │ │ -001dc210: 7661 7222 2069 6e20 616e 7369 626c 655f  var" in ansible_
│ │ │ -001dc220: 6d6f 756e 7473 207c 206d 6170 2861 7474  mounts | map(att
│ │ │ -001dc230: 7269 6275 7465 3d22 6d6f 756e 7422 2920  ribute="mount") 
│ │ │ -001dc240: 7c20 6c69 7374 270a 2020 2d20 2822 2d2d  | list'.  - ("--
│ │ │ -001dc250: 6673 7461 6222 207c 206c 656e 6774 6820  fstab" | length 
│ │ │ -001dc260: 3d3d 2030 290a 2020 2d20 6465 7669 6365  == 0).  - device
│ │ │ -001dc270: 5f6e 616d 652e 7374 646f 7574 2069 7320  _name.stdout is 
│ │ │ -001dc280: 6465 6669 6e65 6420 616e 6420 6465 7669  defined and devi
│ │ │ -001dc290: 6365 5f6e 616d 652e 7374 646f 7574 5f6c  ce_name.stdout_l
│ │ │ -001dc2a0: 696e 6573 2069 7320 6465 6669 6e65 640a  ines is defined.
│ │ │ -001dc2b0: 2020 2d20 2864 6576 6963 655f 6e61 6d65    - (device_name
│ │ │ -001dc2c0: 2e73 7464 6f75 7420 7c20 6c65 6e67 7468  .stdout | length
│ │ │ -001dc2d0: 203d 3d20 3029 0a20 2074 6167 733a 0a20   == 0).  tags:. 
│ │ │ -001dc2e0: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ -001dc2f0: 432d 360a 2020 2d20 4e49 5354 2d38 3030  C-6.  - NIST-800
│ │ │ -001dc300: 2d35 332d 4143 2d36 2831 290a 2020 2d20  -53-AC-6(1).  - 
│ │ │ -001dc310: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ -001dc320: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ -001dc330: 2d35 332d 434d 2d37 2861 290a 2020 2d20  -53-CM-7(a).  - 
│ │ │ -001dc340: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ -001dc350: 2862 290a 2020 2d20 4e49 5354 2d38 3030  (b).  - NIST-800
│ │ │ -001dc360: 2d35 332d 4d50 2d37 0a20 202d 2063 6f6e  -53-MP-7.  - con
│ │ │ -001dc370: 6669 6775 7265 5f73 7472 6174 6567 790a  figure_strategy.
│ │ │ -001dc380: 2020 2d20 6869 6768 5f64 6973 7275 7074    - high_disrupt
│ │ │ -001dc390: 696f 6e0a 2020 2d20 6c6f 775f 636f 6d70  ion.  - low_comp
│ │ │ -001dc3a0: 6c65 7869 7479 0a20 202d 206d 6564 6975  lexity.  - mediu
│ │ │ -001dc3b0: 6d5f 7365 7665 7269 7479 0a20 202d 206d  m_severity.  - m
│ │ │ -001dc3c0: 6f75 6e74 5f6f 7074 696f 6e5f 7661 725f  ount_option_var_
│ │ │ -001dc3d0: 6e6f 6465 760a 2020 2d20 6e6f 5f72 6562  nodev.  - no_reb
│ │ │ -001dc3e0: 6f6f 745f 6e65 6564 6564 0a0a 2d20 6e61  oot_needed..- na
│ │ │ -001dc3f0: 6d65 3a20 2741 6464 206e 6f64 6576 204f  me: 'Add nodev O
│ │ │ -001dc400: 7074 696f 6e20 746f 202f 7661 723a 204d  ption to /var: M
│ │ │ -001dc410: 616b 6520 7375 7265 206e 6f64 6576 206f  ake sure nodev o
│ │ │ -001dc420: 7074 696f 6e20 6973 2070 6172 7420 6f66  ption is part of
│ │ │ -001dc430: 2074 6865 2074 6f20 2f76 6172 206f 7074   the to /var opt
│ │ │ -001dc440: 696f 6e73 270a 2020 7365 745f 6661 6374  ions'.  set_fact
│ │ │ -001dc450: 3a0a 2020 2020 6d6f 756e 745f 696e 666f  :.    mount_info
│ │ │ -001dc460: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ -001dc470: 207c 2063 6f6d 6269 6e65 2820 7b27 276f   | combine( {''o
│ │ │ -001dc480: 7074 696f 6e73 2727 3a27 2727 277e 286d  ptions'':''''~(m
│ │ │ -001dc490: 6f75 6e74 5f69 6e66 6f2e 6f70 7469 6f6e  ount_info.option
│ │ │ -001dc4a0: 7320 7c0a 2020 2020 2020 6465 6661 756c  s |.      defaul
│ │ │ -001dc4b0: 7428 2727 2727 2929 7e28 2727 2c27 2720  t(''''))~('','' 
│ │ │ -001dc4c0: 6966 2028 6d6f 756e 745f 696e 666f 2e6f  if (mount_info.o
│ │ │ -001dc4d0: 7074 696f 6e73 207c 2064 6566 6175 6c74  ptions | default
│ │ │ -001dc4e0: 2827 2727 2729 2920 656c 7365 2027 2727  ('''')) else '''
│ │ │ -001dc4f0: 2729 7e27 276e 6f64 6576 2727 0a20 2020  ')~''nodev''.   
│ │ │ -001dc500: 2020 207d 2920 7d7d 270a 2020 7768 656e     }) }}'.  when
│ │ │ -001dc510: 3a0a 2020 2d20 2820 6e6f 7420 2820 226b  :.  - ( not ( "k
│ │ │ -001dc520: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ -001dc530: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001dc540: 2061 6e64 2022 626f 6f74 6322 2069 6e20   and "bootc" in 
│ │ │ -001dc550: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001dc560: 636b 6167 6573 0a20 2020 2061 6e64 206e  ckages.    and n
│ │ │ -001dc570: 6f74 2022 6f70 656e 7368 6966 742d 6b75  ot "openshift-ku
│ │ │ -001dc580: 6265 6c65 7422 2069 6e20 616e 7369 626c  belet" in ansibl
│ │ │ -001dc590: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001dc5a0: 2061 6e64 2022 6f73 7472 6565 2220 696e   and "ostree" in
│ │ │ -001dc5b0: 2061 6e73 6962 6c65 5f70 726f 635f 636d   ansible_proc_cm
│ │ │ -001dc5c0: 646c 696e 650a 2020 2020 2920 616e 6420  dline.    ) and 
│ │ │ -001dc5d0: 6e6f 7420 2820 616e 7369 626c 655f 7669  not ( ansible_vi
│ │ │ -001dc5e0: 7274 7561 6c69 7a61 7469 6f6e 5f74 7970  rtualization_typ
│ │ │ -001dc5f0: 6520 696e 205b 2264 6f63 6b65 7222 2c20  e in ["docker", 
│ │ │ -001dc600: 226c 7863 222c 2022 6f70 656e 767a 222c  "lxc", "openvz",
│ │ │ -001dc610: 2022 706f 646d 616e 222c 0a20 2020 2022   "podman",.    "
│ │ │ -001dc620: 636f 6e74 6169 6e65 7222 5d20 2920 290a  container"] ) ).
│ │ │ -001dc630: 2020 2d20 2722 2f76 6172 2220 696e 2061    - '"/var" in a
│ │ │ -001dc640: 6e73 6962 6c65 5f6d 6f75 6e74 7320 7c20  nsible_mounts | 
│ │ │ -001dc650: 6d61 7028 6174 7472 6962 7574 653d 226d  map(attribute="m
│ │ │ -001dc660: 6f75 6e74 2229 207c 206c 6973 7427 0a20  ount") | list'. 
│ │ │ -001dc670: 202d 206d 6f75 6e74 5f69 6e66 6f20 6973   - mount_info is
│ │ │ -001dc680: 2064 6566 696e 6564 2061 6e64 2022 6e6f   defined and "no
│ │ │ -001dc690: 6465 7622 206e 6f74 2069 6e20 286d 6f75  dev" not in (mou
│ │ │ -001dc6a0: 6e74 5f69 6e66 6f2e 6f70 7469 6f6e 7320  nt_info.options 
│ │ │ -001dc6b0: 7c20 6465 6661 756c 7428 2727 2929 0a20  | default('')). 
│ │ │ -001dc6c0: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ -001dc6d0: 3830 302d 3533 2d41 432d 360a 2020 2d20  800-53-AC-6.  - 
│ │ │ -001dc6e0: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ -001dc6f0: 2831 290a 2020 2d20 4e49 5354 2d38 3030  (1).  - NIST-800
│ │ │ -001dc700: 2d35 332d 434d 2d36 2861 290a 2020 2d20  -53-CM-6(a).  - 
│ │ │ -001dc710: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ -001dc720: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ -001dc730: 2d35 332d 434d 2d37 2862 290a 2020 2d20  -53-CM-7(b).  - 
│ │ │ -001dc740: 4e49 5354 2d38 3030 2d35 332d 4d50 2d37  NIST-800-53-MP-7
│ │ │ -001dc750: 0a20 202d 2063 6f6e 6669 6775 7265 5f73  .  - configure_s
│ │ │ -001dc760: 7472 6174 6567 790a 2020 2d20 6869 6768  trategy.  - high
│ │ │ -001dc770: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ -001dc780: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ -001dc790: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ -001dc7a0: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074  ty.  - mount_opt
│ │ │ -001dc7b0: 696f 6e5f 7661 725f 6e6f 6465 760a 2020  ion_var_nodev.  
│ │ │ -001dc7c0: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ -001dc7d0: 6564 0a0a 2d20 6e61 6d65 3a20 2741 6464  ed..- name: 'Add
│ │ │ -001dc7e0: 206e 6f64 6576 204f 7074 696f 6e20 746f   nodev Option to
│ │ │ -001dc7f0: 202f 7661 723a 2045 6e73 7572 6520 2f76   /var: Ensure /v
│ │ │ -001dc800: 6172 2069 7320 6d6f 756e 7465 6420 7769  ar is mounted wi
│ │ │ -001dc810: 7468 206e 6f64 6576 206f 7074 696f 6e27  th nodev option'
│ │ │ -001dc820: 0a20 2061 6e73 6962 6c65 2e70 6f73 6978  .  ansible.posix
│ │ │ -001dc830: 2e6d 6f75 6e74 3a0a 2020 2020 7061 7468  .mount:.    path
│ │ │ -001dc840: 3a20 2f76 6172 0a20 2020 2073 7263 3a20  : /var.    src: 
│ │ │ -001dc850: 277b 7b20 6d6f 756e 745f 696e 666f 2e73  '{{ mount_info.s
│ │ │ -001dc860: 6f75 7263 6520 7c20 6465 6661 756c 7428  ource | default(
│ │ │ -001dc870: 2727 2727 2920 7d7d 270a 2020 2020 6f70  '''') }}'.    op
│ │ │ -001dc880: 7473 3a20 277b 7b20 6d6f 756e 745f 696e  ts: '{{ mount_in
│ │ │ -001dc890: 666f 2e6f 7074 696f 6e73 207c 2064 6566  fo.options | def
│ │ │ -001dc8a0: 6175 6c74 2827 2727 2729 207d 7d27 0a20  ault('''') }}'. 
│ │ │ -001dc8b0: 2020 2073 7461 7465 3a20 6d6f 756e 7465     state: mounte
│ │ │ -001dc8c0: 640a 2020 2020 6673 7479 7065 3a20 277b  d.    fstype: '{
│ │ │ -001dc8d0: 7b20 6d6f 756e 745f 696e 666f 2e66 7374  { mount_info.fst
│ │ │ -001dc8e0: 7970 6520 7c20 6465 6661 756c 7428 2727  ype | default(''
│ │ │ -001dc8f0: 2727 2920 7d7d 270a 2020 7265 6769 7374  '') }}'.  regist
│ │ │ -001dc900: 6572 3a20 6d6f 756e 745f 7265 7375 6c74  er: mount_result
│ │ │ -001dc910: 0a20 2066 6169 6c65 645f 7768 656e 3a0a  .  failed_when:.
│ │ │ -001dc920: 2020 2d20 6d6f 756e 745f 7265 7375 6c74    - mount_result
│ │ │ -001dc930: 2069 7320 6661 696c 6564 0a20 202d 2027   is failed.  - '
│ │ │ -001dc940: 2727 7461 7267 6574 2069 7320 6275 7379  ''target is busy
│ │ │ -001dc950: 2727 206e 6f74 2069 6e20 286d 6f75 6e74  '' not in (mount
│ │ │ -001dc960: 5f72 6573 756c 742e 6d73 6720 7c20 6465  _result.msg | de
│ │ │ -001dc970: 6661 756c 7428 2727 2727 2929 270a 2020  fault(''''))'.  
│ │ │ -001dc980: 2d20 2727 2761 6c72 6561 6479 206d 6f75  - '''already mou
│ │ │ -001dc990: 6e74 6564 2727 206e 6f74 2069 6e20 286d  nted'' not in (m
│ │ │ -001dc9a0: 6f75 6e74 5f72 6573 756c 742e 6d73 6720  ount_result.msg 
│ │ │ -001dc9b0: 7c20 6465 6661 756c 7428 2727 2727 2929  | default(''''))
│ │ │ -001dc9c0: 270a 2020 7768 656e 3a0a 2020 2d20 2820  '.  when:.  - ( 
│ │ │ -001dc9d0: 6e6f 7420 2820 226b 6572 6e65 6c22 2069  not ( "kernel" i
│ │ │ -001dc9e0: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -001dc9f0: 7061 636b 6167 6573 2061 6e64 2022 626f  packages and "bo
│ │ │ -001dca00: 6f74 6322 2069 6e20 616e 7369 626c 655f  otc" in ansible_
│ │ │ -001dca10: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ -001dca20: 2020 2061 6e64 206e 6f74 2022 6f70 656e     and not "open
│ │ │ -001dca30: 7368 6966 742d 6b75 6265 6c65 7422 2069  shift-kubelet" i
│ │ │ -001dca40: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -001dca50: 7061 636b 6167 6573 2061 6e64 2022 6f73  packages and "os
│ │ │ -001dca60: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ -001dca70: 5f70 726f 635f 636d 646c 696e 650a 2020  _proc_cmdline.  
│ │ │ -001dca80: 2020 2920 616e 6420 6e6f 7420 2820 616e    ) and not ( an
│ │ │ -001dca90: 7369 626c 655f 7669 7274 7561 6c69 7a61  sible_virtualiza
│ │ │ -001dcaa0: 7469 6f6e 5f74 7970 6520 696e 205b 2264  tion_type in ["d
│ │ │ -001dcab0: 6f63 6b65 7222 2c20 226c 7863 222c 2022  ocker", "lxc", "
│ │ │ -001dcac0: 6f70 656e 767a 222c 2022 706f 646d 616e  openvz", "podman
│ │ │ -001dcad0: 222c 0a20 2020 2022 636f 6e74 6169 6e65  ",.    "containe
│ │ │ -001dcae0: 7222 5d20 2920 290a 2020 2d20 2722 2f76  r"] ) ).  - '"/v
│ │ │ -001dcaf0: 6172 2220 696e 2061 6e73 6962 6c65 5f6d  ar" in ansible_m
│ │ │ -001dcb00: 6f75 6e74 7320 7c20 6d61 7028 6174 7472  ounts | map(attr
│ │ │ -001dcb10: 6962 7574 653d 226d 6f75 6e74 2229 207c  ibute="mount") |
│ │ │ -001dcb20: 206c 6973 7427 0a20 202d 206d 6f75 6e74   list'.  - mount
│ │ │ -001dcb30: 5f69 6e66 6f20 6973 2064 6566 696e 6564  _info is defined
│ │ │ -001dcb40: 0a20 202d 2028 6465 7669 6365 5f6e 616d  .  - (device_nam
│ │ │ -001dcb50: 652e 7374 646f 7574 2069 7320 6465 6669  e.stdout is defi
│ │ │ -001dcb60: 6e65 6420 616e 6420 2864 6576 6963 655f  ned and (device_
│ │ │ -001dcb70: 6e61 6d65 2e73 7464 6f75 7420 7c20 6c65  name.stdout | le
│ │ │ -001dcb80: 6e67 7468 2026 6774 3b20 3029 2920 6f72  ngth > 0)) or
│ │ │ -001dcb90: 2028 222d 2d66 7374 6162 220a 2020 2020   ("--fstab".    
│ │ │ -001dcba0: 7c20 6c65 6e67 7468 203d 3d20 3029 0a20  | length == 0). 
│ │ │ -001dcbb0: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ -001dcbc0: 3830 302d 3533 2d41 432d 360a 2020 2d20  800-53-AC-6.  - 
│ │ │ -001dcbd0: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ -001dcbe0: 2831 290a 2020 2d20 4e49 5354 2d38 3030  (1).  - NIST-800
│ │ │ -001dcbf0: 2d35 332d 434d 2d36 2861 290a 2020 2d20  -53-CM-6(a).  - 
│ │ │ -001dcc00: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ -001dcc10: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ -001dcc20: 2d35 332d 434d 2d37 2862 290a 2020 2d20  -53-CM-7(b).  - 
│ │ │ -001dcc30: 4e49 5354 2d38 3030 2d35 332d 4d50 2d37  NIST-800-53-MP-7
│ │ │ -001dcc40: 0a20 202d 2063 6f6e 6669 6775 7265 5f73  .  - configure_s
│ │ │ -001dcc50: 7472 6174 6567 790a 2020 2d20 6869 6768  trategy.  - high
│ │ │ -001dcc60: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ -001dcc70: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ -001dcc80: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ -001dcc90: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074  ty.  - mount_opt
│ │ │ -001dcca0: 696f 6e5f 7661 725f 6e6f 6465 760a 2020  ion_var_nodev.  
│ │ │ -001dccb0: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ -001dccc0: 6564 0a3c 2f63 6f64 653e 3c2f 7072 653e  ed.
│ │ │ -001dccd0: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation S │ │ │ -001dcd80: 6865 6c6c 2073 6372 6970 7420 e287 b23c hell script ...< │ │ │ -001dcd90: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
│ │ │ -001db640: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -001db670: 696f 6e3a 3c2f 7468 3e3c 7464 3e68 6967 ion:hig │ │ │ -001db680: 683c 2f74 643e 3c2f 7472 3e3c 7472 3e3c h
Strate │ │ │ -001db6c0: 6779 3a3c 2f74 683e 3c74 643e 636f 6e66 gy:conf │ │ │ -001db6d0: 6967 7572 653c 2f74 643e 3c2f 7472 3e3c igure
│ │ │ -001dce30: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Reboot:false
# Remediation
│ │ │ -001dce50: 2069 7320 6170 706c 6963 6162 6c65 206f   is applicable o
│ │ │ -001dce60: 6e6c 7920 696e 2063 6572 7461 696e 2070  nly in certain p
│ │ │ -001dce70: 6c61 7466 6f72 6d73 0a69 6620 2820 2120  latforms.if ( ! 
│ │ │ -001dce80: 2820 7b20 7270 6d20 2d2d 7175 6965 7420  ( { rpm --quiet 
│ │ │ -001dce90: 2d71 206b 6572 6e65 6c20 3b7d 2026 616d  -q kernel ;} &am
│ │ │ -001dcea0: 703b 2661 6d70 3b20 7b20 7270 6d20 2d2d  p;& { rpm --
│ │ │ -001dceb0: 7175 6965 7420 2d71 2062 6f6f 7463 203b  quiet -q bootc ;
│ │ │ -001dcec0: 7d20 2661 6d70 3b26 616d 703b 207b 2021  } && { !
│ │ │ -001dced0: 2072 706d 202d 2d71 7569 6574 202d 7120   rpm --quiet -q 
│ │ │ -001dcee0: 6f70 656e 7368 6966 742d 6b75 6265 6c65  openshift-kubele
│ │ │ -001dcef0: 7420 3b7d 2026 616d 703b 2661 6d70 3b20  t ;} && 
│ │ │ -001dcf00: 285b 202d 6620 2f72 756e 2f6f 7374 7265  ([ -f /run/ostre
│ │ │ -001dcf10: 652d 626f 6f74 6564 205d 207c 7c20 5b20  e-booted ] || [ 
│ │ │ -001dcf20: 2d4c 202f 6f73 7472 6565 205d 2920 2920  -L /ostree ]) ) 
│ │ │ -001dcf30: 2661 6d70 3b26 616d 703b 2021 2028 205b  && ! ( [
│ │ │ -001dcf40: 202d 6620 2f2e 646f 636b 6572 656e 7620   -f /.dockerenv 
│ │ │ -001dcf50: 5d20 7c7c 205b 202d 6620 2f72 756e 2f2e  ] || [ -f /run/.
│ │ │ -001dcf60: 636f 6e74 6169 6e65 7265 6e76 205d 2029  containerenv ] )
│ │ │ -001dcf70: 2029 2026 616d 703b 2661 6d70 3b20 7b20   ) && { 
│ │ │ -001dcf80: 2820 6669 6e64 6d6e 7420 2d2d 6b65 726e  ( findmnt --kern
│ │ │ -001dcf90: 656c 2022 2f76 6172 2220 2667 743b 202f  el "/var" > /
│ │ │ -001dcfa0: 6465 762f 6e75 6c6c 207c 7c20 6669 6e64  dev/null || find
│ │ │ -001dcfb0: 6d6e 7420 2d2d 6673 7461 6220 222f 7661  mnt --fstab "/va
│ │ │ -001dcfc0: 7222 2026 6774 3b20 2f64 6576 2f6e 756c  r" > /dev/nul
│ │ │ -001dcfd0: 6c20 293b 207d 3b20 7468 656e 0a0a 6675  l ); }; then..fu
│ │ │ -001dcfe0: 6e63 7469 6f6e 2070 6572 666f 726d 5f72  nction perform_r
│ │ │ -001dcff0: 656d 6564 6961 7469 6f6e 207b 0a0a 2020  emediation {..  
│ │ │ -001dd000: 2020 0a20 2020 2020 2020 2023 2074 6865    .        # the
│ │ │ -001dd010: 206d 6f75 6e74 2070 6f69 6e74 202f 7661   mount point /va
│ │ │ -001dd020: 7220 6861 7320 746f 2062 6520 6465 6669  r has to be defi
│ │ │ -001dd030: 6e65 6420 696e 202f 6574 632f 6673 7461  ned in /etc/fsta
│ │ │ -001dd040: 620a 2020 2020 2020 2020 2320 6265 666f  b.        # befo
│ │ │ -001dd050: 7265 2074 6869 7320 7265 6d65 6469 6174  re this remediat
│ │ │ -001dd060: 696f 6e20 6361 6e20 6265 2065 7865 6375  ion can be execu
│ │ │ -001dd070: 7465 642e 2049 6e20 6361 7365 2069 7420  ted. In case it 
│ │ │ -001dd080: 6973 206e 6f74 2064 6566 696e 6564 2c20  is not defined, 
│ │ │ -001dd090: 7468 650a 2020 2020 2020 2020 2320 7265  the.        # re
│ │ │ -001dd0a0: 6d65 6469 6174 696f 6e20 6162 6f72 7473  mediation aborts
│ │ │ -001dd0b0: 2061 6e64 206e 6f20 6368 616e 6765 7320   and no changes 
│ │ │ -001dd0c0: 7265 6761 7264 696e 6720 7468 6520 6d6f  regarding the mo
│ │ │ -001dd0d0: 756e 7420 706f 696e 7420 6172 6520 646f  unt point are do
│ │ │ -001dd0e0: 6e65 2e0a 2020 2020 2020 2020 6d6f 756e  ne..        moun
│ │ │ -001dd0f0: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ -001dd100: 6765 7870 3d22 2428 7072 696e 7466 2022  gexp="$(printf "
│ │ │ -001dd110: 5e5b 5b3a 7370 6163 653a 5d5d 2a5b 5e23  ^[[:space:]]*[^#
│ │ │ -001dd120: 5d2e 2a5b 5b3a 7370 6163 653a 5d5d 2573  ].*[[:space:]]%s
│ │ │ -001dd130: 5b5b 3a73 7061 6365 3a5d 5d22 2022 2f76  [[:space:]]" "/v
│ │ │ -001dd140: 6172 2229 220a 0a20 2020 2067 7265 7020  ar")"..    grep 
│ │ │ -001dd150: 2224 6d6f 756e 745f 706f 696e 745f 6d61  "$mount_point_ma
│ │ │ -001dd160: 7463 685f 7265 6765 7870 2220 2d71 202f  tch_regexp" -q /
│ │ │ -001dd170: 6574 632f 6673 7461 6220 5c0a 2020 2020  etc/fstab \.    
│ │ │ -001dd180: 2020 2020 7c7c 207b 2065 6368 6f20 2254      || { echo "T
│ │ │ -001dd190: 6865 206d 6f75 6e74 2070 6f69 6e74 2027  he mount point '
│ │ │ -001dd1a0: 2f76 6172 2720 6973 206e 6f74 2065 7665  /var' is not eve
│ │ │ -001dd1b0: 6e20 696e 202f 6574 632f 6673 7461 622c  n in /etc/fstab,
│ │ │ -001dd1c0: 2073 6f20 7765 2063 616e 2774 2073 6574   so we can't set
│ │ │ -001dd1d0: 2075 7020 6d6f 756e 7420 6f70 7469 6f6e   up mount option
│ │ │ -001dd1e0: 7322 2026 6774 3b26 616d 703b 323b 0a20  s" >&2;. 
│ │ │ -001dd1f0: 2020 2020 2020 2020 2020 2020 2020 2065                 e
│ │ │ -001dd200: 6368 6f20 224e 6f74 2072 656d 6564 6961  cho "Not remedia
│ │ │ -001dd210: 7469 6e67 2c20 6265 6361 7573 6520 7468  ting, because th
│ │ │ -001dd220: 6572 6520 6973 206e 6f20 7265 636f 7264  ere is no record
│ │ │ -001dd230: 206f 6620 2f76 6172 2069 6e20 2f65 7463   of /var in /etc
│ │ │ -001dd240: 2f66 7374 6162 2220 2667 743b 2661 6d70  /fstab" >&
│ │ │ -001dd250: 3b32 3b20 7265 7475 726e 2031 3b20 7d0a  ;2; return 1; }.
│ │ │ -001dd260: 2020 2020 0a0a 0a20 2020 206d 6f75 6e74      ...    mount
│ │ │ -001dd270: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ -001dd280: 6578 703d 2224 2870 7269 6e74 6620 225e  exp="$(printf "^
│ │ │ -001dd290: 5b5b 3a73 7061 6365 3a5d 5d2a 5b5e 235d  [[:space:]]*[^#]
│ │ │ -001dd2a0: 2e2a 5b5b 3a73 7061 6365 3a5d 5d25 735b  .*[[:space:]]%s[
│ │ │ -001dd2b0: 5b3a 7370 6163 653a 5d5d 2220 2f76 6172  [:space:]]" /var
│ │ │ -001dd2c0: 2922 0a0a 2020 2020 2320 4966 2074 6865  )"..    # If the
│ │ │ -001dd2d0: 206d 6f75 6e74 2070 6f69 6e74 2069 7320   mount point is 
│ │ │ -001dd2e0: 6e6f 7420 696e 202f 6574 632f 6673 7461  not in /etc/fsta
│ │ │ -001dd2f0: 622c 2067 6574 2070 7265 7669 6f75 7320  b, get previous 
│ │ │ -001dd300: 6d6f 756e 7420 6f70 7469 6f6e 7320 6672  mount options fr
│ │ │ -001dd310: 6f6d 202f 6574 632f 6d74 6162 0a20 2020  om /etc/mtab.   
│ │ │ -001dd320: 2069 6620 2120 6772 6570 202d 7120 2224   if ! grep -q "$
│ │ │ -001dd330: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ -001dd340: 685f 7265 6765 7870 2220 2f65 7463 2f66  h_regexp" /etc/f
│ │ │ -001dd350: 7374 6162 3b20 7468 656e 0a20 2020 2020  stab; then.     
│ │ │ -001dd360: 2020 2023 2072 756e 7469 6d65 206f 7074     # runtime opt
│ │ │ -001dd370: 7320 7769 7468 6f75 7420 736f 6d65 2061  s without some a
│ │ │ -001dd380: 7574 6f6d 6174 6963 206b 6572 6e65 6c2f  utomatic kernel/
│ │ │ -001dd390: 7573 6572 7370 6163 652d 6164 6465 6420  userspace-added 
│ │ │ -001dd3a0: 6465 6661 756c 7473 0a20 2020 2020 2020  defaults.       
│ │ │ -001dd3b0: 2070 7265 7669 6f75 735f 6d6f 756e 745f   previous_mount_
│ │ │ -001dd3c0: 6f70 7473 3d24 2867 7265 7020 2224 6d6f  opts=$(grep "$mo
│ │ │ -001dd3d0: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ -001dd3e0: 7265 6765 7870 2220 2f65 7463 2f6d 7461  regexp" /etc/mta
│ │ │ -001dd3f0: 6220 7c20 6865 6164 202d 3120 7c20 2061  b | head -1 |  a
│ │ │ -001dd400: 776b 2027 7b70 7269 6e74 2024 347d 2720  wk '{print $4}' 
│ │ │ -001dd410: 5c0a 2020 2020 2020 2020 2020 2020 2020  \.              
│ │ │ -001dd420: 2020 2020 2020 7c20 7365 6420 2d45 2022        | sed -E "
│ │ │ -001dd430: 732f 2872 777c 6465 6661 756c 7473 7c73  s/(rw|defaults|s
│ │ │ -001dd440: 6563 6c61 6265 6c7c 6e6f 6465 7629 282c  eclabel|nodev)(,
│ │ │ -001dd450: 7c24 292f 2f67 3b73 2f2c 242f 2f22 290a  |$)//g;s/,$//").
│ │ │ -001dd460: 2020 2020 2020 2020 5b20 2224 7072 6576          [ "$prev
│ │ │ -001dd470: 696f 7573 5f6d 6f75 6e74 5f6f 7074 7322  ious_mount_opts"
│ │ │ -001dd480: 205d 2026 616d 703b 2661 6d70 3b20 7072   ] && pr
│ │ │ -001dd490: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ -001dd4a0: 732b 3d22 2c22 0a20 2020 2020 2020 2023  s+=",".        #
│ │ │ -001dd4b0: 2049 6e20 6973 6f39 3636 3020 6669 6c65   In iso9660 file
│ │ │ -001dd4c0: 7379 7374 656d 7320 6d74 6162 2063 6f75  systems mtab cou
│ │ │ -001dd4d0: 6c64 2064 6573 6372 6962 6520 6120 2262  ld describe a "b
│ │ │ -001dd4e0: 6c6f 636b 7369 7a65 2220 7661 6c75 652c  locksize" value,
│ │ │ -001dd4f0: 2074 6869 7320 7368 6f75 6c64 2062 6520   this should be 
│ │ │ -001dd500: 7265 666c 6563 7465 6420 696e 0a20 2020  reflected in.   
│ │ │ -001dd510: 2020 2020 2023 2066 7374 6162 2061 7320       # fstab as 
│ │ │ -001dd520: 2262 6c6f 636b 222e 2020 5468 6520 6e65  "block".  The ne
│ │ │ -001dd530: 7874 2076 6172 6961 626c 6520 6973 2074  xt variable is t
│ │ │ -001dd540: 6f20 7361 7469 7366 7920 7368 656c 6c63  o satisfy shellc
│ │ │ -001dd550: 6865 636b 2053 4332 3035 302e 0a20 2020  heck SC2050..   
│ │ │ -001dd560: 2020 2020 2066 735f 7479 7065 3d22 220a       fs_type="".
│ │ │ -001dd570: 2020 2020 2020 2020 6966 205b 2020 2224          if [  "$
│ │ │ -001dd580: 6673 5f74 7970 6522 203d 3d20 2269 736f  fs_type" == "iso
│ │ │ -001dd590: 3936 3630 2220 5d20 3b20 7468 656e 0a20  9660" ] ; then. 
│ │ │ -001dd5a0: 2020 2020 2020 2020 2020 2070 7265 7669             previ
│ │ │ -001dd5b0: 6f75 735f 6d6f 756e 745f 6f70 7473 3d24  ous_mount_opts=$
│ │ │ -001dd5c0: 2873 6564 2027 732f 626c 6f63 6b73 697a  (sed 's/blocksiz
│ │ │ -001dd5d0: 653d 2f62 6c6f 636b 3d2f 2720 266c 743b  e=/block=/' <
│ │ │ -001dd5e0: 266c 743b 266c 743b 2022 2470 7265 7669  << "$previ
│ │ │ -001dd5f0: 6f75 735f 6d6f 756e 745f 6f70 7473 2229  ous_mount_opts")
│ │ │ -001dd600: 0a20 2020 2020 2020 2066 690a 2020 2020  .        fi.    
│ │ │ -001dd610: 2020 2020 6563 686f 2022 202f 7661 7220      echo " /var 
│ │ │ -001dd620: 2064 6566 6175 6c74 732c 247b 7072 6576   defaults,${prev
│ │ │ -001dd630: 696f 7573 5f6d 6f75 6e74 5f6f 7074 737d  ious_mount_opts}
│ │ │ -001dd640: 6e6f 6465 7620 3020 3022 2026 6774 3b26  nodev 0 0" >&
│ │ │ -001dd650: 6774 3b20 2f65 7463 2f66 7374 6162 0a20  gt; /etc/fstab. 
│ │ │ -001dd660: 2020 2023 2049 6620 7468 6520 6d6f 756e     # If the moun
│ │ │ -001dd670: 745f 6f70 7420 6f70 7469 6f6e 2069 7320  t_opt option is 
│ │ │ -001dd680: 6e6f 7420 616c 7265 6164 7920 696e 2074  not already in t
│ │ │ -001dd690: 6865 206d 6f75 6e74 2070 6f69 6e74 2773  he mount point's
│ │ │ -001dd6a0: 202f 6574 632f 6673 7461 6220 656e 7472   /etc/fstab entr
│ │ │ -001dd6b0: 792c 2061 6464 2069 740a 2020 2020 656c  y, add it.    el
│ │ │ -001dd6c0: 6966 2021 2067 7265 7020 2224 6d6f 756e  if ! grep "$moun
│ │ │ -001dd6d0: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ -001dd6e0: 6765 7870 2220 2f65 7463 2f66 7374 6162  gexp" /etc/fstab
│ │ │ -001dd6f0: 207c 2067 7265 7020 2d71 2022 6e6f 6465   | grep -q "node
│ │ │ -001dd700: 7622 3b20 7468 656e 0a20 2020 2020 2020  v"; then.       
│ │ │ -001dd710: 2070 7265 7669 6f75 735f 6d6f 756e 745f   previous_mount_
│ │ │ -001dd720: 6f70 7473 3d24 2867 7265 7020 2224 6d6f  opts=$(grep "$mo
│ │ │ -001dd730: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ -001dd740: 7265 6765 7870 2220 2f65 7463 2f66 7374  regexp" /etc/fst
│ │ │ -001dd750: 6162 207c 2061 776b 2027 7b70 7269 6e74  ab | awk '{print
│ │ │ -001dd760: 2024 347d 2729 0a20 2020 2020 2020 2073   $4}').        s
│ │ │ -001dd770: 6564 202d 6920 2273 7c5c 2824 7b6d 6f75  ed -i "s|\(${mou
│ │ │ -001dd780: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ -001dd790: 6567 6578 707d 2e2a 247b 7072 6576 696f  egexp}.*${previo
│ │ │ -001dd7a0: 7573 5f6d 6f75 6e74 5f6f 7074 737d 5c29  us_mount_opts}\)
│ │ │ -001dd7b0: 7c5c 312c 6e6f 6465 767c 2220 2f65 7463  |\1,nodev|" /etc
│ │ │ -001dd7c0: 2f66 7374 6162 0a20 2020 2066 690a 0a0a  /fstab.    fi...
│ │ │ -001dd7d0: 2020 2020 6966 206d 6b64 6972 202d 7020      if mkdir -p 
│ │ │ -001dd7e0: 222f 7661 7222 3b20 7468 656e 0a20 2020  "/var"; then.   
│ │ │ -001dd7f0: 2020 2020 2069 6620 6d6f 756e 7470 6f69       if mountpoi
│ │ │ -001dd800: 6e74 202d 7120 222f 7661 7222 3b20 7468  nt -q "/var"; th
│ │ │ -001dd810: 656e 0a20 2020 2020 2020 2020 2020 206d  en.            m
│ │ │ -001dd820: 6f75 6e74 202d 6f20 7265 6d6f 756e 7420  ount -o remount 
│ │ │ -001dd830: 2d2d 7461 7267 6574 2022 2f76 6172 220a  --target "/var".
│ │ │ -001dd840: 2020 2020 2020 2020 6669 0a20 2020 2066          fi.    f
│ │ │ -001dd850: 690a 7d0a 0a70 6572 666f 726d 5f72 656d  i.}..perform_rem
│ │ │ -001dd860: 6564 6961 7469 6f6e 0a0a 656c 7365 0a20  ediation..else. 
│ │ │ -001dd870: 2020 2026 6774 3b26 616d 703b 3220 6563     >&2 ec
│ │ │ -001dd880: 686f 2027 5265 6d65 6469 6174 696f 6e20  ho 'Remediation 
│ │ │ -001dd890: 6973 206e 6f74 2061 7070 6c69 6361 626c  is not applicabl
│ │ │ -001dd8a0: 652c 206e 6f74 6869 6e67 2077 6173 2064  e, nothing was d
│ │ │ -001dd8b0: 6f6e 6527 0a66 690a 3c2f 636f 6465 3e3c  one'.fi.<
│ │ │ +001db380: 6469 6174 696f 6e20 416e 7369 626c 6520  diation Ansible 
│ │ │ +001db390: 736e 6970 7065 7420 e287 b23c 2f61 3e3c  snippet ...<
│ │ │ +001db3a0: 6272 3e3c 6469 7620 636c 6173 733d 2270  br>
< │ │ │ +001db490: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
-
│ │ │ +001db4d0: 206e 616d 653a 2047 6174 6865 7220 7468   name: Gather th
│ │ │ +001db4e0: 6520 7061 636b 6167 6520 6661 6374 730a  e package facts.
│ │ │ +001db4f0: 2020 7061 636b 6167 655f 6661 6374 733a    package_facts:
│ │ │ +001db500: 0a20 2020 206d 616e 6167 6572 3a20 6175  .    manager: au
│ │ │ +001db510: 746f 0a20 2074 6167 733a 0a20 202d 204e  to.  tags:.  - N
│ │ │ +001db520: 4953 542d 3830 302d 3533 2d41 432d 360a  IST-800-53-AC-6.
│ │ │ +001db530: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001db540: 4143 2d36 2831 290a 2020 2d20 4e49 5354  AC-6(1).  - NIST
│ │ │ +001db550: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ +001db560: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001db570: 434d 2d37 2861 290a 2020 2d20 4e49 5354  CM-7(a).  - NIST
│ │ │ +001db580: 2d38 3030 2d35 332d 434d 2d37 2862 290a  -800-53-CM-7(b).
│ │ │ +001db590: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001db5a0: 4d50 2d37 0a20 202d 2063 6f6e 6669 6775  MP-7.  - configu
│ │ │ +001db5b0: 7265 5f73 7472 6174 6567 790a 2020 2d20  re_strategy.  - 
│ │ │ +001db5c0: 6869 6768 5f64 6973 7275 7074 696f 6e0a  high_disruption.
│ │ │ +001db5d0: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ +001db5e0: 7479 0a20 202d 206d 6564 6975 6d5f 7365  ty.  - medium_se
│ │ │ +001db5f0: 7665 7269 7479 0a20 202d 206d 6f75 6e74  verity.  - mount
│ │ │ +001db600: 5f6f 7074 696f 6e5f 7661 725f 6e6f 6465  _option_var_node
│ │ │ +001db610: 760a 2020 2d20 6e6f 5f72 6562 6f6f 745f  v.  - no_reboot_
│ │ │ +001db620: 6e65 6564 6564 0a0a 2d20 6e61 6d65 3a20  needed..- name: 
│ │ │ +001db630: 2741 6464 206e 6f64 6576 204f 7074 696f  'Add nodev Optio
│ │ │ +001db640: 6e20 746f 202f 7661 723a 2043 6865 636b  n to /var: Check
│ │ │ +001db650: 2069 6e66 6f72 6d61 7469 6f6e 2061 7373   information ass
│ │ │ +001db660: 6f63 6961 7465 6420 746f 206d 6f75 6e74  ociated to mount
│ │ │ +001db670: 706f 696e 7427 0a20 2061 6e73 6962 6c65  point'.  ansible
│ │ │ +001db680: 2e62 7569 6c74 696e 2e63 6f6d 6d61 6e64  .builtin.command
│ │ │ +001db690: 3a20 6669 6e64 6d6e 7420 2d2d 6673 7461  : findmnt --fsta
│ │ │ +001db6a0: 6220 272f 7661 7227 0a20 2072 6567 6973  b '/var'.  regis
│ │ │ +001db6b0: 7465 723a 2064 6576 6963 655f 6e61 6d65  ter: device_name
│ │ │ +001db6c0: 0a20 2066 6169 6c65 645f 7768 656e 3a20  .  failed_when: 
│ │ │ +001db6d0: 6465 7669 6365 5f6e 616d 652e 7263 2026  device_name.rc &
│ │ │ +001db6e0: 6774 3b20 310a 2020 6368 616e 6765 645f  gt; 1.  changed_
│ │ │ +001db6f0: 7768 656e 3a20 6661 6c73 650a 2020 6368  when: false.  ch
│ │ │ +001db700: 6563 6b5f 6d6f 6465 3a20 6661 6c73 650a  eck_mode: false.
│ │ │ +001db710: 2020 7768 656e 3a0a 2020 2d20 2820 6e6f    when:.  - ( no
│ │ │ +001db720: 7420 2820 226b 6572 6e65 6c22 2069 6e20  t ( "kernel" in 
│ │ │ +001db730: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001db740: 636b 6167 6573 2061 6e64 2022 626f 6f74  ckages and "boot
│ │ │ +001db750: 6322 2069 6e20 616e 7369 626c 655f 6661  c" in ansible_fa
│ │ │ +001db760: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ +001db770: 2061 6e64 206e 6f74 2022 6f70 656e 7368   and not "opensh
│ │ │ +001db780: 6966 742d 6b75 6265 6c65 7422 2069 6e20  ift-kubelet" in 
│ │ │ +001db790: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001db7a0: 636b 6167 6573 2061 6e64 2022 6f73 7472  ckages and "ostr
│ │ │ +001db7b0: 6565 2220 696e 2061 6e73 6962 6c65 5f70  ee" in ansible_p
│ │ │ +001db7c0: 726f 635f 636d 646c 696e 650a 2020 2020  roc_cmdline.    
│ │ │ +001db7d0: 2920 616e 6420 6e6f 7420 2820 616e 7369  ) and not ( ansi
│ │ │ +001db7e0: 626c 655f 7669 7274 7561 6c69 7a61 7469  ble_virtualizati
│ │ │ +001db7f0: 6f6e 5f74 7970 6520 696e 205b 2264 6f63  on_type in ["doc
│ │ │ +001db800: 6b65 7222 2c20 226c 7863 222c 2022 6f70  ker", "lxc", "op
│ │ │ +001db810: 656e 767a 222c 2022 706f 646d 616e 222c  envz", "podman",
│ │ │ +001db820: 0a20 2020 2022 636f 6e74 6169 6e65 7222  .    "container"
│ │ │ +001db830: 5d20 2920 290a 2020 2d20 2722 2f76 6172  ] ) ).  - '"/var
│ │ │ +001db840: 2220 696e 2061 6e73 6962 6c65 5f6d 6f75  " in ansible_mou
│ │ │ +001db850: 6e74 7320 7c20 6d61 7028 6174 7472 6962  nts | map(attrib
│ │ │ +001db860: 7574 653d 226d 6f75 6e74 2229 207c 206c  ute="mount") | l
│ │ │ +001db870: 6973 7427 0a20 2074 6167 733a 0a20 202d  ist'.  tags:.  -
│ │ │ +001db880: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ +001db890: 360a 2020 2d20 4e49 5354 2d38 3030 2d35  6.  - NIST-800-5
│ │ │ +001db8a0: 332d 4143 2d36 2831 290a 2020 2d20 4e49  3-AC-6(1).  - NI
│ │ │ +001db8b0: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ +001db8c0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001db8d0: 332d 434d 2d37 2861 290a 2020 2d20 4e49  3-CM-7(a).  - NI
│ │ │ +001db8e0: 5354 2d38 3030 2d35 332d 434d 2d37 2862  ST-800-53-CM-7(b
│ │ │ +001db8f0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001db900: 332d 4d50 2d37 0a20 202d 2063 6f6e 6669  3-MP-7.  - confi
│ │ │ +001db910: 6775 7265 5f73 7472 6174 6567 790a 2020  gure_strategy.  
│ │ │ +001db920: 2d20 6869 6768 5f64 6973 7275 7074 696f  - high_disruptio
│ │ │ +001db930: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65  n.  - low_comple
│ │ │ +001db940: 7869 7479 0a20 202d 206d 6564 6975 6d5f  xity.  - medium_
│ │ │ +001db950: 7365 7665 7269 7479 0a20 202d 206d 6f75  severity.  - mou
│ │ │ +001db960: 6e74 5f6f 7074 696f 6e5f 7661 725f 6e6f  nt_option_var_no
│ │ │ +001db970: 6465 760a 2020 2d20 6e6f 5f72 6562 6f6f  dev.  - no_reboo
│ │ │ +001db980: 745f 6e65 6564 6564 0a0a 2d20 6e61 6d65  t_needed..- name
│ │ │ +001db990: 3a20 2741 6464 206e 6f64 6576 204f 7074  : 'Add nodev Opt
│ │ │ +001db9a0: 696f 6e20 746f 202f 7661 723a 2043 7265  ion to /var: Cre
│ │ │ +001db9b0: 6174 6520 6d6f 756e 745f 696e 666f 2064  ate mount_info d
│ │ │ +001db9c0: 6963 7469 6f6e 6172 7920 7661 7269 6162  ictionary variab
│ │ │ +001db9d0: 6c65 270a 2020 7365 745f 6661 6374 3a0a  le'.  set_fact:.
│ │ │ +001db9e0: 2020 2020 6d6f 756e 745f 696e 666f 3a20      mount_info: 
│ │ │ +001db9f0: 277b 7b20 6d6f 756e 745f 696e 666f 7c64  '{{ mount_info|d
│ │ │ +001dba00: 6566 6175 6c74 287b 7d29 7c63 6f6d 6269  efault({})|combi
│ │ │ +001dba10: 6e65 287b 6974 656d 2e30 3a20 6974 656d  ne({item.0: item
│ │ │ +001dba20: 2e31 7d29 207d 7d27 0a20 2077 6974 685f  .1}) }}'.  with_
│ │ │ +001dba30: 746f 6765 7468 6572 3a0a 2020 2d20 277b  together:.  - '{
│ │ │ +001dba40: 7b20 6465 7669 6365 5f6e 616d 652e 7374  { device_name.st
│ │ │ +001dba50: 646f 7574 5f6c 696e 6573 5b30 5d2e 7370  dout_lines[0].sp
│ │ │ +001dba60: 6c69 7428 2920 7c20 6d61 7028 2727 6c6f  lit() | map(''lo
│ │ │ +001dba70: 7765 7227 2729 207c 206c 6973 7420 7d7d  wer'') | list }}
│ │ │ +001dba80: 270a 2020 2d20 277b 7b20 6465 7669 6365  '.  - '{{ device
│ │ │ +001dba90: 5f6e 616d 652e 7374 646f 7574 5f6c 696e  _name.stdout_lin
│ │ │ +001dbaa0: 6573 5b31 5d2e 7370 6c69 7428 2920 7c20  es[1].split() | 
│ │ │ +001dbab0: 6c69 7374 207d 7d27 0a20 2077 6865 6e3a  list }}'.  when:
│ │ │ +001dbac0: 0a20 202d 2028 206e 6f74 2028 2022 6b65  .  - ( not ( "ke
│ │ │ +001dbad0: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ +001dbae0: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ +001dbaf0: 616e 6420 2262 6f6f 7463 2220 696e 2061  and "bootc" in a
│ │ │ +001dbb00: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +001dbb10: 6b61 6765 730a 2020 2020 616e 6420 6e6f  kages.    and no
│ │ │ +001dbb20: 7420 226f 7065 6e73 6869 6674 2d6b 7562  t "openshift-kub
│ │ │ +001dbb30: 656c 6574 2220 696e 2061 6e73 6962 6c65  elet" in ansible
│ │ │ +001dbb40: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ +001dbb50: 616e 6420 226f 7374 7265 6522 2069 6e20  and "ostree" in 
│ │ │ +001dbb60: 616e 7369 626c 655f 7072 6f63 5f63 6d64  ansible_proc_cmd
│ │ │ +001dbb70: 6c69 6e65 0a20 2020 2029 2061 6e64 206e  line.    ) and n
│ │ │ +001dbb80: 6f74 2028 2061 6e73 6962 6c65 5f76 6972  ot ( ansible_vir
│ │ │ +001dbb90: 7475 616c 697a 6174 696f 6e5f 7479 7065  tualization_type
│ │ │ +001dbba0: 2069 6e20 5b22 646f 636b 6572 222c 2022   in ["docker", "
│ │ │ +001dbbb0: 6c78 6322 2c20 226f 7065 6e76 7a22 2c20  lxc", "openvz", 
│ │ │ +001dbbc0: 2270 6f64 6d61 6e22 2c0a 2020 2020 2263  "podman",.    "c
│ │ │ +001dbbd0: 6f6e 7461 696e 6572 225d 2029 2029 0a20  ontainer"] ) ). 
│ │ │ +001dbbe0: 202d 2027 222f 7661 7222 2069 6e20 616e   - '"/var" in an
│ │ │ +001dbbf0: 7369 626c 655f 6d6f 756e 7473 207c 206d  sible_mounts | m
│ │ │ +001dbc00: 6170 2861 7474 7269 6275 7465 3d22 6d6f  ap(attribute="mo
│ │ │ +001dbc10: 756e 7422 2920 7c20 6c69 7374 270a 2020  unt") | list'.  
│ │ │ +001dbc20: 2d20 6465 7669 6365 5f6e 616d 652e 7374  - device_name.st
│ │ │ +001dbc30: 646f 7574 2069 7320 6465 6669 6e65 6420  dout is defined 
│ │ │ +001dbc40: 616e 6420 6465 7669 6365 5f6e 616d 652e  and device_name.
│ │ │ +001dbc50: 7374 646f 7574 5f6c 696e 6573 2069 7320  stdout_lines is 
│ │ │ +001dbc60: 6465 6669 6e65 640a 2020 2d20 2864 6576  defined.  - (dev
│ │ │ +001dbc70: 6963 655f 6e61 6d65 2e73 7464 6f75 7420  ice_name.stdout 
│ │ │ +001dbc80: 7c20 6c65 6e67 7468 2026 6774 3b20 3029  | length > 0)
│ │ │ +001dbc90: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ +001dbca0: 542d 3830 302d 3533 2d41 432d 360a 2020  T-800-53-AC-6.  
│ │ │ +001dbcb0: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ +001dbcc0: 2d36 2831 290a 2020 2d20 4e49 5354 2d38  -6(1).  - NIST-8
│ │ │ +001dbcd0: 3030 2d35 332d 434d 2d36 2861 290a 2020  00-53-CM-6(a).  
│ │ │ +001dbce0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +001dbcf0: 2d37 2861 290a 2020 2d20 4e49 5354 2d38  -7(a).  - NIST-8
│ │ │ +001dbd00: 3030 2d35 332d 434d 2d37 2862 290a 2020  00-53-CM-7(b).  
│ │ │ +001dbd10: 2d20 4e49 5354 2d38 3030 2d35 332d 4d50  - NIST-800-53-MP
│ │ │ +001dbd20: 2d37 0a20 202d 2063 6f6e 6669 6775 7265  -7.  - configure
│ │ │ +001dbd30: 5f73 7472 6174 6567 790a 2020 2d20 6869  _strategy.  - hi
│ │ │ +001dbd40: 6768 5f64 6973 7275 7074 696f 6e0a 2020  gh_disruption.  
│ │ │ +001dbd50: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ +001dbd60: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ +001dbd70: 7269 7479 0a20 202d 206d 6f75 6e74 5f6f  rity.  - mount_o
│ │ │ +001dbd80: 7074 696f 6e5f 7661 725f 6e6f 6465 760a  ption_var_nodev.
│ │ │ +001dbd90: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ +001dbda0: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741  eded..- name: 'A
│ │ │ +001dbdb0: 6464 206e 6f64 6576 204f 7074 696f 6e20  dd nodev Option 
│ │ │ +001dbdc0: 746f 202f 7661 723a 2049 6620 2f76 6172  to /var: If /var
│ │ │ +001dbdd0: 206e 6f74 206d 6f75 6e74 6564 2c20 6372   not mounted, cr
│ │ │ +001dbde0: 6166 7420 6d6f 756e 745f 696e 666f 206d  aft mount_info m
│ │ │ +001dbdf0: 616e 7561 6c6c 7927 0a20 2073 6574 5f66  anually'.  set_f
│ │ │ +001dbe00: 6163 743a 0a20 2020 206d 6f75 6e74 5f69  act:.    mount_i
│ │ │ +001dbe10: 6e66 6f3a 2027 7b7b 206d 6f75 6e74 5f69  nfo: '{{ mount_i
│ │ │ +001dbe20: 6e66 6f7c 6465 6661 756c 7428 7b7d 297c  nfo|default({})|
│ │ │ +001dbe30: 636f 6d62 696e 6528 7b69 7465 6d2e 303a  combine({item.0:
│ │ │ +001dbe40: 2069 7465 6d2e 317d 2920 7d7d 270a 2020   item.1}) }}'.  
│ │ │ +001dbe50: 7769 7468 5f74 6f67 6574 6865 723a 0a20  with_together:. 
│ │ │ +001dbe60: 202d 202d 2074 6172 6765 740a 2020 2020   - - target.    
│ │ │ +001dbe70: 2d20 736f 7572 6365 0a20 2020 202d 2066  - source.    - f
│ │ │ +001dbe80: 7374 7970 650a 2020 2020 2d20 6f70 7469  stype.    - opti
│ │ │ +001dbe90: 6f6e 730a 2020 2d20 2d20 2f76 6172 0a20  ons.  - - /var. 
│ │ │ +001dbea0: 2020 202d 2027 270a 2020 2020 2d20 2727     - ''.    - ''
│ │ │ +001dbeb0: 0a20 2020 202d 2064 6566 6175 6c74 730a  .    - defaults.
│ │ │ +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 626f 6f74  ckages and "boot
│ │ │ +001dbf00: 6322 2069 6e20 616e 7369 626c 655f 6661  c" in ansible_fa
│ │ │ +001dbf10: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ +001dbf20: 2061 6e64 206e 6f74 2022 6f70 656e 7368   and not "opensh
│ │ │ +001dbf30: 6966 742d 6b75 6265 6c65 7422 2069 6e20  ift-kubelet" in 
│ │ │ +001dbf40: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001dbf50: 636b 6167 6573 2061 6e64 2022 6f73 7472  ckages and "ostr
│ │ │ +001dbf60: 6565 2220 696e 2061 6e73 6962 6c65 5f70  ee" in ansible_p
│ │ │ +001dbf70: 726f 635f 636d 646c 696e 650a 2020 2020  roc_cmdline.    
│ │ │ +001dbf80: 2920 616e 6420 6e6f 7420 2820 616e 7369  ) and not ( ansi
│ │ │ +001dbf90: 626c 655f 7669 7274 7561 6c69 7a61 7469  ble_virtualizati
│ │ │ +001dbfa0: 6f6e 5f74 7970 6520 696e 205b 2264 6f63  on_type in ["doc
│ │ │ +001dbfb0: 6b65 7222 2c20 226c 7863 222c 2022 6f70  ker", "lxc", "op
│ │ │ +001dbfc0: 656e 767a 222c 2022 706f 646d 616e 222c  envz", "podman",
│ │ │ +001dbfd0: 0a20 2020 2022 636f 6e74 6169 6e65 7222  .    "container"
│ │ │ +001dbfe0: 5d20 2920 290a 2020 2d20 2722 2f76 6172  ] ) ).  - '"/var
│ │ │ +001dbff0: 2220 696e 2061 6e73 6962 6c65 5f6d 6f75  " in ansible_mou
│ │ │ +001dc000: 6e74 7320 7c20 6d61 7028 6174 7472 6962  nts | map(attrib
│ │ │ +001dc010: 7574 653d 226d 6f75 6e74 2229 207c 206c  ute="mount") | l
│ │ │ +001dc020: 6973 7427 0a20 202d 2028 222d 2d66 7374  ist'.  - ("--fst
│ │ │ +001dc030: 6162 2220 7c20 6c65 6e67 7468 203d 3d20  ab" | length == 
│ │ │ +001dc040: 3029 0a20 202d 2064 6576 6963 655f 6e61  0).  - device_na
│ │ │ +001dc050: 6d65 2e73 7464 6f75 7420 6973 2064 6566  me.stdout is def
│ │ │ +001dc060: 696e 6564 2061 6e64 2064 6576 6963 655f  ined and device_
│ │ │ +001dc070: 6e61 6d65 2e73 7464 6f75 745f 6c69 6e65  name.stdout_line
│ │ │ +001dc080: 7320 6973 2064 6566 696e 6564 0a20 202d  s is defined.  -
│ │ │ +001dc090: 2028 6465 7669 6365 5f6e 616d 652e 7374   (device_name.st
│ │ │ +001dc0a0: 646f 7574 207c 206c 656e 6774 6820 3d3d  dout | length ==
│ │ │ +001dc0b0: 2030 290a 2020 7461 6773 3a0a 2020 2d20   0).  tags:.  - 
│ │ │ +001dc0c0: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ +001dc0d0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001dc0e0: 2d41 432d 3628 3129 0a20 202d 204e 4953  -AC-6(1).  - NIS
│ │ │ +001dc0f0: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ +001dc100: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001dc110: 2d43 4d2d 3728 6129 0a20 202d 204e 4953  -CM-7(a).  - NIS
│ │ │ +001dc120: 542d 3830 302d 3533 2d43 4d2d 3728 6229  T-800-53-CM-7(b)
│ │ │ +001dc130: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001dc140: 2d4d 502d 370a 2020 2d20 636f 6e66 6967  -MP-7.  - config
│ │ │ +001dc150: 7572 655f 7374 7261 7465 6779 0a20 202d  ure_strategy.  -
│ │ │ +001dc160: 2068 6967 685f 6469 7372 7570 7469 6f6e   high_disruption
│ │ │ +001dc170: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ +001dc180: 6974 790a 2020 2d20 6d65 6469 756d 5f73  ity.  - medium_s
│ │ │ +001dc190: 6576 6572 6974 790a 2020 2d20 6d6f 756e  everity.  - moun
│ │ │ +001dc1a0: 745f 6f70 7469 6f6e 5f76 6172 5f6e 6f64  t_option_var_nod
│ │ │ +001dc1b0: 6576 0a20 202d 206e 6f5f 7265 626f 6f74  ev.  - no_reboot
│ │ │ +001dc1c0: 5f6e 6565 6465 640a 0a2d 206e 616d 653a  _needed..- name:
│ │ │ +001dc1d0: 2027 4164 6420 6e6f 6465 7620 4f70 7469   'Add nodev Opti
│ │ │ +001dc1e0: 6f6e 2074 6f20 2f76 6172 3a20 4d61 6b65  on to /var: Make
│ │ │ +001dc1f0: 2073 7572 6520 6e6f 6465 7620 6f70 7469   sure nodev opti
│ │ │ +001dc200: 6f6e 2069 7320 7061 7274 206f 6620 7468  on is part of th
│ │ │ +001dc210: 6520 746f 202f 7661 7220 6f70 7469 6f6e  e to /var option
│ │ │ +001dc220: 7327 0a20 2073 6574 5f66 6163 743a 0a20  s'.  set_fact:. 
│ │ │ +001dc230: 2020 206d 6f75 6e74 5f69 6e66 6f3a 2027     mount_info: '
│ │ │ +001dc240: 7b7b 206d 6f75 6e74 5f69 6e66 6f20 7c20  {{ mount_info | 
│ │ │ +001dc250: 636f 6d62 696e 6528 207b 2727 6f70 7469  combine( {''opti
│ │ │ +001dc260: 6f6e 7327 273a 2727 2727 7e28 6d6f 756e  ons'':''''~(moun
│ │ │ +001dc270: 745f 696e 666f 2e6f 7074 696f 6e73 207c  t_info.options |
│ │ │ +001dc280: 0a20 2020 2020 2064 6566 6175 6c74 2827  .      default('
│ │ │ +001dc290: 2727 2729 297e 2827 272c 2727 2069 6620  '''))~('','' if 
│ │ │ +001dc2a0: 286d 6f75 6e74 5f69 6e66 6f2e 6f70 7469  (mount_info.opti
│ │ │ +001dc2b0: 6f6e 7320 7c20 6465 6661 756c 7428 2727  ons | default(''
│ │ │ +001dc2c0: 2727 2929 2065 6c73 6520 2727 2727 297e  '')) else '''')~
│ │ │ +001dc2d0: 2727 6e6f 6465 7627 270a 2020 2020 2020  ''nodev''.      
│ │ │ +001dc2e0: 7d29 207d 7d27 0a20 2077 6865 6e3a 0a20  }) }}'.  when:. 
│ │ │ +001dc2f0: 202d 2028 206e 6f74 2028 2022 6b65 726e   - ( not ( "kern
│ │ │ +001dc300: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ +001dc310: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +001dc320: 6420 2262 6f6f 7463 2220 696e 2061 6e73  d "bootc" in ans
│ │ │ +001dc330: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001dc340: 6765 730a 2020 2020 616e 6420 6e6f 7420  ges.    and not 
│ │ │ +001dc350: 226f 7065 6e73 6869 6674 2d6b 7562 656c  "openshift-kubel
│ │ │ +001dc360: 6574 2220 696e 2061 6e73 6962 6c65 5f66  et" in ansible_f
│ │ │ +001dc370: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +001dc380: 6420 226f 7374 7265 6522 2069 6e20 616e  d "ostree" in an
│ │ │ +001dc390: 7369 626c 655f 7072 6f63 5f63 6d64 6c69  sible_proc_cmdli
│ │ │ +001dc3a0: 6e65 0a20 2020 2029 2061 6e64 206e 6f74  ne.    ) and not
│ │ │ +001dc3b0: 2028 2061 6e73 6962 6c65 5f76 6972 7475   ( ansible_virtu
│ │ │ +001dc3c0: 616c 697a 6174 696f 6e5f 7479 7065 2069  alization_type i
│ │ │ +001dc3d0: 6e20 5b22 646f 636b 6572 222c 2022 6c78  n ["docker", "lx
│ │ │ +001dc3e0: 6322 2c20 226f 7065 6e76 7a22 2c20 2270  c", "openvz", "p
│ │ │ +001dc3f0: 6f64 6d61 6e22 2c0a 2020 2020 2263 6f6e  odman",.    "con
│ │ │ +001dc400: 7461 696e 6572 225d 2029 2029 0a20 202d  tainer"] ) ).  -
│ │ │ +001dc410: 2027 222f 7661 7222 2069 6e20 616e 7369   '"/var" in ansi
│ │ │ +001dc420: 626c 655f 6d6f 756e 7473 207c 206d 6170  ble_mounts | map
│ │ │ +001dc430: 2861 7474 7269 6275 7465 3d22 6d6f 756e  (attribute="moun
│ │ │ +001dc440: 7422 2920 7c20 6c69 7374 270a 2020 2d20  t") | list'.  - 
│ │ │ +001dc450: 6d6f 756e 745f 696e 666f 2069 7320 6465  mount_info is de
│ │ │ +001dc460: 6669 6e65 6420 616e 6420 226e 6f64 6576  fined and "nodev
│ │ │ +001dc470: 2220 6e6f 7420 696e 2028 6d6f 756e 745f  " not in (mount_
│ │ │ +001dc480: 696e 666f 2e6f 7074 696f 6e73 207c 2064  info.options | d
│ │ │ +001dc490: 6566 6175 6c74 2827 2729 290a 2020 7461  efault('')).  ta
│ │ │ +001dc4a0: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030  gs:.  - NIST-800
│ │ │ +001dc4b0: 2d35 332d 4143 2d36 0a20 202d 204e 4953  -53-AC-6.  - NIS
│ │ │ +001dc4c0: 542d 3830 302d 3533 2d41 432d 3628 3129  T-800-53-AC-6(1)
│ │ │ +001dc4d0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001dc4e0: 2d43 4d2d 3628 6129 0a20 202d 204e 4953  -CM-6(a).  - NIS
│ │ │ +001dc4f0: 542d 3830 302d 3533 2d43 4d2d 3728 6129  T-800-53-CM-7(a)
│ │ │ +001dc500: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001dc510: 2d43 4d2d 3728 6229 0a20 202d 204e 4953  -CM-7(b).  - NIS
│ │ │ +001dc520: 542d 3830 302d 3533 2d4d 502d 370a 2020  T-800-53-MP-7.  
│ │ │ +001dc530: 2d20 636f 6e66 6967 7572 655f 7374 7261  - configure_stra
│ │ │ +001dc540: 7465 6779 0a20 202d 2068 6967 685f 6469  tegy.  - high_di
│ │ │ +001dc550: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ +001dc560: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +001dc570: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ +001dc580: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e    - mount_option
│ │ │ +001dc590: 5f76 6172 5f6e 6f64 6576 0a20 202d 206e  _var_nodev.  - n
│ │ │ +001dc5a0: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ +001dc5b0: 0a2d 206e 616d 653a 2027 4164 6420 6e6f  .- name: 'Add no
│ │ │ +001dc5c0: 6465 7620 4f70 7469 6f6e 2074 6f20 2f76  dev Option to /v
│ │ │ +001dc5d0: 6172 3a20 456e 7375 7265 202f 7661 7220  ar: Ensure /var 
│ │ │ +001dc5e0: 6973 206d 6f75 6e74 6564 2077 6974 6820  is mounted with 
│ │ │ +001dc5f0: 6e6f 6465 7620 6f70 7469 6f6e 270a 2020  nodev option'.  
│ │ │ +001dc600: 616e 7369 626c 652e 706f 7369 782e 6d6f  ansible.posix.mo
│ │ │ +001dc610: 756e 743a 0a20 2020 2070 6174 683a 202f  unt:.    path: /
│ │ │ +001dc620: 7661 720a 2020 2020 7372 633a 2027 7b7b  var.    src: '{{
│ │ │ +001dc630: 206d 6f75 6e74 5f69 6e66 6f2e 736f 7572   mount_info.sour
│ │ │ +001dc640: 6365 207c 2064 6566 6175 6c74 2827 2727  ce | default('''
│ │ │ +001dc650: 2729 207d 7d27 0a20 2020 206f 7074 733a  ') }}'.    opts:
│ │ │ +001dc660: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f2e   '{{ mount_info.
│ │ │ +001dc670: 6f70 7469 6f6e 7320 7c20 6465 6661 756c  options | defaul
│ │ │ +001dc680: 7428 2727 2727 2920 7d7d 270a 2020 2020  t('''') }}'.    
│ │ │ +001dc690: 7374 6174 653a 206d 6f75 6e74 6564 0a20  state: mounted. 
│ │ │ +001dc6a0: 2020 2066 7374 7970 653a 2027 7b7b 206d     fstype: '{{ m
│ │ │ +001dc6b0: 6f75 6e74 5f69 6e66 6f2e 6673 7479 7065  ount_info.fstype
│ │ │ +001dc6c0: 207c 2064 6566 6175 6c74 2827 2727 2729   | default('''')
│ │ │ +001dc6d0: 207d 7d27 0a20 2072 6567 6973 7465 723a   }}'.  register:
│ │ │ +001dc6e0: 206d 6f75 6e74 5f72 6573 756c 740a 2020   mount_result.  
│ │ │ +001dc6f0: 6661 696c 6564 5f77 6865 6e3a 0a20 202d  failed_when:.  -
│ │ │ +001dc700: 206d 6f75 6e74 5f72 6573 756c 7420 6973   mount_result is
│ │ │ +001dc710: 2066 6169 6c65 640a 2020 2d20 2727 2774   failed.  - '''t
│ │ │ +001dc720: 6172 6765 7420 6973 2062 7573 7927 2720  arget is busy'' 
│ │ │ +001dc730: 6e6f 7420 696e 2028 6d6f 756e 745f 7265  not in (mount_re
│ │ │ +001dc740: 7375 6c74 2e6d 7367 207c 2064 6566 6175  sult.msg | defau
│ │ │ +001dc750: 6c74 2827 2727 2729 2927 0a20 202d 2027  lt(''''))'.  - '
│ │ │ +001dc760: 2727 616c 7265 6164 7920 6d6f 756e 7465  ''already mounte
│ │ │ +001dc770: 6427 2720 6e6f 7420 696e 2028 6d6f 756e  d'' not in (moun
│ │ │ +001dc780: 745f 7265 7375 6c74 2e6d 7367 207c 2064  t_result.msg | d
│ │ │ +001dc790: 6566 6175 6c74 2827 2727 2729 2927 0a20  efault(''''))'. 
│ │ │ +001dc7a0: 2077 6865 6e3a 0a20 202d 2028 206e 6f74   when:.  - ( not
│ │ │ +001dc7b0: 2028 2022 6b65 726e 656c 2220 696e 2061   ( "kernel" in a
│ │ │ +001dc7c0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +001dc7d0: 6b61 6765 7320 616e 6420 2262 6f6f 7463  kages and "bootc
│ │ │ +001dc7e0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +001dc7f0: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ +001dc800: 616e 6420 6e6f 7420 226f 7065 6e73 6869  and not "openshi
│ │ │ +001dc810: 6674 2d6b 7562 656c 6574 2220 696e 2061  ft-kubelet" in a
│ │ │ +001dc820: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +001dc830: 6b61 6765 7320 616e 6420 226f 7374 7265  kages and "ostre
│ │ │ +001dc840: 6522 2069 6e20 616e 7369 626c 655f 7072  e" in ansible_pr
│ │ │ +001dc850: 6f63 5f63 6d64 6c69 6e65 0a20 2020 2029  oc_cmdline.    )
│ │ │ +001dc860: 2061 6e64 206e 6f74 2028 2061 6e73 6962   and not ( ansib
│ │ │ +001dc870: 6c65 5f76 6972 7475 616c 697a 6174 696f  le_virtualizatio
│ │ │ +001dc880: 6e5f 7479 7065 2069 6e20 5b22 646f 636b  n_type in ["dock
│ │ │ +001dc890: 6572 222c 2022 6c78 6322 2c20 226f 7065  er", "lxc", "ope
│ │ │ +001dc8a0: 6e76 7a22 2c20 2270 6f64 6d61 6e22 2c0a  nvz", "podman",.
│ │ │ +001dc8b0: 2020 2020 2263 6f6e 7461 696e 6572 225d      "container"]
│ │ │ +001dc8c0: 2029 2029 0a20 202d 2027 222f 7661 7222   ) ).  - '"/var"
│ │ │ +001dc8d0: 2069 6e20 616e 7369 626c 655f 6d6f 756e   in ansible_moun
│ │ │ +001dc8e0: 7473 207c 206d 6170 2861 7474 7269 6275  ts | map(attribu
│ │ │ +001dc8f0: 7465 3d22 6d6f 756e 7422 2920 7c20 6c69  te="mount") | li
│ │ │ +001dc900: 7374 270a 2020 2d20 6d6f 756e 745f 696e  st'.  - mount_in
│ │ │ +001dc910: 666f 2069 7320 6465 6669 6e65 640a 2020  fo is defined.  
│ │ │ +001dc920: 2d20 2864 6576 6963 655f 6e61 6d65 2e73  - (device_name.s
│ │ │ +001dc930: 7464 6f75 7420 6973 2064 6566 696e 6564  tdout is defined
│ │ │ +001dc940: 2061 6e64 2028 6465 7669 6365 5f6e 616d   and (device_nam
│ │ │ +001dc950: 652e 7374 646f 7574 207c 206c 656e 6774  e.stdout | lengt
│ │ │ +001dc960: 6820 2667 743b 2030 2929 206f 7220 2822  h > 0)) or ("
│ │ │ +001dc970: 2d2d 6673 7461 6222 0a20 2020 207c 206c  --fstab".    | l
│ │ │ +001dc980: 656e 6774 6820 3d3d 2030 290a 2020 7461  ength == 0).  ta
│ │ │ +001dc990: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030  gs:.  - NIST-800
│ │ │ +001dc9a0: 2d35 332d 4143 2d36 0a20 202d 204e 4953  -53-AC-6.  - NIS
│ │ │ +001dc9b0: 542d 3830 302d 3533 2d41 432d 3628 3129  T-800-53-AC-6(1)
│ │ │ +001dc9c0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001dc9d0: 2d43 4d2d 3628 6129 0a20 202d 204e 4953  -CM-6(a).  - NIS
│ │ │ +001dc9e0: 542d 3830 302d 3533 2d43 4d2d 3728 6129  T-800-53-CM-7(a)
│ │ │ +001dc9f0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001dca00: 2d43 4d2d 3728 6229 0a20 202d 204e 4953  -CM-7(b).  - NIS
│ │ │ +001dca10: 542d 3830 302d 3533 2d4d 502d 370a 2020  T-800-53-MP-7.  
│ │ │ +001dca20: 2d20 636f 6e66 6967 7572 655f 7374 7261  - configure_stra
│ │ │ +001dca30: 7465 6779 0a20 202d 2068 6967 685f 6469  tegy.  - high_di
│ │ │ +001dca40: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ +001dca50: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +001dca60: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ +001dca70: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e    - mount_option
│ │ │ +001dca80: 5f76 6172 5f6e 6f64 6576 0a20 202d 206e  _var_nodev.  - n
│ │ │ +001dca90: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ +001dcaa0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ +001dcb50: 5265 6d65 6469 6174 696f 6e20 5368 656c Remediation Shel │ │ │ +001dcb60: 6c20 7363 7269 7074 20e2 87b2 3c2f 613e l script ... │ │ │ +001dcb70: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
Com │ │ │ +001db420: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ +001db450: 3a3c 2f74 683e 3c74 643e 6869 6768 3c2f :high
│ │ │ +001db470: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +001db480: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +001db4a0: 3c2f 7468 3e3c 7464 3e63 6f6e 6669 6775 configu │ │ │ +001db4b0: 7265 3c2f 7464 3e3c 2f74 723e 3c2f 7461 re

│ │ │ +001dcc20: 2320 5265 6d65 6469 6174 696f 6e20 6973  # Remediation is
│ │ │ +001dcc30: 2061 7070 6c69 6361 626c 6520 6f6e 6c79   applicable only
│ │ │ +001dcc40: 2069 6e20 6365 7274 6169 6e20 706c 6174   in certain plat
│ │ │ +001dcc50: 666f 726d 730a 6966 2028 2021 2028 207b  forms.if ( ! ( {
│ │ │ +001dcc60: 2072 706d 202d 2d71 7569 6574 202d 7120   rpm --quiet -q 
│ │ │ +001dcc70: 6b65 726e 656c 203b 7d20 2661 6d70 3b26  kernel ;} &&
│ │ │ +001dcc80: 616d 703b 207b 2072 706d 202d 2d71 7569  amp; { rpm --qui
│ │ │ +001dcc90: 6574 202d 7120 626f 6f74 6320 3b7d 2026  et -q bootc ;} &
│ │ │ +001dcca0: 616d 703b 2661 6d70 3b20 7b20 2120 7270  amp;& { ! rp
│ │ │ +001dccb0: 6d20 2d2d 7175 6965 7420 2d71 206f 7065  m --quiet -q ope
│ │ │ +001dccc0: 6e73 6869 6674 2d6b 7562 656c 6574 203b  nshift-kubelet ;
│ │ │ +001dccd0: 7d20 2661 6d70 3b26 616d 703b 2028 5b20  } && ([ 
│ │ │ +001dcce0: 2d66 202f 7275 6e2f 6f73 7472 6565 2d62  -f /run/ostree-b
│ │ │ +001dccf0: 6f6f 7465 6420 5d20 7c7c 205b 202d 4c20  ooted ] || [ -L 
│ │ │ +001dcd00: 2f6f 7374 7265 6520 5d29 2029 2026 616d  /ostree ]) ) &am
│ │ │ +001dcd10: 703b 2661 6d70 3b20 2120 2820 5b20 2d66  p;& ! ( [ -f
│ │ │ +001dcd20: 202f 2e64 6f63 6b65 7265 6e76 205d 207c   /.dockerenv ] |
│ │ │ +001dcd30: 7c20 5b20 2d66 202f 7275 6e2f 2e63 6f6e  | [ -f /run/.con
│ │ │ +001dcd40: 7461 696e 6572 656e 7620 5d20 2920 2920  tainerenv ] ) ) 
│ │ │ +001dcd50: 2661 6d70 3b26 616d 703b 207b 2028 2066  && { ( f
│ │ │ +001dcd60: 696e 646d 6e74 202d 2d6b 6572 6e65 6c20  indmnt --kernel 
│ │ │ +001dcd70: 222f 7661 7222 2026 6774 3b20 2f64 6576  "/var" > /dev
│ │ │ +001dcd80: 2f6e 756c 6c20 7c7c 2066 696e 646d 6e74  /null || findmnt
│ │ │ +001dcd90: 202d 2d66 7374 6162 2022 2f76 6172 2220   --fstab "/var" 
│ │ │ +001dcda0: 2667 743b 202f 6465 762f 6e75 6c6c 2029  > /dev/null )
│ │ │ +001dcdb0: 3b20 7d3b 2074 6865 6e0a 0a66 756e 6374  ; }; then..funct
│ │ │ +001dcdc0: 696f 6e20 7065 7266 6f72 6d5f 7265 6d65  ion perform_reme
│ │ │ +001dcdd0: 6469 6174 696f 6e20 7b0a 0a20 2020 200a  diation {..    .
│ │ │ +001dcde0: 2020 2020 2020 2020 2320 7468 6520 6d6f          # the mo
│ │ │ +001dcdf0: 756e 7420 706f 696e 7420 2f76 6172 2068  unt point /var h
│ │ │ +001dce00: 6173 2074 6f20 6265 2064 6566 696e 6564  as to be defined
│ │ │ +001dce10: 2069 6e20 2f65 7463 2f66 7374 6162 0a20   in /etc/fstab. 
│ │ │ +001dce20: 2020 2020 2020 2023 2062 6566 6f72 6520         # before 
│ │ │ +001dce30: 7468 6973 2072 656d 6564 6961 7469 6f6e  this remediation
│ │ │ +001dce40: 2063 616e 2062 6520 6578 6563 7574 6564   can be executed
│ │ │ +001dce50: 2e20 496e 2063 6173 6520 6974 2069 7320  . In case it is 
│ │ │ +001dce60: 6e6f 7420 6465 6669 6e65 642c 2074 6865  not defined, the
│ │ │ +001dce70: 0a20 2020 2020 2020 2023 2072 656d 6564  .        # remed
│ │ │ +001dce80: 6961 7469 6f6e 2061 626f 7274 7320 616e  iation aborts an
│ │ │ +001dce90: 6420 6e6f 2063 6861 6e67 6573 2072 6567  d no changes reg
│ │ │ +001dcea0: 6172 6469 6e67 2074 6865 206d 6f75 6e74  arding the mount
│ │ │ +001dceb0: 2070 6f69 6e74 2061 7265 2064 6f6e 652e   point are done.
│ │ │ +001dcec0: 0a20 2020 2020 2020 206d 6f75 6e74 5f70  .        mount_p
│ │ │ +001dced0: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ +001dcee0: 703d 2224 2870 7269 6e74 6620 225e 5b5b  p="$(printf "^[[
│ │ │ +001dcef0: 3a73 7061 6365 3a5d 5d2a 5b5e 235d 2e2a  :space:]]*[^#].*
│ │ │ +001dcf00: 5b5b 3a73 7061 6365 3a5d 5d25 735b 5b3a  [[:space:]]%s[[:
│ │ │ +001dcf10: 7370 6163 653a 5d5d 2220 222f 7661 7222  space:]]" "/var"
│ │ │ +001dcf20: 2922 0a0a 2020 2020 6772 6570 2022 246d  )"..    grep "$m
│ │ │ +001dcf30: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ +001dcf40: 5f72 6567 6578 7022 202d 7120 2f65 7463  _regexp" -q /etc
│ │ │ +001dcf50: 2f66 7374 6162 205c 0a20 2020 2020 2020  /fstab \.       
│ │ │ +001dcf60: 207c 7c20 7b20 6563 686f 2022 5468 6520   || { echo "The 
│ │ │ +001dcf70: 6d6f 756e 7420 706f 696e 7420 272f 7661  mount point '/va
│ │ │ +001dcf80: 7227 2069 7320 6e6f 7420 6576 656e 2069  r' is not even i
│ │ │ +001dcf90: 6e20 2f65 7463 2f66 7374 6162 2c20 736f  n /etc/fstab, so
│ │ │ +001dcfa0: 2077 6520 6361 6e27 7420 7365 7420 7570   we can't set up
│ │ │ +001dcfb0: 206d 6f75 6e74 206f 7074 696f 6e73 2220   mount options" 
│ │ │ +001dcfc0: 2667 743b 2661 6d70 3b32 3b0a 2020 2020  >&2;.    
│ │ │ +001dcfd0: 2020 2020 2020 2020 2020 2020 6563 686f              echo
│ │ │ +001dcfe0: 2022 4e6f 7420 7265 6d65 6469 6174 696e   "Not remediatin
│ │ │ +001dcff0: 672c 2062 6563 6175 7365 2074 6865 7265  g, because there
│ │ │ +001dd000: 2069 7320 6e6f 2072 6563 6f72 6420 6f66   is no record of
│ │ │ +001dd010: 202f 7661 7220 696e 202f 6574 632f 6673   /var in /etc/fs
│ │ │ +001dd020: 7461 6222 2026 6774 3b26 616d 703b 323b  tab" >&2;
│ │ │ +001dd030: 2072 6574 7572 6e20 313b 207d 0a20 2020   return 1; }.   
│ │ │ +001dd040: 200a 0a0a 2020 2020 6d6f 756e 745f 706f   ...    mount_po
│ │ │ +001dd050: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ +001dd060: 3d22 2428 7072 696e 7466 2022 5e5b 5b3a  ="$(printf "^[[:
│ │ │ +001dd070: 7370 6163 653a 5d5d 2a5b 5e23 5d2e 2a5b  space:]]*[^#].*[
│ │ │ +001dd080: 5b3a 7370 6163 653a 5d5d 2573 5b5b 3a73  [:space:]]%s[[:s
│ │ │ +001dd090: 7061 6365 3a5d 5d22 202f 7661 7229 220a  pace:]]" /var)".
│ │ │ +001dd0a0: 0a20 2020 2023 2049 6620 7468 6520 6d6f  .    # If the mo
│ │ │ +001dd0b0: 756e 7420 706f 696e 7420 6973 206e 6f74  unt point is not
│ │ │ +001dd0c0: 2069 6e20 2f65 7463 2f66 7374 6162 2c20   in /etc/fstab, 
│ │ │ +001dd0d0: 6765 7420 7072 6576 696f 7573 206d 6f75  get previous mou
│ │ │ +001dd0e0: 6e74 206f 7074 696f 6e73 2066 726f 6d20  nt options from 
│ │ │ +001dd0f0: 2f65 7463 2f6d 7461 620a 2020 2020 6966  /etc/mtab.    if
│ │ │ +001dd100: 2021 2067 7265 7020 2d71 2022 246d 6f75   ! grep -q "$mou
│ │ │ +001dd110: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ +001dd120: 6567 6578 7022 202f 6574 632f 6673 7461  egexp" /etc/fsta
│ │ │ +001dd130: 623b 2074 6865 6e0a 2020 2020 2020 2020  b; then.        
│ │ │ +001dd140: 2320 7275 6e74 696d 6520 6f70 7473 2077  # runtime opts w
│ │ │ +001dd150: 6974 686f 7574 2073 6f6d 6520 6175 746f  ithout some auto
│ │ │ +001dd160: 6d61 7469 6320 6b65 726e 656c 2f75 7365  matic kernel/use
│ │ │ +001dd170: 7273 7061 6365 2d61 6464 6564 2064 6566  rspace-added def
│ │ │ +001dd180: 6175 6c74 730a 2020 2020 2020 2020 7072  aults.        pr
│ │ │ +001dd190: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ +001dd1a0: 733d 2428 6772 6570 2022 246d 6f75 6e74  s=$(grep "$mount
│ │ │ +001dd1b0: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ +001dd1c0: 6578 7022 202f 6574 632f 6d74 6162 207c  exp" /etc/mtab |
│ │ │ +001dd1d0: 2068 6561 6420 2d31 207c 2020 6177 6b20   head -1 |  awk 
│ │ │ +001dd1e0: 277b 7072 696e 7420 2434 7d27 205c 0a20  '{print $4}' \. 
│ │ │ +001dd1f0: 2020 2020 2020 2020 2020 2020 2020 2020                  
│ │ │ +001dd200: 2020 207c 2073 6564 202d 4520 2273 2f28     | sed -E "s/(
│ │ │ +001dd210: 7277 7c64 6566 6175 6c74 737c 7365 636c  rw|defaults|secl
│ │ │ +001dd220: 6162 656c 7c6e 6f64 6576 2928 2c7c 2429  abel|nodev)(,|$)
│ │ │ +001dd230: 2f2f 673b 732f 2c24 2f2f 2229 0a20 2020  //g;s/,$//").   
│ │ │ +001dd240: 2020 2020 205b 2022 2470 7265 7669 6f75       [ "$previou
│ │ │ +001dd250: 735f 6d6f 756e 745f 6f70 7473 2220 5d20  s_mount_opts" ] 
│ │ │ +001dd260: 2661 6d70 3b26 616d 703b 2070 7265 7669  && previ
│ │ │ +001dd270: 6f75 735f 6d6f 756e 745f 6f70 7473 2b3d  ous_mount_opts+=
│ │ │ +001dd280: 222c 220a 2020 2020 2020 2020 2320 496e  ",".        # In
│ │ │ +001dd290: 2069 736f 3936 3630 2066 696c 6573 7973   iso9660 filesys
│ │ │ +001dd2a0: 7465 6d73 206d 7461 6220 636f 756c 6420  tems mtab could 
│ │ │ +001dd2b0: 6465 7363 7269 6265 2061 2022 626c 6f63  describe a "bloc
│ │ │ +001dd2c0: 6b73 697a 6522 2076 616c 7565 2c20 7468  ksize" value, th
│ │ │ +001dd2d0: 6973 2073 686f 756c 6420 6265 2072 6566  is should be ref
│ │ │ +001dd2e0: 6c65 6374 6564 2069 6e0a 2020 2020 2020  lected in.      
│ │ │ +001dd2f0: 2020 2320 6673 7461 6220 6173 2022 626c    # fstab as "bl
│ │ │ +001dd300: 6f63 6b22 2e20 2054 6865 206e 6578 7420  ock".  The next 
│ │ │ +001dd310: 7661 7269 6162 6c65 2069 7320 746f 2073  variable is to s
│ │ │ +001dd320: 6174 6973 6679 2073 6865 6c6c 6368 6563  atisfy shellchec
│ │ │ +001dd330: 6b20 5343 3230 3530 2e0a 2020 2020 2020  k SC2050..      
│ │ │ +001dd340: 2020 6673 5f74 7970 653d 2222 0a20 2020    fs_type="".   
│ │ │ +001dd350: 2020 2020 2069 6620 5b20 2022 2466 735f       if [  "$fs_
│ │ │ +001dd360: 7479 7065 2220 3d3d 2022 6973 6f39 3636  type" == "iso966
│ │ │ +001dd370: 3022 205d 203b 2074 6865 6e0a 2020 2020  0" ] ; then.    
│ │ │ +001dd380: 2020 2020 2020 2020 7072 6576 696f 7573          previous
│ │ │ +001dd390: 5f6d 6f75 6e74 5f6f 7074 733d 2428 7365  _mount_opts=$(se
│ │ │ +001dd3a0: 6420 2773 2f62 6c6f 636b 7369 7a65 3d2f  d 's/blocksize=/
│ │ │ +001dd3b0: 626c 6f63 6b3d 2f27 2026 6c74 3b26 6c74  block=/' <<
│ │ │ +001dd3c0: 3b26 6c74 3b20 2224 7072 6576 696f 7573  ;< "$previous
│ │ │ +001dd3d0: 5f6d 6f75 6e74 5f6f 7074 7322 290a 2020  _mount_opts").  
│ │ │ +001dd3e0: 2020 2020 2020 6669 0a20 2020 2020 2020        fi.       
│ │ │ +001dd3f0: 2065 6368 6f20 2220 2f76 6172 2020 6465   echo " /var  de
│ │ │ +001dd400: 6661 756c 7473 2c24 7b70 7265 7669 6f75  faults,${previou
│ │ │ +001dd410: 735f 6d6f 756e 745f 6f70 7473 7d6e 6f64  s_mount_opts}nod
│ │ │ +001dd420: 6576 2030 2030 2220 2667 743b 2667 743b  ev 0 0" >>
│ │ │ +001dd430: 202f 6574 632f 6673 7461 620a 2020 2020   /etc/fstab.    
│ │ │ +001dd440: 2320 4966 2074 6865 206d 6f75 6e74 5f6f  # If the mount_o
│ │ │ +001dd450: 7074 206f 7074 696f 6e20 6973 206e 6f74  pt option is not
│ │ │ +001dd460: 2061 6c72 6561 6479 2069 6e20 7468 6520   already in the 
│ │ │ +001dd470: 6d6f 756e 7420 706f 696e 7427 7320 2f65  mount point's /e
│ │ │ +001dd480: 7463 2f66 7374 6162 2065 6e74 7279 2c20  tc/fstab entry, 
│ │ │ +001dd490: 6164 6420 6974 0a20 2020 2065 6c69 6620  add it.    elif 
│ │ │ +001dd4a0: 2120 6772 6570 2022 246d 6f75 6e74 5f70  ! grep "$mount_p
│ │ │ +001dd4b0: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ +001dd4c0: 7022 202f 6574 632f 6673 7461 6220 7c20  p" /etc/fstab | 
│ │ │ +001dd4d0: 6772 6570 202d 7120 226e 6f64 6576 223b  grep -q "nodev";
│ │ │ +001dd4e0: 2074 6865 6e0a 2020 2020 2020 2020 7072   then.        pr
│ │ │ +001dd4f0: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ +001dd500: 733d 2428 6772 6570 2022 246d 6f75 6e74  s=$(grep "$mount
│ │ │ +001dd510: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ +001dd520: 6578 7022 202f 6574 632f 6673 7461 6220  exp" /etc/fstab 
│ │ │ +001dd530: 7c20 6177 6b20 277b 7072 696e 7420 2434  | awk '{print $4
│ │ │ +001dd540: 7d27 290a 2020 2020 2020 2020 7365 6420  }').        sed 
│ │ │ +001dd550: 2d69 2022 737c 5c28 247b 6d6f 756e 745f  -i "s|\(${mount_
│ │ │ +001dd560: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ +001dd570: 7870 7d2e 2a24 7b70 7265 7669 6f75 735f  xp}.*${previous_
│ │ │ +001dd580: 6d6f 756e 745f 6f70 7473 7d5c 297c 5c31  mount_opts}\)|\1
│ │ │ +001dd590: 2c6e 6f64 6576 7c22 202f 6574 632f 6673  ,nodev|" /etc/fs
│ │ │ +001dd5a0: 7461 620a 2020 2020 6669 0a0a 0a20 2020  tab.    fi...   
│ │ │ +001dd5b0: 2069 6620 6d6b 6469 7220 2d70 2022 2f76   if mkdir -p "/v
│ │ │ +001dd5c0: 6172 223b 2074 6865 6e0a 2020 2020 2020  ar"; then.      
│ │ │ +001dd5d0: 2020 6966 206d 6f75 6e74 706f 696e 7420    if mountpoint 
│ │ │ +001dd5e0: 2d71 2022 2f76 6172 223b 2074 6865 6e0a  -q "/var"; then.
│ │ │ +001dd5f0: 2020 2020 2020 2020 2020 2020 6d6f 756e              moun
│ │ │ +001dd600: 7420 2d6f 2072 656d 6f75 6e74 202d 2d74  t -o remount --t
│ │ │ +001dd610: 6172 6765 7420 222f 7661 7222 0a20 2020  arget "/var".   
│ │ │ +001dd620: 2020 2020 2066 690a 2020 2020 6669 0a7d       fi.    fi.}
│ │ │ +001dd630: 0a0a 7065 7266 6f72 6d5f 7265 6d65 6469  ..perform_remedi
│ │ │ +001dd640: 6174 696f 6e0a 0a65 6c73 650a 2020 2020  ation..else.    
│ │ │ +001dd650: 2667 743b 2661 6d70 3b32 2065 6368 6f20  >&2 echo 
│ │ │ +001dd660: 2752 656d 6564 6961 7469 6f6e 2069 7320  'Remediation is 
│ │ │ +001dd670: 6e6f 7420 6170 706c 6963 6162 6c65 2c20  not applicable, 
│ │ │ +001dd680: 6e6f 7468 696e 6720 7761 7320 646f 6e65  nothing was done
│ │ │ +001dd690: 270a 6669 0a3c 2f63 6f64 653e 3c2f 7072  '.fi.Remediation
│ │ │ +001dd750: 2041 6e61 636f 6e64 6120 736e 6970 7065   Anaconda snippe
│ │ │ +001dd760: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469  t ...
< │ │ │ +001dd7e0: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>
│ │ │ +001dd820: 3c74 643e 6869 6768 3c2f 7464 3e3c 2f74 < │ │ │ +001dd870: 7464 3e65 6e61 626c 653c 2f74 643e 3c2f td>enable
Re │ │ │ +001dcbf0: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +001dcc00: 6c73 653c 2f74 643e 3c2f 7472 3e3c 2f74 lse
Complexit │ │ │ +001dd7f0: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low
│ │ │ +001dd810: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption:high
Reboot │ │ │ +001dd840: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +001dd850: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Strategy:
│ │ │ +001dd890: 3c63 6f64 653e 0a70 6172 7420 2f76 6172  .part /var
│ │ │ +001dd8a0: 202d 2d6d 6f75 6e74 6f70 7469 6f6e 733d   --mountoptions=
│ │ │ +001dd8b0: 226e 6f64 6576 220a 3c2f 636f 6465 3e3c  "nodev".<
│ │ │  001dd8c0: 2f70 7265 3e3c 2f64 6976 3e3c 2f64 6976  /pre>
│ │ │ 001dd8f0: 3c2f 7472 3e3c 7472 2064 6174 612d 7474 Remediatio │ │ │ -001de1c0: 6e20 416e 6163 6f6e 6461 2073 6e69 7070 n Anaconda snipp │ │ │ -001de1d0: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ -001de250: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ -001de260: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -001de270: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:highReboo │ │ │ -001de2b0: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -001de2c0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ -001de2e0: 3c74 643e 656e 6162 6c65 3c2f 7464 3e3c enable< │ │ │ -001de2f0: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
.part /va
│ │ │ -001de310: 7220 2d2d 6d6f 756e 746f 7074 696f 6e73  r --mountoptions
│ │ │ -001de320: 3d22 6e6f 7375 6964 220a 3c2f 636f 6465  ="nosuid".
Remedi │ │ │ -001de3e0: 6174 696f 6e20 416e 7369 626c 6520 736e ation Ansible sn │ │ │ -001de3f0: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ -001de4a0: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c
- n
│ │ │ -001de530: 616d 653a 2047 6174 6865 7220 7468 6520  ame: Gather the 
│ │ │ -001de540: 7061 636b 6167 6520 6661 6374 730a 2020  package facts.  
│ │ │ -001de550: 7061 636b 6167 655f 6661 6374 733a 0a20  package_facts:. 
│ │ │ -001de560: 2020 206d 616e 6167 6572 3a20 6175 746f     manager: auto
│ │ │ -001de570: 0a20 2074 6167 733a 0a20 202d 2063 6f6e  .  tags:.  - con
│ │ │ -001de580: 6669 6775 7265 5f73 7472 6174 6567 790a  figure_strategy.
│ │ │ -001de590: 2020 2d20 6869 6768 5f64 6973 7275 7074    - high_disrupt
│ │ │ -001de5a0: 696f 6e0a 2020 2d20 6c6f 775f 636f 6d70  ion.  - low_comp
│ │ │ -001de5b0: 6c65 7869 7479 0a20 202d 206d 6564 6975  lexity.  - mediu
│ │ │ -001de5c0: 6d5f 7365 7665 7269 7479 0a20 202d 206d  m_severity.  - m
│ │ │ -001de5d0: 6f75 6e74 5f6f 7074 696f 6e5f 7661 725f  ount_option_var_
│ │ │ -001de5e0: 6e6f 7375 6964 0a20 202d 206e 6f5f 7265  nosuid.  - no_re
│ │ │ -001de5f0: 626f 6f74 5f6e 6565 6465 640a 0a2d 206e  boot_needed..- n
│ │ │ -001de600: 616d 653a 2027 4164 6420 6e6f 7375 6964  ame: 'Add nosuid
│ │ │ -001de610: 204f 7074 696f 6e20 746f 202f 7661 723a   Option to /var:
│ │ │ -001de620: 2043 6865 636b 2069 6e66 6f72 6d61 7469   Check informati
│ │ │ -001de630: 6f6e 2061 7373 6f63 6961 7465 6420 746f  on associated to
│ │ │ -001de640: 206d 6f75 6e74 706f 696e 7427 0a20 2061   mountpoint'.  a
│ │ │ -001de650: 6e73 6962 6c65 2e62 7569 6c74 696e 2e63  nsible.builtin.c
│ │ │ -001de660: 6f6d 6d61 6e64 3a20 6669 6e64 6d6e 7420  ommand: findmnt 
│ │ │ -001de670: 2d2d 6673 7461 6220 272f 7661 7227 0a20  --fstab '/var'. 
│ │ │ -001de680: 2072 6567 6973 7465 723a 2064 6576 6963   register: devic
│ │ │ -001de690: 655f 6e61 6d65 0a20 2066 6169 6c65 645f  e_name.  failed_
│ │ │ -001de6a0: 7768 656e 3a20 6465 7669 6365 5f6e 616d  when: device_nam
│ │ │ -001de6b0: 652e 7263 2026 6774 3b20 310a 2020 6368  e.rc > 1.  ch
│ │ │ -001de6c0: 616e 6765 645f 7768 656e 3a20 6661 6c73  anged_when: fals
│ │ │ -001de6d0: 650a 2020 6368 6563 6b5f 6d6f 6465 3a20  e.  check_mode: 
│ │ │ -001de6e0: 6661 6c73 650a 2020 7768 656e 3a0a 2020  false.  when:.  
│ │ │ -001de6f0: 2d20 2820 6e6f 7420 2820 226b 6572 6e65  - ( not ( "kerne
│ │ │ -001de700: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ -001de710: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ -001de720: 2022 626f 6f74 6322 2069 6e20 616e 7369   "bootc" in ansi
│ │ │ -001de730: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001de740: 6573 0a20 2020 2061 6e64 206e 6f74 2022  es.    and not "
│ │ │ -001de750: 6f70 656e 7368 6966 742d 6b75 6265 6c65  openshift-kubele
│ │ │ -001de760: 7422 2069 6e20 616e 7369 626c 655f 6661  t" in ansible_fa
│ │ │ -001de770: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ -001de780: 2022 6f73 7472 6565 2220 696e 2061 6e73   "ostree" in ans
│ │ │ -001de790: 6962 6c65 5f70 726f 635f 636d 646c 696e  ible_proc_cmdlin
│ │ │ -001de7a0: 650a 2020 2020 2920 616e 6420 6e6f 7420  e.    ) and not 
│ │ │ -001de7b0: 2820 616e 7369 626c 655f 7669 7274 7561  ( ansible_virtua
│ │ │ -001de7c0: 6c69 7a61 7469 6f6e 5f74 7970 6520 696e  lization_type in
│ │ │ -001de7d0: 205b 2264 6f63 6b65 7222 2c20 226c 7863   ["docker", "lxc
│ │ │ -001de7e0: 222c 2022 6f70 656e 767a 222c 2022 706f  ", "openvz", "po
│ │ │ -001de7f0: 646d 616e 222c 0a20 2020 2022 636f 6e74  dman",.    "cont
│ │ │ -001de800: 6169 6e65 7222 5d20 2920 290a 2020 2d20  ainer"] ) ).  - 
│ │ │ -001de810: 2722 2f76 6172 2220 696e 2061 6e73 6962  '"/var" in ansib
│ │ │ -001de820: 6c65 5f6d 6f75 6e74 7320 7c20 6d61 7028  le_mounts | map(
│ │ │ -001de830: 6174 7472 6962 7574 653d 226d 6f75 6e74  attribute="mount
│ │ │ -001de840: 2229 207c 206c 6973 7427 0a20 2074 6167  ") | list'.  tag
│ │ │ -001de850: 733a 0a20 202d 2063 6f6e 6669 6775 7265  s:.  - configure
│ │ │ -001de860: 5f73 7472 6174 6567 790a 2020 2d20 6869  _strategy.  - hi
│ │ │ -001de870: 6768 5f64 6973 7275 7074 696f 6e0a 2020  gh_disruption.  
│ │ │ -001de880: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ -001de890: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ -001de8a0: 7269 7479 0a20 202d 206d 6f75 6e74 5f6f  rity.  - mount_o
│ │ │ -001de8b0: 7074 696f 6e5f 7661 725f 6e6f 7375 6964  ption_var_nosuid
│ │ │ -001de8c0: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ -001de8d0: 6565 6465 640a 0a2d 206e 616d 653a 2027  eeded..- name: '
│ │ │ -001de8e0: 4164 6420 6e6f 7375 6964 204f 7074 696f  Add nosuid Optio
│ │ │ -001de8f0: 6e20 746f 202f 7661 723a 2043 7265 6174  n to /var: Creat
│ │ │ -001de900: 6520 6d6f 756e 745f 696e 666f 2064 6963  e mount_info dic
│ │ │ -001de910: 7469 6f6e 6172 7920 7661 7269 6162 6c65  tionary variable
│ │ │ -001de920: 270a 2020 7365 745f 6661 6374 3a0a 2020  '.  set_fact:.  
│ │ │ -001de930: 2020 6d6f 756e 745f 696e 666f 3a20 277b    mount_info: '{
│ │ │ -001de940: 7b20 6d6f 756e 745f 696e 666f 7c64 6566  { mount_info|def
│ │ │ -001de950: 6175 6c74 287b 7d29 7c63 6f6d 6269 6e65  ault({})|combine
│ │ │ -001de960: 287b 6974 656d 2e30 3a20 6974 656d 2e31  ({item.0: item.1
│ │ │ -001de970: 7d29 207d 7d27 0a20 2077 6974 685f 746f  }) }}'.  with_to
│ │ │ -001de980: 6765 7468 6572 3a0a 2020 2d20 277b 7b20  gether:.  - '{{ 
│ │ │ -001de990: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ -001de9a0: 7574 5f6c 696e 6573 5b30 5d2e 7370 6c69  ut_lines[0].spli
│ │ │ -001de9b0: 7428 2920 7c20 6d61 7028 2727 6c6f 7765  t() | map(''lowe
│ │ │ -001de9c0: 7227 2729 207c 206c 6973 7420 7d7d 270a  r'') | list }}'.
│ │ │ -001de9d0: 2020 2d20 277b 7b20 6465 7669 6365 5f6e    - '{{ device_n
│ │ │ -001de9e0: 616d 652e 7374 646f 7574 5f6c 696e 6573  ame.stdout_lines
│ │ │ -001de9f0: 5b31 5d2e 7370 6c69 7428 2920 7c20 6c69  [1].split() | li
│ │ │ -001dea00: 7374 207d 7d27 0a20 2077 6865 6e3a 0a20  st }}'.  when:. 
│ │ │ -001dea10: 202d 2028 206e 6f74 2028 2022 6b65 726e   - ( not ( "kern
│ │ │ -001dea20: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ -001dea30: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ -001dea40: 6420 2262 6f6f 7463 2220 696e 2061 6e73  d "bootc" in ans
│ │ │ -001dea50: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001dea60: 6765 730a 2020 2020 616e 6420 6e6f 7420  ges.    and not 
│ │ │ -001dea70: 226f 7065 6e73 6869 6674 2d6b 7562 656c  "openshift-kubel
│ │ │ -001dea80: 6574 2220 696e 2061 6e73 6962 6c65 5f66  et" in ansible_f
│ │ │ -001dea90: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ -001deaa0: 6420 226f 7374 7265 6522 2069 6e20 616e  d "ostree" in an
│ │ │ -001deab0: 7369 626c 655f 7072 6f63 5f63 6d64 6c69  sible_proc_cmdli
│ │ │ -001deac0: 6e65 0a20 2020 2029 2061 6e64 206e 6f74  ne.    ) and not
│ │ │ -001dead0: 2028 2061 6e73 6962 6c65 5f76 6972 7475   ( ansible_virtu
│ │ │ -001deae0: 616c 697a 6174 696f 6e5f 7479 7065 2069  alization_type i
│ │ │ -001deaf0: 6e20 5b22 646f 636b 6572 222c 2022 6c78  n ["docker", "lx
│ │ │ -001deb00: 6322 2c20 226f 7065 6e76 7a22 2c20 2270  c", "openvz", "p
│ │ │ -001deb10: 6f64 6d61 6e22 2c0a 2020 2020 2263 6f6e  odman",.    "con
│ │ │ -001deb20: 7461 696e 6572 225d 2029 2029 0a20 202d  tainer"] ) ).  -
│ │ │ -001deb30: 2027 222f 7661 7222 2069 6e20 616e 7369   '"/var" in ansi
│ │ │ -001deb40: 626c 655f 6d6f 756e 7473 207c 206d 6170  ble_mounts | map
│ │ │ -001deb50: 2861 7474 7269 6275 7465 3d22 6d6f 756e  (attribute="moun
│ │ │ -001deb60: 7422 2920 7c20 6c69 7374 270a 2020 2d20  t") | list'.  - 
│ │ │ -001deb70: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ -001deb80: 7574 2069 7320 6465 6669 6e65 6420 616e  ut is defined an
│ │ │ -001deb90: 6420 6465 7669 6365 5f6e 616d 652e 7374  d device_name.st
│ │ │ -001deba0: 646f 7574 5f6c 696e 6573 2069 7320 6465  dout_lines is de
│ │ │ -001debb0: 6669 6e65 640a 2020 2d20 2864 6576 6963  fined.  - (devic
│ │ │ -001debc0: 655f 6e61 6d65 2e73 7464 6f75 7420 7c20  e_name.stdout | 
│ │ │ -001debd0: 6c65 6e67 7468 2026 6774 3b20 3029 0a20  length > 0). 
│ │ │ -001debe0: 2074 6167 733a 0a20 202d 2063 6f6e 6669   tags:.  - confi
│ │ │ -001debf0: 6775 7265 5f73 7472 6174 6567 790a 2020  gure_strategy.  
│ │ │ -001dec00: 2d20 6869 6768 5f64 6973 7275 7074 696f  - high_disruptio
│ │ │ -001dec10: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65  n.  - low_comple
│ │ │ -001dec20: 7869 7479 0a20 202d 206d 6564 6975 6d5f  xity.  - medium_
│ │ │ -001dec30: 7365 7665 7269 7479 0a20 202d 206d 6f75  severity.  - mou
│ │ │ -001dec40: 6e74 5f6f 7074 696f 6e5f 7661 725f 6e6f  nt_option_var_no
│ │ │ -001dec50: 7375 6964 0a20 202d 206e 6f5f 7265 626f  suid.  - no_rebo
│ │ │ -001dec60: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d  ot_needed..- nam
│ │ │ -001dec70: 653a 2027 4164 6420 6e6f 7375 6964 204f  e: 'Add nosuid O
│ │ │ -001dec80: 7074 696f 6e20 746f 202f 7661 723a 2049  ption to /var: I
│ │ │ -001dec90: 6620 2f76 6172 206e 6f74 206d 6f75 6e74  f /var not mount
│ │ │ -001deca0: 6564 2c20 6372 6166 7420 6d6f 756e 745f  ed, craft mount_
│ │ │ -001decb0: 696e 666f 206d 616e 7561 6c6c 7927 0a20  info manually'. 
│ │ │ -001decc0: 2073 6574 5f66 6163 743a 0a20 2020 206d   set_fact:.    m
│ │ │ -001decd0: 6f75 6e74 5f69 6e66 6f3a 2027 7b7b 206d  ount_info: '{{ m
│ │ │ -001dece0: 6f75 6e74 5f69 6e66 6f7c 6465 6661 756c  ount_info|defaul
│ │ │ -001decf0: 7428 7b7d 297c 636f 6d62 696e 6528 7b69  t({})|combine({i
│ │ │ -001ded00: 7465 6d2e 303a 2069 7465 6d2e 317d 2920  tem.0: item.1}) 
│ │ │ -001ded10: 7d7d 270a 2020 7769 7468 5f74 6f67 6574  }}'.  with_toget
│ │ │ -001ded20: 6865 723a 0a20 202d 202d 2074 6172 6765  her:.  - - targe
│ │ │ -001ded30: 740a 2020 2020 2d20 736f 7572 6365 0a20  t.    - source. 
│ │ │ -001ded40: 2020 202d 2066 7374 7970 650a 2020 2020     - fstype.    
│ │ │ -001ded50: 2d20 6f70 7469 6f6e 730a 2020 2d20 2d20  - options.  - - 
│ │ │ -001ded60: 2f76 6172 0a20 2020 202d 2027 270a 2020  /var.    - ''.  
│ │ │ -001ded70: 2020 2d20 2727 0a20 2020 202d 2064 6566    - ''.    - def
│ │ │ -001ded80: 6175 6c74 730a 2020 7768 656e 3a0a 2020  aults.  when:.  
│ │ │ -001ded90: 2d20 2820 6e6f 7420 2820 226b 6572 6e65  - ( not ( "kerne
│ │ │ -001deda0: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ -001dedb0: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ -001dedc0: 2022 626f 6f74 6322 2069 6e20 616e 7369   "bootc" in ansi
│ │ │ -001dedd0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001dede0: 6573 0a20 2020 2061 6e64 206e 6f74 2022  es.    and not "
│ │ │ -001dedf0: 6f70 656e 7368 6966 742d 6b75 6265 6c65  openshift-kubele
│ │ │ -001dee00: 7422 2069 6e20 616e 7369 626c 655f 6661  t" in ansible_fa
│ │ │ -001dee10: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ -001dee20: 2022 6f73 7472 6565 2220 696e 2061 6e73   "ostree" in ans
│ │ │ -001dee30: 6962 6c65 5f70 726f 635f 636d 646c 696e  ible_proc_cmdlin
│ │ │ -001dee40: 650a 2020 2020 2920 616e 6420 6e6f 7420  e.    ) and not 
│ │ │ -001dee50: 2820 616e 7369 626c 655f 7669 7274 7561  ( ansible_virtua
│ │ │ -001dee60: 6c69 7a61 7469 6f6e 5f74 7970 6520 696e  lization_type in
│ │ │ -001dee70: 205b 2264 6f63 6b65 7222 2c20 226c 7863   ["docker", "lxc
│ │ │ -001dee80: 222c 2022 6f70 656e 767a 222c 2022 706f  ", "openvz", "po
│ │ │ -001dee90: 646d 616e 222c 0a20 2020 2022 636f 6e74  dman",.    "cont
│ │ │ -001deea0: 6169 6e65 7222 5d20 2920 290a 2020 2d20  ainer"] ) ).  - 
│ │ │ -001deeb0: 2722 2f76 6172 2220 696e 2061 6e73 6962  '"/var" in ansib
│ │ │ -001deec0: 6c65 5f6d 6f75 6e74 7320 7c20 6d61 7028  le_mounts | map(
│ │ │ -001deed0: 6174 7472 6962 7574 653d 226d 6f75 6e74  attribute="mount
│ │ │ -001deee0: 2229 207c 206c 6973 7427 0a20 202d 2028  ") | list'.  - (
│ │ │ -001deef0: 222d 2d66 7374 6162 2220 7c20 6c65 6e67  "--fstab" | leng
│ │ │ -001def00: 7468 203d 3d20 3029 0a20 202d 2064 6576  th == 0).  - dev
│ │ │ -001def10: 6963 655f 6e61 6d65 2e73 7464 6f75 7420  ice_name.stdout 
│ │ │ -001def20: 6973 2064 6566 696e 6564 2061 6e64 2064  is defined and d
│ │ │ -001def30: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ -001def40: 745f 6c69 6e65 7320 6973 2064 6566 696e  t_lines is defin
│ │ │ -001def50: 6564 0a20 202d 2028 6465 7669 6365 5f6e  ed.  - (device_n
│ │ │ -001def60: 616d 652e 7374 646f 7574 207c 206c 656e  ame.stdout | len
│ │ │ -001def70: 6774 6820 3d3d 2030 290a 2020 7461 6773  gth == 0).  tags
│ │ │ -001def80: 3a0a 2020 2d20 636f 6e66 6967 7572 655f  :.  - configure_
│ │ │ -001def90: 7374 7261 7465 6779 0a20 202d 2068 6967  strategy.  - hig
│ │ │ -001defa0: 685f 6469 7372 7570 7469 6f6e 0a20 202d  h_disruption.  -
│ │ │ -001defb0: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ -001defc0: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ -001defd0: 6974 790a 2020 2d20 6d6f 756e 745f 6f70  ity.  - mount_op
│ │ │ -001defe0: 7469 6f6e 5f76 6172 5f6e 6f73 7569 640a  tion_var_nosuid.
│ │ │ -001deff0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ -001df000: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741  eded..- name: 'A
│ │ │ -001df010: 6464 206e 6f73 7569 6420 4f70 7469 6f6e  dd nosuid Option
│ │ │ -001df020: 2074 6f20 2f76 6172 3a20 4d61 6b65 2073   to /var: Make s
│ │ │ -001df030: 7572 6520 6e6f 7375 6964 206f 7074 696f  ure nosuid optio
│ │ │ -001df040: 6e20 6973 2070 6172 7420 6f66 2074 6865  n is part of the
│ │ │ -001df050: 2074 6f20 2f76 6172 0a20 2020 206f 7074   to /var.    opt
│ │ │ -001df060: 696f 6e73 270a 2020 7365 745f 6661 6374  ions'.  set_fact
│ │ │ -001df070: 3a0a 2020 2020 6d6f 756e 745f 696e 666f  :.    mount_info
│ │ │ -001df080: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ -001df090: 207c 2063 6f6d 6269 6e65 2820 7b27 276f   | combine( {''o
│ │ │ -001df0a0: 7074 696f 6e73 2727 3a27 2727 277e 286d  ptions'':''''~(m
│ │ │ -001df0b0: 6f75 6e74 5f69 6e66 6f2e 6f70 7469 6f6e  ount_info.option
│ │ │ -001df0c0: 7320 7c0a 2020 2020 2020 6465 6661 756c  s |.      defaul
│ │ │ -001df0d0: 7428 2727 2727 2929 7e28 2727 2c27 2720  t(''''))~('','' 
│ │ │ -001df0e0: 6966 2028 6d6f 756e 745f 696e 666f 2e6f  if (mount_info.o
│ │ │ -001df0f0: 7074 696f 6e73 207c 2064 6566 6175 6c74  ptions | default
│ │ │ -001df100: 2827 2727 2729 2920 656c 7365 2027 2727  ('''')) else '''
│ │ │ -001df110: 2729 7e27 276e 6f73 7569 6427 270a 2020  ')~''nosuid''.  
│ │ │ -001df120: 2020 2020 7d29 207d 7d27 0a20 2077 6865      }) }}'.  whe
│ │ │ -001df130: 6e3a 0a20 202d 2028 206e 6f74 2028 2022  n:.  - ( not ( "
│ │ │ -001df140: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ -001df150: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -001df160: 7320 616e 6420 2262 6f6f 7463 2220 696e  s and "bootc" in
│ │ │ -001df170: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -001df180: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ -001df190: 6e6f 7420 226f 7065 6e73 6869 6674 2d6b  not "openshift-k
│ │ │ -001df1a0: 7562 656c 6574 2220 696e 2061 6e73 6962  ubelet" in ansib
│ │ │ -001df1b0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -001df1c0: 7320 616e 6420 226f 7374 7265 6522 2069  s and "ostree" i
│ │ │ -001df1d0: 6e20 616e 7369 626c 655f 7072 6f63 5f63  n ansible_proc_c
│ │ │ -001df1e0: 6d64 6c69 6e65 0a20 2020 2029 2061 6e64  mdline.    ) and
│ │ │ -001df1f0: 206e 6f74 2028 2061 6e73 6962 6c65 5f76   not ( ansible_v
│ │ │ -001df200: 6972 7475 616c 697a 6174 696f 6e5f 7479  irtualization_ty
│ │ │ -001df210: 7065 2069 6e20 5b22 646f 636b 6572 222c  pe in ["docker",
│ │ │ -001df220: 2022 6c78 6322 2c20 226f 7065 6e76 7a22   "lxc", "openvz"
│ │ │ -001df230: 2c20 2270 6f64 6d61 6e22 2c0a 2020 2020  , "podman",.    
│ │ │ -001df240: 2263 6f6e 7461 696e 6572 225d 2029 2029  "container"] ) )
│ │ │ -001df250: 0a20 202d 2027 222f 7661 7222 2069 6e20  .  - '"/var" in 
│ │ │ -001df260: 616e 7369 626c 655f 6d6f 756e 7473 207c  ansible_mounts |
│ │ │ -001df270: 206d 6170 2861 7474 7269 6275 7465 3d22   map(attribute="
│ │ │ -001df280: 6d6f 756e 7422 2920 7c20 6c69 7374 270a  mount") | list'.
│ │ │ -001df290: 2020 2d20 6d6f 756e 745f 696e 666f 2069    - mount_info i
│ │ │ -001df2a0: 7320 6465 6669 6e65 6420 616e 6420 226e  s defined and "n
│ │ │ -001df2b0: 6f73 7569 6422 206e 6f74 2069 6e20 286d  osuid" not in (m
│ │ │ -001df2c0: 6f75 6e74 5f69 6e66 6f2e 6f70 7469 6f6e  ount_info.option
│ │ │ -001df2d0: 7320 7c20 6465 6661 756c 7428 2727 2929  s | default(''))
│ │ │ -001df2e0: 0a20 2074 6167 733a 0a20 202d 2063 6f6e  .  tags:.  - con
│ │ │ -001df2f0: 6669 6775 7265 5f73 7472 6174 6567 790a  figure_strategy.
│ │ │ -001df300: 2020 2d20 6869 6768 5f64 6973 7275 7074    - high_disrupt
│ │ │ -001df310: 696f 6e0a 2020 2d20 6c6f 775f 636f 6d70  ion.  - low_comp
│ │ │ -001df320: 6c65 7869 7479 0a20 202d 206d 6564 6975  lexity.  - mediu
│ │ │ -001df330: 6d5f 7365 7665 7269 7479 0a20 202d 206d  m_severity.  - m
│ │ │ -001df340: 6f75 6e74 5f6f 7074 696f 6e5f 7661 725f  ount_option_var_
│ │ │ -001df350: 6e6f 7375 6964 0a20 202d 206e 6f5f 7265  nosuid.  - no_re
│ │ │ -001df360: 626f 6f74 5f6e 6565 6465 640a 0a2d 206e  boot_needed..- n
│ │ │ -001df370: 616d 653a 2027 4164 6420 6e6f 7375 6964  ame: 'Add nosuid
│ │ │ -001df380: 204f 7074 696f 6e20 746f 202f 7661 723a   Option to /var:
│ │ │ -001df390: 2045 6e73 7572 6520 2f76 6172 2069 7320   Ensure /var is 
│ │ │ -001df3a0: 6d6f 756e 7465 6420 7769 7468 206e 6f73  mounted with nos
│ │ │ -001df3b0: 7569 6420 6f70 7469 6f6e 270a 2020 616e  uid option'.  an
│ │ │ -001df3c0: 7369 626c 652e 706f 7369 782e 6d6f 756e  sible.posix.moun
│ │ │ -001df3d0: 743a 0a20 2020 2070 6174 683a 202f 7661  t:.    path: /va
│ │ │ -001df3e0: 720a 2020 2020 7372 633a 2027 7b7b 206d  r.    src: '{{ m
│ │ │ -001df3f0: 6f75 6e74 5f69 6e66 6f2e 736f 7572 6365  ount_info.source
│ │ │ -001df400: 207c 2064 6566 6175 6c74 2827 2727 2729   | default('''')
│ │ │ -001df410: 207d 7d27 0a20 2020 206f 7074 733a 2027   }}'.    opts: '
│ │ │ -001df420: 7b7b 206d 6f75 6e74 5f69 6e66 6f2e 6f70  {{ mount_info.op
│ │ │ -001df430: 7469 6f6e 7320 7c20 6465 6661 756c 7428  tions | default(
│ │ │ -001df440: 2727 2727 2920 7d7d 270a 2020 2020 7374  '''') }}'.    st
│ │ │ -001df450: 6174 653a 206d 6f75 6e74 6564 0a20 2020  ate: mounted.   
│ │ │ -001df460: 2066 7374 7970 653a 2027 7b7b 206d 6f75   fstype: '{{ mou
│ │ │ -001df470: 6e74 5f69 6e66 6f2e 6673 7479 7065 207c  nt_info.fstype |
│ │ │ -001df480: 2064 6566 6175 6c74 2827 2727 2729 207d   default('''') }
│ │ │ -001df490: 7d27 0a20 2072 6567 6973 7465 723a 206d  }'.  register: m
│ │ │ -001df4a0: 6f75 6e74 5f72 6573 756c 740a 2020 6661  ount_result.  fa
│ │ │ -001df4b0: 696c 6564 5f77 6865 6e3a 0a20 202d 206d  iled_when:.  - m
│ │ │ -001df4c0: 6f75 6e74 5f72 6573 756c 7420 6973 2066  ount_result is f
│ │ │ -001df4d0: 6169 6c65 640a 2020 2d20 2727 2774 6172  ailed.  - '''tar
│ │ │ -001df4e0: 6765 7420 6973 2062 7573 7927 2720 6e6f  get is busy'' no
│ │ │ -001df4f0: 7420 696e 2028 6d6f 756e 745f 7265 7375  t in (mount_resu
│ │ │ -001df500: 6c74 2e6d 7367 207c 2064 6566 6175 6c74  lt.msg | default
│ │ │ -001df510: 2827 2727 2729 2927 0a20 202d 2027 2727  (''''))'.  - '''
│ │ │ -001df520: 616c 7265 6164 7920 6d6f 756e 7465 6427  already mounted'
│ │ │ -001df530: 2720 6e6f 7420 696e 2028 6d6f 756e 745f  ' not in (mount_
│ │ │ -001df540: 7265 7375 6c74 2e6d 7367 207c 2064 6566  result.msg | def
│ │ │ -001df550: 6175 6c74 2827 2727 2729 2927 0a20 2077  ault(''''))'.  w
│ │ │ -001df560: 6865 6e3a 0a20 202d 2028 206e 6f74 2028  hen:.  - ( not (
│ │ │ -001df570: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ -001df580: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001df590: 6765 7320 616e 6420 2262 6f6f 7463 2220  ges and "bootc" 
│ │ │ -001df5a0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001df5b0: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ -001df5c0: 6420 6e6f 7420 226f 7065 6e73 6869 6674  d not "openshift
│ │ │ -001df5d0: 2d6b 7562 656c 6574 2220 696e 2061 6e73  -kubelet" in ans
│ │ │ -001df5e0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001df5f0: 6765 7320 616e 6420 226f 7374 7265 6522  ges and "ostree"
│ │ │ -001df600: 2069 6e20 616e 7369 626c 655f 7072 6f63   in ansible_proc
│ │ │ -001df610: 5f63 6d64 6c69 6e65 0a20 2020 2029 2061  _cmdline.    ) a
│ │ │ -001df620: 6e64 206e 6f74 2028 2061 6e73 6962 6c65  nd not ( ansible
│ │ │ -001df630: 5f76 6972 7475 616c 697a 6174 696f 6e5f  _virtualization_
│ │ │ -001df640: 7479 7065 2069 6e20 5b22 646f 636b 6572  type in ["docker
│ │ │ -001df650: 222c 2022 6c78 6322 2c20 226f 7065 6e76  ", "lxc", "openv
│ │ │ -001df660: 7a22 2c20 2270 6f64 6d61 6e22 2c0a 2020  z", "podman",.  
│ │ │ -001df670: 2020 2263 6f6e 7461 696e 6572 225d 2029    "container"] )
│ │ │ -001df680: 2029 0a20 202d 2027 222f 7661 7222 2069   ).  - '"/var" i
│ │ │ -001df690: 6e20 616e 7369 626c 655f 6d6f 756e 7473  n ansible_mounts
│ │ │ -001df6a0: 207c 206d 6170 2861 7474 7269 6275 7465   | map(attribute
│ │ │ -001df6b0: 3d22 6d6f 756e 7422 2920 7c20 6c69 7374  ="mount") | list
│ │ │ -001df6c0: 270a 2020 2d20 6d6f 756e 745f 696e 666f  '.  - mount_info
│ │ │ -001df6d0: 2069 7320 6465 6669 6e65 640a 2020 2d20   is defined.  - 
│ │ │ -001df6e0: 2864 6576 6963 655f 6e61 6d65 2e73 7464  (device_name.std
│ │ │ -001df6f0: 6f75 7420 6973 2064 6566 696e 6564 2061  out is defined a
│ │ │ -001df700: 6e64 2028 6465 7669 6365 5f6e 616d 652e  nd (device_name.
│ │ │ -001df710: 7374 646f 7574 207c 206c 656e 6774 6820  stdout | length 
│ │ │ -001df720: 2667 743b 2030 2929 206f 7220 2822 2d2d  > 0)) or ("--
│ │ │ -001df730: 6673 7461 6222 0a20 2020 207c 206c 656e  fstab".    | len
│ │ │ -001df740: 6774 6820 3d3d 2030 290a 2020 7461 6773  gth == 0).  tags
│ │ │ -001df750: 3a0a 2020 2d20 636f 6e66 6967 7572 655f  :.  - configure_
│ │ │ -001df760: 7374 7261 7465 6779 0a20 202d 2068 6967  strategy.  - hig
│ │ │ -001df770: 685f 6469 7372 7570 7469 6f6e 0a20 202d  h_disruption.  -
│ │ │ -001df780: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ -001df790: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ -001df7a0: 6974 790a 2020 2d20 6d6f 756e 745f 6f70  ity.  - mount_op
│ │ │ -001df7b0: 7469 6f6e 5f76 6172 5f6e 6f73 7569 640a  tion_var_nosuid.
│ │ │ -001df7c0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ -001df7d0: 6564 6564 0a3c 2f63 6f64 653e 3c2f 7072  eded.Remediation
│ │ │ -001df890: 2053 6865 6c6c 2073 6372 6970 7420 e287   Shell script ..
│ │ │ -001df8a0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c  .
Compl │ │ │ -001de480: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ -001de490: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ -001de4b0: 2f74 683e 3c74 643e 6869 6768 3c2f 7464 /th>high
Re │ │ │ -001de4d0: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -001de4e0: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:configure │ │ │ -001de510: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
< │ │ │ -001df920: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -001df930: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
<
│ │ │ -001df950: 636f 6465 3e23 2052 656d 6564 6961 7469  code># Remediati
│ │ │ -001df960: 6f6e 2069 7320 6170 706c 6963 6162 6c65  on is applicable
│ │ │ -001df970: 206f 6e6c 7920 696e 2063 6572 7461 696e   only in certain
│ │ │ -001df980: 2070 6c61 7466 6f72 6d73 0a69 6620 2820   platforms.if ( 
│ │ │ -001df990: 2120 2820 7b20 7270 6d20 2d2d 7175 6965  ! ( { rpm --quie
│ │ │ -001df9a0: 7420 2d71 206b 6572 6e65 6c20 3b7d 2026  t -q kernel ;} &
│ │ │ -001df9b0: 616d 703b 2661 6d70 3b20 7b20 7270 6d20  amp;& { rpm 
│ │ │ -001df9c0: 2d2d 7175 6965 7420 2d71 2062 6f6f 7463  --quiet -q bootc
│ │ │ -001df9d0: 203b 7d20 2661 6d70 3b26 616d 703b 207b   ;} && {
│ │ │ -001df9e0: 2021 2072 706d 202d 2d71 7569 6574 202d   ! rpm --quiet -
│ │ │ -001df9f0: 7120 6f70 656e 7368 6966 742d 6b75 6265  q openshift-kube
│ │ │ -001dfa00: 6c65 7420 3b7d 2026 616d 703b 2661 6d70  let ;} &&
│ │ │ -001dfa10: 3b20 285b 202d 6620 2f72 756e 2f6f 7374  ; ([ -f /run/ost
│ │ │ -001dfa20: 7265 652d 626f 6f74 6564 205d 207c 7c20  ree-booted ] || 
│ │ │ -001dfa30: 5b20 2d4c 202f 6f73 7472 6565 205d 2920  [ -L /ostree ]) 
│ │ │ -001dfa40: 2920 2661 6d70 3b26 616d 703b 2021 2028  ) && ! (
│ │ │ -001dfa50: 205b 202d 6620 2f2e 646f 636b 6572 656e   [ -f /.dockeren
│ │ │ -001dfa60: 7620 5d20 7c7c 205b 202d 6620 2f72 756e  v ] || [ -f /run
│ │ │ -001dfa70: 2f2e 636f 6e74 6169 6e65 7265 6e76 205d  /.containerenv ]
│ │ │ -001dfa80: 2029 2029 2026 616d 703b 2661 6d70 3b20   ) ) && 
│ │ │ -001dfa90: 7b20 2820 6669 6e64 6d6e 7420 2d2d 6b65  { ( findmnt --ke
│ │ │ -001dfaa0: 726e 656c 2022 2f76 6172 2220 2667 743b  rnel "/var" >
│ │ │ -001dfab0: 202f 6465 762f 6e75 6c6c 207c 7c20 6669   /dev/null || fi
│ │ │ -001dfac0: 6e64 6d6e 7420 2d2d 6673 7461 6220 222f  ndmnt --fstab "/
│ │ │ -001dfad0: 7661 7222 2026 6774 3b20 2f64 6576 2f6e  var" > /dev/n
│ │ │ -001dfae0: 756c 6c20 293b 207d 3b20 7468 656e 0a0a  ull ); }; then..
│ │ │ -001dfaf0: 6675 6e63 7469 6f6e 2070 6572 666f 726d  function perform
│ │ │ -001dfb00: 5f72 656d 6564 6961 7469 6f6e 207b 0a0a  _remediation {..
│ │ │ -001dfb10: 2020 2020 0a20 2020 2020 2020 2023 2074      .        # t
│ │ │ -001dfb20: 6865 206d 6f75 6e74 2070 6f69 6e74 202f  he mount point /
│ │ │ -001dfb30: 7661 7220 6861 7320 746f 2062 6520 6465  var has to be de
│ │ │ -001dfb40: 6669 6e65 6420 696e 202f 6574 632f 6673  fined in /etc/fs
│ │ │ -001dfb50: 7461 620a 2020 2020 2020 2020 2320 6265  tab.        # be
│ │ │ -001dfb60: 666f 7265 2074 6869 7320 7265 6d65 6469  fore this remedi
│ │ │ -001dfb70: 6174 696f 6e20 6361 6e20 6265 2065 7865  ation can be exe
│ │ │ -001dfb80: 6375 7465 642e 2049 6e20 6361 7365 2069  cuted. In case i
│ │ │ -001dfb90: 7420 6973 206e 6f74 2064 6566 696e 6564  t is not defined
│ │ │ -001dfba0: 2c20 7468 650a 2020 2020 2020 2020 2320  , the.        # 
│ │ │ -001dfbb0: 7265 6d65 6469 6174 696f 6e20 6162 6f72  remediation abor
│ │ │ -001dfbc0: 7473 2061 6e64 206e 6f20 6368 616e 6765  ts and no change
│ │ │ -001dfbd0: 7320 7265 6761 7264 696e 6720 7468 6520  s regarding the 
│ │ │ -001dfbe0: 6d6f 756e 7420 706f 696e 7420 6172 6520  mount point are 
│ │ │ -001dfbf0: 646f 6e65 2e0a 2020 2020 2020 2020 6d6f  done..        mo
│ │ │ -001dfc00: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ -001dfc10: 7265 6765 7870 3d22 2428 7072 696e 7466  regexp="$(printf
│ │ │ -001dfc20: 2022 5e5b 5b3a 7370 6163 653a 5d5d 2a5b   "^[[:space:]]*[
│ │ │ -001dfc30: 5e23 5d2e 2a5b 5b3a 7370 6163 653a 5d5d  ^#].*[[:space:]]
│ │ │ -001dfc40: 2573 5b5b 3a73 7061 6365 3a5d 5d22 2022  %s[[:space:]]" "
│ │ │ -001dfc50: 2f76 6172 2229 220a 0a20 2020 2067 7265  /var")"..    gre
│ │ │ -001dfc60: 7020 2224 6d6f 756e 745f 706f 696e 745f  p "$mount_point_
│ │ │ -001dfc70: 6d61 7463 685f 7265 6765 7870 2220 2d71  match_regexp" -q
│ │ │ -001dfc80: 202f 6574 632f 6673 7461 6220 5c0a 2020   /etc/fstab \.  
│ │ │ -001dfc90: 2020 2020 2020 7c7c 207b 2065 6368 6f20        || { echo 
│ │ │ -001dfca0: 2254 6865 206d 6f75 6e74 2070 6f69 6e74  "The mount point
│ │ │ -001dfcb0: 2027 2f76 6172 2720 6973 206e 6f74 2065   '/var' is not e
│ │ │ -001dfcc0: 7665 6e20 696e 202f 6574 632f 6673 7461  ven in /etc/fsta
│ │ │ -001dfcd0: 622c 2073 6f20 7765 2063 616e 2774 2073  b, so we can't s
│ │ │ -001dfce0: 6574 2075 7020 6d6f 756e 7420 6f70 7469  et up mount opti
│ │ │ -001dfcf0: 6f6e 7322 2026 6774 3b26 616d 703b 323b  ons" >&2;
│ │ │ -001dfd00: 0a20 2020 2020 2020 2020 2020 2020 2020  .               
│ │ │ -001dfd10: 2065 6368 6f20 224e 6f74 2072 656d 6564   echo "Not remed
│ │ │ -001dfd20: 6961 7469 6e67 2c20 6265 6361 7573 6520  iating, because 
│ │ │ -001dfd30: 7468 6572 6520 6973 206e 6f20 7265 636f  there is no reco
│ │ │ -001dfd40: 7264 206f 6620 2f76 6172 2069 6e20 2f65  rd of /var in /e
│ │ │ -001dfd50: 7463 2f66 7374 6162 2220 2667 743b 2661  tc/fstab" >&a
│ │ │ -001dfd60: 6d70 3b32 3b20 7265 7475 726e 2031 3b20  mp;2; return 1; 
│ │ │ -001dfd70: 7d0a 2020 2020 0a0a 0a20 2020 206d 6f75  }.    ...    mou
│ │ │ -001dfd80: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ -001dfd90: 6567 6578 703d 2224 2870 7269 6e74 6620  egexp="$(printf 
│ │ │ -001dfda0: 225e 5b5b 3a73 7061 6365 3a5d 5d2a 5b5e  "^[[:space:]]*[^
│ │ │ -001dfdb0: 235d 2e2a 5b5b 3a73 7061 6365 3a5d 5d25  #].*[[:space:]]%
│ │ │ -001dfdc0: 735b 5b3a 7370 6163 653a 5d5d 2220 2f76  s[[:space:]]" /v
│ │ │ -001dfdd0: 6172 2922 0a0a 2020 2020 2320 4966 2074  ar)"..    # If t
│ │ │ -001dfde0: 6865 206d 6f75 6e74 2070 6f69 6e74 2069  he mount point i
│ │ │ -001dfdf0: 7320 6e6f 7420 696e 202f 6574 632f 6673  s not in /etc/fs
│ │ │ -001dfe00: 7461 622c 2067 6574 2070 7265 7669 6f75  tab, get previou
│ │ │ -001dfe10: 7320 6d6f 756e 7420 6f70 7469 6f6e 7320  s mount options 
│ │ │ -001dfe20: 6672 6f6d 202f 6574 632f 6d74 6162 0a20  from /etc/mtab. 
│ │ │ -001dfe30: 2020 2069 6620 2120 6772 6570 202d 7120     if ! grep -q 
│ │ │ -001dfe40: 2224 6d6f 756e 745f 706f 696e 745f 6d61  "$mount_point_ma
│ │ │ -001dfe50: 7463 685f 7265 6765 7870 2220 2f65 7463  tch_regexp" /etc
│ │ │ -001dfe60: 2f66 7374 6162 3b20 7468 656e 0a20 2020  /fstab; then.   
│ │ │ -001dfe70: 2020 2020 2023 2072 756e 7469 6d65 206f       # runtime o
│ │ │ -001dfe80: 7074 7320 7769 7468 6f75 7420 736f 6d65  pts without some
│ │ │ -001dfe90: 2061 7574 6f6d 6174 6963 206b 6572 6e65   automatic kerne
│ │ │ -001dfea0: 6c2f 7573 6572 7370 6163 652d 6164 6465  l/userspace-adde
│ │ │ -001dfeb0: 6420 6465 6661 756c 7473 0a20 2020 2020  d defaults.     
│ │ │ -001dfec0: 2020 2070 7265 7669 6f75 735f 6d6f 756e     previous_moun
│ │ │ -001dfed0: 745f 6f70 7473 3d24 2867 7265 7020 2224  t_opts=$(grep "$
│ │ │ -001dfee0: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ -001dfef0: 685f 7265 6765 7870 2220 2f65 7463 2f6d  h_regexp" /etc/m
│ │ │ -001dff00: 7461 6220 7c20 6865 6164 202d 3120 7c20  tab | head -1 | 
│ │ │ -001dff10: 2061 776b 2027 7b70 7269 6e74 2024 347d   awk '{print $4}
│ │ │ -001dff20: 2720 5c0a 2020 2020 2020 2020 2020 2020  ' \.            
│ │ │ -001dff30: 2020 2020 2020 2020 7c20 7365 6420 2d45          | sed -E
│ │ │ -001dff40: 2022 732f 2872 777c 6465 6661 756c 7473   "s/(rw|defaults
│ │ │ -001dff50: 7c73 6563 6c61 6265 6c7c 6e6f 7375 6964  |seclabel|nosuid
│ │ │ -001dff60: 2928 2c7c 2429 2f2f 673b 732f 2c24 2f2f  )(,|$)//g;s/,$//
│ │ │ -001dff70: 2229 0a20 2020 2020 2020 205b 2022 2470  ").        [ "$p
│ │ │ -001dff80: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ -001dff90: 7473 2220 5d20 2661 6d70 3b26 616d 703b  ts" ] &&
│ │ │ -001dffa0: 2070 7265 7669 6f75 735f 6d6f 756e 745f   previous_mount_
│ │ │ -001dffb0: 6f70 7473 2b3d 222c 220a 2020 2020 2020  opts+=",".      
│ │ │ -001dffc0: 2020 2320 496e 2069 736f 3936 3630 2066    # In iso9660 f
│ │ │ -001dffd0: 696c 6573 7973 7465 6d73 206d 7461 6220  ilesystems mtab 
│ │ │ -001dffe0: 636f 756c 6420 6465 7363 7269 6265 2061  could describe a
│ │ │ -001dfff0: 2022 626c 6f63 6b73 697a 6522 2076 616c   "blocksize" val
│ │ │ -001e0000: 7565 2c20 7468 6973 2073 686f 756c 6420  ue, this should 
│ │ │ -001e0010: 6265 2072 6566 6c65 6374 6564 2069 6e0a  be reflected in.
│ │ │ -001e0020: 2020 2020 2020 2020 2320 6673 7461 6220          # fstab 
│ │ │ -001e0030: 6173 2022 626c 6f63 6b22 2e20 2054 6865  as "block".  The
│ │ │ -001e0040: 206e 6578 7420 7661 7269 6162 6c65 2069   next variable i
│ │ │ -001e0050: 7320 746f 2073 6174 6973 6679 2073 6865  s to satisfy she
│ │ │ -001e0060: 6c6c 6368 6563 6b20 5343 3230 3530 2e0a  llcheck SC2050..
│ │ │ -001e0070: 2020 2020 2020 2020 6673 5f74 7970 653d          fs_type=
│ │ │ -001e0080: 2222 0a20 2020 2020 2020 2069 6620 5b20  "".        if [ 
│ │ │ -001e0090: 2022 2466 735f 7479 7065 2220 3d3d 2022   "$fs_type" == "
│ │ │ -001e00a0: 6973 6f39 3636 3022 205d 203b 2074 6865  iso9660" ] ; the
│ │ │ -001e00b0: 6e0a 2020 2020 2020 2020 2020 2020 7072  n.            pr
│ │ │ -001e00c0: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ -001e00d0: 733d 2428 7365 6420 2773 2f62 6c6f 636b  s=$(sed 's/block
│ │ │ -001e00e0: 7369 7a65 3d2f 626c 6f63 6b3d 2f27 2026  size=/block=/' &
│ │ │ -001e00f0: 6c74 3b26 6c74 3b26 6c74 3b20 2224 7072  lt;<< "$pr
│ │ │ -001e0100: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ -001e0110: 7322 290a 2020 2020 2020 2020 6669 0a20  s").        fi. 
│ │ │ -001e0120: 2020 2020 2020 2065 6368 6f20 2220 2f76         echo " /v
│ │ │ -001e0130: 6172 2020 6465 6661 756c 7473 2c24 7b70  ar  defaults,${p
│ │ │ -001e0140: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ -001e0150: 7473 7d6e 6f73 7569 6420 3020 3022 2026  ts}nosuid 0 0" &
│ │ │ -001e0160: 6774 3b26 6774 3b20 2f65 7463 2f66 7374  gt;> /etc/fst
│ │ │ -001e0170: 6162 0a20 2020 2023 2049 6620 7468 6520  ab.    # If the 
│ │ │ -001e0180: 6d6f 756e 745f 6f70 7420 6f70 7469 6f6e  mount_opt option
│ │ │ -001e0190: 2069 7320 6e6f 7420 616c 7265 6164 7920   is not already 
│ │ │ -001e01a0: 696e 2074 6865 206d 6f75 6e74 2070 6f69  in the mount poi
│ │ │ -001e01b0: 6e74 2773 202f 6574 632f 6673 7461 6220  nt's /etc/fstab 
│ │ │ -001e01c0: 656e 7472 792c 2061 6464 2069 740a 2020  entry, add it.  
│ │ │ -001e01d0: 2020 656c 6966 2021 2067 7265 7020 2224    elif ! grep "$
│ │ │ -001e01e0: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ -001e01f0: 685f 7265 6765 7870 2220 2f65 7463 2f66  h_regexp" /etc/f
│ │ │ -001e0200: 7374 6162 207c 2067 7265 7020 2d71 2022  stab | grep -q "
│ │ │ -001e0210: 6e6f 7375 6964 223b 2074 6865 6e0a 2020  nosuid"; then.  
│ │ │ -001e0220: 2020 2020 2020 7072 6576 696f 7573 5f6d        previous_m
│ │ │ -001e0230: 6f75 6e74 5f6f 7074 733d 2428 6772 6570  ount_opts=$(grep
│ │ │ -001e0240: 2022 246d 6f75 6e74 5f70 6f69 6e74 5f6d   "$mount_point_m
│ │ │ -001e0250: 6174 6368 5f72 6567 6578 7022 202f 6574  atch_regexp" /et
│ │ │ -001e0260: 632f 6673 7461 6220 7c20 6177 6b20 277b  c/fstab | awk '{
│ │ │ -001e0270: 7072 696e 7420 2434 7d27 290a 2020 2020  print $4}').    
│ │ │ -001e0280: 2020 2020 7365 6420 2d69 2022 737c 5c28      sed -i "s|\(
│ │ │ -001e0290: 247b 6d6f 756e 745f 706f 696e 745f 6d61  ${mount_point_ma
│ │ │ -001e02a0: 7463 685f 7265 6765 7870 7d2e 2a24 7b70  tch_regexp}.*${p
│ │ │ -001e02b0: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ -001e02c0: 7473 7d5c 297c 5c31 2c6e 6f73 7569 647c  ts}\)|\1,nosuid|
│ │ │ -001e02d0: 2220 2f65 7463 2f66 7374 6162 0a20 2020  " /etc/fstab.   
│ │ │ -001e02e0: 2066 690a 0a0a 2020 2020 6966 206d 6b64   fi...    if mkd
│ │ │ -001e02f0: 6972 202d 7020 222f 7661 7222 3b20 7468  ir -p "/var"; th
│ │ │ -001e0300: 656e 0a20 2020 2020 2020 2069 6620 6d6f  en.        if mo
│ │ │ -001e0310: 756e 7470 6f69 6e74 202d 7120 222f 7661  untpoint -q "/va
│ │ │ -001e0320: 7222 3b20 7468 656e 0a20 2020 2020 2020  r"; then.       
│ │ │ -001e0330: 2020 2020 206d 6f75 6e74 202d 6f20 7265       mount -o re
│ │ │ -001e0340: 6d6f 756e 7420 2d2d 7461 7267 6574 2022  mount --target "
│ │ │ -001e0350: 2f76 6172 220a 2020 2020 2020 2020 6669  /var".        fi
│ │ │ -001e0360: 0a20 2020 2066 690a 7d0a 0a70 6572 666f  .    fi.}..perfo
│ │ │ -001e0370: 726d 5f72 656d 6564 6961 7469 6f6e 0a0a  rm_remediation..
│ │ │ -001e0380: 656c 7365 0a20 2020 2026 6774 3b26 616d  else.    >&am
│ │ │ -001e0390: 703b 3220 6563 686f 2027 5265 6d65 6469  p;2 echo 'Remedi
│ │ │ -001e03a0: 6174 696f 6e20 6973 206e 6f74 2061 7070  ation is not app
│ │ │ -001e03b0: 6c69 6361 626c 652c 206e 6f74 6869 6e67  licable, nothing
│ │ │ -001e03c0: 2077 6173 2064 6f6e 6527 0a66 690a 3c2f   was done'.fi.
< │ │ │ +001de250: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ +001de260: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ +001de280: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ +001de290: 3c74 643e 6869 6768 3c2f 7464 3e3c 2f74 highReboot │ │ │ +001de2b0: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +001de2c0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ +001de2e0: 7464 3e63 6f6e 6669 6775 7265 3c2f 7464 td>configure

- name: │ │ │ +001de310: 2047 6174 6865 7220 7468 6520 7061 636b Gather the pack │ │ │ +001de320: 6167 6520 6661 6374 730a 2020 7061 636b age facts. pack │ │ │ +001de330: 6167 655f 6661 6374 733a 0a20 2020 206d age_facts:. m │ │ │ +001de340: 616e 6167 6572 3a20 6175 746f 0a20 2074 anager: auto. t │ │ │ +001de350: 6167 733a 0a20 202d 2063 6f6e 6669 6775 ags:. - configu │ │ │ +001de360: 7265 5f73 7472 6174 6567 790a 2020 2d20 re_strategy. - │ │ │ +001de370: 6869 6768 5f64 6973 7275 7074 696f 6e0a high_disruption. │ │ │ +001de380: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869 - low_complexi │ │ │ +001de390: 7479 0a20 202d 206d 6564 6975 6d5f 7365 ty. - medium_se │ │ │ +001de3a0: 7665 7269 7479 0a20 202d 206d 6f75 6e74 verity. - mount │ │ │ +001de3b0: 5f6f 7074 696f 6e5f 7661 725f 6e6f 7375 _option_var_nosu │ │ │ +001de3c0: 6964 0a20 202d 206e 6f5f 7265 626f 6f74 id. - no_reboot │ │ │ +001de3d0: 5f6e 6565 6465 640a 0a2d 206e 616d 653a _needed..- name: │ │ │ +001de3e0: 2027 4164 6420 6e6f 7375 6964 204f 7074 'Add nosuid Opt │ │ │ +001de3f0: 696f 6e20 746f 202f 7661 723a 2043 6865 ion to /var: Che │ │ │ +001de400: 636b 2069 6e66 6f72 6d61 7469 6f6e 2061 ck information a │ │ │ +001de410: 7373 6f63 6961 7465 6420 746f 206d 6f75 ssociated to mou │ │ │ +001de420: 6e74 706f 696e 7427 0a20 2061 6e73 6962 ntpoint'. ansib │ │ │ +001de430: 6c65 2e62 7569 6c74 696e 2e63 6f6d 6d61 le.builtin.comma │ │ │ +001de440: 6e64 3a20 6669 6e64 6d6e 7420 2d2d 6673 nd: findmnt --fs │ │ │ +001de450: 7461 6220 272f 7661 7227 0a20 2072 6567 tab '/var'. reg │ │ │ +001de460: 6973 7465 723a 2064 6576 6963 655f 6e61 ister: device_na │ │ │ +001de470: 6d65 0a20 2066 6169 6c65 645f 7768 656e me. failed_when │ │ │ +001de480: 3a20 6465 7669 6365 5f6e 616d 652e 7263 : device_name.rc │ │ │ +001de490: 2026 6774 3b20 310a 2020 6368 616e 6765 > 1. change │ │ │ +001de4a0: 645f 7768 656e 3a20 6661 6c73 650a 2020 d_when: false. │ │ │ +001de4b0: 6368 6563 6b5f 6d6f 6465 3a20 6661 6c73 check_mode: fals │ │ │ +001de4c0: 650a 2020 7768 656e 3a0a 2020 2d20 2820 e. when:. - ( │ │ │ +001de4d0: 6e6f 7420 2820 226b 6572 6e65 6c22 2069 not ( "kernel" i │ │ │ +001de4e0: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ +001de4f0: 7061 636b 6167 6573 2061 6e64 2022 626f packages and "bo │ │ │ +001de500: 6f74 6322 2069 6e20 616e 7369 626c 655f otc" in ansible_ │ │ │ +001de510: 6661 6374 732e 7061 636b 6167 6573 0a20 facts.packages. │ │ │ +001de520: 2020 2061 6e64 206e 6f74 2022 6f70 656e and not "open │ │ │ +001de530: 7368 6966 742d 6b75 6265 6c65 7422 2069 shift-kubelet" i │ │ │ +001de540: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ +001de550: 7061 636b 6167 6573 2061 6e64 2022 6f73 packages and "os │ │ │ +001de560: 7472 6565 2220 696e 2061 6e73 6962 6c65 tree" in ansible │ │ │ +001de570: 5f70 726f 635f 636d 646c 696e 650a 2020 _proc_cmdline. │ │ │ +001de580: 2020 2920 616e 6420 6e6f 7420 2820 616e ) and not ( an │ │ │ +001de590: 7369 626c 655f 7669 7274 7561 6c69 7a61 sible_virtualiza │ │ │ +001de5a0: 7469 6f6e 5f74 7970 6520 696e 205b 2264 tion_type in ["d │ │ │ +001de5b0: 6f63 6b65 7222 2c20 226c 7863 222c 2022 ocker", "lxc", " │ │ │ +001de5c0: 6f70 656e 767a 222c 2022 706f 646d 616e openvz", "podman │ │ │ +001de5d0: 222c 0a20 2020 2022 636f 6e74 6169 6e65 ",. "containe │ │ │ +001de5e0: 7222 5d20 2920 290a 2020 2d20 2722 2f76 r"] ) ). - '"/v │ │ │ +001de5f0: 6172 2220 696e 2061 6e73 6962 6c65 5f6d ar" in ansible_m │ │ │ +001de600: 6f75 6e74 7320 7c20 6d61 7028 6174 7472 ounts | map(attr │ │ │ +001de610: 6962 7574 653d 226d 6f75 6e74 2229 207c ibute="mount") | │ │ │ +001de620: 206c 6973 7427 0a20 2074 6167 733a 0a20 list'. tags:. │ │ │ +001de630: 202d 2063 6f6e 6669 6775 7265 5f73 7472 - configure_str │ │ │ +001de640: 6174 6567 790a 2020 2d20 6869 6768 5f64 ategy. - high_d │ │ │ +001de650: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f isruption. - lo │ │ │ +001de660: 775f 636f 6d70 6c65 7869 7479 0a20 202d w_complexity. - │ │ │ +001de670: 206d 6564 6975 6d5f 7365 7665 7269 7479 medium_severity │ │ │ +001de680: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f . - mount_optio │ │ │ +001de690: 6e5f 7661 725f 6e6f 7375 6964 0a20 202d n_var_nosuid. - │ │ │ +001de6a0: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465 no_reboot_neede │ │ │ +001de6b0: 640a 0a2d 206e 616d 653a 2027 4164 6420 d..- name: 'Add │ │ │ +001de6c0: 6e6f 7375 6964 204f 7074 696f 6e20 746f nosuid Option to │ │ │ +001de6d0: 202f 7661 723a 2043 7265 6174 6520 6d6f /var: Create mo │ │ │ +001de6e0: 756e 745f 696e 666f 2064 6963 7469 6f6e unt_info diction │ │ │ +001de6f0: 6172 7920 7661 7269 6162 6c65 270a 2020 ary variable'. │ │ │ +001de700: 7365 745f 6661 6374 3a0a 2020 2020 6d6f set_fact:. mo │ │ │ +001de710: 756e 745f 696e 666f 3a20 277b 7b20 6d6f unt_info: '{{ mo │ │ │ +001de720: 756e 745f 696e 666f 7c64 6566 6175 6c74 unt_info|default │ │ │ +001de730: 287b 7d29 7c63 6f6d 6269 6e65 287b 6974 ({})|combine({it │ │ │ +001de740: 656d 2e30 3a20 6974 656d 2e31 7d29 207d em.0: item.1}) } │ │ │ +001de750: 7d27 0a20 2077 6974 685f 746f 6765 7468 }'. with_togeth │ │ │ +001de760: 6572 3a0a 2020 2d20 277b 7b20 6465 7669 er:. - '{{ devi │ │ │ +001de770: 6365 5f6e 616d 652e 7374 646f 7574 5f6c ce_name.stdout_l │ │ │ +001de780: 696e 6573 5b30 5d2e 7370 6c69 7428 2920 ines[0].split() │ │ │ +001de790: 7c20 6d61 7028 2727 6c6f 7765 7227 2729 | map(''lower'') │ │ │ +001de7a0: 207c 206c 6973 7420 7d7d 270a 2020 2d20 | list }}'. - │ │ │ +001de7b0: 277b 7b20 6465 7669 6365 5f6e 616d 652e '{{ device_name. │ │ │ +001de7c0: 7374 646f 7574 5f6c 696e 6573 5b31 5d2e stdout_lines[1]. │ │ │ +001de7d0: 7370 6c69 7428 2920 7c20 6c69 7374 207d split() | list } │ │ │ +001de7e0: 7d27 0a20 2077 6865 6e3a 0a20 202d 2028 }'. when:. - ( │ │ │ +001de7f0: 206e 6f74 2028 2022 6b65 726e 656c 2220 not ( "kernel" │ │ │ +001de800: 696e 2061 6e73 6962 6c65 5f66 6163 7473 in ansible_facts │ │ │ +001de810: 2e70 6163 6b61 6765 7320 616e 6420 2262 .packages and "b │ │ │ +001de820: 6f6f 7463 2220 696e 2061 6e73 6962 6c65 ootc" in ansible │ │ │ +001de830: 5f66 6163 7473 2e70 6163 6b61 6765 730a _facts.packages. │ │ │ +001de840: 2020 2020 616e 6420 6e6f 7420 226f 7065 and not "ope │ │ │ +001de850: 6e73 6869 6674 2d6b 7562 656c 6574 2220 nshift-kubelet" │ │ │ +001de860: 696e 2061 6e73 6962 6c65 5f66 6163 7473 in ansible_facts │ │ │ +001de870: 2e70 6163 6b61 6765 7320 616e 6420 226f .packages and "o │ │ │ +001de880: 7374 7265 6522 2069 6e20 616e 7369 626c stree" in ansibl │ │ │ +001de890: 655f 7072 6f63 5f63 6d64 6c69 6e65 0a20 e_proc_cmdline. │ │ │ +001de8a0: 2020 2029 2061 6e64 206e 6f74 2028 2061 ) and not ( a │ │ │ +001de8b0: 6e73 6962 6c65 5f76 6972 7475 616c 697a nsible_virtualiz │ │ │ +001de8c0: 6174 696f 6e5f 7479 7065 2069 6e20 5b22 ation_type in [" │ │ │ +001de8d0: 646f 636b 6572 222c 2022 6c78 6322 2c20 docker", "lxc", │ │ │ +001de8e0: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61 "openvz", "podma │ │ │ +001de8f0: 6e22 2c0a 2020 2020 2263 6f6e 7461 696e n",. "contain │ │ │ +001de900: 6572 225d 2029 2029 0a20 202d 2027 222f er"] ) ). - '"/ │ │ │ +001de910: 7661 7222 2069 6e20 616e 7369 626c 655f var" in ansible_ │ │ │ +001de920: 6d6f 756e 7473 207c 206d 6170 2861 7474 mounts | map(att │ │ │ +001de930: 7269 6275 7465 3d22 6d6f 756e 7422 2920 ribute="mount") │ │ │ +001de940: 7c20 6c69 7374 270a 2020 2d20 6465 7669 | list'. - devi │ │ │ +001de950: 6365 5f6e 616d 652e 7374 646f 7574 2069 ce_name.stdout i │ │ │ +001de960: 7320 6465 6669 6e65 6420 616e 6420 6465 s defined and de │ │ │ +001de970: 7669 6365 5f6e 616d 652e 7374 646f 7574 vice_name.stdout │ │ │ +001de980: 5f6c 696e 6573 2069 7320 6465 6669 6e65 _lines is define │ │ │ +001de990: 640a 2020 2d20 2864 6576 6963 655f 6e61 d. - (device_na │ │ │ +001de9a0: 6d65 2e73 7464 6f75 7420 7c20 6c65 6e67 me.stdout | leng │ │ │ +001de9b0: 7468 2026 6774 3b20 3029 0a20 2074 6167 th > 0). tag │ │ │ +001de9c0: 733a 0a20 202d 2063 6f6e 6669 6775 7265 s:. - configure │ │ │ +001de9d0: 5f73 7472 6174 6567 790a 2020 2d20 6869 _strategy. - hi │ │ │ +001de9e0: 6768 5f64 6973 7275 7074 696f 6e0a 2020 gh_disruption. │ │ │ +001de9f0: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479 - low_complexity │ │ │ +001dea00: 0a20 202d 206d 6564 6975 6d5f 7365 7665 . - medium_seve │ │ │ +001dea10: 7269 7479 0a20 202d 206d 6f75 6e74 5f6f rity. - mount_o │ │ │ +001dea20: 7074 696f 6e5f 7661 725f 6e6f 7375 6964 ption_var_nosuid │ │ │ +001dea30: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e . - no_reboot_n │ │ │ +001dea40: 6565 6465 640a 0a2d 206e 616d 653a 2027 eeded..- name: ' │ │ │ +001dea50: 4164 6420 6e6f 7375 6964 204f 7074 696f Add nosuid Optio │ │ │ +001dea60: 6e20 746f 202f 7661 723a 2049 6620 2f76 n to /var: If /v │ │ │ +001dea70: 6172 206e 6f74 206d 6f75 6e74 6564 2c20 ar not mounted, │ │ │ +001dea80: 6372 6166 7420 6d6f 756e 745f 696e 666f craft mount_info │ │ │ +001dea90: 206d 616e 7561 6c6c 7927 0a20 2073 6574 manually'. set │ │ │ +001deaa0: 5f66 6163 743a 0a20 2020 206d 6f75 6e74 _fact:. mount │ │ │ +001deab0: 5f69 6e66 6f3a 2027 7b7b 206d 6f75 6e74 _info: '{{ mount │ │ │ +001deac0: 5f69 6e66 6f7c 6465 6661 756c 7428 7b7d _info|default({} │ │ │ +001dead0: 297c 636f 6d62 696e 6528 7b69 7465 6d2e )|combine({item. │ │ │ +001deae0: 303a 2069 7465 6d2e 317d 2920 7d7d 270a 0: item.1}) }}'. │ │ │ +001deaf0: 2020 7769 7468 5f74 6f67 6574 6865 723a with_together: │ │ │ +001deb00: 0a20 202d 202d 2074 6172 6765 740a 2020 . - - target. │ │ │ +001deb10: 2020 2d20 736f 7572 6365 0a20 2020 202d - source. - │ │ │ +001deb20: 2066 7374 7970 650a 2020 2020 2d20 6f70 fstype. - op │ │ │ +001deb30: 7469 6f6e 730a 2020 2d20 2d20 2f76 6172 tions. - - /var │ │ │ +001deb40: 0a20 2020 202d 2027 270a 2020 2020 2d20 . - ''. - │ │ │ +001deb50: 2727 0a20 2020 202d 2064 6566 6175 6c74 ''. - default │ │ │ +001deb60: 730a 2020 7768 656e 3a0a 2020 2d20 2820 s. when:. - ( │ │ │ +001deb70: 6e6f 7420 2820 226b 6572 6e65 6c22 2069 not ( "kernel" i │ │ │ +001deb80: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ +001deb90: 7061 636b 6167 6573 2061 6e64 2022 626f packages and "bo │ │ │ +001deba0: 6f74 6322 2069 6e20 616e 7369 626c 655f otc" in ansible_ │ │ │ +001debb0: 6661 6374 732e 7061 636b 6167 6573 0a20 facts.packages. │ │ │ +001debc0: 2020 2061 6e64 206e 6f74 2022 6f70 656e and not "open │ │ │ +001debd0: 7368 6966 742d 6b75 6265 6c65 7422 2069 shift-kubelet" i │ │ │ +001debe0: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ +001debf0: 7061 636b 6167 6573 2061 6e64 2022 6f73 packages and "os │ │ │ +001dec00: 7472 6565 2220 696e 2061 6e73 6962 6c65 tree" in ansible │ │ │ +001dec10: 5f70 726f 635f 636d 646c 696e 650a 2020 _proc_cmdline. │ │ │ +001dec20: 2020 2920 616e 6420 6e6f 7420 2820 616e ) and not ( an │ │ │ +001dec30: 7369 626c 655f 7669 7274 7561 6c69 7a61 sible_virtualiza │ │ │ +001dec40: 7469 6f6e 5f74 7970 6520 696e 205b 2264 tion_type in ["d │ │ │ +001dec50: 6f63 6b65 7222 2c20 226c 7863 222c 2022 ocker", "lxc", " │ │ │ +001dec60: 6f70 656e 767a 222c 2022 706f 646d 616e openvz", "podman │ │ │ +001dec70: 222c 0a20 2020 2022 636f 6e74 6169 6e65 ",. "containe │ │ │ +001dec80: 7222 5d20 2920 290a 2020 2d20 2722 2f76 r"] ) ). - '"/v │ │ │ +001dec90: 6172 2220 696e 2061 6e73 6962 6c65 5f6d ar" in ansible_m │ │ │ +001deca0: 6f75 6e74 7320 7c20 6d61 7028 6174 7472 ounts | map(attr │ │ │ +001decb0: 6962 7574 653d 226d 6f75 6e74 2229 207c ibute="mount") | │ │ │ +001decc0: 206c 6973 7427 0a20 202d 2028 222d 2d66 list'. - ("--f │ │ │ +001decd0: 7374 6162 2220 7c20 6c65 6e67 7468 203d stab" | length = │ │ │ +001dece0: 3d20 3029 0a20 202d 2064 6576 6963 655f = 0). - device_ │ │ │ +001decf0: 6e61 6d65 2e73 7464 6f75 7420 6973 2064 name.stdout is d │ │ │ +001ded00: 6566 696e 6564 2061 6e64 2064 6576 6963 efined and devic │ │ │ +001ded10: 655f 6e61 6d65 2e73 7464 6f75 745f 6c69 e_name.stdout_li │ │ │ +001ded20: 6e65 7320 6973 2064 6566 696e 6564 0a20 nes is defined. │ │ │ +001ded30: 202d 2028 6465 7669 6365 5f6e 616d 652e - (device_name. │ │ │ +001ded40: 7374 646f 7574 207c 206c 656e 6774 6820 stdout | length │ │ │ +001ded50: 3d3d 2030 290a 2020 7461 6773 3a0a 2020 == 0). tags:. │ │ │ +001ded60: 2d20 636f 6e66 6967 7572 655f 7374 7261 - configure_stra │ │ │ +001ded70: 7465 6779 0a20 202d 2068 6967 685f 6469 tegy. - high_di │ │ │ +001ded80: 7372 7570 7469 6f6e 0a20 202d 206c 6f77 sruption. - low │ │ │ +001ded90: 5f63 6f6d 706c 6578 6974 790a 2020 2d20 _complexity. - │ │ │ +001deda0: 6d65 6469 756d 5f73 6576 6572 6974 790a medium_severity. │ │ │ +001dedb0: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e - mount_option │ │ │ +001dedc0: 5f76 6172 5f6e 6f73 7569 640a 2020 2d20 _var_nosuid. - │ │ │ +001dedd0: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564 no_reboot_needed │ │ │ +001dede0: 0a0a 2d20 6e61 6d65 3a20 2741 6464 206e ..- name: 'Add n │ │ │ +001dedf0: 6f73 7569 6420 4f70 7469 6f6e 2074 6f20 osuid Option to │ │ │ +001dee00: 2f76 6172 3a20 4d61 6b65 2073 7572 6520 /var: Make sure │ │ │ +001dee10: 6e6f 7375 6964 206f 7074 696f 6e20 6973 nosuid option is │ │ │ +001dee20: 2070 6172 7420 6f66 2074 6865 2074 6f20 part of the to │ │ │ +001dee30: 2f76 6172 0a20 2020 206f 7074 696f 6e73 /var. options │ │ │ +001dee40: 270a 2020 7365 745f 6661 6374 3a0a 2020 '. set_fact:. │ │ │ +001dee50: 2020 6d6f 756e 745f 696e 666f 3a20 277b mount_info: '{ │ │ │ +001dee60: 7b20 6d6f 756e 745f 696e 666f 207c 2063 { mount_info | c │ │ │ +001dee70: 6f6d 6269 6e65 2820 7b27 276f 7074 696f ombine( {''optio │ │ │ +001dee80: 6e73 2727 3a27 2727 277e 286d 6f75 6e74 ns'':''''~(mount │ │ │ +001dee90: 5f69 6e66 6f2e 6f70 7469 6f6e 7320 7c0a _info.options |. │ │ │ +001deea0: 2020 2020 2020 6465 6661 756c 7428 2727 default('' │ │ │ +001deeb0: 2727 2929 7e28 2727 2c27 2720 6966 2028 ''))~('','' if ( │ │ │ +001deec0: 6d6f 756e 745f 696e 666f 2e6f 7074 696f mount_info.optio │ │ │ +001deed0: 6e73 207c 2064 6566 6175 6c74 2827 2727 ns | default(''' │ │ │ +001deee0: 2729 2920 656c 7365 2027 2727 2729 7e27 ')) else '''')~' │ │ │ +001deef0: 276e 6f73 7569 6427 270a 2020 2020 2020 'nosuid''. │ │ │ +001def00: 7d29 207d 7d27 0a20 2077 6865 6e3a 0a20 }) }}'. when:. │ │ │ +001def10: 202d 2028 206e 6f74 2028 2022 6b65 726e - ( not ( "kern │ │ │ +001def20: 656c 2220 696e 2061 6e73 6962 6c65 5f66 el" in ansible_f │ │ │ +001def30: 6163 7473 2e70 6163 6b61 6765 7320 616e acts.packages an │ │ │ +001def40: 6420 2262 6f6f 7463 2220 696e 2061 6e73 d "bootc" in ans │ │ │ +001def50: 6962 6c65 5f66 6163 7473 2e70 6163 6b61 ible_facts.packa │ │ │ +001def60: 6765 730a 2020 2020 616e 6420 6e6f 7420 ges. and not │ │ │ +001def70: 226f 7065 6e73 6869 6674 2d6b 7562 656c "openshift-kubel │ │ │ +001def80: 6574 2220 696e 2061 6e73 6962 6c65 5f66 et" in ansible_f │ │ │ +001def90: 6163 7473 2e70 6163 6b61 6765 7320 616e acts.packages an │ │ │ +001defa0: 6420 226f 7374 7265 6522 2069 6e20 616e d "ostree" in an │ │ │ +001defb0: 7369 626c 655f 7072 6f63 5f63 6d64 6c69 sible_proc_cmdli │ │ │ +001defc0: 6e65 0a20 2020 2029 2061 6e64 206e 6f74 ne. ) and not │ │ │ +001defd0: 2028 2061 6e73 6962 6c65 5f76 6972 7475 ( ansible_virtu │ │ │ +001defe0: 616c 697a 6174 696f 6e5f 7479 7065 2069 alization_type i │ │ │ +001deff0: 6e20 5b22 646f 636b 6572 222c 2022 6c78 n ["docker", "lx │ │ │ +001df000: 6322 2c20 226f 7065 6e76 7a22 2c20 2270 c", "openvz", "p │ │ │ +001df010: 6f64 6d61 6e22 2c0a 2020 2020 2263 6f6e odman",. "con │ │ │ +001df020: 7461 696e 6572 225d 2029 2029 0a20 202d tainer"] ) ). - │ │ │ +001df030: 2027 222f 7661 7222 2069 6e20 616e 7369 '"/var" in ansi │ │ │ +001df040: 626c 655f 6d6f 756e 7473 207c 206d 6170 ble_mounts | map │ │ │ +001df050: 2861 7474 7269 6275 7465 3d22 6d6f 756e (attribute="moun │ │ │ +001df060: 7422 2920 7c20 6c69 7374 270a 2020 2d20 t") | list'. - │ │ │ +001df070: 6d6f 756e 745f 696e 666f 2069 7320 6465 mount_info is de │ │ │ +001df080: 6669 6e65 6420 616e 6420 226e 6f73 7569 fined and "nosui │ │ │ +001df090: 6422 206e 6f74 2069 6e20 286d 6f75 6e74 d" not in (mount │ │ │ +001df0a0: 5f69 6e66 6f2e 6f70 7469 6f6e 7320 7c20 _info.options | │ │ │ +001df0b0: 6465 6661 756c 7428 2727 2929 0a20 2074 default('')). t │ │ │ +001df0c0: 6167 733a 0a20 202d 2063 6f6e 6669 6775 ags:. - configu │ │ │ +001df0d0: 7265 5f73 7472 6174 6567 790a 2020 2d20 re_strategy. - │ │ │ +001df0e0: 6869 6768 5f64 6973 7275 7074 696f 6e0a high_disruption. │ │ │ +001df0f0: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869 - low_complexi │ │ │ +001df100: 7479 0a20 202d 206d 6564 6975 6d5f 7365 ty. - medium_se │ │ │ +001df110: 7665 7269 7479 0a20 202d 206d 6f75 6e74 verity. - mount │ │ │ +001df120: 5f6f 7074 696f 6e5f 7661 725f 6e6f 7375 _option_var_nosu │ │ │ +001df130: 6964 0a20 202d 206e 6f5f 7265 626f 6f74 id. - no_reboot │ │ │ +001df140: 5f6e 6565 6465 640a 0a2d 206e 616d 653a _needed..- name: │ │ │ +001df150: 2027 4164 6420 6e6f 7375 6964 204f 7074 'Add nosuid Opt │ │ │ +001df160: 696f 6e20 746f 202f 7661 723a 2045 6e73 ion to /var: Ens │ │ │ +001df170: 7572 6520 2f76 6172 2069 7320 6d6f 756e ure /var is moun │ │ │ +001df180: 7465 6420 7769 7468 206e 6f73 7569 6420 ted with nosuid │ │ │ +001df190: 6f70 7469 6f6e 270a 2020 616e 7369 626c option'. ansibl │ │ │ +001df1a0: 652e 706f 7369 782e 6d6f 756e 743a 0a20 e.posix.mount:. │ │ │ +001df1b0: 2020 2070 6174 683a 202f 7661 720a 2020 path: /var. │ │ │ +001df1c0: 2020 7372 633a 2027 7b7b 206d 6f75 6e74 src: '{{ mount │ │ │ +001df1d0: 5f69 6e66 6f2e 736f 7572 6365 207c 2064 _info.source | d │ │ │ +001df1e0: 6566 6175 6c74 2827 2727 2729 207d 7d27 efault('''') }}' │ │ │ +001df1f0: 0a20 2020 206f 7074 733a 2027 7b7b 206d . opts: '{{ m │ │ │ +001df200: 6f75 6e74 5f69 6e66 6f2e 6f70 7469 6f6e ount_info.option │ │ │ +001df210: 7320 7c20 6465 6661 756c 7428 2727 2727 s | default('''' │ │ │ +001df220: 2920 7d7d 270a 2020 2020 7374 6174 653a ) }}'. state: │ │ │ +001df230: 206d 6f75 6e74 6564 0a20 2020 2066 7374 mounted. fst │ │ │ +001df240: 7970 653a 2027 7b7b 206d 6f75 6e74 5f69 ype: '{{ mount_i │ │ │ +001df250: 6e66 6f2e 6673 7479 7065 207c 2064 6566 nfo.fstype | def │ │ │ +001df260: 6175 6c74 2827 2727 2729 207d 7d27 0a20 ault('''') }}'. │ │ │ +001df270: 2072 6567 6973 7465 723a 206d 6f75 6e74 register: mount │ │ │ +001df280: 5f72 6573 756c 740a 2020 6661 696c 6564 _result. failed │ │ │ +001df290: 5f77 6865 6e3a 0a20 202d 206d 6f75 6e74 _when:. - mount │ │ │ +001df2a0: 5f72 6573 756c 7420 6973 2066 6169 6c65 _result is faile │ │ │ +001df2b0: 640a 2020 2d20 2727 2774 6172 6765 7420 d. - '''target │ │ │ +001df2c0: 6973 2062 7573 7927 2720 6e6f 7420 696e is busy'' not in │ │ │ +001df2d0: 2028 6d6f 756e 745f 7265 7375 6c74 2e6d (mount_result.m │ │ │ +001df2e0: 7367 207c 2064 6566 6175 6c74 2827 2727 sg | default(''' │ │ │ +001df2f0: 2729 2927 0a20 202d 2027 2727 616c 7265 '))'. - '''alre │ │ │ +001df300: 6164 7920 6d6f 756e 7465 6427 2720 6e6f ady mounted'' no │ │ │ +001df310: 7420 696e 2028 6d6f 756e 745f 7265 7375 t in (mount_resu │ │ │ +001df320: 6c74 2e6d 7367 207c 2064 6566 6175 6c74 lt.msg | default │ │ │ +001df330: 2827 2727 2729 2927 0a20 2077 6865 6e3a (''''))'. when: │ │ │ +001df340: 0a20 202d 2028 206e 6f74 2028 2022 6b65 . - ( not ( "ke │ │ │ +001df350: 726e 656c 2220 696e 2061 6e73 6962 6c65 rnel" in ansible │ │ │ +001df360: 5f66 6163 7473 2e70 6163 6b61 6765 7320 _facts.packages │ │ │ +001df370: 616e 6420 2262 6f6f 7463 2220 696e 2061 and "bootc" in a │ │ │ +001df380: 6e73 6962 6c65 5f66 6163 7473 2e70 6163 nsible_facts.pac │ │ │ +001df390: 6b61 6765 730a 2020 2020 616e 6420 6e6f kages. and no │ │ │ +001df3a0: 7420 226f 7065 6e73 6869 6674 2d6b 7562 t "openshift-kub │ │ │ +001df3b0: 656c 6574 2220 696e 2061 6e73 6962 6c65 elet" in ansible │ │ │ +001df3c0: 5f66 6163 7473 2e70 6163 6b61 6765 7320 _facts.packages │ │ │ +001df3d0: 616e 6420 226f 7374 7265 6522 2069 6e20 and "ostree" in │ │ │ +001df3e0: 616e 7369 626c 655f 7072 6f63 5f63 6d64 ansible_proc_cmd │ │ │ +001df3f0: 6c69 6e65 0a20 2020 2029 2061 6e64 206e line. ) and n │ │ │ +001df400: 6f74 2028 2061 6e73 6962 6c65 5f76 6972 ot ( ansible_vir │ │ │ +001df410: 7475 616c 697a 6174 696f 6e5f 7479 7065 tualization_type │ │ │ +001df420: 2069 6e20 5b22 646f 636b 6572 222c 2022 in ["docker", " │ │ │ +001df430: 6c78 6322 2c20 226f 7065 6e76 7a22 2c20 lxc", "openvz", │ │ │ +001df440: 2270 6f64 6d61 6e22 2c0a 2020 2020 2263 "podman",. "c │ │ │ +001df450: 6f6e 7461 696e 6572 225d 2029 2029 0a20 ontainer"] ) ). │ │ │ +001df460: 202d 2027 222f 7661 7222 2069 6e20 616e - '"/var" in an │ │ │ +001df470: 7369 626c 655f 6d6f 756e 7473 207c 206d sible_mounts | m │ │ │ +001df480: 6170 2861 7474 7269 6275 7465 3d22 6d6f ap(attribute="mo │ │ │ +001df490: 756e 7422 2920 7c20 6c69 7374 270a 2020 unt") | list'. │ │ │ +001df4a0: 2d20 6d6f 756e 745f 696e 666f 2069 7320 - mount_info is │ │ │ +001df4b0: 6465 6669 6e65 640a 2020 2d20 2864 6576 defined. - (dev │ │ │ +001df4c0: 6963 655f 6e61 6d65 2e73 7464 6f75 7420 ice_name.stdout │ │ │ +001df4d0: 6973 2064 6566 696e 6564 2061 6e64 2028 is defined and ( │ │ │ +001df4e0: 6465 7669 6365 5f6e 616d 652e 7374 646f device_name.stdo │ │ │ +001df4f0: 7574 207c 206c 656e 6774 6820 2667 743b ut | length > │ │ │ +001df500: 2030 2929 206f 7220 2822 2d2d 6673 7461 0)) or ("--fsta │ │ │ +001df510: 6222 0a20 2020 207c 206c 656e 6774 6820 b". | length │ │ │ +001df520: 3d3d 2030 290a 2020 7461 6773 3a0a 2020 == 0). tags:. │ │ │ +001df530: 2d20 636f 6e66 6967 7572 655f 7374 7261 - configure_stra │ │ │ +001df540: 7465 6779 0a20 202d 2068 6967 685f 6469 tegy. - high_di │ │ │ +001df550: 7372 7570 7469 6f6e 0a20 202d 206c 6f77 sruption. - low │ │ │ +001df560: 5f63 6f6d 706c 6578 6974 790a 2020 2d20 _complexity. - │ │ │ +001df570: 6d65 6469 756d 5f73 6576 6572 6974 790a medium_severity. │ │ │ +001df580: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e - mount_option │ │ │ +001df590: 5f76 6172 5f6e 6f73 7569 640a 2020 2d20 _var_nosuid. - │ │ │ +001df5a0: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564 no_reboot_needed │ │ │ +001df5b0: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f .

Remediation She │ │ │ +001df670: 6c6c 2073 6372 6970 7420 e287 b23c 2f61 ll script ...
# Remediation i
│ │ │ +001df740: 7320 6170 706c 6963 6162 6c65 206f 6e6c  s applicable onl
│ │ │ +001df750: 7920 696e 2063 6572 7461 696e 2070 6c61  y in certain pla
│ │ │ +001df760: 7466 6f72 6d73 0a69 6620 2820 2120 2820  tforms.if ( ! ( 
│ │ │ +001df770: 7b20 7270 6d20 2d2d 7175 6965 7420 2d71  { rpm --quiet -q
│ │ │ +001df780: 206b 6572 6e65 6c20 3b7d 2026 616d 703b   kernel ;} &
│ │ │ +001df790: 2661 6d70 3b20 7b20 7270 6d20 2d2d 7175  & { rpm --qu
│ │ │ +001df7a0: 6965 7420 2d71 2062 6f6f 7463 203b 7d20  iet -q bootc ;} 
│ │ │ +001df7b0: 2661 6d70 3b26 616d 703b 207b 2021 2072  && { ! r
│ │ │ +001df7c0: 706d 202d 2d71 7569 6574 202d 7120 6f70  pm --quiet -q op
│ │ │ +001df7d0: 656e 7368 6966 742d 6b75 6265 6c65 7420  enshift-kubelet 
│ │ │ +001df7e0: 3b7d 2026 616d 703b 2661 6d70 3b20 285b  ;} && ([
│ │ │ +001df7f0: 202d 6620 2f72 756e 2f6f 7374 7265 652d   -f /run/ostree-
│ │ │ +001df800: 626f 6f74 6564 205d 207c 7c20 5b20 2d4c  booted ] || [ -L
│ │ │ +001df810: 202f 6f73 7472 6565 205d 2920 2920 2661   /ostree ]) ) &a
│ │ │ +001df820: 6d70 3b26 616d 703b 2021 2028 205b 202d  mp;& ! ( [ -
│ │ │ +001df830: 6620 2f2e 646f 636b 6572 656e 7620 5d20  f /.dockerenv ] 
│ │ │ +001df840: 7c7c 205b 202d 6620 2f72 756e 2f2e 636f  || [ -f /run/.co
│ │ │ +001df850: 6e74 6169 6e65 7265 6e76 205d 2029 2029  ntainerenv ] ) )
│ │ │ +001df860: 2026 616d 703b 2661 6d70 3b20 7b20 2820   && { ( 
│ │ │ +001df870: 6669 6e64 6d6e 7420 2d2d 6b65 726e 656c  findmnt --kernel
│ │ │ +001df880: 2022 2f76 6172 2220 2667 743b 202f 6465   "/var" > /de
│ │ │ +001df890: 762f 6e75 6c6c 207c 7c20 6669 6e64 6d6e  v/null || findmn
│ │ │ +001df8a0: 7420 2d2d 6673 7461 6220 222f 7661 7222  t --fstab "/var"
│ │ │ +001df8b0: 2026 6774 3b20 2f64 6576 2f6e 756c 6c20   > /dev/null 
│ │ │ +001df8c0: 293b 207d 3b20 7468 656e 0a0a 6675 6e63  ); }; then..func
│ │ │ +001df8d0: 7469 6f6e 2070 6572 666f 726d 5f72 656d  tion perform_rem
│ │ │ +001df8e0: 6564 6961 7469 6f6e 207b 0a0a 2020 2020  ediation {..    
│ │ │ +001df8f0: 0a20 2020 2020 2020 2023 2074 6865 206d  .        # the m
│ │ │ +001df900: 6f75 6e74 2070 6f69 6e74 202f 7661 7220  ount point /var 
│ │ │ +001df910: 6861 7320 746f 2062 6520 6465 6669 6e65  has to be define
│ │ │ +001df920: 6420 696e 202f 6574 632f 6673 7461 620a  d in /etc/fstab.
│ │ │ +001df930: 2020 2020 2020 2020 2320 6265 666f 7265          # before
│ │ │ +001df940: 2074 6869 7320 7265 6d65 6469 6174 696f   this remediatio
│ │ │ +001df950: 6e20 6361 6e20 6265 2065 7865 6375 7465  n can be execute
│ │ │ +001df960: 642e 2049 6e20 6361 7365 2069 7420 6973  d. In case it is
│ │ │ +001df970: 206e 6f74 2064 6566 696e 6564 2c20 7468   not defined, th
│ │ │ +001df980: 650a 2020 2020 2020 2020 2320 7265 6d65  e.        # reme
│ │ │ +001df990: 6469 6174 696f 6e20 6162 6f72 7473 2061  diation aborts a
│ │ │ +001df9a0: 6e64 206e 6f20 6368 616e 6765 7320 7265  nd no changes re
│ │ │ +001df9b0: 6761 7264 696e 6720 7468 6520 6d6f 756e  garding the moun
│ │ │ +001df9c0: 7420 706f 696e 7420 6172 6520 646f 6e65  t point are done
│ │ │ +001df9d0: 2e0a 2020 2020 2020 2020 6d6f 756e 745f  ..        mount_
│ │ │ +001df9e0: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ +001df9f0: 7870 3d22 2428 7072 696e 7466 2022 5e5b  xp="$(printf "^[
│ │ │ +001dfa00: 5b3a 7370 6163 653a 5d5d 2a5b 5e23 5d2e  [:space:]]*[^#].
│ │ │ +001dfa10: 2a5b 5b3a 7370 6163 653a 5d5d 2573 5b5b  *[[:space:]]%s[[
│ │ │ +001dfa20: 3a73 7061 6365 3a5d 5d22 2022 2f76 6172  :space:]]" "/var
│ │ │ +001dfa30: 2229 220a 0a20 2020 2067 7265 7020 2224  ")"..    grep "$
│ │ │ +001dfa40: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ +001dfa50: 685f 7265 6765 7870 2220 2d71 202f 6574  h_regexp" -q /et
│ │ │ +001dfa60: 632f 6673 7461 6220 5c0a 2020 2020 2020  c/fstab \.      
│ │ │ +001dfa70: 2020 7c7c 207b 2065 6368 6f20 2254 6865    || { echo "The
│ │ │ +001dfa80: 206d 6f75 6e74 2070 6f69 6e74 2027 2f76   mount point '/v
│ │ │ +001dfa90: 6172 2720 6973 206e 6f74 2065 7665 6e20  ar' is not even 
│ │ │ +001dfaa0: 696e 202f 6574 632f 6673 7461 622c 2073  in /etc/fstab, s
│ │ │ +001dfab0: 6f20 7765 2063 616e 2774 2073 6574 2075  o we can't set u
│ │ │ +001dfac0: 7020 6d6f 756e 7420 6f70 7469 6f6e 7322  p mount options"
│ │ │ +001dfad0: 2026 6774 3b26 616d 703b 323b 0a20 2020   >&2;.   
│ │ │ +001dfae0: 2020 2020 2020 2020 2020 2020 2065 6368               ech
│ │ │ +001dfaf0: 6f20 224e 6f74 2072 656d 6564 6961 7469  o "Not remediati
│ │ │ +001dfb00: 6e67 2c20 6265 6361 7573 6520 7468 6572  ng, because ther
│ │ │ +001dfb10: 6520 6973 206e 6f20 7265 636f 7264 206f  e is no record o
│ │ │ +001dfb20: 6620 2f76 6172 2069 6e20 2f65 7463 2f66  f /var in /etc/f
│ │ │ +001dfb30: 7374 6162 2220 2667 743b 2661 6d70 3b32  stab" >&2
│ │ │ +001dfb40: 3b20 7265 7475 726e 2031 3b20 7d0a 2020  ; return 1; }.  
│ │ │ +001dfb50: 2020 0a0a 0a20 2020 206d 6f75 6e74 5f70    ...    mount_p
│ │ │ +001dfb60: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ +001dfb70: 703d 2224 2870 7269 6e74 6620 225e 5b5b  p="$(printf "^[[
│ │ │ +001dfb80: 3a73 7061 6365 3a5d 5d2a 5b5e 235d 2e2a  :space:]]*[^#].*
│ │ │ +001dfb90: 5b5b 3a73 7061 6365 3a5d 5d25 735b 5b3a  [[:space:]]%s[[:
│ │ │ +001dfba0: 7370 6163 653a 5d5d 2220 2f76 6172 2922  space:]]" /var)"
│ │ │ +001dfbb0: 0a0a 2020 2020 2320 4966 2074 6865 206d  ..    # If the m
│ │ │ +001dfbc0: 6f75 6e74 2070 6f69 6e74 2069 7320 6e6f  ount point is no
│ │ │ +001dfbd0: 7420 696e 202f 6574 632f 6673 7461 622c  t in /etc/fstab,
│ │ │ +001dfbe0: 2067 6574 2070 7265 7669 6f75 7320 6d6f   get previous mo
│ │ │ +001dfbf0: 756e 7420 6f70 7469 6f6e 7320 6672 6f6d  unt options from
│ │ │ +001dfc00: 202f 6574 632f 6d74 6162 0a20 2020 2069   /etc/mtab.    i
│ │ │ +001dfc10: 6620 2120 6772 6570 202d 7120 2224 6d6f  f ! grep -q "$mo
│ │ │ +001dfc20: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ +001dfc30: 7265 6765 7870 2220 2f65 7463 2f66 7374  regexp" /etc/fst
│ │ │ +001dfc40: 6162 3b20 7468 656e 0a20 2020 2020 2020  ab; then.       
│ │ │ +001dfc50: 2023 2072 756e 7469 6d65 206f 7074 7320   # runtime opts 
│ │ │ +001dfc60: 7769 7468 6f75 7420 736f 6d65 2061 7574  without some aut
│ │ │ +001dfc70: 6f6d 6174 6963 206b 6572 6e65 6c2f 7573  omatic kernel/us
│ │ │ +001dfc80: 6572 7370 6163 652d 6164 6465 6420 6465  erspace-added de
│ │ │ +001dfc90: 6661 756c 7473 0a20 2020 2020 2020 2070  faults.        p
│ │ │ +001dfca0: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ +001dfcb0: 7473 3d24 2867 7265 7020 2224 6d6f 756e  ts=$(grep "$moun
│ │ │ +001dfcc0: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ +001dfcd0: 6765 7870 2220 2f65 7463 2f6d 7461 6220  gexp" /etc/mtab 
│ │ │ +001dfce0: 7c20 6865 6164 202d 3120 7c20 2061 776b  | head -1 |  awk
│ │ │ +001dfcf0: 2027 7b70 7269 6e74 2024 347d 2720 5c0a   '{print $4}' \.
│ │ │ +001dfd00: 2020 2020 2020 2020 2020 2020 2020 2020                  
│ │ │ +001dfd10: 2020 2020 7c20 7365 6420 2d45 2022 732f      | sed -E "s/
│ │ │ +001dfd20: 2872 777c 6465 6661 756c 7473 7c73 6563  (rw|defaults|sec
│ │ │ +001dfd30: 6c61 6265 6c7c 6e6f 7375 6964 2928 2c7c  label|nosuid)(,|
│ │ │ +001dfd40: 2429 2f2f 673b 732f 2c24 2f2f 2229 0a20  $)//g;s/,$//"). 
│ │ │ +001dfd50: 2020 2020 2020 205b 2022 2470 7265 7669         [ "$previ
│ │ │ +001dfd60: 6f75 735f 6d6f 756e 745f 6f70 7473 2220  ous_mount_opts" 
│ │ │ +001dfd70: 5d20 2661 6d70 3b26 616d 703b 2070 7265  ] && pre
│ │ │ +001dfd80: 7669 6f75 735f 6d6f 756e 745f 6f70 7473  vious_mount_opts
│ │ │ +001dfd90: 2b3d 222c 220a 2020 2020 2020 2020 2320  +=",".        # 
│ │ │ +001dfda0: 496e 2069 736f 3936 3630 2066 696c 6573  In iso9660 files
│ │ │ +001dfdb0: 7973 7465 6d73 206d 7461 6220 636f 756c  ystems mtab coul
│ │ │ +001dfdc0: 6420 6465 7363 7269 6265 2061 2022 626c  d describe a "bl
│ │ │ +001dfdd0: 6f63 6b73 697a 6522 2076 616c 7565 2c20  ocksize" value, 
│ │ │ +001dfde0: 7468 6973 2073 686f 756c 6420 6265 2072  this should be r
│ │ │ +001dfdf0: 6566 6c65 6374 6564 2069 6e0a 2020 2020  eflected in.    
│ │ │ +001dfe00: 2020 2020 2320 6673 7461 6220 6173 2022      # fstab as "
│ │ │ +001dfe10: 626c 6f63 6b22 2e20 2054 6865 206e 6578  block".  The nex
│ │ │ +001dfe20: 7420 7661 7269 6162 6c65 2069 7320 746f  t variable is to
│ │ │ +001dfe30: 2073 6174 6973 6679 2073 6865 6c6c 6368   satisfy shellch
│ │ │ +001dfe40: 6563 6b20 5343 3230 3530 2e0a 2020 2020  eck SC2050..    
│ │ │ +001dfe50: 2020 2020 6673 5f74 7970 653d 2222 0a20      fs_type="". 
│ │ │ +001dfe60: 2020 2020 2020 2069 6620 5b20 2022 2466         if [  "$f
│ │ │ +001dfe70: 735f 7479 7065 2220 3d3d 2022 6973 6f39  s_type" == "iso9
│ │ │ +001dfe80: 3636 3022 205d 203b 2074 6865 6e0a 2020  660" ] ; then.  
│ │ │ +001dfe90: 2020 2020 2020 2020 2020 7072 6576 696f            previo
│ │ │ +001dfea0: 7573 5f6d 6f75 6e74 5f6f 7074 733d 2428  us_mount_opts=$(
│ │ │ +001dfeb0: 7365 6420 2773 2f62 6c6f 636b 7369 7a65  sed 's/blocksize
│ │ │ +001dfec0: 3d2f 626c 6f63 6b3d 2f27 2026 6c74 3b26  =/block=/' <&
│ │ │ +001dfed0: 6c74 3b26 6c74 3b20 2224 7072 6576 696f  lt;< "$previo
│ │ │ +001dfee0: 7573 5f6d 6f75 6e74 5f6f 7074 7322 290a  us_mount_opts").
│ │ │ +001dfef0: 2020 2020 2020 2020 6669 0a20 2020 2020          fi.     
│ │ │ +001dff00: 2020 2065 6368 6f20 2220 2f76 6172 2020     echo " /var  
│ │ │ +001dff10: 6465 6661 756c 7473 2c24 7b70 7265 7669  defaults,${previ
│ │ │ +001dff20: 6f75 735f 6d6f 756e 745f 6f70 7473 7d6e  ous_mount_opts}n
│ │ │ +001dff30: 6f73 7569 6420 3020 3022 2026 6774 3b26  osuid 0 0" >&
│ │ │ +001dff40: 6774 3b20 2f65 7463 2f66 7374 6162 0a20  gt; /etc/fstab. 
│ │ │ +001dff50: 2020 2023 2049 6620 7468 6520 6d6f 756e     # If the moun
│ │ │ +001dff60: 745f 6f70 7420 6f70 7469 6f6e 2069 7320  t_opt option is 
│ │ │ +001dff70: 6e6f 7420 616c 7265 6164 7920 696e 2074  not already in t
│ │ │ +001dff80: 6865 206d 6f75 6e74 2070 6f69 6e74 2773  he mount point's
│ │ │ +001dff90: 202f 6574 632f 6673 7461 6220 656e 7472   /etc/fstab entr
│ │ │ +001dffa0: 792c 2061 6464 2069 740a 2020 2020 656c  y, add it.    el
│ │ │ +001dffb0: 6966 2021 2067 7265 7020 2224 6d6f 756e  if ! grep "$moun
│ │ │ +001dffc0: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ +001dffd0: 6765 7870 2220 2f65 7463 2f66 7374 6162  gexp" /etc/fstab
│ │ │ +001dffe0: 207c 2067 7265 7020 2d71 2022 6e6f 7375   | grep -q "nosu
│ │ │ +001dfff0: 6964 223b 2074 6865 6e0a 2020 2020 2020  id"; then.      
│ │ │ +001e0000: 2020 7072 6576 696f 7573 5f6d 6f75 6e74    previous_mount
│ │ │ +001e0010: 5f6f 7074 733d 2428 6772 6570 2022 246d  _opts=$(grep "$m
│ │ │ +001e0020: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ +001e0030: 5f72 6567 6578 7022 202f 6574 632f 6673  _regexp" /etc/fs
│ │ │ +001e0040: 7461 6220 7c20 6177 6b20 277b 7072 696e  tab | awk '{prin
│ │ │ +001e0050: 7420 2434 7d27 290a 2020 2020 2020 2020  t $4}').        
│ │ │ +001e0060: 7365 6420 2d69 2022 737c 5c28 247b 6d6f  sed -i "s|\(${mo
│ │ │ +001e0070: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ +001e0080: 7265 6765 7870 7d2e 2a24 7b70 7265 7669  regexp}.*${previ
│ │ │ +001e0090: 6f75 735f 6d6f 756e 745f 6f70 7473 7d5c  ous_mount_opts}\
│ │ │ +001e00a0: 297c 5c31 2c6e 6f73 7569 647c 2220 2f65  )|\1,nosuid|" /e
│ │ │ +001e00b0: 7463 2f66 7374 6162 0a20 2020 2066 690a  tc/fstab.    fi.
│ │ │ +001e00c0: 0a0a 2020 2020 6966 206d 6b64 6972 202d  ..    if mkdir -
│ │ │ +001e00d0: 7020 222f 7661 7222 3b20 7468 656e 0a20  p "/var"; then. 
│ │ │ +001e00e0: 2020 2020 2020 2069 6620 6d6f 756e 7470         if mountp
│ │ │ +001e00f0: 6f69 6e74 202d 7120 222f 7661 7222 3b20  oint -q "/var"; 
│ │ │ +001e0100: 7468 656e 0a20 2020 2020 2020 2020 2020  then.           
│ │ │ +001e0110: 206d 6f75 6e74 202d 6f20 7265 6d6f 756e   mount -o remoun
│ │ │ +001e0120: 7420 2d2d 7461 7267 6574 2022 2f76 6172  t --target "/var
│ │ │ +001e0130: 220a 2020 2020 2020 2020 6669 0a20 2020  ".        fi.   
│ │ │ +001e0140: 2066 690a 7d0a 0a70 6572 666f 726d 5f72   fi.}..perform_r
│ │ │ +001e0150: 656d 6564 6961 7469 6f6e 0a0a 656c 7365  emediation..else
│ │ │ +001e0160: 0a20 2020 2026 6774 3b26 616d 703b 3220  .    >&2 
│ │ │ +001e0170: 6563 686f 2027 5265 6d65 6469 6174 696f  echo 'Remediatio
│ │ │ +001e0180: 6e20 6973 206e 6f74 2061 7070 6c69 6361  n is not applica
│ │ │ +001e0190: 626c 652c 206e 6f74 6869 6e67 2077 6173  ble, nothing was
│ │ │ +001e01a0: 2064 6f6e 6527 0a66 690a 3c2f 636f 6465   done'.fi.
Remedi │ │ │ +001e0260: 6174 696f 6e20 416e 6163 6f6e 6461 2073 ation Anaconda s │ │ │ +001e0270: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
R │ │ │ +001df700: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +001df710: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c2f alse
Comp │ │ │ +001e0300: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +001e0310: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ +001e0330: 3c2f 7468 3e3c 7464 3e68 6967 683c 2f74 high
R │ │ │ +001e0350: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +001e0360: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ +001e0380: 2f74 683e 3c74 643e 656e 6162 6c65 3c2f /th>enable
│ │ │ +001e03a0: 3c70 7265 3e3c 636f 6465 3e0a 7061 7274
.part
│ │ │ +001e03b0: 202f 7661 7220 2d2d 6d6f 756e 746f 7074   /var --mountopt
│ │ │ +001e03c0: 696f 6e73 3d22 6e6f 7375 6964 220a 3c2f  ions="nosuid".
Remediatio │ │ │ -001e0d90: 6e20 416e 6163 6f6e 6461 2073 6e69 7070 n Anaconda snipp │ │ │ -001e0da0: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ -001e0e20: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ -001e0e30: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -001e0e40: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:highReboo │ │ │ -001e0e80: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -001e0e90: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ -001e0eb0: 3c74 643e 656e 6162 6c65 3c2f 7464 3e3c enable< │ │ │ -001e0ec0: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
.part /va
│ │ │ -001e0ee0: 722f 746d 7020 2d2d 6d6f 756e 746f 7074  r/tmp --mountopt
│ │ │ -001e0ef0: 696f 6e73 3d22 6e6f 6465 7622 0a3c 2f63  ions="nodev".
│ │ │ -001e0f10: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ -001e0fb0: 6564 6961 7469 6f6e 2041 6e73 6962 6c65 ediation Ansible │ │ │ -001e0fc0: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -001e0fd0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ -001e1070: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr> │ │ │ -001e10c0: 3c74 723e 3c74 683e 5374 7261 7465 6779

│ │ │ -001e1100: 2d20 6e61 6d65 3a20 4761 7468 6572 2074  - name: Gather t
│ │ │ -001e1110: 6865 2070 6163 6b61 6765 2066 6163 7473  he package facts
│ │ │ -001e1120: 0a20 2070 6163 6b61 6765 5f66 6163 7473  .  package_facts
│ │ │ -001e1130: 3a0a 2020 2020 6d61 6e61 6765 723a 2061  :.    manager: a
│ │ │ -001e1140: 7574 6f0a 2020 7461 6773 3a0a 2020 2d20  uto.  tags:.  - 
│ │ │ -001e1150: 636f 6e66 6967 7572 655f 7374 7261 7465  configure_strate
│ │ │ -001e1160: 6779 0a20 202d 2068 6967 685f 6469 7372  gy.  - high_disr
│ │ │ -001e1170: 7570 7469 6f6e 0a20 202d 206c 6f77 5f63  uption.  - low_c
│ │ │ -001e1180: 6f6d 706c 6578 6974 790a 2020 2d20 6d65  omplexity.  - me
│ │ │ -001e1190: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ -001e11a0: 2d20 6d6f 756e 745f 6f70 7469 6f6e 5f76  - mount_option_v
│ │ │ -001e11b0: 6172 5f74 6d70 5f6e 6f64 6576 0a20 202d  ar_tmp_nodev.  -
│ │ │ -001e11c0: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ -001e11d0: 640a 0a2d 206e 616d 653a 2027 4164 6420  d..- name: 'Add 
│ │ │ -001e11e0: 6e6f 6465 7620 4f70 7469 6f6e 2074 6f20  nodev Option to 
│ │ │ -001e11f0: 2f76 6172 2f74 6d70 3a20 4368 6563 6b20  /var/tmp: Check 
│ │ │ -001e1200: 696e 666f 726d 6174 696f 6e20 6173 736f  information asso
│ │ │ -001e1210: 6369 6174 6564 2074 6f20 6d6f 756e 7470  ciated to mountp
│ │ │ -001e1220: 6f69 6e74 270a 2020 616e 7369 626c 652e  oint'.  ansible.
│ │ │ -001e1230: 6275 696c 7469 6e2e 636f 6d6d 616e 643a  builtin.command:
│ │ │ -001e1240: 2066 696e 646d 6e74 202d 2d66 7374 6162   findmnt --fstab
│ │ │ -001e1250: 2027 2f76 6172 2f74 6d70 270a 2020 7265   '/var/tmp'.  re
│ │ │ -001e1260: 6769 7374 6572 3a20 6465 7669 6365 5f6e  gister: device_n
│ │ │ -001e1270: 616d 650a 2020 6661 696c 6564 5f77 6865  ame.  failed_whe
│ │ │ -001e1280: 6e3a 2064 6576 6963 655f 6e61 6d65 2e72  n: device_name.r
│ │ │ -001e1290: 6320 2667 743b 2031 0a20 2063 6861 6e67  c > 1.  chang
│ │ │ -001e12a0: 6564 5f77 6865 6e3a 2066 616c 7365 0a20  ed_when: false. 
│ │ │ -001e12b0: 2063 6865 636b 5f6d 6f64 653a 2066 616c   check_mode: fal
│ │ │ -001e12c0: 7365 0a20 2077 6865 6e3a 0a20 202d 2028  se.  when:.  - (
│ │ │ -001e12d0: 206e 6f74 2028 2022 6b65 726e 656c 2220   not ( "kernel" 
│ │ │ -001e12e0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001e12f0: 2e70 6163 6b61 6765 7320 616e 6420 2262  .packages and "b
│ │ │ -001e1300: 6f6f 7463 2220 696e 2061 6e73 6962 6c65  ootc" in ansible
│ │ │ -001e1310: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ -001e1320: 2020 2020 616e 6420 6e6f 7420 226f 7065      and not "ope
│ │ │ -001e1330: 6e73 6869 6674 2d6b 7562 656c 6574 2220  nshift-kubelet" 
│ │ │ -001e1340: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001e1350: 2e70 6163 6b61 6765 7320 616e 6420 226f  .packages and "o
│ │ │ -001e1360: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ -001e1370: 655f 7072 6f63 5f63 6d64 6c69 6e65 0a20  e_proc_cmdline. 
│ │ │ -001e1380: 2020 2029 2061 6e64 206e 6f74 2028 2061     ) and not ( a
│ │ │ -001e1390: 6e73 6962 6c65 5f76 6972 7475 616c 697a  nsible_virtualiz
│ │ │ -001e13a0: 6174 696f 6e5f 7479 7065 2069 6e20 5b22  ation_type in ["
│ │ │ -001e13b0: 646f 636b 6572 222c 2022 6c78 6322 2c20  docker", "lxc", 
│ │ │ -001e13c0: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61  "openvz", "podma
│ │ │ -001e13d0: 6e22 2c0a 2020 2020 2263 6f6e 7461 696e  n",.    "contain
│ │ │ -001e13e0: 6572 225d 2029 2029 0a20 202d 2027 222f  er"] ) ).  - '"/
│ │ │ -001e13f0: 7661 722f 746d 7022 2069 6e20 616e 7369  var/tmp" in ansi
│ │ │ -001e1400: 626c 655f 6d6f 756e 7473 207c 206d 6170  ble_mounts | map
│ │ │ -001e1410: 2861 7474 7269 6275 7465 3d22 6d6f 756e  (attribute="moun
│ │ │ -001e1420: 7422 2920 7c20 6c69 7374 270a 2020 7461  t") | list'.  ta
│ │ │ -001e1430: 6773 3a0a 2020 2d20 636f 6e66 6967 7572  gs:.  - configur
│ │ │ -001e1440: 655f 7374 7261 7465 6779 0a20 202d 2068  e_strategy.  - h
│ │ │ -001e1450: 6967 685f 6469 7372 7570 7469 6f6e 0a20  igh_disruption. 
│ │ │ -001e1460: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ -001e1470: 790a 2020 2d20 6d65 6469 756d 5f73 6576  y.  - medium_sev
│ │ │ -001e1480: 6572 6974 790a 2020 2d20 6d6f 756e 745f  erity.  - mount_
│ │ │ -001e1490: 6f70 7469 6f6e 5f76 6172 5f74 6d70 5f6e  option_var_tmp_n
│ │ │ -001e14a0: 6f64 6576 0a20 202d 206e 6f5f 7265 626f  odev.  - no_rebo
│ │ │ -001e14b0: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d  ot_needed..- nam
│ │ │ -001e14c0: 653a 2027 4164 6420 6e6f 6465 7620 4f70  e: 'Add nodev Op
│ │ │ -001e14d0: 7469 6f6e 2074 6f20 2f76 6172 2f74 6d70  tion to /var/tmp
│ │ │ -001e14e0: 3a20 4372 6561 7465 206d 6f75 6e74 5f69  : Create mount_i
│ │ │ -001e14f0: 6e66 6f20 6469 6374 696f 6e61 7279 2076  nfo dictionary v
│ │ │ -001e1500: 6172 6961 626c 6527 0a20 2073 6574 5f66  ariable'.  set_f
│ │ │ -001e1510: 6163 743a 0a20 2020 206d 6f75 6e74 5f69  act:.    mount_i
│ │ │ -001e1520: 6e66 6f3a 2027 7b7b 206d 6f75 6e74 5f69  nfo: '{{ mount_i
│ │ │ -001e1530: 6e66 6f7c 6465 6661 756c 7428 7b7d 297c  nfo|default({})|
│ │ │ -001e1540: 636f 6d62 696e 6528 7b69 7465 6d2e 303a  combine({item.0:
│ │ │ -001e1550: 2069 7465 6d2e 317d 2920 7d7d 270a 2020   item.1}) }}'.  
│ │ │ -001e1560: 7769 7468 5f74 6f67 6574 6865 723a 0a20  with_together:. 
│ │ │ -001e1570: 202d 2027 7b7b 2064 6576 6963 655f 6e61   - '{{ device_na
│ │ │ -001e1580: 6d65 2e73 7464 6f75 745f 6c69 6e65 735b  me.stdout_lines[
│ │ │ -001e1590: 305d 2e73 706c 6974 2829 207c 206d 6170  0].split() | map
│ │ │ -001e15a0: 2827 276c 6f77 6572 2727 2920 7c20 6c69  (''lower'') | li
│ │ │ -001e15b0: 7374 207d 7d27 0a20 202d 2027 7b7b 2064  st }}'.  - '{{ d
│ │ │ -001e15c0: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ -001e15d0: 745f 6c69 6e65 735b 315d 2e73 706c 6974  t_lines[1].split
│ │ │ -001e15e0: 2829 207c 206c 6973 7420 7d7d 270a 2020  () | list }}'.  
│ │ │ -001e15f0: 7768 656e 3a0a 2020 2d20 2820 6e6f 7420  when:.  - ( not 
│ │ │ -001e1600: 2820 226b 6572 6e65 6c22 2069 6e20 616e  ( "kernel" in an
│ │ │ -001e1610: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001e1620: 6167 6573 2061 6e64 2022 626f 6f74 6322  ages and "bootc"
│ │ │ -001e1630: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001e1640: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ -001e1650: 6e64 206e 6f74 2022 6f70 656e 7368 6966  nd not "openshif
│ │ │ -001e1660: 742d 6b75 6265 6c65 7422 2069 6e20 616e  t-kubelet" in an
│ │ │ -001e1670: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001e1680: 6167 6573 2061 6e64 2022 6f73 7472 6565  ages and "ostree
│ │ │ -001e1690: 2220 696e 2061 6e73 6962 6c65 5f70 726f  " in ansible_pro
│ │ │ -001e16a0: 635f 636d 646c 696e 650a 2020 2020 2920  c_cmdline.    ) 
│ │ │ -001e16b0: 616e 6420 6e6f 7420 2820 616e 7369 626c  and not ( ansibl
│ │ │ -001e16c0: 655f 7669 7274 7561 6c69 7a61 7469 6f6e  e_virtualization
│ │ │ -001e16d0: 5f74 7970 6520 696e 205b 2264 6f63 6b65  _type in ["docke
│ │ │ -001e16e0: 7222 2c20 226c 7863 222c 2022 6f70 656e  r", "lxc", "open
│ │ │ -001e16f0: 767a 222c 2022 706f 646d 616e 222c 0a20  vz", "podman",. 
│ │ │ -001e1700: 2020 2022 636f 6e74 6169 6e65 7222 5d20     "container"] 
│ │ │ -001e1710: 2920 290a 2020 2d20 2722 2f76 6172 2f74  ) ).  - '"/var/t
│ │ │ -001e1720: 6d70 2220 696e 2061 6e73 6962 6c65 5f6d  mp" in ansible_m
│ │ │ -001e1730: 6f75 6e74 7320 7c20 6d61 7028 6174 7472  ounts | map(attr
│ │ │ -001e1740: 6962 7574 653d 226d 6f75 6e74 2229 207c  ibute="mount") |
│ │ │ -001e1750: 206c 6973 7427 0a20 202d 2064 6576 6963   list'.  - devic
│ │ │ -001e1760: 655f 6e61 6d65 2e73 7464 6f75 7420 6973  e_name.stdout is
│ │ │ -001e1770: 2064 6566 696e 6564 2061 6e64 2064 6576   defined and dev
│ │ │ -001e1780: 6963 655f 6e61 6d65 2e73 7464 6f75 745f  ice_name.stdout_
│ │ │ -001e1790: 6c69 6e65 7320 6973 2064 6566 696e 6564  lines is defined
│ │ │ -001e17a0: 0a20 202d 2028 6465 7669 6365 5f6e 616d  .  - (device_nam
│ │ │ -001e17b0: 652e 7374 646f 7574 207c 206c 656e 6774  e.stdout | lengt
│ │ │ -001e17c0: 6820 2667 743b 2030 290a 2020 7461 6773  h > 0).  tags
│ │ │ -001e17d0: 3a0a 2020 2d20 636f 6e66 6967 7572 655f  :.  - configure_
│ │ │ -001e17e0: 7374 7261 7465 6779 0a20 202d 2068 6967  strategy.  - hig
│ │ │ -001e17f0: 685f 6469 7372 7570 7469 6f6e 0a20 202d  h_disruption.  -
│ │ │ -001e1800: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ -001e1810: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ -001e1820: 6974 790a 2020 2d20 6d6f 756e 745f 6f70  ity.  - mount_op
│ │ │ -001e1830: 7469 6f6e 5f76 6172 5f74 6d70 5f6e 6f64  tion_var_tmp_nod
│ │ │ -001e1840: 6576 0a20 202d 206e 6f5f 7265 626f 6f74  ev.  - no_reboot
│ │ │ -001e1850: 5f6e 6565 6465 640a 0a2d 206e 616d 653a  _needed..- name:
│ │ │ -001e1860: 2027 4164 6420 6e6f 6465 7620 4f70 7469   'Add nodev Opti
│ │ │ -001e1870: 6f6e 2074 6f20 2f76 6172 2f74 6d70 3a20  on to /var/tmp: 
│ │ │ -001e1880: 4966 202f 7661 722f 746d 7020 6e6f 7420  If /var/tmp not 
│ │ │ -001e1890: 6d6f 756e 7465 642c 2063 7261 6674 206d  mounted, craft m
│ │ │ -001e18a0: 6f75 6e74 5f69 6e66 6f20 6d61 6e75 616c  ount_info manual
│ │ │ -001e18b0: 6c79 270a 2020 7365 745f 6661 6374 3a0a  ly'.  set_fact:.
│ │ │ -001e18c0: 2020 2020 6d6f 756e 745f 696e 666f 3a20      mount_info: 
│ │ │ -001e18d0: 277b 7b20 6d6f 756e 745f 696e 666f 7c64  '{{ mount_info|d
│ │ │ -001e18e0: 6566 6175 6c74 287b 7d29 7c63 6f6d 6269  efault({})|combi
│ │ │ -001e18f0: 6e65 287b 6974 656d 2e30 3a20 6974 656d  ne({item.0: item
│ │ │ -001e1900: 2e31 7d29 207d 7d27 0a20 2077 6974 685f  .1}) }}'.  with_
│ │ │ -001e1910: 746f 6765 7468 6572 3a0a 2020 2d20 2d20  together:.  - - 
│ │ │ -001e1920: 7461 7267 6574 0a20 2020 202d 2073 6f75  target.    - sou
│ │ │ -001e1930: 7263 650a 2020 2020 2d20 6673 7479 7065  rce.    - fstype
│ │ │ -001e1940: 0a20 2020 202d 206f 7074 696f 6e73 0a20  .    - options. 
│ │ │ -001e1950: 202d 202d 202f 7661 722f 746d 700a 2020   - - /var/tmp.  
│ │ │ -001e1960: 2020 2d20 2727 0a20 2020 202d 2027 270a    - ''.    - ''.
│ │ │ -001e1970: 2020 2020 2d20 6465 6661 756c 7473 0a20      - defaults. 
│ │ │ -001e1980: 2077 6865 6e3a 0a20 202d 2028 206e 6f74   when:.  - ( not
│ │ │ -001e1990: 2028 2022 6b65 726e 656c 2220 696e 2061   ( "kernel" in a
│ │ │ -001e19a0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001e19b0: 6b61 6765 7320 616e 6420 2262 6f6f 7463  kages and "bootc
│ │ │ -001e19c0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001e19d0: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ -001e19e0: 616e 6420 6e6f 7420 226f 7065 6e73 6869  and not "openshi
│ │ │ -001e19f0: 6674 2d6b 7562 656c 6574 2220 696e 2061  ft-kubelet" in a
│ │ │ -001e1a00: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001e1a10: 6b61 6765 7320 616e 6420 226f 7374 7265  kages and "ostre
│ │ │ -001e1a20: 6522 2069 6e20 616e 7369 626c 655f 7072  e" in ansible_pr
│ │ │ -001e1a30: 6f63 5f63 6d64 6c69 6e65 0a20 2020 2029  oc_cmdline.    )
│ │ │ -001e1a40: 2061 6e64 206e 6f74 2028 2061 6e73 6962   and not ( ansib
│ │ │ -001e1a50: 6c65 5f76 6972 7475 616c 697a 6174 696f  le_virtualizatio
│ │ │ -001e1a60: 6e5f 7479 7065 2069 6e20 5b22 646f 636b  n_type in ["dock
│ │ │ -001e1a70: 6572 222c 2022 6c78 6322 2c20 226f 7065  er", "lxc", "ope
│ │ │ -001e1a80: 6e76 7a22 2c20 2270 6f64 6d61 6e22 2c0a  nvz", "podman",.
│ │ │ -001e1a90: 2020 2020 2263 6f6e 7461 696e 6572 225d      "container"]
│ │ │ -001e1aa0: 2029 2029 0a20 202d 2027 222f 7661 722f   ) ).  - '"/var/
│ │ │ -001e1ab0: 746d 7022 2069 6e20 616e 7369 626c 655f  tmp" in ansible_
│ │ │ -001e1ac0: 6d6f 756e 7473 207c 206d 6170 2861 7474  mounts | map(att
│ │ │ -001e1ad0: 7269 6275 7465 3d22 6d6f 756e 7422 2920  ribute="mount") 
│ │ │ -001e1ae0: 7c20 6c69 7374 270a 2020 2d20 2822 2d2d  | list'.  - ("--
│ │ │ -001e1af0: 6673 7461 6222 207c 206c 656e 6774 6820  fstab" | length 
│ │ │ -001e1b00: 3d3d 2030 290a 2020 2d20 6465 7669 6365  == 0).  - device
│ │ │ -001e1b10: 5f6e 616d 652e 7374 646f 7574 2069 7320  _name.stdout is 
│ │ │ -001e1b20: 6465 6669 6e65 6420 616e 6420 6465 7669  defined and devi
│ │ │ -001e1b30: 6365 5f6e 616d 652e 7374 646f 7574 5f6c  ce_name.stdout_l
│ │ │ -001e1b40: 696e 6573 2069 7320 6465 6669 6e65 640a  ines is defined.
│ │ │ -001e1b50: 2020 2d20 2864 6576 6963 655f 6e61 6d65    - (device_name
│ │ │ -001e1b60: 2e73 7464 6f75 7420 7c20 6c65 6e67 7468  .stdout | length
│ │ │ -001e1b70: 203d 3d20 3029 0a20 2074 6167 733a 0a20   == 0).  tags:. 
│ │ │ -001e1b80: 202d 2063 6f6e 6669 6775 7265 5f73 7472   - configure_str
│ │ │ -001e1b90: 6174 6567 790a 2020 2d20 6869 6768 5f64  ategy.  - high_d
│ │ │ -001e1ba0: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ -001e1bb0: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ -001e1bc0: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ -001e1bd0: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f  .  - mount_optio
│ │ │ -001e1be0: 6e5f 7661 725f 746d 705f 6e6f 6465 760a  n_var_tmp_nodev.
│ │ │ -001e1bf0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ -001e1c00: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741  eded..- name: 'A
│ │ │ -001e1c10: 6464 206e 6f64 6576 204f 7074 696f 6e20  dd nodev Option 
│ │ │ -001e1c20: 746f 202f 7661 722f 746d 703a 204d 616b  to /var/tmp: Mak
│ │ │ -001e1c30: 6520 7375 7265 206e 6f64 6576 206f 7074  e sure nodev opt
│ │ │ -001e1c40: 696f 6e20 6973 2070 6172 7420 6f66 2074  ion is part of t
│ │ │ -001e1c50: 6865 2074 6f20 2f76 6172 2f74 6d70 0a20  he to /var/tmp. 
│ │ │ -001e1c60: 2020 206f 7074 696f 6e73 270a 2020 7365     options'.  se
│ │ │ -001e1c70: 745f 6661 6374 3a0a 2020 2020 6d6f 756e  t_fact:.    moun
│ │ │ -001e1c80: 745f 696e 666f 3a20 277b 7b20 6d6f 756e  t_info: '{{ moun
│ │ │ -001e1c90: 745f 696e 666f 207c 2063 6f6d 6269 6e65  t_info | combine
│ │ │ -001e1ca0: 2820 7b27 276f 7074 696f 6e73 2727 3a27  ( {''options'':'
│ │ │ -001e1cb0: 2727 277e 286d 6f75 6e74 5f69 6e66 6f2e  '''~(mount_info.
│ │ │ -001e1cc0: 6f70 7469 6f6e 7320 7c0a 2020 2020 2020  options |.      
│ │ │ -001e1cd0: 6465 6661 756c 7428 2727 2727 2929 7e28  default(''''))~(
│ │ │ -001e1ce0: 2727 2c27 2720 6966 2028 6d6f 756e 745f  '','' if (mount_
│ │ │ -001e1cf0: 696e 666f 2e6f 7074 696f 6e73 207c 2064  info.options | d
│ │ │ -001e1d00: 6566 6175 6c74 2827 2727 2729 2920 656c  efault('''')) el
│ │ │ -001e1d10: 7365 2027 2727 2729 7e27 276e 6f64 6576  se '''')~''nodev
│ │ │ -001e1d20: 2727 0a20 2020 2020 207d 2920 7d7d 270a  ''.      }) }}'.
│ │ │ -001e1d30: 2020 7768 656e 3a0a 2020 2d20 2820 6e6f    when:.  - ( no
│ │ │ -001e1d40: 7420 2820 226b 6572 6e65 6c22 2069 6e20  t ( "kernel" in 
│ │ │ -001e1d50: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001e1d60: 636b 6167 6573 2061 6e64 2022 626f 6f74  ckages and "boot
│ │ │ -001e1d70: 6322 2069 6e20 616e 7369 626c 655f 6661  c" in ansible_fa
│ │ │ -001e1d80: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ -001e1d90: 2061 6e64 206e 6f74 2022 6f70 656e 7368   and not "opensh
│ │ │ -001e1da0: 6966 742d 6b75 6265 6c65 7422 2069 6e20  ift-kubelet" in 
│ │ │ -001e1db0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001e1dc0: 636b 6167 6573 2061 6e64 2022 6f73 7472  ckages and "ostr
│ │ │ -001e1dd0: 6565 2220 696e 2061 6e73 6962 6c65 5f70  ee" in ansible_p
│ │ │ -001e1de0: 726f 635f 636d 646c 696e 650a 2020 2020  roc_cmdline.    
│ │ │ -001e1df0: 2920 616e 6420 6e6f 7420 2820 616e 7369  ) and not ( ansi
│ │ │ -001e1e00: 626c 655f 7669 7274 7561 6c69 7a61 7469  ble_virtualizati
│ │ │ -001e1e10: 6f6e 5f74 7970 6520 696e 205b 2264 6f63  on_type in ["doc
│ │ │ -001e1e20: 6b65 7222 2c20 226c 7863 222c 2022 6f70  ker", "lxc", "op
│ │ │ -001e1e30: 656e 767a 222c 2022 706f 646d 616e 222c  envz", "podman",
│ │ │ -001e1e40: 0a20 2020 2022 636f 6e74 6169 6e65 7222  .    "container"
│ │ │ -001e1e50: 5d20 2920 290a 2020 2d20 2722 2f76 6172  ] ) ).  - '"/var
│ │ │ -001e1e60: 2f74 6d70 2220 696e 2061 6e73 6962 6c65  /tmp" in ansible
│ │ │ -001e1e70: 5f6d 6f75 6e74 7320 7c20 6d61 7028 6174  _mounts | map(at
│ │ │ -001e1e80: 7472 6962 7574 653d 226d 6f75 6e74 2229  tribute="mount")
│ │ │ -001e1e90: 207c 206c 6973 7427 0a20 202d 206d 6f75   | list'.  - mou
│ │ │ -001e1ea0: 6e74 5f69 6e66 6f20 6973 2064 6566 696e  nt_info is defin
│ │ │ -001e1eb0: 6564 2061 6e64 2022 6e6f 6465 7622 206e  ed and "nodev" n
│ │ │ -001e1ec0: 6f74 2069 6e20 286d 6f75 6e74 5f69 6e66  ot in (mount_inf
│ │ │ -001e1ed0: 6f2e 6f70 7469 6f6e 7320 7c20 6465 6661  o.options | defa
│ │ │ -001e1ee0: 756c 7428 2727 2929 0a20 2074 6167 733a  ult('')).  tags:
│ │ │ -001e1ef0: 0a20 202d 2063 6f6e 6669 6775 7265 5f73  .  - configure_s
│ │ │ -001e1f00: 7472 6174 6567 790a 2020 2d20 6869 6768  trategy.  - high
│ │ │ -001e1f10: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ -001e1f20: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ -001e1f30: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ -001e1f40: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074  ty.  - mount_opt
│ │ │ -001e1f50: 696f 6e5f 7661 725f 746d 705f 6e6f 6465  ion_var_tmp_node
│ │ │ -001e1f60: 760a 2020 2d20 6e6f 5f72 6562 6f6f 745f  v.  - no_reboot_
│ │ │ -001e1f70: 6e65 6564 6564 0a0a 2d20 6e61 6d65 3a20  needed..- name: 
│ │ │ -001e1f80: 2741 6464 206e 6f64 6576 204f 7074 696f  'Add nodev Optio
│ │ │ -001e1f90: 6e20 746f 202f 7661 722f 746d 703a 2045  n to /var/tmp: E
│ │ │ -001e1fa0: 6e73 7572 6520 2f76 6172 2f74 6d70 2069  nsure /var/tmp i
│ │ │ -001e1fb0: 7320 6d6f 756e 7465 6420 7769 7468 206e  s mounted with n
│ │ │ -001e1fc0: 6f64 6576 206f 7074 696f 6e27 0a20 2061  odev option'.  a
│ │ │ -001e1fd0: 6e73 6962 6c65 2e70 6f73 6978 2e6d 6f75  nsible.posix.mou
│ │ │ -001e1fe0: 6e74 3a0a 2020 2020 7061 7468 3a20 2f76  nt:.    path: /v
│ │ │ -001e1ff0: 6172 2f74 6d70 0a20 2020 2073 7263 3a20  ar/tmp.    src: 
│ │ │ -001e2000: 277b 7b20 6d6f 756e 745f 696e 666f 2e73  '{{ mount_info.s
│ │ │ -001e2010: 6f75 7263 6520 7c20 6465 6661 756c 7428  ource | default(
│ │ │ -001e2020: 2727 2727 2920 7d7d 270a 2020 2020 6f70  '''') }}'.    op
│ │ │ -001e2030: 7473 3a20 277b 7b20 6d6f 756e 745f 696e  ts: '{{ mount_in
│ │ │ -001e2040: 666f 2e6f 7074 696f 6e73 207c 2064 6566  fo.options | def
│ │ │ -001e2050: 6175 6c74 2827 2727 2729 207d 7d27 0a20  ault('''') }}'. 
│ │ │ -001e2060: 2020 2073 7461 7465 3a20 6d6f 756e 7465     state: mounte
│ │ │ -001e2070: 640a 2020 2020 6673 7479 7065 3a20 277b  d.    fstype: '{
│ │ │ -001e2080: 7b20 6d6f 756e 745f 696e 666f 2e66 7374  { mount_info.fst
│ │ │ -001e2090: 7970 6520 7c20 6465 6661 756c 7428 2727  ype | default(''
│ │ │ -001e20a0: 2727 2920 7d7d 270a 2020 7265 6769 7374  '') }}'.  regist
│ │ │ -001e20b0: 6572 3a20 6d6f 756e 745f 7265 7375 6c74  er: mount_result
│ │ │ -001e20c0: 0a20 2066 6169 6c65 645f 7768 656e 3a0a  .  failed_when:.
│ │ │ -001e20d0: 2020 2d20 6d6f 756e 745f 7265 7375 6c74    - mount_result
│ │ │ -001e20e0: 2069 7320 6661 696c 6564 0a20 202d 2027   is failed.  - '
│ │ │ -001e20f0: 2727 7461 7267 6574 2069 7320 6275 7379  ''target is busy
│ │ │ -001e2100: 2727 206e 6f74 2069 6e20 286d 6f75 6e74  '' not in (mount
│ │ │ -001e2110: 5f72 6573 756c 742e 6d73 6720 7c20 6465  _result.msg | de
│ │ │ -001e2120: 6661 756c 7428 2727 2727 2929 270a 2020  fault(''''))'.  
│ │ │ -001e2130: 2d20 2727 2761 6c72 6561 6479 206d 6f75  - '''already mou
│ │ │ -001e2140: 6e74 6564 2727 206e 6f74 2069 6e20 286d  nted'' not in (m
│ │ │ -001e2150: 6f75 6e74 5f72 6573 756c 742e 6d73 6720  ount_result.msg 
│ │ │ -001e2160: 7c20 6465 6661 756c 7428 2727 2727 2929  | default(''''))
│ │ │ -001e2170: 270a 2020 7768 656e 3a0a 2020 2d20 2820  '.  when:.  - ( 
│ │ │ -001e2180: 6e6f 7420 2820 226b 6572 6e65 6c22 2069  not ( "kernel" i
│ │ │ -001e2190: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -001e21a0: 7061 636b 6167 6573 2061 6e64 2022 626f  packages and "bo
│ │ │ -001e21b0: 6f74 6322 2069 6e20 616e 7369 626c 655f  otc" in ansible_
│ │ │ -001e21c0: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ -001e21d0: 2020 2061 6e64 206e 6f74 2022 6f70 656e     and not "open
│ │ │ -001e21e0: 7368 6966 742d 6b75 6265 6c65 7422 2069  shift-kubelet" i
│ │ │ -001e21f0: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -001e2200: 7061 636b 6167 6573 2061 6e64 2022 6f73  packages and "os
│ │ │ -001e2210: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ -001e2220: 5f70 726f 635f 636d 646c 696e 650a 2020  _proc_cmdline.  
│ │ │ -001e2230: 2020 2920 616e 6420 6e6f 7420 2820 616e    ) and not ( an
│ │ │ -001e2240: 7369 626c 655f 7669 7274 7561 6c69 7a61  sible_virtualiza
│ │ │ -001e2250: 7469 6f6e 5f74 7970 6520 696e 205b 2264  tion_type in ["d
│ │ │ -001e2260: 6f63 6b65 7222 2c20 226c 7863 222c 2022  ocker", "lxc", "
│ │ │ -001e2270: 6f70 656e 767a 222c 2022 706f 646d 616e  openvz", "podman
│ │ │ -001e2280: 222c 0a20 2020 2022 636f 6e74 6169 6e65  ",.    "containe
│ │ │ -001e2290: 7222 5d20 2920 290a 2020 2d20 2722 2f76  r"] ) ).  - '"/v
│ │ │ -001e22a0: 6172 2f74 6d70 2220 696e 2061 6e73 6962  ar/tmp" in ansib
│ │ │ -001e22b0: 6c65 5f6d 6f75 6e74 7320 7c20 6d61 7028  le_mounts | map(
│ │ │ -001e22c0: 6174 7472 6962 7574 653d 226d 6f75 6e74  attribute="mount
│ │ │ -001e22d0: 2229 207c 206c 6973 7427 0a20 202d 206d  ") | list'.  - m
│ │ │ -001e22e0: 6f75 6e74 5f69 6e66 6f20 6973 2064 6566  ount_info is def
│ │ │ -001e22f0: 696e 6564 0a20 202d 2028 6465 7669 6365  ined.  - (device
│ │ │ -001e2300: 5f6e 616d 652e 7374 646f 7574 2069 7320  _name.stdout is 
│ │ │ -001e2310: 6465 6669 6e65 6420 616e 6420 2864 6576  defined and (dev
│ │ │ -001e2320: 6963 655f 6e61 6d65 2e73 7464 6f75 7420  ice_name.stdout 
│ │ │ -001e2330: 7c20 6c65 6e67 7468 2026 6774 3b20 3029  | length > 0)
│ │ │ -001e2340: 2920 6f72 2028 222d 2d66 7374 6162 220a  ) or ("--fstab".
│ │ │ -001e2350: 2020 2020 7c20 6c65 6e67 7468 203d 3d20      | length == 
│ │ │ -001e2360: 3029 0a20 2074 6167 733a 0a20 202d 2063  0).  tags:.  - c
│ │ │ -001e2370: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ -001e2380: 790a 2020 2d20 6869 6768 5f64 6973 7275  y.  - high_disru
│ │ │ -001e2390: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f  ption.  - low_co
│ │ │ -001e23a0: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ -001e23b0: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ -001e23c0: 206d 6f75 6e74 5f6f 7074 696f 6e5f 7661   mount_option_va
│ │ │ -001e23d0: 725f 746d 705f 6e6f 6465 760a 2020 2d20  r_tmp_nodev.  - 
│ │ │ -001e23e0: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ -001e23f0: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation She │ │ │ -001e24b0: 6c6c 2073 6372 6970 7420 e287 b23c 2f61 ll script ...
Co │ │ │ -001e1050: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -001e1080: 6e3a 3c2f 7468 3e3c 7464 3e68 6967 683c n:high< │ │ │ -001e1090: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -001e10d0: 3a3c 2f74 683e 3c74 643e 636f 6e66 6967 :config │ │ │ -001e10e0: 7572 653c 2f74 643e 3c2f 7472 3e3c 2f74 ure
# Remediation i
│ │ │ -001e2580: 7320 6170 706c 6963 6162 6c65 206f 6e6c  s applicable onl
│ │ │ -001e2590: 7920 696e 2063 6572 7461 696e 2070 6c61  y in certain pla
│ │ │ -001e25a0: 7466 6f72 6d73 0a69 6620 2820 2120 2820  tforms.if ( ! ( 
│ │ │ -001e25b0: 7b20 7270 6d20 2d2d 7175 6965 7420 2d71  { rpm --quiet -q
│ │ │ -001e25c0: 206b 6572 6e65 6c20 3b7d 2026 616d 703b   kernel ;} &
│ │ │ -001e25d0: 2661 6d70 3b20 7b20 7270 6d20 2d2d 7175  & { rpm --qu
│ │ │ -001e25e0: 6965 7420 2d71 2062 6f6f 7463 203b 7d20  iet -q bootc ;} 
│ │ │ -001e25f0: 2661 6d70 3b26 616d 703b 207b 2021 2072  && { ! r
│ │ │ -001e2600: 706d 202d 2d71 7569 6574 202d 7120 6f70  pm --quiet -q op
│ │ │ -001e2610: 656e 7368 6966 742d 6b75 6265 6c65 7420  enshift-kubelet 
│ │ │ -001e2620: 3b7d 2026 616d 703b 2661 6d70 3b20 285b  ;} && ([
│ │ │ -001e2630: 202d 6620 2f72 756e 2f6f 7374 7265 652d   -f /run/ostree-
│ │ │ -001e2640: 626f 6f74 6564 205d 207c 7c20 5b20 2d4c  booted ] || [ -L
│ │ │ -001e2650: 202f 6f73 7472 6565 205d 2920 2920 2661   /ostree ]) ) &a
│ │ │ -001e2660: 6d70 3b26 616d 703b 2021 2028 205b 202d  mp;& ! ( [ -
│ │ │ -001e2670: 6620 2f2e 646f 636b 6572 656e 7620 5d20  f /.dockerenv ] 
│ │ │ -001e2680: 7c7c 205b 202d 6620 2f72 756e 2f2e 636f  || [ -f /run/.co
│ │ │ -001e2690: 6e74 6169 6e65 7265 6e76 205d 2029 2029  ntainerenv ] ) )
│ │ │ -001e26a0: 2026 616d 703b 2661 6d70 3b20 7b20 2820   && { ( 
│ │ │ -001e26b0: 6669 6e64 6d6e 7420 2d2d 6b65 726e 656c  findmnt --kernel
│ │ │ -001e26c0: 2022 2f76 6172 2f74 6d70 2220 2667 743b   "/var/tmp" >
│ │ │ -001e26d0: 202f 6465 762f 6e75 6c6c 207c 7c20 6669   /dev/null || fi
│ │ │ -001e26e0: 6e64 6d6e 7420 2d2d 6673 7461 6220 222f  ndmnt --fstab "/
│ │ │ -001e26f0: 7661 722f 746d 7022 2026 6774 3b20 2f64  var/tmp" > /d
│ │ │ -001e2700: 6576 2f6e 756c 6c20 293b 207d 3b20 7468  ev/null ); }; th
│ │ │ -001e2710: 656e 0a0a 6675 6e63 7469 6f6e 2070 6572  en..function per
│ │ │ -001e2720: 666f 726d 5f72 656d 6564 6961 7469 6f6e  form_remediation
│ │ │ -001e2730: 207b 0a0a 2020 2020 0a20 2020 2020 2020   {..    .       
│ │ │ -001e2740: 2023 2074 6865 206d 6f75 6e74 2070 6f69   # the mount poi
│ │ │ -001e2750: 6e74 202f 7661 722f 746d 7020 6861 7320  nt /var/tmp has 
│ │ │ -001e2760: 746f 2062 6520 6465 6669 6e65 6420 696e  to be defined in
│ │ │ -001e2770: 202f 6574 632f 6673 7461 620a 2020 2020   /etc/fstab.    
│ │ │ -001e2780: 2020 2020 2320 6265 666f 7265 2074 6869      # before thi
│ │ │ -001e2790: 7320 7265 6d65 6469 6174 696f 6e20 6361  s remediation ca
│ │ │ -001e27a0: 6e20 6265 2065 7865 6375 7465 642e 2049  n be executed. I
│ │ │ -001e27b0: 6e20 6361 7365 2069 7420 6973 206e 6f74  n case it is not
│ │ │ -001e27c0: 2064 6566 696e 6564 2c20 7468 650a 2020   defined, the.  
│ │ │ -001e27d0: 2020 2020 2020 2320 7265 6d65 6469 6174        # remediat
│ │ │ -001e27e0: 696f 6e20 6162 6f72 7473 2061 6e64 206e  ion aborts and n
│ │ │ -001e27f0: 6f20 6368 616e 6765 7320 7265 6761 7264  o changes regard
│ │ │ -001e2800: 696e 6720 7468 6520 6d6f 756e 7420 706f  ing the mount po
│ │ │ -001e2810: 696e 7420 6172 6520 646f 6e65 2e0a 2020  int are done..  
│ │ │ -001e2820: 2020 2020 2020 6d6f 756e 745f 706f 696e        mount_poin
│ │ │ -001e2830: 745f 6d61 7463 685f 7265 6765 7870 3d22  t_match_regexp="
│ │ │ -001e2840: 2428 7072 696e 7466 2022 5e5b 5b3a 7370  $(printf "^[[:sp
│ │ │ -001e2850: 6163 653a 5d5d 2a5b 5e23 5d2e 2a5b 5b3a  ace:]]*[^#].*[[:
│ │ │ -001e2860: 7370 6163 653a 5d5d 2573 5b5b 3a73 7061  space:]]%s[[:spa
│ │ │ -001e2870: 6365 3a5d 5d22 2022 2f76 6172 2f74 6d70  ce:]]" "/var/tmp
│ │ │ -001e2880: 2229 220a 0a20 2020 2067 7265 7020 2224  ")"..    grep "$
│ │ │ -001e2890: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ -001e28a0: 685f 7265 6765 7870 2220 2d71 202f 6574  h_regexp" -q /et
│ │ │ -001e28b0: 632f 6673 7461 6220 5c0a 2020 2020 2020  c/fstab \.      
│ │ │ -001e28c0: 2020 7c7c 207b 2065 6368 6f20 2254 6865    || { echo "The
│ │ │ -001e28d0: 206d 6f75 6e74 2070 6f69 6e74 2027 2f76   mount point '/v
│ │ │ -001e28e0: 6172 2f74 6d70 2720 6973 206e 6f74 2065  ar/tmp' is not e
│ │ │ -001e28f0: 7665 6e20 696e 202f 6574 632f 6673 7461  ven in /etc/fsta
│ │ │ -001e2900: 622c 2073 6f20 7765 2063 616e 2774 2073  b, so we can't s
│ │ │ -001e2910: 6574 2075 7020 6d6f 756e 7420 6f70 7469  et up mount opti
│ │ │ -001e2920: 6f6e 7322 2026 6774 3b26 616d 703b 323b  ons" >&2;
│ │ │ -001e2930: 0a20 2020 2020 2020 2020 2020 2020 2020  .               
│ │ │ -001e2940: 2065 6368 6f20 224e 6f74 2072 656d 6564   echo "Not remed
│ │ │ -001e2950: 6961 7469 6e67 2c20 6265 6361 7573 6520  iating, because 
│ │ │ -001e2960: 7468 6572 6520 6973 206e 6f20 7265 636f  there is no reco
│ │ │ -001e2970: 7264 206f 6620 2f76 6172 2f74 6d70 2069  rd of /var/tmp i
│ │ │ -001e2980: 6e20 2f65 7463 2f66 7374 6162 2220 2667  n /etc/fstab" &g
│ │ │ -001e2990: 743b 2661 6d70 3b32 3b20 7265 7475 726e  t;&2; return
│ │ │ -001e29a0: 2031 3b20 7d0a 2020 2020 0a0a 0a20 2020   1; }.    ...   
│ │ │ -001e29b0: 206d 6f75 6e74 5f70 6f69 6e74 5f6d 6174   mount_point_mat
│ │ │ -001e29c0: 6368 5f72 6567 6578 703d 2224 2870 7269  ch_regexp="$(pri
│ │ │ -001e29d0: 6e74 6620 225e 5b5b 3a73 7061 6365 3a5d  ntf "^[[:space:]
│ │ │ -001e29e0: 5d2a 5b5e 235d 2e2a 5b5b 3a73 7061 6365  ]*[^#].*[[:space
│ │ │ -001e29f0: 3a5d 5d25 735b 5b3a 7370 6163 653a 5d5d  :]]%s[[:space:]]
│ │ │ -001e2a00: 2220 2f76 6172 2f74 6d70 2922 0a0a 2020  " /var/tmp)"..  
│ │ │ -001e2a10: 2020 2320 4966 2074 6865 206d 6f75 6e74    # If the mount
│ │ │ -001e2a20: 2070 6f69 6e74 2069 7320 6e6f 7420 696e   point is not in
│ │ │ -001e2a30: 202f 6574 632f 6673 7461 622c 2067 6574   /etc/fstab, get
│ │ │ -001e2a40: 2070 7265 7669 6f75 7320 6d6f 756e 7420   previous mount 
│ │ │ -001e2a50: 6f70 7469 6f6e 7320 6672 6f6d 202f 6574  options from /et
│ │ │ -001e2a60: 632f 6d74 6162 0a20 2020 2069 6620 2120  c/mtab.    if ! 
│ │ │ -001e2a70: 6772 6570 202d 7120 2224 6d6f 756e 745f  grep -q "$mount_
│ │ │ -001e2a80: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ -001e2a90: 7870 2220 2f65 7463 2f66 7374 6162 3b20  xp" /etc/fstab; 
│ │ │ -001e2aa0: 7468 656e 0a20 2020 2020 2020 2023 2072  then.        # r
│ │ │ -001e2ab0: 756e 7469 6d65 206f 7074 7320 7769 7468  untime opts with
│ │ │ -001e2ac0: 6f75 7420 736f 6d65 2061 7574 6f6d 6174  out some automat
│ │ │ -001e2ad0: 6963 206b 6572 6e65 6c2f 7573 6572 7370  ic kernel/usersp
│ │ │ -001e2ae0: 6163 652d 6164 6465 6420 6465 6661 756c  ace-added defaul
│ │ │ -001e2af0: 7473 0a20 2020 2020 2020 2070 7265 7669  ts.        previ
│ │ │ -001e2b00: 6f75 735f 6d6f 756e 745f 6f70 7473 3d24  ous_mount_opts=$
│ │ │ -001e2b10: 2867 7265 7020 2224 6d6f 756e 745f 706f  (grep "$mount_po
│ │ │ -001e2b20: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ -001e2b30: 2220 2f65 7463 2f6d 7461 6220 7c20 6865  " /etc/mtab | he
│ │ │ -001e2b40: 6164 202d 3120 7c20 2061 776b 2027 7b70  ad -1 |  awk '{p
│ │ │ -001e2b50: 7269 6e74 2024 347d 2720 5c0a 2020 2020  rint $4}' \.    
│ │ │ -001e2b60: 2020 2020 2020 2020 2020 2020 2020 2020                  
│ │ │ -001e2b70: 7c20 7365 6420 2d45 2022 732f 2872 777c  | sed -E "s/(rw|
│ │ │ -001e2b80: 6465 6661 756c 7473 7c73 6563 6c61 6265  defaults|seclabe
│ │ │ -001e2b90: 6c7c 6e6f 6465 7629 282c 7c24 292f 2f67  l|nodev)(,|$)//g
│ │ │ -001e2ba0: 3b73 2f2c 242f 2f22 290a 2020 2020 2020  ;s/,$//").      
│ │ │ -001e2bb0: 2020 5b20 2224 7072 6576 696f 7573 5f6d    [ "$previous_m
│ │ │ -001e2bc0: 6f75 6e74 5f6f 7074 7322 205d 2026 616d  ount_opts" ] &am
│ │ │ -001e2bd0: 703b 2661 6d70 3b20 7072 6576 696f 7573  p;& previous
│ │ │ -001e2be0: 5f6d 6f75 6e74 5f6f 7074 732b 3d22 2c22  _mount_opts+=","
│ │ │ -001e2bf0: 0a20 2020 2020 2020 2023 2049 6e20 6973  .        # In is
│ │ │ -001e2c00: 6f39 3636 3020 6669 6c65 7379 7374 656d  o9660 filesystem
│ │ │ -001e2c10: 7320 6d74 6162 2063 6f75 6c64 2064 6573  s mtab could des
│ │ │ -001e2c20: 6372 6962 6520 6120 2262 6c6f 636b 7369  cribe a "blocksi
│ │ │ -001e2c30: 7a65 2220 7661 6c75 652c 2074 6869 7320  ze" value, this 
│ │ │ -001e2c40: 7368 6f75 6c64 2062 6520 7265 666c 6563  should be reflec
│ │ │ -001e2c50: 7465 6420 696e 0a20 2020 2020 2020 2023  ted in.        #
│ │ │ -001e2c60: 2066 7374 6162 2061 7320 2262 6c6f 636b   fstab as "block
│ │ │ -001e2c70: 222e 2020 5468 6520 6e65 7874 2076 6172  ".  The next var
│ │ │ -001e2c80: 6961 626c 6520 6973 2074 6f20 7361 7469  iable is to sati
│ │ │ -001e2c90: 7366 7920 7368 656c 6c63 6865 636b 2053  sfy shellcheck S
│ │ │ -001e2ca0: 4332 3035 302e 0a20 2020 2020 2020 2066  C2050..        f
│ │ │ -001e2cb0: 735f 7479 7065 3d22 220a 2020 2020 2020  s_type="".      
│ │ │ -001e2cc0: 2020 6966 205b 2020 2224 6673 5f74 7970    if [  "$fs_typ
│ │ │ -001e2cd0: 6522 203d 3d20 2269 736f 3936 3630 2220  e" == "iso9660" 
│ │ │ -001e2ce0: 5d20 3b20 7468 656e 0a20 2020 2020 2020  ] ; then.       
│ │ │ -001e2cf0: 2020 2020 2070 7265 7669 6f75 735f 6d6f       previous_mo
│ │ │ -001e2d00: 756e 745f 6f70 7473 3d24 2873 6564 2027  unt_opts=$(sed '
│ │ │ -001e2d10: 732f 626c 6f63 6b73 697a 653d 2f62 6c6f  s/blocksize=/blo
│ │ │ -001e2d20: 636b 3d2f 2720 266c 743b 266c 743b 266c  ck=/' <<&l
│ │ │ -001e2d30: 743b 2022 2470 7265 7669 6f75 735f 6d6f  t; "$previous_mo
│ │ │ -001e2d40: 756e 745f 6f70 7473 2229 0a20 2020 2020  unt_opts").     
│ │ │ -001e2d50: 2020 2066 690a 2020 2020 2020 2020 6563     fi.        ec
│ │ │ -001e2d60: 686f 2022 202f 7661 722f 746d 7020 2064  ho " /var/tmp  d
│ │ │ -001e2d70: 6566 6175 6c74 732c 247b 7072 6576 696f  efaults,${previo
│ │ │ -001e2d80: 7573 5f6d 6f75 6e74 5f6f 7074 737d 6e6f  us_mount_opts}no
│ │ │ -001e2d90: 6465 7620 3020 3022 2026 6774 3b26 6774  dev 0 0" >>
│ │ │ -001e2da0: 3b20 2f65 7463 2f66 7374 6162 0a20 2020  ; /etc/fstab.   
│ │ │ -001e2db0: 2023 2049 6620 7468 6520 6d6f 756e 745f   # If the mount_
│ │ │ -001e2dc0: 6f70 7420 6f70 7469 6f6e 2069 7320 6e6f  opt option is no
│ │ │ -001e2dd0: 7420 616c 7265 6164 7920 696e 2074 6865  t already in the
│ │ │ -001e2de0: 206d 6f75 6e74 2070 6f69 6e74 2773 202f   mount point's /
│ │ │ -001e2df0: 6574 632f 6673 7461 6220 656e 7472 792c  etc/fstab entry,
│ │ │ -001e2e00: 2061 6464 2069 740a 2020 2020 656c 6966   add it.    elif
│ │ │ -001e2e10: 2021 2067 7265 7020 2224 6d6f 756e 745f   ! grep "$mount_
│ │ │ -001e2e20: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ -001e2e30: 7870 2220 2f65 7463 2f66 7374 6162 207c  xp" /etc/fstab |
│ │ │ -001e2e40: 2067 7265 7020 2d71 2022 6e6f 6465 7622   grep -q "nodev"
│ │ │ -001e2e50: 3b20 7468 656e 0a20 2020 2020 2020 2070  ; then.        p
│ │ │ -001e2e60: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ -001e2e70: 7473 3d24 2867 7265 7020 2224 6d6f 756e  ts=$(grep "$moun
│ │ │ -001e2e80: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ -001e2e90: 6765 7870 2220 2f65 7463 2f66 7374 6162  gexp" /etc/fstab
│ │ │ -001e2ea0: 207c 2061 776b 2027 7b70 7269 6e74 2024   | awk '{print $
│ │ │ -001e2eb0: 347d 2729 0a20 2020 2020 2020 2073 6564  4}').        sed
│ │ │ -001e2ec0: 202d 6920 2273 7c5c 2824 7b6d 6f75 6e74   -i "s|\(${mount
│ │ │ -001e2ed0: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ -001e2ee0: 6578 707d 2e2a 247b 7072 6576 696f 7573  exp}.*${previous
│ │ │ -001e2ef0: 5f6d 6f75 6e74 5f6f 7074 737d 5c29 7c5c  _mount_opts}\)|\
│ │ │ -001e2f00: 312c 6e6f 6465 767c 2220 2f65 7463 2f66  1,nodev|" /etc/f
│ │ │ -001e2f10: 7374 6162 0a20 2020 2066 690a 0a0a 2020  stab.    fi...  
│ │ │ -001e2f20: 2020 6966 206d 6b64 6972 202d 7020 222f    if mkdir -p "/
│ │ │ -001e2f30: 7661 722f 746d 7022 3b20 7468 656e 0a20  var/tmp"; then. 
│ │ │ -001e2f40: 2020 2020 2020 2069 6620 6d6f 756e 7470         if mountp
│ │ │ -001e2f50: 6f69 6e74 202d 7120 222f 7661 722f 746d  oint -q "/var/tm
│ │ │ -001e2f60: 7022 3b20 7468 656e 0a20 2020 2020 2020  p"; then.       
│ │ │ -001e2f70: 2020 2020 206d 6f75 6e74 202d 6f20 7265       mount -o re
│ │ │ -001e2f80: 6d6f 756e 7420 2d2d 7461 7267 6574 2022  mount --target "
│ │ │ -001e2f90: 2f76 6172 2f74 6d70 220a 2020 2020 2020  /var/tmp".      
│ │ │ -001e2fa0: 2020 6669 0a20 2020 2066 690a 7d0a 0a70    fi.    fi.}..p
│ │ │ -001e2fb0: 6572 666f 726d 5f72 656d 6564 6961 7469  erform_remediati
│ │ │ -001e2fc0: 6f6e 0a0a 656c 7365 0a20 2020 2026 6774  on..else.    >
│ │ │ -001e2fd0: 3b26 616d 703b 3220 6563 686f 2027 5265  ;&2 echo 'Re
│ │ │ -001e2fe0: 6d65 6469 6174 696f 6e20 6973 206e 6f74  mediation is not
│ │ │ -001e2ff0: 2061 7070 6c69 6361 626c 652c 206e 6f74   applicable, not
│ │ │ -001e3000: 6869 6e67 2077 6173 2064 6f6e 6527 0a66  hing was done'.f
│ │ │ -001e3010: 690a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  i.
< │ │ │ +001e0d90: 6e20 416e 7369 626c 6520 736e 6970 7065 n Ansible snippe │ │ │ +001e0da0: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ +001e0e20: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr> │ │ │ +001e0e60: 3c74 643e 6869 6768 3c2f 7464 3e3c 2f74 < │ │ │ +001e0eb0: 7464 3e63 6f6e 6669 6775 7265 3c2f 7464 td>configure
R │ │ │ -001e2540: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -001e2550: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c2f alse
Complexit │ │ │ +001e0e30: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low
│ │ │ +001e0e50: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption:high
Reboot │ │ │ +001e0e80: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +001e0e90: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Strategy:

- name: │ │ │ +001e0ee0: 2047 6174 6865 7220 7468 6520 7061 636b Gather the pack │ │ │ +001e0ef0: 6167 6520 6661 6374 730a 2020 7061 636b age facts. pack │ │ │ +001e0f00: 6167 655f 6661 6374 733a 0a20 2020 206d age_facts:. m │ │ │ +001e0f10: 616e 6167 6572 3a20 6175 746f 0a20 2074 anager: auto. t │ │ │ +001e0f20: 6167 733a 0a20 202d 2063 6f6e 6669 6775 ags:. - configu │ │ │ +001e0f30: 7265 5f73 7472 6174 6567 790a 2020 2d20 re_strategy. - │ │ │ +001e0f40: 6869 6768 5f64 6973 7275 7074 696f 6e0a high_disruption. │ │ │ +001e0f50: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869 - low_complexi │ │ │ +001e0f60: 7479 0a20 202d 206d 6564 6975 6d5f 7365 ty. - medium_se │ │ │ +001e0f70: 7665 7269 7479 0a20 202d 206d 6f75 6e74 verity. - mount │ │ │ +001e0f80: 5f6f 7074 696f 6e5f 7661 725f 746d 705f _option_var_tmp_ │ │ │ +001e0f90: 6e6f 6465 760a 2020 2d20 6e6f 5f72 6562 nodev. - no_reb │ │ │ +001e0fa0: 6f6f 745f 6e65 6564 6564 0a0a 2d20 6e61 oot_needed..- na │ │ │ +001e0fb0: 6d65 3a20 2741 6464 206e 6f64 6576 204f me: 'Add nodev O │ │ │ +001e0fc0: 7074 696f 6e20 746f 202f 7661 722f 746d ption to /var/tm │ │ │ +001e0fd0: 703a 2043 6865 636b 2069 6e66 6f72 6d61 p: Check informa │ │ │ +001e0fe0: 7469 6f6e 2061 7373 6f63 6961 7465 6420 tion associated │ │ │ +001e0ff0: 746f 206d 6f75 6e74 706f 696e 7427 0a20 to mountpoint'. │ │ │ +001e1000: 2061 6e73 6962 6c65 2e62 7569 6c74 696e ansible.builtin │ │ │ +001e1010: 2e63 6f6d 6d61 6e64 3a20 6669 6e64 6d6e .command: findmn │ │ │ +001e1020: 7420 2d2d 6673 7461 6220 272f 7661 722f t --fstab '/var/ │ │ │ +001e1030: 746d 7027 0a20 2072 6567 6973 7465 723a tmp'. register: │ │ │ +001e1040: 2064 6576 6963 655f 6e61 6d65 0a20 2066 device_name. f │ │ │ +001e1050: 6169 6c65 645f 7768 656e 3a20 6465 7669 ailed_when: devi │ │ │ +001e1060: 6365 5f6e 616d 652e 7263 2026 6774 3b20 ce_name.rc > │ │ │ +001e1070: 310a 2020 6368 616e 6765 645f 7768 656e 1. changed_when │ │ │ +001e1080: 3a20 6661 6c73 650a 2020 6368 6563 6b5f : false. check_ │ │ │ +001e1090: 6d6f 6465 3a20 6661 6c73 650a 2020 7768 mode: false. wh │ │ │ +001e10a0: 656e 3a0a 2020 2d20 2820 6e6f 7420 2820 en:. - ( not ( │ │ │ +001e10b0: 226b 6572 6e65 6c22 2069 6e20 616e 7369 "kernel" in ansi │ │ │ +001e10c0: 626c 655f 6661 6374 732e 7061 636b 6167 ble_facts.packag │ │ │ +001e10d0: 6573 2061 6e64 2022 626f 6f74 6322 2069 es and "bootc" i │ │ │ +001e10e0: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ +001e10f0: 7061 636b 6167 6573 0a20 2020 2061 6e64 packages. and │ │ │ +001e1100: 206e 6f74 2022 6f70 656e 7368 6966 742d not "openshift- │ │ │ +001e1110: 6b75 6265 6c65 7422 2069 6e20 616e 7369 kubelet" in ansi │ │ │ +001e1120: 626c 655f 6661 6374 732e 7061 636b 6167 ble_facts.packag │ │ │ +001e1130: 6573 2061 6e64 2022 6f73 7472 6565 2220 es and "ostree" │ │ │ +001e1140: 696e 2061 6e73 6962 6c65 5f70 726f 635f in ansible_proc_ │ │ │ +001e1150: 636d 646c 696e 650a 2020 2020 2920 616e cmdline. ) an │ │ │ +001e1160: 6420 6e6f 7420 2820 616e 7369 626c 655f d not ( ansible_ │ │ │ +001e1170: 7669 7274 7561 6c69 7a61 7469 6f6e 5f74 virtualization_t │ │ │ +001e1180: 7970 6520 696e 205b 2264 6f63 6b65 7222 ype in ["docker" │ │ │ +001e1190: 2c20 226c 7863 222c 2022 6f70 656e 767a , "lxc", "openvz │ │ │ +001e11a0: 222c 2022 706f 646d 616e 222c 0a20 2020 ", "podman",. │ │ │ +001e11b0: 2022 636f 6e74 6169 6e65 7222 5d20 2920 "container"] ) │ │ │ +001e11c0: 290a 2020 2d20 2722 2f76 6172 2f74 6d70 ). - '"/var/tmp │ │ │ +001e11d0: 2220 696e 2061 6e73 6962 6c65 5f6d 6f75 " in ansible_mou │ │ │ +001e11e0: 6e74 7320 7c20 6d61 7028 6174 7472 6962 nts | map(attrib │ │ │ +001e11f0: 7574 653d 226d 6f75 6e74 2229 207c 206c ute="mount") | l │ │ │ +001e1200: 6973 7427 0a20 2074 6167 733a 0a20 202d ist'. tags:. - │ │ │ +001e1210: 2063 6f6e 6669 6775 7265 5f73 7472 6174 configure_strat │ │ │ +001e1220: 6567 790a 2020 2d20 6869 6768 5f64 6973 egy. - high_dis │ │ │ +001e1230: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f ruption. - low_ │ │ │ +001e1240: 636f 6d70 6c65 7869 7479 0a20 202d 206d complexity. - m │ │ │ +001e1250: 6564 6975 6d5f 7365 7665 7269 7479 0a20 edium_severity. │ │ │ +001e1260: 202d 206d 6f75 6e74 5f6f 7074 696f 6e5f - mount_option_ │ │ │ +001e1270: 7661 725f 746d 705f 6e6f 6465 760a 2020 var_tmp_nodev. │ │ │ +001e1280: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564 - no_reboot_need │ │ │ +001e1290: 6564 0a0a 2d20 6e61 6d65 3a20 2741 6464 ed..- name: 'Add │ │ │ +001e12a0: 206e 6f64 6576 204f 7074 696f 6e20 746f nodev Option to │ │ │ +001e12b0: 202f 7661 722f 746d 703a 2043 7265 6174 /var/tmp: Creat │ │ │ +001e12c0: 6520 6d6f 756e 745f 696e 666f 2064 6963 e mount_info dic │ │ │ +001e12d0: 7469 6f6e 6172 7920 7661 7269 6162 6c65 tionary variable │ │ │ +001e12e0: 270a 2020 7365 745f 6661 6374 3a0a 2020 '. set_fact:. │ │ │ +001e12f0: 2020 6d6f 756e 745f 696e 666f 3a20 277b mount_info: '{ │ │ │ +001e1300: 7b20 6d6f 756e 745f 696e 666f 7c64 6566 { mount_info|def │ │ │ +001e1310: 6175 6c74 287b 7d29 7c63 6f6d 6269 6e65 ault({})|combine │ │ │ +001e1320: 287b 6974 656d 2e30 3a20 6974 656d 2e31 ({item.0: item.1 │ │ │ +001e1330: 7d29 207d 7d27 0a20 2077 6974 685f 746f }) }}'. with_to │ │ │ +001e1340: 6765 7468 6572 3a0a 2020 2d20 277b 7b20 gether:. - '{{ │ │ │ +001e1350: 6465 7669 6365 5f6e 616d 652e 7374 646f device_name.stdo │ │ │ +001e1360: 7574 5f6c 696e 6573 5b30 5d2e 7370 6c69 ut_lines[0].spli │ │ │ +001e1370: 7428 2920 7c20 6d61 7028 2727 6c6f 7765 t() | map(''lowe │ │ │ +001e1380: 7227 2729 207c 206c 6973 7420 7d7d 270a r'') | list }}'. │ │ │ +001e1390: 2020 2d20 277b 7b20 6465 7669 6365 5f6e - '{{ device_n │ │ │ +001e13a0: 616d 652e 7374 646f 7574 5f6c 696e 6573 ame.stdout_lines │ │ │ +001e13b0: 5b31 5d2e 7370 6c69 7428 2920 7c20 6c69 [1].split() | li │ │ │ +001e13c0: 7374 207d 7d27 0a20 2077 6865 6e3a 0a20 st }}'. when:. │ │ │ +001e13d0: 202d 2028 206e 6f74 2028 2022 6b65 726e - ( not ( "kern │ │ │ +001e13e0: 656c 2220 696e 2061 6e73 6962 6c65 5f66 el" in ansible_f │ │ │ +001e13f0: 6163 7473 2e70 6163 6b61 6765 7320 616e acts.packages an │ │ │ +001e1400: 6420 2262 6f6f 7463 2220 696e 2061 6e73 d "bootc" in ans │ │ │ +001e1410: 6962 6c65 5f66 6163 7473 2e70 6163 6b61 ible_facts.packa │ │ │ +001e1420: 6765 730a 2020 2020 616e 6420 6e6f 7420 ges. and not │ │ │ +001e1430: 226f 7065 6e73 6869 6674 2d6b 7562 656c "openshift-kubel │ │ │ +001e1440: 6574 2220 696e 2061 6e73 6962 6c65 5f66 et" in ansible_f │ │ │ +001e1450: 6163 7473 2e70 6163 6b61 6765 7320 616e acts.packages an │ │ │ +001e1460: 6420 226f 7374 7265 6522 2069 6e20 616e d "ostree" in an │ │ │ +001e1470: 7369 626c 655f 7072 6f63 5f63 6d64 6c69 sible_proc_cmdli │ │ │ +001e1480: 6e65 0a20 2020 2029 2061 6e64 206e 6f74 ne. ) and not │ │ │ +001e1490: 2028 2061 6e73 6962 6c65 5f76 6972 7475 ( ansible_virtu │ │ │ +001e14a0: 616c 697a 6174 696f 6e5f 7479 7065 2069 alization_type i │ │ │ +001e14b0: 6e20 5b22 646f 636b 6572 222c 2022 6c78 n ["docker", "lx │ │ │ +001e14c0: 6322 2c20 226f 7065 6e76 7a22 2c20 2270 c", "openvz", "p │ │ │ +001e14d0: 6f64 6d61 6e22 2c0a 2020 2020 2263 6f6e odman",. "con │ │ │ +001e14e0: 7461 696e 6572 225d 2029 2029 0a20 202d tainer"] ) ). - │ │ │ +001e14f0: 2027 222f 7661 722f 746d 7022 2069 6e20 '"/var/tmp" in │ │ │ +001e1500: 616e 7369 626c 655f 6d6f 756e 7473 207c ansible_mounts | │ │ │ +001e1510: 206d 6170 2861 7474 7269 6275 7465 3d22 map(attribute=" │ │ │ +001e1520: 6d6f 756e 7422 2920 7c20 6c69 7374 270a mount") | list'. │ │ │ +001e1530: 2020 2d20 6465 7669 6365 5f6e 616d 652e - device_name. │ │ │ +001e1540: 7374 646f 7574 2069 7320 6465 6669 6e65 stdout is define │ │ │ +001e1550: 6420 616e 6420 6465 7669 6365 5f6e 616d d and device_nam │ │ │ +001e1560: 652e 7374 646f 7574 5f6c 696e 6573 2069 e.stdout_lines i │ │ │ +001e1570: 7320 6465 6669 6e65 640a 2020 2d20 2864 s defined. - (d │ │ │ +001e1580: 6576 6963 655f 6e61 6d65 2e73 7464 6f75 evice_name.stdou │ │ │ +001e1590: 7420 7c20 6c65 6e67 7468 2026 6774 3b20 t | length > │ │ │ +001e15a0: 3029 0a20 2074 6167 733a 0a20 202d 2063 0). tags:. - c │ │ │ +001e15b0: 6f6e 6669 6775 7265 5f73 7472 6174 6567 onfigure_strateg │ │ │ +001e15c0: 790a 2020 2d20 6869 6768 5f64 6973 7275 y. - high_disru │ │ │ +001e15d0: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f ption. - low_co │ │ │ +001e15e0: 6d70 6c65 7869 7479 0a20 202d 206d 6564 mplexity. - med │ │ │ +001e15f0: 6975 6d5f 7365 7665 7269 7479 0a20 202d ium_severity. - │ │ │ +001e1600: 206d 6f75 6e74 5f6f 7074 696f 6e5f 7661 mount_option_va │ │ │ +001e1610: 725f 746d 705f 6e6f 6465 760a 2020 2d20 r_tmp_nodev. - │ │ │ +001e1620: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564 no_reboot_needed │ │ │ +001e1630: 0a0a 2d20 6e61 6d65 3a20 2741 6464 206e ..- name: 'Add n │ │ │ +001e1640: 6f64 6576 204f 7074 696f 6e20 746f 202f odev Option to / │ │ │ +001e1650: 7661 722f 746d 703a 2049 6620 2f76 6172 var/tmp: If /var │ │ │ +001e1660: 2f74 6d70 206e 6f74 206d 6f75 6e74 6564 /tmp not mounted │ │ │ +001e1670: 2c20 6372 6166 7420 6d6f 756e 745f 696e , craft mount_in │ │ │ +001e1680: 666f 206d 616e 7561 6c6c 7927 0a20 2073 fo manually'. s │ │ │ +001e1690: 6574 5f66 6163 743a 0a20 2020 206d 6f75 et_fact:. mou │ │ │ +001e16a0: 6e74 5f69 6e66 6f3a 2027 7b7b 206d 6f75 nt_info: '{{ mou │ │ │ +001e16b0: 6e74 5f69 6e66 6f7c 6465 6661 756c 7428 nt_info|default( │ │ │ +001e16c0: 7b7d 297c 636f 6d62 696e 6528 7b69 7465 {})|combine({ite │ │ │ +001e16d0: 6d2e 303a 2069 7465 6d2e 317d 2920 7d7d m.0: item.1}) }} │ │ │ +001e16e0: 270a 2020 7769 7468 5f74 6f67 6574 6865 '. with_togethe │ │ │ +001e16f0: 723a 0a20 202d 202d 2074 6172 6765 740a r:. - - target. │ │ │ +001e1700: 2020 2020 2d20 736f 7572 6365 0a20 2020 - source. │ │ │ +001e1710: 202d 2066 7374 7970 650a 2020 2020 2d20 - fstype. - │ │ │ +001e1720: 6f70 7469 6f6e 730a 2020 2d20 2d20 2f76 options. - - /v │ │ │ +001e1730: 6172 2f74 6d70 0a20 2020 202d 2027 270a ar/tmp. - ''. │ │ │ +001e1740: 2020 2020 2d20 2727 0a20 2020 202d 2064 - ''. - d │ │ │ +001e1750: 6566 6175 6c74 730a 2020 7768 656e 3a0a efaults. when:. │ │ │ +001e1760: 2020 2d20 2820 6e6f 7420 2820 226b 6572 - ( not ( "ker │ │ │ +001e1770: 6e65 6c22 2069 6e20 616e 7369 626c 655f nel" in ansible_ │ │ │ +001e1780: 6661 6374 732e 7061 636b 6167 6573 2061 facts.packages a │ │ │ +001e1790: 6e64 2022 626f 6f74 6322 2069 6e20 616e nd "bootc" in an │ │ │ +001e17a0: 7369 626c 655f 6661 6374 732e 7061 636b sible_facts.pack │ │ │ +001e17b0: 6167 6573 0a20 2020 2061 6e64 206e 6f74 ages. and not │ │ │ +001e17c0: 2022 6f70 656e 7368 6966 742d 6b75 6265 "openshift-kube │ │ │ +001e17d0: 6c65 7422 2069 6e20 616e 7369 626c 655f let" in ansible_ │ │ │ +001e17e0: 6661 6374 732e 7061 636b 6167 6573 2061 facts.packages a │ │ │ +001e17f0: 6e64 2022 6f73 7472 6565 2220 696e 2061 nd "ostree" in a │ │ │ +001e1800: 6e73 6962 6c65 5f70 726f 635f 636d 646c nsible_proc_cmdl │ │ │ +001e1810: 696e 650a 2020 2020 2920 616e 6420 6e6f ine. ) and no │ │ │ +001e1820: 7420 2820 616e 7369 626c 655f 7669 7274 t ( ansible_virt │ │ │ +001e1830: 7561 6c69 7a61 7469 6f6e 5f74 7970 6520 ualization_type │ │ │ +001e1840: 696e 205b 2264 6f63 6b65 7222 2c20 226c in ["docker", "l │ │ │ +001e1850: 7863 222c 2022 6f70 656e 767a 222c 2022 xc", "openvz", " │ │ │ +001e1860: 706f 646d 616e 222c 0a20 2020 2022 636f podman",. "co │ │ │ +001e1870: 6e74 6169 6e65 7222 5d20 2920 290a 2020 ntainer"] ) ). │ │ │ +001e1880: 2d20 2722 2f76 6172 2f74 6d70 2220 696e - '"/var/tmp" in │ │ │ +001e1890: 2061 6e73 6962 6c65 5f6d 6f75 6e74 7320 ansible_mounts │ │ │ +001e18a0: 7c20 6d61 7028 6174 7472 6962 7574 653d | map(attribute= │ │ │ +001e18b0: 226d 6f75 6e74 2229 207c 206c 6973 7427 "mount") | list' │ │ │ +001e18c0: 0a20 202d 2028 222d 2d66 7374 6162 2220 . - ("--fstab" │ │ │ +001e18d0: 7c20 6c65 6e67 7468 203d 3d20 3029 0a20 | length == 0). │ │ │ +001e18e0: 202d 2064 6576 6963 655f 6e61 6d65 2e73 - device_name.s │ │ │ +001e18f0: 7464 6f75 7420 6973 2064 6566 696e 6564 tdout is defined │ │ │ +001e1900: 2061 6e64 2064 6576 6963 655f 6e61 6d65 and device_name │ │ │ +001e1910: 2e73 7464 6f75 745f 6c69 6e65 7320 6973 .stdout_lines is │ │ │ +001e1920: 2064 6566 696e 6564 0a20 202d 2028 6465 defined. - (de │ │ │ +001e1930: 7669 6365 5f6e 616d 652e 7374 646f 7574 vice_name.stdout │ │ │ +001e1940: 207c 206c 656e 6774 6820 3d3d 2030 290a | length == 0). │ │ │ +001e1950: 2020 7461 6773 3a0a 2020 2d20 636f 6e66 tags:. - conf │ │ │ +001e1960: 6967 7572 655f 7374 7261 7465 6779 0a20 igure_strategy. │ │ │ +001e1970: 202d 2068 6967 685f 6469 7372 7570 7469 - high_disrupti │ │ │ +001e1980: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c on. - low_compl │ │ │ +001e1990: 6578 6974 790a 2020 2d20 6d65 6469 756d exity. - medium │ │ │ +001e19a0: 5f73 6576 6572 6974 790a 2020 2d20 6d6f _severity. - mo │ │ │ +001e19b0: 756e 745f 6f70 7469 6f6e 5f76 6172 5f74 unt_option_var_t │ │ │ +001e19c0: 6d70 5f6e 6f64 6576 0a20 202d 206e 6f5f mp_nodev. - no_ │ │ │ +001e19d0: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d reboot_needed..- │ │ │ +001e19e0: 206e 616d 653a 2027 4164 6420 6e6f 6465 name: 'Add node │ │ │ +001e19f0: 7620 4f70 7469 6f6e 2074 6f20 2f76 6172 v Option to /var │ │ │ +001e1a00: 2f74 6d70 3a20 4d61 6b65 2073 7572 6520 /tmp: Make sure │ │ │ +001e1a10: 6e6f 6465 7620 6f70 7469 6f6e 2069 7320 nodev option is │ │ │ +001e1a20: 7061 7274 206f 6620 7468 6520 746f 202f part of the to / │ │ │ +001e1a30: 7661 722f 746d 700a 2020 2020 6f70 7469 var/tmp. opti │ │ │ +001e1a40: 6f6e 7327 0a20 2073 6574 5f66 6163 743a ons'. set_fact: │ │ │ +001e1a50: 0a20 2020 206d 6f75 6e74 5f69 6e66 6f3a . mount_info: │ │ │ +001e1a60: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f20 '{{ mount_info │ │ │ +001e1a70: 7c20 636f 6d62 696e 6528 207b 2727 6f70 | combine( {''op │ │ │ +001e1a80: 7469 6f6e 7327 273a 2727 2727 7e28 6d6f tions'':''''~(mo │ │ │ +001e1a90: 756e 745f 696e 666f 2e6f 7074 696f 6e73 unt_info.options │ │ │ +001e1aa0: 207c 0a20 2020 2020 2064 6566 6175 6c74 |. default │ │ │ +001e1ab0: 2827 2727 2729 297e 2827 272c 2727 2069 (''''))~('','' i │ │ │ +001e1ac0: 6620 286d 6f75 6e74 5f69 6e66 6f2e 6f70 f (mount_info.op │ │ │ +001e1ad0: 7469 6f6e 7320 7c20 6465 6661 756c 7428 tions | default( │ │ │ +001e1ae0: 2727 2727 2929 2065 6c73 6520 2727 2727 '''')) else '''' │ │ │ +001e1af0: 297e 2727 6e6f 6465 7627 270a 2020 2020 )~''nodev''. │ │ │ +001e1b00: 2020 7d29 207d 7d27 0a20 2077 6865 6e3a }) }}'. when: │ │ │ +001e1b10: 0a20 202d 2028 206e 6f74 2028 2022 6b65 . - ( not ( "ke │ │ │ +001e1b20: 726e 656c 2220 696e 2061 6e73 6962 6c65 rnel" in ansible │ │ │ +001e1b30: 5f66 6163 7473 2e70 6163 6b61 6765 7320 _facts.packages │ │ │ +001e1b40: 616e 6420 2262 6f6f 7463 2220 696e 2061 and "bootc" in a │ │ │ +001e1b50: 6e73 6962 6c65 5f66 6163 7473 2e70 6163 nsible_facts.pac │ │ │ +001e1b60: 6b61 6765 730a 2020 2020 616e 6420 6e6f kages. and no │ │ │ +001e1b70: 7420 226f 7065 6e73 6869 6674 2d6b 7562 t "openshift-kub │ │ │ +001e1b80: 656c 6574 2220 696e 2061 6e73 6962 6c65 elet" in ansible │ │ │ +001e1b90: 5f66 6163 7473 2e70 6163 6b61 6765 7320 _facts.packages │ │ │ +001e1ba0: 616e 6420 226f 7374 7265 6522 2069 6e20 and "ostree" in │ │ │ +001e1bb0: 616e 7369 626c 655f 7072 6f63 5f63 6d64 ansible_proc_cmd │ │ │ +001e1bc0: 6c69 6e65 0a20 2020 2029 2061 6e64 206e line. ) and n │ │ │ +001e1bd0: 6f74 2028 2061 6e73 6962 6c65 5f76 6972 ot ( ansible_vir │ │ │ +001e1be0: 7475 616c 697a 6174 696f 6e5f 7479 7065 tualization_type │ │ │ +001e1bf0: 2069 6e20 5b22 646f 636b 6572 222c 2022 in ["docker", " │ │ │ +001e1c00: 6c78 6322 2c20 226f 7065 6e76 7a22 2c20 lxc", "openvz", │ │ │ +001e1c10: 2270 6f64 6d61 6e22 2c0a 2020 2020 2263 "podman",. "c │ │ │ +001e1c20: 6f6e 7461 696e 6572 225d 2029 2029 0a20 ontainer"] ) ). │ │ │ +001e1c30: 202d 2027 222f 7661 722f 746d 7022 2069 - '"/var/tmp" i │ │ │ +001e1c40: 6e20 616e 7369 626c 655f 6d6f 756e 7473 n ansible_mounts │ │ │ +001e1c50: 207c 206d 6170 2861 7474 7269 6275 7465 | map(attribute │ │ │ +001e1c60: 3d22 6d6f 756e 7422 2920 7c20 6c69 7374 ="mount") | list │ │ │ +001e1c70: 270a 2020 2d20 6d6f 756e 745f 696e 666f '. - mount_info │ │ │ +001e1c80: 2069 7320 6465 6669 6e65 6420 616e 6420 is defined and │ │ │ +001e1c90: 226e 6f64 6576 2220 6e6f 7420 696e 2028 "nodev" not in ( │ │ │ +001e1ca0: 6d6f 756e 745f 696e 666f 2e6f 7074 696f mount_info.optio │ │ │ +001e1cb0: 6e73 207c 2064 6566 6175 6c74 2827 2729 ns | default('') │ │ │ +001e1cc0: 290a 2020 7461 6773 3a0a 2020 2d20 636f ). tags:. - co │ │ │ +001e1cd0: 6e66 6967 7572 655f 7374 7261 7465 6779 nfigure_strategy │ │ │ +001e1ce0: 0a20 202d 2068 6967 685f 6469 7372 7570 . - high_disrup │ │ │ +001e1cf0: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d tion. - low_com │ │ │ +001e1d00: 706c 6578 6974 790a 2020 2d20 6d65 6469 plexity. - medi │ │ │ +001e1d10: 756d 5f73 6576 6572 6974 790a 2020 2d20 um_severity. - │ │ │ +001e1d20: 6d6f 756e 745f 6f70 7469 6f6e 5f76 6172 mount_option_var │ │ │ +001e1d30: 5f74 6d70 5f6e 6f64 6576 0a20 202d 206e _tmp_nodev. - n │ │ │ +001e1d40: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a o_reboot_needed. │ │ │ +001e1d50: 0a2d 206e 616d 653a 2027 4164 6420 6e6f .- name: 'Add no │ │ │ +001e1d60: 6465 7620 4f70 7469 6f6e 2074 6f20 2f76 dev Option to /v │ │ │ +001e1d70: 6172 2f74 6d70 3a20 456e 7375 7265 202f ar/tmp: Ensure / │ │ │ +001e1d80: 7661 722f 746d 7020 6973 206d 6f75 6e74 var/tmp is mount │ │ │ +001e1d90: 6564 2077 6974 6820 6e6f 6465 7620 6f70 ed with nodev op │ │ │ +001e1da0: 7469 6f6e 270a 2020 616e 7369 626c 652e tion'. ansible. │ │ │ +001e1db0: 706f 7369 782e 6d6f 756e 743a 0a20 2020 posix.mount:. │ │ │ +001e1dc0: 2070 6174 683a 202f 7661 722f 746d 700a path: /var/tmp. │ │ │ +001e1dd0: 2020 2020 7372 633a 2027 7b7b 206d 6f75 src: '{{ mou │ │ │ +001e1de0: 6e74 5f69 6e66 6f2e 736f 7572 6365 207c nt_info.source | │ │ │ +001e1df0: 2064 6566 6175 6c74 2827 2727 2729 207d default('''') } │ │ │ +001e1e00: 7d27 0a20 2020 206f 7074 733a 2027 7b7b }'. opts: '{{ │ │ │ +001e1e10: 206d 6f75 6e74 5f69 6e66 6f2e 6f70 7469 mount_info.opti │ │ │ +001e1e20: 6f6e 7320 7c20 6465 6661 756c 7428 2727 ons | default('' │ │ │ +001e1e30: 2727 2920 7d7d 270a 2020 2020 7374 6174 '') }}'. stat │ │ │ +001e1e40: 653a 206d 6f75 6e74 6564 0a20 2020 2066 e: mounted. f │ │ │ +001e1e50: 7374 7970 653a 2027 7b7b 206d 6f75 6e74 stype: '{{ mount │ │ │ +001e1e60: 5f69 6e66 6f2e 6673 7479 7065 207c 2064 _info.fstype | d │ │ │ +001e1e70: 6566 6175 6c74 2827 2727 2729 207d 7d27 efault('''') }}' │ │ │ +001e1e80: 0a20 2072 6567 6973 7465 723a 206d 6f75 . register: mou │ │ │ +001e1e90: 6e74 5f72 6573 756c 740a 2020 6661 696c nt_result. fail │ │ │ +001e1ea0: 6564 5f77 6865 6e3a 0a20 202d 206d 6f75 ed_when:. - mou │ │ │ +001e1eb0: 6e74 5f72 6573 756c 7420 6973 2066 6169 nt_result is fai │ │ │ +001e1ec0: 6c65 640a 2020 2d20 2727 2774 6172 6765 led. - '''targe │ │ │ +001e1ed0: 7420 6973 2062 7573 7927 2720 6e6f 7420 t is busy'' not │ │ │ +001e1ee0: 696e 2028 6d6f 756e 745f 7265 7375 6c74 in (mount_result │ │ │ +001e1ef0: 2e6d 7367 207c 2064 6566 6175 6c74 2827 .msg | default(' │ │ │ +001e1f00: 2727 2729 2927 0a20 202d 2027 2727 616c '''))'. - '''al │ │ │ +001e1f10: 7265 6164 7920 6d6f 756e 7465 6427 2720 ready mounted'' │ │ │ +001e1f20: 6e6f 7420 696e 2028 6d6f 756e 745f 7265 not in (mount_re │ │ │ +001e1f30: 7375 6c74 2e6d 7367 207c 2064 6566 6175 sult.msg | defau │ │ │ +001e1f40: 6c74 2827 2727 2729 2927 0a20 2077 6865 lt(''''))'. whe │ │ │ +001e1f50: 6e3a 0a20 202d 2028 206e 6f74 2028 2022 n:. - ( not ( " │ │ │ +001e1f60: 6b65 726e 656c 2220 696e 2061 6e73 6962 kernel" in ansib │ │ │ +001e1f70: 6c65 5f66 6163 7473 2e70 6163 6b61 6765 le_facts.package │ │ │ +001e1f80: 7320 616e 6420 2262 6f6f 7463 2220 696e s and "bootc" in │ │ │ +001e1f90: 2061 6e73 6962 6c65 5f66 6163 7473 2e70 ansible_facts.p │ │ │ +001e1fa0: 6163 6b61 6765 730a 2020 2020 616e 6420 ackages. and │ │ │ +001e1fb0: 6e6f 7420 226f 7065 6e73 6869 6674 2d6b not "openshift-k │ │ │ +001e1fc0: 7562 656c 6574 2220 696e 2061 6e73 6962 ubelet" in ansib │ │ │ +001e1fd0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765 le_facts.package │ │ │ +001e1fe0: 7320 616e 6420 226f 7374 7265 6522 2069 s and "ostree" i │ │ │ +001e1ff0: 6e20 616e 7369 626c 655f 7072 6f63 5f63 n ansible_proc_c │ │ │ +001e2000: 6d64 6c69 6e65 0a20 2020 2029 2061 6e64 mdline. ) and │ │ │ +001e2010: 206e 6f74 2028 2061 6e73 6962 6c65 5f76 not ( ansible_v │ │ │ +001e2020: 6972 7475 616c 697a 6174 696f 6e5f 7479 irtualization_ty │ │ │ +001e2030: 7065 2069 6e20 5b22 646f 636b 6572 222c pe in ["docker", │ │ │ +001e2040: 2022 6c78 6322 2c20 226f 7065 6e76 7a22 "lxc", "openvz" │ │ │ +001e2050: 2c20 2270 6f64 6d61 6e22 2c0a 2020 2020 , "podman",. │ │ │ +001e2060: 2263 6f6e 7461 696e 6572 225d 2029 2029 "container"] ) ) │ │ │ +001e2070: 0a20 202d 2027 222f 7661 722f 746d 7022 . - '"/var/tmp" │ │ │ +001e2080: 2069 6e20 616e 7369 626c 655f 6d6f 756e in ansible_moun │ │ │ +001e2090: 7473 207c 206d 6170 2861 7474 7269 6275 ts | map(attribu │ │ │ +001e20a0: 7465 3d22 6d6f 756e 7422 2920 7c20 6c69 te="mount") | li │ │ │ +001e20b0: 7374 270a 2020 2d20 6d6f 756e 745f 696e st'. - mount_in │ │ │ +001e20c0: 666f 2069 7320 6465 6669 6e65 640a 2020 fo is defined. │ │ │ +001e20d0: 2d20 2864 6576 6963 655f 6e61 6d65 2e73 - (device_name.s │ │ │ +001e20e0: 7464 6f75 7420 6973 2064 6566 696e 6564 tdout is defined │ │ │ +001e20f0: 2061 6e64 2028 6465 7669 6365 5f6e 616d and (device_nam │ │ │ +001e2100: 652e 7374 646f 7574 207c 206c 656e 6774 e.stdout | lengt │ │ │ +001e2110: 6820 2667 743b 2030 2929 206f 7220 2822 h > 0)) or (" │ │ │ +001e2120: 2d2d 6673 7461 6222 0a20 2020 207c 206c --fstab". | l │ │ │ +001e2130: 656e 6774 6820 3d3d 2030 290a 2020 7461 ength == 0). ta │ │ │ +001e2140: 6773 3a0a 2020 2d20 636f 6e66 6967 7572 gs:. - configur │ │ │ +001e2150: 655f 7374 7261 7465 6779 0a20 202d 2068 e_strategy. - h │ │ │ +001e2160: 6967 685f 6469 7372 7570 7469 6f6e 0a20 igh_disruption. │ │ │ +001e2170: 202d 206c 6f77 5f63 6f6d 706c 6578 6974 - low_complexit │ │ │ +001e2180: 790a 2020 2d20 6d65 6469 756d 5f73 6576 y. - medium_sev │ │ │ +001e2190: 6572 6974 790a 2020 2d20 6d6f 756e 745f erity. - mount_ │ │ │ +001e21a0: 6f70 7469 6f6e 5f76 6172 5f74 6d70 5f6e option_var_tmp_n │ │ │ +001e21b0: 6f64 6576 0a20 202d 206e 6f5f 7265 626f odev. - no_rebo │ │ │ +001e21c0: 6f74 5f6e 6565 6465 640a 3c2f 636f 6465 ot_needed.

Remedi │ │ │ +001e2280: 6174 696f 6e20 5368 656c 6c20 7363 7269 ation Shell scri │ │ │ +001e2290: 7074 20e2 87b2 3c2f 613e 3c62 723e 3c64 pt ...
│ │ │ +001e2310: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ +001e2320: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>false< │ │ │ +001e2340: 7072 653e 3c63 6f64 653e 2320 5265 6d65 pre># Reme │ │ │ +001e2350: 6469 6174 696f 6e20 6973 2061 7070 6c69 diation is appli │ │ │ +001e2360: 6361 626c 6520 6f6e 6c79 2069 6e20 6365 cable only in ce │ │ │ +001e2370: 7274 6169 6e20 706c 6174 666f 726d 730a rtain platforms. │ │ │ +001e2380: 6966 2028 2021 2028 207b 2072 706d 202d if ( ! ( { rpm - │ │ │ +001e2390: 2d71 7569 6574 202d 7120 6b65 726e 656c -quiet -q kernel │ │ │ +001e23a0: 203b 7d20 2661 6d70 3b26 616d 703b 207b ;} && { │ │ │ +001e23b0: 2072 706d 202d 2d71 7569 6574 202d 7120 rpm --quiet -q │ │ │ +001e23c0: 626f 6f74 6320 3b7d 2026 616d 703b 2661 bootc ;} &&a │ │ │ +001e23d0: 6d70 3b20 7b20 2120 7270 6d20 2d2d 7175 mp; { ! rpm --qu │ │ │ +001e23e0: 6965 7420 2d71 206f 7065 6e73 6869 6674 iet -q openshift │ │ │ +001e23f0: 2d6b 7562 656c 6574 203b 7d20 2661 6d70 -kubelet ;} & │ │ │ +001e2400: 3b26 616d 703b 2028 5b20 2d66 202f 7275 ;& ([ -f /ru │ │ │ +001e2410: 6e2f 6f73 7472 6565 2d62 6f6f 7465 6420 n/ostree-booted │ │ │ +001e2420: 5d20 7c7c 205b 202d 4c20 2f6f 7374 7265 ] || [ -L /ostre │ │ │ +001e2430: 6520 5d29 2029 2026 616d 703b 2661 6d70 e ]) ) && │ │ │ +001e2440: 3b20 2120 2820 5b20 2d66 202f 2e64 6f63 ; ! ( [ -f /.doc │ │ │ +001e2450: 6b65 7265 6e76 205d 207c 7c20 5b20 2d66 kerenv ] || [ -f │ │ │ +001e2460: 202f 7275 6e2f 2e63 6f6e 7461 696e 6572 /run/.container │ │ │ +001e2470: 656e 7620 5d20 2920 2920 2661 6d70 3b26 env ] ) ) && │ │ │ +001e2480: 616d 703b 207b 2028 2066 696e 646d 6e74 amp; { ( findmnt │ │ │ +001e2490: 202d 2d6b 6572 6e65 6c20 222f 7661 722f --kernel "/var/ │ │ │ +001e24a0: 746d 7022 2026 6774 3b20 2f64 6576 2f6e tmp" > /dev/n │ │ │ +001e24b0: 756c 6c20 7c7c 2066 696e 646d 6e74 202d ull || findmnt - │ │ │ +001e24c0: 2d66 7374 6162 2022 2f76 6172 2f74 6d70 -fstab "/var/tmp │ │ │ +001e24d0: 2220 2667 743b 202f 6465 762f 6e75 6c6c " > /dev/null │ │ │ +001e24e0: 2029 3b20 7d3b 2074 6865 6e0a 0a66 756e ); }; then..fun │ │ │ +001e24f0: 6374 696f 6e20 7065 7266 6f72 6d5f 7265 ction perform_re │ │ │ +001e2500: 6d65 6469 6174 696f 6e20 7b0a 0a20 2020 mediation {.. │ │ │ +001e2510: 200a 2020 2020 2020 2020 2320 7468 6520 . # the │ │ │ +001e2520: 6d6f 756e 7420 706f 696e 7420 2f76 6172 mount point /var │ │ │ +001e2530: 2f74 6d70 2068 6173 2074 6f20 6265 2064 /tmp has to be d │ │ │ +001e2540: 6566 696e 6564 2069 6e20 2f65 7463 2f66 efined in /etc/f │ │ │ +001e2550: 7374 6162 0a20 2020 2020 2020 2023 2062 stab. # b │ │ │ +001e2560: 6566 6f72 6520 7468 6973 2072 656d 6564 efore this remed │ │ │ +001e2570: 6961 7469 6f6e 2063 616e 2062 6520 6578 iation can be ex │ │ │ +001e2580: 6563 7574 6564 2e20 496e 2063 6173 6520 ecuted. In case │ │ │ +001e2590: 6974 2069 7320 6e6f 7420 6465 6669 6e65 it is not define │ │ │ +001e25a0: 642c 2074 6865 0a20 2020 2020 2020 2023 d, the. # │ │ │ +001e25b0: 2072 656d 6564 6961 7469 6f6e 2061 626f remediation abo │ │ │ +001e25c0: 7274 7320 616e 6420 6e6f 2063 6861 6e67 rts and no chang │ │ │ +001e25d0: 6573 2072 6567 6172 6469 6e67 2074 6865 es regarding the │ │ │ +001e25e0: 206d 6f75 6e74 2070 6f69 6e74 2061 7265 mount point are │ │ │ +001e25f0: 2064 6f6e 652e 0a20 2020 2020 2020 206d done.. m │ │ │ +001e2600: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368 ount_point_match │ │ │ +001e2610: 5f72 6567 6578 703d 2224 2870 7269 6e74 _regexp="$(print │ │ │ +001e2620: 6620 225e 5b5b 3a73 7061 6365 3a5d 5d2a f "^[[:space:]]* │ │ │ +001e2630: 5b5e 235d 2e2a 5b5b 3a73 7061 6365 3a5d [^#].*[[:space:] │ │ │ +001e2640: 5d25 735b 5b3a 7370 6163 653a 5d5d 2220 ]%s[[:space:]]" │ │ │ +001e2650: 222f 7661 722f 746d 7022 2922 0a0a 2020 "/var/tmp")".. │ │ │ +001e2660: 2020 6772 6570 2022 246d 6f75 6e74 5f70 grep "$mount_p │ │ │ +001e2670: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578 oint_match_regex │ │ │ +001e2680: 7022 202d 7120 2f65 7463 2f66 7374 6162 p" -q /etc/fstab │ │ │ +001e2690: 205c 0a20 2020 2020 2020 207c 7c20 7b20 \. || { │ │ │ +001e26a0: 6563 686f 2022 5468 6520 6d6f 756e 7420 echo "The mount │ │ │ +001e26b0: 706f 696e 7420 272f 7661 722f 746d 7027 point '/var/tmp' │ │ │ +001e26c0: 2069 7320 6e6f 7420 6576 656e 2069 6e20 is not even in │ │ │ +001e26d0: 2f65 7463 2f66 7374 6162 2c20 736f 2077 /etc/fstab, so w │ │ │ +001e26e0: 6520 6361 6e27 7420 7365 7420 7570 206d e can't set up m │ │ │ +001e26f0: 6f75 6e74 206f 7074 696f 6e73 2220 2667 ount options" &g │ │ │ +001e2700: 743b 2661 6d70 3b32 3b0a 2020 2020 2020 t;&2;. │ │ │ +001e2710: 2020 2020 2020 2020 2020 6563 686f 2022 echo " │ │ │ +001e2720: 4e6f 7420 7265 6d65 6469 6174 696e 672c Not remediating, │ │ │ +001e2730: 2062 6563 6175 7365 2074 6865 7265 2069 because there i │ │ │ +001e2740: 7320 6e6f 2072 6563 6f72 6420 6f66 202f s no record of / │ │ │ +001e2750: 7661 722f 746d 7020 696e 202f 6574 632f var/tmp in /etc/ │ │ │ +001e2760: 6673 7461 6222 2026 6774 3b26 616d 703b fstab" >& │ │ │ +001e2770: 323b 2072 6574 7572 6e20 313b 207d 0a20 2; return 1; }. │ │ │ +001e2780: 2020 200a 0a0a 2020 2020 6d6f 756e 745f ... mount_ │ │ │ +001e2790: 706f 696e 745f 6d61 7463 685f 7265 6765 point_match_rege │ │ │ +001e27a0: 7870 3d22 2428 7072 696e 7466 2022 5e5b xp="$(printf "^[ │ │ │ +001e27b0: 5b3a 7370 6163 653a 5d5d 2a5b 5e23 5d2e [:space:]]*[^#]. │ │ │ +001e27c0: 2a5b 5b3a 7370 6163 653a 5d5d 2573 5b5b *[[:space:]]%s[[ │ │ │ +001e27d0: 3a73 7061 6365 3a5d 5d22 202f 7661 722f :space:]]" /var/ │ │ │ +001e27e0: 746d 7029 220a 0a20 2020 2023 2049 6620 tmp)".. # If │ │ │ +001e27f0: 7468 6520 6d6f 756e 7420 706f 696e 7420 the mount point │ │ │ +001e2800: 6973 206e 6f74 2069 6e20 2f65 7463 2f66 is not in /etc/f │ │ │ +001e2810: 7374 6162 2c20 6765 7420 7072 6576 696f stab, get previo │ │ │ +001e2820: 7573 206d 6f75 6e74 206f 7074 696f 6e73 us mount options │ │ │ +001e2830: 2066 726f 6d20 2f65 7463 2f6d 7461 620a from /etc/mtab. │ │ │ +001e2840: 2020 2020 6966 2021 2067 7265 7020 2d71 if ! grep -q │ │ │ +001e2850: 2022 246d 6f75 6e74 5f70 6f69 6e74 5f6d "$mount_point_m │ │ │ +001e2860: 6174 6368 5f72 6567 6578 7022 202f 6574 atch_regexp" /et │ │ │ +001e2870: 632f 6673 7461 623b 2074 6865 6e0a 2020 c/fstab; then. │ │ │ +001e2880: 2020 2020 2020 2320 7275 6e74 696d 6520 # runtime │ │ │ +001e2890: 6f70 7473 2077 6974 686f 7574 2073 6f6d opts without som │ │ │ +001e28a0: 6520 6175 746f 6d61 7469 6320 6b65 726e e automatic kern │ │ │ +001e28b0: 656c 2f75 7365 7273 7061 6365 2d61 6464 el/userspace-add │ │ │ +001e28c0: 6564 2064 6566 6175 6c74 730a 2020 2020 ed defaults. │ │ │ +001e28d0: 2020 2020 7072 6576 696f 7573 5f6d 6f75 previous_mou │ │ │ +001e28e0: 6e74 5f6f 7074 733d 2428 6772 6570 2022 nt_opts=$(grep " │ │ │ +001e28f0: 246d 6f75 6e74 5f70 6f69 6e74 5f6d 6174 $mount_point_mat │ │ │ +001e2900: 6368 5f72 6567 6578 7022 202f 6574 632f ch_regexp" /etc/ │ │ │ +001e2910: 6d74 6162 207c 2068 6561 6420 2d31 207c mtab | head -1 | │ │ │ +001e2920: 2020 6177 6b20 277b 7072 696e 7420 2434 awk '{print $4 │ │ │ +001e2930: 7d27 205c 0a20 2020 2020 2020 2020 2020 }' \. │ │ │ +001e2940: 2020 2020 2020 2020 207c 2073 6564 202d | sed - │ │ │ +001e2950: 4520 2273 2f28 7277 7c64 6566 6175 6c74 E "s/(rw|default │ │ │ +001e2960: 737c 7365 636c 6162 656c 7c6e 6f64 6576 s|seclabel|nodev │ │ │ +001e2970: 2928 2c7c 2429 2f2f 673b 732f 2c24 2f2f )(,|$)//g;s/,$// │ │ │ +001e2980: 2229 0a20 2020 2020 2020 205b 2022 2470 "). [ "$p │ │ │ +001e2990: 7265 7669 6f75 735f 6d6f 756e 745f 6f70 revious_mount_op │ │ │ +001e29a0: 7473 2220 5d20 2661 6d70 3b26 616d 703b ts" ] && │ │ │ +001e29b0: 2070 7265 7669 6f75 735f 6d6f 756e 745f previous_mount_ │ │ │ +001e29c0: 6f70 7473 2b3d 222c 220a 2020 2020 2020 opts+=",". │ │ │ +001e29d0: 2020 2320 496e 2069 736f 3936 3630 2066 # In iso9660 f │ │ │ +001e29e0: 696c 6573 7973 7465 6d73 206d 7461 6220 ilesystems mtab │ │ │ +001e29f0: 636f 756c 6420 6465 7363 7269 6265 2061 could describe a │ │ │ +001e2a00: 2022 626c 6f63 6b73 697a 6522 2076 616c "blocksize" val │ │ │ +001e2a10: 7565 2c20 7468 6973 2073 686f 756c 6420 ue, this should │ │ │ +001e2a20: 6265 2072 6566 6c65 6374 6564 2069 6e0a be reflected in. │ │ │ +001e2a30: 2020 2020 2020 2020 2320 6673 7461 6220 # fstab │ │ │ +001e2a40: 6173 2022 626c 6f63 6b22 2e20 2054 6865 as "block". The │ │ │ +001e2a50: 206e 6578 7420 7661 7269 6162 6c65 2069 next variable i │ │ │ +001e2a60: 7320 746f 2073 6174 6973 6679 2073 6865 s to satisfy she │ │ │ +001e2a70: 6c6c 6368 6563 6b20 5343 3230 3530 2e0a llcheck SC2050.. │ │ │ +001e2a80: 2020 2020 2020 2020 6673 5f74 7970 653d fs_type= │ │ │ +001e2a90: 2222 0a20 2020 2020 2020 2069 6620 5b20 "". if [ │ │ │ +001e2aa0: 2022 2466 735f 7479 7065 2220 3d3d 2022 "$fs_type" == " │ │ │ +001e2ab0: 6973 6f39 3636 3022 205d 203b 2074 6865 iso9660" ] ; the │ │ │ +001e2ac0: 6e0a 2020 2020 2020 2020 2020 2020 7072 n. pr │ │ │ +001e2ad0: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074 evious_mount_opt │ │ │ +001e2ae0: 733d 2428 7365 6420 2773 2f62 6c6f 636b s=$(sed 's/block │ │ │ +001e2af0: 7369 7a65 3d2f 626c 6f63 6b3d 2f27 2026 size=/block=/' & │ │ │ +001e2b00: 6c74 3b26 6c74 3b26 6c74 3b20 2224 7072 lt;<< "$pr │ │ │ +001e2b10: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074 evious_mount_opt │ │ │ +001e2b20: 7322 290a 2020 2020 2020 2020 6669 0a20 s"). fi. │ │ │ +001e2b30: 2020 2020 2020 2065 6368 6f20 2220 2f76 echo " /v │ │ │ +001e2b40: 6172 2f74 6d70 2020 6465 6661 756c 7473 ar/tmp defaults │ │ │ +001e2b50: 2c24 7b70 7265 7669 6f75 735f 6d6f 756e ,${previous_moun │ │ │ +001e2b60: 745f 6f70 7473 7d6e 6f64 6576 2030 2030 t_opts}nodev 0 0 │ │ │ +001e2b70: 2220 2667 743b 2667 743b 202f 6574 632f " >> /etc/ │ │ │ +001e2b80: 6673 7461 620a 2020 2020 2320 4966 2074 fstab. # If t │ │ │ +001e2b90: 6865 206d 6f75 6e74 5f6f 7074 206f 7074 he mount_opt opt │ │ │ +001e2ba0: 696f 6e20 6973 206e 6f74 2061 6c72 6561 ion is not alrea │ │ │ +001e2bb0: 6479 2069 6e20 7468 6520 6d6f 756e 7420 dy in the mount │ │ │ +001e2bc0: 706f 696e 7427 7320 2f65 7463 2f66 7374 point's /etc/fst │ │ │ +001e2bd0: 6162 2065 6e74 7279 2c20 6164 6420 6974 ab entry, add it │ │ │ +001e2be0: 0a20 2020 2065 6c69 6620 2120 6772 6570 . elif ! grep │ │ │ +001e2bf0: 2022 246d 6f75 6e74 5f70 6f69 6e74 5f6d "$mount_point_m │ │ │ +001e2c00: 6174 6368 5f72 6567 6578 7022 202f 6574 atch_regexp" /et │ │ │ +001e2c10: 632f 6673 7461 6220 7c20 6772 6570 202d c/fstab | grep - │ │ │ +001e2c20: 7120 226e 6f64 6576 223b 2074 6865 6e0a q "nodev"; then. │ │ │ +001e2c30: 2020 2020 2020 2020 7072 6576 696f 7573 previous │ │ │ +001e2c40: 5f6d 6f75 6e74 5f6f 7074 733d 2428 6772 _mount_opts=$(gr │ │ │ +001e2c50: 6570 2022 246d 6f75 6e74 5f70 6f69 6e74 ep "$mount_point │ │ │ +001e2c60: 5f6d 6174 6368 5f72 6567 6578 7022 202f _match_regexp" / │ │ │ +001e2c70: 6574 632f 6673 7461 6220 7c20 6177 6b20 etc/fstab | awk │ │ │ +001e2c80: 277b 7072 696e 7420 2434 7d27 290a 2020 '{print $4}'). │ │ │ +001e2c90: 2020 2020 2020 7365 6420 2d69 2022 737c sed -i "s| │ │ │ +001e2ca0: 5c28 247b 6d6f 756e 745f 706f 696e 745f \(${mount_point_ │ │ │ +001e2cb0: 6d61 7463 685f 7265 6765 7870 7d2e 2a24 match_regexp}.*$ │ │ │ +001e2cc0: 7b70 7265 7669 6f75 735f 6d6f 756e 745f {previous_mount_ │ │ │ +001e2cd0: 6f70 7473 7d5c 297c 5c31 2c6e 6f64 6576 opts}\)|\1,nodev │ │ │ +001e2ce0: 7c22 202f 6574 632f 6673 7461 620a 2020 |" /etc/fstab. │ │ │ +001e2cf0: 2020 6669 0a0a 0a20 2020 2069 6620 6d6b fi... if mk │ │ │ +001e2d00: 6469 7220 2d70 2022 2f76 6172 2f74 6d70 dir -p "/var/tmp │ │ │ +001e2d10: 223b 2074 6865 6e0a 2020 2020 2020 2020 "; then. │ │ │ +001e2d20: 6966 206d 6f75 6e74 706f 696e 7420 2d71 if mountpoint -q │ │ │ +001e2d30: 2022 2f76 6172 2f74 6d70 223b 2074 6865 "/var/tmp"; the │ │ │ +001e2d40: 6e0a 2020 2020 2020 2020 2020 2020 6d6f n. mo │ │ │ +001e2d50: 756e 7420 2d6f 2072 656d 6f75 6e74 202d unt -o remount - │ │ │ +001e2d60: 2d74 6172 6765 7420 222f 7661 722f 746d -target "/var/tm │ │ │ +001e2d70: 7022 0a20 2020 2020 2020 2066 690a 2020 p". fi. │ │ │ +001e2d80: 2020 6669 0a7d 0a0a 7065 7266 6f72 6d5f fi.}..perform_ │ │ │ +001e2d90: 7265 6d65 6469 6174 696f 6e0a 0a65 6c73 remediation..els │ │ │ +001e2da0: 650a 2020 2020 2667 743b 2661 6d70 3b32 e. >&2 │ │ │ +001e2db0: 2065 6368 6f20 2752 656d 6564 6961 7469 echo 'Remediati │ │ │ +001e2dc0: 6f6e 2069 7320 6e6f 7420 6170 706c 6963 on is not applic │ │ │ +001e2dd0: 6162 6c65 2c20 6e6f 7468 696e 6720 7761 able, nothing wa │ │ │ +001e2de0: 7320 646f 6e65 270a 6669 0a3c 2f63 6f64 s done'.fi.
Remed │ │ │ +001e2ea0: 6961 7469 6f6e 2041 6e61 636f 6e64 6120 iation Anaconda │ │ │ +001e2eb0: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ +001e2ec0: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
< │ │ │ +001e2fb0: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
Com │ │ │ +001e2f40: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ +001e2f70: 3a3c 2f74 683e 3c74 643e 6869 6768 3c2f :high
│ │ │ +001e2f90: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +001e2fa0: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +001e2fc0: 3c2f 7468 3e3c 7464 3e65 6e61 626c 653c enable< │ │ │ +001e2fd0: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
.par
│ │ │ +001e2ff0: 7420 2f76 6172 2f74 6d70 202d 2d6d 6f75  t /var/tmp --mou
│ │ │ +001e3000: 6e74 6f70 7469 6f6e 733d 226e 6f64 6576  ntoptions="nodev
│ │ │ +001e3010: 220a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  ".
< │ │ │ 001e3020: 2f64 6976 3e3c 2f64 6976 3e3c 2f74 643e /div>
│ │ │ 001e3030: 3c2f 7472 3e3c 2f74 626f 6479 3e3c 2f74 < │ │ │ 001e3050: 7472 2064 6174 612d 7474 2d69 643d 2278 tr data-tt-id="x │ │ │ 001e3060: 6363 6466 5f6f 7267 2e73 7367 7072 6f6a ccdf_org.ssgproj │ │ │ 001e3070: 6563 742e 636f 6e74 656e 745f 7275 6c65 ect.content_rule │ │ │ 001e3080: 5f6d 6f75 6e74 5f6f 7074 696f 6e5f 7661 _mount_option_va │ │ │ @@ -123803,568 +123803,568 @@ │ │ │ 001e39a0: 6174 612d 7461 7267 6574 3d22 2369 6435 ata-target="#id5 │ │ │ 001e39b0: 3536 2220 7461 6269 6e64 6578 3d22 3022 56" tabindex="0" │ │ │ 001e39c0: 2072 6f6c 653d 2262 7574 746f 6e22 2061 role="button" a │ │ │ 001e39d0: 7269 612d 6578 7061 6e64 6564 3d22 6661 ria-expanded="fa │ │ │ 001e39e0: 6c73 6522 2074 6974 6c65 3d22 4163 7469 lse" title="Acti │ │ │ 001e39f0: 7661 7465 2074 6f20 7265 7665 616c 2220 vate to reveal" │ │ │ 001e3a00: 6872 6566 3d22 2321 223e 5265 6d65 6469 href="#!">Remedi │ │ │ -001e3a10: 6174 696f 6e20 416e 6163 6f6e 6461 2073 ation Anaconda s │ │ │ -001e3a20: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ -001e3ab0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -001e3ac0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -001e3ae0: 3c2f 7468 3e3c 7464 3e68 6967 683c 2f74 high
R │ │ │ -001e3b00: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -001e3b10: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -001e3b30: 2f74 683e 3c74 643e 656e 6162 6c65 3c2f /th>enable
│ │ │ -001e3b50: 3c70 7265 3e3c 636f 6465 3e0a 7061 7274
.part
│ │ │ -001e3b60: 202f 7661 722f 746d 7020 2d2d 6d6f 756e   /var/tmp --moun
│ │ │ -001e3b70: 746f 7074 696f 6e73 3d22 6e6f 6578 6563  toptions="noexec
│ │ │ -001e3b80: 220a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  ".
< │ │ │ -001e3b90: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation An │ │ │ -001e3c40: 7369 626c 6520 736e 6970 7065 7420 e287 sible snippet .. │ │ │ -001e3c50: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ -001e3cd0: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -001e3cf0: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr> │ │ │ -001e3d40: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472
low
Disr │ │ │ -001e3d00: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -001e3d10: 6869 6768 3c2f 7464 3e3c 2f74 723e 3c74 high
Reboot:false
Str │ │ │ -001e3d50: 6174 6567 793a 3c2f 7468 3e3c 7464 3e63 ategy:c │ │ │ -001e3d60: 6f6e 6669 6775 7265 3c2f 7464 3e3c 2f74 onfigure
<
│ │ │ -001e3d80: 636f 6465 3e2d 206e 616d 653a 2047 6174  code>- name: Gat
│ │ │ -001e3d90: 6865 7220 7468 6520 7061 636b 6167 6520  her the package 
│ │ │ -001e3da0: 6661 6374 730a 2020 7061 636b 6167 655f  facts.  package_
│ │ │ -001e3db0: 6661 6374 733a 0a20 2020 206d 616e 6167  facts:.    manag
│ │ │ -001e3dc0: 6572 3a20 6175 746f 0a20 2074 6167 733a  er: auto.  tags:
│ │ │ -001e3dd0: 0a20 202d 2063 6f6e 6669 6775 7265 5f73  .  - configure_s
│ │ │ -001e3de0: 7472 6174 6567 790a 2020 2d20 6869 6768  trategy.  - high
│ │ │ -001e3df0: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ -001e3e00: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ -001e3e10: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ -001e3e20: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074  ty.  - mount_opt
│ │ │ -001e3e30: 696f 6e5f 7661 725f 746d 705f 6e6f 6578  ion_var_tmp_noex
│ │ │ -001e3e40: 6563 0a20 202d 206e 6f5f 7265 626f 6f74  ec.  - no_reboot
│ │ │ -001e3e50: 5f6e 6565 6465 640a 0a2d 206e 616d 653a  _needed..- name:
│ │ │ -001e3e60: 2027 4164 6420 6e6f 6578 6563 204f 7074   'Add noexec Opt
│ │ │ -001e3e70: 696f 6e20 746f 202f 7661 722f 746d 703a  ion to /var/tmp:
│ │ │ -001e3e80: 2043 6865 636b 2069 6e66 6f72 6d61 7469   Check informati
│ │ │ -001e3e90: 6f6e 2061 7373 6f63 6961 7465 6420 746f  on associated to
│ │ │ -001e3ea0: 206d 6f75 6e74 706f 696e 7427 0a20 2061   mountpoint'.  a
│ │ │ -001e3eb0: 6e73 6962 6c65 2e62 7569 6c74 696e 2e63  nsible.builtin.c
│ │ │ -001e3ec0: 6f6d 6d61 6e64 3a20 6669 6e64 6d6e 7420  ommand: findmnt 
│ │ │ -001e3ed0: 2d2d 6673 7461 6220 272f 7661 722f 746d  --fstab '/var/tm
│ │ │ -001e3ee0: 7027 0a20 2072 6567 6973 7465 723a 2064  p'.  register: d
│ │ │ -001e3ef0: 6576 6963 655f 6e61 6d65 0a20 2066 6169  evice_name.  fai
│ │ │ -001e3f00: 6c65 645f 7768 656e 3a20 6465 7669 6365  led_when: device
│ │ │ -001e3f10: 5f6e 616d 652e 7263 2026 6774 3b20 310a  _name.rc > 1.
│ │ │ -001e3f20: 2020 6368 616e 6765 645f 7768 656e 3a20    changed_when: 
│ │ │ -001e3f30: 6661 6c73 650a 2020 6368 6563 6b5f 6d6f  false.  check_mo
│ │ │ -001e3f40: 6465 3a20 6661 6c73 650a 2020 7768 656e  de: false.  when
│ │ │ -001e3f50: 3a0a 2020 2d20 2820 6e6f 7420 2820 226b  :.  - ( not ( "k
│ │ │ -001e3f60: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ -001e3f70: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001e3f80: 2061 6e64 2022 626f 6f74 6322 2069 6e20   and "bootc" in 
│ │ │ -001e3f90: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001e3fa0: 636b 6167 6573 0a20 2020 2061 6e64 206e  ckages.    and n
│ │ │ -001e3fb0: 6f74 2022 6f70 656e 7368 6966 742d 6b75  ot "openshift-ku
│ │ │ -001e3fc0: 6265 6c65 7422 2069 6e20 616e 7369 626c  belet" in ansibl
│ │ │ -001e3fd0: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001e3fe0: 2061 6e64 2022 6f73 7472 6565 2220 696e   and "ostree" in
│ │ │ -001e3ff0: 2061 6e73 6962 6c65 5f70 726f 635f 636d   ansible_proc_cm
│ │ │ -001e4000: 646c 696e 650a 2020 2020 2920 616e 6420  dline.    ) and 
│ │ │ -001e4010: 6e6f 7420 2820 616e 7369 626c 655f 7669  not ( ansible_vi
│ │ │ -001e4020: 7274 7561 6c69 7a61 7469 6f6e 5f74 7970  rtualization_typ
│ │ │ -001e4030: 6520 696e 205b 2264 6f63 6b65 7222 2c20  e in ["docker", 
│ │ │ -001e4040: 226c 7863 222c 2022 6f70 656e 767a 222c  "lxc", "openvz",
│ │ │ -001e4050: 2022 706f 646d 616e 222c 0a20 2020 2022   "podman",.    "
│ │ │ -001e4060: 636f 6e74 6169 6e65 7222 5d20 2920 290a  container"] ) ).
│ │ │ -001e4070: 2020 2d20 2722 2f76 6172 2f74 6d70 2220    - '"/var/tmp" 
│ │ │ -001e4080: 696e 2061 6e73 6962 6c65 5f6d 6f75 6e74  in ansible_mount
│ │ │ -001e4090: 7320 7c20 6d61 7028 6174 7472 6962 7574  s | map(attribut
│ │ │ -001e40a0: 653d 226d 6f75 6e74 2229 207c 206c 6973  e="mount") | lis
│ │ │ -001e40b0: 7427 0a20 2074 6167 733a 0a20 202d 2063  t'.  tags:.  - c
│ │ │ -001e40c0: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ -001e40d0: 790a 2020 2d20 6869 6768 5f64 6973 7275  y.  - high_disru
│ │ │ -001e40e0: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f  ption.  - low_co
│ │ │ -001e40f0: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ -001e4100: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ -001e4110: 206d 6f75 6e74 5f6f 7074 696f 6e5f 7661   mount_option_va
│ │ │ -001e4120: 725f 746d 705f 6e6f 6578 6563 0a20 202d  r_tmp_noexec.  -
│ │ │ -001e4130: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ -001e4140: 640a 0a2d 206e 616d 653a 2027 4164 6420  d..- name: 'Add 
│ │ │ -001e4150: 6e6f 6578 6563 204f 7074 696f 6e20 746f  noexec Option to
│ │ │ -001e4160: 202f 7661 722f 746d 703a 2043 7265 6174   /var/tmp: Creat
│ │ │ -001e4170: 6520 6d6f 756e 745f 696e 666f 2064 6963  e mount_info dic
│ │ │ -001e4180: 7469 6f6e 6172 7920 7661 7269 6162 6c65  tionary variable
│ │ │ -001e4190: 270a 2020 7365 745f 6661 6374 3a0a 2020  '.  set_fact:.  
│ │ │ -001e41a0: 2020 6d6f 756e 745f 696e 666f 3a20 277b    mount_info: '{
│ │ │ -001e41b0: 7b20 6d6f 756e 745f 696e 666f 7c64 6566  { mount_info|def
│ │ │ -001e41c0: 6175 6c74 287b 7d29 7c63 6f6d 6269 6e65  ault({})|combine
│ │ │ -001e41d0: 287b 6974 656d 2e30 3a20 6974 656d 2e31  ({item.0: item.1
│ │ │ -001e41e0: 7d29 207d 7d27 0a20 2077 6974 685f 746f  }) }}'.  with_to
│ │ │ -001e41f0: 6765 7468 6572 3a0a 2020 2d20 277b 7b20  gether:.  - '{{ 
│ │ │ -001e4200: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ -001e4210: 7574 5f6c 696e 6573 5b30 5d2e 7370 6c69  ut_lines[0].spli
│ │ │ -001e4220: 7428 2920 7c20 6d61 7028 2727 6c6f 7765  t() | map(''lowe
│ │ │ -001e4230: 7227 2729 207c 206c 6973 7420 7d7d 270a  r'') | list }}'.
│ │ │ -001e4240: 2020 2d20 277b 7b20 6465 7669 6365 5f6e    - '{{ device_n
│ │ │ -001e4250: 616d 652e 7374 646f 7574 5f6c 696e 6573  ame.stdout_lines
│ │ │ -001e4260: 5b31 5d2e 7370 6c69 7428 2920 7c20 6c69  [1].split() | li
│ │ │ -001e4270: 7374 207d 7d27 0a20 2077 6865 6e3a 0a20  st }}'.  when:. 
│ │ │ -001e4280: 202d 2028 206e 6f74 2028 2022 6b65 726e   - ( not ( "kern
│ │ │ -001e4290: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ -001e42a0: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ -001e42b0: 6420 2262 6f6f 7463 2220 696e 2061 6e73  d "bootc" in ans
│ │ │ -001e42c0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001e42d0: 6765 730a 2020 2020 616e 6420 6e6f 7420  ges.    and not 
│ │ │ -001e42e0: 226f 7065 6e73 6869 6674 2d6b 7562 656c  "openshift-kubel
│ │ │ -001e42f0: 6574 2220 696e 2061 6e73 6962 6c65 5f66  et" in ansible_f
│ │ │ -001e4300: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ -001e4310: 6420 226f 7374 7265 6522 2069 6e20 616e  d "ostree" in an
│ │ │ -001e4320: 7369 626c 655f 7072 6f63 5f63 6d64 6c69  sible_proc_cmdli
│ │ │ -001e4330: 6e65 0a20 2020 2029 2061 6e64 206e 6f74  ne.    ) and not
│ │ │ -001e4340: 2028 2061 6e73 6962 6c65 5f76 6972 7475   ( ansible_virtu
│ │ │ -001e4350: 616c 697a 6174 696f 6e5f 7479 7065 2069  alization_type i
│ │ │ -001e4360: 6e20 5b22 646f 636b 6572 222c 2022 6c78  n ["docker", "lx
│ │ │ -001e4370: 6322 2c20 226f 7065 6e76 7a22 2c20 2270  c", "openvz", "p
│ │ │ -001e4380: 6f64 6d61 6e22 2c0a 2020 2020 2263 6f6e  odman",.    "con
│ │ │ -001e4390: 7461 696e 6572 225d 2029 2029 0a20 202d  tainer"] ) ).  -
│ │ │ -001e43a0: 2027 222f 7661 722f 746d 7022 2069 6e20   '"/var/tmp" in 
│ │ │ -001e43b0: 616e 7369 626c 655f 6d6f 756e 7473 207c  ansible_mounts |
│ │ │ -001e43c0: 206d 6170 2861 7474 7269 6275 7465 3d22   map(attribute="
│ │ │ -001e43d0: 6d6f 756e 7422 2920 7c20 6c69 7374 270a  mount") | list'.
│ │ │ -001e43e0: 2020 2d20 6465 7669 6365 5f6e 616d 652e    - device_name.
│ │ │ -001e43f0: 7374 646f 7574 2069 7320 6465 6669 6e65  stdout is define
│ │ │ -001e4400: 6420 616e 6420 6465 7669 6365 5f6e 616d  d and device_nam
│ │ │ -001e4410: 652e 7374 646f 7574 5f6c 696e 6573 2069  e.stdout_lines i
│ │ │ -001e4420: 7320 6465 6669 6e65 640a 2020 2d20 2864  s defined.  - (d
│ │ │ -001e4430: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ -001e4440: 7420 7c20 6c65 6e67 7468 2026 6774 3b20  t | length > 
│ │ │ -001e4450: 3029 0a20 2074 6167 733a 0a20 202d 2063  0).  tags:.  - c
│ │ │ -001e4460: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ -001e4470: 790a 2020 2d20 6869 6768 5f64 6973 7275  y.  - high_disru
│ │ │ -001e4480: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f  ption.  - low_co
│ │ │ -001e4490: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ -001e44a0: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ -001e44b0: 206d 6f75 6e74 5f6f 7074 696f 6e5f 7661   mount_option_va
│ │ │ -001e44c0: 725f 746d 705f 6e6f 6578 6563 0a20 202d  r_tmp_noexec.  -
│ │ │ -001e44d0: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ -001e44e0: 640a 0a2d 206e 616d 653a 2027 4164 6420  d..- name: 'Add 
│ │ │ -001e44f0: 6e6f 6578 6563 204f 7074 696f 6e20 746f  noexec Option to
│ │ │ -001e4500: 202f 7661 722f 746d 703a 2049 6620 2f76   /var/tmp: If /v
│ │ │ -001e4510: 6172 2f74 6d70 206e 6f74 206d 6f75 6e74  ar/tmp not mount
│ │ │ -001e4520: 6564 2c20 6372 6166 7420 6d6f 756e 745f  ed, craft mount_
│ │ │ -001e4530: 696e 666f 0a20 2020 206d 616e 7561 6c6c  info.    manuall
│ │ │ -001e4540: 7927 0a20 2073 6574 5f66 6163 743a 0a20  y'.  set_fact:. 
│ │ │ -001e4550: 2020 206d 6f75 6e74 5f69 6e66 6f3a 2027     mount_info: '
│ │ │ -001e4560: 7b7b 206d 6f75 6e74 5f69 6e66 6f7c 6465  {{ mount_info|de
│ │ │ -001e4570: 6661 756c 7428 7b7d 297c 636f 6d62 696e  fault({})|combin
│ │ │ -001e4580: 6528 7b69 7465 6d2e 303a 2069 7465 6d2e  e({item.0: item.
│ │ │ -001e4590: 317d 2920 7d7d 270a 2020 7769 7468 5f74  1}) }}'.  with_t
│ │ │ -001e45a0: 6f67 6574 6865 723a 0a20 202d 202d 2074  ogether:.  - - t
│ │ │ -001e45b0: 6172 6765 740a 2020 2020 2d20 736f 7572  arget.    - sour
│ │ │ -001e45c0: 6365 0a20 2020 202d 2066 7374 7970 650a  ce.    - fstype.
│ │ │ -001e45d0: 2020 2020 2d20 6f70 7469 6f6e 730a 2020      - options.  
│ │ │ -001e45e0: 2d20 2d20 2f76 6172 2f74 6d70 0a20 2020  - - /var/tmp.   
│ │ │ -001e45f0: 202d 2027 270a 2020 2020 2d20 2727 0a20   - ''.    - ''. 
│ │ │ -001e4600: 2020 202d 2064 6566 6175 6c74 730a 2020     - defaults.  
│ │ │ -001e4610: 7768 656e 3a0a 2020 2d20 2820 6e6f 7420  when:.  - ( not 
│ │ │ -001e4620: 2820 226b 6572 6e65 6c22 2069 6e20 616e  ( "kernel" in an
│ │ │ -001e4630: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001e4640: 6167 6573 2061 6e64 2022 626f 6f74 6322  ages and "bootc"
│ │ │ -001e4650: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001e4660: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ -001e4670: 6e64 206e 6f74 2022 6f70 656e 7368 6966  nd not "openshif
│ │ │ -001e4680: 742d 6b75 6265 6c65 7422 2069 6e20 616e  t-kubelet" in an
│ │ │ -001e4690: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001e46a0: 6167 6573 2061 6e64 2022 6f73 7472 6565  ages and "ostree
│ │ │ -001e46b0: 2220 696e 2061 6e73 6962 6c65 5f70 726f  " in ansible_pro
│ │ │ -001e46c0: 635f 636d 646c 696e 650a 2020 2020 2920  c_cmdline.    ) 
│ │ │ -001e46d0: 616e 6420 6e6f 7420 2820 616e 7369 626c  and not ( ansibl
│ │ │ -001e46e0: 655f 7669 7274 7561 6c69 7a61 7469 6f6e  e_virtualization
│ │ │ -001e46f0: 5f74 7970 6520 696e 205b 2264 6f63 6b65  _type in ["docke
│ │ │ -001e4700: 7222 2c20 226c 7863 222c 2022 6f70 656e  r", "lxc", "open
│ │ │ -001e4710: 767a 222c 2022 706f 646d 616e 222c 0a20  vz", "podman",. 
│ │ │ -001e4720: 2020 2022 636f 6e74 6169 6e65 7222 5d20     "container"] 
│ │ │ -001e4730: 2920 290a 2020 2d20 2722 2f76 6172 2f74  ) ).  - '"/var/t
│ │ │ -001e4740: 6d70 2220 696e 2061 6e73 6962 6c65 5f6d  mp" in ansible_m
│ │ │ -001e4750: 6f75 6e74 7320 7c20 6d61 7028 6174 7472  ounts | map(attr
│ │ │ -001e4760: 6962 7574 653d 226d 6f75 6e74 2229 207c  ibute="mount") |
│ │ │ -001e4770: 206c 6973 7427 0a20 202d 2028 222d 2d66   list'.  - ("--f
│ │ │ -001e4780: 7374 6162 2220 7c20 6c65 6e67 7468 203d  stab" | length =
│ │ │ -001e4790: 3d20 3029 0a20 202d 2064 6576 6963 655f  = 0).  - device_
│ │ │ -001e47a0: 6e61 6d65 2e73 7464 6f75 7420 6973 2064  name.stdout is d
│ │ │ -001e47b0: 6566 696e 6564 2061 6e64 2064 6576 6963  efined and devic
│ │ │ -001e47c0: 655f 6e61 6d65 2e73 7464 6f75 745f 6c69  e_name.stdout_li
│ │ │ -001e47d0: 6e65 7320 6973 2064 6566 696e 6564 0a20  nes is defined. 
│ │ │ -001e47e0: 202d 2028 6465 7669 6365 5f6e 616d 652e   - (device_name.
│ │ │ -001e47f0: 7374 646f 7574 207c 206c 656e 6774 6820  stdout | length 
│ │ │ -001e4800: 3d3d 2030 290a 2020 7461 6773 3a0a 2020  == 0).  tags:.  
│ │ │ -001e4810: 2d20 636f 6e66 6967 7572 655f 7374 7261  - configure_stra
│ │ │ -001e4820: 7465 6779 0a20 202d 2068 6967 685f 6469  tegy.  - high_di
│ │ │ -001e4830: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ -001e4840: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ -001e4850: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ -001e4860: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e    - mount_option
│ │ │ -001e4870: 5f76 6172 5f74 6d70 5f6e 6f65 7865 630a  _var_tmp_noexec.
│ │ │ -001e4880: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ -001e4890: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741  eded..- name: 'A
│ │ │ -001e48a0: 6464 206e 6f65 7865 6320 4f70 7469 6f6e  dd noexec Option
│ │ │ -001e48b0: 2074 6f20 2f76 6172 2f74 6d70 3a20 4d61   to /var/tmp: Ma
│ │ │ -001e48c0: 6b65 2073 7572 6520 6e6f 6578 6563 206f  ke sure noexec o
│ │ │ -001e48d0: 7074 696f 6e20 6973 2070 6172 7420 6f66  ption is part of
│ │ │ -001e48e0: 2074 6865 2074 6f0a 2020 2020 2f76 6172   the to.    /var
│ │ │ -001e48f0: 2f74 6d70 206f 7074 696f 6e73 270a 2020  /tmp options'.  
│ │ │ -001e4900: 7365 745f 6661 6374 3a0a 2020 2020 6d6f  set_fact:.    mo
│ │ │ -001e4910: 756e 745f 696e 666f 3a20 277b 7b20 6d6f  unt_info: '{{ mo
│ │ │ -001e4920: 756e 745f 696e 666f 207c 2063 6f6d 6269  unt_info | combi
│ │ │ -001e4930: 6e65 2820 7b27 276f 7074 696f 6e73 2727  ne( {''options''
│ │ │ -001e4940: 3a27 2727 277e 286d 6f75 6e74 5f69 6e66  :''''~(mount_inf
│ │ │ -001e4950: 6f2e 6f70 7469 6f6e 7320 7c0a 2020 2020  o.options |.    
│ │ │ -001e4960: 2020 6465 6661 756c 7428 2727 2727 2929    default(''''))
│ │ │ -001e4970: 7e28 2727 2c27 2720 6966 2028 6d6f 756e  ~('','' if (moun
│ │ │ -001e4980: 745f 696e 666f 2e6f 7074 696f 6e73 207c  t_info.options |
│ │ │ -001e4990: 2064 6566 6175 6c74 2827 2727 2729 2920   default('''')) 
│ │ │ -001e49a0: 656c 7365 2027 2727 2729 7e27 276e 6f65  else '''')~''noe
│ │ │ -001e49b0: 7865 6327 270a 2020 2020 2020 7d29 207d  xec''.      }) }
│ │ │ -001e49c0: 7d27 0a20 2077 6865 6e3a 0a20 202d 2028  }'.  when:.  - (
│ │ │ -001e49d0: 206e 6f74 2028 2022 6b65 726e 656c 2220   not ( "kernel" 
│ │ │ -001e49e0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001e49f0: 2e70 6163 6b61 6765 7320 616e 6420 2262  .packages and "b
│ │ │ -001e4a00: 6f6f 7463 2220 696e 2061 6e73 6962 6c65  ootc" in ansible
│ │ │ -001e4a10: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ -001e4a20: 2020 2020 616e 6420 6e6f 7420 226f 7065      and not "ope
│ │ │ -001e4a30: 6e73 6869 6674 2d6b 7562 656c 6574 2220  nshift-kubelet" 
│ │ │ -001e4a40: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001e4a50: 2e70 6163 6b61 6765 7320 616e 6420 226f  .packages and "o
│ │ │ -001e4a60: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ -001e4a70: 655f 7072 6f63 5f63 6d64 6c69 6e65 0a20  e_proc_cmdline. 
│ │ │ -001e4a80: 2020 2029 2061 6e64 206e 6f74 2028 2061     ) and not ( a
│ │ │ -001e4a90: 6e73 6962 6c65 5f76 6972 7475 616c 697a  nsible_virtualiz
│ │ │ -001e4aa0: 6174 696f 6e5f 7479 7065 2069 6e20 5b22  ation_type in ["
│ │ │ -001e4ab0: 646f 636b 6572 222c 2022 6c78 6322 2c20  docker", "lxc", 
│ │ │ -001e4ac0: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61  "openvz", "podma
│ │ │ -001e4ad0: 6e22 2c0a 2020 2020 2263 6f6e 7461 696e  n",.    "contain
│ │ │ -001e4ae0: 6572 225d 2029 2029 0a20 202d 2027 222f  er"] ) ).  - '"/
│ │ │ -001e4af0: 7661 722f 746d 7022 2069 6e20 616e 7369  var/tmp" in ansi
│ │ │ -001e4b00: 626c 655f 6d6f 756e 7473 207c 206d 6170  ble_mounts | map
│ │ │ -001e4b10: 2861 7474 7269 6275 7465 3d22 6d6f 756e  (attribute="moun
│ │ │ -001e4b20: 7422 2920 7c20 6c69 7374 270a 2020 2d20  t") | list'.  - 
│ │ │ -001e4b30: 6d6f 756e 745f 696e 666f 2069 7320 6465  mount_info is de
│ │ │ -001e4b40: 6669 6e65 6420 616e 6420 226e 6f65 7865  fined and "noexe
│ │ │ -001e4b50: 6322 206e 6f74 2069 6e20 286d 6f75 6e74  c" not in (mount
│ │ │ -001e4b60: 5f69 6e66 6f2e 6f70 7469 6f6e 7320 7c20  _info.options | 
│ │ │ -001e4b70: 6465 6661 756c 7428 2727 2929 0a20 2074  default('')).  t
│ │ │ -001e4b80: 6167 733a 0a20 202d 2063 6f6e 6669 6775  ags:.  - configu
│ │ │ -001e4b90: 7265 5f73 7472 6174 6567 790a 2020 2d20  re_strategy.  - 
│ │ │ -001e4ba0: 6869 6768 5f64 6973 7275 7074 696f 6e0a  high_disruption.
│ │ │ -001e4bb0: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ -001e4bc0: 7479 0a20 202d 206d 6564 6975 6d5f 7365  ty.  - medium_se
│ │ │ -001e4bd0: 7665 7269 7479 0a20 202d 206d 6f75 6e74  verity.  - mount
│ │ │ -001e4be0: 5f6f 7074 696f 6e5f 7661 725f 746d 705f  _option_var_tmp_
│ │ │ -001e4bf0: 6e6f 6578 6563 0a20 202d 206e 6f5f 7265  noexec.  - no_re
│ │ │ -001e4c00: 626f 6f74 5f6e 6565 6465 640a 0a2d 206e  boot_needed..- n
│ │ │ -001e4c10: 616d 653a 2027 4164 6420 6e6f 6578 6563  ame: 'Add noexec
│ │ │ -001e4c20: 204f 7074 696f 6e20 746f 202f 7661 722f   Option to /var/
│ │ │ -001e4c30: 746d 703a 2045 6e73 7572 6520 2f76 6172  tmp: Ensure /var
│ │ │ -001e4c40: 2f74 6d70 2069 7320 6d6f 756e 7465 6420  /tmp is mounted 
│ │ │ -001e4c50: 7769 7468 206e 6f65 7865 6320 6f70 7469  with noexec opti
│ │ │ -001e4c60: 6f6e 270a 2020 616e 7369 626c 652e 706f  on'.  ansible.po
│ │ │ -001e4c70: 7369 782e 6d6f 756e 743a 0a20 2020 2070  six.mount:.    p
│ │ │ -001e4c80: 6174 683a 202f 7661 722f 746d 700a 2020  ath: /var/tmp.  
│ │ │ -001e4c90: 2020 7372 633a 2027 7b7b 206d 6f75 6e74    src: '{{ mount
│ │ │ -001e4ca0: 5f69 6e66 6f2e 736f 7572 6365 207c 2064  _info.source | d
│ │ │ -001e4cb0: 6566 6175 6c74 2827 2727 2729 207d 7d27  efault('''') }}'
│ │ │ -001e4cc0: 0a20 2020 206f 7074 733a 2027 7b7b 206d  .    opts: '{{ m
│ │ │ -001e4cd0: 6f75 6e74 5f69 6e66 6f2e 6f70 7469 6f6e  ount_info.option
│ │ │ -001e4ce0: 7320 7c20 6465 6661 756c 7428 2727 2727  s | default(''''
│ │ │ -001e4cf0: 2920 7d7d 270a 2020 2020 7374 6174 653a  ) }}'.    state:
│ │ │ -001e4d00: 206d 6f75 6e74 6564 0a20 2020 2066 7374   mounted.    fst
│ │ │ -001e4d10: 7970 653a 2027 7b7b 206d 6f75 6e74 5f69  ype: '{{ mount_i
│ │ │ -001e4d20: 6e66 6f2e 6673 7479 7065 207c 2064 6566  nfo.fstype | def
│ │ │ -001e4d30: 6175 6c74 2827 2727 2729 207d 7d27 0a20  ault('''') }}'. 
│ │ │ -001e4d40: 2072 6567 6973 7465 723a 206d 6f75 6e74   register: mount
│ │ │ -001e4d50: 5f72 6573 756c 740a 2020 6661 696c 6564  _result.  failed
│ │ │ -001e4d60: 5f77 6865 6e3a 0a20 202d 206d 6f75 6e74  _when:.  - mount
│ │ │ -001e4d70: 5f72 6573 756c 7420 6973 2066 6169 6c65  _result is faile
│ │ │ -001e4d80: 640a 2020 2d20 2727 2774 6172 6765 7420  d.  - '''target 
│ │ │ -001e4d90: 6973 2062 7573 7927 2720 6e6f 7420 696e  is busy'' not in
│ │ │ -001e4da0: 2028 6d6f 756e 745f 7265 7375 6c74 2e6d   (mount_result.m
│ │ │ -001e4db0: 7367 207c 2064 6566 6175 6c74 2827 2727  sg | default('''
│ │ │ -001e4dc0: 2729 2927 0a20 202d 2027 2727 616c 7265  '))'.  - '''alre
│ │ │ -001e4dd0: 6164 7920 6d6f 756e 7465 6427 2720 6e6f  ady mounted'' no
│ │ │ -001e4de0: 7420 696e 2028 6d6f 756e 745f 7265 7375  t in (mount_resu
│ │ │ -001e4df0: 6c74 2e6d 7367 207c 2064 6566 6175 6c74  lt.msg | default
│ │ │ -001e4e00: 2827 2727 2729 2927 0a20 2077 6865 6e3a  (''''))'.  when:
│ │ │ -001e4e10: 0a20 202d 2028 206e 6f74 2028 2022 6b65  .  - ( not ( "ke
│ │ │ -001e4e20: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ -001e4e30: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ -001e4e40: 616e 6420 2262 6f6f 7463 2220 696e 2061  and "bootc" in a
│ │ │ -001e4e50: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001e4e60: 6b61 6765 730a 2020 2020 616e 6420 6e6f  kages.    and no
│ │ │ -001e4e70: 7420 226f 7065 6e73 6869 6674 2d6b 7562  t "openshift-kub
│ │ │ -001e4e80: 656c 6574 2220 696e 2061 6e73 6962 6c65  elet" in ansible
│ │ │ -001e4e90: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ -001e4ea0: 616e 6420 226f 7374 7265 6522 2069 6e20  and "ostree" in 
│ │ │ -001e4eb0: 616e 7369 626c 655f 7072 6f63 5f63 6d64  ansible_proc_cmd
│ │ │ -001e4ec0: 6c69 6e65 0a20 2020 2029 2061 6e64 206e  line.    ) and n
│ │ │ -001e4ed0: 6f74 2028 2061 6e73 6962 6c65 5f76 6972  ot ( ansible_vir
│ │ │ -001e4ee0: 7475 616c 697a 6174 696f 6e5f 7479 7065  tualization_type
│ │ │ -001e4ef0: 2069 6e20 5b22 646f 636b 6572 222c 2022   in ["docker", "
│ │ │ -001e4f00: 6c78 6322 2c20 226f 7065 6e76 7a22 2c20  lxc", "openvz", 
│ │ │ -001e4f10: 2270 6f64 6d61 6e22 2c0a 2020 2020 2263  "podman",.    "c
│ │ │ -001e4f20: 6f6e 7461 696e 6572 225d 2029 2029 0a20  ontainer"] ) ). 
│ │ │ -001e4f30: 202d 2027 222f 7661 722f 746d 7022 2069   - '"/var/tmp" i
│ │ │ -001e4f40: 6e20 616e 7369 626c 655f 6d6f 756e 7473  n ansible_mounts
│ │ │ -001e4f50: 207c 206d 6170 2861 7474 7269 6275 7465   | map(attribute
│ │ │ -001e4f60: 3d22 6d6f 756e 7422 2920 7c20 6c69 7374  ="mount") | list
│ │ │ -001e4f70: 270a 2020 2d20 6d6f 756e 745f 696e 666f  '.  - mount_info
│ │ │ -001e4f80: 2069 7320 6465 6669 6e65 640a 2020 2d20   is defined.  - 
│ │ │ -001e4f90: 2864 6576 6963 655f 6e61 6d65 2e73 7464  (device_name.std
│ │ │ -001e4fa0: 6f75 7420 6973 2064 6566 696e 6564 2061  out is defined a
│ │ │ -001e4fb0: 6e64 2028 6465 7669 6365 5f6e 616d 652e  nd (device_name.
│ │ │ -001e4fc0: 7374 646f 7574 207c 206c 656e 6774 6820  stdout | length 
│ │ │ -001e4fd0: 2667 743b 2030 2929 206f 7220 2822 2d2d  > 0)) or ("--
│ │ │ -001e4fe0: 6673 7461 6222 0a20 2020 207c 206c 656e  fstab".    | len
│ │ │ -001e4ff0: 6774 6820 3d3d 2030 290a 2020 7461 6773  gth == 0).  tags
│ │ │ -001e5000: 3a0a 2020 2d20 636f 6e66 6967 7572 655f  :.  - configure_
│ │ │ -001e5010: 7374 7261 7465 6779 0a20 202d 2068 6967  strategy.  - hig
│ │ │ -001e5020: 685f 6469 7372 7570 7469 6f6e 0a20 202d  h_disruption.  -
│ │ │ -001e5030: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ -001e5040: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ -001e5050: 6974 790a 2020 2d20 6d6f 756e 745f 6f70  ity.  - mount_op
│ │ │ -001e5060: 7469 6f6e 5f76 6172 5f74 6d70 5f6e 6f65  tion_var_tmp_noe
│ │ │ -001e5070: 7865 630a 2020 2d20 6e6f 5f72 6562 6f6f  xec.  - no_reboo
│ │ │ -001e5080: 745f 6e65 6564 6564 0a3c 2f63 6f64 653e  t_needed.
│ │ │ -001e5090: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ -001e5140: 7469 6f6e 2053 6865 6c6c 2073 6372 6970 tion Shell scrip │ │ │ -001e5150: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ -001e51d0: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:false

# Remed │ │ │ -001e5210: 6961 7469 6f6e 2069 7320 6170 706c 6963 iation is applic │ │ │ -001e5220: 6162 6c65 206f 6e6c 7920 696e 2063 6572 able only in cer │ │ │ -001e5230: 7461 696e 2070 6c61 7466 6f72 6d73 0a69 tain platforms.i │ │ │ -001e5240: 6620 2820 2120 2820 7b20 7270 6d20 2d2d f ( ! ( { rpm -- │ │ │ -001e5250: 7175 6965 7420 2d71 206b 6572 6e65 6c20 quiet -q kernel │ │ │ -001e5260: 3b7d 2026 616d 703b 2661 6d70 3b20 7b20 ;} && { │ │ │ -001e5270: 7270 6d20 2d2d 7175 6965 7420 2d71 2062 rpm --quiet -q b │ │ │ -001e5280: 6f6f 7463 203b 7d20 2661 6d70 3b26 616d ootc ;} &&am │ │ │ -001e5290: 703b 207b 2021 2072 706d 202d 2d71 7569 p; { ! rpm --qui │ │ │ -001e52a0: 6574 202d 7120 6f70 656e 7368 6966 742d et -q openshift- │ │ │ -001e52b0: 6b75 6265 6c65 7420 3b7d 2026 616d 703b kubelet ;} & │ │ │ -001e52c0: 2661 6d70 3b20 285b 202d 6620 2f72 756e & ([ -f /run │ │ │ -001e52d0: 2f6f 7374 7265 652d 626f 6f74 6564 205d /ostree-booted ] │ │ │ -001e52e0: 207c 7c20 5b20 2d4c 202f 6f73 7472 6565 || [ -L /ostree │ │ │ -001e52f0: 205d 2920 2920 2661 6d70 3b26 616d 703b ]) ) && │ │ │ -001e5300: 2021 2028 205b 202d 6620 2f2e 646f 636b ! ( [ -f /.dock │ │ │ -001e5310: 6572 656e 7620 5d20 7c7c 205b 202d 6620 erenv ] || [ -f │ │ │ -001e5320: 2f72 756e 2f2e 636f 6e74 6169 6e65 7265 /run/.containere │ │ │ -001e5330: 6e76 205d 2029 2029 2026 616d 703b 2661 nv ] ) ) &&a │ │ │ -001e5340: 6d70 3b20 7b20 2820 6669 6e64 6d6e 7420 mp; { ( findmnt │ │ │ -001e5350: 2d2d 6b65 726e 656c 2022 2f76 6172 2f74 --kernel "/var/t │ │ │ -001e5360: 6d70 2220 2667 743b 202f 6465 762f 6e75 mp" > /dev/nu │ │ │ -001e5370: 6c6c 207c 7c20 6669 6e64 6d6e 7420 2d2d ll || findmnt -- │ │ │ -001e5380: 6673 7461 6220 222f 7661 722f 746d 7022 fstab "/var/tmp" │ │ │ -001e5390: 2026 6774 3b20 2f64 6576 2f6e 756c 6c20 > /dev/null │ │ │ -001e53a0: 293b 207d 3b20 7468 656e 0a0a 6675 6e63 ); }; then..func │ │ │ -001e53b0: 7469 6f6e 2070 6572 666f 726d 5f72 656d tion perform_rem │ │ │ -001e53c0: 6564 6961 7469 6f6e 207b 0a0a 2020 2020 ediation {.. │ │ │ -001e53d0: 0a20 2020 2020 2020 2023 2074 6865 206d . # the m │ │ │ -001e53e0: 6f75 6e74 2070 6f69 6e74 202f 7661 722f ount point /var/ │ │ │ -001e53f0: 746d 7020 6861 7320 746f 2062 6520 6465 tmp has to be de │ │ │ -001e5400: 6669 6e65 6420 696e 202f 6574 632f 6673 fined in /etc/fs │ │ │ -001e5410: 7461 620a 2020 2020 2020 2020 2320 6265 tab. # be │ │ │ -001e5420: 666f 7265 2074 6869 7320 7265 6d65 6469 fore this remedi │ │ │ -001e5430: 6174 696f 6e20 6361 6e20 6265 2065 7865 ation can be exe │ │ │ -001e5440: 6375 7465 642e 2049 6e20 6361 7365 2069 cuted. In case i │ │ │ -001e5450: 7420 6973 206e 6f74 2064 6566 696e 6564 t is not defined │ │ │ -001e5460: 2c20 7468 650a 2020 2020 2020 2020 2320 , the. # │ │ │ -001e5470: 7265 6d65 6469 6174 696f 6e20 6162 6f72 remediation abor │ │ │ -001e5480: 7473 2061 6e64 206e 6f20 6368 616e 6765 ts and no change │ │ │ -001e5490: 7320 7265 6761 7264 696e 6720 7468 6520 s regarding the │ │ │ -001e54a0: 6d6f 756e 7420 706f 696e 7420 6172 6520 mount point are │ │ │ -001e54b0: 646f 6e65 2e0a 2020 2020 2020 2020 6d6f done.. mo │ │ │ -001e54c0: 756e 745f 706f 696e 745f 6d61 7463 685f unt_point_match_ │ │ │ -001e54d0: 7265 6765 7870 3d22 2428 7072 696e 7466 regexp="$(printf │ │ │ -001e54e0: 2022 5e5b 5b3a 7370 6163 653a 5d5d 2a5b "^[[:space:]]*[ │ │ │ -001e54f0: 5e23 5d2e 2a5b 5b3a 7370 6163 653a 5d5d ^#].*[[:space:]] │ │ │ -001e5500: 2573 5b5b 3a73 7061 6365 3a5d 5d22 2022 %s[[:space:]]" " │ │ │ -001e5510: 2f76 6172 2f74 6d70 2229 220a 0a20 2020 /var/tmp")".. │ │ │ -001e5520: 2067 7265 7020 2224 6d6f 756e 745f 706f grep "$mount_po │ │ │ -001e5530: 696e 745f 6d61 7463 685f 7265 6765 7870 int_match_regexp │ │ │ -001e5540: 2220 2d71 202f 6574 632f 6673 7461 6220 " -q /etc/fstab │ │ │ -001e5550: 5c0a 2020 2020 2020 2020 7c7c 207b 2065 \. || { e │ │ │ -001e5560: 6368 6f20 2254 6865 206d 6f75 6e74 2070 cho "The mount p │ │ │ -001e5570: 6f69 6e74 2027 2f76 6172 2f74 6d70 2720 oint '/var/tmp' │ │ │ -001e5580: 6973 206e 6f74 2065 7665 6e20 696e 202f is not even in / │ │ │ -001e5590: 6574 632f 6673 7461 622c 2073 6f20 7765 etc/fstab, so we │ │ │ -001e55a0: 2063 616e 2774 2073 6574 2075 7020 6d6f can't set up mo │ │ │ -001e55b0: 756e 7420 6f70 7469 6f6e 7322 2026 6774 unt options" > │ │ │ -001e55c0: 3b26 616d 703b 323b 0a20 2020 2020 2020 ;&2;. │ │ │ -001e55d0: 2020 2020 2020 2020 2065 6368 6f20 224e echo "N │ │ │ -001e55e0: 6f74 2072 656d 6564 6961 7469 6e67 2c20 ot remediating, │ │ │ -001e55f0: 6265 6361 7573 6520 7468 6572 6520 6973 because there is │ │ │ -001e5600: 206e 6f20 7265 636f 7264 206f 6620 2f76 no record of /v │ │ │ -001e5610: 6172 2f74 6d70 2069 6e20 2f65 7463 2f66 ar/tmp in /etc/f │ │ │ -001e5620: 7374 6162 2220 2667 743b 2661 6d70 3b32 stab" >&2 │ │ │ -001e5630: 3b20 7265 7475 726e 2031 3b20 7d0a 2020 ; return 1; }. │ │ │ -001e5640: 2020 0a0a 0a20 2020 206d 6f75 6e74 5f70 ... mount_p │ │ │ -001e5650: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578 oint_match_regex │ │ │ -001e5660: 703d 2224 2870 7269 6e74 6620 225e 5b5b p="$(printf "^[[ │ │ │ -001e5670: 3a73 7061 6365 3a5d 5d2a 5b5e 235d 2e2a :space:]]*[^#].* │ │ │ -001e5680: 5b5b 3a73 7061 6365 3a5d 5d25 735b 5b3a [[:space:]]%s[[: │ │ │ -001e5690: 7370 6163 653a 5d5d 2220 2f76 6172 2f74 space:]]" /var/t │ │ │ -001e56a0: 6d70 2922 0a0a 2020 2020 2320 4966 2074 mp)".. # If t │ │ │ -001e56b0: 6865 206d 6f75 6e74 2070 6f69 6e74 2069 he mount point i │ │ │ -001e56c0: 7320 6e6f 7420 696e 202f 6574 632f 6673 s not in /etc/fs │ │ │ -001e56d0: 7461 622c 2067 6574 2070 7265 7669 6f75 tab, get previou │ │ │ -001e56e0: 7320 6d6f 756e 7420 6f70 7469 6f6e 7320 s mount options │ │ │ -001e56f0: 6672 6f6d 202f 6574 632f 6d74 6162 0a20 from /etc/mtab. │ │ │ -001e5700: 2020 2069 6620 2120 6772 6570 202d 7120 if ! grep -q │ │ │ -001e5710: 2224 6d6f 756e 745f 706f 696e 745f 6d61 "$mount_point_ma │ │ │ -001e5720: 7463 685f 7265 6765 7870 2220 2f65 7463 tch_regexp" /etc │ │ │ -001e5730: 2f66 7374 6162 3b20 7468 656e 0a20 2020 /fstab; then. │ │ │ -001e5740: 2020 2020 2023 2072 756e 7469 6d65 206f # runtime o │ │ │ -001e5750: 7074 7320 7769 7468 6f75 7420 736f 6d65 pts without some │ │ │ -001e5760: 2061 7574 6f6d 6174 6963 206b 6572 6e65 automatic kerne │ │ │ -001e5770: 6c2f 7573 6572 7370 6163 652d 6164 6465 l/userspace-adde │ │ │ -001e5780: 6420 6465 6661 756c 7473 0a20 2020 2020 d defaults. │ │ │ -001e5790: 2020 2070 7265 7669 6f75 735f 6d6f 756e previous_moun │ │ │ -001e57a0: 745f 6f70 7473 3d24 2867 7265 7020 2224 t_opts=$(grep "$ │ │ │ -001e57b0: 6d6f 756e 745f 706f 696e 745f 6d61 7463 mount_point_matc │ │ │ -001e57c0: 685f 7265 6765 7870 2220 2f65 7463 2f6d h_regexp" /etc/m │ │ │ -001e57d0: 7461 6220 7c20 6865 6164 202d 3120 7c20 tab | head -1 | │ │ │ -001e57e0: 2061 776b 2027 7b70 7269 6e74 2024 347d awk '{print $4} │ │ │ -001e57f0: 2720 5c0a 2020 2020 2020 2020 2020 2020 ' \. │ │ │ -001e5800: 2020 2020 2020 2020 7c20 7365 6420 2d45 | sed -E │ │ │ -001e5810: 2022 732f 2872 777c 6465 6661 756c 7473 "s/(rw|defaults │ │ │ -001e5820: 7c73 6563 6c61 6265 6c7c 6e6f 6578 6563 |seclabel|noexec │ │ │ -001e5830: 2928 2c7c 2429 2f2f 673b 732f 2c24 2f2f )(,|$)//g;s/,$// │ │ │ -001e5840: 2229 0a20 2020 2020 2020 205b 2022 2470 "). [ "$p │ │ │ -001e5850: 7265 7669 6f75 735f 6d6f 756e 745f 6f70 revious_mount_op │ │ │ -001e5860: 7473 2220 5d20 2661 6d70 3b26 616d 703b ts" ] && │ │ │ -001e5870: 2070 7265 7669 6f75 735f 6d6f 756e 745f previous_mount_ │ │ │ -001e5880: 6f70 7473 2b3d 222c 220a 2020 2020 2020 opts+=",". │ │ │ -001e5890: 2020 2320 496e 2069 736f 3936 3630 2066 # In iso9660 f │ │ │ -001e58a0: 696c 6573 7973 7465 6d73 206d 7461 6220 ilesystems mtab │ │ │ -001e58b0: 636f 756c 6420 6465 7363 7269 6265 2061 could describe a │ │ │ -001e58c0: 2022 626c 6f63 6b73 697a 6522 2076 616c "blocksize" val │ │ │ -001e58d0: 7565 2c20 7468 6973 2073 686f 756c 6420 ue, this should │ │ │ -001e58e0: 6265 2072 6566 6c65 6374 6564 2069 6e0a be reflected in. │ │ │ -001e58f0: 2020 2020 2020 2020 2320 6673 7461 6220 # fstab │ │ │ -001e5900: 6173 2022 626c 6f63 6b22 2e20 2054 6865 as "block". The │ │ │ -001e5910: 206e 6578 7420 7661 7269 6162 6c65 2069 next variable i │ │ │ -001e5920: 7320 746f 2073 6174 6973 6679 2073 6865 s to satisfy she │ │ │ -001e5930: 6c6c 6368 6563 6b20 5343 3230 3530 2e0a llcheck SC2050.. │ │ │ -001e5940: 2020 2020 2020 2020 6673 5f74 7970 653d fs_type= │ │ │ -001e5950: 2222 0a20 2020 2020 2020 2069 6620 5b20 "". if [ │ │ │ -001e5960: 2022 2466 735f 7479 7065 2220 3d3d 2022 "$fs_type" == " │ │ │ -001e5970: 6973 6f39 3636 3022 205d 203b 2074 6865 iso9660" ] ; the │ │ │ -001e5980: 6e0a 2020 2020 2020 2020 2020 2020 7072 n. pr │ │ │ -001e5990: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074 evious_mount_opt │ │ │ -001e59a0: 733d 2428 7365 6420 2773 2f62 6c6f 636b s=$(sed 's/block │ │ │ -001e59b0: 7369 7a65 3d2f 626c 6f63 6b3d 2f27 2026 size=/block=/' & │ │ │ -001e59c0: 6c74 3b26 6c74 3b26 6c74 3b20 2224 7072 lt;<< "$pr │ │ │ -001e59d0: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074 evious_mount_opt │ │ │ -001e59e0: 7322 290a 2020 2020 2020 2020 6669 0a20 s"). fi. │ │ │ -001e59f0: 2020 2020 2020 2065 6368 6f20 2220 2f76 echo " /v │ │ │ -001e5a00: 6172 2f74 6d70 2020 6465 6661 756c 7473 ar/tmp defaults │ │ │ -001e5a10: 2c24 7b70 7265 7669 6f75 735f 6d6f 756e ,${previous_moun │ │ │ -001e5a20: 745f 6f70 7473 7d6e 6f65 7865 6320 3020 t_opts}noexec 0 │ │ │ -001e5a30: 3022 2026 6774 3b26 6774 3b20 2f65 7463 0" >> /etc │ │ │ -001e5a40: 2f66 7374 6162 0a20 2020 2023 2049 6620 /fstab. # If │ │ │ -001e5a50: 7468 6520 6d6f 756e 745f 6f70 7420 6f70 the mount_opt op │ │ │ -001e5a60: 7469 6f6e 2069 7320 6e6f 7420 616c 7265 tion is not alre │ │ │ -001e5a70: 6164 7920 696e 2074 6865 206d 6f75 6e74 ady in the mount │ │ │ -001e5a80: 2070 6f69 6e74 2773 202f 6574 632f 6673 point's /etc/fs │ │ │ -001e5a90: 7461 6220 656e 7472 792c 2061 6464 2069 tab entry, add i │ │ │ -001e5aa0: 740a 2020 2020 656c 6966 2021 2067 7265 t. elif ! gre │ │ │ -001e5ab0: 7020 2224 6d6f 756e 745f 706f 696e 745f p "$mount_point_ │ │ │ -001e5ac0: 6d61 7463 685f 7265 6765 7870 2220 2f65 match_regexp" /e │ │ │ -001e5ad0: 7463 2f66 7374 6162 207c 2067 7265 7020 tc/fstab | grep │ │ │ -001e5ae0: 2d71 2022 6e6f 6578 6563 223b 2074 6865 -q "noexec"; the │ │ │ -001e5af0: 6e0a 2020 2020 2020 2020 7072 6576 696f n. previo │ │ │ -001e5b00: 7573 5f6d 6f75 6e74 5f6f 7074 733d 2428 us_mount_opts=$( │ │ │ -001e5b10: 6772 6570 2022 246d 6f75 6e74 5f70 6f69 grep "$mount_poi │ │ │ -001e5b20: 6e74 5f6d 6174 6368 5f72 6567 6578 7022 nt_match_regexp" │ │ │ -001e5b30: 202f 6574 632f 6673 7461 6220 7c20 6177 /etc/fstab | aw │ │ │ -001e5b40: 6b20 277b 7072 696e 7420 2434 7d27 290a k '{print $4}'). │ │ │ -001e5b50: 2020 2020 2020 2020 7365 6420 2d69 2022 sed -i " │ │ │ -001e5b60: 737c 5c28 247b 6d6f 756e 745f 706f 696e s|\(${mount_poin │ │ │ -001e5b70: 745f 6d61 7463 685f 7265 6765 7870 7d2e t_match_regexp}. │ │ │ -001e5b80: 2a24 7b70 7265 7669 6f75 735f 6d6f 756e *${previous_moun │ │ │ -001e5b90: 745f 6f70 7473 7d5c 297c 5c31 2c6e 6f65 t_opts}\)|\1,noe │ │ │ -001e5ba0: 7865 637c 2220 2f65 7463 2f66 7374 6162 xec|" /etc/fstab │ │ │ -001e5bb0: 0a20 2020 2066 690a 0a0a 2020 2020 6966 . fi... if │ │ │ -001e5bc0: 206d 6b64 6972 202d 7020 222f 7661 722f mkdir -p "/var/ │ │ │ -001e5bd0: 746d 7022 3b20 7468 656e 0a20 2020 2020 tmp"; then. │ │ │ -001e5be0: 2020 2069 6620 6d6f 756e 7470 6f69 6e74 if mountpoint │ │ │ -001e5bf0: 202d 7120 222f 7661 722f 746d 7022 3b20 -q "/var/tmp"; │ │ │ -001e5c00: 7468 656e 0a20 2020 2020 2020 2020 2020 then. │ │ │ -001e5c10: 206d 6f75 6e74 202d 6f20 7265 6d6f 756e mount -o remoun │ │ │ -001e5c20: 7420 2d2d 7461 7267 6574 2022 2f76 6172 t --target "/var │ │ │ -001e5c30: 2f74 6d70 220a 2020 2020 2020 2020 6669 /tmp". fi │ │ │ -001e5c40: 0a20 2020 2066 690a 7d0a 0a70 6572 666f . fi.}..perfo │ │ │ -001e5c50: 726d 5f72 656d 6564 6961 7469 6f6e 0a0a rm_remediation.. │ │ │ -001e5c60: 656c 7365 0a20 2020 2026 6774 3b26 616d else. >&am │ │ │ -001e5c70: 703b 3220 6563 686f 2027 5265 6d65 6469 p;2 echo 'Remedi │ │ │ -001e5c80: 6174 696f 6e20 6973 206e 6f74 2061 7070 ation is not app │ │ │ -001e5c90: 6c69 6361 626c 652c 206e 6f74 6869 6e67 licable, nothing │ │ │ -001e5ca0: 2077 6173 2064 6f6e 6527 0a66 690a 3c2f was done'.fi.

│ │ │ +001e3ad0: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c
- n
│ │ │ +001e3b60: 616d 653a 2047 6174 6865 7220 7468 6520  ame: Gather the 
│ │ │ +001e3b70: 7061 636b 6167 6520 6661 6374 730a 2020  package facts.  
│ │ │ +001e3b80: 7061 636b 6167 655f 6661 6374 733a 0a20  package_facts:. 
│ │ │ +001e3b90: 2020 206d 616e 6167 6572 3a20 6175 746f     manager: auto
│ │ │ +001e3ba0: 0a20 2074 6167 733a 0a20 202d 2063 6f6e  .  tags:.  - con
│ │ │ +001e3bb0: 6669 6775 7265 5f73 7472 6174 6567 790a  figure_strategy.
│ │ │ +001e3bc0: 2020 2d20 6869 6768 5f64 6973 7275 7074    - high_disrupt
│ │ │ +001e3bd0: 696f 6e0a 2020 2d20 6c6f 775f 636f 6d70  ion.  - low_comp
│ │ │ +001e3be0: 6c65 7869 7479 0a20 202d 206d 6564 6975  lexity.  - mediu
│ │ │ +001e3bf0: 6d5f 7365 7665 7269 7479 0a20 202d 206d  m_severity.  - m
│ │ │ +001e3c00: 6f75 6e74 5f6f 7074 696f 6e5f 7661 725f  ount_option_var_
│ │ │ +001e3c10: 746d 705f 6e6f 6578 6563 0a20 202d 206e  tmp_noexec.  - n
│ │ │ +001e3c20: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ +001e3c30: 0a2d 206e 616d 653a 2027 4164 6420 6e6f  .- name: 'Add no
│ │ │ +001e3c40: 6578 6563 204f 7074 696f 6e20 746f 202f  exec Option to /
│ │ │ +001e3c50: 7661 722f 746d 703a 2043 6865 636b 2069  var/tmp: Check i
│ │ │ +001e3c60: 6e66 6f72 6d61 7469 6f6e 2061 7373 6f63  nformation assoc
│ │ │ +001e3c70: 6961 7465 6420 746f 206d 6f75 6e74 706f  iated to mountpo
│ │ │ +001e3c80: 696e 7427 0a20 2061 6e73 6962 6c65 2e62  int'.  ansible.b
│ │ │ +001e3c90: 7569 6c74 696e 2e63 6f6d 6d61 6e64 3a20  uiltin.command: 
│ │ │ +001e3ca0: 6669 6e64 6d6e 7420 2d2d 6673 7461 6220  findmnt --fstab 
│ │ │ +001e3cb0: 272f 7661 722f 746d 7027 0a20 2072 6567  '/var/tmp'.  reg
│ │ │ +001e3cc0: 6973 7465 723a 2064 6576 6963 655f 6e61  ister: device_na
│ │ │ +001e3cd0: 6d65 0a20 2066 6169 6c65 645f 7768 656e  me.  failed_when
│ │ │ +001e3ce0: 3a20 6465 7669 6365 5f6e 616d 652e 7263  : device_name.rc
│ │ │ +001e3cf0: 2026 6774 3b20 310a 2020 6368 616e 6765   > 1.  change
│ │ │ +001e3d00: 645f 7768 656e 3a20 6661 6c73 650a 2020  d_when: false.  
│ │ │ +001e3d10: 6368 6563 6b5f 6d6f 6465 3a20 6661 6c73  check_mode: fals
│ │ │ +001e3d20: 650a 2020 7768 656e 3a0a 2020 2d20 2820  e.  when:.  - ( 
│ │ │ +001e3d30: 6e6f 7420 2820 226b 6572 6e65 6c22 2069  not ( "kernel" i
│ │ │ +001e3d40: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001e3d50: 7061 636b 6167 6573 2061 6e64 2022 626f  packages and "bo
│ │ │ +001e3d60: 6f74 6322 2069 6e20 616e 7369 626c 655f  otc" in ansible_
│ │ │ +001e3d70: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ +001e3d80: 2020 2061 6e64 206e 6f74 2022 6f70 656e     and not "open
│ │ │ +001e3d90: 7368 6966 742d 6b75 6265 6c65 7422 2069  shift-kubelet" i
│ │ │ +001e3da0: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001e3db0: 7061 636b 6167 6573 2061 6e64 2022 6f73  packages and "os
│ │ │ +001e3dc0: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ +001e3dd0: 5f70 726f 635f 636d 646c 696e 650a 2020  _proc_cmdline.  
│ │ │ +001e3de0: 2020 2920 616e 6420 6e6f 7420 2820 616e    ) and not ( an
│ │ │ +001e3df0: 7369 626c 655f 7669 7274 7561 6c69 7a61  sible_virtualiza
│ │ │ +001e3e00: 7469 6f6e 5f74 7970 6520 696e 205b 2264  tion_type in ["d
│ │ │ +001e3e10: 6f63 6b65 7222 2c20 226c 7863 222c 2022  ocker", "lxc", "
│ │ │ +001e3e20: 6f70 656e 767a 222c 2022 706f 646d 616e  openvz", "podman
│ │ │ +001e3e30: 222c 0a20 2020 2022 636f 6e74 6169 6e65  ",.    "containe
│ │ │ +001e3e40: 7222 5d20 2920 290a 2020 2d20 2722 2f76  r"] ) ).  - '"/v
│ │ │ +001e3e50: 6172 2f74 6d70 2220 696e 2061 6e73 6962  ar/tmp" in ansib
│ │ │ +001e3e60: 6c65 5f6d 6f75 6e74 7320 7c20 6d61 7028  le_mounts | map(
│ │ │ +001e3e70: 6174 7472 6962 7574 653d 226d 6f75 6e74  attribute="mount
│ │ │ +001e3e80: 2229 207c 206c 6973 7427 0a20 2074 6167  ") | list'.  tag
│ │ │ +001e3e90: 733a 0a20 202d 2063 6f6e 6669 6775 7265  s:.  - configure
│ │ │ +001e3ea0: 5f73 7472 6174 6567 790a 2020 2d20 6869  _strategy.  - hi
│ │ │ +001e3eb0: 6768 5f64 6973 7275 7074 696f 6e0a 2020  gh_disruption.  
│ │ │ +001e3ec0: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ +001e3ed0: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ +001e3ee0: 7269 7479 0a20 202d 206d 6f75 6e74 5f6f  rity.  - mount_o
│ │ │ +001e3ef0: 7074 696f 6e5f 7661 725f 746d 705f 6e6f  ption_var_tmp_no
│ │ │ +001e3f00: 6578 6563 0a20 202d 206e 6f5f 7265 626f  exec.  - no_rebo
│ │ │ +001e3f10: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d  ot_needed..- nam
│ │ │ +001e3f20: 653a 2027 4164 6420 6e6f 6578 6563 204f  e: 'Add noexec O
│ │ │ +001e3f30: 7074 696f 6e20 746f 202f 7661 722f 746d  ption to /var/tm
│ │ │ +001e3f40: 703a 2043 7265 6174 6520 6d6f 756e 745f  p: Create mount_
│ │ │ +001e3f50: 696e 666f 2064 6963 7469 6f6e 6172 7920  info dictionary 
│ │ │ +001e3f60: 7661 7269 6162 6c65 270a 2020 7365 745f  variable'.  set_
│ │ │ +001e3f70: 6661 6374 3a0a 2020 2020 6d6f 756e 745f  fact:.    mount_
│ │ │ +001e3f80: 696e 666f 3a20 277b 7b20 6d6f 756e 745f  info: '{{ mount_
│ │ │ +001e3f90: 696e 666f 7c64 6566 6175 6c74 287b 7d29  info|default({})
│ │ │ +001e3fa0: 7c63 6f6d 6269 6e65 287b 6974 656d 2e30  |combine({item.0
│ │ │ +001e3fb0: 3a20 6974 656d 2e31 7d29 207d 7d27 0a20  : item.1}) }}'. 
│ │ │ +001e3fc0: 2077 6974 685f 746f 6765 7468 6572 3a0a   with_together:.
│ │ │ +001e3fd0: 2020 2d20 277b 7b20 6465 7669 6365 5f6e    - '{{ device_n
│ │ │ +001e3fe0: 616d 652e 7374 646f 7574 5f6c 696e 6573  ame.stdout_lines
│ │ │ +001e3ff0: 5b30 5d2e 7370 6c69 7428 2920 7c20 6d61  [0].split() | ma
│ │ │ +001e4000: 7028 2727 6c6f 7765 7227 2729 207c 206c  p(''lower'') | l
│ │ │ +001e4010: 6973 7420 7d7d 270a 2020 2d20 277b 7b20  ist }}'.  - '{{ 
│ │ │ +001e4020: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ +001e4030: 7574 5f6c 696e 6573 5b31 5d2e 7370 6c69  ut_lines[1].spli
│ │ │ +001e4040: 7428 2920 7c20 6c69 7374 207d 7d27 0a20  t() | list }}'. 
│ │ │ +001e4050: 2077 6865 6e3a 0a20 202d 2028 206e 6f74   when:.  - ( not
│ │ │ +001e4060: 2028 2022 6b65 726e 656c 2220 696e 2061   ( "kernel" in a
│ │ │ +001e4070: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +001e4080: 6b61 6765 7320 616e 6420 2262 6f6f 7463  kages and "bootc
│ │ │ +001e4090: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +001e40a0: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ +001e40b0: 616e 6420 6e6f 7420 226f 7065 6e73 6869  and not "openshi
│ │ │ +001e40c0: 6674 2d6b 7562 656c 6574 2220 696e 2061  ft-kubelet" in a
│ │ │ +001e40d0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +001e40e0: 6b61 6765 7320 616e 6420 226f 7374 7265  kages and "ostre
│ │ │ +001e40f0: 6522 2069 6e20 616e 7369 626c 655f 7072  e" in ansible_pr
│ │ │ +001e4100: 6f63 5f63 6d64 6c69 6e65 0a20 2020 2029  oc_cmdline.    )
│ │ │ +001e4110: 2061 6e64 206e 6f74 2028 2061 6e73 6962   and not ( ansib
│ │ │ +001e4120: 6c65 5f76 6972 7475 616c 697a 6174 696f  le_virtualizatio
│ │ │ +001e4130: 6e5f 7479 7065 2069 6e20 5b22 646f 636b  n_type in ["dock
│ │ │ +001e4140: 6572 222c 2022 6c78 6322 2c20 226f 7065  er", "lxc", "ope
│ │ │ +001e4150: 6e76 7a22 2c20 2270 6f64 6d61 6e22 2c0a  nvz", "podman",.
│ │ │ +001e4160: 2020 2020 2263 6f6e 7461 696e 6572 225d      "container"]
│ │ │ +001e4170: 2029 2029 0a20 202d 2027 222f 7661 722f   ) ).  - '"/var/
│ │ │ +001e4180: 746d 7022 2069 6e20 616e 7369 626c 655f  tmp" in ansible_
│ │ │ +001e4190: 6d6f 756e 7473 207c 206d 6170 2861 7474  mounts | map(att
│ │ │ +001e41a0: 7269 6275 7465 3d22 6d6f 756e 7422 2920  ribute="mount") 
│ │ │ +001e41b0: 7c20 6c69 7374 270a 2020 2d20 6465 7669  | list'.  - devi
│ │ │ +001e41c0: 6365 5f6e 616d 652e 7374 646f 7574 2069  ce_name.stdout i
│ │ │ +001e41d0: 7320 6465 6669 6e65 6420 616e 6420 6465  s defined and de
│ │ │ +001e41e0: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ +001e41f0: 5f6c 696e 6573 2069 7320 6465 6669 6e65  _lines is define
│ │ │ +001e4200: 640a 2020 2d20 2864 6576 6963 655f 6e61  d.  - (device_na
│ │ │ +001e4210: 6d65 2e73 7464 6f75 7420 7c20 6c65 6e67  me.stdout | leng
│ │ │ +001e4220: 7468 2026 6774 3b20 3029 0a20 2074 6167  th > 0).  tag
│ │ │ +001e4230: 733a 0a20 202d 2063 6f6e 6669 6775 7265  s:.  - configure
│ │ │ +001e4240: 5f73 7472 6174 6567 790a 2020 2d20 6869  _strategy.  - hi
│ │ │ +001e4250: 6768 5f64 6973 7275 7074 696f 6e0a 2020  gh_disruption.  
│ │ │ +001e4260: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ +001e4270: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ +001e4280: 7269 7479 0a20 202d 206d 6f75 6e74 5f6f  rity.  - mount_o
│ │ │ +001e4290: 7074 696f 6e5f 7661 725f 746d 705f 6e6f  ption_var_tmp_no
│ │ │ +001e42a0: 6578 6563 0a20 202d 206e 6f5f 7265 626f  exec.  - no_rebo
│ │ │ +001e42b0: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d  ot_needed..- nam
│ │ │ +001e42c0: 653a 2027 4164 6420 6e6f 6578 6563 204f  e: 'Add noexec O
│ │ │ +001e42d0: 7074 696f 6e20 746f 202f 7661 722f 746d  ption to /var/tm
│ │ │ +001e42e0: 703a 2049 6620 2f76 6172 2f74 6d70 206e  p: If /var/tmp n
│ │ │ +001e42f0: 6f74 206d 6f75 6e74 6564 2c20 6372 6166  ot mounted, craf
│ │ │ +001e4300: 7420 6d6f 756e 745f 696e 666f 0a20 2020  t mount_info.   
│ │ │ +001e4310: 206d 616e 7561 6c6c 7927 0a20 2073 6574   manually'.  set
│ │ │ +001e4320: 5f66 6163 743a 0a20 2020 206d 6f75 6e74  _fact:.    mount
│ │ │ +001e4330: 5f69 6e66 6f3a 2027 7b7b 206d 6f75 6e74  _info: '{{ mount
│ │ │ +001e4340: 5f69 6e66 6f7c 6465 6661 756c 7428 7b7d  _info|default({}
│ │ │ +001e4350: 297c 636f 6d62 696e 6528 7b69 7465 6d2e  )|combine({item.
│ │ │ +001e4360: 303a 2069 7465 6d2e 317d 2920 7d7d 270a  0: item.1}) }}'.
│ │ │ +001e4370: 2020 7769 7468 5f74 6f67 6574 6865 723a    with_together:
│ │ │ +001e4380: 0a20 202d 202d 2074 6172 6765 740a 2020  .  - - target.  
│ │ │ +001e4390: 2020 2d20 736f 7572 6365 0a20 2020 202d    - source.    -
│ │ │ +001e43a0: 2066 7374 7970 650a 2020 2020 2d20 6f70   fstype.    - op
│ │ │ +001e43b0: 7469 6f6e 730a 2020 2d20 2d20 2f76 6172  tions.  - - /var
│ │ │ +001e43c0: 2f74 6d70 0a20 2020 202d 2027 270a 2020  /tmp.    - ''.  
│ │ │ +001e43d0: 2020 2d20 2727 0a20 2020 202d 2064 6566    - ''.    - def
│ │ │ +001e43e0: 6175 6c74 730a 2020 7768 656e 3a0a 2020  aults.  when:.  
│ │ │ +001e43f0: 2d20 2820 6e6f 7420 2820 226b 6572 6e65  - ( not ( "kerne
│ │ │ +001e4400: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ +001e4410: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ +001e4420: 2022 626f 6f74 6322 2069 6e20 616e 7369   "bootc" in ansi
│ │ │ +001e4430: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001e4440: 6573 0a20 2020 2061 6e64 206e 6f74 2022  es.    and not "
│ │ │ +001e4450: 6f70 656e 7368 6966 742d 6b75 6265 6c65  openshift-kubele
│ │ │ +001e4460: 7422 2069 6e20 616e 7369 626c 655f 6661  t" in ansible_fa
│ │ │ +001e4470: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ +001e4480: 2022 6f73 7472 6565 2220 696e 2061 6e73   "ostree" in ans
│ │ │ +001e4490: 6962 6c65 5f70 726f 635f 636d 646c 696e  ible_proc_cmdlin
│ │ │ +001e44a0: 650a 2020 2020 2920 616e 6420 6e6f 7420  e.    ) and not 
│ │ │ +001e44b0: 2820 616e 7369 626c 655f 7669 7274 7561  ( ansible_virtua
│ │ │ +001e44c0: 6c69 7a61 7469 6f6e 5f74 7970 6520 696e  lization_type in
│ │ │ +001e44d0: 205b 2264 6f63 6b65 7222 2c20 226c 7863   ["docker", "lxc
│ │ │ +001e44e0: 222c 2022 6f70 656e 767a 222c 2022 706f  ", "openvz", "po
│ │ │ +001e44f0: 646d 616e 222c 0a20 2020 2022 636f 6e74  dman",.    "cont
│ │ │ +001e4500: 6169 6e65 7222 5d20 2920 290a 2020 2d20  ainer"] ) ).  - 
│ │ │ +001e4510: 2722 2f76 6172 2f74 6d70 2220 696e 2061  '"/var/tmp" in a
│ │ │ +001e4520: 6e73 6962 6c65 5f6d 6f75 6e74 7320 7c20  nsible_mounts | 
│ │ │ +001e4530: 6d61 7028 6174 7472 6962 7574 653d 226d  map(attribute="m
│ │ │ +001e4540: 6f75 6e74 2229 207c 206c 6973 7427 0a20  ount") | list'. 
│ │ │ +001e4550: 202d 2028 222d 2d66 7374 6162 2220 7c20   - ("--fstab" | 
│ │ │ +001e4560: 6c65 6e67 7468 203d 3d20 3029 0a20 202d  length == 0).  -
│ │ │ +001e4570: 2064 6576 6963 655f 6e61 6d65 2e73 7464   device_name.std
│ │ │ +001e4580: 6f75 7420 6973 2064 6566 696e 6564 2061  out is defined a
│ │ │ +001e4590: 6e64 2064 6576 6963 655f 6e61 6d65 2e73  nd device_name.s
│ │ │ +001e45a0: 7464 6f75 745f 6c69 6e65 7320 6973 2064  tdout_lines is d
│ │ │ +001e45b0: 6566 696e 6564 0a20 202d 2028 6465 7669  efined.  - (devi
│ │ │ +001e45c0: 6365 5f6e 616d 652e 7374 646f 7574 207c  ce_name.stdout |
│ │ │ +001e45d0: 206c 656e 6774 6820 3d3d 2030 290a 2020   length == 0).  
│ │ │ +001e45e0: 7461 6773 3a0a 2020 2d20 636f 6e66 6967  tags:.  - config
│ │ │ +001e45f0: 7572 655f 7374 7261 7465 6779 0a20 202d  ure_strategy.  -
│ │ │ +001e4600: 2068 6967 685f 6469 7372 7570 7469 6f6e   high_disruption
│ │ │ +001e4610: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ +001e4620: 6974 790a 2020 2d20 6d65 6469 756d 5f73  ity.  - medium_s
│ │ │ +001e4630: 6576 6572 6974 790a 2020 2d20 6d6f 756e  everity.  - moun
│ │ │ +001e4640: 745f 6f70 7469 6f6e 5f76 6172 5f74 6d70  t_option_var_tmp
│ │ │ +001e4650: 5f6e 6f65 7865 630a 2020 2d20 6e6f 5f72  _noexec.  - no_r
│ │ │ +001e4660: 6562 6f6f 745f 6e65 6564 6564 0a0a 2d20  eboot_needed..- 
│ │ │ +001e4670: 6e61 6d65 3a20 2741 6464 206e 6f65 7865  name: 'Add noexe
│ │ │ +001e4680: 6320 4f70 7469 6f6e 2074 6f20 2f76 6172  c Option to /var
│ │ │ +001e4690: 2f74 6d70 3a20 4d61 6b65 2073 7572 6520  /tmp: Make sure 
│ │ │ +001e46a0: 6e6f 6578 6563 206f 7074 696f 6e20 6973  noexec option is
│ │ │ +001e46b0: 2070 6172 7420 6f66 2074 6865 2074 6f0a   part of the to.
│ │ │ +001e46c0: 2020 2020 2f76 6172 2f74 6d70 206f 7074      /var/tmp opt
│ │ │ +001e46d0: 696f 6e73 270a 2020 7365 745f 6661 6374  ions'.  set_fact
│ │ │ +001e46e0: 3a0a 2020 2020 6d6f 756e 745f 696e 666f  :.    mount_info
│ │ │ +001e46f0: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ +001e4700: 207c 2063 6f6d 6269 6e65 2820 7b27 276f   | combine( {''o
│ │ │ +001e4710: 7074 696f 6e73 2727 3a27 2727 277e 286d  ptions'':''''~(m
│ │ │ +001e4720: 6f75 6e74 5f69 6e66 6f2e 6f70 7469 6f6e  ount_info.option
│ │ │ +001e4730: 7320 7c0a 2020 2020 2020 6465 6661 756c  s |.      defaul
│ │ │ +001e4740: 7428 2727 2727 2929 7e28 2727 2c27 2720  t(''''))~('','' 
│ │ │ +001e4750: 6966 2028 6d6f 756e 745f 696e 666f 2e6f  if (mount_info.o
│ │ │ +001e4760: 7074 696f 6e73 207c 2064 6566 6175 6c74  ptions | default
│ │ │ +001e4770: 2827 2727 2729 2920 656c 7365 2027 2727  ('''')) else '''
│ │ │ +001e4780: 2729 7e27 276e 6f65 7865 6327 270a 2020  ')~''noexec''.  
│ │ │ +001e4790: 2020 2020 7d29 207d 7d27 0a20 2077 6865      }) }}'.  whe
│ │ │ +001e47a0: 6e3a 0a20 202d 2028 206e 6f74 2028 2022  n:.  - ( not ( "
│ │ │ +001e47b0: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ +001e47c0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001e47d0: 7320 616e 6420 2262 6f6f 7463 2220 696e  s and "bootc" in
│ │ │ +001e47e0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001e47f0: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ +001e4800: 6e6f 7420 226f 7065 6e73 6869 6674 2d6b  not "openshift-k
│ │ │ +001e4810: 7562 656c 6574 2220 696e 2061 6e73 6962  ubelet" in ansib
│ │ │ +001e4820: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001e4830: 7320 616e 6420 226f 7374 7265 6522 2069  s and "ostree" i
│ │ │ +001e4840: 6e20 616e 7369 626c 655f 7072 6f63 5f63  n ansible_proc_c
│ │ │ +001e4850: 6d64 6c69 6e65 0a20 2020 2029 2061 6e64  mdline.    ) and
│ │ │ +001e4860: 206e 6f74 2028 2061 6e73 6962 6c65 5f76   not ( ansible_v
│ │ │ +001e4870: 6972 7475 616c 697a 6174 696f 6e5f 7479  irtualization_ty
│ │ │ +001e4880: 7065 2069 6e20 5b22 646f 636b 6572 222c  pe in ["docker",
│ │ │ +001e4890: 2022 6c78 6322 2c20 226f 7065 6e76 7a22   "lxc", "openvz"
│ │ │ +001e48a0: 2c20 2270 6f64 6d61 6e22 2c0a 2020 2020  , "podman",.    
│ │ │ +001e48b0: 2263 6f6e 7461 696e 6572 225d 2029 2029  "container"] ) )
│ │ │ +001e48c0: 0a20 202d 2027 222f 7661 722f 746d 7022  .  - '"/var/tmp"
│ │ │ +001e48d0: 2069 6e20 616e 7369 626c 655f 6d6f 756e   in ansible_moun
│ │ │ +001e48e0: 7473 207c 206d 6170 2861 7474 7269 6275  ts | map(attribu
│ │ │ +001e48f0: 7465 3d22 6d6f 756e 7422 2920 7c20 6c69  te="mount") | li
│ │ │ +001e4900: 7374 270a 2020 2d20 6d6f 756e 745f 696e  st'.  - mount_in
│ │ │ +001e4910: 666f 2069 7320 6465 6669 6e65 6420 616e  fo is defined an
│ │ │ +001e4920: 6420 226e 6f65 7865 6322 206e 6f74 2069  d "noexec" not i
│ │ │ +001e4930: 6e20 286d 6f75 6e74 5f69 6e66 6f2e 6f70  n (mount_info.op
│ │ │ +001e4940: 7469 6f6e 7320 7c20 6465 6661 756c 7428  tions | default(
│ │ │ +001e4950: 2727 2929 0a20 2074 6167 733a 0a20 202d  '')).  tags:.  -
│ │ │ +001e4960: 2063 6f6e 6669 6775 7265 5f73 7472 6174   configure_strat
│ │ │ +001e4970: 6567 790a 2020 2d20 6869 6768 5f64 6973  egy.  - high_dis
│ │ │ +001e4980: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f  ruption.  - low_
│ │ │ +001e4990: 636f 6d70 6c65 7869 7479 0a20 202d 206d  complexity.  - m
│ │ │ +001e49a0: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ +001e49b0: 202d 206d 6f75 6e74 5f6f 7074 696f 6e5f   - mount_option_
│ │ │ +001e49c0: 7661 725f 746d 705f 6e6f 6578 6563 0a20  var_tmp_noexec. 
│ │ │ +001e49d0: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ +001e49e0: 6465 640a 0a2d 206e 616d 653a 2027 4164  ded..- name: 'Ad
│ │ │ +001e49f0: 6420 6e6f 6578 6563 204f 7074 696f 6e20  d noexec Option 
│ │ │ +001e4a00: 746f 202f 7661 722f 746d 703a 2045 6e73  to /var/tmp: Ens
│ │ │ +001e4a10: 7572 6520 2f76 6172 2f74 6d70 2069 7320  ure /var/tmp is 
│ │ │ +001e4a20: 6d6f 756e 7465 6420 7769 7468 206e 6f65  mounted with noe
│ │ │ +001e4a30: 7865 6320 6f70 7469 6f6e 270a 2020 616e  xec option'.  an
│ │ │ +001e4a40: 7369 626c 652e 706f 7369 782e 6d6f 756e  sible.posix.moun
│ │ │ +001e4a50: 743a 0a20 2020 2070 6174 683a 202f 7661  t:.    path: /va
│ │ │ +001e4a60: 722f 746d 700a 2020 2020 7372 633a 2027  r/tmp.    src: '
│ │ │ +001e4a70: 7b7b 206d 6f75 6e74 5f69 6e66 6f2e 736f  {{ mount_info.so
│ │ │ +001e4a80: 7572 6365 207c 2064 6566 6175 6c74 2827  urce | default('
│ │ │ +001e4a90: 2727 2729 207d 7d27 0a20 2020 206f 7074  ''') }}'.    opt
│ │ │ +001e4aa0: 733a 2027 7b7b 206d 6f75 6e74 5f69 6e66  s: '{{ mount_inf
│ │ │ +001e4ab0: 6f2e 6f70 7469 6f6e 7320 7c20 6465 6661  o.options | defa
│ │ │ +001e4ac0: 756c 7428 2727 2727 2920 7d7d 270a 2020  ult('''') }}'.  
│ │ │ +001e4ad0: 2020 7374 6174 653a 206d 6f75 6e74 6564    state: mounted
│ │ │ +001e4ae0: 0a20 2020 2066 7374 7970 653a 2027 7b7b  .    fstype: '{{
│ │ │ +001e4af0: 206d 6f75 6e74 5f69 6e66 6f2e 6673 7479   mount_info.fsty
│ │ │ +001e4b00: 7065 207c 2064 6566 6175 6c74 2827 2727  pe | default('''
│ │ │ +001e4b10: 2729 207d 7d27 0a20 2072 6567 6973 7465  ') }}'.  registe
│ │ │ +001e4b20: 723a 206d 6f75 6e74 5f72 6573 756c 740a  r: mount_result.
│ │ │ +001e4b30: 2020 6661 696c 6564 5f77 6865 6e3a 0a20    failed_when:. 
│ │ │ +001e4b40: 202d 206d 6f75 6e74 5f72 6573 756c 7420   - mount_result 
│ │ │ +001e4b50: 6973 2066 6169 6c65 640a 2020 2d20 2727  is failed.  - ''
│ │ │ +001e4b60: 2774 6172 6765 7420 6973 2062 7573 7927  'target is busy'
│ │ │ +001e4b70: 2720 6e6f 7420 696e 2028 6d6f 756e 745f  ' not in (mount_
│ │ │ +001e4b80: 7265 7375 6c74 2e6d 7367 207c 2064 6566  result.msg | def
│ │ │ +001e4b90: 6175 6c74 2827 2727 2729 2927 0a20 202d  ault(''''))'.  -
│ │ │ +001e4ba0: 2027 2727 616c 7265 6164 7920 6d6f 756e   '''already moun
│ │ │ +001e4bb0: 7465 6427 2720 6e6f 7420 696e 2028 6d6f  ted'' not in (mo
│ │ │ +001e4bc0: 756e 745f 7265 7375 6c74 2e6d 7367 207c  unt_result.msg |
│ │ │ +001e4bd0: 2064 6566 6175 6c74 2827 2727 2729 2927   default(''''))'
│ │ │ +001e4be0: 0a20 2077 6865 6e3a 0a20 202d 2028 206e  .  when:.  - ( n
│ │ │ +001e4bf0: 6f74 2028 2022 6b65 726e 656c 2220 696e  ot ( "kernel" in
│ │ │ +001e4c00: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001e4c10: 6163 6b61 6765 7320 616e 6420 2262 6f6f  ackages and "boo
│ │ │ +001e4c20: 7463 2220 696e 2061 6e73 6962 6c65 5f66  tc" in ansible_f
│ │ │ +001e4c30: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ +001e4c40: 2020 616e 6420 6e6f 7420 226f 7065 6e73    and not "opens
│ │ │ +001e4c50: 6869 6674 2d6b 7562 656c 6574 2220 696e  hift-kubelet" in
│ │ │ +001e4c60: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001e4c70: 6163 6b61 6765 7320 616e 6420 226f 7374  ackages and "ost
│ │ │ +001e4c80: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ +001e4c90: 7072 6f63 5f63 6d64 6c69 6e65 0a20 2020  proc_cmdline.   
│ │ │ +001e4ca0: 2029 2061 6e64 206e 6f74 2028 2061 6e73   ) and not ( ans
│ │ │ +001e4cb0: 6962 6c65 5f76 6972 7475 616c 697a 6174  ible_virtualizat
│ │ │ +001e4cc0: 696f 6e5f 7479 7065 2069 6e20 5b22 646f  ion_type in ["do
│ │ │ +001e4cd0: 636b 6572 222c 2022 6c78 6322 2c20 226f  cker", "lxc", "o
│ │ │ +001e4ce0: 7065 6e76 7a22 2c20 2270 6f64 6d61 6e22  penvz", "podman"
│ │ │ +001e4cf0: 2c0a 2020 2020 2263 6f6e 7461 696e 6572  ,.    "container
│ │ │ +001e4d00: 225d 2029 2029 0a20 202d 2027 222f 7661  "] ) ).  - '"/va
│ │ │ +001e4d10: 722f 746d 7022 2069 6e20 616e 7369 626c  r/tmp" in ansibl
│ │ │ +001e4d20: 655f 6d6f 756e 7473 207c 206d 6170 2861  e_mounts | map(a
│ │ │ +001e4d30: 7474 7269 6275 7465 3d22 6d6f 756e 7422  ttribute="mount"
│ │ │ +001e4d40: 2920 7c20 6c69 7374 270a 2020 2d20 6d6f  ) | list'.  - mo
│ │ │ +001e4d50: 756e 745f 696e 666f 2069 7320 6465 6669  unt_info is defi
│ │ │ +001e4d60: 6e65 640a 2020 2d20 2864 6576 6963 655f  ned.  - (device_
│ │ │ +001e4d70: 6e61 6d65 2e73 7464 6f75 7420 6973 2064  name.stdout is d
│ │ │ +001e4d80: 6566 696e 6564 2061 6e64 2028 6465 7669  efined and (devi
│ │ │ +001e4d90: 6365 5f6e 616d 652e 7374 646f 7574 207c  ce_name.stdout |
│ │ │ +001e4da0: 206c 656e 6774 6820 2667 743b 2030 2929   length > 0))
│ │ │ +001e4db0: 206f 7220 2822 2d2d 6673 7461 6222 0a20   or ("--fstab". 
│ │ │ +001e4dc0: 2020 207c 206c 656e 6774 6820 3d3d 2030     | length == 0
│ │ │ +001e4dd0: 290a 2020 7461 6773 3a0a 2020 2d20 636f  ).  tags:.  - co
│ │ │ +001e4de0: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ +001e4df0: 0a20 202d 2068 6967 685f 6469 7372 7570  .  - high_disrup
│ │ │ +001e4e00: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d  tion.  - low_com
│ │ │ +001e4e10: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ +001e4e20: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ +001e4e30: 6d6f 756e 745f 6f70 7469 6f6e 5f76 6172  mount_option_var
│ │ │ +001e4e40: 5f74 6d70 5f6e 6f65 7865 630a 2020 2d20  _tmp_noexec.  - 
│ │ │ +001e4e50: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ +001e4e60: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation She │ │ │ +001e4f20: 6c6c 2073 6372 6970 7420 e287 b23c 2f61 ll script ...
Compl │ │ │ +001e3ab0: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ +001e3ac0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ +001e3ae0: 2f74 683e 3c74 643e 6869 6768 3c2f 7464 /th>high
Re │ │ │ +001e3b00: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +001e3b10: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:configure │ │ │ +001e3b40: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
# Remediation i
│ │ │ +001e4ff0: 7320 6170 706c 6963 6162 6c65 206f 6e6c  s applicable onl
│ │ │ +001e5000: 7920 696e 2063 6572 7461 696e 2070 6c61  y in certain pla
│ │ │ +001e5010: 7466 6f72 6d73 0a69 6620 2820 2120 2820  tforms.if ( ! ( 
│ │ │ +001e5020: 7b20 7270 6d20 2d2d 7175 6965 7420 2d71  { rpm --quiet -q
│ │ │ +001e5030: 206b 6572 6e65 6c20 3b7d 2026 616d 703b   kernel ;} &
│ │ │ +001e5040: 2661 6d70 3b20 7b20 7270 6d20 2d2d 7175  & { rpm --qu
│ │ │ +001e5050: 6965 7420 2d71 2062 6f6f 7463 203b 7d20  iet -q bootc ;} 
│ │ │ +001e5060: 2661 6d70 3b26 616d 703b 207b 2021 2072  && { ! r
│ │ │ +001e5070: 706d 202d 2d71 7569 6574 202d 7120 6f70  pm --quiet -q op
│ │ │ +001e5080: 656e 7368 6966 742d 6b75 6265 6c65 7420  enshift-kubelet 
│ │ │ +001e5090: 3b7d 2026 616d 703b 2661 6d70 3b20 285b  ;} && ([
│ │ │ +001e50a0: 202d 6620 2f72 756e 2f6f 7374 7265 652d   -f /run/ostree-
│ │ │ +001e50b0: 626f 6f74 6564 205d 207c 7c20 5b20 2d4c  booted ] || [ -L
│ │ │ +001e50c0: 202f 6f73 7472 6565 205d 2920 2920 2661   /ostree ]) ) &a
│ │ │ +001e50d0: 6d70 3b26 616d 703b 2021 2028 205b 202d  mp;& ! ( [ -
│ │ │ +001e50e0: 6620 2f2e 646f 636b 6572 656e 7620 5d20  f /.dockerenv ] 
│ │ │ +001e50f0: 7c7c 205b 202d 6620 2f72 756e 2f2e 636f  || [ -f /run/.co
│ │ │ +001e5100: 6e74 6169 6e65 7265 6e76 205d 2029 2029  ntainerenv ] ) )
│ │ │ +001e5110: 2026 616d 703b 2661 6d70 3b20 7b20 2820   && { ( 
│ │ │ +001e5120: 6669 6e64 6d6e 7420 2d2d 6b65 726e 656c  findmnt --kernel
│ │ │ +001e5130: 2022 2f76 6172 2f74 6d70 2220 2667 743b   "/var/tmp" >
│ │ │ +001e5140: 202f 6465 762f 6e75 6c6c 207c 7c20 6669   /dev/null || fi
│ │ │ +001e5150: 6e64 6d6e 7420 2d2d 6673 7461 6220 222f  ndmnt --fstab "/
│ │ │ +001e5160: 7661 722f 746d 7022 2026 6774 3b20 2f64  var/tmp" > /d
│ │ │ +001e5170: 6576 2f6e 756c 6c20 293b 207d 3b20 7468  ev/null ); }; th
│ │ │ +001e5180: 656e 0a0a 6675 6e63 7469 6f6e 2070 6572  en..function per
│ │ │ +001e5190: 666f 726d 5f72 656d 6564 6961 7469 6f6e  form_remediation
│ │ │ +001e51a0: 207b 0a0a 2020 2020 0a20 2020 2020 2020   {..    .       
│ │ │ +001e51b0: 2023 2074 6865 206d 6f75 6e74 2070 6f69   # the mount poi
│ │ │ +001e51c0: 6e74 202f 7661 722f 746d 7020 6861 7320  nt /var/tmp has 
│ │ │ +001e51d0: 746f 2062 6520 6465 6669 6e65 6420 696e  to be defined in
│ │ │ +001e51e0: 202f 6574 632f 6673 7461 620a 2020 2020   /etc/fstab.    
│ │ │ +001e51f0: 2020 2020 2320 6265 666f 7265 2074 6869      # before thi
│ │ │ +001e5200: 7320 7265 6d65 6469 6174 696f 6e20 6361  s remediation ca
│ │ │ +001e5210: 6e20 6265 2065 7865 6375 7465 642e 2049  n be executed. I
│ │ │ +001e5220: 6e20 6361 7365 2069 7420 6973 206e 6f74  n case it is not
│ │ │ +001e5230: 2064 6566 696e 6564 2c20 7468 650a 2020   defined, the.  
│ │ │ +001e5240: 2020 2020 2020 2320 7265 6d65 6469 6174        # remediat
│ │ │ +001e5250: 696f 6e20 6162 6f72 7473 2061 6e64 206e  ion aborts and n
│ │ │ +001e5260: 6f20 6368 616e 6765 7320 7265 6761 7264  o changes regard
│ │ │ +001e5270: 696e 6720 7468 6520 6d6f 756e 7420 706f  ing the mount po
│ │ │ +001e5280: 696e 7420 6172 6520 646f 6e65 2e0a 2020  int are done..  
│ │ │ +001e5290: 2020 2020 2020 6d6f 756e 745f 706f 696e        mount_poin
│ │ │ +001e52a0: 745f 6d61 7463 685f 7265 6765 7870 3d22  t_match_regexp="
│ │ │ +001e52b0: 2428 7072 696e 7466 2022 5e5b 5b3a 7370  $(printf "^[[:sp
│ │ │ +001e52c0: 6163 653a 5d5d 2a5b 5e23 5d2e 2a5b 5b3a  ace:]]*[^#].*[[:
│ │ │ +001e52d0: 7370 6163 653a 5d5d 2573 5b5b 3a73 7061  space:]]%s[[:spa
│ │ │ +001e52e0: 6365 3a5d 5d22 2022 2f76 6172 2f74 6d70  ce:]]" "/var/tmp
│ │ │ +001e52f0: 2229 220a 0a20 2020 2067 7265 7020 2224  ")"..    grep "$
│ │ │ +001e5300: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ +001e5310: 685f 7265 6765 7870 2220 2d71 202f 6574  h_regexp" -q /et
│ │ │ +001e5320: 632f 6673 7461 6220 5c0a 2020 2020 2020  c/fstab \.      
│ │ │ +001e5330: 2020 7c7c 207b 2065 6368 6f20 2254 6865    || { echo "The
│ │ │ +001e5340: 206d 6f75 6e74 2070 6f69 6e74 2027 2f76   mount point '/v
│ │ │ +001e5350: 6172 2f74 6d70 2720 6973 206e 6f74 2065  ar/tmp' is not e
│ │ │ +001e5360: 7665 6e20 696e 202f 6574 632f 6673 7461  ven in /etc/fsta
│ │ │ +001e5370: 622c 2073 6f20 7765 2063 616e 2774 2073  b, so we can't s
│ │ │ +001e5380: 6574 2075 7020 6d6f 756e 7420 6f70 7469  et up mount opti
│ │ │ +001e5390: 6f6e 7322 2026 6774 3b26 616d 703b 323b  ons" >&2;
│ │ │ +001e53a0: 0a20 2020 2020 2020 2020 2020 2020 2020  .               
│ │ │ +001e53b0: 2065 6368 6f20 224e 6f74 2072 656d 6564   echo "Not remed
│ │ │ +001e53c0: 6961 7469 6e67 2c20 6265 6361 7573 6520  iating, because 
│ │ │ +001e53d0: 7468 6572 6520 6973 206e 6f20 7265 636f  there is no reco
│ │ │ +001e53e0: 7264 206f 6620 2f76 6172 2f74 6d70 2069  rd of /var/tmp i
│ │ │ +001e53f0: 6e20 2f65 7463 2f66 7374 6162 2220 2667  n /etc/fstab" &g
│ │ │ +001e5400: 743b 2661 6d70 3b32 3b20 7265 7475 726e  t;&2; return
│ │ │ +001e5410: 2031 3b20 7d0a 2020 2020 0a0a 0a20 2020   1; }.    ...   
│ │ │ +001e5420: 206d 6f75 6e74 5f70 6f69 6e74 5f6d 6174   mount_point_mat
│ │ │ +001e5430: 6368 5f72 6567 6578 703d 2224 2870 7269  ch_regexp="$(pri
│ │ │ +001e5440: 6e74 6620 225e 5b5b 3a73 7061 6365 3a5d  ntf "^[[:space:]
│ │ │ +001e5450: 5d2a 5b5e 235d 2e2a 5b5b 3a73 7061 6365  ]*[^#].*[[:space
│ │ │ +001e5460: 3a5d 5d25 735b 5b3a 7370 6163 653a 5d5d  :]]%s[[:space:]]
│ │ │ +001e5470: 2220 2f76 6172 2f74 6d70 2922 0a0a 2020  " /var/tmp)"..  
│ │ │ +001e5480: 2020 2320 4966 2074 6865 206d 6f75 6e74    # If the mount
│ │ │ +001e5490: 2070 6f69 6e74 2069 7320 6e6f 7420 696e   point is not in
│ │ │ +001e54a0: 202f 6574 632f 6673 7461 622c 2067 6574   /etc/fstab, get
│ │ │ +001e54b0: 2070 7265 7669 6f75 7320 6d6f 756e 7420   previous mount 
│ │ │ +001e54c0: 6f70 7469 6f6e 7320 6672 6f6d 202f 6574  options from /et
│ │ │ +001e54d0: 632f 6d74 6162 0a20 2020 2069 6620 2120  c/mtab.    if ! 
│ │ │ +001e54e0: 6772 6570 202d 7120 2224 6d6f 756e 745f  grep -q "$mount_
│ │ │ +001e54f0: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ +001e5500: 7870 2220 2f65 7463 2f66 7374 6162 3b20  xp" /etc/fstab; 
│ │ │ +001e5510: 7468 656e 0a20 2020 2020 2020 2023 2072  then.        # r
│ │ │ +001e5520: 756e 7469 6d65 206f 7074 7320 7769 7468  untime opts with
│ │ │ +001e5530: 6f75 7420 736f 6d65 2061 7574 6f6d 6174  out some automat
│ │ │ +001e5540: 6963 206b 6572 6e65 6c2f 7573 6572 7370  ic kernel/usersp
│ │ │ +001e5550: 6163 652d 6164 6465 6420 6465 6661 756c  ace-added defaul
│ │ │ +001e5560: 7473 0a20 2020 2020 2020 2070 7265 7669  ts.        previ
│ │ │ +001e5570: 6f75 735f 6d6f 756e 745f 6f70 7473 3d24  ous_mount_opts=$
│ │ │ +001e5580: 2867 7265 7020 2224 6d6f 756e 745f 706f  (grep "$mount_po
│ │ │ +001e5590: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ +001e55a0: 2220 2f65 7463 2f6d 7461 6220 7c20 6865  " /etc/mtab | he
│ │ │ +001e55b0: 6164 202d 3120 7c20 2061 776b 2027 7b70  ad -1 |  awk '{p
│ │ │ +001e55c0: 7269 6e74 2024 347d 2720 5c0a 2020 2020  rint $4}' \.    
│ │ │ +001e55d0: 2020 2020 2020 2020 2020 2020 2020 2020                  
│ │ │ +001e55e0: 7c20 7365 6420 2d45 2022 732f 2872 777c  | sed -E "s/(rw|
│ │ │ +001e55f0: 6465 6661 756c 7473 7c73 6563 6c61 6265  defaults|seclabe
│ │ │ +001e5600: 6c7c 6e6f 6578 6563 2928 2c7c 2429 2f2f  l|noexec)(,|$)//
│ │ │ +001e5610: 673b 732f 2c24 2f2f 2229 0a20 2020 2020  g;s/,$//").     
│ │ │ +001e5620: 2020 205b 2022 2470 7265 7669 6f75 735f     [ "$previous_
│ │ │ +001e5630: 6d6f 756e 745f 6f70 7473 2220 5d20 2661  mount_opts" ] &a
│ │ │ +001e5640: 6d70 3b26 616d 703b 2070 7265 7669 6f75  mp;& previou
│ │ │ +001e5650: 735f 6d6f 756e 745f 6f70 7473 2b3d 222c  s_mount_opts+=",
│ │ │ +001e5660: 220a 2020 2020 2020 2020 2320 496e 2069  ".        # In i
│ │ │ +001e5670: 736f 3936 3630 2066 696c 6573 7973 7465  so9660 filesyste
│ │ │ +001e5680: 6d73 206d 7461 6220 636f 756c 6420 6465  ms mtab could de
│ │ │ +001e5690: 7363 7269 6265 2061 2022 626c 6f63 6b73  scribe a "blocks
│ │ │ +001e56a0: 697a 6522 2076 616c 7565 2c20 7468 6973  ize" value, this
│ │ │ +001e56b0: 2073 686f 756c 6420 6265 2072 6566 6c65   should be refle
│ │ │ +001e56c0: 6374 6564 2069 6e0a 2020 2020 2020 2020  cted in.        
│ │ │ +001e56d0: 2320 6673 7461 6220 6173 2022 626c 6f63  # fstab as "bloc
│ │ │ +001e56e0: 6b22 2e20 2054 6865 206e 6578 7420 7661  k".  The next va
│ │ │ +001e56f0: 7269 6162 6c65 2069 7320 746f 2073 6174  riable is to sat
│ │ │ +001e5700: 6973 6679 2073 6865 6c6c 6368 6563 6b20  isfy shellcheck 
│ │ │ +001e5710: 5343 3230 3530 2e0a 2020 2020 2020 2020  SC2050..        
│ │ │ +001e5720: 6673 5f74 7970 653d 2222 0a20 2020 2020  fs_type="".     
│ │ │ +001e5730: 2020 2069 6620 5b20 2022 2466 735f 7479     if [  "$fs_ty
│ │ │ +001e5740: 7065 2220 3d3d 2022 6973 6f39 3636 3022  pe" == "iso9660"
│ │ │ +001e5750: 205d 203b 2074 6865 6e0a 2020 2020 2020   ] ; then.      
│ │ │ +001e5760: 2020 2020 2020 7072 6576 696f 7573 5f6d        previous_m
│ │ │ +001e5770: 6f75 6e74 5f6f 7074 733d 2428 7365 6420  ount_opts=$(sed 
│ │ │ +001e5780: 2773 2f62 6c6f 636b 7369 7a65 3d2f 626c  's/blocksize=/bl
│ │ │ +001e5790: 6f63 6b3d 2f27 2026 6c74 3b26 6c74 3b26  ock=/' <<&
│ │ │ +001e57a0: 6c74 3b20 2224 7072 6576 696f 7573 5f6d  lt; "$previous_m
│ │ │ +001e57b0: 6f75 6e74 5f6f 7074 7322 290a 2020 2020  ount_opts").    
│ │ │ +001e57c0: 2020 2020 6669 0a20 2020 2020 2020 2065      fi.        e
│ │ │ +001e57d0: 6368 6f20 2220 2f76 6172 2f74 6d70 2020  cho " /var/tmp  
│ │ │ +001e57e0: 6465 6661 756c 7473 2c24 7b70 7265 7669  defaults,${previ
│ │ │ +001e57f0: 6f75 735f 6d6f 756e 745f 6f70 7473 7d6e  ous_mount_opts}n
│ │ │ +001e5800: 6f65 7865 6320 3020 3022 2026 6774 3b26  oexec 0 0" >&
│ │ │ +001e5810: 6774 3b20 2f65 7463 2f66 7374 6162 0a20  gt; /etc/fstab. 
│ │ │ +001e5820: 2020 2023 2049 6620 7468 6520 6d6f 756e     # If the moun
│ │ │ +001e5830: 745f 6f70 7420 6f70 7469 6f6e 2069 7320  t_opt option is 
│ │ │ +001e5840: 6e6f 7420 616c 7265 6164 7920 696e 2074  not already in t
│ │ │ +001e5850: 6865 206d 6f75 6e74 2070 6f69 6e74 2773  he mount point's
│ │ │ +001e5860: 202f 6574 632f 6673 7461 6220 656e 7472   /etc/fstab entr
│ │ │ +001e5870: 792c 2061 6464 2069 740a 2020 2020 656c  y, add it.    el
│ │ │ +001e5880: 6966 2021 2067 7265 7020 2224 6d6f 756e  if ! grep "$moun
│ │ │ +001e5890: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ +001e58a0: 6765 7870 2220 2f65 7463 2f66 7374 6162  gexp" /etc/fstab
│ │ │ +001e58b0: 207c 2067 7265 7020 2d71 2022 6e6f 6578   | grep -q "noex
│ │ │ +001e58c0: 6563 223b 2074 6865 6e0a 2020 2020 2020  ec"; then.      
│ │ │ +001e58d0: 2020 7072 6576 696f 7573 5f6d 6f75 6e74    previous_mount
│ │ │ +001e58e0: 5f6f 7074 733d 2428 6772 6570 2022 246d  _opts=$(grep "$m
│ │ │ +001e58f0: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ +001e5900: 5f72 6567 6578 7022 202f 6574 632f 6673  _regexp" /etc/fs
│ │ │ +001e5910: 7461 6220 7c20 6177 6b20 277b 7072 696e  tab | awk '{prin
│ │ │ +001e5920: 7420 2434 7d27 290a 2020 2020 2020 2020  t $4}').        
│ │ │ +001e5930: 7365 6420 2d69 2022 737c 5c28 247b 6d6f  sed -i "s|\(${mo
│ │ │ +001e5940: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ +001e5950: 7265 6765 7870 7d2e 2a24 7b70 7265 7669  regexp}.*${previ
│ │ │ +001e5960: 6f75 735f 6d6f 756e 745f 6f70 7473 7d5c  ous_mount_opts}\
│ │ │ +001e5970: 297c 5c31 2c6e 6f65 7865 637c 2220 2f65  )|\1,noexec|" /e
│ │ │ +001e5980: 7463 2f66 7374 6162 0a20 2020 2066 690a  tc/fstab.    fi.
│ │ │ +001e5990: 0a0a 2020 2020 6966 206d 6b64 6972 202d  ..    if mkdir -
│ │ │ +001e59a0: 7020 222f 7661 722f 746d 7022 3b20 7468  p "/var/tmp"; th
│ │ │ +001e59b0: 656e 0a20 2020 2020 2020 2069 6620 6d6f  en.        if mo
│ │ │ +001e59c0: 756e 7470 6f69 6e74 202d 7120 222f 7661  untpoint -q "/va
│ │ │ +001e59d0: 722f 746d 7022 3b20 7468 656e 0a20 2020  r/tmp"; then.   
│ │ │ +001e59e0: 2020 2020 2020 2020 206d 6f75 6e74 202d           mount -
│ │ │ +001e59f0: 6f20 7265 6d6f 756e 7420 2d2d 7461 7267  o remount --targ
│ │ │ +001e5a00: 6574 2022 2f76 6172 2f74 6d70 220a 2020  et "/var/tmp".  
│ │ │ +001e5a10: 2020 2020 2020 6669 0a20 2020 2066 690a        fi.    fi.
│ │ │ +001e5a20: 7d0a 0a70 6572 666f 726d 5f72 656d 6564  }..perform_remed
│ │ │ +001e5a30: 6961 7469 6f6e 0a0a 656c 7365 0a20 2020  iation..else.   
│ │ │ +001e5a40: 2026 6774 3b26 616d 703b 3220 6563 686f   >&2 echo
│ │ │ +001e5a50: 2027 5265 6d65 6469 6174 696f 6e20 6973   'Remediation is
│ │ │ +001e5a60: 206e 6f74 2061 7070 6c69 6361 626c 652c   not applicable,
│ │ │ +001e5a70: 206e 6f74 6869 6e67 2077 6173 2064 6f6e   nothing was don
│ │ │ +001e5a80: 6527 0a66 690a 3c2f 636f 6465 3e3c 2f70  e'.fi.

Remediatio │ │ │ +001e5b40: 6e20 416e 6163 6f6e 6461 2073 6e69 7070 n Anaconda snipp │ │ │ +001e5b50: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ +001e5bd0: 3c74 723e 3c74 683e 436f 6d70 6c65 7869
Strategy: │ │ │ +001e5c60: 3c74 643e 656e 6162 6c65 3c2f 7464 3e3c < │ │ │ +001e5c70: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
R │ │ │ +001e4fb0: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +001e4fc0: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c2f alse
Complexi │ │ │ +001e5be0: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +001e5bf0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Disruption:high
Reboo │ │ │ +001e5c30: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ +001e5c40: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
enable
.part /va
│ │ │ +001e5c90: 722f 746d 7020 2d2d 6d6f 756e 746f 7074  r/tmp --mountopt
│ │ │ +001e5ca0: 696f 6e73 3d22 6e6f 6578 6563 220a 3c2f  ions="noexec".
R │ │ │ -001e66e0: 656d 6564 6961 7469 6f6e 2041 6e61 636f emediation Anaco │ │ │ -001e66f0: 6e64 6120 736e 6970 7065 7420 e287 b23c nda snippet ...< │ │ │ -001e6700: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
│ │ │ -001e67d0: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -001e67e0: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f

│ │ │ -001e6830: 0a70 6172 7420 2f76 6172 2f74 6d70 202d  .part /var/tmp -
│ │ │ -001e6840: 2d6d 6f75 6e74 6f70 7469 6f6e 733d 226e  -mountoptions="n
│ │ │ -001e6850: 6f73 7569 6422 0a3c 2f63 6f64 653e 3c2f  osuid".Remediati
│ │ │ -001e6910: 6f6e 2041 6e73 6962 6c65 2073 6e69 7070  on Ansible snipp
│ │ │ -001e6920: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64  et ...
│ │ │ -001e69a0: 3c74 723e 3c74 683e 436f 6d70 6c65 7869
Strategy: │ │ │ -001e6a30: 3c74 643e 636f 6e66 6967 7572 653c 2f74
Complexity:low
Disrup │ │ │ -001e67b0: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6869 tion:hi │ │ │ -001e67c0: 6768 3c2f 7464 3e3c 2f74 723e 3c74 723e gh
Reboot:false
Strat │ │ │ -001e6800: 6567 793a 3c2f 7468 3e3c 7464 3e65 6e61 egy:ena │ │ │ -001e6810: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Complexi │ │ │ -001e69b0: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -001e69c0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Disruption:high
Reboo │ │ │ -001e6a00: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -001e6a10: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
configure
< │ │ │ -001e6a50: 7072 653e 3c63 6f64 653e 2d20 6e61 6d65 pre>- name │ │ │ -001e6a60: 3a20 4761 7468 6572 2074 6865 2070 6163 : Gather the pac │ │ │ -001e6a70: 6b61 6765 2066 6163 7473 0a20 2070 6163 kage facts. pac │ │ │ -001e6a80: 6b61 6765 5f66 6163 7473 3a0a 2020 2020 kage_facts:. │ │ │ -001e6a90: 6d61 6e61 6765 723a 2061 7574 6f0a 2020 manager: auto. │ │ │ -001e6aa0: 7461 6773 3a0a 2020 2d20 636f 6e66 6967 tags:. - config │ │ │ -001e6ab0: 7572 655f 7374 7261 7465 6779 0a20 202d ure_strategy. - │ │ │ -001e6ac0: 2068 6967 685f 6469 7372 7570 7469 6f6e high_disruption │ │ │ -001e6ad0: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578 . - low_complex │ │ │ -001e6ae0: 6974 790a 2020 2d20 6d65 6469 756d 5f73 ity. - medium_s │ │ │ -001e6af0: 6576 6572 6974 790a 2020 2d20 6d6f 756e everity. - moun │ │ │ -001e6b00: 745f 6f70 7469 6f6e 5f76 6172 5f74 6d70 t_option_var_tmp │ │ │ -001e6b10: 5f6e 6f73 7569 640a 2020 2d20 6e6f 5f72 _nosuid. - no_r │ │ │ -001e6b20: 6562 6f6f 745f 6e65 6564 6564 0a0a 2d20 eboot_needed..- │ │ │ -001e6b30: 6e61 6d65 3a20 2741 6464 206e 6f73 7569 name: 'Add nosui │ │ │ -001e6b40: 6420 4f70 7469 6f6e 2074 6f20 2f76 6172 d Option to /var │ │ │ -001e6b50: 2f74 6d70 3a20 4368 6563 6b20 696e 666f /tmp: Check info │ │ │ -001e6b60: 726d 6174 696f 6e20 6173 736f 6369 6174 rmation associat │ │ │ -001e6b70: 6564 2074 6f20 6d6f 756e 7470 6f69 6e74 ed to mountpoint │ │ │ -001e6b80: 270a 2020 616e 7369 626c 652e 6275 696c '. ansible.buil │ │ │ -001e6b90: 7469 6e2e 636f 6d6d 616e 643a 2066 696e tin.command: fin │ │ │ -001e6ba0: 646d 6e74 202d 2d66 7374 6162 2027 2f76 dmnt --fstab '/v │ │ │ -001e6bb0: 6172 2f74 6d70 270a 2020 7265 6769 7374 ar/tmp'. regist │ │ │ -001e6bc0: 6572 3a20 6465 7669 6365 5f6e 616d 650a er: device_name. │ │ │ -001e6bd0: 2020 6661 696c 6564 5f77 6865 6e3a 2064 failed_when: d │ │ │ -001e6be0: 6576 6963 655f 6e61 6d65 2e72 6320 2667 evice_name.rc &g │ │ │ -001e6bf0: 743b 2031 0a20 2063 6861 6e67 6564 5f77 t; 1. changed_w │ │ │ -001e6c00: 6865 6e3a 2066 616c 7365 0a20 2063 6865 hen: false. che │ │ │ -001e6c10: 636b 5f6d 6f64 653a 2066 616c 7365 0a20 ck_mode: false. │ │ │ -001e6c20: 2077 6865 6e3a 0a20 202d 2028 206e 6f74 when:. - ( not │ │ │ -001e6c30: 2028 2022 6b65 726e 656c 2220 696e 2061 ( "kernel" in a │ │ │ -001e6c40: 6e73 6962 6c65 5f66 6163 7473 2e70 6163 nsible_facts.pac │ │ │ -001e6c50: 6b61 6765 7320 616e 6420 2262 6f6f 7463 kages and "bootc │ │ │ -001e6c60: 2220 696e 2061 6e73 6962 6c65 5f66 6163 " in ansible_fac │ │ │ -001e6c70: 7473 2e70 6163 6b61 6765 730a 2020 2020 ts.packages. │ │ │ -001e6c80: 616e 6420 6e6f 7420 226f 7065 6e73 6869 and not "openshi │ │ │ -001e6c90: 6674 2d6b 7562 656c 6574 2220 696e 2061 ft-kubelet" in a │ │ │ -001e6ca0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163 nsible_facts.pac │ │ │ -001e6cb0: 6b61 6765 7320 616e 6420 226f 7374 7265 kages and "ostre │ │ │ -001e6cc0: 6522 2069 6e20 616e 7369 626c 655f 7072 e" in ansible_pr │ │ │ -001e6cd0: 6f63 5f63 6d64 6c69 6e65 0a20 2020 2029 oc_cmdline. ) │ │ │ -001e6ce0: 2061 6e64 206e 6f74 2028 2061 6e73 6962 and not ( ansib │ │ │ -001e6cf0: 6c65 5f76 6972 7475 616c 697a 6174 696f le_virtualizatio │ │ │ -001e6d00: 6e5f 7479 7065 2069 6e20 5b22 646f 636b n_type in ["dock │ │ │ -001e6d10: 6572 222c 2022 6c78 6322 2c20 226f 7065 er", "lxc", "ope │ │ │ -001e6d20: 6e76 7a22 2c20 2270 6f64 6d61 6e22 2c0a nvz", "podman",. │ │ │ -001e6d30: 2020 2020 2263 6f6e 7461 696e 6572 225d "container"] │ │ │ -001e6d40: 2029 2029 0a20 202d 2027 222f 7661 722f ) ). - '"/var/ │ │ │ -001e6d50: 746d 7022 2069 6e20 616e 7369 626c 655f tmp" in ansible_ │ │ │ -001e6d60: 6d6f 756e 7473 207c 206d 6170 2861 7474 mounts | map(att │ │ │ -001e6d70: 7269 6275 7465 3d22 6d6f 756e 7422 2920 ribute="mount") │ │ │ -001e6d80: 7c20 6c69 7374 270a 2020 7461 6773 3a0a | list'. tags:. │ │ │ -001e6d90: 2020 2d20 636f 6e66 6967 7572 655f 7374 - configure_st │ │ │ -001e6da0: 7261 7465 6779 0a20 202d 2068 6967 685f rategy. - high_ │ │ │ -001e6db0: 6469 7372 7570 7469 6f6e 0a20 202d 206c disruption. - l │ │ │ -001e6dc0: 6f77 5f63 6f6d 706c 6578 6974 790a 2020 ow_complexity. │ │ │ -001e6dd0: 2d20 6d65 6469 756d 5f73 6576 6572 6974 - medium_severit │ │ │ -001e6de0: 790a 2020 2d20 6d6f 756e 745f 6f70 7469 y. - mount_opti │ │ │ -001e6df0: 6f6e 5f76 6172 5f74 6d70 5f6e 6f73 7569 on_var_tmp_nosui │ │ │ -001e6e00: 640a 2020 2d20 6e6f 5f72 6562 6f6f 745f d. - no_reboot_ │ │ │ -001e6e10: 6e65 6564 6564 0a0a 2d20 6e61 6d65 3a20 needed..- name: │ │ │ -001e6e20: 2741 6464 206e 6f73 7569 6420 4f70 7469 'Add nosuid Opti │ │ │ -001e6e30: 6f6e 2074 6f20 2f76 6172 2f74 6d70 3a20 on to /var/tmp: │ │ │ -001e6e40: 4372 6561 7465 206d 6f75 6e74 5f69 6e66 Create mount_inf │ │ │ -001e6e50: 6f20 6469 6374 696f 6e61 7279 2076 6172 o dictionary var │ │ │ -001e6e60: 6961 626c 6527 0a20 2073 6574 5f66 6163 iable'. set_fac │ │ │ -001e6e70: 743a 0a20 2020 206d 6f75 6e74 5f69 6e66 t:. mount_inf │ │ │ -001e6e80: 6f3a 2027 7b7b 206d 6f75 6e74 5f69 6e66 o: '{{ mount_inf │ │ │ -001e6e90: 6f7c 6465 6661 756c 7428 7b7d 297c 636f o|default({})|co │ │ │ -001e6ea0: 6d62 696e 6528 7b69 7465 6d2e 303a 2069 mbine({item.0: i │ │ │ -001e6eb0: 7465 6d2e 317d 2920 7d7d 270a 2020 7769 tem.1}) }}'. wi │ │ │ -001e6ec0: 7468 5f74 6f67 6574 6865 723a 0a20 202d th_together:. - │ │ │ -001e6ed0: 2027 7b7b 2064 6576 6963 655f 6e61 6d65 '{{ device_name │ │ │ -001e6ee0: 2e73 7464 6f75 745f 6c69 6e65 735b 305d .stdout_lines[0] │ │ │ -001e6ef0: 2e73 706c 6974 2829 207c 206d 6170 2827 .split() | map(' │ │ │ -001e6f00: 276c 6f77 6572 2727 2920 7c20 6c69 7374 'lower'') | list │ │ │ -001e6f10: 207d 7d27 0a20 202d 2027 7b7b 2064 6576 }}'. - '{{ dev │ │ │ -001e6f20: 6963 655f 6e61 6d65 2e73 7464 6f75 745f ice_name.stdout_ │ │ │ -001e6f30: 6c69 6e65 735b 315d 2e73 706c 6974 2829 lines[1].split() │ │ │ -001e6f40: 207c 206c 6973 7420 7d7d 270a 2020 7768 | list }}'. wh │ │ │ -001e6f50: 656e 3a0a 2020 2d20 2820 6e6f 7420 2820 en:. - ( not ( │ │ │ -001e6f60: 226b 6572 6e65 6c22 2069 6e20 616e 7369 "kernel" in ansi │ │ │ -001e6f70: 626c 655f 6661 6374 732e 7061 636b 6167 ble_facts.packag │ │ │ -001e6f80: 6573 2061 6e64 2022 626f 6f74 6322 2069 es and "bootc" i │ │ │ -001e6f90: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ -001e6fa0: 7061 636b 6167 6573 0a20 2020 2061 6e64 packages. and │ │ │ -001e6fb0: 206e 6f74 2022 6f70 656e 7368 6966 742d not "openshift- │ │ │ -001e6fc0: 6b75 6265 6c65 7422 2069 6e20 616e 7369 kubelet" in ansi │ │ │ -001e6fd0: 626c 655f 6661 6374 732e 7061 636b 6167 ble_facts.packag │ │ │ -001e6fe0: 6573 2061 6e64 2022 6f73 7472 6565 2220 es and "ostree" │ │ │ -001e6ff0: 696e 2061 6e73 6962 6c65 5f70 726f 635f in ansible_proc_ │ │ │ -001e7000: 636d 646c 696e 650a 2020 2020 2920 616e cmdline. ) an │ │ │ -001e7010: 6420 6e6f 7420 2820 616e 7369 626c 655f d not ( ansible_ │ │ │ -001e7020: 7669 7274 7561 6c69 7a61 7469 6f6e 5f74 virtualization_t │ │ │ -001e7030: 7970 6520 696e 205b 2264 6f63 6b65 7222 ype in ["docker" │ │ │ -001e7040: 2c20 226c 7863 222c 2022 6f70 656e 767a , "lxc", "openvz │ │ │ -001e7050: 222c 2022 706f 646d 616e 222c 0a20 2020 ", "podman",. │ │ │ -001e7060: 2022 636f 6e74 6169 6e65 7222 5d20 2920 "container"] ) │ │ │ -001e7070: 290a 2020 2d20 2722 2f76 6172 2f74 6d70 ). - '"/var/tmp │ │ │ -001e7080: 2220 696e 2061 6e73 6962 6c65 5f6d 6f75 " in ansible_mou │ │ │ -001e7090: 6e74 7320 7c20 6d61 7028 6174 7472 6962 nts | map(attrib │ │ │ -001e70a0: 7574 653d 226d 6f75 6e74 2229 207c 206c ute="mount") | l │ │ │ -001e70b0: 6973 7427 0a20 202d 2064 6576 6963 655f ist'. - device_ │ │ │ -001e70c0: 6e61 6d65 2e73 7464 6f75 7420 6973 2064 name.stdout is d │ │ │ -001e70d0: 6566 696e 6564 2061 6e64 2064 6576 6963 efined and devic │ │ │ -001e70e0: 655f 6e61 6d65 2e73 7464 6f75 745f 6c69 e_name.stdout_li │ │ │ -001e70f0: 6e65 7320 6973 2064 6566 696e 6564 0a20 nes is defined. │ │ │ -001e7100: 202d 2028 6465 7669 6365 5f6e 616d 652e - (device_name. │ │ │ -001e7110: 7374 646f 7574 207c 206c 656e 6774 6820 stdout | length │ │ │ -001e7120: 2667 743b 2030 290a 2020 7461 6773 3a0a > 0). tags:. │ │ │ -001e7130: 2020 2d20 636f 6e66 6967 7572 655f 7374 - configure_st │ │ │ -001e7140: 7261 7465 6779 0a20 202d 2068 6967 685f rategy. - high_ │ │ │ -001e7150: 6469 7372 7570 7469 6f6e 0a20 202d 206c disruption. - l │ │ │ -001e7160: 6f77 5f63 6f6d 706c 6578 6974 790a 2020 ow_complexity. │ │ │ -001e7170: 2d20 6d65 6469 756d 5f73 6576 6572 6974 - medium_severit │ │ │ -001e7180: 790a 2020 2d20 6d6f 756e 745f 6f70 7469 y. - mount_opti │ │ │ -001e7190: 6f6e 5f76 6172 5f74 6d70 5f6e 6f73 7569 on_var_tmp_nosui │ │ │ -001e71a0: 640a 2020 2d20 6e6f 5f72 6562 6f6f 745f d. - no_reboot_ │ │ │ -001e71b0: 6e65 6564 6564 0a0a 2d20 6e61 6d65 3a20 needed..- name: │ │ │ -001e71c0: 2741 6464 206e 6f73 7569 6420 4f70 7469 'Add nosuid Opti │ │ │ -001e71d0: 6f6e 2074 6f20 2f76 6172 2f74 6d70 3a20 on to /var/tmp: │ │ │ -001e71e0: 4966 202f 7661 722f 746d 7020 6e6f 7420 If /var/tmp not │ │ │ -001e71f0: 6d6f 756e 7465 642c 2063 7261 6674 206d mounted, craft m │ │ │ -001e7200: 6f75 6e74 5f69 6e66 6f0a 2020 2020 6d61 ount_info. ma │ │ │ -001e7210: 6e75 616c 6c79 270a 2020 7365 745f 6661 nually'. set_fa │ │ │ -001e7220: 6374 3a0a 2020 2020 6d6f 756e 745f 696e ct:. mount_in │ │ │ -001e7230: 666f 3a20 277b 7b20 6d6f 756e 745f 696e fo: '{{ mount_in │ │ │ -001e7240: 666f 7c64 6566 6175 6c74 287b 7d29 7c63 fo|default({})|c │ │ │ -001e7250: 6f6d 6269 6e65 287b 6974 656d 2e30 3a20 ombine({item.0: │ │ │ -001e7260: 6974 656d 2e31 7d29 207d 7d27 0a20 2077 item.1}) }}'. w │ │ │ -001e7270: 6974 685f 746f 6765 7468 6572 3a0a 2020 ith_together:. │ │ │ -001e7280: 2d20 2d20 7461 7267 6574 0a20 2020 202d - - target. - │ │ │ -001e7290: 2073 6f75 7263 650a 2020 2020 2d20 6673 source. - fs │ │ │ -001e72a0: 7479 7065 0a20 2020 202d 206f 7074 696f type. - optio │ │ │ -001e72b0: 6e73 0a20 202d 202d 202f 7661 722f 746d ns. - - /var/tm │ │ │ -001e72c0: 700a 2020 2020 2d20 2727 0a20 2020 202d p. - ''. - │ │ │ -001e72d0: 2027 270a 2020 2020 2d20 6465 6661 756c ''. - defaul │ │ │ -001e72e0: 7473 0a20 2077 6865 6e3a 0a20 202d 2028 ts. when:. - ( │ │ │ -001e72f0: 206e 6f74 2028 2022 6b65 726e 656c 2220 not ( "kernel" │ │ │ -001e7300: 696e 2061 6e73 6962 6c65 5f66 6163 7473 in ansible_facts │ │ │ -001e7310: 2e70 6163 6b61 6765 7320 616e 6420 2262 .packages and "b │ │ │ -001e7320: 6f6f 7463 2220 696e 2061 6e73 6962 6c65 ootc" in ansible │ │ │ -001e7330: 5f66 6163 7473 2e70 6163 6b61 6765 730a _facts.packages. │ │ │ -001e7340: 2020 2020 616e 6420 6e6f 7420 226f 7065 and not "ope │ │ │ -001e7350: 6e73 6869 6674 2d6b 7562 656c 6574 2220 nshift-kubelet" │ │ │ -001e7360: 696e 2061 6e73 6962 6c65 5f66 6163 7473 in ansible_facts │ │ │ -001e7370: 2e70 6163 6b61 6765 7320 616e 6420 226f .packages and "o │ │ │ -001e7380: 7374 7265 6522 2069 6e20 616e 7369 626c stree" in ansibl │ │ │ -001e7390: 655f 7072 6f63 5f63 6d64 6c69 6e65 0a20 e_proc_cmdline. │ │ │ -001e73a0: 2020 2029 2061 6e64 206e 6f74 2028 2061 ) and not ( a │ │ │ -001e73b0: 6e73 6962 6c65 5f76 6972 7475 616c 697a nsible_virtualiz │ │ │ -001e73c0: 6174 696f 6e5f 7479 7065 2069 6e20 5b22 ation_type in [" │ │ │ -001e73d0: 646f 636b 6572 222c 2022 6c78 6322 2c20 docker", "lxc", │ │ │ -001e73e0: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61 "openvz", "podma │ │ │ -001e73f0: 6e22 2c0a 2020 2020 2263 6f6e 7461 696e n",. "contain │ │ │ -001e7400: 6572 225d 2029 2029 0a20 202d 2027 222f er"] ) ). - '"/ │ │ │ -001e7410: 7661 722f 746d 7022 2069 6e20 616e 7369 var/tmp" in ansi │ │ │ -001e7420: 626c 655f 6d6f 756e 7473 207c 206d 6170 ble_mounts | map │ │ │ -001e7430: 2861 7474 7269 6275 7465 3d22 6d6f 756e (attribute="moun │ │ │ -001e7440: 7422 2920 7c20 6c69 7374 270a 2020 2d20 t") | list'. - │ │ │ -001e7450: 2822 2d2d 6673 7461 6222 207c 206c 656e ("--fstab" | len │ │ │ -001e7460: 6774 6820 3d3d 2030 290a 2020 2d20 6465 gth == 0). - de │ │ │ -001e7470: 7669 6365 5f6e 616d 652e 7374 646f 7574 vice_name.stdout │ │ │ -001e7480: 2069 7320 6465 6669 6e65 6420 616e 6420 is defined and │ │ │ -001e7490: 6465 7669 6365 5f6e 616d 652e 7374 646f device_name.stdo │ │ │ -001e74a0: 7574 5f6c 696e 6573 2069 7320 6465 6669 ut_lines is defi │ │ │ -001e74b0: 6e65 640a 2020 2d20 2864 6576 6963 655f ned. - (device_ │ │ │ -001e74c0: 6e61 6d65 2e73 7464 6f75 7420 7c20 6c65 name.stdout | le │ │ │ -001e74d0: 6e67 7468 203d 3d20 3029 0a20 2074 6167 ngth == 0). tag │ │ │ -001e74e0: 733a 0a20 202d 2063 6f6e 6669 6775 7265 s:. - configure │ │ │ -001e74f0: 5f73 7472 6174 6567 790a 2020 2d20 6869 _strategy. - hi │ │ │ -001e7500: 6768 5f64 6973 7275 7074 696f 6e0a 2020 gh_disruption. │ │ │ -001e7510: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479 - low_complexity │ │ │ -001e7520: 0a20 202d 206d 6564 6975 6d5f 7365 7665 . - medium_seve │ │ │ -001e7530: 7269 7479 0a20 202d 206d 6f75 6e74 5f6f rity. - mount_o │ │ │ -001e7540: 7074 696f 6e5f 7661 725f 746d 705f 6e6f ption_var_tmp_no │ │ │ -001e7550: 7375 6964 0a20 202d 206e 6f5f 7265 626f suid. - no_rebo │ │ │ -001e7560: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d ot_needed..- nam │ │ │ -001e7570: 653a 2027 4164 6420 6e6f 7375 6964 204f e: 'Add nosuid O │ │ │ -001e7580: 7074 696f 6e20 746f 202f 7661 722f 746d ption to /var/tm │ │ │ -001e7590: 703a 204d 616b 6520 7375 7265 206e 6f73 p: Make sure nos │ │ │ -001e75a0: 7569 6420 6f70 7469 6f6e 2069 7320 7061 uid option is pa │ │ │ -001e75b0: 7274 206f 6620 7468 6520 746f 0a20 2020 rt of the to. │ │ │ -001e75c0: 202f 7661 722f 746d 7020 6f70 7469 6f6e /var/tmp option │ │ │ -001e75d0: 7327 0a20 2073 6574 5f66 6163 743a 0a20 s'. set_fact:. │ │ │ -001e75e0: 2020 206d 6f75 6e74 5f69 6e66 6f3a 2027 mount_info: ' │ │ │ -001e75f0: 7b7b 206d 6f75 6e74 5f69 6e66 6f20 7c20 {{ mount_info | │ │ │ -001e7600: 636f 6d62 696e 6528 207b 2727 6f70 7469 combine( {''opti │ │ │ -001e7610: 6f6e 7327 273a 2727 2727 7e28 6d6f 756e ons'':''''~(moun │ │ │ -001e7620: 745f 696e 666f 2e6f 7074 696f 6e73 207c t_info.options | │ │ │ -001e7630: 0a20 2020 2020 2064 6566 6175 6c74 2827 . default(' │ │ │ -001e7640: 2727 2729 297e 2827 272c 2727 2069 6620 '''))~('','' if │ │ │ -001e7650: 286d 6f75 6e74 5f69 6e66 6f2e 6f70 7469 (mount_info.opti │ │ │ -001e7660: 6f6e 7320 7c20 6465 6661 756c 7428 2727 ons | default('' │ │ │ -001e7670: 2727 2929 2065 6c73 6520 2727 2727 297e '')) else '''')~ │ │ │ -001e7680: 2727 6e6f 7375 6964 2727 0a20 2020 2020 ''nosuid''. │ │ │ -001e7690: 207d 2920 7d7d 270a 2020 7768 656e 3a0a }) }}'. when:. │ │ │ -001e76a0: 2020 2d20 2820 6e6f 7420 2820 226b 6572 - ( not ( "ker │ │ │ -001e76b0: 6e65 6c22 2069 6e20 616e 7369 626c 655f nel" in ansible_ │ │ │ -001e76c0: 6661 6374 732e 7061 636b 6167 6573 2061 facts.packages a │ │ │ -001e76d0: 6e64 2022 626f 6f74 6322 2069 6e20 616e nd "bootc" in an │ │ │ -001e76e0: 7369 626c 655f 6661 6374 732e 7061 636b sible_facts.pack │ │ │ -001e76f0: 6167 6573 0a20 2020 2061 6e64 206e 6f74 ages. and not │ │ │ -001e7700: 2022 6f70 656e 7368 6966 742d 6b75 6265 "openshift-kube │ │ │ -001e7710: 6c65 7422 2069 6e20 616e 7369 626c 655f let" in ansible_ │ │ │ -001e7720: 6661 6374 732e 7061 636b 6167 6573 2061 facts.packages a │ │ │ -001e7730: 6e64 2022 6f73 7472 6565 2220 696e 2061 nd "ostree" in a │ │ │ -001e7740: 6e73 6962 6c65 5f70 726f 635f 636d 646c nsible_proc_cmdl │ │ │ -001e7750: 696e 650a 2020 2020 2920 616e 6420 6e6f ine. ) and no │ │ │ -001e7760: 7420 2820 616e 7369 626c 655f 7669 7274 t ( ansible_virt │ │ │ -001e7770: 7561 6c69 7a61 7469 6f6e 5f74 7970 6520 ualization_type │ │ │ -001e7780: 696e 205b 2264 6f63 6b65 7222 2c20 226c in ["docker", "l │ │ │ -001e7790: 7863 222c 2022 6f70 656e 767a 222c 2022 xc", "openvz", " │ │ │ -001e77a0: 706f 646d 616e 222c 0a20 2020 2022 636f podman",. "co │ │ │ -001e77b0: 6e74 6169 6e65 7222 5d20 2920 290a 2020 ntainer"] ) ). │ │ │ -001e77c0: 2d20 2722 2f76 6172 2f74 6d70 2220 696e - '"/var/tmp" in │ │ │ -001e77d0: 2061 6e73 6962 6c65 5f6d 6f75 6e74 7320 ansible_mounts │ │ │ -001e77e0: 7c20 6d61 7028 6174 7472 6962 7574 653d | map(attribute= │ │ │ -001e77f0: 226d 6f75 6e74 2229 207c 206c 6973 7427 "mount") | list' │ │ │ -001e7800: 0a20 202d 206d 6f75 6e74 5f69 6e66 6f20 . - mount_info │ │ │ -001e7810: 6973 2064 6566 696e 6564 2061 6e64 2022 is defined and " │ │ │ -001e7820: 6e6f 7375 6964 2220 6e6f 7420 696e 2028 nosuid" not in ( │ │ │ -001e7830: 6d6f 756e 745f 696e 666f 2e6f 7074 696f mount_info.optio │ │ │ -001e7840: 6e73 207c 2064 6566 6175 6c74 2827 2729 ns | default('') │ │ │ -001e7850: 290a 2020 7461 6773 3a0a 2020 2d20 636f ). tags:. - co │ │ │ -001e7860: 6e66 6967 7572 655f 7374 7261 7465 6779 nfigure_strategy │ │ │ -001e7870: 0a20 202d 2068 6967 685f 6469 7372 7570 . - high_disrup │ │ │ -001e7880: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d tion. - low_com │ │ │ -001e7890: 706c 6578 6974 790a 2020 2d20 6d65 6469 plexity. - medi │ │ │ -001e78a0: 756d 5f73 6576 6572 6974 790a 2020 2d20 um_severity. - │ │ │ -001e78b0: 6d6f 756e 745f 6f70 7469 6f6e 5f76 6172 mount_option_var │ │ │ -001e78c0: 5f74 6d70 5f6e 6f73 7569 640a 2020 2d20 _tmp_nosuid. - │ │ │ -001e78d0: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564 no_reboot_needed │ │ │ -001e78e0: 0a0a 2d20 6e61 6d65 3a20 2741 6464 206e ..- name: 'Add n │ │ │ -001e78f0: 6f73 7569 6420 4f70 7469 6f6e 2074 6f20 osuid Option to │ │ │ -001e7900: 2f76 6172 2f74 6d70 3a20 456e 7375 7265 /var/tmp: Ensure │ │ │ -001e7910: 202f 7661 722f 746d 7020 6973 206d 6f75 /var/tmp is mou │ │ │ -001e7920: 6e74 6564 2077 6974 6820 6e6f 7375 6964 nted with nosuid │ │ │ -001e7930: 206f 7074 696f 6e27 0a20 2061 6e73 6962 option'. ansib │ │ │ -001e7940: 6c65 2e70 6f73 6978 2e6d 6f75 6e74 3a0a le.posix.mount:. │ │ │ -001e7950: 2020 2020 7061 7468 3a20 2f76 6172 2f74 path: /var/t │ │ │ -001e7960: 6d70 0a20 2020 2073 7263 3a20 277b 7b20 mp. src: '{{ │ │ │ -001e7970: 6d6f 756e 745f 696e 666f 2e73 6f75 7263 mount_info.sourc │ │ │ -001e7980: 6520 7c20 6465 6661 756c 7428 2727 2727 e | default('''' │ │ │ -001e7990: 2920 7d7d 270a 2020 2020 6f70 7473 3a20 ) }}'. opts: │ │ │ -001e79a0: 277b 7b20 6d6f 756e 745f 696e 666f 2e6f '{{ mount_info.o │ │ │ -001e79b0: 7074 696f 6e73 207c 2064 6566 6175 6c74 ptions | default │ │ │ -001e79c0: 2827 2727 2729 207d 7d27 0a20 2020 2073 ('''') }}'. s │ │ │ -001e79d0: 7461 7465 3a20 6d6f 756e 7465 640a 2020 tate: mounted. │ │ │ -001e79e0: 2020 6673 7479 7065 3a20 277b 7b20 6d6f fstype: '{{ mo │ │ │ -001e79f0: 756e 745f 696e 666f 2e66 7374 7970 6520 unt_info.fstype │ │ │ -001e7a00: 7c20 6465 6661 756c 7428 2727 2727 2920 | default('''') │ │ │ -001e7a10: 7d7d 270a 2020 7265 6769 7374 6572 3a20 }}'. register: │ │ │ -001e7a20: 6d6f 756e 745f 7265 7375 6c74 0a20 2066 mount_result. f │ │ │ -001e7a30: 6169 6c65 645f 7768 656e 3a0a 2020 2d20 ailed_when:. - │ │ │ -001e7a40: 6d6f 756e 745f 7265 7375 6c74 2069 7320 mount_result is │ │ │ -001e7a50: 6661 696c 6564 0a20 202d 2027 2727 7461 failed. - '''ta │ │ │ -001e7a60: 7267 6574 2069 7320 6275 7379 2727 206e rget is busy'' n │ │ │ -001e7a70: 6f74 2069 6e20 286d 6f75 6e74 5f72 6573 ot in (mount_res │ │ │ -001e7a80: 756c 742e 6d73 6720 7c20 6465 6661 756c ult.msg | defaul │ │ │ -001e7a90: 7428 2727 2727 2929 270a 2020 2d20 2727 t(''''))'. - '' │ │ │ -001e7aa0: 2761 6c72 6561 6479 206d 6f75 6e74 6564 'already mounted │ │ │ -001e7ab0: 2727 206e 6f74 2069 6e20 286d 6f75 6e74 '' not in (mount │ │ │ -001e7ac0: 5f72 6573 756c 742e 6d73 6720 7c20 6465 _result.msg | de │ │ │ -001e7ad0: 6661 756c 7428 2727 2727 2929 270a 2020 fault(''''))'. │ │ │ -001e7ae0: 7768 656e 3a0a 2020 2d20 2820 6e6f 7420 when:. - ( not │ │ │ -001e7af0: 2820 226b 6572 6e65 6c22 2069 6e20 616e ( "kernel" in an │ │ │ -001e7b00: 7369 626c 655f 6661 6374 732e 7061 636b sible_facts.pack │ │ │ -001e7b10: 6167 6573 2061 6e64 2022 626f 6f74 6322 ages and "bootc" │ │ │ -001e7b20: 2069 6e20 616e 7369 626c 655f 6661 6374 in ansible_fact │ │ │ -001e7b30: 732e 7061 636b 6167 6573 0a20 2020 2061 s.packages. a │ │ │ -001e7b40: 6e64 206e 6f74 2022 6f70 656e 7368 6966 nd not "openshif │ │ │ -001e7b50: 742d 6b75 6265 6c65 7422 2069 6e20 616e t-kubelet" in an │ │ │ -001e7b60: 7369 626c 655f 6661 6374 732e 7061 636b sible_facts.pack │ │ │ -001e7b70: 6167 6573 2061 6e64 2022 6f73 7472 6565 ages and "ostree │ │ │ -001e7b80: 2220 696e 2061 6e73 6962 6c65 5f70 726f " in ansible_pro │ │ │ -001e7b90: 635f 636d 646c 696e 650a 2020 2020 2920 c_cmdline. ) │ │ │ -001e7ba0: 616e 6420 6e6f 7420 2820 616e 7369 626c and not ( ansibl │ │ │ -001e7bb0: 655f 7669 7274 7561 6c69 7a61 7469 6f6e e_virtualization │ │ │ -001e7bc0: 5f74 7970 6520 696e 205b 2264 6f63 6b65 _type in ["docke │ │ │ -001e7bd0: 7222 2c20 226c 7863 222c 2022 6f70 656e r", "lxc", "open │ │ │ -001e7be0: 767a 222c 2022 706f 646d 616e 222c 0a20 vz", "podman",. │ │ │ -001e7bf0: 2020 2022 636f 6e74 6169 6e65 7222 5d20 "container"] │ │ │ -001e7c00: 2920 290a 2020 2d20 2722 2f76 6172 2f74 ) ). - '"/var/t │ │ │ -001e7c10: 6d70 2220 696e 2061 6e73 6962 6c65 5f6d mp" in ansible_m │ │ │ -001e7c20: 6f75 6e74 7320 7c20 6d61 7028 6174 7472 ounts | map(attr │ │ │ -001e7c30: 6962 7574 653d 226d 6f75 6e74 2229 207c ibute="mount") | │ │ │ -001e7c40: 206c 6973 7427 0a20 202d 206d 6f75 6e74 list'. - mount │ │ │ -001e7c50: 5f69 6e66 6f20 6973 2064 6566 696e 6564 _info is defined │ │ │ -001e7c60: 0a20 202d 2028 6465 7669 6365 5f6e 616d . - (device_nam │ │ │ -001e7c70: 652e 7374 646f 7574 2069 7320 6465 6669 e.stdout is defi │ │ │ -001e7c80: 6e65 6420 616e 6420 2864 6576 6963 655f ned and (device_ │ │ │ -001e7c90: 6e61 6d65 2e73 7464 6f75 7420 7c20 6c65 name.stdout | le │ │ │ -001e7ca0: 6e67 7468 2026 6774 3b20 3029 2920 6f72 ngth > 0)) or │ │ │ -001e7cb0: 2028 222d 2d66 7374 6162 220a 2020 2020 ("--fstab". │ │ │ -001e7cc0: 7c20 6c65 6e67 7468 203d 3d20 3029 0a20 | length == 0). │ │ │ -001e7cd0: 2074 6167 733a 0a20 202d 2063 6f6e 6669 tags:. - confi │ │ │ -001e7ce0: 6775 7265 5f73 7472 6174 6567 790a 2020 gure_strategy. │ │ │ -001e7cf0: 2d20 6869 6768 5f64 6973 7275 7074 696f - high_disruptio │ │ │ -001e7d00: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65 n. - low_comple │ │ │ -001e7d10: 7869 7479 0a20 202d 206d 6564 6975 6d5f xity. - medium_ │ │ │ -001e7d20: 7365 7665 7269 7479 0a20 202d 206d 6f75 severity. - mou │ │ │ -001e7d30: 6e74 5f6f 7074 696f 6e5f 7661 725f 746d nt_option_var_tm │ │ │ -001e7d40: 705f 6e6f 7375 6964 0a20 202d 206e 6f5f p_nosuid. - no_ │ │ │ -001e7d50: 7265 626f 6f74 5f6e 6565 6465 640a 3c2f reboot_needed.
Re │ │ │ -001e7e10: 6d65 6469 6174 696f 6e20 5368 656c 6c20 mediation Shell │ │ │ -001e7e20: 7363 7269 7074 20e2 87b2 3c2f 613e 3c62 script ...
# 
│ │ │ -001e7ee0: 5265 6d65 6469 6174 696f 6e20 6973 2061  Remediation is a
│ │ │ -001e7ef0: 7070 6c69 6361 626c 6520 6f6e 6c79 2069  pplicable only i
│ │ │ -001e7f00: 6e20 6365 7274 6169 6e20 706c 6174 666f  n certain platfo
│ │ │ -001e7f10: 726d 730a 6966 2028 2021 2028 207b 2072  rms.if ( ! ( { r
│ │ │ -001e7f20: 706d 202d 2d71 7569 6574 202d 7120 6b65  pm --quiet -q ke
│ │ │ -001e7f30: 726e 656c 203b 7d20 2661 6d70 3b26 616d  rnel ;} &&am
│ │ │ -001e7f40: 703b 207b 2072 706d 202d 2d71 7569 6574  p; { rpm --quiet
│ │ │ -001e7f50: 202d 7120 626f 6f74 6320 3b7d 2026 616d   -q bootc ;} &am
│ │ │ -001e7f60: 703b 2661 6d70 3b20 7b20 2120 7270 6d20  p;& { ! rpm 
│ │ │ -001e7f70: 2d2d 7175 6965 7420 2d71 206f 7065 6e73  --quiet -q opens
│ │ │ -001e7f80: 6869 6674 2d6b 7562 656c 6574 203b 7d20  hift-kubelet ;} 
│ │ │ -001e7f90: 2661 6d70 3b26 616d 703b 2028 5b20 2d66  && ([ -f
│ │ │ -001e7fa0: 202f 7275 6e2f 6f73 7472 6565 2d62 6f6f   /run/ostree-boo
│ │ │ -001e7fb0: 7465 6420 5d20 7c7c 205b 202d 4c20 2f6f  ted ] || [ -L /o
│ │ │ -001e7fc0: 7374 7265 6520 5d29 2029 2026 616d 703b  stree ]) ) &
│ │ │ -001e7fd0: 2661 6d70 3b20 2120 2820 5b20 2d66 202f  & ! ( [ -f /
│ │ │ -001e7fe0: 2e64 6f63 6b65 7265 6e76 205d 207c 7c20  .dockerenv ] || 
│ │ │ -001e7ff0: 5b20 2d66 202f 7275 6e2f 2e63 6f6e 7461  [ -f /run/.conta
│ │ │ -001e8000: 696e 6572 656e 7620 5d20 2920 2920 2661  inerenv ] ) ) &a
│ │ │ -001e8010: 6d70 3b26 616d 703b 207b 2028 2066 696e  mp;& { ( fin
│ │ │ -001e8020: 646d 6e74 202d 2d6b 6572 6e65 6c20 222f  dmnt --kernel "/
│ │ │ -001e8030: 7661 722f 746d 7022 2026 6774 3b20 2f64  var/tmp" > /d
│ │ │ -001e8040: 6576 2f6e 756c 6c20 7c7c 2066 696e 646d  ev/null || findm
│ │ │ -001e8050: 6e74 202d 2d66 7374 6162 2022 2f76 6172  nt --fstab "/var
│ │ │ -001e8060: 2f74 6d70 2220 2667 743b 202f 6465 762f  /tmp" > /dev/
│ │ │ -001e8070: 6e75 6c6c 2029 3b20 7d3b 2074 6865 6e0a  null ); }; then.
│ │ │ -001e8080: 0a66 756e 6374 696f 6e20 7065 7266 6f72  .function perfor
│ │ │ -001e8090: 6d5f 7265 6d65 6469 6174 696f 6e20 7b0a  m_remediation {.
│ │ │ -001e80a0: 0a20 2020 200a 2020 2020 2020 2020 2320  .    .        # 
│ │ │ -001e80b0: 7468 6520 6d6f 756e 7420 706f 696e 7420  the mount point 
│ │ │ -001e80c0: 2f76 6172 2f74 6d70 2068 6173 2074 6f20  /var/tmp has to 
│ │ │ -001e80d0: 6265 2064 6566 696e 6564 2069 6e20 2f65  be defined in /e
│ │ │ -001e80e0: 7463 2f66 7374 6162 0a20 2020 2020 2020  tc/fstab.       
│ │ │ -001e80f0: 2023 2062 6566 6f72 6520 7468 6973 2072   # before this r
│ │ │ -001e8100: 656d 6564 6961 7469 6f6e 2063 616e 2062  emediation can b
│ │ │ -001e8110: 6520 6578 6563 7574 6564 2e20 496e 2063  e executed. In c
│ │ │ -001e8120: 6173 6520 6974 2069 7320 6e6f 7420 6465  ase it is not de
│ │ │ -001e8130: 6669 6e65 642c 2074 6865 0a20 2020 2020  fined, the.     
│ │ │ -001e8140: 2020 2023 2072 656d 6564 6961 7469 6f6e     # remediation
│ │ │ -001e8150: 2061 626f 7274 7320 616e 6420 6e6f 2063   aborts and no c
│ │ │ -001e8160: 6861 6e67 6573 2072 6567 6172 6469 6e67  hanges regarding
│ │ │ -001e8170: 2074 6865 206d 6f75 6e74 2070 6f69 6e74   the mount point
│ │ │ -001e8180: 2061 7265 2064 6f6e 652e 0a20 2020 2020   are done..     
│ │ │ -001e8190: 2020 206d 6f75 6e74 5f70 6f69 6e74 5f6d     mount_point_m
│ │ │ -001e81a0: 6174 6368 5f72 6567 6578 703d 2224 2870  atch_regexp="$(p
│ │ │ -001e81b0: 7269 6e74 6620 225e 5b5b 3a73 7061 6365  rintf "^[[:space
│ │ │ -001e81c0: 3a5d 5d2a 5b5e 235d 2e2a 5b5b 3a73 7061  :]]*[^#].*[[:spa
│ │ │ -001e81d0: 6365 3a5d 5d25 735b 5b3a 7370 6163 653a  ce:]]%s[[:space:
│ │ │ -001e81e0: 5d5d 2220 222f 7661 722f 746d 7022 2922  ]]" "/var/tmp")"
│ │ │ -001e81f0: 0a0a 2020 2020 6772 6570 2022 246d 6f75  ..    grep "$mou
│ │ │ -001e8200: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ -001e8210: 6567 6578 7022 202d 7120 2f65 7463 2f66  egexp" -q /etc/f
│ │ │ -001e8220: 7374 6162 205c 0a20 2020 2020 2020 207c  stab \.        |
│ │ │ -001e8230: 7c20 7b20 6563 686f 2022 5468 6520 6d6f  | { echo "The mo
│ │ │ -001e8240: 756e 7420 706f 696e 7420 272f 7661 722f  unt point '/var/
│ │ │ -001e8250: 746d 7027 2069 7320 6e6f 7420 6576 656e  tmp' is not even
│ │ │ -001e8260: 2069 6e20 2f65 7463 2f66 7374 6162 2c20   in /etc/fstab, 
│ │ │ -001e8270: 736f 2077 6520 6361 6e27 7420 7365 7420  so we can't set 
│ │ │ -001e8280: 7570 206d 6f75 6e74 206f 7074 696f 6e73  up mount options
│ │ │ -001e8290: 2220 2667 743b 2661 6d70 3b32 3b0a 2020  " >&2;.  
│ │ │ -001e82a0: 2020 2020 2020 2020 2020 2020 2020 6563                ec
│ │ │ -001e82b0: 686f 2022 4e6f 7420 7265 6d65 6469 6174  ho "Not remediat
│ │ │ -001e82c0: 696e 672c 2062 6563 6175 7365 2074 6865  ing, because the
│ │ │ -001e82d0: 7265 2069 7320 6e6f 2072 6563 6f72 6420  re is no record 
│ │ │ -001e82e0: 6f66 202f 7661 722f 746d 7020 696e 202f  of /var/tmp in /
│ │ │ -001e82f0: 6574 632f 6673 7461 6222 2026 6774 3b26  etc/fstab" >&
│ │ │ -001e8300: 616d 703b 323b 2072 6574 7572 6e20 313b  amp;2; return 1;
│ │ │ -001e8310: 207d 0a20 2020 200a 0a0a 2020 2020 6d6f   }.    ...    mo
│ │ │ -001e8320: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ -001e8330: 7265 6765 7870 3d22 2428 7072 696e 7466  regexp="$(printf
│ │ │ -001e8340: 2022 5e5b 5b3a 7370 6163 653a 5d5d 2a5b   "^[[:space:]]*[
│ │ │ -001e8350: 5e23 5d2e 2a5b 5b3a 7370 6163 653a 5d5d  ^#].*[[:space:]]
│ │ │ -001e8360: 2573 5b5b 3a73 7061 6365 3a5d 5d22 202f  %s[[:space:]]" /
│ │ │ -001e8370: 7661 722f 746d 7029 220a 0a20 2020 2023  var/tmp)"..    #
│ │ │ -001e8380: 2049 6620 7468 6520 6d6f 756e 7420 706f   If the mount po
│ │ │ -001e8390: 696e 7420 6973 206e 6f74 2069 6e20 2f65  int is not in /e
│ │ │ -001e83a0: 7463 2f66 7374 6162 2c20 6765 7420 7072  tc/fstab, get pr
│ │ │ -001e83b0: 6576 696f 7573 206d 6f75 6e74 206f 7074  evious mount opt
│ │ │ -001e83c0: 696f 6e73 2066 726f 6d20 2f65 7463 2f6d  ions from /etc/m
│ │ │ -001e83d0: 7461 620a 2020 2020 6966 2021 2067 7265  tab.    if ! gre
│ │ │ -001e83e0: 7020 2d71 2022 246d 6f75 6e74 5f70 6f69  p -q "$mount_poi
│ │ │ -001e83f0: 6e74 5f6d 6174 6368 5f72 6567 6578 7022  nt_match_regexp"
│ │ │ -001e8400: 202f 6574 632f 6673 7461 623b 2074 6865   /etc/fstab; the
│ │ │ -001e8410: 6e0a 2020 2020 2020 2020 2320 7275 6e74  n.        # runt
│ │ │ -001e8420: 696d 6520 6f70 7473 2077 6974 686f 7574  ime opts without
│ │ │ -001e8430: 2073 6f6d 6520 6175 746f 6d61 7469 6320   some automatic 
│ │ │ -001e8440: 6b65 726e 656c 2f75 7365 7273 7061 6365  kernel/userspace
│ │ │ -001e8450: 2d61 6464 6564 2064 6566 6175 6c74 730a  -added defaults.
│ │ │ -001e8460: 2020 2020 2020 2020 7072 6576 696f 7573          previous
│ │ │ -001e8470: 5f6d 6f75 6e74 5f6f 7074 733d 2428 6772  _mount_opts=$(gr
│ │ │ -001e8480: 6570 2022 246d 6f75 6e74 5f70 6f69 6e74  ep "$mount_point
│ │ │ -001e8490: 5f6d 6174 6368 5f72 6567 6578 7022 202f  _match_regexp" /
│ │ │ -001e84a0: 6574 632f 6d74 6162 207c 2068 6561 6420  etc/mtab | head 
│ │ │ -001e84b0: 2d31 207c 2020 6177 6b20 277b 7072 696e  -1 |  awk '{prin
│ │ │ -001e84c0: 7420 2434 7d27 205c 0a20 2020 2020 2020  t $4}' \.       
│ │ │ -001e84d0: 2020 2020 2020 2020 2020 2020 207c 2073               | s
│ │ │ -001e84e0: 6564 202d 4520 2273 2f28 7277 7c64 6566  ed -E "s/(rw|def
│ │ │ -001e84f0: 6175 6c74 737c 7365 636c 6162 656c 7c6e  aults|seclabel|n
│ │ │ -001e8500: 6f73 7569 6429 282c 7c24 292f 2f67 3b73  osuid)(,|$)//g;s
│ │ │ -001e8510: 2f2c 242f 2f22 290a 2020 2020 2020 2020  /,$//").        
│ │ │ -001e8520: 5b20 2224 7072 6576 696f 7573 5f6d 6f75  [ "$previous_mou
│ │ │ -001e8530: 6e74 5f6f 7074 7322 205d 2026 616d 703b  nt_opts" ] &
│ │ │ -001e8540: 2661 6d70 3b20 7072 6576 696f 7573 5f6d  & previous_m
│ │ │ -001e8550: 6f75 6e74 5f6f 7074 732b 3d22 2c22 0a20  ount_opts+=",". 
│ │ │ -001e8560: 2020 2020 2020 2023 2049 6e20 6973 6f39         # In iso9
│ │ │ -001e8570: 3636 3020 6669 6c65 7379 7374 656d 7320  660 filesystems 
│ │ │ -001e8580: 6d74 6162 2063 6f75 6c64 2064 6573 6372  mtab could descr
│ │ │ -001e8590: 6962 6520 6120 2262 6c6f 636b 7369 7a65  ibe a "blocksize
│ │ │ -001e85a0: 2220 7661 6c75 652c 2074 6869 7320 7368  " value, this sh
│ │ │ -001e85b0: 6f75 6c64 2062 6520 7265 666c 6563 7465  ould be reflecte
│ │ │ -001e85c0: 6420 696e 0a20 2020 2020 2020 2023 2066  d in.        # f
│ │ │ -001e85d0: 7374 6162 2061 7320 2262 6c6f 636b 222e  stab as "block".
│ │ │ -001e85e0: 2020 5468 6520 6e65 7874 2076 6172 6961    The next varia
│ │ │ -001e85f0: 626c 6520 6973 2074 6f20 7361 7469 7366  ble is to satisf
│ │ │ -001e8600: 7920 7368 656c 6c63 6865 636b 2053 4332  y shellcheck SC2
│ │ │ -001e8610: 3035 302e 0a20 2020 2020 2020 2066 735f  050..        fs_
│ │ │ -001e8620: 7479 7065 3d22 220a 2020 2020 2020 2020  type="".        
│ │ │ -001e8630: 6966 205b 2020 2224 6673 5f74 7970 6522  if [  "$fs_type"
│ │ │ -001e8640: 203d 3d20 2269 736f 3936 3630 2220 5d20   == "iso9660" ] 
│ │ │ -001e8650: 3b20 7468 656e 0a20 2020 2020 2020 2020  ; then.         
│ │ │ -001e8660: 2020 2070 7265 7669 6f75 735f 6d6f 756e     previous_moun
│ │ │ -001e8670: 745f 6f70 7473 3d24 2873 6564 2027 732f  t_opts=$(sed 's/
│ │ │ -001e8680: 626c 6f63 6b73 697a 653d 2f62 6c6f 636b  blocksize=/block
│ │ │ -001e8690: 3d2f 2720 266c 743b 266c 743b 266c 743b  =/' <<<
│ │ │ -001e86a0: 2022 2470 7265 7669 6f75 735f 6d6f 756e   "$previous_moun
│ │ │ -001e86b0: 745f 6f70 7473 2229 0a20 2020 2020 2020  t_opts").       
│ │ │ -001e86c0: 2066 690a 2020 2020 2020 2020 6563 686f   fi.        echo
│ │ │ -001e86d0: 2022 202f 7661 722f 746d 7020 2064 6566   " /var/tmp  def
│ │ │ -001e86e0: 6175 6c74 732c 247b 7072 6576 696f 7573  aults,${previous
│ │ │ -001e86f0: 5f6d 6f75 6e74 5f6f 7074 737d 6e6f 7375  _mount_opts}nosu
│ │ │ -001e8700: 6964 2030 2030 2220 2667 743b 2667 743b  id 0 0" >>
│ │ │ -001e8710: 202f 6574 632f 6673 7461 620a 2020 2020   /etc/fstab.    
│ │ │ -001e8720: 2320 4966 2074 6865 206d 6f75 6e74 5f6f  # If the mount_o
│ │ │ -001e8730: 7074 206f 7074 696f 6e20 6973 206e 6f74  pt option is not
│ │ │ -001e8740: 2061 6c72 6561 6479 2069 6e20 7468 6520   already in the 
│ │ │ -001e8750: 6d6f 756e 7420 706f 696e 7427 7320 2f65  mount point's /e
│ │ │ -001e8760: 7463 2f66 7374 6162 2065 6e74 7279 2c20  tc/fstab entry, 
│ │ │ -001e8770: 6164 6420 6974 0a20 2020 2065 6c69 6620  add it.    elif 
│ │ │ -001e8780: 2120 6772 6570 2022 246d 6f75 6e74 5f70  ! grep "$mount_p
│ │ │ -001e8790: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ -001e87a0: 7022 202f 6574 632f 6673 7461 6220 7c20  p" /etc/fstab | 
│ │ │ -001e87b0: 6772 6570 202d 7120 226e 6f73 7569 6422  grep -q "nosuid"
│ │ │ -001e87c0: 3b20 7468 656e 0a20 2020 2020 2020 2070  ; then.        p
│ │ │ -001e87d0: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ -001e87e0: 7473 3d24 2867 7265 7020 2224 6d6f 756e  ts=$(grep "$moun
│ │ │ -001e87f0: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ -001e8800: 6765 7870 2220 2f65 7463 2f66 7374 6162  gexp" /etc/fstab
│ │ │ -001e8810: 207c 2061 776b 2027 7b70 7269 6e74 2024   | awk '{print $
│ │ │ -001e8820: 347d 2729 0a20 2020 2020 2020 2073 6564  4}').        sed
│ │ │ -001e8830: 202d 6920 2273 7c5c 2824 7b6d 6f75 6e74   -i "s|\(${mount
│ │ │ -001e8840: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ -001e8850: 6578 707d 2e2a 247b 7072 6576 696f 7573  exp}.*${previous
│ │ │ -001e8860: 5f6d 6f75 6e74 5f6f 7074 737d 5c29 7c5c  _mount_opts}\)|\
│ │ │ -001e8870: 312c 6e6f 7375 6964 7c22 202f 6574 632f  1,nosuid|" /etc/
│ │ │ -001e8880: 6673 7461 620a 2020 2020 6669 0a0a 0a20  fstab.    fi... 
│ │ │ -001e8890: 2020 2069 6620 6d6b 6469 7220 2d70 2022     if mkdir -p "
│ │ │ -001e88a0: 2f76 6172 2f74 6d70 223b 2074 6865 6e0a  /var/tmp"; then.
│ │ │ -001e88b0: 2020 2020 2020 2020 6966 206d 6f75 6e74          if mount
│ │ │ -001e88c0: 706f 696e 7420 2d71 2022 2f76 6172 2f74  point -q "/var/t
│ │ │ -001e88d0: 6d70 223b 2074 6865 6e0a 2020 2020 2020  mp"; then.      
│ │ │ -001e88e0: 2020 2020 2020 6d6f 756e 7420 2d6f 2072        mount -o r
│ │ │ -001e88f0: 656d 6f75 6e74 202d 2d74 6172 6765 7420  emount --target 
│ │ │ -001e8900: 222f 7661 722f 746d 7022 0a20 2020 2020  "/var/tmp".     
│ │ │ -001e8910: 2020 2066 690a 2020 2020 6669 0a7d 0a0a     fi.    fi.}..
│ │ │ -001e8920: 7065 7266 6f72 6d5f 7265 6d65 6469 6174  perform_remediat
│ │ │ -001e8930: 696f 6e0a 0a65 6c73 650a 2020 2020 2667  ion..else.    &g
│ │ │ -001e8940: 743b 2661 6d70 3b32 2065 6368 6f20 2752  t;&2 echo 'R
│ │ │ -001e8950: 656d 6564 6961 7469 6f6e 2069 7320 6e6f  emediation is no
│ │ │ -001e8960: 7420 6170 706c 6963 6162 6c65 2c20 6e6f  t applicable, no
│ │ │ -001e8970: 7468 696e 6720 7761 7320 646f 6e65 270a  thing was done'.
│ │ │ -001e8980: 6669 0a3c 2f63 6f64 653e 3c2f 7072 653e  fi.
│ │ │ +001e66e0: 656d 6564 6961 7469 6f6e 2041 6e73 6962 emediation Ansib │ │ │ +001e66f0: 6c65 2073 6e69 7070 6574 20e2 87b2 3c2f le snippet ...
Rebo │ │ │ -001e7eb0: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ -001e7ec0: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
│ │ │ +001e6790: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 < │ │ │ +001e67d0: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +001e67e0: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false< │ │ │ +001e6820: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
- name: Gather
│ │ │ +001e6840: 2074 6865 2070 6163 6b61 6765 2066 6163   the package fac
│ │ │ +001e6850: 7473 0a20 2070 6163 6b61 6765 5f66 6163  ts.  package_fac
│ │ │ +001e6860: 7473 3a0a 2020 2020 6d61 6e61 6765 723a  ts:.    manager:
│ │ │ +001e6870: 2061 7574 6f0a 2020 7461 6773 3a0a 2020   auto.  tags:.  
│ │ │ +001e6880: 2d20 636f 6e66 6967 7572 655f 7374 7261  - configure_stra
│ │ │ +001e6890: 7465 6779 0a20 202d 2068 6967 685f 6469  tegy.  - high_di
│ │ │ +001e68a0: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ +001e68b0: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +001e68c0: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ +001e68d0: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e    - mount_option
│ │ │ +001e68e0: 5f76 6172 5f74 6d70 5f6e 6f73 7569 640a  _var_tmp_nosuid.
│ │ │ +001e68f0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ +001e6900: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741  eded..- name: 'A
│ │ │ +001e6910: 6464 206e 6f73 7569 6420 4f70 7469 6f6e  dd nosuid Option
│ │ │ +001e6920: 2074 6f20 2f76 6172 2f74 6d70 3a20 4368   to /var/tmp: Ch
│ │ │ +001e6930: 6563 6b20 696e 666f 726d 6174 696f 6e20  eck information 
│ │ │ +001e6940: 6173 736f 6369 6174 6564 2074 6f20 6d6f  associated to mo
│ │ │ +001e6950: 756e 7470 6f69 6e74 270a 2020 616e 7369  untpoint'.  ansi
│ │ │ +001e6960: 626c 652e 6275 696c 7469 6e2e 636f 6d6d  ble.builtin.comm
│ │ │ +001e6970: 616e 643a 2066 696e 646d 6e74 202d 2d66  and: findmnt --f
│ │ │ +001e6980: 7374 6162 2027 2f76 6172 2f74 6d70 270a  stab '/var/tmp'.
│ │ │ +001e6990: 2020 7265 6769 7374 6572 3a20 6465 7669    register: devi
│ │ │ +001e69a0: 6365 5f6e 616d 650a 2020 6661 696c 6564  ce_name.  failed
│ │ │ +001e69b0: 5f77 6865 6e3a 2064 6576 6963 655f 6e61  _when: device_na
│ │ │ +001e69c0: 6d65 2e72 6320 2667 743b 2031 0a20 2063  me.rc > 1.  c
│ │ │ +001e69d0: 6861 6e67 6564 5f77 6865 6e3a 2066 616c  hanged_when: fal
│ │ │ +001e69e0: 7365 0a20 2063 6865 636b 5f6d 6f64 653a  se.  check_mode:
│ │ │ +001e69f0: 2066 616c 7365 0a20 2077 6865 6e3a 0a20   false.  when:. 
│ │ │ +001e6a00: 202d 2028 206e 6f74 2028 2022 6b65 726e   - ( not ( "kern
│ │ │ +001e6a10: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ +001e6a20: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +001e6a30: 6420 2262 6f6f 7463 2220 696e 2061 6e73  d "bootc" in ans
│ │ │ +001e6a40: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001e6a50: 6765 730a 2020 2020 616e 6420 6e6f 7420  ges.    and not 
│ │ │ +001e6a60: 226f 7065 6e73 6869 6674 2d6b 7562 656c  "openshift-kubel
│ │ │ +001e6a70: 6574 2220 696e 2061 6e73 6962 6c65 5f66  et" in ansible_f
│ │ │ +001e6a80: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +001e6a90: 6420 226f 7374 7265 6522 2069 6e20 616e  d "ostree" in an
│ │ │ +001e6aa0: 7369 626c 655f 7072 6f63 5f63 6d64 6c69  sible_proc_cmdli
│ │ │ +001e6ab0: 6e65 0a20 2020 2029 2061 6e64 206e 6f74  ne.    ) and not
│ │ │ +001e6ac0: 2028 2061 6e73 6962 6c65 5f76 6972 7475   ( ansible_virtu
│ │ │ +001e6ad0: 616c 697a 6174 696f 6e5f 7479 7065 2069  alization_type i
│ │ │ +001e6ae0: 6e20 5b22 646f 636b 6572 222c 2022 6c78  n ["docker", "lx
│ │ │ +001e6af0: 6322 2c20 226f 7065 6e76 7a22 2c20 2270  c", "openvz", "p
│ │ │ +001e6b00: 6f64 6d61 6e22 2c0a 2020 2020 2263 6f6e  odman",.    "con
│ │ │ +001e6b10: 7461 696e 6572 225d 2029 2029 0a20 202d  tainer"] ) ).  -
│ │ │ +001e6b20: 2027 222f 7661 722f 746d 7022 2069 6e20   '"/var/tmp" in 
│ │ │ +001e6b30: 616e 7369 626c 655f 6d6f 756e 7473 207c  ansible_mounts |
│ │ │ +001e6b40: 206d 6170 2861 7474 7269 6275 7465 3d22   map(attribute="
│ │ │ +001e6b50: 6d6f 756e 7422 2920 7c20 6c69 7374 270a  mount") | list'.
│ │ │ +001e6b60: 2020 7461 6773 3a0a 2020 2d20 636f 6e66    tags:.  - conf
│ │ │ +001e6b70: 6967 7572 655f 7374 7261 7465 6779 0a20  igure_strategy. 
│ │ │ +001e6b80: 202d 2068 6967 685f 6469 7372 7570 7469   - high_disrupti
│ │ │ +001e6b90: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c  on.  - low_compl
│ │ │ +001e6ba0: 6578 6974 790a 2020 2d20 6d65 6469 756d  exity.  - medium
│ │ │ +001e6bb0: 5f73 6576 6572 6974 790a 2020 2d20 6d6f  _severity.  - mo
│ │ │ +001e6bc0: 756e 745f 6f70 7469 6f6e 5f76 6172 5f74  unt_option_var_t
│ │ │ +001e6bd0: 6d70 5f6e 6f73 7569 640a 2020 2d20 6e6f  mp_nosuid.  - no
│ │ │ +001e6be0: 5f72 6562 6f6f 745f 6e65 6564 6564 0a0a  _reboot_needed..
│ │ │ +001e6bf0: 2d20 6e61 6d65 3a20 2741 6464 206e 6f73  - name: 'Add nos
│ │ │ +001e6c00: 7569 6420 4f70 7469 6f6e 2074 6f20 2f76  uid Option to /v
│ │ │ +001e6c10: 6172 2f74 6d70 3a20 4372 6561 7465 206d  ar/tmp: Create m
│ │ │ +001e6c20: 6f75 6e74 5f69 6e66 6f20 6469 6374 696f  ount_info dictio
│ │ │ +001e6c30: 6e61 7279 2076 6172 6961 626c 6527 0a20  nary variable'. 
│ │ │ +001e6c40: 2073 6574 5f66 6163 743a 0a20 2020 206d   set_fact:.    m
│ │ │ +001e6c50: 6f75 6e74 5f69 6e66 6f3a 2027 7b7b 206d  ount_info: '{{ m
│ │ │ +001e6c60: 6f75 6e74 5f69 6e66 6f7c 6465 6661 756c  ount_info|defaul
│ │ │ +001e6c70: 7428 7b7d 297c 636f 6d62 696e 6528 7b69  t({})|combine({i
│ │ │ +001e6c80: 7465 6d2e 303a 2069 7465 6d2e 317d 2920  tem.0: item.1}) 
│ │ │ +001e6c90: 7d7d 270a 2020 7769 7468 5f74 6f67 6574  }}'.  with_toget
│ │ │ +001e6ca0: 6865 723a 0a20 202d 2027 7b7b 2064 6576  her:.  - '{{ dev
│ │ │ +001e6cb0: 6963 655f 6e61 6d65 2e73 7464 6f75 745f  ice_name.stdout_
│ │ │ +001e6cc0: 6c69 6e65 735b 305d 2e73 706c 6974 2829  lines[0].split()
│ │ │ +001e6cd0: 207c 206d 6170 2827 276c 6f77 6572 2727   | map(''lower''
│ │ │ +001e6ce0: 2920 7c20 6c69 7374 207d 7d27 0a20 202d  ) | list }}'.  -
│ │ │ +001e6cf0: 2027 7b7b 2064 6576 6963 655f 6e61 6d65   '{{ device_name
│ │ │ +001e6d00: 2e73 7464 6f75 745f 6c69 6e65 735b 315d  .stdout_lines[1]
│ │ │ +001e6d10: 2e73 706c 6974 2829 207c 206c 6973 7420  .split() | list 
│ │ │ +001e6d20: 7d7d 270a 2020 7768 656e 3a0a 2020 2d20  }}'.  when:.  - 
│ │ │ +001e6d30: 2820 6e6f 7420 2820 226b 6572 6e65 6c22  ( not ( "kernel"
│ │ │ +001e6d40: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001e6d50: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ +001e6d60: 626f 6f74 6322 2069 6e20 616e 7369 626c  bootc" in ansibl
│ │ │ +001e6d70: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +001e6d80: 0a20 2020 2061 6e64 206e 6f74 2022 6f70  .    and not "op
│ │ │ +001e6d90: 656e 7368 6966 742d 6b75 6265 6c65 7422  enshift-kubelet"
│ │ │ +001e6da0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001e6db0: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ +001e6dc0: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ +001e6dd0: 6c65 5f70 726f 635f 636d 646c 696e 650a  le_proc_cmdline.
│ │ │ +001e6de0: 2020 2020 2920 616e 6420 6e6f 7420 2820      ) and not ( 
│ │ │ +001e6df0: 616e 7369 626c 655f 7669 7274 7561 6c69  ansible_virtuali
│ │ │ +001e6e00: 7a61 7469 6f6e 5f74 7970 6520 696e 205b  zation_type in [
│ │ │ +001e6e10: 2264 6f63 6b65 7222 2c20 226c 7863 222c  "docker", "lxc",
│ │ │ +001e6e20: 2022 6f70 656e 767a 222c 2022 706f 646d   "openvz", "podm
│ │ │ +001e6e30: 616e 222c 0a20 2020 2022 636f 6e74 6169  an",.    "contai
│ │ │ +001e6e40: 6e65 7222 5d20 2920 290a 2020 2d20 2722  ner"] ) ).  - '"
│ │ │ +001e6e50: 2f76 6172 2f74 6d70 2220 696e 2061 6e73  /var/tmp" in ans
│ │ │ +001e6e60: 6962 6c65 5f6d 6f75 6e74 7320 7c20 6d61  ible_mounts | ma
│ │ │ +001e6e70: 7028 6174 7472 6962 7574 653d 226d 6f75  p(attribute="mou
│ │ │ +001e6e80: 6e74 2229 207c 206c 6973 7427 0a20 202d  nt") | list'.  -
│ │ │ +001e6e90: 2064 6576 6963 655f 6e61 6d65 2e73 7464   device_name.std
│ │ │ +001e6ea0: 6f75 7420 6973 2064 6566 696e 6564 2061  out is defined a
│ │ │ +001e6eb0: 6e64 2064 6576 6963 655f 6e61 6d65 2e73  nd device_name.s
│ │ │ +001e6ec0: 7464 6f75 745f 6c69 6e65 7320 6973 2064  tdout_lines is d
│ │ │ +001e6ed0: 6566 696e 6564 0a20 202d 2028 6465 7669  efined.  - (devi
│ │ │ +001e6ee0: 6365 5f6e 616d 652e 7374 646f 7574 207c  ce_name.stdout |
│ │ │ +001e6ef0: 206c 656e 6774 6820 2667 743b 2030 290a   length > 0).
│ │ │ +001e6f00: 2020 7461 6773 3a0a 2020 2d20 636f 6e66    tags:.  - conf
│ │ │ +001e6f10: 6967 7572 655f 7374 7261 7465 6779 0a20  igure_strategy. 
│ │ │ +001e6f20: 202d 2068 6967 685f 6469 7372 7570 7469   - high_disrupti
│ │ │ +001e6f30: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c  on.  - low_compl
│ │ │ +001e6f40: 6578 6974 790a 2020 2d20 6d65 6469 756d  exity.  - medium
│ │ │ +001e6f50: 5f73 6576 6572 6974 790a 2020 2d20 6d6f  _severity.  - mo
│ │ │ +001e6f60: 756e 745f 6f70 7469 6f6e 5f76 6172 5f74  unt_option_var_t
│ │ │ +001e6f70: 6d70 5f6e 6f73 7569 640a 2020 2d20 6e6f  mp_nosuid.  - no
│ │ │ +001e6f80: 5f72 6562 6f6f 745f 6e65 6564 6564 0a0a  _reboot_needed..
│ │ │ +001e6f90: 2d20 6e61 6d65 3a20 2741 6464 206e 6f73  - name: 'Add nos
│ │ │ +001e6fa0: 7569 6420 4f70 7469 6f6e 2074 6f20 2f76  uid Option to /v
│ │ │ +001e6fb0: 6172 2f74 6d70 3a20 4966 202f 7661 722f  ar/tmp: If /var/
│ │ │ +001e6fc0: 746d 7020 6e6f 7420 6d6f 756e 7465 642c  tmp not mounted,
│ │ │ +001e6fd0: 2063 7261 6674 206d 6f75 6e74 5f69 6e66   craft mount_inf
│ │ │ +001e6fe0: 6f0a 2020 2020 6d61 6e75 616c 6c79 270a  o.    manually'.
│ │ │ +001e6ff0: 2020 7365 745f 6661 6374 3a0a 2020 2020    set_fact:.    
│ │ │ +001e7000: 6d6f 756e 745f 696e 666f 3a20 277b 7b20  mount_info: '{{ 
│ │ │ +001e7010: 6d6f 756e 745f 696e 666f 7c64 6566 6175  mount_info|defau
│ │ │ +001e7020: 6c74 287b 7d29 7c63 6f6d 6269 6e65 287b  lt({})|combine({
│ │ │ +001e7030: 6974 656d 2e30 3a20 6974 656d 2e31 7d29  item.0: item.1})
│ │ │ +001e7040: 207d 7d27 0a20 2077 6974 685f 746f 6765   }}'.  with_toge
│ │ │ +001e7050: 7468 6572 3a0a 2020 2d20 2d20 7461 7267  ther:.  - - targ
│ │ │ +001e7060: 6574 0a20 2020 202d 2073 6f75 7263 650a  et.    - source.
│ │ │ +001e7070: 2020 2020 2d20 6673 7479 7065 0a20 2020      - fstype.   
│ │ │ +001e7080: 202d 206f 7074 696f 6e73 0a20 202d 202d   - options.  - -
│ │ │ +001e7090: 202f 7661 722f 746d 700a 2020 2020 2d20   /var/tmp.    - 
│ │ │ +001e70a0: 2727 0a20 2020 202d 2027 270a 2020 2020  ''.    - ''.    
│ │ │ +001e70b0: 2d20 6465 6661 756c 7473 0a20 2077 6865  - defaults.  whe
│ │ │ +001e70c0: 6e3a 0a20 202d 2028 206e 6f74 2028 2022  n:.  - ( not ( "
│ │ │ +001e70d0: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ +001e70e0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001e70f0: 7320 616e 6420 2262 6f6f 7463 2220 696e  s and "bootc" in
│ │ │ +001e7100: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001e7110: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ +001e7120: 6e6f 7420 226f 7065 6e73 6869 6674 2d6b  not "openshift-k
│ │ │ +001e7130: 7562 656c 6574 2220 696e 2061 6e73 6962  ubelet" in ansib
│ │ │ +001e7140: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001e7150: 7320 616e 6420 226f 7374 7265 6522 2069  s and "ostree" i
│ │ │ +001e7160: 6e20 616e 7369 626c 655f 7072 6f63 5f63  n ansible_proc_c
│ │ │ +001e7170: 6d64 6c69 6e65 0a20 2020 2029 2061 6e64  mdline.    ) and
│ │ │ +001e7180: 206e 6f74 2028 2061 6e73 6962 6c65 5f76   not ( ansible_v
│ │ │ +001e7190: 6972 7475 616c 697a 6174 696f 6e5f 7479  irtualization_ty
│ │ │ +001e71a0: 7065 2069 6e20 5b22 646f 636b 6572 222c  pe in ["docker",
│ │ │ +001e71b0: 2022 6c78 6322 2c20 226f 7065 6e76 7a22   "lxc", "openvz"
│ │ │ +001e71c0: 2c20 2270 6f64 6d61 6e22 2c0a 2020 2020  , "podman",.    
│ │ │ +001e71d0: 2263 6f6e 7461 696e 6572 225d 2029 2029  "container"] ) )
│ │ │ +001e71e0: 0a20 202d 2027 222f 7661 722f 746d 7022  .  - '"/var/tmp"
│ │ │ +001e71f0: 2069 6e20 616e 7369 626c 655f 6d6f 756e   in ansible_moun
│ │ │ +001e7200: 7473 207c 206d 6170 2861 7474 7269 6275  ts | map(attribu
│ │ │ +001e7210: 7465 3d22 6d6f 756e 7422 2920 7c20 6c69  te="mount") | li
│ │ │ +001e7220: 7374 270a 2020 2d20 2822 2d2d 6673 7461  st'.  - ("--fsta
│ │ │ +001e7230: 6222 207c 206c 656e 6774 6820 3d3d 2030  b" | length == 0
│ │ │ +001e7240: 290a 2020 2d20 6465 7669 6365 5f6e 616d  ).  - device_nam
│ │ │ +001e7250: 652e 7374 646f 7574 2069 7320 6465 6669  e.stdout is defi
│ │ │ +001e7260: 6e65 6420 616e 6420 6465 7669 6365 5f6e  ned and device_n
│ │ │ +001e7270: 616d 652e 7374 646f 7574 5f6c 696e 6573  ame.stdout_lines
│ │ │ +001e7280: 2069 7320 6465 6669 6e65 640a 2020 2d20   is defined.  - 
│ │ │ +001e7290: 2864 6576 6963 655f 6e61 6d65 2e73 7464  (device_name.std
│ │ │ +001e72a0: 6f75 7420 7c20 6c65 6e67 7468 203d 3d20  out | length == 
│ │ │ +001e72b0: 3029 0a20 2074 6167 733a 0a20 202d 2063  0).  tags:.  - c
│ │ │ +001e72c0: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ +001e72d0: 790a 2020 2d20 6869 6768 5f64 6973 7275  y.  - high_disru
│ │ │ +001e72e0: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f  ption.  - low_co
│ │ │ +001e72f0: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ +001e7300: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ +001e7310: 206d 6f75 6e74 5f6f 7074 696f 6e5f 7661   mount_option_va
│ │ │ +001e7320: 725f 746d 705f 6e6f 7375 6964 0a20 202d  r_tmp_nosuid.  -
│ │ │ +001e7330: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ +001e7340: 640a 0a2d 206e 616d 653a 2027 4164 6420  d..- name: 'Add 
│ │ │ +001e7350: 6e6f 7375 6964 204f 7074 696f 6e20 746f  nosuid Option to
│ │ │ +001e7360: 202f 7661 722f 746d 703a 204d 616b 6520   /var/tmp: Make 
│ │ │ +001e7370: 7375 7265 206e 6f73 7569 6420 6f70 7469  sure nosuid opti
│ │ │ +001e7380: 6f6e 2069 7320 7061 7274 206f 6620 7468  on is part of th
│ │ │ +001e7390: 6520 746f 0a20 2020 202f 7661 722f 746d  e to.    /var/tm
│ │ │ +001e73a0: 7020 6f70 7469 6f6e 7327 0a20 2073 6574  p options'.  set
│ │ │ +001e73b0: 5f66 6163 743a 0a20 2020 206d 6f75 6e74  _fact:.    mount
│ │ │ +001e73c0: 5f69 6e66 6f3a 2027 7b7b 206d 6f75 6e74  _info: '{{ mount
│ │ │ +001e73d0: 5f69 6e66 6f20 7c20 636f 6d62 696e 6528  _info | combine(
│ │ │ +001e73e0: 207b 2727 6f70 7469 6f6e 7327 273a 2727   {''options'':''
│ │ │ +001e73f0: 2727 7e28 6d6f 756e 745f 696e 666f 2e6f  ''~(mount_info.o
│ │ │ +001e7400: 7074 696f 6e73 207c 0a20 2020 2020 2064  ptions |.      d
│ │ │ +001e7410: 6566 6175 6c74 2827 2727 2729 297e 2827  efault(''''))~('
│ │ │ +001e7420: 272c 2727 2069 6620 286d 6f75 6e74 5f69  ','' if (mount_i
│ │ │ +001e7430: 6e66 6f2e 6f70 7469 6f6e 7320 7c20 6465  nfo.options | de
│ │ │ +001e7440: 6661 756c 7428 2727 2727 2929 2065 6c73  fault('''')) els
│ │ │ +001e7450: 6520 2727 2727 297e 2727 6e6f 7375 6964  e '''')~''nosuid
│ │ │ +001e7460: 2727 0a20 2020 2020 207d 2920 7d7d 270a  ''.      }) }}'.
│ │ │ +001e7470: 2020 7768 656e 3a0a 2020 2d20 2820 6e6f    when:.  - ( no
│ │ │ +001e7480: 7420 2820 226b 6572 6e65 6c22 2069 6e20  t ( "kernel" in 
│ │ │ +001e7490: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001e74a0: 636b 6167 6573 2061 6e64 2022 626f 6f74  ckages and "boot
│ │ │ +001e74b0: 6322 2069 6e20 616e 7369 626c 655f 6661  c" in ansible_fa
│ │ │ +001e74c0: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ +001e74d0: 2061 6e64 206e 6f74 2022 6f70 656e 7368   and not "opensh
│ │ │ +001e74e0: 6966 742d 6b75 6265 6c65 7422 2069 6e20  ift-kubelet" in 
│ │ │ +001e74f0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001e7500: 636b 6167 6573 2061 6e64 2022 6f73 7472  ckages and "ostr
│ │ │ +001e7510: 6565 2220 696e 2061 6e73 6962 6c65 5f70  ee" in ansible_p
│ │ │ +001e7520: 726f 635f 636d 646c 696e 650a 2020 2020  roc_cmdline.    
│ │ │ +001e7530: 2920 616e 6420 6e6f 7420 2820 616e 7369  ) and not ( ansi
│ │ │ +001e7540: 626c 655f 7669 7274 7561 6c69 7a61 7469  ble_virtualizati
│ │ │ +001e7550: 6f6e 5f74 7970 6520 696e 205b 2264 6f63  on_type in ["doc
│ │ │ +001e7560: 6b65 7222 2c20 226c 7863 222c 2022 6f70  ker", "lxc", "op
│ │ │ +001e7570: 656e 767a 222c 2022 706f 646d 616e 222c  envz", "podman",
│ │ │ +001e7580: 0a20 2020 2022 636f 6e74 6169 6e65 7222  .    "container"
│ │ │ +001e7590: 5d20 2920 290a 2020 2d20 2722 2f76 6172  ] ) ).  - '"/var
│ │ │ +001e75a0: 2f74 6d70 2220 696e 2061 6e73 6962 6c65  /tmp" in ansible
│ │ │ +001e75b0: 5f6d 6f75 6e74 7320 7c20 6d61 7028 6174  _mounts | map(at
│ │ │ +001e75c0: 7472 6962 7574 653d 226d 6f75 6e74 2229  tribute="mount")
│ │ │ +001e75d0: 207c 206c 6973 7427 0a20 202d 206d 6f75   | list'.  - mou
│ │ │ +001e75e0: 6e74 5f69 6e66 6f20 6973 2064 6566 696e  nt_info is defin
│ │ │ +001e75f0: 6564 2061 6e64 2022 6e6f 7375 6964 2220  ed and "nosuid" 
│ │ │ +001e7600: 6e6f 7420 696e 2028 6d6f 756e 745f 696e  not in (mount_in
│ │ │ +001e7610: 666f 2e6f 7074 696f 6e73 207c 2064 6566  fo.options | def
│ │ │ +001e7620: 6175 6c74 2827 2729 290a 2020 7461 6773  ault('')).  tags
│ │ │ +001e7630: 3a0a 2020 2d20 636f 6e66 6967 7572 655f  :.  - configure_
│ │ │ +001e7640: 7374 7261 7465 6779 0a20 202d 2068 6967  strategy.  - hig
│ │ │ +001e7650: 685f 6469 7372 7570 7469 6f6e 0a20 202d  h_disruption.  -
│ │ │ +001e7660: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ +001e7670: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ +001e7680: 6974 790a 2020 2d20 6d6f 756e 745f 6f70  ity.  - mount_op
│ │ │ +001e7690: 7469 6f6e 5f76 6172 5f74 6d70 5f6e 6f73  tion_var_tmp_nos
│ │ │ +001e76a0: 7569 640a 2020 2d20 6e6f 5f72 6562 6f6f  uid.  - no_reboo
│ │ │ +001e76b0: 745f 6e65 6564 6564 0a0a 2d20 6e61 6d65  t_needed..- name
│ │ │ +001e76c0: 3a20 2741 6464 206e 6f73 7569 6420 4f70  : 'Add nosuid Op
│ │ │ +001e76d0: 7469 6f6e 2074 6f20 2f76 6172 2f74 6d70  tion to /var/tmp
│ │ │ +001e76e0: 3a20 456e 7375 7265 202f 7661 722f 746d  : Ensure /var/tm
│ │ │ +001e76f0: 7020 6973 206d 6f75 6e74 6564 2077 6974  p is mounted wit
│ │ │ +001e7700: 6820 6e6f 7375 6964 206f 7074 696f 6e27  h nosuid option'
│ │ │ +001e7710: 0a20 2061 6e73 6962 6c65 2e70 6f73 6978  .  ansible.posix
│ │ │ +001e7720: 2e6d 6f75 6e74 3a0a 2020 2020 7061 7468  .mount:.    path
│ │ │ +001e7730: 3a20 2f76 6172 2f74 6d70 0a20 2020 2073  : /var/tmp.    s
│ │ │ +001e7740: 7263 3a20 277b 7b20 6d6f 756e 745f 696e  rc: '{{ mount_in
│ │ │ +001e7750: 666f 2e73 6f75 7263 6520 7c20 6465 6661  fo.source | defa
│ │ │ +001e7760: 756c 7428 2727 2727 2920 7d7d 270a 2020  ult('''') }}'.  
│ │ │ +001e7770: 2020 6f70 7473 3a20 277b 7b20 6d6f 756e    opts: '{{ moun
│ │ │ +001e7780: 745f 696e 666f 2e6f 7074 696f 6e73 207c  t_info.options |
│ │ │ +001e7790: 2064 6566 6175 6c74 2827 2727 2729 207d   default('''') }
│ │ │ +001e77a0: 7d27 0a20 2020 2073 7461 7465 3a20 6d6f  }'.    state: mo
│ │ │ +001e77b0: 756e 7465 640a 2020 2020 6673 7479 7065  unted.    fstype
│ │ │ +001e77c0: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ +001e77d0: 2e66 7374 7970 6520 7c20 6465 6661 756c  .fstype | defaul
│ │ │ +001e77e0: 7428 2727 2727 2920 7d7d 270a 2020 7265  t('''') }}'.  re
│ │ │ +001e77f0: 6769 7374 6572 3a20 6d6f 756e 745f 7265  gister: mount_re
│ │ │ +001e7800: 7375 6c74 0a20 2066 6169 6c65 645f 7768  sult.  failed_wh
│ │ │ +001e7810: 656e 3a0a 2020 2d20 6d6f 756e 745f 7265  en:.  - mount_re
│ │ │ +001e7820: 7375 6c74 2069 7320 6661 696c 6564 0a20  sult is failed. 
│ │ │ +001e7830: 202d 2027 2727 7461 7267 6574 2069 7320   - '''target is 
│ │ │ +001e7840: 6275 7379 2727 206e 6f74 2069 6e20 286d  busy'' not in (m
│ │ │ +001e7850: 6f75 6e74 5f72 6573 756c 742e 6d73 6720  ount_result.msg 
│ │ │ +001e7860: 7c20 6465 6661 756c 7428 2727 2727 2929  | default(''''))
│ │ │ +001e7870: 270a 2020 2d20 2727 2761 6c72 6561 6479  '.  - '''already
│ │ │ +001e7880: 206d 6f75 6e74 6564 2727 206e 6f74 2069   mounted'' not i
│ │ │ +001e7890: 6e20 286d 6f75 6e74 5f72 6573 756c 742e  n (mount_result.
│ │ │ +001e78a0: 6d73 6720 7c20 6465 6661 756c 7428 2727  msg | default(''
│ │ │ +001e78b0: 2727 2929 270a 2020 7768 656e 3a0a 2020  ''))'.  when:.  
│ │ │ +001e78c0: 2d20 2820 6e6f 7420 2820 226b 6572 6e65  - ( not ( "kerne
│ │ │ +001e78d0: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ +001e78e0: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ +001e78f0: 2022 626f 6f74 6322 2069 6e20 616e 7369   "bootc" in ansi
│ │ │ +001e7900: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001e7910: 6573 0a20 2020 2061 6e64 206e 6f74 2022  es.    and not "
│ │ │ +001e7920: 6f70 656e 7368 6966 742d 6b75 6265 6c65  openshift-kubele
│ │ │ +001e7930: 7422 2069 6e20 616e 7369 626c 655f 6661  t" in ansible_fa
│ │ │ +001e7940: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ +001e7950: 2022 6f73 7472 6565 2220 696e 2061 6e73   "ostree" in ans
│ │ │ +001e7960: 6962 6c65 5f70 726f 635f 636d 646c 696e  ible_proc_cmdlin
│ │ │ +001e7970: 650a 2020 2020 2920 616e 6420 6e6f 7420  e.    ) and not 
│ │ │ +001e7980: 2820 616e 7369 626c 655f 7669 7274 7561  ( ansible_virtua
│ │ │ +001e7990: 6c69 7a61 7469 6f6e 5f74 7970 6520 696e  lization_type in
│ │ │ +001e79a0: 205b 2264 6f63 6b65 7222 2c20 226c 7863   ["docker", "lxc
│ │ │ +001e79b0: 222c 2022 6f70 656e 767a 222c 2022 706f  ", "openvz", "po
│ │ │ +001e79c0: 646d 616e 222c 0a20 2020 2022 636f 6e74  dman",.    "cont
│ │ │ +001e79d0: 6169 6e65 7222 5d20 2920 290a 2020 2d20  ainer"] ) ).  - 
│ │ │ +001e79e0: 2722 2f76 6172 2f74 6d70 2220 696e 2061  '"/var/tmp" in a
│ │ │ +001e79f0: 6e73 6962 6c65 5f6d 6f75 6e74 7320 7c20  nsible_mounts | 
│ │ │ +001e7a00: 6d61 7028 6174 7472 6962 7574 653d 226d  map(attribute="m
│ │ │ +001e7a10: 6f75 6e74 2229 207c 206c 6973 7427 0a20  ount") | list'. 
│ │ │ +001e7a20: 202d 206d 6f75 6e74 5f69 6e66 6f20 6973   - mount_info is
│ │ │ +001e7a30: 2064 6566 696e 6564 0a20 202d 2028 6465   defined.  - (de
│ │ │ +001e7a40: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ +001e7a50: 2069 7320 6465 6669 6e65 6420 616e 6420   is defined and 
│ │ │ +001e7a60: 2864 6576 6963 655f 6e61 6d65 2e73 7464  (device_name.std
│ │ │ +001e7a70: 6f75 7420 7c20 6c65 6e67 7468 2026 6774  out | length >
│ │ │ +001e7a80: 3b20 3029 2920 6f72 2028 222d 2d66 7374  ; 0)) or ("--fst
│ │ │ +001e7a90: 6162 220a 2020 2020 7c20 6c65 6e67 7468  ab".    | length
│ │ │ +001e7aa0: 203d 3d20 3029 0a20 2074 6167 733a 0a20   == 0).  tags:. 
│ │ │ +001e7ab0: 202d 2063 6f6e 6669 6775 7265 5f73 7472   - configure_str
│ │ │ +001e7ac0: 6174 6567 790a 2020 2d20 6869 6768 5f64  ategy.  - high_d
│ │ │ +001e7ad0: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ +001e7ae0: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ +001e7af0: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ +001e7b00: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f  .  - mount_optio
│ │ │ +001e7b10: 6e5f 7661 725f 746d 705f 6e6f 7375 6964  n_var_tmp_nosuid
│ │ │ +001e7b20: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ +001e7b30: 6565 6465 640a 3c2f 636f 6465 3e3c 2f70  eeded.

Remediatio │ │ │ +001e7bf0: 6e20 5368 656c 6c20 7363 7269 7074 20e2 n Shell script . │ │ │ +001e7c00: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ +001e6780: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +001e67b0: 696f 6e3a 3c2f 7468 3e3c 7464 3e68 6967 ion:hig │ │ │ +001e67c0: 683c 2f74 643e 3c2f 7472 3e3c 7472 3e3c h
Strate │ │ │ +001e6800: 6779 3a3c 2f74 683e 3c74 643e 636f 6e66 gy:conf │ │ │ +001e6810: 6967 7572 653c 2f74 643e 3c2f 7472 3e3c igure
│ │ │ +001e7c80: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +001e7c90: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
Reboot:false
│ │ │ +001e7cb0: 3c63 6f64 653e 2320 5265 6d65 6469 6174  # Remediat
│ │ │ +001e7cc0: 696f 6e20 6973 2061 7070 6c69 6361 626c  ion is applicabl
│ │ │ +001e7cd0: 6520 6f6e 6c79 2069 6e20 6365 7274 6169  e only in certai
│ │ │ +001e7ce0: 6e20 706c 6174 666f 726d 730a 6966 2028  n platforms.if (
│ │ │ +001e7cf0: 2021 2028 207b 2072 706d 202d 2d71 7569   ! ( { rpm --qui
│ │ │ +001e7d00: 6574 202d 7120 6b65 726e 656c 203b 7d20  et -q kernel ;} 
│ │ │ +001e7d10: 2661 6d70 3b26 616d 703b 207b 2072 706d  && { rpm
│ │ │ +001e7d20: 202d 2d71 7569 6574 202d 7120 626f 6f74   --quiet -q boot
│ │ │ +001e7d30: 6320 3b7d 2026 616d 703b 2661 6d70 3b20  c ;} && 
│ │ │ +001e7d40: 7b20 2120 7270 6d20 2d2d 7175 6965 7420  { ! rpm --quiet 
│ │ │ +001e7d50: 2d71 206f 7065 6e73 6869 6674 2d6b 7562  -q openshift-kub
│ │ │ +001e7d60: 656c 6574 203b 7d20 2661 6d70 3b26 616d  elet ;} &&am
│ │ │ +001e7d70: 703b 2028 5b20 2d66 202f 7275 6e2f 6f73  p; ([ -f /run/os
│ │ │ +001e7d80: 7472 6565 2d62 6f6f 7465 6420 5d20 7c7c  tree-booted ] ||
│ │ │ +001e7d90: 205b 202d 4c20 2f6f 7374 7265 6520 5d29   [ -L /ostree ])
│ │ │ +001e7da0: 2029 2026 616d 703b 2661 6d70 3b20 2120   ) && ! 
│ │ │ +001e7db0: 2820 5b20 2d66 202f 2e64 6f63 6b65 7265  ( [ -f /.dockere
│ │ │ +001e7dc0: 6e76 205d 207c 7c20 5b20 2d66 202f 7275  nv ] || [ -f /ru
│ │ │ +001e7dd0: 6e2f 2e63 6f6e 7461 696e 6572 656e 7620  n/.containerenv 
│ │ │ +001e7de0: 5d20 2920 2920 2661 6d70 3b26 616d 703b  ] ) ) &&
│ │ │ +001e7df0: 207b 2028 2066 696e 646d 6e74 202d 2d6b   { ( findmnt --k
│ │ │ +001e7e00: 6572 6e65 6c20 222f 7661 722f 746d 7022  ernel "/var/tmp"
│ │ │ +001e7e10: 2026 6774 3b20 2f64 6576 2f6e 756c 6c20   > /dev/null 
│ │ │ +001e7e20: 7c7c 2066 696e 646d 6e74 202d 2d66 7374  || findmnt --fst
│ │ │ +001e7e30: 6162 2022 2f76 6172 2f74 6d70 2220 2667  ab "/var/tmp" &g
│ │ │ +001e7e40: 743b 202f 6465 762f 6e75 6c6c 2029 3b20  t; /dev/null ); 
│ │ │ +001e7e50: 7d3b 2074 6865 6e0a 0a66 756e 6374 696f  }; then..functio
│ │ │ +001e7e60: 6e20 7065 7266 6f72 6d5f 7265 6d65 6469  n perform_remedi
│ │ │ +001e7e70: 6174 696f 6e20 7b0a 0a20 2020 200a 2020  ation {..    .  
│ │ │ +001e7e80: 2020 2020 2020 2320 7468 6520 6d6f 756e        # the moun
│ │ │ +001e7e90: 7420 706f 696e 7420 2f76 6172 2f74 6d70  t point /var/tmp
│ │ │ +001e7ea0: 2068 6173 2074 6f20 6265 2064 6566 696e   has to be defin
│ │ │ +001e7eb0: 6564 2069 6e20 2f65 7463 2f66 7374 6162  ed in /etc/fstab
│ │ │ +001e7ec0: 0a20 2020 2020 2020 2023 2062 6566 6f72  .        # befor
│ │ │ +001e7ed0: 6520 7468 6973 2072 656d 6564 6961 7469  e this remediati
│ │ │ +001e7ee0: 6f6e 2063 616e 2062 6520 6578 6563 7574  on can be execut
│ │ │ +001e7ef0: 6564 2e20 496e 2063 6173 6520 6974 2069  ed. In case it i
│ │ │ +001e7f00: 7320 6e6f 7420 6465 6669 6e65 642c 2074  s not defined, t
│ │ │ +001e7f10: 6865 0a20 2020 2020 2020 2023 2072 656d  he.        # rem
│ │ │ +001e7f20: 6564 6961 7469 6f6e 2061 626f 7274 7320  ediation aborts 
│ │ │ +001e7f30: 616e 6420 6e6f 2063 6861 6e67 6573 2072  and no changes r
│ │ │ +001e7f40: 6567 6172 6469 6e67 2074 6865 206d 6f75  egarding the mou
│ │ │ +001e7f50: 6e74 2070 6f69 6e74 2061 7265 2064 6f6e  nt point are don
│ │ │ +001e7f60: 652e 0a20 2020 2020 2020 206d 6f75 6e74  e..        mount
│ │ │ +001e7f70: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ +001e7f80: 6578 703d 2224 2870 7269 6e74 6620 225e  exp="$(printf "^
│ │ │ +001e7f90: 5b5b 3a73 7061 6365 3a5d 5d2a 5b5e 235d  [[:space:]]*[^#]
│ │ │ +001e7fa0: 2e2a 5b5b 3a73 7061 6365 3a5d 5d25 735b  .*[[:space:]]%s[
│ │ │ +001e7fb0: 5b3a 7370 6163 653a 5d5d 2220 222f 7661  [:space:]]" "/va
│ │ │ +001e7fc0: 722f 746d 7022 2922 0a0a 2020 2020 6772  r/tmp")"..    gr
│ │ │ +001e7fd0: 6570 2022 246d 6f75 6e74 5f70 6f69 6e74  ep "$mount_point
│ │ │ +001e7fe0: 5f6d 6174 6368 5f72 6567 6578 7022 202d  _match_regexp" -
│ │ │ +001e7ff0: 7120 2f65 7463 2f66 7374 6162 205c 0a20  q /etc/fstab \. 
│ │ │ +001e8000: 2020 2020 2020 207c 7c20 7b20 6563 686f         || { echo
│ │ │ +001e8010: 2022 5468 6520 6d6f 756e 7420 706f 696e   "The mount poin
│ │ │ +001e8020: 7420 272f 7661 722f 746d 7027 2069 7320  t '/var/tmp' is 
│ │ │ +001e8030: 6e6f 7420 6576 656e 2069 6e20 2f65 7463  not even in /etc
│ │ │ +001e8040: 2f66 7374 6162 2c20 736f 2077 6520 6361  /fstab, so we ca
│ │ │ +001e8050: 6e27 7420 7365 7420 7570 206d 6f75 6e74  n't set up mount
│ │ │ +001e8060: 206f 7074 696f 6e73 2220 2667 743b 2661   options" >&a
│ │ │ +001e8070: 6d70 3b32 3b0a 2020 2020 2020 2020 2020  mp;2;.          
│ │ │ +001e8080: 2020 2020 2020 6563 686f 2022 4e6f 7420        echo "Not 
│ │ │ +001e8090: 7265 6d65 6469 6174 696e 672c 2062 6563  remediating, bec
│ │ │ +001e80a0: 6175 7365 2074 6865 7265 2069 7320 6e6f  ause there is no
│ │ │ +001e80b0: 2072 6563 6f72 6420 6f66 202f 7661 722f   record of /var/
│ │ │ +001e80c0: 746d 7020 696e 202f 6574 632f 6673 7461  tmp in /etc/fsta
│ │ │ +001e80d0: 6222 2026 6774 3b26 616d 703b 323b 2072  b" >&2; r
│ │ │ +001e80e0: 6574 7572 6e20 313b 207d 0a20 2020 200a  eturn 1; }.    .
│ │ │ +001e80f0: 0a0a 2020 2020 6d6f 756e 745f 706f 696e  ..    mount_poin
│ │ │ +001e8100: 745f 6d61 7463 685f 7265 6765 7870 3d22  t_match_regexp="
│ │ │ +001e8110: 2428 7072 696e 7466 2022 5e5b 5b3a 7370  $(printf "^[[:sp
│ │ │ +001e8120: 6163 653a 5d5d 2a5b 5e23 5d2e 2a5b 5b3a  ace:]]*[^#].*[[:
│ │ │ +001e8130: 7370 6163 653a 5d5d 2573 5b5b 3a73 7061  space:]]%s[[:spa
│ │ │ +001e8140: 6365 3a5d 5d22 202f 7661 722f 746d 7029  ce:]]" /var/tmp)
│ │ │ +001e8150: 220a 0a20 2020 2023 2049 6620 7468 6520  "..    # If the 
│ │ │ +001e8160: 6d6f 756e 7420 706f 696e 7420 6973 206e  mount point is n
│ │ │ +001e8170: 6f74 2069 6e20 2f65 7463 2f66 7374 6162  ot in /etc/fstab
│ │ │ +001e8180: 2c20 6765 7420 7072 6576 696f 7573 206d  , get previous m
│ │ │ +001e8190: 6f75 6e74 206f 7074 696f 6e73 2066 726f  ount options fro
│ │ │ +001e81a0: 6d20 2f65 7463 2f6d 7461 620a 2020 2020  m /etc/mtab.    
│ │ │ +001e81b0: 6966 2021 2067 7265 7020 2d71 2022 246d  if ! grep -q "$m
│ │ │ +001e81c0: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ +001e81d0: 5f72 6567 6578 7022 202f 6574 632f 6673  _regexp" /etc/fs
│ │ │ +001e81e0: 7461 623b 2074 6865 6e0a 2020 2020 2020  tab; then.      
│ │ │ +001e81f0: 2020 2320 7275 6e74 696d 6520 6f70 7473    # runtime opts
│ │ │ +001e8200: 2077 6974 686f 7574 2073 6f6d 6520 6175   without some au
│ │ │ +001e8210: 746f 6d61 7469 6320 6b65 726e 656c 2f75  tomatic kernel/u
│ │ │ +001e8220: 7365 7273 7061 6365 2d61 6464 6564 2064  serspace-added d
│ │ │ +001e8230: 6566 6175 6c74 730a 2020 2020 2020 2020  efaults.        
│ │ │ +001e8240: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ +001e8250: 7074 733d 2428 6772 6570 2022 246d 6f75  pts=$(grep "$mou
│ │ │ +001e8260: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ +001e8270: 6567 6578 7022 202f 6574 632f 6d74 6162  egexp" /etc/mtab
│ │ │ +001e8280: 207c 2068 6561 6420 2d31 207c 2020 6177   | head -1 |  aw
│ │ │ +001e8290: 6b20 277b 7072 696e 7420 2434 7d27 205c  k '{print $4}' \
│ │ │ +001e82a0: 0a20 2020 2020 2020 2020 2020 2020 2020  .               
│ │ │ +001e82b0: 2020 2020 207c 2073 6564 202d 4520 2273       | sed -E "s
│ │ │ +001e82c0: 2f28 7277 7c64 6566 6175 6c74 737c 7365  /(rw|defaults|se
│ │ │ +001e82d0: 636c 6162 656c 7c6e 6f73 7569 6429 282c  clabel|nosuid)(,
│ │ │ +001e82e0: 7c24 292f 2f67 3b73 2f2c 242f 2f22 290a  |$)//g;s/,$//").
│ │ │ +001e82f0: 2020 2020 2020 2020 5b20 2224 7072 6576          [ "$prev
│ │ │ +001e8300: 696f 7573 5f6d 6f75 6e74 5f6f 7074 7322  ious_mount_opts"
│ │ │ +001e8310: 205d 2026 616d 703b 2661 6d70 3b20 7072   ] && pr
│ │ │ +001e8320: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ +001e8330: 732b 3d22 2c22 0a20 2020 2020 2020 2023  s+=",".        #
│ │ │ +001e8340: 2049 6e20 6973 6f39 3636 3020 6669 6c65   In iso9660 file
│ │ │ +001e8350: 7379 7374 656d 7320 6d74 6162 2063 6f75  systems mtab cou
│ │ │ +001e8360: 6c64 2064 6573 6372 6962 6520 6120 2262  ld describe a "b
│ │ │ +001e8370: 6c6f 636b 7369 7a65 2220 7661 6c75 652c  locksize" value,
│ │ │ +001e8380: 2074 6869 7320 7368 6f75 6c64 2062 6520   this should be 
│ │ │ +001e8390: 7265 666c 6563 7465 6420 696e 0a20 2020  reflected in.   
│ │ │ +001e83a0: 2020 2020 2023 2066 7374 6162 2061 7320       # fstab as 
│ │ │ +001e83b0: 2262 6c6f 636b 222e 2020 5468 6520 6e65  "block".  The ne
│ │ │ +001e83c0: 7874 2076 6172 6961 626c 6520 6973 2074  xt variable is t
│ │ │ +001e83d0: 6f20 7361 7469 7366 7920 7368 656c 6c63  o satisfy shellc
│ │ │ +001e83e0: 6865 636b 2053 4332 3035 302e 0a20 2020  heck SC2050..   
│ │ │ +001e83f0: 2020 2020 2066 735f 7479 7065 3d22 220a       fs_type="".
│ │ │ +001e8400: 2020 2020 2020 2020 6966 205b 2020 2224          if [  "$
│ │ │ +001e8410: 6673 5f74 7970 6522 203d 3d20 2269 736f  fs_type" == "iso
│ │ │ +001e8420: 3936 3630 2220 5d20 3b20 7468 656e 0a20  9660" ] ; then. 
│ │ │ +001e8430: 2020 2020 2020 2020 2020 2070 7265 7669             previ
│ │ │ +001e8440: 6f75 735f 6d6f 756e 745f 6f70 7473 3d24  ous_mount_opts=$
│ │ │ +001e8450: 2873 6564 2027 732f 626c 6f63 6b73 697a  (sed 's/blocksiz
│ │ │ +001e8460: 653d 2f62 6c6f 636b 3d2f 2720 266c 743b  e=/block=/' <
│ │ │ +001e8470: 266c 743b 266c 743b 2022 2470 7265 7669  << "$previ
│ │ │ +001e8480: 6f75 735f 6d6f 756e 745f 6f70 7473 2229  ous_mount_opts")
│ │ │ +001e8490: 0a20 2020 2020 2020 2066 690a 2020 2020  .        fi.    
│ │ │ +001e84a0: 2020 2020 6563 686f 2022 202f 7661 722f      echo " /var/
│ │ │ +001e84b0: 746d 7020 2064 6566 6175 6c74 732c 247b  tmp  defaults,${
│ │ │ +001e84c0: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ +001e84d0: 7074 737d 6e6f 7375 6964 2030 2030 2220  pts}nosuid 0 0" 
│ │ │ +001e84e0: 2667 743b 2667 743b 202f 6574 632f 6673  >> /etc/fs
│ │ │ +001e84f0: 7461 620a 2020 2020 2320 4966 2074 6865  tab.    # If the
│ │ │ +001e8500: 206d 6f75 6e74 5f6f 7074 206f 7074 696f   mount_opt optio
│ │ │ +001e8510: 6e20 6973 206e 6f74 2061 6c72 6561 6479  n is not already
│ │ │ +001e8520: 2069 6e20 7468 6520 6d6f 756e 7420 706f   in the mount po
│ │ │ +001e8530: 696e 7427 7320 2f65 7463 2f66 7374 6162  int's /etc/fstab
│ │ │ +001e8540: 2065 6e74 7279 2c20 6164 6420 6974 0a20   entry, add it. 
│ │ │ +001e8550: 2020 2065 6c69 6620 2120 6772 6570 2022     elif ! grep "
│ │ │ +001e8560: 246d 6f75 6e74 5f70 6f69 6e74 5f6d 6174  $mount_point_mat
│ │ │ +001e8570: 6368 5f72 6567 6578 7022 202f 6574 632f  ch_regexp" /etc/
│ │ │ +001e8580: 6673 7461 6220 7c20 6772 6570 202d 7120  fstab | grep -q 
│ │ │ +001e8590: 226e 6f73 7569 6422 3b20 7468 656e 0a20  "nosuid"; then. 
│ │ │ +001e85a0: 2020 2020 2020 2070 7265 7669 6f75 735f         previous_
│ │ │ +001e85b0: 6d6f 756e 745f 6f70 7473 3d24 2867 7265  mount_opts=$(gre
│ │ │ +001e85c0: 7020 2224 6d6f 756e 745f 706f 696e 745f  p "$mount_point_
│ │ │ +001e85d0: 6d61 7463 685f 7265 6765 7870 2220 2f65  match_regexp" /e
│ │ │ +001e85e0: 7463 2f66 7374 6162 207c 2061 776b 2027  tc/fstab | awk '
│ │ │ +001e85f0: 7b70 7269 6e74 2024 347d 2729 0a20 2020  {print $4}').   
│ │ │ +001e8600: 2020 2020 2073 6564 202d 6920 2273 7c5c       sed -i "s|\
│ │ │ +001e8610: 2824 7b6d 6f75 6e74 5f70 6f69 6e74 5f6d  (${mount_point_m
│ │ │ +001e8620: 6174 6368 5f72 6567 6578 707d 2e2a 247b  atch_regexp}.*${
│ │ │ +001e8630: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ +001e8640: 7074 737d 5c29 7c5c 312c 6e6f 7375 6964  pts}\)|\1,nosuid
│ │ │ +001e8650: 7c22 202f 6574 632f 6673 7461 620a 2020  |" /etc/fstab.  
│ │ │ +001e8660: 2020 6669 0a0a 0a20 2020 2069 6620 6d6b    fi...    if mk
│ │ │ +001e8670: 6469 7220 2d70 2022 2f76 6172 2f74 6d70  dir -p "/var/tmp
│ │ │ +001e8680: 223b 2074 6865 6e0a 2020 2020 2020 2020  "; then.        
│ │ │ +001e8690: 6966 206d 6f75 6e74 706f 696e 7420 2d71  if mountpoint -q
│ │ │ +001e86a0: 2022 2f76 6172 2f74 6d70 223b 2074 6865   "/var/tmp"; the
│ │ │ +001e86b0: 6e0a 2020 2020 2020 2020 2020 2020 6d6f  n.            mo
│ │ │ +001e86c0: 756e 7420 2d6f 2072 656d 6f75 6e74 202d  unt -o remount -
│ │ │ +001e86d0: 2d74 6172 6765 7420 222f 7661 722f 746d  -target "/var/tm
│ │ │ +001e86e0: 7022 0a20 2020 2020 2020 2066 690a 2020  p".        fi.  
│ │ │ +001e86f0: 2020 6669 0a7d 0a0a 7065 7266 6f72 6d5f    fi.}..perform_
│ │ │ +001e8700: 7265 6d65 6469 6174 696f 6e0a 0a65 6c73  remediation..els
│ │ │ +001e8710: 650a 2020 2020 2667 743b 2661 6d70 3b32  e.    >&2
│ │ │ +001e8720: 2065 6368 6f20 2752 656d 6564 6961 7469   echo 'Remediati
│ │ │ +001e8730: 6f6e 2069 7320 6e6f 7420 6170 706c 6963  on is not applic
│ │ │ +001e8740: 6162 6c65 2c20 6e6f 7468 696e 6720 7761  able, nothing wa
│ │ │ +001e8750: 7320 646f 6e65 270a 6669 0a3c 2f63 6f64  s done'.fi.
Remed │ │ │ +001e8810: 6961 7469 6f6e 2041 6e61 636f 6e64 6120 iation Anaconda │ │ │ +001e8820: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ +001e8830: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
< │ │ │ +001e8920: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
Com │ │ │ +001e88b0: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ +001e88e0: 3a3c 2f74 683e 3c74 643e 6869 6768 3c2f :high
│ │ │ +001e8900: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +001e8910: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +001e8930: 3c2f 7468 3e3c 7464 3e65 6e61 626c 653c enable< │ │ │ +001e8940: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
.par
│ │ │ +001e8960: 7420 2f76 6172 2f74 6d70 202d 2d6d 6f75  t /var/tmp --mou
│ │ │ +001e8970: 6e74 6f70 7469 6f6e 733d 226e 6f73 7569  ntoptions="nosui
│ │ │ +001e8980: 6422 0a3c 2f63 6f64 653e 3c2f 7072 653e  d".
│ │ │ 001e8990: 3c2f 6469 763e 3c2f 6469 763e 3c2f 7464
│ │ │ 001e89c0: 3c74 7220 6461 7461 2d74 742d 6964 3d22 Rem │ │ │ -001f44f0: 6564 6961 7469 6f6e 204f 5342 7569 6c64 ediation OSBuild │ │ │ -001f4500: 2042 6c75 6570 7269 6e74 2073 6e69 7070 Blueprint snipp │ │ │ -001f4510: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...

.[[pack │ │ │ -001f4560: 6167 6573 5d5d 0a6e 616d 6520 3d20 226c ages]].name = "l │ │ │ -001f4570: 6962 7365 6c69 6e75 7822 0a76 6572 7369 ibselinux".versi │ │ │ -001f4580: 6f6e 203d 2022 2a22 0a3c 2f63 6f64 653e on = "*". │ │ │ -001f4590: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063

Remedia │ │ │ -001f4640: 7469 6f6e 2041 6e61 636f 6e64 6120 736e tion Anaconda sn │ │ │ -001f4650: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ -001f4700: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ -001f4720: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ -001f4750: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ -001f46e0: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ -001f46f0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ -001f4710: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ -001f4730: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -001f4740: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:enable

.packag │ │ │ -001f4790: 6520 2d2d 6164 643d 6c69 6273 656c 696e e --add=libselin │ │ │ -001f47a0: 7578 0a3c 2f63 6f64 653e 3c2f 7072 653e ux. │ │ │ -001f47b0: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22

Remediation P │ │ │ -001f4860: 7570 7065 7420 736e 6970 7065 7420 e287 uppet snippet .. │ │ │ -001f4870: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ -001f48f0: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -001f4910: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -001f4960: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
include install
│ │ │ -001f49b0: 5f6c 6962 7365 6c69 6e75 780a 0a63 6c61  _libselinux..cla
│ │ │ -001f49c0: 7373 2069 6e73 7461 6c6c 5f6c 6962 7365  ss install_libse
│ │ │ -001f49d0: 6c69 6e75 7820 7b0a 2020 7061 636b 6167  linux {.  packag
│ │ │ -001f49e0: 6520 7b20 276c 6962 7365 6c69 6e75 7827  e { 'libselinux'
│ │ │ -001f49f0: 3a0a 2020 2020 656e 7375 7265 203d 2667  :.    ensure =&g
│ │ │ -001f4a00: 743b 2027 696e 7374 616c 6c65 6427 2c0a  t; 'installed',.
│ │ │ -001f4a10: 2020 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70    }.}.

Remediatio │ │ │ -001f4ad0: 6e20 416e 7369 626c 6520 736e 6970 7065 n Ansible snippe │ │ │ -001f4ae0: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ -001f4b60: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>
│ │ │ -001f4ba0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 enable
low
Disr │ │ │ -001f4920: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -001f4930: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ -001f4970: 7465 6779 3a3c 2f74 683e 3c74 643e 656e tegy:en │ │ │ -001f4980: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
Complexit │ │ │ -001f4b70: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low
│ │ │ -001f4b90: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption:low
Reboot: │ │ │ -001f4bc0: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false
│ │ │ -001f4be0: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:
<
│ │ │ -001f4c10: 636f 6465 3e2d 206e 616d 653a 2047 6174  code>- name: Gat
│ │ │ -001f4c20: 6865 7220 7468 6520 7061 636b 6167 6520  her the package 
│ │ │ -001f4c30: 6661 6374 730a 2020 7061 636b 6167 655f  facts.  package_
│ │ │ -001f4c40: 6661 6374 733a 0a20 2020 206d 616e 6167  facts:.    manag
│ │ │ -001f4c50: 6572 3a20 6175 746f 0a20 2074 6167 733a  er: auto.  tags:
│ │ │ -001f4c60: 0a20 202d 2050 4349 2d44 5353 7634 2d31  .  - PCI-DSSv4-1
│ │ │ -001f4c70: 2e32 0a20 202d 2050 4349 2d44 5353 7634  .2.  - PCI-DSSv4
│ │ │ -001f4c80: 2d31 2e32 2e36 0a20 202d 2065 6e61 626c  -1.2.6.  - enabl
│ │ │ -001f4c90: 655f 7374 7261 7465 6779 0a20 202d 2068  e_strategy.  - h
│ │ │ -001f4ca0: 6967 685f 7365 7665 7269 7479 0a20 202d  igh_severity.  -
│ │ │ -001f4cb0: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ -001f4cc0: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ -001f4cd0: 6f6e 0a20 202d 206e 6f5f 7265 626f 6f74  on.  - no_reboot
│ │ │ -001f4ce0: 5f6e 6565 6465 640a 2020 2d20 7061 636b  _needed.  - pack
│ │ │ -001f4cf0: 6167 655f 6c69 6273 656c 696e 7578 5f69  age_libselinux_i
│ │ │ -001f4d00: 6e73 7461 6c6c 6564 0a0a 2d20 6e61 6d65  nstalled..- name
│ │ │ -001f4d10: 3a20 456e 7375 7265 206c 6962 7365 6c69  : Ensure libseli
│ │ │ -001f4d20: 6e75 7820 6973 2069 6e73 7461 6c6c 6564  nux is installed
│ │ │ -001f4d30: 0a20 2061 6e73 6962 6c65 2e62 7569 6c74  .  ansible.built
│ │ │ -001f4d40: 696e 2e70 6163 6b61 6765 3a0a 2020 2020  in.package:.    
│ │ │ -001f4d50: 6e61 6d65 3a20 6c69 6273 656c 696e 7578  name: libselinux
│ │ │ -001f4d60: 0a20 2020 2073 7461 7465 3a20 7072 6573  .    state: pres
│ │ │ -001f4d70: 656e 740a 2020 7768 656e 3a20 2722 6b65  ent.  when: '"ke
│ │ │ -001f4d80: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ -001f4d90: 5f66 6163 7473 2e70 6163 6b61 6765 7327  _facts.packages'
│ │ │ -001f4da0: 0a20 2074 6167 733a 0a20 202d 2050 4349  .  tags:.  - PCI
│ │ │ -001f4db0: 2d44 5353 7634 2d31 2e32 0a20 202d 2050  -DSSv4-1.2.  - P
│ │ │ -001f4dc0: 4349 2d44 5353 7634 2d31 2e32 2e36 0a20  CI-DSSv4-1.2.6. 
│ │ │ -001f4dd0: 202d 2065 6e61 626c 655f 7374 7261 7465   - enable_strate
│ │ │ -001f4de0: 6779 0a20 202d 2068 6967 685f 7365 7665  gy.  - high_seve
│ │ │ -001f4df0: 7269 7479 0a20 202d 206c 6f77 5f63 6f6d  rity.  - low_com
│ │ │ -001f4e00: 706c 6578 6974 790a 2020 2d20 6c6f 775f  plexity.  - low_
│ │ │ -001f4e10: 6469 7372 7570 7469 6f6e 0a20 202d 206e  disruption.  - n
│ │ │ -001f4e20: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ -001f4e30: 2020 2d20 7061 636b 6167 655f 6c69 6273    - package_libs
│ │ │ -001f4e40: 656c 696e 7578 5f69 6e73 7461 6c6c 6564  elinux_installed
│ │ │ -001f4e50: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation She │ │ │ -001f4f10: 6c6c 2073 6372 6970 7420 e287 b23c 2f61 ll script ...
< │ │ │ -001f4fb0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -001f4fc0: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ -001f5010: 3c74 723e 3c74 683e 5374 7261 7465 6779
# R
│ │ │ -001f5050: 656d 6564 6961 7469 6f6e 2069 7320 6170  emediation is ap
│ │ │ -001f5060: 706c 6963 6162 6c65 206f 6e6c 7920 696e  plicable only in
│ │ │ -001f5070: 2063 6572 7461 696e 2070 6c61 7466 6f72   certain platfor
│ │ │ -001f5080: 6d73 0a69 6620 7270 6d20 2d2d 7175 6965  ms.if rpm --quie
│ │ │ -001f5090: 7420 2d71 206b 6572 6e65 6c3b 2074 6865  t -q kernel; the
│ │ │ -001f50a0: 6e0a 0a69 6620 2120 7270 6d20 2d71 202d  n..if ! rpm -q -
│ │ │ -001f50b0: 2d71 7569 6574 2022 6c69 6273 656c 696e  -quiet "libselin
│ │ │ -001f50c0: 7578 2220 3b20 7468 656e 0a20 2020 2064  ux" ; then.    d
│ │ │ -001f50d0: 6e66 2069 6e73 7461 6c6c 202d 7920 226c  nf install -y "l
│ │ │ -001f50e0: 6962 7365 6c69 6e75 7822 0a66 690a 0a65  ibselinux".fi..e
│ │ │ -001f50f0: 6c73 650a 2020 2020 2667 743b 2661 6d70  lse.    >&
│ │ │ -001f5100: 3b32 2065 6368 6f20 2752 656d 6564 6961  ;2 echo 'Remedia
│ │ │ -001f5110: 7469 6f6e 2069 7320 6e6f 7420 6170 706c  tion is not appl
│ │ │ -001f5120: 6963 6162 6c65 2c20 6e6f 7468 696e 6720  icable, nothing 
│ │ │ -001f5130: 7761 7320 646f 6e65 270a 6669 0a3c 2f63  was done'.fi.
│ │ │ +001f4510: 3c62 723e 3c64 6976 2063 6c61 7373 3d22  
C │ │ │ -001f4fa0: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -001f4fd0: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ -001f4fe0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -001f5020: 3a3c 2f74 683e 3c74 643e 656e 6162 6c65 :enable │ │ │ -001f5030: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
low< │ │ │ +001f45b0: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ +001f4600: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
Co │ │ │ +001f4590: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +001f45c0: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +001f45e0: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +001f45f0: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +001f4610: 3c2f 7468 3e3c 7464 3e65 6e61 626c 653c enable< │ │ │ +001f4620: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
- na
│ │ │ +001f4640: 6d65 3a20 4761 7468 6572 2074 6865 2070  me: Gather the p
│ │ │ +001f4650: 6163 6b61 6765 2066 6163 7473 0a20 2070  ackage facts.  p
│ │ │ +001f4660: 6163 6b61 6765 5f66 6163 7473 3a0a 2020  ackage_facts:.  
│ │ │ +001f4670: 2020 6d61 6e61 6765 723a 2061 7574 6f0a    manager: auto.
│ │ │ +001f4680: 2020 7461 6773 3a0a 2020 2d20 5043 492d    tags:.  - PCI-
│ │ │ +001f4690: 4453 5376 342d 312e 320a 2020 2d20 5043  DSSv4-1.2.  - PC
│ │ │ +001f46a0: 492d 4453 5376 342d 312e 322e 360a 2020  I-DSSv4-1.2.6.  
│ │ │ +001f46b0: 2d20 656e 6162 6c65 5f73 7472 6174 6567  - enable_strateg
│ │ │ +001f46c0: 790a 2020 2d20 6869 6768 5f73 6576 6572  y.  - high_sever
│ │ │ +001f46d0: 6974 790a 2020 2d20 6c6f 775f 636f 6d70  ity.  - low_comp
│ │ │ +001f46e0: 6c65 7869 7479 0a20 202d 206c 6f77 5f64  lexity.  - low_d
│ │ │ +001f46f0: 6973 7275 7074 696f 6e0a 2020 2d20 6e6f  isruption.  - no
│ │ │ +001f4700: 5f72 6562 6f6f 745f 6e65 6564 6564 0a20  _reboot_needed. 
│ │ │ +001f4710: 202d 2070 6163 6b61 6765 5f6c 6962 7365   - package_libse
│ │ │ +001f4720: 6c69 6e75 785f 696e 7374 616c 6c65 640a  linux_installed.
│ │ │ +001f4730: 0a2d 206e 616d 653a 2045 6e73 7572 6520  .- name: Ensure 
│ │ │ +001f4740: 6c69 6273 656c 696e 7578 2069 7320 696e  libselinux is in
│ │ │ +001f4750: 7374 616c 6c65 640a 2020 616e 7369 626c  stalled.  ansibl
│ │ │ +001f4760: 652e 6275 696c 7469 6e2e 7061 636b 6167  e.builtin.packag
│ │ │ +001f4770: 653a 0a20 2020 206e 616d 653a 206c 6962  e:.    name: lib
│ │ │ +001f4780: 7365 6c69 6e75 780a 2020 2020 7374 6174  selinux.    stat
│ │ │ +001f4790: 653a 2070 7265 7365 6e74 0a20 2077 6865  e: present.  whe
│ │ │ +001f47a0: 6e3a 2027 226b 6572 6e65 6c22 2069 6e20  n: '"kernel" in 
│ │ │ +001f47b0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001f47c0: 636b 6167 6573 270a 2020 7461 6773 3a0a  ckages'.  tags:.
│ │ │ +001f47d0: 2020 2d20 5043 492d 4453 5376 342d 312e    - PCI-DSSv4-1.
│ │ │ +001f47e0: 320a 2020 2d20 5043 492d 4453 5376 342d  2.  - PCI-DSSv4-
│ │ │ +001f47f0: 312e 322e 360a 2020 2d20 656e 6162 6c65  1.2.6.  - enable
│ │ │ +001f4800: 5f73 7472 6174 6567 790a 2020 2d20 6869  _strategy.  - hi
│ │ │ +001f4810: 6768 5f73 6576 6572 6974 790a 2020 2d20  gh_severity.  - 
│ │ │ +001f4820: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ +001f4830: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ +001f4840: 6e0a 2020 2d20 6e6f 5f72 6562 6f6f 745f  n.  - no_reboot_
│ │ │ +001f4850: 6e65 6564 6564 0a20 202d 2070 6163 6b61  needed.  - packa
│ │ │ +001f4860: 6765 5f6c 6962 7365 6c69 6e75 785f 696e  ge_libselinux_in
│ │ │ +001f4870: 7374 616c 6c65 640a 3c2f 636f 6465 3e3c  stalled.<
│ │ │ +001f4880: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>
Remediat │ │ │ +001f4930: 696f 6e20 5075 7070 6574 2073 6e69 7070 ion Puppet snipp │ │ │ +001f4940: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ +001f49c0: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ +001f49d0: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +001f49e0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ +001f4a20: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +001f4a30: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ +001f4a50: 7464 3e65 6e61 626c 653c 2f74 643e 3c2f td>enable
│ │ │ +001f4a70: 3c63 6f64 653e 696e 636c 7564 6520 696e  include in
│ │ │ +001f4a80: 7374 616c 6c5f 6c69 6273 656c 696e 7578  stall_libselinux
│ │ │ +001f4a90: 0a0a 636c 6173 7320 696e 7374 616c 6c5f  ..class install_
│ │ │ +001f4aa0: 6c69 6273 656c 696e 7578 207b 0a20 2070  libselinux {.  p
│ │ │ +001f4ab0: 6163 6b61 6765 207b 2027 6c69 6273 656c  ackage { 'libsel
│ │ │ +001f4ac0: 696e 7578 273a 0a20 2020 2065 6e73 7572  inux':.    ensur
│ │ │ +001f4ad0: 6520 3d26 6774 3b20 2769 6e73 7461 6c6c  e => 'install
│ │ │ +001f4ae0: 6564 272c 0a20 207d 0a7d 0a3c 2f63 6f64  ed',.  }.}.
Remed │ │ │ +001f4ba0: 6961 7469 6f6e 204f 5342 7569 6c64 2042 iation OSBuild B │ │ │ +001f4bb0: 6c75 6570 7269 6e74 2073 6e69 7070 6574 lueprint snippet │ │ │ +001f4bc0: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
.[[packag
│ │ │ +001f4c10: 6573 5d5d 0a6e 616d 6520 3d20 226c 6962  es]].name = "lib
│ │ │ +001f4c20: 7365 6c69 6e75 7822 0a76 6572 7369 6f6e  selinux".version
│ │ │ +001f4c30: 203d 2022 2a22 0a3c 2f63 6f64 653e 3c2f   = "*".
Remediati │ │ │ +001f4cf0: 6f6e 2053 6865 6c6c 2073 6372 6970 7420 on Shell script │ │ │ +001f4d00: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
Complexity: │ │ │ +001f4d90: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ +001f4db0: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:low< │ │ │ +001f4dd0: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:falseSt │ │ │ +001f4e00: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ +001f4e10: 656e 6162 6c65 3c2f 7464 3e3c 2f74 723e enable │ │ │ +001f4e20: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
# Remediation
│ │ │ +001f4e40: 2069 7320 6170 706c 6963 6162 6c65 206f   is applicable o
│ │ │ +001f4e50: 6e6c 7920 696e 2063 6572 7461 696e 2070  nly in certain p
│ │ │ +001f4e60: 6c61 7466 6f72 6d73 0a69 6620 7270 6d20  latforms.if rpm 
│ │ │ +001f4e70: 2d2d 7175 6965 7420 2d71 206b 6572 6e65  --quiet -q kerne
│ │ │ +001f4e80: 6c3b 2074 6865 6e0a 0a69 6620 2120 7270  l; then..if ! rp
│ │ │ +001f4e90: 6d20 2d71 202d 2d71 7569 6574 2022 6c69  m -q --quiet "li
│ │ │ +001f4ea0: 6273 656c 696e 7578 2220 3b20 7468 656e  bselinux" ; then
│ │ │ +001f4eb0: 0a20 2020 2064 6e66 2069 6e73 7461 6c6c  .    dnf install
│ │ │ +001f4ec0: 202d 7920 226c 6962 7365 6c69 6e75 7822   -y "libselinux"
│ │ │ +001f4ed0: 0a66 690a 0a65 6c73 650a 2020 2020 2667  .fi..else.    &g
│ │ │ +001f4ee0: 743b 2661 6d70 3b32 2065 6368 6f20 2752  t;&2 echo 'R
│ │ │ +001f4ef0: 656d 6564 6961 7469 6f6e 2069 7320 6e6f  emediation is no
│ │ │ +001f4f00: 7420 6170 706c 6963 6162 6c65 2c20 6e6f  t applicable, no
│ │ │ +001f4f10: 7468 696e 6720 7761 7320 646f 6e65 270a  thing was done'.
│ │ │ +001f4f20: 6669 0a3c 2f63 6f64 653e 3c2f 7072 653e  fi.
│ │ │ +001f4f30: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation A │ │ │ +001f4fe0: 6e61 636f 6e64 6120 736e 6970 7065 7420 naconda snippet │ │ │ +001f4ff0: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
Complexity: │ │ │ +001f5080: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ +001f50a0: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:low< │ │ │ +001f50c0: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:falseSt │ │ │ +001f50f0: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ +001f5100: 656e 6162 6c65 3c2f 7464 3e3c 2f74 723e enable │ │ │ +001f5110: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
.package --ad
│ │ │ +001f5130: 643d 6c69 6273 656c 696e 7578 0a3c 2f63  d=libselinux.
│ │ │ 001f5150: 3c2f 6469 763e 3c2f 7464 3e3c 2f74 723e
│ │ │ 001f5160: 3c2f 7462 6f64 793e 3c2f 7461 626c 653e │ │ │ 001f5170: 3c2f 7464 3e3c 2f74 723e 3c74 7220 6461 │ │ │ -001f59f0: 5265 6d65 6469 6174 696f 6e20 416e 6163 Remediation Anac │ │ │ -001f5a00: 6f6e 6461 2073 6e69 7070 6574 20e2 87b2 onda snippet ... │ │ │ -001f5a10: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity: │ │ │ -001f5ae0: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -001f5af0: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
..package --rem
│ │ │ -001f5b50: 6f76 653d 6d63 7374 7261 6e73 0a3c 2f63  ove=mcstrans.
│ │ │ -001f5b70: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ -001f5c10: 6564 6961 7469 6f6e 2050 7570 7065 7420 ediation Puppet │ │ │ -001f5c20: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ -001f5c30: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
low
Disru │ │ │ -001f5ac0: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ -001f5ad0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ -001f5b10: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ -001f5b20: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
Com │ │ │ -001f5cb0: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ -001f5ce0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ -001f5d00: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -001f5d10: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -001f5d30: 2f74 683e 3c74 643e 6469 7361 626c 653c /th>disable< │ │ │ -001f5d40: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
.inc
│ │ │ -001f5d60: 6c75 6465 2072 656d 6f76 655f 6d63 7374  lude remove_mcst
│ │ │ -001f5d70: 7261 6e73 0a0a 636c 6173 7320 7265 6d6f  rans..class remo
│ │ │ -001f5d80: 7665 5f6d 6373 7472 616e 7320 7b0a 2020  ve_mcstrans {.  
│ │ │ -001f5d90: 7061 636b 6167 6520 7b20 276d 6373 7472  package { 'mcstr
│ │ │ -001f5da0: 616e 7327 3a0a 2020 2020 656e 7375 7265  ans':.    ensure
│ │ │ -001f5db0: 203d 2667 743b 2027 7075 7267 6564 272c   => 'purged',
│ │ │ -001f5dc0: 0a20 207d 0a7d 0a3c 2f63 6f64 653e 3c2f  .  }.}.
Remediati │ │ │ -001f5e80: 6f6e 2041 6e73 6962 6c65 2073 6e69 7070 on Ansible snipp │ │ │ -001f5e90: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ -001f5f10: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ -001f5f20: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -001f5f30: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ -001f5f70: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -001f5f80: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ -001f5fa0: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ -001f5fb0: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
- name: G
│ │ │ -001f5fd0: 6174 6865 7220 7468 6520 7061 636b 6167  ather the packag
│ │ │ -001f5fe0: 6520 6661 6374 730a 2020 7061 636b 6167  e facts.  packag
│ │ │ -001f5ff0: 655f 6661 6374 733a 0a20 2020 206d 616e  e_facts:.    man
│ │ │ -001f6000: 6167 6572 3a20 6175 746f 0a20 2074 6167  ager: auto.  tag
│ │ │ -001f6010: 733a 0a20 202d 2064 6973 6162 6c65 5f73  s:.  - disable_s
│ │ │ -001f6020: 7472 6174 6567 790a 2020 2d20 6c6f 775f  trategy.  - low_
│ │ │ -001f6030: 636f 6d70 6c65 7869 7479 0a20 202d 206c  complexity.  - l
│ │ │ -001f6040: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ -001f6050: 2d20 6c6f 775f 7365 7665 7269 7479 0a20  - low_severity. 
│ │ │ -001f6060: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ -001f6070: 6465 640a 2020 2d20 7061 636b 6167 655f  ded.  - package_
│ │ │ -001f6080: 6d63 7374 7261 6e73 5f72 656d 6f76 6564  mcstrans_removed
│ │ │ -001f6090: 0a0a 2d20 6e61 6d65 3a20 2755 6e69 6e73  ..- name: 'Unins
│ │ │ -001f60a0: 7461 6c6c 206d 6373 7472 616e 7320 5061  tall mcstrans Pa
│ │ │ -001f60b0: 636b 6167 653a 2045 6e73 7572 6520 6d63  ckage: Ensure mc
│ │ │ -001f60c0: 7374 7261 6e73 2069 7320 7265 6d6f 7665  strans is remove
│ │ │ -001f60d0: 6427 0a20 2061 6e73 6962 6c65 2e62 7569  d'.  ansible.bui
│ │ │ -001f60e0: 6c74 696e 2e70 6163 6b61 6765 3a0a 2020  ltin.package:.  
│ │ │ -001f60f0: 2020 6e61 6d65 3a20 6d63 7374 7261 6e73    name: mcstrans
│ │ │ -001f6100: 0a20 2020 2073 7461 7465 3a20 6162 7365  .    state: abse
│ │ │ -001f6110: 6e74 0a20 2077 6865 6e3a 2027 226b 6572  nt.  when: '"ker
│ │ │ -001f6120: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ -001f6130: 6661 6374 732e 7061 636b 6167 6573 270a  facts.packages'.
│ │ │ -001f6140: 2020 7461 6773 3a0a 2020 2d20 6469 7361    tags:.  - disa
│ │ │ -001f6150: 626c 655f 7374 7261 7465 6779 0a20 202d  ble_strategy.  -
│ │ │ -001f6160: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ -001f6170: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ -001f6180: 6f6e 0a20 202d 206c 6f77 5f73 6576 6572  on.  - low_sever
│ │ │ -001f6190: 6974 790a 2020 2d20 6e6f 5f72 6562 6f6f  ity.  - no_reboo
│ │ │ -001f61a0: 745f 6e65 6564 6564 0a20 202d 2070 6163  t_needed.  - pac
│ │ │ -001f61b0: 6b61 6765 5f6d 6373 7472 616e 735f 7265  kage_mcstrans_re
│ │ │ -001f61c0: 6d6f 7665 640a 3c2f 636f 6465 3e3c 2f70  moved.

Remediatio │ │ │ -001f6280: 6e20 5368 656c 6c20 7363 7269 7074 20e2 n Shell script . │ │ │ -001f6290: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ -001f6310: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -001f6330: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ -001f6380: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ -001f63b0: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ -001f6320: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ -001f6340: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ -001f6390: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ -001f63a0: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
# Remediation
│ │ │ -001f63d0: 2069 7320 6170 706c 6963 6162 6c65 206f   is applicable o
│ │ │ -001f63e0: 6e6c 7920 696e 2063 6572 7461 696e 2070  nly in certain p
│ │ │ -001f63f0: 6c61 7466 6f72 6d73 0a69 6620 7270 6d20  latforms.if rpm 
│ │ │ -001f6400: 2d2d 7175 6965 7420 2d71 206b 6572 6e65  --quiet -q kerne
│ │ │ -001f6410: 6c3b 2074 6865 6e0a 0a23 2043 4155 5449  l; then..# CAUTI
│ │ │ -001f6420: 4f4e 3a20 5468 6973 2072 656d 6564 6961  ON: This remedia
│ │ │ -001f6430: 7469 6f6e 2073 6372 6970 7420 7769 6c6c  tion script will
│ │ │ -001f6440: 2072 656d 6f76 6520 6d63 7374 7261 6e73   remove mcstrans
│ │ │ -001f6450: 0a23 2066 726f 6d20 7468 6520 7379 7374  .# from the syst
│ │ │ -001f6460: 656d 2c20 616e 6420 6d61 7920 7265 6d6f  em, and may remo
│ │ │ -001f6470: 7665 2061 6e79 2070 6163 6b61 6765 730a  ve any packages.
│ │ │ -001f6480: 2320 7468 6174 2064 6570 656e 6420 6f6e  # that depend on
│ │ │ -001f6490: 206d 6373 7472 616e 732e 2045 7865 6375   mcstrans. Execu
│ │ │ -001f64a0: 7465 2074 6869 730a 2320 7265 6d65 6469  te this.# remedi
│ │ │ -001f64b0: 6174 696f 6e20 4146 5445 5220 7465 7374  ation AFTER test
│ │ │ -001f64c0: 696e 6720 6f6e 2061 206e 6f6e 2d70 726f  ing on a non-pro
│ │ │ -001f64d0: 6475 6374 696f 6e0a 2320 7379 7374 656d  duction.# system
│ │ │ -001f64e0: 210a 0a0a 6966 2072 706d 202d 7120 2d2d  !...if rpm -q --
│ │ │ -001f64f0: 7175 6965 7420 226d 6373 7472 616e 7322  quiet "mcstrans"
│ │ │ -001f6500: 203b 2074 6865 6e0a 646e 6620 7265 6d6f   ; then.dnf remo
│ │ │ -001f6510: 7665 202d 7920 2d2d 6e6f 6175 746f 7265  ve -y --noautore
│ │ │ -001f6520: 6d6f 7665 2022 6d63 7374 7261 6e73 220a  move "mcstrans".
│ │ │ -001f6530: 6669 0a0a 656c 7365 0a20 2020 2026 6774  fi..else.    >
│ │ │ -001f6540: 3b26 616d 703b 3220 6563 686f 2027 5265  ;&2 echo 'Re
│ │ │ -001f6550: 6d65 6469 6174 696f 6e20 6973 206e 6f74  mediation is not
│ │ │ -001f6560: 2061 7070 6c69 6361 626c 652c 206e 6f74   applicable, not
│ │ │ -001f6570: 6869 6e67 2077 6173 2064 6f6e 6527 0a66  hing was done'.f
│ │ │ -001f6580: 690a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  i.
< │ │ │ +001f59f0: 5265 6d65 6469 6174 696f 6e20 416e 7369 Remediation Ansi │ │ │ +001f5a00: 626c 6520 736e 6970 7065 7420 e287 b23c ble snippet ...< │ │ │ +001f5a10: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
< │ │ │ +001f5ae0: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +001f5af0: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

│ │ │ +001f5b40: 2d20 6e61 6d65 3a20 4761 7468 6572 2074  - name: Gather t
│ │ │ +001f5b50: 6865 2070 6163 6b61 6765 2066 6163 7473  he package facts
│ │ │ +001f5b60: 0a20 2070 6163 6b61 6765 5f66 6163 7473  .  package_facts
│ │ │ +001f5b70: 3a0a 2020 2020 6d61 6e61 6765 723a 2061  :.    manager: a
│ │ │ +001f5b80: 7574 6f0a 2020 7461 6773 3a0a 2020 2d20  uto.  tags:.  - 
│ │ │ +001f5b90: 6469 7361 626c 655f 7374 7261 7465 6779  disable_strategy
│ │ │ +001f5ba0: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ +001f5bb0: 6974 790a 2020 2d20 6c6f 775f 6469 7372  ity.  - low_disr
│ │ │ +001f5bc0: 7570 7469 6f6e 0a20 202d 206c 6f77 5f73  uption.  - low_s
│ │ │ +001f5bd0: 6576 6572 6974 790a 2020 2d20 6e6f 5f72  everity.  - no_r
│ │ │ +001f5be0: 6562 6f6f 745f 6e65 6564 6564 0a20 202d  eboot_needed.  -
│ │ │ +001f5bf0: 2070 6163 6b61 6765 5f6d 6373 7472 616e   package_mcstran
│ │ │ +001f5c00: 735f 7265 6d6f 7665 640a 0a2d 206e 616d  s_removed..- nam
│ │ │ +001f5c10: 653a 2027 556e 696e 7374 616c 6c20 6d63  e: 'Uninstall mc
│ │ │ +001f5c20: 7374 7261 6e73 2050 6163 6b61 6765 3a20  strans Package: 
│ │ │ +001f5c30: 456e 7375 7265 206d 6373 7472 616e 7320  Ensure mcstrans 
│ │ │ +001f5c40: 6973 2072 656d 6f76 6564 270a 2020 616e  is removed'.  an
│ │ │ +001f5c50: 7369 626c 652e 6275 696c 7469 6e2e 7061  sible.builtin.pa
│ │ │ +001f5c60: 636b 6167 653a 0a20 2020 206e 616d 653a  ckage:.    name:
│ │ │ +001f5c70: 206d 6373 7472 616e 730a 2020 2020 7374   mcstrans.    st
│ │ │ +001f5c80: 6174 653a 2061 6273 656e 740a 2020 7768  ate: absent.  wh
│ │ │ +001f5c90: 656e 3a20 2722 6b65 726e 656c 2220 696e  en: '"kernel" in
│ │ │ +001f5ca0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001f5cb0: 6163 6b61 6765 7327 0a20 2074 6167 733a  ackages'.  tags:
│ │ │ +001f5cc0: 0a20 202d 2064 6973 6162 6c65 5f73 7472  .  - disable_str
│ │ │ +001f5cd0: 6174 6567 790a 2020 2d20 6c6f 775f 636f  ategy.  - low_co
│ │ │ +001f5ce0: 6d70 6c65 7869 7479 0a20 202d 206c 6f77  mplexity.  - low
│ │ │ +001f5cf0: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +001f5d00: 6c6f 775f 7365 7665 7269 7479 0a20 202d  low_severity.  -
│ │ │ +001f5d10: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ +001f5d20: 640a 2020 2d20 7061 636b 6167 655f 6d63  d.  - package_mc
│ │ │ +001f5d30: 7374 7261 6e73 5f72 656d 6f76 6564 0a3c  strans_removed.<
│ │ │ +001f5d40: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ +001f5df0: 656d 6564 6961 7469 6f6e 2050 7570 7065 emediation Puppe │ │ │ +001f5e00: 7420 736e 6970 7065 7420 e287 b23c 2f61 t snippet ...
Complexity:low
Disrup │ │ │ +001f5ac0: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ +001f5ad0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ +001f5b10: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ +001f5b20: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
< │ │ │ +001f5ea0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +001f5eb0: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ +001f5f00: 3c74 723e 3c74 683e 5374 7261 7465 6779
.i
│ │ │ +001f5f40: 6e63 6c75 6465 2072 656d 6f76 655f 6d63  nclude remove_mc
│ │ │ +001f5f50: 7374 7261 6e73 0a0a 636c 6173 7320 7265  strans..class re
│ │ │ +001f5f60: 6d6f 7665 5f6d 6373 7472 616e 7320 7b0a  move_mcstrans {.
│ │ │ +001f5f70: 2020 7061 636b 6167 6520 7b20 276d 6373    package { 'mcs
│ │ │ +001f5f80: 7472 616e 7327 3a0a 2020 2020 656e 7375  trans':.    ensu
│ │ │ +001f5f90: 7265 203d 2667 743b 2027 7075 7267 6564  re => 'purged
│ │ │ +001f5fa0: 272c 0a20 207d 0a7d 0a3c 2f63 6f64 653e  ',.  }.}.
│ │ │ +001f5fb0: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ +001f6060: 7469 6f6e 2053 6865 6c6c 2073 6372 6970 tion Shell scrip │ │ │ +001f6070: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ +001f60f0: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>
│ │ │ +001f6130: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 disable
C │ │ │ +001f5e90: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ +001f5ec0: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ +001f5ed0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ +001f5f10: 3a3c 2f74 683e 3c74 643e 6469 7361 626c :disabl │ │ │ +001f5f20: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
Complexit │ │ │ +001f6100: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low
│ │ │ +001f6120: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption:low
Reboot: │ │ │ +001f6150: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false
│ │ │ +001f6170: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:
│ │ │ +001f61a0: 3c63 6f64 653e 2320 5265 6d65 6469 6174  # Remediat
│ │ │ +001f61b0: 696f 6e20 6973 2061 7070 6c69 6361 626c  ion is applicabl
│ │ │ +001f61c0: 6520 6f6e 6c79 2069 6e20 6365 7274 6169  e only in certai
│ │ │ +001f61d0: 6e20 706c 6174 666f 726d 730a 6966 2072  n platforms.if r
│ │ │ +001f61e0: 706d 202d 2d71 7569 6574 202d 7120 6b65  pm --quiet -q ke
│ │ │ +001f61f0: 726e 656c 3b20 7468 656e 0a0a 2320 4341  rnel; then..# CA
│ │ │ +001f6200: 5554 494f 4e3a 2054 6869 7320 7265 6d65  UTION: This reme
│ │ │ +001f6210: 6469 6174 696f 6e20 7363 7269 7074 2077  diation script w
│ │ │ +001f6220: 696c 6c20 7265 6d6f 7665 206d 6373 7472  ill remove mcstr
│ │ │ +001f6230: 616e 730a 2320 6672 6f6d 2074 6865 2073  ans.# from the s
│ │ │ +001f6240: 7973 7465 6d2c 2061 6e64 206d 6179 2072  ystem, and may r
│ │ │ +001f6250: 656d 6f76 6520 616e 7920 7061 636b 6167  emove any packag
│ │ │ +001f6260: 6573 0a23 2074 6861 7420 6465 7065 6e64  es.# that depend
│ │ │ +001f6270: 206f 6e20 6d63 7374 7261 6e73 2e20 4578   on mcstrans. Ex
│ │ │ +001f6280: 6563 7574 6520 7468 6973 0a23 2072 656d  ecute this.# rem
│ │ │ +001f6290: 6564 6961 7469 6f6e 2041 4654 4552 2074  ediation AFTER t
│ │ │ +001f62a0: 6573 7469 6e67 206f 6e20 6120 6e6f 6e2d  esting on a non-
│ │ │ +001f62b0: 7072 6f64 7563 7469 6f6e 0a23 2073 7973  production.# sys
│ │ │ +001f62c0: 7465 6d21 0a0a 0a69 6620 7270 6d20 2d71  tem!...if rpm -q
│ │ │ +001f62d0: 202d 2d71 7569 6574 2022 6d63 7374 7261   --quiet "mcstra
│ │ │ +001f62e0: 6e73 2220 3b20 7468 656e 0a64 6e66 2072  ns" ; then.dnf r
│ │ │ +001f62f0: 656d 6f76 6520 2d79 202d 2d6e 6f61 7574  emove -y --noaut
│ │ │ +001f6300: 6f72 656d 6f76 6520 226d 6373 7472 616e  oremove "mcstran
│ │ │ +001f6310: 7322 0a66 690a 0a65 6c73 650a 2020 2020  s".fi..else.    
│ │ │ +001f6320: 2667 743b 2661 6d70 3b32 2065 6368 6f20  >&2 echo 
│ │ │ +001f6330: 2752 656d 6564 6961 7469 6f6e 2069 7320  'Remediation is 
│ │ │ +001f6340: 6e6f 7420 6170 706c 6963 6162 6c65 2c20  not applicable, 
│ │ │ +001f6350: 6e6f 7468 696e 6720 7761 7320 646f 6e65  nothing was done
│ │ │ +001f6360: 270a 6669 0a3c 2f63 6f64 653e 3c2f 7072  '.fi.
Remediation │ │ │ +001f6420: 2041 6e61 636f 6e64 6120 736e 6970 7065 Anaconda snippe │ │ │ +001f6430: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ +001f64b0: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ +001f64c0: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ +001f64e0: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ +001f64f0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ +001f6510: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ +001f6530: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:disable
│ │ │ +001f6560: 3c63 6f64 653e 0a0a 7061 636b 6167 6520  ..package 
│ │ │ +001f6570: 2d2d 7265 6d6f 7665 3d6d 6373 7472 616e  --remove=mcstran
│ │ │ +001f6580: 730a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  s.
< │ │ │ 001f6590: 2f64 6976 3e3c 2f64 6976 3e3c 2f74 643e /div>
│ │ │ 001f65a0: 3c2f 7472 3e3c 2f74 626f 6479 3e3c 2f74 < │ │ │ 001f65c0: 7472 2064 6174 612d 7474 2d69 643d 2278 tr data-tt-id="x │ │ │ 001f65d0: 6363 6466 5f6f 7267 2e73 7367 7072 6f6a ccdf_org.ssgproj │ │ │ 001f65e0: 6563 742e 636f 6e74 656e 745f 7275 6c65 ect.content_rule │ │ │ 001f65f0: 5f70 6163 6b61 6765 5f73 6574 726f 7562 _package_setroub │ │ │ @@ -128744,204 +128744,204 @@ │ │ │ 001f6e70: 2d74 6172 6765 743d 2223 6964 3538 3722 -target="#id587" │ │ │ 001f6e80: 2074 6162 696e 6465 783d 2230 2220 726f tabindex="0" ro │ │ │ 001f6e90: 6c65 3d22 6275 7474 6f6e 2220 6172 6961 le="button" aria │ │ │ 001f6ea0: 2d65 7870 616e 6465 643d 2266 616c 7365 -expanded="false │ │ │ 001f6eb0: 2220 7469 746c 653d 2241 6374 6976 6174 " title="Activat │ │ │ 001f6ec0: 6520 746f 2072 6576 6561 6c22 2068 7265 e to reveal" hre │ │ │ 001f6ed0: 663d 2223 2122 3e52 656d 6564 6961 7469 f="#!">Remediati │ │ │ -001f6ee0: 6f6e 2041 6e61 636f 6e64 6120 736e 6970 on Anaconda snip │ │ │ -001f6ef0: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ -001f6f00: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -001f6f10: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -001f6f20: 7365 2220 6964 3d22 6964 3538 3722 3e3c se" id="id587">< │ │ │ -001f6f30: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ -001f6f40: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ -001f6f50: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ -001f6f60: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ -001f6f70: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Complex │ │ │ -001f6f80: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ -001f6f90: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Disruption:lowReboo │ │ │ -001f6fd0: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -001f6fe0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ -001f7000: 3c74 643e 6469 7361 626c 653c 2f74 643e disable │ │ │ -001f7010: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072 ..packag │ │ │ -001f7030: 6520 2d2d 7265 6d6f 7665 3d73 6574 726f e --remove=setro │ │ │ -001f7040: 7562 6c65 7368 6f6f 740a 3c2f 636f 6465 ubleshoot.
Remedi │ │ │ -001f7100: 6174 696f 6e20 5075 7070 6574 2073 6e69 ation Puppet sni │ │ │ -001f7110: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -001f7120: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -001f7150: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ -001f71c0: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ -001f71e0: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ -001f7210: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
Comple │ │ │ -001f71a0: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ -001f71b0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ -001f71f0: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ -001f7200: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
disable

.includ │ │ │ -001f7250: 6520 7265 6d6f 7665 5f73 6574 726f 7562 e remove_setroub │ │ │ -001f7260: 6c65 7368 6f6f 740a 0a63 6c61 7373 2072 leshoot..class r │ │ │ -001f7270: 656d 6f76 655f 7365 7472 6f75 626c 6573 emove_setroubles │ │ │ -001f7280: 686f 6f74 207b 0a20 2070 6163 6b61 6765 hoot {. package │ │ │ -001f7290: 207b 2027 7365 7472 6f75 626c 6573 686f { 'setroublesho │ │ │ -001f72a0: 6f74 273a 0a20 2020 2065 6e73 7572 6520 ot':. ensure │ │ │ -001f72b0: 3d26 6774 3b20 2770 7572 6765 6427 2c0a => 'purged',. │ │ │ -001f72c0: 2020 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70 }.}.

Remediatio │ │ │ -001f7380: 6e20 416e 7369 626c 6520 736e 6970 7065 n Ansible snippe │ │ │ -001f7390: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ -001f7410: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ -001f7420: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ -001f7440: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ -001f7450: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ -001f7470: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ -001f7490: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:disable
│ │ │ -001f74c0: 3c63 6f64 653e 2d20 6e61 6d65 3a20 4761  - name: Ga
│ │ │ -001f74d0: 7468 6572 2074 6865 2070 6163 6b61 6765  ther the package
│ │ │ -001f74e0: 2066 6163 7473 0a20 2070 6163 6b61 6765   facts.  package
│ │ │ -001f74f0: 5f66 6163 7473 3a0a 2020 2020 6d61 6e61  _facts:.    mana
│ │ │ -001f7500: 6765 723a 2061 7574 6f0a 2020 7461 6773  ger: auto.  tags
│ │ │ -001f7510: 3a0a 2020 2d20 6469 7361 626c 655f 7374  :.  - disable_st
│ │ │ -001f7520: 7261 7465 6779 0a20 202d 206c 6f77 5f63  rategy.  - low_c
│ │ │ -001f7530: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f  omplexity.  - lo
│ │ │ -001f7540: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ -001f7550: 206c 6f77 5f73 6576 6572 6974 790a 2020   low_severity.  
│ │ │ -001f7560: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ -001f7570: 6564 0a20 202d 2070 6163 6b61 6765 5f73  ed.  - package_s
│ │ │ -001f7580: 6574 726f 7562 6c65 7368 6f6f 745f 7265  etroubleshoot_re
│ │ │ -001f7590: 6d6f 7665 640a 0a2d 206e 616d 653a 2027  moved..- name: '
│ │ │ -001f75a0: 556e 696e 7374 616c 6c20 7365 7472 6f75  Uninstall setrou
│ │ │ -001f75b0: 626c 6573 686f 6f74 2050 6163 6b61 6765  bleshoot Package
│ │ │ -001f75c0: 3a20 456e 7375 7265 2073 6574 726f 7562  : Ensure setroub
│ │ │ -001f75d0: 6c65 7368 6f6f 7420 6973 2072 656d 6f76  leshoot is remov
│ │ │ -001f75e0: 6564 270a 2020 616e 7369 626c 652e 6275  ed'.  ansible.bu
│ │ │ -001f75f0: 696c 7469 6e2e 7061 636b 6167 653a 0a20  iltin.package:. 
│ │ │ -001f7600: 2020 206e 616d 653a 2073 6574 726f 7562     name: setroub
│ │ │ -001f7610: 6c65 7368 6f6f 740a 2020 2020 7374 6174  leshoot.    stat
│ │ │ -001f7620: 653a 2061 6273 656e 740a 2020 7768 656e  e: absent.  when
│ │ │ -001f7630: 3a20 2722 6b65 726e 656c 2220 696e 2061  : '"kernel" in a
│ │ │ -001f7640: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001f7650: 6b61 6765 7327 0a20 2074 6167 733a 0a20  kages'.  tags:. 
│ │ │ -001f7660: 202d 2064 6973 6162 6c65 5f73 7472 6174   - disable_strat
│ │ │ -001f7670: 6567 790a 2020 2d20 6c6f 775f 636f 6d70  egy.  - low_comp
│ │ │ -001f7680: 6c65 7869 7479 0a20 202d 206c 6f77 5f64  lexity.  - low_d
│ │ │ -001f7690: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ -001f76a0: 775f 7365 7665 7269 7479 0a20 202d 206e  w_severity.  - n
│ │ │ -001f76b0: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ -001f76c0: 2020 2d20 7061 636b 6167 655f 7365 7472    - package_setr
│ │ │ -001f76d0: 6f75 626c 6573 686f 6f74 5f72 656d 6f76  oubleshoot_remov
│ │ │ -001f76e0: 6564 0a3c 2f63 6f64 653e 3c2f 7072 653e  ed.
│ │ │ -001f76f0: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation S │ │ │ -001f77a0: 6865 6c6c 2073 6372 6970 7420 e287 b23c hell script ...< │ │ │ -001f77b0: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
< │ │ │ -001f7880: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -001f7890: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

│ │ │ -001f78e0: 2320 5265 6d65 6469 6174 696f 6e20 6973  # Remediation is
│ │ │ -001f78f0: 2061 7070 6c69 6361 626c 6520 6f6e 6c79   applicable only
│ │ │ -001f7900: 2069 6e20 6365 7274 6169 6e20 706c 6174   in certain plat
│ │ │ -001f7910: 666f 726d 730a 6966 2072 706d 202d 2d71  forms.if rpm --q
│ │ │ -001f7920: 7569 6574 202d 7120 6b65 726e 656c 3b20  uiet -q kernel; 
│ │ │ -001f7930: 7468 656e 0a0a 2320 4341 5554 494f 4e3a  then..# CAUTION:
│ │ │ -001f7940: 2054 6869 7320 7265 6d65 6469 6174 696f   This remediatio
│ │ │ -001f7950: 6e20 7363 7269 7074 2077 696c 6c20 7265  n script will re
│ │ │ -001f7960: 6d6f 7665 2073 6574 726f 7562 6c65 7368  move setroublesh
│ │ │ -001f7970: 6f6f 740a 2320 6672 6f6d 2074 6865 2073  oot.# from the s
│ │ │ -001f7980: 7973 7465 6d2c 2061 6e64 206d 6179 2072  ystem, and may r
│ │ │ -001f7990: 656d 6f76 6520 616e 7920 7061 636b 6167  emove any packag
│ │ │ -001f79a0: 6573 0a23 2074 6861 7420 6465 7065 6e64  es.# that depend
│ │ │ -001f79b0: 206f 6e20 7365 7472 6f75 626c 6573 686f   on setroublesho
│ │ │ -001f79c0: 6f74 2e20 4578 6563 7574 6520 7468 6973  ot. Execute this
│ │ │ -001f79d0: 0a23 2072 656d 6564 6961 7469 6f6e 2041  .# remediation A
│ │ │ -001f79e0: 4654 4552 2074 6573 7469 6e67 206f 6e20  FTER testing on 
│ │ │ -001f79f0: 6120 6e6f 6e2d 7072 6f64 7563 7469 6f6e  a non-production
│ │ │ -001f7a00: 0a23 2073 7973 7465 6d21 0a0a 0a69 6620  .# system!...if 
│ │ │ -001f7a10: 7270 6d20 2d71 202d 2d71 7569 6574 2022  rpm -q --quiet "
│ │ │ -001f7a20: 7365 7472 6f75 626c 6573 686f 6f74 2220  setroubleshoot" 
│ │ │ -001f7a30: 3b20 7468 656e 0a64 6e66 2072 656d 6f76  ; then.dnf remov
│ │ │ -001f7a40: 6520 2d79 202d 2d6e 6f61 7574 6f72 656d  e -y --noautorem
│ │ │ -001f7a50: 6f76 6520 2273 6574 726f 7562 6c65 7368  ove "setroublesh
│ │ │ -001f7a60: 6f6f 7422 0a66 690a 0a65 6c73 650a 2020  oot".fi..else.  
│ │ │ -001f7a70: 2020 2667 743b 2661 6d70 3b32 2065 6368    >&2 ech
│ │ │ -001f7a80: 6f20 2752 656d 6564 6961 7469 6f6e 2069  o 'Remediation i
│ │ │ -001f7a90: 7320 6e6f 7420 6170 706c 6963 6162 6c65  s not applicable
│ │ │ -001f7aa0: 2c20 6e6f 7468 696e 6720 7761 7320 646f  , nothing was do
│ │ │ -001f7ab0: 6e65 270a 6669 0a3c 2f63 6f64 653e 3c2f  ne'.fi.
│ │ │ +001f6f70: 3c74 723e 3c74 683e 436f 6d70 6c65 7869
< │ │ │ +001f7000: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ +001f7010: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
Complexity:low
Disrup │ │ │ -001f7860: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -001f7870: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -001f78b0: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ -001f78c0: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Complexi │ │ │ +001f6f80: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +001f6f90: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Disruption:low
Reboot │ │ │ +001f6fd0: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +001f6fe0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Strategy:
- name: G
│ │ │ +001f7030: 6174 6865 7220 7468 6520 7061 636b 6167  ather the packag
│ │ │ +001f7040: 6520 6661 6374 730a 2020 7061 636b 6167  e facts.  packag
│ │ │ +001f7050: 655f 6661 6374 733a 0a20 2020 206d 616e  e_facts:.    man
│ │ │ +001f7060: 6167 6572 3a20 6175 746f 0a20 2074 6167  ager: auto.  tag
│ │ │ +001f7070: 733a 0a20 202d 2064 6973 6162 6c65 5f73  s:.  - disable_s
│ │ │ +001f7080: 7472 6174 6567 790a 2020 2d20 6c6f 775f  trategy.  - low_
│ │ │ +001f7090: 636f 6d70 6c65 7869 7479 0a20 202d 206c  complexity.  - l
│ │ │ +001f70a0: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ +001f70b0: 2d20 6c6f 775f 7365 7665 7269 7479 0a20  - low_severity. 
│ │ │ +001f70c0: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ +001f70d0: 6465 640a 2020 2d20 7061 636b 6167 655f  ded.  - package_
│ │ │ +001f70e0: 7365 7472 6f75 626c 6573 686f 6f74 5f72  setroubleshoot_r
│ │ │ +001f70f0: 656d 6f76 6564 0a0a 2d20 6e61 6d65 3a20  emoved..- name: 
│ │ │ +001f7100: 2755 6e69 6e73 7461 6c6c 2073 6574 726f  'Uninstall setro
│ │ │ +001f7110: 7562 6c65 7368 6f6f 7420 5061 636b 6167  ubleshoot Packag
│ │ │ +001f7120: 653a 2045 6e73 7572 6520 7365 7472 6f75  e: Ensure setrou
│ │ │ +001f7130: 626c 6573 686f 6f74 2069 7320 7265 6d6f  bleshoot is remo
│ │ │ +001f7140: 7665 6427 0a20 2061 6e73 6962 6c65 2e62  ved'.  ansible.b
│ │ │ +001f7150: 7569 6c74 696e 2e70 6163 6b61 6765 3a0a  uiltin.package:.
│ │ │ +001f7160: 2020 2020 6e61 6d65 3a20 7365 7472 6f75      name: setrou
│ │ │ +001f7170: 626c 6573 686f 6f74 0a20 2020 2073 7461  bleshoot.    sta
│ │ │ +001f7180: 7465 3a20 6162 7365 6e74 0a20 2077 6865  te: absent.  whe
│ │ │ +001f7190: 6e3a 2027 226b 6572 6e65 6c22 2069 6e20  n: '"kernel" in 
│ │ │ +001f71a0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001f71b0: 636b 6167 6573 270a 2020 7461 6773 3a0a  ckages'.  tags:.
│ │ │ +001f71c0: 2020 2d20 6469 7361 626c 655f 7374 7261    - disable_stra
│ │ │ +001f71d0: 7465 6779 0a20 202d 206c 6f77 5f63 6f6d  tegy.  - low_com
│ │ │ +001f71e0: 706c 6578 6974 790a 2020 2d20 6c6f 775f  plexity.  - low_
│ │ │ +001f71f0: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ +001f7200: 6f77 5f73 6576 6572 6974 790a 2020 2d20  ow_severity.  - 
│ │ │ +001f7210: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ +001f7220: 0a20 202d 2070 6163 6b61 6765 5f73 6574  .  - package_set
│ │ │ +001f7230: 726f 7562 6c65 7368 6f6f 745f 7265 6d6f  roubleshoot_remo
│ │ │ +001f7240: 7665 640a 3c2f 636f 6465 3e3c 2f70 7265  ved.
Remediation │ │ │ +001f7300: 5075 7070 6574 2073 6e69 7070 6574 20e2 Puppet snippet . │ │ │ +001f7310: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ +001f7390: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +001f73b0: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ +001f7400: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ +001f7430: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ +001f73a0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +001f73c0: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ +001f7410: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ +001f7420: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
.include remo
│ │ │ +001f7450: 7665 5f73 6574 726f 7562 6c65 7368 6f6f  ve_setroubleshoo
│ │ │ +001f7460: 740a 0a63 6c61 7373 2072 656d 6f76 655f  t..class remove_
│ │ │ +001f7470: 7365 7472 6f75 626c 6573 686f 6f74 207b  setroubleshoot {
│ │ │ +001f7480: 0a20 2070 6163 6b61 6765 207b 2027 7365  .  package { 'se
│ │ │ +001f7490: 7472 6f75 626c 6573 686f 6f74 273a 0a20  troubleshoot':. 
│ │ │ +001f74a0: 2020 2065 6e73 7572 6520 3d26 6774 3b20     ensure => 
│ │ │ +001f74b0: 2770 7572 6765 6427 2c0a 2020 7d0a 7d0a  'purged',.  }.}.
│ │ │ +001f74c0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ +001f7570: 5265 6d65 6469 6174 696f 6e20 5368 656c Remediation Shel │ │ │ +001f7580: 6c20 7363 7269 7074 20e2 87b2 3c2f 613e l script ... │ │ │ +001f7590: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ +001f7630: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ +001f7680: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
# R
│ │ │ +001f76c0: 656d 6564 6961 7469 6f6e 2069 7320 6170  emediation is ap
│ │ │ +001f76d0: 706c 6963 6162 6c65 206f 6e6c 7920 696e  plicable only in
│ │ │ +001f76e0: 2063 6572 7461 696e 2070 6c61 7466 6f72   certain platfor
│ │ │ +001f76f0: 6d73 0a69 6620 7270 6d20 2d2d 7175 6965  ms.if rpm --quie
│ │ │ +001f7700: 7420 2d71 206b 6572 6e65 6c3b 2074 6865  t -q kernel; the
│ │ │ +001f7710: 6e0a 0a23 2043 4155 5449 4f4e 3a20 5468  n..# CAUTION: Th
│ │ │ +001f7720: 6973 2072 656d 6564 6961 7469 6f6e 2073  is remediation s
│ │ │ +001f7730: 6372 6970 7420 7769 6c6c 2072 656d 6f76  cript will remov
│ │ │ +001f7740: 6520 7365 7472 6f75 626c 6573 686f 6f74  e setroubleshoot
│ │ │ +001f7750: 0a23 2066 726f 6d20 7468 6520 7379 7374  .# from the syst
│ │ │ +001f7760: 656d 2c20 616e 6420 6d61 7920 7265 6d6f  em, and may remo
│ │ │ +001f7770: 7665 2061 6e79 2070 6163 6b61 6765 730a  ve any packages.
│ │ │ +001f7780: 2320 7468 6174 2064 6570 656e 6420 6f6e  # that depend on
│ │ │ +001f7790: 2073 6574 726f 7562 6c65 7368 6f6f 742e   setroubleshoot.
│ │ │ +001f77a0: 2045 7865 6375 7465 2074 6869 730a 2320   Execute this.# 
│ │ │ +001f77b0: 7265 6d65 6469 6174 696f 6e20 4146 5445  remediation AFTE
│ │ │ +001f77c0: 5220 7465 7374 696e 6720 6f6e 2061 206e  R testing on a n
│ │ │ +001f77d0: 6f6e 2d70 726f 6475 6374 696f 6e0a 2320  on-production.# 
│ │ │ +001f77e0: 7379 7374 656d 210a 0a0a 6966 2072 706d  system!...if rpm
│ │ │ +001f77f0: 202d 7120 2d2d 7175 6965 7420 2273 6574   -q --quiet "set
│ │ │ +001f7800: 726f 7562 6c65 7368 6f6f 7422 203b 2074  roubleshoot" ; t
│ │ │ +001f7810: 6865 6e0a 646e 6620 7265 6d6f 7665 202d  hen.dnf remove -
│ │ │ +001f7820: 7920 2d2d 6e6f 6175 746f 7265 6d6f 7665  y --noautoremove
│ │ │ +001f7830: 2022 7365 7472 6f75 626c 6573 686f 6f74   "setroubleshoot
│ │ │ +001f7840: 220a 6669 0a0a 656c 7365 0a20 2020 2026  ".fi..else.    &
│ │ │ +001f7850: 6774 3b26 616d 703b 3220 6563 686f 2027  gt;&2 echo '
│ │ │ +001f7860: 5265 6d65 6469 6174 696f 6e20 6973 206e  Remediation is n
│ │ │ +001f7870: 6f74 2061 7070 6c69 6361 626c 652c 206e  ot applicable, n
│ │ │ +001f7880: 6f74 6869 6e67 2077 6173 2064 6f6e 6527  othing was done'
│ │ │ +001f7890: 0a66 690a 3c2f 636f 6465 3e3c 2f70 7265  .fi.
Remediation │ │ │ +001f7950: 416e 6163 6f6e 6461 2073 6e69 7070 6574 Anaconda snippet │ │ │ +001f7960: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
< │ │ │ +001f7a20: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +001f7a30: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c
Co │ │ │ +001f7610: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +001f7640: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +001f7660: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +001f7670: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +001f7690: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ +001f76a0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Complexity │ │ │ +001f79f0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
D │ │ │ +001f7a10: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:
Reboot:< │ │ │ +001f7a40: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>false
S │ │ │ +001f7a60: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:disable
<
│ │ │ +001f7a90: 636f 6465 3e0a 0a70 6163 6b61 6765 202d  code>..package -
│ │ │ +001f7aa0: 2d72 656d 6f76 653d 7365 7472 6f75 626c  -remove=setroubl
│ │ │ +001f7ab0: 6573 686f 6f74 0a3c 2f63 6f64 653e 3c2f  eshoot.
│ │ │ 001f7ad0: 3c2f 7464 3e3c 2f74 723e 3c2f 7462 6f64 < │ │ │ 001f7af0: 2f74 723e 3c74 7220 6461 7461 2d74 742d /tr>Re │ │ │ -00203dd0: 6d65 6469 6174 696f 6e20 416e 6163 6f6e mediation Anacon │ │ │ -00203de0: 6461 2073 6e69 7070 6574 20e2 87b2 3c2f da snippet ...
│ │ │ -00203e80: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
.
│ │ │ -00203f20: 0a70 6163 6b61 6765 202d 2d72 656d 6f76  .package --remov
│ │ │ -00203f30: 653d 6176 6168 690a 3c2f 636f 6465 3e3c  e=avahi.<
│ │ │ -00203f40: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>Remediat
│ │ │ -00203ff0: 696f 6e20 5075 7070 6574 2073 6e69 7070  ion Puppet snipp
│ │ │ -00204000: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64  et ...
│ │ │ -00204080: 3c74 723e 3c74 683e 436f 6d70 6c65 7869
< │ │ │ -00204110: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ -00204120: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
│ │ │ -00203e70: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -00203ea0: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -00203eb0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -00203ef0: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ -00203f00: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Complexi │ │ │ -00204090: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -002040a0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Disruption:low
Reboot │ │ │ -002040e0: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -002040f0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Strategy:
.include 
│ │ │ -00204140: 7265 6d6f 7665 5f61 7661 6869 0a0a 636c  remove_avahi..cl
│ │ │ -00204150: 6173 7320 7265 6d6f 7665 5f61 7661 6869  ass remove_avahi
│ │ │ -00204160: 207b 0a20 2070 6163 6b61 6765 207b 2027   {.  package { '
│ │ │ -00204170: 6176 6168 6927 3a0a 2020 2020 656e 7375  avahi':.    ensu
│ │ │ -00204180: 7265 203d 2667 743b 2027 7075 7267 6564  re => 'purged
│ │ │ -00204190: 272c 0a20 207d 0a7d 0a3c 2f63 6f64 653e  ',.  }.}.
│ │ │ -002041a0: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ -00204250: 7469 6f6e 2041 6e73 6962 6c65 2073 6e69 tion Ansible sni │ │ │ -00204260: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -00204270: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -002042a0: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ -00204310: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ -00204330: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ -00204360: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
Comple │ │ │ -002042f0: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ -00204300: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ -00204340: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ -00204350: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
disable

- name: │ │ │ -002043a0: 2027 556e 696e 7374 616c 6c20 6176 6168 'Uninstall avah │ │ │ -002043b0: 6920 5365 7276 6572 2050 6163 6b61 6765 i Server Package │ │ │ -002043c0: 3a20 456e 7375 7265 2061 7661 6869 2069 : Ensure avahi i │ │ │ -002043d0: 7320 7265 6d6f 7665 6427 0a20 2061 6e73 s removed'. ans │ │ │ -002043e0: 6962 6c65 2e62 7569 6c74 696e 2e70 6163 ible.builtin.pac │ │ │ -002043f0: 6b61 6765 3a0a 2020 2020 6e61 6d65 3a20 kage:. name: │ │ │ -00204400: 6176 6168 690a 2020 2020 7374 6174 653a avahi. state: │ │ │ -00204410: 2061 6273 656e 740a 2020 7461 6773 3a0a absent. tags:. │ │ │ -00204420: 2020 2d20 4e49 5354 2d38 3030 2d35 332d - NIST-800-53- │ │ │ -00204430: 434d 2d36 2861 290a 2020 2d20 4e49 5354 CM-6(a). - NIST │ │ │ -00204440: 2d38 3030 2d35 332d 434d 2d37 2861 290a -800-53-CM-7(a). │ │ │ -00204450: 2020 2d20 4e49 5354 2d38 3030 2d35 332d - NIST-800-53- │ │ │ -00204460: 434d 2d37 2862 290a 2020 2d20 6469 7361 CM-7(b). - disa │ │ │ -00204470: 626c 655f 7374 7261 7465 6779 0a20 202d ble_strategy. - │ │ │ -00204480: 206c 6f77 5f63 6f6d 706c 6578 6974 790a low_complexity. │ │ │ -00204490: 2020 2d20 6c6f 775f 6469 7372 7570 7469 - low_disrupti │ │ │ -002044a0: 6f6e 0a20 202d 206d 6564 6975 6d5f 7365 on. - medium_se │ │ │ -002044b0: 7665 7269 7479 0a20 202d 206e 6f5f 7265 verity. - no_re │ │ │ -002044c0: 626f 6f74 5f6e 6565 6465 640a 2020 2d20 boot_needed. - │ │ │ -002044d0: 7061 636b 6167 655f 6176 6168 695f 7265 package_avahi_re │ │ │ -002044e0: 6d6f 7665 640a 3c2f 636f 6465 3e3c 2f70 moved.

Remediatio │ │ │ -002045a0: 6e20 5368 656c 6c20 7363 7269 7074 20e2 n Shell script . │ │ │ -002045b0: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ -00204630: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -00204650: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ -002046a0: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ -002046d0: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ -00204640: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ -00204660: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ -002046b0: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ -002046c0: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
.# CAUTION: T
│ │ │ -002046f0: 6869 7320 7265 6d65 6469 6174 696f 6e20  his remediation 
│ │ │ -00204700: 7363 7269 7074 2077 696c 6c20 7265 6d6f  script will remo
│ │ │ -00204710: 7665 2061 7661 6869 0a23 2066 726f 6d20  ve avahi.# from 
│ │ │ -00204720: 7468 6520 7379 7374 656d 2c20 616e 6420  the system, and 
│ │ │ -00204730: 6d61 7920 7265 6d6f 7665 2061 6e79 2070  may remove any p
│ │ │ -00204740: 6163 6b61 6765 730a 2320 7468 6174 2064  ackages.# that d
│ │ │ -00204750: 6570 656e 6420 6f6e 2061 7661 6869 2e20  epend on avahi. 
│ │ │ -00204760: 4578 6563 7574 6520 7468 6973 0a23 2072  Execute this.# r
│ │ │ -00204770: 656d 6564 6961 7469 6f6e 2041 4654 4552  emediation AFTER
│ │ │ -00204780: 2074 6573 7469 6e67 206f 6e20 6120 6e6f   testing on a no
│ │ │ -00204790: 6e2d 7072 6f64 7563 7469 6f6e 0a23 2073  n-production.# s
│ │ │ -002047a0: 7973 7465 6d21 0a0a 0a69 6620 7270 6d20  ystem!...if rpm 
│ │ │ -002047b0: 2d71 202d 2d71 7569 6574 2022 6176 6168  -q --quiet "avah
│ │ │ -002047c0: 6922 203b 2074 6865 6e0a 646e 6620 7265  i" ; then.dnf re
│ │ │ -002047d0: 6d6f 7665 202d 7920 2d2d 6e6f 6175 746f  move -y --noauto
│ │ │ -002047e0: 7265 6d6f 7665 2022 6176 6168 6922 0a66  remove "avahi".f
│ │ │ +00203dd0: 6d65 6469 6174 696f 6e20 416e 7369 626c  mediation Ansibl
│ │ │ +00203de0: 6520 736e 6970 7065 7420 e287 b23c 2f61  e snippet ...
< │ │ │ +00203e80: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +00203e90: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ +00203ee0: 3c74 723e 3c74 683e 5374 7261 7465 6779
- 
│ │ │ +00203f20: 6e61 6d65 3a20 2755 6e69 6e73 7461 6c6c  name: 'Uninstall
│ │ │ +00203f30: 2061 7661 6869 2053 6572 7665 7220 5061   avahi Server Pa
│ │ │ +00203f40: 636b 6167 653a 2045 6e73 7572 6520 6176  ckage: Ensure av
│ │ │ +00203f50: 6168 6920 6973 2072 656d 6f76 6564 270a  ahi is removed'.
│ │ │ +00203f60: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ +00203f70: 6e2e 7061 636b 6167 653a 0a20 2020 206e  n.package:.    n
│ │ │ +00203f80: 616d 653a 2061 7661 6869 0a20 2020 2073  ame: avahi.    s
│ │ │ +00203f90: 7461 7465 3a20 6162 7365 6e74 0a20 2074  tate: absent.  t
│ │ │ +00203fa0: 6167 733a 0a20 202d 204e 4953 542d 3830  ags:.  - NIST-80
│ │ │ +00203fb0: 302d 3533 2d43 4d2d 3628 6129 0a20 202d  0-53-CM-6(a).  -
│ │ │ +00203fc0: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +00203fd0: 3728 6129 0a20 202d 204e 4953 542d 3830  7(a).  - NIST-80
│ │ │ +00203fe0: 302d 3533 2d43 4d2d 3728 6229 0a20 202d  0-53-CM-7(b).  -
│ │ │ +00203ff0: 2064 6973 6162 6c65 5f73 7472 6174 6567   disable_strateg
│ │ │ +00204000: 790a 2020 2d20 6c6f 775f 636f 6d70 6c65  y.  - low_comple
│ │ │ +00204010: 7869 7479 0a20 202d 206c 6f77 5f64 6973  xity.  - low_dis
│ │ │ +00204020: 7275 7074 696f 6e0a 2020 2d20 6d65 6469  ruption.  - medi
│ │ │ +00204030: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ +00204040: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ +00204050: 0a20 202d 2070 6163 6b61 6765 5f61 7661  .  - package_ava
│ │ │ +00204060: 6869 5f72 656d 6f76 6564 0a3c 2f63 6f64  hi_removed.
Remed │ │ │ +00204120: 6961 7469 6f6e 2050 7570 7065 7420 736e iation Puppet sn │ │ │ +00204130: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
C │ │ │ +00203e70: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ +00203ea0: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ +00203eb0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ +00203ef0: 3a3c 2f74 683e 3c74 643e 6469 7361 626c :disabl │ │ │ +00203f00: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
│ │ │ +002041e0: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ +00204200: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ +00204230: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ +002041c0: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ +002041d0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ +002041f0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ +00204210: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ +00204220: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:disable
< │ │ │ +00204260: 7072 653e 3c63 6f64 653e 0a69 6e63 6c75 pre>.inclu │ │ │ +00204270: 6465 2072 656d 6f76 655f 6176 6168 690a de remove_avahi. │ │ │ +00204280: 0a63 6c61 7373 2072 656d 6f76 655f 6176 .class remove_av │ │ │ +00204290: 6168 6920 7b0a 2020 7061 636b 6167 6520 ahi {. package │ │ │ +002042a0: 7b20 2761 7661 6869 273a 0a20 2020 2065 { 'avahi':. e │ │ │ +002042b0: 6e73 7572 6520 3d26 6774 3b20 2770 7572 nsure => 'pur │ │ │ +002042c0: 6765 6427 2c0a 2020 7d0a 7d0a 3c2f 636f ged',. }.}.
< │ │ │ +002042e0: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ +002042f0: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ +00204300: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ +00204310: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ +00204320: 6436 3037 2220 7461 6269 6e64 6578 3d22 d607" tabindex=" │ │ │ +00204330: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ +00204340: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ +00204350: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ +00204360: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ +00204370: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ +00204380: 6469 6174 696f 6e20 5368 656c 6c20 7363 diation Shell sc │ │ │ +00204390: 7269 7074 20e2 87b2 3c2f 613e 3c62 723e ript ...
│ │ │ +002043a0: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ +002043d0: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ +00204440: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ +00204460: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ +00204490: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
Comple │ │ │ +00204420: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ +00204430: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ +00204470: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +00204480: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
disable

.# CAUT │ │ │ +002044d0: 494f 4e3a 2054 6869 7320 7265 6d65 6469 ION: This remedi │ │ │ +002044e0: 6174 696f 6e20 7363 7269 7074 2077 696c ation script wil │ │ │ +002044f0: 6c20 7265 6d6f 7665 2061 7661 6869 0a23 l remove avahi.# │ │ │ +00204500: 2066 726f 6d20 7468 6520 7379 7374 656d from the system │ │ │ +00204510: 2c20 616e 6420 6d61 7920 7265 6d6f 7665 , and may remove │ │ │ +00204520: 2061 6e79 2070 6163 6b61 6765 730a 2320 any packages.# │ │ │ +00204530: 7468 6174 2064 6570 656e 6420 6f6e 2061 that depend on a │ │ │ +00204540: 7661 6869 2e20 4578 6563 7574 6520 7468 vahi. Execute th │ │ │ +00204550: 6973 0a23 2072 656d 6564 6961 7469 6f6e is.# remediation │ │ │ +00204560: 2041 4654 4552 2074 6573 7469 6e67 206f AFTER testing o │ │ │ +00204570: 6e20 6120 6e6f 6e2d 7072 6f64 7563 7469 n a non-producti │ │ │ +00204580: 6f6e 0a23 2073 7973 7465 6d21 0a0a 0a69 on.# system!...i │ │ │ +00204590: 6620 7270 6d20 2d71 202d 2d71 7569 6574 f rpm -q --quiet │ │ │ +002045a0: 2022 6176 6168 6922 203b 2074 6865 6e0a "avahi" ; then. │ │ │ +002045b0: 646e 6620 7265 6d6f 7665 202d 7920 2d2d dnf remove -y -- │ │ │ +002045c0: 6e6f 6175 746f 7265 6d6f 7665 2022 6176 noautoremove "av │ │ │ +002045d0: 6168 6922 0a66 690a 3c2f 636f 6465 3e3c ahi".fi.< │ │ │ +002045e0: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c /pre>

Remediat │ │ │ +00204690: 696f 6e20 416e 6163 6f6e 6461 2073 6e69 ion Anaconda sni │ │ │ +002046a0: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ +002046b0: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ +002046e0: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ +00204750: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ +00204770: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ +002047a0: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
Comple │ │ │ +00204730: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ +00204740: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ +00204780: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +00204790: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
disable

..packa │ │ │ +002047e0: 6765 202d 2d72 656d 6f76 653d 6176 6168 ge --remove=avah │ │ │ 002047f0: 690a 3c2f 636f 6465 3e3c 2f70 7265 3e3c i.< │ │ │ 00204800: 2f64 6976 3e3c 2f64 6976 3e3c 2f74 643e /div>

│ │ │ 00204810: 3c2f 7472 3e3c 2f74 626f 6479 3e3c 2f74 < │ │ │ 00204830: 7472 2064 6174 612d 7474 2d69 643d 2263 tr data-tt-id="c │ │ │ 00204840: 6869 6c64 7265 6e2d 7863 6364 665f 6f72 hildren-xccdf_or │ │ │ 00204850: 672e 7373 6770 726f 6a65 6374 2e63 6f6e g.ssgproject.con │ │ │ @@ -135378,147 +135378,147 @@ │ │ │ 00210d10: 7365 2220 6461 7461 2d74 6172 6765 743d se" data-target= │ │ │ 00210d20: 2223 6964 3633 3722 2074 6162 696e 6465 "#id637" tabinde │ │ │ 00210d30: 783d 2230 2220 726f 6c65 3d22 6275 7474 x="0" role="butt │ │ │ 00210d40: 6f6e 2220 6172 6961 2d65 7870 616e 6465 on" aria-expande │ │ │ 00210d50: 643d 2266 616c 7365 2220 7469 746c 653d d="false" title= │ │ │ 00210d60: 2241 6374 6976 6174 6520 746f 2072 6576 "Activate to rev │ │ │ 00210d70: 6561 6c22 2068 7265 663d 2223 2122 3e52 eal" href="#!">R │ │ │ -00210d80: 656d 6564 6961 7469 6f6e 204f 5342 7569 emediation OSBui │ │ │ -00210d90: 6c64 2042 6c75 6570 7269 6e74 2073 6e69 ld Blueprint sni │ │ │ -00210da0: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -00210db0: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -00210de0: 3c70 7265 3e3c 636f 6465 3e0a 5b63 7573
.[cus
│ │ │ -00210df0: 746f 6d69 7a61 7469 6f6e 732e 7365 7276  tomizations.serv
│ │ │ -00210e00: 6963 6573 5d0a 656e 6162 6c65 6420 3d20  ices].enabled = 
│ │ │ -00210e10: 5b22 6372 6f6e 6422 5d0a 3c2f 636f 6465  ["crond"].
Remedi │ │ │ -00210ed0: 6174 696f 6e20 5075 7070 6574 2073 6e69 ation Puppet sni │ │ │ -00210ee0: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -00210ef0: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -00210f20: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ -00210f90: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ -00210fb0: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ -00210fe0: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy: │ │ │ -00211000: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
Comple │ │ │ -00210f70: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ -00210f80: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ -00210fc0: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ -00210fd0: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
enable
include │ │ │ -00211020: 656e 6162 6c65 5f63 726f 6e64 0a0a 636c enable_crond..cl │ │ │ -00211030: 6173 7320 656e 6162 6c65 5f63 726f 6e64 ass enable_crond │ │ │ -00211040: 207b 0a20 2073 6572 7669 6365 207b 2763 {. service {'c │ │ │ -00211050: 726f 6e64 273a 0a20 2020 2065 6e61 626c rond':. enabl │ │ │ -00211060: 6520 3d26 6774 3b20 7472 7565 2c0a 2020 e => true,. │ │ │ -00211070: 2020 656e 7375 7265 203d 2667 743b 2027 ensure => ' │ │ │ -00211080: 7275 6e6e 696e 6727 2c0a 2020 7d0a 7d0a running',. }.}. │ │ │ -00211090: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64 │ │ │ -00211140: 5265 6d65 6469 6174 696f 6e20 416e 7369 Remediation Ansi │ │ │ -00211150: 626c 6520 736e 6970 7065 7420 e287 b23c ble snippet ...< │ │ │ -00211160: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
< │ │ │ -00211230: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -00211240: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
-
│ │ │ -00211290: 206e 616d 653a 2047 6174 6865 7220 7468   name: Gather th
│ │ │ -002112a0: 6520 7061 636b 6167 6520 6661 6374 730a  e package facts.
│ │ │ -002112b0: 2020 7061 636b 6167 655f 6661 6374 733a    package_facts:
│ │ │ -002112c0: 0a20 2020 206d 616e 6167 6572 3a20 6175  .    manager: au
│ │ │ -002112d0: 746f 0a20 2074 6167 733a 0a20 202d 204e  to.  tags:.  - N
│ │ │ -002112e0: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ -002112f0: 6129 0a20 202d 2065 6e61 626c 655f 7374  a).  - enable_st
│ │ │ -00211300: 7261 7465 6779 0a20 202d 206c 6f77 5f63  rategy.  - low_c
│ │ │ -00211310: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f  omplexity.  - lo
│ │ │ -00211320: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ -00211330: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ -00211340: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ -00211350: 6565 6465 640a 2020 2d20 7365 7276 6963  eeded.  - servic
│ │ │ -00211360: 655f 6372 6f6e 645f 656e 6162 6c65 640a  e_crond_enabled.
│ │ │ -00211370: 0a2d 206e 616d 653a 2045 6e61 626c 6520  .- name: Enable 
│ │ │ -00211380: 6372 6f6e 2053 6572 7669 6365 202d 2045  cron Service - E
│ │ │ -00211390: 6e61 626c 6520 7365 7276 6963 6520 6372  nable service cr
│ │ │ -002113a0: 6f6e 640a 2020 626c 6f63 6b3a 0a0a 2020  ond.  block:..  
│ │ │ -002113b0: 2d20 6e61 6d65 3a20 4761 7468 6572 2074  - name: Gather t
│ │ │ -002113c0: 6865 2070 6163 6b61 6765 2066 6163 7473  he package facts
│ │ │ -002113d0: 0a20 2020 2061 6e73 6962 6c65 2e62 7569  .    ansible.bui
│ │ │ -002113e0: 6c74 696e 2e70 6163 6b61 6765 5f66 6163  ltin.package_fac
│ │ │ -002113f0: 7473 3a0a 2020 2020 2020 6d61 6e61 6765  ts:.      manage
│ │ │ -00211400: 723a 2061 7574 6f0a 0a20 202d 206e 616d  r: auto..  - nam
│ │ │ -00211410: 653a 2045 6e61 626c 6520 6372 6f6e 2053  e: Enable cron S
│ │ │ -00211420: 6572 7669 6365 202d 2045 6e61 626c 6520  ervice - Enable 
│ │ │ -00211430: 5365 7276 6963 6520 6372 6f6e 640a 2020  Service crond.  
│ │ │ -00211440: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ -00211450: 6e2e 7379 7374 656d 643a 0a20 2020 2020  n.systemd:.     
│ │ │ -00211460: 206e 616d 653a 2063 726f 6e64 0a20 2020   name: crond.   
│ │ │ -00211470: 2020 2065 6e61 626c 6564 3a20 7472 7565     enabled: true
│ │ │ -00211480: 0a20 2020 2020 2073 7461 7465 3a20 7374  .      state: st
│ │ │ -00211490: 6172 7465 640a 2020 2020 2020 6d61 736b  arted.      mask
│ │ │ -002114a0: 6564 3a20 6661 6c73 650a 2020 2020 7768  ed: false.    wh
│ │ │ -002114b0: 656e 3a0a 2020 2020 2d20 2722 6372 6f6e  en:.    - '"cron
│ │ │ -002114c0: 6965 2220 696e 2061 6e73 6962 6c65 5f66  ie" in ansible_f
│ │ │ -002114d0: 6163 7473 2e70 6163 6b61 6765 7327 0a20  acts.packages'. 
│ │ │ -002114e0: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ -002114f0: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ -00211500: 202d 2065 6e61 626c 655f 7374 7261 7465   - enable_strate
│ │ │ -00211510: 6779 0a20 202d 206c 6f77 5f63 6f6d 706c  gy.  - low_compl
│ │ │ -00211520: 6578 6974 790a 2020 2d20 6c6f 775f 6469  exity.  - low_di
│ │ │ -00211530: 7372 7570 7469 6f6e 0a20 202d 206d 6564  sruption.  - med
│ │ │ -00211540: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ -00211550: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ -00211560: 640a 2020 2d20 7365 7276 6963 655f 6372  d.  - service_cr
│ │ │ -00211570: 6f6e 645f 656e 6162 6c65 640a 2020 2d20  ond_enabled.  - 
│ │ │ -00211580: 7370 6563 6961 6c5f 7365 7276 6963 655f  special_service_
│ │ │ -00211590: 626c 6f63 6b0a 2020 7768 656e 3a20 2722  block.  when: '"
│ │ │ -002115a0: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ -002115b0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -002115c0: 7327 0a3c 2f63 6f64 653e 3c2f 7072 653e  s'.
│ │ │ +00210d80: 656d 6564 6961 7469 6f6e 2041 6e73 6962 emediation Ansib │ │ │ +00210d90: 6c65 2073 6e69 7070 6574 20e2 87b2 3c2f le snippet ...
Complexity:low
Disrup │ │ │ -00211210: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -00211220: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -00211260: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ -00211270: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
│ │ │ +00210e30: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
- 
│ │ │ +00210ed0: 6e61 6d65 3a20 4761 7468 6572 2074 6865  name: Gather the
│ │ │ +00210ee0: 2070 6163 6b61 6765 2066 6163 7473 0a20   package facts. 
│ │ │ +00210ef0: 2070 6163 6b61 6765 5f66 6163 7473 3a0a   package_facts:.
│ │ │ +00210f00: 2020 2020 6d61 6e61 6765 723a 2061 7574      manager: aut
│ │ │ +00210f10: 6f0a 2020 7461 6773 3a0a 2020 2d20 4e49  o.  tags:.  - NI
│ │ │ +00210f20: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ +00210f30: 290a 2020 2d20 656e 6162 6c65 5f73 7472  ).  - enable_str
│ │ │ +00210f40: 6174 6567 790a 2020 2d20 6c6f 775f 636f  ategy.  - low_co
│ │ │ +00210f50: 6d70 6c65 7869 7479 0a20 202d 206c 6f77  mplexity.  - low
│ │ │ +00210f60: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +00210f70: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ +00210f80: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ +00210f90: 6564 6564 0a20 202d 2073 6572 7669 6365  eded.  - service
│ │ │ +00210fa0: 5f63 726f 6e64 5f65 6e61 626c 6564 0a0a  _crond_enabled..
│ │ │ +00210fb0: 2d20 6e61 6d65 3a20 456e 6162 6c65 2063  - name: Enable c
│ │ │ +00210fc0: 726f 6e20 5365 7276 6963 6520 2d20 456e  ron Service - En
│ │ │ +00210fd0: 6162 6c65 2073 6572 7669 6365 2063 726f  able service cro
│ │ │ +00210fe0: 6e64 0a20 2062 6c6f 636b 3a0a 0a20 202d  nd.  block:..  -
│ │ │ +00210ff0: 206e 616d 653a 2047 6174 6865 7220 7468   name: Gather th
│ │ │ +00211000: 6520 7061 636b 6167 6520 6661 6374 730a  e package facts.
│ │ │ +00211010: 2020 2020 616e 7369 626c 652e 6275 696c      ansible.buil
│ │ │ +00211020: 7469 6e2e 7061 636b 6167 655f 6661 6374  tin.package_fact
│ │ │ +00211030: 733a 0a20 2020 2020 206d 616e 6167 6572  s:.      manager
│ │ │ +00211040: 3a20 6175 746f 0a0a 2020 2d20 6e61 6d65  : auto..  - name
│ │ │ +00211050: 3a20 456e 6162 6c65 2063 726f 6e20 5365  : Enable cron Se
│ │ │ +00211060: 7276 6963 6520 2d20 456e 6162 6c65 2053  rvice - Enable S
│ │ │ +00211070: 6572 7669 6365 2063 726f 6e64 0a20 2020  ervice crond.   
│ │ │ +00211080: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ +00211090: 2e73 7973 7465 6d64 3a0a 2020 2020 2020  .systemd:.      
│ │ │ +002110a0: 6e61 6d65 3a20 6372 6f6e 640a 2020 2020  name: crond.    
│ │ │ +002110b0: 2020 656e 6162 6c65 643a 2074 7275 650a    enabled: true.
│ │ │ +002110c0: 2020 2020 2020 7374 6174 653a 2073 7461        state: sta
│ │ │ +002110d0: 7274 6564 0a20 2020 2020 206d 6173 6b65  rted.      maske
│ │ │ +002110e0: 643a 2066 616c 7365 0a20 2020 2077 6865  d: false.    whe
│ │ │ +002110f0: 6e3a 0a20 2020 202d 2027 2263 726f 6e69  n:.    - '"croni
│ │ │ +00211100: 6522 2069 6e20 616e 7369 626c 655f 6661  e" in ansible_fa
│ │ │ +00211110: 6374 732e 7061 636b 6167 6573 270a 2020  cts.packages'.  
│ │ │ +00211120: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38  tags:.  - NIST-8
│ │ │ +00211130: 3030 2d35 332d 434d 2d36 2861 290a 2020  00-53-CM-6(a).  
│ │ │ +00211140: 2d20 656e 6162 6c65 5f73 7472 6174 6567  - enable_strateg
│ │ │ +00211150: 790a 2020 2d20 6c6f 775f 636f 6d70 6c65  y.  - low_comple
│ │ │ +00211160: 7869 7479 0a20 202d 206c 6f77 5f64 6973  xity.  - low_dis
│ │ │ +00211170: 7275 7074 696f 6e0a 2020 2d20 6d65 6469  ruption.  - medi
│ │ │ +00211180: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ +00211190: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ +002111a0: 0a20 202d 2073 6572 7669 6365 5f63 726f  .  - service_cro
│ │ │ +002111b0: 6e64 5f65 6e61 626c 6564 0a20 202d 2073  nd_enabled.  - s
│ │ │ +002111c0: 7065 6369 616c 5f73 6572 7669 6365 5f62  pecial_service_b
│ │ │ +002111d0: 6c6f 636b 0a20 2077 6865 6e3a 2027 226b  lock.  when: '"k
│ │ │ +002111e0: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ +002111f0: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +00211200: 270a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  '.
< │ │ │ +00211210: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Pu │ │ │ +002112c0: 7070 6574 2073 6e69 7070 6574 20e2 87b2 ppet snippet ... │ │ │ +002112d0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
│ │ │ +00210e20: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +00210e50: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +00210e60: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +00210ea0: 793a 3c2f 7468 3e3c 7464 3e65 6e61 626c y:enabl │ │ │ +00210eb0: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
Complexity: │ │ │ +002113a0: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +002113b0: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f

│ │ │ +00211400: 696e 636c 7564 6520 656e 6162 6c65 5f63  include enable_c
│ │ │ +00211410: 726f 6e64 0a0a 636c 6173 7320 656e 6162  rond..class enab
│ │ │ +00211420: 6c65 5f63 726f 6e64 207b 0a20 2073 6572  le_crond {.  ser
│ │ │ +00211430: 7669 6365 207b 2763 726f 6e64 273a 0a20  vice {'crond':. 
│ │ │ +00211440: 2020 2065 6e61 626c 6520 3d26 6774 3b20     enable => 
│ │ │ +00211450: 7472 7565 2c0a 2020 2020 656e 7375 7265  true,.    ensure
│ │ │ +00211460: 203d 2667 743b 2027 7275 6e6e 696e 6727   => 'running'
│ │ │ +00211470: 2c0a 2020 7d0a 7d0a 3c2f 636f 6465 3e3c  ,.  }.}.<
│ │ │ +00211480: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>Remediat
│ │ │ +00211530: 696f 6e20 4f53 4275 696c 6420 426c 7565  ion OSBuild Blue
│ │ │ +00211540: 7072 696e 7420 736e 6970 7065 7420 e287  print snippet ..
│ │ │ +00211550: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c  .
.[customizat
│ │ │ +002115a0: 696f 6e73 2e73 6572 7669 6365 735d 0a65  ions.services].e
│ │ │ +002115b0: 6e61 626c 6564 203d 205b 2263 726f 6e64  nabled = ["crond
│ │ │ +002115c0: 225d 0a3c 2f63 6f64 653e 3c2f 7072 653e  "].
│ │ │ 002115d0: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation Ana │ │ │ -0022dd40: 636f 6e64 6120 736e 6970 7065 7420 e287 conda snippet .. │ │ │ -0022dd50: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
low
Disru │ │ │ +00211380: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +00211390: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +002113d0: 6567 793a 3c2f 7468 3e3c 7464 3e65 6e61 egy:ena │ │ │ +002113e0: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
< │ │ │ -0022ddd0: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -0022ddf0: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -0022de40: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>< │ │ │ -0022de70: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
..package --re
│ │ │ -0022de90: 6d6f 7665 3d64 6863 700a 3c2f 636f 6465  move=dhcp.
Remedi │ │ │ -0022df50: 6174 696f 6e20 5075 7070 6574 2073 6e69 ation Puppet sni │ │ │ -0022df60: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -0022df70: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -0022dfa0: 3c74 6162 6c65 2063 6c61 7373 3d22 7461
low
Disr │ │ │ -0022de00: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -0022de10: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ -0022de50: 7465 6779 3a3c 2f74 683e 3c74 643e 6469 tegy:di │ │ │ -0022de60: 7361 626c 653c 2f74 643e 3c2f 7472 3e3c sable
< │ │ │ -0022e010: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ -0022e030: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ -0022e060: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
Comple │ │ │ -0022dff0: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ -0022e000: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ -0022e040: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ -0022e050: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
disable

.includ │ │ │ -0022e0a0: 6520 7265 6d6f 7665 5f64 6863 700a 0a63 e remove_dhcp..c │ │ │ -0022e0b0: 6c61 7373 2072 656d 6f76 655f 6468 6370 lass remove_dhcp │ │ │ -0022e0c0: 207b 0a20 2070 6163 6b61 6765 207b 2027 {. package { ' │ │ │ -0022e0d0: 6468 6370 273a 0a20 2020 2065 6e73 7572 dhcp':. ensur │ │ │ -0022e0e0: 6520 3d26 6774 3b20 2770 7572 6765 6427 e => 'purged' │ │ │ -0022e0f0: 2c0a 2020 7d0a 7d0a 3c2f 636f 6465 3e3c ,. }.}.< │ │ │ -0022e100: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c /pre>

Remediat │ │ │ -0022e1b0: 696f 6e20 416e 7369 626c 6520 736e 6970 ion Ansible snip │ │ │ -0022e1c0: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ -0022e1d0: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -0022e1e0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -0022e1f0: 7365 2220 6964 3d22 6964 3639 3822 3e3c se" id="id698">< │ │ │ -0022e200: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ -0022e210: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ -0022e220: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ -0022e230: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ -0022e240: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Complex │ │ │ -0022e250: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ -0022e260: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Disruption:lowReboo │ │ │ -0022e2a0: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -0022e2b0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ -0022e2d0: 3c74 643e 6469 7361 626c 653c 2f74 643e disable │ │ │ -0022e2e0: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072 - name: │ │ │ -0022e300: 2755 6e69 6e73 7461 6c6c 2044 4843 5020 'Uninstall DHCP │ │ │ -0022e310: 5365 7276 6572 2050 6163 6b61 6765 3a20 Server Package: │ │ │ -0022e320: 456e 7375 7265 2064 6863 7020 6973 2072 Ensure dhcp is r │ │ │ -0022e330: 656d 6f76 6564 270a 2020 616e 7369 626c emoved'. ansibl │ │ │ -0022e340: 652e 6275 696c 7469 6e2e 7061 636b 6167 e.builtin.packag │ │ │ -0022e350: 653a 0a20 2020 206e 616d 653a 2064 6863 e:. name: dhc │ │ │ -0022e360: 700a 2020 2020 7374 6174 653a 2061 6273 p. state: abs │ │ │ -0022e370: 656e 740a 2020 7461 6773 3a0a 2020 2d20 ent. tags:. - │ │ │ -0022e380: 4e49 5354 2d38 3030 2d35 332d 434d 2d36 NIST-800-53-CM-6 │ │ │ -0022e390: 2861 290a 2020 2d20 4e49 5354 2d38 3030 (a). - NIST-800 │ │ │ -0022e3a0: 2d35 332d 434d 2d37 2861 290a 2020 2d20 -53-CM-7(a). - │ │ │ -0022e3b0: 4e49 5354 2d38 3030 2d35 332d 434d 2d37 NIST-800-53-CM-7 │ │ │ -0022e3c0: 2862 290a 2020 2d20 5043 492d 4453 5376 (b). - PCI-DSSv │ │ │ -0022e3d0: 342d 322e 320a 2020 2d20 5043 492d 4453 4-2.2. - PCI-DS │ │ │ -0022e3e0: 5376 342d 322e 322e 340a 2020 2d20 6469 Sv4-2.2.4. - di │ │ │ -0022e3f0: 7361 626c 655f 7374 7261 7465 6779 0a20 sable_strategy. │ │ │ -0022e400: 202d 206c 6f77 5f63 6f6d 706c 6578 6974 - low_complexit │ │ │ -0022e410: 790a 2020 2d20 6c6f 775f 6469 7372 7570 y. - low_disrup │ │ │ -0022e420: 7469 6f6e 0a20 202d 206d 6564 6975 6d5f tion. - medium_ │ │ │ -0022e430: 7365 7665 7269 7479 0a20 202d 206e 6f5f severity. - no_ │ │ │ -0022e440: 7265 626f 6f74 5f6e 6565 6465 640a 2020 reboot_needed. │ │ │ -0022e450: 2d20 7061 636b 6167 655f 6468 6370 5f72 - package_dhcp_r │ │ │ -0022e460: 656d 6f76 6564 0a3c 2f63 6f64 653e 3c2f emoved.
Remediati │ │ │ -0022e520: 6f6e 2053 6865 6c6c 2073 6372 6970 7420 on Shell script │ │ │ -0022e530: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
Complexity: │ │ │ -0022e5c0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ -0022e5e0: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:low< │ │ │ -0022e600: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:falseSt │ │ │ -0022e630: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ -0022e640: 6469 7361 626c 653c 2f74 643e 3c2f 7472 disable
.# CAUTION: 
│ │ │ -0022e670: 5468 6973 2072 656d 6564 6961 7469 6f6e  This remediation
│ │ │ -0022e680: 2073 6372 6970 7420 7769 6c6c 2072 656d   script will rem
│ │ │ -0022e690: 6f76 6520 6468 6370 0a23 2066 726f 6d20  ove dhcp.# from 
│ │ │ -0022e6a0: 7468 6520 7379 7374 656d 2c20 616e 6420  the system, and 
│ │ │ -0022e6b0: 6d61 7920 7265 6d6f 7665 2061 6e79 2070  may remove any p
│ │ │ -0022e6c0: 6163 6b61 6765 730a 2320 7468 6174 2064  ackages.# that d
│ │ │ -0022e6d0: 6570 656e 6420 6f6e 2064 6863 702e 2045  epend on dhcp. E
│ │ │ -0022e6e0: 7865 6375 7465 2074 6869 730a 2320 7265  xecute this.# re
│ │ │ -0022e6f0: 6d65 6469 6174 696f 6e20 4146 5445 5220  mediation AFTER 
│ │ │ -0022e700: 7465 7374 696e 6720 6f6e 2061 206e 6f6e  testing on a non
│ │ │ -0022e710: 2d70 726f 6475 6374 696f 6e0a 2320 7379  -production.# sy
│ │ │ -0022e720: 7374 656d 210a 0a0a 6966 2072 706d 202d  stem!...if rpm -
│ │ │ -0022e730: 7120 2d2d 7175 6965 7420 2264 6863 7022  q --quiet "dhcp"
│ │ │ -0022e740: 203b 2074 6865 6e0a 646e 6620 7265 6d6f   ; then.dnf remo
│ │ │ -0022e750: 7665 202d 7920 2d2d 6e6f 6175 746f 7265  ve -y --noautore
│ │ │ -0022e760: 6d6f 7665 2022 6468 6370 220a 6669 0a3c  move "dhcp".fi.<
│ │ │ +0022dd30: 3e52 656d 6564 6961 7469 6f6e 2041 6e73  >Remediation Ans
│ │ │ +0022dd40: 6962 6c65 2073 6e69 7070 6574 20e2 87b2  ible snippet ...
│ │ │ +0022dd50: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61  
Complexity: │ │ │ +0022de20: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +0022de30: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
- name: 'Uninst
│ │ │ +0022de90: 616c 6c20 4448 4350 2053 6572 7665 7220  all DHCP Server 
│ │ │ +0022dea0: 5061 636b 6167 653a 2045 6e73 7572 6520  Package: Ensure 
│ │ │ +0022deb0: 6468 6370 2069 7320 7265 6d6f 7665 6427  dhcp is removed'
│ │ │ +0022dec0: 0a20 2061 6e73 6962 6c65 2e62 7569 6c74  .  ansible.built
│ │ │ +0022ded0: 696e 2e70 6163 6b61 6765 3a0a 2020 2020  in.package:.    
│ │ │ +0022dee0: 6e61 6d65 3a20 6468 6370 0a20 2020 2073  name: dhcp.    s
│ │ │ +0022def0: 7461 7465 3a20 6162 7365 6e74 0a20 2074  tate: absent.  t
│ │ │ +0022df00: 6167 733a 0a20 202d 204e 4953 542d 3830  ags:.  - NIST-80
│ │ │ +0022df10: 302d 3533 2d43 4d2d 3628 6129 0a20 202d  0-53-CM-6(a).  -
│ │ │ +0022df20: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +0022df30: 3728 6129 0a20 202d 204e 4953 542d 3830  7(a).  - NIST-80
│ │ │ +0022df40: 302d 3533 2d43 4d2d 3728 6229 0a20 202d  0-53-CM-7(b).  -
│ │ │ +0022df50: 2050 4349 2d44 5353 7634 2d32 2e32 0a20   PCI-DSSv4-2.2. 
│ │ │ +0022df60: 202d 2050 4349 2d44 5353 7634 2d32 2e32   - PCI-DSSv4-2.2
│ │ │ +0022df70: 2e34 0a20 202d 2064 6973 6162 6c65 5f73  .4.  - disable_s
│ │ │ +0022df80: 7472 6174 6567 790a 2020 2d20 6c6f 775f  trategy.  - low_
│ │ │ +0022df90: 636f 6d70 6c65 7869 7479 0a20 202d 206c  complexity.  - l
│ │ │ +0022dfa0: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ +0022dfb0: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ +0022dfc0: 790a 2020 2d20 6e6f 5f72 6562 6f6f 745f  y.  - no_reboot_
│ │ │ +0022dfd0: 6e65 6564 6564 0a20 202d 2070 6163 6b61  needed.  - packa
│ │ │ +0022dfe0: 6765 5f64 6863 705f 7265 6d6f 7665 640a  ge_dhcp_removed.
│ │ │ +0022dff0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ +0022e0a0: 5265 6d65 6469 6174 696f 6e20 5075 7070 Remediation Pupp │ │ │ +0022e0b0: 6574 2073 6e69 7070 6574 20e2 87b2 3c2f et snippet ...
low
Disru │ │ │ +0022de00: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +0022de10: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +0022de50: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ +0022de60: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
│ │ │ +0022e150: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
.
│ │ │ +0022e1f0: 696e 636c 7564 6520 7265 6d6f 7665 5f64  include remove_d
│ │ │ +0022e200: 6863 700a 0a63 6c61 7373 2072 656d 6f76  hcp..class remov
│ │ │ +0022e210: 655f 6468 6370 207b 0a20 2070 6163 6b61  e_dhcp {.  packa
│ │ │ +0022e220: 6765 207b 2027 6468 6370 273a 0a20 2020  ge { 'dhcp':.   
│ │ │ +0022e230: 2065 6e73 7572 6520 3d26 6774 3b20 2770   ensure => 'p
│ │ │ +0022e240: 7572 6765 6427 2c0a 2020 7d0a 7d0a 3c2f  urged',.  }.}.
Re │ │ │ +0022e300: 6d65 6469 6174 696f 6e20 5368 656c 6c20 mediation Shell │ │ │ +0022e310: 7363 7269 7074 20e2 87b2 3c2f 613e 3c62 script ...
│ │ │ +0022e140: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +0022e170: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +0022e180: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +0022e1c0: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ +0022e1d0: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Comp │ │ │ +0022e3a0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +0022e3b0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ +0022e3d0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ +0022e3f0: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +0022e400: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ +0022e440: 3c70 7265 3e3c 636f 6465 3e0a 2320 4341
.# CA
│ │ │ +0022e450: 5554 494f 4e3a 2054 6869 7320 7265 6d65  UTION: This reme
│ │ │ +0022e460: 6469 6174 696f 6e20 7363 7269 7074 2077  diation script w
│ │ │ +0022e470: 696c 6c20 7265 6d6f 7665 2064 6863 700a  ill remove dhcp.
│ │ │ +0022e480: 2320 6672 6f6d 2074 6865 2073 7973 7465  # from the syste
│ │ │ +0022e490: 6d2c 2061 6e64 206d 6179 2072 656d 6f76  m, and may remov
│ │ │ +0022e4a0: 6520 616e 7920 7061 636b 6167 6573 0a23  e any packages.#
│ │ │ +0022e4b0: 2074 6861 7420 6465 7065 6e64 206f 6e20   that depend on 
│ │ │ +0022e4c0: 6468 6370 2e20 4578 6563 7574 6520 7468  dhcp. Execute th
│ │ │ +0022e4d0: 6973 0a23 2072 656d 6564 6961 7469 6f6e  is.# remediation
│ │ │ +0022e4e0: 2041 4654 4552 2074 6573 7469 6e67 206f   AFTER testing o
│ │ │ +0022e4f0: 6e20 6120 6e6f 6e2d 7072 6f64 7563 7469  n a non-producti
│ │ │ +0022e500: 6f6e 0a23 2073 7973 7465 6d21 0a0a 0a69  on.# system!...i
│ │ │ +0022e510: 6620 7270 6d20 2d71 202d 2d71 7569 6574  f rpm -q --quiet
│ │ │ +0022e520: 2022 6468 6370 2220 3b20 7468 656e 0a64   "dhcp" ; then.d
│ │ │ +0022e530: 6e66 2072 656d 6f76 6520 2d79 202d 2d6e  nf remove -y --n
│ │ │ +0022e540: 6f61 7574 6f72 656d 6f76 6520 2264 6863  oautoremove "dhc
│ │ │ +0022e550: 7022 0a66 690a 3c2f 636f 6465 3e3c 2f70  p".fi.

Remediatio │ │ │ +0022e610: 6e20 416e 6163 6f6e 6461 2073 6e69 7070 n Anaconda snipp │ │ │ +0022e620: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ +0022e6a0: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ +0022e6b0: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +0022e6c0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ +0022e700: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +0022e710: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ +0022e730: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ +0022e740: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
..package
│ │ │ +0022e760: 202d 2d72 656d 6f76 653d 6468 6370 0a3c   --remove=dhcp.<
│ │ │  0022e770: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
Remed │ │ │ -0022fd20: 6961 7469 6f6e 2041 6e61 636f 6e64 6120 iation Anaconda │ │ │ -0022fd30: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ -0022fd40: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Com │ │ │ -0022fdc0: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ -0022fdf0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ -0022fe10: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -0022fe20: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -0022fe40: 2f74 683e 3c74 643e 6469 7361 626c 653c /th>disable< │ │ │ -0022fe50: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
..pa
│ │ │ -0022fe70: 636b 6167 6520 2d2d 7265 6d6f 7665 3d62  ckage --remove=b
│ │ │ -0022fe80: 696e 640a 3c2f 636f 6465 3e3c 2f70 7265  ind.
Remediation │ │ │ -0022ff40: 5075 7070 6574 2073 6e69 7070 6574 20e2 Puppet snippet . │ │ │ -0022ff50: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ -0022ffd0: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -0022fff0: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ -00230040: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ -00230070: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ -0022ffe0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ -00230000: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ -00230050: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ -00230060: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
.include remo
│ │ │ -00230090: 7665 5f62 696e 640a 0a63 6c61 7373 2072  ve_bind..class r
│ │ │ -002300a0: 656d 6f76 655f 6269 6e64 207b 0a20 2070  emove_bind {.  p
│ │ │ -002300b0: 6163 6b61 6765 207b 2027 6269 6e64 273a  ackage { 'bind':
│ │ │ -002300c0: 0a20 2020 2065 6e73 7572 6520 3d26 6774  .    ensure =>
│ │ │ -002300d0: 3b20 2770 7572 6765 6427 2c0a 2020 7d0a  ; 'purged',.  }.
│ │ │ -002300e0: 7d0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  }.
< │ │ │ -002300f0: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation An │ │ │ -002301a0: 7369 626c 6520 736e 6970 7065 7420 e287 sible snippet .. │ │ │ -002301b0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ -00230230: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -00230250: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -002302a0: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>< │ │ │ -002302d0: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
- name: 'Unins
│ │ │ -002302f0: 7461 6c6c 2062 696e 6420 5061 636b 6167  tall bind Packag
│ │ │ -00230300: 653a 2045 6e73 7572 6520 6269 6e64 2069  e: Ensure bind i
│ │ │ -00230310: 7320 7265 6d6f 7665 6427 0a20 2061 6e73  s removed'.  ans
│ │ │ -00230320: 6962 6c65 2e62 7569 6c74 696e 2e70 6163  ible.builtin.pac
│ │ │ -00230330: 6b61 6765 3a0a 2020 2020 6e61 6d65 3a20  kage:.    name: 
│ │ │ -00230340: 6269 6e64 0a20 2020 2073 7461 7465 3a20  bind.    state: 
│ │ │ -00230350: 6162 7365 6e74 0a20 2074 6167 733a 0a20  absent.  tags:. 
│ │ │ -00230360: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -00230370: 4d2d 3628 6129 0a20 202d 204e 4953 542d  M-6(a).  - NIST-
│ │ │ -00230380: 3830 302d 3533 2d43 4d2d 3728 6129 0a20  800-53-CM-7(a). 
│ │ │ -00230390: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -002303a0: 4d2d 3728 6229 0a20 202d 2064 6973 6162  M-7(b).  - disab
│ │ │ -002303b0: 6c65 5f73 7472 6174 6567 790a 2020 2d20  le_strategy.  - 
│ │ │ -002303c0: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ -002303d0: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ -002303e0: 6e0a 2020 2d20 6c6f 775f 7365 7665 7269  n.  - low_severi
│ │ │ -002303f0: 7479 0a20 202d 206e 6f5f 7265 626f 6f74  ty.  - no_reboot
│ │ │ -00230400: 5f6e 6565 6465 640a 2020 2d20 7061 636b  _needed.  - pack
│ │ │ -00230410: 6167 655f 6269 6e64 5f72 656d 6f76 6564  age_bind_removed
│ │ │ -00230420: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation She │ │ │ -002304e0: 6c6c 2073 6372 6970 7420 e287 b23c 2f61 ll script ...
low
Disr │ │ │ -00230260: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -00230270: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ -002302b0: 7465 6779 3a3c 2f74 683e 3c74 643e 6469 tegy:di │ │ │ -002302c0: 7361 626c 653c 2f74 643e 3c2f 7472 3e3c sable
< │ │ │ -00230580: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -00230590: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ -002305e0: 3c74 723e 3c74 683e 5374 7261 7465 6779
.#
│ │ │ -00230620: 2043 4155 5449 4f4e 3a20 5468 6973 2072   CAUTION: This r
│ │ │ -00230630: 656d 6564 6961 7469 6f6e 2073 6372 6970  emediation scrip
│ │ │ -00230640: 7420 7769 6c6c 2072 656d 6f76 6520 6269  t will remove bi
│ │ │ -00230650: 6e64 0a23 2066 726f 6d20 7468 6520 7379  nd.# from the sy
│ │ │ -00230660: 7374 656d 2c20 616e 6420 6d61 7920 7265  stem, and may re
│ │ │ -00230670: 6d6f 7665 2061 6e79 2070 6163 6b61 6765  move any package
│ │ │ -00230680: 730a 2320 7468 6174 2064 6570 656e 6420  s.# that depend 
│ │ │ -00230690: 6f6e 2062 696e 642e 2045 7865 6375 7465  on bind. Execute
│ │ │ -002306a0: 2074 6869 730a 2320 7265 6d65 6469 6174   this.# remediat
│ │ │ -002306b0: 696f 6e20 4146 5445 5220 7465 7374 696e  ion AFTER testin
│ │ │ -002306c0: 6720 6f6e 2061 206e 6f6e 2d70 726f 6475  g on a non-produ
│ │ │ -002306d0: 6374 696f 6e0a 2320 7379 7374 656d 210a  ction.# system!.
│ │ │ -002306e0: 0a0a 6966 2072 706d 202d 7120 2d2d 7175  ..if rpm -q --qu
│ │ │ -002306f0: 6965 7420 2262 696e 6422 203b 2074 6865  iet "bind" ; the
│ │ │ -00230700: 6e0a 646e 6620 7265 6d6f 7665 202d 7920  n.dnf remove -y 
│ │ │ -00230710: 2d2d 6e6f 6175 746f 7265 6d6f 7665 2022  --noautoremove "
│ │ │ -00230720: 6269 6e64 220a 6669 0a3c 2f63 6f64 653e  bind".fi.
│ │ │ +0022fd20: 6961 7469 6f6e 2041 6e73 6962 6c65 2073  iation Ansible s
│ │ │ +0022fd30: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62  nippet ...
C │ │ │ -00230570: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -002305a0: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ -002305b0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -002305f0: 3a3c 2f74 683e 3c74 643e 6469 7361 626c :disabl │ │ │ -00230600: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
Comp │ │ │ +0022fdc0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +0022fdd0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ +0022fdf0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ +0022fe10: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +0022fe20: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ +0022fe60: 3c70 7265 3e3c 636f 6465 3e2d 206e 616d
- nam
│ │ │ +0022fe70: 653a 2027 556e 696e 7374 616c 6c20 6269  e: 'Uninstall bi
│ │ │ +0022fe80: 6e64 2050 6163 6b61 6765 3a20 456e 7375  nd Package: Ensu
│ │ │ +0022fe90: 7265 2062 696e 6420 6973 2072 656d 6f76  re bind is remov
│ │ │ +0022fea0: 6564 270a 2020 616e 7369 626c 652e 6275  ed'.  ansible.bu
│ │ │ +0022feb0: 696c 7469 6e2e 7061 636b 6167 653a 0a20  iltin.package:. 
│ │ │ +0022fec0: 2020 206e 616d 653a 2062 696e 640a 2020     name: bind.  
│ │ │ +0022fed0: 2020 7374 6174 653a 2061 6273 656e 740a    state: absent.
│ │ │ +0022fee0: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ +0022fef0: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ +0022ff00: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +0022ff10: 434d 2d37 2861 290a 2020 2d20 4e49 5354  CM-7(a).  - NIST
│ │ │ +0022ff20: 2d38 3030 2d35 332d 434d 2d37 2862 290a  -800-53-CM-7(b).
│ │ │ +0022ff30: 2020 2d20 6469 7361 626c 655f 7374 7261    - disable_stra
│ │ │ +0022ff40: 7465 6779 0a20 202d 206c 6f77 5f63 6f6d  tegy.  - low_com
│ │ │ +0022ff50: 706c 6578 6974 790a 2020 2d20 6c6f 775f  plexity.  - low_
│ │ │ +0022ff60: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ +0022ff70: 6f77 5f73 6576 6572 6974 790a 2020 2d20  ow_severity.  - 
│ │ │ +0022ff80: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ +0022ff90: 0a20 202d 2070 6163 6b61 6765 5f62 696e  .  - package_bin
│ │ │ +0022ffa0: 645f 7265 6d6f 7665 640a 3c2f 636f 6465  d_removed.
Remedi │ │ │ +00230060: 6174 696f 6e20 5075 7070 6574 2073 6e69 ation Puppet sni │ │ │ +00230070: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ +00230080: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ +002300b0: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ +00230120: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ +00230140: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ +00230170: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
Comple │ │ │ +00230100: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ +00230110: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ +00230150: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +00230160: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
disable

.includ │ │ │ +002301b0: 6520 7265 6d6f 7665 5f62 696e 640a 0a63 e remove_bind..c │ │ │ +002301c0: 6c61 7373 2072 656d 6f76 655f 6269 6e64 lass remove_bind │ │ │ +002301d0: 207b 0a20 2070 6163 6b61 6765 207b 2027 {. package { ' │ │ │ +002301e0: 6269 6e64 273a 0a20 2020 2065 6e73 7572 bind':. ensur │ │ │ +002301f0: 6520 3d26 6774 3b20 2770 7572 6765 6427 e => 'purged' │ │ │ +00230200: 2c0a 2020 7d0a 7d0a 3c2f 636f 6465 3e3c ,. }.}.< │ │ │ +00230210: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c /pre>

Remediat │ │ │ +002302c0: 696f 6e20 5368 656c 6c20 7363 7269 7074 ion Shell script │ │ │ +002302d0: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Complexity │ │ │ +00230360: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ +00230380: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ +00230390: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +002303a0: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ +002303b0: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ +002303d0: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:disable
<
│ │ │ +00230400: 636f 6465 3e0a 2320 4341 5554 494f 4e3a  code>.# CAUTION:
│ │ │ +00230410: 2054 6869 7320 7265 6d65 6469 6174 696f   This remediatio
│ │ │ +00230420: 6e20 7363 7269 7074 2077 696c 6c20 7265  n script will re
│ │ │ +00230430: 6d6f 7665 2062 696e 640a 2320 6672 6f6d  move bind.# from
│ │ │ +00230440: 2074 6865 2073 7973 7465 6d2c 2061 6e64   the system, and
│ │ │ +00230450: 206d 6179 2072 656d 6f76 6520 616e 7920   may remove any 
│ │ │ +00230460: 7061 636b 6167 6573 0a23 2074 6861 7420  packages.# that 
│ │ │ +00230470: 6465 7065 6e64 206f 6e20 6269 6e64 2e20  depend on bind. 
│ │ │ +00230480: 4578 6563 7574 6520 7468 6973 0a23 2072  Execute this.# r
│ │ │ +00230490: 656d 6564 6961 7469 6f6e 2041 4654 4552  emediation AFTER
│ │ │ +002304a0: 2074 6573 7469 6e67 206f 6e20 6120 6e6f   testing on a no
│ │ │ +002304b0: 6e2d 7072 6f64 7563 7469 6f6e 0a23 2073  n-production.# s
│ │ │ +002304c0: 7973 7465 6d21 0a0a 0a69 6620 7270 6d20  ystem!...if rpm 
│ │ │ +002304d0: 2d71 202d 2d71 7569 6574 2022 6269 6e64  -q --quiet "bind
│ │ │ +002304e0: 2220 3b20 7468 656e 0a64 6e66 2072 656d  " ; then.dnf rem
│ │ │ +002304f0: 6f76 6520 2d79 202d 2d6e 6f61 7574 6f72  ove -y --noautor
│ │ │ +00230500: 656d 6f76 6520 2262 696e 6422 0a66 690a  emove "bind".fi.
│ │ │ +00230510: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ +002305c0: 5265 6d65 6469 6174 696f 6e20 416e 6163 Remediation Anac │ │ │ +002305d0: 6f6e 6461 2073 6e69 7070 6574 20e2 87b2 onda snippet ... │ │ │ +002305e0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity: │ │ │ +002306b0: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +002306c0: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
..package --rem
│ │ │ +00230720: 6f76 653d 6269 6e64 0a3c 2f63 6f64 653e  ove=bind.
│ │ │  00230730: 3c2f 7072 653e 3c2f 6469 763e 3c2f 6469  
low
Disru │ │ │ +00230690: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +002306a0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +002306e0: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ +002306f0: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
Remediat │ │ │ -00230fd0: 696f 6e20 416e 6163 6f6e 6461 2073 6e69 ion Anaconda sni │ │ │ -00230fe0: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -00230ff0: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -00231020: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ -00231090: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ -002310b0: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ -002310e0: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
Comple │ │ │ -00231070: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ -00231080: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ -002310c0: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ -002310d0: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
disable

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

Remediation │ │ │ -002311f0: 5075 7070 6574 2073 6e69 7070 6574 20e2 Puppet snippet . │ │ │ -00231200: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ -00231280: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -002312a0: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ -002312f0: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ -00231320: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ -00231290: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ -002312b0: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ -00231300: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ -00231310: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
.include remo
│ │ │ -00231340: 7665 5f64 6e73 6d61 7371 0a0a 636c 6173  ve_dnsmasq..clas
│ │ │ -00231350: 7320 7265 6d6f 7665 5f64 6e73 6d61 7371  s remove_dnsmasq
│ │ │ -00231360: 207b 0a20 2070 6163 6b61 6765 207b 2027   {.  package { '
│ │ │ -00231370: 646e 736d 6173 7127 3a0a 2020 2020 656e  dnsmasq':.    en
│ │ │ -00231380: 7375 7265 203d 2667 743b 2027 7075 7267  sure => 'purg
│ │ │ -00231390: 6564 272c 0a20 207d 0a7d 0a3c 2f63 6f64  ed',.  }.}.
Remed │ │ │ -00231450: 6961 7469 6f6e 2041 6e73 6962 6c65 2073 iation Ansible s │ │ │ -00231460: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ -002314f0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -00231500: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -00231520: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ -00231540: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -00231550: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ -00231590: 3c70 7265 3e3c 636f 6465 3e2d 206e 616d
- nam
│ │ │ -002315a0: 653a 2027 556e 696e 7374 616c 6c20 646e  e: 'Uninstall dn
│ │ │ -002315b0: 736d 6173 7120 5061 636b 6167 653a 2045  smasq Package: E
│ │ │ -002315c0: 6e73 7572 6520 646e 736d 6173 7120 6973  nsure dnsmasq is
│ │ │ -002315d0: 2072 656d 6f76 6564 270a 2020 616e 7369   removed'.  ansi
│ │ │ -002315e0: 626c 652e 6275 696c 7469 6e2e 7061 636b  ble.builtin.pack
│ │ │ -002315f0: 6167 653a 0a20 2020 206e 616d 653a 2064  age:.    name: d
│ │ │ -00231600: 6e73 6d61 7371 0a20 2020 2073 7461 7465  nsmasq.    state
│ │ │ -00231610: 3a20 6162 7365 6e74 0a20 2074 6167 733a  : absent.  tags:
│ │ │ -00231620: 0a20 202d 2064 6973 6162 6c65 5f73 7472  .  - disable_str
│ │ │ -00231630: 6174 6567 790a 2020 2d20 6c6f 775f 636f  ategy.  - low_co
│ │ │ -00231640: 6d70 6c65 7869 7479 0a20 202d 206c 6f77  mplexity.  - low
│ │ │ -00231650: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ -00231660: 6c6f 775f 7365 7665 7269 7479 0a20 202d  low_severity.  -
│ │ │ -00231670: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ -00231680: 640a 2020 2d20 7061 636b 6167 655f 646e  d.  - package_dn
│ │ │ -00231690: 736d 6173 715f 7265 6d6f 7665 640a 3c2f  smasq_removed.
Re │ │ │ -00231750: 6d65 6469 6174 696f 6e20 5368 656c 6c20 mediation Shell │ │ │ -00231760: 7363 7269 7074 20e2 87b2 3c2f 613e 3c62 script ...
Comp │ │ │ -002317f0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -00231800: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -00231820: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ -00231840: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -00231850: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ -00231890: 3c70 7265 3e3c 636f 6465 3e0a 2320 4341
.# CA
│ │ │ -002318a0: 5554 494f 4e3a 2054 6869 7320 7265 6d65  UTION: This reme
│ │ │ -002318b0: 6469 6174 696f 6e20 7363 7269 7074 2077  diation script w
│ │ │ -002318c0: 696c 6c20 7265 6d6f 7665 2064 6e73 6d61  ill remove dnsma
│ │ │ -002318d0: 7371 0a23 2066 726f 6d20 7468 6520 7379  sq.# from the sy
│ │ │ -002318e0: 7374 656d 2c20 616e 6420 6d61 7920 7265  stem, and may re
│ │ │ -002318f0: 6d6f 7665 2061 6e79 2070 6163 6b61 6765  move any package
│ │ │ -00231900: 730a 2320 7468 6174 2064 6570 656e 6420  s.# that depend 
│ │ │ -00231910: 6f6e 2064 6e73 6d61 7371 2e20 4578 6563  on dnsmasq. Exec
│ │ │ -00231920: 7574 6520 7468 6973 0a23 2072 656d 6564  ute this.# remed
│ │ │ -00231930: 6961 7469 6f6e 2041 4654 4552 2074 6573  iation AFTER tes
│ │ │ -00231940: 7469 6e67 206f 6e20 6120 6e6f 6e2d 7072  ting on a non-pr
│ │ │ -00231950: 6f64 7563 7469 6f6e 0a23 2073 7973 7465  oduction.# syste
│ │ │ -00231960: 6d21 0a0a 0a69 6620 7270 6d20 2d71 202d  m!...if rpm -q -
│ │ │ -00231970: 2d71 7569 6574 2022 646e 736d 6173 7122  -quiet "dnsmasq"
│ │ │ -00231980: 203b 2074 6865 6e0a 646e 6620 7265 6d6f   ; then.dnf remo
│ │ │ -00231990: 7665 202d 7920 2d2d 6e6f 6175 746f 7265  ve -y --noautore
│ │ │ -002319a0: 6d6f 7665 2022 646e 736d 6173 7122 0a66  move "dnsmasq".f
│ │ │ -002319b0: 690a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  i.
< │ │ │ +00230fd0: 696f 6e20 416e 7369 626c 6520 736e 6970 ion Ansible snip │ │ │ +00230fe0: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ +00230ff0: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +00231000: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +00231010: 7365 2220 6964 3d22 6964 3730 3622 3e3c se" id="id706">< │ │ │ +00231020: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +00231030: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +00231040: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +00231050: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +00231060: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Complex │ │ │ +00231070: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ +00231080: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Disruption:lowReboo │ │ │ +002310c0: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ +002310d0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ +002310f0: 3c74 643e 6469 7361 626c 653c 2f74 643e disable │ │ │ +00231100: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072 - name: │ │ │ +00231120: 2755 6e69 6e73 7461 6c6c 2064 6e73 6d61 'Uninstall dnsma │ │ │ +00231130: 7371 2050 6163 6b61 6765 3a20 456e 7375 sq Package: Ensu │ │ │ +00231140: 7265 2064 6e73 6d61 7371 2069 7320 7265 re dnsmasq is re │ │ │ +00231150: 6d6f 7665 6427 0a20 2061 6e73 6962 6c65 moved'. ansible │ │ │ +00231160: 2e62 7569 6c74 696e 2e70 6163 6b61 6765 .builtin.package │ │ │ +00231170: 3a0a 2020 2020 6e61 6d65 3a20 646e 736d :. name: dnsm │ │ │ +00231180: 6173 710a 2020 2020 7374 6174 653a 2061 asq. state: a │ │ │ +00231190: 6273 656e 740a 2020 7461 6773 3a0a 2020 bsent. tags:. │ │ │ +002311a0: 2d20 6469 7361 626c 655f 7374 7261 7465 - disable_strate │ │ │ +002311b0: 6779 0a20 202d 206c 6f77 5f63 6f6d 706c gy. - low_compl │ │ │ +002311c0: 6578 6974 790a 2020 2d20 6c6f 775f 6469 exity. - low_di │ │ │ +002311d0: 7372 7570 7469 6f6e 0a20 202d 206c 6f77 sruption. - low │ │ │ +002311e0: 5f73 6576 6572 6974 790a 2020 2d20 6e6f _severity. - no │ │ │ +002311f0: 5f72 6562 6f6f 745f 6e65 6564 6564 0a20 _reboot_needed. │ │ │ +00231200: 202d 2070 6163 6b61 6765 5f64 6e73 6d61 - package_dnsma │ │ │ +00231210: 7371 5f72 656d 6f76 6564 0a3c 2f63 6f64 sq_removed.
Remed │ │ │ +002312d0: 6961 7469 6f6e 2050 7570 7065 7420 736e iation Puppet sn │ │ │ +002312e0: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ +00231390: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ +002313b0: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ +002313e0: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ +00231370: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ +00231380: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ +002313a0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ +002313c0: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ +002313d0: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:disable
< │ │ │ +00231410: 7072 653e 3c63 6f64 653e 0a69 6e63 6c75 pre>.inclu │ │ │ +00231420: 6465 2072 656d 6f76 655f 646e 736d 6173 de remove_dnsmas │ │ │ +00231430: 710a 0a63 6c61 7373 2072 656d 6f76 655f q..class remove_ │ │ │ +00231440: 646e 736d 6173 7120 7b0a 2020 7061 636b dnsmasq {. pack │ │ │ +00231450: 6167 6520 7b20 2764 6e73 6d61 7371 273a age { 'dnsmasq': │ │ │ +00231460: 0a20 2020 2065 6e73 7572 6520 3d26 6774 . ensure => │ │ │ +00231470: 3b20 2770 7572 6765 6427 2c0a 2020 7d0a ; 'purged',. }. │ │ │ +00231480: 7d0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c }.< │ │ │ +00231490: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Sh │ │ │ +00231540: 656c 6c20 7363 7269 7074 20e2 87b2 3c2f ell script ...
│ │ │ +002315e0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
.
│ │ │ +00231680: 2320 4341 5554 494f 4e3a 2054 6869 7320  # CAUTION: This 
│ │ │ +00231690: 7265 6d65 6469 6174 696f 6e20 7363 7269  remediation scri
│ │ │ +002316a0: 7074 2077 696c 6c20 7265 6d6f 7665 2064  pt will remove d
│ │ │ +002316b0: 6e73 6d61 7371 0a23 2066 726f 6d20 7468  nsmasq.# from th
│ │ │ +002316c0: 6520 7379 7374 656d 2c20 616e 6420 6d61  e system, and ma
│ │ │ +002316d0: 7920 7265 6d6f 7665 2061 6e79 2070 6163  y remove any pac
│ │ │ +002316e0: 6b61 6765 730a 2320 7468 6174 2064 6570  kages.# that dep
│ │ │ +002316f0: 656e 6420 6f6e 2064 6e73 6d61 7371 2e20  end on dnsmasq. 
│ │ │ +00231700: 4578 6563 7574 6520 7468 6973 0a23 2072  Execute this.# r
│ │ │ +00231710: 656d 6564 6961 7469 6f6e 2041 4654 4552  emediation AFTER
│ │ │ +00231720: 2074 6573 7469 6e67 206f 6e20 6120 6e6f   testing on a no
│ │ │ +00231730: 6e2d 7072 6f64 7563 7469 6f6e 0a23 2073  n-production.# s
│ │ │ +00231740: 7973 7465 6d21 0a0a 0a69 6620 7270 6d20  ystem!...if rpm 
│ │ │ +00231750: 2d71 202d 2d71 7569 6574 2022 646e 736d  -q --quiet "dnsm
│ │ │ +00231760: 6173 7122 203b 2074 6865 6e0a 646e 6620  asq" ; then.dnf 
│ │ │ +00231770: 7265 6d6f 7665 202d 7920 2d2d 6e6f 6175  remove -y --noau
│ │ │ +00231780: 746f 7265 6d6f 7665 2022 646e 736d 6173  toremove "dnsmas
│ │ │ +00231790: 7122 0a66 690a 3c2f 636f 6465 3e3c 2f70  q".fi.

Remediatio │ │ │ +00231850: 6e20 416e 6163 6f6e 6461 2073 6e69 7070 n Anaconda snipp │ │ │ +00231860: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ +002318e0: 3c74 723e 3c74 683e 436f 6d70 6c65 7869
< │ │ │ +00231970: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ +00231980: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
│ │ │ +002315d0: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +00231600: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +00231610: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +00231650: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ +00231660: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Complexi │ │ │ +002318f0: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +00231900: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Disruption:low
Reboot │ │ │ +00231940: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +00231950: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Strategy:
..package
│ │ │ +002319a0: 202d 2d72 656d 6f76 653d 646e 736d 6173   --remove=dnsmas
│ │ │ +002319b0: 710a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  q.
< │ │ │ 002319c0: 2f64 6976 3e3c 2f64 6976 3e3c 2f74 643e /div>
│ │ │ 002319d0: 3c2f 7472 3e3c 2f74 626f 6479 3e3c 2f74 < │ │ │ 002319f0: 7472 2064 6174 612d 7474 2d69 643d 2263 tr data-tt-id="c │ │ │ 00231a00: 6869 6c64 7265 6e2d 7863 6364 665f 6f72 hildren-xccdf_or │ │ │ 00231a10: 672e 7373 6770 726f 6a65 6374 2e63 6f6e g.ssgproject.con │ │ │ 00231a20: 7465 6e74 5f67 726f 7570 5f66 7470 2220 tent_group_ftp" │ │ │ @@ -144128,183 +144128,183 @@ │ │ │ 00232ff0: 6522 2064 6174 612d 7461 7267 6574 3d22 e" data-target=" │ │ │ 00233000: 2369 6437 3131 2220 7461 6269 6e64 6578 #id711" tabindex │ │ │ 00233010: 3d22 3022 2072 6f6c 653d 2262 7574 746f ="0" role="butto │ │ │ 00233020: 6e22 2061 7269 612d 6578 7061 6e64 6564 n" aria-expanded │ │ │ 00233030: 3d22 6661 6c73 6522 2074 6974 6c65 3d22 ="false" title=" │ │ │ 00233040: 4163 7469 7661 7465 2074 6f20 7265 7665 Activate to reve │ │ │ 00233050: 616c 2220 6872 6566 3d22 2321 223e 5265 al" href="#!">Re │ │ │ -00233060: 6d65 6469 6174 696f 6e20 416e 6163 6f6e mediation Anacon │ │ │ -00233070: 6461 2073 6e69 7070 6574 20e2 87b2 3c2f da snippet ...
│ │ │ -00233110: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
.
│ │ │ -002331b0: 0a70 6163 6b61 6765 202d 2d72 656d 6f76  .package --remov
│ │ │ -002331c0: 653d 7673 6674 7064 0a3c 2f63 6f64 653e  e=vsftpd.
│ │ │ -002331d0: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ -00233280: 7469 6f6e 2050 7570 7065 7420 736e 6970 tion Puppet snip │ │ │ -00233290: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ -002332a0: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -002332b0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -002332c0: 7365 2220 6964 3d22 6964 3731 3222 3e3c se" id="id712">< │ │ │ -002332d0: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ -002332e0: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ -002332f0: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ -00233300: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ -00233310: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Disruption:Strategy: │ │ │ -002333a0: 3c74 643e 6469 7361 626c 653c 2f74 643e │ │ │ -002333b0: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
│ │ │ -00233100: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -00233130: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -00233140: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -00233180: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ -00233190: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Complex │ │ │ -00233320: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ -00233330: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
low
Reboo │ │ │ -00233370: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -00233380: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
disable
.include │ │ │ -002333d0: 2072 656d 6f76 655f 7673 6674 7064 0a0a remove_vsftpd.. │ │ │ -002333e0: 636c 6173 7320 7265 6d6f 7665 5f76 7366 class remove_vsf │ │ │ -002333f0: 7470 6420 7b0a 2020 7061 636b 6167 6520 tpd {. package │ │ │ -00233400: 7b20 2776 7366 7470 6427 3a0a 2020 2020 { 'vsftpd':. │ │ │ -00233410: 656e 7375 7265 203d 2667 743b 2027 7075 ensure => 'pu │ │ │ -00233420: 7267 6564 272c 0a20 207d 0a7d 0a3c 2f63 rged',. }.}.
│ │ │ -00233440: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ -002334e0: 6564 6961 7469 6f6e 2041 6e73 6962 6c65 ediation Ansible │ │ │ -002334f0: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -00233500: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ -002335a0: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ -002335f0: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
- n
│ │ │ -00233630: 616d 653a 2027 556e 696e 7374 616c 6c20  ame: 'Uninstall 
│ │ │ -00233640: 7673 6674 7064 2050 6163 6b61 6765 3a20  vsftpd Package: 
│ │ │ -00233650: 456e 7375 7265 2076 7366 7470 6420 6973  Ensure vsftpd is
│ │ │ -00233660: 2072 656d 6f76 6564 270a 2020 616e 7369   removed'.  ansi
│ │ │ -00233670: 626c 652e 6275 696c 7469 6e2e 7061 636b  ble.builtin.pack
│ │ │ -00233680: 6167 653a 0a20 2020 206e 616d 653a 2076  age:.    name: v
│ │ │ -00233690: 7366 7470 640a 2020 2020 7374 6174 653a  sftpd.    state:
│ │ │ -002336a0: 2061 6273 656e 740a 2020 7461 6773 3a0a   absent.  tags:.
│ │ │ -002336b0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -002336c0: 434d 2d36 2861 290a 2020 2d20 4e49 5354  CM-6(a).  - NIST
│ │ │ -002336d0: 2d38 3030 2d35 332d 434d 2d37 0a20 202d  -800-53-CM-7.  -
│ │ │ -002336e0: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -002336f0: 3728 6129 0a20 202d 204e 4953 542d 3830  7(a).  - NIST-80
│ │ │ -00233700: 302d 3533 2d43 4d2d 3728 6229 0a20 202d  0-53-CM-7(b).  -
│ │ │ -00233710: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -00233720: 372e 3128 6969 290a 2020 2d20 4e49 5354  7.1(ii).  - NIST
│ │ │ -00233730: 2d38 3030 2d35 332d 4941 2d35 2831 2928  -800-53-IA-5(1)(
│ │ │ -00233740: 6329 0a20 202d 204e 4953 542d 3830 302d  c).  - NIST-800-
│ │ │ -00233750: 3533 2d49 412d 3528 3129 2e31 2876 290a  53-IA-5(1).1(v).
│ │ │ -00233760: 2020 2d20 6469 7361 626c 655f 7374 7261    - disable_stra
│ │ │ -00233770: 7465 6779 0a20 202d 2068 6967 685f 7365  tegy.  - high_se
│ │ │ -00233780: 7665 7269 7479 0a20 202d 206c 6f77 5f63  verity.  - low_c
│ │ │ -00233790: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f  omplexity.  - lo
│ │ │ -002337a0: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ -002337b0: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ -002337c0: 640a 2020 2d20 7061 636b 6167 655f 7673  d.  - package_vs
│ │ │ -002337d0: 6674 7064 5f72 656d 6f76 6564 0a3c 2f63  ftpd_removed.
│ │ │ -002337f0: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ -00233890: 6564 6961 7469 6f6e 2053 6865 6c6c 2073 ediation Shell s │ │ │ -002338a0: 6372 6970 7420 e287 b23c 2f61 3e3c 6272 cript ...
Co │ │ │ -00233580: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -002335b0: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ -002335d0: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ -002335e0: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ -00233600: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ -00233610: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
│ │ │ -00233950: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ -00233970: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ -002339a0: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ -00233930: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ -00233940: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ -00233960: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ -00233980: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -00233990: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:disable
< │ │ │ -002339d0: 7072 653e 3c63 6f64 653e 0a23 2043 4155 pre>.# CAU │ │ │ -002339e0: 5449 4f4e 3a20 5468 6973 2072 656d 6564 TION: This remed │ │ │ -002339f0: 6961 7469 6f6e 2073 6372 6970 7420 7769 iation script wi │ │ │ -00233a00: 6c6c 2072 656d 6f76 6520 7673 6674 7064 ll remove vsftpd │ │ │ -00233a10: 0a23 2066 726f 6d20 7468 6520 7379 7374 .# from the syst │ │ │ -00233a20: 656d 2c20 616e 6420 6d61 7920 7265 6d6f em, and may remo │ │ │ -00233a30: 7665 2061 6e79 2070 6163 6b61 6765 730a ve any packages. │ │ │ -00233a40: 2320 7468 6174 2064 6570 656e 6420 6f6e # that depend on │ │ │ -00233a50: 2076 7366 7470 642e 2045 7865 6375 7465 vsftpd. Execute │ │ │ -00233a60: 2074 6869 730a 2320 7265 6d65 6469 6174 this.# remediat │ │ │ -00233a70: 696f 6e20 4146 5445 5220 7465 7374 696e ion AFTER testin │ │ │ -00233a80: 6720 6f6e 2061 206e 6f6e 2d70 726f 6475 g on a non-produ │ │ │ -00233a90: 6374 696f 6e0a 2320 7379 7374 656d 210a ction.# system!. │ │ │ -00233aa0: 0a0a 6966 2072 706d 202d 7120 2d2d 7175 ..if rpm -q --qu │ │ │ -00233ab0: 6965 7420 2276 7366 7470 6422 203b 2074 iet "vsftpd" ; t │ │ │ -00233ac0: 6865 6e0a 646e 6620 7265 6d6f 7665 202d hen.dnf remove - │ │ │ -00233ad0: 7920 2d2d 6e6f 6175 746f 7265 6d6f 7665 y --noautoremove │ │ │ -00233ae0: 2022 7673 6674 7064 220a 6669 0a3c 2f63 "vsftpd".fi.
< │ │ │ +00233110: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +00233120: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ +00233170: 3c74 723e 3c74 683e 5374 7261 7465 6779
- 
│ │ │ +002331b0: 6e61 6d65 3a20 2755 6e69 6e73 7461 6c6c  name: 'Uninstall
│ │ │ +002331c0: 2076 7366 7470 6420 5061 636b 6167 653a   vsftpd Package:
│ │ │ +002331d0: 2045 6e73 7572 6520 7673 6674 7064 2069   Ensure vsftpd i
│ │ │ +002331e0: 7320 7265 6d6f 7665 6427 0a20 2061 6e73  s removed'.  ans
│ │ │ +002331f0: 6962 6c65 2e62 7569 6c74 696e 2e70 6163  ible.builtin.pac
│ │ │ +00233200: 6b61 6765 3a0a 2020 2020 6e61 6d65 3a20  kage:.    name: 
│ │ │ +00233210: 7673 6674 7064 0a20 2020 2073 7461 7465  vsftpd.    state
│ │ │ +00233220: 3a20 6162 7365 6e74 0a20 2074 6167 733a  : absent.  tags:
│ │ │ +00233230: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +00233240: 2d43 4d2d 3628 6129 0a20 202d 204e 4953  -CM-6(a).  - NIS
│ │ │ +00233250: 542d 3830 302d 3533 2d43 4d2d 370a 2020  T-800-53-CM-7.  
│ │ │ +00233260: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +00233270: 2d37 2861 290a 2020 2d20 4e49 5354 2d38  -7(a).  - NIST-8
│ │ │ +00233280: 3030 2d35 332d 434d 2d37 2862 290a 2020  00-53-CM-7(b).  
│ │ │ +00233290: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +002332a0: 2d37 2e31 2869 6929 0a20 202d 204e 4953  -7.1(ii).  - NIS
│ │ │ +002332b0: 542d 3830 302d 3533 2d49 412d 3528 3129  T-800-53-IA-5(1)
│ │ │ +002332c0: 2863 290a 2020 2d20 4e49 5354 2d38 3030  (c).  - NIST-800
│ │ │ +002332d0: 2d35 332d 4941 2d35 2831 292e 3128 7629  -53-IA-5(1).1(v)
│ │ │ +002332e0: 0a20 202d 2064 6973 6162 6c65 5f73 7472  .  - disable_str
│ │ │ +002332f0: 6174 6567 790a 2020 2d20 6869 6768 5f73  ategy.  - high_s
│ │ │ +00233300: 6576 6572 6974 790a 2020 2d20 6c6f 775f  everity.  - low_
│ │ │ +00233310: 636f 6d70 6c65 7869 7479 0a20 202d 206c  complexity.  - l
│ │ │ +00233320: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ +00233330: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ +00233340: 6564 0a20 202d 2070 6163 6b61 6765 5f76  ed.  - package_v
│ │ │ +00233350: 7366 7470 645f 7265 6d6f 7665 640a 3c2f  sftpd_removed.
Re │ │ │ +00233410: 6d65 6469 6174 696f 6e20 5075 7070 6574 mediation Puppet │ │ │ +00233420: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ +00233430: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
C │ │ │ +00233100: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ +00233130: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ +00233140: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ +00233180: 3a3c 2f74 683e 3c74 643e 6469 7361 626c :disabl │ │ │ +00233190: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
low< │ │ │ +002334d0: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ +00233520: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
.in
│ │ │ +00233560: 636c 7564 6520 7265 6d6f 7665 5f76 7366  clude remove_vsf
│ │ │ +00233570: 7470 640a 0a63 6c61 7373 2072 656d 6f76  tpd..class remov
│ │ │ +00233580: 655f 7673 6674 7064 207b 0a20 2070 6163  e_vsftpd {.  pac
│ │ │ +00233590: 6b61 6765 207b 2027 7673 6674 7064 273a  kage { 'vsftpd':
│ │ │ +002335a0: 0a20 2020 2065 6e73 7572 6520 3d26 6774  .    ensure =>
│ │ │ +002335b0: 3b20 2770 7572 6765 6427 2c0a 2020 7d0a  ; 'purged',.  }.
│ │ │ +002335c0: 7d0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  }.
< │ │ │ +002335d0: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Sh │ │ │ +00233680: 656c 6c20 7363 7269 7074 20e2 87b2 3c2f ell script ...
Co │ │ │ +002334b0: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +002334e0: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +00233500: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +00233510: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +00233530: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ +00233540: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
│ │ │ +00233720: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
.
│ │ │ +002337c0: 2320 4341 5554 494f 4e3a 2054 6869 7320  # CAUTION: This 
│ │ │ +002337d0: 7265 6d65 6469 6174 696f 6e20 7363 7269  remediation scri
│ │ │ +002337e0: 7074 2077 696c 6c20 7265 6d6f 7665 2076  pt will remove v
│ │ │ +002337f0: 7366 7470 640a 2320 6672 6f6d 2074 6865  sftpd.# from the
│ │ │ +00233800: 2073 7973 7465 6d2c 2061 6e64 206d 6179   system, and may
│ │ │ +00233810: 2072 656d 6f76 6520 616e 7920 7061 636b   remove any pack
│ │ │ +00233820: 6167 6573 0a23 2074 6861 7420 6465 7065  ages.# that depe
│ │ │ +00233830: 6e64 206f 6e20 7673 6674 7064 2e20 4578  nd on vsftpd. Ex
│ │ │ +00233840: 6563 7574 6520 7468 6973 0a23 2072 656d  ecute this.# rem
│ │ │ +00233850: 6564 6961 7469 6f6e 2041 4654 4552 2074  ediation AFTER t
│ │ │ +00233860: 6573 7469 6e67 206f 6e20 6120 6e6f 6e2d  esting on a non-
│ │ │ +00233870: 7072 6f64 7563 7469 6f6e 0a23 2073 7973  production.# sys
│ │ │ +00233880: 7465 6d21 0a0a 0a69 6620 7270 6d20 2d71  tem!...if rpm -q
│ │ │ +00233890: 202d 2d71 7569 6574 2022 7673 6674 7064   --quiet "vsftpd
│ │ │ +002338a0: 2220 3b20 7468 656e 0a64 6e66 2072 656d  " ; then.dnf rem
│ │ │ +002338b0: 6f76 6520 2d79 202d 2d6e 6f61 7574 6f72  ove -y --noautor
│ │ │ +002338c0: 656d 6f76 6520 2276 7366 7470 6422 0a66  emove "vsftpd".f
│ │ │ +002338d0: 690a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  i.
< │ │ │ +002338e0: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation An │ │ │ +00233990: 6163 6f6e 6461 2073 6e69 7070 6574 20e2 aconda snippet . │ │ │ +002339a0: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ +00233710: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +00233740: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +00233750: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +00233790: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ +002337a0: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
│ │ │ +00233a20: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +00233a40: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ +00233a90: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ +00233ac0: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ +00233a30: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +00233a50: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ +00233aa0: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ +00233ab0: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
..package --r
│ │ │ +00233ae0: 656d 6f76 653d 7673 6674 7064 0a3c 2f63  emove=vsftpd.
│ │ │ 00233b00: 3c2f 6469 763e 3c2f 7464 3e3c 2f74 723e
│ │ │ 00233b10: 3c2f 7462 6f64 793e 3c2f 7461 626c 653e │ │ │ 00233b20: 3c2f 7464 3e3c 2f74 723e 3c74 7220 6461 Rem │ │ │ -002344f0: 6564 6961 7469 6f6e 2041 6e61 636f 6e64 ediation Anacond │ │ │ -00234500: 6120 736e 6970 7065 7420 e287 b23c 2f61 a snippet ...
< │ │ │ -002345a0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -002345b0: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ -00234600: 3c74 723e 3c74 683e 5374 7261 7465 6779
..
│ │ │ -00234640: 7061 636b 6167 6520 2d2d 7265 6d6f 7665  package --remove
│ │ │ -00234650: 3d66 7470 0a3c 2f63 6f64 653e 3c2f 7072  =ftp.Remediation
│ │ │ -00234710: 2050 7570 7065 7420 736e 6970 7065 7420   Puppet snippet 
│ │ │ -00234720: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620  ...
low< │ │ │ -002347f0: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>
C │ │ │ -00234590: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -002345c0: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ -002345d0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -00234610: 3a3c 2f74 683e 3c74 643e 6469 7361 626c :disabl │ │ │ -00234620: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
Complexity: │ │ │ -002347b0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Di │ │ │ -002347d0: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:
Reboot:false
St │ │ │ -00234820: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ -00234830: 6469 7361 626c 653c 2f74 643e 3c2f 7472 disable
.include rem
│ │ │ -00234860: 6f76 655f 6674 700a 0a63 6c61 7373 2072  ove_ftp..class r
│ │ │ -00234870: 656d 6f76 655f 6674 7020 7b0a 2020 7061  emove_ftp {.  pa
│ │ │ -00234880: 636b 6167 6520 7b20 2766 7470 273a 0a20  ckage { 'ftp':. 
│ │ │ -00234890: 2020 2065 6e73 7572 6520 3d26 6774 3b20     ensure => 
│ │ │ -002348a0: 2770 7572 6765 6427 2c0a 2020 7d0a 7d0a  'purged',.  }.}.
│ │ │ -002348b0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ -00234960: 5265 6d65 6469 6174 696f 6e20 416e 7369 Remediation Ansi │ │ │ -00234970: 626c 6520 736e 6970 7065 7420 e287 b23c ble snippet ...< │ │ │ -00234980: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
< │ │ │ -00234a50: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -00234a60: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

│ │ │ -00234ab0: 2d20 6e61 6d65 3a20 2752 656d 6f76 6520  - name: 'Remove 
│ │ │ -00234ac0: 6674 7020 5061 636b 6167 653a 2045 6e73  ftp Package: Ens
│ │ │ -00234ad0: 7572 6520 6674 7020 6973 2072 656d 6f76  ure ftp is remov
│ │ │ -00234ae0: 6564 270a 2020 616e 7369 626c 652e 6275  ed'.  ansible.bu
│ │ │ -00234af0: 696c 7469 6e2e 7061 636b 6167 653a 0a20  iltin.package:. 
│ │ │ -00234b00: 2020 206e 616d 653a 2066 7470 0a20 2020     name: ftp.   
│ │ │ -00234b10: 2073 7461 7465 3a20 6162 7365 6e74 0a20   state: absent. 
│ │ │ -00234b20: 2074 6167 733a 0a20 202d 2050 4349 2d44   tags:.  - PCI-D
│ │ │ -00234b30: 5353 7634 2d32 2e32 0a20 202d 2050 4349  SSv4-2.2.  - PCI
│ │ │ -00234b40: 2d44 5353 7634 2d32 2e32 2e34 0a20 202d  -DSSv4-2.2.4.  -
│ │ │ -00234b50: 2064 6973 6162 6c65 5f73 7472 6174 6567   disable_strateg
│ │ │ -00234b60: 790a 2020 2d20 6c6f 775f 636f 6d70 6c65  y.  - low_comple
│ │ │ -00234b70: 7869 7479 0a20 202d 206c 6f77 5f64 6973  xity.  - low_dis
│ │ │ -00234b80: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f  ruption.  - low_
│ │ │ -00234b90: 7365 7665 7269 7479 0a20 202d 206e 6f5f  severity.  - no_
│ │ │ -00234ba0: 7265 626f 6f74 5f6e 6565 6465 640a 2020  reboot_needed.  
│ │ │ -00234bb0: 2d20 7061 636b 6167 655f 6674 705f 7265  - package_ftp_re
│ │ │ -00234bc0: 6d6f 7665 640a 3c2f 636f 6465 3e3c 2f70  moved.

Remediatio │ │ │ -00234c80: 6e20 5368 656c 6c20 7363 7269 7074 20e2 n Shell script . │ │ │ -00234c90: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
Complexity:low
Disrup │ │ │ -00234a30: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -00234a40: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -00234a80: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ -00234a90: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
│ │ │ -00234d10: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -00234d30: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ -00234d80: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ -00234db0: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ -00234d20: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ -00234d40: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ -00234d90: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ -00234da0: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
.# CAUTION: T
│ │ │ -00234dd0: 6869 7320 7265 6d65 6469 6174 696f 6e20  his remediation 
│ │ │ -00234de0: 7363 7269 7074 2077 696c 6c20 7265 6d6f  script will remo
│ │ │ -00234df0: 7665 2066 7470 0a23 2066 726f 6d20 7468  ve ftp.# from th
│ │ │ -00234e00: 6520 7379 7374 656d 2c20 616e 6420 6d61  e system, and ma
│ │ │ -00234e10: 7920 7265 6d6f 7665 2061 6e79 2070 6163  y remove any pac
│ │ │ -00234e20: 6b61 6765 730a 2320 7468 6174 2064 6570  kages.# that dep
│ │ │ -00234e30: 656e 6420 6f6e 2066 7470 2e20 4578 6563  end on ftp. Exec
│ │ │ -00234e40: 7574 6520 7468 6973 0a23 2072 656d 6564  ute this.# remed
│ │ │ -00234e50: 6961 7469 6f6e 2041 4654 4552 2074 6573  iation AFTER tes
│ │ │ -00234e60: 7469 6e67 206f 6e20 6120 6e6f 6e2d 7072  ting on a non-pr
│ │ │ -00234e70: 6f64 7563 7469 6f6e 0a23 2073 7973 7465  oduction.# syste
│ │ │ -00234e80: 6d21 0a0a 0a69 6620 7270 6d20 2d71 202d  m!...if rpm -q -
│ │ │ -00234e90: 2d71 7569 6574 2022 6674 7022 203b 2074  -quiet "ftp" ; t
│ │ │ -00234ea0: 6865 6e0a 646e 6620 7265 6d6f 7665 202d  hen.dnf remove -
│ │ │ -00234eb0: 7920 2d2d 6e6f 6175 746f 7265 6d6f 7665  y --noautoremove
│ │ │ -00234ec0: 2022 6674 7022 0a66 690a 3c2f 636f 6465   "ftp".fi.
│ │ │ +00234510: 3c62 723e 3c64 6976 2063 6c61 7373 3d22  
low< │ │ │ +002345b0: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ +00234600: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
- n
│ │ │ +00234640: 616d 653a 2027 5265 6d6f 7665 2066 7470  ame: 'Remove ftp
│ │ │ +00234650: 2050 6163 6b61 6765 3a20 456e 7375 7265   Package: Ensure
│ │ │ +00234660: 2066 7470 2069 7320 7265 6d6f 7665 6427   ftp is removed'
│ │ │ +00234670: 0a20 2061 6e73 6962 6c65 2e62 7569 6c74  .  ansible.built
│ │ │ +00234680: 696e 2e70 6163 6b61 6765 3a0a 2020 2020  in.package:.    
│ │ │ +00234690: 6e61 6d65 3a20 6674 700a 2020 2020 7374  name: ftp.    st
│ │ │ +002346a0: 6174 653a 2061 6273 656e 740a 2020 7461  ate: absent.  ta
│ │ │ +002346b0: 6773 3a0a 2020 2d20 5043 492d 4453 5376  gs:.  - PCI-DSSv
│ │ │ +002346c0: 342d 322e 320a 2020 2d20 5043 492d 4453  4-2.2.  - PCI-DS
│ │ │ +002346d0: 5376 342d 322e 322e 340a 2020 2d20 6469  Sv4-2.2.4.  - di
│ │ │ +002346e0: 7361 626c 655f 7374 7261 7465 6779 0a20  sable_strategy. 
│ │ │ +002346f0: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ +00234700: 790a 2020 2d20 6c6f 775f 6469 7372 7570  y.  - low_disrup
│ │ │ +00234710: 7469 6f6e 0a20 202d 206c 6f77 5f73 6576  tion.  - low_sev
│ │ │ +00234720: 6572 6974 790a 2020 2d20 6e6f 5f72 6562  erity.  - no_reb
│ │ │ +00234730: 6f6f 745f 6e65 6564 6564 0a20 202d 2070  oot_needed.  - p
│ │ │ +00234740: 6163 6b61 6765 5f66 7470 5f72 656d 6f76  ackage_ftp_remov
│ │ │ +00234750: 6564 0a3c 2f63 6f64 653e 3c2f 7072 653e  ed.
│ │ │ +00234760: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22 Remediation P │ │ │ +00234810: 7570 7065 7420 736e 6970 7065 7420 e287 uppet snippet .. │ │ │ +00234820: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
Co │ │ │ +00234590: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +002345c0: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +002345e0: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +002345f0: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +00234610: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ +00234620: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
< │ │ │ +002348a0: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ +002348c0: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ +00234910: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>< │ │ │ +00234940: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
.include remov
│ │ │ +00234960: 655f 6674 700a 0a63 6c61 7373 2072 656d  e_ftp..class rem
│ │ │ +00234970: 6f76 655f 6674 7020 7b0a 2020 7061 636b  ove_ftp {.  pack
│ │ │ +00234980: 6167 6520 7b20 2766 7470 273a 0a20 2020  age { 'ftp':.   
│ │ │ +00234990: 2065 6e73 7572 6520 3d26 6774 3b20 2770   ensure => 'p
│ │ │ +002349a0: 7572 6765 6427 2c0a 2020 7d0a 7d0a 3c2f  urged',.  }.}.
Re │ │ │ +00234a60: 6d65 6469 6174 696f 6e20 5368 656c 6c20 mediation Shell │ │ │ +00234a70: 7363 7269 7074 20e2 87b2 3c2f 613e 3c62 script ...
low
Disr │ │ │ +002348d0: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +002348e0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ +00234920: 7465 6779 3a3c 2f74 683e 3c74 643e 6469 tegy:di │ │ │ +00234930: 7361 626c 653c 2f74 643e 3c2f 7472 3e3c sable
Comp │ │ │ +00234b00: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +00234b10: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ +00234b30: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ +00234b50: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +00234b60: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ +00234ba0: 3c70 7265 3e3c 636f 6465 3e0a 2320 4341
.# CA
│ │ │ +00234bb0: 5554 494f 4e3a 2054 6869 7320 7265 6d65  UTION: This reme
│ │ │ +00234bc0: 6469 6174 696f 6e20 7363 7269 7074 2077  diation script w
│ │ │ +00234bd0: 696c 6c20 7265 6d6f 7665 2066 7470 0a23  ill remove ftp.#
│ │ │ +00234be0: 2066 726f 6d20 7468 6520 7379 7374 656d   from the system
│ │ │ +00234bf0: 2c20 616e 6420 6d61 7920 7265 6d6f 7665  , and may remove
│ │ │ +00234c00: 2061 6e79 2070 6163 6b61 6765 730a 2320   any packages.# 
│ │ │ +00234c10: 7468 6174 2064 6570 656e 6420 6f6e 2066  that depend on f
│ │ │ +00234c20: 7470 2e20 4578 6563 7574 6520 7468 6973  tp. Execute this
│ │ │ +00234c30: 0a23 2072 656d 6564 6961 7469 6f6e 2041  .# remediation A
│ │ │ +00234c40: 4654 4552 2074 6573 7469 6e67 206f 6e20  FTER testing on 
│ │ │ +00234c50: 6120 6e6f 6e2d 7072 6f64 7563 7469 6f6e  a non-production
│ │ │ +00234c60: 0a23 2073 7973 7465 6d21 0a0a 0a69 6620  .# system!...if 
│ │ │ +00234c70: 7270 6d20 2d71 202d 2d71 7569 6574 2022  rpm -q --quiet "
│ │ │ +00234c80: 6674 7022 203b 2074 6865 6e0a 646e 6620  ftp" ; then.dnf 
│ │ │ +00234c90: 7265 6d6f 7665 202d 7920 2d2d 6e6f 6175  remove -y --noau
│ │ │ +00234ca0: 746f 7265 6d6f 7665 2022 6674 7022 0a66  toremove "ftp".f
│ │ │ +00234cb0: 690a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  i.
< │ │ │ +00234cc0: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation An │ │ │ +00234d70: 6163 6f6e 6461 2073 6e69 7070 6574 20e2 aconda snippet . │ │ │ +00234d80: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ +00234e00: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +00234e20: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ +00234e70: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ +00234ea0: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ +00234e10: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +00234e30: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ +00234e80: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ +00234e90: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
..package --r
│ │ │ +00234ec0: 656d 6f76 653d 6674 700a 3c2f 636f 6465  emove=ftp.
R │ │ │ -002364e0: 656d 6564 6961 7469 6f6e 2041 6e61 636f emediation Anaco │ │ │ -002364f0: 6e64 6120 736e 6970 7065 7420 e287 b23c nda snippet ...< │ │ │ -00236500: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
< │ │ │ -002365d0: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -002365e0: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

│ │ │ -00236630: 0a0a 7061 636b 6167 6520 2d2d 7265 6d6f  ..package --remo
│ │ │ -00236640: 7665 3d68 7474 7064 0a3c 2f63 6f64 653e  ve=httpd.
│ │ │ -00236650: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ -00236700: 7469 6f6e 2050 7570 7065 7420 736e 6970 tion Puppet snip │ │ │ -00236710: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ -00236720: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -00236730: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -00236740: 7365 2220 6964 3d22 6964 3732 3222 3e3c se" id="id722">< │ │ │ -00236750: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ -00236760: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ -00236770: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ -00236780: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ -00236790: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Disruption:Strategy: │ │ │ -00236820: 3c74 643e 6469 7361 626c 653c 2f74 643e │ │ │ -00236830: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
Complexity:low
Disrup │ │ │ -002365b0: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -002365c0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -00236600: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ -00236610: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Complex │ │ │ -002367a0: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ -002367b0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
low
Reboo │ │ │ -002367f0: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -00236800: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
disable
.include │ │ │ -00236850: 2072 656d 6f76 655f 6874 7470 640a 0a63 remove_httpd..c │ │ │ -00236860: 6c61 7373 2072 656d 6f76 655f 6874 7470 lass remove_http │ │ │ -00236870: 6420 7b0a 2020 7061 636b 6167 6520 7b20 d {. package { │ │ │ -00236880: 2768 7474 7064 273a 0a20 2020 2065 6e73 'httpd':. ens │ │ │ -00236890: 7572 6520 3d26 6774 3b20 2770 7572 6765 ure => 'purge │ │ │ -002368a0: 6427 2c0a 2020 7d0a 7d0a 3c2f 636f 6465 d',. }.}.
Remedi │ │ │ -00236960: 6174 696f 6e20 416e 7369 626c 6520 736e ation Ansible sn │ │ │ -00236970: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ -00236a20: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ -00236a40: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ -00236a70: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ -00236a00: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ -00236a10: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ -00236a30: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ -00236a50: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -00236a60: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:disable
< │ │ │ -00236aa0: 7072 653e 3c63 6f64 653e 2d20 6e61 6d65 pre>- name │ │ │ -00236ab0: 3a20 2755 6e69 6e73 7461 6c6c 2068 7474 : 'Uninstall htt │ │ │ -00236ac0: 7064 2050 6163 6b61 6765 3a20 456e 7375 pd Package: Ensu │ │ │ -00236ad0: 7265 2068 7474 7064 2069 7320 7265 6d6f re httpd is remo │ │ │ -00236ae0: 7665 6427 0a20 2061 6e73 6962 6c65 2e62 ved'. ansible.b │ │ │ -00236af0: 7569 6c74 696e 2e70 6163 6b61 6765 3a0a uiltin.package:. │ │ │ -00236b00: 2020 2020 6e61 6d65 3a20 6874 7470 640a name: httpd. │ │ │ -00236b10: 2020 2020 7374 6174 653a 2061 6273 656e state: absen │ │ │ -00236b20: 740a 2020 7461 6773 3a0a 2020 2d20 4e49 t. tags:. - NI │ │ │ -00236b30: 5354 2d38 3030 2d35 332d 434d 2d36 2861 ST-800-53-CM-6(a │ │ │ -00236b40: 290a 2020 2d20 4e49 5354 2d38 3030 2d35 ). - NIST-800-5 │ │ │ -00236b50: 332d 434d 2d37 2861 290a 2020 2d20 4e49 3-CM-7(a). - NI │ │ │ -00236b60: 5354 2d38 3030 2d35 332d 434d 2d37 2862 ST-800-53-CM-7(b │ │ │ -00236b70: 290a 2020 2d20 6469 7361 626c 655f 7374 ). - disable_st │ │ │ -00236b80: 7261 7465 6779 0a20 202d 206c 6f77 5f63 rategy. - low_c │ │ │ -00236b90: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f omplexity. - lo │ │ │ -00236ba0: 775f 6469 7372 7570 7469 6f6e 0a20 202d w_disruption. - │ │ │ -00236bb0: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465 no_reboot_neede │ │ │ -00236bc0: 640a 2020 2d20 7061 636b 6167 655f 6874 d. - package_ht │ │ │ -00236bd0: 7470 645f 7265 6d6f 7665 640a 2020 2d20 tpd_removed. - │ │ │ -00236be0: 756e 6b6e 6f77 6e5f 7365 7665 7269 7479 unknown_severity │ │ │ -00236bf0: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f .Remediation She │ │ │ -00236cb0: 6c6c 2073 6372 6970 7420 e287 b23c 2f61 ll script ...
< │ │ │ -00236d50: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -00236d60: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ -00236db0: 3c74 723e 3c74 683e 5374 7261 7465 6779
.#
│ │ │ -00236df0: 2043 4155 5449 4f4e 3a20 5468 6973 2072   CAUTION: This r
│ │ │ -00236e00: 656d 6564 6961 7469 6f6e 2073 6372 6970  emediation scrip
│ │ │ -00236e10: 7420 7769 6c6c 2072 656d 6f76 6520 6874  t will remove ht
│ │ │ -00236e20: 7470 640a 2320 6672 6f6d 2074 6865 2073  tpd.# from the s
│ │ │ -00236e30: 7973 7465 6d2c 2061 6e64 206d 6179 2072  ystem, and may r
│ │ │ -00236e40: 656d 6f76 6520 616e 7920 7061 636b 6167  emove any packag
│ │ │ -00236e50: 6573 0a23 2074 6861 7420 6465 7065 6e64  es.# that depend
│ │ │ -00236e60: 206f 6e20 6874 7470 642e 2045 7865 6375   on httpd. Execu
│ │ │ -00236e70: 7465 2074 6869 730a 2320 7265 6d65 6469  te this.# remedi
│ │ │ -00236e80: 6174 696f 6e20 4146 5445 5220 7465 7374  ation AFTER test
│ │ │ -00236e90: 696e 6720 6f6e 2061 206e 6f6e 2d70 726f  ing on a non-pro
│ │ │ -00236ea0: 6475 6374 696f 6e0a 2320 7379 7374 656d  duction.# system
│ │ │ -00236eb0: 210a 0a0a 6966 2072 706d 202d 7120 2d2d  !...if rpm -q --
│ │ │ -00236ec0: 7175 6965 7420 2268 7474 7064 2220 3b20  quiet "httpd" ; 
│ │ │ -00236ed0: 7468 656e 0a64 6e66 2072 656d 6f76 6520  then.dnf remove 
│ │ │ -00236ee0: 2d79 202d 2d6e 6f61 7574 6f72 656d 6f76  -y --noautoremov
│ │ │ -00236ef0: 6520 2268 7474 7064 220a 6669 0a3c 2f63  e "httpd".fi.
C │ │ │ -00236d40: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -00236d70: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ -00236d80: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -00236dc0: 3a3c 2f74 683e 3c74 643e 6469 7361 626c :disabl │ │ │ -00236dd0: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
│ │ │ +00236590: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
-
│ │ │ +00236630: 206e 616d 653a 2027 556e 696e 7374 616c   name: 'Uninstal
│ │ │ +00236640: 6c20 6874 7470 6420 5061 636b 6167 653a  l httpd Package:
│ │ │ +00236650: 2045 6e73 7572 6520 6874 7470 6420 6973   Ensure httpd is
│ │ │ +00236660: 2072 656d 6f76 6564 270a 2020 616e 7369   removed'.  ansi
│ │ │ +00236670: 626c 652e 6275 696c 7469 6e2e 7061 636b  ble.builtin.pack
│ │ │ +00236680: 6167 653a 0a20 2020 206e 616d 653a 2068  age:.    name: h
│ │ │ +00236690: 7474 7064 0a20 2020 2073 7461 7465 3a20  ttpd.    state: 
│ │ │ +002366a0: 6162 7365 6e74 0a20 2074 6167 733a 0a20  absent.  tags:. 
│ │ │ +002366b0: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +002366c0: 4d2d 3628 6129 0a20 202d 204e 4953 542d  M-6(a).  - NIST-
│ │ │ +002366d0: 3830 302d 3533 2d43 4d2d 3728 6129 0a20  800-53-CM-7(a). 
│ │ │ +002366e0: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +002366f0: 4d2d 3728 6229 0a20 202d 2064 6973 6162  M-7(b).  - disab
│ │ │ +00236700: 6c65 5f73 7472 6174 6567 790a 2020 2d20  le_strategy.  - 
│ │ │ +00236710: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ +00236720: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ +00236730: 6e0a 2020 2d20 6e6f 5f72 6562 6f6f 745f  n.  - no_reboot_
│ │ │ +00236740: 6e65 6564 6564 0a20 202d 2070 6163 6b61  needed.  - packa
│ │ │ +00236750: 6765 5f68 7474 7064 5f72 656d 6f76 6564  ge_httpd_removed
│ │ │ +00236760: 0a20 202d 2075 6e6b 6e6f 776e 5f73 6576  .  - unknown_sev
│ │ │ +00236770: 6572 6974 790a 3c2f 636f 6465 3e3c 2f70  erity.

Remediatio │ │ │ +00236830: 6e20 5075 7070 6574 2073 6e69 7070 6574 n Puppet snippet │ │ │ +00236840: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
< │ │ │ +00236900: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +00236910: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c
│ │ │ +00236580: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +002365b0: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +002365c0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +00236600: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ +00236610: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Complexity │ │ │ +002368d0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
D │ │ │ +002368f0: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:
Reboot:< │ │ │ +00236920: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>false
S │ │ │ +00236940: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:disable
<
│ │ │ +00236970: 636f 6465 3e0a 696e 636c 7564 6520 7265  code>.include re
│ │ │ +00236980: 6d6f 7665 5f68 7474 7064 0a0a 636c 6173  move_httpd..clas
│ │ │ +00236990: 7320 7265 6d6f 7665 5f68 7474 7064 207b  s remove_httpd {
│ │ │ +002369a0: 0a20 2070 6163 6b61 6765 207b 2027 6874  .  package { 'ht
│ │ │ +002369b0: 7470 6427 3a0a 2020 2020 656e 7375 7265  tpd':.    ensure
│ │ │ +002369c0: 203d 2667 743b 2027 7075 7267 6564 272c   => 'purged',
│ │ │ +002369d0: 0a20 207d 0a7d 0a3c 2f63 6f64 653e 3c2f  .  }.}.
Remediati │ │ │ +00236a90: 6f6e 2053 6865 6c6c 2073 6372 6970 7420 on Shell script │ │ │ +00236aa0: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
Complexity: │ │ │ +00236b30: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ +00236b50: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:low< │ │ │ +00236b70: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:falseSt │ │ │ +00236ba0: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ +00236bb0: 6469 7361 626c 653c 2f74 643e 3c2f 7472 disable
.# CAUTION: 
│ │ │ +00236be0: 5468 6973 2072 656d 6564 6961 7469 6f6e  This remediation
│ │ │ +00236bf0: 2073 6372 6970 7420 7769 6c6c 2072 656d   script will rem
│ │ │ +00236c00: 6f76 6520 6874 7470 640a 2320 6672 6f6d  ove httpd.# from
│ │ │ +00236c10: 2074 6865 2073 7973 7465 6d2c 2061 6e64   the system, and
│ │ │ +00236c20: 206d 6179 2072 656d 6f76 6520 616e 7920   may remove any 
│ │ │ +00236c30: 7061 636b 6167 6573 0a23 2074 6861 7420  packages.# that 
│ │ │ +00236c40: 6465 7065 6e64 206f 6e20 6874 7470 642e  depend on httpd.
│ │ │ +00236c50: 2045 7865 6375 7465 2074 6869 730a 2320   Execute this.# 
│ │ │ +00236c60: 7265 6d65 6469 6174 696f 6e20 4146 5445  remediation AFTE
│ │ │ +00236c70: 5220 7465 7374 696e 6720 6f6e 2061 206e  R testing on a n
│ │ │ +00236c80: 6f6e 2d70 726f 6475 6374 696f 6e0a 2320  on-production.# 
│ │ │ +00236c90: 7379 7374 656d 210a 0a0a 6966 2072 706d  system!...if rpm
│ │ │ +00236ca0: 202d 7120 2d2d 7175 6965 7420 2268 7474   -q --quiet "htt
│ │ │ +00236cb0: 7064 2220 3b20 7468 656e 0a64 6e66 2072  pd" ; then.dnf r
│ │ │ +00236cc0: 656d 6f76 6520 2d79 202d 2d6e 6f61 7574  emove -y --noaut
│ │ │ +00236cd0: 6f72 656d 6f76 6520 2268 7474 7064 220a  oremove "httpd".
│ │ │ +00236ce0: 6669 0a3c 2f63 6f64 653e 3c2f 7072 653e  fi.
│ │ │ +00236cf0: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation A │ │ │ +00236da0: 6e61 636f 6e64 6120 736e 6970 7065 7420 naconda snippet │ │ │ +00236db0: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
Complexity: │ │ │ +00236e40: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ +00236e60: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:low< │ │ │ +00236e80: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:falseSt │ │ │ +00236eb0: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ +00236ec0: 6469 7361 626c 653c 2f74 643e 3c2f 7472 disable
..package --
│ │ │ +00236ef0: 7265 6d6f 7665 3d68 7474 7064 0a3c 2f63  remove=httpd.
│ │ │ 00236f10: 3c2f 6469 763e 3c2f 7464 3e3c 2f74 723e
│ │ │ 00236f20: 3c2f 7462 6f64 793e 3c2f 7461 626c 653e │ │ │ 00236f30: 3c2f 7464 3e3c 2f74 723e 3c74 7220 6461 │ │ │ -00237f90: 5265 6d65 6469 6174 696f 6e20 416e 6163 Remediation Anac │ │ │ -00237fa0: 6f6e 6461 2073 6e69 7070 6574 20e2 87b2 onda snippet ... │ │ │ -00237fb0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity: │ │ │ -00238080: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -00238090: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
..package --rem
│ │ │ -002380f0: 6f76 653d 6e67 696e 780a 3c2f 636f 6465  ove=nginx.
Remedi │ │ │ -002381b0: 6174 696f 6e20 5075 7070 6574 2073 6e69 ation Puppet sni │ │ │ -002381c0: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -002381d0: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -00238200: 3c74 6162 6c65 2063 6c61 7373 3d22 7461
low
Disru │ │ │ -00238060: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ -00238070: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ -002380b0: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ -002380c0: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
< │ │ │ -00238270: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ -00238290: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ -002382c0: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
Comple │ │ │ -00238250: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ -00238260: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ -002382a0: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ -002382b0: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
disable

.includ │ │ │ -00238300: 6520 7265 6d6f 7665 5f6e 6769 6e78 0a0a e remove_nginx.. │ │ │ -00238310: 636c 6173 7320 7265 6d6f 7665 5f6e 6769 class remove_ngi │ │ │ -00238320: 6e78 207b 0a20 2070 6163 6b61 6765 207b nx {. package { │ │ │ -00238330: 2027 6e67 696e 7827 3a0a 2020 2020 656e 'nginx':. en │ │ │ -00238340: 7375 7265 203d 2667 743b 2027 7075 7267 sure => 'purg │ │ │ -00238350: 6564 272c 0a20 207d 0a7d 0a3c 2f63 6f64 ed',. }.}.

Remed │ │ │ -00238410: 6961 7469 6f6e 2041 6e73 6962 6c65 2073 iation Ansible s │ │ │ -00238420: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ -002384b0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -002384c0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -002384e0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ -00238500: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -00238510: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ -00238550: 3c70 7265 3e3c 636f 6465 3e2d 206e 616d
- nam
│ │ │ -00238560: 653a 2027 556e 696e 7374 616c 6c20 6e67  e: 'Uninstall ng
│ │ │ -00238570: 696e 7820 5061 636b 6167 653a 2045 6e73  inx Package: Ens
│ │ │ -00238580: 7572 6520 6e67 696e 7820 6973 2072 656d  ure nginx is rem
│ │ │ -00238590: 6f76 6564 270a 2020 616e 7369 626c 652e  oved'.  ansible.
│ │ │ -002385a0: 6275 696c 7469 6e2e 7061 636b 6167 653a  builtin.package:
│ │ │ -002385b0: 0a20 2020 206e 616d 653a 206e 6769 6e78  .    name: nginx
│ │ │ -002385c0: 0a20 2020 2073 7461 7465 3a20 6162 7365  .    state: abse
│ │ │ -002385d0: 6e74 0a20 2074 6167 733a 0a20 202d 204e  nt.  tags:.  - N
│ │ │ -002385e0: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ -002385f0: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ -00238600: 3533 2d43 4d2d 3728 6129 0a20 202d 204e  53-CM-7(a).  - N
│ │ │ -00238610: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ -00238620: 6229 0a20 202d 2064 6973 6162 6c65 5f73  b).  - disable_s
│ │ │ -00238630: 7472 6174 6567 790a 2020 2d20 6c6f 775f  trategy.  - low_
│ │ │ -00238640: 636f 6d70 6c65 7869 7479 0a20 202d 206c  complexity.  - l
│ │ │ -00238650: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ -00238660: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ -00238670: 6564 0a20 202d 2070 6163 6b61 6765 5f6e  ed.  - package_n
│ │ │ -00238680: 6769 6e78 5f72 656d 6f76 6564 0a20 202d  ginx_removed.  -
│ │ │ -00238690: 2075 6e6b 6e6f 776e 5f73 6576 6572 6974   unknown_severit
│ │ │ -002386a0: 790a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  y.
< │ │ │ -002386b0: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Sh │ │ │ -00238760: 656c 6c20 7363 7269 7074 20e2 87b2 3c2f ell script ...
│ │ │ -00238800: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
.
│ │ │ -002388a0: 2320 4341 5554 494f 4e3a 2054 6869 7320  # CAUTION: This 
│ │ │ -002388b0: 7265 6d65 6469 6174 696f 6e20 7363 7269  remediation scri
│ │ │ -002388c0: 7074 2077 696c 6c20 7265 6d6f 7665 206e  pt will remove n
│ │ │ -002388d0: 6769 6e78 0a23 2066 726f 6d20 7468 6520  ginx.# from the 
│ │ │ -002388e0: 7379 7374 656d 2c20 616e 6420 6d61 7920  system, and may 
│ │ │ -002388f0: 7265 6d6f 7665 2061 6e79 2070 6163 6b61  remove any packa
│ │ │ -00238900: 6765 730a 2320 7468 6174 2064 6570 656e  ges.# that depen
│ │ │ -00238910: 6420 6f6e 206e 6769 6e78 2e20 4578 6563  d on nginx. Exec
│ │ │ -00238920: 7574 6520 7468 6973 0a23 2072 656d 6564  ute this.# remed
│ │ │ -00238930: 6961 7469 6f6e 2041 4654 4552 2074 6573  iation AFTER tes
│ │ │ -00238940: 7469 6e67 206f 6e20 6120 6e6f 6e2d 7072  ting on a non-pr
│ │ │ -00238950: 6f64 7563 7469 6f6e 0a23 2073 7973 7465  oduction.# syste
│ │ │ -00238960: 6d21 0a0a 0a69 6620 7270 6d20 2d71 202d  m!...if rpm -q -
│ │ │ -00238970: 2d71 7569 6574 2022 6e67 696e 7822 203b  -quiet "nginx" ;
│ │ │ -00238980: 2074 6865 6e0a 646e 6620 7265 6d6f 7665   then.dnf remove
│ │ │ -00238990: 202d 7920 2d2d 6e6f 6175 746f 7265 6d6f   -y --noautoremo
│ │ │ -002389a0: 7665 2022 6e67 696e 7822 0a66 690a 3c2f  ve "nginx".fi.
│ │ │ -002387f0: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -00238820: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -00238830: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -00238870: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ -00238880: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
< │ │ │ +00238080: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +00238090: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

│ │ │ +002380e0: 2d20 6e61 6d65 3a20 2755 6e69 6e73 7461  - name: 'Uninsta
│ │ │ +002380f0: 6c6c 206e 6769 6e78 2050 6163 6b61 6765  ll nginx Package
│ │ │ +00238100: 3a20 456e 7375 7265 206e 6769 6e78 2069  : Ensure nginx i
│ │ │ +00238110: 7320 7265 6d6f 7665 6427 0a20 2061 6e73  s removed'.  ans
│ │ │ +00238120: 6962 6c65 2e62 7569 6c74 696e 2e70 6163  ible.builtin.pac
│ │ │ +00238130: 6b61 6765 3a0a 2020 2020 6e61 6d65 3a20  kage:.    name: 
│ │ │ +00238140: 6e67 696e 780a 2020 2020 7374 6174 653a  nginx.    state:
│ │ │ +00238150: 2061 6273 656e 740a 2020 7461 6773 3a0a   absent.  tags:.
│ │ │ +00238160: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +00238170: 434d 2d36 2861 290a 2020 2d20 4e49 5354  CM-6(a).  - NIST
│ │ │ +00238180: 2d38 3030 2d35 332d 434d 2d37 2861 290a  -800-53-CM-7(a).
│ │ │ +00238190: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +002381a0: 434d 2d37 2862 290a 2020 2d20 6469 7361  CM-7(b).  - disa
│ │ │ +002381b0: 626c 655f 7374 7261 7465 6779 0a20 202d  ble_strategy.  -
│ │ │ +002381c0: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ +002381d0: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ +002381e0: 6f6e 0a20 202d 206e 6f5f 7265 626f 6f74  on.  - no_reboot
│ │ │ +002381f0: 5f6e 6565 6465 640a 2020 2d20 7061 636b  _needed.  - pack
│ │ │ +00238200: 6167 655f 6e67 696e 785f 7265 6d6f 7665  age_nginx_remove
│ │ │ +00238210: 640a 2020 2d20 756e 6b6e 6f77 6e5f 7365  d.  - unknown_se
│ │ │ +00238220: 7665 7269 7479 0a3c 2f63 6f64 653e 3c2f  verity.Remediati
│ │ │ +002382e0: 6f6e 2050 7570 7065 7420 736e 6970 7065  on Puppet snippe
│ │ │ +002382f0: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469  t ...
< │ │ │ +00238370: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>
│ │ │ +002383b0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 disable
Complexity:low
Disrup │ │ │ +00238060: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ +00238070: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ +002380b0: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ +002380c0: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Complexit │ │ │ +00238380: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low
│ │ │ +002383a0: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption:low
Reboot: │ │ │ +002383d0: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false
│ │ │ +002383f0: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:
│ │ │ +00238420: 3c63 6f64 653e 0a69 6e63 6c75 6465 2072  .include r
│ │ │ +00238430: 656d 6f76 655f 6e67 696e 780a 0a63 6c61  emove_nginx..cla
│ │ │ +00238440: 7373 2072 656d 6f76 655f 6e67 696e 7820  ss remove_nginx 
│ │ │ +00238450: 7b0a 2020 7061 636b 6167 6520 7b20 276e  {.  package { 'n
│ │ │ +00238460: 6769 6e78 273a 0a20 2020 2065 6e73 7572  ginx':.    ensur
│ │ │ +00238470: 6520 3d26 6774 3b20 2770 7572 6765 6427  e => 'purged'
│ │ │ +00238480: 2c0a 2020 7d0a 7d0a 3c2f 636f 6465 3e3c  ,.  }.}.<
│ │ │ +00238490: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>
Remediat │ │ │ +00238540: 696f 6e20 5368 656c 6c20 7363 7269 7074 ion Shell script │ │ │ +00238550: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Complexity │ │ │ +002385e0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ +00238600: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ +00238610: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +00238620: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ +00238630: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ +00238650: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:disable
<
│ │ │ +00238680: 636f 6465 3e0a 2320 4341 5554 494f 4e3a  code>.# CAUTION:
│ │ │ +00238690: 2054 6869 7320 7265 6d65 6469 6174 696f   This remediatio
│ │ │ +002386a0: 6e20 7363 7269 7074 2077 696c 6c20 7265  n script will re
│ │ │ +002386b0: 6d6f 7665 206e 6769 6e78 0a23 2066 726f  move nginx.# fro
│ │ │ +002386c0: 6d20 7468 6520 7379 7374 656d 2c20 616e  m the system, an
│ │ │ +002386d0: 6420 6d61 7920 7265 6d6f 7665 2061 6e79  d may remove any
│ │ │ +002386e0: 2070 6163 6b61 6765 730a 2320 7468 6174   packages.# that
│ │ │ +002386f0: 2064 6570 656e 6420 6f6e 206e 6769 6e78   depend on nginx
│ │ │ +00238700: 2e20 4578 6563 7574 6520 7468 6973 0a23  . Execute this.#
│ │ │ +00238710: 2072 656d 6564 6961 7469 6f6e 2041 4654   remediation AFT
│ │ │ +00238720: 4552 2074 6573 7469 6e67 206f 6e20 6120  ER testing on a 
│ │ │ +00238730: 6e6f 6e2d 7072 6f64 7563 7469 6f6e 0a23  non-production.#
│ │ │ +00238740: 2073 7973 7465 6d21 0a0a 0a69 6620 7270   system!...if rp
│ │ │ +00238750: 6d20 2d71 202d 2d71 7569 6574 2022 6e67  m -q --quiet "ng
│ │ │ +00238760: 696e 7822 203b 2074 6865 6e0a 646e 6620  inx" ; then.dnf 
│ │ │ +00238770: 7265 6d6f 7665 202d 7920 2d2d 6e6f 6175  remove -y --noau
│ │ │ +00238780: 746f 7265 6d6f 7665 2022 6e67 696e 7822  toremove "nginx"
│ │ │ +00238790: 0a66 690a 3c2f 636f 6465 3e3c 2f70 7265  .fi.
Remediation │ │ │ +00238850: 416e 6163 6f6e 6461 2073 6e69 7070 6574 Anaconda snippet │ │ │ +00238860: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Complexity │ │ │ +002388f0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ +00238910: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ +00238920: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +00238930: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ +00238940: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ +00238960: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:disable
<
│ │ │ +00238990: 636f 6465 3e0a 0a70 6163 6b61 6765 202d  code>..package -
│ │ │ +002389a0: 2d72 656d 6f76 653d 6e67 696e 780a 3c2f  -remove=nginx.
Remediatio │ │ │ -00239950: 6e20 416e 6163 6f6e 6461 2073 6e69 7070 n Anaconda 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>
..package
│ │ │ -00239aa0: 202d 2d72 656d 6f76 653d 6379 7275 732d   --remove=cyrus-
│ │ │ -00239ab0: 696d 6170 640a 3c2f 636f 6465 3e3c 2f70  imapd.

Remediatio │ │ │ -00239b70: 6e20 5075 7070 6574 2073 6e69 7070 6574 n Puppet snippet │ │ │ -00239b80: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Complexity │ │ │ -00239c10: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ -00239c30: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ -00239c40: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -00239c50: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ -00239c60: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ -00239c80: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:disable
<
│ │ │ -00239cb0: 636f 6465 3e0a 696e 636c 7564 6520 7265  code>.include re
│ │ │ -00239cc0: 6d6f 7665 5f63 7972 7573 2d69 6d61 7064  move_cyrus-imapd
│ │ │ -00239cd0: 0a0a 636c 6173 7320 7265 6d6f 7665 5f63  ..class remove_c
│ │ │ -00239ce0: 7972 7573 2d69 6d61 7064 207b 0a20 2070  yrus-imapd {.  p
│ │ │ -00239cf0: 6163 6b61 6765 207b 2027 6379 7275 732d  ackage { 'cyrus-
│ │ │ -00239d00: 696d 6170 6427 3a0a 2020 2020 656e 7375  imapd':.    ensu
│ │ │ -00239d10: 7265 203d 2667 743b 2027 7075 7267 6564  re => 'purged
│ │ │ -00239d20: 272c 0a20 207d 0a7d 0a3c 2f63 6f64 653e  ',.  }.}.
│ │ │ -00239d30: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ -00239de0: 7469 6f6e 2041 6e73 6962 6c65 2073 6e69 tion Ansible sni │ │ │ -00239df0: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -00239e00: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -00239e30: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ -00239ea0: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ -00239ec0: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ -00239ef0: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
Comple │ │ │ -00239e80: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ -00239e90: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ -00239ed0: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ -00239ee0: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
disable

- name: │ │ │ -00239f30: 2027 556e 696e 7374 616c 6c20 6379 7275 'Uninstall cyru │ │ │ -00239f40: 732d 696d 6170 6420 5061 636b 6167 653a s-imapd Package: │ │ │ -00239f50: 2045 6e73 7572 6520 6379 7275 732d 696d Ensure cyrus-im │ │ │ -00239f60: 6170 6420 6973 2072 656d 6f76 6564 270a apd is removed'. │ │ │ -00239f70: 2020 616e 7369 626c 652e 6275 696c 7469 ansible.builti │ │ │ -00239f80: 6e2e 7061 636b 6167 653a 0a20 2020 206e n.package:. n │ │ │ -00239f90: 616d 653a 2063 7972 7573 2d69 6d61 7064 ame: cyrus-imapd │ │ │ -00239fa0: 0a20 2020 2073 7461 7465 3a20 6162 7365 . state: abse │ │ │ -00239fb0: 6e74 0a20 2074 6167 733a 0a20 202d 2064 nt. tags:. - d │ │ │ -00239fc0: 6973 6162 6c65 5f73 7472 6174 6567 790a isable_strategy. │ │ │ -00239fd0: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869 - low_complexi │ │ │ -00239fe0: 7479 0a20 202d 206c 6f77 5f64 6973 7275 ty. - low_disru │ │ │ -00239ff0: 7074 696f 6e0a 2020 2d20 6e6f 5f72 6562 ption. - no_reb │ │ │ -0023a000: 6f6f 745f 6e65 6564 6564 0a20 202d 2070 oot_needed. - p │ │ │ -0023a010: 6163 6b61 6765 5f63 7972 7573 2d69 6d61 ackage_cyrus-ima │ │ │ -0023a020: 7064 5f72 656d 6f76 6564 0a20 202d 2075 pd_removed. - u │ │ │ -0023a030: 6e6b 6e6f 776e 5f73 6576 6572 6974 790a nknown_severity. │ │ │ -0023a040: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64 │ │ │ -0023a0f0: 5265 6d65 6469 6174 696f 6e20 5368 656c Remediation Shel │ │ │ -0023a100: 6c20 7363 7269 7074 20e2 87b2 3c2f 613e l script ... │ │ │ -0023a110: 3c62 723e 3c64 6976 2063 6c61 7373 3d22

low< │ │ │ -0023a1b0: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ -0023a200: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
.# 
│ │ │ -0023a240: 4341 5554 494f 4e3a 2054 6869 7320 7265  CAUTION: This re
│ │ │ -0023a250: 6d65 6469 6174 696f 6e20 7363 7269 7074  mediation script
│ │ │ -0023a260: 2077 696c 6c20 7265 6d6f 7665 2063 7972   will remove cyr
│ │ │ -0023a270: 7573 2d69 6d61 7064 0a23 2066 726f 6d20  us-imapd.# from 
│ │ │ -0023a280: 7468 6520 7379 7374 656d 2c20 616e 6420  the system, and 
│ │ │ -0023a290: 6d61 7920 7265 6d6f 7665 2061 6e79 2070  may remove any p
│ │ │ -0023a2a0: 6163 6b61 6765 730a 2320 7468 6174 2064  ackages.# that d
│ │ │ -0023a2b0: 6570 656e 6420 6f6e 2063 7972 7573 2d69  epend on cyrus-i
│ │ │ -0023a2c0: 6d61 7064 2e20 4578 6563 7574 6520 7468  mapd. Execute th
│ │ │ -0023a2d0: 6973 0a23 2072 656d 6564 6961 7469 6f6e  is.# remediation
│ │ │ -0023a2e0: 2041 4654 4552 2074 6573 7469 6e67 206f   AFTER testing o
│ │ │ -0023a2f0: 6e20 6120 6e6f 6e2d 7072 6f64 7563 7469  n a non-producti
│ │ │ -0023a300: 6f6e 0a23 2073 7973 7465 6d21 0a0a 0a69  on.# system!...i
│ │ │ -0023a310: 6620 7270 6d20 2d71 202d 2d71 7569 6574  f rpm -q --quiet
│ │ │ -0023a320: 2022 6379 7275 732d 696d 6170 6422 203b   "cyrus-imapd" ;
│ │ │ -0023a330: 2074 6865 6e0a 646e 6620 7265 6d6f 7665   then.dnf remove
│ │ │ -0023a340: 202d 7920 2d2d 6e6f 6175 746f 7265 6d6f   -y --noautoremo
│ │ │ -0023a350: 7665 2022 6379 7275 732d 696d 6170 6422  ve "cyrus-imapd"
│ │ │ -0023a360: 0a66 690a 3c2f 636f 6465 3e3c 2f70 7265  .fi.

< │ │ │ +002399e0: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr> │ │ │ +00239a20: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 disable
Co │ │ │ -0023a190: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -0023a1c0: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ -0023a1e0: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ -0023a1f0: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ -0023a210: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ -0023a220: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Complexit │ │ │ +002399f0: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low
│ │ │ +00239a10: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption:low
Reboot: │ │ │ +00239a40: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false
│ │ │ +00239a60: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:
│ │ │ +00239a90: 3c63 6f64 653e 2d20 6e61 6d65 3a20 2755  - name: 'U
│ │ │ +00239aa0: 6e69 6e73 7461 6c6c 2063 7972 7573 2d69  ninstall cyrus-i
│ │ │ +00239ab0: 6d61 7064 2050 6163 6b61 6765 3a20 456e  mapd Package: En
│ │ │ +00239ac0: 7375 7265 2063 7972 7573 2d69 6d61 7064  sure cyrus-imapd
│ │ │ +00239ad0: 2069 7320 7265 6d6f 7665 6427 0a20 2061   is removed'.  a
│ │ │ +00239ae0: 6e73 6962 6c65 2e62 7569 6c74 696e 2e70  nsible.builtin.p
│ │ │ +00239af0: 6163 6b61 6765 3a0a 2020 2020 6e61 6d65  ackage:.    name
│ │ │ +00239b00: 3a20 6379 7275 732d 696d 6170 640a 2020  : cyrus-imapd.  
│ │ │ +00239b10: 2020 7374 6174 653a 2061 6273 656e 740a    state: absent.
│ │ │ +00239b20: 2020 7461 6773 3a0a 2020 2d20 6469 7361    tags:.  - disa
│ │ │ +00239b30: 626c 655f 7374 7261 7465 6779 0a20 202d  ble_strategy.  -
│ │ │ +00239b40: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ +00239b50: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ +00239b60: 6f6e 0a20 202d 206e 6f5f 7265 626f 6f74  on.  - no_reboot
│ │ │ +00239b70: 5f6e 6565 6465 640a 2020 2d20 7061 636b  _needed.  - pack
│ │ │ +00239b80: 6167 655f 6379 7275 732d 696d 6170 645f  age_cyrus-imapd_
│ │ │ +00239b90: 7265 6d6f 7665 640a 2020 2d20 756e 6b6e  removed.  - unkn
│ │ │ +00239ba0: 6f77 6e5f 7365 7665 7269 7479 0a3c 2f63  own_severity.
│ │ │ +00239bc0: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ +00239c60: 6564 6961 7469 6f6e 2050 7570 7065 7420 ediation Puppet │ │ │ +00239c70: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ +00239c80: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Com │ │ │ +00239d00: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ +00239d30: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ +00239d50: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +00239d60: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ +00239d80: 2f74 683e 3c74 643e 6469 7361 626c 653c /th>disable< │ │ │ +00239d90: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
.inc
│ │ │ +00239db0: 6c75 6465 2072 656d 6f76 655f 6379 7275  lude remove_cyru
│ │ │ +00239dc0: 732d 696d 6170 640a 0a63 6c61 7373 2072  s-imapd..class r
│ │ │ +00239dd0: 656d 6f76 655f 6379 7275 732d 696d 6170  emove_cyrus-imap
│ │ │ +00239de0: 6420 7b0a 2020 7061 636b 6167 6520 7b20  d {.  package { 
│ │ │ +00239df0: 2763 7972 7573 2d69 6d61 7064 273a 0a20  'cyrus-imapd':. 
│ │ │ +00239e00: 2020 2065 6e73 7572 6520 3d26 6774 3b20     ensure => 
│ │ │ +00239e10: 2770 7572 6765 6427 2c0a 2020 7d0a 7d0a  'purged',.  }.}.
│ │ │ +00239e20: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ +00239ed0: 5265 6d65 6469 6174 696f 6e20 5368 656c Remediation Shel │ │ │ +00239ee0: 6c20 7363 7269 7074 20e2 87b2 3c2f 613e l script ... │ │ │ +00239ef0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ +00239f90: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ +00239fe0: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
.# 
│ │ │ +0023a020: 4341 5554 494f 4e3a 2054 6869 7320 7265  CAUTION: This re
│ │ │ +0023a030: 6d65 6469 6174 696f 6e20 7363 7269 7074  mediation script
│ │ │ +0023a040: 2077 696c 6c20 7265 6d6f 7665 2063 7972   will remove cyr
│ │ │ +0023a050: 7573 2d69 6d61 7064 0a23 2066 726f 6d20  us-imapd.# from 
│ │ │ +0023a060: 7468 6520 7379 7374 656d 2c20 616e 6420  the system, and 
│ │ │ +0023a070: 6d61 7920 7265 6d6f 7665 2061 6e79 2070  may remove any p
│ │ │ +0023a080: 6163 6b61 6765 730a 2320 7468 6174 2064  ackages.# that d
│ │ │ +0023a090: 6570 656e 6420 6f6e 2063 7972 7573 2d69  epend on cyrus-i
│ │ │ +0023a0a0: 6d61 7064 2e20 4578 6563 7574 6520 7468  mapd. Execute th
│ │ │ +0023a0b0: 6973 0a23 2072 656d 6564 6961 7469 6f6e  is.# remediation
│ │ │ +0023a0c0: 2041 4654 4552 2074 6573 7469 6e67 206f   AFTER testing o
│ │ │ +0023a0d0: 6e20 6120 6e6f 6e2d 7072 6f64 7563 7469  n a non-producti
│ │ │ +0023a0e0: 6f6e 0a23 2073 7973 7465 6d21 0a0a 0a69  on.# system!...i
│ │ │ +0023a0f0: 6620 7270 6d20 2d71 202d 2d71 7569 6574  f rpm -q --quiet
│ │ │ +0023a100: 2022 6379 7275 732d 696d 6170 6422 203b   "cyrus-imapd" ;
│ │ │ +0023a110: 2074 6865 6e0a 646e 6620 7265 6d6f 7665   then.dnf remove
│ │ │ +0023a120: 202d 7920 2d2d 6e6f 6175 746f 7265 6d6f   -y --noautoremo
│ │ │ +0023a130: 7665 2022 6379 7275 732d 696d 6170 6422  ve "cyrus-imapd"
│ │ │ +0023a140: 0a66 690a 3c2f 636f 6465 3e3c 2f70 7265  .fi.
Remediation │ │ │ +0023a200: 416e 6163 6f6e 6461 2073 6e69 7070 6574 Anaconda snippet │ │ │ +0023a210: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
< │ │ │ +0023a2d0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +0023a2e0: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c
Co │ │ │ +00239f70: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +00239fa0: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +00239fc0: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +00239fd0: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +00239ff0: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ +0023a000: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Complexity │ │ │ +0023a2a0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
D │ │ │ +0023a2c0: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:
Reboot:< │ │ │ +0023a2f0: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>false
S │ │ │ +0023a310: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:disable
<
│ │ │ +0023a340: 636f 6465 3e0a 0a70 6163 6b61 6765 202d  code>..package -
│ │ │ +0023a350: 2d72 656d 6f76 653d 6379 7275 732d 696d  -remove=cyrus-im
│ │ │ +0023a360: 6170 640a 3c2f 636f 6465 3e3c 2f70 7265  apd.
< │ │ │ 0023a390: 2f74 6162 6c65 3e3c 2f74 643e 3c2f 7472 /table>Remediati │ │ │ -0023aef0: 6f6e 2041 6e61 636f 6e64 6120 736e 6970 on Anaconda snip │ │ │ -0023af00: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ -0023af10: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -0023af20: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -0023af30: 7365 2220 6964 3d22 6964 3733 3622 3e3c se" id="id736">< │ │ │ -0023af40: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ -0023af50: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ -0023af60: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ -0023af70: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ -0023af80: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Complex │ │ │ -0023af90: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ -0023afa0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Disruption:lowReboo │ │ │ -0023afe0: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -0023aff0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ -0023b010: 3c74 643e 6469 7361 626c 653c 2f74 643e disable │ │ │ -0023b020: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072 ..packag │ │ │ -0023b040: 6520 2d2d 7265 6d6f 7665 3d64 6f76 6563 e --remove=dovec │ │ │ -0023b050: 6f74 0a3c 2f63 6f64 653e 3c2f 7072 653e ot. │ │ │ -0023b060: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation P │ │ │ -0023b110: 7570 7065 7420 736e 6970 7065 7420 e287 uppet snippet .. │ │ │ -0023b120: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ -0023b1a0: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -0023b1c0: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -0023b210: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>< │ │ │ -0023b240: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
.include remov
│ │ │ -0023b260: 655f 646f 7665 636f 740a 0a63 6c61 7373  e_dovecot..class
│ │ │ -0023b270: 2072 656d 6f76 655f 646f 7665 636f 7420   remove_dovecot 
│ │ │ -0023b280: 7b0a 2020 7061 636b 6167 6520 7b20 2764  {.  package { 'd
│ │ │ -0023b290: 6f76 6563 6f74 273a 0a20 2020 2065 6e73  ovecot':.    ens
│ │ │ -0023b2a0: 7572 6520 3d26 6774 3b20 2770 7572 6765  ure => 'purge
│ │ │ -0023b2b0: 6427 2c0a 2020 7d0a 7d0a 3c2f 636f 6465  d',.  }.}.
Remedi │ │ │ -0023b370: 6174 696f 6e20 416e 7369 626c 6520 736e ation Ansible sn │ │ │ -0023b380: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
low
Disr │ │ │ -0023b1d0: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -0023b1e0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ -0023b220: 7465 6779 3a3c 2f74 683e 3c74 643e 6469 tegy:di │ │ │ -0023b230: 7361 626c 653c 2f74 643e 3c2f 7472 3e3c sable
│ │ │ -0023b430: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ -0023b450: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ -0023b480: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ -0023b410: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ -0023b420: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ -0023b440: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ -0023b460: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -0023b470: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:disable
< │ │ │ -0023b4b0: 7072 653e 3c63 6f64 653e 2d20 6e61 6d65 pre>- name │ │ │ -0023b4c0: 3a20 2755 6e69 6e73 7461 6c6c 2064 6f76 : 'Uninstall dov │ │ │ -0023b4d0: 6563 6f74 2050 6163 6b61 6765 3a20 456e ecot Package: En │ │ │ -0023b4e0: 7375 7265 2064 6f76 6563 6f74 2069 7320 sure dovecot is │ │ │ -0023b4f0: 7265 6d6f 7665 6427 0a20 2061 6e73 6962 removed'. ansib │ │ │ -0023b500: 6c65 2e62 7569 6c74 696e 2e70 6163 6b61 le.builtin.packa │ │ │ -0023b510: 6765 3a0a 2020 2020 6e61 6d65 3a20 646f ge:. name: do │ │ │ -0023b520: 7665 636f 740a 2020 2020 7374 6174 653a vecot. state: │ │ │ -0023b530: 2061 6273 656e 740a 2020 7461 6773 3a0a absent. tags:. │ │ │ -0023b540: 2020 2d20 6469 7361 626c 655f 7374 7261 - disable_stra │ │ │ -0023b550: 7465 6779 0a20 202d 206c 6f77 5f63 6f6d tegy. - low_com │ │ │ -0023b560: 706c 6578 6974 790a 2020 2d20 6c6f 775f plexity. - low_ │ │ │ -0023b570: 6469 7372 7570 7469 6f6e 0a20 202d 206e disruption. - n │ │ │ -0023b580: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a o_reboot_needed. │ │ │ -0023b590: 2020 2d20 7061 636b 6167 655f 646f 7665 - package_dove │ │ │ -0023b5a0: 636f 745f 7265 6d6f 7665 640a 2020 2d20 cot_removed. - │ │ │ -0023b5b0: 756e 6b6e 6f77 6e5f 7365 7665 7269 7479 unknown_severity │ │ │ -0023b5c0: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f .Remediation She │ │ │ -0023b680: 6c6c 2073 6372 6970 7420 e287 b23c 2f61 ll script ...
< │ │ │ -0023b720: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -0023b730: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ -0023b780: 3c74 723e 3c74 683e 5374 7261 7465 6779
.#
│ │ │ -0023b7c0: 2043 4155 5449 4f4e 3a20 5468 6973 2072   CAUTION: This r
│ │ │ -0023b7d0: 656d 6564 6961 7469 6f6e 2073 6372 6970  emediation scrip
│ │ │ -0023b7e0: 7420 7769 6c6c 2072 656d 6f76 6520 646f  t will remove do
│ │ │ -0023b7f0: 7665 636f 740a 2320 6672 6f6d 2074 6865  vecot.# from the
│ │ │ -0023b800: 2073 7973 7465 6d2c 2061 6e64 206d 6179   system, and may
│ │ │ -0023b810: 2072 656d 6f76 6520 616e 7920 7061 636b   remove any pack
│ │ │ -0023b820: 6167 6573 0a23 2074 6861 7420 6465 7065  ages.# that depe
│ │ │ -0023b830: 6e64 206f 6e20 646f 7665 636f 742e 2045  nd on dovecot. E
│ │ │ -0023b840: 7865 6375 7465 2074 6869 730a 2320 7265  xecute this.# re
│ │ │ -0023b850: 6d65 6469 6174 696f 6e20 4146 5445 5220  mediation AFTER 
│ │ │ -0023b860: 7465 7374 696e 6720 6f6e 2061 206e 6f6e  testing on a non
│ │ │ -0023b870: 2d70 726f 6475 6374 696f 6e0a 2320 7379  -production.# sy
│ │ │ -0023b880: 7374 656d 210a 0a0a 6966 2072 706d 202d  stem!...if rpm -
│ │ │ -0023b890: 7120 2d2d 7175 6965 7420 2264 6f76 6563  q --quiet "dovec
│ │ │ -0023b8a0: 6f74 2220 3b20 7468 656e 0a64 6e66 2072  ot" ; then.dnf r
│ │ │ -0023b8b0: 656d 6f76 6520 2d79 202d 2d6e 6f61 7574  emove -y --noaut
│ │ │ -0023b8c0: 6f72 656d 6f76 6520 2264 6f76 6563 6f74  oremove "dovecot
│ │ │ -0023b8d0: 220a 6669 0a3c 2f63 6f64 653e 3c2f 7072  ".fi.
│ │ │ +0023af80: 3c74 723e 3c74 683e 436f 6d70 6c65 7869
< │ │ │ +0023b010: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ +0023b020: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
C │ │ │ -0023b710: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -0023b740: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ -0023b750: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -0023b790: 3a3c 2f74 683e 3c74 643e 6469 7361 626c :disabl │ │ │ -0023b7a0: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
Complexi │ │ │ +0023af90: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +0023afa0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Disruption:low
Reboot │ │ │ +0023afe0: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +0023aff0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Strategy:
- name: '
│ │ │ +0023b040: 556e 696e 7374 616c 6c20 646f 7665 636f  Uninstall doveco
│ │ │ +0023b050: 7420 5061 636b 6167 653a 2045 6e73 7572  t Package: Ensur
│ │ │ +0023b060: 6520 646f 7665 636f 7420 6973 2072 656d  e dovecot is rem
│ │ │ +0023b070: 6f76 6564 270a 2020 616e 7369 626c 652e  oved'.  ansible.
│ │ │ +0023b080: 6275 696c 7469 6e2e 7061 636b 6167 653a  builtin.package:
│ │ │ +0023b090: 0a20 2020 206e 616d 653a 2064 6f76 6563  .    name: dovec
│ │ │ +0023b0a0: 6f74 0a20 2020 2073 7461 7465 3a20 6162  ot.    state: ab
│ │ │ +0023b0b0: 7365 6e74 0a20 2074 6167 733a 0a20 202d  sent.  tags:.  -
│ │ │ +0023b0c0: 2064 6973 6162 6c65 5f73 7472 6174 6567   disable_strateg
│ │ │ +0023b0d0: 790a 2020 2d20 6c6f 775f 636f 6d70 6c65  y.  - low_comple
│ │ │ +0023b0e0: 7869 7479 0a20 202d 206c 6f77 5f64 6973  xity.  - low_dis
│ │ │ +0023b0f0: 7275 7074 696f 6e0a 2020 2d20 6e6f 5f72  ruption.  - no_r
│ │ │ +0023b100: 6562 6f6f 745f 6e65 6564 6564 0a20 202d  eboot_needed.  -
│ │ │ +0023b110: 2070 6163 6b61 6765 5f64 6f76 6563 6f74   package_dovecot
│ │ │ +0023b120: 5f72 656d 6f76 6564 0a20 202d 2075 6e6b  _removed.  - unk
│ │ │ +0023b130: 6e6f 776e 5f73 6576 6572 6974 790a 3c2f  nown_severity.
Re │ │ │ +0023b1f0: 6d65 6469 6174 696f 6e20 5075 7070 6574 mediation Puppet │ │ │ +0023b200: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ +0023b210: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ +0023b2b0: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ +0023b300: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
.in
│ │ │ +0023b340: 636c 7564 6520 7265 6d6f 7665 5f64 6f76  clude remove_dov
│ │ │ +0023b350: 6563 6f74 0a0a 636c 6173 7320 7265 6d6f  ecot..class remo
│ │ │ +0023b360: 7665 5f64 6f76 6563 6f74 207b 0a20 2070  ve_dovecot {.  p
│ │ │ +0023b370: 6163 6b61 6765 207b 2027 646f 7665 636f  ackage { 'doveco
│ │ │ +0023b380: 7427 3a0a 2020 2020 656e 7375 7265 203d  t':.    ensure =
│ │ │ +0023b390: 2667 743b 2027 7075 7267 6564 272c 0a20  > 'purged',. 
│ │ │ +0023b3a0: 207d 0a7d 0a3c 2f63 6f64 653e 3c2f 7072   }.}.Remediation
│ │ │ +0023b460: 2053 6865 6c6c 2073 6372 6970 7420 e287   Shell script ..
│ │ │ +0023b470: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c  .
Co │ │ │ +0023b290: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +0023b2c0: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +0023b2e0: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +0023b2f0: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +0023b310: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ +0023b320: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
< │ │ │ +0023b4f0: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ +0023b510: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ +0023b560: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>< │ │ │ +0023b590: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
.# CAUTION: Th
│ │ │ +0023b5b0: 6973 2072 656d 6564 6961 7469 6f6e 2073  is remediation s
│ │ │ +0023b5c0: 6372 6970 7420 7769 6c6c 2072 656d 6f76  cript will remov
│ │ │ +0023b5d0: 6520 646f 7665 636f 740a 2320 6672 6f6d  e dovecot.# from
│ │ │ +0023b5e0: 2074 6865 2073 7973 7465 6d2c 2061 6e64   the system, and
│ │ │ +0023b5f0: 206d 6179 2072 656d 6f76 6520 616e 7920   may remove any 
│ │ │ +0023b600: 7061 636b 6167 6573 0a23 2074 6861 7420  packages.# that 
│ │ │ +0023b610: 6465 7065 6e64 206f 6e20 646f 7665 636f  depend on doveco
│ │ │ +0023b620: 742e 2045 7865 6375 7465 2074 6869 730a  t. Execute this.
│ │ │ +0023b630: 2320 7265 6d65 6469 6174 696f 6e20 4146  # remediation AF
│ │ │ +0023b640: 5445 5220 7465 7374 696e 6720 6f6e 2061  TER testing on a
│ │ │ +0023b650: 206e 6f6e 2d70 726f 6475 6374 696f 6e0a   non-production.
│ │ │ +0023b660: 2320 7379 7374 656d 210a 0a0a 6966 2072  # system!...if r
│ │ │ +0023b670: 706d 202d 7120 2d2d 7175 6965 7420 2264  pm -q --quiet "d
│ │ │ +0023b680: 6f76 6563 6f74 2220 3b20 7468 656e 0a64  ovecot" ; then.d
│ │ │ +0023b690: 6e66 2072 656d 6f76 6520 2d79 202d 2d6e  nf remove -y --n
│ │ │ +0023b6a0: 6f61 7574 6f72 656d 6f76 6520 2264 6f76  oautoremove "dov
│ │ │ +0023b6b0: 6563 6f74 220a 6669 0a3c 2f63 6f64 653e  ecot".fi.
│ │ │ +0023b6c0: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ +0023b770: 7469 6f6e 2041 6e61 636f 6e64 6120 736e tion Anaconda sn │ │ │ +0023b780: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
low
Disr │ │ │ +0023b520: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +0023b530: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ +0023b570: 7465 6779 3a3c 2f74 683e 3c74 643e 6469 tegy:di │ │ │ +0023b580: 7361 626c 653c 2f74 643e 3c2f 7472 3e3c sable
│ │ │ +0023b830: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ +0023b850: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ +0023b880: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ +0023b810: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ +0023b820: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ +0023b840: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ +0023b860: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ +0023b870: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:disable
< │ │ │ +0023b8b0: 7072 653e 3c63 6f64 653e 0a0a 7061 636b pre>..pack │ │ │ +0023b8c0: 6167 6520 2d2d 7265 6d6f 7665 3d64 6f76 age --remove=dov │ │ │ +0023b8d0: 6563 6f74 0a3c 2f63 6f64 653e 3c2f 7072 ecot.
│ │ │ 0023b900: 3c2f 7461 626c 653e 3c2f 7464 3e3c 2f74 Remediatio │ │ │ -0023cc50: 6e20 416e 6163 6f6e 6461 2073 6e69 7070 n Anaconda snipp │ │ │ -0023cc60: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ -0023cce0: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ -0023ccf0: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -0023cd00: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ -0023cd40: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -0023cd50: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ -0023cd70: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ -0023cd80: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
..package
│ │ │ -0023cda0: 202d 2d72 656d 6f76 653d 6f70 656e 6c64   --remove=openld
│ │ │ -0023cdb0: 6170 2d63 6c69 656e 7473 0a3c 2f63 6f64  ap-clients.
Remed │ │ │ -0023ce70: 6961 7469 6f6e 2050 7570 7065 7420 736e iation Puppet sn │ │ │ -0023ce80: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ -0023cf30: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ -0023cf50: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ -0023cf80: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ -0023cf10: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ -0023cf20: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ -0023cf40: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ -0023cf60: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -0023cf70: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:disable
< │ │ │ -0023cfb0: 7072 653e 3c63 6f64 653e 0a69 6e63 6c75 pre>.inclu │ │ │ -0023cfc0: 6465 2072 656d 6f76 655f 6f70 656e 6c64 de remove_openld │ │ │ -0023cfd0: 6170 2d63 6c69 656e 7473 0a0a 636c 6173 ap-clients..clas │ │ │ -0023cfe0: 7320 7265 6d6f 7665 5f6f 7065 6e6c 6461 s remove_openlda │ │ │ -0023cff0: 702d 636c 6965 6e74 7320 7b0a 2020 7061 p-clients {. pa │ │ │ -0023d000: 636b 6167 6520 7b20 276f 7065 6e6c 6461 ckage { 'openlda │ │ │ -0023d010: 702d 636c 6965 6e74 7327 3a0a 2020 2020 p-clients':. │ │ │ -0023d020: 656e 7375 7265 203d 2667 743b 2027 7075 ensure => 'pu │ │ │ -0023d030: 7267 6564 272c 0a20 207d 0a7d 0a3c 2f63 rged',. }.}.
│ │ │ -0023d050: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ -0023d0f0: 6564 6961 7469 6f6e 2041 6e73 6962 6c65 ediation Ansible │ │ │ -0023d100: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -0023d110: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ -0023d1b0: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ -0023d200: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
- n
│ │ │ -0023d240: 616d 653a 2027 456e 7375 7265 204c 4441  ame: 'Ensure LDA
│ │ │ -0023d250: 5020 636c 6965 6e74 2069 7320 6e6f 7420  P client is not 
│ │ │ -0023d260: 696e 7374 616c 6c65 643a 2045 6e73 7572  installed: Ensur
│ │ │ -0023d270: 6520 6f70 656e 6c64 6170 2d63 6c69 656e  e openldap-clien
│ │ │ -0023d280: 7473 2069 7320 7265 6d6f 7665 6427 0a20  ts is removed'. 
│ │ │ -0023d290: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ -0023d2a0: 2e70 6163 6b61 6765 3a0a 2020 2020 6e61  .package:.    na
│ │ │ -0023d2b0: 6d65 3a20 6f70 656e 6c64 6170 2d63 6c69  me: openldap-cli
│ │ │ -0023d2c0: 656e 7473 0a20 2020 2073 7461 7465 3a20  ents.    state: 
│ │ │ -0023d2d0: 6162 7365 6e74 0a20 2074 6167 733a 0a20  absent.  tags:. 
│ │ │ -0023d2e0: 202d 2064 6973 6162 6c65 5f73 7472 6174   - disable_strat
│ │ │ -0023d2f0: 6567 790a 2020 2d20 6c6f 775f 636f 6d70  egy.  - low_comp
│ │ │ -0023d300: 6c65 7869 7479 0a20 202d 206c 6f77 5f64  lexity.  - low_d
│ │ │ -0023d310: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ -0023d320: 775f 7365 7665 7269 7479 0a20 202d 206e  w_severity.  - n
│ │ │ -0023d330: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ -0023d340: 2020 2d20 7061 636b 6167 655f 6f70 656e    - package_open
│ │ │ -0023d350: 6c64 6170 2d63 6c69 656e 7473 5f72 656d  ldap-clients_rem
│ │ │ -0023d360: 6f76 6564 0a3c 2f63 6f64 653e 3c2f 7072  oved.Remediation
│ │ │ -0023d420: 2053 6865 6c6c 2073 6372 6970 7420 e287   Shell script ..
│ │ │ -0023d430: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c  .
Co │ │ │ -0023d190: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -0023d1c0: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ -0023d1e0: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ -0023d1f0: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ -0023d210: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ -0023d220: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
< │ │ │ -0023d4b0: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -0023d4d0: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -0023d520: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>< │ │ │ -0023d550: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
.# CAUTION: Th
│ │ │ -0023d570: 6973 2072 656d 6564 6961 7469 6f6e 2073  is remediation s
│ │ │ -0023d580: 6372 6970 7420 7769 6c6c 2072 656d 6f76  cript will remov
│ │ │ -0023d590: 6520 6f70 656e 6c64 6170 2d63 6c69 656e  e openldap-clien
│ │ │ -0023d5a0: 7473 0a23 2066 726f 6d20 7468 6520 7379  ts.# from the sy
│ │ │ -0023d5b0: 7374 656d 2c20 616e 6420 6d61 7920 7265  stem, and may re
│ │ │ -0023d5c0: 6d6f 7665 2061 6e79 2070 6163 6b61 6765  move any package
│ │ │ -0023d5d0: 730a 2320 7468 6174 2064 6570 656e 6420  s.# that depend 
│ │ │ -0023d5e0: 6f6e 206f 7065 6e6c 6461 702d 636c 6965  on openldap-clie
│ │ │ -0023d5f0: 6e74 732e 2045 7865 6375 7465 2074 6869  nts. Execute thi
│ │ │ -0023d600: 730a 2320 7265 6d65 6469 6174 696f 6e20  s.# remediation 
│ │ │ -0023d610: 4146 5445 5220 7465 7374 696e 6720 6f6e  AFTER testing on
│ │ │ -0023d620: 2061 206e 6f6e 2d70 726f 6475 6374 696f   a non-productio
│ │ │ -0023d630: 6e0a 2320 7379 7374 656d 210a 0a0a 6966  n.# system!...if
│ │ │ -0023d640: 2072 706d 202d 7120 2d2d 7175 6965 7420   rpm -q --quiet 
│ │ │ -0023d650: 226f 7065 6e6c 6461 702d 636c 6965 6e74  "openldap-client
│ │ │ -0023d660: 7322 203b 2074 6865 6e0a 646e 6620 7265  s" ; then.dnf re
│ │ │ -0023d670: 6d6f 7665 202d 7920 2d2d 6e6f 6175 746f  move -y --noauto
│ │ │ -0023d680: 7265 6d6f 7665 2022 6f70 656e 6c64 6170  remove "openldap
│ │ │ -0023d690: 2d63 6c69 656e 7473 220a 6669 0a3c 2f63  -clients".fi.
< │ │ │ +0023cce0: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>
│ │ │ +0023cd20: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 disable
low
Disr │ │ │ -0023d4e0: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -0023d4f0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ -0023d530: 7465 6779 3a3c 2f74 683e 3c74 643e 6469 tegy:di │ │ │ -0023d540: 7361 626c 653c 2f74 643e 3c2f 7472 3e3c sable
Complexit │ │ │ +0023ccf0: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low
│ │ │ +0023cd10: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption:low
Reboot: │ │ │ +0023cd40: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false
│ │ │ +0023cd60: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:
│ │ │ +0023cd90: 3c63 6f64 653e 2d20 6e61 6d65 3a20 2745  - name: 'E
│ │ │ +0023cda0: 6e73 7572 6520 4c44 4150 2063 6c69 656e  nsure LDAP clien
│ │ │ +0023cdb0: 7420 6973 206e 6f74 2069 6e73 7461 6c6c  t is not install
│ │ │ +0023cdc0: 6564 3a20 456e 7375 7265 206f 7065 6e6c  ed: Ensure openl
│ │ │ +0023cdd0: 6461 702d 636c 6965 6e74 7320 6973 2072  dap-clients is r
│ │ │ +0023cde0: 656d 6f76 6564 270a 2020 616e 7369 626c  emoved'.  ansibl
│ │ │ +0023cdf0: 652e 6275 696c 7469 6e2e 7061 636b 6167  e.builtin.packag
│ │ │ +0023ce00: 653a 0a20 2020 206e 616d 653a 206f 7065  e:.    name: ope
│ │ │ +0023ce10: 6e6c 6461 702d 636c 6965 6e74 730a 2020  nldap-clients.  
│ │ │ +0023ce20: 2020 7374 6174 653a 2061 6273 656e 740a    state: absent.
│ │ │ +0023ce30: 2020 7461 6773 3a0a 2020 2d20 6469 7361    tags:.  - disa
│ │ │ +0023ce40: 626c 655f 7374 7261 7465 6779 0a20 202d  ble_strategy.  -
│ │ │ +0023ce50: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ +0023ce60: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ +0023ce70: 6f6e 0a20 202d 206c 6f77 5f73 6576 6572  on.  - low_sever
│ │ │ +0023ce80: 6974 790a 2020 2d20 6e6f 5f72 6562 6f6f  ity.  - no_reboo
│ │ │ +0023ce90: 745f 6e65 6564 6564 0a20 202d 2070 6163  t_needed.  - pac
│ │ │ +0023cea0: 6b61 6765 5f6f 7065 6e6c 6461 702d 636c  kage_openldap-cl
│ │ │ +0023ceb0: 6965 6e74 735f 7265 6d6f 7665 640a 3c2f  ients_removed.
Re │ │ │ +0023cf70: 6d65 6469 6174 696f 6e20 5075 7070 6574 mediation Puppet │ │ │ +0023cf80: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ +0023cf90: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ +0023d030: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ +0023d080: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
.in
│ │ │ +0023d0c0: 636c 7564 6520 7265 6d6f 7665 5f6f 7065  clude remove_ope
│ │ │ +0023d0d0: 6e6c 6461 702d 636c 6965 6e74 730a 0a63  nldap-clients..c
│ │ │ +0023d0e0: 6c61 7373 2072 656d 6f76 655f 6f70 656e  lass remove_open
│ │ │ +0023d0f0: 6c64 6170 2d63 6c69 656e 7473 207b 0a20  ldap-clients {. 
│ │ │ +0023d100: 2070 6163 6b61 6765 207b 2027 6f70 656e   package { 'open
│ │ │ +0023d110: 6c64 6170 2d63 6c69 656e 7473 273a 0a20  ldap-clients':. 
│ │ │ +0023d120: 2020 2065 6e73 7572 6520 3d26 6774 3b20     ensure => 
│ │ │ +0023d130: 2770 7572 6765 6427 2c0a 2020 7d0a 7d0a  'purged',.  }.}.
│ │ │ +0023d140: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ +0023d1f0: 5265 6d65 6469 6174 696f 6e20 5368 656c Remediation Shel │ │ │ +0023d200: 6c20 7363 7269 7074 20e2 87b2 3c2f 613e l script ... │ │ │ +0023d210: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
Co │ │ │ +0023d010: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +0023d040: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +0023d060: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +0023d070: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +0023d090: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ +0023d0a0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
low< │ │ │ +0023d2b0: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ +0023d300: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
.# 
│ │ │ +0023d340: 4341 5554 494f 4e3a 2054 6869 7320 7265  CAUTION: This re
│ │ │ +0023d350: 6d65 6469 6174 696f 6e20 7363 7269 7074  mediation script
│ │ │ +0023d360: 2077 696c 6c20 7265 6d6f 7665 206f 7065   will remove ope
│ │ │ +0023d370: 6e6c 6461 702d 636c 6965 6e74 730a 2320  nldap-clients.# 
│ │ │ +0023d380: 6672 6f6d 2074 6865 2073 7973 7465 6d2c  from the system,
│ │ │ +0023d390: 2061 6e64 206d 6179 2072 656d 6f76 6520   and may remove 
│ │ │ +0023d3a0: 616e 7920 7061 636b 6167 6573 0a23 2074  any packages.# t
│ │ │ +0023d3b0: 6861 7420 6465 7065 6e64 206f 6e20 6f70  hat depend on op
│ │ │ +0023d3c0: 656e 6c64 6170 2d63 6c69 656e 7473 2e20  enldap-clients. 
│ │ │ +0023d3d0: 4578 6563 7574 6520 7468 6973 0a23 2072  Execute this.# r
│ │ │ +0023d3e0: 656d 6564 6961 7469 6f6e 2041 4654 4552  emediation AFTER
│ │ │ +0023d3f0: 2074 6573 7469 6e67 206f 6e20 6120 6e6f   testing on a no
│ │ │ +0023d400: 6e2d 7072 6f64 7563 7469 6f6e 0a23 2073  n-production.# s
│ │ │ +0023d410: 7973 7465 6d21 0a0a 0a69 6620 7270 6d20  ystem!...if rpm 
│ │ │ +0023d420: 2d71 202d 2d71 7569 6574 2022 6f70 656e  -q --quiet "open
│ │ │ +0023d430: 6c64 6170 2d63 6c69 656e 7473 2220 3b20  ldap-clients" ; 
│ │ │ +0023d440: 7468 656e 0a64 6e66 2072 656d 6f76 6520  then.dnf remove 
│ │ │ +0023d450: 2d79 202d 2d6e 6f61 7574 6f72 656d 6f76  -y --noautoremov
│ │ │ +0023d460: 6520 226f 7065 6e6c 6461 702d 636c 6965  e "openldap-clie
│ │ │ +0023d470: 6e74 7322 0a66 690a 3c2f 636f 6465 3e3c  nts".fi.<
│ │ │ +0023d480: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>Remediat
│ │ │ +0023d530: 696f 6e20 416e 6163 6f6e 6461 2073 6e69  ion Anaconda sni
│ │ │ +0023d540: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e  ppet ...
│ │ │ +0023d550: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ +0023d580: 3c74 6162 6c65 2063 6c61 7373 3d22 7461
Co │ │ │ +0023d290: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +0023d2c0: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +0023d2e0: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +0023d2f0: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +0023d310: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ +0023d320: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
< │ │ │ +0023d5f0: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ +0023d610: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ +0023d640: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
Comple │ │ │ +0023d5d0: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ +0023d5e0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ +0023d620: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +0023d630: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
disable

..packa │ │ │ +0023d680: 6765 202d 2d72 656d 6f76 653d 6f70 656e ge --remove=open │ │ │ +0023d690: 6c64 6170 2d63 6c69 656e 7473 0a3c 2f63 ldap-clients.

│ │ │ 0023d6b0: 3c2f 6469 763e 3c2f 7464 3e3c 2f74 723e
│ │ │ 0023d6c0: 3c2f 7462 6f64 793e 3c2f 7461 626c 653e │ │ │ 0023d6d0: 3c2f 7464 3e3c 2f74 723e 3c74 7220 6461 Remediation OS │ │ │ -00242060: 4275 696c 6420 426c 7565 7072 696e 7420 Build Blueprint │ │ │ -00242070: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ -00242080: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
.[
│ │ │ -002420c0: 6375 7374 6f6d 697a 6174 696f 6e73 2e73  customizations.s
│ │ │ -002420d0: 6572 7669 6365 735d 0a6d 6173 6b65 6420  ervices].masked 
│ │ │ -002420e0: 3d20 5b22 7270 6362 696e 6422 5d0a 3c2f  = ["rpcbind"].
Re │ │ │ -002421a0: 6d65 6469 6174 696f 6e20 5075 7070 6574 mediation Puppet │ │ │ -002421b0: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -002421c0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ -00242260: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ -002422b0: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
Co │ │ │ -00242240: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -00242270: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ -00242290: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ -002422a0: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ -002422c0: 3c2f 7468 3e3c 7464 3e65 6e61 626c 653c enable< │ │ │ -002422d0: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
incl
│ │ │ -002422f0: 7564 6520 6469 7361 626c 655f 7270 6362  ude disable_rpcb
│ │ │ -00242300: 696e 640a 0a63 6c61 7373 2064 6973 6162  ind..class disab
│ │ │ -00242310: 6c65 5f72 7063 6269 6e64 207b 0a20 2073  le_rpcbind {.  s
│ │ │ -00242320: 6572 7669 6365 207b 2772 7063 6269 6e64  ervice {'rpcbind
│ │ │ -00242330: 273a 0a20 2020 2065 6e61 626c 6520 3d26  ':.    enable =&
│ │ │ -00242340: 6774 3b20 6661 6c73 652c 0a20 2020 2065  gt; false,.    e
│ │ │ -00242350: 6e73 7572 6520 3d26 6774 3b20 2773 746f  nsure => 'sto
│ │ │ -00242360: 7070 6564 272c 0a20 207d 0a7d 0a3c 2f63  pped',.  }.}.
│ │ │ -00242380: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ -00242420: 6564 6961 7469 6f6e 2041 6e73 6962 6c65 ediation Ansible │ │ │ -00242430: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -00242440: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ -002424e0: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ -00242530: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
- n
│ │ │ -00242570: 616d 653a 2047 6174 6865 7220 7468 6520  ame: Gather the 
│ │ │ -00242580: 7061 636b 6167 6520 6661 6374 730a 2020  package facts.  
│ │ │ -00242590: 7061 636b 6167 655f 6661 6374 733a 0a20  package_facts:. 
│ │ │ -002425a0: 2020 206d 616e 6167 6572 3a20 6175 746f     manager: auto
│ │ │ -002425b0: 0a20 2074 6167 733a 0a20 202d 2050 4349  .  tags:.  - PCI
│ │ │ -002425c0: 2d44 5353 7634 2d32 2e32 0a20 202d 2050  -DSSv4-2.2.  - P
│ │ │ -002425d0: 4349 2d44 5353 7634 2d32 2e32 2e34 0a20  CI-DSSv4-2.2.4. 
│ │ │ -002425e0: 202d 2064 6973 6162 6c65 5f73 7472 6174   - disable_strat
│ │ │ -002425f0: 6567 790a 2020 2d20 6c6f 775f 636f 6d70  egy.  - low_comp
│ │ │ -00242600: 6c65 7869 7479 0a20 202d 206c 6f77 5f64  lexity.  - low_d
│ │ │ -00242610: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ -00242620: 775f 7365 7665 7269 7479 0a20 202d 206e  w_severity.  - n
│ │ │ -00242630: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ -00242640: 2020 2d20 7365 7276 6963 655f 7270 6362    - service_rpcb
│ │ │ -00242650: 696e 645f 6469 7361 626c 6564 0a0a 2d20  ind_disabled..- 
│ │ │ -00242660: 6e61 6d65 3a20 4469 7361 626c 6520 7270  name: Disable rp
│ │ │ -00242670: 6362 696e 6420 5365 7276 6963 6520 2d20  cbind Service - 
│ │ │ -00242680: 4469 7361 626c 6520 7365 7276 6963 6520  Disable service 
│ │ │ -00242690: 7270 6362 696e 640a 2020 626c 6f63 6b3a  rpcbind.  block:
│ │ │ -002426a0: 0a0a 2020 2d20 6e61 6d65 3a20 4469 7361  ..  - name: Disa
│ │ │ -002426b0: 626c 6520 7270 6362 696e 6420 5365 7276  ble rpcbind Serv
│ │ │ -002426c0: 6963 6520 2d20 436f 6c6c 6563 7420 7379  ice - Collect sy
│ │ │ -002426d0: 7374 656d 6420 5365 7276 6963 6573 2050  stemd Services P
│ │ │ -002426e0: 7265 7365 6e74 2069 6e20 7468 6520 5379  resent in the Sy
│ │ │ -002426f0: 7374 656d 0a20 2020 2061 6e73 6962 6c65  stem.    ansible
│ │ │ -00242700: 2e62 7569 6c74 696e 2e63 6f6d 6d61 6e64  .builtin.command
│ │ │ -00242710: 3a20 7379 7374 656d 6374 6c20 2d71 206c  : systemctl -q l
│ │ │ -00242720: 6973 742d 756e 6974 2d66 696c 6573 202d  ist-unit-files -
│ │ │ -00242730: 2d74 7970 6520 7365 7276 6963 650a 2020  -type service.  
│ │ │ -00242740: 2020 7265 6769 7374 6572 3a20 7365 7276    register: serv
│ │ │ -00242750: 6963 655f 6578 6973 7473 0a20 2020 2063  ice_exists.    c
│ │ │ -00242760: 6861 6e67 6564 5f77 6865 6e3a 2066 616c  hanged_when: fal
│ │ │ -00242770: 7365 0a20 2020 2066 6169 6c65 645f 7768  se.    failed_wh
│ │ │ -00242780: 656e 3a20 7365 7276 6963 655f 6578 6973  en: service_exis
│ │ │ -00242790: 7473 2e72 6320 6e6f 7420 696e 205b 302c  ts.rc not in [0,
│ │ │ -002427a0: 2031 5d0a 2020 2020 6368 6563 6b5f 6d6f   1].    check_mo
│ │ │ -002427b0: 6465 3a20 6661 6c73 650a 0a20 202d 206e  de: false..  - n
│ │ │ -002427c0: 616d 653a 2044 6973 6162 6c65 2072 7063  ame: Disable rpc
│ │ │ -002427d0: 6269 6e64 2053 6572 7669 6365 202d 2045  bind Service - E
│ │ │ -002427e0: 6e73 7572 6520 7270 6362 696e 642e 7365  nsure rpcbind.se
│ │ │ -002427f0: 7276 6963 6520 6973 204d 6173 6b65 640a  rvice is Masked.
│ │ │ -00242800: 2020 2020 616e 7369 626c 652e 6275 696c      ansible.buil
│ │ │ -00242810: 7469 6e2e 7379 7374 656d 643a 0a20 2020  tin.systemd:.   
│ │ │ -00242820: 2020 206e 616d 653a 2072 7063 6269 6e64     name: rpcbind
│ │ │ -00242830: 2e73 6572 7669 6365 0a20 2020 2020 2073  .service.      s
│ │ │ -00242840: 7461 7465 3a20 7374 6f70 7065 640a 2020  tate: stopped.  
│ │ │ -00242850: 2020 2020 656e 6162 6c65 643a 2066 616c      enabled: fal
│ │ │ -00242860: 7365 0a20 2020 2020 206d 6173 6b65 643a  se.      masked:
│ │ │ -00242870: 2074 7275 650a 2020 2020 7768 656e 3a20   true.    when: 
│ │ │ -00242880: 7365 7276 6963 655f 6578 6973 7473 2e73  service_exists.s
│ │ │ -00242890: 7464 6f75 745f 6c69 6e65 7320 6973 2073  tdout_lines is s
│ │ │ -002428a0: 6561 7263 6828 2272 7063 6269 6e64 2e73  earch("rpcbind.s
│ │ │ -002428b0: 6572 7669 6365 222c 206d 756c 7469 6c69  ervice", multili
│ │ │ -002428c0: 6e65 3d54 7275 6529 0a0a 2020 2d20 6e61  ne=True)..  - na
│ │ │ -002428d0: 6d65 3a20 556e 6974 2053 6f63 6b65 7420  me: Unit Socket 
│ │ │ -002428e0: 4578 6973 7473 202d 2072 7063 6269 6e64  Exists - rpcbind
│ │ │ -002428f0: 2e73 6f63 6b65 740a 2020 2020 616e 7369  .socket.    ansi
│ │ │ -00242900: 626c 652e 6275 696c 7469 6e2e 636f 6d6d  ble.builtin.comm
│ │ │ -00242910: 616e 643a 2073 7973 7465 6d63 746c 202d  and: systemctl -
│ │ │ -00242920: 7120 6c69 7374 2d75 6e69 742d 6669 6c65  q list-unit-file
│ │ │ -00242930: 7320 7270 6362 696e 642e 736f 636b 6574  s rpcbind.socket
│ │ │ -00242940: 0a20 2020 2072 6567 6973 7465 723a 2073  .    register: s
│ │ │ -00242950: 6f63 6b65 745f 6669 6c65 5f65 7869 7374  ocket_file_exist
│ │ │ -00242960: 730a 2020 2020 6368 616e 6765 645f 7768  s.    changed_wh
│ │ │ -00242970: 656e 3a20 6661 6c73 650a 2020 2020 6661  en: false.    fa
│ │ │ -00242980: 696c 6564 5f77 6865 6e3a 2073 6f63 6b65  iled_when: socke
│ │ │ -00242990: 745f 6669 6c65 5f65 7869 7374 732e 7263  t_file_exists.rc
│ │ │ -002429a0: 206e 6f74 2069 6e20 5b30 2c20 315d 0a20   not in [0, 1]. 
│ │ │ -002429b0: 2020 2063 6865 636b 5f6d 6f64 653a 2066     check_mode: f
│ │ │ -002429c0: 616c 7365 0a0a 2020 2d20 6e61 6d65 3a20  alse..  - name: 
│ │ │ -002429d0: 4469 7361 626c 6520 7270 6362 696e 6420  Disable rpcbind 
│ │ │ -002429e0: 5365 7276 6963 6520 2d20 4469 7361 626c  Service - Disabl
│ │ │ -002429f0: 6520 536f 636b 6574 2072 7063 6269 6e64  e Socket rpcbind
│ │ │ -00242a00: 0a20 2020 2061 6e73 6962 6c65 2e62 7569  .    ansible.bui
│ │ │ -00242a10: 6c74 696e 2e73 7973 7465 6d64 3a0a 2020  ltin.systemd:.  
│ │ │ -00242a20: 2020 2020 6e61 6d65 3a20 7270 6362 696e      name: rpcbin
│ │ │ -00242a30: 642e 736f 636b 6574 0a20 2020 2020 2065  d.socket.      e
│ │ │ -00242a40: 6e61 626c 6564 3a20 6661 6c73 650a 2020  nabled: false.  
│ │ │ -00242a50: 2020 2020 7374 6174 653a 2073 746f 7070      state: stopp
│ │ │ -00242a60: 6564 0a20 2020 2020 206d 6173 6b65 643a  ed.      masked:
│ │ │ -00242a70: 2074 7275 650a 2020 2020 7768 656e 3a20   true.    when: 
│ │ │ -00242a80: 736f 636b 6574 5f66 696c 655f 6578 6973  socket_file_exis
│ │ │ -00242a90: 7473 2e73 7464 6f75 745f 6c69 6e65 7320  ts.stdout_lines 
│ │ │ -00242aa0: 6973 2073 6561 7263 6828 2272 7063 6269  is search("rpcbi
│ │ │ -00242ab0: 6e64 2e73 6f63 6b65 7422 2c20 6d75 6c74  nd.socket", mult
│ │ │ -00242ac0: 696c 696e 653d 5472 7565 290a 2020 7461  iline=True).  ta
│ │ │ -00242ad0: 6773 3a0a 2020 2d20 5043 492d 4453 5376  gs:.  - PCI-DSSv
│ │ │ -00242ae0: 342d 322e 320a 2020 2d20 5043 492d 4453  4-2.2.  - PCI-DS
│ │ │ -00242af0: 5376 342d 322e 322e 340a 2020 2d20 6469  Sv4-2.2.4.  - di
│ │ │ -00242b00: 7361 626c 655f 7374 7261 7465 6779 0a20  sable_strategy. 
│ │ │ -00242b10: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ -00242b20: 790a 2020 2d20 6c6f 775f 6469 7372 7570  y.  - low_disrup
│ │ │ -00242b30: 7469 6f6e 0a20 202d 206c 6f77 5f73 6576  tion.  - low_sev
│ │ │ -00242b40: 6572 6974 790a 2020 2d20 6e6f 5f72 6562  erity.  - no_reb
│ │ │ -00242b50: 6f6f 745f 6e65 6564 6564 0a20 202d 2073  oot_needed.  - s
│ │ │ -00242b60: 6572 7669 6365 5f72 7063 6269 6e64 5f64  ervice_rpcbind_d
│ │ │ -00242b70: 6973 6162 6c65 640a 2020 2d20 7370 6563  isabled.  - spec
│ │ │ -00242b80: 6961 6c5f 7365 7276 6963 655f 626c 6f63  ial_service_bloc
│ │ │ -00242b90: 6b0a 2020 7768 656e 3a20 2722 6b65 726e  k.  when: '"kern
│ │ │ -00242ba0: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ -00242bb0: 6163 7473 2e70 6163 6b61 6765 7327 0a3c  acts.packages'.<
│ │ │ +00242050: 223e 5265 6d65 6469 6174 696f 6e20 416e  ">Remediation An
│ │ │ +00242060: 7369 626c 6520 736e 6970 7065 7420 e287  sible snippet ..
│ │ │ +00242070: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c  .
Co │ │ │ -002424c0: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -002424f0: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ -00242510: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ -00242520: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ -00242540: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ -00242550: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
< │ │ │ +002420f0: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ +00242110: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ +00242160: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>< │ │ │ +00242190: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
- name: Gather
│ │ │ +002421b0: 2074 6865 2070 6163 6b61 6765 2066 6163   the package fac
│ │ │ +002421c0: 7473 0a20 2070 6163 6b61 6765 5f66 6163  ts.  package_fac
│ │ │ +002421d0: 7473 3a0a 2020 2020 6d61 6e61 6765 723a  ts:.    manager:
│ │ │ +002421e0: 2061 7574 6f0a 2020 7461 6773 3a0a 2020   auto.  tags:.  
│ │ │ +002421f0: 2d20 5043 492d 4453 5376 342d 322e 320a  - PCI-DSSv4-2.2.
│ │ │ +00242200: 2020 2d20 5043 492d 4453 5376 342d 322e    - PCI-DSSv4-2.
│ │ │ +00242210: 322e 340a 2020 2d20 6469 7361 626c 655f  2.4.  - disable_
│ │ │ +00242220: 7374 7261 7465 6779 0a20 202d 206c 6f77  strategy.  - low
│ │ │ +00242230: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +00242240: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ +00242250: 202d 206c 6f77 5f73 6576 6572 6974 790a   - low_severity.
│ │ │ +00242260: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ +00242270: 6564 6564 0a20 202d 2073 6572 7669 6365  eded.  - service
│ │ │ +00242280: 5f72 7063 6269 6e64 5f64 6973 6162 6c65  _rpcbind_disable
│ │ │ +00242290: 640a 0a2d 206e 616d 653a 2044 6973 6162  d..- name: Disab
│ │ │ +002422a0: 6c65 2072 7063 6269 6e64 2053 6572 7669  le rpcbind Servi
│ │ │ +002422b0: 6365 202d 2044 6973 6162 6c65 2073 6572  ce - Disable ser
│ │ │ +002422c0: 7669 6365 2072 7063 6269 6e64 0a20 2062  vice rpcbind.  b
│ │ │ +002422d0: 6c6f 636b 3a0a 0a20 202d 206e 616d 653a  lock:..  - name:
│ │ │ +002422e0: 2044 6973 6162 6c65 2072 7063 6269 6e64   Disable rpcbind
│ │ │ +002422f0: 2053 6572 7669 6365 202d 2043 6f6c 6c65   Service - Colle
│ │ │ +00242300: 6374 2073 7973 7465 6d64 2053 6572 7669  ct systemd Servi
│ │ │ +00242310: 6365 7320 5072 6573 656e 7420 696e 2074  ces Present in t
│ │ │ +00242320: 6865 2053 7973 7465 6d0a 2020 2020 616e  he System.    an
│ │ │ +00242330: 7369 626c 652e 6275 696c 7469 6e2e 636f  sible.builtin.co
│ │ │ +00242340: 6d6d 616e 643a 2073 7973 7465 6d63 746c  mmand: systemctl
│ │ │ +00242350: 202d 7120 6c69 7374 2d75 6e69 742d 6669   -q list-unit-fi
│ │ │ +00242360: 6c65 7320 2d2d 7479 7065 2073 6572 7669  les --type servi
│ │ │ +00242370: 6365 0a20 2020 2072 6567 6973 7465 723a  ce.    register:
│ │ │ +00242380: 2073 6572 7669 6365 5f65 7869 7374 730a   service_exists.
│ │ │ +00242390: 2020 2020 6368 616e 6765 645f 7768 656e      changed_when
│ │ │ +002423a0: 3a20 6661 6c73 650a 2020 2020 6661 696c  : false.    fail
│ │ │ +002423b0: 6564 5f77 6865 6e3a 2073 6572 7669 6365  ed_when: service
│ │ │ +002423c0: 5f65 7869 7374 732e 7263 206e 6f74 2069  _exists.rc not i
│ │ │ +002423d0: 6e20 5b30 2c20 315d 0a20 2020 2063 6865  n [0, 1].    che
│ │ │ +002423e0: 636b 5f6d 6f64 653a 2066 616c 7365 0a0a  ck_mode: false..
│ │ │ +002423f0: 2020 2d20 6e61 6d65 3a20 4469 7361 626c    - name: Disabl
│ │ │ +00242400: 6520 7270 6362 696e 6420 5365 7276 6963  e rpcbind Servic
│ │ │ +00242410: 6520 2d20 456e 7375 7265 2072 7063 6269  e - Ensure rpcbi
│ │ │ +00242420: 6e64 2e73 6572 7669 6365 2069 7320 4d61  nd.service is Ma
│ │ │ +00242430: 736b 6564 0a20 2020 2061 6e73 6962 6c65  sked.    ansible
│ │ │ +00242440: 2e62 7569 6c74 696e 2e73 7973 7465 6d64  .builtin.systemd
│ │ │ +00242450: 3a0a 2020 2020 2020 6e61 6d65 3a20 7270  :.      name: rp
│ │ │ +00242460: 6362 696e 642e 7365 7276 6963 650a 2020  cbind.service.  
│ │ │ +00242470: 2020 2020 7374 6174 653a 2073 746f 7070      state: stopp
│ │ │ +00242480: 6564 0a20 2020 2020 2065 6e61 626c 6564  ed.      enabled
│ │ │ +00242490: 3a20 6661 6c73 650a 2020 2020 2020 6d61  : false.      ma
│ │ │ +002424a0: 736b 6564 3a20 7472 7565 0a20 2020 2077  sked: true.    w
│ │ │ +002424b0: 6865 6e3a 2073 6572 7669 6365 5f65 7869  hen: service_exi
│ │ │ +002424c0: 7374 732e 7374 646f 7574 5f6c 696e 6573  sts.stdout_lines
│ │ │ +002424d0: 2069 7320 7365 6172 6368 2822 7270 6362   is search("rpcb
│ │ │ +002424e0: 696e 642e 7365 7276 6963 6522 2c20 6d75  ind.service", mu
│ │ │ +002424f0: 6c74 696c 696e 653d 5472 7565 290a 0a20  ltiline=True).. 
│ │ │ +00242500: 202d 206e 616d 653a 2055 6e69 7420 536f   - name: Unit So
│ │ │ +00242510: 636b 6574 2045 7869 7374 7320 2d20 7270  cket Exists - rp
│ │ │ +00242520: 6362 696e 642e 736f 636b 6574 0a20 2020  cbind.socket.   
│ │ │ +00242530: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ +00242540: 2e63 6f6d 6d61 6e64 3a20 7379 7374 656d  .command: system
│ │ │ +00242550: 6374 6c20 2d71 206c 6973 742d 756e 6974  ctl -q list-unit
│ │ │ +00242560: 2d66 696c 6573 2072 7063 6269 6e64 2e73  -files rpcbind.s
│ │ │ +00242570: 6f63 6b65 740a 2020 2020 7265 6769 7374  ocket.    regist
│ │ │ +00242580: 6572 3a20 736f 636b 6574 5f66 696c 655f  er: socket_file_
│ │ │ +00242590: 6578 6973 7473 0a20 2020 2063 6861 6e67  exists.    chang
│ │ │ +002425a0: 6564 5f77 6865 6e3a 2066 616c 7365 0a20  ed_when: false. 
│ │ │ +002425b0: 2020 2066 6169 6c65 645f 7768 656e 3a20     failed_when: 
│ │ │ +002425c0: 736f 636b 6574 5f66 696c 655f 6578 6973  socket_file_exis
│ │ │ +002425d0: 7473 2e72 6320 6e6f 7420 696e 205b 302c  ts.rc not in [0,
│ │ │ +002425e0: 2031 5d0a 2020 2020 6368 6563 6b5f 6d6f   1].    check_mo
│ │ │ +002425f0: 6465 3a20 6661 6c73 650a 0a20 202d 206e  de: false..  - n
│ │ │ +00242600: 616d 653a 2044 6973 6162 6c65 2072 7063  ame: Disable rpc
│ │ │ +00242610: 6269 6e64 2053 6572 7669 6365 202d 2044  bind Service - D
│ │ │ +00242620: 6973 6162 6c65 2053 6f63 6b65 7420 7270  isable Socket rp
│ │ │ +00242630: 6362 696e 640a 2020 2020 616e 7369 626c  cbind.    ansibl
│ │ │ +00242640: 652e 6275 696c 7469 6e2e 7379 7374 656d  e.builtin.system
│ │ │ +00242650: 643a 0a20 2020 2020 206e 616d 653a 2072  d:.      name: r
│ │ │ +00242660: 7063 6269 6e64 2e73 6f63 6b65 740a 2020  pcbind.socket.  
│ │ │ +00242670: 2020 2020 656e 6162 6c65 643a 2066 616c      enabled: fal
│ │ │ +00242680: 7365 0a20 2020 2020 2073 7461 7465 3a20  se.      state: 
│ │ │ +00242690: 7374 6f70 7065 640a 2020 2020 2020 6d61  stopped.      ma
│ │ │ +002426a0: 736b 6564 3a20 7472 7565 0a20 2020 2077  sked: true.    w
│ │ │ +002426b0: 6865 6e3a 2073 6f63 6b65 745f 6669 6c65  hen: socket_file
│ │ │ +002426c0: 5f65 7869 7374 732e 7374 646f 7574 5f6c  _exists.stdout_l
│ │ │ +002426d0: 696e 6573 2069 7320 7365 6172 6368 2822  ines is search("
│ │ │ +002426e0: 7270 6362 696e 642e 736f 636b 6574 222c  rpcbind.socket",
│ │ │ +002426f0: 206d 756c 7469 6c69 6e65 3d54 7275 6529   multiline=True)
│ │ │ +00242700: 0a20 2074 6167 733a 0a20 202d 2050 4349  .  tags:.  - PCI
│ │ │ +00242710: 2d44 5353 7634 2d32 2e32 0a20 202d 2050  -DSSv4-2.2.  - P
│ │ │ +00242720: 4349 2d44 5353 7634 2d32 2e32 2e34 0a20  CI-DSSv4-2.2.4. 
│ │ │ +00242730: 202d 2064 6973 6162 6c65 5f73 7472 6174   - disable_strat
│ │ │ +00242740: 6567 790a 2020 2d20 6c6f 775f 636f 6d70  egy.  - low_comp
│ │ │ +00242750: 6c65 7869 7479 0a20 202d 206c 6f77 5f64  lexity.  - low_d
│ │ │ +00242760: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ +00242770: 775f 7365 7665 7269 7479 0a20 202d 206e  w_severity.  - n
│ │ │ +00242780: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ +00242790: 2020 2d20 7365 7276 6963 655f 7270 6362    - service_rpcb
│ │ │ +002427a0: 696e 645f 6469 7361 626c 6564 0a20 202d  ind_disabled.  -
│ │ │ +002427b0: 2073 7065 6369 616c 5f73 6572 7669 6365   special_service
│ │ │ +002427c0: 5f62 6c6f 636b 0a20 2077 6865 6e3a 2027  _block.  when: '
│ │ │ +002427d0: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ +002427e0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +002427f0: 6573 270a 3c2f 636f 6465 3e3c 2f70 7265  es'.
Remediation │ │ │ +002428b0: 5075 7070 6574 2073 6e69 7070 6574 20e2 Puppet snippet . │ │ │ +002428c0: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
low
Disr │ │ │ +00242120: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +00242130: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ +00242170: 7465 6779 3a3c 2f74 683e 3c74 643e 6469 tegy:di │ │ │ +00242180: 7361 626c 653c 2f74 643e 3c2f 7472 3e3c sable
│ │ │ +00242940: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +00242960: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ +002429b0: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 < │ │ │ +002429e0: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
include disabl
│ │ │ +00242a00: 655f 7270 6362 696e 640a 0a63 6c61 7373  e_rpcbind..class
│ │ │ +00242a10: 2064 6973 6162 6c65 5f72 7063 6269 6e64   disable_rpcbind
│ │ │ +00242a20: 207b 0a20 2073 6572 7669 6365 207b 2772   {.  service {'r
│ │ │ +00242a30: 7063 6269 6e64 273a 0a20 2020 2065 6e61  pcbind':.    ena
│ │ │ +00242a40: 626c 6520 3d26 6774 3b20 6661 6c73 652c  ble => false,
│ │ │ +00242a50: 0a20 2020 2065 6e73 7572 6520 3d26 6774  .    ensure =>
│ │ │ +00242a60: 3b20 2773 746f 7070 6564 272c 0a20 207d  ; 'stopped',.  }
│ │ │ +00242a70: 0a7d 0a3c 2f63 6f64 653e 3c2f 7072 653e  .}.
│ │ │ +00242a80: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22 Remediation O │ │ │ +00242b30: 5342 7569 6c64 2042 6c75 6570 7269 6e74 SBuild Blueprint │ │ │ +00242b40: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ +00242b50: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ -002449a0: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr> │ │ │ -002449f0: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ +00242950: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +00242970: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ +002429c0: 6174 6567 793a 3c2f 7468 3e3c 7464 3e65 ategy:e │ │ │ +002429d0: 6e61 626c 653c 2f74 643e 3c2f 7472 3e3c nable
Complexity: │ │ │ -00244960: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Di │ │ │ -00244980: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:
Reboot:false
St │ │ │ -002449d0: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ -002449e0: 656e 6162 6c65 3c2f 7464 3e3c 2f74 723e enable
include disab
│ │ │ -00244a10: 6c65 5f6e 6673 2d73 6572 7665 720a 0a63  le_nfs-server..c
│ │ │ -00244a20: 6c61 7373 2064 6973 6162 6c65 5f6e 6673  lass disable_nfs
│ │ │ -00244a30: 2d73 6572 7665 7220 7b0a 2020 7365 7276  -server {.  serv
│ │ │ -00244a40: 6963 6520 7b27 6e66 732d 7365 7276 6572  ice {'nfs-server
│ │ │ -00244a50: 273a 0a20 2020 2065 6e61 626c 6520 3d26  ':.    enable =&
│ │ │ -00244a60: 6774 3b20 6661 6c73 652c 0a20 2020 2065  gt; false,.    e
│ │ │ -00244a70: 6e73 7572 6520 3d26 6774 3b20 2773 746f  nsure => 'sto
│ │ │ -00244a80: 7070 6564 272c 0a20 207d 0a7d 0a3c 2f63  pped',.  }.}.
│ │ │ -00244aa0: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ -00244b40: 6564 6961 7469 6f6e 2041 6e73 6962 6c65 ediation Ansible │ │ │ -00244b50: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -00244b60: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ -00244c00: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ -00244c50: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
- n
│ │ │ -00244c90: 616d 653a 2047 6174 6865 7220 7468 6520  ame: Gather the 
│ │ │ -00244ca0: 7061 636b 6167 6520 6661 6374 730a 2020  package facts.  
│ │ │ -00244cb0: 7061 636b 6167 655f 6661 6374 733a 0a20  package_facts:. 
│ │ │ -00244cc0: 2020 206d 616e 6167 6572 3a20 6175 746f     manager: auto
│ │ │ -00244cd0: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ -00244ce0: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ -00244cf0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -00244d00: 2d43 4d2d 3728 6129 0a20 202d 204e 4953  -CM-7(a).  - NIS
│ │ │ -00244d10: 542d 3830 302d 3533 2d43 4d2d 3728 6229  T-800-53-CM-7(b)
│ │ │ -00244d20: 0a20 202d 2064 6973 6162 6c65 5f73 7472  .  - disable_str
│ │ │ -00244d30: 6174 6567 790a 2020 2d20 6c6f 775f 636f  ategy.  - low_co
│ │ │ -00244d40: 6d70 6c65 7869 7479 0a20 202d 206c 6f77  mplexity.  - low
│ │ │ -00244d50: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ -00244d60: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ -00244d70: 0a20 202d 2073 6572 7669 6365 5f6e 6673  .  - service_nfs
│ │ │ -00244d80: 5f64 6973 6162 6c65 640a 2020 2d20 756e  _disabled.  - un
│ │ │ -00244d90: 6b6e 6f77 6e5f 7365 7665 7269 7479 0a0a  known_severity..
│ │ │ -00244da0: 2d20 6e61 6d65 3a20 4469 7361 626c 6520  - name: Disable 
│ │ │ -00244db0: 4e65 7477 6f72 6b20 4669 6c65 2053 7973  Network File Sys
│ │ │ -00244dc0: 7465 6d20 286e 6673 2920 2d20 4469 7361  tem (nfs) - Disa
│ │ │ -00244dd0: 626c 6520 7365 7276 6963 6520 6e66 732d  ble service nfs-
│ │ │ -00244de0: 7365 7276 6572 0a20 2062 6c6f 636b 3a0a  server.  block:.
│ │ │ -00244df0: 0a20 202d 206e 616d 653a 2044 6973 6162  .  - name: Disab
│ │ │ -00244e00: 6c65 204e 6574 776f 726b 2046 696c 6520  le Network File 
│ │ │ -00244e10: 5379 7374 656d 2028 6e66 7329 202d 2043  System (nfs) - C
│ │ │ -00244e20: 6f6c 6c65 6374 2073 7973 7465 6d64 2053  ollect systemd S
│ │ │ -00244e30: 6572 7669 6365 7320 5072 6573 656e 7420  ervices Present 
│ │ │ -00244e40: 696e 0a20 2020 2020 2074 6865 2053 7973  in.      the Sys
│ │ │ -00244e50: 7465 6d0a 2020 2020 616e 7369 626c 652e  tem.    ansible.
│ │ │ -00244e60: 6275 696c 7469 6e2e 636f 6d6d 616e 643a  builtin.command:
│ │ │ -00244e70: 2073 7973 7465 6d63 746c 202d 7120 6c69   systemctl -q li
│ │ │ -00244e80: 7374 2d75 6e69 742d 6669 6c65 7320 2d2d  st-unit-files --
│ │ │ -00244e90: 7479 7065 2073 6572 7669 6365 0a20 2020  type service.   
│ │ │ -00244ea0: 2072 6567 6973 7465 723a 2073 6572 7669   register: servi
│ │ │ -00244eb0: 6365 5f65 7869 7374 730a 2020 2020 6368  ce_exists.    ch
│ │ │ -00244ec0: 616e 6765 645f 7768 656e 3a20 6661 6c73  anged_when: fals
│ │ │ -00244ed0: 650a 2020 2020 6661 696c 6564 5f77 6865  e.    failed_whe
│ │ │ -00244ee0: 6e3a 2073 6572 7669 6365 5f65 7869 7374  n: service_exist
│ │ │ -00244ef0: 732e 7263 206e 6f74 2069 6e20 5b30 2c20  s.rc not in [0, 
│ │ │ -00244f00: 315d 0a20 2020 2063 6865 636b 5f6d 6f64  1].    check_mod
│ │ │ -00244f10: 653a 2066 616c 7365 0a0a 2020 2d20 6e61  e: false..  - na
│ │ │ -00244f20: 6d65 3a20 4469 7361 626c 6520 4e65 7477  me: Disable Netw
│ │ │ -00244f30: 6f72 6b20 4669 6c65 2053 7973 7465 6d20  ork File System 
│ │ │ -00244f40: 286e 6673 2920 2d20 456e 7375 7265 206e  (nfs) - Ensure n
│ │ │ -00244f50: 6673 2d73 6572 7665 722e 7365 7276 6963  fs-server.servic
│ │ │ -00244f60: 6520 6973 204d 6173 6b65 640a 2020 2020  e is Masked.    
│ │ │ -00244f70: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ -00244f80: 7379 7374 656d 643a 0a20 2020 2020 206e  systemd:.      n
│ │ │ -00244f90: 616d 653a 206e 6673 2d73 6572 7665 722e  ame: nfs-server.
│ │ │ -00244fa0: 7365 7276 6963 650a 2020 2020 2020 7374  service.      st
│ │ │ -00244fb0: 6174 653a 2073 746f 7070 6564 0a20 2020  ate: stopped.   
│ │ │ -00244fc0: 2020 2065 6e61 626c 6564 3a20 6661 6c73     enabled: fals
│ │ │ -00244fd0: 650a 2020 2020 2020 6d61 736b 6564 3a20  e.      masked: 
│ │ │ -00244fe0: 7472 7565 0a20 2020 2077 6865 6e3a 2073  true.    when: s
│ │ │ -00244ff0: 6572 7669 6365 5f65 7869 7374 732e 7374  ervice_exists.st
│ │ │ -00245000: 646f 7574 5f6c 696e 6573 2069 7320 7365  dout_lines is se
│ │ │ -00245010: 6172 6368 2822 6e66 732d 7365 7276 6572  arch("nfs-server
│ │ │ -00245020: 2e73 6572 7669 6365 222c 206d 756c 7469  .service", multi
│ │ │ -00245030: 6c69 6e65 3d54 7275 6529 0a0a 2020 2d20  line=True)..  - 
│ │ │ -00245040: 6e61 6d65 3a20 556e 6974 2053 6f63 6b65  name: Unit Socke
│ │ │ -00245050: 7420 4578 6973 7473 202d 206e 6673 2d73  t Exists - nfs-s
│ │ │ -00245060: 6572 7665 722e 736f 636b 6574 0a20 2020  erver.socket.   
│ │ │ -00245070: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ -00245080: 2e63 6f6d 6d61 6e64 3a20 7379 7374 656d  .command: system
│ │ │ -00245090: 6374 6c20 2d71 206c 6973 742d 756e 6974  ctl -q list-unit
│ │ │ -002450a0: 2d66 696c 6573 206e 6673 2d73 6572 7665  -files nfs-serve
│ │ │ -002450b0: 722e 736f 636b 6574 0a20 2020 2072 6567  r.socket.    reg
│ │ │ -002450c0: 6973 7465 723a 2073 6f63 6b65 745f 6669  ister: socket_fi
│ │ │ -002450d0: 6c65 5f65 7869 7374 730a 2020 2020 6368  le_exists.    ch
│ │ │ -002450e0: 616e 6765 645f 7768 656e 3a20 6661 6c73  anged_when: fals
│ │ │ -002450f0: 650a 2020 2020 6661 696c 6564 5f77 6865  e.    failed_whe
│ │ │ -00245100: 6e3a 2073 6f63 6b65 745f 6669 6c65 5f65  n: socket_file_e
│ │ │ -00245110: 7869 7374 732e 7263 206e 6f74 2069 6e20  xists.rc not in 
│ │ │ -00245120: 5b30 2c20 315d 0a20 2020 2063 6865 636b  [0, 1].    check
│ │ │ -00245130: 5f6d 6f64 653a 2066 616c 7365 0a0a 2020  _mode: false..  
│ │ │ -00245140: 2d20 6e61 6d65 3a20 4469 7361 626c 6520  - name: Disable 
│ │ │ -00245150: 4e65 7477 6f72 6b20 4669 6c65 2053 7973  Network File Sys
│ │ │ -00245160: 7465 6d20 286e 6673 2920 2d20 4469 7361  tem (nfs) - Disa
│ │ │ -00245170: 626c 6520 536f 636b 6574 206e 6673 2d73  ble Socket nfs-s
│ │ │ -00245180: 6572 7665 720a 2020 2020 616e 7369 626c  erver.    ansibl
│ │ │ -00245190: 652e 6275 696c 7469 6e2e 7379 7374 656d  e.builtin.system
│ │ │ -002451a0: 643a 0a20 2020 2020 206e 616d 653a 206e  d:.      name: n
│ │ │ -002451b0: 6673 2d73 6572 7665 722e 736f 636b 6574  fs-server.socket
│ │ │ -002451c0: 0a20 2020 2020 2065 6e61 626c 6564 3a20  .      enabled: 
│ │ │ -002451d0: 6661 6c73 650a 2020 2020 2020 7374 6174  false.      stat
│ │ │ -002451e0: 653a 2073 746f 7070 6564 0a20 2020 2020  e: stopped.     
│ │ │ -002451f0: 206d 6173 6b65 643a 2074 7275 650a 2020   masked: true.  
│ │ │ -00245200: 2020 7768 656e 3a20 736f 636b 6574 5f66    when: socket_f
│ │ │ -00245210: 696c 655f 6578 6973 7473 2e73 7464 6f75  ile_exists.stdou
│ │ │ -00245220: 745f 6c69 6e65 7320 6973 2073 6561 7263  t_lines is searc
│ │ │ -00245230: 6828 226e 6673 2d73 6572 7665 722e 736f  h("nfs-server.so
│ │ │ -00245240: 636b 6574 222c 206d 756c 7469 6c69 6e65  cket", multiline
│ │ │ -00245250: 3d54 7275 6529 0a20 2074 6167 733a 0a20  =True).  tags:. 
│ │ │ -00245260: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -00245270: 4d2d 3628 6129 0a20 202d 204e 4953 542d  M-6(a).  - NIST-
│ │ │ -00245280: 3830 302d 3533 2d43 4d2d 3728 6129 0a20  800-53-CM-7(a). 
│ │ │ -00245290: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -002452a0: 4d2d 3728 6229 0a20 202d 2064 6973 6162  M-7(b).  - disab
│ │ │ -002452b0: 6c65 5f73 7472 6174 6567 790a 2020 2d20  le_strategy.  - 
│ │ │ -002452c0: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ -002452d0: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ -002452e0: 6e0a 2020 2d20 6e6f 5f72 6562 6f6f 745f  n.  - no_reboot_
│ │ │ -002452f0: 6e65 6564 6564 0a20 202d 2073 6572 7669  needed.  - servi
│ │ │ -00245300: 6365 5f6e 6673 5f64 6973 6162 6c65 640a  ce_nfs_disabled.
│ │ │ -00245310: 2020 2d20 7370 6563 6961 6c5f 7365 7276    - special_serv
│ │ │ -00245320: 6963 655f 626c 6f63 6b0a 2020 2d20 756e  ice_block.  - un
│ │ │ -00245330: 6b6e 6f77 6e5f 7365 7665 7269 7479 0a20  known_severity. 
│ │ │ -00245340: 2077 6865 6e3a 2027 226b 6572 6e65 6c22   when: '"kernel"
│ │ │ -00245350: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -00245360: 732e 7061 636b 6167 6573 270a 3c2f 636f  s.packages'.
< │ │ │ +00244800: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>
│ │ │ +00244840: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 disable
Co │ │ │ -00244be0: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -00244c10: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ -00244c30: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ -00244c40: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ -00244c60: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ -00244c70: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Complexit │ │ │ +00244810: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low
│ │ │ +00244830: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption:low
Reboot: │ │ │ +00244860: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false
│ │ │ +00244880: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:
│ │ │ +002448b0: 3c63 6f64 653e 2d20 6e61 6d65 3a20 4761  - name: Ga
│ │ │ +002448c0: 7468 6572 2074 6865 2070 6163 6b61 6765  ther the package
│ │ │ +002448d0: 2066 6163 7473 0a20 2070 6163 6b61 6765   facts.  package
│ │ │ +002448e0: 5f66 6163 7473 3a0a 2020 2020 6d61 6e61  _facts:.    mana
│ │ │ +002448f0: 6765 723a 2061 7574 6f0a 2020 7461 6773  ger: auto.  tags
│ │ │ +00244900: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ +00244910: 332d 434d 2d36 2861 290a 2020 2d20 4e49  3-CM-6(a).  - NI
│ │ │ +00244920: 5354 2d38 3030 2d35 332d 434d 2d37 2861  ST-800-53-CM-7(a
│ │ │ +00244930: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +00244940: 332d 434d 2d37 2862 290a 2020 2d20 6469  3-CM-7(b).  - di
│ │ │ +00244950: 7361 626c 655f 7374 7261 7465 6779 0a20  sable_strategy. 
│ │ │ +00244960: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ +00244970: 790a 2020 2d20 6c6f 775f 6469 7372 7570  y.  - low_disrup
│ │ │ +00244980: 7469 6f6e 0a20 202d 206e 6f5f 7265 626f  tion.  - no_rebo
│ │ │ +00244990: 6f74 5f6e 6565 6465 640a 2020 2d20 7365  ot_needed.  - se
│ │ │ +002449a0: 7276 6963 655f 6e66 735f 6469 7361 626c  rvice_nfs_disabl
│ │ │ +002449b0: 6564 0a20 202d 2075 6e6b 6e6f 776e 5f73  ed.  - unknown_s
│ │ │ +002449c0: 6576 6572 6974 790a 0a2d 206e 616d 653a  everity..- name:
│ │ │ +002449d0: 2044 6973 6162 6c65 204e 6574 776f 726b   Disable Network
│ │ │ +002449e0: 2046 696c 6520 5379 7374 656d 2028 6e66   File System (nf
│ │ │ +002449f0: 7329 202d 2044 6973 6162 6c65 2073 6572  s) - Disable ser
│ │ │ +00244a00: 7669 6365 206e 6673 2d73 6572 7665 720a  vice nfs-server.
│ │ │ +00244a10: 2020 626c 6f63 6b3a 0a0a 2020 2d20 6e61    block:..  - na
│ │ │ +00244a20: 6d65 3a20 4469 7361 626c 6520 4e65 7477  me: Disable Netw
│ │ │ +00244a30: 6f72 6b20 4669 6c65 2053 7973 7465 6d20  ork File System 
│ │ │ +00244a40: 286e 6673 2920 2d20 436f 6c6c 6563 7420  (nfs) - Collect 
│ │ │ +00244a50: 7379 7374 656d 6420 5365 7276 6963 6573  systemd Services
│ │ │ +00244a60: 2050 7265 7365 6e74 2069 6e0a 2020 2020   Present in.    
│ │ │ +00244a70: 2020 7468 6520 5379 7374 656d 0a20 2020    the System.   
│ │ │ +00244a80: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ +00244a90: 2e63 6f6d 6d61 6e64 3a20 7379 7374 656d  .command: system
│ │ │ +00244aa0: 6374 6c20 2d71 206c 6973 742d 756e 6974  ctl -q list-unit
│ │ │ +00244ab0: 2d66 696c 6573 202d 2d74 7970 6520 7365  -files --type se
│ │ │ +00244ac0: 7276 6963 650a 2020 2020 7265 6769 7374  rvice.    regist
│ │ │ +00244ad0: 6572 3a20 7365 7276 6963 655f 6578 6973  er: service_exis
│ │ │ +00244ae0: 7473 0a20 2020 2063 6861 6e67 6564 5f77  ts.    changed_w
│ │ │ +00244af0: 6865 6e3a 2066 616c 7365 0a20 2020 2066  hen: false.    f
│ │ │ +00244b00: 6169 6c65 645f 7768 656e 3a20 7365 7276  ailed_when: serv
│ │ │ +00244b10: 6963 655f 6578 6973 7473 2e72 6320 6e6f  ice_exists.rc no
│ │ │ +00244b20: 7420 696e 205b 302c 2031 5d0a 2020 2020  t in [0, 1].    
│ │ │ +00244b30: 6368 6563 6b5f 6d6f 6465 3a20 6661 6c73  check_mode: fals
│ │ │ +00244b40: 650a 0a20 202d 206e 616d 653a 2044 6973  e..  - name: Dis
│ │ │ +00244b50: 6162 6c65 204e 6574 776f 726b 2046 696c  able Network Fil
│ │ │ +00244b60: 6520 5379 7374 656d 2028 6e66 7329 202d  e System (nfs) -
│ │ │ +00244b70: 2045 6e73 7572 6520 6e66 732d 7365 7276   Ensure nfs-serv
│ │ │ +00244b80: 6572 2e73 6572 7669 6365 2069 7320 4d61  er.service is Ma
│ │ │ +00244b90: 736b 6564 0a20 2020 2061 6e73 6962 6c65  sked.    ansible
│ │ │ +00244ba0: 2e62 7569 6c74 696e 2e73 7973 7465 6d64  .builtin.systemd
│ │ │ +00244bb0: 3a0a 2020 2020 2020 6e61 6d65 3a20 6e66  :.      name: nf
│ │ │ +00244bc0: 732d 7365 7276 6572 2e73 6572 7669 6365  s-server.service
│ │ │ +00244bd0: 0a20 2020 2020 2073 7461 7465 3a20 7374  .      state: st
│ │ │ +00244be0: 6f70 7065 640a 2020 2020 2020 656e 6162  opped.      enab
│ │ │ +00244bf0: 6c65 643a 2066 616c 7365 0a20 2020 2020  led: false.     
│ │ │ +00244c00: 206d 6173 6b65 643a 2074 7275 650a 2020   masked: true.  
│ │ │ +00244c10: 2020 7768 656e 3a20 7365 7276 6963 655f    when: service_
│ │ │ +00244c20: 6578 6973 7473 2e73 7464 6f75 745f 6c69  exists.stdout_li
│ │ │ +00244c30: 6e65 7320 6973 2073 6561 7263 6828 226e  nes is search("n
│ │ │ +00244c40: 6673 2d73 6572 7665 722e 7365 7276 6963  fs-server.servic
│ │ │ +00244c50: 6522 2c20 6d75 6c74 696c 696e 653d 5472  e", multiline=Tr
│ │ │ +00244c60: 7565 290a 0a20 202d 206e 616d 653a 2055  ue)..  - name: U
│ │ │ +00244c70: 6e69 7420 536f 636b 6574 2045 7869 7374  nit Socket Exist
│ │ │ +00244c80: 7320 2d20 6e66 732d 7365 7276 6572 2e73  s - nfs-server.s
│ │ │ +00244c90: 6f63 6b65 740a 2020 2020 616e 7369 626c  ocket.    ansibl
│ │ │ +00244ca0: 652e 6275 696c 7469 6e2e 636f 6d6d 616e  e.builtin.comman
│ │ │ +00244cb0: 643a 2073 7973 7465 6d63 746c 202d 7120  d: systemctl -q 
│ │ │ +00244cc0: 6c69 7374 2d75 6e69 742d 6669 6c65 7320  list-unit-files 
│ │ │ +00244cd0: 6e66 732d 7365 7276 6572 2e73 6f63 6b65  nfs-server.socke
│ │ │ +00244ce0: 740a 2020 2020 7265 6769 7374 6572 3a20  t.    register: 
│ │ │ +00244cf0: 736f 636b 6574 5f66 696c 655f 6578 6973  socket_file_exis
│ │ │ +00244d00: 7473 0a20 2020 2063 6861 6e67 6564 5f77  ts.    changed_w
│ │ │ +00244d10: 6865 6e3a 2066 616c 7365 0a20 2020 2066  hen: false.    f
│ │ │ +00244d20: 6169 6c65 645f 7768 656e 3a20 736f 636b  ailed_when: sock
│ │ │ +00244d30: 6574 5f66 696c 655f 6578 6973 7473 2e72  et_file_exists.r
│ │ │ +00244d40: 6320 6e6f 7420 696e 205b 302c 2031 5d0a  c not in [0, 1].
│ │ │ +00244d50: 2020 2020 6368 6563 6b5f 6d6f 6465 3a20      check_mode: 
│ │ │ +00244d60: 6661 6c73 650a 0a20 202d 206e 616d 653a  false..  - name:
│ │ │ +00244d70: 2044 6973 6162 6c65 204e 6574 776f 726b   Disable Network
│ │ │ +00244d80: 2046 696c 6520 5379 7374 656d 2028 6e66   File System (nf
│ │ │ +00244d90: 7329 202d 2044 6973 6162 6c65 2053 6f63  s) - Disable Soc
│ │ │ +00244da0: 6b65 7420 6e66 732d 7365 7276 6572 0a20  ket nfs-server. 
│ │ │ +00244db0: 2020 2061 6e73 6962 6c65 2e62 7569 6c74     ansible.built
│ │ │ +00244dc0: 696e 2e73 7973 7465 6d64 3a0a 2020 2020  in.systemd:.    
│ │ │ +00244dd0: 2020 6e61 6d65 3a20 6e66 732d 7365 7276    name: nfs-serv
│ │ │ +00244de0: 6572 2e73 6f63 6b65 740a 2020 2020 2020  er.socket.      
│ │ │ +00244df0: 656e 6162 6c65 643a 2066 616c 7365 0a20  enabled: false. 
│ │ │ +00244e00: 2020 2020 2073 7461 7465 3a20 7374 6f70       state: stop
│ │ │ +00244e10: 7065 640a 2020 2020 2020 6d61 736b 6564  ped.      masked
│ │ │ +00244e20: 3a20 7472 7565 0a20 2020 2077 6865 6e3a  : true.    when:
│ │ │ +00244e30: 2073 6f63 6b65 745f 6669 6c65 5f65 7869   socket_file_exi
│ │ │ +00244e40: 7374 732e 7374 646f 7574 5f6c 696e 6573  sts.stdout_lines
│ │ │ +00244e50: 2069 7320 7365 6172 6368 2822 6e66 732d   is search("nfs-
│ │ │ +00244e60: 7365 7276 6572 2e73 6f63 6b65 7422 2c20  server.socket", 
│ │ │ +00244e70: 6d75 6c74 696c 696e 653d 5472 7565 290a  multiline=True).
│ │ │ +00244e80: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ +00244e90: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ +00244ea0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +00244eb0: 434d 2d37 2861 290a 2020 2d20 4e49 5354  CM-7(a).  - NIST
│ │ │ +00244ec0: 2d38 3030 2d35 332d 434d 2d37 2862 290a  -800-53-CM-7(b).
│ │ │ +00244ed0: 2020 2d20 6469 7361 626c 655f 7374 7261    - disable_stra
│ │ │ +00244ee0: 7465 6779 0a20 202d 206c 6f77 5f63 6f6d  tegy.  - low_com
│ │ │ +00244ef0: 706c 6578 6974 790a 2020 2d20 6c6f 775f  plexity.  - low_
│ │ │ +00244f00: 6469 7372 7570 7469 6f6e 0a20 202d 206e  disruption.  - n
│ │ │ +00244f10: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ +00244f20: 2020 2d20 7365 7276 6963 655f 6e66 735f    - service_nfs_
│ │ │ +00244f30: 6469 7361 626c 6564 0a20 202d 2073 7065  disabled.  - spe
│ │ │ +00244f40: 6369 616c 5f73 6572 7669 6365 5f62 6c6f  cial_service_blo
│ │ │ +00244f50: 636b 0a20 202d 2075 6e6b 6e6f 776e 5f73  ck.  - unknown_s
│ │ │ +00244f60: 6576 6572 6974 790a 2020 7768 656e 3a20  everity.  when: 
│ │ │ +00244f70: 2722 6b65 726e 656c 2220 696e 2061 6e73  '"kernel" in ans
│ │ │ +00244f80: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +00244f90: 6765 7327 0a3c 2f63 6f64 653e 3c2f 7072  ges'.
Remediation │ │ │ +00245050: 2050 7570 7065 7420 736e 6970 7065 7420 Puppet snippet │ │ │ +00245060: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
Complexity: │ │ │ +002450f0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ +00245110: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:low< │ │ │ +00245130: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:falseSt │ │ │ +00245160: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ +00245170: 656e 6162 6c65 3c2f 7464 3e3c 2f74 723e enable │ │ │ +00245180: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
include disab
│ │ │ +002451a0: 6c65 5f6e 6673 2d73 6572 7665 720a 0a63  le_nfs-server..c
│ │ │ +002451b0: 6c61 7373 2064 6973 6162 6c65 5f6e 6673  lass disable_nfs
│ │ │ +002451c0: 2d73 6572 7665 7220 7b0a 2020 7365 7276  -server {.  serv
│ │ │ +002451d0: 6963 6520 7b27 6e66 732d 7365 7276 6572  ice {'nfs-server
│ │ │ +002451e0: 273a 0a20 2020 2065 6e61 626c 6520 3d26  ':.    enable =&
│ │ │ +002451f0: 6774 3b20 6661 6c73 652c 0a20 2020 2065  gt; false,.    e
│ │ │ +00245200: 6e73 7572 6520 3d26 6774 3b20 2773 746f  nsure => 'sto
│ │ │ +00245210: 7070 6564 272c 0a20 207d 0a7d 0a3c 2f63  pped',.  }.}.
│ │ │ +00245230: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ +002452d0: 6564 6961 7469 6f6e 204f 5342 7569 6c64 ediation OSBuild │ │ │ +002452e0: 2042 6c75 6570 7269 6e74 2073 6e69 7070 Blueprint snipp │ │ │ +002452f0: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...

.[custo │ │ │ +00245340: 6d69 7a61 7469 6f6e 732e 7365 7276 6963 mizations.servic │ │ │ +00245350: 6573 5d0a 6d61 736b 6564 203d 205b 226e es].masked = ["n │ │ │ +00245360: 6673 2d73 6572 7665 7222 5d0a 3c2f 636f fs-server"].

< │ │ │ 00245380: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ 00245390: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ 002453a0: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ 002453b0: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ 002453c0: 6437 3538 2220 7461 6269 6e64 6578 3d22 d758" tabindex=" │ │ │ 002453d0: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ @@ -151360,186 +151360,186 @@ │ │ │ 0024f3f0: 2220 6461 7461 2d74 6172 6765 743d 2223 " data-target="# │ │ │ 0024f400: 6964 3736 3922 2074 6162 696e 6465 783d id769" tabindex= │ │ │ 0024f410: 2230 2220 726f 6c65 3d22 6275 7474 6f6e "0" role="button │ │ │ 0024f420: 2220 6172 6961 2d65 7870 616e 6465 643d " aria-expanded= │ │ │ 0024f430: 2266 616c 7365 2220 7469 746c 653d 2241 "false" title="A │ │ │ 0024f440: 6374 6976 6174 6520 746f 2072 6576 6561 ctivate to revea │ │ │ 0024f450: 6c22 2068 7265 663d 2223 2122 3e52 656d l" href="#!">Rem │ │ │ -0024f460: 6564 6961 7469 6f6e 2041 6e61 636f 6e64 ediation Anacond │ │ │ -0024f470: 6120 736e 6970 7065 7420 e287 b23c 2f61 a snippet ...
< │ │ │ -0024f510: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -0024f520: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ -0024f570: 3c74 723e 3c74 683e 5374 7261 7465 6779
..
│ │ │ -0024f5b0: 7061 636b 6167 6520 2d2d 7265 6d6f 7665  package --remove
│ │ │ -0024f5c0: 3d74 656c 6e65 742d 7365 7276 6572 0a3c  =telnet-server.<
│ │ │ -0024f5d0: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ -0024f680: 656d 6564 6961 7469 6f6e 2050 7570 7065 emediation Puppe │ │ │ -0024f690: 7420 736e 6970 7065 7420 e287 b23c 2f61 t snippet ...
C │ │ │ -0024f500: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -0024f530: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ -0024f540: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -0024f580: 3a3c 2f74 683e 3c74 643e 6469 7361 626c :disabl │ │ │ -0024f590: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
< │ │ │ -0024f730: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -0024f740: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ -0024f790: 3c74 723e 3c74 683e 5374 7261 7465 6779
.i
│ │ │ -0024f7d0: 6e63 6c75 6465 2072 656d 6f76 655f 7465  nclude remove_te
│ │ │ -0024f7e0: 6c6e 6574 2d73 6572 7665 720a 0a63 6c61  lnet-server..cla
│ │ │ -0024f7f0: 7373 2072 656d 6f76 655f 7465 6c6e 6574  ss remove_telnet
│ │ │ -0024f800: 2d73 6572 7665 7220 7b0a 2020 7061 636b  -server {.  pack
│ │ │ -0024f810: 6167 6520 7b20 2774 656c 6e65 742d 7365  age { 'telnet-se
│ │ │ -0024f820: 7276 6572 273a 0a20 2020 2065 6e73 7572  rver':.    ensur
│ │ │ -0024f830: 6520 3d26 6774 3b20 2770 7572 6765 6427  e => 'purged'
│ │ │ -0024f840: 2c0a 2020 7d0a 7d0a 3c2f 636f 6465 3e3c  ,.  }.}.<
│ │ │ -0024f850: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>Remediat
│ │ │ -0024f900: 696f 6e20 416e 7369 626c 6520 736e 6970  ion Ansible snip
│ │ │ -0024f910: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c  pet ...
< │ │ │ -0024f920: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -0024f930: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -0024f940: 7365 2220 6964 3d22 6964 3737 3122 3e3c se" id="id771">< │ │ │ -0024f950: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ -0024f960: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ -0024f970: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ -0024f980: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ -0024f990: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >
Disruption:Strategy: │ │ │ -0024fa20: 3c74 643e 6469 7361 626c 653c 2f74 643e │ │ │ -0024fa30: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
C │ │ │ -0024f720: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -0024f750: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ -0024f760: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -0024f7a0: 3a3c 2f74 683e 3c74 643e 6469 7361 626c :disabl │ │ │ -0024f7b0: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
Complex │ │ │ -0024f9a0: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ -0024f9b0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
low
Reboo │ │ │ -0024f9f0: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -0024fa00: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
disable
- name: │ │ │ -0024fa50: 2755 6e69 6e73 7461 6c6c 2074 656c 6e65 'Uninstall telne │ │ │ -0024fa60: 742d 7365 7276 6572 2050 6163 6b61 6765 t-server Package │ │ │ -0024fa70: 3a20 456e 7375 7265 2074 656c 6e65 742d : Ensure telnet- │ │ │ -0024fa80: 7365 7276 6572 2069 7320 7265 6d6f 7665 server is remove │ │ │ -0024fa90: 6427 0a20 2061 6e73 6962 6c65 2e62 7569 d'. ansible.bui │ │ │ -0024faa0: 6c74 696e 2e70 6163 6b61 6765 3a0a 2020 ltin.package:. │ │ │ -0024fab0: 2020 6e61 6d65 3a20 7465 6c6e 6574 2d73 name: telnet-s │ │ │ -0024fac0: 6572 7665 720a 2020 2020 7374 6174 653a erver. state: │ │ │ -0024fad0: 2061 6273 656e 740a 2020 7461 6773 3a0a absent. tags:. │ │ │ -0024fae0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d - NIST-800-53- │ │ │ -0024faf0: 434d 2d36 2861 290a 2020 2d20 4e49 5354 CM-6(a). - NIST │ │ │ -0024fb00: 2d38 3030 2d35 332d 434d 2d37 2861 290a -800-53-CM-7(a). │ │ │ -0024fb10: 2020 2d20 4e49 5354 2d38 3030 2d35 332d - NIST-800-53- │ │ │ -0024fb20: 434d 2d37 2862 290a 2020 2d20 5043 492d CM-7(b). - PCI- │ │ │ -0024fb30: 4453 532d 5265 712d 322e 322e 320a 2020 DSS-Req-2.2.2. │ │ │ -0024fb40: 2d20 5043 492d 4453 5376 342d 322e 320a - PCI-DSSv4-2.2. │ │ │ -0024fb50: 2020 2d20 5043 492d 4453 5376 342d 322e - PCI-DSSv4-2. │ │ │ -0024fb60: 322e 340a 2020 2d20 6469 7361 626c 655f 2.4. - disable_ │ │ │ -0024fb70: 7374 7261 7465 6779 0a20 202d 2068 6967 strategy. - hig │ │ │ -0024fb80: 685f 7365 7665 7269 7479 0a20 202d 206c h_severity. - l │ │ │ -0024fb90: 6f77 5f63 6f6d 706c 6578 6974 790a 2020 ow_complexity. │ │ │ -0024fba0: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e - low_disruption │ │ │ -0024fbb0: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e . - no_reboot_n │ │ │ -0024fbc0: 6565 6465 640a 2020 2d20 7061 636b 6167 eeded. - packag │ │ │ -0024fbd0: 655f 7465 6c6e 6574 2d73 6572 7665 725f e_telnet-server_ │ │ │ -0024fbe0: 7265 6d6f 7665 640a 3c2f 636f 6465 3e3c removed.< │ │ │ -0024fbf0: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c /pre>
Remediat │ │ │ -0024fca0: 696f 6e20 5368 656c 6c20 7363 7269 7074 ion Shell script │ │ │ -0024fcb0: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Complexity │ │ │ -0024fd40: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ -0024fd60: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ -0024fd70: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -0024fd80: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ -0024fd90: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ -0024fdb0: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:disable
<
│ │ │ -0024fde0: 636f 6465 3e0a 2320 4341 5554 494f 4e3a  code>.# CAUTION:
│ │ │ -0024fdf0: 2054 6869 7320 7265 6d65 6469 6174 696f   This remediatio
│ │ │ -0024fe00: 6e20 7363 7269 7074 2077 696c 6c20 7265  n script will re
│ │ │ -0024fe10: 6d6f 7665 2074 656c 6e65 742d 7365 7276  move telnet-serv
│ │ │ -0024fe20: 6572 0a23 2066 726f 6d20 7468 6520 7379  er.# from the sy
│ │ │ -0024fe30: 7374 656d 2c20 616e 6420 6d61 7920 7265  stem, and may re
│ │ │ -0024fe40: 6d6f 7665 2061 6e79 2070 6163 6b61 6765  move any package
│ │ │ -0024fe50: 730a 2320 7468 6174 2064 6570 656e 6420  s.# that depend 
│ │ │ -0024fe60: 6f6e 2074 656c 6e65 742d 7365 7276 6572  on telnet-server
│ │ │ -0024fe70: 2e20 4578 6563 7574 6520 7468 6973 0a23  . Execute this.#
│ │ │ -0024fe80: 2072 656d 6564 6961 7469 6f6e 2041 4654   remediation AFT
│ │ │ -0024fe90: 4552 2074 6573 7469 6e67 206f 6e20 6120  ER testing on a 
│ │ │ -0024fea0: 6e6f 6e2d 7072 6f64 7563 7469 6f6e 0a23  non-production.#
│ │ │ -0024feb0: 2073 7973 7465 6d21 0a0a 0a69 6620 7270   system!...if rp
│ │ │ -0024fec0: 6d20 2d71 202d 2d71 7569 6574 2022 7465  m -q --quiet "te
│ │ │ -0024fed0: 6c6e 6574 2d73 6572 7665 7222 203b 2074  lnet-server" ; t
│ │ │ -0024fee0: 6865 6e0a 646e 6620 7265 6d6f 7665 202d  hen.dnf remove -
│ │ │ -0024fef0: 7920 2d2d 6e6f 6175 746f 7265 6d6f 7665  y --noautoremove
│ │ │ -0024ff00: 2022 7465 6c6e 6574 2d73 6572 7665 7222   "telnet-server"
│ │ │ -0024ff10: 0a66 690a 3c2f 636f 6465 3e3c 2f70 7265  .fi.
│ │ │ +0024f480: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ +0024f520: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ +0024f570: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
- n
│ │ │ +0024f5b0: 616d 653a 2027 556e 696e 7374 616c 6c20  ame: 'Uninstall 
│ │ │ +0024f5c0: 7465 6c6e 6574 2d73 6572 7665 7220 5061  telnet-server Pa
│ │ │ +0024f5d0: 636b 6167 653a 2045 6e73 7572 6520 7465  ckage: Ensure te
│ │ │ +0024f5e0: 6c6e 6574 2d73 6572 7665 7220 6973 2072  lnet-server is r
│ │ │ +0024f5f0: 656d 6f76 6564 270a 2020 616e 7369 626c  emoved'.  ansibl
│ │ │ +0024f600: 652e 6275 696c 7469 6e2e 7061 636b 6167  e.builtin.packag
│ │ │ +0024f610: 653a 0a20 2020 206e 616d 653a 2074 656c  e:.    name: tel
│ │ │ +0024f620: 6e65 742d 7365 7276 6572 0a20 2020 2073  net-server.    s
│ │ │ +0024f630: 7461 7465 3a20 6162 7365 6e74 0a20 2074  tate: absent.  t
│ │ │ +0024f640: 6167 733a 0a20 202d 204e 4953 542d 3830  ags:.  - NIST-80
│ │ │ +0024f650: 302d 3533 2d43 4d2d 3628 6129 0a20 202d  0-53-CM-6(a).  -
│ │ │ +0024f660: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +0024f670: 3728 6129 0a20 202d 204e 4953 542d 3830  7(a).  - NIST-80
│ │ │ +0024f680: 302d 3533 2d43 4d2d 3728 6229 0a20 202d  0-53-CM-7(b).  -
│ │ │ +0024f690: 2050 4349 2d44 5353 2d52 6571 2d32 2e32   PCI-DSS-Req-2.2
│ │ │ +0024f6a0: 2e32 0a20 202d 2050 4349 2d44 5353 7634  .2.  - PCI-DSSv4
│ │ │ +0024f6b0: 2d32 2e32 0a20 202d 2050 4349 2d44 5353  -2.2.  - PCI-DSS
│ │ │ +0024f6c0: 7634 2d32 2e32 2e34 0a20 202d 2064 6973  v4-2.2.4.  - dis
│ │ │ +0024f6d0: 6162 6c65 5f73 7472 6174 6567 790a 2020  able_strategy.  
│ │ │ +0024f6e0: 2d20 6869 6768 5f73 6576 6572 6974 790a  - high_severity.
│ │ │ +0024f6f0: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ +0024f700: 7479 0a20 202d 206c 6f77 5f64 6973 7275  ty.  - low_disru
│ │ │ +0024f710: 7074 696f 6e0a 2020 2d20 6e6f 5f72 6562  ption.  - no_reb
│ │ │ +0024f720: 6f6f 745f 6e65 6564 6564 0a20 202d 2070  oot_needed.  - p
│ │ │ +0024f730: 6163 6b61 6765 5f74 656c 6e65 742d 7365  ackage_telnet-se
│ │ │ +0024f740: 7276 6572 5f72 656d 6f76 6564 0a3c 2f63  rver_removed.
│ │ │ +0024f760: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ +0024f800: 6564 6961 7469 6f6e 2050 7570 7065 7420 ediation Puppet │ │ │ +0024f810: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ +0024f820: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Co │ │ │ +0024f500: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +0024f530: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +0024f550: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +0024f560: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +0024f580: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ +0024f590: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Com │ │ │ +0024f8a0: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ +0024f8d0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ +0024f8f0: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +0024f900: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ +0024f920: 2f74 683e 3c74 643e 6469 7361 626c 653c /th>disable< │ │ │ +0024f930: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
.inc
│ │ │ +0024f950: 6c75 6465 2072 656d 6f76 655f 7465 6c6e  lude remove_teln
│ │ │ +0024f960: 6574 2d73 6572 7665 720a 0a63 6c61 7373  et-server..class
│ │ │ +0024f970: 2072 656d 6f76 655f 7465 6c6e 6574 2d73   remove_telnet-s
│ │ │ +0024f980: 6572 7665 7220 7b0a 2020 7061 636b 6167  erver {.  packag
│ │ │ +0024f990: 6520 7b20 2774 656c 6e65 742d 7365 7276  e { 'telnet-serv
│ │ │ +0024f9a0: 6572 273a 0a20 2020 2065 6e73 7572 6520  er':.    ensure 
│ │ │ +0024f9b0: 3d26 6774 3b20 2770 7572 6765 6427 2c0a  => 'purged',.
│ │ │ +0024f9c0: 2020 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70    }.}.

Remediatio │ │ │ +0024fa80: 6e20 5368 656c 6c20 7363 7269 7074 20e2 n Shell script . │ │ │ +0024fa90: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ +0024fb10: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +0024fb30: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ +0024fb80: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ +0024fbb0: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ +0024fb20: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +0024fb40: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ +0024fb90: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ +0024fba0: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
.# CAUTION: T
│ │ │ +0024fbd0: 6869 7320 7265 6d65 6469 6174 696f 6e20  his remediation 
│ │ │ +0024fbe0: 7363 7269 7074 2077 696c 6c20 7265 6d6f  script will remo
│ │ │ +0024fbf0: 7665 2074 656c 6e65 742d 7365 7276 6572  ve telnet-server
│ │ │ +0024fc00: 0a23 2066 726f 6d20 7468 6520 7379 7374  .# from the syst
│ │ │ +0024fc10: 656d 2c20 616e 6420 6d61 7920 7265 6d6f  em, and may remo
│ │ │ +0024fc20: 7665 2061 6e79 2070 6163 6b61 6765 730a  ve any packages.
│ │ │ +0024fc30: 2320 7468 6174 2064 6570 656e 6420 6f6e  # that depend on
│ │ │ +0024fc40: 2074 656c 6e65 742d 7365 7276 6572 2e20   telnet-server. 
│ │ │ +0024fc50: 4578 6563 7574 6520 7468 6973 0a23 2072  Execute this.# r
│ │ │ +0024fc60: 656d 6564 6961 7469 6f6e 2041 4654 4552  emediation AFTER
│ │ │ +0024fc70: 2074 6573 7469 6e67 206f 6e20 6120 6e6f   testing on a no
│ │ │ +0024fc80: 6e2d 7072 6f64 7563 7469 6f6e 0a23 2073  n-production.# s
│ │ │ +0024fc90: 7973 7465 6d21 0a0a 0a69 6620 7270 6d20  ystem!...if rpm 
│ │ │ +0024fca0: 2d71 202d 2d71 7569 6574 2022 7465 6c6e  -q --quiet "teln
│ │ │ +0024fcb0: 6574 2d73 6572 7665 7222 203b 2074 6865  et-server" ; the
│ │ │ +0024fcc0: 6e0a 646e 6620 7265 6d6f 7665 202d 7920  n.dnf remove -y 
│ │ │ +0024fcd0: 2d2d 6e6f 6175 746f 7265 6d6f 7665 2022  --noautoremove "
│ │ │ +0024fce0: 7465 6c6e 6574 2d73 6572 7665 7222 0a66  telnet-server".f
│ │ │ +0024fcf0: 690a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  i.
< │ │ │ +0024fd00: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation An │ │ │ +0024fdb0: 6163 6f6e 6461 2073 6e69 7070 6574 20e2 aconda snippet . │ │ │ +0024fdc0: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ +0024fe40: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +0024fe60: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ +0024feb0: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ +0024fee0: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ +0024fe50: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +0024fe70: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ +0024fec0: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ +0024fed0: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
..package --r
│ │ │ +0024ff00: 656d 6f76 653d 7465 6c6e 6574 2d73 6572  emove=telnet-ser
│ │ │ +0024ff10: 7665 720a 3c2f 636f 6465 3e3c 2f70 7265  ver.
< │ │ │ 0024ff40: 2f74 6162 6c65 3e3c 2f74 643e 3c2f 7472 /table>Remediatio │ │ │ -00250af0: 6e20 416e 6163 6f6e 6461 2073 6e69 7070 n Anaconda snipp │ │ │ -00250b00: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ -00250b80: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ -00250b90: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -00250ba0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ -00250be0: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -00250bf0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ -00250c10: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ -00250c20: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
..package
│ │ │ -00250c40: 202d 2d72 656d 6f76 653d 7465 6c6e 6574   --remove=telnet
│ │ │ -00250c50: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation Pup │ │ │ -00250d10: 7065 7420 736e 6970 7065 7420 e287 b23c pet snippet ...< │ │ │ -00250d20: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
< │ │ │ -00250df0: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -00250e00: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

│ │ │ -00250e50: 0a69 6e63 6c75 6465 2072 656d 6f76 655f  .include remove_
│ │ │ -00250e60: 7465 6c6e 6574 0a0a 636c 6173 7320 7265  telnet..class re
│ │ │ -00250e70: 6d6f 7665 5f74 656c 6e65 7420 7b0a 2020  move_telnet {.  
│ │ │ -00250e80: 7061 636b 6167 6520 7b20 2774 656c 6e65  package { 'telne
│ │ │ -00250e90: 7427 3a0a 2020 2020 656e 7375 7265 203d  t':.    ensure =
│ │ │ -00250ea0: 2667 743b 2027 7075 7267 6564 272c 0a20  > 'purged',. 
│ │ │ -00250eb0: 207d 0a7d 0a3c 2f63 6f64 653e 3c2f 7072   }.}.Remediation
│ │ │ -00250f70: 2041 6e73 6962 6c65 2073 6e69 7070 6574   Ansible snippet
│ │ │ -00250f80: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976   ...
< │ │ │ -00251040: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -00251050: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c
Complexity:low
Disrup │ │ │ -00250dd0: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -00250de0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -00250e20: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ -00250e30: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Complexity │ │ │ -00251010: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
D │ │ │ -00251030: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:
Reboot:< │ │ │ -00251060: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>false
S │ │ │ -00251080: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:disable
<
│ │ │ -002510b0: 636f 6465 3e2d 206e 616d 653a 2027 5265  code>- name: 'Re
│ │ │ -002510c0: 6d6f 7665 2074 656c 6e65 7420 436c 6965  move telnet Clie
│ │ │ -002510d0: 6e74 733a 2045 6e73 7572 6520 7465 6c6e  nts: Ensure teln
│ │ │ -002510e0: 6574 2069 7320 7265 6d6f 7665 6427 0a20  et is removed'. 
│ │ │ -002510f0: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ -00251100: 2e70 6163 6b61 6765 3a0a 2020 2020 6e61  .package:.    na
│ │ │ -00251110: 6d65 3a20 7465 6c6e 6574 0a20 2020 2073  me: telnet.    s
│ │ │ -00251120: 7461 7465 3a20 6162 7365 6e74 0a20 2074  tate: absent.  t
│ │ │ -00251130: 6167 733a 0a20 202d 204e 4953 542d 3830  ags:.  - NIST-80
│ │ │ -00251140: 302d 3137 312d 332e 312e 3133 0a20 202d  0-171-3.1.13.  -
│ │ │ -00251150: 2050 4349 2d44 5353 7634 2d32 2e32 0a20   PCI-DSSv4-2.2. 
│ │ │ -00251160: 202d 2050 4349 2d44 5353 7634 2d32 2e32   - PCI-DSSv4-2.2
│ │ │ -00251170: 2e34 0a20 202d 2064 6973 6162 6c65 5f73  .4.  - disable_s
│ │ │ -00251180: 7472 6174 6567 790a 2020 2d20 6c6f 775f  trategy.  - low_
│ │ │ -00251190: 636f 6d70 6c65 7869 7479 0a20 202d 206c  complexity.  - l
│ │ │ -002511a0: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ -002511b0: 2d20 6c6f 775f 7365 7665 7269 7479 0a20  - low_severity. 
│ │ │ -002511c0: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ -002511d0: 6465 640a 2020 2d20 7061 636b 6167 655f  ded.  - package_
│ │ │ -002511e0: 7465 6c6e 6574 5f72 656d 6f76 6564 0a3c  telnet_removed.<
│ │ │ -002511f0: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ -002512a0: 656d 6564 6961 7469 6f6e 2053 6865 6c6c emediation Shell │ │ │ -002512b0: 2073 6372 6970 7420 e287 b23c 2f61 3e3c script ...< │ │ │ -002512c0: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Com │ │ │ -00251340: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ -00251370: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ -00251390: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -002513a0: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -002513c0: 2f74 683e 3c74 643e 6469 7361 626c 653c /th>disable< │ │ │ -002513d0: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
.# C
│ │ │ -002513f0: 4155 5449 4f4e 3a20 5468 6973 2072 656d  AUTION: This rem
│ │ │ -00251400: 6564 6961 7469 6f6e 2073 6372 6970 7420  ediation script 
│ │ │ -00251410: 7769 6c6c 2072 656d 6f76 6520 7465 6c6e  will remove teln
│ │ │ -00251420: 6574 0a23 2066 726f 6d20 7468 6520 7379  et.# from the sy
│ │ │ -00251430: 7374 656d 2c20 616e 6420 6d61 7920 7265  stem, and may re
│ │ │ -00251440: 6d6f 7665 2061 6e79 2070 6163 6b61 6765  move any package
│ │ │ -00251450: 730a 2320 7468 6174 2064 6570 656e 6420  s.# that depend 
│ │ │ -00251460: 6f6e 2074 656c 6e65 742e 2045 7865 6375  on telnet. Execu
│ │ │ -00251470: 7465 2074 6869 730a 2320 7265 6d65 6469  te this.# remedi
│ │ │ -00251480: 6174 696f 6e20 4146 5445 5220 7465 7374  ation AFTER test
│ │ │ -00251490: 696e 6720 6f6e 2061 206e 6f6e 2d70 726f  ing on a non-pro
│ │ │ -002514a0: 6475 6374 696f 6e0a 2320 7379 7374 656d  duction.# system
│ │ │ -002514b0: 210a 0a0a 6966 2072 706d 202d 7120 2d2d  !...if rpm -q --
│ │ │ -002514c0: 7175 6965 7420 2274 656c 6e65 7422 203b  quiet "telnet" ;
│ │ │ -002514d0: 2074 6865 6e0a 646e 6620 7265 6d6f 7665   then.dnf remove
│ │ │ -002514e0: 202d 7920 2d2d 6e6f 6175 746f 7265 6d6f   -y --noautoremo
│ │ │ -002514f0: 7665 2022 7465 6c6e 6574 220a 6669 0a3c  ve "telnet".fi.<
│ │ │ +00250af0: 6e20 416e 7369 626c 6520 736e 6970 7065  n Ansible snippe
│ │ │ +00250b00: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469  t ...
< │ │ │ +00250b80: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ +00250b90: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ +00250bb0: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ +00250bc0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ +00250be0: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ +00250c00: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:disable
│ │ │ +00250c30: 3c63 6f64 653e 2d20 6e61 6d65 3a20 2752  - name: 'R
│ │ │ +00250c40: 656d 6f76 6520 7465 6c6e 6574 2043 6c69  emove telnet Cli
│ │ │ +00250c50: 656e 7473 3a20 456e 7375 7265 2074 656c  ents: Ensure tel
│ │ │ +00250c60: 6e65 7420 6973 2072 656d 6f76 6564 270a  net is removed'.
│ │ │ +00250c70: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ +00250c80: 6e2e 7061 636b 6167 653a 0a20 2020 206e  n.package:.    n
│ │ │ +00250c90: 616d 653a 2074 656c 6e65 740a 2020 2020  ame: telnet.    
│ │ │ +00250ca0: 7374 6174 653a 2061 6273 656e 740a 2020  state: absent.  
│ │ │ +00250cb0: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38  tags:.  - NIST-8
│ │ │ +00250cc0: 3030 2d31 3731 2d33 2e31 2e31 330a 2020  00-171-3.1.13.  
│ │ │ +00250cd0: 2d20 5043 492d 4453 5376 342d 322e 320a  - PCI-DSSv4-2.2.
│ │ │ +00250ce0: 2020 2d20 5043 492d 4453 5376 342d 322e    - PCI-DSSv4-2.
│ │ │ +00250cf0: 322e 340a 2020 2d20 6469 7361 626c 655f  2.4.  - disable_
│ │ │ +00250d00: 7374 7261 7465 6779 0a20 202d 206c 6f77  strategy.  - low
│ │ │ +00250d10: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +00250d20: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ +00250d30: 202d 206c 6f77 5f73 6576 6572 6974 790a   - low_severity.
│ │ │ +00250d40: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ +00250d50: 6564 6564 0a20 202d 2070 6163 6b61 6765  eded.  - package
│ │ │ +00250d60: 5f74 656c 6e65 745f 7265 6d6f 7665 640a  _telnet_removed.
│ │ │ +00250d70: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ +00250e20: 5265 6d65 6469 6174 696f 6e20 5075 7070 Remediation Pupp │ │ │ +00250e30: 6574 2073 6e69 7070 6574 20e2 87b2 3c2f et snippet ...
│ │ │ +00250ed0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
.
│ │ │ +00250f70: 696e 636c 7564 6520 7265 6d6f 7665 5f74  include remove_t
│ │ │ +00250f80: 656c 6e65 740a 0a63 6c61 7373 2072 656d  elnet..class rem
│ │ │ +00250f90: 6f76 655f 7465 6c6e 6574 207b 0a20 2070  ove_telnet {.  p
│ │ │ +00250fa0: 6163 6b61 6765 207b 2027 7465 6c6e 6574  ackage { 'telnet
│ │ │ +00250fb0: 273a 0a20 2020 2065 6e73 7572 6520 3d26  ':.    ensure =&
│ │ │ +00250fc0: 6774 3b20 2770 7572 6765 6427 2c0a 2020  gt; 'purged',.  
│ │ │ +00250fd0: 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70 7265  }.}.
Remediation │ │ │ +00251090: 5368 656c 6c20 7363 7269 7074 20e2 87b2 Shell script ... │ │ │ +002510a0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
│ │ │ +00250ec0: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +00250ef0: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +00250f00: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +00250f40: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ +00250f50: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Complexity: │ │ │ +00251170: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +00251180: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
.# CAUTION: Thi
│ │ │ +002511e0: 7320 7265 6d65 6469 6174 696f 6e20 7363  s remediation sc
│ │ │ +002511f0: 7269 7074 2077 696c 6c20 7265 6d6f 7665  ript will remove
│ │ │ +00251200: 2074 656c 6e65 740a 2320 6672 6f6d 2074   telnet.# from t
│ │ │ +00251210: 6865 2073 7973 7465 6d2c 2061 6e64 206d  he system, and m
│ │ │ +00251220: 6179 2072 656d 6f76 6520 616e 7920 7061  ay remove any pa
│ │ │ +00251230: 636b 6167 6573 0a23 2074 6861 7420 6465  ckages.# that de
│ │ │ +00251240: 7065 6e64 206f 6e20 7465 6c6e 6574 2e20  pend on telnet. 
│ │ │ +00251250: 4578 6563 7574 6520 7468 6973 0a23 2072  Execute this.# r
│ │ │ +00251260: 656d 6564 6961 7469 6f6e 2041 4654 4552  emediation AFTER
│ │ │ +00251270: 2074 6573 7469 6e67 206f 6e20 6120 6e6f   testing on a no
│ │ │ +00251280: 6e2d 7072 6f64 7563 7469 6f6e 0a23 2073  n-production.# s
│ │ │ +00251290: 7973 7465 6d21 0a0a 0a69 6620 7270 6d20  ystem!...if rpm 
│ │ │ +002512a0: 2d71 202d 2d71 7569 6574 2022 7465 6c6e  -q --quiet "teln
│ │ │ +002512b0: 6574 2220 3b20 7468 656e 0a64 6e66 2072  et" ; then.dnf r
│ │ │ +002512c0: 656d 6f76 6520 2d79 202d 2d6e 6f61 7574  emove -y --noaut
│ │ │ +002512d0: 6f72 656d 6f76 6520 2274 656c 6e65 7422  oremove "telnet"
│ │ │ +002512e0: 0a66 690a 3c2f 636f 6465 3e3c 2f70 7265  .fi.
Remediation │ │ │ +002513a0: 416e 6163 6f6e 6461 2073 6e69 7070 6574 Anaconda snippet │ │ │ +002513b0: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
< │ │ │ +00251470: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +00251480: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c
low
Disru │ │ │ +00251150: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +00251160: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +002511a0: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ +002511b0: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
Complexity │ │ │ +00251440: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
D │ │ │ +00251460: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:
Reboot:< │ │ │ +00251490: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>false
S │ │ │ +002514b0: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:disable
<
│ │ │ +002514e0: 636f 6465 3e0a 0a70 6163 6b61 6765 202d  code>..package -
│ │ │ +002514f0: 2d72 656d 6f76 653d 7465 6c6e 6574 0a3c  -remove=telnet.<
│ │ │  00251500: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
│ │ │ -00252a60: 5265 6d65 6469 6174 696f 6e20 416e 6163 Remediation Anac │ │ │ -00252a70: 6f6e 6461 2073 6e69 7070 6574 20e2 87b2 onda snippet ... │ │ │ -00252a80: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity: │ │ │ -00252b50: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -00252b60: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
..package --rem
│ │ │ -00252bc0: 6f76 653d 7466 7470 2d73 6572 7665 720a  ove=tftp-server.
│ │ │ -00252bd0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ -00252c80: 5265 6d65 6469 6174 696f 6e20 5075 7070 Remediation Pupp │ │ │ -00252c90: 6574 2073 6e69 7070 6574 20e2 87b2 3c2f et snippet ...
low
Disru │ │ │ -00252b30: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ -00252b40: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ -00252b80: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ -00252b90: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
│ │ │ -00252d30: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
.
│ │ │ -00252dd0: 696e 636c 7564 6520 7265 6d6f 7665 5f74  include remove_t
│ │ │ -00252de0: 6674 702d 7365 7276 6572 0a0a 636c 6173  ftp-server..clas
│ │ │ -00252df0: 7320 7265 6d6f 7665 5f74 6674 702d 7365  s remove_tftp-se
│ │ │ -00252e00: 7276 6572 207b 0a20 2070 6163 6b61 6765  rver {.  package
│ │ │ -00252e10: 207b 2027 7466 7470 2d73 6572 7665 7227   { 'tftp-server'
│ │ │ -00252e20: 3a0a 2020 2020 656e 7375 7265 203d 2667  :.    ensure =&g
│ │ │ -00252e30: 743b 2027 7075 7267 6564 272c 0a20 207d  t; 'purged',.  }
│ │ │ -00252e40: 0a7d 0a3c 2f63 6f64 653e 3c2f 7072 653e  .}.
│ │ │ -00252e50: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22 Remediation A │ │ │ -00252f00: 6e73 6962 6c65 2073 6e69 7070 6574 20e2 nsible snippet . │ │ │ -00252f10: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ -00252d20: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -00252d50: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -00252d60: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -00252da0: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ -00252db0: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
│ │ │ -00252f90: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -00252fb0: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ -00253000: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ -00253030: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ -00252fa0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ -00252fc0: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ -00253010: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ -00253020: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
- name: 'Unin
│ │ │ -00253050: 7374 616c 6c20 7466 7470 2d73 6572 7665  stall tftp-serve
│ │ │ -00253060: 7220 5061 636b 6167 653a 2045 6e73 7572  r Package: Ensur
│ │ │ -00253070: 6520 7466 7470 2d73 6572 7665 7220 6973  e tftp-server is
│ │ │ -00253080: 2072 656d 6f76 6564 270a 2020 616e 7369   removed'.  ansi
│ │ │ -00253090: 626c 652e 6275 696c 7469 6e2e 7061 636b  ble.builtin.pack
│ │ │ -002530a0: 6167 653a 0a20 2020 206e 616d 653a 2074  age:.    name: t
│ │ │ -002530b0: 6674 702d 7365 7276 6572 0a20 2020 2073  ftp-server.    s
│ │ │ -002530c0: 7461 7465 3a20 6162 7365 6e74 0a20 2074  tate: absent.  t
│ │ │ -002530d0: 6167 733a 0a20 202d 204e 4953 542d 3830  ags:.  - NIST-80
│ │ │ -002530e0: 302d 3533 2d43 4d2d 3628 6129 0a20 202d  0-53-CM-6(a).  -
│ │ │ -002530f0: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -00253100: 3728 6129 0a20 202d 204e 4953 542d 3830  7(a).  - NIST-80
│ │ │ -00253110: 302d 3533 2d43 4d2d 3728 6229 0a20 202d  0-53-CM-7(b).  -
│ │ │ -00253120: 2050 4349 2d44 5353 7634 2d32 2e32 0a20   PCI-DSSv4-2.2. 
│ │ │ -00253130: 202d 2050 4349 2d44 5353 7634 2d32 2e32   - PCI-DSSv4-2.2
│ │ │ -00253140: 2e34 0a20 202d 2064 6973 6162 6c65 5f73  .4.  - disable_s
│ │ │ -00253150: 7472 6174 6567 790a 2020 2d20 6869 6768  trategy.  - high
│ │ │ -00253160: 5f73 6576 6572 6974 790a 2020 2d20 6c6f  _severity.  - lo
│ │ │ -00253170: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ -00253180: 206c 6f77 5f64 6973 7275 7074 696f 6e0a   low_disruption.
│ │ │ -00253190: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ -002531a0: 6564 6564 0a20 202d 2070 6163 6b61 6765  eded.  - package
│ │ │ -002531b0: 5f74 6674 702d 7365 7276 6572 5f72 656d  _tftp-server_rem
│ │ │ -002531c0: 6f76 6564 0a3c 2f63 6f64 653e 3c2f 7072  oved.
Remediation │ │ │ -00253280: 2053 6865 6c6c 2073 6372 6970 7420 e287 Shell script .. │ │ │ -00253290: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ -00253310: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -00253330: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -00253380: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>< │ │ │ -002533b0: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
.# CAUTION: Th
│ │ │ -002533d0: 6973 2072 656d 6564 6961 7469 6f6e 2073  is remediation s
│ │ │ -002533e0: 6372 6970 7420 7769 6c6c 2072 656d 6f76  cript will remov
│ │ │ -002533f0: 6520 7466 7470 2d73 6572 7665 720a 2320  e tftp-server.# 
│ │ │ -00253400: 6672 6f6d 2074 6865 2073 7973 7465 6d2c  from the system,
│ │ │ -00253410: 2061 6e64 206d 6179 2072 656d 6f76 6520   and may remove 
│ │ │ -00253420: 616e 7920 7061 636b 6167 6573 0a23 2074  any packages.# t
│ │ │ -00253430: 6861 7420 6465 7065 6e64 206f 6e20 7466  hat depend on tf
│ │ │ -00253440: 7470 2d73 6572 7665 722e 2045 7865 6375  tp-server. Execu
│ │ │ -00253450: 7465 2074 6869 730a 2320 7265 6d65 6469  te this.# remedi
│ │ │ -00253460: 6174 696f 6e20 4146 5445 5220 7465 7374  ation AFTER test
│ │ │ -00253470: 696e 6720 6f6e 2061 206e 6f6e 2d70 726f  ing on a non-pro
│ │ │ -00253480: 6475 6374 696f 6e0a 2320 7379 7374 656d  duction.# system
│ │ │ -00253490: 210a 0a0a 6966 2072 706d 202d 7120 2d2d  !...if rpm -q --
│ │ │ -002534a0: 7175 6965 7420 2274 6674 702d 7365 7276  quiet "tftp-serv
│ │ │ -002534b0: 6572 2220 3b20 7468 656e 0a64 6e66 2072  er" ; then.dnf r
│ │ │ -002534c0: 656d 6f76 6520 2d79 202d 2d6e 6f61 7574  emove -y --noaut
│ │ │ -002534d0: 6f72 656d 6f76 6520 2274 6674 702d 7365  oremove "tftp-se
│ │ │ -002534e0: 7276 6572 220a 6669 0a3c 2f63 6f64 653e  rver".fi.
│ │ │ +00252a60: 5265 6d65 6469 6174 696f 6e20 416e 7369  Remediation Ansi
│ │ │ +00252a70: 626c 6520 736e 6970 7065 7420 e287 b23c  ble snippet ...<
│ │ │ +00252a80: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173  /a>
low
Disr │ │ │ -00253340: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -00253350: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ -00253390: 7465 6779 3a3c 2f74 683e 3c74 643e 6469 tegy:di │ │ │ -002533a0: 7361 626c 653c 2f74 643e 3c2f 7472 3e3c sable
< │ │ │ +00252b50: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +00252b60: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

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

│ │ │ -002542c0: 2d20 6e61 6d65 3a20 2755 6e69 6e73 7461  - name: 'Uninsta
│ │ │ -002542d0: 6c6c 2072 7379 6e63 2050 6163 6b61 6765  ll rsync Package
│ │ │ -002542e0: 3a20 456e 7375 7265 2072 7379 6e63 2069  : Ensure rsync i
│ │ │ -002542f0: 7320 7265 6d6f 7665 6427 0a20 2061 6e73  s removed'.  ans
│ │ │ -00254300: 6962 6c65 2e62 7569 6c74 696e 2e70 6163  ible.builtin.pac
│ │ │ -00254310: 6b61 6765 3a0a 2020 2020 6e61 6d65 3a20  kage:.    name: 
│ │ │ -00254320: 7273 796e 630a 2020 2020 7374 6174 653a  rsync.    state:
│ │ │ -00254330: 2061 6273 656e 740a 2020 7461 6773 3a0a   absent.  tags:.
│ │ │ -00254340: 2020 2d20 6469 7361 626c 655f 7374 7261    - disable_stra
│ │ │ -00254350: 7465 6779 0a20 202d 206c 6f77 5f63 6f6d  tegy.  - low_com
│ │ │ -00254360: 706c 6578 6974 790a 2020 2d20 6c6f 775f  plexity.  - low_
│ │ │ -00254370: 6469 7372 7570 7469 6f6e 0a20 202d 206d  disruption.  - m
│ │ │ -00254380: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ -00254390: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ -002543a0: 6465 640a 2020 2d20 7061 636b 6167 655f  ded.  - package_
│ │ │ -002543b0: 7273 796e 635f 7265 6d6f 7665 640a 3c2f  rsync_removed.
Re │ │ │ -00254470: 6d65 6469 6174 696f 6e20 5368 656c 6c20 mediation Shell │ │ │ -00254480: 7363 7269 7074 20e2 87b2 3c2f 613e 3c62 script ...
Complexity:low
Disrup │ │ │ -00254240: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -00254250: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -00254290: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ -002542a0: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Comp │ │ │ -00254510: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -00254520: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -00254540: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ -00254560: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -00254570: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ -002545b0: 3c70 7265 3e3c 636f 6465 3e0a 2320 4341
.# CA
│ │ │ -002545c0: 5554 494f 4e3a 2054 6869 7320 7265 6d65  UTION: This reme
│ │ │ -002545d0: 6469 6174 696f 6e20 7363 7269 7074 2077  diation script w
│ │ │ -002545e0: 696c 6c20 7265 6d6f 7665 2072 7379 6e63  ill remove rsync
│ │ │ -002545f0: 0a23 2066 726f 6d20 7468 6520 7379 7374  .# from the syst
│ │ │ -00254600: 656d 2c20 616e 6420 6d61 7920 7265 6d6f  em, and may remo
│ │ │ -00254610: 7665 2061 6e79 2070 6163 6b61 6765 730a  ve any packages.
│ │ │ -00254620: 2320 7468 6174 2064 6570 656e 6420 6f6e  # that depend on
│ │ │ -00254630: 2072 7379 6e63 2e20 4578 6563 7574 6520   rsync. Execute 
│ │ │ -00254640: 7468 6973 0a23 2072 656d 6564 6961 7469  this.# remediati
│ │ │ -00254650: 6f6e 2041 4654 4552 2074 6573 7469 6e67  on AFTER testing
│ │ │ -00254660: 206f 6e20 6120 6e6f 6e2d 7072 6f64 7563   on a non-produc
│ │ │ -00254670: 7469 6f6e 0a23 2073 7973 7465 6d21 0a0a  tion.# system!..
│ │ │ -00254680: 0a69 6620 7270 6d20 2d71 202d 2d71 7569  .if rpm -q --qui
│ │ │ -00254690: 6574 2022 7273 796e 6322 203b 2074 6865  et "rsync" ; the
│ │ │ -002546a0: 6e0a 646e 6620 7265 6d6f 7665 202d 7920  n.dnf remove -y 
│ │ │ -002546b0: 2d2d 6e6f 6175 746f 7265 6d6f 7665 2022  --noautoremove "
│ │ │ -002546c0: 7273 796e 6322 0a66 690a 3c2f 636f 6465  rsync".fi.
Complexity │ │ │ +00253da0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ +00253dc0: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ +00253dd0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +00253de0: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ +00253df0: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ +00253e10: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:disable
<
│ │ │ +00253e40: 636f 6465 3e2d 206e 616d 653a 2027 556e  code>- name: 'Un
│ │ │ +00253e50: 696e 7374 616c 6c20 7273 796e 6320 5061  install rsync Pa
│ │ │ +00253e60: 636b 6167 653a 2045 6e73 7572 6520 7273  ckage: Ensure rs
│ │ │ +00253e70: 796e 6320 6973 2072 656d 6f76 6564 270a  ync is removed'.
│ │ │ +00253e80: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ +00253e90: 6e2e 7061 636b 6167 653a 0a20 2020 206e  n.package:.    n
│ │ │ +00253ea0: 616d 653a 2072 7379 6e63 0a20 2020 2073  ame: rsync.    s
│ │ │ +00253eb0: 7461 7465 3a20 6162 7365 6e74 0a20 2074  tate: absent.  t
│ │ │ +00253ec0: 6167 733a 0a20 202d 2064 6973 6162 6c65  ags:.  - disable
│ │ │ +00253ed0: 5f73 7472 6174 6567 790a 2020 2d20 6c6f  _strategy.  - lo
│ │ │ +00253ee0: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ +00253ef0: 206c 6f77 5f64 6973 7275 7074 696f 6e0a   low_disruption.
│ │ │ +00253f00: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ +00253f10: 6974 790a 2020 2d20 6e6f 5f72 6562 6f6f  ity.  - no_reboo
│ │ │ +00253f20: 745f 6e65 6564 6564 0a20 202d 2070 6163  t_needed.  - pac
│ │ │ +00253f30: 6b61 6765 5f72 7379 6e63 5f72 656d 6f76  kage_rsync_remov
│ │ │ +00253f40: 6564 0a3c 2f63 6f64 653e 3c2f 7072 653e  ed.
│ │ │ +00253f50: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation P │ │ │ +00254000: 7570 7065 7420 736e 6970 7065 7420 e287 uppet snippet .. │ │ │ +00254010: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ +00254090: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ +002540b0: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ +00254100: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>< │ │ │ +00254130: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
.include remov
│ │ │ +00254150: 655f 7273 796e 630a 0a63 6c61 7373 2072  e_rsync..class r
│ │ │ +00254160: 656d 6f76 655f 7273 796e 6320 7b0a 2020  emove_rsync {.  
│ │ │ +00254170: 7061 636b 6167 6520 7b20 2772 7379 6e63  package { 'rsync
│ │ │ +00254180: 273a 0a20 2020 2065 6e73 7572 6520 3d26  ':.    ensure =&
│ │ │ +00254190: 6774 3b20 2770 7572 6765 6427 2c0a 2020  gt; 'purged',.  
│ │ │ +002541a0: 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70 7265  }.}.
Remediation │ │ │ +00254260: 5368 656c 6c20 7363 7269 7074 20e2 87b2 Shell script ... │ │ │ +00254270: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
low
Disr │ │ │ +002540c0: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +002540d0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ +00254110: 7465 6779 3a3c 2f74 683e 3c74 643e 6469 tegy:di │ │ │ +00254120: 7361 626c 653c 2f74 643e 3c2f 7472 3e3c sable
Complexity: │ │ │ +00254340: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +00254350: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
.# CAUTION: Thi
│ │ │ +002543b0: 7320 7265 6d65 6469 6174 696f 6e20 7363  s remediation sc
│ │ │ +002543c0: 7269 7074 2077 696c 6c20 7265 6d6f 7665  ript will remove
│ │ │ +002543d0: 2072 7379 6e63 0a23 2066 726f 6d20 7468   rsync.# from th
│ │ │ +002543e0: 6520 7379 7374 656d 2c20 616e 6420 6d61  e system, and ma
│ │ │ +002543f0: 7920 7265 6d6f 7665 2061 6e79 2070 6163  y remove any pac
│ │ │ +00254400: 6b61 6765 730a 2320 7468 6174 2064 6570  kages.# that dep
│ │ │ +00254410: 656e 6420 6f6e 2072 7379 6e63 2e20 4578  end on rsync. Ex
│ │ │ +00254420: 6563 7574 6520 7468 6973 0a23 2072 656d  ecute this.# rem
│ │ │ +00254430: 6564 6961 7469 6f6e 2041 4654 4552 2074  ediation AFTER t
│ │ │ +00254440: 6573 7469 6e67 206f 6e20 6120 6e6f 6e2d  esting on a non-
│ │ │ +00254450: 7072 6f64 7563 7469 6f6e 0a23 2073 7973  production.# sys
│ │ │ +00254460: 7465 6d21 0a0a 0a69 6620 7270 6d20 2d71  tem!...if rpm -q
│ │ │ +00254470: 202d 2d71 7569 6574 2022 7273 796e 6322   --quiet "rsync"
│ │ │ +00254480: 203b 2074 6865 6e0a 646e 6620 7265 6d6f   ; then.dnf remo
│ │ │ +00254490: 7665 202d 7920 2d2d 6e6f 6175 746f 7265  ve -y --noautore
│ │ │ +002544a0: 6d6f 7665 2022 7273 796e 6322 0a66 690a  move "rsync".fi.
│ │ │ +002544b0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ +00254560: 5265 6d65 6469 6174 696f 6e20 416e 6163 Remediation Anac │ │ │ +00254570: 6f6e 6461 2073 6e69 7070 6574 20e2 87b2 onda snippet ... │ │ │ +00254580: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
low
Disru │ │ │ +00254320: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +00254330: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +00254370: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ +00254380: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
Complexity: │ │ │ +00254650: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +00254660: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
..package --rem
│ │ │ +002546c0: 6f76 653d 7273 796e 630a 3c2f 636f 6465  ove=rsync.
low
Disru │ │ │ +00254630: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +00254640: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +00254680: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ +00254690: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
R │ │ │ -00255930: 656d 6564 6961 7469 6f6e 2041 6e61 636f emediation Anaco │ │ │ -00255940: 6e64 6120 736e 6970 7065 7420 e287 b23c nda snippet ...< │ │ │ -00255950: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
< │ │ │ -00255a20: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -00255a30: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

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

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

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

< │ │ │ 00256360: 2f74 723e 3c2f 7462 6f64 793e 3c2f 7461 /tr>Remediation │ │ │ -002573d0: 416e 6163 6f6e 6461 2073 6e69 7070 6574 Anaconda snippet │ │ │ -002573e0: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Complexity │ │ │ -00257470: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ -00257490: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ -002574a0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -002574b0: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ -002574c0: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ -002574e0: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:disable
<
│ │ │ -00257510: 636f 6465 3e0a 0a70 6163 6b61 6765 202d  code>..package -
│ │ │ -00257520: 2d72 656d 6f76 653d 7371 7569 640a 3c2f  -remove=squid.
Re │ │ │ -002575e0: 6d65 6469 6174 696f 6e20 5075 7070 6574 mediation Puppet │ │ │ -002575f0: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -00257600: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ -002576a0: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ -002576f0: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
.in
│ │ │ -00257730: 636c 7564 6520 7265 6d6f 7665 5f73 7175  clude remove_squ
│ │ │ -00257740: 6964 0a0a 636c 6173 7320 7265 6d6f 7665  id..class remove
│ │ │ -00257750: 5f73 7175 6964 207b 0a20 2070 6163 6b61  _squid {.  packa
│ │ │ -00257760: 6765 207b 2027 7371 7569 6427 3a0a 2020  ge { 'squid':.  
│ │ │ -00257770: 2020 656e 7375 7265 203d 2667 743b 2027    ensure => '
│ │ │ -00257780: 7075 7267 6564 272c 0a20 207d 0a7d 0a3c  purged',.  }.}.<
│ │ │ -00257790: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ -00257840: 656d 6564 6961 7469 6f6e 2041 6e73 6962 emediation Ansib │ │ │ -00257850: 6c65 2073 6e69 7070 6574 20e2 87b2 3c2f le snippet ...
Co │ │ │ -00257680: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -002576b0: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ -002576d0: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ -002576e0: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ -00257700: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ -00257710: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
│ │ │ -002578f0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
-
│ │ │ -00257990: 206e 616d 653a 2027 556e 696e 7374 616c   name: 'Uninstal
│ │ │ -002579a0: 6c20 7371 7569 6420 5061 636b 6167 653a  l squid Package:
│ │ │ -002579b0: 2045 6e73 7572 6520 7371 7569 6420 6973   Ensure squid is
│ │ │ -002579c0: 2072 656d 6f76 6564 270a 2020 616e 7369   removed'.  ansi
│ │ │ -002579d0: 626c 652e 6275 696c 7469 6e2e 7061 636b  ble.builtin.pack
│ │ │ -002579e0: 6167 653a 0a20 2020 206e 616d 653a 2073  age:.    name: s
│ │ │ -002579f0: 7175 6964 0a20 2020 2073 7461 7465 3a20  quid.    state: 
│ │ │ -00257a00: 6162 7365 6e74 0a20 2074 6167 733a 0a20  absent.  tags:. 
│ │ │ -00257a10: 202d 2064 6973 6162 6c65 5f73 7472 6174   - disable_strat
│ │ │ -00257a20: 6567 790a 2020 2d20 6c6f 775f 636f 6d70  egy.  - low_comp
│ │ │ -00257a30: 6c65 7869 7479 0a20 202d 206c 6f77 5f64  lexity.  - low_d
│ │ │ -00257a40: 6973 7275 7074 696f 6e0a 2020 2d20 6e6f  isruption.  - no
│ │ │ -00257a50: 5f72 6562 6f6f 745f 6e65 6564 6564 0a20  _reboot_needed. 
│ │ │ -00257a60: 202d 2070 6163 6b61 6765 5f73 7175 6964   - package_squid
│ │ │ -00257a70: 5f72 656d 6f76 6564 0a20 202d 2075 6e6b  _removed.  - unk
│ │ │ -00257a80: 6e6f 776e 5f73 6576 6572 6974 790a 3c2f  nown_severity.
Re │ │ │ -00257b40: 6d65 6469 6174 696f 6e20 5368 656c 6c20 mediation Shell │ │ │ -00257b50: 7363 7269 7074 20e2 87b2 3c2f 613e 3c62 script ...
│ │ │ -002578e0: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -00257910: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -00257920: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -00257960: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ -00257970: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Comp │ │ │ -00257be0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -00257bf0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -00257c10: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ -00257c30: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -00257c40: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ -00257c80: 3c70 7265 3e3c 636f 6465 3e0a 2320 4341
.# CA
│ │ │ -00257c90: 5554 494f 4e3a 2054 6869 7320 7265 6d65  UTION: This reme
│ │ │ -00257ca0: 6469 6174 696f 6e20 7363 7269 7074 2077  diation script w
│ │ │ -00257cb0: 696c 6c20 7265 6d6f 7665 2073 7175 6964  ill remove squid
│ │ │ -00257cc0: 0a23 2066 726f 6d20 7468 6520 7379 7374  .# from the syst
│ │ │ -00257cd0: 656d 2c20 616e 6420 6d61 7920 7265 6d6f  em, and may remo
│ │ │ -00257ce0: 7665 2061 6e79 2070 6163 6b61 6765 730a  ve any packages.
│ │ │ -00257cf0: 2320 7468 6174 2064 6570 656e 6420 6f6e  # that depend on
│ │ │ -00257d00: 2073 7175 6964 2e20 4578 6563 7574 6520   squid. Execute 
│ │ │ -00257d10: 7468 6973 0a23 2072 656d 6564 6961 7469  this.# remediati
│ │ │ -00257d20: 6f6e 2041 4654 4552 2074 6573 7469 6e67  on AFTER testing
│ │ │ -00257d30: 206f 6e20 6120 6e6f 6e2d 7072 6f64 7563   on a non-produc
│ │ │ -00257d40: 7469 6f6e 0a23 2073 7973 7465 6d21 0a0a  tion.# system!..
│ │ │ -00257d50: 0a69 6620 7270 6d20 2d71 202d 2d71 7569  .if rpm -q --qui
│ │ │ -00257d60: 6574 2022 7371 7569 6422 203b 2074 6865  et "squid" ; the
│ │ │ -00257d70: 6e0a 646e 6620 7265 6d6f 7665 202d 7920  n.dnf remove -y 
│ │ │ -00257d80: 2d2d 6e6f 6175 746f 7265 6d6f 7665 2022  --noautoremove "
│ │ │ -00257d90: 7371 7569 6422 0a66 690a 3c2f 636f 6465  squid".fi.
Complexity: │ │ │ +00257470: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ +00257490: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:low< │ │ │ +002574b0: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:falseSt │ │ │ +002574e0: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ +002574f0: 6469 7361 626c 653c 2f74 643e 3c2f 7472 disable
- name: 'Uni
│ │ │ +00257520: 6e73 7461 6c6c 2073 7175 6964 2050 6163  nstall squid Pac
│ │ │ +00257530: 6b61 6765 3a20 456e 7375 7265 2073 7175  kage: Ensure squ
│ │ │ +00257540: 6964 2069 7320 7265 6d6f 7665 6427 0a20  id is removed'. 
│ │ │ +00257550: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ +00257560: 2e70 6163 6b61 6765 3a0a 2020 2020 6e61  .package:.    na
│ │ │ +00257570: 6d65 3a20 7371 7569 640a 2020 2020 7374  me: squid.    st
│ │ │ +00257580: 6174 653a 2061 6273 656e 740a 2020 7461  ate: absent.  ta
│ │ │ +00257590: 6773 3a0a 2020 2d20 6469 7361 626c 655f  gs:.  - disable_
│ │ │ +002575a0: 7374 7261 7465 6779 0a20 202d 206c 6f77  strategy.  - low
│ │ │ +002575b0: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +002575c0: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ +002575d0: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ +002575e0: 6465 640a 2020 2d20 7061 636b 6167 655f  ded.  - package_
│ │ │ +002575f0: 7371 7569 645f 7265 6d6f 7665 640a 2020  squid_removed.  
│ │ │ +00257600: 2d20 756e 6b6e 6f77 6e5f 7365 7665 7269  - unknown_severi
│ │ │ +00257610: 7479 0a3c 2f63 6f64 653e 3c2f 7072 653e  ty.
│ │ │ +00257620: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation P │ │ │ +002576d0: 7570 7065 7420 736e 6970 7065 7420 e287 uppet snippet .. │ │ │ +002576e0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ +00257760: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ +00257780: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ +002577d0: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>< │ │ │ +00257800: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
.include remov
│ │ │ +00257820: 655f 7371 7569 640a 0a63 6c61 7373 2072  e_squid..class r
│ │ │ +00257830: 656d 6f76 655f 7371 7569 6420 7b0a 2020  emove_squid {.  
│ │ │ +00257840: 7061 636b 6167 6520 7b20 2773 7175 6964  package { 'squid
│ │ │ +00257850: 273a 0a20 2020 2065 6e73 7572 6520 3d26  ':.    ensure =&
│ │ │ +00257860: 6774 3b20 2770 7572 6765 6427 2c0a 2020  gt; 'purged',.  
│ │ │ +00257870: 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70 7265  }.}.
Remediation │ │ │ +00257930: 5368 656c 6c20 7363 7269 7074 20e2 87b2 Shell script ... │ │ │ +00257940: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
low
Disr │ │ │ +00257790: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +002577a0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ +002577e0: 7465 6779 3a3c 2f74 683e 3c74 643e 6469 tegy:di │ │ │ +002577f0: 7361 626c 653c 2f74 643e 3c2f 7472 3e3c sable
Complexity: │ │ │ +00257a10: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +00257a20: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
.# CAUTION: Thi
│ │ │ +00257a80: 7320 7265 6d65 6469 6174 696f 6e20 7363  s remediation sc
│ │ │ +00257a90: 7269 7074 2077 696c 6c20 7265 6d6f 7665  ript will remove
│ │ │ +00257aa0: 2073 7175 6964 0a23 2066 726f 6d20 7468   squid.# from th
│ │ │ +00257ab0: 6520 7379 7374 656d 2c20 616e 6420 6d61  e system, and ma
│ │ │ +00257ac0: 7920 7265 6d6f 7665 2061 6e79 2070 6163  y remove any pac
│ │ │ +00257ad0: 6b61 6765 730a 2320 7468 6174 2064 6570  kages.# that dep
│ │ │ +00257ae0: 656e 6420 6f6e 2073 7175 6964 2e20 4578  end on squid. Ex
│ │ │ +00257af0: 6563 7574 6520 7468 6973 0a23 2072 656d  ecute this.# rem
│ │ │ +00257b00: 6564 6961 7469 6f6e 2041 4654 4552 2074  ediation AFTER t
│ │ │ +00257b10: 6573 7469 6e67 206f 6e20 6120 6e6f 6e2d  esting on a non-
│ │ │ +00257b20: 7072 6f64 7563 7469 6f6e 0a23 2073 7973  production.# sys
│ │ │ +00257b30: 7465 6d21 0a0a 0a69 6620 7270 6d20 2d71  tem!...if rpm -q
│ │ │ +00257b40: 202d 2d71 7569 6574 2022 7371 7569 6422   --quiet "squid"
│ │ │ +00257b50: 203b 2074 6865 6e0a 646e 6620 7265 6d6f   ; then.dnf remo
│ │ │ +00257b60: 7665 202d 7920 2d2d 6e6f 6175 746f 7265  ve -y --noautore
│ │ │ +00257b70: 6d6f 7665 2022 7371 7569 6422 0a66 690a  move "squid".fi.
│ │ │ +00257b80: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ +00257c30: 5265 6d65 6469 6174 696f 6e20 416e 6163 Remediation Anac │ │ │ +00257c40: 6f6e 6461 2073 6e69 7070 6574 20e2 87b2 onda snippet ... │ │ │ +00257c50: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
low
Disru │ │ │ +002579f0: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +00257a00: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +00257a40: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ +00257a50: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
Complexity: │ │ │ +00257d20: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +00257d30: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
..package --rem
│ │ │ +00257d90: 6f76 653d 7371 7569 640a 3c2f 636f 6465  ove=squid.
low
Disru │ │ │ +00257d00: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +00257d10: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +00257d50: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ +00257d60: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
R │ │ │ -00258ed0: 656d 6564 6961 7469 6f6e 2041 6e61 636f emediation Anaco │ │ │ -00258ee0: 6e64 6120 736e 6970 7065 7420 e287 b23c nda snippet ...< │ │ │ -00258ef0: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
< │ │ │ -00258fc0: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -00258fd0: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

│ │ │ -00259020: 0a0a 7061 636b 6167 6520 2d2d 7265 6d6f  ..package --remo
│ │ │ -00259030: 7665 3d73 616d 6261 0a3c 2f63 6f64 653e  ve=samba.
│ │ │ -00259040: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ -002590f0: 7469 6f6e 2050 7570 7065 7420 736e 6970 tion Puppet snip │ │ │ -00259100: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ -00259110: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -00259120: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -00259130: 7365 2220 6964 3d22 6964 3830 3022 3e3c se" id="id800">< │ │ │ -00259140: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ -00259150: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ -00259160: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ -00259170: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ -00259180: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Disruption:Strategy: │ │ │ -00259210: 3c74 643e 6469 7361 626c 653c 2f74 643e │ │ │ -00259220: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
Complexity:low
Disrup │ │ │ -00258fa0: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -00258fb0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -00258ff0: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ -00259000: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Complex │ │ │ -00259190: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ -002591a0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
low
Reboo │ │ │ -002591e0: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -002591f0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
disable
.include │ │ │ -00259240: 2072 656d 6f76 655f 7361 6d62 610a 0a63 remove_samba..c │ │ │ -00259250: 6c61 7373 2072 656d 6f76 655f 7361 6d62 lass remove_samb │ │ │ -00259260: 6120 7b0a 2020 7061 636b 6167 6520 7b20 a {. package { │ │ │ -00259270: 2773 616d 6261 273a 0a20 2020 2065 6e73 'samba':. ens │ │ │ -00259280: 7572 6520 3d26 6774 3b20 2770 7572 6765 ure => 'purge │ │ │ -00259290: 6427 2c0a 2020 7d0a 7d0a 3c2f 636f 6465 d',. }.}.
Remedi │ │ │ -00259350: 6174 696f 6e20 416e 7369 626c 6520 736e ation Ansible sn │ │ │ -00259360: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ -00259410: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ -00259430: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ -00259460: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ -002593f0: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ -00259400: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ -00259420: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ -00259440: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -00259450: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:disable
< │ │ │ -00259490: 7072 653e 3c63 6f64 653e 2d20 6e61 6d65 pre>- name │ │ │ -002594a0: 3a20 2755 6e69 6e73 7461 6c6c 2053 616d : 'Uninstall Sam │ │ │ -002594b0: 6261 2050 6163 6b61 6765 3a20 456e 7375 ba Package: Ensu │ │ │ -002594c0: 7265 2073 616d 6261 2069 7320 7265 6d6f re samba is remo │ │ │ -002594d0: 7665 6427 0a20 2061 6e73 6962 6c65 2e62 ved'. ansible.b │ │ │ -002594e0: 7569 6c74 696e 2e70 6163 6b61 6765 3a0a uiltin.package:. │ │ │ -002594f0: 2020 2020 6e61 6d65 3a20 7361 6d62 610a name: samba. │ │ │ -00259500: 2020 2020 7374 6174 653a 2061 6273 656e state: absen │ │ │ -00259510: 740a 2020 7461 6773 3a0a 2020 2d20 6469 t. tags:. - di │ │ │ -00259520: 7361 626c 655f 7374 7261 7465 6779 0a20 sable_strategy. │ │ │ -00259530: 202d 206c 6f77 5f63 6f6d 706c 6578 6974 - low_complexit │ │ │ -00259540: 790a 2020 2d20 6c6f 775f 6469 7372 7570 y. - low_disrup │ │ │ -00259550: 7469 6f6e 0a20 202d 206e 6f5f 7265 626f tion. - no_rebo │ │ │ -00259560: 6f74 5f6e 6565 6465 640a 2020 2d20 7061 ot_needed. - pa │ │ │ -00259570: 636b 6167 655f 7361 6d62 615f 7265 6d6f ckage_samba_remo │ │ │ -00259580: 7665 640a 2020 2d20 756e 6b6e 6f77 6e5f ved. - unknown_ │ │ │ -00259590: 7365 7665 7269 7479 0a3c 2f63 6f64 653e severity. │ │ │ -002595a0: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063
Remedia │ │ │ -00259650: 7469 6f6e 2053 6865 6c6c 2073 6372 6970 tion Shell scrip │ │ │ -00259660: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ -002596e0: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ -002596f0: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ -00259710: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ -00259720: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ -00259740: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ -00259760: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:disable
│ │ │ -00259790: 3c63 6f64 653e 0a23 2043 4155 5449 4f4e  .# CAUTION
│ │ │ -002597a0: 3a20 5468 6973 2072 656d 6564 6961 7469  : This remediati
│ │ │ -002597b0: 6f6e 2073 6372 6970 7420 7769 6c6c 2072  on script will r
│ │ │ -002597c0: 656d 6f76 6520 7361 6d62 610a 2320 6672  emove samba.# fr
│ │ │ -002597d0: 6f6d 2074 6865 2073 7973 7465 6d2c 2061  om the system, a
│ │ │ -002597e0: 6e64 206d 6179 2072 656d 6f76 6520 616e  nd may remove an
│ │ │ -002597f0: 7920 7061 636b 6167 6573 0a23 2074 6861  y packages.# tha
│ │ │ -00259800: 7420 6465 7065 6e64 206f 6e20 7361 6d62  t depend on samb
│ │ │ -00259810: 612e 2045 7865 6375 7465 2074 6869 730a  a. Execute this.
│ │ │ -00259820: 2320 7265 6d65 6469 6174 696f 6e20 4146  # remediation AF
│ │ │ -00259830: 5445 5220 7465 7374 696e 6720 6f6e 2061  TER testing on a
│ │ │ -00259840: 206e 6f6e 2d70 726f 6475 6374 696f 6e0a   non-production.
│ │ │ -00259850: 2320 7379 7374 656d 210a 0a0a 6966 2072  # system!...if r
│ │ │ -00259860: 706d 202d 7120 2d2d 7175 6965 7420 2273  pm -q --quiet "s
│ │ │ -00259870: 616d 6261 2220 3b20 7468 656e 0a64 6e66  amba" ; then.dnf
│ │ │ -00259880: 2072 656d 6f76 6520 2d79 202d 2d6e 6f61   remove -y --noa
│ │ │ -00259890: 7574 6f72 656d 6f76 6520 2273 616d 6261  utoremove "samba
│ │ │ -002598a0: 220a 6669 0a3c 2f63 6f64 653e 3c2f 7072  ".fi.
│ │ │ +00258f80: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
-
│ │ │ +00259020: 206e 616d 653a 2027 556e 696e 7374 616c   name: 'Uninstal
│ │ │ +00259030: 6c20 5361 6d62 6120 5061 636b 6167 653a  l Samba Package:
│ │ │ +00259040: 2045 6e73 7572 6520 7361 6d62 6120 6973   Ensure samba is
│ │ │ +00259050: 2072 656d 6f76 6564 270a 2020 616e 7369   removed'.  ansi
│ │ │ +00259060: 626c 652e 6275 696c 7469 6e2e 7061 636b  ble.builtin.pack
│ │ │ +00259070: 6167 653a 0a20 2020 206e 616d 653a 2073  age:.    name: s
│ │ │ +00259080: 616d 6261 0a20 2020 2073 7461 7465 3a20  amba.    state: 
│ │ │ +00259090: 6162 7365 6e74 0a20 2074 6167 733a 0a20  absent.  tags:. 
│ │ │ +002590a0: 202d 2064 6973 6162 6c65 5f73 7472 6174   - disable_strat
│ │ │ +002590b0: 6567 790a 2020 2d20 6c6f 775f 636f 6d70  egy.  - low_comp
│ │ │ +002590c0: 6c65 7869 7479 0a20 202d 206c 6f77 5f64  lexity.  - low_d
│ │ │ +002590d0: 6973 7275 7074 696f 6e0a 2020 2d20 6e6f  isruption.  - no
│ │ │ +002590e0: 5f72 6562 6f6f 745f 6e65 6564 6564 0a20  _reboot_needed. 
│ │ │ +002590f0: 202d 2070 6163 6b61 6765 5f73 616d 6261   - package_samba
│ │ │ +00259100: 5f72 656d 6f76 6564 0a20 202d 2075 6e6b  _removed.  - unk
│ │ │ +00259110: 6e6f 776e 5f73 6576 6572 6974 790a 3c2f  nown_severity.
Re │ │ │ +002591d0: 6d65 6469 6174 696f 6e20 5075 7070 6574 mediation Puppet │ │ │ +002591e0: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ +002591f0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
│ │ │ +00258f70: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +00258fa0: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +00258fb0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +00258ff0: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ +00259000: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
low< │ │ │ +00259290: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ +002592e0: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
.in
│ │ │ +00259320: 636c 7564 6520 7265 6d6f 7665 5f73 616d  clude remove_sam
│ │ │ +00259330: 6261 0a0a 636c 6173 7320 7265 6d6f 7665  ba..class remove
│ │ │ +00259340: 5f73 616d 6261 207b 0a20 2070 6163 6b61  _samba {.  packa
│ │ │ +00259350: 6765 207b 2027 7361 6d62 6127 3a0a 2020  ge { 'samba':.  
│ │ │ +00259360: 2020 656e 7375 7265 203d 2667 743b 2027    ensure => '
│ │ │ +00259370: 7075 7267 6564 272c 0a20 207d 0a7d 0a3c  purged',.  }.}.<
│ │ │ +00259380: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ +00259430: 656d 6564 6961 7469 6f6e 2053 6865 6c6c emediation Shell │ │ │ +00259440: 2073 6372 6970 7420 e287 b23c 2f61 3e3c script ...< │ │ │ +00259450: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Co │ │ │ +00259270: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +002592a0: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +002592c0: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +002592d0: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +002592f0: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ +00259300: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Com │ │ │ +002594d0: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ +00259500: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ +00259520: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +00259530: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ +00259550: 2f74 683e 3c74 643e 6469 7361 626c 653c /th>disable< │ │ │ +00259560: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
.# C
│ │ │ +00259580: 4155 5449 4f4e 3a20 5468 6973 2072 656d  AUTION: This rem
│ │ │ +00259590: 6564 6961 7469 6f6e 2073 6372 6970 7420  ediation script 
│ │ │ +002595a0: 7769 6c6c 2072 656d 6f76 6520 7361 6d62  will remove samb
│ │ │ +002595b0: 610a 2320 6672 6f6d 2074 6865 2073 7973  a.# from the sys
│ │ │ +002595c0: 7465 6d2c 2061 6e64 206d 6179 2072 656d  tem, and may rem
│ │ │ +002595d0: 6f76 6520 616e 7920 7061 636b 6167 6573  ove any packages
│ │ │ +002595e0: 0a23 2074 6861 7420 6465 7065 6e64 206f  .# that depend o
│ │ │ +002595f0: 6e20 7361 6d62 612e 2045 7865 6375 7465  n samba. Execute
│ │ │ +00259600: 2074 6869 730a 2320 7265 6d65 6469 6174   this.# remediat
│ │ │ +00259610: 696f 6e20 4146 5445 5220 7465 7374 696e  ion AFTER testin
│ │ │ +00259620: 6720 6f6e 2061 206e 6f6e 2d70 726f 6475  g on a non-produ
│ │ │ +00259630: 6374 696f 6e0a 2320 7379 7374 656d 210a  ction.# system!.
│ │ │ +00259640: 0a0a 6966 2072 706d 202d 7120 2d2d 7175  ..if rpm -q --qu
│ │ │ +00259650: 6965 7420 2273 616d 6261 2220 3b20 7468  iet "samba" ; th
│ │ │ +00259660: 656e 0a64 6e66 2072 656d 6f76 6520 2d79  en.dnf remove -y
│ │ │ +00259670: 202d 2d6e 6f61 7574 6f72 656d 6f76 6520   --noautoremove 
│ │ │ +00259680: 2273 616d 6261 220a 6669 0a3c 2f63 6f64  "samba".fi.
Remed │ │ │ +00259740: 6961 7469 6f6e 2041 6e61 636f 6e64 6120 iation Anaconda │ │ │ +00259750: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ +00259760: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Com │ │ │ +002597e0: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ +00259810: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ +00259830: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +00259840: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ +00259860: 2f74 683e 3c74 643e 6469 7361 626c 653c /th>disable< │ │ │ +00259870: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
..pa
│ │ │ +00259890: 636b 6167 6520 2d2d 7265 6d6f 7665 3d73  ckage --remove=s
│ │ │ +002598a0: 616d 6261 0a3c 2f63 6f64 653e 3c2f 7072  amba.
│ │ │ 002598d0: 3c2f 7461 626c 653e 3c2f 7464 3e3c 2f74 Remed │ │ │ -0025a9c0: 6961 7469 6f6e 2041 6e61 636f 6e64 6120 iation Anaconda │ │ │ -0025a9d0: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ -0025a9e0: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Com │ │ │ -0025aa60: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ -0025aa90: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ -0025aab0: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -0025aac0: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -0025aae0: 2f74 683e 3c74 643e 6469 7361 626c 653c /th>disable< │ │ │ -0025aaf0: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
..pa
│ │ │ -0025ab10: 636b 6167 6520 2d2d 7265 6d6f 7665 3d6e  ckage --remove=n
│ │ │ -0025ab20: 6574 2d73 6e6d 700a 3c2f 636f 6465 3e3c  et-snmp.<
│ │ │ -0025ab30: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>
Remediat │ │ │ -0025abe0: 696f 6e20 5075 7070 6574 2073 6e69 7070 ion Puppet snipp │ │ │ -0025abf0: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ -0025ac70: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ -0025ac80: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -0025ac90: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ -0025acd0: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -0025ace0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ -0025ad00: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ -0025ad10: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
.include 
│ │ │ -0025ad30: 7265 6d6f 7665 5f6e 6574 2d73 6e6d 700a  remove_net-snmp.
│ │ │ -0025ad40: 0a63 6c61 7373 2072 656d 6f76 655f 6e65  .class remove_ne
│ │ │ -0025ad50: 742d 736e 6d70 207b 0a20 2070 6163 6b61  t-snmp {.  packa
│ │ │ -0025ad60: 6765 207b 2027 6e65 742d 736e 6d70 273a  ge { 'net-snmp':
│ │ │ -0025ad70: 0a20 2020 2065 6e73 7572 6520 3d26 6774  .    ensure =>
│ │ │ -0025ad80: 3b20 2770 7572 6765 6427 2c0a 2020 7d0a  ; 'purged',.  }.
│ │ │ -0025ad90: 7d0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  }.
< │ │ │ -0025ada0: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation An │ │ │ -0025ae50: 7369 626c 6520 736e 6970 7065 7420 e287 sible snippet .. │ │ │ -0025ae60: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ -0025aee0: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -0025af00: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -0025af50: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>< │ │ │ -0025af80: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
- name: 'Unins
│ │ │ -0025afa0: 7461 6c6c 206e 6574 2d73 6e6d 7020 5061  tall net-snmp Pa
│ │ │ -0025afb0: 636b 6167 653a 2045 6e73 7572 6520 6e65  ckage: Ensure ne
│ │ │ -0025afc0: 742d 736e 6d70 2069 7320 7265 6d6f 7665  t-snmp is remove
│ │ │ -0025afd0: 6427 0a20 2061 6e73 6962 6c65 2e62 7569  d'.  ansible.bui
│ │ │ -0025afe0: 6c74 696e 2e70 6163 6b61 6765 3a0a 2020  ltin.package:.  
│ │ │ -0025aff0: 2020 6e61 6d65 3a20 6e65 742d 736e 6d70    name: net-snmp
│ │ │ -0025b000: 0a20 2020 2073 7461 7465 3a20 6162 7365  .    state: abse
│ │ │ -0025b010: 6e74 0a20 2074 6167 733a 0a20 202d 2050  nt.  tags:.  - P
│ │ │ -0025b020: 4349 2d44 5353 7634 2d32 2e32 0a20 202d  CI-DSSv4-2.2.  -
│ │ │ -0025b030: 2050 4349 2d44 5353 7634 2d32 2e32 2e34   PCI-DSSv4-2.2.4
│ │ │ -0025b040: 0a20 202d 2064 6973 6162 6c65 5f73 7472  .  - disable_str
│ │ │ -0025b050: 6174 6567 790a 2020 2d20 6c6f 775f 636f  ategy.  - low_co
│ │ │ -0025b060: 6d70 6c65 7869 7479 0a20 202d 206c 6f77  mplexity.  - low
│ │ │ -0025b070: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ -0025b080: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ -0025b090: 0a20 202d 2070 6163 6b61 6765 5f6e 6574  .  - package_net
│ │ │ -0025b0a0: 2d73 6e6d 705f 7265 6d6f 7665 640a 2020  -snmp_removed.  
│ │ │ -0025b0b0: 2d20 756e 6b6e 6f77 6e5f 7365 7665 7269  - unknown_severi
│ │ │ -0025b0c0: 7479 0a3c 2f63 6f64 653e 3c2f 7072 653e  ty.
│ │ │ -0025b0d0: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22 Remediation S │ │ │ -0025b180: 6865 6c6c 2073 6372 6970 7420 e287 b23c hell script ...< │ │ │ -0025b190: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
low
Disr │ │ │ -0025af10: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -0025af20: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ -0025af60: 7465 6779 3a3c 2f74 683e 3c74 643e 6469 tegy:di │ │ │ -0025af70: 7361 626c 653c 2f74 643e 3c2f 7472 3e3c sable
< │ │ │ -0025b260: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -0025b270: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

│ │ │ -0025b2c0: 0a23 2043 4155 5449 4f4e 3a20 5468 6973  .# CAUTION: This
│ │ │ -0025b2d0: 2072 656d 6564 6961 7469 6f6e 2073 6372   remediation scr
│ │ │ -0025b2e0: 6970 7420 7769 6c6c 2072 656d 6f76 6520  ipt will remove 
│ │ │ -0025b2f0: 6e65 742d 736e 6d70 0a23 2066 726f 6d20  net-snmp.# from 
│ │ │ -0025b300: 7468 6520 7379 7374 656d 2c20 616e 6420  the system, and 
│ │ │ -0025b310: 6d61 7920 7265 6d6f 7665 2061 6e79 2070  may remove any p
│ │ │ -0025b320: 6163 6b61 6765 730a 2320 7468 6174 2064  ackages.# that d
│ │ │ -0025b330: 6570 656e 6420 6f6e 206e 6574 2d73 6e6d  epend on net-snm
│ │ │ -0025b340: 702e 2045 7865 6375 7465 2074 6869 730a  p. Execute this.
│ │ │ -0025b350: 2320 7265 6d65 6469 6174 696f 6e20 4146  # remediation AF
│ │ │ -0025b360: 5445 5220 7465 7374 696e 6720 6f6e 2061  TER testing on a
│ │ │ -0025b370: 206e 6f6e 2d70 726f 6475 6374 696f 6e0a   non-production.
│ │ │ -0025b380: 2320 7379 7374 656d 210a 0a0a 6966 2072  # system!...if r
│ │ │ -0025b390: 706d 202d 7120 2d2d 7175 6965 7420 226e  pm -q --quiet "n
│ │ │ -0025b3a0: 6574 2d73 6e6d 7022 203b 2074 6865 6e0a  et-snmp" ; then.
│ │ │ -0025b3b0: 646e 6620 7265 6d6f 7665 202d 7920 2d2d  dnf remove -y --
│ │ │ -0025b3c0: 6e6f 6175 746f 7265 6d6f 7665 2022 6e65  noautoremove "ne
│ │ │ -0025b3d0: 742d 736e 6d70 220a 6669 0a3c 2f63 6f64  t-snmp".fi.
Complexity:low
Disrup │ │ │ -0025b240: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -0025b250: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -0025b290: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ -0025b2a0: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Comp │ │ │ +0025aa60: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +0025aa70: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ +0025aa90: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ +0025aab0: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +0025aac0: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ +0025ab00: 3c70 7265 3e3c 636f 6465 3e2d 206e 616d
- nam
│ │ │ +0025ab10: 653a 2027 556e 696e 7374 616c 6c20 6e65  e: 'Uninstall ne
│ │ │ +0025ab20: 742d 736e 6d70 2050 6163 6b61 6765 3a20  t-snmp Package: 
│ │ │ +0025ab30: 456e 7375 7265 206e 6574 2d73 6e6d 7020  Ensure net-snmp 
│ │ │ +0025ab40: 6973 2072 656d 6f76 6564 270a 2020 616e  is removed'.  an
│ │ │ +0025ab50: 7369 626c 652e 6275 696c 7469 6e2e 7061  sible.builtin.pa
│ │ │ +0025ab60: 636b 6167 653a 0a20 2020 206e 616d 653a  ckage:.    name:
│ │ │ +0025ab70: 206e 6574 2d73 6e6d 700a 2020 2020 7374   net-snmp.    st
│ │ │ +0025ab80: 6174 653a 2061 6273 656e 740a 2020 7461  ate: absent.  ta
│ │ │ +0025ab90: 6773 3a0a 2020 2d20 5043 492d 4453 5376  gs:.  - PCI-DSSv
│ │ │ +0025aba0: 342d 322e 320a 2020 2d20 5043 492d 4453  4-2.2.  - PCI-DS
│ │ │ +0025abb0: 5376 342d 322e 322e 340a 2020 2d20 6469  Sv4-2.2.4.  - di
│ │ │ +0025abc0: 7361 626c 655f 7374 7261 7465 6779 0a20  sable_strategy. 
│ │ │ +0025abd0: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ +0025abe0: 790a 2020 2d20 6c6f 775f 6469 7372 7570  y.  - low_disrup
│ │ │ +0025abf0: 7469 6f6e 0a20 202d 206e 6f5f 7265 626f  tion.  - no_rebo
│ │ │ +0025ac00: 6f74 5f6e 6565 6465 640a 2020 2d20 7061  ot_needed.  - pa
│ │ │ +0025ac10: 636b 6167 655f 6e65 742d 736e 6d70 5f72  ckage_net-snmp_r
│ │ │ +0025ac20: 656d 6f76 6564 0a20 202d 2075 6e6b 6e6f  emoved.  - unkno
│ │ │ +0025ac30: 776e 5f73 6576 6572 6974 790a 3c2f 636f  wn_severity.
< │ │ │ +0025ac50: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ +0025ac60: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ +0025ac70: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ +0025ac80: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ +0025ac90: 6438 3035 2220 7461 6269 6e64 6578 3d22 d805" tabindex=" │ │ │ +0025aca0: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ +0025acb0: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ +0025acc0: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ +0025acd0: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ +0025ace0: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ +0025acf0: 6469 6174 696f 6e20 5075 7070 6574 2073 diation Puppet s │ │ │ +0025ad00: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ +0025ad90: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +0025ada0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ +0025adc0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ +0025ade0: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +0025adf0: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ +0025ae30: 3c70 7265 3e3c 636f 6465 3e0a 696e 636c
.incl
│ │ │ +0025ae40: 7564 6520 7265 6d6f 7665 5f6e 6574 2d73  ude remove_net-s
│ │ │ +0025ae50: 6e6d 700a 0a63 6c61 7373 2072 656d 6f76  nmp..class remov
│ │ │ +0025ae60: 655f 6e65 742d 736e 6d70 207b 0a20 2070  e_net-snmp {.  p
│ │ │ +0025ae70: 6163 6b61 6765 207b 2027 6e65 742d 736e  ackage { 'net-sn
│ │ │ +0025ae80: 6d70 273a 0a20 2020 2065 6e73 7572 6520  mp':.    ensure 
│ │ │ +0025ae90: 3d26 6774 3b20 2770 7572 6765 6427 2c0a  => 'purged',.
│ │ │ +0025aea0: 2020 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70    }.}.

Remediatio │ │ │ +0025af60: 6e20 5368 656c 6c20 7363 7269 7074 20e2 n Shell script . │ │ │ +0025af70: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ +0025aff0: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +0025b010: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ +0025b060: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ +0025b090: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ +0025b000: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +0025b020: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ +0025b070: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ +0025b080: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
.# CAUTION: T
│ │ │ +0025b0b0: 6869 7320 7265 6d65 6469 6174 696f 6e20  his remediation 
│ │ │ +0025b0c0: 7363 7269 7074 2077 696c 6c20 7265 6d6f  script will remo
│ │ │ +0025b0d0: 7665 206e 6574 2d73 6e6d 700a 2320 6672  ve net-snmp.# fr
│ │ │ +0025b0e0: 6f6d 2074 6865 2073 7973 7465 6d2c 2061  om the system, a
│ │ │ +0025b0f0: 6e64 206d 6179 2072 656d 6f76 6520 616e  nd may remove an
│ │ │ +0025b100: 7920 7061 636b 6167 6573 0a23 2074 6861  y packages.# tha
│ │ │ +0025b110: 7420 6465 7065 6e64 206f 6e20 6e65 742d  t depend on net-
│ │ │ +0025b120: 736e 6d70 2e20 4578 6563 7574 6520 7468  snmp. Execute th
│ │ │ +0025b130: 6973 0a23 2072 656d 6564 6961 7469 6f6e  is.# remediation
│ │ │ +0025b140: 2041 4654 4552 2074 6573 7469 6e67 206f   AFTER testing o
│ │ │ +0025b150: 6e20 6120 6e6f 6e2d 7072 6f64 7563 7469  n a non-producti
│ │ │ +0025b160: 6f6e 0a23 2073 7973 7465 6d21 0a0a 0a69  on.# system!...i
│ │ │ +0025b170: 6620 7270 6d20 2d71 202d 2d71 7569 6574  f rpm -q --quiet
│ │ │ +0025b180: 2022 6e65 742d 736e 6d70 2220 3b20 7468   "net-snmp" ; th
│ │ │ +0025b190: 656e 0a64 6e66 2072 656d 6f76 6520 2d79  en.dnf remove -y
│ │ │ +0025b1a0: 202d 2d6e 6f61 7574 6f72 656d 6f76 6520   --noautoremove 
│ │ │ +0025b1b0: 226e 6574 2d73 6e6d 7022 0a66 690a 3c2f  "net-snmp".fi.
Re │ │ │ +0025b270: 6d65 6469 6174 696f 6e20 416e 6163 6f6e mediation Anacon │ │ │ +0025b280: 6461 2073 6e69 7070 6574 20e2 87b2 3c2f da snippet ...
│ │ │ +0025b320: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
.
│ │ │ +0025b3c0: 0a70 6163 6b61 6765 202d 2d72 656d 6f76  .package --remov
│ │ │ +0025b3d0: 653d 6e65 742d 736e 6d70 0a3c 2f63 6f64  e=net-snmp.
│ │ │ +0025b310: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +0025b340: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +0025b350: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +0025b390: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ +0025b3a0: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Remed │ │ │ -0025bc20: 6961 7469 6f6e 204f 5342 7569 6c64 2042 iation OSBuild B │ │ │ -0025bc30: 6c75 6570 7269 6e74 2073 6e69 7070 6574 lueprint snippet │ │ │ -0025bc40: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...

.[customi
│ │ │ -0025bc90: 7a61 7469 6f6e 732e 7365 7276 6963 6573  zations.services
│ │ │ -0025bca0: 5d0a 6d61 736b 6564 203d 205b 2273 6e6d  ].masked = ["snm
│ │ │ -0025bcb0: 7064 225d 0a3c 2f63 6f64 653e 3c2f 7072  pd"].
Remediation │ │ │ -0025bd70: 2050 7570 7065 7420 736e 6970 7065 7420 Puppet snippet │ │ │ -0025bd80: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
Complexity: │ │ │ -0025be10: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ -0025be30: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:low< │ │ │ -0025be50: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:falseSt │ │ │ -0025be80: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ -0025be90: 656e 6162 6c65 3c2f 7464 3e3c 2f74 723e enable │ │ │ -0025bea0: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
include disab
│ │ │ -0025bec0: 6c65 5f73 6e6d 7064 0a0a 636c 6173 7320  le_snmpd..class 
│ │ │ -0025bed0: 6469 7361 626c 655f 736e 6d70 6420 7b0a  disable_snmpd {.
│ │ │ -0025bee0: 2020 7365 7276 6963 6520 7b27 736e 6d70    service {'snmp
│ │ │ -0025bef0: 6427 3a0a 2020 2020 656e 6162 6c65 203d  d':.    enable =
│ │ │ -0025bf00: 2667 743b 2066 616c 7365 2c0a 2020 2020  > false,.    
│ │ │ -0025bf10: 656e 7375 7265 203d 2667 743b 2027 7374  ensure => 'st
│ │ │ -0025bf20: 6f70 7065 6427 2c0a 2020 7d0a 7d0a 3c2f  opped',.  }.}.
Re │ │ │ -0025bfe0: 6d65 6469 6174 696f 6e20 416e 7369 626c mediation Ansibl │ │ │ -0025bff0: 6520 736e 6970 7065 7420 e287 b23c 2f61 e snippet ...
< │ │ │ -0025c090: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -0025c0a0: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ -0025c0f0: 3c74 723e 3c74 683e 5374 7261 7465 6779
- 
│ │ │ -0025c130: 6e61 6d65 3a20 4761 7468 6572 2074 6865  name: Gather the
│ │ │ -0025c140: 2070 6163 6b61 6765 2066 6163 7473 0a20   package facts. 
│ │ │ -0025c150: 2070 6163 6b61 6765 5f66 6163 7473 3a0a   package_facts:.
│ │ │ -0025c160: 2020 2020 6d61 6e61 6765 723a 2061 7574      manager: aut
│ │ │ -0025c170: 6f0a 2020 7461 6773 3a0a 2020 2d20 6469  o.  tags:.  - di
│ │ │ -0025c180: 7361 626c 655f 7374 7261 7465 6779 0a20  sable_strategy. 
│ │ │ -0025c190: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ -0025c1a0: 790a 2020 2d20 6c6f 775f 6469 7372 7570  y.  - low_disrup
│ │ │ -0025c1b0: 7469 6f6e 0a20 202d 206c 6f77 5f73 6576  tion.  - low_sev
│ │ │ -0025c1c0: 6572 6974 790a 2020 2d20 6e6f 5f72 6562  erity.  - no_reb
│ │ │ -0025c1d0: 6f6f 745f 6e65 6564 6564 0a20 202d 2073  oot_needed.  - s
│ │ │ -0025c1e0: 6572 7669 6365 5f73 6e6d 7064 5f64 6973  ervice_snmpd_dis
│ │ │ -0025c1f0: 6162 6c65 640a 0a2d 206e 616d 653a 2044  abled..- name: D
│ │ │ -0025c200: 6973 6162 6c65 2073 6e6d 7064 2053 6572  isable snmpd Ser
│ │ │ -0025c210: 7669 6365 202d 2044 6973 6162 6c65 2073  vice - Disable s
│ │ │ -0025c220: 6572 7669 6365 2073 6e6d 7064 0a20 2062  ervice snmpd.  b
│ │ │ -0025c230: 6c6f 636b 3a0a 0a20 202d 206e 616d 653a  lock:..  - name:
│ │ │ -0025c240: 2044 6973 6162 6c65 2073 6e6d 7064 2053   Disable snmpd S
│ │ │ -0025c250: 6572 7669 6365 202d 2043 6f6c 6c65 6374  ervice - Collect
│ │ │ -0025c260: 2073 7973 7465 6d64 2053 6572 7669 6365   systemd Service
│ │ │ -0025c270: 7320 5072 6573 656e 7420 696e 2074 6865  s Present in the
│ │ │ -0025c280: 2053 7973 7465 6d0a 2020 2020 616e 7369   System.    ansi
│ │ │ -0025c290: 626c 652e 6275 696c 7469 6e2e 636f 6d6d  ble.builtin.comm
│ │ │ -0025c2a0: 616e 643a 2073 7973 7465 6d63 746c 202d  and: systemctl -
│ │ │ -0025c2b0: 7120 6c69 7374 2d75 6e69 742d 6669 6c65  q list-unit-file
│ │ │ -0025c2c0: 7320 2d2d 7479 7065 2073 6572 7669 6365  s --type service
│ │ │ -0025c2d0: 0a20 2020 2072 6567 6973 7465 723a 2073  .    register: s
│ │ │ -0025c2e0: 6572 7669 6365 5f65 7869 7374 730a 2020  ervice_exists.  
│ │ │ -0025c2f0: 2020 6368 616e 6765 645f 7768 656e 3a20    changed_when: 
│ │ │ -0025c300: 6661 6c73 650a 2020 2020 6661 696c 6564  false.    failed
│ │ │ -0025c310: 5f77 6865 6e3a 2073 6572 7669 6365 5f65  _when: service_e
│ │ │ -0025c320: 7869 7374 732e 7263 206e 6f74 2069 6e20  xists.rc not in 
│ │ │ -0025c330: 5b30 2c20 315d 0a20 2020 2063 6865 636b  [0, 1].    check
│ │ │ -0025c340: 5f6d 6f64 653a 2066 616c 7365 0a0a 2020  _mode: false..  
│ │ │ -0025c350: 2d20 6e61 6d65 3a20 4469 7361 626c 6520  - name: Disable 
│ │ │ -0025c360: 736e 6d70 6420 5365 7276 6963 6520 2d20  snmpd Service - 
│ │ │ -0025c370: 456e 7375 7265 2073 6e6d 7064 2e73 6572  Ensure snmpd.ser
│ │ │ -0025c380: 7669 6365 2069 7320 4d61 736b 6564 0a20  vice is Masked. 
│ │ │ -0025c390: 2020 2061 6e73 6962 6c65 2e62 7569 6c74     ansible.built
│ │ │ -0025c3a0: 696e 2e73 7973 7465 6d64 3a0a 2020 2020  in.systemd:.    
│ │ │ -0025c3b0: 2020 6e61 6d65 3a20 736e 6d70 642e 7365    name: snmpd.se
│ │ │ -0025c3c0: 7276 6963 650a 2020 2020 2020 7374 6174  rvice.      stat
│ │ │ -0025c3d0: 653a 2073 746f 7070 6564 0a20 2020 2020  e: stopped.     
│ │ │ -0025c3e0: 2065 6e61 626c 6564 3a20 6661 6c73 650a   enabled: false.
│ │ │ -0025c3f0: 2020 2020 2020 6d61 736b 6564 3a20 7472        masked: tr
│ │ │ -0025c400: 7565 0a20 2020 2077 6865 6e3a 2073 6572  ue.    when: ser
│ │ │ -0025c410: 7669 6365 5f65 7869 7374 732e 7374 646f  vice_exists.stdo
│ │ │ -0025c420: 7574 5f6c 696e 6573 2069 7320 7365 6172  ut_lines is sear
│ │ │ -0025c430: 6368 2822 736e 6d70 642e 7365 7276 6963  ch("snmpd.servic
│ │ │ -0025c440: 6522 2c20 6d75 6c74 696c 696e 653d 5472  e", multiline=Tr
│ │ │ -0025c450: 7565 290a 0a20 202d 206e 616d 653a 2055  ue)..  - name: U
│ │ │ -0025c460: 6e69 7420 536f 636b 6574 2045 7869 7374  nit Socket Exist
│ │ │ -0025c470: 7320 2d20 736e 6d70 642e 736f 636b 6574  s - snmpd.socket
│ │ │ -0025c480: 0a20 2020 2061 6e73 6962 6c65 2e62 7569  .    ansible.bui
│ │ │ -0025c490: 6c74 696e 2e63 6f6d 6d61 6e64 3a20 7379  ltin.command: sy
│ │ │ -0025c4a0: 7374 656d 6374 6c20 2d71 206c 6973 742d  stemctl -q list-
│ │ │ -0025c4b0: 756e 6974 2d66 696c 6573 2073 6e6d 7064  unit-files snmpd
│ │ │ -0025c4c0: 2e73 6f63 6b65 740a 2020 2020 7265 6769  .socket.    regi
│ │ │ -0025c4d0: 7374 6572 3a20 736f 636b 6574 5f66 696c  ster: socket_fil
│ │ │ -0025c4e0: 655f 6578 6973 7473 0a20 2020 2063 6861  e_exists.    cha
│ │ │ -0025c4f0: 6e67 6564 5f77 6865 6e3a 2066 616c 7365  nged_when: false
│ │ │ -0025c500: 0a20 2020 2066 6169 6c65 645f 7768 656e  .    failed_when
│ │ │ -0025c510: 3a20 736f 636b 6574 5f66 696c 655f 6578  : socket_file_ex
│ │ │ -0025c520: 6973 7473 2e72 6320 6e6f 7420 696e 205b  ists.rc not in [
│ │ │ -0025c530: 302c 2031 5d0a 2020 2020 6368 6563 6b5f  0, 1].    check_
│ │ │ -0025c540: 6d6f 6465 3a20 6661 6c73 650a 0a20 202d  mode: false..  -
│ │ │ -0025c550: 206e 616d 653a 2044 6973 6162 6c65 2073   name: Disable s
│ │ │ -0025c560: 6e6d 7064 2053 6572 7669 6365 202d 2044  nmpd Service - D
│ │ │ -0025c570: 6973 6162 6c65 2053 6f63 6b65 7420 736e  isable Socket sn
│ │ │ -0025c580: 6d70 640a 2020 2020 616e 7369 626c 652e  mpd.    ansible.
│ │ │ -0025c590: 6275 696c 7469 6e2e 7379 7374 656d 643a  builtin.systemd:
│ │ │ -0025c5a0: 0a20 2020 2020 206e 616d 653a 2073 6e6d  .      name: snm
│ │ │ -0025c5b0: 7064 2e73 6f63 6b65 740a 2020 2020 2020  pd.socket.      
│ │ │ -0025c5c0: 656e 6162 6c65 643a 2066 616c 7365 0a20  enabled: false. 
│ │ │ -0025c5d0: 2020 2020 2073 7461 7465 3a20 7374 6f70       state: stop
│ │ │ -0025c5e0: 7065 640a 2020 2020 2020 6d61 736b 6564  ped.      masked
│ │ │ -0025c5f0: 3a20 7472 7565 0a20 2020 2077 6865 6e3a  : true.    when:
│ │ │ -0025c600: 2073 6f63 6b65 745f 6669 6c65 5f65 7869   socket_file_exi
│ │ │ -0025c610: 7374 732e 7374 646f 7574 5f6c 696e 6573  sts.stdout_lines
│ │ │ -0025c620: 2069 7320 7365 6172 6368 2822 736e 6d70   is search("snmp
│ │ │ -0025c630: 642e 736f 636b 6574 222c 206d 756c 7469  d.socket", multi
│ │ │ -0025c640: 6c69 6e65 3d54 7275 6529 0a20 2074 6167  line=True).  tag
│ │ │ -0025c650: 733a 0a20 202d 2064 6973 6162 6c65 5f73  s:.  - disable_s
│ │ │ -0025c660: 7472 6174 6567 790a 2020 2d20 6c6f 775f  trategy.  - low_
│ │ │ -0025c670: 636f 6d70 6c65 7869 7479 0a20 202d 206c  complexity.  - l
│ │ │ -0025c680: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ -0025c690: 2d20 6c6f 775f 7365 7665 7269 7479 0a20  - low_severity. 
│ │ │ -0025c6a0: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ -0025c6b0: 6465 640a 2020 2d20 7365 7276 6963 655f  ded.  - service_
│ │ │ -0025c6c0: 736e 6d70 645f 6469 7361 626c 6564 0a20  snmpd_disabled. 
│ │ │ -0025c6d0: 202d 2073 7065 6369 616c 5f73 6572 7669   - special_servi
│ │ │ -0025c6e0: 6365 5f62 6c6f 636b 0a20 2077 6865 6e3a  ce_block.  when:
│ │ │ -0025c6f0: 2028 2022 6e65 742d 736e 6d70 2220 696e   ( "net-snmp" in
│ │ │ -0025c700: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -0025c710: 6163 6b61 6765 7320 616e 6420 226b 6572  ackages and "ker
│ │ │ -0025c720: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ -0025c730: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ -0025c740: 2020 2029 0a3c 2f63 6f64 653e 3c2f 7072     ).
C │ │ │ -0025c080: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -0025c0b0: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ -0025c0c0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -0025c100: 3a3c 2f74 683e 3c74 643e 6469 7361 626c :disabl │ │ │ -0025c110: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
Comp │ │ │ +0025bcc0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +0025bcd0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ +0025bcf0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ +0025bd10: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +0025bd20: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ +0025bd60: 3c70 7265 3e3c 636f 6465 3e2d 206e 616d
- nam
│ │ │ +0025bd70: 653a 2047 6174 6865 7220 7468 6520 7061  e: Gather the pa
│ │ │ +0025bd80: 636b 6167 6520 6661 6374 730a 2020 7061  ckage facts.  pa
│ │ │ +0025bd90: 636b 6167 655f 6661 6374 733a 0a20 2020  ckage_facts:.   
│ │ │ +0025bda0: 206d 616e 6167 6572 3a20 6175 746f 0a20   manager: auto. 
│ │ │ +0025bdb0: 2074 6167 733a 0a20 202d 2064 6973 6162   tags:.  - disab
│ │ │ +0025bdc0: 6c65 5f73 7472 6174 6567 790a 2020 2d20  le_strategy.  - 
│ │ │ +0025bdd0: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ +0025bde0: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ +0025bdf0: 6e0a 2020 2d20 6c6f 775f 7365 7665 7269  n.  - low_severi
│ │ │ +0025be00: 7479 0a20 202d 206e 6f5f 7265 626f 6f74  ty.  - no_reboot
│ │ │ +0025be10: 5f6e 6565 6465 640a 2020 2d20 7365 7276  _needed.  - serv
│ │ │ +0025be20: 6963 655f 736e 6d70 645f 6469 7361 626c  ice_snmpd_disabl
│ │ │ +0025be30: 6564 0a0a 2d20 6e61 6d65 3a20 4469 7361  ed..- name: Disa
│ │ │ +0025be40: 626c 6520 736e 6d70 6420 5365 7276 6963  ble snmpd Servic
│ │ │ +0025be50: 6520 2d20 4469 7361 626c 6520 7365 7276  e - Disable serv
│ │ │ +0025be60: 6963 6520 736e 6d70 640a 2020 626c 6f63  ice snmpd.  bloc
│ │ │ +0025be70: 6b3a 0a0a 2020 2d20 6e61 6d65 3a20 4469  k:..  - name: Di
│ │ │ +0025be80: 7361 626c 6520 736e 6d70 6420 5365 7276  sable snmpd Serv
│ │ │ +0025be90: 6963 6520 2d20 436f 6c6c 6563 7420 7379  ice - Collect sy
│ │ │ +0025bea0: 7374 656d 6420 5365 7276 6963 6573 2050  stemd Services P
│ │ │ +0025beb0: 7265 7365 6e74 2069 6e20 7468 6520 5379  resent in the Sy
│ │ │ +0025bec0: 7374 656d 0a20 2020 2061 6e73 6962 6c65  stem.    ansible
│ │ │ +0025bed0: 2e62 7569 6c74 696e 2e63 6f6d 6d61 6e64  .builtin.command
│ │ │ +0025bee0: 3a20 7379 7374 656d 6374 6c20 2d71 206c  : systemctl -q l
│ │ │ +0025bef0: 6973 742d 756e 6974 2d66 696c 6573 202d  ist-unit-files -
│ │ │ +0025bf00: 2d74 7970 6520 7365 7276 6963 650a 2020  -type service.  
│ │ │ +0025bf10: 2020 7265 6769 7374 6572 3a20 7365 7276    register: serv
│ │ │ +0025bf20: 6963 655f 6578 6973 7473 0a20 2020 2063  ice_exists.    c
│ │ │ +0025bf30: 6861 6e67 6564 5f77 6865 6e3a 2066 616c  hanged_when: fal
│ │ │ +0025bf40: 7365 0a20 2020 2066 6169 6c65 645f 7768  se.    failed_wh
│ │ │ +0025bf50: 656e 3a20 7365 7276 6963 655f 6578 6973  en: service_exis
│ │ │ +0025bf60: 7473 2e72 6320 6e6f 7420 696e 205b 302c  ts.rc not in [0,
│ │ │ +0025bf70: 2031 5d0a 2020 2020 6368 6563 6b5f 6d6f   1].    check_mo
│ │ │ +0025bf80: 6465 3a20 6661 6c73 650a 0a20 202d 206e  de: false..  - n
│ │ │ +0025bf90: 616d 653a 2044 6973 6162 6c65 2073 6e6d  ame: Disable snm
│ │ │ +0025bfa0: 7064 2053 6572 7669 6365 202d 2045 6e73  pd Service - Ens
│ │ │ +0025bfb0: 7572 6520 736e 6d70 642e 7365 7276 6963  ure snmpd.servic
│ │ │ +0025bfc0: 6520 6973 204d 6173 6b65 640a 2020 2020  e is Masked.    
│ │ │ +0025bfd0: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ +0025bfe0: 7379 7374 656d 643a 0a20 2020 2020 206e  systemd:.      n
│ │ │ +0025bff0: 616d 653a 2073 6e6d 7064 2e73 6572 7669  ame: snmpd.servi
│ │ │ +0025c000: 6365 0a20 2020 2020 2073 7461 7465 3a20  ce.      state: 
│ │ │ +0025c010: 7374 6f70 7065 640a 2020 2020 2020 656e  stopped.      en
│ │ │ +0025c020: 6162 6c65 643a 2066 616c 7365 0a20 2020  abled: false.   
│ │ │ +0025c030: 2020 206d 6173 6b65 643a 2074 7275 650a     masked: true.
│ │ │ +0025c040: 2020 2020 7768 656e 3a20 7365 7276 6963      when: servic
│ │ │ +0025c050: 655f 6578 6973 7473 2e73 7464 6f75 745f  e_exists.stdout_
│ │ │ +0025c060: 6c69 6e65 7320 6973 2073 6561 7263 6828  lines is search(
│ │ │ +0025c070: 2273 6e6d 7064 2e73 6572 7669 6365 222c  "snmpd.service",
│ │ │ +0025c080: 206d 756c 7469 6c69 6e65 3d54 7275 6529   multiline=True)
│ │ │ +0025c090: 0a0a 2020 2d20 6e61 6d65 3a20 556e 6974  ..  - name: Unit
│ │ │ +0025c0a0: 2053 6f63 6b65 7420 4578 6973 7473 202d   Socket Exists -
│ │ │ +0025c0b0: 2073 6e6d 7064 2e73 6f63 6b65 740a 2020   snmpd.socket.  
│ │ │ +0025c0c0: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ +0025c0d0: 6e2e 636f 6d6d 616e 643a 2073 7973 7465  n.command: syste
│ │ │ +0025c0e0: 6d63 746c 202d 7120 6c69 7374 2d75 6e69  mctl -q list-uni
│ │ │ +0025c0f0: 742d 6669 6c65 7320 736e 6d70 642e 736f  t-files snmpd.so
│ │ │ +0025c100: 636b 6574 0a20 2020 2072 6567 6973 7465  cket.    registe
│ │ │ +0025c110: 723a 2073 6f63 6b65 745f 6669 6c65 5f65  r: socket_file_e
│ │ │ +0025c120: 7869 7374 730a 2020 2020 6368 616e 6765  xists.    change
│ │ │ +0025c130: 645f 7768 656e 3a20 6661 6c73 650a 2020  d_when: false.  
│ │ │ +0025c140: 2020 6661 696c 6564 5f77 6865 6e3a 2073    failed_when: s
│ │ │ +0025c150: 6f63 6b65 745f 6669 6c65 5f65 7869 7374  ocket_file_exist
│ │ │ +0025c160: 732e 7263 206e 6f74 2069 6e20 5b30 2c20  s.rc not in [0, 
│ │ │ +0025c170: 315d 0a20 2020 2063 6865 636b 5f6d 6f64  1].    check_mod
│ │ │ +0025c180: 653a 2066 616c 7365 0a0a 2020 2d20 6e61  e: false..  - na
│ │ │ +0025c190: 6d65 3a20 4469 7361 626c 6520 736e 6d70  me: Disable snmp
│ │ │ +0025c1a0: 6420 5365 7276 6963 6520 2d20 4469 7361  d Service - Disa
│ │ │ +0025c1b0: 626c 6520 536f 636b 6574 2073 6e6d 7064  ble Socket snmpd
│ │ │ +0025c1c0: 0a20 2020 2061 6e73 6962 6c65 2e62 7569  .    ansible.bui
│ │ │ +0025c1d0: 6c74 696e 2e73 7973 7465 6d64 3a0a 2020  ltin.systemd:.  
│ │ │ +0025c1e0: 2020 2020 6e61 6d65 3a20 736e 6d70 642e      name: snmpd.
│ │ │ +0025c1f0: 736f 636b 6574 0a20 2020 2020 2065 6e61  socket.      ena
│ │ │ +0025c200: 626c 6564 3a20 6661 6c73 650a 2020 2020  bled: false.    
│ │ │ +0025c210: 2020 7374 6174 653a 2073 746f 7070 6564    state: stopped
│ │ │ +0025c220: 0a20 2020 2020 206d 6173 6b65 643a 2074  .      masked: t
│ │ │ +0025c230: 7275 650a 2020 2020 7768 656e 3a20 736f  rue.    when: so
│ │ │ +0025c240: 636b 6574 5f66 696c 655f 6578 6973 7473  cket_file_exists
│ │ │ +0025c250: 2e73 7464 6f75 745f 6c69 6e65 7320 6973  .stdout_lines is
│ │ │ +0025c260: 2073 6561 7263 6828 2273 6e6d 7064 2e73   search("snmpd.s
│ │ │ +0025c270: 6f63 6b65 7422 2c20 6d75 6c74 696c 696e  ocket", multilin
│ │ │ +0025c280: 653d 5472 7565 290a 2020 7461 6773 3a0a  e=True).  tags:.
│ │ │ +0025c290: 2020 2d20 6469 7361 626c 655f 7374 7261    - disable_stra
│ │ │ +0025c2a0: 7465 6779 0a20 202d 206c 6f77 5f63 6f6d  tegy.  - low_com
│ │ │ +0025c2b0: 706c 6578 6974 790a 2020 2d20 6c6f 775f  plexity.  - low_
│ │ │ +0025c2c0: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ +0025c2d0: 6f77 5f73 6576 6572 6974 790a 2020 2d20  ow_severity.  - 
│ │ │ +0025c2e0: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ +0025c2f0: 0a20 202d 2073 6572 7669 6365 5f73 6e6d  .  - service_snm
│ │ │ +0025c300: 7064 5f64 6973 6162 6c65 640a 2020 2d20  pd_disabled.  - 
│ │ │ +0025c310: 7370 6563 6961 6c5f 7365 7276 6963 655f  special_service_
│ │ │ +0025c320: 626c 6f63 6b0a 2020 7768 656e 3a20 2820  block.  when: ( 
│ │ │ +0025c330: 226e 6574 2d73 6e6d 7022 2069 6e20 616e  "net-snmp" in an
│ │ │ +0025c340: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +0025c350: 6167 6573 2061 6e64 2022 6b65 726e 656c  ages and "kernel
│ │ │ +0025c360: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +0025c370: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ +0025c380: 290a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  ).
< │ │ │ +0025c390: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Pu │ │ │ +0025c440: 7070 6574 2073 6e69 7070 6574 20e2 87b2 ppet snippet ... │ │ │ +0025c450: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity: │ │ │ +0025c520: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +0025c530: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f

│ │ │ +0025c580: 696e 636c 7564 6520 6469 7361 626c 655f  include disable_
│ │ │ +0025c590: 736e 6d70 640a 0a63 6c61 7373 2064 6973  snmpd..class dis
│ │ │ +0025c5a0: 6162 6c65 5f73 6e6d 7064 207b 0a20 2073  able_snmpd {.  s
│ │ │ +0025c5b0: 6572 7669 6365 207b 2773 6e6d 7064 273a  ervice {'snmpd':
│ │ │ +0025c5c0: 0a20 2020 2065 6e61 626c 6520 3d26 6774  .    enable =>
│ │ │ +0025c5d0: 3b20 6661 6c73 652c 0a20 2020 2065 6e73  ; false,.    ens
│ │ │ +0025c5e0: 7572 6520 3d26 6774 3b20 2773 746f 7070  ure => 'stopp
│ │ │ +0025c5f0: 6564 272c 0a20 207d 0a7d 0a3c 2f63 6f64  ed',.  }.}.
Remed │ │ │ +0025c6b0: 6961 7469 6f6e 204f 5342 7569 6c64 2042 iation OSBuild B │ │ │ +0025c6c0: 6c75 6570 7269 6e74 2073 6e69 7070 6574 lueprint snippet │ │ │ +0025c6d0: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
.[customi
│ │ │ +0025c720: 7a61 7469 6f6e 732e 7365 7276 6963 6573  zations.services
│ │ │ +0025c730: 5d0a 6d61 736b 6564 203d 205b 2273 6e6d  ].masked = ["snm
│ │ │ +0025c740: 7064 225d 0a3c 2f63 6f64 653e 3c2f 7072  pd"].
Remediation │ │ │ -0029b920: 2050 7570 7065 7420 736e 6970 7065 7420 Puppet snippet │ │ │ -0029b930: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
│ │ │ -0029b970: 3c63 6f64 653e 0a0a 0a69 6e63 6c75 6465  ...include
│ │ │ -0029b980: 2073 7368 5f70 7269 7661 7465 5f6b 6579   ssh_private_key
│ │ │ -0029b990: 5f70 6572 6d73 0a0a 636c 6173 7320 7373  _perms..class ss
│ │ │ -0029b9a0: 685f 7072 6976 6174 655f 6b65 795f 7065  h_private_key_pe
│ │ │ -0029b9b0: 726d 7320 7b0a 2020 6578 6563 207b 2027  rms {.  exec { '
│ │ │ -0029b9c0: 7373 6864 5f70 7269 765f 6b65 7927 3a0a  sshd_priv_key':.
│ │ │ -0029b9d0: 2020 2020 636f 6d6d 616e 6420 3d26 6774      command =>
│ │ │ -0029b9e0: 3b20 2263 686d 6f64 2030 3630 3020 2f65  ; "chmod 0600 /e
│ │ │ -0029b9f0: 7463 2f73 7368 2f2a 5f6b 6579 222c 0a20  tc/ssh/*_key",. 
│ │ │ -0029ba00: 2020 2070 6174 6820 2020 203d 2667 743b     path    =>
│ │ │ -0029ba10: 2027 2f62 696e 3a2f 7573 722f 6269 6e27   '/bin:/usr/bin'
│ │ │ -0029ba20: 0a20 207d 0a7d 0a3c 2f63 6f64 653e 3c2f  .  }.}.
Remediati │ │ │ -0029bae0: 6f6e 2041 6e73 6962 6c65 2073 6e69 7070 on Ansible snipp │ │ │ -0029baf0: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ -0029bb70: 3c74 723e 3c74 683e 436f 6d70 6c65 7869
< │ │ │ -0029bc00: 7464 3e63 6f6e 6669 6775 7265 3c2f 7464 td>configure
low
Disru │ │ │ +0025c500: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +0025c510: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +0025c550: 6567 793a 3c2f 7468 3e3c 7464 3e65 6e61 egy:ena │ │ │ +0025c560: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Complexi │ │ │ -0029bb80: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -0029bb90: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Disruption:low
Reboot │ │ │ -0029bbd0: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -0029bbe0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Strategy:

- name: │ │ │ -0029bc30: 2047 6174 6865 7220 7468 6520 7061 636b Gather the pack │ │ │ -0029bc40: 6167 6520 6661 6374 730a 2020 7061 636b age facts. pack │ │ │ -0029bc50: 6167 655f 6661 6374 733a 0a20 2020 206d age_facts:. m │ │ │ -0029bc60: 616e 6167 6572 3a20 6175 746f 0a20 2074 anager: auto. t │ │ │ -0029bc70: 6167 733a 0a20 202d 204e 4953 542d 3830 ags:. - NIST-80 │ │ │ -0029bc80: 302d 3137 312d 332e 312e 3133 0a20 202d 0-171-3.1.13. - │ │ │ -0029bc90: 204e 4953 542d 3830 302d 3137 312d 332e NIST-800-171-3. │ │ │ -0029bca0: 3133 2e31 300a 2020 2d20 4e49 5354 2d38 13.10. - NIST-8 │ │ │ -0029bcb0: 3030 2d35 332d 4143 2d31 3728 6129 0a20 00-53-AC-17(a). │ │ │ -0029bcc0: 202d 204e 4953 542d 3830 302d 3533 2d41 - NIST-800-53-A │ │ │ -0029bcd0: 432d 3628 3129 0a20 202d 204e 4953 542d C-6(1). - NIST- │ │ │ -0029bce0: 3830 302d 3533 2d43 4d2d 3628 6129 0a20 800-53-CM-6(a). │ │ │ -0029bcf0: 202d 2050 4349 2d44 5353 2d52 6571 2d32 - PCI-DSS-Req-2 │ │ │ -0029bd00: 2e32 2e34 0a20 202d 2050 4349 2d44 5353 .2.4. - PCI-DSS │ │ │ -0029bd10: 7634 2d32 2e32 0a20 202d 2050 4349 2d44 v4-2.2. - PCI-D │ │ │ -0029bd20: 5353 7634 2d32 2e32 2e36 0a20 202d 2063 SSv4-2.2.6. - c │ │ │ -0029bd30: 6f6e 6669 6775 7265 5f73 7472 6174 6567 onfigure_strateg │ │ │ -0029bd40: 790a 2020 2d20 6669 6c65 5f70 6572 6d69 y. - file_permi │ │ │ -0029bd50: 7373 696f 6e73 5f73 7368 645f 7072 6976 ssions_sshd_priv │ │ │ -0029bd60: 6174 655f 6b65 790a 2020 2d20 6c6f 775f ate_key. - low_ │ │ │ -0029bd70: 636f 6d70 6c65 7869 7479 0a20 202d 206c complexity. - l │ │ │ -0029bd80: 6f77 5f64 6973 7275 7074 696f 6e0a 2020 ow_disruption. │ │ │ -0029bd90: 2d20 6d65 6469 756d 5f73 6576 6572 6974 - medium_severit │ │ │ -0029bda0: 790a 2020 2d20 6e6f 5f72 6562 6f6f 745f y. - no_reboot_ │ │ │ -0029bdb0: 6e65 6564 6564 0a0a 2d20 6e61 6d65 3a20 needed..- name: │ │ │ -0029bdc0: 4669 6e64 2072 6f6f 743a 726f 6f74 2d6f Find root:root-o │ │ │ -0029bdd0: 776e 6564 206b 6579 730a 2020 616e 7369 wned keys. ansi │ │ │ -0029bde0: 626c 652e 6275 696c 7469 6e2e 636f 6d6d ble.builtin.comm │ │ │ -0029bdf0: 616e 643a 2066 696e 6420 2d48 202f 6574 and: find -H /et │ │ │ -0029be00: 632f 7373 682f 202d 6d61 7864 6570 7468 c/ssh/ -maxdepth │ │ │ -0029be10: 2031 202d 7573 6572 2072 6f6f 7420 2d72 1 -user root -r │ │ │ -0029be20: 6567 6578 2022 2e2a 5f6b 6579 2422 0a20 egex ".*_key$". │ │ │ -0029be30: 2020 202d 7479 7065 2066 202d 6772 6f75 -type f -grou │ │ │ -0029be40: 7020 726f 6f74 202d 7065 726d 202f 752b p root -perm /u+ │ │ │ -0029be50: 7873 2c67 2b78 7772 732c 6f2b 7877 7274 xs,g+xwrs,o+xwrt │ │ │ -0029be60: 0a20 2072 6567 6973 7465 723a 2072 6f6f . register: roo │ │ │ -0029be70: 745f 6f77 6e65 645f 6b65 7973 0a20 2063 t_owned_keys. c │ │ │ -0029be80: 6861 6e67 6564 5f77 6865 6e3a 2066 616c hanged_when: fal │ │ │ -0029be90: 7365 0a20 2066 6169 6c65 645f 7768 656e se. failed_when │ │ │ -0029bea0: 3a20 6661 6c73 650a 2020 6368 6563 6b5f : false. check_ │ │ │ -0029beb0: 6d6f 6465 3a20 6661 6c73 650a 2020 7768 mode: false. wh │ │ │ -0029bec0: 656e 3a20 2722 6b65 726e 656c 2220 696e en: '"kernel" in │ │ │ -0029bed0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70 ansible_facts.p │ │ │ -0029bee0: 6163 6b61 6765 7327 0a20 2074 6167 733a ackages'. tags: │ │ │ -0029bef0: 0a20 202d 204e 4953 542d 3830 302d 3137 . - NIST-800-17 │ │ │ -0029bf00: 312d 332e 312e 3133 0a20 202d 204e 4953 1-3.1.13. - NIS │ │ │ -0029bf10: 542d 3830 302d 3137 312d 332e 3133 2e31 T-800-171-3.13.1 │ │ │ -0029bf20: 300a 2020 2d20 4e49 5354 2d38 3030 2d35 0. - NIST-800-5 │ │ │ -0029bf30: 332d 4143 2d31 3728 6129 0a20 202d 204e 3-AC-17(a). - N │ │ │ -0029bf40: 4953 542d 3830 302d 3533 2d41 432d 3628 IST-800-53-AC-6( │ │ │ -0029bf50: 3129 0a20 202d 204e 4953 542d 3830 302d 1). - NIST-800- │ │ │ -0029bf60: 3533 2d43 4d2d 3628 6129 0a20 202d 2050 53-CM-6(a). - P │ │ │ -0029bf70: 4349 2d44 5353 2d52 6571 2d32 2e32 2e34 CI-DSS-Req-2.2.4 │ │ │ -0029bf80: 0a20 202d 2050 4349 2d44 5353 7634 2d32 . - PCI-DSSv4-2 │ │ │ -0029bf90: 2e32 0a20 202d 2050 4349 2d44 5353 7634 .2. - PCI-DSSv4 │ │ │ -0029bfa0: 2d32 2e32 2e36 0a20 202d 2063 6f6e 6669 -2.2.6. - confi │ │ │ -0029bfb0: 6775 7265 5f73 7472 6174 6567 790a 2020 gure_strategy. │ │ │ -0029bfc0: 2d20 6669 6c65 5f70 6572 6d69 7373 696f - file_permissio │ │ │ -0029bfd0: 6e73 5f73 7368 645f 7072 6976 6174 655f ns_sshd_private_ │ │ │ -0029bfe0: 6b65 790a 2020 2d20 6c6f 775f 636f 6d70 key. - low_comp │ │ │ -0029bff0: 6c65 7869 7479 0a20 202d 206c 6f77 5f64 lexity. - low_d │ │ │ -0029c000: 6973 7275 7074 696f 6e0a 2020 2d20 6d65 isruption. - me │ │ │ -0029c010: 6469 756d 5f73 6576 6572 6974 790a 2020 dium_severity. │ │ │ -0029c020: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564 - no_reboot_need │ │ │ -0029c030: 6564 0a0a 2d20 6e61 6d65 3a20 5365 7420 ed..- name: Set │ │ │ -0029c040: 7065 726d 6973 7369 6f6e 7320 666f 7220 permissions for │ │ │ -0029c050: 726f 6f74 3a72 6f6f 742d 6f77 6e65 6420 root:root-owned │ │ │ -0029c060: 6b65 7973 0a20 2061 6e73 6962 6c65 2e62 keys. ansible.b │ │ │ -0029c070: 7569 6c74 696e 2e66 696c 653a 0a20 2020 uiltin.file:. │ │ │ -0029c080: 2070 6174 683a 2027 7b7b 2069 7465 6d20 path: '{{ item │ │ │ -0029c090: 7d7d 270a 2020 2020 6d6f 6465 3a20 752d }}'. mode: u- │ │ │ -0029c0a0: 7873 2c67 2d78 7772 732c 6f2d 7877 7274 xs,g-xwrs,o-xwrt │ │ │ -0029c0b0: 0a20 2020 2073 7461 7465 3a20 6669 6c65 . state: file │ │ │ -0029c0c0: 0a20 2077 6974 685f 6974 656d 733a 0a20 . with_items:. │ │ │ -0029c0d0: 202d 2027 7b7b 2072 6f6f 745f 6f77 6e65 - '{{ root_owne │ │ │ -0029c0e0: 645f 6b65 7973 2e73 7464 6f75 745f 6c69 d_keys.stdout_li │ │ │ -0029c0f0: 6e65 7320 7d7d 270a 2020 7768 656e 3a20 nes }}'. when: │ │ │ -0029c100: 2722 6b65 726e 656c 2220 696e 2061 6e73 '"kernel" in ans │ │ │ -0029c110: 6962 6c65 5f66 6163 7473 2e70 6163 6b61 ible_facts.packa │ │ │ -0029c120: 6765 7327 0a20 2074 6167 733a 0a20 202d ges'. tags:. - │ │ │ -0029c130: 204e 4953 542d 3830 302d 3137 312d 332e NIST-800-171-3. │ │ │ -0029c140: 312e 3133 0a20 202d 204e 4953 542d 3830 1.13. - NIST-80 │ │ │ -0029c150: 302d 3137 312d 332e 3133 2e31 300a 2020 0-171-3.13.10. │ │ │ -0029c160: 2d20 4e49 5354 2d38 3030 2d35 332d 4143 - NIST-800-53-AC │ │ │ -0029c170: 2d31 3728 6129 0a20 202d 204e 4953 542d -17(a). - NIST- │ │ │ -0029c180: 3830 302d 3533 2d41 432d 3628 3129 0a20 800-53-AC-6(1). │ │ │ -0029c190: 202d 204e 4953 542d 3830 302d 3533 2d43 - NIST-800-53-C │ │ │ -0029c1a0: 4d2d 3628 6129 0a20 202d 2050 4349 2d44 M-6(a). - PCI-D │ │ │ -0029c1b0: 5353 2d52 6571 2d32 2e32 2e34 0a20 202d SS-Req-2.2.4. - │ │ │ -0029c1c0: 2050 4349 2d44 5353 7634 2d32 2e32 0a20 PCI-DSSv4-2.2. │ │ │ -0029c1d0: 202d 2050 4349 2d44 5353 7634 2d32 2e32 - PCI-DSSv4-2.2 │ │ │ -0029c1e0: 2e36 0a20 202d 2063 6f6e 6669 6775 7265 .6. - configure │ │ │ -0029c1f0: 5f73 7472 6174 6567 790a 2020 2d20 6669 _strategy. - fi │ │ │ -0029c200: 6c65 5f70 6572 6d69 7373 696f 6e73 5f73 le_permissions_s │ │ │ -0029c210: 7368 645f 7072 6976 6174 655f 6b65 790a shd_private_key. │ │ │ -0029c220: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869 - low_complexi │ │ │ -0029c230: 7479 0a20 202d 206c 6f77 5f64 6973 7275 ty. - low_disru │ │ │ -0029c240: 7074 696f 6e0a 2020 2d20 6d65 6469 756d ption. - medium │ │ │ -0029c250: 5f73 6576 6572 6974 790a 2020 2d20 6e6f _severity. - no │ │ │ -0029c260: 5f72 6562 6f6f 745f 6e65 6564 6564 0a0a _reboot_needed.. │ │ │ -0029c270: 2d20 6e61 6d65 3a20 4669 6e64 2072 6f6f - name: Find roo │ │ │ -0029c280: 743a 7373 685f 6b65 7973 2d6f 776e 6564 t:ssh_keys-owned │ │ │ -0029c290: 206b 6579 730a 2020 616e 7369 626c 652e keys. ansible. │ │ │ -0029c2a0: 6275 696c 7469 6e2e 636f 6d6d 616e 643a builtin.command: │ │ │ -0029c2b0: 2066 696e 6420 2d48 202f 6574 632f 7373 find -H /etc/ss │ │ │ -0029c2c0: 682f 202d 6d61 7864 6570 7468 2031 202d h/ -maxdepth 1 - │ │ │ -0029c2d0: 7573 6572 2072 6f6f 7420 2d72 6567 6578 user root -regex │ │ │ -0029c2e0: 2022 2e2a 5f6b 6579 2422 0a20 2020 202d ".*_key$". - │ │ │ -0029c2f0: 7479 7065 2066 202d 6772 6f75 7020 7373 type f -group ss │ │ │ -0029c300: 685f 6b65 7973 202d 7065 726d 202f 752b h_keys -perm /u+ │ │ │ -0029c310: 7873 2c67 2b78 7772 732c 6f2b 7877 7274 xs,g+xwrs,o+xwrt │ │ │ -0029c320: 0a20 2072 6567 6973 7465 723a 2064 6564 . register: ded │ │ │ -0029c330: 6963 6174 6564 5f67 726f 7570 5f6f 776e icated_group_own │ │ │ -0029c340: 6564 5f6b 6579 730a 2020 6368 616e 6765 ed_keys. change │ │ │ -0029c350: 645f 7768 656e 3a20 6661 6c73 650a 2020 d_when: false. │ │ │ -0029c360: 6661 696c 6564 5f77 6865 6e3a 2066 616c failed_when: fal │ │ │ -0029c370: 7365 0a20 2063 6865 636b 5f6d 6f64 653a se. check_mode: │ │ │ -0029c380: 2066 616c 7365 0a20 2077 6865 6e3a 2027 false. when: ' │ │ │ -0029c390: 226b 6572 6e65 6c22 2069 6e20 616e 7369 "kernel" in ansi │ │ │ -0029c3a0: 626c 655f 6661 6374 732e 7061 636b 6167 ble_facts.packag │ │ │ -0029c3b0: 6573 270a 2020 7461 6773 3a0a 2020 2d20 es'. tags:. - │ │ │ -0029c3c0: 4e49 5354 2d38 3030 2d31 3731 2d33 2e31 NIST-800-171-3.1 │ │ │ -0029c3d0: 2e31 330a 2020 2d20 4e49 5354 2d38 3030 .13. - NIST-800 │ │ │ -0029c3e0: 2d31 3731 2d33 2e31 332e 3130 0a20 202d -171-3.13.10. - │ │ │ -0029c3f0: 204e 4953 542d 3830 302d 3533 2d41 432d NIST-800-53-AC- │ │ │ -0029c400: 3137 2861 290a 2020 2d20 4e49 5354 2d38 17(a). - NIST-8 │ │ │ -0029c410: 3030 2d35 332d 4143 2d36 2831 290a 2020 00-53-AC-6(1). │ │ │ -0029c420: 2d20 4e49 5354 2d38 3030 2d35 332d 434d - NIST-800-53-CM │ │ │ -0029c430: 2d36 2861 290a 2020 2d20 5043 492d 4453 -6(a). - PCI-DS │ │ │ -0029c440: 532d 5265 712d 322e 322e 340a 2020 2d20 S-Req-2.2.4. - │ │ │ -0029c450: 5043 492d 4453 5376 342d 322e 320a 2020 PCI-DSSv4-2.2. │ │ │ -0029c460: 2d20 5043 492d 4453 5376 342d 322e 322e - PCI-DSSv4-2.2. │ │ │ -0029c470: 360a 2020 2d20 636f 6e66 6967 7572 655f 6. - configure_ │ │ │ -0029c480: 7374 7261 7465 6779 0a20 202d 2066 696c strategy. - fil │ │ │ -0029c490: 655f 7065 726d 6973 7369 6f6e 735f 7373 e_permissions_ss │ │ │ -0029c4a0: 6864 5f70 7269 7661 7465 5f6b 6579 0a20 hd_private_key. │ │ │ -0029c4b0: 202d 206c 6f77 5f63 6f6d 706c 6578 6974 - low_complexit │ │ │ -0029c4c0: 790a 2020 2d20 6c6f 775f 6469 7372 7570 y. - low_disrup │ │ │ -0029c4d0: 7469 6f6e 0a20 202d 206d 6564 6975 6d5f tion. - medium_ │ │ │ -0029c4e0: 7365 7665 7269 7479 0a20 202d 206e 6f5f severity. - no_ │ │ │ -0029c4f0: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d reboot_needed..- │ │ │ -0029c500: 206e 616d 653a 2053 6574 2070 6572 6d69 name: Set permi │ │ │ -0029c510: 7373 696f 6e73 2066 6f72 2072 6f6f 743a ssions for root: │ │ │ -0029c520: 7373 685f 6b65 7973 2d6f 776e 6564 206b ssh_keys-owned k │ │ │ -0029c530: 6579 730a 2020 616e 7369 626c 652e 6275 eys. ansible.bu │ │ │ -0029c540: 696c 7469 6e2e 6669 6c65 3a0a 2020 2020 iltin.file:. │ │ │ -0029c550: 7061 7468 3a20 277b 7b20 6974 656d 207d path: '{{ item } │ │ │ -0029c560: 7d27 0a20 2020 206d 6f64 653a 2075 2d78 }'. mode: u-x │ │ │ -0029c570: 732c 672d 7877 7273 2c6f 2d78 7772 740a s,g-xwrs,o-xwrt. │ │ │ -0029c580: 2020 2020 7374 6174 653a 2066 696c 650a state: file. │ │ │ -0029c590: 2020 7769 7468 5f69 7465 6d73 3a0a 2020 with_items:. │ │ │ -0029c5a0: 2d20 277b 7b20 6465 6469 6361 7465 645f - '{{ dedicated_ │ │ │ -0029c5b0: 6772 6f75 705f 6f77 6e65 645f 6b65 7973 group_owned_keys │ │ │ -0029c5c0: 2e73 7464 6f75 745f 6c69 6e65 7320 7d7d .stdout_lines }} │ │ │ -0029c5d0: 270a 2020 7768 656e 3a20 2722 6b65 726e '. when: '"kern │ │ │ -0029c5e0: 656c 2220 696e 2061 6e73 6962 6c65 5f66 el" in ansible_f │ │ │ -0029c5f0: 6163 7473 2e70 6163 6b61 6765 7327 0a20 acts.packages'. │ │ │ -0029c600: 2074 6167 733a 0a20 202d 204e 4953 542d tags:. - NIST- │ │ │ -0029c610: 3830 302d 3137 312d 332e 312e 3133 0a20 800-171-3.1.13. │ │ │ -0029c620: 202d 204e 4953 542d 3830 302d 3137 312d - NIST-800-171- │ │ │ -0029c630: 332e 3133 2e31 300a 2020 2d20 4e49 5354 3.13.10. - NIST │ │ │ -0029c640: 2d38 3030 2d35 332d 4143 2d31 3728 6129 -800-53-AC-17(a) │ │ │ -0029c650: 0a20 202d 204e 4953 542d 3830 302d 3533 . - NIST-800-53 │ │ │ -0029c660: 2d41 432d 3628 3129 0a20 202d 204e 4953 -AC-6(1). - NIS │ │ │ -0029c670: 542d 3830 302d 3533 2d43 4d2d 3628 6129 T-800-53-CM-6(a) │ │ │ -0029c680: 0a20 202d 2050 4349 2d44 5353 2d52 6571 . - PCI-DSS-Req │ │ │ -0029c690: 2d32 2e32 2e34 0a20 202d 2050 4349 2d44 -2.2.4. - PCI-D │ │ │ -0029c6a0: 5353 7634 2d32 2e32 0a20 202d 2050 4349 SSv4-2.2. - PCI │ │ │ -0029c6b0: 2d44 5353 7634 2d32 2e32 2e36 0a20 202d -DSSv4-2.2.6. - │ │ │ -0029c6c0: 2063 6f6e 6669 6775 7265 5f73 7472 6174 configure_strat │ │ │ -0029c6d0: 6567 790a 2020 2d20 6669 6c65 5f70 6572 egy. - file_per │ │ │ -0029c6e0: 6d69 7373 696f 6e73 5f73 7368 645f 7072 missions_sshd_pr │ │ │ -0029c6f0: 6976 6174 655f 6b65 790a 2020 2d20 6c6f ivate_key. - lo │ │ │ -0029c700: 775f 636f 6d70 6c65 7869 7479 0a20 202d w_complexity. - │ │ │ -0029c710: 206c 6f77 5f64 6973 7275 7074 696f 6e0a low_disruption. │ │ │ -0029c720: 2020 2d20 6d65 6469 756d 5f73 6576 6572 - medium_sever │ │ │ -0029c730: 6974 790a 2020 2d20 6e6f 5f72 6562 6f6f ity. - no_reboo │ │ │ -0029c740: 745f 6e65 6564 6564 0a3c 2f63 6f64 653e t_needed. │ │ │ +0029b920: 2041 6e73 6962 6c65 2073 6e69 7070 6574 Ansible snippet │ │ │ +0029b930: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...

Complexity │ │ │ +0029b9c0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ +0029b9e0: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ +0029b9f0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +0029ba00: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ +0029ba10: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ +0029ba30: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:configure< │ │ │ +0029ba50: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
- name: G
│ │ │ +0029ba70: 6174 6865 7220 7468 6520 7061 636b 6167  ather the packag
│ │ │ +0029ba80: 6520 6661 6374 730a 2020 7061 636b 6167  e facts.  packag
│ │ │ +0029ba90: 655f 6661 6374 733a 0a20 2020 206d 616e  e_facts:.    man
│ │ │ +0029baa0: 6167 6572 3a20 6175 746f 0a20 2074 6167  ager: auto.  tag
│ │ │ +0029bab0: 733a 0a20 202d 204e 4953 542d 3830 302d  s:.  - NIST-800-
│ │ │ +0029bac0: 3137 312d 332e 312e 3133 0a20 202d 204e  171-3.1.13.  - N
│ │ │ +0029bad0: 4953 542d 3830 302d 3137 312d 332e 3133  IST-800-171-3.13
│ │ │ +0029bae0: 2e31 300a 2020 2d20 4e49 5354 2d38 3030  .10.  - NIST-800
│ │ │ +0029baf0: 2d35 332d 4143 2d31 3728 6129 0a20 202d  -53-AC-17(a).  -
│ │ │ +0029bb00: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ +0029bb10: 3628 3129 0a20 202d 204e 4953 542d 3830  6(1).  - NIST-80
│ │ │ +0029bb20: 302d 3533 2d43 4d2d 3628 6129 0a20 202d  0-53-CM-6(a).  -
│ │ │ +0029bb30: 2050 4349 2d44 5353 2d52 6571 2d32 2e32   PCI-DSS-Req-2.2
│ │ │ +0029bb40: 2e34 0a20 202d 2050 4349 2d44 5353 7634  .4.  - PCI-DSSv4
│ │ │ +0029bb50: 2d32 2e32 0a20 202d 2050 4349 2d44 5353  -2.2.  - PCI-DSS
│ │ │ +0029bb60: 7634 2d32 2e32 2e36 0a20 202d 2063 6f6e  v4-2.2.6.  - con
│ │ │ +0029bb70: 6669 6775 7265 5f73 7472 6174 6567 790a  figure_strategy.
│ │ │ +0029bb80: 2020 2d20 6669 6c65 5f70 6572 6d69 7373    - file_permiss
│ │ │ +0029bb90: 696f 6e73 5f73 7368 645f 7072 6976 6174  ions_sshd_privat
│ │ │ +0029bba0: 655f 6b65 790a 2020 2d20 6c6f 775f 636f  e_key.  - low_co
│ │ │ +0029bbb0: 6d70 6c65 7869 7479 0a20 202d 206c 6f77  mplexity.  - low
│ │ │ +0029bbc0: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +0029bbd0: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ +0029bbe0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ +0029bbf0: 6564 6564 0a0a 2d20 6e61 6d65 3a20 4669  eded..- name: Fi
│ │ │ +0029bc00: 6e64 2072 6f6f 743a 726f 6f74 2d6f 776e  nd root:root-own
│ │ │ +0029bc10: 6564 206b 6579 730a 2020 616e 7369 626c  ed keys.  ansibl
│ │ │ +0029bc20: 652e 6275 696c 7469 6e2e 636f 6d6d 616e  e.builtin.comman
│ │ │ +0029bc30: 643a 2066 696e 6420 2d48 202f 6574 632f  d: find -H /etc/
│ │ │ +0029bc40: 7373 682f 202d 6d61 7864 6570 7468 2031  ssh/ -maxdepth 1
│ │ │ +0029bc50: 202d 7573 6572 2072 6f6f 7420 2d72 6567   -user root -reg
│ │ │ +0029bc60: 6578 2022 2e2a 5f6b 6579 2422 0a20 2020  ex ".*_key$".   
│ │ │ +0029bc70: 202d 7479 7065 2066 202d 6772 6f75 7020   -type f -group 
│ │ │ +0029bc80: 726f 6f74 202d 7065 726d 202f 752b 7873  root -perm /u+xs
│ │ │ +0029bc90: 2c67 2b78 7772 732c 6f2b 7877 7274 0a20  ,g+xwrs,o+xwrt. 
│ │ │ +0029bca0: 2072 6567 6973 7465 723a 2072 6f6f 745f   register: root_
│ │ │ +0029bcb0: 6f77 6e65 645f 6b65 7973 0a20 2063 6861  owned_keys.  cha
│ │ │ +0029bcc0: 6e67 6564 5f77 6865 6e3a 2066 616c 7365  nged_when: false
│ │ │ +0029bcd0: 0a20 2066 6169 6c65 645f 7768 656e 3a20  .  failed_when: 
│ │ │ +0029bce0: 6661 6c73 650a 2020 6368 6563 6b5f 6d6f  false.  check_mo
│ │ │ +0029bcf0: 6465 3a20 6661 6c73 650a 2020 7768 656e  de: false.  when
│ │ │ +0029bd00: 3a20 2722 6b65 726e 656c 2220 696e 2061  : '"kernel" in a
│ │ │ +0029bd10: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +0029bd20: 6b61 6765 7327 0a20 2074 6167 733a 0a20  kages'.  tags:. 
│ │ │ +0029bd30: 202d 204e 4953 542d 3830 302d 3137 312d   - NIST-800-171-
│ │ │ +0029bd40: 332e 312e 3133 0a20 202d 204e 4953 542d  3.1.13.  - NIST-
│ │ │ +0029bd50: 3830 302d 3137 312d 332e 3133 2e31 300a  800-171-3.13.10.
│ │ │ +0029bd60: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +0029bd70: 4143 2d31 3728 6129 0a20 202d 204e 4953  AC-17(a).  - NIS
│ │ │ +0029bd80: 542d 3830 302d 3533 2d41 432d 3628 3129  T-800-53-AC-6(1)
│ │ │ +0029bd90: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +0029bda0: 2d43 4d2d 3628 6129 0a20 202d 2050 4349  -CM-6(a).  - PCI
│ │ │ +0029bdb0: 2d44 5353 2d52 6571 2d32 2e32 2e34 0a20  -DSS-Req-2.2.4. 
│ │ │ +0029bdc0: 202d 2050 4349 2d44 5353 7634 2d32 2e32   - PCI-DSSv4-2.2
│ │ │ +0029bdd0: 0a20 202d 2050 4349 2d44 5353 7634 2d32  .  - PCI-DSSv4-2
│ │ │ +0029bde0: 2e32 2e36 0a20 202d 2063 6f6e 6669 6775  .2.6.  - configu
│ │ │ +0029bdf0: 7265 5f73 7472 6174 6567 790a 2020 2d20  re_strategy.  - 
│ │ │ +0029be00: 6669 6c65 5f70 6572 6d69 7373 696f 6e73  file_permissions
│ │ │ +0029be10: 5f73 7368 645f 7072 6976 6174 655f 6b65  _sshd_private_ke
│ │ │ +0029be20: 790a 2020 2d20 6c6f 775f 636f 6d70 6c65  y.  - low_comple
│ │ │ +0029be30: 7869 7479 0a20 202d 206c 6f77 5f64 6973  xity.  - low_dis
│ │ │ +0029be40: 7275 7074 696f 6e0a 2020 2d20 6d65 6469  ruption.  - medi
│ │ │ +0029be50: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ +0029be60: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ +0029be70: 0a0a 2d20 6e61 6d65 3a20 5365 7420 7065  ..- name: Set pe
│ │ │ +0029be80: 726d 6973 7369 6f6e 7320 666f 7220 726f  rmissions for ro
│ │ │ +0029be90: 6f74 3a72 6f6f 742d 6f77 6e65 6420 6b65  ot:root-owned ke
│ │ │ +0029bea0: 7973 0a20 2061 6e73 6962 6c65 2e62 7569  ys.  ansible.bui
│ │ │ +0029beb0: 6c74 696e 2e66 696c 653a 0a20 2020 2070  ltin.file:.    p
│ │ │ +0029bec0: 6174 683a 2027 7b7b 2069 7465 6d20 7d7d  ath: '{{ item }}
│ │ │ +0029bed0: 270a 2020 2020 6d6f 6465 3a20 752d 7873  '.    mode: u-xs
│ │ │ +0029bee0: 2c67 2d78 7772 732c 6f2d 7877 7274 0a20  ,g-xwrs,o-xwrt. 
│ │ │ +0029bef0: 2020 2073 7461 7465 3a20 6669 6c65 0a20     state: file. 
│ │ │ +0029bf00: 2077 6974 685f 6974 656d 733a 0a20 202d   with_items:.  -
│ │ │ +0029bf10: 2027 7b7b 2072 6f6f 745f 6f77 6e65 645f   '{{ root_owned_
│ │ │ +0029bf20: 6b65 7973 2e73 7464 6f75 745f 6c69 6e65  keys.stdout_line
│ │ │ +0029bf30: 7320 7d7d 270a 2020 7768 656e 3a20 2722  s }}'.  when: '"
│ │ │ +0029bf40: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ +0029bf50: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +0029bf60: 7327 0a20 2074 6167 733a 0a20 202d 204e  s'.  tags:.  - N
│ │ │ +0029bf70: 4953 542d 3830 302d 3137 312d 332e 312e  IST-800-171-3.1.
│ │ │ +0029bf80: 3133 0a20 202d 204e 4953 542d 3830 302d  13.  - NIST-800-
│ │ │ +0029bf90: 3137 312d 332e 3133 2e31 300a 2020 2d20  171-3.13.10.  - 
│ │ │ +0029bfa0: 4e49 5354 2d38 3030 2d35 332d 4143 2d31  NIST-800-53-AC-1
│ │ │ +0029bfb0: 3728 6129 0a20 202d 204e 4953 542d 3830  7(a).  - NIST-80
│ │ │ +0029bfc0: 302d 3533 2d41 432d 3628 3129 0a20 202d  0-53-AC-6(1).  -
│ │ │ +0029bfd0: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +0029bfe0: 3628 6129 0a20 202d 2050 4349 2d44 5353  6(a).  - PCI-DSS
│ │ │ +0029bff0: 2d52 6571 2d32 2e32 2e34 0a20 202d 2050  -Req-2.2.4.  - P
│ │ │ +0029c000: 4349 2d44 5353 7634 2d32 2e32 0a20 202d  CI-DSSv4-2.2.  -
│ │ │ +0029c010: 2050 4349 2d44 5353 7634 2d32 2e32 2e36   PCI-DSSv4-2.2.6
│ │ │ +0029c020: 0a20 202d 2063 6f6e 6669 6775 7265 5f73  .  - configure_s
│ │ │ +0029c030: 7472 6174 6567 790a 2020 2d20 6669 6c65  trategy.  - file
│ │ │ +0029c040: 5f70 6572 6d69 7373 696f 6e73 5f73 7368  _permissions_ssh
│ │ │ +0029c050: 645f 7072 6976 6174 655f 6b65 790a 2020  d_private_key.  
│ │ │ +0029c060: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ +0029c070: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ +0029c080: 696f 6e0a 2020 2d20 6d65 6469 756d 5f73  ion.  - medium_s
│ │ │ +0029c090: 6576 6572 6974 790a 2020 2d20 6e6f 5f72  everity.  - no_r
│ │ │ +0029c0a0: 6562 6f6f 745f 6e65 6564 6564 0a0a 2d20  eboot_needed..- 
│ │ │ +0029c0b0: 6e61 6d65 3a20 4669 6e64 2072 6f6f 743a  name: Find root:
│ │ │ +0029c0c0: 7373 685f 6b65 7973 2d6f 776e 6564 206b  ssh_keys-owned k
│ │ │ +0029c0d0: 6579 730a 2020 616e 7369 626c 652e 6275  eys.  ansible.bu
│ │ │ +0029c0e0: 696c 7469 6e2e 636f 6d6d 616e 643a 2066  iltin.command: f
│ │ │ +0029c0f0: 696e 6420 2d48 202f 6574 632f 7373 682f  ind -H /etc/ssh/
│ │ │ +0029c100: 202d 6d61 7864 6570 7468 2031 202d 7573   -maxdepth 1 -us
│ │ │ +0029c110: 6572 2072 6f6f 7420 2d72 6567 6578 2022  er root -regex "
│ │ │ +0029c120: 2e2a 5f6b 6579 2422 0a20 2020 202d 7479  .*_key$".    -ty
│ │ │ +0029c130: 7065 2066 202d 6772 6f75 7020 7373 685f  pe f -group ssh_
│ │ │ +0029c140: 6b65 7973 202d 7065 726d 202f 752b 7873  keys -perm /u+xs
│ │ │ +0029c150: 2c67 2b78 7772 732c 6f2b 7877 7274 0a20  ,g+xwrs,o+xwrt. 
│ │ │ +0029c160: 2072 6567 6973 7465 723a 2064 6564 6963   register: dedic
│ │ │ +0029c170: 6174 6564 5f67 726f 7570 5f6f 776e 6564  ated_group_owned
│ │ │ +0029c180: 5f6b 6579 730a 2020 6368 616e 6765 645f  _keys.  changed_
│ │ │ +0029c190: 7768 656e 3a20 6661 6c73 650a 2020 6661  when: false.  fa
│ │ │ +0029c1a0: 696c 6564 5f77 6865 6e3a 2066 616c 7365  iled_when: false
│ │ │ +0029c1b0: 0a20 2063 6865 636b 5f6d 6f64 653a 2066  .  check_mode: f
│ │ │ +0029c1c0: 616c 7365 0a20 2077 6865 6e3a 2027 226b  alse.  when: '"k
│ │ │ +0029c1d0: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ +0029c1e0: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +0029c1f0: 270a 2020 7461 6773 3a0a 2020 2d20 4e49  '.  tags:.  - NI
│ │ │ +0029c200: 5354 2d38 3030 2d31 3731 2d33 2e31 2e31  ST-800-171-3.1.1
│ │ │ +0029c210: 330a 2020 2d20 4e49 5354 2d38 3030 2d31  3.  - NIST-800-1
│ │ │ +0029c220: 3731 2d33 2e31 332e 3130 0a20 202d 204e  71-3.13.10.  - N
│ │ │ +0029c230: 4953 542d 3830 302d 3533 2d41 432d 3137  IST-800-53-AC-17
│ │ │ +0029c240: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ +0029c250: 2d35 332d 4143 2d36 2831 290a 2020 2d20  -53-AC-6(1).  - 
│ │ │ +0029c260: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ +0029c270: 2861 290a 2020 2d20 5043 492d 4453 532d  (a).  - PCI-DSS-
│ │ │ +0029c280: 5265 712d 322e 322e 340a 2020 2d20 5043  Req-2.2.4.  - PC
│ │ │ +0029c290: 492d 4453 5376 342d 322e 320a 2020 2d20  I-DSSv4-2.2.  - 
│ │ │ +0029c2a0: 5043 492d 4453 5376 342d 322e 322e 360a  PCI-DSSv4-2.2.6.
│ │ │ +0029c2b0: 2020 2d20 636f 6e66 6967 7572 655f 7374    - configure_st
│ │ │ +0029c2c0: 7261 7465 6779 0a20 202d 2066 696c 655f  rategy.  - file_
│ │ │ +0029c2d0: 7065 726d 6973 7369 6f6e 735f 7373 6864  permissions_sshd
│ │ │ +0029c2e0: 5f70 7269 7661 7465 5f6b 6579 0a20 202d  _private_key.  -
│ │ │ +0029c2f0: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ +0029c300: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ +0029c310: 6f6e 0a20 202d 206d 6564 6975 6d5f 7365  on.  - medium_se
│ │ │ +0029c320: 7665 7269 7479 0a20 202d 206e 6f5f 7265  verity.  - no_re
│ │ │ +0029c330: 626f 6f74 5f6e 6565 6465 640a 0a2d 206e  boot_needed..- n
│ │ │ +0029c340: 616d 653a 2053 6574 2070 6572 6d69 7373  ame: Set permiss
│ │ │ +0029c350: 696f 6e73 2066 6f72 2072 6f6f 743a 7373  ions for root:ss
│ │ │ +0029c360: 685f 6b65 7973 2d6f 776e 6564 206b 6579  h_keys-owned key
│ │ │ +0029c370: 730a 2020 616e 7369 626c 652e 6275 696c  s.  ansible.buil
│ │ │ +0029c380: 7469 6e2e 6669 6c65 3a0a 2020 2020 7061  tin.file:.    pa
│ │ │ +0029c390: 7468 3a20 277b 7b20 6974 656d 207d 7d27  th: '{{ item }}'
│ │ │ +0029c3a0: 0a20 2020 206d 6f64 653a 2075 2d78 732c  .    mode: u-xs,
│ │ │ +0029c3b0: 672d 7877 7273 2c6f 2d78 7772 740a 2020  g-xwrs,o-xwrt.  
│ │ │ +0029c3c0: 2020 7374 6174 653a 2066 696c 650a 2020    state: file.  
│ │ │ +0029c3d0: 7769 7468 5f69 7465 6d73 3a0a 2020 2d20  with_items:.  - 
│ │ │ +0029c3e0: 277b 7b20 6465 6469 6361 7465 645f 6772  '{{ dedicated_gr
│ │ │ +0029c3f0: 6f75 705f 6f77 6e65 645f 6b65 7973 2e73  oup_owned_keys.s
│ │ │ +0029c400: 7464 6f75 745f 6c69 6e65 7320 7d7d 270a  tdout_lines }}'.
│ │ │ +0029c410: 2020 7768 656e 3a20 2722 6b65 726e 656c    when: '"kernel
│ │ │ +0029c420: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +0029c430: 7473 2e70 6163 6b61 6765 7327 0a20 2074  ts.packages'.  t
│ │ │ +0029c440: 6167 733a 0a20 202d 204e 4953 542d 3830  ags:.  - NIST-80
│ │ │ +0029c450: 302d 3137 312d 332e 312e 3133 0a20 202d  0-171-3.1.13.  -
│ │ │ +0029c460: 204e 4953 542d 3830 302d 3137 312d 332e   NIST-800-171-3.
│ │ │ +0029c470: 3133 2e31 300a 2020 2d20 4e49 5354 2d38  13.10.  - NIST-8
│ │ │ +0029c480: 3030 2d35 332d 4143 2d31 3728 6129 0a20  00-53-AC-17(a). 
│ │ │ +0029c490: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ +0029c4a0: 432d 3628 3129 0a20 202d 204e 4953 542d  C-6(1).  - NIST-
│ │ │ +0029c4b0: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ +0029c4c0: 202d 2050 4349 2d44 5353 2d52 6571 2d32   - PCI-DSS-Req-2
│ │ │ +0029c4d0: 2e32 2e34 0a20 202d 2050 4349 2d44 5353  .2.4.  - PCI-DSS
│ │ │ +0029c4e0: 7634 2d32 2e32 0a20 202d 2050 4349 2d44  v4-2.2.  - PCI-D
│ │ │ +0029c4f0: 5353 7634 2d32 2e32 2e36 0a20 202d 2063  SSv4-2.2.6.  - c
│ │ │ +0029c500: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ +0029c510: 790a 2020 2d20 6669 6c65 5f70 6572 6d69  y.  - file_permi
│ │ │ +0029c520: 7373 696f 6e73 5f73 7368 645f 7072 6976  ssions_sshd_priv
│ │ │ +0029c530: 6174 655f 6b65 790a 2020 2d20 6c6f 775f  ate_key.  - low_
│ │ │ +0029c540: 636f 6d70 6c65 7869 7479 0a20 202d 206c  complexity.  - l
│ │ │ +0029c550: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ +0029c560: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ +0029c570: 790a 2020 2d20 6e6f 5f72 6562 6f6f 745f  y.  - no_reboot_
│ │ │ +0029c580: 6e65 6564 6564 0a3c 2f63 6f64 653e 3c2f  needed.
Remediati │ │ │ +0029c640: 6f6e 2050 7570 7065 7420 736e 6970 7065 on Puppet snippe │ │ │ +0029c650: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
...inclu │ │ │ +0029c6a0: 6465 2073 7368 5f70 7269 7661 7465 5f6b de ssh_private_k │ │ │ +0029c6b0: 6579 5f70 6572 6d73 0a0a 636c 6173 7320 ey_perms..class │ │ │ +0029c6c0: 7373 685f 7072 6976 6174 655f 6b65 795f ssh_private_key_ │ │ │ +0029c6d0: 7065 726d 7320 7b0a 2020 6578 6563 207b perms {. exec { │ │ │ +0029c6e0: 2027 7373 6864 5f70 7269 765f 6b65 7927 'sshd_priv_key' │ │ │ +0029c6f0: 3a0a 2020 2020 636f 6d6d 616e 6420 3d26 :. command =& │ │ │ +0029c700: 6774 3b20 2263 686d 6f64 2030 3630 3020 gt; "chmod 0600 │ │ │ +0029c710: 2f65 7463 2f73 7368 2f2a 5f6b 6579 222c /etc/ssh/*_key", │ │ │ +0029c720: 0a20 2020 2070 6174 6820 2020 203d 2667 . path =&g │ │ │ +0029c730: 743b 2027 2f62 696e 3a2f 7573 722f 6269 t; '/bin:/usr/bi │ │ │ +0029c740: 6e27 0a20 207d 0a7d 0a3c 2f63 6f64 653e n'. }.}. │ │ │ 0029c750: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063
Remedia │ │ │ -0029dbc0: 7469 6f6e 2050 7570 7065 7420 736e 6970 tion Puppet snip │ │ │ -0029dbd0: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ -0029dbe0: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -0029dbf0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -0029dc00: 7365 2220 6964 3d22 6964 3838 3822 3e3c se" id="id888">< │ │ │ -0029dc10: 7072 653e 3c63 6f64 653e 696e 636c 7564 pre>includ │ │ │ -0029dc20: 6520 7373 685f 7075 626c 6963 5f6b 6579 e ssh_public_key │ │ │ -0029dc30: 5f70 6572 6d73 0a0a 636c 6173 7320 7373 _perms..class ss │ │ │ -0029dc40: 685f 7075 626c 6963 5f6b 6579 5f70 6572 h_public_key_per │ │ │ -0029dc50: 6d73 207b 0a20 2065 7865 6320 7b20 2773 ms {. exec { 's │ │ │ -0029dc60: 7368 645f 7075 625f 6b65 7927 3a0a 2020 shd_pub_key':. │ │ │ -0029dc70: 2020 636f 6d6d 616e 6420 3d26 6774 3b20 command => │ │ │ -0029dc80: 2263 686d 6f64 2030 3634 3420 2f65 7463 "chmod 0644 /etc │ │ │ -0029dc90: 2f73 7368 2f2a 2e70 7562 222c 0a20 2020 /ssh/*.pub",. │ │ │ -0029dca0: 2070 6174 6820 2020 203d 2667 743b 2027 path => ' │ │ │ -0029dcb0: 2f62 696e 3a2f 7573 722f 6269 6e27 0a20 /bin:/usr/bin'. │ │ │ -0029dcc0: 207d 0a7d 0a3c 2f63 6f64 653e 3c2f 7072 }.}.
Remediation │ │ │ -0029dd80: 2041 6e73 6962 6c65 2073 6e69 7070 6574 Ansible snippet │ │ │ -0029dd90: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Complexity │ │ │ -0029de20: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ -0029de40: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ -0029de50: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -0029de60: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ -0029de70: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ -0029de90: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:configure< │ │ │ -0029deb0: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
- name: G
│ │ │ -0029ded0: 6174 6865 7220 7468 6520 7061 636b 6167  ather the packag
│ │ │ -0029dee0: 6520 6661 6374 730a 2020 7061 636b 6167  e facts.  packag
│ │ │ -0029def0: 655f 6661 6374 733a 0a20 2020 206d 616e  e_facts:.    man
│ │ │ -0029df00: 6167 6572 3a20 6175 746f 0a20 2074 6167  ager: auto.  tag
│ │ │ -0029df10: 733a 0a20 202d 204e 4953 542d 3830 302d  s:.  - NIST-800-
│ │ │ -0029df20: 3137 312d 332e 312e 3133 0a20 202d 204e  171-3.1.13.  - N
│ │ │ -0029df30: 4953 542d 3830 302d 3137 312d 332e 3133  IST-800-171-3.13
│ │ │ -0029df40: 2e31 300a 2020 2d20 4e49 5354 2d38 3030  .10.  - NIST-800
│ │ │ -0029df50: 2d35 332d 4143 2d31 3728 6129 0a20 202d  -53-AC-17(a).  -
│ │ │ -0029df60: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ -0029df70: 3628 3129 0a20 202d 204e 4953 542d 3830  6(1).  - NIST-80
│ │ │ -0029df80: 302d 3533 2d43 4d2d 3628 6129 0a20 202d  0-53-CM-6(a).  -
│ │ │ -0029df90: 2050 4349 2d44 5353 2d52 6571 2d32 2e32   PCI-DSS-Req-2.2
│ │ │ -0029dfa0: 2e34 0a20 202d 2050 4349 2d44 5353 7634  .4.  - PCI-DSSv4
│ │ │ -0029dfb0: 2d32 2e32 0a20 202d 2050 4349 2d44 5353  -2.2.  - PCI-DSS
│ │ │ -0029dfc0: 7634 2d32 2e32 2e36 0a20 202d 2063 6f6e  v4-2.2.6.  - con
│ │ │ -0029dfd0: 6669 6775 7265 5f73 7472 6174 6567 790a  figure_strategy.
│ │ │ -0029dfe0: 2020 2d20 6669 6c65 5f70 6572 6d69 7373    - file_permiss
│ │ │ -0029dff0: 696f 6e73 5f73 7368 645f 7075 625f 6b65  ions_sshd_pub_ke
│ │ │ -0029e000: 790a 2020 2d20 6c6f 775f 636f 6d70 6c65  y.  - low_comple
│ │ │ -0029e010: 7869 7479 0a20 202d 206c 6f77 5f64 6973  xity.  - low_dis
│ │ │ -0029e020: 7275 7074 696f 6e0a 2020 2d20 6d65 6469  ruption.  - medi
│ │ │ -0029e030: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ -0029e040: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ -0029e050: 0a0a 2d20 6e61 6d65 3a20 4669 6e64 202f  ..- name: Find /
│ │ │ -0029e060: 6574 632f 7373 682f 2066 696c 6528 7329  etc/ssh/ file(s)
│ │ │ -0029e070: 0a20 2061 6e73 6962 6c65 2e62 7569 6c74  .  ansible.built
│ │ │ -0029e080: 696e 2e63 6f6d 6d61 6e64 3a20 6669 6e64  in.command: find
│ │ │ -0029e090: 202d 5020 2f65 7463 2f73 7368 2f20 2d6d   -P /etc/ssh/ -m
│ │ │ -0029e0a0: 6178 6465 7074 6820 3120 2d70 6572 6d20  axdepth 1 -perm 
│ │ │ -0029e0b0: 2f75 2b78 732c 672b 7877 732c 6f2b 7877  /u+xs,g+xws,o+xw
│ │ │ -0029e0c0: 7420 202d 7479 7065 0a20 2020 2066 202d  t  -type.    f -
│ │ │ -0029e0d0: 7265 6765 7874 7970 6520 706f 7369 782d  regextype posix-
│ │ │ -0029e0e0: 6578 7465 6e64 6564 202d 7265 6765 7820  extended -regex 
│ │ │ -0029e0f0: 225e 2e2a 5c2e 7075 6224 220a 2020 7265  "^.*\.pub$".  re
│ │ │ -0029e100: 6769 7374 6572 3a20 6669 6c65 735f 666f  gister: files_fo
│ │ │ -0029e110: 756e 640a 2020 6368 616e 6765 645f 7768  und.  changed_wh
│ │ │ -0029e120: 656e 3a20 6661 6c73 650a 2020 6661 696c  en: false.  fail
│ │ │ -0029e130: 6564 5f77 6865 6e3a 2066 616c 7365 0a20  ed_when: false. 
│ │ │ -0029e140: 2063 6865 636b 5f6d 6f64 653a 2066 616c   check_mode: fal
│ │ │ -0029e150: 7365 0a20 2077 6865 6e3a 2027 226b 6572  se.  when: '"ker
│ │ │ -0029e160: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ -0029e170: 6661 6374 732e 7061 636b 6167 6573 270a  facts.packages'.
│ │ │ -0029e180: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ -0029e190: 2d38 3030 2d31 3731 2d33 2e31 2e31 330a  -800-171-3.1.13.
│ │ │ -0029e1a0: 2020 2d20 4e49 5354 2d38 3030 2d31 3731    - NIST-800-171
│ │ │ -0029e1b0: 2d33 2e31 332e 3130 0a20 202d 204e 4953  -3.13.10.  - NIS
│ │ │ -0029e1c0: 542d 3830 302d 3533 2d41 432d 3137 2861  T-800-53-AC-17(a
│ │ │ -0029e1d0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -0029e1e0: 332d 4143 2d36 2831 290a 2020 2d20 4e49  3-AC-6(1).  - NI
│ │ │ -0029e1f0: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ -0029e200: 290a 2020 2d20 5043 492d 4453 532d 5265  ).  - PCI-DSS-Re
│ │ │ -0029e210: 712d 322e 322e 340a 2020 2d20 5043 492d  q-2.2.4.  - PCI-
│ │ │ -0029e220: 4453 5376 342d 322e 320a 2020 2d20 5043  DSSv4-2.2.  - PC
│ │ │ -0029e230: 492d 4453 5376 342d 322e 322e 360a 2020  I-DSSv4-2.2.6.  
│ │ │ -0029e240: 2d20 636f 6e66 6967 7572 655f 7374 7261  - configure_stra
│ │ │ -0029e250: 7465 6779 0a20 202d 2066 696c 655f 7065  tegy.  - file_pe
│ │ │ -0029e260: 726d 6973 7369 6f6e 735f 7373 6864 5f70  rmissions_sshd_p
│ │ │ -0029e270: 7562 5f6b 6579 0a20 202d 206c 6f77 5f63  ub_key.  - low_c
│ │ │ -0029e280: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f  omplexity.  - lo
│ │ │ -0029e290: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ -0029e2a0: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ -0029e2b0: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ -0029e2c0: 6565 6465 640a 0a2d 206e 616d 653a 2053  eeded..- name: S
│ │ │ -0029e2d0: 6574 2070 6572 6d69 7373 696f 6e73 2066  et permissions f
│ │ │ -0029e2e0: 6f72 202f 6574 632f 7373 682f 2066 696c  or /etc/ssh/ fil
│ │ │ -0029e2f0: 6528 7329 0a20 2061 6e73 6962 6c65 2e62  e(s).  ansible.b
│ │ │ -0029e300: 7569 6c74 696e 2e66 696c 653a 0a20 2020  uiltin.file:.   
│ │ │ -0029e310: 2070 6174 683a 2027 7b7b 2069 7465 6d20   path: '{{ item 
│ │ │ -0029e320: 7d7d 270a 2020 2020 6d6f 6465 3a20 752d  }}'.    mode: u-
│ │ │ -0029e330: 7873 2c67 2d78 7773 2c6f 2d78 7774 0a20  xs,g-xws,o-xwt. 
│ │ │ -0029e340: 2020 2073 7461 7465 3a20 6669 6c65 0a20     state: file. 
│ │ │ -0029e350: 2077 6974 685f 6974 656d 733a 0a20 202d   with_items:.  -
│ │ │ -0029e360: 2027 7b7b 2066 696c 6573 5f66 6f75 6e64   '{{ files_found
│ │ │ -0029e370: 2e73 7464 6f75 745f 6c69 6e65 7320 7d7d  .stdout_lines }}
│ │ │ -0029e380: 270a 2020 7768 656e 3a20 2722 6b65 726e  '.  when: '"kern
│ │ │ -0029e390: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ -0029e3a0: 6163 7473 2e70 6163 6b61 6765 7327 0a20  acts.packages'. 
│ │ │ -0029e3b0: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ -0029e3c0: 3830 302d 3137 312d 332e 312e 3133 0a20  800-171-3.1.13. 
│ │ │ -0029e3d0: 202d 204e 4953 542d 3830 302d 3137 312d   - NIST-800-171-
│ │ │ -0029e3e0: 332e 3133 2e31 300a 2020 2d20 4e49 5354  3.13.10.  - NIST
│ │ │ -0029e3f0: 2d38 3030 2d35 332d 4143 2d31 3728 6129  -800-53-AC-17(a)
│ │ │ -0029e400: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -0029e410: 2d41 432d 3628 3129 0a20 202d 204e 4953  -AC-6(1).  - NIS
│ │ │ -0029e420: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ -0029e430: 0a20 202d 2050 4349 2d44 5353 2d52 6571  .  - PCI-DSS-Req
│ │ │ -0029e440: 2d32 2e32 2e34 0a20 202d 2050 4349 2d44  -2.2.4.  - PCI-D
│ │ │ -0029e450: 5353 7634 2d32 2e32 0a20 202d 2050 4349  SSv4-2.2.  - PCI
│ │ │ -0029e460: 2d44 5353 7634 2d32 2e32 2e36 0a20 202d  -DSSv4-2.2.6.  -
│ │ │ -0029e470: 2063 6f6e 6669 6775 7265 5f73 7472 6174   configure_strat
│ │ │ -0029e480: 6567 790a 2020 2d20 6669 6c65 5f70 6572  egy.  - file_per
│ │ │ -0029e490: 6d69 7373 696f 6e73 5f73 7368 645f 7075  missions_sshd_pu
│ │ │ -0029e4a0: 625f 6b65 790a 2020 2d20 6c6f 775f 636f  b_key.  - low_co
│ │ │ -0029e4b0: 6d70 6c65 7869 7479 0a20 202d 206c 6f77  mplexity.  - low
│ │ │ -0029e4c0: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ -0029e4d0: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ -0029e4e0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ -0029e4f0: 6564 6564 0a3c 2f63 6f64 653e 3c2f 7072  eded.
│ │ │ +0029dbe0: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ +0029dc10: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ +0029dc80: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ +0029dca0: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ +0029dcd0: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
Comple │ │ │ +0029dc60: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ +0029dc70: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ +0029dcb0: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +0029dcc0: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
configure
│ │ │ +0029dd00: 3c70 7265 3e3c 636f 6465 3e2d 206e 616d
- nam
│ │ │ +0029dd10: 653a 2047 6174 6865 7220 7468 6520 7061  e: Gather the pa
│ │ │ +0029dd20: 636b 6167 6520 6661 6374 730a 2020 7061  ckage facts.  pa
│ │ │ +0029dd30: 636b 6167 655f 6661 6374 733a 0a20 2020  ckage_facts:.   
│ │ │ +0029dd40: 206d 616e 6167 6572 3a20 6175 746f 0a20   manager: auto. 
│ │ │ +0029dd50: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ +0029dd60: 3830 302d 3137 312d 332e 312e 3133 0a20  800-171-3.1.13. 
│ │ │ +0029dd70: 202d 204e 4953 542d 3830 302d 3137 312d   - NIST-800-171-
│ │ │ +0029dd80: 332e 3133 2e31 300a 2020 2d20 4e49 5354  3.13.10.  - NIST
│ │ │ +0029dd90: 2d38 3030 2d35 332d 4143 2d31 3728 6129  -800-53-AC-17(a)
│ │ │ +0029dda0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +0029ddb0: 2d41 432d 3628 3129 0a20 202d 204e 4953  -AC-6(1).  - NIS
│ │ │ +0029ddc0: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ +0029ddd0: 0a20 202d 2050 4349 2d44 5353 2d52 6571  .  - PCI-DSS-Req
│ │ │ +0029dde0: 2d32 2e32 2e34 0a20 202d 2050 4349 2d44  -2.2.4.  - PCI-D
│ │ │ +0029ddf0: 5353 7634 2d32 2e32 0a20 202d 2050 4349  SSv4-2.2.  - PCI
│ │ │ +0029de00: 2d44 5353 7634 2d32 2e32 2e36 0a20 202d  -DSSv4-2.2.6.  -
│ │ │ +0029de10: 2063 6f6e 6669 6775 7265 5f73 7472 6174   configure_strat
│ │ │ +0029de20: 6567 790a 2020 2d20 6669 6c65 5f70 6572  egy.  - file_per
│ │ │ +0029de30: 6d69 7373 696f 6e73 5f73 7368 645f 7075  missions_sshd_pu
│ │ │ +0029de40: 625f 6b65 790a 2020 2d20 6c6f 775f 636f  b_key.  - low_co
│ │ │ +0029de50: 6d70 6c65 7869 7479 0a20 202d 206c 6f77  mplexity.  - low
│ │ │ +0029de60: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +0029de70: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ +0029de80: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ +0029de90: 6564 6564 0a0a 2d20 6e61 6d65 3a20 4669  eded..- name: Fi
│ │ │ +0029dea0: 6e64 202f 6574 632f 7373 682f 2066 696c  nd /etc/ssh/ fil
│ │ │ +0029deb0: 6528 7329 0a20 2061 6e73 6962 6c65 2e62  e(s).  ansible.b
│ │ │ +0029dec0: 7569 6c74 696e 2e63 6f6d 6d61 6e64 3a20  uiltin.command: 
│ │ │ +0029ded0: 6669 6e64 202d 5020 2f65 7463 2f73 7368  find -P /etc/ssh
│ │ │ +0029dee0: 2f20 2d6d 6178 6465 7074 6820 3120 2d70  / -maxdepth 1 -p
│ │ │ +0029def0: 6572 6d20 2f75 2b78 732c 672b 7877 732c  erm /u+xs,g+xws,
│ │ │ +0029df00: 6f2b 7877 7420 202d 7479 7065 0a20 2020  o+xwt  -type.   
│ │ │ +0029df10: 2066 202d 7265 6765 7874 7970 6520 706f   f -regextype po
│ │ │ +0029df20: 7369 782d 6578 7465 6e64 6564 202d 7265  six-extended -re
│ │ │ +0029df30: 6765 7820 225e 2e2a 5c2e 7075 6224 220a  gex "^.*\.pub$".
│ │ │ +0029df40: 2020 7265 6769 7374 6572 3a20 6669 6c65    register: file
│ │ │ +0029df50: 735f 666f 756e 640a 2020 6368 616e 6765  s_found.  change
│ │ │ +0029df60: 645f 7768 656e 3a20 6661 6c73 650a 2020  d_when: false.  
│ │ │ +0029df70: 6661 696c 6564 5f77 6865 6e3a 2066 616c  failed_when: fal
│ │ │ +0029df80: 7365 0a20 2063 6865 636b 5f6d 6f64 653a  se.  check_mode:
│ │ │ +0029df90: 2066 616c 7365 0a20 2077 6865 6e3a 2027   false.  when: '
│ │ │ +0029dfa0: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ +0029dfb0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +0029dfc0: 6573 270a 2020 7461 6773 3a0a 2020 2d20  es'.  tags:.  - 
│ │ │ +0029dfd0: 4e49 5354 2d38 3030 2d31 3731 2d33 2e31  NIST-800-171-3.1
│ │ │ +0029dfe0: 2e31 330a 2020 2d20 4e49 5354 2d38 3030  .13.  - NIST-800
│ │ │ +0029dff0: 2d31 3731 2d33 2e31 332e 3130 0a20 202d  -171-3.13.10.  -
│ │ │ +0029e000: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ +0029e010: 3137 2861 290a 2020 2d20 4e49 5354 2d38  17(a).  - NIST-8
│ │ │ +0029e020: 3030 2d35 332d 4143 2d36 2831 290a 2020  00-53-AC-6(1).  
│ │ │ +0029e030: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +0029e040: 2d36 2861 290a 2020 2d20 5043 492d 4453  -6(a).  - PCI-DS
│ │ │ +0029e050: 532d 5265 712d 322e 322e 340a 2020 2d20  S-Req-2.2.4.  - 
│ │ │ +0029e060: 5043 492d 4453 5376 342d 322e 320a 2020  PCI-DSSv4-2.2.  
│ │ │ +0029e070: 2d20 5043 492d 4453 5376 342d 322e 322e  - PCI-DSSv4-2.2.
│ │ │ +0029e080: 360a 2020 2d20 636f 6e66 6967 7572 655f  6.  - configure_
│ │ │ +0029e090: 7374 7261 7465 6779 0a20 202d 2066 696c  strategy.  - fil
│ │ │ +0029e0a0: 655f 7065 726d 6973 7369 6f6e 735f 7373  e_permissions_ss
│ │ │ +0029e0b0: 6864 5f70 7562 5f6b 6579 0a20 202d 206c  hd_pub_key.  - l
│ │ │ +0029e0c0: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ +0029e0d0: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ +0029e0e0: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ +0029e0f0: 7269 7479 0a20 202d 206e 6f5f 7265 626f  rity.  - no_rebo
│ │ │ +0029e100: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d  ot_needed..- nam
│ │ │ +0029e110: 653a 2053 6574 2070 6572 6d69 7373 696f  e: Set permissio
│ │ │ +0029e120: 6e73 2066 6f72 202f 6574 632f 7373 682f  ns for /etc/ssh/
│ │ │ +0029e130: 2066 696c 6528 7329 0a20 2061 6e73 6962   file(s).  ansib
│ │ │ +0029e140: 6c65 2e62 7569 6c74 696e 2e66 696c 653a  le.builtin.file:
│ │ │ +0029e150: 0a20 2020 2070 6174 683a 2027 7b7b 2069  .    path: '{{ i
│ │ │ +0029e160: 7465 6d20 7d7d 270a 2020 2020 6d6f 6465  tem }}'.    mode
│ │ │ +0029e170: 3a20 752d 7873 2c67 2d78 7773 2c6f 2d78  : u-xs,g-xws,o-x
│ │ │ +0029e180: 7774 0a20 2020 2073 7461 7465 3a20 6669  wt.    state: fi
│ │ │ +0029e190: 6c65 0a20 2077 6974 685f 6974 656d 733a  le.  with_items:
│ │ │ +0029e1a0: 0a20 202d 2027 7b7b 2066 696c 6573 5f66  .  - '{{ files_f
│ │ │ +0029e1b0: 6f75 6e64 2e73 7464 6f75 745f 6c69 6e65  ound.stdout_line
│ │ │ +0029e1c0: 7320 7d7d 270a 2020 7768 656e 3a20 2722  s }}'.  when: '"
│ │ │ +0029e1d0: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ +0029e1e0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +0029e1f0: 7327 0a20 2074 6167 733a 0a20 202d 204e  s'.  tags:.  - N
│ │ │ +0029e200: 4953 542d 3830 302d 3137 312d 332e 312e  IST-800-171-3.1.
│ │ │ +0029e210: 3133 0a20 202d 204e 4953 542d 3830 302d  13.  - NIST-800-
│ │ │ +0029e220: 3137 312d 332e 3133 2e31 300a 2020 2d20  171-3.13.10.  - 
│ │ │ +0029e230: 4e49 5354 2d38 3030 2d35 332d 4143 2d31  NIST-800-53-AC-1
│ │ │ +0029e240: 3728 6129 0a20 202d 204e 4953 542d 3830  7(a).  - NIST-80
│ │ │ +0029e250: 302d 3533 2d41 432d 3628 3129 0a20 202d  0-53-AC-6(1).  -
│ │ │ +0029e260: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +0029e270: 3628 6129 0a20 202d 2050 4349 2d44 5353  6(a).  - PCI-DSS
│ │ │ +0029e280: 2d52 6571 2d32 2e32 2e34 0a20 202d 2050  -Req-2.2.4.  - P
│ │ │ +0029e290: 4349 2d44 5353 7634 2d32 2e32 0a20 202d  CI-DSSv4-2.2.  -
│ │ │ +0029e2a0: 2050 4349 2d44 5353 7634 2d32 2e32 2e36   PCI-DSSv4-2.2.6
│ │ │ +0029e2b0: 0a20 202d 2063 6f6e 6669 6775 7265 5f73  .  - configure_s
│ │ │ +0029e2c0: 7472 6174 6567 790a 2020 2d20 6669 6c65  trategy.  - file
│ │ │ +0029e2d0: 5f70 6572 6d69 7373 696f 6e73 5f73 7368  _permissions_ssh
│ │ │ +0029e2e0: 645f 7075 625f 6b65 790a 2020 2d20 6c6f  d_pub_key.  - lo
│ │ │ +0029e2f0: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ +0029e300: 206c 6f77 5f64 6973 7275 7074 696f 6e0a   low_disruption.
│ │ │ +0029e310: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ +0029e320: 6974 790a 2020 2d20 6e6f 5f72 6562 6f6f  ity.  - no_reboo
│ │ │ +0029e330: 745f 6e65 6564 6564 0a3c 2f63 6f64 653e  t_needed.
│ │ │ +0029e340: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ +0029e3f0: 7469 6f6e 2050 7570 7065 7420 736e 6970 tion Puppet snip │ │ │ +0029e400: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ +0029e410: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +0029e420: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +0029e430: 7365 2220 6964 3d22 6964 3838 3922 3e3c se" id="id889">< │ │ │ +0029e440: 7072 653e 3c63 6f64 653e 696e 636c 7564 pre>includ │ │ │ +0029e450: 6520 7373 685f 7075 626c 6963 5f6b 6579 e ssh_public_key │ │ │ +0029e460: 5f70 6572 6d73 0a0a 636c 6173 7320 7373 _perms..class ss │ │ │ +0029e470: 685f 7075 626c 6963 5f6b 6579 5f70 6572 h_public_key_per │ │ │ +0029e480: 6d73 207b 0a20 2065 7865 6320 7b20 2773 ms {. exec { 's │ │ │ +0029e490: 7368 645f 7075 625f 6b65 7927 3a0a 2020 shd_pub_key':. │ │ │ +0029e4a0: 2020 636f 6d6d 616e 6420 3d26 6774 3b20 command => │ │ │ +0029e4b0: 2263 686d 6f64 2030 3634 3420 2f65 7463 "chmod 0644 /etc │ │ │ +0029e4c0: 2f73 7368 2f2a 2e70 7562 222c 0a20 2020 /ssh/*.pub",. │ │ │ +0029e4d0: 2070 6174 6820 2020 203d 2667 743b 2027 path => ' │ │ │ +0029e4e0: 2f62 696e 3a2f 7573 722f 6269 6e27 0a20 /bin:/usr/bin'. │ │ │ +0029e4f0: 207d 0a7d 0a3c 2f63 6f64 653e 3c2f 7072 }.}.
Remediation An │ │ │ -002a0170: 6163 6f6e 6461 2073 6e69 7070 6574 20e2 aconda snippet . │ │ │ -002a0180: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ -002a0200: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -002a0220: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ -002a0270: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ -002a02a0: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ -002a0210: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ -002a0230: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ -002a0280: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ -002a0290: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
..package --r
│ │ │ -002a02c0: 656d 6f76 653d 786f 7267 2d78 3131 2d73  emove=xorg-x11-s
│ │ │ -002a02d0: 6572 7665 722d 636f 6d6d 6f6e 0a3c 2f63  erver-common.
│ │ │ -002a02f0: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ -002a0390: 6564 6961 7469 6f6e 2050 7570 7065 7420 ediation Puppet │ │ │ -002a03a0: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ -002a03b0: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Com │ │ │ -002a0430: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ -002a0460: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ -002a0480: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -002a0490: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -002a04b0: 2f74 683e 3c74 643e 6469 7361 626c 653c /th>disable< │ │ │ -002a04c0: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
.inc
│ │ │ -002a04e0: 6c75 6465 2072 656d 6f76 655f 786f 7267  lude remove_xorg
│ │ │ -002a04f0: 2d78 3131 2d73 6572 7665 722d 636f 6d6d  -x11-server-comm
│ │ │ -002a0500: 6f6e 0a0a 636c 6173 7320 7265 6d6f 7665  on..class remove
│ │ │ -002a0510: 5f78 6f72 672d 7831 312d 7365 7276 6572  _xorg-x11-server
│ │ │ -002a0520: 2d63 6f6d 6d6f 6e20 7b0a 2020 7061 636b  -common {.  pack
│ │ │ -002a0530: 6167 6520 7b20 2778 6f72 672d 7831 312d  age { 'xorg-x11-
│ │ │ -002a0540: 7365 7276 6572 2d63 6f6d 6d6f 6e27 3a0a  server-common':.
│ │ │ -002a0550: 2020 2020 656e 7375 7265 203d 2667 743b      ensure =>
│ │ │ -002a0560: 2027 7075 7267 6564 272c 0a20 207d 0a7d   'purged',.  }.}
│ │ │ -002a0570: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation Ans │ │ │ -002a0630: 6962 6c65 2073 6e69 7070 6574 20e2 87b2 ible snippet ... │ │ │ -002a0640: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity: │ │ │ -002a0710: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -002a0720: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
- name: 'Remove
│ │ │ -002a0780: 2074 6865 2058 2057 696e 646f 7773 2050   the X Windows P
│ │ │ -002a0790: 6163 6b61 6765 2047 726f 7570 3a20 456e  ackage Group: En
│ │ │ -002a07a0: 7375 7265 2078 6f72 672d 7831 312d 7365  sure xorg-x11-se
│ │ │ -002a07b0: 7276 6572 2d63 6f6d 6d6f 6e20 6973 2072  rver-common is r
│ │ │ -002a07c0: 656d 6f76 6564 270a 2020 616e 7369 626c  emoved'.  ansibl
│ │ │ -002a07d0: 652e 6275 696c 7469 6e2e 7061 636b 6167  e.builtin.packag
│ │ │ -002a07e0: 653a 0a20 2020 206e 616d 653a 2078 6f72  e:.    name: xor
│ │ │ -002a07f0: 672d 7831 312d 7365 7276 6572 2d63 6f6d  g-x11-server-com
│ │ │ -002a0800: 6d6f 6e0a 2020 2020 7374 6174 653a 2061  mon.    state: a
│ │ │ -002a0810: 6273 656e 740a 2020 7461 6773 3a0a 2020  bsent.  tags:.  
│ │ │ -002a0820: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -002a0830: 2d36 2861 290a 2020 2d20 4e49 5354 2d38  -6(a).  - NIST-8
│ │ │ -002a0840: 3030 2d35 332d 434d 2d37 2861 290a 2020  00-53-CM-7(a).  
│ │ │ -002a0850: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -002a0860: 2d37 2862 290a 2020 2d20 6469 7361 626c  -7(b).  - disabl
│ │ │ -002a0870: 655f 7374 7261 7465 6779 0a20 202d 206c  e_strategy.  - l
│ │ │ -002a0880: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ -002a0890: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ -002a08a0: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ -002a08b0: 7269 7479 0a20 202d 206e 6f5f 7265 626f  rity.  - no_rebo
│ │ │ -002a08c0: 6f74 5f6e 6565 6465 640a 2020 2d20 7061  ot_needed.  - pa
│ │ │ -002a08d0: 636b 6167 655f 786f 7267 2d78 3131 2d73  ckage_xorg-x11-s
│ │ │ -002a08e0: 6572 7665 722d 636f 6d6d 6f6e 5f72 656d  erver-common_rem
│ │ │ -002a08f0: 6f76 6564 0a3c 2f63 6f64 653e 3c2f 7072  oved.Remediation
│ │ │ -002a09b0: 2053 6865 6c6c 2073 6372 6970 7420 e287   Shell script ..
│ │ │ -002a09c0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c  .
low
Disru │ │ │ -002a06f0: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ -002a0700: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ -002a0740: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ -002a0750: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
< │ │ │ -002a0a40: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -002a0a60: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -002a0ab0: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>< │ │ │ -002a0ae0: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
.# CAUTION: Th
│ │ │ -002a0b00: 6973 2072 656d 6564 6961 7469 6f6e 2073  is remediation s
│ │ │ -002a0b10: 6372 6970 7420 7769 6c6c 2072 656d 6f76  cript will remov
│ │ │ -002a0b20: 6520 786f 7267 2d78 3131 2d73 6572 7665  e xorg-x11-serve
│ │ │ -002a0b30: 722d 636f 6d6d 6f6e 0a23 2066 726f 6d20  r-common.# from 
│ │ │ -002a0b40: 7468 6520 7379 7374 656d 2c20 616e 6420  the system, and 
│ │ │ -002a0b50: 6d61 7920 7265 6d6f 7665 2061 6e79 2070  may remove any p
│ │ │ -002a0b60: 6163 6b61 6765 730a 2320 7468 6174 2064  ackages.# that d
│ │ │ -002a0b70: 6570 656e 6420 6f6e 2078 6f72 672d 7831  epend on xorg-x1
│ │ │ -002a0b80: 312d 7365 7276 6572 2d63 6f6d 6d6f 6e2e  1-server-common.
│ │ │ -002a0b90: 2045 7865 6375 7465 2074 6869 730a 2320   Execute this.# 
│ │ │ -002a0ba0: 7265 6d65 6469 6174 696f 6e20 4146 5445  remediation AFTE
│ │ │ -002a0bb0: 5220 7465 7374 696e 6720 6f6e 2061 206e  R testing on a n
│ │ │ -002a0bc0: 6f6e 2d70 726f 6475 6374 696f 6e0a 2320  on-production.# 
│ │ │ -002a0bd0: 7379 7374 656d 210a 0a0a 6966 2072 706d  system!...if rpm
│ │ │ -002a0be0: 202d 7120 2d2d 7175 6965 7420 2278 6f72   -q --quiet "xor
│ │ │ -002a0bf0: 672d 7831 312d 7365 7276 6572 2d63 6f6d  g-x11-server-com
│ │ │ -002a0c00: 6d6f 6e22 203b 2074 6865 6e0a 646e 6620  mon" ; then.dnf 
│ │ │ -002a0c10: 7265 6d6f 7665 202d 7920 2d2d 6e6f 6175  remove -y --noau
│ │ │ -002a0c20: 746f 7265 6d6f 7665 2022 786f 7267 2d78  toremove "xorg-x
│ │ │ -002a0c30: 3131 2d73 6572 7665 722d 636f 6d6d 6f6e  11-server-common
│ │ │ -002a0c40: 220a 6669 0a3c 2f63 6f64 653e 3c2f 7072  ".fi.
low
Disr │ │ │ -002a0a70: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -002a0a80: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ -002a0ac0: 7465 6779 3a3c 2f74 683e 3c74 643e 6469 tegy:di │ │ │ -002a0ad0: 7361 626c 653c 2f74 643e 3c2f 7472 3e3c sable
< │ │ │ +002a0200: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ +002a0220: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ +002a0270: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>< │ │ │ +002a02a0: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
- name: 'Remov
│ │ │ +002a02c0: 6520 7468 6520 5820 5769 6e64 6f77 7320  e the X Windows 
│ │ │ +002a02d0: 5061 636b 6167 6520 4772 6f75 703a 2045  Package Group: E
│ │ │ +002a02e0: 6e73 7572 6520 786f 7267 2d78 3131 2d73  nsure xorg-x11-s
│ │ │ +002a02f0: 6572 7665 722d 636f 6d6d 6f6e 2069 7320  erver-common is 
│ │ │ +002a0300: 7265 6d6f 7665 6427 0a20 2061 6e73 6962  removed'.  ansib
│ │ │ +002a0310: 6c65 2e62 7569 6c74 696e 2e70 6163 6b61  le.builtin.packa
│ │ │ +002a0320: 6765 3a0a 2020 2020 6e61 6d65 3a20 786f  ge:.    name: xo
│ │ │ +002a0330: 7267 2d78 3131 2d73 6572 7665 722d 636f  rg-x11-server-co
│ │ │ +002a0340: 6d6d 6f6e 0a20 2020 2073 7461 7465 3a20  mmon.    state: 
│ │ │ +002a0350: 6162 7365 6e74 0a20 2074 6167 733a 0a20  absent.  tags:. 
│ │ │ +002a0360: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +002a0370: 4d2d 3628 6129 0a20 202d 204e 4953 542d  M-6(a).  - NIST-
│ │ │ +002a0380: 3830 302d 3533 2d43 4d2d 3728 6129 0a20  800-53-CM-7(a). 
│ │ │ +002a0390: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +002a03a0: 4d2d 3728 6229 0a20 202d 2064 6973 6162  M-7(b).  - disab
│ │ │ +002a03b0: 6c65 5f73 7472 6174 6567 790a 2020 2d20  le_strategy.  - 
│ │ │ +002a03c0: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ +002a03d0: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ +002a03e0: 6e0a 2020 2d20 6d65 6469 756d 5f73 6576  n.  - medium_sev
│ │ │ +002a03f0: 6572 6974 790a 2020 2d20 6e6f 5f72 6562  erity.  - no_reb
│ │ │ +002a0400: 6f6f 745f 6e65 6564 6564 0a20 202d 2070  oot_needed.  - p
│ │ │ +002a0410: 6163 6b61 6765 5f78 6f72 672d 7831 312d  ackage_xorg-x11-
│ │ │ +002a0420: 7365 7276 6572 2d63 6f6d 6d6f 6e5f 7265  server-common_re
│ │ │ +002a0430: 6d6f 7665 640a 3c2f 636f 6465 3e3c 2f70  moved.

Remediatio │ │ │ +002a04f0: 6e20 5075 7070 6574 2073 6e69 7070 6574 n Puppet snippet │ │ │ +002a0500: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
< │ │ │ +002a05c0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +002a05d0: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c
low
Disr │ │ │ +002a0230: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +002a0240: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ +002a0280: 7465 6779 3a3c 2f74 683e 3c74 643e 6469 tegy:di │ │ │ +002a0290: 7361 626c 653c 2f74 643e 3c2f 7472 3e3c sable
Complexity │ │ │ +002a0590: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
D │ │ │ +002a05b0: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:
Reboot:< │ │ │ +002a05e0: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>false
S │ │ │ +002a0600: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:disable
<
│ │ │ +002a0630: 636f 6465 3e0a 696e 636c 7564 6520 7265  code>.include re
│ │ │ +002a0640: 6d6f 7665 5f78 6f72 672d 7831 312d 7365  move_xorg-x11-se
│ │ │ +002a0650: 7276 6572 2d63 6f6d 6d6f 6e0a 0a63 6c61  rver-common..cla
│ │ │ +002a0660: 7373 2072 656d 6f76 655f 786f 7267 2d78  ss remove_xorg-x
│ │ │ +002a0670: 3131 2d73 6572 7665 722d 636f 6d6d 6f6e  11-server-common
│ │ │ +002a0680: 207b 0a20 2070 6163 6b61 6765 207b 2027   {.  package { '
│ │ │ +002a0690: 786f 7267 2d78 3131 2d73 6572 7665 722d  xorg-x11-server-
│ │ │ +002a06a0: 636f 6d6d 6f6e 273a 0a20 2020 2065 6e73  common':.    ens
│ │ │ +002a06b0: 7572 6520 3d26 6774 3b20 2770 7572 6765  ure => 'purge
│ │ │ +002a06c0: 6427 2c0a 2020 7d0a 7d0a 3c2f 636f 6465  d',.  }.}.
Remedi │ │ │ +002a0780: 6174 696f 6e20 5368 656c 6c20 7363 7269 ation Shell scri │ │ │ +002a0790: 7074 20e2 87b2 3c2f 613e 3c62 723e 3c64 pt ...
│ │ │ +002a0810: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ +002a0820: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +002a0830: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ +002a0870: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +002a0880: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ +002a08a0: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ +002a08b0: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
.# CAUTIO
│ │ │ +002a08d0: 4e3a 2054 6869 7320 7265 6d65 6469 6174  N: This remediat
│ │ │ +002a08e0: 696f 6e20 7363 7269 7074 2077 696c 6c20  ion script will 
│ │ │ +002a08f0: 7265 6d6f 7665 2078 6f72 672d 7831 312d  remove xorg-x11-
│ │ │ +002a0900: 7365 7276 6572 2d63 6f6d 6d6f 6e0a 2320  server-common.# 
│ │ │ +002a0910: 6672 6f6d 2074 6865 2073 7973 7465 6d2c  from the system,
│ │ │ +002a0920: 2061 6e64 206d 6179 2072 656d 6f76 6520   and may remove 
│ │ │ +002a0930: 616e 7920 7061 636b 6167 6573 0a23 2074  any packages.# t
│ │ │ +002a0940: 6861 7420 6465 7065 6e64 206f 6e20 786f  hat depend on xo
│ │ │ +002a0950: 7267 2d78 3131 2d73 6572 7665 722d 636f  rg-x11-server-co
│ │ │ +002a0960: 6d6d 6f6e 2e20 4578 6563 7574 6520 7468  mmon. Execute th
│ │ │ +002a0970: 6973 0a23 2072 656d 6564 6961 7469 6f6e  is.# remediation
│ │ │ +002a0980: 2041 4654 4552 2074 6573 7469 6e67 206f   AFTER testing o
│ │ │ +002a0990: 6e20 6120 6e6f 6e2d 7072 6f64 7563 7469  n a non-producti
│ │ │ +002a09a0: 6f6e 0a23 2073 7973 7465 6d21 0a0a 0a69  on.# system!...i
│ │ │ +002a09b0: 6620 7270 6d20 2d71 202d 2d71 7569 6574  f rpm -q --quiet
│ │ │ +002a09c0: 2022 786f 7267 2d78 3131 2d73 6572 7665   "xorg-x11-serve
│ │ │ +002a09d0: 722d 636f 6d6d 6f6e 2220 3b20 7468 656e  r-common" ; then
│ │ │ +002a09e0: 0a64 6e66 2072 656d 6f76 6520 2d79 202d  .dnf remove -y -
│ │ │ +002a09f0: 2d6e 6f61 7574 6f72 656d 6f76 6520 2278  -noautoremove "x
│ │ │ +002a0a00: 6f72 672d 7831 312d 7365 7276 6572 2d63  org-x11-server-c
│ │ │ +002a0a10: 6f6d 6d6f 6e22 0a66 690a 3c2f 636f 6465  ommon".fi.
Remedi │ │ │ +002a0ad0: 6174 696f 6e20 416e 6163 6f6e 6461 2073 ation Anaconda s │ │ │ +002a0ae0: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ +002a0b70: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +002a0b80: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ +002a0ba0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ +002a0bc0: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +002a0bd0: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ +002a0c10: 3c70 7265 3e3c 636f 6465 3e0a 0a70 6163
..pac
│ │ │ +002a0c20: 6b61 6765 202d 2d72 656d 6f76 653d 786f  kage --remove=xo
│ │ │ +002a0c30: 7267 2d78 3131 2d73 6572 7665 722d 636f  rg-x11-server-co
│ │ │ +002a0c40: 6d6d 6f6e 0a3c 2f63 6f64 653e 3c2f 7072  mmon.
│ │ │ 002a0c70: 3c2f 7461 626c 653e 3c2f 7464 3e3c 2f74 Remed │ │ │ -00468d80: 6961 7469 6f6e 204f 5342 7569 6c64 2042 iation OSBuild B │ │ │ -00468d90: 6c75 6570 7269 6e74 2073 6e69 7070 6574 lueprint snippet │ │ │ -00468da0: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
.[[packa │ │ │ -00468df0: 6765 735d 5d0a 6e61 6d65 203d 2022 6175 ges]].name = "au │ │ │ -00468e00: 6469 7422 0a76 6572 7369 6f6e 203d 2022 dit".version = " │ │ │ -00468e10: 2a22 0a3c 2f63 6f64 653e 3c2f 7072 653e *". │ │ │ -00468e20: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation │ │ │ -00468ed0: 416e 6163 6f6e 6461 2073 6e69 7070 6574 Anaconda snippet │ │ │ -00468ee0: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
< │ │ │ -00468f60: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ -00468f70: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ -00468f90: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ -00468fa0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ -00468fc0: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ -00468fe0: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:enable
<
│ │ │ -00469010: 636f 6465 3e0a 7061 636b 6167 6520 2d2d  code>.package --
│ │ │ -00469020: 6164 643d 6175 6469 740a 3c2f 636f 6465  add=audit.
Remed │ │ │ -004690e0: 6961 7469 6f6e 2050 7570 7065 7420 736e iation Puppet sn │ │ │ -004690f0: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
Comp │ │ │ -00469180: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -00469190: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -004691b0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ -004691d0: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -004691e0: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:enable
< │ │ │ -00469220: 7072 653e 3c63 6f64 653e 696e 636c 7564 pre>includ │ │ │ -00469230: 6520 696e 7374 616c 6c5f 6175 6469 740a e install_audit. │ │ │ -00469240: 0a63 6c61 7373 2069 6e73 7461 6c6c 5f61 .class install_a │ │ │ -00469250: 7564 6974 207b 0a20 2070 6163 6b61 6765 udit {. package │ │ │ -00469260: 207b 2027 6175 6469 7427 3a0a 2020 2020 { 'audit':. │ │ │ -00469270: 656e 7375 7265 203d 2667 743b 2027 696e ensure => 'in │ │ │ -00469280: 7374 616c 6c65 6427 2c0a 2020 7d0a 7d0a stalled',. }.}. │ │ │ -00469290: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64 Remediation Ans │ │ │ -00469350: 6962 6c65 2073 6e69 7070 6574 20e2 87b2 ible snippet ... │ │ │ -00469360: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
< │ │ │ -004693e0: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -00469400: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -00469450: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
- name: Gather 
│ │ │ -004694a0: 7468 6520 7061 636b 6167 6520 6661 6374  the package fact
│ │ │ -004694b0: 730a 2020 7061 636b 6167 655f 6661 6374  s.  package_fact
│ │ │ -004694c0: 733a 0a20 2020 206d 616e 6167 6572 3a20  s:.    manager: 
│ │ │ -004694d0: 6175 746f 0a20 2074 6167 733a 0a20 202d  auto.  tags:.  -
│ │ │ -004694e0: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ -004694f0: 3728 6129 0a20 202d 204e 4953 542d 3830  7(a).  - NIST-80
│ │ │ -00469500: 302d 3533 2d41 552d 3132 2832 290a 2020  0-53-AU-12(2).  
│ │ │ -00469510: 2d20 4e49 5354 2d38 3030 2d35 332d 4155  - NIST-800-53-AU
│ │ │ -00469520: 2d31 340a 2020 2d20 4e49 5354 2d38 3030  -14.  - NIST-800
│ │ │ -00469530: 2d35 332d 4155 2d32 2861 290a 2020 2d20  -53-AU-2(a).  - 
│ │ │ -00469540: 4e49 5354 2d38 3030 2d35 332d 4155 2d37  NIST-800-53-AU-7
│ │ │ -00469550: 2831 290a 2020 2d20 4e49 5354 2d38 3030  (1).  - NIST-800
│ │ │ -00469560: 2d35 332d 4155 2d37 2832 290a 2020 2d20  -53-AU-7(2).  - 
│ │ │ -00469570: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ -00469580: 2861 290a 2020 2d20 5043 492d 4453 532d  (a).  - PCI-DSS-
│ │ │ -00469590: 5265 712d 3130 2e31 0a20 202d 2050 4349  Req-10.1.  - PCI
│ │ │ -004695a0: 2d44 5353 7634 2d31 302e 320a 2020 2d20  -DSSv4-10.2.  - 
│ │ │ -004695b0: 5043 492d 4453 5376 342d 3130 2e32 2e31  PCI-DSSv4-10.2.1
│ │ │ -004695c0: 0a20 202d 2065 6e61 626c 655f 7374 7261  .  - enable_stra
│ │ │ -004695d0: 7465 6779 0a20 202d 206c 6f77 5f63 6f6d  tegy.  - low_com
│ │ │ -004695e0: 706c 6578 6974 790a 2020 2d20 6c6f 775f  plexity.  - low_
│ │ │ -004695f0: 6469 7372 7570 7469 6f6e 0a20 202d 206d  disruption.  - m
│ │ │ -00469600: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ -00469610: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ -00469620: 6465 640a 2020 2d20 7061 636b 6167 655f  ded.  - package_
│ │ │ -00469630: 6175 6469 745f 696e 7374 616c 6c65 640a  audit_installed.
│ │ │ -00469640: 0a2d 206e 616d 653a 2045 6e73 7572 6520  .- name: Ensure 
│ │ │ -00469650: 6175 6469 7420 6973 2069 6e73 7461 6c6c  audit is install
│ │ │ -00469660: 6564 0a20 2061 6e73 6962 6c65 2e62 7569  ed.  ansible.bui
│ │ │ -00469670: 6c74 696e 2e70 6163 6b61 6765 3a0a 2020  ltin.package:.  
│ │ │ -00469680: 2020 6e61 6d65 3a20 6175 6469 740a 2020    name: audit.  
│ │ │ -00469690: 2020 7374 6174 653a 2070 7265 7365 6e74    state: present
│ │ │ -004696a0: 0a20 2077 6865 6e3a 2027 226b 6572 6e65  .  when: '"kerne
│ │ │ -004696b0: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ -004696c0: 6374 732e 7061 636b 6167 6573 270a 2020  cts.packages'.  
│ │ │ -004696d0: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38  tags:.  - NIST-8
│ │ │ -004696e0: 3030 2d35 332d 4143 2d37 2861 290a 2020  00-53-AC-7(a).  
│ │ │ -004696f0: 2d20 4e49 5354 2d38 3030 2d35 332d 4155  - NIST-800-53-AU
│ │ │ -00469700: 2d31 3228 3229 0a20 202d 204e 4953 542d  -12(2).  - NIST-
│ │ │ -00469710: 3830 302d 3533 2d41 552d 3134 0a20 202d  800-53-AU-14.  -
│ │ │ -00469720: 204e 4953 542d 3830 302d 3533 2d41 552d   NIST-800-53-AU-
│ │ │ -00469730: 3228 6129 0a20 202d 204e 4953 542d 3830  2(a).  - NIST-80
│ │ │ -00469740: 302d 3533 2d41 552d 3728 3129 0a20 202d  0-53-AU-7(1).  -
│ │ │ -00469750: 204e 4953 542d 3830 302d 3533 2d41 552d   NIST-800-53-AU-
│ │ │ -00469760: 3728 3229 0a20 202d 204e 4953 542d 3830  7(2).  - NIST-80
│ │ │ -00469770: 302d 3533 2d43 4d2d 3628 6129 0a20 202d  0-53-CM-6(a).  -
│ │ │ -00469780: 2050 4349 2d44 5353 2d52 6571 2d31 302e   PCI-DSS-Req-10.
│ │ │ -00469790: 310a 2020 2d20 5043 492d 4453 5376 342d  1.  - PCI-DSSv4-
│ │ │ -004697a0: 3130 2e32 0a20 202d 2050 4349 2d44 5353  10.2.  - PCI-DSS
│ │ │ -004697b0: 7634 2d31 302e 322e 310a 2020 2d20 656e  v4-10.2.1.  - en
│ │ │ -004697c0: 6162 6c65 5f73 7472 6174 6567 790a 2020  able_strategy.  
│ │ │ -004697d0: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ -004697e0: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ -004697f0: 696f 6e0a 2020 2d20 6d65 6469 756d 5f73  ion.  - medium_s
│ │ │ -00469800: 6576 6572 6974 790a 2020 2d20 6e6f 5f72  everity.  - no_r
│ │ │ -00469810: 6562 6f6f 745f 6e65 6564 6564 0a20 202d  eboot_needed.  -
│ │ │ -00469820: 2070 6163 6b61 6765 5f61 7564 6974 5f69   package_audit_i
│ │ │ -00469830: 6e73 7461 6c6c 6564 0a3c 2f63 6f64 653e  nstalled.
│ │ │ -00469840: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedi │ │ │ -004698f0: 6174 696f 6e20 5368 656c 6c20 7363 7269 ation Shell scri │ │ │ -00469900: 7074 20e2 87b2 3c2f 613e 3c62 723e 3c64 pt ...
< │ │ │ -00469940: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ -00469950: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ -00469960: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ -00469970: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ -00469980: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Disruption:Strategy: │ │ │ -00469a10: 3c74 643e 656e 6162 6c65 3c2f 7464 3e3c < │ │ │ -00469a20: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
low
Disr │ │ │ -00469410: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -00469420: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ -00469460: 7465 6779 3a3c 2f74 683e 3c74 643e 656e tegy:en │ │ │ -00469470: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
Complex │ │ │ -00469990: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ -004699a0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
low
Reboo │ │ │ -004699e0: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -004699f0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
enable
# Remedia
│ │ │ -00469a40: 7469 6f6e 2069 7320 6170 706c 6963 6162  tion is applicab
│ │ │ -00469a50: 6c65 206f 6e6c 7920 696e 2063 6572 7461  le only in certa
│ │ │ -00469a60: 696e 2070 6c61 7466 6f72 6d73 0a69 6620  in platforms.if 
│ │ │ -00469a70: 7270 6d20 2d2d 7175 6965 7420 2d71 206b  rpm --quiet -q k
│ │ │ -00469a80: 6572 6e65 6c3b 2074 6865 6e0a 0a69 6620  ernel; then..if 
│ │ │ -00469a90: 2120 7270 6d20 2d71 202d 2d71 7569 6574  ! rpm -q --quiet
│ │ │ -00469aa0: 2022 6175 6469 7422 203b 2074 6865 6e0a   "audit" ; then.
│ │ │ -00469ab0: 2020 2020 646e 6620 696e 7374 616c 6c20      dnf install 
│ │ │ -00469ac0: 2d79 2022 6175 6469 7422 0a66 690a 0a65  -y "audit".fi..e
│ │ │ -00469ad0: 6c73 650a 2020 2020 2667 743b 2661 6d70  lse.    >&
│ │ │ -00469ae0: 3b32 2065 6368 6f20 2752 656d 6564 6961  ;2 echo 'Remedia
│ │ │ -00469af0: 7469 6f6e 2069 7320 6e6f 7420 6170 706c  tion is not appl
│ │ │ -00469b00: 6963 6162 6c65 2c20 6e6f 7468 696e 6720  icable, nothing 
│ │ │ -00469b10: 7761 7320 646f 6e65 270a 6669 0a3c 2f63  was done'.fi.
Com │ │ │ +00468e20: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ +00468e50: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ +00468e70: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +00468e80: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ +00468ea0: 2f74 683e 3c74 643e 656e 6162 6c65 3c2f /th>enable
│ │ │ +00468ec0: 3c70 7265 3e3c 636f 6465 3e2d 206e 616d
- nam
│ │ │ +00468ed0: 653a 2047 6174 6865 7220 7468 6520 7061  e: Gather the pa
│ │ │ +00468ee0: 636b 6167 6520 6661 6374 730a 2020 7061  ckage facts.  pa
│ │ │ +00468ef0: 636b 6167 655f 6661 6374 733a 0a20 2020  ckage_facts:.   
│ │ │ +00468f00: 206d 616e 6167 6572 3a20 6175 746f 0a20   manager: auto. 
│ │ │ +00468f10: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ +00468f20: 3830 302d 3533 2d41 432d 3728 6129 0a20  800-53-AC-7(a). 
│ │ │ +00468f30: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ +00468f40: 552d 3132 2832 290a 2020 2d20 4e49 5354  U-12(2).  - NIST
│ │ │ +00468f50: 2d38 3030 2d35 332d 4155 2d31 340a 2020  -800-53-AU-14.  
│ │ │ +00468f60: 2d20 4e49 5354 2d38 3030 2d35 332d 4155  - NIST-800-53-AU
│ │ │ +00468f70: 2d32 2861 290a 2020 2d20 4e49 5354 2d38  -2(a).  - NIST-8
│ │ │ +00468f80: 3030 2d35 332d 4155 2d37 2831 290a 2020  00-53-AU-7(1).  
│ │ │ +00468f90: 2d20 4e49 5354 2d38 3030 2d35 332d 4155  - NIST-800-53-AU
│ │ │ +00468fa0: 2d37 2832 290a 2020 2d20 4e49 5354 2d38  -7(2).  - NIST-8
│ │ │ +00468fb0: 3030 2d35 332d 434d 2d36 2861 290a 2020  00-53-CM-6(a).  
│ │ │ +00468fc0: 2d20 5043 492d 4453 532d 5265 712d 3130  - PCI-DSS-Req-10
│ │ │ +00468fd0: 2e31 0a20 202d 2050 4349 2d44 5353 7634  .1.  - PCI-DSSv4
│ │ │ +00468fe0: 2d31 302e 320a 2020 2d20 5043 492d 4453  -10.2.  - PCI-DS
│ │ │ +00468ff0: 5376 342d 3130 2e32 2e31 0a20 202d 2065  Sv4-10.2.1.  - e
│ │ │ +00469000: 6e61 626c 655f 7374 7261 7465 6779 0a20  nable_strategy. 
│ │ │ +00469010: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ +00469020: 790a 2020 2d20 6c6f 775f 6469 7372 7570  y.  - low_disrup
│ │ │ +00469030: 7469 6f6e 0a20 202d 206d 6564 6975 6d5f  tion.  - medium_
│ │ │ +00469040: 7365 7665 7269 7479 0a20 202d 206e 6f5f  severity.  - no_
│ │ │ +00469050: 7265 626f 6f74 5f6e 6565 6465 640a 2020  reboot_needed.  
│ │ │ +00469060: 2d20 7061 636b 6167 655f 6175 6469 745f  - package_audit_
│ │ │ +00469070: 696e 7374 616c 6c65 640a 0a2d 206e 616d  installed..- nam
│ │ │ +00469080: 653a 2045 6e73 7572 6520 6175 6469 7420  e: Ensure audit 
│ │ │ +00469090: 6973 2069 6e73 7461 6c6c 6564 0a20 2061  is installed.  a
│ │ │ +004690a0: 6e73 6962 6c65 2e62 7569 6c74 696e 2e70  nsible.builtin.p
│ │ │ +004690b0: 6163 6b61 6765 3a0a 2020 2020 6e61 6d65  ackage:.    name
│ │ │ +004690c0: 3a20 6175 6469 740a 2020 2020 7374 6174  : audit.    stat
│ │ │ +004690d0: 653a 2070 7265 7365 6e74 0a20 2077 6865  e: present.  whe
│ │ │ +004690e0: 6e3a 2027 226b 6572 6e65 6c22 2069 6e20  n: '"kernel" in 
│ │ │ +004690f0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +00469100: 636b 6167 6573 270a 2020 7461 6773 3a0a  ckages'.  tags:.
│ │ │ +00469110: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +00469120: 4143 2d37 2861 290a 2020 2d20 4e49 5354  AC-7(a).  - NIST
│ │ │ +00469130: 2d38 3030 2d35 332d 4155 2d31 3228 3229  -800-53-AU-12(2)
│ │ │ +00469140: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +00469150: 2d41 552d 3134 0a20 202d 204e 4953 542d  -AU-14.  - NIST-
│ │ │ +00469160: 3830 302d 3533 2d41 552d 3228 6129 0a20  800-53-AU-2(a). 
│ │ │ +00469170: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ +00469180: 552d 3728 3129 0a20 202d 204e 4953 542d  U-7(1).  - NIST-
│ │ │ +00469190: 3830 302d 3533 2d41 552d 3728 3229 0a20  800-53-AU-7(2). 
│ │ │ +004691a0: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +004691b0: 4d2d 3628 6129 0a20 202d 2050 4349 2d44  M-6(a).  - PCI-D
│ │ │ +004691c0: 5353 2d52 6571 2d31 302e 310a 2020 2d20  SS-Req-10.1.  - 
│ │ │ +004691d0: 5043 492d 4453 5376 342d 3130 2e32 0a20  PCI-DSSv4-10.2. 
│ │ │ +004691e0: 202d 2050 4349 2d44 5353 7634 2d31 302e   - PCI-DSSv4-10.
│ │ │ +004691f0: 322e 310a 2020 2d20 656e 6162 6c65 5f73  2.1.  - enable_s
│ │ │ +00469200: 7472 6174 6567 790a 2020 2d20 6c6f 775f  trategy.  - low_
│ │ │ +00469210: 636f 6d70 6c65 7869 7479 0a20 202d 206c  complexity.  - l
│ │ │ +00469220: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ +00469230: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ +00469240: 790a 2020 2d20 6e6f 5f72 6562 6f6f 745f  y.  - no_reboot_
│ │ │ +00469250: 6e65 6564 6564 0a20 202d 2070 6163 6b61  needed.  - packa
│ │ │ +00469260: 6765 5f61 7564 6974 5f69 6e73 7461 6c6c  ge_audit_install
│ │ │ +00469270: 6564 0a3c 2f63 6f64 653e 3c2f 7072 653e  ed.
│ │ │ +00469280: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation │ │ │ +00469330: 5075 7070 6574 2073 6e69 7070 6574 20e2 Puppet snippet . │ │ │ +00469340: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
Complexity: │ │ │ +004693d0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ +004693f0: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:low< │ │ │ +00469410: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:falseSt │ │ │ +00469440: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ +00469450: 656e 6162 6c65 3c2f 7464 3e3c 2f74 723e enable │ │ │ +00469460: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
include insta
│ │ │ +00469480: 6c6c 5f61 7564 6974 0a0a 636c 6173 7320  ll_audit..class 
│ │ │ +00469490: 696e 7374 616c 6c5f 6175 6469 7420 7b0a  install_audit {.
│ │ │ +004694a0: 2020 7061 636b 6167 6520 7b20 2761 7564    package { 'aud
│ │ │ +004694b0: 6974 273a 0a20 2020 2065 6e73 7572 6520  it':.    ensure 
│ │ │ +004694c0: 3d26 6774 3b20 2769 6e73 7461 6c6c 6564  => 'installed
│ │ │ +004694d0: 272c 0a20 207d 0a7d 0a3c 2f63 6f64 653e  ',.  }.}.
│ │ │ +004694e0: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedi │ │ │ +00469590: 6174 696f 6e20 4f53 4275 696c 6420 426c ation OSBuild Bl │ │ │ +004695a0: 7565 7072 696e 7420 736e 6970 7065 7420 ueprint snippet │ │ │ +004695b0: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
.[[packag
│ │ │ +00469600: 6573 5d5d 0a6e 616d 6520 3d20 2261 7564  es]].name = "aud
│ │ │ +00469610: 6974 220a 7665 7273 696f 6e20 3d20 222a  it".version = "*
│ │ │ +00469620: 220a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  ".
< │ │ │ +00469630: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation S │ │ │ +004696e0: 6865 6c6c 2073 6372 6970 7420 e287 b23c hell script ...< │ │ │ +004696f0: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
Complexity: │ │ │ +004697c0: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +004697d0: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f

│ │ │ +00469820: 2320 5265 6d65 6469 6174 696f 6e20 6973  # Remediation is
│ │ │ +00469830: 2061 7070 6c69 6361 626c 6520 6f6e 6c79   applicable only
│ │ │ +00469840: 2069 6e20 6365 7274 6169 6e20 706c 6174   in certain plat
│ │ │ +00469850: 666f 726d 730a 6966 2072 706d 202d 2d71  forms.if rpm --q
│ │ │ +00469860: 7569 6574 202d 7120 6b65 726e 656c 3b20  uiet -q kernel; 
│ │ │ +00469870: 7468 656e 0a0a 6966 2021 2072 706d 202d  then..if ! rpm -
│ │ │ +00469880: 7120 2d2d 7175 6965 7420 2261 7564 6974  q --quiet "audit
│ │ │ +00469890: 2220 3b20 7468 656e 0a20 2020 2064 6e66  " ; then.    dnf
│ │ │ +004698a0: 2069 6e73 7461 6c6c 202d 7920 2261 7564   install -y "aud
│ │ │ +004698b0: 6974 220a 6669 0a0a 656c 7365 0a20 2020  it".fi..else.   
│ │ │ +004698c0: 2026 6774 3b26 616d 703b 3220 6563 686f   >&2 echo
│ │ │ +004698d0: 2027 5265 6d65 6469 6174 696f 6e20 6973   'Remediation is
│ │ │ +004698e0: 206e 6f74 2061 7070 6c69 6361 626c 652c   not applicable,
│ │ │ +004698f0: 206e 6f74 6869 6e67 2077 6173 2064 6f6e   nothing was don
│ │ │ +00469900: 6527 0a66 690a 3c2f 636f 6465 3e3c 2f70  e'.fi.

Remediati │ │ │ +004699c0: 6f6e 2041 6e61 636f 6e64 6120 736e 6970 on Anaconda snip │ │ │ +004699d0: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ +004699e0: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +004699f0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +00469a00: 7365 2220 6964 3d22 6964 3131 3037 223e se" id="id1107"> │ │ │ +00469a10: 3c74 6162 6c65 2063 6c61 7373 3d22 7461
low
Disru │ │ │ +004697a0: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +004697b0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +004697f0: 6567 793a 3c2f 7468 3e3c 7464 3e65 6e61 egy:ena │ │ │ +00469800: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
< │ │ │ +00469a80: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ +00469aa0: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ +00469ad0: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy: │ │ │ +00469af0: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
Comple │ │ │ +00469a60: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ +00469a70: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ +00469ab0: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +00469ac0: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
enable
.package │ │ │ +00469b10: 202d 2d61 6464 3d61 7564 6974 0a3c 2f63 --add=audit.
│ │ │ 00469b30: 3c2f 6469 763e 3c2f 7464 3e3c 2f74 723e
│ │ │ 00469b40: 3c2f 7462 6f64 793e 3c2f 7461 626c 653e │ │ │ 00469b50: 3c2f 7464 3e3c 2f74 723e 3c74 7220 6461 Rem │ │ │ -0046b470: 6564 6961 7469 6f6e 204f 5342 7569 6c64 ediation OSBuild │ │ │ -0046b480: 2042 6c75 6570 7269 6e74 2073 6e69 7070 Blueprint snipp │ │ │ -0046b490: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
< │ │ │ -0046b4d0: 7072 653e 3c63 6f64 653e 0a5b 6375 7374 pre>.[cust │ │ │ -0046b4e0: 6f6d 697a 6174 696f 6e73 2e73 6572 7669 omizations.servi │ │ │ -0046b4f0: 6365 735d 0a65 6e61 626c 6564 203d 205b ces].enabled = [ │ │ │ -0046b500: 2261 7564 6974 6422 5d0a 3c2f 636f 6465 "auditd"].
Remed │ │ │ -0046b5c0: 6961 7469 6f6e 204b 7562 6572 6e65 7465 iation Kubernete │ │ │ -0046b5d0: 7320 736e 6970 7065 7420 e287 b23c 2f61 s snippet ...
---.apiVersion:
│ │ │ -0046b630: 206d 6163 6869 6e65 636f 6e66 6967 7572   machineconfigur
│ │ │ -0046b640: 6174 696f 6e2e 6f70 656e 7368 6966 742e  ation.openshift.
│ │ │ -0046b650: 696f 2f76 310a 6b69 6e64 3a20 4d61 6368  io/v1.kind: Mach
│ │ │ -0046b660: 696e 6543 6f6e 6669 670a 7370 6563 3a0a  ineConfig.spec:.
│ │ │ -0046b670: 2020 636f 6e66 6967 3a0a 2020 2020 6967    config:.    ig
│ │ │ -0046b680: 6e69 7469 6f6e 3a0a 2020 2020 2020 7665  nition:.      ve
│ │ │ -0046b690: 7273 696f 6e3a 2033 2e31 2e30 0a20 2020  rsion: 3.1.0.   
│ │ │ -0046b6a0: 2073 7973 7465 6d64 3a0a 2020 2020 2020   systemd:.      
│ │ │ -0046b6b0: 756e 6974 733a 0a20 2020 2020 202d 206e  units:.      - n
│ │ │ -0046b6c0: 616d 653a 2061 7564 6974 642e 7365 7276  ame: auditd.serv
│ │ │ -0046b6d0: 6963 650a 2020 2020 2020 2020 656e 6162  ice.        enab
│ │ │ -0046b6e0: 6c65 643a 2074 7275 650a 3c2f 636f 6465  led: true.
Remed │ │ │ -0046b7a0: 6961 7469 6f6e 2050 7570 7065 7420 736e iation Puppet sn │ │ │ -0046b7b0: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
Comp │ │ │ -0046b840: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -0046b850: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -0046b870: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ -0046b890: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -0046b8a0: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:enable
< │ │ │ -0046b8e0: 7072 653e 3c63 6f64 653e 696e 636c 7564 pre>includ │ │ │ -0046b8f0: 6520 656e 6162 6c65 5f61 7564 6974 640a e enable_auditd. │ │ │ -0046b900: 0a63 6c61 7373 2065 6e61 626c 655f 6175 .class enable_au │ │ │ -0046b910: 6469 7464 207b 0a20 2073 6572 7669 6365 ditd {. service │ │ │ -0046b920: 207b 2761 7564 6974 6427 3a0a 2020 2020 {'auditd':. │ │ │ -0046b930: 656e 6162 6c65 203d 2667 743b 2074 7275 enable => tru │ │ │ -0046b940: 652c 0a20 2020 2065 6e73 7572 6520 3d26 e,. ensure =& │ │ │ -0046b950: 6774 3b20 2772 756e 6e69 6e67 272c 0a20 gt; 'running',. │ │ │ -0046b960: 207d 0a7d 0a3c 2f63 6f64 653e 3c2f 7072 }.}.
Remediatio │ │ │ -0046ba20: 6e20 416e 7369 626c 6520 736e 6970 7065 n Ansible snippe │ │ │ -0046ba30: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
│ │ │ -0046bab0: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ -0046bac0: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -0046bad0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ -0046bb10: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -0046bb20: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ -0046bb40: 7464 3e65 6e61 626c 653c 2f74 643e 3c2f td>enable
│ │ │ -0046bb60: 3c63 6f64 653e 2d20 6e61 6d65 3a20 4761  - name: Ga
│ │ │ -0046bb70: 7468 6572 2074 6865 2070 6163 6b61 6765  ther the package
│ │ │ -0046bb80: 2066 6163 7473 0a20 2070 6163 6b61 6765   facts.  package
│ │ │ -0046bb90: 5f66 6163 7473 3a0a 2020 2020 6d61 6e61  _facts:.    mana
│ │ │ -0046bba0: 6765 723a 2061 7574 6f0a 2020 7461 6773  ger: auto.  tags
│ │ │ -0046bbb0: 3a0a 2020 2d20 434a 4953 2d35 2e34 2e31  :.  - CJIS-5.4.1
│ │ │ -0046bbc0: 2e31 0a20 202d 204e 4953 542d 3830 302d  .1.  - NIST-800-
│ │ │ -0046bbd0: 3137 312d 332e 332e 310a 2020 2d20 4e49  171-3.3.1.  - NI
│ │ │ -0046bbe0: 5354 2d38 3030 2d31 3731 2d33 2e33 2e32  ST-800-171-3.3.2
│ │ │ -0046bbf0: 0a20 202d 204e 4953 542d 3830 302d 3137  .  - NIST-800-17
│ │ │ -0046bc00: 312d 332e 332e 360a 2020 2d20 4e49 5354  1-3.3.6.  - NIST
│ │ │ -0046bc10: 2d38 3030 2d35 332d 4143 2d32 2867 290a  -800-53-AC-2(g).
│ │ │ -0046bc20: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -0046bc30: 4143 2d36 2839 290a 2020 2d20 4e49 5354  AC-6(9).  - NIST
│ │ │ -0046bc40: 2d38 3030 2d35 332d 4155 2d31 300a 2020  -800-53-AU-10.  
│ │ │ -0046bc50: 2d20 4e49 5354 2d38 3030 2d35 332d 4155  - NIST-800-53-AU
│ │ │ -0046bc60: 2d31 3228 6329 0a20 202d 204e 4953 542d  -12(c).  - NIST-
│ │ │ -0046bc70: 3830 302d 3533 2d41 552d 3134 2831 290a  800-53-AU-14(1).
│ │ │ -0046bc80: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -0046bc90: 4155 2d32 2864 290a 2020 2d20 4e49 5354  AU-2(d).  - NIST
│ │ │ -0046bca0: 2d38 3030 2d35 332d 4155 2d33 0a20 202d  -800-53-AU-3.  -
│ │ │ -0046bcb0: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -0046bcc0: 3628 6129 0a20 202d 204e 4953 542d 3830  6(a).  - NIST-80
│ │ │ -0046bcd0: 302d 3533 2d53 492d 3428 3233 290a 2020  0-53-SI-4(23).  
│ │ │ -0046bce0: 2d20 5043 492d 4453 532d 5265 712d 3130  - PCI-DSS-Req-10
│ │ │ -0046bcf0: 2e31 0a20 202d 2050 4349 2d44 5353 7634  .1.  - PCI-DSSv4
│ │ │ -0046bd00: 2d31 302e 320a 2020 2d20 5043 492d 4453  -10.2.  - PCI-DS
│ │ │ -0046bd10: 5376 342d 3130 2e32 2e31 0a20 202d 2065  Sv4-10.2.1.  - e
│ │ │ -0046bd20: 6e61 626c 655f 7374 7261 7465 6779 0a20  nable_strategy. 
│ │ │ -0046bd30: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ -0046bd40: 790a 2020 2d20 6c6f 775f 6469 7372 7570  y.  - low_disrup
│ │ │ -0046bd50: 7469 6f6e 0a20 202d 206d 6564 6975 6d5f  tion.  - medium_
│ │ │ -0046bd60: 7365 7665 7269 7479 0a20 202d 206e 6f5f  severity.  - no_
│ │ │ -0046bd70: 7265 626f 6f74 5f6e 6565 6465 640a 2020  reboot_needed.  
│ │ │ -0046bd80: 2d20 7365 7276 6963 655f 6175 6469 7464  - service_auditd
│ │ │ -0046bd90: 5f65 6e61 626c 6564 0a0a 2d20 6e61 6d65  _enabled..- name
│ │ │ -0046bda0: 3a20 456e 6162 6c65 2061 7564 6974 6420  : Enable auditd 
│ │ │ -0046bdb0: 5365 7276 6963 6520 2d20 456e 6162 6c65  Service - Enable
│ │ │ -0046bdc0: 2073 6572 7669 6365 2061 7564 6974 640a   service auditd.
│ │ │ -0046bdd0: 2020 626c 6f63 6b3a 0a0a 2020 2d20 6e61    block:..  - na
│ │ │ -0046bde0: 6d65 3a20 4761 7468 6572 2074 6865 2070  me: Gather the p
│ │ │ -0046bdf0: 6163 6b61 6765 2066 6163 7473 0a20 2020  ackage facts.   
│ │ │ -0046be00: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ -0046be10: 2e70 6163 6b61 6765 5f66 6163 7473 3a0a  .package_facts:.
│ │ │ -0046be20: 2020 2020 2020 6d61 6e61 6765 723a 2061        manager: a
│ │ │ -0046be30: 7574 6f0a 0a20 202d 206e 616d 653a 2045  uto..  - name: E
│ │ │ -0046be40: 6e61 626c 6520 6175 6469 7464 2053 6572  nable auditd Ser
│ │ │ -0046be50: 7669 6365 202d 2045 6e61 626c 6520 5365  vice - Enable Se
│ │ │ -0046be60: 7276 6963 6520 6175 6469 7464 0a20 2020  rvice auditd.   
│ │ │ -0046be70: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ -0046be80: 2e73 7973 7465 6d64 3a0a 2020 2020 2020  .systemd:.      
│ │ │ -0046be90: 6e61 6d65 3a20 6175 6469 7464 0a20 2020  name: auditd.   
│ │ │ -0046bea0: 2020 2065 6e61 626c 6564 3a20 7472 7565     enabled: true
│ │ │ -0046beb0: 0a20 2020 2020 2073 7461 7465 3a20 7374  .      state: st
│ │ │ -0046bec0: 6172 7465 640a 2020 2020 2020 6d61 736b  arted.      mask
│ │ │ -0046bed0: 6564 3a20 6661 6c73 650a 2020 2020 7768  ed: false.    wh
│ │ │ -0046bee0: 656e 3a0a 2020 2020 2d20 2722 6175 6469  en:.    - '"audi
│ │ │ -0046bef0: 7422 2069 6e20 616e 7369 626c 655f 6661  t" in ansible_fa
│ │ │ -0046bf00: 6374 732e 7061 636b 6167 6573 270a 2020  cts.packages'.  
│ │ │ -0046bf10: 7461 6773 3a0a 2020 2d20 434a 4953 2d35  tags:.  - CJIS-5
│ │ │ -0046bf20: 2e34 2e31 2e31 0a20 202d 204e 4953 542d  .4.1.1.  - NIST-
│ │ │ -0046bf30: 3830 302d 3137 312d 332e 332e 310a 2020  800-171-3.3.1.  
│ │ │ -0046bf40: 2d20 4e49 5354 2d38 3030 2d31 3731 2d33  - NIST-800-171-3
│ │ │ -0046bf50: 2e33 2e32 0a20 202d 204e 4953 542d 3830  .3.2.  - NIST-80
│ │ │ -0046bf60: 302d 3137 312d 332e 332e 360a 2020 2d20  0-171-3.3.6.  - 
│ │ │ -0046bf70: 4e49 5354 2d38 3030 2d35 332d 4143 2d32  NIST-800-53-AC-2
│ │ │ -0046bf80: 2867 290a 2020 2d20 4e49 5354 2d38 3030  (g).  - NIST-800
│ │ │ -0046bf90: 2d35 332d 4143 2d36 2839 290a 2020 2d20  -53-AC-6(9).  - 
│ │ │ -0046bfa0: 4e49 5354 2d38 3030 2d35 332d 4155 2d31  NIST-800-53-AU-1
│ │ │ -0046bfb0: 300a 2020 2d20 4e49 5354 2d38 3030 2d35  0.  - NIST-800-5
│ │ │ -0046bfc0: 332d 4155 2d31 3228 6329 0a20 202d 204e  3-AU-12(c).  - N
│ │ │ -0046bfd0: 4953 542d 3830 302d 3533 2d41 552d 3134  IST-800-53-AU-14
│ │ │ -0046bfe0: 2831 290a 2020 2d20 4e49 5354 2d38 3030  (1).  - NIST-800
│ │ │ -0046bff0: 2d35 332d 4155 2d32 2864 290a 2020 2d20  -53-AU-2(d).  - 
│ │ │ -0046c000: 4e49 5354 2d38 3030 2d35 332d 4155 2d33  NIST-800-53-AU-3
│ │ │ -0046c010: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -0046c020: 2d43 4d2d 3628 6129 0a20 202d 204e 4953  -CM-6(a).  - NIS
│ │ │ -0046c030: 542d 3830 302d 3533 2d53 492d 3428 3233  T-800-53-SI-4(23
│ │ │ -0046c040: 290a 2020 2d20 5043 492d 4453 532d 5265  ).  - PCI-DSS-Re
│ │ │ -0046c050: 712d 3130 2e31 0a20 202d 2050 4349 2d44  q-10.1.  - PCI-D
│ │ │ -0046c060: 5353 7634 2d31 302e 320a 2020 2d20 5043  SSv4-10.2.  - PC
│ │ │ -0046c070: 492d 4453 5376 342d 3130 2e32 2e31 0a20  I-DSSv4-10.2.1. 
│ │ │ -0046c080: 202d 2065 6e61 626c 655f 7374 7261 7465   - enable_strate
│ │ │ -0046c090: 6779 0a20 202d 206c 6f77 5f63 6f6d 706c  gy.  - low_compl
│ │ │ -0046c0a0: 6578 6974 790a 2020 2d20 6c6f 775f 6469  exity.  - low_di
│ │ │ -0046c0b0: 7372 7570 7469 6f6e 0a20 202d 206d 6564  sruption.  - med
│ │ │ -0046c0c0: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ -0046c0d0: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ -0046c0e0: 640a 2020 2d20 7365 7276 6963 655f 6175  d.  - service_au
│ │ │ -0046c0f0: 6469 7464 5f65 6e61 626c 6564 0a20 202d  ditd_enabled.  -
│ │ │ -0046c100: 2073 7065 6369 616c 5f73 6572 7669 6365   special_service
│ │ │ -0046c110: 5f62 6c6f 636b 0a20 2077 6865 6e3a 0a20  _block.  when:. 
│ │ │ -0046c120: 202d 2027 226b 6572 6e65 6c22 2069 6e20   - '"kernel" in 
│ │ │ -0046c130: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -0046c140: 636b 6167 6573 270a 2020 2d20 2722 6175  ckages'.  - '"au
│ │ │ -0046c150: 6469 7422 2069 6e20 616e 7369 626c 655f  dit" in ansible_
│ │ │ -0046c160: 6661 6374 732e 7061 636b 6167 6573 270a  facts.packages'.
│ │ │ +0046b470: 6564 6961 7469 6f6e 2041 6e73 6962 6c65  ediation Ansible
│ │ │ +0046b480: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e   snippet ...
│ │ │ +0046b490: 3c62 723e 3c64 6976 2063 6c61 7373 3d22  
< │ │ │ +0046b520: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +0046b530: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ +0046b580: 3c74 723e 3c74 683e 5374 7261 7465 6779
- n
│ │ │ +0046b5c0: 616d 653a 2047 6174 6865 7220 7468 6520  ame: Gather the 
│ │ │ +0046b5d0: 7061 636b 6167 6520 6661 6374 730a 2020  package facts.  
│ │ │ +0046b5e0: 7061 636b 6167 655f 6661 6374 733a 0a20  package_facts:. 
│ │ │ +0046b5f0: 2020 206d 616e 6167 6572 3a20 6175 746f     manager: auto
│ │ │ +0046b600: 0a20 2074 6167 733a 0a20 202d 2043 4a49  .  tags:.  - CJI
│ │ │ +0046b610: 532d 352e 342e 312e 310a 2020 2d20 4e49  S-5.4.1.1.  - NI
│ │ │ +0046b620: 5354 2d38 3030 2d31 3731 2d33 2e33 2e31  ST-800-171-3.3.1
│ │ │ +0046b630: 0a20 202d 204e 4953 542d 3830 302d 3137  .  - NIST-800-17
│ │ │ +0046b640: 312d 332e 332e 320a 2020 2d20 4e49 5354  1-3.3.2.  - NIST
│ │ │ +0046b650: 2d38 3030 2d31 3731 2d33 2e33 2e36 0a20  -800-171-3.3.6. 
│ │ │ +0046b660: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ +0046b670: 432d 3228 6729 0a20 202d 204e 4953 542d  C-2(g).  - NIST-
│ │ │ +0046b680: 3830 302d 3533 2d41 432d 3628 3929 0a20  800-53-AC-6(9). 
│ │ │ +0046b690: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ +0046b6a0: 552d 3130 0a20 202d 204e 4953 542d 3830  U-10.  - NIST-80
│ │ │ +0046b6b0: 302d 3533 2d41 552d 3132 2863 290a 2020  0-53-AU-12(c).  
│ │ │ +0046b6c0: 2d20 4e49 5354 2d38 3030 2d35 332d 4155  - NIST-800-53-AU
│ │ │ +0046b6d0: 2d31 3428 3129 0a20 202d 204e 4953 542d  -14(1).  - NIST-
│ │ │ +0046b6e0: 3830 302d 3533 2d41 552d 3228 6429 0a20  800-53-AU-2(d). 
│ │ │ +0046b6f0: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ +0046b700: 552d 330a 2020 2d20 4e49 5354 2d38 3030  U-3.  - NIST-800
│ │ │ +0046b710: 2d35 332d 434d 2d36 2861 290a 2020 2d20  -53-CM-6(a).  - 
│ │ │ +0046b720: 4e49 5354 2d38 3030 2d35 332d 5349 2d34  NIST-800-53-SI-4
│ │ │ +0046b730: 2832 3329 0a20 202d 2050 4349 2d44 5353  (23).  - PCI-DSS
│ │ │ +0046b740: 2d52 6571 2d31 302e 310a 2020 2d20 5043  -Req-10.1.  - PC
│ │ │ +0046b750: 492d 4453 5376 342d 3130 2e32 0a20 202d  I-DSSv4-10.2.  -
│ │ │ +0046b760: 2050 4349 2d44 5353 7634 2d31 302e 322e   PCI-DSSv4-10.2.
│ │ │ +0046b770: 310a 2020 2d20 656e 6162 6c65 5f73 7472  1.  - enable_str
│ │ │ +0046b780: 6174 6567 790a 2020 2d20 6c6f 775f 636f  ategy.  - low_co
│ │ │ +0046b790: 6d70 6c65 7869 7479 0a20 202d 206c 6f77  mplexity.  - low
│ │ │ +0046b7a0: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +0046b7b0: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ +0046b7c0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ +0046b7d0: 6564 6564 0a20 202d 2073 6572 7669 6365  eded.  - service
│ │ │ +0046b7e0: 5f61 7564 6974 645f 656e 6162 6c65 640a  _auditd_enabled.
│ │ │ +0046b7f0: 0a2d 206e 616d 653a 2045 6e61 626c 6520  .- name: Enable 
│ │ │ +0046b800: 6175 6469 7464 2053 6572 7669 6365 202d  auditd Service -
│ │ │ +0046b810: 2045 6e61 626c 6520 7365 7276 6963 6520   Enable service 
│ │ │ +0046b820: 6175 6469 7464 0a20 2062 6c6f 636b 3a0a  auditd.  block:.
│ │ │ +0046b830: 0a20 202d 206e 616d 653a 2047 6174 6865  .  - name: Gathe
│ │ │ +0046b840: 7220 7468 6520 7061 636b 6167 6520 6661  r the package fa
│ │ │ +0046b850: 6374 730a 2020 2020 616e 7369 626c 652e  cts.    ansible.
│ │ │ +0046b860: 6275 696c 7469 6e2e 7061 636b 6167 655f  builtin.package_
│ │ │ +0046b870: 6661 6374 733a 0a20 2020 2020 206d 616e  facts:.      man
│ │ │ +0046b880: 6167 6572 3a20 6175 746f 0a0a 2020 2d20  ager: auto..  - 
│ │ │ +0046b890: 6e61 6d65 3a20 456e 6162 6c65 2061 7564  name: Enable aud
│ │ │ +0046b8a0: 6974 6420 5365 7276 6963 6520 2d20 456e  itd Service - En
│ │ │ +0046b8b0: 6162 6c65 2053 6572 7669 6365 2061 7564  able Service aud
│ │ │ +0046b8c0: 6974 640a 2020 2020 616e 7369 626c 652e  itd.    ansible.
│ │ │ +0046b8d0: 6275 696c 7469 6e2e 7379 7374 656d 643a  builtin.systemd:
│ │ │ +0046b8e0: 0a20 2020 2020 206e 616d 653a 2061 7564  .      name: aud
│ │ │ +0046b8f0: 6974 640a 2020 2020 2020 656e 6162 6c65  itd.      enable
│ │ │ +0046b900: 643a 2074 7275 650a 2020 2020 2020 7374  d: true.      st
│ │ │ +0046b910: 6174 653a 2073 7461 7274 6564 0a20 2020  ate: started.   
│ │ │ +0046b920: 2020 206d 6173 6b65 643a 2066 616c 7365     masked: false
│ │ │ +0046b930: 0a20 2020 2077 6865 6e3a 0a20 2020 202d  .    when:.    -
│ │ │ +0046b940: 2027 2261 7564 6974 2220 696e 2061 6e73   '"audit" in ans
│ │ │ +0046b950: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +0046b960: 6765 7327 0a20 2074 6167 733a 0a20 202d  ges'.  tags:.  -
│ │ │ +0046b970: 2043 4a49 532d 352e 342e 312e 310a 2020   CJIS-5.4.1.1.  
│ │ │ +0046b980: 2d20 4e49 5354 2d38 3030 2d31 3731 2d33  - NIST-800-171-3
│ │ │ +0046b990: 2e33 2e31 0a20 202d 204e 4953 542d 3830  .3.1.  - NIST-80
│ │ │ +0046b9a0: 302d 3137 312d 332e 332e 320a 2020 2d20  0-171-3.3.2.  - 
│ │ │ +0046b9b0: 4e49 5354 2d38 3030 2d31 3731 2d33 2e33  NIST-800-171-3.3
│ │ │ +0046b9c0: 2e36 0a20 202d 204e 4953 542d 3830 302d  .6.  - NIST-800-
│ │ │ +0046b9d0: 3533 2d41 432d 3228 6729 0a20 202d 204e  53-AC-2(g).  - N
│ │ │ +0046b9e0: 4953 542d 3830 302d 3533 2d41 432d 3628  IST-800-53-AC-6(
│ │ │ +0046b9f0: 3929 0a20 202d 204e 4953 542d 3830 302d  9).  - NIST-800-
│ │ │ +0046ba00: 3533 2d41 552d 3130 0a20 202d 204e 4953  53-AU-10.  - NIS
│ │ │ +0046ba10: 542d 3830 302d 3533 2d41 552d 3132 2863  T-800-53-AU-12(c
│ │ │ +0046ba20: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +0046ba30: 332d 4155 2d31 3428 3129 0a20 202d 204e  3-AU-14(1).  - N
│ │ │ +0046ba40: 4953 542d 3830 302d 3533 2d41 552d 3228  IST-800-53-AU-2(
│ │ │ +0046ba50: 6429 0a20 202d 204e 4953 542d 3830 302d  d).  - NIST-800-
│ │ │ +0046ba60: 3533 2d41 552d 330a 2020 2d20 4e49 5354  53-AU-3.  - NIST
│ │ │ +0046ba70: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ +0046ba80: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +0046ba90: 5349 2d34 2832 3329 0a20 202d 2050 4349  SI-4(23).  - PCI
│ │ │ +0046baa0: 2d44 5353 2d52 6571 2d31 302e 310a 2020  -DSS-Req-10.1.  
│ │ │ +0046bab0: 2d20 5043 492d 4453 5376 342d 3130 2e32  - PCI-DSSv4-10.2
│ │ │ +0046bac0: 0a20 202d 2050 4349 2d44 5353 7634 2d31  .  - PCI-DSSv4-1
│ │ │ +0046bad0: 302e 322e 310a 2020 2d20 656e 6162 6c65  0.2.1.  - enable
│ │ │ +0046bae0: 5f73 7472 6174 6567 790a 2020 2d20 6c6f  _strategy.  - lo
│ │ │ +0046baf0: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ +0046bb00: 206c 6f77 5f64 6973 7275 7074 696f 6e0a   low_disruption.
│ │ │ +0046bb10: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ +0046bb20: 6974 790a 2020 2d20 6e6f 5f72 6562 6f6f  ity.  - no_reboo
│ │ │ +0046bb30: 745f 6e65 6564 6564 0a20 202d 2073 6572  t_needed.  - ser
│ │ │ +0046bb40: 7669 6365 5f61 7564 6974 645f 656e 6162  vice_auditd_enab
│ │ │ +0046bb50: 6c65 640a 2020 2d20 7370 6563 6961 6c5f  led.  - special_
│ │ │ +0046bb60: 7365 7276 6963 655f 626c 6f63 6b0a 2020  service_block.  
│ │ │ +0046bb70: 7768 656e 3a0a 2020 2d20 2722 6b65 726e  when:.  - '"kern
│ │ │ +0046bb80: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ +0046bb90: 6163 7473 2e70 6163 6b61 6765 7327 0a20  acts.packages'. 
│ │ │ +0046bba0: 202d 2027 2261 7564 6974 2220 696e 2061   - '"audit" in a
│ │ │ +0046bbb0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +0046bbc0: 6b61 6765 7327 0a3c 2f63 6f64 653e 3c2f  kages'.Remediat
│ │ │ +0046bc80: 696f 6e20 4b75 6265 726e 6574 6573 2073  ion Kubernetes s
│ │ │ +0046bc90: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62  nippet ...
--
│ │ │ +0046bce0: 2d0a 6170 6956 6572 7369 6f6e 3a20 6d61  -.apiVersion: ma
│ │ │ +0046bcf0: 6368 696e 6563 6f6e 6669 6775 7261 7469  chineconfigurati
│ │ │ +0046bd00: 6f6e 2e6f 7065 6e73 6869 6674 2e69 6f2f  on.openshift.io/
│ │ │ +0046bd10: 7631 0a6b 696e 643a 204d 6163 6869 6e65  v1.kind: Machine
│ │ │ +0046bd20: 436f 6e66 6967 0a73 7065 633a 0a20 2063  Config.spec:.  c
│ │ │ +0046bd30: 6f6e 6669 673a 0a20 2020 2069 676e 6974  onfig:.    ignit
│ │ │ +0046bd40: 696f 6e3a 0a20 2020 2020 2076 6572 7369  ion:.      versi
│ │ │ +0046bd50: 6f6e 3a20 332e 312e 300a 2020 2020 7379  on: 3.1.0.    sy
│ │ │ +0046bd60: 7374 656d 643a 0a20 2020 2020 2075 6e69  stemd:.      uni
│ │ │ +0046bd70: 7473 3a0a 2020 2020 2020 2d20 6e61 6d65  ts:.      - name
│ │ │ +0046bd80: 3a20 6175 6469 7464 2e73 6572 7669 6365  : auditd.service
│ │ │ +0046bd90: 0a20 2020 2020 2020 2065 6e61 626c 6564  .        enabled
│ │ │ +0046bda0: 3a20 7472 7565 0a3c 2f63 6f64 653e 3c2f  : true.
Remediat │ │ │ +0046be60: 696f 6e20 5075 7070 6574 2073 6e69 7070 ion Puppet snipp │ │ │ +0046be70: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
< │ │ │ +0046beb0: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +0046bec0: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +0046bed0: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +0046bee0: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +0046bef0: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >
Disruption:Strategy: │ │ │ +0046bf80: 3c74 643e 656e 6162 6c65 3c2f 7464 3e3c < │ │ │ +0046bf90: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
C │ │ │ +0046b510: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ +0046b540: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ +0046b550: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ +0046b590: 3a3c 2f74 683e 3c74 643e 656e 6162 6c65 :enable │ │ │ +0046b5a0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Complex │ │ │ +0046bf00: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ +0046bf10: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
low
Reboo │ │ │ +0046bf50: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ +0046bf60: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
enable
include e
│ │ │ +0046bfb0: 6e61 626c 655f 6175 6469 7464 0a0a 636c  nable_auditd..cl
│ │ │ +0046bfc0: 6173 7320 656e 6162 6c65 5f61 7564 6974  ass enable_audit
│ │ │ +0046bfd0: 6420 7b0a 2020 7365 7276 6963 6520 7b27  d {.  service {'
│ │ │ +0046bfe0: 6175 6469 7464 273a 0a20 2020 2065 6e61  auditd':.    ena
│ │ │ +0046bff0: 626c 6520 3d26 6774 3b20 7472 7565 2c0a  ble => true,.
│ │ │ +0046c000: 2020 2020 656e 7375 7265 203d 2667 743b      ensure =>
│ │ │ +0046c010: 2027 7275 6e6e 696e 6727 2c0a 2020 7d0a   'running',.  }.
│ │ │ +0046c020: 7d0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  }.
< │ │ │ +0046c030: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation O │ │ │ +0046c0e0: 5342 7569 6c64 2042 6c75 6570 7269 6e74 SBuild Blueprint │ │ │ +0046c0f0: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ +0046c100: 3c62 723e 3c64 6976 2063 6c61 7373 3d22

│ │ │ +0046c140: 0a5b 6375 7374 6f6d 697a 6174 696f 6e73  .[customizations
│ │ │ +0046c150: 2e73 6572 7669 6365 735d 0a65 6e61 626c  .services].enabl
│ │ │ +0046c160: 6564 203d 205b 2261 7564 6974 6422 5d0a  ed = ["auditd"].
│ │ │  0046c170: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
Remediation O │ │ │ -0046d9b0: 5342 7569 6c64 2042 6c75 6570 7269 6e74 SBuild Blueprint │ │ │ -0046d9c0: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -0046d9d0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22

│ │ │ -0046da10: 5b63 7573 746f 6d69 7a61 7469 6f6e 732e  [customizations.
│ │ │ -0046da20: 6b65 726e 656c 5d0a 6170 7065 6e64 203d  kernel].append =
│ │ │ -0046da30: 2022 6175 6469 743d 3122 0a3c 2f63 6f64   "audit=1".
Reme │ │ │ -0046daf0: 6469 6174 696f 6e20 416e 7369 626c 6520 diation Ansible │ │ │ -0046db00: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ -0046db10: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
medium< │ │ │ -0046dbe0: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -0046dbf0: 7464 3e74 7275 653c 2f74 643e 3c2f 7472 td>true

│ │ │ -0046dc40: 2d20 6e61 6d65 3a20 4761 7468 6572 2074  - name: Gather t
│ │ │ -0046dc50: 6865 2070 6163 6b61 6765 2066 6163 7473  he package facts
│ │ │ -0046dc60: 0a20 2070 6163 6b61 6765 5f66 6163 7473  .  package_facts
│ │ │ -0046dc70: 3a0a 2020 2020 6d61 6e61 6765 723a 2061  :.    manager: a
│ │ │ -0046dc80: 7574 6f0a 2020 7461 6773 3a0a 2020 2d20  uto.  tags:.  - 
│ │ │ -0046dc90: 434a 4953 2d35 2e34 2e31 2e31 0a20 202d  CJIS-5.4.1.1.  -
│ │ │ -0046dca0: 204e 4953 542d 3830 302d 3137 312d 332e   NIST-800-171-3.
│ │ │ -0046dcb0: 332e 310a 2020 2d20 4e49 5354 2d38 3030  3.1.  - NIST-800
│ │ │ -0046dcc0: 2d35 332d 4143 2d31 3728 3129 0a20 202d  -53-AC-17(1).  -
│ │ │ -0046dcd0: 204e 4953 542d 3830 302d 3533 2d41 552d   NIST-800-53-AU-
│ │ │ -0046dce0: 3130 0a20 202d 204e 4953 542d 3830 302d  10.  - NIST-800-
│ │ │ -0046dcf0: 3533 2d41 552d 3134 2831 290a 2020 2d20  53-AU-14(1).  - 
│ │ │ -0046dd00: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ -0046dd10: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ -0046dd20: 2d35 332d 4952 2d35 2831 290a 2020 2d20  -53-IR-5(1).  - 
│ │ │ -0046dd30: 5043 492d 4453 532d 5265 712d 3130 2e33  PCI-DSS-Req-10.3
│ │ │ -0046dd40: 0a20 202d 2050 4349 2d44 5353 7634 2d31  .  - PCI-DSSv4-1
│ │ │ -0046dd50: 302e 370a 2020 2d20 5043 492d 4453 5376  0.7.  - PCI-DSSv
│ │ │ -0046dd60: 342d 3130 2e37 2e32 0a20 202d 2067 7275  4-10.7.2.  - gru
│ │ │ -0046dd70: 6232 5f61 7564 6974 5f61 7267 756d 656e  b2_audit_argumen
│ │ │ -0046dd80: 740a 2020 2d20 6c6f 775f 6469 7372 7570  t.  - low_disrup
│ │ │ -0046dd90: 7469 6f6e 0a20 202d 206c 6f77 5f73 6576  tion.  - low_sev
│ │ │ -0046dda0: 6572 6974 790a 2020 2d20 6d65 6469 756d  erity.  - medium
│ │ │ -0046ddb0: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ -0046ddc0: 7265 626f 6f74 5f72 6571 7569 7265 640a  reboot_required.
│ │ │ -0046ddd0: 2020 2d20 7265 7374 7269 6374 5f73 7472    - restrict_str
│ │ │ -0046dde0: 6174 6567 790a 0a2d 206e 616d 653a 2043  ategy..- name: C
│ │ │ -0046ddf0: 6865 636b 2069 6620 6175 6469 7420 6172  heck if audit ar
│ │ │ -0046de00: 6775 6d65 6e74 2069 7320 616c 7265 6164  gument is alread
│ │ │ -0046de10: 7920 7072 6573 656e 7420 696e 202f 6574  y present in /et
│ │ │ -0046de20: 632f 6465 6661 756c 742f 6772 7562 0a20  c/default/grub. 
│ │ │ -0046de30: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ -0046de40: 2e73 6c75 7270 3a0a 2020 2020 7372 633a  .slurp:.    src:
│ │ │ -0046de50: 202f 6574 632f 6465 6661 756c 742f 6772   /etc/default/gr
│ │ │ -0046de60: 7562 0a20 2072 6567 6973 7465 723a 2065  ub.  register: e
│ │ │ -0046de70: 7463 5f64 6566 6175 6c74 5f67 7275 620a  tc_default_grub.
│ │ │ -0046de80: 2020 7768 656e 3a0a 2020 2d20 2722 6b65    when:.  - '"ke
│ │ │ -0046de90: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ -0046dea0: 5f66 6163 7473 2e70 6163 6b61 6765 7327  _facts.packages'
│ │ │ -0046deb0: 0a20 202d 2027 2267 7275 6232 2d63 6f6d  .  - '"grub2-com
│ │ │ -0046dec0: 6d6f 6e22 2069 6e20 616e 7369 626c 655f  mon" in ansible_
│ │ │ -0046ded0: 6661 6374 732e 7061 636b 6167 6573 270a  facts.packages'.
│ │ │ -0046dee0: 2020 7461 6773 3a0a 2020 2d20 434a 4953    tags:.  - CJIS
│ │ │ -0046def0: 2d35 2e34 2e31 2e31 0a20 202d 204e 4953  -5.4.1.1.  - NIS
│ │ │ -0046df00: 542d 3830 302d 3137 312d 332e 332e 310a  T-800-171-3.3.1.
│ │ │ -0046df10: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -0046df20: 4143 2d31 3728 3129 0a20 202d 204e 4953  AC-17(1).  - NIS
│ │ │ -0046df30: 542d 3830 302d 3533 2d41 552d 3130 0a20  T-800-53-AU-10. 
│ │ │ -0046df40: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ -0046df50: 552d 3134 2831 290a 2020 2d20 4e49 5354  U-14(1).  - NIST
│ │ │ -0046df60: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ -0046df70: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -0046df80: 4952 2d35 2831 290a 2020 2d20 5043 492d  IR-5(1).  - PCI-
│ │ │ -0046df90: 4453 532d 5265 712d 3130 2e33 0a20 202d  DSS-Req-10.3.  -
│ │ │ -0046dfa0: 2050 4349 2d44 5353 7634 2d31 302e 370a   PCI-DSSv4-10.7.
│ │ │ -0046dfb0: 2020 2d20 5043 492d 4453 5376 342d 3130    - PCI-DSSv4-10
│ │ │ -0046dfc0: 2e37 2e32 0a20 202d 2067 7275 6232 5f61  .7.2.  - grub2_a
│ │ │ -0046dfd0: 7564 6974 5f61 7267 756d 656e 740a 2020  udit_argument.  
│ │ │ -0046dfe0: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ -0046dff0: 0a20 202d 206c 6f77 5f73 6576 6572 6974  .  - low_severit
│ │ │ -0046e000: 790a 2020 2d20 6d65 6469 756d 5f63 6f6d  y.  - medium_com
│ │ │ -0046e010: 706c 6578 6974 790a 2020 2d20 7265 626f  plexity.  - rebo
│ │ │ -0046e020: 6f74 5f72 6571 7569 7265 640a 2020 2d20  ot_required.  - 
│ │ │ -0046e030: 7265 7374 7269 6374 5f73 7472 6174 6567  restrict_strateg
│ │ │ -0046e040: 790a 0a2d 206e 616d 653a 2043 6865 636b  y..- name: Check
│ │ │ -0046e050: 2069 6620 6175 6469 7420 6172 6775 6d65   if audit argume
│ │ │ -0046e060: 6e74 2069 7320 616c 7265 6164 7920 7072  nt is already pr
│ │ │ -0046e070: 6573 656e 740a 2020 616e 7369 626c 652e  esent.  ansible.
│ │ │ -0046e080: 6275 696c 7469 6e2e 636f 6d6d 616e 643a  builtin.command:
│ │ │ -0046e090: 202f 7362 696e 2f67 7275 6262 7920 2d2d   /sbin/grubby --
│ │ │ -0046e0a0: 696e 666f 3d41 4c4c 0a20 2072 6567 6973  info=ALL.  regis
│ │ │ -0046e0b0: 7465 723a 2067 7275 6262 795f 696e 666f  ter: grubby_info
│ │ │ -0046e0c0: 0a20 2063 6865 636b 5f6d 6f64 653a 2066  .  check_mode: f
│ │ │ -0046e0d0: 616c 7365 0a20 2063 6861 6e67 6564 5f77  alse.  changed_w
│ │ │ -0046e0e0: 6865 6e3a 2066 616c 7365 0a20 2066 6169  hen: false.  fai
│ │ │ -0046e0f0: 6c65 645f 7768 656e 3a20 6661 6c73 650a  led_when: false.
│ │ │ -0046e100: 2020 7768 656e 3a0a 2020 2d20 2722 6b65    when:.  - '"ke
│ │ │ -0046e110: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ -0046e120: 5f66 6163 7473 2e70 6163 6b61 6765 7327  _facts.packages'
│ │ │ -0046e130: 0a20 202d 2027 2267 7275 6232 2d63 6f6d  .  - '"grub2-com
│ │ │ -0046e140: 6d6f 6e22 2069 6e20 616e 7369 626c 655f  mon" in ansible_
│ │ │ -0046e150: 6661 6374 732e 7061 636b 6167 6573 270a  facts.packages'.
│ │ │ -0046e160: 2020 7461 6773 3a0a 2020 2d20 434a 4953    tags:.  - CJIS
│ │ │ -0046e170: 2d35 2e34 2e31 2e31 0a20 202d 204e 4953  -5.4.1.1.  - NIS
│ │ │ -0046e180: 542d 3830 302d 3137 312d 332e 332e 310a  T-800-171-3.3.1.
│ │ │ -0046e190: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -0046e1a0: 4143 2d31 3728 3129 0a20 202d 204e 4953  AC-17(1).  - NIS
│ │ │ -0046e1b0: 542d 3830 302d 3533 2d41 552d 3130 0a20  T-800-53-AU-10. 
│ │ │ -0046e1c0: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ -0046e1d0: 552d 3134 2831 290a 2020 2d20 4e49 5354  U-14(1).  - NIST
│ │ │ -0046e1e0: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ -0046e1f0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -0046e200: 4952 2d35 2831 290a 2020 2d20 5043 492d  IR-5(1).  - PCI-
│ │ │ -0046e210: 4453 532d 5265 712d 3130 2e33 0a20 202d  DSS-Req-10.3.  -
│ │ │ -0046e220: 2050 4349 2d44 5353 7634 2d31 302e 370a   PCI-DSSv4-10.7.
│ │ │ -0046e230: 2020 2d20 5043 492d 4453 5376 342d 3130    - PCI-DSSv4-10
│ │ │ -0046e240: 2e37 2e32 0a20 202d 2067 7275 6232 5f61  .7.2.  - grub2_a
│ │ │ -0046e250: 7564 6974 5f61 7267 756d 656e 740a 2020  udit_argument.  
│ │ │ -0046e260: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ -0046e270: 0a20 202d 206c 6f77 5f73 6576 6572 6974  .  - low_severit
│ │ │ -0046e280: 790a 2020 2d20 6d65 6469 756d 5f63 6f6d  y.  - medium_com
│ │ │ -0046e290: 706c 6578 6974 790a 2020 2d20 7265 626f  plexity.  - rebo
│ │ │ -0046e2a0: 6f74 5f72 6571 7569 7265 640a 2020 2d20  ot_required.  - 
│ │ │ -0046e2b0: 7265 7374 7269 6374 5f73 7472 6174 6567  restrict_strateg
│ │ │ -0046e2c0: 790a 0a2d 206e 616d 653a 2055 7064 6174  y..- name: Updat
│ │ │ -0046e2d0: 6520 6772 7562 2064 6566 6175 6c74 7320  e grub defaults 
│ │ │ -0046e2e0: 616e 6420 7468 6520 626f 6f74 6c6f 6164  and the bootload
│ │ │ -0046e2f0: 6572 206d 656e 750a 2020 616e 7369 626c  er menu.  ansibl
│ │ │ -0046e300: 652e 6275 696c 7469 6e2e 636f 6d6d 616e  e.builtin.comman
│ │ │ -0046e310: 643a 202f 7362 696e 2f67 7275 6262 7920  d: /sbin/grubby 
│ │ │ -0046e320: 2d2d 7570 6461 7465 2d6b 6572 6e65 6c3d  --update-kernel=
│ │ │ -0046e330: 414c 4c20 2d2d 6172 6773 3d22 6175 6469  ALL --args="audi
│ │ │ -0046e340: 743d 3122 0a20 2077 6865 6e3a 0a20 202d  t=1".  when:.  -
│ │ │ -0046e350: 2027 226b 6572 6e65 6c22 2069 6e20 616e   '"kernel" in an
│ │ │ -0046e360: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -0046e370: 6167 6573 270a 2020 2d20 2722 6772 7562  ages'.  - '"grub
│ │ │ -0046e380: 322d 636f 6d6d 6f6e 2220 696e 2061 6e73  2-common" in ans
│ │ │ -0046e390: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -0046e3a0: 6765 7327 0a20 202d 2028 6772 7562 6279  ges'.  - (grubby
│ │ │ -0046e3b0: 5f69 6e66 6f2e 7374 646f 7574 2069 7320  _info.stdout is 
│ │ │ -0046e3c0: 6e6f 7420 7365 6172 6368 2827 6175 6469  not search('audi
│ │ │ -0046e3d0: 743d 3127 2929 206f 7220 2828 6574 635f  t=1')) or ((etc_
│ │ │ -0046e3e0: 6465 6661 756c 745f 6772 7562 5b27 636f  default_grub['co
│ │ │ -0046e3f0: 6e74 656e 7427 5d0a 2020 2020 7c20 6236  ntent'].    | b6
│ │ │ -0046e400: 3464 6563 6f64 6529 2069 7320 6e6f 7420  4decode) is not 
│ │ │ -0046e410: 7365 6172 6368 2827 6175 6469 743d 3127  search('audit=1'
│ │ │ -0046e420: 2929 0a20 2074 6167 733a 0a20 202d 2043  )).  tags:.  - C
│ │ │ -0046e430: 4a49 532d 352e 342e 312e 310a 2020 2d20  JIS-5.4.1.1.  - 
│ │ │ -0046e440: 4e49 5354 2d38 3030 2d31 3731 2d33 2e33  NIST-800-171-3.3
│ │ │ -0046e450: 2e31 0a20 202d 204e 4953 542d 3830 302d  .1.  - NIST-800-
│ │ │ -0046e460: 3533 2d41 432d 3137 2831 290a 2020 2d20  53-AC-17(1).  - 
│ │ │ -0046e470: 4e49 5354 2d38 3030 2d35 332d 4155 2d31  NIST-800-53-AU-1
│ │ │ -0046e480: 300a 2020 2d20 4e49 5354 2d38 3030 2d35  0.  - NIST-800-5
│ │ │ -0046e490: 332d 4155 2d31 3428 3129 0a20 202d 204e  3-AU-14(1).  - N
│ │ │ -0046e4a0: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ -0046e4b0: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ -0046e4c0: 3533 2d49 522d 3528 3129 0a20 202d 2050  53-IR-5(1).  - P
│ │ │ -0046e4d0: 4349 2d44 5353 2d52 6571 2d31 302e 330a  CI-DSS-Req-10.3.
│ │ │ -0046e4e0: 2020 2d20 5043 492d 4453 5376 342d 3130    - PCI-DSSv4-10
│ │ │ -0046e4f0: 2e37 0a20 202d 2050 4349 2d44 5353 7634  .7.  - PCI-DSSv4
│ │ │ -0046e500: 2d31 302e 372e 320a 2020 2d20 6772 7562  -10.7.2.  - grub
│ │ │ -0046e510: 325f 6175 6469 745f 6172 6775 6d65 6e74  2_audit_argument
│ │ │ -0046e520: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ -0046e530: 696f 6e0a 2020 2d20 6c6f 775f 7365 7665  ion.  - low_seve
│ │ │ -0046e540: 7269 7479 0a20 202d 206d 6564 6975 6d5f  rity.  - medium_
│ │ │ -0046e550: 636f 6d70 6c65 7869 7479 0a20 202d 2072  complexity.  - r
│ │ │ -0046e560: 6562 6f6f 745f 7265 7175 6972 6564 0a20  eboot_required. 
│ │ │ -0046e570: 202d 2072 6573 7472 6963 745f 7374 7261   - restrict_stra
│ │ │ -0046e580: 7465 6779 0a3c 2f63 6f64 653e 3c2f 7072  tegy.Remediation A
│ │ │ +0046d9b0: 6e73 6962 6c65 2073 6e69 7070 6574 20e2  nsible snippet .
│ │ │ +0046d9c0: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063  ..
restrict< │ │ │ +0046dae0: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
Co │ │ │ -0046db90: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disrup │ │ │ -0046dbc0: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -0046dbd0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strateg │ │ │ -0046dc10: 793a 3c2f 7468 3e3c 7464 3e72 6573 7472 y:restr │ │ │ -0046dc20: 6963 743c 2f74 643e 3c2f 7472 3e3c 2f74 ict
Complexity: │ │ │ +0046da50: 3c2f 7468 3e3c 7464 3e6d 6564 6975 6d3c medium< │ │ │ +0046da60: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Disruption:low
Reboot │ │ │ +0046daa0: 3a3c 2f74 683e 3c74 643e 7472 7565 3c2f :true
│ │ │ +0046dac0: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:
- name: G
│ │ │ +0046db00: 6174 6865 7220 7468 6520 7061 636b 6167  ather the packag
│ │ │ +0046db10: 6520 6661 6374 730a 2020 7061 636b 6167  e facts.  packag
│ │ │ +0046db20: 655f 6661 6374 733a 0a20 2020 206d 616e  e_facts:.    man
│ │ │ +0046db30: 6167 6572 3a20 6175 746f 0a20 2074 6167  ager: auto.  tag
│ │ │ +0046db40: 733a 0a20 202d 2043 4a49 532d 352e 342e  s:.  - CJIS-5.4.
│ │ │ +0046db50: 312e 310a 2020 2d20 4e49 5354 2d38 3030  1.1.  - NIST-800
│ │ │ +0046db60: 2d31 3731 2d33 2e33 2e31 0a20 202d 204e  -171-3.3.1.  - N
│ │ │ +0046db70: 4953 542d 3830 302d 3533 2d41 432d 3137  IST-800-53-AC-17
│ │ │ +0046db80: 2831 290a 2020 2d20 4e49 5354 2d38 3030  (1).  - NIST-800
│ │ │ +0046db90: 2d35 332d 4155 2d31 300a 2020 2d20 4e49  -53-AU-10.  - NI
│ │ │ +0046dba0: 5354 2d38 3030 2d35 332d 4155 2d31 3428  ST-800-53-AU-14(
│ │ │ +0046dbb0: 3129 0a20 202d 204e 4953 542d 3830 302d  1).  - NIST-800-
│ │ │ +0046dbc0: 3533 2d43 4d2d 3628 6129 0a20 202d 204e  53-CM-6(a).  - N
│ │ │ +0046dbd0: 4953 542d 3830 302d 3533 2d49 522d 3528  IST-800-53-IR-5(
│ │ │ +0046dbe0: 3129 0a20 202d 2050 4349 2d44 5353 2d52  1).  - PCI-DSS-R
│ │ │ +0046dbf0: 6571 2d31 302e 330a 2020 2d20 5043 492d  eq-10.3.  - PCI-
│ │ │ +0046dc00: 4453 5376 342d 3130 2e37 0a20 202d 2050  DSSv4-10.7.  - P
│ │ │ +0046dc10: 4349 2d44 5353 7634 2d31 302e 372e 320a  CI-DSSv4-10.7.2.
│ │ │ +0046dc20: 2020 2d20 6772 7562 325f 6175 6469 745f    - grub2_audit_
│ │ │ +0046dc30: 6172 6775 6d65 6e74 0a20 202d 206c 6f77  argument.  - low
│ │ │ +0046dc40: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +0046dc50: 6c6f 775f 7365 7665 7269 7479 0a20 202d  low_severity.  -
│ │ │ +0046dc60: 206d 6564 6975 6d5f 636f 6d70 6c65 7869   medium_complexi
│ │ │ +0046dc70: 7479 0a20 202d 2072 6562 6f6f 745f 7265  ty.  - reboot_re
│ │ │ +0046dc80: 7175 6972 6564 0a20 202d 2072 6573 7472  quired.  - restr
│ │ │ +0046dc90: 6963 745f 7374 7261 7465 6779 0a0a 2d20  ict_strategy..- 
│ │ │ +0046dca0: 6e61 6d65 3a20 4368 6563 6b20 6966 2061  name: Check if a
│ │ │ +0046dcb0: 7564 6974 2061 7267 756d 656e 7420 6973  udit argument is
│ │ │ +0046dcc0: 2061 6c72 6561 6479 2070 7265 7365 6e74   already present
│ │ │ +0046dcd0: 2069 6e20 2f65 7463 2f64 6566 6175 6c74   in /etc/default
│ │ │ +0046dce0: 2f67 7275 620a 2020 616e 7369 626c 652e  /grub.  ansible.
│ │ │ +0046dcf0: 6275 696c 7469 6e2e 736c 7572 703a 0a20  builtin.slurp:. 
│ │ │ +0046dd00: 2020 2073 7263 3a20 2f65 7463 2f64 6566     src: /etc/def
│ │ │ +0046dd10: 6175 6c74 2f67 7275 620a 2020 7265 6769  ault/grub.  regi
│ │ │ +0046dd20: 7374 6572 3a20 6574 635f 6465 6661 756c  ster: etc_defaul
│ │ │ +0046dd30: 745f 6772 7562 0a20 2077 6865 6e3a 0a20  t_grub.  when:. 
│ │ │ +0046dd40: 202d 2027 226b 6572 6e65 6c22 2069 6e20   - '"kernel" in 
│ │ │ +0046dd50: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +0046dd60: 636b 6167 6573 270a 2020 2d20 2722 6772  ckages'.  - '"gr
│ │ │ +0046dd70: 7562 322d 636f 6d6d 6f6e 2220 696e 2061  ub2-common" in a
│ │ │ +0046dd80: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +0046dd90: 6b61 6765 7327 0a20 2074 6167 733a 0a20  kages'.  tags:. 
│ │ │ +0046dda0: 202d 2043 4a49 532d 352e 342e 312e 310a   - CJIS-5.4.1.1.
│ │ │ +0046ddb0: 2020 2d20 4e49 5354 2d38 3030 2d31 3731    - NIST-800-171
│ │ │ +0046ddc0: 2d33 2e33 2e31 0a20 202d 204e 4953 542d  -3.3.1.  - NIST-
│ │ │ +0046ddd0: 3830 302d 3533 2d41 432d 3137 2831 290a  800-53-AC-17(1).
│ │ │ +0046dde0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +0046ddf0: 4155 2d31 300a 2020 2d20 4e49 5354 2d38  AU-10.  - NIST-8
│ │ │ +0046de00: 3030 2d35 332d 4155 2d31 3428 3129 0a20  00-53-AU-14(1). 
│ │ │ +0046de10: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +0046de20: 4d2d 3628 6129 0a20 202d 204e 4953 542d  M-6(a).  - NIST-
│ │ │ +0046de30: 3830 302d 3533 2d49 522d 3528 3129 0a20  800-53-IR-5(1). 
│ │ │ +0046de40: 202d 2050 4349 2d44 5353 2d52 6571 2d31   - PCI-DSS-Req-1
│ │ │ +0046de50: 302e 330a 2020 2d20 5043 492d 4453 5376  0.3.  - PCI-DSSv
│ │ │ +0046de60: 342d 3130 2e37 0a20 202d 2050 4349 2d44  4-10.7.  - PCI-D
│ │ │ +0046de70: 5353 7634 2d31 302e 372e 320a 2020 2d20  SSv4-10.7.2.  - 
│ │ │ +0046de80: 6772 7562 325f 6175 6469 745f 6172 6775  grub2_audit_argu
│ │ │ +0046de90: 6d65 6e74 0a20 202d 206c 6f77 5f64 6973  ment.  - low_dis
│ │ │ +0046dea0: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f  ruption.  - low_
│ │ │ +0046deb0: 7365 7665 7269 7479 0a20 202d 206d 6564  severity.  - med
│ │ │ +0046dec0: 6975 6d5f 636f 6d70 6c65 7869 7479 0a20  ium_complexity. 
│ │ │ +0046ded0: 202d 2072 6562 6f6f 745f 7265 7175 6972   - reboot_requir
│ │ │ +0046dee0: 6564 0a20 202d 2072 6573 7472 6963 745f  ed.  - restrict_
│ │ │ +0046def0: 7374 7261 7465 6779 0a0a 2d20 6e61 6d65  strategy..- name
│ │ │ +0046df00: 3a20 4368 6563 6b20 6966 2061 7564 6974  : Check if audit
│ │ │ +0046df10: 2061 7267 756d 656e 7420 6973 2061 6c72   argument is alr
│ │ │ +0046df20: 6561 6479 2070 7265 7365 6e74 0a20 2061  eady present.  a
│ │ │ +0046df30: 6e73 6962 6c65 2e62 7569 6c74 696e 2e63  nsible.builtin.c
│ │ │ +0046df40: 6f6d 6d61 6e64 3a20 2f73 6269 6e2f 6772  ommand: /sbin/gr
│ │ │ +0046df50: 7562 6279 202d 2d69 6e66 6f3d 414c 4c0a  ubby --info=ALL.
│ │ │ +0046df60: 2020 7265 6769 7374 6572 3a20 6772 7562    register: grub
│ │ │ +0046df70: 6279 5f69 6e66 6f0a 2020 6368 6563 6b5f  by_info.  check_
│ │ │ +0046df80: 6d6f 6465 3a20 6661 6c73 650a 2020 6368  mode: false.  ch
│ │ │ +0046df90: 616e 6765 645f 7768 656e 3a20 6661 6c73  anged_when: fals
│ │ │ +0046dfa0: 650a 2020 6661 696c 6564 5f77 6865 6e3a  e.  failed_when:
│ │ │ +0046dfb0: 2066 616c 7365 0a20 2077 6865 6e3a 0a20   false.  when:. 
│ │ │ +0046dfc0: 202d 2027 226b 6572 6e65 6c22 2069 6e20   - '"kernel" in 
│ │ │ +0046dfd0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +0046dfe0: 636b 6167 6573 270a 2020 2d20 2722 6772  ckages'.  - '"gr
│ │ │ +0046dff0: 7562 322d 636f 6d6d 6f6e 2220 696e 2061  ub2-common" in a
│ │ │ +0046e000: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +0046e010: 6b61 6765 7327 0a20 2074 6167 733a 0a20  kages'.  tags:. 
│ │ │ +0046e020: 202d 2043 4a49 532d 352e 342e 312e 310a   - CJIS-5.4.1.1.
│ │ │ +0046e030: 2020 2d20 4e49 5354 2d38 3030 2d31 3731    - NIST-800-171
│ │ │ +0046e040: 2d33 2e33 2e31 0a20 202d 204e 4953 542d  -3.3.1.  - NIST-
│ │ │ +0046e050: 3830 302d 3533 2d41 432d 3137 2831 290a  800-53-AC-17(1).
│ │ │ +0046e060: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +0046e070: 4155 2d31 300a 2020 2d20 4e49 5354 2d38  AU-10.  - NIST-8
│ │ │ +0046e080: 3030 2d35 332d 4155 2d31 3428 3129 0a20  00-53-AU-14(1). 
│ │ │ +0046e090: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +0046e0a0: 4d2d 3628 6129 0a20 202d 204e 4953 542d  M-6(a).  - NIST-
│ │ │ +0046e0b0: 3830 302d 3533 2d49 522d 3528 3129 0a20  800-53-IR-5(1). 
│ │ │ +0046e0c0: 202d 2050 4349 2d44 5353 2d52 6571 2d31   - PCI-DSS-Req-1
│ │ │ +0046e0d0: 302e 330a 2020 2d20 5043 492d 4453 5376  0.3.  - PCI-DSSv
│ │ │ +0046e0e0: 342d 3130 2e37 0a20 202d 2050 4349 2d44  4-10.7.  - PCI-D
│ │ │ +0046e0f0: 5353 7634 2d31 302e 372e 320a 2020 2d20  SSv4-10.7.2.  - 
│ │ │ +0046e100: 6772 7562 325f 6175 6469 745f 6172 6775  grub2_audit_argu
│ │ │ +0046e110: 6d65 6e74 0a20 202d 206c 6f77 5f64 6973  ment.  - low_dis
│ │ │ +0046e120: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f  ruption.  - low_
│ │ │ +0046e130: 7365 7665 7269 7479 0a20 202d 206d 6564  severity.  - med
│ │ │ +0046e140: 6975 6d5f 636f 6d70 6c65 7869 7479 0a20  ium_complexity. 
│ │ │ +0046e150: 202d 2072 6562 6f6f 745f 7265 7175 6972   - reboot_requir
│ │ │ +0046e160: 6564 0a20 202d 2072 6573 7472 6963 745f  ed.  - restrict_
│ │ │ +0046e170: 7374 7261 7465 6779 0a0a 2d20 6e61 6d65  strategy..- name
│ │ │ +0046e180: 3a20 5570 6461 7465 2067 7275 6220 6465  : Update grub de
│ │ │ +0046e190: 6661 756c 7473 2061 6e64 2074 6865 2062  faults and the b
│ │ │ +0046e1a0: 6f6f 746c 6f61 6465 7220 6d65 6e75 0a20  ootloader menu. 
│ │ │ +0046e1b0: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ +0046e1c0: 2e63 6f6d 6d61 6e64 3a20 2f73 6269 6e2f  .command: /sbin/
│ │ │ +0046e1d0: 6772 7562 6279 202d 2d75 7064 6174 652d  grubby --update-
│ │ │ +0046e1e0: 6b65 726e 656c 3d41 4c4c 202d 2d61 7267  kernel=ALL --arg
│ │ │ +0046e1f0: 733d 2261 7564 6974 3d31 220a 2020 7768  s="audit=1".  wh
│ │ │ +0046e200: 656e 3a0a 2020 2d20 2722 6b65 726e 656c  en:.  - '"kernel
│ │ │ +0046e210: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +0046e220: 7473 2e70 6163 6b61 6765 7327 0a20 202d  ts.packages'.  -
│ │ │ +0046e230: 2027 2267 7275 6232 2d63 6f6d 6d6f 6e22   '"grub2-common"
│ │ │ +0046e240: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +0046e250: 732e 7061 636b 6167 6573 270a 2020 2d20  s.packages'.  - 
│ │ │ +0046e260: 2867 7275 6262 795f 696e 666f 2e73 7464  (grubby_info.std
│ │ │ +0046e270: 6f75 7420 6973 206e 6f74 2073 6561 7263  out is not searc
│ │ │ +0046e280: 6828 2761 7564 6974 3d31 2729 2920 6f72  h('audit=1')) or
│ │ │ +0046e290: 2028 2865 7463 5f64 6566 6175 6c74 5f67   ((etc_default_g
│ │ │ +0046e2a0: 7275 625b 2763 6f6e 7465 6e74 275d 0a20  rub['content']. 
│ │ │ +0046e2b0: 2020 207c 2062 3634 6465 636f 6465 2920     | b64decode) 
│ │ │ +0046e2c0: 6973 206e 6f74 2073 6561 7263 6828 2761  is not search('a
│ │ │ +0046e2d0: 7564 6974 3d31 2729 290a 2020 7461 6773  udit=1')).  tags
│ │ │ +0046e2e0: 3a0a 2020 2d20 434a 4953 2d35 2e34 2e31  :.  - CJIS-5.4.1
│ │ │ +0046e2f0: 2e31 0a20 202d 204e 4953 542d 3830 302d  .1.  - NIST-800-
│ │ │ +0046e300: 3137 312d 332e 332e 310a 2020 2d20 4e49  171-3.3.1.  - NI
│ │ │ +0046e310: 5354 2d38 3030 2d35 332d 4143 2d31 3728  ST-800-53-AC-17(
│ │ │ +0046e320: 3129 0a20 202d 204e 4953 542d 3830 302d  1).  - NIST-800-
│ │ │ +0046e330: 3533 2d41 552d 3130 0a20 202d 204e 4953  53-AU-10.  - NIS
│ │ │ +0046e340: 542d 3830 302d 3533 2d41 552d 3134 2831  T-800-53-AU-14(1
│ │ │ +0046e350: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +0046e360: 332d 434d 2d36 2861 290a 2020 2d20 4e49  3-CM-6(a).  - NI
│ │ │ +0046e370: 5354 2d38 3030 2d35 332d 4952 2d35 2831  ST-800-53-IR-5(1
│ │ │ +0046e380: 290a 2020 2d20 5043 492d 4453 532d 5265  ).  - PCI-DSS-Re
│ │ │ +0046e390: 712d 3130 2e33 0a20 202d 2050 4349 2d44  q-10.3.  - PCI-D
│ │ │ +0046e3a0: 5353 7634 2d31 302e 370a 2020 2d20 5043  SSv4-10.7.  - PC
│ │ │ +0046e3b0: 492d 4453 5376 342d 3130 2e37 2e32 0a20  I-DSSv4-10.7.2. 
│ │ │ +0046e3c0: 202d 2067 7275 6232 5f61 7564 6974 5f61   - grub2_audit_a
│ │ │ +0046e3d0: 7267 756d 656e 740a 2020 2d20 6c6f 775f  rgument.  - low_
│ │ │ +0046e3e0: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ +0046e3f0: 6f77 5f73 6576 6572 6974 790a 2020 2d20  ow_severity.  - 
│ │ │ +0046e400: 6d65 6469 756d 5f63 6f6d 706c 6578 6974  medium_complexit
│ │ │ +0046e410: 790a 2020 2d20 7265 626f 6f74 5f72 6571  y.  - reboot_req
│ │ │ +0046e420: 7569 7265 640a 2020 2d20 7265 7374 7269  uired.  - restri
│ │ │ +0046e430: 6374 5f73 7472 6174 6567 790a 3c2f 636f  ct_strategy.
< │ │ │ +0046e450: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ +0046e460: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ +0046e470: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ +0046e480: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ +0046e490: 6431 3131 3622 2074 6162 696e 6465 783d d1116" tabindex= │ │ │ +0046e4a0: 2230 2220 726f 6c65 3d22 6275 7474 6f6e "0" role="button │ │ │ +0046e4b0: 2220 6172 6961 2d65 7870 616e 6465 643d " aria-expanded= │ │ │ +0046e4c0: 2266 616c 7365 2220 7469 746c 653d 2241 "false" title="A │ │ │ +0046e4d0: 6374 6976 6174 6520 746f 2072 6576 6561 ctivate to revea │ │ │ +0046e4e0: 6c22 2068 7265 663d 2223 2122 3e52 656d l" href="#!">Rem │ │ │ +0046e4f0: 6564 6961 7469 6f6e 204f 5342 7569 6c64 ediation OSBuild │ │ │ +0046e500: 2042 6c75 6570 7269 6e74 2073 6e69 7070 Blueprint snipp │ │ │ +0046e510: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
< │ │ │ +0046e550: 7072 653e 3c63 6f64 653e 5b63 7573 746f pre>[custo │ │ │ +0046e560: 6d69 7a61 7469 6f6e 732e 6b65 726e 656c mizations.kernel │ │ │ +0046e570: 5d0a 6170 7065 6e64 203d 2022 6175 6469 ].append = "audi │ │ │ +0046e580: 743d 3122 0a3c 2f63 6f64 653e 3c2f 7072 t=1".
Remediation │ │ │ -0046f870: 4f53 4275 696c 6420 426c 7565 7072 696e OSBuild Blueprin │ │ │ -0046f880: 7420 736e 6970 7065 7420 e287 b23c 2f61 t snippet ...
[customizations
│ │ │ -0046f8e0: 2e6b 6572 6e65 6c5d 0a61 7070 656e 6420  .kernel].append 
│ │ │ -0046f8f0: 3d20 2261 7564 6974 5f62 6163 6b6c 6f67  = "audit_backlog
│ │ │ -0046f900: 5f6c 696d 6974 3d3c 6162 6272 2074 6974  _limit=8192<
│ │ │ -0046f970: 2f61 6262 723e 220a 3c2f 636f 6465 3e3c  /abbr>".<
│ │ │ -0046f980: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>
Remedia │ │ │ -0046fa30: 7469 6f6e 2041 6e73 6962 6c65 2073 6e69 tion Ansible sni │ │ │ -0046fa40: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -0046fa50: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
< │ │ │ -0046faf0: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>
- n
│ │ │ -0046fb80: 616d 653a 2047 6174 6865 7220 7468 6520  ame: Gather the 
│ │ │ -0046fb90: 7061 636b 6167 6520 6661 6374 730a 2020  package facts.  
│ │ │ -0046fba0: 7061 636b 6167 655f 6661 6374 733a 0a20  package_facts:. 
│ │ │ -0046fbb0: 2020 206d 616e 6167 6572 3a20 6175 746f     manager: auto
│ │ │ -0046fbc0: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ -0046fbd0: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ -0046fbe0: 0a20 202d 2050 4349 2d44 5353 7634 2d31  .  - PCI-DSSv4-1
│ │ │ -0046fbf0: 302e 370a 2020 2d20 5043 492d 4453 5376  0.7.  - PCI-DSSv
│ │ │ -0046fc00: 342d 3130 2e37 2e32 0a20 202d 2067 7275  4-10.7.2.  - gru
│ │ │ -0046fc10: 6232 5f61 7564 6974 5f62 6163 6b6c 6f67  b2_audit_backlog
│ │ │ -0046fc20: 5f6c 696d 6974 5f61 7267 756d 656e 740a  _limit_argument.
│ │ │ -0046fc30: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ -0046fc40: 6f6e 0a20 202d 206c 6f77 5f73 6576 6572  on.  - low_sever
│ │ │ -0046fc50: 6974 790a 2020 2d20 6d65 6469 756d 5f63  ity.  - medium_c
│ │ │ -0046fc60: 6f6d 706c 6578 6974 790a 2020 2d20 7265  omplexity.  - re
│ │ │ -0046fc70: 626f 6f74 5f72 6571 7569 7265 640a 2020  boot_required.  
│ │ │ -0046fc80: 2d20 7265 7374 7269 6374 5f73 7472 6174  - restrict_strat
│ │ │ -0046fc90: 6567 790a 2d20 6e61 6d65 3a20 5843 4344  egy.- name: XCCD
│ │ │ -0046fca0: 4620 5661 6c75 6520 7661 725f 6175 6469  F Value var_audi
│ │ │ -0046fcb0: 745f 6261 636b 6c6f 675f 6c69 6d69 7420  t_backlog_limit 
│ │ │ -0046fcc0: 2320 7072 6f6d 6f74 6520 746f 2076 6172  # promote to var
│ │ │ -0046fcd0: 6961 626c 650a 2020 7365 745f 6661 6374  iable.  set_fact
│ │ │ -0046fce0: 3a0a 2020 2020 7661 725f 6175 6469 745f  :.    var_audit_
│ │ │ -0046fcf0: 6261 636b 6c6f 675f 6c69 6d69 743a 2021  backlog_limit: !
│ │ │ -0046fd00: 2173 7472 203c 6162 6272 2074 6974 6c65  !str 8192.  tags:.   
│ │ │ -0046fd80: 202d 2061 6c77 6179 730a 0a2d 206e 616d   - always..- nam
│ │ │ -0046fd90: 653a 2043 6865 636b 2069 6620 6175 6469  e: Check if audi
│ │ │ -0046fda0: 745f 6261 636b 6c6f 675f 6c69 6d69 7420  t_backlog_limit 
│ │ │ -0046fdb0: 6172 6775 6d65 6e74 2069 7320 616c 7265  argument is alre
│ │ │ -0046fdc0: 6164 7920 7072 6573 656e 7420 696e 202f  ady present in /
│ │ │ -0046fdd0: 6574 632f 6465 6661 756c 742f 6772 7562  etc/default/grub
│ │ │ -0046fde0: 0a20 2061 6e73 6962 6c65 2e62 7569 6c74  .  ansible.built
│ │ │ -0046fdf0: 696e 2e73 6c75 7270 3a0a 2020 2020 7372  in.slurp:.    sr
│ │ │ -0046fe00: 633a 202f 6574 632f 6465 6661 756c 742f  c: /etc/default/
│ │ │ -0046fe10: 6772 7562 0a20 2072 6567 6973 7465 723a  grub.  register:
│ │ │ -0046fe20: 2065 7463 5f64 6566 6175 6c74 5f67 7275   etc_default_gru
│ │ │ -0046fe30: 620a 2020 7768 656e 3a0a 2020 2d20 2722  b.  when:.  - '"
│ │ │ -0046fe40: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ -0046fe50: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -0046fe60: 7327 0a20 202d 2027 2267 7275 6232 2d63  s'.  - '"grub2-c
│ │ │ -0046fe70: 6f6d 6d6f 6e22 2069 6e20 616e 7369 626c  ommon" in ansibl
│ │ │ -0046fe80: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -0046fe90: 270a 2020 7461 6773 3a0a 2020 2d20 4e49  '.  tags:.  - NI
│ │ │ -0046fea0: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ -0046feb0: 290a 2020 2d20 5043 492d 4453 5376 342d  ).  - PCI-DSSv4-
│ │ │ -0046fec0: 3130 2e37 0a20 202d 2050 4349 2d44 5353  10.7.  - PCI-DSS
│ │ │ -0046fed0: 7634 2d31 302e 372e 320a 2020 2d20 6772  v4-10.7.2.  - gr
│ │ │ -0046fee0: 7562 325f 6175 6469 745f 6261 636b 6c6f  ub2_audit_backlo
│ │ │ -0046fef0: 675f 6c69 6d69 745f 6172 6775 6d65 6e74  g_limit_argument
│ │ │ -0046ff00: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ -0046ff10: 696f 6e0a 2020 2d20 6c6f 775f 7365 7665  ion.  - low_seve
│ │ │ -0046ff20: 7269 7479 0a20 202d 206d 6564 6975 6d5f  rity.  - medium_
│ │ │ -0046ff30: 636f 6d70 6c65 7869 7479 0a20 202d 2072  complexity.  - r
│ │ │ -0046ff40: 6562 6f6f 745f 7265 7175 6972 6564 0a20  eboot_required. 
│ │ │ -0046ff50: 202d 2072 6573 7472 6963 745f 7374 7261   - restrict_stra
│ │ │ -0046ff60: 7465 6779 0a0a 2d20 6e61 6d65 3a20 4368  tegy..- name: Ch
│ │ │ -0046ff70: 6563 6b20 6966 2061 7564 6974 5f62 6163  eck if audit_bac
│ │ │ -0046ff80: 6b6c 6f67 5f6c 696d 6974 2061 7267 756d  klog_limit argum
│ │ │ -0046ff90: 656e 7420 6973 2061 6c72 6561 6479 2070  ent is already p
│ │ │ -0046ffa0: 7265 7365 6e74 0a20 2061 6e73 6962 6c65  resent.  ansible
│ │ │ -0046ffb0: 2e62 7569 6c74 696e 2e63 6f6d 6d61 6e64  .builtin.command
│ │ │ -0046ffc0: 3a20 2f73 6269 6e2f 6772 7562 6279 202d  : /sbin/grubby -
│ │ │ -0046ffd0: 2d69 6e66 6f3d 414c 4c0a 2020 7265 6769  -info=ALL.  regi
│ │ │ -0046ffe0: 7374 6572 3a20 6772 7562 6279 5f69 6e66  ster: grubby_inf
│ │ │ -0046fff0: 6f0a 2020 6368 6563 6b5f 6d6f 6465 3a20  o.  check_mode: 
│ │ │ -00470000: 6661 6c73 650a 2020 6368 616e 6765 645f  false.  changed_
│ │ │ -00470010: 7768 656e 3a20 6661 6c73 650a 2020 6661  when: false.  fa
│ │ │ -00470020: 696c 6564 5f77 6865 6e3a 2066 616c 7365  iled_when: false
│ │ │ -00470030: 0a20 2077 6865 6e3a 0a20 202d 2027 226b  .  when:.  - '"k
│ │ │ -00470040: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ -00470050: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -00470060: 270a 2020 2d20 2722 6772 7562 322d 636f  '.  - '"grub2-co
│ │ │ -00470070: 6d6d 6f6e 2220 696e 2061 6e73 6962 6c65  mmon" in ansible
│ │ │ -00470080: 5f66 6163 7473 2e70 6163 6b61 6765 7327  _facts.packages'
│ │ │ -00470090: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ -004700a0: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ -004700b0: 0a20 202d 2050 4349 2d44 5353 7634 2d31  .  - PCI-DSSv4-1
│ │ │ -004700c0: 302e 370a 2020 2d20 5043 492d 4453 5376  0.7.  - PCI-DSSv
│ │ │ -004700d0: 342d 3130 2e37 2e32 0a20 202d 2067 7275  4-10.7.2.  - gru
│ │ │ -004700e0: 6232 5f61 7564 6974 5f62 6163 6b6c 6f67  b2_audit_backlog
│ │ │ -004700f0: 5f6c 696d 6974 5f61 7267 756d 656e 740a  _limit_argument.
│ │ │ -00470100: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ -00470110: 6f6e 0a20 202d 206c 6f77 5f73 6576 6572  on.  - low_sever
│ │ │ -00470120: 6974 790a 2020 2d20 6d65 6469 756d 5f63  ity.  - medium_c
│ │ │ -00470130: 6f6d 706c 6578 6974 790a 2020 2d20 7265  omplexity.  - re
│ │ │ -00470140: 626f 6f74 5f72 6571 7569 7265 640a 2020  boot_required.  
│ │ │ -00470150: 2d20 7265 7374 7269 6374 5f73 7472 6174  - restrict_strat
│ │ │ -00470160: 6567 790a 0a2d 206e 616d 653a 2055 7064  egy..- name: Upd
│ │ │ -00470170: 6174 6520 6772 7562 2064 6566 6175 6c74  ate grub default
│ │ │ -00470180: 7320 616e 6420 7468 6520 626f 6f74 6c6f  s and the bootlo
│ │ │ -00470190: 6164 6572 206d 656e 750a 2020 616e 7369  ader menu.  ansi
│ │ │ -004701a0: 626c 652e 6275 696c 7469 6e2e 636f 6d6d  ble.builtin.comm
│ │ │ -004701b0: 616e 643a 202f 7362 696e 2f67 7275 6262  and: /sbin/grubb
│ │ │ -004701c0: 7920 2d2d 7570 6461 7465 2d6b 6572 6e65  y --update-kerne
│ │ │ -004701d0: 6c3d 414c 4c20 2d2d 6172 6773 3d22 6175  l=ALL --args="au
│ │ │ -004701e0: 6469 745f 6261 636b 6c6f 675f 6c69 6d69  dit_backlog_limi
│ │ │ -004701f0: 743d 7b7b 0a20 2020 2076 6172 5f61 7564  t={{.    var_aud
│ │ │ -00470200: 6974 5f62 6163 6b6c 6f67 5f6c 696d 6974  it_backlog_limit
│ │ │ -00470210: 207d 7d22 0a20 2077 6865 6e3a 0a20 202d   }}".  when:.  -
│ │ │ -00470220: 2027 226b 6572 6e65 6c22 2069 6e20 616e   '"kernel" in an
│ │ │ -00470230: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -00470240: 6167 6573 270a 2020 2d20 2722 6772 7562  ages'.  - '"grub
│ │ │ -00470250: 322d 636f 6d6d 6f6e 2220 696e 2061 6e73  2-common" in ans
│ │ │ -00470260: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -00470270: 6765 7327 0a20 202d 2028 6772 7562 6279  ges'.  - (grubby
│ │ │ -00470280: 5f69 6e66 6f2e 7374 646f 7574 2069 7320  _info.stdout is 
│ │ │ -00470290: 6e6f 7420 7365 6172 6368 2827 6175 6469  not search('audi
│ │ │ -004702a0: 745f 6261 636b 6c6f 675f 6c69 6d69 743d  t_backlog_limit=
│ │ │ -004702b0: 2720 7e20 7661 725f 6175 6469 745f 6261  ' ~ var_audit_ba
│ │ │ -004702c0: 636b 6c6f 675f 6c69 6d69 7429 290a 2020  cklog_limit)).  
│ │ │ -004702d0: 2020 6f72 2028 2865 7463 5f64 6566 6175    or ((etc_defau
│ │ │ -004702e0: 6c74 5f67 7275 625b 2763 6f6e 7465 6e74  lt_grub['content
│ │ │ -004702f0: 275d 207c 2062 3634 6465 636f 6465 2920  '] | b64decode) 
│ │ │ -00470300: 6973 206e 6f74 2073 6561 7263 6828 2761  is not search('a
│ │ │ -00470310: 7564 6974 5f62 6163 6b6c 6f67 5f6c 696d  udit_backlog_lim
│ │ │ -00470320: 6974 3d27 0a20 2020 207e 2076 6172 5f61  it='.    ~ var_a
│ │ │ -00470330: 7564 6974 5f62 6163 6b6c 6f67 5f6c 696d  udit_backlog_lim
│ │ │ -00470340: 6974 2929 0a20 2074 6167 733a 0a20 202d  it)).  tags:.  -
│ │ │ -00470350: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -00470360: 3628 6129 0a20 202d 2050 4349 2d44 5353  6(a).  - PCI-DSS
│ │ │ -00470370: 7634 2d31 302e 370a 2020 2d20 5043 492d  v4-10.7.  - PCI-
│ │ │ -00470380: 4453 5376 342d 3130 2e37 2e32 0a20 202d  DSSv4-10.7.2.  -
│ │ │ -00470390: 2067 7275 6232 5f61 7564 6974 5f62 6163   grub2_audit_bac
│ │ │ -004703a0: 6b6c 6f67 5f6c 696d 6974 5f61 7267 756d  klog_limit_argum
│ │ │ -004703b0: 656e 740a 2020 2d20 6c6f 775f 6469 7372  ent.  - low_disr
│ │ │ -004703c0: 7570 7469 6f6e 0a20 202d 206c 6f77 5f73  uption.  - low_s
│ │ │ -004703d0: 6576 6572 6974 790a 2020 2d20 6d65 6469  everity.  - medi
│ │ │ -004703e0: 756d 5f63 6f6d 706c 6578 6974 790a 2020  um_complexity.  
│ │ │ -004703f0: 2d20 7265 626f 6f74 5f72 6571 7569 7265  - reboot_require
│ │ │ -00470400: 640a 2020 2d20 7265 7374 7269 6374 5f73  d.  - restrict_s
│ │ │ -00470410: 7472 6174 6567 790a 3c2f 636f 6465 3e3c  trategy.<
│ │ │ +0046f870: 416e 7369 626c 6520 736e 6970 7065 7420  Ansible snippet 
│ │ │ +0046f880: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620  ...
Disruption:< │ │ │ +0046f990: 7464 3e72 6573 7472 6963 743c 2f74 643e td>restrict │ │ │ +0046f9a0: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
Compl │ │ │ -0046fad0: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6d exity:m │ │ │ -0046fae0: 6564 6975 6d3c 2f74 643e 3c2f 7472 3e3c edium
Disruptio │ │ │ -0046fb00: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ -0046fb20: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ -0046fb30: 7472 7565 3c2f 7464 3e3c 2f74 723e 3c74 true
Strategy:< │ │ │ -0046fb50: 2f74 683e 3c74 643e 7265 7374 7269 6374 /th>restrict │ │ │ -0046fb60: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Complexity │ │ │ +0046f910: 3a3c 2f74 683e 3c74 643e 6d65 6469 756d :medium │ │ │ +0046f920: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
low
Reboo │ │ │ +0046f960: 743a 3c2f 7468 3e3c 7464 3e74 7275 653c t:true< │ │ │ +0046f970: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Strategy:
- name: │ │ │ +0046f9c0: 4761 7468 6572 2074 6865 2070 6163 6b61 Gather the packa │ │ │ +0046f9d0: 6765 2066 6163 7473 0a20 2070 6163 6b61 ge facts. packa │ │ │ +0046f9e0: 6765 5f66 6163 7473 3a0a 2020 2020 6d61 ge_facts:. ma │ │ │ +0046f9f0: 6e61 6765 723a 2061 7574 6f0a 2020 7461 nager: auto. ta │ │ │ +0046fa00: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030 gs:. - NIST-800 │ │ │ +0046fa10: 2d35 332d 434d 2d36 2861 290a 2020 2d20 -53-CM-6(a). - │ │ │ +0046fa20: 5043 492d 4453 5376 342d 3130 2e37 0a20 PCI-DSSv4-10.7. │ │ │ +0046fa30: 202d 2050 4349 2d44 5353 7634 2d31 302e - PCI-DSSv4-10. │ │ │ +0046fa40: 372e 320a 2020 2d20 6772 7562 325f 6175 7.2. - grub2_au │ │ │ +0046fa50: 6469 745f 6261 636b 6c6f 675f 6c69 6d69 dit_backlog_limi │ │ │ +0046fa60: 745f 6172 6775 6d65 6e74 0a20 202d 206c t_argument. - l │ │ │ +0046fa70: 6f77 5f64 6973 7275 7074 696f 6e0a 2020 ow_disruption. │ │ │ +0046fa80: 2d20 6c6f 775f 7365 7665 7269 7479 0a20 - low_severity. │ │ │ +0046fa90: 202d 206d 6564 6975 6d5f 636f 6d70 6c65 - medium_comple │ │ │ +0046faa0: 7869 7479 0a20 202d 2072 6562 6f6f 745f xity. - reboot_ │ │ │ +0046fab0: 7265 7175 6972 6564 0a20 202d 2072 6573 required. - res │ │ │ +0046fac0: 7472 6963 745f 7374 7261 7465 6779 0a2d trict_strategy.- │ │ │ +0046fad0: 206e 616d 653a 2058 4343 4446 2056 616c name: XCCDF Val │ │ │ +0046fae0: 7565 2076 6172 5f61 7564 6974 5f62 6163 ue var_audit_bac │ │ │ +0046faf0: 6b6c 6f67 5f6c 696d 6974 2023 2070 726f klog_limit # pro │ │ │ +0046fb00: 6d6f 7465 2074 6f20 7661 7269 6162 6c65 mote to variable │ │ │ +0046fb10: 0a20 2073 6574 5f66 6163 743a 0a20 2020 . set_fact:. │ │ │ +0046fb20: 2076 6172 5f61 7564 6974 5f62 6163 6b6c var_audit_backl │ │ │ +0046fb30: 6f67 5f6c 696d 6974 3a20 2121 7374 7220 og_limit: !!str │ │ │ +0046fb40: 3c61 6262 7220 7469 746c 653d 2266 726f 8192. │ │ │ +0046fbb0: 2020 7461 6773 3a0a 2020 2020 2d20 616c tags:. - al │ │ │ +0046fbc0: 7761 7973 0a0a 2d20 6e61 6d65 3a20 4368 ways..- name: Ch │ │ │ +0046fbd0: 6563 6b20 6966 2061 7564 6974 5f62 6163 eck if audit_bac │ │ │ +0046fbe0: 6b6c 6f67 5f6c 696d 6974 2061 7267 756d klog_limit argum │ │ │ +0046fbf0: 656e 7420 6973 2061 6c72 6561 6479 2070 ent is already p │ │ │ +0046fc00: 7265 7365 6e74 2069 6e20 2f65 7463 2f64 resent in /etc/d │ │ │ +0046fc10: 6566 6175 6c74 2f67 7275 620a 2020 616e efault/grub. an │ │ │ +0046fc20: 7369 626c 652e 6275 696c 7469 6e2e 736c sible.builtin.sl │ │ │ +0046fc30: 7572 703a 0a20 2020 2073 7263 3a20 2f65 urp:. src: /e │ │ │ +0046fc40: 7463 2f64 6566 6175 6c74 2f67 7275 620a tc/default/grub. │ │ │ +0046fc50: 2020 7265 6769 7374 6572 3a20 6574 635f register: etc_ │ │ │ +0046fc60: 6465 6661 756c 745f 6772 7562 0a20 2077 default_grub. w │ │ │ +0046fc70: 6865 6e3a 0a20 202d 2027 226b 6572 6e65 hen:. - '"kerne │ │ │ +0046fc80: 6c22 2069 6e20 616e 7369 626c 655f 6661 l" in ansible_fa │ │ │ +0046fc90: 6374 732e 7061 636b 6167 6573 270a 2020 cts.packages'. │ │ │ +0046fca0: 2d20 2722 6772 7562 322d 636f 6d6d 6f6e - '"grub2-common │ │ │ +0046fcb0: 2220 696e 2061 6e73 6962 6c65 5f66 6163 " in ansible_fac │ │ │ +0046fcc0: 7473 2e70 6163 6b61 6765 7327 0a20 2074 ts.packages'. t │ │ │ +0046fcd0: 6167 733a 0a20 202d 204e 4953 542d 3830 ags:. - NIST-80 │ │ │ +0046fce0: 302d 3533 2d43 4d2d 3628 6129 0a20 202d 0-53-CM-6(a). - │ │ │ +0046fcf0: 2050 4349 2d44 5353 7634 2d31 302e 370a PCI-DSSv4-10.7. │ │ │ +0046fd00: 2020 2d20 5043 492d 4453 5376 342d 3130 - PCI-DSSv4-10 │ │ │ +0046fd10: 2e37 2e32 0a20 202d 2067 7275 6232 5f61 .7.2. - grub2_a │ │ │ +0046fd20: 7564 6974 5f62 6163 6b6c 6f67 5f6c 696d udit_backlog_lim │ │ │ +0046fd30: 6974 5f61 7267 756d 656e 740a 2020 2d20 it_argument. - │ │ │ +0046fd40: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20 low_disruption. │ │ │ +0046fd50: 202d 206c 6f77 5f73 6576 6572 6974 790a - low_severity. │ │ │ +0046fd60: 2020 2d20 6d65 6469 756d 5f63 6f6d 706c - medium_compl │ │ │ +0046fd70: 6578 6974 790a 2020 2d20 7265 626f 6f74 exity. - reboot │ │ │ +0046fd80: 5f72 6571 7569 7265 640a 2020 2d20 7265 _required. - re │ │ │ +0046fd90: 7374 7269 6374 5f73 7472 6174 6567 790a strict_strategy. │ │ │ +0046fda0: 0a2d 206e 616d 653a 2043 6865 636b 2069 .- name: Check i │ │ │ +0046fdb0: 6620 6175 6469 745f 6261 636b 6c6f 675f f audit_backlog_ │ │ │ +0046fdc0: 6c69 6d69 7420 6172 6775 6d65 6e74 2069 limit argument i │ │ │ +0046fdd0: 7320 616c 7265 6164 7920 7072 6573 656e s already presen │ │ │ +0046fde0: 740a 2020 616e 7369 626c 652e 6275 696c t. ansible.buil │ │ │ +0046fdf0: 7469 6e2e 636f 6d6d 616e 643a 202f 7362 tin.command: /sb │ │ │ +0046fe00: 696e 2f67 7275 6262 7920 2d2d 696e 666f in/grubby --info │ │ │ +0046fe10: 3d41 4c4c 0a20 2072 6567 6973 7465 723a =ALL. register: │ │ │ +0046fe20: 2067 7275 6262 795f 696e 666f 0a20 2063 grubby_info. c │ │ │ +0046fe30: 6865 636b 5f6d 6f64 653a 2066 616c 7365 heck_mode: false │ │ │ +0046fe40: 0a20 2063 6861 6e67 6564 5f77 6865 6e3a . changed_when: │ │ │ +0046fe50: 2066 616c 7365 0a20 2066 6169 6c65 645f false. failed_ │ │ │ +0046fe60: 7768 656e 3a20 6661 6c73 650a 2020 7768 when: false. wh │ │ │ +0046fe70: 656e 3a0a 2020 2d20 2722 6b65 726e 656c en:. - '"kernel │ │ │ +0046fe80: 2220 696e 2061 6e73 6962 6c65 5f66 6163 " in ansible_fac │ │ │ +0046fe90: 7473 2e70 6163 6b61 6765 7327 0a20 202d ts.packages'. - │ │ │ +0046fea0: 2027 2267 7275 6232 2d63 6f6d 6d6f 6e22 '"grub2-common" │ │ │ +0046feb0: 2069 6e20 616e 7369 626c 655f 6661 6374 in ansible_fact │ │ │ +0046fec0: 732e 7061 636b 6167 6573 270a 2020 7461 s.packages'. ta │ │ │ +0046fed0: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030 gs:. - NIST-800 │ │ │ +0046fee0: 2d35 332d 434d 2d36 2861 290a 2020 2d20 -53-CM-6(a). - │ │ │ +0046fef0: 5043 492d 4453 5376 342d 3130 2e37 0a20 PCI-DSSv4-10.7. │ │ │ +0046ff00: 202d 2050 4349 2d44 5353 7634 2d31 302e - PCI-DSSv4-10. │ │ │ +0046ff10: 372e 320a 2020 2d20 6772 7562 325f 6175 7.2. - grub2_au │ │ │ +0046ff20: 6469 745f 6261 636b 6c6f 675f 6c69 6d69 dit_backlog_limi │ │ │ +0046ff30: 745f 6172 6775 6d65 6e74 0a20 202d 206c t_argument. - l │ │ │ +0046ff40: 6f77 5f64 6973 7275 7074 696f 6e0a 2020 ow_disruption. │ │ │ +0046ff50: 2d20 6c6f 775f 7365 7665 7269 7479 0a20 - low_severity. │ │ │ +0046ff60: 202d 206d 6564 6975 6d5f 636f 6d70 6c65 - medium_comple │ │ │ +0046ff70: 7869 7479 0a20 202d 2072 6562 6f6f 745f xity. - reboot_ │ │ │ +0046ff80: 7265 7175 6972 6564 0a20 202d 2072 6573 required. - res │ │ │ +0046ff90: 7472 6963 745f 7374 7261 7465 6779 0a0a trict_strategy.. │ │ │ +0046ffa0: 2d20 6e61 6d65 3a20 5570 6461 7465 2067 - name: Update g │ │ │ +0046ffb0: 7275 6220 6465 6661 756c 7473 2061 6e64 rub defaults and │ │ │ +0046ffc0: 2074 6865 2062 6f6f 746c 6f61 6465 7220 the bootloader │ │ │ +0046ffd0: 6d65 6e75 0a20 2061 6e73 6962 6c65 2e62 menu. ansible.b │ │ │ +0046ffe0: 7569 6c74 696e 2e63 6f6d 6d61 6e64 3a20 uiltin.command: │ │ │ +0046fff0: 2f73 6269 6e2f 6772 7562 6279 202d 2d75 /sbin/grubby --u │ │ │ +00470000: 7064 6174 652d 6b65 726e 656c 3d41 4c4c pdate-kernel=ALL │ │ │ +00470010: 202d 2d61 7267 733d 2261 7564 6974 5f62 --args="audit_b │ │ │ +00470020: 6163 6b6c 6f67 5f6c 696d 6974 3d7b 7b0a acklog_limit={{. │ │ │ +00470030: 2020 2020 7661 725f 6175 6469 745f 6261 var_audit_ba │ │ │ +00470040: 636b 6c6f 675f 6c69 6d69 7420 7d7d 220a cklog_limit }}". │ │ │ +00470050: 2020 7768 656e 3a0a 2020 2d20 2722 6b65 when:. - '"ke │ │ │ +00470060: 726e 656c 2220 696e 2061 6e73 6962 6c65 rnel" in ansible │ │ │ +00470070: 5f66 6163 7473 2e70 6163 6b61 6765 7327 _facts.packages' │ │ │ +00470080: 0a20 202d 2027 2267 7275 6232 2d63 6f6d . - '"grub2-com │ │ │ +00470090: 6d6f 6e22 2069 6e20 616e 7369 626c 655f mon" in ansible_ │ │ │ +004700a0: 6661 6374 732e 7061 636b 6167 6573 270a facts.packages'. │ │ │ +004700b0: 2020 2d20 2867 7275 6262 795f 696e 666f - (grubby_info │ │ │ +004700c0: 2e73 7464 6f75 7420 6973 206e 6f74 2073 .stdout is not s │ │ │ +004700d0: 6561 7263 6828 2761 7564 6974 5f62 6163 earch('audit_bac │ │ │ +004700e0: 6b6c 6f67 5f6c 696d 6974 3d27 207e 2076 klog_limit=' ~ v │ │ │ +004700f0: 6172 5f61 7564 6974 5f62 6163 6b6c 6f67 ar_audit_backlog │ │ │ +00470100: 5f6c 696d 6974 2929 0a20 2020 206f 7220 _limit)). or │ │ │ +00470110: 2828 6574 635f 6465 6661 756c 745f 6772 ((etc_default_gr │ │ │ +00470120: 7562 5b27 636f 6e74 656e 7427 5d20 7c20 ub['content'] | │ │ │ +00470130: 6236 3464 6563 6f64 6529 2069 7320 6e6f b64decode) is no │ │ │ +00470140: 7420 7365 6172 6368 2827 6175 6469 745f t search('audit_ │ │ │ +00470150: 6261 636b 6c6f 675f 6c69 6d69 743d 270a backlog_limit='. │ │ │ +00470160: 2020 2020 7e20 7661 725f 6175 6469 745f ~ var_audit_ │ │ │ +00470170: 6261 636b 6c6f 675f 6c69 6d69 7429 290a backlog_limit)). │ │ │ +00470180: 2020 7461 6773 3a0a 2020 2d20 4e49 5354 tags:. - NIST │ │ │ +00470190: 2d38 3030 2d35 332d 434d 2d36 2861 290a -800-53-CM-6(a). │ │ │ +004701a0: 2020 2d20 5043 492d 4453 5376 342d 3130 - PCI-DSSv4-10 │ │ │ +004701b0: 2e37 0a20 202d 2050 4349 2d44 5353 7634 .7. - PCI-DSSv4 │ │ │ +004701c0: 2d31 302e 372e 320a 2020 2d20 6772 7562 -10.7.2. - grub │ │ │ +004701d0: 325f 6175 6469 745f 6261 636b 6c6f 675f 2_audit_backlog_ │ │ │ +004701e0: 6c69 6d69 745f 6172 6775 6d65 6e74 0a20 limit_argument. │ │ │ +004701f0: 202d 206c 6f77 5f64 6973 7275 7074 696f - low_disruptio │ │ │ +00470200: 6e0a 2020 2d20 6c6f 775f 7365 7665 7269 n. - low_severi │ │ │ +00470210: 7479 0a20 202d 206d 6564 6975 6d5f 636f ty. - medium_co │ │ │ +00470220: 6d70 6c65 7869 7479 0a20 202d 2072 6562 mplexity. - reb │ │ │ +00470230: 6f6f 745f 7265 7175 6972 6564 0a20 202d oot_required. - │ │ │ +00470240: 2072 6573 7472 6963 745f 7374 7261 7465 restrict_strate │ │ │ +00470250: 6779 0a3c 2f63 6f64 653e 3c2f 7072 653e gy.
│ │ │ +00470260: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation │ │ │ +00470310: 4f53 4275 696c 6420 426c 7565 7072 696e OSBuild Blueprin │ │ │ +00470320: 7420 736e 6970 7065 7420 e287 b23c 2f61 t snippet ...
[customizations
│ │ │ +00470380: 2e6b 6572 6e65 6c5d 0a61 7070 656e 6420  .kernel].append 
│ │ │ +00470390: 3d20 2261 7564 6974 5f62 6163 6b6c 6f67  = "audit_backlog
│ │ │ +004703a0: 5f6c 696d 6974 3d3c 6162 6272 2074 6974  _limit=8192<
│ │ │ +00470410: 2f61 6262 723e 220a 3c2f 636f 6465 3e3c  /abbr>".<
│ │ │  00470420: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>
'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: │ │ │ │ @@ -1203,38 +1203,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: │ │ │ │ @@ -1261,14 +1237,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 │ │ │ │ @@ -1276,14 +1269,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 │ │ │ │ @@ -14776,31 +14776,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: │ │ │ │ @@ -14835,14 +14818,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 │ │ │ │ @@ -15695,38 +15695,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: │ │ │ │ @@ -15749,14 +15725,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 │ │ │ │ @@ -15764,14 +15757,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 │ │ │ │ @@ -16048,38 +16048,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: │ │ │ │ @@ -16106,14 +16082,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 │ │ │ │ @@ -16121,14 +16114,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 │ │ │ │ @@ -16145,31 +16145,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: │ │ │ │ @@ -16222,14 +16205,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 │ │ │ │ @@ -22545,38 +22545,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: │ │ │ │ @@ -22601,14 +22577,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 -- │ │ │ │ @@ -22617,42 +22610,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: │ │ │ │ @@ -22708,14 +22691,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 │ │ │ │ @@ -27025,21 +27025,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: │ │ │ │ @@ -27224,14 +27217,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 │ │ │ │ @@ -27251,21 +27251,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: │ │ │ │ @@ -27486,14 +27479,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 │ │ │ │ @@ -27512,21 +27512,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: │ │ │ │ @@ -27746,14 +27739,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 │ │ │ │ @@ -27772,21 +27772,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: │ │ │ │ @@ -28006,14 +27999,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 │ │ │ │ @@ -28033,21 +28033,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: │ │ │ │ @@ -28268,14 +28261,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. │ │ │ │ @@ -28284,21 +28284,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: │ │ │ │ @@ -28523,14 +28516,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 │ │ │ │ @@ -28538,21 +28538,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: │ │ │ │ @@ -28777,14 +28770,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 │ │ │ │ @@ -28792,21 +28792,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: │ │ │ │ @@ -29031,14 +29024,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. │ │ │ │ @@ -29046,21 +29046,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: │ │ │ │ @@ -29282,14 +29275,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 │ │ │ │ @@ -29297,21 +29297,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: │ │ │ │ @@ -29534,14 +29527,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 │ │ │ │ @@ -29549,21 +29549,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: │ │ │ │ @@ -29786,14 +29779,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. │ │ │ │ @@ -29801,21 +29801,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: │ │ │ │ @@ -30034,30 +30027,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: │ │ │ │ @@ -30242,31 +30235,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: │ │ │ │ @@ -30452,31 +30445,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: │ │ │ │ @@ -30663,32 +30656,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: │ │ │ │ @@ -30875,14 +30868,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 │ │ │ │ @@ -31763,38 +31763,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: │ │ │ │ @@ -31819,14 +31795,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 │ │ │ │ @@ -31834,45 +31827,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: │ │ │ │ @@ -31893,14 +31872,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 │ │ │ │ @@ -31915,46 +31907,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: │ │ │ │ @@ -31975,14 +31954,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 │ │ │ │ @@ -31997,14 +31989,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 │ │ │ │ @@ -32764,35 +32764,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: │ │ │ │ @@ -32804,14 +32783,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 │ │ │ │ @@ -32820,14 +32812,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 │ │ │ │ @@ -33606,31 +33606,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: │ │ │ │ @@ -33665,14 +33648,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 │ │ │ │ @@ -35470,35 +35470,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: │ │ │ │ @@ -35512,14 +35491,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 │ │ │ │ @@ -35528,14 +35520,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 │ │ │ │ @@ -35557,35 +35557,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: │ │ │ │ @@ -35597,14 +35576,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 │ │ │ │ @@ -35613,61 +35605,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 │ │ │ │ @@ -35676,14 +35668,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, │ │ │ │ @@ -35707,35 +35707,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: │ │ │ │ @@ -35751,14 +35730,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 │ │ │ │ @@ -35767,49 +35759,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: │ │ │ │ @@ -35820,14 +35799,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 │ │ │ │ @@ -35836,14 +35828,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 │ │ │ │ @@ -35869,35 +35869,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: │ │ │ │ @@ -35909,14 +35888,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 │ │ │ │ @@ -35925,14 +35917,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 │ │ │ │ @@ -35947,35 +35947,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: │ │ │ │ @@ -35987,14 +35966,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 │ │ │ │ @@ -36003,65 +35995,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 │ │ │ │ @@ -36070,62 +36062,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 │ │ │ │ @@ -36134,14 +36126,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 │ │ │ │ @@ -36158,51 +36158,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 │ │ │ │ @@ -36211,14 +36203,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 │ │ │ │ @@ -36386,31 +36386,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: │ │ │ │ @@ -36464,14 +36447,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 │ │ │ │ @@ -36519,31 +36519,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: │ │ │ │ @@ -36600,14 +36583,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 │ │ │ │ @@ -37322,35 +37322,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: │ │ │ │ @@ -37365,14 +37344,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 │ │ │ │ @@ -37381,14 +37373,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 │ │ │ │ @@ -37396,35 +37396,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: │ │ │ │ @@ -37436,14 +37415,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 │ │ │ │ @@ -37452,14 +37444,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: │ │ │ │ @@ -37487,35 +37487,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: │ │ │ │ @@ -37529,14 +37508,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 │ │ │ │ @@ -37545,59 +37537,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 │ │ │ │ @@ -37606,14 +37598,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. │ │ │ │ │ │ │ │ @@ -37633,35 +37633,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: │ │ │ │ @@ -37673,14 +37652,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 │ │ │ │ @@ -37689,14 +37681,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 │ │ │ │ @@ -37706,51 +37706,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 │ │ │ │ @@ -37759,14 +37751,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. │ │ │ │ @@ -37778,51 +37778,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 │ │ │ │ @@ -37831,14 +37823,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 │ │ │ │ @@ -37850,35 +37850,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: │ │ │ │ @@ -37889,14 +37868,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 │ │ │ │ @@ -37905,40 +37897,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: │ │ │ │ @@ -37989,14 +37972,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 │ │ │ │ @@ -43358,26 +43358,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 0600 /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: │ │ │ │ @@ -43489,14 +43477,26 @@ │ │ │ │ - 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 0600 /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 │ │ │ │ @@ -43535,23 +43535,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: │ │ │ │ @@ -43615,14 +43606,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 │ │ │ │ @@ -43663,35 +43663,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: │ │ │ │ @@ -43703,14 +43682,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 │ │ │ │ @@ -43719,14 +43711,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. │ │ │ │ │ │ │ │ @@ -85483,38 +85483,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: │ │ │ │ @@ -85555,14 +85531,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 │ │ │ │ @@ -85570,14 +85563,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. │ │ │ │ @@ -85618,43 +85618,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: │ │ │ │ @@ -85721,14 +85692,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 │ │ │ │ @@ -85772,17 +85772,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: │ │ │ │ @@ -85877,14 +85874,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 bootc && ! rpm --quiet -q openshift-kubelet && { [ -f "/run/.containerenv" ] || │ │ │ │ [ -f "/.containerenv" ]; }; } ; then │ │ │ │ KARGS_DIR="/usr/lib/bootc/kargs.d/" │ │ │ │ @@ -85918,17 +85918,14 @@ │ │ │ │ _n_i_s_t CM-6(a) │ │ │ │ _o_s_p_p FAU_STG.1, FAU_STG.3 │ │ │ │ References: SRG-OS-000037-GPOS-00015, SRG-OS-000042-GPOS-00020, SRG-OS-000062-GPOS-00031, SRG-OS- │ │ │ │ _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: │ │ │ │ @@ -86002,14 +85999,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>Remedi │ │ │ -000496d0: 6174 696f 6e20 4f53 4275 696c 6420 426c ation OSBuild Bl │ │ │ -000496e0: 7565 7072 696e 7420 736e 6970 7065 7420 ueprint snippet │ │ │ -000496f0: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
<
│ │ │ -00049730: 636f 6465 3e0a 5b5b 7061 636b 6167 6573  code>.[[packages
│ │ │ -00049740: 5d5d 0a6e 616d 6520 3d20 2273 7564 6f22  ]].name = "sudo"
│ │ │ -00049750: 0a76 6572 7369 6f6e 203d 2022 2a22 0a3c  .version = "*".<
│ │ │ -00049760: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
Re │ │ │ -00049810: 6d65 6469 6174 696f 6e20 416e 6163 6f6e mediation Anacon │ │ │ -00049820: 6461 2073 6e69 7070 6574 20e2 87b2 3c2f da snippet ...
< │ │ │ -000498c0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -000498d0: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ -00049920: 3c74 723e 3c74 683e 5374 7261 7465 6779
.pa
│ │ │ -00049960: 636b 6167 6520 2d2d 6164 643d 7375 646f  ckage --add=sudo
│ │ │ -00049970: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
│ │ │ -00049a20: 5265 6d65 6469 6174 696f 6e20 5075 7070 Remediation Pupp │ │ │ -00049a30: 6574 2073 6e69 7070 6574 20e2 87b2 3c2f et snippet ...
C │ │ │ -000498b0: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -000498e0: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ -000498f0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -00049930: 3a3c 2f74 683e 3c74 643e 656e 6162 6c65 :enable │ │ │ -00049940: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
< │ │ │ -00049ad0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -00049ae0: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ -00049b30: 3c74 723e 3c74 683e 5374 7261 7465 6779
inc
│ │ │ -00049b70: 6c75 6465 2069 6e73 7461 6c6c 5f73 7564  lude install_sud
│ │ │ -00049b80: 6f0a 0a63 6c61 7373 2069 6e73 7461 6c6c  o..class install
│ │ │ -00049b90: 5f73 7564 6f20 7b0a 2020 7061 636b 6167  _sudo {.  packag
│ │ │ -00049ba0: 6520 7b20 2773 7564 6f27 3a0a 2020 2020  e { 'sudo':.    
│ │ │ -00049bb0: 656e 7375 7265 203d 2667 743b 2027 696e  ensure => 'in
│ │ │ -00049bc0: 7374 616c 6c65 6427 2c0a 2020 7d0a 7d0a  stalled',.  }.}.
│ │ │ -00049bd0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
R │ │ │ -00049c80: 656d 6564 6961 7469 6f6e 2041 6e73 6962 emediation Ansib │ │ │ -00049c90: 6c65 2073 6e69 7070 6574 20e2 87b2 3c2f le snippet ...
C │ │ │ -00049ac0: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -00049af0: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ -00049b00: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -00049b40: 3a3c 2f74 683e 3c74 643e 656e 6162 6c65 :enable │ │ │ -00049b50: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
< │ │ │ -00049d30: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -00049d40: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ -00049d90: 3c74 723e 3c74 683e 5374 7261 7465 6779
- n
│ │ │ -00049dd0: 616d 653a 2047 6174 6865 7220 7468 6520  ame: Gather the 
│ │ │ -00049de0: 7061 636b 6167 6520 6661 6374 730a 2020  package facts.  
│ │ │ -00049df0: 7061 636b 6167 655f 6661 6374 733a 0a20  package_facts:. 
│ │ │ -00049e00: 2020 206d 616e 6167 6572 3a20 6175 746f     manager: auto
│ │ │ -00049e10: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ -00049e20: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ -00049e30: 0a20 202d 2050 4349 2d44 5353 7634 2d32  .  - PCI-DSSv4-2
│ │ │ -00049e40: 2e32 0a20 202d 2050 4349 2d44 5353 7634  .2.  - PCI-DSSv4
│ │ │ -00049e50: 2d32 2e32 2e36 0a20 202d 2065 6e61 626c  -2.2.6.  - enabl
│ │ │ -00049e60: 655f 7374 7261 7465 6779 0a20 202d 206c  e_strategy.  - l
│ │ │ -00049e70: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ -00049e80: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ -00049e90: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ -00049ea0: 7269 7479 0a20 202d 206e 6f5f 7265 626f  rity.  - no_rebo
│ │ │ -00049eb0: 6f74 5f6e 6565 6465 640a 2020 2d20 7061  ot_needed.  - pa
│ │ │ -00049ec0: 636b 6167 655f 7375 646f 5f69 6e73 7461  ckage_sudo_insta
│ │ │ -00049ed0: 6c6c 6564 0a0a 2d20 6e61 6d65 3a20 456e  lled..- name: En
│ │ │ -00049ee0: 7375 7265 2073 7564 6f20 6973 2069 6e73  sure sudo is ins
│ │ │ -00049ef0: 7461 6c6c 6564 0a20 2061 6e73 6962 6c65  talled.  ansible
│ │ │ -00049f00: 2e62 7569 6c74 696e 2e70 6163 6b61 6765  .builtin.package
│ │ │ -00049f10: 3a0a 2020 2020 6e61 6d65 3a20 7375 646f  :.    name: sudo
│ │ │ -00049f20: 0a20 2020 2073 7461 7465 3a20 7072 6573  .    state: pres
│ │ │ -00049f30: 656e 740a 2020 7768 656e 3a20 2722 6b65  ent.  when: '"ke
│ │ │ -00049f40: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ -00049f50: 5f66 6163 7473 2e70 6163 6b61 6765 7327  _facts.packages'
│ │ │ -00049f60: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ -00049f70: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ -00049f80: 0a20 202d 2050 4349 2d44 5353 7634 2d32  .  - PCI-DSSv4-2
│ │ │ -00049f90: 2e32 0a20 202d 2050 4349 2d44 5353 7634  .2.  - PCI-DSSv4
│ │ │ -00049fa0: 2d32 2e32 2e36 0a20 202d 2065 6e61 626c  -2.2.6.  - enabl
│ │ │ -00049fb0: 655f 7374 7261 7465 6779 0a20 202d 206c  e_strategy.  - l
│ │ │ -00049fc0: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ -00049fd0: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ -00049fe0: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ -00049ff0: 7269 7479 0a20 202d 206e 6f5f 7265 626f  rity.  - no_rebo
│ │ │ -0004a000: 6f74 5f6e 6565 6465 640a 2020 2d20 7061  ot_needed.  - pa
│ │ │ -0004a010: 636b 6167 655f 7375 646f 5f69 6e73 7461  ckage_sudo_insta
│ │ │ -0004a020: 6c6c 6564 0a3c 2f63 6f64 653e 3c2f 7072  lled.Remediation 
│ │ │ -0004a0e0: 5368 656c 6c20 7363 7269 7074 20e2 87b2  Shell script ...
│ │ │ -0004a0f0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61  
C │ │ │ -00049d20: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -00049d50: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ -00049d60: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -00049da0: 3a3c 2f74 683e 3c74 643e 656e 6162 6c65 :enable │ │ │ -00049db0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
< │ │ │ -0004a1c0: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -0004a1d0: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
#
│ │ │ -0004a220: 2052 656d 6564 6961 7469 6f6e 2069 7320   Remediation is 
│ │ │ -0004a230: 6170 706c 6963 6162 6c65 206f 6e6c 7920  applicable only 
│ │ │ -0004a240: 696e 2063 6572 7461 696e 2070 6c61 7466  in certain platf
│ │ │ -0004a250: 6f72 6d73 0a69 6620 7270 6d20 2d2d 7175  orms.if rpm --qu
│ │ │ -0004a260: 6965 7420 2d71 206b 6572 6e65 6c3b 2074  iet -q kernel; t
│ │ │ -0004a270: 6865 6e0a 0a69 6620 2120 7270 6d20 2d71  hen..if ! rpm -q
│ │ │ -0004a280: 202d 2d71 7569 6574 2022 7375 646f 2220   --quiet "sudo" 
│ │ │ -0004a290: 3b20 7468 656e 0a20 2020 2064 6e66 2069  ; then.    dnf i
│ │ │ -0004a2a0: 6e73 7461 6c6c 202d 7920 2273 7564 6f22  nstall -y "sudo"
│ │ │ -0004a2b0: 0a66 690a 0a65 6c73 650a 2020 2020 2667  .fi..else.    &g
│ │ │ -0004a2c0: 743b 2661 6d70 3b32 2065 6368 6f20 2752  t;&2 echo 'R
│ │ │ -0004a2d0: 656d 6564 6961 7469 6f6e 2069 7320 6e6f  emediation is no
│ │ │ -0004a2e0: 7420 6170 706c 6963 6162 6c65 2c20 6e6f  t applicable, no
│ │ │ -0004a2f0: 7468 696e 6720 7761 7320 646f 6e65 270a  thing was done'.
│ │ │ -0004a300: 6669 0a3c 2f63 6f64 653e 3c2f 7072 653e  fi.
│ │ │ +000496d0: 6174 696f 6e20 416e 7369 626c 6520 736e ation Ansible sn │ │ │ +000496e0: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ +00049720: 3c74 6162 6c65 2063 6c61 7373 3d22 7461
Complexity:low
Disrup │ │ │ -0004a1a0: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -0004a1b0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -0004a1f0: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ -0004a200: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
< │ │ │ +00049790: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ +000497b0: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ +000497e0: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy: │ │ │ +00049800: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
Comple │ │ │ +00049770: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ +00049780: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ +000497c0: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +000497d0: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
enable
- name: │ │ │ +00049820: 4761 7468 6572 2074 6865 2070 6163 6b61 Gather the packa │ │ │ +00049830: 6765 2066 6163 7473 0a20 2070 6163 6b61 ge facts. packa │ │ │ +00049840: 6765 5f66 6163 7473 3a0a 2020 2020 6d61 ge_facts:. ma │ │ │ +00049850: 6e61 6765 723a 2061 7574 6f0a 2020 7461 nager: auto. ta │ │ │ +00049860: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030 gs:. - NIST-800 │ │ │ +00049870: 2d35 332d 434d 2d36 2861 290a 2020 2d20 -53-CM-6(a). - │ │ │ +00049880: 5043 492d 4453 5376 342d 322e 320a 2020 PCI-DSSv4-2.2. │ │ │ +00049890: 2d20 5043 492d 4453 5376 342d 322e 322e - PCI-DSSv4-2.2. │ │ │ +000498a0: 360a 2020 2d20 656e 6162 6c65 5f73 7472 6. - enable_str │ │ │ +000498b0: 6174 6567 790a 2020 2d20 6c6f 775f 636f ategy. - low_co │ │ │ +000498c0: 6d70 6c65 7869 7479 0a20 202d 206c 6f77 mplexity. - low │ │ │ +000498d0: 5f64 6973 7275 7074 696f 6e0a 2020 2d20 _disruption. - │ │ │ +000498e0: 6d65 6469 756d 5f73 6576 6572 6974 790a medium_severity. │ │ │ +000498f0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65 - no_reboot_ne │ │ │ +00049900: 6564 6564 0a20 202d 2070 6163 6b61 6765 eded. - package │ │ │ +00049910: 5f73 7564 6f5f 696e 7374 616c 6c65 640a _sudo_installed. │ │ │ +00049920: 0a2d 206e 616d 653a 2045 6e73 7572 6520 .- name: Ensure │ │ │ +00049930: 7375 646f 2069 7320 696e 7374 616c 6c65 sudo is installe │ │ │ +00049940: 640a 2020 616e 7369 626c 652e 6275 696c d. ansible.buil │ │ │ +00049950: 7469 6e2e 7061 636b 6167 653a 0a20 2020 tin.package:. │ │ │ +00049960: 206e 616d 653a 2073 7564 6f0a 2020 2020 name: sudo. │ │ │ +00049970: 7374 6174 653a 2070 7265 7365 6e74 0a20 state: present. │ │ │ +00049980: 2077 6865 6e3a 2027 226b 6572 6e65 6c22 when: '"kernel" │ │ │ +00049990: 2069 6e20 616e 7369 626c 655f 6661 6374 in ansible_fact │ │ │ +000499a0: 732e 7061 636b 6167 6573 270a 2020 7461 s.packages'. ta │ │ │ +000499b0: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030 gs:. - NIST-800 │ │ │ +000499c0: 2d35 332d 434d 2d36 2861 290a 2020 2d20 -53-CM-6(a). - │ │ │ +000499d0: 5043 492d 4453 5376 342d 322e 320a 2020 PCI-DSSv4-2.2. │ │ │ +000499e0: 2d20 5043 492d 4453 5376 342d 322e 322e - PCI-DSSv4-2.2. │ │ │ +000499f0: 360a 2020 2d20 656e 6162 6c65 5f73 7472 6. - enable_str │ │ │ +00049a00: 6174 6567 790a 2020 2d20 6c6f 775f 636f ategy. - low_co │ │ │ +00049a10: 6d70 6c65 7869 7479 0a20 202d 206c 6f77 mplexity. - low │ │ │ +00049a20: 5f64 6973 7275 7074 696f 6e0a 2020 2d20 _disruption. - │ │ │ +00049a30: 6d65 6469 756d 5f73 6576 6572 6974 790a medium_severity. │ │ │ +00049a40: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65 - no_reboot_ne │ │ │ +00049a50: 6564 6564 0a20 202d 2070 6163 6b61 6765 eded. - package │ │ │ +00049a60: 5f73 7564 6f5f 696e 7374 616c 6c65 640a _sudo_installed. │ │ │ +00049a70: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64 R │ │ │ +00049b20: 656d 6564 6961 7469 6f6e 2050 7570 7065 emediation Puppe │ │ │ +00049b30: 7420 736e 6970 7065 7420 e287 b23c 2f61 t snippet ...
low< │ │ │ +00049be0: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ +00049c30: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
Co │ │ │ +00049bc0: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +00049bf0: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +00049c10: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +00049c20: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +00049c40: 3c2f 7468 3e3c 7464 3e65 6e61 626c 653c enable< │ │ │ +00049c50: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
incl
│ │ │ +00049c70: 7564 6520 696e 7374 616c 6c5f 7375 646f  ude install_sudo
│ │ │ +00049c80: 0a0a 636c 6173 7320 696e 7374 616c 6c5f  ..class install_
│ │ │ +00049c90: 7375 646f 207b 0a20 2070 6163 6b61 6765  sudo {.  package
│ │ │ +00049ca0: 207b 2027 7375 646f 273a 0a20 2020 2065   { 'sudo':.    e
│ │ │ +00049cb0: 6e73 7572 6520 3d26 6774 3b20 2769 6e73  nsure => 'ins
│ │ │ +00049cc0: 7461 6c6c 6564 272c 0a20 207d 0a7d 0a3c  talled',.  }.}.<
│ │ │ +00049cd0: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
Re │ │ │ +00049d80: 6d65 6469 6174 696f 6e20 4f53 4275 696c mediation OSBuil │ │ │ +00049d90: 6420 426c 7565 7072 696e 7420 736e 6970 d Blueprint snip │ │ │ +00049da0: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ +00049db0: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +00049dc0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +00049dd0: 7365 2220 6964 3d22 6964 3330 223e 3c70 se" id="id30">

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

Remediation Sh │ │ │ +00049ed0: 656c 6c20 7363 7269 7074 20e2 87b2 3c2f ell script ...
< │ │ │ +00049f70: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +00049f80: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ +00049fd0: 3c74 723e 3c74 683e 5374 7261 7465 6779
# R
│ │ │ +0004a010: 656d 6564 6961 7469 6f6e 2069 7320 6170  emediation is ap
│ │ │ +0004a020: 706c 6963 6162 6c65 206f 6e6c 7920 696e  plicable only in
│ │ │ +0004a030: 2063 6572 7461 696e 2070 6c61 7466 6f72   certain platfor
│ │ │ +0004a040: 6d73 0a69 6620 7270 6d20 2d2d 7175 6965  ms.if rpm --quie
│ │ │ +0004a050: 7420 2d71 206b 6572 6e65 6c3b 2074 6865  t -q kernel; the
│ │ │ +0004a060: 6e0a 0a69 6620 2120 7270 6d20 2d71 202d  n..if ! rpm -q -
│ │ │ +0004a070: 2d71 7569 6574 2022 7375 646f 2220 3b20  -quiet "sudo" ; 
│ │ │ +0004a080: 7468 656e 0a20 2020 2064 6e66 2069 6e73  then.    dnf ins
│ │ │ +0004a090: 7461 6c6c 202d 7920 2273 7564 6f22 0a66  tall -y "sudo".f
│ │ │ +0004a0a0: 690a 0a65 6c73 650a 2020 2020 2667 743b  i..else.    >
│ │ │ +0004a0b0: 2661 6d70 3b32 2065 6368 6f20 2752 656d  &2 echo 'Rem
│ │ │ +0004a0c0: 6564 6961 7469 6f6e 2069 7320 6e6f 7420  ediation is not 
│ │ │ +0004a0d0: 6170 706c 6963 6162 6c65 2c20 6e6f 7468  applicable, noth
│ │ │ +0004a0e0: 696e 6720 7761 7320 646f 6e65 270a 6669  ing was done'.fi
│ │ │ +0004a0f0: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
│ │ │ +0004a1a0: 5265 6d65 6469 6174 696f 6e20 416e 6163 Remediation Anac │ │ │ +0004a1b0: 6f6e 6461 2073 6e69 7070 6574 20e2 87b2 onda snippet ... │ │ │ +0004a1c0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
C │ │ │ +00049f60: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ +00049f90: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ +00049fa0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ +00049fe0: 3a3c 2f74 683e 3c74 643e 656e 6162 6c65 :enable │ │ │ +00049ff0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
< │ │ │ +0004a290: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +0004a2a0: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
.
│ │ │ +0004a2f0: 7061 636b 6167 6520 2d2d 6164 643d 7375  package --add=su
│ │ │ +0004a300: 646f 0a3c 2f63 6f64 653e 3c2f 7072 653e  do.
│ │ │ 0004a310: 3c2f 6469 763e 3c2f 6469 763e 3c2f 7464 │ │ │ 0004a340: 3c74 7220 6461 7461 2d74 742d 6964 3d22 Remediation OS │ │ │ -00101e80: 4275 696c 6420 426c 7565 7072 696e 7420 Build Blueprint │ │ │ -00101e90: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ -00101ea0: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
.[
│ │ │ -00101ee0: 6375 7374 6f6d 697a 6174 696f 6e73 2e73  customizations.s
│ │ │ -00101ef0: 6572 7669 6365 735d 0a65 6e61 626c 6564  ervices].enabled
│ │ │ -00101f00: 203d 205b 2273 7973 7465 6d64 2d6a 6f75   = ["systemd-jou
│ │ │ -00101f10: 726e 616c 6422 5d0a 3c2f 636f 6465 3e3c  rnald"].<
│ │ │ -00101f20: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>
Remediat │ │ │ -00101fd0: 696f 6e20 5075 7070 6574 2073 6e69 7070 ion Puppet snipp │ │ │ -00101fe0: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ -00102060: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 < │ │ │ -001020f0: 7464 3e65 6e61 626c 653c 2f74 643e 3c2f td>enable
Complexity:low
Disrup │ │ │ +0004a270: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ +0004a280: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ +0004a2c0: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ +0004a2d0: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Complexi │ │ │ -00102070: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -00102080: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Disruption:low
Reboot │ │ │ -001020c0: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -001020d0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Strategy:
│ │ │ -00102110: 3c63 6f64 653e 696e 636c 7564 6520 656e  include en
│ │ │ -00102120: 6162 6c65 5f73 7973 7465 6d64 2d6a 6f75  able_systemd-jou
│ │ │ -00102130: 726e 616c 640a 0a63 6c61 7373 2065 6e61  rnald..class ena
│ │ │ -00102140: 626c 655f 7379 7374 656d 642d 6a6f 7572  ble_systemd-jour
│ │ │ -00102150: 6e61 6c64 207b 0a20 2073 6572 7669 6365  nald {.  service
│ │ │ -00102160: 207b 2773 7973 7465 6d64 2d6a 6f75 726e   {'systemd-journ
│ │ │ -00102170: 616c 6427 3a0a 2020 2020 656e 6162 6c65  ald':.    enable
│ │ │ -00102180: 203d 2667 743b 2074 7275 652c 0a20 2020   => true,.   
│ │ │ -00102190: 2065 6e73 7572 6520 3d26 6774 3b20 2772   ensure => 'r
│ │ │ -001021a0: 756e 6e69 6e67 272c 0a20 207d 0a7d 0a3c  unning',.  }.}.<
│ │ │ -001021b0: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ -00102260: 656d 6564 6961 7469 6f6e 2041 6e73 6962 emediation Ansib │ │ │ -00102270: 6c65 2073 6e69 7070 6574 20e2 87b2 3c2f le snippet ...
│ │ │ -00102310: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
- 
│ │ │ -001023b0: 6e61 6d65 3a20 4761 7468 6572 2074 6865  name: Gather the
│ │ │ -001023c0: 2070 6163 6b61 6765 2066 6163 7473 0a20   package facts. 
│ │ │ -001023d0: 2070 6163 6b61 6765 5f66 6163 7473 3a0a   package_facts:.
│ │ │ -001023e0: 2020 2020 6d61 6e61 6765 723a 2061 7574      manager: aut
│ │ │ -001023f0: 6f0a 2020 7461 6773 3a0a 2020 2d20 4e49  o.  tags:.  - NI
│ │ │ -00102400: 5354 2d38 3030 2d35 332d 5343 2d32 340a  ST-800-53-SC-24.
│ │ │ -00102410: 2020 2d20 656e 6162 6c65 5f73 7472 6174    - enable_strat
│ │ │ -00102420: 6567 790a 2020 2d20 6c6f 775f 636f 6d70  egy.  - low_comp
│ │ │ -00102430: 6c65 7869 7479 0a20 202d 206c 6f77 5f64  lexity.  - low_d
│ │ │ -00102440: 6973 7275 7074 696f 6e0a 2020 2d20 6d65  isruption.  - me
│ │ │ -00102450: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ -00102460: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ -00102470: 6564 0a20 202d 2073 6572 7669 6365 5f73  ed.  - service_s
│ │ │ -00102480: 7973 7465 6d64 2d6a 6f75 726e 616c 645f  ystemd-journald_
│ │ │ -00102490: 656e 6162 6c65 640a 0a2d 206e 616d 653a  enabled..- name:
│ │ │ -001024a0: 2045 6e61 626c 6520 7379 7374 656d 642d   Enable systemd-
│ │ │ -001024b0: 6a6f 7572 6e61 6c64 2053 6572 7669 6365  journald Service
│ │ │ -001024c0: 202d 2045 6e61 626c 6520 7365 7276 6963   - Enable servic
│ │ │ -001024d0: 6520 7379 7374 656d 642d 6a6f 7572 6e61  e systemd-journa
│ │ │ -001024e0: 6c64 0a20 2062 6c6f 636b 3a0a 0a20 202d  ld.  block:..  -
│ │ │ -001024f0: 206e 616d 653a 2047 6174 6865 7220 7468   name: Gather th
│ │ │ -00102500: 6520 7061 636b 6167 6520 6661 6374 730a  e package facts.
│ │ │ -00102510: 2020 2020 616e 7369 626c 652e 6275 696c      ansible.buil
│ │ │ -00102520: 7469 6e2e 7061 636b 6167 655f 6661 6374  tin.package_fact
│ │ │ -00102530: 733a 0a20 2020 2020 206d 616e 6167 6572  s:.      manager
│ │ │ -00102540: 3a20 6175 746f 0a0a 2020 2d20 6e61 6d65  : auto..  - name
│ │ │ -00102550: 3a20 456e 6162 6c65 2073 7973 7465 6d64  : Enable systemd
│ │ │ -00102560: 2d6a 6f75 726e 616c 6420 5365 7276 6963  -journald Servic
│ │ │ -00102570: 6520 2d20 456e 6162 6c65 2053 6572 7669  e - Enable Servi
│ │ │ -00102580: 6365 2073 7973 7465 6d64 2d6a 6f75 726e  ce systemd-journ
│ │ │ -00102590: 616c 640a 2020 2020 616e 7369 626c 652e  ald.    ansible.
│ │ │ -001025a0: 6275 696c 7469 6e2e 7379 7374 656d 643a  builtin.systemd:
│ │ │ -001025b0: 0a20 2020 2020 206e 616d 653a 2073 7973  .      name: sys
│ │ │ -001025c0: 7465 6d64 2d6a 6f75 726e 616c 640a 2020  temd-journald.  
│ │ │ -001025d0: 2020 2020 656e 6162 6c65 643a 2074 7275      enabled: tru
│ │ │ -001025e0: 650a 2020 2020 2020 7374 6174 653a 2073  e.      state: s
│ │ │ -001025f0: 7461 7274 6564 0a20 2020 2020 206d 6173  tarted.      mas
│ │ │ -00102600: 6b65 643a 2066 616c 7365 0a20 2020 2077  ked: false.    w
│ │ │ -00102610: 6865 6e3a 0a20 2020 202d 2027 2273 7973  hen:.    - '"sys
│ │ │ -00102620: 7465 6d64 2220 696e 2061 6e73 6962 6c65  temd" in ansible
│ │ │ -00102630: 5f66 6163 7473 2e70 6163 6b61 6765 7327  _facts.packages'
│ │ │ -00102640: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ -00102650: 542d 3830 302d 3533 2d53 432d 3234 0a20  T-800-53-SC-24. 
│ │ │ -00102660: 202d 2065 6e61 626c 655f 7374 7261 7465   - enable_strate
│ │ │ -00102670: 6779 0a20 202d 206c 6f77 5f63 6f6d 706c  gy.  - low_compl
│ │ │ -00102680: 6578 6974 790a 2020 2d20 6c6f 775f 6469  exity.  - low_di
│ │ │ -00102690: 7372 7570 7469 6f6e 0a20 202d 206d 6564  sruption.  - med
│ │ │ -001026a0: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ -001026b0: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ -001026c0: 640a 2020 2d20 7365 7276 6963 655f 7379  d.  - service_sy
│ │ │ -001026d0: 7374 656d 642d 6a6f 7572 6e61 6c64 5f65  stemd-journald_e
│ │ │ -001026e0: 6e61 626c 6564 0a20 202d 2073 7065 6369  nabled.  - speci
│ │ │ -001026f0: 616c 5f73 6572 7669 6365 5f62 6c6f 636b  al_service_block
│ │ │ -00102700: 0a20 2077 6865 6e3a 2027 226b 6572 6e65  .  when: '"kerne
│ │ │ -00102710: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ -00102720: 6374 732e 7061 636b 6167 6573 270a 3c2f  cts.packages'.Remediation An
│ │ │ +00101e80: 7369 626c 6520 736e 6970 7065 7420 e287  sible snippet ..
│ │ │ +00101e90: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c  .
│ │ │ -00102300: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -00102330: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -00102340: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -00102380: 793a 3c2f 7468 3e3c 7464 3e65 6e61 626c y:enabl │ │ │ -00102390: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
< │ │ │ +00101f10: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ +00101f30: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ +00101f80: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
- name: Gather 
│ │ │ +00101fd0: 7468 6520 7061 636b 6167 6520 6661 6374  the package fact
│ │ │ +00101fe0: 730a 2020 7061 636b 6167 655f 6661 6374  s.  package_fact
│ │ │ +00101ff0: 733a 0a20 2020 206d 616e 6167 6572 3a20  s:.    manager: 
│ │ │ +00102000: 6175 746f 0a20 2074 6167 733a 0a20 202d  auto.  tags:.  -
│ │ │ +00102010: 204e 4953 542d 3830 302d 3533 2d53 432d   NIST-800-53-SC-
│ │ │ +00102020: 3234 0a20 202d 2065 6e61 626c 655f 7374  24.  - enable_st
│ │ │ +00102030: 7261 7465 6779 0a20 202d 206c 6f77 5f63  rategy.  - low_c
│ │ │ +00102040: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f  omplexity.  - lo
│ │ │ +00102050: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ +00102060: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ +00102070: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ +00102080: 6565 6465 640a 2020 2d20 7365 7276 6963  eeded.  - servic
│ │ │ +00102090: 655f 7379 7374 656d 642d 6a6f 7572 6e61  e_systemd-journa
│ │ │ +001020a0: 6c64 5f65 6e61 626c 6564 0a0a 2d20 6e61  ld_enabled..- na
│ │ │ +001020b0: 6d65 3a20 456e 6162 6c65 2073 7973 7465  me: Enable syste
│ │ │ +001020c0: 6d64 2d6a 6f75 726e 616c 6420 5365 7276  md-journald Serv
│ │ │ +001020d0: 6963 6520 2d20 456e 6162 6c65 2073 6572  ice - Enable ser
│ │ │ +001020e0: 7669 6365 2073 7973 7465 6d64 2d6a 6f75  vice systemd-jou
│ │ │ +001020f0: 726e 616c 640a 2020 626c 6f63 6b3a 0a0a  rnald.  block:..
│ │ │ +00102100: 2020 2d20 6e61 6d65 3a20 4761 7468 6572    - name: Gather
│ │ │ +00102110: 2074 6865 2070 6163 6b61 6765 2066 6163   the package fac
│ │ │ +00102120: 7473 0a20 2020 2061 6e73 6962 6c65 2e62  ts.    ansible.b
│ │ │ +00102130: 7569 6c74 696e 2e70 6163 6b61 6765 5f66  uiltin.package_f
│ │ │ +00102140: 6163 7473 3a0a 2020 2020 2020 6d61 6e61  acts:.      mana
│ │ │ +00102150: 6765 723a 2061 7574 6f0a 0a20 202d 206e  ger: auto..  - n
│ │ │ +00102160: 616d 653a 2045 6e61 626c 6520 7379 7374  ame: Enable syst
│ │ │ +00102170: 656d 642d 6a6f 7572 6e61 6c64 2053 6572  emd-journald Ser
│ │ │ +00102180: 7669 6365 202d 2045 6e61 626c 6520 5365  vice - Enable Se
│ │ │ +00102190: 7276 6963 6520 7379 7374 656d 642d 6a6f  rvice systemd-jo
│ │ │ +001021a0: 7572 6e61 6c64 0a20 2020 2061 6e73 6962  urnald.    ansib
│ │ │ +001021b0: 6c65 2e62 7569 6c74 696e 2e73 7973 7465  le.builtin.syste
│ │ │ +001021c0: 6d64 3a0a 2020 2020 2020 6e61 6d65 3a20  md:.      name: 
│ │ │ +001021d0: 7379 7374 656d 642d 6a6f 7572 6e61 6c64  systemd-journald
│ │ │ +001021e0: 0a20 2020 2020 2065 6e61 626c 6564 3a20  .      enabled: 
│ │ │ +001021f0: 7472 7565 0a20 2020 2020 2073 7461 7465  true.      state
│ │ │ +00102200: 3a20 7374 6172 7465 640a 2020 2020 2020  : started.      
│ │ │ +00102210: 6d61 736b 6564 3a20 6661 6c73 650a 2020  masked: false.  
│ │ │ +00102220: 2020 7768 656e 3a0a 2020 2020 2d20 2722    when:.    - '"
│ │ │ +00102230: 7379 7374 656d 6422 2069 6e20 616e 7369  systemd" in ansi
│ │ │ +00102240: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +00102250: 6573 270a 2020 7461 6773 3a0a 2020 2d20  es'.  tags:.  - 
│ │ │ +00102260: 4e49 5354 2d38 3030 2d35 332d 5343 2d32  NIST-800-53-SC-2
│ │ │ +00102270: 340a 2020 2d20 656e 6162 6c65 5f73 7472  4.  - enable_str
│ │ │ +00102280: 6174 6567 790a 2020 2d20 6c6f 775f 636f  ategy.  - low_co
│ │ │ +00102290: 6d70 6c65 7869 7479 0a20 202d 206c 6f77  mplexity.  - low
│ │ │ +001022a0: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +001022b0: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ +001022c0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ +001022d0: 6564 6564 0a20 202d 2073 6572 7669 6365  eded.  - service
│ │ │ +001022e0: 5f73 7973 7465 6d64 2d6a 6f75 726e 616c  _systemd-journal
│ │ │ +001022f0: 645f 656e 6162 6c65 640a 2020 2d20 7370  d_enabled.  - sp
│ │ │ +00102300: 6563 6961 6c5f 7365 7276 6963 655f 626c  ecial_service_bl
│ │ │ +00102310: 6f63 6b0a 2020 7768 656e 3a20 2722 6b65  ock.  when: '"ke
│ │ │ +00102320: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ +00102330: 5f66 6163 7473 2e70 6163 6b61 6765 7327  _facts.packages'
│ │ │ +00102340: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation Pup │ │ │ +00102400: 7065 7420 736e 6970 7065 7420 e287 b23c pet snippet ...< │ │ │ +00102410: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
low
Disr │ │ │ +00101f40: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +00101f50: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ +00101f90: 7465 6779 3a3c 2f74 683e 3c74 643e 656e tegy:en │ │ │ +00101fa0: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
< │ │ │ +001024e0: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +001024f0: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
i
│ │ │ +00102540: 6e63 6c75 6465 2065 6e61 626c 655f 7379  nclude enable_sy
│ │ │ +00102550: 7374 656d 642d 6a6f 7572 6e61 6c64 0a0a  stemd-journald..
│ │ │ +00102560: 636c 6173 7320 656e 6162 6c65 5f73 7973  class enable_sys
│ │ │ +00102570: 7465 6d64 2d6a 6f75 726e 616c 6420 7b0a  temd-journald {.
│ │ │ +00102580: 2020 7365 7276 6963 6520 7b27 7379 7374    service {'syst
│ │ │ +00102590: 656d 642d 6a6f 7572 6e61 6c64 273a 0a20  emd-journald':. 
│ │ │ +001025a0: 2020 2065 6e61 626c 6520 3d26 6774 3b20     enable => 
│ │ │ +001025b0: 7472 7565 2c0a 2020 2020 656e 7375 7265  true,.    ensure
│ │ │ +001025c0: 203d 2667 743b 2027 7275 6e6e 696e 6727   => 'running'
│ │ │ +001025d0: 2c0a 2020 7d0a 7d0a 3c2f 636f 6465 3e3c  ,.  }.}.<
│ │ │ +001025e0: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>Remediat
│ │ │ +00102690: 696f 6e20 4f53 4275 696c 6420 426c 7565  ion OSBuild Blue
│ │ │ +001026a0: 7072 696e 7420 736e 6970 7065 7420 e287  print snippet ..
│ │ │ +001026b0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c  .
.[customizat
│ │ │ +00102700: 696f 6e73 2e73 6572 7669 6365 735d 0a65  ions.services].e
│ │ │ +00102710: 6e61 626c 6564 203d 205b 2273 7973 7465  nabled = ["syste
│ │ │ +00102720: 6d64 2d6a 6f75 726e 616c 6422 5d0a 3c2f  md-journald"].
Remediation OS │ │ │ -0010f4f0: 4275 696c 6420 426c 7565 7072 696e 7420 Build Blueprint │ │ │ -0010f500: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ -0010f510: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
.[
│ │ │ -0010f550: 5b70 6163 6b61 6765 735d 5d0a 6e61 6d65  [packages]].name
│ │ │ -0010f560: 203d 2022 7273 7973 6c6f 6722 0a76 6572   = "rsyslog".ver
│ │ │ -0010f570: 7369 6f6e 203d 2022 2a22 0a3c 2f63 6f64  sion = "*".
Remed │ │ │ -0010f630: 6961 7469 6f6e 2041 6e61 636f 6e64 6120 iation Anaconda │ │ │ -0010f640: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ -0010f650: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Complexity:low
Disrup │ │ │ +001024c0: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ +001024d0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ +00102510: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ +00102520: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Com │ │ │ -0010f6d0: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ -0010f700: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ -0010f720: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -0010f730: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -0010f750: 2f74 683e 3c74 643e 656e 6162 6c65 3c2f /th>enable
│ │ │ -0010f770: 3c70 7265 3e3c 636f 6465 3e0a 7061 636b
.pack
│ │ │ -0010f780: 6167 6520 2d2d 6164 643d 7273 7973 6c6f  age --add=rsyslo
│ │ │ -0010f790: 670a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  g.
< │ │ │ -0010f7a0: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Pu │ │ │ -0010f850: 7070 6574 2073 6e69 7070 6574 20e2 87b2 ppet snippet ... │ │ │ -0010f860: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity: │ │ │ -0010f930: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -0010f940: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f

│ │ │ -0010f990: 696e 636c 7564 6520 696e 7374 616c 6c5f  include install_
│ │ │ -0010f9a0: 7273 7973 6c6f 670a 0a63 6c61 7373 2069  rsyslog..class i
│ │ │ -0010f9b0: 6e73 7461 6c6c 5f72 7379 736c 6f67 207b  nstall_rsyslog {
│ │ │ -0010f9c0: 0a20 2070 6163 6b61 6765 207b 2027 7273  .  package { 'rs
│ │ │ -0010f9d0: 7973 6c6f 6727 3a0a 2020 2020 656e 7375  yslog':.    ensu
│ │ │ -0010f9e0: 7265 203d 2667 743b 2027 696e 7374 616c  re => 'instal
│ │ │ -0010f9f0: 6c65 6427 2c0a 2020 7d0a 7d0a 3c2f 636f  led',.  }.}.
< │ │ │ -0010fa10: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ -0010fa20: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ -0010fa30: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ -0010fa40: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ -0010fa50: 6432 3539 2220 7461 6269 6e64 6578 3d22 d259" tabindex=" │ │ │ -0010fa60: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ -0010fa70: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ -0010fa80: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ -0010fa90: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ -0010faa0: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ -0010fab0: 6469 6174 696f 6e20 416e 7369 626c 6520 diation Ansible │ │ │ -0010fac0: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ -0010fad0: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
low
Disru │ │ │ -0010f910: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ -0010f920: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ -0010f960: 6567 793a 3c2f 7468 3e3c 7464 3e65 6e61 egy:ena │ │ │ -0010f970: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Com │ │ │ -0010fb50: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ -0010fb80: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ -0010fba0: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -0010fbb0: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -0010fbd0: 2f74 683e 3c74 643e 656e 6162 6c65 3c2f /th>enable
│ │ │ -0010fbf0: 3c70 7265 3e3c 636f 6465 3e2d 206e 616d
- nam
│ │ │ -0010fc00: 653a 2047 6174 6865 7220 7468 6520 7061  e: Gather the pa
│ │ │ -0010fc10: 636b 6167 6520 6661 6374 730a 2020 7061  ckage facts.  pa
│ │ │ -0010fc20: 636b 6167 655f 6661 6374 733a 0a20 2020  ckage_facts:.   
│ │ │ -0010fc30: 206d 616e 6167 6572 3a20 6175 746f 0a20   manager: auto. 
│ │ │ -0010fc40: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ -0010fc50: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ -0010fc60: 202d 2065 6e61 626c 655f 7374 7261 7465   - enable_strate
│ │ │ -0010fc70: 6779 0a20 202d 206c 6f77 5f63 6f6d 706c  gy.  - low_compl
│ │ │ -0010fc80: 6578 6974 790a 2020 2d20 6c6f 775f 6469  exity.  - low_di
│ │ │ -0010fc90: 7372 7570 7469 6f6e 0a20 202d 206d 6564  sruption.  - med
│ │ │ -0010fca0: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ -0010fcb0: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ -0010fcc0: 640a 2020 2d20 7061 636b 6167 655f 7273  d.  - package_rs
│ │ │ -0010fcd0: 7973 6c6f 675f 696e 7374 616c 6c65 640a  yslog_installed.
│ │ │ -0010fce0: 0a2d 206e 616d 653a 2045 6e73 7572 6520  .- name: Ensure 
│ │ │ -0010fcf0: 7273 7973 6c6f 6720 6973 2069 6e73 7461  rsyslog is insta
│ │ │ -0010fd00: 6c6c 6564 0a20 2061 6e73 6962 6c65 2e62  lled.  ansible.b
│ │ │ -0010fd10: 7569 6c74 696e 2e70 6163 6b61 6765 3a0a  uiltin.package:.
│ │ │ -0010fd20: 2020 2020 6e61 6d65 3a20 7273 7973 6c6f      name: rsyslo
│ │ │ -0010fd30: 670a 2020 2020 7374 6174 653a 2070 7265  g.    state: pre
│ │ │ -0010fd40: 7365 6e74 0a20 2077 6865 6e3a 2027 226b  sent.  when: '"k
│ │ │ -0010fd50: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ -0010fd60: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -0010fd70: 270a 2020 7461 6773 3a0a 2020 2d20 4e49  '.  tags:.  - NI
│ │ │ -0010fd80: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ -0010fd90: 290a 2020 2d20 656e 6162 6c65 5f73 7472  ).  - enable_str
│ │ │ -0010fda0: 6174 6567 790a 2020 2d20 6c6f 775f 636f  ategy.  - low_co
│ │ │ -0010fdb0: 6d70 6c65 7869 7479 0a20 202d 206c 6f77  mplexity.  - low
│ │ │ -0010fdc0: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ -0010fdd0: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ -0010fde0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ -0010fdf0: 6564 6564 0a20 202d 2070 6163 6b61 6765  eded.  - package
│ │ │ -0010fe00: 5f72 7379 736c 6f67 5f69 6e73 7461 6c6c  _rsyslog_install
│ │ │ -0010fe10: 6564 0a3c 2f63 6f64 653e 3c2f 7072 653e  ed.
│ │ │ -0010fe20: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation S │ │ │ -0010fed0: 6865 6c6c 2073 6372 6970 7420 e287 b23c hell script ...< │ │ │ -0010fee0: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
< │ │ │ -0010ffb0: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -0010ffc0: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
#
│ │ │ -00110010: 2052 656d 6564 6961 7469 6f6e 2069 7320   Remediation is 
│ │ │ -00110020: 6170 706c 6963 6162 6c65 206f 6e6c 7920  applicable only 
│ │ │ -00110030: 696e 2063 6572 7461 696e 2070 6c61 7466  in certain platf
│ │ │ -00110040: 6f72 6d73 0a69 6620 7270 6d20 2d2d 7175  orms.if rpm --qu
│ │ │ -00110050: 6965 7420 2d71 206b 6572 6e65 6c3b 2074  iet -q kernel; t
│ │ │ -00110060: 6865 6e0a 0a69 6620 2120 7270 6d20 2d71  hen..if ! rpm -q
│ │ │ -00110070: 202d 2d71 7569 6574 2022 7273 7973 6c6f   --quiet "rsyslo
│ │ │ -00110080: 6722 203b 2074 6865 6e0a 2020 2020 646e  g" ; then.    dn
│ │ │ -00110090: 6620 696e 7374 616c 6c20 2d79 2022 7273  f install -y "rs
│ │ │ -001100a0: 7973 6c6f 6722 0a66 690a 0a65 6c73 650a  yslog".fi..else.
│ │ │ -001100b0: 2020 2020 2667 743b 2661 6d70 3b32 2065      >&2 e
│ │ │ -001100c0: 6368 6f20 2752 656d 6564 6961 7469 6f6e  cho 'Remediation
│ │ │ -001100d0: 2069 7320 6e6f 7420 6170 706c 6963 6162   is not applicab
│ │ │ -001100e0: 6c65 2c20 6e6f 7468 696e 6720 7761 7320  le, nothing was 
│ │ │ -001100f0: 646f 6e65 270a 6669 0a3c 2f63 6f64 653e  done'.fi.
│ │ │ +0010f4e0: 223e 5265 6d65 6469 6174 696f 6e20 416e  ">Remediation An
│ │ │ +0010f4f0: 7369 626c 6520 736e 6970 7065 7420 e287  sible snippet ..
│ │ │ +0010f500: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c  .
Complexity:low
Disrup │ │ │ -0010ff90: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -0010ffa0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -0010ffe0: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ -0010fff0: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
< │ │ │ +0010f580: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ +0010f5a0: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ +0010f5f0: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
- name: Gather 
│ │ │ +0010f640: 7468 6520 7061 636b 6167 6520 6661 6374  the package fact
│ │ │ +0010f650: 730a 2020 7061 636b 6167 655f 6661 6374  s.  package_fact
│ │ │ +0010f660: 733a 0a20 2020 206d 616e 6167 6572 3a20  s:.    manager: 
│ │ │ +0010f670: 6175 746f 0a20 2074 6167 733a 0a20 202d  auto.  tags:.  -
│ │ │ +0010f680: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +0010f690: 3628 6129 0a20 202d 2065 6e61 626c 655f  6(a).  - enable_
│ │ │ +0010f6a0: 7374 7261 7465 6779 0a20 202d 206c 6f77  strategy.  - low
│ │ │ +0010f6b0: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +0010f6c0: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ +0010f6d0: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ +0010f6e0: 7479 0a20 202d 206e 6f5f 7265 626f 6f74  ty.  - no_reboot
│ │ │ +0010f6f0: 5f6e 6565 6465 640a 2020 2d20 7061 636b  _needed.  - pack
│ │ │ +0010f700: 6167 655f 7273 7973 6c6f 675f 696e 7374  age_rsyslog_inst
│ │ │ +0010f710: 616c 6c65 640a 0a2d 206e 616d 653a 2045  alled..- name: E
│ │ │ +0010f720: 6e73 7572 6520 7273 7973 6c6f 6720 6973  nsure rsyslog is
│ │ │ +0010f730: 2069 6e73 7461 6c6c 6564 0a20 2061 6e73   installed.  ans
│ │ │ +0010f740: 6962 6c65 2e62 7569 6c74 696e 2e70 6163  ible.builtin.pac
│ │ │ +0010f750: 6b61 6765 3a0a 2020 2020 6e61 6d65 3a20  kage:.    name: 
│ │ │ +0010f760: 7273 7973 6c6f 670a 2020 2020 7374 6174  rsyslog.    stat
│ │ │ +0010f770: 653a 2070 7265 7365 6e74 0a20 2077 6865  e: present.  whe
│ │ │ +0010f780: 6e3a 2027 226b 6572 6e65 6c22 2069 6e20  n: '"kernel" in 
│ │ │ +0010f790: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +0010f7a0: 636b 6167 6573 270a 2020 7461 6773 3a0a  ckages'.  tags:.
│ │ │ +0010f7b0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +0010f7c0: 434d 2d36 2861 290a 2020 2d20 656e 6162  CM-6(a).  - enab
│ │ │ +0010f7d0: 6c65 5f73 7472 6174 6567 790a 2020 2d20  le_strategy.  - 
│ │ │ +0010f7e0: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ +0010f7f0: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ +0010f800: 6e0a 2020 2d20 6d65 6469 756d 5f73 6576  n.  - medium_sev
│ │ │ +0010f810: 6572 6974 790a 2020 2d20 6e6f 5f72 6562  erity.  - no_reb
│ │ │ +0010f820: 6f6f 745f 6e65 6564 6564 0a20 202d 2070  oot_needed.  - p
│ │ │ +0010f830: 6163 6b61 6765 5f72 7379 736c 6f67 5f69  ackage_rsyslog_i
│ │ │ +0010f840: 6e73 7461 6c6c 6564 0a3c 2f63 6f64 653e  nstalled.
│ │ │ +0010f850: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ +0010f900: 7469 6f6e 2050 7570 7065 7420 736e 6970 tion Puppet snip │ │ │ +0010f910: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ +0010f920: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +0010f930: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +0010f940: 7365 2220 6964 3d22 6964 3235 3722 3e3c se" id="id257">< │ │ │ +0010f950: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +0010f960: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +0010f970: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +0010f980: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +0010f990: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Disruption:Strategy: │ │ │ +0010fa20: 3c74 643e 656e 6162 6c65 3c2f 7464 3e3c < │ │ │ +0010fa30: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
low
Disr │ │ │ +0010f5b0: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +0010f5c0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ +0010f600: 7465 6779 3a3c 2f74 683e 3c74 643e 656e tegy:en │ │ │ +0010f610: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
Complex │ │ │ +0010f9a0: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ +0010f9b0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
low
Reboo │ │ │ +0010f9f0: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ +0010fa00: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
enable
include i
│ │ │ +0010fa50: 6e73 7461 6c6c 5f72 7379 736c 6f67 0a0a  nstall_rsyslog..
│ │ │ +0010fa60: 636c 6173 7320 696e 7374 616c 6c5f 7273  class install_rs
│ │ │ +0010fa70: 7973 6c6f 6720 7b0a 2020 7061 636b 6167  yslog {.  packag
│ │ │ +0010fa80: 6520 7b20 2772 7379 736c 6f67 273a 0a20  e { 'rsyslog':. 
│ │ │ +0010fa90: 2020 2065 6e73 7572 6520 3d26 6774 3b20     ensure => 
│ │ │ +0010faa0: 2769 6e73 7461 6c6c 6564 272c 0a20 207d  'installed',.  }
│ │ │ +0010fab0: 0a7d 0a3c 2f63 6f64 653e 3c2f 7072 653e  .}.
│ │ │ +0010fac0: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation O │ │ │ +0010fb70: 5342 7569 6c64 2042 6c75 6570 7269 6e74 SBuild Blueprint │ │ │ +0010fb80: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ +0010fb90: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
.
│ │ │ +0010fbd0: 5b5b 7061 636b 6167 6573 5d5d 0a6e 616d  [[packages]].nam
│ │ │ +0010fbe0: 6520 3d20 2272 7379 736c 6f67 220a 7665  e = "rsyslog".ve
│ │ │ +0010fbf0: 7273 696f 6e20 3d20 222a 220a 3c2f 636f  rsion = "*".
< │ │ │ +0010fc10: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ +0010fc20: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ +0010fc30: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ +0010fc40: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ +0010fc50: 6432 3539 2220 7461 6269 6e64 6578 3d22 d259" tabindex=" │ │ │ +0010fc60: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ +0010fc70: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ +0010fc80: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ +0010fc90: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ +0010fca0: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ +0010fcb0: 6469 6174 696f 6e20 5368 656c 6c20 7363 diation Shell sc │ │ │ +0010fcc0: 7269 7074 20e2 87b2 3c2f 613e 3c62 723e ript ...
│ │ │ +0010fcd0: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ +0010fd00: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ +0010fd70: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ +0010fd90: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ +0010fdc0: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy: │ │ │ +0010fde0: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
Comple │ │ │ +0010fd50: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ +0010fd60: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ +0010fda0: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +0010fdb0: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
enable
# Remedi │ │ │ +0010fe00: 6174 696f 6e20 6973 2061 7070 6c69 6361 ation is applica │ │ │ +0010fe10: 626c 6520 6f6e 6c79 2069 6e20 6365 7274 ble only in cert │ │ │ +0010fe20: 6169 6e20 706c 6174 666f 726d 730a 6966 ain platforms.if │ │ │ +0010fe30: 2072 706d 202d 2d71 7569 6574 202d 7120 rpm --quiet -q │ │ │ +0010fe40: 6b65 726e 656c 3b20 7468 656e 0a0a 6966 kernel; then..if │ │ │ +0010fe50: 2021 2072 706d 202d 7120 2d2d 7175 6965 ! rpm -q --quie │ │ │ +0010fe60: 7420 2272 7379 736c 6f67 2220 3b20 7468 t "rsyslog" ; th │ │ │ +0010fe70: 656e 0a20 2020 2064 6e66 2069 6e73 7461 en. dnf insta │ │ │ +0010fe80: 6c6c 202d 7920 2272 7379 736c 6f67 220a ll -y "rsyslog". │ │ │ +0010fe90: 6669 0a0a 656c 7365 0a20 2020 2026 6774 fi..else. > │ │ │ +0010fea0: 3b26 616d 703b 3220 6563 686f 2027 5265 ;&2 echo 'Re │ │ │ +0010feb0: 6d65 6469 6174 696f 6e20 6973 206e 6f74 mediation is not │ │ │ +0010fec0: 2061 7070 6c69 6361 626c 652c 206e 6f74 applicable, not │ │ │ +0010fed0: 6869 6e67 2077 6173 2064 6f6e 6527 0a66 hing was done'.f │ │ │ +0010fee0: 690a 3c2f 636f 6465 3e3c 2f70 7265 3e3c i.< │ │ │ +0010fef0: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation An │ │ │ +0010ffa0: 6163 6f6e 6461 2073 6e69 7070 6574 20e2 aconda snippet . │ │ │ +0010ffb0: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ +00110030: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +00110050: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ +001100a0: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 < │ │ │ +001100d0: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
.package --add
│ │ │ +001100f0: 3d72 7379 736c 6f67 0a3c 2f63 6f64 653e  =rsyslog.
│ │ │  00110100: 3c2f 7072 653e 3c2f 6469 763e 3c2f 6469  
Complexity:< │ │ │ +00110040: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +00110060: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ +001100b0: 6174 6567 793a 3c2f 7468 3e3c 7464 3e65 ategy:e │ │ │ +001100c0: 6e61 626c 653c 2f74 643e 3c2f 7472 3e3c nable
R │ │ │ -00198ef0: 656d 6564 6961 7469 6f6e 2041 6e61 636f emediation Anaco │ │ │ -00198f00: 6e64 6120 736e 6970 7065 7420 e287 b23c nda snippet ...< │ │ │ -00198f10: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
│ │ │ -00198fe0: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -00198ff0: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f

│ │ │ -00199040: 0a70 6172 7420 2f68 6f6d 6520 2d2d 6d6f  .part /home --mo
│ │ │ -00199050: 756e 746f 7074 696f 6e73 3d22 6e6f 6465  untoptions="node
│ │ │ -00199060: 7622 0a3c 2f63 6f64 653e 3c2f 7072 653e  v".
│ │ │ -00199070: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22 Remediation A │ │ │ -00199120: 6e73 6962 6c65 2073 6e69 7070 6574 20e2 nsible snippet . │ │ │ -00199130: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
Complexity:low
Disrup │ │ │ -00198fc0: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6869 tion:hi │ │ │ -00198fd0: 6768 3c2f 7464 3e3c 2f74 723e 3c74 723e gh
Reboot:false
Strat │ │ │ -00199010: 6567 793a 3c2f 7468 3e3c 7464 3e65 6e61 egy:ena │ │ │ -00199020: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
│ │ │ -001991b0: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -001991d0: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 < │ │ │ -00199200: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>
Complexity:< │ │ │ -001991c0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ -001991e0: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:high
Reboot:false
St │ │ │ -00199230: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ -00199240: 636f 6e66 6967 7572 653c 2f74 643e 3c2f configure
│ │ │ -00199260: 3c63 6f64 653e 2d20 6e61 6d65 3a20 4761  - name: Ga
│ │ │ -00199270: 7468 6572 2074 6865 2070 6163 6b61 6765  ther the package
│ │ │ -00199280: 2066 6163 7473 0a20 2070 6163 6b61 6765   facts.  package
│ │ │ -00199290: 5f66 6163 7473 3a0a 2020 2020 6d61 6e61  _facts:.    mana
│ │ │ -001992a0: 6765 723a 2061 7574 6f0a 2020 7461 6773  ger: auto.  tags
│ │ │ -001992b0: 3a0a 2020 2d20 636f 6e66 6967 7572 655f  :.  - configure_
│ │ │ -001992c0: 7374 7261 7465 6779 0a20 202d 2068 6967  strategy.  - hig
│ │ │ -001992d0: 685f 6469 7372 7570 7469 6f6e 0a20 202d  h_disruption.  -
│ │ │ -001992e0: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ -001992f0: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e    - mount_option
│ │ │ -00199300: 5f68 6f6d 655f 6e6f 6465 760a 2020 2d20  _home_nodev.  - 
│ │ │ -00199310: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ -00199320: 0a20 202d 2075 6e6b 6e6f 776e 5f73 6576  .  - unknown_sev
│ │ │ -00199330: 6572 6974 790a 0a2d 206e 616d 653a 2027  erity..- name: '
│ │ │ -00199340: 4164 6420 6e6f 6465 7620 4f70 7469 6f6e  Add nodev Option
│ │ │ -00199350: 2074 6f20 2f68 6f6d 653a 2043 6865 636b   to /home: Check
│ │ │ -00199360: 2069 6e66 6f72 6d61 7469 6f6e 2061 7373   information ass
│ │ │ -00199370: 6f63 6961 7465 6420 746f 206d 6f75 6e74  ociated to mount
│ │ │ -00199380: 706f 696e 7427 0a20 2061 6e73 6962 6c65  point'.  ansible
│ │ │ -00199390: 2e62 7569 6c74 696e 2e63 6f6d 6d61 6e64  .builtin.command
│ │ │ -001993a0: 3a20 6669 6e64 6d6e 7420 2d2d 6673 7461  : findmnt --fsta
│ │ │ -001993b0: 6220 272f 686f 6d65 270a 2020 7265 6769  b '/home'.  regi
│ │ │ -001993c0: 7374 6572 3a20 6465 7669 6365 5f6e 616d  ster: device_nam
│ │ │ -001993d0: 650a 2020 6661 696c 6564 5f77 6865 6e3a  e.  failed_when:
│ │ │ -001993e0: 2064 6576 6963 655f 6e61 6d65 2e72 6320   device_name.rc 
│ │ │ -001993f0: 2667 743b 2031 0a20 2063 6861 6e67 6564  > 1.  changed
│ │ │ -00199400: 5f77 6865 6e3a 2066 616c 7365 0a20 2063  _when: false.  c
│ │ │ -00199410: 6865 636b 5f6d 6f64 653a 2066 616c 7365  heck_mode: false
│ │ │ -00199420: 0a20 2077 6865 6e3a 0a20 202d 2028 206e  .  when:.  - ( n
│ │ │ -00199430: 6f74 2028 2022 6b65 726e 656c 2220 696e  ot ( "kernel" in
│ │ │ -00199440: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -00199450: 6163 6b61 6765 7320 616e 6420 2262 6f6f  ackages and "boo
│ │ │ -00199460: 7463 2220 696e 2061 6e73 6962 6c65 5f66  tc" in ansible_f
│ │ │ -00199470: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ -00199480: 2020 616e 6420 6e6f 7420 226f 7065 6e73    and not "opens
│ │ │ -00199490: 6869 6674 2d6b 7562 656c 6574 2220 696e  hift-kubelet" in
│ │ │ -001994a0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -001994b0: 6163 6b61 6765 7320 616e 6420 226f 7374  ackages and "ost
│ │ │ -001994c0: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ -001994d0: 7072 6f63 5f63 6d64 6c69 6e65 0a20 2020  proc_cmdline.   
│ │ │ -001994e0: 2029 2061 6e64 206e 6f74 2028 2061 6e73   ) and not ( ans
│ │ │ -001994f0: 6962 6c65 5f76 6972 7475 616c 697a 6174  ible_virtualizat
│ │ │ -00199500: 696f 6e5f 7479 7065 2069 6e20 5b22 646f  ion_type in ["do
│ │ │ -00199510: 636b 6572 222c 2022 6c78 6322 2c20 226f  cker", "lxc", "o
│ │ │ -00199520: 7065 6e76 7a22 2c20 2270 6f64 6d61 6e22  penvz", "podman"
│ │ │ -00199530: 2c0a 2020 2020 2263 6f6e 7461 696e 6572  ,.    "container
│ │ │ -00199540: 225d 2029 2029 0a20 202d 2027 222f 686f  "] ) ).  - '"/ho
│ │ │ -00199550: 6d65 2220 696e 2061 6e73 6962 6c65 5f6d  me" in ansible_m
│ │ │ -00199560: 6f75 6e74 7320 7c20 6d61 7028 6174 7472  ounts | map(attr
│ │ │ -00199570: 6962 7574 653d 226d 6f75 6e74 2229 207c  ibute="mount") |
│ │ │ -00199580: 206c 6973 7427 0a20 2074 6167 733a 0a20   list'.  tags:. 
│ │ │ -00199590: 202d 2063 6f6e 6669 6775 7265 5f73 7472   - configure_str
│ │ │ -001995a0: 6174 6567 790a 2020 2d20 6869 6768 5f64  ategy.  - high_d
│ │ │ -001995b0: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ -001995c0: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ -001995d0: 206d 6f75 6e74 5f6f 7074 696f 6e5f 686f   mount_option_ho
│ │ │ -001995e0: 6d65 5f6e 6f64 6576 0a20 202d 206e 6f5f  me_nodev.  - no_
│ │ │ -001995f0: 7265 626f 6f74 5f6e 6565 6465 640a 2020  reboot_needed.  
│ │ │ -00199600: 2d20 756e 6b6e 6f77 6e5f 7365 7665 7269  - unknown_severi
│ │ │ -00199610: 7479 0a0a 2d20 6e61 6d65 3a20 2741 6464  ty..- name: 'Add
│ │ │ -00199620: 206e 6f64 6576 204f 7074 696f 6e20 746f   nodev Option to
│ │ │ -00199630: 202f 686f 6d65 3a20 4372 6561 7465 206d   /home: Create m
│ │ │ -00199640: 6f75 6e74 5f69 6e66 6f20 6469 6374 696f  ount_info dictio
│ │ │ -00199650: 6e61 7279 2076 6172 6961 626c 6527 0a20  nary variable'. 
│ │ │ -00199660: 2073 6574 5f66 6163 743a 0a20 2020 206d   set_fact:.    m
│ │ │ -00199670: 6f75 6e74 5f69 6e66 6f3a 2027 7b7b 206d  ount_info: '{{ m
│ │ │ -00199680: 6f75 6e74 5f69 6e66 6f7c 6465 6661 756c  ount_info|defaul
│ │ │ -00199690: 7428 7b7d 297c 636f 6d62 696e 6528 7b69  t({})|combine({i
│ │ │ -001996a0: 7465 6d2e 303a 2069 7465 6d2e 317d 2920  tem.0: item.1}) 
│ │ │ -001996b0: 7d7d 270a 2020 7769 7468 5f74 6f67 6574  }}'.  with_toget
│ │ │ -001996c0: 6865 723a 0a20 202d 2027 7b7b 2064 6576  her:.  - '{{ dev
│ │ │ -001996d0: 6963 655f 6e61 6d65 2e73 7464 6f75 745f  ice_name.stdout_
│ │ │ -001996e0: 6c69 6e65 735b 305d 2e73 706c 6974 2829  lines[0].split()
│ │ │ -001996f0: 207c 206d 6170 2827 276c 6f77 6572 2727   | map(''lower''
│ │ │ -00199700: 2920 7c20 6c69 7374 207d 7d27 0a20 202d  ) | list }}'.  -
│ │ │ -00199710: 2027 7b7b 2064 6576 6963 655f 6e61 6d65   '{{ device_name
│ │ │ -00199720: 2e73 7464 6f75 745f 6c69 6e65 735b 315d  .stdout_lines[1]
│ │ │ -00199730: 2e73 706c 6974 2829 207c 206c 6973 7420  .split() | list 
│ │ │ -00199740: 7d7d 270a 2020 7768 656e 3a0a 2020 2d20  }}'.  when:.  - 
│ │ │ -00199750: 2820 6e6f 7420 2820 226b 6572 6e65 6c22  ( not ( "kernel"
│ │ │ -00199760: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -00199770: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ -00199780: 626f 6f74 6322 2069 6e20 616e 7369 626c  bootc" in ansibl
│ │ │ -00199790: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001997a0: 0a20 2020 2061 6e64 206e 6f74 2022 6f70  .    and not "op
│ │ │ -001997b0: 656e 7368 6966 742d 6b75 6265 6c65 7422  enshift-kubelet"
│ │ │ -001997c0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001997d0: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ -001997e0: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ -001997f0: 6c65 5f70 726f 635f 636d 646c 696e 650a  le_proc_cmdline.
│ │ │ -00199800: 2020 2020 2920 616e 6420 6e6f 7420 2820      ) and not ( 
│ │ │ -00199810: 616e 7369 626c 655f 7669 7274 7561 6c69  ansible_virtuali
│ │ │ -00199820: 7a61 7469 6f6e 5f74 7970 6520 696e 205b  zation_type in [
│ │ │ -00199830: 2264 6f63 6b65 7222 2c20 226c 7863 222c  "docker", "lxc",
│ │ │ -00199840: 2022 6f70 656e 767a 222c 2022 706f 646d   "openvz", "podm
│ │ │ -00199850: 616e 222c 0a20 2020 2022 636f 6e74 6169  an",.    "contai
│ │ │ -00199860: 6e65 7222 5d20 2920 290a 2020 2d20 2722  ner"] ) ).  - '"
│ │ │ -00199870: 2f68 6f6d 6522 2069 6e20 616e 7369 626c  /home" in ansibl
│ │ │ -00199880: 655f 6d6f 756e 7473 207c 206d 6170 2861  e_mounts | map(a
│ │ │ -00199890: 7474 7269 6275 7465 3d22 6d6f 756e 7422  ttribute="mount"
│ │ │ -001998a0: 2920 7c20 6c69 7374 270a 2020 2d20 6465  ) | list'.  - de
│ │ │ -001998b0: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ -001998c0: 2069 7320 6465 6669 6e65 6420 616e 6420   is defined and 
│ │ │ -001998d0: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ -001998e0: 7574 5f6c 696e 6573 2069 7320 6465 6669  ut_lines is defi
│ │ │ -001998f0: 6e65 640a 2020 2d20 2864 6576 6963 655f  ned.  - (device_
│ │ │ -00199900: 6e61 6d65 2e73 7464 6f75 7420 7c20 6c65  name.stdout | le
│ │ │ -00199910: 6e67 7468 2026 6774 3b20 3029 0a20 2074  ngth > 0).  t
│ │ │ -00199920: 6167 733a 0a20 202d 2063 6f6e 6669 6775  ags:.  - configu
│ │ │ -00199930: 7265 5f73 7472 6174 6567 790a 2020 2d20  re_strategy.  - 
│ │ │ -00199940: 6869 6768 5f64 6973 7275 7074 696f 6e0a  high_disruption.
│ │ │ -00199950: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ -00199960: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074  ty.  - mount_opt
│ │ │ -00199970: 696f 6e5f 686f 6d65 5f6e 6f64 6576 0a20  ion_home_nodev. 
│ │ │ -00199980: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ -00199990: 6465 640a 2020 2d20 756e 6b6e 6f77 6e5f  ded.  - unknown_
│ │ │ -001999a0: 7365 7665 7269 7479 0a0a 2d20 6e61 6d65  severity..- name
│ │ │ -001999b0: 3a20 2741 6464 206e 6f64 6576 204f 7074  : 'Add nodev Opt
│ │ │ -001999c0: 696f 6e20 746f 202f 686f 6d65 3a20 4966  ion to /home: If
│ │ │ -001999d0: 202f 686f 6d65 206e 6f74 206d 6f75 6e74   /home not mount
│ │ │ -001999e0: 6564 2c20 6372 6166 7420 6d6f 756e 745f  ed, craft mount_
│ │ │ -001999f0: 696e 666f 206d 616e 7561 6c6c 7927 0a20  info manually'. 
│ │ │ -00199a00: 2073 6574 5f66 6163 743a 0a20 2020 206d   set_fact:.    m
│ │ │ -00199a10: 6f75 6e74 5f69 6e66 6f3a 2027 7b7b 206d  ount_info: '{{ m
│ │ │ -00199a20: 6f75 6e74 5f69 6e66 6f7c 6465 6661 756c  ount_info|defaul
│ │ │ -00199a30: 7428 7b7d 297c 636f 6d62 696e 6528 7b69  t({})|combine({i
│ │ │ -00199a40: 7465 6d2e 303a 2069 7465 6d2e 317d 2920  tem.0: item.1}) 
│ │ │ -00199a50: 7d7d 270a 2020 7769 7468 5f74 6f67 6574  }}'.  with_toget
│ │ │ -00199a60: 6865 723a 0a20 202d 202d 2074 6172 6765  her:.  - - targe
│ │ │ -00199a70: 740a 2020 2020 2d20 736f 7572 6365 0a20  t.    - source. 
│ │ │ -00199a80: 2020 202d 2066 7374 7970 650a 2020 2020     - fstype.    
│ │ │ -00199a90: 2d20 6f70 7469 6f6e 730a 2020 2d20 2d20  - options.  - - 
│ │ │ -00199aa0: 2f68 6f6d 650a 2020 2020 2d20 2727 0a20  /home.    - ''. 
│ │ │ -00199ab0: 2020 202d 2027 270a 2020 2020 2d20 6465     - ''.    - de
│ │ │ -00199ac0: 6661 756c 7473 0a20 2077 6865 6e3a 0a20  faults.  when:. 
│ │ │ -00199ad0: 202d 2028 206e 6f74 2028 2022 6b65 726e   - ( not ( "kern
│ │ │ -00199ae0: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ -00199af0: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ -00199b00: 6420 2262 6f6f 7463 2220 696e 2061 6e73  d "bootc" in ans
│ │ │ -00199b10: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -00199b20: 6765 730a 2020 2020 616e 6420 6e6f 7420  ges.    and not 
│ │ │ -00199b30: 226f 7065 6e73 6869 6674 2d6b 7562 656c  "openshift-kubel
│ │ │ -00199b40: 6574 2220 696e 2061 6e73 6962 6c65 5f66  et" in ansible_f
│ │ │ -00199b50: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ -00199b60: 6420 226f 7374 7265 6522 2069 6e20 616e  d "ostree" in an
│ │ │ -00199b70: 7369 626c 655f 7072 6f63 5f63 6d64 6c69  sible_proc_cmdli
│ │ │ -00199b80: 6e65 0a20 2020 2029 2061 6e64 206e 6f74  ne.    ) and not
│ │ │ -00199b90: 2028 2061 6e73 6962 6c65 5f76 6972 7475   ( ansible_virtu
│ │ │ -00199ba0: 616c 697a 6174 696f 6e5f 7479 7065 2069  alization_type i
│ │ │ -00199bb0: 6e20 5b22 646f 636b 6572 222c 2022 6c78  n ["docker", "lx
│ │ │ -00199bc0: 6322 2c20 226f 7065 6e76 7a22 2c20 2270  c", "openvz", "p
│ │ │ -00199bd0: 6f64 6d61 6e22 2c0a 2020 2020 2263 6f6e  odman",.    "con
│ │ │ -00199be0: 7461 696e 6572 225d 2029 2029 0a20 202d  tainer"] ) ).  -
│ │ │ -00199bf0: 2027 222f 686f 6d65 2220 696e 2061 6e73   '"/home" in ans
│ │ │ -00199c00: 6962 6c65 5f6d 6f75 6e74 7320 7c20 6d61  ible_mounts | ma
│ │ │ -00199c10: 7028 6174 7472 6962 7574 653d 226d 6f75  p(attribute="mou
│ │ │ -00199c20: 6e74 2229 207c 206c 6973 7427 0a20 202d  nt") | list'.  -
│ │ │ -00199c30: 2028 222d 2d66 7374 6162 2220 7c20 6c65   ("--fstab" | le
│ │ │ -00199c40: 6e67 7468 203d 3d20 3029 0a20 202d 2064  ngth == 0).  - d
│ │ │ -00199c50: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ -00199c60: 7420 6973 2064 6566 696e 6564 2061 6e64  t is defined and
│ │ │ -00199c70: 2064 6576 6963 655f 6e61 6d65 2e73 7464   device_name.std
│ │ │ -00199c80: 6f75 745f 6c69 6e65 7320 6973 2064 6566  out_lines is def
│ │ │ -00199c90: 696e 6564 0a20 202d 2028 6465 7669 6365  ined.  - (device
│ │ │ -00199ca0: 5f6e 616d 652e 7374 646f 7574 207c 206c  _name.stdout | l
│ │ │ -00199cb0: 656e 6774 6820 3d3d 2030 290a 2020 7461  ength == 0).  ta
│ │ │ -00199cc0: 6773 3a0a 2020 2d20 636f 6e66 6967 7572  gs:.  - configur
│ │ │ -00199cd0: 655f 7374 7261 7465 6779 0a20 202d 2068  e_strategy.  - h
│ │ │ -00199ce0: 6967 685f 6469 7372 7570 7469 6f6e 0a20  igh_disruption. 
│ │ │ -00199cf0: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ -00199d00: 790a 2020 2d20 6d6f 756e 745f 6f70 7469  y.  - mount_opti
│ │ │ -00199d10: 6f6e 5f68 6f6d 655f 6e6f 6465 760a 2020  on_home_nodev.  
│ │ │ -00199d20: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ -00199d30: 6564 0a20 202d 2075 6e6b 6e6f 776e 5f73  ed.  - unknown_s
│ │ │ -00199d40: 6576 6572 6974 790a 0a2d 206e 616d 653a  everity..- name:
│ │ │ -00199d50: 2027 4164 6420 6e6f 6465 7620 4f70 7469   'Add nodev Opti
│ │ │ -00199d60: 6f6e 2074 6f20 2f68 6f6d 653a 204d 616b  on to /home: Mak
│ │ │ -00199d70: 6520 7375 7265 206e 6f64 6576 206f 7074  e sure nodev opt
│ │ │ -00199d80: 696f 6e20 6973 2070 6172 7420 6f66 2074  ion is part of t
│ │ │ -00199d90: 6865 2074 6f20 2f68 6f6d 650a 2020 2020  he to /home.    
│ │ │ -00199da0: 6f70 7469 6f6e 7327 0a20 2073 6574 5f66  options'.  set_f
│ │ │ -00199db0: 6163 743a 0a20 2020 206d 6f75 6e74 5f69  act:.    mount_i
│ │ │ -00199dc0: 6e66 6f3a 2027 7b7b 206d 6f75 6e74 5f69  nfo: '{{ mount_i
│ │ │ -00199dd0: 6e66 6f20 7c20 636f 6d62 696e 6528 207b  nfo | combine( {
│ │ │ -00199de0: 2727 6f70 7469 6f6e 7327 273a 2727 2727  ''options'':''''
│ │ │ -00199df0: 7e28 6d6f 756e 745f 696e 666f 2e6f 7074  ~(mount_info.opt
│ │ │ -00199e00: 696f 6e73 207c 0a20 2020 2020 2064 6566  ions |.      def
│ │ │ -00199e10: 6175 6c74 2827 2727 2729 297e 2827 272c  ault(''''))~('',
│ │ │ -00199e20: 2727 2069 6620 286d 6f75 6e74 5f69 6e66  '' if (mount_inf
│ │ │ -00199e30: 6f2e 6f70 7469 6f6e 7320 7c20 6465 6661  o.options | defa
│ │ │ -00199e40: 756c 7428 2727 2727 2929 2065 6c73 6520  ult('''')) else 
│ │ │ -00199e50: 2727 2727 297e 2727 6e6f 6465 7627 270a  '''')~''nodev''.
│ │ │ -00199e60: 2020 2020 2020 7d29 207d 7d27 0a20 2077        }) }}'.  w
│ │ │ -00199e70: 6865 6e3a 0a20 202d 2028 206e 6f74 2028  hen:.  - ( not (
│ │ │ -00199e80: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ -00199e90: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -00199ea0: 6765 7320 616e 6420 2262 6f6f 7463 2220  ges and "bootc" 
│ │ │ -00199eb0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -00199ec0: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ -00199ed0: 6420 6e6f 7420 226f 7065 6e73 6869 6674  d not "openshift
│ │ │ -00199ee0: 2d6b 7562 656c 6574 2220 696e 2061 6e73  -kubelet" in ans
│ │ │ -00199ef0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -00199f00: 6765 7320 616e 6420 226f 7374 7265 6522  ges and "ostree"
│ │ │ -00199f10: 2069 6e20 616e 7369 626c 655f 7072 6f63   in ansible_proc
│ │ │ -00199f20: 5f63 6d64 6c69 6e65 0a20 2020 2029 2061  _cmdline.    ) a
│ │ │ -00199f30: 6e64 206e 6f74 2028 2061 6e73 6962 6c65  nd not ( ansible
│ │ │ -00199f40: 5f76 6972 7475 616c 697a 6174 696f 6e5f  _virtualization_
│ │ │ -00199f50: 7479 7065 2069 6e20 5b22 646f 636b 6572  type in ["docker
│ │ │ -00199f60: 222c 2022 6c78 6322 2c20 226f 7065 6e76  ", "lxc", "openv
│ │ │ -00199f70: 7a22 2c20 2270 6f64 6d61 6e22 2c0a 2020  z", "podman",.  
│ │ │ -00199f80: 2020 2263 6f6e 7461 696e 6572 225d 2029    "container"] )
│ │ │ -00199f90: 2029 0a20 202d 2027 222f 686f 6d65 2220   ).  - '"/home" 
│ │ │ -00199fa0: 696e 2061 6e73 6962 6c65 5f6d 6f75 6e74  in ansible_mount
│ │ │ -00199fb0: 7320 7c20 6d61 7028 6174 7472 6962 7574  s | map(attribut
│ │ │ -00199fc0: 653d 226d 6f75 6e74 2229 207c 206c 6973  e="mount") | lis
│ │ │ -00199fd0: 7427 0a20 202d 206d 6f75 6e74 5f69 6e66  t'.  - mount_inf
│ │ │ -00199fe0: 6f20 6973 2064 6566 696e 6564 2061 6e64  o is defined and
│ │ │ -00199ff0: 2022 6e6f 6465 7622 206e 6f74 2069 6e20   "nodev" not in 
│ │ │ -0019a000: 286d 6f75 6e74 5f69 6e66 6f2e 6f70 7469  (mount_info.opti
│ │ │ -0019a010: 6f6e 7320 7c20 6465 6661 756c 7428 2727  ons | default(''
│ │ │ -0019a020: 2929 0a20 2074 6167 733a 0a20 202d 2063  )).  tags:.  - c
│ │ │ -0019a030: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ -0019a040: 790a 2020 2d20 6869 6768 5f64 6973 7275  y.  - high_disru
│ │ │ -0019a050: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f  ption.  - low_co
│ │ │ -0019a060: 6d70 6c65 7869 7479 0a20 202d 206d 6f75  mplexity.  - mou
│ │ │ -0019a070: 6e74 5f6f 7074 696f 6e5f 686f 6d65 5f6e  nt_option_home_n
│ │ │ -0019a080: 6f64 6576 0a20 202d 206e 6f5f 7265 626f  odev.  - no_rebo
│ │ │ -0019a090: 6f74 5f6e 6565 6465 640a 2020 2d20 756e  ot_needed.  - un
│ │ │ -0019a0a0: 6b6e 6f77 6e5f 7365 7665 7269 7479 0a0a  known_severity..
│ │ │ -0019a0b0: 2d20 6e61 6d65 3a20 2741 6464 206e 6f64  - name: 'Add nod
│ │ │ -0019a0c0: 6576 204f 7074 696f 6e20 746f 202f 686f  ev Option to /ho
│ │ │ -0019a0d0: 6d65 3a20 456e 7375 7265 202f 686f 6d65  me: Ensure /home
│ │ │ -0019a0e0: 2069 7320 6d6f 756e 7465 6420 7769 7468   is mounted with
│ │ │ -0019a0f0: 206e 6f64 6576 206f 7074 696f 6e27 0a20   nodev option'. 
│ │ │ -0019a100: 2061 6e73 6962 6c65 2e70 6f73 6978 2e6d   ansible.posix.m
│ │ │ -0019a110: 6f75 6e74 3a0a 2020 2020 7061 7468 3a20  ount:.    path: 
│ │ │ -0019a120: 2f68 6f6d 650a 2020 2020 7372 633a 2027  /home.    src: '
│ │ │ -0019a130: 7b7b 206d 6f75 6e74 5f69 6e66 6f2e 736f  {{ mount_info.so
│ │ │ -0019a140: 7572 6365 207c 2064 6566 6175 6c74 2827  urce | default('
│ │ │ -0019a150: 2727 2729 207d 7d27 0a20 2020 206f 7074  ''') }}'.    opt
│ │ │ -0019a160: 733a 2027 7b7b 206d 6f75 6e74 5f69 6e66  s: '{{ mount_inf
│ │ │ -0019a170: 6f2e 6f70 7469 6f6e 7320 7c20 6465 6661  o.options | defa
│ │ │ -0019a180: 756c 7428 2727 2727 2920 7d7d 270a 2020  ult('''') }}'.  
│ │ │ -0019a190: 2020 7374 6174 653a 206d 6f75 6e74 6564    state: mounted
│ │ │ -0019a1a0: 0a20 2020 2066 7374 7970 653a 2027 7b7b  .    fstype: '{{
│ │ │ -0019a1b0: 206d 6f75 6e74 5f69 6e66 6f2e 6673 7479   mount_info.fsty
│ │ │ -0019a1c0: 7065 207c 2064 6566 6175 6c74 2827 2727  pe | default('''
│ │ │ -0019a1d0: 2729 207d 7d27 0a20 2072 6567 6973 7465  ') }}'.  registe
│ │ │ -0019a1e0: 723a 206d 6f75 6e74 5f72 6573 756c 740a  r: mount_result.
│ │ │ -0019a1f0: 2020 6661 696c 6564 5f77 6865 6e3a 0a20    failed_when:. 
│ │ │ -0019a200: 202d 206d 6f75 6e74 5f72 6573 756c 7420   - mount_result 
│ │ │ -0019a210: 6973 2066 6169 6c65 640a 2020 2d20 2727  is failed.  - ''
│ │ │ -0019a220: 2774 6172 6765 7420 6973 2062 7573 7927  'target is busy'
│ │ │ -0019a230: 2720 6e6f 7420 696e 2028 6d6f 756e 745f  ' not in (mount_
│ │ │ -0019a240: 7265 7375 6c74 2e6d 7367 207c 2064 6566  result.msg | def
│ │ │ -0019a250: 6175 6c74 2827 2727 2729 2927 0a20 202d  ault(''''))'.  -
│ │ │ -0019a260: 2027 2727 616c 7265 6164 7920 6d6f 756e   '''already moun
│ │ │ -0019a270: 7465 6427 2720 6e6f 7420 696e 2028 6d6f  ted'' not in (mo
│ │ │ -0019a280: 756e 745f 7265 7375 6c74 2e6d 7367 207c  unt_result.msg |
│ │ │ -0019a290: 2064 6566 6175 6c74 2827 2727 2729 2927   default(''''))'
│ │ │ -0019a2a0: 0a20 2077 6865 6e3a 0a20 202d 2028 206e  .  when:.  - ( n
│ │ │ -0019a2b0: 6f74 2028 2022 6b65 726e 656c 2220 696e  ot ( "kernel" in
│ │ │ -0019a2c0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -0019a2d0: 6163 6b61 6765 7320 616e 6420 2262 6f6f  ackages and "boo
│ │ │ -0019a2e0: 7463 2220 696e 2061 6e73 6962 6c65 5f66  tc" in ansible_f
│ │ │ -0019a2f0: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ -0019a300: 2020 616e 6420 6e6f 7420 226f 7065 6e73    and not "opens
│ │ │ -0019a310: 6869 6674 2d6b 7562 656c 6574 2220 696e  hift-kubelet" in
│ │ │ -0019a320: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -0019a330: 6163 6b61 6765 7320 616e 6420 226f 7374  ackages and "ost
│ │ │ -0019a340: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ -0019a350: 7072 6f63 5f63 6d64 6c69 6e65 0a20 2020  proc_cmdline.   
│ │ │ -0019a360: 2029 2061 6e64 206e 6f74 2028 2061 6e73   ) and not ( ans
│ │ │ -0019a370: 6962 6c65 5f76 6972 7475 616c 697a 6174  ible_virtualizat
│ │ │ -0019a380: 696f 6e5f 7479 7065 2069 6e20 5b22 646f  ion_type in ["do
│ │ │ -0019a390: 636b 6572 222c 2022 6c78 6322 2c20 226f  cker", "lxc", "o
│ │ │ -0019a3a0: 7065 6e76 7a22 2c20 2270 6f64 6d61 6e22  penvz", "podman"
│ │ │ -0019a3b0: 2c0a 2020 2020 2263 6f6e 7461 696e 6572  ,.    "container
│ │ │ -0019a3c0: 225d 2029 2029 0a20 202d 2027 222f 686f  "] ) ).  - '"/ho
│ │ │ -0019a3d0: 6d65 2220 696e 2061 6e73 6962 6c65 5f6d  me" in ansible_m
│ │ │ -0019a3e0: 6f75 6e74 7320 7c20 6d61 7028 6174 7472  ounts | map(attr
│ │ │ -0019a3f0: 6962 7574 653d 226d 6f75 6e74 2229 207c  ibute="mount") |
│ │ │ -0019a400: 206c 6973 7427 0a20 202d 206d 6f75 6e74   list'.  - mount
│ │ │ -0019a410: 5f69 6e66 6f20 6973 2064 6566 696e 6564  _info is defined
│ │ │ -0019a420: 0a20 202d 2028 6465 7669 6365 5f6e 616d  .  - (device_nam
│ │ │ -0019a430: 652e 7374 646f 7574 2069 7320 6465 6669  e.stdout is defi
│ │ │ -0019a440: 6e65 6420 616e 6420 2864 6576 6963 655f  ned and (device_
│ │ │ -0019a450: 6e61 6d65 2e73 7464 6f75 7420 7c20 6c65  name.stdout | le
│ │ │ -0019a460: 6e67 7468 2026 6774 3b20 3029 2920 6f72  ngth > 0)) or
│ │ │ -0019a470: 2028 222d 2d66 7374 6162 220a 2020 2020   ("--fstab".    
│ │ │ -0019a480: 7c20 6c65 6e67 7468 203d 3d20 3029 0a20  | length == 0). 
│ │ │ -0019a490: 2074 6167 733a 0a20 202d 2063 6f6e 6669   tags:.  - confi
│ │ │ -0019a4a0: 6775 7265 5f73 7472 6174 6567 790a 2020  gure_strategy.  
│ │ │ -0019a4b0: 2d20 6869 6768 5f64 6973 7275 7074 696f  - high_disruptio
│ │ │ -0019a4c0: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65  n.  - low_comple
│ │ │ -0019a4d0: 7869 7479 0a20 202d 206d 6f75 6e74 5f6f  xity.  - mount_o
│ │ │ -0019a4e0: 7074 696f 6e5f 686f 6d65 5f6e 6f64 6576  ption_home_nodev
│ │ │ -0019a4f0: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ -0019a500: 6565 6465 640a 2020 2d20 756e 6b6e 6f77  eeded.  - unknow
│ │ │ -0019a510: 6e5f 7365 7665 7269 7479 0a3c 2f63 6f64  n_severity.
Remed │ │ │ -0019a5d0: 6961 7469 6f6e 2053 6865 6c6c 2073 6372 iation Shell scr │ │ │ -0019a5e0: 6970 7420 e287 b23c 2f61 3e3c 6272 3e3c ipt ...
< │ │ │ -0019a5f0: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -0019a600: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -0019a610: 7365 2220 6964 3d22 6964 3434 3222 3e3c se" id="id442">< │ │ │ -0019a620: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ -0019a630: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ -0019a640: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ -0019a650: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ -0019a660: 3e3c 7472 3e3c 7468 3e52 6562 6f6f 743a >Reboot: │ │ │ -0019a670: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ -0019a690: 3c70 7265 3e3c 636f 6465 3e23 2052 656d
# Rem
│ │ │ -0019a6a0: 6564 6961 7469 6f6e 2069 7320 6170 706c  ediation is appl
│ │ │ -0019a6b0: 6963 6162 6c65 206f 6e6c 7920 696e 2063  icable only in c
│ │ │ -0019a6c0: 6572 7461 696e 2070 6c61 7466 6f72 6d73  ertain platforms
│ │ │ -0019a6d0: 0a69 6620 2820 2120 2820 7b20 7270 6d20  .if ( ! ( { rpm 
│ │ │ -0019a6e0: 2d2d 7175 6965 7420 2d71 206b 6572 6e65  --quiet -q kerne
│ │ │ -0019a6f0: 6c20 3b7d 2026 616d 703b 2661 6d70 3b20  l ;} && 
│ │ │ -0019a700: 7b20 7270 6d20 2d2d 7175 6965 7420 2d71  { rpm --quiet -q
│ │ │ -0019a710: 2062 6f6f 7463 203b 7d20 2661 6d70 3b26   bootc ;} &&
│ │ │ -0019a720: 616d 703b 207b 2021 2072 706d 202d 2d71  amp; { ! rpm --q
│ │ │ -0019a730: 7569 6574 202d 7120 6f70 656e 7368 6966  uiet -q openshif
│ │ │ -0019a740: 742d 6b75 6265 6c65 7420 3b7d 2026 616d  t-kubelet ;} &am
│ │ │ -0019a750: 703b 2661 6d70 3b20 285b 202d 6620 2f72  p;& ([ -f /r
│ │ │ -0019a760: 756e 2f6f 7374 7265 652d 626f 6f74 6564  un/ostree-booted
│ │ │ -0019a770: 205d 207c 7c20 5b20 2d4c 202f 6f73 7472   ] || [ -L /ostr
│ │ │ -0019a780: 6565 205d 2920 2920 2661 6d70 3b26 616d  ee ]) ) &&am
│ │ │ -0019a790: 703b 2021 2028 205b 202d 6620 2f2e 646f  p; ! ( [ -f /.do
│ │ │ -0019a7a0: 636b 6572 656e 7620 5d20 7c7c 205b 202d  ckerenv ] || [ -
│ │ │ -0019a7b0: 6620 2f72 756e 2f2e 636f 6e74 6169 6e65  f /run/.containe
│ │ │ -0019a7c0: 7265 6e76 205d 2029 2029 2026 616d 703b  renv ] ) ) &
│ │ │ -0019a7d0: 2661 6d70 3b20 7b20 2820 6669 6e64 6d6e  & { ( findmn
│ │ │ -0019a7e0: 7420 2d2d 6b65 726e 656c 2022 2f68 6f6d  t --kernel "/hom
│ │ │ -0019a7f0: 6522 2026 6774 3b20 2f64 6576 2f6e 756c  e" > /dev/nul
│ │ │ -0019a800: 6c20 7c7c 2066 696e 646d 6e74 202d 2d66  l || findmnt --f
│ │ │ -0019a810: 7374 6162 2022 2f68 6f6d 6522 2026 6774  stab "/home" >
│ │ │ -0019a820: 3b20 2f64 6576 2f6e 756c 6c20 293b 207d  ; /dev/null ); }
│ │ │ -0019a830: 3b20 7468 656e 0a0a 6675 6e63 7469 6f6e  ; then..function
│ │ │ -0019a840: 2070 6572 666f 726d 5f72 656d 6564 6961   perform_remedia
│ │ │ -0019a850: 7469 6f6e 207b 0a0a 2020 2020 0a20 2020  tion {..    .   
│ │ │ -0019a860: 2020 2020 2023 2074 6865 206d 6f75 6e74       # the mount
│ │ │ -0019a870: 2070 6f69 6e74 202f 686f 6d65 2068 6173   point /home has
│ │ │ -0019a880: 2074 6f20 6265 2064 6566 696e 6564 2069   to be defined i
│ │ │ -0019a890: 6e20 2f65 7463 2f66 7374 6162 0a20 2020  n /etc/fstab.   
│ │ │ -0019a8a0: 2020 2020 2023 2062 6566 6f72 6520 7468       # before th
│ │ │ -0019a8b0: 6973 2072 656d 6564 6961 7469 6f6e 2063  is remediation c
│ │ │ -0019a8c0: 616e 2062 6520 6578 6563 7574 6564 2e20  an be executed. 
│ │ │ -0019a8d0: 496e 2063 6173 6520 6974 2069 7320 6e6f  In case it is no
│ │ │ -0019a8e0: 7420 6465 6669 6e65 642c 2074 6865 0a20  t defined, the. 
│ │ │ -0019a8f0: 2020 2020 2020 2023 2072 656d 6564 6961         # remedia
│ │ │ -0019a900: 7469 6f6e 2061 626f 7274 7320 616e 6420  tion aborts and 
│ │ │ -0019a910: 6e6f 2063 6861 6e67 6573 2072 6567 6172  no changes regar
│ │ │ -0019a920: 6469 6e67 2074 6865 206d 6f75 6e74 2070  ding the mount p
│ │ │ -0019a930: 6f69 6e74 2061 7265 2064 6f6e 652e 0a20  oint are done.. 
│ │ │ -0019a940: 2020 2020 2020 206d 6f75 6e74 5f70 6f69         mount_poi
│ │ │ -0019a950: 6e74 5f6d 6174 6368 5f72 6567 6578 703d  nt_match_regexp=
│ │ │ -0019a960: 2224 2870 7269 6e74 6620 225e 5b5b 3a73  "$(printf "^[[:s
│ │ │ -0019a970: 7061 6365 3a5d 5d2a 5b5e 235d 2e2a 5b5b  pace:]]*[^#].*[[
│ │ │ -0019a980: 3a73 7061 6365 3a5d 5d25 735b 5b3a 7370  :space:]]%s[[:sp
│ │ │ -0019a990: 6163 653a 5d5d 2220 222f 686f 6d65 2229  ace:]]" "/home")
│ │ │ -0019a9a0: 220a 0a20 2020 2067 7265 7020 2224 6d6f  "..    grep "$mo
│ │ │ -0019a9b0: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ -0019a9c0: 7265 6765 7870 2220 2d71 202f 6574 632f  regexp" -q /etc/
│ │ │ -0019a9d0: 6673 7461 6220 5c0a 2020 2020 2020 2020  fstab \.        
│ │ │ -0019a9e0: 7c7c 207b 2065 6368 6f20 2254 6865 206d  || { echo "The m
│ │ │ -0019a9f0: 6f75 6e74 2070 6f69 6e74 2027 2f68 6f6d  ount point '/hom
│ │ │ -0019aa00: 6527 2069 7320 6e6f 7420 6576 656e 2069  e' is not even i
│ │ │ -0019aa10: 6e20 2f65 7463 2f66 7374 6162 2c20 736f  n /etc/fstab, so
│ │ │ -0019aa20: 2077 6520 6361 6e27 7420 7365 7420 7570   we can't set up
│ │ │ -0019aa30: 206d 6f75 6e74 206f 7074 696f 6e73 2220   mount options" 
│ │ │ -0019aa40: 2667 743b 2661 6d70 3b32 3b0a 2020 2020  >&2;.    
│ │ │ -0019aa50: 2020 2020 2020 2020 2020 2020 6563 686f              echo
│ │ │ -0019aa60: 2022 4e6f 7420 7265 6d65 6469 6174 696e   "Not remediatin
│ │ │ -0019aa70: 672c 2062 6563 6175 7365 2074 6865 7265  g, because there
│ │ │ -0019aa80: 2069 7320 6e6f 2072 6563 6f72 6420 6f66   is no record of
│ │ │ -0019aa90: 202f 686f 6d65 2069 6e20 2f65 7463 2f66   /home in /etc/f
│ │ │ -0019aaa0: 7374 6162 2220 2667 743b 2661 6d70 3b32  stab" >&2
│ │ │ -0019aab0: 3b20 7265 7475 726e 2031 3b20 7d0a 2020  ; return 1; }.  
│ │ │ -0019aac0: 2020 0a0a 0a20 2020 206d 6f75 6e74 5f70    ...    mount_p
│ │ │ -0019aad0: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ -0019aae0: 703d 2224 2870 7269 6e74 6620 225e 5b5b  p="$(printf "^[[
│ │ │ -0019aaf0: 3a73 7061 6365 3a5d 5d2a 5b5e 235d 2e2a  :space:]]*[^#].*
│ │ │ -0019ab00: 5b5b 3a73 7061 6365 3a5d 5d25 735b 5b3a  [[:space:]]%s[[:
│ │ │ -0019ab10: 7370 6163 653a 5d5d 2220 2f68 6f6d 6529  space:]]" /home)
│ │ │ -0019ab20: 220a 0a20 2020 2023 2049 6620 7468 6520  "..    # If the 
│ │ │ -0019ab30: 6d6f 756e 7420 706f 696e 7420 6973 206e  mount point is n
│ │ │ -0019ab40: 6f74 2069 6e20 2f65 7463 2f66 7374 6162  ot in /etc/fstab
│ │ │ -0019ab50: 2c20 6765 7420 7072 6576 696f 7573 206d  , get previous m
│ │ │ -0019ab60: 6f75 6e74 206f 7074 696f 6e73 2066 726f  ount options fro
│ │ │ -0019ab70: 6d20 2f65 7463 2f6d 7461 620a 2020 2020  m /etc/mtab.    
│ │ │ -0019ab80: 6966 2021 2067 7265 7020 2d71 2022 246d  if ! grep -q "$m
│ │ │ -0019ab90: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ -0019aba0: 5f72 6567 6578 7022 202f 6574 632f 6673  _regexp" /etc/fs
│ │ │ -0019abb0: 7461 623b 2074 6865 6e0a 2020 2020 2020  tab; then.      
│ │ │ -0019abc0: 2020 2320 7275 6e74 696d 6520 6f70 7473    # runtime opts
│ │ │ -0019abd0: 2077 6974 686f 7574 2073 6f6d 6520 6175   without some au
│ │ │ -0019abe0: 746f 6d61 7469 6320 6b65 726e 656c 2f75  tomatic kernel/u
│ │ │ -0019abf0: 7365 7273 7061 6365 2d61 6464 6564 2064  serspace-added d
│ │ │ -0019ac00: 6566 6175 6c74 730a 2020 2020 2020 2020  efaults.        
│ │ │ -0019ac10: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ -0019ac20: 7074 733d 2428 6772 6570 2022 246d 6f75  pts=$(grep "$mou
│ │ │ -0019ac30: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ -0019ac40: 6567 6578 7022 202f 6574 632f 6d74 6162  egexp" /etc/mtab
│ │ │ -0019ac50: 207c 2068 6561 6420 2d31 207c 2020 6177   | head -1 |  aw
│ │ │ -0019ac60: 6b20 277b 7072 696e 7420 2434 7d27 205c  k '{print $4}' \
│ │ │ -0019ac70: 0a20 2020 2020 2020 2020 2020 2020 2020  .               
│ │ │ -0019ac80: 2020 2020 207c 2073 6564 202d 4520 2273       | sed -E "s
│ │ │ -0019ac90: 2f28 7277 7c64 6566 6175 6c74 737c 7365  /(rw|defaults|se
│ │ │ -0019aca0: 636c 6162 656c 7c6e 6f64 6576 2928 2c7c  clabel|nodev)(,|
│ │ │ -0019acb0: 2429 2f2f 673b 732f 2c24 2f2f 2229 0a20  $)//g;s/,$//"). 
│ │ │ -0019acc0: 2020 2020 2020 205b 2022 2470 7265 7669         [ "$previ
│ │ │ -0019acd0: 6f75 735f 6d6f 756e 745f 6f70 7473 2220  ous_mount_opts" 
│ │ │ -0019ace0: 5d20 2661 6d70 3b26 616d 703b 2070 7265  ] && pre
│ │ │ -0019acf0: 7669 6f75 735f 6d6f 756e 745f 6f70 7473  vious_mount_opts
│ │ │ -0019ad00: 2b3d 222c 220a 2020 2020 2020 2020 2320  +=",".        # 
│ │ │ -0019ad10: 496e 2069 736f 3936 3630 2066 696c 6573  In iso9660 files
│ │ │ -0019ad20: 7973 7465 6d73 206d 7461 6220 636f 756c  ystems mtab coul
│ │ │ -0019ad30: 6420 6465 7363 7269 6265 2061 2022 626c  d describe a "bl
│ │ │ -0019ad40: 6f63 6b73 697a 6522 2076 616c 7565 2c20  ocksize" value, 
│ │ │ -0019ad50: 7468 6973 2073 686f 756c 6420 6265 2072  this should be r
│ │ │ -0019ad60: 6566 6c65 6374 6564 2069 6e0a 2020 2020  eflected in.    
│ │ │ -0019ad70: 2020 2020 2320 6673 7461 6220 6173 2022      # fstab as "
│ │ │ -0019ad80: 626c 6f63 6b22 2e20 2054 6865 206e 6578  block".  The nex
│ │ │ -0019ad90: 7420 7661 7269 6162 6c65 2069 7320 746f  t variable is to
│ │ │ -0019ada0: 2073 6174 6973 6679 2073 6865 6c6c 6368   satisfy shellch
│ │ │ -0019adb0: 6563 6b20 5343 3230 3530 2e0a 2020 2020  eck SC2050..    
│ │ │ -0019adc0: 2020 2020 6673 5f74 7970 653d 2222 0a20      fs_type="". 
│ │ │ -0019add0: 2020 2020 2020 2069 6620 5b20 2022 2466         if [  "$f
│ │ │ -0019ade0: 735f 7479 7065 2220 3d3d 2022 6973 6f39  s_type" == "iso9
│ │ │ -0019adf0: 3636 3022 205d 203b 2074 6865 6e0a 2020  660" ] ; then.  
│ │ │ -0019ae00: 2020 2020 2020 2020 2020 7072 6576 696f            previo
│ │ │ -0019ae10: 7573 5f6d 6f75 6e74 5f6f 7074 733d 2428  us_mount_opts=$(
│ │ │ -0019ae20: 7365 6420 2773 2f62 6c6f 636b 7369 7a65  sed 's/blocksize
│ │ │ -0019ae30: 3d2f 626c 6f63 6b3d 2f27 2026 6c74 3b26  =/block=/' <&
│ │ │ -0019ae40: 6c74 3b26 6c74 3b20 2224 7072 6576 696f  lt;< "$previo
│ │ │ -0019ae50: 7573 5f6d 6f75 6e74 5f6f 7074 7322 290a  us_mount_opts").
│ │ │ -0019ae60: 2020 2020 2020 2020 6669 0a20 2020 2020          fi.     
│ │ │ -0019ae70: 2020 2065 6368 6f20 2220 2f68 6f6d 6520     echo " /home 
│ │ │ -0019ae80: 2064 6566 6175 6c74 732c 247b 7072 6576   defaults,${prev
│ │ │ -0019ae90: 696f 7573 5f6d 6f75 6e74 5f6f 7074 737d  ious_mount_opts}
│ │ │ -0019aea0: 6e6f 6465 7620 3020 3022 2026 6774 3b26  nodev 0 0" >&
│ │ │ -0019aeb0: 6774 3b20 2f65 7463 2f66 7374 6162 0a20  gt; /etc/fstab. 
│ │ │ -0019aec0: 2020 2023 2049 6620 7468 6520 6d6f 756e     # If the moun
│ │ │ -0019aed0: 745f 6f70 7420 6f70 7469 6f6e 2069 7320  t_opt option is 
│ │ │ -0019aee0: 6e6f 7420 616c 7265 6164 7920 696e 2074  not already in t
│ │ │ -0019aef0: 6865 206d 6f75 6e74 2070 6f69 6e74 2773  he mount point's
│ │ │ -0019af00: 202f 6574 632f 6673 7461 6220 656e 7472   /etc/fstab entr
│ │ │ -0019af10: 792c 2061 6464 2069 740a 2020 2020 656c  y, add it.    el
│ │ │ -0019af20: 6966 2021 2067 7265 7020 2224 6d6f 756e  if ! grep "$moun
│ │ │ -0019af30: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ -0019af40: 6765 7870 2220 2f65 7463 2f66 7374 6162  gexp" /etc/fstab
│ │ │ -0019af50: 207c 2067 7265 7020 2d71 2022 6e6f 6465   | grep -q "node
│ │ │ -0019af60: 7622 3b20 7468 656e 0a20 2020 2020 2020  v"; then.       
│ │ │ -0019af70: 2070 7265 7669 6f75 735f 6d6f 756e 745f   previous_mount_
│ │ │ -0019af80: 6f70 7473 3d24 2867 7265 7020 2224 6d6f  opts=$(grep "$mo
│ │ │ -0019af90: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ -0019afa0: 7265 6765 7870 2220 2f65 7463 2f66 7374  regexp" /etc/fst
│ │ │ -0019afb0: 6162 207c 2061 776b 2027 7b70 7269 6e74  ab | awk '{print
│ │ │ -0019afc0: 2024 347d 2729 0a20 2020 2020 2020 2073   $4}').        s
│ │ │ -0019afd0: 6564 202d 6920 2273 7c5c 2824 7b6d 6f75  ed -i "s|\(${mou
│ │ │ -0019afe0: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ -0019aff0: 6567 6578 707d 2e2a 247b 7072 6576 696f  egexp}.*${previo
│ │ │ -0019b000: 7573 5f6d 6f75 6e74 5f6f 7074 737d 5c29  us_mount_opts}\)
│ │ │ -0019b010: 7c5c 312c 6e6f 6465 767c 2220 2f65 7463  |\1,nodev|" /etc
│ │ │ -0019b020: 2f66 7374 6162 0a20 2020 2066 690a 0a0a  /fstab.    fi...
│ │ │ -0019b030: 2020 2020 6966 206d 6b64 6972 202d 7020      if mkdir -p 
│ │ │ -0019b040: 222f 686f 6d65 223b 2074 6865 6e0a 2020  "/home"; then.  
│ │ │ -0019b050: 2020 2020 2020 6966 206d 6f75 6e74 706f        if mountpo
│ │ │ -0019b060: 696e 7420 2d71 2022 2f68 6f6d 6522 3b20  int -q "/home"; 
│ │ │ -0019b070: 7468 656e 0a20 2020 2020 2020 2020 2020  then.           
│ │ │ -0019b080: 206d 6f75 6e74 202d 6f20 7265 6d6f 756e   mount -o remoun
│ │ │ -0019b090: 7420 2d2d 7461 7267 6574 2022 2f68 6f6d  t --target "/hom
│ │ │ -0019b0a0: 6522 0a20 2020 2020 2020 2066 690a 2020  e".        fi.  
│ │ │ -0019b0b0: 2020 6669 0a7d 0a0a 7065 7266 6f72 6d5f    fi.}..perform_
│ │ │ -0019b0c0: 7265 6d65 6469 6174 696f 6e0a 0a65 6c73  remediation..els
│ │ │ -0019b0d0: 650a 2020 2020 2667 743b 2661 6d70 3b32  e.    >&2
│ │ │ -0019b0e0: 2065 6368 6f20 2752 656d 6564 6961 7469   echo 'Remediati
│ │ │ -0019b0f0: 6f6e 2069 7320 6e6f 7420 6170 706c 6963  on is not applic
│ │ │ -0019b100: 6162 6c65 2c20 6e6f 7468 696e 6720 7761  able, nothing wa
│ │ │ -0019b110: 7320 646f 6e65 270a 6669 0a3c 2f63 6f64  s done'.fi.
│ │ │ +00198fa0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 < │ │ │ +00198fe0: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +00198ff0: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false< │ │ │ +00199030: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
- name: Gather
│ │ │ +00199050: 2074 6865 2070 6163 6b61 6765 2066 6163   the package fac
│ │ │ +00199060: 7473 0a20 2070 6163 6b61 6765 5f66 6163  ts.  package_fac
│ │ │ +00199070: 7473 3a0a 2020 2020 6d61 6e61 6765 723a  ts:.    manager:
│ │ │ +00199080: 2061 7574 6f0a 2020 7461 6773 3a0a 2020   auto.  tags:.  
│ │ │ +00199090: 2d20 636f 6e66 6967 7572 655f 7374 7261  - configure_stra
│ │ │ +001990a0: 7465 6779 0a20 202d 2068 6967 685f 6469  tegy.  - high_di
│ │ │ +001990b0: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ +001990c0: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +001990d0: 6d6f 756e 745f 6f70 7469 6f6e 5f68 6f6d  mount_option_hom
│ │ │ +001990e0: 655f 6e6f 6465 760a 2020 2d20 6e6f 5f72  e_nodev.  - no_r
│ │ │ +001990f0: 6562 6f6f 745f 6e65 6564 6564 0a20 202d  eboot_needed.  -
│ │ │ +00199100: 2075 6e6b 6e6f 776e 5f73 6576 6572 6974   unknown_severit
│ │ │ +00199110: 790a 0a2d 206e 616d 653a 2027 4164 6420  y..- name: 'Add 
│ │ │ +00199120: 6e6f 6465 7620 4f70 7469 6f6e 2074 6f20  nodev Option to 
│ │ │ +00199130: 2f68 6f6d 653a 2043 6865 636b 2069 6e66  /home: Check inf
│ │ │ +00199140: 6f72 6d61 7469 6f6e 2061 7373 6f63 6961  ormation associa
│ │ │ +00199150: 7465 6420 746f 206d 6f75 6e74 706f 696e  ted to mountpoin
│ │ │ +00199160: 7427 0a20 2061 6e73 6962 6c65 2e62 7569  t'.  ansible.bui
│ │ │ +00199170: 6c74 696e 2e63 6f6d 6d61 6e64 3a20 6669  ltin.command: fi
│ │ │ +00199180: 6e64 6d6e 7420 2d2d 6673 7461 6220 272f  ndmnt --fstab '/
│ │ │ +00199190: 686f 6d65 270a 2020 7265 6769 7374 6572  home'.  register
│ │ │ +001991a0: 3a20 6465 7669 6365 5f6e 616d 650a 2020  : device_name.  
│ │ │ +001991b0: 6661 696c 6564 5f77 6865 6e3a 2064 6576  failed_when: dev
│ │ │ +001991c0: 6963 655f 6e61 6d65 2e72 6320 2667 743b  ice_name.rc >
│ │ │ +001991d0: 2031 0a20 2063 6861 6e67 6564 5f77 6865   1.  changed_whe
│ │ │ +001991e0: 6e3a 2066 616c 7365 0a20 2063 6865 636b  n: false.  check
│ │ │ +001991f0: 5f6d 6f64 653a 2066 616c 7365 0a20 2077  _mode: false.  w
│ │ │ +00199200: 6865 6e3a 0a20 202d 2028 206e 6f74 2028  hen:.  - ( not (
│ │ │ +00199210: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ +00199220: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +00199230: 6765 7320 616e 6420 2262 6f6f 7463 2220  ges and "bootc" 
│ │ │ +00199240: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +00199250: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ +00199260: 6420 6e6f 7420 226f 7065 6e73 6869 6674  d not "openshift
│ │ │ +00199270: 2d6b 7562 656c 6574 2220 696e 2061 6e73  -kubelet" in ans
│ │ │ +00199280: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +00199290: 6765 7320 616e 6420 226f 7374 7265 6522  ges and "ostree"
│ │ │ +001992a0: 2069 6e20 616e 7369 626c 655f 7072 6f63   in ansible_proc
│ │ │ +001992b0: 5f63 6d64 6c69 6e65 0a20 2020 2029 2061  _cmdline.    ) a
│ │ │ +001992c0: 6e64 206e 6f74 2028 2061 6e73 6962 6c65  nd not ( ansible
│ │ │ +001992d0: 5f76 6972 7475 616c 697a 6174 696f 6e5f  _virtualization_
│ │ │ +001992e0: 7479 7065 2069 6e20 5b22 646f 636b 6572  type in ["docker
│ │ │ +001992f0: 222c 2022 6c78 6322 2c20 226f 7065 6e76  ", "lxc", "openv
│ │ │ +00199300: 7a22 2c20 2270 6f64 6d61 6e22 2c0a 2020  z", "podman",.  
│ │ │ +00199310: 2020 2263 6f6e 7461 696e 6572 225d 2029    "container"] )
│ │ │ +00199320: 2029 0a20 202d 2027 222f 686f 6d65 2220   ).  - '"/home" 
│ │ │ +00199330: 696e 2061 6e73 6962 6c65 5f6d 6f75 6e74  in ansible_mount
│ │ │ +00199340: 7320 7c20 6d61 7028 6174 7472 6962 7574  s | map(attribut
│ │ │ +00199350: 653d 226d 6f75 6e74 2229 207c 206c 6973  e="mount") | lis
│ │ │ +00199360: 7427 0a20 2074 6167 733a 0a20 202d 2063  t'.  tags:.  - c
│ │ │ +00199370: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ +00199380: 790a 2020 2d20 6869 6768 5f64 6973 7275  y.  - high_disru
│ │ │ +00199390: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f  ption.  - low_co
│ │ │ +001993a0: 6d70 6c65 7869 7479 0a20 202d 206d 6f75  mplexity.  - mou
│ │ │ +001993b0: 6e74 5f6f 7074 696f 6e5f 686f 6d65 5f6e  nt_option_home_n
│ │ │ +001993c0: 6f64 6576 0a20 202d 206e 6f5f 7265 626f  odev.  - no_rebo
│ │ │ +001993d0: 6f74 5f6e 6565 6465 640a 2020 2d20 756e  ot_needed.  - un
│ │ │ +001993e0: 6b6e 6f77 6e5f 7365 7665 7269 7479 0a0a  known_severity..
│ │ │ +001993f0: 2d20 6e61 6d65 3a20 2741 6464 206e 6f64  - name: 'Add nod
│ │ │ +00199400: 6576 204f 7074 696f 6e20 746f 202f 686f  ev Option to /ho
│ │ │ +00199410: 6d65 3a20 4372 6561 7465 206d 6f75 6e74  me: Create mount
│ │ │ +00199420: 5f69 6e66 6f20 6469 6374 696f 6e61 7279  _info dictionary
│ │ │ +00199430: 2076 6172 6961 626c 6527 0a20 2073 6574   variable'.  set
│ │ │ +00199440: 5f66 6163 743a 0a20 2020 206d 6f75 6e74  _fact:.    mount
│ │ │ +00199450: 5f69 6e66 6f3a 2027 7b7b 206d 6f75 6e74  _info: '{{ mount
│ │ │ +00199460: 5f69 6e66 6f7c 6465 6661 756c 7428 7b7d  _info|default({}
│ │ │ +00199470: 297c 636f 6d62 696e 6528 7b69 7465 6d2e  )|combine({item.
│ │ │ +00199480: 303a 2069 7465 6d2e 317d 2920 7d7d 270a  0: item.1}) }}'.
│ │ │ +00199490: 2020 7769 7468 5f74 6f67 6574 6865 723a    with_together:
│ │ │ +001994a0: 0a20 202d 2027 7b7b 2064 6576 6963 655f  .  - '{{ device_
│ │ │ +001994b0: 6e61 6d65 2e73 7464 6f75 745f 6c69 6e65  name.stdout_line
│ │ │ +001994c0: 735b 305d 2e73 706c 6974 2829 207c 206d  s[0].split() | m
│ │ │ +001994d0: 6170 2827 276c 6f77 6572 2727 2920 7c20  ap(''lower'') | 
│ │ │ +001994e0: 6c69 7374 207d 7d27 0a20 202d 2027 7b7b  list }}'.  - '{{
│ │ │ +001994f0: 2064 6576 6963 655f 6e61 6d65 2e73 7464   device_name.std
│ │ │ +00199500: 6f75 745f 6c69 6e65 735b 315d 2e73 706c  out_lines[1].spl
│ │ │ +00199510: 6974 2829 207c 206c 6973 7420 7d7d 270a  it() | list }}'.
│ │ │ +00199520: 2020 7768 656e 3a0a 2020 2d20 2820 6e6f    when:.  - ( no
│ │ │ +00199530: 7420 2820 226b 6572 6e65 6c22 2069 6e20  t ( "kernel" in 
│ │ │ +00199540: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +00199550: 636b 6167 6573 2061 6e64 2022 626f 6f74  ckages and "boot
│ │ │ +00199560: 6322 2069 6e20 616e 7369 626c 655f 6661  c" in ansible_fa
│ │ │ +00199570: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ +00199580: 2061 6e64 206e 6f74 2022 6f70 656e 7368   and not "opensh
│ │ │ +00199590: 6966 742d 6b75 6265 6c65 7422 2069 6e20  ift-kubelet" in 
│ │ │ +001995a0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001995b0: 636b 6167 6573 2061 6e64 2022 6f73 7472  ckages and "ostr
│ │ │ +001995c0: 6565 2220 696e 2061 6e73 6962 6c65 5f70  ee" in ansible_p
│ │ │ +001995d0: 726f 635f 636d 646c 696e 650a 2020 2020  roc_cmdline.    
│ │ │ +001995e0: 2920 616e 6420 6e6f 7420 2820 616e 7369  ) and not ( ansi
│ │ │ +001995f0: 626c 655f 7669 7274 7561 6c69 7a61 7469  ble_virtualizati
│ │ │ +00199600: 6f6e 5f74 7970 6520 696e 205b 2264 6f63  on_type in ["doc
│ │ │ +00199610: 6b65 7222 2c20 226c 7863 222c 2022 6f70  ker", "lxc", "op
│ │ │ +00199620: 656e 767a 222c 2022 706f 646d 616e 222c  envz", "podman",
│ │ │ +00199630: 0a20 2020 2022 636f 6e74 6169 6e65 7222  .    "container"
│ │ │ +00199640: 5d20 2920 290a 2020 2d20 2722 2f68 6f6d  ] ) ).  - '"/hom
│ │ │ +00199650: 6522 2069 6e20 616e 7369 626c 655f 6d6f  e" in ansible_mo
│ │ │ +00199660: 756e 7473 207c 206d 6170 2861 7474 7269  unts | map(attri
│ │ │ +00199670: 6275 7465 3d22 6d6f 756e 7422 2920 7c20  bute="mount") | 
│ │ │ +00199680: 6c69 7374 270a 2020 2d20 6465 7669 6365  list'.  - device
│ │ │ +00199690: 5f6e 616d 652e 7374 646f 7574 2069 7320  _name.stdout is 
│ │ │ +001996a0: 6465 6669 6e65 6420 616e 6420 6465 7669  defined and devi
│ │ │ +001996b0: 6365 5f6e 616d 652e 7374 646f 7574 5f6c  ce_name.stdout_l
│ │ │ +001996c0: 696e 6573 2069 7320 6465 6669 6e65 640a  ines is defined.
│ │ │ +001996d0: 2020 2d20 2864 6576 6963 655f 6e61 6d65    - (device_name
│ │ │ +001996e0: 2e73 7464 6f75 7420 7c20 6c65 6e67 7468  .stdout | length
│ │ │ +001996f0: 2026 6774 3b20 3029 0a20 2074 6167 733a   > 0).  tags:
│ │ │ +00199700: 0a20 202d 2063 6f6e 6669 6775 7265 5f73  .  - configure_s
│ │ │ +00199710: 7472 6174 6567 790a 2020 2d20 6869 6768  trategy.  - high
│ │ │ +00199720: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +00199730: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ +00199740: 202d 206d 6f75 6e74 5f6f 7074 696f 6e5f   - mount_option_
│ │ │ +00199750: 686f 6d65 5f6e 6f64 6576 0a20 202d 206e  home_nodev.  - n
│ │ │ +00199760: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ +00199770: 2020 2d20 756e 6b6e 6f77 6e5f 7365 7665    - unknown_seve
│ │ │ +00199780: 7269 7479 0a0a 2d20 6e61 6d65 3a20 2741  rity..- name: 'A
│ │ │ +00199790: 6464 206e 6f64 6576 204f 7074 696f 6e20  dd nodev Option 
│ │ │ +001997a0: 746f 202f 686f 6d65 3a20 4966 202f 686f  to /home: If /ho
│ │ │ +001997b0: 6d65 206e 6f74 206d 6f75 6e74 6564 2c20  me not mounted, 
│ │ │ +001997c0: 6372 6166 7420 6d6f 756e 745f 696e 666f  craft mount_info
│ │ │ +001997d0: 206d 616e 7561 6c6c 7927 0a20 2073 6574   manually'.  set
│ │ │ +001997e0: 5f66 6163 743a 0a20 2020 206d 6f75 6e74  _fact:.    mount
│ │ │ +001997f0: 5f69 6e66 6f3a 2027 7b7b 206d 6f75 6e74  _info: '{{ mount
│ │ │ +00199800: 5f69 6e66 6f7c 6465 6661 756c 7428 7b7d  _info|default({}
│ │ │ +00199810: 297c 636f 6d62 696e 6528 7b69 7465 6d2e  )|combine({item.
│ │ │ +00199820: 303a 2069 7465 6d2e 317d 2920 7d7d 270a  0: item.1}) }}'.
│ │ │ +00199830: 2020 7769 7468 5f74 6f67 6574 6865 723a    with_together:
│ │ │ +00199840: 0a20 202d 202d 2074 6172 6765 740a 2020  .  - - target.  
│ │ │ +00199850: 2020 2d20 736f 7572 6365 0a20 2020 202d    - source.    -
│ │ │ +00199860: 2066 7374 7970 650a 2020 2020 2d20 6f70   fstype.    - op
│ │ │ +00199870: 7469 6f6e 730a 2020 2d20 2d20 2f68 6f6d  tions.  - - /hom
│ │ │ +00199880: 650a 2020 2020 2d20 2727 0a20 2020 202d  e.    - ''.    -
│ │ │ +00199890: 2027 270a 2020 2020 2d20 6465 6661 756c   ''.    - defaul
│ │ │ +001998a0: 7473 0a20 2077 6865 6e3a 0a20 202d 2028  ts.  when:.  - (
│ │ │ +001998b0: 206e 6f74 2028 2022 6b65 726e 656c 2220   not ( "kernel" 
│ │ │ +001998c0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001998d0: 2e70 6163 6b61 6765 7320 616e 6420 2262  .packages and "b
│ │ │ +001998e0: 6f6f 7463 2220 696e 2061 6e73 6962 6c65  ootc" in ansible
│ │ │ +001998f0: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ +00199900: 2020 2020 616e 6420 6e6f 7420 226f 7065      and not "ope
│ │ │ +00199910: 6e73 6869 6674 2d6b 7562 656c 6574 2220  nshift-kubelet" 
│ │ │ +00199920: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +00199930: 2e70 6163 6b61 6765 7320 616e 6420 226f  .packages and "o
│ │ │ +00199940: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ +00199950: 655f 7072 6f63 5f63 6d64 6c69 6e65 0a20  e_proc_cmdline. 
│ │ │ +00199960: 2020 2029 2061 6e64 206e 6f74 2028 2061     ) and not ( a
│ │ │ +00199970: 6e73 6962 6c65 5f76 6972 7475 616c 697a  nsible_virtualiz
│ │ │ +00199980: 6174 696f 6e5f 7479 7065 2069 6e20 5b22  ation_type in ["
│ │ │ +00199990: 646f 636b 6572 222c 2022 6c78 6322 2c20  docker", "lxc", 
│ │ │ +001999a0: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61  "openvz", "podma
│ │ │ +001999b0: 6e22 2c0a 2020 2020 2263 6f6e 7461 696e  n",.    "contain
│ │ │ +001999c0: 6572 225d 2029 2029 0a20 202d 2027 222f  er"] ) ).  - '"/
│ │ │ +001999d0: 686f 6d65 2220 696e 2061 6e73 6962 6c65  home" in ansible
│ │ │ +001999e0: 5f6d 6f75 6e74 7320 7c20 6d61 7028 6174  _mounts | map(at
│ │ │ +001999f0: 7472 6962 7574 653d 226d 6f75 6e74 2229  tribute="mount")
│ │ │ +00199a00: 207c 206c 6973 7427 0a20 202d 2028 222d   | list'.  - ("-
│ │ │ +00199a10: 2d66 7374 6162 2220 7c20 6c65 6e67 7468  -fstab" | length
│ │ │ +00199a20: 203d 3d20 3029 0a20 202d 2064 6576 6963   == 0).  - devic
│ │ │ +00199a30: 655f 6e61 6d65 2e73 7464 6f75 7420 6973  e_name.stdout is
│ │ │ +00199a40: 2064 6566 696e 6564 2061 6e64 2064 6576   defined and dev
│ │ │ +00199a50: 6963 655f 6e61 6d65 2e73 7464 6f75 745f  ice_name.stdout_
│ │ │ +00199a60: 6c69 6e65 7320 6973 2064 6566 696e 6564  lines is defined
│ │ │ +00199a70: 0a20 202d 2028 6465 7669 6365 5f6e 616d  .  - (device_nam
│ │ │ +00199a80: 652e 7374 646f 7574 207c 206c 656e 6774  e.stdout | lengt
│ │ │ +00199a90: 6820 3d3d 2030 290a 2020 7461 6773 3a0a  h == 0).  tags:.
│ │ │ +00199aa0: 2020 2d20 636f 6e66 6967 7572 655f 7374    - configure_st
│ │ │ +00199ab0: 7261 7465 6779 0a20 202d 2068 6967 685f  rategy.  - high_
│ │ │ +00199ac0: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ +00199ad0: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ +00199ae0: 2d20 6d6f 756e 745f 6f70 7469 6f6e 5f68  - mount_option_h
│ │ │ +00199af0: 6f6d 655f 6e6f 6465 760a 2020 2d20 6e6f  ome_nodev.  - no
│ │ │ +00199b00: 5f72 6562 6f6f 745f 6e65 6564 6564 0a20  _reboot_needed. 
│ │ │ +00199b10: 202d 2075 6e6b 6e6f 776e 5f73 6576 6572   - unknown_sever
│ │ │ +00199b20: 6974 790a 0a2d 206e 616d 653a 2027 4164  ity..- name: 'Ad
│ │ │ +00199b30: 6420 6e6f 6465 7620 4f70 7469 6f6e 2074  d nodev Option t
│ │ │ +00199b40: 6f20 2f68 6f6d 653a 204d 616b 6520 7375  o /home: Make su
│ │ │ +00199b50: 7265 206e 6f64 6576 206f 7074 696f 6e20  re nodev option 
│ │ │ +00199b60: 6973 2070 6172 7420 6f66 2074 6865 2074  is part of the t
│ │ │ +00199b70: 6f20 2f68 6f6d 650a 2020 2020 6f70 7469  o /home.    opti
│ │ │ +00199b80: 6f6e 7327 0a20 2073 6574 5f66 6163 743a  ons'.  set_fact:
│ │ │ +00199b90: 0a20 2020 206d 6f75 6e74 5f69 6e66 6f3a  .    mount_info:
│ │ │ +00199ba0: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f20   '{{ mount_info 
│ │ │ +00199bb0: 7c20 636f 6d62 696e 6528 207b 2727 6f70  | combine( {''op
│ │ │ +00199bc0: 7469 6f6e 7327 273a 2727 2727 7e28 6d6f  tions'':''''~(mo
│ │ │ +00199bd0: 756e 745f 696e 666f 2e6f 7074 696f 6e73  unt_info.options
│ │ │ +00199be0: 207c 0a20 2020 2020 2064 6566 6175 6c74   |.      default
│ │ │ +00199bf0: 2827 2727 2729 297e 2827 272c 2727 2069  (''''))~('','' i
│ │ │ +00199c00: 6620 286d 6f75 6e74 5f69 6e66 6f2e 6f70  f (mount_info.op
│ │ │ +00199c10: 7469 6f6e 7320 7c20 6465 6661 756c 7428  tions | default(
│ │ │ +00199c20: 2727 2727 2929 2065 6c73 6520 2727 2727  '''')) else ''''
│ │ │ +00199c30: 297e 2727 6e6f 6465 7627 270a 2020 2020  )~''nodev''.    
│ │ │ +00199c40: 2020 7d29 207d 7d27 0a20 2077 6865 6e3a    }) }}'.  when:
│ │ │ +00199c50: 0a20 202d 2028 206e 6f74 2028 2022 6b65  .  - ( not ( "ke
│ │ │ +00199c60: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ +00199c70: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ +00199c80: 616e 6420 2262 6f6f 7463 2220 696e 2061  and "bootc" in a
│ │ │ +00199c90: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +00199ca0: 6b61 6765 730a 2020 2020 616e 6420 6e6f  kages.    and no
│ │ │ +00199cb0: 7420 226f 7065 6e73 6869 6674 2d6b 7562  t "openshift-kub
│ │ │ +00199cc0: 656c 6574 2220 696e 2061 6e73 6962 6c65  elet" in ansible
│ │ │ +00199cd0: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ +00199ce0: 616e 6420 226f 7374 7265 6522 2069 6e20  and "ostree" in 
│ │ │ +00199cf0: 616e 7369 626c 655f 7072 6f63 5f63 6d64  ansible_proc_cmd
│ │ │ +00199d00: 6c69 6e65 0a20 2020 2029 2061 6e64 206e  line.    ) and n
│ │ │ +00199d10: 6f74 2028 2061 6e73 6962 6c65 5f76 6972  ot ( ansible_vir
│ │ │ +00199d20: 7475 616c 697a 6174 696f 6e5f 7479 7065  tualization_type
│ │ │ +00199d30: 2069 6e20 5b22 646f 636b 6572 222c 2022   in ["docker", "
│ │ │ +00199d40: 6c78 6322 2c20 226f 7065 6e76 7a22 2c20  lxc", "openvz", 
│ │ │ +00199d50: 2270 6f64 6d61 6e22 2c0a 2020 2020 2263  "podman",.    "c
│ │ │ +00199d60: 6f6e 7461 696e 6572 225d 2029 2029 0a20  ontainer"] ) ). 
│ │ │ +00199d70: 202d 2027 222f 686f 6d65 2220 696e 2061   - '"/home" in a
│ │ │ +00199d80: 6e73 6962 6c65 5f6d 6f75 6e74 7320 7c20  nsible_mounts | 
│ │ │ +00199d90: 6d61 7028 6174 7472 6962 7574 653d 226d  map(attribute="m
│ │ │ +00199da0: 6f75 6e74 2229 207c 206c 6973 7427 0a20  ount") | list'. 
│ │ │ +00199db0: 202d 206d 6f75 6e74 5f69 6e66 6f20 6973   - mount_info is
│ │ │ +00199dc0: 2064 6566 696e 6564 2061 6e64 2022 6e6f   defined and "no
│ │ │ +00199dd0: 6465 7622 206e 6f74 2069 6e20 286d 6f75  dev" not in (mou
│ │ │ +00199de0: 6e74 5f69 6e66 6f2e 6f70 7469 6f6e 7320  nt_info.options 
│ │ │ +00199df0: 7c20 6465 6661 756c 7428 2727 2929 0a20  | default('')). 
│ │ │ +00199e00: 2074 6167 733a 0a20 202d 2063 6f6e 6669   tags:.  - confi
│ │ │ +00199e10: 6775 7265 5f73 7472 6174 6567 790a 2020  gure_strategy.  
│ │ │ +00199e20: 2d20 6869 6768 5f64 6973 7275 7074 696f  - high_disruptio
│ │ │ +00199e30: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65  n.  - low_comple
│ │ │ +00199e40: 7869 7479 0a20 202d 206d 6f75 6e74 5f6f  xity.  - mount_o
│ │ │ +00199e50: 7074 696f 6e5f 686f 6d65 5f6e 6f64 6576  ption_home_nodev
│ │ │ +00199e60: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ +00199e70: 6565 6465 640a 2020 2d20 756e 6b6e 6f77  eeded.  - unknow
│ │ │ +00199e80: 6e5f 7365 7665 7269 7479 0a0a 2d20 6e61  n_severity..- na
│ │ │ +00199e90: 6d65 3a20 2741 6464 206e 6f64 6576 204f  me: 'Add nodev O
│ │ │ +00199ea0: 7074 696f 6e20 746f 202f 686f 6d65 3a20  ption to /home: 
│ │ │ +00199eb0: 456e 7375 7265 202f 686f 6d65 2069 7320  Ensure /home is 
│ │ │ +00199ec0: 6d6f 756e 7465 6420 7769 7468 206e 6f64  mounted with nod
│ │ │ +00199ed0: 6576 206f 7074 696f 6e27 0a20 2061 6e73  ev option'.  ans
│ │ │ +00199ee0: 6962 6c65 2e70 6f73 6978 2e6d 6f75 6e74  ible.posix.mount
│ │ │ +00199ef0: 3a0a 2020 2020 7061 7468 3a20 2f68 6f6d  :.    path: /hom
│ │ │ +00199f00: 650a 2020 2020 7372 633a 2027 7b7b 206d  e.    src: '{{ m
│ │ │ +00199f10: 6f75 6e74 5f69 6e66 6f2e 736f 7572 6365  ount_info.source
│ │ │ +00199f20: 207c 2064 6566 6175 6c74 2827 2727 2729   | default('''')
│ │ │ +00199f30: 207d 7d27 0a20 2020 206f 7074 733a 2027   }}'.    opts: '
│ │ │ +00199f40: 7b7b 206d 6f75 6e74 5f69 6e66 6f2e 6f70  {{ mount_info.op
│ │ │ +00199f50: 7469 6f6e 7320 7c20 6465 6661 756c 7428  tions | default(
│ │ │ +00199f60: 2727 2727 2920 7d7d 270a 2020 2020 7374  '''') }}'.    st
│ │ │ +00199f70: 6174 653a 206d 6f75 6e74 6564 0a20 2020  ate: mounted.   
│ │ │ +00199f80: 2066 7374 7970 653a 2027 7b7b 206d 6f75   fstype: '{{ mou
│ │ │ +00199f90: 6e74 5f69 6e66 6f2e 6673 7479 7065 207c  nt_info.fstype |
│ │ │ +00199fa0: 2064 6566 6175 6c74 2827 2727 2729 207d   default('''') }
│ │ │ +00199fb0: 7d27 0a20 2072 6567 6973 7465 723a 206d  }'.  register: m
│ │ │ +00199fc0: 6f75 6e74 5f72 6573 756c 740a 2020 6661  ount_result.  fa
│ │ │ +00199fd0: 696c 6564 5f77 6865 6e3a 0a20 202d 206d  iled_when:.  - m
│ │ │ +00199fe0: 6f75 6e74 5f72 6573 756c 7420 6973 2066  ount_result is f
│ │ │ +00199ff0: 6169 6c65 640a 2020 2d20 2727 2774 6172  ailed.  - '''tar
│ │ │ +0019a000: 6765 7420 6973 2062 7573 7927 2720 6e6f  get is busy'' no
│ │ │ +0019a010: 7420 696e 2028 6d6f 756e 745f 7265 7375  t in (mount_resu
│ │ │ +0019a020: 6c74 2e6d 7367 207c 2064 6566 6175 6c74  lt.msg | default
│ │ │ +0019a030: 2827 2727 2729 2927 0a20 202d 2027 2727  (''''))'.  - '''
│ │ │ +0019a040: 616c 7265 6164 7920 6d6f 756e 7465 6427  already mounted'
│ │ │ +0019a050: 2720 6e6f 7420 696e 2028 6d6f 756e 745f  ' not in (mount_
│ │ │ +0019a060: 7265 7375 6c74 2e6d 7367 207c 2064 6566  result.msg | def
│ │ │ +0019a070: 6175 6c74 2827 2727 2729 2927 0a20 2077  ault(''''))'.  w
│ │ │ +0019a080: 6865 6e3a 0a20 202d 2028 206e 6f74 2028  hen:.  - ( not (
│ │ │ +0019a090: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ +0019a0a0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +0019a0b0: 6765 7320 616e 6420 2262 6f6f 7463 2220  ges and "bootc" 
│ │ │ +0019a0c0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +0019a0d0: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ +0019a0e0: 6420 6e6f 7420 226f 7065 6e73 6869 6674  d not "openshift
│ │ │ +0019a0f0: 2d6b 7562 656c 6574 2220 696e 2061 6e73  -kubelet" in ans
│ │ │ +0019a100: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +0019a110: 6765 7320 616e 6420 226f 7374 7265 6522  ges and "ostree"
│ │ │ +0019a120: 2069 6e20 616e 7369 626c 655f 7072 6f63   in ansible_proc
│ │ │ +0019a130: 5f63 6d64 6c69 6e65 0a20 2020 2029 2061  _cmdline.    ) a
│ │ │ +0019a140: 6e64 206e 6f74 2028 2061 6e73 6962 6c65  nd not ( ansible
│ │ │ +0019a150: 5f76 6972 7475 616c 697a 6174 696f 6e5f  _virtualization_
│ │ │ +0019a160: 7479 7065 2069 6e20 5b22 646f 636b 6572  type in ["docker
│ │ │ +0019a170: 222c 2022 6c78 6322 2c20 226f 7065 6e76  ", "lxc", "openv
│ │ │ +0019a180: 7a22 2c20 2270 6f64 6d61 6e22 2c0a 2020  z", "podman",.  
│ │ │ +0019a190: 2020 2263 6f6e 7461 696e 6572 225d 2029    "container"] )
│ │ │ +0019a1a0: 2029 0a20 202d 2027 222f 686f 6d65 2220   ).  - '"/home" 
│ │ │ +0019a1b0: 696e 2061 6e73 6962 6c65 5f6d 6f75 6e74  in ansible_mount
│ │ │ +0019a1c0: 7320 7c20 6d61 7028 6174 7472 6962 7574  s | map(attribut
│ │ │ +0019a1d0: 653d 226d 6f75 6e74 2229 207c 206c 6973  e="mount") | lis
│ │ │ +0019a1e0: 7427 0a20 202d 206d 6f75 6e74 5f69 6e66  t'.  - mount_inf
│ │ │ +0019a1f0: 6f20 6973 2064 6566 696e 6564 0a20 202d  o is defined.  -
│ │ │ +0019a200: 2028 6465 7669 6365 5f6e 616d 652e 7374   (device_name.st
│ │ │ +0019a210: 646f 7574 2069 7320 6465 6669 6e65 6420  dout is defined 
│ │ │ +0019a220: 616e 6420 2864 6576 6963 655f 6e61 6d65  and (device_name
│ │ │ +0019a230: 2e73 7464 6f75 7420 7c20 6c65 6e67 7468  .stdout | length
│ │ │ +0019a240: 2026 6774 3b20 3029 2920 6f72 2028 222d   > 0)) or ("-
│ │ │ +0019a250: 2d66 7374 6162 220a 2020 2020 7c20 6c65  -fstab".    | le
│ │ │ +0019a260: 6e67 7468 203d 3d20 3029 0a20 2074 6167  ngth == 0).  tag
│ │ │ +0019a270: 733a 0a20 202d 2063 6f6e 6669 6775 7265  s:.  - configure
│ │ │ +0019a280: 5f73 7472 6174 6567 790a 2020 2d20 6869  _strategy.  - hi
│ │ │ +0019a290: 6768 5f64 6973 7275 7074 696f 6e0a 2020  gh_disruption.  
│ │ │ +0019a2a0: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ +0019a2b0: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f  .  - mount_optio
│ │ │ +0019a2c0: 6e5f 686f 6d65 5f6e 6f64 6576 0a20 202d  n_home_nodev.  -
│ │ │ +0019a2d0: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ +0019a2e0: 640a 2020 2d20 756e 6b6e 6f77 6e5f 7365  d.  - unknown_se
│ │ │ +0019a2f0: 7665 7269 7479 0a3c 2f63 6f64 653e 3c2f  verity.Remediati
│ │ │ +0019a3b0: 6f6e 2053 6865 6c6c 2073 6372 6970 7420  on Shell script 
│ │ │ +0019a3c0: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620  ...
< │ │ │ +0019a460: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
│ │ │ +00198f90: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +00198fc0: 696f 6e3a 3c2f 7468 3e3c 7464 3e68 6967 ion:hig │ │ │ +00198fd0: 683c 2f74 643e 3c2f 7472 3e3c 7472 3e3c h
Strate │ │ │ +00199010: 6779 3a3c 2f74 683e 3c74 643e 636f 6e66 gy:conf │ │ │ +00199020: 6967 7572 653c 2f74 643e 3c2f 7472 3e3c igure
Reboot:false
# Remedia
│ │ │ +0019a480: 7469 6f6e 2069 7320 6170 706c 6963 6162  tion is applicab
│ │ │ +0019a490: 6c65 206f 6e6c 7920 696e 2063 6572 7461  le only in certa
│ │ │ +0019a4a0: 696e 2070 6c61 7466 6f72 6d73 0a69 6620  in platforms.if 
│ │ │ +0019a4b0: 2820 2120 2820 7b20 7270 6d20 2d2d 7175  ( ! ( { rpm --qu
│ │ │ +0019a4c0: 6965 7420 2d71 206b 6572 6e65 6c20 3b7d  iet -q kernel ;}
│ │ │ +0019a4d0: 2026 616d 703b 2661 6d70 3b20 7b20 7270   && { rp
│ │ │ +0019a4e0: 6d20 2d2d 7175 6965 7420 2d71 2062 6f6f  m --quiet -q boo
│ │ │ +0019a4f0: 7463 203b 7d20 2661 6d70 3b26 616d 703b  tc ;} &&
│ │ │ +0019a500: 207b 2021 2072 706d 202d 2d71 7569 6574   { ! rpm --quiet
│ │ │ +0019a510: 202d 7120 6f70 656e 7368 6966 742d 6b75   -q openshift-ku
│ │ │ +0019a520: 6265 6c65 7420 3b7d 2026 616d 703b 2661  belet ;} &&a
│ │ │ +0019a530: 6d70 3b20 285b 202d 6620 2f72 756e 2f6f  mp; ([ -f /run/o
│ │ │ +0019a540: 7374 7265 652d 626f 6f74 6564 205d 207c  stree-booted ] |
│ │ │ +0019a550: 7c20 5b20 2d4c 202f 6f73 7472 6565 205d  | [ -L /ostree ]
│ │ │ +0019a560: 2920 2920 2661 6d70 3b26 616d 703b 2021  ) ) && !
│ │ │ +0019a570: 2028 205b 202d 6620 2f2e 646f 636b 6572   ( [ -f /.docker
│ │ │ +0019a580: 656e 7620 5d20 7c7c 205b 202d 6620 2f72  env ] || [ -f /r
│ │ │ +0019a590: 756e 2f2e 636f 6e74 6169 6e65 7265 6e76  un/.containerenv
│ │ │ +0019a5a0: 205d 2029 2029 2026 616d 703b 2661 6d70   ] ) ) &&
│ │ │ +0019a5b0: 3b20 7b20 2820 6669 6e64 6d6e 7420 2d2d  ; { ( findmnt --
│ │ │ +0019a5c0: 6b65 726e 656c 2022 2f68 6f6d 6522 2026  kernel "/home" &
│ │ │ +0019a5d0: 6774 3b20 2f64 6576 2f6e 756c 6c20 7c7c  gt; /dev/null ||
│ │ │ +0019a5e0: 2066 696e 646d 6e74 202d 2d66 7374 6162   findmnt --fstab
│ │ │ +0019a5f0: 2022 2f68 6f6d 6522 2026 6774 3b20 2f64   "/home" > /d
│ │ │ +0019a600: 6576 2f6e 756c 6c20 293b 207d 3b20 7468  ev/null ); }; th
│ │ │ +0019a610: 656e 0a0a 6675 6e63 7469 6f6e 2070 6572  en..function per
│ │ │ +0019a620: 666f 726d 5f72 656d 6564 6961 7469 6f6e  form_remediation
│ │ │ +0019a630: 207b 0a0a 2020 2020 0a20 2020 2020 2020   {..    .       
│ │ │ +0019a640: 2023 2074 6865 206d 6f75 6e74 2070 6f69   # the mount poi
│ │ │ +0019a650: 6e74 202f 686f 6d65 2068 6173 2074 6f20  nt /home has to 
│ │ │ +0019a660: 6265 2064 6566 696e 6564 2069 6e20 2f65  be defined in /e
│ │ │ +0019a670: 7463 2f66 7374 6162 0a20 2020 2020 2020  tc/fstab.       
│ │ │ +0019a680: 2023 2062 6566 6f72 6520 7468 6973 2072   # before this r
│ │ │ +0019a690: 656d 6564 6961 7469 6f6e 2063 616e 2062  emediation can b
│ │ │ +0019a6a0: 6520 6578 6563 7574 6564 2e20 496e 2063  e executed. In c
│ │ │ +0019a6b0: 6173 6520 6974 2069 7320 6e6f 7420 6465  ase it is not de
│ │ │ +0019a6c0: 6669 6e65 642c 2074 6865 0a20 2020 2020  fined, the.     
│ │ │ +0019a6d0: 2020 2023 2072 656d 6564 6961 7469 6f6e     # remediation
│ │ │ +0019a6e0: 2061 626f 7274 7320 616e 6420 6e6f 2063   aborts and no c
│ │ │ +0019a6f0: 6861 6e67 6573 2072 6567 6172 6469 6e67  hanges regarding
│ │ │ +0019a700: 2074 6865 206d 6f75 6e74 2070 6f69 6e74   the mount point
│ │ │ +0019a710: 2061 7265 2064 6f6e 652e 0a20 2020 2020   are done..     
│ │ │ +0019a720: 2020 206d 6f75 6e74 5f70 6f69 6e74 5f6d     mount_point_m
│ │ │ +0019a730: 6174 6368 5f72 6567 6578 703d 2224 2870  atch_regexp="$(p
│ │ │ +0019a740: 7269 6e74 6620 225e 5b5b 3a73 7061 6365  rintf "^[[:space
│ │ │ +0019a750: 3a5d 5d2a 5b5e 235d 2e2a 5b5b 3a73 7061  :]]*[^#].*[[:spa
│ │ │ +0019a760: 6365 3a5d 5d25 735b 5b3a 7370 6163 653a  ce:]]%s[[:space:
│ │ │ +0019a770: 5d5d 2220 222f 686f 6d65 2229 220a 0a20  ]]" "/home")".. 
│ │ │ +0019a780: 2020 2067 7265 7020 2224 6d6f 756e 745f     grep "$mount_
│ │ │ +0019a790: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ +0019a7a0: 7870 2220 2d71 202f 6574 632f 6673 7461  xp" -q /etc/fsta
│ │ │ +0019a7b0: 6220 5c0a 2020 2020 2020 2020 7c7c 207b  b \.        || {
│ │ │ +0019a7c0: 2065 6368 6f20 2254 6865 206d 6f75 6e74   echo "The mount
│ │ │ +0019a7d0: 2070 6f69 6e74 2027 2f68 6f6d 6527 2069   point '/home' i
│ │ │ +0019a7e0: 7320 6e6f 7420 6576 656e 2069 6e20 2f65  s not even in /e
│ │ │ +0019a7f0: 7463 2f66 7374 6162 2c20 736f 2077 6520  tc/fstab, so we 
│ │ │ +0019a800: 6361 6e27 7420 7365 7420 7570 206d 6f75  can't set up mou
│ │ │ +0019a810: 6e74 206f 7074 696f 6e73 2220 2667 743b  nt options" >
│ │ │ +0019a820: 2661 6d70 3b32 3b0a 2020 2020 2020 2020  &2;.        
│ │ │ +0019a830: 2020 2020 2020 2020 6563 686f 2022 4e6f          echo "No
│ │ │ +0019a840: 7420 7265 6d65 6469 6174 696e 672c 2062  t remediating, b
│ │ │ +0019a850: 6563 6175 7365 2074 6865 7265 2069 7320  ecause there is 
│ │ │ +0019a860: 6e6f 2072 6563 6f72 6420 6f66 202f 686f  no record of /ho
│ │ │ +0019a870: 6d65 2069 6e20 2f65 7463 2f66 7374 6162  me in /etc/fstab
│ │ │ +0019a880: 2220 2667 743b 2661 6d70 3b32 3b20 7265  " >&2; re
│ │ │ +0019a890: 7475 726e 2031 3b20 7d0a 2020 2020 0a0a  turn 1; }.    ..
│ │ │ +0019a8a0: 0a20 2020 206d 6f75 6e74 5f70 6f69 6e74  .    mount_point
│ │ │ +0019a8b0: 5f6d 6174 6368 5f72 6567 6578 703d 2224  _match_regexp="$
│ │ │ +0019a8c0: 2870 7269 6e74 6620 225e 5b5b 3a73 7061  (printf "^[[:spa
│ │ │ +0019a8d0: 6365 3a5d 5d2a 5b5e 235d 2e2a 5b5b 3a73  ce:]]*[^#].*[[:s
│ │ │ +0019a8e0: 7061 6365 3a5d 5d25 735b 5b3a 7370 6163  pace:]]%s[[:spac
│ │ │ +0019a8f0: 653a 5d5d 2220 2f68 6f6d 6529 220a 0a20  e:]]" /home)".. 
│ │ │ +0019a900: 2020 2023 2049 6620 7468 6520 6d6f 756e     # If the moun
│ │ │ +0019a910: 7420 706f 696e 7420 6973 206e 6f74 2069  t point is not i
│ │ │ +0019a920: 6e20 2f65 7463 2f66 7374 6162 2c20 6765  n /etc/fstab, ge
│ │ │ +0019a930: 7420 7072 6576 696f 7573 206d 6f75 6e74  t previous mount
│ │ │ +0019a940: 206f 7074 696f 6e73 2066 726f 6d20 2f65   options from /e
│ │ │ +0019a950: 7463 2f6d 7461 620a 2020 2020 6966 2021  tc/mtab.    if !
│ │ │ +0019a960: 2067 7265 7020 2d71 2022 246d 6f75 6e74   grep -q "$mount
│ │ │ +0019a970: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ +0019a980: 6578 7022 202f 6574 632f 6673 7461 623b  exp" /etc/fstab;
│ │ │ +0019a990: 2074 6865 6e0a 2020 2020 2020 2020 2320   then.        # 
│ │ │ +0019a9a0: 7275 6e74 696d 6520 6f70 7473 2077 6974  runtime opts wit
│ │ │ +0019a9b0: 686f 7574 2073 6f6d 6520 6175 746f 6d61  hout some automa
│ │ │ +0019a9c0: 7469 6320 6b65 726e 656c 2f75 7365 7273  tic kernel/users
│ │ │ +0019a9d0: 7061 6365 2d61 6464 6564 2064 6566 6175  pace-added defau
│ │ │ +0019a9e0: 6c74 730a 2020 2020 2020 2020 7072 6576  lts.        prev
│ │ │ +0019a9f0: 696f 7573 5f6d 6f75 6e74 5f6f 7074 733d  ious_mount_opts=
│ │ │ +0019aa00: 2428 6772 6570 2022 246d 6f75 6e74 5f70  $(grep "$mount_p
│ │ │ +0019aa10: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ +0019aa20: 7022 202f 6574 632f 6d74 6162 207c 2068  p" /etc/mtab | h
│ │ │ +0019aa30: 6561 6420 2d31 207c 2020 6177 6b20 277b  ead -1 |  awk '{
│ │ │ +0019aa40: 7072 696e 7420 2434 7d27 205c 0a20 2020  print $4}' \.   
│ │ │ +0019aa50: 2020 2020 2020 2020 2020 2020 2020 2020                  
│ │ │ +0019aa60: 207c 2073 6564 202d 4520 2273 2f28 7277   | sed -E "s/(rw
│ │ │ +0019aa70: 7c64 6566 6175 6c74 737c 7365 636c 6162  |defaults|seclab
│ │ │ +0019aa80: 656c 7c6e 6f64 6576 2928 2c7c 2429 2f2f  el|nodev)(,|$)//
│ │ │ +0019aa90: 673b 732f 2c24 2f2f 2229 0a20 2020 2020  g;s/,$//").     
│ │ │ +0019aaa0: 2020 205b 2022 2470 7265 7669 6f75 735f     [ "$previous_
│ │ │ +0019aab0: 6d6f 756e 745f 6f70 7473 2220 5d20 2661  mount_opts" ] &a
│ │ │ +0019aac0: 6d70 3b26 616d 703b 2070 7265 7669 6f75  mp;& previou
│ │ │ +0019aad0: 735f 6d6f 756e 745f 6f70 7473 2b3d 222c  s_mount_opts+=",
│ │ │ +0019aae0: 220a 2020 2020 2020 2020 2320 496e 2069  ".        # In i
│ │ │ +0019aaf0: 736f 3936 3630 2066 696c 6573 7973 7465  so9660 filesyste
│ │ │ +0019ab00: 6d73 206d 7461 6220 636f 756c 6420 6465  ms mtab could de
│ │ │ +0019ab10: 7363 7269 6265 2061 2022 626c 6f63 6b73  scribe a "blocks
│ │ │ +0019ab20: 697a 6522 2076 616c 7565 2c20 7468 6973  ize" value, this
│ │ │ +0019ab30: 2073 686f 756c 6420 6265 2072 6566 6c65   should be refle
│ │ │ +0019ab40: 6374 6564 2069 6e0a 2020 2020 2020 2020  cted in.        
│ │ │ +0019ab50: 2320 6673 7461 6220 6173 2022 626c 6f63  # fstab as "bloc
│ │ │ +0019ab60: 6b22 2e20 2054 6865 206e 6578 7420 7661  k".  The next va
│ │ │ +0019ab70: 7269 6162 6c65 2069 7320 746f 2073 6174  riable is to sat
│ │ │ +0019ab80: 6973 6679 2073 6865 6c6c 6368 6563 6b20  isfy shellcheck 
│ │ │ +0019ab90: 5343 3230 3530 2e0a 2020 2020 2020 2020  SC2050..        
│ │ │ +0019aba0: 6673 5f74 7970 653d 2222 0a20 2020 2020  fs_type="".     
│ │ │ +0019abb0: 2020 2069 6620 5b20 2022 2466 735f 7479     if [  "$fs_ty
│ │ │ +0019abc0: 7065 2220 3d3d 2022 6973 6f39 3636 3022  pe" == "iso9660"
│ │ │ +0019abd0: 205d 203b 2074 6865 6e0a 2020 2020 2020   ] ; then.      
│ │ │ +0019abe0: 2020 2020 2020 7072 6576 696f 7573 5f6d        previous_m
│ │ │ +0019abf0: 6f75 6e74 5f6f 7074 733d 2428 7365 6420  ount_opts=$(sed 
│ │ │ +0019ac00: 2773 2f62 6c6f 636b 7369 7a65 3d2f 626c  's/blocksize=/bl
│ │ │ +0019ac10: 6f63 6b3d 2f27 2026 6c74 3b26 6c74 3b26  ock=/' <<&
│ │ │ +0019ac20: 6c74 3b20 2224 7072 6576 696f 7573 5f6d  lt; "$previous_m
│ │ │ +0019ac30: 6f75 6e74 5f6f 7074 7322 290a 2020 2020  ount_opts").    
│ │ │ +0019ac40: 2020 2020 6669 0a20 2020 2020 2020 2065      fi.        e
│ │ │ +0019ac50: 6368 6f20 2220 2f68 6f6d 6520 2064 6566  cho " /home  def
│ │ │ +0019ac60: 6175 6c74 732c 247b 7072 6576 696f 7573  aults,${previous
│ │ │ +0019ac70: 5f6d 6f75 6e74 5f6f 7074 737d 6e6f 6465  _mount_opts}node
│ │ │ +0019ac80: 7620 3020 3022 2026 6774 3b26 6774 3b20  v 0 0" >> 
│ │ │ +0019ac90: 2f65 7463 2f66 7374 6162 0a20 2020 2023  /etc/fstab.    #
│ │ │ +0019aca0: 2049 6620 7468 6520 6d6f 756e 745f 6f70   If the mount_op
│ │ │ +0019acb0: 7420 6f70 7469 6f6e 2069 7320 6e6f 7420  t option is not 
│ │ │ +0019acc0: 616c 7265 6164 7920 696e 2074 6865 206d  already in the m
│ │ │ +0019acd0: 6f75 6e74 2070 6f69 6e74 2773 202f 6574  ount point's /et
│ │ │ +0019ace0: 632f 6673 7461 6220 656e 7472 792c 2061  c/fstab entry, a
│ │ │ +0019acf0: 6464 2069 740a 2020 2020 656c 6966 2021  dd it.    elif !
│ │ │ +0019ad00: 2067 7265 7020 2224 6d6f 756e 745f 706f   grep "$mount_po
│ │ │ +0019ad10: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ +0019ad20: 2220 2f65 7463 2f66 7374 6162 207c 2067  " /etc/fstab | g
│ │ │ +0019ad30: 7265 7020 2d71 2022 6e6f 6465 7622 3b20  rep -q "nodev"; 
│ │ │ +0019ad40: 7468 656e 0a20 2020 2020 2020 2070 7265  then.        pre
│ │ │ +0019ad50: 7669 6f75 735f 6d6f 756e 745f 6f70 7473  vious_mount_opts
│ │ │ +0019ad60: 3d24 2867 7265 7020 2224 6d6f 756e 745f  =$(grep "$mount_
│ │ │ +0019ad70: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ +0019ad80: 7870 2220 2f65 7463 2f66 7374 6162 207c  xp" /etc/fstab |
│ │ │ +0019ad90: 2061 776b 2027 7b70 7269 6e74 2024 347d   awk '{print $4}
│ │ │ +0019ada0: 2729 0a20 2020 2020 2020 2073 6564 202d  ').        sed -
│ │ │ +0019adb0: 6920 2273 7c5c 2824 7b6d 6f75 6e74 5f70  i "s|\(${mount_p
│ │ │ +0019adc0: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ +0019add0: 707d 2e2a 247b 7072 6576 696f 7573 5f6d  p}.*${previous_m
│ │ │ +0019ade0: 6f75 6e74 5f6f 7074 737d 5c29 7c5c 312c  ount_opts}\)|\1,
│ │ │ +0019adf0: 6e6f 6465 767c 2220 2f65 7463 2f66 7374  nodev|" /etc/fst
│ │ │ +0019ae00: 6162 0a20 2020 2066 690a 0a0a 2020 2020  ab.    fi...    
│ │ │ +0019ae10: 6966 206d 6b64 6972 202d 7020 222f 686f  if mkdir -p "/ho
│ │ │ +0019ae20: 6d65 223b 2074 6865 6e0a 2020 2020 2020  me"; then.      
│ │ │ +0019ae30: 2020 6966 206d 6f75 6e74 706f 696e 7420    if mountpoint 
│ │ │ +0019ae40: 2d71 2022 2f68 6f6d 6522 3b20 7468 656e  -q "/home"; then
│ │ │ +0019ae50: 0a20 2020 2020 2020 2020 2020 206d 6f75  .            mou
│ │ │ +0019ae60: 6e74 202d 6f20 7265 6d6f 756e 7420 2d2d  nt -o remount --
│ │ │ +0019ae70: 7461 7267 6574 2022 2f68 6f6d 6522 0a20  target "/home". 
│ │ │ +0019ae80: 2020 2020 2020 2066 690a 2020 2020 6669         fi.    fi
│ │ │ +0019ae90: 0a7d 0a0a 7065 7266 6f72 6d5f 7265 6d65  .}..perform_reme
│ │ │ +0019aea0: 6469 6174 696f 6e0a 0a65 6c73 650a 2020  diation..else.  
│ │ │ +0019aeb0: 2020 2667 743b 2661 6d70 3b32 2065 6368    >&2 ech
│ │ │ +0019aec0: 6f20 2752 656d 6564 6961 7469 6f6e 2069  o 'Remediation i
│ │ │ +0019aed0: 7320 6e6f 7420 6170 706c 6963 6162 6c65  s not applicable
│ │ │ +0019aee0: 2c20 6e6f 7468 696e 6720 7761 7320 646f  , nothing was do
│ │ │ +0019aef0: 6e65 270a 6669 0a3c 2f63 6f64 653e 3c2f  ne'.fi.
Remediati │ │ │ +0019afb0: 6f6e 2041 6e61 636f 6e64 6120 736e 6970 on Anaconda snip │ │ │ +0019afc0: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ +0019afd0: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +0019afe0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +0019aff0: 7365 2220 6964 3d22 6964 3434 3222 3e3c se" id="id442">< │ │ │ +0019b000: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +0019b010: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +0019b020: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +0019b030: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +0019b040: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Complex │ │ │ +0019b050: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ +0019b060: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Disruption:high< │ │ │ +0019b090: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>Rebo │ │ │ +0019b0a0: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +0019b0b0: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e< │ │ │ +0019b0c0: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:enable │ │ │ +0019b0e0: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072 .part /h │ │ │ +0019b100: 6f6d 6520 2d2d 6d6f 756e 746f 7074 696f ome --mountoptio │ │ │ +0019b110: 6e73 3d22 6e6f 6465 7622 0a3c 2f63 6f64 ns="nodev".
Remedi │ │ │ -0019c230: 6174 696f 6e20 416e 6163 6f6e 6461 2073 ation Anaconda s │ │ │ -0019c240: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ -0019c2d0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -0019c2e0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -0019c300: 3c2f 7468 3e3c 7464 3e68 6967 683c 2f74 high
R │ │ │ -0019c320: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -0019c330: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -0019c350: 2f74 683e 3c74 643e 656e 6162 6c65 3c2f /th>enable
│ │ │ -0019c370: 3c70 7265 3e3c 636f 6465 3e0a 7061 7274
.part
│ │ │ -0019c380: 202f 686f 6d65 202d 2d6d 6f75 6e74 6f70   /home --mountop
│ │ │ -0019c390: 7469 6f6e 733d 226e 6f73 7569 6422 0a3c  tions="nosuid".<
│ │ │ -0019c3a0: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ -0019c450: 656d 6564 6961 7469 6f6e 2041 6e73 6962 emediation Ansib │ │ │ -0019c460: 6c65 2073 6e69 7070 6574 20e2 87b2 3c2f le snippet ...
│ │ │ -0019c500: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 < │ │ │ -0019c540: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -0019c550: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false< │ │ │ -0019c590: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
- name: Gather
│ │ │ -0019c5b0: 2074 6865 2070 6163 6b61 6765 2066 6163   the package fac
│ │ │ -0019c5c0: 7473 0a20 2070 6163 6b61 6765 5f66 6163  ts.  package_fac
│ │ │ -0019c5d0: 7473 3a0a 2020 2020 6d61 6e61 6765 723a  ts:.    manager:
│ │ │ -0019c5e0: 2061 7574 6f0a 2020 7461 6773 3a0a 2020   auto.  tags:.  
│ │ │ -0019c5f0: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ -0019c600: 2d36 0a20 202d 204e 4953 542d 3830 302d  -6.  - NIST-800-
│ │ │ -0019c610: 3533 2d41 432d 3628 3129 0a20 202d 204e  53-AC-6(1).  - N
│ │ │ -0019c620: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ -0019c630: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ -0019c640: 3533 2d43 4d2d 3728 6129 0a20 202d 204e  53-CM-7(a).  - N
│ │ │ -0019c650: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ -0019c660: 6229 0a20 202d 204e 4953 542d 3830 302d  b).  - NIST-800-
│ │ │ -0019c670: 3533 2d4d 502d 370a 2020 2d20 636f 6e66  53-MP-7.  - conf
│ │ │ -0019c680: 6967 7572 655f 7374 7261 7465 6779 0a20  igure_strategy. 
│ │ │ -0019c690: 202d 2068 6967 685f 6469 7372 7570 7469   - high_disrupti
│ │ │ -0019c6a0: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c  on.  - low_compl
│ │ │ -0019c6b0: 6578 6974 790a 2020 2d20 6d65 6469 756d  exity.  - medium
│ │ │ -0019c6c0: 5f73 6576 6572 6974 790a 2020 2d20 6d6f  _severity.  - mo
│ │ │ -0019c6d0: 756e 745f 6f70 7469 6f6e 5f68 6f6d 655f  unt_option_home_
│ │ │ -0019c6e0: 6e6f 7375 6964 0a20 202d 206e 6f5f 7265  nosuid.  - no_re
│ │ │ -0019c6f0: 626f 6f74 5f6e 6565 6465 640a 0a2d 206e  boot_needed..- n
│ │ │ -0019c700: 616d 653a 2027 4164 6420 6e6f 7375 6964  ame: 'Add nosuid
│ │ │ -0019c710: 204f 7074 696f 6e20 746f 202f 686f 6d65   Option to /home
│ │ │ -0019c720: 3a20 4368 6563 6b20 696e 666f 726d 6174  : Check informat
│ │ │ -0019c730: 696f 6e20 6173 736f 6369 6174 6564 2074  ion associated t
│ │ │ -0019c740: 6f20 6d6f 756e 7470 6f69 6e74 270a 2020  o mountpoint'.  
│ │ │ -0019c750: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ -0019c760: 636f 6d6d 616e 643a 2066 696e 646d 6e74  command: findmnt
│ │ │ -0019c770: 202d 2d66 7374 6162 2027 2f68 6f6d 6527   --fstab '/home'
│ │ │ -0019c780: 0a20 2072 6567 6973 7465 723a 2064 6576  .  register: dev
│ │ │ -0019c790: 6963 655f 6e61 6d65 0a20 2066 6169 6c65  ice_name.  faile
│ │ │ -0019c7a0: 645f 7768 656e 3a20 6465 7669 6365 5f6e  d_when: device_n
│ │ │ -0019c7b0: 616d 652e 7263 2026 6774 3b20 310a 2020  ame.rc > 1.  
│ │ │ -0019c7c0: 6368 616e 6765 645f 7768 656e 3a20 6661  changed_when: fa
│ │ │ -0019c7d0: 6c73 650a 2020 6368 6563 6b5f 6d6f 6465  lse.  check_mode
│ │ │ -0019c7e0: 3a20 6661 6c73 650a 2020 7768 656e 3a0a  : false.  when:.
│ │ │ -0019c7f0: 2020 2d20 2820 6e6f 7420 2820 226b 6572    - ( not ( "ker
│ │ │ -0019c800: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ -0019c810: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ -0019c820: 6e64 2022 626f 6f74 6322 2069 6e20 616e  nd "bootc" in an
│ │ │ -0019c830: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -0019c840: 6167 6573 0a20 2020 2061 6e64 206e 6f74  ages.    and not
│ │ │ -0019c850: 2022 6f70 656e 7368 6966 742d 6b75 6265   "openshift-kube
│ │ │ -0019c860: 6c65 7422 2069 6e20 616e 7369 626c 655f  let" in ansible_
│ │ │ -0019c870: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ -0019c880: 6e64 2022 6f73 7472 6565 2220 696e 2061  nd "ostree" in a
│ │ │ -0019c890: 6e73 6962 6c65 5f70 726f 635f 636d 646c  nsible_proc_cmdl
│ │ │ -0019c8a0: 696e 650a 2020 2020 2920 616e 6420 6e6f  ine.    ) and no
│ │ │ -0019c8b0: 7420 2820 616e 7369 626c 655f 7669 7274  t ( ansible_virt
│ │ │ -0019c8c0: 7561 6c69 7a61 7469 6f6e 5f74 7970 6520  ualization_type 
│ │ │ -0019c8d0: 696e 205b 2264 6f63 6b65 7222 2c20 226c  in ["docker", "l
│ │ │ -0019c8e0: 7863 222c 2022 6f70 656e 767a 222c 2022  xc", "openvz", "
│ │ │ -0019c8f0: 706f 646d 616e 222c 0a20 2020 2022 636f  podman",.    "co
│ │ │ -0019c900: 6e74 6169 6e65 7222 5d20 2920 290a 2020  ntainer"] ) ).  
│ │ │ -0019c910: 2d20 2722 2f68 6f6d 6522 2069 6e20 616e  - '"/home" in an
│ │ │ -0019c920: 7369 626c 655f 6d6f 756e 7473 207c 206d  sible_mounts | m
│ │ │ -0019c930: 6170 2861 7474 7269 6275 7465 3d22 6d6f  ap(attribute="mo
│ │ │ -0019c940: 756e 7422 2920 7c20 6c69 7374 270a 2020  unt") | list'.  
│ │ │ -0019c950: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38  tags:.  - NIST-8
│ │ │ -0019c960: 3030 2d35 332d 4143 2d36 0a20 202d 204e  00-53-AC-6.  - N
│ │ │ -0019c970: 4953 542d 3830 302d 3533 2d41 432d 3628  IST-800-53-AC-6(
│ │ │ -0019c980: 3129 0a20 202d 204e 4953 542d 3830 302d  1).  - NIST-800-
│ │ │ -0019c990: 3533 2d43 4d2d 3628 6129 0a20 202d 204e  53-CM-6(a).  - N
│ │ │ -0019c9a0: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ -0019c9b0: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ -0019c9c0: 3533 2d43 4d2d 3728 6229 0a20 202d 204e  53-CM-7(b).  - N
│ │ │ -0019c9d0: 4953 542d 3830 302d 3533 2d4d 502d 370a  IST-800-53-MP-7.
│ │ │ -0019c9e0: 2020 2d20 636f 6e66 6967 7572 655f 7374    - configure_st
│ │ │ -0019c9f0: 7261 7465 6779 0a20 202d 2068 6967 685f  rategy.  - high_
│ │ │ -0019ca00: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ -0019ca10: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ -0019ca20: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ -0019ca30: 790a 2020 2d20 6d6f 756e 745f 6f70 7469  y.  - mount_opti
│ │ │ -0019ca40: 6f6e 5f68 6f6d 655f 6e6f 7375 6964 0a20  on_home_nosuid. 
│ │ │ -0019ca50: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ -0019ca60: 6465 640a 0a2d 206e 616d 653a 2027 4164  ded..- name: 'Ad
│ │ │ -0019ca70: 6420 6e6f 7375 6964 204f 7074 696f 6e20  d nosuid Option 
│ │ │ -0019ca80: 746f 202f 686f 6d65 3a20 4372 6561 7465  to /home: Create
│ │ │ -0019ca90: 206d 6f75 6e74 5f69 6e66 6f20 6469 6374   mount_info dict
│ │ │ -0019caa0: 696f 6e61 7279 2076 6172 6961 626c 6527  ionary variable'
│ │ │ -0019cab0: 0a20 2073 6574 5f66 6163 743a 0a20 2020  .  set_fact:.   
│ │ │ -0019cac0: 206d 6f75 6e74 5f69 6e66 6f3a 2027 7b7b   mount_info: '{{
│ │ │ -0019cad0: 206d 6f75 6e74 5f69 6e66 6f7c 6465 6661   mount_info|defa
│ │ │ -0019cae0: 756c 7428 7b7d 297c 636f 6d62 696e 6528  ult({})|combine(
│ │ │ -0019caf0: 7b69 7465 6d2e 303a 2069 7465 6d2e 317d  {item.0: item.1}
│ │ │ -0019cb00: 2920 7d7d 270a 2020 7769 7468 5f74 6f67  ) }}'.  with_tog
│ │ │ -0019cb10: 6574 6865 723a 0a20 202d 2027 7b7b 2064  ether:.  - '{{ d
│ │ │ -0019cb20: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ -0019cb30: 745f 6c69 6e65 735b 305d 2e73 706c 6974  t_lines[0].split
│ │ │ -0019cb40: 2829 207c 206d 6170 2827 276c 6f77 6572  () | map(''lower
│ │ │ -0019cb50: 2727 2920 7c20 6c69 7374 207d 7d27 0a20  '') | list }}'. 
│ │ │ -0019cb60: 202d 2027 7b7b 2064 6576 6963 655f 6e61   - '{{ device_na
│ │ │ -0019cb70: 6d65 2e73 7464 6f75 745f 6c69 6e65 735b  me.stdout_lines[
│ │ │ -0019cb80: 315d 2e73 706c 6974 2829 207c 206c 6973  1].split() | lis
│ │ │ -0019cb90: 7420 7d7d 270a 2020 7768 656e 3a0a 2020  t }}'.  when:.  
│ │ │ -0019cba0: 2d20 2820 6e6f 7420 2820 226b 6572 6e65  - ( not ( "kerne
│ │ │ -0019cbb0: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ -0019cbc0: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ -0019cbd0: 2022 626f 6f74 6322 2069 6e20 616e 7369   "bootc" in ansi
│ │ │ -0019cbe0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -0019cbf0: 6573 0a20 2020 2061 6e64 206e 6f74 2022  es.    and not "
│ │ │ -0019cc00: 6f70 656e 7368 6966 742d 6b75 6265 6c65  openshift-kubele
│ │ │ -0019cc10: 7422 2069 6e20 616e 7369 626c 655f 6661  t" in ansible_fa
│ │ │ -0019cc20: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ -0019cc30: 2022 6f73 7472 6565 2220 696e 2061 6e73   "ostree" in ans
│ │ │ -0019cc40: 6962 6c65 5f70 726f 635f 636d 646c 696e  ible_proc_cmdlin
│ │ │ -0019cc50: 650a 2020 2020 2920 616e 6420 6e6f 7420  e.    ) and not 
│ │ │ -0019cc60: 2820 616e 7369 626c 655f 7669 7274 7561  ( ansible_virtua
│ │ │ -0019cc70: 6c69 7a61 7469 6f6e 5f74 7970 6520 696e  lization_type in
│ │ │ -0019cc80: 205b 2264 6f63 6b65 7222 2c20 226c 7863   ["docker", "lxc
│ │ │ -0019cc90: 222c 2022 6f70 656e 767a 222c 2022 706f  ", "openvz", "po
│ │ │ -0019cca0: 646d 616e 222c 0a20 2020 2022 636f 6e74  dman",.    "cont
│ │ │ -0019ccb0: 6169 6e65 7222 5d20 2920 290a 2020 2d20  ainer"] ) ).  - 
│ │ │ -0019ccc0: 2722 2f68 6f6d 6522 2069 6e20 616e 7369  '"/home" in ansi
│ │ │ -0019ccd0: 626c 655f 6d6f 756e 7473 207c 206d 6170  ble_mounts | map
│ │ │ -0019cce0: 2861 7474 7269 6275 7465 3d22 6d6f 756e  (attribute="moun
│ │ │ -0019ccf0: 7422 2920 7c20 6c69 7374 270a 2020 2d20  t") | list'.  - 
│ │ │ -0019cd00: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ -0019cd10: 7574 2069 7320 6465 6669 6e65 6420 616e  ut is defined an
│ │ │ -0019cd20: 6420 6465 7669 6365 5f6e 616d 652e 7374  d device_name.st
│ │ │ -0019cd30: 646f 7574 5f6c 696e 6573 2069 7320 6465  dout_lines is de
│ │ │ -0019cd40: 6669 6e65 640a 2020 2d20 2864 6576 6963  fined.  - (devic
│ │ │ -0019cd50: 655f 6e61 6d65 2e73 7464 6f75 7420 7c20  e_name.stdout | 
│ │ │ -0019cd60: 6c65 6e67 7468 2026 6774 3b20 3029 0a20  length > 0). 
│ │ │ -0019cd70: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ -0019cd80: 3830 302d 3533 2d41 432d 360a 2020 2d20  800-53-AC-6.  - 
│ │ │ -0019cd90: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ -0019cda0: 2831 290a 2020 2d20 4e49 5354 2d38 3030  (1).  - NIST-800
│ │ │ -0019cdb0: 2d35 332d 434d 2d36 2861 290a 2020 2d20  -53-CM-6(a).  - 
│ │ │ -0019cdc0: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ -0019cdd0: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ -0019cde0: 2d35 332d 434d 2d37 2862 290a 2020 2d20  -53-CM-7(b).  - 
│ │ │ -0019cdf0: 4e49 5354 2d38 3030 2d35 332d 4d50 2d37  NIST-800-53-MP-7
│ │ │ -0019ce00: 0a20 202d 2063 6f6e 6669 6775 7265 5f73  .  - configure_s
│ │ │ -0019ce10: 7472 6174 6567 790a 2020 2d20 6869 6768  trategy.  - high
│ │ │ -0019ce20: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ -0019ce30: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ -0019ce40: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ -0019ce50: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074  ty.  - mount_opt
│ │ │ -0019ce60: 696f 6e5f 686f 6d65 5f6e 6f73 7569 640a  ion_home_nosuid.
│ │ │ -0019ce70: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ -0019ce80: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741  eded..- name: 'A
│ │ │ -0019ce90: 6464 206e 6f73 7569 6420 4f70 7469 6f6e  dd nosuid Option
│ │ │ -0019cea0: 2074 6f20 2f68 6f6d 653a 2049 6620 2f68   to /home: If /h
│ │ │ -0019ceb0: 6f6d 6520 6e6f 7420 6d6f 756e 7465 642c  ome not mounted,
│ │ │ -0019cec0: 2063 7261 6674 206d 6f75 6e74 5f69 6e66   craft mount_inf
│ │ │ -0019ced0: 6f20 6d61 6e75 616c 6c79 270a 2020 7365  o manually'.  se
│ │ │ -0019cee0: 745f 6661 6374 3a0a 2020 2020 6d6f 756e  t_fact:.    moun
│ │ │ -0019cef0: 745f 696e 666f 3a20 277b 7b20 6d6f 756e  t_info: '{{ moun
│ │ │ -0019cf00: 745f 696e 666f 7c64 6566 6175 6c74 287b  t_info|default({
│ │ │ -0019cf10: 7d29 7c63 6f6d 6269 6e65 287b 6974 656d  })|combine({item
│ │ │ -0019cf20: 2e30 3a20 6974 656d 2e31 7d29 207d 7d27  .0: item.1}) }}'
│ │ │ -0019cf30: 0a20 2077 6974 685f 746f 6765 7468 6572  .  with_together
│ │ │ -0019cf40: 3a0a 2020 2d20 2d20 7461 7267 6574 0a20  :.  - - target. 
│ │ │ -0019cf50: 2020 202d 2073 6f75 7263 650a 2020 2020     - source.    
│ │ │ -0019cf60: 2d20 6673 7479 7065 0a20 2020 202d 206f  - fstype.    - o
│ │ │ -0019cf70: 7074 696f 6e73 0a20 202d 202d 202f 686f  ptions.  - - /ho
│ │ │ -0019cf80: 6d65 0a20 2020 202d 2027 270a 2020 2020  me.    - ''.    
│ │ │ -0019cf90: 2d20 2727 0a20 2020 202d 2064 6566 6175  - ''.    - defau
│ │ │ -0019cfa0: 6c74 730a 2020 7768 656e 3a0a 2020 2d20  lts.  when:.  - 
│ │ │ -0019cfb0: 2820 6e6f 7420 2820 226b 6572 6e65 6c22  ( not ( "kernel"
│ │ │ -0019cfc0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -0019cfd0: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ -0019cfe0: 626f 6f74 6322 2069 6e20 616e 7369 626c  bootc" in ansibl
│ │ │ -0019cff0: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -0019d000: 0a20 2020 2061 6e64 206e 6f74 2022 6f70  .    and not "op
│ │ │ -0019d010: 656e 7368 6966 742d 6b75 6265 6c65 7422  enshift-kubelet"
│ │ │ -0019d020: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -0019d030: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ -0019d040: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ -0019d050: 6c65 5f70 726f 635f 636d 646c 696e 650a  le_proc_cmdline.
│ │ │ -0019d060: 2020 2020 2920 616e 6420 6e6f 7420 2820      ) and not ( 
│ │ │ -0019d070: 616e 7369 626c 655f 7669 7274 7561 6c69  ansible_virtuali
│ │ │ -0019d080: 7a61 7469 6f6e 5f74 7970 6520 696e 205b  zation_type in [
│ │ │ -0019d090: 2264 6f63 6b65 7222 2c20 226c 7863 222c  "docker", "lxc",
│ │ │ -0019d0a0: 2022 6f70 656e 767a 222c 2022 706f 646d   "openvz", "podm
│ │ │ -0019d0b0: 616e 222c 0a20 2020 2022 636f 6e74 6169  an",.    "contai
│ │ │ -0019d0c0: 6e65 7222 5d20 2920 290a 2020 2d20 2722  ner"] ) ).  - '"
│ │ │ -0019d0d0: 2f68 6f6d 6522 2069 6e20 616e 7369 626c  /home" in ansibl
│ │ │ -0019d0e0: 655f 6d6f 756e 7473 207c 206d 6170 2861  e_mounts | map(a
│ │ │ -0019d0f0: 7474 7269 6275 7465 3d22 6d6f 756e 7422  ttribute="mount"
│ │ │ -0019d100: 2920 7c20 6c69 7374 270a 2020 2d20 2822  ) | list'.  - ("
│ │ │ -0019d110: 2d2d 6673 7461 6222 207c 206c 656e 6774  --fstab" | lengt
│ │ │ -0019d120: 6820 3d3d 2030 290a 2020 2d20 6465 7669  h == 0).  - devi
│ │ │ -0019d130: 6365 5f6e 616d 652e 7374 646f 7574 2069  ce_name.stdout i
│ │ │ -0019d140: 7320 6465 6669 6e65 6420 616e 6420 6465  s defined and de
│ │ │ -0019d150: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ -0019d160: 5f6c 696e 6573 2069 7320 6465 6669 6e65  _lines is define
│ │ │ -0019d170: 640a 2020 2d20 2864 6576 6963 655f 6e61  d.  - (device_na
│ │ │ -0019d180: 6d65 2e73 7464 6f75 7420 7c20 6c65 6e67  me.stdout | leng
│ │ │ -0019d190: 7468 203d 3d20 3029 0a20 2074 6167 733a  th == 0).  tags:
│ │ │ -0019d1a0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -0019d1b0: 2d41 432d 360a 2020 2d20 4e49 5354 2d38  -AC-6.  - NIST-8
│ │ │ -0019d1c0: 3030 2d35 332d 4143 2d36 2831 290a 2020  00-53-AC-6(1).  
│ │ │ -0019d1d0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -0019d1e0: 2d36 2861 290a 2020 2d20 4e49 5354 2d38  -6(a).  - NIST-8
│ │ │ -0019d1f0: 3030 2d35 332d 434d 2d37 2861 290a 2020  00-53-CM-7(a).  
│ │ │ -0019d200: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -0019d210: 2d37 2862 290a 2020 2d20 4e49 5354 2d38  -7(b).  - NIST-8
│ │ │ -0019d220: 3030 2d35 332d 4d50 2d37 0a20 202d 2063  00-53-MP-7.  - c
│ │ │ -0019d230: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ -0019d240: 790a 2020 2d20 6869 6768 5f64 6973 7275  y.  - high_disru
│ │ │ -0019d250: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f  ption.  - low_co
│ │ │ -0019d260: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ -0019d270: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ -0019d280: 206d 6f75 6e74 5f6f 7074 696f 6e5f 686f   mount_option_ho
│ │ │ -0019d290: 6d65 5f6e 6f73 7569 640a 2020 2d20 6e6f  me_nosuid.  - no
│ │ │ -0019d2a0: 5f72 6562 6f6f 745f 6e65 6564 6564 0a0a  _reboot_needed..
│ │ │ -0019d2b0: 2d20 6e61 6d65 3a20 2741 6464 206e 6f73  - name: 'Add nos
│ │ │ -0019d2c0: 7569 6420 4f70 7469 6f6e 2074 6f20 2f68  uid Option to /h
│ │ │ -0019d2d0: 6f6d 653a 204d 616b 6520 7375 7265 206e  ome: Make sure n
│ │ │ -0019d2e0: 6f73 7569 6420 6f70 7469 6f6e 2069 7320  osuid option is 
│ │ │ -0019d2f0: 7061 7274 206f 6620 7468 6520 746f 202f  part of the to /
│ │ │ -0019d300: 686f 6d65 0a20 2020 206f 7074 696f 6e73  home.    options
│ │ │ -0019d310: 270a 2020 7365 745f 6661 6374 3a0a 2020  '.  set_fact:.  
│ │ │ -0019d320: 2020 6d6f 756e 745f 696e 666f 3a20 277b    mount_info: '{
│ │ │ -0019d330: 7b20 6d6f 756e 745f 696e 666f 207c 2063  { mount_info | c
│ │ │ -0019d340: 6f6d 6269 6e65 2820 7b27 276f 7074 696f  ombine( {''optio
│ │ │ -0019d350: 6e73 2727 3a27 2727 277e 286d 6f75 6e74  ns'':''''~(mount
│ │ │ -0019d360: 5f69 6e66 6f2e 6f70 7469 6f6e 7320 7c0a  _info.options |.
│ │ │ -0019d370: 2020 2020 2020 6465 6661 756c 7428 2727        default(''
│ │ │ -0019d380: 2727 2929 7e28 2727 2c27 2720 6966 2028  ''))~('','' if (
│ │ │ -0019d390: 6d6f 756e 745f 696e 666f 2e6f 7074 696f  mount_info.optio
│ │ │ -0019d3a0: 6e73 207c 2064 6566 6175 6c74 2827 2727  ns | default('''
│ │ │ -0019d3b0: 2729 2920 656c 7365 2027 2727 2729 7e27  ')) else '''')~'
│ │ │ -0019d3c0: 276e 6f73 7569 6427 270a 2020 2020 2020  'nosuid''.      
│ │ │ -0019d3d0: 7d29 207d 7d27 0a20 2077 6865 6e3a 0a20  }) }}'.  when:. 
│ │ │ -0019d3e0: 202d 2028 206e 6f74 2028 2022 6b65 726e   - ( not ( "kern
│ │ │ -0019d3f0: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ -0019d400: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ -0019d410: 6420 2262 6f6f 7463 2220 696e 2061 6e73  d "bootc" in ans
│ │ │ -0019d420: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -0019d430: 6765 730a 2020 2020 616e 6420 6e6f 7420  ges.    and not 
│ │ │ -0019d440: 226f 7065 6e73 6869 6674 2d6b 7562 656c  "openshift-kubel
│ │ │ -0019d450: 6574 2220 696e 2061 6e73 6962 6c65 5f66  et" in ansible_f
│ │ │ -0019d460: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ -0019d470: 6420 226f 7374 7265 6522 2069 6e20 616e  d "ostree" in an
│ │ │ -0019d480: 7369 626c 655f 7072 6f63 5f63 6d64 6c69  sible_proc_cmdli
│ │ │ -0019d490: 6e65 0a20 2020 2029 2061 6e64 206e 6f74  ne.    ) and not
│ │ │ -0019d4a0: 2028 2061 6e73 6962 6c65 5f76 6972 7475   ( ansible_virtu
│ │ │ -0019d4b0: 616c 697a 6174 696f 6e5f 7479 7065 2069  alization_type i
│ │ │ -0019d4c0: 6e20 5b22 646f 636b 6572 222c 2022 6c78  n ["docker", "lx
│ │ │ -0019d4d0: 6322 2c20 226f 7065 6e76 7a22 2c20 2270  c", "openvz", "p
│ │ │ -0019d4e0: 6f64 6d61 6e22 2c0a 2020 2020 2263 6f6e  odman",.    "con
│ │ │ -0019d4f0: 7461 696e 6572 225d 2029 2029 0a20 202d  tainer"] ) ).  -
│ │ │ -0019d500: 2027 222f 686f 6d65 2220 696e 2061 6e73   '"/home" in ans
│ │ │ -0019d510: 6962 6c65 5f6d 6f75 6e74 7320 7c20 6d61  ible_mounts | ma
│ │ │ -0019d520: 7028 6174 7472 6962 7574 653d 226d 6f75  p(attribute="mou
│ │ │ -0019d530: 6e74 2229 207c 206c 6973 7427 0a20 202d  nt") | list'.  -
│ │ │ -0019d540: 206d 6f75 6e74 5f69 6e66 6f20 6973 2064   mount_info is d
│ │ │ -0019d550: 6566 696e 6564 2061 6e64 2022 6e6f 7375  efined and "nosu
│ │ │ -0019d560: 6964 2220 6e6f 7420 696e 2028 6d6f 756e  id" not in (moun
│ │ │ -0019d570: 745f 696e 666f 2e6f 7074 696f 6e73 207c  t_info.options |
│ │ │ -0019d580: 2064 6566 6175 6c74 2827 2729 290a 2020   default('')).  
│ │ │ -0019d590: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38  tags:.  - NIST-8
│ │ │ -0019d5a0: 3030 2d35 332d 4143 2d36 0a20 202d 204e  00-53-AC-6.  - N
│ │ │ -0019d5b0: 4953 542d 3830 302d 3533 2d41 432d 3628  IST-800-53-AC-6(
│ │ │ -0019d5c0: 3129 0a20 202d 204e 4953 542d 3830 302d  1).  - NIST-800-
│ │ │ -0019d5d0: 3533 2d43 4d2d 3628 6129 0a20 202d 204e  53-CM-6(a).  - N
│ │ │ -0019d5e0: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ -0019d5f0: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ -0019d600: 3533 2d43 4d2d 3728 6229 0a20 202d 204e  53-CM-7(b).  - N
│ │ │ -0019d610: 4953 542d 3830 302d 3533 2d4d 502d 370a  IST-800-53-MP-7.
│ │ │ -0019d620: 2020 2d20 636f 6e66 6967 7572 655f 7374    - configure_st
│ │ │ -0019d630: 7261 7465 6779 0a20 202d 2068 6967 685f  rategy.  - high_
│ │ │ -0019d640: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ -0019d650: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ -0019d660: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ -0019d670: 790a 2020 2d20 6d6f 756e 745f 6f70 7469  y.  - mount_opti
│ │ │ -0019d680: 6f6e 5f68 6f6d 655f 6e6f 7375 6964 0a20  on_home_nosuid. 
│ │ │ -0019d690: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ -0019d6a0: 6465 640a 0a2d 206e 616d 653a 2027 4164  ded..- name: 'Ad
│ │ │ -0019d6b0: 6420 6e6f 7375 6964 204f 7074 696f 6e20  d nosuid Option 
│ │ │ -0019d6c0: 746f 202f 686f 6d65 3a20 456e 7375 7265  to /home: Ensure
│ │ │ -0019d6d0: 202f 686f 6d65 2069 7320 6d6f 756e 7465   /home is mounte
│ │ │ -0019d6e0: 6420 7769 7468 206e 6f73 7569 6420 6f70  d with nosuid op
│ │ │ -0019d6f0: 7469 6f6e 270a 2020 616e 7369 626c 652e  tion'.  ansible.
│ │ │ -0019d700: 706f 7369 782e 6d6f 756e 743a 0a20 2020  posix.mount:.   
│ │ │ -0019d710: 2070 6174 683a 202f 686f 6d65 0a20 2020   path: /home.   
│ │ │ -0019d720: 2073 7263 3a20 277b 7b20 6d6f 756e 745f   src: '{{ mount_
│ │ │ -0019d730: 696e 666f 2e73 6f75 7263 6520 7c20 6465  info.source | de
│ │ │ -0019d740: 6661 756c 7428 2727 2727 2920 7d7d 270a  fault('''') }}'.
│ │ │ -0019d750: 2020 2020 6f70 7473 3a20 277b 7b20 6d6f      opts: '{{ mo
│ │ │ -0019d760: 756e 745f 696e 666f 2e6f 7074 696f 6e73  unt_info.options
│ │ │ -0019d770: 207c 2064 6566 6175 6c74 2827 2727 2729   | default('''')
│ │ │ -0019d780: 207d 7d27 0a20 2020 2073 7461 7465 3a20   }}'.    state: 
│ │ │ -0019d790: 6d6f 756e 7465 640a 2020 2020 6673 7479  mounted.    fsty
│ │ │ -0019d7a0: 7065 3a20 277b 7b20 6d6f 756e 745f 696e  pe: '{{ mount_in
│ │ │ -0019d7b0: 666f 2e66 7374 7970 6520 7c20 6465 6661  fo.fstype | defa
│ │ │ -0019d7c0: 756c 7428 2727 2727 2920 7d7d 270a 2020  ult('''') }}'.  
│ │ │ -0019d7d0: 7265 6769 7374 6572 3a20 6d6f 756e 745f  register: mount_
│ │ │ -0019d7e0: 7265 7375 6c74 0a20 2066 6169 6c65 645f  result.  failed_
│ │ │ -0019d7f0: 7768 656e 3a0a 2020 2d20 6d6f 756e 745f  when:.  - mount_
│ │ │ -0019d800: 7265 7375 6c74 2069 7320 6661 696c 6564  result is failed
│ │ │ -0019d810: 0a20 202d 2027 2727 7461 7267 6574 2069  .  - '''target i
│ │ │ -0019d820: 7320 6275 7379 2727 206e 6f74 2069 6e20  s busy'' not in 
│ │ │ -0019d830: 286d 6f75 6e74 5f72 6573 756c 742e 6d73  (mount_result.ms
│ │ │ -0019d840: 6720 7c20 6465 6661 756c 7428 2727 2727  g | default(''''
│ │ │ -0019d850: 2929 270a 2020 2d20 2727 2761 6c72 6561  ))'.  - '''alrea
│ │ │ -0019d860: 6479 206d 6f75 6e74 6564 2727 206e 6f74  dy mounted'' not
│ │ │ -0019d870: 2069 6e20 286d 6f75 6e74 5f72 6573 756c   in (mount_resul
│ │ │ -0019d880: 742e 6d73 6720 7c20 6465 6661 756c 7428  t.msg | default(
│ │ │ -0019d890: 2727 2727 2929 270a 2020 7768 656e 3a0a  ''''))'.  when:.
│ │ │ -0019d8a0: 2020 2d20 2820 6e6f 7420 2820 226b 6572    - ( not ( "ker
│ │ │ -0019d8b0: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ -0019d8c0: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ -0019d8d0: 6e64 2022 626f 6f74 6322 2069 6e20 616e  nd "bootc" in an
│ │ │ -0019d8e0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -0019d8f0: 6167 6573 0a20 2020 2061 6e64 206e 6f74  ages.    and not
│ │ │ -0019d900: 2022 6f70 656e 7368 6966 742d 6b75 6265   "openshift-kube
│ │ │ -0019d910: 6c65 7422 2069 6e20 616e 7369 626c 655f  let" in ansible_
│ │ │ -0019d920: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ -0019d930: 6e64 2022 6f73 7472 6565 2220 696e 2061  nd "ostree" in a
│ │ │ -0019d940: 6e73 6962 6c65 5f70 726f 635f 636d 646c  nsible_proc_cmdl
│ │ │ -0019d950: 696e 650a 2020 2020 2920 616e 6420 6e6f  ine.    ) and no
│ │ │ -0019d960: 7420 2820 616e 7369 626c 655f 7669 7274  t ( ansible_virt
│ │ │ -0019d970: 7561 6c69 7a61 7469 6f6e 5f74 7970 6520  ualization_type 
│ │ │ -0019d980: 696e 205b 2264 6f63 6b65 7222 2c20 226c  in ["docker", "l
│ │ │ -0019d990: 7863 222c 2022 6f70 656e 767a 222c 2022  xc", "openvz", "
│ │ │ -0019d9a0: 706f 646d 616e 222c 0a20 2020 2022 636f  podman",.    "co
│ │ │ -0019d9b0: 6e74 6169 6e65 7222 5d20 2920 290a 2020  ntainer"] ) ).  
│ │ │ -0019d9c0: 2d20 2722 2f68 6f6d 6522 2069 6e20 616e  - '"/home" in an
│ │ │ -0019d9d0: 7369 626c 655f 6d6f 756e 7473 207c 206d  sible_mounts | m
│ │ │ -0019d9e0: 6170 2861 7474 7269 6275 7465 3d22 6d6f  ap(attribute="mo
│ │ │ -0019d9f0: 756e 7422 2920 7c20 6c69 7374 270a 2020  unt") | list'.  
│ │ │ -0019da00: 2d20 6d6f 756e 745f 696e 666f 2069 7320  - mount_info is 
│ │ │ -0019da10: 6465 6669 6e65 640a 2020 2d20 2864 6576  defined.  - (dev
│ │ │ -0019da20: 6963 655f 6e61 6d65 2e73 7464 6f75 7420  ice_name.stdout 
│ │ │ -0019da30: 6973 2064 6566 696e 6564 2061 6e64 2028  is defined and (
│ │ │ -0019da40: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ -0019da50: 7574 207c 206c 656e 6774 6820 2667 743b  ut | length >
│ │ │ -0019da60: 2030 2929 206f 7220 2822 2d2d 6673 7461   0)) or ("--fsta
│ │ │ -0019da70: 6222 0a20 2020 207c 206c 656e 6774 6820  b".    | length 
│ │ │ -0019da80: 3d3d 2030 290a 2020 7461 6773 3a0a 2020  == 0).  tags:.  
│ │ │ -0019da90: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ -0019daa0: 2d36 0a20 202d 204e 4953 542d 3830 302d  -6.  - NIST-800-
│ │ │ -0019dab0: 3533 2d41 432d 3628 3129 0a20 202d 204e  53-AC-6(1).  - N
│ │ │ -0019dac0: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ -0019dad0: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ -0019dae0: 3533 2d43 4d2d 3728 6129 0a20 202d 204e  53-CM-7(a).  - N
│ │ │ -0019daf0: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ -0019db00: 6229 0a20 202d 204e 4953 542d 3830 302d  b).  - NIST-800-
│ │ │ -0019db10: 3533 2d4d 502d 370a 2020 2d20 636f 6e66  53-MP-7.  - conf
│ │ │ -0019db20: 6967 7572 655f 7374 7261 7465 6779 0a20  igure_strategy. 
│ │ │ -0019db30: 202d 2068 6967 685f 6469 7372 7570 7469   - high_disrupti
│ │ │ -0019db40: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c  on.  - low_compl
│ │ │ -0019db50: 6578 6974 790a 2020 2d20 6d65 6469 756d  exity.  - medium
│ │ │ -0019db60: 5f73 6576 6572 6974 790a 2020 2d20 6d6f  _severity.  - mo
│ │ │ -0019db70: 756e 745f 6f70 7469 6f6e 5f68 6f6d 655f  unt_option_home_
│ │ │ -0019db80: 6e6f 7375 6964 0a20 202d 206e 6f5f 7265  nosuid.  - no_re
│ │ │ -0019db90: 626f 6f74 5f6e 6565 6465 640a 3c2f 636f  boot_needed.
< │ │ │ -0019dbb0: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ -0019dbc0: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ -0019dbd0: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ -0019dbe0: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ -0019dbf0: 6434 3436 2220 7461 6269 6e64 6578 3d22 d446" tabindex=" │ │ │ -0019dc00: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ -0019dc10: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ -0019dc20: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ -0019dc30: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ -0019dc40: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ -0019dc50: 6469 6174 696f 6e20 5368 656c 6c20 7363 diation Shell sc │ │ │ -0019dc60: 7269 7074 20e2 87b2 3c2f 613e 3c62 723e ript ...
│ │ │ -0019dc70: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -0019dca0: 3c74 6162 6c65 2063 6c61 7373 3d22 7461
│ │ │ -0019c4f0: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -0019c520: 696f 6e3a 3c2f 7468 3e3c 7464 3e68 6967 ion:hig │ │ │ -0019c530: 683c 2f74 643e 3c2f 7472 3e3c 7472 3e3c h
Strate │ │ │ -0019c570: 6779 3a3c 2f74 683e 3c74 643e 636f 6e66 gy:conf │ │ │ -0019c580: 6967 7572 653c 2f74 643e 3c2f 7472 3e3c igure
Reboot │ │ │ -0019dcf0: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -0019dd00: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
# Re
│ │ │ -0019dd20: 6d65 6469 6174 696f 6e20 6973 2061 7070  mediation is app
│ │ │ -0019dd30: 6c69 6361 626c 6520 6f6e 6c79 2069 6e20  licable only in 
│ │ │ -0019dd40: 6365 7274 6169 6e20 706c 6174 666f 726d  certain platform
│ │ │ -0019dd50: 730a 6966 2028 2021 2028 207b 2072 706d  s.if ( ! ( { rpm
│ │ │ -0019dd60: 202d 2d71 7569 6574 202d 7120 6b65 726e   --quiet -q kern
│ │ │ -0019dd70: 656c 203b 7d20 2661 6d70 3b26 616d 703b  el ;} &&
│ │ │ -0019dd80: 207b 2072 706d 202d 2d71 7569 6574 202d   { rpm --quiet -
│ │ │ -0019dd90: 7120 626f 6f74 6320 3b7d 2026 616d 703b  q bootc ;} &
│ │ │ -0019dda0: 2661 6d70 3b20 7b20 2120 7270 6d20 2d2d  & { ! rpm --
│ │ │ -0019ddb0: 7175 6965 7420 2d71 206f 7065 6e73 6869  quiet -q openshi
│ │ │ -0019ddc0: 6674 2d6b 7562 656c 6574 203b 7d20 2661  ft-kubelet ;} &a
│ │ │ -0019ddd0: 6d70 3b26 616d 703b 2028 5b20 2d66 202f  mp;& ([ -f /
│ │ │ -0019dde0: 7275 6e2f 6f73 7472 6565 2d62 6f6f 7465  run/ostree-boote
│ │ │ -0019ddf0: 6420 5d20 7c7c 205b 202d 4c20 2f6f 7374  d ] || [ -L /ost
│ │ │ -0019de00: 7265 6520 5d29 2029 2026 616d 703b 2661  ree ]) ) &&a
│ │ │ -0019de10: 6d70 3b20 2120 2820 5b20 2d66 202f 2e64  mp; ! ( [ -f /.d
│ │ │ -0019de20: 6f63 6b65 7265 6e76 205d 207c 7c20 5b20  ockerenv ] || [ 
│ │ │ -0019de30: 2d66 202f 7275 6e2f 2e63 6f6e 7461 696e  -f /run/.contain
│ │ │ -0019de40: 6572 656e 7620 5d20 2920 2920 2661 6d70  erenv ] ) ) &
│ │ │ -0019de50: 3b26 616d 703b 207b 2028 2066 696e 646d  ;& { ( findm
│ │ │ -0019de60: 6e74 202d 2d6b 6572 6e65 6c20 222f 686f  nt --kernel "/ho
│ │ │ -0019de70: 6d65 2220 2667 743b 202f 6465 762f 6e75  me" > /dev/nu
│ │ │ -0019de80: 6c6c 207c 7c20 6669 6e64 6d6e 7420 2d2d  ll || findmnt --
│ │ │ -0019de90: 6673 7461 6220 222f 686f 6d65 2220 2667  fstab "/home" &g
│ │ │ -0019dea0: 743b 202f 6465 762f 6e75 6c6c 2029 3b20  t; /dev/null ); 
│ │ │ -0019deb0: 7d3b 2074 6865 6e0a 0a66 756e 6374 696f  }; then..functio
│ │ │ -0019dec0: 6e20 7065 7266 6f72 6d5f 7265 6d65 6469  n perform_remedi
│ │ │ -0019ded0: 6174 696f 6e20 7b0a 0a20 2020 200a 2020  ation {..    .  
│ │ │ -0019dee0: 2020 2020 2020 2320 7468 6520 6d6f 756e        # the moun
│ │ │ -0019def0: 7420 706f 696e 7420 2f68 6f6d 6520 6861  t point /home ha
│ │ │ -0019df00: 7320 746f 2062 6520 6465 6669 6e65 6420  s to be defined 
│ │ │ -0019df10: 696e 202f 6574 632f 6673 7461 620a 2020  in /etc/fstab.  
│ │ │ -0019df20: 2020 2020 2020 2320 6265 666f 7265 2074        # before t
│ │ │ -0019df30: 6869 7320 7265 6d65 6469 6174 696f 6e20  his remediation 
│ │ │ -0019df40: 6361 6e20 6265 2065 7865 6375 7465 642e  can be executed.
│ │ │ -0019df50: 2049 6e20 6361 7365 2069 7420 6973 206e   In case it is n
│ │ │ -0019df60: 6f74 2064 6566 696e 6564 2c20 7468 650a  ot defined, the.
│ │ │ -0019df70: 2020 2020 2020 2020 2320 7265 6d65 6469          # remedi
│ │ │ -0019df80: 6174 696f 6e20 6162 6f72 7473 2061 6e64  ation aborts and
│ │ │ -0019df90: 206e 6f20 6368 616e 6765 7320 7265 6761   no changes rega
│ │ │ -0019dfa0: 7264 696e 6720 7468 6520 6d6f 756e 7420  rding the mount 
│ │ │ -0019dfb0: 706f 696e 7420 6172 6520 646f 6e65 2e0a  point are done..
│ │ │ -0019dfc0: 2020 2020 2020 2020 6d6f 756e 745f 706f          mount_po
│ │ │ -0019dfd0: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ -0019dfe0: 3d22 2428 7072 696e 7466 2022 5e5b 5b3a  ="$(printf "^[[:
│ │ │ -0019dff0: 7370 6163 653a 5d5d 2a5b 5e23 5d2e 2a5b  space:]]*[^#].*[
│ │ │ -0019e000: 5b3a 7370 6163 653a 5d5d 2573 5b5b 3a73  [:space:]]%s[[:s
│ │ │ -0019e010: 7061 6365 3a5d 5d22 2022 2f68 6f6d 6522  pace:]]" "/home"
│ │ │ -0019e020: 2922 0a0a 2020 2020 6772 6570 2022 246d  )"..    grep "$m
│ │ │ -0019e030: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ -0019e040: 5f72 6567 6578 7022 202d 7120 2f65 7463  _regexp" -q /etc
│ │ │ -0019e050: 2f66 7374 6162 205c 0a20 2020 2020 2020  /fstab \.       
│ │ │ -0019e060: 207c 7c20 7b20 6563 686f 2022 5468 6520   || { echo "The 
│ │ │ -0019e070: 6d6f 756e 7420 706f 696e 7420 272f 686f  mount point '/ho
│ │ │ -0019e080: 6d65 2720 6973 206e 6f74 2065 7665 6e20  me' is not even 
│ │ │ -0019e090: 696e 202f 6574 632f 6673 7461 622c 2073  in /etc/fstab, s
│ │ │ -0019e0a0: 6f20 7765 2063 616e 2774 2073 6574 2075  o we can't set u
│ │ │ -0019e0b0: 7020 6d6f 756e 7420 6f70 7469 6f6e 7322  p mount options"
│ │ │ -0019e0c0: 2026 6774 3b26 616d 703b 323b 0a20 2020   >&2;.   
│ │ │ -0019e0d0: 2020 2020 2020 2020 2020 2020 2065 6368               ech
│ │ │ -0019e0e0: 6f20 224e 6f74 2072 656d 6564 6961 7469  o "Not remediati
│ │ │ -0019e0f0: 6e67 2c20 6265 6361 7573 6520 7468 6572  ng, because ther
│ │ │ -0019e100: 6520 6973 206e 6f20 7265 636f 7264 206f  e is no record o
│ │ │ -0019e110: 6620 2f68 6f6d 6520 696e 202f 6574 632f  f /home in /etc/
│ │ │ -0019e120: 6673 7461 6222 2026 6774 3b26 616d 703b  fstab" >&
│ │ │ -0019e130: 323b 2072 6574 7572 6e20 313b 207d 0a20  2; return 1; }. 
│ │ │ -0019e140: 2020 200a 0a0a 2020 2020 6d6f 756e 745f     ...    mount_
│ │ │ -0019e150: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ -0019e160: 7870 3d22 2428 7072 696e 7466 2022 5e5b  xp="$(printf "^[
│ │ │ -0019e170: 5b3a 7370 6163 653a 5d5d 2a5b 5e23 5d2e  [:space:]]*[^#].
│ │ │ -0019e180: 2a5b 5b3a 7370 6163 653a 5d5d 2573 5b5b  *[[:space:]]%s[[
│ │ │ -0019e190: 3a73 7061 6365 3a5d 5d22 202f 686f 6d65  :space:]]" /home
│ │ │ -0019e1a0: 2922 0a0a 2020 2020 2320 4966 2074 6865  )"..    # If the
│ │ │ -0019e1b0: 206d 6f75 6e74 2070 6f69 6e74 2069 7320   mount point is 
│ │ │ -0019e1c0: 6e6f 7420 696e 202f 6574 632f 6673 7461  not in /etc/fsta
│ │ │ -0019e1d0: 622c 2067 6574 2070 7265 7669 6f75 7320  b, get previous 
│ │ │ -0019e1e0: 6d6f 756e 7420 6f70 7469 6f6e 7320 6672  mount options fr
│ │ │ -0019e1f0: 6f6d 202f 6574 632f 6d74 6162 0a20 2020  om /etc/mtab.   
│ │ │ -0019e200: 2069 6620 2120 6772 6570 202d 7120 2224   if ! grep -q "$
│ │ │ -0019e210: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ -0019e220: 685f 7265 6765 7870 2220 2f65 7463 2f66  h_regexp" /etc/f
│ │ │ -0019e230: 7374 6162 3b20 7468 656e 0a20 2020 2020  stab; then.     
│ │ │ -0019e240: 2020 2023 2072 756e 7469 6d65 206f 7074     # runtime opt
│ │ │ -0019e250: 7320 7769 7468 6f75 7420 736f 6d65 2061  s without some a
│ │ │ -0019e260: 7574 6f6d 6174 6963 206b 6572 6e65 6c2f  utomatic kernel/
│ │ │ -0019e270: 7573 6572 7370 6163 652d 6164 6465 6420  userspace-added 
│ │ │ -0019e280: 6465 6661 756c 7473 0a20 2020 2020 2020  defaults.       
│ │ │ -0019e290: 2070 7265 7669 6f75 735f 6d6f 756e 745f   previous_mount_
│ │ │ -0019e2a0: 6f70 7473 3d24 2867 7265 7020 2224 6d6f  opts=$(grep "$mo
│ │ │ -0019e2b0: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ -0019e2c0: 7265 6765 7870 2220 2f65 7463 2f6d 7461  regexp" /etc/mta
│ │ │ -0019e2d0: 6220 7c20 6865 6164 202d 3120 7c20 2061  b | head -1 |  a
│ │ │ -0019e2e0: 776b 2027 7b70 7269 6e74 2024 347d 2720  wk '{print $4}' 
│ │ │ -0019e2f0: 5c0a 2020 2020 2020 2020 2020 2020 2020  \.              
│ │ │ -0019e300: 2020 2020 2020 7c20 7365 6420 2d45 2022        | sed -E "
│ │ │ -0019e310: 732f 2872 777c 6465 6661 756c 7473 7c73  s/(rw|defaults|s
│ │ │ -0019e320: 6563 6c61 6265 6c7c 6e6f 7375 6964 2928  eclabel|nosuid)(
│ │ │ -0019e330: 2c7c 2429 2f2f 673b 732f 2c24 2f2f 2229  ,|$)//g;s/,$//")
│ │ │ -0019e340: 0a20 2020 2020 2020 205b 2022 2470 7265  .        [ "$pre
│ │ │ -0019e350: 7669 6f75 735f 6d6f 756e 745f 6f70 7473  vious_mount_opts
│ │ │ -0019e360: 2220 5d20 2661 6d70 3b26 616d 703b 2070  " ] && p
│ │ │ -0019e370: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ -0019e380: 7473 2b3d 222c 220a 2020 2020 2020 2020  ts+=",".        
│ │ │ -0019e390: 2320 496e 2069 736f 3936 3630 2066 696c  # In iso9660 fil
│ │ │ -0019e3a0: 6573 7973 7465 6d73 206d 7461 6220 636f  esystems mtab co
│ │ │ -0019e3b0: 756c 6420 6465 7363 7269 6265 2061 2022  uld describe a "
│ │ │ -0019e3c0: 626c 6f63 6b73 697a 6522 2076 616c 7565  blocksize" value
│ │ │ -0019e3d0: 2c20 7468 6973 2073 686f 756c 6420 6265  , this should be
│ │ │ -0019e3e0: 2072 6566 6c65 6374 6564 2069 6e0a 2020   reflected in.  
│ │ │ -0019e3f0: 2020 2020 2020 2320 6673 7461 6220 6173        # fstab as
│ │ │ -0019e400: 2022 626c 6f63 6b22 2e20 2054 6865 206e   "block".  The n
│ │ │ -0019e410: 6578 7420 7661 7269 6162 6c65 2069 7320  ext variable is 
│ │ │ -0019e420: 746f 2073 6174 6973 6679 2073 6865 6c6c  to satisfy shell
│ │ │ -0019e430: 6368 6563 6b20 5343 3230 3530 2e0a 2020  check SC2050..  
│ │ │ -0019e440: 2020 2020 2020 6673 5f74 7970 653d 2222        fs_type=""
│ │ │ -0019e450: 0a20 2020 2020 2020 2069 6620 5b20 2022  .        if [  "
│ │ │ -0019e460: 2466 735f 7479 7065 2220 3d3d 2022 6973  $fs_type" == "is
│ │ │ -0019e470: 6f39 3636 3022 205d 203b 2074 6865 6e0a  o9660" ] ; then.
│ │ │ -0019e480: 2020 2020 2020 2020 2020 2020 7072 6576              prev
│ │ │ -0019e490: 696f 7573 5f6d 6f75 6e74 5f6f 7074 733d  ious_mount_opts=
│ │ │ -0019e4a0: 2428 7365 6420 2773 2f62 6c6f 636b 7369  $(sed 's/blocksi
│ │ │ -0019e4b0: 7a65 3d2f 626c 6f63 6b3d 2f27 2026 6c74  ze=/block=/' <
│ │ │ -0019e4c0: 3b26 6c74 3b26 6c74 3b20 2224 7072 6576  ;<< "$prev
│ │ │ -0019e4d0: 696f 7573 5f6d 6f75 6e74 5f6f 7074 7322  ious_mount_opts"
│ │ │ -0019e4e0: 290a 2020 2020 2020 2020 6669 0a20 2020  ).        fi.   
│ │ │ -0019e4f0: 2020 2020 2065 6368 6f20 2220 2f68 6f6d       echo " /hom
│ │ │ -0019e500: 6520 2064 6566 6175 6c74 732c 247b 7072  e  defaults,${pr
│ │ │ -0019e510: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ -0019e520: 737d 6e6f 7375 6964 2030 2030 2220 2667  s}nosuid 0 0" &g
│ │ │ -0019e530: 743b 2667 743b 202f 6574 632f 6673 7461  t;> /etc/fsta
│ │ │ -0019e540: 620a 2020 2020 2320 4966 2074 6865 206d  b.    # If the m
│ │ │ -0019e550: 6f75 6e74 5f6f 7074 206f 7074 696f 6e20  ount_opt option 
│ │ │ -0019e560: 6973 206e 6f74 2061 6c72 6561 6479 2069  is not already i
│ │ │ -0019e570: 6e20 7468 6520 6d6f 756e 7420 706f 696e  n the mount poin
│ │ │ -0019e580: 7427 7320 2f65 7463 2f66 7374 6162 2065  t's /etc/fstab e
│ │ │ -0019e590: 6e74 7279 2c20 6164 6420 6974 0a20 2020  ntry, add it.   
│ │ │ -0019e5a0: 2065 6c69 6620 2120 6772 6570 2022 246d   elif ! grep "$m
│ │ │ -0019e5b0: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ -0019e5c0: 5f72 6567 6578 7022 202f 6574 632f 6673  _regexp" /etc/fs
│ │ │ -0019e5d0: 7461 6220 7c20 6772 6570 202d 7120 226e  tab | grep -q "n
│ │ │ -0019e5e0: 6f73 7569 6422 3b20 7468 656e 0a20 2020  osuid"; then.   
│ │ │ -0019e5f0: 2020 2020 2070 7265 7669 6f75 735f 6d6f       previous_mo
│ │ │ -0019e600: 756e 745f 6f70 7473 3d24 2867 7265 7020  unt_opts=$(grep 
│ │ │ -0019e610: 2224 6d6f 756e 745f 706f 696e 745f 6d61  "$mount_point_ma
│ │ │ -0019e620: 7463 685f 7265 6765 7870 2220 2f65 7463  tch_regexp" /etc
│ │ │ -0019e630: 2f66 7374 6162 207c 2061 776b 2027 7b70  /fstab | awk '{p
│ │ │ -0019e640: 7269 6e74 2024 347d 2729 0a20 2020 2020  rint $4}').     
│ │ │ -0019e650: 2020 2073 6564 202d 6920 2273 7c5c 2824     sed -i "s|\($
│ │ │ -0019e660: 7b6d 6f75 6e74 5f70 6f69 6e74 5f6d 6174  {mount_point_mat
│ │ │ -0019e670: 6368 5f72 6567 6578 707d 2e2a 247b 7072  ch_regexp}.*${pr
│ │ │ -0019e680: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ -0019e690: 737d 5c29 7c5c 312c 6e6f 7375 6964 7c22  s}\)|\1,nosuid|"
│ │ │ -0019e6a0: 202f 6574 632f 6673 7461 620a 2020 2020   /etc/fstab.    
│ │ │ -0019e6b0: 6669 0a0a 0a20 2020 2069 6620 6d6b 6469  fi...    if mkdi
│ │ │ -0019e6c0: 7220 2d70 2022 2f68 6f6d 6522 3b20 7468  r -p "/home"; th
│ │ │ -0019e6d0: 656e 0a20 2020 2020 2020 2069 6620 6d6f  en.        if mo
│ │ │ -0019e6e0: 756e 7470 6f69 6e74 202d 7120 222f 686f  untpoint -q "/ho
│ │ │ -0019e6f0: 6d65 223b 2074 6865 6e0a 2020 2020 2020  me"; then.      
│ │ │ -0019e700: 2020 2020 2020 6d6f 756e 7420 2d6f 2072        mount -o r
│ │ │ -0019e710: 656d 6f75 6e74 202d 2d74 6172 6765 7420  emount --target 
│ │ │ -0019e720: 222f 686f 6d65 220a 2020 2020 2020 2020  "/home".        
│ │ │ -0019e730: 6669 0a20 2020 2066 690a 7d0a 0a70 6572  fi.    fi.}..per
│ │ │ -0019e740: 666f 726d 5f72 656d 6564 6961 7469 6f6e  form_remediation
│ │ │ -0019e750: 0a0a 656c 7365 0a20 2020 2026 6774 3b26  ..else.    >&
│ │ │ -0019e760: 616d 703b 3220 6563 686f 2027 5265 6d65  amp;2 echo 'Reme
│ │ │ -0019e770: 6469 6174 696f 6e20 6973 206e 6f74 2061  diation is not a
│ │ │ -0019e780: 7070 6c69 6361 626c 652c 206e 6f74 6869  pplicable, nothi
│ │ │ -0019e790: 6e67 2077 6173 2064 6f6e 6527 0a66 690a  ng was done'.fi.
│ │ │ +0019c230: 6174 696f 6e20 416e 7369 626c 6520 736e  ation Ansible sn
│ │ │ +0019c240: 6970 7065 7420 e287 b23c 2f61 3e3c 6272  ippet ...
│ │ │ +0019c2f0: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c
- n
│ │ │ +0019c380: 616d 653a 2047 6174 6865 7220 7468 6520  ame: Gather the 
│ │ │ +0019c390: 7061 636b 6167 6520 6661 6374 730a 2020  package facts.  
│ │ │ +0019c3a0: 7061 636b 6167 655f 6661 6374 733a 0a20  package_facts:. 
│ │ │ +0019c3b0: 2020 206d 616e 6167 6572 3a20 6175 746f     manager: auto
│ │ │ +0019c3c0: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ +0019c3d0: 542d 3830 302d 3533 2d41 432d 360a 2020  T-800-53-AC-6.  
│ │ │ +0019c3e0: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ +0019c3f0: 2d36 2831 290a 2020 2d20 4e49 5354 2d38  -6(1).  - NIST-8
│ │ │ +0019c400: 3030 2d35 332d 434d 2d36 2861 290a 2020  00-53-CM-6(a).  
│ │ │ +0019c410: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +0019c420: 2d37 2861 290a 2020 2d20 4e49 5354 2d38  -7(a).  - NIST-8
│ │ │ +0019c430: 3030 2d35 332d 434d 2d37 2862 290a 2020  00-53-CM-7(b).  
│ │ │ +0019c440: 2d20 4e49 5354 2d38 3030 2d35 332d 4d50  - NIST-800-53-MP
│ │ │ +0019c450: 2d37 0a20 202d 2063 6f6e 6669 6775 7265  -7.  - configure
│ │ │ +0019c460: 5f73 7472 6174 6567 790a 2020 2d20 6869  _strategy.  - hi
│ │ │ +0019c470: 6768 5f64 6973 7275 7074 696f 6e0a 2020  gh_disruption.  
│ │ │ +0019c480: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ +0019c490: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ +0019c4a0: 7269 7479 0a20 202d 206d 6f75 6e74 5f6f  rity.  - mount_o
│ │ │ +0019c4b0: 7074 696f 6e5f 686f 6d65 5f6e 6f73 7569  ption_home_nosui
│ │ │ +0019c4c0: 640a 2020 2d20 6e6f 5f72 6562 6f6f 745f  d.  - no_reboot_
│ │ │ +0019c4d0: 6e65 6564 6564 0a0a 2d20 6e61 6d65 3a20  needed..- name: 
│ │ │ +0019c4e0: 2741 6464 206e 6f73 7569 6420 4f70 7469  'Add nosuid Opti
│ │ │ +0019c4f0: 6f6e 2074 6f20 2f68 6f6d 653a 2043 6865  on to /home: Che
│ │ │ +0019c500: 636b 2069 6e66 6f72 6d61 7469 6f6e 2061  ck information a
│ │ │ +0019c510: 7373 6f63 6961 7465 6420 746f 206d 6f75  ssociated to mou
│ │ │ +0019c520: 6e74 706f 696e 7427 0a20 2061 6e73 6962  ntpoint'.  ansib
│ │ │ +0019c530: 6c65 2e62 7569 6c74 696e 2e63 6f6d 6d61  le.builtin.comma
│ │ │ +0019c540: 6e64 3a20 6669 6e64 6d6e 7420 2d2d 6673  nd: findmnt --fs
│ │ │ +0019c550: 7461 6220 272f 686f 6d65 270a 2020 7265  tab '/home'.  re
│ │ │ +0019c560: 6769 7374 6572 3a20 6465 7669 6365 5f6e  gister: device_n
│ │ │ +0019c570: 616d 650a 2020 6661 696c 6564 5f77 6865  ame.  failed_whe
│ │ │ +0019c580: 6e3a 2064 6576 6963 655f 6e61 6d65 2e72  n: device_name.r
│ │ │ +0019c590: 6320 2667 743b 2031 0a20 2063 6861 6e67  c > 1.  chang
│ │ │ +0019c5a0: 6564 5f77 6865 6e3a 2066 616c 7365 0a20  ed_when: false. 
│ │ │ +0019c5b0: 2063 6865 636b 5f6d 6f64 653a 2066 616c   check_mode: fal
│ │ │ +0019c5c0: 7365 0a20 2077 6865 6e3a 0a20 202d 2028  se.  when:.  - (
│ │ │ +0019c5d0: 206e 6f74 2028 2022 6b65 726e 656c 2220   not ( "kernel" 
│ │ │ +0019c5e0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +0019c5f0: 2e70 6163 6b61 6765 7320 616e 6420 2262  .packages and "b
│ │ │ +0019c600: 6f6f 7463 2220 696e 2061 6e73 6962 6c65  ootc" in ansible
│ │ │ +0019c610: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ +0019c620: 2020 2020 616e 6420 6e6f 7420 226f 7065      and not "ope
│ │ │ +0019c630: 6e73 6869 6674 2d6b 7562 656c 6574 2220  nshift-kubelet" 
│ │ │ +0019c640: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +0019c650: 2e70 6163 6b61 6765 7320 616e 6420 226f  .packages and "o
│ │ │ +0019c660: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ +0019c670: 655f 7072 6f63 5f63 6d64 6c69 6e65 0a20  e_proc_cmdline. 
│ │ │ +0019c680: 2020 2029 2061 6e64 206e 6f74 2028 2061     ) and not ( a
│ │ │ +0019c690: 6e73 6962 6c65 5f76 6972 7475 616c 697a  nsible_virtualiz
│ │ │ +0019c6a0: 6174 696f 6e5f 7479 7065 2069 6e20 5b22  ation_type in ["
│ │ │ +0019c6b0: 646f 636b 6572 222c 2022 6c78 6322 2c20  docker", "lxc", 
│ │ │ +0019c6c0: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61  "openvz", "podma
│ │ │ +0019c6d0: 6e22 2c0a 2020 2020 2263 6f6e 7461 696e  n",.    "contain
│ │ │ +0019c6e0: 6572 225d 2029 2029 0a20 202d 2027 222f  er"] ) ).  - '"/
│ │ │ +0019c6f0: 686f 6d65 2220 696e 2061 6e73 6962 6c65  home" in ansible
│ │ │ +0019c700: 5f6d 6f75 6e74 7320 7c20 6d61 7028 6174  _mounts | map(at
│ │ │ +0019c710: 7472 6962 7574 653d 226d 6f75 6e74 2229  tribute="mount")
│ │ │ +0019c720: 207c 206c 6973 7427 0a20 2074 6167 733a   | list'.  tags:
│ │ │ +0019c730: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +0019c740: 2d41 432d 360a 2020 2d20 4e49 5354 2d38  -AC-6.  - NIST-8
│ │ │ +0019c750: 3030 2d35 332d 4143 2d36 2831 290a 2020  00-53-AC-6(1).  
│ │ │ +0019c760: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +0019c770: 2d36 2861 290a 2020 2d20 4e49 5354 2d38  -6(a).  - NIST-8
│ │ │ +0019c780: 3030 2d35 332d 434d 2d37 2861 290a 2020  00-53-CM-7(a).  
│ │ │ +0019c790: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +0019c7a0: 2d37 2862 290a 2020 2d20 4e49 5354 2d38  -7(b).  - NIST-8
│ │ │ +0019c7b0: 3030 2d35 332d 4d50 2d37 0a20 202d 2063  00-53-MP-7.  - c
│ │ │ +0019c7c0: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ +0019c7d0: 790a 2020 2d20 6869 6768 5f64 6973 7275  y.  - high_disru
│ │ │ +0019c7e0: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f  ption.  - low_co
│ │ │ +0019c7f0: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ +0019c800: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ +0019c810: 206d 6f75 6e74 5f6f 7074 696f 6e5f 686f   mount_option_ho
│ │ │ +0019c820: 6d65 5f6e 6f73 7569 640a 2020 2d20 6e6f  me_nosuid.  - no
│ │ │ +0019c830: 5f72 6562 6f6f 745f 6e65 6564 6564 0a0a  _reboot_needed..
│ │ │ +0019c840: 2d20 6e61 6d65 3a20 2741 6464 206e 6f73  - name: 'Add nos
│ │ │ +0019c850: 7569 6420 4f70 7469 6f6e 2074 6f20 2f68  uid Option to /h
│ │ │ +0019c860: 6f6d 653a 2043 7265 6174 6520 6d6f 756e  ome: Create moun
│ │ │ +0019c870: 745f 696e 666f 2064 6963 7469 6f6e 6172  t_info dictionar
│ │ │ +0019c880: 7920 7661 7269 6162 6c65 270a 2020 7365  y variable'.  se
│ │ │ +0019c890: 745f 6661 6374 3a0a 2020 2020 6d6f 756e  t_fact:.    moun
│ │ │ +0019c8a0: 745f 696e 666f 3a20 277b 7b20 6d6f 756e  t_info: '{{ moun
│ │ │ +0019c8b0: 745f 696e 666f 7c64 6566 6175 6c74 287b  t_info|default({
│ │ │ +0019c8c0: 7d29 7c63 6f6d 6269 6e65 287b 6974 656d  })|combine({item
│ │ │ +0019c8d0: 2e30 3a20 6974 656d 2e31 7d29 207d 7d27  .0: item.1}) }}'
│ │ │ +0019c8e0: 0a20 2077 6974 685f 746f 6765 7468 6572  .  with_together
│ │ │ +0019c8f0: 3a0a 2020 2d20 277b 7b20 6465 7669 6365  :.  - '{{ device
│ │ │ +0019c900: 5f6e 616d 652e 7374 646f 7574 5f6c 696e  _name.stdout_lin
│ │ │ +0019c910: 6573 5b30 5d2e 7370 6c69 7428 2920 7c20  es[0].split() | 
│ │ │ +0019c920: 6d61 7028 2727 6c6f 7765 7227 2729 207c  map(''lower'') |
│ │ │ +0019c930: 206c 6973 7420 7d7d 270a 2020 2d20 277b   list }}'.  - '{
│ │ │ +0019c940: 7b20 6465 7669 6365 5f6e 616d 652e 7374  { device_name.st
│ │ │ +0019c950: 646f 7574 5f6c 696e 6573 5b31 5d2e 7370  dout_lines[1].sp
│ │ │ +0019c960: 6c69 7428 2920 7c20 6c69 7374 207d 7d27  lit() | list }}'
│ │ │ +0019c970: 0a20 2077 6865 6e3a 0a20 202d 2028 206e  .  when:.  - ( n
│ │ │ +0019c980: 6f74 2028 2022 6b65 726e 656c 2220 696e  ot ( "kernel" in
│ │ │ +0019c990: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +0019c9a0: 6163 6b61 6765 7320 616e 6420 2262 6f6f  ackages and "boo
│ │ │ +0019c9b0: 7463 2220 696e 2061 6e73 6962 6c65 5f66  tc" in ansible_f
│ │ │ +0019c9c0: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ +0019c9d0: 2020 616e 6420 6e6f 7420 226f 7065 6e73    and not "opens
│ │ │ +0019c9e0: 6869 6674 2d6b 7562 656c 6574 2220 696e  hift-kubelet" in
│ │ │ +0019c9f0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +0019ca00: 6163 6b61 6765 7320 616e 6420 226f 7374  ackages and "ost
│ │ │ +0019ca10: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ +0019ca20: 7072 6f63 5f63 6d64 6c69 6e65 0a20 2020  proc_cmdline.   
│ │ │ +0019ca30: 2029 2061 6e64 206e 6f74 2028 2061 6e73   ) and not ( ans
│ │ │ +0019ca40: 6962 6c65 5f76 6972 7475 616c 697a 6174  ible_virtualizat
│ │ │ +0019ca50: 696f 6e5f 7479 7065 2069 6e20 5b22 646f  ion_type in ["do
│ │ │ +0019ca60: 636b 6572 222c 2022 6c78 6322 2c20 226f  cker", "lxc", "o
│ │ │ +0019ca70: 7065 6e76 7a22 2c20 2270 6f64 6d61 6e22  penvz", "podman"
│ │ │ +0019ca80: 2c0a 2020 2020 2263 6f6e 7461 696e 6572  ,.    "container
│ │ │ +0019ca90: 225d 2029 2029 0a20 202d 2027 222f 686f  "] ) ).  - '"/ho
│ │ │ +0019caa0: 6d65 2220 696e 2061 6e73 6962 6c65 5f6d  me" in ansible_m
│ │ │ +0019cab0: 6f75 6e74 7320 7c20 6d61 7028 6174 7472  ounts | map(attr
│ │ │ +0019cac0: 6962 7574 653d 226d 6f75 6e74 2229 207c  ibute="mount") |
│ │ │ +0019cad0: 206c 6973 7427 0a20 202d 2064 6576 6963   list'.  - devic
│ │ │ +0019cae0: 655f 6e61 6d65 2e73 7464 6f75 7420 6973  e_name.stdout is
│ │ │ +0019caf0: 2064 6566 696e 6564 2061 6e64 2064 6576   defined and dev
│ │ │ +0019cb00: 6963 655f 6e61 6d65 2e73 7464 6f75 745f  ice_name.stdout_
│ │ │ +0019cb10: 6c69 6e65 7320 6973 2064 6566 696e 6564  lines is defined
│ │ │ +0019cb20: 0a20 202d 2028 6465 7669 6365 5f6e 616d  .  - (device_nam
│ │ │ +0019cb30: 652e 7374 646f 7574 207c 206c 656e 6774  e.stdout | lengt
│ │ │ +0019cb40: 6820 2667 743b 2030 290a 2020 7461 6773  h > 0).  tags
│ │ │ +0019cb50: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ +0019cb60: 332d 4143 2d36 0a20 202d 204e 4953 542d  3-AC-6.  - NIST-
│ │ │ +0019cb70: 3830 302d 3533 2d41 432d 3628 3129 0a20  800-53-AC-6(1). 
│ │ │ +0019cb80: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +0019cb90: 4d2d 3628 6129 0a20 202d 204e 4953 542d  M-6(a).  - NIST-
│ │ │ +0019cba0: 3830 302d 3533 2d43 4d2d 3728 6129 0a20  800-53-CM-7(a). 
│ │ │ +0019cbb0: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +0019cbc0: 4d2d 3728 6229 0a20 202d 204e 4953 542d  M-7(b).  - NIST-
│ │ │ +0019cbd0: 3830 302d 3533 2d4d 502d 370a 2020 2d20  800-53-MP-7.  - 
│ │ │ +0019cbe0: 636f 6e66 6967 7572 655f 7374 7261 7465  configure_strate
│ │ │ +0019cbf0: 6779 0a20 202d 2068 6967 685f 6469 7372  gy.  - high_disr
│ │ │ +0019cc00: 7570 7469 6f6e 0a20 202d 206c 6f77 5f63  uption.  - low_c
│ │ │ +0019cc10: 6f6d 706c 6578 6974 790a 2020 2d20 6d65  omplexity.  - me
│ │ │ +0019cc20: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ +0019cc30: 2d20 6d6f 756e 745f 6f70 7469 6f6e 5f68  - mount_option_h
│ │ │ +0019cc40: 6f6d 655f 6e6f 7375 6964 0a20 202d 206e  ome_nosuid.  - n
│ │ │ +0019cc50: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ +0019cc60: 0a2d 206e 616d 653a 2027 4164 6420 6e6f  .- name: 'Add no
│ │ │ +0019cc70: 7375 6964 204f 7074 696f 6e20 746f 202f  suid Option to /
│ │ │ +0019cc80: 686f 6d65 3a20 4966 202f 686f 6d65 206e  home: If /home n
│ │ │ +0019cc90: 6f74 206d 6f75 6e74 6564 2c20 6372 6166  ot mounted, craf
│ │ │ +0019cca0: 7420 6d6f 756e 745f 696e 666f 206d 616e  t mount_info man
│ │ │ +0019ccb0: 7561 6c6c 7927 0a20 2073 6574 5f66 6163  ually'.  set_fac
│ │ │ +0019ccc0: 743a 0a20 2020 206d 6f75 6e74 5f69 6e66  t:.    mount_inf
│ │ │ +0019ccd0: 6f3a 2027 7b7b 206d 6f75 6e74 5f69 6e66  o: '{{ mount_inf
│ │ │ +0019cce0: 6f7c 6465 6661 756c 7428 7b7d 297c 636f  o|default({})|co
│ │ │ +0019ccf0: 6d62 696e 6528 7b69 7465 6d2e 303a 2069  mbine({item.0: i
│ │ │ +0019cd00: 7465 6d2e 317d 2920 7d7d 270a 2020 7769  tem.1}) }}'.  wi
│ │ │ +0019cd10: 7468 5f74 6f67 6574 6865 723a 0a20 202d  th_together:.  -
│ │ │ +0019cd20: 202d 2074 6172 6765 740a 2020 2020 2d20   - target.    - 
│ │ │ +0019cd30: 736f 7572 6365 0a20 2020 202d 2066 7374  source.    - fst
│ │ │ +0019cd40: 7970 650a 2020 2020 2d20 6f70 7469 6f6e  ype.    - option
│ │ │ +0019cd50: 730a 2020 2d20 2d20 2f68 6f6d 650a 2020  s.  - - /home.  
│ │ │ +0019cd60: 2020 2d20 2727 0a20 2020 202d 2027 270a    - ''.    - ''.
│ │ │ +0019cd70: 2020 2020 2d20 6465 6661 756c 7473 0a20      - defaults. 
│ │ │ +0019cd80: 2077 6865 6e3a 0a20 202d 2028 206e 6f74   when:.  - ( not
│ │ │ +0019cd90: 2028 2022 6b65 726e 656c 2220 696e 2061   ( "kernel" in a
│ │ │ +0019cda0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +0019cdb0: 6b61 6765 7320 616e 6420 2262 6f6f 7463  kages and "bootc
│ │ │ +0019cdc0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +0019cdd0: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ +0019cde0: 616e 6420 6e6f 7420 226f 7065 6e73 6869  and not "openshi
│ │ │ +0019cdf0: 6674 2d6b 7562 656c 6574 2220 696e 2061  ft-kubelet" in a
│ │ │ +0019ce00: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +0019ce10: 6b61 6765 7320 616e 6420 226f 7374 7265  kages and "ostre
│ │ │ +0019ce20: 6522 2069 6e20 616e 7369 626c 655f 7072  e" in ansible_pr
│ │ │ +0019ce30: 6f63 5f63 6d64 6c69 6e65 0a20 2020 2029  oc_cmdline.    )
│ │ │ +0019ce40: 2061 6e64 206e 6f74 2028 2061 6e73 6962   and not ( ansib
│ │ │ +0019ce50: 6c65 5f76 6972 7475 616c 697a 6174 696f  le_virtualizatio
│ │ │ +0019ce60: 6e5f 7479 7065 2069 6e20 5b22 646f 636b  n_type in ["dock
│ │ │ +0019ce70: 6572 222c 2022 6c78 6322 2c20 226f 7065  er", "lxc", "ope
│ │ │ +0019ce80: 6e76 7a22 2c20 2270 6f64 6d61 6e22 2c0a  nvz", "podman",.
│ │ │ +0019ce90: 2020 2020 2263 6f6e 7461 696e 6572 225d      "container"]
│ │ │ +0019cea0: 2029 2029 0a20 202d 2027 222f 686f 6d65   ) ).  - '"/home
│ │ │ +0019ceb0: 2220 696e 2061 6e73 6962 6c65 5f6d 6f75  " in ansible_mou
│ │ │ +0019cec0: 6e74 7320 7c20 6d61 7028 6174 7472 6962  nts | map(attrib
│ │ │ +0019ced0: 7574 653d 226d 6f75 6e74 2229 207c 206c  ute="mount") | l
│ │ │ +0019cee0: 6973 7427 0a20 202d 2028 222d 2d66 7374  ist'.  - ("--fst
│ │ │ +0019cef0: 6162 2220 7c20 6c65 6e67 7468 203d 3d20  ab" | length == 
│ │ │ +0019cf00: 3029 0a20 202d 2064 6576 6963 655f 6e61  0).  - device_na
│ │ │ +0019cf10: 6d65 2e73 7464 6f75 7420 6973 2064 6566  me.stdout is def
│ │ │ +0019cf20: 696e 6564 2061 6e64 2064 6576 6963 655f  ined and device_
│ │ │ +0019cf30: 6e61 6d65 2e73 7464 6f75 745f 6c69 6e65  name.stdout_line
│ │ │ +0019cf40: 7320 6973 2064 6566 696e 6564 0a20 202d  s is defined.  -
│ │ │ +0019cf50: 2028 6465 7669 6365 5f6e 616d 652e 7374   (device_name.st
│ │ │ +0019cf60: 646f 7574 207c 206c 656e 6774 6820 3d3d  dout | length ==
│ │ │ +0019cf70: 2030 290a 2020 7461 6773 3a0a 2020 2d20   0).  tags:.  - 
│ │ │ +0019cf80: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ +0019cf90: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +0019cfa0: 2d41 432d 3628 3129 0a20 202d 204e 4953  -AC-6(1).  - NIS
│ │ │ +0019cfb0: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ +0019cfc0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +0019cfd0: 2d43 4d2d 3728 6129 0a20 202d 204e 4953  -CM-7(a).  - NIS
│ │ │ +0019cfe0: 542d 3830 302d 3533 2d43 4d2d 3728 6229  T-800-53-CM-7(b)
│ │ │ +0019cff0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +0019d000: 2d4d 502d 370a 2020 2d20 636f 6e66 6967  -MP-7.  - config
│ │ │ +0019d010: 7572 655f 7374 7261 7465 6779 0a20 202d  ure_strategy.  -
│ │ │ +0019d020: 2068 6967 685f 6469 7372 7570 7469 6f6e   high_disruption
│ │ │ +0019d030: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ +0019d040: 6974 790a 2020 2d20 6d65 6469 756d 5f73  ity.  - medium_s
│ │ │ +0019d050: 6576 6572 6974 790a 2020 2d20 6d6f 756e  everity.  - moun
│ │ │ +0019d060: 745f 6f70 7469 6f6e 5f68 6f6d 655f 6e6f  t_option_home_no
│ │ │ +0019d070: 7375 6964 0a20 202d 206e 6f5f 7265 626f  suid.  - no_rebo
│ │ │ +0019d080: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d  ot_needed..- nam
│ │ │ +0019d090: 653a 2027 4164 6420 6e6f 7375 6964 204f  e: 'Add nosuid O
│ │ │ +0019d0a0: 7074 696f 6e20 746f 202f 686f 6d65 3a20  ption to /home: 
│ │ │ +0019d0b0: 4d61 6b65 2073 7572 6520 6e6f 7375 6964  Make sure nosuid
│ │ │ +0019d0c0: 206f 7074 696f 6e20 6973 2070 6172 7420   option is part 
│ │ │ +0019d0d0: 6f66 2074 6865 2074 6f20 2f68 6f6d 650a  of the to /home.
│ │ │ +0019d0e0: 2020 2020 6f70 7469 6f6e 7327 0a20 2073      options'.  s
│ │ │ +0019d0f0: 6574 5f66 6163 743a 0a20 2020 206d 6f75  et_fact:.    mou
│ │ │ +0019d100: 6e74 5f69 6e66 6f3a 2027 7b7b 206d 6f75  nt_info: '{{ mou
│ │ │ +0019d110: 6e74 5f69 6e66 6f20 7c20 636f 6d62 696e  nt_info | combin
│ │ │ +0019d120: 6528 207b 2727 6f70 7469 6f6e 7327 273a  e( {''options'':
│ │ │ +0019d130: 2727 2727 7e28 6d6f 756e 745f 696e 666f  ''''~(mount_info
│ │ │ +0019d140: 2e6f 7074 696f 6e73 207c 0a20 2020 2020  .options |.     
│ │ │ +0019d150: 2064 6566 6175 6c74 2827 2727 2729 297e   default(''''))~
│ │ │ +0019d160: 2827 272c 2727 2069 6620 286d 6f75 6e74  ('','' if (mount
│ │ │ +0019d170: 5f69 6e66 6f2e 6f70 7469 6f6e 7320 7c20  _info.options | 
│ │ │ +0019d180: 6465 6661 756c 7428 2727 2727 2929 2065  default('''')) e
│ │ │ +0019d190: 6c73 6520 2727 2727 297e 2727 6e6f 7375  lse '''')~''nosu
│ │ │ +0019d1a0: 6964 2727 0a20 2020 2020 207d 2920 7d7d  id''.      }) }}
│ │ │ +0019d1b0: 270a 2020 7768 656e 3a0a 2020 2d20 2820  '.  when:.  - ( 
│ │ │ +0019d1c0: 6e6f 7420 2820 226b 6572 6e65 6c22 2069  not ( "kernel" i
│ │ │ +0019d1d0: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +0019d1e0: 7061 636b 6167 6573 2061 6e64 2022 626f  packages and "bo
│ │ │ +0019d1f0: 6f74 6322 2069 6e20 616e 7369 626c 655f  otc" in ansible_
│ │ │ +0019d200: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ +0019d210: 2020 2061 6e64 206e 6f74 2022 6f70 656e     and not "open
│ │ │ +0019d220: 7368 6966 742d 6b75 6265 6c65 7422 2069  shift-kubelet" i
│ │ │ +0019d230: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +0019d240: 7061 636b 6167 6573 2061 6e64 2022 6f73  packages and "os
│ │ │ +0019d250: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ +0019d260: 5f70 726f 635f 636d 646c 696e 650a 2020  _proc_cmdline.  
│ │ │ +0019d270: 2020 2920 616e 6420 6e6f 7420 2820 616e    ) and not ( an
│ │ │ +0019d280: 7369 626c 655f 7669 7274 7561 6c69 7a61  sible_virtualiza
│ │ │ +0019d290: 7469 6f6e 5f74 7970 6520 696e 205b 2264  tion_type in ["d
│ │ │ +0019d2a0: 6f63 6b65 7222 2c20 226c 7863 222c 2022  ocker", "lxc", "
│ │ │ +0019d2b0: 6f70 656e 767a 222c 2022 706f 646d 616e  openvz", "podman
│ │ │ +0019d2c0: 222c 0a20 2020 2022 636f 6e74 6169 6e65  ",.    "containe
│ │ │ +0019d2d0: 7222 5d20 2920 290a 2020 2d20 2722 2f68  r"] ) ).  - '"/h
│ │ │ +0019d2e0: 6f6d 6522 2069 6e20 616e 7369 626c 655f  ome" in ansible_
│ │ │ +0019d2f0: 6d6f 756e 7473 207c 206d 6170 2861 7474  mounts | map(att
│ │ │ +0019d300: 7269 6275 7465 3d22 6d6f 756e 7422 2920  ribute="mount") 
│ │ │ +0019d310: 7c20 6c69 7374 270a 2020 2d20 6d6f 756e  | list'.  - moun
│ │ │ +0019d320: 745f 696e 666f 2069 7320 6465 6669 6e65  t_info is define
│ │ │ +0019d330: 6420 616e 6420 226e 6f73 7569 6422 206e  d and "nosuid" n
│ │ │ +0019d340: 6f74 2069 6e20 286d 6f75 6e74 5f69 6e66  ot in (mount_inf
│ │ │ +0019d350: 6f2e 6f70 7469 6f6e 7320 7c20 6465 6661  o.options | defa
│ │ │ +0019d360: 756c 7428 2727 2929 0a20 2074 6167 733a  ult('')).  tags:
│ │ │ +0019d370: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +0019d380: 2d41 432d 360a 2020 2d20 4e49 5354 2d38  -AC-6.  - NIST-8
│ │ │ +0019d390: 3030 2d35 332d 4143 2d36 2831 290a 2020  00-53-AC-6(1).  
│ │ │ +0019d3a0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +0019d3b0: 2d36 2861 290a 2020 2d20 4e49 5354 2d38  -6(a).  - NIST-8
│ │ │ +0019d3c0: 3030 2d35 332d 434d 2d37 2861 290a 2020  00-53-CM-7(a).  
│ │ │ +0019d3d0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +0019d3e0: 2d37 2862 290a 2020 2d20 4e49 5354 2d38  -7(b).  - NIST-8
│ │ │ +0019d3f0: 3030 2d35 332d 4d50 2d37 0a20 202d 2063  00-53-MP-7.  - c
│ │ │ +0019d400: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ +0019d410: 790a 2020 2d20 6869 6768 5f64 6973 7275  y.  - high_disru
│ │ │ +0019d420: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f  ption.  - low_co
│ │ │ +0019d430: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ +0019d440: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ +0019d450: 206d 6f75 6e74 5f6f 7074 696f 6e5f 686f   mount_option_ho
│ │ │ +0019d460: 6d65 5f6e 6f73 7569 640a 2020 2d20 6e6f  me_nosuid.  - no
│ │ │ +0019d470: 5f72 6562 6f6f 745f 6e65 6564 6564 0a0a  _reboot_needed..
│ │ │ +0019d480: 2d20 6e61 6d65 3a20 2741 6464 206e 6f73  - name: 'Add nos
│ │ │ +0019d490: 7569 6420 4f70 7469 6f6e 2074 6f20 2f68  uid Option to /h
│ │ │ +0019d4a0: 6f6d 653a 2045 6e73 7572 6520 2f68 6f6d  ome: Ensure /hom
│ │ │ +0019d4b0: 6520 6973 206d 6f75 6e74 6564 2077 6974  e is mounted wit
│ │ │ +0019d4c0: 6820 6e6f 7375 6964 206f 7074 696f 6e27  h nosuid option'
│ │ │ +0019d4d0: 0a20 2061 6e73 6962 6c65 2e70 6f73 6978  .  ansible.posix
│ │ │ +0019d4e0: 2e6d 6f75 6e74 3a0a 2020 2020 7061 7468  .mount:.    path
│ │ │ +0019d4f0: 3a20 2f68 6f6d 650a 2020 2020 7372 633a  : /home.    src:
│ │ │ +0019d500: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f2e   '{{ mount_info.
│ │ │ +0019d510: 736f 7572 6365 207c 2064 6566 6175 6c74  source | default
│ │ │ +0019d520: 2827 2727 2729 207d 7d27 0a20 2020 206f  ('''') }}'.    o
│ │ │ +0019d530: 7074 733a 2027 7b7b 206d 6f75 6e74 5f69  pts: '{{ mount_i
│ │ │ +0019d540: 6e66 6f2e 6f70 7469 6f6e 7320 7c20 6465  nfo.options | de
│ │ │ +0019d550: 6661 756c 7428 2727 2727 2920 7d7d 270a  fault('''') }}'.
│ │ │ +0019d560: 2020 2020 7374 6174 653a 206d 6f75 6e74      state: mount
│ │ │ +0019d570: 6564 0a20 2020 2066 7374 7970 653a 2027  ed.    fstype: '
│ │ │ +0019d580: 7b7b 206d 6f75 6e74 5f69 6e66 6f2e 6673  {{ mount_info.fs
│ │ │ +0019d590: 7479 7065 207c 2064 6566 6175 6c74 2827  type | default('
│ │ │ +0019d5a0: 2727 2729 207d 7d27 0a20 2072 6567 6973  ''') }}'.  regis
│ │ │ +0019d5b0: 7465 723a 206d 6f75 6e74 5f72 6573 756c  ter: mount_resul
│ │ │ +0019d5c0: 740a 2020 6661 696c 6564 5f77 6865 6e3a  t.  failed_when:
│ │ │ +0019d5d0: 0a20 202d 206d 6f75 6e74 5f72 6573 756c  .  - mount_resul
│ │ │ +0019d5e0: 7420 6973 2066 6169 6c65 640a 2020 2d20  t is failed.  - 
│ │ │ +0019d5f0: 2727 2774 6172 6765 7420 6973 2062 7573  '''target is bus
│ │ │ +0019d600: 7927 2720 6e6f 7420 696e 2028 6d6f 756e  y'' not in (moun
│ │ │ +0019d610: 745f 7265 7375 6c74 2e6d 7367 207c 2064  t_result.msg | d
│ │ │ +0019d620: 6566 6175 6c74 2827 2727 2729 2927 0a20  efault(''''))'. 
│ │ │ +0019d630: 202d 2027 2727 616c 7265 6164 7920 6d6f   - '''already mo
│ │ │ +0019d640: 756e 7465 6427 2720 6e6f 7420 696e 2028  unted'' not in (
│ │ │ +0019d650: 6d6f 756e 745f 7265 7375 6c74 2e6d 7367  mount_result.msg
│ │ │ +0019d660: 207c 2064 6566 6175 6c74 2827 2727 2729   | default('''')
│ │ │ +0019d670: 2927 0a20 2077 6865 6e3a 0a20 202d 2028  )'.  when:.  - (
│ │ │ +0019d680: 206e 6f74 2028 2022 6b65 726e 656c 2220   not ( "kernel" 
│ │ │ +0019d690: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +0019d6a0: 2e70 6163 6b61 6765 7320 616e 6420 2262  .packages and "b
│ │ │ +0019d6b0: 6f6f 7463 2220 696e 2061 6e73 6962 6c65  ootc" in ansible
│ │ │ +0019d6c0: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ +0019d6d0: 2020 2020 616e 6420 6e6f 7420 226f 7065      and not "ope
│ │ │ +0019d6e0: 6e73 6869 6674 2d6b 7562 656c 6574 2220  nshift-kubelet" 
│ │ │ +0019d6f0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +0019d700: 2e70 6163 6b61 6765 7320 616e 6420 226f  .packages and "o
│ │ │ +0019d710: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ +0019d720: 655f 7072 6f63 5f63 6d64 6c69 6e65 0a20  e_proc_cmdline. 
│ │ │ +0019d730: 2020 2029 2061 6e64 206e 6f74 2028 2061     ) and not ( a
│ │ │ +0019d740: 6e73 6962 6c65 5f76 6972 7475 616c 697a  nsible_virtualiz
│ │ │ +0019d750: 6174 696f 6e5f 7479 7065 2069 6e20 5b22  ation_type in ["
│ │ │ +0019d760: 646f 636b 6572 222c 2022 6c78 6322 2c20  docker", "lxc", 
│ │ │ +0019d770: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61  "openvz", "podma
│ │ │ +0019d780: 6e22 2c0a 2020 2020 2263 6f6e 7461 696e  n",.    "contain
│ │ │ +0019d790: 6572 225d 2029 2029 0a20 202d 2027 222f  er"] ) ).  - '"/
│ │ │ +0019d7a0: 686f 6d65 2220 696e 2061 6e73 6962 6c65  home" in ansible
│ │ │ +0019d7b0: 5f6d 6f75 6e74 7320 7c20 6d61 7028 6174  _mounts | map(at
│ │ │ +0019d7c0: 7472 6962 7574 653d 226d 6f75 6e74 2229  tribute="mount")
│ │ │ +0019d7d0: 207c 206c 6973 7427 0a20 202d 206d 6f75   | list'.  - mou
│ │ │ +0019d7e0: 6e74 5f69 6e66 6f20 6973 2064 6566 696e  nt_info is defin
│ │ │ +0019d7f0: 6564 0a20 202d 2028 6465 7669 6365 5f6e  ed.  - (device_n
│ │ │ +0019d800: 616d 652e 7374 646f 7574 2069 7320 6465  ame.stdout is de
│ │ │ +0019d810: 6669 6e65 6420 616e 6420 2864 6576 6963  fined and (devic
│ │ │ +0019d820: 655f 6e61 6d65 2e73 7464 6f75 7420 7c20  e_name.stdout | 
│ │ │ +0019d830: 6c65 6e67 7468 2026 6774 3b20 3029 2920  length > 0)) 
│ │ │ +0019d840: 6f72 2028 222d 2d66 7374 6162 220a 2020  or ("--fstab".  
│ │ │ +0019d850: 2020 7c20 6c65 6e67 7468 203d 3d20 3029    | length == 0)
│ │ │ +0019d860: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ +0019d870: 542d 3830 302d 3533 2d41 432d 360a 2020  T-800-53-AC-6.  
│ │ │ +0019d880: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ +0019d890: 2d36 2831 290a 2020 2d20 4e49 5354 2d38  -6(1).  - NIST-8
│ │ │ +0019d8a0: 3030 2d35 332d 434d 2d36 2861 290a 2020  00-53-CM-6(a).  
│ │ │ +0019d8b0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +0019d8c0: 2d37 2861 290a 2020 2d20 4e49 5354 2d38  -7(a).  - NIST-8
│ │ │ +0019d8d0: 3030 2d35 332d 434d 2d37 2862 290a 2020  00-53-CM-7(b).  
│ │ │ +0019d8e0: 2d20 4e49 5354 2d38 3030 2d35 332d 4d50  - NIST-800-53-MP
│ │ │ +0019d8f0: 2d37 0a20 202d 2063 6f6e 6669 6775 7265  -7.  - configure
│ │ │ +0019d900: 5f73 7472 6174 6567 790a 2020 2d20 6869  _strategy.  - hi
│ │ │ +0019d910: 6768 5f64 6973 7275 7074 696f 6e0a 2020  gh_disruption.  
│ │ │ +0019d920: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ +0019d930: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ +0019d940: 7269 7479 0a20 202d 206d 6f75 6e74 5f6f  rity.  - mount_o
│ │ │ +0019d950: 7074 696f 6e5f 686f 6d65 5f6e 6f73 7569  ption_home_nosui
│ │ │ +0019d960: 640a 2020 2d20 6e6f 5f72 6562 6f6f 745f  d.  - no_reboot_
│ │ │ +0019d970: 6e65 6564 6564 0a3c 2f63 6f64 653e 3c2f  needed.Remediati
│ │ │ +0019da30: 6f6e 2053 6865 6c6c 2073 6372 6970 7420  on Shell script 
│ │ │ +0019da40: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620  ...
< │ │ │ +0019dae0: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
Compl │ │ │ +0019c2d0: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ +0019c2e0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ +0019c300: 2f74 683e 3c74 643e 6869 6768 3c2f 7464 /th>high
Re │ │ │ +0019c320: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +0019c330: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:configure │ │ │ +0019c360: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Reboot:false
# Remedia
│ │ │ +0019db00: 7469 6f6e 2069 7320 6170 706c 6963 6162  tion is applicab
│ │ │ +0019db10: 6c65 206f 6e6c 7920 696e 2063 6572 7461  le only in certa
│ │ │ +0019db20: 696e 2070 6c61 7466 6f72 6d73 0a69 6620  in platforms.if 
│ │ │ +0019db30: 2820 2120 2820 7b20 7270 6d20 2d2d 7175  ( ! ( { rpm --qu
│ │ │ +0019db40: 6965 7420 2d71 206b 6572 6e65 6c20 3b7d  iet -q kernel ;}
│ │ │ +0019db50: 2026 616d 703b 2661 6d70 3b20 7b20 7270   && { rp
│ │ │ +0019db60: 6d20 2d2d 7175 6965 7420 2d71 2062 6f6f  m --quiet -q boo
│ │ │ +0019db70: 7463 203b 7d20 2661 6d70 3b26 616d 703b  tc ;} &&
│ │ │ +0019db80: 207b 2021 2072 706d 202d 2d71 7569 6574   { ! rpm --quiet
│ │ │ +0019db90: 202d 7120 6f70 656e 7368 6966 742d 6b75   -q openshift-ku
│ │ │ +0019dba0: 6265 6c65 7420 3b7d 2026 616d 703b 2661  belet ;} &&a
│ │ │ +0019dbb0: 6d70 3b20 285b 202d 6620 2f72 756e 2f6f  mp; ([ -f /run/o
│ │ │ +0019dbc0: 7374 7265 652d 626f 6f74 6564 205d 207c  stree-booted ] |
│ │ │ +0019dbd0: 7c20 5b20 2d4c 202f 6f73 7472 6565 205d  | [ -L /ostree ]
│ │ │ +0019dbe0: 2920 2920 2661 6d70 3b26 616d 703b 2021  ) ) && !
│ │ │ +0019dbf0: 2028 205b 202d 6620 2f2e 646f 636b 6572   ( [ -f /.docker
│ │ │ +0019dc00: 656e 7620 5d20 7c7c 205b 202d 6620 2f72  env ] || [ -f /r
│ │ │ +0019dc10: 756e 2f2e 636f 6e74 6169 6e65 7265 6e76  un/.containerenv
│ │ │ +0019dc20: 205d 2029 2029 2026 616d 703b 2661 6d70   ] ) ) &&
│ │ │ +0019dc30: 3b20 7b20 2820 6669 6e64 6d6e 7420 2d2d  ; { ( findmnt --
│ │ │ +0019dc40: 6b65 726e 656c 2022 2f68 6f6d 6522 2026  kernel "/home" &
│ │ │ +0019dc50: 6774 3b20 2f64 6576 2f6e 756c 6c20 7c7c  gt; /dev/null ||
│ │ │ +0019dc60: 2066 696e 646d 6e74 202d 2d66 7374 6162   findmnt --fstab
│ │ │ +0019dc70: 2022 2f68 6f6d 6522 2026 6774 3b20 2f64   "/home" > /d
│ │ │ +0019dc80: 6576 2f6e 756c 6c20 293b 207d 3b20 7468  ev/null ); }; th
│ │ │ +0019dc90: 656e 0a0a 6675 6e63 7469 6f6e 2070 6572  en..function per
│ │ │ +0019dca0: 666f 726d 5f72 656d 6564 6961 7469 6f6e  form_remediation
│ │ │ +0019dcb0: 207b 0a0a 2020 2020 0a20 2020 2020 2020   {..    .       
│ │ │ +0019dcc0: 2023 2074 6865 206d 6f75 6e74 2070 6f69   # the mount poi
│ │ │ +0019dcd0: 6e74 202f 686f 6d65 2068 6173 2074 6f20  nt /home has to 
│ │ │ +0019dce0: 6265 2064 6566 696e 6564 2069 6e20 2f65  be defined in /e
│ │ │ +0019dcf0: 7463 2f66 7374 6162 0a20 2020 2020 2020  tc/fstab.       
│ │ │ +0019dd00: 2023 2062 6566 6f72 6520 7468 6973 2072   # before this r
│ │ │ +0019dd10: 656d 6564 6961 7469 6f6e 2063 616e 2062  emediation can b
│ │ │ +0019dd20: 6520 6578 6563 7574 6564 2e20 496e 2063  e executed. In c
│ │ │ +0019dd30: 6173 6520 6974 2069 7320 6e6f 7420 6465  ase it is not de
│ │ │ +0019dd40: 6669 6e65 642c 2074 6865 0a20 2020 2020  fined, the.     
│ │ │ +0019dd50: 2020 2023 2072 656d 6564 6961 7469 6f6e     # remediation
│ │ │ +0019dd60: 2061 626f 7274 7320 616e 6420 6e6f 2063   aborts and no c
│ │ │ +0019dd70: 6861 6e67 6573 2072 6567 6172 6469 6e67  hanges regarding
│ │ │ +0019dd80: 2074 6865 206d 6f75 6e74 2070 6f69 6e74   the mount point
│ │ │ +0019dd90: 2061 7265 2064 6f6e 652e 0a20 2020 2020   are done..     
│ │ │ +0019dda0: 2020 206d 6f75 6e74 5f70 6f69 6e74 5f6d     mount_point_m
│ │ │ +0019ddb0: 6174 6368 5f72 6567 6578 703d 2224 2870  atch_regexp="$(p
│ │ │ +0019ddc0: 7269 6e74 6620 225e 5b5b 3a73 7061 6365  rintf "^[[:space
│ │ │ +0019ddd0: 3a5d 5d2a 5b5e 235d 2e2a 5b5b 3a73 7061  :]]*[^#].*[[:spa
│ │ │ +0019dde0: 6365 3a5d 5d25 735b 5b3a 7370 6163 653a  ce:]]%s[[:space:
│ │ │ +0019ddf0: 5d5d 2220 222f 686f 6d65 2229 220a 0a20  ]]" "/home")".. 
│ │ │ +0019de00: 2020 2067 7265 7020 2224 6d6f 756e 745f     grep "$mount_
│ │ │ +0019de10: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ +0019de20: 7870 2220 2d71 202f 6574 632f 6673 7461  xp" -q /etc/fsta
│ │ │ +0019de30: 6220 5c0a 2020 2020 2020 2020 7c7c 207b  b \.        || {
│ │ │ +0019de40: 2065 6368 6f20 2254 6865 206d 6f75 6e74   echo "The mount
│ │ │ +0019de50: 2070 6f69 6e74 2027 2f68 6f6d 6527 2069   point '/home' i
│ │ │ +0019de60: 7320 6e6f 7420 6576 656e 2069 6e20 2f65  s not even in /e
│ │ │ +0019de70: 7463 2f66 7374 6162 2c20 736f 2077 6520  tc/fstab, so we 
│ │ │ +0019de80: 6361 6e27 7420 7365 7420 7570 206d 6f75  can't set up mou
│ │ │ +0019de90: 6e74 206f 7074 696f 6e73 2220 2667 743b  nt options" >
│ │ │ +0019dea0: 2661 6d70 3b32 3b0a 2020 2020 2020 2020  &2;.        
│ │ │ +0019deb0: 2020 2020 2020 2020 6563 686f 2022 4e6f          echo "No
│ │ │ +0019dec0: 7420 7265 6d65 6469 6174 696e 672c 2062  t remediating, b
│ │ │ +0019ded0: 6563 6175 7365 2074 6865 7265 2069 7320  ecause there is 
│ │ │ +0019dee0: 6e6f 2072 6563 6f72 6420 6f66 202f 686f  no record of /ho
│ │ │ +0019def0: 6d65 2069 6e20 2f65 7463 2f66 7374 6162  me in /etc/fstab
│ │ │ +0019df00: 2220 2667 743b 2661 6d70 3b32 3b20 7265  " >&2; re
│ │ │ +0019df10: 7475 726e 2031 3b20 7d0a 2020 2020 0a0a  turn 1; }.    ..
│ │ │ +0019df20: 0a20 2020 206d 6f75 6e74 5f70 6f69 6e74  .    mount_point
│ │ │ +0019df30: 5f6d 6174 6368 5f72 6567 6578 703d 2224  _match_regexp="$
│ │ │ +0019df40: 2870 7269 6e74 6620 225e 5b5b 3a73 7061  (printf "^[[:spa
│ │ │ +0019df50: 6365 3a5d 5d2a 5b5e 235d 2e2a 5b5b 3a73  ce:]]*[^#].*[[:s
│ │ │ +0019df60: 7061 6365 3a5d 5d25 735b 5b3a 7370 6163  pace:]]%s[[:spac
│ │ │ +0019df70: 653a 5d5d 2220 2f68 6f6d 6529 220a 0a20  e:]]" /home)".. 
│ │ │ +0019df80: 2020 2023 2049 6620 7468 6520 6d6f 756e     # If the moun
│ │ │ +0019df90: 7420 706f 696e 7420 6973 206e 6f74 2069  t point is not i
│ │ │ +0019dfa0: 6e20 2f65 7463 2f66 7374 6162 2c20 6765  n /etc/fstab, ge
│ │ │ +0019dfb0: 7420 7072 6576 696f 7573 206d 6f75 6e74  t previous mount
│ │ │ +0019dfc0: 206f 7074 696f 6e73 2066 726f 6d20 2f65   options from /e
│ │ │ +0019dfd0: 7463 2f6d 7461 620a 2020 2020 6966 2021  tc/mtab.    if !
│ │ │ +0019dfe0: 2067 7265 7020 2d71 2022 246d 6f75 6e74   grep -q "$mount
│ │ │ +0019dff0: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ +0019e000: 6578 7022 202f 6574 632f 6673 7461 623b  exp" /etc/fstab;
│ │ │ +0019e010: 2074 6865 6e0a 2020 2020 2020 2020 2320   then.        # 
│ │ │ +0019e020: 7275 6e74 696d 6520 6f70 7473 2077 6974  runtime opts wit
│ │ │ +0019e030: 686f 7574 2073 6f6d 6520 6175 746f 6d61  hout some automa
│ │ │ +0019e040: 7469 6320 6b65 726e 656c 2f75 7365 7273  tic kernel/users
│ │ │ +0019e050: 7061 6365 2d61 6464 6564 2064 6566 6175  pace-added defau
│ │ │ +0019e060: 6c74 730a 2020 2020 2020 2020 7072 6576  lts.        prev
│ │ │ +0019e070: 696f 7573 5f6d 6f75 6e74 5f6f 7074 733d  ious_mount_opts=
│ │ │ +0019e080: 2428 6772 6570 2022 246d 6f75 6e74 5f70  $(grep "$mount_p
│ │ │ +0019e090: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ +0019e0a0: 7022 202f 6574 632f 6d74 6162 207c 2068  p" /etc/mtab | h
│ │ │ +0019e0b0: 6561 6420 2d31 207c 2020 6177 6b20 277b  ead -1 |  awk '{
│ │ │ +0019e0c0: 7072 696e 7420 2434 7d27 205c 0a20 2020  print $4}' \.   
│ │ │ +0019e0d0: 2020 2020 2020 2020 2020 2020 2020 2020                  
│ │ │ +0019e0e0: 207c 2073 6564 202d 4520 2273 2f28 7277   | sed -E "s/(rw
│ │ │ +0019e0f0: 7c64 6566 6175 6c74 737c 7365 636c 6162  |defaults|seclab
│ │ │ +0019e100: 656c 7c6e 6f73 7569 6429 282c 7c24 292f  el|nosuid)(,|$)/
│ │ │ +0019e110: 2f67 3b73 2f2c 242f 2f22 290a 2020 2020  /g;s/,$//").    
│ │ │ +0019e120: 2020 2020 5b20 2224 7072 6576 696f 7573      [ "$previous
│ │ │ +0019e130: 5f6d 6f75 6e74 5f6f 7074 7322 205d 2026  _mount_opts" ] &
│ │ │ +0019e140: 616d 703b 2661 6d70 3b20 7072 6576 696f  amp;& previo
│ │ │ +0019e150: 7573 5f6d 6f75 6e74 5f6f 7074 732b 3d22  us_mount_opts+="
│ │ │ +0019e160: 2c22 0a20 2020 2020 2020 2023 2049 6e20  ,".        # In 
│ │ │ +0019e170: 6973 6f39 3636 3020 6669 6c65 7379 7374  iso9660 filesyst
│ │ │ +0019e180: 656d 7320 6d74 6162 2063 6f75 6c64 2064  ems mtab could d
│ │ │ +0019e190: 6573 6372 6962 6520 6120 2262 6c6f 636b  escribe a "block
│ │ │ +0019e1a0: 7369 7a65 2220 7661 6c75 652c 2074 6869  size" value, thi
│ │ │ +0019e1b0: 7320 7368 6f75 6c64 2062 6520 7265 666c  s should be refl
│ │ │ +0019e1c0: 6563 7465 6420 696e 0a20 2020 2020 2020  ected in.       
│ │ │ +0019e1d0: 2023 2066 7374 6162 2061 7320 2262 6c6f   # fstab as "blo
│ │ │ +0019e1e0: 636b 222e 2020 5468 6520 6e65 7874 2076  ck".  The next v
│ │ │ +0019e1f0: 6172 6961 626c 6520 6973 2074 6f20 7361  ariable is to sa
│ │ │ +0019e200: 7469 7366 7920 7368 656c 6c63 6865 636b  tisfy shellcheck
│ │ │ +0019e210: 2053 4332 3035 302e 0a20 2020 2020 2020   SC2050..       
│ │ │ +0019e220: 2066 735f 7479 7065 3d22 220a 2020 2020   fs_type="".    
│ │ │ +0019e230: 2020 2020 6966 205b 2020 2224 6673 5f74      if [  "$fs_t
│ │ │ +0019e240: 7970 6522 203d 3d20 2269 736f 3936 3630  ype" == "iso9660
│ │ │ +0019e250: 2220 5d20 3b20 7468 656e 0a20 2020 2020  " ] ; then.     
│ │ │ +0019e260: 2020 2020 2020 2070 7265 7669 6f75 735f         previous_
│ │ │ +0019e270: 6d6f 756e 745f 6f70 7473 3d24 2873 6564  mount_opts=$(sed
│ │ │ +0019e280: 2027 732f 626c 6f63 6b73 697a 653d 2f62   's/blocksize=/b
│ │ │ +0019e290: 6c6f 636b 3d2f 2720 266c 743b 266c 743b  lock=/' <<
│ │ │ +0019e2a0: 266c 743b 2022 2470 7265 7669 6f75 735f  < "$previous_
│ │ │ +0019e2b0: 6d6f 756e 745f 6f70 7473 2229 0a20 2020  mount_opts").   
│ │ │ +0019e2c0: 2020 2020 2066 690a 2020 2020 2020 2020       fi.        
│ │ │ +0019e2d0: 6563 686f 2022 202f 686f 6d65 2020 6465  echo " /home  de
│ │ │ +0019e2e0: 6661 756c 7473 2c24 7b70 7265 7669 6f75  faults,${previou
│ │ │ +0019e2f0: 735f 6d6f 756e 745f 6f70 7473 7d6e 6f73  s_mount_opts}nos
│ │ │ +0019e300: 7569 6420 3020 3022 2026 6774 3b26 6774  uid 0 0" >>
│ │ │ +0019e310: 3b20 2f65 7463 2f66 7374 6162 0a20 2020  ; /etc/fstab.   
│ │ │ +0019e320: 2023 2049 6620 7468 6520 6d6f 756e 745f   # If the mount_
│ │ │ +0019e330: 6f70 7420 6f70 7469 6f6e 2069 7320 6e6f  opt option is no
│ │ │ +0019e340: 7420 616c 7265 6164 7920 696e 2074 6865  t already in the
│ │ │ +0019e350: 206d 6f75 6e74 2070 6f69 6e74 2773 202f   mount point's /
│ │ │ +0019e360: 6574 632f 6673 7461 6220 656e 7472 792c  etc/fstab entry,
│ │ │ +0019e370: 2061 6464 2069 740a 2020 2020 656c 6966   add it.    elif
│ │ │ +0019e380: 2021 2067 7265 7020 2224 6d6f 756e 745f   ! grep "$mount_
│ │ │ +0019e390: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ +0019e3a0: 7870 2220 2f65 7463 2f66 7374 6162 207c  xp" /etc/fstab |
│ │ │ +0019e3b0: 2067 7265 7020 2d71 2022 6e6f 7375 6964   grep -q "nosuid
│ │ │ +0019e3c0: 223b 2074 6865 6e0a 2020 2020 2020 2020  "; then.        
│ │ │ +0019e3d0: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ +0019e3e0: 7074 733d 2428 6772 6570 2022 246d 6f75  pts=$(grep "$mou
│ │ │ +0019e3f0: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ +0019e400: 6567 6578 7022 202f 6574 632f 6673 7461  egexp" /etc/fsta
│ │ │ +0019e410: 6220 7c20 6177 6b20 277b 7072 696e 7420  b | awk '{print 
│ │ │ +0019e420: 2434 7d27 290a 2020 2020 2020 2020 7365  $4}').        se
│ │ │ +0019e430: 6420 2d69 2022 737c 5c28 247b 6d6f 756e  d -i "s|\(${moun
│ │ │ +0019e440: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ +0019e450: 6765 7870 7d2e 2a24 7b70 7265 7669 6f75  gexp}.*${previou
│ │ │ +0019e460: 735f 6d6f 756e 745f 6f70 7473 7d5c 297c  s_mount_opts}\)|
│ │ │ +0019e470: 5c31 2c6e 6f73 7569 647c 2220 2f65 7463  \1,nosuid|" /etc
│ │ │ +0019e480: 2f66 7374 6162 0a20 2020 2066 690a 0a0a  /fstab.    fi...
│ │ │ +0019e490: 2020 2020 6966 206d 6b64 6972 202d 7020      if mkdir -p 
│ │ │ +0019e4a0: 222f 686f 6d65 223b 2074 6865 6e0a 2020  "/home"; then.  
│ │ │ +0019e4b0: 2020 2020 2020 6966 206d 6f75 6e74 706f        if mountpo
│ │ │ +0019e4c0: 696e 7420 2d71 2022 2f68 6f6d 6522 3b20  int -q "/home"; 
│ │ │ +0019e4d0: 7468 656e 0a20 2020 2020 2020 2020 2020  then.           
│ │ │ +0019e4e0: 206d 6f75 6e74 202d 6f20 7265 6d6f 756e   mount -o remoun
│ │ │ +0019e4f0: 7420 2d2d 7461 7267 6574 2022 2f68 6f6d  t --target "/hom
│ │ │ +0019e500: 6522 0a20 2020 2020 2020 2066 690a 2020  e".        fi.  
│ │ │ +0019e510: 2020 6669 0a7d 0a0a 7065 7266 6f72 6d5f    fi.}..perform_
│ │ │ +0019e520: 7265 6d65 6469 6174 696f 6e0a 0a65 6c73  remediation..els
│ │ │ +0019e530: 650a 2020 2020 2667 743b 2661 6d70 3b32  e.    >&2
│ │ │ +0019e540: 2065 6368 6f20 2752 656d 6564 6961 7469   echo 'Remediati
│ │ │ +0019e550: 6f6e 2069 7320 6e6f 7420 6170 706c 6963  on is not applic
│ │ │ +0019e560: 6162 6c65 2c20 6e6f 7468 696e 6720 7761  able, nothing wa
│ │ │ +0019e570: 7320 646f 6e65 270a 6669 0a3c 2f63 6f64  s done'.fi.
Remed │ │ │ +0019e630: 6961 7469 6f6e 2041 6e61 636f 6e64 6120 iation Anaconda │ │ │ +0019e640: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ +0019e650: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
< │ │ │ +0019e740: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
Com │ │ │ +0019e6d0: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ +0019e700: 3a3c 2f74 683e 3c74 643e 6869 6768 3c2f :high
│ │ │ +0019e720: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +0019e730: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +0019e750: 3c2f 7468 3e3c 7464 3e65 6e61 626c 653c enable< │ │ │ +0019e760: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
.par
│ │ │ +0019e780: 7420 2f68 6f6d 6520 2d2d 6d6f 756e 746f  t /home --mounto
│ │ │ +0019e790: 7074 696f 6e73 3d22 6e6f 7375 6964 220a  ptions="nosuid".
│ │ │  0019e7a0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
Remediation A │ │ │ -0019f820: 6e61 636f 6e64 6120 736e 6970 7065 7420 naconda snippet │ │ │ -0019f830: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
Complexity: │ │ │ -0019f8c0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ -0019f8e0: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:high │ │ │ -0019f900: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ -0019f910: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ -0019f930: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:enable
.part /tmp -
│ │ │ -0019f970: 2d6d 6f75 6e74 6f70 7469 6f6e 733d 226e  -mountoptions="n
│ │ │ -0019f980: 6f64 6576 220a 3c2f 636f 6465 3e3c 2f70  odev".

Remediatio │ │ │ -0019fa40: 6e20 416e 7369 626c 6520 736e 6970 7065 n Ansible snippe │ │ │ -0019fa50: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ -0019fad0: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ -0019fae0: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ -0019fb00: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ -0019fb10: 3c74 643e 6869 6768 3c2f 7464 3e3c 2f74 highReboot │ │ │ -0019fb30: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -0019fb40: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ -0019fb60: 7464 3e63 6f6e 6669 6775 7265 3c2f 7464 td>configure

- name: │ │ │ -0019fb90: 2047 6174 6865 7220 7468 6520 7061 636b Gather the pack │ │ │ -0019fba0: 6167 6520 6661 6374 730a 2020 7061 636b age facts. pack │ │ │ -0019fbb0: 6167 655f 6661 6374 733a 0a20 2020 206d age_facts:. m │ │ │ -0019fbc0: 616e 6167 6572 3a20 6175 746f 0a20 2074 anager: auto. t │ │ │ -0019fbd0: 6167 733a 0a20 202d 204e 4953 542d 3830 ags:. - NIST-80 │ │ │ -0019fbe0: 302d 3533 2d41 432d 360a 2020 2d20 4e49 0-53-AC-6. - NI │ │ │ -0019fbf0: 5354 2d38 3030 2d35 332d 4143 2d36 2831 ST-800-53-AC-6(1 │ │ │ -0019fc00: 290a 2020 2d20 4e49 5354 2d38 3030 2d35 ). - NIST-800-5 │ │ │ -0019fc10: 332d 434d 2d36 2861 290a 2020 2d20 4e49 3-CM-6(a). - NI │ │ │ -0019fc20: 5354 2d38 3030 2d35 332d 434d 2d37 2861 ST-800-53-CM-7(a │ │ │ -0019fc30: 290a 2020 2d20 4e49 5354 2d38 3030 2d35 ). - NIST-800-5 │ │ │ -0019fc40: 332d 434d 2d37 2862 290a 2020 2d20 4e49 3-CM-7(b). - NI │ │ │ -0019fc50: 5354 2d38 3030 2d35 332d 4d50 2d37 0a20 ST-800-53-MP-7. │ │ │ -0019fc60: 202d 2063 6f6e 6669 6775 7265 5f73 7472 - configure_str │ │ │ -0019fc70: 6174 6567 790a 2020 2d20 6869 6768 5f64 ategy. - high_d │ │ │ -0019fc80: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f isruption. - lo │ │ │ -0019fc90: 775f 636f 6d70 6c65 7869 7479 0a20 202d w_complexity. - │ │ │ -0019fca0: 206d 6564 6975 6d5f 7365 7665 7269 7479 medium_severity │ │ │ -0019fcb0: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f . - mount_optio │ │ │ -0019fcc0: 6e5f 746d 705f 6e6f 6465 760a 2020 2d20 n_tmp_nodev. - │ │ │ -0019fcd0: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564 no_reboot_needed │ │ │ -0019fce0: 0a0a 2d20 6e61 6d65 3a20 2741 6464 206e ..- name: 'Add n │ │ │ -0019fcf0: 6f64 6576 204f 7074 696f 6e20 746f 202f odev Option to / │ │ │ -0019fd00: 746d 703a 2043 6865 636b 2069 6e66 6f72 tmp: Check infor │ │ │ -0019fd10: 6d61 7469 6f6e 2061 7373 6f63 6961 7465 mation associate │ │ │ -0019fd20: 6420 746f 206d 6f75 6e74 706f 696e 7427 d to mountpoint' │ │ │ -0019fd30: 0a20 2061 6e73 6962 6c65 2e62 7569 6c74 . ansible.built │ │ │ -0019fd40: 696e 2e63 6f6d 6d61 6e64 3a20 6669 6e64 in.command: find │ │ │ -0019fd50: 6d6e 7420 2d2d 6673 7461 6220 272f 746d mnt --fstab '/tm │ │ │ -0019fd60: 7027 0a20 2072 6567 6973 7465 723a 2064 p'. register: d │ │ │ -0019fd70: 6576 6963 655f 6e61 6d65 0a20 2066 6169 evice_name. fai │ │ │ -0019fd80: 6c65 645f 7768 656e 3a20 6465 7669 6365 led_when: device │ │ │ -0019fd90: 5f6e 616d 652e 7263 2026 6774 3b20 310a _name.rc > 1. │ │ │ -0019fda0: 2020 6368 616e 6765 645f 7768 656e 3a20 changed_when: │ │ │ -0019fdb0: 6661 6c73 650a 2020 6368 6563 6b5f 6d6f false. check_mo │ │ │ -0019fdc0: 6465 3a20 6661 6c73 650a 2020 7768 656e de: false. when │ │ │ -0019fdd0: 3a0a 2020 2d20 2820 6e6f 7420 2820 226b :. - ( not ( "k │ │ │ -0019fde0: 6572 6e65 6c22 2069 6e20 616e 7369 626c ernel" in ansibl │ │ │ -0019fdf0: 655f 6661 6374 732e 7061 636b 6167 6573 e_facts.packages │ │ │ -0019fe00: 2061 6e64 2022 626f 6f74 6322 2069 6e20 and "bootc" in │ │ │ -0019fe10: 616e 7369 626c 655f 6661 6374 732e 7061 ansible_facts.pa │ │ │ -0019fe20: 636b 6167 6573 0a20 2020 2061 6e64 206e ckages. and n │ │ │ -0019fe30: 6f74 2022 6f70 656e 7368 6966 742d 6b75 ot "openshift-ku │ │ │ -0019fe40: 6265 6c65 7422 2069 6e20 616e 7369 626c belet" in ansibl │ │ │ -0019fe50: 655f 6661 6374 732e 7061 636b 6167 6573 e_facts.packages │ │ │ -0019fe60: 2061 6e64 2022 6f73 7472 6565 2220 696e and "ostree" in │ │ │ -0019fe70: 2061 6e73 6962 6c65 5f70 726f 635f 636d ansible_proc_cm │ │ │ -0019fe80: 646c 696e 650a 2020 2020 2920 616e 6420 dline. ) and │ │ │ -0019fe90: 6e6f 7420 2820 616e 7369 626c 655f 7669 not ( ansible_vi │ │ │ -0019fea0: 7274 7561 6c69 7a61 7469 6f6e 5f74 7970 rtualization_typ │ │ │ -0019feb0: 6520 696e 205b 2264 6f63 6b65 7222 2c20 e in ["docker", │ │ │ -0019fec0: 226c 7863 222c 2022 6f70 656e 767a 222c "lxc", "openvz", │ │ │ -0019fed0: 2022 706f 646d 616e 222c 0a20 2020 2022 "podman",. " │ │ │ -0019fee0: 636f 6e74 6169 6e65 7222 5d20 2920 290a container"] ) ). │ │ │ -0019fef0: 2020 2d20 2722 2f74 6d70 2220 696e 2061 - '"/tmp" in a │ │ │ -0019ff00: 6e73 6962 6c65 5f6d 6f75 6e74 7320 7c20 nsible_mounts | │ │ │ -0019ff10: 6d61 7028 6174 7472 6962 7574 653d 226d map(attribute="m │ │ │ -0019ff20: 6f75 6e74 2229 207c 206c 6973 7427 0a20 ount") | list'. │ │ │ -0019ff30: 2074 6167 733a 0a20 202d 204e 4953 542d tags:. - NIST- │ │ │ -0019ff40: 3830 302d 3533 2d41 432d 360a 2020 2d20 800-53-AC-6. - │ │ │ -0019ff50: 4e49 5354 2d38 3030 2d35 332d 4143 2d36 NIST-800-53-AC-6 │ │ │ -0019ff60: 2831 290a 2020 2d20 4e49 5354 2d38 3030 (1). - NIST-800 │ │ │ -0019ff70: 2d35 332d 434d 2d36 2861 290a 2020 2d20 -53-CM-6(a). - │ │ │ -0019ff80: 4e49 5354 2d38 3030 2d35 332d 434d 2d37 NIST-800-53-CM-7 │ │ │ -0019ff90: 2861 290a 2020 2d20 4e49 5354 2d38 3030 (a). - NIST-800 │ │ │ -0019ffa0: 2d35 332d 434d 2d37 2862 290a 2020 2d20 -53-CM-7(b). - │ │ │ -0019ffb0: 4e49 5354 2d38 3030 2d35 332d 4d50 2d37 NIST-800-53-MP-7 │ │ │ -0019ffc0: 0a20 202d 2063 6f6e 6669 6775 7265 5f73 . - configure_s │ │ │ -0019ffd0: 7472 6174 6567 790a 2020 2d20 6869 6768 trategy. - high │ │ │ -0019ffe0: 5f64 6973 7275 7074 696f 6e0a 2020 2d20 _disruption. - │ │ │ -0019fff0: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20 low_complexity. │ │ │ -001a0000: 202d 206d 6564 6975 6d5f 7365 7665 7269 - medium_severi │ │ │ -001a0010: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074 ty. - mount_opt │ │ │ -001a0020: 696f 6e5f 746d 705f 6e6f 6465 760a 2020 ion_tmp_nodev. │ │ │ -001a0030: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564 - no_reboot_need │ │ │ -001a0040: 6564 0a0a 2d20 6e61 6d65 3a20 2741 6464 ed..- name: 'Add │ │ │ -001a0050: 206e 6f64 6576 204f 7074 696f 6e20 746f nodev Option to │ │ │ -001a0060: 202f 746d 703a 2043 7265 6174 6520 6d6f /tmp: Create mo │ │ │ -001a0070: 756e 745f 696e 666f 2064 6963 7469 6f6e unt_info diction │ │ │ -001a0080: 6172 7920 7661 7269 6162 6c65 270a 2020 ary variable'. │ │ │ -001a0090: 7365 745f 6661 6374 3a0a 2020 2020 6d6f set_fact:. mo │ │ │ -001a00a0: 756e 745f 696e 666f 3a20 277b 7b20 6d6f unt_info: '{{ mo │ │ │ -001a00b0: 756e 745f 696e 666f 7c64 6566 6175 6c74 unt_info|default │ │ │ -001a00c0: 287b 7d29 7c63 6f6d 6269 6e65 287b 6974 ({})|combine({it │ │ │ -001a00d0: 656d 2e30 3a20 6974 656d 2e31 7d29 207d em.0: item.1}) } │ │ │ -001a00e0: 7d27 0a20 2077 6974 685f 746f 6765 7468 }'. with_togeth │ │ │ -001a00f0: 6572 3a0a 2020 2d20 277b 7b20 6465 7669 er:. - '{{ devi │ │ │ -001a0100: 6365 5f6e 616d 652e 7374 646f 7574 5f6c ce_name.stdout_l │ │ │ -001a0110: 696e 6573 5b30 5d2e 7370 6c69 7428 2920 ines[0].split() │ │ │ -001a0120: 7c20 6d61 7028 2727 6c6f 7765 7227 2729 | map(''lower'') │ │ │ -001a0130: 207c 206c 6973 7420 7d7d 270a 2020 2d20 | list }}'. - │ │ │ -001a0140: 277b 7b20 6465 7669 6365 5f6e 616d 652e '{{ device_name. │ │ │ -001a0150: 7374 646f 7574 5f6c 696e 6573 5b31 5d2e stdout_lines[1]. │ │ │ -001a0160: 7370 6c69 7428 2920 7c20 6c69 7374 207d split() | list } │ │ │ -001a0170: 7d27 0a20 2077 6865 6e3a 0a20 202d 2028 }'. when:. - ( │ │ │ -001a0180: 206e 6f74 2028 2022 6b65 726e 656c 2220 not ( "kernel" │ │ │ -001a0190: 696e 2061 6e73 6962 6c65 5f66 6163 7473 in ansible_facts │ │ │ -001a01a0: 2e70 6163 6b61 6765 7320 616e 6420 2262 .packages and "b │ │ │ -001a01b0: 6f6f 7463 2220 696e 2061 6e73 6962 6c65 ootc" in ansible │ │ │ -001a01c0: 5f66 6163 7473 2e70 6163 6b61 6765 730a _facts.packages. │ │ │ -001a01d0: 2020 2020 616e 6420 6e6f 7420 226f 7065 and not "ope │ │ │ -001a01e0: 6e73 6869 6674 2d6b 7562 656c 6574 2220 nshift-kubelet" │ │ │ -001a01f0: 696e 2061 6e73 6962 6c65 5f66 6163 7473 in ansible_facts │ │ │ -001a0200: 2e70 6163 6b61 6765 7320 616e 6420 226f .packages and "o │ │ │ -001a0210: 7374 7265 6522 2069 6e20 616e 7369 626c stree" in ansibl │ │ │ -001a0220: 655f 7072 6f63 5f63 6d64 6c69 6e65 0a20 e_proc_cmdline. │ │ │ -001a0230: 2020 2029 2061 6e64 206e 6f74 2028 2061 ) and not ( a │ │ │ -001a0240: 6e73 6962 6c65 5f76 6972 7475 616c 697a nsible_virtualiz │ │ │ -001a0250: 6174 696f 6e5f 7479 7065 2069 6e20 5b22 ation_type in [" │ │ │ -001a0260: 646f 636b 6572 222c 2022 6c78 6322 2c20 docker", "lxc", │ │ │ -001a0270: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61 "openvz", "podma │ │ │ -001a0280: 6e22 2c0a 2020 2020 2263 6f6e 7461 696e n",. "contain │ │ │ -001a0290: 6572 225d 2029 2029 0a20 202d 2027 222f er"] ) ). - '"/ │ │ │ -001a02a0: 746d 7022 2069 6e20 616e 7369 626c 655f tmp" in ansible_ │ │ │ -001a02b0: 6d6f 756e 7473 207c 206d 6170 2861 7474 mounts | map(att │ │ │ -001a02c0: 7269 6275 7465 3d22 6d6f 756e 7422 2920 ribute="mount") │ │ │ -001a02d0: 7c20 6c69 7374 270a 2020 2d20 6465 7669 | list'. - devi │ │ │ -001a02e0: 6365 5f6e 616d 652e 7374 646f 7574 2069 ce_name.stdout i │ │ │ -001a02f0: 7320 6465 6669 6e65 6420 616e 6420 6465 s defined and de │ │ │ -001a0300: 7669 6365 5f6e 616d 652e 7374 646f 7574 vice_name.stdout │ │ │ -001a0310: 5f6c 696e 6573 2069 7320 6465 6669 6e65 _lines is define │ │ │ -001a0320: 640a 2020 2d20 2864 6576 6963 655f 6e61 d. - (device_na │ │ │ -001a0330: 6d65 2e73 7464 6f75 7420 7c20 6c65 6e67 me.stdout | leng │ │ │ -001a0340: 7468 2026 6774 3b20 3029 0a20 2074 6167 th > 0). tag │ │ │ -001a0350: 733a 0a20 202d 204e 4953 542d 3830 302d s:. - NIST-800- │ │ │ -001a0360: 3533 2d41 432d 360a 2020 2d20 4e49 5354 53-AC-6. - NIST │ │ │ -001a0370: 2d38 3030 2d35 332d 4143 2d36 2831 290a -800-53-AC-6(1). │ │ │ -001a0380: 2020 2d20 4e49 5354 2d38 3030 2d35 332d - NIST-800-53- │ │ │ -001a0390: 434d 2d36 2861 290a 2020 2d20 4e49 5354 CM-6(a). - NIST │ │ │ -001a03a0: 2d38 3030 2d35 332d 434d 2d37 2861 290a -800-53-CM-7(a). │ │ │ -001a03b0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d - NIST-800-53- │ │ │ -001a03c0: 434d 2d37 2862 290a 2020 2d20 4e49 5354 CM-7(b). - NIST │ │ │ -001a03d0: 2d38 3030 2d35 332d 4d50 2d37 0a20 202d -800-53-MP-7. - │ │ │ -001a03e0: 2063 6f6e 6669 6775 7265 5f73 7472 6174 configure_strat │ │ │ -001a03f0: 6567 790a 2020 2d20 6869 6768 5f64 6973 egy. - high_dis │ │ │ -001a0400: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f ruption. - low_ │ │ │ -001a0410: 636f 6d70 6c65 7869 7479 0a20 202d 206d complexity. - m │ │ │ -001a0420: 6564 6975 6d5f 7365 7665 7269 7479 0a20 edium_severity. │ │ │ -001a0430: 202d 206d 6f75 6e74 5f6f 7074 696f 6e5f - mount_option_ │ │ │ -001a0440: 746d 705f 6e6f 6465 760a 2020 2d20 6e6f tmp_nodev. - no │ │ │ -001a0450: 5f72 6562 6f6f 745f 6e65 6564 6564 0a0a _reboot_needed.. │ │ │ -001a0460: 2d20 6e61 6d65 3a20 2741 6464 206e 6f64 - name: 'Add nod │ │ │ -001a0470: 6576 204f 7074 696f 6e20 746f 202f 746d ev Option to /tm │ │ │ -001a0480: 703a 2049 6620 2f74 6d70 206e 6f74 206d p: If /tmp not m │ │ │ -001a0490: 6f75 6e74 6564 2c20 6372 6166 7420 6d6f ounted, craft mo │ │ │ -001a04a0: 756e 745f 696e 666f 206d 616e 7561 6c6c unt_info manuall │ │ │ -001a04b0: 7927 0a20 2073 6574 5f66 6163 743a 0a20 y'. set_fact:. │ │ │ -001a04c0: 2020 206d 6f75 6e74 5f69 6e66 6f3a 2027 mount_info: ' │ │ │ -001a04d0: 7b7b 206d 6f75 6e74 5f69 6e66 6f7c 6465 {{ mount_info|de │ │ │ -001a04e0: 6661 756c 7428 7b7d 297c 636f 6d62 696e fault({})|combin │ │ │ -001a04f0: 6528 7b69 7465 6d2e 303a 2069 7465 6d2e e({item.0: item. │ │ │ -001a0500: 317d 2920 7d7d 270a 2020 7769 7468 5f74 1}) }}'. with_t │ │ │ -001a0510: 6f67 6574 6865 723a 0a20 202d 202d 2074 ogether:. - - t │ │ │ -001a0520: 6172 6765 740a 2020 2020 2d20 736f 7572 arget. - sour │ │ │ -001a0530: 6365 0a20 2020 202d 2066 7374 7970 650a ce. - fstype. │ │ │ -001a0540: 2020 2020 2d20 6f70 7469 6f6e 730a 2020 - options. │ │ │ -001a0550: 2d20 2d20 2f74 6d70 0a20 2020 202d 2027 - - /tmp. - ' │ │ │ -001a0560: 270a 2020 2020 2d20 2727 0a20 2020 202d '. - ''. - │ │ │ -001a0570: 2064 6566 6175 6c74 730a 2020 7768 656e defaults. when │ │ │ -001a0580: 3a0a 2020 2d20 2820 6e6f 7420 2820 226b :. - ( not ( "k │ │ │ -001a0590: 6572 6e65 6c22 2069 6e20 616e 7369 626c ernel" in ansibl │ │ │ -001a05a0: 655f 6661 6374 732e 7061 636b 6167 6573 e_facts.packages │ │ │ -001a05b0: 2061 6e64 2022 626f 6f74 6322 2069 6e20 and "bootc" in │ │ │ -001a05c0: 616e 7369 626c 655f 6661 6374 732e 7061 ansible_facts.pa │ │ │ -001a05d0: 636b 6167 6573 0a20 2020 2061 6e64 206e ckages. and n │ │ │ -001a05e0: 6f74 2022 6f70 656e 7368 6966 742d 6b75 ot "openshift-ku │ │ │ -001a05f0: 6265 6c65 7422 2069 6e20 616e 7369 626c belet" in ansibl │ │ │ -001a0600: 655f 6661 6374 732e 7061 636b 6167 6573 e_facts.packages │ │ │ -001a0610: 2061 6e64 2022 6f73 7472 6565 2220 696e and "ostree" in │ │ │ -001a0620: 2061 6e73 6962 6c65 5f70 726f 635f 636d ansible_proc_cm │ │ │ -001a0630: 646c 696e 650a 2020 2020 2920 616e 6420 dline. ) and │ │ │ -001a0640: 6e6f 7420 2820 616e 7369 626c 655f 7669 not ( ansible_vi │ │ │ -001a0650: 7274 7561 6c69 7a61 7469 6f6e 5f74 7970 rtualization_typ │ │ │ -001a0660: 6520 696e 205b 2264 6f63 6b65 7222 2c20 e in ["docker", │ │ │ -001a0670: 226c 7863 222c 2022 6f70 656e 767a 222c "lxc", "openvz", │ │ │ -001a0680: 2022 706f 646d 616e 222c 0a20 2020 2022 "podman",. " │ │ │ -001a0690: 636f 6e74 6169 6e65 7222 5d20 2920 290a container"] ) ). │ │ │ -001a06a0: 2020 2d20 2722 2f74 6d70 2220 696e 2061 - '"/tmp" in a │ │ │ -001a06b0: 6e73 6962 6c65 5f6d 6f75 6e74 7320 7c20 nsible_mounts | │ │ │ -001a06c0: 6d61 7028 6174 7472 6962 7574 653d 226d map(attribute="m │ │ │ -001a06d0: 6f75 6e74 2229 207c 206c 6973 7427 0a20 ount") | list'. │ │ │ -001a06e0: 202d 2028 222d 2d66 7374 6162 2220 7c20 - ("--fstab" | │ │ │ -001a06f0: 6c65 6e67 7468 203d 3d20 3029 0a20 202d length == 0). - │ │ │ -001a0700: 2064 6576 6963 655f 6e61 6d65 2e73 7464 device_name.std │ │ │ -001a0710: 6f75 7420 6973 2064 6566 696e 6564 2061 out is defined a │ │ │ -001a0720: 6e64 2064 6576 6963 655f 6e61 6d65 2e73 nd device_name.s │ │ │ -001a0730: 7464 6f75 745f 6c69 6e65 7320 6973 2064 tdout_lines is d │ │ │ -001a0740: 6566 696e 6564 0a20 202d 2028 6465 7669 efined. - (devi │ │ │ -001a0750: 6365 5f6e 616d 652e 7374 646f 7574 207c ce_name.stdout | │ │ │ -001a0760: 206c 656e 6774 6820 3d3d 2030 290a 2020 length == 0). │ │ │ -001a0770: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38 tags:. - NIST-8 │ │ │ -001a0780: 3030 2d35 332d 4143 2d36 0a20 202d 204e 00-53-AC-6. - N │ │ │ -001a0790: 4953 542d 3830 302d 3533 2d41 432d 3628 IST-800-53-AC-6( │ │ │ -001a07a0: 3129 0a20 202d 204e 4953 542d 3830 302d 1). - NIST-800- │ │ │ -001a07b0: 3533 2d43 4d2d 3628 6129 0a20 202d 204e 53-CM-6(a). - N │ │ │ -001a07c0: 4953 542d 3830 302d 3533 2d43 4d2d 3728 IST-800-53-CM-7( │ │ │ -001a07d0: 6129 0a20 202d 204e 4953 542d 3830 302d a). - NIST-800- │ │ │ -001a07e0: 3533 2d43 4d2d 3728 6229 0a20 202d 204e 53-CM-7(b). - N │ │ │ -001a07f0: 4953 542d 3830 302d 3533 2d4d 502d 370a IST-800-53-MP-7. │ │ │ -001a0800: 2020 2d20 636f 6e66 6967 7572 655f 7374 - configure_st │ │ │ -001a0810: 7261 7465 6779 0a20 202d 2068 6967 685f rategy. - high_ │ │ │ -001a0820: 6469 7372 7570 7469 6f6e 0a20 202d 206c disruption. - l │ │ │ -001a0830: 6f77 5f63 6f6d 706c 6578 6974 790a 2020 ow_complexity. │ │ │ -001a0840: 2d20 6d65 6469 756d 5f73 6576 6572 6974 - medium_severit │ │ │ -001a0850: 790a 2020 2d20 6d6f 756e 745f 6f70 7469 y. - mount_opti │ │ │ -001a0860: 6f6e 5f74 6d70 5f6e 6f64 6576 0a20 202d on_tmp_nodev. - │ │ │ -001a0870: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465 no_reboot_neede │ │ │ -001a0880: 640a 0a2d 206e 616d 653a 2027 4164 6420 d..- name: 'Add │ │ │ -001a0890: 6e6f 6465 7620 4f70 7469 6f6e 2074 6f20 nodev Option to │ │ │ -001a08a0: 2f74 6d70 3a20 4d61 6b65 2073 7572 6520 /tmp: Make sure │ │ │ -001a08b0: 6e6f 6465 7620 6f70 7469 6f6e 2069 7320 nodev option is │ │ │ -001a08c0: 7061 7274 206f 6620 7468 6520 746f 202f part of the to / │ │ │ -001a08d0: 746d 7020 6f70 7469 6f6e 7327 0a20 2073 tmp options'. s │ │ │ -001a08e0: 6574 5f66 6163 743a 0a20 2020 206d 6f75 et_fact:. mou │ │ │ -001a08f0: 6e74 5f69 6e66 6f3a 2027 7b7b 206d 6f75 nt_info: '{{ mou │ │ │ -001a0900: 6e74 5f69 6e66 6f20 7c20 636f 6d62 696e nt_info | combin │ │ │ -001a0910: 6528 207b 2727 6f70 7469 6f6e 7327 273a e( {''options'': │ │ │ -001a0920: 2727 2727 7e28 6d6f 756e 745f 696e 666f ''''~(mount_info │ │ │ -001a0930: 2e6f 7074 696f 6e73 207c 0a20 2020 2020 .options |. │ │ │ -001a0940: 2064 6566 6175 6c74 2827 2727 2729 297e default(''''))~ │ │ │ -001a0950: 2827 272c 2727 2069 6620 286d 6f75 6e74 ('','' if (mount │ │ │ -001a0960: 5f69 6e66 6f2e 6f70 7469 6f6e 7320 7c20 _info.options | │ │ │ -001a0970: 6465 6661 756c 7428 2727 2727 2929 2065 default('''')) e │ │ │ -001a0980: 6c73 6520 2727 2727 297e 2727 6e6f 6465 lse '''')~''node │ │ │ -001a0990: 7627 270a 2020 2020 2020 7d29 207d 7d27 v''. }) }}' │ │ │ -001a09a0: 0a20 2077 6865 6e3a 0a20 202d 2028 206e . when:. - ( n │ │ │ -001a09b0: 6f74 2028 2022 6b65 726e 656c 2220 696e ot ( "kernel" in │ │ │ -001a09c0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70 ansible_facts.p │ │ │ -001a09d0: 6163 6b61 6765 7320 616e 6420 2262 6f6f ackages and "boo │ │ │ -001a09e0: 7463 2220 696e 2061 6e73 6962 6c65 5f66 tc" in ansible_f │ │ │ -001a09f0: 6163 7473 2e70 6163 6b61 6765 730a 2020 acts.packages. │ │ │ -001a0a00: 2020 616e 6420 6e6f 7420 226f 7065 6e73 and not "opens │ │ │ -001a0a10: 6869 6674 2d6b 7562 656c 6574 2220 696e hift-kubelet" in │ │ │ -001a0a20: 2061 6e73 6962 6c65 5f66 6163 7473 2e70 ansible_facts.p │ │ │ -001a0a30: 6163 6b61 6765 7320 616e 6420 226f 7374 ackages and "ost │ │ │ -001a0a40: 7265 6522 2069 6e20 616e 7369 626c 655f ree" in ansible_ │ │ │ -001a0a50: 7072 6f63 5f63 6d64 6c69 6e65 0a20 2020 proc_cmdline. │ │ │ -001a0a60: 2029 2061 6e64 206e 6f74 2028 2061 6e73 ) and not ( ans │ │ │ -001a0a70: 6962 6c65 5f76 6972 7475 616c 697a 6174 ible_virtualizat │ │ │ -001a0a80: 696f 6e5f 7479 7065 2069 6e20 5b22 646f ion_type in ["do │ │ │ -001a0a90: 636b 6572 222c 2022 6c78 6322 2c20 226f cker", "lxc", "o │ │ │ -001a0aa0: 7065 6e76 7a22 2c20 2270 6f64 6d61 6e22 penvz", "podman" │ │ │ -001a0ab0: 2c0a 2020 2020 2263 6f6e 7461 696e 6572 ,. "container │ │ │ -001a0ac0: 225d 2029 2029 0a20 202d 2027 222f 746d "] ) ). - '"/tm │ │ │ -001a0ad0: 7022 2069 6e20 616e 7369 626c 655f 6d6f p" in ansible_mo │ │ │ -001a0ae0: 756e 7473 207c 206d 6170 2861 7474 7269 unts | map(attri │ │ │ -001a0af0: 6275 7465 3d22 6d6f 756e 7422 2920 7c20 bute="mount") | │ │ │ -001a0b00: 6c69 7374 270a 2020 2d20 6d6f 756e 745f list'. - mount_ │ │ │ -001a0b10: 696e 666f 2069 7320 6465 6669 6e65 6420 info is defined │ │ │ -001a0b20: 616e 6420 226e 6f64 6576 2220 6e6f 7420 and "nodev" not │ │ │ -001a0b30: 696e 2028 6d6f 756e 745f 696e 666f 2e6f in (mount_info.o │ │ │ -001a0b40: 7074 696f 6e73 207c 2064 6566 6175 6c74 ptions | default │ │ │ -001a0b50: 2827 2729 290a 2020 7461 6773 3a0a 2020 ('')). tags:. │ │ │ -001a0b60: 2d20 4e49 5354 2d38 3030 2d35 332d 4143 - NIST-800-53-AC │ │ │ -001a0b70: 2d36 0a20 202d 204e 4953 542d 3830 302d -6. - NIST-800- │ │ │ -001a0b80: 3533 2d41 432d 3628 3129 0a20 202d 204e 53-AC-6(1). - N │ │ │ -001a0b90: 4953 542d 3830 302d 3533 2d43 4d2d 3628 IST-800-53-CM-6( │ │ │ -001a0ba0: 6129 0a20 202d 204e 4953 542d 3830 302d a). - NIST-800- │ │ │ -001a0bb0: 3533 2d43 4d2d 3728 6129 0a20 202d 204e 53-CM-7(a). - N │ │ │ -001a0bc0: 4953 542d 3830 302d 3533 2d43 4d2d 3728 IST-800-53-CM-7( │ │ │ -001a0bd0: 6229 0a20 202d 204e 4953 542d 3830 302d b). - NIST-800- │ │ │ -001a0be0: 3533 2d4d 502d 370a 2020 2d20 636f 6e66 53-MP-7. - conf │ │ │ -001a0bf0: 6967 7572 655f 7374 7261 7465 6779 0a20 igure_strategy. │ │ │ -001a0c00: 202d 2068 6967 685f 6469 7372 7570 7469 - high_disrupti │ │ │ -001a0c10: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c on. - low_compl │ │ │ -001a0c20: 6578 6974 790a 2020 2d20 6d65 6469 756d exity. - medium │ │ │ -001a0c30: 5f73 6576 6572 6974 790a 2020 2d20 6d6f _severity. - mo │ │ │ -001a0c40: 756e 745f 6f70 7469 6f6e 5f74 6d70 5f6e unt_option_tmp_n │ │ │ -001a0c50: 6f64 6576 0a20 202d 206e 6f5f 7265 626f odev. - no_rebo │ │ │ -001a0c60: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d ot_needed..- nam │ │ │ -001a0c70: 653a 2027 4164 6420 6e6f 6465 7620 4f70 e: 'Add nodev Op │ │ │ -001a0c80: 7469 6f6e 2074 6f20 2f74 6d70 3a20 456e tion to /tmp: En │ │ │ -001a0c90: 7375 7265 202f 746d 7020 6973 206d 6f75 sure /tmp is mou │ │ │ -001a0ca0: 6e74 6564 2077 6974 6820 6e6f 6465 7620 nted with nodev │ │ │ -001a0cb0: 6f70 7469 6f6e 270a 2020 616e 7369 626c option'. ansibl │ │ │ -001a0cc0: 652e 706f 7369 782e 6d6f 756e 743a 0a20 e.posix.mount:. │ │ │ -001a0cd0: 2020 2070 6174 683a 202f 746d 700a 2020 path: /tmp. │ │ │ -001a0ce0: 2020 7372 633a 2027 7b7b 206d 6f75 6e74 src: '{{ mount │ │ │ -001a0cf0: 5f69 6e66 6f2e 736f 7572 6365 207c 2064 _info.source | d │ │ │ -001a0d00: 6566 6175 6c74 2827 2727 2729 207d 7d27 efault('''') }}' │ │ │ -001a0d10: 0a20 2020 206f 7074 733a 2027 7b7b 206d . opts: '{{ m │ │ │ -001a0d20: 6f75 6e74 5f69 6e66 6f2e 6f70 7469 6f6e ount_info.option │ │ │ -001a0d30: 7320 7c20 6465 6661 756c 7428 2727 2727 s | default('''' │ │ │ -001a0d40: 2920 7d7d 270a 2020 2020 7374 6174 653a ) }}'. state: │ │ │ -001a0d50: 206d 6f75 6e74 6564 0a20 2020 2066 7374 mounted. fst │ │ │ -001a0d60: 7970 653a 2027 7b7b 206d 6f75 6e74 5f69 ype: '{{ mount_i │ │ │ -001a0d70: 6e66 6f2e 6673 7479 7065 207c 2064 6566 nfo.fstype | def │ │ │ -001a0d80: 6175 6c74 2827 2727 2729 207d 7d27 0a20 ault('''') }}'. │ │ │ -001a0d90: 2072 6567 6973 7465 723a 206d 6f75 6e74 register: mount │ │ │ -001a0da0: 5f72 6573 756c 740a 2020 6661 696c 6564 _result. failed │ │ │ -001a0db0: 5f77 6865 6e3a 0a20 202d 206d 6f75 6e74 _when:. - mount │ │ │ -001a0dc0: 5f72 6573 756c 7420 6973 2066 6169 6c65 _result is faile │ │ │ -001a0dd0: 640a 2020 2d20 2727 2774 6172 6765 7420 d. - '''target │ │ │ -001a0de0: 6973 2062 7573 7927 2720 6e6f 7420 696e is busy'' not in │ │ │ -001a0df0: 2028 6d6f 756e 745f 7265 7375 6c74 2e6d (mount_result.m │ │ │ -001a0e00: 7367 207c 2064 6566 6175 6c74 2827 2727 sg | default(''' │ │ │ -001a0e10: 2729 2927 0a20 202d 2027 2727 616c 7265 '))'. - '''alre │ │ │ -001a0e20: 6164 7920 6d6f 756e 7465 6427 2720 6e6f ady mounted'' no │ │ │ -001a0e30: 7420 696e 2028 6d6f 756e 745f 7265 7375 t in (mount_resu │ │ │ -001a0e40: 6c74 2e6d 7367 207c 2064 6566 6175 6c74 lt.msg | default │ │ │ -001a0e50: 2827 2727 2729 2927 0a20 2077 6865 6e3a (''''))'. when: │ │ │ -001a0e60: 0a20 202d 2028 206e 6f74 2028 2022 6b65 . - ( not ( "ke │ │ │ -001a0e70: 726e 656c 2220 696e 2061 6e73 6962 6c65 rnel" in ansible │ │ │ -001a0e80: 5f66 6163 7473 2e70 6163 6b61 6765 7320 _facts.packages │ │ │ -001a0e90: 616e 6420 2262 6f6f 7463 2220 696e 2061 and "bootc" in a │ │ │ -001a0ea0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163 nsible_facts.pac │ │ │ -001a0eb0: 6b61 6765 730a 2020 2020 616e 6420 6e6f kages. and no │ │ │ -001a0ec0: 7420 226f 7065 6e73 6869 6674 2d6b 7562 t "openshift-kub │ │ │ -001a0ed0: 656c 6574 2220 696e 2061 6e73 6962 6c65 elet" in ansible │ │ │ -001a0ee0: 5f66 6163 7473 2e70 6163 6b61 6765 7320 _facts.packages │ │ │ -001a0ef0: 616e 6420 226f 7374 7265 6522 2069 6e20 and "ostree" in │ │ │ -001a0f00: 616e 7369 626c 655f 7072 6f63 5f63 6d64 ansible_proc_cmd │ │ │ -001a0f10: 6c69 6e65 0a20 2020 2029 2061 6e64 206e line. ) and n │ │ │ -001a0f20: 6f74 2028 2061 6e73 6962 6c65 5f76 6972 ot ( ansible_vir │ │ │ -001a0f30: 7475 616c 697a 6174 696f 6e5f 7479 7065 tualization_type │ │ │ -001a0f40: 2069 6e20 5b22 646f 636b 6572 222c 2022 in ["docker", " │ │ │ -001a0f50: 6c78 6322 2c20 226f 7065 6e76 7a22 2c20 lxc", "openvz", │ │ │ -001a0f60: 2270 6f64 6d61 6e22 2c0a 2020 2020 2263 "podman",. "c │ │ │ -001a0f70: 6f6e 7461 696e 6572 225d 2029 2029 0a20 ontainer"] ) ). │ │ │ -001a0f80: 202d 2027 222f 746d 7022 2069 6e20 616e - '"/tmp" in an │ │ │ -001a0f90: 7369 626c 655f 6d6f 756e 7473 207c 206d sible_mounts | m │ │ │ -001a0fa0: 6170 2861 7474 7269 6275 7465 3d22 6d6f ap(attribute="mo │ │ │ -001a0fb0: 756e 7422 2920 7c20 6c69 7374 270a 2020 unt") | list'. │ │ │ -001a0fc0: 2d20 6d6f 756e 745f 696e 666f 2069 7320 - mount_info is │ │ │ -001a0fd0: 6465 6669 6e65 640a 2020 2d20 2864 6576 defined. - (dev │ │ │ -001a0fe0: 6963 655f 6e61 6d65 2e73 7464 6f75 7420 ice_name.stdout │ │ │ -001a0ff0: 6973 2064 6566 696e 6564 2061 6e64 2028 is defined and ( │ │ │ -001a1000: 6465 7669 6365 5f6e 616d 652e 7374 646f device_name.stdo │ │ │ -001a1010: 7574 207c 206c 656e 6774 6820 2667 743b ut | length > │ │ │ -001a1020: 2030 2929 206f 7220 2822 2d2d 6673 7461 0)) or ("--fsta │ │ │ -001a1030: 6222 0a20 2020 207c 206c 656e 6774 6820 b". | length │ │ │ -001a1040: 3d3d 2030 290a 2020 7461 6773 3a0a 2020 == 0). tags:. │ │ │ -001a1050: 2d20 4e49 5354 2d38 3030 2d35 332d 4143 - NIST-800-53-AC │ │ │ -001a1060: 2d36 0a20 202d 204e 4953 542d 3830 302d -6. - NIST-800- │ │ │ -001a1070: 3533 2d41 432d 3628 3129 0a20 202d 204e 53-AC-6(1). - N │ │ │ -001a1080: 4953 542d 3830 302d 3533 2d43 4d2d 3628 IST-800-53-CM-6( │ │ │ -001a1090: 6129 0a20 202d 204e 4953 542d 3830 302d a). - NIST-800- │ │ │ -001a10a0: 3533 2d43 4d2d 3728 6129 0a20 202d 204e 53-CM-7(a). - N │ │ │ -001a10b0: 4953 542d 3830 302d 3533 2d43 4d2d 3728 IST-800-53-CM-7( │ │ │ -001a10c0: 6229 0a20 202d 204e 4953 542d 3830 302d b). - NIST-800- │ │ │ -001a10d0: 3533 2d4d 502d 370a 2020 2d20 636f 6e66 53-MP-7. - conf │ │ │ -001a10e0: 6967 7572 655f 7374 7261 7465 6779 0a20 igure_strategy. │ │ │ -001a10f0: 202d 2068 6967 685f 6469 7372 7570 7469 - high_disrupti │ │ │ -001a1100: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c on. - low_compl │ │ │ -001a1110: 6578 6974 790a 2020 2d20 6d65 6469 756d exity. - medium │ │ │ -001a1120: 5f73 6576 6572 6974 790a 2020 2d20 6d6f _severity. - mo │ │ │ -001a1130: 756e 745f 6f70 7469 6f6e 5f74 6d70 5f6e unt_option_tmp_n │ │ │ -001a1140: 6f64 6576 0a20 202d 206e 6f5f 7265 626f odev. - no_rebo │ │ │ -001a1150: 6f74 5f6e 6565 6465 640a 3c2f 636f 6465 ot_needed.

Remedi │ │ │ -001a1210: 6174 696f 6e20 5368 656c 6c20 7363 7269 ation Shell scri │ │ │ -001a1220: 7074 20e2 87b2 3c2f 613e 3c62 723e 3c64 pt ...
│ │ │ -001a12a0: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ -001a12b0: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>false< │ │ │ -001a12d0: 7072 653e 3c63 6f64 653e 2320 5265 6d65 pre># Reme │ │ │ -001a12e0: 6469 6174 696f 6e20 6973 2061 7070 6c69 diation is appli │ │ │ -001a12f0: 6361 626c 6520 6f6e 6c79 2069 6e20 6365 cable only in ce │ │ │ -001a1300: 7274 6169 6e20 706c 6174 666f 726d 730a rtain platforms. │ │ │ -001a1310: 6966 2028 2021 2028 207b 2072 706d 202d if ( ! ( { rpm - │ │ │ -001a1320: 2d71 7569 6574 202d 7120 6b65 726e 656c -quiet -q kernel │ │ │ -001a1330: 203b 7d20 2661 6d70 3b26 616d 703b 207b ;} && { │ │ │ -001a1340: 2072 706d 202d 2d71 7569 6574 202d 7120 rpm --quiet -q │ │ │ -001a1350: 626f 6f74 6320 3b7d 2026 616d 703b 2661 bootc ;} &&a │ │ │ -001a1360: 6d70 3b20 7b20 2120 7270 6d20 2d2d 7175 mp; { ! rpm --qu │ │ │ -001a1370: 6965 7420 2d71 206f 7065 6e73 6869 6674 iet -q openshift │ │ │ -001a1380: 2d6b 7562 656c 6574 203b 7d20 2661 6d70 -kubelet ;} & │ │ │ -001a1390: 3b26 616d 703b 2028 5b20 2d66 202f 7275 ;& ([ -f /ru │ │ │ -001a13a0: 6e2f 6f73 7472 6565 2d62 6f6f 7465 6420 n/ostree-booted │ │ │ -001a13b0: 5d20 7c7c 205b 202d 4c20 2f6f 7374 7265 ] || [ -L /ostre │ │ │ -001a13c0: 6520 5d29 2029 2026 616d 703b 2661 6d70 e ]) ) && │ │ │ -001a13d0: 3b20 2120 2820 5b20 2d66 202f 2e64 6f63 ; ! ( [ -f /.doc │ │ │ -001a13e0: 6b65 7265 6e76 205d 207c 7c20 5b20 2d66 kerenv ] || [ -f │ │ │ -001a13f0: 202f 7275 6e2f 2e63 6f6e 7461 696e 6572 /run/.container │ │ │ -001a1400: 656e 7620 5d20 2920 2920 2661 6d70 3b26 env ] ) ) && │ │ │ -001a1410: 616d 703b 207b 2028 2066 696e 646d 6e74 amp; { ( findmnt │ │ │ -001a1420: 202d 2d6b 6572 6e65 6c20 222f 746d 7022 --kernel "/tmp" │ │ │ -001a1430: 2026 6774 3b20 2f64 6576 2f6e 756c 6c20 > /dev/null │ │ │ -001a1440: 7c7c 2066 696e 646d 6e74 202d 2d66 7374 || findmnt --fst │ │ │ -001a1450: 6162 2022 2f74 6d70 2220 2667 743b 202f ab "/tmp" > / │ │ │ -001a1460: 6465 762f 6e75 6c6c 2029 3b20 7d3b 2074 dev/null ); }; t │ │ │ -001a1470: 6865 6e0a 0a66 756e 6374 696f 6e20 7065 hen..function pe │ │ │ -001a1480: 7266 6f72 6d5f 7265 6d65 6469 6174 696f rform_remediatio │ │ │ -001a1490: 6e20 7b0a 0a20 2020 200a 2020 2020 2020 n {.. . │ │ │ -001a14a0: 2020 2320 7468 6520 6d6f 756e 7420 706f # the mount po │ │ │ -001a14b0: 696e 7420 2f74 6d70 2068 6173 2074 6f20 int /tmp has to │ │ │ -001a14c0: 6265 2064 6566 696e 6564 2069 6e20 2f65 be defined in /e │ │ │ -001a14d0: 7463 2f66 7374 6162 0a20 2020 2020 2020 tc/fstab. │ │ │ -001a14e0: 2023 2062 6566 6f72 6520 7468 6973 2072 # before this r │ │ │ -001a14f0: 656d 6564 6961 7469 6f6e 2063 616e 2062 emediation can b │ │ │ -001a1500: 6520 6578 6563 7574 6564 2e20 496e 2063 e executed. In c │ │ │ -001a1510: 6173 6520 6974 2069 7320 6e6f 7420 6465 ase it is not de │ │ │ -001a1520: 6669 6e65 642c 2074 6865 0a20 2020 2020 fined, the. │ │ │ -001a1530: 2020 2023 2072 656d 6564 6961 7469 6f6e # remediation │ │ │ -001a1540: 2061 626f 7274 7320 616e 6420 6e6f 2063 aborts and no c │ │ │ -001a1550: 6861 6e67 6573 2072 6567 6172 6469 6e67 hanges regarding │ │ │ -001a1560: 2074 6865 206d 6f75 6e74 2070 6f69 6e74 the mount point │ │ │ -001a1570: 2061 7265 2064 6f6e 652e 0a20 2020 2020 are done.. │ │ │ -001a1580: 2020 206d 6f75 6e74 5f70 6f69 6e74 5f6d mount_point_m │ │ │ -001a1590: 6174 6368 5f72 6567 6578 703d 2224 2870 atch_regexp="$(p │ │ │ -001a15a0: 7269 6e74 6620 225e 5b5b 3a73 7061 6365 rintf "^[[:space │ │ │ -001a15b0: 3a5d 5d2a 5b5e 235d 2e2a 5b5b 3a73 7061 :]]*[^#].*[[:spa │ │ │ -001a15c0: 6365 3a5d 5d25 735b 5b3a 7370 6163 653a ce:]]%s[[:space: │ │ │ -001a15d0: 5d5d 2220 222f 746d 7022 2922 0a0a 2020 ]]" "/tmp")".. │ │ │ -001a15e0: 2020 6772 6570 2022 246d 6f75 6e74 5f70 grep "$mount_p │ │ │ -001a15f0: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578 oint_match_regex │ │ │ -001a1600: 7022 202d 7120 2f65 7463 2f66 7374 6162 p" -q /etc/fstab │ │ │ -001a1610: 205c 0a20 2020 2020 2020 207c 7c20 7b20 \. || { │ │ │ -001a1620: 6563 686f 2022 5468 6520 6d6f 756e 7420 echo "The mount │ │ │ -001a1630: 706f 696e 7420 272f 746d 7027 2069 7320 point '/tmp' is │ │ │ -001a1640: 6e6f 7420 6576 656e 2069 6e20 2f65 7463 not even in /etc │ │ │ -001a1650: 2f66 7374 6162 2c20 736f 2077 6520 6361 /fstab, so we ca │ │ │ -001a1660: 6e27 7420 7365 7420 7570 206d 6f75 6e74 n't set up mount │ │ │ -001a1670: 206f 7074 696f 6e73 2220 2667 743b 2661 options" >&a │ │ │ -001a1680: 6d70 3b32 3b0a 2020 2020 2020 2020 2020 mp;2;. │ │ │ -001a1690: 2020 2020 2020 6563 686f 2022 4e6f 7420 echo "Not │ │ │ -001a16a0: 7265 6d65 6469 6174 696e 672c 2062 6563 remediating, bec │ │ │ -001a16b0: 6175 7365 2074 6865 7265 2069 7320 6e6f ause there is no │ │ │ -001a16c0: 2072 6563 6f72 6420 6f66 202f 746d 7020 record of /tmp │ │ │ -001a16d0: 696e 202f 6574 632f 6673 7461 6222 2026 in /etc/fstab" & │ │ │ -001a16e0: 6774 3b26 616d 703b 323b 2072 6574 7572 gt;&2; retur │ │ │ -001a16f0: 6e20 313b 207d 0a20 2020 200a 0a0a 2020 n 1; }. ... │ │ │ -001a1700: 2020 6d6f 756e 745f 706f 696e 745f 6d61 mount_point_ma │ │ │ -001a1710: 7463 685f 7265 6765 7870 3d22 2428 7072 tch_regexp="$(pr │ │ │ -001a1720: 696e 7466 2022 5e5b 5b3a 7370 6163 653a intf "^[[:space: │ │ │ -001a1730: 5d5d 2a5b 5e23 5d2e 2a5b 5b3a 7370 6163 ]]*[^#].*[[:spac │ │ │ -001a1740: 653a 5d5d 2573 5b5b 3a73 7061 6365 3a5d e:]]%s[[:space:] │ │ │ -001a1750: 5d22 202f 746d 7029 220a 0a20 2020 2023 ]" /tmp)".. # │ │ │ -001a1760: 2049 6620 7468 6520 6d6f 756e 7420 706f If the mount po │ │ │ -001a1770: 696e 7420 6973 206e 6f74 2069 6e20 2f65 int is not in /e │ │ │ -001a1780: 7463 2f66 7374 6162 2c20 6765 7420 7072 tc/fstab, get pr │ │ │ -001a1790: 6576 696f 7573 206d 6f75 6e74 206f 7074 evious mount opt │ │ │ -001a17a0: 696f 6e73 2066 726f 6d20 2f65 7463 2f6d ions from /etc/m │ │ │ -001a17b0: 7461 620a 2020 2020 6966 2021 2067 7265 tab. if ! gre │ │ │ -001a17c0: 7020 2d71 2022 246d 6f75 6e74 5f70 6f69 p -q "$mount_poi │ │ │ -001a17d0: 6e74 5f6d 6174 6368 5f72 6567 6578 7022 nt_match_regexp" │ │ │ -001a17e0: 202f 6574 632f 6673 7461 623b 2074 6865 /etc/fstab; the │ │ │ -001a17f0: 6e0a 2020 2020 2020 2020 2320 7275 6e74 n. # runt │ │ │ -001a1800: 696d 6520 6f70 7473 2077 6974 686f 7574 ime opts without │ │ │ -001a1810: 2073 6f6d 6520 6175 746f 6d61 7469 6320 some automatic │ │ │ -001a1820: 6b65 726e 656c 2f75 7365 7273 7061 6365 kernel/userspace │ │ │ -001a1830: 2d61 6464 6564 2064 6566 6175 6c74 730a -added defaults. │ │ │ -001a1840: 2020 2020 2020 2020 7072 6576 696f 7573 previous │ │ │ -001a1850: 5f6d 6f75 6e74 5f6f 7074 733d 2428 6772 _mount_opts=$(gr │ │ │ -001a1860: 6570 2022 246d 6f75 6e74 5f70 6f69 6e74 ep "$mount_point │ │ │ -001a1870: 5f6d 6174 6368 5f72 6567 6578 7022 202f _match_regexp" / │ │ │ -001a1880: 6574 632f 6d74 6162 207c 2068 6561 6420 etc/mtab | head │ │ │ -001a1890: 2d31 207c 2020 6177 6b20 277b 7072 696e -1 | awk '{prin │ │ │ -001a18a0: 7420 2434 7d27 205c 0a20 2020 2020 2020 t $4}' \. │ │ │ -001a18b0: 2020 2020 2020 2020 2020 2020 207c 2073 | s │ │ │ -001a18c0: 6564 202d 4520 2273 2f28 7277 7c64 6566 ed -E "s/(rw|def │ │ │ -001a18d0: 6175 6c74 737c 7365 636c 6162 656c 7c6e aults|seclabel|n │ │ │ -001a18e0: 6f64 6576 2928 2c7c 2429 2f2f 673b 732f odev)(,|$)//g;s/ │ │ │ -001a18f0: 2c24 2f2f 2229 0a20 2020 2020 2020 205b ,$//"). [ │ │ │ -001a1900: 2022 2470 7265 7669 6f75 735f 6d6f 756e "$previous_moun │ │ │ -001a1910: 745f 6f70 7473 2220 5d20 2661 6d70 3b26 t_opts" ] && │ │ │ -001a1920: 616d 703b 2070 7265 7669 6f75 735f 6d6f amp; previous_mo │ │ │ -001a1930: 756e 745f 6f70 7473 2b3d 222c 220a 2020 unt_opts+=",". │ │ │ -001a1940: 2020 2020 2020 2320 496e 2069 736f 3936 # In iso96 │ │ │ -001a1950: 3630 2066 696c 6573 7973 7465 6d73 206d 60 filesystems m │ │ │ -001a1960: 7461 6220 636f 756c 6420 6465 7363 7269 tab could descri │ │ │ -001a1970: 6265 2061 2022 626c 6f63 6b73 697a 6522 be a "blocksize" │ │ │ -001a1980: 2076 616c 7565 2c20 7468 6973 2073 686f value, this sho │ │ │ -001a1990: 756c 6420 6265 2072 6566 6c65 6374 6564 uld be reflected │ │ │ -001a19a0: 2069 6e0a 2020 2020 2020 2020 2320 6673 in. # fs │ │ │ -001a19b0: 7461 6220 6173 2022 626c 6f63 6b22 2e20 tab as "block". │ │ │ -001a19c0: 2054 6865 206e 6578 7420 7661 7269 6162 The next variab │ │ │ -001a19d0: 6c65 2069 7320 746f 2073 6174 6973 6679 le is to satisfy │ │ │ -001a19e0: 2073 6865 6c6c 6368 6563 6b20 5343 3230 shellcheck SC20 │ │ │ -001a19f0: 3530 2e0a 2020 2020 2020 2020 6673 5f74 50.. fs_t │ │ │ -001a1a00: 7970 653d 2222 0a20 2020 2020 2020 2069 ype="". i │ │ │ -001a1a10: 6620 5b20 2022 2466 735f 7479 7065 2220 f [ "$fs_type" │ │ │ -001a1a20: 3d3d 2022 6973 6f39 3636 3022 205d 203b == "iso9660" ] ; │ │ │ -001a1a30: 2074 6865 6e0a 2020 2020 2020 2020 2020 then. │ │ │ -001a1a40: 2020 7072 6576 696f 7573 5f6d 6f75 6e74 previous_mount │ │ │ -001a1a50: 5f6f 7074 733d 2428 7365 6420 2773 2f62 _opts=$(sed 's/b │ │ │ -001a1a60: 6c6f 636b 7369 7a65 3d2f 626c 6f63 6b3d locksize=/block= │ │ │ -001a1a70: 2f27 2026 6c74 3b26 6c74 3b26 6c74 3b20 /' <<< │ │ │ -001a1a80: 2224 7072 6576 696f 7573 5f6d 6f75 6e74 "$previous_mount │ │ │ -001a1a90: 5f6f 7074 7322 290a 2020 2020 2020 2020 _opts"). │ │ │ -001a1aa0: 6669 0a20 2020 2020 2020 2065 6368 6f20 fi. echo │ │ │ -001a1ab0: 2220 2f74 6d70 2020 6465 6661 756c 7473 " /tmp defaults │ │ │ -001a1ac0: 2c24 7b70 7265 7669 6f75 735f 6d6f 756e ,${previous_moun │ │ │ -001a1ad0: 745f 6f70 7473 7d6e 6f64 6576 2030 2030 t_opts}nodev 0 0 │ │ │ -001a1ae0: 2220 2667 743b 2667 743b 202f 6574 632f " >> /etc/ │ │ │ -001a1af0: 6673 7461 620a 2020 2020 2320 4966 2074 fstab. # If t │ │ │ -001a1b00: 6865 206d 6f75 6e74 5f6f 7074 206f 7074 he mount_opt opt │ │ │ -001a1b10: 696f 6e20 6973 206e 6f74 2061 6c72 6561 ion is not alrea │ │ │ -001a1b20: 6479 2069 6e20 7468 6520 6d6f 756e 7420 dy in the mount │ │ │ -001a1b30: 706f 696e 7427 7320 2f65 7463 2f66 7374 point's /etc/fst │ │ │ -001a1b40: 6162 2065 6e74 7279 2c20 6164 6420 6974 ab entry, add it │ │ │ -001a1b50: 0a20 2020 2065 6c69 6620 2120 6772 6570 . elif ! grep │ │ │ -001a1b60: 2022 246d 6f75 6e74 5f70 6f69 6e74 5f6d "$mount_point_m │ │ │ -001a1b70: 6174 6368 5f72 6567 6578 7022 202f 6574 atch_regexp" /et │ │ │ -001a1b80: 632f 6673 7461 6220 7c20 6772 6570 202d c/fstab | grep - │ │ │ -001a1b90: 7120 226e 6f64 6576 223b 2074 6865 6e0a q "nodev"; then. │ │ │ -001a1ba0: 2020 2020 2020 2020 7072 6576 696f 7573 previous │ │ │ -001a1bb0: 5f6d 6f75 6e74 5f6f 7074 733d 2428 6772 _mount_opts=$(gr │ │ │ -001a1bc0: 6570 2022 246d 6f75 6e74 5f70 6f69 6e74 ep "$mount_point │ │ │ -001a1bd0: 5f6d 6174 6368 5f72 6567 6578 7022 202f _match_regexp" / │ │ │ -001a1be0: 6574 632f 6673 7461 6220 7c20 6177 6b20 etc/fstab | awk │ │ │ -001a1bf0: 277b 7072 696e 7420 2434 7d27 290a 2020 '{print $4}'). │ │ │ -001a1c00: 2020 2020 2020 7365 6420 2d69 2022 737c sed -i "s| │ │ │ -001a1c10: 5c28 247b 6d6f 756e 745f 706f 696e 745f \(${mount_point_ │ │ │ -001a1c20: 6d61 7463 685f 7265 6765 7870 7d2e 2a24 match_regexp}.*$ │ │ │ -001a1c30: 7b70 7265 7669 6f75 735f 6d6f 756e 745f {previous_mount_ │ │ │ -001a1c40: 6f70 7473 7d5c 297c 5c31 2c6e 6f64 6576 opts}\)|\1,nodev │ │ │ -001a1c50: 7c22 202f 6574 632f 6673 7461 620a 2020 |" /etc/fstab. │ │ │ -001a1c60: 2020 6669 0a0a 0a20 2020 2069 6620 6d6b fi... if mk │ │ │ -001a1c70: 6469 7220 2d70 2022 2f74 6d70 223b 2074 dir -p "/tmp"; t │ │ │ -001a1c80: 6865 6e0a 2020 2020 2020 2020 6966 206d hen. if m │ │ │ -001a1c90: 6f75 6e74 706f 696e 7420 2d71 2022 2f74 ountpoint -q "/t │ │ │ -001a1ca0: 6d70 223b 2074 6865 6e0a 2020 2020 2020 mp"; then. │ │ │ -001a1cb0: 2020 2020 2020 6d6f 756e 7420 2d6f 2072 mount -o r │ │ │ -001a1cc0: 656d 6f75 6e74 202d 2d74 6172 6765 7420 emount --target │ │ │ -001a1cd0: 222f 746d 7022 0a20 2020 2020 2020 2066 "/tmp". f │ │ │ -001a1ce0: 690a 2020 2020 6669 0a7d 0a0a 7065 7266 i. fi.}..perf │ │ │ -001a1cf0: 6f72 6d5f 7265 6d65 6469 6174 696f 6e0a orm_remediation. │ │ │ -001a1d00: 0a65 6c73 650a 2020 2020 2667 743b 2661 .else. >&a │ │ │ -001a1d10: 6d70 3b32 2065 6368 6f20 2752 656d 6564 mp;2 echo 'Remed │ │ │ -001a1d20: 6961 7469 6f6e 2069 7320 6e6f 7420 6170 iation is not ap │ │ │ -001a1d30: 706c 6963 6162 6c65 2c20 6e6f 7468 696e plicable, nothin │ │ │ -001a1d40: 6720 7761 7320 646f 6e65 270a 6669 0a3c g was done'.fi.< │ │ │ +0019f820: 6e73 6962 6c65 2073 6e69 7070 6574 20e2 nsible snippet . │ │ │ +0019f830: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ +0019f8b0: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +0019f8d0: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 < │ │ │ +0019f900: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>
Complexity:< │ │ │ +0019f8c0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +0019f8e0: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:high
Reboot:false
St │ │ │ +0019f930: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ +0019f940: 636f 6e66 6967 7572 653c 2f74 643e 3c2f configure
│ │ │ +0019f960: 3c63 6f64 653e 2d20 6e61 6d65 3a20 4761  - name: Ga
│ │ │ +0019f970: 7468 6572 2074 6865 2070 6163 6b61 6765  ther the package
│ │ │ +0019f980: 2066 6163 7473 0a20 2070 6163 6b61 6765   facts.  package
│ │ │ +0019f990: 5f66 6163 7473 3a0a 2020 2020 6d61 6e61  _facts:.    mana
│ │ │ +0019f9a0: 6765 723a 2061 7574 6f0a 2020 7461 6773  ger: auto.  tags
│ │ │ +0019f9b0: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ +0019f9c0: 332d 4143 2d36 0a20 202d 204e 4953 542d  3-AC-6.  - NIST-
│ │ │ +0019f9d0: 3830 302d 3533 2d41 432d 3628 3129 0a20  800-53-AC-6(1). 
│ │ │ +0019f9e0: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +0019f9f0: 4d2d 3628 6129 0a20 202d 204e 4953 542d  M-6(a).  - NIST-
│ │ │ +0019fa00: 3830 302d 3533 2d43 4d2d 3728 6129 0a20  800-53-CM-7(a). 
│ │ │ +0019fa10: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +0019fa20: 4d2d 3728 6229 0a20 202d 204e 4953 542d  M-7(b).  - NIST-
│ │ │ +0019fa30: 3830 302d 3533 2d4d 502d 370a 2020 2d20  800-53-MP-7.  - 
│ │ │ +0019fa40: 636f 6e66 6967 7572 655f 7374 7261 7465  configure_strate
│ │ │ +0019fa50: 6779 0a20 202d 2068 6967 685f 6469 7372  gy.  - high_disr
│ │ │ +0019fa60: 7570 7469 6f6e 0a20 202d 206c 6f77 5f63  uption.  - low_c
│ │ │ +0019fa70: 6f6d 706c 6578 6974 790a 2020 2d20 6d65  omplexity.  - me
│ │ │ +0019fa80: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ +0019fa90: 2d20 6d6f 756e 745f 6f70 7469 6f6e 5f74  - mount_option_t
│ │ │ +0019faa0: 6d70 5f6e 6f64 6576 0a20 202d 206e 6f5f  mp_nodev.  - no_
│ │ │ +0019fab0: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ +0019fac0: 206e 616d 653a 2027 4164 6420 6e6f 6465   name: 'Add node
│ │ │ +0019fad0: 7620 4f70 7469 6f6e 2074 6f20 2f74 6d70  v Option to /tmp
│ │ │ +0019fae0: 3a20 4368 6563 6b20 696e 666f 726d 6174  : Check informat
│ │ │ +0019faf0: 696f 6e20 6173 736f 6369 6174 6564 2074  ion associated t
│ │ │ +0019fb00: 6f20 6d6f 756e 7470 6f69 6e74 270a 2020  o mountpoint'.  
│ │ │ +0019fb10: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ +0019fb20: 636f 6d6d 616e 643a 2066 696e 646d 6e74  command: findmnt
│ │ │ +0019fb30: 202d 2d66 7374 6162 2027 2f74 6d70 270a   --fstab '/tmp'.
│ │ │ +0019fb40: 2020 7265 6769 7374 6572 3a20 6465 7669    register: devi
│ │ │ +0019fb50: 6365 5f6e 616d 650a 2020 6661 696c 6564  ce_name.  failed
│ │ │ +0019fb60: 5f77 6865 6e3a 2064 6576 6963 655f 6e61  _when: device_na
│ │ │ +0019fb70: 6d65 2e72 6320 2667 743b 2031 0a20 2063  me.rc > 1.  c
│ │ │ +0019fb80: 6861 6e67 6564 5f77 6865 6e3a 2066 616c  hanged_when: fal
│ │ │ +0019fb90: 7365 0a20 2063 6865 636b 5f6d 6f64 653a  se.  check_mode:
│ │ │ +0019fba0: 2066 616c 7365 0a20 2077 6865 6e3a 0a20   false.  when:. 
│ │ │ +0019fbb0: 202d 2028 206e 6f74 2028 2022 6b65 726e   - ( not ( "kern
│ │ │ +0019fbc0: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ +0019fbd0: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +0019fbe0: 6420 2262 6f6f 7463 2220 696e 2061 6e73  d "bootc" in ans
│ │ │ +0019fbf0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +0019fc00: 6765 730a 2020 2020 616e 6420 6e6f 7420  ges.    and not 
│ │ │ +0019fc10: 226f 7065 6e73 6869 6674 2d6b 7562 656c  "openshift-kubel
│ │ │ +0019fc20: 6574 2220 696e 2061 6e73 6962 6c65 5f66  et" in ansible_f
│ │ │ +0019fc30: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +0019fc40: 6420 226f 7374 7265 6522 2069 6e20 616e  d "ostree" in an
│ │ │ +0019fc50: 7369 626c 655f 7072 6f63 5f63 6d64 6c69  sible_proc_cmdli
│ │ │ +0019fc60: 6e65 0a20 2020 2029 2061 6e64 206e 6f74  ne.    ) and not
│ │ │ +0019fc70: 2028 2061 6e73 6962 6c65 5f76 6972 7475   ( ansible_virtu
│ │ │ +0019fc80: 616c 697a 6174 696f 6e5f 7479 7065 2069  alization_type i
│ │ │ +0019fc90: 6e20 5b22 646f 636b 6572 222c 2022 6c78  n ["docker", "lx
│ │ │ +0019fca0: 6322 2c20 226f 7065 6e76 7a22 2c20 2270  c", "openvz", "p
│ │ │ +0019fcb0: 6f64 6d61 6e22 2c0a 2020 2020 2263 6f6e  odman",.    "con
│ │ │ +0019fcc0: 7461 696e 6572 225d 2029 2029 0a20 202d  tainer"] ) ).  -
│ │ │ +0019fcd0: 2027 222f 746d 7022 2069 6e20 616e 7369   '"/tmp" in ansi
│ │ │ +0019fce0: 626c 655f 6d6f 756e 7473 207c 206d 6170  ble_mounts | map
│ │ │ +0019fcf0: 2861 7474 7269 6275 7465 3d22 6d6f 756e  (attribute="moun
│ │ │ +0019fd00: 7422 2920 7c20 6c69 7374 270a 2020 7461  t") | list'.  ta
│ │ │ +0019fd10: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030  gs:.  - NIST-800
│ │ │ +0019fd20: 2d35 332d 4143 2d36 0a20 202d 204e 4953  -53-AC-6.  - NIS
│ │ │ +0019fd30: 542d 3830 302d 3533 2d41 432d 3628 3129  T-800-53-AC-6(1)
│ │ │ +0019fd40: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +0019fd50: 2d43 4d2d 3628 6129 0a20 202d 204e 4953  -CM-6(a).  - NIS
│ │ │ +0019fd60: 542d 3830 302d 3533 2d43 4d2d 3728 6129  T-800-53-CM-7(a)
│ │ │ +0019fd70: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +0019fd80: 2d43 4d2d 3728 6229 0a20 202d 204e 4953  -CM-7(b).  - NIS
│ │ │ +0019fd90: 542d 3830 302d 3533 2d4d 502d 370a 2020  T-800-53-MP-7.  
│ │ │ +0019fda0: 2d20 636f 6e66 6967 7572 655f 7374 7261  - configure_stra
│ │ │ +0019fdb0: 7465 6779 0a20 202d 2068 6967 685f 6469  tegy.  - high_di
│ │ │ +0019fdc0: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ +0019fdd0: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +0019fde0: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ +0019fdf0: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e    - mount_option
│ │ │ +0019fe00: 5f74 6d70 5f6e 6f64 6576 0a20 202d 206e  _tmp_nodev.  - n
│ │ │ +0019fe10: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ +0019fe20: 0a2d 206e 616d 653a 2027 4164 6420 6e6f  .- name: 'Add no
│ │ │ +0019fe30: 6465 7620 4f70 7469 6f6e 2074 6f20 2f74  dev Option to /t
│ │ │ +0019fe40: 6d70 3a20 4372 6561 7465 206d 6f75 6e74  mp: Create mount
│ │ │ +0019fe50: 5f69 6e66 6f20 6469 6374 696f 6e61 7279  _info dictionary
│ │ │ +0019fe60: 2076 6172 6961 626c 6527 0a20 2073 6574   variable'.  set
│ │ │ +0019fe70: 5f66 6163 743a 0a20 2020 206d 6f75 6e74  _fact:.    mount
│ │ │ +0019fe80: 5f69 6e66 6f3a 2027 7b7b 206d 6f75 6e74  _info: '{{ mount
│ │ │ +0019fe90: 5f69 6e66 6f7c 6465 6661 756c 7428 7b7d  _info|default({}
│ │ │ +0019fea0: 297c 636f 6d62 696e 6528 7b69 7465 6d2e  )|combine({item.
│ │ │ +0019feb0: 303a 2069 7465 6d2e 317d 2920 7d7d 270a  0: item.1}) }}'.
│ │ │ +0019fec0: 2020 7769 7468 5f74 6f67 6574 6865 723a    with_together:
│ │ │ +0019fed0: 0a20 202d 2027 7b7b 2064 6576 6963 655f  .  - '{{ device_
│ │ │ +0019fee0: 6e61 6d65 2e73 7464 6f75 745f 6c69 6e65  name.stdout_line
│ │ │ +0019fef0: 735b 305d 2e73 706c 6974 2829 207c 206d  s[0].split() | m
│ │ │ +0019ff00: 6170 2827 276c 6f77 6572 2727 2920 7c20  ap(''lower'') | 
│ │ │ +0019ff10: 6c69 7374 207d 7d27 0a20 202d 2027 7b7b  list }}'.  - '{{
│ │ │ +0019ff20: 2064 6576 6963 655f 6e61 6d65 2e73 7464   device_name.std
│ │ │ +0019ff30: 6f75 745f 6c69 6e65 735b 315d 2e73 706c  out_lines[1].spl
│ │ │ +0019ff40: 6974 2829 207c 206c 6973 7420 7d7d 270a  it() | list }}'.
│ │ │ +0019ff50: 2020 7768 656e 3a0a 2020 2d20 2820 6e6f    when:.  - ( no
│ │ │ +0019ff60: 7420 2820 226b 6572 6e65 6c22 2069 6e20  t ( "kernel" in 
│ │ │ +0019ff70: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +0019ff80: 636b 6167 6573 2061 6e64 2022 626f 6f74  ckages and "boot
│ │ │ +0019ff90: 6322 2069 6e20 616e 7369 626c 655f 6661  c" in ansible_fa
│ │ │ +0019ffa0: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ +0019ffb0: 2061 6e64 206e 6f74 2022 6f70 656e 7368   and not "opensh
│ │ │ +0019ffc0: 6966 742d 6b75 6265 6c65 7422 2069 6e20  ift-kubelet" in 
│ │ │ +0019ffd0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +0019ffe0: 636b 6167 6573 2061 6e64 2022 6f73 7472  ckages and "ostr
│ │ │ +0019fff0: 6565 2220 696e 2061 6e73 6962 6c65 5f70  ee" in ansible_p
│ │ │ +001a0000: 726f 635f 636d 646c 696e 650a 2020 2020  roc_cmdline.    
│ │ │ +001a0010: 2920 616e 6420 6e6f 7420 2820 616e 7369  ) and not ( ansi
│ │ │ +001a0020: 626c 655f 7669 7274 7561 6c69 7a61 7469  ble_virtualizati
│ │ │ +001a0030: 6f6e 5f74 7970 6520 696e 205b 2264 6f63  on_type in ["doc
│ │ │ +001a0040: 6b65 7222 2c20 226c 7863 222c 2022 6f70  ker", "lxc", "op
│ │ │ +001a0050: 656e 767a 222c 2022 706f 646d 616e 222c  envz", "podman",
│ │ │ +001a0060: 0a20 2020 2022 636f 6e74 6169 6e65 7222  .    "container"
│ │ │ +001a0070: 5d20 2920 290a 2020 2d20 2722 2f74 6d70  ] ) ).  - '"/tmp
│ │ │ +001a0080: 2220 696e 2061 6e73 6962 6c65 5f6d 6f75  " in ansible_mou
│ │ │ +001a0090: 6e74 7320 7c20 6d61 7028 6174 7472 6962  nts | map(attrib
│ │ │ +001a00a0: 7574 653d 226d 6f75 6e74 2229 207c 206c  ute="mount") | l
│ │ │ +001a00b0: 6973 7427 0a20 202d 2064 6576 6963 655f  ist'.  - device_
│ │ │ +001a00c0: 6e61 6d65 2e73 7464 6f75 7420 6973 2064  name.stdout is d
│ │ │ +001a00d0: 6566 696e 6564 2061 6e64 2064 6576 6963  efined and devic
│ │ │ +001a00e0: 655f 6e61 6d65 2e73 7464 6f75 745f 6c69  e_name.stdout_li
│ │ │ +001a00f0: 6e65 7320 6973 2064 6566 696e 6564 0a20  nes is defined. 
│ │ │ +001a0100: 202d 2028 6465 7669 6365 5f6e 616d 652e   - (device_name.
│ │ │ +001a0110: 7374 646f 7574 207c 206c 656e 6774 6820  stdout | length 
│ │ │ +001a0120: 2667 743b 2030 290a 2020 7461 6773 3a0a  > 0).  tags:.
│ │ │ +001a0130: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001a0140: 4143 2d36 0a20 202d 204e 4953 542d 3830  AC-6.  - NIST-80
│ │ │ +001a0150: 302d 3533 2d41 432d 3628 3129 0a20 202d  0-53-AC-6(1).  -
│ │ │ +001a0160: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +001a0170: 3628 6129 0a20 202d 204e 4953 542d 3830  6(a).  - NIST-80
│ │ │ +001a0180: 302d 3533 2d43 4d2d 3728 6129 0a20 202d  0-53-CM-7(a).  -
│ │ │ +001a0190: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +001a01a0: 3728 6229 0a20 202d 204e 4953 542d 3830  7(b).  - NIST-80
│ │ │ +001a01b0: 302d 3533 2d4d 502d 370a 2020 2d20 636f  0-53-MP-7.  - co
│ │ │ +001a01c0: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ +001a01d0: 0a20 202d 2068 6967 685f 6469 7372 7570  .  - high_disrup
│ │ │ +001a01e0: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d  tion.  - low_com
│ │ │ +001a01f0: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ +001a0200: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ +001a0210: 6d6f 756e 745f 6f70 7469 6f6e 5f74 6d70  mount_option_tmp
│ │ │ +001a0220: 5f6e 6f64 6576 0a20 202d 206e 6f5f 7265  _nodev.  - no_re
│ │ │ +001a0230: 626f 6f74 5f6e 6565 6465 640a 0a2d 206e  boot_needed..- n
│ │ │ +001a0240: 616d 653a 2027 4164 6420 6e6f 6465 7620  ame: 'Add nodev 
│ │ │ +001a0250: 4f70 7469 6f6e 2074 6f20 2f74 6d70 3a20  Option to /tmp: 
│ │ │ +001a0260: 4966 202f 746d 7020 6e6f 7420 6d6f 756e  If /tmp not moun
│ │ │ +001a0270: 7465 642c 2063 7261 6674 206d 6f75 6e74  ted, craft mount
│ │ │ +001a0280: 5f69 6e66 6f20 6d61 6e75 616c 6c79 270a  _info manually'.
│ │ │ +001a0290: 2020 7365 745f 6661 6374 3a0a 2020 2020    set_fact:.    
│ │ │ +001a02a0: 6d6f 756e 745f 696e 666f 3a20 277b 7b20  mount_info: '{{ 
│ │ │ +001a02b0: 6d6f 756e 745f 696e 666f 7c64 6566 6175  mount_info|defau
│ │ │ +001a02c0: 6c74 287b 7d29 7c63 6f6d 6269 6e65 287b  lt({})|combine({
│ │ │ +001a02d0: 6974 656d 2e30 3a20 6974 656d 2e31 7d29  item.0: item.1})
│ │ │ +001a02e0: 207d 7d27 0a20 2077 6974 685f 746f 6765   }}'.  with_toge
│ │ │ +001a02f0: 7468 6572 3a0a 2020 2d20 2d20 7461 7267  ther:.  - - targ
│ │ │ +001a0300: 6574 0a20 2020 202d 2073 6f75 7263 650a  et.    - source.
│ │ │ +001a0310: 2020 2020 2d20 6673 7479 7065 0a20 2020      - fstype.   
│ │ │ +001a0320: 202d 206f 7074 696f 6e73 0a20 202d 202d   - options.  - -
│ │ │ +001a0330: 202f 746d 700a 2020 2020 2d20 2727 0a20   /tmp.    - ''. 
│ │ │ +001a0340: 2020 202d 2027 270a 2020 2020 2d20 6465     - ''.    - de
│ │ │ +001a0350: 6661 756c 7473 0a20 2077 6865 6e3a 0a20  faults.  when:. 
│ │ │ +001a0360: 202d 2028 206e 6f74 2028 2022 6b65 726e   - ( not ( "kern
│ │ │ +001a0370: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ +001a0380: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +001a0390: 6420 2262 6f6f 7463 2220 696e 2061 6e73  d "bootc" in ans
│ │ │ +001a03a0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001a03b0: 6765 730a 2020 2020 616e 6420 6e6f 7420  ges.    and not 
│ │ │ +001a03c0: 226f 7065 6e73 6869 6674 2d6b 7562 656c  "openshift-kubel
│ │ │ +001a03d0: 6574 2220 696e 2061 6e73 6962 6c65 5f66  et" in ansible_f
│ │ │ +001a03e0: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +001a03f0: 6420 226f 7374 7265 6522 2069 6e20 616e  d "ostree" in an
│ │ │ +001a0400: 7369 626c 655f 7072 6f63 5f63 6d64 6c69  sible_proc_cmdli
│ │ │ +001a0410: 6e65 0a20 2020 2029 2061 6e64 206e 6f74  ne.    ) and not
│ │ │ +001a0420: 2028 2061 6e73 6962 6c65 5f76 6972 7475   ( ansible_virtu
│ │ │ +001a0430: 616c 697a 6174 696f 6e5f 7479 7065 2069  alization_type i
│ │ │ +001a0440: 6e20 5b22 646f 636b 6572 222c 2022 6c78  n ["docker", "lx
│ │ │ +001a0450: 6322 2c20 226f 7065 6e76 7a22 2c20 2270  c", "openvz", "p
│ │ │ +001a0460: 6f64 6d61 6e22 2c0a 2020 2020 2263 6f6e  odman",.    "con
│ │ │ +001a0470: 7461 696e 6572 225d 2029 2029 0a20 202d  tainer"] ) ).  -
│ │ │ +001a0480: 2027 222f 746d 7022 2069 6e20 616e 7369   '"/tmp" in ansi
│ │ │ +001a0490: 626c 655f 6d6f 756e 7473 207c 206d 6170  ble_mounts | map
│ │ │ +001a04a0: 2861 7474 7269 6275 7465 3d22 6d6f 756e  (attribute="moun
│ │ │ +001a04b0: 7422 2920 7c20 6c69 7374 270a 2020 2d20  t") | list'.  - 
│ │ │ +001a04c0: 2822 2d2d 6673 7461 6222 207c 206c 656e  ("--fstab" | len
│ │ │ +001a04d0: 6774 6820 3d3d 2030 290a 2020 2d20 6465  gth == 0).  - de
│ │ │ +001a04e0: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ +001a04f0: 2069 7320 6465 6669 6e65 6420 616e 6420   is defined and 
│ │ │ +001a0500: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ +001a0510: 7574 5f6c 696e 6573 2069 7320 6465 6669  ut_lines is defi
│ │ │ +001a0520: 6e65 640a 2020 2d20 2864 6576 6963 655f  ned.  - (device_
│ │ │ +001a0530: 6e61 6d65 2e73 7464 6f75 7420 7c20 6c65  name.stdout | le
│ │ │ +001a0540: 6e67 7468 203d 3d20 3029 0a20 2074 6167  ngth == 0).  tag
│ │ │ +001a0550: 733a 0a20 202d 204e 4953 542d 3830 302d  s:.  - NIST-800-
│ │ │ +001a0560: 3533 2d41 432d 360a 2020 2d20 4e49 5354  53-AC-6.  - NIST
│ │ │ +001a0570: 2d38 3030 2d35 332d 4143 2d36 2831 290a  -800-53-AC-6(1).
│ │ │ +001a0580: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001a0590: 434d 2d36 2861 290a 2020 2d20 4e49 5354  CM-6(a).  - NIST
│ │ │ +001a05a0: 2d38 3030 2d35 332d 434d 2d37 2861 290a  -800-53-CM-7(a).
│ │ │ +001a05b0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001a05c0: 434d 2d37 2862 290a 2020 2d20 4e49 5354  CM-7(b).  - NIST
│ │ │ +001a05d0: 2d38 3030 2d35 332d 4d50 2d37 0a20 202d  -800-53-MP-7.  -
│ │ │ +001a05e0: 2063 6f6e 6669 6775 7265 5f73 7472 6174   configure_strat
│ │ │ +001a05f0: 6567 790a 2020 2d20 6869 6768 5f64 6973  egy.  - high_dis
│ │ │ +001a0600: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f  ruption.  - low_
│ │ │ +001a0610: 636f 6d70 6c65 7869 7479 0a20 202d 206d  complexity.  - m
│ │ │ +001a0620: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ +001a0630: 202d 206d 6f75 6e74 5f6f 7074 696f 6e5f   - mount_option_
│ │ │ +001a0640: 746d 705f 6e6f 6465 760a 2020 2d20 6e6f  tmp_nodev.  - no
│ │ │ +001a0650: 5f72 6562 6f6f 745f 6e65 6564 6564 0a0a  _reboot_needed..
│ │ │ +001a0660: 2d20 6e61 6d65 3a20 2741 6464 206e 6f64  - name: 'Add nod
│ │ │ +001a0670: 6576 204f 7074 696f 6e20 746f 202f 746d  ev Option to /tm
│ │ │ +001a0680: 703a 204d 616b 6520 7375 7265 206e 6f64  p: Make sure nod
│ │ │ +001a0690: 6576 206f 7074 696f 6e20 6973 2070 6172  ev option is par
│ │ │ +001a06a0: 7420 6f66 2074 6865 2074 6f20 2f74 6d70  t of the to /tmp
│ │ │ +001a06b0: 206f 7074 696f 6e73 270a 2020 7365 745f   options'.  set_
│ │ │ +001a06c0: 6661 6374 3a0a 2020 2020 6d6f 756e 745f  fact:.    mount_
│ │ │ +001a06d0: 696e 666f 3a20 277b 7b20 6d6f 756e 745f  info: '{{ mount_
│ │ │ +001a06e0: 696e 666f 207c 2063 6f6d 6269 6e65 2820  info | combine( 
│ │ │ +001a06f0: 7b27 276f 7074 696f 6e73 2727 3a27 2727  {''options'':'''
│ │ │ +001a0700: 277e 286d 6f75 6e74 5f69 6e66 6f2e 6f70  '~(mount_info.op
│ │ │ +001a0710: 7469 6f6e 7320 7c0a 2020 2020 2020 6465  tions |.      de
│ │ │ +001a0720: 6661 756c 7428 2727 2727 2929 7e28 2727  fault(''''))~(''
│ │ │ +001a0730: 2c27 2720 6966 2028 6d6f 756e 745f 696e  ,'' if (mount_in
│ │ │ +001a0740: 666f 2e6f 7074 696f 6e73 207c 2064 6566  fo.options | def
│ │ │ +001a0750: 6175 6c74 2827 2727 2729 2920 656c 7365  ault('''')) else
│ │ │ +001a0760: 2027 2727 2729 7e27 276e 6f64 6576 2727   '''')~''nodev''
│ │ │ +001a0770: 0a20 2020 2020 207d 2920 7d7d 270a 2020  .      }) }}'.  
│ │ │ +001a0780: 7768 656e 3a0a 2020 2d20 2820 6e6f 7420  when:.  - ( not 
│ │ │ +001a0790: 2820 226b 6572 6e65 6c22 2069 6e20 616e  ( "kernel" in an
│ │ │ +001a07a0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001a07b0: 6167 6573 2061 6e64 2022 626f 6f74 6322  ages and "bootc"
│ │ │ +001a07c0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001a07d0: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ +001a07e0: 6e64 206e 6f74 2022 6f70 656e 7368 6966  nd not "openshif
│ │ │ +001a07f0: 742d 6b75 6265 6c65 7422 2069 6e20 616e  t-kubelet" in an
│ │ │ +001a0800: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001a0810: 6167 6573 2061 6e64 2022 6f73 7472 6565  ages and "ostree
│ │ │ +001a0820: 2220 696e 2061 6e73 6962 6c65 5f70 726f  " in ansible_pro
│ │ │ +001a0830: 635f 636d 646c 696e 650a 2020 2020 2920  c_cmdline.    ) 
│ │ │ +001a0840: 616e 6420 6e6f 7420 2820 616e 7369 626c  and not ( ansibl
│ │ │ +001a0850: 655f 7669 7274 7561 6c69 7a61 7469 6f6e  e_virtualization
│ │ │ +001a0860: 5f74 7970 6520 696e 205b 2264 6f63 6b65  _type in ["docke
│ │ │ +001a0870: 7222 2c20 226c 7863 222c 2022 6f70 656e  r", "lxc", "open
│ │ │ +001a0880: 767a 222c 2022 706f 646d 616e 222c 0a20  vz", "podman",. 
│ │ │ +001a0890: 2020 2022 636f 6e74 6169 6e65 7222 5d20     "container"] 
│ │ │ +001a08a0: 2920 290a 2020 2d20 2722 2f74 6d70 2220  ) ).  - '"/tmp" 
│ │ │ +001a08b0: 696e 2061 6e73 6962 6c65 5f6d 6f75 6e74  in ansible_mount
│ │ │ +001a08c0: 7320 7c20 6d61 7028 6174 7472 6962 7574  s | map(attribut
│ │ │ +001a08d0: 653d 226d 6f75 6e74 2229 207c 206c 6973  e="mount") | lis
│ │ │ +001a08e0: 7427 0a20 202d 206d 6f75 6e74 5f69 6e66  t'.  - mount_inf
│ │ │ +001a08f0: 6f20 6973 2064 6566 696e 6564 2061 6e64  o is defined and
│ │ │ +001a0900: 2022 6e6f 6465 7622 206e 6f74 2069 6e20   "nodev" not in 
│ │ │ +001a0910: 286d 6f75 6e74 5f69 6e66 6f2e 6f70 7469  (mount_info.opti
│ │ │ +001a0920: 6f6e 7320 7c20 6465 6661 756c 7428 2727  ons | default(''
│ │ │ +001a0930: 2929 0a20 2074 6167 733a 0a20 202d 204e  )).  tags:.  - N
│ │ │ +001a0940: 4953 542d 3830 302d 3533 2d41 432d 360a  IST-800-53-AC-6.
│ │ │ +001a0950: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001a0960: 4143 2d36 2831 290a 2020 2d20 4e49 5354  AC-6(1).  - NIST
│ │ │ +001a0970: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ +001a0980: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001a0990: 434d 2d37 2861 290a 2020 2d20 4e49 5354  CM-7(a).  - NIST
│ │ │ +001a09a0: 2d38 3030 2d35 332d 434d 2d37 2862 290a  -800-53-CM-7(b).
│ │ │ +001a09b0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001a09c0: 4d50 2d37 0a20 202d 2063 6f6e 6669 6775  MP-7.  - configu
│ │ │ +001a09d0: 7265 5f73 7472 6174 6567 790a 2020 2d20  re_strategy.  - 
│ │ │ +001a09e0: 6869 6768 5f64 6973 7275 7074 696f 6e0a  high_disruption.
│ │ │ +001a09f0: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ +001a0a00: 7479 0a20 202d 206d 6564 6975 6d5f 7365  ty.  - medium_se
│ │ │ +001a0a10: 7665 7269 7479 0a20 202d 206d 6f75 6e74  verity.  - mount
│ │ │ +001a0a20: 5f6f 7074 696f 6e5f 746d 705f 6e6f 6465  _option_tmp_node
│ │ │ +001a0a30: 760a 2020 2d20 6e6f 5f72 6562 6f6f 745f  v.  - no_reboot_
│ │ │ +001a0a40: 6e65 6564 6564 0a0a 2d20 6e61 6d65 3a20  needed..- name: 
│ │ │ +001a0a50: 2741 6464 206e 6f64 6576 204f 7074 696f  'Add nodev Optio
│ │ │ +001a0a60: 6e20 746f 202f 746d 703a 2045 6e73 7572  n to /tmp: Ensur
│ │ │ +001a0a70: 6520 2f74 6d70 2069 7320 6d6f 756e 7465  e /tmp is mounte
│ │ │ +001a0a80: 6420 7769 7468 206e 6f64 6576 206f 7074  d with nodev opt
│ │ │ +001a0a90: 696f 6e27 0a20 2061 6e73 6962 6c65 2e70  ion'.  ansible.p
│ │ │ +001a0aa0: 6f73 6978 2e6d 6f75 6e74 3a0a 2020 2020  osix.mount:.    
│ │ │ +001a0ab0: 7061 7468 3a20 2f74 6d70 0a20 2020 2073  path: /tmp.    s
│ │ │ +001a0ac0: 7263 3a20 277b 7b20 6d6f 756e 745f 696e  rc: '{{ mount_in
│ │ │ +001a0ad0: 666f 2e73 6f75 7263 6520 7c20 6465 6661  fo.source | defa
│ │ │ +001a0ae0: 756c 7428 2727 2727 2920 7d7d 270a 2020  ult('''') }}'.  
│ │ │ +001a0af0: 2020 6f70 7473 3a20 277b 7b20 6d6f 756e    opts: '{{ moun
│ │ │ +001a0b00: 745f 696e 666f 2e6f 7074 696f 6e73 207c  t_info.options |
│ │ │ +001a0b10: 2064 6566 6175 6c74 2827 2727 2729 207d   default('''') }
│ │ │ +001a0b20: 7d27 0a20 2020 2073 7461 7465 3a20 6d6f  }'.    state: mo
│ │ │ +001a0b30: 756e 7465 640a 2020 2020 6673 7479 7065  unted.    fstype
│ │ │ +001a0b40: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ +001a0b50: 2e66 7374 7970 6520 7c20 6465 6661 756c  .fstype | defaul
│ │ │ +001a0b60: 7428 2727 2727 2920 7d7d 270a 2020 7265  t('''') }}'.  re
│ │ │ +001a0b70: 6769 7374 6572 3a20 6d6f 756e 745f 7265  gister: mount_re
│ │ │ +001a0b80: 7375 6c74 0a20 2066 6169 6c65 645f 7768  sult.  failed_wh
│ │ │ +001a0b90: 656e 3a0a 2020 2d20 6d6f 756e 745f 7265  en:.  - mount_re
│ │ │ +001a0ba0: 7375 6c74 2069 7320 6661 696c 6564 0a20  sult is failed. 
│ │ │ +001a0bb0: 202d 2027 2727 7461 7267 6574 2069 7320   - '''target is 
│ │ │ +001a0bc0: 6275 7379 2727 206e 6f74 2069 6e20 286d  busy'' not in (m
│ │ │ +001a0bd0: 6f75 6e74 5f72 6573 756c 742e 6d73 6720  ount_result.msg 
│ │ │ +001a0be0: 7c20 6465 6661 756c 7428 2727 2727 2929  | default(''''))
│ │ │ +001a0bf0: 270a 2020 2d20 2727 2761 6c72 6561 6479  '.  - '''already
│ │ │ +001a0c00: 206d 6f75 6e74 6564 2727 206e 6f74 2069   mounted'' not i
│ │ │ +001a0c10: 6e20 286d 6f75 6e74 5f72 6573 756c 742e  n (mount_result.
│ │ │ +001a0c20: 6d73 6720 7c20 6465 6661 756c 7428 2727  msg | default(''
│ │ │ +001a0c30: 2727 2929 270a 2020 7768 656e 3a0a 2020  ''))'.  when:.  
│ │ │ +001a0c40: 2d20 2820 6e6f 7420 2820 226b 6572 6e65  - ( not ( "kerne
│ │ │ +001a0c50: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ +001a0c60: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ +001a0c70: 2022 626f 6f74 6322 2069 6e20 616e 7369   "bootc" in ansi
│ │ │ +001a0c80: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001a0c90: 6573 0a20 2020 2061 6e64 206e 6f74 2022  es.    and not "
│ │ │ +001a0ca0: 6f70 656e 7368 6966 742d 6b75 6265 6c65  openshift-kubele
│ │ │ +001a0cb0: 7422 2069 6e20 616e 7369 626c 655f 6661  t" in ansible_fa
│ │ │ +001a0cc0: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ +001a0cd0: 2022 6f73 7472 6565 2220 696e 2061 6e73   "ostree" in ans
│ │ │ +001a0ce0: 6962 6c65 5f70 726f 635f 636d 646c 696e  ible_proc_cmdlin
│ │ │ +001a0cf0: 650a 2020 2020 2920 616e 6420 6e6f 7420  e.    ) and not 
│ │ │ +001a0d00: 2820 616e 7369 626c 655f 7669 7274 7561  ( ansible_virtua
│ │ │ +001a0d10: 6c69 7a61 7469 6f6e 5f74 7970 6520 696e  lization_type in
│ │ │ +001a0d20: 205b 2264 6f63 6b65 7222 2c20 226c 7863   ["docker", "lxc
│ │ │ +001a0d30: 222c 2022 6f70 656e 767a 222c 2022 706f  ", "openvz", "po
│ │ │ +001a0d40: 646d 616e 222c 0a20 2020 2022 636f 6e74  dman",.    "cont
│ │ │ +001a0d50: 6169 6e65 7222 5d20 2920 290a 2020 2d20  ainer"] ) ).  - 
│ │ │ +001a0d60: 2722 2f74 6d70 2220 696e 2061 6e73 6962  '"/tmp" in ansib
│ │ │ +001a0d70: 6c65 5f6d 6f75 6e74 7320 7c20 6d61 7028  le_mounts | map(
│ │ │ +001a0d80: 6174 7472 6962 7574 653d 226d 6f75 6e74  attribute="mount
│ │ │ +001a0d90: 2229 207c 206c 6973 7427 0a20 202d 206d  ") | list'.  - m
│ │ │ +001a0da0: 6f75 6e74 5f69 6e66 6f20 6973 2064 6566  ount_info is def
│ │ │ +001a0db0: 696e 6564 0a20 202d 2028 6465 7669 6365  ined.  - (device
│ │ │ +001a0dc0: 5f6e 616d 652e 7374 646f 7574 2069 7320  _name.stdout is 
│ │ │ +001a0dd0: 6465 6669 6e65 6420 616e 6420 2864 6576  defined and (dev
│ │ │ +001a0de0: 6963 655f 6e61 6d65 2e73 7464 6f75 7420  ice_name.stdout 
│ │ │ +001a0df0: 7c20 6c65 6e67 7468 2026 6774 3b20 3029  | length > 0)
│ │ │ +001a0e00: 2920 6f72 2028 222d 2d66 7374 6162 220a  ) or ("--fstab".
│ │ │ +001a0e10: 2020 2020 7c20 6c65 6e67 7468 203d 3d20      | length == 
│ │ │ +001a0e20: 3029 0a20 2074 6167 733a 0a20 202d 204e  0).  tags:.  - N
│ │ │ +001a0e30: 4953 542d 3830 302d 3533 2d41 432d 360a  IST-800-53-AC-6.
│ │ │ +001a0e40: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001a0e50: 4143 2d36 2831 290a 2020 2d20 4e49 5354  AC-6(1).  - NIST
│ │ │ +001a0e60: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ +001a0e70: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001a0e80: 434d 2d37 2861 290a 2020 2d20 4e49 5354  CM-7(a).  - NIST
│ │ │ +001a0e90: 2d38 3030 2d35 332d 434d 2d37 2862 290a  -800-53-CM-7(b).
│ │ │ +001a0ea0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001a0eb0: 4d50 2d37 0a20 202d 2063 6f6e 6669 6775  MP-7.  - configu
│ │ │ +001a0ec0: 7265 5f73 7472 6174 6567 790a 2020 2d20  re_strategy.  - 
│ │ │ +001a0ed0: 6869 6768 5f64 6973 7275 7074 696f 6e0a  high_disruption.
│ │ │ +001a0ee0: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ +001a0ef0: 7479 0a20 202d 206d 6564 6975 6d5f 7365  ty.  - medium_se
│ │ │ +001a0f00: 7665 7269 7479 0a20 202d 206d 6f75 6e74  verity.  - mount
│ │ │ +001a0f10: 5f6f 7074 696f 6e5f 746d 705f 6e6f 6465  _option_tmp_node
│ │ │ +001a0f20: 760a 2020 2d20 6e6f 5f72 6562 6f6f 745f  v.  - no_reboot_
│ │ │ +001a0f30: 6e65 6564 6564 0a3c 2f63 6f64 653e 3c2f  needed.
Remediati │ │ │ +001a0ff0: 6f6e 2053 6865 6c6c 2073 6372 6970 7420 on Shell script │ │ │ +001a1000: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
Reboot:false< │ │ │ +001a10a0: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
# Remedia
│ │ │ +001a10c0: 7469 6f6e 2069 7320 6170 706c 6963 6162  tion is applicab
│ │ │ +001a10d0: 6c65 206f 6e6c 7920 696e 2063 6572 7461  le only in certa
│ │ │ +001a10e0: 696e 2070 6c61 7466 6f72 6d73 0a69 6620  in platforms.if 
│ │ │ +001a10f0: 2820 2120 2820 7b20 7270 6d20 2d2d 7175  ( ! ( { rpm --qu
│ │ │ +001a1100: 6965 7420 2d71 206b 6572 6e65 6c20 3b7d  iet -q kernel ;}
│ │ │ +001a1110: 2026 616d 703b 2661 6d70 3b20 7b20 7270   && { rp
│ │ │ +001a1120: 6d20 2d2d 7175 6965 7420 2d71 2062 6f6f  m --quiet -q boo
│ │ │ +001a1130: 7463 203b 7d20 2661 6d70 3b26 616d 703b  tc ;} &&
│ │ │ +001a1140: 207b 2021 2072 706d 202d 2d71 7569 6574   { ! rpm --quiet
│ │ │ +001a1150: 202d 7120 6f70 656e 7368 6966 742d 6b75   -q openshift-ku
│ │ │ +001a1160: 6265 6c65 7420 3b7d 2026 616d 703b 2661  belet ;} &&a
│ │ │ +001a1170: 6d70 3b20 285b 202d 6620 2f72 756e 2f6f  mp; ([ -f /run/o
│ │ │ +001a1180: 7374 7265 652d 626f 6f74 6564 205d 207c  stree-booted ] |
│ │ │ +001a1190: 7c20 5b20 2d4c 202f 6f73 7472 6565 205d  | [ -L /ostree ]
│ │ │ +001a11a0: 2920 2920 2661 6d70 3b26 616d 703b 2021  ) ) && !
│ │ │ +001a11b0: 2028 205b 202d 6620 2f2e 646f 636b 6572   ( [ -f /.docker
│ │ │ +001a11c0: 656e 7620 5d20 7c7c 205b 202d 6620 2f72  env ] || [ -f /r
│ │ │ +001a11d0: 756e 2f2e 636f 6e74 6169 6e65 7265 6e76  un/.containerenv
│ │ │ +001a11e0: 205d 2029 2029 2026 616d 703b 2661 6d70   ] ) ) &&
│ │ │ +001a11f0: 3b20 7b20 2820 6669 6e64 6d6e 7420 2d2d  ; { ( findmnt --
│ │ │ +001a1200: 6b65 726e 656c 2022 2f74 6d70 2220 2667  kernel "/tmp" &g
│ │ │ +001a1210: 743b 202f 6465 762f 6e75 6c6c 207c 7c20  t; /dev/null || 
│ │ │ +001a1220: 6669 6e64 6d6e 7420 2d2d 6673 7461 6220  findmnt --fstab 
│ │ │ +001a1230: 222f 746d 7022 2026 6774 3b20 2f64 6576  "/tmp" > /dev
│ │ │ +001a1240: 2f6e 756c 6c20 293b 207d 3b20 7468 656e  /null ); }; then
│ │ │ +001a1250: 0a0a 6675 6e63 7469 6f6e 2070 6572 666f  ..function perfo
│ │ │ +001a1260: 726d 5f72 656d 6564 6961 7469 6f6e 207b  rm_remediation {
│ │ │ +001a1270: 0a0a 2020 2020 0a20 2020 2020 2020 2023  ..    .        #
│ │ │ +001a1280: 2074 6865 206d 6f75 6e74 2070 6f69 6e74   the mount point
│ │ │ +001a1290: 202f 746d 7020 6861 7320 746f 2062 6520   /tmp has to be 
│ │ │ +001a12a0: 6465 6669 6e65 6420 696e 202f 6574 632f  defined in /etc/
│ │ │ +001a12b0: 6673 7461 620a 2020 2020 2020 2020 2320  fstab.        # 
│ │ │ +001a12c0: 6265 666f 7265 2074 6869 7320 7265 6d65  before this reme
│ │ │ +001a12d0: 6469 6174 696f 6e20 6361 6e20 6265 2065  diation can be e
│ │ │ +001a12e0: 7865 6375 7465 642e 2049 6e20 6361 7365  xecuted. In case
│ │ │ +001a12f0: 2069 7420 6973 206e 6f74 2064 6566 696e   it is not defin
│ │ │ +001a1300: 6564 2c20 7468 650a 2020 2020 2020 2020  ed, the.        
│ │ │ +001a1310: 2320 7265 6d65 6469 6174 696f 6e20 6162  # remediation ab
│ │ │ +001a1320: 6f72 7473 2061 6e64 206e 6f20 6368 616e  orts and no chan
│ │ │ +001a1330: 6765 7320 7265 6761 7264 696e 6720 7468  ges regarding th
│ │ │ +001a1340: 6520 6d6f 756e 7420 706f 696e 7420 6172  e mount point ar
│ │ │ +001a1350: 6520 646f 6e65 2e0a 2020 2020 2020 2020  e done..        
│ │ │ +001a1360: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ +001a1370: 685f 7265 6765 7870 3d22 2428 7072 696e  h_regexp="$(prin
│ │ │ +001a1380: 7466 2022 5e5b 5b3a 7370 6163 653a 5d5d  tf "^[[:space:]]
│ │ │ +001a1390: 2a5b 5e23 5d2e 2a5b 5b3a 7370 6163 653a  *[^#].*[[:space:
│ │ │ +001a13a0: 5d5d 2573 5b5b 3a73 7061 6365 3a5d 5d22  ]]%s[[:space:]]"
│ │ │ +001a13b0: 2022 2f74 6d70 2229 220a 0a20 2020 2067   "/tmp")"..    g
│ │ │ +001a13c0: 7265 7020 2224 6d6f 756e 745f 706f 696e  rep "$mount_poin
│ │ │ +001a13d0: 745f 6d61 7463 685f 7265 6765 7870 2220  t_match_regexp" 
│ │ │ +001a13e0: 2d71 202f 6574 632f 6673 7461 6220 5c0a  -q /etc/fstab \.
│ │ │ +001a13f0: 2020 2020 2020 2020 7c7c 207b 2065 6368          || { ech
│ │ │ +001a1400: 6f20 2254 6865 206d 6f75 6e74 2070 6f69  o "The mount poi
│ │ │ +001a1410: 6e74 2027 2f74 6d70 2720 6973 206e 6f74  nt '/tmp' is not
│ │ │ +001a1420: 2065 7665 6e20 696e 202f 6574 632f 6673   even in /etc/fs
│ │ │ +001a1430: 7461 622c 2073 6f20 7765 2063 616e 2774  tab, so we can't
│ │ │ +001a1440: 2073 6574 2075 7020 6d6f 756e 7420 6f70   set up mount op
│ │ │ +001a1450: 7469 6f6e 7322 2026 6774 3b26 616d 703b  tions" >&
│ │ │ +001a1460: 323b 0a20 2020 2020 2020 2020 2020 2020  2;.             
│ │ │ +001a1470: 2020 2065 6368 6f20 224e 6f74 2072 656d     echo "Not rem
│ │ │ +001a1480: 6564 6961 7469 6e67 2c20 6265 6361 7573  ediating, becaus
│ │ │ +001a1490: 6520 7468 6572 6520 6973 206e 6f20 7265  e there is no re
│ │ │ +001a14a0: 636f 7264 206f 6620 2f74 6d70 2069 6e20  cord of /tmp in 
│ │ │ +001a14b0: 2f65 7463 2f66 7374 6162 2220 2667 743b  /etc/fstab" >
│ │ │ +001a14c0: 2661 6d70 3b32 3b20 7265 7475 726e 2031  &2; return 1
│ │ │ +001a14d0: 3b20 7d0a 2020 2020 0a0a 0a20 2020 206d  ; }.    ...    m
│ │ │ +001a14e0: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ +001a14f0: 5f72 6567 6578 703d 2224 2870 7269 6e74  _regexp="$(print
│ │ │ +001a1500: 6620 225e 5b5b 3a73 7061 6365 3a5d 5d2a  f "^[[:space:]]*
│ │ │ +001a1510: 5b5e 235d 2e2a 5b5b 3a73 7061 6365 3a5d  [^#].*[[:space:]
│ │ │ +001a1520: 5d25 735b 5b3a 7370 6163 653a 5d5d 2220  ]%s[[:space:]]" 
│ │ │ +001a1530: 2f74 6d70 2922 0a0a 2020 2020 2320 4966  /tmp)"..    # If
│ │ │ +001a1540: 2074 6865 206d 6f75 6e74 2070 6f69 6e74   the mount point
│ │ │ +001a1550: 2069 7320 6e6f 7420 696e 202f 6574 632f   is not in /etc/
│ │ │ +001a1560: 6673 7461 622c 2067 6574 2070 7265 7669  fstab, get previ
│ │ │ +001a1570: 6f75 7320 6d6f 756e 7420 6f70 7469 6f6e  ous mount option
│ │ │ +001a1580: 7320 6672 6f6d 202f 6574 632f 6d74 6162  s from /etc/mtab
│ │ │ +001a1590: 0a20 2020 2069 6620 2120 6772 6570 202d  .    if ! grep -
│ │ │ +001a15a0: 7120 2224 6d6f 756e 745f 706f 696e 745f  q "$mount_point_
│ │ │ +001a15b0: 6d61 7463 685f 7265 6765 7870 2220 2f65  match_regexp" /e
│ │ │ +001a15c0: 7463 2f66 7374 6162 3b20 7468 656e 0a20  tc/fstab; then. 
│ │ │ +001a15d0: 2020 2020 2020 2023 2072 756e 7469 6d65         # runtime
│ │ │ +001a15e0: 206f 7074 7320 7769 7468 6f75 7420 736f   opts without so
│ │ │ +001a15f0: 6d65 2061 7574 6f6d 6174 6963 206b 6572  me automatic ker
│ │ │ +001a1600: 6e65 6c2f 7573 6572 7370 6163 652d 6164  nel/userspace-ad
│ │ │ +001a1610: 6465 6420 6465 6661 756c 7473 0a20 2020  ded defaults.   
│ │ │ +001a1620: 2020 2020 2070 7265 7669 6f75 735f 6d6f       previous_mo
│ │ │ +001a1630: 756e 745f 6f70 7473 3d24 2867 7265 7020  unt_opts=$(grep 
│ │ │ +001a1640: 2224 6d6f 756e 745f 706f 696e 745f 6d61  "$mount_point_ma
│ │ │ +001a1650: 7463 685f 7265 6765 7870 2220 2f65 7463  tch_regexp" /etc
│ │ │ +001a1660: 2f6d 7461 6220 7c20 6865 6164 202d 3120  /mtab | head -1 
│ │ │ +001a1670: 7c20 2061 776b 2027 7b70 7269 6e74 2024  |  awk '{print $
│ │ │ +001a1680: 347d 2720 5c0a 2020 2020 2020 2020 2020  4}' \.          
│ │ │ +001a1690: 2020 2020 2020 2020 2020 7c20 7365 6420            | sed 
│ │ │ +001a16a0: 2d45 2022 732f 2872 777c 6465 6661 756c  -E "s/(rw|defaul
│ │ │ +001a16b0: 7473 7c73 6563 6c61 6265 6c7c 6e6f 6465  ts|seclabel|node
│ │ │ +001a16c0: 7629 282c 7c24 292f 2f67 3b73 2f2c 242f  v)(,|$)//g;s/,$/
│ │ │ +001a16d0: 2f22 290a 2020 2020 2020 2020 5b20 2224  /").        [ "$
│ │ │ +001a16e0: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ +001a16f0: 7074 7322 205d 2026 616d 703b 2661 6d70  pts" ] &&
│ │ │ +001a1700: 3b20 7072 6576 696f 7573 5f6d 6f75 6e74  ; previous_mount
│ │ │ +001a1710: 5f6f 7074 732b 3d22 2c22 0a20 2020 2020  _opts+=",".     
│ │ │ +001a1720: 2020 2023 2049 6e20 6973 6f39 3636 3020     # In iso9660 
│ │ │ +001a1730: 6669 6c65 7379 7374 656d 7320 6d74 6162  filesystems mtab
│ │ │ +001a1740: 2063 6f75 6c64 2064 6573 6372 6962 6520   could describe 
│ │ │ +001a1750: 6120 2262 6c6f 636b 7369 7a65 2220 7661  a "blocksize" va
│ │ │ +001a1760: 6c75 652c 2074 6869 7320 7368 6f75 6c64  lue, this should
│ │ │ +001a1770: 2062 6520 7265 666c 6563 7465 6420 696e   be reflected in
│ │ │ +001a1780: 0a20 2020 2020 2020 2023 2066 7374 6162  .        # fstab
│ │ │ +001a1790: 2061 7320 2262 6c6f 636b 222e 2020 5468   as "block".  Th
│ │ │ +001a17a0: 6520 6e65 7874 2076 6172 6961 626c 6520  e next variable 
│ │ │ +001a17b0: 6973 2074 6f20 7361 7469 7366 7920 7368  is to satisfy sh
│ │ │ +001a17c0: 656c 6c63 6865 636b 2053 4332 3035 302e  ellcheck SC2050.
│ │ │ +001a17d0: 0a20 2020 2020 2020 2066 735f 7479 7065  .        fs_type
│ │ │ +001a17e0: 3d22 220a 2020 2020 2020 2020 6966 205b  ="".        if [
│ │ │ +001a17f0: 2020 2224 6673 5f74 7970 6522 203d 3d20    "$fs_type" == 
│ │ │ +001a1800: 2269 736f 3936 3630 2220 5d20 3b20 7468  "iso9660" ] ; th
│ │ │ +001a1810: 656e 0a20 2020 2020 2020 2020 2020 2070  en.            p
│ │ │ +001a1820: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ +001a1830: 7473 3d24 2873 6564 2027 732f 626c 6f63  ts=$(sed 's/bloc
│ │ │ +001a1840: 6b73 697a 653d 2f62 6c6f 636b 3d2f 2720  ksize=/block=/' 
│ │ │ +001a1850: 266c 743b 266c 743b 266c 743b 2022 2470  <<< "$p
│ │ │ +001a1860: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ +001a1870: 7473 2229 0a20 2020 2020 2020 2066 690a  ts").        fi.
│ │ │ +001a1880: 2020 2020 2020 2020 6563 686f 2022 202f          echo " /
│ │ │ +001a1890: 746d 7020 2064 6566 6175 6c74 732c 247b  tmp  defaults,${
│ │ │ +001a18a0: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ +001a18b0: 7074 737d 6e6f 6465 7620 3020 3022 2026  pts}nodev 0 0" &
│ │ │ +001a18c0: 6774 3b26 6774 3b20 2f65 7463 2f66 7374  gt;> /etc/fst
│ │ │ +001a18d0: 6162 0a20 2020 2023 2049 6620 7468 6520  ab.    # If the 
│ │ │ +001a18e0: 6d6f 756e 745f 6f70 7420 6f70 7469 6f6e  mount_opt option
│ │ │ +001a18f0: 2069 7320 6e6f 7420 616c 7265 6164 7920   is not already 
│ │ │ +001a1900: 696e 2074 6865 206d 6f75 6e74 2070 6f69  in the mount poi
│ │ │ +001a1910: 6e74 2773 202f 6574 632f 6673 7461 6220  nt's /etc/fstab 
│ │ │ +001a1920: 656e 7472 792c 2061 6464 2069 740a 2020  entry, add it.  
│ │ │ +001a1930: 2020 656c 6966 2021 2067 7265 7020 2224    elif ! grep "$
│ │ │ +001a1940: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ +001a1950: 685f 7265 6765 7870 2220 2f65 7463 2f66  h_regexp" /etc/f
│ │ │ +001a1960: 7374 6162 207c 2067 7265 7020 2d71 2022  stab | grep -q "
│ │ │ +001a1970: 6e6f 6465 7622 3b20 7468 656e 0a20 2020  nodev"; then.   
│ │ │ +001a1980: 2020 2020 2070 7265 7669 6f75 735f 6d6f       previous_mo
│ │ │ +001a1990: 756e 745f 6f70 7473 3d24 2867 7265 7020  unt_opts=$(grep 
│ │ │ +001a19a0: 2224 6d6f 756e 745f 706f 696e 745f 6d61  "$mount_point_ma
│ │ │ +001a19b0: 7463 685f 7265 6765 7870 2220 2f65 7463  tch_regexp" /etc
│ │ │ +001a19c0: 2f66 7374 6162 207c 2061 776b 2027 7b70  /fstab | awk '{p
│ │ │ +001a19d0: 7269 6e74 2024 347d 2729 0a20 2020 2020  rint $4}').     
│ │ │ +001a19e0: 2020 2073 6564 202d 6920 2273 7c5c 2824     sed -i "s|\($
│ │ │ +001a19f0: 7b6d 6f75 6e74 5f70 6f69 6e74 5f6d 6174  {mount_point_mat
│ │ │ +001a1a00: 6368 5f72 6567 6578 707d 2e2a 247b 7072  ch_regexp}.*${pr
│ │ │ +001a1a10: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ +001a1a20: 737d 5c29 7c5c 312c 6e6f 6465 767c 2220  s}\)|\1,nodev|" 
│ │ │ +001a1a30: 2f65 7463 2f66 7374 6162 0a20 2020 2066  /etc/fstab.    f
│ │ │ +001a1a40: 690a 0a0a 2020 2020 6966 206d 6b64 6972  i...    if mkdir
│ │ │ +001a1a50: 202d 7020 222f 746d 7022 3b20 7468 656e   -p "/tmp"; then
│ │ │ +001a1a60: 0a20 2020 2020 2020 2069 6620 6d6f 756e  .        if moun
│ │ │ +001a1a70: 7470 6f69 6e74 202d 7120 222f 746d 7022  tpoint -q "/tmp"
│ │ │ +001a1a80: 3b20 7468 656e 0a20 2020 2020 2020 2020  ; then.         
│ │ │ +001a1a90: 2020 206d 6f75 6e74 202d 6f20 7265 6d6f     mount -o remo
│ │ │ +001a1aa0: 756e 7420 2d2d 7461 7267 6574 2022 2f74  unt --target "/t
│ │ │ +001a1ab0: 6d70 220a 2020 2020 2020 2020 6669 0a20  mp".        fi. 
│ │ │ +001a1ac0: 2020 2066 690a 7d0a 0a70 6572 666f 726d     fi.}..perform
│ │ │ +001a1ad0: 5f72 656d 6564 6961 7469 6f6e 0a0a 656c  _remediation..el
│ │ │ +001a1ae0: 7365 0a20 2020 2026 6774 3b26 616d 703b  se.    >&
│ │ │ +001a1af0: 3220 6563 686f 2027 5265 6d65 6469 6174  2 echo 'Remediat
│ │ │ +001a1b00: 696f 6e20 6973 206e 6f74 2061 7070 6c69  ion is not appli
│ │ │ +001a1b10: 6361 626c 652c 206e 6f74 6869 6e67 2077  cable, nothing w
│ │ │ +001a1b20: 6173 2064 6f6e 6527 0a66 690a 3c2f 636f  as done'.fi.
< │ │ │ +001a1b40: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ +001a1b50: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ +001a1b60: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ +001a1b70: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ +001a1b80: 6434 3530 2220 7461 6269 6e64 6578 3d22 d450" tabindex=" │ │ │ +001a1b90: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ +001a1ba0: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ +001a1bb0: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ +001a1bc0: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ +001a1bd0: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ +001a1be0: 6469 6174 696f 6e20 416e 6163 6f6e 6461 diation Anaconda │ │ │ +001a1bf0: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ +001a1c00: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ +001a1ca0: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr> │ │ │ +001a1cf0: 3c74 723e 3c74 683e 5374 7261 7465 6779
.pa
│ │ │ +001a1d30: 7274 202f 746d 7020 2d2d 6d6f 756e 746f  rt /tmp --mounto
│ │ │ +001a1d40: 7074 696f 6e73 3d22 6e6f 6465 7622 0a3c  ptions="nodev".<
│ │ │  001a1d50: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
Remediation An │ │ │ -001a2e10: 6163 6f6e 6461 2073 6e69 7070 6574 20e2 aconda snippet . │ │ │ -001a2e20: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
Co │ │ │ +001a1c80: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +001a1cb0: 6e3a 3c2f 7468 3e3c 7464 3e68 6967 683c n:high< │ │ │ +001a1cc0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ +001a1d00: 3a3c 2f74 683e 3c74 643e 656e 6162 6c65 :enable │ │ │ +001a1d10: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
│ │ │ -001a2ea0: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -001a2ec0: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 < │ │ │ -001a2ef0: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr> │ │ │ -001a2f40: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ -001a2eb0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ -001a2ed0: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:high
Reboot:false
St │ │ │ -001a2f20: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ -001a2f30: 656e 6162 6c65 3c2f 7464 3e3c 2f74 723e enable
.part /tmp --
│ │ │ -001a2f60: 6d6f 756e 746f 7074 696f 6e73 3d22 6e6f  mountoptions="no
│ │ │ -001a2f70: 6578 6563 220a 3c2f 636f 6465 3e3c 2f70  exec".

Remediatio │ │ │ -001a3030: 6e20 416e 7369 626c 6520 736e 6970 7065 n Ansible snippe │ │ │ -001a3040: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ -001a30c0: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ -001a30d0: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ -001a30f0: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ -001a3100: 3c74 643e 6869 6768 3c2f 7464 3e3c 2f74 highReboot │ │ │ -001a3120: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -001a3130: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ -001a3150: 7464 3e63 6f6e 6669 6775 7265 3c2f 7464 td>configure

- name: │ │ │ -001a3180: 2047 6174 6865 7220 7468 6520 7061 636b Gather the pack │ │ │ -001a3190: 6167 6520 6661 6374 730a 2020 7061 636b age facts. pack │ │ │ -001a31a0: 6167 655f 6661 6374 733a 0a20 2020 206d age_facts:. m │ │ │ -001a31b0: 616e 6167 6572 3a20 6175 746f 0a20 2074 anager: auto. t │ │ │ -001a31c0: 6167 733a 0a20 202d 204e 4953 542d 3830 ags:. - NIST-80 │ │ │ -001a31d0: 302d 3533 2d41 432d 360a 2020 2d20 4e49 0-53-AC-6. - NI │ │ │ -001a31e0: 5354 2d38 3030 2d35 332d 4143 2d36 2831 ST-800-53-AC-6(1 │ │ │ -001a31f0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35 ). - NIST-800-5 │ │ │ -001a3200: 332d 434d 2d36 2861 290a 2020 2d20 4e49 3-CM-6(a). - NI │ │ │ -001a3210: 5354 2d38 3030 2d35 332d 434d 2d37 2861 ST-800-53-CM-7(a │ │ │ -001a3220: 290a 2020 2d20 4e49 5354 2d38 3030 2d35 ). - NIST-800-5 │ │ │ -001a3230: 332d 434d 2d37 2862 290a 2020 2d20 4e49 3-CM-7(b). - NI │ │ │ -001a3240: 5354 2d38 3030 2d35 332d 4d50 2d37 0a20 ST-800-53-MP-7. │ │ │ -001a3250: 202d 2063 6f6e 6669 6775 7265 5f73 7472 - configure_str │ │ │ -001a3260: 6174 6567 790a 2020 2d20 6869 6768 5f64 ategy. - high_d │ │ │ -001a3270: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f isruption. - lo │ │ │ -001a3280: 775f 636f 6d70 6c65 7869 7479 0a20 202d w_complexity. - │ │ │ -001a3290: 206d 6564 6975 6d5f 7365 7665 7269 7479 medium_severity │ │ │ -001a32a0: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f . - mount_optio │ │ │ -001a32b0: 6e5f 746d 705f 6e6f 6578 6563 0a20 202d n_tmp_noexec. - │ │ │ -001a32c0: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465 no_reboot_neede │ │ │ -001a32d0: 640a 0a2d 206e 616d 653a 2027 4164 6420 d..- name: 'Add │ │ │ -001a32e0: 6e6f 6578 6563 204f 7074 696f 6e20 746f noexec Option to │ │ │ -001a32f0: 202f 746d 703a 2043 6865 636b 2069 6e66 /tmp: Check inf │ │ │ -001a3300: 6f72 6d61 7469 6f6e 2061 7373 6f63 6961 ormation associa │ │ │ -001a3310: 7465 6420 746f 206d 6f75 6e74 706f 696e ted to mountpoin │ │ │ -001a3320: 7427 0a20 2061 6e73 6962 6c65 2e62 7569 t'. ansible.bui │ │ │ -001a3330: 6c74 696e 2e63 6f6d 6d61 6e64 3a20 6669 ltin.command: fi │ │ │ -001a3340: 6e64 6d6e 7420 2d2d 6673 7461 6220 272f ndmnt --fstab '/ │ │ │ -001a3350: 746d 7027 0a20 2072 6567 6973 7465 723a tmp'. register: │ │ │ -001a3360: 2064 6576 6963 655f 6e61 6d65 0a20 2066 device_name. f │ │ │ -001a3370: 6169 6c65 645f 7768 656e 3a20 6465 7669 ailed_when: devi │ │ │ -001a3380: 6365 5f6e 616d 652e 7263 2026 6774 3b20 ce_name.rc > │ │ │ -001a3390: 310a 2020 6368 616e 6765 645f 7768 656e 1. changed_when │ │ │ -001a33a0: 3a20 6661 6c73 650a 2020 6368 6563 6b5f : false. check_ │ │ │ -001a33b0: 6d6f 6465 3a20 6661 6c73 650a 2020 7768 mode: false. wh │ │ │ -001a33c0: 656e 3a0a 2020 2d20 2820 6e6f 7420 2820 en:. - ( not ( │ │ │ -001a33d0: 226b 6572 6e65 6c22 2069 6e20 616e 7369 "kernel" in ansi │ │ │ -001a33e0: 626c 655f 6661 6374 732e 7061 636b 6167 ble_facts.packag │ │ │ -001a33f0: 6573 2061 6e64 2022 626f 6f74 6322 2069 es and "bootc" i │ │ │ -001a3400: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ -001a3410: 7061 636b 6167 6573 0a20 2020 2061 6e64 packages. and │ │ │ -001a3420: 206e 6f74 2022 6f70 656e 7368 6966 742d not "openshift- │ │ │ -001a3430: 6b75 6265 6c65 7422 2069 6e20 616e 7369 kubelet" in ansi │ │ │ -001a3440: 626c 655f 6661 6374 732e 7061 636b 6167 ble_facts.packag │ │ │ -001a3450: 6573 2061 6e64 2022 6f73 7472 6565 2220 es and "ostree" │ │ │ -001a3460: 696e 2061 6e73 6962 6c65 5f70 726f 635f in ansible_proc_ │ │ │ -001a3470: 636d 646c 696e 650a 2020 2020 2920 616e cmdline. ) an │ │ │ -001a3480: 6420 6e6f 7420 2820 616e 7369 626c 655f d not ( ansible_ │ │ │ -001a3490: 7669 7274 7561 6c69 7a61 7469 6f6e 5f74 virtualization_t │ │ │ -001a34a0: 7970 6520 696e 205b 2264 6f63 6b65 7222 ype in ["docker" │ │ │ -001a34b0: 2c20 226c 7863 222c 2022 6f70 656e 767a , "lxc", "openvz │ │ │ -001a34c0: 222c 2022 706f 646d 616e 222c 0a20 2020 ", "podman",. │ │ │ -001a34d0: 2022 636f 6e74 6169 6e65 7222 5d20 2920 "container"] ) │ │ │ -001a34e0: 290a 2020 2d20 2722 2f74 6d70 2220 696e ). - '"/tmp" in │ │ │ -001a34f0: 2061 6e73 6962 6c65 5f6d 6f75 6e74 7320 ansible_mounts │ │ │ -001a3500: 7c20 6d61 7028 6174 7472 6962 7574 653d | map(attribute= │ │ │ -001a3510: 226d 6f75 6e74 2229 207c 206c 6973 7427 "mount") | list' │ │ │ -001a3520: 0a20 2074 6167 733a 0a20 202d 204e 4953 . tags:. - NIS │ │ │ -001a3530: 542d 3830 302d 3533 2d41 432d 360a 2020 T-800-53-AC-6. │ │ │ -001a3540: 2d20 4e49 5354 2d38 3030 2d35 332d 4143 - NIST-800-53-AC │ │ │ -001a3550: 2d36 2831 290a 2020 2d20 4e49 5354 2d38 -6(1). - NIST-8 │ │ │ -001a3560: 3030 2d35 332d 434d 2d36 2861 290a 2020 00-53-CM-6(a). │ │ │ -001a3570: 2d20 4e49 5354 2d38 3030 2d35 332d 434d - NIST-800-53-CM │ │ │ -001a3580: 2d37 2861 290a 2020 2d20 4e49 5354 2d38 -7(a). - NIST-8 │ │ │ -001a3590: 3030 2d35 332d 434d 2d37 2862 290a 2020 00-53-CM-7(b). │ │ │ -001a35a0: 2d20 4e49 5354 2d38 3030 2d35 332d 4d50 - NIST-800-53-MP │ │ │ -001a35b0: 2d37 0a20 202d 2063 6f6e 6669 6775 7265 -7. - configure │ │ │ -001a35c0: 5f73 7472 6174 6567 790a 2020 2d20 6869 _strategy. - hi │ │ │ -001a35d0: 6768 5f64 6973 7275 7074 696f 6e0a 2020 gh_disruption. │ │ │ -001a35e0: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479 - low_complexity │ │ │ -001a35f0: 0a20 202d 206d 6564 6975 6d5f 7365 7665 . - medium_seve │ │ │ -001a3600: 7269 7479 0a20 202d 206d 6f75 6e74 5f6f rity. - mount_o │ │ │ -001a3610: 7074 696f 6e5f 746d 705f 6e6f 6578 6563 ption_tmp_noexec │ │ │ -001a3620: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e . - no_reboot_n │ │ │ -001a3630: 6565 6465 640a 0a2d 206e 616d 653a 2027 eeded..- name: ' │ │ │ -001a3640: 4164 6420 6e6f 6578 6563 204f 7074 696f Add noexec Optio │ │ │ -001a3650: 6e20 746f 202f 746d 703a 2043 7265 6174 n to /tmp: Creat │ │ │ -001a3660: 6520 6d6f 756e 745f 696e 666f 2064 6963 e mount_info dic │ │ │ -001a3670: 7469 6f6e 6172 7920 7661 7269 6162 6c65 tionary variable │ │ │ -001a3680: 270a 2020 7365 745f 6661 6374 3a0a 2020 '. set_fact:. │ │ │ -001a3690: 2020 6d6f 756e 745f 696e 666f 3a20 277b mount_info: '{ │ │ │ -001a36a0: 7b20 6d6f 756e 745f 696e 666f 7c64 6566 { mount_info|def │ │ │ -001a36b0: 6175 6c74 287b 7d29 7c63 6f6d 6269 6e65 ault({})|combine │ │ │ -001a36c0: 287b 6974 656d 2e30 3a20 6974 656d 2e31 ({item.0: item.1 │ │ │ -001a36d0: 7d29 207d 7d27 0a20 2077 6974 685f 746f }) }}'. with_to │ │ │ -001a36e0: 6765 7468 6572 3a0a 2020 2d20 277b 7b20 gether:. - '{{ │ │ │ -001a36f0: 6465 7669 6365 5f6e 616d 652e 7374 646f device_name.stdo │ │ │ -001a3700: 7574 5f6c 696e 6573 5b30 5d2e 7370 6c69 ut_lines[0].spli │ │ │ -001a3710: 7428 2920 7c20 6d61 7028 2727 6c6f 7765 t() | map(''lowe │ │ │ -001a3720: 7227 2729 207c 206c 6973 7420 7d7d 270a r'') | list }}'. │ │ │ -001a3730: 2020 2d20 277b 7b20 6465 7669 6365 5f6e - '{{ device_n │ │ │ -001a3740: 616d 652e 7374 646f 7574 5f6c 696e 6573 ame.stdout_lines │ │ │ -001a3750: 5b31 5d2e 7370 6c69 7428 2920 7c20 6c69 [1].split() | li │ │ │ -001a3760: 7374 207d 7d27 0a20 2077 6865 6e3a 0a20 st }}'. when:. │ │ │ -001a3770: 202d 2028 206e 6f74 2028 2022 6b65 726e - ( not ( "kern │ │ │ -001a3780: 656c 2220 696e 2061 6e73 6962 6c65 5f66 el" in ansible_f │ │ │ -001a3790: 6163 7473 2e70 6163 6b61 6765 7320 616e acts.packages an │ │ │ -001a37a0: 6420 2262 6f6f 7463 2220 696e 2061 6e73 d "bootc" in ans │ │ │ -001a37b0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61 ible_facts.packa │ │ │ -001a37c0: 6765 730a 2020 2020 616e 6420 6e6f 7420 ges. and not │ │ │ -001a37d0: 226f 7065 6e73 6869 6674 2d6b 7562 656c "openshift-kubel │ │ │ -001a37e0: 6574 2220 696e 2061 6e73 6962 6c65 5f66 et" in ansible_f │ │ │ -001a37f0: 6163 7473 2e70 6163 6b61 6765 7320 616e acts.packages an │ │ │ -001a3800: 6420 226f 7374 7265 6522 2069 6e20 616e d "ostree" in an │ │ │ -001a3810: 7369 626c 655f 7072 6f63 5f63 6d64 6c69 sible_proc_cmdli │ │ │ -001a3820: 6e65 0a20 2020 2029 2061 6e64 206e 6f74 ne. ) and not │ │ │ -001a3830: 2028 2061 6e73 6962 6c65 5f76 6972 7475 ( ansible_virtu │ │ │ -001a3840: 616c 697a 6174 696f 6e5f 7479 7065 2069 alization_type i │ │ │ -001a3850: 6e20 5b22 646f 636b 6572 222c 2022 6c78 n ["docker", "lx │ │ │ -001a3860: 6322 2c20 226f 7065 6e76 7a22 2c20 2270 c", "openvz", "p │ │ │ -001a3870: 6f64 6d61 6e22 2c0a 2020 2020 2263 6f6e odman",. "con │ │ │ -001a3880: 7461 696e 6572 225d 2029 2029 0a20 202d tainer"] ) ). - │ │ │ -001a3890: 2027 222f 746d 7022 2069 6e20 616e 7369 '"/tmp" in ansi │ │ │ -001a38a0: 626c 655f 6d6f 756e 7473 207c 206d 6170 ble_mounts | map │ │ │ -001a38b0: 2861 7474 7269 6275 7465 3d22 6d6f 756e (attribute="moun │ │ │ -001a38c0: 7422 2920 7c20 6c69 7374 270a 2020 2d20 t") | list'. - │ │ │ -001a38d0: 6465 7669 6365 5f6e 616d 652e 7374 646f device_name.stdo │ │ │ -001a38e0: 7574 2069 7320 6465 6669 6e65 6420 616e ut is defined an │ │ │ -001a38f0: 6420 6465 7669 6365 5f6e 616d 652e 7374 d device_name.st │ │ │ -001a3900: 646f 7574 5f6c 696e 6573 2069 7320 6465 dout_lines is de │ │ │ -001a3910: 6669 6e65 640a 2020 2d20 2864 6576 6963 fined. - (devic │ │ │ -001a3920: 655f 6e61 6d65 2e73 7464 6f75 7420 7c20 e_name.stdout | │ │ │ -001a3930: 6c65 6e67 7468 2026 6774 3b20 3029 0a20 length > 0). │ │ │ -001a3940: 2074 6167 733a 0a20 202d 204e 4953 542d tags:. - NIST- │ │ │ -001a3950: 3830 302d 3533 2d41 432d 360a 2020 2d20 800-53-AC-6. - │ │ │ -001a3960: 4e49 5354 2d38 3030 2d35 332d 4143 2d36 NIST-800-53-AC-6 │ │ │ -001a3970: 2831 290a 2020 2d20 4e49 5354 2d38 3030 (1). - NIST-800 │ │ │ -001a3980: 2d35 332d 434d 2d36 2861 290a 2020 2d20 -53-CM-6(a). - │ │ │ -001a3990: 4e49 5354 2d38 3030 2d35 332d 434d 2d37 NIST-800-53-CM-7 │ │ │ -001a39a0: 2861 290a 2020 2d20 4e49 5354 2d38 3030 (a). - NIST-800 │ │ │ -001a39b0: 2d35 332d 434d 2d37 2862 290a 2020 2d20 -53-CM-7(b). - │ │ │ -001a39c0: 4e49 5354 2d38 3030 2d35 332d 4d50 2d37 NIST-800-53-MP-7 │ │ │ -001a39d0: 0a20 202d 2063 6f6e 6669 6775 7265 5f73 . - configure_s │ │ │ -001a39e0: 7472 6174 6567 790a 2020 2d20 6869 6768 trategy. - high │ │ │ -001a39f0: 5f64 6973 7275 7074 696f 6e0a 2020 2d20 _disruption. - │ │ │ -001a3a00: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20 low_complexity. │ │ │ -001a3a10: 202d 206d 6564 6975 6d5f 7365 7665 7269 - medium_severi │ │ │ -001a3a20: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074 ty. - mount_opt │ │ │ -001a3a30: 696f 6e5f 746d 705f 6e6f 6578 6563 0a20 ion_tmp_noexec. │ │ │ -001a3a40: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565 - no_reboot_nee │ │ │ -001a3a50: 6465 640a 0a2d 206e 616d 653a 2027 4164 ded..- name: 'Ad │ │ │ -001a3a60: 6420 6e6f 6578 6563 204f 7074 696f 6e20 d noexec Option │ │ │ -001a3a70: 746f 202f 746d 703a 2049 6620 2f74 6d70 to /tmp: If /tmp │ │ │ -001a3a80: 206e 6f74 206d 6f75 6e74 6564 2c20 6372 not mounted, cr │ │ │ -001a3a90: 6166 7420 6d6f 756e 745f 696e 666f 206d aft mount_info m │ │ │ -001a3aa0: 616e 7561 6c6c 7927 0a20 2073 6574 5f66 anually'. set_f │ │ │ -001a3ab0: 6163 743a 0a20 2020 206d 6f75 6e74 5f69 act:. mount_i │ │ │ -001a3ac0: 6e66 6f3a 2027 7b7b 206d 6f75 6e74 5f69 nfo: '{{ mount_i │ │ │ -001a3ad0: 6e66 6f7c 6465 6661 756c 7428 7b7d 297c nfo|default({})| │ │ │ -001a3ae0: 636f 6d62 696e 6528 7b69 7465 6d2e 303a combine({item.0: │ │ │ -001a3af0: 2069 7465 6d2e 317d 2920 7d7d 270a 2020 item.1}) }}'. │ │ │ -001a3b00: 7769 7468 5f74 6f67 6574 6865 723a 0a20 with_together:. │ │ │ -001a3b10: 202d 202d 2074 6172 6765 740a 2020 2020 - - target. │ │ │ -001a3b20: 2d20 736f 7572 6365 0a20 2020 202d 2066 - source. - f │ │ │ -001a3b30: 7374 7970 650a 2020 2020 2d20 6f70 7469 stype. - opti │ │ │ -001a3b40: 6f6e 730a 2020 2d20 2d20 2f74 6d70 0a20 ons. - - /tmp. │ │ │ -001a3b50: 2020 202d 2027 270a 2020 2020 2d20 2727 - ''. - '' │ │ │ -001a3b60: 0a20 2020 202d 2064 6566 6175 6c74 730a . - defaults. │ │ │ -001a3b70: 2020 7768 656e 3a0a 2020 2d20 2820 6e6f when:. - ( no │ │ │ -001a3b80: 7420 2820 226b 6572 6e65 6c22 2069 6e20 t ( "kernel" in │ │ │ -001a3b90: 616e 7369 626c 655f 6661 6374 732e 7061 ansible_facts.pa │ │ │ -001a3ba0: 636b 6167 6573 2061 6e64 2022 626f 6f74 ckages and "boot │ │ │ -001a3bb0: 6322 2069 6e20 616e 7369 626c 655f 6661 c" in ansible_fa │ │ │ -001a3bc0: 6374 732e 7061 636b 6167 6573 0a20 2020 cts.packages. │ │ │ -001a3bd0: 2061 6e64 206e 6f74 2022 6f70 656e 7368 and not "opensh │ │ │ -001a3be0: 6966 742d 6b75 6265 6c65 7422 2069 6e20 ift-kubelet" in │ │ │ -001a3bf0: 616e 7369 626c 655f 6661 6374 732e 7061 ansible_facts.pa │ │ │ -001a3c00: 636b 6167 6573 2061 6e64 2022 6f73 7472 ckages and "ostr │ │ │ -001a3c10: 6565 2220 696e 2061 6e73 6962 6c65 5f70 ee" in ansible_p │ │ │ -001a3c20: 726f 635f 636d 646c 696e 650a 2020 2020 roc_cmdline. │ │ │ -001a3c30: 2920 616e 6420 6e6f 7420 2820 616e 7369 ) and not ( ansi │ │ │ -001a3c40: 626c 655f 7669 7274 7561 6c69 7a61 7469 ble_virtualizati │ │ │ -001a3c50: 6f6e 5f74 7970 6520 696e 205b 2264 6f63 on_type in ["doc │ │ │ -001a3c60: 6b65 7222 2c20 226c 7863 222c 2022 6f70 ker", "lxc", "op │ │ │ -001a3c70: 656e 767a 222c 2022 706f 646d 616e 222c envz", "podman", │ │ │ -001a3c80: 0a20 2020 2022 636f 6e74 6169 6e65 7222 . "container" │ │ │ -001a3c90: 5d20 2920 290a 2020 2d20 2722 2f74 6d70 ] ) ). - '"/tmp │ │ │ -001a3ca0: 2220 696e 2061 6e73 6962 6c65 5f6d 6f75 " in ansible_mou │ │ │ -001a3cb0: 6e74 7320 7c20 6d61 7028 6174 7472 6962 nts | map(attrib │ │ │ -001a3cc0: 7574 653d 226d 6f75 6e74 2229 207c 206c ute="mount") | l │ │ │ -001a3cd0: 6973 7427 0a20 202d 2028 222d 2d66 7374 ist'. - ("--fst │ │ │ -001a3ce0: 6162 2220 7c20 6c65 6e67 7468 203d 3d20 ab" | length == │ │ │ -001a3cf0: 3029 0a20 202d 2064 6576 6963 655f 6e61 0). - device_na │ │ │ -001a3d00: 6d65 2e73 7464 6f75 7420 6973 2064 6566 me.stdout is def │ │ │ -001a3d10: 696e 6564 2061 6e64 2064 6576 6963 655f ined and device_ │ │ │ -001a3d20: 6e61 6d65 2e73 7464 6f75 745f 6c69 6e65 name.stdout_line │ │ │ -001a3d30: 7320 6973 2064 6566 696e 6564 0a20 202d s is defined. - │ │ │ -001a3d40: 2028 6465 7669 6365 5f6e 616d 652e 7374 (device_name.st │ │ │ -001a3d50: 646f 7574 207c 206c 656e 6774 6820 3d3d dout | length == │ │ │ -001a3d60: 2030 290a 2020 7461 6773 3a0a 2020 2d20 0). tags:. - │ │ │ -001a3d70: 4e49 5354 2d38 3030 2d35 332d 4143 2d36 NIST-800-53-AC-6 │ │ │ -001a3d80: 0a20 202d 204e 4953 542d 3830 302d 3533 . - NIST-800-53 │ │ │ -001a3d90: 2d41 432d 3628 3129 0a20 202d 204e 4953 -AC-6(1). - NIS │ │ │ -001a3da0: 542d 3830 302d 3533 2d43 4d2d 3628 6129 T-800-53-CM-6(a) │ │ │ -001a3db0: 0a20 202d 204e 4953 542d 3830 302d 3533 . - NIST-800-53 │ │ │ -001a3dc0: 2d43 4d2d 3728 6129 0a20 202d 204e 4953 -CM-7(a). - NIS │ │ │ -001a3dd0: 542d 3830 302d 3533 2d43 4d2d 3728 6229 T-800-53-CM-7(b) │ │ │ -001a3de0: 0a20 202d 204e 4953 542d 3830 302d 3533 . - NIST-800-53 │ │ │ -001a3df0: 2d4d 502d 370a 2020 2d20 636f 6e66 6967 -MP-7. - config │ │ │ -001a3e00: 7572 655f 7374 7261 7465 6779 0a20 202d ure_strategy. - │ │ │ -001a3e10: 2068 6967 685f 6469 7372 7570 7469 6f6e high_disruption │ │ │ -001a3e20: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578 . - low_complex │ │ │ -001a3e30: 6974 790a 2020 2d20 6d65 6469 756d 5f73 ity. - medium_s │ │ │ -001a3e40: 6576 6572 6974 790a 2020 2d20 6d6f 756e everity. - moun │ │ │ -001a3e50: 745f 6f70 7469 6f6e 5f74 6d70 5f6e 6f65 t_option_tmp_noe │ │ │ -001a3e60: 7865 630a 2020 2d20 6e6f 5f72 6562 6f6f xec. - no_reboo │ │ │ -001a3e70: 745f 6e65 6564 6564 0a0a 2d20 6e61 6d65 t_needed..- name │ │ │ -001a3e80: 3a20 2741 6464 206e 6f65 7865 6320 4f70 : 'Add noexec Op │ │ │ -001a3e90: 7469 6f6e 2074 6f20 2f74 6d70 3a20 4d61 tion to /tmp: Ma │ │ │ -001a3ea0: 6b65 2073 7572 6520 6e6f 6578 6563 206f ke sure noexec o │ │ │ -001a3eb0: 7074 696f 6e20 6973 2070 6172 7420 6f66 ption is part of │ │ │ -001a3ec0: 2074 6865 2074 6f20 2f74 6d70 0a20 2020 the to /tmp. │ │ │ -001a3ed0: 206f 7074 696f 6e73 270a 2020 7365 745f options'. set_ │ │ │ -001a3ee0: 6661 6374 3a0a 2020 2020 6d6f 756e 745f fact:. mount_ │ │ │ -001a3ef0: 696e 666f 3a20 277b 7b20 6d6f 756e 745f info: '{{ mount_ │ │ │ -001a3f00: 696e 666f 207c 2063 6f6d 6269 6e65 2820 info | combine( │ │ │ -001a3f10: 7b27 276f 7074 696f 6e73 2727 3a27 2727 {''options'':''' │ │ │ -001a3f20: 277e 286d 6f75 6e74 5f69 6e66 6f2e 6f70 '~(mount_info.op │ │ │ -001a3f30: 7469 6f6e 7320 7c0a 2020 2020 2020 6465 tions |. de │ │ │ -001a3f40: 6661 756c 7428 2727 2727 2929 7e28 2727 fault(''''))~('' │ │ │ -001a3f50: 2c27 2720 6966 2028 6d6f 756e 745f 696e ,'' if (mount_in │ │ │ -001a3f60: 666f 2e6f 7074 696f 6e73 207c 2064 6566 fo.options | def │ │ │ -001a3f70: 6175 6c74 2827 2727 2729 2920 656c 7365 ault('''')) else │ │ │ -001a3f80: 2027 2727 2729 7e27 276e 6f65 7865 6327 '''')~''noexec' │ │ │ -001a3f90: 270a 2020 2020 2020 7d29 207d 7d27 0a20 '. }) }}'. │ │ │ -001a3fa0: 2077 6865 6e3a 0a20 202d 2028 206e 6f74 when:. - ( not │ │ │ -001a3fb0: 2028 2022 6b65 726e 656c 2220 696e 2061 ( "kernel" in a │ │ │ -001a3fc0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163 nsible_facts.pac │ │ │ -001a3fd0: 6b61 6765 7320 616e 6420 2262 6f6f 7463 kages and "bootc │ │ │ -001a3fe0: 2220 696e 2061 6e73 6962 6c65 5f66 6163 " in ansible_fac │ │ │ -001a3ff0: 7473 2e70 6163 6b61 6765 730a 2020 2020 ts.packages. │ │ │ -001a4000: 616e 6420 6e6f 7420 226f 7065 6e73 6869 and not "openshi │ │ │ -001a4010: 6674 2d6b 7562 656c 6574 2220 696e 2061 ft-kubelet" in a │ │ │ -001a4020: 6e73 6962 6c65 5f66 6163 7473 2e70 6163 nsible_facts.pac │ │ │ -001a4030: 6b61 6765 7320 616e 6420 226f 7374 7265 kages and "ostre │ │ │ -001a4040: 6522 2069 6e20 616e 7369 626c 655f 7072 e" in ansible_pr │ │ │ -001a4050: 6f63 5f63 6d64 6c69 6e65 0a20 2020 2029 oc_cmdline. ) │ │ │ -001a4060: 2061 6e64 206e 6f74 2028 2061 6e73 6962 and not ( ansib │ │ │ -001a4070: 6c65 5f76 6972 7475 616c 697a 6174 696f le_virtualizatio │ │ │ -001a4080: 6e5f 7479 7065 2069 6e20 5b22 646f 636b n_type in ["dock │ │ │ -001a4090: 6572 222c 2022 6c78 6322 2c20 226f 7065 er", "lxc", "ope │ │ │ -001a40a0: 6e76 7a22 2c20 2270 6f64 6d61 6e22 2c0a nvz", "podman",. │ │ │ -001a40b0: 2020 2020 2263 6f6e 7461 696e 6572 225d "container"] │ │ │ -001a40c0: 2029 2029 0a20 202d 2027 222f 746d 7022 ) ). - '"/tmp" │ │ │ -001a40d0: 2069 6e20 616e 7369 626c 655f 6d6f 756e in ansible_moun │ │ │ -001a40e0: 7473 207c 206d 6170 2861 7474 7269 6275 ts | map(attribu │ │ │ -001a40f0: 7465 3d22 6d6f 756e 7422 2920 7c20 6c69 te="mount") | li │ │ │ -001a4100: 7374 270a 2020 2d20 6d6f 756e 745f 696e st'. - mount_in │ │ │ -001a4110: 666f 2069 7320 6465 6669 6e65 6420 616e fo is defined an │ │ │ -001a4120: 6420 226e 6f65 7865 6322 206e 6f74 2069 d "noexec" not i │ │ │ -001a4130: 6e20 286d 6f75 6e74 5f69 6e66 6f2e 6f70 n (mount_info.op │ │ │ -001a4140: 7469 6f6e 7320 7c20 6465 6661 756c 7428 tions | default( │ │ │ -001a4150: 2727 2929 0a20 2074 6167 733a 0a20 202d '')). tags:. - │ │ │ -001a4160: 204e 4953 542d 3830 302d 3533 2d41 432d NIST-800-53-AC- │ │ │ -001a4170: 360a 2020 2d20 4e49 5354 2d38 3030 2d35 6. - NIST-800-5 │ │ │ -001a4180: 332d 4143 2d36 2831 290a 2020 2d20 4e49 3-AC-6(1). - NI │ │ │ -001a4190: 5354 2d38 3030 2d35 332d 434d 2d36 2861 ST-800-53-CM-6(a │ │ │ -001a41a0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35 ). - NIST-800-5 │ │ │ -001a41b0: 332d 434d 2d37 2861 290a 2020 2d20 4e49 3-CM-7(a). - NI │ │ │ -001a41c0: 5354 2d38 3030 2d35 332d 434d 2d37 2862 ST-800-53-CM-7(b │ │ │ -001a41d0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35 ). - NIST-800-5 │ │ │ -001a41e0: 332d 4d50 2d37 0a20 202d 2063 6f6e 6669 3-MP-7. - confi │ │ │ -001a41f0: 6775 7265 5f73 7472 6174 6567 790a 2020 gure_strategy. │ │ │ -001a4200: 2d20 6869 6768 5f64 6973 7275 7074 696f - high_disruptio │ │ │ -001a4210: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65 n. - low_comple │ │ │ -001a4220: 7869 7479 0a20 202d 206d 6564 6975 6d5f xity. - medium_ │ │ │ -001a4230: 7365 7665 7269 7479 0a20 202d 206d 6f75 severity. - mou │ │ │ -001a4240: 6e74 5f6f 7074 696f 6e5f 746d 705f 6e6f nt_option_tmp_no │ │ │ -001a4250: 6578 6563 0a20 202d 206e 6f5f 7265 626f exec. - no_rebo │ │ │ -001a4260: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d ot_needed..- nam │ │ │ -001a4270: 653a 2027 4164 6420 6e6f 6578 6563 204f e: 'Add noexec O │ │ │ -001a4280: 7074 696f 6e20 746f 202f 746d 703a 2045 ption to /tmp: E │ │ │ -001a4290: 6e73 7572 6520 2f74 6d70 2069 7320 6d6f nsure /tmp is mo │ │ │ -001a42a0: 756e 7465 6420 7769 7468 206e 6f65 7865 unted with noexe │ │ │ -001a42b0: 6320 6f70 7469 6f6e 270a 2020 616e 7369 c option'. ansi │ │ │ -001a42c0: 626c 652e 706f 7369 782e 6d6f 756e 743a ble.posix.mount: │ │ │ -001a42d0: 0a20 2020 2070 6174 683a 202f 746d 700a . path: /tmp. │ │ │ -001a42e0: 2020 2020 7372 633a 2027 7b7b 206d 6f75 src: '{{ mou │ │ │ -001a42f0: 6e74 5f69 6e66 6f2e 736f 7572 6365 207c nt_info.source | │ │ │ -001a4300: 2064 6566 6175 6c74 2827 2727 2729 207d default('''') } │ │ │ -001a4310: 7d27 0a20 2020 206f 7074 733a 2027 7b7b }'. opts: '{{ │ │ │ -001a4320: 206d 6f75 6e74 5f69 6e66 6f2e 6f70 7469 mount_info.opti │ │ │ -001a4330: 6f6e 7320 7c20 6465 6661 756c 7428 2727 ons | default('' │ │ │ -001a4340: 2727 2920 7d7d 270a 2020 2020 7374 6174 '') }}'. stat │ │ │ -001a4350: 653a 206d 6f75 6e74 6564 0a20 2020 2066 e: mounted. f │ │ │ -001a4360: 7374 7970 653a 2027 7b7b 206d 6f75 6e74 stype: '{{ mount │ │ │ -001a4370: 5f69 6e66 6f2e 6673 7479 7065 207c 2064 _info.fstype | d │ │ │ -001a4380: 6566 6175 6c74 2827 2727 2729 207d 7d27 efault('''') }}' │ │ │ -001a4390: 0a20 2072 6567 6973 7465 723a 206d 6f75 . register: mou │ │ │ -001a43a0: 6e74 5f72 6573 756c 740a 2020 6661 696c nt_result. fail │ │ │ -001a43b0: 6564 5f77 6865 6e3a 0a20 202d 206d 6f75 ed_when:. - mou │ │ │ -001a43c0: 6e74 5f72 6573 756c 7420 6973 2066 6169 nt_result is fai │ │ │ -001a43d0: 6c65 640a 2020 2d20 2727 2774 6172 6765 led. - '''targe │ │ │ -001a43e0: 7420 6973 2062 7573 7927 2720 6e6f 7420 t is busy'' not │ │ │ -001a43f0: 696e 2028 6d6f 756e 745f 7265 7375 6c74 in (mount_result │ │ │ -001a4400: 2e6d 7367 207c 2064 6566 6175 6c74 2827 .msg | default(' │ │ │ -001a4410: 2727 2729 2927 0a20 202d 2027 2727 616c '''))'. - '''al │ │ │ -001a4420: 7265 6164 7920 6d6f 756e 7465 6427 2720 ready mounted'' │ │ │ -001a4430: 6e6f 7420 696e 2028 6d6f 756e 745f 7265 not in (mount_re │ │ │ -001a4440: 7375 6c74 2e6d 7367 207c 2064 6566 6175 sult.msg | defau │ │ │ -001a4450: 6c74 2827 2727 2729 2927 0a20 2077 6865 lt(''''))'. whe │ │ │ -001a4460: 6e3a 0a20 202d 2028 206e 6f74 2028 2022 n:. - ( not ( " │ │ │ -001a4470: 6b65 726e 656c 2220 696e 2061 6e73 6962 kernel" in ansib │ │ │ -001a4480: 6c65 5f66 6163 7473 2e70 6163 6b61 6765 le_facts.package │ │ │ -001a4490: 7320 616e 6420 2262 6f6f 7463 2220 696e s and "bootc" in │ │ │ -001a44a0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70 ansible_facts.p │ │ │ -001a44b0: 6163 6b61 6765 730a 2020 2020 616e 6420 ackages. and │ │ │ -001a44c0: 6e6f 7420 226f 7065 6e73 6869 6674 2d6b not "openshift-k │ │ │ -001a44d0: 7562 656c 6574 2220 696e 2061 6e73 6962 ubelet" in ansib │ │ │ -001a44e0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765 le_facts.package │ │ │ -001a44f0: 7320 616e 6420 226f 7374 7265 6522 2069 s and "ostree" i │ │ │ -001a4500: 6e20 616e 7369 626c 655f 7072 6f63 5f63 n ansible_proc_c │ │ │ -001a4510: 6d64 6c69 6e65 0a20 2020 2029 2061 6e64 mdline. ) and │ │ │ -001a4520: 206e 6f74 2028 2061 6e73 6962 6c65 5f76 not ( ansible_v │ │ │ -001a4530: 6972 7475 616c 697a 6174 696f 6e5f 7479 irtualization_ty │ │ │ -001a4540: 7065 2069 6e20 5b22 646f 636b 6572 222c pe in ["docker", │ │ │ -001a4550: 2022 6c78 6322 2c20 226f 7065 6e76 7a22 "lxc", "openvz" │ │ │ -001a4560: 2c20 2270 6f64 6d61 6e22 2c0a 2020 2020 , "podman",. │ │ │ -001a4570: 2263 6f6e 7461 696e 6572 225d 2029 2029 "container"] ) ) │ │ │ -001a4580: 0a20 202d 2027 222f 746d 7022 2069 6e20 . - '"/tmp" in │ │ │ -001a4590: 616e 7369 626c 655f 6d6f 756e 7473 207c ansible_mounts | │ │ │ -001a45a0: 206d 6170 2861 7474 7269 6275 7465 3d22 map(attribute=" │ │ │ -001a45b0: 6d6f 756e 7422 2920 7c20 6c69 7374 270a mount") | list'. │ │ │ -001a45c0: 2020 2d20 6d6f 756e 745f 696e 666f 2069 - mount_info i │ │ │ -001a45d0: 7320 6465 6669 6e65 640a 2020 2d20 2864 s defined. - (d │ │ │ -001a45e0: 6576 6963 655f 6e61 6d65 2e73 7464 6f75 evice_name.stdou │ │ │ -001a45f0: 7420 6973 2064 6566 696e 6564 2061 6e64 t is defined and │ │ │ -001a4600: 2028 6465 7669 6365 5f6e 616d 652e 7374 (device_name.st │ │ │ -001a4610: 646f 7574 207c 206c 656e 6774 6820 2667 dout | length &g │ │ │ -001a4620: 743b 2030 2929 206f 7220 2822 2d2d 6673 t; 0)) or ("--fs │ │ │ -001a4630: 7461 6222 0a20 2020 207c 206c 656e 6774 tab". | lengt │ │ │ -001a4640: 6820 3d3d 2030 290a 2020 7461 6773 3a0a h == 0). tags:. │ │ │ -001a4650: 2020 2d20 4e49 5354 2d38 3030 2d35 332d - NIST-800-53- │ │ │ -001a4660: 4143 2d36 0a20 202d 204e 4953 542d 3830 AC-6. - NIST-80 │ │ │ -001a4670: 302d 3533 2d41 432d 3628 3129 0a20 202d 0-53-AC-6(1). - │ │ │ -001a4680: 204e 4953 542d 3830 302d 3533 2d43 4d2d NIST-800-53-CM- │ │ │ -001a4690: 3628 6129 0a20 202d 204e 4953 542d 3830 6(a). - NIST-80 │ │ │ -001a46a0: 302d 3533 2d43 4d2d 3728 6129 0a20 202d 0-53-CM-7(a). - │ │ │ -001a46b0: 204e 4953 542d 3830 302d 3533 2d43 4d2d NIST-800-53-CM- │ │ │ -001a46c0: 3728 6229 0a20 202d 204e 4953 542d 3830 7(b). - NIST-80 │ │ │ -001a46d0: 302d 3533 2d4d 502d 370a 2020 2d20 636f 0-53-MP-7. - co │ │ │ -001a46e0: 6e66 6967 7572 655f 7374 7261 7465 6779 nfigure_strategy │ │ │ -001a46f0: 0a20 202d 2068 6967 685f 6469 7372 7570 . - high_disrup │ │ │ -001a4700: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d tion. - low_com │ │ │ -001a4710: 706c 6578 6974 790a 2020 2d20 6d65 6469 plexity. - medi │ │ │ -001a4720: 756d 5f73 6576 6572 6974 790a 2020 2d20 um_severity. - │ │ │ -001a4730: 6d6f 756e 745f 6f70 7469 6f6e 5f74 6d70 mount_option_tmp │ │ │ -001a4740: 5f6e 6f65 7865 630a 2020 2d20 6e6f 5f72 _noexec. - no_r │ │ │ -001a4750: 6562 6f6f 745f 6e65 6564 6564 0a3c 2f63 eboot_needed.

│ │ │ -001a4770: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ -001a4810: 6564 6961 7469 6f6e 2053 6865 6c6c 2073 ediation Shell s │ │ │ -001a4820: 6372 6970 7420 e287 b23c 2f61 3e3c 6272 cript ...
# R
│ │ │ -001a48e0: 656d 6564 6961 7469 6f6e 2069 7320 6170  emediation is ap
│ │ │ -001a48f0: 706c 6963 6162 6c65 206f 6e6c 7920 696e  plicable only in
│ │ │ -001a4900: 2063 6572 7461 696e 2070 6c61 7466 6f72   certain platfor
│ │ │ -001a4910: 6d73 0a69 6620 2820 2120 2820 7b20 7270  ms.if ( ! ( { rp
│ │ │ -001a4920: 6d20 2d2d 7175 6965 7420 2d71 206b 6572  m --quiet -q ker
│ │ │ -001a4930: 6e65 6c20 3b7d 2026 616d 703b 2661 6d70  nel ;} &&
│ │ │ -001a4940: 3b20 7b20 7270 6d20 2d2d 7175 6965 7420  ; { rpm --quiet 
│ │ │ -001a4950: 2d71 2062 6f6f 7463 203b 7d20 2661 6d70  -q bootc ;} &
│ │ │ -001a4960: 3b26 616d 703b 207b 2021 2072 706d 202d  ;& { ! rpm -
│ │ │ -001a4970: 2d71 7569 6574 202d 7120 6f70 656e 7368  -quiet -q opensh
│ │ │ -001a4980: 6966 742d 6b75 6265 6c65 7420 3b7d 2026  ift-kubelet ;} &
│ │ │ -001a4990: 616d 703b 2661 6d70 3b20 285b 202d 6620  amp;& ([ -f 
│ │ │ -001a49a0: 2f72 756e 2f6f 7374 7265 652d 626f 6f74  /run/ostree-boot
│ │ │ -001a49b0: 6564 205d 207c 7c20 5b20 2d4c 202f 6f73  ed ] || [ -L /os
│ │ │ -001a49c0: 7472 6565 205d 2920 2920 2661 6d70 3b26  tree ]) ) &&
│ │ │ -001a49d0: 616d 703b 2021 2028 205b 202d 6620 2f2e  amp; ! ( [ -f /.
│ │ │ -001a49e0: 646f 636b 6572 656e 7620 5d20 7c7c 205b  dockerenv ] || [
│ │ │ -001a49f0: 202d 6620 2f72 756e 2f2e 636f 6e74 6169   -f /run/.contai
│ │ │ -001a4a00: 6e65 7265 6e76 205d 2029 2029 2026 616d  nerenv ] ) ) &am
│ │ │ -001a4a10: 703b 2661 6d70 3b20 7b20 2820 6669 6e64  p;& { ( find
│ │ │ -001a4a20: 6d6e 7420 2d2d 6b65 726e 656c 2022 2f74  mnt --kernel "/t
│ │ │ -001a4a30: 6d70 2220 2667 743b 202f 6465 762f 6e75  mp" > /dev/nu
│ │ │ -001a4a40: 6c6c 207c 7c20 6669 6e64 6d6e 7420 2d2d  ll || findmnt --
│ │ │ -001a4a50: 6673 7461 6220 222f 746d 7022 2026 6774  fstab "/tmp" >
│ │ │ -001a4a60: 3b20 2f64 6576 2f6e 756c 6c20 293b 207d  ; /dev/null ); }
│ │ │ -001a4a70: 3b20 7468 656e 0a0a 6675 6e63 7469 6f6e  ; then..function
│ │ │ -001a4a80: 2070 6572 666f 726d 5f72 656d 6564 6961   perform_remedia
│ │ │ -001a4a90: 7469 6f6e 207b 0a0a 2020 2020 0a20 2020  tion {..    .   
│ │ │ -001a4aa0: 2020 2020 2023 2074 6865 206d 6f75 6e74       # the mount
│ │ │ -001a4ab0: 2070 6f69 6e74 202f 746d 7020 6861 7320   point /tmp has 
│ │ │ -001a4ac0: 746f 2062 6520 6465 6669 6e65 6420 696e  to be defined in
│ │ │ -001a4ad0: 202f 6574 632f 6673 7461 620a 2020 2020   /etc/fstab.    
│ │ │ -001a4ae0: 2020 2020 2320 6265 666f 7265 2074 6869      # before thi
│ │ │ -001a4af0: 7320 7265 6d65 6469 6174 696f 6e20 6361  s remediation ca
│ │ │ -001a4b00: 6e20 6265 2065 7865 6375 7465 642e 2049  n be executed. I
│ │ │ -001a4b10: 6e20 6361 7365 2069 7420 6973 206e 6f74  n case it is not
│ │ │ -001a4b20: 2064 6566 696e 6564 2c20 7468 650a 2020   defined, the.  
│ │ │ -001a4b30: 2020 2020 2020 2320 7265 6d65 6469 6174        # remediat
│ │ │ -001a4b40: 696f 6e20 6162 6f72 7473 2061 6e64 206e  ion aborts and n
│ │ │ -001a4b50: 6f20 6368 616e 6765 7320 7265 6761 7264  o changes regard
│ │ │ -001a4b60: 696e 6720 7468 6520 6d6f 756e 7420 706f  ing the mount po
│ │ │ -001a4b70: 696e 7420 6172 6520 646f 6e65 2e0a 2020  int are done..  
│ │ │ -001a4b80: 2020 2020 2020 6d6f 756e 745f 706f 696e        mount_poin
│ │ │ -001a4b90: 745f 6d61 7463 685f 7265 6765 7870 3d22  t_match_regexp="
│ │ │ -001a4ba0: 2428 7072 696e 7466 2022 5e5b 5b3a 7370  $(printf "^[[:sp
│ │ │ -001a4bb0: 6163 653a 5d5d 2a5b 5e23 5d2e 2a5b 5b3a  ace:]]*[^#].*[[:
│ │ │ -001a4bc0: 7370 6163 653a 5d5d 2573 5b5b 3a73 7061  space:]]%s[[:spa
│ │ │ -001a4bd0: 6365 3a5d 5d22 2022 2f74 6d70 2229 220a  ce:]]" "/tmp")".
│ │ │ -001a4be0: 0a20 2020 2067 7265 7020 2224 6d6f 756e  .    grep "$moun
│ │ │ -001a4bf0: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ -001a4c00: 6765 7870 2220 2d71 202f 6574 632f 6673  gexp" -q /etc/fs
│ │ │ -001a4c10: 7461 6220 5c0a 2020 2020 2020 2020 7c7c  tab \.        ||
│ │ │ -001a4c20: 207b 2065 6368 6f20 2254 6865 206d 6f75   { echo "The mou
│ │ │ -001a4c30: 6e74 2070 6f69 6e74 2027 2f74 6d70 2720  nt point '/tmp' 
│ │ │ -001a4c40: 6973 206e 6f74 2065 7665 6e20 696e 202f  is not even in /
│ │ │ -001a4c50: 6574 632f 6673 7461 622c 2073 6f20 7765  etc/fstab, so we
│ │ │ -001a4c60: 2063 616e 2774 2073 6574 2075 7020 6d6f   can't set up mo
│ │ │ -001a4c70: 756e 7420 6f70 7469 6f6e 7322 2026 6774  unt options" >
│ │ │ -001a4c80: 3b26 616d 703b 323b 0a20 2020 2020 2020  ;&2;.       
│ │ │ -001a4c90: 2020 2020 2020 2020 2065 6368 6f20 224e           echo "N
│ │ │ -001a4ca0: 6f74 2072 656d 6564 6961 7469 6e67 2c20  ot remediating, 
│ │ │ -001a4cb0: 6265 6361 7573 6520 7468 6572 6520 6973  because there is
│ │ │ -001a4cc0: 206e 6f20 7265 636f 7264 206f 6620 2f74   no record of /t
│ │ │ -001a4cd0: 6d70 2069 6e20 2f65 7463 2f66 7374 6162  mp in /etc/fstab
│ │ │ -001a4ce0: 2220 2667 743b 2661 6d70 3b32 3b20 7265  " >&2; re
│ │ │ -001a4cf0: 7475 726e 2031 3b20 7d0a 2020 2020 0a0a  turn 1; }.    ..
│ │ │ -001a4d00: 0a20 2020 206d 6f75 6e74 5f70 6f69 6e74  .    mount_point
│ │ │ -001a4d10: 5f6d 6174 6368 5f72 6567 6578 703d 2224  _match_regexp="$
│ │ │ -001a4d20: 2870 7269 6e74 6620 225e 5b5b 3a73 7061  (printf "^[[:spa
│ │ │ -001a4d30: 6365 3a5d 5d2a 5b5e 235d 2e2a 5b5b 3a73  ce:]]*[^#].*[[:s
│ │ │ -001a4d40: 7061 6365 3a5d 5d25 735b 5b3a 7370 6163  pace:]]%s[[:spac
│ │ │ -001a4d50: 653a 5d5d 2220 2f74 6d70 2922 0a0a 2020  e:]]" /tmp)"..  
│ │ │ -001a4d60: 2020 2320 4966 2074 6865 206d 6f75 6e74    # If the mount
│ │ │ -001a4d70: 2070 6f69 6e74 2069 7320 6e6f 7420 696e   point is not in
│ │ │ -001a4d80: 202f 6574 632f 6673 7461 622c 2067 6574   /etc/fstab, get
│ │ │ -001a4d90: 2070 7265 7669 6f75 7320 6d6f 756e 7420   previous mount 
│ │ │ -001a4da0: 6f70 7469 6f6e 7320 6672 6f6d 202f 6574  options from /et
│ │ │ -001a4db0: 632f 6d74 6162 0a20 2020 2069 6620 2120  c/mtab.    if ! 
│ │ │ -001a4dc0: 6772 6570 202d 7120 2224 6d6f 756e 745f  grep -q "$mount_
│ │ │ -001a4dd0: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ -001a4de0: 7870 2220 2f65 7463 2f66 7374 6162 3b20  xp" /etc/fstab; 
│ │ │ -001a4df0: 7468 656e 0a20 2020 2020 2020 2023 2072  then.        # r
│ │ │ -001a4e00: 756e 7469 6d65 206f 7074 7320 7769 7468  untime opts with
│ │ │ -001a4e10: 6f75 7420 736f 6d65 2061 7574 6f6d 6174  out some automat
│ │ │ -001a4e20: 6963 206b 6572 6e65 6c2f 7573 6572 7370  ic kernel/usersp
│ │ │ -001a4e30: 6163 652d 6164 6465 6420 6465 6661 756c  ace-added defaul
│ │ │ -001a4e40: 7473 0a20 2020 2020 2020 2070 7265 7669  ts.        previ
│ │ │ -001a4e50: 6f75 735f 6d6f 756e 745f 6f70 7473 3d24  ous_mount_opts=$
│ │ │ -001a4e60: 2867 7265 7020 2224 6d6f 756e 745f 706f  (grep "$mount_po
│ │ │ -001a4e70: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ -001a4e80: 2220 2f65 7463 2f6d 7461 6220 7c20 6865  " /etc/mtab | he
│ │ │ -001a4e90: 6164 202d 3120 7c20 2061 776b 2027 7b70  ad -1 |  awk '{p
│ │ │ -001a4ea0: 7269 6e74 2024 347d 2720 5c0a 2020 2020  rint $4}' \.    
│ │ │ -001a4eb0: 2020 2020 2020 2020 2020 2020 2020 2020                  
│ │ │ -001a4ec0: 7c20 7365 6420 2d45 2022 732f 2872 777c  | sed -E "s/(rw|
│ │ │ -001a4ed0: 6465 6661 756c 7473 7c73 6563 6c61 6265  defaults|seclabe
│ │ │ -001a4ee0: 6c7c 6e6f 6578 6563 2928 2c7c 2429 2f2f  l|noexec)(,|$)//
│ │ │ -001a4ef0: 673b 732f 2c24 2f2f 2229 0a20 2020 2020  g;s/,$//").     
│ │ │ -001a4f00: 2020 205b 2022 2470 7265 7669 6f75 735f     [ "$previous_
│ │ │ -001a4f10: 6d6f 756e 745f 6f70 7473 2220 5d20 2661  mount_opts" ] &a
│ │ │ -001a4f20: 6d70 3b26 616d 703b 2070 7265 7669 6f75  mp;& previou
│ │ │ -001a4f30: 735f 6d6f 756e 745f 6f70 7473 2b3d 222c  s_mount_opts+=",
│ │ │ -001a4f40: 220a 2020 2020 2020 2020 2320 496e 2069  ".        # In i
│ │ │ -001a4f50: 736f 3936 3630 2066 696c 6573 7973 7465  so9660 filesyste
│ │ │ -001a4f60: 6d73 206d 7461 6220 636f 756c 6420 6465  ms mtab could de
│ │ │ -001a4f70: 7363 7269 6265 2061 2022 626c 6f63 6b73  scribe a "blocks
│ │ │ -001a4f80: 697a 6522 2076 616c 7565 2c20 7468 6973  ize" value, this
│ │ │ -001a4f90: 2073 686f 756c 6420 6265 2072 6566 6c65   should be refle
│ │ │ -001a4fa0: 6374 6564 2069 6e0a 2020 2020 2020 2020  cted in.        
│ │ │ -001a4fb0: 2320 6673 7461 6220 6173 2022 626c 6f63  # fstab as "bloc
│ │ │ -001a4fc0: 6b22 2e20 2054 6865 206e 6578 7420 7661  k".  The next va
│ │ │ -001a4fd0: 7269 6162 6c65 2069 7320 746f 2073 6174  riable is to sat
│ │ │ -001a4fe0: 6973 6679 2073 6865 6c6c 6368 6563 6b20  isfy shellcheck 
│ │ │ -001a4ff0: 5343 3230 3530 2e0a 2020 2020 2020 2020  SC2050..        
│ │ │ -001a5000: 6673 5f74 7970 653d 2222 0a20 2020 2020  fs_type="".     
│ │ │ -001a5010: 2020 2069 6620 5b20 2022 2466 735f 7479     if [  "$fs_ty
│ │ │ -001a5020: 7065 2220 3d3d 2022 6973 6f39 3636 3022  pe" == "iso9660"
│ │ │ -001a5030: 205d 203b 2074 6865 6e0a 2020 2020 2020   ] ; then.      
│ │ │ -001a5040: 2020 2020 2020 7072 6576 696f 7573 5f6d        previous_m
│ │ │ -001a5050: 6f75 6e74 5f6f 7074 733d 2428 7365 6420  ount_opts=$(sed 
│ │ │ -001a5060: 2773 2f62 6c6f 636b 7369 7a65 3d2f 626c  's/blocksize=/bl
│ │ │ -001a5070: 6f63 6b3d 2f27 2026 6c74 3b26 6c74 3b26  ock=/' <<&
│ │ │ -001a5080: 6c74 3b20 2224 7072 6576 696f 7573 5f6d  lt; "$previous_m
│ │ │ -001a5090: 6f75 6e74 5f6f 7074 7322 290a 2020 2020  ount_opts").    
│ │ │ -001a50a0: 2020 2020 6669 0a20 2020 2020 2020 2065      fi.        e
│ │ │ -001a50b0: 6368 6f20 2220 2f74 6d70 2020 6465 6661  cho " /tmp  defa
│ │ │ -001a50c0: 756c 7473 2c24 7b70 7265 7669 6f75 735f  ults,${previous_
│ │ │ -001a50d0: 6d6f 756e 745f 6f70 7473 7d6e 6f65 7865  mount_opts}noexe
│ │ │ -001a50e0: 6320 3020 3022 2026 6774 3b26 6774 3b20  c 0 0" >> 
│ │ │ -001a50f0: 2f65 7463 2f66 7374 6162 0a20 2020 2023  /etc/fstab.    #
│ │ │ -001a5100: 2049 6620 7468 6520 6d6f 756e 745f 6f70   If the mount_op
│ │ │ -001a5110: 7420 6f70 7469 6f6e 2069 7320 6e6f 7420  t option is not 
│ │ │ -001a5120: 616c 7265 6164 7920 696e 2074 6865 206d  already in the m
│ │ │ -001a5130: 6f75 6e74 2070 6f69 6e74 2773 202f 6574  ount point's /et
│ │ │ -001a5140: 632f 6673 7461 6220 656e 7472 792c 2061  c/fstab entry, a
│ │ │ -001a5150: 6464 2069 740a 2020 2020 656c 6966 2021  dd it.    elif !
│ │ │ -001a5160: 2067 7265 7020 2224 6d6f 756e 745f 706f   grep "$mount_po
│ │ │ -001a5170: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ -001a5180: 2220 2f65 7463 2f66 7374 6162 207c 2067  " /etc/fstab | g
│ │ │ -001a5190: 7265 7020 2d71 2022 6e6f 6578 6563 223b  rep -q "noexec";
│ │ │ -001a51a0: 2074 6865 6e0a 2020 2020 2020 2020 7072   then.        pr
│ │ │ -001a51b0: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ -001a51c0: 733d 2428 6772 6570 2022 246d 6f75 6e74  s=$(grep "$mount
│ │ │ -001a51d0: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ -001a51e0: 6578 7022 202f 6574 632f 6673 7461 6220  exp" /etc/fstab 
│ │ │ -001a51f0: 7c20 6177 6b20 277b 7072 696e 7420 2434  | awk '{print $4
│ │ │ -001a5200: 7d27 290a 2020 2020 2020 2020 7365 6420  }').        sed 
│ │ │ -001a5210: 2d69 2022 737c 5c28 247b 6d6f 756e 745f  -i "s|\(${mount_
│ │ │ -001a5220: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ -001a5230: 7870 7d2e 2a24 7b70 7265 7669 6f75 735f  xp}.*${previous_
│ │ │ -001a5240: 6d6f 756e 745f 6f70 7473 7d5c 297c 5c31  mount_opts}\)|\1
│ │ │ -001a5250: 2c6e 6f65 7865 637c 2220 2f65 7463 2f66  ,noexec|" /etc/f
│ │ │ -001a5260: 7374 6162 0a20 2020 2066 690a 0a0a 2020  stab.    fi...  
│ │ │ -001a5270: 2020 6966 206d 6b64 6972 202d 7020 222f    if mkdir -p "/
│ │ │ -001a5280: 746d 7022 3b20 7468 656e 0a20 2020 2020  tmp"; then.     
│ │ │ -001a5290: 2020 2069 6620 6d6f 756e 7470 6f69 6e74     if mountpoint
│ │ │ -001a52a0: 202d 7120 222f 746d 7022 3b20 7468 656e   -q "/tmp"; then
│ │ │ -001a52b0: 0a20 2020 2020 2020 2020 2020 206d 6f75  .            mou
│ │ │ -001a52c0: 6e74 202d 6f20 7265 6d6f 756e 7420 2d2d  nt -o remount --
│ │ │ -001a52d0: 7461 7267 6574 2022 2f74 6d70 220a 2020  target "/tmp".  
│ │ │ -001a52e0: 2020 2020 2020 6669 0a20 2020 2066 690a        fi.    fi.
│ │ │ -001a52f0: 7d0a 0a70 6572 666f 726d 5f72 656d 6564  }..perform_remed
│ │ │ -001a5300: 6961 7469 6f6e 0a0a 656c 7365 0a20 2020  iation..else.   
│ │ │ -001a5310: 2026 6774 3b26 616d 703b 3220 6563 686f   >&2 echo
│ │ │ -001a5320: 2027 5265 6d65 6469 6174 696f 6e20 6973   'Remediation is
│ │ │ -001a5330: 206e 6f74 2061 7070 6c69 6361 626c 652c   not applicable,
│ │ │ -001a5340: 206e 6f74 6869 6e67 2077 6173 2064 6f6e   nothing was don
│ │ │ -001a5350: 6527 0a66 690a 3c2f 636f 6465 3e3c 2f70  e'.fi.


Reboo │ │ │ -001a48b0: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -001a48c0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
< │ │ │ +001a2ea0: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ +001a2ec0: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr> │ │ │ +001a2f10: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472
low
Disr │ │ │ +001a2ed0: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +001a2ee0: 6869 6768 3c2f 7464 3e3c 2f74 723e 3c74 high
Reboot:false
Str │ │ │ +001a2f20: 6174 6567 793a 3c2f 7468 3e3c 7464 3e63 ategy:c │ │ │ +001a2f30: 6f6e 6669 6775 7265 3c2f 7464 3e3c 2f74 onfigure
<
│ │ │ +001a2f50: 636f 6465 3e2d 206e 616d 653a 2047 6174  code>- name: Gat
│ │ │ +001a2f60: 6865 7220 7468 6520 7061 636b 6167 6520  her the package 
│ │ │ +001a2f70: 6661 6374 730a 2020 7061 636b 6167 655f  facts.  package_
│ │ │ +001a2f80: 6661 6374 733a 0a20 2020 206d 616e 6167  facts:.    manag
│ │ │ +001a2f90: 6572 3a20 6175 746f 0a20 2074 6167 733a  er: auto.  tags:
│ │ │ +001a2fa0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001a2fb0: 2d41 432d 360a 2020 2d20 4e49 5354 2d38  -AC-6.  - NIST-8
│ │ │ +001a2fc0: 3030 2d35 332d 4143 2d36 2831 290a 2020  00-53-AC-6(1).  
│ │ │ +001a2fd0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +001a2fe0: 2d36 2861 290a 2020 2d20 4e49 5354 2d38  -6(a).  - NIST-8
│ │ │ +001a2ff0: 3030 2d35 332d 434d 2d37 2861 290a 2020  00-53-CM-7(a).  
│ │ │ +001a3000: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +001a3010: 2d37 2862 290a 2020 2d20 4e49 5354 2d38  -7(b).  - NIST-8
│ │ │ +001a3020: 3030 2d35 332d 4d50 2d37 0a20 202d 2063  00-53-MP-7.  - c
│ │ │ +001a3030: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ +001a3040: 790a 2020 2d20 6869 6768 5f64 6973 7275  y.  - high_disru
│ │ │ +001a3050: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f  ption.  - low_co
│ │ │ +001a3060: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ +001a3070: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ +001a3080: 206d 6f75 6e74 5f6f 7074 696f 6e5f 746d   mount_option_tm
│ │ │ +001a3090: 705f 6e6f 6578 6563 0a20 202d 206e 6f5f  p_noexec.  - no_
│ │ │ +001a30a0: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ +001a30b0: 206e 616d 653a 2027 4164 6420 6e6f 6578   name: 'Add noex
│ │ │ +001a30c0: 6563 204f 7074 696f 6e20 746f 202f 746d  ec Option to /tm
│ │ │ +001a30d0: 703a 2043 6865 636b 2069 6e66 6f72 6d61  p: Check informa
│ │ │ +001a30e0: 7469 6f6e 2061 7373 6f63 6961 7465 6420  tion associated 
│ │ │ +001a30f0: 746f 206d 6f75 6e74 706f 696e 7427 0a20  to mountpoint'. 
│ │ │ +001a3100: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ +001a3110: 2e63 6f6d 6d61 6e64 3a20 6669 6e64 6d6e  .command: findmn
│ │ │ +001a3120: 7420 2d2d 6673 7461 6220 272f 746d 7027  t --fstab '/tmp'
│ │ │ +001a3130: 0a20 2072 6567 6973 7465 723a 2064 6576  .  register: dev
│ │ │ +001a3140: 6963 655f 6e61 6d65 0a20 2066 6169 6c65  ice_name.  faile
│ │ │ +001a3150: 645f 7768 656e 3a20 6465 7669 6365 5f6e  d_when: device_n
│ │ │ +001a3160: 616d 652e 7263 2026 6774 3b20 310a 2020  ame.rc > 1.  
│ │ │ +001a3170: 6368 616e 6765 645f 7768 656e 3a20 6661  changed_when: fa
│ │ │ +001a3180: 6c73 650a 2020 6368 6563 6b5f 6d6f 6465  lse.  check_mode
│ │ │ +001a3190: 3a20 6661 6c73 650a 2020 7768 656e 3a0a  : false.  when:.
│ │ │ +001a31a0: 2020 2d20 2820 6e6f 7420 2820 226b 6572    - ( not ( "ker
│ │ │ +001a31b0: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ +001a31c0: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ +001a31d0: 6e64 2022 626f 6f74 6322 2069 6e20 616e  nd "bootc" in an
│ │ │ +001a31e0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001a31f0: 6167 6573 0a20 2020 2061 6e64 206e 6f74  ages.    and not
│ │ │ +001a3200: 2022 6f70 656e 7368 6966 742d 6b75 6265   "openshift-kube
│ │ │ +001a3210: 6c65 7422 2069 6e20 616e 7369 626c 655f  let" in ansible_
│ │ │ +001a3220: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ +001a3230: 6e64 2022 6f73 7472 6565 2220 696e 2061  nd "ostree" in a
│ │ │ +001a3240: 6e73 6962 6c65 5f70 726f 635f 636d 646c  nsible_proc_cmdl
│ │ │ +001a3250: 696e 650a 2020 2020 2920 616e 6420 6e6f  ine.    ) and no
│ │ │ +001a3260: 7420 2820 616e 7369 626c 655f 7669 7274  t ( ansible_virt
│ │ │ +001a3270: 7561 6c69 7a61 7469 6f6e 5f74 7970 6520  ualization_type 
│ │ │ +001a3280: 696e 205b 2264 6f63 6b65 7222 2c20 226c  in ["docker", "l
│ │ │ +001a3290: 7863 222c 2022 6f70 656e 767a 222c 2022  xc", "openvz", "
│ │ │ +001a32a0: 706f 646d 616e 222c 0a20 2020 2022 636f  podman",.    "co
│ │ │ +001a32b0: 6e74 6169 6e65 7222 5d20 2920 290a 2020  ntainer"] ) ).  
│ │ │ +001a32c0: 2d20 2722 2f74 6d70 2220 696e 2061 6e73  - '"/tmp" in ans
│ │ │ +001a32d0: 6962 6c65 5f6d 6f75 6e74 7320 7c20 6d61  ible_mounts | ma
│ │ │ +001a32e0: 7028 6174 7472 6962 7574 653d 226d 6f75  p(attribute="mou
│ │ │ +001a32f0: 6e74 2229 207c 206c 6973 7427 0a20 2074  nt") | list'.  t
│ │ │ +001a3300: 6167 733a 0a20 202d 204e 4953 542d 3830  ags:.  - NIST-80
│ │ │ +001a3310: 302d 3533 2d41 432d 360a 2020 2d20 4e49  0-53-AC-6.  - NI
│ │ │ +001a3320: 5354 2d38 3030 2d35 332d 4143 2d36 2831  ST-800-53-AC-6(1
│ │ │ +001a3330: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001a3340: 332d 434d 2d36 2861 290a 2020 2d20 4e49  3-CM-6(a).  - NI
│ │ │ +001a3350: 5354 2d38 3030 2d35 332d 434d 2d37 2861  ST-800-53-CM-7(a
│ │ │ +001a3360: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001a3370: 332d 434d 2d37 2862 290a 2020 2d20 4e49  3-CM-7(b).  - NI
│ │ │ +001a3380: 5354 2d38 3030 2d35 332d 4d50 2d37 0a20  ST-800-53-MP-7. 
│ │ │ +001a3390: 202d 2063 6f6e 6669 6775 7265 5f73 7472   - configure_str
│ │ │ +001a33a0: 6174 6567 790a 2020 2d20 6869 6768 5f64  ategy.  - high_d
│ │ │ +001a33b0: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ +001a33c0: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ +001a33d0: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ +001a33e0: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f  .  - mount_optio
│ │ │ +001a33f0: 6e5f 746d 705f 6e6f 6578 6563 0a20 202d  n_tmp_noexec.  -
│ │ │ +001a3400: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ +001a3410: 640a 0a2d 206e 616d 653a 2027 4164 6420  d..- name: 'Add 
│ │ │ +001a3420: 6e6f 6578 6563 204f 7074 696f 6e20 746f  noexec Option to
│ │ │ +001a3430: 202f 746d 703a 2043 7265 6174 6520 6d6f   /tmp: Create mo
│ │ │ +001a3440: 756e 745f 696e 666f 2064 6963 7469 6f6e  unt_info diction
│ │ │ +001a3450: 6172 7920 7661 7269 6162 6c65 270a 2020  ary variable'.  
│ │ │ +001a3460: 7365 745f 6661 6374 3a0a 2020 2020 6d6f  set_fact:.    mo
│ │ │ +001a3470: 756e 745f 696e 666f 3a20 277b 7b20 6d6f  unt_info: '{{ mo
│ │ │ +001a3480: 756e 745f 696e 666f 7c64 6566 6175 6c74  unt_info|default
│ │ │ +001a3490: 287b 7d29 7c63 6f6d 6269 6e65 287b 6974  ({})|combine({it
│ │ │ +001a34a0: 656d 2e30 3a20 6974 656d 2e31 7d29 207d  em.0: item.1}) }
│ │ │ +001a34b0: 7d27 0a20 2077 6974 685f 746f 6765 7468  }'.  with_togeth
│ │ │ +001a34c0: 6572 3a0a 2020 2d20 277b 7b20 6465 7669  er:.  - '{{ devi
│ │ │ +001a34d0: 6365 5f6e 616d 652e 7374 646f 7574 5f6c  ce_name.stdout_l
│ │ │ +001a34e0: 696e 6573 5b30 5d2e 7370 6c69 7428 2920  ines[0].split() 
│ │ │ +001a34f0: 7c20 6d61 7028 2727 6c6f 7765 7227 2729  | map(''lower'')
│ │ │ +001a3500: 207c 206c 6973 7420 7d7d 270a 2020 2d20   | list }}'.  - 
│ │ │ +001a3510: 277b 7b20 6465 7669 6365 5f6e 616d 652e  '{{ device_name.
│ │ │ +001a3520: 7374 646f 7574 5f6c 696e 6573 5b31 5d2e  stdout_lines[1].
│ │ │ +001a3530: 7370 6c69 7428 2920 7c20 6c69 7374 207d  split() | list }
│ │ │ +001a3540: 7d27 0a20 2077 6865 6e3a 0a20 202d 2028  }'.  when:.  - (
│ │ │ +001a3550: 206e 6f74 2028 2022 6b65 726e 656c 2220   not ( "kernel" 
│ │ │ +001a3560: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001a3570: 2e70 6163 6b61 6765 7320 616e 6420 2262  .packages and "b
│ │ │ +001a3580: 6f6f 7463 2220 696e 2061 6e73 6962 6c65  ootc" in ansible
│ │ │ +001a3590: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ +001a35a0: 2020 2020 616e 6420 6e6f 7420 226f 7065      and not "ope
│ │ │ +001a35b0: 6e73 6869 6674 2d6b 7562 656c 6574 2220  nshift-kubelet" 
│ │ │ +001a35c0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001a35d0: 2e70 6163 6b61 6765 7320 616e 6420 226f  .packages and "o
│ │ │ +001a35e0: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ +001a35f0: 655f 7072 6f63 5f63 6d64 6c69 6e65 0a20  e_proc_cmdline. 
│ │ │ +001a3600: 2020 2029 2061 6e64 206e 6f74 2028 2061     ) and not ( a
│ │ │ +001a3610: 6e73 6962 6c65 5f76 6972 7475 616c 697a  nsible_virtualiz
│ │ │ +001a3620: 6174 696f 6e5f 7479 7065 2069 6e20 5b22  ation_type in ["
│ │ │ +001a3630: 646f 636b 6572 222c 2022 6c78 6322 2c20  docker", "lxc", 
│ │ │ +001a3640: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61  "openvz", "podma
│ │ │ +001a3650: 6e22 2c0a 2020 2020 2263 6f6e 7461 696e  n",.    "contain
│ │ │ +001a3660: 6572 225d 2029 2029 0a20 202d 2027 222f  er"] ) ).  - '"/
│ │ │ +001a3670: 746d 7022 2069 6e20 616e 7369 626c 655f  tmp" in ansible_
│ │ │ +001a3680: 6d6f 756e 7473 207c 206d 6170 2861 7474  mounts | map(att
│ │ │ +001a3690: 7269 6275 7465 3d22 6d6f 756e 7422 2920  ribute="mount") 
│ │ │ +001a36a0: 7c20 6c69 7374 270a 2020 2d20 6465 7669  | list'.  - devi
│ │ │ +001a36b0: 6365 5f6e 616d 652e 7374 646f 7574 2069  ce_name.stdout i
│ │ │ +001a36c0: 7320 6465 6669 6e65 6420 616e 6420 6465  s defined and de
│ │ │ +001a36d0: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ +001a36e0: 5f6c 696e 6573 2069 7320 6465 6669 6e65  _lines is define
│ │ │ +001a36f0: 640a 2020 2d20 2864 6576 6963 655f 6e61  d.  - (device_na
│ │ │ +001a3700: 6d65 2e73 7464 6f75 7420 7c20 6c65 6e67  me.stdout | leng
│ │ │ +001a3710: 7468 2026 6774 3b20 3029 0a20 2074 6167  th > 0).  tag
│ │ │ +001a3720: 733a 0a20 202d 204e 4953 542d 3830 302d  s:.  - NIST-800-
│ │ │ +001a3730: 3533 2d41 432d 360a 2020 2d20 4e49 5354  53-AC-6.  - NIST
│ │ │ +001a3740: 2d38 3030 2d35 332d 4143 2d36 2831 290a  -800-53-AC-6(1).
│ │ │ +001a3750: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001a3760: 434d 2d36 2861 290a 2020 2d20 4e49 5354  CM-6(a).  - NIST
│ │ │ +001a3770: 2d38 3030 2d35 332d 434d 2d37 2861 290a  -800-53-CM-7(a).
│ │ │ +001a3780: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001a3790: 434d 2d37 2862 290a 2020 2d20 4e49 5354  CM-7(b).  - NIST
│ │ │ +001a37a0: 2d38 3030 2d35 332d 4d50 2d37 0a20 202d  -800-53-MP-7.  -
│ │ │ +001a37b0: 2063 6f6e 6669 6775 7265 5f73 7472 6174   configure_strat
│ │ │ +001a37c0: 6567 790a 2020 2d20 6869 6768 5f64 6973  egy.  - high_dis
│ │ │ +001a37d0: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f  ruption.  - low_
│ │ │ +001a37e0: 636f 6d70 6c65 7869 7479 0a20 202d 206d  complexity.  - m
│ │ │ +001a37f0: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ +001a3800: 202d 206d 6f75 6e74 5f6f 7074 696f 6e5f   - mount_option_
│ │ │ +001a3810: 746d 705f 6e6f 6578 6563 0a20 202d 206e  tmp_noexec.  - n
│ │ │ +001a3820: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ +001a3830: 0a2d 206e 616d 653a 2027 4164 6420 6e6f  .- name: 'Add no
│ │ │ +001a3840: 6578 6563 204f 7074 696f 6e20 746f 202f  exec Option to /
│ │ │ +001a3850: 746d 703a 2049 6620 2f74 6d70 206e 6f74  tmp: If /tmp not
│ │ │ +001a3860: 206d 6f75 6e74 6564 2c20 6372 6166 7420   mounted, craft 
│ │ │ +001a3870: 6d6f 756e 745f 696e 666f 206d 616e 7561  mount_info manua
│ │ │ +001a3880: 6c6c 7927 0a20 2073 6574 5f66 6163 743a  lly'.  set_fact:
│ │ │ +001a3890: 0a20 2020 206d 6f75 6e74 5f69 6e66 6f3a  .    mount_info:
│ │ │ +001a38a0: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f7c   '{{ mount_info|
│ │ │ +001a38b0: 6465 6661 756c 7428 7b7d 297c 636f 6d62  default({})|comb
│ │ │ +001a38c0: 696e 6528 7b69 7465 6d2e 303a 2069 7465  ine({item.0: ite
│ │ │ +001a38d0: 6d2e 317d 2920 7d7d 270a 2020 7769 7468  m.1}) }}'.  with
│ │ │ +001a38e0: 5f74 6f67 6574 6865 723a 0a20 202d 202d  _together:.  - -
│ │ │ +001a38f0: 2074 6172 6765 740a 2020 2020 2d20 736f   target.    - so
│ │ │ +001a3900: 7572 6365 0a20 2020 202d 2066 7374 7970  urce.    - fstyp
│ │ │ +001a3910: 650a 2020 2020 2d20 6f70 7469 6f6e 730a  e.    - options.
│ │ │ +001a3920: 2020 2d20 2d20 2f74 6d70 0a20 2020 202d    - - /tmp.    -
│ │ │ +001a3930: 2027 270a 2020 2020 2d20 2727 0a20 2020   ''.    - ''.   
│ │ │ +001a3940: 202d 2064 6566 6175 6c74 730a 2020 7768   - defaults.  wh
│ │ │ +001a3950: 656e 3a0a 2020 2d20 2820 6e6f 7420 2820  en:.  - ( not ( 
│ │ │ +001a3960: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ +001a3970: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001a3980: 6573 2061 6e64 2022 626f 6f74 6322 2069  es and "bootc" i
│ │ │ +001a3990: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001a39a0: 7061 636b 6167 6573 0a20 2020 2061 6e64  packages.    and
│ │ │ +001a39b0: 206e 6f74 2022 6f70 656e 7368 6966 742d   not "openshift-
│ │ │ +001a39c0: 6b75 6265 6c65 7422 2069 6e20 616e 7369  kubelet" in ansi
│ │ │ +001a39d0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001a39e0: 6573 2061 6e64 2022 6f73 7472 6565 2220  es and "ostree" 
│ │ │ +001a39f0: 696e 2061 6e73 6962 6c65 5f70 726f 635f  in ansible_proc_
│ │ │ +001a3a00: 636d 646c 696e 650a 2020 2020 2920 616e  cmdline.    ) an
│ │ │ +001a3a10: 6420 6e6f 7420 2820 616e 7369 626c 655f  d not ( ansible_
│ │ │ +001a3a20: 7669 7274 7561 6c69 7a61 7469 6f6e 5f74  virtualization_t
│ │ │ +001a3a30: 7970 6520 696e 205b 2264 6f63 6b65 7222  ype in ["docker"
│ │ │ +001a3a40: 2c20 226c 7863 222c 2022 6f70 656e 767a  , "lxc", "openvz
│ │ │ +001a3a50: 222c 2022 706f 646d 616e 222c 0a20 2020  ", "podman",.   
│ │ │ +001a3a60: 2022 636f 6e74 6169 6e65 7222 5d20 2920   "container"] ) 
│ │ │ +001a3a70: 290a 2020 2d20 2722 2f74 6d70 2220 696e  ).  - '"/tmp" in
│ │ │ +001a3a80: 2061 6e73 6962 6c65 5f6d 6f75 6e74 7320   ansible_mounts 
│ │ │ +001a3a90: 7c20 6d61 7028 6174 7472 6962 7574 653d  | map(attribute=
│ │ │ +001a3aa0: 226d 6f75 6e74 2229 207c 206c 6973 7427  "mount") | list'
│ │ │ +001a3ab0: 0a20 202d 2028 222d 2d66 7374 6162 2220  .  - ("--fstab" 
│ │ │ +001a3ac0: 7c20 6c65 6e67 7468 203d 3d20 3029 0a20  | length == 0). 
│ │ │ +001a3ad0: 202d 2064 6576 6963 655f 6e61 6d65 2e73   - device_name.s
│ │ │ +001a3ae0: 7464 6f75 7420 6973 2064 6566 696e 6564  tdout is defined
│ │ │ +001a3af0: 2061 6e64 2064 6576 6963 655f 6e61 6d65   and device_name
│ │ │ +001a3b00: 2e73 7464 6f75 745f 6c69 6e65 7320 6973  .stdout_lines is
│ │ │ +001a3b10: 2064 6566 696e 6564 0a20 202d 2028 6465   defined.  - (de
│ │ │ +001a3b20: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ +001a3b30: 207c 206c 656e 6774 6820 3d3d 2030 290a   | length == 0).
│ │ │ +001a3b40: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ +001a3b50: 2d38 3030 2d35 332d 4143 2d36 0a20 202d  -800-53-AC-6.  -
│ │ │ +001a3b60: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ +001a3b70: 3628 3129 0a20 202d 204e 4953 542d 3830  6(1).  - NIST-80
│ │ │ +001a3b80: 302d 3533 2d43 4d2d 3628 6129 0a20 202d  0-53-CM-6(a).  -
│ │ │ +001a3b90: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +001a3ba0: 3728 6129 0a20 202d 204e 4953 542d 3830  7(a).  - NIST-80
│ │ │ +001a3bb0: 302d 3533 2d43 4d2d 3728 6229 0a20 202d  0-53-CM-7(b).  -
│ │ │ +001a3bc0: 204e 4953 542d 3830 302d 3533 2d4d 502d   NIST-800-53-MP-
│ │ │ +001a3bd0: 370a 2020 2d20 636f 6e66 6967 7572 655f  7.  - configure_
│ │ │ +001a3be0: 7374 7261 7465 6779 0a20 202d 2068 6967  strategy.  - hig
│ │ │ +001a3bf0: 685f 6469 7372 7570 7469 6f6e 0a20 202d  h_disruption.  -
│ │ │ +001a3c00: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ +001a3c10: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ +001a3c20: 6974 790a 2020 2d20 6d6f 756e 745f 6f70  ity.  - mount_op
│ │ │ +001a3c30: 7469 6f6e 5f74 6d70 5f6e 6f65 7865 630a  tion_tmp_noexec.
│ │ │ +001a3c40: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ +001a3c50: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741  eded..- name: 'A
│ │ │ +001a3c60: 6464 206e 6f65 7865 6320 4f70 7469 6f6e  dd noexec Option
│ │ │ +001a3c70: 2074 6f20 2f74 6d70 3a20 4d61 6b65 2073   to /tmp: Make s
│ │ │ +001a3c80: 7572 6520 6e6f 6578 6563 206f 7074 696f  ure noexec optio
│ │ │ +001a3c90: 6e20 6973 2070 6172 7420 6f66 2074 6865  n is part of the
│ │ │ +001a3ca0: 2074 6f20 2f74 6d70 0a20 2020 206f 7074   to /tmp.    opt
│ │ │ +001a3cb0: 696f 6e73 270a 2020 7365 745f 6661 6374  ions'.  set_fact
│ │ │ +001a3cc0: 3a0a 2020 2020 6d6f 756e 745f 696e 666f  :.    mount_info
│ │ │ +001a3cd0: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ +001a3ce0: 207c 2063 6f6d 6269 6e65 2820 7b27 276f   | combine( {''o
│ │ │ +001a3cf0: 7074 696f 6e73 2727 3a27 2727 277e 286d  ptions'':''''~(m
│ │ │ +001a3d00: 6f75 6e74 5f69 6e66 6f2e 6f70 7469 6f6e  ount_info.option
│ │ │ +001a3d10: 7320 7c0a 2020 2020 2020 6465 6661 756c  s |.      defaul
│ │ │ +001a3d20: 7428 2727 2727 2929 7e28 2727 2c27 2720  t(''''))~('','' 
│ │ │ +001a3d30: 6966 2028 6d6f 756e 745f 696e 666f 2e6f  if (mount_info.o
│ │ │ +001a3d40: 7074 696f 6e73 207c 2064 6566 6175 6c74  ptions | default
│ │ │ +001a3d50: 2827 2727 2729 2920 656c 7365 2027 2727  ('''')) else '''
│ │ │ +001a3d60: 2729 7e27 276e 6f65 7865 6327 270a 2020  ')~''noexec''.  
│ │ │ +001a3d70: 2020 2020 7d29 207d 7d27 0a20 2077 6865      }) }}'.  whe
│ │ │ +001a3d80: 6e3a 0a20 202d 2028 206e 6f74 2028 2022  n:.  - ( not ( "
│ │ │ +001a3d90: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ +001a3da0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001a3db0: 7320 616e 6420 2262 6f6f 7463 2220 696e  s and "bootc" in
│ │ │ +001a3dc0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001a3dd0: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ +001a3de0: 6e6f 7420 226f 7065 6e73 6869 6674 2d6b  not "openshift-k
│ │ │ +001a3df0: 7562 656c 6574 2220 696e 2061 6e73 6962  ubelet" in ansib
│ │ │ +001a3e00: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001a3e10: 7320 616e 6420 226f 7374 7265 6522 2069  s and "ostree" i
│ │ │ +001a3e20: 6e20 616e 7369 626c 655f 7072 6f63 5f63  n ansible_proc_c
│ │ │ +001a3e30: 6d64 6c69 6e65 0a20 2020 2029 2061 6e64  mdline.    ) and
│ │ │ +001a3e40: 206e 6f74 2028 2061 6e73 6962 6c65 5f76   not ( ansible_v
│ │ │ +001a3e50: 6972 7475 616c 697a 6174 696f 6e5f 7479  irtualization_ty
│ │ │ +001a3e60: 7065 2069 6e20 5b22 646f 636b 6572 222c  pe in ["docker",
│ │ │ +001a3e70: 2022 6c78 6322 2c20 226f 7065 6e76 7a22   "lxc", "openvz"
│ │ │ +001a3e80: 2c20 2270 6f64 6d61 6e22 2c0a 2020 2020  , "podman",.    
│ │ │ +001a3e90: 2263 6f6e 7461 696e 6572 225d 2029 2029  "container"] ) )
│ │ │ +001a3ea0: 0a20 202d 2027 222f 746d 7022 2069 6e20  .  - '"/tmp" in 
│ │ │ +001a3eb0: 616e 7369 626c 655f 6d6f 756e 7473 207c  ansible_mounts |
│ │ │ +001a3ec0: 206d 6170 2861 7474 7269 6275 7465 3d22   map(attribute="
│ │ │ +001a3ed0: 6d6f 756e 7422 2920 7c20 6c69 7374 270a  mount") | list'.
│ │ │ +001a3ee0: 2020 2d20 6d6f 756e 745f 696e 666f 2069    - mount_info i
│ │ │ +001a3ef0: 7320 6465 6669 6e65 6420 616e 6420 226e  s defined and "n
│ │ │ +001a3f00: 6f65 7865 6322 206e 6f74 2069 6e20 286d  oexec" not in (m
│ │ │ +001a3f10: 6f75 6e74 5f69 6e66 6f2e 6f70 7469 6f6e  ount_info.option
│ │ │ +001a3f20: 7320 7c20 6465 6661 756c 7428 2727 2929  s | default(''))
│ │ │ +001a3f30: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ +001a3f40: 542d 3830 302d 3533 2d41 432d 360a 2020  T-800-53-AC-6.  
│ │ │ +001a3f50: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ +001a3f60: 2d36 2831 290a 2020 2d20 4e49 5354 2d38  -6(1).  - NIST-8
│ │ │ +001a3f70: 3030 2d35 332d 434d 2d36 2861 290a 2020  00-53-CM-6(a).  
│ │ │ +001a3f80: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +001a3f90: 2d37 2861 290a 2020 2d20 4e49 5354 2d38  -7(a).  - NIST-8
│ │ │ +001a3fa0: 3030 2d35 332d 434d 2d37 2862 290a 2020  00-53-CM-7(b).  
│ │ │ +001a3fb0: 2d20 4e49 5354 2d38 3030 2d35 332d 4d50  - NIST-800-53-MP
│ │ │ +001a3fc0: 2d37 0a20 202d 2063 6f6e 6669 6775 7265  -7.  - configure
│ │ │ +001a3fd0: 5f73 7472 6174 6567 790a 2020 2d20 6869  _strategy.  - hi
│ │ │ +001a3fe0: 6768 5f64 6973 7275 7074 696f 6e0a 2020  gh_disruption.  
│ │ │ +001a3ff0: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ +001a4000: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ +001a4010: 7269 7479 0a20 202d 206d 6f75 6e74 5f6f  rity.  - mount_o
│ │ │ +001a4020: 7074 696f 6e5f 746d 705f 6e6f 6578 6563  ption_tmp_noexec
│ │ │ +001a4030: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ +001a4040: 6565 6465 640a 0a2d 206e 616d 653a 2027  eeded..- name: '
│ │ │ +001a4050: 4164 6420 6e6f 6578 6563 204f 7074 696f  Add noexec Optio
│ │ │ +001a4060: 6e20 746f 202f 746d 703a 2045 6e73 7572  n to /tmp: Ensur
│ │ │ +001a4070: 6520 2f74 6d70 2069 7320 6d6f 756e 7465  e /tmp is mounte
│ │ │ +001a4080: 6420 7769 7468 206e 6f65 7865 6320 6f70  d with noexec op
│ │ │ +001a4090: 7469 6f6e 270a 2020 616e 7369 626c 652e  tion'.  ansible.
│ │ │ +001a40a0: 706f 7369 782e 6d6f 756e 743a 0a20 2020  posix.mount:.   
│ │ │ +001a40b0: 2070 6174 683a 202f 746d 700a 2020 2020   path: /tmp.    
│ │ │ +001a40c0: 7372 633a 2027 7b7b 206d 6f75 6e74 5f69  src: '{{ mount_i
│ │ │ +001a40d0: 6e66 6f2e 736f 7572 6365 207c 2064 6566  nfo.source | def
│ │ │ +001a40e0: 6175 6c74 2827 2727 2729 207d 7d27 0a20  ault('''') }}'. 
│ │ │ +001a40f0: 2020 206f 7074 733a 2027 7b7b 206d 6f75     opts: '{{ mou
│ │ │ +001a4100: 6e74 5f69 6e66 6f2e 6f70 7469 6f6e 7320  nt_info.options 
│ │ │ +001a4110: 7c20 6465 6661 756c 7428 2727 2727 2920  | default('''') 
│ │ │ +001a4120: 7d7d 270a 2020 2020 7374 6174 653a 206d  }}'.    state: m
│ │ │ +001a4130: 6f75 6e74 6564 0a20 2020 2066 7374 7970  ounted.    fstyp
│ │ │ +001a4140: 653a 2027 7b7b 206d 6f75 6e74 5f69 6e66  e: '{{ mount_inf
│ │ │ +001a4150: 6f2e 6673 7479 7065 207c 2064 6566 6175  o.fstype | defau
│ │ │ +001a4160: 6c74 2827 2727 2729 207d 7d27 0a20 2072  lt('''') }}'.  r
│ │ │ +001a4170: 6567 6973 7465 723a 206d 6f75 6e74 5f72  egister: mount_r
│ │ │ +001a4180: 6573 756c 740a 2020 6661 696c 6564 5f77  esult.  failed_w
│ │ │ +001a4190: 6865 6e3a 0a20 202d 206d 6f75 6e74 5f72  hen:.  - mount_r
│ │ │ +001a41a0: 6573 756c 7420 6973 2066 6169 6c65 640a  esult is failed.
│ │ │ +001a41b0: 2020 2d20 2727 2774 6172 6765 7420 6973    - '''target is
│ │ │ +001a41c0: 2062 7573 7927 2720 6e6f 7420 696e 2028   busy'' not in (
│ │ │ +001a41d0: 6d6f 756e 745f 7265 7375 6c74 2e6d 7367  mount_result.msg
│ │ │ +001a41e0: 207c 2064 6566 6175 6c74 2827 2727 2729   | default('''')
│ │ │ +001a41f0: 2927 0a20 202d 2027 2727 616c 7265 6164  )'.  - '''alread
│ │ │ +001a4200: 7920 6d6f 756e 7465 6427 2720 6e6f 7420  y mounted'' not 
│ │ │ +001a4210: 696e 2028 6d6f 756e 745f 7265 7375 6c74  in (mount_result
│ │ │ +001a4220: 2e6d 7367 207c 2064 6566 6175 6c74 2827  .msg | default('
│ │ │ +001a4230: 2727 2729 2927 0a20 2077 6865 6e3a 0a20  '''))'.  when:. 
│ │ │ +001a4240: 202d 2028 206e 6f74 2028 2022 6b65 726e   - ( not ( "kern
│ │ │ +001a4250: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ +001a4260: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +001a4270: 6420 2262 6f6f 7463 2220 696e 2061 6e73  d "bootc" in ans
│ │ │ +001a4280: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001a4290: 6765 730a 2020 2020 616e 6420 6e6f 7420  ges.    and not 
│ │ │ +001a42a0: 226f 7065 6e73 6869 6674 2d6b 7562 656c  "openshift-kubel
│ │ │ +001a42b0: 6574 2220 696e 2061 6e73 6962 6c65 5f66  et" in ansible_f
│ │ │ +001a42c0: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +001a42d0: 6420 226f 7374 7265 6522 2069 6e20 616e  d "ostree" in an
│ │ │ +001a42e0: 7369 626c 655f 7072 6f63 5f63 6d64 6c69  sible_proc_cmdli
│ │ │ +001a42f0: 6e65 0a20 2020 2029 2061 6e64 206e 6f74  ne.    ) and not
│ │ │ +001a4300: 2028 2061 6e73 6962 6c65 5f76 6972 7475   ( ansible_virtu
│ │ │ +001a4310: 616c 697a 6174 696f 6e5f 7479 7065 2069  alization_type i
│ │ │ +001a4320: 6e20 5b22 646f 636b 6572 222c 2022 6c78  n ["docker", "lx
│ │ │ +001a4330: 6322 2c20 226f 7065 6e76 7a22 2c20 2270  c", "openvz", "p
│ │ │ +001a4340: 6f64 6d61 6e22 2c0a 2020 2020 2263 6f6e  odman",.    "con
│ │ │ +001a4350: 7461 696e 6572 225d 2029 2029 0a20 202d  tainer"] ) ).  -
│ │ │ +001a4360: 2027 222f 746d 7022 2069 6e20 616e 7369   '"/tmp" in ansi
│ │ │ +001a4370: 626c 655f 6d6f 756e 7473 207c 206d 6170  ble_mounts | map
│ │ │ +001a4380: 2861 7474 7269 6275 7465 3d22 6d6f 756e  (attribute="moun
│ │ │ +001a4390: 7422 2920 7c20 6c69 7374 270a 2020 2d20  t") | list'.  - 
│ │ │ +001a43a0: 6d6f 756e 745f 696e 666f 2069 7320 6465  mount_info is de
│ │ │ +001a43b0: 6669 6e65 640a 2020 2d20 2864 6576 6963  fined.  - (devic
│ │ │ +001a43c0: 655f 6e61 6d65 2e73 7464 6f75 7420 6973  e_name.stdout is
│ │ │ +001a43d0: 2064 6566 696e 6564 2061 6e64 2028 6465   defined and (de
│ │ │ +001a43e0: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ +001a43f0: 207c 206c 656e 6774 6820 2667 743b 2030   | length > 0
│ │ │ +001a4400: 2929 206f 7220 2822 2d2d 6673 7461 6222  )) or ("--fstab"
│ │ │ +001a4410: 0a20 2020 207c 206c 656e 6774 6820 3d3d  .    | length ==
│ │ │ +001a4420: 2030 290a 2020 7461 6773 3a0a 2020 2d20   0).  tags:.  - 
│ │ │ +001a4430: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ +001a4440: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001a4450: 2d41 432d 3628 3129 0a20 202d 204e 4953  -AC-6(1).  - NIS
│ │ │ +001a4460: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ +001a4470: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001a4480: 2d43 4d2d 3728 6129 0a20 202d 204e 4953  -CM-7(a).  - NIS
│ │ │ +001a4490: 542d 3830 302d 3533 2d43 4d2d 3728 6229  T-800-53-CM-7(b)
│ │ │ +001a44a0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001a44b0: 2d4d 502d 370a 2020 2d20 636f 6e66 6967  -MP-7.  - config
│ │ │ +001a44c0: 7572 655f 7374 7261 7465 6779 0a20 202d  ure_strategy.  -
│ │ │ +001a44d0: 2068 6967 685f 6469 7372 7570 7469 6f6e   high_disruption
│ │ │ +001a44e0: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ +001a44f0: 6974 790a 2020 2d20 6d65 6469 756d 5f73  ity.  - medium_s
│ │ │ +001a4500: 6576 6572 6974 790a 2020 2d20 6d6f 756e  everity.  - moun
│ │ │ +001a4510: 745f 6f70 7469 6f6e 5f74 6d70 5f6e 6f65  t_option_tmp_noe
│ │ │ +001a4520: 7865 630a 2020 2d20 6e6f 5f72 6562 6f6f  xec.  - no_reboo
│ │ │ +001a4530: 745f 6e65 6564 6564 0a3c 2f63 6f64 653e  t_needed.
│ │ │ +001a4540: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ +001a45f0: 7469 6f6e 2053 6865 6c6c 2073 6372 6970 tion Shell scrip │ │ │ +001a4600: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ +001a4680: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:false

# Remed │ │ │ +001a46c0: 6961 7469 6f6e 2069 7320 6170 706c 6963 iation is applic │ │ │ +001a46d0: 6162 6c65 206f 6e6c 7920 696e 2063 6572 able only in cer │ │ │ +001a46e0: 7461 696e 2070 6c61 7466 6f72 6d73 0a69 tain platforms.i │ │ │ +001a46f0: 6620 2820 2120 2820 7b20 7270 6d20 2d2d f ( ! ( { rpm -- │ │ │ +001a4700: 7175 6965 7420 2d71 206b 6572 6e65 6c20 quiet -q kernel │ │ │ +001a4710: 3b7d 2026 616d 703b 2661 6d70 3b20 7b20 ;} && { │ │ │ +001a4720: 7270 6d20 2d2d 7175 6965 7420 2d71 2062 rpm --quiet -q b │ │ │ +001a4730: 6f6f 7463 203b 7d20 2661 6d70 3b26 616d ootc ;} &&am │ │ │ +001a4740: 703b 207b 2021 2072 706d 202d 2d71 7569 p; { ! rpm --qui │ │ │ +001a4750: 6574 202d 7120 6f70 656e 7368 6966 742d et -q openshift- │ │ │ +001a4760: 6b75 6265 6c65 7420 3b7d 2026 616d 703b kubelet ;} & │ │ │ +001a4770: 2661 6d70 3b20 285b 202d 6620 2f72 756e & ([ -f /run │ │ │ +001a4780: 2f6f 7374 7265 652d 626f 6f74 6564 205d /ostree-booted ] │ │ │ +001a4790: 207c 7c20 5b20 2d4c 202f 6f73 7472 6565 || [ -L /ostree │ │ │ +001a47a0: 205d 2920 2920 2661 6d70 3b26 616d 703b ]) ) && │ │ │ +001a47b0: 2021 2028 205b 202d 6620 2f2e 646f 636b ! ( [ -f /.dock │ │ │ +001a47c0: 6572 656e 7620 5d20 7c7c 205b 202d 6620 erenv ] || [ -f │ │ │ +001a47d0: 2f72 756e 2f2e 636f 6e74 6169 6e65 7265 /run/.containere │ │ │ +001a47e0: 6e76 205d 2029 2029 2026 616d 703b 2661 nv ] ) ) &&a │ │ │ +001a47f0: 6d70 3b20 7b20 2820 6669 6e64 6d6e 7420 mp; { ( findmnt │ │ │ +001a4800: 2d2d 6b65 726e 656c 2022 2f74 6d70 2220 --kernel "/tmp" │ │ │ +001a4810: 2667 743b 202f 6465 762f 6e75 6c6c 207c > /dev/null | │ │ │ +001a4820: 7c20 6669 6e64 6d6e 7420 2d2d 6673 7461 | findmnt --fsta │ │ │ +001a4830: 6220 222f 746d 7022 2026 6774 3b20 2f64 b "/tmp" > /d │ │ │ +001a4840: 6576 2f6e 756c 6c20 293b 207d 3b20 7468 ev/null ); }; th │ │ │ +001a4850: 656e 0a0a 6675 6e63 7469 6f6e 2070 6572 en..function per │ │ │ +001a4860: 666f 726d 5f72 656d 6564 6961 7469 6f6e form_remediation │ │ │ +001a4870: 207b 0a0a 2020 2020 0a20 2020 2020 2020 {.. . │ │ │ +001a4880: 2023 2074 6865 206d 6f75 6e74 2070 6f69 # the mount poi │ │ │ +001a4890: 6e74 202f 746d 7020 6861 7320 746f 2062 nt /tmp has to b │ │ │ +001a48a0: 6520 6465 6669 6e65 6420 696e 202f 6574 e defined in /et │ │ │ +001a48b0: 632f 6673 7461 620a 2020 2020 2020 2020 c/fstab. │ │ │ +001a48c0: 2320 6265 666f 7265 2074 6869 7320 7265 # before this re │ │ │ +001a48d0: 6d65 6469 6174 696f 6e20 6361 6e20 6265 mediation can be │ │ │ +001a48e0: 2065 7865 6375 7465 642e 2049 6e20 6361 executed. In ca │ │ │ +001a48f0: 7365 2069 7420 6973 206e 6f74 2064 6566 se it is not def │ │ │ +001a4900: 696e 6564 2c20 7468 650a 2020 2020 2020 ined, the. │ │ │ +001a4910: 2020 2320 7265 6d65 6469 6174 696f 6e20 # remediation │ │ │ +001a4920: 6162 6f72 7473 2061 6e64 206e 6f20 6368 aborts and no ch │ │ │ +001a4930: 616e 6765 7320 7265 6761 7264 696e 6720 anges regarding │ │ │ +001a4940: 7468 6520 6d6f 756e 7420 706f 696e 7420 the mount point │ │ │ +001a4950: 6172 6520 646f 6e65 2e0a 2020 2020 2020 are done.. │ │ │ +001a4960: 2020 6d6f 756e 745f 706f 696e 745f 6d61 mount_point_ma │ │ │ +001a4970: 7463 685f 7265 6765 7870 3d22 2428 7072 tch_regexp="$(pr │ │ │ +001a4980: 696e 7466 2022 5e5b 5b3a 7370 6163 653a intf "^[[:space: │ │ │ +001a4990: 5d5d 2a5b 5e23 5d2e 2a5b 5b3a 7370 6163 ]]*[^#].*[[:spac │ │ │ +001a49a0: 653a 5d5d 2573 5b5b 3a73 7061 6365 3a5d e:]]%s[[:space:] │ │ │ +001a49b0: 5d22 2022 2f74 6d70 2229 220a 0a20 2020 ]" "/tmp")".. │ │ │ +001a49c0: 2067 7265 7020 2224 6d6f 756e 745f 706f grep "$mount_po │ │ │ +001a49d0: 696e 745f 6d61 7463 685f 7265 6765 7870 int_match_regexp │ │ │ +001a49e0: 2220 2d71 202f 6574 632f 6673 7461 6220 " -q /etc/fstab │ │ │ +001a49f0: 5c0a 2020 2020 2020 2020 7c7c 207b 2065 \. || { e │ │ │ +001a4a00: 6368 6f20 2254 6865 206d 6f75 6e74 2070 cho "The mount p │ │ │ +001a4a10: 6f69 6e74 2027 2f74 6d70 2720 6973 206e oint '/tmp' is n │ │ │ +001a4a20: 6f74 2065 7665 6e20 696e 202f 6574 632f ot even in /etc/ │ │ │ +001a4a30: 6673 7461 622c 2073 6f20 7765 2063 616e fstab, so we can │ │ │ +001a4a40: 2774 2073 6574 2075 7020 6d6f 756e 7420 't set up mount │ │ │ +001a4a50: 6f70 7469 6f6e 7322 2026 6774 3b26 616d options" >&am │ │ │ +001a4a60: 703b 323b 0a20 2020 2020 2020 2020 2020 p;2;. │ │ │ +001a4a70: 2020 2020 2065 6368 6f20 224e 6f74 2072 echo "Not r │ │ │ +001a4a80: 656d 6564 6961 7469 6e67 2c20 6265 6361 emediating, beca │ │ │ +001a4a90: 7573 6520 7468 6572 6520 6973 206e 6f20 use there is no │ │ │ +001a4aa0: 7265 636f 7264 206f 6620 2f74 6d70 2069 record of /tmp i │ │ │ +001a4ab0: 6e20 2f65 7463 2f66 7374 6162 2220 2667 n /etc/fstab" &g │ │ │ +001a4ac0: 743b 2661 6d70 3b32 3b20 7265 7475 726e t;&2; return │ │ │ +001a4ad0: 2031 3b20 7d0a 2020 2020 0a0a 0a20 2020 1; }. ... │ │ │ +001a4ae0: 206d 6f75 6e74 5f70 6f69 6e74 5f6d 6174 mount_point_mat │ │ │ +001a4af0: 6368 5f72 6567 6578 703d 2224 2870 7269 ch_regexp="$(pri │ │ │ +001a4b00: 6e74 6620 225e 5b5b 3a73 7061 6365 3a5d ntf "^[[:space:] │ │ │ +001a4b10: 5d2a 5b5e 235d 2e2a 5b5b 3a73 7061 6365 ]*[^#].*[[:space │ │ │ +001a4b20: 3a5d 5d25 735b 5b3a 7370 6163 653a 5d5d :]]%s[[:space:]] │ │ │ +001a4b30: 2220 2f74 6d70 2922 0a0a 2020 2020 2320 " /tmp)".. # │ │ │ +001a4b40: 4966 2074 6865 206d 6f75 6e74 2070 6f69 If the mount poi │ │ │ +001a4b50: 6e74 2069 7320 6e6f 7420 696e 202f 6574 nt is not in /et │ │ │ +001a4b60: 632f 6673 7461 622c 2067 6574 2070 7265 c/fstab, get pre │ │ │ +001a4b70: 7669 6f75 7320 6d6f 756e 7420 6f70 7469 vious mount opti │ │ │ +001a4b80: 6f6e 7320 6672 6f6d 202f 6574 632f 6d74 ons from /etc/mt │ │ │ +001a4b90: 6162 0a20 2020 2069 6620 2120 6772 6570 ab. if ! grep │ │ │ +001a4ba0: 202d 7120 2224 6d6f 756e 745f 706f 696e -q "$mount_poin │ │ │ +001a4bb0: 745f 6d61 7463 685f 7265 6765 7870 2220 t_match_regexp" │ │ │ +001a4bc0: 2f65 7463 2f66 7374 6162 3b20 7468 656e /etc/fstab; then │ │ │ +001a4bd0: 0a20 2020 2020 2020 2023 2072 756e 7469 . # runti │ │ │ +001a4be0: 6d65 206f 7074 7320 7769 7468 6f75 7420 me opts without │ │ │ +001a4bf0: 736f 6d65 2061 7574 6f6d 6174 6963 206b some automatic k │ │ │ +001a4c00: 6572 6e65 6c2f 7573 6572 7370 6163 652d ernel/userspace- │ │ │ +001a4c10: 6164 6465 6420 6465 6661 756c 7473 0a20 added defaults. │ │ │ +001a4c20: 2020 2020 2020 2070 7265 7669 6f75 735f previous_ │ │ │ +001a4c30: 6d6f 756e 745f 6f70 7473 3d24 2867 7265 mount_opts=$(gre │ │ │ +001a4c40: 7020 2224 6d6f 756e 745f 706f 696e 745f p "$mount_point_ │ │ │ +001a4c50: 6d61 7463 685f 7265 6765 7870 2220 2f65 match_regexp" /e │ │ │ +001a4c60: 7463 2f6d 7461 6220 7c20 6865 6164 202d tc/mtab | head - │ │ │ +001a4c70: 3120 7c20 2061 776b 2027 7b70 7269 6e74 1 | awk '{print │ │ │ +001a4c80: 2024 347d 2720 5c0a 2020 2020 2020 2020 $4}' \. │ │ │ +001a4c90: 2020 2020 2020 2020 2020 2020 7c20 7365 | se │ │ │ +001a4ca0: 6420 2d45 2022 732f 2872 777c 6465 6661 d -E "s/(rw|defa │ │ │ +001a4cb0: 756c 7473 7c73 6563 6c61 6265 6c7c 6e6f ults|seclabel|no │ │ │ +001a4cc0: 6578 6563 2928 2c7c 2429 2f2f 673b 732f exec)(,|$)//g;s/ │ │ │ +001a4cd0: 2c24 2f2f 2229 0a20 2020 2020 2020 205b ,$//"). [ │ │ │ +001a4ce0: 2022 2470 7265 7669 6f75 735f 6d6f 756e "$previous_moun │ │ │ +001a4cf0: 745f 6f70 7473 2220 5d20 2661 6d70 3b26 t_opts" ] && │ │ │ +001a4d00: 616d 703b 2070 7265 7669 6f75 735f 6d6f amp; previous_mo │ │ │ +001a4d10: 756e 745f 6f70 7473 2b3d 222c 220a 2020 unt_opts+=",". │ │ │ +001a4d20: 2020 2020 2020 2320 496e 2069 736f 3936 # In iso96 │ │ │ +001a4d30: 3630 2066 696c 6573 7973 7465 6d73 206d 60 filesystems m │ │ │ +001a4d40: 7461 6220 636f 756c 6420 6465 7363 7269 tab could descri │ │ │ +001a4d50: 6265 2061 2022 626c 6f63 6b73 697a 6522 be a "blocksize" │ │ │ +001a4d60: 2076 616c 7565 2c20 7468 6973 2073 686f value, this sho │ │ │ +001a4d70: 756c 6420 6265 2072 6566 6c65 6374 6564 uld be reflected │ │ │ +001a4d80: 2069 6e0a 2020 2020 2020 2020 2320 6673 in. # fs │ │ │ +001a4d90: 7461 6220 6173 2022 626c 6f63 6b22 2e20 tab as "block". │ │ │ +001a4da0: 2054 6865 206e 6578 7420 7661 7269 6162 The next variab │ │ │ +001a4db0: 6c65 2069 7320 746f 2073 6174 6973 6679 le is to satisfy │ │ │ +001a4dc0: 2073 6865 6c6c 6368 6563 6b20 5343 3230 shellcheck SC20 │ │ │ +001a4dd0: 3530 2e0a 2020 2020 2020 2020 6673 5f74 50.. fs_t │ │ │ +001a4de0: 7970 653d 2222 0a20 2020 2020 2020 2069 ype="". i │ │ │ +001a4df0: 6620 5b20 2022 2466 735f 7479 7065 2220 f [ "$fs_type" │ │ │ +001a4e00: 3d3d 2022 6973 6f39 3636 3022 205d 203b == "iso9660" ] ; │ │ │ +001a4e10: 2074 6865 6e0a 2020 2020 2020 2020 2020 then. │ │ │ +001a4e20: 2020 7072 6576 696f 7573 5f6d 6f75 6e74 previous_mount │ │ │ +001a4e30: 5f6f 7074 733d 2428 7365 6420 2773 2f62 _opts=$(sed 's/b │ │ │ +001a4e40: 6c6f 636b 7369 7a65 3d2f 626c 6f63 6b3d locksize=/block= │ │ │ +001a4e50: 2f27 2026 6c74 3b26 6c74 3b26 6c74 3b20 /' <<< │ │ │ +001a4e60: 2224 7072 6576 696f 7573 5f6d 6f75 6e74 "$previous_mount │ │ │ +001a4e70: 5f6f 7074 7322 290a 2020 2020 2020 2020 _opts"). │ │ │ +001a4e80: 6669 0a20 2020 2020 2020 2065 6368 6f20 fi. echo │ │ │ +001a4e90: 2220 2f74 6d70 2020 6465 6661 756c 7473 " /tmp defaults │ │ │ +001a4ea0: 2c24 7b70 7265 7669 6f75 735f 6d6f 756e ,${previous_moun │ │ │ +001a4eb0: 745f 6f70 7473 7d6e 6f65 7865 6320 3020 t_opts}noexec 0 │ │ │ +001a4ec0: 3022 2026 6774 3b26 6774 3b20 2f65 7463 0" >> /etc │ │ │ +001a4ed0: 2f66 7374 6162 0a20 2020 2023 2049 6620 /fstab. # If │ │ │ +001a4ee0: 7468 6520 6d6f 756e 745f 6f70 7420 6f70 the mount_opt op │ │ │ +001a4ef0: 7469 6f6e 2069 7320 6e6f 7420 616c 7265 tion is not alre │ │ │ +001a4f00: 6164 7920 696e 2074 6865 206d 6f75 6e74 ady in the mount │ │ │ +001a4f10: 2070 6f69 6e74 2773 202f 6574 632f 6673 point's /etc/fs │ │ │ +001a4f20: 7461 6220 656e 7472 792c 2061 6464 2069 tab entry, add i │ │ │ +001a4f30: 740a 2020 2020 656c 6966 2021 2067 7265 t. elif ! gre │ │ │ +001a4f40: 7020 2224 6d6f 756e 745f 706f 696e 745f p "$mount_point_ │ │ │ +001a4f50: 6d61 7463 685f 7265 6765 7870 2220 2f65 match_regexp" /e │ │ │ +001a4f60: 7463 2f66 7374 6162 207c 2067 7265 7020 tc/fstab | grep │ │ │ +001a4f70: 2d71 2022 6e6f 6578 6563 223b 2074 6865 -q "noexec"; the │ │ │ +001a4f80: 6e0a 2020 2020 2020 2020 7072 6576 696f n. previo │ │ │ +001a4f90: 7573 5f6d 6f75 6e74 5f6f 7074 733d 2428 us_mount_opts=$( │ │ │ +001a4fa0: 6772 6570 2022 246d 6f75 6e74 5f70 6f69 grep "$mount_poi │ │ │ +001a4fb0: 6e74 5f6d 6174 6368 5f72 6567 6578 7022 nt_match_regexp" │ │ │ +001a4fc0: 202f 6574 632f 6673 7461 6220 7c20 6177 /etc/fstab | aw │ │ │ +001a4fd0: 6b20 277b 7072 696e 7420 2434 7d27 290a k '{print $4}'). │ │ │ +001a4fe0: 2020 2020 2020 2020 7365 6420 2d69 2022 sed -i " │ │ │ +001a4ff0: 737c 5c28 247b 6d6f 756e 745f 706f 696e s|\(${mount_poin │ │ │ +001a5000: 745f 6d61 7463 685f 7265 6765 7870 7d2e t_match_regexp}. │ │ │ +001a5010: 2a24 7b70 7265 7669 6f75 735f 6d6f 756e *${previous_moun │ │ │ +001a5020: 745f 6f70 7473 7d5c 297c 5c31 2c6e 6f65 t_opts}\)|\1,noe │ │ │ +001a5030: 7865 637c 2220 2f65 7463 2f66 7374 6162 xec|" /etc/fstab │ │ │ +001a5040: 0a20 2020 2066 690a 0a0a 2020 2020 6966 . fi... if │ │ │ +001a5050: 206d 6b64 6972 202d 7020 222f 746d 7022 mkdir -p "/tmp" │ │ │ +001a5060: 3b20 7468 656e 0a20 2020 2020 2020 2069 ; then. i │ │ │ +001a5070: 6620 6d6f 756e 7470 6f69 6e74 202d 7120 f mountpoint -q │ │ │ +001a5080: 222f 746d 7022 3b20 7468 656e 0a20 2020 "/tmp"; then. │ │ │ +001a5090: 2020 2020 2020 2020 206d 6f75 6e74 202d mount - │ │ │ +001a50a0: 6f20 7265 6d6f 756e 7420 2d2d 7461 7267 o remount --targ │ │ │ +001a50b0: 6574 2022 2f74 6d70 220a 2020 2020 2020 et "/tmp". │ │ │ +001a50c0: 2020 6669 0a20 2020 2066 690a 7d0a 0a70 fi. fi.}..p │ │ │ +001a50d0: 6572 666f 726d 5f72 656d 6564 6961 7469 erform_remediati │ │ │ +001a50e0: 6f6e 0a0a 656c 7365 0a20 2020 2026 6774 on..else. > │ │ │ +001a50f0: 3b26 616d 703b 3220 6563 686f 2027 5265 ;&2 echo 'Re │ │ │ +001a5100: 6d65 6469 6174 696f 6e20 6973 206e 6f74 mediation is not │ │ │ +001a5110: 2061 7070 6c69 6361 626c 652c 206e 6f74 applicable, not │ │ │ +001a5120: 6869 6e67 2077 6173 2064 6f6e 6527 0a66 hing was done'.f │ │ │ +001a5130: 690a 3c2f 636f 6465 3e3c 2f70 7265 3e3c i.< │ │ │ +001a5140: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation An │ │ │ +001a51f0: 6163 6f6e 6461 2073 6e69 7070 6574 20e2 aconda snippet . │ │ │ +001a5200: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..

│ │ │ +001a5280: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +001a52a0: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 < │ │ │ +001a52d0: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr> │ │ │ +001a5320: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ +001a5290: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +001a52b0: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:high
Reboot:false
St │ │ │ +001a5300: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ +001a5310: 656e 6162 6c65 3c2f 7464 3e3c 2f74 723e enable
.part /tmp --
│ │ │ +001a5340: 6d6f 756e 746f 7074 696f 6e73 3d22 6e6f  mountoptions="no
│ │ │ +001a5350: 6578 6563 220a 3c2f 636f 6465 3e3c 2f70  exec".

< │ │ │ 001a5370: 2f74 643e 3c2f 7472 3e3c 2f74 626f 6479 /td>Remediatio │ │ │ -001a6450: 6e20 416e 6163 6f6e 6461 2073 6e69 7070 n Anaconda snipp │ │ │ -001a6460: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ -001a64e0: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ -001a64f0: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -001a6500: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:highReboo │ │ │ -001a6540: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -001a6550: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ -001a6570: 3c74 643e 656e 6162 6c65 3c2f 7464 3e3c enable< │ │ │ -001a6580: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
.part /tm
│ │ │ -001a65a0: 7020 2d2d 6d6f 756e 746f 7074 696f 6e73  p --mountoptions
│ │ │ -001a65b0: 3d22 6e6f 7375 6964 220a 3c2f 636f 6465  ="nosuid".
Remedi │ │ │ -001a6670: 6174 696f 6e20 416e 7369 626c 6520 736e ation Ansible sn │ │ │ -001a6680: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ -001a6730: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c
- n
│ │ │ -001a67c0: 616d 653a 2047 6174 6865 7220 7468 6520  ame: Gather the 
│ │ │ -001a67d0: 7061 636b 6167 6520 6661 6374 730a 2020  package facts.  
│ │ │ -001a67e0: 7061 636b 6167 655f 6661 6374 733a 0a20  package_facts:. 
│ │ │ -001a67f0: 2020 206d 616e 6167 6572 3a20 6175 746f     manager: auto
│ │ │ -001a6800: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ -001a6810: 542d 3830 302d 3533 2d41 432d 360a 2020  T-800-53-AC-6.  
│ │ │ -001a6820: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ -001a6830: 2d36 2831 290a 2020 2d20 4e49 5354 2d38  -6(1).  - NIST-8
│ │ │ -001a6840: 3030 2d35 332d 434d 2d36 2861 290a 2020  00-53-CM-6(a).  
│ │ │ -001a6850: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -001a6860: 2d37 2861 290a 2020 2d20 4e49 5354 2d38  -7(a).  - NIST-8
│ │ │ -001a6870: 3030 2d35 332d 434d 2d37 2862 290a 2020  00-53-CM-7(b).  
│ │ │ -001a6880: 2d20 4e49 5354 2d38 3030 2d35 332d 4d50  - NIST-800-53-MP
│ │ │ -001a6890: 2d37 0a20 202d 2063 6f6e 6669 6775 7265  -7.  - configure
│ │ │ -001a68a0: 5f73 7472 6174 6567 790a 2020 2d20 6869  _strategy.  - hi
│ │ │ -001a68b0: 6768 5f64 6973 7275 7074 696f 6e0a 2020  gh_disruption.  
│ │ │ -001a68c0: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ -001a68d0: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ -001a68e0: 7269 7479 0a20 202d 206d 6f75 6e74 5f6f  rity.  - mount_o
│ │ │ -001a68f0: 7074 696f 6e5f 746d 705f 6e6f 7375 6964  ption_tmp_nosuid
│ │ │ -001a6900: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ -001a6910: 6565 6465 640a 0a2d 206e 616d 653a 2027  eeded..- name: '
│ │ │ -001a6920: 4164 6420 6e6f 7375 6964 204f 7074 696f  Add nosuid Optio
│ │ │ -001a6930: 6e20 746f 202f 746d 703a 2043 6865 636b  n to /tmp: Check
│ │ │ -001a6940: 2069 6e66 6f72 6d61 7469 6f6e 2061 7373   information ass
│ │ │ -001a6950: 6f63 6961 7465 6420 746f 206d 6f75 6e74  ociated to mount
│ │ │ -001a6960: 706f 696e 7427 0a20 2061 6e73 6962 6c65  point'.  ansible
│ │ │ -001a6970: 2e62 7569 6c74 696e 2e63 6f6d 6d61 6e64  .builtin.command
│ │ │ -001a6980: 3a20 6669 6e64 6d6e 7420 2d2d 6673 7461  : findmnt --fsta
│ │ │ -001a6990: 6220 272f 746d 7027 0a20 2072 6567 6973  b '/tmp'.  regis
│ │ │ -001a69a0: 7465 723a 2064 6576 6963 655f 6e61 6d65  ter: device_name
│ │ │ -001a69b0: 0a20 2066 6169 6c65 645f 7768 656e 3a20  .  failed_when: 
│ │ │ -001a69c0: 6465 7669 6365 5f6e 616d 652e 7263 2026  device_name.rc &
│ │ │ -001a69d0: 6774 3b20 310a 2020 6368 616e 6765 645f  gt; 1.  changed_
│ │ │ -001a69e0: 7768 656e 3a20 6661 6c73 650a 2020 6368  when: false.  ch
│ │ │ -001a69f0: 6563 6b5f 6d6f 6465 3a20 6661 6c73 650a  eck_mode: false.
│ │ │ -001a6a00: 2020 7768 656e 3a0a 2020 2d20 2820 6e6f    when:.  - ( no
│ │ │ -001a6a10: 7420 2820 226b 6572 6e65 6c22 2069 6e20  t ( "kernel" in 
│ │ │ -001a6a20: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001a6a30: 636b 6167 6573 2061 6e64 2022 626f 6f74  ckages and "boot
│ │ │ -001a6a40: 6322 2069 6e20 616e 7369 626c 655f 6661  c" in ansible_fa
│ │ │ -001a6a50: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ -001a6a60: 2061 6e64 206e 6f74 2022 6f70 656e 7368   and not "opensh
│ │ │ -001a6a70: 6966 742d 6b75 6265 6c65 7422 2069 6e20  ift-kubelet" in 
│ │ │ -001a6a80: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001a6a90: 636b 6167 6573 2061 6e64 2022 6f73 7472  ckages and "ostr
│ │ │ -001a6aa0: 6565 2220 696e 2061 6e73 6962 6c65 5f70  ee" in ansible_p
│ │ │ -001a6ab0: 726f 635f 636d 646c 696e 650a 2020 2020  roc_cmdline.    
│ │ │ -001a6ac0: 2920 616e 6420 6e6f 7420 2820 616e 7369  ) and not ( ansi
│ │ │ -001a6ad0: 626c 655f 7669 7274 7561 6c69 7a61 7469  ble_virtualizati
│ │ │ -001a6ae0: 6f6e 5f74 7970 6520 696e 205b 2264 6f63  on_type in ["doc
│ │ │ -001a6af0: 6b65 7222 2c20 226c 7863 222c 2022 6f70  ker", "lxc", "op
│ │ │ -001a6b00: 656e 767a 222c 2022 706f 646d 616e 222c  envz", "podman",
│ │ │ -001a6b10: 0a20 2020 2022 636f 6e74 6169 6e65 7222  .    "container"
│ │ │ -001a6b20: 5d20 2920 290a 2020 2d20 2722 2f74 6d70  ] ) ).  - '"/tmp
│ │ │ -001a6b30: 2220 696e 2061 6e73 6962 6c65 5f6d 6f75  " in ansible_mou
│ │ │ -001a6b40: 6e74 7320 7c20 6d61 7028 6174 7472 6962  nts | map(attrib
│ │ │ -001a6b50: 7574 653d 226d 6f75 6e74 2229 207c 206c  ute="mount") | l
│ │ │ -001a6b60: 6973 7427 0a20 2074 6167 733a 0a20 202d  ist'.  tags:.  -
│ │ │ -001a6b70: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ -001a6b80: 360a 2020 2d20 4e49 5354 2d38 3030 2d35  6.  - NIST-800-5
│ │ │ -001a6b90: 332d 4143 2d36 2831 290a 2020 2d20 4e49  3-AC-6(1).  - NI
│ │ │ -001a6ba0: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ -001a6bb0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -001a6bc0: 332d 434d 2d37 2861 290a 2020 2d20 4e49  3-CM-7(a).  - NI
│ │ │ -001a6bd0: 5354 2d38 3030 2d35 332d 434d 2d37 2862  ST-800-53-CM-7(b
│ │ │ -001a6be0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -001a6bf0: 332d 4d50 2d37 0a20 202d 2063 6f6e 6669  3-MP-7.  - confi
│ │ │ -001a6c00: 6775 7265 5f73 7472 6174 6567 790a 2020  gure_strategy.  
│ │ │ -001a6c10: 2d20 6869 6768 5f64 6973 7275 7074 696f  - high_disruptio
│ │ │ -001a6c20: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65  n.  - low_comple
│ │ │ -001a6c30: 7869 7479 0a20 202d 206d 6564 6975 6d5f  xity.  - medium_
│ │ │ -001a6c40: 7365 7665 7269 7479 0a20 202d 206d 6f75  severity.  - mou
│ │ │ -001a6c50: 6e74 5f6f 7074 696f 6e5f 746d 705f 6e6f  nt_option_tmp_no
│ │ │ -001a6c60: 7375 6964 0a20 202d 206e 6f5f 7265 626f  suid.  - no_rebo
│ │ │ -001a6c70: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d  ot_needed..- nam
│ │ │ -001a6c80: 653a 2027 4164 6420 6e6f 7375 6964 204f  e: 'Add nosuid O
│ │ │ -001a6c90: 7074 696f 6e20 746f 202f 746d 703a 2043  ption to /tmp: C
│ │ │ -001a6ca0: 7265 6174 6520 6d6f 756e 745f 696e 666f  reate mount_info
│ │ │ -001a6cb0: 2064 6963 7469 6f6e 6172 7920 7661 7269   dictionary vari
│ │ │ -001a6cc0: 6162 6c65 270a 2020 7365 745f 6661 6374  able'.  set_fact
│ │ │ -001a6cd0: 3a0a 2020 2020 6d6f 756e 745f 696e 666f  :.    mount_info
│ │ │ -001a6ce0: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ -001a6cf0: 7c64 6566 6175 6c74 287b 7d29 7c63 6f6d  |default({})|com
│ │ │ -001a6d00: 6269 6e65 287b 6974 656d 2e30 3a20 6974  bine({item.0: it
│ │ │ -001a6d10: 656d 2e31 7d29 207d 7d27 0a20 2077 6974  em.1}) }}'.  wit
│ │ │ -001a6d20: 685f 746f 6765 7468 6572 3a0a 2020 2d20  h_together:.  - 
│ │ │ -001a6d30: 277b 7b20 6465 7669 6365 5f6e 616d 652e  '{{ device_name.
│ │ │ -001a6d40: 7374 646f 7574 5f6c 696e 6573 5b30 5d2e  stdout_lines[0].
│ │ │ -001a6d50: 7370 6c69 7428 2920 7c20 6d61 7028 2727  split() | map(''
│ │ │ -001a6d60: 6c6f 7765 7227 2729 207c 206c 6973 7420  lower'') | list 
│ │ │ -001a6d70: 7d7d 270a 2020 2d20 277b 7b20 6465 7669  }}'.  - '{{ devi
│ │ │ -001a6d80: 6365 5f6e 616d 652e 7374 646f 7574 5f6c  ce_name.stdout_l
│ │ │ -001a6d90: 696e 6573 5b31 5d2e 7370 6c69 7428 2920  ines[1].split() 
│ │ │ -001a6da0: 7c20 6c69 7374 207d 7d27 0a20 2077 6865  | list }}'.  whe
│ │ │ -001a6db0: 6e3a 0a20 202d 2028 206e 6f74 2028 2022  n:.  - ( not ( "
│ │ │ -001a6dc0: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ -001a6dd0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -001a6de0: 7320 616e 6420 2262 6f6f 7463 2220 696e  s and "bootc" in
│ │ │ -001a6df0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -001a6e00: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ -001a6e10: 6e6f 7420 226f 7065 6e73 6869 6674 2d6b  not "openshift-k
│ │ │ -001a6e20: 7562 656c 6574 2220 696e 2061 6e73 6962  ubelet" in ansib
│ │ │ -001a6e30: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -001a6e40: 7320 616e 6420 226f 7374 7265 6522 2069  s and "ostree" i
│ │ │ -001a6e50: 6e20 616e 7369 626c 655f 7072 6f63 5f63  n ansible_proc_c
│ │ │ -001a6e60: 6d64 6c69 6e65 0a20 2020 2029 2061 6e64  mdline.    ) and
│ │ │ -001a6e70: 206e 6f74 2028 2061 6e73 6962 6c65 5f76   not ( ansible_v
│ │ │ -001a6e80: 6972 7475 616c 697a 6174 696f 6e5f 7479  irtualization_ty
│ │ │ -001a6e90: 7065 2069 6e20 5b22 646f 636b 6572 222c  pe in ["docker",
│ │ │ -001a6ea0: 2022 6c78 6322 2c20 226f 7065 6e76 7a22   "lxc", "openvz"
│ │ │ -001a6eb0: 2c20 2270 6f64 6d61 6e22 2c0a 2020 2020  , "podman",.    
│ │ │ -001a6ec0: 2263 6f6e 7461 696e 6572 225d 2029 2029  "container"] ) )
│ │ │ -001a6ed0: 0a20 202d 2027 222f 746d 7022 2069 6e20  .  - '"/tmp" in 
│ │ │ -001a6ee0: 616e 7369 626c 655f 6d6f 756e 7473 207c  ansible_mounts |
│ │ │ -001a6ef0: 206d 6170 2861 7474 7269 6275 7465 3d22   map(attribute="
│ │ │ -001a6f00: 6d6f 756e 7422 2920 7c20 6c69 7374 270a  mount") | list'.
│ │ │ -001a6f10: 2020 2d20 6465 7669 6365 5f6e 616d 652e    - device_name.
│ │ │ -001a6f20: 7374 646f 7574 2069 7320 6465 6669 6e65  stdout is define
│ │ │ -001a6f30: 6420 616e 6420 6465 7669 6365 5f6e 616d  d and device_nam
│ │ │ -001a6f40: 652e 7374 646f 7574 5f6c 696e 6573 2069  e.stdout_lines i
│ │ │ -001a6f50: 7320 6465 6669 6e65 640a 2020 2d20 2864  s defined.  - (d
│ │ │ -001a6f60: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ -001a6f70: 7420 7c20 6c65 6e67 7468 2026 6774 3b20  t | length > 
│ │ │ -001a6f80: 3029 0a20 2074 6167 733a 0a20 202d 204e  0).  tags:.  - N
│ │ │ -001a6f90: 4953 542d 3830 302d 3533 2d41 432d 360a  IST-800-53-AC-6.
│ │ │ -001a6fa0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001a6fb0: 4143 2d36 2831 290a 2020 2d20 4e49 5354  AC-6(1).  - NIST
│ │ │ -001a6fc0: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ -001a6fd0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001a6fe0: 434d 2d37 2861 290a 2020 2d20 4e49 5354  CM-7(a).  - NIST
│ │ │ -001a6ff0: 2d38 3030 2d35 332d 434d 2d37 2862 290a  -800-53-CM-7(b).
│ │ │ -001a7000: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001a7010: 4d50 2d37 0a20 202d 2063 6f6e 6669 6775  MP-7.  - configu
│ │ │ -001a7020: 7265 5f73 7472 6174 6567 790a 2020 2d20  re_strategy.  - 
│ │ │ -001a7030: 6869 6768 5f64 6973 7275 7074 696f 6e0a  high_disruption.
│ │ │ -001a7040: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ -001a7050: 7479 0a20 202d 206d 6564 6975 6d5f 7365  ty.  - medium_se
│ │ │ -001a7060: 7665 7269 7479 0a20 202d 206d 6f75 6e74  verity.  - mount
│ │ │ -001a7070: 5f6f 7074 696f 6e5f 746d 705f 6e6f 7375  _option_tmp_nosu
│ │ │ -001a7080: 6964 0a20 202d 206e 6f5f 7265 626f 6f74  id.  - no_reboot
│ │ │ -001a7090: 5f6e 6565 6465 640a 0a2d 206e 616d 653a  _needed..- name:
│ │ │ -001a70a0: 2027 4164 6420 6e6f 7375 6964 204f 7074   'Add nosuid Opt
│ │ │ -001a70b0: 696f 6e20 746f 202f 746d 703a 2049 6620  ion to /tmp: If 
│ │ │ -001a70c0: 2f74 6d70 206e 6f74 206d 6f75 6e74 6564  /tmp not mounted
│ │ │ -001a70d0: 2c20 6372 6166 7420 6d6f 756e 745f 696e  , craft mount_in
│ │ │ -001a70e0: 666f 206d 616e 7561 6c6c 7927 0a20 2073  fo manually'.  s
│ │ │ -001a70f0: 6574 5f66 6163 743a 0a20 2020 206d 6f75  et_fact:.    mou
│ │ │ -001a7100: 6e74 5f69 6e66 6f3a 2027 7b7b 206d 6f75  nt_info: '{{ mou
│ │ │ -001a7110: 6e74 5f69 6e66 6f7c 6465 6661 756c 7428  nt_info|default(
│ │ │ -001a7120: 7b7d 297c 636f 6d62 696e 6528 7b69 7465  {})|combine({ite
│ │ │ -001a7130: 6d2e 303a 2069 7465 6d2e 317d 2920 7d7d  m.0: item.1}) }}
│ │ │ -001a7140: 270a 2020 7769 7468 5f74 6f67 6574 6865  '.  with_togethe
│ │ │ -001a7150: 723a 0a20 202d 202d 2074 6172 6765 740a  r:.  - - target.
│ │ │ -001a7160: 2020 2020 2d20 736f 7572 6365 0a20 2020      - source.   
│ │ │ -001a7170: 202d 2066 7374 7970 650a 2020 2020 2d20   - fstype.    - 
│ │ │ -001a7180: 6f70 7469 6f6e 730a 2020 2d20 2d20 2f74  options.  - - /t
│ │ │ -001a7190: 6d70 0a20 2020 202d 2027 270a 2020 2020  mp.    - ''.    
│ │ │ -001a71a0: 2d20 2727 0a20 2020 202d 2064 6566 6175  - ''.    - defau
│ │ │ -001a71b0: 6c74 730a 2020 7768 656e 3a0a 2020 2d20  lts.  when:.  - 
│ │ │ -001a71c0: 2820 6e6f 7420 2820 226b 6572 6e65 6c22  ( not ( "kernel"
│ │ │ -001a71d0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001a71e0: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ -001a71f0: 626f 6f74 6322 2069 6e20 616e 7369 626c  bootc" in ansibl
│ │ │ -001a7200: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001a7210: 0a20 2020 2061 6e64 206e 6f74 2022 6f70  .    and not "op
│ │ │ -001a7220: 656e 7368 6966 742d 6b75 6265 6c65 7422  enshift-kubelet"
│ │ │ -001a7230: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001a7240: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ -001a7250: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ -001a7260: 6c65 5f70 726f 635f 636d 646c 696e 650a  le_proc_cmdline.
│ │ │ -001a7270: 2020 2020 2920 616e 6420 6e6f 7420 2820      ) and not ( 
│ │ │ -001a7280: 616e 7369 626c 655f 7669 7274 7561 6c69  ansible_virtuali
│ │ │ -001a7290: 7a61 7469 6f6e 5f74 7970 6520 696e 205b  zation_type in [
│ │ │ -001a72a0: 2264 6f63 6b65 7222 2c20 226c 7863 222c  "docker", "lxc",
│ │ │ -001a72b0: 2022 6f70 656e 767a 222c 2022 706f 646d   "openvz", "podm
│ │ │ -001a72c0: 616e 222c 0a20 2020 2022 636f 6e74 6169  an",.    "contai
│ │ │ -001a72d0: 6e65 7222 5d20 2920 290a 2020 2d20 2722  ner"] ) ).  - '"
│ │ │ -001a72e0: 2f74 6d70 2220 696e 2061 6e73 6962 6c65  /tmp" in ansible
│ │ │ -001a72f0: 5f6d 6f75 6e74 7320 7c20 6d61 7028 6174  _mounts | map(at
│ │ │ -001a7300: 7472 6962 7574 653d 226d 6f75 6e74 2229  tribute="mount")
│ │ │ -001a7310: 207c 206c 6973 7427 0a20 202d 2028 222d   | list'.  - ("-
│ │ │ -001a7320: 2d66 7374 6162 2220 7c20 6c65 6e67 7468  -fstab" | length
│ │ │ -001a7330: 203d 3d20 3029 0a20 202d 2064 6576 6963   == 0).  - devic
│ │ │ -001a7340: 655f 6e61 6d65 2e73 7464 6f75 7420 6973  e_name.stdout is
│ │ │ -001a7350: 2064 6566 696e 6564 2061 6e64 2064 6576   defined and dev
│ │ │ -001a7360: 6963 655f 6e61 6d65 2e73 7464 6f75 745f  ice_name.stdout_
│ │ │ -001a7370: 6c69 6e65 7320 6973 2064 6566 696e 6564  lines is defined
│ │ │ -001a7380: 0a20 202d 2028 6465 7669 6365 5f6e 616d  .  - (device_nam
│ │ │ -001a7390: 652e 7374 646f 7574 207c 206c 656e 6774  e.stdout | lengt
│ │ │ -001a73a0: 6820 3d3d 2030 290a 2020 7461 6773 3a0a  h == 0).  tags:.
│ │ │ -001a73b0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001a73c0: 4143 2d36 0a20 202d 204e 4953 542d 3830  AC-6.  - NIST-80
│ │ │ -001a73d0: 302d 3533 2d41 432d 3628 3129 0a20 202d  0-53-AC-6(1).  -
│ │ │ -001a73e0: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -001a73f0: 3628 6129 0a20 202d 204e 4953 542d 3830  6(a).  - NIST-80
│ │ │ -001a7400: 302d 3533 2d43 4d2d 3728 6129 0a20 202d  0-53-CM-7(a).  -
│ │ │ -001a7410: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -001a7420: 3728 6229 0a20 202d 204e 4953 542d 3830  7(b).  - NIST-80
│ │ │ -001a7430: 302d 3533 2d4d 502d 370a 2020 2d20 636f  0-53-MP-7.  - co
│ │ │ -001a7440: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ -001a7450: 0a20 202d 2068 6967 685f 6469 7372 7570  .  - high_disrup
│ │ │ -001a7460: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d  tion.  - low_com
│ │ │ -001a7470: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ -001a7480: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ -001a7490: 6d6f 756e 745f 6f70 7469 6f6e 5f74 6d70  mount_option_tmp
│ │ │ -001a74a0: 5f6e 6f73 7569 640a 2020 2d20 6e6f 5f72  _nosuid.  - no_r
│ │ │ -001a74b0: 6562 6f6f 745f 6e65 6564 6564 0a0a 2d20  eboot_needed..- 
│ │ │ -001a74c0: 6e61 6d65 3a20 2741 6464 206e 6f73 7569  name: 'Add nosui
│ │ │ -001a74d0: 6420 4f70 7469 6f6e 2074 6f20 2f74 6d70  d Option to /tmp
│ │ │ -001a74e0: 3a20 4d61 6b65 2073 7572 6520 6e6f 7375  : Make sure nosu
│ │ │ -001a74f0: 6964 206f 7074 696f 6e20 6973 2070 6172  id option is par
│ │ │ -001a7500: 7420 6f66 2074 6865 2074 6f20 2f74 6d70  t of the to /tmp
│ │ │ -001a7510: 0a20 2020 206f 7074 696f 6e73 270a 2020  .    options'.  
│ │ │ -001a7520: 7365 745f 6661 6374 3a0a 2020 2020 6d6f  set_fact:.    mo
│ │ │ -001a7530: 756e 745f 696e 666f 3a20 277b 7b20 6d6f  unt_info: '{{ mo
│ │ │ -001a7540: 756e 745f 696e 666f 207c 2063 6f6d 6269  unt_info | combi
│ │ │ -001a7550: 6e65 2820 7b27 276f 7074 696f 6e73 2727  ne( {''options''
│ │ │ -001a7560: 3a27 2727 277e 286d 6f75 6e74 5f69 6e66  :''''~(mount_inf
│ │ │ -001a7570: 6f2e 6f70 7469 6f6e 7320 7c0a 2020 2020  o.options |.    
│ │ │ -001a7580: 2020 6465 6661 756c 7428 2727 2727 2929    default(''''))
│ │ │ -001a7590: 7e28 2727 2c27 2720 6966 2028 6d6f 756e  ~('','' if (moun
│ │ │ -001a75a0: 745f 696e 666f 2e6f 7074 696f 6e73 207c  t_info.options |
│ │ │ -001a75b0: 2064 6566 6175 6c74 2827 2727 2729 2920   default('''')) 
│ │ │ -001a75c0: 656c 7365 2027 2727 2729 7e27 276e 6f73  else '''')~''nos
│ │ │ -001a75d0: 7569 6427 270a 2020 2020 2020 7d29 207d  uid''.      }) }
│ │ │ -001a75e0: 7d27 0a20 2077 6865 6e3a 0a20 202d 2028  }'.  when:.  - (
│ │ │ -001a75f0: 206e 6f74 2028 2022 6b65 726e 656c 2220   not ( "kernel" 
│ │ │ -001a7600: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001a7610: 2e70 6163 6b61 6765 7320 616e 6420 2262  .packages and "b
│ │ │ -001a7620: 6f6f 7463 2220 696e 2061 6e73 6962 6c65  ootc" in ansible
│ │ │ -001a7630: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ -001a7640: 2020 2020 616e 6420 6e6f 7420 226f 7065      and not "ope
│ │ │ -001a7650: 6e73 6869 6674 2d6b 7562 656c 6574 2220  nshift-kubelet" 
│ │ │ -001a7660: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001a7670: 2e70 6163 6b61 6765 7320 616e 6420 226f  .packages and "o
│ │ │ -001a7680: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ -001a7690: 655f 7072 6f63 5f63 6d64 6c69 6e65 0a20  e_proc_cmdline. 
│ │ │ -001a76a0: 2020 2029 2061 6e64 206e 6f74 2028 2061     ) and not ( a
│ │ │ -001a76b0: 6e73 6962 6c65 5f76 6972 7475 616c 697a  nsible_virtualiz
│ │ │ -001a76c0: 6174 696f 6e5f 7479 7065 2069 6e20 5b22  ation_type in ["
│ │ │ -001a76d0: 646f 636b 6572 222c 2022 6c78 6322 2c20  docker", "lxc", 
│ │ │ -001a76e0: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61  "openvz", "podma
│ │ │ -001a76f0: 6e22 2c0a 2020 2020 2263 6f6e 7461 696e  n",.    "contain
│ │ │ -001a7700: 6572 225d 2029 2029 0a20 202d 2027 222f  er"] ) ).  - '"/
│ │ │ -001a7710: 746d 7022 2069 6e20 616e 7369 626c 655f  tmp" in ansible_
│ │ │ -001a7720: 6d6f 756e 7473 207c 206d 6170 2861 7474  mounts | map(att
│ │ │ -001a7730: 7269 6275 7465 3d22 6d6f 756e 7422 2920  ribute="mount") 
│ │ │ -001a7740: 7c20 6c69 7374 270a 2020 2d20 6d6f 756e  | list'.  - moun
│ │ │ -001a7750: 745f 696e 666f 2069 7320 6465 6669 6e65  t_info is define
│ │ │ -001a7760: 6420 616e 6420 226e 6f73 7569 6422 206e  d and "nosuid" n
│ │ │ -001a7770: 6f74 2069 6e20 286d 6f75 6e74 5f69 6e66  ot in (mount_inf
│ │ │ -001a7780: 6f2e 6f70 7469 6f6e 7320 7c20 6465 6661  o.options | defa
│ │ │ -001a7790: 756c 7428 2727 2929 0a20 2074 6167 733a  ult('')).  tags:
│ │ │ -001a77a0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001a77b0: 2d41 432d 360a 2020 2d20 4e49 5354 2d38  -AC-6.  - NIST-8
│ │ │ -001a77c0: 3030 2d35 332d 4143 2d36 2831 290a 2020  00-53-AC-6(1).  
│ │ │ -001a77d0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -001a77e0: 2d36 2861 290a 2020 2d20 4e49 5354 2d38  -6(a).  - NIST-8
│ │ │ -001a77f0: 3030 2d35 332d 434d 2d37 2861 290a 2020  00-53-CM-7(a).  
│ │ │ -001a7800: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -001a7810: 2d37 2862 290a 2020 2d20 4e49 5354 2d38  -7(b).  - NIST-8
│ │ │ -001a7820: 3030 2d35 332d 4d50 2d37 0a20 202d 2063  00-53-MP-7.  - c
│ │ │ -001a7830: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ -001a7840: 790a 2020 2d20 6869 6768 5f64 6973 7275  y.  - high_disru
│ │ │ -001a7850: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f  ption.  - low_co
│ │ │ -001a7860: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ -001a7870: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ -001a7880: 206d 6f75 6e74 5f6f 7074 696f 6e5f 746d   mount_option_tm
│ │ │ -001a7890: 705f 6e6f 7375 6964 0a20 202d 206e 6f5f  p_nosuid.  - no_
│ │ │ -001a78a0: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ -001a78b0: 206e 616d 653a 2027 4164 6420 6e6f 7375   name: 'Add nosu
│ │ │ -001a78c0: 6964 204f 7074 696f 6e20 746f 202f 746d  id Option to /tm
│ │ │ -001a78d0: 703a 2045 6e73 7572 6520 2f74 6d70 2069  p: Ensure /tmp i
│ │ │ -001a78e0: 7320 6d6f 756e 7465 6420 7769 7468 206e  s mounted with n
│ │ │ -001a78f0: 6f73 7569 6420 6f70 7469 6f6e 270a 2020  osuid option'.  
│ │ │ -001a7900: 616e 7369 626c 652e 706f 7369 782e 6d6f  ansible.posix.mo
│ │ │ -001a7910: 756e 743a 0a20 2020 2070 6174 683a 202f  unt:.    path: /
│ │ │ -001a7920: 746d 700a 2020 2020 7372 633a 2027 7b7b  tmp.    src: '{{
│ │ │ -001a7930: 206d 6f75 6e74 5f69 6e66 6f2e 736f 7572   mount_info.sour
│ │ │ -001a7940: 6365 207c 2064 6566 6175 6c74 2827 2727  ce | default('''
│ │ │ -001a7950: 2729 207d 7d27 0a20 2020 206f 7074 733a  ') }}'.    opts:
│ │ │ -001a7960: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f2e   '{{ mount_info.
│ │ │ -001a7970: 6f70 7469 6f6e 7320 7c20 6465 6661 756c  options | defaul
│ │ │ -001a7980: 7428 2727 2727 2920 7d7d 270a 2020 2020  t('''') }}'.    
│ │ │ -001a7990: 7374 6174 653a 206d 6f75 6e74 6564 0a20  state: mounted. 
│ │ │ -001a79a0: 2020 2066 7374 7970 653a 2027 7b7b 206d     fstype: '{{ m
│ │ │ -001a79b0: 6f75 6e74 5f69 6e66 6f2e 6673 7479 7065  ount_info.fstype
│ │ │ -001a79c0: 207c 2064 6566 6175 6c74 2827 2727 2729   | default('''')
│ │ │ -001a79d0: 207d 7d27 0a20 2072 6567 6973 7465 723a   }}'.  register:
│ │ │ -001a79e0: 206d 6f75 6e74 5f72 6573 756c 740a 2020   mount_result.  
│ │ │ -001a79f0: 6661 696c 6564 5f77 6865 6e3a 0a20 202d  failed_when:.  -
│ │ │ -001a7a00: 206d 6f75 6e74 5f72 6573 756c 7420 6973   mount_result is
│ │ │ -001a7a10: 2066 6169 6c65 640a 2020 2d20 2727 2774   failed.  - '''t
│ │ │ -001a7a20: 6172 6765 7420 6973 2062 7573 7927 2720  arget is busy'' 
│ │ │ -001a7a30: 6e6f 7420 696e 2028 6d6f 756e 745f 7265  not in (mount_re
│ │ │ -001a7a40: 7375 6c74 2e6d 7367 207c 2064 6566 6175  sult.msg | defau
│ │ │ -001a7a50: 6c74 2827 2727 2729 2927 0a20 202d 2027  lt(''''))'.  - '
│ │ │ -001a7a60: 2727 616c 7265 6164 7920 6d6f 756e 7465  ''already mounte
│ │ │ -001a7a70: 6427 2720 6e6f 7420 696e 2028 6d6f 756e  d'' not in (moun
│ │ │ -001a7a80: 745f 7265 7375 6c74 2e6d 7367 207c 2064  t_result.msg | d
│ │ │ -001a7a90: 6566 6175 6c74 2827 2727 2729 2927 0a20  efault(''''))'. 
│ │ │ -001a7aa0: 2077 6865 6e3a 0a20 202d 2028 206e 6f74   when:.  - ( not
│ │ │ -001a7ab0: 2028 2022 6b65 726e 656c 2220 696e 2061   ( "kernel" in a
│ │ │ -001a7ac0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001a7ad0: 6b61 6765 7320 616e 6420 2262 6f6f 7463  kages and "bootc
│ │ │ -001a7ae0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001a7af0: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ -001a7b00: 616e 6420 6e6f 7420 226f 7065 6e73 6869  and not "openshi
│ │ │ -001a7b10: 6674 2d6b 7562 656c 6574 2220 696e 2061  ft-kubelet" in a
│ │ │ -001a7b20: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001a7b30: 6b61 6765 7320 616e 6420 226f 7374 7265  kages and "ostre
│ │ │ -001a7b40: 6522 2069 6e20 616e 7369 626c 655f 7072  e" in ansible_pr
│ │ │ -001a7b50: 6f63 5f63 6d64 6c69 6e65 0a20 2020 2029  oc_cmdline.    )
│ │ │ -001a7b60: 2061 6e64 206e 6f74 2028 2061 6e73 6962   and not ( ansib
│ │ │ -001a7b70: 6c65 5f76 6972 7475 616c 697a 6174 696f  le_virtualizatio
│ │ │ -001a7b80: 6e5f 7479 7065 2069 6e20 5b22 646f 636b  n_type in ["dock
│ │ │ -001a7b90: 6572 222c 2022 6c78 6322 2c20 226f 7065  er", "lxc", "ope
│ │ │ -001a7ba0: 6e76 7a22 2c20 2270 6f64 6d61 6e22 2c0a  nvz", "podman",.
│ │ │ -001a7bb0: 2020 2020 2263 6f6e 7461 696e 6572 225d      "container"]
│ │ │ -001a7bc0: 2029 2029 0a20 202d 2027 222f 746d 7022   ) ).  - '"/tmp"
│ │ │ -001a7bd0: 2069 6e20 616e 7369 626c 655f 6d6f 756e   in ansible_moun
│ │ │ -001a7be0: 7473 207c 206d 6170 2861 7474 7269 6275  ts | map(attribu
│ │ │ -001a7bf0: 7465 3d22 6d6f 756e 7422 2920 7c20 6c69  te="mount") | li
│ │ │ -001a7c00: 7374 270a 2020 2d20 6d6f 756e 745f 696e  st'.  - mount_in
│ │ │ -001a7c10: 666f 2069 7320 6465 6669 6e65 640a 2020  fo is defined.  
│ │ │ -001a7c20: 2d20 2864 6576 6963 655f 6e61 6d65 2e73  - (device_name.s
│ │ │ -001a7c30: 7464 6f75 7420 6973 2064 6566 696e 6564  tdout is defined
│ │ │ -001a7c40: 2061 6e64 2028 6465 7669 6365 5f6e 616d   and (device_nam
│ │ │ -001a7c50: 652e 7374 646f 7574 207c 206c 656e 6774  e.stdout | lengt
│ │ │ -001a7c60: 6820 2667 743b 2030 2929 206f 7220 2822  h > 0)) or ("
│ │ │ -001a7c70: 2d2d 6673 7461 6222 0a20 2020 207c 206c  --fstab".    | l
│ │ │ -001a7c80: 656e 6774 6820 3d3d 2030 290a 2020 7461  ength == 0).  ta
│ │ │ -001a7c90: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030  gs:.  - NIST-800
│ │ │ -001a7ca0: 2d35 332d 4143 2d36 0a20 202d 204e 4953  -53-AC-6.  - NIS
│ │ │ -001a7cb0: 542d 3830 302d 3533 2d41 432d 3628 3129  T-800-53-AC-6(1)
│ │ │ -001a7cc0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001a7cd0: 2d43 4d2d 3628 6129 0a20 202d 204e 4953  -CM-6(a).  - NIS
│ │ │ -001a7ce0: 542d 3830 302d 3533 2d43 4d2d 3728 6129  T-800-53-CM-7(a)
│ │ │ -001a7cf0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001a7d00: 2d43 4d2d 3728 6229 0a20 202d 204e 4953  -CM-7(b).  - NIS
│ │ │ -001a7d10: 542d 3830 302d 3533 2d4d 502d 370a 2020  T-800-53-MP-7.  
│ │ │ -001a7d20: 2d20 636f 6e66 6967 7572 655f 7374 7261  - configure_stra
│ │ │ -001a7d30: 7465 6779 0a20 202d 2068 6967 685f 6469  tegy.  - high_di
│ │ │ -001a7d40: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ -001a7d50: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ -001a7d60: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ -001a7d70: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e    - mount_option
│ │ │ -001a7d80: 5f74 6d70 5f6e 6f73 7569 640a 2020 2d20  _tmp_nosuid.  - 
│ │ │ -001a7d90: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ -001a7da0: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation She │ │ │ -001a7e60: 6c6c 2073 6372 6970 7420 e287 b23c 2f61 ll script ...
Compl │ │ │ -001a6710: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ -001a6720: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ -001a6740: 2f74 683e 3c74 643e 6869 6768 3c2f 7464 /th>high
Re │ │ │ -001a6760: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -001a6770: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:configure │ │ │ -001a67a0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
# Remediation i
│ │ │ -001a7f30: 7320 6170 706c 6963 6162 6c65 206f 6e6c  s applicable onl
│ │ │ -001a7f40: 7920 696e 2063 6572 7461 696e 2070 6c61  y in certain pla
│ │ │ -001a7f50: 7466 6f72 6d73 0a69 6620 2820 2120 2820  tforms.if ( ! ( 
│ │ │ -001a7f60: 7b20 7270 6d20 2d2d 7175 6965 7420 2d71  { rpm --quiet -q
│ │ │ -001a7f70: 206b 6572 6e65 6c20 3b7d 2026 616d 703b   kernel ;} &
│ │ │ -001a7f80: 2661 6d70 3b20 7b20 7270 6d20 2d2d 7175  & { rpm --qu
│ │ │ -001a7f90: 6965 7420 2d71 2062 6f6f 7463 203b 7d20  iet -q bootc ;} 
│ │ │ -001a7fa0: 2661 6d70 3b26 616d 703b 207b 2021 2072  && { ! r
│ │ │ -001a7fb0: 706d 202d 2d71 7569 6574 202d 7120 6f70  pm --quiet -q op
│ │ │ -001a7fc0: 656e 7368 6966 742d 6b75 6265 6c65 7420  enshift-kubelet 
│ │ │ -001a7fd0: 3b7d 2026 616d 703b 2661 6d70 3b20 285b  ;} && ([
│ │ │ -001a7fe0: 202d 6620 2f72 756e 2f6f 7374 7265 652d   -f /run/ostree-
│ │ │ -001a7ff0: 626f 6f74 6564 205d 207c 7c20 5b20 2d4c  booted ] || [ -L
│ │ │ -001a8000: 202f 6f73 7472 6565 205d 2920 2920 2661   /ostree ]) ) &a
│ │ │ -001a8010: 6d70 3b26 616d 703b 2021 2028 205b 202d  mp;& ! ( [ -
│ │ │ -001a8020: 6620 2f2e 646f 636b 6572 656e 7620 5d20  f /.dockerenv ] 
│ │ │ -001a8030: 7c7c 205b 202d 6620 2f72 756e 2f2e 636f  || [ -f /run/.co
│ │ │ -001a8040: 6e74 6169 6e65 7265 6e76 205d 2029 2029  ntainerenv ] ) )
│ │ │ -001a8050: 2026 616d 703b 2661 6d70 3b20 7b20 2820   && { ( 
│ │ │ -001a8060: 6669 6e64 6d6e 7420 2d2d 6b65 726e 656c  findmnt --kernel
│ │ │ -001a8070: 2022 2f74 6d70 2220 2667 743b 202f 6465   "/tmp" > /de
│ │ │ -001a8080: 762f 6e75 6c6c 207c 7c20 6669 6e64 6d6e  v/null || findmn
│ │ │ -001a8090: 7420 2d2d 6673 7461 6220 222f 746d 7022  t --fstab "/tmp"
│ │ │ -001a80a0: 2026 6774 3b20 2f64 6576 2f6e 756c 6c20   > /dev/null 
│ │ │ -001a80b0: 293b 207d 3b20 7468 656e 0a0a 6675 6e63  ); }; then..func
│ │ │ -001a80c0: 7469 6f6e 2070 6572 666f 726d 5f72 656d  tion perform_rem
│ │ │ -001a80d0: 6564 6961 7469 6f6e 207b 0a0a 2020 2020  ediation {..    
│ │ │ -001a80e0: 0a20 2020 2020 2020 2023 2074 6865 206d  .        # the m
│ │ │ -001a80f0: 6f75 6e74 2070 6f69 6e74 202f 746d 7020  ount point /tmp 
│ │ │ -001a8100: 6861 7320 746f 2062 6520 6465 6669 6e65  has to be define
│ │ │ -001a8110: 6420 696e 202f 6574 632f 6673 7461 620a  d in /etc/fstab.
│ │ │ -001a8120: 2020 2020 2020 2020 2320 6265 666f 7265          # before
│ │ │ -001a8130: 2074 6869 7320 7265 6d65 6469 6174 696f   this remediatio
│ │ │ -001a8140: 6e20 6361 6e20 6265 2065 7865 6375 7465  n can be execute
│ │ │ -001a8150: 642e 2049 6e20 6361 7365 2069 7420 6973  d. In case it is
│ │ │ -001a8160: 206e 6f74 2064 6566 696e 6564 2c20 7468   not defined, th
│ │ │ -001a8170: 650a 2020 2020 2020 2020 2320 7265 6d65  e.        # reme
│ │ │ -001a8180: 6469 6174 696f 6e20 6162 6f72 7473 2061  diation aborts a
│ │ │ -001a8190: 6e64 206e 6f20 6368 616e 6765 7320 7265  nd no changes re
│ │ │ -001a81a0: 6761 7264 696e 6720 7468 6520 6d6f 756e  garding the moun
│ │ │ -001a81b0: 7420 706f 696e 7420 6172 6520 646f 6e65  t point are done
│ │ │ -001a81c0: 2e0a 2020 2020 2020 2020 6d6f 756e 745f  ..        mount_
│ │ │ -001a81d0: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ -001a81e0: 7870 3d22 2428 7072 696e 7466 2022 5e5b  xp="$(printf "^[
│ │ │ -001a81f0: 5b3a 7370 6163 653a 5d5d 2a5b 5e23 5d2e  [:space:]]*[^#].
│ │ │ -001a8200: 2a5b 5b3a 7370 6163 653a 5d5d 2573 5b5b  *[[:space:]]%s[[
│ │ │ -001a8210: 3a73 7061 6365 3a5d 5d22 2022 2f74 6d70  :space:]]" "/tmp
│ │ │ -001a8220: 2229 220a 0a20 2020 2067 7265 7020 2224  ")"..    grep "$
│ │ │ -001a8230: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ -001a8240: 685f 7265 6765 7870 2220 2d71 202f 6574  h_regexp" -q /et
│ │ │ -001a8250: 632f 6673 7461 6220 5c0a 2020 2020 2020  c/fstab \.      
│ │ │ -001a8260: 2020 7c7c 207b 2065 6368 6f20 2254 6865    || { echo "The
│ │ │ -001a8270: 206d 6f75 6e74 2070 6f69 6e74 2027 2f74   mount point '/t
│ │ │ -001a8280: 6d70 2720 6973 206e 6f74 2065 7665 6e20  mp' is not even 
│ │ │ -001a8290: 696e 202f 6574 632f 6673 7461 622c 2073  in /etc/fstab, s
│ │ │ -001a82a0: 6f20 7765 2063 616e 2774 2073 6574 2075  o we can't set u
│ │ │ -001a82b0: 7020 6d6f 756e 7420 6f70 7469 6f6e 7322  p mount options"
│ │ │ -001a82c0: 2026 6774 3b26 616d 703b 323b 0a20 2020   >&2;.   
│ │ │ -001a82d0: 2020 2020 2020 2020 2020 2020 2065 6368               ech
│ │ │ -001a82e0: 6f20 224e 6f74 2072 656d 6564 6961 7469  o "Not remediati
│ │ │ -001a82f0: 6e67 2c20 6265 6361 7573 6520 7468 6572  ng, because ther
│ │ │ -001a8300: 6520 6973 206e 6f20 7265 636f 7264 206f  e is no record o
│ │ │ -001a8310: 6620 2f74 6d70 2069 6e20 2f65 7463 2f66  f /tmp in /etc/f
│ │ │ -001a8320: 7374 6162 2220 2667 743b 2661 6d70 3b32  stab" >&2
│ │ │ -001a8330: 3b20 7265 7475 726e 2031 3b20 7d0a 2020  ; return 1; }.  
│ │ │ -001a8340: 2020 0a0a 0a20 2020 206d 6f75 6e74 5f70    ...    mount_p
│ │ │ -001a8350: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ -001a8360: 703d 2224 2870 7269 6e74 6620 225e 5b5b  p="$(printf "^[[
│ │ │ -001a8370: 3a73 7061 6365 3a5d 5d2a 5b5e 235d 2e2a  :space:]]*[^#].*
│ │ │ -001a8380: 5b5b 3a73 7061 6365 3a5d 5d25 735b 5b3a  [[:space:]]%s[[:
│ │ │ -001a8390: 7370 6163 653a 5d5d 2220 2f74 6d70 2922  space:]]" /tmp)"
│ │ │ -001a83a0: 0a0a 2020 2020 2320 4966 2074 6865 206d  ..    # If the m
│ │ │ -001a83b0: 6f75 6e74 2070 6f69 6e74 2069 7320 6e6f  ount point is no
│ │ │ -001a83c0: 7420 696e 202f 6574 632f 6673 7461 622c  t in /etc/fstab,
│ │ │ -001a83d0: 2067 6574 2070 7265 7669 6f75 7320 6d6f   get previous mo
│ │ │ -001a83e0: 756e 7420 6f70 7469 6f6e 7320 6672 6f6d  unt options from
│ │ │ -001a83f0: 202f 6574 632f 6d74 6162 0a20 2020 2069   /etc/mtab.    i
│ │ │ -001a8400: 6620 2120 6772 6570 202d 7120 2224 6d6f  f ! grep -q "$mo
│ │ │ -001a8410: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ -001a8420: 7265 6765 7870 2220 2f65 7463 2f66 7374  regexp" /etc/fst
│ │ │ -001a8430: 6162 3b20 7468 656e 0a20 2020 2020 2020  ab; then.       
│ │ │ -001a8440: 2023 2072 756e 7469 6d65 206f 7074 7320   # runtime opts 
│ │ │ -001a8450: 7769 7468 6f75 7420 736f 6d65 2061 7574  without some aut
│ │ │ -001a8460: 6f6d 6174 6963 206b 6572 6e65 6c2f 7573  omatic kernel/us
│ │ │ -001a8470: 6572 7370 6163 652d 6164 6465 6420 6465  erspace-added de
│ │ │ -001a8480: 6661 756c 7473 0a20 2020 2020 2020 2070  faults.        p
│ │ │ -001a8490: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ -001a84a0: 7473 3d24 2867 7265 7020 2224 6d6f 756e  ts=$(grep "$moun
│ │ │ -001a84b0: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ -001a84c0: 6765 7870 2220 2f65 7463 2f6d 7461 6220  gexp" /etc/mtab 
│ │ │ -001a84d0: 7c20 6865 6164 202d 3120 7c20 2061 776b  | head -1 |  awk
│ │ │ -001a84e0: 2027 7b70 7269 6e74 2024 347d 2720 5c0a   '{print $4}' \.
│ │ │ -001a84f0: 2020 2020 2020 2020 2020 2020 2020 2020                  
│ │ │ -001a8500: 2020 2020 7c20 7365 6420 2d45 2022 732f      | sed -E "s/
│ │ │ -001a8510: 2872 777c 6465 6661 756c 7473 7c73 6563  (rw|defaults|sec
│ │ │ -001a8520: 6c61 6265 6c7c 6e6f 7375 6964 2928 2c7c  label|nosuid)(,|
│ │ │ -001a8530: 2429 2f2f 673b 732f 2c24 2f2f 2229 0a20  $)//g;s/,$//"). 
│ │ │ -001a8540: 2020 2020 2020 205b 2022 2470 7265 7669         [ "$previ
│ │ │ -001a8550: 6f75 735f 6d6f 756e 745f 6f70 7473 2220  ous_mount_opts" 
│ │ │ -001a8560: 5d20 2661 6d70 3b26 616d 703b 2070 7265  ] && pre
│ │ │ -001a8570: 7669 6f75 735f 6d6f 756e 745f 6f70 7473  vious_mount_opts
│ │ │ -001a8580: 2b3d 222c 220a 2020 2020 2020 2020 2320  +=",".        # 
│ │ │ -001a8590: 496e 2069 736f 3936 3630 2066 696c 6573  In iso9660 files
│ │ │ -001a85a0: 7973 7465 6d73 206d 7461 6220 636f 756c  ystems mtab coul
│ │ │ -001a85b0: 6420 6465 7363 7269 6265 2061 2022 626c  d describe a "bl
│ │ │ -001a85c0: 6f63 6b73 697a 6522 2076 616c 7565 2c20  ocksize" value, 
│ │ │ -001a85d0: 7468 6973 2073 686f 756c 6420 6265 2072  this should be r
│ │ │ -001a85e0: 6566 6c65 6374 6564 2069 6e0a 2020 2020  eflected in.    
│ │ │ -001a85f0: 2020 2020 2320 6673 7461 6220 6173 2022      # fstab as "
│ │ │ -001a8600: 626c 6f63 6b22 2e20 2054 6865 206e 6578  block".  The nex
│ │ │ -001a8610: 7420 7661 7269 6162 6c65 2069 7320 746f  t variable is to
│ │ │ -001a8620: 2073 6174 6973 6679 2073 6865 6c6c 6368   satisfy shellch
│ │ │ -001a8630: 6563 6b20 5343 3230 3530 2e0a 2020 2020  eck SC2050..    
│ │ │ -001a8640: 2020 2020 6673 5f74 7970 653d 2222 0a20      fs_type="". 
│ │ │ -001a8650: 2020 2020 2020 2069 6620 5b20 2022 2466         if [  "$f
│ │ │ -001a8660: 735f 7479 7065 2220 3d3d 2022 6973 6f39  s_type" == "iso9
│ │ │ -001a8670: 3636 3022 205d 203b 2074 6865 6e0a 2020  660" ] ; then.  
│ │ │ -001a8680: 2020 2020 2020 2020 2020 7072 6576 696f            previo
│ │ │ -001a8690: 7573 5f6d 6f75 6e74 5f6f 7074 733d 2428  us_mount_opts=$(
│ │ │ -001a86a0: 7365 6420 2773 2f62 6c6f 636b 7369 7a65  sed 's/blocksize
│ │ │ -001a86b0: 3d2f 626c 6f63 6b3d 2f27 2026 6c74 3b26  =/block=/' <&
│ │ │ -001a86c0: 6c74 3b26 6c74 3b20 2224 7072 6576 696f  lt;< "$previo
│ │ │ -001a86d0: 7573 5f6d 6f75 6e74 5f6f 7074 7322 290a  us_mount_opts").
│ │ │ -001a86e0: 2020 2020 2020 2020 6669 0a20 2020 2020          fi.     
│ │ │ -001a86f0: 2020 2065 6368 6f20 2220 2f74 6d70 2020     echo " /tmp  
│ │ │ -001a8700: 6465 6661 756c 7473 2c24 7b70 7265 7669  defaults,${previ
│ │ │ -001a8710: 6f75 735f 6d6f 756e 745f 6f70 7473 7d6e  ous_mount_opts}n
│ │ │ -001a8720: 6f73 7569 6420 3020 3022 2026 6774 3b26  osuid 0 0" >&
│ │ │ -001a8730: 6774 3b20 2f65 7463 2f66 7374 6162 0a20  gt; /etc/fstab. 
│ │ │ -001a8740: 2020 2023 2049 6620 7468 6520 6d6f 756e     # If the moun
│ │ │ -001a8750: 745f 6f70 7420 6f70 7469 6f6e 2069 7320  t_opt option is 
│ │ │ -001a8760: 6e6f 7420 616c 7265 6164 7920 696e 2074  not already in t
│ │ │ -001a8770: 6865 206d 6f75 6e74 2070 6f69 6e74 2773  he mount point's
│ │ │ -001a8780: 202f 6574 632f 6673 7461 6220 656e 7472   /etc/fstab entr
│ │ │ -001a8790: 792c 2061 6464 2069 740a 2020 2020 656c  y, add it.    el
│ │ │ -001a87a0: 6966 2021 2067 7265 7020 2224 6d6f 756e  if ! grep "$moun
│ │ │ -001a87b0: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ -001a87c0: 6765 7870 2220 2f65 7463 2f66 7374 6162  gexp" /etc/fstab
│ │ │ -001a87d0: 207c 2067 7265 7020 2d71 2022 6e6f 7375   | grep -q "nosu
│ │ │ -001a87e0: 6964 223b 2074 6865 6e0a 2020 2020 2020  id"; then.      
│ │ │ -001a87f0: 2020 7072 6576 696f 7573 5f6d 6f75 6e74    previous_mount
│ │ │ -001a8800: 5f6f 7074 733d 2428 6772 6570 2022 246d  _opts=$(grep "$m
│ │ │ -001a8810: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ -001a8820: 5f72 6567 6578 7022 202f 6574 632f 6673  _regexp" /etc/fs
│ │ │ -001a8830: 7461 6220 7c20 6177 6b20 277b 7072 696e  tab | awk '{prin
│ │ │ -001a8840: 7420 2434 7d27 290a 2020 2020 2020 2020  t $4}').        
│ │ │ -001a8850: 7365 6420 2d69 2022 737c 5c28 247b 6d6f  sed -i "s|\(${mo
│ │ │ -001a8860: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ -001a8870: 7265 6765 7870 7d2e 2a24 7b70 7265 7669  regexp}.*${previ
│ │ │ -001a8880: 6f75 735f 6d6f 756e 745f 6f70 7473 7d5c  ous_mount_opts}\
│ │ │ -001a8890: 297c 5c31 2c6e 6f73 7569 647c 2220 2f65  )|\1,nosuid|" /e
│ │ │ -001a88a0: 7463 2f66 7374 6162 0a20 2020 2066 690a  tc/fstab.    fi.
│ │ │ -001a88b0: 0a0a 2020 2020 6966 206d 6b64 6972 202d  ..    if mkdir -
│ │ │ -001a88c0: 7020 222f 746d 7022 3b20 7468 656e 0a20  p "/tmp"; then. 
│ │ │ -001a88d0: 2020 2020 2020 2069 6620 6d6f 756e 7470         if mountp
│ │ │ -001a88e0: 6f69 6e74 202d 7120 222f 746d 7022 3b20  oint -q "/tmp"; 
│ │ │ -001a88f0: 7468 656e 0a20 2020 2020 2020 2020 2020  then.           
│ │ │ -001a8900: 206d 6f75 6e74 202d 6f20 7265 6d6f 756e   mount -o remoun
│ │ │ -001a8910: 7420 2d2d 7461 7267 6574 2022 2f74 6d70  t --target "/tmp
│ │ │ -001a8920: 220a 2020 2020 2020 2020 6669 0a20 2020  ".        fi.   
│ │ │ -001a8930: 2066 690a 7d0a 0a70 6572 666f 726d 5f72   fi.}..perform_r
│ │ │ -001a8940: 656d 6564 6961 7469 6f6e 0a0a 656c 7365  emediation..else
│ │ │ -001a8950: 0a20 2020 2026 6774 3b26 616d 703b 3220  .    >&2 
│ │ │ -001a8960: 6563 686f 2027 5265 6d65 6469 6174 696f  echo 'Remediatio
│ │ │ -001a8970: 6e20 6973 206e 6f74 2061 7070 6c69 6361  n is not applica
│ │ │ -001a8980: 626c 652c 206e 6f74 6869 6e67 2077 6173  ble, nothing was
│ │ │ -001a8990: 2064 6f6e 6527 0a66 690a 3c2f 636f 6465   done'.fi.
< │ │ │ +001a64e0: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>
│ │ │ +001a6520: 3c74 643e 6869 6768 3c2f 7464 3e3c 2f74 < │ │ │ +001a6570: 7464 3e63 6f6e 6669 6775 7265 3c2f 7464 td>configure
R │ │ │ -001a7ef0: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -001a7f00: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c2f alse
Complexit │ │ │ +001a64f0: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low
│ │ │ +001a6510: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption:high
Reboot │ │ │ +001a6540: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +001a6550: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Strategy:

- name: │ │ │ +001a65a0: 2047 6174 6865 7220 7468 6520 7061 636b Gather the pack │ │ │ +001a65b0: 6167 6520 6661 6374 730a 2020 7061 636b age facts. pack │ │ │ +001a65c0: 6167 655f 6661 6374 733a 0a20 2020 206d age_facts:. m │ │ │ +001a65d0: 616e 6167 6572 3a20 6175 746f 0a20 2074 anager: auto. t │ │ │ +001a65e0: 6167 733a 0a20 202d 204e 4953 542d 3830 ags:. - NIST-80 │ │ │ +001a65f0: 302d 3533 2d41 432d 360a 2020 2d20 4e49 0-53-AC-6. - NI │ │ │ +001a6600: 5354 2d38 3030 2d35 332d 4143 2d36 2831 ST-800-53-AC-6(1 │ │ │ +001a6610: 290a 2020 2d20 4e49 5354 2d38 3030 2d35 ). - NIST-800-5 │ │ │ +001a6620: 332d 434d 2d36 2861 290a 2020 2d20 4e49 3-CM-6(a). - NI │ │ │ +001a6630: 5354 2d38 3030 2d35 332d 434d 2d37 2861 ST-800-53-CM-7(a │ │ │ +001a6640: 290a 2020 2d20 4e49 5354 2d38 3030 2d35 ). - NIST-800-5 │ │ │ +001a6650: 332d 434d 2d37 2862 290a 2020 2d20 4e49 3-CM-7(b). - NI │ │ │ +001a6660: 5354 2d38 3030 2d35 332d 4d50 2d37 0a20 ST-800-53-MP-7. │ │ │ +001a6670: 202d 2063 6f6e 6669 6775 7265 5f73 7472 - configure_str │ │ │ +001a6680: 6174 6567 790a 2020 2d20 6869 6768 5f64 ategy. - high_d │ │ │ +001a6690: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f isruption. - lo │ │ │ +001a66a0: 775f 636f 6d70 6c65 7869 7479 0a20 202d w_complexity. - │ │ │ +001a66b0: 206d 6564 6975 6d5f 7365 7665 7269 7479 medium_severity │ │ │ +001a66c0: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f . - mount_optio │ │ │ +001a66d0: 6e5f 746d 705f 6e6f 7375 6964 0a20 202d n_tmp_nosuid. - │ │ │ +001a66e0: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465 no_reboot_neede │ │ │ +001a66f0: 640a 0a2d 206e 616d 653a 2027 4164 6420 d..- name: 'Add │ │ │ +001a6700: 6e6f 7375 6964 204f 7074 696f 6e20 746f nosuid Option to │ │ │ +001a6710: 202f 746d 703a 2043 6865 636b 2069 6e66 /tmp: Check inf │ │ │ +001a6720: 6f72 6d61 7469 6f6e 2061 7373 6f63 6961 ormation associa │ │ │ +001a6730: 7465 6420 746f 206d 6f75 6e74 706f 696e ted to mountpoin │ │ │ +001a6740: 7427 0a20 2061 6e73 6962 6c65 2e62 7569 t'. ansible.bui │ │ │ +001a6750: 6c74 696e 2e63 6f6d 6d61 6e64 3a20 6669 ltin.command: fi │ │ │ +001a6760: 6e64 6d6e 7420 2d2d 6673 7461 6220 272f ndmnt --fstab '/ │ │ │ +001a6770: 746d 7027 0a20 2072 6567 6973 7465 723a tmp'. register: │ │ │ +001a6780: 2064 6576 6963 655f 6e61 6d65 0a20 2066 device_name. f │ │ │ +001a6790: 6169 6c65 645f 7768 656e 3a20 6465 7669 ailed_when: devi │ │ │ +001a67a0: 6365 5f6e 616d 652e 7263 2026 6774 3b20 ce_name.rc > │ │ │ +001a67b0: 310a 2020 6368 616e 6765 645f 7768 656e 1. changed_when │ │ │ +001a67c0: 3a20 6661 6c73 650a 2020 6368 6563 6b5f : false. check_ │ │ │ +001a67d0: 6d6f 6465 3a20 6661 6c73 650a 2020 7768 mode: false. wh │ │ │ +001a67e0: 656e 3a0a 2020 2d20 2820 6e6f 7420 2820 en:. - ( not ( │ │ │ +001a67f0: 226b 6572 6e65 6c22 2069 6e20 616e 7369 "kernel" in ansi │ │ │ +001a6800: 626c 655f 6661 6374 732e 7061 636b 6167 ble_facts.packag │ │ │ +001a6810: 6573 2061 6e64 2022 626f 6f74 6322 2069 es and "bootc" i │ │ │ +001a6820: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ +001a6830: 7061 636b 6167 6573 0a20 2020 2061 6e64 packages. and │ │ │ +001a6840: 206e 6f74 2022 6f70 656e 7368 6966 742d not "openshift- │ │ │ +001a6850: 6b75 6265 6c65 7422 2069 6e20 616e 7369 kubelet" in ansi │ │ │ +001a6860: 626c 655f 6661 6374 732e 7061 636b 6167 ble_facts.packag │ │ │ +001a6870: 6573 2061 6e64 2022 6f73 7472 6565 2220 es and "ostree" │ │ │ +001a6880: 696e 2061 6e73 6962 6c65 5f70 726f 635f in ansible_proc_ │ │ │ +001a6890: 636d 646c 696e 650a 2020 2020 2920 616e cmdline. ) an │ │ │ +001a68a0: 6420 6e6f 7420 2820 616e 7369 626c 655f d not ( ansible_ │ │ │ +001a68b0: 7669 7274 7561 6c69 7a61 7469 6f6e 5f74 virtualization_t │ │ │ +001a68c0: 7970 6520 696e 205b 2264 6f63 6b65 7222 ype in ["docker" │ │ │ +001a68d0: 2c20 226c 7863 222c 2022 6f70 656e 767a , "lxc", "openvz │ │ │ +001a68e0: 222c 2022 706f 646d 616e 222c 0a20 2020 ", "podman",. │ │ │ +001a68f0: 2022 636f 6e74 6169 6e65 7222 5d20 2920 "container"] ) │ │ │ +001a6900: 290a 2020 2d20 2722 2f74 6d70 2220 696e ). - '"/tmp" in │ │ │ +001a6910: 2061 6e73 6962 6c65 5f6d 6f75 6e74 7320 ansible_mounts │ │ │ +001a6920: 7c20 6d61 7028 6174 7472 6962 7574 653d | map(attribute= │ │ │ +001a6930: 226d 6f75 6e74 2229 207c 206c 6973 7427 "mount") | list' │ │ │ +001a6940: 0a20 2074 6167 733a 0a20 202d 204e 4953 . tags:. - NIS │ │ │ +001a6950: 542d 3830 302d 3533 2d41 432d 360a 2020 T-800-53-AC-6. │ │ │ +001a6960: 2d20 4e49 5354 2d38 3030 2d35 332d 4143 - NIST-800-53-AC │ │ │ +001a6970: 2d36 2831 290a 2020 2d20 4e49 5354 2d38 -6(1). - NIST-8 │ │ │ +001a6980: 3030 2d35 332d 434d 2d36 2861 290a 2020 00-53-CM-6(a). │ │ │ +001a6990: 2d20 4e49 5354 2d38 3030 2d35 332d 434d - NIST-800-53-CM │ │ │ +001a69a0: 2d37 2861 290a 2020 2d20 4e49 5354 2d38 -7(a). - NIST-8 │ │ │ +001a69b0: 3030 2d35 332d 434d 2d37 2862 290a 2020 00-53-CM-7(b). │ │ │ +001a69c0: 2d20 4e49 5354 2d38 3030 2d35 332d 4d50 - NIST-800-53-MP │ │ │ +001a69d0: 2d37 0a20 202d 2063 6f6e 6669 6775 7265 -7. - configure │ │ │ +001a69e0: 5f73 7472 6174 6567 790a 2020 2d20 6869 _strategy. - hi │ │ │ +001a69f0: 6768 5f64 6973 7275 7074 696f 6e0a 2020 gh_disruption. │ │ │ +001a6a00: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479 - low_complexity │ │ │ +001a6a10: 0a20 202d 206d 6564 6975 6d5f 7365 7665 . - medium_seve │ │ │ +001a6a20: 7269 7479 0a20 202d 206d 6f75 6e74 5f6f rity. - mount_o │ │ │ +001a6a30: 7074 696f 6e5f 746d 705f 6e6f 7375 6964 ption_tmp_nosuid │ │ │ +001a6a40: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e . - no_reboot_n │ │ │ +001a6a50: 6565 6465 640a 0a2d 206e 616d 653a 2027 eeded..- name: ' │ │ │ +001a6a60: 4164 6420 6e6f 7375 6964 204f 7074 696f Add nosuid Optio │ │ │ +001a6a70: 6e20 746f 202f 746d 703a 2043 7265 6174 n to /tmp: Creat │ │ │ +001a6a80: 6520 6d6f 756e 745f 696e 666f 2064 6963 e mount_info dic │ │ │ +001a6a90: 7469 6f6e 6172 7920 7661 7269 6162 6c65 tionary variable │ │ │ +001a6aa0: 270a 2020 7365 745f 6661 6374 3a0a 2020 '. set_fact:. │ │ │ +001a6ab0: 2020 6d6f 756e 745f 696e 666f 3a20 277b mount_info: '{ │ │ │ +001a6ac0: 7b20 6d6f 756e 745f 696e 666f 7c64 6566 { mount_info|def │ │ │ +001a6ad0: 6175 6c74 287b 7d29 7c63 6f6d 6269 6e65 ault({})|combine │ │ │ +001a6ae0: 287b 6974 656d 2e30 3a20 6974 656d 2e31 ({item.0: item.1 │ │ │ +001a6af0: 7d29 207d 7d27 0a20 2077 6974 685f 746f }) }}'. with_to │ │ │ +001a6b00: 6765 7468 6572 3a0a 2020 2d20 277b 7b20 gether:. - '{{ │ │ │ +001a6b10: 6465 7669 6365 5f6e 616d 652e 7374 646f device_name.stdo │ │ │ +001a6b20: 7574 5f6c 696e 6573 5b30 5d2e 7370 6c69 ut_lines[0].spli │ │ │ +001a6b30: 7428 2920 7c20 6d61 7028 2727 6c6f 7765 t() | map(''lowe │ │ │ +001a6b40: 7227 2729 207c 206c 6973 7420 7d7d 270a r'') | list }}'. │ │ │ +001a6b50: 2020 2d20 277b 7b20 6465 7669 6365 5f6e - '{{ device_n │ │ │ +001a6b60: 616d 652e 7374 646f 7574 5f6c 696e 6573 ame.stdout_lines │ │ │ +001a6b70: 5b31 5d2e 7370 6c69 7428 2920 7c20 6c69 [1].split() | li │ │ │ +001a6b80: 7374 207d 7d27 0a20 2077 6865 6e3a 0a20 st }}'. when:. │ │ │ +001a6b90: 202d 2028 206e 6f74 2028 2022 6b65 726e - ( not ( "kern │ │ │ +001a6ba0: 656c 2220 696e 2061 6e73 6962 6c65 5f66 el" in ansible_f │ │ │ +001a6bb0: 6163 7473 2e70 6163 6b61 6765 7320 616e acts.packages an │ │ │ +001a6bc0: 6420 2262 6f6f 7463 2220 696e 2061 6e73 d "bootc" in ans │ │ │ +001a6bd0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61 ible_facts.packa │ │ │ +001a6be0: 6765 730a 2020 2020 616e 6420 6e6f 7420 ges. and not │ │ │ +001a6bf0: 226f 7065 6e73 6869 6674 2d6b 7562 656c "openshift-kubel │ │ │ +001a6c00: 6574 2220 696e 2061 6e73 6962 6c65 5f66 et" in ansible_f │ │ │ +001a6c10: 6163 7473 2e70 6163 6b61 6765 7320 616e acts.packages an │ │ │ +001a6c20: 6420 226f 7374 7265 6522 2069 6e20 616e d "ostree" in an │ │ │ +001a6c30: 7369 626c 655f 7072 6f63 5f63 6d64 6c69 sible_proc_cmdli │ │ │ +001a6c40: 6e65 0a20 2020 2029 2061 6e64 206e 6f74 ne. ) and not │ │ │ +001a6c50: 2028 2061 6e73 6962 6c65 5f76 6972 7475 ( ansible_virtu │ │ │ +001a6c60: 616c 697a 6174 696f 6e5f 7479 7065 2069 alization_type i │ │ │ +001a6c70: 6e20 5b22 646f 636b 6572 222c 2022 6c78 n ["docker", "lx │ │ │ +001a6c80: 6322 2c20 226f 7065 6e76 7a22 2c20 2270 c", "openvz", "p │ │ │ +001a6c90: 6f64 6d61 6e22 2c0a 2020 2020 2263 6f6e odman",. "con │ │ │ +001a6ca0: 7461 696e 6572 225d 2029 2029 0a20 202d tainer"] ) ). - │ │ │ +001a6cb0: 2027 222f 746d 7022 2069 6e20 616e 7369 '"/tmp" in ansi │ │ │ +001a6cc0: 626c 655f 6d6f 756e 7473 207c 206d 6170 ble_mounts | map │ │ │ +001a6cd0: 2861 7474 7269 6275 7465 3d22 6d6f 756e (attribute="moun │ │ │ +001a6ce0: 7422 2920 7c20 6c69 7374 270a 2020 2d20 t") | list'. - │ │ │ +001a6cf0: 6465 7669 6365 5f6e 616d 652e 7374 646f device_name.stdo │ │ │ +001a6d00: 7574 2069 7320 6465 6669 6e65 6420 616e ut is defined an │ │ │ +001a6d10: 6420 6465 7669 6365 5f6e 616d 652e 7374 d device_name.st │ │ │ +001a6d20: 646f 7574 5f6c 696e 6573 2069 7320 6465 dout_lines is de │ │ │ +001a6d30: 6669 6e65 640a 2020 2d20 2864 6576 6963 fined. - (devic │ │ │ +001a6d40: 655f 6e61 6d65 2e73 7464 6f75 7420 7c20 e_name.stdout | │ │ │ +001a6d50: 6c65 6e67 7468 2026 6774 3b20 3029 0a20 length > 0). │ │ │ +001a6d60: 2074 6167 733a 0a20 202d 204e 4953 542d tags:. - NIST- │ │ │ +001a6d70: 3830 302d 3533 2d41 432d 360a 2020 2d20 800-53-AC-6. - │ │ │ +001a6d80: 4e49 5354 2d38 3030 2d35 332d 4143 2d36 NIST-800-53-AC-6 │ │ │ +001a6d90: 2831 290a 2020 2d20 4e49 5354 2d38 3030 (1). - NIST-800 │ │ │ +001a6da0: 2d35 332d 434d 2d36 2861 290a 2020 2d20 -53-CM-6(a). - │ │ │ +001a6db0: 4e49 5354 2d38 3030 2d35 332d 434d 2d37 NIST-800-53-CM-7 │ │ │ +001a6dc0: 2861 290a 2020 2d20 4e49 5354 2d38 3030 (a). - NIST-800 │ │ │ +001a6dd0: 2d35 332d 434d 2d37 2862 290a 2020 2d20 -53-CM-7(b). - │ │ │ +001a6de0: 4e49 5354 2d38 3030 2d35 332d 4d50 2d37 NIST-800-53-MP-7 │ │ │ +001a6df0: 0a20 202d 2063 6f6e 6669 6775 7265 5f73 . - configure_s │ │ │ +001a6e00: 7472 6174 6567 790a 2020 2d20 6869 6768 trategy. - high │ │ │ +001a6e10: 5f64 6973 7275 7074 696f 6e0a 2020 2d20 _disruption. - │ │ │ +001a6e20: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20 low_complexity. │ │ │ +001a6e30: 202d 206d 6564 6975 6d5f 7365 7665 7269 - medium_severi │ │ │ +001a6e40: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074 ty. - mount_opt │ │ │ +001a6e50: 696f 6e5f 746d 705f 6e6f 7375 6964 0a20 ion_tmp_nosuid. │ │ │ +001a6e60: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565 - no_reboot_nee │ │ │ +001a6e70: 6465 640a 0a2d 206e 616d 653a 2027 4164 ded..- name: 'Ad │ │ │ +001a6e80: 6420 6e6f 7375 6964 204f 7074 696f 6e20 d nosuid Option │ │ │ +001a6e90: 746f 202f 746d 703a 2049 6620 2f74 6d70 to /tmp: If /tmp │ │ │ +001a6ea0: 206e 6f74 206d 6f75 6e74 6564 2c20 6372 not mounted, cr │ │ │ +001a6eb0: 6166 7420 6d6f 756e 745f 696e 666f 206d aft mount_info m │ │ │ +001a6ec0: 616e 7561 6c6c 7927 0a20 2073 6574 5f66 anually'. set_f │ │ │ +001a6ed0: 6163 743a 0a20 2020 206d 6f75 6e74 5f69 act:. mount_i │ │ │ +001a6ee0: 6e66 6f3a 2027 7b7b 206d 6f75 6e74 5f69 nfo: '{{ mount_i │ │ │ +001a6ef0: 6e66 6f7c 6465 6661 756c 7428 7b7d 297c nfo|default({})| │ │ │ +001a6f00: 636f 6d62 696e 6528 7b69 7465 6d2e 303a combine({item.0: │ │ │ +001a6f10: 2069 7465 6d2e 317d 2920 7d7d 270a 2020 item.1}) }}'. │ │ │ +001a6f20: 7769 7468 5f74 6f67 6574 6865 723a 0a20 with_together:. │ │ │ +001a6f30: 202d 202d 2074 6172 6765 740a 2020 2020 - - target. │ │ │ +001a6f40: 2d20 736f 7572 6365 0a20 2020 202d 2066 - source. - f │ │ │ +001a6f50: 7374 7970 650a 2020 2020 2d20 6f70 7469 stype. - opti │ │ │ +001a6f60: 6f6e 730a 2020 2d20 2d20 2f74 6d70 0a20 ons. - - /tmp. │ │ │ +001a6f70: 2020 202d 2027 270a 2020 2020 2d20 2727 - ''. - '' │ │ │ +001a6f80: 0a20 2020 202d 2064 6566 6175 6c74 730a . - defaults. │ │ │ +001a6f90: 2020 7768 656e 3a0a 2020 2d20 2820 6e6f when:. - ( no │ │ │ +001a6fa0: 7420 2820 226b 6572 6e65 6c22 2069 6e20 t ( "kernel" in │ │ │ +001a6fb0: 616e 7369 626c 655f 6661 6374 732e 7061 ansible_facts.pa │ │ │ +001a6fc0: 636b 6167 6573 2061 6e64 2022 626f 6f74 ckages and "boot │ │ │ +001a6fd0: 6322 2069 6e20 616e 7369 626c 655f 6661 c" in ansible_fa │ │ │ +001a6fe0: 6374 732e 7061 636b 6167 6573 0a20 2020 cts.packages. │ │ │ +001a6ff0: 2061 6e64 206e 6f74 2022 6f70 656e 7368 and not "opensh │ │ │ +001a7000: 6966 742d 6b75 6265 6c65 7422 2069 6e20 ift-kubelet" in │ │ │ +001a7010: 616e 7369 626c 655f 6661 6374 732e 7061 ansible_facts.pa │ │ │ +001a7020: 636b 6167 6573 2061 6e64 2022 6f73 7472 ckages and "ostr │ │ │ +001a7030: 6565 2220 696e 2061 6e73 6962 6c65 5f70 ee" in ansible_p │ │ │ +001a7040: 726f 635f 636d 646c 696e 650a 2020 2020 roc_cmdline. │ │ │ +001a7050: 2920 616e 6420 6e6f 7420 2820 616e 7369 ) and not ( ansi │ │ │ +001a7060: 626c 655f 7669 7274 7561 6c69 7a61 7469 ble_virtualizati │ │ │ +001a7070: 6f6e 5f74 7970 6520 696e 205b 2264 6f63 on_type in ["doc │ │ │ +001a7080: 6b65 7222 2c20 226c 7863 222c 2022 6f70 ker", "lxc", "op │ │ │ +001a7090: 656e 767a 222c 2022 706f 646d 616e 222c envz", "podman", │ │ │ +001a70a0: 0a20 2020 2022 636f 6e74 6169 6e65 7222 . "container" │ │ │ +001a70b0: 5d20 2920 290a 2020 2d20 2722 2f74 6d70 ] ) ). - '"/tmp │ │ │ +001a70c0: 2220 696e 2061 6e73 6962 6c65 5f6d 6f75 " in ansible_mou │ │ │ +001a70d0: 6e74 7320 7c20 6d61 7028 6174 7472 6962 nts | map(attrib │ │ │ +001a70e0: 7574 653d 226d 6f75 6e74 2229 207c 206c ute="mount") | l │ │ │ +001a70f0: 6973 7427 0a20 202d 2028 222d 2d66 7374 ist'. - ("--fst │ │ │ +001a7100: 6162 2220 7c20 6c65 6e67 7468 203d 3d20 ab" | length == │ │ │ +001a7110: 3029 0a20 202d 2064 6576 6963 655f 6e61 0). - device_na │ │ │ +001a7120: 6d65 2e73 7464 6f75 7420 6973 2064 6566 me.stdout is def │ │ │ +001a7130: 696e 6564 2061 6e64 2064 6576 6963 655f ined and device_ │ │ │ +001a7140: 6e61 6d65 2e73 7464 6f75 745f 6c69 6e65 name.stdout_line │ │ │ +001a7150: 7320 6973 2064 6566 696e 6564 0a20 202d s is defined. - │ │ │ +001a7160: 2028 6465 7669 6365 5f6e 616d 652e 7374 (device_name.st │ │ │ +001a7170: 646f 7574 207c 206c 656e 6774 6820 3d3d dout | length == │ │ │ +001a7180: 2030 290a 2020 7461 6773 3a0a 2020 2d20 0). tags:. - │ │ │ +001a7190: 4e49 5354 2d38 3030 2d35 332d 4143 2d36 NIST-800-53-AC-6 │ │ │ +001a71a0: 0a20 202d 204e 4953 542d 3830 302d 3533 . - NIST-800-53 │ │ │ +001a71b0: 2d41 432d 3628 3129 0a20 202d 204e 4953 -AC-6(1). - NIS │ │ │ +001a71c0: 542d 3830 302d 3533 2d43 4d2d 3628 6129 T-800-53-CM-6(a) │ │ │ +001a71d0: 0a20 202d 204e 4953 542d 3830 302d 3533 . - NIST-800-53 │ │ │ +001a71e0: 2d43 4d2d 3728 6129 0a20 202d 204e 4953 -CM-7(a). - NIS │ │ │ +001a71f0: 542d 3830 302d 3533 2d43 4d2d 3728 6229 T-800-53-CM-7(b) │ │ │ +001a7200: 0a20 202d 204e 4953 542d 3830 302d 3533 . - NIST-800-53 │ │ │ +001a7210: 2d4d 502d 370a 2020 2d20 636f 6e66 6967 -MP-7. - config │ │ │ +001a7220: 7572 655f 7374 7261 7465 6779 0a20 202d ure_strategy. - │ │ │ +001a7230: 2068 6967 685f 6469 7372 7570 7469 6f6e high_disruption │ │ │ +001a7240: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578 . - low_complex │ │ │ +001a7250: 6974 790a 2020 2d20 6d65 6469 756d 5f73 ity. - medium_s │ │ │ +001a7260: 6576 6572 6974 790a 2020 2d20 6d6f 756e everity. - moun │ │ │ +001a7270: 745f 6f70 7469 6f6e 5f74 6d70 5f6e 6f73 t_option_tmp_nos │ │ │ +001a7280: 7569 640a 2020 2d20 6e6f 5f72 6562 6f6f uid. - no_reboo │ │ │ +001a7290: 745f 6e65 6564 6564 0a0a 2d20 6e61 6d65 t_needed..- name │ │ │ +001a72a0: 3a20 2741 6464 206e 6f73 7569 6420 4f70 : 'Add nosuid Op │ │ │ +001a72b0: 7469 6f6e 2074 6f20 2f74 6d70 3a20 4d61 tion to /tmp: Ma │ │ │ +001a72c0: 6b65 2073 7572 6520 6e6f 7375 6964 206f ke sure nosuid o │ │ │ +001a72d0: 7074 696f 6e20 6973 2070 6172 7420 6f66 ption is part of │ │ │ +001a72e0: 2074 6865 2074 6f20 2f74 6d70 0a20 2020 the to /tmp. │ │ │ +001a72f0: 206f 7074 696f 6e73 270a 2020 7365 745f options'. set_ │ │ │ +001a7300: 6661 6374 3a0a 2020 2020 6d6f 756e 745f fact:. mount_ │ │ │ +001a7310: 696e 666f 3a20 277b 7b20 6d6f 756e 745f info: '{{ mount_ │ │ │ +001a7320: 696e 666f 207c 2063 6f6d 6269 6e65 2820 info | combine( │ │ │ +001a7330: 7b27 276f 7074 696f 6e73 2727 3a27 2727 {''options'':''' │ │ │ +001a7340: 277e 286d 6f75 6e74 5f69 6e66 6f2e 6f70 '~(mount_info.op │ │ │ +001a7350: 7469 6f6e 7320 7c0a 2020 2020 2020 6465 tions |. de │ │ │ +001a7360: 6661 756c 7428 2727 2727 2929 7e28 2727 fault(''''))~('' │ │ │ +001a7370: 2c27 2720 6966 2028 6d6f 756e 745f 696e ,'' if (mount_in │ │ │ +001a7380: 666f 2e6f 7074 696f 6e73 207c 2064 6566 fo.options | def │ │ │ +001a7390: 6175 6c74 2827 2727 2729 2920 656c 7365 ault('''')) else │ │ │ +001a73a0: 2027 2727 2729 7e27 276e 6f73 7569 6427 '''')~''nosuid' │ │ │ +001a73b0: 270a 2020 2020 2020 7d29 207d 7d27 0a20 '. }) }}'. │ │ │ +001a73c0: 2077 6865 6e3a 0a20 202d 2028 206e 6f74 when:. - ( not │ │ │ +001a73d0: 2028 2022 6b65 726e 656c 2220 696e 2061 ( "kernel" in a │ │ │ +001a73e0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163 nsible_facts.pac │ │ │ +001a73f0: 6b61 6765 7320 616e 6420 2262 6f6f 7463 kages and "bootc │ │ │ +001a7400: 2220 696e 2061 6e73 6962 6c65 5f66 6163 " in ansible_fac │ │ │ +001a7410: 7473 2e70 6163 6b61 6765 730a 2020 2020 ts.packages. │ │ │ +001a7420: 616e 6420 6e6f 7420 226f 7065 6e73 6869 and not "openshi │ │ │ +001a7430: 6674 2d6b 7562 656c 6574 2220 696e 2061 ft-kubelet" in a │ │ │ +001a7440: 6e73 6962 6c65 5f66 6163 7473 2e70 6163 nsible_facts.pac │ │ │ +001a7450: 6b61 6765 7320 616e 6420 226f 7374 7265 kages and "ostre │ │ │ +001a7460: 6522 2069 6e20 616e 7369 626c 655f 7072 e" in ansible_pr │ │ │ +001a7470: 6f63 5f63 6d64 6c69 6e65 0a20 2020 2029 oc_cmdline. ) │ │ │ +001a7480: 2061 6e64 206e 6f74 2028 2061 6e73 6962 and not ( ansib │ │ │ +001a7490: 6c65 5f76 6972 7475 616c 697a 6174 696f le_virtualizatio │ │ │ +001a74a0: 6e5f 7479 7065 2069 6e20 5b22 646f 636b n_type in ["dock │ │ │ +001a74b0: 6572 222c 2022 6c78 6322 2c20 226f 7065 er", "lxc", "ope │ │ │ +001a74c0: 6e76 7a22 2c20 2270 6f64 6d61 6e22 2c0a nvz", "podman",. │ │ │ +001a74d0: 2020 2020 2263 6f6e 7461 696e 6572 225d "container"] │ │ │ +001a74e0: 2029 2029 0a20 202d 2027 222f 746d 7022 ) ). - '"/tmp" │ │ │ +001a74f0: 2069 6e20 616e 7369 626c 655f 6d6f 756e in ansible_moun │ │ │ +001a7500: 7473 207c 206d 6170 2861 7474 7269 6275 ts | map(attribu │ │ │ +001a7510: 7465 3d22 6d6f 756e 7422 2920 7c20 6c69 te="mount") | li │ │ │ +001a7520: 7374 270a 2020 2d20 6d6f 756e 745f 696e st'. - mount_in │ │ │ +001a7530: 666f 2069 7320 6465 6669 6e65 6420 616e fo is defined an │ │ │ +001a7540: 6420 226e 6f73 7569 6422 206e 6f74 2069 d "nosuid" not i │ │ │ +001a7550: 6e20 286d 6f75 6e74 5f69 6e66 6f2e 6f70 n (mount_info.op │ │ │ +001a7560: 7469 6f6e 7320 7c20 6465 6661 756c 7428 tions | default( │ │ │ +001a7570: 2727 2929 0a20 2074 6167 733a 0a20 202d '')). tags:. - │ │ │ +001a7580: 204e 4953 542d 3830 302d 3533 2d41 432d NIST-800-53-AC- │ │ │ +001a7590: 360a 2020 2d20 4e49 5354 2d38 3030 2d35 6. - NIST-800-5 │ │ │ +001a75a0: 332d 4143 2d36 2831 290a 2020 2d20 4e49 3-AC-6(1). - NI │ │ │ +001a75b0: 5354 2d38 3030 2d35 332d 434d 2d36 2861 ST-800-53-CM-6(a │ │ │ +001a75c0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35 ). - NIST-800-5 │ │ │ +001a75d0: 332d 434d 2d37 2861 290a 2020 2d20 4e49 3-CM-7(a). - NI │ │ │ +001a75e0: 5354 2d38 3030 2d35 332d 434d 2d37 2862 ST-800-53-CM-7(b │ │ │ +001a75f0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35 ). - NIST-800-5 │ │ │ +001a7600: 332d 4d50 2d37 0a20 202d 2063 6f6e 6669 3-MP-7. - confi │ │ │ +001a7610: 6775 7265 5f73 7472 6174 6567 790a 2020 gure_strategy. │ │ │ +001a7620: 2d20 6869 6768 5f64 6973 7275 7074 696f - high_disruptio │ │ │ +001a7630: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65 n. - low_comple │ │ │ +001a7640: 7869 7479 0a20 202d 206d 6564 6975 6d5f xity. - medium_ │ │ │ +001a7650: 7365 7665 7269 7479 0a20 202d 206d 6f75 severity. - mou │ │ │ +001a7660: 6e74 5f6f 7074 696f 6e5f 746d 705f 6e6f nt_option_tmp_no │ │ │ +001a7670: 7375 6964 0a20 202d 206e 6f5f 7265 626f suid. - no_rebo │ │ │ +001a7680: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d ot_needed..- nam │ │ │ +001a7690: 653a 2027 4164 6420 6e6f 7375 6964 204f e: 'Add nosuid O │ │ │ +001a76a0: 7074 696f 6e20 746f 202f 746d 703a 2045 ption to /tmp: E │ │ │ +001a76b0: 6e73 7572 6520 2f74 6d70 2069 7320 6d6f nsure /tmp is mo │ │ │ +001a76c0: 756e 7465 6420 7769 7468 206e 6f73 7569 unted with nosui │ │ │ +001a76d0: 6420 6f70 7469 6f6e 270a 2020 616e 7369 d option'. ansi │ │ │ +001a76e0: 626c 652e 706f 7369 782e 6d6f 756e 743a ble.posix.mount: │ │ │ +001a76f0: 0a20 2020 2070 6174 683a 202f 746d 700a . path: /tmp. │ │ │ +001a7700: 2020 2020 7372 633a 2027 7b7b 206d 6f75 src: '{{ mou │ │ │ +001a7710: 6e74 5f69 6e66 6f2e 736f 7572 6365 207c nt_info.source | │ │ │ +001a7720: 2064 6566 6175 6c74 2827 2727 2729 207d default('''') } │ │ │ +001a7730: 7d27 0a20 2020 206f 7074 733a 2027 7b7b }'. opts: '{{ │ │ │ +001a7740: 206d 6f75 6e74 5f69 6e66 6f2e 6f70 7469 mount_info.opti │ │ │ +001a7750: 6f6e 7320 7c20 6465 6661 756c 7428 2727 ons | default('' │ │ │ +001a7760: 2727 2920 7d7d 270a 2020 2020 7374 6174 '') }}'. stat │ │ │ +001a7770: 653a 206d 6f75 6e74 6564 0a20 2020 2066 e: mounted. f │ │ │ +001a7780: 7374 7970 653a 2027 7b7b 206d 6f75 6e74 stype: '{{ mount │ │ │ +001a7790: 5f69 6e66 6f2e 6673 7479 7065 207c 2064 _info.fstype | d │ │ │ +001a77a0: 6566 6175 6c74 2827 2727 2729 207d 7d27 efault('''') }}' │ │ │ +001a77b0: 0a20 2072 6567 6973 7465 723a 206d 6f75 . register: mou │ │ │ +001a77c0: 6e74 5f72 6573 756c 740a 2020 6661 696c nt_result. fail │ │ │ +001a77d0: 6564 5f77 6865 6e3a 0a20 202d 206d 6f75 ed_when:. - mou │ │ │ +001a77e0: 6e74 5f72 6573 756c 7420 6973 2066 6169 nt_result is fai │ │ │ +001a77f0: 6c65 640a 2020 2d20 2727 2774 6172 6765 led. - '''targe │ │ │ +001a7800: 7420 6973 2062 7573 7927 2720 6e6f 7420 t is busy'' not │ │ │ +001a7810: 696e 2028 6d6f 756e 745f 7265 7375 6c74 in (mount_result │ │ │ +001a7820: 2e6d 7367 207c 2064 6566 6175 6c74 2827 .msg | default(' │ │ │ +001a7830: 2727 2729 2927 0a20 202d 2027 2727 616c '''))'. - '''al │ │ │ +001a7840: 7265 6164 7920 6d6f 756e 7465 6427 2720 ready mounted'' │ │ │ +001a7850: 6e6f 7420 696e 2028 6d6f 756e 745f 7265 not in (mount_re │ │ │ +001a7860: 7375 6c74 2e6d 7367 207c 2064 6566 6175 sult.msg | defau │ │ │ +001a7870: 6c74 2827 2727 2729 2927 0a20 2077 6865 lt(''''))'. whe │ │ │ +001a7880: 6e3a 0a20 202d 2028 206e 6f74 2028 2022 n:. - ( not ( " │ │ │ +001a7890: 6b65 726e 656c 2220 696e 2061 6e73 6962 kernel" in ansib │ │ │ +001a78a0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765 le_facts.package │ │ │ +001a78b0: 7320 616e 6420 2262 6f6f 7463 2220 696e s and "bootc" in │ │ │ +001a78c0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70 ansible_facts.p │ │ │ +001a78d0: 6163 6b61 6765 730a 2020 2020 616e 6420 ackages. and │ │ │ +001a78e0: 6e6f 7420 226f 7065 6e73 6869 6674 2d6b not "openshift-k │ │ │ +001a78f0: 7562 656c 6574 2220 696e 2061 6e73 6962 ubelet" in ansib │ │ │ +001a7900: 6c65 5f66 6163 7473 2e70 6163 6b61 6765 le_facts.package │ │ │ +001a7910: 7320 616e 6420 226f 7374 7265 6522 2069 s and "ostree" i │ │ │ +001a7920: 6e20 616e 7369 626c 655f 7072 6f63 5f63 n ansible_proc_c │ │ │ +001a7930: 6d64 6c69 6e65 0a20 2020 2029 2061 6e64 mdline. ) and │ │ │ +001a7940: 206e 6f74 2028 2061 6e73 6962 6c65 5f76 not ( ansible_v │ │ │ +001a7950: 6972 7475 616c 697a 6174 696f 6e5f 7479 irtualization_ty │ │ │ +001a7960: 7065 2069 6e20 5b22 646f 636b 6572 222c pe in ["docker", │ │ │ +001a7970: 2022 6c78 6322 2c20 226f 7065 6e76 7a22 "lxc", "openvz" │ │ │ +001a7980: 2c20 2270 6f64 6d61 6e22 2c0a 2020 2020 , "podman",. │ │ │ +001a7990: 2263 6f6e 7461 696e 6572 225d 2029 2029 "container"] ) ) │ │ │ +001a79a0: 0a20 202d 2027 222f 746d 7022 2069 6e20 . - '"/tmp" in │ │ │ +001a79b0: 616e 7369 626c 655f 6d6f 756e 7473 207c ansible_mounts | │ │ │ +001a79c0: 206d 6170 2861 7474 7269 6275 7465 3d22 map(attribute=" │ │ │ +001a79d0: 6d6f 756e 7422 2920 7c20 6c69 7374 270a mount") | list'. │ │ │ +001a79e0: 2020 2d20 6d6f 756e 745f 696e 666f 2069 - mount_info i │ │ │ +001a79f0: 7320 6465 6669 6e65 640a 2020 2d20 2864 s defined. - (d │ │ │ +001a7a00: 6576 6963 655f 6e61 6d65 2e73 7464 6f75 evice_name.stdou │ │ │ +001a7a10: 7420 6973 2064 6566 696e 6564 2061 6e64 t is defined and │ │ │ +001a7a20: 2028 6465 7669 6365 5f6e 616d 652e 7374 (device_name.st │ │ │ +001a7a30: 646f 7574 207c 206c 656e 6774 6820 2667 dout | length &g │ │ │ +001a7a40: 743b 2030 2929 206f 7220 2822 2d2d 6673 t; 0)) or ("--fs │ │ │ +001a7a50: 7461 6222 0a20 2020 207c 206c 656e 6774 tab". | lengt │ │ │ +001a7a60: 6820 3d3d 2030 290a 2020 7461 6773 3a0a h == 0). tags:. │ │ │ +001a7a70: 2020 2d20 4e49 5354 2d38 3030 2d35 332d - NIST-800-53- │ │ │ +001a7a80: 4143 2d36 0a20 202d 204e 4953 542d 3830 AC-6. - NIST-80 │ │ │ +001a7a90: 302d 3533 2d41 432d 3628 3129 0a20 202d 0-53-AC-6(1). - │ │ │ +001a7aa0: 204e 4953 542d 3830 302d 3533 2d43 4d2d NIST-800-53-CM- │ │ │ +001a7ab0: 3628 6129 0a20 202d 204e 4953 542d 3830 6(a). - NIST-80 │ │ │ +001a7ac0: 302d 3533 2d43 4d2d 3728 6129 0a20 202d 0-53-CM-7(a). - │ │ │ +001a7ad0: 204e 4953 542d 3830 302d 3533 2d43 4d2d NIST-800-53-CM- │ │ │ +001a7ae0: 3728 6229 0a20 202d 204e 4953 542d 3830 7(b). - NIST-80 │ │ │ +001a7af0: 302d 3533 2d4d 502d 370a 2020 2d20 636f 0-53-MP-7. - co │ │ │ +001a7b00: 6e66 6967 7572 655f 7374 7261 7465 6779 nfigure_strategy │ │ │ +001a7b10: 0a20 202d 2068 6967 685f 6469 7372 7570 . - high_disrup │ │ │ +001a7b20: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d tion. - low_com │ │ │ +001a7b30: 706c 6578 6974 790a 2020 2d20 6d65 6469 plexity. - medi │ │ │ +001a7b40: 756d 5f73 6576 6572 6974 790a 2020 2d20 um_severity. - │ │ │ +001a7b50: 6d6f 756e 745f 6f70 7469 6f6e 5f74 6d70 mount_option_tmp │ │ │ +001a7b60: 5f6e 6f73 7569 640a 2020 2d20 6e6f 5f72 _nosuid. - no_r │ │ │ +001a7b70: 6562 6f6f 745f 6e65 6564 6564 0a3c 2f63 eboot_needed.

│ │ │ +001a7b90: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ +001a7c30: 6564 6961 7469 6f6e 2053 6865 6c6c 2073 ediation Shell s │ │ │ +001a7c40: 6372 6970 7420 e287 b23c 2f61 3e3c 6272 cript ...
# R
│ │ │ +001a7d00: 656d 6564 6961 7469 6f6e 2069 7320 6170  emediation is ap
│ │ │ +001a7d10: 706c 6963 6162 6c65 206f 6e6c 7920 696e  plicable only in
│ │ │ +001a7d20: 2063 6572 7461 696e 2070 6c61 7466 6f72   certain platfor
│ │ │ +001a7d30: 6d73 0a69 6620 2820 2120 2820 7b20 7270  ms.if ( ! ( { rp
│ │ │ +001a7d40: 6d20 2d2d 7175 6965 7420 2d71 206b 6572  m --quiet -q ker
│ │ │ +001a7d50: 6e65 6c20 3b7d 2026 616d 703b 2661 6d70  nel ;} &&
│ │ │ +001a7d60: 3b20 7b20 7270 6d20 2d2d 7175 6965 7420  ; { rpm --quiet 
│ │ │ +001a7d70: 2d71 2062 6f6f 7463 203b 7d20 2661 6d70  -q bootc ;} &
│ │ │ +001a7d80: 3b26 616d 703b 207b 2021 2072 706d 202d  ;& { ! rpm -
│ │ │ +001a7d90: 2d71 7569 6574 202d 7120 6f70 656e 7368  -quiet -q opensh
│ │ │ +001a7da0: 6966 742d 6b75 6265 6c65 7420 3b7d 2026  ift-kubelet ;} &
│ │ │ +001a7db0: 616d 703b 2661 6d70 3b20 285b 202d 6620  amp;& ([ -f 
│ │ │ +001a7dc0: 2f72 756e 2f6f 7374 7265 652d 626f 6f74  /run/ostree-boot
│ │ │ +001a7dd0: 6564 205d 207c 7c20 5b20 2d4c 202f 6f73  ed ] || [ -L /os
│ │ │ +001a7de0: 7472 6565 205d 2920 2920 2661 6d70 3b26  tree ]) ) &&
│ │ │ +001a7df0: 616d 703b 2021 2028 205b 202d 6620 2f2e  amp; ! ( [ -f /.
│ │ │ +001a7e00: 646f 636b 6572 656e 7620 5d20 7c7c 205b  dockerenv ] || [
│ │ │ +001a7e10: 202d 6620 2f72 756e 2f2e 636f 6e74 6169   -f /run/.contai
│ │ │ +001a7e20: 6e65 7265 6e76 205d 2029 2029 2026 616d  nerenv ] ) ) &am
│ │ │ +001a7e30: 703b 2661 6d70 3b20 7b20 2820 6669 6e64  p;& { ( find
│ │ │ +001a7e40: 6d6e 7420 2d2d 6b65 726e 656c 2022 2f74  mnt --kernel "/t
│ │ │ +001a7e50: 6d70 2220 2667 743b 202f 6465 762f 6e75  mp" > /dev/nu
│ │ │ +001a7e60: 6c6c 207c 7c20 6669 6e64 6d6e 7420 2d2d  ll || findmnt --
│ │ │ +001a7e70: 6673 7461 6220 222f 746d 7022 2026 6774  fstab "/tmp" >
│ │ │ +001a7e80: 3b20 2f64 6576 2f6e 756c 6c20 293b 207d  ; /dev/null ); }
│ │ │ +001a7e90: 3b20 7468 656e 0a0a 6675 6e63 7469 6f6e  ; then..function
│ │ │ +001a7ea0: 2070 6572 666f 726d 5f72 656d 6564 6961   perform_remedia
│ │ │ +001a7eb0: 7469 6f6e 207b 0a0a 2020 2020 0a20 2020  tion {..    .   
│ │ │ +001a7ec0: 2020 2020 2023 2074 6865 206d 6f75 6e74       # the mount
│ │ │ +001a7ed0: 2070 6f69 6e74 202f 746d 7020 6861 7320   point /tmp has 
│ │ │ +001a7ee0: 746f 2062 6520 6465 6669 6e65 6420 696e  to be defined in
│ │ │ +001a7ef0: 202f 6574 632f 6673 7461 620a 2020 2020   /etc/fstab.    
│ │ │ +001a7f00: 2020 2020 2320 6265 666f 7265 2074 6869      # before thi
│ │ │ +001a7f10: 7320 7265 6d65 6469 6174 696f 6e20 6361  s remediation ca
│ │ │ +001a7f20: 6e20 6265 2065 7865 6375 7465 642e 2049  n be executed. I
│ │ │ +001a7f30: 6e20 6361 7365 2069 7420 6973 206e 6f74  n case it is not
│ │ │ +001a7f40: 2064 6566 696e 6564 2c20 7468 650a 2020   defined, the.  
│ │ │ +001a7f50: 2020 2020 2020 2320 7265 6d65 6469 6174        # remediat
│ │ │ +001a7f60: 696f 6e20 6162 6f72 7473 2061 6e64 206e  ion aborts and n
│ │ │ +001a7f70: 6f20 6368 616e 6765 7320 7265 6761 7264  o changes regard
│ │ │ +001a7f80: 696e 6720 7468 6520 6d6f 756e 7420 706f  ing the mount po
│ │ │ +001a7f90: 696e 7420 6172 6520 646f 6e65 2e0a 2020  int are done..  
│ │ │ +001a7fa0: 2020 2020 2020 6d6f 756e 745f 706f 696e        mount_poin
│ │ │ +001a7fb0: 745f 6d61 7463 685f 7265 6765 7870 3d22  t_match_regexp="
│ │ │ +001a7fc0: 2428 7072 696e 7466 2022 5e5b 5b3a 7370  $(printf "^[[:sp
│ │ │ +001a7fd0: 6163 653a 5d5d 2a5b 5e23 5d2e 2a5b 5b3a  ace:]]*[^#].*[[:
│ │ │ +001a7fe0: 7370 6163 653a 5d5d 2573 5b5b 3a73 7061  space:]]%s[[:spa
│ │ │ +001a7ff0: 6365 3a5d 5d22 2022 2f74 6d70 2229 220a  ce:]]" "/tmp")".
│ │ │ +001a8000: 0a20 2020 2067 7265 7020 2224 6d6f 756e  .    grep "$moun
│ │ │ +001a8010: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ +001a8020: 6765 7870 2220 2d71 202f 6574 632f 6673  gexp" -q /etc/fs
│ │ │ +001a8030: 7461 6220 5c0a 2020 2020 2020 2020 7c7c  tab \.        ||
│ │ │ +001a8040: 207b 2065 6368 6f20 2254 6865 206d 6f75   { echo "The mou
│ │ │ +001a8050: 6e74 2070 6f69 6e74 2027 2f74 6d70 2720  nt point '/tmp' 
│ │ │ +001a8060: 6973 206e 6f74 2065 7665 6e20 696e 202f  is not even in /
│ │ │ +001a8070: 6574 632f 6673 7461 622c 2073 6f20 7765  etc/fstab, so we
│ │ │ +001a8080: 2063 616e 2774 2073 6574 2075 7020 6d6f   can't set up mo
│ │ │ +001a8090: 756e 7420 6f70 7469 6f6e 7322 2026 6774  unt options" >
│ │ │ +001a80a0: 3b26 616d 703b 323b 0a20 2020 2020 2020  ;&2;.       
│ │ │ +001a80b0: 2020 2020 2020 2020 2065 6368 6f20 224e           echo "N
│ │ │ +001a80c0: 6f74 2072 656d 6564 6961 7469 6e67 2c20  ot remediating, 
│ │ │ +001a80d0: 6265 6361 7573 6520 7468 6572 6520 6973  because there is
│ │ │ +001a80e0: 206e 6f20 7265 636f 7264 206f 6620 2f74   no record of /t
│ │ │ +001a80f0: 6d70 2069 6e20 2f65 7463 2f66 7374 6162  mp in /etc/fstab
│ │ │ +001a8100: 2220 2667 743b 2661 6d70 3b32 3b20 7265  " >&2; re
│ │ │ +001a8110: 7475 726e 2031 3b20 7d0a 2020 2020 0a0a  turn 1; }.    ..
│ │ │ +001a8120: 0a20 2020 206d 6f75 6e74 5f70 6f69 6e74  .    mount_point
│ │ │ +001a8130: 5f6d 6174 6368 5f72 6567 6578 703d 2224  _match_regexp="$
│ │ │ +001a8140: 2870 7269 6e74 6620 225e 5b5b 3a73 7061  (printf "^[[:spa
│ │ │ +001a8150: 6365 3a5d 5d2a 5b5e 235d 2e2a 5b5b 3a73  ce:]]*[^#].*[[:s
│ │ │ +001a8160: 7061 6365 3a5d 5d25 735b 5b3a 7370 6163  pace:]]%s[[:spac
│ │ │ +001a8170: 653a 5d5d 2220 2f74 6d70 2922 0a0a 2020  e:]]" /tmp)"..  
│ │ │ +001a8180: 2020 2320 4966 2074 6865 206d 6f75 6e74    # If the mount
│ │ │ +001a8190: 2070 6f69 6e74 2069 7320 6e6f 7420 696e   point is not in
│ │ │ +001a81a0: 202f 6574 632f 6673 7461 622c 2067 6574   /etc/fstab, get
│ │ │ +001a81b0: 2070 7265 7669 6f75 7320 6d6f 756e 7420   previous mount 
│ │ │ +001a81c0: 6f70 7469 6f6e 7320 6672 6f6d 202f 6574  options from /et
│ │ │ +001a81d0: 632f 6d74 6162 0a20 2020 2069 6620 2120  c/mtab.    if ! 
│ │ │ +001a81e0: 6772 6570 202d 7120 2224 6d6f 756e 745f  grep -q "$mount_
│ │ │ +001a81f0: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ +001a8200: 7870 2220 2f65 7463 2f66 7374 6162 3b20  xp" /etc/fstab; 
│ │ │ +001a8210: 7468 656e 0a20 2020 2020 2020 2023 2072  then.        # r
│ │ │ +001a8220: 756e 7469 6d65 206f 7074 7320 7769 7468  untime opts with
│ │ │ +001a8230: 6f75 7420 736f 6d65 2061 7574 6f6d 6174  out some automat
│ │ │ +001a8240: 6963 206b 6572 6e65 6c2f 7573 6572 7370  ic kernel/usersp
│ │ │ +001a8250: 6163 652d 6164 6465 6420 6465 6661 756c  ace-added defaul
│ │ │ +001a8260: 7473 0a20 2020 2020 2020 2070 7265 7669  ts.        previ
│ │ │ +001a8270: 6f75 735f 6d6f 756e 745f 6f70 7473 3d24  ous_mount_opts=$
│ │ │ +001a8280: 2867 7265 7020 2224 6d6f 756e 745f 706f  (grep "$mount_po
│ │ │ +001a8290: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ +001a82a0: 2220 2f65 7463 2f6d 7461 6220 7c20 6865  " /etc/mtab | he
│ │ │ +001a82b0: 6164 202d 3120 7c20 2061 776b 2027 7b70  ad -1 |  awk '{p
│ │ │ +001a82c0: 7269 6e74 2024 347d 2720 5c0a 2020 2020  rint $4}' \.    
│ │ │ +001a82d0: 2020 2020 2020 2020 2020 2020 2020 2020                  
│ │ │ +001a82e0: 7c20 7365 6420 2d45 2022 732f 2872 777c  | sed -E "s/(rw|
│ │ │ +001a82f0: 6465 6661 756c 7473 7c73 6563 6c61 6265  defaults|seclabe
│ │ │ +001a8300: 6c7c 6e6f 7375 6964 2928 2c7c 2429 2f2f  l|nosuid)(,|$)//
│ │ │ +001a8310: 673b 732f 2c24 2f2f 2229 0a20 2020 2020  g;s/,$//").     
│ │ │ +001a8320: 2020 205b 2022 2470 7265 7669 6f75 735f     [ "$previous_
│ │ │ +001a8330: 6d6f 756e 745f 6f70 7473 2220 5d20 2661  mount_opts" ] &a
│ │ │ +001a8340: 6d70 3b26 616d 703b 2070 7265 7669 6f75  mp;& previou
│ │ │ +001a8350: 735f 6d6f 756e 745f 6f70 7473 2b3d 222c  s_mount_opts+=",
│ │ │ +001a8360: 220a 2020 2020 2020 2020 2320 496e 2069  ".        # In i
│ │ │ +001a8370: 736f 3936 3630 2066 696c 6573 7973 7465  so9660 filesyste
│ │ │ +001a8380: 6d73 206d 7461 6220 636f 756c 6420 6465  ms mtab could de
│ │ │ +001a8390: 7363 7269 6265 2061 2022 626c 6f63 6b73  scribe a "blocks
│ │ │ +001a83a0: 697a 6522 2076 616c 7565 2c20 7468 6973  ize" value, this
│ │ │ +001a83b0: 2073 686f 756c 6420 6265 2072 6566 6c65   should be refle
│ │ │ +001a83c0: 6374 6564 2069 6e0a 2020 2020 2020 2020  cted in.        
│ │ │ +001a83d0: 2320 6673 7461 6220 6173 2022 626c 6f63  # fstab as "bloc
│ │ │ +001a83e0: 6b22 2e20 2054 6865 206e 6578 7420 7661  k".  The next va
│ │ │ +001a83f0: 7269 6162 6c65 2069 7320 746f 2073 6174  riable is to sat
│ │ │ +001a8400: 6973 6679 2073 6865 6c6c 6368 6563 6b20  isfy shellcheck 
│ │ │ +001a8410: 5343 3230 3530 2e0a 2020 2020 2020 2020  SC2050..        
│ │ │ +001a8420: 6673 5f74 7970 653d 2222 0a20 2020 2020  fs_type="".     
│ │ │ +001a8430: 2020 2069 6620 5b20 2022 2466 735f 7479     if [  "$fs_ty
│ │ │ +001a8440: 7065 2220 3d3d 2022 6973 6f39 3636 3022  pe" == "iso9660"
│ │ │ +001a8450: 205d 203b 2074 6865 6e0a 2020 2020 2020   ] ; then.      
│ │ │ +001a8460: 2020 2020 2020 7072 6576 696f 7573 5f6d        previous_m
│ │ │ +001a8470: 6f75 6e74 5f6f 7074 733d 2428 7365 6420  ount_opts=$(sed 
│ │ │ +001a8480: 2773 2f62 6c6f 636b 7369 7a65 3d2f 626c  's/blocksize=/bl
│ │ │ +001a8490: 6f63 6b3d 2f27 2026 6c74 3b26 6c74 3b26  ock=/' <<&
│ │ │ +001a84a0: 6c74 3b20 2224 7072 6576 696f 7573 5f6d  lt; "$previous_m
│ │ │ +001a84b0: 6f75 6e74 5f6f 7074 7322 290a 2020 2020  ount_opts").    
│ │ │ +001a84c0: 2020 2020 6669 0a20 2020 2020 2020 2065      fi.        e
│ │ │ +001a84d0: 6368 6f20 2220 2f74 6d70 2020 6465 6661  cho " /tmp  defa
│ │ │ +001a84e0: 756c 7473 2c24 7b70 7265 7669 6f75 735f  ults,${previous_
│ │ │ +001a84f0: 6d6f 756e 745f 6f70 7473 7d6e 6f73 7569  mount_opts}nosui
│ │ │ +001a8500: 6420 3020 3022 2026 6774 3b26 6774 3b20  d 0 0" >> 
│ │ │ +001a8510: 2f65 7463 2f66 7374 6162 0a20 2020 2023  /etc/fstab.    #
│ │ │ +001a8520: 2049 6620 7468 6520 6d6f 756e 745f 6f70   If the mount_op
│ │ │ +001a8530: 7420 6f70 7469 6f6e 2069 7320 6e6f 7420  t option is not 
│ │ │ +001a8540: 616c 7265 6164 7920 696e 2074 6865 206d  already in the m
│ │ │ +001a8550: 6f75 6e74 2070 6f69 6e74 2773 202f 6574  ount point's /et
│ │ │ +001a8560: 632f 6673 7461 6220 656e 7472 792c 2061  c/fstab entry, a
│ │ │ +001a8570: 6464 2069 740a 2020 2020 656c 6966 2021  dd it.    elif !
│ │ │ +001a8580: 2067 7265 7020 2224 6d6f 756e 745f 706f   grep "$mount_po
│ │ │ +001a8590: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ +001a85a0: 2220 2f65 7463 2f66 7374 6162 207c 2067  " /etc/fstab | g
│ │ │ +001a85b0: 7265 7020 2d71 2022 6e6f 7375 6964 223b  rep -q "nosuid";
│ │ │ +001a85c0: 2074 6865 6e0a 2020 2020 2020 2020 7072   then.        pr
│ │ │ +001a85d0: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ +001a85e0: 733d 2428 6772 6570 2022 246d 6f75 6e74  s=$(grep "$mount
│ │ │ +001a85f0: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ +001a8600: 6578 7022 202f 6574 632f 6673 7461 6220  exp" /etc/fstab 
│ │ │ +001a8610: 7c20 6177 6b20 277b 7072 696e 7420 2434  | awk '{print $4
│ │ │ +001a8620: 7d27 290a 2020 2020 2020 2020 7365 6420  }').        sed 
│ │ │ +001a8630: 2d69 2022 737c 5c28 247b 6d6f 756e 745f  -i "s|\(${mount_
│ │ │ +001a8640: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ +001a8650: 7870 7d2e 2a24 7b70 7265 7669 6f75 735f  xp}.*${previous_
│ │ │ +001a8660: 6d6f 756e 745f 6f70 7473 7d5c 297c 5c31  mount_opts}\)|\1
│ │ │ +001a8670: 2c6e 6f73 7569 647c 2220 2f65 7463 2f66  ,nosuid|" /etc/f
│ │ │ +001a8680: 7374 6162 0a20 2020 2066 690a 0a0a 2020  stab.    fi...  
│ │ │ +001a8690: 2020 6966 206d 6b64 6972 202d 7020 222f    if mkdir -p "/
│ │ │ +001a86a0: 746d 7022 3b20 7468 656e 0a20 2020 2020  tmp"; then.     
│ │ │ +001a86b0: 2020 2069 6620 6d6f 756e 7470 6f69 6e74     if mountpoint
│ │ │ +001a86c0: 202d 7120 222f 746d 7022 3b20 7468 656e   -q "/tmp"; then
│ │ │ +001a86d0: 0a20 2020 2020 2020 2020 2020 206d 6f75  .            mou
│ │ │ +001a86e0: 6e74 202d 6f20 7265 6d6f 756e 7420 2d2d  nt -o remount --
│ │ │ +001a86f0: 7461 7267 6574 2022 2f74 6d70 220a 2020  target "/tmp".  
│ │ │ +001a8700: 2020 2020 2020 6669 0a20 2020 2066 690a        fi.    fi.
│ │ │ +001a8710: 7d0a 0a70 6572 666f 726d 5f72 656d 6564  }..perform_remed
│ │ │ +001a8720: 6961 7469 6f6e 0a0a 656c 7365 0a20 2020  iation..else.   
│ │ │ +001a8730: 2026 6774 3b26 616d 703b 3220 6563 686f   >&2 echo
│ │ │ +001a8740: 2027 5265 6d65 6469 6174 696f 6e20 6973   'Remediation is
│ │ │ +001a8750: 206e 6f74 2061 7070 6c69 6361 626c 652c   not applicable,
│ │ │ +001a8760: 206e 6f74 6869 6e67 2077 6173 2064 6f6e   nothing was don
│ │ │ +001a8770: 6527 0a66 690a 3c2f 636f 6465 3e3c 2f70  e'.fi.

Remediatio │ │ │ +001a8830: 6e20 416e 6163 6f6e 6461 2073 6e69 7070 n Anaconda snipp │ │ │ +001a8840: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ +001a88c0: 3c74 723e 3c74 683e 436f 6d70 6c65 7869
Strategy: │ │ │ +001a8950: 3c74 643e 656e 6162 6c65 3c2f 7464 3e3c < │ │ │ +001a8960: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
Reboo │ │ │ +001a7cd0: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ +001a7ce0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Complexi │ │ │ +001a88d0: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +001a88e0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Disruption:high
Reboo │ │ │ +001a8920: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ +001a8930: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
enable
.part /tm
│ │ │ +001a8980: 7020 2d2d 6d6f 756e 746f 7074 696f 6e73  p --mountoptions
│ │ │ +001a8990: 3d22 6e6f 7375 6964 220a 3c2f 636f 6465  ="nosuid".
Remediation │ │ │ -001a9650: 416e 6163 6f6e 6461 2073 6e69 7070 6574 Anaconda snippet │ │ │ -001a9660: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Complexity │ │ │ -001a96f0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ -001a9710: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ -001a9720: 7464 3e68 6967 683c 2f74 643e 3c2f 7472 td>highReboot: │ │ │ -001a9740: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ -001a9760: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:enable
<
│ │ │ -001a9790: 636f 6465 3e0a 7061 7274 202f 7661 722f  code>.part /var/
│ │ │ -001a97a0: 6c6f 672f 6175 6469 7420 2d2d 6d6f 756e  log/audit --moun
│ │ │ -001a97b0: 746f 7074 696f 6e73 3d22 6e6f 6465 7622  toptions="nodev"
│ │ │ -001a97c0: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation Ans │ │ │ -001a9880: 6962 6c65 2073 6e69 7070 6574 20e2 87b2 ible snippet ... │ │ │ -001a9890: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity:< │ │ │ -001a9980: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
low
Disru │ │ │ -001a9940: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e68 ption:h │ │ │ -001a9950: 6967 683c 2f74 643e 3c2f 7472 3e3c 7472 igh
Reboot:false
Stra │ │ │ -001a9990: 7465 6779 3a3c 2f74 683e 3c74 643e 636f tegy:co │ │ │ -001a99a0: 6e66 6967 7572 653c 2f74 643e 3c2f 7472 nfigure
- name: Gath
│ │ │ -001a99d0: 6572 2074 6865 2070 6163 6b61 6765 2066  er the package f
│ │ │ -001a99e0: 6163 7473 0a20 2070 6163 6b61 6765 5f66  acts.  package_f
│ │ │ -001a99f0: 6163 7473 3a0a 2020 2020 6d61 6e61 6765  acts:.    manage
│ │ │ -001a9a00: 723a 2061 7574 6f0a 2020 7461 6773 3a0a  r: auto.  tags:.
│ │ │ -001a9a10: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001a9a20: 4143 2d36 0a20 202d 204e 4953 542d 3830  AC-6.  - NIST-80
│ │ │ -001a9a30: 302d 3533 2d41 432d 3628 3129 0a20 202d  0-53-AC-6(1).  -
│ │ │ -001a9a40: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -001a9a50: 3628 6129 0a20 202d 204e 4953 542d 3830  6(a).  - NIST-80
│ │ │ -001a9a60: 302d 3533 2d43 4d2d 3728 6129 0a20 202d  0-53-CM-7(a).  -
│ │ │ -001a9a70: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -001a9a80: 3728 6229 0a20 202d 204e 4953 542d 3830  7(b).  - NIST-80
│ │ │ -001a9a90: 302d 3533 2d4d 502d 370a 2020 2d20 636f  0-53-MP-7.  - co
│ │ │ -001a9aa0: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ -001a9ab0: 0a20 202d 2068 6967 685f 6469 7372 7570  .  - high_disrup
│ │ │ -001a9ac0: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d  tion.  - low_com
│ │ │ -001a9ad0: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ -001a9ae0: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ -001a9af0: 6d6f 756e 745f 6f70 7469 6f6e 5f76 6172  mount_option_var
│ │ │ -001a9b00: 5f6c 6f67 5f61 7564 6974 5f6e 6f64 6576  _log_audit_nodev
│ │ │ -001a9b10: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ -001a9b20: 6565 6465 640a 0a2d 206e 616d 653a 2027  eeded..- name: '
│ │ │ -001a9b30: 4164 6420 6e6f 6465 7620 4f70 7469 6f6e  Add nodev Option
│ │ │ -001a9b40: 2074 6f20 2f76 6172 2f6c 6f67 2f61 7564   to /var/log/aud
│ │ │ -001a9b50: 6974 3a20 4368 6563 6b20 696e 666f 726d  it: Check inform
│ │ │ -001a9b60: 6174 696f 6e20 6173 736f 6369 6174 6564  ation associated
│ │ │ -001a9b70: 2074 6f20 6d6f 756e 7470 6f69 6e74 270a   to mountpoint'.
│ │ │ -001a9b80: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ -001a9b90: 6e2e 636f 6d6d 616e 643a 2066 696e 646d  n.command: findm
│ │ │ -001a9ba0: 6e74 202d 2d66 7374 6162 2027 2f76 6172  nt --fstab '/var
│ │ │ -001a9bb0: 2f6c 6f67 2f61 7564 6974 270a 2020 7265  /log/audit'.  re
│ │ │ -001a9bc0: 6769 7374 6572 3a20 6465 7669 6365 5f6e  gister: device_n
│ │ │ -001a9bd0: 616d 650a 2020 6661 696c 6564 5f77 6865  ame.  failed_whe
│ │ │ -001a9be0: 6e3a 2064 6576 6963 655f 6e61 6d65 2e72  n: device_name.r
│ │ │ -001a9bf0: 6320 2667 743b 2031 0a20 2063 6861 6e67  c > 1.  chang
│ │ │ -001a9c00: 6564 5f77 6865 6e3a 2066 616c 7365 0a20  ed_when: false. 
│ │ │ -001a9c10: 2063 6865 636b 5f6d 6f64 653a 2066 616c   check_mode: fal
│ │ │ -001a9c20: 7365 0a20 2077 6865 6e3a 0a20 202d 2028  se.  when:.  - (
│ │ │ -001a9c30: 206e 6f74 2028 2022 6b65 726e 656c 2220   not ( "kernel" 
│ │ │ -001a9c40: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001a9c50: 2e70 6163 6b61 6765 7320 616e 6420 2262  .packages and "b
│ │ │ -001a9c60: 6f6f 7463 2220 696e 2061 6e73 6962 6c65  ootc" in ansible
│ │ │ -001a9c70: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ -001a9c80: 2020 2020 616e 6420 6e6f 7420 226f 7065      and not "ope
│ │ │ -001a9c90: 6e73 6869 6674 2d6b 7562 656c 6574 2220  nshift-kubelet" 
│ │ │ -001a9ca0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001a9cb0: 2e70 6163 6b61 6765 7320 616e 6420 226f  .packages and "o
│ │ │ -001a9cc0: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ -001a9cd0: 655f 7072 6f63 5f63 6d64 6c69 6e65 0a20  e_proc_cmdline. 
│ │ │ -001a9ce0: 2020 2029 2061 6e64 206e 6f74 2028 2061     ) and not ( a
│ │ │ -001a9cf0: 6e73 6962 6c65 5f76 6972 7475 616c 697a  nsible_virtualiz
│ │ │ -001a9d00: 6174 696f 6e5f 7479 7065 2069 6e20 5b22  ation_type in ["
│ │ │ -001a9d10: 646f 636b 6572 222c 2022 6c78 6322 2c20  docker", "lxc", 
│ │ │ -001a9d20: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61  "openvz", "podma
│ │ │ -001a9d30: 6e22 2c0a 2020 2020 2263 6f6e 7461 696e  n",.    "contain
│ │ │ -001a9d40: 6572 225d 2029 2029 0a20 202d 2027 222f  er"] ) ).  - '"/
│ │ │ -001a9d50: 7661 722f 6c6f 672f 6175 6469 7422 2069  var/log/audit" i
│ │ │ -001a9d60: 6e20 616e 7369 626c 655f 6d6f 756e 7473  n ansible_mounts
│ │ │ -001a9d70: 207c 206d 6170 2861 7474 7269 6275 7465   | map(attribute
│ │ │ -001a9d80: 3d22 6d6f 756e 7422 2920 7c20 6c69 7374  ="mount") | list
│ │ │ -001a9d90: 270a 2020 7461 6773 3a0a 2020 2d20 4e49  '.  tags:.  - NI
│ │ │ -001a9da0: 5354 2d38 3030 2d35 332d 4143 2d36 0a20  ST-800-53-AC-6. 
│ │ │ -001a9db0: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ -001a9dc0: 432d 3628 3129 0a20 202d 204e 4953 542d  C-6(1).  - NIST-
│ │ │ -001a9dd0: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ -001a9de0: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -001a9df0: 4d2d 3728 6129 0a20 202d 204e 4953 542d  M-7(a).  - NIST-
│ │ │ -001a9e00: 3830 302d 3533 2d43 4d2d 3728 6229 0a20  800-53-CM-7(b). 
│ │ │ -001a9e10: 202d 204e 4953 542d 3830 302d 3533 2d4d   - NIST-800-53-M
│ │ │ -001a9e20: 502d 370a 2020 2d20 636f 6e66 6967 7572  P-7.  - configur
│ │ │ -001a9e30: 655f 7374 7261 7465 6779 0a20 202d 2068  e_strategy.  - h
│ │ │ -001a9e40: 6967 685f 6469 7372 7570 7469 6f6e 0a20  igh_disruption. 
│ │ │ -001a9e50: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ -001a9e60: 790a 2020 2d20 6d65 6469 756d 5f73 6576  y.  - medium_sev
│ │ │ -001a9e70: 6572 6974 790a 2020 2d20 6d6f 756e 745f  erity.  - mount_
│ │ │ -001a9e80: 6f70 7469 6f6e 5f76 6172 5f6c 6f67 5f61  option_var_log_a
│ │ │ -001a9e90: 7564 6974 5f6e 6f64 6576 0a20 202d 206e  udit_nodev.  - n
│ │ │ -001a9ea0: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ -001a9eb0: 0a2d 206e 616d 653a 2027 4164 6420 6e6f  .- name: 'Add no
│ │ │ -001a9ec0: 6465 7620 4f70 7469 6f6e 2074 6f20 2f76  dev Option to /v
│ │ │ -001a9ed0: 6172 2f6c 6f67 2f61 7564 6974 3a20 4372  ar/log/audit: Cr
│ │ │ -001a9ee0: 6561 7465 206d 6f75 6e74 5f69 6e66 6f20  eate mount_info 
│ │ │ -001a9ef0: 6469 6374 696f 6e61 7279 2076 6172 6961  dictionary varia
│ │ │ -001a9f00: 626c 6527 0a20 2073 6574 5f66 6163 743a  ble'.  set_fact:
│ │ │ -001a9f10: 0a20 2020 206d 6f75 6e74 5f69 6e66 6f3a  .    mount_info:
│ │ │ -001a9f20: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f7c   '{{ mount_info|
│ │ │ -001a9f30: 6465 6661 756c 7428 7b7d 297c 636f 6d62  default({})|comb
│ │ │ -001a9f40: 696e 6528 7b69 7465 6d2e 303a 2069 7465  ine({item.0: ite
│ │ │ -001a9f50: 6d2e 317d 2920 7d7d 270a 2020 7769 7468  m.1}) }}'.  with
│ │ │ -001a9f60: 5f74 6f67 6574 6865 723a 0a20 202d 2027  _together:.  - '
│ │ │ -001a9f70: 7b7b 2064 6576 6963 655f 6e61 6d65 2e73  {{ device_name.s
│ │ │ -001a9f80: 7464 6f75 745f 6c69 6e65 735b 305d 2e73  tdout_lines[0].s
│ │ │ -001a9f90: 706c 6974 2829 207c 206d 6170 2827 276c  plit() | map(''l
│ │ │ -001a9fa0: 6f77 6572 2727 2920 7c20 6c69 7374 207d  ower'') | list }
│ │ │ -001a9fb0: 7d27 0a20 202d 2027 7b7b 2064 6576 6963  }'.  - '{{ devic
│ │ │ -001a9fc0: 655f 6e61 6d65 2e73 7464 6f75 745f 6c69  e_name.stdout_li
│ │ │ -001a9fd0: 6e65 735b 315d 2e73 706c 6974 2829 207c  nes[1].split() |
│ │ │ -001a9fe0: 206c 6973 7420 7d7d 270a 2020 7768 656e   list }}'.  when
│ │ │ -001a9ff0: 3a0a 2020 2d20 2820 6e6f 7420 2820 226b  :.  - ( not ( "k
│ │ │ -001aa000: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ -001aa010: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001aa020: 2061 6e64 2022 626f 6f74 6322 2069 6e20   and "bootc" in 
│ │ │ -001aa030: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001aa040: 636b 6167 6573 0a20 2020 2061 6e64 206e  ckages.    and n
│ │ │ -001aa050: 6f74 2022 6f70 656e 7368 6966 742d 6b75  ot "openshift-ku
│ │ │ -001aa060: 6265 6c65 7422 2069 6e20 616e 7369 626c  belet" in ansibl
│ │ │ -001aa070: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001aa080: 2061 6e64 2022 6f73 7472 6565 2220 696e   and "ostree" in
│ │ │ -001aa090: 2061 6e73 6962 6c65 5f70 726f 635f 636d   ansible_proc_cm
│ │ │ -001aa0a0: 646c 696e 650a 2020 2020 2920 616e 6420  dline.    ) and 
│ │ │ -001aa0b0: 6e6f 7420 2820 616e 7369 626c 655f 7669  not ( ansible_vi
│ │ │ -001aa0c0: 7274 7561 6c69 7a61 7469 6f6e 5f74 7970  rtualization_typ
│ │ │ -001aa0d0: 6520 696e 205b 2264 6f63 6b65 7222 2c20  e in ["docker", 
│ │ │ -001aa0e0: 226c 7863 222c 2022 6f70 656e 767a 222c  "lxc", "openvz",
│ │ │ -001aa0f0: 2022 706f 646d 616e 222c 0a20 2020 2022   "podman",.    "
│ │ │ -001aa100: 636f 6e74 6169 6e65 7222 5d20 2920 290a  container"] ) ).
│ │ │ -001aa110: 2020 2d20 2722 2f76 6172 2f6c 6f67 2f61    - '"/var/log/a
│ │ │ -001aa120: 7564 6974 2220 696e 2061 6e73 6962 6c65  udit" in ansible
│ │ │ -001aa130: 5f6d 6f75 6e74 7320 7c20 6d61 7028 6174  _mounts | map(at
│ │ │ -001aa140: 7472 6962 7574 653d 226d 6f75 6e74 2229  tribute="mount")
│ │ │ -001aa150: 207c 206c 6973 7427 0a20 202d 2064 6576   | list'.  - dev
│ │ │ -001aa160: 6963 655f 6e61 6d65 2e73 7464 6f75 7420  ice_name.stdout 
│ │ │ -001aa170: 6973 2064 6566 696e 6564 2061 6e64 2064  is defined and d
│ │ │ -001aa180: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ -001aa190: 745f 6c69 6e65 7320 6973 2064 6566 696e  t_lines is defin
│ │ │ -001aa1a0: 6564 0a20 202d 2028 6465 7669 6365 5f6e  ed.  - (device_n
│ │ │ -001aa1b0: 616d 652e 7374 646f 7574 207c 206c 656e  ame.stdout | len
│ │ │ -001aa1c0: 6774 6820 2667 743b 2030 290a 2020 7461  gth > 0).  ta
│ │ │ -001aa1d0: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030  gs:.  - NIST-800
│ │ │ -001aa1e0: 2d35 332d 4143 2d36 0a20 202d 204e 4953  -53-AC-6.  - NIS
│ │ │ -001aa1f0: 542d 3830 302d 3533 2d41 432d 3628 3129  T-800-53-AC-6(1)
│ │ │ -001aa200: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001aa210: 2d43 4d2d 3628 6129 0a20 202d 204e 4953  -CM-6(a).  - NIS
│ │ │ -001aa220: 542d 3830 302d 3533 2d43 4d2d 3728 6129  T-800-53-CM-7(a)
│ │ │ -001aa230: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001aa240: 2d43 4d2d 3728 6229 0a20 202d 204e 4953  -CM-7(b).  - NIS
│ │ │ -001aa250: 542d 3830 302d 3533 2d4d 502d 370a 2020  T-800-53-MP-7.  
│ │ │ -001aa260: 2d20 636f 6e66 6967 7572 655f 7374 7261  - configure_stra
│ │ │ -001aa270: 7465 6779 0a20 202d 2068 6967 685f 6469  tegy.  - high_di
│ │ │ -001aa280: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ -001aa290: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ -001aa2a0: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ -001aa2b0: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e    - mount_option
│ │ │ -001aa2c0: 5f76 6172 5f6c 6f67 5f61 7564 6974 5f6e  _var_log_audit_n
│ │ │ -001aa2d0: 6f64 6576 0a20 202d 206e 6f5f 7265 626f  odev.  - no_rebo
│ │ │ -001aa2e0: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d  ot_needed..- nam
│ │ │ -001aa2f0: 653a 2027 4164 6420 6e6f 6465 7620 4f70  e: 'Add nodev Op
│ │ │ -001aa300: 7469 6f6e 2074 6f20 2f76 6172 2f6c 6f67  tion to /var/log
│ │ │ -001aa310: 2f61 7564 6974 3a20 4966 202f 7661 722f  /audit: If /var/
│ │ │ -001aa320: 6c6f 672f 6175 6469 7420 6e6f 7420 6d6f  log/audit not mo
│ │ │ -001aa330: 756e 7465 642c 2063 7261 6674 0a20 2020  unted, craft.   
│ │ │ -001aa340: 206d 6f75 6e74 5f69 6e66 6f20 6d61 6e75   mount_info manu
│ │ │ -001aa350: 616c 6c79 270a 2020 7365 745f 6661 6374  ally'.  set_fact
│ │ │ -001aa360: 3a0a 2020 2020 6d6f 756e 745f 696e 666f  :.    mount_info
│ │ │ -001aa370: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ -001aa380: 7c64 6566 6175 6c74 287b 7d29 7c63 6f6d  |default({})|com
│ │ │ -001aa390: 6269 6e65 287b 6974 656d 2e30 3a20 6974  bine({item.0: it
│ │ │ -001aa3a0: 656d 2e31 7d29 207d 7d27 0a20 2077 6974  em.1}) }}'.  wit
│ │ │ -001aa3b0: 685f 746f 6765 7468 6572 3a0a 2020 2d20  h_together:.  - 
│ │ │ -001aa3c0: 2d20 7461 7267 6574 0a20 2020 202d 2073  - target.    - s
│ │ │ -001aa3d0: 6f75 7263 650a 2020 2020 2d20 6673 7479  ource.    - fsty
│ │ │ -001aa3e0: 7065 0a20 2020 202d 206f 7074 696f 6e73  pe.    - options
│ │ │ -001aa3f0: 0a20 202d 202d 202f 7661 722f 6c6f 672f  .  - - /var/log/
│ │ │ -001aa400: 6175 6469 740a 2020 2020 2d20 2727 0a20  audit.    - ''. 
│ │ │ -001aa410: 2020 202d 2027 270a 2020 2020 2d20 6465     - ''.    - de
│ │ │ -001aa420: 6661 756c 7473 0a20 2077 6865 6e3a 0a20  faults.  when:. 
│ │ │ -001aa430: 202d 2028 206e 6f74 2028 2022 6b65 726e   - ( not ( "kern
│ │ │ -001aa440: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ -001aa450: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ -001aa460: 6420 2262 6f6f 7463 2220 696e 2061 6e73  d "bootc" in ans
│ │ │ -001aa470: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001aa480: 6765 730a 2020 2020 616e 6420 6e6f 7420  ges.    and not 
│ │ │ -001aa490: 226f 7065 6e73 6869 6674 2d6b 7562 656c  "openshift-kubel
│ │ │ -001aa4a0: 6574 2220 696e 2061 6e73 6962 6c65 5f66  et" in ansible_f
│ │ │ -001aa4b0: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ -001aa4c0: 6420 226f 7374 7265 6522 2069 6e20 616e  d "ostree" in an
│ │ │ -001aa4d0: 7369 626c 655f 7072 6f63 5f63 6d64 6c69  sible_proc_cmdli
│ │ │ -001aa4e0: 6e65 0a20 2020 2029 2061 6e64 206e 6f74  ne.    ) and not
│ │ │ -001aa4f0: 2028 2061 6e73 6962 6c65 5f76 6972 7475   ( ansible_virtu
│ │ │ -001aa500: 616c 697a 6174 696f 6e5f 7479 7065 2069  alization_type i
│ │ │ -001aa510: 6e20 5b22 646f 636b 6572 222c 2022 6c78  n ["docker", "lx
│ │ │ -001aa520: 6322 2c20 226f 7065 6e76 7a22 2c20 2270  c", "openvz", "p
│ │ │ -001aa530: 6f64 6d61 6e22 2c0a 2020 2020 2263 6f6e  odman",.    "con
│ │ │ -001aa540: 7461 696e 6572 225d 2029 2029 0a20 202d  tainer"] ) ).  -
│ │ │ -001aa550: 2027 222f 7661 722f 6c6f 672f 6175 6469   '"/var/log/audi
│ │ │ -001aa560: 7422 2069 6e20 616e 7369 626c 655f 6d6f  t" in ansible_mo
│ │ │ -001aa570: 756e 7473 207c 206d 6170 2861 7474 7269  unts | map(attri
│ │ │ -001aa580: 6275 7465 3d22 6d6f 756e 7422 2920 7c20  bute="mount") | 
│ │ │ -001aa590: 6c69 7374 270a 2020 2d20 2822 2d2d 6673  list'.  - ("--fs
│ │ │ -001aa5a0: 7461 6222 207c 206c 656e 6774 6820 3d3d  tab" | length ==
│ │ │ -001aa5b0: 2030 290a 2020 2d20 6465 7669 6365 5f6e   0).  - device_n
│ │ │ -001aa5c0: 616d 652e 7374 646f 7574 2069 7320 6465  ame.stdout is de
│ │ │ -001aa5d0: 6669 6e65 6420 616e 6420 6465 7669 6365  fined and device
│ │ │ -001aa5e0: 5f6e 616d 652e 7374 646f 7574 5f6c 696e  _name.stdout_lin
│ │ │ -001aa5f0: 6573 2069 7320 6465 6669 6e65 640a 2020  es is defined.  
│ │ │ -001aa600: 2d20 2864 6576 6963 655f 6e61 6d65 2e73  - (device_name.s
│ │ │ -001aa610: 7464 6f75 7420 7c20 6c65 6e67 7468 203d  tdout | length =
│ │ │ -001aa620: 3d20 3029 0a20 2074 6167 733a 0a20 202d  = 0).  tags:.  -
│ │ │ -001aa630: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ -001aa640: 360a 2020 2d20 4e49 5354 2d38 3030 2d35  6.  - NIST-800-5
│ │ │ -001aa650: 332d 4143 2d36 2831 290a 2020 2d20 4e49  3-AC-6(1).  - NI
│ │ │ -001aa660: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ -001aa670: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -001aa680: 332d 434d 2d37 2861 290a 2020 2d20 4e49  3-CM-7(a).  - NI
│ │ │ -001aa690: 5354 2d38 3030 2d35 332d 434d 2d37 2862  ST-800-53-CM-7(b
│ │ │ -001aa6a0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -001aa6b0: 332d 4d50 2d37 0a20 202d 2063 6f6e 6669  3-MP-7.  - confi
│ │ │ -001aa6c0: 6775 7265 5f73 7472 6174 6567 790a 2020  gure_strategy.  
│ │ │ -001aa6d0: 2d20 6869 6768 5f64 6973 7275 7074 696f  - high_disruptio
│ │ │ -001aa6e0: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65  n.  - low_comple
│ │ │ -001aa6f0: 7869 7479 0a20 202d 206d 6564 6975 6d5f  xity.  - medium_
│ │ │ -001aa700: 7365 7665 7269 7479 0a20 202d 206d 6f75  severity.  - mou
│ │ │ -001aa710: 6e74 5f6f 7074 696f 6e5f 7661 725f 6c6f  nt_option_var_lo
│ │ │ -001aa720: 675f 6175 6469 745f 6e6f 6465 760a 2020  g_audit_nodev.  
│ │ │ -001aa730: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ -001aa740: 6564 0a0a 2d20 6e61 6d65 3a20 2741 6464  ed..- name: 'Add
│ │ │ -001aa750: 206e 6f64 6576 204f 7074 696f 6e20 746f   nodev Option to
│ │ │ -001aa760: 202f 7661 722f 6c6f 672f 6175 6469 743a   /var/log/audit:
│ │ │ -001aa770: 204d 616b 6520 7375 7265 206e 6f64 6576   Make sure nodev
│ │ │ -001aa780: 206f 7074 696f 6e20 6973 2070 6172 7420   option is part 
│ │ │ -001aa790: 6f66 2074 6865 0a20 2020 2074 6f20 2f76  of the.    to /v
│ │ │ -001aa7a0: 6172 2f6c 6f67 2f61 7564 6974 206f 7074  ar/log/audit opt
│ │ │ -001aa7b0: 696f 6e73 270a 2020 7365 745f 6661 6374  ions'.  set_fact
│ │ │ -001aa7c0: 3a0a 2020 2020 6d6f 756e 745f 696e 666f  :.    mount_info
│ │ │ -001aa7d0: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ -001aa7e0: 207c 2063 6f6d 6269 6e65 2820 7b27 276f   | combine( {''o
│ │ │ -001aa7f0: 7074 696f 6e73 2727 3a27 2727 277e 286d  ptions'':''''~(m
│ │ │ -001aa800: 6f75 6e74 5f69 6e66 6f2e 6f70 7469 6f6e  ount_info.option
│ │ │ -001aa810: 7320 7c0a 2020 2020 2020 6465 6661 756c  s |.      defaul
│ │ │ -001aa820: 7428 2727 2727 2929 7e28 2727 2c27 2720  t(''''))~('','' 
│ │ │ -001aa830: 6966 2028 6d6f 756e 745f 696e 666f 2e6f  if (mount_info.o
│ │ │ -001aa840: 7074 696f 6e73 207c 2064 6566 6175 6c74  ptions | default
│ │ │ -001aa850: 2827 2727 2729 2920 656c 7365 2027 2727  ('''')) else '''
│ │ │ -001aa860: 2729 7e27 276e 6f64 6576 2727 0a20 2020  ')~''nodev''.   
│ │ │ -001aa870: 2020 207d 2920 7d7d 270a 2020 7768 656e     }) }}'.  when
│ │ │ -001aa880: 3a0a 2020 2d20 2820 6e6f 7420 2820 226b  :.  - ( not ( "k
│ │ │ -001aa890: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ -001aa8a0: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001aa8b0: 2061 6e64 2022 626f 6f74 6322 2069 6e20   and "bootc" in 
│ │ │ -001aa8c0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001aa8d0: 636b 6167 6573 0a20 2020 2061 6e64 206e  ckages.    and n
│ │ │ -001aa8e0: 6f74 2022 6f70 656e 7368 6966 742d 6b75  ot "openshift-ku
│ │ │ -001aa8f0: 6265 6c65 7422 2069 6e20 616e 7369 626c  belet" in ansibl
│ │ │ -001aa900: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001aa910: 2061 6e64 2022 6f73 7472 6565 2220 696e   and "ostree" in
│ │ │ -001aa920: 2061 6e73 6962 6c65 5f70 726f 635f 636d   ansible_proc_cm
│ │ │ -001aa930: 646c 696e 650a 2020 2020 2920 616e 6420  dline.    ) and 
│ │ │ -001aa940: 6e6f 7420 2820 616e 7369 626c 655f 7669  not ( ansible_vi
│ │ │ -001aa950: 7274 7561 6c69 7a61 7469 6f6e 5f74 7970  rtualization_typ
│ │ │ -001aa960: 6520 696e 205b 2264 6f63 6b65 7222 2c20  e in ["docker", 
│ │ │ -001aa970: 226c 7863 222c 2022 6f70 656e 767a 222c  "lxc", "openvz",
│ │ │ -001aa980: 2022 706f 646d 616e 222c 0a20 2020 2022   "podman",.    "
│ │ │ -001aa990: 636f 6e74 6169 6e65 7222 5d20 2920 290a  container"] ) ).
│ │ │ -001aa9a0: 2020 2d20 2722 2f76 6172 2f6c 6f67 2f61    - '"/var/log/a
│ │ │ -001aa9b0: 7564 6974 2220 696e 2061 6e73 6962 6c65  udit" in ansible
│ │ │ -001aa9c0: 5f6d 6f75 6e74 7320 7c20 6d61 7028 6174  _mounts | map(at
│ │ │ -001aa9d0: 7472 6962 7574 653d 226d 6f75 6e74 2229  tribute="mount")
│ │ │ -001aa9e0: 207c 206c 6973 7427 0a20 202d 206d 6f75   | list'.  - mou
│ │ │ -001aa9f0: 6e74 5f69 6e66 6f20 6973 2064 6566 696e  nt_info is defin
│ │ │ -001aaa00: 6564 2061 6e64 2022 6e6f 6465 7622 206e  ed and "nodev" n
│ │ │ -001aaa10: 6f74 2069 6e20 286d 6f75 6e74 5f69 6e66  ot in (mount_inf
│ │ │ -001aaa20: 6f2e 6f70 7469 6f6e 7320 7c20 6465 6661  o.options | defa
│ │ │ -001aaa30: 756c 7428 2727 2929 0a20 2074 6167 733a  ult('')).  tags:
│ │ │ -001aaa40: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001aaa50: 2d41 432d 360a 2020 2d20 4e49 5354 2d38  -AC-6.  - NIST-8
│ │ │ -001aaa60: 3030 2d35 332d 4143 2d36 2831 290a 2020  00-53-AC-6(1).  
│ │ │ -001aaa70: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -001aaa80: 2d36 2861 290a 2020 2d20 4e49 5354 2d38  -6(a).  - NIST-8
│ │ │ -001aaa90: 3030 2d35 332d 434d 2d37 2861 290a 2020  00-53-CM-7(a).  
│ │ │ -001aaaa0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -001aaab0: 2d37 2862 290a 2020 2d20 4e49 5354 2d38  -7(b).  - NIST-8
│ │ │ -001aaac0: 3030 2d35 332d 4d50 2d37 0a20 202d 2063  00-53-MP-7.  - c
│ │ │ -001aaad0: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ -001aaae0: 790a 2020 2d20 6869 6768 5f64 6973 7275  y.  - high_disru
│ │ │ -001aaaf0: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f  ption.  - low_co
│ │ │ -001aab00: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ -001aab10: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ -001aab20: 206d 6f75 6e74 5f6f 7074 696f 6e5f 7661   mount_option_va
│ │ │ -001aab30: 725f 6c6f 675f 6175 6469 745f 6e6f 6465  r_log_audit_node
│ │ │ -001aab40: 760a 2020 2d20 6e6f 5f72 6562 6f6f 745f  v.  - no_reboot_
│ │ │ -001aab50: 6e65 6564 6564 0a0a 2d20 6e61 6d65 3a20  needed..- name: 
│ │ │ -001aab60: 2741 6464 206e 6f64 6576 204f 7074 696f  'Add nodev Optio
│ │ │ -001aab70: 6e20 746f 202f 7661 722f 6c6f 672f 6175  n to /var/log/au
│ │ │ -001aab80: 6469 743a 2045 6e73 7572 6520 2f76 6172  dit: Ensure /var
│ │ │ -001aab90: 2f6c 6f67 2f61 7564 6974 2069 7320 6d6f  /log/audit is mo
│ │ │ -001aaba0: 756e 7465 6420 7769 7468 0a20 2020 206e  unted with.    n
│ │ │ -001aabb0: 6f64 6576 206f 7074 696f 6e27 0a20 2061  odev option'.  a
│ │ │ -001aabc0: 6e73 6962 6c65 2e70 6f73 6978 2e6d 6f75  nsible.posix.mou
│ │ │ -001aabd0: 6e74 3a0a 2020 2020 7061 7468 3a20 2f76  nt:.    path: /v
│ │ │ -001aabe0: 6172 2f6c 6f67 2f61 7564 6974 0a20 2020  ar/log/audit.   
│ │ │ -001aabf0: 2073 7263 3a20 277b 7b20 6d6f 756e 745f   src: '{{ mount_
│ │ │ -001aac00: 696e 666f 2e73 6f75 7263 6520 7c20 6465  info.source | de
│ │ │ -001aac10: 6661 756c 7428 2727 2727 2920 7d7d 270a  fault('''') }}'.
│ │ │ -001aac20: 2020 2020 6f70 7473 3a20 277b 7b20 6d6f      opts: '{{ mo
│ │ │ -001aac30: 756e 745f 696e 666f 2e6f 7074 696f 6e73  unt_info.options
│ │ │ -001aac40: 207c 2064 6566 6175 6c74 2827 2727 2729   | default('''')
│ │ │ -001aac50: 207d 7d27 0a20 2020 2073 7461 7465 3a20   }}'.    state: 
│ │ │ -001aac60: 6d6f 756e 7465 640a 2020 2020 6673 7479  mounted.    fsty
│ │ │ -001aac70: 7065 3a20 277b 7b20 6d6f 756e 745f 696e  pe: '{{ mount_in
│ │ │ -001aac80: 666f 2e66 7374 7970 6520 7c20 6465 6661  fo.fstype | defa
│ │ │ -001aac90: 756c 7428 2727 2727 2920 7d7d 270a 2020  ult('''') }}'.  
│ │ │ -001aaca0: 7265 6769 7374 6572 3a20 6d6f 756e 745f  register: mount_
│ │ │ -001aacb0: 7265 7375 6c74 0a20 2066 6169 6c65 645f  result.  failed_
│ │ │ -001aacc0: 7768 656e 3a0a 2020 2d20 6d6f 756e 745f  when:.  - mount_
│ │ │ -001aacd0: 7265 7375 6c74 2069 7320 6661 696c 6564  result is failed
│ │ │ -001aace0: 0a20 202d 2027 2727 7461 7267 6574 2069  .  - '''target i
│ │ │ -001aacf0: 7320 6275 7379 2727 206e 6f74 2069 6e20  s busy'' not in 
│ │ │ -001aad00: 286d 6f75 6e74 5f72 6573 756c 742e 6d73  (mount_result.ms
│ │ │ -001aad10: 6720 7c20 6465 6661 756c 7428 2727 2727  g | default(''''
│ │ │ -001aad20: 2929 270a 2020 2d20 2727 2761 6c72 6561  ))'.  - '''alrea
│ │ │ -001aad30: 6479 206d 6f75 6e74 6564 2727 206e 6f74  dy mounted'' not
│ │ │ -001aad40: 2069 6e20 286d 6f75 6e74 5f72 6573 756c   in (mount_resul
│ │ │ -001aad50: 742e 6d73 6720 7c20 6465 6661 756c 7428  t.msg | default(
│ │ │ -001aad60: 2727 2727 2929 270a 2020 7768 656e 3a0a  ''''))'.  when:.
│ │ │ -001aad70: 2020 2d20 2820 6e6f 7420 2820 226b 6572    - ( not ( "ker
│ │ │ -001aad80: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ -001aad90: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ -001aada0: 6e64 2022 626f 6f74 6322 2069 6e20 616e  nd "bootc" in an
│ │ │ -001aadb0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001aadc0: 6167 6573 0a20 2020 2061 6e64 206e 6f74  ages.    and not
│ │ │ -001aadd0: 2022 6f70 656e 7368 6966 742d 6b75 6265   "openshift-kube
│ │ │ -001aade0: 6c65 7422 2069 6e20 616e 7369 626c 655f  let" in ansible_
│ │ │ -001aadf0: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ -001aae00: 6e64 2022 6f73 7472 6565 2220 696e 2061  nd "ostree" in a
│ │ │ -001aae10: 6e73 6962 6c65 5f70 726f 635f 636d 646c  nsible_proc_cmdl
│ │ │ -001aae20: 696e 650a 2020 2020 2920 616e 6420 6e6f  ine.    ) and no
│ │ │ -001aae30: 7420 2820 616e 7369 626c 655f 7669 7274  t ( ansible_virt
│ │ │ -001aae40: 7561 6c69 7a61 7469 6f6e 5f74 7970 6520  ualization_type 
│ │ │ -001aae50: 696e 205b 2264 6f63 6b65 7222 2c20 226c  in ["docker", "l
│ │ │ -001aae60: 7863 222c 2022 6f70 656e 767a 222c 2022  xc", "openvz", "
│ │ │ -001aae70: 706f 646d 616e 222c 0a20 2020 2022 636f  podman",.    "co
│ │ │ -001aae80: 6e74 6169 6e65 7222 5d20 2920 290a 2020  ntainer"] ) ).  
│ │ │ -001aae90: 2d20 2722 2f76 6172 2f6c 6f67 2f61 7564  - '"/var/log/aud
│ │ │ -001aaea0: 6974 2220 696e 2061 6e73 6962 6c65 5f6d  it" in ansible_m
│ │ │ -001aaeb0: 6f75 6e74 7320 7c20 6d61 7028 6174 7472  ounts | map(attr
│ │ │ -001aaec0: 6962 7574 653d 226d 6f75 6e74 2229 207c  ibute="mount") |
│ │ │ -001aaed0: 206c 6973 7427 0a20 202d 206d 6f75 6e74   list'.  - mount
│ │ │ -001aaee0: 5f69 6e66 6f20 6973 2064 6566 696e 6564  _info is defined
│ │ │ -001aaef0: 0a20 202d 2028 6465 7669 6365 5f6e 616d  .  - (device_nam
│ │ │ -001aaf00: 652e 7374 646f 7574 2069 7320 6465 6669  e.stdout is defi
│ │ │ -001aaf10: 6e65 6420 616e 6420 2864 6576 6963 655f  ned and (device_
│ │ │ -001aaf20: 6e61 6d65 2e73 7464 6f75 7420 7c20 6c65  name.stdout | le
│ │ │ -001aaf30: 6e67 7468 2026 6774 3b20 3029 2920 6f72  ngth > 0)) or
│ │ │ -001aaf40: 2028 222d 2d66 7374 6162 220a 2020 2020   ("--fstab".    
│ │ │ -001aaf50: 7c20 6c65 6e67 7468 203d 3d20 3029 0a20  | length == 0). 
│ │ │ -001aaf60: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ -001aaf70: 3830 302d 3533 2d41 432d 360a 2020 2d20  800-53-AC-6.  - 
│ │ │ -001aaf80: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ -001aaf90: 2831 290a 2020 2d20 4e49 5354 2d38 3030  (1).  - NIST-800
│ │ │ -001aafa0: 2d35 332d 434d 2d36 2861 290a 2020 2d20  -53-CM-6(a).  - 
│ │ │ -001aafb0: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ -001aafc0: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ -001aafd0: 2d35 332d 434d 2d37 2862 290a 2020 2d20  -53-CM-7(b).  - 
│ │ │ -001aafe0: 4e49 5354 2d38 3030 2d35 332d 4d50 2d37  NIST-800-53-MP-7
│ │ │ -001aaff0: 0a20 202d 2063 6f6e 6669 6775 7265 5f73  .  - configure_s
│ │ │ -001ab000: 7472 6174 6567 790a 2020 2d20 6869 6768  trategy.  - high
│ │ │ -001ab010: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ -001ab020: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ -001ab030: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ -001ab040: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074  ty.  - mount_opt
│ │ │ -001ab050: 696f 6e5f 7661 725f 6c6f 675f 6175 6469  ion_var_log_audi
│ │ │ -001ab060: 745f 6e6f 6465 760a 2020 2d20 6e6f 5f72  t_nodev.  - no_r
│ │ │ -001ab070: 6562 6f6f 745f 6e65 6564 6564 0a3c 2f63  eboot_needed.
│ │ │ -001ab090: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ -001ab130: 6564 6961 7469 6f6e 2053 6865 6c6c 2073 ediation Shell s │ │ │ -001ab140: 6372 6970 7420 e287 b23c 2f61 3e3c 6272 cript ...
# R
│ │ │ -001ab200: 656d 6564 6961 7469 6f6e 2069 7320 6170  emediation is ap
│ │ │ -001ab210: 706c 6963 6162 6c65 206f 6e6c 7920 696e  plicable only in
│ │ │ -001ab220: 2063 6572 7461 696e 2070 6c61 7466 6f72   certain platfor
│ │ │ -001ab230: 6d73 0a69 6620 2820 2120 2820 7b20 7270  ms.if ( ! ( { rp
│ │ │ -001ab240: 6d20 2d2d 7175 6965 7420 2d71 206b 6572  m --quiet -q ker
│ │ │ -001ab250: 6e65 6c20 3b7d 2026 616d 703b 2661 6d70  nel ;} &&
│ │ │ -001ab260: 3b20 7b20 7270 6d20 2d2d 7175 6965 7420  ; { rpm --quiet 
│ │ │ -001ab270: 2d71 2062 6f6f 7463 203b 7d20 2661 6d70  -q bootc ;} &
│ │ │ -001ab280: 3b26 616d 703b 207b 2021 2072 706d 202d  ;& { ! rpm -
│ │ │ -001ab290: 2d71 7569 6574 202d 7120 6f70 656e 7368  -quiet -q opensh
│ │ │ -001ab2a0: 6966 742d 6b75 6265 6c65 7420 3b7d 2026  ift-kubelet ;} &
│ │ │ -001ab2b0: 616d 703b 2661 6d70 3b20 285b 202d 6620  amp;& ([ -f 
│ │ │ -001ab2c0: 2f72 756e 2f6f 7374 7265 652d 626f 6f74  /run/ostree-boot
│ │ │ -001ab2d0: 6564 205d 207c 7c20 5b20 2d4c 202f 6f73  ed ] || [ -L /os
│ │ │ -001ab2e0: 7472 6565 205d 2920 2920 2661 6d70 3b26  tree ]) ) &&
│ │ │ -001ab2f0: 616d 703b 2021 2028 205b 202d 6620 2f2e  amp; ! ( [ -f /.
│ │ │ -001ab300: 646f 636b 6572 656e 7620 5d20 7c7c 205b  dockerenv ] || [
│ │ │ -001ab310: 202d 6620 2f72 756e 2f2e 636f 6e74 6169   -f /run/.contai
│ │ │ -001ab320: 6e65 7265 6e76 205d 2029 2029 2026 616d  nerenv ] ) ) &am
│ │ │ -001ab330: 703b 2661 6d70 3b20 7b20 2820 6669 6e64  p;& { ( find
│ │ │ -001ab340: 6d6e 7420 2d2d 6b65 726e 656c 2022 2f76  mnt --kernel "/v
│ │ │ -001ab350: 6172 2f6c 6f67 2f61 7564 6974 2220 2667  ar/log/audit" &g
│ │ │ -001ab360: 743b 202f 6465 762f 6e75 6c6c 207c 7c20  t; /dev/null || 
│ │ │ -001ab370: 6669 6e64 6d6e 7420 2d2d 6673 7461 6220  findmnt --fstab 
│ │ │ -001ab380: 222f 7661 722f 6c6f 672f 6175 6469 7422  "/var/log/audit"
│ │ │ -001ab390: 2026 6774 3b20 2f64 6576 2f6e 756c 6c20   > /dev/null 
│ │ │ -001ab3a0: 293b 207d 3b20 7468 656e 0a0a 6675 6e63  ); }; then..func
│ │ │ -001ab3b0: 7469 6f6e 2070 6572 666f 726d 5f72 656d  tion perform_rem
│ │ │ -001ab3c0: 6564 6961 7469 6f6e 207b 0a0a 2020 2020  ediation {..    
│ │ │ -001ab3d0: 0a20 2020 2020 2020 2023 2074 6865 206d  .        # the m
│ │ │ -001ab3e0: 6f75 6e74 2070 6f69 6e74 202f 7661 722f  ount point /var/
│ │ │ -001ab3f0: 6c6f 672f 6175 6469 7420 6861 7320 746f  log/audit has to
│ │ │ -001ab400: 2062 6520 6465 6669 6e65 6420 696e 202f   be defined in /
│ │ │ -001ab410: 6574 632f 6673 7461 620a 2020 2020 2020  etc/fstab.      
│ │ │ -001ab420: 2020 2320 6265 666f 7265 2074 6869 7320    # before this 
│ │ │ -001ab430: 7265 6d65 6469 6174 696f 6e20 6361 6e20  remediation can 
│ │ │ -001ab440: 6265 2065 7865 6375 7465 642e 2049 6e20  be executed. In 
│ │ │ -001ab450: 6361 7365 2069 7420 6973 206e 6f74 2064  case it is not d
│ │ │ -001ab460: 6566 696e 6564 2c20 7468 650a 2020 2020  efined, the.    
│ │ │ -001ab470: 2020 2020 2320 7265 6d65 6469 6174 696f      # remediatio
│ │ │ -001ab480: 6e20 6162 6f72 7473 2061 6e64 206e 6f20  n aborts and no 
│ │ │ -001ab490: 6368 616e 6765 7320 7265 6761 7264 696e  changes regardin
│ │ │ -001ab4a0: 6720 7468 6520 6d6f 756e 7420 706f 696e  g the mount poin
│ │ │ -001ab4b0: 7420 6172 6520 646f 6e65 2e0a 2020 2020  t are done..    
│ │ │ -001ab4c0: 2020 2020 6d6f 756e 745f 706f 696e 745f      mount_point_
│ │ │ -001ab4d0: 6d61 7463 685f 7265 6765 7870 3d22 2428  match_regexp="$(
│ │ │ -001ab4e0: 7072 696e 7466 2022 5e5b 5b3a 7370 6163  printf "^[[:spac
│ │ │ -001ab4f0: 653a 5d5d 2a5b 5e23 5d2e 2a5b 5b3a 7370  e:]]*[^#].*[[:sp
│ │ │ -001ab500: 6163 653a 5d5d 2573 5b5b 3a73 7061 6365  ace:]]%s[[:space
│ │ │ -001ab510: 3a5d 5d22 2022 2f76 6172 2f6c 6f67 2f61  :]]" "/var/log/a
│ │ │ -001ab520: 7564 6974 2229 220a 0a20 2020 2067 7265  udit")"..    gre
│ │ │ -001ab530: 7020 2224 6d6f 756e 745f 706f 696e 745f  p "$mount_point_
│ │ │ -001ab540: 6d61 7463 685f 7265 6765 7870 2220 2d71  match_regexp" -q
│ │ │ -001ab550: 202f 6574 632f 6673 7461 6220 5c0a 2020   /etc/fstab \.  
│ │ │ -001ab560: 2020 2020 2020 7c7c 207b 2065 6368 6f20        || { echo 
│ │ │ -001ab570: 2254 6865 206d 6f75 6e74 2070 6f69 6e74  "The mount point
│ │ │ -001ab580: 2027 2f76 6172 2f6c 6f67 2f61 7564 6974   '/var/log/audit
│ │ │ -001ab590: 2720 6973 206e 6f74 2065 7665 6e20 696e  ' is not even in
│ │ │ -001ab5a0: 202f 6574 632f 6673 7461 622c 2073 6f20   /etc/fstab, so 
│ │ │ -001ab5b0: 7765 2063 616e 2774 2073 6574 2075 7020  we can't set up 
│ │ │ -001ab5c0: 6d6f 756e 7420 6f70 7469 6f6e 7322 2026  mount options" &
│ │ │ -001ab5d0: 6774 3b26 616d 703b 323b 0a20 2020 2020  gt;&2;.     
│ │ │ -001ab5e0: 2020 2020 2020 2020 2020 2065 6368 6f20             echo 
│ │ │ -001ab5f0: 224e 6f74 2072 656d 6564 6961 7469 6e67  "Not remediating
│ │ │ -001ab600: 2c20 6265 6361 7573 6520 7468 6572 6520  , because there 
│ │ │ -001ab610: 6973 206e 6f20 7265 636f 7264 206f 6620  is no record of 
│ │ │ -001ab620: 2f76 6172 2f6c 6f67 2f61 7564 6974 2069  /var/log/audit i
│ │ │ -001ab630: 6e20 2f65 7463 2f66 7374 6162 2220 2667  n /etc/fstab" &g
│ │ │ -001ab640: 743b 2661 6d70 3b32 3b20 7265 7475 726e  t;&2; return
│ │ │ -001ab650: 2031 3b20 7d0a 2020 2020 0a0a 0a20 2020   1; }.    ...   
│ │ │ -001ab660: 206d 6f75 6e74 5f70 6f69 6e74 5f6d 6174   mount_point_mat
│ │ │ -001ab670: 6368 5f72 6567 6578 703d 2224 2870 7269  ch_regexp="$(pri
│ │ │ -001ab680: 6e74 6620 225e 5b5b 3a73 7061 6365 3a5d  ntf "^[[:space:]
│ │ │ -001ab690: 5d2a 5b5e 235d 2e2a 5b5b 3a73 7061 6365  ]*[^#].*[[:space
│ │ │ -001ab6a0: 3a5d 5d25 735b 5b3a 7370 6163 653a 5d5d  :]]%s[[:space:]]
│ │ │ -001ab6b0: 2220 2f76 6172 2f6c 6f67 2f61 7564 6974  " /var/log/audit
│ │ │ -001ab6c0: 2922 0a0a 2020 2020 2320 4966 2074 6865  )"..    # If the
│ │ │ -001ab6d0: 206d 6f75 6e74 2070 6f69 6e74 2069 7320   mount point is 
│ │ │ -001ab6e0: 6e6f 7420 696e 202f 6574 632f 6673 7461  not in /etc/fsta
│ │ │ -001ab6f0: 622c 2067 6574 2070 7265 7669 6f75 7320  b, get previous 
│ │ │ -001ab700: 6d6f 756e 7420 6f70 7469 6f6e 7320 6672  mount options fr
│ │ │ -001ab710: 6f6d 202f 6574 632f 6d74 6162 0a20 2020  om /etc/mtab.   
│ │ │ -001ab720: 2069 6620 2120 6772 6570 202d 7120 2224   if ! grep -q "$
│ │ │ -001ab730: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ -001ab740: 685f 7265 6765 7870 2220 2f65 7463 2f66  h_regexp" /etc/f
│ │ │ -001ab750: 7374 6162 3b20 7468 656e 0a20 2020 2020  stab; then.     
│ │ │ -001ab760: 2020 2023 2072 756e 7469 6d65 206f 7074     # runtime opt
│ │ │ -001ab770: 7320 7769 7468 6f75 7420 736f 6d65 2061  s without some a
│ │ │ -001ab780: 7574 6f6d 6174 6963 206b 6572 6e65 6c2f  utomatic kernel/
│ │ │ -001ab790: 7573 6572 7370 6163 652d 6164 6465 6420  userspace-added 
│ │ │ -001ab7a0: 6465 6661 756c 7473 0a20 2020 2020 2020  defaults.       
│ │ │ -001ab7b0: 2070 7265 7669 6f75 735f 6d6f 756e 745f   previous_mount_
│ │ │ -001ab7c0: 6f70 7473 3d24 2867 7265 7020 2224 6d6f  opts=$(grep "$mo
│ │ │ -001ab7d0: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ -001ab7e0: 7265 6765 7870 2220 2f65 7463 2f6d 7461  regexp" /etc/mta
│ │ │ -001ab7f0: 6220 7c20 6865 6164 202d 3120 7c20 2061  b | head -1 |  a
│ │ │ -001ab800: 776b 2027 7b70 7269 6e74 2024 347d 2720  wk '{print $4}' 
│ │ │ -001ab810: 5c0a 2020 2020 2020 2020 2020 2020 2020  \.              
│ │ │ -001ab820: 2020 2020 2020 7c20 7365 6420 2d45 2022        | sed -E "
│ │ │ -001ab830: 732f 2872 777c 6465 6661 756c 7473 7c73  s/(rw|defaults|s
│ │ │ -001ab840: 6563 6c61 6265 6c7c 6e6f 6465 7629 282c  eclabel|nodev)(,
│ │ │ -001ab850: 7c24 292f 2f67 3b73 2f2c 242f 2f22 290a  |$)//g;s/,$//").
│ │ │ -001ab860: 2020 2020 2020 2020 5b20 2224 7072 6576          [ "$prev
│ │ │ -001ab870: 696f 7573 5f6d 6f75 6e74 5f6f 7074 7322  ious_mount_opts"
│ │ │ -001ab880: 205d 2026 616d 703b 2661 6d70 3b20 7072   ] && pr
│ │ │ -001ab890: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ -001ab8a0: 732b 3d22 2c22 0a20 2020 2020 2020 2023  s+=",".        #
│ │ │ -001ab8b0: 2049 6e20 6973 6f39 3636 3020 6669 6c65   In iso9660 file
│ │ │ -001ab8c0: 7379 7374 656d 7320 6d74 6162 2063 6f75  systems mtab cou
│ │ │ -001ab8d0: 6c64 2064 6573 6372 6962 6520 6120 2262  ld describe a "b
│ │ │ -001ab8e0: 6c6f 636b 7369 7a65 2220 7661 6c75 652c  locksize" value,
│ │ │ -001ab8f0: 2074 6869 7320 7368 6f75 6c64 2062 6520   this should be 
│ │ │ -001ab900: 7265 666c 6563 7465 6420 696e 0a20 2020  reflected in.   
│ │ │ -001ab910: 2020 2020 2023 2066 7374 6162 2061 7320       # fstab as 
│ │ │ -001ab920: 2262 6c6f 636b 222e 2020 5468 6520 6e65  "block".  The ne
│ │ │ -001ab930: 7874 2076 6172 6961 626c 6520 6973 2074  xt variable is t
│ │ │ -001ab940: 6f20 7361 7469 7366 7920 7368 656c 6c63  o satisfy shellc
│ │ │ -001ab950: 6865 636b 2053 4332 3035 302e 0a20 2020  heck SC2050..   
│ │ │ -001ab960: 2020 2020 2066 735f 7479 7065 3d22 220a       fs_type="".
│ │ │ -001ab970: 2020 2020 2020 2020 6966 205b 2020 2224          if [  "$
│ │ │ -001ab980: 6673 5f74 7970 6522 203d 3d20 2269 736f  fs_type" == "iso
│ │ │ -001ab990: 3936 3630 2220 5d20 3b20 7468 656e 0a20  9660" ] ; then. 
│ │ │ -001ab9a0: 2020 2020 2020 2020 2020 2070 7265 7669             previ
│ │ │ -001ab9b0: 6f75 735f 6d6f 756e 745f 6f70 7473 3d24  ous_mount_opts=$
│ │ │ -001ab9c0: 2873 6564 2027 732f 626c 6f63 6b73 697a  (sed 's/blocksiz
│ │ │ -001ab9d0: 653d 2f62 6c6f 636b 3d2f 2720 266c 743b  e=/block=/' <
│ │ │ -001ab9e0: 266c 743b 266c 743b 2022 2470 7265 7669  << "$previ
│ │ │ -001ab9f0: 6f75 735f 6d6f 756e 745f 6f70 7473 2229  ous_mount_opts")
│ │ │ -001aba00: 0a20 2020 2020 2020 2066 690a 2020 2020  .        fi.    
│ │ │ -001aba10: 2020 2020 6563 686f 2022 202f 7661 722f      echo " /var/
│ │ │ -001aba20: 6c6f 672f 6175 6469 7420 2064 6566 6175  log/audit  defau
│ │ │ -001aba30: 6c74 732c 247b 7072 6576 696f 7573 5f6d  lts,${previous_m
│ │ │ -001aba40: 6f75 6e74 5f6f 7074 737d 6e6f 6465 7620  ount_opts}nodev 
│ │ │ -001aba50: 3020 3022 2026 6774 3b26 6774 3b20 2f65  0 0" >> /e
│ │ │ -001aba60: 7463 2f66 7374 6162 0a20 2020 2023 2049  tc/fstab.    # I
│ │ │ -001aba70: 6620 7468 6520 6d6f 756e 745f 6f70 7420  f the mount_opt 
│ │ │ -001aba80: 6f70 7469 6f6e 2069 7320 6e6f 7420 616c  option is not al
│ │ │ -001aba90: 7265 6164 7920 696e 2074 6865 206d 6f75  ready in the mou
│ │ │ -001abaa0: 6e74 2070 6f69 6e74 2773 202f 6574 632f  nt point's /etc/
│ │ │ -001abab0: 6673 7461 6220 656e 7472 792c 2061 6464  fstab entry, add
│ │ │ -001abac0: 2069 740a 2020 2020 656c 6966 2021 2067   it.    elif ! g
│ │ │ -001abad0: 7265 7020 2224 6d6f 756e 745f 706f 696e  rep "$mount_poin
│ │ │ -001abae0: 745f 6d61 7463 685f 7265 6765 7870 2220  t_match_regexp" 
│ │ │ -001abaf0: 2f65 7463 2f66 7374 6162 207c 2067 7265  /etc/fstab | gre
│ │ │ -001abb00: 7020 2d71 2022 6e6f 6465 7622 3b20 7468  p -q "nodev"; th
│ │ │ -001abb10: 656e 0a20 2020 2020 2020 2070 7265 7669  en.        previ
│ │ │ -001abb20: 6f75 735f 6d6f 756e 745f 6f70 7473 3d24  ous_mount_opts=$
│ │ │ -001abb30: 2867 7265 7020 2224 6d6f 756e 745f 706f  (grep "$mount_po
│ │ │ -001abb40: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ -001abb50: 2220 2f65 7463 2f66 7374 6162 207c 2061  " /etc/fstab | a
│ │ │ -001abb60: 776b 2027 7b70 7269 6e74 2024 347d 2729  wk '{print $4}')
│ │ │ -001abb70: 0a20 2020 2020 2020 2073 6564 202d 6920  .        sed -i 
│ │ │ -001abb80: 2273 7c5c 2824 7b6d 6f75 6e74 5f70 6f69  "s|\(${mount_poi
│ │ │ -001abb90: 6e74 5f6d 6174 6368 5f72 6567 6578 707d  nt_match_regexp}
│ │ │ -001abba0: 2e2a 247b 7072 6576 696f 7573 5f6d 6f75  .*${previous_mou
│ │ │ -001abbb0: 6e74 5f6f 7074 737d 5c29 7c5c 312c 6e6f  nt_opts}\)|\1,no
│ │ │ -001abbc0: 6465 767c 2220 2f65 7463 2f66 7374 6162  dev|" /etc/fstab
│ │ │ -001abbd0: 0a20 2020 2066 690a 0a0a 2020 2020 6966  .    fi...    if
│ │ │ -001abbe0: 206d 6b64 6972 202d 7020 222f 7661 722f   mkdir -p "/var/
│ │ │ -001abbf0: 6c6f 672f 6175 6469 7422 3b20 7468 656e  log/audit"; then
│ │ │ -001abc00: 0a20 2020 2020 2020 2069 6620 6d6f 756e  .        if moun
│ │ │ -001abc10: 7470 6f69 6e74 202d 7120 222f 7661 722f  tpoint -q "/var/
│ │ │ -001abc20: 6c6f 672f 6175 6469 7422 3b20 7468 656e  log/audit"; then
│ │ │ -001abc30: 0a20 2020 2020 2020 2020 2020 206d 6f75  .            mou
│ │ │ -001abc40: 6e74 202d 6f20 7265 6d6f 756e 7420 2d2d  nt -o remount --
│ │ │ -001abc50: 7461 7267 6574 2022 2f76 6172 2f6c 6f67  target "/var/log
│ │ │ -001abc60: 2f61 7564 6974 220a 2020 2020 2020 2020  /audit".        
│ │ │ -001abc70: 6669 0a20 2020 2066 690a 7d0a 0a70 6572  fi.    fi.}..per
│ │ │ -001abc80: 666f 726d 5f72 656d 6564 6961 7469 6f6e  form_remediation
│ │ │ -001abc90: 0a0a 656c 7365 0a20 2020 2026 6774 3b26  ..else.    >&
│ │ │ -001abca0: 616d 703b 3220 6563 686f 2027 5265 6d65  amp;2 echo 'Reme
│ │ │ -001abcb0: 6469 6174 696f 6e20 6973 206e 6f74 2061  diation is not a
│ │ │ -001abcc0: 7070 6c69 6361 626c 652c 206e 6f74 6869  pplicable, nothi
│ │ │ -001abcd0: 6e67 2077 6173 2064 6f6e 6527 0a66 690a  ng was done'.fi.
│ │ │ +001a9650: 416e 7369 626c 6520 736e 6970 7065 7420  Ansible snippet 
│ │ │ +001a9660: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620  ...
high │ │ │ +001a9730: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c < │ │ │ +001a9780: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
Reboo │ │ │ -001ab1d0: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -001ab1e0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Complexity: │ │ │ +001a96f0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Di │ │ │ +001a9710: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:
Reboot:< │ │ │ +001a9740: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>false
S │ │ │ +001a9760: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:configure
- name: G
│ │ │ +001a97a0: 6174 6865 7220 7468 6520 7061 636b 6167  ather the packag
│ │ │ +001a97b0: 6520 6661 6374 730a 2020 7061 636b 6167  e facts.  packag
│ │ │ +001a97c0: 655f 6661 6374 733a 0a20 2020 206d 616e  e_facts:.    man
│ │ │ +001a97d0: 6167 6572 3a20 6175 746f 0a20 2074 6167  ager: auto.  tag
│ │ │ +001a97e0: 733a 0a20 202d 204e 4953 542d 3830 302d  s:.  - NIST-800-
│ │ │ +001a97f0: 3533 2d41 432d 360a 2020 2d20 4e49 5354  53-AC-6.  - NIST
│ │ │ +001a9800: 2d38 3030 2d35 332d 4143 2d36 2831 290a  -800-53-AC-6(1).
│ │ │ +001a9810: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001a9820: 434d 2d36 2861 290a 2020 2d20 4e49 5354  CM-6(a).  - NIST
│ │ │ +001a9830: 2d38 3030 2d35 332d 434d 2d37 2861 290a  -800-53-CM-7(a).
│ │ │ +001a9840: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001a9850: 434d 2d37 2862 290a 2020 2d20 4e49 5354  CM-7(b).  - NIST
│ │ │ +001a9860: 2d38 3030 2d35 332d 4d50 2d37 0a20 202d  -800-53-MP-7.  -
│ │ │ +001a9870: 2063 6f6e 6669 6775 7265 5f73 7472 6174   configure_strat
│ │ │ +001a9880: 6567 790a 2020 2d20 6869 6768 5f64 6973  egy.  - high_dis
│ │ │ +001a9890: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f  ruption.  - low_
│ │ │ +001a98a0: 636f 6d70 6c65 7869 7479 0a20 202d 206d  complexity.  - m
│ │ │ +001a98b0: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ +001a98c0: 202d 206d 6f75 6e74 5f6f 7074 696f 6e5f   - mount_option_
│ │ │ +001a98d0: 7661 725f 6c6f 675f 6175 6469 745f 6e6f  var_log_audit_no
│ │ │ +001a98e0: 6465 760a 2020 2d20 6e6f 5f72 6562 6f6f  dev.  - no_reboo
│ │ │ +001a98f0: 745f 6e65 6564 6564 0a0a 2d20 6e61 6d65  t_needed..- name
│ │ │ +001a9900: 3a20 2741 6464 206e 6f64 6576 204f 7074  : 'Add nodev Opt
│ │ │ +001a9910: 696f 6e20 746f 202f 7661 722f 6c6f 672f  ion to /var/log/
│ │ │ +001a9920: 6175 6469 743a 2043 6865 636b 2069 6e66  audit: Check inf
│ │ │ +001a9930: 6f72 6d61 7469 6f6e 2061 7373 6f63 6961  ormation associa
│ │ │ +001a9940: 7465 6420 746f 206d 6f75 6e74 706f 696e  ted to mountpoin
│ │ │ +001a9950: 7427 0a20 2061 6e73 6962 6c65 2e62 7569  t'.  ansible.bui
│ │ │ +001a9960: 6c74 696e 2e63 6f6d 6d61 6e64 3a20 6669  ltin.command: fi
│ │ │ +001a9970: 6e64 6d6e 7420 2d2d 6673 7461 6220 272f  ndmnt --fstab '/
│ │ │ +001a9980: 7661 722f 6c6f 672f 6175 6469 7427 0a20  var/log/audit'. 
│ │ │ +001a9990: 2072 6567 6973 7465 723a 2064 6576 6963   register: devic
│ │ │ +001a99a0: 655f 6e61 6d65 0a20 2066 6169 6c65 645f  e_name.  failed_
│ │ │ +001a99b0: 7768 656e 3a20 6465 7669 6365 5f6e 616d  when: device_nam
│ │ │ +001a99c0: 652e 7263 2026 6774 3b20 310a 2020 6368  e.rc > 1.  ch
│ │ │ +001a99d0: 616e 6765 645f 7768 656e 3a20 6661 6c73  anged_when: fals
│ │ │ +001a99e0: 650a 2020 6368 6563 6b5f 6d6f 6465 3a20  e.  check_mode: 
│ │ │ +001a99f0: 6661 6c73 650a 2020 7768 656e 3a0a 2020  false.  when:.  
│ │ │ +001a9a00: 2d20 2820 6e6f 7420 2820 226b 6572 6e65  - ( not ( "kerne
│ │ │ +001a9a10: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ +001a9a20: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ +001a9a30: 2022 626f 6f74 6322 2069 6e20 616e 7369   "bootc" in ansi
│ │ │ +001a9a40: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001a9a50: 6573 0a20 2020 2061 6e64 206e 6f74 2022  es.    and not "
│ │ │ +001a9a60: 6f70 656e 7368 6966 742d 6b75 6265 6c65  openshift-kubele
│ │ │ +001a9a70: 7422 2069 6e20 616e 7369 626c 655f 6661  t" in ansible_fa
│ │ │ +001a9a80: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ +001a9a90: 2022 6f73 7472 6565 2220 696e 2061 6e73   "ostree" in ans
│ │ │ +001a9aa0: 6962 6c65 5f70 726f 635f 636d 646c 696e  ible_proc_cmdlin
│ │ │ +001a9ab0: 650a 2020 2020 2920 616e 6420 6e6f 7420  e.    ) and not 
│ │ │ +001a9ac0: 2820 616e 7369 626c 655f 7669 7274 7561  ( ansible_virtua
│ │ │ +001a9ad0: 6c69 7a61 7469 6f6e 5f74 7970 6520 696e  lization_type in
│ │ │ +001a9ae0: 205b 2264 6f63 6b65 7222 2c20 226c 7863   ["docker", "lxc
│ │ │ +001a9af0: 222c 2022 6f70 656e 767a 222c 2022 706f  ", "openvz", "po
│ │ │ +001a9b00: 646d 616e 222c 0a20 2020 2022 636f 6e74  dman",.    "cont
│ │ │ +001a9b10: 6169 6e65 7222 5d20 2920 290a 2020 2d20  ainer"] ) ).  - 
│ │ │ +001a9b20: 2722 2f76 6172 2f6c 6f67 2f61 7564 6974  '"/var/log/audit
│ │ │ +001a9b30: 2220 696e 2061 6e73 6962 6c65 5f6d 6f75  " in ansible_mou
│ │ │ +001a9b40: 6e74 7320 7c20 6d61 7028 6174 7472 6962  nts | map(attrib
│ │ │ +001a9b50: 7574 653d 226d 6f75 6e74 2229 207c 206c  ute="mount") | l
│ │ │ +001a9b60: 6973 7427 0a20 2074 6167 733a 0a20 202d  ist'.  tags:.  -
│ │ │ +001a9b70: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ +001a9b80: 360a 2020 2d20 4e49 5354 2d38 3030 2d35  6.  - NIST-800-5
│ │ │ +001a9b90: 332d 4143 2d36 2831 290a 2020 2d20 4e49  3-AC-6(1).  - NI
│ │ │ +001a9ba0: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ +001a9bb0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001a9bc0: 332d 434d 2d37 2861 290a 2020 2d20 4e49  3-CM-7(a).  - NI
│ │ │ +001a9bd0: 5354 2d38 3030 2d35 332d 434d 2d37 2862  ST-800-53-CM-7(b
│ │ │ +001a9be0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001a9bf0: 332d 4d50 2d37 0a20 202d 2063 6f6e 6669  3-MP-7.  - confi
│ │ │ +001a9c00: 6775 7265 5f73 7472 6174 6567 790a 2020  gure_strategy.  
│ │ │ +001a9c10: 2d20 6869 6768 5f64 6973 7275 7074 696f  - high_disruptio
│ │ │ +001a9c20: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65  n.  - low_comple
│ │ │ +001a9c30: 7869 7479 0a20 202d 206d 6564 6975 6d5f  xity.  - medium_
│ │ │ +001a9c40: 7365 7665 7269 7479 0a20 202d 206d 6f75  severity.  - mou
│ │ │ +001a9c50: 6e74 5f6f 7074 696f 6e5f 7661 725f 6c6f  nt_option_var_lo
│ │ │ +001a9c60: 675f 6175 6469 745f 6e6f 6465 760a 2020  g_audit_nodev.  
│ │ │ +001a9c70: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ +001a9c80: 6564 0a0a 2d20 6e61 6d65 3a20 2741 6464  ed..- name: 'Add
│ │ │ +001a9c90: 206e 6f64 6576 204f 7074 696f 6e20 746f   nodev Option to
│ │ │ +001a9ca0: 202f 7661 722f 6c6f 672f 6175 6469 743a   /var/log/audit:
│ │ │ +001a9cb0: 2043 7265 6174 6520 6d6f 756e 745f 696e   Create mount_in
│ │ │ +001a9cc0: 666f 2064 6963 7469 6f6e 6172 7920 7661  fo dictionary va
│ │ │ +001a9cd0: 7269 6162 6c65 270a 2020 7365 745f 6661  riable'.  set_fa
│ │ │ +001a9ce0: 6374 3a0a 2020 2020 6d6f 756e 745f 696e  ct:.    mount_in
│ │ │ +001a9cf0: 666f 3a20 277b 7b20 6d6f 756e 745f 696e  fo: '{{ mount_in
│ │ │ +001a9d00: 666f 7c64 6566 6175 6c74 287b 7d29 7c63  fo|default({})|c
│ │ │ +001a9d10: 6f6d 6269 6e65 287b 6974 656d 2e30 3a20  ombine({item.0: 
│ │ │ +001a9d20: 6974 656d 2e31 7d29 207d 7d27 0a20 2077  item.1}) }}'.  w
│ │ │ +001a9d30: 6974 685f 746f 6765 7468 6572 3a0a 2020  ith_together:.  
│ │ │ +001a9d40: 2d20 277b 7b20 6465 7669 6365 5f6e 616d  - '{{ device_nam
│ │ │ +001a9d50: 652e 7374 646f 7574 5f6c 696e 6573 5b30  e.stdout_lines[0
│ │ │ +001a9d60: 5d2e 7370 6c69 7428 2920 7c20 6d61 7028  ].split() | map(
│ │ │ +001a9d70: 2727 6c6f 7765 7227 2729 207c 206c 6973  ''lower'') | lis
│ │ │ +001a9d80: 7420 7d7d 270a 2020 2d20 277b 7b20 6465  t }}'.  - '{{ de
│ │ │ +001a9d90: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ +001a9da0: 5f6c 696e 6573 5b31 5d2e 7370 6c69 7428  _lines[1].split(
│ │ │ +001a9db0: 2920 7c20 6c69 7374 207d 7d27 0a20 2077  ) | list }}'.  w
│ │ │ +001a9dc0: 6865 6e3a 0a20 202d 2028 206e 6f74 2028  hen:.  - ( not (
│ │ │ +001a9dd0: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ +001a9de0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001a9df0: 6765 7320 616e 6420 2262 6f6f 7463 2220  ges and "bootc" 
│ │ │ +001a9e00: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001a9e10: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ +001a9e20: 6420 6e6f 7420 226f 7065 6e73 6869 6674  d not "openshift
│ │ │ +001a9e30: 2d6b 7562 656c 6574 2220 696e 2061 6e73  -kubelet" in ans
│ │ │ +001a9e40: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001a9e50: 6765 7320 616e 6420 226f 7374 7265 6522  ges and "ostree"
│ │ │ +001a9e60: 2069 6e20 616e 7369 626c 655f 7072 6f63   in ansible_proc
│ │ │ +001a9e70: 5f63 6d64 6c69 6e65 0a20 2020 2029 2061  _cmdline.    ) a
│ │ │ +001a9e80: 6e64 206e 6f74 2028 2061 6e73 6962 6c65  nd not ( ansible
│ │ │ +001a9e90: 5f76 6972 7475 616c 697a 6174 696f 6e5f  _virtualization_
│ │ │ +001a9ea0: 7479 7065 2069 6e20 5b22 646f 636b 6572  type in ["docker
│ │ │ +001a9eb0: 222c 2022 6c78 6322 2c20 226f 7065 6e76  ", "lxc", "openv
│ │ │ +001a9ec0: 7a22 2c20 2270 6f64 6d61 6e22 2c0a 2020  z", "podman",.  
│ │ │ +001a9ed0: 2020 2263 6f6e 7461 696e 6572 225d 2029    "container"] )
│ │ │ +001a9ee0: 2029 0a20 202d 2027 222f 7661 722f 6c6f   ).  - '"/var/lo
│ │ │ +001a9ef0: 672f 6175 6469 7422 2069 6e20 616e 7369  g/audit" in ansi
│ │ │ +001a9f00: 626c 655f 6d6f 756e 7473 207c 206d 6170  ble_mounts | map
│ │ │ +001a9f10: 2861 7474 7269 6275 7465 3d22 6d6f 756e  (attribute="moun
│ │ │ +001a9f20: 7422 2920 7c20 6c69 7374 270a 2020 2d20  t") | list'.  - 
│ │ │ +001a9f30: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ +001a9f40: 7574 2069 7320 6465 6669 6e65 6420 616e  ut is defined an
│ │ │ +001a9f50: 6420 6465 7669 6365 5f6e 616d 652e 7374  d device_name.st
│ │ │ +001a9f60: 646f 7574 5f6c 696e 6573 2069 7320 6465  dout_lines is de
│ │ │ +001a9f70: 6669 6e65 640a 2020 2d20 2864 6576 6963  fined.  - (devic
│ │ │ +001a9f80: 655f 6e61 6d65 2e73 7464 6f75 7420 7c20  e_name.stdout | 
│ │ │ +001a9f90: 6c65 6e67 7468 2026 6774 3b20 3029 0a20  length > 0). 
│ │ │ +001a9fa0: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ +001a9fb0: 3830 302d 3533 2d41 432d 360a 2020 2d20  800-53-AC-6.  - 
│ │ │ +001a9fc0: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ +001a9fd0: 2831 290a 2020 2d20 4e49 5354 2d38 3030  (1).  - NIST-800
│ │ │ +001a9fe0: 2d35 332d 434d 2d36 2861 290a 2020 2d20  -53-CM-6(a).  - 
│ │ │ +001a9ff0: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ +001aa000: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ +001aa010: 2d35 332d 434d 2d37 2862 290a 2020 2d20  -53-CM-7(b).  - 
│ │ │ +001aa020: 4e49 5354 2d38 3030 2d35 332d 4d50 2d37  NIST-800-53-MP-7
│ │ │ +001aa030: 0a20 202d 2063 6f6e 6669 6775 7265 5f73  .  - configure_s
│ │ │ +001aa040: 7472 6174 6567 790a 2020 2d20 6869 6768  trategy.  - high
│ │ │ +001aa050: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +001aa060: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ +001aa070: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ +001aa080: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074  ty.  - mount_opt
│ │ │ +001aa090: 696f 6e5f 7661 725f 6c6f 675f 6175 6469  ion_var_log_audi
│ │ │ +001aa0a0: 745f 6e6f 6465 760a 2020 2d20 6e6f 5f72  t_nodev.  - no_r
│ │ │ +001aa0b0: 6562 6f6f 745f 6e65 6564 6564 0a0a 2d20  eboot_needed..- 
│ │ │ +001aa0c0: 6e61 6d65 3a20 2741 6464 206e 6f64 6576  name: 'Add nodev
│ │ │ +001aa0d0: 204f 7074 696f 6e20 746f 202f 7661 722f   Option to /var/
│ │ │ +001aa0e0: 6c6f 672f 6175 6469 743a 2049 6620 2f76  log/audit: If /v
│ │ │ +001aa0f0: 6172 2f6c 6f67 2f61 7564 6974 206e 6f74  ar/log/audit not
│ │ │ +001aa100: 206d 6f75 6e74 6564 2c20 6372 6166 740a   mounted, craft.
│ │ │ +001aa110: 2020 2020 6d6f 756e 745f 696e 666f 206d      mount_info m
│ │ │ +001aa120: 616e 7561 6c6c 7927 0a20 2073 6574 5f66  anually'.  set_f
│ │ │ +001aa130: 6163 743a 0a20 2020 206d 6f75 6e74 5f69  act:.    mount_i
│ │ │ +001aa140: 6e66 6f3a 2027 7b7b 206d 6f75 6e74 5f69  nfo: '{{ mount_i
│ │ │ +001aa150: 6e66 6f7c 6465 6661 756c 7428 7b7d 297c  nfo|default({})|
│ │ │ +001aa160: 636f 6d62 696e 6528 7b69 7465 6d2e 303a  combine({item.0:
│ │ │ +001aa170: 2069 7465 6d2e 317d 2920 7d7d 270a 2020   item.1}) }}'.  
│ │ │ +001aa180: 7769 7468 5f74 6f67 6574 6865 723a 0a20  with_together:. 
│ │ │ +001aa190: 202d 202d 2074 6172 6765 740a 2020 2020   - - target.    
│ │ │ +001aa1a0: 2d20 736f 7572 6365 0a20 2020 202d 2066  - source.    - f
│ │ │ +001aa1b0: 7374 7970 650a 2020 2020 2d20 6f70 7469  stype.    - opti
│ │ │ +001aa1c0: 6f6e 730a 2020 2d20 2d20 2f76 6172 2f6c  ons.  - - /var/l
│ │ │ +001aa1d0: 6f67 2f61 7564 6974 0a20 2020 202d 2027  og/audit.    - '
│ │ │ +001aa1e0: 270a 2020 2020 2d20 2727 0a20 2020 202d  '.    - ''.    -
│ │ │ +001aa1f0: 2064 6566 6175 6c74 730a 2020 7768 656e   defaults.  when
│ │ │ +001aa200: 3a0a 2020 2d20 2820 6e6f 7420 2820 226b  :.  - ( not ( "k
│ │ │ +001aa210: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ +001aa220: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +001aa230: 2061 6e64 2022 626f 6f74 6322 2069 6e20   and "bootc" in 
│ │ │ +001aa240: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001aa250: 636b 6167 6573 0a20 2020 2061 6e64 206e  ckages.    and n
│ │ │ +001aa260: 6f74 2022 6f70 656e 7368 6966 742d 6b75  ot "openshift-ku
│ │ │ +001aa270: 6265 6c65 7422 2069 6e20 616e 7369 626c  belet" in ansibl
│ │ │ +001aa280: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +001aa290: 2061 6e64 2022 6f73 7472 6565 2220 696e   and "ostree" in
│ │ │ +001aa2a0: 2061 6e73 6962 6c65 5f70 726f 635f 636d   ansible_proc_cm
│ │ │ +001aa2b0: 646c 696e 650a 2020 2020 2920 616e 6420  dline.    ) and 
│ │ │ +001aa2c0: 6e6f 7420 2820 616e 7369 626c 655f 7669  not ( ansible_vi
│ │ │ +001aa2d0: 7274 7561 6c69 7a61 7469 6f6e 5f74 7970  rtualization_typ
│ │ │ +001aa2e0: 6520 696e 205b 2264 6f63 6b65 7222 2c20  e in ["docker", 
│ │ │ +001aa2f0: 226c 7863 222c 2022 6f70 656e 767a 222c  "lxc", "openvz",
│ │ │ +001aa300: 2022 706f 646d 616e 222c 0a20 2020 2022   "podman",.    "
│ │ │ +001aa310: 636f 6e74 6169 6e65 7222 5d20 2920 290a  container"] ) ).
│ │ │ +001aa320: 2020 2d20 2722 2f76 6172 2f6c 6f67 2f61    - '"/var/log/a
│ │ │ +001aa330: 7564 6974 2220 696e 2061 6e73 6962 6c65  udit" in ansible
│ │ │ +001aa340: 5f6d 6f75 6e74 7320 7c20 6d61 7028 6174  _mounts | map(at
│ │ │ +001aa350: 7472 6962 7574 653d 226d 6f75 6e74 2229  tribute="mount")
│ │ │ +001aa360: 207c 206c 6973 7427 0a20 202d 2028 222d   | list'.  - ("-
│ │ │ +001aa370: 2d66 7374 6162 2220 7c20 6c65 6e67 7468  -fstab" | length
│ │ │ +001aa380: 203d 3d20 3029 0a20 202d 2064 6576 6963   == 0).  - devic
│ │ │ +001aa390: 655f 6e61 6d65 2e73 7464 6f75 7420 6973  e_name.stdout is
│ │ │ +001aa3a0: 2064 6566 696e 6564 2061 6e64 2064 6576   defined and dev
│ │ │ +001aa3b0: 6963 655f 6e61 6d65 2e73 7464 6f75 745f  ice_name.stdout_
│ │ │ +001aa3c0: 6c69 6e65 7320 6973 2064 6566 696e 6564  lines is defined
│ │ │ +001aa3d0: 0a20 202d 2028 6465 7669 6365 5f6e 616d  .  - (device_nam
│ │ │ +001aa3e0: 652e 7374 646f 7574 207c 206c 656e 6774  e.stdout | lengt
│ │ │ +001aa3f0: 6820 3d3d 2030 290a 2020 7461 6773 3a0a  h == 0).  tags:.
│ │ │ +001aa400: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001aa410: 4143 2d36 0a20 202d 204e 4953 542d 3830  AC-6.  - NIST-80
│ │ │ +001aa420: 302d 3533 2d41 432d 3628 3129 0a20 202d  0-53-AC-6(1).  -
│ │ │ +001aa430: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +001aa440: 3628 6129 0a20 202d 204e 4953 542d 3830  6(a).  - NIST-80
│ │ │ +001aa450: 302d 3533 2d43 4d2d 3728 6129 0a20 202d  0-53-CM-7(a).  -
│ │ │ +001aa460: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +001aa470: 3728 6229 0a20 202d 204e 4953 542d 3830  7(b).  - NIST-80
│ │ │ +001aa480: 302d 3533 2d4d 502d 370a 2020 2d20 636f  0-53-MP-7.  - co
│ │ │ +001aa490: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ +001aa4a0: 0a20 202d 2068 6967 685f 6469 7372 7570  .  - high_disrup
│ │ │ +001aa4b0: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d  tion.  - low_com
│ │ │ +001aa4c0: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ +001aa4d0: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ +001aa4e0: 6d6f 756e 745f 6f70 7469 6f6e 5f76 6172  mount_option_var
│ │ │ +001aa4f0: 5f6c 6f67 5f61 7564 6974 5f6e 6f64 6576  _log_audit_nodev
│ │ │ +001aa500: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ +001aa510: 6565 6465 640a 0a2d 206e 616d 653a 2027  eeded..- name: '
│ │ │ +001aa520: 4164 6420 6e6f 6465 7620 4f70 7469 6f6e  Add nodev Option
│ │ │ +001aa530: 2074 6f20 2f76 6172 2f6c 6f67 2f61 7564   to /var/log/aud
│ │ │ +001aa540: 6974 3a20 4d61 6b65 2073 7572 6520 6e6f  it: Make sure no
│ │ │ +001aa550: 6465 7620 6f70 7469 6f6e 2069 7320 7061  dev option is pa
│ │ │ +001aa560: 7274 206f 6620 7468 650a 2020 2020 746f  rt of the.    to
│ │ │ +001aa570: 202f 7661 722f 6c6f 672f 6175 6469 7420   /var/log/audit 
│ │ │ +001aa580: 6f70 7469 6f6e 7327 0a20 2073 6574 5f66  options'.  set_f
│ │ │ +001aa590: 6163 743a 0a20 2020 206d 6f75 6e74 5f69  act:.    mount_i
│ │ │ +001aa5a0: 6e66 6f3a 2027 7b7b 206d 6f75 6e74 5f69  nfo: '{{ mount_i
│ │ │ +001aa5b0: 6e66 6f20 7c20 636f 6d62 696e 6528 207b  nfo | combine( {
│ │ │ +001aa5c0: 2727 6f70 7469 6f6e 7327 273a 2727 2727  ''options'':''''
│ │ │ +001aa5d0: 7e28 6d6f 756e 745f 696e 666f 2e6f 7074  ~(mount_info.opt
│ │ │ +001aa5e0: 696f 6e73 207c 0a20 2020 2020 2064 6566  ions |.      def
│ │ │ +001aa5f0: 6175 6c74 2827 2727 2729 297e 2827 272c  ault(''''))~('',
│ │ │ +001aa600: 2727 2069 6620 286d 6f75 6e74 5f69 6e66  '' if (mount_inf
│ │ │ +001aa610: 6f2e 6f70 7469 6f6e 7320 7c20 6465 6661  o.options | defa
│ │ │ +001aa620: 756c 7428 2727 2727 2929 2065 6c73 6520  ult('''')) else 
│ │ │ +001aa630: 2727 2727 297e 2727 6e6f 6465 7627 270a  '''')~''nodev''.
│ │ │ +001aa640: 2020 2020 2020 7d29 207d 7d27 0a20 2077        }) }}'.  w
│ │ │ +001aa650: 6865 6e3a 0a20 202d 2028 206e 6f74 2028  hen:.  - ( not (
│ │ │ +001aa660: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ +001aa670: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001aa680: 6765 7320 616e 6420 2262 6f6f 7463 2220  ges and "bootc" 
│ │ │ +001aa690: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001aa6a0: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ +001aa6b0: 6420 6e6f 7420 226f 7065 6e73 6869 6674  d not "openshift
│ │ │ +001aa6c0: 2d6b 7562 656c 6574 2220 696e 2061 6e73  -kubelet" in ans
│ │ │ +001aa6d0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001aa6e0: 6765 7320 616e 6420 226f 7374 7265 6522  ges and "ostree"
│ │ │ +001aa6f0: 2069 6e20 616e 7369 626c 655f 7072 6f63   in ansible_proc
│ │ │ +001aa700: 5f63 6d64 6c69 6e65 0a20 2020 2029 2061  _cmdline.    ) a
│ │ │ +001aa710: 6e64 206e 6f74 2028 2061 6e73 6962 6c65  nd not ( ansible
│ │ │ +001aa720: 5f76 6972 7475 616c 697a 6174 696f 6e5f  _virtualization_
│ │ │ +001aa730: 7479 7065 2069 6e20 5b22 646f 636b 6572  type in ["docker
│ │ │ +001aa740: 222c 2022 6c78 6322 2c20 226f 7065 6e76  ", "lxc", "openv
│ │ │ +001aa750: 7a22 2c20 2270 6f64 6d61 6e22 2c0a 2020  z", "podman",.  
│ │ │ +001aa760: 2020 2263 6f6e 7461 696e 6572 225d 2029    "container"] )
│ │ │ +001aa770: 2029 0a20 202d 2027 222f 7661 722f 6c6f   ).  - '"/var/lo
│ │ │ +001aa780: 672f 6175 6469 7422 2069 6e20 616e 7369  g/audit" in ansi
│ │ │ +001aa790: 626c 655f 6d6f 756e 7473 207c 206d 6170  ble_mounts | map
│ │ │ +001aa7a0: 2861 7474 7269 6275 7465 3d22 6d6f 756e  (attribute="moun
│ │ │ +001aa7b0: 7422 2920 7c20 6c69 7374 270a 2020 2d20  t") | list'.  - 
│ │ │ +001aa7c0: 6d6f 756e 745f 696e 666f 2069 7320 6465  mount_info is de
│ │ │ +001aa7d0: 6669 6e65 6420 616e 6420 226e 6f64 6576  fined and "nodev
│ │ │ +001aa7e0: 2220 6e6f 7420 696e 2028 6d6f 756e 745f  " not in (mount_
│ │ │ +001aa7f0: 696e 666f 2e6f 7074 696f 6e73 207c 2064  info.options | d
│ │ │ +001aa800: 6566 6175 6c74 2827 2729 290a 2020 7461  efault('')).  ta
│ │ │ +001aa810: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030  gs:.  - NIST-800
│ │ │ +001aa820: 2d35 332d 4143 2d36 0a20 202d 204e 4953  -53-AC-6.  - NIS
│ │ │ +001aa830: 542d 3830 302d 3533 2d41 432d 3628 3129  T-800-53-AC-6(1)
│ │ │ +001aa840: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001aa850: 2d43 4d2d 3628 6129 0a20 202d 204e 4953  -CM-6(a).  - NIS
│ │ │ +001aa860: 542d 3830 302d 3533 2d43 4d2d 3728 6129  T-800-53-CM-7(a)
│ │ │ +001aa870: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001aa880: 2d43 4d2d 3728 6229 0a20 202d 204e 4953  -CM-7(b).  - NIS
│ │ │ +001aa890: 542d 3830 302d 3533 2d4d 502d 370a 2020  T-800-53-MP-7.  
│ │ │ +001aa8a0: 2d20 636f 6e66 6967 7572 655f 7374 7261  - configure_stra
│ │ │ +001aa8b0: 7465 6779 0a20 202d 2068 6967 685f 6469  tegy.  - high_di
│ │ │ +001aa8c0: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ +001aa8d0: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +001aa8e0: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ +001aa8f0: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e    - mount_option
│ │ │ +001aa900: 5f76 6172 5f6c 6f67 5f61 7564 6974 5f6e  _var_log_audit_n
│ │ │ +001aa910: 6f64 6576 0a20 202d 206e 6f5f 7265 626f  odev.  - no_rebo
│ │ │ +001aa920: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d  ot_needed..- nam
│ │ │ +001aa930: 653a 2027 4164 6420 6e6f 6465 7620 4f70  e: 'Add nodev Op
│ │ │ +001aa940: 7469 6f6e 2074 6f20 2f76 6172 2f6c 6f67  tion to /var/log
│ │ │ +001aa950: 2f61 7564 6974 3a20 456e 7375 7265 202f  /audit: Ensure /
│ │ │ +001aa960: 7661 722f 6c6f 672f 6175 6469 7420 6973  var/log/audit is
│ │ │ +001aa970: 206d 6f75 6e74 6564 2077 6974 680a 2020   mounted with.  
│ │ │ +001aa980: 2020 6e6f 6465 7620 6f70 7469 6f6e 270a    nodev option'.
│ │ │ +001aa990: 2020 616e 7369 626c 652e 706f 7369 782e    ansible.posix.
│ │ │ +001aa9a0: 6d6f 756e 743a 0a20 2020 2070 6174 683a  mount:.    path:
│ │ │ +001aa9b0: 202f 7661 722f 6c6f 672f 6175 6469 740a   /var/log/audit.
│ │ │ +001aa9c0: 2020 2020 7372 633a 2027 7b7b 206d 6f75      src: '{{ mou
│ │ │ +001aa9d0: 6e74 5f69 6e66 6f2e 736f 7572 6365 207c  nt_info.source |
│ │ │ +001aa9e0: 2064 6566 6175 6c74 2827 2727 2729 207d   default('''') }
│ │ │ +001aa9f0: 7d27 0a20 2020 206f 7074 733a 2027 7b7b  }'.    opts: '{{
│ │ │ +001aaa00: 206d 6f75 6e74 5f69 6e66 6f2e 6f70 7469   mount_info.opti
│ │ │ +001aaa10: 6f6e 7320 7c20 6465 6661 756c 7428 2727  ons | default(''
│ │ │ +001aaa20: 2727 2920 7d7d 270a 2020 2020 7374 6174  '') }}'.    stat
│ │ │ +001aaa30: 653a 206d 6f75 6e74 6564 0a20 2020 2066  e: mounted.    f
│ │ │ +001aaa40: 7374 7970 653a 2027 7b7b 206d 6f75 6e74  stype: '{{ mount
│ │ │ +001aaa50: 5f69 6e66 6f2e 6673 7479 7065 207c 2064  _info.fstype | d
│ │ │ +001aaa60: 6566 6175 6c74 2827 2727 2729 207d 7d27  efault('''') }}'
│ │ │ +001aaa70: 0a20 2072 6567 6973 7465 723a 206d 6f75  .  register: mou
│ │ │ +001aaa80: 6e74 5f72 6573 756c 740a 2020 6661 696c  nt_result.  fail
│ │ │ +001aaa90: 6564 5f77 6865 6e3a 0a20 202d 206d 6f75  ed_when:.  - mou
│ │ │ +001aaaa0: 6e74 5f72 6573 756c 7420 6973 2066 6169  nt_result is fai
│ │ │ +001aaab0: 6c65 640a 2020 2d20 2727 2774 6172 6765  led.  - '''targe
│ │ │ +001aaac0: 7420 6973 2062 7573 7927 2720 6e6f 7420  t is busy'' not 
│ │ │ +001aaad0: 696e 2028 6d6f 756e 745f 7265 7375 6c74  in (mount_result
│ │ │ +001aaae0: 2e6d 7367 207c 2064 6566 6175 6c74 2827  .msg | default('
│ │ │ +001aaaf0: 2727 2729 2927 0a20 202d 2027 2727 616c  '''))'.  - '''al
│ │ │ +001aab00: 7265 6164 7920 6d6f 756e 7465 6427 2720  ready mounted'' 
│ │ │ +001aab10: 6e6f 7420 696e 2028 6d6f 756e 745f 7265  not in (mount_re
│ │ │ +001aab20: 7375 6c74 2e6d 7367 207c 2064 6566 6175  sult.msg | defau
│ │ │ +001aab30: 6c74 2827 2727 2729 2927 0a20 2077 6865  lt(''''))'.  whe
│ │ │ +001aab40: 6e3a 0a20 202d 2028 206e 6f74 2028 2022  n:.  - ( not ( "
│ │ │ +001aab50: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ +001aab60: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001aab70: 7320 616e 6420 2262 6f6f 7463 2220 696e  s and "bootc" in
│ │ │ +001aab80: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001aab90: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ +001aaba0: 6e6f 7420 226f 7065 6e73 6869 6674 2d6b  not "openshift-k
│ │ │ +001aabb0: 7562 656c 6574 2220 696e 2061 6e73 6962  ubelet" in ansib
│ │ │ +001aabc0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001aabd0: 7320 616e 6420 226f 7374 7265 6522 2069  s and "ostree" i
│ │ │ +001aabe0: 6e20 616e 7369 626c 655f 7072 6f63 5f63  n ansible_proc_c
│ │ │ +001aabf0: 6d64 6c69 6e65 0a20 2020 2029 2061 6e64  mdline.    ) and
│ │ │ +001aac00: 206e 6f74 2028 2061 6e73 6962 6c65 5f76   not ( ansible_v
│ │ │ +001aac10: 6972 7475 616c 697a 6174 696f 6e5f 7479  irtualization_ty
│ │ │ +001aac20: 7065 2069 6e20 5b22 646f 636b 6572 222c  pe in ["docker",
│ │ │ +001aac30: 2022 6c78 6322 2c20 226f 7065 6e76 7a22   "lxc", "openvz"
│ │ │ +001aac40: 2c20 2270 6f64 6d61 6e22 2c0a 2020 2020  , "podman",.    
│ │ │ +001aac50: 2263 6f6e 7461 696e 6572 225d 2029 2029  "container"] ) )
│ │ │ +001aac60: 0a20 202d 2027 222f 7661 722f 6c6f 672f  .  - '"/var/log/
│ │ │ +001aac70: 6175 6469 7422 2069 6e20 616e 7369 626c  audit" in ansibl
│ │ │ +001aac80: 655f 6d6f 756e 7473 207c 206d 6170 2861  e_mounts | map(a
│ │ │ +001aac90: 7474 7269 6275 7465 3d22 6d6f 756e 7422  ttribute="mount"
│ │ │ +001aaca0: 2920 7c20 6c69 7374 270a 2020 2d20 6d6f  ) | list'.  - mo
│ │ │ +001aacb0: 756e 745f 696e 666f 2069 7320 6465 6669  unt_info is defi
│ │ │ +001aacc0: 6e65 640a 2020 2d20 2864 6576 6963 655f  ned.  - (device_
│ │ │ +001aacd0: 6e61 6d65 2e73 7464 6f75 7420 6973 2064  name.stdout is d
│ │ │ +001aace0: 6566 696e 6564 2061 6e64 2028 6465 7669  efined and (devi
│ │ │ +001aacf0: 6365 5f6e 616d 652e 7374 646f 7574 207c  ce_name.stdout |
│ │ │ +001aad00: 206c 656e 6774 6820 2667 743b 2030 2929   length > 0))
│ │ │ +001aad10: 206f 7220 2822 2d2d 6673 7461 6222 0a20   or ("--fstab". 
│ │ │ +001aad20: 2020 207c 206c 656e 6774 6820 3d3d 2030     | length == 0
│ │ │ +001aad30: 290a 2020 7461 6773 3a0a 2020 2d20 4e49  ).  tags:.  - NI
│ │ │ +001aad40: 5354 2d38 3030 2d35 332d 4143 2d36 0a20  ST-800-53-AC-6. 
│ │ │ +001aad50: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ +001aad60: 432d 3628 3129 0a20 202d 204e 4953 542d  C-6(1).  - NIST-
│ │ │ +001aad70: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ +001aad80: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +001aad90: 4d2d 3728 6129 0a20 202d 204e 4953 542d  M-7(a).  - NIST-
│ │ │ +001aada0: 3830 302d 3533 2d43 4d2d 3728 6229 0a20  800-53-CM-7(b). 
│ │ │ +001aadb0: 202d 204e 4953 542d 3830 302d 3533 2d4d   - NIST-800-53-M
│ │ │ +001aadc0: 502d 370a 2020 2d20 636f 6e66 6967 7572  P-7.  - configur
│ │ │ +001aadd0: 655f 7374 7261 7465 6779 0a20 202d 2068  e_strategy.  - h
│ │ │ +001aade0: 6967 685f 6469 7372 7570 7469 6f6e 0a20  igh_disruption. 
│ │ │ +001aadf0: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ +001aae00: 790a 2020 2d20 6d65 6469 756d 5f73 6576  y.  - medium_sev
│ │ │ +001aae10: 6572 6974 790a 2020 2d20 6d6f 756e 745f  erity.  - mount_
│ │ │ +001aae20: 6f70 7469 6f6e 5f76 6172 5f6c 6f67 5f61  option_var_log_a
│ │ │ +001aae30: 7564 6974 5f6e 6f64 6576 0a20 202d 206e  udit_nodev.  - n
│ │ │ +001aae40: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ +001aae50: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ +001aaf00: 5265 6d65 6469 6174 696f 6e20 5368 656c Remediation Shel │ │ │ +001aaf10: 6c20 7363 7269 7074 20e2 87b2 3c2f 613e l script ... │ │ │ +001aaf20: 3c62 723e 3c64 6976 2063 6c61 7373 3d22

│ │ │ +001aafd0: 2320 5265 6d65 6469 6174 696f 6e20 6973  # Remediation is
│ │ │ +001aafe0: 2061 7070 6c69 6361 626c 6520 6f6e 6c79   applicable only
│ │ │ +001aaff0: 2069 6e20 6365 7274 6169 6e20 706c 6174   in certain plat
│ │ │ +001ab000: 666f 726d 730a 6966 2028 2021 2028 207b  forms.if ( ! ( {
│ │ │ +001ab010: 2072 706d 202d 2d71 7569 6574 202d 7120   rpm --quiet -q 
│ │ │ +001ab020: 6b65 726e 656c 203b 7d20 2661 6d70 3b26  kernel ;} &&
│ │ │ +001ab030: 616d 703b 207b 2072 706d 202d 2d71 7569  amp; { rpm --qui
│ │ │ +001ab040: 6574 202d 7120 626f 6f74 6320 3b7d 2026  et -q bootc ;} &
│ │ │ +001ab050: 616d 703b 2661 6d70 3b20 7b20 2120 7270  amp;& { ! rp
│ │ │ +001ab060: 6d20 2d2d 7175 6965 7420 2d71 206f 7065  m --quiet -q ope
│ │ │ +001ab070: 6e73 6869 6674 2d6b 7562 656c 6574 203b  nshift-kubelet ;
│ │ │ +001ab080: 7d20 2661 6d70 3b26 616d 703b 2028 5b20  } && ([ 
│ │ │ +001ab090: 2d66 202f 7275 6e2f 6f73 7472 6565 2d62  -f /run/ostree-b
│ │ │ +001ab0a0: 6f6f 7465 6420 5d20 7c7c 205b 202d 4c20  ooted ] || [ -L 
│ │ │ +001ab0b0: 2f6f 7374 7265 6520 5d29 2029 2026 616d  /ostree ]) ) &am
│ │ │ +001ab0c0: 703b 2661 6d70 3b20 2120 2820 5b20 2d66  p;& ! ( [ -f
│ │ │ +001ab0d0: 202f 2e64 6f63 6b65 7265 6e76 205d 207c   /.dockerenv ] |
│ │ │ +001ab0e0: 7c20 5b20 2d66 202f 7275 6e2f 2e63 6f6e  | [ -f /run/.con
│ │ │ +001ab0f0: 7461 696e 6572 656e 7620 5d20 2920 2920  tainerenv ] ) ) 
│ │ │ +001ab100: 2661 6d70 3b26 616d 703b 207b 2028 2066  && { ( f
│ │ │ +001ab110: 696e 646d 6e74 202d 2d6b 6572 6e65 6c20  indmnt --kernel 
│ │ │ +001ab120: 222f 7661 722f 6c6f 672f 6175 6469 7422  "/var/log/audit"
│ │ │ +001ab130: 2026 6774 3b20 2f64 6576 2f6e 756c 6c20   > /dev/null 
│ │ │ +001ab140: 7c7c 2066 696e 646d 6e74 202d 2d66 7374  || findmnt --fst
│ │ │ +001ab150: 6162 2022 2f76 6172 2f6c 6f67 2f61 7564  ab "/var/log/aud
│ │ │ +001ab160: 6974 2220 2667 743b 202f 6465 762f 6e75  it" > /dev/nu
│ │ │ +001ab170: 6c6c 2029 3b20 7d3b 2074 6865 6e0a 0a66  ll ); }; then..f
│ │ │ +001ab180: 756e 6374 696f 6e20 7065 7266 6f72 6d5f  unction perform_
│ │ │ +001ab190: 7265 6d65 6469 6174 696f 6e20 7b0a 0a20  remediation {.. 
│ │ │ +001ab1a0: 2020 200a 2020 2020 2020 2020 2320 7468     .        # th
│ │ │ +001ab1b0: 6520 6d6f 756e 7420 706f 696e 7420 2f76  e mount point /v
│ │ │ +001ab1c0: 6172 2f6c 6f67 2f61 7564 6974 2068 6173  ar/log/audit has
│ │ │ +001ab1d0: 2074 6f20 6265 2064 6566 696e 6564 2069   to be defined i
│ │ │ +001ab1e0: 6e20 2f65 7463 2f66 7374 6162 0a20 2020  n /etc/fstab.   
│ │ │ +001ab1f0: 2020 2020 2023 2062 6566 6f72 6520 7468       # before th
│ │ │ +001ab200: 6973 2072 656d 6564 6961 7469 6f6e 2063  is remediation c
│ │ │ +001ab210: 616e 2062 6520 6578 6563 7574 6564 2e20  an be executed. 
│ │ │ +001ab220: 496e 2063 6173 6520 6974 2069 7320 6e6f  In case it is no
│ │ │ +001ab230: 7420 6465 6669 6e65 642c 2074 6865 0a20  t defined, the. 
│ │ │ +001ab240: 2020 2020 2020 2023 2072 656d 6564 6961         # remedia
│ │ │ +001ab250: 7469 6f6e 2061 626f 7274 7320 616e 6420  tion aborts and 
│ │ │ +001ab260: 6e6f 2063 6861 6e67 6573 2072 6567 6172  no changes regar
│ │ │ +001ab270: 6469 6e67 2074 6865 206d 6f75 6e74 2070  ding the mount p
│ │ │ +001ab280: 6f69 6e74 2061 7265 2064 6f6e 652e 0a20  oint are done.. 
│ │ │ +001ab290: 2020 2020 2020 206d 6f75 6e74 5f70 6f69         mount_poi
│ │ │ +001ab2a0: 6e74 5f6d 6174 6368 5f72 6567 6578 703d  nt_match_regexp=
│ │ │ +001ab2b0: 2224 2870 7269 6e74 6620 225e 5b5b 3a73  "$(printf "^[[:s
│ │ │ +001ab2c0: 7061 6365 3a5d 5d2a 5b5e 235d 2e2a 5b5b  pace:]]*[^#].*[[
│ │ │ +001ab2d0: 3a73 7061 6365 3a5d 5d25 735b 5b3a 7370  :space:]]%s[[:sp
│ │ │ +001ab2e0: 6163 653a 5d5d 2220 222f 7661 722f 6c6f  ace:]]" "/var/lo
│ │ │ +001ab2f0: 672f 6175 6469 7422 2922 0a0a 2020 2020  g/audit")"..    
│ │ │ +001ab300: 6772 6570 2022 246d 6f75 6e74 5f70 6f69  grep "$mount_poi
│ │ │ +001ab310: 6e74 5f6d 6174 6368 5f72 6567 6578 7022  nt_match_regexp"
│ │ │ +001ab320: 202d 7120 2f65 7463 2f66 7374 6162 205c   -q /etc/fstab \
│ │ │ +001ab330: 0a20 2020 2020 2020 207c 7c20 7b20 6563  .        || { ec
│ │ │ +001ab340: 686f 2022 5468 6520 6d6f 756e 7420 706f  ho "The mount po
│ │ │ +001ab350: 696e 7420 272f 7661 722f 6c6f 672f 6175  int '/var/log/au
│ │ │ +001ab360: 6469 7427 2069 7320 6e6f 7420 6576 656e  dit' is not even
│ │ │ +001ab370: 2069 6e20 2f65 7463 2f66 7374 6162 2c20   in /etc/fstab, 
│ │ │ +001ab380: 736f 2077 6520 6361 6e27 7420 7365 7420  so we can't set 
│ │ │ +001ab390: 7570 206d 6f75 6e74 206f 7074 696f 6e73  up mount options
│ │ │ +001ab3a0: 2220 2667 743b 2661 6d70 3b32 3b0a 2020  " >&2;.  
│ │ │ +001ab3b0: 2020 2020 2020 2020 2020 2020 2020 6563                ec
│ │ │ +001ab3c0: 686f 2022 4e6f 7420 7265 6d65 6469 6174  ho "Not remediat
│ │ │ +001ab3d0: 696e 672c 2062 6563 6175 7365 2074 6865  ing, because the
│ │ │ +001ab3e0: 7265 2069 7320 6e6f 2072 6563 6f72 6420  re is no record 
│ │ │ +001ab3f0: 6f66 202f 7661 722f 6c6f 672f 6175 6469  of /var/log/audi
│ │ │ +001ab400: 7420 696e 202f 6574 632f 6673 7461 6222  t in /etc/fstab"
│ │ │ +001ab410: 2026 6774 3b26 616d 703b 323b 2072 6574   >&2; ret
│ │ │ +001ab420: 7572 6e20 313b 207d 0a20 2020 200a 0a0a  urn 1; }.    ...
│ │ │ +001ab430: 2020 2020 6d6f 756e 745f 706f 696e 745f      mount_point_
│ │ │ +001ab440: 6d61 7463 685f 7265 6765 7870 3d22 2428  match_regexp="$(
│ │ │ +001ab450: 7072 696e 7466 2022 5e5b 5b3a 7370 6163  printf "^[[:spac
│ │ │ +001ab460: 653a 5d5d 2a5b 5e23 5d2e 2a5b 5b3a 7370  e:]]*[^#].*[[:sp
│ │ │ +001ab470: 6163 653a 5d5d 2573 5b5b 3a73 7061 6365  ace:]]%s[[:space
│ │ │ +001ab480: 3a5d 5d22 202f 7661 722f 6c6f 672f 6175  :]]" /var/log/au
│ │ │ +001ab490: 6469 7429 220a 0a20 2020 2023 2049 6620  dit)"..    # If 
│ │ │ +001ab4a0: 7468 6520 6d6f 756e 7420 706f 696e 7420  the mount point 
│ │ │ +001ab4b0: 6973 206e 6f74 2069 6e20 2f65 7463 2f66  is not in /etc/f
│ │ │ +001ab4c0: 7374 6162 2c20 6765 7420 7072 6576 696f  stab, get previo
│ │ │ +001ab4d0: 7573 206d 6f75 6e74 206f 7074 696f 6e73  us mount options
│ │ │ +001ab4e0: 2066 726f 6d20 2f65 7463 2f6d 7461 620a   from /etc/mtab.
│ │ │ +001ab4f0: 2020 2020 6966 2021 2067 7265 7020 2d71      if ! grep -q
│ │ │ +001ab500: 2022 246d 6f75 6e74 5f70 6f69 6e74 5f6d   "$mount_point_m
│ │ │ +001ab510: 6174 6368 5f72 6567 6578 7022 202f 6574  atch_regexp" /et
│ │ │ +001ab520: 632f 6673 7461 623b 2074 6865 6e0a 2020  c/fstab; then.  
│ │ │ +001ab530: 2020 2020 2020 2320 7275 6e74 696d 6520        # runtime 
│ │ │ +001ab540: 6f70 7473 2077 6974 686f 7574 2073 6f6d  opts without som
│ │ │ +001ab550: 6520 6175 746f 6d61 7469 6320 6b65 726e  e automatic kern
│ │ │ +001ab560: 656c 2f75 7365 7273 7061 6365 2d61 6464  el/userspace-add
│ │ │ +001ab570: 6564 2064 6566 6175 6c74 730a 2020 2020  ed defaults.    
│ │ │ +001ab580: 2020 2020 7072 6576 696f 7573 5f6d 6f75      previous_mou
│ │ │ +001ab590: 6e74 5f6f 7074 733d 2428 6772 6570 2022  nt_opts=$(grep "
│ │ │ +001ab5a0: 246d 6f75 6e74 5f70 6f69 6e74 5f6d 6174  $mount_point_mat
│ │ │ +001ab5b0: 6368 5f72 6567 6578 7022 202f 6574 632f  ch_regexp" /etc/
│ │ │ +001ab5c0: 6d74 6162 207c 2068 6561 6420 2d31 207c  mtab | head -1 |
│ │ │ +001ab5d0: 2020 6177 6b20 277b 7072 696e 7420 2434    awk '{print $4
│ │ │ +001ab5e0: 7d27 205c 0a20 2020 2020 2020 2020 2020  }' \.           
│ │ │ +001ab5f0: 2020 2020 2020 2020 207c 2073 6564 202d           | sed -
│ │ │ +001ab600: 4520 2273 2f28 7277 7c64 6566 6175 6c74  E "s/(rw|default
│ │ │ +001ab610: 737c 7365 636c 6162 656c 7c6e 6f64 6576  s|seclabel|nodev
│ │ │ +001ab620: 2928 2c7c 2429 2f2f 673b 732f 2c24 2f2f  )(,|$)//g;s/,$//
│ │ │ +001ab630: 2229 0a20 2020 2020 2020 205b 2022 2470  ").        [ "$p
│ │ │ +001ab640: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ +001ab650: 7473 2220 5d20 2661 6d70 3b26 616d 703b  ts" ] &&
│ │ │ +001ab660: 2070 7265 7669 6f75 735f 6d6f 756e 745f   previous_mount_
│ │ │ +001ab670: 6f70 7473 2b3d 222c 220a 2020 2020 2020  opts+=",".      
│ │ │ +001ab680: 2020 2320 496e 2069 736f 3936 3630 2066    # In iso9660 f
│ │ │ +001ab690: 696c 6573 7973 7465 6d73 206d 7461 6220  ilesystems mtab 
│ │ │ +001ab6a0: 636f 756c 6420 6465 7363 7269 6265 2061  could describe a
│ │ │ +001ab6b0: 2022 626c 6f63 6b73 697a 6522 2076 616c   "blocksize" val
│ │ │ +001ab6c0: 7565 2c20 7468 6973 2073 686f 756c 6420  ue, this should 
│ │ │ +001ab6d0: 6265 2072 6566 6c65 6374 6564 2069 6e0a  be reflected in.
│ │ │ +001ab6e0: 2020 2020 2020 2020 2320 6673 7461 6220          # fstab 
│ │ │ +001ab6f0: 6173 2022 626c 6f63 6b22 2e20 2054 6865  as "block".  The
│ │ │ +001ab700: 206e 6578 7420 7661 7269 6162 6c65 2069   next variable i
│ │ │ +001ab710: 7320 746f 2073 6174 6973 6679 2073 6865  s to satisfy she
│ │ │ +001ab720: 6c6c 6368 6563 6b20 5343 3230 3530 2e0a  llcheck SC2050..
│ │ │ +001ab730: 2020 2020 2020 2020 6673 5f74 7970 653d          fs_type=
│ │ │ +001ab740: 2222 0a20 2020 2020 2020 2069 6620 5b20  "".        if [ 
│ │ │ +001ab750: 2022 2466 735f 7479 7065 2220 3d3d 2022   "$fs_type" == "
│ │ │ +001ab760: 6973 6f39 3636 3022 205d 203b 2074 6865  iso9660" ] ; the
│ │ │ +001ab770: 6e0a 2020 2020 2020 2020 2020 2020 7072  n.            pr
│ │ │ +001ab780: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ +001ab790: 733d 2428 7365 6420 2773 2f62 6c6f 636b  s=$(sed 's/block
│ │ │ +001ab7a0: 7369 7a65 3d2f 626c 6f63 6b3d 2f27 2026  size=/block=/' &
│ │ │ +001ab7b0: 6c74 3b26 6c74 3b26 6c74 3b20 2224 7072  lt;<< "$pr
│ │ │ +001ab7c0: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ +001ab7d0: 7322 290a 2020 2020 2020 2020 6669 0a20  s").        fi. 
│ │ │ +001ab7e0: 2020 2020 2020 2065 6368 6f20 2220 2f76         echo " /v
│ │ │ +001ab7f0: 6172 2f6c 6f67 2f61 7564 6974 2020 6465  ar/log/audit  de
│ │ │ +001ab800: 6661 756c 7473 2c24 7b70 7265 7669 6f75  faults,${previou
│ │ │ +001ab810: 735f 6d6f 756e 745f 6f70 7473 7d6e 6f64  s_mount_opts}nod
│ │ │ +001ab820: 6576 2030 2030 2220 2667 743b 2667 743b  ev 0 0" >>
│ │ │ +001ab830: 202f 6574 632f 6673 7461 620a 2020 2020   /etc/fstab.    
│ │ │ +001ab840: 2320 4966 2074 6865 206d 6f75 6e74 5f6f  # If the mount_o
│ │ │ +001ab850: 7074 206f 7074 696f 6e20 6973 206e 6f74  pt option is not
│ │ │ +001ab860: 2061 6c72 6561 6479 2069 6e20 7468 6520   already in the 
│ │ │ +001ab870: 6d6f 756e 7420 706f 696e 7427 7320 2f65  mount point's /e
│ │ │ +001ab880: 7463 2f66 7374 6162 2065 6e74 7279 2c20  tc/fstab entry, 
│ │ │ +001ab890: 6164 6420 6974 0a20 2020 2065 6c69 6620  add it.    elif 
│ │ │ +001ab8a0: 2120 6772 6570 2022 246d 6f75 6e74 5f70  ! grep "$mount_p
│ │ │ +001ab8b0: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ +001ab8c0: 7022 202f 6574 632f 6673 7461 6220 7c20  p" /etc/fstab | 
│ │ │ +001ab8d0: 6772 6570 202d 7120 226e 6f64 6576 223b  grep -q "nodev";
│ │ │ +001ab8e0: 2074 6865 6e0a 2020 2020 2020 2020 7072   then.        pr
│ │ │ +001ab8f0: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ +001ab900: 733d 2428 6772 6570 2022 246d 6f75 6e74  s=$(grep "$mount
│ │ │ +001ab910: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ +001ab920: 6578 7022 202f 6574 632f 6673 7461 6220  exp" /etc/fstab 
│ │ │ +001ab930: 7c20 6177 6b20 277b 7072 696e 7420 2434  | awk '{print $4
│ │ │ +001ab940: 7d27 290a 2020 2020 2020 2020 7365 6420  }').        sed 
│ │ │ +001ab950: 2d69 2022 737c 5c28 247b 6d6f 756e 745f  -i "s|\(${mount_
│ │ │ +001ab960: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ +001ab970: 7870 7d2e 2a24 7b70 7265 7669 6f75 735f  xp}.*${previous_
│ │ │ +001ab980: 6d6f 756e 745f 6f70 7473 7d5c 297c 5c31  mount_opts}\)|\1
│ │ │ +001ab990: 2c6e 6f64 6576 7c22 202f 6574 632f 6673  ,nodev|" /etc/fs
│ │ │ +001ab9a0: 7461 620a 2020 2020 6669 0a0a 0a20 2020  tab.    fi...   
│ │ │ +001ab9b0: 2069 6620 6d6b 6469 7220 2d70 2022 2f76   if mkdir -p "/v
│ │ │ +001ab9c0: 6172 2f6c 6f67 2f61 7564 6974 223b 2074  ar/log/audit"; t
│ │ │ +001ab9d0: 6865 6e0a 2020 2020 2020 2020 6966 206d  hen.        if m
│ │ │ +001ab9e0: 6f75 6e74 706f 696e 7420 2d71 2022 2f76  ountpoint -q "/v
│ │ │ +001ab9f0: 6172 2f6c 6f67 2f61 7564 6974 223b 2074  ar/log/audit"; t
│ │ │ +001aba00: 6865 6e0a 2020 2020 2020 2020 2020 2020  hen.            
│ │ │ +001aba10: 6d6f 756e 7420 2d6f 2072 656d 6f75 6e74  mount -o remount
│ │ │ +001aba20: 202d 2d74 6172 6765 7420 222f 7661 722f   --target "/var/
│ │ │ +001aba30: 6c6f 672f 6175 6469 7422 0a20 2020 2020  log/audit".     
│ │ │ +001aba40: 2020 2066 690a 2020 2020 6669 0a7d 0a0a     fi.    fi.}..
│ │ │ +001aba50: 7065 7266 6f72 6d5f 7265 6d65 6469 6174  perform_remediat
│ │ │ +001aba60: 696f 6e0a 0a65 6c73 650a 2020 2020 2667  ion..else.    &g
│ │ │ +001aba70: 743b 2661 6d70 3b32 2065 6368 6f20 2752  t;&2 echo 'R
│ │ │ +001aba80: 656d 6564 6961 7469 6f6e 2069 7320 6e6f  emediation is no
│ │ │ +001aba90: 7420 6170 706c 6963 6162 6c65 2c20 6e6f  t applicable, no
│ │ │ +001abaa0: 7468 696e 6720 7761 7320 646f 6e65 270a  thing was done'.
│ │ │ +001abab0: 6669 0a3c 2f63 6f64 653e 3c2f 7072 653e  fi.
│ │ │ +001abac0: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22 Remediation A │ │ │ +001abb70: 6e61 636f 6e64 6120 736e 6970 7065 7420 naconda snippet │ │ │ +001abb80: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
high │ │ │ +001abc50: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c
Re │ │ │ +001aafa0: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +001aafb0: 6c73 653c 2f74 643e 3c2f 7472 3e3c 2f74 lse
Complexity: │ │ │ +001abc10: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Di │ │ │ +001abc30: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:
Reboot:< │ │ │ +001abc60: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>false
S │ │ │ +001abc80: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:enable
.part /var/l
│ │ │ +001abcc0: 6f67 2f61 7564 6974 202d 2d6d 6f75 6e74  og/audit --mount
│ │ │ +001abcd0: 6f70 7469 6f6e 733d 226e 6f64 6576 220a  options="nodev".
│ │ │  001abce0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
Remediati │ │ │ -001ac930: 6f6e 2041 6e61 636f 6e64 6120 736e 6970 on Anaconda snip │ │ │ -001ac940: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ -001ac950: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -001ac960: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -001ac970: 7365 2220 6964 3d22 6964 3436 3422 3e3c se" id="id464">< │ │ │ -001ac980: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ -001ac990: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ -001ac9a0: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ -001ac9b0: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ -001ac9c0: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Complex │ │ │ -001ac9d0: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ -001ac9e0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Disruption:high< │ │ │ -001aca10: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>Rebo │ │ │ -001aca20: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ -001aca30: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e< │ │ │ -001aca40: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:enable │ │ │ -001aca60: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072 .part /v │ │ │ -001aca80: 6172 2f6c 6f67 2f61 7564 6974 202d 2d6d ar/log/audit --m │ │ │ -001aca90: 6f75 6e74 6f70 7469 6f6e 733d 226e 6f65 ountoptions="noe │ │ │ -001acaa0: 7865 6322 0a3c 2f63 6f64 653e 3c2f 7072 xec".
Remediation │ │ │ -001acb60: 2041 6e73 6962 6c65 2073 6e69 7070 6574 Ansible snippet │ │ │ -001acb70: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Complexity │ │ │ -001acc00: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ -001acc20: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ -001acc30: 7464 3e68 6967 683c 2f74 643e 3c2f 7472 td>highReboot: │ │ │ -001acc50: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ -001acc70: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:configure │ │ │ -001acc90: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072 - name: │ │ │ -001accb0: 4761 7468 6572 2074 6865 2070 6163 6b61 Gather the packa │ │ │ -001accc0: 6765 2066 6163 7473 0a20 2070 6163 6b61 ge facts. packa │ │ │ -001accd0: 6765 5f66 6163 7473 3a0a 2020 2020 6d61 ge_facts:. ma │ │ │ -001acce0: 6e61 6765 723a 2061 7574 6f0a 2020 7461 nager: auto. ta │ │ │ -001accf0: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030 gs:. - NIST-800 │ │ │ -001acd00: 2d35 332d 4143 2d36 0a20 202d 204e 4953 -53-AC-6. - NIS │ │ │ -001acd10: 542d 3830 302d 3533 2d41 432d 3628 3129 T-800-53-AC-6(1) │ │ │ -001acd20: 0a20 202d 204e 4953 542d 3830 302d 3533 . - NIST-800-53 │ │ │ -001acd30: 2d43 4d2d 3628 6129 0a20 202d 204e 4953 -CM-6(a). - NIS │ │ │ -001acd40: 542d 3830 302d 3533 2d43 4d2d 3728 6129 T-800-53-CM-7(a) │ │ │ -001acd50: 0a20 202d 204e 4953 542d 3830 302d 3533 . - NIST-800-53 │ │ │ -001acd60: 2d43 4d2d 3728 6229 0a20 202d 204e 4953 -CM-7(b). - NIS │ │ │ -001acd70: 542d 3830 302d 3533 2d4d 502d 370a 2020 T-800-53-MP-7. │ │ │ -001acd80: 2d20 636f 6e66 6967 7572 655f 7374 7261 - configure_stra │ │ │ -001acd90: 7465 6779 0a20 202d 2068 6967 685f 6469 tegy. - high_di │ │ │ -001acda0: 7372 7570 7469 6f6e 0a20 202d 206c 6f77 sruption. - low │ │ │ -001acdb0: 5f63 6f6d 706c 6578 6974 790a 2020 2d20 _complexity. - │ │ │ -001acdc0: 6d65 6469 756d 5f73 6576 6572 6974 790a medium_severity. │ │ │ -001acdd0: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e - mount_option │ │ │ -001acde0: 5f76 6172 5f6c 6f67 5f61 7564 6974 5f6e _var_log_audit_n │ │ │ -001acdf0: 6f65 7865 630a 2020 2d20 6e6f 5f72 6562 oexec. - no_reb │ │ │ -001ace00: 6f6f 745f 6e65 6564 6564 0a0a 2d20 6e61 oot_needed..- na │ │ │ -001ace10: 6d65 3a20 2741 6464 206e 6f65 7865 6320 me: 'Add noexec │ │ │ -001ace20: 4f70 7469 6f6e 2074 6f20 2f76 6172 2f6c Option to /var/l │ │ │ -001ace30: 6f67 2f61 7564 6974 3a20 4368 6563 6b20 og/audit: Check │ │ │ -001ace40: 696e 666f 726d 6174 696f 6e20 6173 736f information asso │ │ │ -001ace50: 6369 6174 6564 2074 6f20 6d6f 756e 7470 ciated to mountp │ │ │ -001ace60: 6f69 6e74 270a 2020 616e 7369 626c 652e oint'. ansible. │ │ │ -001ace70: 6275 696c 7469 6e2e 636f 6d6d 616e 643a builtin.command: │ │ │ -001ace80: 2066 696e 646d 6e74 202d 2d66 7374 6162 findmnt --fstab │ │ │ -001ace90: 2027 2f76 6172 2f6c 6f67 2f61 7564 6974 '/var/log/audit │ │ │ -001acea0: 270a 2020 7265 6769 7374 6572 3a20 6465 '. register: de │ │ │ -001aceb0: 7669 6365 5f6e 616d 650a 2020 6661 696c vice_name. fail │ │ │ -001acec0: 6564 5f77 6865 6e3a 2064 6576 6963 655f ed_when: device_ │ │ │ -001aced0: 6e61 6d65 2e72 6320 2667 743b 2031 0a20 name.rc > 1. │ │ │ -001acee0: 2063 6861 6e67 6564 5f77 6865 6e3a 2066 changed_when: f │ │ │ -001acef0: 616c 7365 0a20 2063 6865 636b 5f6d 6f64 alse. check_mod │ │ │ -001acf00: 653a 2066 616c 7365 0a20 2077 6865 6e3a e: false. when: │ │ │ -001acf10: 0a20 202d 2028 206e 6f74 2028 2022 6b65 . - ( not ( "ke │ │ │ -001acf20: 726e 656c 2220 696e 2061 6e73 6962 6c65 rnel" in ansible │ │ │ -001acf30: 5f66 6163 7473 2e70 6163 6b61 6765 7320 _facts.packages │ │ │ -001acf40: 616e 6420 2262 6f6f 7463 2220 696e 2061 and "bootc" in a │ │ │ -001acf50: 6e73 6962 6c65 5f66 6163 7473 2e70 6163 nsible_facts.pac │ │ │ -001acf60: 6b61 6765 730a 2020 2020 616e 6420 6e6f kages. and no │ │ │ -001acf70: 7420 226f 7065 6e73 6869 6674 2d6b 7562 t "openshift-kub │ │ │ -001acf80: 656c 6574 2220 696e 2061 6e73 6962 6c65 elet" in ansible │ │ │ -001acf90: 5f66 6163 7473 2e70 6163 6b61 6765 7320 _facts.packages │ │ │ -001acfa0: 616e 6420 226f 7374 7265 6522 2069 6e20 and "ostree" in │ │ │ -001acfb0: 616e 7369 626c 655f 7072 6f63 5f63 6d64 ansible_proc_cmd │ │ │ -001acfc0: 6c69 6e65 0a20 2020 2029 2061 6e64 206e line. ) and n │ │ │ -001acfd0: 6f74 2028 2061 6e73 6962 6c65 5f76 6972 ot ( ansible_vir │ │ │ -001acfe0: 7475 616c 697a 6174 696f 6e5f 7479 7065 tualization_type │ │ │ -001acff0: 2069 6e20 5b22 646f 636b 6572 222c 2022 in ["docker", " │ │ │ -001ad000: 6c78 6322 2c20 226f 7065 6e76 7a22 2c20 lxc", "openvz", │ │ │ -001ad010: 2270 6f64 6d61 6e22 2c0a 2020 2020 2263 "podman",. "c │ │ │ -001ad020: 6f6e 7461 696e 6572 225d 2029 2029 0a20 ontainer"] ) ). │ │ │ -001ad030: 202d 2027 222f 7661 722f 6c6f 672f 6175 - '"/var/log/au │ │ │ -001ad040: 6469 7422 2069 6e20 616e 7369 626c 655f dit" in ansible_ │ │ │ -001ad050: 6d6f 756e 7473 207c 206d 6170 2861 7474 mounts | map(att │ │ │ -001ad060: 7269 6275 7465 3d22 6d6f 756e 7422 2920 ribute="mount") │ │ │ -001ad070: 7c20 6c69 7374 270a 2020 7461 6773 3a0a | list'. tags:. │ │ │ -001ad080: 2020 2d20 4e49 5354 2d38 3030 2d35 332d - NIST-800-53- │ │ │ -001ad090: 4143 2d36 0a20 202d 204e 4953 542d 3830 AC-6. - NIST-80 │ │ │ -001ad0a0: 302d 3533 2d41 432d 3628 3129 0a20 202d 0-53-AC-6(1). - │ │ │ -001ad0b0: 204e 4953 542d 3830 302d 3533 2d43 4d2d NIST-800-53-CM- │ │ │ -001ad0c0: 3628 6129 0a20 202d 204e 4953 542d 3830 6(a). - NIST-80 │ │ │ -001ad0d0: 302d 3533 2d43 4d2d 3728 6129 0a20 202d 0-53-CM-7(a). - │ │ │ -001ad0e0: 204e 4953 542d 3830 302d 3533 2d43 4d2d NIST-800-53-CM- │ │ │ -001ad0f0: 3728 6229 0a20 202d 204e 4953 542d 3830 7(b). - NIST-80 │ │ │ -001ad100: 302d 3533 2d4d 502d 370a 2020 2d20 636f 0-53-MP-7. - co │ │ │ -001ad110: 6e66 6967 7572 655f 7374 7261 7465 6779 nfigure_strategy │ │ │ -001ad120: 0a20 202d 2068 6967 685f 6469 7372 7570 . - high_disrup │ │ │ -001ad130: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d tion. - low_com │ │ │ -001ad140: 706c 6578 6974 790a 2020 2d20 6d65 6469 plexity. - medi │ │ │ -001ad150: 756d 5f73 6576 6572 6974 790a 2020 2d20 um_severity. - │ │ │ -001ad160: 6d6f 756e 745f 6f70 7469 6f6e 5f76 6172 mount_option_var │ │ │ -001ad170: 5f6c 6f67 5f61 7564 6974 5f6e 6f65 7865 _log_audit_noexe │ │ │ -001ad180: 630a 2020 2d20 6e6f 5f72 6562 6f6f 745f c. - no_reboot_ │ │ │ -001ad190: 6e65 6564 6564 0a0a 2d20 6e61 6d65 3a20 needed..- name: │ │ │ -001ad1a0: 2741 6464 206e 6f65 7865 6320 4f70 7469 'Add noexec Opti │ │ │ -001ad1b0: 6f6e 2074 6f20 2f76 6172 2f6c 6f67 2f61 on to /var/log/a │ │ │ -001ad1c0: 7564 6974 3a20 4372 6561 7465 206d 6f75 udit: Create mou │ │ │ -001ad1d0: 6e74 5f69 6e66 6f20 6469 6374 696f 6e61 nt_info dictiona │ │ │ -001ad1e0: 7279 2076 6172 6961 626c 6527 0a20 2073 ry variable'. s │ │ │ -001ad1f0: 6574 5f66 6163 743a 0a20 2020 206d 6f75 et_fact:. mou │ │ │ -001ad200: 6e74 5f69 6e66 6f3a 2027 7b7b 206d 6f75 nt_info: '{{ mou │ │ │ -001ad210: 6e74 5f69 6e66 6f7c 6465 6661 756c 7428 nt_info|default( │ │ │ -001ad220: 7b7d 297c 636f 6d62 696e 6528 7b69 7465 {})|combine({ite │ │ │ -001ad230: 6d2e 303a 2069 7465 6d2e 317d 2920 7d7d m.0: item.1}) }} │ │ │ -001ad240: 270a 2020 7769 7468 5f74 6f67 6574 6865 '. with_togethe │ │ │ -001ad250: 723a 0a20 202d 2027 7b7b 2064 6576 6963 r:. - '{{ devic │ │ │ -001ad260: 655f 6e61 6d65 2e73 7464 6f75 745f 6c69 e_name.stdout_li │ │ │ -001ad270: 6e65 735b 305d 2e73 706c 6974 2829 207c nes[0].split() | │ │ │ -001ad280: 206d 6170 2827 276c 6f77 6572 2727 2920 map(''lower'') │ │ │ -001ad290: 7c20 6c69 7374 207d 7d27 0a20 202d 2027 | list }}'. - ' │ │ │ -001ad2a0: 7b7b 2064 6576 6963 655f 6e61 6d65 2e73 {{ device_name.s │ │ │ -001ad2b0: 7464 6f75 745f 6c69 6e65 735b 315d 2e73 tdout_lines[1].s │ │ │ -001ad2c0: 706c 6974 2829 207c 206c 6973 7420 7d7d plit() | list }} │ │ │ -001ad2d0: 270a 2020 7768 656e 3a0a 2020 2d20 2820 '. when:. - ( │ │ │ -001ad2e0: 6e6f 7420 2820 226b 6572 6e65 6c22 2069 not ( "kernel" i │ │ │ -001ad2f0: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ -001ad300: 7061 636b 6167 6573 2061 6e64 2022 626f packages and "bo │ │ │ -001ad310: 6f74 6322 2069 6e20 616e 7369 626c 655f otc" in ansible_ │ │ │ -001ad320: 6661 6374 732e 7061 636b 6167 6573 0a20 facts.packages. │ │ │ -001ad330: 2020 2061 6e64 206e 6f74 2022 6f70 656e and not "open │ │ │ -001ad340: 7368 6966 742d 6b75 6265 6c65 7422 2069 shift-kubelet" i │ │ │ -001ad350: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ -001ad360: 7061 636b 6167 6573 2061 6e64 2022 6f73 packages and "os │ │ │ -001ad370: 7472 6565 2220 696e 2061 6e73 6962 6c65 tree" in ansible │ │ │ -001ad380: 5f70 726f 635f 636d 646c 696e 650a 2020 _proc_cmdline. │ │ │ -001ad390: 2020 2920 616e 6420 6e6f 7420 2820 616e ) and not ( an │ │ │ -001ad3a0: 7369 626c 655f 7669 7274 7561 6c69 7a61 sible_virtualiza │ │ │ -001ad3b0: 7469 6f6e 5f74 7970 6520 696e 205b 2264 tion_type in ["d │ │ │ -001ad3c0: 6f63 6b65 7222 2c20 226c 7863 222c 2022 ocker", "lxc", " │ │ │ -001ad3d0: 6f70 656e 767a 222c 2022 706f 646d 616e openvz", "podman │ │ │ -001ad3e0: 222c 0a20 2020 2022 636f 6e74 6169 6e65 ",. "containe │ │ │ -001ad3f0: 7222 5d20 2920 290a 2020 2d20 2722 2f76 r"] ) ). - '"/v │ │ │ -001ad400: 6172 2f6c 6f67 2f61 7564 6974 2220 696e ar/log/audit" in │ │ │ -001ad410: 2061 6e73 6962 6c65 5f6d 6f75 6e74 7320 ansible_mounts │ │ │ -001ad420: 7c20 6d61 7028 6174 7472 6962 7574 653d | map(attribute= │ │ │ -001ad430: 226d 6f75 6e74 2229 207c 206c 6973 7427 "mount") | list' │ │ │ -001ad440: 0a20 202d 2064 6576 6963 655f 6e61 6d65 . - device_name │ │ │ -001ad450: 2e73 7464 6f75 7420 6973 2064 6566 696e .stdout is defin │ │ │ -001ad460: 6564 2061 6e64 2064 6576 6963 655f 6e61 ed and device_na │ │ │ -001ad470: 6d65 2e73 7464 6f75 745f 6c69 6e65 7320 me.stdout_lines │ │ │ -001ad480: 6973 2064 6566 696e 6564 0a20 202d 2028 is defined. - ( │ │ │ -001ad490: 6465 7669 6365 5f6e 616d 652e 7374 646f device_name.stdo │ │ │ -001ad4a0: 7574 207c 206c 656e 6774 6820 2667 743b ut | length > │ │ │ -001ad4b0: 2030 290a 2020 7461 6773 3a0a 2020 2d20 0). tags:. - │ │ │ -001ad4c0: 4e49 5354 2d38 3030 2d35 332d 4143 2d36 NIST-800-53-AC-6 │ │ │ -001ad4d0: 0a20 202d 204e 4953 542d 3830 302d 3533 . - NIST-800-53 │ │ │ -001ad4e0: 2d41 432d 3628 3129 0a20 202d 204e 4953 -AC-6(1). - NIS │ │ │ -001ad4f0: 542d 3830 302d 3533 2d43 4d2d 3628 6129 T-800-53-CM-6(a) │ │ │ -001ad500: 0a20 202d 204e 4953 542d 3830 302d 3533 . - NIST-800-53 │ │ │ -001ad510: 2d43 4d2d 3728 6129 0a20 202d 204e 4953 -CM-7(a). - NIS │ │ │ -001ad520: 542d 3830 302d 3533 2d43 4d2d 3728 6229 T-800-53-CM-7(b) │ │ │ -001ad530: 0a20 202d 204e 4953 542d 3830 302d 3533 . - NIST-800-53 │ │ │ -001ad540: 2d4d 502d 370a 2020 2d20 636f 6e66 6967 -MP-7. - config │ │ │ -001ad550: 7572 655f 7374 7261 7465 6779 0a20 202d ure_strategy. - │ │ │ -001ad560: 2068 6967 685f 6469 7372 7570 7469 6f6e high_disruption │ │ │ -001ad570: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578 . - low_complex │ │ │ -001ad580: 6974 790a 2020 2d20 6d65 6469 756d 5f73 ity. - medium_s │ │ │ -001ad590: 6576 6572 6974 790a 2020 2d20 6d6f 756e everity. - moun │ │ │ -001ad5a0: 745f 6f70 7469 6f6e 5f76 6172 5f6c 6f67 t_option_var_log │ │ │ -001ad5b0: 5f61 7564 6974 5f6e 6f65 7865 630a 2020 _audit_noexec. │ │ │ -001ad5c0: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564 - no_reboot_need │ │ │ -001ad5d0: 6564 0a0a 2d20 6e61 6d65 3a20 2741 6464 ed..- name: 'Add │ │ │ -001ad5e0: 206e 6f65 7865 6320 4f70 7469 6f6e 2074 noexec Option t │ │ │ -001ad5f0: 6f20 2f76 6172 2f6c 6f67 2f61 7564 6974 o /var/log/audit │ │ │ -001ad600: 3a20 4966 202f 7661 722f 6c6f 672f 6175 : If /var/log/au │ │ │ -001ad610: 6469 7420 6e6f 7420 6d6f 756e 7465 642c dit not mounted, │ │ │ -001ad620: 2063 7261 6674 0a20 2020 206d 6f75 6e74 craft. mount │ │ │ -001ad630: 5f69 6e66 6f20 6d61 6e75 616c 6c79 270a _info manually'. │ │ │ -001ad640: 2020 7365 745f 6661 6374 3a0a 2020 2020 set_fact:. │ │ │ -001ad650: 6d6f 756e 745f 696e 666f 3a20 277b 7b20 mount_info: '{{ │ │ │ -001ad660: 6d6f 756e 745f 696e 666f 7c64 6566 6175 mount_info|defau │ │ │ -001ad670: 6c74 287b 7d29 7c63 6f6d 6269 6e65 287b lt({})|combine({ │ │ │ -001ad680: 6974 656d 2e30 3a20 6974 656d 2e31 7d29 item.0: item.1}) │ │ │ -001ad690: 207d 7d27 0a20 2077 6974 685f 746f 6765 }}'. with_toge │ │ │ -001ad6a0: 7468 6572 3a0a 2020 2d20 2d20 7461 7267 ther:. - - targ │ │ │ -001ad6b0: 6574 0a20 2020 202d 2073 6f75 7263 650a et. - source. │ │ │ -001ad6c0: 2020 2020 2d20 6673 7479 7065 0a20 2020 - fstype. │ │ │ -001ad6d0: 202d 206f 7074 696f 6e73 0a20 202d 202d - options. - - │ │ │ -001ad6e0: 202f 7661 722f 6c6f 672f 6175 6469 740a /var/log/audit. │ │ │ -001ad6f0: 2020 2020 2d20 2727 0a20 2020 202d 2027 - ''. - ' │ │ │ -001ad700: 270a 2020 2020 2d20 6465 6661 756c 7473 '. - defaults │ │ │ -001ad710: 0a20 2077 6865 6e3a 0a20 202d 2028 206e . when:. - ( n │ │ │ -001ad720: 6f74 2028 2022 6b65 726e 656c 2220 696e ot ( "kernel" in │ │ │ -001ad730: 2061 6e73 6962 6c65 5f66 6163 7473 2e70 ansible_facts.p │ │ │ -001ad740: 6163 6b61 6765 7320 616e 6420 2262 6f6f ackages and "boo │ │ │ -001ad750: 7463 2220 696e 2061 6e73 6962 6c65 5f66 tc" in ansible_f │ │ │ -001ad760: 6163 7473 2e70 6163 6b61 6765 730a 2020 acts.packages. │ │ │ -001ad770: 2020 616e 6420 6e6f 7420 226f 7065 6e73 and not "opens │ │ │ -001ad780: 6869 6674 2d6b 7562 656c 6574 2220 696e hift-kubelet" in │ │ │ -001ad790: 2061 6e73 6962 6c65 5f66 6163 7473 2e70 ansible_facts.p │ │ │ -001ad7a0: 6163 6b61 6765 7320 616e 6420 226f 7374 ackages and "ost │ │ │ -001ad7b0: 7265 6522 2069 6e20 616e 7369 626c 655f ree" in ansible_ │ │ │ -001ad7c0: 7072 6f63 5f63 6d64 6c69 6e65 0a20 2020 proc_cmdline. │ │ │ -001ad7d0: 2029 2061 6e64 206e 6f74 2028 2061 6e73 ) and not ( ans │ │ │ -001ad7e0: 6962 6c65 5f76 6972 7475 616c 697a 6174 ible_virtualizat │ │ │ -001ad7f0: 696f 6e5f 7479 7065 2069 6e20 5b22 646f ion_type in ["do │ │ │ -001ad800: 636b 6572 222c 2022 6c78 6322 2c20 226f cker", "lxc", "o │ │ │ -001ad810: 7065 6e76 7a22 2c20 2270 6f64 6d61 6e22 penvz", "podman" │ │ │ -001ad820: 2c0a 2020 2020 2263 6f6e 7461 696e 6572 ,. "container │ │ │ -001ad830: 225d 2029 2029 0a20 202d 2027 222f 7661 "] ) ). - '"/va │ │ │ -001ad840: 722f 6c6f 672f 6175 6469 7422 2069 6e20 r/log/audit" in │ │ │ -001ad850: 616e 7369 626c 655f 6d6f 756e 7473 207c ansible_mounts | │ │ │ -001ad860: 206d 6170 2861 7474 7269 6275 7465 3d22 map(attribute=" │ │ │ -001ad870: 6d6f 756e 7422 2920 7c20 6c69 7374 270a mount") | list'. │ │ │ -001ad880: 2020 2d20 2822 2d2d 6673 7461 6222 207c - ("--fstab" | │ │ │ -001ad890: 206c 656e 6774 6820 3d3d 2030 290a 2020 length == 0). │ │ │ -001ad8a0: 2d20 6465 7669 6365 5f6e 616d 652e 7374 - device_name.st │ │ │ -001ad8b0: 646f 7574 2069 7320 6465 6669 6e65 6420 dout is defined │ │ │ -001ad8c0: 616e 6420 6465 7669 6365 5f6e 616d 652e and device_name. │ │ │ -001ad8d0: 7374 646f 7574 5f6c 696e 6573 2069 7320 stdout_lines is │ │ │ -001ad8e0: 6465 6669 6e65 640a 2020 2d20 2864 6576 defined. - (dev │ │ │ -001ad8f0: 6963 655f 6e61 6d65 2e73 7464 6f75 7420 ice_name.stdout │ │ │ -001ad900: 7c20 6c65 6e67 7468 203d 3d20 3029 0a20 | length == 0). │ │ │ -001ad910: 2074 6167 733a 0a20 202d 204e 4953 542d tags:. - NIST- │ │ │ -001ad920: 3830 302d 3533 2d41 432d 360a 2020 2d20 800-53-AC-6. - │ │ │ -001ad930: 4e49 5354 2d38 3030 2d35 332d 4143 2d36 NIST-800-53-AC-6 │ │ │ -001ad940: 2831 290a 2020 2d20 4e49 5354 2d38 3030 (1). - NIST-800 │ │ │ -001ad950: 2d35 332d 434d 2d36 2861 290a 2020 2d20 -53-CM-6(a). - │ │ │ -001ad960: 4e49 5354 2d38 3030 2d35 332d 434d 2d37 NIST-800-53-CM-7 │ │ │ -001ad970: 2861 290a 2020 2d20 4e49 5354 2d38 3030 (a). - NIST-800 │ │ │ -001ad980: 2d35 332d 434d 2d37 2862 290a 2020 2d20 -53-CM-7(b). - │ │ │ -001ad990: 4e49 5354 2d38 3030 2d35 332d 4d50 2d37 NIST-800-53-MP-7 │ │ │ -001ad9a0: 0a20 202d 2063 6f6e 6669 6775 7265 5f73 . - configure_s │ │ │ -001ad9b0: 7472 6174 6567 790a 2020 2d20 6869 6768 trategy. - high │ │ │ -001ad9c0: 5f64 6973 7275 7074 696f 6e0a 2020 2d20 _disruption. - │ │ │ -001ad9d0: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20 low_complexity. │ │ │ -001ad9e0: 202d 206d 6564 6975 6d5f 7365 7665 7269 - medium_severi │ │ │ -001ad9f0: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074 ty. - mount_opt │ │ │ -001ada00: 696f 6e5f 7661 725f 6c6f 675f 6175 6469 ion_var_log_audi │ │ │ -001ada10: 745f 6e6f 6578 6563 0a20 202d 206e 6f5f t_noexec. - no_ │ │ │ -001ada20: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d reboot_needed..- │ │ │ -001ada30: 206e 616d 653a 2027 4164 6420 6e6f 6578 name: 'Add noex │ │ │ -001ada40: 6563 204f 7074 696f 6e20 746f 202f 7661 ec Option to /va │ │ │ -001ada50: 722f 6c6f 672f 6175 6469 743a 204d 616b r/log/audit: Mak │ │ │ -001ada60: 6520 7375 7265 206e 6f65 7865 6320 6f70 e sure noexec op │ │ │ -001ada70: 7469 6f6e 2069 7320 7061 7274 206f 6620 tion is part of │ │ │ -001ada80: 7468 650a 2020 2020 746f 202f 7661 722f the. to /var/ │ │ │ -001ada90: 6c6f 672f 6175 6469 7420 6f70 7469 6f6e log/audit option │ │ │ -001adaa0: 7327 0a20 2073 6574 5f66 6163 743a 0a20 s'. set_fact:. │ │ │ -001adab0: 2020 206d 6f75 6e74 5f69 6e66 6f3a 2027 mount_info: ' │ │ │ -001adac0: 7b7b 206d 6f75 6e74 5f69 6e66 6f20 7c20 {{ mount_info | │ │ │ -001adad0: 636f 6d62 696e 6528 207b 2727 6f70 7469 combine( {''opti │ │ │ -001adae0: 6f6e 7327 273a 2727 2727 7e28 6d6f 756e ons'':''''~(moun │ │ │ -001adaf0: 745f 696e 666f 2e6f 7074 696f 6e73 207c t_info.options | │ │ │ -001adb00: 0a20 2020 2020 2064 6566 6175 6c74 2827 . default(' │ │ │ -001adb10: 2727 2729 297e 2827 272c 2727 2069 6620 '''))~('','' if │ │ │ -001adb20: 286d 6f75 6e74 5f69 6e66 6f2e 6f70 7469 (mount_info.opti │ │ │ -001adb30: 6f6e 7320 7c20 6465 6661 756c 7428 2727 ons | default('' │ │ │ -001adb40: 2727 2929 2065 6c73 6520 2727 2727 297e '')) else '''')~ │ │ │ -001adb50: 2727 6e6f 6578 6563 2727 0a20 2020 2020 ''noexec''. │ │ │ -001adb60: 207d 2920 7d7d 270a 2020 7768 656e 3a0a }) }}'. when:. │ │ │ -001adb70: 2020 2d20 2820 6e6f 7420 2820 226b 6572 - ( not ( "ker │ │ │ -001adb80: 6e65 6c22 2069 6e20 616e 7369 626c 655f nel" in ansible_ │ │ │ -001adb90: 6661 6374 732e 7061 636b 6167 6573 2061 facts.packages a │ │ │ -001adba0: 6e64 2022 626f 6f74 6322 2069 6e20 616e nd "bootc" in an │ │ │ -001adbb0: 7369 626c 655f 6661 6374 732e 7061 636b sible_facts.pack │ │ │ -001adbc0: 6167 6573 0a20 2020 2061 6e64 206e 6f74 ages. and not │ │ │ -001adbd0: 2022 6f70 656e 7368 6966 742d 6b75 6265 "openshift-kube │ │ │ -001adbe0: 6c65 7422 2069 6e20 616e 7369 626c 655f let" in ansible_ │ │ │ -001adbf0: 6661 6374 732e 7061 636b 6167 6573 2061 facts.packages a │ │ │ -001adc00: 6e64 2022 6f73 7472 6565 2220 696e 2061 nd "ostree" in a │ │ │ -001adc10: 6e73 6962 6c65 5f70 726f 635f 636d 646c nsible_proc_cmdl │ │ │ -001adc20: 696e 650a 2020 2020 2920 616e 6420 6e6f ine. ) and no │ │ │ -001adc30: 7420 2820 616e 7369 626c 655f 7669 7274 t ( ansible_virt │ │ │ -001adc40: 7561 6c69 7a61 7469 6f6e 5f74 7970 6520 ualization_type │ │ │ -001adc50: 696e 205b 2264 6f63 6b65 7222 2c20 226c in ["docker", "l │ │ │ -001adc60: 7863 222c 2022 6f70 656e 767a 222c 2022 xc", "openvz", " │ │ │ -001adc70: 706f 646d 616e 222c 0a20 2020 2022 636f podman",. "co │ │ │ -001adc80: 6e74 6169 6e65 7222 5d20 2920 290a 2020 ntainer"] ) ). │ │ │ -001adc90: 2d20 2722 2f76 6172 2f6c 6f67 2f61 7564 - '"/var/log/aud │ │ │ -001adca0: 6974 2220 696e 2061 6e73 6962 6c65 5f6d it" in ansible_m │ │ │ -001adcb0: 6f75 6e74 7320 7c20 6d61 7028 6174 7472 ounts | map(attr │ │ │ -001adcc0: 6962 7574 653d 226d 6f75 6e74 2229 207c ibute="mount") | │ │ │ -001adcd0: 206c 6973 7427 0a20 202d 206d 6f75 6e74 list'. - mount │ │ │ -001adce0: 5f69 6e66 6f20 6973 2064 6566 696e 6564 _info is defined │ │ │ -001adcf0: 2061 6e64 2022 6e6f 6578 6563 2220 6e6f and "noexec" no │ │ │ -001add00: 7420 696e 2028 6d6f 756e 745f 696e 666f t in (mount_info │ │ │ -001add10: 2e6f 7074 696f 6e73 207c 2064 6566 6175 .options | defau │ │ │ -001add20: 6c74 2827 2729 290a 2020 7461 6773 3a0a lt('')). tags:. │ │ │ -001add30: 2020 2d20 4e49 5354 2d38 3030 2d35 332d - NIST-800-53- │ │ │ -001add40: 4143 2d36 0a20 202d 204e 4953 542d 3830 AC-6. - NIST-80 │ │ │ -001add50: 302d 3533 2d41 432d 3628 3129 0a20 202d 0-53-AC-6(1). - │ │ │ -001add60: 204e 4953 542d 3830 302d 3533 2d43 4d2d NIST-800-53-CM- │ │ │ -001add70: 3628 6129 0a20 202d 204e 4953 542d 3830 6(a). - NIST-80 │ │ │ -001add80: 302d 3533 2d43 4d2d 3728 6129 0a20 202d 0-53-CM-7(a). - │ │ │ -001add90: 204e 4953 542d 3830 302d 3533 2d43 4d2d NIST-800-53-CM- │ │ │ -001adda0: 3728 6229 0a20 202d 204e 4953 542d 3830 7(b). - NIST-80 │ │ │ -001addb0: 302d 3533 2d4d 502d 370a 2020 2d20 636f 0-53-MP-7. - co │ │ │ -001addc0: 6e66 6967 7572 655f 7374 7261 7465 6779 nfigure_strategy │ │ │ -001addd0: 0a20 202d 2068 6967 685f 6469 7372 7570 . - high_disrup │ │ │ -001adde0: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d tion. - low_com │ │ │ -001addf0: 706c 6578 6974 790a 2020 2d20 6d65 6469 plexity. - medi │ │ │ -001ade00: 756d 5f73 6576 6572 6974 790a 2020 2d20 um_severity. - │ │ │ -001ade10: 6d6f 756e 745f 6f70 7469 6f6e 5f76 6172 mount_option_var │ │ │ -001ade20: 5f6c 6f67 5f61 7564 6974 5f6e 6f65 7865 _log_audit_noexe │ │ │ -001ade30: 630a 2020 2d20 6e6f 5f72 6562 6f6f 745f c. - no_reboot_ │ │ │ -001ade40: 6e65 6564 6564 0a0a 2d20 6e61 6d65 3a20 needed..- name: │ │ │ -001ade50: 2741 6464 206e 6f65 7865 6320 4f70 7469 'Add noexec Opti │ │ │ -001ade60: 6f6e 2074 6f20 2f76 6172 2f6c 6f67 2f61 on to /var/log/a │ │ │ -001ade70: 7564 6974 3a20 456e 7375 7265 202f 7661 udit: Ensure /va │ │ │ -001ade80: 722f 6c6f 672f 6175 6469 7420 6973 206d r/log/audit is m │ │ │ -001ade90: 6f75 6e74 6564 2077 6974 680a 2020 2020 ounted with. │ │ │ -001adea0: 6e6f 6578 6563 206f 7074 696f 6e27 0a20 noexec option'. │ │ │ -001adeb0: 2061 6e73 6962 6c65 2e70 6f73 6978 2e6d ansible.posix.m │ │ │ -001adec0: 6f75 6e74 3a0a 2020 2020 7061 7468 3a20 ount:. path: │ │ │ -001aded0: 2f76 6172 2f6c 6f67 2f61 7564 6974 0a20 /var/log/audit. │ │ │ -001adee0: 2020 2073 7263 3a20 277b 7b20 6d6f 756e src: '{{ moun │ │ │ -001adef0: 745f 696e 666f 2e73 6f75 7263 6520 7c20 t_info.source | │ │ │ -001adf00: 6465 6661 756c 7428 2727 2727 2920 7d7d default('''') }} │ │ │ -001adf10: 270a 2020 2020 6f70 7473 3a20 277b 7b20 '. opts: '{{ │ │ │ -001adf20: 6d6f 756e 745f 696e 666f 2e6f 7074 696f mount_info.optio │ │ │ -001adf30: 6e73 207c 2064 6566 6175 6c74 2827 2727 ns | default(''' │ │ │ -001adf40: 2729 207d 7d27 0a20 2020 2073 7461 7465 ') }}'. state │ │ │ -001adf50: 3a20 6d6f 756e 7465 640a 2020 2020 6673 : mounted. fs │ │ │ -001adf60: 7479 7065 3a20 277b 7b20 6d6f 756e 745f type: '{{ mount_ │ │ │ -001adf70: 696e 666f 2e66 7374 7970 6520 7c20 6465 info.fstype | de │ │ │ -001adf80: 6661 756c 7428 2727 2727 2920 7d7d 270a fault('''') }}'. │ │ │ -001adf90: 2020 7265 6769 7374 6572 3a20 6d6f 756e register: moun │ │ │ -001adfa0: 745f 7265 7375 6c74 0a20 2066 6169 6c65 t_result. faile │ │ │ -001adfb0: 645f 7768 656e 3a0a 2020 2d20 6d6f 756e d_when:. - moun │ │ │ -001adfc0: 745f 7265 7375 6c74 2069 7320 6661 696c t_result is fail │ │ │ -001adfd0: 6564 0a20 202d 2027 2727 7461 7267 6574 ed. - '''target │ │ │ -001adfe0: 2069 7320 6275 7379 2727 206e 6f74 2069 is busy'' not i │ │ │ -001adff0: 6e20 286d 6f75 6e74 5f72 6573 756c 742e n (mount_result. │ │ │ -001ae000: 6d73 6720 7c20 6465 6661 756c 7428 2727 msg | default('' │ │ │ -001ae010: 2727 2929 270a 2020 2d20 2727 2761 6c72 ''))'. - '''alr │ │ │ -001ae020: 6561 6479 206d 6f75 6e74 6564 2727 206e eady mounted'' n │ │ │ -001ae030: 6f74 2069 6e20 286d 6f75 6e74 5f72 6573 ot in (mount_res │ │ │ -001ae040: 756c 742e 6d73 6720 7c20 6465 6661 756c ult.msg | defaul │ │ │ -001ae050: 7428 2727 2727 2929 270a 2020 7768 656e t(''''))'. when │ │ │ -001ae060: 3a0a 2020 2d20 2820 6e6f 7420 2820 226b :. - ( not ( "k │ │ │ -001ae070: 6572 6e65 6c22 2069 6e20 616e 7369 626c ernel" in ansibl │ │ │ -001ae080: 655f 6661 6374 732e 7061 636b 6167 6573 e_facts.packages │ │ │ -001ae090: 2061 6e64 2022 626f 6f74 6322 2069 6e20 and "bootc" in │ │ │ -001ae0a0: 616e 7369 626c 655f 6661 6374 732e 7061 ansible_facts.pa │ │ │ -001ae0b0: 636b 6167 6573 0a20 2020 2061 6e64 206e ckages. and n │ │ │ -001ae0c0: 6f74 2022 6f70 656e 7368 6966 742d 6b75 ot "openshift-ku │ │ │ -001ae0d0: 6265 6c65 7422 2069 6e20 616e 7369 626c belet" in ansibl │ │ │ -001ae0e0: 655f 6661 6374 732e 7061 636b 6167 6573 e_facts.packages │ │ │ -001ae0f0: 2061 6e64 2022 6f73 7472 6565 2220 696e and "ostree" in │ │ │ -001ae100: 2061 6e73 6962 6c65 5f70 726f 635f 636d ansible_proc_cm │ │ │ -001ae110: 646c 696e 650a 2020 2020 2920 616e 6420 dline. ) and │ │ │ -001ae120: 6e6f 7420 2820 616e 7369 626c 655f 7669 not ( ansible_vi │ │ │ -001ae130: 7274 7561 6c69 7a61 7469 6f6e 5f74 7970 rtualization_typ │ │ │ -001ae140: 6520 696e 205b 2264 6f63 6b65 7222 2c20 e in ["docker", │ │ │ -001ae150: 226c 7863 222c 2022 6f70 656e 767a 222c "lxc", "openvz", │ │ │ -001ae160: 2022 706f 646d 616e 222c 0a20 2020 2022 "podman",. " │ │ │ -001ae170: 636f 6e74 6169 6e65 7222 5d20 2920 290a container"] ) ). │ │ │ -001ae180: 2020 2d20 2722 2f76 6172 2f6c 6f67 2f61 - '"/var/log/a │ │ │ -001ae190: 7564 6974 2220 696e 2061 6e73 6962 6c65 udit" in ansible │ │ │ -001ae1a0: 5f6d 6f75 6e74 7320 7c20 6d61 7028 6174 _mounts | map(at │ │ │ -001ae1b0: 7472 6962 7574 653d 226d 6f75 6e74 2229 tribute="mount") │ │ │ -001ae1c0: 207c 206c 6973 7427 0a20 202d 206d 6f75 | list'. - mou │ │ │ -001ae1d0: 6e74 5f69 6e66 6f20 6973 2064 6566 696e nt_info is defin │ │ │ -001ae1e0: 6564 0a20 202d 2028 6465 7669 6365 5f6e ed. - (device_n │ │ │ -001ae1f0: 616d 652e 7374 646f 7574 2069 7320 6465 ame.stdout is de │ │ │ -001ae200: 6669 6e65 6420 616e 6420 2864 6576 6963 fined and (devic │ │ │ -001ae210: 655f 6e61 6d65 2e73 7464 6f75 7420 7c20 e_name.stdout | │ │ │ -001ae220: 6c65 6e67 7468 2026 6774 3b20 3029 2920 length > 0)) │ │ │ -001ae230: 6f72 2028 222d 2d66 7374 6162 220a 2020 or ("--fstab". │ │ │ -001ae240: 2020 7c20 6c65 6e67 7468 203d 3d20 3029 | length == 0) │ │ │ -001ae250: 0a20 2074 6167 733a 0a20 202d 204e 4953 . tags:. - NIS │ │ │ -001ae260: 542d 3830 302d 3533 2d41 432d 360a 2020 T-800-53-AC-6. │ │ │ -001ae270: 2d20 4e49 5354 2d38 3030 2d35 332d 4143 - NIST-800-53-AC │ │ │ -001ae280: 2d36 2831 290a 2020 2d20 4e49 5354 2d38 -6(1). - NIST-8 │ │ │ -001ae290: 3030 2d35 332d 434d 2d36 2861 290a 2020 00-53-CM-6(a). │ │ │ -001ae2a0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d - NIST-800-53-CM │ │ │ -001ae2b0: 2d37 2861 290a 2020 2d20 4e49 5354 2d38 -7(a). - NIST-8 │ │ │ -001ae2c0: 3030 2d35 332d 434d 2d37 2862 290a 2020 00-53-CM-7(b). │ │ │ -001ae2d0: 2d20 4e49 5354 2d38 3030 2d35 332d 4d50 - NIST-800-53-MP │ │ │ -001ae2e0: 2d37 0a20 202d 2063 6f6e 6669 6775 7265 -7. - configure │ │ │ -001ae2f0: 5f73 7472 6174 6567 790a 2020 2d20 6869 _strategy. - hi │ │ │ -001ae300: 6768 5f64 6973 7275 7074 696f 6e0a 2020 gh_disruption. │ │ │ -001ae310: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479 - low_complexity │ │ │ -001ae320: 0a20 202d 206d 6564 6975 6d5f 7365 7665 . - medium_seve │ │ │ -001ae330: 7269 7479 0a20 202d 206d 6f75 6e74 5f6f rity. - mount_o │ │ │ -001ae340: 7074 696f 6e5f 7661 725f 6c6f 675f 6175 ption_var_log_au │ │ │ -001ae350: 6469 745f 6e6f 6578 6563 0a20 202d 206e dit_noexec. - n │ │ │ -001ae360: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a o_reboot_needed. │ │ │ -001ae370: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64 │ │ │ -001ae420: 5265 6d65 6469 6174 696f 6e20 5368 656c Remediation Shel │ │ │ -001ae430: 6c20 7363 7269 7074 20e2 87b2 3c2f 613e l script ... │ │ │ -001ae440: 3c62 723e 3c64 6976 2063 6c61 7373 3d22

│ │ │ -001ae4f0: 2320 5265 6d65 6469 6174 696f 6e20 6973  # Remediation is
│ │ │ -001ae500: 2061 7070 6c69 6361 626c 6520 6f6e 6c79   applicable only
│ │ │ -001ae510: 2069 6e20 6365 7274 6169 6e20 706c 6174   in certain plat
│ │ │ -001ae520: 666f 726d 730a 6966 2028 2021 2028 207b  forms.if ( ! ( {
│ │ │ -001ae530: 2072 706d 202d 2d71 7569 6574 202d 7120   rpm --quiet -q 
│ │ │ -001ae540: 6b65 726e 656c 203b 7d20 2661 6d70 3b26  kernel ;} &&
│ │ │ -001ae550: 616d 703b 207b 2072 706d 202d 2d71 7569  amp; { rpm --qui
│ │ │ -001ae560: 6574 202d 7120 626f 6f74 6320 3b7d 2026  et -q bootc ;} &
│ │ │ -001ae570: 616d 703b 2661 6d70 3b20 7b20 2120 7270  amp;& { ! rp
│ │ │ -001ae580: 6d20 2d2d 7175 6965 7420 2d71 206f 7065  m --quiet -q ope
│ │ │ -001ae590: 6e73 6869 6674 2d6b 7562 656c 6574 203b  nshift-kubelet ;
│ │ │ -001ae5a0: 7d20 2661 6d70 3b26 616d 703b 2028 5b20  } && ([ 
│ │ │ -001ae5b0: 2d66 202f 7275 6e2f 6f73 7472 6565 2d62  -f /run/ostree-b
│ │ │ -001ae5c0: 6f6f 7465 6420 5d20 7c7c 205b 202d 4c20  ooted ] || [ -L 
│ │ │ -001ae5d0: 2f6f 7374 7265 6520 5d29 2029 2026 616d  /ostree ]) ) &am
│ │ │ -001ae5e0: 703b 2661 6d70 3b20 2120 2820 5b20 2d66  p;& ! ( [ -f
│ │ │ -001ae5f0: 202f 2e64 6f63 6b65 7265 6e76 205d 207c   /.dockerenv ] |
│ │ │ -001ae600: 7c20 5b20 2d66 202f 7275 6e2f 2e63 6f6e  | [ -f /run/.con
│ │ │ -001ae610: 7461 696e 6572 656e 7620 5d20 2920 2920  tainerenv ] ) ) 
│ │ │ -001ae620: 2661 6d70 3b26 616d 703b 207b 2028 2066  && { ( f
│ │ │ -001ae630: 696e 646d 6e74 202d 2d6b 6572 6e65 6c20  indmnt --kernel 
│ │ │ -001ae640: 222f 7661 722f 6c6f 672f 6175 6469 7422  "/var/log/audit"
│ │ │ -001ae650: 2026 6774 3b20 2f64 6576 2f6e 756c 6c20   > /dev/null 
│ │ │ -001ae660: 7c7c 2066 696e 646d 6e74 202d 2d66 7374  || findmnt --fst
│ │ │ -001ae670: 6162 2022 2f76 6172 2f6c 6f67 2f61 7564  ab "/var/log/aud
│ │ │ -001ae680: 6974 2220 2667 743b 202f 6465 762f 6e75  it" > /dev/nu
│ │ │ -001ae690: 6c6c 2029 3b20 7d3b 2074 6865 6e0a 0a66  ll ); }; then..f
│ │ │ -001ae6a0: 756e 6374 696f 6e20 7065 7266 6f72 6d5f  unction perform_
│ │ │ -001ae6b0: 7265 6d65 6469 6174 696f 6e20 7b0a 0a20  remediation {.. 
│ │ │ -001ae6c0: 2020 200a 2020 2020 2020 2020 2320 7468     .        # th
│ │ │ -001ae6d0: 6520 6d6f 756e 7420 706f 696e 7420 2f76  e mount point /v
│ │ │ -001ae6e0: 6172 2f6c 6f67 2f61 7564 6974 2068 6173  ar/log/audit has
│ │ │ -001ae6f0: 2074 6f20 6265 2064 6566 696e 6564 2069   to be defined i
│ │ │ -001ae700: 6e20 2f65 7463 2f66 7374 6162 0a20 2020  n /etc/fstab.   
│ │ │ -001ae710: 2020 2020 2023 2062 6566 6f72 6520 7468       # before th
│ │ │ -001ae720: 6973 2072 656d 6564 6961 7469 6f6e 2063  is remediation c
│ │ │ -001ae730: 616e 2062 6520 6578 6563 7574 6564 2e20  an be executed. 
│ │ │ -001ae740: 496e 2063 6173 6520 6974 2069 7320 6e6f  In case it is no
│ │ │ -001ae750: 7420 6465 6669 6e65 642c 2074 6865 0a20  t defined, the. 
│ │ │ -001ae760: 2020 2020 2020 2023 2072 656d 6564 6961         # remedia
│ │ │ -001ae770: 7469 6f6e 2061 626f 7274 7320 616e 6420  tion aborts and 
│ │ │ -001ae780: 6e6f 2063 6861 6e67 6573 2072 6567 6172  no changes regar
│ │ │ -001ae790: 6469 6e67 2074 6865 206d 6f75 6e74 2070  ding the mount p
│ │ │ -001ae7a0: 6f69 6e74 2061 7265 2064 6f6e 652e 0a20  oint are done.. 
│ │ │ -001ae7b0: 2020 2020 2020 206d 6f75 6e74 5f70 6f69         mount_poi
│ │ │ -001ae7c0: 6e74 5f6d 6174 6368 5f72 6567 6578 703d  nt_match_regexp=
│ │ │ -001ae7d0: 2224 2870 7269 6e74 6620 225e 5b5b 3a73  "$(printf "^[[:s
│ │ │ -001ae7e0: 7061 6365 3a5d 5d2a 5b5e 235d 2e2a 5b5b  pace:]]*[^#].*[[
│ │ │ -001ae7f0: 3a73 7061 6365 3a5d 5d25 735b 5b3a 7370  :space:]]%s[[:sp
│ │ │ -001ae800: 6163 653a 5d5d 2220 222f 7661 722f 6c6f  ace:]]" "/var/lo
│ │ │ -001ae810: 672f 6175 6469 7422 2922 0a0a 2020 2020  g/audit")"..    
│ │ │ -001ae820: 6772 6570 2022 246d 6f75 6e74 5f70 6f69  grep "$mount_poi
│ │ │ -001ae830: 6e74 5f6d 6174 6368 5f72 6567 6578 7022  nt_match_regexp"
│ │ │ -001ae840: 202d 7120 2f65 7463 2f66 7374 6162 205c   -q /etc/fstab \
│ │ │ -001ae850: 0a20 2020 2020 2020 207c 7c20 7b20 6563  .        || { ec
│ │ │ -001ae860: 686f 2022 5468 6520 6d6f 756e 7420 706f  ho "The mount po
│ │ │ -001ae870: 696e 7420 272f 7661 722f 6c6f 672f 6175  int '/var/log/au
│ │ │ -001ae880: 6469 7427 2069 7320 6e6f 7420 6576 656e  dit' is not even
│ │ │ -001ae890: 2069 6e20 2f65 7463 2f66 7374 6162 2c20   in /etc/fstab, 
│ │ │ -001ae8a0: 736f 2077 6520 6361 6e27 7420 7365 7420  so we can't set 
│ │ │ -001ae8b0: 7570 206d 6f75 6e74 206f 7074 696f 6e73  up mount options
│ │ │ -001ae8c0: 2220 2667 743b 2661 6d70 3b32 3b0a 2020  " >&2;.  
│ │ │ -001ae8d0: 2020 2020 2020 2020 2020 2020 2020 6563                ec
│ │ │ -001ae8e0: 686f 2022 4e6f 7420 7265 6d65 6469 6174  ho "Not remediat
│ │ │ -001ae8f0: 696e 672c 2062 6563 6175 7365 2074 6865  ing, because the
│ │ │ -001ae900: 7265 2069 7320 6e6f 2072 6563 6f72 6420  re is no record 
│ │ │ -001ae910: 6f66 202f 7661 722f 6c6f 672f 6175 6469  of /var/log/audi
│ │ │ -001ae920: 7420 696e 202f 6574 632f 6673 7461 6222  t in /etc/fstab"
│ │ │ -001ae930: 2026 6774 3b26 616d 703b 323b 2072 6574   >&2; ret
│ │ │ -001ae940: 7572 6e20 313b 207d 0a20 2020 200a 0a0a  urn 1; }.    ...
│ │ │ -001ae950: 2020 2020 6d6f 756e 745f 706f 696e 745f      mount_point_
│ │ │ -001ae960: 6d61 7463 685f 7265 6765 7870 3d22 2428  match_regexp="$(
│ │ │ -001ae970: 7072 696e 7466 2022 5e5b 5b3a 7370 6163  printf "^[[:spac
│ │ │ -001ae980: 653a 5d5d 2a5b 5e23 5d2e 2a5b 5b3a 7370  e:]]*[^#].*[[:sp
│ │ │ -001ae990: 6163 653a 5d5d 2573 5b5b 3a73 7061 6365  ace:]]%s[[:space
│ │ │ -001ae9a0: 3a5d 5d22 202f 7661 722f 6c6f 672f 6175  :]]" /var/log/au
│ │ │ -001ae9b0: 6469 7429 220a 0a20 2020 2023 2049 6620  dit)"..    # If 
│ │ │ -001ae9c0: 7468 6520 6d6f 756e 7420 706f 696e 7420  the mount point 
│ │ │ -001ae9d0: 6973 206e 6f74 2069 6e20 2f65 7463 2f66  is not in /etc/f
│ │ │ -001ae9e0: 7374 6162 2c20 6765 7420 7072 6576 696f  stab, get previo
│ │ │ -001ae9f0: 7573 206d 6f75 6e74 206f 7074 696f 6e73  us mount options
│ │ │ -001aea00: 2066 726f 6d20 2f65 7463 2f6d 7461 620a   from /etc/mtab.
│ │ │ -001aea10: 2020 2020 6966 2021 2067 7265 7020 2d71      if ! grep -q
│ │ │ -001aea20: 2022 246d 6f75 6e74 5f70 6f69 6e74 5f6d   "$mount_point_m
│ │ │ -001aea30: 6174 6368 5f72 6567 6578 7022 202f 6574  atch_regexp" /et
│ │ │ -001aea40: 632f 6673 7461 623b 2074 6865 6e0a 2020  c/fstab; then.  
│ │ │ -001aea50: 2020 2020 2020 2320 7275 6e74 696d 6520        # runtime 
│ │ │ -001aea60: 6f70 7473 2077 6974 686f 7574 2073 6f6d  opts without som
│ │ │ -001aea70: 6520 6175 746f 6d61 7469 6320 6b65 726e  e automatic kern
│ │ │ -001aea80: 656c 2f75 7365 7273 7061 6365 2d61 6464  el/userspace-add
│ │ │ -001aea90: 6564 2064 6566 6175 6c74 730a 2020 2020  ed defaults.    
│ │ │ -001aeaa0: 2020 2020 7072 6576 696f 7573 5f6d 6f75      previous_mou
│ │ │ -001aeab0: 6e74 5f6f 7074 733d 2428 6772 6570 2022  nt_opts=$(grep "
│ │ │ -001aeac0: 246d 6f75 6e74 5f70 6f69 6e74 5f6d 6174  $mount_point_mat
│ │ │ -001aead0: 6368 5f72 6567 6578 7022 202f 6574 632f  ch_regexp" /etc/
│ │ │ -001aeae0: 6d74 6162 207c 2068 6561 6420 2d31 207c  mtab | head -1 |
│ │ │ -001aeaf0: 2020 6177 6b20 277b 7072 696e 7420 2434    awk '{print $4
│ │ │ -001aeb00: 7d27 205c 0a20 2020 2020 2020 2020 2020  }' \.           
│ │ │ -001aeb10: 2020 2020 2020 2020 207c 2073 6564 202d           | sed -
│ │ │ -001aeb20: 4520 2273 2f28 7277 7c64 6566 6175 6c74  E "s/(rw|default
│ │ │ -001aeb30: 737c 7365 636c 6162 656c 7c6e 6f65 7865  s|seclabel|noexe
│ │ │ -001aeb40: 6329 282c 7c24 292f 2f67 3b73 2f2c 242f  c)(,|$)//g;s/,$/
│ │ │ -001aeb50: 2f22 290a 2020 2020 2020 2020 5b20 2224  /").        [ "$
│ │ │ -001aeb60: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ -001aeb70: 7074 7322 205d 2026 616d 703b 2661 6d70  pts" ] &&
│ │ │ -001aeb80: 3b20 7072 6576 696f 7573 5f6d 6f75 6e74  ; previous_mount
│ │ │ -001aeb90: 5f6f 7074 732b 3d22 2c22 0a20 2020 2020  _opts+=",".     
│ │ │ -001aeba0: 2020 2023 2049 6e20 6973 6f39 3636 3020     # In iso9660 
│ │ │ -001aebb0: 6669 6c65 7379 7374 656d 7320 6d74 6162  filesystems mtab
│ │ │ -001aebc0: 2063 6f75 6c64 2064 6573 6372 6962 6520   could describe 
│ │ │ -001aebd0: 6120 2262 6c6f 636b 7369 7a65 2220 7661  a "blocksize" va
│ │ │ -001aebe0: 6c75 652c 2074 6869 7320 7368 6f75 6c64  lue, this should
│ │ │ -001aebf0: 2062 6520 7265 666c 6563 7465 6420 696e   be reflected in
│ │ │ -001aec00: 0a20 2020 2020 2020 2023 2066 7374 6162  .        # fstab
│ │ │ -001aec10: 2061 7320 2262 6c6f 636b 222e 2020 5468   as "block".  Th
│ │ │ -001aec20: 6520 6e65 7874 2076 6172 6961 626c 6520  e next variable 
│ │ │ -001aec30: 6973 2074 6f20 7361 7469 7366 7920 7368  is to satisfy sh
│ │ │ -001aec40: 656c 6c63 6865 636b 2053 4332 3035 302e  ellcheck SC2050.
│ │ │ -001aec50: 0a20 2020 2020 2020 2066 735f 7479 7065  .        fs_type
│ │ │ -001aec60: 3d22 220a 2020 2020 2020 2020 6966 205b  ="".        if [
│ │ │ -001aec70: 2020 2224 6673 5f74 7970 6522 203d 3d20    "$fs_type" == 
│ │ │ -001aec80: 2269 736f 3936 3630 2220 5d20 3b20 7468  "iso9660" ] ; th
│ │ │ -001aec90: 656e 0a20 2020 2020 2020 2020 2020 2070  en.            p
│ │ │ -001aeca0: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ -001aecb0: 7473 3d24 2873 6564 2027 732f 626c 6f63  ts=$(sed 's/bloc
│ │ │ -001aecc0: 6b73 697a 653d 2f62 6c6f 636b 3d2f 2720  ksize=/block=/' 
│ │ │ -001aecd0: 266c 743b 266c 743b 266c 743b 2022 2470  <<< "$p
│ │ │ -001aece0: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ -001aecf0: 7473 2229 0a20 2020 2020 2020 2066 690a  ts").        fi.
│ │ │ -001aed00: 2020 2020 2020 2020 6563 686f 2022 202f          echo " /
│ │ │ -001aed10: 7661 722f 6c6f 672f 6175 6469 7420 2064  var/log/audit  d
│ │ │ -001aed20: 6566 6175 6c74 732c 247b 7072 6576 696f  efaults,${previo
│ │ │ -001aed30: 7573 5f6d 6f75 6e74 5f6f 7074 737d 6e6f  us_mount_opts}no
│ │ │ -001aed40: 6578 6563 2030 2030 2220 2667 743b 2667  exec 0 0" >&g
│ │ │ -001aed50: 743b 202f 6574 632f 6673 7461 620a 2020  t; /etc/fstab.  
│ │ │ -001aed60: 2020 2320 4966 2074 6865 206d 6f75 6e74    # If the mount
│ │ │ -001aed70: 5f6f 7074 206f 7074 696f 6e20 6973 206e  _opt option is n
│ │ │ -001aed80: 6f74 2061 6c72 6561 6479 2069 6e20 7468  ot already in th
│ │ │ -001aed90: 6520 6d6f 756e 7420 706f 696e 7427 7320  e mount point's 
│ │ │ -001aeda0: 2f65 7463 2f66 7374 6162 2065 6e74 7279  /etc/fstab entry
│ │ │ -001aedb0: 2c20 6164 6420 6974 0a20 2020 2065 6c69  , add it.    eli
│ │ │ -001aedc0: 6620 2120 6772 6570 2022 246d 6f75 6e74  f ! grep "$mount
│ │ │ -001aedd0: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ -001aede0: 6578 7022 202f 6574 632f 6673 7461 6220  exp" /etc/fstab 
│ │ │ -001aedf0: 7c20 6772 6570 202d 7120 226e 6f65 7865  | grep -q "noexe
│ │ │ -001aee00: 6322 3b20 7468 656e 0a20 2020 2020 2020  c"; then.       
│ │ │ -001aee10: 2070 7265 7669 6f75 735f 6d6f 756e 745f   previous_mount_
│ │ │ -001aee20: 6f70 7473 3d24 2867 7265 7020 2224 6d6f  opts=$(grep "$mo
│ │ │ -001aee30: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ -001aee40: 7265 6765 7870 2220 2f65 7463 2f66 7374  regexp" /etc/fst
│ │ │ -001aee50: 6162 207c 2061 776b 2027 7b70 7269 6e74  ab | awk '{print
│ │ │ -001aee60: 2024 347d 2729 0a20 2020 2020 2020 2073   $4}').        s
│ │ │ -001aee70: 6564 202d 6920 2273 7c5c 2824 7b6d 6f75  ed -i "s|\(${mou
│ │ │ -001aee80: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ -001aee90: 6567 6578 707d 2e2a 247b 7072 6576 696f  egexp}.*${previo
│ │ │ -001aeea0: 7573 5f6d 6f75 6e74 5f6f 7074 737d 5c29  us_mount_opts}\)
│ │ │ -001aeeb0: 7c5c 312c 6e6f 6578 6563 7c22 202f 6574  |\1,noexec|" /et
│ │ │ -001aeec0: 632f 6673 7461 620a 2020 2020 6669 0a0a  c/fstab.    fi..
│ │ │ -001aeed0: 0a20 2020 2069 6620 6d6b 6469 7220 2d70  .    if mkdir -p
│ │ │ -001aeee0: 2022 2f76 6172 2f6c 6f67 2f61 7564 6974   "/var/log/audit
│ │ │ -001aeef0: 223b 2074 6865 6e0a 2020 2020 2020 2020  "; then.        
│ │ │ -001aef00: 6966 206d 6f75 6e74 706f 696e 7420 2d71  if mountpoint -q
│ │ │ -001aef10: 2022 2f76 6172 2f6c 6f67 2f61 7564 6974   "/var/log/audit
│ │ │ -001aef20: 223b 2074 6865 6e0a 2020 2020 2020 2020  "; then.        
│ │ │ -001aef30: 2020 2020 6d6f 756e 7420 2d6f 2072 656d      mount -o rem
│ │ │ -001aef40: 6f75 6e74 202d 2d74 6172 6765 7420 222f  ount --target "/
│ │ │ -001aef50: 7661 722f 6c6f 672f 6175 6469 7422 0a20  var/log/audit". 
│ │ │ -001aef60: 2020 2020 2020 2066 690a 2020 2020 6669         fi.    fi
│ │ │ -001aef70: 0a7d 0a0a 7065 7266 6f72 6d5f 7265 6d65  .}..perform_reme
│ │ │ -001aef80: 6469 6174 696f 6e0a 0a65 6c73 650a 2020  diation..else.  
│ │ │ -001aef90: 2020 2667 743b 2661 6d70 3b32 2065 6368    >&2 ech
│ │ │ -001aefa0: 6f20 2752 656d 6564 6961 7469 6f6e 2069  o 'Remediation i
│ │ │ -001aefb0: 7320 6e6f 7420 6170 706c 6963 6162 6c65  s not applicable
│ │ │ -001aefc0: 2c20 6e6f 7468 696e 6720 7761 7320 646f  , nothing was do
│ │ │ -001aefd0: 6e65 270a 6669 0a3c 2f63 6f64 653e 3c2f  ne'.fi.
│ │ │ +001ac9c0: 3c74 723e 3c74 683e 436f 6d70 6c65 7869
Strategy: │ │ │ +001aca50: 3c74 643e 636f 6e66 6967 7572 653c 2f74
Re │ │ │ -001ae4c0: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -001ae4d0: 6c73 653c 2f74 643e 3c2f 7472 3e3c 2f74 lse
Complexi │ │ │ +001ac9d0: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +001ac9e0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Disruption:high
Reboo │ │ │ +001aca20: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ +001aca30: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
configure
< │ │ │ +001aca70: 7072 653e 3c63 6f64 653e 2d20 6e61 6d65 pre>- name │ │ │ +001aca80: 3a20 4761 7468 6572 2074 6865 2070 6163 : Gather the pac │ │ │ +001aca90: 6b61 6765 2066 6163 7473 0a20 2070 6163 kage facts. pac │ │ │ +001acaa0: 6b61 6765 5f66 6163 7473 3a0a 2020 2020 kage_facts:. │ │ │ +001acab0: 6d61 6e61 6765 723a 2061 7574 6f0a 2020 manager: auto. │ │ │ +001acac0: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38 tags:. - NIST-8 │ │ │ +001acad0: 3030 2d35 332d 4143 2d36 0a20 202d 204e 00-53-AC-6. - N │ │ │ +001acae0: 4953 542d 3830 302d 3533 2d41 432d 3628 IST-800-53-AC-6( │ │ │ +001acaf0: 3129 0a20 202d 204e 4953 542d 3830 302d 1). - NIST-800- │ │ │ +001acb00: 3533 2d43 4d2d 3628 6129 0a20 202d 204e 53-CM-6(a). - N │ │ │ +001acb10: 4953 542d 3830 302d 3533 2d43 4d2d 3728 IST-800-53-CM-7( │ │ │ +001acb20: 6129 0a20 202d 204e 4953 542d 3830 302d a). - NIST-800- │ │ │ +001acb30: 3533 2d43 4d2d 3728 6229 0a20 202d 204e 53-CM-7(b). - N │ │ │ +001acb40: 4953 542d 3830 302d 3533 2d4d 502d 370a IST-800-53-MP-7. │ │ │ +001acb50: 2020 2d20 636f 6e66 6967 7572 655f 7374 - configure_st │ │ │ +001acb60: 7261 7465 6779 0a20 202d 2068 6967 685f rategy. - high_ │ │ │ +001acb70: 6469 7372 7570 7469 6f6e 0a20 202d 206c disruption. - l │ │ │ +001acb80: 6f77 5f63 6f6d 706c 6578 6974 790a 2020 ow_complexity. │ │ │ +001acb90: 2d20 6d65 6469 756d 5f73 6576 6572 6974 - medium_severit │ │ │ +001acba0: 790a 2020 2d20 6d6f 756e 745f 6f70 7469 y. - mount_opti │ │ │ +001acbb0: 6f6e 5f76 6172 5f6c 6f67 5f61 7564 6974 on_var_log_audit │ │ │ +001acbc0: 5f6e 6f65 7865 630a 2020 2d20 6e6f 5f72 _noexec. - no_r │ │ │ +001acbd0: 6562 6f6f 745f 6e65 6564 6564 0a0a 2d20 eboot_needed..- │ │ │ +001acbe0: 6e61 6d65 3a20 2741 6464 206e 6f65 7865 name: 'Add noexe │ │ │ +001acbf0: 6320 4f70 7469 6f6e 2074 6f20 2f76 6172 c Option to /var │ │ │ +001acc00: 2f6c 6f67 2f61 7564 6974 3a20 4368 6563 /log/audit: Chec │ │ │ +001acc10: 6b20 696e 666f 726d 6174 696f 6e20 6173 k information as │ │ │ +001acc20: 736f 6369 6174 6564 2074 6f20 6d6f 756e sociated to moun │ │ │ +001acc30: 7470 6f69 6e74 270a 2020 616e 7369 626c tpoint'. ansibl │ │ │ +001acc40: 652e 6275 696c 7469 6e2e 636f 6d6d 616e e.builtin.comman │ │ │ +001acc50: 643a 2066 696e 646d 6e74 202d 2d66 7374 d: findmnt --fst │ │ │ +001acc60: 6162 2027 2f76 6172 2f6c 6f67 2f61 7564 ab '/var/log/aud │ │ │ +001acc70: 6974 270a 2020 7265 6769 7374 6572 3a20 it'. register: │ │ │ +001acc80: 6465 7669 6365 5f6e 616d 650a 2020 6661 device_name. fa │ │ │ +001acc90: 696c 6564 5f77 6865 6e3a 2064 6576 6963 iled_when: devic │ │ │ +001acca0: 655f 6e61 6d65 2e72 6320 2667 743b 2031 e_name.rc > 1 │ │ │ +001accb0: 0a20 2063 6861 6e67 6564 5f77 6865 6e3a . changed_when: │ │ │ +001accc0: 2066 616c 7365 0a20 2063 6865 636b 5f6d false. check_m │ │ │ +001accd0: 6f64 653a 2066 616c 7365 0a20 2077 6865 ode: false. whe │ │ │ +001acce0: 6e3a 0a20 202d 2028 206e 6f74 2028 2022 n:. - ( not ( " │ │ │ +001accf0: 6b65 726e 656c 2220 696e 2061 6e73 6962 kernel" in ansib │ │ │ +001acd00: 6c65 5f66 6163 7473 2e70 6163 6b61 6765 le_facts.package │ │ │ +001acd10: 7320 616e 6420 2262 6f6f 7463 2220 696e s and "bootc" in │ │ │ +001acd20: 2061 6e73 6962 6c65 5f66 6163 7473 2e70 ansible_facts.p │ │ │ +001acd30: 6163 6b61 6765 730a 2020 2020 616e 6420 ackages. and │ │ │ +001acd40: 6e6f 7420 226f 7065 6e73 6869 6674 2d6b not "openshift-k │ │ │ +001acd50: 7562 656c 6574 2220 696e 2061 6e73 6962 ubelet" in ansib │ │ │ +001acd60: 6c65 5f66 6163 7473 2e70 6163 6b61 6765 le_facts.package │ │ │ +001acd70: 7320 616e 6420 226f 7374 7265 6522 2069 s and "ostree" i │ │ │ +001acd80: 6e20 616e 7369 626c 655f 7072 6f63 5f63 n ansible_proc_c │ │ │ +001acd90: 6d64 6c69 6e65 0a20 2020 2029 2061 6e64 mdline. ) and │ │ │ +001acda0: 206e 6f74 2028 2061 6e73 6962 6c65 5f76 not ( ansible_v │ │ │ +001acdb0: 6972 7475 616c 697a 6174 696f 6e5f 7479 irtualization_ty │ │ │ +001acdc0: 7065 2069 6e20 5b22 646f 636b 6572 222c pe in ["docker", │ │ │ +001acdd0: 2022 6c78 6322 2c20 226f 7065 6e76 7a22 "lxc", "openvz" │ │ │ +001acde0: 2c20 2270 6f64 6d61 6e22 2c0a 2020 2020 , "podman",. │ │ │ +001acdf0: 2263 6f6e 7461 696e 6572 225d 2029 2029 "container"] ) ) │ │ │ +001ace00: 0a20 202d 2027 222f 7661 722f 6c6f 672f . - '"/var/log/ │ │ │ +001ace10: 6175 6469 7422 2069 6e20 616e 7369 626c audit" in ansibl │ │ │ +001ace20: 655f 6d6f 756e 7473 207c 206d 6170 2861 e_mounts | map(a │ │ │ +001ace30: 7474 7269 6275 7465 3d22 6d6f 756e 7422 ttribute="mount" │ │ │ +001ace40: 2920 7c20 6c69 7374 270a 2020 7461 6773 ) | list'. tags │ │ │ +001ace50: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35 :. - NIST-800-5 │ │ │ +001ace60: 332d 4143 2d36 0a20 202d 204e 4953 542d 3-AC-6. - NIST- │ │ │ +001ace70: 3830 302d 3533 2d41 432d 3628 3129 0a20 800-53-AC-6(1). │ │ │ +001ace80: 202d 204e 4953 542d 3830 302d 3533 2d43 - NIST-800-53-C │ │ │ +001ace90: 4d2d 3628 6129 0a20 202d 204e 4953 542d M-6(a). - NIST- │ │ │ +001acea0: 3830 302d 3533 2d43 4d2d 3728 6129 0a20 800-53-CM-7(a). │ │ │ +001aceb0: 202d 204e 4953 542d 3830 302d 3533 2d43 - NIST-800-53-C │ │ │ +001acec0: 4d2d 3728 6229 0a20 202d 204e 4953 542d M-7(b). - NIST- │ │ │ +001aced0: 3830 302d 3533 2d4d 502d 370a 2020 2d20 800-53-MP-7. - │ │ │ +001acee0: 636f 6e66 6967 7572 655f 7374 7261 7465 configure_strate │ │ │ +001acef0: 6779 0a20 202d 2068 6967 685f 6469 7372 gy. - high_disr │ │ │ +001acf00: 7570 7469 6f6e 0a20 202d 206c 6f77 5f63 uption. - low_c │ │ │ +001acf10: 6f6d 706c 6578 6974 790a 2020 2d20 6d65 omplexity. - me │ │ │ +001acf20: 6469 756d 5f73 6576 6572 6974 790a 2020 dium_severity. │ │ │ +001acf30: 2d20 6d6f 756e 745f 6f70 7469 6f6e 5f76 - mount_option_v │ │ │ +001acf40: 6172 5f6c 6f67 5f61 7564 6974 5f6e 6f65 ar_log_audit_noe │ │ │ +001acf50: 7865 630a 2020 2d20 6e6f 5f72 6562 6f6f xec. - no_reboo │ │ │ +001acf60: 745f 6e65 6564 6564 0a0a 2d20 6e61 6d65 t_needed..- name │ │ │ +001acf70: 3a20 2741 6464 206e 6f65 7865 6320 4f70 : 'Add noexec Op │ │ │ +001acf80: 7469 6f6e 2074 6f20 2f76 6172 2f6c 6f67 tion to /var/log │ │ │ +001acf90: 2f61 7564 6974 3a20 4372 6561 7465 206d /audit: Create m │ │ │ +001acfa0: 6f75 6e74 5f69 6e66 6f20 6469 6374 696f ount_info dictio │ │ │ +001acfb0: 6e61 7279 2076 6172 6961 626c 6527 0a20 nary variable'. │ │ │ +001acfc0: 2073 6574 5f66 6163 743a 0a20 2020 206d set_fact:. m │ │ │ +001acfd0: 6f75 6e74 5f69 6e66 6f3a 2027 7b7b 206d ount_info: '{{ m │ │ │ +001acfe0: 6f75 6e74 5f69 6e66 6f7c 6465 6661 756c ount_info|defaul │ │ │ +001acff0: 7428 7b7d 297c 636f 6d62 696e 6528 7b69 t({})|combine({i │ │ │ +001ad000: 7465 6d2e 303a 2069 7465 6d2e 317d 2920 tem.0: item.1}) │ │ │ +001ad010: 7d7d 270a 2020 7769 7468 5f74 6f67 6574 }}'. with_toget │ │ │ +001ad020: 6865 723a 0a20 202d 2027 7b7b 2064 6576 her:. - '{{ dev │ │ │ +001ad030: 6963 655f 6e61 6d65 2e73 7464 6f75 745f ice_name.stdout_ │ │ │ +001ad040: 6c69 6e65 735b 305d 2e73 706c 6974 2829 lines[0].split() │ │ │ +001ad050: 207c 206d 6170 2827 276c 6f77 6572 2727 | map(''lower'' │ │ │ +001ad060: 2920 7c20 6c69 7374 207d 7d27 0a20 202d ) | list }}'. - │ │ │ +001ad070: 2027 7b7b 2064 6576 6963 655f 6e61 6d65 '{{ device_name │ │ │ +001ad080: 2e73 7464 6f75 745f 6c69 6e65 735b 315d .stdout_lines[1] │ │ │ +001ad090: 2e73 706c 6974 2829 207c 206c 6973 7420 .split() | list │ │ │ +001ad0a0: 7d7d 270a 2020 7768 656e 3a0a 2020 2d20 }}'. when:. - │ │ │ +001ad0b0: 2820 6e6f 7420 2820 226b 6572 6e65 6c22 ( not ( "kernel" │ │ │ +001ad0c0: 2069 6e20 616e 7369 626c 655f 6661 6374 in ansible_fact │ │ │ +001ad0d0: 732e 7061 636b 6167 6573 2061 6e64 2022 s.packages and " │ │ │ +001ad0e0: 626f 6f74 6322 2069 6e20 616e 7369 626c bootc" in ansibl │ │ │ +001ad0f0: 655f 6661 6374 732e 7061 636b 6167 6573 e_facts.packages │ │ │ +001ad100: 0a20 2020 2061 6e64 206e 6f74 2022 6f70 . and not "op │ │ │ +001ad110: 656e 7368 6966 742d 6b75 6265 6c65 7422 enshift-kubelet" │ │ │ +001ad120: 2069 6e20 616e 7369 626c 655f 6661 6374 in ansible_fact │ │ │ +001ad130: 732e 7061 636b 6167 6573 2061 6e64 2022 s.packages and " │ │ │ +001ad140: 6f73 7472 6565 2220 696e 2061 6e73 6962 ostree" in ansib │ │ │ +001ad150: 6c65 5f70 726f 635f 636d 646c 696e 650a le_proc_cmdline. │ │ │ +001ad160: 2020 2020 2920 616e 6420 6e6f 7420 2820 ) and not ( │ │ │ +001ad170: 616e 7369 626c 655f 7669 7274 7561 6c69 ansible_virtuali │ │ │ +001ad180: 7a61 7469 6f6e 5f74 7970 6520 696e 205b zation_type in [ │ │ │ +001ad190: 2264 6f63 6b65 7222 2c20 226c 7863 222c "docker", "lxc", │ │ │ +001ad1a0: 2022 6f70 656e 767a 222c 2022 706f 646d "openvz", "podm │ │ │ +001ad1b0: 616e 222c 0a20 2020 2022 636f 6e74 6169 an",. "contai │ │ │ +001ad1c0: 6e65 7222 5d20 2920 290a 2020 2d20 2722 ner"] ) ). - '" │ │ │ +001ad1d0: 2f76 6172 2f6c 6f67 2f61 7564 6974 2220 /var/log/audit" │ │ │ +001ad1e0: 696e 2061 6e73 6962 6c65 5f6d 6f75 6e74 in ansible_mount │ │ │ +001ad1f0: 7320 7c20 6d61 7028 6174 7472 6962 7574 s | map(attribut │ │ │ +001ad200: 653d 226d 6f75 6e74 2229 207c 206c 6973 e="mount") | lis │ │ │ +001ad210: 7427 0a20 202d 2064 6576 6963 655f 6e61 t'. - device_na │ │ │ +001ad220: 6d65 2e73 7464 6f75 7420 6973 2064 6566 me.stdout is def │ │ │ +001ad230: 696e 6564 2061 6e64 2064 6576 6963 655f ined and device_ │ │ │ +001ad240: 6e61 6d65 2e73 7464 6f75 745f 6c69 6e65 name.stdout_line │ │ │ +001ad250: 7320 6973 2064 6566 696e 6564 0a20 202d s is defined. - │ │ │ +001ad260: 2028 6465 7669 6365 5f6e 616d 652e 7374 (device_name.st │ │ │ +001ad270: 646f 7574 207c 206c 656e 6774 6820 2667 dout | length &g │ │ │ +001ad280: 743b 2030 290a 2020 7461 6773 3a0a 2020 t; 0). tags:. │ │ │ +001ad290: 2d20 4e49 5354 2d38 3030 2d35 332d 4143 - NIST-800-53-AC │ │ │ +001ad2a0: 2d36 0a20 202d 204e 4953 542d 3830 302d -6. - NIST-800- │ │ │ +001ad2b0: 3533 2d41 432d 3628 3129 0a20 202d 204e 53-AC-6(1). - N │ │ │ +001ad2c0: 4953 542d 3830 302d 3533 2d43 4d2d 3628 IST-800-53-CM-6( │ │ │ +001ad2d0: 6129 0a20 202d 204e 4953 542d 3830 302d a). - NIST-800- │ │ │ +001ad2e0: 3533 2d43 4d2d 3728 6129 0a20 202d 204e 53-CM-7(a). - N │ │ │ +001ad2f0: 4953 542d 3830 302d 3533 2d43 4d2d 3728 IST-800-53-CM-7( │ │ │ +001ad300: 6229 0a20 202d 204e 4953 542d 3830 302d b). - NIST-800- │ │ │ +001ad310: 3533 2d4d 502d 370a 2020 2d20 636f 6e66 53-MP-7. - conf │ │ │ +001ad320: 6967 7572 655f 7374 7261 7465 6779 0a20 igure_strategy. │ │ │ +001ad330: 202d 2068 6967 685f 6469 7372 7570 7469 - high_disrupti │ │ │ +001ad340: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c on. - low_compl │ │ │ +001ad350: 6578 6974 790a 2020 2d20 6d65 6469 756d exity. - medium │ │ │ +001ad360: 5f73 6576 6572 6974 790a 2020 2d20 6d6f _severity. - mo │ │ │ +001ad370: 756e 745f 6f70 7469 6f6e 5f76 6172 5f6c unt_option_var_l │ │ │ +001ad380: 6f67 5f61 7564 6974 5f6e 6f65 7865 630a og_audit_noexec. │ │ │ +001ad390: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65 - no_reboot_ne │ │ │ +001ad3a0: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741 eded..- name: 'A │ │ │ +001ad3b0: 6464 206e 6f65 7865 6320 4f70 7469 6f6e dd noexec Option │ │ │ +001ad3c0: 2074 6f20 2f76 6172 2f6c 6f67 2f61 7564 to /var/log/aud │ │ │ +001ad3d0: 6974 3a20 4966 202f 7661 722f 6c6f 672f it: If /var/log/ │ │ │ +001ad3e0: 6175 6469 7420 6e6f 7420 6d6f 756e 7465 audit not mounte │ │ │ +001ad3f0: 642c 2063 7261 6674 0a20 2020 206d 6f75 d, craft. mou │ │ │ +001ad400: 6e74 5f69 6e66 6f20 6d61 6e75 616c 6c79 nt_info manually │ │ │ +001ad410: 270a 2020 7365 745f 6661 6374 3a0a 2020 '. set_fact:. │ │ │ +001ad420: 2020 6d6f 756e 745f 696e 666f 3a20 277b mount_info: '{ │ │ │ +001ad430: 7b20 6d6f 756e 745f 696e 666f 7c64 6566 { mount_info|def │ │ │ +001ad440: 6175 6c74 287b 7d29 7c63 6f6d 6269 6e65 ault({})|combine │ │ │ +001ad450: 287b 6974 656d 2e30 3a20 6974 656d 2e31 ({item.0: item.1 │ │ │ +001ad460: 7d29 207d 7d27 0a20 2077 6974 685f 746f }) }}'. with_to │ │ │ +001ad470: 6765 7468 6572 3a0a 2020 2d20 2d20 7461 gether:. - - ta │ │ │ +001ad480: 7267 6574 0a20 2020 202d 2073 6f75 7263 rget. - sourc │ │ │ +001ad490: 650a 2020 2020 2d20 6673 7479 7065 0a20 e. - fstype. │ │ │ +001ad4a0: 2020 202d 206f 7074 696f 6e73 0a20 202d - options. - │ │ │ +001ad4b0: 202d 202f 7661 722f 6c6f 672f 6175 6469 - /var/log/audi │ │ │ +001ad4c0: 740a 2020 2020 2d20 2727 0a20 2020 202d t. - ''. - │ │ │ +001ad4d0: 2027 270a 2020 2020 2d20 6465 6661 756c ''. - defaul │ │ │ +001ad4e0: 7473 0a20 2077 6865 6e3a 0a20 202d 2028 ts. when:. - ( │ │ │ +001ad4f0: 206e 6f74 2028 2022 6b65 726e 656c 2220 not ( "kernel" │ │ │ +001ad500: 696e 2061 6e73 6962 6c65 5f66 6163 7473 in ansible_facts │ │ │ +001ad510: 2e70 6163 6b61 6765 7320 616e 6420 2262 .packages and "b │ │ │ +001ad520: 6f6f 7463 2220 696e 2061 6e73 6962 6c65 ootc" in ansible │ │ │ +001ad530: 5f66 6163 7473 2e70 6163 6b61 6765 730a _facts.packages. │ │ │ +001ad540: 2020 2020 616e 6420 6e6f 7420 226f 7065 and not "ope │ │ │ +001ad550: 6e73 6869 6674 2d6b 7562 656c 6574 2220 nshift-kubelet" │ │ │ +001ad560: 696e 2061 6e73 6962 6c65 5f66 6163 7473 in ansible_facts │ │ │ +001ad570: 2e70 6163 6b61 6765 7320 616e 6420 226f .packages and "o │ │ │ +001ad580: 7374 7265 6522 2069 6e20 616e 7369 626c stree" in ansibl │ │ │ +001ad590: 655f 7072 6f63 5f63 6d64 6c69 6e65 0a20 e_proc_cmdline. │ │ │ +001ad5a0: 2020 2029 2061 6e64 206e 6f74 2028 2061 ) and not ( a │ │ │ +001ad5b0: 6e73 6962 6c65 5f76 6972 7475 616c 697a nsible_virtualiz │ │ │ +001ad5c0: 6174 696f 6e5f 7479 7065 2069 6e20 5b22 ation_type in [" │ │ │ +001ad5d0: 646f 636b 6572 222c 2022 6c78 6322 2c20 docker", "lxc", │ │ │ +001ad5e0: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61 "openvz", "podma │ │ │ +001ad5f0: 6e22 2c0a 2020 2020 2263 6f6e 7461 696e n",. "contain │ │ │ +001ad600: 6572 225d 2029 2029 0a20 202d 2027 222f er"] ) ). - '"/ │ │ │ +001ad610: 7661 722f 6c6f 672f 6175 6469 7422 2069 var/log/audit" i │ │ │ +001ad620: 6e20 616e 7369 626c 655f 6d6f 756e 7473 n ansible_mounts │ │ │ +001ad630: 207c 206d 6170 2861 7474 7269 6275 7465 | map(attribute │ │ │ +001ad640: 3d22 6d6f 756e 7422 2920 7c20 6c69 7374 ="mount") | list │ │ │ +001ad650: 270a 2020 2d20 2822 2d2d 6673 7461 6222 '. - ("--fstab" │ │ │ +001ad660: 207c 206c 656e 6774 6820 3d3d 2030 290a | length == 0). │ │ │ +001ad670: 2020 2d20 6465 7669 6365 5f6e 616d 652e - device_name. │ │ │ +001ad680: 7374 646f 7574 2069 7320 6465 6669 6e65 stdout is define │ │ │ +001ad690: 6420 616e 6420 6465 7669 6365 5f6e 616d d and device_nam │ │ │ +001ad6a0: 652e 7374 646f 7574 5f6c 696e 6573 2069 e.stdout_lines i │ │ │ +001ad6b0: 7320 6465 6669 6e65 640a 2020 2d20 2864 s defined. - (d │ │ │ +001ad6c0: 6576 6963 655f 6e61 6d65 2e73 7464 6f75 evice_name.stdou │ │ │ +001ad6d0: 7420 7c20 6c65 6e67 7468 203d 3d20 3029 t | length == 0) │ │ │ +001ad6e0: 0a20 2074 6167 733a 0a20 202d 204e 4953 . tags:. - NIS │ │ │ +001ad6f0: 542d 3830 302d 3533 2d41 432d 360a 2020 T-800-53-AC-6. │ │ │ +001ad700: 2d20 4e49 5354 2d38 3030 2d35 332d 4143 - NIST-800-53-AC │ │ │ +001ad710: 2d36 2831 290a 2020 2d20 4e49 5354 2d38 -6(1). - NIST-8 │ │ │ +001ad720: 3030 2d35 332d 434d 2d36 2861 290a 2020 00-53-CM-6(a). │ │ │ +001ad730: 2d20 4e49 5354 2d38 3030 2d35 332d 434d - NIST-800-53-CM │ │ │ +001ad740: 2d37 2861 290a 2020 2d20 4e49 5354 2d38 -7(a). - NIST-8 │ │ │ +001ad750: 3030 2d35 332d 434d 2d37 2862 290a 2020 00-53-CM-7(b). │ │ │ +001ad760: 2d20 4e49 5354 2d38 3030 2d35 332d 4d50 - NIST-800-53-MP │ │ │ +001ad770: 2d37 0a20 202d 2063 6f6e 6669 6775 7265 -7. - configure │ │ │ +001ad780: 5f73 7472 6174 6567 790a 2020 2d20 6869 _strategy. - hi │ │ │ +001ad790: 6768 5f64 6973 7275 7074 696f 6e0a 2020 gh_disruption. │ │ │ +001ad7a0: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479 - low_complexity │ │ │ +001ad7b0: 0a20 202d 206d 6564 6975 6d5f 7365 7665 . - medium_seve │ │ │ +001ad7c0: 7269 7479 0a20 202d 206d 6f75 6e74 5f6f rity. - mount_o │ │ │ +001ad7d0: 7074 696f 6e5f 7661 725f 6c6f 675f 6175 ption_var_log_au │ │ │ +001ad7e0: 6469 745f 6e6f 6578 6563 0a20 202d 206e dit_noexec. - n │ │ │ +001ad7f0: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a o_reboot_needed. │ │ │ +001ad800: 0a2d 206e 616d 653a 2027 4164 6420 6e6f .- name: 'Add no │ │ │ +001ad810: 6578 6563 204f 7074 696f 6e20 746f 202f exec Option to / │ │ │ +001ad820: 7661 722f 6c6f 672f 6175 6469 743a 204d var/log/audit: M │ │ │ +001ad830: 616b 6520 7375 7265 206e 6f65 7865 6320 ake sure noexec │ │ │ +001ad840: 6f70 7469 6f6e 2069 7320 7061 7274 206f option is part o │ │ │ +001ad850: 6620 7468 650a 2020 2020 746f 202f 7661 f the. to /va │ │ │ +001ad860: 722f 6c6f 672f 6175 6469 7420 6f70 7469 r/log/audit opti │ │ │ +001ad870: 6f6e 7327 0a20 2073 6574 5f66 6163 743a ons'. set_fact: │ │ │ +001ad880: 0a20 2020 206d 6f75 6e74 5f69 6e66 6f3a . mount_info: │ │ │ +001ad890: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f20 '{{ mount_info │ │ │ +001ad8a0: 7c20 636f 6d62 696e 6528 207b 2727 6f70 | combine( {''op │ │ │ +001ad8b0: 7469 6f6e 7327 273a 2727 2727 7e28 6d6f tions'':''''~(mo │ │ │ +001ad8c0: 756e 745f 696e 666f 2e6f 7074 696f 6e73 unt_info.options │ │ │ +001ad8d0: 207c 0a20 2020 2020 2064 6566 6175 6c74 |. default │ │ │ +001ad8e0: 2827 2727 2729 297e 2827 272c 2727 2069 (''''))~('','' i │ │ │ +001ad8f0: 6620 286d 6f75 6e74 5f69 6e66 6f2e 6f70 f (mount_info.op │ │ │ +001ad900: 7469 6f6e 7320 7c20 6465 6661 756c 7428 tions | default( │ │ │ +001ad910: 2727 2727 2929 2065 6c73 6520 2727 2727 '''')) else '''' │ │ │ +001ad920: 297e 2727 6e6f 6578 6563 2727 0a20 2020 )~''noexec''. │ │ │ +001ad930: 2020 207d 2920 7d7d 270a 2020 7768 656e }) }}'. when │ │ │ +001ad940: 3a0a 2020 2d20 2820 6e6f 7420 2820 226b :. - ( not ( "k │ │ │ +001ad950: 6572 6e65 6c22 2069 6e20 616e 7369 626c ernel" in ansibl │ │ │ +001ad960: 655f 6661 6374 732e 7061 636b 6167 6573 e_facts.packages │ │ │ +001ad970: 2061 6e64 2022 626f 6f74 6322 2069 6e20 and "bootc" in │ │ │ +001ad980: 616e 7369 626c 655f 6661 6374 732e 7061 ansible_facts.pa │ │ │ +001ad990: 636b 6167 6573 0a20 2020 2061 6e64 206e ckages. and n │ │ │ +001ad9a0: 6f74 2022 6f70 656e 7368 6966 742d 6b75 ot "openshift-ku │ │ │ +001ad9b0: 6265 6c65 7422 2069 6e20 616e 7369 626c belet" in ansibl │ │ │ +001ad9c0: 655f 6661 6374 732e 7061 636b 6167 6573 e_facts.packages │ │ │ +001ad9d0: 2061 6e64 2022 6f73 7472 6565 2220 696e and "ostree" in │ │ │ +001ad9e0: 2061 6e73 6962 6c65 5f70 726f 635f 636d ansible_proc_cm │ │ │ +001ad9f0: 646c 696e 650a 2020 2020 2920 616e 6420 dline. ) and │ │ │ +001ada00: 6e6f 7420 2820 616e 7369 626c 655f 7669 not ( ansible_vi │ │ │ +001ada10: 7274 7561 6c69 7a61 7469 6f6e 5f74 7970 rtualization_typ │ │ │ +001ada20: 6520 696e 205b 2264 6f63 6b65 7222 2c20 e in ["docker", │ │ │ +001ada30: 226c 7863 222c 2022 6f70 656e 767a 222c "lxc", "openvz", │ │ │ +001ada40: 2022 706f 646d 616e 222c 0a20 2020 2022 "podman",. " │ │ │ +001ada50: 636f 6e74 6169 6e65 7222 5d20 2920 290a container"] ) ). │ │ │ +001ada60: 2020 2d20 2722 2f76 6172 2f6c 6f67 2f61 - '"/var/log/a │ │ │ +001ada70: 7564 6974 2220 696e 2061 6e73 6962 6c65 udit" in ansible │ │ │ +001ada80: 5f6d 6f75 6e74 7320 7c20 6d61 7028 6174 _mounts | map(at │ │ │ +001ada90: 7472 6962 7574 653d 226d 6f75 6e74 2229 tribute="mount") │ │ │ +001adaa0: 207c 206c 6973 7427 0a20 202d 206d 6f75 | list'. - mou │ │ │ +001adab0: 6e74 5f69 6e66 6f20 6973 2064 6566 696e nt_info is defin │ │ │ +001adac0: 6564 2061 6e64 2022 6e6f 6578 6563 2220 ed and "noexec" │ │ │ +001adad0: 6e6f 7420 696e 2028 6d6f 756e 745f 696e not in (mount_in │ │ │ +001adae0: 666f 2e6f 7074 696f 6e73 207c 2064 6566 fo.options | def │ │ │ +001adaf0: 6175 6c74 2827 2729 290a 2020 7461 6773 ault('')). tags │ │ │ +001adb00: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35 :. - NIST-800-5 │ │ │ +001adb10: 332d 4143 2d36 0a20 202d 204e 4953 542d 3-AC-6. - NIST- │ │ │ +001adb20: 3830 302d 3533 2d41 432d 3628 3129 0a20 800-53-AC-6(1). │ │ │ +001adb30: 202d 204e 4953 542d 3830 302d 3533 2d43 - NIST-800-53-C │ │ │ +001adb40: 4d2d 3628 6129 0a20 202d 204e 4953 542d M-6(a). - NIST- │ │ │ +001adb50: 3830 302d 3533 2d43 4d2d 3728 6129 0a20 800-53-CM-7(a). │ │ │ +001adb60: 202d 204e 4953 542d 3830 302d 3533 2d43 - NIST-800-53-C │ │ │ +001adb70: 4d2d 3728 6229 0a20 202d 204e 4953 542d M-7(b). - NIST- │ │ │ +001adb80: 3830 302d 3533 2d4d 502d 370a 2020 2d20 800-53-MP-7. - │ │ │ +001adb90: 636f 6e66 6967 7572 655f 7374 7261 7465 configure_strate │ │ │ +001adba0: 6779 0a20 202d 2068 6967 685f 6469 7372 gy. - high_disr │ │ │ +001adbb0: 7570 7469 6f6e 0a20 202d 206c 6f77 5f63 uption. - low_c │ │ │ +001adbc0: 6f6d 706c 6578 6974 790a 2020 2d20 6d65 omplexity. - me │ │ │ +001adbd0: 6469 756d 5f73 6576 6572 6974 790a 2020 dium_severity. │ │ │ +001adbe0: 2d20 6d6f 756e 745f 6f70 7469 6f6e 5f76 - mount_option_v │ │ │ +001adbf0: 6172 5f6c 6f67 5f61 7564 6974 5f6e 6f65 ar_log_audit_noe │ │ │ +001adc00: 7865 630a 2020 2d20 6e6f 5f72 6562 6f6f xec. - no_reboo │ │ │ +001adc10: 745f 6e65 6564 6564 0a0a 2d20 6e61 6d65 t_needed..- name │ │ │ +001adc20: 3a20 2741 6464 206e 6f65 7865 6320 4f70 : 'Add noexec Op │ │ │ +001adc30: 7469 6f6e 2074 6f20 2f76 6172 2f6c 6f67 tion to /var/log │ │ │ +001adc40: 2f61 7564 6974 3a20 456e 7375 7265 202f /audit: Ensure / │ │ │ +001adc50: 7661 722f 6c6f 672f 6175 6469 7420 6973 var/log/audit is │ │ │ +001adc60: 206d 6f75 6e74 6564 2077 6974 680a 2020 mounted with. │ │ │ +001adc70: 2020 6e6f 6578 6563 206f 7074 696f 6e27 noexec option' │ │ │ +001adc80: 0a20 2061 6e73 6962 6c65 2e70 6f73 6978 . ansible.posix │ │ │ +001adc90: 2e6d 6f75 6e74 3a0a 2020 2020 7061 7468 .mount:. path │ │ │ +001adca0: 3a20 2f76 6172 2f6c 6f67 2f61 7564 6974 : /var/log/audit │ │ │ +001adcb0: 0a20 2020 2073 7263 3a20 277b 7b20 6d6f . src: '{{ mo │ │ │ +001adcc0: 756e 745f 696e 666f 2e73 6f75 7263 6520 unt_info.source │ │ │ +001adcd0: 7c20 6465 6661 756c 7428 2727 2727 2920 | default('''') │ │ │ +001adce0: 7d7d 270a 2020 2020 6f70 7473 3a20 277b }}'. opts: '{ │ │ │ +001adcf0: 7b20 6d6f 756e 745f 696e 666f 2e6f 7074 { mount_info.opt │ │ │ +001add00: 696f 6e73 207c 2064 6566 6175 6c74 2827 ions | default(' │ │ │ +001add10: 2727 2729 207d 7d27 0a20 2020 2073 7461 ''') }}'. sta │ │ │ +001add20: 7465 3a20 6d6f 756e 7465 640a 2020 2020 te: mounted. │ │ │ +001add30: 6673 7479 7065 3a20 277b 7b20 6d6f 756e fstype: '{{ moun │ │ │ +001add40: 745f 696e 666f 2e66 7374 7970 6520 7c20 t_info.fstype | │ │ │ +001add50: 6465 6661 756c 7428 2727 2727 2920 7d7d default('''') }} │ │ │ +001add60: 270a 2020 7265 6769 7374 6572 3a20 6d6f '. register: mo │ │ │ +001add70: 756e 745f 7265 7375 6c74 0a20 2066 6169 unt_result. fai │ │ │ +001add80: 6c65 645f 7768 656e 3a0a 2020 2d20 6d6f led_when:. - mo │ │ │ +001add90: 756e 745f 7265 7375 6c74 2069 7320 6661 unt_result is fa │ │ │ +001adda0: 696c 6564 0a20 202d 2027 2727 7461 7267 iled. - '''targ │ │ │ +001addb0: 6574 2069 7320 6275 7379 2727 206e 6f74 et is busy'' not │ │ │ +001addc0: 2069 6e20 286d 6f75 6e74 5f72 6573 756c in (mount_resul │ │ │ +001addd0: 742e 6d73 6720 7c20 6465 6661 756c 7428 t.msg | default( │ │ │ +001adde0: 2727 2727 2929 270a 2020 2d20 2727 2761 ''''))'. - '''a │ │ │ +001addf0: 6c72 6561 6479 206d 6f75 6e74 6564 2727 lready mounted'' │ │ │ +001ade00: 206e 6f74 2069 6e20 286d 6f75 6e74 5f72 not in (mount_r │ │ │ +001ade10: 6573 756c 742e 6d73 6720 7c20 6465 6661 esult.msg | defa │ │ │ +001ade20: 756c 7428 2727 2727 2929 270a 2020 7768 ult(''''))'. wh │ │ │ +001ade30: 656e 3a0a 2020 2d20 2820 6e6f 7420 2820 en:. - ( not ( │ │ │ +001ade40: 226b 6572 6e65 6c22 2069 6e20 616e 7369 "kernel" in ansi │ │ │ +001ade50: 626c 655f 6661 6374 732e 7061 636b 6167 ble_facts.packag │ │ │ +001ade60: 6573 2061 6e64 2022 626f 6f74 6322 2069 es and "bootc" i │ │ │ +001ade70: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ +001ade80: 7061 636b 6167 6573 0a20 2020 2061 6e64 packages. and │ │ │ +001ade90: 206e 6f74 2022 6f70 656e 7368 6966 742d not "openshift- │ │ │ +001adea0: 6b75 6265 6c65 7422 2069 6e20 616e 7369 kubelet" in ansi │ │ │ +001adeb0: 626c 655f 6661 6374 732e 7061 636b 6167 ble_facts.packag │ │ │ +001adec0: 6573 2061 6e64 2022 6f73 7472 6565 2220 es and "ostree" │ │ │ +001aded0: 696e 2061 6e73 6962 6c65 5f70 726f 635f in ansible_proc_ │ │ │ +001adee0: 636d 646c 696e 650a 2020 2020 2920 616e cmdline. ) an │ │ │ +001adef0: 6420 6e6f 7420 2820 616e 7369 626c 655f d not ( ansible_ │ │ │ +001adf00: 7669 7274 7561 6c69 7a61 7469 6f6e 5f74 virtualization_t │ │ │ +001adf10: 7970 6520 696e 205b 2264 6f63 6b65 7222 ype in ["docker" │ │ │ +001adf20: 2c20 226c 7863 222c 2022 6f70 656e 767a , "lxc", "openvz │ │ │ +001adf30: 222c 2022 706f 646d 616e 222c 0a20 2020 ", "podman",. │ │ │ +001adf40: 2022 636f 6e74 6169 6e65 7222 5d20 2920 "container"] ) │ │ │ +001adf50: 290a 2020 2d20 2722 2f76 6172 2f6c 6f67 ). - '"/var/log │ │ │ +001adf60: 2f61 7564 6974 2220 696e 2061 6e73 6962 /audit" in ansib │ │ │ +001adf70: 6c65 5f6d 6f75 6e74 7320 7c20 6d61 7028 le_mounts | map( │ │ │ +001adf80: 6174 7472 6962 7574 653d 226d 6f75 6e74 attribute="mount │ │ │ +001adf90: 2229 207c 206c 6973 7427 0a20 202d 206d ") | list'. - m │ │ │ +001adfa0: 6f75 6e74 5f69 6e66 6f20 6973 2064 6566 ount_info is def │ │ │ +001adfb0: 696e 6564 0a20 202d 2028 6465 7669 6365 ined. - (device │ │ │ +001adfc0: 5f6e 616d 652e 7374 646f 7574 2069 7320 _name.stdout is │ │ │ +001adfd0: 6465 6669 6e65 6420 616e 6420 2864 6576 defined and (dev │ │ │ +001adfe0: 6963 655f 6e61 6d65 2e73 7464 6f75 7420 ice_name.stdout │ │ │ +001adff0: 7c20 6c65 6e67 7468 2026 6774 3b20 3029 | length > 0) │ │ │ +001ae000: 2920 6f72 2028 222d 2d66 7374 6162 220a ) or ("--fstab". │ │ │ +001ae010: 2020 2020 7c20 6c65 6e67 7468 203d 3d20 | length == │ │ │ +001ae020: 3029 0a20 2074 6167 733a 0a20 202d 204e 0). tags:. - N │ │ │ +001ae030: 4953 542d 3830 302d 3533 2d41 432d 360a IST-800-53-AC-6. │ │ │ +001ae040: 2020 2d20 4e49 5354 2d38 3030 2d35 332d - NIST-800-53- │ │ │ +001ae050: 4143 2d36 2831 290a 2020 2d20 4e49 5354 AC-6(1). - NIST │ │ │ +001ae060: 2d38 3030 2d35 332d 434d 2d36 2861 290a -800-53-CM-6(a). │ │ │ +001ae070: 2020 2d20 4e49 5354 2d38 3030 2d35 332d - NIST-800-53- │ │ │ +001ae080: 434d 2d37 2861 290a 2020 2d20 4e49 5354 CM-7(a). - NIST │ │ │ +001ae090: 2d38 3030 2d35 332d 434d 2d37 2862 290a -800-53-CM-7(b). │ │ │ +001ae0a0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d - NIST-800-53- │ │ │ +001ae0b0: 4d50 2d37 0a20 202d 2063 6f6e 6669 6775 MP-7. - configu │ │ │ +001ae0c0: 7265 5f73 7472 6174 6567 790a 2020 2d20 re_strategy. - │ │ │ +001ae0d0: 6869 6768 5f64 6973 7275 7074 696f 6e0a high_disruption. │ │ │ +001ae0e0: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869 - low_complexi │ │ │ +001ae0f0: 7479 0a20 202d 206d 6564 6975 6d5f 7365 ty. - medium_se │ │ │ +001ae100: 7665 7269 7479 0a20 202d 206d 6f75 6e74 verity. - mount │ │ │ +001ae110: 5f6f 7074 696f 6e5f 7661 725f 6c6f 675f _option_var_log_ │ │ │ +001ae120: 6175 6469 745f 6e6f 6578 6563 0a20 202d audit_noexec. - │ │ │ +001ae130: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465 no_reboot_neede │ │ │ +001ae140: 640a 3c2f 636f 6465 3e3c 2f70 7265 3e3c d.< │ │ │ +001ae150: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Sh │ │ │ +001ae200: 656c 6c20 7363 7269 7074 20e2 87b2 3c2f ell script ...
< │ │ │ +001ae2b0: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
# Remediation 
│ │ │ +001ae2d0: 6973 2061 7070 6c69 6361 626c 6520 6f6e  is applicable on
│ │ │ +001ae2e0: 6c79 2069 6e20 6365 7274 6169 6e20 706c  ly in certain pl
│ │ │ +001ae2f0: 6174 666f 726d 730a 6966 2028 2021 2028  atforms.if ( ! (
│ │ │ +001ae300: 207b 2072 706d 202d 2d71 7569 6574 202d   { rpm --quiet -
│ │ │ +001ae310: 7120 6b65 726e 656c 203b 7d20 2661 6d70  q kernel ;} &
│ │ │ +001ae320: 3b26 616d 703b 207b 2072 706d 202d 2d71  ;& { rpm --q
│ │ │ +001ae330: 7569 6574 202d 7120 626f 6f74 6320 3b7d  uiet -q bootc ;}
│ │ │ +001ae340: 2026 616d 703b 2661 6d70 3b20 7b20 2120   && { ! 
│ │ │ +001ae350: 7270 6d20 2d2d 7175 6965 7420 2d71 206f  rpm --quiet -q o
│ │ │ +001ae360: 7065 6e73 6869 6674 2d6b 7562 656c 6574  penshift-kubelet
│ │ │ +001ae370: 203b 7d20 2661 6d70 3b26 616d 703b 2028   ;} && (
│ │ │ +001ae380: 5b20 2d66 202f 7275 6e2f 6f73 7472 6565  [ -f /run/ostree
│ │ │ +001ae390: 2d62 6f6f 7465 6420 5d20 7c7c 205b 202d  -booted ] || [ -
│ │ │ +001ae3a0: 4c20 2f6f 7374 7265 6520 5d29 2029 2026  L /ostree ]) ) &
│ │ │ +001ae3b0: 616d 703b 2661 6d70 3b20 2120 2820 5b20  amp;& ! ( [ 
│ │ │ +001ae3c0: 2d66 202f 2e64 6f63 6b65 7265 6e76 205d  -f /.dockerenv ]
│ │ │ +001ae3d0: 207c 7c20 5b20 2d66 202f 7275 6e2f 2e63   || [ -f /run/.c
│ │ │ +001ae3e0: 6f6e 7461 696e 6572 656e 7620 5d20 2920  ontainerenv ] ) 
│ │ │ +001ae3f0: 2920 2661 6d70 3b26 616d 703b 207b 2028  ) && { (
│ │ │ +001ae400: 2066 696e 646d 6e74 202d 2d6b 6572 6e65   findmnt --kerne
│ │ │ +001ae410: 6c20 222f 7661 722f 6c6f 672f 6175 6469  l "/var/log/audi
│ │ │ +001ae420: 7422 2026 6774 3b20 2f64 6576 2f6e 756c  t" > /dev/nul
│ │ │ +001ae430: 6c20 7c7c 2066 696e 646d 6e74 202d 2d66  l || findmnt --f
│ │ │ +001ae440: 7374 6162 2022 2f76 6172 2f6c 6f67 2f61  stab "/var/log/a
│ │ │ +001ae450: 7564 6974 2220 2667 743b 202f 6465 762f  udit" > /dev/
│ │ │ +001ae460: 6e75 6c6c 2029 3b20 7d3b 2074 6865 6e0a  null ); }; then.
│ │ │ +001ae470: 0a66 756e 6374 696f 6e20 7065 7266 6f72  .function perfor
│ │ │ +001ae480: 6d5f 7265 6d65 6469 6174 696f 6e20 7b0a  m_remediation {.
│ │ │ +001ae490: 0a20 2020 200a 2020 2020 2020 2020 2320  .    .        # 
│ │ │ +001ae4a0: 7468 6520 6d6f 756e 7420 706f 696e 7420  the mount point 
│ │ │ +001ae4b0: 2f76 6172 2f6c 6f67 2f61 7564 6974 2068  /var/log/audit h
│ │ │ +001ae4c0: 6173 2074 6f20 6265 2064 6566 696e 6564  as to be defined
│ │ │ +001ae4d0: 2069 6e20 2f65 7463 2f66 7374 6162 0a20   in /etc/fstab. 
│ │ │ +001ae4e0: 2020 2020 2020 2023 2062 6566 6f72 6520         # before 
│ │ │ +001ae4f0: 7468 6973 2072 656d 6564 6961 7469 6f6e  this remediation
│ │ │ +001ae500: 2063 616e 2062 6520 6578 6563 7574 6564   can be executed
│ │ │ +001ae510: 2e20 496e 2063 6173 6520 6974 2069 7320  . In case it is 
│ │ │ +001ae520: 6e6f 7420 6465 6669 6e65 642c 2074 6865  not defined, the
│ │ │ +001ae530: 0a20 2020 2020 2020 2023 2072 656d 6564  .        # remed
│ │ │ +001ae540: 6961 7469 6f6e 2061 626f 7274 7320 616e  iation aborts an
│ │ │ +001ae550: 6420 6e6f 2063 6861 6e67 6573 2072 6567  d no changes reg
│ │ │ +001ae560: 6172 6469 6e67 2074 6865 206d 6f75 6e74  arding the mount
│ │ │ +001ae570: 2070 6f69 6e74 2061 7265 2064 6f6e 652e   point are done.
│ │ │ +001ae580: 0a20 2020 2020 2020 206d 6f75 6e74 5f70  .        mount_p
│ │ │ +001ae590: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ +001ae5a0: 703d 2224 2870 7269 6e74 6620 225e 5b5b  p="$(printf "^[[
│ │ │ +001ae5b0: 3a73 7061 6365 3a5d 5d2a 5b5e 235d 2e2a  :space:]]*[^#].*
│ │ │ +001ae5c0: 5b5b 3a73 7061 6365 3a5d 5d25 735b 5b3a  [[:space:]]%s[[:
│ │ │ +001ae5d0: 7370 6163 653a 5d5d 2220 222f 7661 722f  space:]]" "/var/
│ │ │ +001ae5e0: 6c6f 672f 6175 6469 7422 2922 0a0a 2020  log/audit")"..  
│ │ │ +001ae5f0: 2020 6772 6570 2022 246d 6f75 6e74 5f70    grep "$mount_p
│ │ │ +001ae600: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ +001ae610: 7022 202d 7120 2f65 7463 2f66 7374 6162  p" -q /etc/fstab
│ │ │ +001ae620: 205c 0a20 2020 2020 2020 207c 7c20 7b20   \.        || { 
│ │ │ +001ae630: 6563 686f 2022 5468 6520 6d6f 756e 7420  echo "The mount 
│ │ │ +001ae640: 706f 696e 7420 272f 7661 722f 6c6f 672f  point '/var/log/
│ │ │ +001ae650: 6175 6469 7427 2069 7320 6e6f 7420 6576  audit' is not ev
│ │ │ +001ae660: 656e 2069 6e20 2f65 7463 2f66 7374 6162  en in /etc/fstab
│ │ │ +001ae670: 2c20 736f 2077 6520 6361 6e27 7420 7365  , so we can't se
│ │ │ +001ae680: 7420 7570 206d 6f75 6e74 206f 7074 696f  t up mount optio
│ │ │ +001ae690: 6e73 2220 2667 743b 2661 6d70 3b32 3b0a  ns" >&2;.
│ │ │ +001ae6a0: 2020 2020 2020 2020 2020 2020 2020 2020                  
│ │ │ +001ae6b0: 6563 686f 2022 4e6f 7420 7265 6d65 6469  echo "Not remedi
│ │ │ +001ae6c0: 6174 696e 672c 2062 6563 6175 7365 2074  ating, because t
│ │ │ +001ae6d0: 6865 7265 2069 7320 6e6f 2072 6563 6f72  here is no recor
│ │ │ +001ae6e0: 6420 6f66 202f 7661 722f 6c6f 672f 6175  d of /var/log/au
│ │ │ +001ae6f0: 6469 7420 696e 202f 6574 632f 6673 7461  dit in /etc/fsta
│ │ │ +001ae700: 6222 2026 6774 3b26 616d 703b 323b 2072  b" >&2; r
│ │ │ +001ae710: 6574 7572 6e20 313b 207d 0a20 2020 200a  eturn 1; }.    .
│ │ │ +001ae720: 0a0a 2020 2020 6d6f 756e 745f 706f 696e  ..    mount_poin
│ │ │ +001ae730: 745f 6d61 7463 685f 7265 6765 7870 3d22  t_match_regexp="
│ │ │ +001ae740: 2428 7072 696e 7466 2022 5e5b 5b3a 7370  $(printf "^[[:sp
│ │ │ +001ae750: 6163 653a 5d5d 2a5b 5e23 5d2e 2a5b 5b3a  ace:]]*[^#].*[[:
│ │ │ +001ae760: 7370 6163 653a 5d5d 2573 5b5b 3a73 7061  space:]]%s[[:spa
│ │ │ +001ae770: 6365 3a5d 5d22 202f 7661 722f 6c6f 672f  ce:]]" /var/log/
│ │ │ +001ae780: 6175 6469 7429 220a 0a20 2020 2023 2049  audit)"..    # I
│ │ │ +001ae790: 6620 7468 6520 6d6f 756e 7420 706f 696e  f the mount poin
│ │ │ +001ae7a0: 7420 6973 206e 6f74 2069 6e20 2f65 7463  t is not in /etc
│ │ │ +001ae7b0: 2f66 7374 6162 2c20 6765 7420 7072 6576  /fstab, get prev
│ │ │ +001ae7c0: 696f 7573 206d 6f75 6e74 206f 7074 696f  ious mount optio
│ │ │ +001ae7d0: 6e73 2066 726f 6d20 2f65 7463 2f6d 7461  ns from /etc/mta
│ │ │ +001ae7e0: 620a 2020 2020 6966 2021 2067 7265 7020  b.    if ! grep 
│ │ │ +001ae7f0: 2d71 2022 246d 6f75 6e74 5f70 6f69 6e74  -q "$mount_point
│ │ │ +001ae800: 5f6d 6174 6368 5f72 6567 6578 7022 202f  _match_regexp" /
│ │ │ +001ae810: 6574 632f 6673 7461 623b 2074 6865 6e0a  etc/fstab; then.
│ │ │ +001ae820: 2020 2020 2020 2020 2320 7275 6e74 696d          # runtim
│ │ │ +001ae830: 6520 6f70 7473 2077 6974 686f 7574 2073  e opts without s
│ │ │ +001ae840: 6f6d 6520 6175 746f 6d61 7469 6320 6b65  ome automatic ke
│ │ │ +001ae850: 726e 656c 2f75 7365 7273 7061 6365 2d61  rnel/userspace-a
│ │ │ +001ae860: 6464 6564 2064 6566 6175 6c74 730a 2020  dded defaults.  
│ │ │ +001ae870: 2020 2020 2020 7072 6576 696f 7573 5f6d        previous_m
│ │ │ +001ae880: 6f75 6e74 5f6f 7074 733d 2428 6772 6570  ount_opts=$(grep
│ │ │ +001ae890: 2022 246d 6f75 6e74 5f70 6f69 6e74 5f6d   "$mount_point_m
│ │ │ +001ae8a0: 6174 6368 5f72 6567 6578 7022 202f 6574  atch_regexp" /et
│ │ │ +001ae8b0: 632f 6d74 6162 207c 2068 6561 6420 2d31  c/mtab | head -1
│ │ │ +001ae8c0: 207c 2020 6177 6b20 277b 7072 696e 7420   |  awk '{print 
│ │ │ +001ae8d0: 2434 7d27 205c 0a20 2020 2020 2020 2020  $4}' \.         
│ │ │ +001ae8e0: 2020 2020 2020 2020 2020 207c 2073 6564             | sed
│ │ │ +001ae8f0: 202d 4520 2273 2f28 7277 7c64 6566 6175   -E "s/(rw|defau
│ │ │ +001ae900: 6c74 737c 7365 636c 6162 656c 7c6e 6f65  lts|seclabel|noe
│ │ │ +001ae910: 7865 6329 282c 7c24 292f 2f67 3b73 2f2c  xec)(,|$)//g;s/,
│ │ │ +001ae920: 242f 2f22 290a 2020 2020 2020 2020 5b20  $//").        [ 
│ │ │ +001ae930: 2224 7072 6576 696f 7573 5f6d 6f75 6e74  "$previous_mount
│ │ │ +001ae940: 5f6f 7074 7322 205d 2026 616d 703b 2661  _opts" ] &&a
│ │ │ +001ae950: 6d70 3b20 7072 6576 696f 7573 5f6d 6f75  mp; previous_mou
│ │ │ +001ae960: 6e74 5f6f 7074 732b 3d22 2c22 0a20 2020  nt_opts+=",".   
│ │ │ +001ae970: 2020 2020 2023 2049 6e20 6973 6f39 3636       # In iso966
│ │ │ +001ae980: 3020 6669 6c65 7379 7374 656d 7320 6d74  0 filesystems mt
│ │ │ +001ae990: 6162 2063 6f75 6c64 2064 6573 6372 6962  ab could describ
│ │ │ +001ae9a0: 6520 6120 2262 6c6f 636b 7369 7a65 2220  e a "blocksize" 
│ │ │ +001ae9b0: 7661 6c75 652c 2074 6869 7320 7368 6f75  value, this shou
│ │ │ +001ae9c0: 6c64 2062 6520 7265 666c 6563 7465 6420  ld be reflected 
│ │ │ +001ae9d0: 696e 0a20 2020 2020 2020 2023 2066 7374  in.        # fst
│ │ │ +001ae9e0: 6162 2061 7320 2262 6c6f 636b 222e 2020  ab as "block".  
│ │ │ +001ae9f0: 5468 6520 6e65 7874 2076 6172 6961 626c  The next variabl
│ │ │ +001aea00: 6520 6973 2074 6f20 7361 7469 7366 7920  e is to satisfy 
│ │ │ +001aea10: 7368 656c 6c63 6865 636b 2053 4332 3035  shellcheck SC205
│ │ │ +001aea20: 302e 0a20 2020 2020 2020 2066 735f 7479  0..        fs_ty
│ │ │ +001aea30: 7065 3d22 220a 2020 2020 2020 2020 6966  pe="".        if
│ │ │ +001aea40: 205b 2020 2224 6673 5f74 7970 6522 203d   [  "$fs_type" =
│ │ │ +001aea50: 3d20 2269 736f 3936 3630 2220 5d20 3b20  = "iso9660" ] ; 
│ │ │ +001aea60: 7468 656e 0a20 2020 2020 2020 2020 2020  then.           
│ │ │ +001aea70: 2070 7265 7669 6f75 735f 6d6f 756e 745f   previous_mount_
│ │ │ +001aea80: 6f70 7473 3d24 2873 6564 2027 732f 626c  opts=$(sed 's/bl
│ │ │ +001aea90: 6f63 6b73 697a 653d 2f62 6c6f 636b 3d2f  ocksize=/block=/
│ │ │ +001aeaa0: 2720 266c 743b 266c 743b 266c 743b 2022  ' <<< "
│ │ │ +001aeab0: 2470 7265 7669 6f75 735f 6d6f 756e 745f  $previous_mount_
│ │ │ +001aeac0: 6f70 7473 2229 0a20 2020 2020 2020 2066  opts").        f
│ │ │ +001aead0: 690a 2020 2020 2020 2020 6563 686f 2022  i.        echo "
│ │ │ +001aeae0: 202f 7661 722f 6c6f 672f 6175 6469 7420   /var/log/audit 
│ │ │ +001aeaf0: 2064 6566 6175 6c74 732c 247b 7072 6576   defaults,${prev
│ │ │ +001aeb00: 696f 7573 5f6d 6f75 6e74 5f6f 7074 737d  ious_mount_opts}
│ │ │ +001aeb10: 6e6f 6578 6563 2030 2030 2220 2667 743b  noexec 0 0" >
│ │ │ +001aeb20: 2667 743b 202f 6574 632f 6673 7461 620a  > /etc/fstab.
│ │ │ +001aeb30: 2020 2020 2320 4966 2074 6865 206d 6f75      # If the mou
│ │ │ +001aeb40: 6e74 5f6f 7074 206f 7074 696f 6e20 6973  nt_opt option is
│ │ │ +001aeb50: 206e 6f74 2061 6c72 6561 6479 2069 6e20   not already in 
│ │ │ +001aeb60: 7468 6520 6d6f 756e 7420 706f 696e 7427  the mount point'
│ │ │ +001aeb70: 7320 2f65 7463 2f66 7374 6162 2065 6e74  s /etc/fstab ent
│ │ │ +001aeb80: 7279 2c20 6164 6420 6974 0a20 2020 2065  ry, add it.    e
│ │ │ +001aeb90: 6c69 6620 2120 6772 6570 2022 246d 6f75  lif ! grep "$mou
│ │ │ +001aeba0: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ +001aebb0: 6567 6578 7022 202f 6574 632f 6673 7461  egexp" /etc/fsta
│ │ │ +001aebc0: 6220 7c20 6772 6570 202d 7120 226e 6f65  b | grep -q "noe
│ │ │ +001aebd0: 7865 6322 3b20 7468 656e 0a20 2020 2020  xec"; then.     
│ │ │ +001aebe0: 2020 2070 7265 7669 6f75 735f 6d6f 756e     previous_moun
│ │ │ +001aebf0: 745f 6f70 7473 3d24 2867 7265 7020 2224  t_opts=$(grep "$
│ │ │ +001aec00: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ +001aec10: 685f 7265 6765 7870 2220 2f65 7463 2f66  h_regexp" /etc/f
│ │ │ +001aec20: 7374 6162 207c 2061 776b 2027 7b70 7269  stab | awk '{pri
│ │ │ +001aec30: 6e74 2024 347d 2729 0a20 2020 2020 2020  nt $4}').       
│ │ │ +001aec40: 2073 6564 202d 6920 2273 7c5c 2824 7b6d   sed -i "s|\(${m
│ │ │ +001aec50: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ +001aec60: 5f72 6567 6578 707d 2e2a 247b 7072 6576  _regexp}.*${prev
│ │ │ +001aec70: 696f 7573 5f6d 6f75 6e74 5f6f 7074 737d  ious_mount_opts}
│ │ │ +001aec80: 5c29 7c5c 312c 6e6f 6578 6563 7c22 202f  \)|\1,noexec|" /
│ │ │ +001aec90: 6574 632f 6673 7461 620a 2020 2020 6669  etc/fstab.    fi
│ │ │ +001aeca0: 0a0a 0a20 2020 2069 6620 6d6b 6469 7220  ...    if mkdir 
│ │ │ +001aecb0: 2d70 2022 2f76 6172 2f6c 6f67 2f61 7564  -p "/var/log/aud
│ │ │ +001aecc0: 6974 223b 2074 6865 6e0a 2020 2020 2020  it"; then.      
│ │ │ +001aecd0: 2020 6966 206d 6f75 6e74 706f 696e 7420    if mountpoint 
│ │ │ +001aece0: 2d71 2022 2f76 6172 2f6c 6f67 2f61 7564  -q "/var/log/aud
│ │ │ +001aecf0: 6974 223b 2074 6865 6e0a 2020 2020 2020  it"; then.      
│ │ │ +001aed00: 2020 2020 2020 6d6f 756e 7420 2d6f 2072        mount -o r
│ │ │ +001aed10: 656d 6f75 6e74 202d 2d74 6172 6765 7420  emount --target 
│ │ │ +001aed20: 222f 7661 722f 6c6f 672f 6175 6469 7422  "/var/log/audit"
│ │ │ +001aed30: 0a20 2020 2020 2020 2066 690a 2020 2020  .        fi.    
│ │ │ +001aed40: 6669 0a7d 0a0a 7065 7266 6f72 6d5f 7265  fi.}..perform_re
│ │ │ +001aed50: 6d65 6469 6174 696f 6e0a 0a65 6c73 650a  mediation..else.
│ │ │ +001aed60: 2020 2020 2667 743b 2661 6d70 3b32 2065      >&2 e
│ │ │ +001aed70: 6368 6f20 2752 656d 6564 6961 7469 6f6e  cho 'Remediation
│ │ │ +001aed80: 2069 7320 6e6f 7420 6170 706c 6963 6162   is not applicab
│ │ │ +001aed90: 6c65 2c20 6e6f 7468 696e 6720 7761 7320  le, nothing was 
│ │ │ +001aeda0: 646f 6e65 270a 6669 0a3c 2f63 6f64 653e  done'.fi.
│ │ │ +001aedb0: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ +001aee60: 7469 6f6e 2041 6e61 636f 6e64 6120 736e tion Anaconda sn │ │ │ +001aee70: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ +001ae290: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +001ae2a0: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
│ │ │ +001aef20: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c
Compl │ │ │ +001aef00: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ +001aef10: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ +001aef30: 2f74 683e 3c74 643e 6869 6768 3c2f 7464 /th>high
Re │ │ │ +001aef50: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +001aef60: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:enable
< │ │ │ +001aefa0: 7072 653e 3c63 6f64 653e 0a70 6172 7420 pre>.part │ │ │ +001aefb0: 2f76 6172 2f6c 6f67 2f61 7564 6974 202d /var/log/audit - │ │ │ +001aefc0: 2d6d 6f75 6e74 6f70 7469 6f6e 733d 226e -mountoptions="n │ │ │ +001aefd0: 6f65 7865 6322 0a3c 2f63 6f64 653e 3c2f oexec".
│ │ │ 001aeff0: 3c2f 7464 3e3c 2f74 723e 3c2f 7462 6f64 < │ │ │ 001af010: 2f74 723e 3c74 7220 6461 7461 2d74 742d /tr>Remediat │ │ │ -001afc60: 696f 6e20 416e 6163 6f6e 6461 2073 6e69 ion Anaconda sni │ │ │ -001afc70: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -001afc80: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -001afcb0: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ -001afd20: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption: │ │ │ -001afd40: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ -001afd70: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Comple │ │ │ -001afd00: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ -001afd10: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
high
Reb │ │ │ -001afd50: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -001afd60: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:enable

.part / │ │ │ -001afdb0: 7661 722f 6c6f 672f 6175 6469 7420 2d2d var/log/audit -- │ │ │ -001afdc0: 6d6f 756e 746f 7074 696f 6e73 3d22 6e6f mountoptions="no │ │ │ -001afdd0: 7375 6964 220a 3c2f 636f 6465 3e3c 2f70 suid".

Remediatio │ │ │ -001afe90: 6e20 416e 7369 626c 6520 736e 6970 7065 n Ansible snippe │ │ │ -001afea0: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ -001aff20: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ -001aff30: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ -001aff50: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ -001aff60: 3c74 643e 6869 6768 3c2f 7464 3e3c 2f74 high
Reboot │ │ │ -001aff80: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -001aff90: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ -001affb0: 7464 3e63 6f6e 6669 6775 7265 3c2f 7464 td>configure

- name: │ │ │ -001affe0: 2047 6174 6865 7220 7468 6520 7061 636b Gather the pack │ │ │ -001afff0: 6167 6520 6661 6374 730a 2020 7061 636b age facts. pack │ │ │ -001b0000: 6167 655f 6661 6374 733a 0a20 2020 206d age_facts:. m │ │ │ -001b0010: 616e 6167 6572 3a20 6175 746f 0a20 2074 anager: auto. t │ │ │ -001b0020: 6167 733a 0a20 202d 204e 4953 542d 3830 ags:. - NIST-80 │ │ │ -001b0030: 302d 3533 2d41 432d 360a 2020 2d20 4e49 0-53-AC-6. - NI │ │ │ -001b0040: 5354 2d38 3030 2d35 332d 4143 2d36 2831 ST-800-53-AC-6(1 │ │ │ -001b0050: 290a 2020 2d20 4e49 5354 2d38 3030 2d35 ). - NIST-800-5 │ │ │ -001b0060: 332d 434d 2d36 2861 290a 2020 2d20 4e49 3-CM-6(a). - NI │ │ │ -001b0070: 5354 2d38 3030 2d35 332d 434d 2d37 2861 ST-800-53-CM-7(a │ │ │ -001b0080: 290a 2020 2d20 4e49 5354 2d38 3030 2d35 ). - NIST-800-5 │ │ │ -001b0090: 332d 434d 2d37 2862 290a 2020 2d20 4e49 3-CM-7(b). - NI │ │ │ -001b00a0: 5354 2d38 3030 2d35 332d 4d50 2d37 0a20 ST-800-53-MP-7. │ │ │ -001b00b0: 202d 2063 6f6e 6669 6775 7265 5f73 7472 - configure_str │ │ │ -001b00c0: 6174 6567 790a 2020 2d20 6869 6768 5f64 ategy. - high_d │ │ │ -001b00d0: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f isruption. - lo │ │ │ -001b00e0: 775f 636f 6d70 6c65 7869 7479 0a20 202d w_complexity. - │ │ │ -001b00f0: 206d 6564 6975 6d5f 7365 7665 7269 7479 medium_severity │ │ │ -001b0100: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f . - mount_optio │ │ │ -001b0110: 6e5f 7661 725f 6c6f 675f 6175 6469 745f n_var_log_audit_ │ │ │ -001b0120: 6e6f 7375 6964 0a20 202d 206e 6f5f 7265 nosuid. - no_re │ │ │ -001b0130: 626f 6f74 5f6e 6565 6465 640a 0a2d 206e boot_needed..- n │ │ │ -001b0140: 616d 653a 2027 4164 6420 6e6f 7375 6964 ame: 'Add nosuid │ │ │ -001b0150: 204f 7074 696f 6e20 746f 202f 7661 722f Option to /var/ │ │ │ -001b0160: 6c6f 672f 6175 6469 743a 2043 6865 636b log/audit: Check │ │ │ -001b0170: 2069 6e66 6f72 6d61 7469 6f6e 2061 7373 information ass │ │ │ -001b0180: 6f63 6961 7465 6420 746f 206d 6f75 6e74 ociated to mount │ │ │ -001b0190: 706f 696e 7427 0a20 2061 6e73 6962 6c65 point'. ansible │ │ │ -001b01a0: 2e62 7569 6c74 696e 2e63 6f6d 6d61 6e64 .builtin.command │ │ │ -001b01b0: 3a20 6669 6e64 6d6e 7420 2d2d 6673 7461 : findmnt --fsta │ │ │ -001b01c0: 6220 272f 7661 722f 6c6f 672f 6175 6469 b '/var/log/audi │ │ │ -001b01d0: 7427 0a20 2072 6567 6973 7465 723a 2064 t'. register: d │ │ │ -001b01e0: 6576 6963 655f 6e61 6d65 0a20 2066 6169 evice_name. fai │ │ │ -001b01f0: 6c65 645f 7768 656e 3a20 6465 7669 6365 led_when: device │ │ │ -001b0200: 5f6e 616d 652e 7263 2026 6774 3b20 310a _name.rc > 1. │ │ │ -001b0210: 2020 6368 616e 6765 645f 7768 656e 3a20 changed_when: │ │ │ -001b0220: 6661 6c73 650a 2020 6368 6563 6b5f 6d6f false. check_mo │ │ │ -001b0230: 6465 3a20 6661 6c73 650a 2020 7768 656e de: false. when │ │ │ -001b0240: 3a0a 2020 2d20 2820 6e6f 7420 2820 226b :. - ( not ( "k │ │ │ -001b0250: 6572 6e65 6c22 2069 6e20 616e 7369 626c ernel" in ansibl │ │ │ -001b0260: 655f 6661 6374 732e 7061 636b 6167 6573 e_facts.packages │ │ │ -001b0270: 2061 6e64 2022 626f 6f74 6322 2069 6e20 and "bootc" in │ │ │ -001b0280: 616e 7369 626c 655f 6661 6374 732e 7061 ansible_facts.pa │ │ │ -001b0290: 636b 6167 6573 0a20 2020 2061 6e64 206e ckages. and n │ │ │ -001b02a0: 6f74 2022 6f70 656e 7368 6966 742d 6b75 ot "openshift-ku │ │ │ -001b02b0: 6265 6c65 7422 2069 6e20 616e 7369 626c belet" in ansibl │ │ │ -001b02c0: 655f 6661 6374 732e 7061 636b 6167 6573 e_facts.packages │ │ │ -001b02d0: 2061 6e64 2022 6f73 7472 6565 2220 696e and "ostree" in │ │ │ -001b02e0: 2061 6e73 6962 6c65 5f70 726f 635f 636d ansible_proc_cm │ │ │ -001b02f0: 646c 696e 650a 2020 2020 2920 616e 6420 dline. ) and │ │ │ -001b0300: 6e6f 7420 2820 616e 7369 626c 655f 7669 not ( ansible_vi │ │ │ -001b0310: 7274 7561 6c69 7a61 7469 6f6e 5f74 7970 rtualization_typ │ │ │ -001b0320: 6520 696e 205b 2264 6f63 6b65 7222 2c20 e in ["docker", │ │ │ -001b0330: 226c 7863 222c 2022 6f70 656e 767a 222c "lxc", "openvz", │ │ │ -001b0340: 2022 706f 646d 616e 222c 0a20 2020 2022 "podman",. " │ │ │ -001b0350: 636f 6e74 6169 6e65 7222 5d20 2920 290a container"] ) ). │ │ │ -001b0360: 2020 2d20 2722 2f76 6172 2f6c 6f67 2f61 - '"/var/log/a │ │ │ -001b0370: 7564 6974 2220 696e 2061 6e73 6962 6c65 udit" in ansible │ │ │ -001b0380: 5f6d 6f75 6e74 7320 7c20 6d61 7028 6174 _mounts | map(at │ │ │ -001b0390: 7472 6962 7574 653d 226d 6f75 6e74 2229 tribute="mount") │ │ │ -001b03a0: 207c 206c 6973 7427 0a20 2074 6167 733a | list'. tags: │ │ │ -001b03b0: 0a20 202d 204e 4953 542d 3830 302d 3533 . - NIST-800-53 │ │ │ -001b03c0: 2d41 432d 360a 2020 2d20 4e49 5354 2d38 -AC-6. - NIST-8 │ │ │ -001b03d0: 3030 2d35 332d 4143 2d36 2831 290a 2020 00-53-AC-6(1). │ │ │ -001b03e0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d - NIST-800-53-CM │ │ │ -001b03f0: 2d36 2861 290a 2020 2d20 4e49 5354 2d38 -6(a). - NIST-8 │ │ │ -001b0400: 3030 2d35 332d 434d 2d37 2861 290a 2020 00-53-CM-7(a). │ │ │ -001b0410: 2d20 4e49 5354 2d38 3030 2d35 332d 434d - NIST-800-53-CM │ │ │ -001b0420: 2d37 2862 290a 2020 2d20 4e49 5354 2d38 -7(b). - NIST-8 │ │ │ -001b0430: 3030 2d35 332d 4d50 2d37 0a20 202d 2063 00-53-MP-7. - c │ │ │ -001b0440: 6f6e 6669 6775 7265 5f73 7472 6174 6567 onfigure_strateg │ │ │ -001b0450: 790a 2020 2d20 6869 6768 5f64 6973 7275 y. - high_disru │ │ │ -001b0460: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f ption. - low_co │ │ │ -001b0470: 6d70 6c65 7869 7479 0a20 202d 206d 6564 mplexity. - med │ │ │ -001b0480: 6975 6d5f 7365 7665 7269 7479 0a20 202d ium_severity. - │ │ │ -001b0490: 206d 6f75 6e74 5f6f 7074 696f 6e5f 7661 mount_option_va │ │ │ -001b04a0: 725f 6c6f 675f 6175 6469 745f 6e6f 7375 r_log_audit_nosu │ │ │ -001b04b0: 6964 0a20 202d 206e 6f5f 7265 626f 6f74 id. - no_reboot │ │ │ -001b04c0: 5f6e 6565 6465 640a 0a2d 206e 616d 653a _needed..- name: │ │ │ -001b04d0: 2027 4164 6420 6e6f 7375 6964 204f 7074 'Add nosuid Opt │ │ │ -001b04e0: 696f 6e20 746f 202f 7661 722f 6c6f 672f ion to /var/log/ │ │ │ -001b04f0: 6175 6469 743a 2043 7265 6174 6520 6d6f audit: Create mo │ │ │ -001b0500: 756e 745f 696e 666f 2064 6963 7469 6f6e unt_info diction │ │ │ -001b0510: 6172 7920 7661 7269 6162 6c65 270a 2020 ary variable'. │ │ │ -001b0520: 7365 745f 6661 6374 3a0a 2020 2020 6d6f set_fact:. mo │ │ │ -001b0530: 756e 745f 696e 666f 3a20 277b 7b20 6d6f unt_info: '{{ mo │ │ │ -001b0540: 756e 745f 696e 666f 7c64 6566 6175 6c74 unt_info|default │ │ │ -001b0550: 287b 7d29 7c63 6f6d 6269 6e65 287b 6974 ({})|combine({it │ │ │ -001b0560: 656d 2e30 3a20 6974 656d 2e31 7d29 207d em.0: item.1}) } │ │ │ -001b0570: 7d27 0a20 2077 6974 685f 746f 6765 7468 }'. with_togeth │ │ │ -001b0580: 6572 3a0a 2020 2d20 277b 7b20 6465 7669 er:. - '{{ devi │ │ │ -001b0590: 6365 5f6e 616d 652e 7374 646f 7574 5f6c ce_name.stdout_l │ │ │ -001b05a0: 696e 6573 5b30 5d2e 7370 6c69 7428 2920 ines[0].split() │ │ │ -001b05b0: 7c20 6d61 7028 2727 6c6f 7765 7227 2729 | map(''lower'') │ │ │ -001b05c0: 207c 206c 6973 7420 7d7d 270a 2020 2d20 | list }}'. - │ │ │ -001b05d0: 277b 7b20 6465 7669 6365 5f6e 616d 652e '{{ device_name. │ │ │ -001b05e0: 7374 646f 7574 5f6c 696e 6573 5b31 5d2e stdout_lines[1]. │ │ │ -001b05f0: 7370 6c69 7428 2920 7c20 6c69 7374 207d split() | list } │ │ │ -001b0600: 7d27 0a20 2077 6865 6e3a 0a20 202d 2028 }'. when:. - ( │ │ │ -001b0610: 206e 6f74 2028 2022 6b65 726e 656c 2220 not ( "kernel" │ │ │ -001b0620: 696e 2061 6e73 6962 6c65 5f66 6163 7473 in ansible_facts │ │ │ -001b0630: 2e70 6163 6b61 6765 7320 616e 6420 2262 .packages and "b │ │ │ -001b0640: 6f6f 7463 2220 696e 2061 6e73 6962 6c65 ootc" in ansible │ │ │ -001b0650: 5f66 6163 7473 2e70 6163 6b61 6765 730a _facts.packages. │ │ │ -001b0660: 2020 2020 616e 6420 6e6f 7420 226f 7065 and not "ope │ │ │ -001b0670: 6e73 6869 6674 2d6b 7562 656c 6574 2220 nshift-kubelet" │ │ │ -001b0680: 696e 2061 6e73 6962 6c65 5f66 6163 7473 in ansible_facts │ │ │ -001b0690: 2e70 6163 6b61 6765 7320 616e 6420 226f .packages and "o │ │ │ -001b06a0: 7374 7265 6522 2069 6e20 616e 7369 626c stree" in ansibl │ │ │ -001b06b0: 655f 7072 6f63 5f63 6d64 6c69 6e65 0a20 e_proc_cmdline. │ │ │ -001b06c0: 2020 2029 2061 6e64 206e 6f74 2028 2061 ) and not ( a │ │ │ -001b06d0: 6e73 6962 6c65 5f76 6972 7475 616c 697a nsible_virtualiz │ │ │ -001b06e0: 6174 696f 6e5f 7479 7065 2069 6e20 5b22 ation_type in [" │ │ │ -001b06f0: 646f 636b 6572 222c 2022 6c78 6322 2c20 docker", "lxc", │ │ │ -001b0700: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61 "openvz", "podma │ │ │ -001b0710: 6e22 2c0a 2020 2020 2263 6f6e 7461 696e n",. "contain │ │ │ -001b0720: 6572 225d 2029 2029 0a20 202d 2027 222f er"] ) ). - '"/ │ │ │ -001b0730: 7661 722f 6c6f 672f 6175 6469 7422 2069 var/log/audit" i │ │ │ -001b0740: 6e20 616e 7369 626c 655f 6d6f 756e 7473 n ansible_mounts │ │ │ -001b0750: 207c 206d 6170 2861 7474 7269 6275 7465 | map(attribute │ │ │ -001b0760: 3d22 6d6f 756e 7422 2920 7c20 6c69 7374 ="mount") | list │ │ │ -001b0770: 270a 2020 2d20 6465 7669 6365 5f6e 616d '. - device_nam │ │ │ -001b0780: 652e 7374 646f 7574 2069 7320 6465 6669 e.stdout is defi │ │ │ -001b0790: 6e65 6420 616e 6420 6465 7669 6365 5f6e ned and device_n │ │ │ -001b07a0: 616d 652e 7374 646f 7574 5f6c 696e 6573 ame.stdout_lines │ │ │ -001b07b0: 2069 7320 6465 6669 6e65 640a 2020 2d20 is defined. - │ │ │ -001b07c0: 2864 6576 6963 655f 6e61 6d65 2e73 7464 (device_name.std │ │ │ -001b07d0: 6f75 7420 7c20 6c65 6e67 7468 2026 6774 out | length > │ │ │ -001b07e0: 3b20 3029 0a20 2074 6167 733a 0a20 202d ; 0). tags:. - │ │ │ -001b07f0: 204e 4953 542d 3830 302d 3533 2d41 432d NIST-800-53-AC- │ │ │ -001b0800: 360a 2020 2d20 4e49 5354 2d38 3030 2d35 6. - NIST-800-5 │ │ │ -001b0810: 332d 4143 2d36 2831 290a 2020 2d20 4e49 3-AC-6(1). - NI │ │ │ -001b0820: 5354 2d38 3030 2d35 332d 434d 2d36 2861 ST-800-53-CM-6(a │ │ │ -001b0830: 290a 2020 2d20 4e49 5354 2d38 3030 2d35 ). - NIST-800-5 │ │ │ -001b0840: 332d 434d 2d37 2861 290a 2020 2d20 4e49 3-CM-7(a). - NI │ │ │ -001b0850: 5354 2d38 3030 2d35 332d 434d 2d37 2862 ST-800-53-CM-7(b │ │ │ -001b0860: 290a 2020 2d20 4e49 5354 2d38 3030 2d35 ). - NIST-800-5 │ │ │ -001b0870: 332d 4d50 2d37 0a20 202d 2063 6f6e 6669 3-MP-7. - confi │ │ │ -001b0880: 6775 7265 5f73 7472 6174 6567 790a 2020 gure_strategy. │ │ │ -001b0890: 2d20 6869 6768 5f64 6973 7275 7074 696f - high_disruptio │ │ │ -001b08a0: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65 n. - low_comple │ │ │ -001b08b0: 7869 7479 0a20 202d 206d 6564 6975 6d5f xity. - medium_ │ │ │ -001b08c0: 7365 7665 7269 7479 0a20 202d 206d 6f75 severity. - mou │ │ │ -001b08d0: 6e74 5f6f 7074 696f 6e5f 7661 725f 6c6f nt_option_var_lo │ │ │ -001b08e0: 675f 6175 6469 745f 6e6f 7375 6964 0a20 g_audit_nosuid. │ │ │ -001b08f0: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565 - no_reboot_nee │ │ │ -001b0900: 6465 640a 0a2d 206e 616d 653a 2027 4164 ded..- name: 'Ad │ │ │ -001b0910: 6420 6e6f 7375 6964 204f 7074 696f 6e20 d nosuid Option │ │ │ -001b0920: 746f 202f 7661 722f 6c6f 672f 6175 6469 to /var/log/audi │ │ │ -001b0930: 743a 2049 6620 2f76 6172 2f6c 6f67 2f61 t: If /var/log/a │ │ │ -001b0940: 7564 6974 206e 6f74 206d 6f75 6e74 6564 udit not mounted │ │ │ -001b0950: 2c20 6372 6166 740a 2020 2020 6d6f 756e , craft. moun │ │ │ -001b0960: 745f 696e 666f 206d 616e 7561 6c6c 7927 t_info manually' │ │ │ -001b0970: 0a20 2073 6574 5f66 6163 743a 0a20 2020 . set_fact:. │ │ │ -001b0980: 206d 6f75 6e74 5f69 6e66 6f3a 2027 7b7b mount_info: '{{ │ │ │ -001b0990: 206d 6f75 6e74 5f69 6e66 6f7c 6465 6661 mount_info|defa │ │ │ -001b09a0: 756c 7428 7b7d 297c 636f 6d62 696e 6528 ult({})|combine( │ │ │ -001b09b0: 7b69 7465 6d2e 303a 2069 7465 6d2e 317d {item.0: item.1} │ │ │ -001b09c0: 2920 7d7d 270a 2020 7769 7468 5f74 6f67 ) }}'. with_tog │ │ │ -001b09d0: 6574 6865 723a 0a20 202d 202d 2074 6172 ether:. - - tar │ │ │ -001b09e0: 6765 740a 2020 2020 2d20 736f 7572 6365 get. - source │ │ │ -001b09f0: 0a20 2020 202d 2066 7374 7970 650a 2020 . - fstype. │ │ │ -001b0a00: 2020 2d20 6f70 7469 6f6e 730a 2020 2d20 - options. - │ │ │ -001b0a10: 2d20 2f76 6172 2f6c 6f67 2f61 7564 6974 - /var/log/audit │ │ │ -001b0a20: 0a20 2020 202d 2027 270a 2020 2020 2d20 . - ''. - │ │ │ -001b0a30: 2727 0a20 2020 202d 2064 6566 6175 6c74 ''. - default │ │ │ -001b0a40: 730a 2020 7768 656e 3a0a 2020 2d20 2820 s. when:. - ( │ │ │ -001b0a50: 6e6f 7420 2820 226b 6572 6e65 6c22 2069 not ( "kernel" i │ │ │ -001b0a60: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ -001b0a70: 7061 636b 6167 6573 2061 6e64 2022 626f packages and "bo │ │ │ -001b0a80: 6f74 6322 2069 6e20 616e 7369 626c 655f otc" in ansible_ │ │ │ -001b0a90: 6661 6374 732e 7061 636b 6167 6573 0a20 facts.packages. │ │ │ -001b0aa0: 2020 2061 6e64 206e 6f74 2022 6f70 656e and not "open │ │ │ -001b0ab0: 7368 6966 742d 6b75 6265 6c65 7422 2069 shift-kubelet" i │ │ │ -001b0ac0: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ -001b0ad0: 7061 636b 6167 6573 2061 6e64 2022 6f73 packages and "os │ │ │ -001b0ae0: 7472 6565 2220 696e 2061 6e73 6962 6c65 tree" in ansible │ │ │ -001b0af0: 5f70 726f 635f 636d 646c 696e 650a 2020 _proc_cmdline. │ │ │ -001b0b00: 2020 2920 616e 6420 6e6f 7420 2820 616e ) and not ( an │ │ │ -001b0b10: 7369 626c 655f 7669 7274 7561 6c69 7a61 sible_virtualiza │ │ │ -001b0b20: 7469 6f6e 5f74 7970 6520 696e 205b 2264 tion_type in ["d │ │ │ -001b0b30: 6f63 6b65 7222 2c20 226c 7863 222c 2022 ocker", "lxc", " │ │ │ -001b0b40: 6f70 656e 767a 222c 2022 706f 646d 616e openvz", "podman │ │ │ -001b0b50: 222c 0a20 2020 2022 636f 6e74 6169 6e65 ",. "containe │ │ │ -001b0b60: 7222 5d20 2920 290a 2020 2d20 2722 2f76 r"] ) ). - '"/v │ │ │ -001b0b70: 6172 2f6c 6f67 2f61 7564 6974 2220 696e ar/log/audit" in │ │ │ -001b0b80: 2061 6e73 6962 6c65 5f6d 6f75 6e74 7320 ansible_mounts │ │ │ -001b0b90: 7c20 6d61 7028 6174 7472 6962 7574 653d | map(attribute= │ │ │ -001b0ba0: 226d 6f75 6e74 2229 207c 206c 6973 7427 "mount") | list' │ │ │ -001b0bb0: 0a20 202d 2028 222d 2d66 7374 6162 2220 . - ("--fstab" │ │ │ -001b0bc0: 7c20 6c65 6e67 7468 203d 3d20 3029 0a20 | length == 0). │ │ │ -001b0bd0: 202d 2064 6576 6963 655f 6e61 6d65 2e73 - device_name.s │ │ │ -001b0be0: 7464 6f75 7420 6973 2064 6566 696e 6564 tdout is defined │ │ │ -001b0bf0: 2061 6e64 2064 6576 6963 655f 6e61 6d65 and device_name │ │ │ -001b0c00: 2e73 7464 6f75 745f 6c69 6e65 7320 6973 .stdout_lines is │ │ │ -001b0c10: 2064 6566 696e 6564 0a20 202d 2028 6465 defined. - (de │ │ │ -001b0c20: 7669 6365 5f6e 616d 652e 7374 646f 7574 vice_name.stdout │ │ │ -001b0c30: 207c 206c 656e 6774 6820 3d3d 2030 290a | length == 0). │ │ │ -001b0c40: 2020 7461 6773 3a0a 2020 2d20 4e49 5354 tags:. - NIST │ │ │ -001b0c50: 2d38 3030 2d35 332d 4143 2d36 0a20 202d -800-53-AC-6. - │ │ │ -001b0c60: 204e 4953 542d 3830 302d 3533 2d41 432d NIST-800-53-AC- │ │ │ -001b0c70: 3628 3129 0a20 202d 204e 4953 542d 3830 6(1). - NIST-80 │ │ │ -001b0c80: 302d 3533 2d43 4d2d 3628 6129 0a20 202d 0-53-CM-6(a). - │ │ │ -001b0c90: 204e 4953 542d 3830 302d 3533 2d43 4d2d NIST-800-53-CM- │ │ │ -001b0ca0: 3728 6129 0a20 202d 204e 4953 542d 3830 7(a). - NIST-80 │ │ │ -001b0cb0: 302d 3533 2d43 4d2d 3728 6229 0a20 202d 0-53-CM-7(b). - │ │ │ -001b0cc0: 204e 4953 542d 3830 302d 3533 2d4d 502d NIST-800-53-MP- │ │ │ -001b0cd0: 370a 2020 2d20 636f 6e66 6967 7572 655f 7. - configure_ │ │ │ -001b0ce0: 7374 7261 7465 6779 0a20 202d 2068 6967 strategy. - hig │ │ │ -001b0cf0: 685f 6469 7372 7570 7469 6f6e 0a20 202d h_disruption. - │ │ │ -001b0d00: 206c 6f77 5f63 6f6d 706c 6578 6974 790a low_complexity. │ │ │ -001b0d10: 2020 2d20 6d65 6469 756d 5f73 6576 6572 - medium_sever │ │ │ -001b0d20: 6974 790a 2020 2d20 6d6f 756e 745f 6f70 ity. - mount_op │ │ │ -001b0d30: 7469 6f6e 5f76 6172 5f6c 6f67 5f61 7564 tion_var_log_aud │ │ │ -001b0d40: 6974 5f6e 6f73 7569 640a 2020 2d20 6e6f it_nosuid. - no │ │ │ -001b0d50: 5f72 6562 6f6f 745f 6e65 6564 6564 0a0a _reboot_needed.. │ │ │ -001b0d60: 2d20 6e61 6d65 3a20 2741 6464 206e 6f73 - name: 'Add nos │ │ │ -001b0d70: 7569 6420 4f70 7469 6f6e 2074 6f20 2f76 uid Option to /v │ │ │ -001b0d80: 6172 2f6c 6f67 2f61 7564 6974 3a20 4d61 ar/log/audit: Ma │ │ │ -001b0d90: 6b65 2073 7572 6520 6e6f 7375 6964 206f ke sure nosuid o │ │ │ -001b0da0: 7074 696f 6e20 6973 2070 6172 7420 6f66 ption is part of │ │ │ -001b0db0: 2074 6865 0a20 2020 2074 6f20 2f76 6172 the. to /var │ │ │ -001b0dc0: 2f6c 6f67 2f61 7564 6974 206f 7074 696f /log/audit optio │ │ │ -001b0dd0: 6e73 270a 2020 7365 745f 6661 6374 3a0a ns'. set_fact:. │ │ │ -001b0de0: 2020 2020 6d6f 756e 745f 696e 666f 3a20 mount_info: │ │ │ -001b0df0: 277b 7b20 6d6f 756e 745f 696e 666f 207c '{{ mount_info | │ │ │ -001b0e00: 2063 6f6d 6269 6e65 2820 7b27 276f 7074 combine( {''opt │ │ │ -001b0e10: 696f 6e73 2727 3a27 2727 277e 286d 6f75 ions'':''''~(mou │ │ │ -001b0e20: 6e74 5f69 6e66 6f2e 6f70 7469 6f6e 7320 nt_info.options │ │ │ -001b0e30: 7c0a 2020 2020 2020 6465 6661 756c 7428 |. default( │ │ │ -001b0e40: 2727 2727 2929 7e28 2727 2c27 2720 6966 ''''))~('','' if │ │ │ -001b0e50: 2028 6d6f 756e 745f 696e 666f 2e6f 7074 (mount_info.opt │ │ │ -001b0e60: 696f 6e73 207c 2064 6566 6175 6c74 2827 ions | default(' │ │ │ -001b0e70: 2727 2729 2920 656c 7365 2027 2727 2729 ''')) else '''') │ │ │ -001b0e80: 7e27 276e 6f73 7569 6427 270a 2020 2020 ~''nosuid''. │ │ │ -001b0e90: 2020 7d29 207d 7d27 0a20 2077 6865 6e3a }) }}'. when: │ │ │ -001b0ea0: 0a20 202d 2028 206e 6f74 2028 2022 6b65 . - ( not ( "ke │ │ │ -001b0eb0: 726e 656c 2220 696e 2061 6e73 6962 6c65 rnel" in ansible │ │ │ -001b0ec0: 5f66 6163 7473 2e70 6163 6b61 6765 7320 _facts.packages │ │ │ -001b0ed0: 616e 6420 2262 6f6f 7463 2220 696e 2061 and "bootc" in a │ │ │ -001b0ee0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163 nsible_facts.pac │ │ │ -001b0ef0: 6b61 6765 730a 2020 2020 616e 6420 6e6f kages. and no │ │ │ -001b0f00: 7420 226f 7065 6e73 6869 6674 2d6b 7562 t "openshift-kub │ │ │ -001b0f10: 656c 6574 2220 696e 2061 6e73 6962 6c65 elet" in ansible │ │ │ -001b0f20: 5f66 6163 7473 2e70 6163 6b61 6765 7320 _facts.packages │ │ │ -001b0f30: 616e 6420 226f 7374 7265 6522 2069 6e20 and "ostree" in │ │ │ -001b0f40: 616e 7369 626c 655f 7072 6f63 5f63 6d64 ansible_proc_cmd │ │ │ -001b0f50: 6c69 6e65 0a20 2020 2029 2061 6e64 206e line. ) and n │ │ │ -001b0f60: 6f74 2028 2061 6e73 6962 6c65 5f76 6972 ot ( ansible_vir │ │ │ -001b0f70: 7475 616c 697a 6174 696f 6e5f 7479 7065 tualization_type │ │ │ -001b0f80: 2069 6e20 5b22 646f 636b 6572 222c 2022 in ["docker", " │ │ │ -001b0f90: 6c78 6322 2c20 226f 7065 6e76 7a22 2c20 lxc", "openvz", │ │ │ -001b0fa0: 2270 6f64 6d61 6e22 2c0a 2020 2020 2263 "podman",. "c │ │ │ -001b0fb0: 6f6e 7461 696e 6572 225d 2029 2029 0a20 ontainer"] ) ). │ │ │ -001b0fc0: 202d 2027 222f 7661 722f 6c6f 672f 6175 - '"/var/log/au │ │ │ -001b0fd0: 6469 7422 2069 6e20 616e 7369 626c 655f dit" in ansible_ │ │ │ -001b0fe0: 6d6f 756e 7473 207c 206d 6170 2861 7474 mounts | map(att │ │ │ -001b0ff0: 7269 6275 7465 3d22 6d6f 756e 7422 2920 ribute="mount") │ │ │ -001b1000: 7c20 6c69 7374 270a 2020 2d20 6d6f 756e | list'. - moun │ │ │ -001b1010: 745f 696e 666f 2069 7320 6465 6669 6e65 t_info is define │ │ │ -001b1020: 6420 616e 6420 226e 6f73 7569 6422 206e d and "nosuid" n │ │ │ -001b1030: 6f74 2069 6e20 286d 6f75 6e74 5f69 6e66 ot in (mount_inf │ │ │ -001b1040: 6f2e 6f70 7469 6f6e 7320 7c20 6465 6661 o.options | defa │ │ │ -001b1050: 756c 7428 2727 2929 0a20 2074 6167 733a ult('')). tags: │ │ │ -001b1060: 0a20 202d 204e 4953 542d 3830 302d 3533 . - NIST-800-53 │ │ │ -001b1070: 2d41 432d 360a 2020 2d20 4e49 5354 2d38 -AC-6. - NIST-8 │ │ │ -001b1080: 3030 2d35 332d 4143 2d36 2831 290a 2020 00-53-AC-6(1). │ │ │ -001b1090: 2d20 4e49 5354 2d38 3030 2d35 332d 434d - NIST-800-53-CM │ │ │ -001b10a0: 2d36 2861 290a 2020 2d20 4e49 5354 2d38 -6(a). - NIST-8 │ │ │ -001b10b0: 3030 2d35 332d 434d 2d37 2861 290a 2020 00-53-CM-7(a). │ │ │ -001b10c0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d - NIST-800-53-CM │ │ │ -001b10d0: 2d37 2862 290a 2020 2d20 4e49 5354 2d38 -7(b). - NIST-8 │ │ │ -001b10e0: 3030 2d35 332d 4d50 2d37 0a20 202d 2063 00-53-MP-7. - c │ │ │ -001b10f0: 6f6e 6669 6775 7265 5f73 7472 6174 6567 onfigure_strateg │ │ │ -001b1100: 790a 2020 2d20 6869 6768 5f64 6973 7275 y. - high_disru │ │ │ -001b1110: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f ption. - low_co │ │ │ -001b1120: 6d70 6c65 7869 7479 0a20 202d 206d 6564 mplexity. - med │ │ │ -001b1130: 6975 6d5f 7365 7665 7269 7479 0a20 202d ium_severity. - │ │ │ -001b1140: 206d 6f75 6e74 5f6f 7074 696f 6e5f 7661 mount_option_va │ │ │ -001b1150: 725f 6c6f 675f 6175 6469 745f 6e6f 7375 r_log_audit_nosu │ │ │ -001b1160: 6964 0a20 202d 206e 6f5f 7265 626f 6f74 id. - no_reboot │ │ │ -001b1170: 5f6e 6565 6465 640a 0a2d 206e 616d 653a _needed..- name: │ │ │ -001b1180: 2027 4164 6420 6e6f 7375 6964 204f 7074 'Add nosuid Opt │ │ │ -001b1190: 696f 6e20 746f 202f 7661 722f 6c6f 672f ion to /var/log/ │ │ │ -001b11a0: 6175 6469 743a 2045 6e73 7572 6520 2f76 audit: Ensure /v │ │ │ -001b11b0: 6172 2f6c 6f67 2f61 7564 6974 2069 7320 ar/log/audit is │ │ │ -001b11c0: 6d6f 756e 7465 6420 7769 7468 0a20 2020 mounted with. │ │ │ -001b11d0: 206e 6f73 7569 6420 6f70 7469 6f6e 270a nosuid option'. │ │ │ -001b11e0: 2020 616e 7369 626c 652e 706f 7369 782e ansible.posix. │ │ │ -001b11f0: 6d6f 756e 743a 0a20 2020 2070 6174 683a mount:. path: │ │ │ -001b1200: 202f 7661 722f 6c6f 672f 6175 6469 740a /var/log/audit. │ │ │ -001b1210: 2020 2020 7372 633a 2027 7b7b 206d 6f75 src: '{{ mou │ │ │ -001b1220: 6e74 5f69 6e66 6f2e 736f 7572 6365 207c nt_info.source | │ │ │ -001b1230: 2064 6566 6175 6c74 2827 2727 2729 207d default('''') } │ │ │ -001b1240: 7d27 0a20 2020 206f 7074 733a 2027 7b7b }'. opts: '{{ │ │ │ -001b1250: 206d 6f75 6e74 5f69 6e66 6f2e 6f70 7469 mount_info.opti │ │ │ -001b1260: 6f6e 7320 7c20 6465 6661 756c 7428 2727 ons | default('' │ │ │ -001b1270: 2727 2920 7d7d 270a 2020 2020 7374 6174 '') }}'. stat │ │ │ -001b1280: 653a 206d 6f75 6e74 6564 0a20 2020 2066 e: mounted. f │ │ │ -001b1290: 7374 7970 653a 2027 7b7b 206d 6f75 6e74 stype: '{{ mount │ │ │ -001b12a0: 5f69 6e66 6f2e 6673 7479 7065 207c 2064 _info.fstype | d │ │ │ -001b12b0: 6566 6175 6c74 2827 2727 2729 207d 7d27 efault('''') }}' │ │ │ -001b12c0: 0a20 2072 6567 6973 7465 723a 206d 6f75 . register: mou │ │ │ -001b12d0: 6e74 5f72 6573 756c 740a 2020 6661 696c nt_result. fail │ │ │ -001b12e0: 6564 5f77 6865 6e3a 0a20 202d 206d 6f75 ed_when:. - mou │ │ │ -001b12f0: 6e74 5f72 6573 756c 7420 6973 2066 6169 nt_result is fai │ │ │ -001b1300: 6c65 640a 2020 2d20 2727 2774 6172 6765 led. - '''targe │ │ │ -001b1310: 7420 6973 2062 7573 7927 2720 6e6f 7420 t is busy'' not │ │ │ -001b1320: 696e 2028 6d6f 756e 745f 7265 7375 6c74 in (mount_result │ │ │ -001b1330: 2e6d 7367 207c 2064 6566 6175 6c74 2827 .msg | default(' │ │ │ -001b1340: 2727 2729 2927 0a20 202d 2027 2727 616c '''))'. - '''al │ │ │ -001b1350: 7265 6164 7920 6d6f 756e 7465 6427 2720 ready mounted'' │ │ │ -001b1360: 6e6f 7420 696e 2028 6d6f 756e 745f 7265 not in (mount_re │ │ │ -001b1370: 7375 6c74 2e6d 7367 207c 2064 6566 6175 sult.msg | defau │ │ │ -001b1380: 6c74 2827 2727 2729 2927 0a20 2077 6865 lt(''''))'. whe │ │ │ -001b1390: 6e3a 0a20 202d 2028 206e 6f74 2028 2022 n:. - ( not ( " │ │ │ -001b13a0: 6b65 726e 656c 2220 696e 2061 6e73 6962 kernel" in ansib │ │ │ -001b13b0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765 le_facts.package │ │ │ -001b13c0: 7320 616e 6420 2262 6f6f 7463 2220 696e s and "bootc" in │ │ │ -001b13d0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70 ansible_facts.p │ │ │ -001b13e0: 6163 6b61 6765 730a 2020 2020 616e 6420 ackages. and │ │ │ -001b13f0: 6e6f 7420 226f 7065 6e73 6869 6674 2d6b not "openshift-k │ │ │ -001b1400: 7562 656c 6574 2220 696e 2061 6e73 6962 ubelet" in ansib │ │ │ -001b1410: 6c65 5f66 6163 7473 2e70 6163 6b61 6765 le_facts.package │ │ │ -001b1420: 7320 616e 6420 226f 7374 7265 6522 2069 s and "ostree" i │ │ │ -001b1430: 6e20 616e 7369 626c 655f 7072 6f63 5f63 n ansible_proc_c │ │ │ -001b1440: 6d64 6c69 6e65 0a20 2020 2029 2061 6e64 mdline. ) and │ │ │ -001b1450: 206e 6f74 2028 2061 6e73 6962 6c65 5f76 not ( ansible_v │ │ │ -001b1460: 6972 7475 616c 697a 6174 696f 6e5f 7479 irtualization_ty │ │ │ -001b1470: 7065 2069 6e20 5b22 646f 636b 6572 222c pe in ["docker", │ │ │ -001b1480: 2022 6c78 6322 2c20 226f 7065 6e76 7a22 "lxc", "openvz" │ │ │ -001b1490: 2c20 2270 6f64 6d61 6e22 2c0a 2020 2020 , "podman",. │ │ │ -001b14a0: 2263 6f6e 7461 696e 6572 225d 2029 2029 "container"] ) ) │ │ │ -001b14b0: 0a20 202d 2027 222f 7661 722f 6c6f 672f . - '"/var/log/ │ │ │ -001b14c0: 6175 6469 7422 2069 6e20 616e 7369 626c audit" in ansibl │ │ │ -001b14d0: 655f 6d6f 756e 7473 207c 206d 6170 2861 e_mounts | map(a │ │ │ -001b14e0: 7474 7269 6275 7465 3d22 6d6f 756e 7422 ttribute="mount" │ │ │ -001b14f0: 2920 7c20 6c69 7374 270a 2020 2d20 6d6f ) | list'. - mo │ │ │ -001b1500: 756e 745f 696e 666f 2069 7320 6465 6669 unt_info is defi │ │ │ -001b1510: 6e65 640a 2020 2d20 2864 6576 6963 655f ned. - (device_ │ │ │ -001b1520: 6e61 6d65 2e73 7464 6f75 7420 6973 2064 name.stdout is d │ │ │ -001b1530: 6566 696e 6564 2061 6e64 2028 6465 7669 efined and (devi │ │ │ -001b1540: 6365 5f6e 616d 652e 7374 646f 7574 207c ce_name.stdout | │ │ │ -001b1550: 206c 656e 6774 6820 2667 743b 2030 2929 length > 0)) │ │ │ -001b1560: 206f 7220 2822 2d2d 6673 7461 6222 0a20 or ("--fstab". │ │ │ -001b1570: 2020 207c 206c 656e 6774 6820 3d3d 2030 | length == 0 │ │ │ -001b1580: 290a 2020 7461 6773 3a0a 2020 2d20 4e49 ). tags:. - NI │ │ │ -001b1590: 5354 2d38 3030 2d35 332d 4143 2d36 0a20 ST-800-53-AC-6. │ │ │ -001b15a0: 202d 204e 4953 542d 3830 302d 3533 2d41 - NIST-800-53-A │ │ │ -001b15b0: 432d 3628 3129 0a20 202d 204e 4953 542d C-6(1). - NIST- │ │ │ -001b15c0: 3830 302d 3533 2d43 4d2d 3628 6129 0a20 800-53-CM-6(a). │ │ │ -001b15d0: 202d 204e 4953 542d 3830 302d 3533 2d43 - NIST-800-53-C │ │ │ -001b15e0: 4d2d 3728 6129 0a20 202d 204e 4953 542d M-7(a). - NIST- │ │ │ -001b15f0: 3830 302d 3533 2d43 4d2d 3728 6229 0a20 800-53-CM-7(b). │ │ │ -001b1600: 202d 204e 4953 542d 3830 302d 3533 2d4d - NIST-800-53-M │ │ │ -001b1610: 502d 370a 2020 2d20 636f 6e66 6967 7572 P-7. - configur │ │ │ -001b1620: 655f 7374 7261 7465 6779 0a20 202d 2068 e_strategy. - h │ │ │ -001b1630: 6967 685f 6469 7372 7570 7469 6f6e 0a20 igh_disruption. │ │ │ -001b1640: 202d 206c 6f77 5f63 6f6d 706c 6578 6974 - low_complexit │ │ │ -001b1650: 790a 2020 2d20 6d65 6469 756d 5f73 6576 y. - medium_sev │ │ │ -001b1660: 6572 6974 790a 2020 2d20 6d6f 756e 745f erity. - mount_ │ │ │ -001b1670: 6f70 7469 6f6e 5f76 6172 5f6c 6f67 5f61 option_var_log_a │ │ │ -001b1680: 7564 6974 5f6e 6f73 7569 640a 2020 2d20 udit_nosuid. - │ │ │ -001b1690: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564 no_reboot_needed │ │ │ -001b16a0: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f .Remediation She │ │ │ -001b1760: 6c6c 2073 6372 6970 7420 e287 b23c 2f61 ll script ...

# Remediation i
│ │ │ -001b1830: 7320 6170 706c 6963 6162 6c65 206f 6e6c  s applicable onl
│ │ │ -001b1840: 7920 696e 2063 6572 7461 696e 2070 6c61  y in certain pla
│ │ │ -001b1850: 7466 6f72 6d73 0a69 6620 2820 2120 2820  tforms.if ( ! ( 
│ │ │ -001b1860: 7b20 7270 6d20 2d2d 7175 6965 7420 2d71  { rpm --quiet -q
│ │ │ -001b1870: 206b 6572 6e65 6c20 3b7d 2026 616d 703b   kernel ;} &
│ │ │ -001b1880: 2661 6d70 3b20 7b20 7270 6d20 2d2d 7175  & { rpm --qu
│ │ │ -001b1890: 6965 7420 2d71 2062 6f6f 7463 203b 7d20  iet -q bootc ;} 
│ │ │ -001b18a0: 2661 6d70 3b26 616d 703b 207b 2021 2072  && { ! r
│ │ │ -001b18b0: 706d 202d 2d71 7569 6574 202d 7120 6f70  pm --quiet -q op
│ │ │ -001b18c0: 656e 7368 6966 742d 6b75 6265 6c65 7420  enshift-kubelet 
│ │ │ -001b18d0: 3b7d 2026 616d 703b 2661 6d70 3b20 285b  ;} && ([
│ │ │ -001b18e0: 202d 6620 2f72 756e 2f6f 7374 7265 652d   -f /run/ostree-
│ │ │ -001b18f0: 626f 6f74 6564 205d 207c 7c20 5b20 2d4c  booted ] || [ -L
│ │ │ -001b1900: 202f 6f73 7472 6565 205d 2920 2920 2661   /ostree ]) ) &a
│ │ │ -001b1910: 6d70 3b26 616d 703b 2021 2028 205b 202d  mp;& ! ( [ -
│ │ │ -001b1920: 6620 2f2e 646f 636b 6572 656e 7620 5d20  f /.dockerenv ] 
│ │ │ -001b1930: 7c7c 205b 202d 6620 2f72 756e 2f2e 636f  || [ -f /run/.co
│ │ │ -001b1940: 6e74 6169 6e65 7265 6e76 205d 2029 2029  ntainerenv ] ) )
│ │ │ -001b1950: 2026 616d 703b 2661 6d70 3b20 7b20 2820   && { ( 
│ │ │ -001b1960: 6669 6e64 6d6e 7420 2d2d 6b65 726e 656c  findmnt --kernel
│ │ │ -001b1970: 2022 2f76 6172 2f6c 6f67 2f61 7564 6974   "/var/log/audit
│ │ │ -001b1980: 2220 2667 743b 202f 6465 762f 6e75 6c6c  " > /dev/null
│ │ │ -001b1990: 207c 7c20 6669 6e64 6d6e 7420 2d2d 6673   || findmnt --fs
│ │ │ -001b19a0: 7461 6220 222f 7661 722f 6c6f 672f 6175  tab "/var/log/au
│ │ │ -001b19b0: 6469 7422 2026 6774 3b20 2f64 6576 2f6e  dit" > /dev/n
│ │ │ -001b19c0: 756c 6c20 293b 207d 3b20 7468 656e 0a0a  ull ); }; then..
│ │ │ -001b19d0: 6675 6e63 7469 6f6e 2070 6572 666f 726d  function perform
│ │ │ -001b19e0: 5f72 656d 6564 6961 7469 6f6e 207b 0a0a  _remediation {..
│ │ │ -001b19f0: 2020 2020 0a20 2020 2020 2020 2023 2074      .        # t
│ │ │ -001b1a00: 6865 206d 6f75 6e74 2070 6f69 6e74 202f  he mount point /
│ │ │ -001b1a10: 7661 722f 6c6f 672f 6175 6469 7420 6861  var/log/audit ha
│ │ │ -001b1a20: 7320 746f 2062 6520 6465 6669 6e65 6420  s to be defined 
│ │ │ -001b1a30: 696e 202f 6574 632f 6673 7461 620a 2020  in /etc/fstab.  
│ │ │ -001b1a40: 2020 2020 2020 2320 6265 666f 7265 2074        # before t
│ │ │ -001b1a50: 6869 7320 7265 6d65 6469 6174 696f 6e20  his remediation 
│ │ │ -001b1a60: 6361 6e20 6265 2065 7865 6375 7465 642e  can be executed.
│ │ │ -001b1a70: 2049 6e20 6361 7365 2069 7420 6973 206e   In case it is n
│ │ │ -001b1a80: 6f74 2064 6566 696e 6564 2c20 7468 650a  ot defined, the.
│ │ │ -001b1a90: 2020 2020 2020 2020 2320 7265 6d65 6469          # remedi
│ │ │ -001b1aa0: 6174 696f 6e20 6162 6f72 7473 2061 6e64  ation aborts and
│ │ │ -001b1ab0: 206e 6f20 6368 616e 6765 7320 7265 6761   no changes rega
│ │ │ -001b1ac0: 7264 696e 6720 7468 6520 6d6f 756e 7420  rding the mount 
│ │ │ -001b1ad0: 706f 696e 7420 6172 6520 646f 6e65 2e0a  point are done..
│ │ │ -001b1ae0: 2020 2020 2020 2020 6d6f 756e 745f 706f          mount_po
│ │ │ -001b1af0: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ -001b1b00: 3d22 2428 7072 696e 7466 2022 5e5b 5b3a  ="$(printf "^[[:
│ │ │ -001b1b10: 7370 6163 653a 5d5d 2a5b 5e23 5d2e 2a5b  space:]]*[^#].*[
│ │ │ -001b1b20: 5b3a 7370 6163 653a 5d5d 2573 5b5b 3a73  [:space:]]%s[[:s
│ │ │ -001b1b30: 7061 6365 3a5d 5d22 2022 2f76 6172 2f6c  pace:]]" "/var/l
│ │ │ -001b1b40: 6f67 2f61 7564 6974 2229 220a 0a20 2020  og/audit")"..   
│ │ │ -001b1b50: 2067 7265 7020 2224 6d6f 756e 745f 706f   grep "$mount_po
│ │ │ -001b1b60: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ -001b1b70: 2220 2d71 202f 6574 632f 6673 7461 6220  " -q /etc/fstab 
│ │ │ -001b1b80: 5c0a 2020 2020 2020 2020 7c7c 207b 2065  \.        || { e
│ │ │ -001b1b90: 6368 6f20 2254 6865 206d 6f75 6e74 2070  cho "The mount p
│ │ │ -001b1ba0: 6f69 6e74 2027 2f76 6172 2f6c 6f67 2f61  oint '/var/log/a
│ │ │ -001b1bb0: 7564 6974 2720 6973 206e 6f74 2065 7665  udit' is not eve
│ │ │ -001b1bc0: 6e20 696e 202f 6574 632f 6673 7461 622c  n in /etc/fstab,
│ │ │ -001b1bd0: 2073 6f20 7765 2063 616e 2774 2073 6574   so we can't set
│ │ │ -001b1be0: 2075 7020 6d6f 756e 7420 6f70 7469 6f6e   up mount option
│ │ │ -001b1bf0: 7322 2026 6774 3b26 616d 703b 323b 0a20  s" >&2;. 
│ │ │ -001b1c00: 2020 2020 2020 2020 2020 2020 2020 2065                 e
│ │ │ -001b1c10: 6368 6f20 224e 6f74 2072 656d 6564 6961  cho "Not remedia
│ │ │ -001b1c20: 7469 6e67 2c20 6265 6361 7573 6520 7468  ting, because th
│ │ │ -001b1c30: 6572 6520 6973 206e 6f20 7265 636f 7264  ere is no record
│ │ │ -001b1c40: 206f 6620 2f76 6172 2f6c 6f67 2f61 7564   of /var/log/aud
│ │ │ -001b1c50: 6974 2069 6e20 2f65 7463 2f66 7374 6162  it in /etc/fstab
│ │ │ -001b1c60: 2220 2667 743b 2661 6d70 3b32 3b20 7265  " >&2; re
│ │ │ -001b1c70: 7475 726e 2031 3b20 7d0a 2020 2020 0a0a  turn 1; }.    ..
│ │ │ -001b1c80: 0a20 2020 206d 6f75 6e74 5f70 6f69 6e74  .    mount_point
│ │ │ -001b1c90: 5f6d 6174 6368 5f72 6567 6578 703d 2224  _match_regexp="$
│ │ │ -001b1ca0: 2870 7269 6e74 6620 225e 5b5b 3a73 7061  (printf "^[[:spa
│ │ │ -001b1cb0: 6365 3a5d 5d2a 5b5e 235d 2e2a 5b5b 3a73  ce:]]*[^#].*[[:s
│ │ │ -001b1cc0: 7061 6365 3a5d 5d25 735b 5b3a 7370 6163  pace:]]%s[[:spac
│ │ │ -001b1cd0: 653a 5d5d 2220 2f76 6172 2f6c 6f67 2f61  e:]]" /var/log/a
│ │ │ -001b1ce0: 7564 6974 2922 0a0a 2020 2020 2320 4966  udit)"..    # If
│ │ │ -001b1cf0: 2074 6865 206d 6f75 6e74 2070 6f69 6e74   the mount point
│ │ │ -001b1d00: 2069 7320 6e6f 7420 696e 202f 6574 632f   is not in /etc/
│ │ │ -001b1d10: 6673 7461 622c 2067 6574 2070 7265 7669  fstab, get previ
│ │ │ -001b1d20: 6f75 7320 6d6f 756e 7420 6f70 7469 6f6e  ous mount option
│ │ │ -001b1d30: 7320 6672 6f6d 202f 6574 632f 6d74 6162  s from /etc/mtab
│ │ │ -001b1d40: 0a20 2020 2069 6620 2120 6772 6570 202d  .    if ! grep -
│ │ │ -001b1d50: 7120 2224 6d6f 756e 745f 706f 696e 745f  q "$mount_point_
│ │ │ -001b1d60: 6d61 7463 685f 7265 6765 7870 2220 2f65  match_regexp" /e
│ │ │ -001b1d70: 7463 2f66 7374 6162 3b20 7468 656e 0a20  tc/fstab; then. 
│ │ │ -001b1d80: 2020 2020 2020 2023 2072 756e 7469 6d65         # runtime
│ │ │ -001b1d90: 206f 7074 7320 7769 7468 6f75 7420 736f   opts without so
│ │ │ -001b1da0: 6d65 2061 7574 6f6d 6174 6963 206b 6572  me automatic ker
│ │ │ -001b1db0: 6e65 6c2f 7573 6572 7370 6163 652d 6164  nel/userspace-ad
│ │ │ -001b1dc0: 6465 6420 6465 6661 756c 7473 0a20 2020  ded defaults.   
│ │ │ -001b1dd0: 2020 2020 2070 7265 7669 6f75 735f 6d6f       previous_mo
│ │ │ -001b1de0: 756e 745f 6f70 7473 3d24 2867 7265 7020  unt_opts=$(grep 
│ │ │ -001b1df0: 2224 6d6f 756e 745f 706f 696e 745f 6d61  "$mount_point_ma
│ │ │ -001b1e00: 7463 685f 7265 6765 7870 2220 2f65 7463  tch_regexp" /etc
│ │ │ -001b1e10: 2f6d 7461 6220 7c20 6865 6164 202d 3120  /mtab | head -1 
│ │ │ -001b1e20: 7c20 2061 776b 2027 7b70 7269 6e74 2024  |  awk '{print $
│ │ │ -001b1e30: 347d 2720 5c0a 2020 2020 2020 2020 2020  4}' \.          
│ │ │ -001b1e40: 2020 2020 2020 2020 2020 7c20 7365 6420            | sed 
│ │ │ -001b1e50: 2d45 2022 732f 2872 777c 6465 6661 756c  -E "s/(rw|defaul
│ │ │ -001b1e60: 7473 7c73 6563 6c61 6265 6c7c 6e6f 7375  ts|seclabel|nosu
│ │ │ -001b1e70: 6964 2928 2c7c 2429 2f2f 673b 732f 2c24  id)(,|$)//g;s/,$
│ │ │ -001b1e80: 2f2f 2229 0a20 2020 2020 2020 205b 2022  //").        [ "
│ │ │ -001b1e90: 2470 7265 7669 6f75 735f 6d6f 756e 745f  $previous_mount_
│ │ │ -001b1ea0: 6f70 7473 2220 5d20 2661 6d70 3b26 616d  opts" ] &&am
│ │ │ -001b1eb0: 703b 2070 7265 7669 6f75 735f 6d6f 756e  p; previous_moun
│ │ │ -001b1ec0: 745f 6f70 7473 2b3d 222c 220a 2020 2020  t_opts+=",".    
│ │ │ -001b1ed0: 2020 2020 2320 496e 2069 736f 3936 3630      # In iso9660
│ │ │ -001b1ee0: 2066 696c 6573 7973 7465 6d73 206d 7461   filesystems mta
│ │ │ -001b1ef0: 6220 636f 756c 6420 6465 7363 7269 6265  b could describe
│ │ │ -001b1f00: 2061 2022 626c 6f63 6b73 697a 6522 2076   a "blocksize" v
│ │ │ -001b1f10: 616c 7565 2c20 7468 6973 2073 686f 756c  alue, this shoul
│ │ │ -001b1f20: 6420 6265 2072 6566 6c65 6374 6564 2069  d be reflected i
│ │ │ -001b1f30: 6e0a 2020 2020 2020 2020 2320 6673 7461  n.        # fsta
│ │ │ -001b1f40: 6220 6173 2022 626c 6f63 6b22 2e20 2054  b as "block".  T
│ │ │ -001b1f50: 6865 206e 6578 7420 7661 7269 6162 6c65  he next variable
│ │ │ -001b1f60: 2069 7320 746f 2073 6174 6973 6679 2073   is to satisfy s
│ │ │ -001b1f70: 6865 6c6c 6368 6563 6b20 5343 3230 3530  hellcheck SC2050
│ │ │ -001b1f80: 2e0a 2020 2020 2020 2020 6673 5f74 7970  ..        fs_typ
│ │ │ -001b1f90: 653d 2222 0a20 2020 2020 2020 2069 6620  e="".        if 
│ │ │ -001b1fa0: 5b20 2022 2466 735f 7479 7065 2220 3d3d  [  "$fs_type" ==
│ │ │ -001b1fb0: 2022 6973 6f39 3636 3022 205d 203b 2074   "iso9660" ] ; t
│ │ │ -001b1fc0: 6865 6e0a 2020 2020 2020 2020 2020 2020  hen.            
│ │ │ -001b1fd0: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ -001b1fe0: 7074 733d 2428 7365 6420 2773 2f62 6c6f  pts=$(sed 's/blo
│ │ │ -001b1ff0: 636b 7369 7a65 3d2f 626c 6f63 6b3d 2f27  cksize=/block=/'
│ │ │ -001b2000: 2026 6c74 3b26 6c74 3b26 6c74 3b20 2224   <<< "$
│ │ │ -001b2010: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ -001b2020: 7074 7322 290a 2020 2020 2020 2020 6669  pts").        fi
│ │ │ -001b2030: 0a20 2020 2020 2020 2065 6368 6f20 2220  .        echo " 
│ │ │ -001b2040: 2f76 6172 2f6c 6f67 2f61 7564 6974 2020  /var/log/audit  
│ │ │ -001b2050: 6465 6661 756c 7473 2c24 7b70 7265 7669  defaults,${previ
│ │ │ -001b2060: 6f75 735f 6d6f 756e 745f 6f70 7473 7d6e  ous_mount_opts}n
│ │ │ -001b2070: 6f73 7569 6420 3020 3022 2026 6774 3b26  osuid 0 0" >&
│ │ │ -001b2080: 6774 3b20 2f65 7463 2f66 7374 6162 0a20  gt; /etc/fstab. 
│ │ │ -001b2090: 2020 2023 2049 6620 7468 6520 6d6f 756e     # If the moun
│ │ │ -001b20a0: 745f 6f70 7420 6f70 7469 6f6e 2069 7320  t_opt option is 
│ │ │ -001b20b0: 6e6f 7420 616c 7265 6164 7920 696e 2074  not already in t
│ │ │ -001b20c0: 6865 206d 6f75 6e74 2070 6f69 6e74 2773  he mount point's
│ │ │ -001b20d0: 202f 6574 632f 6673 7461 6220 656e 7472   /etc/fstab entr
│ │ │ -001b20e0: 792c 2061 6464 2069 740a 2020 2020 656c  y, add it.    el
│ │ │ -001b20f0: 6966 2021 2067 7265 7020 2224 6d6f 756e  if ! grep "$moun
│ │ │ -001b2100: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ -001b2110: 6765 7870 2220 2f65 7463 2f66 7374 6162  gexp" /etc/fstab
│ │ │ -001b2120: 207c 2067 7265 7020 2d71 2022 6e6f 7375   | grep -q "nosu
│ │ │ -001b2130: 6964 223b 2074 6865 6e0a 2020 2020 2020  id"; then.      
│ │ │ -001b2140: 2020 7072 6576 696f 7573 5f6d 6f75 6e74    previous_mount
│ │ │ -001b2150: 5f6f 7074 733d 2428 6772 6570 2022 246d  _opts=$(grep "$m
│ │ │ -001b2160: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ -001b2170: 5f72 6567 6578 7022 202f 6574 632f 6673  _regexp" /etc/fs
│ │ │ -001b2180: 7461 6220 7c20 6177 6b20 277b 7072 696e  tab | awk '{prin
│ │ │ -001b2190: 7420 2434 7d27 290a 2020 2020 2020 2020  t $4}').        
│ │ │ -001b21a0: 7365 6420 2d69 2022 737c 5c28 247b 6d6f  sed -i "s|\(${mo
│ │ │ -001b21b0: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ -001b21c0: 7265 6765 7870 7d2e 2a24 7b70 7265 7669  regexp}.*${previ
│ │ │ -001b21d0: 6f75 735f 6d6f 756e 745f 6f70 7473 7d5c  ous_mount_opts}\
│ │ │ -001b21e0: 297c 5c31 2c6e 6f73 7569 647c 2220 2f65  )|\1,nosuid|" /e
│ │ │ -001b21f0: 7463 2f66 7374 6162 0a20 2020 2066 690a  tc/fstab.    fi.
│ │ │ -001b2200: 0a0a 2020 2020 6966 206d 6b64 6972 202d  ..    if mkdir -
│ │ │ -001b2210: 7020 222f 7661 722f 6c6f 672f 6175 6469  p "/var/log/audi
│ │ │ -001b2220: 7422 3b20 7468 656e 0a20 2020 2020 2020  t"; then.       
│ │ │ -001b2230: 2069 6620 6d6f 756e 7470 6f69 6e74 202d   if mountpoint -
│ │ │ -001b2240: 7120 222f 7661 722f 6c6f 672f 6175 6469  q "/var/log/audi
│ │ │ -001b2250: 7422 3b20 7468 656e 0a20 2020 2020 2020  t"; then.       
│ │ │ -001b2260: 2020 2020 206d 6f75 6e74 202d 6f20 7265       mount -o re
│ │ │ -001b2270: 6d6f 756e 7420 2d2d 7461 7267 6574 2022  mount --target "
│ │ │ -001b2280: 2f76 6172 2f6c 6f67 2f61 7564 6974 220a  /var/log/audit".
│ │ │ -001b2290: 2020 2020 2020 2020 6669 0a20 2020 2066          fi.    f
│ │ │ -001b22a0: 690a 7d0a 0a70 6572 666f 726d 5f72 656d  i.}..perform_rem
│ │ │ -001b22b0: 6564 6961 7469 6f6e 0a0a 656c 7365 0a20  ediation..else. 
│ │ │ -001b22c0: 2020 2026 6774 3b26 616d 703b 3220 6563     >&2 ec
│ │ │ -001b22d0: 686f 2027 5265 6d65 6469 6174 696f 6e20  ho 'Remediation 
│ │ │ -001b22e0: 6973 206e 6f74 2061 7070 6c69 6361 626c  is not applicabl
│ │ │ -001b22f0: 652c 206e 6f74 6869 6e67 2077 6173 2064  e, nothing was d
│ │ │ -001b2300: 6f6e 6527 0a66 690a 3c2f 636f 6465 3e3c  one'.fi.<
│ │ │ +001afc60: 696f 6e20 416e 7369 626c 6520 736e 6970  ion Ansible snip
│ │ │ +001afc70: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c  pet ...
< │ │ │ +001afc80: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +001afc90: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +001afca0: 7365 2220 6964 3d22 6964 3436 3822 3e3c se" id="id468">< │ │ │ +001afcb0: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +001afcc0: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +001afcd0: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +001afce0: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +001afcf0: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >
Disruption:< │ │ │ +001afd40: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ +001afd70: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
R │ │ │ -001b17f0: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -001b1800: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c2f alse
Complex │ │ │ +001afd00: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ +001afd10: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
high
Rebo │ │ │ +001afd50: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +001afd60: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
configure
│ │ │ +001afda0: 3c70 7265 3e3c 636f 6465 3e2d 206e 616d
- nam
│ │ │ +001afdb0: 653a 2047 6174 6865 7220 7468 6520 7061  e: Gather the pa
│ │ │ +001afdc0: 636b 6167 6520 6661 6374 730a 2020 7061  ckage facts.  pa
│ │ │ +001afdd0: 636b 6167 655f 6661 6374 733a 0a20 2020  ckage_facts:.   
│ │ │ +001afde0: 206d 616e 6167 6572 3a20 6175 746f 0a20   manager: auto. 
│ │ │ +001afdf0: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ +001afe00: 3830 302d 3533 2d41 432d 360a 2020 2d20  800-53-AC-6.  - 
│ │ │ +001afe10: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ +001afe20: 2831 290a 2020 2d20 4e49 5354 2d38 3030  (1).  - NIST-800
│ │ │ +001afe30: 2d35 332d 434d 2d36 2861 290a 2020 2d20  -53-CM-6(a).  - 
│ │ │ +001afe40: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ +001afe50: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ +001afe60: 2d35 332d 434d 2d37 2862 290a 2020 2d20  -53-CM-7(b).  - 
│ │ │ +001afe70: 4e49 5354 2d38 3030 2d35 332d 4d50 2d37  NIST-800-53-MP-7
│ │ │ +001afe80: 0a20 202d 2063 6f6e 6669 6775 7265 5f73  .  - configure_s
│ │ │ +001afe90: 7472 6174 6567 790a 2020 2d20 6869 6768  trategy.  - high
│ │ │ +001afea0: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +001afeb0: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ +001afec0: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ +001afed0: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074  ty.  - mount_opt
│ │ │ +001afee0: 696f 6e5f 7661 725f 6c6f 675f 6175 6469  ion_var_log_audi
│ │ │ +001afef0: 745f 6e6f 7375 6964 0a20 202d 206e 6f5f  t_nosuid.  - no_
│ │ │ +001aff00: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ +001aff10: 206e 616d 653a 2027 4164 6420 6e6f 7375   name: 'Add nosu
│ │ │ +001aff20: 6964 204f 7074 696f 6e20 746f 202f 7661  id Option to /va
│ │ │ +001aff30: 722f 6c6f 672f 6175 6469 743a 2043 6865  r/log/audit: Che
│ │ │ +001aff40: 636b 2069 6e66 6f72 6d61 7469 6f6e 2061  ck information a
│ │ │ +001aff50: 7373 6f63 6961 7465 6420 746f 206d 6f75  ssociated to mou
│ │ │ +001aff60: 6e74 706f 696e 7427 0a20 2061 6e73 6962  ntpoint'.  ansib
│ │ │ +001aff70: 6c65 2e62 7569 6c74 696e 2e63 6f6d 6d61  le.builtin.comma
│ │ │ +001aff80: 6e64 3a20 6669 6e64 6d6e 7420 2d2d 6673  nd: findmnt --fs
│ │ │ +001aff90: 7461 6220 272f 7661 722f 6c6f 672f 6175  tab '/var/log/au
│ │ │ +001affa0: 6469 7427 0a20 2072 6567 6973 7465 723a  dit'.  register:
│ │ │ +001affb0: 2064 6576 6963 655f 6e61 6d65 0a20 2066   device_name.  f
│ │ │ +001affc0: 6169 6c65 645f 7768 656e 3a20 6465 7669  ailed_when: devi
│ │ │ +001affd0: 6365 5f6e 616d 652e 7263 2026 6774 3b20  ce_name.rc > 
│ │ │ +001affe0: 310a 2020 6368 616e 6765 645f 7768 656e  1.  changed_when
│ │ │ +001afff0: 3a20 6661 6c73 650a 2020 6368 6563 6b5f  : false.  check_
│ │ │ +001b0000: 6d6f 6465 3a20 6661 6c73 650a 2020 7768  mode: false.  wh
│ │ │ +001b0010: 656e 3a0a 2020 2d20 2820 6e6f 7420 2820  en:.  - ( not ( 
│ │ │ +001b0020: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ +001b0030: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001b0040: 6573 2061 6e64 2022 626f 6f74 6322 2069  es and "bootc" i
│ │ │ +001b0050: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001b0060: 7061 636b 6167 6573 0a20 2020 2061 6e64  packages.    and
│ │ │ +001b0070: 206e 6f74 2022 6f70 656e 7368 6966 742d   not "openshift-
│ │ │ +001b0080: 6b75 6265 6c65 7422 2069 6e20 616e 7369  kubelet" in ansi
│ │ │ +001b0090: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001b00a0: 6573 2061 6e64 2022 6f73 7472 6565 2220  es and "ostree" 
│ │ │ +001b00b0: 696e 2061 6e73 6962 6c65 5f70 726f 635f  in ansible_proc_
│ │ │ +001b00c0: 636d 646c 696e 650a 2020 2020 2920 616e  cmdline.    ) an
│ │ │ +001b00d0: 6420 6e6f 7420 2820 616e 7369 626c 655f  d not ( ansible_
│ │ │ +001b00e0: 7669 7274 7561 6c69 7a61 7469 6f6e 5f74  virtualization_t
│ │ │ +001b00f0: 7970 6520 696e 205b 2264 6f63 6b65 7222  ype in ["docker"
│ │ │ +001b0100: 2c20 226c 7863 222c 2022 6f70 656e 767a  , "lxc", "openvz
│ │ │ +001b0110: 222c 2022 706f 646d 616e 222c 0a20 2020  ", "podman",.   
│ │ │ +001b0120: 2022 636f 6e74 6169 6e65 7222 5d20 2920   "container"] ) 
│ │ │ +001b0130: 290a 2020 2d20 2722 2f76 6172 2f6c 6f67  ).  - '"/var/log
│ │ │ +001b0140: 2f61 7564 6974 2220 696e 2061 6e73 6962  /audit" in ansib
│ │ │ +001b0150: 6c65 5f6d 6f75 6e74 7320 7c20 6d61 7028  le_mounts | map(
│ │ │ +001b0160: 6174 7472 6962 7574 653d 226d 6f75 6e74  attribute="mount
│ │ │ +001b0170: 2229 207c 206c 6973 7427 0a20 2074 6167  ") | list'.  tag
│ │ │ +001b0180: 733a 0a20 202d 204e 4953 542d 3830 302d  s:.  - NIST-800-
│ │ │ +001b0190: 3533 2d41 432d 360a 2020 2d20 4e49 5354  53-AC-6.  - NIST
│ │ │ +001b01a0: 2d38 3030 2d35 332d 4143 2d36 2831 290a  -800-53-AC-6(1).
│ │ │ +001b01b0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001b01c0: 434d 2d36 2861 290a 2020 2d20 4e49 5354  CM-6(a).  - NIST
│ │ │ +001b01d0: 2d38 3030 2d35 332d 434d 2d37 2861 290a  -800-53-CM-7(a).
│ │ │ +001b01e0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001b01f0: 434d 2d37 2862 290a 2020 2d20 4e49 5354  CM-7(b).  - NIST
│ │ │ +001b0200: 2d38 3030 2d35 332d 4d50 2d37 0a20 202d  -800-53-MP-7.  -
│ │ │ +001b0210: 2063 6f6e 6669 6775 7265 5f73 7472 6174   configure_strat
│ │ │ +001b0220: 6567 790a 2020 2d20 6869 6768 5f64 6973  egy.  - high_dis
│ │ │ +001b0230: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f  ruption.  - low_
│ │ │ +001b0240: 636f 6d70 6c65 7869 7479 0a20 202d 206d  complexity.  - m
│ │ │ +001b0250: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ +001b0260: 202d 206d 6f75 6e74 5f6f 7074 696f 6e5f   - mount_option_
│ │ │ +001b0270: 7661 725f 6c6f 675f 6175 6469 745f 6e6f  var_log_audit_no
│ │ │ +001b0280: 7375 6964 0a20 202d 206e 6f5f 7265 626f  suid.  - no_rebo
│ │ │ +001b0290: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d  ot_needed..- nam
│ │ │ +001b02a0: 653a 2027 4164 6420 6e6f 7375 6964 204f  e: 'Add nosuid O
│ │ │ +001b02b0: 7074 696f 6e20 746f 202f 7661 722f 6c6f  ption to /var/lo
│ │ │ +001b02c0: 672f 6175 6469 743a 2043 7265 6174 6520  g/audit: Create 
│ │ │ +001b02d0: 6d6f 756e 745f 696e 666f 2064 6963 7469  mount_info dicti
│ │ │ +001b02e0: 6f6e 6172 7920 7661 7269 6162 6c65 270a  onary variable'.
│ │ │ +001b02f0: 2020 7365 745f 6661 6374 3a0a 2020 2020    set_fact:.    
│ │ │ +001b0300: 6d6f 756e 745f 696e 666f 3a20 277b 7b20  mount_info: '{{ 
│ │ │ +001b0310: 6d6f 756e 745f 696e 666f 7c64 6566 6175  mount_info|defau
│ │ │ +001b0320: 6c74 287b 7d29 7c63 6f6d 6269 6e65 287b  lt({})|combine({
│ │ │ +001b0330: 6974 656d 2e30 3a20 6974 656d 2e31 7d29  item.0: item.1})
│ │ │ +001b0340: 207d 7d27 0a20 2077 6974 685f 746f 6765   }}'.  with_toge
│ │ │ +001b0350: 7468 6572 3a0a 2020 2d20 277b 7b20 6465  ther:.  - '{{ de
│ │ │ +001b0360: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ +001b0370: 5f6c 696e 6573 5b30 5d2e 7370 6c69 7428  _lines[0].split(
│ │ │ +001b0380: 2920 7c20 6d61 7028 2727 6c6f 7765 7227  ) | map(''lower'
│ │ │ +001b0390: 2729 207c 206c 6973 7420 7d7d 270a 2020  ') | list }}'.  
│ │ │ +001b03a0: 2d20 277b 7b20 6465 7669 6365 5f6e 616d  - '{{ device_nam
│ │ │ +001b03b0: 652e 7374 646f 7574 5f6c 696e 6573 5b31  e.stdout_lines[1
│ │ │ +001b03c0: 5d2e 7370 6c69 7428 2920 7c20 6c69 7374  ].split() | list
│ │ │ +001b03d0: 207d 7d27 0a20 2077 6865 6e3a 0a20 202d   }}'.  when:.  -
│ │ │ +001b03e0: 2028 206e 6f74 2028 2022 6b65 726e 656c   ( not ( "kernel
│ │ │ +001b03f0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +001b0400: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ +001b0410: 2262 6f6f 7463 2220 696e 2061 6e73 6962  "bootc" in ansib
│ │ │ +001b0420: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001b0430: 730a 2020 2020 616e 6420 6e6f 7420 226f  s.    and not "o
│ │ │ +001b0440: 7065 6e73 6869 6674 2d6b 7562 656c 6574  penshift-kubelet
│ │ │ +001b0450: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +001b0460: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ +001b0470: 226f 7374 7265 6522 2069 6e20 616e 7369  "ostree" in ansi
│ │ │ +001b0480: 626c 655f 7072 6f63 5f63 6d64 6c69 6e65  ble_proc_cmdline
│ │ │ +001b0490: 0a20 2020 2029 2061 6e64 206e 6f74 2028  .    ) and not (
│ │ │ +001b04a0: 2061 6e73 6962 6c65 5f76 6972 7475 616c   ansible_virtual
│ │ │ +001b04b0: 697a 6174 696f 6e5f 7479 7065 2069 6e20  ization_type in 
│ │ │ +001b04c0: 5b22 646f 636b 6572 222c 2022 6c78 6322  ["docker", "lxc"
│ │ │ +001b04d0: 2c20 226f 7065 6e76 7a22 2c20 2270 6f64  , "openvz", "pod
│ │ │ +001b04e0: 6d61 6e22 2c0a 2020 2020 2263 6f6e 7461  man",.    "conta
│ │ │ +001b04f0: 696e 6572 225d 2029 2029 0a20 202d 2027  iner"] ) ).  - '
│ │ │ +001b0500: 222f 7661 722f 6c6f 672f 6175 6469 7422  "/var/log/audit"
│ │ │ +001b0510: 2069 6e20 616e 7369 626c 655f 6d6f 756e   in ansible_moun
│ │ │ +001b0520: 7473 207c 206d 6170 2861 7474 7269 6275  ts | map(attribu
│ │ │ +001b0530: 7465 3d22 6d6f 756e 7422 2920 7c20 6c69  te="mount") | li
│ │ │ +001b0540: 7374 270a 2020 2d20 6465 7669 6365 5f6e  st'.  - device_n
│ │ │ +001b0550: 616d 652e 7374 646f 7574 2069 7320 6465  ame.stdout is de
│ │ │ +001b0560: 6669 6e65 6420 616e 6420 6465 7669 6365  fined and device
│ │ │ +001b0570: 5f6e 616d 652e 7374 646f 7574 5f6c 696e  _name.stdout_lin
│ │ │ +001b0580: 6573 2069 7320 6465 6669 6e65 640a 2020  es is defined.  
│ │ │ +001b0590: 2d20 2864 6576 6963 655f 6e61 6d65 2e73  - (device_name.s
│ │ │ +001b05a0: 7464 6f75 7420 7c20 6c65 6e67 7468 2026  tdout | length &
│ │ │ +001b05b0: 6774 3b20 3029 0a20 2074 6167 733a 0a20  gt; 0).  tags:. 
│ │ │ +001b05c0: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ +001b05d0: 432d 360a 2020 2d20 4e49 5354 2d38 3030  C-6.  - NIST-800
│ │ │ +001b05e0: 2d35 332d 4143 2d36 2831 290a 2020 2d20  -53-AC-6(1).  - 
│ │ │ +001b05f0: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ +001b0600: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ +001b0610: 2d35 332d 434d 2d37 2861 290a 2020 2d20  -53-CM-7(a).  - 
│ │ │ +001b0620: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ +001b0630: 2862 290a 2020 2d20 4e49 5354 2d38 3030  (b).  - NIST-800
│ │ │ +001b0640: 2d35 332d 4d50 2d37 0a20 202d 2063 6f6e  -53-MP-7.  - con
│ │ │ +001b0650: 6669 6775 7265 5f73 7472 6174 6567 790a  figure_strategy.
│ │ │ +001b0660: 2020 2d20 6869 6768 5f64 6973 7275 7074    - high_disrupt
│ │ │ +001b0670: 696f 6e0a 2020 2d20 6c6f 775f 636f 6d70  ion.  - low_comp
│ │ │ +001b0680: 6c65 7869 7479 0a20 202d 206d 6564 6975  lexity.  - mediu
│ │ │ +001b0690: 6d5f 7365 7665 7269 7479 0a20 202d 206d  m_severity.  - m
│ │ │ +001b06a0: 6f75 6e74 5f6f 7074 696f 6e5f 7661 725f  ount_option_var_
│ │ │ +001b06b0: 6c6f 675f 6175 6469 745f 6e6f 7375 6964  log_audit_nosuid
│ │ │ +001b06c0: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ +001b06d0: 6565 6465 640a 0a2d 206e 616d 653a 2027  eeded..- name: '
│ │ │ +001b06e0: 4164 6420 6e6f 7375 6964 204f 7074 696f  Add nosuid Optio
│ │ │ +001b06f0: 6e20 746f 202f 7661 722f 6c6f 672f 6175  n to /var/log/au
│ │ │ +001b0700: 6469 743a 2049 6620 2f76 6172 2f6c 6f67  dit: If /var/log
│ │ │ +001b0710: 2f61 7564 6974 206e 6f74 206d 6f75 6e74  /audit not mount
│ │ │ +001b0720: 6564 2c20 6372 6166 740a 2020 2020 6d6f  ed, craft.    mo
│ │ │ +001b0730: 756e 745f 696e 666f 206d 616e 7561 6c6c  unt_info manuall
│ │ │ +001b0740: 7927 0a20 2073 6574 5f66 6163 743a 0a20  y'.  set_fact:. 
│ │ │ +001b0750: 2020 206d 6f75 6e74 5f69 6e66 6f3a 2027     mount_info: '
│ │ │ +001b0760: 7b7b 206d 6f75 6e74 5f69 6e66 6f7c 6465  {{ mount_info|de
│ │ │ +001b0770: 6661 756c 7428 7b7d 297c 636f 6d62 696e  fault({})|combin
│ │ │ +001b0780: 6528 7b69 7465 6d2e 303a 2069 7465 6d2e  e({item.0: item.
│ │ │ +001b0790: 317d 2920 7d7d 270a 2020 7769 7468 5f74  1}) }}'.  with_t
│ │ │ +001b07a0: 6f67 6574 6865 723a 0a20 202d 202d 2074  ogether:.  - - t
│ │ │ +001b07b0: 6172 6765 740a 2020 2020 2d20 736f 7572  arget.    - sour
│ │ │ +001b07c0: 6365 0a20 2020 202d 2066 7374 7970 650a  ce.    - fstype.
│ │ │ +001b07d0: 2020 2020 2d20 6f70 7469 6f6e 730a 2020      - options.  
│ │ │ +001b07e0: 2d20 2d20 2f76 6172 2f6c 6f67 2f61 7564  - - /var/log/aud
│ │ │ +001b07f0: 6974 0a20 2020 202d 2027 270a 2020 2020  it.    - ''.    
│ │ │ +001b0800: 2d20 2727 0a20 2020 202d 2064 6566 6175  - ''.    - defau
│ │ │ +001b0810: 6c74 730a 2020 7768 656e 3a0a 2020 2d20  lts.  when:.  - 
│ │ │ +001b0820: 2820 6e6f 7420 2820 226b 6572 6e65 6c22  ( not ( "kernel"
│ │ │ +001b0830: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001b0840: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ +001b0850: 626f 6f74 6322 2069 6e20 616e 7369 626c  bootc" in ansibl
│ │ │ +001b0860: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +001b0870: 0a20 2020 2061 6e64 206e 6f74 2022 6f70  .    and not "op
│ │ │ +001b0880: 656e 7368 6966 742d 6b75 6265 6c65 7422  enshift-kubelet"
│ │ │ +001b0890: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001b08a0: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ +001b08b0: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ +001b08c0: 6c65 5f70 726f 635f 636d 646c 696e 650a  le_proc_cmdline.
│ │ │ +001b08d0: 2020 2020 2920 616e 6420 6e6f 7420 2820      ) and not ( 
│ │ │ +001b08e0: 616e 7369 626c 655f 7669 7274 7561 6c69  ansible_virtuali
│ │ │ +001b08f0: 7a61 7469 6f6e 5f74 7970 6520 696e 205b  zation_type in [
│ │ │ +001b0900: 2264 6f63 6b65 7222 2c20 226c 7863 222c  "docker", "lxc",
│ │ │ +001b0910: 2022 6f70 656e 767a 222c 2022 706f 646d   "openvz", "podm
│ │ │ +001b0920: 616e 222c 0a20 2020 2022 636f 6e74 6169  an",.    "contai
│ │ │ +001b0930: 6e65 7222 5d20 2920 290a 2020 2d20 2722  ner"] ) ).  - '"
│ │ │ +001b0940: 2f76 6172 2f6c 6f67 2f61 7564 6974 2220  /var/log/audit" 
│ │ │ +001b0950: 696e 2061 6e73 6962 6c65 5f6d 6f75 6e74  in ansible_mount
│ │ │ +001b0960: 7320 7c20 6d61 7028 6174 7472 6962 7574  s | map(attribut
│ │ │ +001b0970: 653d 226d 6f75 6e74 2229 207c 206c 6973  e="mount") | lis
│ │ │ +001b0980: 7427 0a20 202d 2028 222d 2d66 7374 6162  t'.  - ("--fstab
│ │ │ +001b0990: 2220 7c20 6c65 6e67 7468 203d 3d20 3029  " | length == 0)
│ │ │ +001b09a0: 0a20 202d 2064 6576 6963 655f 6e61 6d65  .  - device_name
│ │ │ +001b09b0: 2e73 7464 6f75 7420 6973 2064 6566 696e  .stdout is defin
│ │ │ +001b09c0: 6564 2061 6e64 2064 6576 6963 655f 6e61  ed and device_na
│ │ │ +001b09d0: 6d65 2e73 7464 6f75 745f 6c69 6e65 7320  me.stdout_lines 
│ │ │ +001b09e0: 6973 2064 6566 696e 6564 0a20 202d 2028  is defined.  - (
│ │ │ +001b09f0: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ +001b0a00: 7574 207c 206c 656e 6774 6820 3d3d 2030  ut | length == 0
│ │ │ +001b0a10: 290a 2020 7461 6773 3a0a 2020 2d20 4e49  ).  tags:.  - NI
│ │ │ +001b0a20: 5354 2d38 3030 2d35 332d 4143 2d36 0a20  ST-800-53-AC-6. 
│ │ │ +001b0a30: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ +001b0a40: 432d 3628 3129 0a20 202d 204e 4953 542d  C-6(1).  - NIST-
│ │ │ +001b0a50: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ +001b0a60: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +001b0a70: 4d2d 3728 6129 0a20 202d 204e 4953 542d  M-7(a).  - NIST-
│ │ │ +001b0a80: 3830 302d 3533 2d43 4d2d 3728 6229 0a20  800-53-CM-7(b). 
│ │ │ +001b0a90: 202d 204e 4953 542d 3830 302d 3533 2d4d   - NIST-800-53-M
│ │ │ +001b0aa0: 502d 370a 2020 2d20 636f 6e66 6967 7572  P-7.  - configur
│ │ │ +001b0ab0: 655f 7374 7261 7465 6779 0a20 202d 2068  e_strategy.  - h
│ │ │ +001b0ac0: 6967 685f 6469 7372 7570 7469 6f6e 0a20  igh_disruption. 
│ │ │ +001b0ad0: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ +001b0ae0: 790a 2020 2d20 6d65 6469 756d 5f73 6576  y.  - medium_sev
│ │ │ +001b0af0: 6572 6974 790a 2020 2d20 6d6f 756e 745f  erity.  - mount_
│ │ │ +001b0b00: 6f70 7469 6f6e 5f76 6172 5f6c 6f67 5f61  option_var_log_a
│ │ │ +001b0b10: 7564 6974 5f6e 6f73 7569 640a 2020 2d20  udit_nosuid.  - 
│ │ │ +001b0b20: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ +001b0b30: 0a0a 2d20 6e61 6d65 3a20 2741 6464 206e  ..- name: 'Add n
│ │ │ +001b0b40: 6f73 7569 6420 4f70 7469 6f6e 2074 6f20  osuid Option to 
│ │ │ +001b0b50: 2f76 6172 2f6c 6f67 2f61 7564 6974 3a20  /var/log/audit: 
│ │ │ +001b0b60: 4d61 6b65 2073 7572 6520 6e6f 7375 6964  Make sure nosuid
│ │ │ +001b0b70: 206f 7074 696f 6e20 6973 2070 6172 7420   option is part 
│ │ │ +001b0b80: 6f66 2074 6865 0a20 2020 2074 6f20 2f76  of the.    to /v
│ │ │ +001b0b90: 6172 2f6c 6f67 2f61 7564 6974 206f 7074  ar/log/audit opt
│ │ │ +001b0ba0: 696f 6e73 270a 2020 7365 745f 6661 6374  ions'.  set_fact
│ │ │ +001b0bb0: 3a0a 2020 2020 6d6f 756e 745f 696e 666f  :.    mount_info
│ │ │ +001b0bc0: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ +001b0bd0: 207c 2063 6f6d 6269 6e65 2820 7b27 276f   | combine( {''o
│ │ │ +001b0be0: 7074 696f 6e73 2727 3a27 2727 277e 286d  ptions'':''''~(m
│ │ │ +001b0bf0: 6f75 6e74 5f69 6e66 6f2e 6f70 7469 6f6e  ount_info.option
│ │ │ +001b0c00: 7320 7c0a 2020 2020 2020 6465 6661 756c  s |.      defaul
│ │ │ +001b0c10: 7428 2727 2727 2929 7e28 2727 2c27 2720  t(''''))~('','' 
│ │ │ +001b0c20: 6966 2028 6d6f 756e 745f 696e 666f 2e6f  if (mount_info.o
│ │ │ +001b0c30: 7074 696f 6e73 207c 2064 6566 6175 6c74  ptions | default
│ │ │ +001b0c40: 2827 2727 2729 2920 656c 7365 2027 2727  ('''')) else '''
│ │ │ +001b0c50: 2729 7e27 276e 6f73 7569 6427 270a 2020  ')~''nosuid''.  
│ │ │ +001b0c60: 2020 2020 7d29 207d 7d27 0a20 2077 6865      }) }}'.  whe
│ │ │ +001b0c70: 6e3a 0a20 202d 2028 206e 6f74 2028 2022  n:.  - ( not ( "
│ │ │ +001b0c80: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ +001b0c90: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001b0ca0: 7320 616e 6420 2262 6f6f 7463 2220 696e  s and "bootc" in
│ │ │ +001b0cb0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001b0cc0: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ +001b0cd0: 6e6f 7420 226f 7065 6e73 6869 6674 2d6b  not "openshift-k
│ │ │ +001b0ce0: 7562 656c 6574 2220 696e 2061 6e73 6962  ubelet" in ansib
│ │ │ +001b0cf0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001b0d00: 7320 616e 6420 226f 7374 7265 6522 2069  s and "ostree" i
│ │ │ +001b0d10: 6e20 616e 7369 626c 655f 7072 6f63 5f63  n ansible_proc_c
│ │ │ +001b0d20: 6d64 6c69 6e65 0a20 2020 2029 2061 6e64  mdline.    ) and
│ │ │ +001b0d30: 206e 6f74 2028 2061 6e73 6962 6c65 5f76   not ( ansible_v
│ │ │ +001b0d40: 6972 7475 616c 697a 6174 696f 6e5f 7479  irtualization_ty
│ │ │ +001b0d50: 7065 2069 6e20 5b22 646f 636b 6572 222c  pe in ["docker",
│ │ │ +001b0d60: 2022 6c78 6322 2c20 226f 7065 6e76 7a22   "lxc", "openvz"
│ │ │ +001b0d70: 2c20 2270 6f64 6d61 6e22 2c0a 2020 2020  , "podman",.    
│ │ │ +001b0d80: 2263 6f6e 7461 696e 6572 225d 2029 2029  "container"] ) )
│ │ │ +001b0d90: 0a20 202d 2027 222f 7661 722f 6c6f 672f  .  - '"/var/log/
│ │ │ +001b0da0: 6175 6469 7422 2069 6e20 616e 7369 626c  audit" in ansibl
│ │ │ +001b0db0: 655f 6d6f 756e 7473 207c 206d 6170 2861  e_mounts | map(a
│ │ │ +001b0dc0: 7474 7269 6275 7465 3d22 6d6f 756e 7422  ttribute="mount"
│ │ │ +001b0dd0: 2920 7c20 6c69 7374 270a 2020 2d20 6d6f  ) | list'.  - mo
│ │ │ +001b0de0: 756e 745f 696e 666f 2069 7320 6465 6669  unt_info is defi
│ │ │ +001b0df0: 6e65 6420 616e 6420 226e 6f73 7569 6422  ned and "nosuid"
│ │ │ +001b0e00: 206e 6f74 2069 6e20 286d 6f75 6e74 5f69   not in (mount_i
│ │ │ +001b0e10: 6e66 6f2e 6f70 7469 6f6e 7320 7c20 6465  nfo.options | de
│ │ │ +001b0e20: 6661 756c 7428 2727 2929 0a20 2074 6167  fault('')).  tag
│ │ │ +001b0e30: 733a 0a20 202d 204e 4953 542d 3830 302d  s:.  - NIST-800-
│ │ │ +001b0e40: 3533 2d41 432d 360a 2020 2d20 4e49 5354  53-AC-6.  - NIST
│ │ │ +001b0e50: 2d38 3030 2d35 332d 4143 2d36 2831 290a  -800-53-AC-6(1).
│ │ │ +001b0e60: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001b0e70: 434d 2d36 2861 290a 2020 2d20 4e49 5354  CM-6(a).  - NIST
│ │ │ +001b0e80: 2d38 3030 2d35 332d 434d 2d37 2861 290a  -800-53-CM-7(a).
│ │ │ +001b0e90: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001b0ea0: 434d 2d37 2862 290a 2020 2d20 4e49 5354  CM-7(b).  - NIST
│ │ │ +001b0eb0: 2d38 3030 2d35 332d 4d50 2d37 0a20 202d  -800-53-MP-7.  -
│ │ │ +001b0ec0: 2063 6f6e 6669 6775 7265 5f73 7472 6174   configure_strat
│ │ │ +001b0ed0: 6567 790a 2020 2d20 6869 6768 5f64 6973  egy.  - high_dis
│ │ │ +001b0ee0: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f  ruption.  - low_
│ │ │ +001b0ef0: 636f 6d70 6c65 7869 7479 0a20 202d 206d  complexity.  - m
│ │ │ +001b0f00: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ +001b0f10: 202d 206d 6f75 6e74 5f6f 7074 696f 6e5f   - mount_option_
│ │ │ +001b0f20: 7661 725f 6c6f 675f 6175 6469 745f 6e6f  var_log_audit_no
│ │ │ +001b0f30: 7375 6964 0a20 202d 206e 6f5f 7265 626f  suid.  - no_rebo
│ │ │ +001b0f40: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d  ot_needed..- nam
│ │ │ +001b0f50: 653a 2027 4164 6420 6e6f 7375 6964 204f  e: 'Add nosuid O
│ │ │ +001b0f60: 7074 696f 6e20 746f 202f 7661 722f 6c6f  ption to /var/lo
│ │ │ +001b0f70: 672f 6175 6469 743a 2045 6e73 7572 6520  g/audit: Ensure 
│ │ │ +001b0f80: 2f76 6172 2f6c 6f67 2f61 7564 6974 2069  /var/log/audit i
│ │ │ +001b0f90: 7320 6d6f 756e 7465 6420 7769 7468 0a20  s mounted with. 
│ │ │ +001b0fa0: 2020 206e 6f73 7569 6420 6f70 7469 6f6e     nosuid option
│ │ │ +001b0fb0: 270a 2020 616e 7369 626c 652e 706f 7369  '.  ansible.posi
│ │ │ +001b0fc0: 782e 6d6f 756e 743a 0a20 2020 2070 6174  x.mount:.    pat
│ │ │ +001b0fd0: 683a 202f 7661 722f 6c6f 672f 6175 6469  h: /var/log/audi
│ │ │ +001b0fe0: 740a 2020 2020 7372 633a 2027 7b7b 206d  t.    src: '{{ m
│ │ │ +001b0ff0: 6f75 6e74 5f69 6e66 6f2e 736f 7572 6365  ount_info.source
│ │ │ +001b1000: 207c 2064 6566 6175 6c74 2827 2727 2729   | default('''')
│ │ │ +001b1010: 207d 7d27 0a20 2020 206f 7074 733a 2027   }}'.    opts: '
│ │ │ +001b1020: 7b7b 206d 6f75 6e74 5f69 6e66 6f2e 6f70  {{ mount_info.op
│ │ │ +001b1030: 7469 6f6e 7320 7c20 6465 6661 756c 7428  tions | default(
│ │ │ +001b1040: 2727 2727 2920 7d7d 270a 2020 2020 7374  '''') }}'.    st
│ │ │ +001b1050: 6174 653a 206d 6f75 6e74 6564 0a20 2020  ate: mounted.   
│ │ │ +001b1060: 2066 7374 7970 653a 2027 7b7b 206d 6f75   fstype: '{{ mou
│ │ │ +001b1070: 6e74 5f69 6e66 6f2e 6673 7479 7065 207c  nt_info.fstype |
│ │ │ +001b1080: 2064 6566 6175 6c74 2827 2727 2729 207d   default('''') }
│ │ │ +001b1090: 7d27 0a20 2072 6567 6973 7465 723a 206d  }'.  register: m
│ │ │ +001b10a0: 6f75 6e74 5f72 6573 756c 740a 2020 6661  ount_result.  fa
│ │ │ +001b10b0: 696c 6564 5f77 6865 6e3a 0a20 202d 206d  iled_when:.  - m
│ │ │ +001b10c0: 6f75 6e74 5f72 6573 756c 7420 6973 2066  ount_result is f
│ │ │ +001b10d0: 6169 6c65 640a 2020 2d20 2727 2774 6172  ailed.  - '''tar
│ │ │ +001b10e0: 6765 7420 6973 2062 7573 7927 2720 6e6f  get is busy'' no
│ │ │ +001b10f0: 7420 696e 2028 6d6f 756e 745f 7265 7375  t in (mount_resu
│ │ │ +001b1100: 6c74 2e6d 7367 207c 2064 6566 6175 6c74  lt.msg | default
│ │ │ +001b1110: 2827 2727 2729 2927 0a20 202d 2027 2727  (''''))'.  - '''
│ │ │ +001b1120: 616c 7265 6164 7920 6d6f 756e 7465 6427  already mounted'
│ │ │ +001b1130: 2720 6e6f 7420 696e 2028 6d6f 756e 745f  ' not in (mount_
│ │ │ +001b1140: 7265 7375 6c74 2e6d 7367 207c 2064 6566  result.msg | def
│ │ │ +001b1150: 6175 6c74 2827 2727 2729 2927 0a20 2077  ault(''''))'.  w
│ │ │ +001b1160: 6865 6e3a 0a20 202d 2028 206e 6f74 2028  hen:.  - ( not (
│ │ │ +001b1170: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ +001b1180: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001b1190: 6765 7320 616e 6420 2262 6f6f 7463 2220  ges and "bootc" 
│ │ │ +001b11a0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001b11b0: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ +001b11c0: 6420 6e6f 7420 226f 7065 6e73 6869 6674  d not "openshift
│ │ │ +001b11d0: 2d6b 7562 656c 6574 2220 696e 2061 6e73  -kubelet" in ans
│ │ │ +001b11e0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001b11f0: 6765 7320 616e 6420 226f 7374 7265 6522  ges and "ostree"
│ │ │ +001b1200: 2069 6e20 616e 7369 626c 655f 7072 6f63   in ansible_proc
│ │ │ +001b1210: 5f63 6d64 6c69 6e65 0a20 2020 2029 2061  _cmdline.    ) a
│ │ │ +001b1220: 6e64 206e 6f74 2028 2061 6e73 6962 6c65  nd not ( ansible
│ │ │ +001b1230: 5f76 6972 7475 616c 697a 6174 696f 6e5f  _virtualization_
│ │ │ +001b1240: 7479 7065 2069 6e20 5b22 646f 636b 6572  type in ["docker
│ │ │ +001b1250: 222c 2022 6c78 6322 2c20 226f 7065 6e76  ", "lxc", "openv
│ │ │ +001b1260: 7a22 2c20 2270 6f64 6d61 6e22 2c0a 2020  z", "podman",.  
│ │ │ +001b1270: 2020 2263 6f6e 7461 696e 6572 225d 2029    "container"] )
│ │ │ +001b1280: 2029 0a20 202d 2027 222f 7661 722f 6c6f   ).  - '"/var/lo
│ │ │ +001b1290: 672f 6175 6469 7422 2069 6e20 616e 7369  g/audit" in ansi
│ │ │ +001b12a0: 626c 655f 6d6f 756e 7473 207c 206d 6170  ble_mounts | map
│ │ │ +001b12b0: 2861 7474 7269 6275 7465 3d22 6d6f 756e  (attribute="moun
│ │ │ +001b12c0: 7422 2920 7c20 6c69 7374 270a 2020 2d20  t") | list'.  - 
│ │ │ +001b12d0: 6d6f 756e 745f 696e 666f 2069 7320 6465  mount_info is de
│ │ │ +001b12e0: 6669 6e65 640a 2020 2d20 2864 6576 6963  fined.  - (devic
│ │ │ +001b12f0: 655f 6e61 6d65 2e73 7464 6f75 7420 6973  e_name.stdout is
│ │ │ +001b1300: 2064 6566 696e 6564 2061 6e64 2028 6465   defined and (de
│ │ │ +001b1310: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ +001b1320: 207c 206c 656e 6774 6820 2667 743b 2030   | length > 0
│ │ │ +001b1330: 2929 206f 7220 2822 2d2d 6673 7461 6222  )) or ("--fstab"
│ │ │ +001b1340: 0a20 2020 207c 206c 656e 6774 6820 3d3d  .    | length ==
│ │ │ +001b1350: 2030 290a 2020 7461 6773 3a0a 2020 2d20   0).  tags:.  - 
│ │ │ +001b1360: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ +001b1370: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001b1380: 2d41 432d 3628 3129 0a20 202d 204e 4953  -AC-6(1).  - NIS
│ │ │ +001b1390: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ +001b13a0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001b13b0: 2d43 4d2d 3728 6129 0a20 202d 204e 4953  -CM-7(a).  - NIS
│ │ │ +001b13c0: 542d 3830 302d 3533 2d43 4d2d 3728 6229  T-800-53-CM-7(b)
│ │ │ +001b13d0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001b13e0: 2d4d 502d 370a 2020 2d20 636f 6e66 6967  -MP-7.  - config
│ │ │ +001b13f0: 7572 655f 7374 7261 7465 6779 0a20 202d  ure_strategy.  -
│ │ │ +001b1400: 2068 6967 685f 6469 7372 7570 7469 6f6e   high_disruption
│ │ │ +001b1410: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ +001b1420: 6974 790a 2020 2d20 6d65 6469 756d 5f73  ity.  - medium_s
│ │ │ +001b1430: 6576 6572 6974 790a 2020 2d20 6d6f 756e  everity.  - moun
│ │ │ +001b1440: 745f 6f70 7469 6f6e 5f76 6172 5f6c 6f67  t_option_var_log
│ │ │ +001b1450: 5f61 7564 6974 5f6e 6f73 7569 640a 2020  _audit_nosuid.  
│ │ │ +001b1460: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ +001b1470: 6564 0a3c 2f63 6f64 653e 3c2f 7072 653e  ed.
│ │ │ +001b1480: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation S │ │ │ +001b1530: 6865 6c6c 2073 6372 6970 7420 e287 b23c hell script ...< │ │ │ +001b1540: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
│ │ │ +001b15e0: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Reboot:false
# Remediation
│ │ │ +001b1600: 2069 7320 6170 706c 6963 6162 6c65 206f   is applicable o
│ │ │ +001b1610: 6e6c 7920 696e 2063 6572 7461 696e 2070  nly in certain p
│ │ │ +001b1620: 6c61 7466 6f72 6d73 0a69 6620 2820 2120  latforms.if ( ! 
│ │ │ +001b1630: 2820 7b20 7270 6d20 2d2d 7175 6965 7420  ( { rpm --quiet 
│ │ │ +001b1640: 2d71 206b 6572 6e65 6c20 3b7d 2026 616d  -q kernel ;} &am
│ │ │ +001b1650: 703b 2661 6d70 3b20 7b20 7270 6d20 2d2d  p;& { rpm --
│ │ │ +001b1660: 7175 6965 7420 2d71 2062 6f6f 7463 203b  quiet -q bootc ;
│ │ │ +001b1670: 7d20 2661 6d70 3b26 616d 703b 207b 2021  } && { !
│ │ │ +001b1680: 2072 706d 202d 2d71 7569 6574 202d 7120   rpm --quiet -q 
│ │ │ +001b1690: 6f70 656e 7368 6966 742d 6b75 6265 6c65  openshift-kubele
│ │ │ +001b16a0: 7420 3b7d 2026 616d 703b 2661 6d70 3b20  t ;} && 
│ │ │ +001b16b0: 285b 202d 6620 2f72 756e 2f6f 7374 7265  ([ -f /run/ostre
│ │ │ +001b16c0: 652d 626f 6f74 6564 205d 207c 7c20 5b20  e-booted ] || [ 
│ │ │ +001b16d0: 2d4c 202f 6f73 7472 6565 205d 2920 2920  -L /ostree ]) ) 
│ │ │ +001b16e0: 2661 6d70 3b26 616d 703b 2021 2028 205b  && ! ( [
│ │ │ +001b16f0: 202d 6620 2f2e 646f 636b 6572 656e 7620   -f /.dockerenv 
│ │ │ +001b1700: 5d20 7c7c 205b 202d 6620 2f72 756e 2f2e  ] || [ -f /run/.
│ │ │ +001b1710: 636f 6e74 6169 6e65 7265 6e76 205d 2029  containerenv ] )
│ │ │ +001b1720: 2029 2026 616d 703b 2661 6d70 3b20 7b20   ) && { 
│ │ │ +001b1730: 2820 6669 6e64 6d6e 7420 2d2d 6b65 726e  ( findmnt --kern
│ │ │ +001b1740: 656c 2022 2f76 6172 2f6c 6f67 2f61 7564  el "/var/log/aud
│ │ │ +001b1750: 6974 2220 2667 743b 202f 6465 762f 6e75  it" > /dev/nu
│ │ │ +001b1760: 6c6c 207c 7c20 6669 6e64 6d6e 7420 2d2d  ll || findmnt --
│ │ │ +001b1770: 6673 7461 6220 222f 7661 722f 6c6f 672f  fstab "/var/log/
│ │ │ +001b1780: 6175 6469 7422 2026 6774 3b20 2f64 6576  audit" > /dev
│ │ │ +001b1790: 2f6e 756c 6c20 293b 207d 3b20 7468 656e  /null ); }; then
│ │ │ +001b17a0: 0a0a 6675 6e63 7469 6f6e 2070 6572 666f  ..function perfo
│ │ │ +001b17b0: 726d 5f72 656d 6564 6961 7469 6f6e 207b  rm_remediation {
│ │ │ +001b17c0: 0a0a 2020 2020 0a20 2020 2020 2020 2023  ..    .        #
│ │ │ +001b17d0: 2074 6865 206d 6f75 6e74 2070 6f69 6e74   the mount point
│ │ │ +001b17e0: 202f 7661 722f 6c6f 672f 6175 6469 7420   /var/log/audit 
│ │ │ +001b17f0: 6861 7320 746f 2062 6520 6465 6669 6e65  has to be define
│ │ │ +001b1800: 6420 696e 202f 6574 632f 6673 7461 620a  d in /etc/fstab.
│ │ │ +001b1810: 2020 2020 2020 2020 2320 6265 666f 7265          # before
│ │ │ +001b1820: 2074 6869 7320 7265 6d65 6469 6174 696f   this remediatio
│ │ │ +001b1830: 6e20 6361 6e20 6265 2065 7865 6375 7465  n can be execute
│ │ │ +001b1840: 642e 2049 6e20 6361 7365 2069 7420 6973  d. In case it is
│ │ │ +001b1850: 206e 6f74 2064 6566 696e 6564 2c20 7468   not defined, th
│ │ │ +001b1860: 650a 2020 2020 2020 2020 2320 7265 6d65  e.        # reme
│ │ │ +001b1870: 6469 6174 696f 6e20 6162 6f72 7473 2061  diation aborts a
│ │ │ +001b1880: 6e64 206e 6f20 6368 616e 6765 7320 7265  nd no changes re
│ │ │ +001b1890: 6761 7264 696e 6720 7468 6520 6d6f 756e  garding the moun
│ │ │ +001b18a0: 7420 706f 696e 7420 6172 6520 646f 6e65  t point are done
│ │ │ +001b18b0: 2e0a 2020 2020 2020 2020 6d6f 756e 745f  ..        mount_
│ │ │ +001b18c0: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ +001b18d0: 7870 3d22 2428 7072 696e 7466 2022 5e5b  xp="$(printf "^[
│ │ │ +001b18e0: 5b3a 7370 6163 653a 5d5d 2a5b 5e23 5d2e  [:space:]]*[^#].
│ │ │ +001b18f0: 2a5b 5b3a 7370 6163 653a 5d5d 2573 5b5b  *[[:space:]]%s[[
│ │ │ +001b1900: 3a73 7061 6365 3a5d 5d22 2022 2f76 6172  :space:]]" "/var
│ │ │ +001b1910: 2f6c 6f67 2f61 7564 6974 2229 220a 0a20  /log/audit")".. 
│ │ │ +001b1920: 2020 2067 7265 7020 2224 6d6f 756e 745f     grep "$mount_
│ │ │ +001b1930: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ +001b1940: 7870 2220 2d71 202f 6574 632f 6673 7461  xp" -q /etc/fsta
│ │ │ +001b1950: 6220 5c0a 2020 2020 2020 2020 7c7c 207b  b \.        || {
│ │ │ +001b1960: 2065 6368 6f20 2254 6865 206d 6f75 6e74   echo "The mount
│ │ │ +001b1970: 2070 6f69 6e74 2027 2f76 6172 2f6c 6f67   point '/var/log
│ │ │ +001b1980: 2f61 7564 6974 2720 6973 206e 6f74 2065  /audit' is not e
│ │ │ +001b1990: 7665 6e20 696e 202f 6574 632f 6673 7461  ven in /etc/fsta
│ │ │ +001b19a0: 622c 2073 6f20 7765 2063 616e 2774 2073  b, so we can't s
│ │ │ +001b19b0: 6574 2075 7020 6d6f 756e 7420 6f70 7469  et up mount opti
│ │ │ +001b19c0: 6f6e 7322 2026 6774 3b26 616d 703b 323b  ons" >&2;
│ │ │ +001b19d0: 0a20 2020 2020 2020 2020 2020 2020 2020  .               
│ │ │ +001b19e0: 2065 6368 6f20 224e 6f74 2072 656d 6564   echo "Not remed
│ │ │ +001b19f0: 6961 7469 6e67 2c20 6265 6361 7573 6520  iating, because 
│ │ │ +001b1a00: 7468 6572 6520 6973 206e 6f20 7265 636f  there is no reco
│ │ │ +001b1a10: 7264 206f 6620 2f76 6172 2f6c 6f67 2f61  rd of /var/log/a
│ │ │ +001b1a20: 7564 6974 2069 6e20 2f65 7463 2f66 7374  udit in /etc/fst
│ │ │ +001b1a30: 6162 2220 2667 743b 2661 6d70 3b32 3b20  ab" >&2; 
│ │ │ +001b1a40: 7265 7475 726e 2031 3b20 7d0a 2020 2020  return 1; }.    
│ │ │ +001b1a50: 0a0a 0a20 2020 206d 6f75 6e74 5f70 6f69  ...    mount_poi
│ │ │ +001b1a60: 6e74 5f6d 6174 6368 5f72 6567 6578 703d  nt_match_regexp=
│ │ │ +001b1a70: 2224 2870 7269 6e74 6620 225e 5b5b 3a73  "$(printf "^[[:s
│ │ │ +001b1a80: 7061 6365 3a5d 5d2a 5b5e 235d 2e2a 5b5b  pace:]]*[^#].*[[
│ │ │ +001b1a90: 3a73 7061 6365 3a5d 5d25 735b 5b3a 7370  :space:]]%s[[:sp
│ │ │ +001b1aa0: 6163 653a 5d5d 2220 2f76 6172 2f6c 6f67  ace:]]" /var/log
│ │ │ +001b1ab0: 2f61 7564 6974 2922 0a0a 2020 2020 2320  /audit)"..    # 
│ │ │ +001b1ac0: 4966 2074 6865 206d 6f75 6e74 2070 6f69  If the mount poi
│ │ │ +001b1ad0: 6e74 2069 7320 6e6f 7420 696e 202f 6574  nt is not in /et
│ │ │ +001b1ae0: 632f 6673 7461 622c 2067 6574 2070 7265  c/fstab, get pre
│ │ │ +001b1af0: 7669 6f75 7320 6d6f 756e 7420 6f70 7469  vious mount opti
│ │ │ +001b1b00: 6f6e 7320 6672 6f6d 202f 6574 632f 6d74  ons from /etc/mt
│ │ │ +001b1b10: 6162 0a20 2020 2069 6620 2120 6772 6570  ab.    if ! grep
│ │ │ +001b1b20: 202d 7120 2224 6d6f 756e 745f 706f 696e   -q "$mount_poin
│ │ │ +001b1b30: 745f 6d61 7463 685f 7265 6765 7870 2220  t_match_regexp" 
│ │ │ +001b1b40: 2f65 7463 2f66 7374 6162 3b20 7468 656e  /etc/fstab; then
│ │ │ +001b1b50: 0a20 2020 2020 2020 2023 2072 756e 7469  .        # runti
│ │ │ +001b1b60: 6d65 206f 7074 7320 7769 7468 6f75 7420  me opts without 
│ │ │ +001b1b70: 736f 6d65 2061 7574 6f6d 6174 6963 206b  some automatic k
│ │ │ +001b1b80: 6572 6e65 6c2f 7573 6572 7370 6163 652d  ernel/userspace-
│ │ │ +001b1b90: 6164 6465 6420 6465 6661 756c 7473 0a20  added defaults. 
│ │ │ +001b1ba0: 2020 2020 2020 2070 7265 7669 6f75 735f         previous_
│ │ │ +001b1bb0: 6d6f 756e 745f 6f70 7473 3d24 2867 7265  mount_opts=$(gre
│ │ │ +001b1bc0: 7020 2224 6d6f 756e 745f 706f 696e 745f  p "$mount_point_
│ │ │ +001b1bd0: 6d61 7463 685f 7265 6765 7870 2220 2f65  match_regexp" /e
│ │ │ +001b1be0: 7463 2f6d 7461 6220 7c20 6865 6164 202d  tc/mtab | head -
│ │ │ +001b1bf0: 3120 7c20 2061 776b 2027 7b70 7269 6e74  1 |  awk '{print
│ │ │ +001b1c00: 2024 347d 2720 5c0a 2020 2020 2020 2020   $4}' \.        
│ │ │ +001b1c10: 2020 2020 2020 2020 2020 2020 7c20 7365              | se
│ │ │ +001b1c20: 6420 2d45 2022 732f 2872 777c 6465 6661  d -E "s/(rw|defa
│ │ │ +001b1c30: 756c 7473 7c73 6563 6c61 6265 6c7c 6e6f  ults|seclabel|no
│ │ │ +001b1c40: 7375 6964 2928 2c7c 2429 2f2f 673b 732f  suid)(,|$)//g;s/
│ │ │ +001b1c50: 2c24 2f2f 2229 0a20 2020 2020 2020 205b  ,$//").        [
│ │ │ +001b1c60: 2022 2470 7265 7669 6f75 735f 6d6f 756e   "$previous_moun
│ │ │ +001b1c70: 745f 6f70 7473 2220 5d20 2661 6d70 3b26  t_opts" ] &&
│ │ │ +001b1c80: 616d 703b 2070 7265 7669 6f75 735f 6d6f  amp; previous_mo
│ │ │ +001b1c90: 756e 745f 6f70 7473 2b3d 222c 220a 2020  unt_opts+=",".  
│ │ │ +001b1ca0: 2020 2020 2020 2320 496e 2069 736f 3936        # In iso96
│ │ │ +001b1cb0: 3630 2066 696c 6573 7973 7465 6d73 206d  60 filesystems m
│ │ │ +001b1cc0: 7461 6220 636f 756c 6420 6465 7363 7269  tab could descri
│ │ │ +001b1cd0: 6265 2061 2022 626c 6f63 6b73 697a 6522  be a "blocksize"
│ │ │ +001b1ce0: 2076 616c 7565 2c20 7468 6973 2073 686f   value, this sho
│ │ │ +001b1cf0: 756c 6420 6265 2072 6566 6c65 6374 6564  uld be reflected
│ │ │ +001b1d00: 2069 6e0a 2020 2020 2020 2020 2320 6673   in.        # fs
│ │ │ +001b1d10: 7461 6220 6173 2022 626c 6f63 6b22 2e20  tab as "block". 
│ │ │ +001b1d20: 2054 6865 206e 6578 7420 7661 7269 6162   The next variab
│ │ │ +001b1d30: 6c65 2069 7320 746f 2073 6174 6973 6679  le is to satisfy
│ │ │ +001b1d40: 2073 6865 6c6c 6368 6563 6b20 5343 3230   shellcheck SC20
│ │ │ +001b1d50: 3530 2e0a 2020 2020 2020 2020 6673 5f74  50..        fs_t
│ │ │ +001b1d60: 7970 653d 2222 0a20 2020 2020 2020 2069  ype="".        i
│ │ │ +001b1d70: 6620 5b20 2022 2466 735f 7479 7065 2220  f [  "$fs_type" 
│ │ │ +001b1d80: 3d3d 2022 6973 6f39 3636 3022 205d 203b  == "iso9660" ] ;
│ │ │ +001b1d90: 2074 6865 6e0a 2020 2020 2020 2020 2020   then.          
│ │ │ +001b1da0: 2020 7072 6576 696f 7573 5f6d 6f75 6e74    previous_mount
│ │ │ +001b1db0: 5f6f 7074 733d 2428 7365 6420 2773 2f62  _opts=$(sed 's/b
│ │ │ +001b1dc0: 6c6f 636b 7369 7a65 3d2f 626c 6f63 6b3d  locksize=/block=
│ │ │ +001b1dd0: 2f27 2026 6c74 3b26 6c74 3b26 6c74 3b20  /' <<< 
│ │ │ +001b1de0: 2224 7072 6576 696f 7573 5f6d 6f75 6e74  "$previous_mount
│ │ │ +001b1df0: 5f6f 7074 7322 290a 2020 2020 2020 2020  _opts").        
│ │ │ +001b1e00: 6669 0a20 2020 2020 2020 2065 6368 6f20  fi.        echo 
│ │ │ +001b1e10: 2220 2f76 6172 2f6c 6f67 2f61 7564 6974  " /var/log/audit
│ │ │ +001b1e20: 2020 6465 6661 756c 7473 2c24 7b70 7265    defaults,${pre
│ │ │ +001b1e30: 7669 6f75 735f 6d6f 756e 745f 6f70 7473  vious_mount_opts
│ │ │ +001b1e40: 7d6e 6f73 7569 6420 3020 3022 2026 6774  }nosuid 0 0" >
│ │ │ +001b1e50: 3b26 6774 3b20 2f65 7463 2f66 7374 6162  ;> /etc/fstab
│ │ │ +001b1e60: 0a20 2020 2023 2049 6620 7468 6520 6d6f  .    # If the mo
│ │ │ +001b1e70: 756e 745f 6f70 7420 6f70 7469 6f6e 2069  unt_opt option i
│ │ │ +001b1e80: 7320 6e6f 7420 616c 7265 6164 7920 696e  s not already in
│ │ │ +001b1e90: 2074 6865 206d 6f75 6e74 2070 6f69 6e74   the mount point
│ │ │ +001b1ea0: 2773 202f 6574 632f 6673 7461 6220 656e  's /etc/fstab en
│ │ │ +001b1eb0: 7472 792c 2061 6464 2069 740a 2020 2020  try, add it.    
│ │ │ +001b1ec0: 656c 6966 2021 2067 7265 7020 2224 6d6f  elif ! grep "$mo
│ │ │ +001b1ed0: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ +001b1ee0: 7265 6765 7870 2220 2f65 7463 2f66 7374  regexp" /etc/fst
│ │ │ +001b1ef0: 6162 207c 2067 7265 7020 2d71 2022 6e6f  ab | grep -q "no
│ │ │ +001b1f00: 7375 6964 223b 2074 6865 6e0a 2020 2020  suid"; then.    
│ │ │ +001b1f10: 2020 2020 7072 6576 696f 7573 5f6d 6f75      previous_mou
│ │ │ +001b1f20: 6e74 5f6f 7074 733d 2428 6772 6570 2022  nt_opts=$(grep "
│ │ │ +001b1f30: 246d 6f75 6e74 5f70 6f69 6e74 5f6d 6174  $mount_point_mat
│ │ │ +001b1f40: 6368 5f72 6567 6578 7022 202f 6574 632f  ch_regexp" /etc/
│ │ │ +001b1f50: 6673 7461 6220 7c20 6177 6b20 277b 7072  fstab | awk '{pr
│ │ │ +001b1f60: 696e 7420 2434 7d27 290a 2020 2020 2020  int $4}').      
│ │ │ +001b1f70: 2020 7365 6420 2d69 2022 737c 5c28 247b    sed -i "s|\(${
│ │ │ +001b1f80: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ +001b1f90: 685f 7265 6765 7870 7d2e 2a24 7b70 7265  h_regexp}.*${pre
│ │ │ +001b1fa0: 7669 6f75 735f 6d6f 756e 745f 6f70 7473  vious_mount_opts
│ │ │ +001b1fb0: 7d5c 297c 5c31 2c6e 6f73 7569 647c 2220  }\)|\1,nosuid|" 
│ │ │ +001b1fc0: 2f65 7463 2f66 7374 6162 0a20 2020 2066  /etc/fstab.    f
│ │ │ +001b1fd0: 690a 0a0a 2020 2020 6966 206d 6b64 6972  i...    if mkdir
│ │ │ +001b1fe0: 202d 7020 222f 7661 722f 6c6f 672f 6175   -p "/var/log/au
│ │ │ +001b1ff0: 6469 7422 3b20 7468 656e 0a20 2020 2020  dit"; then.     
│ │ │ +001b2000: 2020 2069 6620 6d6f 756e 7470 6f69 6e74     if mountpoint
│ │ │ +001b2010: 202d 7120 222f 7661 722f 6c6f 672f 6175   -q "/var/log/au
│ │ │ +001b2020: 6469 7422 3b20 7468 656e 0a20 2020 2020  dit"; then.     
│ │ │ +001b2030: 2020 2020 2020 206d 6f75 6e74 202d 6f20         mount -o 
│ │ │ +001b2040: 7265 6d6f 756e 7420 2d2d 7461 7267 6574  remount --target
│ │ │ +001b2050: 2022 2f76 6172 2f6c 6f67 2f61 7564 6974   "/var/log/audit
│ │ │ +001b2060: 220a 2020 2020 2020 2020 6669 0a20 2020  ".        fi.   
│ │ │ +001b2070: 2066 690a 7d0a 0a70 6572 666f 726d 5f72   fi.}..perform_r
│ │ │ +001b2080: 656d 6564 6961 7469 6f6e 0a0a 656c 7365  emediation..else
│ │ │ +001b2090: 0a20 2020 2026 6774 3b26 616d 703b 3220  .    >&2 
│ │ │ +001b20a0: 6563 686f 2027 5265 6d65 6469 6174 696f  echo 'Remediatio
│ │ │ +001b20b0: 6e20 6973 206e 6f74 2061 7070 6c69 6361  n is not applica
│ │ │ +001b20c0: 626c 652c 206e 6f74 6869 6e67 2077 6173  ble, nothing was
│ │ │ +001b20d0: 2064 6f6e 6527 0a66 690a 3c2f 636f 6465   done'.fi.
Remedi │ │ │ +001b2190: 6174 696f 6e20 416e 6163 6f6e 6461 2073 ation Anaconda s │ │ │ +001b21a0: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ +001b2230: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +001b2240: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ +001b2260: 3c2f 7468 3e3c 7464 3e68 6967 683c 2f74 high
R │ │ │ +001b2280: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +001b2290: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ +001b22b0: 2f74 683e 3c74 643e 656e 6162 6c65 3c2f /th>enable
│ │ │ +001b22d0: 3c70 7265 3e3c 636f 6465 3e0a 7061 7274
.part
│ │ │ +001b22e0: 202f 7661 722f 6c6f 672f 6175 6469 7420   /var/log/audit 
│ │ │ +001b22f0: 2d2d 6d6f 756e 746f 7074 696f 6e73 3d22  --mountoptions="
│ │ │ +001b2300: 6e6f 7375 6964 220a 3c2f 636f 6465 3e3c  nosuid".<
│ │ │  001b2310: 2f70 7265 3e3c 2f64 6976 3e3c 2f64 6976  /pre>
│ │ │ 001b2340: 3c2f 7472 3e3c 7472 2064 6174 612d 7474 Re │ │ │ -001b2f20: 6d65 6469 6174 696f 6e20 416e 6163 6f6e mediation Anacon │ │ │ -001b2f30: 6461 2073 6e69 7070 6574 20e2 87b2 3c2f da snippet ...
│ │ │ -001b2fd0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 < │ │ │ -001b3010: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -001b3020: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
.
│ │ │ -001b3070: 7061 7274 202f 7661 722f 6c6f 6720 2d2d  part /var/log --
│ │ │ -001b3080: 6d6f 756e 746f 7074 696f 6e73 3d22 6e6f  mountoptions="no
│ │ │ -001b3090: 6465 7622 0a3c 2f63 6f64 653e 3c2f 7072  dev".Remediation
│ │ │ -001b3150: 2041 6e73 6962 6c65 2073 6e69 7070 6574   Ansible snippet
│ │ │ -001b3160: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976   ...
< │ │ │ -001b3220: 7464 3e68 6967 683c 2f74 643e 3c2f 7472 td>highconfigure │ │ │ -001b3280: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
│ │ │ -001b2fc0: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -001b2ff0: 696f 6e3a 3c2f 7468 3e3c 7464 3e68 6967 ion:hig │ │ │ -001b3000: 683c 2f74 643e 3c2f 7472 3e3c 7472 3e3c h
Strate │ │ │ -001b3040: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ -001b3050: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Complexity │ │ │ -001b31f0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
D │ │ │ -001b3210: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:
Reboot: │ │ │ -001b3240: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false
│ │ │ -001b3260: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:
- name: │ │ │ -001b32a0: 4761 7468 6572 2074 6865 2070 6163 6b61 Gather the packa │ │ │ -001b32b0: 6765 2066 6163 7473 0a20 2070 6163 6b61 ge facts. packa │ │ │ -001b32c0: 6765 5f66 6163 7473 3a0a 2020 2020 6d61 ge_facts:. ma │ │ │ -001b32d0: 6e61 6765 723a 2061 7574 6f0a 2020 7461 nager: auto. ta │ │ │ -001b32e0: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030 gs:. - NIST-800 │ │ │ -001b32f0: 2d35 332d 4143 2d36 0a20 202d 204e 4953 -53-AC-6. - NIS │ │ │ -001b3300: 542d 3830 302d 3533 2d41 432d 3628 3129 T-800-53-AC-6(1) │ │ │ -001b3310: 0a20 202d 204e 4953 542d 3830 302d 3533 . - NIST-800-53 │ │ │ -001b3320: 2d43 4d2d 3628 6129 0a20 202d 204e 4953 -CM-6(a). - NIS │ │ │ -001b3330: 542d 3830 302d 3533 2d43 4d2d 3728 6129 T-800-53-CM-7(a) │ │ │ -001b3340: 0a20 202d 204e 4953 542d 3830 302d 3533 . - NIST-800-53 │ │ │ -001b3350: 2d43 4d2d 3728 6229 0a20 202d 204e 4953 -CM-7(b). - NIS │ │ │ -001b3360: 542d 3830 302d 3533 2d4d 502d 370a 2020 T-800-53-MP-7. │ │ │ -001b3370: 2d20 636f 6e66 6967 7572 655f 7374 7261 - configure_stra │ │ │ -001b3380: 7465 6779 0a20 202d 2068 6967 685f 6469 tegy. - high_di │ │ │ -001b3390: 7372 7570 7469 6f6e 0a20 202d 206c 6f77 sruption. - low │ │ │ -001b33a0: 5f63 6f6d 706c 6578 6974 790a 2020 2d20 _complexity. - │ │ │ -001b33b0: 6d65 6469 756d 5f73 6576 6572 6974 790a medium_severity. │ │ │ -001b33c0: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e - mount_option │ │ │ -001b33d0: 5f76 6172 5f6c 6f67 5f6e 6f64 6576 0a20 _var_log_nodev. │ │ │ -001b33e0: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565 - no_reboot_nee │ │ │ -001b33f0: 6465 640a 0a2d 206e 616d 653a 2027 4164 ded..- name: 'Ad │ │ │ -001b3400: 6420 6e6f 6465 7620 4f70 7469 6f6e 2074 d nodev Option t │ │ │ -001b3410: 6f20 2f76 6172 2f6c 6f67 3a20 4368 6563 o /var/log: Chec │ │ │ -001b3420: 6b20 696e 666f 726d 6174 696f 6e20 6173 k information as │ │ │ -001b3430: 736f 6369 6174 6564 2074 6f20 6d6f 756e sociated to moun │ │ │ -001b3440: 7470 6f69 6e74 270a 2020 616e 7369 626c tpoint'. ansibl │ │ │ -001b3450: 652e 6275 696c 7469 6e2e 636f 6d6d 616e e.builtin.comman │ │ │ -001b3460: 643a 2066 696e 646d 6e74 202d 2d66 7374 d: findmnt --fst │ │ │ -001b3470: 6162 2027 2f76 6172 2f6c 6f67 270a 2020 ab '/var/log'. │ │ │ -001b3480: 7265 6769 7374 6572 3a20 6465 7669 6365 register: device │ │ │ -001b3490: 5f6e 616d 650a 2020 6661 696c 6564 5f77 _name. failed_w │ │ │ -001b34a0: 6865 6e3a 2064 6576 6963 655f 6e61 6d65 hen: device_name │ │ │ -001b34b0: 2e72 6320 2667 743b 2031 0a20 2063 6861 .rc > 1. cha │ │ │ -001b34c0: 6e67 6564 5f77 6865 6e3a 2066 616c 7365 nged_when: false │ │ │ -001b34d0: 0a20 2063 6865 636b 5f6d 6f64 653a 2066 . check_mode: f │ │ │ -001b34e0: 616c 7365 0a20 2077 6865 6e3a 0a20 202d alse. when:. - │ │ │ -001b34f0: 2028 206e 6f74 2028 2022 6b65 726e 656c ( not ( "kernel │ │ │ -001b3500: 2220 696e 2061 6e73 6962 6c65 5f66 6163 " in ansible_fac │ │ │ -001b3510: 7473 2e70 6163 6b61 6765 7320 616e 6420 ts.packages and │ │ │ -001b3520: 2262 6f6f 7463 2220 696e 2061 6e73 6962 "bootc" in ansib │ │ │ -001b3530: 6c65 5f66 6163 7473 2e70 6163 6b61 6765 le_facts.package │ │ │ -001b3540: 730a 2020 2020 616e 6420 6e6f 7420 226f s. and not "o │ │ │ -001b3550: 7065 6e73 6869 6674 2d6b 7562 656c 6574 penshift-kubelet │ │ │ -001b3560: 2220 696e 2061 6e73 6962 6c65 5f66 6163 " in ansible_fac │ │ │ -001b3570: 7473 2e70 6163 6b61 6765 7320 616e 6420 ts.packages and │ │ │ -001b3580: 226f 7374 7265 6522 2069 6e20 616e 7369 "ostree" in ansi │ │ │ -001b3590: 626c 655f 7072 6f63 5f63 6d64 6c69 6e65 ble_proc_cmdline │ │ │ -001b35a0: 0a20 2020 2029 2061 6e64 206e 6f74 2028 . ) and not ( │ │ │ -001b35b0: 2061 6e73 6962 6c65 5f76 6972 7475 616c ansible_virtual │ │ │ -001b35c0: 697a 6174 696f 6e5f 7479 7065 2069 6e20 ization_type in │ │ │ -001b35d0: 5b22 646f 636b 6572 222c 2022 6c78 6322 ["docker", "lxc" │ │ │ -001b35e0: 2c20 226f 7065 6e76 7a22 2c20 2270 6f64 , "openvz", "pod │ │ │ -001b35f0: 6d61 6e22 2c0a 2020 2020 2263 6f6e 7461 man",. "conta │ │ │ -001b3600: 696e 6572 225d 2029 2029 0a20 202d 2027 iner"] ) ). - ' │ │ │ -001b3610: 222f 7661 722f 6c6f 6722 2069 6e20 616e "/var/log" in an │ │ │ -001b3620: 7369 626c 655f 6d6f 756e 7473 207c 206d sible_mounts | m │ │ │ -001b3630: 6170 2861 7474 7269 6275 7465 3d22 6d6f ap(attribute="mo │ │ │ -001b3640: 756e 7422 2920 7c20 6c69 7374 270a 2020 unt") | list'. │ │ │ -001b3650: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38 tags:. - NIST-8 │ │ │ -001b3660: 3030 2d35 332d 4143 2d36 0a20 202d 204e 00-53-AC-6. - N │ │ │ -001b3670: 4953 542d 3830 302d 3533 2d41 432d 3628 IST-800-53-AC-6( │ │ │ -001b3680: 3129 0a20 202d 204e 4953 542d 3830 302d 1). - NIST-800- │ │ │ -001b3690: 3533 2d43 4d2d 3628 6129 0a20 202d 204e 53-CM-6(a). - N │ │ │ -001b36a0: 4953 542d 3830 302d 3533 2d43 4d2d 3728 IST-800-53-CM-7( │ │ │ -001b36b0: 6129 0a20 202d 204e 4953 542d 3830 302d a). - NIST-800- │ │ │ -001b36c0: 3533 2d43 4d2d 3728 6229 0a20 202d 204e 53-CM-7(b). - N │ │ │ -001b36d0: 4953 542d 3830 302d 3533 2d4d 502d 370a IST-800-53-MP-7. │ │ │ -001b36e0: 2020 2d20 636f 6e66 6967 7572 655f 7374 - configure_st │ │ │ -001b36f0: 7261 7465 6779 0a20 202d 2068 6967 685f rategy. - high_ │ │ │ -001b3700: 6469 7372 7570 7469 6f6e 0a20 202d 206c disruption. - l │ │ │ -001b3710: 6f77 5f63 6f6d 706c 6578 6974 790a 2020 ow_complexity. │ │ │ -001b3720: 2d20 6d65 6469 756d 5f73 6576 6572 6974 - medium_severit │ │ │ -001b3730: 790a 2020 2d20 6d6f 756e 745f 6f70 7469 y. - mount_opti │ │ │ -001b3740: 6f6e 5f76 6172 5f6c 6f67 5f6e 6f64 6576 on_var_log_nodev │ │ │ -001b3750: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e . - no_reboot_n │ │ │ -001b3760: 6565 6465 640a 0a2d 206e 616d 653a 2027 eeded..- name: ' │ │ │ -001b3770: 4164 6420 6e6f 6465 7620 4f70 7469 6f6e Add nodev Option │ │ │ -001b3780: 2074 6f20 2f76 6172 2f6c 6f67 3a20 4372 to /var/log: Cr │ │ │ -001b3790: 6561 7465 206d 6f75 6e74 5f69 6e66 6f20 eate mount_info │ │ │ -001b37a0: 6469 6374 696f 6e61 7279 2076 6172 6961 dictionary varia │ │ │ -001b37b0: 626c 6527 0a20 2073 6574 5f66 6163 743a ble'. set_fact: │ │ │ -001b37c0: 0a20 2020 206d 6f75 6e74 5f69 6e66 6f3a . mount_info: │ │ │ -001b37d0: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f7c '{{ mount_info| │ │ │ -001b37e0: 6465 6661 756c 7428 7b7d 297c 636f 6d62 default({})|comb │ │ │ -001b37f0: 696e 6528 7b69 7465 6d2e 303a 2069 7465 ine({item.0: ite │ │ │ -001b3800: 6d2e 317d 2920 7d7d 270a 2020 7769 7468 m.1}) }}'. with │ │ │ -001b3810: 5f74 6f67 6574 6865 723a 0a20 202d 2027 _together:. - ' │ │ │ -001b3820: 7b7b 2064 6576 6963 655f 6e61 6d65 2e73 {{ device_name.s │ │ │ -001b3830: 7464 6f75 745f 6c69 6e65 735b 305d 2e73 tdout_lines[0].s │ │ │ -001b3840: 706c 6974 2829 207c 206d 6170 2827 276c plit() | map(''l │ │ │ -001b3850: 6f77 6572 2727 2920 7c20 6c69 7374 207d ower'') | list } │ │ │ -001b3860: 7d27 0a20 202d 2027 7b7b 2064 6576 6963 }'. - '{{ devic │ │ │ -001b3870: 655f 6e61 6d65 2e73 7464 6f75 745f 6c69 e_name.stdout_li │ │ │ -001b3880: 6e65 735b 315d 2e73 706c 6974 2829 207c nes[1].split() | │ │ │ -001b3890: 206c 6973 7420 7d7d 270a 2020 7768 656e list }}'. when │ │ │ -001b38a0: 3a0a 2020 2d20 2820 6e6f 7420 2820 226b :. - ( not ( "k │ │ │ -001b38b0: 6572 6e65 6c22 2069 6e20 616e 7369 626c ernel" in ansibl │ │ │ -001b38c0: 655f 6661 6374 732e 7061 636b 6167 6573 e_facts.packages │ │ │ -001b38d0: 2061 6e64 2022 626f 6f74 6322 2069 6e20 and "bootc" in │ │ │ -001b38e0: 616e 7369 626c 655f 6661 6374 732e 7061 ansible_facts.pa │ │ │ -001b38f0: 636b 6167 6573 0a20 2020 2061 6e64 206e ckages. and n │ │ │ -001b3900: 6f74 2022 6f70 656e 7368 6966 742d 6b75 ot "openshift-ku │ │ │ -001b3910: 6265 6c65 7422 2069 6e20 616e 7369 626c belet" in ansibl │ │ │ -001b3920: 655f 6661 6374 732e 7061 636b 6167 6573 e_facts.packages │ │ │ -001b3930: 2061 6e64 2022 6f73 7472 6565 2220 696e and "ostree" in │ │ │ -001b3940: 2061 6e73 6962 6c65 5f70 726f 635f 636d ansible_proc_cm │ │ │ -001b3950: 646c 696e 650a 2020 2020 2920 616e 6420 dline. ) and │ │ │ -001b3960: 6e6f 7420 2820 616e 7369 626c 655f 7669 not ( ansible_vi │ │ │ -001b3970: 7274 7561 6c69 7a61 7469 6f6e 5f74 7970 rtualization_typ │ │ │ -001b3980: 6520 696e 205b 2264 6f63 6b65 7222 2c20 e in ["docker", │ │ │ -001b3990: 226c 7863 222c 2022 6f70 656e 767a 222c "lxc", "openvz", │ │ │ -001b39a0: 2022 706f 646d 616e 222c 0a20 2020 2022 "podman",. " │ │ │ -001b39b0: 636f 6e74 6169 6e65 7222 5d20 2920 290a container"] ) ). │ │ │ -001b39c0: 2020 2d20 2722 2f76 6172 2f6c 6f67 2220 - '"/var/log" │ │ │ -001b39d0: 696e 2061 6e73 6962 6c65 5f6d 6f75 6e74 in ansible_mount │ │ │ -001b39e0: 7320 7c20 6d61 7028 6174 7472 6962 7574 s | map(attribut │ │ │ -001b39f0: 653d 226d 6f75 6e74 2229 207c 206c 6973 e="mount") | lis │ │ │ -001b3a00: 7427 0a20 202d 2064 6576 6963 655f 6e61 t'. - device_na │ │ │ -001b3a10: 6d65 2e73 7464 6f75 7420 6973 2064 6566 me.stdout is def │ │ │ -001b3a20: 696e 6564 2061 6e64 2064 6576 6963 655f ined and device_ │ │ │ -001b3a30: 6e61 6d65 2e73 7464 6f75 745f 6c69 6e65 name.stdout_line │ │ │ -001b3a40: 7320 6973 2064 6566 696e 6564 0a20 202d s is defined. - │ │ │ -001b3a50: 2028 6465 7669 6365 5f6e 616d 652e 7374 (device_name.st │ │ │ -001b3a60: 646f 7574 207c 206c 656e 6774 6820 2667 dout | length &g │ │ │ -001b3a70: 743b 2030 290a 2020 7461 6773 3a0a 2020 t; 0). tags:. │ │ │ -001b3a80: 2d20 4e49 5354 2d38 3030 2d35 332d 4143 - NIST-800-53-AC │ │ │ -001b3a90: 2d36 0a20 202d 204e 4953 542d 3830 302d -6. - NIST-800- │ │ │ -001b3aa0: 3533 2d41 432d 3628 3129 0a20 202d 204e 53-AC-6(1). - N │ │ │ -001b3ab0: 4953 542d 3830 302d 3533 2d43 4d2d 3628 IST-800-53-CM-6( │ │ │ -001b3ac0: 6129 0a20 202d 204e 4953 542d 3830 302d a). - NIST-800- │ │ │ -001b3ad0: 3533 2d43 4d2d 3728 6129 0a20 202d 204e 53-CM-7(a). - N │ │ │ -001b3ae0: 4953 542d 3830 302d 3533 2d43 4d2d 3728 IST-800-53-CM-7( │ │ │ -001b3af0: 6229 0a20 202d 204e 4953 542d 3830 302d b). - NIST-800- │ │ │ -001b3b00: 3533 2d4d 502d 370a 2020 2d20 636f 6e66 53-MP-7. - conf │ │ │ -001b3b10: 6967 7572 655f 7374 7261 7465 6779 0a20 igure_strategy. │ │ │ -001b3b20: 202d 2068 6967 685f 6469 7372 7570 7469 - high_disrupti │ │ │ -001b3b30: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c on. - low_compl │ │ │ -001b3b40: 6578 6974 790a 2020 2d20 6d65 6469 756d exity. - medium │ │ │ -001b3b50: 5f73 6576 6572 6974 790a 2020 2d20 6d6f _severity. - mo │ │ │ -001b3b60: 756e 745f 6f70 7469 6f6e 5f76 6172 5f6c unt_option_var_l │ │ │ -001b3b70: 6f67 5f6e 6f64 6576 0a20 202d 206e 6f5f og_nodev. - no_ │ │ │ -001b3b80: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d reboot_needed..- │ │ │ -001b3b90: 206e 616d 653a 2027 4164 6420 6e6f 6465 name: 'Add node │ │ │ -001b3ba0: 7620 4f70 7469 6f6e 2074 6f20 2f76 6172 v Option to /var │ │ │ -001b3bb0: 2f6c 6f67 3a20 4966 202f 7661 722f 6c6f /log: If /var/lo │ │ │ -001b3bc0: 6720 6e6f 7420 6d6f 756e 7465 642c 2063 g not mounted, c │ │ │ -001b3bd0: 7261 6674 206d 6f75 6e74 5f69 6e66 6f20 raft mount_info │ │ │ -001b3be0: 6d61 6e75 616c 6c79 270a 2020 7365 745f manually'. set_ │ │ │ -001b3bf0: 6661 6374 3a0a 2020 2020 6d6f 756e 745f fact:. mount_ │ │ │ -001b3c00: 696e 666f 3a20 277b 7b20 6d6f 756e 745f info: '{{ mount_ │ │ │ -001b3c10: 696e 666f 7c64 6566 6175 6c74 287b 7d29 info|default({}) │ │ │ -001b3c20: 7c63 6f6d 6269 6e65 287b 6974 656d 2e30 |combine({item.0 │ │ │ -001b3c30: 3a20 6974 656d 2e31 7d29 207d 7d27 0a20 : item.1}) }}'. │ │ │ -001b3c40: 2077 6974 685f 746f 6765 7468 6572 3a0a with_together:. │ │ │ -001b3c50: 2020 2d20 2d20 7461 7267 6574 0a20 2020 - - target. │ │ │ -001b3c60: 202d 2073 6f75 7263 650a 2020 2020 2d20 - source. - │ │ │ -001b3c70: 6673 7479 7065 0a20 2020 202d 206f 7074 fstype. - opt │ │ │ -001b3c80: 696f 6e73 0a20 202d 202d 202f 7661 722f ions. - - /var/ │ │ │ -001b3c90: 6c6f 670a 2020 2020 2d20 2727 0a20 2020 log. - ''. │ │ │ -001b3ca0: 202d 2027 270a 2020 2020 2d20 6465 6661 - ''. - defa │ │ │ -001b3cb0: 756c 7473 0a20 2077 6865 6e3a 0a20 202d ults. when:. - │ │ │ -001b3cc0: 2028 206e 6f74 2028 2022 6b65 726e 656c ( not ( "kernel │ │ │ -001b3cd0: 2220 696e 2061 6e73 6962 6c65 5f66 6163 " in ansible_fac │ │ │ -001b3ce0: 7473 2e70 6163 6b61 6765 7320 616e 6420 ts.packages and │ │ │ -001b3cf0: 2262 6f6f 7463 2220 696e 2061 6e73 6962 "bootc" in ansib │ │ │ -001b3d00: 6c65 5f66 6163 7473 2e70 6163 6b61 6765 le_facts.package │ │ │ -001b3d10: 730a 2020 2020 616e 6420 6e6f 7420 226f s. and not "o │ │ │ -001b3d20: 7065 6e73 6869 6674 2d6b 7562 656c 6574 penshift-kubelet │ │ │ -001b3d30: 2220 696e 2061 6e73 6962 6c65 5f66 6163 " in ansible_fac │ │ │ -001b3d40: 7473 2e70 6163 6b61 6765 7320 616e 6420 ts.packages and │ │ │ -001b3d50: 226f 7374 7265 6522 2069 6e20 616e 7369 "ostree" in ansi │ │ │ -001b3d60: 626c 655f 7072 6f63 5f63 6d64 6c69 6e65 ble_proc_cmdline │ │ │ -001b3d70: 0a20 2020 2029 2061 6e64 206e 6f74 2028 . ) and not ( │ │ │ -001b3d80: 2061 6e73 6962 6c65 5f76 6972 7475 616c ansible_virtual │ │ │ -001b3d90: 697a 6174 696f 6e5f 7479 7065 2069 6e20 ization_type in │ │ │ -001b3da0: 5b22 646f 636b 6572 222c 2022 6c78 6322 ["docker", "lxc" │ │ │ -001b3db0: 2c20 226f 7065 6e76 7a22 2c20 2270 6f64 , "openvz", "pod │ │ │ -001b3dc0: 6d61 6e22 2c0a 2020 2020 2263 6f6e 7461 man",. "conta │ │ │ -001b3dd0: 696e 6572 225d 2029 2029 0a20 202d 2027 iner"] ) ). - ' │ │ │ -001b3de0: 222f 7661 722f 6c6f 6722 2069 6e20 616e "/var/log" in an │ │ │ -001b3df0: 7369 626c 655f 6d6f 756e 7473 207c 206d sible_mounts | m │ │ │ -001b3e00: 6170 2861 7474 7269 6275 7465 3d22 6d6f ap(attribute="mo │ │ │ -001b3e10: 756e 7422 2920 7c20 6c69 7374 270a 2020 unt") | list'. │ │ │ -001b3e20: 2d20 2822 2d2d 6673 7461 6222 207c 206c - ("--fstab" | l │ │ │ -001b3e30: 656e 6774 6820 3d3d 2030 290a 2020 2d20 ength == 0). - │ │ │ -001b3e40: 6465 7669 6365 5f6e 616d 652e 7374 646f device_name.stdo │ │ │ -001b3e50: 7574 2069 7320 6465 6669 6e65 6420 616e ut is defined an │ │ │ -001b3e60: 6420 6465 7669 6365 5f6e 616d 652e 7374 d device_name.st │ │ │ -001b3e70: 646f 7574 5f6c 696e 6573 2069 7320 6465 dout_lines is de │ │ │ -001b3e80: 6669 6e65 640a 2020 2d20 2864 6576 6963 fined. - (devic │ │ │ -001b3e90: 655f 6e61 6d65 2e73 7464 6f75 7420 7c20 e_name.stdout | │ │ │ -001b3ea0: 6c65 6e67 7468 203d 3d20 3029 0a20 2074 length == 0). t │ │ │ -001b3eb0: 6167 733a 0a20 202d 204e 4953 542d 3830 ags:. - NIST-80 │ │ │ -001b3ec0: 302d 3533 2d41 432d 360a 2020 2d20 4e49 0-53-AC-6. - NI │ │ │ -001b3ed0: 5354 2d38 3030 2d35 332d 4143 2d36 2831 ST-800-53-AC-6(1 │ │ │ -001b3ee0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35 ). - NIST-800-5 │ │ │ -001b3ef0: 332d 434d 2d36 2861 290a 2020 2d20 4e49 3-CM-6(a). - NI │ │ │ -001b3f00: 5354 2d38 3030 2d35 332d 434d 2d37 2861 ST-800-53-CM-7(a │ │ │ -001b3f10: 290a 2020 2d20 4e49 5354 2d38 3030 2d35 ). - NIST-800-5 │ │ │ -001b3f20: 332d 434d 2d37 2862 290a 2020 2d20 4e49 3-CM-7(b). - NI │ │ │ -001b3f30: 5354 2d38 3030 2d35 332d 4d50 2d37 0a20 ST-800-53-MP-7. │ │ │ -001b3f40: 202d 2063 6f6e 6669 6775 7265 5f73 7472 - configure_str │ │ │ -001b3f50: 6174 6567 790a 2020 2d20 6869 6768 5f64 ategy. - high_d │ │ │ -001b3f60: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f isruption. - lo │ │ │ -001b3f70: 775f 636f 6d70 6c65 7869 7479 0a20 202d w_complexity. - │ │ │ -001b3f80: 206d 6564 6975 6d5f 7365 7665 7269 7479 medium_severity │ │ │ -001b3f90: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f . - mount_optio │ │ │ -001b3fa0: 6e5f 7661 725f 6c6f 675f 6e6f 6465 760a n_var_log_nodev. │ │ │ -001b3fb0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65 - no_reboot_ne │ │ │ -001b3fc0: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741 eded..- name: 'A │ │ │ -001b3fd0: 6464 206e 6f64 6576 204f 7074 696f 6e20 dd nodev Option │ │ │ -001b3fe0: 746f 202f 7661 722f 6c6f 673a 204d 616b to /var/log: Mak │ │ │ -001b3ff0: 6520 7375 7265 206e 6f64 6576 206f 7074 e sure nodev opt │ │ │ -001b4000: 696f 6e20 6973 2070 6172 7420 6f66 2074 ion is part of t │ │ │ -001b4010: 6865 2074 6f20 2f76 6172 2f6c 6f67 0a20 he to /var/log. │ │ │ -001b4020: 2020 206f 7074 696f 6e73 270a 2020 7365 options'. se │ │ │ -001b4030: 745f 6661 6374 3a0a 2020 2020 6d6f 756e t_fact:. moun │ │ │ -001b4040: 745f 696e 666f 3a20 277b 7b20 6d6f 756e t_info: '{{ moun │ │ │ -001b4050: 745f 696e 666f 207c 2063 6f6d 6269 6e65 t_info | combine │ │ │ -001b4060: 2820 7b27 276f 7074 696f 6e73 2727 3a27 ( {''options'':' │ │ │ -001b4070: 2727 277e 286d 6f75 6e74 5f69 6e66 6f2e '''~(mount_info. │ │ │ -001b4080: 6f70 7469 6f6e 7320 7c0a 2020 2020 2020 options |. │ │ │ -001b4090: 6465 6661 756c 7428 2727 2727 2929 7e28 default(''''))~( │ │ │ -001b40a0: 2727 2c27 2720 6966 2028 6d6f 756e 745f '','' if (mount_ │ │ │ -001b40b0: 696e 666f 2e6f 7074 696f 6e73 207c 2064 info.options | d │ │ │ -001b40c0: 6566 6175 6c74 2827 2727 2729 2920 656c efault('''')) el │ │ │ -001b40d0: 7365 2027 2727 2729 7e27 276e 6f64 6576 se '''')~''nodev │ │ │ -001b40e0: 2727 0a20 2020 2020 207d 2920 7d7d 270a ''. }) }}'. │ │ │ -001b40f0: 2020 7768 656e 3a0a 2020 2d20 2820 6e6f when:. - ( no │ │ │ -001b4100: 7420 2820 226b 6572 6e65 6c22 2069 6e20 t ( "kernel" in │ │ │ -001b4110: 616e 7369 626c 655f 6661 6374 732e 7061 ansible_facts.pa │ │ │ -001b4120: 636b 6167 6573 2061 6e64 2022 626f 6f74 ckages and "boot │ │ │ -001b4130: 6322 2069 6e20 616e 7369 626c 655f 6661 c" in ansible_fa │ │ │ -001b4140: 6374 732e 7061 636b 6167 6573 0a20 2020 cts.packages. │ │ │ -001b4150: 2061 6e64 206e 6f74 2022 6f70 656e 7368 and not "opensh │ │ │ -001b4160: 6966 742d 6b75 6265 6c65 7422 2069 6e20 ift-kubelet" in │ │ │ -001b4170: 616e 7369 626c 655f 6661 6374 732e 7061 ansible_facts.pa │ │ │ -001b4180: 636b 6167 6573 2061 6e64 2022 6f73 7472 ckages and "ostr │ │ │ -001b4190: 6565 2220 696e 2061 6e73 6962 6c65 5f70 ee" in ansible_p │ │ │ -001b41a0: 726f 635f 636d 646c 696e 650a 2020 2020 roc_cmdline. │ │ │ -001b41b0: 2920 616e 6420 6e6f 7420 2820 616e 7369 ) and not ( ansi │ │ │ -001b41c0: 626c 655f 7669 7274 7561 6c69 7a61 7469 ble_virtualizati │ │ │ -001b41d0: 6f6e 5f74 7970 6520 696e 205b 2264 6f63 on_type in ["doc │ │ │ -001b41e0: 6b65 7222 2c20 226c 7863 222c 2022 6f70 ker", "lxc", "op │ │ │ -001b41f0: 656e 767a 222c 2022 706f 646d 616e 222c envz", "podman", │ │ │ -001b4200: 0a20 2020 2022 636f 6e74 6169 6e65 7222 . "container" │ │ │ -001b4210: 5d20 2920 290a 2020 2d20 2722 2f76 6172 ] ) ). - '"/var │ │ │ -001b4220: 2f6c 6f67 2220 696e 2061 6e73 6962 6c65 /log" in ansible │ │ │ -001b4230: 5f6d 6f75 6e74 7320 7c20 6d61 7028 6174 _mounts | map(at │ │ │ -001b4240: 7472 6962 7574 653d 226d 6f75 6e74 2229 tribute="mount") │ │ │ -001b4250: 207c 206c 6973 7427 0a20 202d 206d 6f75 | list'. - mou │ │ │ -001b4260: 6e74 5f69 6e66 6f20 6973 2064 6566 696e nt_info is defin │ │ │ -001b4270: 6564 2061 6e64 2022 6e6f 6465 7622 206e ed and "nodev" n │ │ │ -001b4280: 6f74 2069 6e20 286d 6f75 6e74 5f69 6e66 ot in (mount_inf │ │ │ -001b4290: 6f2e 6f70 7469 6f6e 7320 7c20 6465 6661 o.options | defa │ │ │ -001b42a0: 756c 7428 2727 2929 0a20 2074 6167 733a ult('')). tags: │ │ │ -001b42b0: 0a20 202d 204e 4953 542d 3830 302d 3533 . - NIST-800-53 │ │ │ -001b42c0: 2d41 432d 360a 2020 2d20 4e49 5354 2d38 -AC-6. - NIST-8 │ │ │ -001b42d0: 3030 2d35 332d 4143 2d36 2831 290a 2020 00-53-AC-6(1). │ │ │ -001b42e0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d - NIST-800-53-CM │ │ │ -001b42f0: 2d36 2861 290a 2020 2d20 4e49 5354 2d38 -6(a). - NIST-8 │ │ │ -001b4300: 3030 2d35 332d 434d 2d37 2861 290a 2020 00-53-CM-7(a). │ │ │ -001b4310: 2d20 4e49 5354 2d38 3030 2d35 332d 434d - NIST-800-53-CM │ │ │ -001b4320: 2d37 2862 290a 2020 2d20 4e49 5354 2d38 -7(b). - NIST-8 │ │ │ -001b4330: 3030 2d35 332d 4d50 2d37 0a20 202d 2063 00-53-MP-7. - c │ │ │ -001b4340: 6f6e 6669 6775 7265 5f73 7472 6174 6567 onfigure_strateg │ │ │ -001b4350: 790a 2020 2d20 6869 6768 5f64 6973 7275 y. - high_disru │ │ │ -001b4360: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f ption. - low_co │ │ │ -001b4370: 6d70 6c65 7869 7479 0a20 202d 206d 6564 mplexity. - med │ │ │ -001b4380: 6975 6d5f 7365 7665 7269 7479 0a20 202d ium_severity. - │ │ │ -001b4390: 206d 6f75 6e74 5f6f 7074 696f 6e5f 7661 mount_option_va │ │ │ -001b43a0: 725f 6c6f 675f 6e6f 6465 760a 2020 2d20 r_log_nodev. - │ │ │ -001b43b0: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564 no_reboot_needed │ │ │ -001b43c0: 0a0a 2d20 6e61 6d65 3a20 2741 6464 206e ..- name: 'Add n │ │ │ -001b43d0: 6f64 6576 204f 7074 696f 6e20 746f 202f odev Option to / │ │ │ -001b43e0: 7661 722f 6c6f 673a 2045 6e73 7572 6520 var/log: Ensure │ │ │ -001b43f0: 2f76 6172 2f6c 6f67 2069 7320 6d6f 756e /var/log is moun │ │ │ -001b4400: 7465 6420 7769 7468 206e 6f64 6576 206f ted with nodev o │ │ │ -001b4410: 7074 696f 6e27 0a20 2061 6e73 6962 6c65 ption'. ansible │ │ │ -001b4420: 2e70 6f73 6978 2e6d 6f75 6e74 3a0a 2020 .posix.mount:. │ │ │ -001b4430: 2020 7061 7468 3a20 2f76 6172 2f6c 6f67 path: /var/log │ │ │ -001b4440: 0a20 2020 2073 7263 3a20 277b 7b20 6d6f . src: '{{ mo │ │ │ -001b4450: 756e 745f 696e 666f 2e73 6f75 7263 6520 unt_info.source │ │ │ -001b4460: 7c20 6465 6661 756c 7428 2727 2727 2920 | default('''') │ │ │ -001b4470: 7d7d 270a 2020 2020 6f70 7473 3a20 277b }}'. opts: '{ │ │ │ -001b4480: 7b20 6d6f 756e 745f 696e 666f 2e6f 7074 { mount_info.opt │ │ │ -001b4490: 696f 6e73 207c 2064 6566 6175 6c74 2827 ions | default(' │ │ │ -001b44a0: 2727 2729 207d 7d27 0a20 2020 2073 7461 ''') }}'. sta │ │ │ -001b44b0: 7465 3a20 6d6f 756e 7465 640a 2020 2020 te: mounted. │ │ │ -001b44c0: 6673 7479 7065 3a20 277b 7b20 6d6f 756e fstype: '{{ moun │ │ │ -001b44d0: 745f 696e 666f 2e66 7374 7970 6520 7c20 t_info.fstype | │ │ │ -001b44e0: 6465 6661 756c 7428 2727 2727 2920 7d7d default('''') }} │ │ │ -001b44f0: 270a 2020 7265 6769 7374 6572 3a20 6d6f '. register: mo │ │ │ -001b4500: 756e 745f 7265 7375 6c74 0a20 2066 6169 unt_result. fai │ │ │ -001b4510: 6c65 645f 7768 656e 3a0a 2020 2d20 6d6f led_when:. - mo │ │ │ -001b4520: 756e 745f 7265 7375 6c74 2069 7320 6661 unt_result is fa │ │ │ -001b4530: 696c 6564 0a20 202d 2027 2727 7461 7267 iled. - '''targ │ │ │ -001b4540: 6574 2069 7320 6275 7379 2727 206e 6f74 et is busy'' not │ │ │ -001b4550: 2069 6e20 286d 6f75 6e74 5f72 6573 756c in (mount_resul │ │ │ -001b4560: 742e 6d73 6720 7c20 6465 6661 756c 7428 t.msg | default( │ │ │ -001b4570: 2727 2727 2929 270a 2020 2d20 2727 2761 ''''))'. - '''a │ │ │ -001b4580: 6c72 6561 6479 206d 6f75 6e74 6564 2727 lready mounted'' │ │ │ -001b4590: 206e 6f74 2069 6e20 286d 6f75 6e74 5f72 not in (mount_r │ │ │ -001b45a0: 6573 756c 742e 6d73 6720 7c20 6465 6661 esult.msg | defa │ │ │ -001b45b0: 756c 7428 2727 2727 2929 270a 2020 7768 ult(''''))'. wh │ │ │ -001b45c0: 656e 3a0a 2020 2d20 2820 6e6f 7420 2820 en:. - ( not ( │ │ │ -001b45d0: 226b 6572 6e65 6c22 2069 6e20 616e 7369 "kernel" in ansi │ │ │ -001b45e0: 626c 655f 6661 6374 732e 7061 636b 6167 ble_facts.packag │ │ │ -001b45f0: 6573 2061 6e64 2022 626f 6f74 6322 2069 es and "bootc" i │ │ │ -001b4600: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ -001b4610: 7061 636b 6167 6573 0a20 2020 2061 6e64 packages. and │ │ │ -001b4620: 206e 6f74 2022 6f70 656e 7368 6966 742d not "openshift- │ │ │ -001b4630: 6b75 6265 6c65 7422 2069 6e20 616e 7369 kubelet" in ansi │ │ │ -001b4640: 626c 655f 6661 6374 732e 7061 636b 6167 ble_facts.packag │ │ │ -001b4650: 6573 2061 6e64 2022 6f73 7472 6565 2220 es and "ostree" │ │ │ -001b4660: 696e 2061 6e73 6962 6c65 5f70 726f 635f in ansible_proc_ │ │ │ -001b4670: 636d 646c 696e 650a 2020 2020 2920 616e cmdline. ) an │ │ │ -001b4680: 6420 6e6f 7420 2820 616e 7369 626c 655f d not ( ansible_ │ │ │ -001b4690: 7669 7274 7561 6c69 7a61 7469 6f6e 5f74 virtualization_t │ │ │ -001b46a0: 7970 6520 696e 205b 2264 6f63 6b65 7222 ype in ["docker" │ │ │ -001b46b0: 2c20 226c 7863 222c 2022 6f70 656e 767a , "lxc", "openvz │ │ │ -001b46c0: 222c 2022 706f 646d 616e 222c 0a20 2020 ", "podman",. │ │ │ -001b46d0: 2022 636f 6e74 6169 6e65 7222 5d20 2920 "container"] ) │ │ │ -001b46e0: 290a 2020 2d20 2722 2f76 6172 2f6c 6f67 ). - '"/var/log │ │ │ -001b46f0: 2220 696e 2061 6e73 6962 6c65 5f6d 6f75 " in ansible_mou │ │ │ -001b4700: 6e74 7320 7c20 6d61 7028 6174 7472 6962 nts | map(attrib │ │ │ -001b4710: 7574 653d 226d 6f75 6e74 2229 207c 206c ute="mount") | l │ │ │ -001b4720: 6973 7427 0a20 202d 206d 6f75 6e74 5f69 ist'. - mount_i │ │ │ -001b4730: 6e66 6f20 6973 2064 6566 696e 6564 0a20 nfo is defined. │ │ │ -001b4740: 202d 2028 6465 7669 6365 5f6e 616d 652e - (device_name. │ │ │ -001b4750: 7374 646f 7574 2069 7320 6465 6669 6e65 stdout is define │ │ │ -001b4760: 6420 616e 6420 2864 6576 6963 655f 6e61 d and (device_na │ │ │ -001b4770: 6d65 2e73 7464 6f75 7420 7c20 6c65 6e67 me.stdout | leng │ │ │ -001b4780: 7468 2026 6774 3b20 3029 2920 6f72 2028 th > 0)) or ( │ │ │ -001b4790: 222d 2d66 7374 6162 220a 2020 2020 7c20 "--fstab". | │ │ │ -001b47a0: 6c65 6e67 7468 203d 3d20 3029 0a20 2074 length == 0). t │ │ │ -001b47b0: 6167 733a 0a20 202d 204e 4953 542d 3830 ags:. - NIST-80 │ │ │ -001b47c0: 302d 3533 2d41 432d 360a 2020 2d20 4e49 0-53-AC-6. - NI │ │ │ -001b47d0: 5354 2d38 3030 2d35 332d 4143 2d36 2831 ST-800-53-AC-6(1 │ │ │ -001b47e0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35 ). - NIST-800-5 │ │ │ -001b47f0: 332d 434d 2d36 2861 290a 2020 2d20 4e49 3-CM-6(a). - NI │ │ │ -001b4800: 5354 2d38 3030 2d35 332d 434d 2d37 2861 ST-800-53-CM-7(a │ │ │ -001b4810: 290a 2020 2d20 4e49 5354 2d38 3030 2d35 ). - NIST-800-5 │ │ │ -001b4820: 332d 434d 2d37 2862 290a 2020 2d20 4e49 3-CM-7(b). - NI │ │ │ -001b4830: 5354 2d38 3030 2d35 332d 4d50 2d37 0a20 ST-800-53-MP-7. │ │ │ -001b4840: 202d 2063 6f6e 6669 6775 7265 5f73 7472 - configure_str │ │ │ -001b4850: 6174 6567 790a 2020 2d20 6869 6768 5f64 ategy. - high_d │ │ │ -001b4860: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f isruption. - lo │ │ │ -001b4870: 775f 636f 6d70 6c65 7869 7479 0a20 202d w_complexity. - │ │ │ -001b4880: 206d 6564 6975 6d5f 7365 7665 7269 7479 medium_severity │ │ │ -001b4890: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f . - mount_optio │ │ │ -001b48a0: 6e5f 7661 725f 6c6f 675f 6e6f 6465 760a n_var_log_nodev. │ │ │ -001b48b0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65 - no_reboot_ne │ │ │ -001b48c0: 6564 6564 0a3c 2f63 6f64 653e 3c2f 7072 eded.
Remediation │ │ │ -001b4980: 2053 6865 6c6c 2073 6372 6970 7420 e287 Shell script .. │ │ │ -001b4990: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ -001b4a10: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -001b4a20: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
<
│ │ │ -001b4a40: 636f 6465 3e23 2052 656d 6564 6961 7469  code># Remediati
│ │ │ -001b4a50: 6f6e 2069 7320 6170 706c 6963 6162 6c65  on is applicable
│ │ │ -001b4a60: 206f 6e6c 7920 696e 2063 6572 7461 696e   only in certain
│ │ │ -001b4a70: 2070 6c61 7466 6f72 6d73 0a69 6620 2820   platforms.if ( 
│ │ │ -001b4a80: 2120 2820 7b20 7270 6d20 2d2d 7175 6965  ! ( { rpm --quie
│ │ │ -001b4a90: 7420 2d71 206b 6572 6e65 6c20 3b7d 2026  t -q kernel ;} &
│ │ │ -001b4aa0: 616d 703b 2661 6d70 3b20 7b20 7270 6d20  amp;& { rpm 
│ │ │ -001b4ab0: 2d2d 7175 6965 7420 2d71 2062 6f6f 7463  --quiet -q bootc
│ │ │ -001b4ac0: 203b 7d20 2661 6d70 3b26 616d 703b 207b   ;} && {
│ │ │ -001b4ad0: 2021 2072 706d 202d 2d71 7569 6574 202d   ! rpm --quiet -
│ │ │ -001b4ae0: 7120 6f70 656e 7368 6966 742d 6b75 6265  q openshift-kube
│ │ │ -001b4af0: 6c65 7420 3b7d 2026 616d 703b 2661 6d70  let ;} &&
│ │ │ -001b4b00: 3b20 285b 202d 6620 2f72 756e 2f6f 7374  ; ([ -f /run/ost
│ │ │ -001b4b10: 7265 652d 626f 6f74 6564 205d 207c 7c20  ree-booted ] || 
│ │ │ -001b4b20: 5b20 2d4c 202f 6f73 7472 6565 205d 2920  [ -L /ostree ]) 
│ │ │ -001b4b30: 2920 2661 6d70 3b26 616d 703b 2021 2028  ) && ! (
│ │ │ -001b4b40: 205b 202d 6620 2f2e 646f 636b 6572 656e   [ -f /.dockeren
│ │ │ -001b4b50: 7620 5d20 7c7c 205b 202d 6620 2f72 756e  v ] || [ -f /run
│ │ │ -001b4b60: 2f2e 636f 6e74 6169 6e65 7265 6e76 205d  /.containerenv ]
│ │ │ -001b4b70: 2029 2029 2026 616d 703b 2661 6d70 3b20   ) ) && 
│ │ │ -001b4b80: 7b20 2820 6669 6e64 6d6e 7420 2d2d 6b65  { ( findmnt --ke
│ │ │ -001b4b90: 726e 656c 2022 2f76 6172 2f6c 6f67 2220  rnel "/var/log" 
│ │ │ -001b4ba0: 2667 743b 202f 6465 762f 6e75 6c6c 207c  > /dev/null |
│ │ │ -001b4bb0: 7c20 6669 6e64 6d6e 7420 2d2d 6673 7461  | findmnt --fsta
│ │ │ -001b4bc0: 6220 222f 7661 722f 6c6f 6722 2026 6774  b "/var/log" >
│ │ │ -001b4bd0: 3b20 2f64 6576 2f6e 756c 6c20 293b 207d  ; /dev/null ); }
│ │ │ -001b4be0: 3b20 7468 656e 0a0a 6675 6e63 7469 6f6e  ; then..function
│ │ │ -001b4bf0: 2070 6572 666f 726d 5f72 656d 6564 6961   perform_remedia
│ │ │ -001b4c00: 7469 6f6e 207b 0a0a 2020 2020 0a20 2020  tion {..    .   
│ │ │ -001b4c10: 2020 2020 2023 2074 6865 206d 6f75 6e74       # the mount
│ │ │ -001b4c20: 2070 6f69 6e74 202f 7661 722f 6c6f 6720   point /var/log 
│ │ │ -001b4c30: 6861 7320 746f 2062 6520 6465 6669 6e65  has to be define
│ │ │ -001b4c40: 6420 696e 202f 6574 632f 6673 7461 620a  d in /etc/fstab.
│ │ │ -001b4c50: 2020 2020 2020 2020 2320 6265 666f 7265          # before
│ │ │ -001b4c60: 2074 6869 7320 7265 6d65 6469 6174 696f   this remediatio
│ │ │ -001b4c70: 6e20 6361 6e20 6265 2065 7865 6375 7465  n can be execute
│ │ │ -001b4c80: 642e 2049 6e20 6361 7365 2069 7420 6973  d. In case it is
│ │ │ -001b4c90: 206e 6f74 2064 6566 696e 6564 2c20 7468   not defined, th
│ │ │ -001b4ca0: 650a 2020 2020 2020 2020 2320 7265 6d65  e.        # reme
│ │ │ -001b4cb0: 6469 6174 696f 6e20 6162 6f72 7473 2061  diation aborts a
│ │ │ -001b4cc0: 6e64 206e 6f20 6368 616e 6765 7320 7265  nd no changes re
│ │ │ -001b4cd0: 6761 7264 696e 6720 7468 6520 6d6f 756e  garding the moun
│ │ │ -001b4ce0: 7420 706f 696e 7420 6172 6520 646f 6e65  t point are done
│ │ │ -001b4cf0: 2e0a 2020 2020 2020 2020 6d6f 756e 745f  ..        mount_
│ │ │ -001b4d00: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ -001b4d10: 7870 3d22 2428 7072 696e 7466 2022 5e5b  xp="$(printf "^[
│ │ │ -001b4d20: 5b3a 7370 6163 653a 5d5d 2a5b 5e23 5d2e  [:space:]]*[^#].
│ │ │ -001b4d30: 2a5b 5b3a 7370 6163 653a 5d5d 2573 5b5b  *[[:space:]]%s[[
│ │ │ -001b4d40: 3a73 7061 6365 3a5d 5d22 2022 2f76 6172  :space:]]" "/var
│ │ │ -001b4d50: 2f6c 6f67 2229 220a 0a20 2020 2067 7265  /log")"..    gre
│ │ │ -001b4d60: 7020 2224 6d6f 756e 745f 706f 696e 745f  p "$mount_point_
│ │ │ -001b4d70: 6d61 7463 685f 7265 6765 7870 2220 2d71  match_regexp" -q
│ │ │ -001b4d80: 202f 6574 632f 6673 7461 6220 5c0a 2020   /etc/fstab \.  
│ │ │ -001b4d90: 2020 2020 2020 7c7c 207b 2065 6368 6f20        || { echo 
│ │ │ -001b4da0: 2254 6865 206d 6f75 6e74 2070 6f69 6e74  "The mount point
│ │ │ -001b4db0: 2027 2f76 6172 2f6c 6f67 2720 6973 206e   '/var/log' is n
│ │ │ -001b4dc0: 6f74 2065 7665 6e20 696e 202f 6574 632f  ot even in /etc/
│ │ │ -001b4dd0: 6673 7461 622c 2073 6f20 7765 2063 616e  fstab, so we can
│ │ │ -001b4de0: 2774 2073 6574 2075 7020 6d6f 756e 7420  't set up mount 
│ │ │ -001b4df0: 6f70 7469 6f6e 7322 2026 6774 3b26 616d  options" >&am
│ │ │ -001b4e00: 703b 323b 0a20 2020 2020 2020 2020 2020  p;2;.           
│ │ │ -001b4e10: 2020 2020 2065 6368 6f20 224e 6f74 2072       echo "Not r
│ │ │ -001b4e20: 656d 6564 6961 7469 6e67 2c20 6265 6361  emediating, beca
│ │ │ -001b4e30: 7573 6520 7468 6572 6520 6973 206e 6f20  use there is no 
│ │ │ -001b4e40: 7265 636f 7264 206f 6620 2f76 6172 2f6c  record of /var/l
│ │ │ -001b4e50: 6f67 2069 6e20 2f65 7463 2f66 7374 6162  og in /etc/fstab
│ │ │ -001b4e60: 2220 2667 743b 2661 6d70 3b32 3b20 7265  " >&2; re
│ │ │ -001b4e70: 7475 726e 2031 3b20 7d0a 2020 2020 0a0a  turn 1; }.    ..
│ │ │ -001b4e80: 0a20 2020 206d 6f75 6e74 5f70 6f69 6e74  .    mount_point
│ │ │ -001b4e90: 5f6d 6174 6368 5f72 6567 6578 703d 2224  _match_regexp="$
│ │ │ -001b4ea0: 2870 7269 6e74 6620 225e 5b5b 3a73 7061  (printf "^[[:spa
│ │ │ -001b4eb0: 6365 3a5d 5d2a 5b5e 235d 2e2a 5b5b 3a73  ce:]]*[^#].*[[:s
│ │ │ -001b4ec0: 7061 6365 3a5d 5d25 735b 5b3a 7370 6163  pace:]]%s[[:spac
│ │ │ -001b4ed0: 653a 5d5d 2220 2f76 6172 2f6c 6f67 2922  e:]]" /var/log)"
│ │ │ -001b4ee0: 0a0a 2020 2020 2320 4966 2074 6865 206d  ..    # If the m
│ │ │ -001b4ef0: 6f75 6e74 2070 6f69 6e74 2069 7320 6e6f  ount point is no
│ │ │ -001b4f00: 7420 696e 202f 6574 632f 6673 7461 622c  t in /etc/fstab,
│ │ │ -001b4f10: 2067 6574 2070 7265 7669 6f75 7320 6d6f   get previous mo
│ │ │ -001b4f20: 756e 7420 6f70 7469 6f6e 7320 6672 6f6d  unt options from
│ │ │ -001b4f30: 202f 6574 632f 6d74 6162 0a20 2020 2069   /etc/mtab.    i
│ │ │ -001b4f40: 6620 2120 6772 6570 202d 7120 2224 6d6f  f ! grep -q "$mo
│ │ │ -001b4f50: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ -001b4f60: 7265 6765 7870 2220 2f65 7463 2f66 7374  regexp" /etc/fst
│ │ │ -001b4f70: 6162 3b20 7468 656e 0a20 2020 2020 2020  ab; then.       
│ │ │ -001b4f80: 2023 2072 756e 7469 6d65 206f 7074 7320   # runtime opts 
│ │ │ -001b4f90: 7769 7468 6f75 7420 736f 6d65 2061 7574  without some aut
│ │ │ -001b4fa0: 6f6d 6174 6963 206b 6572 6e65 6c2f 7573  omatic kernel/us
│ │ │ -001b4fb0: 6572 7370 6163 652d 6164 6465 6420 6465  erspace-added de
│ │ │ -001b4fc0: 6661 756c 7473 0a20 2020 2020 2020 2070  faults.        p
│ │ │ -001b4fd0: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ -001b4fe0: 7473 3d24 2867 7265 7020 2224 6d6f 756e  ts=$(grep "$moun
│ │ │ -001b4ff0: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ -001b5000: 6765 7870 2220 2f65 7463 2f6d 7461 6220  gexp" /etc/mtab 
│ │ │ -001b5010: 7c20 6865 6164 202d 3120 7c20 2061 776b  | head -1 |  awk
│ │ │ -001b5020: 2027 7b70 7269 6e74 2024 347d 2720 5c0a   '{print $4}' \.
│ │ │ -001b5030: 2020 2020 2020 2020 2020 2020 2020 2020                  
│ │ │ -001b5040: 2020 2020 7c20 7365 6420 2d45 2022 732f      | sed -E "s/
│ │ │ -001b5050: 2872 777c 6465 6661 756c 7473 7c73 6563  (rw|defaults|sec
│ │ │ -001b5060: 6c61 6265 6c7c 6e6f 6465 7629 282c 7c24  label|nodev)(,|$
│ │ │ -001b5070: 292f 2f67 3b73 2f2c 242f 2f22 290a 2020  )//g;s/,$//").  
│ │ │ -001b5080: 2020 2020 2020 5b20 2224 7072 6576 696f        [ "$previo
│ │ │ -001b5090: 7573 5f6d 6f75 6e74 5f6f 7074 7322 205d  us_mount_opts" ]
│ │ │ -001b50a0: 2026 616d 703b 2661 6d70 3b20 7072 6576   && prev
│ │ │ -001b50b0: 696f 7573 5f6d 6f75 6e74 5f6f 7074 732b  ious_mount_opts+
│ │ │ -001b50c0: 3d22 2c22 0a20 2020 2020 2020 2023 2049  =",".        # I
│ │ │ -001b50d0: 6e20 6973 6f39 3636 3020 6669 6c65 7379  n iso9660 filesy
│ │ │ -001b50e0: 7374 656d 7320 6d74 6162 2063 6f75 6c64  stems mtab could
│ │ │ -001b50f0: 2064 6573 6372 6962 6520 6120 2262 6c6f   describe a "blo
│ │ │ -001b5100: 636b 7369 7a65 2220 7661 6c75 652c 2074  cksize" value, t
│ │ │ -001b5110: 6869 7320 7368 6f75 6c64 2062 6520 7265  his should be re
│ │ │ -001b5120: 666c 6563 7465 6420 696e 0a20 2020 2020  flected in.     
│ │ │ -001b5130: 2020 2023 2066 7374 6162 2061 7320 2262     # fstab as "b
│ │ │ -001b5140: 6c6f 636b 222e 2020 5468 6520 6e65 7874  lock".  The next
│ │ │ -001b5150: 2076 6172 6961 626c 6520 6973 2074 6f20   variable is to 
│ │ │ -001b5160: 7361 7469 7366 7920 7368 656c 6c63 6865  satisfy shellche
│ │ │ -001b5170: 636b 2053 4332 3035 302e 0a20 2020 2020  ck SC2050..     
│ │ │ -001b5180: 2020 2066 735f 7479 7065 3d22 220a 2020     fs_type="".  
│ │ │ -001b5190: 2020 2020 2020 6966 205b 2020 2224 6673        if [  "$fs
│ │ │ -001b51a0: 5f74 7970 6522 203d 3d20 2269 736f 3936  _type" == "iso96
│ │ │ -001b51b0: 3630 2220 5d20 3b20 7468 656e 0a20 2020  60" ] ; then.   
│ │ │ -001b51c0: 2020 2020 2020 2020 2070 7265 7669 6f75           previou
│ │ │ -001b51d0: 735f 6d6f 756e 745f 6f70 7473 3d24 2873  s_mount_opts=$(s
│ │ │ -001b51e0: 6564 2027 732f 626c 6f63 6b73 697a 653d  ed 's/blocksize=
│ │ │ -001b51f0: 2f62 6c6f 636b 3d2f 2720 266c 743b 266c  /block=/' <&l
│ │ │ -001b5200: 743b 266c 743b 2022 2470 7265 7669 6f75  t;< "$previou
│ │ │ -001b5210: 735f 6d6f 756e 745f 6f70 7473 2229 0a20  s_mount_opts"). 
│ │ │ -001b5220: 2020 2020 2020 2066 690a 2020 2020 2020         fi.      
│ │ │ -001b5230: 2020 6563 686f 2022 202f 7661 722f 6c6f    echo " /var/lo
│ │ │ -001b5240: 6720 2064 6566 6175 6c74 732c 247b 7072  g  defaults,${pr
│ │ │ -001b5250: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ -001b5260: 737d 6e6f 6465 7620 3020 3022 2026 6774  s}nodev 0 0" >
│ │ │ -001b5270: 3b26 6774 3b20 2f65 7463 2f66 7374 6162  ;> /etc/fstab
│ │ │ -001b5280: 0a20 2020 2023 2049 6620 7468 6520 6d6f  .    # If the mo
│ │ │ -001b5290: 756e 745f 6f70 7420 6f70 7469 6f6e 2069  unt_opt option i
│ │ │ -001b52a0: 7320 6e6f 7420 616c 7265 6164 7920 696e  s not already in
│ │ │ -001b52b0: 2074 6865 206d 6f75 6e74 2070 6f69 6e74   the mount point
│ │ │ -001b52c0: 2773 202f 6574 632f 6673 7461 6220 656e  's /etc/fstab en
│ │ │ -001b52d0: 7472 792c 2061 6464 2069 740a 2020 2020  try, add it.    
│ │ │ -001b52e0: 656c 6966 2021 2067 7265 7020 2224 6d6f  elif ! grep "$mo
│ │ │ -001b52f0: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ -001b5300: 7265 6765 7870 2220 2f65 7463 2f66 7374  regexp" /etc/fst
│ │ │ -001b5310: 6162 207c 2067 7265 7020 2d71 2022 6e6f  ab | grep -q "no
│ │ │ -001b5320: 6465 7622 3b20 7468 656e 0a20 2020 2020  dev"; then.     
│ │ │ -001b5330: 2020 2070 7265 7669 6f75 735f 6d6f 756e     previous_moun
│ │ │ -001b5340: 745f 6f70 7473 3d24 2867 7265 7020 2224  t_opts=$(grep "$
│ │ │ -001b5350: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ -001b5360: 685f 7265 6765 7870 2220 2f65 7463 2f66  h_regexp" /etc/f
│ │ │ -001b5370: 7374 6162 207c 2061 776b 2027 7b70 7269  stab | awk '{pri
│ │ │ -001b5380: 6e74 2024 347d 2729 0a20 2020 2020 2020  nt $4}').       
│ │ │ -001b5390: 2073 6564 202d 6920 2273 7c5c 2824 7b6d   sed -i "s|\(${m
│ │ │ -001b53a0: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ -001b53b0: 5f72 6567 6578 707d 2e2a 247b 7072 6576  _regexp}.*${prev
│ │ │ -001b53c0: 696f 7573 5f6d 6f75 6e74 5f6f 7074 737d  ious_mount_opts}
│ │ │ -001b53d0: 5c29 7c5c 312c 6e6f 6465 767c 2220 2f65  \)|\1,nodev|" /e
│ │ │ -001b53e0: 7463 2f66 7374 6162 0a20 2020 2066 690a  tc/fstab.    fi.
│ │ │ -001b53f0: 0a0a 2020 2020 6966 206d 6b64 6972 202d  ..    if mkdir -
│ │ │ -001b5400: 7020 222f 7661 722f 6c6f 6722 3b20 7468  p "/var/log"; th
│ │ │ -001b5410: 656e 0a20 2020 2020 2020 2069 6620 6d6f  en.        if mo
│ │ │ -001b5420: 756e 7470 6f69 6e74 202d 7120 222f 7661  untpoint -q "/va
│ │ │ -001b5430: 722f 6c6f 6722 3b20 7468 656e 0a20 2020  r/log"; then.   
│ │ │ -001b5440: 2020 2020 2020 2020 206d 6f75 6e74 202d           mount -
│ │ │ -001b5450: 6f20 7265 6d6f 756e 7420 2d2d 7461 7267  o remount --targ
│ │ │ -001b5460: 6574 2022 2f76 6172 2f6c 6f67 220a 2020  et "/var/log".  
│ │ │ -001b5470: 2020 2020 2020 6669 0a20 2020 2066 690a        fi.    fi.
│ │ │ -001b5480: 7d0a 0a70 6572 666f 726d 5f72 656d 6564  }..perform_remed
│ │ │ -001b5490: 6961 7469 6f6e 0a0a 656c 7365 0a20 2020  iation..else.   
│ │ │ -001b54a0: 2026 6774 3b26 616d 703b 3220 6563 686f   >&2 echo
│ │ │ -001b54b0: 2027 5265 6d65 6469 6174 696f 6e20 6973   'Remediation is
│ │ │ -001b54c0: 206e 6f74 2061 7070 6c69 6361 626c 652c   not applicable,
│ │ │ -001b54d0: 206e 6f74 6869 6e67 2077 6173 2064 6f6e   nothing was don
│ │ │ -001b54e0: 6527 0a66 690a 3c2f 636f 6465 3e3c 2f70  e'.fi.


< │ │ │ +001b2fd0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +001b2fe0: 3c74 723e 3c74 683e 4469 7372 7570 7469 Reboot:false
- name: Gather 
│ │ │ +001b3080: 7468 6520 7061 636b 6167 6520 6661 6374  the package fact
│ │ │ +001b3090: 730a 2020 7061 636b 6167 655f 6661 6374  s.  package_fact
│ │ │ +001b30a0: 733a 0a20 2020 206d 616e 6167 6572 3a20  s:.    manager: 
│ │ │ +001b30b0: 6175 746f 0a20 2074 6167 733a 0a20 202d  auto.  tags:.  -
│ │ │ +001b30c0: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ +001b30d0: 360a 2020 2d20 4e49 5354 2d38 3030 2d35  6.  - NIST-800-5
│ │ │ +001b30e0: 332d 4143 2d36 2831 290a 2020 2d20 4e49  3-AC-6(1).  - NI
│ │ │ +001b30f0: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ +001b3100: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001b3110: 332d 434d 2d37 2861 290a 2020 2d20 4e49  3-CM-7(a).  - NI
│ │ │ +001b3120: 5354 2d38 3030 2d35 332d 434d 2d37 2862  ST-800-53-CM-7(b
│ │ │ +001b3130: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001b3140: 332d 4d50 2d37 0a20 202d 2063 6f6e 6669  3-MP-7.  - confi
│ │ │ +001b3150: 6775 7265 5f73 7472 6174 6567 790a 2020  gure_strategy.  
│ │ │ +001b3160: 2d20 6869 6768 5f64 6973 7275 7074 696f  - high_disruptio
│ │ │ +001b3170: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65  n.  - low_comple
│ │ │ +001b3180: 7869 7479 0a20 202d 206d 6564 6975 6d5f  xity.  - medium_
│ │ │ +001b3190: 7365 7665 7269 7479 0a20 202d 206d 6f75  severity.  - mou
│ │ │ +001b31a0: 6e74 5f6f 7074 696f 6e5f 7661 725f 6c6f  nt_option_var_lo
│ │ │ +001b31b0: 675f 6e6f 6465 760a 2020 2d20 6e6f 5f72  g_nodev.  - no_r
│ │ │ +001b31c0: 6562 6f6f 745f 6e65 6564 6564 0a0a 2d20  eboot_needed..- 
│ │ │ +001b31d0: 6e61 6d65 3a20 2741 6464 206e 6f64 6576  name: 'Add nodev
│ │ │ +001b31e0: 204f 7074 696f 6e20 746f 202f 7661 722f   Option to /var/
│ │ │ +001b31f0: 6c6f 673a 2043 6865 636b 2069 6e66 6f72  log: Check infor
│ │ │ +001b3200: 6d61 7469 6f6e 2061 7373 6f63 6961 7465  mation associate
│ │ │ +001b3210: 6420 746f 206d 6f75 6e74 706f 696e 7427  d to mountpoint'
│ │ │ +001b3220: 0a20 2061 6e73 6962 6c65 2e62 7569 6c74  .  ansible.built
│ │ │ +001b3230: 696e 2e63 6f6d 6d61 6e64 3a20 6669 6e64  in.command: find
│ │ │ +001b3240: 6d6e 7420 2d2d 6673 7461 6220 272f 7661  mnt --fstab '/va
│ │ │ +001b3250: 722f 6c6f 6727 0a20 2072 6567 6973 7465  r/log'.  registe
│ │ │ +001b3260: 723a 2064 6576 6963 655f 6e61 6d65 0a20  r: device_name. 
│ │ │ +001b3270: 2066 6169 6c65 645f 7768 656e 3a20 6465   failed_when: de
│ │ │ +001b3280: 7669 6365 5f6e 616d 652e 7263 2026 6774  vice_name.rc >
│ │ │ +001b3290: 3b20 310a 2020 6368 616e 6765 645f 7768  ; 1.  changed_wh
│ │ │ +001b32a0: 656e 3a20 6661 6c73 650a 2020 6368 6563  en: false.  chec
│ │ │ +001b32b0: 6b5f 6d6f 6465 3a20 6661 6c73 650a 2020  k_mode: false.  
│ │ │ +001b32c0: 7768 656e 3a0a 2020 2d20 2820 6e6f 7420  when:.  - ( not 
│ │ │ +001b32d0: 2820 226b 6572 6e65 6c22 2069 6e20 616e  ( "kernel" in an
│ │ │ +001b32e0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001b32f0: 6167 6573 2061 6e64 2022 626f 6f74 6322  ages and "bootc"
│ │ │ +001b3300: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001b3310: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ +001b3320: 6e64 206e 6f74 2022 6f70 656e 7368 6966  nd not "openshif
│ │ │ +001b3330: 742d 6b75 6265 6c65 7422 2069 6e20 616e  t-kubelet" in an
│ │ │ +001b3340: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001b3350: 6167 6573 2061 6e64 2022 6f73 7472 6565  ages and "ostree
│ │ │ +001b3360: 2220 696e 2061 6e73 6962 6c65 5f70 726f  " in ansible_pro
│ │ │ +001b3370: 635f 636d 646c 696e 650a 2020 2020 2920  c_cmdline.    ) 
│ │ │ +001b3380: 616e 6420 6e6f 7420 2820 616e 7369 626c  and not ( ansibl
│ │ │ +001b3390: 655f 7669 7274 7561 6c69 7a61 7469 6f6e  e_virtualization
│ │ │ +001b33a0: 5f74 7970 6520 696e 205b 2264 6f63 6b65  _type in ["docke
│ │ │ +001b33b0: 7222 2c20 226c 7863 222c 2022 6f70 656e  r", "lxc", "open
│ │ │ +001b33c0: 767a 222c 2022 706f 646d 616e 222c 0a20  vz", "podman",. 
│ │ │ +001b33d0: 2020 2022 636f 6e74 6169 6e65 7222 5d20     "container"] 
│ │ │ +001b33e0: 2920 290a 2020 2d20 2722 2f76 6172 2f6c  ) ).  - '"/var/l
│ │ │ +001b33f0: 6f67 2220 696e 2061 6e73 6962 6c65 5f6d  og" in ansible_m
│ │ │ +001b3400: 6f75 6e74 7320 7c20 6d61 7028 6174 7472  ounts | map(attr
│ │ │ +001b3410: 6962 7574 653d 226d 6f75 6e74 2229 207c  ibute="mount") |
│ │ │ +001b3420: 206c 6973 7427 0a20 2074 6167 733a 0a20   list'.  tags:. 
│ │ │ +001b3430: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ +001b3440: 432d 360a 2020 2d20 4e49 5354 2d38 3030  C-6.  - NIST-800
│ │ │ +001b3450: 2d35 332d 4143 2d36 2831 290a 2020 2d20  -53-AC-6(1).  - 
│ │ │ +001b3460: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ +001b3470: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ +001b3480: 2d35 332d 434d 2d37 2861 290a 2020 2d20  -53-CM-7(a).  - 
│ │ │ +001b3490: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ +001b34a0: 2862 290a 2020 2d20 4e49 5354 2d38 3030  (b).  - NIST-800
│ │ │ +001b34b0: 2d35 332d 4d50 2d37 0a20 202d 2063 6f6e  -53-MP-7.  - con
│ │ │ +001b34c0: 6669 6775 7265 5f73 7472 6174 6567 790a  figure_strategy.
│ │ │ +001b34d0: 2020 2d20 6869 6768 5f64 6973 7275 7074    - high_disrupt
│ │ │ +001b34e0: 696f 6e0a 2020 2d20 6c6f 775f 636f 6d70  ion.  - low_comp
│ │ │ +001b34f0: 6c65 7869 7479 0a20 202d 206d 6564 6975  lexity.  - mediu
│ │ │ +001b3500: 6d5f 7365 7665 7269 7479 0a20 202d 206d  m_severity.  - m
│ │ │ +001b3510: 6f75 6e74 5f6f 7074 696f 6e5f 7661 725f  ount_option_var_
│ │ │ +001b3520: 6c6f 675f 6e6f 6465 760a 2020 2d20 6e6f  log_nodev.  - no
│ │ │ +001b3530: 5f72 6562 6f6f 745f 6e65 6564 6564 0a0a  _reboot_needed..
│ │ │ +001b3540: 2d20 6e61 6d65 3a20 2741 6464 206e 6f64  - name: 'Add nod
│ │ │ +001b3550: 6576 204f 7074 696f 6e20 746f 202f 7661  ev Option to /va
│ │ │ +001b3560: 722f 6c6f 673a 2043 7265 6174 6520 6d6f  r/log: Create mo
│ │ │ +001b3570: 756e 745f 696e 666f 2064 6963 7469 6f6e  unt_info diction
│ │ │ +001b3580: 6172 7920 7661 7269 6162 6c65 270a 2020  ary variable'.  
│ │ │ +001b3590: 7365 745f 6661 6374 3a0a 2020 2020 6d6f  set_fact:.    mo
│ │ │ +001b35a0: 756e 745f 696e 666f 3a20 277b 7b20 6d6f  unt_info: '{{ mo
│ │ │ +001b35b0: 756e 745f 696e 666f 7c64 6566 6175 6c74  unt_info|default
│ │ │ +001b35c0: 287b 7d29 7c63 6f6d 6269 6e65 287b 6974  ({})|combine({it
│ │ │ +001b35d0: 656d 2e30 3a20 6974 656d 2e31 7d29 207d  em.0: item.1}) }
│ │ │ +001b35e0: 7d27 0a20 2077 6974 685f 746f 6765 7468  }'.  with_togeth
│ │ │ +001b35f0: 6572 3a0a 2020 2d20 277b 7b20 6465 7669  er:.  - '{{ devi
│ │ │ +001b3600: 6365 5f6e 616d 652e 7374 646f 7574 5f6c  ce_name.stdout_l
│ │ │ +001b3610: 696e 6573 5b30 5d2e 7370 6c69 7428 2920  ines[0].split() 
│ │ │ +001b3620: 7c20 6d61 7028 2727 6c6f 7765 7227 2729  | map(''lower'')
│ │ │ +001b3630: 207c 206c 6973 7420 7d7d 270a 2020 2d20   | list }}'.  - 
│ │ │ +001b3640: 277b 7b20 6465 7669 6365 5f6e 616d 652e  '{{ device_name.
│ │ │ +001b3650: 7374 646f 7574 5f6c 696e 6573 5b31 5d2e  stdout_lines[1].
│ │ │ +001b3660: 7370 6c69 7428 2920 7c20 6c69 7374 207d  split() | list }
│ │ │ +001b3670: 7d27 0a20 2077 6865 6e3a 0a20 202d 2028  }'.  when:.  - (
│ │ │ +001b3680: 206e 6f74 2028 2022 6b65 726e 656c 2220   not ( "kernel" 
│ │ │ +001b3690: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001b36a0: 2e70 6163 6b61 6765 7320 616e 6420 2262  .packages and "b
│ │ │ +001b36b0: 6f6f 7463 2220 696e 2061 6e73 6962 6c65  ootc" in ansible
│ │ │ +001b36c0: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ +001b36d0: 2020 2020 616e 6420 6e6f 7420 226f 7065      and not "ope
│ │ │ +001b36e0: 6e73 6869 6674 2d6b 7562 656c 6574 2220  nshift-kubelet" 
│ │ │ +001b36f0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001b3700: 2e70 6163 6b61 6765 7320 616e 6420 226f  .packages and "o
│ │ │ +001b3710: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ +001b3720: 655f 7072 6f63 5f63 6d64 6c69 6e65 0a20  e_proc_cmdline. 
│ │ │ +001b3730: 2020 2029 2061 6e64 206e 6f74 2028 2061     ) and not ( a
│ │ │ +001b3740: 6e73 6962 6c65 5f76 6972 7475 616c 697a  nsible_virtualiz
│ │ │ +001b3750: 6174 696f 6e5f 7479 7065 2069 6e20 5b22  ation_type in ["
│ │ │ +001b3760: 646f 636b 6572 222c 2022 6c78 6322 2c20  docker", "lxc", 
│ │ │ +001b3770: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61  "openvz", "podma
│ │ │ +001b3780: 6e22 2c0a 2020 2020 2263 6f6e 7461 696e  n",.    "contain
│ │ │ +001b3790: 6572 225d 2029 2029 0a20 202d 2027 222f  er"] ) ).  - '"/
│ │ │ +001b37a0: 7661 722f 6c6f 6722 2069 6e20 616e 7369  var/log" in ansi
│ │ │ +001b37b0: 626c 655f 6d6f 756e 7473 207c 206d 6170  ble_mounts | map
│ │ │ +001b37c0: 2861 7474 7269 6275 7465 3d22 6d6f 756e  (attribute="moun
│ │ │ +001b37d0: 7422 2920 7c20 6c69 7374 270a 2020 2d20  t") | list'.  - 
│ │ │ +001b37e0: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ +001b37f0: 7574 2069 7320 6465 6669 6e65 6420 616e  ut is defined an
│ │ │ +001b3800: 6420 6465 7669 6365 5f6e 616d 652e 7374  d device_name.st
│ │ │ +001b3810: 646f 7574 5f6c 696e 6573 2069 7320 6465  dout_lines is de
│ │ │ +001b3820: 6669 6e65 640a 2020 2d20 2864 6576 6963  fined.  - (devic
│ │ │ +001b3830: 655f 6e61 6d65 2e73 7464 6f75 7420 7c20  e_name.stdout | 
│ │ │ +001b3840: 6c65 6e67 7468 2026 6774 3b20 3029 0a20  length > 0). 
│ │ │ +001b3850: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ +001b3860: 3830 302d 3533 2d41 432d 360a 2020 2d20  800-53-AC-6.  - 
│ │ │ +001b3870: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ +001b3880: 2831 290a 2020 2d20 4e49 5354 2d38 3030  (1).  - NIST-800
│ │ │ +001b3890: 2d35 332d 434d 2d36 2861 290a 2020 2d20  -53-CM-6(a).  - 
│ │ │ +001b38a0: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ +001b38b0: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ +001b38c0: 2d35 332d 434d 2d37 2862 290a 2020 2d20  -53-CM-7(b).  - 
│ │ │ +001b38d0: 4e49 5354 2d38 3030 2d35 332d 4d50 2d37  NIST-800-53-MP-7
│ │ │ +001b38e0: 0a20 202d 2063 6f6e 6669 6775 7265 5f73  .  - configure_s
│ │ │ +001b38f0: 7472 6174 6567 790a 2020 2d20 6869 6768  trategy.  - high
│ │ │ +001b3900: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +001b3910: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ +001b3920: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ +001b3930: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074  ty.  - mount_opt
│ │ │ +001b3940: 696f 6e5f 7661 725f 6c6f 675f 6e6f 6465  ion_var_log_node
│ │ │ +001b3950: 760a 2020 2d20 6e6f 5f72 6562 6f6f 745f  v.  - no_reboot_
│ │ │ +001b3960: 6e65 6564 6564 0a0a 2d20 6e61 6d65 3a20  needed..- name: 
│ │ │ +001b3970: 2741 6464 206e 6f64 6576 204f 7074 696f  'Add nodev Optio
│ │ │ +001b3980: 6e20 746f 202f 7661 722f 6c6f 673a 2049  n to /var/log: I
│ │ │ +001b3990: 6620 2f76 6172 2f6c 6f67 206e 6f74 206d  f /var/log not m
│ │ │ +001b39a0: 6f75 6e74 6564 2c20 6372 6166 7420 6d6f  ounted, craft mo
│ │ │ +001b39b0: 756e 745f 696e 666f 206d 616e 7561 6c6c  unt_info manuall
│ │ │ +001b39c0: 7927 0a20 2073 6574 5f66 6163 743a 0a20  y'.  set_fact:. 
│ │ │ +001b39d0: 2020 206d 6f75 6e74 5f69 6e66 6f3a 2027     mount_info: '
│ │ │ +001b39e0: 7b7b 206d 6f75 6e74 5f69 6e66 6f7c 6465  {{ mount_info|de
│ │ │ +001b39f0: 6661 756c 7428 7b7d 297c 636f 6d62 696e  fault({})|combin
│ │ │ +001b3a00: 6528 7b69 7465 6d2e 303a 2069 7465 6d2e  e({item.0: item.
│ │ │ +001b3a10: 317d 2920 7d7d 270a 2020 7769 7468 5f74  1}) }}'.  with_t
│ │ │ +001b3a20: 6f67 6574 6865 723a 0a20 202d 202d 2074  ogether:.  - - t
│ │ │ +001b3a30: 6172 6765 740a 2020 2020 2d20 736f 7572  arget.    - sour
│ │ │ +001b3a40: 6365 0a20 2020 202d 2066 7374 7970 650a  ce.    - fstype.
│ │ │ +001b3a50: 2020 2020 2d20 6f70 7469 6f6e 730a 2020      - options.  
│ │ │ +001b3a60: 2d20 2d20 2f76 6172 2f6c 6f67 0a20 2020  - - /var/log.   
│ │ │ +001b3a70: 202d 2027 270a 2020 2020 2d20 2727 0a20   - ''.    - ''. 
│ │ │ +001b3a80: 2020 202d 2064 6566 6175 6c74 730a 2020     - defaults.  
│ │ │ +001b3a90: 7768 656e 3a0a 2020 2d20 2820 6e6f 7420  when:.  - ( not 
│ │ │ +001b3aa0: 2820 226b 6572 6e65 6c22 2069 6e20 616e  ( "kernel" in an
│ │ │ +001b3ab0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001b3ac0: 6167 6573 2061 6e64 2022 626f 6f74 6322  ages and "bootc"
│ │ │ +001b3ad0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001b3ae0: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ +001b3af0: 6e64 206e 6f74 2022 6f70 656e 7368 6966  nd not "openshif
│ │ │ +001b3b00: 742d 6b75 6265 6c65 7422 2069 6e20 616e  t-kubelet" in an
│ │ │ +001b3b10: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001b3b20: 6167 6573 2061 6e64 2022 6f73 7472 6565  ages and "ostree
│ │ │ +001b3b30: 2220 696e 2061 6e73 6962 6c65 5f70 726f  " in ansible_pro
│ │ │ +001b3b40: 635f 636d 646c 696e 650a 2020 2020 2920  c_cmdline.    ) 
│ │ │ +001b3b50: 616e 6420 6e6f 7420 2820 616e 7369 626c  and not ( ansibl
│ │ │ +001b3b60: 655f 7669 7274 7561 6c69 7a61 7469 6f6e  e_virtualization
│ │ │ +001b3b70: 5f74 7970 6520 696e 205b 2264 6f63 6b65  _type in ["docke
│ │ │ +001b3b80: 7222 2c20 226c 7863 222c 2022 6f70 656e  r", "lxc", "open
│ │ │ +001b3b90: 767a 222c 2022 706f 646d 616e 222c 0a20  vz", "podman",. 
│ │ │ +001b3ba0: 2020 2022 636f 6e74 6169 6e65 7222 5d20     "container"] 
│ │ │ +001b3bb0: 2920 290a 2020 2d20 2722 2f76 6172 2f6c  ) ).  - '"/var/l
│ │ │ +001b3bc0: 6f67 2220 696e 2061 6e73 6962 6c65 5f6d  og" in ansible_m
│ │ │ +001b3bd0: 6f75 6e74 7320 7c20 6d61 7028 6174 7472  ounts | map(attr
│ │ │ +001b3be0: 6962 7574 653d 226d 6f75 6e74 2229 207c  ibute="mount") |
│ │ │ +001b3bf0: 206c 6973 7427 0a20 202d 2028 222d 2d66   list'.  - ("--f
│ │ │ +001b3c00: 7374 6162 2220 7c20 6c65 6e67 7468 203d  stab" | length =
│ │ │ +001b3c10: 3d20 3029 0a20 202d 2064 6576 6963 655f  = 0).  - device_
│ │ │ +001b3c20: 6e61 6d65 2e73 7464 6f75 7420 6973 2064  name.stdout is d
│ │ │ +001b3c30: 6566 696e 6564 2061 6e64 2064 6576 6963  efined and devic
│ │ │ +001b3c40: 655f 6e61 6d65 2e73 7464 6f75 745f 6c69  e_name.stdout_li
│ │ │ +001b3c50: 6e65 7320 6973 2064 6566 696e 6564 0a20  nes is defined. 
│ │ │ +001b3c60: 202d 2028 6465 7669 6365 5f6e 616d 652e   - (device_name.
│ │ │ +001b3c70: 7374 646f 7574 207c 206c 656e 6774 6820  stdout | length 
│ │ │ +001b3c80: 3d3d 2030 290a 2020 7461 6773 3a0a 2020  == 0).  tags:.  
│ │ │ +001b3c90: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ +001b3ca0: 2d36 0a20 202d 204e 4953 542d 3830 302d  -6.  - NIST-800-
│ │ │ +001b3cb0: 3533 2d41 432d 3628 3129 0a20 202d 204e  53-AC-6(1).  - N
│ │ │ +001b3cc0: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ +001b3cd0: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ +001b3ce0: 3533 2d43 4d2d 3728 6129 0a20 202d 204e  53-CM-7(a).  - N
│ │ │ +001b3cf0: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ +001b3d00: 6229 0a20 202d 204e 4953 542d 3830 302d  b).  - NIST-800-
│ │ │ +001b3d10: 3533 2d4d 502d 370a 2020 2d20 636f 6e66  53-MP-7.  - conf
│ │ │ +001b3d20: 6967 7572 655f 7374 7261 7465 6779 0a20  igure_strategy. 
│ │ │ +001b3d30: 202d 2068 6967 685f 6469 7372 7570 7469   - high_disrupti
│ │ │ +001b3d40: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c  on.  - low_compl
│ │ │ +001b3d50: 6578 6974 790a 2020 2d20 6d65 6469 756d  exity.  - medium
│ │ │ +001b3d60: 5f73 6576 6572 6974 790a 2020 2d20 6d6f  _severity.  - mo
│ │ │ +001b3d70: 756e 745f 6f70 7469 6f6e 5f76 6172 5f6c  unt_option_var_l
│ │ │ +001b3d80: 6f67 5f6e 6f64 6576 0a20 202d 206e 6f5f  og_nodev.  - no_
│ │ │ +001b3d90: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ +001b3da0: 206e 616d 653a 2027 4164 6420 6e6f 6465   name: 'Add node
│ │ │ +001b3db0: 7620 4f70 7469 6f6e 2074 6f20 2f76 6172  v Option to /var
│ │ │ +001b3dc0: 2f6c 6f67 3a20 4d61 6b65 2073 7572 6520  /log: Make sure 
│ │ │ +001b3dd0: 6e6f 6465 7620 6f70 7469 6f6e 2069 7320  nodev option is 
│ │ │ +001b3de0: 7061 7274 206f 6620 7468 6520 746f 202f  part of the to /
│ │ │ +001b3df0: 7661 722f 6c6f 670a 2020 2020 6f70 7469  var/log.    opti
│ │ │ +001b3e00: 6f6e 7327 0a20 2073 6574 5f66 6163 743a  ons'.  set_fact:
│ │ │ +001b3e10: 0a20 2020 206d 6f75 6e74 5f69 6e66 6f3a  .    mount_info:
│ │ │ +001b3e20: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f20   '{{ mount_info 
│ │ │ +001b3e30: 7c20 636f 6d62 696e 6528 207b 2727 6f70  | combine( {''op
│ │ │ +001b3e40: 7469 6f6e 7327 273a 2727 2727 7e28 6d6f  tions'':''''~(mo
│ │ │ +001b3e50: 756e 745f 696e 666f 2e6f 7074 696f 6e73  unt_info.options
│ │ │ +001b3e60: 207c 0a20 2020 2020 2064 6566 6175 6c74   |.      default
│ │ │ +001b3e70: 2827 2727 2729 297e 2827 272c 2727 2069  (''''))~('','' i
│ │ │ +001b3e80: 6620 286d 6f75 6e74 5f69 6e66 6f2e 6f70  f (mount_info.op
│ │ │ +001b3e90: 7469 6f6e 7320 7c20 6465 6661 756c 7428  tions | default(
│ │ │ +001b3ea0: 2727 2727 2929 2065 6c73 6520 2727 2727  '''')) else ''''
│ │ │ +001b3eb0: 297e 2727 6e6f 6465 7627 270a 2020 2020  )~''nodev''.    
│ │ │ +001b3ec0: 2020 7d29 207d 7d27 0a20 2077 6865 6e3a    }) }}'.  when:
│ │ │ +001b3ed0: 0a20 202d 2028 206e 6f74 2028 2022 6b65  .  - ( not ( "ke
│ │ │ +001b3ee0: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ +001b3ef0: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ +001b3f00: 616e 6420 2262 6f6f 7463 2220 696e 2061  and "bootc" in a
│ │ │ +001b3f10: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +001b3f20: 6b61 6765 730a 2020 2020 616e 6420 6e6f  kages.    and no
│ │ │ +001b3f30: 7420 226f 7065 6e73 6869 6674 2d6b 7562  t "openshift-kub
│ │ │ +001b3f40: 656c 6574 2220 696e 2061 6e73 6962 6c65  elet" in ansible
│ │ │ +001b3f50: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ +001b3f60: 616e 6420 226f 7374 7265 6522 2069 6e20  and "ostree" in 
│ │ │ +001b3f70: 616e 7369 626c 655f 7072 6f63 5f63 6d64  ansible_proc_cmd
│ │ │ +001b3f80: 6c69 6e65 0a20 2020 2029 2061 6e64 206e  line.    ) and n
│ │ │ +001b3f90: 6f74 2028 2061 6e73 6962 6c65 5f76 6972  ot ( ansible_vir
│ │ │ +001b3fa0: 7475 616c 697a 6174 696f 6e5f 7479 7065  tualization_type
│ │ │ +001b3fb0: 2069 6e20 5b22 646f 636b 6572 222c 2022   in ["docker", "
│ │ │ +001b3fc0: 6c78 6322 2c20 226f 7065 6e76 7a22 2c20  lxc", "openvz", 
│ │ │ +001b3fd0: 2270 6f64 6d61 6e22 2c0a 2020 2020 2263  "podman",.    "c
│ │ │ +001b3fe0: 6f6e 7461 696e 6572 225d 2029 2029 0a20  ontainer"] ) ). 
│ │ │ +001b3ff0: 202d 2027 222f 7661 722f 6c6f 6722 2069   - '"/var/log" i
│ │ │ +001b4000: 6e20 616e 7369 626c 655f 6d6f 756e 7473  n ansible_mounts
│ │ │ +001b4010: 207c 206d 6170 2861 7474 7269 6275 7465   | map(attribute
│ │ │ +001b4020: 3d22 6d6f 756e 7422 2920 7c20 6c69 7374  ="mount") | list
│ │ │ +001b4030: 270a 2020 2d20 6d6f 756e 745f 696e 666f  '.  - mount_info
│ │ │ +001b4040: 2069 7320 6465 6669 6e65 6420 616e 6420   is defined and 
│ │ │ +001b4050: 226e 6f64 6576 2220 6e6f 7420 696e 2028  "nodev" not in (
│ │ │ +001b4060: 6d6f 756e 745f 696e 666f 2e6f 7074 696f  mount_info.optio
│ │ │ +001b4070: 6e73 207c 2064 6566 6175 6c74 2827 2729  ns | default('')
│ │ │ +001b4080: 290a 2020 7461 6773 3a0a 2020 2d20 4e49  ).  tags:.  - NI
│ │ │ +001b4090: 5354 2d38 3030 2d35 332d 4143 2d36 0a20  ST-800-53-AC-6. 
│ │ │ +001b40a0: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ +001b40b0: 432d 3628 3129 0a20 202d 204e 4953 542d  C-6(1).  - NIST-
│ │ │ +001b40c0: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ +001b40d0: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +001b40e0: 4d2d 3728 6129 0a20 202d 204e 4953 542d  M-7(a).  - NIST-
│ │ │ +001b40f0: 3830 302d 3533 2d43 4d2d 3728 6229 0a20  800-53-CM-7(b). 
│ │ │ +001b4100: 202d 204e 4953 542d 3830 302d 3533 2d4d   - NIST-800-53-M
│ │ │ +001b4110: 502d 370a 2020 2d20 636f 6e66 6967 7572  P-7.  - configur
│ │ │ +001b4120: 655f 7374 7261 7465 6779 0a20 202d 2068  e_strategy.  - h
│ │ │ +001b4130: 6967 685f 6469 7372 7570 7469 6f6e 0a20  igh_disruption. 
│ │ │ +001b4140: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ +001b4150: 790a 2020 2d20 6d65 6469 756d 5f73 6576  y.  - medium_sev
│ │ │ +001b4160: 6572 6974 790a 2020 2d20 6d6f 756e 745f  erity.  - mount_
│ │ │ +001b4170: 6f70 7469 6f6e 5f76 6172 5f6c 6f67 5f6e  option_var_log_n
│ │ │ +001b4180: 6f64 6576 0a20 202d 206e 6f5f 7265 626f  odev.  - no_rebo
│ │ │ +001b4190: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d  ot_needed..- nam
│ │ │ +001b41a0: 653a 2027 4164 6420 6e6f 6465 7620 4f70  e: 'Add nodev Op
│ │ │ +001b41b0: 7469 6f6e 2074 6f20 2f76 6172 2f6c 6f67  tion to /var/log
│ │ │ +001b41c0: 3a20 456e 7375 7265 202f 7661 722f 6c6f  : Ensure /var/lo
│ │ │ +001b41d0: 6720 6973 206d 6f75 6e74 6564 2077 6974  g is mounted wit
│ │ │ +001b41e0: 6820 6e6f 6465 7620 6f70 7469 6f6e 270a  h nodev option'.
│ │ │ +001b41f0: 2020 616e 7369 626c 652e 706f 7369 782e    ansible.posix.
│ │ │ +001b4200: 6d6f 756e 743a 0a20 2020 2070 6174 683a  mount:.    path:
│ │ │ +001b4210: 202f 7661 722f 6c6f 670a 2020 2020 7372   /var/log.    sr
│ │ │ +001b4220: 633a 2027 7b7b 206d 6f75 6e74 5f69 6e66  c: '{{ mount_inf
│ │ │ +001b4230: 6f2e 736f 7572 6365 207c 2064 6566 6175  o.source | defau
│ │ │ +001b4240: 6c74 2827 2727 2729 207d 7d27 0a20 2020  lt('''') }}'.   
│ │ │ +001b4250: 206f 7074 733a 2027 7b7b 206d 6f75 6e74   opts: '{{ mount
│ │ │ +001b4260: 5f69 6e66 6f2e 6f70 7469 6f6e 7320 7c20  _info.options | 
│ │ │ +001b4270: 6465 6661 756c 7428 2727 2727 2920 7d7d  default('''') }}
│ │ │ +001b4280: 270a 2020 2020 7374 6174 653a 206d 6f75  '.    state: mou
│ │ │ +001b4290: 6e74 6564 0a20 2020 2066 7374 7970 653a  nted.    fstype:
│ │ │ +001b42a0: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f2e   '{{ mount_info.
│ │ │ +001b42b0: 6673 7479 7065 207c 2064 6566 6175 6c74  fstype | default
│ │ │ +001b42c0: 2827 2727 2729 207d 7d27 0a20 2072 6567  ('''') }}'.  reg
│ │ │ +001b42d0: 6973 7465 723a 206d 6f75 6e74 5f72 6573  ister: mount_res
│ │ │ +001b42e0: 756c 740a 2020 6661 696c 6564 5f77 6865  ult.  failed_whe
│ │ │ +001b42f0: 6e3a 0a20 202d 206d 6f75 6e74 5f72 6573  n:.  - mount_res
│ │ │ +001b4300: 756c 7420 6973 2066 6169 6c65 640a 2020  ult is failed.  
│ │ │ +001b4310: 2d20 2727 2774 6172 6765 7420 6973 2062  - '''target is b
│ │ │ +001b4320: 7573 7927 2720 6e6f 7420 696e 2028 6d6f  usy'' not in (mo
│ │ │ +001b4330: 756e 745f 7265 7375 6c74 2e6d 7367 207c  unt_result.msg |
│ │ │ +001b4340: 2064 6566 6175 6c74 2827 2727 2729 2927   default(''''))'
│ │ │ +001b4350: 0a20 202d 2027 2727 616c 7265 6164 7920  .  - '''already 
│ │ │ +001b4360: 6d6f 756e 7465 6427 2720 6e6f 7420 696e  mounted'' not in
│ │ │ +001b4370: 2028 6d6f 756e 745f 7265 7375 6c74 2e6d   (mount_result.m
│ │ │ +001b4380: 7367 207c 2064 6566 6175 6c74 2827 2727  sg | default('''
│ │ │ +001b4390: 2729 2927 0a20 2077 6865 6e3a 0a20 202d  '))'.  when:.  -
│ │ │ +001b43a0: 2028 206e 6f74 2028 2022 6b65 726e 656c   ( not ( "kernel
│ │ │ +001b43b0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +001b43c0: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ +001b43d0: 2262 6f6f 7463 2220 696e 2061 6e73 6962  "bootc" in ansib
│ │ │ +001b43e0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001b43f0: 730a 2020 2020 616e 6420 6e6f 7420 226f  s.    and not "o
│ │ │ +001b4400: 7065 6e73 6869 6674 2d6b 7562 656c 6574  penshift-kubelet
│ │ │ +001b4410: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +001b4420: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ +001b4430: 226f 7374 7265 6522 2069 6e20 616e 7369  "ostree" in ansi
│ │ │ +001b4440: 626c 655f 7072 6f63 5f63 6d64 6c69 6e65  ble_proc_cmdline
│ │ │ +001b4450: 0a20 2020 2029 2061 6e64 206e 6f74 2028  .    ) and not (
│ │ │ +001b4460: 2061 6e73 6962 6c65 5f76 6972 7475 616c   ansible_virtual
│ │ │ +001b4470: 697a 6174 696f 6e5f 7479 7065 2069 6e20  ization_type in 
│ │ │ +001b4480: 5b22 646f 636b 6572 222c 2022 6c78 6322  ["docker", "lxc"
│ │ │ +001b4490: 2c20 226f 7065 6e76 7a22 2c20 2270 6f64  , "openvz", "pod
│ │ │ +001b44a0: 6d61 6e22 2c0a 2020 2020 2263 6f6e 7461  man",.    "conta
│ │ │ +001b44b0: 696e 6572 225d 2029 2029 0a20 202d 2027  iner"] ) ).  - '
│ │ │ +001b44c0: 222f 7661 722f 6c6f 6722 2069 6e20 616e  "/var/log" in an
│ │ │ +001b44d0: 7369 626c 655f 6d6f 756e 7473 207c 206d  sible_mounts | m
│ │ │ +001b44e0: 6170 2861 7474 7269 6275 7465 3d22 6d6f  ap(attribute="mo
│ │ │ +001b44f0: 756e 7422 2920 7c20 6c69 7374 270a 2020  unt") | list'.  
│ │ │ +001b4500: 2d20 6d6f 756e 745f 696e 666f 2069 7320  - mount_info is 
│ │ │ +001b4510: 6465 6669 6e65 640a 2020 2d20 2864 6576  defined.  - (dev
│ │ │ +001b4520: 6963 655f 6e61 6d65 2e73 7464 6f75 7420  ice_name.stdout 
│ │ │ +001b4530: 6973 2064 6566 696e 6564 2061 6e64 2028  is defined and (
│ │ │ +001b4540: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ +001b4550: 7574 207c 206c 656e 6774 6820 2667 743b  ut | length >
│ │ │ +001b4560: 2030 2929 206f 7220 2822 2d2d 6673 7461   0)) or ("--fsta
│ │ │ +001b4570: 6222 0a20 2020 207c 206c 656e 6774 6820  b".    | length 
│ │ │ +001b4580: 3d3d 2030 290a 2020 7461 6773 3a0a 2020  == 0).  tags:.  
│ │ │ +001b4590: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ +001b45a0: 2d36 0a20 202d 204e 4953 542d 3830 302d  -6.  - NIST-800-
│ │ │ +001b45b0: 3533 2d41 432d 3628 3129 0a20 202d 204e  53-AC-6(1).  - N
│ │ │ +001b45c0: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ +001b45d0: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ +001b45e0: 3533 2d43 4d2d 3728 6129 0a20 202d 204e  53-CM-7(a).  - N
│ │ │ +001b45f0: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ +001b4600: 6229 0a20 202d 204e 4953 542d 3830 302d  b).  - NIST-800-
│ │ │ +001b4610: 3533 2d4d 502d 370a 2020 2d20 636f 6e66  53-MP-7.  - conf
│ │ │ +001b4620: 6967 7572 655f 7374 7261 7465 6779 0a20  igure_strategy. 
│ │ │ +001b4630: 202d 2068 6967 685f 6469 7372 7570 7469   - high_disrupti
│ │ │ +001b4640: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c  on.  - low_compl
│ │ │ +001b4650: 6578 6974 790a 2020 2d20 6d65 6469 756d  exity.  - medium
│ │ │ +001b4660: 5f73 6576 6572 6974 790a 2020 2d20 6d6f  _severity.  - mo
│ │ │ +001b4670: 756e 745f 6f70 7469 6f6e 5f76 6172 5f6c  unt_option_var_l
│ │ │ +001b4680: 6f67 5f6e 6f64 6576 0a20 202d 206e 6f5f  og_nodev.  - no_
│ │ │ +001b4690: 7265 626f 6f74 5f6e 6565 6465 640a 3c2f  reboot_needed.
Re │ │ │ +001b4750: 6d65 6469 6174 696f 6e20 5368 656c 6c20 mediation Shell │ │ │ +001b4760: 7363 7269 7074 20e2 87b2 3c2f 613e 3c62 script ...
C │ │ │ +001b2fc0: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ +001b2ff0: 6f6e 3a3c 2f74 683e 3c74 643e 6869 6768 on:high │ │ │ +001b3000: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +001b3040: 793a 3c2f 7468 3e3c 7464 3e63 6f6e 6669 y:confi │ │ │ +001b3050: 6775 7265 3c2f 7464 3e3c 2f74 723e 3c2f gure
# 
│ │ │ +001b4820: 5265 6d65 6469 6174 696f 6e20 6973 2061  Remediation is a
│ │ │ +001b4830: 7070 6c69 6361 626c 6520 6f6e 6c79 2069  pplicable only i
│ │ │ +001b4840: 6e20 6365 7274 6169 6e20 706c 6174 666f  n certain platfo
│ │ │ +001b4850: 726d 730a 6966 2028 2021 2028 207b 2072  rms.if ( ! ( { r
│ │ │ +001b4860: 706d 202d 2d71 7569 6574 202d 7120 6b65  pm --quiet -q ke
│ │ │ +001b4870: 726e 656c 203b 7d20 2661 6d70 3b26 616d  rnel ;} &&am
│ │ │ +001b4880: 703b 207b 2072 706d 202d 2d71 7569 6574  p; { rpm --quiet
│ │ │ +001b4890: 202d 7120 626f 6f74 6320 3b7d 2026 616d   -q bootc ;} &am
│ │ │ +001b48a0: 703b 2661 6d70 3b20 7b20 2120 7270 6d20  p;& { ! rpm 
│ │ │ +001b48b0: 2d2d 7175 6965 7420 2d71 206f 7065 6e73  --quiet -q opens
│ │ │ +001b48c0: 6869 6674 2d6b 7562 656c 6574 203b 7d20  hift-kubelet ;} 
│ │ │ +001b48d0: 2661 6d70 3b26 616d 703b 2028 5b20 2d66  && ([ -f
│ │ │ +001b48e0: 202f 7275 6e2f 6f73 7472 6565 2d62 6f6f   /run/ostree-boo
│ │ │ +001b48f0: 7465 6420 5d20 7c7c 205b 202d 4c20 2f6f  ted ] || [ -L /o
│ │ │ +001b4900: 7374 7265 6520 5d29 2029 2026 616d 703b  stree ]) ) &
│ │ │ +001b4910: 2661 6d70 3b20 2120 2820 5b20 2d66 202f  & ! ( [ -f /
│ │ │ +001b4920: 2e64 6f63 6b65 7265 6e76 205d 207c 7c20  .dockerenv ] || 
│ │ │ +001b4930: 5b20 2d66 202f 7275 6e2f 2e63 6f6e 7461  [ -f /run/.conta
│ │ │ +001b4940: 696e 6572 656e 7620 5d20 2920 2920 2661  inerenv ] ) ) &a
│ │ │ +001b4950: 6d70 3b26 616d 703b 207b 2028 2066 696e  mp;& { ( fin
│ │ │ +001b4960: 646d 6e74 202d 2d6b 6572 6e65 6c20 222f  dmnt --kernel "/
│ │ │ +001b4970: 7661 722f 6c6f 6722 2026 6774 3b20 2f64  var/log" > /d
│ │ │ +001b4980: 6576 2f6e 756c 6c20 7c7c 2066 696e 646d  ev/null || findm
│ │ │ +001b4990: 6e74 202d 2d66 7374 6162 2022 2f76 6172  nt --fstab "/var
│ │ │ +001b49a0: 2f6c 6f67 2220 2667 743b 202f 6465 762f  /log" > /dev/
│ │ │ +001b49b0: 6e75 6c6c 2029 3b20 7d3b 2074 6865 6e0a  null ); }; then.
│ │ │ +001b49c0: 0a66 756e 6374 696f 6e20 7065 7266 6f72  .function perfor
│ │ │ +001b49d0: 6d5f 7265 6d65 6469 6174 696f 6e20 7b0a  m_remediation {.
│ │ │ +001b49e0: 0a20 2020 200a 2020 2020 2020 2020 2320  .    .        # 
│ │ │ +001b49f0: 7468 6520 6d6f 756e 7420 706f 696e 7420  the mount point 
│ │ │ +001b4a00: 2f76 6172 2f6c 6f67 2068 6173 2074 6f20  /var/log has to 
│ │ │ +001b4a10: 6265 2064 6566 696e 6564 2069 6e20 2f65  be defined in /e
│ │ │ +001b4a20: 7463 2f66 7374 6162 0a20 2020 2020 2020  tc/fstab.       
│ │ │ +001b4a30: 2023 2062 6566 6f72 6520 7468 6973 2072   # before this r
│ │ │ +001b4a40: 656d 6564 6961 7469 6f6e 2063 616e 2062  emediation can b
│ │ │ +001b4a50: 6520 6578 6563 7574 6564 2e20 496e 2063  e executed. In c
│ │ │ +001b4a60: 6173 6520 6974 2069 7320 6e6f 7420 6465  ase it is not de
│ │ │ +001b4a70: 6669 6e65 642c 2074 6865 0a20 2020 2020  fined, the.     
│ │ │ +001b4a80: 2020 2023 2072 656d 6564 6961 7469 6f6e     # remediation
│ │ │ +001b4a90: 2061 626f 7274 7320 616e 6420 6e6f 2063   aborts and no c
│ │ │ +001b4aa0: 6861 6e67 6573 2072 6567 6172 6469 6e67  hanges regarding
│ │ │ +001b4ab0: 2074 6865 206d 6f75 6e74 2070 6f69 6e74   the mount point
│ │ │ +001b4ac0: 2061 7265 2064 6f6e 652e 0a20 2020 2020   are done..     
│ │ │ +001b4ad0: 2020 206d 6f75 6e74 5f70 6f69 6e74 5f6d     mount_point_m
│ │ │ +001b4ae0: 6174 6368 5f72 6567 6578 703d 2224 2870  atch_regexp="$(p
│ │ │ +001b4af0: 7269 6e74 6620 225e 5b5b 3a73 7061 6365  rintf "^[[:space
│ │ │ +001b4b00: 3a5d 5d2a 5b5e 235d 2e2a 5b5b 3a73 7061  :]]*[^#].*[[:spa
│ │ │ +001b4b10: 6365 3a5d 5d25 735b 5b3a 7370 6163 653a  ce:]]%s[[:space:
│ │ │ +001b4b20: 5d5d 2220 222f 7661 722f 6c6f 6722 2922  ]]" "/var/log")"
│ │ │ +001b4b30: 0a0a 2020 2020 6772 6570 2022 246d 6f75  ..    grep "$mou
│ │ │ +001b4b40: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ +001b4b50: 6567 6578 7022 202d 7120 2f65 7463 2f66  egexp" -q /etc/f
│ │ │ +001b4b60: 7374 6162 205c 0a20 2020 2020 2020 207c  stab \.        |
│ │ │ +001b4b70: 7c20 7b20 6563 686f 2022 5468 6520 6d6f  | { echo "The mo
│ │ │ +001b4b80: 756e 7420 706f 696e 7420 272f 7661 722f  unt point '/var/
│ │ │ +001b4b90: 6c6f 6727 2069 7320 6e6f 7420 6576 656e  log' is not even
│ │ │ +001b4ba0: 2069 6e20 2f65 7463 2f66 7374 6162 2c20   in /etc/fstab, 
│ │ │ +001b4bb0: 736f 2077 6520 6361 6e27 7420 7365 7420  so we can't set 
│ │ │ +001b4bc0: 7570 206d 6f75 6e74 206f 7074 696f 6e73  up mount options
│ │ │ +001b4bd0: 2220 2667 743b 2661 6d70 3b32 3b0a 2020  " >&2;.  
│ │ │ +001b4be0: 2020 2020 2020 2020 2020 2020 2020 6563                ec
│ │ │ +001b4bf0: 686f 2022 4e6f 7420 7265 6d65 6469 6174  ho "Not remediat
│ │ │ +001b4c00: 696e 672c 2062 6563 6175 7365 2074 6865  ing, because the
│ │ │ +001b4c10: 7265 2069 7320 6e6f 2072 6563 6f72 6420  re is no record 
│ │ │ +001b4c20: 6f66 202f 7661 722f 6c6f 6720 696e 202f  of /var/log in /
│ │ │ +001b4c30: 6574 632f 6673 7461 6222 2026 6774 3b26  etc/fstab" >&
│ │ │ +001b4c40: 616d 703b 323b 2072 6574 7572 6e20 313b  amp;2; return 1;
│ │ │ +001b4c50: 207d 0a20 2020 200a 0a0a 2020 2020 6d6f   }.    ...    mo
│ │ │ +001b4c60: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ +001b4c70: 7265 6765 7870 3d22 2428 7072 696e 7466  regexp="$(printf
│ │ │ +001b4c80: 2022 5e5b 5b3a 7370 6163 653a 5d5d 2a5b   "^[[:space:]]*[
│ │ │ +001b4c90: 5e23 5d2e 2a5b 5b3a 7370 6163 653a 5d5d  ^#].*[[:space:]]
│ │ │ +001b4ca0: 2573 5b5b 3a73 7061 6365 3a5d 5d22 202f  %s[[:space:]]" /
│ │ │ +001b4cb0: 7661 722f 6c6f 6729 220a 0a20 2020 2023  var/log)"..    #
│ │ │ +001b4cc0: 2049 6620 7468 6520 6d6f 756e 7420 706f   If the mount po
│ │ │ +001b4cd0: 696e 7420 6973 206e 6f74 2069 6e20 2f65  int is not in /e
│ │ │ +001b4ce0: 7463 2f66 7374 6162 2c20 6765 7420 7072  tc/fstab, get pr
│ │ │ +001b4cf0: 6576 696f 7573 206d 6f75 6e74 206f 7074  evious mount opt
│ │ │ +001b4d00: 696f 6e73 2066 726f 6d20 2f65 7463 2f6d  ions from /etc/m
│ │ │ +001b4d10: 7461 620a 2020 2020 6966 2021 2067 7265  tab.    if ! gre
│ │ │ +001b4d20: 7020 2d71 2022 246d 6f75 6e74 5f70 6f69  p -q "$mount_poi
│ │ │ +001b4d30: 6e74 5f6d 6174 6368 5f72 6567 6578 7022  nt_match_regexp"
│ │ │ +001b4d40: 202f 6574 632f 6673 7461 623b 2074 6865   /etc/fstab; the
│ │ │ +001b4d50: 6e0a 2020 2020 2020 2020 2320 7275 6e74  n.        # runt
│ │ │ +001b4d60: 696d 6520 6f70 7473 2077 6974 686f 7574  ime opts without
│ │ │ +001b4d70: 2073 6f6d 6520 6175 746f 6d61 7469 6320   some automatic 
│ │ │ +001b4d80: 6b65 726e 656c 2f75 7365 7273 7061 6365  kernel/userspace
│ │ │ +001b4d90: 2d61 6464 6564 2064 6566 6175 6c74 730a  -added defaults.
│ │ │ +001b4da0: 2020 2020 2020 2020 7072 6576 696f 7573          previous
│ │ │ +001b4db0: 5f6d 6f75 6e74 5f6f 7074 733d 2428 6772  _mount_opts=$(gr
│ │ │ +001b4dc0: 6570 2022 246d 6f75 6e74 5f70 6f69 6e74  ep "$mount_point
│ │ │ +001b4dd0: 5f6d 6174 6368 5f72 6567 6578 7022 202f  _match_regexp" /
│ │ │ +001b4de0: 6574 632f 6d74 6162 207c 2068 6561 6420  etc/mtab | head 
│ │ │ +001b4df0: 2d31 207c 2020 6177 6b20 277b 7072 696e  -1 |  awk '{prin
│ │ │ +001b4e00: 7420 2434 7d27 205c 0a20 2020 2020 2020  t $4}' \.       
│ │ │ +001b4e10: 2020 2020 2020 2020 2020 2020 207c 2073               | s
│ │ │ +001b4e20: 6564 202d 4520 2273 2f28 7277 7c64 6566  ed -E "s/(rw|def
│ │ │ +001b4e30: 6175 6c74 737c 7365 636c 6162 656c 7c6e  aults|seclabel|n
│ │ │ +001b4e40: 6f64 6576 2928 2c7c 2429 2f2f 673b 732f  odev)(,|$)//g;s/
│ │ │ +001b4e50: 2c24 2f2f 2229 0a20 2020 2020 2020 205b  ,$//").        [
│ │ │ +001b4e60: 2022 2470 7265 7669 6f75 735f 6d6f 756e   "$previous_moun
│ │ │ +001b4e70: 745f 6f70 7473 2220 5d20 2661 6d70 3b26  t_opts" ] &&
│ │ │ +001b4e80: 616d 703b 2070 7265 7669 6f75 735f 6d6f  amp; previous_mo
│ │ │ +001b4e90: 756e 745f 6f70 7473 2b3d 222c 220a 2020  unt_opts+=",".  
│ │ │ +001b4ea0: 2020 2020 2020 2320 496e 2069 736f 3936        # In iso96
│ │ │ +001b4eb0: 3630 2066 696c 6573 7973 7465 6d73 206d  60 filesystems m
│ │ │ +001b4ec0: 7461 6220 636f 756c 6420 6465 7363 7269  tab could descri
│ │ │ +001b4ed0: 6265 2061 2022 626c 6f63 6b73 697a 6522  be a "blocksize"
│ │ │ +001b4ee0: 2076 616c 7565 2c20 7468 6973 2073 686f   value, this sho
│ │ │ +001b4ef0: 756c 6420 6265 2072 6566 6c65 6374 6564  uld be reflected
│ │ │ +001b4f00: 2069 6e0a 2020 2020 2020 2020 2320 6673   in.        # fs
│ │ │ +001b4f10: 7461 6220 6173 2022 626c 6f63 6b22 2e20  tab as "block". 
│ │ │ +001b4f20: 2054 6865 206e 6578 7420 7661 7269 6162   The next variab
│ │ │ +001b4f30: 6c65 2069 7320 746f 2073 6174 6973 6679  le is to satisfy
│ │ │ +001b4f40: 2073 6865 6c6c 6368 6563 6b20 5343 3230   shellcheck SC20
│ │ │ +001b4f50: 3530 2e0a 2020 2020 2020 2020 6673 5f74  50..        fs_t
│ │ │ +001b4f60: 7970 653d 2222 0a20 2020 2020 2020 2069  ype="".        i
│ │ │ +001b4f70: 6620 5b20 2022 2466 735f 7479 7065 2220  f [  "$fs_type" 
│ │ │ +001b4f80: 3d3d 2022 6973 6f39 3636 3022 205d 203b  == "iso9660" ] ;
│ │ │ +001b4f90: 2074 6865 6e0a 2020 2020 2020 2020 2020   then.          
│ │ │ +001b4fa0: 2020 7072 6576 696f 7573 5f6d 6f75 6e74    previous_mount
│ │ │ +001b4fb0: 5f6f 7074 733d 2428 7365 6420 2773 2f62  _opts=$(sed 's/b
│ │ │ +001b4fc0: 6c6f 636b 7369 7a65 3d2f 626c 6f63 6b3d  locksize=/block=
│ │ │ +001b4fd0: 2f27 2026 6c74 3b26 6c74 3b26 6c74 3b20  /' <<< 
│ │ │ +001b4fe0: 2224 7072 6576 696f 7573 5f6d 6f75 6e74  "$previous_mount
│ │ │ +001b4ff0: 5f6f 7074 7322 290a 2020 2020 2020 2020  _opts").        
│ │ │ +001b5000: 6669 0a20 2020 2020 2020 2065 6368 6f20  fi.        echo 
│ │ │ +001b5010: 2220 2f76 6172 2f6c 6f67 2020 6465 6661  " /var/log  defa
│ │ │ +001b5020: 756c 7473 2c24 7b70 7265 7669 6f75 735f  ults,${previous_
│ │ │ +001b5030: 6d6f 756e 745f 6f70 7473 7d6e 6f64 6576  mount_opts}nodev
│ │ │ +001b5040: 2030 2030 2220 2667 743b 2667 743b 202f   0 0" >> /
│ │ │ +001b5050: 6574 632f 6673 7461 620a 2020 2020 2320  etc/fstab.    # 
│ │ │ +001b5060: 4966 2074 6865 206d 6f75 6e74 5f6f 7074  If the mount_opt
│ │ │ +001b5070: 206f 7074 696f 6e20 6973 206e 6f74 2061   option is not a
│ │ │ +001b5080: 6c72 6561 6479 2069 6e20 7468 6520 6d6f  lready in the mo
│ │ │ +001b5090: 756e 7420 706f 696e 7427 7320 2f65 7463  unt point's /etc
│ │ │ +001b50a0: 2f66 7374 6162 2065 6e74 7279 2c20 6164  /fstab entry, ad
│ │ │ +001b50b0: 6420 6974 0a20 2020 2065 6c69 6620 2120  d it.    elif ! 
│ │ │ +001b50c0: 6772 6570 2022 246d 6f75 6e74 5f70 6f69  grep "$mount_poi
│ │ │ +001b50d0: 6e74 5f6d 6174 6368 5f72 6567 6578 7022  nt_match_regexp"
│ │ │ +001b50e0: 202f 6574 632f 6673 7461 6220 7c20 6772   /etc/fstab | gr
│ │ │ +001b50f0: 6570 202d 7120 226e 6f64 6576 223b 2074  ep -q "nodev"; t
│ │ │ +001b5100: 6865 6e0a 2020 2020 2020 2020 7072 6576  hen.        prev
│ │ │ +001b5110: 696f 7573 5f6d 6f75 6e74 5f6f 7074 733d  ious_mount_opts=
│ │ │ +001b5120: 2428 6772 6570 2022 246d 6f75 6e74 5f70  $(grep "$mount_p
│ │ │ +001b5130: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ +001b5140: 7022 202f 6574 632f 6673 7461 6220 7c20  p" /etc/fstab | 
│ │ │ +001b5150: 6177 6b20 277b 7072 696e 7420 2434 7d27  awk '{print $4}'
│ │ │ +001b5160: 290a 2020 2020 2020 2020 7365 6420 2d69  ).        sed -i
│ │ │ +001b5170: 2022 737c 5c28 247b 6d6f 756e 745f 706f   "s|\(${mount_po
│ │ │ +001b5180: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ +001b5190: 7d2e 2a24 7b70 7265 7669 6f75 735f 6d6f  }.*${previous_mo
│ │ │ +001b51a0: 756e 745f 6f70 7473 7d5c 297c 5c31 2c6e  unt_opts}\)|\1,n
│ │ │ +001b51b0: 6f64 6576 7c22 202f 6574 632f 6673 7461  odev|" /etc/fsta
│ │ │ +001b51c0: 620a 2020 2020 6669 0a0a 0a20 2020 2069  b.    fi...    i
│ │ │ +001b51d0: 6620 6d6b 6469 7220 2d70 2022 2f76 6172  f mkdir -p "/var
│ │ │ +001b51e0: 2f6c 6f67 223b 2074 6865 6e0a 2020 2020  /log"; then.    
│ │ │ +001b51f0: 2020 2020 6966 206d 6f75 6e74 706f 696e      if mountpoin
│ │ │ +001b5200: 7420 2d71 2022 2f76 6172 2f6c 6f67 223b  t -q "/var/log";
│ │ │ +001b5210: 2074 6865 6e0a 2020 2020 2020 2020 2020   then.          
│ │ │ +001b5220: 2020 6d6f 756e 7420 2d6f 2072 656d 6f75    mount -o remou
│ │ │ +001b5230: 6e74 202d 2d74 6172 6765 7420 222f 7661  nt --target "/va
│ │ │ +001b5240: 722f 6c6f 6722 0a20 2020 2020 2020 2066  r/log".        f
│ │ │ +001b5250: 690a 2020 2020 6669 0a7d 0a0a 7065 7266  i.    fi.}..perf
│ │ │ +001b5260: 6f72 6d5f 7265 6d65 6469 6174 696f 6e0a  orm_remediation.
│ │ │ +001b5270: 0a65 6c73 650a 2020 2020 2667 743b 2661  .else.    >&a
│ │ │ +001b5280: 6d70 3b32 2065 6368 6f20 2752 656d 6564  mp;2 echo 'Remed
│ │ │ +001b5290: 6961 7469 6f6e 2069 7320 6e6f 7420 6170  iation is not ap
│ │ │ +001b52a0: 706c 6963 6162 6c65 2c20 6e6f 7468 696e  plicable, nothin
│ │ │ +001b52b0: 6720 7761 7320 646f 6e65 270a 6669 0a3c  g was done'.fi.<
│ │ │ +001b52c0: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ +001b5370: 656d 6564 6961 7469 6f6e 2041 6e61 636f emediation Anaco │ │ │ +001b5380: 6e64 6120 736e 6970 7065 7420 e287 b23c nda snippet ...< │ │ │ +001b5390: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
Rebo │ │ │ +001b47f0: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +001b4800: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
│ │ │ +001b5460: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +001b5470: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f

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

< │ │ │ 001b5500: 2f74 643e 3c2f 7472 3e3c 2f74 626f 6479 /td>
Complexity:low
Disrup │ │ │ +001b5440: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6869 tion:hi │ │ │ +001b5450: 6768 3c2f 7464 3e3c 2f74 723e 3c74 723e gh
Reboot:false
Strat │ │ │ +001b5490: 6567 793a 3c2f 7468 3e3c 7464 3e65 6e61 egy:ena │ │ │ +001b54a0: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
R │ │ │ -001b6110: 656d 6564 6961 7469 6f6e 2041 6e61 636f emediation Anaco │ │ │ -001b6120: 6e64 6120 736e 6970 7065 7420 e287 b23c nda snippet ...< │ │ │ -001b6130: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
│ │ │ -001b6200: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -001b6210: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f

│ │ │ -001b6260: 0a70 6172 7420 2f76 6172 2f6c 6f67 202d  .part /var/log -
│ │ │ -001b6270: 2d6d 6f75 6e74 6f70 7469 6f6e 733d 226e  -mountoptions="n
│ │ │ -001b6280: 6f65 7865 6322 0a3c 2f63 6f64 653e 3c2f  oexec".Remediati
│ │ │ -001b6340: 6f6e 2041 6e73 6962 6c65 2073 6e69 7070  on Ansible snipp
│ │ │ -001b6350: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64  et ...
│ │ │ -001b63d0: 3c74 723e 3c74 683e 436f 6d70 6c65 7869
Strategy: │ │ │ -001b6460: 3c74 643e 636f 6e66 6967 7572 653c 2f74
Complexity:low
Disrup │ │ │ -001b61e0: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6869 tion:hi │ │ │ -001b61f0: 6768 3c2f 7464 3e3c 2f74 723e 3c74 723e gh
Reboot:false
Strat │ │ │ -001b6230: 6567 793a 3c2f 7468 3e3c 7464 3e65 6e61 egy:ena │ │ │ -001b6240: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Complexi │ │ │ -001b63e0: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -001b63f0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Disruption:high
Reboo │ │ │ -001b6430: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -001b6440: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
configure
< │ │ │ -001b6480: 7072 653e 3c63 6f64 653e 2d20 6e61 6d65 pre>- name │ │ │ -001b6490: 3a20 4761 7468 6572 2074 6865 2070 6163 : Gather the pac │ │ │ -001b64a0: 6b61 6765 2066 6163 7473 0a20 2070 6163 kage facts. pac │ │ │ -001b64b0: 6b61 6765 5f66 6163 7473 3a0a 2020 2020 kage_facts:. │ │ │ -001b64c0: 6d61 6e61 6765 723a 2061 7574 6f0a 2020 manager: auto. │ │ │ -001b64d0: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38 tags:. - NIST-8 │ │ │ -001b64e0: 3030 2d35 332d 4143 2d36 0a20 202d 204e 00-53-AC-6. - N │ │ │ -001b64f0: 4953 542d 3830 302d 3533 2d41 432d 3628 IST-800-53-AC-6( │ │ │ -001b6500: 3129 0a20 202d 204e 4953 542d 3830 302d 1). - NIST-800- │ │ │ -001b6510: 3533 2d43 4d2d 3628 6129 0a20 202d 204e 53-CM-6(a). - N │ │ │ -001b6520: 4953 542d 3830 302d 3533 2d43 4d2d 3728 IST-800-53-CM-7( │ │ │ -001b6530: 6129 0a20 202d 204e 4953 542d 3830 302d a). - NIST-800- │ │ │ -001b6540: 3533 2d43 4d2d 3728 6229 0a20 202d 204e 53-CM-7(b). - N │ │ │ -001b6550: 4953 542d 3830 302d 3533 2d4d 502d 370a IST-800-53-MP-7. │ │ │ -001b6560: 2020 2d20 636f 6e66 6967 7572 655f 7374 - configure_st │ │ │ -001b6570: 7261 7465 6779 0a20 202d 2068 6967 685f rategy. - high_ │ │ │ -001b6580: 6469 7372 7570 7469 6f6e 0a20 202d 206c disruption. - l │ │ │ -001b6590: 6f77 5f63 6f6d 706c 6578 6974 790a 2020 ow_complexity. │ │ │ -001b65a0: 2d20 6d65 6469 756d 5f73 6576 6572 6974 - medium_severit │ │ │ -001b65b0: 790a 2020 2d20 6d6f 756e 745f 6f70 7469 y. - mount_opti │ │ │ -001b65c0: 6f6e 5f76 6172 5f6c 6f67 5f6e 6f65 7865 on_var_log_noexe │ │ │ -001b65d0: 630a 2020 2d20 6e6f 5f72 6562 6f6f 745f c. - no_reboot_ │ │ │ -001b65e0: 6e65 6564 6564 0a0a 2d20 6e61 6d65 3a20 needed..- name: │ │ │ -001b65f0: 2741 6464 206e 6f65 7865 6320 4f70 7469 'Add noexec Opti │ │ │ -001b6600: 6f6e 2074 6f20 2f76 6172 2f6c 6f67 3a20 on to /var/log: │ │ │ -001b6610: 4368 6563 6b20 696e 666f 726d 6174 696f Check informatio │ │ │ -001b6620: 6e20 6173 736f 6369 6174 6564 2074 6f20 n associated to │ │ │ -001b6630: 6d6f 756e 7470 6f69 6e74 270a 2020 616e mountpoint'. an │ │ │ -001b6640: 7369 626c 652e 6275 696c 7469 6e2e 636f sible.builtin.co │ │ │ -001b6650: 6d6d 616e 643a 2066 696e 646d 6e74 202d mmand: findmnt - │ │ │ -001b6660: 2d66 7374 6162 2027 2f76 6172 2f6c 6f67 -fstab '/var/log │ │ │ -001b6670: 270a 2020 7265 6769 7374 6572 3a20 6465 '. register: de │ │ │ -001b6680: 7669 6365 5f6e 616d 650a 2020 6661 696c vice_name. fail │ │ │ -001b6690: 6564 5f77 6865 6e3a 2064 6576 6963 655f ed_when: device_ │ │ │ -001b66a0: 6e61 6d65 2e72 6320 2667 743b 2031 0a20 name.rc > 1. │ │ │ -001b66b0: 2063 6861 6e67 6564 5f77 6865 6e3a 2066 changed_when: f │ │ │ -001b66c0: 616c 7365 0a20 2063 6865 636b 5f6d 6f64 alse. check_mod │ │ │ -001b66d0: 653a 2066 616c 7365 0a20 2077 6865 6e3a e: false. when: │ │ │ -001b66e0: 0a20 202d 2028 206e 6f74 2028 2022 6b65 . - ( not ( "ke │ │ │ -001b66f0: 726e 656c 2220 696e 2061 6e73 6962 6c65 rnel" in ansible │ │ │ -001b6700: 5f66 6163 7473 2e70 6163 6b61 6765 7320 _facts.packages │ │ │ -001b6710: 616e 6420 2262 6f6f 7463 2220 696e 2061 and "bootc" in a │ │ │ -001b6720: 6e73 6962 6c65 5f66 6163 7473 2e70 6163 nsible_facts.pac │ │ │ -001b6730: 6b61 6765 730a 2020 2020 616e 6420 6e6f kages. and no │ │ │ -001b6740: 7420 226f 7065 6e73 6869 6674 2d6b 7562 t "openshift-kub │ │ │ -001b6750: 656c 6574 2220 696e 2061 6e73 6962 6c65 elet" in ansible │ │ │ -001b6760: 5f66 6163 7473 2e70 6163 6b61 6765 7320 _facts.packages │ │ │ -001b6770: 616e 6420 226f 7374 7265 6522 2069 6e20 and "ostree" in │ │ │ -001b6780: 616e 7369 626c 655f 7072 6f63 5f63 6d64 ansible_proc_cmd │ │ │ -001b6790: 6c69 6e65 0a20 2020 2029 2061 6e64 206e line. ) and n │ │ │ -001b67a0: 6f74 2028 2061 6e73 6962 6c65 5f76 6972 ot ( ansible_vir │ │ │ -001b67b0: 7475 616c 697a 6174 696f 6e5f 7479 7065 tualization_type │ │ │ -001b67c0: 2069 6e20 5b22 646f 636b 6572 222c 2022 in ["docker", " │ │ │ -001b67d0: 6c78 6322 2c20 226f 7065 6e76 7a22 2c20 lxc", "openvz", │ │ │ -001b67e0: 2270 6f64 6d61 6e22 2c0a 2020 2020 2263 "podman",. "c │ │ │ -001b67f0: 6f6e 7461 696e 6572 225d 2029 2029 0a20 ontainer"] ) ). │ │ │ -001b6800: 202d 2027 222f 7661 722f 6c6f 6722 2069 - '"/var/log" i │ │ │ -001b6810: 6e20 616e 7369 626c 655f 6d6f 756e 7473 n ansible_mounts │ │ │ -001b6820: 207c 206d 6170 2861 7474 7269 6275 7465 | map(attribute │ │ │ -001b6830: 3d22 6d6f 756e 7422 2920 7c20 6c69 7374 ="mount") | list │ │ │ -001b6840: 270a 2020 7461 6773 3a0a 2020 2d20 4e49 '. tags:. - NI │ │ │ -001b6850: 5354 2d38 3030 2d35 332d 4143 2d36 0a20 ST-800-53-AC-6. │ │ │ -001b6860: 202d 204e 4953 542d 3830 302d 3533 2d41 - NIST-800-53-A │ │ │ -001b6870: 432d 3628 3129 0a20 202d 204e 4953 542d C-6(1). - NIST- │ │ │ -001b6880: 3830 302d 3533 2d43 4d2d 3628 6129 0a20 800-53-CM-6(a). │ │ │ -001b6890: 202d 204e 4953 542d 3830 302d 3533 2d43 - NIST-800-53-C │ │ │ -001b68a0: 4d2d 3728 6129 0a20 202d 204e 4953 542d M-7(a). - NIST- │ │ │ -001b68b0: 3830 302d 3533 2d43 4d2d 3728 6229 0a20 800-53-CM-7(b). │ │ │ -001b68c0: 202d 204e 4953 542d 3830 302d 3533 2d4d - NIST-800-53-M │ │ │ -001b68d0: 502d 370a 2020 2d20 636f 6e66 6967 7572 P-7. - configur │ │ │ -001b68e0: 655f 7374 7261 7465 6779 0a20 202d 2068 e_strategy. - h │ │ │ -001b68f0: 6967 685f 6469 7372 7570 7469 6f6e 0a20 igh_disruption. │ │ │ -001b6900: 202d 206c 6f77 5f63 6f6d 706c 6578 6974 - low_complexit │ │ │ -001b6910: 790a 2020 2d20 6d65 6469 756d 5f73 6576 y. - medium_sev │ │ │ -001b6920: 6572 6974 790a 2020 2d20 6d6f 756e 745f erity. - mount_ │ │ │ -001b6930: 6f70 7469 6f6e 5f76 6172 5f6c 6f67 5f6e option_var_log_n │ │ │ -001b6940: 6f65 7865 630a 2020 2d20 6e6f 5f72 6562 oexec. - no_reb │ │ │ -001b6950: 6f6f 745f 6e65 6564 6564 0a0a 2d20 6e61 oot_needed..- na │ │ │ -001b6960: 6d65 3a20 2741 6464 206e 6f65 7865 6320 me: 'Add noexec │ │ │ -001b6970: 4f70 7469 6f6e 2074 6f20 2f76 6172 2f6c Option to /var/l │ │ │ -001b6980: 6f67 3a20 4372 6561 7465 206d 6f75 6e74 og: Create mount │ │ │ -001b6990: 5f69 6e66 6f20 6469 6374 696f 6e61 7279 _info dictionary │ │ │ -001b69a0: 2076 6172 6961 626c 6527 0a20 2073 6574 variable'. set │ │ │ -001b69b0: 5f66 6163 743a 0a20 2020 206d 6f75 6e74 _fact:. mount │ │ │ -001b69c0: 5f69 6e66 6f3a 2027 7b7b 206d 6f75 6e74 _info: '{{ mount │ │ │ -001b69d0: 5f69 6e66 6f7c 6465 6661 756c 7428 7b7d _info|default({} │ │ │ -001b69e0: 297c 636f 6d62 696e 6528 7b69 7465 6d2e )|combine({item. │ │ │ -001b69f0: 303a 2069 7465 6d2e 317d 2920 7d7d 270a 0: item.1}) }}'. │ │ │ -001b6a00: 2020 7769 7468 5f74 6f67 6574 6865 723a with_together: │ │ │ -001b6a10: 0a20 202d 2027 7b7b 2064 6576 6963 655f . - '{{ device_ │ │ │ -001b6a20: 6e61 6d65 2e73 7464 6f75 745f 6c69 6e65 name.stdout_line │ │ │ -001b6a30: 735b 305d 2e73 706c 6974 2829 207c 206d s[0].split() | m │ │ │ -001b6a40: 6170 2827 276c 6f77 6572 2727 2920 7c20 ap(''lower'') | │ │ │ -001b6a50: 6c69 7374 207d 7d27 0a20 202d 2027 7b7b list }}'. - '{{ │ │ │ -001b6a60: 2064 6576 6963 655f 6e61 6d65 2e73 7464 device_name.std │ │ │ -001b6a70: 6f75 745f 6c69 6e65 735b 315d 2e73 706c out_lines[1].spl │ │ │ -001b6a80: 6974 2829 207c 206c 6973 7420 7d7d 270a it() | list }}'. │ │ │ -001b6a90: 2020 7768 656e 3a0a 2020 2d20 2820 6e6f when:. - ( no │ │ │ -001b6aa0: 7420 2820 226b 6572 6e65 6c22 2069 6e20 t ( "kernel" in │ │ │ -001b6ab0: 616e 7369 626c 655f 6661 6374 732e 7061 ansible_facts.pa │ │ │ -001b6ac0: 636b 6167 6573 2061 6e64 2022 626f 6f74 ckages and "boot │ │ │ -001b6ad0: 6322 2069 6e20 616e 7369 626c 655f 6661 c" in ansible_fa │ │ │ -001b6ae0: 6374 732e 7061 636b 6167 6573 0a20 2020 cts.packages. │ │ │ -001b6af0: 2061 6e64 206e 6f74 2022 6f70 656e 7368 and not "opensh │ │ │ -001b6b00: 6966 742d 6b75 6265 6c65 7422 2069 6e20 ift-kubelet" in │ │ │ -001b6b10: 616e 7369 626c 655f 6661 6374 732e 7061 ansible_facts.pa │ │ │ -001b6b20: 636b 6167 6573 2061 6e64 2022 6f73 7472 ckages and "ostr │ │ │ -001b6b30: 6565 2220 696e 2061 6e73 6962 6c65 5f70 ee" in ansible_p │ │ │ -001b6b40: 726f 635f 636d 646c 696e 650a 2020 2020 roc_cmdline. │ │ │ -001b6b50: 2920 616e 6420 6e6f 7420 2820 616e 7369 ) and not ( ansi │ │ │ -001b6b60: 626c 655f 7669 7274 7561 6c69 7a61 7469 ble_virtualizati │ │ │ -001b6b70: 6f6e 5f74 7970 6520 696e 205b 2264 6f63 on_type in ["doc │ │ │ -001b6b80: 6b65 7222 2c20 226c 7863 222c 2022 6f70 ker", "lxc", "op │ │ │ -001b6b90: 656e 767a 222c 2022 706f 646d 616e 222c envz", "podman", │ │ │ -001b6ba0: 0a20 2020 2022 636f 6e74 6169 6e65 7222 . "container" │ │ │ -001b6bb0: 5d20 2920 290a 2020 2d20 2722 2f76 6172 ] ) ). - '"/var │ │ │ -001b6bc0: 2f6c 6f67 2220 696e 2061 6e73 6962 6c65 /log" in ansible │ │ │ -001b6bd0: 5f6d 6f75 6e74 7320 7c20 6d61 7028 6174 _mounts | map(at │ │ │ -001b6be0: 7472 6962 7574 653d 226d 6f75 6e74 2229 tribute="mount") │ │ │ -001b6bf0: 207c 206c 6973 7427 0a20 202d 2064 6576 | list'. - dev │ │ │ -001b6c00: 6963 655f 6e61 6d65 2e73 7464 6f75 7420 ice_name.stdout │ │ │ -001b6c10: 6973 2064 6566 696e 6564 2061 6e64 2064 is defined and d │ │ │ -001b6c20: 6576 6963 655f 6e61 6d65 2e73 7464 6f75 evice_name.stdou │ │ │ -001b6c30: 745f 6c69 6e65 7320 6973 2064 6566 696e t_lines is defin │ │ │ -001b6c40: 6564 0a20 202d 2028 6465 7669 6365 5f6e ed. - (device_n │ │ │ -001b6c50: 616d 652e 7374 646f 7574 207c 206c 656e ame.stdout | len │ │ │ -001b6c60: 6774 6820 2667 743b 2030 290a 2020 7461 gth > 0). ta │ │ │ -001b6c70: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030 gs:. - NIST-800 │ │ │ -001b6c80: 2d35 332d 4143 2d36 0a20 202d 204e 4953 -53-AC-6. - NIS │ │ │ -001b6c90: 542d 3830 302d 3533 2d41 432d 3628 3129 T-800-53-AC-6(1) │ │ │ -001b6ca0: 0a20 202d 204e 4953 542d 3830 302d 3533 . - NIST-800-53 │ │ │ -001b6cb0: 2d43 4d2d 3628 6129 0a20 202d 204e 4953 -CM-6(a). - NIS │ │ │ -001b6cc0: 542d 3830 302d 3533 2d43 4d2d 3728 6129 T-800-53-CM-7(a) │ │ │ -001b6cd0: 0a20 202d 204e 4953 542d 3830 302d 3533 . - NIST-800-53 │ │ │ -001b6ce0: 2d43 4d2d 3728 6229 0a20 202d 204e 4953 -CM-7(b). - NIS │ │ │ -001b6cf0: 542d 3830 302d 3533 2d4d 502d 370a 2020 T-800-53-MP-7. │ │ │ -001b6d00: 2d20 636f 6e66 6967 7572 655f 7374 7261 - configure_stra │ │ │ -001b6d10: 7465 6779 0a20 202d 2068 6967 685f 6469 tegy. - high_di │ │ │ -001b6d20: 7372 7570 7469 6f6e 0a20 202d 206c 6f77 sruption. - low │ │ │ -001b6d30: 5f63 6f6d 706c 6578 6974 790a 2020 2d20 _complexity. - │ │ │ -001b6d40: 6d65 6469 756d 5f73 6576 6572 6974 790a medium_severity. │ │ │ -001b6d50: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e - mount_option │ │ │ -001b6d60: 5f76 6172 5f6c 6f67 5f6e 6f65 7865 630a _var_log_noexec. │ │ │ -001b6d70: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65 - no_reboot_ne │ │ │ -001b6d80: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741 eded..- name: 'A │ │ │ -001b6d90: 6464 206e 6f65 7865 6320 4f70 7469 6f6e dd noexec Option │ │ │ -001b6da0: 2074 6f20 2f76 6172 2f6c 6f67 3a20 4966 to /var/log: If │ │ │ -001b6db0: 202f 7661 722f 6c6f 6720 6e6f 7420 6d6f /var/log not mo │ │ │ -001b6dc0: 756e 7465 642c 2063 7261 6674 206d 6f75 unted, craft mou │ │ │ -001b6dd0: 6e74 5f69 6e66 6f0a 2020 2020 6d61 6e75 nt_info. manu │ │ │ -001b6de0: 616c 6c79 270a 2020 7365 745f 6661 6374 ally'. set_fact │ │ │ -001b6df0: 3a0a 2020 2020 6d6f 756e 745f 696e 666f :. mount_info │ │ │ -001b6e00: 3a20 277b 7b20 6d6f 756e 745f 696e 666f : '{{ mount_info │ │ │ -001b6e10: 7c64 6566 6175 6c74 287b 7d29 7c63 6f6d |default({})|com │ │ │ -001b6e20: 6269 6e65 287b 6974 656d 2e30 3a20 6974 bine({item.0: it │ │ │ -001b6e30: 656d 2e31 7d29 207d 7d27 0a20 2077 6974 em.1}) }}'. wit │ │ │ -001b6e40: 685f 746f 6765 7468 6572 3a0a 2020 2d20 h_together:. - │ │ │ -001b6e50: 2d20 7461 7267 6574 0a20 2020 202d 2073 - target. - s │ │ │ -001b6e60: 6f75 7263 650a 2020 2020 2d20 6673 7479 ource. - fsty │ │ │ -001b6e70: 7065 0a20 2020 202d 206f 7074 696f 6e73 pe. - options │ │ │ -001b6e80: 0a20 202d 202d 202f 7661 722f 6c6f 670a . - - /var/log. │ │ │ -001b6e90: 2020 2020 2d20 2727 0a20 2020 202d 2027 - ''. - ' │ │ │ -001b6ea0: 270a 2020 2020 2d20 6465 6661 756c 7473 '. - defaults │ │ │ -001b6eb0: 0a20 2077 6865 6e3a 0a20 202d 2028 206e . when:. - ( n │ │ │ -001b6ec0: 6f74 2028 2022 6b65 726e 656c 2220 696e ot ( "kernel" in │ │ │ -001b6ed0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70 ansible_facts.p │ │ │ -001b6ee0: 6163 6b61 6765 7320 616e 6420 2262 6f6f ackages and "boo │ │ │ -001b6ef0: 7463 2220 696e 2061 6e73 6962 6c65 5f66 tc" in ansible_f │ │ │ -001b6f00: 6163 7473 2e70 6163 6b61 6765 730a 2020 acts.packages. │ │ │ -001b6f10: 2020 616e 6420 6e6f 7420 226f 7065 6e73 and not "opens │ │ │ -001b6f20: 6869 6674 2d6b 7562 656c 6574 2220 696e hift-kubelet" in │ │ │ -001b6f30: 2061 6e73 6962 6c65 5f66 6163 7473 2e70 ansible_facts.p │ │ │ -001b6f40: 6163 6b61 6765 7320 616e 6420 226f 7374 ackages and "ost │ │ │ -001b6f50: 7265 6522 2069 6e20 616e 7369 626c 655f ree" in ansible_ │ │ │ -001b6f60: 7072 6f63 5f63 6d64 6c69 6e65 0a20 2020 proc_cmdline. │ │ │ -001b6f70: 2029 2061 6e64 206e 6f74 2028 2061 6e73 ) and not ( ans │ │ │ -001b6f80: 6962 6c65 5f76 6972 7475 616c 697a 6174 ible_virtualizat │ │ │ -001b6f90: 696f 6e5f 7479 7065 2069 6e20 5b22 646f ion_type in ["do │ │ │ -001b6fa0: 636b 6572 222c 2022 6c78 6322 2c20 226f cker", "lxc", "o │ │ │ -001b6fb0: 7065 6e76 7a22 2c20 2270 6f64 6d61 6e22 penvz", "podman" │ │ │ -001b6fc0: 2c0a 2020 2020 2263 6f6e 7461 696e 6572 ,. "container │ │ │ -001b6fd0: 225d 2029 2029 0a20 202d 2027 222f 7661 "] ) ). - '"/va │ │ │ -001b6fe0: 722f 6c6f 6722 2069 6e20 616e 7369 626c r/log" in ansibl │ │ │ -001b6ff0: 655f 6d6f 756e 7473 207c 206d 6170 2861 e_mounts | map(a │ │ │ -001b7000: 7474 7269 6275 7465 3d22 6d6f 756e 7422 ttribute="mount" │ │ │ -001b7010: 2920 7c20 6c69 7374 270a 2020 2d20 2822 ) | list'. - (" │ │ │ -001b7020: 2d2d 6673 7461 6222 207c 206c 656e 6774 --fstab" | lengt │ │ │ -001b7030: 6820 3d3d 2030 290a 2020 2d20 6465 7669 h == 0). - devi │ │ │ -001b7040: 6365 5f6e 616d 652e 7374 646f 7574 2069 ce_name.stdout i │ │ │ -001b7050: 7320 6465 6669 6e65 6420 616e 6420 6465 s defined and de │ │ │ -001b7060: 7669 6365 5f6e 616d 652e 7374 646f 7574 vice_name.stdout │ │ │ -001b7070: 5f6c 696e 6573 2069 7320 6465 6669 6e65 _lines is define │ │ │ -001b7080: 640a 2020 2d20 2864 6576 6963 655f 6e61 d. - (device_na │ │ │ -001b7090: 6d65 2e73 7464 6f75 7420 7c20 6c65 6e67 me.stdout | leng │ │ │ -001b70a0: 7468 203d 3d20 3029 0a20 2074 6167 733a th == 0). tags: │ │ │ -001b70b0: 0a20 202d 204e 4953 542d 3830 302d 3533 . - NIST-800-53 │ │ │ -001b70c0: 2d41 432d 360a 2020 2d20 4e49 5354 2d38 -AC-6. - NIST-8 │ │ │ -001b70d0: 3030 2d35 332d 4143 2d36 2831 290a 2020 00-53-AC-6(1). │ │ │ -001b70e0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d - NIST-800-53-CM │ │ │ -001b70f0: 2d36 2861 290a 2020 2d20 4e49 5354 2d38 -6(a). - NIST-8 │ │ │ -001b7100: 3030 2d35 332d 434d 2d37 2861 290a 2020 00-53-CM-7(a). │ │ │ -001b7110: 2d20 4e49 5354 2d38 3030 2d35 332d 434d - NIST-800-53-CM │ │ │ -001b7120: 2d37 2862 290a 2020 2d20 4e49 5354 2d38 -7(b). - NIST-8 │ │ │ -001b7130: 3030 2d35 332d 4d50 2d37 0a20 202d 2063 00-53-MP-7. - c │ │ │ -001b7140: 6f6e 6669 6775 7265 5f73 7472 6174 6567 onfigure_strateg │ │ │ -001b7150: 790a 2020 2d20 6869 6768 5f64 6973 7275 y. - high_disru │ │ │ -001b7160: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f ption. - low_co │ │ │ -001b7170: 6d70 6c65 7869 7479 0a20 202d 206d 6564 mplexity. - med │ │ │ -001b7180: 6975 6d5f 7365 7665 7269 7479 0a20 202d ium_severity. - │ │ │ -001b7190: 206d 6f75 6e74 5f6f 7074 696f 6e5f 7661 mount_option_va │ │ │ -001b71a0: 725f 6c6f 675f 6e6f 6578 6563 0a20 202d r_log_noexec. - │ │ │ -001b71b0: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465 no_reboot_neede │ │ │ -001b71c0: 640a 0a2d 206e 616d 653a 2027 4164 6420 d..- name: 'Add │ │ │ -001b71d0: 6e6f 6578 6563 204f 7074 696f 6e20 746f noexec Option to │ │ │ -001b71e0: 202f 7661 722f 6c6f 673a 204d 616b 6520 /var/log: Make │ │ │ -001b71f0: 7375 7265 206e 6f65 7865 6320 6f70 7469 sure noexec opti │ │ │ -001b7200: 6f6e 2069 7320 7061 7274 206f 6620 7468 on is part of th │ │ │ -001b7210: 6520 746f 0a20 2020 202f 7661 722f 6c6f e to. /var/lo │ │ │ -001b7220: 6720 6f70 7469 6f6e 7327 0a20 2073 6574 g options'. set │ │ │ -001b7230: 5f66 6163 743a 0a20 2020 206d 6f75 6e74 _fact:. mount │ │ │ -001b7240: 5f69 6e66 6f3a 2027 7b7b 206d 6f75 6e74 _info: '{{ mount │ │ │ -001b7250: 5f69 6e66 6f20 7c20 636f 6d62 696e 6528 _info | combine( │ │ │ -001b7260: 207b 2727 6f70 7469 6f6e 7327 273a 2727 {''options'':'' │ │ │ -001b7270: 2727 7e28 6d6f 756e 745f 696e 666f 2e6f ''~(mount_info.o │ │ │ -001b7280: 7074 696f 6e73 207c 0a20 2020 2020 2064 ptions |. d │ │ │ -001b7290: 6566 6175 6c74 2827 2727 2729 297e 2827 efault(''''))~(' │ │ │ -001b72a0: 272c 2727 2069 6620 286d 6f75 6e74 5f69 ','' if (mount_i │ │ │ -001b72b0: 6e66 6f2e 6f70 7469 6f6e 7320 7c20 6465 nfo.options | de │ │ │ -001b72c0: 6661 756c 7428 2727 2727 2929 2065 6c73 fault('''')) els │ │ │ -001b72d0: 6520 2727 2727 297e 2727 6e6f 6578 6563 e '''')~''noexec │ │ │ -001b72e0: 2727 0a20 2020 2020 207d 2920 7d7d 270a ''. }) }}'. │ │ │ -001b72f0: 2020 7768 656e 3a0a 2020 2d20 2820 6e6f when:. - ( no │ │ │ -001b7300: 7420 2820 226b 6572 6e65 6c22 2069 6e20 t ( "kernel" in │ │ │ -001b7310: 616e 7369 626c 655f 6661 6374 732e 7061 ansible_facts.pa │ │ │ -001b7320: 636b 6167 6573 2061 6e64 2022 626f 6f74 ckages and "boot │ │ │ -001b7330: 6322 2069 6e20 616e 7369 626c 655f 6661 c" in ansible_fa │ │ │ -001b7340: 6374 732e 7061 636b 6167 6573 0a20 2020 cts.packages. │ │ │ -001b7350: 2061 6e64 206e 6f74 2022 6f70 656e 7368 and not "opensh │ │ │ -001b7360: 6966 742d 6b75 6265 6c65 7422 2069 6e20 ift-kubelet" in │ │ │ -001b7370: 616e 7369 626c 655f 6661 6374 732e 7061 ansible_facts.pa │ │ │ -001b7380: 636b 6167 6573 2061 6e64 2022 6f73 7472 ckages and "ostr │ │ │ -001b7390: 6565 2220 696e 2061 6e73 6962 6c65 5f70 ee" in ansible_p │ │ │ -001b73a0: 726f 635f 636d 646c 696e 650a 2020 2020 roc_cmdline. │ │ │ -001b73b0: 2920 616e 6420 6e6f 7420 2820 616e 7369 ) and not ( ansi │ │ │ -001b73c0: 626c 655f 7669 7274 7561 6c69 7a61 7469 ble_virtualizati │ │ │ -001b73d0: 6f6e 5f74 7970 6520 696e 205b 2264 6f63 on_type in ["doc │ │ │ -001b73e0: 6b65 7222 2c20 226c 7863 222c 2022 6f70 ker", "lxc", "op │ │ │ -001b73f0: 656e 767a 222c 2022 706f 646d 616e 222c envz", "podman", │ │ │ -001b7400: 0a20 2020 2022 636f 6e74 6169 6e65 7222 . "container" │ │ │ -001b7410: 5d20 2920 290a 2020 2d20 2722 2f76 6172 ] ) ). - '"/var │ │ │ -001b7420: 2f6c 6f67 2220 696e 2061 6e73 6962 6c65 /log" in ansible │ │ │ -001b7430: 5f6d 6f75 6e74 7320 7c20 6d61 7028 6174 _mounts | map(at │ │ │ -001b7440: 7472 6962 7574 653d 226d 6f75 6e74 2229 tribute="mount") │ │ │ -001b7450: 207c 206c 6973 7427 0a20 202d 206d 6f75 | list'. - mou │ │ │ -001b7460: 6e74 5f69 6e66 6f20 6973 2064 6566 696e nt_info is defin │ │ │ -001b7470: 6564 2061 6e64 2022 6e6f 6578 6563 2220 ed and "noexec" │ │ │ -001b7480: 6e6f 7420 696e 2028 6d6f 756e 745f 696e not in (mount_in │ │ │ -001b7490: 666f 2e6f 7074 696f 6e73 207c 2064 6566 fo.options | def │ │ │ -001b74a0: 6175 6c74 2827 2729 290a 2020 7461 6773 ault('')). tags │ │ │ -001b74b0: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35 :. - NIST-800-5 │ │ │ -001b74c0: 332d 4143 2d36 0a20 202d 204e 4953 542d 3-AC-6. - NIST- │ │ │ -001b74d0: 3830 302d 3533 2d41 432d 3628 3129 0a20 800-53-AC-6(1). │ │ │ -001b74e0: 202d 204e 4953 542d 3830 302d 3533 2d43 - NIST-800-53-C │ │ │ -001b74f0: 4d2d 3628 6129 0a20 202d 204e 4953 542d M-6(a). - NIST- │ │ │ -001b7500: 3830 302d 3533 2d43 4d2d 3728 6129 0a20 800-53-CM-7(a). │ │ │ -001b7510: 202d 204e 4953 542d 3830 302d 3533 2d43 - NIST-800-53-C │ │ │ -001b7520: 4d2d 3728 6229 0a20 202d 204e 4953 542d M-7(b). - NIST- │ │ │ -001b7530: 3830 302d 3533 2d4d 502d 370a 2020 2d20 800-53-MP-7. - │ │ │ -001b7540: 636f 6e66 6967 7572 655f 7374 7261 7465 configure_strate │ │ │ -001b7550: 6779 0a20 202d 2068 6967 685f 6469 7372 gy. - high_disr │ │ │ -001b7560: 7570 7469 6f6e 0a20 202d 206c 6f77 5f63 uption. - low_c │ │ │ -001b7570: 6f6d 706c 6578 6974 790a 2020 2d20 6d65 omplexity. - me │ │ │ -001b7580: 6469 756d 5f73 6576 6572 6974 790a 2020 dium_severity. │ │ │ -001b7590: 2d20 6d6f 756e 745f 6f70 7469 6f6e 5f76 - mount_option_v │ │ │ -001b75a0: 6172 5f6c 6f67 5f6e 6f65 7865 630a 2020 ar_log_noexec. │ │ │ -001b75b0: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564 - no_reboot_need │ │ │ -001b75c0: 6564 0a0a 2d20 6e61 6d65 3a20 2741 6464 ed..- name: 'Add │ │ │ -001b75d0: 206e 6f65 7865 6320 4f70 7469 6f6e 2074 noexec Option t │ │ │ -001b75e0: 6f20 2f76 6172 2f6c 6f67 3a20 456e 7375 o /var/log: Ensu │ │ │ -001b75f0: 7265 202f 7661 722f 6c6f 6720 6973 206d re /var/log is m │ │ │ -001b7600: 6f75 6e74 6564 2077 6974 6820 6e6f 6578 ounted with noex │ │ │ -001b7610: 6563 206f 7074 696f 6e27 0a20 2061 6e73 ec option'. ans │ │ │ -001b7620: 6962 6c65 2e70 6f73 6978 2e6d 6f75 6e74 ible.posix.mount │ │ │ -001b7630: 3a0a 2020 2020 7061 7468 3a20 2f76 6172 :. path: /var │ │ │ -001b7640: 2f6c 6f67 0a20 2020 2073 7263 3a20 277b /log. src: '{ │ │ │ -001b7650: 7b20 6d6f 756e 745f 696e 666f 2e73 6f75 { mount_info.sou │ │ │ -001b7660: 7263 6520 7c20 6465 6661 756c 7428 2727 rce | default('' │ │ │ -001b7670: 2727 2920 7d7d 270a 2020 2020 6f70 7473 '') }}'. opts │ │ │ -001b7680: 3a20 277b 7b20 6d6f 756e 745f 696e 666f : '{{ mount_info │ │ │ -001b7690: 2e6f 7074 696f 6e73 207c 2064 6566 6175 .options | defau │ │ │ -001b76a0: 6c74 2827 2727 2729 207d 7d27 0a20 2020 lt('''') }}'. │ │ │ -001b76b0: 2073 7461 7465 3a20 6d6f 756e 7465 640a state: mounted. │ │ │ -001b76c0: 2020 2020 6673 7479 7065 3a20 277b 7b20 fstype: '{{ │ │ │ -001b76d0: 6d6f 756e 745f 696e 666f 2e66 7374 7970 mount_info.fstyp │ │ │ -001b76e0: 6520 7c20 6465 6661 756c 7428 2727 2727 e | default('''' │ │ │ -001b76f0: 2920 7d7d 270a 2020 7265 6769 7374 6572 ) }}'. register │ │ │ -001b7700: 3a20 6d6f 756e 745f 7265 7375 6c74 0a20 : mount_result. │ │ │ -001b7710: 2066 6169 6c65 645f 7768 656e 3a0a 2020 failed_when:. │ │ │ -001b7720: 2d20 6d6f 756e 745f 7265 7375 6c74 2069 - mount_result i │ │ │ -001b7730: 7320 6661 696c 6564 0a20 202d 2027 2727 s failed. - ''' │ │ │ -001b7740: 7461 7267 6574 2069 7320 6275 7379 2727 target is busy'' │ │ │ -001b7750: 206e 6f74 2069 6e20 286d 6f75 6e74 5f72 not in (mount_r │ │ │ -001b7760: 6573 756c 742e 6d73 6720 7c20 6465 6661 esult.msg | defa │ │ │ -001b7770: 756c 7428 2727 2727 2929 270a 2020 2d20 ult(''''))'. - │ │ │ -001b7780: 2727 2761 6c72 6561 6479 206d 6f75 6e74 '''already mount │ │ │ -001b7790: 6564 2727 206e 6f74 2069 6e20 286d 6f75 ed'' not in (mou │ │ │ -001b77a0: 6e74 5f72 6573 756c 742e 6d73 6720 7c20 nt_result.msg | │ │ │ -001b77b0: 6465 6661 756c 7428 2727 2727 2929 270a default(''''))'. │ │ │ -001b77c0: 2020 7768 656e 3a0a 2020 2d20 2820 6e6f when:. - ( no │ │ │ -001b77d0: 7420 2820 226b 6572 6e65 6c22 2069 6e20 t ( "kernel" in │ │ │ -001b77e0: 616e 7369 626c 655f 6661 6374 732e 7061 ansible_facts.pa │ │ │ -001b77f0: 636b 6167 6573 2061 6e64 2022 626f 6f74 ckages and "boot │ │ │ -001b7800: 6322 2069 6e20 616e 7369 626c 655f 6661 c" in ansible_fa │ │ │ -001b7810: 6374 732e 7061 636b 6167 6573 0a20 2020 cts.packages. │ │ │ -001b7820: 2061 6e64 206e 6f74 2022 6f70 656e 7368 and not "opensh │ │ │ -001b7830: 6966 742d 6b75 6265 6c65 7422 2069 6e20 ift-kubelet" in │ │ │ -001b7840: 616e 7369 626c 655f 6661 6374 732e 7061 ansible_facts.pa │ │ │ -001b7850: 636b 6167 6573 2061 6e64 2022 6f73 7472 ckages and "ostr │ │ │ -001b7860: 6565 2220 696e 2061 6e73 6962 6c65 5f70 ee" in ansible_p │ │ │ -001b7870: 726f 635f 636d 646c 696e 650a 2020 2020 roc_cmdline. │ │ │ -001b7880: 2920 616e 6420 6e6f 7420 2820 616e 7369 ) and not ( ansi │ │ │ -001b7890: 626c 655f 7669 7274 7561 6c69 7a61 7469 ble_virtualizati │ │ │ -001b78a0: 6f6e 5f74 7970 6520 696e 205b 2264 6f63 on_type in ["doc │ │ │ -001b78b0: 6b65 7222 2c20 226c 7863 222c 2022 6f70 ker", "lxc", "op │ │ │ -001b78c0: 656e 767a 222c 2022 706f 646d 616e 222c envz", "podman", │ │ │ -001b78d0: 0a20 2020 2022 636f 6e74 6169 6e65 7222 . "container" │ │ │ -001b78e0: 5d20 2920 290a 2020 2d20 2722 2f76 6172 ] ) ). - '"/var │ │ │ -001b78f0: 2f6c 6f67 2220 696e 2061 6e73 6962 6c65 /log" in ansible │ │ │ -001b7900: 5f6d 6f75 6e74 7320 7c20 6d61 7028 6174 _mounts | map(at │ │ │ -001b7910: 7472 6962 7574 653d 226d 6f75 6e74 2229 tribute="mount") │ │ │ -001b7920: 207c 206c 6973 7427 0a20 202d 206d 6f75 | list'. - mou │ │ │ -001b7930: 6e74 5f69 6e66 6f20 6973 2064 6566 696e nt_info is defin │ │ │ -001b7940: 6564 0a20 202d 2028 6465 7669 6365 5f6e ed. - (device_n │ │ │ -001b7950: 616d 652e 7374 646f 7574 2069 7320 6465 ame.stdout is de │ │ │ -001b7960: 6669 6e65 6420 616e 6420 2864 6576 6963 fined and (devic │ │ │ -001b7970: 655f 6e61 6d65 2e73 7464 6f75 7420 7c20 e_name.stdout | │ │ │ -001b7980: 6c65 6e67 7468 2026 6774 3b20 3029 2920 length > 0)) │ │ │ -001b7990: 6f72 2028 222d 2d66 7374 6162 220a 2020 or ("--fstab". │ │ │ -001b79a0: 2020 7c20 6c65 6e67 7468 203d 3d20 3029 | length == 0) │ │ │ -001b79b0: 0a20 2074 6167 733a 0a20 202d 204e 4953 . tags:. - NIS │ │ │ -001b79c0: 542d 3830 302d 3533 2d41 432d 360a 2020 T-800-53-AC-6. │ │ │ -001b79d0: 2d20 4e49 5354 2d38 3030 2d35 332d 4143 - NIST-800-53-AC │ │ │ -001b79e0: 2d36 2831 290a 2020 2d20 4e49 5354 2d38 -6(1). - NIST-8 │ │ │ -001b79f0: 3030 2d35 332d 434d 2d36 2861 290a 2020 00-53-CM-6(a). │ │ │ -001b7a00: 2d20 4e49 5354 2d38 3030 2d35 332d 434d - NIST-800-53-CM │ │ │ -001b7a10: 2d37 2861 290a 2020 2d20 4e49 5354 2d38 -7(a). - NIST-8 │ │ │ -001b7a20: 3030 2d35 332d 434d 2d37 2862 290a 2020 00-53-CM-7(b). │ │ │ -001b7a30: 2d20 4e49 5354 2d38 3030 2d35 332d 4d50 - NIST-800-53-MP │ │ │ -001b7a40: 2d37 0a20 202d 2063 6f6e 6669 6775 7265 -7. - configure │ │ │ -001b7a50: 5f73 7472 6174 6567 790a 2020 2d20 6869 _strategy. - hi │ │ │ -001b7a60: 6768 5f64 6973 7275 7074 696f 6e0a 2020 gh_disruption. │ │ │ -001b7a70: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479 - low_complexity │ │ │ -001b7a80: 0a20 202d 206d 6564 6975 6d5f 7365 7665 . - medium_seve │ │ │ -001b7a90: 7269 7479 0a20 202d 206d 6f75 6e74 5f6f rity. - mount_o │ │ │ -001b7aa0: 7074 696f 6e5f 7661 725f 6c6f 675f 6e6f ption_var_log_no │ │ │ -001b7ab0: 6578 6563 0a20 202d 206e 6f5f 7265 626f exec. - no_rebo │ │ │ -001b7ac0: 6f74 5f6e 6565 6465 640a 3c2f 636f 6465 ot_needed.
Remedi │ │ │ -001b7b80: 6174 696f 6e20 5368 656c 6c20 7363 7269 ation Shell scri │ │ │ -001b7b90: 7074 20e2 87b2 3c2f 613e 3c62 723e 3c64 pt ...
│ │ │ -001b7c10: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ -001b7c20: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>false< │ │ │ -001b7c40: 7072 653e 3c63 6f64 653e 2320 5265 6d65 pre># Reme │ │ │ -001b7c50: 6469 6174 696f 6e20 6973 2061 7070 6c69 diation is appli │ │ │ -001b7c60: 6361 626c 6520 6f6e 6c79 2069 6e20 6365 cable only in ce │ │ │ -001b7c70: 7274 6169 6e20 706c 6174 666f 726d 730a rtain platforms. │ │ │ -001b7c80: 6966 2028 2021 2028 207b 2072 706d 202d if ( ! ( { rpm - │ │ │ -001b7c90: 2d71 7569 6574 202d 7120 6b65 726e 656c -quiet -q kernel │ │ │ -001b7ca0: 203b 7d20 2661 6d70 3b26 616d 703b 207b ;} && { │ │ │ -001b7cb0: 2072 706d 202d 2d71 7569 6574 202d 7120 rpm --quiet -q │ │ │ -001b7cc0: 626f 6f74 6320 3b7d 2026 616d 703b 2661 bootc ;} &&a │ │ │ -001b7cd0: 6d70 3b20 7b20 2120 7270 6d20 2d2d 7175 mp; { ! rpm --qu │ │ │ -001b7ce0: 6965 7420 2d71 206f 7065 6e73 6869 6674 iet -q openshift │ │ │ -001b7cf0: 2d6b 7562 656c 6574 203b 7d20 2661 6d70 -kubelet ;} & │ │ │ -001b7d00: 3b26 616d 703b 2028 5b20 2d66 202f 7275 ;& ([ -f /ru │ │ │ -001b7d10: 6e2f 6f73 7472 6565 2d62 6f6f 7465 6420 n/ostree-booted │ │ │ -001b7d20: 5d20 7c7c 205b 202d 4c20 2f6f 7374 7265 ] || [ -L /ostre │ │ │ -001b7d30: 6520 5d29 2029 2026 616d 703b 2661 6d70 e ]) ) && │ │ │ -001b7d40: 3b20 2120 2820 5b20 2d66 202f 2e64 6f63 ; ! ( [ -f /.doc │ │ │ -001b7d50: 6b65 7265 6e76 205d 207c 7c20 5b20 2d66 kerenv ] || [ -f │ │ │ -001b7d60: 202f 7275 6e2f 2e63 6f6e 7461 696e 6572 /run/.container │ │ │ -001b7d70: 656e 7620 5d20 2920 2920 2661 6d70 3b26 env ] ) ) && │ │ │ -001b7d80: 616d 703b 207b 2028 2066 696e 646d 6e74 amp; { ( findmnt │ │ │ -001b7d90: 202d 2d6b 6572 6e65 6c20 222f 7661 722f --kernel "/var/ │ │ │ -001b7da0: 6c6f 6722 2026 6774 3b20 2f64 6576 2f6e log" > /dev/n │ │ │ -001b7db0: 756c 6c20 7c7c 2066 696e 646d 6e74 202d ull || findmnt - │ │ │ -001b7dc0: 2d66 7374 6162 2022 2f76 6172 2f6c 6f67 -fstab "/var/log │ │ │ -001b7dd0: 2220 2667 743b 202f 6465 762f 6e75 6c6c " > /dev/null │ │ │ -001b7de0: 2029 3b20 7d3b 2074 6865 6e0a 0a66 756e ); }; then..fun │ │ │ -001b7df0: 6374 696f 6e20 7065 7266 6f72 6d5f 7265 ction perform_re │ │ │ -001b7e00: 6d65 6469 6174 696f 6e20 7b0a 0a20 2020 mediation {.. │ │ │ -001b7e10: 200a 2020 2020 2020 2020 2320 7468 6520 . # the │ │ │ -001b7e20: 6d6f 756e 7420 706f 696e 7420 2f76 6172 mount point /var │ │ │ -001b7e30: 2f6c 6f67 2068 6173 2074 6f20 6265 2064 /log has to be d │ │ │ -001b7e40: 6566 696e 6564 2069 6e20 2f65 7463 2f66 efined in /etc/f │ │ │ -001b7e50: 7374 6162 0a20 2020 2020 2020 2023 2062 stab. # b │ │ │ -001b7e60: 6566 6f72 6520 7468 6973 2072 656d 6564 efore this remed │ │ │ -001b7e70: 6961 7469 6f6e 2063 616e 2062 6520 6578 iation can be ex │ │ │ -001b7e80: 6563 7574 6564 2e20 496e 2063 6173 6520 ecuted. In case │ │ │ -001b7e90: 6974 2069 7320 6e6f 7420 6465 6669 6e65 it is not define │ │ │ -001b7ea0: 642c 2074 6865 0a20 2020 2020 2020 2023 d, the. # │ │ │ -001b7eb0: 2072 656d 6564 6961 7469 6f6e 2061 626f remediation abo │ │ │ -001b7ec0: 7274 7320 616e 6420 6e6f 2063 6861 6e67 rts and no chang │ │ │ -001b7ed0: 6573 2072 6567 6172 6469 6e67 2074 6865 es regarding the │ │ │ -001b7ee0: 206d 6f75 6e74 2070 6f69 6e74 2061 7265 mount point are │ │ │ -001b7ef0: 2064 6f6e 652e 0a20 2020 2020 2020 206d done.. m │ │ │ -001b7f00: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368 ount_point_match │ │ │ -001b7f10: 5f72 6567 6578 703d 2224 2870 7269 6e74 _regexp="$(print │ │ │ -001b7f20: 6620 225e 5b5b 3a73 7061 6365 3a5d 5d2a f "^[[:space:]]* │ │ │ -001b7f30: 5b5e 235d 2e2a 5b5b 3a73 7061 6365 3a5d [^#].*[[:space:] │ │ │ -001b7f40: 5d25 735b 5b3a 7370 6163 653a 5d5d 2220 ]%s[[:space:]]" │ │ │ -001b7f50: 222f 7661 722f 6c6f 6722 2922 0a0a 2020 "/var/log")".. │ │ │ -001b7f60: 2020 6772 6570 2022 246d 6f75 6e74 5f70 grep "$mount_p │ │ │ -001b7f70: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578 oint_match_regex │ │ │ -001b7f80: 7022 202d 7120 2f65 7463 2f66 7374 6162 p" -q /etc/fstab │ │ │ -001b7f90: 205c 0a20 2020 2020 2020 207c 7c20 7b20 \. || { │ │ │ -001b7fa0: 6563 686f 2022 5468 6520 6d6f 756e 7420 echo "The mount │ │ │ -001b7fb0: 706f 696e 7420 272f 7661 722f 6c6f 6727 point '/var/log' │ │ │ -001b7fc0: 2069 7320 6e6f 7420 6576 656e 2069 6e20 is not even in │ │ │ -001b7fd0: 2f65 7463 2f66 7374 6162 2c20 736f 2077 /etc/fstab, so w │ │ │ -001b7fe0: 6520 6361 6e27 7420 7365 7420 7570 206d e can't set up m │ │ │ -001b7ff0: 6f75 6e74 206f 7074 696f 6e73 2220 2667 ount options" &g │ │ │ -001b8000: 743b 2661 6d70 3b32 3b0a 2020 2020 2020 t;&2;. │ │ │ -001b8010: 2020 2020 2020 2020 2020 6563 686f 2022 echo " │ │ │ -001b8020: 4e6f 7420 7265 6d65 6469 6174 696e 672c Not remediating, │ │ │ -001b8030: 2062 6563 6175 7365 2074 6865 7265 2069 because there i │ │ │ -001b8040: 7320 6e6f 2072 6563 6f72 6420 6f66 202f s no record of / │ │ │ -001b8050: 7661 722f 6c6f 6720 696e 202f 6574 632f var/log in /etc/ │ │ │ -001b8060: 6673 7461 6222 2026 6774 3b26 616d 703b fstab" >& │ │ │ -001b8070: 323b 2072 6574 7572 6e20 313b 207d 0a20 2; return 1; }. │ │ │ -001b8080: 2020 200a 0a0a 2020 2020 6d6f 756e 745f ... mount_ │ │ │ -001b8090: 706f 696e 745f 6d61 7463 685f 7265 6765 point_match_rege │ │ │ -001b80a0: 7870 3d22 2428 7072 696e 7466 2022 5e5b xp="$(printf "^[ │ │ │ -001b80b0: 5b3a 7370 6163 653a 5d5d 2a5b 5e23 5d2e [:space:]]*[^#]. │ │ │ -001b80c0: 2a5b 5b3a 7370 6163 653a 5d5d 2573 5b5b *[[:space:]]%s[[ │ │ │ -001b80d0: 3a73 7061 6365 3a5d 5d22 202f 7661 722f :space:]]" /var/ │ │ │ -001b80e0: 6c6f 6729 220a 0a20 2020 2023 2049 6620 log)".. # If │ │ │ -001b80f0: 7468 6520 6d6f 756e 7420 706f 696e 7420 the mount point │ │ │ -001b8100: 6973 206e 6f74 2069 6e20 2f65 7463 2f66 is not in /etc/f │ │ │ -001b8110: 7374 6162 2c20 6765 7420 7072 6576 696f stab, get previo │ │ │ -001b8120: 7573 206d 6f75 6e74 206f 7074 696f 6e73 us mount options │ │ │ -001b8130: 2066 726f 6d20 2f65 7463 2f6d 7461 620a from /etc/mtab. │ │ │ -001b8140: 2020 2020 6966 2021 2067 7265 7020 2d71 if ! grep -q │ │ │ -001b8150: 2022 246d 6f75 6e74 5f70 6f69 6e74 5f6d "$mount_point_m │ │ │ -001b8160: 6174 6368 5f72 6567 6578 7022 202f 6574 atch_regexp" /et │ │ │ -001b8170: 632f 6673 7461 623b 2074 6865 6e0a 2020 c/fstab; then. │ │ │ -001b8180: 2020 2020 2020 2320 7275 6e74 696d 6520 # runtime │ │ │ -001b8190: 6f70 7473 2077 6974 686f 7574 2073 6f6d opts without som │ │ │ -001b81a0: 6520 6175 746f 6d61 7469 6320 6b65 726e e automatic kern │ │ │ -001b81b0: 656c 2f75 7365 7273 7061 6365 2d61 6464 el/userspace-add │ │ │ -001b81c0: 6564 2064 6566 6175 6c74 730a 2020 2020 ed defaults. │ │ │ -001b81d0: 2020 2020 7072 6576 696f 7573 5f6d 6f75 previous_mou │ │ │ -001b81e0: 6e74 5f6f 7074 733d 2428 6772 6570 2022 nt_opts=$(grep " │ │ │ -001b81f0: 246d 6f75 6e74 5f70 6f69 6e74 5f6d 6174 $mount_point_mat │ │ │ -001b8200: 6368 5f72 6567 6578 7022 202f 6574 632f ch_regexp" /etc/ │ │ │ -001b8210: 6d74 6162 207c 2068 6561 6420 2d31 207c mtab | head -1 | │ │ │ -001b8220: 2020 6177 6b20 277b 7072 696e 7420 2434 awk '{print $4 │ │ │ -001b8230: 7d27 205c 0a20 2020 2020 2020 2020 2020 }' \. │ │ │ -001b8240: 2020 2020 2020 2020 207c 2073 6564 202d | sed - │ │ │ -001b8250: 4520 2273 2f28 7277 7c64 6566 6175 6c74 E "s/(rw|default │ │ │ -001b8260: 737c 7365 636c 6162 656c 7c6e 6f65 7865 s|seclabel|noexe │ │ │ -001b8270: 6329 282c 7c24 292f 2f67 3b73 2f2c 242f c)(,|$)//g;s/,$/ │ │ │ -001b8280: 2f22 290a 2020 2020 2020 2020 5b20 2224 /"). [ "$ │ │ │ -001b8290: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f previous_mount_o │ │ │ -001b82a0: 7074 7322 205d 2026 616d 703b 2661 6d70 pts" ] && │ │ │ -001b82b0: 3b20 7072 6576 696f 7573 5f6d 6f75 6e74 ; previous_mount │ │ │ -001b82c0: 5f6f 7074 732b 3d22 2c22 0a20 2020 2020 _opts+=",". │ │ │ -001b82d0: 2020 2023 2049 6e20 6973 6f39 3636 3020 # In iso9660 │ │ │ -001b82e0: 6669 6c65 7379 7374 656d 7320 6d74 6162 filesystems mtab │ │ │ -001b82f0: 2063 6f75 6c64 2064 6573 6372 6962 6520 could describe │ │ │ -001b8300: 6120 2262 6c6f 636b 7369 7a65 2220 7661 a "blocksize" va │ │ │ -001b8310: 6c75 652c 2074 6869 7320 7368 6f75 6c64 lue, this should │ │ │ -001b8320: 2062 6520 7265 666c 6563 7465 6420 696e be reflected in │ │ │ -001b8330: 0a20 2020 2020 2020 2023 2066 7374 6162 . # fstab │ │ │ -001b8340: 2061 7320 2262 6c6f 636b 222e 2020 5468 as "block". Th │ │ │ -001b8350: 6520 6e65 7874 2076 6172 6961 626c 6520 e next variable │ │ │ -001b8360: 6973 2074 6f20 7361 7469 7366 7920 7368 is to satisfy sh │ │ │ -001b8370: 656c 6c63 6865 636b 2053 4332 3035 302e ellcheck SC2050. │ │ │ -001b8380: 0a20 2020 2020 2020 2066 735f 7479 7065 . fs_type │ │ │ -001b8390: 3d22 220a 2020 2020 2020 2020 6966 205b ="". if [ │ │ │ -001b83a0: 2020 2224 6673 5f74 7970 6522 203d 3d20 "$fs_type" == │ │ │ -001b83b0: 2269 736f 3936 3630 2220 5d20 3b20 7468 "iso9660" ] ; th │ │ │ -001b83c0: 656e 0a20 2020 2020 2020 2020 2020 2070 en. p │ │ │ -001b83d0: 7265 7669 6f75 735f 6d6f 756e 745f 6f70 revious_mount_op │ │ │ -001b83e0: 7473 3d24 2873 6564 2027 732f 626c 6f63 ts=$(sed 's/bloc │ │ │ -001b83f0: 6b73 697a 653d 2f62 6c6f 636b 3d2f 2720 ksize=/block=/' │ │ │ -001b8400: 266c 743b 266c 743b 266c 743b 2022 2470 <<< "$p │ │ │ -001b8410: 7265 7669 6f75 735f 6d6f 756e 745f 6f70 revious_mount_op │ │ │ -001b8420: 7473 2229 0a20 2020 2020 2020 2066 690a ts"). fi. │ │ │ -001b8430: 2020 2020 2020 2020 6563 686f 2022 202f echo " / │ │ │ -001b8440: 7661 722f 6c6f 6720 2064 6566 6175 6c74 var/log default │ │ │ -001b8450: 732c 247b 7072 6576 696f 7573 5f6d 6f75 s,${previous_mou │ │ │ -001b8460: 6e74 5f6f 7074 737d 6e6f 6578 6563 2030 nt_opts}noexec 0 │ │ │ -001b8470: 2030 2220 2667 743b 2667 743b 202f 6574 0" >> /et │ │ │ -001b8480: 632f 6673 7461 620a 2020 2020 2320 4966 c/fstab. # If │ │ │ -001b8490: 2074 6865 206d 6f75 6e74 5f6f 7074 206f the mount_opt o │ │ │ -001b84a0: 7074 696f 6e20 6973 206e 6f74 2061 6c72 ption is not alr │ │ │ -001b84b0: 6561 6479 2069 6e20 7468 6520 6d6f 756e eady in the moun │ │ │ -001b84c0: 7420 706f 696e 7427 7320 2f65 7463 2f66 t point's /etc/f │ │ │ -001b84d0: 7374 6162 2065 6e74 7279 2c20 6164 6420 stab entry, add │ │ │ -001b84e0: 6974 0a20 2020 2065 6c69 6620 2120 6772 it. elif ! gr │ │ │ -001b84f0: 6570 2022 246d 6f75 6e74 5f70 6f69 6e74 ep "$mount_point │ │ │ -001b8500: 5f6d 6174 6368 5f72 6567 6578 7022 202f _match_regexp" / │ │ │ -001b8510: 6574 632f 6673 7461 6220 7c20 6772 6570 etc/fstab | grep │ │ │ -001b8520: 202d 7120 226e 6f65 7865 6322 3b20 7468 -q "noexec"; th │ │ │ -001b8530: 656e 0a20 2020 2020 2020 2070 7265 7669 en. previ │ │ │ -001b8540: 6f75 735f 6d6f 756e 745f 6f70 7473 3d24 ous_mount_opts=$ │ │ │ -001b8550: 2867 7265 7020 2224 6d6f 756e 745f 706f (grep "$mount_po │ │ │ -001b8560: 696e 745f 6d61 7463 685f 7265 6765 7870 int_match_regexp │ │ │ -001b8570: 2220 2f65 7463 2f66 7374 6162 207c 2061 " /etc/fstab | a │ │ │ -001b8580: 776b 2027 7b70 7269 6e74 2024 347d 2729 wk '{print $4}') │ │ │ -001b8590: 0a20 2020 2020 2020 2073 6564 202d 6920 . sed -i │ │ │ -001b85a0: 2273 7c5c 2824 7b6d 6f75 6e74 5f70 6f69 "s|\(${mount_poi │ │ │ -001b85b0: 6e74 5f6d 6174 6368 5f72 6567 6578 707d nt_match_regexp} │ │ │ -001b85c0: 2e2a 247b 7072 6576 696f 7573 5f6d 6f75 .*${previous_mou │ │ │ -001b85d0: 6e74 5f6f 7074 737d 5c29 7c5c 312c 6e6f nt_opts}\)|\1,no │ │ │ -001b85e0: 6578 6563 7c22 202f 6574 632f 6673 7461 exec|" /etc/fsta │ │ │ -001b85f0: 620a 2020 2020 6669 0a0a 0a20 2020 2069 b. fi... i │ │ │ -001b8600: 6620 6d6b 6469 7220 2d70 2022 2f76 6172 f mkdir -p "/var │ │ │ -001b8610: 2f6c 6f67 223b 2074 6865 6e0a 2020 2020 /log"; then. │ │ │ -001b8620: 2020 2020 6966 206d 6f75 6e74 706f 696e if mountpoin │ │ │ -001b8630: 7420 2d71 2022 2f76 6172 2f6c 6f67 223b t -q "/var/log"; │ │ │ -001b8640: 2074 6865 6e0a 2020 2020 2020 2020 2020 then. │ │ │ -001b8650: 2020 6d6f 756e 7420 2d6f 2072 656d 6f75 mount -o remou │ │ │ -001b8660: 6e74 202d 2d74 6172 6765 7420 222f 7661 nt --target "/va │ │ │ -001b8670: 722f 6c6f 6722 0a20 2020 2020 2020 2066 r/log". f │ │ │ -001b8680: 690a 2020 2020 6669 0a7d 0a0a 7065 7266 i. fi.}..perf │ │ │ -001b8690: 6f72 6d5f 7265 6d65 6469 6174 696f 6e0a orm_remediation. │ │ │ -001b86a0: 0a65 6c73 650a 2020 2020 2667 743b 2661 .else. >&a │ │ │ -001b86b0: 6d70 3b32 2065 6368 6f20 2752 656d 6564 mp;2 echo 'Remed │ │ │ -001b86c0: 6961 7469 6f6e 2069 7320 6e6f 7420 6170 iation is not ap │ │ │ -001b86d0: 706c 6963 6162 6c65 2c20 6e6f 7468 696e plicable, nothin │ │ │ -001b86e0: 6720 7761 7320 646f 6e65 270a 6669 0a3c g was done'.fi.< │ │ │ +001b6110: 656d 6564 6961 7469 6f6e 2041 6e73 6962 emediation Ansib │ │ │ +001b6120: 6c65 2073 6e69 7070 6574 20e2 87b2 3c2f le snippet ...
│ │ │ +001b61c0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 < │ │ │ +001b6200: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +001b6210: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false< │ │ │ +001b6250: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
- name: Gather
│ │ │ +001b6270: 2074 6865 2070 6163 6b61 6765 2066 6163   the package fac
│ │ │ +001b6280: 7473 0a20 2070 6163 6b61 6765 5f66 6163  ts.  package_fac
│ │ │ +001b6290: 7473 3a0a 2020 2020 6d61 6e61 6765 723a  ts:.    manager:
│ │ │ +001b62a0: 2061 7574 6f0a 2020 7461 6773 3a0a 2020   auto.  tags:.  
│ │ │ +001b62b0: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ +001b62c0: 2d36 0a20 202d 204e 4953 542d 3830 302d  -6.  - NIST-800-
│ │ │ +001b62d0: 3533 2d41 432d 3628 3129 0a20 202d 204e  53-AC-6(1).  - N
│ │ │ +001b62e0: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ +001b62f0: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ +001b6300: 3533 2d43 4d2d 3728 6129 0a20 202d 204e  53-CM-7(a).  - N
│ │ │ +001b6310: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ +001b6320: 6229 0a20 202d 204e 4953 542d 3830 302d  b).  - NIST-800-
│ │ │ +001b6330: 3533 2d4d 502d 370a 2020 2d20 636f 6e66  53-MP-7.  - conf
│ │ │ +001b6340: 6967 7572 655f 7374 7261 7465 6779 0a20  igure_strategy. 
│ │ │ +001b6350: 202d 2068 6967 685f 6469 7372 7570 7469   - high_disrupti
│ │ │ +001b6360: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c  on.  - low_compl
│ │ │ +001b6370: 6578 6974 790a 2020 2d20 6d65 6469 756d  exity.  - medium
│ │ │ +001b6380: 5f73 6576 6572 6974 790a 2020 2d20 6d6f  _severity.  - mo
│ │ │ +001b6390: 756e 745f 6f70 7469 6f6e 5f76 6172 5f6c  unt_option_var_l
│ │ │ +001b63a0: 6f67 5f6e 6f65 7865 630a 2020 2d20 6e6f  og_noexec.  - no
│ │ │ +001b63b0: 5f72 6562 6f6f 745f 6e65 6564 6564 0a0a  _reboot_needed..
│ │ │ +001b63c0: 2d20 6e61 6d65 3a20 2741 6464 206e 6f65  - name: 'Add noe
│ │ │ +001b63d0: 7865 6320 4f70 7469 6f6e 2074 6f20 2f76  xec Option to /v
│ │ │ +001b63e0: 6172 2f6c 6f67 3a20 4368 6563 6b20 696e  ar/log: Check in
│ │ │ +001b63f0: 666f 726d 6174 696f 6e20 6173 736f 6369  formation associ
│ │ │ +001b6400: 6174 6564 2074 6f20 6d6f 756e 7470 6f69  ated to mountpoi
│ │ │ +001b6410: 6e74 270a 2020 616e 7369 626c 652e 6275  nt'.  ansible.bu
│ │ │ +001b6420: 696c 7469 6e2e 636f 6d6d 616e 643a 2066  iltin.command: f
│ │ │ +001b6430: 696e 646d 6e74 202d 2d66 7374 6162 2027  indmnt --fstab '
│ │ │ +001b6440: 2f76 6172 2f6c 6f67 270a 2020 7265 6769  /var/log'.  regi
│ │ │ +001b6450: 7374 6572 3a20 6465 7669 6365 5f6e 616d  ster: device_nam
│ │ │ +001b6460: 650a 2020 6661 696c 6564 5f77 6865 6e3a  e.  failed_when:
│ │ │ +001b6470: 2064 6576 6963 655f 6e61 6d65 2e72 6320   device_name.rc 
│ │ │ +001b6480: 2667 743b 2031 0a20 2063 6861 6e67 6564  > 1.  changed
│ │ │ +001b6490: 5f77 6865 6e3a 2066 616c 7365 0a20 2063  _when: false.  c
│ │ │ +001b64a0: 6865 636b 5f6d 6f64 653a 2066 616c 7365  heck_mode: false
│ │ │ +001b64b0: 0a20 2077 6865 6e3a 0a20 202d 2028 206e  .  when:.  - ( n
│ │ │ +001b64c0: 6f74 2028 2022 6b65 726e 656c 2220 696e  ot ( "kernel" in
│ │ │ +001b64d0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001b64e0: 6163 6b61 6765 7320 616e 6420 2262 6f6f  ackages and "boo
│ │ │ +001b64f0: 7463 2220 696e 2061 6e73 6962 6c65 5f66  tc" in ansible_f
│ │ │ +001b6500: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ +001b6510: 2020 616e 6420 6e6f 7420 226f 7065 6e73    and not "opens
│ │ │ +001b6520: 6869 6674 2d6b 7562 656c 6574 2220 696e  hift-kubelet" in
│ │ │ +001b6530: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001b6540: 6163 6b61 6765 7320 616e 6420 226f 7374  ackages and "ost
│ │ │ +001b6550: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ +001b6560: 7072 6f63 5f63 6d64 6c69 6e65 0a20 2020  proc_cmdline.   
│ │ │ +001b6570: 2029 2061 6e64 206e 6f74 2028 2061 6e73   ) and not ( ans
│ │ │ +001b6580: 6962 6c65 5f76 6972 7475 616c 697a 6174  ible_virtualizat
│ │ │ +001b6590: 696f 6e5f 7479 7065 2069 6e20 5b22 646f  ion_type in ["do
│ │ │ +001b65a0: 636b 6572 222c 2022 6c78 6322 2c20 226f  cker", "lxc", "o
│ │ │ +001b65b0: 7065 6e76 7a22 2c20 2270 6f64 6d61 6e22  penvz", "podman"
│ │ │ +001b65c0: 2c0a 2020 2020 2263 6f6e 7461 696e 6572  ,.    "container
│ │ │ +001b65d0: 225d 2029 2029 0a20 202d 2027 222f 7661  "] ) ).  - '"/va
│ │ │ +001b65e0: 722f 6c6f 6722 2069 6e20 616e 7369 626c  r/log" in ansibl
│ │ │ +001b65f0: 655f 6d6f 756e 7473 207c 206d 6170 2861  e_mounts | map(a
│ │ │ +001b6600: 7474 7269 6275 7465 3d22 6d6f 756e 7422  ttribute="mount"
│ │ │ +001b6610: 2920 7c20 6c69 7374 270a 2020 7461 6773  ) | list'.  tags
│ │ │ +001b6620: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ +001b6630: 332d 4143 2d36 0a20 202d 204e 4953 542d  3-AC-6.  - NIST-
│ │ │ +001b6640: 3830 302d 3533 2d41 432d 3628 3129 0a20  800-53-AC-6(1). 
│ │ │ +001b6650: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +001b6660: 4d2d 3628 6129 0a20 202d 204e 4953 542d  M-6(a).  - NIST-
│ │ │ +001b6670: 3830 302d 3533 2d43 4d2d 3728 6129 0a20  800-53-CM-7(a). 
│ │ │ +001b6680: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +001b6690: 4d2d 3728 6229 0a20 202d 204e 4953 542d  M-7(b).  - NIST-
│ │ │ +001b66a0: 3830 302d 3533 2d4d 502d 370a 2020 2d20  800-53-MP-7.  - 
│ │ │ +001b66b0: 636f 6e66 6967 7572 655f 7374 7261 7465  configure_strate
│ │ │ +001b66c0: 6779 0a20 202d 2068 6967 685f 6469 7372  gy.  - high_disr
│ │ │ +001b66d0: 7570 7469 6f6e 0a20 202d 206c 6f77 5f63  uption.  - low_c
│ │ │ +001b66e0: 6f6d 706c 6578 6974 790a 2020 2d20 6d65  omplexity.  - me
│ │ │ +001b66f0: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ +001b6700: 2d20 6d6f 756e 745f 6f70 7469 6f6e 5f76  - mount_option_v
│ │ │ +001b6710: 6172 5f6c 6f67 5f6e 6f65 7865 630a 2020  ar_log_noexec.  
│ │ │ +001b6720: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ +001b6730: 6564 0a0a 2d20 6e61 6d65 3a20 2741 6464  ed..- name: 'Add
│ │ │ +001b6740: 206e 6f65 7865 6320 4f70 7469 6f6e 2074   noexec Option t
│ │ │ +001b6750: 6f20 2f76 6172 2f6c 6f67 3a20 4372 6561  o /var/log: Crea
│ │ │ +001b6760: 7465 206d 6f75 6e74 5f69 6e66 6f20 6469  te mount_info di
│ │ │ +001b6770: 6374 696f 6e61 7279 2076 6172 6961 626c  ctionary variabl
│ │ │ +001b6780: 6527 0a20 2073 6574 5f66 6163 743a 0a20  e'.  set_fact:. 
│ │ │ +001b6790: 2020 206d 6f75 6e74 5f69 6e66 6f3a 2027     mount_info: '
│ │ │ +001b67a0: 7b7b 206d 6f75 6e74 5f69 6e66 6f7c 6465  {{ mount_info|de
│ │ │ +001b67b0: 6661 756c 7428 7b7d 297c 636f 6d62 696e  fault({})|combin
│ │ │ +001b67c0: 6528 7b69 7465 6d2e 303a 2069 7465 6d2e  e({item.0: item.
│ │ │ +001b67d0: 317d 2920 7d7d 270a 2020 7769 7468 5f74  1}) }}'.  with_t
│ │ │ +001b67e0: 6f67 6574 6865 723a 0a20 202d 2027 7b7b  ogether:.  - '{{
│ │ │ +001b67f0: 2064 6576 6963 655f 6e61 6d65 2e73 7464   device_name.std
│ │ │ +001b6800: 6f75 745f 6c69 6e65 735b 305d 2e73 706c  out_lines[0].spl
│ │ │ +001b6810: 6974 2829 207c 206d 6170 2827 276c 6f77  it() | map(''low
│ │ │ +001b6820: 6572 2727 2920 7c20 6c69 7374 207d 7d27  er'') | list }}'
│ │ │ +001b6830: 0a20 202d 2027 7b7b 2064 6576 6963 655f  .  - '{{ device_
│ │ │ +001b6840: 6e61 6d65 2e73 7464 6f75 745f 6c69 6e65  name.stdout_line
│ │ │ +001b6850: 735b 315d 2e73 706c 6974 2829 207c 206c  s[1].split() | l
│ │ │ +001b6860: 6973 7420 7d7d 270a 2020 7768 656e 3a0a  ist }}'.  when:.
│ │ │ +001b6870: 2020 2d20 2820 6e6f 7420 2820 226b 6572    - ( not ( "ker
│ │ │ +001b6880: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ +001b6890: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ +001b68a0: 6e64 2022 626f 6f74 6322 2069 6e20 616e  nd "bootc" in an
│ │ │ +001b68b0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001b68c0: 6167 6573 0a20 2020 2061 6e64 206e 6f74  ages.    and not
│ │ │ +001b68d0: 2022 6f70 656e 7368 6966 742d 6b75 6265   "openshift-kube
│ │ │ +001b68e0: 6c65 7422 2069 6e20 616e 7369 626c 655f  let" in ansible_
│ │ │ +001b68f0: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ +001b6900: 6e64 2022 6f73 7472 6565 2220 696e 2061  nd "ostree" in a
│ │ │ +001b6910: 6e73 6962 6c65 5f70 726f 635f 636d 646c  nsible_proc_cmdl
│ │ │ +001b6920: 696e 650a 2020 2020 2920 616e 6420 6e6f  ine.    ) and no
│ │ │ +001b6930: 7420 2820 616e 7369 626c 655f 7669 7274  t ( ansible_virt
│ │ │ +001b6940: 7561 6c69 7a61 7469 6f6e 5f74 7970 6520  ualization_type 
│ │ │ +001b6950: 696e 205b 2264 6f63 6b65 7222 2c20 226c  in ["docker", "l
│ │ │ +001b6960: 7863 222c 2022 6f70 656e 767a 222c 2022  xc", "openvz", "
│ │ │ +001b6970: 706f 646d 616e 222c 0a20 2020 2022 636f  podman",.    "co
│ │ │ +001b6980: 6e74 6169 6e65 7222 5d20 2920 290a 2020  ntainer"] ) ).  
│ │ │ +001b6990: 2d20 2722 2f76 6172 2f6c 6f67 2220 696e  - '"/var/log" in
│ │ │ +001b69a0: 2061 6e73 6962 6c65 5f6d 6f75 6e74 7320   ansible_mounts 
│ │ │ +001b69b0: 7c20 6d61 7028 6174 7472 6962 7574 653d  | map(attribute=
│ │ │ +001b69c0: 226d 6f75 6e74 2229 207c 206c 6973 7427  "mount") | list'
│ │ │ +001b69d0: 0a20 202d 2064 6576 6963 655f 6e61 6d65  .  - device_name
│ │ │ +001b69e0: 2e73 7464 6f75 7420 6973 2064 6566 696e  .stdout is defin
│ │ │ +001b69f0: 6564 2061 6e64 2064 6576 6963 655f 6e61  ed and device_na
│ │ │ +001b6a00: 6d65 2e73 7464 6f75 745f 6c69 6e65 7320  me.stdout_lines 
│ │ │ +001b6a10: 6973 2064 6566 696e 6564 0a20 202d 2028  is defined.  - (
│ │ │ +001b6a20: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ +001b6a30: 7574 207c 206c 656e 6774 6820 2667 743b  ut | length >
│ │ │ +001b6a40: 2030 290a 2020 7461 6773 3a0a 2020 2d20   0).  tags:.  - 
│ │ │ +001b6a50: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ +001b6a60: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001b6a70: 2d41 432d 3628 3129 0a20 202d 204e 4953  -AC-6(1).  - NIS
│ │ │ +001b6a80: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ +001b6a90: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001b6aa0: 2d43 4d2d 3728 6129 0a20 202d 204e 4953  -CM-7(a).  - NIS
│ │ │ +001b6ab0: 542d 3830 302d 3533 2d43 4d2d 3728 6229  T-800-53-CM-7(b)
│ │ │ +001b6ac0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001b6ad0: 2d4d 502d 370a 2020 2d20 636f 6e66 6967  -MP-7.  - config
│ │ │ +001b6ae0: 7572 655f 7374 7261 7465 6779 0a20 202d  ure_strategy.  -
│ │ │ +001b6af0: 2068 6967 685f 6469 7372 7570 7469 6f6e   high_disruption
│ │ │ +001b6b00: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ +001b6b10: 6974 790a 2020 2d20 6d65 6469 756d 5f73  ity.  - medium_s
│ │ │ +001b6b20: 6576 6572 6974 790a 2020 2d20 6d6f 756e  everity.  - moun
│ │ │ +001b6b30: 745f 6f70 7469 6f6e 5f76 6172 5f6c 6f67  t_option_var_log
│ │ │ +001b6b40: 5f6e 6f65 7865 630a 2020 2d20 6e6f 5f72  _noexec.  - no_r
│ │ │ +001b6b50: 6562 6f6f 745f 6e65 6564 6564 0a0a 2d20  eboot_needed..- 
│ │ │ +001b6b60: 6e61 6d65 3a20 2741 6464 206e 6f65 7865  name: 'Add noexe
│ │ │ +001b6b70: 6320 4f70 7469 6f6e 2074 6f20 2f76 6172  c Option to /var
│ │ │ +001b6b80: 2f6c 6f67 3a20 4966 202f 7661 722f 6c6f  /log: If /var/lo
│ │ │ +001b6b90: 6720 6e6f 7420 6d6f 756e 7465 642c 2063  g not mounted, c
│ │ │ +001b6ba0: 7261 6674 206d 6f75 6e74 5f69 6e66 6f0a  raft mount_info.
│ │ │ +001b6bb0: 2020 2020 6d61 6e75 616c 6c79 270a 2020      manually'.  
│ │ │ +001b6bc0: 7365 745f 6661 6374 3a0a 2020 2020 6d6f  set_fact:.    mo
│ │ │ +001b6bd0: 756e 745f 696e 666f 3a20 277b 7b20 6d6f  unt_info: '{{ mo
│ │ │ +001b6be0: 756e 745f 696e 666f 7c64 6566 6175 6c74  unt_info|default
│ │ │ +001b6bf0: 287b 7d29 7c63 6f6d 6269 6e65 287b 6974  ({})|combine({it
│ │ │ +001b6c00: 656d 2e30 3a20 6974 656d 2e31 7d29 207d  em.0: item.1}) }
│ │ │ +001b6c10: 7d27 0a20 2077 6974 685f 746f 6765 7468  }'.  with_togeth
│ │ │ +001b6c20: 6572 3a0a 2020 2d20 2d20 7461 7267 6574  er:.  - - target
│ │ │ +001b6c30: 0a20 2020 202d 2073 6f75 7263 650a 2020  .    - source.  
│ │ │ +001b6c40: 2020 2d20 6673 7479 7065 0a20 2020 202d    - fstype.    -
│ │ │ +001b6c50: 206f 7074 696f 6e73 0a20 202d 202d 202f   options.  - - /
│ │ │ +001b6c60: 7661 722f 6c6f 670a 2020 2020 2d20 2727  var/log.    - ''
│ │ │ +001b6c70: 0a20 2020 202d 2027 270a 2020 2020 2d20  .    - ''.    - 
│ │ │ +001b6c80: 6465 6661 756c 7473 0a20 2077 6865 6e3a  defaults.  when:
│ │ │ +001b6c90: 0a20 202d 2028 206e 6f74 2028 2022 6b65  .  - ( not ( "ke
│ │ │ +001b6ca0: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ +001b6cb0: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ +001b6cc0: 616e 6420 2262 6f6f 7463 2220 696e 2061  and "bootc" in a
│ │ │ +001b6cd0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +001b6ce0: 6b61 6765 730a 2020 2020 616e 6420 6e6f  kages.    and no
│ │ │ +001b6cf0: 7420 226f 7065 6e73 6869 6674 2d6b 7562  t "openshift-kub
│ │ │ +001b6d00: 656c 6574 2220 696e 2061 6e73 6962 6c65  elet" in ansible
│ │ │ +001b6d10: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ +001b6d20: 616e 6420 226f 7374 7265 6522 2069 6e20  and "ostree" in 
│ │ │ +001b6d30: 616e 7369 626c 655f 7072 6f63 5f63 6d64  ansible_proc_cmd
│ │ │ +001b6d40: 6c69 6e65 0a20 2020 2029 2061 6e64 206e  line.    ) and n
│ │ │ +001b6d50: 6f74 2028 2061 6e73 6962 6c65 5f76 6972  ot ( ansible_vir
│ │ │ +001b6d60: 7475 616c 697a 6174 696f 6e5f 7479 7065  tualization_type
│ │ │ +001b6d70: 2069 6e20 5b22 646f 636b 6572 222c 2022   in ["docker", "
│ │ │ +001b6d80: 6c78 6322 2c20 226f 7065 6e76 7a22 2c20  lxc", "openvz", 
│ │ │ +001b6d90: 2270 6f64 6d61 6e22 2c0a 2020 2020 2263  "podman",.    "c
│ │ │ +001b6da0: 6f6e 7461 696e 6572 225d 2029 2029 0a20  ontainer"] ) ). 
│ │ │ +001b6db0: 202d 2027 222f 7661 722f 6c6f 6722 2069   - '"/var/log" i
│ │ │ +001b6dc0: 6e20 616e 7369 626c 655f 6d6f 756e 7473  n ansible_mounts
│ │ │ +001b6dd0: 207c 206d 6170 2861 7474 7269 6275 7465   | map(attribute
│ │ │ +001b6de0: 3d22 6d6f 756e 7422 2920 7c20 6c69 7374  ="mount") | list
│ │ │ +001b6df0: 270a 2020 2d20 2822 2d2d 6673 7461 6222  '.  - ("--fstab"
│ │ │ +001b6e00: 207c 206c 656e 6774 6820 3d3d 2030 290a   | length == 0).
│ │ │ +001b6e10: 2020 2d20 6465 7669 6365 5f6e 616d 652e    - device_name.
│ │ │ +001b6e20: 7374 646f 7574 2069 7320 6465 6669 6e65  stdout is define
│ │ │ +001b6e30: 6420 616e 6420 6465 7669 6365 5f6e 616d  d and device_nam
│ │ │ +001b6e40: 652e 7374 646f 7574 5f6c 696e 6573 2069  e.stdout_lines i
│ │ │ +001b6e50: 7320 6465 6669 6e65 640a 2020 2d20 2864  s defined.  - (d
│ │ │ +001b6e60: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ +001b6e70: 7420 7c20 6c65 6e67 7468 203d 3d20 3029  t | length == 0)
│ │ │ +001b6e80: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ +001b6e90: 542d 3830 302d 3533 2d41 432d 360a 2020  T-800-53-AC-6.  
│ │ │ +001b6ea0: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ +001b6eb0: 2d36 2831 290a 2020 2d20 4e49 5354 2d38  -6(1).  - NIST-8
│ │ │ +001b6ec0: 3030 2d35 332d 434d 2d36 2861 290a 2020  00-53-CM-6(a).  
│ │ │ +001b6ed0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +001b6ee0: 2d37 2861 290a 2020 2d20 4e49 5354 2d38  -7(a).  - NIST-8
│ │ │ +001b6ef0: 3030 2d35 332d 434d 2d37 2862 290a 2020  00-53-CM-7(b).  
│ │ │ +001b6f00: 2d20 4e49 5354 2d38 3030 2d35 332d 4d50  - NIST-800-53-MP
│ │ │ +001b6f10: 2d37 0a20 202d 2063 6f6e 6669 6775 7265  -7.  - configure
│ │ │ +001b6f20: 5f73 7472 6174 6567 790a 2020 2d20 6869  _strategy.  - hi
│ │ │ +001b6f30: 6768 5f64 6973 7275 7074 696f 6e0a 2020  gh_disruption.  
│ │ │ +001b6f40: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ +001b6f50: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ +001b6f60: 7269 7479 0a20 202d 206d 6f75 6e74 5f6f  rity.  - mount_o
│ │ │ +001b6f70: 7074 696f 6e5f 7661 725f 6c6f 675f 6e6f  ption_var_log_no
│ │ │ +001b6f80: 6578 6563 0a20 202d 206e 6f5f 7265 626f  exec.  - no_rebo
│ │ │ +001b6f90: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d  ot_needed..- nam
│ │ │ +001b6fa0: 653a 2027 4164 6420 6e6f 6578 6563 204f  e: 'Add noexec O
│ │ │ +001b6fb0: 7074 696f 6e20 746f 202f 7661 722f 6c6f  ption to /var/lo
│ │ │ +001b6fc0: 673a 204d 616b 6520 7375 7265 206e 6f65  g: Make sure noe
│ │ │ +001b6fd0: 7865 6320 6f70 7469 6f6e 2069 7320 7061  xec option is pa
│ │ │ +001b6fe0: 7274 206f 6620 7468 6520 746f 0a20 2020  rt of the to.   
│ │ │ +001b6ff0: 202f 7661 722f 6c6f 6720 6f70 7469 6f6e   /var/log option
│ │ │ +001b7000: 7327 0a20 2073 6574 5f66 6163 743a 0a20  s'.  set_fact:. 
│ │ │ +001b7010: 2020 206d 6f75 6e74 5f69 6e66 6f3a 2027     mount_info: '
│ │ │ +001b7020: 7b7b 206d 6f75 6e74 5f69 6e66 6f20 7c20  {{ mount_info | 
│ │ │ +001b7030: 636f 6d62 696e 6528 207b 2727 6f70 7469  combine( {''opti
│ │ │ +001b7040: 6f6e 7327 273a 2727 2727 7e28 6d6f 756e  ons'':''''~(moun
│ │ │ +001b7050: 745f 696e 666f 2e6f 7074 696f 6e73 207c  t_info.options |
│ │ │ +001b7060: 0a20 2020 2020 2064 6566 6175 6c74 2827  .      default('
│ │ │ +001b7070: 2727 2729 297e 2827 272c 2727 2069 6620  '''))~('','' if 
│ │ │ +001b7080: 286d 6f75 6e74 5f69 6e66 6f2e 6f70 7469  (mount_info.opti
│ │ │ +001b7090: 6f6e 7320 7c20 6465 6661 756c 7428 2727  ons | default(''
│ │ │ +001b70a0: 2727 2929 2065 6c73 6520 2727 2727 297e  '')) else '''')~
│ │ │ +001b70b0: 2727 6e6f 6578 6563 2727 0a20 2020 2020  ''noexec''.     
│ │ │ +001b70c0: 207d 2920 7d7d 270a 2020 7768 656e 3a0a   }) }}'.  when:.
│ │ │ +001b70d0: 2020 2d20 2820 6e6f 7420 2820 226b 6572    - ( not ( "ker
│ │ │ +001b70e0: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ +001b70f0: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ +001b7100: 6e64 2022 626f 6f74 6322 2069 6e20 616e  nd "bootc" in an
│ │ │ +001b7110: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001b7120: 6167 6573 0a20 2020 2061 6e64 206e 6f74  ages.    and not
│ │ │ +001b7130: 2022 6f70 656e 7368 6966 742d 6b75 6265   "openshift-kube
│ │ │ +001b7140: 6c65 7422 2069 6e20 616e 7369 626c 655f  let" in ansible_
│ │ │ +001b7150: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ +001b7160: 6e64 2022 6f73 7472 6565 2220 696e 2061  nd "ostree" in a
│ │ │ +001b7170: 6e73 6962 6c65 5f70 726f 635f 636d 646c  nsible_proc_cmdl
│ │ │ +001b7180: 696e 650a 2020 2020 2920 616e 6420 6e6f  ine.    ) and no
│ │ │ +001b7190: 7420 2820 616e 7369 626c 655f 7669 7274  t ( ansible_virt
│ │ │ +001b71a0: 7561 6c69 7a61 7469 6f6e 5f74 7970 6520  ualization_type 
│ │ │ +001b71b0: 696e 205b 2264 6f63 6b65 7222 2c20 226c  in ["docker", "l
│ │ │ +001b71c0: 7863 222c 2022 6f70 656e 767a 222c 2022  xc", "openvz", "
│ │ │ +001b71d0: 706f 646d 616e 222c 0a20 2020 2022 636f  podman",.    "co
│ │ │ +001b71e0: 6e74 6169 6e65 7222 5d20 2920 290a 2020  ntainer"] ) ).  
│ │ │ +001b71f0: 2d20 2722 2f76 6172 2f6c 6f67 2220 696e  - '"/var/log" in
│ │ │ +001b7200: 2061 6e73 6962 6c65 5f6d 6f75 6e74 7320   ansible_mounts 
│ │ │ +001b7210: 7c20 6d61 7028 6174 7472 6962 7574 653d  | map(attribute=
│ │ │ +001b7220: 226d 6f75 6e74 2229 207c 206c 6973 7427  "mount") | list'
│ │ │ +001b7230: 0a20 202d 206d 6f75 6e74 5f69 6e66 6f20  .  - mount_info 
│ │ │ +001b7240: 6973 2064 6566 696e 6564 2061 6e64 2022  is defined and "
│ │ │ +001b7250: 6e6f 6578 6563 2220 6e6f 7420 696e 2028  noexec" not in (
│ │ │ +001b7260: 6d6f 756e 745f 696e 666f 2e6f 7074 696f  mount_info.optio
│ │ │ +001b7270: 6e73 207c 2064 6566 6175 6c74 2827 2729  ns | default('')
│ │ │ +001b7280: 290a 2020 7461 6773 3a0a 2020 2d20 4e49  ).  tags:.  - NI
│ │ │ +001b7290: 5354 2d38 3030 2d35 332d 4143 2d36 0a20  ST-800-53-AC-6. 
│ │ │ +001b72a0: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ +001b72b0: 432d 3628 3129 0a20 202d 204e 4953 542d  C-6(1).  - NIST-
│ │ │ +001b72c0: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ +001b72d0: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +001b72e0: 4d2d 3728 6129 0a20 202d 204e 4953 542d  M-7(a).  - NIST-
│ │ │ +001b72f0: 3830 302d 3533 2d43 4d2d 3728 6229 0a20  800-53-CM-7(b). 
│ │ │ +001b7300: 202d 204e 4953 542d 3830 302d 3533 2d4d   - NIST-800-53-M
│ │ │ +001b7310: 502d 370a 2020 2d20 636f 6e66 6967 7572  P-7.  - configur
│ │ │ +001b7320: 655f 7374 7261 7465 6779 0a20 202d 2068  e_strategy.  - h
│ │ │ +001b7330: 6967 685f 6469 7372 7570 7469 6f6e 0a20  igh_disruption. 
│ │ │ +001b7340: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ +001b7350: 790a 2020 2d20 6d65 6469 756d 5f73 6576  y.  - medium_sev
│ │ │ +001b7360: 6572 6974 790a 2020 2d20 6d6f 756e 745f  erity.  - mount_
│ │ │ +001b7370: 6f70 7469 6f6e 5f76 6172 5f6c 6f67 5f6e  option_var_log_n
│ │ │ +001b7380: 6f65 7865 630a 2020 2d20 6e6f 5f72 6562  oexec.  - no_reb
│ │ │ +001b7390: 6f6f 745f 6e65 6564 6564 0a0a 2d20 6e61  oot_needed..- na
│ │ │ +001b73a0: 6d65 3a20 2741 6464 206e 6f65 7865 6320  me: 'Add noexec 
│ │ │ +001b73b0: 4f70 7469 6f6e 2074 6f20 2f76 6172 2f6c  Option to /var/l
│ │ │ +001b73c0: 6f67 3a20 456e 7375 7265 202f 7661 722f  og: Ensure /var/
│ │ │ +001b73d0: 6c6f 6720 6973 206d 6f75 6e74 6564 2077  log is mounted w
│ │ │ +001b73e0: 6974 6820 6e6f 6578 6563 206f 7074 696f  ith noexec optio
│ │ │ +001b73f0: 6e27 0a20 2061 6e73 6962 6c65 2e70 6f73  n'.  ansible.pos
│ │ │ +001b7400: 6978 2e6d 6f75 6e74 3a0a 2020 2020 7061  ix.mount:.    pa
│ │ │ +001b7410: 7468 3a20 2f76 6172 2f6c 6f67 0a20 2020  th: /var/log.   
│ │ │ +001b7420: 2073 7263 3a20 277b 7b20 6d6f 756e 745f   src: '{{ mount_
│ │ │ +001b7430: 696e 666f 2e73 6f75 7263 6520 7c20 6465  info.source | de
│ │ │ +001b7440: 6661 756c 7428 2727 2727 2920 7d7d 270a  fault('''') }}'.
│ │ │ +001b7450: 2020 2020 6f70 7473 3a20 277b 7b20 6d6f      opts: '{{ mo
│ │ │ +001b7460: 756e 745f 696e 666f 2e6f 7074 696f 6e73  unt_info.options
│ │ │ +001b7470: 207c 2064 6566 6175 6c74 2827 2727 2729   | default('''')
│ │ │ +001b7480: 207d 7d27 0a20 2020 2073 7461 7465 3a20   }}'.    state: 
│ │ │ +001b7490: 6d6f 756e 7465 640a 2020 2020 6673 7479  mounted.    fsty
│ │ │ +001b74a0: 7065 3a20 277b 7b20 6d6f 756e 745f 696e  pe: '{{ mount_in
│ │ │ +001b74b0: 666f 2e66 7374 7970 6520 7c20 6465 6661  fo.fstype | defa
│ │ │ +001b74c0: 756c 7428 2727 2727 2920 7d7d 270a 2020  ult('''') }}'.  
│ │ │ +001b74d0: 7265 6769 7374 6572 3a20 6d6f 756e 745f  register: mount_
│ │ │ +001b74e0: 7265 7375 6c74 0a20 2066 6169 6c65 645f  result.  failed_
│ │ │ +001b74f0: 7768 656e 3a0a 2020 2d20 6d6f 756e 745f  when:.  - mount_
│ │ │ +001b7500: 7265 7375 6c74 2069 7320 6661 696c 6564  result is failed
│ │ │ +001b7510: 0a20 202d 2027 2727 7461 7267 6574 2069  .  - '''target i
│ │ │ +001b7520: 7320 6275 7379 2727 206e 6f74 2069 6e20  s busy'' not in 
│ │ │ +001b7530: 286d 6f75 6e74 5f72 6573 756c 742e 6d73  (mount_result.ms
│ │ │ +001b7540: 6720 7c20 6465 6661 756c 7428 2727 2727  g | default(''''
│ │ │ +001b7550: 2929 270a 2020 2d20 2727 2761 6c72 6561  ))'.  - '''alrea
│ │ │ +001b7560: 6479 206d 6f75 6e74 6564 2727 206e 6f74  dy mounted'' not
│ │ │ +001b7570: 2069 6e20 286d 6f75 6e74 5f72 6573 756c   in (mount_resul
│ │ │ +001b7580: 742e 6d73 6720 7c20 6465 6661 756c 7428  t.msg | default(
│ │ │ +001b7590: 2727 2727 2929 270a 2020 7768 656e 3a0a  ''''))'.  when:.
│ │ │ +001b75a0: 2020 2d20 2820 6e6f 7420 2820 226b 6572    - ( not ( "ker
│ │ │ +001b75b0: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ +001b75c0: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ +001b75d0: 6e64 2022 626f 6f74 6322 2069 6e20 616e  nd "bootc" in an
│ │ │ +001b75e0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001b75f0: 6167 6573 0a20 2020 2061 6e64 206e 6f74  ages.    and not
│ │ │ +001b7600: 2022 6f70 656e 7368 6966 742d 6b75 6265   "openshift-kube
│ │ │ +001b7610: 6c65 7422 2069 6e20 616e 7369 626c 655f  let" in ansible_
│ │ │ +001b7620: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ +001b7630: 6e64 2022 6f73 7472 6565 2220 696e 2061  nd "ostree" in a
│ │ │ +001b7640: 6e73 6962 6c65 5f70 726f 635f 636d 646c  nsible_proc_cmdl
│ │ │ +001b7650: 696e 650a 2020 2020 2920 616e 6420 6e6f  ine.    ) and no
│ │ │ +001b7660: 7420 2820 616e 7369 626c 655f 7669 7274  t ( ansible_virt
│ │ │ +001b7670: 7561 6c69 7a61 7469 6f6e 5f74 7970 6520  ualization_type 
│ │ │ +001b7680: 696e 205b 2264 6f63 6b65 7222 2c20 226c  in ["docker", "l
│ │ │ +001b7690: 7863 222c 2022 6f70 656e 767a 222c 2022  xc", "openvz", "
│ │ │ +001b76a0: 706f 646d 616e 222c 0a20 2020 2022 636f  podman",.    "co
│ │ │ +001b76b0: 6e74 6169 6e65 7222 5d20 2920 290a 2020  ntainer"] ) ).  
│ │ │ +001b76c0: 2d20 2722 2f76 6172 2f6c 6f67 2220 696e  - '"/var/log" in
│ │ │ +001b76d0: 2061 6e73 6962 6c65 5f6d 6f75 6e74 7320   ansible_mounts 
│ │ │ +001b76e0: 7c20 6d61 7028 6174 7472 6962 7574 653d  | map(attribute=
│ │ │ +001b76f0: 226d 6f75 6e74 2229 207c 206c 6973 7427  "mount") | list'
│ │ │ +001b7700: 0a20 202d 206d 6f75 6e74 5f69 6e66 6f20  .  - mount_info 
│ │ │ +001b7710: 6973 2064 6566 696e 6564 0a20 202d 2028  is defined.  - (
│ │ │ +001b7720: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ +001b7730: 7574 2069 7320 6465 6669 6e65 6420 616e  ut is defined an
│ │ │ +001b7740: 6420 2864 6576 6963 655f 6e61 6d65 2e73  d (device_name.s
│ │ │ +001b7750: 7464 6f75 7420 7c20 6c65 6e67 7468 2026  tdout | length &
│ │ │ +001b7760: 6774 3b20 3029 2920 6f72 2028 222d 2d66  gt; 0)) or ("--f
│ │ │ +001b7770: 7374 6162 220a 2020 2020 7c20 6c65 6e67  stab".    | leng
│ │ │ +001b7780: 7468 203d 3d20 3029 0a20 2074 6167 733a  th == 0).  tags:
│ │ │ +001b7790: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001b77a0: 2d41 432d 360a 2020 2d20 4e49 5354 2d38  -AC-6.  - NIST-8
│ │ │ +001b77b0: 3030 2d35 332d 4143 2d36 2831 290a 2020  00-53-AC-6(1).  
│ │ │ +001b77c0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +001b77d0: 2d36 2861 290a 2020 2d20 4e49 5354 2d38  -6(a).  - NIST-8
│ │ │ +001b77e0: 3030 2d35 332d 434d 2d37 2861 290a 2020  00-53-CM-7(a).  
│ │ │ +001b77f0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +001b7800: 2d37 2862 290a 2020 2d20 4e49 5354 2d38  -7(b).  - NIST-8
│ │ │ +001b7810: 3030 2d35 332d 4d50 2d37 0a20 202d 2063  00-53-MP-7.  - c
│ │ │ +001b7820: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ +001b7830: 790a 2020 2d20 6869 6768 5f64 6973 7275  y.  - high_disru
│ │ │ +001b7840: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f  ption.  - low_co
│ │ │ +001b7850: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ +001b7860: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ +001b7870: 206d 6f75 6e74 5f6f 7074 696f 6e5f 7661   mount_option_va
│ │ │ +001b7880: 725f 6c6f 675f 6e6f 6578 6563 0a20 202d  r_log_noexec.  -
│ │ │ +001b7890: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ +001b78a0: 640a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  d.
< │ │ │ +001b78b0: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Sh │ │ │ +001b7960: 656c 6c20 7363 7269 7074 20e2 87b2 3c2f ell script ...
│ │ │ +001b61b0: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +001b61e0: 696f 6e3a 3c2f 7468 3e3c 7464 3e68 6967 ion:hig │ │ │ +001b61f0: 683c 2f74 643e 3c2f 7472 3e3c 7472 3e3c h
Strate │ │ │ +001b6230: 6779 3a3c 2f74 683e 3c74 643e 636f 6e66 gy:conf │ │ │ +001b6240: 6967 7572 653c 2f74 643e 3c2f 7472 3e3c igure
< │ │ │ +001b7a10: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
# Remediation 
│ │ │ +001b7a30: 6973 2061 7070 6c69 6361 626c 6520 6f6e  is applicable on
│ │ │ +001b7a40: 6c79 2069 6e20 6365 7274 6169 6e20 706c  ly in certain pl
│ │ │ +001b7a50: 6174 666f 726d 730a 6966 2028 2021 2028  atforms.if ( ! (
│ │ │ +001b7a60: 207b 2072 706d 202d 2d71 7569 6574 202d   { rpm --quiet -
│ │ │ +001b7a70: 7120 6b65 726e 656c 203b 7d20 2661 6d70  q kernel ;} &
│ │ │ +001b7a80: 3b26 616d 703b 207b 2072 706d 202d 2d71  ;& { rpm --q
│ │ │ +001b7a90: 7569 6574 202d 7120 626f 6f74 6320 3b7d  uiet -q bootc ;}
│ │ │ +001b7aa0: 2026 616d 703b 2661 6d70 3b20 7b20 2120   && { ! 
│ │ │ +001b7ab0: 7270 6d20 2d2d 7175 6965 7420 2d71 206f  rpm --quiet -q o
│ │ │ +001b7ac0: 7065 6e73 6869 6674 2d6b 7562 656c 6574  penshift-kubelet
│ │ │ +001b7ad0: 203b 7d20 2661 6d70 3b26 616d 703b 2028   ;} && (
│ │ │ +001b7ae0: 5b20 2d66 202f 7275 6e2f 6f73 7472 6565  [ -f /run/ostree
│ │ │ +001b7af0: 2d62 6f6f 7465 6420 5d20 7c7c 205b 202d  -booted ] || [ -
│ │ │ +001b7b00: 4c20 2f6f 7374 7265 6520 5d29 2029 2026  L /ostree ]) ) &
│ │ │ +001b7b10: 616d 703b 2661 6d70 3b20 2120 2820 5b20  amp;& ! ( [ 
│ │ │ +001b7b20: 2d66 202f 2e64 6f63 6b65 7265 6e76 205d  -f /.dockerenv ]
│ │ │ +001b7b30: 207c 7c20 5b20 2d66 202f 7275 6e2f 2e63   || [ -f /run/.c
│ │ │ +001b7b40: 6f6e 7461 696e 6572 656e 7620 5d20 2920  ontainerenv ] ) 
│ │ │ +001b7b50: 2920 2661 6d70 3b26 616d 703b 207b 2028  ) && { (
│ │ │ +001b7b60: 2066 696e 646d 6e74 202d 2d6b 6572 6e65   findmnt --kerne
│ │ │ +001b7b70: 6c20 222f 7661 722f 6c6f 6722 2026 6774  l "/var/log" >
│ │ │ +001b7b80: 3b20 2f64 6576 2f6e 756c 6c20 7c7c 2066  ; /dev/null || f
│ │ │ +001b7b90: 696e 646d 6e74 202d 2d66 7374 6162 2022  indmnt --fstab "
│ │ │ +001b7ba0: 2f76 6172 2f6c 6f67 2220 2667 743b 202f  /var/log" > /
│ │ │ +001b7bb0: 6465 762f 6e75 6c6c 2029 3b20 7d3b 2074  dev/null ); }; t
│ │ │ +001b7bc0: 6865 6e0a 0a66 756e 6374 696f 6e20 7065  hen..function pe
│ │ │ +001b7bd0: 7266 6f72 6d5f 7265 6d65 6469 6174 696f  rform_remediatio
│ │ │ +001b7be0: 6e20 7b0a 0a20 2020 200a 2020 2020 2020  n {..    .      
│ │ │ +001b7bf0: 2020 2320 7468 6520 6d6f 756e 7420 706f    # the mount po
│ │ │ +001b7c00: 696e 7420 2f76 6172 2f6c 6f67 2068 6173  int /var/log has
│ │ │ +001b7c10: 2074 6f20 6265 2064 6566 696e 6564 2069   to be defined i
│ │ │ +001b7c20: 6e20 2f65 7463 2f66 7374 6162 0a20 2020  n /etc/fstab.   
│ │ │ +001b7c30: 2020 2020 2023 2062 6566 6f72 6520 7468       # before th
│ │ │ +001b7c40: 6973 2072 656d 6564 6961 7469 6f6e 2063  is remediation c
│ │ │ +001b7c50: 616e 2062 6520 6578 6563 7574 6564 2e20  an be executed. 
│ │ │ +001b7c60: 496e 2063 6173 6520 6974 2069 7320 6e6f  In case it is no
│ │ │ +001b7c70: 7420 6465 6669 6e65 642c 2074 6865 0a20  t defined, the. 
│ │ │ +001b7c80: 2020 2020 2020 2023 2072 656d 6564 6961         # remedia
│ │ │ +001b7c90: 7469 6f6e 2061 626f 7274 7320 616e 6420  tion aborts and 
│ │ │ +001b7ca0: 6e6f 2063 6861 6e67 6573 2072 6567 6172  no changes regar
│ │ │ +001b7cb0: 6469 6e67 2074 6865 206d 6f75 6e74 2070  ding the mount p
│ │ │ +001b7cc0: 6f69 6e74 2061 7265 2064 6f6e 652e 0a20  oint are done.. 
│ │ │ +001b7cd0: 2020 2020 2020 206d 6f75 6e74 5f70 6f69         mount_poi
│ │ │ +001b7ce0: 6e74 5f6d 6174 6368 5f72 6567 6578 703d  nt_match_regexp=
│ │ │ +001b7cf0: 2224 2870 7269 6e74 6620 225e 5b5b 3a73  "$(printf "^[[:s
│ │ │ +001b7d00: 7061 6365 3a5d 5d2a 5b5e 235d 2e2a 5b5b  pace:]]*[^#].*[[
│ │ │ +001b7d10: 3a73 7061 6365 3a5d 5d25 735b 5b3a 7370  :space:]]%s[[:sp
│ │ │ +001b7d20: 6163 653a 5d5d 2220 222f 7661 722f 6c6f  ace:]]" "/var/lo
│ │ │ +001b7d30: 6722 2922 0a0a 2020 2020 6772 6570 2022  g")"..    grep "
│ │ │ +001b7d40: 246d 6f75 6e74 5f70 6f69 6e74 5f6d 6174  $mount_point_mat
│ │ │ +001b7d50: 6368 5f72 6567 6578 7022 202d 7120 2f65  ch_regexp" -q /e
│ │ │ +001b7d60: 7463 2f66 7374 6162 205c 0a20 2020 2020  tc/fstab \.     
│ │ │ +001b7d70: 2020 207c 7c20 7b20 6563 686f 2022 5468     || { echo "Th
│ │ │ +001b7d80: 6520 6d6f 756e 7420 706f 696e 7420 272f  e mount point '/
│ │ │ +001b7d90: 7661 722f 6c6f 6727 2069 7320 6e6f 7420  var/log' is not 
│ │ │ +001b7da0: 6576 656e 2069 6e20 2f65 7463 2f66 7374  even in /etc/fst
│ │ │ +001b7db0: 6162 2c20 736f 2077 6520 6361 6e27 7420  ab, so we can't 
│ │ │ +001b7dc0: 7365 7420 7570 206d 6f75 6e74 206f 7074  set up mount opt
│ │ │ +001b7dd0: 696f 6e73 2220 2667 743b 2661 6d70 3b32  ions" >&2
│ │ │ +001b7de0: 3b0a 2020 2020 2020 2020 2020 2020 2020  ;.              
│ │ │ +001b7df0: 2020 6563 686f 2022 4e6f 7420 7265 6d65    echo "Not reme
│ │ │ +001b7e00: 6469 6174 696e 672c 2062 6563 6175 7365  diating, because
│ │ │ +001b7e10: 2074 6865 7265 2069 7320 6e6f 2072 6563   there is no rec
│ │ │ +001b7e20: 6f72 6420 6f66 202f 7661 722f 6c6f 6720  ord of /var/log 
│ │ │ +001b7e30: 696e 202f 6574 632f 6673 7461 6222 2026  in /etc/fstab" &
│ │ │ +001b7e40: 6774 3b26 616d 703b 323b 2072 6574 7572  gt;&2; retur
│ │ │ +001b7e50: 6e20 313b 207d 0a20 2020 200a 0a0a 2020  n 1; }.    ...  
│ │ │ +001b7e60: 2020 6d6f 756e 745f 706f 696e 745f 6d61    mount_point_ma
│ │ │ +001b7e70: 7463 685f 7265 6765 7870 3d22 2428 7072  tch_regexp="$(pr
│ │ │ +001b7e80: 696e 7466 2022 5e5b 5b3a 7370 6163 653a  intf "^[[:space:
│ │ │ +001b7e90: 5d5d 2a5b 5e23 5d2e 2a5b 5b3a 7370 6163  ]]*[^#].*[[:spac
│ │ │ +001b7ea0: 653a 5d5d 2573 5b5b 3a73 7061 6365 3a5d  e:]]%s[[:space:]
│ │ │ +001b7eb0: 5d22 202f 7661 722f 6c6f 6729 220a 0a20  ]" /var/log)".. 
│ │ │ +001b7ec0: 2020 2023 2049 6620 7468 6520 6d6f 756e     # If the moun
│ │ │ +001b7ed0: 7420 706f 696e 7420 6973 206e 6f74 2069  t point is not i
│ │ │ +001b7ee0: 6e20 2f65 7463 2f66 7374 6162 2c20 6765  n /etc/fstab, ge
│ │ │ +001b7ef0: 7420 7072 6576 696f 7573 206d 6f75 6e74  t previous mount
│ │ │ +001b7f00: 206f 7074 696f 6e73 2066 726f 6d20 2f65   options from /e
│ │ │ +001b7f10: 7463 2f6d 7461 620a 2020 2020 6966 2021  tc/mtab.    if !
│ │ │ +001b7f20: 2067 7265 7020 2d71 2022 246d 6f75 6e74   grep -q "$mount
│ │ │ +001b7f30: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ +001b7f40: 6578 7022 202f 6574 632f 6673 7461 623b  exp" /etc/fstab;
│ │ │ +001b7f50: 2074 6865 6e0a 2020 2020 2020 2020 2320   then.        # 
│ │ │ +001b7f60: 7275 6e74 696d 6520 6f70 7473 2077 6974  runtime opts wit
│ │ │ +001b7f70: 686f 7574 2073 6f6d 6520 6175 746f 6d61  hout some automa
│ │ │ +001b7f80: 7469 6320 6b65 726e 656c 2f75 7365 7273  tic kernel/users
│ │ │ +001b7f90: 7061 6365 2d61 6464 6564 2064 6566 6175  pace-added defau
│ │ │ +001b7fa0: 6c74 730a 2020 2020 2020 2020 7072 6576  lts.        prev
│ │ │ +001b7fb0: 696f 7573 5f6d 6f75 6e74 5f6f 7074 733d  ious_mount_opts=
│ │ │ +001b7fc0: 2428 6772 6570 2022 246d 6f75 6e74 5f70  $(grep "$mount_p
│ │ │ +001b7fd0: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ +001b7fe0: 7022 202f 6574 632f 6d74 6162 207c 2068  p" /etc/mtab | h
│ │ │ +001b7ff0: 6561 6420 2d31 207c 2020 6177 6b20 277b  ead -1 |  awk '{
│ │ │ +001b8000: 7072 696e 7420 2434 7d27 205c 0a20 2020  print $4}' \.   
│ │ │ +001b8010: 2020 2020 2020 2020 2020 2020 2020 2020                  
│ │ │ +001b8020: 207c 2073 6564 202d 4520 2273 2f28 7277   | sed -E "s/(rw
│ │ │ +001b8030: 7c64 6566 6175 6c74 737c 7365 636c 6162  |defaults|seclab
│ │ │ +001b8040: 656c 7c6e 6f65 7865 6329 282c 7c24 292f  el|noexec)(,|$)/
│ │ │ +001b8050: 2f67 3b73 2f2c 242f 2f22 290a 2020 2020  /g;s/,$//").    
│ │ │ +001b8060: 2020 2020 5b20 2224 7072 6576 696f 7573      [ "$previous
│ │ │ +001b8070: 5f6d 6f75 6e74 5f6f 7074 7322 205d 2026  _mount_opts" ] &
│ │ │ +001b8080: 616d 703b 2661 6d70 3b20 7072 6576 696f  amp;& previo
│ │ │ +001b8090: 7573 5f6d 6f75 6e74 5f6f 7074 732b 3d22  us_mount_opts+="
│ │ │ +001b80a0: 2c22 0a20 2020 2020 2020 2023 2049 6e20  ,".        # In 
│ │ │ +001b80b0: 6973 6f39 3636 3020 6669 6c65 7379 7374  iso9660 filesyst
│ │ │ +001b80c0: 656d 7320 6d74 6162 2063 6f75 6c64 2064  ems mtab could d
│ │ │ +001b80d0: 6573 6372 6962 6520 6120 2262 6c6f 636b  escribe a "block
│ │ │ +001b80e0: 7369 7a65 2220 7661 6c75 652c 2074 6869  size" value, thi
│ │ │ +001b80f0: 7320 7368 6f75 6c64 2062 6520 7265 666c  s should be refl
│ │ │ +001b8100: 6563 7465 6420 696e 0a20 2020 2020 2020  ected in.       
│ │ │ +001b8110: 2023 2066 7374 6162 2061 7320 2262 6c6f   # fstab as "blo
│ │ │ +001b8120: 636b 222e 2020 5468 6520 6e65 7874 2076  ck".  The next v
│ │ │ +001b8130: 6172 6961 626c 6520 6973 2074 6f20 7361  ariable is to sa
│ │ │ +001b8140: 7469 7366 7920 7368 656c 6c63 6865 636b  tisfy shellcheck
│ │ │ +001b8150: 2053 4332 3035 302e 0a20 2020 2020 2020   SC2050..       
│ │ │ +001b8160: 2066 735f 7479 7065 3d22 220a 2020 2020   fs_type="".    
│ │ │ +001b8170: 2020 2020 6966 205b 2020 2224 6673 5f74      if [  "$fs_t
│ │ │ +001b8180: 7970 6522 203d 3d20 2269 736f 3936 3630  ype" == "iso9660
│ │ │ +001b8190: 2220 5d20 3b20 7468 656e 0a20 2020 2020  " ] ; then.     
│ │ │ +001b81a0: 2020 2020 2020 2070 7265 7669 6f75 735f         previous_
│ │ │ +001b81b0: 6d6f 756e 745f 6f70 7473 3d24 2873 6564  mount_opts=$(sed
│ │ │ +001b81c0: 2027 732f 626c 6f63 6b73 697a 653d 2f62   's/blocksize=/b
│ │ │ +001b81d0: 6c6f 636b 3d2f 2720 266c 743b 266c 743b  lock=/' <<
│ │ │ +001b81e0: 266c 743b 2022 2470 7265 7669 6f75 735f  < "$previous_
│ │ │ +001b81f0: 6d6f 756e 745f 6f70 7473 2229 0a20 2020  mount_opts").   
│ │ │ +001b8200: 2020 2020 2066 690a 2020 2020 2020 2020       fi.        
│ │ │ +001b8210: 6563 686f 2022 202f 7661 722f 6c6f 6720  echo " /var/log 
│ │ │ +001b8220: 2064 6566 6175 6c74 732c 247b 7072 6576   defaults,${prev
│ │ │ +001b8230: 696f 7573 5f6d 6f75 6e74 5f6f 7074 737d  ious_mount_opts}
│ │ │ +001b8240: 6e6f 6578 6563 2030 2030 2220 2667 743b  noexec 0 0" >
│ │ │ +001b8250: 2667 743b 202f 6574 632f 6673 7461 620a  > /etc/fstab.
│ │ │ +001b8260: 2020 2020 2320 4966 2074 6865 206d 6f75      # If the mou
│ │ │ +001b8270: 6e74 5f6f 7074 206f 7074 696f 6e20 6973  nt_opt option is
│ │ │ +001b8280: 206e 6f74 2061 6c72 6561 6479 2069 6e20   not already in 
│ │ │ +001b8290: 7468 6520 6d6f 756e 7420 706f 696e 7427  the mount point'
│ │ │ +001b82a0: 7320 2f65 7463 2f66 7374 6162 2065 6e74  s /etc/fstab ent
│ │ │ +001b82b0: 7279 2c20 6164 6420 6974 0a20 2020 2065  ry, add it.    e
│ │ │ +001b82c0: 6c69 6620 2120 6772 6570 2022 246d 6f75  lif ! grep "$mou
│ │ │ +001b82d0: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ +001b82e0: 6567 6578 7022 202f 6574 632f 6673 7461  egexp" /etc/fsta
│ │ │ +001b82f0: 6220 7c20 6772 6570 202d 7120 226e 6f65  b | grep -q "noe
│ │ │ +001b8300: 7865 6322 3b20 7468 656e 0a20 2020 2020  xec"; then.     
│ │ │ +001b8310: 2020 2070 7265 7669 6f75 735f 6d6f 756e     previous_moun
│ │ │ +001b8320: 745f 6f70 7473 3d24 2867 7265 7020 2224  t_opts=$(grep "$
│ │ │ +001b8330: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ +001b8340: 685f 7265 6765 7870 2220 2f65 7463 2f66  h_regexp" /etc/f
│ │ │ +001b8350: 7374 6162 207c 2061 776b 2027 7b70 7269  stab | awk '{pri
│ │ │ +001b8360: 6e74 2024 347d 2729 0a20 2020 2020 2020  nt $4}').       
│ │ │ +001b8370: 2073 6564 202d 6920 2273 7c5c 2824 7b6d   sed -i "s|\(${m
│ │ │ +001b8380: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ +001b8390: 5f72 6567 6578 707d 2e2a 247b 7072 6576  _regexp}.*${prev
│ │ │ +001b83a0: 696f 7573 5f6d 6f75 6e74 5f6f 7074 737d  ious_mount_opts}
│ │ │ +001b83b0: 5c29 7c5c 312c 6e6f 6578 6563 7c22 202f  \)|\1,noexec|" /
│ │ │ +001b83c0: 6574 632f 6673 7461 620a 2020 2020 6669  etc/fstab.    fi
│ │ │ +001b83d0: 0a0a 0a20 2020 2069 6620 6d6b 6469 7220  ...    if mkdir 
│ │ │ +001b83e0: 2d70 2022 2f76 6172 2f6c 6f67 223b 2074  -p "/var/log"; t
│ │ │ +001b83f0: 6865 6e0a 2020 2020 2020 2020 6966 206d  hen.        if m
│ │ │ +001b8400: 6f75 6e74 706f 696e 7420 2d71 2022 2f76  ountpoint -q "/v
│ │ │ +001b8410: 6172 2f6c 6f67 223b 2074 6865 6e0a 2020  ar/log"; then.  
│ │ │ +001b8420: 2020 2020 2020 2020 2020 6d6f 756e 7420            mount 
│ │ │ +001b8430: 2d6f 2072 656d 6f75 6e74 202d 2d74 6172  -o remount --tar
│ │ │ +001b8440: 6765 7420 222f 7661 722f 6c6f 6722 0a20  get "/var/log". 
│ │ │ +001b8450: 2020 2020 2020 2066 690a 2020 2020 6669         fi.    fi
│ │ │ +001b8460: 0a7d 0a0a 7065 7266 6f72 6d5f 7265 6d65  .}..perform_reme
│ │ │ +001b8470: 6469 6174 696f 6e0a 0a65 6c73 650a 2020  diation..else.  
│ │ │ +001b8480: 2020 2667 743b 2661 6d70 3b32 2065 6368    >&2 ech
│ │ │ +001b8490: 6f20 2752 656d 6564 6961 7469 6f6e 2069  o 'Remediation i
│ │ │ +001b84a0: 7320 6e6f 7420 6170 706c 6963 6162 6c65  s not applicable
│ │ │ +001b84b0: 2c20 6e6f 7468 696e 6720 7761 7320 646f  , nothing was do
│ │ │ +001b84c0: 6e65 270a 6669 0a3c 2f63 6f64 653e 3c2f  ne'.fi.Remediati
│ │ │ +001b8580: 6f6e 2041 6e61 636f 6e64 6120 736e 6970  on Anaconda snip
│ │ │ +001b8590: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c  pet ...
< │ │ │ +001b85a0: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +001b85b0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +001b85c0: 7365 2220 6964 3d22 6964 3437 3822 3e3c se" id="id478">< │ │ │ +001b85d0: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +001b85e0: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +001b85f0: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +001b8600: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +001b8610: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >
Disruption:< │ │ │ +001b8660: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ +001b8690: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy: │ │ │ +001b86b0: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
│ │ │ +001b79f0: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +001b7a00: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Complex │ │ │ +001b8620: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ +001b8630: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
high
Rebo │ │ │ +001b8670: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +001b8680: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
enable
.part /v │ │ │ +001b86d0: 6172 2f6c 6f67 202d 2d6d 6f75 6e74 6f70 ar/log --mountop │ │ │ +001b86e0: 7469 6f6e 733d 226e 6f65 7865 6322 0a3c tions="noexec".< │ │ │ 001b86f0: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469 /code>
Remediation An │ │ │ -001b9360: 6163 6f6e 6461 2073 6e69 7070 6574 20e2 aconda snippet . │ │ │ -001b9370: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ -001b93f0: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -001b9410: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 < │ │ │ -001b9440: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr> │ │ │ -001b9490: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ -001b9400: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ -001b9420: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:high
Reboot:false
St │ │ │ -001b9470: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ -001b9480: 656e 6162 6c65 3c2f 7464 3e3c 2f74 723e enable
.part /var/lo
│ │ │ -001b94b0: 6720 2d2d 6d6f 756e 746f 7074 696f 6e73  g --mountoptions
│ │ │ -001b94c0: 3d22 6e6f 7375 6964 220a 3c2f 636f 6465  ="nosuid".
Remedi │ │ │ -001b9580: 6174 696f 6e20 416e 7369 626c 6520 736e ation Ansible sn │ │ │ -001b9590: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ -001b9640: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c
- n
│ │ │ -001b96d0: 616d 653a 2047 6174 6865 7220 7468 6520  ame: Gather the 
│ │ │ -001b96e0: 7061 636b 6167 6520 6661 6374 730a 2020  package facts.  
│ │ │ -001b96f0: 7061 636b 6167 655f 6661 6374 733a 0a20  package_facts:. 
│ │ │ -001b9700: 2020 206d 616e 6167 6572 3a20 6175 746f     manager: auto
│ │ │ -001b9710: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ -001b9720: 542d 3830 302d 3533 2d41 432d 360a 2020  T-800-53-AC-6.  
│ │ │ -001b9730: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ -001b9740: 2d36 2831 290a 2020 2d20 4e49 5354 2d38  -6(1).  - NIST-8
│ │ │ -001b9750: 3030 2d35 332d 434d 2d36 2861 290a 2020  00-53-CM-6(a).  
│ │ │ -001b9760: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -001b9770: 2d37 2861 290a 2020 2d20 4e49 5354 2d38  -7(a).  - NIST-8
│ │ │ -001b9780: 3030 2d35 332d 434d 2d37 2862 290a 2020  00-53-CM-7(b).  
│ │ │ -001b9790: 2d20 4e49 5354 2d38 3030 2d35 332d 4d50  - NIST-800-53-MP
│ │ │ -001b97a0: 2d37 0a20 202d 2063 6f6e 6669 6775 7265  -7.  - configure
│ │ │ -001b97b0: 5f73 7472 6174 6567 790a 2020 2d20 6869  _strategy.  - hi
│ │ │ -001b97c0: 6768 5f64 6973 7275 7074 696f 6e0a 2020  gh_disruption.  
│ │ │ -001b97d0: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ -001b97e0: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ -001b97f0: 7269 7479 0a20 202d 206d 6f75 6e74 5f6f  rity.  - mount_o
│ │ │ -001b9800: 7074 696f 6e5f 7661 725f 6c6f 675f 6e6f  ption_var_log_no
│ │ │ -001b9810: 7375 6964 0a20 202d 206e 6f5f 7265 626f  suid.  - no_rebo
│ │ │ -001b9820: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d  ot_needed..- nam
│ │ │ -001b9830: 653a 2027 4164 6420 6e6f 7375 6964 204f  e: 'Add nosuid O
│ │ │ -001b9840: 7074 696f 6e20 746f 202f 7661 722f 6c6f  ption to /var/lo
│ │ │ -001b9850: 673a 2043 6865 636b 2069 6e66 6f72 6d61  g: Check informa
│ │ │ -001b9860: 7469 6f6e 2061 7373 6f63 6961 7465 6420  tion associated 
│ │ │ -001b9870: 746f 206d 6f75 6e74 706f 696e 7427 0a20  to mountpoint'. 
│ │ │ -001b9880: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ -001b9890: 2e63 6f6d 6d61 6e64 3a20 6669 6e64 6d6e  .command: findmn
│ │ │ -001b98a0: 7420 2d2d 6673 7461 6220 272f 7661 722f  t --fstab '/var/
│ │ │ -001b98b0: 6c6f 6727 0a20 2072 6567 6973 7465 723a  log'.  register:
│ │ │ -001b98c0: 2064 6576 6963 655f 6e61 6d65 0a20 2066   device_name.  f
│ │ │ -001b98d0: 6169 6c65 645f 7768 656e 3a20 6465 7669  ailed_when: devi
│ │ │ -001b98e0: 6365 5f6e 616d 652e 7263 2026 6774 3b20  ce_name.rc > 
│ │ │ -001b98f0: 310a 2020 6368 616e 6765 645f 7768 656e  1.  changed_when
│ │ │ -001b9900: 3a20 6661 6c73 650a 2020 6368 6563 6b5f  : false.  check_
│ │ │ -001b9910: 6d6f 6465 3a20 6661 6c73 650a 2020 7768  mode: false.  wh
│ │ │ -001b9920: 656e 3a0a 2020 2d20 2820 6e6f 7420 2820  en:.  - ( not ( 
│ │ │ -001b9930: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ -001b9940: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001b9950: 6573 2061 6e64 2022 626f 6f74 6322 2069  es and "bootc" i
│ │ │ -001b9960: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -001b9970: 7061 636b 6167 6573 0a20 2020 2061 6e64  packages.    and
│ │ │ -001b9980: 206e 6f74 2022 6f70 656e 7368 6966 742d   not "openshift-
│ │ │ -001b9990: 6b75 6265 6c65 7422 2069 6e20 616e 7369  kubelet" in ansi
│ │ │ -001b99a0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001b99b0: 6573 2061 6e64 2022 6f73 7472 6565 2220  es and "ostree" 
│ │ │ -001b99c0: 696e 2061 6e73 6962 6c65 5f70 726f 635f  in ansible_proc_
│ │ │ -001b99d0: 636d 646c 696e 650a 2020 2020 2920 616e  cmdline.    ) an
│ │ │ -001b99e0: 6420 6e6f 7420 2820 616e 7369 626c 655f  d not ( ansible_
│ │ │ -001b99f0: 7669 7274 7561 6c69 7a61 7469 6f6e 5f74  virtualization_t
│ │ │ -001b9a00: 7970 6520 696e 205b 2264 6f63 6b65 7222  ype in ["docker"
│ │ │ -001b9a10: 2c20 226c 7863 222c 2022 6f70 656e 767a  , "lxc", "openvz
│ │ │ -001b9a20: 222c 2022 706f 646d 616e 222c 0a20 2020  ", "podman",.   
│ │ │ -001b9a30: 2022 636f 6e74 6169 6e65 7222 5d20 2920   "container"] ) 
│ │ │ -001b9a40: 290a 2020 2d20 2722 2f76 6172 2f6c 6f67  ).  - '"/var/log
│ │ │ -001b9a50: 2220 696e 2061 6e73 6962 6c65 5f6d 6f75  " in ansible_mou
│ │ │ -001b9a60: 6e74 7320 7c20 6d61 7028 6174 7472 6962  nts | map(attrib
│ │ │ -001b9a70: 7574 653d 226d 6f75 6e74 2229 207c 206c  ute="mount") | l
│ │ │ -001b9a80: 6973 7427 0a20 2074 6167 733a 0a20 202d  ist'.  tags:.  -
│ │ │ -001b9a90: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ -001b9aa0: 360a 2020 2d20 4e49 5354 2d38 3030 2d35  6.  - NIST-800-5
│ │ │ -001b9ab0: 332d 4143 2d36 2831 290a 2020 2d20 4e49  3-AC-6(1).  - NI
│ │ │ -001b9ac0: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ -001b9ad0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -001b9ae0: 332d 434d 2d37 2861 290a 2020 2d20 4e49  3-CM-7(a).  - NI
│ │ │ -001b9af0: 5354 2d38 3030 2d35 332d 434d 2d37 2862  ST-800-53-CM-7(b
│ │ │ -001b9b00: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -001b9b10: 332d 4d50 2d37 0a20 202d 2063 6f6e 6669  3-MP-7.  - confi
│ │ │ -001b9b20: 6775 7265 5f73 7472 6174 6567 790a 2020  gure_strategy.  
│ │ │ -001b9b30: 2d20 6869 6768 5f64 6973 7275 7074 696f  - high_disruptio
│ │ │ -001b9b40: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65  n.  - low_comple
│ │ │ -001b9b50: 7869 7479 0a20 202d 206d 6564 6975 6d5f  xity.  - medium_
│ │ │ -001b9b60: 7365 7665 7269 7479 0a20 202d 206d 6f75  severity.  - mou
│ │ │ -001b9b70: 6e74 5f6f 7074 696f 6e5f 7661 725f 6c6f  nt_option_var_lo
│ │ │ -001b9b80: 675f 6e6f 7375 6964 0a20 202d 206e 6f5f  g_nosuid.  - no_
│ │ │ -001b9b90: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ -001b9ba0: 206e 616d 653a 2027 4164 6420 6e6f 7375   name: 'Add nosu
│ │ │ -001b9bb0: 6964 204f 7074 696f 6e20 746f 202f 7661  id Option to /va
│ │ │ -001b9bc0: 722f 6c6f 673a 2043 7265 6174 6520 6d6f  r/log: Create mo
│ │ │ -001b9bd0: 756e 745f 696e 666f 2064 6963 7469 6f6e  unt_info diction
│ │ │ -001b9be0: 6172 7920 7661 7269 6162 6c65 270a 2020  ary variable'.  
│ │ │ -001b9bf0: 7365 745f 6661 6374 3a0a 2020 2020 6d6f  set_fact:.    mo
│ │ │ -001b9c00: 756e 745f 696e 666f 3a20 277b 7b20 6d6f  unt_info: '{{ mo
│ │ │ -001b9c10: 756e 745f 696e 666f 7c64 6566 6175 6c74  unt_info|default
│ │ │ -001b9c20: 287b 7d29 7c63 6f6d 6269 6e65 287b 6974  ({})|combine({it
│ │ │ -001b9c30: 656d 2e30 3a20 6974 656d 2e31 7d29 207d  em.0: item.1}) }
│ │ │ -001b9c40: 7d27 0a20 2077 6974 685f 746f 6765 7468  }'.  with_togeth
│ │ │ -001b9c50: 6572 3a0a 2020 2d20 277b 7b20 6465 7669  er:.  - '{{ devi
│ │ │ -001b9c60: 6365 5f6e 616d 652e 7374 646f 7574 5f6c  ce_name.stdout_l
│ │ │ -001b9c70: 696e 6573 5b30 5d2e 7370 6c69 7428 2920  ines[0].split() 
│ │ │ -001b9c80: 7c20 6d61 7028 2727 6c6f 7765 7227 2729  | map(''lower'')
│ │ │ -001b9c90: 207c 206c 6973 7420 7d7d 270a 2020 2d20   | list }}'.  - 
│ │ │ -001b9ca0: 277b 7b20 6465 7669 6365 5f6e 616d 652e  '{{ device_name.
│ │ │ -001b9cb0: 7374 646f 7574 5f6c 696e 6573 5b31 5d2e  stdout_lines[1].
│ │ │ -001b9cc0: 7370 6c69 7428 2920 7c20 6c69 7374 207d  split() | list }
│ │ │ -001b9cd0: 7d27 0a20 2077 6865 6e3a 0a20 202d 2028  }'.  when:.  - (
│ │ │ -001b9ce0: 206e 6f74 2028 2022 6b65 726e 656c 2220   not ( "kernel" 
│ │ │ -001b9cf0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001b9d00: 2e70 6163 6b61 6765 7320 616e 6420 2262  .packages and "b
│ │ │ -001b9d10: 6f6f 7463 2220 696e 2061 6e73 6962 6c65  ootc" in ansible
│ │ │ -001b9d20: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ -001b9d30: 2020 2020 616e 6420 6e6f 7420 226f 7065      and not "ope
│ │ │ -001b9d40: 6e73 6869 6674 2d6b 7562 656c 6574 2220  nshift-kubelet" 
│ │ │ -001b9d50: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001b9d60: 2e70 6163 6b61 6765 7320 616e 6420 226f  .packages and "o
│ │ │ -001b9d70: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ -001b9d80: 655f 7072 6f63 5f63 6d64 6c69 6e65 0a20  e_proc_cmdline. 
│ │ │ -001b9d90: 2020 2029 2061 6e64 206e 6f74 2028 2061     ) and not ( a
│ │ │ -001b9da0: 6e73 6962 6c65 5f76 6972 7475 616c 697a  nsible_virtualiz
│ │ │ -001b9db0: 6174 696f 6e5f 7479 7065 2069 6e20 5b22  ation_type in ["
│ │ │ -001b9dc0: 646f 636b 6572 222c 2022 6c78 6322 2c20  docker", "lxc", 
│ │ │ -001b9dd0: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61  "openvz", "podma
│ │ │ -001b9de0: 6e22 2c0a 2020 2020 2263 6f6e 7461 696e  n",.    "contain
│ │ │ -001b9df0: 6572 225d 2029 2029 0a20 202d 2027 222f  er"] ) ).  - '"/
│ │ │ -001b9e00: 7661 722f 6c6f 6722 2069 6e20 616e 7369  var/log" in ansi
│ │ │ -001b9e10: 626c 655f 6d6f 756e 7473 207c 206d 6170  ble_mounts | map
│ │ │ -001b9e20: 2861 7474 7269 6275 7465 3d22 6d6f 756e  (attribute="moun
│ │ │ -001b9e30: 7422 2920 7c20 6c69 7374 270a 2020 2d20  t") | list'.  - 
│ │ │ -001b9e40: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ -001b9e50: 7574 2069 7320 6465 6669 6e65 6420 616e  ut is defined an
│ │ │ -001b9e60: 6420 6465 7669 6365 5f6e 616d 652e 7374  d device_name.st
│ │ │ -001b9e70: 646f 7574 5f6c 696e 6573 2069 7320 6465  dout_lines is de
│ │ │ -001b9e80: 6669 6e65 640a 2020 2d20 2864 6576 6963  fined.  - (devic
│ │ │ -001b9e90: 655f 6e61 6d65 2e73 7464 6f75 7420 7c20  e_name.stdout | 
│ │ │ -001b9ea0: 6c65 6e67 7468 2026 6774 3b20 3029 0a20  length > 0). 
│ │ │ -001b9eb0: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ -001b9ec0: 3830 302d 3533 2d41 432d 360a 2020 2d20  800-53-AC-6.  - 
│ │ │ -001b9ed0: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ -001b9ee0: 2831 290a 2020 2d20 4e49 5354 2d38 3030  (1).  - NIST-800
│ │ │ -001b9ef0: 2d35 332d 434d 2d36 2861 290a 2020 2d20  -53-CM-6(a).  - 
│ │ │ -001b9f00: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ -001b9f10: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ -001b9f20: 2d35 332d 434d 2d37 2862 290a 2020 2d20  -53-CM-7(b).  - 
│ │ │ -001b9f30: 4e49 5354 2d38 3030 2d35 332d 4d50 2d37  NIST-800-53-MP-7
│ │ │ -001b9f40: 0a20 202d 2063 6f6e 6669 6775 7265 5f73  .  - configure_s
│ │ │ -001b9f50: 7472 6174 6567 790a 2020 2d20 6869 6768  trategy.  - high
│ │ │ -001b9f60: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ -001b9f70: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ -001b9f80: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ -001b9f90: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074  ty.  - mount_opt
│ │ │ -001b9fa0: 696f 6e5f 7661 725f 6c6f 675f 6e6f 7375  ion_var_log_nosu
│ │ │ -001b9fb0: 6964 0a20 202d 206e 6f5f 7265 626f 6f74  id.  - no_reboot
│ │ │ -001b9fc0: 5f6e 6565 6465 640a 0a2d 206e 616d 653a  _needed..- name:
│ │ │ -001b9fd0: 2027 4164 6420 6e6f 7375 6964 204f 7074   'Add nosuid Opt
│ │ │ -001b9fe0: 696f 6e20 746f 202f 7661 722f 6c6f 673a  ion to /var/log:
│ │ │ -001b9ff0: 2049 6620 2f76 6172 2f6c 6f67 206e 6f74   If /var/log not
│ │ │ -001ba000: 206d 6f75 6e74 6564 2c20 6372 6166 7420   mounted, craft 
│ │ │ -001ba010: 6d6f 756e 745f 696e 666f 0a20 2020 206d  mount_info.    m
│ │ │ -001ba020: 616e 7561 6c6c 7927 0a20 2073 6574 5f66  anually'.  set_f
│ │ │ -001ba030: 6163 743a 0a20 2020 206d 6f75 6e74 5f69  act:.    mount_i
│ │ │ -001ba040: 6e66 6f3a 2027 7b7b 206d 6f75 6e74 5f69  nfo: '{{ mount_i
│ │ │ -001ba050: 6e66 6f7c 6465 6661 756c 7428 7b7d 297c  nfo|default({})|
│ │ │ -001ba060: 636f 6d62 696e 6528 7b69 7465 6d2e 303a  combine({item.0:
│ │ │ -001ba070: 2069 7465 6d2e 317d 2920 7d7d 270a 2020   item.1}) }}'.  
│ │ │ -001ba080: 7769 7468 5f74 6f67 6574 6865 723a 0a20  with_together:. 
│ │ │ -001ba090: 202d 202d 2074 6172 6765 740a 2020 2020   - - target.    
│ │ │ -001ba0a0: 2d20 736f 7572 6365 0a20 2020 202d 2066  - source.    - f
│ │ │ -001ba0b0: 7374 7970 650a 2020 2020 2d20 6f70 7469  stype.    - opti
│ │ │ -001ba0c0: 6f6e 730a 2020 2d20 2d20 2f76 6172 2f6c  ons.  - - /var/l
│ │ │ -001ba0d0: 6f67 0a20 2020 202d 2027 270a 2020 2020  og.    - ''.    
│ │ │ -001ba0e0: 2d20 2727 0a20 2020 202d 2064 6566 6175  - ''.    - defau
│ │ │ -001ba0f0: 6c74 730a 2020 7768 656e 3a0a 2020 2d20  lts.  when:.  - 
│ │ │ -001ba100: 2820 6e6f 7420 2820 226b 6572 6e65 6c22  ( not ( "kernel"
│ │ │ -001ba110: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001ba120: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ -001ba130: 626f 6f74 6322 2069 6e20 616e 7369 626c  bootc" in ansibl
│ │ │ -001ba140: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001ba150: 0a20 2020 2061 6e64 206e 6f74 2022 6f70  .    and not "op
│ │ │ -001ba160: 656e 7368 6966 742d 6b75 6265 6c65 7422  enshift-kubelet"
│ │ │ -001ba170: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001ba180: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ -001ba190: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ -001ba1a0: 6c65 5f70 726f 635f 636d 646c 696e 650a  le_proc_cmdline.
│ │ │ -001ba1b0: 2020 2020 2920 616e 6420 6e6f 7420 2820      ) and not ( 
│ │ │ -001ba1c0: 616e 7369 626c 655f 7669 7274 7561 6c69  ansible_virtuali
│ │ │ -001ba1d0: 7a61 7469 6f6e 5f74 7970 6520 696e 205b  zation_type in [
│ │ │ -001ba1e0: 2264 6f63 6b65 7222 2c20 226c 7863 222c  "docker", "lxc",
│ │ │ -001ba1f0: 2022 6f70 656e 767a 222c 2022 706f 646d   "openvz", "podm
│ │ │ -001ba200: 616e 222c 0a20 2020 2022 636f 6e74 6169  an",.    "contai
│ │ │ -001ba210: 6e65 7222 5d20 2920 290a 2020 2d20 2722  ner"] ) ).  - '"
│ │ │ -001ba220: 2f76 6172 2f6c 6f67 2220 696e 2061 6e73  /var/log" in ans
│ │ │ -001ba230: 6962 6c65 5f6d 6f75 6e74 7320 7c20 6d61  ible_mounts | ma
│ │ │ -001ba240: 7028 6174 7472 6962 7574 653d 226d 6f75  p(attribute="mou
│ │ │ -001ba250: 6e74 2229 207c 206c 6973 7427 0a20 202d  nt") | list'.  -
│ │ │ -001ba260: 2028 222d 2d66 7374 6162 2220 7c20 6c65   ("--fstab" | le
│ │ │ -001ba270: 6e67 7468 203d 3d20 3029 0a20 202d 2064  ngth == 0).  - d
│ │ │ -001ba280: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ -001ba290: 7420 6973 2064 6566 696e 6564 2061 6e64  t is defined and
│ │ │ -001ba2a0: 2064 6576 6963 655f 6e61 6d65 2e73 7464   device_name.std
│ │ │ -001ba2b0: 6f75 745f 6c69 6e65 7320 6973 2064 6566  out_lines is def
│ │ │ -001ba2c0: 696e 6564 0a20 202d 2028 6465 7669 6365  ined.  - (device
│ │ │ -001ba2d0: 5f6e 616d 652e 7374 646f 7574 207c 206c  _name.stdout | l
│ │ │ -001ba2e0: 656e 6774 6820 3d3d 2030 290a 2020 7461  ength == 0).  ta
│ │ │ -001ba2f0: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030  gs:.  - NIST-800
│ │ │ -001ba300: 2d35 332d 4143 2d36 0a20 202d 204e 4953  -53-AC-6.  - NIS
│ │ │ -001ba310: 542d 3830 302d 3533 2d41 432d 3628 3129  T-800-53-AC-6(1)
│ │ │ -001ba320: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001ba330: 2d43 4d2d 3628 6129 0a20 202d 204e 4953  -CM-6(a).  - NIS
│ │ │ -001ba340: 542d 3830 302d 3533 2d43 4d2d 3728 6129  T-800-53-CM-7(a)
│ │ │ -001ba350: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001ba360: 2d43 4d2d 3728 6229 0a20 202d 204e 4953  -CM-7(b).  - NIS
│ │ │ -001ba370: 542d 3830 302d 3533 2d4d 502d 370a 2020  T-800-53-MP-7.  
│ │ │ -001ba380: 2d20 636f 6e66 6967 7572 655f 7374 7261  - configure_stra
│ │ │ -001ba390: 7465 6779 0a20 202d 2068 6967 685f 6469  tegy.  - high_di
│ │ │ -001ba3a0: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ -001ba3b0: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ -001ba3c0: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ -001ba3d0: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e    - mount_option
│ │ │ -001ba3e0: 5f76 6172 5f6c 6f67 5f6e 6f73 7569 640a  _var_log_nosuid.
│ │ │ -001ba3f0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ -001ba400: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741  eded..- name: 'A
│ │ │ -001ba410: 6464 206e 6f73 7569 6420 4f70 7469 6f6e  dd nosuid Option
│ │ │ -001ba420: 2074 6f20 2f76 6172 2f6c 6f67 3a20 4d61   to /var/log: Ma
│ │ │ -001ba430: 6b65 2073 7572 6520 6e6f 7375 6964 206f  ke sure nosuid o
│ │ │ -001ba440: 7074 696f 6e20 6973 2070 6172 7420 6f66  ption is part of
│ │ │ -001ba450: 2074 6865 2074 6f0a 2020 2020 2f76 6172   the to.    /var
│ │ │ -001ba460: 2f6c 6f67 206f 7074 696f 6e73 270a 2020  /log options'.  
│ │ │ -001ba470: 7365 745f 6661 6374 3a0a 2020 2020 6d6f  set_fact:.    mo
│ │ │ -001ba480: 756e 745f 696e 666f 3a20 277b 7b20 6d6f  unt_info: '{{ mo
│ │ │ -001ba490: 756e 745f 696e 666f 207c 2063 6f6d 6269  unt_info | combi
│ │ │ -001ba4a0: 6e65 2820 7b27 276f 7074 696f 6e73 2727  ne( {''options''
│ │ │ -001ba4b0: 3a27 2727 277e 286d 6f75 6e74 5f69 6e66  :''''~(mount_inf
│ │ │ -001ba4c0: 6f2e 6f70 7469 6f6e 7320 7c0a 2020 2020  o.options |.    
│ │ │ -001ba4d0: 2020 6465 6661 756c 7428 2727 2727 2929    default(''''))
│ │ │ -001ba4e0: 7e28 2727 2c27 2720 6966 2028 6d6f 756e  ~('','' if (moun
│ │ │ -001ba4f0: 745f 696e 666f 2e6f 7074 696f 6e73 207c  t_info.options |
│ │ │ -001ba500: 2064 6566 6175 6c74 2827 2727 2729 2920   default('''')) 
│ │ │ -001ba510: 656c 7365 2027 2727 2729 7e27 276e 6f73  else '''')~''nos
│ │ │ -001ba520: 7569 6427 270a 2020 2020 2020 7d29 207d  uid''.      }) }
│ │ │ -001ba530: 7d27 0a20 2077 6865 6e3a 0a20 202d 2028  }'.  when:.  - (
│ │ │ -001ba540: 206e 6f74 2028 2022 6b65 726e 656c 2220   not ( "kernel" 
│ │ │ -001ba550: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001ba560: 2e70 6163 6b61 6765 7320 616e 6420 2262  .packages and "b
│ │ │ -001ba570: 6f6f 7463 2220 696e 2061 6e73 6962 6c65  ootc" in ansible
│ │ │ -001ba580: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ -001ba590: 2020 2020 616e 6420 6e6f 7420 226f 7065      and not "ope
│ │ │ -001ba5a0: 6e73 6869 6674 2d6b 7562 656c 6574 2220  nshift-kubelet" 
│ │ │ -001ba5b0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001ba5c0: 2e70 6163 6b61 6765 7320 616e 6420 226f  .packages and "o
│ │ │ -001ba5d0: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ -001ba5e0: 655f 7072 6f63 5f63 6d64 6c69 6e65 0a20  e_proc_cmdline. 
│ │ │ -001ba5f0: 2020 2029 2061 6e64 206e 6f74 2028 2061     ) and not ( a
│ │ │ -001ba600: 6e73 6962 6c65 5f76 6972 7475 616c 697a  nsible_virtualiz
│ │ │ -001ba610: 6174 696f 6e5f 7479 7065 2069 6e20 5b22  ation_type in ["
│ │ │ -001ba620: 646f 636b 6572 222c 2022 6c78 6322 2c20  docker", "lxc", 
│ │ │ -001ba630: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61  "openvz", "podma
│ │ │ -001ba640: 6e22 2c0a 2020 2020 2263 6f6e 7461 696e  n",.    "contain
│ │ │ -001ba650: 6572 225d 2029 2029 0a20 202d 2027 222f  er"] ) ).  - '"/
│ │ │ -001ba660: 7661 722f 6c6f 6722 2069 6e20 616e 7369  var/log" in ansi
│ │ │ -001ba670: 626c 655f 6d6f 756e 7473 207c 206d 6170  ble_mounts | map
│ │ │ -001ba680: 2861 7474 7269 6275 7465 3d22 6d6f 756e  (attribute="moun
│ │ │ -001ba690: 7422 2920 7c20 6c69 7374 270a 2020 2d20  t") | list'.  - 
│ │ │ -001ba6a0: 6d6f 756e 745f 696e 666f 2069 7320 6465  mount_info is de
│ │ │ -001ba6b0: 6669 6e65 6420 616e 6420 226e 6f73 7569  fined and "nosui
│ │ │ -001ba6c0: 6422 206e 6f74 2069 6e20 286d 6f75 6e74  d" not in (mount
│ │ │ -001ba6d0: 5f69 6e66 6f2e 6f70 7469 6f6e 7320 7c20  _info.options | 
│ │ │ -001ba6e0: 6465 6661 756c 7428 2727 2929 0a20 2074  default('')).  t
│ │ │ -001ba6f0: 6167 733a 0a20 202d 204e 4953 542d 3830  ags:.  - NIST-80
│ │ │ -001ba700: 302d 3533 2d41 432d 360a 2020 2d20 4e49  0-53-AC-6.  - NI
│ │ │ -001ba710: 5354 2d38 3030 2d35 332d 4143 2d36 2831  ST-800-53-AC-6(1
│ │ │ -001ba720: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -001ba730: 332d 434d 2d36 2861 290a 2020 2d20 4e49  3-CM-6(a).  - NI
│ │ │ -001ba740: 5354 2d38 3030 2d35 332d 434d 2d37 2861  ST-800-53-CM-7(a
│ │ │ -001ba750: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -001ba760: 332d 434d 2d37 2862 290a 2020 2d20 4e49  3-CM-7(b).  - NI
│ │ │ -001ba770: 5354 2d38 3030 2d35 332d 4d50 2d37 0a20  ST-800-53-MP-7. 
│ │ │ -001ba780: 202d 2063 6f6e 6669 6775 7265 5f73 7472   - configure_str
│ │ │ -001ba790: 6174 6567 790a 2020 2d20 6869 6768 5f64  ategy.  - high_d
│ │ │ -001ba7a0: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ -001ba7b0: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ -001ba7c0: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ -001ba7d0: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f  .  - mount_optio
│ │ │ -001ba7e0: 6e5f 7661 725f 6c6f 675f 6e6f 7375 6964  n_var_log_nosuid
│ │ │ -001ba7f0: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ -001ba800: 6565 6465 640a 0a2d 206e 616d 653a 2027  eeded..- name: '
│ │ │ -001ba810: 4164 6420 6e6f 7375 6964 204f 7074 696f  Add nosuid Optio
│ │ │ -001ba820: 6e20 746f 202f 7661 722f 6c6f 673a 2045  n to /var/log: E
│ │ │ -001ba830: 6e73 7572 6520 2f76 6172 2f6c 6f67 2069  nsure /var/log i
│ │ │ -001ba840: 7320 6d6f 756e 7465 6420 7769 7468 206e  s mounted with n
│ │ │ -001ba850: 6f73 7569 6420 6f70 7469 6f6e 270a 2020  osuid option'.  
│ │ │ -001ba860: 616e 7369 626c 652e 706f 7369 782e 6d6f  ansible.posix.mo
│ │ │ -001ba870: 756e 743a 0a20 2020 2070 6174 683a 202f  unt:.    path: /
│ │ │ -001ba880: 7661 722f 6c6f 670a 2020 2020 7372 633a  var/log.    src:
│ │ │ -001ba890: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f2e   '{{ mount_info.
│ │ │ -001ba8a0: 736f 7572 6365 207c 2064 6566 6175 6c74  source | default
│ │ │ -001ba8b0: 2827 2727 2729 207d 7d27 0a20 2020 206f  ('''') }}'.    o
│ │ │ -001ba8c0: 7074 733a 2027 7b7b 206d 6f75 6e74 5f69  pts: '{{ mount_i
│ │ │ -001ba8d0: 6e66 6f2e 6f70 7469 6f6e 7320 7c20 6465  nfo.options | de
│ │ │ -001ba8e0: 6661 756c 7428 2727 2727 2920 7d7d 270a  fault('''') }}'.
│ │ │ -001ba8f0: 2020 2020 7374 6174 653a 206d 6f75 6e74      state: mount
│ │ │ -001ba900: 6564 0a20 2020 2066 7374 7970 653a 2027  ed.    fstype: '
│ │ │ -001ba910: 7b7b 206d 6f75 6e74 5f69 6e66 6f2e 6673  {{ mount_info.fs
│ │ │ -001ba920: 7479 7065 207c 2064 6566 6175 6c74 2827  type | default('
│ │ │ -001ba930: 2727 2729 207d 7d27 0a20 2072 6567 6973  ''') }}'.  regis
│ │ │ -001ba940: 7465 723a 206d 6f75 6e74 5f72 6573 756c  ter: mount_resul
│ │ │ -001ba950: 740a 2020 6661 696c 6564 5f77 6865 6e3a  t.  failed_when:
│ │ │ -001ba960: 0a20 202d 206d 6f75 6e74 5f72 6573 756c  .  - mount_resul
│ │ │ -001ba970: 7420 6973 2066 6169 6c65 640a 2020 2d20  t is failed.  - 
│ │ │ -001ba980: 2727 2774 6172 6765 7420 6973 2062 7573  '''target is bus
│ │ │ -001ba990: 7927 2720 6e6f 7420 696e 2028 6d6f 756e  y'' not in (moun
│ │ │ -001ba9a0: 745f 7265 7375 6c74 2e6d 7367 207c 2064  t_result.msg | d
│ │ │ -001ba9b0: 6566 6175 6c74 2827 2727 2729 2927 0a20  efault(''''))'. 
│ │ │ -001ba9c0: 202d 2027 2727 616c 7265 6164 7920 6d6f   - '''already mo
│ │ │ -001ba9d0: 756e 7465 6427 2720 6e6f 7420 696e 2028  unted'' not in (
│ │ │ -001ba9e0: 6d6f 756e 745f 7265 7375 6c74 2e6d 7367  mount_result.msg
│ │ │ -001ba9f0: 207c 2064 6566 6175 6c74 2827 2727 2729   | default('''')
│ │ │ -001baa00: 2927 0a20 2077 6865 6e3a 0a20 202d 2028  )'.  when:.  - (
│ │ │ -001baa10: 206e 6f74 2028 2022 6b65 726e 656c 2220   not ( "kernel" 
│ │ │ -001baa20: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001baa30: 2e70 6163 6b61 6765 7320 616e 6420 2262  .packages and "b
│ │ │ -001baa40: 6f6f 7463 2220 696e 2061 6e73 6962 6c65  ootc" in ansible
│ │ │ -001baa50: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ -001baa60: 2020 2020 616e 6420 6e6f 7420 226f 7065      and not "ope
│ │ │ -001baa70: 6e73 6869 6674 2d6b 7562 656c 6574 2220  nshift-kubelet" 
│ │ │ -001baa80: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001baa90: 2e70 6163 6b61 6765 7320 616e 6420 226f  .packages and "o
│ │ │ -001baaa0: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ -001baab0: 655f 7072 6f63 5f63 6d64 6c69 6e65 0a20  e_proc_cmdline. 
│ │ │ -001baac0: 2020 2029 2061 6e64 206e 6f74 2028 2061     ) and not ( a
│ │ │ -001baad0: 6e73 6962 6c65 5f76 6972 7475 616c 697a  nsible_virtualiz
│ │ │ -001baae0: 6174 696f 6e5f 7479 7065 2069 6e20 5b22  ation_type in ["
│ │ │ -001baaf0: 646f 636b 6572 222c 2022 6c78 6322 2c20  docker", "lxc", 
│ │ │ -001bab00: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61  "openvz", "podma
│ │ │ -001bab10: 6e22 2c0a 2020 2020 2263 6f6e 7461 696e  n",.    "contain
│ │ │ -001bab20: 6572 225d 2029 2029 0a20 202d 2027 222f  er"] ) ).  - '"/
│ │ │ -001bab30: 7661 722f 6c6f 6722 2069 6e20 616e 7369  var/log" in ansi
│ │ │ -001bab40: 626c 655f 6d6f 756e 7473 207c 206d 6170  ble_mounts | map
│ │ │ -001bab50: 2861 7474 7269 6275 7465 3d22 6d6f 756e  (attribute="moun
│ │ │ -001bab60: 7422 2920 7c20 6c69 7374 270a 2020 2d20  t") | list'.  - 
│ │ │ -001bab70: 6d6f 756e 745f 696e 666f 2069 7320 6465  mount_info is de
│ │ │ -001bab80: 6669 6e65 640a 2020 2d20 2864 6576 6963  fined.  - (devic
│ │ │ -001bab90: 655f 6e61 6d65 2e73 7464 6f75 7420 6973  e_name.stdout is
│ │ │ -001baba0: 2064 6566 696e 6564 2061 6e64 2028 6465   defined and (de
│ │ │ -001babb0: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ -001babc0: 207c 206c 656e 6774 6820 2667 743b 2030   | length > 0
│ │ │ -001babd0: 2929 206f 7220 2822 2d2d 6673 7461 6222  )) or ("--fstab"
│ │ │ -001babe0: 0a20 2020 207c 206c 656e 6774 6820 3d3d  .    | length ==
│ │ │ -001babf0: 2030 290a 2020 7461 6773 3a0a 2020 2d20   0).  tags:.  - 
│ │ │ -001bac00: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ -001bac10: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001bac20: 2d41 432d 3628 3129 0a20 202d 204e 4953  -AC-6(1).  - NIS
│ │ │ -001bac30: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ -001bac40: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001bac50: 2d43 4d2d 3728 6129 0a20 202d 204e 4953  -CM-7(a).  - NIS
│ │ │ -001bac60: 542d 3830 302d 3533 2d43 4d2d 3728 6229  T-800-53-CM-7(b)
│ │ │ -001bac70: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001bac80: 2d4d 502d 370a 2020 2d20 636f 6e66 6967  -MP-7.  - config
│ │ │ -001bac90: 7572 655f 7374 7261 7465 6779 0a20 202d  ure_strategy.  -
│ │ │ -001baca0: 2068 6967 685f 6469 7372 7570 7469 6f6e   high_disruption
│ │ │ -001bacb0: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ -001bacc0: 6974 790a 2020 2d20 6d65 6469 756d 5f73  ity.  - medium_s
│ │ │ -001bacd0: 6576 6572 6974 790a 2020 2d20 6d6f 756e  everity.  - moun
│ │ │ -001bace0: 745f 6f70 7469 6f6e 5f76 6172 5f6c 6f67  t_option_var_log
│ │ │ -001bacf0: 5f6e 6f73 7569 640a 2020 2d20 6e6f 5f72  _nosuid.  - no_r
│ │ │ -001bad00: 6562 6f6f 745f 6e65 6564 6564 0a3c 2f63  eboot_needed.
│ │ │ -001bad20: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ -001badc0: 6564 6961 7469 6f6e 2053 6865 6c6c 2073 ediation Shell s │ │ │ -001badd0: 6372 6970 7420 e287 b23c 2f61 3e3c 6272 cript ...
Compl │ │ │ -001b9620: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ -001b9630: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ -001b9650: 2f74 683e 3c74 643e 6869 6768 3c2f 7464 /th>high
Re │ │ │ -001b9670: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -001b9680: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:configure │ │ │ -001b96b0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
# R
│ │ │ -001bae90: 656d 6564 6961 7469 6f6e 2069 7320 6170  emediation is ap
│ │ │ -001baea0: 706c 6963 6162 6c65 206f 6e6c 7920 696e  plicable only in
│ │ │ -001baeb0: 2063 6572 7461 696e 2070 6c61 7466 6f72   certain platfor
│ │ │ -001baec0: 6d73 0a69 6620 2820 2120 2820 7b20 7270  ms.if ( ! ( { rp
│ │ │ -001baed0: 6d20 2d2d 7175 6965 7420 2d71 206b 6572  m --quiet -q ker
│ │ │ -001baee0: 6e65 6c20 3b7d 2026 616d 703b 2661 6d70  nel ;} &&
│ │ │ -001baef0: 3b20 7b20 7270 6d20 2d2d 7175 6965 7420  ; { rpm --quiet 
│ │ │ -001baf00: 2d71 2062 6f6f 7463 203b 7d20 2661 6d70  -q bootc ;} &
│ │ │ -001baf10: 3b26 616d 703b 207b 2021 2072 706d 202d  ;& { ! rpm -
│ │ │ -001baf20: 2d71 7569 6574 202d 7120 6f70 656e 7368  -quiet -q opensh
│ │ │ -001baf30: 6966 742d 6b75 6265 6c65 7420 3b7d 2026  ift-kubelet ;} &
│ │ │ -001baf40: 616d 703b 2661 6d70 3b20 285b 202d 6620  amp;& ([ -f 
│ │ │ -001baf50: 2f72 756e 2f6f 7374 7265 652d 626f 6f74  /run/ostree-boot
│ │ │ -001baf60: 6564 205d 207c 7c20 5b20 2d4c 202f 6f73  ed ] || [ -L /os
│ │ │ -001baf70: 7472 6565 205d 2920 2920 2661 6d70 3b26  tree ]) ) &&
│ │ │ -001baf80: 616d 703b 2021 2028 205b 202d 6620 2f2e  amp; ! ( [ -f /.
│ │ │ -001baf90: 646f 636b 6572 656e 7620 5d20 7c7c 205b  dockerenv ] || [
│ │ │ -001bafa0: 202d 6620 2f72 756e 2f2e 636f 6e74 6169   -f /run/.contai
│ │ │ -001bafb0: 6e65 7265 6e76 205d 2029 2029 2026 616d  nerenv ] ) ) &am
│ │ │ -001bafc0: 703b 2661 6d70 3b20 7b20 2820 6669 6e64  p;& { ( find
│ │ │ -001bafd0: 6d6e 7420 2d2d 6b65 726e 656c 2022 2f76  mnt --kernel "/v
│ │ │ -001bafe0: 6172 2f6c 6f67 2220 2667 743b 202f 6465  ar/log" > /de
│ │ │ -001baff0: 762f 6e75 6c6c 207c 7c20 6669 6e64 6d6e  v/null || findmn
│ │ │ -001bb000: 7420 2d2d 6673 7461 6220 222f 7661 722f  t --fstab "/var/
│ │ │ -001bb010: 6c6f 6722 2026 6774 3b20 2f64 6576 2f6e  log" > /dev/n
│ │ │ -001bb020: 756c 6c20 293b 207d 3b20 7468 656e 0a0a  ull ); }; then..
│ │ │ -001bb030: 6675 6e63 7469 6f6e 2070 6572 666f 726d  function perform
│ │ │ -001bb040: 5f72 656d 6564 6961 7469 6f6e 207b 0a0a  _remediation {..
│ │ │ -001bb050: 2020 2020 0a20 2020 2020 2020 2023 2074      .        # t
│ │ │ -001bb060: 6865 206d 6f75 6e74 2070 6f69 6e74 202f  he mount point /
│ │ │ -001bb070: 7661 722f 6c6f 6720 6861 7320 746f 2062  var/log has to b
│ │ │ -001bb080: 6520 6465 6669 6e65 6420 696e 202f 6574  e defined in /et
│ │ │ -001bb090: 632f 6673 7461 620a 2020 2020 2020 2020  c/fstab.        
│ │ │ -001bb0a0: 2320 6265 666f 7265 2074 6869 7320 7265  # before this re
│ │ │ -001bb0b0: 6d65 6469 6174 696f 6e20 6361 6e20 6265  mediation can be
│ │ │ -001bb0c0: 2065 7865 6375 7465 642e 2049 6e20 6361   executed. In ca
│ │ │ -001bb0d0: 7365 2069 7420 6973 206e 6f74 2064 6566  se it is not def
│ │ │ -001bb0e0: 696e 6564 2c20 7468 650a 2020 2020 2020  ined, the.      
│ │ │ -001bb0f0: 2020 2320 7265 6d65 6469 6174 696f 6e20    # remediation 
│ │ │ -001bb100: 6162 6f72 7473 2061 6e64 206e 6f20 6368  aborts and no ch
│ │ │ -001bb110: 616e 6765 7320 7265 6761 7264 696e 6720  anges regarding 
│ │ │ -001bb120: 7468 6520 6d6f 756e 7420 706f 696e 7420  the mount point 
│ │ │ -001bb130: 6172 6520 646f 6e65 2e0a 2020 2020 2020  are done..      
│ │ │ -001bb140: 2020 6d6f 756e 745f 706f 696e 745f 6d61    mount_point_ma
│ │ │ -001bb150: 7463 685f 7265 6765 7870 3d22 2428 7072  tch_regexp="$(pr
│ │ │ -001bb160: 696e 7466 2022 5e5b 5b3a 7370 6163 653a  intf "^[[:space:
│ │ │ -001bb170: 5d5d 2a5b 5e23 5d2e 2a5b 5b3a 7370 6163  ]]*[^#].*[[:spac
│ │ │ -001bb180: 653a 5d5d 2573 5b5b 3a73 7061 6365 3a5d  e:]]%s[[:space:]
│ │ │ -001bb190: 5d22 2022 2f76 6172 2f6c 6f67 2229 220a  ]" "/var/log")".
│ │ │ -001bb1a0: 0a20 2020 2067 7265 7020 2224 6d6f 756e  .    grep "$moun
│ │ │ -001bb1b0: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ -001bb1c0: 6765 7870 2220 2d71 202f 6574 632f 6673  gexp" -q /etc/fs
│ │ │ -001bb1d0: 7461 6220 5c0a 2020 2020 2020 2020 7c7c  tab \.        ||
│ │ │ -001bb1e0: 207b 2065 6368 6f20 2254 6865 206d 6f75   { echo "The mou
│ │ │ -001bb1f0: 6e74 2070 6f69 6e74 2027 2f76 6172 2f6c  nt point '/var/l
│ │ │ -001bb200: 6f67 2720 6973 206e 6f74 2065 7665 6e20  og' is not even 
│ │ │ -001bb210: 696e 202f 6574 632f 6673 7461 622c 2073  in /etc/fstab, s
│ │ │ -001bb220: 6f20 7765 2063 616e 2774 2073 6574 2075  o we can't set u
│ │ │ -001bb230: 7020 6d6f 756e 7420 6f70 7469 6f6e 7322  p mount options"
│ │ │ -001bb240: 2026 6774 3b26 616d 703b 323b 0a20 2020   >&2;.   
│ │ │ -001bb250: 2020 2020 2020 2020 2020 2020 2065 6368               ech
│ │ │ -001bb260: 6f20 224e 6f74 2072 656d 6564 6961 7469  o "Not remediati
│ │ │ -001bb270: 6e67 2c20 6265 6361 7573 6520 7468 6572  ng, because ther
│ │ │ -001bb280: 6520 6973 206e 6f20 7265 636f 7264 206f  e is no record o
│ │ │ -001bb290: 6620 2f76 6172 2f6c 6f67 2069 6e20 2f65  f /var/log in /e
│ │ │ -001bb2a0: 7463 2f66 7374 6162 2220 2667 743b 2661  tc/fstab" >&a
│ │ │ -001bb2b0: 6d70 3b32 3b20 7265 7475 726e 2031 3b20  mp;2; return 1; 
│ │ │ -001bb2c0: 7d0a 2020 2020 0a0a 0a20 2020 206d 6f75  }.    ...    mou
│ │ │ -001bb2d0: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ -001bb2e0: 6567 6578 703d 2224 2870 7269 6e74 6620  egexp="$(printf 
│ │ │ -001bb2f0: 225e 5b5b 3a73 7061 6365 3a5d 5d2a 5b5e  "^[[:space:]]*[^
│ │ │ -001bb300: 235d 2e2a 5b5b 3a73 7061 6365 3a5d 5d25  #].*[[:space:]]%
│ │ │ -001bb310: 735b 5b3a 7370 6163 653a 5d5d 2220 2f76  s[[:space:]]" /v
│ │ │ -001bb320: 6172 2f6c 6f67 2922 0a0a 2020 2020 2320  ar/log)"..    # 
│ │ │ -001bb330: 4966 2074 6865 206d 6f75 6e74 2070 6f69  If the mount poi
│ │ │ -001bb340: 6e74 2069 7320 6e6f 7420 696e 202f 6574  nt is not in /et
│ │ │ -001bb350: 632f 6673 7461 622c 2067 6574 2070 7265  c/fstab, get pre
│ │ │ -001bb360: 7669 6f75 7320 6d6f 756e 7420 6f70 7469  vious mount opti
│ │ │ -001bb370: 6f6e 7320 6672 6f6d 202f 6574 632f 6d74  ons from /etc/mt
│ │ │ -001bb380: 6162 0a20 2020 2069 6620 2120 6772 6570  ab.    if ! grep
│ │ │ -001bb390: 202d 7120 2224 6d6f 756e 745f 706f 696e   -q "$mount_poin
│ │ │ -001bb3a0: 745f 6d61 7463 685f 7265 6765 7870 2220  t_match_regexp" 
│ │ │ -001bb3b0: 2f65 7463 2f66 7374 6162 3b20 7468 656e  /etc/fstab; then
│ │ │ -001bb3c0: 0a20 2020 2020 2020 2023 2072 756e 7469  .        # runti
│ │ │ -001bb3d0: 6d65 206f 7074 7320 7769 7468 6f75 7420  me opts without 
│ │ │ -001bb3e0: 736f 6d65 2061 7574 6f6d 6174 6963 206b  some automatic k
│ │ │ -001bb3f0: 6572 6e65 6c2f 7573 6572 7370 6163 652d  ernel/userspace-
│ │ │ -001bb400: 6164 6465 6420 6465 6661 756c 7473 0a20  added defaults. 
│ │ │ -001bb410: 2020 2020 2020 2070 7265 7669 6f75 735f         previous_
│ │ │ -001bb420: 6d6f 756e 745f 6f70 7473 3d24 2867 7265  mount_opts=$(gre
│ │ │ -001bb430: 7020 2224 6d6f 756e 745f 706f 696e 745f  p "$mount_point_
│ │ │ -001bb440: 6d61 7463 685f 7265 6765 7870 2220 2f65  match_regexp" /e
│ │ │ -001bb450: 7463 2f6d 7461 6220 7c20 6865 6164 202d  tc/mtab | head -
│ │ │ -001bb460: 3120 7c20 2061 776b 2027 7b70 7269 6e74  1 |  awk '{print
│ │ │ -001bb470: 2024 347d 2720 5c0a 2020 2020 2020 2020   $4}' \.        
│ │ │ -001bb480: 2020 2020 2020 2020 2020 2020 7c20 7365              | se
│ │ │ -001bb490: 6420 2d45 2022 732f 2872 777c 6465 6661  d -E "s/(rw|defa
│ │ │ -001bb4a0: 756c 7473 7c73 6563 6c61 6265 6c7c 6e6f  ults|seclabel|no
│ │ │ -001bb4b0: 7375 6964 2928 2c7c 2429 2f2f 673b 732f  suid)(,|$)//g;s/
│ │ │ -001bb4c0: 2c24 2f2f 2229 0a20 2020 2020 2020 205b  ,$//").        [
│ │ │ -001bb4d0: 2022 2470 7265 7669 6f75 735f 6d6f 756e   "$previous_moun
│ │ │ -001bb4e0: 745f 6f70 7473 2220 5d20 2661 6d70 3b26  t_opts" ] &&
│ │ │ -001bb4f0: 616d 703b 2070 7265 7669 6f75 735f 6d6f  amp; previous_mo
│ │ │ -001bb500: 756e 745f 6f70 7473 2b3d 222c 220a 2020  unt_opts+=",".  
│ │ │ -001bb510: 2020 2020 2020 2320 496e 2069 736f 3936        # In iso96
│ │ │ -001bb520: 3630 2066 696c 6573 7973 7465 6d73 206d  60 filesystems m
│ │ │ -001bb530: 7461 6220 636f 756c 6420 6465 7363 7269  tab could descri
│ │ │ -001bb540: 6265 2061 2022 626c 6f63 6b73 697a 6522  be a "blocksize"
│ │ │ -001bb550: 2076 616c 7565 2c20 7468 6973 2073 686f   value, this sho
│ │ │ -001bb560: 756c 6420 6265 2072 6566 6c65 6374 6564  uld be reflected
│ │ │ -001bb570: 2069 6e0a 2020 2020 2020 2020 2320 6673   in.        # fs
│ │ │ -001bb580: 7461 6220 6173 2022 626c 6f63 6b22 2e20  tab as "block". 
│ │ │ -001bb590: 2054 6865 206e 6578 7420 7661 7269 6162   The next variab
│ │ │ -001bb5a0: 6c65 2069 7320 746f 2073 6174 6973 6679  le is to satisfy
│ │ │ -001bb5b0: 2073 6865 6c6c 6368 6563 6b20 5343 3230   shellcheck SC20
│ │ │ -001bb5c0: 3530 2e0a 2020 2020 2020 2020 6673 5f74  50..        fs_t
│ │ │ -001bb5d0: 7970 653d 2222 0a20 2020 2020 2020 2069  ype="".        i
│ │ │ -001bb5e0: 6620 5b20 2022 2466 735f 7479 7065 2220  f [  "$fs_type" 
│ │ │ -001bb5f0: 3d3d 2022 6973 6f39 3636 3022 205d 203b  == "iso9660" ] ;
│ │ │ -001bb600: 2074 6865 6e0a 2020 2020 2020 2020 2020   then.          
│ │ │ -001bb610: 2020 7072 6576 696f 7573 5f6d 6f75 6e74    previous_mount
│ │ │ -001bb620: 5f6f 7074 733d 2428 7365 6420 2773 2f62  _opts=$(sed 's/b
│ │ │ -001bb630: 6c6f 636b 7369 7a65 3d2f 626c 6f63 6b3d  locksize=/block=
│ │ │ -001bb640: 2f27 2026 6c74 3b26 6c74 3b26 6c74 3b20  /' <<< 
│ │ │ -001bb650: 2224 7072 6576 696f 7573 5f6d 6f75 6e74  "$previous_mount
│ │ │ -001bb660: 5f6f 7074 7322 290a 2020 2020 2020 2020  _opts").        
│ │ │ -001bb670: 6669 0a20 2020 2020 2020 2065 6368 6f20  fi.        echo 
│ │ │ -001bb680: 2220 2f76 6172 2f6c 6f67 2020 6465 6661  " /var/log  defa
│ │ │ -001bb690: 756c 7473 2c24 7b70 7265 7669 6f75 735f  ults,${previous_
│ │ │ -001bb6a0: 6d6f 756e 745f 6f70 7473 7d6e 6f73 7569  mount_opts}nosui
│ │ │ -001bb6b0: 6420 3020 3022 2026 6774 3b26 6774 3b20  d 0 0" >> 
│ │ │ -001bb6c0: 2f65 7463 2f66 7374 6162 0a20 2020 2023  /etc/fstab.    #
│ │ │ -001bb6d0: 2049 6620 7468 6520 6d6f 756e 745f 6f70   If the mount_op
│ │ │ -001bb6e0: 7420 6f70 7469 6f6e 2069 7320 6e6f 7420  t option is not 
│ │ │ -001bb6f0: 616c 7265 6164 7920 696e 2074 6865 206d  already in the m
│ │ │ -001bb700: 6f75 6e74 2070 6f69 6e74 2773 202f 6574  ount point's /et
│ │ │ -001bb710: 632f 6673 7461 6220 656e 7472 792c 2061  c/fstab entry, a
│ │ │ -001bb720: 6464 2069 740a 2020 2020 656c 6966 2021  dd it.    elif !
│ │ │ -001bb730: 2067 7265 7020 2224 6d6f 756e 745f 706f   grep "$mount_po
│ │ │ -001bb740: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ -001bb750: 2220 2f65 7463 2f66 7374 6162 207c 2067  " /etc/fstab | g
│ │ │ -001bb760: 7265 7020 2d71 2022 6e6f 7375 6964 223b  rep -q "nosuid";
│ │ │ -001bb770: 2074 6865 6e0a 2020 2020 2020 2020 7072   then.        pr
│ │ │ -001bb780: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ -001bb790: 733d 2428 6772 6570 2022 246d 6f75 6e74  s=$(grep "$mount
│ │ │ -001bb7a0: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ -001bb7b0: 6578 7022 202f 6574 632f 6673 7461 6220  exp" /etc/fstab 
│ │ │ -001bb7c0: 7c20 6177 6b20 277b 7072 696e 7420 2434  | awk '{print $4
│ │ │ -001bb7d0: 7d27 290a 2020 2020 2020 2020 7365 6420  }').        sed 
│ │ │ -001bb7e0: 2d69 2022 737c 5c28 247b 6d6f 756e 745f  -i "s|\(${mount_
│ │ │ -001bb7f0: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ -001bb800: 7870 7d2e 2a24 7b70 7265 7669 6f75 735f  xp}.*${previous_
│ │ │ -001bb810: 6d6f 756e 745f 6f70 7473 7d5c 297c 5c31  mount_opts}\)|\1
│ │ │ -001bb820: 2c6e 6f73 7569 647c 2220 2f65 7463 2f66  ,nosuid|" /etc/f
│ │ │ -001bb830: 7374 6162 0a20 2020 2066 690a 0a0a 2020  stab.    fi...  
│ │ │ -001bb840: 2020 6966 206d 6b64 6972 202d 7020 222f    if mkdir -p "/
│ │ │ -001bb850: 7661 722f 6c6f 6722 3b20 7468 656e 0a20  var/log"; then. 
│ │ │ -001bb860: 2020 2020 2020 2069 6620 6d6f 756e 7470         if mountp
│ │ │ -001bb870: 6f69 6e74 202d 7120 222f 7661 722f 6c6f  oint -q "/var/lo
│ │ │ -001bb880: 6722 3b20 7468 656e 0a20 2020 2020 2020  g"; then.       
│ │ │ -001bb890: 2020 2020 206d 6f75 6e74 202d 6f20 7265       mount -o re
│ │ │ -001bb8a0: 6d6f 756e 7420 2d2d 7461 7267 6574 2022  mount --target "
│ │ │ -001bb8b0: 2f76 6172 2f6c 6f67 220a 2020 2020 2020  /var/log".      
│ │ │ -001bb8c0: 2020 6669 0a20 2020 2066 690a 7d0a 0a70    fi.    fi.}..p
│ │ │ -001bb8d0: 6572 666f 726d 5f72 656d 6564 6961 7469  erform_remediati
│ │ │ -001bb8e0: 6f6e 0a0a 656c 7365 0a20 2020 2026 6774  on..else.    >
│ │ │ -001bb8f0: 3b26 616d 703b 3220 6563 686f 2027 5265  ;&2 echo 'Re
│ │ │ -001bb900: 6d65 6469 6174 696f 6e20 6973 206e 6f74  mediation is not
│ │ │ -001bb910: 2061 7070 6c69 6361 626c 652c 206e 6f74   applicable, not
│ │ │ -001bb920: 6869 6e67 2077 6173 2064 6f6e 6527 0a66  hing was done'.f
│ │ │ -001bb930: 690a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  i.
< │ │ │ +001b9360: 7369 626c 6520 736e 6970 7065 7420 e287 sible snippet .. │ │ │ +001b9370: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
Reboo │ │ │ -001bae60: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -001bae70: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
< │ │ │ +001b93f0: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ +001b9410: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr> │ │ │ +001b9460: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472
low
Disr │ │ │ +001b9420: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +001b9430: 6869 6768 3c2f 7464 3e3c 2f74 723e 3c74 high
Reboot:false
Str │ │ │ +001b9470: 6174 6567 793a 3c2f 7468 3e3c 7464 3e63 ategy:c │ │ │ +001b9480: 6f6e 6669 6775 7265 3c2f 7464 3e3c 2f74 onfigure
<
│ │ │ +001b94a0: 636f 6465 3e2d 206e 616d 653a 2047 6174  code>- name: Gat
│ │ │ +001b94b0: 6865 7220 7468 6520 7061 636b 6167 6520  her the package 
│ │ │ +001b94c0: 6661 6374 730a 2020 7061 636b 6167 655f  facts.  package_
│ │ │ +001b94d0: 6661 6374 733a 0a20 2020 206d 616e 6167  facts:.    manag
│ │ │ +001b94e0: 6572 3a20 6175 746f 0a20 2074 6167 733a  er: auto.  tags:
│ │ │ +001b94f0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001b9500: 2d41 432d 360a 2020 2d20 4e49 5354 2d38  -AC-6.  - NIST-8
│ │ │ +001b9510: 3030 2d35 332d 4143 2d36 2831 290a 2020  00-53-AC-6(1).  
│ │ │ +001b9520: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +001b9530: 2d36 2861 290a 2020 2d20 4e49 5354 2d38  -6(a).  - NIST-8
│ │ │ +001b9540: 3030 2d35 332d 434d 2d37 2861 290a 2020  00-53-CM-7(a).  
│ │ │ +001b9550: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +001b9560: 2d37 2862 290a 2020 2d20 4e49 5354 2d38  -7(b).  - NIST-8
│ │ │ +001b9570: 3030 2d35 332d 4d50 2d37 0a20 202d 2063  00-53-MP-7.  - c
│ │ │ +001b9580: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ +001b9590: 790a 2020 2d20 6869 6768 5f64 6973 7275  y.  - high_disru
│ │ │ +001b95a0: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f  ption.  - low_co
│ │ │ +001b95b0: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ +001b95c0: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ +001b95d0: 206d 6f75 6e74 5f6f 7074 696f 6e5f 7661   mount_option_va
│ │ │ +001b95e0: 725f 6c6f 675f 6e6f 7375 6964 0a20 202d  r_log_nosuid.  -
│ │ │ +001b95f0: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ +001b9600: 640a 0a2d 206e 616d 653a 2027 4164 6420  d..- name: 'Add 
│ │ │ +001b9610: 6e6f 7375 6964 204f 7074 696f 6e20 746f  nosuid Option to
│ │ │ +001b9620: 202f 7661 722f 6c6f 673a 2043 6865 636b   /var/log: Check
│ │ │ +001b9630: 2069 6e66 6f72 6d61 7469 6f6e 2061 7373   information ass
│ │ │ +001b9640: 6f63 6961 7465 6420 746f 206d 6f75 6e74  ociated to mount
│ │ │ +001b9650: 706f 696e 7427 0a20 2061 6e73 6962 6c65  point'.  ansible
│ │ │ +001b9660: 2e62 7569 6c74 696e 2e63 6f6d 6d61 6e64  .builtin.command
│ │ │ +001b9670: 3a20 6669 6e64 6d6e 7420 2d2d 6673 7461  : findmnt --fsta
│ │ │ +001b9680: 6220 272f 7661 722f 6c6f 6727 0a20 2072  b '/var/log'.  r
│ │ │ +001b9690: 6567 6973 7465 723a 2064 6576 6963 655f  egister: device_
│ │ │ +001b96a0: 6e61 6d65 0a20 2066 6169 6c65 645f 7768  name.  failed_wh
│ │ │ +001b96b0: 656e 3a20 6465 7669 6365 5f6e 616d 652e  en: device_name.
│ │ │ +001b96c0: 7263 2026 6774 3b20 310a 2020 6368 616e  rc > 1.  chan
│ │ │ +001b96d0: 6765 645f 7768 656e 3a20 6661 6c73 650a  ged_when: false.
│ │ │ +001b96e0: 2020 6368 6563 6b5f 6d6f 6465 3a20 6661    check_mode: fa
│ │ │ +001b96f0: 6c73 650a 2020 7768 656e 3a0a 2020 2d20  lse.  when:.  - 
│ │ │ +001b9700: 2820 6e6f 7420 2820 226b 6572 6e65 6c22  ( not ( "kernel"
│ │ │ +001b9710: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001b9720: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ +001b9730: 626f 6f74 6322 2069 6e20 616e 7369 626c  bootc" in ansibl
│ │ │ +001b9740: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +001b9750: 0a20 2020 2061 6e64 206e 6f74 2022 6f70  .    and not "op
│ │ │ +001b9760: 656e 7368 6966 742d 6b75 6265 6c65 7422  enshift-kubelet"
│ │ │ +001b9770: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001b9780: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ +001b9790: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ +001b97a0: 6c65 5f70 726f 635f 636d 646c 696e 650a  le_proc_cmdline.
│ │ │ +001b97b0: 2020 2020 2920 616e 6420 6e6f 7420 2820      ) and not ( 
│ │ │ +001b97c0: 616e 7369 626c 655f 7669 7274 7561 6c69  ansible_virtuali
│ │ │ +001b97d0: 7a61 7469 6f6e 5f74 7970 6520 696e 205b  zation_type in [
│ │ │ +001b97e0: 2264 6f63 6b65 7222 2c20 226c 7863 222c  "docker", "lxc",
│ │ │ +001b97f0: 2022 6f70 656e 767a 222c 2022 706f 646d   "openvz", "podm
│ │ │ +001b9800: 616e 222c 0a20 2020 2022 636f 6e74 6169  an",.    "contai
│ │ │ +001b9810: 6e65 7222 5d20 2920 290a 2020 2d20 2722  ner"] ) ).  - '"
│ │ │ +001b9820: 2f76 6172 2f6c 6f67 2220 696e 2061 6e73  /var/log" in ans
│ │ │ +001b9830: 6962 6c65 5f6d 6f75 6e74 7320 7c20 6d61  ible_mounts | ma
│ │ │ +001b9840: 7028 6174 7472 6962 7574 653d 226d 6f75  p(attribute="mou
│ │ │ +001b9850: 6e74 2229 207c 206c 6973 7427 0a20 2074  nt") | list'.  t
│ │ │ +001b9860: 6167 733a 0a20 202d 204e 4953 542d 3830  ags:.  - NIST-80
│ │ │ +001b9870: 302d 3533 2d41 432d 360a 2020 2d20 4e49  0-53-AC-6.  - NI
│ │ │ +001b9880: 5354 2d38 3030 2d35 332d 4143 2d36 2831  ST-800-53-AC-6(1
│ │ │ +001b9890: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001b98a0: 332d 434d 2d36 2861 290a 2020 2d20 4e49  3-CM-6(a).  - NI
│ │ │ +001b98b0: 5354 2d38 3030 2d35 332d 434d 2d37 2861  ST-800-53-CM-7(a
│ │ │ +001b98c0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001b98d0: 332d 434d 2d37 2862 290a 2020 2d20 4e49  3-CM-7(b).  - NI
│ │ │ +001b98e0: 5354 2d38 3030 2d35 332d 4d50 2d37 0a20  ST-800-53-MP-7. 
│ │ │ +001b98f0: 202d 2063 6f6e 6669 6775 7265 5f73 7472   - configure_str
│ │ │ +001b9900: 6174 6567 790a 2020 2d20 6869 6768 5f64  ategy.  - high_d
│ │ │ +001b9910: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ +001b9920: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ +001b9930: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ +001b9940: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f  .  - mount_optio
│ │ │ +001b9950: 6e5f 7661 725f 6c6f 675f 6e6f 7375 6964  n_var_log_nosuid
│ │ │ +001b9960: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ +001b9970: 6565 6465 640a 0a2d 206e 616d 653a 2027  eeded..- name: '
│ │ │ +001b9980: 4164 6420 6e6f 7375 6964 204f 7074 696f  Add nosuid Optio
│ │ │ +001b9990: 6e20 746f 202f 7661 722f 6c6f 673a 2043  n to /var/log: C
│ │ │ +001b99a0: 7265 6174 6520 6d6f 756e 745f 696e 666f  reate mount_info
│ │ │ +001b99b0: 2064 6963 7469 6f6e 6172 7920 7661 7269   dictionary vari
│ │ │ +001b99c0: 6162 6c65 270a 2020 7365 745f 6661 6374  able'.  set_fact
│ │ │ +001b99d0: 3a0a 2020 2020 6d6f 756e 745f 696e 666f  :.    mount_info
│ │ │ +001b99e0: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ +001b99f0: 7c64 6566 6175 6c74 287b 7d29 7c63 6f6d  |default({})|com
│ │ │ +001b9a00: 6269 6e65 287b 6974 656d 2e30 3a20 6974  bine({item.0: it
│ │ │ +001b9a10: 656d 2e31 7d29 207d 7d27 0a20 2077 6974  em.1}) }}'.  wit
│ │ │ +001b9a20: 685f 746f 6765 7468 6572 3a0a 2020 2d20  h_together:.  - 
│ │ │ +001b9a30: 277b 7b20 6465 7669 6365 5f6e 616d 652e  '{{ device_name.
│ │ │ +001b9a40: 7374 646f 7574 5f6c 696e 6573 5b30 5d2e  stdout_lines[0].
│ │ │ +001b9a50: 7370 6c69 7428 2920 7c20 6d61 7028 2727  split() | map(''
│ │ │ +001b9a60: 6c6f 7765 7227 2729 207c 206c 6973 7420  lower'') | list 
│ │ │ +001b9a70: 7d7d 270a 2020 2d20 277b 7b20 6465 7669  }}'.  - '{{ devi
│ │ │ +001b9a80: 6365 5f6e 616d 652e 7374 646f 7574 5f6c  ce_name.stdout_l
│ │ │ +001b9a90: 696e 6573 5b31 5d2e 7370 6c69 7428 2920  ines[1].split() 
│ │ │ +001b9aa0: 7c20 6c69 7374 207d 7d27 0a20 2077 6865  | list }}'.  whe
│ │ │ +001b9ab0: 6e3a 0a20 202d 2028 206e 6f74 2028 2022  n:.  - ( not ( "
│ │ │ +001b9ac0: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ +001b9ad0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001b9ae0: 7320 616e 6420 2262 6f6f 7463 2220 696e  s and "bootc" in
│ │ │ +001b9af0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001b9b00: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ +001b9b10: 6e6f 7420 226f 7065 6e73 6869 6674 2d6b  not "openshift-k
│ │ │ +001b9b20: 7562 656c 6574 2220 696e 2061 6e73 6962  ubelet" in ansib
│ │ │ +001b9b30: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001b9b40: 7320 616e 6420 226f 7374 7265 6522 2069  s and "ostree" i
│ │ │ +001b9b50: 6e20 616e 7369 626c 655f 7072 6f63 5f63  n ansible_proc_c
│ │ │ +001b9b60: 6d64 6c69 6e65 0a20 2020 2029 2061 6e64  mdline.    ) and
│ │ │ +001b9b70: 206e 6f74 2028 2061 6e73 6962 6c65 5f76   not ( ansible_v
│ │ │ +001b9b80: 6972 7475 616c 697a 6174 696f 6e5f 7479  irtualization_ty
│ │ │ +001b9b90: 7065 2069 6e20 5b22 646f 636b 6572 222c  pe in ["docker",
│ │ │ +001b9ba0: 2022 6c78 6322 2c20 226f 7065 6e76 7a22   "lxc", "openvz"
│ │ │ +001b9bb0: 2c20 2270 6f64 6d61 6e22 2c0a 2020 2020  , "podman",.    
│ │ │ +001b9bc0: 2263 6f6e 7461 696e 6572 225d 2029 2029  "container"] ) )
│ │ │ +001b9bd0: 0a20 202d 2027 222f 7661 722f 6c6f 6722  .  - '"/var/log"
│ │ │ +001b9be0: 2069 6e20 616e 7369 626c 655f 6d6f 756e   in ansible_moun
│ │ │ +001b9bf0: 7473 207c 206d 6170 2861 7474 7269 6275  ts | map(attribu
│ │ │ +001b9c00: 7465 3d22 6d6f 756e 7422 2920 7c20 6c69  te="mount") | li
│ │ │ +001b9c10: 7374 270a 2020 2d20 6465 7669 6365 5f6e  st'.  - device_n
│ │ │ +001b9c20: 616d 652e 7374 646f 7574 2069 7320 6465  ame.stdout is de
│ │ │ +001b9c30: 6669 6e65 6420 616e 6420 6465 7669 6365  fined and device
│ │ │ +001b9c40: 5f6e 616d 652e 7374 646f 7574 5f6c 696e  _name.stdout_lin
│ │ │ +001b9c50: 6573 2069 7320 6465 6669 6e65 640a 2020  es is defined.  
│ │ │ +001b9c60: 2d20 2864 6576 6963 655f 6e61 6d65 2e73  - (device_name.s
│ │ │ +001b9c70: 7464 6f75 7420 7c20 6c65 6e67 7468 2026  tdout | length &
│ │ │ +001b9c80: 6774 3b20 3029 0a20 2074 6167 733a 0a20  gt; 0).  tags:. 
│ │ │ +001b9c90: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ +001b9ca0: 432d 360a 2020 2d20 4e49 5354 2d38 3030  C-6.  - NIST-800
│ │ │ +001b9cb0: 2d35 332d 4143 2d36 2831 290a 2020 2d20  -53-AC-6(1).  - 
│ │ │ +001b9cc0: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ +001b9cd0: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ +001b9ce0: 2d35 332d 434d 2d37 2861 290a 2020 2d20  -53-CM-7(a).  - 
│ │ │ +001b9cf0: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ +001b9d00: 2862 290a 2020 2d20 4e49 5354 2d38 3030  (b).  - NIST-800
│ │ │ +001b9d10: 2d35 332d 4d50 2d37 0a20 202d 2063 6f6e  -53-MP-7.  - con
│ │ │ +001b9d20: 6669 6775 7265 5f73 7472 6174 6567 790a  figure_strategy.
│ │ │ +001b9d30: 2020 2d20 6869 6768 5f64 6973 7275 7074    - high_disrupt
│ │ │ +001b9d40: 696f 6e0a 2020 2d20 6c6f 775f 636f 6d70  ion.  - low_comp
│ │ │ +001b9d50: 6c65 7869 7479 0a20 202d 206d 6564 6975  lexity.  - mediu
│ │ │ +001b9d60: 6d5f 7365 7665 7269 7479 0a20 202d 206d  m_severity.  - m
│ │ │ +001b9d70: 6f75 6e74 5f6f 7074 696f 6e5f 7661 725f  ount_option_var_
│ │ │ +001b9d80: 6c6f 675f 6e6f 7375 6964 0a20 202d 206e  log_nosuid.  - n
│ │ │ +001b9d90: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ +001b9da0: 0a2d 206e 616d 653a 2027 4164 6420 6e6f  .- name: 'Add no
│ │ │ +001b9db0: 7375 6964 204f 7074 696f 6e20 746f 202f  suid Option to /
│ │ │ +001b9dc0: 7661 722f 6c6f 673a 2049 6620 2f76 6172  var/log: If /var
│ │ │ +001b9dd0: 2f6c 6f67 206e 6f74 206d 6f75 6e74 6564  /log not mounted
│ │ │ +001b9de0: 2c20 6372 6166 7420 6d6f 756e 745f 696e  , craft mount_in
│ │ │ +001b9df0: 666f 0a20 2020 206d 616e 7561 6c6c 7927  fo.    manually'
│ │ │ +001b9e00: 0a20 2073 6574 5f66 6163 743a 0a20 2020  .  set_fact:.   
│ │ │ +001b9e10: 206d 6f75 6e74 5f69 6e66 6f3a 2027 7b7b   mount_info: '{{
│ │ │ +001b9e20: 206d 6f75 6e74 5f69 6e66 6f7c 6465 6661   mount_info|defa
│ │ │ +001b9e30: 756c 7428 7b7d 297c 636f 6d62 696e 6528  ult({})|combine(
│ │ │ +001b9e40: 7b69 7465 6d2e 303a 2069 7465 6d2e 317d  {item.0: item.1}
│ │ │ +001b9e50: 2920 7d7d 270a 2020 7769 7468 5f74 6f67  ) }}'.  with_tog
│ │ │ +001b9e60: 6574 6865 723a 0a20 202d 202d 2074 6172  ether:.  - - tar
│ │ │ +001b9e70: 6765 740a 2020 2020 2d20 736f 7572 6365  get.    - source
│ │ │ +001b9e80: 0a20 2020 202d 2066 7374 7970 650a 2020  .    - fstype.  
│ │ │ +001b9e90: 2020 2d20 6f70 7469 6f6e 730a 2020 2d20    - options.  - 
│ │ │ +001b9ea0: 2d20 2f76 6172 2f6c 6f67 0a20 2020 202d  - /var/log.    -
│ │ │ +001b9eb0: 2027 270a 2020 2020 2d20 2727 0a20 2020   ''.    - ''.   
│ │ │ +001b9ec0: 202d 2064 6566 6175 6c74 730a 2020 7768   - defaults.  wh
│ │ │ +001b9ed0: 656e 3a0a 2020 2d20 2820 6e6f 7420 2820  en:.  - ( not ( 
│ │ │ +001b9ee0: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ +001b9ef0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001b9f00: 6573 2061 6e64 2022 626f 6f74 6322 2069  es and "bootc" i
│ │ │ +001b9f10: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001b9f20: 7061 636b 6167 6573 0a20 2020 2061 6e64  packages.    and
│ │ │ +001b9f30: 206e 6f74 2022 6f70 656e 7368 6966 742d   not "openshift-
│ │ │ +001b9f40: 6b75 6265 6c65 7422 2069 6e20 616e 7369  kubelet" in ansi
│ │ │ +001b9f50: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001b9f60: 6573 2061 6e64 2022 6f73 7472 6565 2220  es and "ostree" 
│ │ │ +001b9f70: 696e 2061 6e73 6962 6c65 5f70 726f 635f  in ansible_proc_
│ │ │ +001b9f80: 636d 646c 696e 650a 2020 2020 2920 616e  cmdline.    ) an
│ │ │ +001b9f90: 6420 6e6f 7420 2820 616e 7369 626c 655f  d not ( ansible_
│ │ │ +001b9fa0: 7669 7274 7561 6c69 7a61 7469 6f6e 5f74  virtualization_t
│ │ │ +001b9fb0: 7970 6520 696e 205b 2264 6f63 6b65 7222  ype in ["docker"
│ │ │ +001b9fc0: 2c20 226c 7863 222c 2022 6f70 656e 767a  , "lxc", "openvz
│ │ │ +001b9fd0: 222c 2022 706f 646d 616e 222c 0a20 2020  ", "podman",.   
│ │ │ +001b9fe0: 2022 636f 6e74 6169 6e65 7222 5d20 2920   "container"] ) 
│ │ │ +001b9ff0: 290a 2020 2d20 2722 2f76 6172 2f6c 6f67  ).  - '"/var/log
│ │ │ +001ba000: 2220 696e 2061 6e73 6962 6c65 5f6d 6f75  " in ansible_mou
│ │ │ +001ba010: 6e74 7320 7c20 6d61 7028 6174 7472 6962  nts | map(attrib
│ │ │ +001ba020: 7574 653d 226d 6f75 6e74 2229 207c 206c  ute="mount") | l
│ │ │ +001ba030: 6973 7427 0a20 202d 2028 222d 2d66 7374  ist'.  - ("--fst
│ │ │ +001ba040: 6162 2220 7c20 6c65 6e67 7468 203d 3d20  ab" | length == 
│ │ │ +001ba050: 3029 0a20 202d 2064 6576 6963 655f 6e61  0).  - device_na
│ │ │ +001ba060: 6d65 2e73 7464 6f75 7420 6973 2064 6566  me.stdout is def
│ │ │ +001ba070: 696e 6564 2061 6e64 2064 6576 6963 655f  ined and device_
│ │ │ +001ba080: 6e61 6d65 2e73 7464 6f75 745f 6c69 6e65  name.stdout_line
│ │ │ +001ba090: 7320 6973 2064 6566 696e 6564 0a20 202d  s is defined.  -
│ │ │ +001ba0a0: 2028 6465 7669 6365 5f6e 616d 652e 7374   (device_name.st
│ │ │ +001ba0b0: 646f 7574 207c 206c 656e 6774 6820 3d3d  dout | length ==
│ │ │ +001ba0c0: 2030 290a 2020 7461 6773 3a0a 2020 2d20   0).  tags:.  - 
│ │ │ +001ba0d0: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ +001ba0e0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001ba0f0: 2d41 432d 3628 3129 0a20 202d 204e 4953  -AC-6(1).  - NIS
│ │ │ +001ba100: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ +001ba110: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001ba120: 2d43 4d2d 3728 6129 0a20 202d 204e 4953  -CM-7(a).  - NIS
│ │ │ +001ba130: 542d 3830 302d 3533 2d43 4d2d 3728 6229  T-800-53-CM-7(b)
│ │ │ +001ba140: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001ba150: 2d4d 502d 370a 2020 2d20 636f 6e66 6967  -MP-7.  - config
│ │ │ +001ba160: 7572 655f 7374 7261 7465 6779 0a20 202d  ure_strategy.  -
│ │ │ +001ba170: 2068 6967 685f 6469 7372 7570 7469 6f6e   high_disruption
│ │ │ +001ba180: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ +001ba190: 6974 790a 2020 2d20 6d65 6469 756d 5f73  ity.  - medium_s
│ │ │ +001ba1a0: 6576 6572 6974 790a 2020 2d20 6d6f 756e  everity.  - moun
│ │ │ +001ba1b0: 745f 6f70 7469 6f6e 5f76 6172 5f6c 6f67  t_option_var_log
│ │ │ +001ba1c0: 5f6e 6f73 7569 640a 2020 2d20 6e6f 5f72  _nosuid.  - no_r
│ │ │ +001ba1d0: 6562 6f6f 745f 6e65 6564 6564 0a0a 2d20  eboot_needed..- 
│ │ │ +001ba1e0: 6e61 6d65 3a20 2741 6464 206e 6f73 7569  name: 'Add nosui
│ │ │ +001ba1f0: 6420 4f70 7469 6f6e 2074 6f20 2f76 6172  d Option to /var
│ │ │ +001ba200: 2f6c 6f67 3a20 4d61 6b65 2073 7572 6520  /log: Make sure 
│ │ │ +001ba210: 6e6f 7375 6964 206f 7074 696f 6e20 6973  nosuid option is
│ │ │ +001ba220: 2070 6172 7420 6f66 2074 6865 2074 6f0a   part of the to.
│ │ │ +001ba230: 2020 2020 2f76 6172 2f6c 6f67 206f 7074      /var/log opt
│ │ │ +001ba240: 696f 6e73 270a 2020 7365 745f 6661 6374  ions'.  set_fact
│ │ │ +001ba250: 3a0a 2020 2020 6d6f 756e 745f 696e 666f  :.    mount_info
│ │ │ +001ba260: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ +001ba270: 207c 2063 6f6d 6269 6e65 2820 7b27 276f   | combine( {''o
│ │ │ +001ba280: 7074 696f 6e73 2727 3a27 2727 277e 286d  ptions'':''''~(m
│ │ │ +001ba290: 6f75 6e74 5f69 6e66 6f2e 6f70 7469 6f6e  ount_info.option
│ │ │ +001ba2a0: 7320 7c0a 2020 2020 2020 6465 6661 756c  s |.      defaul
│ │ │ +001ba2b0: 7428 2727 2727 2929 7e28 2727 2c27 2720  t(''''))~('','' 
│ │ │ +001ba2c0: 6966 2028 6d6f 756e 745f 696e 666f 2e6f  if (mount_info.o
│ │ │ +001ba2d0: 7074 696f 6e73 207c 2064 6566 6175 6c74  ptions | default
│ │ │ +001ba2e0: 2827 2727 2729 2920 656c 7365 2027 2727  ('''')) else '''
│ │ │ +001ba2f0: 2729 7e27 276e 6f73 7569 6427 270a 2020  ')~''nosuid''.  
│ │ │ +001ba300: 2020 2020 7d29 207d 7d27 0a20 2077 6865      }) }}'.  whe
│ │ │ +001ba310: 6e3a 0a20 202d 2028 206e 6f74 2028 2022  n:.  - ( not ( "
│ │ │ +001ba320: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ +001ba330: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001ba340: 7320 616e 6420 2262 6f6f 7463 2220 696e  s and "bootc" in
│ │ │ +001ba350: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001ba360: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ +001ba370: 6e6f 7420 226f 7065 6e73 6869 6674 2d6b  not "openshift-k
│ │ │ +001ba380: 7562 656c 6574 2220 696e 2061 6e73 6962  ubelet" in ansib
│ │ │ +001ba390: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001ba3a0: 7320 616e 6420 226f 7374 7265 6522 2069  s and "ostree" i
│ │ │ +001ba3b0: 6e20 616e 7369 626c 655f 7072 6f63 5f63  n ansible_proc_c
│ │ │ +001ba3c0: 6d64 6c69 6e65 0a20 2020 2029 2061 6e64  mdline.    ) and
│ │ │ +001ba3d0: 206e 6f74 2028 2061 6e73 6962 6c65 5f76   not ( ansible_v
│ │ │ +001ba3e0: 6972 7475 616c 697a 6174 696f 6e5f 7479  irtualization_ty
│ │ │ +001ba3f0: 7065 2069 6e20 5b22 646f 636b 6572 222c  pe in ["docker",
│ │ │ +001ba400: 2022 6c78 6322 2c20 226f 7065 6e76 7a22   "lxc", "openvz"
│ │ │ +001ba410: 2c20 2270 6f64 6d61 6e22 2c0a 2020 2020  , "podman",.    
│ │ │ +001ba420: 2263 6f6e 7461 696e 6572 225d 2029 2029  "container"] ) )
│ │ │ +001ba430: 0a20 202d 2027 222f 7661 722f 6c6f 6722  .  - '"/var/log"
│ │ │ +001ba440: 2069 6e20 616e 7369 626c 655f 6d6f 756e   in ansible_moun
│ │ │ +001ba450: 7473 207c 206d 6170 2861 7474 7269 6275  ts | map(attribu
│ │ │ +001ba460: 7465 3d22 6d6f 756e 7422 2920 7c20 6c69  te="mount") | li
│ │ │ +001ba470: 7374 270a 2020 2d20 6d6f 756e 745f 696e  st'.  - mount_in
│ │ │ +001ba480: 666f 2069 7320 6465 6669 6e65 6420 616e  fo is defined an
│ │ │ +001ba490: 6420 226e 6f73 7569 6422 206e 6f74 2069  d "nosuid" not i
│ │ │ +001ba4a0: 6e20 286d 6f75 6e74 5f69 6e66 6f2e 6f70  n (mount_info.op
│ │ │ +001ba4b0: 7469 6f6e 7320 7c20 6465 6661 756c 7428  tions | default(
│ │ │ +001ba4c0: 2727 2929 0a20 2074 6167 733a 0a20 202d  '')).  tags:.  -
│ │ │ +001ba4d0: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ +001ba4e0: 360a 2020 2d20 4e49 5354 2d38 3030 2d35  6.  - NIST-800-5
│ │ │ +001ba4f0: 332d 4143 2d36 2831 290a 2020 2d20 4e49  3-AC-6(1).  - NI
│ │ │ +001ba500: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ +001ba510: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001ba520: 332d 434d 2d37 2861 290a 2020 2d20 4e49  3-CM-7(a).  - NI
│ │ │ +001ba530: 5354 2d38 3030 2d35 332d 434d 2d37 2862  ST-800-53-CM-7(b
│ │ │ +001ba540: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001ba550: 332d 4d50 2d37 0a20 202d 2063 6f6e 6669  3-MP-7.  - confi
│ │ │ +001ba560: 6775 7265 5f73 7472 6174 6567 790a 2020  gure_strategy.  
│ │ │ +001ba570: 2d20 6869 6768 5f64 6973 7275 7074 696f  - high_disruptio
│ │ │ +001ba580: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65  n.  - low_comple
│ │ │ +001ba590: 7869 7479 0a20 202d 206d 6564 6975 6d5f  xity.  - medium_
│ │ │ +001ba5a0: 7365 7665 7269 7479 0a20 202d 206d 6f75  severity.  - mou
│ │ │ +001ba5b0: 6e74 5f6f 7074 696f 6e5f 7661 725f 6c6f  nt_option_var_lo
│ │ │ +001ba5c0: 675f 6e6f 7375 6964 0a20 202d 206e 6f5f  g_nosuid.  - no_
│ │ │ +001ba5d0: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ +001ba5e0: 206e 616d 653a 2027 4164 6420 6e6f 7375   name: 'Add nosu
│ │ │ +001ba5f0: 6964 204f 7074 696f 6e20 746f 202f 7661  id Option to /va
│ │ │ +001ba600: 722f 6c6f 673a 2045 6e73 7572 6520 2f76  r/log: Ensure /v
│ │ │ +001ba610: 6172 2f6c 6f67 2069 7320 6d6f 756e 7465  ar/log is mounte
│ │ │ +001ba620: 6420 7769 7468 206e 6f73 7569 6420 6f70  d with nosuid op
│ │ │ +001ba630: 7469 6f6e 270a 2020 616e 7369 626c 652e  tion'.  ansible.
│ │ │ +001ba640: 706f 7369 782e 6d6f 756e 743a 0a20 2020  posix.mount:.   
│ │ │ +001ba650: 2070 6174 683a 202f 7661 722f 6c6f 670a   path: /var/log.
│ │ │ +001ba660: 2020 2020 7372 633a 2027 7b7b 206d 6f75      src: '{{ mou
│ │ │ +001ba670: 6e74 5f69 6e66 6f2e 736f 7572 6365 207c  nt_info.source |
│ │ │ +001ba680: 2064 6566 6175 6c74 2827 2727 2729 207d   default('''') }
│ │ │ +001ba690: 7d27 0a20 2020 206f 7074 733a 2027 7b7b  }'.    opts: '{{
│ │ │ +001ba6a0: 206d 6f75 6e74 5f69 6e66 6f2e 6f70 7469   mount_info.opti
│ │ │ +001ba6b0: 6f6e 7320 7c20 6465 6661 756c 7428 2727  ons | default(''
│ │ │ +001ba6c0: 2727 2920 7d7d 270a 2020 2020 7374 6174  '') }}'.    stat
│ │ │ +001ba6d0: 653a 206d 6f75 6e74 6564 0a20 2020 2066  e: mounted.    f
│ │ │ +001ba6e0: 7374 7970 653a 2027 7b7b 206d 6f75 6e74  stype: '{{ mount
│ │ │ +001ba6f0: 5f69 6e66 6f2e 6673 7479 7065 207c 2064  _info.fstype | d
│ │ │ +001ba700: 6566 6175 6c74 2827 2727 2729 207d 7d27  efault('''') }}'
│ │ │ +001ba710: 0a20 2072 6567 6973 7465 723a 206d 6f75  .  register: mou
│ │ │ +001ba720: 6e74 5f72 6573 756c 740a 2020 6661 696c  nt_result.  fail
│ │ │ +001ba730: 6564 5f77 6865 6e3a 0a20 202d 206d 6f75  ed_when:.  - mou
│ │ │ +001ba740: 6e74 5f72 6573 756c 7420 6973 2066 6169  nt_result is fai
│ │ │ +001ba750: 6c65 640a 2020 2d20 2727 2774 6172 6765  led.  - '''targe
│ │ │ +001ba760: 7420 6973 2062 7573 7927 2720 6e6f 7420  t is busy'' not 
│ │ │ +001ba770: 696e 2028 6d6f 756e 745f 7265 7375 6c74  in (mount_result
│ │ │ +001ba780: 2e6d 7367 207c 2064 6566 6175 6c74 2827  .msg | default('
│ │ │ +001ba790: 2727 2729 2927 0a20 202d 2027 2727 616c  '''))'.  - '''al
│ │ │ +001ba7a0: 7265 6164 7920 6d6f 756e 7465 6427 2720  ready mounted'' 
│ │ │ +001ba7b0: 6e6f 7420 696e 2028 6d6f 756e 745f 7265  not in (mount_re
│ │ │ +001ba7c0: 7375 6c74 2e6d 7367 207c 2064 6566 6175  sult.msg | defau
│ │ │ +001ba7d0: 6c74 2827 2727 2729 2927 0a20 2077 6865  lt(''''))'.  whe
│ │ │ +001ba7e0: 6e3a 0a20 202d 2028 206e 6f74 2028 2022  n:.  - ( not ( "
│ │ │ +001ba7f0: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ +001ba800: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001ba810: 7320 616e 6420 2262 6f6f 7463 2220 696e  s and "bootc" in
│ │ │ +001ba820: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001ba830: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ +001ba840: 6e6f 7420 226f 7065 6e73 6869 6674 2d6b  not "openshift-k
│ │ │ +001ba850: 7562 656c 6574 2220 696e 2061 6e73 6962  ubelet" in ansib
│ │ │ +001ba860: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001ba870: 7320 616e 6420 226f 7374 7265 6522 2069  s and "ostree" i
│ │ │ +001ba880: 6e20 616e 7369 626c 655f 7072 6f63 5f63  n ansible_proc_c
│ │ │ +001ba890: 6d64 6c69 6e65 0a20 2020 2029 2061 6e64  mdline.    ) and
│ │ │ +001ba8a0: 206e 6f74 2028 2061 6e73 6962 6c65 5f76   not ( ansible_v
│ │ │ +001ba8b0: 6972 7475 616c 697a 6174 696f 6e5f 7479  irtualization_ty
│ │ │ +001ba8c0: 7065 2069 6e20 5b22 646f 636b 6572 222c  pe in ["docker",
│ │ │ +001ba8d0: 2022 6c78 6322 2c20 226f 7065 6e76 7a22   "lxc", "openvz"
│ │ │ +001ba8e0: 2c20 2270 6f64 6d61 6e22 2c0a 2020 2020  , "podman",.    
│ │ │ +001ba8f0: 2263 6f6e 7461 696e 6572 225d 2029 2029  "container"] ) )
│ │ │ +001ba900: 0a20 202d 2027 222f 7661 722f 6c6f 6722  .  - '"/var/log"
│ │ │ +001ba910: 2069 6e20 616e 7369 626c 655f 6d6f 756e   in ansible_moun
│ │ │ +001ba920: 7473 207c 206d 6170 2861 7474 7269 6275  ts | map(attribu
│ │ │ +001ba930: 7465 3d22 6d6f 756e 7422 2920 7c20 6c69  te="mount") | li
│ │ │ +001ba940: 7374 270a 2020 2d20 6d6f 756e 745f 696e  st'.  - mount_in
│ │ │ +001ba950: 666f 2069 7320 6465 6669 6e65 640a 2020  fo is defined.  
│ │ │ +001ba960: 2d20 2864 6576 6963 655f 6e61 6d65 2e73  - (device_name.s
│ │ │ +001ba970: 7464 6f75 7420 6973 2064 6566 696e 6564  tdout is defined
│ │ │ +001ba980: 2061 6e64 2028 6465 7669 6365 5f6e 616d   and (device_nam
│ │ │ +001ba990: 652e 7374 646f 7574 207c 206c 656e 6774  e.stdout | lengt
│ │ │ +001ba9a0: 6820 2667 743b 2030 2929 206f 7220 2822  h > 0)) or ("
│ │ │ +001ba9b0: 2d2d 6673 7461 6222 0a20 2020 207c 206c  --fstab".    | l
│ │ │ +001ba9c0: 656e 6774 6820 3d3d 2030 290a 2020 7461  ength == 0).  ta
│ │ │ +001ba9d0: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030  gs:.  - NIST-800
│ │ │ +001ba9e0: 2d35 332d 4143 2d36 0a20 202d 204e 4953  -53-AC-6.  - NIS
│ │ │ +001ba9f0: 542d 3830 302d 3533 2d41 432d 3628 3129  T-800-53-AC-6(1)
│ │ │ +001baa00: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001baa10: 2d43 4d2d 3628 6129 0a20 202d 204e 4953  -CM-6(a).  - NIS
│ │ │ +001baa20: 542d 3830 302d 3533 2d43 4d2d 3728 6129  T-800-53-CM-7(a)
│ │ │ +001baa30: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001baa40: 2d43 4d2d 3728 6229 0a20 202d 204e 4953  -CM-7(b).  - NIS
│ │ │ +001baa50: 542d 3830 302d 3533 2d4d 502d 370a 2020  T-800-53-MP-7.  
│ │ │ +001baa60: 2d20 636f 6e66 6967 7572 655f 7374 7261  - configure_stra
│ │ │ +001baa70: 7465 6779 0a20 202d 2068 6967 685f 6469  tegy.  - high_di
│ │ │ +001baa80: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ +001baa90: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +001baaa0: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ +001baab0: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e    - mount_option
│ │ │ +001baac0: 5f76 6172 5f6c 6f67 5f6e 6f73 7569 640a  _var_log_nosuid.
│ │ │ +001baad0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ +001baae0: 6564 6564 0a3c 2f63 6f64 653e 3c2f 7072  eded.
Remediation │ │ │ +001baba0: 2053 6865 6c6c 2073 6372 6970 7420 e287 Shell script .. │ │ │ +001babb0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ +001bac30: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +001bac40: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
<
│ │ │ +001bac60: 636f 6465 3e23 2052 656d 6564 6961 7469  code># Remediati
│ │ │ +001bac70: 6f6e 2069 7320 6170 706c 6963 6162 6c65  on is applicable
│ │ │ +001bac80: 206f 6e6c 7920 696e 2063 6572 7461 696e   only in certain
│ │ │ +001bac90: 2070 6c61 7466 6f72 6d73 0a69 6620 2820   platforms.if ( 
│ │ │ +001baca0: 2120 2820 7b20 7270 6d20 2d2d 7175 6965  ! ( { rpm --quie
│ │ │ +001bacb0: 7420 2d71 206b 6572 6e65 6c20 3b7d 2026  t -q kernel ;} &
│ │ │ +001bacc0: 616d 703b 2661 6d70 3b20 7b20 7270 6d20  amp;& { rpm 
│ │ │ +001bacd0: 2d2d 7175 6965 7420 2d71 2062 6f6f 7463  --quiet -q bootc
│ │ │ +001bace0: 203b 7d20 2661 6d70 3b26 616d 703b 207b   ;} && {
│ │ │ +001bacf0: 2021 2072 706d 202d 2d71 7569 6574 202d   ! rpm --quiet -
│ │ │ +001bad00: 7120 6f70 656e 7368 6966 742d 6b75 6265  q openshift-kube
│ │ │ +001bad10: 6c65 7420 3b7d 2026 616d 703b 2661 6d70  let ;} &&
│ │ │ +001bad20: 3b20 285b 202d 6620 2f72 756e 2f6f 7374  ; ([ -f /run/ost
│ │ │ +001bad30: 7265 652d 626f 6f74 6564 205d 207c 7c20  ree-booted ] || 
│ │ │ +001bad40: 5b20 2d4c 202f 6f73 7472 6565 205d 2920  [ -L /ostree ]) 
│ │ │ +001bad50: 2920 2661 6d70 3b26 616d 703b 2021 2028  ) && ! (
│ │ │ +001bad60: 205b 202d 6620 2f2e 646f 636b 6572 656e   [ -f /.dockeren
│ │ │ +001bad70: 7620 5d20 7c7c 205b 202d 6620 2f72 756e  v ] || [ -f /run
│ │ │ +001bad80: 2f2e 636f 6e74 6169 6e65 7265 6e76 205d  /.containerenv ]
│ │ │ +001bad90: 2029 2029 2026 616d 703b 2661 6d70 3b20   ) ) && 
│ │ │ +001bada0: 7b20 2820 6669 6e64 6d6e 7420 2d2d 6b65  { ( findmnt --ke
│ │ │ +001badb0: 726e 656c 2022 2f76 6172 2f6c 6f67 2220  rnel "/var/log" 
│ │ │ +001badc0: 2667 743b 202f 6465 762f 6e75 6c6c 207c  > /dev/null |
│ │ │ +001badd0: 7c20 6669 6e64 6d6e 7420 2d2d 6673 7461  | findmnt --fsta
│ │ │ +001bade0: 6220 222f 7661 722f 6c6f 6722 2026 6774  b "/var/log" >
│ │ │ +001badf0: 3b20 2f64 6576 2f6e 756c 6c20 293b 207d  ; /dev/null ); }
│ │ │ +001bae00: 3b20 7468 656e 0a0a 6675 6e63 7469 6f6e  ; then..function
│ │ │ +001bae10: 2070 6572 666f 726d 5f72 656d 6564 6961   perform_remedia
│ │ │ +001bae20: 7469 6f6e 207b 0a0a 2020 2020 0a20 2020  tion {..    .   
│ │ │ +001bae30: 2020 2020 2023 2074 6865 206d 6f75 6e74       # the mount
│ │ │ +001bae40: 2070 6f69 6e74 202f 7661 722f 6c6f 6720   point /var/log 
│ │ │ +001bae50: 6861 7320 746f 2062 6520 6465 6669 6e65  has to be define
│ │ │ +001bae60: 6420 696e 202f 6574 632f 6673 7461 620a  d in /etc/fstab.
│ │ │ +001bae70: 2020 2020 2020 2020 2320 6265 666f 7265          # before
│ │ │ +001bae80: 2074 6869 7320 7265 6d65 6469 6174 696f   this remediatio
│ │ │ +001bae90: 6e20 6361 6e20 6265 2065 7865 6375 7465  n can be execute
│ │ │ +001baea0: 642e 2049 6e20 6361 7365 2069 7420 6973  d. In case it is
│ │ │ +001baeb0: 206e 6f74 2064 6566 696e 6564 2c20 7468   not defined, th
│ │ │ +001baec0: 650a 2020 2020 2020 2020 2320 7265 6d65  e.        # reme
│ │ │ +001baed0: 6469 6174 696f 6e20 6162 6f72 7473 2061  diation aborts a
│ │ │ +001baee0: 6e64 206e 6f20 6368 616e 6765 7320 7265  nd no changes re
│ │ │ +001baef0: 6761 7264 696e 6720 7468 6520 6d6f 756e  garding the moun
│ │ │ +001baf00: 7420 706f 696e 7420 6172 6520 646f 6e65  t point are done
│ │ │ +001baf10: 2e0a 2020 2020 2020 2020 6d6f 756e 745f  ..        mount_
│ │ │ +001baf20: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ +001baf30: 7870 3d22 2428 7072 696e 7466 2022 5e5b  xp="$(printf "^[
│ │ │ +001baf40: 5b3a 7370 6163 653a 5d5d 2a5b 5e23 5d2e  [:space:]]*[^#].
│ │ │ +001baf50: 2a5b 5b3a 7370 6163 653a 5d5d 2573 5b5b  *[[:space:]]%s[[
│ │ │ +001baf60: 3a73 7061 6365 3a5d 5d22 2022 2f76 6172  :space:]]" "/var
│ │ │ +001baf70: 2f6c 6f67 2229 220a 0a20 2020 2067 7265  /log")"..    gre
│ │ │ +001baf80: 7020 2224 6d6f 756e 745f 706f 696e 745f  p "$mount_point_
│ │ │ +001baf90: 6d61 7463 685f 7265 6765 7870 2220 2d71  match_regexp" -q
│ │ │ +001bafa0: 202f 6574 632f 6673 7461 6220 5c0a 2020   /etc/fstab \.  
│ │ │ +001bafb0: 2020 2020 2020 7c7c 207b 2065 6368 6f20        || { echo 
│ │ │ +001bafc0: 2254 6865 206d 6f75 6e74 2070 6f69 6e74  "The mount point
│ │ │ +001bafd0: 2027 2f76 6172 2f6c 6f67 2720 6973 206e   '/var/log' is n
│ │ │ +001bafe0: 6f74 2065 7665 6e20 696e 202f 6574 632f  ot even in /etc/
│ │ │ +001baff0: 6673 7461 622c 2073 6f20 7765 2063 616e  fstab, so we can
│ │ │ +001bb000: 2774 2073 6574 2075 7020 6d6f 756e 7420  't set up mount 
│ │ │ +001bb010: 6f70 7469 6f6e 7322 2026 6774 3b26 616d  options" >&am
│ │ │ +001bb020: 703b 323b 0a20 2020 2020 2020 2020 2020  p;2;.           
│ │ │ +001bb030: 2020 2020 2065 6368 6f20 224e 6f74 2072       echo "Not r
│ │ │ +001bb040: 656d 6564 6961 7469 6e67 2c20 6265 6361  emediating, beca
│ │ │ +001bb050: 7573 6520 7468 6572 6520 6973 206e 6f20  use there is no 
│ │ │ +001bb060: 7265 636f 7264 206f 6620 2f76 6172 2f6c  record of /var/l
│ │ │ +001bb070: 6f67 2069 6e20 2f65 7463 2f66 7374 6162  og in /etc/fstab
│ │ │ +001bb080: 2220 2667 743b 2661 6d70 3b32 3b20 7265  " >&2; re
│ │ │ +001bb090: 7475 726e 2031 3b20 7d0a 2020 2020 0a0a  turn 1; }.    ..
│ │ │ +001bb0a0: 0a20 2020 206d 6f75 6e74 5f70 6f69 6e74  .    mount_point
│ │ │ +001bb0b0: 5f6d 6174 6368 5f72 6567 6578 703d 2224  _match_regexp="$
│ │ │ +001bb0c0: 2870 7269 6e74 6620 225e 5b5b 3a73 7061  (printf "^[[:spa
│ │ │ +001bb0d0: 6365 3a5d 5d2a 5b5e 235d 2e2a 5b5b 3a73  ce:]]*[^#].*[[:s
│ │ │ +001bb0e0: 7061 6365 3a5d 5d25 735b 5b3a 7370 6163  pace:]]%s[[:spac
│ │ │ +001bb0f0: 653a 5d5d 2220 2f76 6172 2f6c 6f67 2922  e:]]" /var/log)"
│ │ │ +001bb100: 0a0a 2020 2020 2320 4966 2074 6865 206d  ..    # If the m
│ │ │ +001bb110: 6f75 6e74 2070 6f69 6e74 2069 7320 6e6f  ount point is no
│ │ │ +001bb120: 7420 696e 202f 6574 632f 6673 7461 622c  t in /etc/fstab,
│ │ │ +001bb130: 2067 6574 2070 7265 7669 6f75 7320 6d6f   get previous mo
│ │ │ +001bb140: 756e 7420 6f70 7469 6f6e 7320 6672 6f6d  unt options from
│ │ │ +001bb150: 202f 6574 632f 6d74 6162 0a20 2020 2069   /etc/mtab.    i
│ │ │ +001bb160: 6620 2120 6772 6570 202d 7120 2224 6d6f  f ! grep -q "$mo
│ │ │ +001bb170: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ +001bb180: 7265 6765 7870 2220 2f65 7463 2f66 7374  regexp" /etc/fst
│ │ │ +001bb190: 6162 3b20 7468 656e 0a20 2020 2020 2020  ab; then.       
│ │ │ +001bb1a0: 2023 2072 756e 7469 6d65 206f 7074 7320   # runtime opts 
│ │ │ +001bb1b0: 7769 7468 6f75 7420 736f 6d65 2061 7574  without some aut
│ │ │ +001bb1c0: 6f6d 6174 6963 206b 6572 6e65 6c2f 7573  omatic kernel/us
│ │ │ +001bb1d0: 6572 7370 6163 652d 6164 6465 6420 6465  erspace-added de
│ │ │ +001bb1e0: 6661 756c 7473 0a20 2020 2020 2020 2070  faults.        p
│ │ │ +001bb1f0: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ +001bb200: 7473 3d24 2867 7265 7020 2224 6d6f 756e  ts=$(grep "$moun
│ │ │ +001bb210: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ +001bb220: 6765 7870 2220 2f65 7463 2f6d 7461 6220  gexp" /etc/mtab 
│ │ │ +001bb230: 7c20 6865 6164 202d 3120 7c20 2061 776b  | head -1 |  awk
│ │ │ +001bb240: 2027 7b70 7269 6e74 2024 347d 2720 5c0a   '{print $4}' \.
│ │ │ +001bb250: 2020 2020 2020 2020 2020 2020 2020 2020                  
│ │ │ +001bb260: 2020 2020 7c20 7365 6420 2d45 2022 732f      | sed -E "s/
│ │ │ +001bb270: 2872 777c 6465 6661 756c 7473 7c73 6563  (rw|defaults|sec
│ │ │ +001bb280: 6c61 6265 6c7c 6e6f 7375 6964 2928 2c7c  label|nosuid)(,|
│ │ │ +001bb290: 2429 2f2f 673b 732f 2c24 2f2f 2229 0a20  $)//g;s/,$//"). 
│ │ │ +001bb2a0: 2020 2020 2020 205b 2022 2470 7265 7669         [ "$previ
│ │ │ +001bb2b0: 6f75 735f 6d6f 756e 745f 6f70 7473 2220  ous_mount_opts" 
│ │ │ +001bb2c0: 5d20 2661 6d70 3b26 616d 703b 2070 7265  ] && pre
│ │ │ +001bb2d0: 7669 6f75 735f 6d6f 756e 745f 6f70 7473  vious_mount_opts
│ │ │ +001bb2e0: 2b3d 222c 220a 2020 2020 2020 2020 2320  +=",".        # 
│ │ │ +001bb2f0: 496e 2069 736f 3936 3630 2066 696c 6573  In iso9660 files
│ │ │ +001bb300: 7973 7465 6d73 206d 7461 6220 636f 756c  ystems mtab coul
│ │ │ +001bb310: 6420 6465 7363 7269 6265 2061 2022 626c  d describe a "bl
│ │ │ +001bb320: 6f63 6b73 697a 6522 2076 616c 7565 2c20  ocksize" value, 
│ │ │ +001bb330: 7468 6973 2073 686f 756c 6420 6265 2072  this should be r
│ │ │ +001bb340: 6566 6c65 6374 6564 2069 6e0a 2020 2020  eflected in.    
│ │ │ +001bb350: 2020 2020 2320 6673 7461 6220 6173 2022      # fstab as "
│ │ │ +001bb360: 626c 6f63 6b22 2e20 2054 6865 206e 6578  block".  The nex
│ │ │ +001bb370: 7420 7661 7269 6162 6c65 2069 7320 746f  t variable is to
│ │ │ +001bb380: 2073 6174 6973 6679 2073 6865 6c6c 6368   satisfy shellch
│ │ │ +001bb390: 6563 6b20 5343 3230 3530 2e0a 2020 2020  eck SC2050..    
│ │ │ +001bb3a0: 2020 2020 6673 5f74 7970 653d 2222 0a20      fs_type="". 
│ │ │ +001bb3b0: 2020 2020 2020 2069 6620 5b20 2022 2466         if [  "$f
│ │ │ +001bb3c0: 735f 7479 7065 2220 3d3d 2022 6973 6f39  s_type" == "iso9
│ │ │ +001bb3d0: 3636 3022 205d 203b 2074 6865 6e0a 2020  660" ] ; then.  
│ │ │ +001bb3e0: 2020 2020 2020 2020 2020 7072 6576 696f            previo
│ │ │ +001bb3f0: 7573 5f6d 6f75 6e74 5f6f 7074 733d 2428  us_mount_opts=$(
│ │ │ +001bb400: 7365 6420 2773 2f62 6c6f 636b 7369 7a65  sed 's/blocksize
│ │ │ +001bb410: 3d2f 626c 6f63 6b3d 2f27 2026 6c74 3b26  =/block=/' <&
│ │ │ +001bb420: 6c74 3b26 6c74 3b20 2224 7072 6576 696f  lt;< "$previo
│ │ │ +001bb430: 7573 5f6d 6f75 6e74 5f6f 7074 7322 290a  us_mount_opts").
│ │ │ +001bb440: 2020 2020 2020 2020 6669 0a20 2020 2020          fi.     
│ │ │ +001bb450: 2020 2065 6368 6f20 2220 2f76 6172 2f6c     echo " /var/l
│ │ │ +001bb460: 6f67 2020 6465 6661 756c 7473 2c24 7b70  og  defaults,${p
│ │ │ +001bb470: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ +001bb480: 7473 7d6e 6f73 7569 6420 3020 3022 2026  ts}nosuid 0 0" &
│ │ │ +001bb490: 6774 3b26 6774 3b20 2f65 7463 2f66 7374  gt;> /etc/fst
│ │ │ +001bb4a0: 6162 0a20 2020 2023 2049 6620 7468 6520  ab.    # If the 
│ │ │ +001bb4b0: 6d6f 756e 745f 6f70 7420 6f70 7469 6f6e  mount_opt option
│ │ │ +001bb4c0: 2069 7320 6e6f 7420 616c 7265 6164 7920   is not already 
│ │ │ +001bb4d0: 696e 2074 6865 206d 6f75 6e74 2070 6f69  in the mount poi
│ │ │ +001bb4e0: 6e74 2773 202f 6574 632f 6673 7461 6220  nt's /etc/fstab 
│ │ │ +001bb4f0: 656e 7472 792c 2061 6464 2069 740a 2020  entry, add it.  
│ │ │ +001bb500: 2020 656c 6966 2021 2067 7265 7020 2224    elif ! grep "$
│ │ │ +001bb510: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ +001bb520: 685f 7265 6765 7870 2220 2f65 7463 2f66  h_regexp" /etc/f
│ │ │ +001bb530: 7374 6162 207c 2067 7265 7020 2d71 2022  stab | grep -q "
│ │ │ +001bb540: 6e6f 7375 6964 223b 2074 6865 6e0a 2020  nosuid"; then.  
│ │ │ +001bb550: 2020 2020 2020 7072 6576 696f 7573 5f6d        previous_m
│ │ │ +001bb560: 6f75 6e74 5f6f 7074 733d 2428 6772 6570  ount_opts=$(grep
│ │ │ +001bb570: 2022 246d 6f75 6e74 5f70 6f69 6e74 5f6d   "$mount_point_m
│ │ │ +001bb580: 6174 6368 5f72 6567 6578 7022 202f 6574  atch_regexp" /et
│ │ │ +001bb590: 632f 6673 7461 6220 7c20 6177 6b20 277b  c/fstab | awk '{
│ │ │ +001bb5a0: 7072 696e 7420 2434 7d27 290a 2020 2020  print $4}').    
│ │ │ +001bb5b0: 2020 2020 7365 6420 2d69 2022 737c 5c28      sed -i "s|\(
│ │ │ +001bb5c0: 247b 6d6f 756e 745f 706f 696e 745f 6d61  ${mount_point_ma
│ │ │ +001bb5d0: 7463 685f 7265 6765 7870 7d2e 2a24 7b70  tch_regexp}.*${p
│ │ │ +001bb5e0: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ +001bb5f0: 7473 7d5c 297c 5c31 2c6e 6f73 7569 647c  ts}\)|\1,nosuid|
│ │ │ +001bb600: 2220 2f65 7463 2f66 7374 6162 0a20 2020  " /etc/fstab.   
│ │ │ +001bb610: 2066 690a 0a0a 2020 2020 6966 206d 6b64   fi...    if mkd
│ │ │ +001bb620: 6972 202d 7020 222f 7661 722f 6c6f 6722  ir -p "/var/log"
│ │ │ +001bb630: 3b20 7468 656e 0a20 2020 2020 2020 2069  ; then.        i
│ │ │ +001bb640: 6620 6d6f 756e 7470 6f69 6e74 202d 7120  f mountpoint -q 
│ │ │ +001bb650: 222f 7661 722f 6c6f 6722 3b20 7468 656e  "/var/log"; then
│ │ │ +001bb660: 0a20 2020 2020 2020 2020 2020 206d 6f75  .            mou
│ │ │ +001bb670: 6e74 202d 6f20 7265 6d6f 756e 7420 2d2d  nt -o remount --
│ │ │ +001bb680: 7461 7267 6574 2022 2f76 6172 2f6c 6f67  target "/var/log
│ │ │ +001bb690: 220a 2020 2020 2020 2020 6669 0a20 2020  ".        fi.   
│ │ │ +001bb6a0: 2066 690a 7d0a 0a70 6572 666f 726d 5f72   fi.}..perform_r
│ │ │ +001bb6b0: 656d 6564 6961 7469 6f6e 0a0a 656c 7365  emediation..else
│ │ │ +001bb6c0: 0a20 2020 2026 6774 3b26 616d 703b 3220  .    >&2 
│ │ │ +001bb6d0: 6563 686f 2027 5265 6d65 6469 6174 696f  echo 'Remediatio
│ │ │ +001bb6e0: 6e20 6973 206e 6f74 2061 7070 6c69 6361  n is not applica
│ │ │ +001bb6f0: 626c 652c 206e 6f74 6869 6e67 2077 6173  ble, nothing was
│ │ │ +001bb700: 2064 6f6e 6527 0a66 690a 3c2f 636f 6465   done'.fi.
Remedi │ │ │ +001bb7c0: 6174 696f 6e20 416e 6163 6f6e 6461 2073 ation Anaconda s │ │ │ +001bb7d0: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ +001bb860: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +001bb870: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ +001bb890: 3c2f 7468 3e3c 7464 3e68 6967 683c 2f74 high
R │ │ │ +001bb8b0: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +001bb8c0: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ +001bb8e0: 2f74 683e 3c74 643e 656e 6162 6c65 3c2f /th>enable
│ │ │ +001bb900: 3c70 7265 3e3c 636f 6465 3e0a 7061 7274
.part
│ │ │ +001bb910: 202f 7661 722f 6c6f 6720 2d2d 6d6f 756e   /var/log --moun
│ │ │ +001bb920: 746f 7074 696f 6e73 3d22 6e6f 7375 6964  toptions="nosuid
│ │ │ +001bb930: 220a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  ".
< │ │ │ 001bb940: 2f64 6976 3e3c 2f64 6976 3e3c 2f74 643e /div>
│ │ │ 001bb950: 3c2f 7472 3e3c 2f74 626f 6479 3e3c 2f74 < │ │ │ 001bb970: 7472 2064 6174 612d 7474 2d69 643d 2278 tr data-tt-id="x │ │ │ 001bb980: 6363 6466 5f6f 7267 2e73 7367 7072 6f6a ccdf_org.ssgproj │ │ │ 001bb990: 6563 742e 636f 6e74 656e 745f 7275 6c65 ect.content_rule │ │ │ 001bb9a0: 5f6d 6f75 6e74 5f6f 7074 696f 6e5f 7661 _mount_option_va │ │ │ @@ -113741,610 +113741,610 @@ │ │ │ 001bc4c0: 612d 7461 7267 6574 3d22 2369 6434 3834 a-target="#id484 │ │ │ 001bc4d0: 2220 7461 6269 6e64 6578 3d22 3022 2072 " tabindex="0" r │ │ │ 001bc4e0: 6f6c 653d 2262 7574 746f 6e22 2061 7269 ole="button" ari │ │ │ 001bc4f0: 612d 6578 7061 6e64 6564 3d22 6661 6c73 a-expanded="fals │ │ │ 001bc500: 6522 2074 6974 6c65 3d22 4163 7469 7661 e" title="Activa │ │ │ 001bc510: 7465 2074 6f20 7265 7665 616c 2220 6872 te to reveal" hr │ │ │ 001bc520: 6566 3d22 2321 223e 5265 6d65 6469 6174 ef="#!">Remediat │ │ │ -001bc530: 696f 6e20 416e 6163 6f6e 6461 2073 6e69 ion Anaconda sni │ │ │ -001bc540: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -001bc550: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -001bc580: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ -001bc5f0: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption: │ │ │ -001bc610: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ -001bc640: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Comple │ │ │ -001bc5d0: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ -001bc5e0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
high
Reb │ │ │ -001bc620: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -001bc630: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:enable

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

Remed │ │ │ -001bc750: 6961 7469 6f6e 2041 6e73 6962 6c65 2073 iation Ansible s │ │ │ -001bc760: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
- 
│ │ │ -001bc8a0: 6e61 6d65 3a20 4761 7468 6572 2074 6865  name: Gather the
│ │ │ -001bc8b0: 2070 6163 6b61 6765 2066 6163 7473 0a20   package facts. 
│ │ │ -001bc8c0: 2070 6163 6b61 6765 5f66 6163 7473 3a0a   package_facts:.
│ │ │ -001bc8d0: 2020 2020 6d61 6e61 6765 723a 2061 7574      manager: aut
│ │ │ -001bc8e0: 6f0a 2020 7461 6773 3a0a 2020 2d20 4e49  o.  tags:.  - NI
│ │ │ -001bc8f0: 5354 2d38 3030 2d35 332d 4143 2d36 0a20  ST-800-53-AC-6. 
│ │ │ -001bc900: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ -001bc910: 432d 3628 3129 0a20 202d 204e 4953 542d  C-6(1).  - NIST-
│ │ │ -001bc920: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ -001bc930: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -001bc940: 4d2d 3728 6129 0a20 202d 204e 4953 542d  M-7(a).  - NIST-
│ │ │ -001bc950: 3830 302d 3533 2d43 4d2d 3728 6229 0a20  800-53-CM-7(b). 
│ │ │ -001bc960: 202d 204e 4953 542d 3830 302d 3533 2d4d   - NIST-800-53-M
│ │ │ -001bc970: 502d 370a 2020 2d20 636f 6e66 6967 7572  P-7.  - configur
│ │ │ -001bc980: 655f 7374 7261 7465 6779 0a20 202d 2068  e_strategy.  - h
│ │ │ -001bc990: 6967 685f 6469 7372 7570 7469 6f6e 0a20  igh_disruption. 
│ │ │ -001bc9a0: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ -001bc9b0: 790a 2020 2d20 6d65 6469 756d 5f73 6576  y.  - medium_sev
│ │ │ -001bc9c0: 6572 6974 790a 2020 2d20 6d6f 756e 745f  erity.  - mount_
│ │ │ -001bc9d0: 6f70 7469 6f6e 5f76 6172 5f6e 6f64 6576  option_var_nodev
│ │ │ -001bc9e0: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ -001bc9f0: 6565 6465 640a 0a2d 206e 616d 653a 2027  eeded..- name: '
│ │ │ -001bca00: 4164 6420 6e6f 6465 7620 4f70 7469 6f6e  Add nodev Option
│ │ │ -001bca10: 2074 6f20 2f76 6172 3a20 4368 6563 6b20   to /var: Check 
│ │ │ -001bca20: 696e 666f 726d 6174 696f 6e20 6173 736f  information asso
│ │ │ -001bca30: 6369 6174 6564 2074 6f20 6d6f 756e 7470  ciated to mountp
│ │ │ -001bca40: 6f69 6e74 270a 2020 616e 7369 626c 652e  oint'.  ansible.
│ │ │ -001bca50: 6275 696c 7469 6e2e 636f 6d6d 616e 643a  builtin.command:
│ │ │ -001bca60: 2066 696e 646d 6e74 202d 2d66 7374 6162   findmnt --fstab
│ │ │ -001bca70: 2027 2f76 6172 270a 2020 7265 6769 7374   '/var'.  regist
│ │ │ -001bca80: 6572 3a20 6465 7669 6365 5f6e 616d 650a  er: device_name.
│ │ │ -001bca90: 2020 6661 696c 6564 5f77 6865 6e3a 2064    failed_when: d
│ │ │ -001bcaa0: 6576 6963 655f 6e61 6d65 2e72 6320 2667  evice_name.rc &g
│ │ │ -001bcab0: 743b 2031 0a20 2063 6861 6e67 6564 5f77  t; 1.  changed_w
│ │ │ -001bcac0: 6865 6e3a 2066 616c 7365 0a20 2063 6865  hen: false.  che
│ │ │ -001bcad0: 636b 5f6d 6f64 653a 2066 616c 7365 0a20  ck_mode: false. 
│ │ │ -001bcae0: 2077 6865 6e3a 0a20 202d 2028 206e 6f74   when:.  - ( not
│ │ │ -001bcaf0: 2028 2022 6b65 726e 656c 2220 696e 2061   ( "kernel" in a
│ │ │ -001bcb00: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001bcb10: 6b61 6765 7320 616e 6420 2262 6f6f 7463  kages and "bootc
│ │ │ -001bcb20: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001bcb30: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ -001bcb40: 616e 6420 6e6f 7420 226f 7065 6e73 6869  and not "openshi
│ │ │ -001bcb50: 6674 2d6b 7562 656c 6574 2220 696e 2061  ft-kubelet" in a
│ │ │ -001bcb60: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001bcb70: 6b61 6765 7320 616e 6420 226f 7374 7265  kages and "ostre
│ │ │ -001bcb80: 6522 2069 6e20 616e 7369 626c 655f 7072  e" in ansible_pr
│ │ │ -001bcb90: 6f63 5f63 6d64 6c69 6e65 0a20 2020 2029  oc_cmdline.    )
│ │ │ -001bcba0: 2061 6e64 206e 6f74 2028 2061 6e73 6962   and not ( ansib
│ │ │ -001bcbb0: 6c65 5f76 6972 7475 616c 697a 6174 696f  le_virtualizatio
│ │ │ -001bcbc0: 6e5f 7479 7065 2069 6e20 5b22 646f 636b  n_type in ["dock
│ │ │ -001bcbd0: 6572 222c 2022 6c78 6322 2c20 226f 7065  er", "lxc", "ope
│ │ │ -001bcbe0: 6e76 7a22 2c20 2270 6f64 6d61 6e22 2c0a  nvz", "podman",.
│ │ │ -001bcbf0: 2020 2020 2263 6f6e 7461 696e 6572 225d      "container"]
│ │ │ -001bcc00: 2029 2029 0a20 202d 2027 222f 7661 7222   ) ).  - '"/var"
│ │ │ -001bcc10: 2069 6e20 616e 7369 626c 655f 6d6f 756e   in ansible_moun
│ │ │ -001bcc20: 7473 207c 206d 6170 2861 7474 7269 6275  ts | map(attribu
│ │ │ -001bcc30: 7465 3d22 6d6f 756e 7422 2920 7c20 6c69  te="mount") | li
│ │ │ -001bcc40: 7374 270a 2020 7461 6773 3a0a 2020 2d20  st'.  tags:.  - 
│ │ │ -001bcc50: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ -001bcc60: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001bcc70: 2d41 432d 3628 3129 0a20 202d 204e 4953  -AC-6(1).  - NIS
│ │ │ -001bcc80: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ -001bcc90: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001bcca0: 2d43 4d2d 3728 6129 0a20 202d 204e 4953  -CM-7(a).  - NIS
│ │ │ -001bccb0: 542d 3830 302d 3533 2d43 4d2d 3728 6229  T-800-53-CM-7(b)
│ │ │ -001bccc0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001bccd0: 2d4d 502d 370a 2020 2d20 636f 6e66 6967  -MP-7.  - config
│ │ │ -001bcce0: 7572 655f 7374 7261 7465 6779 0a20 202d  ure_strategy.  -
│ │ │ -001bccf0: 2068 6967 685f 6469 7372 7570 7469 6f6e   high_disruption
│ │ │ -001bcd00: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ -001bcd10: 6974 790a 2020 2d20 6d65 6469 756d 5f73  ity.  - medium_s
│ │ │ -001bcd20: 6576 6572 6974 790a 2020 2d20 6d6f 756e  everity.  - moun
│ │ │ -001bcd30: 745f 6f70 7469 6f6e 5f76 6172 5f6e 6f64  t_option_var_nod
│ │ │ -001bcd40: 6576 0a20 202d 206e 6f5f 7265 626f 6f74  ev.  - no_reboot
│ │ │ -001bcd50: 5f6e 6565 6465 640a 0a2d 206e 616d 653a  _needed..- name:
│ │ │ -001bcd60: 2027 4164 6420 6e6f 6465 7620 4f70 7469   'Add nodev Opti
│ │ │ -001bcd70: 6f6e 2074 6f20 2f76 6172 3a20 4372 6561  on to /var: Crea
│ │ │ -001bcd80: 7465 206d 6f75 6e74 5f69 6e66 6f20 6469  te mount_info di
│ │ │ -001bcd90: 6374 696f 6e61 7279 2076 6172 6961 626c  ctionary variabl
│ │ │ -001bcda0: 6527 0a20 2073 6574 5f66 6163 743a 0a20  e'.  set_fact:. 
│ │ │ -001bcdb0: 2020 206d 6f75 6e74 5f69 6e66 6f3a 2027     mount_info: '
│ │ │ -001bcdc0: 7b7b 206d 6f75 6e74 5f69 6e66 6f7c 6465  {{ mount_info|de
│ │ │ -001bcdd0: 6661 756c 7428 7b7d 297c 636f 6d62 696e  fault({})|combin
│ │ │ -001bcde0: 6528 7b69 7465 6d2e 303a 2069 7465 6d2e  e({item.0: item.
│ │ │ -001bcdf0: 317d 2920 7d7d 270a 2020 7769 7468 5f74  1}) }}'.  with_t
│ │ │ -001bce00: 6f67 6574 6865 723a 0a20 202d 2027 7b7b  ogether:.  - '{{
│ │ │ -001bce10: 2064 6576 6963 655f 6e61 6d65 2e73 7464   device_name.std
│ │ │ -001bce20: 6f75 745f 6c69 6e65 735b 305d 2e73 706c  out_lines[0].spl
│ │ │ -001bce30: 6974 2829 207c 206d 6170 2827 276c 6f77  it() | map(''low
│ │ │ -001bce40: 6572 2727 2920 7c20 6c69 7374 207d 7d27  er'') | list }}'
│ │ │ -001bce50: 0a20 202d 2027 7b7b 2064 6576 6963 655f  .  - '{{ device_
│ │ │ -001bce60: 6e61 6d65 2e73 7464 6f75 745f 6c69 6e65  name.stdout_line
│ │ │ -001bce70: 735b 315d 2e73 706c 6974 2829 207c 206c  s[1].split() | l
│ │ │ -001bce80: 6973 7420 7d7d 270a 2020 7768 656e 3a0a  ist }}'.  when:.
│ │ │ -001bce90: 2020 2d20 2820 6e6f 7420 2820 226b 6572    - ( not ( "ker
│ │ │ -001bcea0: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ -001bceb0: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ -001bcec0: 6e64 2022 626f 6f74 6322 2069 6e20 616e  nd "bootc" in an
│ │ │ -001bced0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001bcee0: 6167 6573 0a20 2020 2061 6e64 206e 6f74  ages.    and not
│ │ │ -001bcef0: 2022 6f70 656e 7368 6966 742d 6b75 6265   "openshift-kube
│ │ │ -001bcf00: 6c65 7422 2069 6e20 616e 7369 626c 655f  let" in ansible_
│ │ │ -001bcf10: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ -001bcf20: 6e64 2022 6f73 7472 6565 2220 696e 2061  nd "ostree" in a
│ │ │ -001bcf30: 6e73 6962 6c65 5f70 726f 635f 636d 646c  nsible_proc_cmdl
│ │ │ -001bcf40: 696e 650a 2020 2020 2920 616e 6420 6e6f  ine.    ) and no
│ │ │ -001bcf50: 7420 2820 616e 7369 626c 655f 7669 7274  t ( ansible_virt
│ │ │ -001bcf60: 7561 6c69 7a61 7469 6f6e 5f74 7970 6520  ualization_type 
│ │ │ -001bcf70: 696e 205b 2264 6f63 6b65 7222 2c20 226c  in ["docker", "l
│ │ │ -001bcf80: 7863 222c 2022 6f70 656e 767a 222c 2022  xc", "openvz", "
│ │ │ -001bcf90: 706f 646d 616e 222c 0a20 2020 2022 636f  podman",.    "co
│ │ │ -001bcfa0: 6e74 6169 6e65 7222 5d20 2920 290a 2020  ntainer"] ) ).  
│ │ │ -001bcfb0: 2d20 2722 2f76 6172 2220 696e 2061 6e73  - '"/var" in ans
│ │ │ -001bcfc0: 6962 6c65 5f6d 6f75 6e74 7320 7c20 6d61  ible_mounts | ma
│ │ │ -001bcfd0: 7028 6174 7472 6962 7574 653d 226d 6f75  p(attribute="mou
│ │ │ -001bcfe0: 6e74 2229 207c 206c 6973 7427 0a20 202d  nt") | list'.  -
│ │ │ -001bcff0: 2064 6576 6963 655f 6e61 6d65 2e73 7464   device_name.std
│ │ │ -001bd000: 6f75 7420 6973 2064 6566 696e 6564 2061  out is defined a
│ │ │ -001bd010: 6e64 2064 6576 6963 655f 6e61 6d65 2e73  nd device_name.s
│ │ │ -001bd020: 7464 6f75 745f 6c69 6e65 7320 6973 2064  tdout_lines is d
│ │ │ -001bd030: 6566 696e 6564 0a20 202d 2028 6465 7669  efined.  - (devi
│ │ │ -001bd040: 6365 5f6e 616d 652e 7374 646f 7574 207c  ce_name.stdout |
│ │ │ -001bd050: 206c 656e 6774 6820 2667 743b 2030 290a   length > 0).
│ │ │ -001bd060: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ -001bd070: 2d38 3030 2d35 332d 4143 2d36 0a20 202d  -800-53-AC-6.  -
│ │ │ -001bd080: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ -001bd090: 3628 3129 0a20 202d 204e 4953 542d 3830  6(1).  - NIST-80
│ │ │ -001bd0a0: 302d 3533 2d43 4d2d 3628 6129 0a20 202d  0-53-CM-6(a).  -
│ │ │ -001bd0b0: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -001bd0c0: 3728 6129 0a20 202d 204e 4953 542d 3830  7(a).  - NIST-80
│ │ │ -001bd0d0: 302d 3533 2d43 4d2d 3728 6229 0a20 202d  0-53-CM-7(b).  -
│ │ │ -001bd0e0: 204e 4953 542d 3830 302d 3533 2d4d 502d   NIST-800-53-MP-
│ │ │ -001bd0f0: 370a 2020 2d20 636f 6e66 6967 7572 655f  7.  - configure_
│ │ │ -001bd100: 7374 7261 7465 6779 0a20 202d 2068 6967  strategy.  - hig
│ │ │ -001bd110: 685f 6469 7372 7570 7469 6f6e 0a20 202d  h_disruption.  -
│ │ │ -001bd120: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ -001bd130: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ -001bd140: 6974 790a 2020 2d20 6d6f 756e 745f 6f70  ity.  - mount_op
│ │ │ -001bd150: 7469 6f6e 5f76 6172 5f6e 6f64 6576 0a20  tion_var_nodev. 
│ │ │ -001bd160: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ -001bd170: 6465 640a 0a2d 206e 616d 653a 2027 4164  ded..- name: 'Ad
│ │ │ -001bd180: 6420 6e6f 6465 7620 4f70 7469 6f6e 2074  d nodev Option t
│ │ │ -001bd190: 6f20 2f76 6172 3a20 4966 202f 7661 7220  o /var: If /var 
│ │ │ -001bd1a0: 6e6f 7420 6d6f 756e 7465 642c 2063 7261  not mounted, cra
│ │ │ -001bd1b0: 6674 206d 6f75 6e74 5f69 6e66 6f20 6d61  ft mount_info ma
│ │ │ -001bd1c0: 6e75 616c 6c79 270a 2020 7365 745f 6661  nually'.  set_fa
│ │ │ -001bd1d0: 6374 3a0a 2020 2020 6d6f 756e 745f 696e  ct:.    mount_in
│ │ │ -001bd1e0: 666f 3a20 277b 7b20 6d6f 756e 745f 696e  fo: '{{ mount_in
│ │ │ -001bd1f0: 666f 7c64 6566 6175 6c74 287b 7d29 7c63  fo|default({})|c
│ │ │ -001bd200: 6f6d 6269 6e65 287b 6974 656d 2e30 3a20  ombine({item.0: 
│ │ │ -001bd210: 6974 656d 2e31 7d29 207d 7d27 0a20 2077  item.1}) }}'.  w
│ │ │ -001bd220: 6974 685f 746f 6765 7468 6572 3a0a 2020  ith_together:.  
│ │ │ -001bd230: 2d20 2d20 7461 7267 6574 0a20 2020 202d  - - target.    -
│ │ │ -001bd240: 2073 6f75 7263 650a 2020 2020 2d20 6673   source.    - fs
│ │ │ -001bd250: 7479 7065 0a20 2020 202d 206f 7074 696f  type.    - optio
│ │ │ -001bd260: 6e73 0a20 202d 202d 202f 7661 720a 2020  ns.  - - /var.  
│ │ │ -001bd270: 2020 2d20 2727 0a20 2020 202d 2027 270a    - ''.    - ''.
│ │ │ -001bd280: 2020 2020 2d20 6465 6661 756c 7473 0a20      - defaults. 
│ │ │ -001bd290: 2077 6865 6e3a 0a20 202d 2028 206e 6f74   when:.  - ( not
│ │ │ -001bd2a0: 2028 2022 6b65 726e 656c 2220 696e 2061   ( "kernel" in a
│ │ │ -001bd2b0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001bd2c0: 6b61 6765 7320 616e 6420 2262 6f6f 7463  kages and "bootc
│ │ │ -001bd2d0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001bd2e0: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ -001bd2f0: 616e 6420 6e6f 7420 226f 7065 6e73 6869  and not "openshi
│ │ │ -001bd300: 6674 2d6b 7562 656c 6574 2220 696e 2061  ft-kubelet" in a
│ │ │ -001bd310: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001bd320: 6b61 6765 7320 616e 6420 226f 7374 7265  kages and "ostre
│ │ │ -001bd330: 6522 2069 6e20 616e 7369 626c 655f 7072  e" in ansible_pr
│ │ │ -001bd340: 6f63 5f63 6d64 6c69 6e65 0a20 2020 2029  oc_cmdline.    )
│ │ │ -001bd350: 2061 6e64 206e 6f74 2028 2061 6e73 6962   and not ( ansib
│ │ │ -001bd360: 6c65 5f76 6972 7475 616c 697a 6174 696f  le_virtualizatio
│ │ │ -001bd370: 6e5f 7479 7065 2069 6e20 5b22 646f 636b  n_type in ["dock
│ │ │ -001bd380: 6572 222c 2022 6c78 6322 2c20 226f 7065  er", "lxc", "ope
│ │ │ -001bd390: 6e76 7a22 2c20 2270 6f64 6d61 6e22 2c0a  nvz", "podman",.
│ │ │ -001bd3a0: 2020 2020 2263 6f6e 7461 696e 6572 225d      "container"]
│ │ │ -001bd3b0: 2029 2029 0a20 202d 2027 222f 7661 7222   ) ).  - '"/var"
│ │ │ -001bd3c0: 2069 6e20 616e 7369 626c 655f 6d6f 756e   in ansible_moun
│ │ │ -001bd3d0: 7473 207c 206d 6170 2861 7474 7269 6275  ts | map(attribu
│ │ │ -001bd3e0: 7465 3d22 6d6f 756e 7422 2920 7c20 6c69  te="mount") | li
│ │ │ -001bd3f0: 7374 270a 2020 2d20 2822 2d2d 6673 7461  st'.  - ("--fsta
│ │ │ -001bd400: 6222 207c 206c 656e 6774 6820 3d3d 2030  b" | length == 0
│ │ │ -001bd410: 290a 2020 2d20 6465 7669 6365 5f6e 616d  ).  - device_nam
│ │ │ -001bd420: 652e 7374 646f 7574 2069 7320 6465 6669  e.stdout is defi
│ │ │ -001bd430: 6e65 6420 616e 6420 6465 7669 6365 5f6e  ned and device_n
│ │ │ -001bd440: 616d 652e 7374 646f 7574 5f6c 696e 6573  ame.stdout_lines
│ │ │ -001bd450: 2069 7320 6465 6669 6e65 640a 2020 2d20   is defined.  - 
│ │ │ -001bd460: 2864 6576 6963 655f 6e61 6d65 2e73 7464  (device_name.std
│ │ │ -001bd470: 6f75 7420 7c20 6c65 6e67 7468 203d 3d20  out | length == 
│ │ │ -001bd480: 3029 0a20 2074 6167 733a 0a20 202d 204e  0).  tags:.  - N
│ │ │ -001bd490: 4953 542d 3830 302d 3533 2d41 432d 360a  IST-800-53-AC-6.
│ │ │ -001bd4a0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001bd4b0: 4143 2d36 2831 290a 2020 2d20 4e49 5354  AC-6(1).  - NIST
│ │ │ -001bd4c0: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ -001bd4d0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001bd4e0: 434d 2d37 2861 290a 2020 2d20 4e49 5354  CM-7(a).  - NIST
│ │ │ -001bd4f0: 2d38 3030 2d35 332d 434d 2d37 2862 290a  -800-53-CM-7(b).
│ │ │ -001bd500: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001bd510: 4d50 2d37 0a20 202d 2063 6f6e 6669 6775  MP-7.  - configu
│ │ │ -001bd520: 7265 5f73 7472 6174 6567 790a 2020 2d20  re_strategy.  - 
│ │ │ -001bd530: 6869 6768 5f64 6973 7275 7074 696f 6e0a  high_disruption.
│ │ │ -001bd540: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ -001bd550: 7479 0a20 202d 206d 6564 6975 6d5f 7365  ty.  - medium_se
│ │ │ -001bd560: 7665 7269 7479 0a20 202d 206d 6f75 6e74  verity.  - mount
│ │ │ -001bd570: 5f6f 7074 696f 6e5f 7661 725f 6e6f 6465  _option_var_node
│ │ │ -001bd580: 760a 2020 2d20 6e6f 5f72 6562 6f6f 745f  v.  - no_reboot_
│ │ │ -001bd590: 6e65 6564 6564 0a0a 2d20 6e61 6d65 3a20  needed..- name: 
│ │ │ -001bd5a0: 2741 6464 206e 6f64 6576 204f 7074 696f  'Add nodev Optio
│ │ │ -001bd5b0: 6e20 746f 202f 7661 723a 204d 616b 6520  n to /var: Make 
│ │ │ -001bd5c0: 7375 7265 206e 6f64 6576 206f 7074 696f  sure nodev optio
│ │ │ -001bd5d0: 6e20 6973 2070 6172 7420 6f66 2074 6865  n is part of the
│ │ │ -001bd5e0: 2074 6f20 2f76 6172 206f 7074 696f 6e73   to /var options
│ │ │ -001bd5f0: 270a 2020 7365 745f 6661 6374 3a0a 2020  '.  set_fact:.  
│ │ │ -001bd600: 2020 6d6f 756e 745f 696e 666f 3a20 277b    mount_info: '{
│ │ │ -001bd610: 7b20 6d6f 756e 745f 696e 666f 207c 2063  { mount_info | c
│ │ │ -001bd620: 6f6d 6269 6e65 2820 7b27 276f 7074 696f  ombine( {''optio
│ │ │ -001bd630: 6e73 2727 3a27 2727 277e 286d 6f75 6e74  ns'':''''~(mount
│ │ │ -001bd640: 5f69 6e66 6f2e 6f70 7469 6f6e 7320 7c0a  _info.options |.
│ │ │ -001bd650: 2020 2020 2020 6465 6661 756c 7428 2727        default(''
│ │ │ -001bd660: 2727 2929 7e28 2727 2c27 2720 6966 2028  ''))~('','' if (
│ │ │ -001bd670: 6d6f 756e 745f 696e 666f 2e6f 7074 696f  mount_info.optio
│ │ │ -001bd680: 6e73 207c 2064 6566 6175 6c74 2827 2727  ns | default('''
│ │ │ -001bd690: 2729 2920 656c 7365 2027 2727 2729 7e27  ')) else '''')~'
│ │ │ -001bd6a0: 276e 6f64 6576 2727 0a20 2020 2020 207d  'nodev''.      }
│ │ │ -001bd6b0: 2920 7d7d 270a 2020 7768 656e 3a0a 2020  ) }}'.  when:.  
│ │ │ -001bd6c0: 2d20 2820 6e6f 7420 2820 226b 6572 6e65  - ( not ( "kerne
│ │ │ -001bd6d0: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ -001bd6e0: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ -001bd6f0: 2022 626f 6f74 6322 2069 6e20 616e 7369   "bootc" in ansi
│ │ │ -001bd700: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001bd710: 6573 0a20 2020 2061 6e64 206e 6f74 2022  es.    and not "
│ │ │ -001bd720: 6f70 656e 7368 6966 742d 6b75 6265 6c65  openshift-kubele
│ │ │ -001bd730: 7422 2069 6e20 616e 7369 626c 655f 6661  t" in ansible_fa
│ │ │ -001bd740: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ -001bd750: 2022 6f73 7472 6565 2220 696e 2061 6e73   "ostree" in ans
│ │ │ -001bd760: 6962 6c65 5f70 726f 635f 636d 646c 696e  ible_proc_cmdlin
│ │ │ -001bd770: 650a 2020 2020 2920 616e 6420 6e6f 7420  e.    ) and not 
│ │ │ -001bd780: 2820 616e 7369 626c 655f 7669 7274 7561  ( ansible_virtua
│ │ │ -001bd790: 6c69 7a61 7469 6f6e 5f74 7970 6520 696e  lization_type in
│ │ │ -001bd7a0: 205b 2264 6f63 6b65 7222 2c20 226c 7863   ["docker", "lxc
│ │ │ -001bd7b0: 222c 2022 6f70 656e 767a 222c 2022 706f  ", "openvz", "po
│ │ │ -001bd7c0: 646d 616e 222c 0a20 2020 2022 636f 6e74  dman",.    "cont
│ │ │ -001bd7d0: 6169 6e65 7222 5d20 2920 290a 2020 2d20  ainer"] ) ).  - 
│ │ │ -001bd7e0: 2722 2f76 6172 2220 696e 2061 6e73 6962  '"/var" in ansib
│ │ │ -001bd7f0: 6c65 5f6d 6f75 6e74 7320 7c20 6d61 7028  le_mounts | map(
│ │ │ -001bd800: 6174 7472 6962 7574 653d 226d 6f75 6e74  attribute="mount
│ │ │ -001bd810: 2229 207c 206c 6973 7427 0a20 202d 206d  ") | list'.  - m
│ │ │ -001bd820: 6f75 6e74 5f69 6e66 6f20 6973 2064 6566  ount_info is def
│ │ │ -001bd830: 696e 6564 2061 6e64 2022 6e6f 6465 7622  ined and "nodev"
│ │ │ -001bd840: 206e 6f74 2069 6e20 286d 6f75 6e74 5f69   not in (mount_i
│ │ │ -001bd850: 6e66 6f2e 6f70 7469 6f6e 7320 7c20 6465  nfo.options | de
│ │ │ -001bd860: 6661 756c 7428 2727 2929 0a20 2074 6167  fault('')).  tag
│ │ │ -001bd870: 733a 0a20 202d 204e 4953 542d 3830 302d  s:.  - NIST-800-
│ │ │ -001bd880: 3533 2d41 432d 360a 2020 2d20 4e49 5354  53-AC-6.  - NIST
│ │ │ -001bd890: 2d38 3030 2d35 332d 4143 2d36 2831 290a  -800-53-AC-6(1).
│ │ │ -001bd8a0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001bd8b0: 434d 2d36 2861 290a 2020 2d20 4e49 5354  CM-6(a).  - NIST
│ │ │ -001bd8c0: 2d38 3030 2d35 332d 434d 2d37 2861 290a  -800-53-CM-7(a).
│ │ │ -001bd8d0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001bd8e0: 434d 2d37 2862 290a 2020 2d20 4e49 5354  CM-7(b).  - NIST
│ │ │ -001bd8f0: 2d38 3030 2d35 332d 4d50 2d37 0a20 202d  -800-53-MP-7.  -
│ │ │ -001bd900: 2063 6f6e 6669 6775 7265 5f73 7472 6174   configure_strat
│ │ │ -001bd910: 6567 790a 2020 2d20 6869 6768 5f64 6973  egy.  - high_dis
│ │ │ -001bd920: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f  ruption.  - low_
│ │ │ -001bd930: 636f 6d70 6c65 7869 7479 0a20 202d 206d  complexity.  - m
│ │ │ -001bd940: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ -001bd950: 202d 206d 6f75 6e74 5f6f 7074 696f 6e5f   - mount_option_
│ │ │ -001bd960: 7661 725f 6e6f 6465 760a 2020 2d20 6e6f  var_nodev.  - no
│ │ │ -001bd970: 5f72 6562 6f6f 745f 6e65 6564 6564 0a0a  _reboot_needed..
│ │ │ -001bd980: 2d20 6e61 6d65 3a20 2741 6464 206e 6f64  - name: 'Add nod
│ │ │ -001bd990: 6576 204f 7074 696f 6e20 746f 202f 7661  ev Option to /va
│ │ │ -001bd9a0: 723a 2045 6e73 7572 6520 2f76 6172 2069  r: Ensure /var i
│ │ │ -001bd9b0: 7320 6d6f 756e 7465 6420 7769 7468 206e  s mounted with n
│ │ │ -001bd9c0: 6f64 6576 206f 7074 696f 6e27 0a20 2061  odev option'.  a
│ │ │ -001bd9d0: 6e73 6962 6c65 2e70 6f73 6978 2e6d 6f75  nsible.posix.mou
│ │ │ -001bd9e0: 6e74 3a0a 2020 2020 7061 7468 3a20 2f76  nt:.    path: /v
│ │ │ -001bd9f0: 6172 0a20 2020 2073 7263 3a20 277b 7b20  ar.    src: '{{ 
│ │ │ -001bda00: 6d6f 756e 745f 696e 666f 2e73 6f75 7263  mount_info.sourc
│ │ │ -001bda10: 6520 7c20 6465 6661 756c 7428 2727 2727  e | default(''''
│ │ │ -001bda20: 2920 7d7d 270a 2020 2020 6f70 7473 3a20  ) }}'.    opts: 
│ │ │ -001bda30: 277b 7b20 6d6f 756e 745f 696e 666f 2e6f  '{{ mount_info.o
│ │ │ -001bda40: 7074 696f 6e73 207c 2064 6566 6175 6c74  ptions | default
│ │ │ -001bda50: 2827 2727 2729 207d 7d27 0a20 2020 2073  ('''') }}'.    s
│ │ │ -001bda60: 7461 7465 3a20 6d6f 756e 7465 640a 2020  tate: mounted.  
│ │ │ -001bda70: 2020 6673 7479 7065 3a20 277b 7b20 6d6f    fstype: '{{ mo
│ │ │ -001bda80: 756e 745f 696e 666f 2e66 7374 7970 6520  unt_info.fstype 
│ │ │ -001bda90: 7c20 6465 6661 756c 7428 2727 2727 2920  | default('''') 
│ │ │ -001bdaa0: 7d7d 270a 2020 7265 6769 7374 6572 3a20  }}'.  register: 
│ │ │ -001bdab0: 6d6f 756e 745f 7265 7375 6c74 0a20 2066  mount_result.  f
│ │ │ -001bdac0: 6169 6c65 645f 7768 656e 3a0a 2020 2d20  ailed_when:.  - 
│ │ │ -001bdad0: 6d6f 756e 745f 7265 7375 6c74 2069 7320  mount_result is 
│ │ │ -001bdae0: 6661 696c 6564 0a20 202d 2027 2727 7461  failed.  - '''ta
│ │ │ -001bdaf0: 7267 6574 2069 7320 6275 7379 2727 206e  rget is busy'' n
│ │ │ -001bdb00: 6f74 2069 6e20 286d 6f75 6e74 5f72 6573  ot in (mount_res
│ │ │ -001bdb10: 756c 742e 6d73 6720 7c20 6465 6661 756c  ult.msg | defaul
│ │ │ -001bdb20: 7428 2727 2727 2929 270a 2020 2d20 2727  t(''''))'.  - ''
│ │ │ -001bdb30: 2761 6c72 6561 6479 206d 6f75 6e74 6564  'already mounted
│ │ │ -001bdb40: 2727 206e 6f74 2069 6e20 286d 6f75 6e74  '' not in (mount
│ │ │ -001bdb50: 5f72 6573 756c 742e 6d73 6720 7c20 6465  _result.msg | de
│ │ │ -001bdb60: 6661 756c 7428 2727 2727 2929 270a 2020  fault(''''))'.  
│ │ │ -001bdb70: 7768 656e 3a0a 2020 2d20 2820 6e6f 7420  when:.  - ( not 
│ │ │ -001bdb80: 2820 226b 6572 6e65 6c22 2069 6e20 616e  ( "kernel" in an
│ │ │ -001bdb90: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001bdba0: 6167 6573 2061 6e64 2022 626f 6f74 6322  ages and "bootc"
│ │ │ -001bdbb0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001bdbc0: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ -001bdbd0: 6e64 206e 6f74 2022 6f70 656e 7368 6966  nd not "openshif
│ │ │ -001bdbe0: 742d 6b75 6265 6c65 7422 2069 6e20 616e  t-kubelet" in an
│ │ │ -001bdbf0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001bdc00: 6167 6573 2061 6e64 2022 6f73 7472 6565  ages and "ostree
│ │ │ -001bdc10: 2220 696e 2061 6e73 6962 6c65 5f70 726f  " in ansible_pro
│ │ │ -001bdc20: 635f 636d 646c 696e 650a 2020 2020 2920  c_cmdline.    ) 
│ │ │ -001bdc30: 616e 6420 6e6f 7420 2820 616e 7369 626c  and not ( ansibl
│ │ │ -001bdc40: 655f 7669 7274 7561 6c69 7a61 7469 6f6e  e_virtualization
│ │ │ -001bdc50: 5f74 7970 6520 696e 205b 2264 6f63 6b65  _type in ["docke
│ │ │ -001bdc60: 7222 2c20 226c 7863 222c 2022 6f70 656e  r", "lxc", "open
│ │ │ -001bdc70: 767a 222c 2022 706f 646d 616e 222c 0a20  vz", "podman",. 
│ │ │ -001bdc80: 2020 2022 636f 6e74 6169 6e65 7222 5d20     "container"] 
│ │ │ -001bdc90: 2920 290a 2020 2d20 2722 2f76 6172 2220  ) ).  - '"/var" 
│ │ │ -001bdca0: 696e 2061 6e73 6962 6c65 5f6d 6f75 6e74  in ansible_mount
│ │ │ -001bdcb0: 7320 7c20 6d61 7028 6174 7472 6962 7574  s | map(attribut
│ │ │ -001bdcc0: 653d 226d 6f75 6e74 2229 207c 206c 6973  e="mount") | lis
│ │ │ -001bdcd0: 7427 0a20 202d 206d 6f75 6e74 5f69 6e66  t'.  - mount_inf
│ │ │ -001bdce0: 6f20 6973 2064 6566 696e 6564 0a20 202d  o is defined.  -
│ │ │ -001bdcf0: 2028 6465 7669 6365 5f6e 616d 652e 7374   (device_name.st
│ │ │ -001bdd00: 646f 7574 2069 7320 6465 6669 6e65 6420  dout is defined 
│ │ │ -001bdd10: 616e 6420 2864 6576 6963 655f 6e61 6d65  and (device_name
│ │ │ -001bdd20: 2e73 7464 6f75 7420 7c20 6c65 6e67 7468  .stdout | length
│ │ │ -001bdd30: 2026 6774 3b20 3029 2920 6f72 2028 222d   > 0)) or ("-
│ │ │ -001bdd40: 2d66 7374 6162 220a 2020 2020 7c20 6c65  -fstab".    | le
│ │ │ -001bdd50: 6e67 7468 203d 3d20 3029 0a20 2074 6167  ngth == 0).  tag
│ │ │ -001bdd60: 733a 0a20 202d 204e 4953 542d 3830 302d  s:.  - NIST-800-
│ │ │ -001bdd70: 3533 2d41 432d 360a 2020 2d20 4e49 5354  53-AC-6.  - NIST
│ │ │ -001bdd80: 2d38 3030 2d35 332d 4143 2d36 2831 290a  -800-53-AC-6(1).
│ │ │ -001bdd90: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001bdda0: 434d 2d36 2861 290a 2020 2d20 4e49 5354  CM-6(a).  - NIST
│ │ │ -001bddb0: 2d38 3030 2d35 332d 434d 2d37 2861 290a  -800-53-CM-7(a).
│ │ │ -001bddc0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001bddd0: 434d 2d37 2862 290a 2020 2d20 4e49 5354  CM-7(b).  - NIST
│ │ │ -001bdde0: 2d38 3030 2d35 332d 4d50 2d37 0a20 202d  -800-53-MP-7.  -
│ │ │ -001bddf0: 2063 6f6e 6669 6775 7265 5f73 7472 6174   configure_strat
│ │ │ -001bde00: 6567 790a 2020 2d20 6869 6768 5f64 6973  egy.  - high_dis
│ │ │ -001bde10: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f  ruption.  - low_
│ │ │ -001bde20: 636f 6d70 6c65 7869 7479 0a20 202d 206d  complexity.  - m
│ │ │ -001bde30: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ -001bde40: 202d 206d 6f75 6e74 5f6f 7074 696f 6e5f   - mount_option_
│ │ │ -001bde50: 7661 725f 6e6f 6465 760a 2020 2d20 6e6f  var_nodev.  - no
│ │ │ -001bde60: 5f72 6562 6f6f 745f 6e65 6564 6564 0a3c  _reboot_needed.<
│ │ │ -001bde70: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ -001bdf20: 656d 6564 6961 7469 6f6e 2053 6865 6c6c emediation Shell │ │ │ -001bdf30: 2073 6372 6970 7420 e287 b23c 2f61 3e3c script ...< │ │ │ -001bdf40: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Comp │ │ │ -001bc7f0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -001bc800: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -001bc820: 3c2f 7468 3e3c 7464 3e68 6967 683c 2f74 high
R │ │ │ -001bc840: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -001bc850: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -001bc870: 2f74 683e 3c74 643e 636f 6e66 6967 7572 /th>configur │ │ │ -001bc880: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
#
│ │ │ -001bdff0: 2052 656d 6564 6961 7469 6f6e 2069 7320   Remediation is 
│ │ │ -001be000: 6170 706c 6963 6162 6c65 206f 6e6c 7920  applicable only 
│ │ │ -001be010: 696e 2063 6572 7461 696e 2070 6c61 7466  in certain platf
│ │ │ -001be020: 6f72 6d73 0a69 6620 2820 2120 2820 7b20  orms.if ( ! ( { 
│ │ │ -001be030: 7270 6d20 2d2d 7175 6965 7420 2d71 206b  rpm --quiet -q k
│ │ │ -001be040: 6572 6e65 6c20 3b7d 2026 616d 703b 2661  ernel ;} &&a
│ │ │ -001be050: 6d70 3b20 7b20 7270 6d20 2d2d 7175 6965  mp; { rpm --quie
│ │ │ -001be060: 7420 2d71 2062 6f6f 7463 203b 7d20 2661  t -q bootc ;} &a
│ │ │ -001be070: 6d70 3b26 616d 703b 207b 2021 2072 706d  mp;& { ! rpm
│ │ │ -001be080: 202d 2d71 7569 6574 202d 7120 6f70 656e   --quiet -q open
│ │ │ -001be090: 7368 6966 742d 6b75 6265 6c65 7420 3b7d  shift-kubelet ;}
│ │ │ -001be0a0: 2026 616d 703b 2661 6d70 3b20 285b 202d   && ([ -
│ │ │ -001be0b0: 6620 2f72 756e 2f6f 7374 7265 652d 626f  f /run/ostree-bo
│ │ │ -001be0c0: 6f74 6564 205d 207c 7c20 5b20 2d4c 202f  oted ] || [ -L /
│ │ │ -001be0d0: 6f73 7472 6565 205d 2920 2920 2661 6d70  ostree ]) ) &
│ │ │ -001be0e0: 3b26 616d 703b 2021 2028 205b 202d 6620  ;& ! ( [ -f 
│ │ │ -001be0f0: 2f2e 646f 636b 6572 656e 7620 5d20 7c7c  /.dockerenv ] ||
│ │ │ -001be100: 205b 202d 6620 2f72 756e 2f2e 636f 6e74   [ -f /run/.cont
│ │ │ -001be110: 6169 6e65 7265 6e76 205d 2029 2029 2026  ainerenv ] ) ) &
│ │ │ -001be120: 616d 703b 2661 6d70 3b20 7b20 2820 6669  amp;& { ( fi
│ │ │ -001be130: 6e64 6d6e 7420 2d2d 6b65 726e 656c 2022  ndmnt --kernel "
│ │ │ -001be140: 2f76 6172 2220 2667 743b 202f 6465 762f  /var" > /dev/
│ │ │ -001be150: 6e75 6c6c 207c 7c20 6669 6e64 6d6e 7420  null || findmnt 
│ │ │ -001be160: 2d2d 6673 7461 6220 222f 7661 7222 2026  --fstab "/var" &
│ │ │ -001be170: 6774 3b20 2f64 6576 2f6e 756c 6c20 293b  gt; /dev/null );
│ │ │ -001be180: 207d 3b20 7468 656e 0a0a 6675 6e63 7469   }; then..functi
│ │ │ -001be190: 6f6e 2070 6572 666f 726d 5f72 656d 6564  on perform_remed
│ │ │ -001be1a0: 6961 7469 6f6e 207b 0a0a 2020 2020 0a20  iation {..    . 
│ │ │ -001be1b0: 2020 2020 2020 2023 2074 6865 206d 6f75         # the mou
│ │ │ -001be1c0: 6e74 2070 6f69 6e74 202f 7661 7220 6861  nt point /var ha
│ │ │ -001be1d0: 7320 746f 2062 6520 6465 6669 6e65 6420  s to be defined 
│ │ │ -001be1e0: 696e 202f 6574 632f 6673 7461 620a 2020  in /etc/fstab.  
│ │ │ -001be1f0: 2020 2020 2020 2320 6265 666f 7265 2074        # before t
│ │ │ -001be200: 6869 7320 7265 6d65 6469 6174 696f 6e20  his remediation 
│ │ │ -001be210: 6361 6e20 6265 2065 7865 6375 7465 642e  can be executed.
│ │ │ -001be220: 2049 6e20 6361 7365 2069 7420 6973 206e   In case it is n
│ │ │ -001be230: 6f74 2064 6566 696e 6564 2c20 7468 650a  ot defined, the.
│ │ │ -001be240: 2020 2020 2020 2020 2320 7265 6d65 6469          # remedi
│ │ │ -001be250: 6174 696f 6e20 6162 6f72 7473 2061 6e64  ation aborts and
│ │ │ -001be260: 206e 6f20 6368 616e 6765 7320 7265 6761   no changes rega
│ │ │ -001be270: 7264 696e 6720 7468 6520 6d6f 756e 7420  rding the mount 
│ │ │ -001be280: 706f 696e 7420 6172 6520 646f 6e65 2e0a  point are done..
│ │ │ -001be290: 2020 2020 2020 2020 6d6f 756e 745f 706f          mount_po
│ │ │ -001be2a0: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ -001be2b0: 3d22 2428 7072 696e 7466 2022 5e5b 5b3a  ="$(printf "^[[:
│ │ │ -001be2c0: 7370 6163 653a 5d5d 2a5b 5e23 5d2e 2a5b  space:]]*[^#].*[
│ │ │ -001be2d0: 5b3a 7370 6163 653a 5d5d 2573 5b5b 3a73  [:space:]]%s[[:s
│ │ │ -001be2e0: 7061 6365 3a5d 5d22 2022 2f76 6172 2229  pace:]]" "/var")
│ │ │ -001be2f0: 220a 0a20 2020 2067 7265 7020 2224 6d6f  "..    grep "$mo
│ │ │ -001be300: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ -001be310: 7265 6765 7870 2220 2d71 202f 6574 632f  regexp" -q /etc/
│ │ │ -001be320: 6673 7461 6220 5c0a 2020 2020 2020 2020  fstab \.        
│ │ │ -001be330: 7c7c 207b 2065 6368 6f20 2254 6865 206d  || { echo "The m
│ │ │ -001be340: 6f75 6e74 2070 6f69 6e74 2027 2f76 6172  ount point '/var
│ │ │ -001be350: 2720 6973 206e 6f74 2065 7665 6e20 696e  ' is not even in
│ │ │ -001be360: 202f 6574 632f 6673 7461 622c 2073 6f20   /etc/fstab, so 
│ │ │ -001be370: 7765 2063 616e 2774 2073 6574 2075 7020  we can't set up 
│ │ │ -001be380: 6d6f 756e 7420 6f70 7469 6f6e 7322 2026  mount options" &
│ │ │ -001be390: 6774 3b26 616d 703b 323b 0a20 2020 2020  gt;&2;.     
│ │ │ -001be3a0: 2020 2020 2020 2020 2020 2065 6368 6f20             echo 
│ │ │ -001be3b0: 224e 6f74 2072 656d 6564 6961 7469 6e67  "Not remediating
│ │ │ -001be3c0: 2c20 6265 6361 7573 6520 7468 6572 6520  , because there 
│ │ │ -001be3d0: 6973 206e 6f20 7265 636f 7264 206f 6620  is no record of 
│ │ │ -001be3e0: 2f76 6172 2069 6e20 2f65 7463 2f66 7374  /var in /etc/fst
│ │ │ -001be3f0: 6162 2220 2667 743b 2661 6d70 3b32 3b20  ab" >&2; 
│ │ │ -001be400: 7265 7475 726e 2031 3b20 7d0a 2020 2020  return 1; }.    
│ │ │ -001be410: 0a0a 0a20 2020 206d 6f75 6e74 5f70 6f69  ...    mount_poi
│ │ │ -001be420: 6e74 5f6d 6174 6368 5f72 6567 6578 703d  nt_match_regexp=
│ │ │ -001be430: 2224 2870 7269 6e74 6620 225e 5b5b 3a73  "$(printf "^[[:s
│ │ │ -001be440: 7061 6365 3a5d 5d2a 5b5e 235d 2e2a 5b5b  pace:]]*[^#].*[[
│ │ │ -001be450: 3a73 7061 6365 3a5d 5d25 735b 5b3a 7370  :space:]]%s[[:sp
│ │ │ -001be460: 6163 653a 5d5d 2220 2f76 6172 2922 0a0a  ace:]]" /var)"..
│ │ │ -001be470: 2020 2020 2320 4966 2074 6865 206d 6f75      # If the mou
│ │ │ -001be480: 6e74 2070 6f69 6e74 2069 7320 6e6f 7420  nt point is not 
│ │ │ -001be490: 696e 202f 6574 632f 6673 7461 622c 2067  in /etc/fstab, g
│ │ │ -001be4a0: 6574 2070 7265 7669 6f75 7320 6d6f 756e  et previous moun
│ │ │ -001be4b0: 7420 6f70 7469 6f6e 7320 6672 6f6d 202f  t options from /
│ │ │ -001be4c0: 6574 632f 6d74 6162 0a20 2020 2069 6620  etc/mtab.    if 
│ │ │ -001be4d0: 2120 6772 6570 202d 7120 2224 6d6f 756e  ! grep -q "$moun
│ │ │ -001be4e0: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ -001be4f0: 6765 7870 2220 2f65 7463 2f66 7374 6162  gexp" /etc/fstab
│ │ │ -001be500: 3b20 7468 656e 0a20 2020 2020 2020 2023  ; then.        #
│ │ │ -001be510: 2072 756e 7469 6d65 206f 7074 7320 7769   runtime opts wi
│ │ │ -001be520: 7468 6f75 7420 736f 6d65 2061 7574 6f6d  thout some autom
│ │ │ -001be530: 6174 6963 206b 6572 6e65 6c2f 7573 6572  atic kernel/user
│ │ │ -001be540: 7370 6163 652d 6164 6465 6420 6465 6661  space-added defa
│ │ │ -001be550: 756c 7473 0a20 2020 2020 2020 2070 7265  ults.        pre
│ │ │ -001be560: 7669 6f75 735f 6d6f 756e 745f 6f70 7473  vious_mount_opts
│ │ │ -001be570: 3d24 2867 7265 7020 2224 6d6f 756e 745f  =$(grep "$mount_
│ │ │ -001be580: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ -001be590: 7870 2220 2f65 7463 2f6d 7461 6220 7c20  xp" /etc/mtab | 
│ │ │ -001be5a0: 6865 6164 202d 3120 7c20 2061 776b 2027  head -1 |  awk '
│ │ │ -001be5b0: 7b70 7269 6e74 2024 347d 2720 5c0a 2020  {print $4}' \.  
│ │ │ -001be5c0: 2020 2020 2020 2020 2020 2020 2020 2020                  
│ │ │ -001be5d0: 2020 7c20 7365 6420 2d45 2022 732f 2872    | sed -E "s/(r
│ │ │ -001be5e0: 777c 6465 6661 756c 7473 7c73 6563 6c61  w|defaults|secla
│ │ │ -001be5f0: 6265 6c7c 6e6f 6465 7629 282c 7c24 292f  bel|nodev)(,|$)/
│ │ │ -001be600: 2f67 3b73 2f2c 242f 2f22 290a 2020 2020  /g;s/,$//").    
│ │ │ -001be610: 2020 2020 5b20 2224 7072 6576 696f 7573      [ "$previous
│ │ │ -001be620: 5f6d 6f75 6e74 5f6f 7074 7322 205d 2026  _mount_opts" ] &
│ │ │ -001be630: 616d 703b 2661 6d70 3b20 7072 6576 696f  amp;& previo
│ │ │ -001be640: 7573 5f6d 6f75 6e74 5f6f 7074 732b 3d22  us_mount_opts+="
│ │ │ -001be650: 2c22 0a20 2020 2020 2020 2023 2049 6e20  ,".        # In 
│ │ │ -001be660: 6973 6f39 3636 3020 6669 6c65 7379 7374  iso9660 filesyst
│ │ │ -001be670: 656d 7320 6d74 6162 2063 6f75 6c64 2064  ems mtab could d
│ │ │ -001be680: 6573 6372 6962 6520 6120 2262 6c6f 636b  escribe a "block
│ │ │ -001be690: 7369 7a65 2220 7661 6c75 652c 2074 6869  size" value, thi
│ │ │ -001be6a0: 7320 7368 6f75 6c64 2062 6520 7265 666c  s should be refl
│ │ │ -001be6b0: 6563 7465 6420 696e 0a20 2020 2020 2020  ected in.       
│ │ │ -001be6c0: 2023 2066 7374 6162 2061 7320 2262 6c6f   # fstab as "blo
│ │ │ -001be6d0: 636b 222e 2020 5468 6520 6e65 7874 2076  ck".  The next v
│ │ │ -001be6e0: 6172 6961 626c 6520 6973 2074 6f20 7361  ariable is to sa
│ │ │ -001be6f0: 7469 7366 7920 7368 656c 6c63 6865 636b  tisfy shellcheck
│ │ │ -001be700: 2053 4332 3035 302e 0a20 2020 2020 2020   SC2050..       
│ │ │ -001be710: 2066 735f 7479 7065 3d22 220a 2020 2020   fs_type="".    
│ │ │ -001be720: 2020 2020 6966 205b 2020 2224 6673 5f74      if [  "$fs_t
│ │ │ -001be730: 7970 6522 203d 3d20 2269 736f 3936 3630  ype" == "iso9660
│ │ │ -001be740: 2220 5d20 3b20 7468 656e 0a20 2020 2020  " ] ; then.     
│ │ │ -001be750: 2020 2020 2020 2070 7265 7669 6f75 735f         previous_
│ │ │ -001be760: 6d6f 756e 745f 6f70 7473 3d24 2873 6564  mount_opts=$(sed
│ │ │ -001be770: 2027 732f 626c 6f63 6b73 697a 653d 2f62   's/blocksize=/b
│ │ │ -001be780: 6c6f 636b 3d2f 2720 266c 743b 266c 743b  lock=/' <<
│ │ │ -001be790: 266c 743b 2022 2470 7265 7669 6f75 735f  < "$previous_
│ │ │ -001be7a0: 6d6f 756e 745f 6f70 7473 2229 0a20 2020  mount_opts").   
│ │ │ -001be7b0: 2020 2020 2066 690a 2020 2020 2020 2020       fi.        
│ │ │ -001be7c0: 6563 686f 2022 202f 7661 7220 2064 6566  echo " /var  def
│ │ │ -001be7d0: 6175 6c74 732c 247b 7072 6576 696f 7573  aults,${previous
│ │ │ -001be7e0: 5f6d 6f75 6e74 5f6f 7074 737d 6e6f 6465  _mount_opts}node
│ │ │ -001be7f0: 7620 3020 3022 2026 6774 3b26 6774 3b20  v 0 0" >> 
│ │ │ -001be800: 2f65 7463 2f66 7374 6162 0a20 2020 2023  /etc/fstab.    #
│ │ │ -001be810: 2049 6620 7468 6520 6d6f 756e 745f 6f70   If the mount_op
│ │ │ -001be820: 7420 6f70 7469 6f6e 2069 7320 6e6f 7420  t option is not 
│ │ │ -001be830: 616c 7265 6164 7920 696e 2074 6865 206d  already in the m
│ │ │ -001be840: 6f75 6e74 2070 6f69 6e74 2773 202f 6574  ount point's /et
│ │ │ -001be850: 632f 6673 7461 6220 656e 7472 792c 2061  c/fstab entry, a
│ │ │ -001be860: 6464 2069 740a 2020 2020 656c 6966 2021  dd it.    elif !
│ │ │ -001be870: 2067 7265 7020 2224 6d6f 756e 745f 706f   grep "$mount_po
│ │ │ -001be880: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ -001be890: 2220 2f65 7463 2f66 7374 6162 207c 2067  " /etc/fstab | g
│ │ │ -001be8a0: 7265 7020 2d71 2022 6e6f 6465 7622 3b20  rep -q "nodev"; 
│ │ │ -001be8b0: 7468 656e 0a20 2020 2020 2020 2070 7265  then.        pre
│ │ │ -001be8c0: 7669 6f75 735f 6d6f 756e 745f 6f70 7473  vious_mount_opts
│ │ │ -001be8d0: 3d24 2867 7265 7020 2224 6d6f 756e 745f  =$(grep "$mount_
│ │ │ -001be8e0: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ -001be8f0: 7870 2220 2f65 7463 2f66 7374 6162 207c  xp" /etc/fstab |
│ │ │ -001be900: 2061 776b 2027 7b70 7269 6e74 2024 347d   awk '{print $4}
│ │ │ -001be910: 2729 0a20 2020 2020 2020 2073 6564 202d  ').        sed -
│ │ │ -001be920: 6920 2273 7c5c 2824 7b6d 6f75 6e74 5f70  i "s|\(${mount_p
│ │ │ -001be930: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ -001be940: 707d 2e2a 247b 7072 6576 696f 7573 5f6d  p}.*${previous_m
│ │ │ -001be950: 6f75 6e74 5f6f 7074 737d 5c29 7c5c 312c  ount_opts}\)|\1,
│ │ │ -001be960: 6e6f 6465 767c 2220 2f65 7463 2f66 7374  nodev|" /etc/fst
│ │ │ -001be970: 6162 0a20 2020 2066 690a 0a0a 2020 2020  ab.    fi...    
│ │ │ -001be980: 6966 206d 6b64 6972 202d 7020 222f 7661  if mkdir -p "/va
│ │ │ -001be990: 7222 3b20 7468 656e 0a20 2020 2020 2020  r"; then.       
│ │ │ -001be9a0: 2069 6620 6d6f 756e 7470 6f69 6e74 202d   if mountpoint -
│ │ │ -001be9b0: 7120 222f 7661 7222 3b20 7468 656e 0a20  q "/var"; then. 
│ │ │ -001be9c0: 2020 2020 2020 2020 2020 206d 6f75 6e74             mount
│ │ │ -001be9d0: 202d 6f20 7265 6d6f 756e 7420 2d2d 7461   -o remount --ta
│ │ │ -001be9e0: 7267 6574 2022 2f76 6172 220a 2020 2020  rget "/var".    
│ │ │ -001be9f0: 2020 2020 6669 0a20 2020 2066 690a 7d0a      fi.    fi.}.
│ │ │ -001bea00: 0a70 6572 666f 726d 5f72 656d 6564 6961  .perform_remedia
│ │ │ -001bea10: 7469 6f6e 0a0a 656c 7365 0a20 2020 2026  tion..else.    &
│ │ │ -001bea20: 6774 3b26 616d 703b 3220 6563 686f 2027  gt;&2 echo '
│ │ │ -001bea30: 5265 6d65 6469 6174 696f 6e20 6973 206e  Remediation is n
│ │ │ -001bea40: 6f74 2061 7070 6c69 6361 626c 652c 206e  ot applicable, n
│ │ │ -001bea50: 6f74 6869 6e67 2077 6173 2064 6f6e 6527  othing was done'
│ │ │ -001bea60: 0a66 690a 3c2f 636f 6465 3e3c 2f70 7265  .fi.

< │ │ │ +001bc550: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +001bc560: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +001bc570: 7365 2220 6964 3d22 6964 3438 3422 3e3c se" id="id484">< │ │ │ +001bc580: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +001bc590: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +001bc5a0: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +001bc5b0: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +001bc5c0: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >
Disruption:< │ │ │ +001bc610: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ +001bc640: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
Reb │ │ │ -001bdfc0: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -001bdfd0: 7365 3c2f 7464 3e3c 2f74 723e 3c2f 7461 se
Complex │ │ │ +001bc5d0: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ +001bc5e0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
high
Rebo │ │ │ +001bc620: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +001bc630: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
configure
│ │ │ +001bc670: 3c70 7265 3e3c 636f 6465 3e2d 206e 616d
- nam
│ │ │ +001bc680: 653a 2047 6174 6865 7220 7468 6520 7061  e: Gather the pa
│ │ │ +001bc690: 636b 6167 6520 6661 6374 730a 2020 7061  ckage facts.  pa
│ │ │ +001bc6a0: 636b 6167 655f 6661 6374 733a 0a20 2020  ckage_facts:.   
│ │ │ +001bc6b0: 206d 616e 6167 6572 3a20 6175 746f 0a20   manager: auto. 
│ │ │ +001bc6c0: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ +001bc6d0: 3830 302d 3533 2d41 432d 360a 2020 2d20  800-53-AC-6.  - 
│ │ │ +001bc6e0: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ +001bc6f0: 2831 290a 2020 2d20 4e49 5354 2d38 3030  (1).  - NIST-800
│ │ │ +001bc700: 2d35 332d 434d 2d36 2861 290a 2020 2d20  -53-CM-6(a).  - 
│ │ │ +001bc710: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ +001bc720: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ +001bc730: 2d35 332d 434d 2d37 2862 290a 2020 2d20  -53-CM-7(b).  - 
│ │ │ +001bc740: 4e49 5354 2d38 3030 2d35 332d 4d50 2d37  NIST-800-53-MP-7
│ │ │ +001bc750: 0a20 202d 2063 6f6e 6669 6775 7265 5f73  .  - configure_s
│ │ │ +001bc760: 7472 6174 6567 790a 2020 2d20 6869 6768  trategy.  - high
│ │ │ +001bc770: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +001bc780: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ +001bc790: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ +001bc7a0: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074  ty.  - mount_opt
│ │ │ +001bc7b0: 696f 6e5f 7661 725f 6e6f 6465 760a 2020  ion_var_nodev.  
│ │ │ +001bc7c0: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ +001bc7d0: 6564 0a0a 2d20 6e61 6d65 3a20 2741 6464  ed..- name: 'Add
│ │ │ +001bc7e0: 206e 6f64 6576 204f 7074 696f 6e20 746f   nodev Option to
│ │ │ +001bc7f0: 202f 7661 723a 2043 6865 636b 2069 6e66   /var: Check inf
│ │ │ +001bc800: 6f72 6d61 7469 6f6e 2061 7373 6f63 6961  ormation associa
│ │ │ +001bc810: 7465 6420 746f 206d 6f75 6e74 706f 696e  ted to mountpoin
│ │ │ +001bc820: 7427 0a20 2061 6e73 6962 6c65 2e62 7569  t'.  ansible.bui
│ │ │ +001bc830: 6c74 696e 2e63 6f6d 6d61 6e64 3a20 6669  ltin.command: fi
│ │ │ +001bc840: 6e64 6d6e 7420 2d2d 6673 7461 6220 272f  ndmnt --fstab '/
│ │ │ +001bc850: 7661 7227 0a20 2072 6567 6973 7465 723a  var'.  register:
│ │ │ +001bc860: 2064 6576 6963 655f 6e61 6d65 0a20 2066   device_name.  f
│ │ │ +001bc870: 6169 6c65 645f 7768 656e 3a20 6465 7669  ailed_when: devi
│ │ │ +001bc880: 6365 5f6e 616d 652e 7263 2026 6774 3b20  ce_name.rc > 
│ │ │ +001bc890: 310a 2020 6368 616e 6765 645f 7768 656e  1.  changed_when
│ │ │ +001bc8a0: 3a20 6661 6c73 650a 2020 6368 6563 6b5f  : false.  check_
│ │ │ +001bc8b0: 6d6f 6465 3a20 6661 6c73 650a 2020 7768  mode: false.  wh
│ │ │ +001bc8c0: 656e 3a0a 2020 2d20 2820 6e6f 7420 2820  en:.  - ( not ( 
│ │ │ +001bc8d0: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ +001bc8e0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001bc8f0: 6573 2061 6e64 2022 626f 6f74 6322 2069  es and "bootc" i
│ │ │ +001bc900: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001bc910: 7061 636b 6167 6573 0a20 2020 2061 6e64  packages.    and
│ │ │ +001bc920: 206e 6f74 2022 6f70 656e 7368 6966 742d   not "openshift-
│ │ │ +001bc930: 6b75 6265 6c65 7422 2069 6e20 616e 7369  kubelet" in ansi
│ │ │ +001bc940: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001bc950: 6573 2061 6e64 2022 6f73 7472 6565 2220  es and "ostree" 
│ │ │ +001bc960: 696e 2061 6e73 6962 6c65 5f70 726f 635f  in ansible_proc_
│ │ │ +001bc970: 636d 646c 696e 650a 2020 2020 2920 616e  cmdline.    ) an
│ │ │ +001bc980: 6420 6e6f 7420 2820 616e 7369 626c 655f  d not ( ansible_
│ │ │ +001bc990: 7669 7274 7561 6c69 7a61 7469 6f6e 5f74  virtualization_t
│ │ │ +001bc9a0: 7970 6520 696e 205b 2264 6f63 6b65 7222  ype in ["docker"
│ │ │ +001bc9b0: 2c20 226c 7863 222c 2022 6f70 656e 767a  , "lxc", "openvz
│ │ │ +001bc9c0: 222c 2022 706f 646d 616e 222c 0a20 2020  ", "podman",.   
│ │ │ +001bc9d0: 2022 636f 6e74 6169 6e65 7222 5d20 2920   "container"] ) 
│ │ │ +001bc9e0: 290a 2020 2d20 2722 2f76 6172 2220 696e  ).  - '"/var" in
│ │ │ +001bc9f0: 2061 6e73 6962 6c65 5f6d 6f75 6e74 7320   ansible_mounts 
│ │ │ +001bca00: 7c20 6d61 7028 6174 7472 6962 7574 653d  | map(attribute=
│ │ │ +001bca10: 226d 6f75 6e74 2229 207c 206c 6973 7427  "mount") | list'
│ │ │ +001bca20: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ +001bca30: 542d 3830 302d 3533 2d41 432d 360a 2020  T-800-53-AC-6.  
│ │ │ +001bca40: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ +001bca50: 2d36 2831 290a 2020 2d20 4e49 5354 2d38  -6(1).  - NIST-8
│ │ │ +001bca60: 3030 2d35 332d 434d 2d36 2861 290a 2020  00-53-CM-6(a).  
│ │ │ +001bca70: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +001bca80: 2d37 2861 290a 2020 2d20 4e49 5354 2d38  -7(a).  - NIST-8
│ │ │ +001bca90: 3030 2d35 332d 434d 2d37 2862 290a 2020  00-53-CM-7(b).  
│ │ │ +001bcaa0: 2d20 4e49 5354 2d38 3030 2d35 332d 4d50  - NIST-800-53-MP
│ │ │ +001bcab0: 2d37 0a20 202d 2063 6f6e 6669 6775 7265  -7.  - configure
│ │ │ +001bcac0: 5f73 7472 6174 6567 790a 2020 2d20 6869  _strategy.  - hi
│ │ │ +001bcad0: 6768 5f64 6973 7275 7074 696f 6e0a 2020  gh_disruption.  
│ │ │ +001bcae0: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ +001bcaf0: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ +001bcb00: 7269 7479 0a20 202d 206d 6f75 6e74 5f6f  rity.  - mount_o
│ │ │ +001bcb10: 7074 696f 6e5f 7661 725f 6e6f 6465 760a  ption_var_nodev.
│ │ │ +001bcb20: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ +001bcb30: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741  eded..- name: 'A
│ │ │ +001bcb40: 6464 206e 6f64 6576 204f 7074 696f 6e20  dd nodev Option 
│ │ │ +001bcb50: 746f 202f 7661 723a 2043 7265 6174 6520  to /var: Create 
│ │ │ +001bcb60: 6d6f 756e 745f 696e 666f 2064 6963 7469  mount_info dicti
│ │ │ +001bcb70: 6f6e 6172 7920 7661 7269 6162 6c65 270a  onary variable'.
│ │ │ +001bcb80: 2020 7365 745f 6661 6374 3a0a 2020 2020    set_fact:.    
│ │ │ +001bcb90: 6d6f 756e 745f 696e 666f 3a20 277b 7b20  mount_info: '{{ 
│ │ │ +001bcba0: 6d6f 756e 745f 696e 666f 7c64 6566 6175  mount_info|defau
│ │ │ +001bcbb0: 6c74 287b 7d29 7c63 6f6d 6269 6e65 287b  lt({})|combine({
│ │ │ +001bcbc0: 6974 656d 2e30 3a20 6974 656d 2e31 7d29  item.0: item.1})
│ │ │ +001bcbd0: 207d 7d27 0a20 2077 6974 685f 746f 6765   }}'.  with_toge
│ │ │ +001bcbe0: 7468 6572 3a0a 2020 2d20 277b 7b20 6465  ther:.  - '{{ de
│ │ │ +001bcbf0: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ +001bcc00: 5f6c 696e 6573 5b30 5d2e 7370 6c69 7428  _lines[0].split(
│ │ │ +001bcc10: 2920 7c20 6d61 7028 2727 6c6f 7765 7227  ) | map(''lower'
│ │ │ +001bcc20: 2729 207c 206c 6973 7420 7d7d 270a 2020  ') | list }}'.  
│ │ │ +001bcc30: 2d20 277b 7b20 6465 7669 6365 5f6e 616d  - '{{ device_nam
│ │ │ +001bcc40: 652e 7374 646f 7574 5f6c 696e 6573 5b31  e.stdout_lines[1
│ │ │ +001bcc50: 5d2e 7370 6c69 7428 2920 7c20 6c69 7374  ].split() | list
│ │ │ +001bcc60: 207d 7d27 0a20 2077 6865 6e3a 0a20 202d   }}'.  when:.  -
│ │ │ +001bcc70: 2028 206e 6f74 2028 2022 6b65 726e 656c   ( not ( "kernel
│ │ │ +001bcc80: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +001bcc90: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ +001bcca0: 2262 6f6f 7463 2220 696e 2061 6e73 6962  "bootc" in ansib
│ │ │ +001bccb0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001bccc0: 730a 2020 2020 616e 6420 6e6f 7420 226f  s.    and not "o
│ │ │ +001bccd0: 7065 6e73 6869 6674 2d6b 7562 656c 6574  penshift-kubelet
│ │ │ +001bcce0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +001bccf0: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ +001bcd00: 226f 7374 7265 6522 2069 6e20 616e 7369  "ostree" in ansi
│ │ │ +001bcd10: 626c 655f 7072 6f63 5f63 6d64 6c69 6e65  ble_proc_cmdline
│ │ │ +001bcd20: 0a20 2020 2029 2061 6e64 206e 6f74 2028  .    ) and not (
│ │ │ +001bcd30: 2061 6e73 6962 6c65 5f76 6972 7475 616c   ansible_virtual
│ │ │ +001bcd40: 697a 6174 696f 6e5f 7479 7065 2069 6e20  ization_type in 
│ │ │ +001bcd50: 5b22 646f 636b 6572 222c 2022 6c78 6322  ["docker", "lxc"
│ │ │ +001bcd60: 2c20 226f 7065 6e76 7a22 2c20 2270 6f64  , "openvz", "pod
│ │ │ +001bcd70: 6d61 6e22 2c0a 2020 2020 2263 6f6e 7461  man",.    "conta
│ │ │ +001bcd80: 696e 6572 225d 2029 2029 0a20 202d 2027  iner"] ) ).  - '
│ │ │ +001bcd90: 222f 7661 7222 2069 6e20 616e 7369 626c  "/var" in ansibl
│ │ │ +001bcda0: 655f 6d6f 756e 7473 207c 206d 6170 2861  e_mounts | map(a
│ │ │ +001bcdb0: 7474 7269 6275 7465 3d22 6d6f 756e 7422  ttribute="mount"
│ │ │ +001bcdc0: 2920 7c20 6c69 7374 270a 2020 2d20 6465  ) | list'.  - de
│ │ │ +001bcdd0: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ +001bcde0: 2069 7320 6465 6669 6e65 6420 616e 6420   is defined and 
│ │ │ +001bcdf0: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ +001bce00: 7574 5f6c 696e 6573 2069 7320 6465 6669  ut_lines is defi
│ │ │ +001bce10: 6e65 640a 2020 2d20 2864 6576 6963 655f  ned.  - (device_
│ │ │ +001bce20: 6e61 6d65 2e73 7464 6f75 7420 7c20 6c65  name.stdout | le
│ │ │ +001bce30: 6e67 7468 2026 6774 3b20 3029 0a20 2074  ngth > 0).  t
│ │ │ +001bce40: 6167 733a 0a20 202d 204e 4953 542d 3830  ags:.  - NIST-80
│ │ │ +001bce50: 302d 3533 2d41 432d 360a 2020 2d20 4e49  0-53-AC-6.  - NI
│ │ │ +001bce60: 5354 2d38 3030 2d35 332d 4143 2d36 2831  ST-800-53-AC-6(1
│ │ │ +001bce70: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001bce80: 332d 434d 2d36 2861 290a 2020 2d20 4e49  3-CM-6(a).  - NI
│ │ │ +001bce90: 5354 2d38 3030 2d35 332d 434d 2d37 2861  ST-800-53-CM-7(a
│ │ │ +001bcea0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001bceb0: 332d 434d 2d37 2862 290a 2020 2d20 4e49  3-CM-7(b).  - NI
│ │ │ +001bcec0: 5354 2d38 3030 2d35 332d 4d50 2d37 0a20  ST-800-53-MP-7. 
│ │ │ +001bced0: 202d 2063 6f6e 6669 6775 7265 5f73 7472   - configure_str
│ │ │ +001bcee0: 6174 6567 790a 2020 2d20 6869 6768 5f64  ategy.  - high_d
│ │ │ +001bcef0: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ +001bcf00: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ +001bcf10: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ +001bcf20: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f  .  - mount_optio
│ │ │ +001bcf30: 6e5f 7661 725f 6e6f 6465 760a 2020 2d20  n_var_nodev.  - 
│ │ │ +001bcf40: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ +001bcf50: 0a0a 2d20 6e61 6d65 3a20 2741 6464 206e  ..- name: 'Add n
│ │ │ +001bcf60: 6f64 6576 204f 7074 696f 6e20 746f 202f  odev Option to /
│ │ │ +001bcf70: 7661 723a 2049 6620 2f76 6172 206e 6f74  var: If /var not
│ │ │ +001bcf80: 206d 6f75 6e74 6564 2c20 6372 6166 7420   mounted, craft 
│ │ │ +001bcf90: 6d6f 756e 745f 696e 666f 206d 616e 7561  mount_info manua
│ │ │ +001bcfa0: 6c6c 7927 0a20 2073 6574 5f66 6163 743a  lly'.  set_fact:
│ │ │ +001bcfb0: 0a20 2020 206d 6f75 6e74 5f69 6e66 6f3a  .    mount_info:
│ │ │ +001bcfc0: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f7c   '{{ mount_info|
│ │ │ +001bcfd0: 6465 6661 756c 7428 7b7d 297c 636f 6d62  default({})|comb
│ │ │ +001bcfe0: 696e 6528 7b69 7465 6d2e 303a 2069 7465  ine({item.0: ite
│ │ │ +001bcff0: 6d2e 317d 2920 7d7d 270a 2020 7769 7468  m.1}) }}'.  with
│ │ │ +001bd000: 5f74 6f67 6574 6865 723a 0a20 202d 202d  _together:.  - -
│ │ │ +001bd010: 2074 6172 6765 740a 2020 2020 2d20 736f   target.    - so
│ │ │ +001bd020: 7572 6365 0a20 2020 202d 2066 7374 7970  urce.    - fstyp
│ │ │ +001bd030: 650a 2020 2020 2d20 6f70 7469 6f6e 730a  e.    - options.
│ │ │ +001bd040: 2020 2d20 2d20 2f76 6172 0a20 2020 202d    - - /var.    -
│ │ │ +001bd050: 2027 270a 2020 2020 2d20 2727 0a20 2020   ''.    - ''.   
│ │ │ +001bd060: 202d 2064 6566 6175 6c74 730a 2020 7768   - defaults.  wh
│ │ │ +001bd070: 656e 3a0a 2020 2d20 2820 6e6f 7420 2820  en:.  - ( not ( 
│ │ │ +001bd080: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ +001bd090: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001bd0a0: 6573 2061 6e64 2022 626f 6f74 6322 2069  es and "bootc" i
│ │ │ +001bd0b0: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001bd0c0: 7061 636b 6167 6573 0a20 2020 2061 6e64  packages.    and
│ │ │ +001bd0d0: 206e 6f74 2022 6f70 656e 7368 6966 742d   not "openshift-
│ │ │ +001bd0e0: 6b75 6265 6c65 7422 2069 6e20 616e 7369  kubelet" in ansi
│ │ │ +001bd0f0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001bd100: 6573 2061 6e64 2022 6f73 7472 6565 2220  es and "ostree" 
│ │ │ +001bd110: 696e 2061 6e73 6962 6c65 5f70 726f 635f  in ansible_proc_
│ │ │ +001bd120: 636d 646c 696e 650a 2020 2020 2920 616e  cmdline.    ) an
│ │ │ +001bd130: 6420 6e6f 7420 2820 616e 7369 626c 655f  d not ( ansible_
│ │ │ +001bd140: 7669 7274 7561 6c69 7a61 7469 6f6e 5f74  virtualization_t
│ │ │ +001bd150: 7970 6520 696e 205b 2264 6f63 6b65 7222  ype in ["docker"
│ │ │ +001bd160: 2c20 226c 7863 222c 2022 6f70 656e 767a  , "lxc", "openvz
│ │ │ +001bd170: 222c 2022 706f 646d 616e 222c 0a20 2020  ", "podman",.   
│ │ │ +001bd180: 2022 636f 6e74 6169 6e65 7222 5d20 2920   "container"] ) 
│ │ │ +001bd190: 290a 2020 2d20 2722 2f76 6172 2220 696e  ).  - '"/var" in
│ │ │ +001bd1a0: 2061 6e73 6962 6c65 5f6d 6f75 6e74 7320   ansible_mounts 
│ │ │ +001bd1b0: 7c20 6d61 7028 6174 7472 6962 7574 653d  | map(attribute=
│ │ │ +001bd1c0: 226d 6f75 6e74 2229 207c 206c 6973 7427  "mount") | list'
│ │ │ +001bd1d0: 0a20 202d 2028 222d 2d66 7374 6162 2220  .  - ("--fstab" 
│ │ │ +001bd1e0: 7c20 6c65 6e67 7468 203d 3d20 3029 0a20  | length == 0). 
│ │ │ +001bd1f0: 202d 2064 6576 6963 655f 6e61 6d65 2e73   - device_name.s
│ │ │ +001bd200: 7464 6f75 7420 6973 2064 6566 696e 6564  tdout is defined
│ │ │ +001bd210: 2061 6e64 2064 6576 6963 655f 6e61 6d65   and device_name
│ │ │ +001bd220: 2e73 7464 6f75 745f 6c69 6e65 7320 6973  .stdout_lines is
│ │ │ +001bd230: 2064 6566 696e 6564 0a20 202d 2028 6465   defined.  - (de
│ │ │ +001bd240: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ +001bd250: 207c 206c 656e 6774 6820 3d3d 2030 290a   | length == 0).
│ │ │ +001bd260: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ +001bd270: 2d38 3030 2d35 332d 4143 2d36 0a20 202d  -800-53-AC-6.  -
│ │ │ +001bd280: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ +001bd290: 3628 3129 0a20 202d 204e 4953 542d 3830  6(1).  - NIST-80
│ │ │ +001bd2a0: 302d 3533 2d43 4d2d 3628 6129 0a20 202d  0-53-CM-6(a).  -
│ │ │ +001bd2b0: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +001bd2c0: 3728 6129 0a20 202d 204e 4953 542d 3830  7(a).  - NIST-80
│ │ │ +001bd2d0: 302d 3533 2d43 4d2d 3728 6229 0a20 202d  0-53-CM-7(b).  -
│ │ │ +001bd2e0: 204e 4953 542d 3830 302d 3533 2d4d 502d   NIST-800-53-MP-
│ │ │ +001bd2f0: 370a 2020 2d20 636f 6e66 6967 7572 655f  7.  - configure_
│ │ │ +001bd300: 7374 7261 7465 6779 0a20 202d 2068 6967  strategy.  - hig
│ │ │ +001bd310: 685f 6469 7372 7570 7469 6f6e 0a20 202d  h_disruption.  -
│ │ │ +001bd320: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ +001bd330: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ +001bd340: 6974 790a 2020 2d20 6d6f 756e 745f 6f70  ity.  - mount_op
│ │ │ +001bd350: 7469 6f6e 5f76 6172 5f6e 6f64 6576 0a20  tion_var_nodev. 
│ │ │ +001bd360: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ +001bd370: 6465 640a 0a2d 206e 616d 653a 2027 4164  ded..- name: 'Ad
│ │ │ +001bd380: 6420 6e6f 6465 7620 4f70 7469 6f6e 2074  d nodev Option t
│ │ │ +001bd390: 6f20 2f76 6172 3a20 4d61 6b65 2073 7572  o /var: Make sur
│ │ │ +001bd3a0: 6520 6e6f 6465 7620 6f70 7469 6f6e 2069  e nodev option i
│ │ │ +001bd3b0: 7320 7061 7274 206f 6620 7468 6520 746f  s part of the to
│ │ │ +001bd3c0: 202f 7661 7220 6f70 7469 6f6e 7327 0a20   /var options'. 
│ │ │ +001bd3d0: 2073 6574 5f66 6163 743a 0a20 2020 206d   set_fact:.    m
│ │ │ +001bd3e0: 6f75 6e74 5f69 6e66 6f3a 2027 7b7b 206d  ount_info: '{{ m
│ │ │ +001bd3f0: 6f75 6e74 5f69 6e66 6f20 7c20 636f 6d62  ount_info | comb
│ │ │ +001bd400: 696e 6528 207b 2727 6f70 7469 6f6e 7327  ine( {''options'
│ │ │ +001bd410: 273a 2727 2727 7e28 6d6f 756e 745f 696e  ':''''~(mount_in
│ │ │ +001bd420: 666f 2e6f 7074 696f 6e73 207c 0a20 2020  fo.options |.   
│ │ │ +001bd430: 2020 2064 6566 6175 6c74 2827 2727 2729     default('''')
│ │ │ +001bd440: 297e 2827 272c 2727 2069 6620 286d 6f75  )~('','' if (mou
│ │ │ +001bd450: 6e74 5f69 6e66 6f2e 6f70 7469 6f6e 7320  nt_info.options 
│ │ │ +001bd460: 7c20 6465 6661 756c 7428 2727 2727 2929  | default(''''))
│ │ │ +001bd470: 2065 6c73 6520 2727 2727 297e 2727 6e6f   else '''')~''no
│ │ │ +001bd480: 6465 7627 270a 2020 2020 2020 7d29 207d  dev''.      }) }
│ │ │ +001bd490: 7d27 0a20 2077 6865 6e3a 0a20 202d 2028  }'.  when:.  - (
│ │ │ +001bd4a0: 206e 6f74 2028 2022 6b65 726e 656c 2220   not ( "kernel" 
│ │ │ +001bd4b0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001bd4c0: 2e70 6163 6b61 6765 7320 616e 6420 2262  .packages and "b
│ │ │ +001bd4d0: 6f6f 7463 2220 696e 2061 6e73 6962 6c65  ootc" in ansible
│ │ │ +001bd4e0: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ +001bd4f0: 2020 2020 616e 6420 6e6f 7420 226f 7065      and not "ope
│ │ │ +001bd500: 6e73 6869 6674 2d6b 7562 656c 6574 2220  nshift-kubelet" 
│ │ │ +001bd510: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001bd520: 2e70 6163 6b61 6765 7320 616e 6420 226f  .packages and "o
│ │ │ +001bd530: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ +001bd540: 655f 7072 6f63 5f63 6d64 6c69 6e65 0a20  e_proc_cmdline. 
│ │ │ +001bd550: 2020 2029 2061 6e64 206e 6f74 2028 2061     ) and not ( a
│ │ │ +001bd560: 6e73 6962 6c65 5f76 6972 7475 616c 697a  nsible_virtualiz
│ │ │ +001bd570: 6174 696f 6e5f 7479 7065 2069 6e20 5b22  ation_type in ["
│ │ │ +001bd580: 646f 636b 6572 222c 2022 6c78 6322 2c20  docker", "lxc", 
│ │ │ +001bd590: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61  "openvz", "podma
│ │ │ +001bd5a0: 6e22 2c0a 2020 2020 2263 6f6e 7461 696e  n",.    "contain
│ │ │ +001bd5b0: 6572 225d 2029 2029 0a20 202d 2027 222f  er"] ) ).  - '"/
│ │ │ +001bd5c0: 7661 7222 2069 6e20 616e 7369 626c 655f  var" in ansible_
│ │ │ +001bd5d0: 6d6f 756e 7473 207c 206d 6170 2861 7474  mounts | map(att
│ │ │ +001bd5e0: 7269 6275 7465 3d22 6d6f 756e 7422 2920  ribute="mount") 
│ │ │ +001bd5f0: 7c20 6c69 7374 270a 2020 2d20 6d6f 756e  | list'.  - moun
│ │ │ +001bd600: 745f 696e 666f 2069 7320 6465 6669 6e65  t_info is define
│ │ │ +001bd610: 6420 616e 6420 226e 6f64 6576 2220 6e6f  d and "nodev" no
│ │ │ +001bd620: 7420 696e 2028 6d6f 756e 745f 696e 666f  t in (mount_info
│ │ │ +001bd630: 2e6f 7074 696f 6e73 207c 2064 6566 6175  .options | defau
│ │ │ +001bd640: 6c74 2827 2729 290a 2020 7461 6773 3a0a  lt('')).  tags:.
│ │ │ +001bd650: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001bd660: 4143 2d36 0a20 202d 204e 4953 542d 3830  AC-6.  - NIST-80
│ │ │ +001bd670: 302d 3533 2d41 432d 3628 3129 0a20 202d  0-53-AC-6(1).  -
│ │ │ +001bd680: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +001bd690: 3628 6129 0a20 202d 204e 4953 542d 3830  6(a).  - NIST-80
│ │ │ +001bd6a0: 302d 3533 2d43 4d2d 3728 6129 0a20 202d  0-53-CM-7(a).  -
│ │ │ +001bd6b0: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +001bd6c0: 3728 6229 0a20 202d 204e 4953 542d 3830  7(b).  - NIST-80
│ │ │ +001bd6d0: 302d 3533 2d4d 502d 370a 2020 2d20 636f  0-53-MP-7.  - co
│ │ │ +001bd6e0: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ +001bd6f0: 0a20 202d 2068 6967 685f 6469 7372 7570  .  - high_disrup
│ │ │ +001bd700: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d  tion.  - low_com
│ │ │ +001bd710: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ +001bd720: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ +001bd730: 6d6f 756e 745f 6f70 7469 6f6e 5f76 6172  mount_option_var
│ │ │ +001bd740: 5f6e 6f64 6576 0a20 202d 206e 6f5f 7265  _nodev.  - no_re
│ │ │ +001bd750: 626f 6f74 5f6e 6565 6465 640a 0a2d 206e  boot_needed..- n
│ │ │ +001bd760: 616d 653a 2027 4164 6420 6e6f 6465 7620  ame: 'Add nodev 
│ │ │ +001bd770: 4f70 7469 6f6e 2074 6f20 2f76 6172 3a20  Option to /var: 
│ │ │ +001bd780: 456e 7375 7265 202f 7661 7220 6973 206d  Ensure /var is m
│ │ │ +001bd790: 6f75 6e74 6564 2077 6974 6820 6e6f 6465  ounted with node
│ │ │ +001bd7a0: 7620 6f70 7469 6f6e 270a 2020 616e 7369  v option'.  ansi
│ │ │ +001bd7b0: 626c 652e 706f 7369 782e 6d6f 756e 743a  ble.posix.mount:
│ │ │ +001bd7c0: 0a20 2020 2070 6174 683a 202f 7661 720a  .    path: /var.
│ │ │ +001bd7d0: 2020 2020 7372 633a 2027 7b7b 206d 6f75      src: '{{ mou
│ │ │ +001bd7e0: 6e74 5f69 6e66 6f2e 736f 7572 6365 207c  nt_info.source |
│ │ │ +001bd7f0: 2064 6566 6175 6c74 2827 2727 2729 207d   default('''') }
│ │ │ +001bd800: 7d27 0a20 2020 206f 7074 733a 2027 7b7b  }'.    opts: '{{
│ │ │ +001bd810: 206d 6f75 6e74 5f69 6e66 6f2e 6f70 7469   mount_info.opti
│ │ │ +001bd820: 6f6e 7320 7c20 6465 6661 756c 7428 2727  ons | default(''
│ │ │ +001bd830: 2727 2920 7d7d 270a 2020 2020 7374 6174  '') }}'.    stat
│ │ │ +001bd840: 653a 206d 6f75 6e74 6564 0a20 2020 2066  e: mounted.    f
│ │ │ +001bd850: 7374 7970 653a 2027 7b7b 206d 6f75 6e74  stype: '{{ mount
│ │ │ +001bd860: 5f69 6e66 6f2e 6673 7479 7065 207c 2064  _info.fstype | d
│ │ │ +001bd870: 6566 6175 6c74 2827 2727 2729 207d 7d27  efault('''') }}'
│ │ │ +001bd880: 0a20 2072 6567 6973 7465 723a 206d 6f75  .  register: mou
│ │ │ +001bd890: 6e74 5f72 6573 756c 740a 2020 6661 696c  nt_result.  fail
│ │ │ +001bd8a0: 6564 5f77 6865 6e3a 0a20 202d 206d 6f75  ed_when:.  - mou
│ │ │ +001bd8b0: 6e74 5f72 6573 756c 7420 6973 2066 6169  nt_result is fai
│ │ │ +001bd8c0: 6c65 640a 2020 2d20 2727 2774 6172 6765  led.  - '''targe
│ │ │ +001bd8d0: 7420 6973 2062 7573 7927 2720 6e6f 7420  t is busy'' not 
│ │ │ +001bd8e0: 696e 2028 6d6f 756e 745f 7265 7375 6c74  in (mount_result
│ │ │ +001bd8f0: 2e6d 7367 207c 2064 6566 6175 6c74 2827  .msg | default('
│ │ │ +001bd900: 2727 2729 2927 0a20 202d 2027 2727 616c  '''))'.  - '''al
│ │ │ +001bd910: 7265 6164 7920 6d6f 756e 7465 6427 2720  ready mounted'' 
│ │ │ +001bd920: 6e6f 7420 696e 2028 6d6f 756e 745f 7265  not in (mount_re
│ │ │ +001bd930: 7375 6c74 2e6d 7367 207c 2064 6566 6175  sult.msg | defau
│ │ │ +001bd940: 6c74 2827 2727 2729 2927 0a20 2077 6865  lt(''''))'.  whe
│ │ │ +001bd950: 6e3a 0a20 202d 2028 206e 6f74 2028 2022  n:.  - ( not ( "
│ │ │ +001bd960: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ +001bd970: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001bd980: 7320 616e 6420 2262 6f6f 7463 2220 696e  s and "bootc" in
│ │ │ +001bd990: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001bd9a0: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ +001bd9b0: 6e6f 7420 226f 7065 6e73 6869 6674 2d6b  not "openshift-k
│ │ │ +001bd9c0: 7562 656c 6574 2220 696e 2061 6e73 6962  ubelet" in ansib
│ │ │ +001bd9d0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001bd9e0: 7320 616e 6420 226f 7374 7265 6522 2069  s and "ostree" i
│ │ │ +001bd9f0: 6e20 616e 7369 626c 655f 7072 6f63 5f63  n ansible_proc_c
│ │ │ +001bda00: 6d64 6c69 6e65 0a20 2020 2029 2061 6e64  mdline.    ) and
│ │ │ +001bda10: 206e 6f74 2028 2061 6e73 6962 6c65 5f76   not ( ansible_v
│ │ │ +001bda20: 6972 7475 616c 697a 6174 696f 6e5f 7479  irtualization_ty
│ │ │ +001bda30: 7065 2069 6e20 5b22 646f 636b 6572 222c  pe in ["docker",
│ │ │ +001bda40: 2022 6c78 6322 2c20 226f 7065 6e76 7a22   "lxc", "openvz"
│ │ │ +001bda50: 2c20 2270 6f64 6d61 6e22 2c0a 2020 2020  , "podman",.    
│ │ │ +001bda60: 2263 6f6e 7461 696e 6572 225d 2029 2029  "container"] ) )
│ │ │ +001bda70: 0a20 202d 2027 222f 7661 7222 2069 6e20  .  - '"/var" in 
│ │ │ +001bda80: 616e 7369 626c 655f 6d6f 756e 7473 207c  ansible_mounts |
│ │ │ +001bda90: 206d 6170 2861 7474 7269 6275 7465 3d22   map(attribute="
│ │ │ +001bdaa0: 6d6f 756e 7422 2920 7c20 6c69 7374 270a  mount") | list'.
│ │ │ +001bdab0: 2020 2d20 6d6f 756e 745f 696e 666f 2069    - mount_info i
│ │ │ +001bdac0: 7320 6465 6669 6e65 640a 2020 2d20 2864  s defined.  - (d
│ │ │ +001bdad0: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ +001bdae0: 7420 6973 2064 6566 696e 6564 2061 6e64  t is defined and
│ │ │ +001bdaf0: 2028 6465 7669 6365 5f6e 616d 652e 7374   (device_name.st
│ │ │ +001bdb00: 646f 7574 207c 206c 656e 6774 6820 2667  dout | length &g
│ │ │ +001bdb10: 743b 2030 2929 206f 7220 2822 2d2d 6673  t; 0)) or ("--fs
│ │ │ +001bdb20: 7461 6222 0a20 2020 207c 206c 656e 6774  tab".    | lengt
│ │ │ +001bdb30: 6820 3d3d 2030 290a 2020 7461 6773 3a0a  h == 0).  tags:.
│ │ │ +001bdb40: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001bdb50: 4143 2d36 0a20 202d 204e 4953 542d 3830  AC-6.  - NIST-80
│ │ │ +001bdb60: 302d 3533 2d41 432d 3628 3129 0a20 202d  0-53-AC-6(1).  -
│ │ │ +001bdb70: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +001bdb80: 3628 6129 0a20 202d 204e 4953 542d 3830  6(a).  - NIST-80
│ │ │ +001bdb90: 302d 3533 2d43 4d2d 3728 6129 0a20 202d  0-53-CM-7(a).  -
│ │ │ +001bdba0: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +001bdbb0: 3728 6229 0a20 202d 204e 4953 542d 3830  7(b).  - NIST-80
│ │ │ +001bdbc0: 302d 3533 2d4d 502d 370a 2020 2d20 636f  0-53-MP-7.  - co
│ │ │ +001bdbd0: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ +001bdbe0: 0a20 202d 2068 6967 685f 6469 7372 7570  .  - high_disrup
│ │ │ +001bdbf0: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d  tion.  - low_com
│ │ │ +001bdc00: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ +001bdc10: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ +001bdc20: 6d6f 756e 745f 6f70 7469 6f6e 5f76 6172  mount_option_var
│ │ │ +001bdc30: 5f6e 6f64 6576 0a20 202d 206e 6f5f 7265  _nodev.  - no_re
│ │ │ +001bdc40: 626f 6f74 5f6e 6565 6465 640a 3c2f 636f  boot_needed.
< │ │ │ +001bdc60: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ +001bdc70: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ +001bdc80: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ +001bdc90: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ +001bdca0: 6434 3835 2220 7461 6269 6e64 6578 3d22 d485" tabindex=" │ │ │ +001bdcb0: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ +001bdcc0: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ +001bdcd0: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ +001bdce0: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ +001bdcf0: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ +001bdd00: 6469 6174 696f 6e20 5368 656c 6c20 7363 diation Shell sc │ │ │ +001bdd10: 7269 7074 20e2 87b2 3c2f 613e 3c62 723e ript ...
│ │ │ +001bdd20: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ +001bdd50: 3c74 6162 6c65 2063 6c61 7373 3d22 7461
Reboot │ │ │ +001bdda0: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +001bddb0: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
# Re
│ │ │ +001bddd0: 6d65 6469 6174 696f 6e20 6973 2061 7070  mediation is app
│ │ │ +001bdde0: 6c69 6361 626c 6520 6f6e 6c79 2069 6e20  licable only in 
│ │ │ +001bddf0: 6365 7274 6169 6e20 706c 6174 666f 726d  certain platform
│ │ │ +001bde00: 730a 6966 2028 2021 2028 207b 2072 706d  s.if ( ! ( { rpm
│ │ │ +001bde10: 202d 2d71 7569 6574 202d 7120 6b65 726e   --quiet -q kern
│ │ │ +001bde20: 656c 203b 7d20 2661 6d70 3b26 616d 703b  el ;} &&
│ │ │ +001bde30: 207b 2072 706d 202d 2d71 7569 6574 202d   { rpm --quiet -
│ │ │ +001bde40: 7120 626f 6f74 6320 3b7d 2026 616d 703b  q bootc ;} &
│ │ │ +001bde50: 2661 6d70 3b20 7b20 2120 7270 6d20 2d2d  & { ! rpm --
│ │ │ +001bde60: 7175 6965 7420 2d71 206f 7065 6e73 6869  quiet -q openshi
│ │ │ +001bde70: 6674 2d6b 7562 656c 6574 203b 7d20 2661  ft-kubelet ;} &a
│ │ │ +001bde80: 6d70 3b26 616d 703b 2028 5b20 2d66 202f  mp;& ([ -f /
│ │ │ +001bde90: 7275 6e2f 6f73 7472 6565 2d62 6f6f 7465  run/ostree-boote
│ │ │ +001bdea0: 6420 5d20 7c7c 205b 202d 4c20 2f6f 7374  d ] || [ -L /ost
│ │ │ +001bdeb0: 7265 6520 5d29 2029 2026 616d 703b 2661  ree ]) ) &&a
│ │ │ +001bdec0: 6d70 3b20 2120 2820 5b20 2d66 202f 2e64  mp; ! ( [ -f /.d
│ │ │ +001bded0: 6f63 6b65 7265 6e76 205d 207c 7c20 5b20  ockerenv ] || [ 
│ │ │ +001bdee0: 2d66 202f 7275 6e2f 2e63 6f6e 7461 696e  -f /run/.contain
│ │ │ +001bdef0: 6572 656e 7620 5d20 2920 2920 2661 6d70  erenv ] ) ) &
│ │ │ +001bdf00: 3b26 616d 703b 207b 2028 2066 696e 646d  ;& { ( findm
│ │ │ +001bdf10: 6e74 202d 2d6b 6572 6e65 6c20 222f 7661  nt --kernel "/va
│ │ │ +001bdf20: 7222 2026 6774 3b20 2f64 6576 2f6e 756c  r" > /dev/nul
│ │ │ +001bdf30: 6c20 7c7c 2066 696e 646d 6e74 202d 2d66  l || findmnt --f
│ │ │ +001bdf40: 7374 6162 2022 2f76 6172 2220 2667 743b  stab "/var" >
│ │ │ +001bdf50: 202f 6465 762f 6e75 6c6c 2029 3b20 7d3b   /dev/null ); };
│ │ │ +001bdf60: 2074 6865 6e0a 0a66 756e 6374 696f 6e20   then..function 
│ │ │ +001bdf70: 7065 7266 6f72 6d5f 7265 6d65 6469 6174  perform_remediat
│ │ │ +001bdf80: 696f 6e20 7b0a 0a20 2020 200a 2020 2020  ion {..    .    
│ │ │ +001bdf90: 2020 2020 2320 7468 6520 6d6f 756e 7420      # the mount 
│ │ │ +001bdfa0: 706f 696e 7420 2f76 6172 2068 6173 2074  point /var has t
│ │ │ +001bdfb0: 6f20 6265 2064 6566 696e 6564 2069 6e20  o be defined in 
│ │ │ +001bdfc0: 2f65 7463 2f66 7374 6162 0a20 2020 2020  /etc/fstab.     
│ │ │ +001bdfd0: 2020 2023 2062 6566 6f72 6520 7468 6973     # before this
│ │ │ +001bdfe0: 2072 656d 6564 6961 7469 6f6e 2063 616e   remediation can
│ │ │ +001bdff0: 2062 6520 6578 6563 7574 6564 2e20 496e   be executed. In
│ │ │ +001be000: 2063 6173 6520 6974 2069 7320 6e6f 7420   case it is not 
│ │ │ +001be010: 6465 6669 6e65 642c 2074 6865 0a20 2020  defined, the.   
│ │ │ +001be020: 2020 2020 2023 2072 656d 6564 6961 7469       # remediati
│ │ │ +001be030: 6f6e 2061 626f 7274 7320 616e 6420 6e6f  on aborts and no
│ │ │ +001be040: 2063 6861 6e67 6573 2072 6567 6172 6469   changes regardi
│ │ │ +001be050: 6e67 2074 6865 206d 6f75 6e74 2070 6f69  ng the mount poi
│ │ │ +001be060: 6e74 2061 7265 2064 6f6e 652e 0a20 2020  nt are done..   
│ │ │ +001be070: 2020 2020 206d 6f75 6e74 5f70 6f69 6e74       mount_point
│ │ │ +001be080: 5f6d 6174 6368 5f72 6567 6578 703d 2224  _match_regexp="$
│ │ │ +001be090: 2870 7269 6e74 6620 225e 5b5b 3a73 7061  (printf "^[[:spa
│ │ │ +001be0a0: 6365 3a5d 5d2a 5b5e 235d 2e2a 5b5b 3a73  ce:]]*[^#].*[[:s
│ │ │ +001be0b0: 7061 6365 3a5d 5d25 735b 5b3a 7370 6163  pace:]]%s[[:spac
│ │ │ +001be0c0: 653a 5d5d 2220 222f 7661 7222 2922 0a0a  e:]]" "/var")"..
│ │ │ +001be0d0: 2020 2020 6772 6570 2022 246d 6f75 6e74      grep "$mount
│ │ │ +001be0e0: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ +001be0f0: 6578 7022 202d 7120 2f65 7463 2f66 7374  exp" -q /etc/fst
│ │ │ +001be100: 6162 205c 0a20 2020 2020 2020 207c 7c20  ab \.        || 
│ │ │ +001be110: 7b20 6563 686f 2022 5468 6520 6d6f 756e  { echo "The moun
│ │ │ +001be120: 7420 706f 696e 7420 272f 7661 7227 2069  t point '/var' i
│ │ │ +001be130: 7320 6e6f 7420 6576 656e 2069 6e20 2f65  s not even in /e
│ │ │ +001be140: 7463 2f66 7374 6162 2c20 736f 2077 6520  tc/fstab, so we 
│ │ │ +001be150: 6361 6e27 7420 7365 7420 7570 206d 6f75  can't set up mou
│ │ │ +001be160: 6e74 206f 7074 696f 6e73 2220 2667 743b  nt options" >
│ │ │ +001be170: 2661 6d70 3b32 3b0a 2020 2020 2020 2020  &2;.        
│ │ │ +001be180: 2020 2020 2020 2020 6563 686f 2022 4e6f          echo "No
│ │ │ +001be190: 7420 7265 6d65 6469 6174 696e 672c 2062  t remediating, b
│ │ │ +001be1a0: 6563 6175 7365 2074 6865 7265 2069 7320  ecause there is 
│ │ │ +001be1b0: 6e6f 2072 6563 6f72 6420 6f66 202f 7661  no record of /va
│ │ │ +001be1c0: 7220 696e 202f 6574 632f 6673 7461 6222  r in /etc/fstab"
│ │ │ +001be1d0: 2026 6774 3b26 616d 703b 323b 2072 6574   >&2; ret
│ │ │ +001be1e0: 7572 6e20 313b 207d 0a20 2020 200a 0a0a  urn 1; }.    ...
│ │ │ +001be1f0: 2020 2020 6d6f 756e 745f 706f 696e 745f      mount_point_
│ │ │ +001be200: 6d61 7463 685f 7265 6765 7870 3d22 2428  match_regexp="$(
│ │ │ +001be210: 7072 696e 7466 2022 5e5b 5b3a 7370 6163  printf "^[[:spac
│ │ │ +001be220: 653a 5d5d 2a5b 5e23 5d2e 2a5b 5b3a 7370  e:]]*[^#].*[[:sp
│ │ │ +001be230: 6163 653a 5d5d 2573 5b5b 3a73 7061 6365  ace:]]%s[[:space
│ │ │ +001be240: 3a5d 5d22 202f 7661 7229 220a 0a20 2020  :]]" /var)"..   
│ │ │ +001be250: 2023 2049 6620 7468 6520 6d6f 756e 7420   # If the mount 
│ │ │ +001be260: 706f 696e 7420 6973 206e 6f74 2069 6e20  point is not in 
│ │ │ +001be270: 2f65 7463 2f66 7374 6162 2c20 6765 7420  /etc/fstab, get 
│ │ │ +001be280: 7072 6576 696f 7573 206d 6f75 6e74 206f  previous mount o
│ │ │ +001be290: 7074 696f 6e73 2066 726f 6d20 2f65 7463  ptions from /etc
│ │ │ +001be2a0: 2f6d 7461 620a 2020 2020 6966 2021 2067  /mtab.    if ! g
│ │ │ +001be2b0: 7265 7020 2d71 2022 246d 6f75 6e74 5f70  rep -q "$mount_p
│ │ │ +001be2c0: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ +001be2d0: 7022 202f 6574 632f 6673 7461 623b 2074  p" /etc/fstab; t
│ │ │ +001be2e0: 6865 6e0a 2020 2020 2020 2020 2320 7275  hen.        # ru
│ │ │ +001be2f0: 6e74 696d 6520 6f70 7473 2077 6974 686f  ntime opts witho
│ │ │ +001be300: 7574 2073 6f6d 6520 6175 746f 6d61 7469  ut some automati
│ │ │ +001be310: 6320 6b65 726e 656c 2f75 7365 7273 7061  c kernel/userspa
│ │ │ +001be320: 6365 2d61 6464 6564 2064 6566 6175 6c74  ce-added default
│ │ │ +001be330: 730a 2020 2020 2020 2020 7072 6576 696f  s.        previo
│ │ │ +001be340: 7573 5f6d 6f75 6e74 5f6f 7074 733d 2428  us_mount_opts=$(
│ │ │ +001be350: 6772 6570 2022 246d 6f75 6e74 5f70 6f69  grep "$mount_poi
│ │ │ +001be360: 6e74 5f6d 6174 6368 5f72 6567 6578 7022  nt_match_regexp"
│ │ │ +001be370: 202f 6574 632f 6d74 6162 207c 2068 6561   /etc/mtab | hea
│ │ │ +001be380: 6420 2d31 207c 2020 6177 6b20 277b 7072  d -1 |  awk '{pr
│ │ │ +001be390: 696e 7420 2434 7d27 205c 0a20 2020 2020  int $4}' \.     
│ │ │ +001be3a0: 2020 2020 2020 2020 2020 2020 2020 207c                 |
│ │ │ +001be3b0: 2073 6564 202d 4520 2273 2f28 7277 7c64   sed -E "s/(rw|d
│ │ │ +001be3c0: 6566 6175 6c74 737c 7365 636c 6162 656c  efaults|seclabel
│ │ │ +001be3d0: 7c6e 6f64 6576 2928 2c7c 2429 2f2f 673b  |nodev)(,|$)//g;
│ │ │ +001be3e0: 732f 2c24 2f2f 2229 0a20 2020 2020 2020  s/,$//").       
│ │ │ +001be3f0: 205b 2022 2470 7265 7669 6f75 735f 6d6f   [ "$previous_mo
│ │ │ +001be400: 756e 745f 6f70 7473 2220 5d20 2661 6d70  unt_opts" ] &
│ │ │ +001be410: 3b26 616d 703b 2070 7265 7669 6f75 735f  ;& previous_
│ │ │ +001be420: 6d6f 756e 745f 6f70 7473 2b3d 222c 220a  mount_opts+=",".
│ │ │ +001be430: 2020 2020 2020 2020 2320 496e 2069 736f          # In iso
│ │ │ +001be440: 3936 3630 2066 696c 6573 7973 7465 6d73  9660 filesystems
│ │ │ +001be450: 206d 7461 6220 636f 756c 6420 6465 7363   mtab could desc
│ │ │ +001be460: 7269 6265 2061 2022 626c 6f63 6b73 697a  ribe a "blocksiz
│ │ │ +001be470: 6522 2076 616c 7565 2c20 7468 6973 2073  e" value, this s
│ │ │ +001be480: 686f 756c 6420 6265 2072 6566 6c65 6374  hould be reflect
│ │ │ +001be490: 6564 2069 6e0a 2020 2020 2020 2020 2320  ed in.        # 
│ │ │ +001be4a0: 6673 7461 6220 6173 2022 626c 6f63 6b22  fstab as "block"
│ │ │ +001be4b0: 2e20 2054 6865 206e 6578 7420 7661 7269  .  The next vari
│ │ │ +001be4c0: 6162 6c65 2069 7320 746f 2073 6174 6973  able is to satis
│ │ │ +001be4d0: 6679 2073 6865 6c6c 6368 6563 6b20 5343  fy shellcheck SC
│ │ │ +001be4e0: 3230 3530 2e0a 2020 2020 2020 2020 6673  2050..        fs
│ │ │ +001be4f0: 5f74 7970 653d 2222 0a20 2020 2020 2020  _type="".       
│ │ │ +001be500: 2069 6620 5b20 2022 2466 735f 7479 7065   if [  "$fs_type
│ │ │ +001be510: 2220 3d3d 2022 6973 6f39 3636 3022 205d  " == "iso9660" ]
│ │ │ +001be520: 203b 2074 6865 6e0a 2020 2020 2020 2020   ; then.        
│ │ │ +001be530: 2020 2020 7072 6576 696f 7573 5f6d 6f75      previous_mou
│ │ │ +001be540: 6e74 5f6f 7074 733d 2428 7365 6420 2773  nt_opts=$(sed 's
│ │ │ +001be550: 2f62 6c6f 636b 7369 7a65 3d2f 626c 6f63  /blocksize=/bloc
│ │ │ +001be560: 6b3d 2f27 2026 6c74 3b26 6c74 3b26 6c74  k=/' <<<
│ │ │ +001be570: 3b20 2224 7072 6576 696f 7573 5f6d 6f75  ; "$previous_mou
│ │ │ +001be580: 6e74 5f6f 7074 7322 290a 2020 2020 2020  nt_opts").      
│ │ │ +001be590: 2020 6669 0a20 2020 2020 2020 2065 6368    fi.        ech
│ │ │ +001be5a0: 6f20 2220 2f76 6172 2020 6465 6661 756c  o " /var  defaul
│ │ │ +001be5b0: 7473 2c24 7b70 7265 7669 6f75 735f 6d6f  ts,${previous_mo
│ │ │ +001be5c0: 756e 745f 6f70 7473 7d6e 6f64 6576 2030  unt_opts}nodev 0
│ │ │ +001be5d0: 2030 2220 2667 743b 2667 743b 202f 6574   0" >> /et
│ │ │ +001be5e0: 632f 6673 7461 620a 2020 2020 2320 4966  c/fstab.    # If
│ │ │ +001be5f0: 2074 6865 206d 6f75 6e74 5f6f 7074 206f   the mount_opt o
│ │ │ +001be600: 7074 696f 6e20 6973 206e 6f74 2061 6c72  ption is not alr
│ │ │ +001be610: 6561 6479 2069 6e20 7468 6520 6d6f 756e  eady in the moun
│ │ │ +001be620: 7420 706f 696e 7427 7320 2f65 7463 2f66  t point's /etc/f
│ │ │ +001be630: 7374 6162 2065 6e74 7279 2c20 6164 6420  stab entry, add 
│ │ │ +001be640: 6974 0a20 2020 2065 6c69 6620 2120 6772  it.    elif ! gr
│ │ │ +001be650: 6570 2022 246d 6f75 6e74 5f70 6f69 6e74  ep "$mount_point
│ │ │ +001be660: 5f6d 6174 6368 5f72 6567 6578 7022 202f  _match_regexp" /
│ │ │ +001be670: 6574 632f 6673 7461 6220 7c20 6772 6570  etc/fstab | grep
│ │ │ +001be680: 202d 7120 226e 6f64 6576 223b 2074 6865   -q "nodev"; the
│ │ │ +001be690: 6e0a 2020 2020 2020 2020 7072 6576 696f  n.        previo
│ │ │ +001be6a0: 7573 5f6d 6f75 6e74 5f6f 7074 733d 2428  us_mount_opts=$(
│ │ │ +001be6b0: 6772 6570 2022 246d 6f75 6e74 5f70 6f69  grep "$mount_poi
│ │ │ +001be6c0: 6e74 5f6d 6174 6368 5f72 6567 6578 7022  nt_match_regexp"
│ │ │ +001be6d0: 202f 6574 632f 6673 7461 6220 7c20 6177   /etc/fstab | aw
│ │ │ +001be6e0: 6b20 277b 7072 696e 7420 2434 7d27 290a  k '{print $4}').
│ │ │ +001be6f0: 2020 2020 2020 2020 7365 6420 2d69 2022          sed -i "
│ │ │ +001be700: 737c 5c28 247b 6d6f 756e 745f 706f 696e  s|\(${mount_poin
│ │ │ +001be710: 745f 6d61 7463 685f 7265 6765 7870 7d2e  t_match_regexp}.
│ │ │ +001be720: 2a24 7b70 7265 7669 6f75 735f 6d6f 756e  *${previous_moun
│ │ │ +001be730: 745f 6f70 7473 7d5c 297c 5c31 2c6e 6f64  t_opts}\)|\1,nod
│ │ │ +001be740: 6576 7c22 202f 6574 632f 6673 7461 620a  ev|" /etc/fstab.
│ │ │ +001be750: 2020 2020 6669 0a0a 0a20 2020 2069 6620      fi...    if 
│ │ │ +001be760: 6d6b 6469 7220 2d70 2022 2f76 6172 223b  mkdir -p "/var";
│ │ │ +001be770: 2074 6865 6e0a 2020 2020 2020 2020 6966   then.        if
│ │ │ +001be780: 206d 6f75 6e74 706f 696e 7420 2d71 2022   mountpoint -q "
│ │ │ +001be790: 2f76 6172 223b 2074 6865 6e0a 2020 2020  /var"; then.    
│ │ │ +001be7a0: 2020 2020 2020 2020 6d6f 756e 7420 2d6f          mount -o
│ │ │ +001be7b0: 2072 656d 6f75 6e74 202d 2d74 6172 6765   remount --targe
│ │ │ +001be7c0: 7420 222f 7661 7222 0a20 2020 2020 2020  t "/var".       
│ │ │ +001be7d0: 2066 690a 2020 2020 6669 0a7d 0a0a 7065   fi.    fi.}..pe
│ │ │ +001be7e0: 7266 6f72 6d5f 7265 6d65 6469 6174 696f  rform_remediatio
│ │ │ +001be7f0: 6e0a 0a65 6c73 650a 2020 2020 2667 743b  n..else.    >
│ │ │ +001be800: 2661 6d70 3b32 2065 6368 6f20 2752 656d  &2 echo 'Rem
│ │ │ +001be810: 6564 6961 7469 6f6e 2069 7320 6e6f 7420  ediation is not 
│ │ │ +001be820: 6170 706c 6963 6162 6c65 2c20 6e6f 7468  applicable, noth
│ │ │ +001be830: 696e 6720 7761 7320 646f 6e65 270a 6669  ing was done'.fi
│ │ │ +001be840: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation Ana │ │ │ +001be900: 636f 6e64 6120 736e 6970 7065 7420 e287 conda snippet .. │ │ │ +001be910: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ +001be990: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ +001be9b0: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr> │ │ │ +001bea00: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 < │ │ │ +001bea30: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
.part /var --m
│ │ │ +001bea50: 6f75 6e74 6f70 7469 6f6e 733d 226e 6f64  ountoptions="nod
│ │ │ +001bea60: 6576 220a 3c2f 636f 6465 3e3c 2f70 7265  ev".
< │ │ │ 001bea90: 2f74 6162 6c65 3e3c 2f74 643e 3c2f 7472 /table>Remediation An │ │ │ -001bf370: 6163 6f6e 6461 2073 6e69 7070 6574 20e2 aconda snippet . │ │ │ -001bf380: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
low
Disr │ │ │ +001be9c0: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +001be9d0: 6869 6768 3c2f 7464 3e3c 2f74 723e 3c74 high
Reboot:false
Str │ │ │ +001bea10: 6174 6567 793a 3c2f 7468 3e3c 7464 3e65 ategy:e │ │ │ +001bea20: 6e61 626c 653c 2f74 643e 3c2f 7472 3e3c nable
│ │ │ -001bf400: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -001bf420: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 < │ │ │ -001bf450: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr> │ │ │ -001bf4a0: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ -001bf410: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ -001bf430: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:high
Reboot:false
St │ │ │ -001bf480: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ -001bf490: 656e 6162 6c65 3c2f 7464 3e3c 2f74 723e enable
.part /var --
│ │ │ -001bf4c0: 6d6f 756e 746f 7074 696f 6e73 3d22 6e6f  mountoptions="no
│ │ │ -001bf4d0: 7375 6964 220a 3c2f 636f 6465 3e3c 2f70  suid".

Remediatio │ │ │ -001bf590: 6e20 416e 7369 626c 6520 736e 6970 7065 n Ansible snippe │ │ │ -001bf5a0: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ -001bf620: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ -001bf630: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ -001bf650: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ -001bf660: 3c74 643e 6869 6768 3c2f 7464 3e3c 2f74 highReboot │ │ │ -001bf680: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -001bf690: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ -001bf6b0: 7464 3e63 6f6e 6669 6775 7265 3c2f 7464 td>configure

- name: │ │ │ -001bf6e0: 2047 6174 6865 7220 7468 6520 7061 636b Gather the pack │ │ │ -001bf6f0: 6167 6520 6661 6374 730a 2020 7061 636b age facts. pack │ │ │ -001bf700: 6167 655f 6661 6374 733a 0a20 2020 206d age_facts:. m │ │ │ -001bf710: 616e 6167 6572 3a20 6175 746f 0a20 2074 anager: auto. t │ │ │ -001bf720: 6167 733a 0a20 202d 2063 6f6e 6669 6775 ags:. - configu │ │ │ -001bf730: 7265 5f73 7472 6174 6567 790a 2020 2d20 re_strategy. - │ │ │ -001bf740: 6869 6768 5f64 6973 7275 7074 696f 6e0a high_disruption. │ │ │ -001bf750: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869 - low_complexi │ │ │ -001bf760: 7479 0a20 202d 206d 6564 6975 6d5f 7365 ty. - medium_se │ │ │ -001bf770: 7665 7269 7479 0a20 202d 206d 6f75 6e74 verity. - mount │ │ │ -001bf780: 5f6f 7074 696f 6e5f 7661 725f 6e6f 7375 _option_var_nosu │ │ │ -001bf790: 6964 0a20 202d 206e 6f5f 7265 626f 6f74 id. - no_reboot │ │ │ -001bf7a0: 5f6e 6565 6465 640a 0a2d 206e 616d 653a _needed..- name: │ │ │ -001bf7b0: 2027 4164 6420 6e6f 7375 6964 204f 7074 'Add nosuid Opt │ │ │ -001bf7c0: 696f 6e20 746f 202f 7661 723a 2043 6865 ion to /var: Che │ │ │ -001bf7d0: 636b 2069 6e66 6f72 6d61 7469 6f6e 2061 ck information a │ │ │ -001bf7e0: 7373 6f63 6961 7465 6420 746f 206d 6f75 ssociated to mou │ │ │ -001bf7f0: 6e74 706f 696e 7427 0a20 2061 6e73 6962 ntpoint'. ansib │ │ │ -001bf800: 6c65 2e62 7569 6c74 696e 2e63 6f6d 6d61 le.builtin.comma │ │ │ -001bf810: 6e64 3a20 6669 6e64 6d6e 7420 2d2d 6673 nd: findmnt --fs │ │ │ -001bf820: 7461 6220 272f 7661 7227 0a20 2072 6567 tab '/var'. reg │ │ │ -001bf830: 6973 7465 723a 2064 6576 6963 655f 6e61 ister: device_na │ │ │ -001bf840: 6d65 0a20 2066 6169 6c65 645f 7768 656e me. failed_when │ │ │ -001bf850: 3a20 6465 7669 6365 5f6e 616d 652e 7263 : device_name.rc │ │ │ -001bf860: 2026 6774 3b20 310a 2020 6368 616e 6765 > 1. change │ │ │ -001bf870: 645f 7768 656e 3a20 6661 6c73 650a 2020 d_when: false. │ │ │ -001bf880: 6368 6563 6b5f 6d6f 6465 3a20 6661 6c73 check_mode: fals │ │ │ -001bf890: 650a 2020 7768 656e 3a0a 2020 2d20 2820 e. when:. - ( │ │ │ -001bf8a0: 6e6f 7420 2820 226b 6572 6e65 6c22 2069 not ( "kernel" i │ │ │ -001bf8b0: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ -001bf8c0: 7061 636b 6167 6573 2061 6e64 2022 626f packages and "bo │ │ │ -001bf8d0: 6f74 6322 2069 6e20 616e 7369 626c 655f otc" in ansible_ │ │ │ -001bf8e0: 6661 6374 732e 7061 636b 6167 6573 0a20 facts.packages. │ │ │ -001bf8f0: 2020 2061 6e64 206e 6f74 2022 6f70 656e and not "open │ │ │ -001bf900: 7368 6966 742d 6b75 6265 6c65 7422 2069 shift-kubelet" i │ │ │ -001bf910: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ -001bf920: 7061 636b 6167 6573 2061 6e64 2022 6f73 packages and "os │ │ │ -001bf930: 7472 6565 2220 696e 2061 6e73 6962 6c65 tree" in ansible │ │ │ -001bf940: 5f70 726f 635f 636d 646c 696e 650a 2020 _proc_cmdline. │ │ │ -001bf950: 2020 2920 616e 6420 6e6f 7420 2820 616e ) and not ( an │ │ │ -001bf960: 7369 626c 655f 7669 7274 7561 6c69 7a61 sible_virtualiza │ │ │ -001bf970: 7469 6f6e 5f74 7970 6520 696e 205b 2264 tion_type in ["d │ │ │ -001bf980: 6f63 6b65 7222 2c20 226c 7863 222c 2022 ocker", "lxc", " │ │ │ -001bf990: 6f70 656e 767a 222c 2022 706f 646d 616e openvz", "podman │ │ │ -001bf9a0: 222c 0a20 2020 2022 636f 6e74 6169 6e65 ",. "containe │ │ │ -001bf9b0: 7222 5d20 2920 290a 2020 2d20 2722 2f76 r"] ) ). - '"/v │ │ │ -001bf9c0: 6172 2220 696e 2061 6e73 6962 6c65 5f6d ar" in ansible_m │ │ │ -001bf9d0: 6f75 6e74 7320 7c20 6d61 7028 6174 7472 ounts | map(attr │ │ │ -001bf9e0: 6962 7574 653d 226d 6f75 6e74 2229 207c ibute="mount") | │ │ │ -001bf9f0: 206c 6973 7427 0a20 2074 6167 733a 0a20 list'. tags:. │ │ │ -001bfa00: 202d 2063 6f6e 6669 6775 7265 5f73 7472 - configure_str │ │ │ -001bfa10: 6174 6567 790a 2020 2d20 6869 6768 5f64 ategy. - high_d │ │ │ -001bfa20: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f isruption. - lo │ │ │ -001bfa30: 775f 636f 6d70 6c65 7869 7479 0a20 202d w_complexity. - │ │ │ -001bfa40: 206d 6564 6975 6d5f 7365 7665 7269 7479 medium_severity │ │ │ -001bfa50: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f . - mount_optio │ │ │ -001bfa60: 6e5f 7661 725f 6e6f 7375 6964 0a20 202d n_var_nosuid. - │ │ │ -001bfa70: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465 no_reboot_neede │ │ │ -001bfa80: 640a 0a2d 206e 616d 653a 2027 4164 6420 d..- name: 'Add │ │ │ -001bfa90: 6e6f 7375 6964 204f 7074 696f 6e20 746f nosuid Option to │ │ │ -001bfaa0: 202f 7661 723a 2043 7265 6174 6520 6d6f /var: Create mo │ │ │ -001bfab0: 756e 745f 696e 666f 2064 6963 7469 6f6e unt_info diction │ │ │ -001bfac0: 6172 7920 7661 7269 6162 6c65 270a 2020 ary variable'. │ │ │ -001bfad0: 7365 745f 6661 6374 3a0a 2020 2020 6d6f set_fact:. mo │ │ │ -001bfae0: 756e 745f 696e 666f 3a20 277b 7b20 6d6f unt_info: '{{ mo │ │ │ -001bfaf0: 756e 745f 696e 666f 7c64 6566 6175 6c74 unt_info|default │ │ │ -001bfb00: 287b 7d29 7c63 6f6d 6269 6e65 287b 6974 ({})|combine({it │ │ │ -001bfb10: 656d 2e30 3a20 6974 656d 2e31 7d29 207d em.0: item.1}) } │ │ │ -001bfb20: 7d27 0a20 2077 6974 685f 746f 6765 7468 }'. with_togeth │ │ │ -001bfb30: 6572 3a0a 2020 2d20 277b 7b20 6465 7669 er:. - '{{ devi │ │ │ -001bfb40: 6365 5f6e 616d 652e 7374 646f 7574 5f6c ce_name.stdout_l │ │ │ -001bfb50: 696e 6573 5b30 5d2e 7370 6c69 7428 2920 ines[0].split() │ │ │ -001bfb60: 7c20 6d61 7028 2727 6c6f 7765 7227 2729 | map(''lower'') │ │ │ -001bfb70: 207c 206c 6973 7420 7d7d 270a 2020 2d20 | list }}'. - │ │ │ -001bfb80: 277b 7b20 6465 7669 6365 5f6e 616d 652e '{{ device_name. │ │ │ -001bfb90: 7374 646f 7574 5f6c 696e 6573 5b31 5d2e stdout_lines[1]. │ │ │ -001bfba0: 7370 6c69 7428 2920 7c20 6c69 7374 207d split() | list } │ │ │ -001bfbb0: 7d27 0a20 2077 6865 6e3a 0a20 202d 2028 }'. when:. - ( │ │ │ -001bfbc0: 206e 6f74 2028 2022 6b65 726e 656c 2220 not ( "kernel" │ │ │ -001bfbd0: 696e 2061 6e73 6962 6c65 5f66 6163 7473 in ansible_facts │ │ │ -001bfbe0: 2e70 6163 6b61 6765 7320 616e 6420 2262 .packages and "b │ │ │ -001bfbf0: 6f6f 7463 2220 696e 2061 6e73 6962 6c65 ootc" in ansible │ │ │ -001bfc00: 5f66 6163 7473 2e70 6163 6b61 6765 730a _facts.packages. │ │ │ -001bfc10: 2020 2020 616e 6420 6e6f 7420 226f 7065 and not "ope │ │ │ -001bfc20: 6e73 6869 6674 2d6b 7562 656c 6574 2220 nshift-kubelet" │ │ │ -001bfc30: 696e 2061 6e73 6962 6c65 5f66 6163 7473 in ansible_facts │ │ │ -001bfc40: 2e70 6163 6b61 6765 7320 616e 6420 226f .packages and "o │ │ │ -001bfc50: 7374 7265 6522 2069 6e20 616e 7369 626c stree" in ansibl │ │ │ -001bfc60: 655f 7072 6f63 5f63 6d64 6c69 6e65 0a20 e_proc_cmdline. │ │ │ -001bfc70: 2020 2029 2061 6e64 206e 6f74 2028 2061 ) and not ( a │ │ │ -001bfc80: 6e73 6962 6c65 5f76 6972 7475 616c 697a nsible_virtualiz │ │ │ -001bfc90: 6174 696f 6e5f 7479 7065 2069 6e20 5b22 ation_type in [" │ │ │ -001bfca0: 646f 636b 6572 222c 2022 6c78 6322 2c20 docker", "lxc", │ │ │ -001bfcb0: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61 "openvz", "podma │ │ │ -001bfcc0: 6e22 2c0a 2020 2020 2263 6f6e 7461 696e n",. "contain │ │ │ -001bfcd0: 6572 225d 2029 2029 0a20 202d 2027 222f er"] ) ). - '"/ │ │ │ -001bfce0: 7661 7222 2069 6e20 616e 7369 626c 655f var" in ansible_ │ │ │ -001bfcf0: 6d6f 756e 7473 207c 206d 6170 2861 7474 mounts | map(att │ │ │ -001bfd00: 7269 6275 7465 3d22 6d6f 756e 7422 2920 ribute="mount") │ │ │ -001bfd10: 7c20 6c69 7374 270a 2020 2d20 6465 7669 | list'. - devi │ │ │ -001bfd20: 6365 5f6e 616d 652e 7374 646f 7574 2069 ce_name.stdout i │ │ │ -001bfd30: 7320 6465 6669 6e65 6420 616e 6420 6465 s defined and de │ │ │ -001bfd40: 7669 6365 5f6e 616d 652e 7374 646f 7574 vice_name.stdout │ │ │ -001bfd50: 5f6c 696e 6573 2069 7320 6465 6669 6e65 _lines is define │ │ │ -001bfd60: 640a 2020 2d20 2864 6576 6963 655f 6e61 d. - (device_na │ │ │ -001bfd70: 6d65 2e73 7464 6f75 7420 7c20 6c65 6e67 me.stdout | leng │ │ │ -001bfd80: 7468 2026 6774 3b20 3029 0a20 2074 6167 th > 0). tag │ │ │ -001bfd90: 733a 0a20 202d 2063 6f6e 6669 6775 7265 s:. - configure │ │ │ -001bfda0: 5f73 7472 6174 6567 790a 2020 2d20 6869 _strategy. - hi │ │ │ -001bfdb0: 6768 5f64 6973 7275 7074 696f 6e0a 2020 gh_disruption. │ │ │ -001bfdc0: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479 - low_complexity │ │ │ -001bfdd0: 0a20 202d 206d 6564 6975 6d5f 7365 7665 . - medium_seve │ │ │ -001bfde0: 7269 7479 0a20 202d 206d 6f75 6e74 5f6f rity. - mount_o │ │ │ -001bfdf0: 7074 696f 6e5f 7661 725f 6e6f 7375 6964 ption_var_nosuid │ │ │ -001bfe00: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e . - no_reboot_n │ │ │ -001bfe10: 6565 6465 640a 0a2d 206e 616d 653a 2027 eeded..- name: ' │ │ │ -001bfe20: 4164 6420 6e6f 7375 6964 204f 7074 696f Add nosuid Optio │ │ │ -001bfe30: 6e20 746f 202f 7661 723a 2049 6620 2f76 n to /var: If /v │ │ │ -001bfe40: 6172 206e 6f74 206d 6f75 6e74 6564 2c20 ar not mounted, │ │ │ -001bfe50: 6372 6166 7420 6d6f 756e 745f 696e 666f craft mount_info │ │ │ -001bfe60: 206d 616e 7561 6c6c 7927 0a20 2073 6574 manually'. set │ │ │ -001bfe70: 5f66 6163 743a 0a20 2020 206d 6f75 6e74 _fact:. mount │ │ │ -001bfe80: 5f69 6e66 6f3a 2027 7b7b 206d 6f75 6e74 _info: '{{ mount │ │ │ -001bfe90: 5f69 6e66 6f7c 6465 6661 756c 7428 7b7d _info|default({} │ │ │ -001bfea0: 297c 636f 6d62 696e 6528 7b69 7465 6d2e )|combine({item. │ │ │ -001bfeb0: 303a 2069 7465 6d2e 317d 2920 7d7d 270a 0: item.1}) }}'. │ │ │ -001bfec0: 2020 7769 7468 5f74 6f67 6574 6865 723a with_together: │ │ │ -001bfed0: 0a20 202d 202d 2074 6172 6765 740a 2020 . - - target. │ │ │ -001bfee0: 2020 2d20 736f 7572 6365 0a20 2020 202d - source. - │ │ │ -001bfef0: 2066 7374 7970 650a 2020 2020 2d20 6f70 fstype. - op │ │ │ -001bff00: 7469 6f6e 730a 2020 2d20 2d20 2f76 6172 tions. - - /var │ │ │ -001bff10: 0a20 2020 202d 2027 270a 2020 2020 2d20 . - ''. - │ │ │ -001bff20: 2727 0a20 2020 202d 2064 6566 6175 6c74 ''. - default │ │ │ -001bff30: 730a 2020 7768 656e 3a0a 2020 2d20 2820 s. when:. - ( │ │ │ -001bff40: 6e6f 7420 2820 226b 6572 6e65 6c22 2069 not ( "kernel" i │ │ │ -001bff50: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ -001bff60: 7061 636b 6167 6573 2061 6e64 2022 626f packages and "bo │ │ │ -001bff70: 6f74 6322 2069 6e20 616e 7369 626c 655f otc" in ansible_ │ │ │ -001bff80: 6661 6374 732e 7061 636b 6167 6573 0a20 facts.packages. │ │ │ -001bff90: 2020 2061 6e64 206e 6f74 2022 6f70 656e and not "open │ │ │ -001bffa0: 7368 6966 742d 6b75 6265 6c65 7422 2069 shift-kubelet" i │ │ │ -001bffb0: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ -001bffc0: 7061 636b 6167 6573 2061 6e64 2022 6f73 packages and "os │ │ │ -001bffd0: 7472 6565 2220 696e 2061 6e73 6962 6c65 tree" in ansible │ │ │ -001bffe0: 5f70 726f 635f 636d 646c 696e 650a 2020 _proc_cmdline. │ │ │ -001bfff0: 2020 2920 616e 6420 6e6f 7420 2820 616e ) and not ( an │ │ │ -001c0000: 7369 626c 655f 7669 7274 7561 6c69 7a61 sible_virtualiza │ │ │ -001c0010: 7469 6f6e 5f74 7970 6520 696e 205b 2264 tion_type in ["d │ │ │ -001c0020: 6f63 6b65 7222 2c20 226c 7863 222c 2022 ocker", "lxc", " │ │ │ -001c0030: 6f70 656e 767a 222c 2022 706f 646d 616e openvz", "podman │ │ │ -001c0040: 222c 0a20 2020 2022 636f 6e74 6169 6e65 ",. "containe │ │ │ -001c0050: 7222 5d20 2920 290a 2020 2d20 2722 2f76 r"] ) ). - '"/v │ │ │ -001c0060: 6172 2220 696e 2061 6e73 6962 6c65 5f6d ar" in ansible_m │ │ │ -001c0070: 6f75 6e74 7320 7c20 6d61 7028 6174 7472 ounts | map(attr │ │ │ -001c0080: 6962 7574 653d 226d 6f75 6e74 2229 207c ibute="mount") | │ │ │ -001c0090: 206c 6973 7427 0a20 202d 2028 222d 2d66 list'. - ("--f │ │ │ -001c00a0: 7374 6162 2220 7c20 6c65 6e67 7468 203d stab" | length = │ │ │ -001c00b0: 3d20 3029 0a20 202d 2064 6576 6963 655f = 0). - device_ │ │ │ -001c00c0: 6e61 6d65 2e73 7464 6f75 7420 6973 2064 name.stdout is d │ │ │ -001c00d0: 6566 696e 6564 2061 6e64 2064 6576 6963 efined and devic │ │ │ -001c00e0: 655f 6e61 6d65 2e73 7464 6f75 745f 6c69 e_name.stdout_li │ │ │ -001c00f0: 6e65 7320 6973 2064 6566 696e 6564 0a20 nes is defined. │ │ │ -001c0100: 202d 2028 6465 7669 6365 5f6e 616d 652e - (device_name. │ │ │ -001c0110: 7374 646f 7574 207c 206c 656e 6774 6820 stdout | length │ │ │ -001c0120: 3d3d 2030 290a 2020 7461 6773 3a0a 2020 == 0). tags:. │ │ │ -001c0130: 2d20 636f 6e66 6967 7572 655f 7374 7261 - configure_stra │ │ │ -001c0140: 7465 6779 0a20 202d 2068 6967 685f 6469 tegy. - high_di │ │ │ -001c0150: 7372 7570 7469 6f6e 0a20 202d 206c 6f77 sruption. - low │ │ │ -001c0160: 5f63 6f6d 706c 6578 6974 790a 2020 2d20 _complexity. - │ │ │ -001c0170: 6d65 6469 756d 5f73 6576 6572 6974 790a medium_severity. │ │ │ -001c0180: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e - mount_option │ │ │ -001c0190: 5f76 6172 5f6e 6f73 7569 640a 2020 2d20 _var_nosuid. - │ │ │ -001c01a0: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564 no_reboot_needed │ │ │ -001c01b0: 0a0a 2d20 6e61 6d65 3a20 2741 6464 206e ..- name: 'Add n │ │ │ -001c01c0: 6f73 7569 6420 4f70 7469 6f6e 2074 6f20 osuid Option to │ │ │ -001c01d0: 2f76 6172 3a20 4d61 6b65 2073 7572 6520 /var: Make sure │ │ │ -001c01e0: 6e6f 7375 6964 206f 7074 696f 6e20 6973 nosuid option is │ │ │ -001c01f0: 2070 6172 7420 6f66 2074 6865 2074 6f20 part of the to │ │ │ -001c0200: 2f76 6172 0a20 2020 206f 7074 696f 6e73 /var. options │ │ │ -001c0210: 270a 2020 7365 745f 6661 6374 3a0a 2020 '. set_fact:. │ │ │ -001c0220: 2020 6d6f 756e 745f 696e 666f 3a20 277b mount_info: '{ │ │ │ -001c0230: 7b20 6d6f 756e 745f 696e 666f 207c 2063 { mount_info | c │ │ │ -001c0240: 6f6d 6269 6e65 2820 7b27 276f 7074 696f ombine( {''optio │ │ │ -001c0250: 6e73 2727 3a27 2727 277e 286d 6f75 6e74 ns'':''''~(mount │ │ │ -001c0260: 5f69 6e66 6f2e 6f70 7469 6f6e 7320 7c0a _info.options |. │ │ │ -001c0270: 2020 2020 2020 6465 6661 756c 7428 2727 default('' │ │ │ -001c0280: 2727 2929 7e28 2727 2c27 2720 6966 2028 ''))~('','' if ( │ │ │ -001c0290: 6d6f 756e 745f 696e 666f 2e6f 7074 696f mount_info.optio │ │ │ -001c02a0: 6e73 207c 2064 6566 6175 6c74 2827 2727 ns | default(''' │ │ │ -001c02b0: 2729 2920 656c 7365 2027 2727 2729 7e27 ')) else '''')~' │ │ │ -001c02c0: 276e 6f73 7569 6427 270a 2020 2020 2020 'nosuid''. │ │ │ -001c02d0: 7d29 207d 7d27 0a20 2077 6865 6e3a 0a20 }) }}'. when:. │ │ │ -001c02e0: 202d 2028 206e 6f74 2028 2022 6b65 726e - ( not ( "kern │ │ │ -001c02f0: 656c 2220 696e 2061 6e73 6962 6c65 5f66 el" in ansible_f │ │ │ -001c0300: 6163 7473 2e70 6163 6b61 6765 7320 616e acts.packages an │ │ │ -001c0310: 6420 2262 6f6f 7463 2220 696e 2061 6e73 d "bootc" in ans │ │ │ -001c0320: 6962 6c65 5f66 6163 7473 2e70 6163 6b61 ible_facts.packa │ │ │ -001c0330: 6765 730a 2020 2020 616e 6420 6e6f 7420 ges. and not │ │ │ -001c0340: 226f 7065 6e73 6869 6674 2d6b 7562 656c "openshift-kubel │ │ │ -001c0350: 6574 2220 696e 2061 6e73 6962 6c65 5f66 et" in ansible_f │ │ │ -001c0360: 6163 7473 2e70 6163 6b61 6765 7320 616e acts.packages an │ │ │ -001c0370: 6420 226f 7374 7265 6522 2069 6e20 616e d "ostree" in an │ │ │ -001c0380: 7369 626c 655f 7072 6f63 5f63 6d64 6c69 sible_proc_cmdli │ │ │ -001c0390: 6e65 0a20 2020 2029 2061 6e64 206e 6f74 ne. ) and not │ │ │ -001c03a0: 2028 2061 6e73 6962 6c65 5f76 6972 7475 ( ansible_virtu │ │ │ -001c03b0: 616c 697a 6174 696f 6e5f 7479 7065 2069 alization_type i │ │ │ -001c03c0: 6e20 5b22 646f 636b 6572 222c 2022 6c78 n ["docker", "lx │ │ │ -001c03d0: 6322 2c20 226f 7065 6e76 7a22 2c20 2270 c", "openvz", "p │ │ │ -001c03e0: 6f64 6d61 6e22 2c0a 2020 2020 2263 6f6e odman",. "con │ │ │ -001c03f0: 7461 696e 6572 225d 2029 2029 0a20 202d tainer"] ) ). - │ │ │ -001c0400: 2027 222f 7661 7222 2069 6e20 616e 7369 '"/var" in ansi │ │ │ -001c0410: 626c 655f 6d6f 756e 7473 207c 206d 6170 ble_mounts | map │ │ │ -001c0420: 2861 7474 7269 6275 7465 3d22 6d6f 756e (attribute="moun │ │ │ -001c0430: 7422 2920 7c20 6c69 7374 270a 2020 2d20 t") | list'. - │ │ │ -001c0440: 6d6f 756e 745f 696e 666f 2069 7320 6465 mount_info is de │ │ │ -001c0450: 6669 6e65 6420 616e 6420 226e 6f73 7569 fined and "nosui │ │ │ -001c0460: 6422 206e 6f74 2069 6e20 286d 6f75 6e74 d" not in (mount │ │ │ -001c0470: 5f69 6e66 6f2e 6f70 7469 6f6e 7320 7c20 _info.options | │ │ │ -001c0480: 6465 6661 756c 7428 2727 2929 0a20 2074 default('')). t │ │ │ -001c0490: 6167 733a 0a20 202d 2063 6f6e 6669 6775 ags:. - configu │ │ │ -001c04a0: 7265 5f73 7472 6174 6567 790a 2020 2d20 re_strategy. - │ │ │ -001c04b0: 6869 6768 5f64 6973 7275 7074 696f 6e0a high_disruption. │ │ │ -001c04c0: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869 - low_complexi │ │ │ -001c04d0: 7479 0a20 202d 206d 6564 6975 6d5f 7365 ty. - medium_se │ │ │ -001c04e0: 7665 7269 7479 0a20 202d 206d 6f75 6e74 verity. - mount │ │ │ -001c04f0: 5f6f 7074 696f 6e5f 7661 725f 6e6f 7375 _option_var_nosu │ │ │ -001c0500: 6964 0a20 202d 206e 6f5f 7265 626f 6f74 id. - no_reboot │ │ │ -001c0510: 5f6e 6565 6465 640a 0a2d 206e 616d 653a _needed..- name: │ │ │ -001c0520: 2027 4164 6420 6e6f 7375 6964 204f 7074 'Add nosuid Opt │ │ │ -001c0530: 696f 6e20 746f 202f 7661 723a 2045 6e73 ion to /var: Ens │ │ │ -001c0540: 7572 6520 2f76 6172 2069 7320 6d6f 756e ure /var is moun │ │ │ -001c0550: 7465 6420 7769 7468 206e 6f73 7569 6420 ted with nosuid │ │ │ -001c0560: 6f70 7469 6f6e 270a 2020 616e 7369 626c option'. ansibl │ │ │ -001c0570: 652e 706f 7369 782e 6d6f 756e 743a 0a20 e.posix.mount:. │ │ │ -001c0580: 2020 2070 6174 683a 202f 7661 720a 2020 path: /var. │ │ │ -001c0590: 2020 7372 633a 2027 7b7b 206d 6f75 6e74 src: '{{ mount │ │ │ -001c05a0: 5f69 6e66 6f2e 736f 7572 6365 207c 2064 _info.source | d │ │ │ -001c05b0: 6566 6175 6c74 2827 2727 2729 207d 7d27 efault('''') }}' │ │ │ -001c05c0: 0a20 2020 206f 7074 733a 2027 7b7b 206d . opts: '{{ m │ │ │ -001c05d0: 6f75 6e74 5f69 6e66 6f2e 6f70 7469 6f6e ount_info.option │ │ │ -001c05e0: 7320 7c20 6465 6661 756c 7428 2727 2727 s | default('''' │ │ │ -001c05f0: 2920 7d7d 270a 2020 2020 7374 6174 653a ) }}'. state: │ │ │ -001c0600: 206d 6f75 6e74 6564 0a20 2020 2066 7374 mounted. fst │ │ │ -001c0610: 7970 653a 2027 7b7b 206d 6f75 6e74 5f69 ype: '{{ mount_i │ │ │ -001c0620: 6e66 6f2e 6673 7479 7065 207c 2064 6566 nfo.fstype | def │ │ │ -001c0630: 6175 6c74 2827 2727 2729 207d 7d27 0a20 ault('''') }}'. │ │ │ -001c0640: 2072 6567 6973 7465 723a 206d 6f75 6e74 register: mount │ │ │ -001c0650: 5f72 6573 756c 740a 2020 6661 696c 6564 _result. failed │ │ │ -001c0660: 5f77 6865 6e3a 0a20 202d 206d 6f75 6e74 _when:. - mount │ │ │ -001c0670: 5f72 6573 756c 7420 6973 2066 6169 6c65 _result is faile │ │ │ -001c0680: 640a 2020 2d20 2727 2774 6172 6765 7420 d. - '''target │ │ │ -001c0690: 6973 2062 7573 7927 2720 6e6f 7420 696e is busy'' not in │ │ │ -001c06a0: 2028 6d6f 756e 745f 7265 7375 6c74 2e6d (mount_result.m │ │ │ -001c06b0: 7367 207c 2064 6566 6175 6c74 2827 2727 sg | default(''' │ │ │ -001c06c0: 2729 2927 0a20 202d 2027 2727 616c 7265 '))'. - '''alre │ │ │ -001c06d0: 6164 7920 6d6f 756e 7465 6427 2720 6e6f ady mounted'' no │ │ │ -001c06e0: 7420 696e 2028 6d6f 756e 745f 7265 7375 t in (mount_resu │ │ │ -001c06f0: 6c74 2e6d 7367 207c 2064 6566 6175 6c74 lt.msg | default │ │ │ -001c0700: 2827 2727 2729 2927 0a20 2077 6865 6e3a (''''))'. when: │ │ │ -001c0710: 0a20 202d 2028 206e 6f74 2028 2022 6b65 . - ( not ( "ke │ │ │ -001c0720: 726e 656c 2220 696e 2061 6e73 6962 6c65 rnel" in ansible │ │ │ -001c0730: 5f66 6163 7473 2e70 6163 6b61 6765 7320 _facts.packages │ │ │ -001c0740: 616e 6420 2262 6f6f 7463 2220 696e 2061 and "bootc" in a │ │ │ -001c0750: 6e73 6962 6c65 5f66 6163 7473 2e70 6163 nsible_facts.pac │ │ │ -001c0760: 6b61 6765 730a 2020 2020 616e 6420 6e6f kages. and no │ │ │ -001c0770: 7420 226f 7065 6e73 6869 6674 2d6b 7562 t "openshift-kub │ │ │ -001c0780: 656c 6574 2220 696e 2061 6e73 6962 6c65 elet" in ansible │ │ │ -001c0790: 5f66 6163 7473 2e70 6163 6b61 6765 7320 _facts.packages │ │ │ -001c07a0: 616e 6420 226f 7374 7265 6522 2069 6e20 and "ostree" in │ │ │ -001c07b0: 616e 7369 626c 655f 7072 6f63 5f63 6d64 ansible_proc_cmd │ │ │ -001c07c0: 6c69 6e65 0a20 2020 2029 2061 6e64 206e line. ) and n │ │ │ -001c07d0: 6f74 2028 2061 6e73 6962 6c65 5f76 6972 ot ( ansible_vir │ │ │ -001c07e0: 7475 616c 697a 6174 696f 6e5f 7479 7065 tualization_type │ │ │ -001c07f0: 2069 6e20 5b22 646f 636b 6572 222c 2022 in ["docker", " │ │ │ -001c0800: 6c78 6322 2c20 226f 7065 6e76 7a22 2c20 lxc", "openvz", │ │ │ -001c0810: 2270 6f64 6d61 6e22 2c0a 2020 2020 2263 "podman",. "c │ │ │ -001c0820: 6f6e 7461 696e 6572 225d 2029 2029 0a20 ontainer"] ) ). │ │ │ -001c0830: 202d 2027 222f 7661 7222 2069 6e20 616e - '"/var" in an │ │ │ -001c0840: 7369 626c 655f 6d6f 756e 7473 207c 206d sible_mounts | m │ │ │ -001c0850: 6170 2861 7474 7269 6275 7465 3d22 6d6f ap(attribute="mo │ │ │ -001c0860: 756e 7422 2920 7c20 6c69 7374 270a 2020 unt") | list'. │ │ │ -001c0870: 2d20 6d6f 756e 745f 696e 666f 2069 7320 - mount_info is │ │ │ -001c0880: 6465 6669 6e65 640a 2020 2d20 2864 6576 defined. - (dev │ │ │ -001c0890: 6963 655f 6e61 6d65 2e73 7464 6f75 7420 ice_name.stdout │ │ │ -001c08a0: 6973 2064 6566 696e 6564 2061 6e64 2028 is defined and ( │ │ │ -001c08b0: 6465 7669 6365 5f6e 616d 652e 7374 646f device_name.stdo │ │ │ -001c08c0: 7574 207c 206c 656e 6774 6820 2667 743b ut | length > │ │ │ -001c08d0: 2030 2929 206f 7220 2822 2d2d 6673 7461 0)) or ("--fsta │ │ │ -001c08e0: 6222 0a20 2020 207c 206c 656e 6774 6820 b". | length │ │ │ -001c08f0: 3d3d 2030 290a 2020 7461 6773 3a0a 2020 == 0). tags:. │ │ │ -001c0900: 2d20 636f 6e66 6967 7572 655f 7374 7261 - configure_stra │ │ │ -001c0910: 7465 6779 0a20 202d 2068 6967 685f 6469 tegy. - high_di │ │ │ -001c0920: 7372 7570 7469 6f6e 0a20 202d 206c 6f77 sruption. - low │ │ │ -001c0930: 5f63 6f6d 706c 6578 6974 790a 2020 2d20 _complexity. - │ │ │ -001c0940: 6d65 6469 756d 5f73 6576 6572 6974 790a medium_severity. │ │ │ -001c0950: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e - mount_option │ │ │ -001c0960: 5f76 6172 5f6e 6f73 7569 640a 2020 2d20 _var_nosuid. - │ │ │ -001c0970: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564 no_reboot_needed │ │ │ -001c0980: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f .Remediation She │ │ │ -001c0a40: 6c6c 2073 6372 6970 7420 e287 b23c 2f61 ll script ...

# Remediation i
│ │ │ -001c0b10: 7320 6170 706c 6963 6162 6c65 206f 6e6c  s applicable onl
│ │ │ -001c0b20: 7920 696e 2063 6572 7461 696e 2070 6c61  y in certain pla
│ │ │ -001c0b30: 7466 6f72 6d73 0a69 6620 2820 2120 2820  tforms.if ( ! ( 
│ │ │ -001c0b40: 7b20 7270 6d20 2d2d 7175 6965 7420 2d71  { rpm --quiet -q
│ │ │ -001c0b50: 206b 6572 6e65 6c20 3b7d 2026 616d 703b   kernel ;} &
│ │ │ -001c0b60: 2661 6d70 3b20 7b20 7270 6d20 2d2d 7175  & { rpm --qu
│ │ │ -001c0b70: 6965 7420 2d71 2062 6f6f 7463 203b 7d20  iet -q bootc ;} 
│ │ │ -001c0b80: 2661 6d70 3b26 616d 703b 207b 2021 2072  && { ! r
│ │ │ -001c0b90: 706d 202d 2d71 7569 6574 202d 7120 6f70  pm --quiet -q op
│ │ │ -001c0ba0: 656e 7368 6966 742d 6b75 6265 6c65 7420  enshift-kubelet 
│ │ │ -001c0bb0: 3b7d 2026 616d 703b 2661 6d70 3b20 285b  ;} && ([
│ │ │ -001c0bc0: 202d 6620 2f72 756e 2f6f 7374 7265 652d   -f /run/ostree-
│ │ │ -001c0bd0: 626f 6f74 6564 205d 207c 7c20 5b20 2d4c  booted ] || [ -L
│ │ │ -001c0be0: 202f 6f73 7472 6565 205d 2920 2920 2661   /ostree ]) ) &a
│ │ │ -001c0bf0: 6d70 3b26 616d 703b 2021 2028 205b 202d  mp;& ! ( [ -
│ │ │ -001c0c00: 6620 2f2e 646f 636b 6572 656e 7620 5d20  f /.dockerenv ] 
│ │ │ -001c0c10: 7c7c 205b 202d 6620 2f72 756e 2f2e 636f  || [ -f /run/.co
│ │ │ -001c0c20: 6e74 6169 6e65 7265 6e76 205d 2029 2029  ntainerenv ] ) )
│ │ │ -001c0c30: 2026 616d 703b 2661 6d70 3b20 7b20 2820   && { ( 
│ │ │ -001c0c40: 6669 6e64 6d6e 7420 2d2d 6b65 726e 656c  findmnt --kernel
│ │ │ -001c0c50: 2022 2f76 6172 2220 2667 743b 202f 6465   "/var" > /de
│ │ │ -001c0c60: 762f 6e75 6c6c 207c 7c20 6669 6e64 6d6e  v/null || findmn
│ │ │ -001c0c70: 7420 2d2d 6673 7461 6220 222f 7661 7222  t --fstab "/var"
│ │ │ -001c0c80: 2026 6774 3b20 2f64 6576 2f6e 756c 6c20   > /dev/null 
│ │ │ -001c0c90: 293b 207d 3b20 7468 656e 0a0a 6675 6e63  ); }; then..func
│ │ │ -001c0ca0: 7469 6f6e 2070 6572 666f 726d 5f72 656d  tion perform_rem
│ │ │ -001c0cb0: 6564 6961 7469 6f6e 207b 0a0a 2020 2020  ediation {..    
│ │ │ -001c0cc0: 0a20 2020 2020 2020 2023 2074 6865 206d  .        # the m
│ │ │ -001c0cd0: 6f75 6e74 2070 6f69 6e74 202f 7661 7220  ount point /var 
│ │ │ -001c0ce0: 6861 7320 746f 2062 6520 6465 6669 6e65  has to be define
│ │ │ -001c0cf0: 6420 696e 202f 6574 632f 6673 7461 620a  d in /etc/fstab.
│ │ │ -001c0d00: 2020 2020 2020 2020 2320 6265 666f 7265          # before
│ │ │ -001c0d10: 2074 6869 7320 7265 6d65 6469 6174 696f   this remediatio
│ │ │ -001c0d20: 6e20 6361 6e20 6265 2065 7865 6375 7465  n can be execute
│ │ │ -001c0d30: 642e 2049 6e20 6361 7365 2069 7420 6973  d. In case it is
│ │ │ -001c0d40: 206e 6f74 2064 6566 696e 6564 2c20 7468   not defined, th
│ │ │ -001c0d50: 650a 2020 2020 2020 2020 2320 7265 6d65  e.        # reme
│ │ │ -001c0d60: 6469 6174 696f 6e20 6162 6f72 7473 2061  diation aborts a
│ │ │ -001c0d70: 6e64 206e 6f20 6368 616e 6765 7320 7265  nd no changes re
│ │ │ -001c0d80: 6761 7264 696e 6720 7468 6520 6d6f 756e  garding the moun
│ │ │ -001c0d90: 7420 706f 696e 7420 6172 6520 646f 6e65  t point are done
│ │ │ -001c0da0: 2e0a 2020 2020 2020 2020 6d6f 756e 745f  ..        mount_
│ │ │ -001c0db0: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ -001c0dc0: 7870 3d22 2428 7072 696e 7466 2022 5e5b  xp="$(printf "^[
│ │ │ -001c0dd0: 5b3a 7370 6163 653a 5d5d 2a5b 5e23 5d2e  [:space:]]*[^#].
│ │ │ -001c0de0: 2a5b 5b3a 7370 6163 653a 5d5d 2573 5b5b  *[[:space:]]%s[[
│ │ │ -001c0df0: 3a73 7061 6365 3a5d 5d22 2022 2f76 6172  :space:]]" "/var
│ │ │ -001c0e00: 2229 220a 0a20 2020 2067 7265 7020 2224  ")"..    grep "$
│ │ │ -001c0e10: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ -001c0e20: 685f 7265 6765 7870 2220 2d71 202f 6574  h_regexp" -q /et
│ │ │ -001c0e30: 632f 6673 7461 6220 5c0a 2020 2020 2020  c/fstab \.      
│ │ │ -001c0e40: 2020 7c7c 207b 2065 6368 6f20 2254 6865    || { echo "The
│ │ │ -001c0e50: 206d 6f75 6e74 2070 6f69 6e74 2027 2f76   mount point '/v
│ │ │ -001c0e60: 6172 2720 6973 206e 6f74 2065 7665 6e20  ar' is not even 
│ │ │ -001c0e70: 696e 202f 6574 632f 6673 7461 622c 2073  in /etc/fstab, s
│ │ │ -001c0e80: 6f20 7765 2063 616e 2774 2073 6574 2075  o we can't set u
│ │ │ -001c0e90: 7020 6d6f 756e 7420 6f70 7469 6f6e 7322  p mount options"
│ │ │ -001c0ea0: 2026 6774 3b26 616d 703b 323b 0a20 2020   >&2;.   
│ │ │ -001c0eb0: 2020 2020 2020 2020 2020 2020 2065 6368               ech
│ │ │ -001c0ec0: 6f20 224e 6f74 2072 656d 6564 6961 7469  o "Not remediati
│ │ │ -001c0ed0: 6e67 2c20 6265 6361 7573 6520 7468 6572  ng, because ther
│ │ │ -001c0ee0: 6520 6973 206e 6f20 7265 636f 7264 206f  e is no record o
│ │ │ -001c0ef0: 6620 2f76 6172 2069 6e20 2f65 7463 2f66  f /var in /etc/f
│ │ │ -001c0f00: 7374 6162 2220 2667 743b 2661 6d70 3b32  stab" >&2
│ │ │ -001c0f10: 3b20 7265 7475 726e 2031 3b20 7d0a 2020  ; return 1; }.  
│ │ │ -001c0f20: 2020 0a0a 0a20 2020 206d 6f75 6e74 5f70    ...    mount_p
│ │ │ -001c0f30: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ -001c0f40: 703d 2224 2870 7269 6e74 6620 225e 5b5b  p="$(printf "^[[
│ │ │ -001c0f50: 3a73 7061 6365 3a5d 5d2a 5b5e 235d 2e2a  :space:]]*[^#].*
│ │ │ -001c0f60: 5b5b 3a73 7061 6365 3a5d 5d25 735b 5b3a  [[:space:]]%s[[:
│ │ │ -001c0f70: 7370 6163 653a 5d5d 2220 2f76 6172 2922  space:]]" /var)"
│ │ │ -001c0f80: 0a0a 2020 2020 2320 4966 2074 6865 206d  ..    # If the m
│ │ │ -001c0f90: 6f75 6e74 2070 6f69 6e74 2069 7320 6e6f  ount point is no
│ │ │ -001c0fa0: 7420 696e 202f 6574 632f 6673 7461 622c  t in /etc/fstab,
│ │ │ -001c0fb0: 2067 6574 2070 7265 7669 6f75 7320 6d6f   get previous mo
│ │ │ -001c0fc0: 756e 7420 6f70 7469 6f6e 7320 6672 6f6d  unt options from
│ │ │ -001c0fd0: 202f 6574 632f 6d74 6162 0a20 2020 2069   /etc/mtab.    i
│ │ │ -001c0fe0: 6620 2120 6772 6570 202d 7120 2224 6d6f  f ! grep -q "$mo
│ │ │ -001c0ff0: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ -001c1000: 7265 6765 7870 2220 2f65 7463 2f66 7374  regexp" /etc/fst
│ │ │ -001c1010: 6162 3b20 7468 656e 0a20 2020 2020 2020  ab; then.       
│ │ │ -001c1020: 2023 2072 756e 7469 6d65 206f 7074 7320   # runtime opts 
│ │ │ -001c1030: 7769 7468 6f75 7420 736f 6d65 2061 7574  without some aut
│ │ │ -001c1040: 6f6d 6174 6963 206b 6572 6e65 6c2f 7573  omatic kernel/us
│ │ │ -001c1050: 6572 7370 6163 652d 6164 6465 6420 6465  erspace-added de
│ │ │ -001c1060: 6661 756c 7473 0a20 2020 2020 2020 2070  faults.        p
│ │ │ -001c1070: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ -001c1080: 7473 3d24 2867 7265 7020 2224 6d6f 756e  ts=$(grep "$moun
│ │ │ -001c1090: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ -001c10a0: 6765 7870 2220 2f65 7463 2f6d 7461 6220  gexp" /etc/mtab 
│ │ │ -001c10b0: 7c20 6865 6164 202d 3120 7c20 2061 776b  | head -1 |  awk
│ │ │ -001c10c0: 2027 7b70 7269 6e74 2024 347d 2720 5c0a   '{print $4}' \.
│ │ │ -001c10d0: 2020 2020 2020 2020 2020 2020 2020 2020                  
│ │ │ -001c10e0: 2020 2020 7c20 7365 6420 2d45 2022 732f      | sed -E "s/
│ │ │ -001c10f0: 2872 777c 6465 6661 756c 7473 7c73 6563  (rw|defaults|sec
│ │ │ -001c1100: 6c61 6265 6c7c 6e6f 7375 6964 2928 2c7c  label|nosuid)(,|
│ │ │ -001c1110: 2429 2f2f 673b 732f 2c24 2f2f 2229 0a20  $)//g;s/,$//"). 
│ │ │ -001c1120: 2020 2020 2020 205b 2022 2470 7265 7669         [ "$previ
│ │ │ -001c1130: 6f75 735f 6d6f 756e 745f 6f70 7473 2220  ous_mount_opts" 
│ │ │ -001c1140: 5d20 2661 6d70 3b26 616d 703b 2070 7265  ] && pre
│ │ │ -001c1150: 7669 6f75 735f 6d6f 756e 745f 6f70 7473  vious_mount_opts
│ │ │ -001c1160: 2b3d 222c 220a 2020 2020 2020 2020 2320  +=",".        # 
│ │ │ -001c1170: 496e 2069 736f 3936 3630 2066 696c 6573  In iso9660 files
│ │ │ -001c1180: 7973 7465 6d73 206d 7461 6220 636f 756c  ystems mtab coul
│ │ │ -001c1190: 6420 6465 7363 7269 6265 2061 2022 626c  d describe a "bl
│ │ │ -001c11a0: 6f63 6b73 697a 6522 2076 616c 7565 2c20  ocksize" value, 
│ │ │ -001c11b0: 7468 6973 2073 686f 756c 6420 6265 2072  this should be r
│ │ │ -001c11c0: 6566 6c65 6374 6564 2069 6e0a 2020 2020  eflected in.    
│ │ │ -001c11d0: 2020 2020 2320 6673 7461 6220 6173 2022      # fstab as "
│ │ │ -001c11e0: 626c 6f63 6b22 2e20 2054 6865 206e 6578  block".  The nex
│ │ │ -001c11f0: 7420 7661 7269 6162 6c65 2069 7320 746f  t variable is to
│ │ │ -001c1200: 2073 6174 6973 6679 2073 6865 6c6c 6368   satisfy shellch
│ │ │ -001c1210: 6563 6b20 5343 3230 3530 2e0a 2020 2020  eck SC2050..    
│ │ │ -001c1220: 2020 2020 6673 5f74 7970 653d 2222 0a20      fs_type="". 
│ │ │ -001c1230: 2020 2020 2020 2069 6620 5b20 2022 2466         if [  "$f
│ │ │ -001c1240: 735f 7479 7065 2220 3d3d 2022 6973 6f39  s_type" == "iso9
│ │ │ -001c1250: 3636 3022 205d 203b 2074 6865 6e0a 2020  660" ] ; then.  
│ │ │ -001c1260: 2020 2020 2020 2020 2020 7072 6576 696f            previo
│ │ │ -001c1270: 7573 5f6d 6f75 6e74 5f6f 7074 733d 2428  us_mount_opts=$(
│ │ │ -001c1280: 7365 6420 2773 2f62 6c6f 636b 7369 7a65  sed 's/blocksize
│ │ │ -001c1290: 3d2f 626c 6f63 6b3d 2f27 2026 6c74 3b26  =/block=/' <&
│ │ │ -001c12a0: 6c74 3b26 6c74 3b20 2224 7072 6576 696f  lt;< "$previo
│ │ │ -001c12b0: 7573 5f6d 6f75 6e74 5f6f 7074 7322 290a  us_mount_opts").
│ │ │ -001c12c0: 2020 2020 2020 2020 6669 0a20 2020 2020          fi.     
│ │ │ -001c12d0: 2020 2065 6368 6f20 2220 2f76 6172 2020     echo " /var  
│ │ │ -001c12e0: 6465 6661 756c 7473 2c24 7b70 7265 7669  defaults,${previ
│ │ │ -001c12f0: 6f75 735f 6d6f 756e 745f 6f70 7473 7d6e  ous_mount_opts}n
│ │ │ -001c1300: 6f73 7569 6420 3020 3022 2026 6774 3b26  osuid 0 0" >&
│ │ │ -001c1310: 6774 3b20 2f65 7463 2f66 7374 6162 0a20  gt; /etc/fstab. 
│ │ │ -001c1320: 2020 2023 2049 6620 7468 6520 6d6f 756e     # If the moun
│ │ │ -001c1330: 745f 6f70 7420 6f70 7469 6f6e 2069 7320  t_opt option is 
│ │ │ -001c1340: 6e6f 7420 616c 7265 6164 7920 696e 2074  not already in t
│ │ │ -001c1350: 6865 206d 6f75 6e74 2070 6f69 6e74 2773  he mount point's
│ │ │ -001c1360: 202f 6574 632f 6673 7461 6220 656e 7472   /etc/fstab entr
│ │ │ -001c1370: 792c 2061 6464 2069 740a 2020 2020 656c  y, add it.    el
│ │ │ -001c1380: 6966 2021 2067 7265 7020 2224 6d6f 756e  if ! grep "$moun
│ │ │ -001c1390: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ -001c13a0: 6765 7870 2220 2f65 7463 2f66 7374 6162  gexp" /etc/fstab
│ │ │ -001c13b0: 207c 2067 7265 7020 2d71 2022 6e6f 7375   | grep -q "nosu
│ │ │ -001c13c0: 6964 223b 2074 6865 6e0a 2020 2020 2020  id"; then.      
│ │ │ -001c13d0: 2020 7072 6576 696f 7573 5f6d 6f75 6e74    previous_mount
│ │ │ -001c13e0: 5f6f 7074 733d 2428 6772 6570 2022 246d  _opts=$(grep "$m
│ │ │ -001c13f0: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ -001c1400: 5f72 6567 6578 7022 202f 6574 632f 6673  _regexp" /etc/fs
│ │ │ -001c1410: 7461 6220 7c20 6177 6b20 277b 7072 696e  tab | awk '{prin
│ │ │ -001c1420: 7420 2434 7d27 290a 2020 2020 2020 2020  t $4}').        
│ │ │ -001c1430: 7365 6420 2d69 2022 737c 5c28 247b 6d6f  sed -i "s|\(${mo
│ │ │ -001c1440: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ -001c1450: 7265 6765 7870 7d2e 2a24 7b70 7265 7669  regexp}.*${previ
│ │ │ -001c1460: 6f75 735f 6d6f 756e 745f 6f70 7473 7d5c  ous_mount_opts}\
│ │ │ -001c1470: 297c 5c31 2c6e 6f73 7569 647c 2220 2f65  )|\1,nosuid|" /e
│ │ │ -001c1480: 7463 2f66 7374 6162 0a20 2020 2066 690a  tc/fstab.    fi.
│ │ │ -001c1490: 0a0a 2020 2020 6966 206d 6b64 6972 202d  ..    if mkdir -
│ │ │ -001c14a0: 7020 222f 7661 7222 3b20 7468 656e 0a20  p "/var"; then. 
│ │ │ -001c14b0: 2020 2020 2020 2069 6620 6d6f 756e 7470         if mountp
│ │ │ -001c14c0: 6f69 6e74 202d 7120 222f 7661 7222 3b20  oint -q "/var"; 
│ │ │ -001c14d0: 7468 656e 0a20 2020 2020 2020 2020 2020  then.           
│ │ │ -001c14e0: 206d 6f75 6e74 202d 6f20 7265 6d6f 756e   mount -o remoun
│ │ │ -001c14f0: 7420 2d2d 7461 7267 6574 2022 2f76 6172  t --target "/var
│ │ │ -001c1500: 220a 2020 2020 2020 2020 6669 0a20 2020  ".        fi.   
│ │ │ -001c1510: 2066 690a 7d0a 0a70 6572 666f 726d 5f72   fi.}..perform_r
│ │ │ -001c1520: 656d 6564 6961 7469 6f6e 0a0a 656c 7365  emediation..else
│ │ │ -001c1530: 0a20 2020 2026 6774 3b26 616d 703b 3220  .    >&2 
│ │ │ -001c1540: 6563 686f 2027 5265 6d65 6469 6174 696f  echo 'Remediatio
│ │ │ -001c1550: 6e20 6973 206e 6f74 2061 7070 6c69 6361  n is not applica
│ │ │ -001c1560: 626c 652c 206e 6f74 6869 6e67 2077 6173  ble, nothing was
│ │ │ -001c1570: 2064 6f6e 6527 0a66 690a 3c2f 636f 6465   done'.fi.
R │ │ │ -001c0ad0: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -001c0ae0: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c2f alse
< │ │ │ +001bf400: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ +001bf420: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr> │ │ │ +001bf470: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472
low
Disr │ │ │ +001bf430: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +001bf440: 6869 6768 3c2f 7464 3e3c 2f74 723e 3c74 high
Reboot:false
Str │ │ │ +001bf480: 6174 6567 793a 3c2f 7468 3e3c 7464 3e63 ategy:c │ │ │ +001bf490: 6f6e 6669 6775 7265 3c2f 7464 3e3c 2f74 onfigure
<
│ │ │ +001bf4b0: 636f 6465 3e2d 206e 616d 653a 2047 6174  code>- name: Gat
│ │ │ +001bf4c0: 6865 7220 7468 6520 7061 636b 6167 6520  her the package 
│ │ │ +001bf4d0: 6661 6374 730a 2020 7061 636b 6167 655f  facts.  package_
│ │ │ +001bf4e0: 6661 6374 733a 0a20 2020 206d 616e 6167  facts:.    manag
│ │ │ +001bf4f0: 6572 3a20 6175 746f 0a20 2074 6167 733a  er: auto.  tags:
│ │ │ +001bf500: 0a20 202d 2063 6f6e 6669 6775 7265 5f73  .  - configure_s
│ │ │ +001bf510: 7472 6174 6567 790a 2020 2d20 6869 6768  trategy.  - high
│ │ │ +001bf520: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +001bf530: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ +001bf540: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ +001bf550: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074  ty.  - mount_opt
│ │ │ +001bf560: 696f 6e5f 7661 725f 6e6f 7375 6964 0a20  ion_var_nosuid. 
│ │ │ +001bf570: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ +001bf580: 6465 640a 0a2d 206e 616d 653a 2027 4164  ded..- name: 'Ad
│ │ │ +001bf590: 6420 6e6f 7375 6964 204f 7074 696f 6e20  d nosuid Option 
│ │ │ +001bf5a0: 746f 202f 7661 723a 2043 6865 636b 2069  to /var: Check i
│ │ │ +001bf5b0: 6e66 6f72 6d61 7469 6f6e 2061 7373 6f63  nformation assoc
│ │ │ +001bf5c0: 6961 7465 6420 746f 206d 6f75 6e74 706f  iated to mountpo
│ │ │ +001bf5d0: 696e 7427 0a20 2061 6e73 6962 6c65 2e62  int'.  ansible.b
│ │ │ +001bf5e0: 7569 6c74 696e 2e63 6f6d 6d61 6e64 3a20  uiltin.command: 
│ │ │ +001bf5f0: 6669 6e64 6d6e 7420 2d2d 6673 7461 6220  findmnt --fstab 
│ │ │ +001bf600: 272f 7661 7227 0a20 2072 6567 6973 7465  '/var'.  registe
│ │ │ +001bf610: 723a 2064 6576 6963 655f 6e61 6d65 0a20  r: device_name. 
│ │ │ +001bf620: 2066 6169 6c65 645f 7768 656e 3a20 6465   failed_when: de
│ │ │ +001bf630: 7669 6365 5f6e 616d 652e 7263 2026 6774  vice_name.rc >
│ │ │ +001bf640: 3b20 310a 2020 6368 616e 6765 645f 7768  ; 1.  changed_wh
│ │ │ +001bf650: 656e 3a20 6661 6c73 650a 2020 6368 6563  en: false.  chec
│ │ │ +001bf660: 6b5f 6d6f 6465 3a20 6661 6c73 650a 2020  k_mode: false.  
│ │ │ +001bf670: 7768 656e 3a0a 2020 2d20 2820 6e6f 7420  when:.  - ( not 
│ │ │ +001bf680: 2820 226b 6572 6e65 6c22 2069 6e20 616e  ( "kernel" in an
│ │ │ +001bf690: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001bf6a0: 6167 6573 2061 6e64 2022 626f 6f74 6322  ages and "bootc"
│ │ │ +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 206e 6f74 2022 6f70 656e 7368 6966  nd not "openshif
│ │ │ +001bf6e0: 742d 6b75 6265 6c65 7422 2069 6e20 616e  t-kubelet" in an
│ │ │ +001bf6f0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001bf700: 6167 6573 2061 6e64 2022 6f73 7472 6565  ages and "ostree
│ │ │ +001bf710: 2220 696e 2061 6e73 6962 6c65 5f70 726f  " in ansible_pro
│ │ │ +001bf720: 635f 636d 646c 696e 650a 2020 2020 2920  c_cmdline.    ) 
│ │ │ +001bf730: 616e 6420 6e6f 7420 2820 616e 7369 626c  and not ( ansibl
│ │ │ +001bf740: 655f 7669 7274 7561 6c69 7a61 7469 6f6e  e_virtualization
│ │ │ +001bf750: 5f74 7970 6520 696e 205b 2264 6f63 6b65  _type in ["docke
│ │ │ +001bf760: 7222 2c20 226c 7863 222c 2022 6f70 656e  r", "lxc", "open
│ │ │ +001bf770: 767a 222c 2022 706f 646d 616e 222c 0a20  vz", "podman",. 
│ │ │ +001bf780: 2020 2022 636f 6e74 6169 6e65 7222 5d20     "container"] 
│ │ │ +001bf790: 2920 290a 2020 2d20 2722 2f76 6172 2220  ) ).  - '"/var" 
│ │ │ +001bf7a0: 696e 2061 6e73 6962 6c65 5f6d 6f75 6e74  in ansible_mount
│ │ │ +001bf7b0: 7320 7c20 6d61 7028 6174 7472 6962 7574  s | map(attribut
│ │ │ +001bf7c0: 653d 226d 6f75 6e74 2229 207c 206c 6973  e="mount") | lis
│ │ │ +001bf7d0: 7427 0a20 2074 6167 733a 0a20 202d 2063  t'.  tags:.  - c
│ │ │ +001bf7e0: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ +001bf7f0: 790a 2020 2d20 6869 6768 5f64 6973 7275  y.  - high_disru
│ │ │ +001bf800: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f  ption.  - low_co
│ │ │ +001bf810: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ +001bf820: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ +001bf830: 206d 6f75 6e74 5f6f 7074 696f 6e5f 7661   mount_option_va
│ │ │ +001bf840: 725f 6e6f 7375 6964 0a20 202d 206e 6f5f  r_nosuid.  - no_
│ │ │ +001bf850: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ +001bf860: 206e 616d 653a 2027 4164 6420 6e6f 7375   name: 'Add nosu
│ │ │ +001bf870: 6964 204f 7074 696f 6e20 746f 202f 7661  id Option to /va
│ │ │ +001bf880: 723a 2043 7265 6174 6520 6d6f 756e 745f  r: Create mount_
│ │ │ +001bf890: 696e 666f 2064 6963 7469 6f6e 6172 7920  info dictionary 
│ │ │ +001bf8a0: 7661 7269 6162 6c65 270a 2020 7365 745f  variable'.  set_
│ │ │ +001bf8b0: 6661 6374 3a0a 2020 2020 6d6f 756e 745f  fact:.    mount_
│ │ │ +001bf8c0: 696e 666f 3a20 277b 7b20 6d6f 756e 745f  info: '{{ mount_
│ │ │ +001bf8d0: 696e 666f 7c64 6566 6175 6c74 287b 7d29  info|default({})
│ │ │ +001bf8e0: 7c63 6f6d 6269 6e65 287b 6974 656d 2e30  |combine({item.0
│ │ │ +001bf8f0: 3a20 6974 656d 2e31 7d29 207d 7d27 0a20  : item.1}) }}'. 
│ │ │ +001bf900: 2077 6974 685f 746f 6765 7468 6572 3a0a   with_together:.
│ │ │ +001bf910: 2020 2d20 277b 7b20 6465 7669 6365 5f6e    - '{{ device_n
│ │ │ +001bf920: 616d 652e 7374 646f 7574 5f6c 696e 6573  ame.stdout_lines
│ │ │ +001bf930: 5b30 5d2e 7370 6c69 7428 2920 7c20 6d61  [0].split() | ma
│ │ │ +001bf940: 7028 2727 6c6f 7765 7227 2729 207c 206c  p(''lower'') | l
│ │ │ +001bf950: 6973 7420 7d7d 270a 2020 2d20 277b 7b20  ist }}'.  - '{{ 
│ │ │ +001bf960: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ +001bf970: 7574 5f6c 696e 6573 5b31 5d2e 7370 6c69  ut_lines[1].spli
│ │ │ +001bf980: 7428 2920 7c20 6c69 7374 207d 7d27 0a20  t() | list }}'. 
│ │ │ +001bf990: 2077 6865 6e3a 0a20 202d 2028 206e 6f74   when:.  - ( not
│ │ │ +001bf9a0: 2028 2022 6b65 726e 656c 2220 696e 2061   ( "kernel" in a
│ │ │ +001bf9b0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +001bf9c0: 6b61 6765 7320 616e 6420 2262 6f6f 7463  kages and "bootc
│ │ │ +001bf9d0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +001bf9e0: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ +001bf9f0: 616e 6420 6e6f 7420 226f 7065 6e73 6869  and not "openshi
│ │ │ +001bfa00: 6674 2d6b 7562 656c 6574 2220 696e 2061  ft-kubelet" in a
│ │ │ +001bfa10: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +001bfa20: 6b61 6765 7320 616e 6420 226f 7374 7265  kages and "ostre
│ │ │ +001bfa30: 6522 2069 6e20 616e 7369 626c 655f 7072  e" in ansible_pr
│ │ │ +001bfa40: 6f63 5f63 6d64 6c69 6e65 0a20 2020 2029  oc_cmdline.    )
│ │ │ +001bfa50: 2061 6e64 206e 6f74 2028 2061 6e73 6962   and not ( ansib
│ │ │ +001bfa60: 6c65 5f76 6972 7475 616c 697a 6174 696f  le_virtualizatio
│ │ │ +001bfa70: 6e5f 7479 7065 2069 6e20 5b22 646f 636b  n_type in ["dock
│ │ │ +001bfa80: 6572 222c 2022 6c78 6322 2c20 226f 7065  er", "lxc", "ope
│ │ │ +001bfa90: 6e76 7a22 2c20 2270 6f64 6d61 6e22 2c0a  nvz", "podman",.
│ │ │ +001bfaa0: 2020 2020 2263 6f6e 7461 696e 6572 225d      "container"]
│ │ │ +001bfab0: 2029 2029 0a20 202d 2027 222f 7661 7222   ) ).  - '"/var"
│ │ │ +001bfac0: 2069 6e20 616e 7369 626c 655f 6d6f 756e   in ansible_moun
│ │ │ +001bfad0: 7473 207c 206d 6170 2861 7474 7269 6275  ts | map(attribu
│ │ │ +001bfae0: 7465 3d22 6d6f 756e 7422 2920 7c20 6c69  te="mount") | li
│ │ │ +001bfaf0: 7374 270a 2020 2d20 6465 7669 6365 5f6e  st'.  - device_n
│ │ │ +001bfb00: 616d 652e 7374 646f 7574 2069 7320 6465  ame.stdout is de
│ │ │ +001bfb10: 6669 6e65 6420 616e 6420 6465 7669 6365  fined and device
│ │ │ +001bfb20: 5f6e 616d 652e 7374 646f 7574 5f6c 696e  _name.stdout_lin
│ │ │ +001bfb30: 6573 2069 7320 6465 6669 6e65 640a 2020  es is defined.  
│ │ │ +001bfb40: 2d20 2864 6576 6963 655f 6e61 6d65 2e73  - (device_name.s
│ │ │ +001bfb50: 7464 6f75 7420 7c20 6c65 6e67 7468 2026  tdout | length &
│ │ │ +001bfb60: 6774 3b20 3029 0a20 2074 6167 733a 0a20  gt; 0).  tags:. 
│ │ │ +001bfb70: 202d 2063 6f6e 6669 6775 7265 5f73 7472   - configure_str
│ │ │ +001bfb80: 6174 6567 790a 2020 2d20 6869 6768 5f64  ategy.  - high_d
│ │ │ +001bfb90: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ +001bfba0: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ +001bfbb0: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ +001bfbc0: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f  .  - mount_optio
│ │ │ +001bfbd0: 6e5f 7661 725f 6e6f 7375 6964 0a20 202d  n_var_nosuid.  -
│ │ │ +001bfbe0: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ +001bfbf0: 640a 0a2d 206e 616d 653a 2027 4164 6420  d..- name: 'Add 
│ │ │ +001bfc00: 6e6f 7375 6964 204f 7074 696f 6e20 746f  nosuid Option to
│ │ │ +001bfc10: 202f 7661 723a 2049 6620 2f76 6172 206e   /var: If /var n
│ │ │ +001bfc20: 6f74 206d 6f75 6e74 6564 2c20 6372 6166  ot mounted, craf
│ │ │ +001bfc30: 7420 6d6f 756e 745f 696e 666f 206d 616e  t mount_info man
│ │ │ +001bfc40: 7561 6c6c 7927 0a20 2073 6574 5f66 6163  ually'.  set_fac
│ │ │ +001bfc50: 743a 0a20 2020 206d 6f75 6e74 5f69 6e66  t:.    mount_inf
│ │ │ +001bfc60: 6f3a 2027 7b7b 206d 6f75 6e74 5f69 6e66  o: '{{ mount_inf
│ │ │ +001bfc70: 6f7c 6465 6661 756c 7428 7b7d 297c 636f  o|default({})|co
│ │ │ +001bfc80: 6d62 696e 6528 7b69 7465 6d2e 303a 2069  mbine({item.0: i
│ │ │ +001bfc90: 7465 6d2e 317d 2920 7d7d 270a 2020 7769  tem.1}) }}'.  wi
│ │ │ +001bfca0: 7468 5f74 6f67 6574 6865 723a 0a20 202d  th_together:.  -
│ │ │ +001bfcb0: 202d 2074 6172 6765 740a 2020 2020 2d20   - target.    - 
│ │ │ +001bfcc0: 736f 7572 6365 0a20 2020 202d 2066 7374  source.    - fst
│ │ │ +001bfcd0: 7970 650a 2020 2020 2d20 6f70 7469 6f6e  ype.    - option
│ │ │ +001bfce0: 730a 2020 2d20 2d20 2f76 6172 0a20 2020  s.  - - /var.   
│ │ │ +001bfcf0: 202d 2027 270a 2020 2020 2d20 2727 0a20   - ''.    - ''. 
│ │ │ +001bfd00: 2020 202d 2064 6566 6175 6c74 730a 2020     - defaults.  
│ │ │ +001bfd10: 7768 656e 3a0a 2020 2d20 2820 6e6f 7420  when:.  - ( not 
│ │ │ +001bfd20: 2820 226b 6572 6e65 6c22 2069 6e20 616e  ( "kernel" in an
│ │ │ +001bfd30: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001bfd40: 6167 6573 2061 6e64 2022 626f 6f74 6322  ages and "bootc"
│ │ │ +001bfd50: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001bfd60: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ +001bfd70: 6e64 206e 6f74 2022 6f70 656e 7368 6966  nd not "openshif
│ │ │ +001bfd80: 742d 6b75 6265 6c65 7422 2069 6e20 616e  t-kubelet" in an
│ │ │ +001bfd90: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001bfda0: 6167 6573 2061 6e64 2022 6f73 7472 6565  ages and "ostree
│ │ │ +001bfdb0: 2220 696e 2061 6e73 6962 6c65 5f70 726f  " in ansible_pro
│ │ │ +001bfdc0: 635f 636d 646c 696e 650a 2020 2020 2920  c_cmdline.    ) 
│ │ │ +001bfdd0: 616e 6420 6e6f 7420 2820 616e 7369 626c  and not ( ansibl
│ │ │ +001bfde0: 655f 7669 7274 7561 6c69 7a61 7469 6f6e  e_virtualization
│ │ │ +001bfdf0: 5f74 7970 6520 696e 205b 2264 6f63 6b65  _type in ["docke
│ │ │ +001bfe00: 7222 2c20 226c 7863 222c 2022 6f70 656e  r", "lxc", "open
│ │ │ +001bfe10: 767a 222c 2022 706f 646d 616e 222c 0a20  vz", "podman",. 
│ │ │ +001bfe20: 2020 2022 636f 6e74 6169 6e65 7222 5d20     "container"] 
│ │ │ +001bfe30: 2920 290a 2020 2d20 2722 2f76 6172 2220  ) ).  - '"/var" 
│ │ │ +001bfe40: 696e 2061 6e73 6962 6c65 5f6d 6f75 6e74  in ansible_mount
│ │ │ +001bfe50: 7320 7c20 6d61 7028 6174 7472 6962 7574  s | map(attribut
│ │ │ +001bfe60: 653d 226d 6f75 6e74 2229 207c 206c 6973  e="mount") | lis
│ │ │ +001bfe70: 7427 0a20 202d 2028 222d 2d66 7374 6162  t'.  - ("--fstab
│ │ │ +001bfe80: 2220 7c20 6c65 6e67 7468 203d 3d20 3029  " | length == 0)
│ │ │ +001bfe90: 0a20 202d 2064 6576 6963 655f 6e61 6d65  .  - device_name
│ │ │ +001bfea0: 2e73 7464 6f75 7420 6973 2064 6566 696e  .stdout is defin
│ │ │ +001bfeb0: 6564 2061 6e64 2064 6576 6963 655f 6e61  ed and device_na
│ │ │ +001bfec0: 6d65 2e73 7464 6f75 745f 6c69 6e65 7320  me.stdout_lines 
│ │ │ +001bfed0: 6973 2064 6566 696e 6564 0a20 202d 2028  is defined.  - (
│ │ │ +001bfee0: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ +001bfef0: 7574 207c 206c 656e 6774 6820 3d3d 2030  ut | length == 0
│ │ │ +001bff00: 290a 2020 7461 6773 3a0a 2020 2d20 636f  ).  tags:.  - co
│ │ │ +001bff10: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ +001bff20: 0a20 202d 2068 6967 685f 6469 7372 7570  .  - high_disrup
│ │ │ +001bff30: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d  tion.  - low_com
│ │ │ +001bff40: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ +001bff50: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ +001bff60: 6d6f 756e 745f 6f70 7469 6f6e 5f76 6172  mount_option_var
│ │ │ +001bff70: 5f6e 6f73 7569 640a 2020 2d20 6e6f 5f72  _nosuid.  - no_r
│ │ │ +001bff80: 6562 6f6f 745f 6e65 6564 6564 0a0a 2d20  eboot_needed..- 
│ │ │ +001bff90: 6e61 6d65 3a20 2741 6464 206e 6f73 7569  name: 'Add nosui
│ │ │ +001bffa0: 6420 4f70 7469 6f6e 2074 6f20 2f76 6172  d Option to /var
│ │ │ +001bffb0: 3a20 4d61 6b65 2073 7572 6520 6e6f 7375  : Make sure nosu
│ │ │ +001bffc0: 6964 206f 7074 696f 6e20 6973 2070 6172  id option is par
│ │ │ +001bffd0: 7420 6f66 2074 6865 2074 6f20 2f76 6172  t of the to /var
│ │ │ +001bffe0: 0a20 2020 206f 7074 696f 6e73 270a 2020  .    options'.  
│ │ │ +001bfff0: 7365 745f 6661 6374 3a0a 2020 2020 6d6f  set_fact:.    mo
│ │ │ +001c0000: 756e 745f 696e 666f 3a20 277b 7b20 6d6f  unt_info: '{{ mo
│ │ │ +001c0010: 756e 745f 696e 666f 207c 2063 6f6d 6269  unt_info | combi
│ │ │ +001c0020: 6e65 2820 7b27 276f 7074 696f 6e73 2727  ne( {''options''
│ │ │ +001c0030: 3a27 2727 277e 286d 6f75 6e74 5f69 6e66  :''''~(mount_inf
│ │ │ +001c0040: 6f2e 6f70 7469 6f6e 7320 7c0a 2020 2020  o.options |.    
│ │ │ +001c0050: 2020 6465 6661 756c 7428 2727 2727 2929    default(''''))
│ │ │ +001c0060: 7e28 2727 2c27 2720 6966 2028 6d6f 756e  ~('','' if (moun
│ │ │ +001c0070: 745f 696e 666f 2e6f 7074 696f 6e73 207c  t_info.options |
│ │ │ +001c0080: 2064 6566 6175 6c74 2827 2727 2729 2920   default('''')) 
│ │ │ +001c0090: 656c 7365 2027 2727 2729 7e27 276e 6f73  else '''')~''nos
│ │ │ +001c00a0: 7569 6427 270a 2020 2020 2020 7d29 207d  uid''.      }) }
│ │ │ +001c00b0: 7d27 0a20 2077 6865 6e3a 0a20 202d 2028  }'.  when:.  - (
│ │ │ +001c00c0: 206e 6f74 2028 2022 6b65 726e 656c 2220   not ( "kernel" 
│ │ │ +001c00d0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001c00e0: 2e70 6163 6b61 6765 7320 616e 6420 2262  .packages and "b
│ │ │ +001c00f0: 6f6f 7463 2220 696e 2061 6e73 6962 6c65  ootc" in ansible
│ │ │ +001c0100: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ +001c0110: 2020 2020 616e 6420 6e6f 7420 226f 7065      and not "ope
│ │ │ +001c0120: 6e73 6869 6674 2d6b 7562 656c 6574 2220  nshift-kubelet" 
│ │ │ +001c0130: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001c0140: 2e70 6163 6b61 6765 7320 616e 6420 226f  .packages and "o
│ │ │ +001c0150: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ +001c0160: 655f 7072 6f63 5f63 6d64 6c69 6e65 0a20  e_proc_cmdline. 
│ │ │ +001c0170: 2020 2029 2061 6e64 206e 6f74 2028 2061     ) and not ( a
│ │ │ +001c0180: 6e73 6962 6c65 5f76 6972 7475 616c 697a  nsible_virtualiz
│ │ │ +001c0190: 6174 696f 6e5f 7479 7065 2069 6e20 5b22  ation_type in ["
│ │ │ +001c01a0: 646f 636b 6572 222c 2022 6c78 6322 2c20  docker", "lxc", 
│ │ │ +001c01b0: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61  "openvz", "podma
│ │ │ +001c01c0: 6e22 2c0a 2020 2020 2263 6f6e 7461 696e  n",.    "contain
│ │ │ +001c01d0: 6572 225d 2029 2029 0a20 202d 2027 222f  er"] ) ).  - '"/
│ │ │ +001c01e0: 7661 7222 2069 6e20 616e 7369 626c 655f  var" in ansible_
│ │ │ +001c01f0: 6d6f 756e 7473 207c 206d 6170 2861 7474  mounts | map(att
│ │ │ +001c0200: 7269 6275 7465 3d22 6d6f 756e 7422 2920  ribute="mount") 
│ │ │ +001c0210: 7c20 6c69 7374 270a 2020 2d20 6d6f 756e  | list'.  - moun
│ │ │ +001c0220: 745f 696e 666f 2069 7320 6465 6669 6e65  t_info is define
│ │ │ +001c0230: 6420 616e 6420 226e 6f73 7569 6422 206e  d and "nosuid" n
│ │ │ +001c0240: 6f74 2069 6e20 286d 6f75 6e74 5f69 6e66  ot in (mount_inf
│ │ │ +001c0250: 6f2e 6f70 7469 6f6e 7320 7c20 6465 6661  o.options | defa
│ │ │ +001c0260: 756c 7428 2727 2929 0a20 2074 6167 733a  ult('')).  tags:
│ │ │ +001c0270: 0a20 202d 2063 6f6e 6669 6775 7265 5f73  .  - configure_s
│ │ │ +001c0280: 7472 6174 6567 790a 2020 2d20 6869 6768  trategy.  - high
│ │ │ +001c0290: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +001c02a0: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ +001c02b0: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ +001c02c0: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074  ty.  - mount_opt
│ │ │ +001c02d0: 696f 6e5f 7661 725f 6e6f 7375 6964 0a20  ion_var_nosuid. 
│ │ │ +001c02e0: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ +001c02f0: 6465 640a 0a2d 206e 616d 653a 2027 4164  ded..- name: 'Ad
│ │ │ +001c0300: 6420 6e6f 7375 6964 204f 7074 696f 6e20  d nosuid Option 
│ │ │ +001c0310: 746f 202f 7661 723a 2045 6e73 7572 6520  to /var: Ensure 
│ │ │ +001c0320: 2f76 6172 2069 7320 6d6f 756e 7465 6420  /var is mounted 
│ │ │ +001c0330: 7769 7468 206e 6f73 7569 6420 6f70 7469  with nosuid opti
│ │ │ +001c0340: 6f6e 270a 2020 616e 7369 626c 652e 706f  on'.  ansible.po
│ │ │ +001c0350: 7369 782e 6d6f 756e 743a 0a20 2020 2070  six.mount:.    p
│ │ │ +001c0360: 6174 683a 202f 7661 720a 2020 2020 7372  ath: /var.    sr
│ │ │ +001c0370: 633a 2027 7b7b 206d 6f75 6e74 5f69 6e66  c: '{{ mount_inf
│ │ │ +001c0380: 6f2e 736f 7572 6365 207c 2064 6566 6175  o.source | defau
│ │ │ +001c0390: 6c74 2827 2727 2729 207d 7d27 0a20 2020  lt('''') }}'.   
│ │ │ +001c03a0: 206f 7074 733a 2027 7b7b 206d 6f75 6e74   opts: '{{ mount
│ │ │ +001c03b0: 5f69 6e66 6f2e 6f70 7469 6f6e 7320 7c20  _info.options | 
│ │ │ +001c03c0: 6465 6661 756c 7428 2727 2727 2920 7d7d  default('''') }}
│ │ │ +001c03d0: 270a 2020 2020 7374 6174 653a 206d 6f75  '.    state: mou
│ │ │ +001c03e0: 6e74 6564 0a20 2020 2066 7374 7970 653a  nted.    fstype:
│ │ │ +001c03f0: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f2e   '{{ mount_info.
│ │ │ +001c0400: 6673 7479 7065 207c 2064 6566 6175 6c74  fstype | default
│ │ │ +001c0410: 2827 2727 2729 207d 7d27 0a20 2072 6567  ('''') }}'.  reg
│ │ │ +001c0420: 6973 7465 723a 206d 6f75 6e74 5f72 6573  ister: mount_res
│ │ │ +001c0430: 756c 740a 2020 6661 696c 6564 5f77 6865  ult.  failed_whe
│ │ │ +001c0440: 6e3a 0a20 202d 206d 6f75 6e74 5f72 6573  n:.  - mount_res
│ │ │ +001c0450: 756c 7420 6973 2066 6169 6c65 640a 2020  ult is failed.  
│ │ │ +001c0460: 2d20 2727 2774 6172 6765 7420 6973 2062  - '''target is b
│ │ │ +001c0470: 7573 7927 2720 6e6f 7420 696e 2028 6d6f  usy'' not in (mo
│ │ │ +001c0480: 756e 745f 7265 7375 6c74 2e6d 7367 207c  unt_result.msg |
│ │ │ +001c0490: 2064 6566 6175 6c74 2827 2727 2729 2927   default(''''))'
│ │ │ +001c04a0: 0a20 202d 2027 2727 616c 7265 6164 7920  .  - '''already 
│ │ │ +001c04b0: 6d6f 756e 7465 6427 2720 6e6f 7420 696e  mounted'' not in
│ │ │ +001c04c0: 2028 6d6f 756e 745f 7265 7375 6c74 2e6d   (mount_result.m
│ │ │ +001c04d0: 7367 207c 2064 6566 6175 6c74 2827 2727  sg | default('''
│ │ │ +001c04e0: 2729 2927 0a20 2077 6865 6e3a 0a20 202d  '))'.  when:.  -
│ │ │ +001c04f0: 2028 206e 6f74 2028 2022 6b65 726e 656c   ( not ( "kernel
│ │ │ +001c0500: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +001c0510: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ +001c0520: 2262 6f6f 7463 2220 696e 2061 6e73 6962  "bootc" in ansib
│ │ │ +001c0530: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001c0540: 730a 2020 2020 616e 6420 6e6f 7420 226f  s.    and not "o
│ │ │ +001c0550: 7065 6e73 6869 6674 2d6b 7562 656c 6574  penshift-kubelet
│ │ │ +001c0560: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +001c0570: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ +001c0580: 226f 7374 7265 6522 2069 6e20 616e 7369  "ostree" in ansi
│ │ │ +001c0590: 626c 655f 7072 6f63 5f63 6d64 6c69 6e65  ble_proc_cmdline
│ │ │ +001c05a0: 0a20 2020 2029 2061 6e64 206e 6f74 2028  .    ) and not (
│ │ │ +001c05b0: 2061 6e73 6962 6c65 5f76 6972 7475 616c   ansible_virtual
│ │ │ +001c05c0: 697a 6174 696f 6e5f 7479 7065 2069 6e20  ization_type in 
│ │ │ +001c05d0: 5b22 646f 636b 6572 222c 2022 6c78 6322  ["docker", "lxc"
│ │ │ +001c05e0: 2c20 226f 7065 6e76 7a22 2c20 2270 6f64  , "openvz", "pod
│ │ │ +001c05f0: 6d61 6e22 2c0a 2020 2020 2263 6f6e 7461  man",.    "conta
│ │ │ +001c0600: 696e 6572 225d 2029 2029 0a20 202d 2027  iner"] ) ).  - '
│ │ │ +001c0610: 222f 7661 7222 2069 6e20 616e 7369 626c  "/var" in ansibl
│ │ │ +001c0620: 655f 6d6f 756e 7473 207c 206d 6170 2861  e_mounts | map(a
│ │ │ +001c0630: 7474 7269 6275 7465 3d22 6d6f 756e 7422  ttribute="mount"
│ │ │ +001c0640: 2920 7c20 6c69 7374 270a 2020 2d20 6d6f  ) | list'.  - mo
│ │ │ +001c0650: 756e 745f 696e 666f 2069 7320 6465 6669  unt_info is defi
│ │ │ +001c0660: 6e65 640a 2020 2d20 2864 6576 6963 655f  ned.  - (device_
│ │ │ +001c0670: 6e61 6d65 2e73 7464 6f75 7420 6973 2064  name.stdout is d
│ │ │ +001c0680: 6566 696e 6564 2061 6e64 2028 6465 7669  efined and (devi
│ │ │ +001c0690: 6365 5f6e 616d 652e 7374 646f 7574 207c  ce_name.stdout |
│ │ │ +001c06a0: 206c 656e 6774 6820 2667 743b 2030 2929   length > 0))
│ │ │ +001c06b0: 206f 7220 2822 2d2d 6673 7461 6222 0a20   or ("--fstab". 
│ │ │ +001c06c0: 2020 207c 206c 656e 6774 6820 3d3d 2030     | length == 0
│ │ │ +001c06d0: 290a 2020 7461 6773 3a0a 2020 2d20 636f  ).  tags:.  - co
│ │ │ +001c06e0: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ +001c06f0: 0a20 202d 2068 6967 685f 6469 7372 7570  .  - high_disrup
│ │ │ +001c0700: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d  tion.  - low_com
│ │ │ +001c0710: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ +001c0720: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ +001c0730: 6d6f 756e 745f 6f70 7469 6f6e 5f76 6172  mount_option_var
│ │ │ +001c0740: 5f6e 6f73 7569 640a 2020 2d20 6e6f 5f72  _nosuid.  - no_r
│ │ │ +001c0750: 6562 6f6f 745f 6e65 6564 6564 0a3c 2f63  eboot_needed.
│ │ │ +001c0770: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ +001c0810: 6564 6961 7469 6f6e 2053 6865 6c6c 2073 ediation Shell s │ │ │ +001c0820: 6372 6970 7420 e287 b23c 2f61 3e3c 6272 cript ...
# R
│ │ │ +001c08e0: 656d 6564 6961 7469 6f6e 2069 7320 6170  emediation is ap
│ │ │ +001c08f0: 706c 6963 6162 6c65 206f 6e6c 7920 696e  plicable only in
│ │ │ +001c0900: 2063 6572 7461 696e 2070 6c61 7466 6f72   certain platfor
│ │ │ +001c0910: 6d73 0a69 6620 2820 2120 2820 7b20 7270  ms.if ( ! ( { rp
│ │ │ +001c0920: 6d20 2d2d 7175 6965 7420 2d71 206b 6572  m --quiet -q ker
│ │ │ +001c0930: 6e65 6c20 3b7d 2026 616d 703b 2661 6d70  nel ;} &&
│ │ │ +001c0940: 3b20 7b20 7270 6d20 2d2d 7175 6965 7420  ; { rpm --quiet 
│ │ │ +001c0950: 2d71 2062 6f6f 7463 203b 7d20 2661 6d70  -q bootc ;} &
│ │ │ +001c0960: 3b26 616d 703b 207b 2021 2072 706d 202d  ;& { ! rpm -
│ │ │ +001c0970: 2d71 7569 6574 202d 7120 6f70 656e 7368  -quiet -q opensh
│ │ │ +001c0980: 6966 742d 6b75 6265 6c65 7420 3b7d 2026  ift-kubelet ;} &
│ │ │ +001c0990: 616d 703b 2661 6d70 3b20 285b 202d 6620  amp;& ([ -f 
│ │ │ +001c09a0: 2f72 756e 2f6f 7374 7265 652d 626f 6f74  /run/ostree-boot
│ │ │ +001c09b0: 6564 205d 207c 7c20 5b20 2d4c 202f 6f73  ed ] || [ -L /os
│ │ │ +001c09c0: 7472 6565 205d 2920 2920 2661 6d70 3b26  tree ]) ) &&
│ │ │ +001c09d0: 616d 703b 2021 2028 205b 202d 6620 2f2e  amp; ! ( [ -f /.
│ │ │ +001c09e0: 646f 636b 6572 656e 7620 5d20 7c7c 205b  dockerenv ] || [
│ │ │ +001c09f0: 202d 6620 2f72 756e 2f2e 636f 6e74 6169   -f /run/.contai
│ │ │ +001c0a00: 6e65 7265 6e76 205d 2029 2029 2026 616d  nerenv ] ) ) &am
│ │ │ +001c0a10: 703b 2661 6d70 3b20 7b20 2820 6669 6e64  p;& { ( find
│ │ │ +001c0a20: 6d6e 7420 2d2d 6b65 726e 656c 2022 2f76  mnt --kernel "/v
│ │ │ +001c0a30: 6172 2220 2667 743b 202f 6465 762f 6e75  ar" > /dev/nu
│ │ │ +001c0a40: 6c6c 207c 7c20 6669 6e64 6d6e 7420 2d2d  ll || findmnt --
│ │ │ +001c0a50: 6673 7461 6220 222f 7661 7222 2026 6774  fstab "/var" >
│ │ │ +001c0a60: 3b20 2f64 6576 2f6e 756c 6c20 293b 207d  ; /dev/null ); }
│ │ │ +001c0a70: 3b20 7468 656e 0a0a 6675 6e63 7469 6f6e  ; then..function
│ │ │ +001c0a80: 2070 6572 666f 726d 5f72 656d 6564 6961   perform_remedia
│ │ │ +001c0a90: 7469 6f6e 207b 0a0a 2020 2020 0a20 2020  tion {..    .   
│ │ │ +001c0aa0: 2020 2020 2023 2074 6865 206d 6f75 6e74       # the mount
│ │ │ +001c0ab0: 2070 6f69 6e74 202f 7661 7220 6861 7320   point /var has 
│ │ │ +001c0ac0: 746f 2062 6520 6465 6669 6e65 6420 696e  to be defined in
│ │ │ +001c0ad0: 202f 6574 632f 6673 7461 620a 2020 2020   /etc/fstab.    
│ │ │ +001c0ae0: 2020 2020 2320 6265 666f 7265 2074 6869      # before thi
│ │ │ +001c0af0: 7320 7265 6d65 6469 6174 696f 6e20 6361  s remediation ca
│ │ │ +001c0b00: 6e20 6265 2065 7865 6375 7465 642e 2049  n be executed. I
│ │ │ +001c0b10: 6e20 6361 7365 2069 7420 6973 206e 6f74  n case it is not
│ │ │ +001c0b20: 2064 6566 696e 6564 2c20 7468 650a 2020   defined, the.  
│ │ │ +001c0b30: 2020 2020 2020 2320 7265 6d65 6469 6174        # remediat
│ │ │ +001c0b40: 696f 6e20 6162 6f72 7473 2061 6e64 206e  ion aborts and n
│ │ │ +001c0b50: 6f20 6368 616e 6765 7320 7265 6761 7264  o changes regard
│ │ │ +001c0b60: 696e 6720 7468 6520 6d6f 756e 7420 706f  ing the mount po
│ │ │ +001c0b70: 696e 7420 6172 6520 646f 6e65 2e0a 2020  int are done..  
│ │ │ +001c0b80: 2020 2020 2020 6d6f 756e 745f 706f 696e        mount_poin
│ │ │ +001c0b90: 745f 6d61 7463 685f 7265 6765 7870 3d22  t_match_regexp="
│ │ │ +001c0ba0: 2428 7072 696e 7466 2022 5e5b 5b3a 7370  $(printf "^[[:sp
│ │ │ +001c0bb0: 6163 653a 5d5d 2a5b 5e23 5d2e 2a5b 5b3a  ace:]]*[^#].*[[:
│ │ │ +001c0bc0: 7370 6163 653a 5d5d 2573 5b5b 3a73 7061  space:]]%s[[:spa
│ │ │ +001c0bd0: 6365 3a5d 5d22 2022 2f76 6172 2229 220a  ce:]]" "/var")".
│ │ │ +001c0be0: 0a20 2020 2067 7265 7020 2224 6d6f 756e  .    grep "$moun
│ │ │ +001c0bf0: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ +001c0c00: 6765 7870 2220 2d71 202f 6574 632f 6673  gexp" -q /etc/fs
│ │ │ +001c0c10: 7461 6220 5c0a 2020 2020 2020 2020 7c7c  tab \.        ||
│ │ │ +001c0c20: 207b 2065 6368 6f20 2254 6865 206d 6f75   { echo "The mou
│ │ │ +001c0c30: 6e74 2070 6f69 6e74 2027 2f76 6172 2720  nt point '/var' 
│ │ │ +001c0c40: 6973 206e 6f74 2065 7665 6e20 696e 202f  is not even in /
│ │ │ +001c0c50: 6574 632f 6673 7461 622c 2073 6f20 7765  etc/fstab, so we
│ │ │ +001c0c60: 2063 616e 2774 2073 6574 2075 7020 6d6f   can't set up mo
│ │ │ +001c0c70: 756e 7420 6f70 7469 6f6e 7322 2026 6774  unt options" >
│ │ │ +001c0c80: 3b26 616d 703b 323b 0a20 2020 2020 2020  ;&2;.       
│ │ │ +001c0c90: 2020 2020 2020 2020 2065 6368 6f20 224e           echo "N
│ │ │ +001c0ca0: 6f74 2072 656d 6564 6961 7469 6e67 2c20  ot remediating, 
│ │ │ +001c0cb0: 6265 6361 7573 6520 7468 6572 6520 6973  because there is
│ │ │ +001c0cc0: 206e 6f20 7265 636f 7264 206f 6620 2f76   no record of /v
│ │ │ +001c0cd0: 6172 2069 6e20 2f65 7463 2f66 7374 6162  ar in /etc/fstab
│ │ │ +001c0ce0: 2220 2667 743b 2661 6d70 3b32 3b20 7265  " >&2; re
│ │ │ +001c0cf0: 7475 726e 2031 3b20 7d0a 2020 2020 0a0a  turn 1; }.    ..
│ │ │ +001c0d00: 0a20 2020 206d 6f75 6e74 5f70 6f69 6e74  .    mount_point
│ │ │ +001c0d10: 5f6d 6174 6368 5f72 6567 6578 703d 2224  _match_regexp="$
│ │ │ +001c0d20: 2870 7269 6e74 6620 225e 5b5b 3a73 7061  (printf "^[[:spa
│ │ │ +001c0d30: 6365 3a5d 5d2a 5b5e 235d 2e2a 5b5b 3a73  ce:]]*[^#].*[[:s
│ │ │ +001c0d40: 7061 6365 3a5d 5d25 735b 5b3a 7370 6163  pace:]]%s[[:spac
│ │ │ +001c0d50: 653a 5d5d 2220 2f76 6172 2922 0a0a 2020  e:]]" /var)"..  
│ │ │ +001c0d60: 2020 2320 4966 2074 6865 206d 6f75 6e74    # If the mount
│ │ │ +001c0d70: 2070 6f69 6e74 2069 7320 6e6f 7420 696e   point is not in
│ │ │ +001c0d80: 202f 6574 632f 6673 7461 622c 2067 6574   /etc/fstab, get
│ │ │ +001c0d90: 2070 7265 7669 6f75 7320 6d6f 756e 7420   previous mount 
│ │ │ +001c0da0: 6f70 7469 6f6e 7320 6672 6f6d 202f 6574  options from /et
│ │ │ +001c0db0: 632f 6d74 6162 0a20 2020 2069 6620 2120  c/mtab.    if ! 
│ │ │ +001c0dc0: 6772 6570 202d 7120 2224 6d6f 756e 745f  grep -q "$mount_
│ │ │ +001c0dd0: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ +001c0de0: 7870 2220 2f65 7463 2f66 7374 6162 3b20  xp" /etc/fstab; 
│ │ │ +001c0df0: 7468 656e 0a20 2020 2020 2020 2023 2072  then.        # r
│ │ │ +001c0e00: 756e 7469 6d65 206f 7074 7320 7769 7468  untime opts with
│ │ │ +001c0e10: 6f75 7420 736f 6d65 2061 7574 6f6d 6174  out some automat
│ │ │ +001c0e20: 6963 206b 6572 6e65 6c2f 7573 6572 7370  ic kernel/usersp
│ │ │ +001c0e30: 6163 652d 6164 6465 6420 6465 6661 756c  ace-added defaul
│ │ │ +001c0e40: 7473 0a20 2020 2020 2020 2070 7265 7669  ts.        previ
│ │ │ +001c0e50: 6f75 735f 6d6f 756e 745f 6f70 7473 3d24  ous_mount_opts=$
│ │ │ +001c0e60: 2867 7265 7020 2224 6d6f 756e 745f 706f  (grep "$mount_po
│ │ │ +001c0e70: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ +001c0e80: 2220 2f65 7463 2f6d 7461 6220 7c20 6865  " /etc/mtab | he
│ │ │ +001c0e90: 6164 202d 3120 7c20 2061 776b 2027 7b70  ad -1 |  awk '{p
│ │ │ +001c0ea0: 7269 6e74 2024 347d 2720 5c0a 2020 2020  rint $4}' \.    
│ │ │ +001c0eb0: 2020 2020 2020 2020 2020 2020 2020 2020                  
│ │ │ +001c0ec0: 7c20 7365 6420 2d45 2022 732f 2872 777c  | sed -E "s/(rw|
│ │ │ +001c0ed0: 6465 6661 756c 7473 7c73 6563 6c61 6265  defaults|seclabe
│ │ │ +001c0ee0: 6c7c 6e6f 7375 6964 2928 2c7c 2429 2f2f  l|nosuid)(,|$)//
│ │ │ +001c0ef0: 673b 732f 2c24 2f2f 2229 0a20 2020 2020  g;s/,$//").     
│ │ │ +001c0f00: 2020 205b 2022 2470 7265 7669 6f75 735f     [ "$previous_
│ │ │ +001c0f10: 6d6f 756e 745f 6f70 7473 2220 5d20 2661  mount_opts" ] &a
│ │ │ +001c0f20: 6d70 3b26 616d 703b 2070 7265 7669 6f75  mp;& previou
│ │ │ +001c0f30: 735f 6d6f 756e 745f 6f70 7473 2b3d 222c  s_mount_opts+=",
│ │ │ +001c0f40: 220a 2020 2020 2020 2020 2320 496e 2069  ".        # In i
│ │ │ +001c0f50: 736f 3936 3630 2066 696c 6573 7973 7465  so9660 filesyste
│ │ │ +001c0f60: 6d73 206d 7461 6220 636f 756c 6420 6465  ms mtab could de
│ │ │ +001c0f70: 7363 7269 6265 2061 2022 626c 6f63 6b73  scribe a "blocks
│ │ │ +001c0f80: 697a 6522 2076 616c 7565 2c20 7468 6973  ize" value, this
│ │ │ +001c0f90: 2073 686f 756c 6420 6265 2072 6566 6c65   should be refle
│ │ │ +001c0fa0: 6374 6564 2069 6e0a 2020 2020 2020 2020  cted in.        
│ │ │ +001c0fb0: 2320 6673 7461 6220 6173 2022 626c 6f63  # fstab as "bloc
│ │ │ +001c0fc0: 6b22 2e20 2054 6865 206e 6578 7420 7661  k".  The next va
│ │ │ +001c0fd0: 7269 6162 6c65 2069 7320 746f 2073 6174  riable is to sat
│ │ │ +001c0fe0: 6973 6679 2073 6865 6c6c 6368 6563 6b20  isfy shellcheck 
│ │ │ +001c0ff0: 5343 3230 3530 2e0a 2020 2020 2020 2020  SC2050..        
│ │ │ +001c1000: 6673 5f74 7970 653d 2222 0a20 2020 2020  fs_type="".     
│ │ │ +001c1010: 2020 2069 6620 5b20 2022 2466 735f 7479     if [  "$fs_ty
│ │ │ +001c1020: 7065 2220 3d3d 2022 6973 6f39 3636 3022  pe" == "iso9660"
│ │ │ +001c1030: 205d 203b 2074 6865 6e0a 2020 2020 2020   ] ; then.      
│ │ │ +001c1040: 2020 2020 2020 7072 6576 696f 7573 5f6d        previous_m
│ │ │ +001c1050: 6f75 6e74 5f6f 7074 733d 2428 7365 6420  ount_opts=$(sed 
│ │ │ +001c1060: 2773 2f62 6c6f 636b 7369 7a65 3d2f 626c  's/blocksize=/bl
│ │ │ +001c1070: 6f63 6b3d 2f27 2026 6c74 3b26 6c74 3b26  ock=/' <<&
│ │ │ +001c1080: 6c74 3b20 2224 7072 6576 696f 7573 5f6d  lt; "$previous_m
│ │ │ +001c1090: 6f75 6e74 5f6f 7074 7322 290a 2020 2020  ount_opts").    
│ │ │ +001c10a0: 2020 2020 6669 0a20 2020 2020 2020 2065      fi.        e
│ │ │ +001c10b0: 6368 6f20 2220 2f76 6172 2020 6465 6661  cho " /var  defa
│ │ │ +001c10c0: 756c 7473 2c24 7b70 7265 7669 6f75 735f  ults,${previous_
│ │ │ +001c10d0: 6d6f 756e 745f 6f70 7473 7d6e 6f73 7569  mount_opts}nosui
│ │ │ +001c10e0: 6420 3020 3022 2026 6774 3b26 6774 3b20  d 0 0" >> 
│ │ │ +001c10f0: 2f65 7463 2f66 7374 6162 0a20 2020 2023  /etc/fstab.    #
│ │ │ +001c1100: 2049 6620 7468 6520 6d6f 756e 745f 6f70   If the mount_op
│ │ │ +001c1110: 7420 6f70 7469 6f6e 2069 7320 6e6f 7420  t option is not 
│ │ │ +001c1120: 616c 7265 6164 7920 696e 2074 6865 206d  already in the m
│ │ │ +001c1130: 6f75 6e74 2070 6f69 6e74 2773 202f 6574  ount point's /et
│ │ │ +001c1140: 632f 6673 7461 6220 656e 7472 792c 2061  c/fstab entry, a
│ │ │ +001c1150: 6464 2069 740a 2020 2020 656c 6966 2021  dd it.    elif !
│ │ │ +001c1160: 2067 7265 7020 2224 6d6f 756e 745f 706f   grep "$mount_po
│ │ │ +001c1170: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ +001c1180: 2220 2f65 7463 2f66 7374 6162 207c 2067  " /etc/fstab | g
│ │ │ +001c1190: 7265 7020 2d71 2022 6e6f 7375 6964 223b  rep -q "nosuid";
│ │ │ +001c11a0: 2074 6865 6e0a 2020 2020 2020 2020 7072   then.        pr
│ │ │ +001c11b0: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ +001c11c0: 733d 2428 6772 6570 2022 246d 6f75 6e74  s=$(grep "$mount
│ │ │ +001c11d0: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ +001c11e0: 6578 7022 202f 6574 632f 6673 7461 6220  exp" /etc/fstab 
│ │ │ +001c11f0: 7c20 6177 6b20 277b 7072 696e 7420 2434  | awk '{print $4
│ │ │ +001c1200: 7d27 290a 2020 2020 2020 2020 7365 6420  }').        sed 
│ │ │ +001c1210: 2d69 2022 737c 5c28 247b 6d6f 756e 745f  -i "s|\(${mount_
│ │ │ +001c1220: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ +001c1230: 7870 7d2e 2a24 7b70 7265 7669 6f75 735f  xp}.*${previous_
│ │ │ +001c1240: 6d6f 756e 745f 6f70 7473 7d5c 297c 5c31  mount_opts}\)|\1
│ │ │ +001c1250: 2c6e 6f73 7569 647c 2220 2f65 7463 2f66  ,nosuid|" /etc/f
│ │ │ +001c1260: 7374 6162 0a20 2020 2066 690a 0a0a 2020  stab.    fi...  
│ │ │ +001c1270: 2020 6966 206d 6b64 6972 202d 7020 222f    if mkdir -p "/
│ │ │ +001c1280: 7661 7222 3b20 7468 656e 0a20 2020 2020  var"; then.     
│ │ │ +001c1290: 2020 2069 6620 6d6f 756e 7470 6f69 6e74     if mountpoint
│ │ │ +001c12a0: 202d 7120 222f 7661 7222 3b20 7468 656e   -q "/var"; then
│ │ │ +001c12b0: 0a20 2020 2020 2020 2020 2020 206d 6f75  .            mou
│ │ │ +001c12c0: 6e74 202d 6f20 7265 6d6f 756e 7420 2d2d  nt -o remount --
│ │ │ +001c12d0: 7461 7267 6574 2022 2f76 6172 220a 2020  target "/var".  
│ │ │ +001c12e0: 2020 2020 2020 6669 0a20 2020 2066 690a        fi.    fi.
│ │ │ +001c12f0: 7d0a 0a70 6572 666f 726d 5f72 656d 6564  }..perform_remed
│ │ │ +001c1300: 6961 7469 6f6e 0a0a 656c 7365 0a20 2020  iation..else.   
│ │ │ +001c1310: 2026 6774 3b26 616d 703b 3220 6563 686f   >&2 echo
│ │ │ +001c1320: 2027 5265 6d65 6469 6174 696f 6e20 6973   'Remediation is
│ │ │ +001c1330: 206e 6f74 2061 7070 6c69 6361 626c 652c   not applicable,
│ │ │ +001c1340: 206e 6f74 6869 6e67 2077 6173 2064 6f6e   nothing was don
│ │ │ +001c1350: 6527 0a66 690a 3c2f 636f 6465 3e3c 2f70  e'.fi.

Remediatio │ │ │ +001c1410: 6e20 416e 6163 6f6e 6461 2073 6e69 7070 n Anaconda snipp │ │ │ +001c1420: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ +001c14a0: 3c74 723e 3c74 683e 436f 6d70 6c65 7869
Strategy: │ │ │ +001c1530: 3c74 643e 656e 6162 6c65 3c2f 7464 3e3c < │ │ │ +001c1540: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
Reboo │ │ │ +001c08b0: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ +001c08c0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Complexi │ │ │ +001c14b0: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +001c14c0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Disruption:high
Reboo │ │ │ +001c1500: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ +001c1510: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
enable
.part /va
│ │ │ +001c1560: 7220 2d2d 6d6f 756e 746f 7074 696f 6e73  r --mountoptions
│ │ │ +001c1570: 3d22 6e6f 7375 6964 220a 3c2f 636f 6465  ="nosuid".
Remediation An │ │ │ -001c1f40: 6163 6f6e 6461 2073 6e69 7070 6574 20e2 aconda snippet . │ │ │ -001c1f50: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ -001c1fd0: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -001c1ff0: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 < │ │ │ -001c2020: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr> │ │ │ -001c2070: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ -001c1fe0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ -001c2000: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:high
Reboot:false
St │ │ │ -001c2050: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ -001c2060: 656e 6162 6c65 3c2f 7464 3e3c 2f74 723e enable
.part /var/tm
│ │ │ -001c2090: 7020 2d2d 6d6f 756e 746f 7074 696f 6e73  p --mountoptions
│ │ │ -001c20a0: 3d22 6e6f 6465 7622 0a3c 2f63 6f64 653e  ="nodev".
│ │ │ -001c20b0: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ -001c2160: 7469 6f6e 2041 6e73 6962 6c65 2073 6e69 tion Ansible sni │ │ │ -001c2170: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -001c2180: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -001c21b0: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ -001c2220: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption: │ │ │ -001c2240: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ -001c2270: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Comple │ │ │ -001c2200: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ -001c2210: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
high
Reb │ │ │ -001c2250: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -001c2260: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:configure< │ │ │ -001c2290: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
- na
│ │ │ -001c22b0: 6d65 3a20 4761 7468 6572 2074 6865 2070  me: Gather the p
│ │ │ -001c22c0: 6163 6b61 6765 2066 6163 7473 0a20 2070  ackage facts.  p
│ │ │ -001c22d0: 6163 6b61 6765 5f66 6163 7473 3a0a 2020  ackage_facts:.  
│ │ │ -001c22e0: 2020 6d61 6e61 6765 723a 2061 7574 6f0a    manager: auto.
│ │ │ -001c22f0: 2020 7461 6773 3a0a 2020 2d20 636f 6e66    tags:.  - conf
│ │ │ -001c2300: 6967 7572 655f 7374 7261 7465 6779 0a20  igure_strategy. 
│ │ │ -001c2310: 202d 2068 6967 685f 6469 7372 7570 7469   - high_disrupti
│ │ │ -001c2320: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c  on.  - low_compl
│ │ │ -001c2330: 6578 6974 790a 2020 2d20 6d65 6469 756d  exity.  - medium
│ │ │ -001c2340: 5f73 6576 6572 6974 790a 2020 2d20 6d6f  _severity.  - mo
│ │ │ -001c2350: 756e 745f 6f70 7469 6f6e 5f76 6172 5f74  unt_option_var_t
│ │ │ -001c2360: 6d70 5f6e 6f64 6576 0a20 202d 206e 6f5f  mp_nodev.  - no_
│ │ │ -001c2370: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ -001c2380: 206e 616d 653a 2027 4164 6420 6e6f 6465   name: 'Add node
│ │ │ -001c2390: 7620 4f70 7469 6f6e 2074 6f20 2f76 6172  v Option to /var
│ │ │ -001c23a0: 2f74 6d70 3a20 4368 6563 6b20 696e 666f  /tmp: Check info
│ │ │ -001c23b0: 726d 6174 696f 6e20 6173 736f 6369 6174  rmation associat
│ │ │ -001c23c0: 6564 2074 6f20 6d6f 756e 7470 6f69 6e74  ed to mountpoint
│ │ │ -001c23d0: 270a 2020 616e 7369 626c 652e 6275 696c  '.  ansible.buil
│ │ │ -001c23e0: 7469 6e2e 636f 6d6d 616e 643a 2066 696e  tin.command: fin
│ │ │ -001c23f0: 646d 6e74 202d 2d66 7374 6162 2027 2f76  dmnt --fstab '/v
│ │ │ -001c2400: 6172 2f74 6d70 270a 2020 7265 6769 7374  ar/tmp'.  regist
│ │ │ -001c2410: 6572 3a20 6465 7669 6365 5f6e 616d 650a  er: device_name.
│ │ │ -001c2420: 2020 6661 696c 6564 5f77 6865 6e3a 2064    failed_when: d
│ │ │ -001c2430: 6576 6963 655f 6e61 6d65 2e72 6320 2667  evice_name.rc &g
│ │ │ -001c2440: 743b 2031 0a20 2063 6861 6e67 6564 5f77  t; 1.  changed_w
│ │ │ -001c2450: 6865 6e3a 2066 616c 7365 0a20 2063 6865  hen: false.  che
│ │ │ -001c2460: 636b 5f6d 6f64 653a 2066 616c 7365 0a20  ck_mode: false. 
│ │ │ -001c2470: 2077 6865 6e3a 0a20 202d 2028 206e 6f74   when:.  - ( not
│ │ │ -001c2480: 2028 2022 6b65 726e 656c 2220 696e 2061   ( "kernel" in a
│ │ │ -001c2490: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001c24a0: 6b61 6765 7320 616e 6420 2262 6f6f 7463  kages and "bootc
│ │ │ -001c24b0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001c24c0: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ -001c24d0: 616e 6420 6e6f 7420 226f 7065 6e73 6869  and not "openshi
│ │ │ -001c24e0: 6674 2d6b 7562 656c 6574 2220 696e 2061  ft-kubelet" in a
│ │ │ -001c24f0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001c2500: 6b61 6765 7320 616e 6420 226f 7374 7265  kages and "ostre
│ │ │ -001c2510: 6522 2069 6e20 616e 7369 626c 655f 7072  e" in ansible_pr
│ │ │ -001c2520: 6f63 5f63 6d64 6c69 6e65 0a20 2020 2029  oc_cmdline.    )
│ │ │ -001c2530: 2061 6e64 206e 6f74 2028 2061 6e73 6962   and not ( ansib
│ │ │ -001c2540: 6c65 5f76 6972 7475 616c 697a 6174 696f  le_virtualizatio
│ │ │ -001c2550: 6e5f 7479 7065 2069 6e20 5b22 646f 636b  n_type in ["dock
│ │ │ -001c2560: 6572 222c 2022 6c78 6322 2c20 226f 7065  er", "lxc", "ope
│ │ │ -001c2570: 6e76 7a22 2c20 2270 6f64 6d61 6e22 2c0a  nvz", "podman",.
│ │ │ -001c2580: 2020 2020 2263 6f6e 7461 696e 6572 225d      "container"]
│ │ │ -001c2590: 2029 2029 0a20 202d 2027 222f 7661 722f   ) ).  - '"/var/
│ │ │ -001c25a0: 746d 7022 2069 6e20 616e 7369 626c 655f  tmp" in ansible_
│ │ │ -001c25b0: 6d6f 756e 7473 207c 206d 6170 2861 7474  mounts | map(att
│ │ │ -001c25c0: 7269 6275 7465 3d22 6d6f 756e 7422 2920  ribute="mount") 
│ │ │ -001c25d0: 7c20 6c69 7374 270a 2020 7461 6773 3a0a  | list'.  tags:.
│ │ │ -001c25e0: 2020 2d20 636f 6e66 6967 7572 655f 7374    - configure_st
│ │ │ -001c25f0: 7261 7465 6779 0a20 202d 2068 6967 685f  rategy.  - high_
│ │ │ -001c2600: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ -001c2610: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ -001c2620: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ -001c2630: 790a 2020 2d20 6d6f 756e 745f 6f70 7469  y.  - mount_opti
│ │ │ -001c2640: 6f6e 5f76 6172 5f74 6d70 5f6e 6f64 6576  on_var_tmp_nodev
│ │ │ -001c2650: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ -001c2660: 6565 6465 640a 0a2d 206e 616d 653a 2027  eeded..- name: '
│ │ │ -001c2670: 4164 6420 6e6f 6465 7620 4f70 7469 6f6e  Add nodev Option
│ │ │ -001c2680: 2074 6f20 2f76 6172 2f74 6d70 3a20 4372   to /var/tmp: Cr
│ │ │ -001c2690: 6561 7465 206d 6f75 6e74 5f69 6e66 6f20  eate mount_info 
│ │ │ -001c26a0: 6469 6374 696f 6e61 7279 2076 6172 6961  dictionary varia
│ │ │ -001c26b0: 626c 6527 0a20 2073 6574 5f66 6163 743a  ble'.  set_fact:
│ │ │ -001c26c0: 0a20 2020 206d 6f75 6e74 5f69 6e66 6f3a  .    mount_info:
│ │ │ -001c26d0: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f7c   '{{ mount_info|
│ │ │ -001c26e0: 6465 6661 756c 7428 7b7d 297c 636f 6d62  default({})|comb
│ │ │ -001c26f0: 696e 6528 7b69 7465 6d2e 303a 2069 7465  ine({item.0: ite
│ │ │ -001c2700: 6d2e 317d 2920 7d7d 270a 2020 7769 7468  m.1}) }}'.  with
│ │ │ -001c2710: 5f74 6f67 6574 6865 723a 0a20 202d 2027  _together:.  - '
│ │ │ -001c2720: 7b7b 2064 6576 6963 655f 6e61 6d65 2e73  {{ device_name.s
│ │ │ -001c2730: 7464 6f75 745f 6c69 6e65 735b 305d 2e73  tdout_lines[0].s
│ │ │ -001c2740: 706c 6974 2829 207c 206d 6170 2827 276c  plit() | map(''l
│ │ │ -001c2750: 6f77 6572 2727 2920 7c20 6c69 7374 207d  ower'') | list }
│ │ │ -001c2760: 7d27 0a20 202d 2027 7b7b 2064 6576 6963  }'.  - '{{ devic
│ │ │ -001c2770: 655f 6e61 6d65 2e73 7464 6f75 745f 6c69  e_name.stdout_li
│ │ │ -001c2780: 6e65 735b 315d 2e73 706c 6974 2829 207c  nes[1].split() |
│ │ │ -001c2790: 206c 6973 7420 7d7d 270a 2020 7768 656e   list }}'.  when
│ │ │ -001c27a0: 3a0a 2020 2d20 2820 6e6f 7420 2820 226b  :.  - ( not ( "k
│ │ │ -001c27b0: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ -001c27c0: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001c27d0: 2061 6e64 2022 626f 6f74 6322 2069 6e20   and "bootc" in 
│ │ │ -001c27e0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001c27f0: 636b 6167 6573 0a20 2020 2061 6e64 206e  ckages.    and n
│ │ │ -001c2800: 6f74 2022 6f70 656e 7368 6966 742d 6b75  ot "openshift-ku
│ │ │ -001c2810: 6265 6c65 7422 2069 6e20 616e 7369 626c  belet" in ansibl
│ │ │ -001c2820: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001c2830: 2061 6e64 2022 6f73 7472 6565 2220 696e   and "ostree" in
│ │ │ -001c2840: 2061 6e73 6962 6c65 5f70 726f 635f 636d   ansible_proc_cm
│ │ │ -001c2850: 646c 696e 650a 2020 2020 2920 616e 6420  dline.    ) and 
│ │ │ -001c2860: 6e6f 7420 2820 616e 7369 626c 655f 7669  not ( ansible_vi
│ │ │ -001c2870: 7274 7561 6c69 7a61 7469 6f6e 5f74 7970  rtualization_typ
│ │ │ -001c2880: 6520 696e 205b 2264 6f63 6b65 7222 2c20  e in ["docker", 
│ │ │ -001c2890: 226c 7863 222c 2022 6f70 656e 767a 222c  "lxc", "openvz",
│ │ │ -001c28a0: 2022 706f 646d 616e 222c 0a20 2020 2022   "podman",.    "
│ │ │ -001c28b0: 636f 6e74 6169 6e65 7222 5d20 2920 290a  container"] ) ).
│ │ │ -001c28c0: 2020 2d20 2722 2f76 6172 2f74 6d70 2220    - '"/var/tmp" 
│ │ │ -001c28d0: 696e 2061 6e73 6962 6c65 5f6d 6f75 6e74  in ansible_mount
│ │ │ -001c28e0: 7320 7c20 6d61 7028 6174 7472 6962 7574  s | map(attribut
│ │ │ -001c28f0: 653d 226d 6f75 6e74 2229 207c 206c 6973  e="mount") | lis
│ │ │ -001c2900: 7427 0a20 202d 2064 6576 6963 655f 6e61  t'.  - device_na
│ │ │ -001c2910: 6d65 2e73 7464 6f75 7420 6973 2064 6566  me.stdout is def
│ │ │ -001c2920: 696e 6564 2061 6e64 2064 6576 6963 655f  ined and device_
│ │ │ -001c2930: 6e61 6d65 2e73 7464 6f75 745f 6c69 6e65  name.stdout_line
│ │ │ -001c2940: 7320 6973 2064 6566 696e 6564 0a20 202d  s is defined.  -
│ │ │ -001c2950: 2028 6465 7669 6365 5f6e 616d 652e 7374   (device_name.st
│ │ │ -001c2960: 646f 7574 207c 206c 656e 6774 6820 2667  dout | length &g
│ │ │ -001c2970: 743b 2030 290a 2020 7461 6773 3a0a 2020  t; 0).  tags:.  
│ │ │ -001c2980: 2d20 636f 6e66 6967 7572 655f 7374 7261  - configure_stra
│ │ │ -001c2990: 7465 6779 0a20 202d 2068 6967 685f 6469  tegy.  - high_di
│ │ │ -001c29a0: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ -001c29b0: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ -001c29c0: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ -001c29d0: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e    - mount_option
│ │ │ -001c29e0: 5f76 6172 5f74 6d70 5f6e 6f64 6576 0a20  _var_tmp_nodev. 
│ │ │ -001c29f0: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ -001c2a00: 6465 640a 0a2d 206e 616d 653a 2027 4164  ded..- name: 'Ad
│ │ │ -001c2a10: 6420 6e6f 6465 7620 4f70 7469 6f6e 2074  d nodev Option t
│ │ │ -001c2a20: 6f20 2f76 6172 2f74 6d70 3a20 4966 202f  o /var/tmp: If /
│ │ │ -001c2a30: 7661 722f 746d 7020 6e6f 7420 6d6f 756e  var/tmp not moun
│ │ │ -001c2a40: 7465 642c 2063 7261 6674 206d 6f75 6e74  ted, craft mount
│ │ │ -001c2a50: 5f69 6e66 6f20 6d61 6e75 616c 6c79 270a  _info manually'.
│ │ │ -001c2a60: 2020 7365 745f 6661 6374 3a0a 2020 2020    set_fact:.    
│ │ │ -001c2a70: 6d6f 756e 745f 696e 666f 3a20 277b 7b20  mount_info: '{{ 
│ │ │ -001c2a80: 6d6f 756e 745f 696e 666f 7c64 6566 6175  mount_info|defau
│ │ │ -001c2a90: 6c74 287b 7d29 7c63 6f6d 6269 6e65 287b  lt({})|combine({
│ │ │ -001c2aa0: 6974 656d 2e30 3a20 6974 656d 2e31 7d29  item.0: item.1})
│ │ │ -001c2ab0: 207d 7d27 0a20 2077 6974 685f 746f 6765   }}'.  with_toge
│ │ │ -001c2ac0: 7468 6572 3a0a 2020 2d20 2d20 7461 7267  ther:.  - - targ
│ │ │ -001c2ad0: 6574 0a20 2020 202d 2073 6f75 7263 650a  et.    - source.
│ │ │ -001c2ae0: 2020 2020 2d20 6673 7479 7065 0a20 2020      - fstype.   
│ │ │ -001c2af0: 202d 206f 7074 696f 6e73 0a20 202d 202d   - options.  - -
│ │ │ -001c2b00: 202f 7661 722f 746d 700a 2020 2020 2d20   /var/tmp.    - 
│ │ │ -001c2b10: 2727 0a20 2020 202d 2027 270a 2020 2020  ''.    - ''.    
│ │ │ -001c2b20: 2d20 6465 6661 756c 7473 0a20 2077 6865  - defaults.  whe
│ │ │ -001c2b30: 6e3a 0a20 202d 2028 206e 6f74 2028 2022  n:.  - ( not ( "
│ │ │ -001c2b40: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ -001c2b50: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -001c2b60: 7320 616e 6420 2262 6f6f 7463 2220 696e  s and "bootc" in
│ │ │ -001c2b70: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -001c2b80: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ -001c2b90: 6e6f 7420 226f 7065 6e73 6869 6674 2d6b  not "openshift-k
│ │ │ -001c2ba0: 7562 656c 6574 2220 696e 2061 6e73 6962  ubelet" in ansib
│ │ │ -001c2bb0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -001c2bc0: 7320 616e 6420 226f 7374 7265 6522 2069  s and "ostree" i
│ │ │ -001c2bd0: 6e20 616e 7369 626c 655f 7072 6f63 5f63  n ansible_proc_c
│ │ │ -001c2be0: 6d64 6c69 6e65 0a20 2020 2029 2061 6e64  mdline.    ) and
│ │ │ -001c2bf0: 206e 6f74 2028 2061 6e73 6962 6c65 5f76   not ( ansible_v
│ │ │ -001c2c00: 6972 7475 616c 697a 6174 696f 6e5f 7479  irtualization_ty
│ │ │ -001c2c10: 7065 2069 6e20 5b22 646f 636b 6572 222c  pe in ["docker",
│ │ │ -001c2c20: 2022 6c78 6322 2c20 226f 7065 6e76 7a22   "lxc", "openvz"
│ │ │ -001c2c30: 2c20 2270 6f64 6d61 6e22 2c0a 2020 2020  , "podman",.    
│ │ │ -001c2c40: 2263 6f6e 7461 696e 6572 225d 2029 2029  "container"] ) )
│ │ │ -001c2c50: 0a20 202d 2027 222f 7661 722f 746d 7022  .  - '"/var/tmp"
│ │ │ -001c2c60: 2069 6e20 616e 7369 626c 655f 6d6f 756e   in ansible_moun
│ │ │ -001c2c70: 7473 207c 206d 6170 2861 7474 7269 6275  ts | map(attribu
│ │ │ -001c2c80: 7465 3d22 6d6f 756e 7422 2920 7c20 6c69  te="mount") | li
│ │ │ -001c2c90: 7374 270a 2020 2d20 2822 2d2d 6673 7461  st'.  - ("--fsta
│ │ │ -001c2ca0: 6222 207c 206c 656e 6774 6820 3d3d 2030  b" | length == 0
│ │ │ -001c2cb0: 290a 2020 2d20 6465 7669 6365 5f6e 616d  ).  - device_nam
│ │ │ -001c2cc0: 652e 7374 646f 7574 2069 7320 6465 6669  e.stdout is defi
│ │ │ -001c2cd0: 6e65 6420 616e 6420 6465 7669 6365 5f6e  ned and device_n
│ │ │ -001c2ce0: 616d 652e 7374 646f 7574 5f6c 696e 6573  ame.stdout_lines
│ │ │ -001c2cf0: 2069 7320 6465 6669 6e65 640a 2020 2d20   is defined.  - 
│ │ │ -001c2d00: 2864 6576 6963 655f 6e61 6d65 2e73 7464  (device_name.std
│ │ │ -001c2d10: 6f75 7420 7c20 6c65 6e67 7468 203d 3d20  out | length == 
│ │ │ -001c2d20: 3029 0a20 2074 6167 733a 0a20 202d 2063  0).  tags:.  - c
│ │ │ -001c2d30: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ -001c2d40: 790a 2020 2d20 6869 6768 5f64 6973 7275  y.  - high_disru
│ │ │ -001c2d50: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f  ption.  - low_co
│ │ │ -001c2d60: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ -001c2d70: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ -001c2d80: 206d 6f75 6e74 5f6f 7074 696f 6e5f 7661   mount_option_va
│ │ │ -001c2d90: 725f 746d 705f 6e6f 6465 760a 2020 2d20  r_tmp_nodev.  - 
│ │ │ -001c2da0: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ -001c2db0: 0a0a 2d20 6e61 6d65 3a20 2741 6464 206e  ..- name: 'Add n
│ │ │ -001c2dc0: 6f64 6576 204f 7074 696f 6e20 746f 202f  odev Option to /
│ │ │ -001c2dd0: 7661 722f 746d 703a 204d 616b 6520 7375  var/tmp: Make su
│ │ │ -001c2de0: 7265 206e 6f64 6576 206f 7074 696f 6e20  re nodev option 
│ │ │ -001c2df0: 6973 2070 6172 7420 6f66 2074 6865 2074  is part of the t
│ │ │ -001c2e00: 6f20 2f76 6172 2f74 6d70 0a20 2020 206f  o /var/tmp.    o
│ │ │ -001c2e10: 7074 696f 6e73 270a 2020 7365 745f 6661  ptions'.  set_fa
│ │ │ -001c2e20: 6374 3a0a 2020 2020 6d6f 756e 745f 696e  ct:.    mount_in
│ │ │ -001c2e30: 666f 3a20 277b 7b20 6d6f 756e 745f 696e  fo: '{{ mount_in
│ │ │ -001c2e40: 666f 207c 2063 6f6d 6269 6e65 2820 7b27  fo | combine( {'
│ │ │ -001c2e50: 276f 7074 696f 6e73 2727 3a27 2727 277e  'options'':''''~
│ │ │ -001c2e60: 286d 6f75 6e74 5f69 6e66 6f2e 6f70 7469  (mount_info.opti
│ │ │ -001c2e70: 6f6e 7320 7c0a 2020 2020 2020 6465 6661  ons |.      defa
│ │ │ -001c2e80: 756c 7428 2727 2727 2929 7e28 2727 2c27  ult(''''))~('','
│ │ │ -001c2e90: 2720 6966 2028 6d6f 756e 745f 696e 666f  ' if (mount_info
│ │ │ -001c2ea0: 2e6f 7074 696f 6e73 207c 2064 6566 6175  .options | defau
│ │ │ -001c2eb0: 6c74 2827 2727 2729 2920 656c 7365 2027  lt('''')) else '
│ │ │ -001c2ec0: 2727 2729 7e27 276e 6f64 6576 2727 0a20  ''')~''nodev''. 
│ │ │ -001c2ed0: 2020 2020 207d 2920 7d7d 270a 2020 7768       }) }}'.  wh
│ │ │ -001c2ee0: 656e 3a0a 2020 2d20 2820 6e6f 7420 2820  en:.  - ( not ( 
│ │ │ -001c2ef0: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ -001c2f00: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001c2f10: 6573 2061 6e64 2022 626f 6f74 6322 2069  es and "bootc" i
│ │ │ -001c2f20: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -001c2f30: 7061 636b 6167 6573 0a20 2020 2061 6e64  packages.    and
│ │ │ -001c2f40: 206e 6f74 2022 6f70 656e 7368 6966 742d   not "openshift-
│ │ │ -001c2f50: 6b75 6265 6c65 7422 2069 6e20 616e 7369  kubelet" in ansi
│ │ │ -001c2f60: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001c2f70: 6573 2061 6e64 2022 6f73 7472 6565 2220  es and "ostree" 
│ │ │ -001c2f80: 696e 2061 6e73 6962 6c65 5f70 726f 635f  in ansible_proc_
│ │ │ -001c2f90: 636d 646c 696e 650a 2020 2020 2920 616e  cmdline.    ) an
│ │ │ -001c2fa0: 6420 6e6f 7420 2820 616e 7369 626c 655f  d not ( ansible_
│ │ │ -001c2fb0: 7669 7274 7561 6c69 7a61 7469 6f6e 5f74  virtualization_t
│ │ │ -001c2fc0: 7970 6520 696e 205b 2264 6f63 6b65 7222  ype in ["docker"
│ │ │ -001c2fd0: 2c20 226c 7863 222c 2022 6f70 656e 767a  , "lxc", "openvz
│ │ │ -001c2fe0: 222c 2022 706f 646d 616e 222c 0a20 2020  ", "podman",.   
│ │ │ -001c2ff0: 2022 636f 6e74 6169 6e65 7222 5d20 2920   "container"] ) 
│ │ │ -001c3000: 290a 2020 2d20 2722 2f76 6172 2f74 6d70  ).  - '"/var/tmp
│ │ │ -001c3010: 2220 696e 2061 6e73 6962 6c65 5f6d 6f75  " in ansible_mou
│ │ │ -001c3020: 6e74 7320 7c20 6d61 7028 6174 7472 6962  nts | map(attrib
│ │ │ -001c3030: 7574 653d 226d 6f75 6e74 2229 207c 206c  ute="mount") | l
│ │ │ -001c3040: 6973 7427 0a20 202d 206d 6f75 6e74 5f69  ist'.  - mount_i
│ │ │ -001c3050: 6e66 6f20 6973 2064 6566 696e 6564 2061  nfo is defined a
│ │ │ -001c3060: 6e64 2022 6e6f 6465 7622 206e 6f74 2069  nd "nodev" not i
│ │ │ -001c3070: 6e20 286d 6f75 6e74 5f69 6e66 6f2e 6f70  n (mount_info.op
│ │ │ -001c3080: 7469 6f6e 7320 7c20 6465 6661 756c 7428  tions | default(
│ │ │ -001c3090: 2727 2929 0a20 2074 6167 733a 0a20 202d  '')).  tags:.  -
│ │ │ -001c30a0: 2063 6f6e 6669 6775 7265 5f73 7472 6174   configure_strat
│ │ │ -001c30b0: 6567 790a 2020 2d20 6869 6768 5f64 6973  egy.  - high_dis
│ │ │ -001c30c0: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f  ruption.  - low_
│ │ │ -001c30d0: 636f 6d70 6c65 7869 7479 0a20 202d 206d  complexity.  - m
│ │ │ -001c30e0: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ -001c30f0: 202d 206d 6f75 6e74 5f6f 7074 696f 6e5f   - mount_option_
│ │ │ -001c3100: 7661 725f 746d 705f 6e6f 6465 760a 2020  var_tmp_nodev.  
│ │ │ -001c3110: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ -001c3120: 6564 0a0a 2d20 6e61 6d65 3a20 2741 6464  ed..- name: 'Add
│ │ │ -001c3130: 206e 6f64 6576 204f 7074 696f 6e20 746f   nodev Option to
│ │ │ -001c3140: 202f 7661 722f 746d 703a 2045 6e73 7572   /var/tmp: Ensur
│ │ │ -001c3150: 6520 2f76 6172 2f74 6d70 2069 7320 6d6f  e /var/tmp is mo
│ │ │ -001c3160: 756e 7465 6420 7769 7468 206e 6f64 6576  unted with nodev
│ │ │ -001c3170: 206f 7074 696f 6e27 0a20 2061 6e73 6962   option'.  ansib
│ │ │ -001c3180: 6c65 2e70 6f73 6978 2e6d 6f75 6e74 3a0a  le.posix.mount:.
│ │ │ -001c3190: 2020 2020 7061 7468 3a20 2f76 6172 2f74      path: /var/t
│ │ │ -001c31a0: 6d70 0a20 2020 2073 7263 3a20 277b 7b20  mp.    src: '{{ 
│ │ │ -001c31b0: 6d6f 756e 745f 696e 666f 2e73 6f75 7263  mount_info.sourc
│ │ │ -001c31c0: 6520 7c20 6465 6661 756c 7428 2727 2727  e | default(''''
│ │ │ -001c31d0: 2920 7d7d 270a 2020 2020 6f70 7473 3a20  ) }}'.    opts: 
│ │ │ -001c31e0: 277b 7b20 6d6f 756e 745f 696e 666f 2e6f  '{{ mount_info.o
│ │ │ -001c31f0: 7074 696f 6e73 207c 2064 6566 6175 6c74  ptions | default
│ │ │ -001c3200: 2827 2727 2729 207d 7d27 0a20 2020 2073  ('''') }}'.    s
│ │ │ -001c3210: 7461 7465 3a20 6d6f 756e 7465 640a 2020  tate: mounted.  
│ │ │ -001c3220: 2020 6673 7479 7065 3a20 277b 7b20 6d6f    fstype: '{{ mo
│ │ │ -001c3230: 756e 745f 696e 666f 2e66 7374 7970 6520  unt_info.fstype 
│ │ │ -001c3240: 7c20 6465 6661 756c 7428 2727 2727 2920  | default('''') 
│ │ │ -001c3250: 7d7d 270a 2020 7265 6769 7374 6572 3a20  }}'.  register: 
│ │ │ -001c3260: 6d6f 756e 745f 7265 7375 6c74 0a20 2066  mount_result.  f
│ │ │ -001c3270: 6169 6c65 645f 7768 656e 3a0a 2020 2d20  ailed_when:.  - 
│ │ │ -001c3280: 6d6f 756e 745f 7265 7375 6c74 2069 7320  mount_result is 
│ │ │ -001c3290: 6661 696c 6564 0a20 202d 2027 2727 7461  failed.  - '''ta
│ │ │ -001c32a0: 7267 6574 2069 7320 6275 7379 2727 206e  rget is busy'' n
│ │ │ -001c32b0: 6f74 2069 6e20 286d 6f75 6e74 5f72 6573  ot in (mount_res
│ │ │ -001c32c0: 756c 742e 6d73 6720 7c20 6465 6661 756c  ult.msg | defaul
│ │ │ -001c32d0: 7428 2727 2727 2929 270a 2020 2d20 2727  t(''''))'.  - ''
│ │ │ -001c32e0: 2761 6c72 6561 6479 206d 6f75 6e74 6564  'already mounted
│ │ │ -001c32f0: 2727 206e 6f74 2069 6e20 286d 6f75 6e74  '' not in (mount
│ │ │ -001c3300: 5f72 6573 756c 742e 6d73 6720 7c20 6465  _result.msg | de
│ │ │ -001c3310: 6661 756c 7428 2727 2727 2929 270a 2020  fault(''''))'.  
│ │ │ -001c3320: 7768 656e 3a0a 2020 2d20 2820 6e6f 7420  when:.  - ( not 
│ │ │ -001c3330: 2820 226b 6572 6e65 6c22 2069 6e20 616e  ( "kernel" in an
│ │ │ -001c3340: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001c3350: 6167 6573 2061 6e64 2022 626f 6f74 6322  ages and "bootc"
│ │ │ -001c3360: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001c3370: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ -001c3380: 6e64 206e 6f74 2022 6f70 656e 7368 6966  nd not "openshif
│ │ │ -001c3390: 742d 6b75 6265 6c65 7422 2069 6e20 616e  t-kubelet" in an
│ │ │ -001c33a0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001c33b0: 6167 6573 2061 6e64 2022 6f73 7472 6565  ages and "ostree
│ │ │ -001c33c0: 2220 696e 2061 6e73 6962 6c65 5f70 726f  " in ansible_pro
│ │ │ -001c33d0: 635f 636d 646c 696e 650a 2020 2020 2920  c_cmdline.    ) 
│ │ │ -001c33e0: 616e 6420 6e6f 7420 2820 616e 7369 626c  and not ( ansibl
│ │ │ -001c33f0: 655f 7669 7274 7561 6c69 7a61 7469 6f6e  e_virtualization
│ │ │ -001c3400: 5f74 7970 6520 696e 205b 2264 6f63 6b65  _type in ["docke
│ │ │ -001c3410: 7222 2c20 226c 7863 222c 2022 6f70 656e  r", "lxc", "open
│ │ │ -001c3420: 767a 222c 2022 706f 646d 616e 222c 0a20  vz", "podman",. 
│ │ │ -001c3430: 2020 2022 636f 6e74 6169 6e65 7222 5d20     "container"] 
│ │ │ -001c3440: 2920 290a 2020 2d20 2722 2f76 6172 2f74  ) ).  - '"/var/t
│ │ │ -001c3450: 6d70 2220 696e 2061 6e73 6962 6c65 5f6d  mp" in ansible_m
│ │ │ -001c3460: 6f75 6e74 7320 7c20 6d61 7028 6174 7472  ounts | map(attr
│ │ │ -001c3470: 6962 7574 653d 226d 6f75 6e74 2229 207c  ibute="mount") |
│ │ │ -001c3480: 206c 6973 7427 0a20 202d 206d 6f75 6e74   list'.  - mount
│ │ │ -001c3490: 5f69 6e66 6f20 6973 2064 6566 696e 6564  _info is defined
│ │ │ -001c34a0: 0a20 202d 2028 6465 7669 6365 5f6e 616d  .  - (device_nam
│ │ │ -001c34b0: 652e 7374 646f 7574 2069 7320 6465 6669  e.stdout is defi
│ │ │ -001c34c0: 6e65 6420 616e 6420 2864 6576 6963 655f  ned and (device_
│ │ │ -001c34d0: 6e61 6d65 2e73 7464 6f75 7420 7c20 6c65  name.stdout | le
│ │ │ -001c34e0: 6e67 7468 2026 6774 3b20 3029 2920 6f72  ngth > 0)) or
│ │ │ -001c34f0: 2028 222d 2d66 7374 6162 220a 2020 2020   ("--fstab".    
│ │ │ -001c3500: 7c20 6c65 6e67 7468 203d 3d20 3029 0a20  | length == 0). 
│ │ │ -001c3510: 2074 6167 733a 0a20 202d 2063 6f6e 6669   tags:.  - confi
│ │ │ -001c3520: 6775 7265 5f73 7472 6174 6567 790a 2020  gure_strategy.  
│ │ │ -001c3530: 2d20 6869 6768 5f64 6973 7275 7074 696f  - high_disruptio
│ │ │ -001c3540: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65  n.  - low_comple
│ │ │ -001c3550: 7869 7479 0a20 202d 206d 6564 6975 6d5f  xity.  - medium_
│ │ │ -001c3560: 7365 7665 7269 7479 0a20 202d 206d 6f75  severity.  - mou
│ │ │ -001c3570: 6e74 5f6f 7074 696f 6e5f 7661 725f 746d  nt_option_var_tm
│ │ │ -001c3580: 705f 6e6f 6465 760a 2020 2d20 6e6f 5f72  p_nodev.  - no_r
│ │ │ -001c3590: 6562 6f6f 745f 6e65 6564 6564 0a3c 2f63  eboot_needed.
│ │ │ -001c35b0: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ -001c3650: 6564 6961 7469 6f6e 2053 6865 6c6c 2073 ediation Shell s │ │ │ -001c3660: 6372 6970 7420 e287 b23c 2f61 3e3c 6272 cript ...
# R
│ │ │ -001c3720: 656d 6564 6961 7469 6f6e 2069 7320 6170  emediation is ap
│ │ │ -001c3730: 706c 6963 6162 6c65 206f 6e6c 7920 696e  plicable only in
│ │ │ -001c3740: 2063 6572 7461 696e 2070 6c61 7466 6f72   certain platfor
│ │ │ -001c3750: 6d73 0a69 6620 2820 2120 2820 7b20 7270  ms.if ( ! ( { rp
│ │ │ -001c3760: 6d20 2d2d 7175 6965 7420 2d71 206b 6572  m --quiet -q ker
│ │ │ -001c3770: 6e65 6c20 3b7d 2026 616d 703b 2661 6d70  nel ;} &&
│ │ │ -001c3780: 3b20 7b20 7270 6d20 2d2d 7175 6965 7420  ; { rpm --quiet 
│ │ │ -001c3790: 2d71 2062 6f6f 7463 203b 7d20 2661 6d70  -q bootc ;} &
│ │ │ -001c37a0: 3b26 616d 703b 207b 2021 2072 706d 202d  ;& { ! rpm -
│ │ │ -001c37b0: 2d71 7569 6574 202d 7120 6f70 656e 7368  -quiet -q opensh
│ │ │ -001c37c0: 6966 742d 6b75 6265 6c65 7420 3b7d 2026  ift-kubelet ;} &
│ │ │ -001c37d0: 616d 703b 2661 6d70 3b20 285b 202d 6620  amp;& ([ -f 
│ │ │ -001c37e0: 2f72 756e 2f6f 7374 7265 652d 626f 6f74  /run/ostree-boot
│ │ │ -001c37f0: 6564 205d 207c 7c20 5b20 2d4c 202f 6f73  ed ] || [ -L /os
│ │ │ -001c3800: 7472 6565 205d 2920 2920 2661 6d70 3b26  tree ]) ) &&
│ │ │ -001c3810: 616d 703b 2021 2028 205b 202d 6620 2f2e  amp; ! ( [ -f /.
│ │ │ -001c3820: 646f 636b 6572 656e 7620 5d20 7c7c 205b  dockerenv ] || [
│ │ │ -001c3830: 202d 6620 2f72 756e 2f2e 636f 6e74 6169   -f /run/.contai
│ │ │ -001c3840: 6e65 7265 6e76 205d 2029 2029 2026 616d  nerenv ] ) ) &am
│ │ │ -001c3850: 703b 2661 6d70 3b20 7b20 2820 6669 6e64  p;& { ( find
│ │ │ -001c3860: 6d6e 7420 2d2d 6b65 726e 656c 2022 2f76  mnt --kernel "/v
│ │ │ -001c3870: 6172 2f74 6d70 2220 2667 743b 202f 6465  ar/tmp" > /de
│ │ │ -001c3880: 762f 6e75 6c6c 207c 7c20 6669 6e64 6d6e  v/null || findmn
│ │ │ -001c3890: 7420 2d2d 6673 7461 6220 222f 7661 722f  t --fstab "/var/
│ │ │ -001c38a0: 746d 7022 2026 6774 3b20 2f64 6576 2f6e  tmp" > /dev/n
│ │ │ -001c38b0: 756c 6c20 293b 207d 3b20 7468 656e 0a0a  ull ); }; then..
│ │ │ -001c38c0: 6675 6e63 7469 6f6e 2070 6572 666f 726d  function perform
│ │ │ -001c38d0: 5f72 656d 6564 6961 7469 6f6e 207b 0a0a  _remediation {..
│ │ │ -001c38e0: 2020 2020 0a20 2020 2020 2020 2023 2074      .        # t
│ │ │ -001c38f0: 6865 206d 6f75 6e74 2070 6f69 6e74 202f  he mount point /
│ │ │ -001c3900: 7661 722f 746d 7020 6861 7320 746f 2062  var/tmp has to b
│ │ │ -001c3910: 6520 6465 6669 6e65 6420 696e 202f 6574  e defined in /et
│ │ │ -001c3920: 632f 6673 7461 620a 2020 2020 2020 2020  c/fstab.        
│ │ │ -001c3930: 2320 6265 666f 7265 2074 6869 7320 7265  # before this re
│ │ │ -001c3940: 6d65 6469 6174 696f 6e20 6361 6e20 6265  mediation can be
│ │ │ -001c3950: 2065 7865 6375 7465 642e 2049 6e20 6361   executed. In ca
│ │ │ -001c3960: 7365 2069 7420 6973 206e 6f74 2064 6566  se it is not def
│ │ │ -001c3970: 696e 6564 2c20 7468 650a 2020 2020 2020  ined, the.      
│ │ │ -001c3980: 2020 2320 7265 6d65 6469 6174 696f 6e20    # remediation 
│ │ │ -001c3990: 6162 6f72 7473 2061 6e64 206e 6f20 6368  aborts and no ch
│ │ │ -001c39a0: 616e 6765 7320 7265 6761 7264 696e 6720  anges regarding 
│ │ │ -001c39b0: 7468 6520 6d6f 756e 7420 706f 696e 7420  the mount point 
│ │ │ -001c39c0: 6172 6520 646f 6e65 2e0a 2020 2020 2020  are done..      
│ │ │ -001c39d0: 2020 6d6f 756e 745f 706f 696e 745f 6d61    mount_point_ma
│ │ │ -001c39e0: 7463 685f 7265 6765 7870 3d22 2428 7072  tch_regexp="$(pr
│ │ │ -001c39f0: 696e 7466 2022 5e5b 5b3a 7370 6163 653a  intf "^[[:space:
│ │ │ -001c3a00: 5d5d 2a5b 5e23 5d2e 2a5b 5b3a 7370 6163  ]]*[^#].*[[:spac
│ │ │ -001c3a10: 653a 5d5d 2573 5b5b 3a73 7061 6365 3a5d  e:]]%s[[:space:]
│ │ │ -001c3a20: 5d22 2022 2f76 6172 2f74 6d70 2229 220a  ]" "/var/tmp")".
│ │ │ -001c3a30: 0a20 2020 2067 7265 7020 2224 6d6f 756e  .    grep "$moun
│ │ │ -001c3a40: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ -001c3a50: 6765 7870 2220 2d71 202f 6574 632f 6673  gexp" -q /etc/fs
│ │ │ -001c3a60: 7461 6220 5c0a 2020 2020 2020 2020 7c7c  tab \.        ||
│ │ │ -001c3a70: 207b 2065 6368 6f20 2254 6865 206d 6f75   { echo "The mou
│ │ │ -001c3a80: 6e74 2070 6f69 6e74 2027 2f76 6172 2f74  nt point '/var/t
│ │ │ -001c3a90: 6d70 2720 6973 206e 6f74 2065 7665 6e20  mp' is not even 
│ │ │ -001c3aa0: 696e 202f 6574 632f 6673 7461 622c 2073  in /etc/fstab, s
│ │ │ -001c3ab0: 6f20 7765 2063 616e 2774 2073 6574 2075  o we can't set u
│ │ │ -001c3ac0: 7020 6d6f 756e 7420 6f70 7469 6f6e 7322  p mount options"
│ │ │ -001c3ad0: 2026 6774 3b26 616d 703b 323b 0a20 2020   >&2;.   
│ │ │ -001c3ae0: 2020 2020 2020 2020 2020 2020 2065 6368               ech
│ │ │ -001c3af0: 6f20 224e 6f74 2072 656d 6564 6961 7469  o "Not remediati
│ │ │ -001c3b00: 6e67 2c20 6265 6361 7573 6520 7468 6572  ng, because ther
│ │ │ -001c3b10: 6520 6973 206e 6f20 7265 636f 7264 206f  e is no record o
│ │ │ -001c3b20: 6620 2f76 6172 2f74 6d70 2069 6e20 2f65  f /var/tmp in /e
│ │ │ -001c3b30: 7463 2f66 7374 6162 2220 2667 743b 2661  tc/fstab" >&a
│ │ │ -001c3b40: 6d70 3b32 3b20 7265 7475 726e 2031 3b20  mp;2; return 1; 
│ │ │ -001c3b50: 7d0a 2020 2020 0a0a 0a20 2020 206d 6f75  }.    ...    mou
│ │ │ -001c3b60: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ -001c3b70: 6567 6578 703d 2224 2870 7269 6e74 6620  egexp="$(printf 
│ │ │ -001c3b80: 225e 5b5b 3a73 7061 6365 3a5d 5d2a 5b5e  "^[[:space:]]*[^
│ │ │ -001c3b90: 235d 2e2a 5b5b 3a73 7061 6365 3a5d 5d25  #].*[[:space:]]%
│ │ │ -001c3ba0: 735b 5b3a 7370 6163 653a 5d5d 2220 2f76  s[[:space:]]" /v
│ │ │ -001c3bb0: 6172 2f74 6d70 2922 0a0a 2020 2020 2320  ar/tmp)"..    # 
│ │ │ -001c3bc0: 4966 2074 6865 206d 6f75 6e74 2070 6f69  If the mount poi
│ │ │ -001c3bd0: 6e74 2069 7320 6e6f 7420 696e 202f 6574  nt is not in /et
│ │ │ -001c3be0: 632f 6673 7461 622c 2067 6574 2070 7265  c/fstab, get pre
│ │ │ -001c3bf0: 7669 6f75 7320 6d6f 756e 7420 6f70 7469  vious mount opti
│ │ │ -001c3c00: 6f6e 7320 6672 6f6d 202f 6574 632f 6d74  ons from /etc/mt
│ │ │ -001c3c10: 6162 0a20 2020 2069 6620 2120 6772 6570  ab.    if ! grep
│ │ │ -001c3c20: 202d 7120 2224 6d6f 756e 745f 706f 696e   -q "$mount_poin
│ │ │ -001c3c30: 745f 6d61 7463 685f 7265 6765 7870 2220  t_match_regexp" 
│ │ │ -001c3c40: 2f65 7463 2f66 7374 6162 3b20 7468 656e  /etc/fstab; then
│ │ │ -001c3c50: 0a20 2020 2020 2020 2023 2072 756e 7469  .        # runti
│ │ │ -001c3c60: 6d65 206f 7074 7320 7769 7468 6f75 7420  me opts without 
│ │ │ -001c3c70: 736f 6d65 2061 7574 6f6d 6174 6963 206b  some automatic k
│ │ │ -001c3c80: 6572 6e65 6c2f 7573 6572 7370 6163 652d  ernel/userspace-
│ │ │ -001c3c90: 6164 6465 6420 6465 6661 756c 7473 0a20  added defaults. 
│ │ │ -001c3ca0: 2020 2020 2020 2070 7265 7669 6f75 735f         previous_
│ │ │ -001c3cb0: 6d6f 756e 745f 6f70 7473 3d24 2867 7265  mount_opts=$(gre
│ │ │ -001c3cc0: 7020 2224 6d6f 756e 745f 706f 696e 745f  p "$mount_point_
│ │ │ -001c3cd0: 6d61 7463 685f 7265 6765 7870 2220 2f65  match_regexp" /e
│ │ │ -001c3ce0: 7463 2f6d 7461 6220 7c20 6865 6164 202d  tc/mtab | head -
│ │ │ -001c3cf0: 3120 7c20 2061 776b 2027 7b70 7269 6e74  1 |  awk '{print
│ │ │ -001c3d00: 2024 347d 2720 5c0a 2020 2020 2020 2020   $4}' \.        
│ │ │ -001c3d10: 2020 2020 2020 2020 2020 2020 7c20 7365              | se
│ │ │ -001c3d20: 6420 2d45 2022 732f 2872 777c 6465 6661  d -E "s/(rw|defa
│ │ │ -001c3d30: 756c 7473 7c73 6563 6c61 6265 6c7c 6e6f  ults|seclabel|no
│ │ │ -001c3d40: 6465 7629 282c 7c24 292f 2f67 3b73 2f2c  dev)(,|$)//g;s/,
│ │ │ -001c3d50: 242f 2f22 290a 2020 2020 2020 2020 5b20  $//").        [ 
│ │ │ -001c3d60: 2224 7072 6576 696f 7573 5f6d 6f75 6e74  "$previous_mount
│ │ │ -001c3d70: 5f6f 7074 7322 205d 2026 616d 703b 2661  _opts" ] &&a
│ │ │ -001c3d80: 6d70 3b20 7072 6576 696f 7573 5f6d 6f75  mp; previous_mou
│ │ │ -001c3d90: 6e74 5f6f 7074 732b 3d22 2c22 0a20 2020  nt_opts+=",".   
│ │ │ -001c3da0: 2020 2020 2023 2049 6e20 6973 6f39 3636       # In iso966
│ │ │ -001c3db0: 3020 6669 6c65 7379 7374 656d 7320 6d74  0 filesystems mt
│ │ │ -001c3dc0: 6162 2063 6f75 6c64 2064 6573 6372 6962  ab could describ
│ │ │ -001c3dd0: 6520 6120 2262 6c6f 636b 7369 7a65 2220  e a "blocksize" 
│ │ │ -001c3de0: 7661 6c75 652c 2074 6869 7320 7368 6f75  value, this shou
│ │ │ -001c3df0: 6c64 2062 6520 7265 666c 6563 7465 6420  ld be reflected 
│ │ │ -001c3e00: 696e 0a20 2020 2020 2020 2023 2066 7374  in.        # fst
│ │ │ -001c3e10: 6162 2061 7320 2262 6c6f 636b 222e 2020  ab as "block".  
│ │ │ -001c3e20: 5468 6520 6e65 7874 2076 6172 6961 626c  The next variabl
│ │ │ -001c3e30: 6520 6973 2074 6f20 7361 7469 7366 7920  e is to satisfy 
│ │ │ -001c3e40: 7368 656c 6c63 6865 636b 2053 4332 3035  shellcheck SC205
│ │ │ -001c3e50: 302e 0a20 2020 2020 2020 2066 735f 7479  0..        fs_ty
│ │ │ -001c3e60: 7065 3d22 220a 2020 2020 2020 2020 6966  pe="".        if
│ │ │ -001c3e70: 205b 2020 2224 6673 5f74 7970 6522 203d   [  "$fs_type" =
│ │ │ -001c3e80: 3d20 2269 736f 3936 3630 2220 5d20 3b20  = "iso9660" ] ; 
│ │ │ -001c3e90: 7468 656e 0a20 2020 2020 2020 2020 2020  then.           
│ │ │ -001c3ea0: 2070 7265 7669 6f75 735f 6d6f 756e 745f   previous_mount_
│ │ │ -001c3eb0: 6f70 7473 3d24 2873 6564 2027 732f 626c  opts=$(sed 's/bl
│ │ │ -001c3ec0: 6f63 6b73 697a 653d 2f62 6c6f 636b 3d2f  ocksize=/block=/
│ │ │ -001c3ed0: 2720 266c 743b 266c 743b 266c 743b 2022  ' <<< "
│ │ │ -001c3ee0: 2470 7265 7669 6f75 735f 6d6f 756e 745f  $previous_mount_
│ │ │ -001c3ef0: 6f70 7473 2229 0a20 2020 2020 2020 2066  opts").        f
│ │ │ -001c3f00: 690a 2020 2020 2020 2020 6563 686f 2022  i.        echo "
│ │ │ -001c3f10: 202f 7661 722f 746d 7020 2064 6566 6175   /var/tmp  defau
│ │ │ -001c3f20: 6c74 732c 247b 7072 6576 696f 7573 5f6d  lts,${previous_m
│ │ │ -001c3f30: 6f75 6e74 5f6f 7074 737d 6e6f 6465 7620  ount_opts}nodev 
│ │ │ -001c3f40: 3020 3022 2026 6774 3b26 6774 3b20 2f65  0 0" >> /e
│ │ │ -001c3f50: 7463 2f66 7374 6162 0a20 2020 2023 2049  tc/fstab.    # I
│ │ │ -001c3f60: 6620 7468 6520 6d6f 756e 745f 6f70 7420  f the mount_opt 
│ │ │ -001c3f70: 6f70 7469 6f6e 2069 7320 6e6f 7420 616c  option is not al
│ │ │ -001c3f80: 7265 6164 7920 696e 2074 6865 206d 6f75  ready in the mou
│ │ │ -001c3f90: 6e74 2070 6f69 6e74 2773 202f 6574 632f  nt point's /etc/
│ │ │ -001c3fa0: 6673 7461 6220 656e 7472 792c 2061 6464  fstab entry, add
│ │ │ -001c3fb0: 2069 740a 2020 2020 656c 6966 2021 2067   it.    elif ! g
│ │ │ -001c3fc0: 7265 7020 2224 6d6f 756e 745f 706f 696e  rep "$mount_poin
│ │ │ -001c3fd0: 745f 6d61 7463 685f 7265 6765 7870 2220  t_match_regexp" 
│ │ │ -001c3fe0: 2f65 7463 2f66 7374 6162 207c 2067 7265  /etc/fstab | gre
│ │ │ -001c3ff0: 7020 2d71 2022 6e6f 6465 7622 3b20 7468  p -q "nodev"; th
│ │ │ -001c4000: 656e 0a20 2020 2020 2020 2070 7265 7669  en.        previ
│ │ │ -001c4010: 6f75 735f 6d6f 756e 745f 6f70 7473 3d24  ous_mount_opts=$
│ │ │ -001c4020: 2867 7265 7020 2224 6d6f 756e 745f 706f  (grep "$mount_po
│ │ │ -001c4030: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ -001c4040: 2220 2f65 7463 2f66 7374 6162 207c 2061  " /etc/fstab | a
│ │ │ -001c4050: 776b 2027 7b70 7269 6e74 2024 347d 2729  wk '{print $4}')
│ │ │ -001c4060: 0a20 2020 2020 2020 2073 6564 202d 6920  .        sed -i 
│ │ │ -001c4070: 2273 7c5c 2824 7b6d 6f75 6e74 5f70 6f69  "s|\(${mount_poi
│ │ │ -001c4080: 6e74 5f6d 6174 6368 5f72 6567 6578 707d  nt_match_regexp}
│ │ │ -001c4090: 2e2a 247b 7072 6576 696f 7573 5f6d 6f75  .*${previous_mou
│ │ │ -001c40a0: 6e74 5f6f 7074 737d 5c29 7c5c 312c 6e6f  nt_opts}\)|\1,no
│ │ │ -001c40b0: 6465 767c 2220 2f65 7463 2f66 7374 6162  dev|" /etc/fstab
│ │ │ -001c40c0: 0a20 2020 2066 690a 0a0a 2020 2020 6966  .    fi...    if
│ │ │ -001c40d0: 206d 6b64 6972 202d 7020 222f 7661 722f   mkdir -p "/var/
│ │ │ -001c40e0: 746d 7022 3b20 7468 656e 0a20 2020 2020  tmp"; then.     
│ │ │ -001c40f0: 2020 2069 6620 6d6f 756e 7470 6f69 6e74     if mountpoint
│ │ │ -001c4100: 202d 7120 222f 7661 722f 746d 7022 3b20   -q "/var/tmp"; 
│ │ │ -001c4110: 7468 656e 0a20 2020 2020 2020 2020 2020  then.           
│ │ │ -001c4120: 206d 6f75 6e74 202d 6f20 7265 6d6f 756e   mount -o remoun
│ │ │ -001c4130: 7420 2d2d 7461 7267 6574 2022 2f76 6172  t --target "/var
│ │ │ -001c4140: 2f74 6d70 220a 2020 2020 2020 2020 6669  /tmp".        fi
│ │ │ -001c4150: 0a20 2020 2066 690a 7d0a 0a70 6572 666f  .    fi.}..perfo
│ │ │ -001c4160: 726d 5f72 656d 6564 6961 7469 6f6e 0a0a  rm_remediation..
│ │ │ -001c4170: 656c 7365 0a20 2020 2026 6774 3b26 616d  else.    >&am
│ │ │ -001c4180: 703b 3220 6563 686f 2027 5265 6d65 6469  p;2 echo 'Remedi
│ │ │ -001c4190: 6174 696f 6e20 6973 206e 6f74 2061 7070  ation is not app
│ │ │ -001c41a0: 6c69 6361 626c 652c 206e 6f74 6869 6e67  licable, nothing
│ │ │ -001c41b0: 2077 6173 2064 6f6e 6527 0a66 690a 3c2f   was done'.fi.
Reboo │ │ │ -001c36f0: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -001c3700: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
< │ │ │ +001c1fd0: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ +001c1ff0: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr> │ │ │ +001c2040: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472
low
Disr │ │ │ +001c2000: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +001c2010: 6869 6768 3c2f 7464 3e3c 2f74 723e 3c74 high
Reboot:false
Str │ │ │ +001c2050: 6174 6567 793a 3c2f 7468 3e3c 7464 3e63 ategy:c │ │ │ +001c2060: 6f6e 6669 6775 7265 3c2f 7464 3e3c 2f74 onfigure
<
│ │ │ +001c2080: 636f 6465 3e2d 206e 616d 653a 2047 6174  code>- name: Gat
│ │ │ +001c2090: 6865 7220 7468 6520 7061 636b 6167 6520  her the package 
│ │ │ +001c20a0: 6661 6374 730a 2020 7061 636b 6167 655f  facts.  package_
│ │ │ +001c20b0: 6661 6374 733a 0a20 2020 206d 616e 6167  facts:.    manag
│ │ │ +001c20c0: 6572 3a20 6175 746f 0a20 2074 6167 733a  er: auto.  tags:
│ │ │ +001c20d0: 0a20 202d 2063 6f6e 6669 6775 7265 5f73  .  - configure_s
│ │ │ +001c20e0: 7472 6174 6567 790a 2020 2d20 6869 6768  trategy.  - high
│ │ │ +001c20f0: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +001c2100: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ +001c2110: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ +001c2120: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074  ty.  - mount_opt
│ │ │ +001c2130: 696f 6e5f 7661 725f 746d 705f 6e6f 6465  ion_var_tmp_node
│ │ │ +001c2140: 760a 2020 2d20 6e6f 5f72 6562 6f6f 745f  v.  - no_reboot_
│ │ │ +001c2150: 6e65 6564 6564 0a0a 2d20 6e61 6d65 3a20  needed..- name: 
│ │ │ +001c2160: 2741 6464 206e 6f64 6576 204f 7074 696f  'Add nodev Optio
│ │ │ +001c2170: 6e20 746f 202f 7661 722f 746d 703a 2043  n to /var/tmp: C
│ │ │ +001c2180: 6865 636b 2069 6e66 6f72 6d61 7469 6f6e  heck information
│ │ │ +001c2190: 2061 7373 6f63 6961 7465 6420 746f 206d   associated to m
│ │ │ +001c21a0: 6f75 6e74 706f 696e 7427 0a20 2061 6e73  ountpoint'.  ans
│ │ │ +001c21b0: 6962 6c65 2e62 7569 6c74 696e 2e63 6f6d  ible.builtin.com
│ │ │ +001c21c0: 6d61 6e64 3a20 6669 6e64 6d6e 7420 2d2d  mand: findmnt --
│ │ │ +001c21d0: 6673 7461 6220 272f 7661 722f 746d 7027  fstab '/var/tmp'
│ │ │ +001c21e0: 0a20 2072 6567 6973 7465 723a 2064 6576  .  register: dev
│ │ │ +001c21f0: 6963 655f 6e61 6d65 0a20 2066 6169 6c65  ice_name.  faile
│ │ │ +001c2200: 645f 7768 656e 3a20 6465 7669 6365 5f6e  d_when: device_n
│ │ │ +001c2210: 616d 652e 7263 2026 6774 3b20 310a 2020  ame.rc > 1.  
│ │ │ +001c2220: 6368 616e 6765 645f 7768 656e 3a20 6661  changed_when: fa
│ │ │ +001c2230: 6c73 650a 2020 6368 6563 6b5f 6d6f 6465  lse.  check_mode
│ │ │ +001c2240: 3a20 6661 6c73 650a 2020 7768 656e 3a0a  : false.  when:.
│ │ │ +001c2250: 2020 2d20 2820 6e6f 7420 2820 226b 6572    - ( not ( "ker
│ │ │ +001c2260: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ +001c2270: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ +001c2280: 6e64 2022 626f 6f74 6322 2069 6e20 616e  nd "bootc" in an
│ │ │ +001c2290: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001c22a0: 6167 6573 0a20 2020 2061 6e64 206e 6f74  ages.    and not
│ │ │ +001c22b0: 2022 6f70 656e 7368 6966 742d 6b75 6265   "openshift-kube
│ │ │ +001c22c0: 6c65 7422 2069 6e20 616e 7369 626c 655f  let" in ansible_
│ │ │ +001c22d0: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ +001c22e0: 6e64 2022 6f73 7472 6565 2220 696e 2061  nd "ostree" in a
│ │ │ +001c22f0: 6e73 6962 6c65 5f70 726f 635f 636d 646c  nsible_proc_cmdl
│ │ │ +001c2300: 696e 650a 2020 2020 2920 616e 6420 6e6f  ine.    ) and no
│ │ │ +001c2310: 7420 2820 616e 7369 626c 655f 7669 7274  t ( ansible_virt
│ │ │ +001c2320: 7561 6c69 7a61 7469 6f6e 5f74 7970 6520  ualization_type 
│ │ │ +001c2330: 696e 205b 2264 6f63 6b65 7222 2c20 226c  in ["docker", "l
│ │ │ +001c2340: 7863 222c 2022 6f70 656e 767a 222c 2022  xc", "openvz", "
│ │ │ +001c2350: 706f 646d 616e 222c 0a20 2020 2022 636f  podman",.    "co
│ │ │ +001c2360: 6e74 6169 6e65 7222 5d20 2920 290a 2020  ntainer"] ) ).  
│ │ │ +001c2370: 2d20 2722 2f76 6172 2f74 6d70 2220 696e  - '"/var/tmp" in
│ │ │ +001c2380: 2061 6e73 6962 6c65 5f6d 6f75 6e74 7320   ansible_mounts 
│ │ │ +001c2390: 7c20 6d61 7028 6174 7472 6962 7574 653d  | map(attribute=
│ │ │ +001c23a0: 226d 6f75 6e74 2229 207c 206c 6973 7427  "mount") | list'
│ │ │ +001c23b0: 0a20 2074 6167 733a 0a20 202d 2063 6f6e  .  tags:.  - con
│ │ │ +001c23c0: 6669 6775 7265 5f73 7472 6174 6567 790a  figure_strategy.
│ │ │ +001c23d0: 2020 2d20 6869 6768 5f64 6973 7275 7074    - high_disrupt
│ │ │ +001c23e0: 696f 6e0a 2020 2d20 6c6f 775f 636f 6d70  ion.  - low_comp
│ │ │ +001c23f0: 6c65 7869 7479 0a20 202d 206d 6564 6975  lexity.  - mediu
│ │ │ +001c2400: 6d5f 7365 7665 7269 7479 0a20 202d 206d  m_severity.  - m
│ │ │ +001c2410: 6f75 6e74 5f6f 7074 696f 6e5f 7661 725f  ount_option_var_
│ │ │ +001c2420: 746d 705f 6e6f 6465 760a 2020 2d20 6e6f  tmp_nodev.  - no
│ │ │ +001c2430: 5f72 6562 6f6f 745f 6e65 6564 6564 0a0a  _reboot_needed..
│ │ │ +001c2440: 2d20 6e61 6d65 3a20 2741 6464 206e 6f64  - name: 'Add nod
│ │ │ +001c2450: 6576 204f 7074 696f 6e20 746f 202f 7661  ev Option to /va
│ │ │ +001c2460: 722f 746d 703a 2043 7265 6174 6520 6d6f  r/tmp: Create mo
│ │ │ +001c2470: 756e 745f 696e 666f 2064 6963 7469 6f6e  unt_info diction
│ │ │ +001c2480: 6172 7920 7661 7269 6162 6c65 270a 2020  ary variable'.  
│ │ │ +001c2490: 7365 745f 6661 6374 3a0a 2020 2020 6d6f  set_fact:.    mo
│ │ │ +001c24a0: 756e 745f 696e 666f 3a20 277b 7b20 6d6f  unt_info: '{{ mo
│ │ │ +001c24b0: 756e 745f 696e 666f 7c64 6566 6175 6c74  unt_info|default
│ │ │ +001c24c0: 287b 7d29 7c63 6f6d 6269 6e65 287b 6974  ({})|combine({it
│ │ │ +001c24d0: 656d 2e30 3a20 6974 656d 2e31 7d29 207d  em.0: item.1}) }
│ │ │ +001c24e0: 7d27 0a20 2077 6974 685f 746f 6765 7468  }'.  with_togeth
│ │ │ +001c24f0: 6572 3a0a 2020 2d20 277b 7b20 6465 7669  er:.  - '{{ devi
│ │ │ +001c2500: 6365 5f6e 616d 652e 7374 646f 7574 5f6c  ce_name.stdout_l
│ │ │ +001c2510: 696e 6573 5b30 5d2e 7370 6c69 7428 2920  ines[0].split() 
│ │ │ +001c2520: 7c20 6d61 7028 2727 6c6f 7765 7227 2729  | map(''lower'')
│ │ │ +001c2530: 207c 206c 6973 7420 7d7d 270a 2020 2d20   | list }}'.  - 
│ │ │ +001c2540: 277b 7b20 6465 7669 6365 5f6e 616d 652e  '{{ device_name.
│ │ │ +001c2550: 7374 646f 7574 5f6c 696e 6573 5b31 5d2e  stdout_lines[1].
│ │ │ +001c2560: 7370 6c69 7428 2920 7c20 6c69 7374 207d  split() | list }
│ │ │ +001c2570: 7d27 0a20 2077 6865 6e3a 0a20 202d 2028  }'.  when:.  - (
│ │ │ +001c2580: 206e 6f74 2028 2022 6b65 726e 656c 2220   not ( "kernel" 
│ │ │ +001c2590: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001c25a0: 2e70 6163 6b61 6765 7320 616e 6420 2262  .packages and "b
│ │ │ +001c25b0: 6f6f 7463 2220 696e 2061 6e73 6962 6c65  ootc" in ansible
│ │ │ +001c25c0: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ +001c25d0: 2020 2020 616e 6420 6e6f 7420 226f 7065      and not "ope
│ │ │ +001c25e0: 6e73 6869 6674 2d6b 7562 656c 6574 2220  nshift-kubelet" 
│ │ │ +001c25f0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001c2600: 2e70 6163 6b61 6765 7320 616e 6420 226f  .packages and "o
│ │ │ +001c2610: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ +001c2620: 655f 7072 6f63 5f63 6d64 6c69 6e65 0a20  e_proc_cmdline. 
│ │ │ +001c2630: 2020 2029 2061 6e64 206e 6f74 2028 2061     ) and not ( a
│ │ │ +001c2640: 6e73 6962 6c65 5f76 6972 7475 616c 697a  nsible_virtualiz
│ │ │ +001c2650: 6174 696f 6e5f 7479 7065 2069 6e20 5b22  ation_type in ["
│ │ │ +001c2660: 646f 636b 6572 222c 2022 6c78 6322 2c20  docker", "lxc", 
│ │ │ +001c2670: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61  "openvz", "podma
│ │ │ +001c2680: 6e22 2c0a 2020 2020 2263 6f6e 7461 696e  n",.    "contain
│ │ │ +001c2690: 6572 225d 2029 2029 0a20 202d 2027 222f  er"] ) ).  - '"/
│ │ │ +001c26a0: 7661 722f 746d 7022 2069 6e20 616e 7369  var/tmp" in ansi
│ │ │ +001c26b0: 626c 655f 6d6f 756e 7473 207c 206d 6170  ble_mounts | map
│ │ │ +001c26c0: 2861 7474 7269 6275 7465 3d22 6d6f 756e  (attribute="moun
│ │ │ +001c26d0: 7422 2920 7c20 6c69 7374 270a 2020 2d20  t") | list'.  - 
│ │ │ +001c26e0: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ +001c26f0: 7574 2069 7320 6465 6669 6e65 6420 616e  ut is defined an
│ │ │ +001c2700: 6420 6465 7669 6365 5f6e 616d 652e 7374  d device_name.st
│ │ │ +001c2710: 646f 7574 5f6c 696e 6573 2069 7320 6465  dout_lines is de
│ │ │ +001c2720: 6669 6e65 640a 2020 2d20 2864 6576 6963  fined.  - (devic
│ │ │ +001c2730: 655f 6e61 6d65 2e73 7464 6f75 7420 7c20  e_name.stdout | 
│ │ │ +001c2740: 6c65 6e67 7468 2026 6774 3b20 3029 0a20  length > 0). 
│ │ │ +001c2750: 2074 6167 733a 0a20 202d 2063 6f6e 6669   tags:.  - confi
│ │ │ +001c2760: 6775 7265 5f73 7472 6174 6567 790a 2020  gure_strategy.  
│ │ │ +001c2770: 2d20 6869 6768 5f64 6973 7275 7074 696f  - high_disruptio
│ │ │ +001c2780: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65  n.  - low_comple
│ │ │ +001c2790: 7869 7479 0a20 202d 206d 6564 6975 6d5f  xity.  - medium_
│ │ │ +001c27a0: 7365 7665 7269 7479 0a20 202d 206d 6f75  severity.  - mou
│ │ │ +001c27b0: 6e74 5f6f 7074 696f 6e5f 7661 725f 746d  nt_option_var_tm
│ │ │ +001c27c0: 705f 6e6f 6465 760a 2020 2d20 6e6f 5f72  p_nodev.  - no_r
│ │ │ +001c27d0: 6562 6f6f 745f 6e65 6564 6564 0a0a 2d20  eboot_needed..- 
│ │ │ +001c27e0: 6e61 6d65 3a20 2741 6464 206e 6f64 6576  name: 'Add nodev
│ │ │ +001c27f0: 204f 7074 696f 6e20 746f 202f 7661 722f   Option to /var/
│ │ │ +001c2800: 746d 703a 2049 6620 2f76 6172 2f74 6d70  tmp: If /var/tmp
│ │ │ +001c2810: 206e 6f74 206d 6f75 6e74 6564 2c20 6372   not mounted, cr
│ │ │ +001c2820: 6166 7420 6d6f 756e 745f 696e 666f 206d  aft mount_info m
│ │ │ +001c2830: 616e 7561 6c6c 7927 0a20 2073 6574 5f66  anually'.  set_f
│ │ │ +001c2840: 6163 743a 0a20 2020 206d 6f75 6e74 5f69  act:.    mount_i
│ │ │ +001c2850: 6e66 6f3a 2027 7b7b 206d 6f75 6e74 5f69  nfo: '{{ mount_i
│ │ │ +001c2860: 6e66 6f7c 6465 6661 756c 7428 7b7d 297c  nfo|default({})|
│ │ │ +001c2870: 636f 6d62 696e 6528 7b69 7465 6d2e 303a  combine({item.0:
│ │ │ +001c2880: 2069 7465 6d2e 317d 2920 7d7d 270a 2020   item.1}) }}'.  
│ │ │ +001c2890: 7769 7468 5f74 6f67 6574 6865 723a 0a20  with_together:. 
│ │ │ +001c28a0: 202d 202d 2074 6172 6765 740a 2020 2020   - - target.    
│ │ │ +001c28b0: 2d20 736f 7572 6365 0a20 2020 202d 2066  - source.    - f
│ │ │ +001c28c0: 7374 7970 650a 2020 2020 2d20 6f70 7469  stype.    - opti
│ │ │ +001c28d0: 6f6e 730a 2020 2d20 2d20 2f76 6172 2f74  ons.  - - /var/t
│ │ │ +001c28e0: 6d70 0a20 2020 202d 2027 270a 2020 2020  mp.    - ''.    
│ │ │ +001c28f0: 2d20 2727 0a20 2020 202d 2064 6566 6175  - ''.    - defau
│ │ │ +001c2900: 6c74 730a 2020 7768 656e 3a0a 2020 2d20  lts.  when:.  - 
│ │ │ +001c2910: 2820 6e6f 7420 2820 226b 6572 6e65 6c22  ( not ( "kernel"
│ │ │ +001c2920: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001c2930: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ +001c2940: 626f 6f74 6322 2069 6e20 616e 7369 626c  bootc" in ansibl
│ │ │ +001c2950: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +001c2960: 0a20 2020 2061 6e64 206e 6f74 2022 6f70  .    and not "op
│ │ │ +001c2970: 656e 7368 6966 742d 6b75 6265 6c65 7422  enshift-kubelet"
│ │ │ +001c2980: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001c2990: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ +001c29a0: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ +001c29b0: 6c65 5f70 726f 635f 636d 646c 696e 650a  le_proc_cmdline.
│ │ │ +001c29c0: 2020 2020 2920 616e 6420 6e6f 7420 2820      ) and not ( 
│ │ │ +001c29d0: 616e 7369 626c 655f 7669 7274 7561 6c69  ansible_virtuali
│ │ │ +001c29e0: 7a61 7469 6f6e 5f74 7970 6520 696e 205b  zation_type in [
│ │ │ +001c29f0: 2264 6f63 6b65 7222 2c20 226c 7863 222c  "docker", "lxc",
│ │ │ +001c2a00: 2022 6f70 656e 767a 222c 2022 706f 646d   "openvz", "podm
│ │ │ +001c2a10: 616e 222c 0a20 2020 2022 636f 6e74 6169  an",.    "contai
│ │ │ +001c2a20: 6e65 7222 5d20 2920 290a 2020 2d20 2722  ner"] ) ).  - '"
│ │ │ +001c2a30: 2f76 6172 2f74 6d70 2220 696e 2061 6e73  /var/tmp" in ans
│ │ │ +001c2a40: 6962 6c65 5f6d 6f75 6e74 7320 7c20 6d61  ible_mounts | ma
│ │ │ +001c2a50: 7028 6174 7472 6962 7574 653d 226d 6f75  p(attribute="mou
│ │ │ +001c2a60: 6e74 2229 207c 206c 6973 7427 0a20 202d  nt") | list'.  -
│ │ │ +001c2a70: 2028 222d 2d66 7374 6162 2220 7c20 6c65   ("--fstab" | le
│ │ │ +001c2a80: 6e67 7468 203d 3d20 3029 0a20 202d 2064  ngth == 0).  - d
│ │ │ +001c2a90: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ +001c2aa0: 7420 6973 2064 6566 696e 6564 2061 6e64  t is defined and
│ │ │ +001c2ab0: 2064 6576 6963 655f 6e61 6d65 2e73 7464   device_name.std
│ │ │ +001c2ac0: 6f75 745f 6c69 6e65 7320 6973 2064 6566  out_lines is def
│ │ │ +001c2ad0: 696e 6564 0a20 202d 2028 6465 7669 6365  ined.  - (device
│ │ │ +001c2ae0: 5f6e 616d 652e 7374 646f 7574 207c 206c  _name.stdout | l
│ │ │ +001c2af0: 656e 6774 6820 3d3d 2030 290a 2020 7461  ength == 0).  ta
│ │ │ +001c2b00: 6773 3a0a 2020 2d20 636f 6e66 6967 7572  gs:.  - configur
│ │ │ +001c2b10: 655f 7374 7261 7465 6779 0a20 202d 2068  e_strategy.  - h
│ │ │ +001c2b20: 6967 685f 6469 7372 7570 7469 6f6e 0a20  igh_disruption. 
│ │ │ +001c2b30: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ +001c2b40: 790a 2020 2d20 6d65 6469 756d 5f73 6576  y.  - medium_sev
│ │ │ +001c2b50: 6572 6974 790a 2020 2d20 6d6f 756e 745f  erity.  - mount_
│ │ │ +001c2b60: 6f70 7469 6f6e 5f76 6172 5f74 6d70 5f6e  option_var_tmp_n
│ │ │ +001c2b70: 6f64 6576 0a20 202d 206e 6f5f 7265 626f  odev.  - no_rebo
│ │ │ +001c2b80: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d  ot_needed..- nam
│ │ │ +001c2b90: 653a 2027 4164 6420 6e6f 6465 7620 4f70  e: 'Add nodev Op
│ │ │ +001c2ba0: 7469 6f6e 2074 6f20 2f76 6172 2f74 6d70  tion to /var/tmp
│ │ │ +001c2bb0: 3a20 4d61 6b65 2073 7572 6520 6e6f 6465  : Make sure node
│ │ │ +001c2bc0: 7620 6f70 7469 6f6e 2069 7320 7061 7274  v option is part
│ │ │ +001c2bd0: 206f 6620 7468 6520 746f 202f 7661 722f   of the to /var/
│ │ │ +001c2be0: 746d 700a 2020 2020 6f70 7469 6f6e 7327  tmp.    options'
│ │ │ +001c2bf0: 0a20 2073 6574 5f66 6163 743a 0a20 2020  .  set_fact:.   
│ │ │ +001c2c00: 206d 6f75 6e74 5f69 6e66 6f3a 2027 7b7b   mount_info: '{{
│ │ │ +001c2c10: 206d 6f75 6e74 5f69 6e66 6f20 7c20 636f   mount_info | co
│ │ │ +001c2c20: 6d62 696e 6528 207b 2727 6f70 7469 6f6e  mbine( {''option
│ │ │ +001c2c30: 7327 273a 2727 2727 7e28 6d6f 756e 745f  s'':''''~(mount_
│ │ │ +001c2c40: 696e 666f 2e6f 7074 696f 6e73 207c 0a20  info.options |. 
│ │ │ +001c2c50: 2020 2020 2064 6566 6175 6c74 2827 2727       default('''
│ │ │ +001c2c60: 2729 297e 2827 272c 2727 2069 6620 286d  '))~('','' if (m
│ │ │ +001c2c70: 6f75 6e74 5f69 6e66 6f2e 6f70 7469 6f6e  ount_info.option
│ │ │ +001c2c80: 7320 7c20 6465 6661 756c 7428 2727 2727  s | default(''''
│ │ │ +001c2c90: 2929 2065 6c73 6520 2727 2727 297e 2727  )) else '''')~''
│ │ │ +001c2ca0: 6e6f 6465 7627 270a 2020 2020 2020 7d29  nodev''.      })
│ │ │ +001c2cb0: 207d 7d27 0a20 2077 6865 6e3a 0a20 202d   }}'.  when:.  -
│ │ │ +001c2cc0: 2028 206e 6f74 2028 2022 6b65 726e 656c   ( not ( "kernel
│ │ │ +001c2cd0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +001c2ce0: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ +001c2cf0: 2262 6f6f 7463 2220 696e 2061 6e73 6962  "bootc" in ansib
│ │ │ +001c2d00: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001c2d10: 730a 2020 2020 616e 6420 6e6f 7420 226f  s.    and not "o
│ │ │ +001c2d20: 7065 6e73 6869 6674 2d6b 7562 656c 6574  penshift-kubelet
│ │ │ +001c2d30: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +001c2d40: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ +001c2d50: 226f 7374 7265 6522 2069 6e20 616e 7369  "ostree" in ansi
│ │ │ +001c2d60: 626c 655f 7072 6f63 5f63 6d64 6c69 6e65  ble_proc_cmdline
│ │ │ +001c2d70: 0a20 2020 2029 2061 6e64 206e 6f74 2028  .    ) and not (
│ │ │ +001c2d80: 2061 6e73 6962 6c65 5f76 6972 7475 616c   ansible_virtual
│ │ │ +001c2d90: 697a 6174 696f 6e5f 7479 7065 2069 6e20  ization_type in 
│ │ │ +001c2da0: 5b22 646f 636b 6572 222c 2022 6c78 6322  ["docker", "lxc"
│ │ │ +001c2db0: 2c20 226f 7065 6e76 7a22 2c20 2270 6f64  , "openvz", "pod
│ │ │ +001c2dc0: 6d61 6e22 2c0a 2020 2020 2263 6f6e 7461  man",.    "conta
│ │ │ +001c2dd0: 696e 6572 225d 2029 2029 0a20 202d 2027  iner"] ) ).  - '
│ │ │ +001c2de0: 222f 7661 722f 746d 7022 2069 6e20 616e  "/var/tmp" in an
│ │ │ +001c2df0: 7369 626c 655f 6d6f 756e 7473 207c 206d  sible_mounts | m
│ │ │ +001c2e00: 6170 2861 7474 7269 6275 7465 3d22 6d6f  ap(attribute="mo
│ │ │ +001c2e10: 756e 7422 2920 7c20 6c69 7374 270a 2020  unt") | list'.  
│ │ │ +001c2e20: 2d20 6d6f 756e 745f 696e 666f 2069 7320  - mount_info is 
│ │ │ +001c2e30: 6465 6669 6e65 6420 616e 6420 226e 6f64  defined and "nod
│ │ │ +001c2e40: 6576 2220 6e6f 7420 696e 2028 6d6f 756e  ev" not in (moun
│ │ │ +001c2e50: 745f 696e 666f 2e6f 7074 696f 6e73 207c  t_info.options |
│ │ │ +001c2e60: 2064 6566 6175 6c74 2827 2729 290a 2020   default('')).  
│ │ │ +001c2e70: 7461 6773 3a0a 2020 2d20 636f 6e66 6967  tags:.  - config
│ │ │ +001c2e80: 7572 655f 7374 7261 7465 6779 0a20 202d  ure_strategy.  -
│ │ │ +001c2e90: 2068 6967 685f 6469 7372 7570 7469 6f6e   high_disruption
│ │ │ +001c2ea0: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ +001c2eb0: 6974 790a 2020 2d20 6d65 6469 756d 5f73  ity.  - medium_s
│ │ │ +001c2ec0: 6576 6572 6974 790a 2020 2d20 6d6f 756e  everity.  - moun
│ │ │ +001c2ed0: 745f 6f70 7469 6f6e 5f76 6172 5f74 6d70  t_option_var_tmp
│ │ │ +001c2ee0: 5f6e 6f64 6576 0a20 202d 206e 6f5f 7265  _nodev.  - no_re
│ │ │ +001c2ef0: 626f 6f74 5f6e 6565 6465 640a 0a2d 206e  boot_needed..- n
│ │ │ +001c2f00: 616d 653a 2027 4164 6420 6e6f 6465 7620  ame: 'Add nodev 
│ │ │ +001c2f10: 4f70 7469 6f6e 2074 6f20 2f76 6172 2f74  Option to /var/t
│ │ │ +001c2f20: 6d70 3a20 456e 7375 7265 202f 7661 722f  mp: Ensure /var/
│ │ │ +001c2f30: 746d 7020 6973 206d 6f75 6e74 6564 2077  tmp is mounted w
│ │ │ +001c2f40: 6974 6820 6e6f 6465 7620 6f70 7469 6f6e  ith nodev option
│ │ │ +001c2f50: 270a 2020 616e 7369 626c 652e 706f 7369  '.  ansible.posi
│ │ │ +001c2f60: 782e 6d6f 756e 743a 0a20 2020 2070 6174  x.mount:.    pat
│ │ │ +001c2f70: 683a 202f 7661 722f 746d 700a 2020 2020  h: /var/tmp.    
│ │ │ +001c2f80: 7372 633a 2027 7b7b 206d 6f75 6e74 5f69  src: '{{ mount_i
│ │ │ +001c2f90: 6e66 6f2e 736f 7572 6365 207c 2064 6566  nfo.source | def
│ │ │ +001c2fa0: 6175 6c74 2827 2727 2729 207d 7d27 0a20  ault('''') }}'. 
│ │ │ +001c2fb0: 2020 206f 7074 733a 2027 7b7b 206d 6f75     opts: '{{ mou
│ │ │ +001c2fc0: 6e74 5f69 6e66 6f2e 6f70 7469 6f6e 7320  nt_info.options 
│ │ │ +001c2fd0: 7c20 6465 6661 756c 7428 2727 2727 2920  | default('''') 
│ │ │ +001c2fe0: 7d7d 270a 2020 2020 7374 6174 653a 206d  }}'.    state: m
│ │ │ +001c2ff0: 6f75 6e74 6564 0a20 2020 2066 7374 7970  ounted.    fstyp
│ │ │ +001c3000: 653a 2027 7b7b 206d 6f75 6e74 5f69 6e66  e: '{{ mount_inf
│ │ │ +001c3010: 6f2e 6673 7479 7065 207c 2064 6566 6175  o.fstype | defau
│ │ │ +001c3020: 6c74 2827 2727 2729 207d 7d27 0a20 2072  lt('''') }}'.  r
│ │ │ +001c3030: 6567 6973 7465 723a 206d 6f75 6e74 5f72  egister: mount_r
│ │ │ +001c3040: 6573 756c 740a 2020 6661 696c 6564 5f77  esult.  failed_w
│ │ │ +001c3050: 6865 6e3a 0a20 202d 206d 6f75 6e74 5f72  hen:.  - mount_r
│ │ │ +001c3060: 6573 756c 7420 6973 2066 6169 6c65 640a  esult is failed.
│ │ │ +001c3070: 2020 2d20 2727 2774 6172 6765 7420 6973    - '''target is
│ │ │ +001c3080: 2062 7573 7927 2720 6e6f 7420 696e 2028   busy'' not in (
│ │ │ +001c3090: 6d6f 756e 745f 7265 7375 6c74 2e6d 7367  mount_result.msg
│ │ │ +001c30a0: 207c 2064 6566 6175 6c74 2827 2727 2729   | default('''')
│ │ │ +001c30b0: 2927 0a20 202d 2027 2727 616c 7265 6164  )'.  - '''alread
│ │ │ +001c30c0: 7920 6d6f 756e 7465 6427 2720 6e6f 7420  y mounted'' not 
│ │ │ +001c30d0: 696e 2028 6d6f 756e 745f 7265 7375 6c74  in (mount_result
│ │ │ +001c30e0: 2e6d 7367 207c 2064 6566 6175 6c74 2827  .msg | default('
│ │ │ +001c30f0: 2727 2729 2927 0a20 2077 6865 6e3a 0a20  '''))'.  when:. 
│ │ │ +001c3100: 202d 2028 206e 6f74 2028 2022 6b65 726e   - ( not ( "kern
│ │ │ +001c3110: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ +001c3120: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +001c3130: 6420 2262 6f6f 7463 2220 696e 2061 6e73  d "bootc" in ans
│ │ │ +001c3140: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001c3150: 6765 730a 2020 2020 616e 6420 6e6f 7420  ges.    and not 
│ │ │ +001c3160: 226f 7065 6e73 6869 6674 2d6b 7562 656c  "openshift-kubel
│ │ │ +001c3170: 6574 2220 696e 2061 6e73 6962 6c65 5f66  et" in ansible_f
│ │ │ +001c3180: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +001c3190: 6420 226f 7374 7265 6522 2069 6e20 616e  d "ostree" in an
│ │ │ +001c31a0: 7369 626c 655f 7072 6f63 5f63 6d64 6c69  sible_proc_cmdli
│ │ │ +001c31b0: 6e65 0a20 2020 2029 2061 6e64 206e 6f74  ne.    ) and not
│ │ │ +001c31c0: 2028 2061 6e73 6962 6c65 5f76 6972 7475   ( ansible_virtu
│ │ │ +001c31d0: 616c 697a 6174 696f 6e5f 7479 7065 2069  alization_type i
│ │ │ +001c31e0: 6e20 5b22 646f 636b 6572 222c 2022 6c78  n ["docker", "lx
│ │ │ +001c31f0: 6322 2c20 226f 7065 6e76 7a22 2c20 2270  c", "openvz", "p
│ │ │ +001c3200: 6f64 6d61 6e22 2c0a 2020 2020 2263 6f6e  odman",.    "con
│ │ │ +001c3210: 7461 696e 6572 225d 2029 2029 0a20 202d  tainer"] ) ).  -
│ │ │ +001c3220: 2027 222f 7661 722f 746d 7022 2069 6e20   '"/var/tmp" in 
│ │ │ +001c3230: 616e 7369 626c 655f 6d6f 756e 7473 207c  ansible_mounts |
│ │ │ +001c3240: 206d 6170 2861 7474 7269 6275 7465 3d22   map(attribute="
│ │ │ +001c3250: 6d6f 756e 7422 2920 7c20 6c69 7374 270a  mount") | list'.
│ │ │ +001c3260: 2020 2d20 6d6f 756e 745f 696e 666f 2069    - mount_info i
│ │ │ +001c3270: 7320 6465 6669 6e65 640a 2020 2d20 2864  s defined.  - (d
│ │ │ +001c3280: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ +001c3290: 7420 6973 2064 6566 696e 6564 2061 6e64  t is defined and
│ │ │ +001c32a0: 2028 6465 7669 6365 5f6e 616d 652e 7374   (device_name.st
│ │ │ +001c32b0: 646f 7574 207c 206c 656e 6774 6820 2667  dout | length &g
│ │ │ +001c32c0: 743b 2030 2929 206f 7220 2822 2d2d 6673  t; 0)) or ("--fs
│ │ │ +001c32d0: 7461 6222 0a20 2020 207c 206c 656e 6774  tab".    | lengt
│ │ │ +001c32e0: 6820 3d3d 2030 290a 2020 7461 6773 3a0a  h == 0).  tags:.
│ │ │ +001c32f0: 2020 2d20 636f 6e66 6967 7572 655f 7374    - configure_st
│ │ │ +001c3300: 7261 7465 6779 0a20 202d 2068 6967 685f  rategy.  - high_
│ │ │ +001c3310: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ +001c3320: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ +001c3330: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ +001c3340: 790a 2020 2d20 6d6f 756e 745f 6f70 7469  y.  - mount_opti
│ │ │ +001c3350: 6f6e 5f76 6172 5f74 6d70 5f6e 6f64 6576  on_var_tmp_nodev
│ │ │ +001c3360: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ +001c3370: 6565 6465 640a 3c2f 636f 6465 3e3c 2f70  eeded.

Remediatio │ │ │ +001c3430: 6e20 5368 656c 6c20 7363 7269 7074 20e2 n Shell script . │ │ │ +001c3440: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ +001c34c0: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +001c34d0: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
Reboot:false
│ │ │ +001c34f0: 3c63 6f64 653e 2320 5265 6d65 6469 6174  # Remediat
│ │ │ +001c3500: 696f 6e20 6973 2061 7070 6c69 6361 626c  ion is applicabl
│ │ │ +001c3510: 6520 6f6e 6c79 2069 6e20 6365 7274 6169  e only in certai
│ │ │ +001c3520: 6e20 706c 6174 666f 726d 730a 6966 2028  n platforms.if (
│ │ │ +001c3530: 2021 2028 207b 2072 706d 202d 2d71 7569   ! ( { rpm --qui
│ │ │ +001c3540: 6574 202d 7120 6b65 726e 656c 203b 7d20  et -q kernel ;} 
│ │ │ +001c3550: 2661 6d70 3b26 616d 703b 207b 2072 706d  && { rpm
│ │ │ +001c3560: 202d 2d71 7569 6574 202d 7120 626f 6f74   --quiet -q boot
│ │ │ +001c3570: 6320 3b7d 2026 616d 703b 2661 6d70 3b20  c ;} && 
│ │ │ +001c3580: 7b20 2120 7270 6d20 2d2d 7175 6965 7420  { ! rpm --quiet 
│ │ │ +001c3590: 2d71 206f 7065 6e73 6869 6674 2d6b 7562  -q openshift-kub
│ │ │ +001c35a0: 656c 6574 203b 7d20 2661 6d70 3b26 616d  elet ;} &&am
│ │ │ +001c35b0: 703b 2028 5b20 2d66 202f 7275 6e2f 6f73  p; ([ -f /run/os
│ │ │ +001c35c0: 7472 6565 2d62 6f6f 7465 6420 5d20 7c7c  tree-booted ] ||
│ │ │ +001c35d0: 205b 202d 4c20 2f6f 7374 7265 6520 5d29   [ -L /ostree ])
│ │ │ +001c35e0: 2029 2026 616d 703b 2661 6d70 3b20 2120   ) && ! 
│ │ │ +001c35f0: 2820 5b20 2d66 202f 2e64 6f63 6b65 7265  ( [ -f /.dockere
│ │ │ +001c3600: 6e76 205d 207c 7c20 5b20 2d66 202f 7275  nv ] || [ -f /ru
│ │ │ +001c3610: 6e2f 2e63 6f6e 7461 696e 6572 656e 7620  n/.containerenv 
│ │ │ +001c3620: 5d20 2920 2920 2661 6d70 3b26 616d 703b  ] ) ) &&
│ │ │ +001c3630: 207b 2028 2066 696e 646d 6e74 202d 2d6b   { ( findmnt --k
│ │ │ +001c3640: 6572 6e65 6c20 222f 7661 722f 746d 7022  ernel "/var/tmp"
│ │ │ +001c3650: 2026 6774 3b20 2f64 6576 2f6e 756c 6c20   > /dev/null 
│ │ │ +001c3660: 7c7c 2066 696e 646d 6e74 202d 2d66 7374  || findmnt --fst
│ │ │ +001c3670: 6162 2022 2f76 6172 2f74 6d70 2220 2667  ab "/var/tmp" &g
│ │ │ +001c3680: 743b 202f 6465 762f 6e75 6c6c 2029 3b20  t; /dev/null ); 
│ │ │ +001c3690: 7d3b 2074 6865 6e0a 0a66 756e 6374 696f  }; then..functio
│ │ │ +001c36a0: 6e20 7065 7266 6f72 6d5f 7265 6d65 6469  n perform_remedi
│ │ │ +001c36b0: 6174 696f 6e20 7b0a 0a20 2020 200a 2020  ation {..    .  
│ │ │ +001c36c0: 2020 2020 2020 2320 7468 6520 6d6f 756e        # the moun
│ │ │ +001c36d0: 7420 706f 696e 7420 2f76 6172 2f74 6d70  t point /var/tmp
│ │ │ +001c36e0: 2068 6173 2074 6f20 6265 2064 6566 696e   has to be defin
│ │ │ +001c36f0: 6564 2069 6e20 2f65 7463 2f66 7374 6162  ed in /etc/fstab
│ │ │ +001c3700: 0a20 2020 2020 2020 2023 2062 6566 6f72  .        # befor
│ │ │ +001c3710: 6520 7468 6973 2072 656d 6564 6961 7469  e this remediati
│ │ │ +001c3720: 6f6e 2063 616e 2062 6520 6578 6563 7574  on can be execut
│ │ │ +001c3730: 6564 2e20 496e 2063 6173 6520 6974 2069  ed. In case it i
│ │ │ +001c3740: 7320 6e6f 7420 6465 6669 6e65 642c 2074  s not defined, t
│ │ │ +001c3750: 6865 0a20 2020 2020 2020 2023 2072 656d  he.        # rem
│ │ │ +001c3760: 6564 6961 7469 6f6e 2061 626f 7274 7320  ediation aborts 
│ │ │ +001c3770: 616e 6420 6e6f 2063 6861 6e67 6573 2072  and no changes r
│ │ │ +001c3780: 6567 6172 6469 6e67 2074 6865 206d 6f75  egarding the mou
│ │ │ +001c3790: 6e74 2070 6f69 6e74 2061 7265 2064 6f6e  nt point are don
│ │ │ +001c37a0: 652e 0a20 2020 2020 2020 206d 6f75 6e74  e..        mount
│ │ │ +001c37b0: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ +001c37c0: 6578 703d 2224 2870 7269 6e74 6620 225e  exp="$(printf "^
│ │ │ +001c37d0: 5b5b 3a73 7061 6365 3a5d 5d2a 5b5e 235d  [[:space:]]*[^#]
│ │ │ +001c37e0: 2e2a 5b5b 3a73 7061 6365 3a5d 5d25 735b  .*[[:space:]]%s[
│ │ │ +001c37f0: 5b3a 7370 6163 653a 5d5d 2220 222f 7661  [:space:]]" "/va
│ │ │ +001c3800: 722f 746d 7022 2922 0a0a 2020 2020 6772  r/tmp")"..    gr
│ │ │ +001c3810: 6570 2022 246d 6f75 6e74 5f70 6f69 6e74  ep "$mount_point
│ │ │ +001c3820: 5f6d 6174 6368 5f72 6567 6578 7022 202d  _match_regexp" -
│ │ │ +001c3830: 7120 2f65 7463 2f66 7374 6162 205c 0a20  q /etc/fstab \. 
│ │ │ +001c3840: 2020 2020 2020 207c 7c20 7b20 6563 686f         || { echo
│ │ │ +001c3850: 2022 5468 6520 6d6f 756e 7420 706f 696e   "The mount poin
│ │ │ +001c3860: 7420 272f 7661 722f 746d 7027 2069 7320  t '/var/tmp' is 
│ │ │ +001c3870: 6e6f 7420 6576 656e 2069 6e20 2f65 7463  not even in /etc
│ │ │ +001c3880: 2f66 7374 6162 2c20 736f 2077 6520 6361  /fstab, so we ca
│ │ │ +001c3890: 6e27 7420 7365 7420 7570 206d 6f75 6e74  n't set up mount
│ │ │ +001c38a0: 206f 7074 696f 6e73 2220 2667 743b 2661   options" >&a
│ │ │ +001c38b0: 6d70 3b32 3b0a 2020 2020 2020 2020 2020  mp;2;.          
│ │ │ +001c38c0: 2020 2020 2020 6563 686f 2022 4e6f 7420        echo "Not 
│ │ │ +001c38d0: 7265 6d65 6469 6174 696e 672c 2062 6563  remediating, bec
│ │ │ +001c38e0: 6175 7365 2074 6865 7265 2069 7320 6e6f  ause there is no
│ │ │ +001c38f0: 2072 6563 6f72 6420 6f66 202f 7661 722f   record of /var/
│ │ │ +001c3900: 746d 7020 696e 202f 6574 632f 6673 7461  tmp in /etc/fsta
│ │ │ +001c3910: 6222 2026 6774 3b26 616d 703b 323b 2072  b" >&2; r
│ │ │ +001c3920: 6574 7572 6e20 313b 207d 0a20 2020 200a  eturn 1; }.    .
│ │ │ +001c3930: 0a0a 2020 2020 6d6f 756e 745f 706f 696e  ..    mount_poin
│ │ │ +001c3940: 745f 6d61 7463 685f 7265 6765 7870 3d22  t_match_regexp="
│ │ │ +001c3950: 2428 7072 696e 7466 2022 5e5b 5b3a 7370  $(printf "^[[:sp
│ │ │ +001c3960: 6163 653a 5d5d 2a5b 5e23 5d2e 2a5b 5b3a  ace:]]*[^#].*[[:
│ │ │ +001c3970: 7370 6163 653a 5d5d 2573 5b5b 3a73 7061  space:]]%s[[:spa
│ │ │ +001c3980: 6365 3a5d 5d22 202f 7661 722f 746d 7029  ce:]]" /var/tmp)
│ │ │ +001c3990: 220a 0a20 2020 2023 2049 6620 7468 6520  "..    # If the 
│ │ │ +001c39a0: 6d6f 756e 7420 706f 696e 7420 6973 206e  mount point is n
│ │ │ +001c39b0: 6f74 2069 6e20 2f65 7463 2f66 7374 6162  ot in /etc/fstab
│ │ │ +001c39c0: 2c20 6765 7420 7072 6576 696f 7573 206d  , get previous m
│ │ │ +001c39d0: 6f75 6e74 206f 7074 696f 6e73 2066 726f  ount options fro
│ │ │ +001c39e0: 6d20 2f65 7463 2f6d 7461 620a 2020 2020  m /etc/mtab.    
│ │ │ +001c39f0: 6966 2021 2067 7265 7020 2d71 2022 246d  if ! grep -q "$m
│ │ │ +001c3a00: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ +001c3a10: 5f72 6567 6578 7022 202f 6574 632f 6673  _regexp" /etc/fs
│ │ │ +001c3a20: 7461 623b 2074 6865 6e0a 2020 2020 2020  tab; then.      
│ │ │ +001c3a30: 2020 2320 7275 6e74 696d 6520 6f70 7473    # runtime opts
│ │ │ +001c3a40: 2077 6974 686f 7574 2073 6f6d 6520 6175   without some au
│ │ │ +001c3a50: 746f 6d61 7469 6320 6b65 726e 656c 2f75  tomatic kernel/u
│ │ │ +001c3a60: 7365 7273 7061 6365 2d61 6464 6564 2064  serspace-added d
│ │ │ +001c3a70: 6566 6175 6c74 730a 2020 2020 2020 2020  efaults.        
│ │ │ +001c3a80: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ +001c3a90: 7074 733d 2428 6772 6570 2022 246d 6f75  pts=$(grep "$mou
│ │ │ +001c3aa0: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ +001c3ab0: 6567 6578 7022 202f 6574 632f 6d74 6162  egexp" /etc/mtab
│ │ │ +001c3ac0: 207c 2068 6561 6420 2d31 207c 2020 6177   | head -1 |  aw
│ │ │ +001c3ad0: 6b20 277b 7072 696e 7420 2434 7d27 205c  k '{print $4}' \
│ │ │ +001c3ae0: 0a20 2020 2020 2020 2020 2020 2020 2020  .               
│ │ │ +001c3af0: 2020 2020 207c 2073 6564 202d 4520 2273       | sed -E "s
│ │ │ +001c3b00: 2f28 7277 7c64 6566 6175 6c74 737c 7365  /(rw|defaults|se
│ │ │ +001c3b10: 636c 6162 656c 7c6e 6f64 6576 2928 2c7c  clabel|nodev)(,|
│ │ │ +001c3b20: 2429 2f2f 673b 732f 2c24 2f2f 2229 0a20  $)//g;s/,$//"). 
│ │ │ +001c3b30: 2020 2020 2020 205b 2022 2470 7265 7669         [ "$previ
│ │ │ +001c3b40: 6f75 735f 6d6f 756e 745f 6f70 7473 2220  ous_mount_opts" 
│ │ │ +001c3b50: 5d20 2661 6d70 3b26 616d 703b 2070 7265  ] && pre
│ │ │ +001c3b60: 7669 6f75 735f 6d6f 756e 745f 6f70 7473  vious_mount_opts
│ │ │ +001c3b70: 2b3d 222c 220a 2020 2020 2020 2020 2320  +=",".        # 
│ │ │ +001c3b80: 496e 2069 736f 3936 3630 2066 696c 6573  In iso9660 files
│ │ │ +001c3b90: 7973 7465 6d73 206d 7461 6220 636f 756c  ystems mtab coul
│ │ │ +001c3ba0: 6420 6465 7363 7269 6265 2061 2022 626c  d describe a "bl
│ │ │ +001c3bb0: 6f63 6b73 697a 6522 2076 616c 7565 2c20  ocksize" value, 
│ │ │ +001c3bc0: 7468 6973 2073 686f 756c 6420 6265 2072  this should be r
│ │ │ +001c3bd0: 6566 6c65 6374 6564 2069 6e0a 2020 2020  eflected in.    
│ │ │ +001c3be0: 2020 2020 2320 6673 7461 6220 6173 2022      # fstab as "
│ │ │ +001c3bf0: 626c 6f63 6b22 2e20 2054 6865 206e 6578  block".  The nex
│ │ │ +001c3c00: 7420 7661 7269 6162 6c65 2069 7320 746f  t variable is to
│ │ │ +001c3c10: 2073 6174 6973 6679 2073 6865 6c6c 6368   satisfy shellch
│ │ │ +001c3c20: 6563 6b20 5343 3230 3530 2e0a 2020 2020  eck SC2050..    
│ │ │ +001c3c30: 2020 2020 6673 5f74 7970 653d 2222 0a20      fs_type="". 
│ │ │ +001c3c40: 2020 2020 2020 2069 6620 5b20 2022 2466         if [  "$f
│ │ │ +001c3c50: 735f 7479 7065 2220 3d3d 2022 6973 6f39  s_type" == "iso9
│ │ │ +001c3c60: 3636 3022 205d 203b 2074 6865 6e0a 2020  660" ] ; then.  
│ │ │ +001c3c70: 2020 2020 2020 2020 2020 7072 6576 696f            previo
│ │ │ +001c3c80: 7573 5f6d 6f75 6e74 5f6f 7074 733d 2428  us_mount_opts=$(
│ │ │ +001c3c90: 7365 6420 2773 2f62 6c6f 636b 7369 7a65  sed 's/blocksize
│ │ │ +001c3ca0: 3d2f 626c 6f63 6b3d 2f27 2026 6c74 3b26  =/block=/' <&
│ │ │ +001c3cb0: 6c74 3b26 6c74 3b20 2224 7072 6576 696f  lt;< "$previo
│ │ │ +001c3cc0: 7573 5f6d 6f75 6e74 5f6f 7074 7322 290a  us_mount_opts").
│ │ │ +001c3cd0: 2020 2020 2020 2020 6669 0a20 2020 2020          fi.     
│ │ │ +001c3ce0: 2020 2065 6368 6f20 2220 2f76 6172 2f74     echo " /var/t
│ │ │ +001c3cf0: 6d70 2020 6465 6661 756c 7473 2c24 7b70  mp  defaults,${p
│ │ │ +001c3d00: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ +001c3d10: 7473 7d6e 6f64 6576 2030 2030 2220 2667  ts}nodev 0 0" &g
│ │ │ +001c3d20: 743b 2667 743b 202f 6574 632f 6673 7461  t;> /etc/fsta
│ │ │ +001c3d30: 620a 2020 2020 2320 4966 2074 6865 206d  b.    # If the m
│ │ │ +001c3d40: 6f75 6e74 5f6f 7074 206f 7074 696f 6e20  ount_opt option 
│ │ │ +001c3d50: 6973 206e 6f74 2061 6c72 6561 6479 2069  is not already i
│ │ │ +001c3d60: 6e20 7468 6520 6d6f 756e 7420 706f 696e  n the mount poin
│ │ │ +001c3d70: 7427 7320 2f65 7463 2f66 7374 6162 2065  t's /etc/fstab e
│ │ │ +001c3d80: 6e74 7279 2c20 6164 6420 6974 0a20 2020  ntry, add it.   
│ │ │ +001c3d90: 2065 6c69 6620 2120 6772 6570 2022 246d   elif ! grep "$m
│ │ │ +001c3da0: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ +001c3db0: 5f72 6567 6578 7022 202f 6574 632f 6673  _regexp" /etc/fs
│ │ │ +001c3dc0: 7461 6220 7c20 6772 6570 202d 7120 226e  tab | grep -q "n
│ │ │ +001c3dd0: 6f64 6576 223b 2074 6865 6e0a 2020 2020  odev"; then.    
│ │ │ +001c3de0: 2020 2020 7072 6576 696f 7573 5f6d 6f75      previous_mou
│ │ │ +001c3df0: 6e74 5f6f 7074 733d 2428 6772 6570 2022  nt_opts=$(grep "
│ │ │ +001c3e00: 246d 6f75 6e74 5f70 6f69 6e74 5f6d 6174  $mount_point_mat
│ │ │ +001c3e10: 6368 5f72 6567 6578 7022 202f 6574 632f  ch_regexp" /etc/
│ │ │ +001c3e20: 6673 7461 6220 7c20 6177 6b20 277b 7072  fstab | awk '{pr
│ │ │ +001c3e30: 696e 7420 2434 7d27 290a 2020 2020 2020  int $4}').      
│ │ │ +001c3e40: 2020 7365 6420 2d69 2022 737c 5c28 247b    sed -i "s|\(${
│ │ │ +001c3e50: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ +001c3e60: 685f 7265 6765 7870 7d2e 2a24 7b70 7265  h_regexp}.*${pre
│ │ │ +001c3e70: 7669 6f75 735f 6d6f 756e 745f 6f70 7473  vious_mount_opts
│ │ │ +001c3e80: 7d5c 297c 5c31 2c6e 6f64 6576 7c22 202f  }\)|\1,nodev|" /
│ │ │ +001c3e90: 6574 632f 6673 7461 620a 2020 2020 6669  etc/fstab.    fi
│ │ │ +001c3ea0: 0a0a 0a20 2020 2069 6620 6d6b 6469 7220  ...    if mkdir 
│ │ │ +001c3eb0: 2d70 2022 2f76 6172 2f74 6d70 223b 2074  -p "/var/tmp"; t
│ │ │ +001c3ec0: 6865 6e0a 2020 2020 2020 2020 6966 206d  hen.        if m
│ │ │ +001c3ed0: 6f75 6e74 706f 696e 7420 2d71 2022 2f76  ountpoint -q "/v
│ │ │ +001c3ee0: 6172 2f74 6d70 223b 2074 6865 6e0a 2020  ar/tmp"; then.  
│ │ │ +001c3ef0: 2020 2020 2020 2020 2020 6d6f 756e 7420            mount 
│ │ │ +001c3f00: 2d6f 2072 656d 6f75 6e74 202d 2d74 6172  -o remount --tar
│ │ │ +001c3f10: 6765 7420 222f 7661 722f 746d 7022 0a20  get "/var/tmp". 
│ │ │ +001c3f20: 2020 2020 2020 2066 690a 2020 2020 6669         fi.    fi
│ │ │ +001c3f30: 0a7d 0a0a 7065 7266 6f72 6d5f 7265 6d65  .}..perform_reme
│ │ │ +001c3f40: 6469 6174 696f 6e0a 0a65 6c73 650a 2020  diation..else.  
│ │ │ +001c3f50: 2020 2667 743b 2661 6d70 3b32 2065 6368    >&2 ech
│ │ │ +001c3f60: 6f20 2752 656d 6564 6961 7469 6f6e 2069  o 'Remediation i
│ │ │ +001c3f70: 7320 6e6f 7420 6170 706c 6963 6162 6c65  s not applicable
│ │ │ +001c3f80: 2c20 6e6f 7468 696e 6720 7761 7320 646f  , nothing was do
│ │ │ +001c3f90: 6e65 270a 6669 0a3c 2f63 6f64 653e 3c2f  ne'.fi.
Remediati │ │ │ +001c4050: 6f6e 2041 6e61 636f 6e64 6120 736e 6970 on Anaconda snip │ │ │ +001c4060: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ +001c4070: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +001c4080: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +001c4090: 7365 2220 6964 3d22 6964 3439 3422 3e3c se" id="id494">< │ │ │ +001c40a0: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +001c40b0: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +001c40c0: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +001c40d0: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +001c40e0: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Complex │ │ │ +001c40f0: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ +001c4100: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Disruption:high< │ │ │ +001c4130: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>Rebo │ │ │ +001c4140: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +001c4150: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e< │ │ │ +001c4160: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:enable │ │ │ +001c4180: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072 .part /v │ │ │ +001c41a0: 6172 2f74 6d70 202d 2d6d 6f75 6e74 6f70 ar/tmp --mountop │ │ │ +001c41b0: 7469 6f6e 733d 226e 6f64 6576 220a 3c2f tions="nodev".
Remediatio │ │ │ -001c4bc0: 6e20 416e 6163 6f6e 6461 2073 6e69 7070 n Anaconda snipp │ │ │ -001c4bd0: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ -001c4c50: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ -001c4c60: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -001c4c70: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:highReboo │ │ │ -001c4cb0: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -001c4cc0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ -001c4ce0: 3c74 643e 656e 6162 6c65 3c2f 7464 3e3c enable< │ │ │ -001c4cf0: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
.part /va
│ │ │ -001c4d10: 722f 746d 7020 2d2d 6d6f 756e 746f 7074  r/tmp --mountopt
│ │ │ -001c4d20: 696f 6e73 3d22 6e6f 6578 6563 220a 3c2f  ions="noexec".
Re │ │ │ -001c4de0: 6d65 6469 6174 696f 6e20 416e 7369 626c mediation Ansibl │ │ │ -001c4df0: 6520 736e 6970 7065 7420 e287 b23c 2f61 e snippet ...
< │ │ │ -001c4e90: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -001c4ea0: 3c74 723e 3c74 683e 4469 7372 7570 7469 Reboot:false
- name: Gather 
│ │ │ -001c4f40: 7468 6520 7061 636b 6167 6520 6661 6374  the package fact
│ │ │ -001c4f50: 730a 2020 7061 636b 6167 655f 6661 6374  s.  package_fact
│ │ │ -001c4f60: 733a 0a20 2020 206d 616e 6167 6572 3a20  s:.    manager: 
│ │ │ -001c4f70: 6175 746f 0a20 2074 6167 733a 0a20 202d  auto.  tags:.  -
│ │ │ -001c4f80: 2063 6f6e 6669 6775 7265 5f73 7472 6174   configure_strat
│ │ │ -001c4f90: 6567 790a 2020 2d20 6869 6768 5f64 6973  egy.  - high_dis
│ │ │ -001c4fa0: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f  ruption.  - low_
│ │ │ -001c4fb0: 636f 6d70 6c65 7869 7479 0a20 202d 206d  complexity.  - m
│ │ │ -001c4fc0: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ -001c4fd0: 202d 206d 6f75 6e74 5f6f 7074 696f 6e5f   - mount_option_
│ │ │ -001c4fe0: 7661 725f 746d 705f 6e6f 6578 6563 0a20  var_tmp_noexec. 
│ │ │ -001c4ff0: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ -001c5000: 6465 640a 0a2d 206e 616d 653a 2027 4164  ded..- name: 'Ad
│ │ │ -001c5010: 6420 6e6f 6578 6563 204f 7074 696f 6e20  d noexec Option 
│ │ │ -001c5020: 746f 202f 7661 722f 746d 703a 2043 6865  to /var/tmp: Che
│ │ │ -001c5030: 636b 2069 6e66 6f72 6d61 7469 6f6e 2061  ck information a
│ │ │ -001c5040: 7373 6f63 6961 7465 6420 746f 206d 6f75  ssociated to mou
│ │ │ -001c5050: 6e74 706f 696e 7427 0a20 2061 6e73 6962  ntpoint'.  ansib
│ │ │ -001c5060: 6c65 2e62 7569 6c74 696e 2e63 6f6d 6d61  le.builtin.comma
│ │ │ -001c5070: 6e64 3a20 6669 6e64 6d6e 7420 2d2d 6673  nd: findmnt --fs
│ │ │ -001c5080: 7461 6220 272f 7661 722f 746d 7027 0a20  tab '/var/tmp'. 
│ │ │ -001c5090: 2072 6567 6973 7465 723a 2064 6576 6963   register: devic
│ │ │ -001c50a0: 655f 6e61 6d65 0a20 2066 6169 6c65 645f  e_name.  failed_
│ │ │ -001c50b0: 7768 656e 3a20 6465 7669 6365 5f6e 616d  when: device_nam
│ │ │ -001c50c0: 652e 7263 2026 6774 3b20 310a 2020 6368  e.rc > 1.  ch
│ │ │ -001c50d0: 616e 6765 645f 7768 656e 3a20 6661 6c73  anged_when: fals
│ │ │ -001c50e0: 650a 2020 6368 6563 6b5f 6d6f 6465 3a20  e.  check_mode: 
│ │ │ -001c50f0: 6661 6c73 650a 2020 7768 656e 3a0a 2020  false.  when:.  
│ │ │ -001c5100: 2d20 2820 6e6f 7420 2820 226b 6572 6e65  - ( not ( "kerne
│ │ │ -001c5110: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ -001c5120: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ -001c5130: 2022 626f 6f74 6322 2069 6e20 616e 7369   "bootc" in ansi
│ │ │ -001c5140: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001c5150: 6573 0a20 2020 2061 6e64 206e 6f74 2022  es.    and not "
│ │ │ -001c5160: 6f70 656e 7368 6966 742d 6b75 6265 6c65  openshift-kubele
│ │ │ -001c5170: 7422 2069 6e20 616e 7369 626c 655f 6661  t" in ansible_fa
│ │ │ -001c5180: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ -001c5190: 2022 6f73 7472 6565 2220 696e 2061 6e73   "ostree" in ans
│ │ │ -001c51a0: 6962 6c65 5f70 726f 635f 636d 646c 696e  ible_proc_cmdlin
│ │ │ -001c51b0: 650a 2020 2020 2920 616e 6420 6e6f 7420  e.    ) and not 
│ │ │ -001c51c0: 2820 616e 7369 626c 655f 7669 7274 7561  ( ansible_virtua
│ │ │ -001c51d0: 6c69 7a61 7469 6f6e 5f74 7970 6520 696e  lization_type in
│ │ │ -001c51e0: 205b 2264 6f63 6b65 7222 2c20 226c 7863   ["docker", "lxc
│ │ │ -001c51f0: 222c 2022 6f70 656e 767a 222c 2022 706f  ", "openvz", "po
│ │ │ -001c5200: 646d 616e 222c 0a20 2020 2022 636f 6e74  dman",.    "cont
│ │ │ -001c5210: 6169 6e65 7222 5d20 2920 290a 2020 2d20  ainer"] ) ).  - 
│ │ │ -001c5220: 2722 2f76 6172 2f74 6d70 2220 696e 2061  '"/var/tmp" in a
│ │ │ -001c5230: 6e73 6962 6c65 5f6d 6f75 6e74 7320 7c20  nsible_mounts | 
│ │ │ -001c5240: 6d61 7028 6174 7472 6962 7574 653d 226d  map(attribute="m
│ │ │ -001c5250: 6f75 6e74 2229 207c 206c 6973 7427 0a20  ount") | list'. 
│ │ │ -001c5260: 2074 6167 733a 0a20 202d 2063 6f6e 6669   tags:.  - confi
│ │ │ -001c5270: 6775 7265 5f73 7472 6174 6567 790a 2020  gure_strategy.  
│ │ │ -001c5280: 2d20 6869 6768 5f64 6973 7275 7074 696f  - high_disruptio
│ │ │ -001c5290: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65  n.  - low_comple
│ │ │ -001c52a0: 7869 7479 0a20 202d 206d 6564 6975 6d5f  xity.  - medium_
│ │ │ -001c52b0: 7365 7665 7269 7479 0a20 202d 206d 6f75  severity.  - mou
│ │ │ -001c52c0: 6e74 5f6f 7074 696f 6e5f 7661 725f 746d  nt_option_var_tm
│ │ │ -001c52d0: 705f 6e6f 6578 6563 0a20 202d 206e 6f5f  p_noexec.  - no_
│ │ │ -001c52e0: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ -001c52f0: 206e 616d 653a 2027 4164 6420 6e6f 6578   name: 'Add noex
│ │ │ -001c5300: 6563 204f 7074 696f 6e20 746f 202f 7661  ec Option to /va
│ │ │ -001c5310: 722f 746d 703a 2043 7265 6174 6520 6d6f  r/tmp: Create mo
│ │ │ -001c5320: 756e 745f 696e 666f 2064 6963 7469 6f6e  unt_info diction
│ │ │ -001c5330: 6172 7920 7661 7269 6162 6c65 270a 2020  ary variable'.  
│ │ │ -001c5340: 7365 745f 6661 6374 3a0a 2020 2020 6d6f  set_fact:.    mo
│ │ │ -001c5350: 756e 745f 696e 666f 3a20 277b 7b20 6d6f  unt_info: '{{ mo
│ │ │ -001c5360: 756e 745f 696e 666f 7c64 6566 6175 6c74  unt_info|default
│ │ │ -001c5370: 287b 7d29 7c63 6f6d 6269 6e65 287b 6974  ({})|combine({it
│ │ │ -001c5380: 656d 2e30 3a20 6974 656d 2e31 7d29 207d  em.0: item.1}) }
│ │ │ -001c5390: 7d27 0a20 2077 6974 685f 746f 6765 7468  }'.  with_togeth
│ │ │ -001c53a0: 6572 3a0a 2020 2d20 277b 7b20 6465 7669  er:.  - '{{ devi
│ │ │ -001c53b0: 6365 5f6e 616d 652e 7374 646f 7574 5f6c  ce_name.stdout_l
│ │ │ -001c53c0: 696e 6573 5b30 5d2e 7370 6c69 7428 2920  ines[0].split() 
│ │ │ -001c53d0: 7c20 6d61 7028 2727 6c6f 7765 7227 2729  | map(''lower'')
│ │ │ -001c53e0: 207c 206c 6973 7420 7d7d 270a 2020 2d20   | list }}'.  - 
│ │ │ -001c53f0: 277b 7b20 6465 7669 6365 5f6e 616d 652e  '{{ device_name.
│ │ │ -001c5400: 7374 646f 7574 5f6c 696e 6573 5b31 5d2e  stdout_lines[1].
│ │ │ -001c5410: 7370 6c69 7428 2920 7c20 6c69 7374 207d  split() | list }
│ │ │ -001c5420: 7d27 0a20 2077 6865 6e3a 0a20 202d 2028  }'.  when:.  - (
│ │ │ -001c5430: 206e 6f74 2028 2022 6b65 726e 656c 2220   not ( "kernel" 
│ │ │ -001c5440: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001c5450: 2e70 6163 6b61 6765 7320 616e 6420 2262  .packages and "b
│ │ │ -001c5460: 6f6f 7463 2220 696e 2061 6e73 6962 6c65  ootc" in ansible
│ │ │ -001c5470: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ -001c5480: 2020 2020 616e 6420 6e6f 7420 226f 7065      and not "ope
│ │ │ -001c5490: 6e73 6869 6674 2d6b 7562 656c 6574 2220  nshift-kubelet" 
│ │ │ -001c54a0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001c54b0: 2e70 6163 6b61 6765 7320 616e 6420 226f  .packages and "o
│ │ │ -001c54c0: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ -001c54d0: 655f 7072 6f63 5f63 6d64 6c69 6e65 0a20  e_proc_cmdline. 
│ │ │ -001c54e0: 2020 2029 2061 6e64 206e 6f74 2028 2061     ) and not ( a
│ │ │ -001c54f0: 6e73 6962 6c65 5f76 6972 7475 616c 697a  nsible_virtualiz
│ │ │ -001c5500: 6174 696f 6e5f 7479 7065 2069 6e20 5b22  ation_type in ["
│ │ │ -001c5510: 646f 636b 6572 222c 2022 6c78 6322 2c20  docker", "lxc", 
│ │ │ -001c5520: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61  "openvz", "podma
│ │ │ -001c5530: 6e22 2c0a 2020 2020 2263 6f6e 7461 696e  n",.    "contain
│ │ │ -001c5540: 6572 225d 2029 2029 0a20 202d 2027 222f  er"] ) ).  - '"/
│ │ │ -001c5550: 7661 722f 746d 7022 2069 6e20 616e 7369  var/tmp" in ansi
│ │ │ -001c5560: 626c 655f 6d6f 756e 7473 207c 206d 6170  ble_mounts | map
│ │ │ -001c5570: 2861 7474 7269 6275 7465 3d22 6d6f 756e  (attribute="moun
│ │ │ -001c5580: 7422 2920 7c20 6c69 7374 270a 2020 2d20  t") | list'.  - 
│ │ │ -001c5590: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ -001c55a0: 7574 2069 7320 6465 6669 6e65 6420 616e  ut is defined an
│ │ │ -001c55b0: 6420 6465 7669 6365 5f6e 616d 652e 7374  d device_name.st
│ │ │ -001c55c0: 646f 7574 5f6c 696e 6573 2069 7320 6465  dout_lines is de
│ │ │ -001c55d0: 6669 6e65 640a 2020 2d20 2864 6576 6963  fined.  - (devic
│ │ │ -001c55e0: 655f 6e61 6d65 2e73 7464 6f75 7420 7c20  e_name.stdout | 
│ │ │ -001c55f0: 6c65 6e67 7468 2026 6774 3b20 3029 0a20  length > 0). 
│ │ │ -001c5600: 2074 6167 733a 0a20 202d 2063 6f6e 6669   tags:.  - confi
│ │ │ -001c5610: 6775 7265 5f73 7472 6174 6567 790a 2020  gure_strategy.  
│ │ │ -001c5620: 2d20 6869 6768 5f64 6973 7275 7074 696f  - high_disruptio
│ │ │ -001c5630: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65  n.  - low_comple
│ │ │ -001c5640: 7869 7479 0a20 202d 206d 6564 6975 6d5f  xity.  - medium_
│ │ │ -001c5650: 7365 7665 7269 7479 0a20 202d 206d 6f75  severity.  - mou
│ │ │ -001c5660: 6e74 5f6f 7074 696f 6e5f 7661 725f 746d  nt_option_var_tm
│ │ │ -001c5670: 705f 6e6f 6578 6563 0a20 202d 206e 6f5f  p_noexec.  - no_
│ │ │ -001c5680: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ -001c5690: 206e 616d 653a 2027 4164 6420 6e6f 6578   name: 'Add noex
│ │ │ -001c56a0: 6563 204f 7074 696f 6e20 746f 202f 7661  ec Option to /va
│ │ │ -001c56b0: 722f 746d 703a 2049 6620 2f76 6172 2f74  r/tmp: If /var/t
│ │ │ -001c56c0: 6d70 206e 6f74 206d 6f75 6e74 6564 2c20  mp not mounted, 
│ │ │ -001c56d0: 6372 6166 7420 6d6f 756e 745f 696e 666f  craft mount_info
│ │ │ -001c56e0: 0a20 2020 206d 616e 7561 6c6c 7927 0a20  .    manually'. 
│ │ │ -001c56f0: 2073 6574 5f66 6163 743a 0a20 2020 206d   set_fact:.    m
│ │ │ -001c5700: 6f75 6e74 5f69 6e66 6f3a 2027 7b7b 206d  ount_info: '{{ m
│ │ │ -001c5710: 6f75 6e74 5f69 6e66 6f7c 6465 6661 756c  ount_info|defaul
│ │ │ -001c5720: 7428 7b7d 297c 636f 6d62 696e 6528 7b69  t({})|combine({i
│ │ │ -001c5730: 7465 6d2e 303a 2069 7465 6d2e 317d 2920  tem.0: item.1}) 
│ │ │ -001c5740: 7d7d 270a 2020 7769 7468 5f74 6f67 6574  }}'.  with_toget
│ │ │ -001c5750: 6865 723a 0a20 202d 202d 2074 6172 6765  her:.  - - targe
│ │ │ -001c5760: 740a 2020 2020 2d20 736f 7572 6365 0a20  t.    - source. 
│ │ │ -001c5770: 2020 202d 2066 7374 7970 650a 2020 2020     - fstype.    
│ │ │ -001c5780: 2d20 6f70 7469 6f6e 730a 2020 2d20 2d20  - options.  - - 
│ │ │ -001c5790: 2f76 6172 2f74 6d70 0a20 2020 202d 2027  /var/tmp.    - '
│ │ │ -001c57a0: 270a 2020 2020 2d20 2727 0a20 2020 202d  '.    - ''.    -
│ │ │ -001c57b0: 2064 6566 6175 6c74 730a 2020 7768 656e   defaults.  when
│ │ │ -001c57c0: 3a0a 2020 2d20 2820 6e6f 7420 2820 226b  :.  - ( not ( "k
│ │ │ -001c57d0: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ -001c57e0: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001c57f0: 2061 6e64 2022 626f 6f74 6322 2069 6e20   and "bootc" in 
│ │ │ -001c5800: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001c5810: 636b 6167 6573 0a20 2020 2061 6e64 206e  ckages.    and n
│ │ │ -001c5820: 6f74 2022 6f70 656e 7368 6966 742d 6b75  ot "openshift-ku
│ │ │ -001c5830: 6265 6c65 7422 2069 6e20 616e 7369 626c  belet" in ansibl
│ │ │ -001c5840: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001c5850: 2061 6e64 2022 6f73 7472 6565 2220 696e   and "ostree" in
│ │ │ -001c5860: 2061 6e73 6962 6c65 5f70 726f 635f 636d   ansible_proc_cm
│ │ │ -001c5870: 646c 696e 650a 2020 2020 2920 616e 6420  dline.    ) and 
│ │ │ -001c5880: 6e6f 7420 2820 616e 7369 626c 655f 7669  not ( ansible_vi
│ │ │ -001c5890: 7274 7561 6c69 7a61 7469 6f6e 5f74 7970  rtualization_typ
│ │ │ -001c58a0: 6520 696e 205b 2264 6f63 6b65 7222 2c20  e in ["docker", 
│ │ │ -001c58b0: 226c 7863 222c 2022 6f70 656e 767a 222c  "lxc", "openvz",
│ │ │ -001c58c0: 2022 706f 646d 616e 222c 0a20 2020 2022   "podman",.    "
│ │ │ -001c58d0: 636f 6e74 6169 6e65 7222 5d20 2920 290a  container"] ) ).
│ │ │ -001c58e0: 2020 2d20 2722 2f76 6172 2f74 6d70 2220    - '"/var/tmp" 
│ │ │ -001c58f0: 696e 2061 6e73 6962 6c65 5f6d 6f75 6e74  in ansible_mount
│ │ │ -001c5900: 7320 7c20 6d61 7028 6174 7472 6962 7574  s | map(attribut
│ │ │ -001c5910: 653d 226d 6f75 6e74 2229 207c 206c 6973  e="mount") | lis
│ │ │ -001c5920: 7427 0a20 202d 2028 222d 2d66 7374 6162  t'.  - ("--fstab
│ │ │ -001c5930: 2220 7c20 6c65 6e67 7468 203d 3d20 3029  " | length == 0)
│ │ │ -001c5940: 0a20 202d 2064 6576 6963 655f 6e61 6d65  .  - device_name
│ │ │ -001c5950: 2e73 7464 6f75 7420 6973 2064 6566 696e  .stdout is defin
│ │ │ -001c5960: 6564 2061 6e64 2064 6576 6963 655f 6e61  ed and device_na
│ │ │ -001c5970: 6d65 2e73 7464 6f75 745f 6c69 6e65 7320  me.stdout_lines 
│ │ │ -001c5980: 6973 2064 6566 696e 6564 0a20 202d 2028  is defined.  - (
│ │ │ -001c5990: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ -001c59a0: 7574 207c 206c 656e 6774 6820 3d3d 2030  ut | length == 0
│ │ │ -001c59b0: 290a 2020 7461 6773 3a0a 2020 2d20 636f  ).  tags:.  - co
│ │ │ -001c59c0: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ -001c59d0: 0a20 202d 2068 6967 685f 6469 7372 7570  .  - high_disrup
│ │ │ -001c59e0: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d  tion.  - low_com
│ │ │ -001c59f0: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ -001c5a00: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ -001c5a10: 6d6f 756e 745f 6f70 7469 6f6e 5f76 6172  mount_option_var
│ │ │ -001c5a20: 5f74 6d70 5f6e 6f65 7865 630a 2020 2d20  _tmp_noexec.  - 
│ │ │ -001c5a30: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ -001c5a40: 0a0a 2d20 6e61 6d65 3a20 2741 6464 206e  ..- name: 'Add n
│ │ │ -001c5a50: 6f65 7865 6320 4f70 7469 6f6e 2074 6f20  oexec Option to 
│ │ │ -001c5a60: 2f76 6172 2f74 6d70 3a20 4d61 6b65 2073  /var/tmp: Make s
│ │ │ -001c5a70: 7572 6520 6e6f 6578 6563 206f 7074 696f  ure noexec optio
│ │ │ -001c5a80: 6e20 6973 2070 6172 7420 6f66 2074 6865  n is part of the
│ │ │ -001c5a90: 2074 6f0a 2020 2020 2f76 6172 2f74 6d70   to.    /var/tmp
│ │ │ -001c5aa0: 206f 7074 696f 6e73 270a 2020 7365 745f   options'.  set_
│ │ │ -001c5ab0: 6661 6374 3a0a 2020 2020 6d6f 756e 745f  fact:.    mount_
│ │ │ -001c5ac0: 696e 666f 3a20 277b 7b20 6d6f 756e 745f  info: '{{ mount_
│ │ │ -001c5ad0: 696e 666f 207c 2063 6f6d 6269 6e65 2820  info | combine( 
│ │ │ -001c5ae0: 7b27 276f 7074 696f 6e73 2727 3a27 2727  {''options'':'''
│ │ │ -001c5af0: 277e 286d 6f75 6e74 5f69 6e66 6f2e 6f70  '~(mount_info.op
│ │ │ -001c5b00: 7469 6f6e 7320 7c0a 2020 2020 2020 6465  tions |.      de
│ │ │ -001c5b10: 6661 756c 7428 2727 2727 2929 7e28 2727  fault(''''))~(''
│ │ │ -001c5b20: 2c27 2720 6966 2028 6d6f 756e 745f 696e  ,'' if (mount_in
│ │ │ -001c5b30: 666f 2e6f 7074 696f 6e73 207c 2064 6566  fo.options | def
│ │ │ -001c5b40: 6175 6c74 2827 2727 2729 2920 656c 7365  ault('''')) else
│ │ │ -001c5b50: 2027 2727 2729 7e27 276e 6f65 7865 6327   '''')~''noexec'
│ │ │ -001c5b60: 270a 2020 2020 2020 7d29 207d 7d27 0a20  '.      }) }}'. 
│ │ │ -001c5b70: 2077 6865 6e3a 0a20 202d 2028 206e 6f74   when:.  - ( not
│ │ │ -001c5b80: 2028 2022 6b65 726e 656c 2220 696e 2061   ( "kernel" in a
│ │ │ -001c5b90: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001c5ba0: 6b61 6765 7320 616e 6420 2262 6f6f 7463  kages and "bootc
│ │ │ -001c5bb0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001c5bc0: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ -001c5bd0: 616e 6420 6e6f 7420 226f 7065 6e73 6869  and not "openshi
│ │ │ -001c5be0: 6674 2d6b 7562 656c 6574 2220 696e 2061  ft-kubelet" in a
│ │ │ -001c5bf0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001c5c00: 6b61 6765 7320 616e 6420 226f 7374 7265  kages and "ostre
│ │ │ -001c5c10: 6522 2069 6e20 616e 7369 626c 655f 7072  e" in ansible_pr
│ │ │ -001c5c20: 6f63 5f63 6d64 6c69 6e65 0a20 2020 2029  oc_cmdline.    )
│ │ │ -001c5c30: 2061 6e64 206e 6f74 2028 2061 6e73 6962   and not ( ansib
│ │ │ -001c5c40: 6c65 5f76 6972 7475 616c 697a 6174 696f  le_virtualizatio
│ │ │ -001c5c50: 6e5f 7479 7065 2069 6e20 5b22 646f 636b  n_type in ["dock
│ │ │ -001c5c60: 6572 222c 2022 6c78 6322 2c20 226f 7065  er", "lxc", "ope
│ │ │ -001c5c70: 6e76 7a22 2c20 2270 6f64 6d61 6e22 2c0a  nvz", "podman",.
│ │ │ -001c5c80: 2020 2020 2263 6f6e 7461 696e 6572 225d      "container"]
│ │ │ -001c5c90: 2029 2029 0a20 202d 2027 222f 7661 722f   ) ).  - '"/var/
│ │ │ -001c5ca0: 746d 7022 2069 6e20 616e 7369 626c 655f  tmp" in ansible_
│ │ │ -001c5cb0: 6d6f 756e 7473 207c 206d 6170 2861 7474  mounts | map(att
│ │ │ -001c5cc0: 7269 6275 7465 3d22 6d6f 756e 7422 2920  ribute="mount") 
│ │ │ -001c5cd0: 7c20 6c69 7374 270a 2020 2d20 6d6f 756e  | list'.  - moun
│ │ │ -001c5ce0: 745f 696e 666f 2069 7320 6465 6669 6e65  t_info is define
│ │ │ -001c5cf0: 6420 616e 6420 226e 6f65 7865 6322 206e  d and "noexec" n
│ │ │ -001c5d00: 6f74 2069 6e20 286d 6f75 6e74 5f69 6e66  ot in (mount_inf
│ │ │ -001c5d10: 6f2e 6f70 7469 6f6e 7320 7c20 6465 6661  o.options | defa
│ │ │ -001c5d20: 756c 7428 2727 2929 0a20 2074 6167 733a  ult('')).  tags:
│ │ │ -001c5d30: 0a20 202d 2063 6f6e 6669 6775 7265 5f73  .  - configure_s
│ │ │ -001c5d40: 7472 6174 6567 790a 2020 2d20 6869 6768  trategy.  - high
│ │ │ -001c5d50: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ -001c5d60: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ -001c5d70: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ -001c5d80: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074  ty.  - mount_opt
│ │ │ -001c5d90: 696f 6e5f 7661 725f 746d 705f 6e6f 6578  ion_var_tmp_noex
│ │ │ -001c5da0: 6563 0a20 202d 206e 6f5f 7265 626f 6f74  ec.  - no_reboot
│ │ │ -001c5db0: 5f6e 6565 6465 640a 0a2d 206e 616d 653a  _needed..- name:
│ │ │ -001c5dc0: 2027 4164 6420 6e6f 6578 6563 204f 7074   'Add noexec Opt
│ │ │ -001c5dd0: 696f 6e20 746f 202f 7661 722f 746d 703a  ion to /var/tmp:
│ │ │ -001c5de0: 2045 6e73 7572 6520 2f76 6172 2f74 6d70   Ensure /var/tmp
│ │ │ -001c5df0: 2069 7320 6d6f 756e 7465 6420 7769 7468   is mounted with
│ │ │ -001c5e00: 206e 6f65 7865 6320 6f70 7469 6f6e 270a   noexec option'.
│ │ │ -001c5e10: 2020 616e 7369 626c 652e 706f 7369 782e    ansible.posix.
│ │ │ -001c5e20: 6d6f 756e 743a 0a20 2020 2070 6174 683a  mount:.    path:
│ │ │ -001c5e30: 202f 7661 722f 746d 700a 2020 2020 7372   /var/tmp.    sr
│ │ │ -001c5e40: 633a 2027 7b7b 206d 6f75 6e74 5f69 6e66  c: '{{ mount_inf
│ │ │ -001c5e50: 6f2e 736f 7572 6365 207c 2064 6566 6175  o.source | defau
│ │ │ -001c5e60: 6c74 2827 2727 2729 207d 7d27 0a20 2020  lt('''') }}'.   
│ │ │ -001c5e70: 206f 7074 733a 2027 7b7b 206d 6f75 6e74   opts: '{{ mount
│ │ │ -001c5e80: 5f69 6e66 6f2e 6f70 7469 6f6e 7320 7c20  _info.options | 
│ │ │ -001c5e90: 6465 6661 756c 7428 2727 2727 2920 7d7d  default('''') }}
│ │ │ -001c5ea0: 270a 2020 2020 7374 6174 653a 206d 6f75  '.    state: mou
│ │ │ -001c5eb0: 6e74 6564 0a20 2020 2066 7374 7970 653a  nted.    fstype:
│ │ │ -001c5ec0: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f2e   '{{ mount_info.
│ │ │ -001c5ed0: 6673 7479 7065 207c 2064 6566 6175 6c74  fstype | default
│ │ │ -001c5ee0: 2827 2727 2729 207d 7d27 0a20 2072 6567  ('''') }}'.  reg
│ │ │ -001c5ef0: 6973 7465 723a 206d 6f75 6e74 5f72 6573  ister: mount_res
│ │ │ -001c5f00: 756c 740a 2020 6661 696c 6564 5f77 6865  ult.  failed_whe
│ │ │ -001c5f10: 6e3a 0a20 202d 206d 6f75 6e74 5f72 6573  n:.  - mount_res
│ │ │ -001c5f20: 756c 7420 6973 2066 6169 6c65 640a 2020  ult is failed.  
│ │ │ -001c5f30: 2d20 2727 2774 6172 6765 7420 6973 2062  - '''target is b
│ │ │ -001c5f40: 7573 7927 2720 6e6f 7420 696e 2028 6d6f  usy'' not in (mo
│ │ │ -001c5f50: 756e 745f 7265 7375 6c74 2e6d 7367 207c  unt_result.msg |
│ │ │ -001c5f60: 2064 6566 6175 6c74 2827 2727 2729 2927   default(''''))'
│ │ │ -001c5f70: 0a20 202d 2027 2727 616c 7265 6164 7920  .  - '''already 
│ │ │ -001c5f80: 6d6f 756e 7465 6427 2720 6e6f 7420 696e  mounted'' not in
│ │ │ -001c5f90: 2028 6d6f 756e 745f 7265 7375 6c74 2e6d   (mount_result.m
│ │ │ -001c5fa0: 7367 207c 2064 6566 6175 6c74 2827 2727  sg | default('''
│ │ │ -001c5fb0: 2729 2927 0a20 2077 6865 6e3a 0a20 202d  '))'.  when:.  -
│ │ │ -001c5fc0: 2028 206e 6f74 2028 2022 6b65 726e 656c   ( not ( "kernel
│ │ │ -001c5fd0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001c5fe0: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ -001c5ff0: 2262 6f6f 7463 2220 696e 2061 6e73 6962  "bootc" in ansib
│ │ │ -001c6000: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -001c6010: 730a 2020 2020 616e 6420 6e6f 7420 226f  s.    and not "o
│ │ │ -001c6020: 7065 6e73 6869 6674 2d6b 7562 656c 6574  penshift-kubelet
│ │ │ -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: 226f 7374 7265 6522 2069 6e20 616e 7369  "ostree" in ansi
│ │ │ -001c6060: 626c 655f 7072 6f63 5f63 6d64 6c69 6e65  ble_proc_cmdline
│ │ │ -001c6070: 0a20 2020 2029 2061 6e64 206e 6f74 2028  .    ) and not (
│ │ │ -001c6080: 2061 6e73 6962 6c65 5f76 6972 7475 616c   ansible_virtual
│ │ │ -001c6090: 697a 6174 696f 6e5f 7479 7065 2069 6e20  ization_type in 
│ │ │ -001c60a0: 5b22 646f 636b 6572 222c 2022 6c78 6322  ["docker", "lxc"
│ │ │ -001c60b0: 2c20 226f 7065 6e76 7a22 2c20 2270 6f64  , "openvz", "pod
│ │ │ -001c60c0: 6d61 6e22 2c0a 2020 2020 2263 6f6e 7461  man",.    "conta
│ │ │ -001c60d0: 696e 6572 225d 2029 2029 0a20 202d 2027  iner"] ) ).  - '
│ │ │ -001c60e0: 222f 7661 722f 746d 7022 2069 6e20 616e  "/var/tmp" in an
│ │ │ -001c60f0: 7369 626c 655f 6d6f 756e 7473 207c 206d  sible_mounts | m
│ │ │ -001c6100: 6170 2861 7474 7269 6275 7465 3d22 6d6f  ap(attribute="mo
│ │ │ -001c6110: 756e 7422 2920 7c20 6c69 7374 270a 2020  unt") | list'.  
│ │ │ -001c6120: 2d20 6d6f 756e 745f 696e 666f 2069 7320  - mount_info is 
│ │ │ -001c6130: 6465 6669 6e65 640a 2020 2d20 2864 6576  defined.  - (dev
│ │ │ -001c6140: 6963 655f 6e61 6d65 2e73 7464 6f75 7420  ice_name.stdout 
│ │ │ -001c6150: 6973 2064 6566 696e 6564 2061 6e64 2028  is defined and (
│ │ │ -001c6160: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ -001c6170: 7574 207c 206c 656e 6774 6820 2667 743b  ut | length >
│ │ │ -001c6180: 2030 2929 206f 7220 2822 2d2d 6673 7461   0)) or ("--fsta
│ │ │ -001c6190: 6222 0a20 2020 207c 206c 656e 6774 6820  b".    | length 
│ │ │ -001c61a0: 3d3d 2030 290a 2020 7461 6773 3a0a 2020  == 0).  tags:.  
│ │ │ -001c61b0: 2d20 636f 6e66 6967 7572 655f 7374 7261  - configure_stra
│ │ │ -001c61c0: 7465 6779 0a20 202d 2068 6967 685f 6469  tegy.  - high_di
│ │ │ -001c61d0: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ -001c61e0: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ -001c61f0: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ -001c6200: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e    - mount_option
│ │ │ -001c6210: 5f76 6172 5f74 6d70 5f6e 6f65 7865 630a  _var_tmp_noexec.
│ │ │ -001c6220: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ -001c6230: 6564 6564 0a3c 2f63 6f64 653e 3c2f 7072  eded.Remediation
│ │ │ -001c62f0: 2053 6865 6c6c 2073 6372 6970 7420 e287   Shell script ..
│ │ │ -001c6300: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c  .
C │ │ │ -001c4e80: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -001c4eb0: 6f6e 3a3c 2f74 683e 3c74 643e 6869 6768 on:high │ │ │ -001c4ec0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -001c4f00: 793a 3c2f 7468 3e3c 7464 3e63 6f6e 6669 y:confi │ │ │ -001c4f10: 6775 7265 3c2f 7464 3e3c 2f74 723e 3c2f gure
< │ │ │ -001c6380: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -001c6390: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
<
│ │ │ -001c63b0: 636f 6465 3e23 2052 656d 6564 6961 7469  code># Remediati
│ │ │ -001c63c0: 6f6e 2069 7320 6170 706c 6963 6162 6c65  on is applicable
│ │ │ -001c63d0: 206f 6e6c 7920 696e 2063 6572 7461 696e   only in certain
│ │ │ -001c63e0: 2070 6c61 7466 6f72 6d73 0a69 6620 2820   platforms.if ( 
│ │ │ -001c63f0: 2120 2820 7b20 7270 6d20 2d2d 7175 6965  ! ( { rpm --quie
│ │ │ -001c6400: 7420 2d71 206b 6572 6e65 6c20 3b7d 2026  t -q kernel ;} &
│ │ │ -001c6410: 616d 703b 2661 6d70 3b20 7b20 7270 6d20  amp;& { rpm 
│ │ │ -001c6420: 2d2d 7175 6965 7420 2d71 2062 6f6f 7463  --quiet -q bootc
│ │ │ -001c6430: 203b 7d20 2661 6d70 3b26 616d 703b 207b   ;} && {
│ │ │ -001c6440: 2021 2072 706d 202d 2d71 7569 6574 202d   ! rpm --quiet -
│ │ │ -001c6450: 7120 6f70 656e 7368 6966 742d 6b75 6265  q openshift-kube
│ │ │ -001c6460: 6c65 7420 3b7d 2026 616d 703b 2661 6d70  let ;} &&
│ │ │ -001c6470: 3b20 285b 202d 6620 2f72 756e 2f6f 7374  ; ([ -f /run/ost
│ │ │ -001c6480: 7265 652d 626f 6f74 6564 205d 207c 7c20  ree-booted ] || 
│ │ │ -001c6490: 5b20 2d4c 202f 6f73 7472 6565 205d 2920  [ -L /ostree ]) 
│ │ │ -001c64a0: 2920 2661 6d70 3b26 616d 703b 2021 2028  ) && ! (
│ │ │ -001c64b0: 205b 202d 6620 2f2e 646f 636b 6572 656e   [ -f /.dockeren
│ │ │ -001c64c0: 7620 5d20 7c7c 205b 202d 6620 2f72 756e  v ] || [ -f /run
│ │ │ -001c64d0: 2f2e 636f 6e74 6169 6e65 7265 6e76 205d  /.containerenv ]
│ │ │ -001c64e0: 2029 2029 2026 616d 703b 2661 6d70 3b20   ) ) && 
│ │ │ -001c64f0: 7b20 2820 6669 6e64 6d6e 7420 2d2d 6b65  { ( findmnt --ke
│ │ │ -001c6500: 726e 656c 2022 2f76 6172 2f74 6d70 2220  rnel "/var/tmp" 
│ │ │ -001c6510: 2667 743b 202f 6465 762f 6e75 6c6c 207c  > /dev/null |
│ │ │ -001c6520: 7c20 6669 6e64 6d6e 7420 2d2d 6673 7461  | findmnt --fsta
│ │ │ -001c6530: 6220 222f 7661 722f 746d 7022 2026 6774  b "/var/tmp" >
│ │ │ -001c6540: 3b20 2f64 6576 2f6e 756c 6c20 293b 207d  ; /dev/null ); }
│ │ │ -001c6550: 3b20 7468 656e 0a0a 6675 6e63 7469 6f6e  ; then..function
│ │ │ -001c6560: 2070 6572 666f 726d 5f72 656d 6564 6961   perform_remedia
│ │ │ -001c6570: 7469 6f6e 207b 0a0a 2020 2020 0a20 2020  tion {..    .   
│ │ │ -001c6580: 2020 2020 2023 2074 6865 206d 6f75 6e74       # the mount
│ │ │ -001c6590: 2070 6f69 6e74 202f 7661 722f 746d 7020   point /var/tmp 
│ │ │ -001c65a0: 6861 7320 746f 2062 6520 6465 6669 6e65  has to be define
│ │ │ -001c65b0: 6420 696e 202f 6574 632f 6673 7461 620a  d in /etc/fstab.
│ │ │ -001c65c0: 2020 2020 2020 2020 2320 6265 666f 7265          # before
│ │ │ -001c65d0: 2074 6869 7320 7265 6d65 6469 6174 696f   this remediatio
│ │ │ -001c65e0: 6e20 6361 6e20 6265 2065 7865 6375 7465  n can be execute
│ │ │ -001c65f0: 642e 2049 6e20 6361 7365 2069 7420 6973  d. In case it is
│ │ │ -001c6600: 206e 6f74 2064 6566 696e 6564 2c20 7468   not defined, th
│ │ │ -001c6610: 650a 2020 2020 2020 2020 2320 7265 6d65  e.        # reme
│ │ │ -001c6620: 6469 6174 696f 6e20 6162 6f72 7473 2061  diation aborts a
│ │ │ -001c6630: 6e64 206e 6f20 6368 616e 6765 7320 7265  nd no changes re
│ │ │ -001c6640: 6761 7264 696e 6720 7468 6520 6d6f 756e  garding the moun
│ │ │ -001c6650: 7420 706f 696e 7420 6172 6520 646f 6e65  t point are done
│ │ │ -001c6660: 2e0a 2020 2020 2020 2020 6d6f 756e 745f  ..        mount_
│ │ │ -001c6670: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ -001c6680: 7870 3d22 2428 7072 696e 7466 2022 5e5b  xp="$(printf "^[
│ │ │ -001c6690: 5b3a 7370 6163 653a 5d5d 2a5b 5e23 5d2e  [:space:]]*[^#].
│ │ │ -001c66a0: 2a5b 5b3a 7370 6163 653a 5d5d 2573 5b5b  *[[:space:]]%s[[
│ │ │ -001c66b0: 3a73 7061 6365 3a5d 5d22 2022 2f76 6172  :space:]]" "/var
│ │ │ -001c66c0: 2f74 6d70 2229 220a 0a20 2020 2067 7265  /tmp")"..    gre
│ │ │ -001c66d0: 7020 2224 6d6f 756e 745f 706f 696e 745f  p "$mount_point_
│ │ │ -001c66e0: 6d61 7463 685f 7265 6765 7870 2220 2d71  match_regexp" -q
│ │ │ -001c66f0: 202f 6574 632f 6673 7461 6220 5c0a 2020   /etc/fstab \.  
│ │ │ -001c6700: 2020 2020 2020 7c7c 207b 2065 6368 6f20        || { echo 
│ │ │ -001c6710: 2254 6865 206d 6f75 6e74 2070 6f69 6e74  "The mount point
│ │ │ -001c6720: 2027 2f76 6172 2f74 6d70 2720 6973 206e   '/var/tmp' is n
│ │ │ -001c6730: 6f74 2065 7665 6e20 696e 202f 6574 632f  ot even in /etc/
│ │ │ -001c6740: 6673 7461 622c 2073 6f20 7765 2063 616e  fstab, so we can
│ │ │ -001c6750: 2774 2073 6574 2075 7020 6d6f 756e 7420  't set up mount 
│ │ │ -001c6760: 6f70 7469 6f6e 7322 2026 6774 3b26 616d  options" >&am
│ │ │ -001c6770: 703b 323b 0a20 2020 2020 2020 2020 2020  p;2;.           
│ │ │ -001c6780: 2020 2020 2065 6368 6f20 224e 6f74 2072       echo "Not r
│ │ │ -001c6790: 656d 6564 6961 7469 6e67 2c20 6265 6361  emediating, beca
│ │ │ -001c67a0: 7573 6520 7468 6572 6520 6973 206e 6f20  use there is no 
│ │ │ -001c67b0: 7265 636f 7264 206f 6620 2f76 6172 2f74  record of /var/t
│ │ │ -001c67c0: 6d70 2069 6e20 2f65 7463 2f66 7374 6162  mp in /etc/fstab
│ │ │ -001c67d0: 2220 2667 743b 2661 6d70 3b32 3b20 7265  " >&2; re
│ │ │ -001c67e0: 7475 726e 2031 3b20 7d0a 2020 2020 0a0a  turn 1; }.    ..
│ │ │ -001c67f0: 0a20 2020 206d 6f75 6e74 5f70 6f69 6e74  .    mount_point
│ │ │ -001c6800: 5f6d 6174 6368 5f72 6567 6578 703d 2224  _match_regexp="$
│ │ │ -001c6810: 2870 7269 6e74 6620 225e 5b5b 3a73 7061  (printf "^[[:spa
│ │ │ -001c6820: 6365 3a5d 5d2a 5b5e 235d 2e2a 5b5b 3a73  ce:]]*[^#].*[[:s
│ │ │ -001c6830: 7061 6365 3a5d 5d25 735b 5b3a 7370 6163  pace:]]%s[[:spac
│ │ │ -001c6840: 653a 5d5d 2220 2f76 6172 2f74 6d70 2922  e:]]" /var/tmp)"
│ │ │ -001c6850: 0a0a 2020 2020 2320 4966 2074 6865 206d  ..    # If the m
│ │ │ -001c6860: 6f75 6e74 2070 6f69 6e74 2069 7320 6e6f  ount point is no
│ │ │ -001c6870: 7420 696e 202f 6574 632f 6673 7461 622c  t in /etc/fstab,
│ │ │ -001c6880: 2067 6574 2070 7265 7669 6f75 7320 6d6f   get previous mo
│ │ │ -001c6890: 756e 7420 6f70 7469 6f6e 7320 6672 6f6d  unt options from
│ │ │ -001c68a0: 202f 6574 632f 6d74 6162 0a20 2020 2069   /etc/mtab.    i
│ │ │ -001c68b0: 6620 2120 6772 6570 202d 7120 2224 6d6f  f ! grep -q "$mo
│ │ │ -001c68c0: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ -001c68d0: 7265 6765 7870 2220 2f65 7463 2f66 7374  regexp" /etc/fst
│ │ │ -001c68e0: 6162 3b20 7468 656e 0a20 2020 2020 2020  ab; then.       
│ │ │ -001c68f0: 2023 2072 756e 7469 6d65 206f 7074 7320   # runtime opts 
│ │ │ -001c6900: 7769 7468 6f75 7420 736f 6d65 2061 7574  without some aut
│ │ │ -001c6910: 6f6d 6174 6963 206b 6572 6e65 6c2f 7573  omatic kernel/us
│ │ │ -001c6920: 6572 7370 6163 652d 6164 6465 6420 6465  erspace-added de
│ │ │ -001c6930: 6661 756c 7473 0a20 2020 2020 2020 2070  faults.        p
│ │ │ -001c6940: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ -001c6950: 7473 3d24 2867 7265 7020 2224 6d6f 756e  ts=$(grep "$moun
│ │ │ -001c6960: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ -001c6970: 6765 7870 2220 2f65 7463 2f6d 7461 6220  gexp" /etc/mtab 
│ │ │ -001c6980: 7c20 6865 6164 202d 3120 7c20 2061 776b  | head -1 |  awk
│ │ │ -001c6990: 2027 7b70 7269 6e74 2024 347d 2720 5c0a   '{print $4}' \.
│ │ │ -001c69a0: 2020 2020 2020 2020 2020 2020 2020 2020                  
│ │ │ -001c69b0: 2020 2020 7c20 7365 6420 2d45 2022 732f      | sed -E "s/
│ │ │ -001c69c0: 2872 777c 6465 6661 756c 7473 7c73 6563  (rw|defaults|sec
│ │ │ -001c69d0: 6c61 6265 6c7c 6e6f 6578 6563 2928 2c7c  label|noexec)(,|
│ │ │ -001c69e0: 2429 2f2f 673b 732f 2c24 2f2f 2229 0a20  $)//g;s/,$//"). 
│ │ │ -001c69f0: 2020 2020 2020 205b 2022 2470 7265 7669         [ "$previ
│ │ │ -001c6a00: 6f75 735f 6d6f 756e 745f 6f70 7473 2220  ous_mount_opts" 
│ │ │ -001c6a10: 5d20 2661 6d70 3b26 616d 703b 2070 7265  ] && pre
│ │ │ -001c6a20: 7669 6f75 735f 6d6f 756e 745f 6f70 7473  vious_mount_opts
│ │ │ -001c6a30: 2b3d 222c 220a 2020 2020 2020 2020 2320  +=",".        # 
│ │ │ -001c6a40: 496e 2069 736f 3936 3630 2066 696c 6573  In iso9660 files
│ │ │ -001c6a50: 7973 7465 6d73 206d 7461 6220 636f 756c  ystems mtab coul
│ │ │ -001c6a60: 6420 6465 7363 7269 6265 2061 2022 626c  d describe a "bl
│ │ │ -001c6a70: 6f63 6b73 697a 6522 2076 616c 7565 2c20  ocksize" value, 
│ │ │ -001c6a80: 7468 6973 2073 686f 756c 6420 6265 2072  this should be r
│ │ │ -001c6a90: 6566 6c65 6374 6564 2069 6e0a 2020 2020  eflected in.    
│ │ │ -001c6aa0: 2020 2020 2320 6673 7461 6220 6173 2022      # fstab as "
│ │ │ -001c6ab0: 626c 6f63 6b22 2e20 2054 6865 206e 6578  block".  The nex
│ │ │ -001c6ac0: 7420 7661 7269 6162 6c65 2069 7320 746f  t variable is to
│ │ │ -001c6ad0: 2073 6174 6973 6679 2073 6865 6c6c 6368   satisfy shellch
│ │ │ -001c6ae0: 6563 6b20 5343 3230 3530 2e0a 2020 2020  eck SC2050..    
│ │ │ -001c6af0: 2020 2020 6673 5f74 7970 653d 2222 0a20      fs_type="". 
│ │ │ -001c6b00: 2020 2020 2020 2069 6620 5b20 2022 2466         if [  "$f
│ │ │ -001c6b10: 735f 7479 7065 2220 3d3d 2022 6973 6f39  s_type" == "iso9
│ │ │ -001c6b20: 3636 3022 205d 203b 2074 6865 6e0a 2020  660" ] ; then.  
│ │ │ -001c6b30: 2020 2020 2020 2020 2020 7072 6576 696f            previo
│ │ │ -001c6b40: 7573 5f6d 6f75 6e74 5f6f 7074 733d 2428  us_mount_opts=$(
│ │ │ -001c6b50: 7365 6420 2773 2f62 6c6f 636b 7369 7a65  sed 's/blocksize
│ │ │ -001c6b60: 3d2f 626c 6f63 6b3d 2f27 2026 6c74 3b26  =/block=/' <&
│ │ │ -001c6b70: 6c74 3b26 6c74 3b20 2224 7072 6576 696f  lt;< "$previo
│ │ │ -001c6b80: 7573 5f6d 6f75 6e74 5f6f 7074 7322 290a  us_mount_opts").
│ │ │ -001c6b90: 2020 2020 2020 2020 6669 0a20 2020 2020          fi.     
│ │ │ -001c6ba0: 2020 2065 6368 6f20 2220 2f76 6172 2f74     echo " /var/t
│ │ │ -001c6bb0: 6d70 2020 6465 6661 756c 7473 2c24 7b70  mp  defaults,${p
│ │ │ -001c6bc0: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ -001c6bd0: 7473 7d6e 6f65 7865 6320 3020 3022 2026  ts}noexec 0 0" &
│ │ │ -001c6be0: 6774 3b26 6774 3b20 2f65 7463 2f66 7374  gt;> /etc/fst
│ │ │ -001c6bf0: 6162 0a20 2020 2023 2049 6620 7468 6520  ab.    # If the 
│ │ │ -001c6c00: 6d6f 756e 745f 6f70 7420 6f70 7469 6f6e  mount_opt option
│ │ │ -001c6c10: 2069 7320 6e6f 7420 616c 7265 6164 7920   is not already 
│ │ │ -001c6c20: 696e 2074 6865 206d 6f75 6e74 2070 6f69  in the mount poi
│ │ │ -001c6c30: 6e74 2773 202f 6574 632f 6673 7461 6220  nt's /etc/fstab 
│ │ │ -001c6c40: 656e 7472 792c 2061 6464 2069 740a 2020  entry, add it.  
│ │ │ -001c6c50: 2020 656c 6966 2021 2067 7265 7020 2224    elif ! grep "$
│ │ │ -001c6c60: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ -001c6c70: 685f 7265 6765 7870 2220 2f65 7463 2f66  h_regexp" /etc/f
│ │ │ -001c6c80: 7374 6162 207c 2067 7265 7020 2d71 2022  stab | grep -q "
│ │ │ -001c6c90: 6e6f 6578 6563 223b 2074 6865 6e0a 2020  noexec"; then.  
│ │ │ -001c6ca0: 2020 2020 2020 7072 6576 696f 7573 5f6d        previous_m
│ │ │ -001c6cb0: 6f75 6e74 5f6f 7074 733d 2428 6772 6570  ount_opts=$(grep
│ │ │ -001c6cc0: 2022 246d 6f75 6e74 5f70 6f69 6e74 5f6d   "$mount_point_m
│ │ │ -001c6cd0: 6174 6368 5f72 6567 6578 7022 202f 6574  atch_regexp" /et
│ │ │ -001c6ce0: 632f 6673 7461 6220 7c20 6177 6b20 277b  c/fstab | awk '{
│ │ │ -001c6cf0: 7072 696e 7420 2434 7d27 290a 2020 2020  print $4}').    
│ │ │ -001c6d00: 2020 2020 7365 6420 2d69 2022 737c 5c28      sed -i "s|\(
│ │ │ -001c6d10: 247b 6d6f 756e 745f 706f 696e 745f 6d61  ${mount_point_ma
│ │ │ -001c6d20: 7463 685f 7265 6765 7870 7d2e 2a24 7b70  tch_regexp}.*${p
│ │ │ -001c6d30: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ -001c6d40: 7473 7d5c 297c 5c31 2c6e 6f65 7865 637c  ts}\)|\1,noexec|
│ │ │ -001c6d50: 2220 2f65 7463 2f66 7374 6162 0a20 2020  " /etc/fstab.   
│ │ │ -001c6d60: 2066 690a 0a0a 2020 2020 6966 206d 6b64   fi...    if mkd
│ │ │ -001c6d70: 6972 202d 7020 222f 7661 722f 746d 7022  ir -p "/var/tmp"
│ │ │ -001c6d80: 3b20 7468 656e 0a20 2020 2020 2020 2069  ; then.        i
│ │ │ -001c6d90: 6620 6d6f 756e 7470 6f69 6e74 202d 7120  f mountpoint -q 
│ │ │ -001c6da0: 222f 7661 722f 746d 7022 3b20 7468 656e  "/var/tmp"; then
│ │ │ -001c6db0: 0a20 2020 2020 2020 2020 2020 206d 6f75  .            mou
│ │ │ -001c6dc0: 6e74 202d 6f20 7265 6d6f 756e 7420 2d2d  nt -o remount --
│ │ │ -001c6dd0: 7461 7267 6574 2022 2f76 6172 2f74 6d70  target "/var/tmp
│ │ │ -001c6de0: 220a 2020 2020 2020 2020 6669 0a20 2020  ".        fi.   
│ │ │ -001c6df0: 2066 690a 7d0a 0a70 6572 666f 726d 5f72   fi.}..perform_r
│ │ │ -001c6e00: 656d 6564 6961 7469 6f6e 0a0a 656c 7365  emediation..else
│ │ │ -001c6e10: 0a20 2020 2026 6774 3b26 616d 703b 3220  .    >&2 
│ │ │ -001c6e20: 6563 686f 2027 5265 6d65 6469 6174 696f  echo 'Remediatio
│ │ │ -001c6e30: 6e20 6973 206e 6f74 2061 7070 6c69 6361  n is not applica
│ │ │ -001c6e40: 626c 652c 206e 6f74 6869 6e67 2077 6173  ble, nothing was
│ │ │ -001c6e50: 2064 6f6e 6527 0a66 690a 3c2f 636f 6465   done'.fi.
< │ │ │ +001c4c50: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ +001c4c60: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ +001c4c80: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ +001c4c90: 3c74 643e 6869 6768 3c2f 7464 3e3c 2f74 highReboot │ │ │ +001c4cb0: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +001c4cc0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ +001c4ce0: 7464 3e63 6f6e 6669 6775 7265 3c2f 7464 td>configure

- name: │ │ │ +001c4d10: 2047 6174 6865 7220 7468 6520 7061 636b Gather the pack │ │ │ +001c4d20: 6167 6520 6661 6374 730a 2020 7061 636b age facts. pack │ │ │ +001c4d30: 6167 655f 6661 6374 733a 0a20 2020 206d age_facts:. m │ │ │ +001c4d40: 616e 6167 6572 3a20 6175 746f 0a20 2074 anager: auto. t │ │ │ +001c4d50: 6167 733a 0a20 202d 2063 6f6e 6669 6775 ags:. - configu │ │ │ +001c4d60: 7265 5f73 7472 6174 6567 790a 2020 2d20 re_strategy. - │ │ │ +001c4d70: 6869 6768 5f64 6973 7275 7074 696f 6e0a high_disruption. │ │ │ +001c4d80: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869 - low_complexi │ │ │ +001c4d90: 7479 0a20 202d 206d 6564 6975 6d5f 7365 ty. - medium_se │ │ │ +001c4da0: 7665 7269 7479 0a20 202d 206d 6f75 6e74 verity. - mount │ │ │ +001c4db0: 5f6f 7074 696f 6e5f 7661 725f 746d 705f _option_var_tmp_ │ │ │ +001c4dc0: 6e6f 6578 6563 0a20 202d 206e 6f5f 7265 noexec. - no_re │ │ │ +001c4dd0: 626f 6f74 5f6e 6565 6465 640a 0a2d 206e boot_needed..- n │ │ │ +001c4de0: 616d 653a 2027 4164 6420 6e6f 6578 6563 ame: 'Add noexec │ │ │ +001c4df0: 204f 7074 696f 6e20 746f 202f 7661 722f Option to /var/ │ │ │ +001c4e00: 746d 703a 2043 6865 636b 2069 6e66 6f72 tmp: Check infor │ │ │ +001c4e10: 6d61 7469 6f6e 2061 7373 6f63 6961 7465 mation associate │ │ │ +001c4e20: 6420 746f 206d 6f75 6e74 706f 696e 7427 d to mountpoint' │ │ │ +001c4e30: 0a20 2061 6e73 6962 6c65 2e62 7569 6c74 . ansible.built │ │ │ +001c4e40: 696e 2e63 6f6d 6d61 6e64 3a20 6669 6e64 in.command: find │ │ │ +001c4e50: 6d6e 7420 2d2d 6673 7461 6220 272f 7661 mnt --fstab '/va │ │ │ +001c4e60: 722f 746d 7027 0a20 2072 6567 6973 7465 r/tmp'. registe │ │ │ +001c4e70: 723a 2064 6576 6963 655f 6e61 6d65 0a20 r: device_name. │ │ │ +001c4e80: 2066 6169 6c65 645f 7768 656e 3a20 6465 failed_when: de │ │ │ +001c4e90: 7669 6365 5f6e 616d 652e 7263 2026 6774 vice_name.rc > │ │ │ +001c4ea0: 3b20 310a 2020 6368 616e 6765 645f 7768 ; 1. changed_wh │ │ │ +001c4eb0: 656e 3a20 6661 6c73 650a 2020 6368 6563 en: false. chec │ │ │ +001c4ec0: 6b5f 6d6f 6465 3a20 6661 6c73 650a 2020 k_mode: false. │ │ │ +001c4ed0: 7768 656e 3a0a 2020 2d20 2820 6e6f 7420 when:. - ( not │ │ │ +001c4ee0: 2820 226b 6572 6e65 6c22 2069 6e20 616e ( "kernel" in an │ │ │ +001c4ef0: 7369 626c 655f 6661 6374 732e 7061 636b sible_facts.pack │ │ │ +001c4f00: 6167 6573 2061 6e64 2022 626f 6f74 6322 ages and "bootc" │ │ │ +001c4f10: 2069 6e20 616e 7369 626c 655f 6661 6374 in ansible_fact │ │ │ +001c4f20: 732e 7061 636b 6167 6573 0a20 2020 2061 s.packages. a │ │ │ +001c4f30: 6e64 206e 6f74 2022 6f70 656e 7368 6966 nd not "openshif │ │ │ +001c4f40: 742d 6b75 6265 6c65 7422 2069 6e20 616e t-kubelet" in an │ │ │ +001c4f50: 7369 626c 655f 6661 6374 732e 7061 636b sible_facts.pack │ │ │ +001c4f60: 6167 6573 2061 6e64 2022 6f73 7472 6565 ages and "ostree │ │ │ +001c4f70: 2220 696e 2061 6e73 6962 6c65 5f70 726f " in ansible_pro │ │ │ +001c4f80: 635f 636d 646c 696e 650a 2020 2020 2920 c_cmdline. ) │ │ │ +001c4f90: 616e 6420 6e6f 7420 2820 616e 7369 626c and not ( ansibl │ │ │ +001c4fa0: 655f 7669 7274 7561 6c69 7a61 7469 6f6e e_virtualization │ │ │ +001c4fb0: 5f74 7970 6520 696e 205b 2264 6f63 6b65 _type in ["docke │ │ │ +001c4fc0: 7222 2c20 226c 7863 222c 2022 6f70 656e r", "lxc", "open │ │ │ +001c4fd0: 767a 222c 2022 706f 646d 616e 222c 0a20 vz", "podman",. │ │ │ +001c4fe0: 2020 2022 636f 6e74 6169 6e65 7222 5d20 "container"] │ │ │ +001c4ff0: 2920 290a 2020 2d20 2722 2f76 6172 2f74 ) ). - '"/var/t │ │ │ +001c5000: 6d70 2220 696e 2061 6e73 6962 6c65 5f6d mp" in ansible_m │ │ │ +001c5010: 6f75 6e74 7320 7c20 6d61 7028 6174 7472 ounts | map(attr │ │ │ +001c5020: 6962 7574 653d 226d 6f75 6e74 2229 207c ibute="mount") | │ │ │ +001c5030: 206c 6973 7427 0a20 2074 6167 733a 0a20 list'. tags:. │ │ │ +001c5040: 202d 2063 6f6e 6669 6775 7265 5f73 7472 - configure_str │ │ │ +001c5050: 6174 6567 790a 2020 2d20 6869 6768 5f64 ategy. - high_d │ │ │ +001c5060: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f isruption. - lo │ │ │ +001c5070: 775f 636f 6d70 6c65 7869 7479 0a20 202d w_complexity. - │ │ │ +001c5080: 206d 6564 6975 6d5f 7365 7665 7269 7479 medium_severity │ │ │ +001c5090: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f . - mount_optio │ │ │ +001c50a0: 6e5f 7661 725f 746d 705f 6e6f 6578 6563 n_var_tmp_noexec │ │ │ +001c50b0: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e . - no_reboot_n │ │ │ +001c50c0: 6565 6465 640a 0a2d 206e 616d 653a 2027 eeded..- name: ' │ │ │ +001c50d0: 4164 6420 6e6f 6578 6563 204f 7074 696f Add noexec Optio │ │ │ +001c50e0: 6e20 746f 202f 7661 722f 746d 703a 2043 n to /var/tmp: C │ │ │ +001c50f0: 7265 6174 6520 6d6f 756e 745f 696e 666f reate mount_info │ │ │ +001c5100: 2064 6963 7469 6f6e 6172 7920 7661 7269 dictionary vari │ │ │ +001c5110: 6162 6c65 270a 2020 7365 745f 6661 6374 able'. set_fact │ │ │ +001c5120: 3a0a 2020 2020 6d6f 756e 745f 696e 666f :. mount_info │ │ │ +001c5130: 3a20 277b 7b20 6d6f 756e 745f 696e 666f : '{{ mount_info │ │ │ +001c5140: 7c64 6566 6175 6c74 287b 7d29 7c63 6f6d |default({})|com │ │ │ +001c5150: 6269 6e65 287b 6974 656d 2e30 3a20 6974 bine({item.0: it │ │ │ +001c5160: 656d 2e31 7d29 207d 7d27 0a20 2077 6974 em.1}) }}'. wit │ │ │ +001c5170: 685f 746f 6765 7468 6572 3a0a 2020 2d20 h_together:. - │ │ │ +001c5180: 277b 7b20 6465 7669 6365 5f6e 616d 652e '{{ device_name. │ │ │ +001c5190: 7374 646f 7574 5f6c 696e 6573 5b30 5d2e stdout_lines[0]. │ │ │ +001c51a0: 7370 6c69 7428 2920 7c20 6d61 7028 2727 split() | map('' │ │ │ +001c51b0: 6c6f 7765 7227 2729 207c 206c 6973 7420 lower'') | list │ │ │ +001c51c0: 7d7d 270a 2020 2d20 277b 7b20 6465 7669 }}'. - '{{ devi │ │ │ +001c51d0: 6365 5f6e 616d 652e 7374 646f 7574 5f6c ce_name.stdout_l │ │ │ +001c51e0: 696e 6573 5b31 5d2e 7370 6c69 7428 2920 ines[1].split() │ │ │ +001c51f0: 7c20 6c69 7374 207d 7d27 0a20 2077 6865 | list }}'. whe │ │ │ +001c5200: 6e3a 0a20 202d 2028 206e 6f74 2028 2022 n:. - ( not ( " │ │ │ +001c5210: 6b65 726e 656c 2220 696e 2061 6e73 6962 kernel" in ansib │ │ │ +001c5220: 6c65 5f66 6163 7473 2e70 6163 6b61 6765 le_facts.package │ │ │ +001c5230: 7320 616e 6420 2262 6f6f 7463 2220 696e s and "bootc" in │ │ │ +001c5240: 2061 6e73 6962 6c65 5f66 6163 7473 2e70 ansible_facts.p │ │ │ +001c5250: 6163 6b61 6765 730a 2020 2020 616e 6420 ackages. and │ │ │ +001c5260: 6e6f 7420 226f 7065 6e73 6869 6674 2d6b not "openshift-k │ │ │ +001c5270: 7562 656c 6574 2220 696e 2061 6e73 6962 ubelet" in ansib │ │ │ +001c5280: 6c65 5f66 6163 7473 2e70 6163 6b61 6765 le_facts.package │ │ │ +001c5290: 7320 616e 6420 226f 7374 7265 6522 2069 s and "ostree" i │ │ │ +001c52a0: 6e20 616e 7369 626c 655f 7072 6f63 5f63 n ansible_proc_c │ │ │ +001c52b0: 6d64 6c69 6e65 0a20 2020 2029 2061 6e64 mdline. ) and │ │ │ +001c52c0: 206e 6f74 2028 2061 6e73 6962 6c65 5f76 not ( ansible_v │ │ │ +001c52d0: 6972 7475 616c 697a 6174 696f 6e5f 7479 irtualization_ty │ │ │ +001c52e0: 7065 2069 6e20 5b22 646f 636b 6572 222c pe in ["docker", │ │ │ +001c52f0: 2022 6c78 6322 2c20 226f 7065 6e76 7a22 "lxc", "openvz" │ │ │ +001c5300: 2c20 2270 6f64 6d61 6e22 2c0a 2020 2020 , "podman",. │ │ │ +001c5310: 2263 6f6e 7461 696e 6572 225d 2029 2029 "container"] ) ) │ │ │ +001c5320: 0a20 202d 2027 222f 7661 722f 746d 7022 . - '"/var/tmp" │ │ │ +001c5330: 2069 6e20 616e 7369 626c 655f 6d6f 756e in ansible_moun │ │ │ +001c5340: 7473 207c 206d 6170 2861 7474 7269 6275 ts | map(attribu │ │ │ +001c5350: 7465 3d22 6d6f 756e 7422 2920 7c20 6c69 te="mount") | li │ │ │ +001c5360: 7374 270a 2020 2d20 6465 7669 6365 5f6e st'. - device_n │ │ │ +001c5370: 616d 652e 7374 646f 7574 2069 7320 6465 ame.stdout is de │ │ │ +001c5380: 6669 6e65 6420 616e 6420 6465 7669 6365 fined and device │ │ │ +001c5390: 5f6e 616d 652e 7374 646f 7574 5f6c 696e _name.stdout_lin │ │ │ +001c53a0: 6573 2069 7320 6465 6669 6e65 640a 2020 es is defined. │ │ │ +001c53b0: 2d20 2864 6576 6963 655f 6e61 6d65 2e73 - (device_name.s │ │ │ +001c53c0: 7464 6f75 7420 7c20 6c65 6e67 7468 2026 tdout | length & │ │ │ +001c53d0: 6774 3b20 3029 0a20 2074 6167 733a 0a20 gt; 0). tags:. │ │ │ +001c53e0: 202d 2063 6f6e 6669 6775 7265 5f73 7472 - configure_str │ │ │ +001c53f0: 6174 6567 790a 2020 2d20 6869 6768 5f64 ategy. - high_d │ │ │ +001c5400: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f isruption. - lo │ │ │ +001c5410: 775f 636f 6d70 6c65 7869 7479 0a20 202d w_complexity. - │ │ │ +001c5420: 206d 6564 6975 6d5f 7365 7665 7269 7479 medium_severity │ │ │ +001c5430: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f . - mount_optio │ │ │ +001c5440: 6e5f 7661 725f 746d 705f 6e6f 6578 6563 n_var_tmp_noexec │ │ │ +001c5450: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e . - no_reboot_n │ │ │ +001c5460: 6565 6465 640a 0a2d 206e 616d 653a 2027 eeded..- name: ' │ │ │ +001c5470: 4164 6420 6e6f 6578 6563 204f 7074 696f Add noexec Optio │ │ │ +001c5480: 6e20 746f 202f 7661 722f 746d 703a 2049 n to /var/tmp: I │ │ │ +001c5490: 6620 2f76 6172 2f74 6d70 206e 6f74 206d f /var/tmp not m │ │ │ +001c54a0: 6f75 6e74 6564 2c20 6372 6166 7420 6d6f ounted, craft mo │ │ │ +001c54b0: 756e 745f 696e 666f 0a20 2020 206d 616e unt_info. man │ │ │ +001c54c0: 7561 6c6c 7927 0a20 2073 6574 5f66 6163 ually'. set_fac │ │ │ +001c54d0: 743a 0a20 2020 206d 6f75 6e74 5f69 6e66 t:. mount_inf │ │ │ +001c54e0: 6f3a 2027 7b7b 206d 6f75 6e74 5f69 6e66 o: '{{ mount_inf │ │ │ +001c54f0: 6f7c 6465 6661 756c 7428 7b7d 297c 636f o|default({})|co │ │ │ +001c5500: 6d62 696e 6528 7b69 7465 6d2e 303a 2069 mbine({item.0: i │ │ │ +001c5510: 7465 6d2e 317d 2920 7d7d 270a 2020 7769 tem.1}) }}'. wi │ │ │ +001c5520: 7468 5f74 6f67 6574 6865 723a 0a20 202d th_together:. - │ │ │ +001c5530: 202d 2074 6172 6765 740a 2020 2020 2d20 - target. - │ │ │ +001c5540: 736f 7572 6365 0a20 2020 202d 2066 7374 source. - fst │ │ │ +001c5550: 7970 650a 2020 2020 2d20 6f70 7469 6f6e ype. - option │ │ │ +001c5560: 730a 2020 2d20 2d20 2f76 6172 2f74 6d70 s. - - /var/tmp │ │ │ +001c5570: 0a20 2020 202d 2027 270a 2020 2020 2d20 . - ''. - │ │ │ +001c5580: 2727 0a20 2020 202d 2064 6566 6175 6c74 ''. - default │ │ │ +001c5590: 730a 2020 7768 656e 3a0a 2020 2d20 2820 s. when:. - ( │ │ │ +001c55a0: 6e6f 7420 2820 226b 6572 6e65 6c22 2069 not ( "kernel" i │ │ │ +001c55b0: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ +001c55c0: 7061 636b 6167 6573 2061 6e64 2022 626f packages and "bo │ │ │ +001c55d0: 6f74 6322 2069 6e20 616e 7369 626c 655f otc" in ansible_ │ │ │ +001c55e0: 6661 6374 732e 7061 636b 6167 6573 0a20 facts.packages. │ │ │ +001c55f0: 2020 2061 6e64 206e 6f74 2022 6f70 656e and not "open │ │ │ +001c5600: 7368 6966 742d 6b75 6265 6c65 7422 2069 shift-kubelet" i │ │ │ +001c5610: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ +001c5620: 7061 636b 6167 6573 2061 6e64 2022 6f73 packages and "os │ │ │ +001c5630: 7472 6565 2220 696e 2061 6e73 6962 6c65 tree" in ansible │ │ │ +001c5640: 5f70 726f 635f 636d 646c 696e 650a 2020 _proc_cmdline. │ │ │ +001c5650: 2020 2920 616e 6420 6e6f 7420 2820 616e ) and not ( an │ │ │ +001c5660: 7369 626c 655f 7669 7274 7561 6c69 7a61 sible_virtualiza │ │ │ +001c5670: 7469 6f6e 5f74 7970 6520 696e 205b 2264 tion_type in ["d │ │ │ +001c5680: 6f63 6b65 7222 2c20 226c 7863 222c 2022 ocker", "lxc", " │ │ │ +001c5690: 6f70 656e 767a 222c 2022 706f 646d 616e openvz", "podman │ │ │ +001c56a0: 222c 0a20 2020 2022 636f 6e74 6169 6e65 ",. "containe │ │ │ +001c56b0: 7222 5d20 2920 290a 2020 2d20 2722 2f76 r"] ) ). - '"/v │ │ │ +001c56c0: 6172 2f74 6d70 2220 696e 2061 6e73 6962 ar/tmp" in ansib │ │ │ +001c56d0: 6c65 5f6d 6f75 6e74 7320 7c20 6d61 7028 le_mounts | map( │ │ │ +001c56e0: 6174 7472 6962 7574 653d 226d 6f75 6e74 attribute="mount │ │ │ +001c56f0: 2229 207c 206c 6973 7427 0a20 202d 2028 ") | list'. - ( │ │ │ +001c5700: 222d 2d66 7374 6162 2220 7c20 6c65 6e67 "--fstab" | leng │ │ │ +001c5710: 7468 203d 3d20 3029 0a20 202d 2064 6576 th == 0). - dev │ │ │ +001c5720: 6963 655f 6e61 6d65 2e73 7464 6f75 7420 ice_name.stdout │ │ │ +001c5730: 6973 2064 6566 696e 6564 2061 6e64 2064 is defined and d │ │ │ +001c5740: 6576 6963 655f 6e61 6d65 2e73 7464 6f75 evice_name.stdou │ │ │ +001c5750: 745f 6c69 6e65 7320 6973 2064 6566 696e t_lines is defin │ │ │ +001c5760: 6564 0a20 202d 2028 6465 7669 6365 5f6e ed. - (device_n │ │ │ +001c5770: 616d 652e 7374 646f 7574 207c 206c 656e ame.stdout | len │ │ │ +001c5780: 6774 6820 3d3d 2030 290a 2020 7461 6773 gth == 0). tags │ │ │ +001c5790: 3a0a 2020 2d20 636f 6e66 6967 7572 655f :. - configure_ │ │ │ +001c57a0: 7374 7261 7465 6779 0a20 202d 2068 6967 strategy. - hig │ │ │ +001c57b0: 685f 6469 7372 7570 7469 6f6e 0a20 202d h_disruption. - │ │ │ +001c57c0: 206c 6f77 5f63 6f6d 706c 6578 6974 790a low_complexity. │ │ │ +001c57d0: 2020 2d20 6d65 6469 756d 5f73 6576 6572 - medium_sever │ │ │ +001c57e0: 6974 790a 2020 2d20 6d6f 756e 745f 6f70 ity. - mount_op │ │ │ +001c57f0: 7469 6f6e 5f76 6172 5f74 6d70 5f6e 6f65 tion_var_tmp_noe │ │ │ +001c5800: 7865 630a 2020 2d20 6e6f 5f72 6562 6f6f xec. - no_reboo │ │ │ +001c5810: 745f 6e65 6564 6564 0a0a 2d20 6e61 6d65 t_needed..- name │ │ │ +001c5820: 3a20 2741 6464 206e 6f65 7865 6320 4f70 : 'Add noexec Op │ │ │ +001c5830: 7469 6f6e 2074 6f20 2f76 6172 2f74 6d70 tion to /var/tmp │ │ │ +001c5840: 3a20 4d61 6b65 2073 7572 6520 6e6f 6578 : Make sure noex │ │ │ +001c5850: 6563 206f 7074 696f 6e20 6973 2070 6172 ec option is par │ │ │ +001c5860: 7420 6f66 2074 6865 2074 6f0a 2020 2020 t of the to. │ │ │ +001c5870: 2f76 6172 2f74 6d70 206f 7074 696f 6e73 /var/tmp options │ │ │ +001c5880: 270a 2020 7365 745f 6661 6374 3a0a 2020 '. set_fact:. │ │ │ +001c5890: 2020 6d6f 756e 745f 696e 666f 3a20 277b mount_info: '{ │ │ │ +001c58a0: 7b20 6d6f 756e 745f 696e 666f 207c 2063 { mount_info | c │ │ │ +001c58b0: 6f6d 6269 6e65 2820 7b27 276f 7074 696f ombine( {''optio │ │ │ +001c58c0: 6e73 2727 3a27 2727 277e 286d 6f75 6e74 ns'':''''~(mount │ │ │ +001c58d0: 5f69 6e66 6f2e 6f70 7469 6f6e 7320 7c0a _info.options |. │ │ │ +001c58e0: 2020 2020 2020 6465 6661 756c 7428 2727 default('' │ │ │ +001c58f0: 2727 2929 7e28 2727 2c27 2720 6966 2028 ''))~('','' if ( │ │ │ +001c5900: 6d6f 756e 745f 696e 666f 2e6f 7074 696f mount_info.optio │ │ │ +001c5910: 6e73 207c 2064 6566 6175 6c74 2827 2727 ns | default(''' │ │ │ +001c5920: 2729 2920 656c 7365 2027 2727 2729 7e27 ')) else '''')~' │ │ │ +001c5930: 276e 6f65 7865 6327 270a 2020 2020 2020 'noexec''. │ │ │ +001c5940: 7d29 207d 7d27 0a20 2077 6865 6e3a 0a20 }) }}'. when:. │ │ │ +001c5950: 202d 2028 206e 6f74 2028 2022 6b65 726e - ( not ( "kern │ │ │ +001c5960: 656c 2220 696e 2061 6e73 6962 6c65 5f66 el" in ansible_f │ │ │ +001c5970: 6163 7473 2e70 6163 6b61 6765 7320 616e acts.packages an │ │ │ +001c5980: 6420 2262 6f6f 7463 2220 696e 2061 6e73 d "bootc" in ans │ │ │ +001c5990: 6962 6c65 5f66 6163 7473 2e70 6163 6b61 ible_facts.packa │ │ │ +001c59a0: 6765 730a 2020 2020 616e 6420 6e6f 7420 ges. and not │ │ │ +001c59b0: 226f 7065 6e73 6869 6674 2d6b 7562 656c "openshift-kubel │ │ │ +001c59c0: 6574 2220 696e 2061 6e73 6962 6c65 5f66 et" in ansible_f │ │ │ +001c59d0: 6163 7473 2e70 6163 6b61 6765 7320 616e acts.packages an │ │ │ +001c59e0: 6420 226f 7374 7265 6522 2069 6e20 616e d "ostree" in an │ │ │ +001c59f0: 7369 626c 655f 7072 6f63 5f63 6d64 6c69 sible_proc_cmdli │ │ │ +001c5a00: 6e65 0a20 2020 2029 2061 6e64 206e 6f74 ne. ) and not │ │ │ +001c5a10: 2028 2061 6e73 6962 6c65 5f76 6972 7475 ( ansible_virtu │ │ │ +001c5a20: 616c 697a 6174 696f 6e5f 7479 7065 2069 alization_type i │ │ │ +001c5a30: 6e20 5b22 646f 636b 6572 222c 2022 6c78 n ["docker", "lx │ │ │ +001c5a40: 6322 2c20 226f 7065 6e76 7a22 2c20 2270 c", "openvz", "p │ │ │ +001c5a50: 6f64 6d61 6e22 2c0a 2020 2020 2263 6f6e odman",. "con │ │ │ +001c5a60: 7461 696e 6572 225d 2029 2029 0a20 202d tainer"] ) ). - │ │ │ +001c5a70: 2027 222f 7661 722f 746d 7022 2069 6e20 '"/var/tmp" in │ │ │ +001c5a80: 616e 7369 626c 655f 6d6f 756e 7473 207c ansible_mounts | │ │ │ +001c5a90: 206d 6170 2861 7474 7269 6275 7465 3d22 map(attribute=" │ │ │ +001c5aa0: 6d6f 756e 7422 2920 7c20 6c69 7374 270a mount") | list'. │ │ │ +001c5ab0: 2020 2d20 6d6f 756e 745f 696e 666f 2069 - mount_info i │ │ │ +001c5ac0: 7320 6465 6669 6e65 6420 616e 6420 226e s defined and "n │ │ │ +001c5ad0: 6f65 7865 6322 206e 6f74 2069 6e20 286d oexec" not in (m │ │ │ +001c5ae0: 6f75 6e74 5f69 6e66 6f2e 6f70 7469 6f6e ount_info.option │ │ │ +001c5af0: 7320 7c20 6465 6661 756c 7428 2727 2929 s | default('')) │ │ │ +001c5b00: 0a20 2074 6167 733a 0a20 202d 2063 6f6e . tags:. - con │ │ │ +001c5b10: 6669 6775 7265 5f73 7472 6174 6567 790a figure_strategy. │ │ │ +001c5b20: 2020 2d20 6869 6768 5f64 6973 7275 7074 - high_disrupt │ │ │ +001c5b30: 696f 6e0a 2020 2d20 6c6f 775f 636f 6d70 ion. - low_comp │ │ │ +001c5b40: 6c65 7869 7479 0a20 202d 206d 6564 6975 lexity. - mediu │ │ │ +001c5b50: 6d5f 7365 7665 7269 7479 0a20 202d 206d m_severity. - m │ │ │ +001c5b60: 6f75 6e74 5f6f 7074 696f 6e5f 7661 725f ount_option_var_ │ │ │ +001c5b70: 746d 705f 6e6f 6578 6563 0a20 202d 206e tmp_noexec. - n │ │ │ +001c5b80: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a o_reboot_needed. │ │ │ +001c5b90: 0a2d 206e 616d 653a 2027 4164 6420 6e6f .- name: 'Add no │ │ │ +001c5ba0: 6578 6563 204f 7074 696f 6e20 746f 202f exec Option to / │ │ │ +001c5bb0: 7661 722f 746d 703a 2045 6e73 7572 6520 var/tmp: Ensure │ │ │ +001c5bc0: 2f76 6172 2f74 6d70 2069 7320 6d6f 756e /var/tmp is moun │ │ │ +001c5bd0: 7465 6420 7769 7468 206e 6f65 7865 6320 ted with noexec │ │ │ +001c5be0: 6f70 7469 6f6e 270a 2020 616e 7369 626c option'. ansibl │ │ │ +001c5bf0: 652e 706f 7369 782e 6d6f 756e 743a 0a20 e.posix.mount:. │ │ │ +001c5c00: 2020 2070 6174 683a 202f 7661 722f 746d path: /var/tm │ │ │ +001c5c10: 700a 2020 2020 7372 633a 2027 7b7b 206d p. src: '{{ m │ │ │ +001c5c20: 6f75 6e74 5f69 6e66 6f2e 736f 7572 6365 ount_info.source │ │ │ +001c5c30: 207c 2064 6566 6175 6c74 2827 2727 2729 | default('''') │ │ │ +001c5c40: 207d 7d27 0a20 2020 206f 7074 733a 2027 }}'. opts: ' │ │ │ +001c5c50: 7b7b 206d 6f75 6e74 5f69 6e66 6f2e 6f70 {{ mount_info.op │ │ │ +001c5c60: 7469 6f6e 7320 7c20 6465 6661 756c 7428 tions | default( │ │ │ +001c5c70: 2727 2727 2920 7d7d 270a 2020 2020 7374 '''') }}'. st │ │ │ +001c5c80: 6174 653a 206d 6f75 6e74 6564 0a20 2020 ate: mounted. │ │ │ +001c5c90: 2066 7374 7970 653a 2027 7b7b 206d 6f75 fstype: '{{ mou │ │ │ +001c5ca0: 6e74 5f69 6e66 6f2e 6673 7479 7065 207c nt_info.fstype | │ │ │ +001c5cb0: 2064 6566 6175 6c74 2827 2727 2729 207d default('''') } │ │ │ +001c5cc0: 7d27 0a20 2072 6567 6973 7465 723a 206d }'. register: m │ │ │ +001c5cd0: 6f75 6e74 5f72 6573 756c 740a 2020 6661 ount_result. fa │ │ │ +001c5ce0: 696c 6564 5f77 6865 6e3a 0a20 202d 206d iled_when:. - m │ │ │ +001c5cf0: 6f75 6e74 5f72 6573 756c 7420 6973 2066 ount_result is f │ │ │ +001c5d00: 6169 6c65 640a 2020 2d20 2727 2774 6172 ailed. - '''tar │ │ │ +001c5d10: 6765 7420 6973 2062 7573 7927 2720 6e6f get is busy'' no │ │ │ +001c5d20: 7420 696e 2028 6d6f 756e 745f 7265 7375 t in (mount_resu │ │ │ +001c5d30: 6c74 2e6d 7367 207c 2064 6566 6175 6c74 lt.msg | default │ │ │ +001c5d40: 2827 2727 2729 2927 0a20 202d 2027 2727 (''''))'. - ''' │ │ │ +001c5d50: 616c 7265 6164 7920 6d6f 756e 7465 6427 already mounted' │ │ │ +001c5d60: 2720 6e6f 7420 696e 2028 6d6f 756e 745f ' not in (mount_ │ │ │ +001c5d70: 7265 7375 6c74 2e6d 7367 207c 2064 6566 result.msg | def │ │ │ +001c5d80: 6175 6c74 2827 2727 2729 2927 0a20 2077 ault(''''))'. w │ │ │ +001c5d90: 6865 6e3a 0a20 202d 2028 206e 6f74 2028 hen:. - ( not ( │ │ │ +001c5da0: 2022 6b65 726e 656c 2220 696e 2061 6e73 "kernel" in ans │ │ │ +001c5db0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61 ible_facts.packa │ │ │ +001c5dc0: 6765 7320 616e 6420 2262 6f6f 7463 2220 ges and "bootc" │ │ │ +001c5dd0: 696e 2061 6e73 6962 6c65 5f66 6163 7473 in ansible_facts │ │ │ +001c5de0: 2e70 6163 6b61 6765 730a 2020 2020 616e .packages. an │ │ │ +001c5df0: 6420 6e6f 7420 226f 7065 6e73 6869 6674 d not "openshift │ │ │ +001c5e00: 2d6b 7562 656c 6574 2220 696e 2061 6e73 -kubelet" in ans │ │ │ +001c5e10: 6962 6c65 5f66 6163 7473 2e70 6163 6b61 ible_facts.packa │ │ │ +001c5e20: 6765 7320 616e 6420 226f 7374 7265 6522 ges and "ostree" │ │ │ +001c5e30: 2069 6e20 616e 7369 626c 655f 7072 6f63 in ansible_proc │ │ │ +001c5e40: 5f63 6d64 6c69 6e65 0a20 2020 2029 2061 _cmdline. ) a │ │ │ +001c5e50: 6e64 206e 6f74 2028 2061 6e73 6962 6c65 nd not ( ansible │ │ │ +001c5e60: 5f76 6972 7475 616c 697a 6174 696f 6e5f _virtualization_ │ │ │ +001c5e70: 7479 7065 2069 6e20 5b22 646f 636b 6572 type in ["docker │ │ │ +001c5e80: 222c 2022 6c78 6322 2c20 226f 7065 6e76 ", "lxc", "openv │ │ │ +001c5e90: 7a22 2c20 2270 6f64 6d61 6e22 2c0a 2020 z", "podman",. │ │ │ +001c5ea0: 2020 2263 6f6e 7461 696e 6572 225d 2029 "container"] ) │ │ │ +001c5eb0: 2029 0a20 202d 2027 222f 7661 722f 746d ). - '"/var/tm │ │ │ +001c5ec0: 7022 2069 6e20 616e 7369 626c 655f 6d6f p" in ansible_mo │ │ │ +001c5ed0: 756e 7473 207c 206d 6170 2861 7474 7269 unts | map(attri │ │ │ +001c5ee0: 6275 7465 3d22 6d6f 756e 7422 2920 7c20 bute="mount") | │ │ │ +001c5ef0: 6c69 7374 270a 2020 2d20 6d6f 756e 745f list'. - mount_ │ │ │ +001c5f00: 696e 666f 2069 7320 6465 6669 6e65 640a info is defined. │ │ │ +001c5f10: 2020 2d20 2864 6576 6963 655f 6e61 6d65 - (device_name │ │ │ +001c5f20: 2e73 7464 6f75 7420 6973 2064 6566 696e .stdout is defin │ │ │ +001c5f30: 6564 2061 6e64 2028 6465 7669 6365 5f6e ed and (device_n │ │ │ +001c5f40: 616d 652e 7374 646f 7574 207c 206c 656e ame.stdout | len │ │ │ +001c5f50: 6774 6820 2667 743b 2030 2929 206f 7220 gth > 0)) or │ │ │ +001c5f60: 2822 2d2d 6673 7461 6222 0a20 2020 207c ("--fstab". | │ │ │ +001c5f70: 206c 656e 6774 6820 3d3d 2030 290a 2020 length == 0). │ │ │ +001c5f80: 7461 6773 3a0a 2020 2d20 636f 6e66 6967 tags:. - config │ │ │ +001c5f90: 7572 655f 7374 7261 7465 6779 0a20 202d ure_strategy. - │ │ │ +001c5fa0: 2068 6967 685f 6469 7372 7570 7469 6f6e high_disruption │ │ │ +001c5fb0: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578 . - low_complex │ │ │ +001c5fc0: 6974 790a 2020 2d20 6d65 6469 756d 5f73 ity. - medium_s │ │ │ +001c5fd0: 6576 6572 6974 790a 2020 2d20 6d6f 756e everity. - moun │ │ │ +001c5fe0: 745f 6f70 7469 6f6e 5f76 6172 5f74 6d70 t_option_var_tmp │ │ │ +001c5ff0: 5f6e 6f65 7865 630a 2020 2d20 6e6f 5f72 _noexec. - no_r │ │ │ +001c6000: 6562 6f6f 745f 6e65 6564 6564 0a3c 2f63 eboot_needed.

│ │ │ +001c6020: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ +001c60c0: 6564 6961 7469 6f6e 2053 6865 6c6c 2073 ediation Shell s │ │ │ +001c60d0: 6372 6970 7420 e287 b23c 2f61 3e3c 6272 cript ...
# R
│ │ │ +001c6190: 656d 6564 6961 7469 6f6e 2069 7320 6170  emediation is ap
│ │ │ +001c61a0: 706c 6963 6162 6c65 206f 6e6c 7920 696e  plicable only in
│ │ │ +001c61b0: 2063 6572 7461 696e 2070 6c61 7466 6f72   certain platfor
│ │ │ +001c61c0: 6d73 0a69 6620 2820 2120 2820 7b20 7270  ms.if ( ! ( { rp
│ │ │ +001c61d0: 6d20 2d2d 7175 6965 7420 2d71 206b 6572  m --quiet -q ker
│ │ │ +001c61e0: 6e65 6c20 3b7d 2026 616d 703b 2661 6d70  nel ;} &&
│ │ │ +001c61f0: 3b20 7b20 7270 6d20 2d2d 7175 6965 7420  ; { rpm --quiet 
│ │ │ +001c6200: 2d71 2062 6f6f 7463 203b 7d20 2661 6d70  -q bootc ;} &
│ │ │ +001c6210: 3b26 616d 703b 207b 2021 2072 706d 202d  ;& { ! rpm -
│ │ │ +001c6220: 2d71 7569 6574 202d 7120 6f70 656e 7368  -quiet -q opensh
│ │ │ +001c6230: 6966 742d 6b75 6265 6c65 7420 3b7d 2026  ift-kubelet ;} &
│ │ │ +001c6240: 616d 703b 2661 6d70 3b20 285b 202d 6620  amp;& ([ -f 
│ │ │ +001c6250: 2f72 756e 2f6f 7374 7265 652d 626f 6f74  /run/ostree-boot
│ │ │ +001c6260: 6564 205d 207c 7c20 5b20 2d4c 202f 6f73  ed ] || [ -L /os
│ │ │ +001c6270: 7472 6565 205d 2920 2920 2661 6d70 3b26  tree ]) ) &&
│ │ │ +001c6280: 616d 703b 2021 2028 205b 202d 6620 2f2e  amp; ! ( [ -f /.
│ │ │ +001c6290: 646f 636b 6572 656e 7620 5d20 7c7c 205b  dockerenv ] || [
│ │ │ +001c62a0: 202d 6620 2f72 756e 2f2e 636f 6e74 6169   -f /run/.contai
│ │ │ +001c62b0: 6e65 7265 6e76 205d 2029 2029 2026 616d  nerenv ] ) ) &am
│ │ │ +001c62c0: 703b 2661 6d70 3b20 7b20 2820 6669 6e64  p;& { ( find
│ │ │ +001c62d0: 6d6e 7420 2d2d 6b65 726e 656c 2022 2f76  mnt --kernel "/v
│ │ │ +001c62e0: 6172 2f74 6d70 2220 2667 743b 202f 6465  ar/tmp" > /de
│ │ │ +001c62f0: 762f 6e75 6c6c 207c 7c20 6669 6e64 6d6e  v/null || findmn
│ │ │ +001c6300: 7420 2d2d 6673 7461 6220 222f 7661 722f  t --fstab "/var/
│ │ │ +001c6310: 746d 7022 2026 6774 3b20 2f64 6576 2f6e  tmp" > /dev/n
│ │ │ +001c6320: 756c 6c20 293b 207d 3b20 7468 656e 0a0a  ull ); }; then..
│ │ │ +001c6330: 6675 6e63 7469 6f6e 2070 6572 666f 726d  function perform
│ │ │ +001c6340: 5f72 656d 6564 6961 7469 6f6e 207b 0a0a  _remediation {..
│ │ │ +001c6350: 2020 2020 0a20 2020 2020 2020 2023 2074      .        # t
│ │ │ +001c6360: 6865 206d 6f75 6e74 2070 6f69 6e74 202f  he mount point /
│ │ │ +001c6370: 7661 722f 746d 7020 6861 7320 746f 2062  var/tmp has to b
│ │ │ +001c6380: 6520 6465 6669 6e65 6420 696e 202f 6574  e defined in /et
│ │ │ +001c6390: 632f 6673 7461 620a 2020 2020 2020 2020  c/fstab.        
│ │ │ +001c63a0: 2320 6265 666f 7265 2074 6869 7320 7265  # before this re
│ │ │ +001c63b0: 6d65 6469 6174 696f 6e20 6361 6e20 6265  mediation can be
│ │ │ +001c63c0: 2065 7865 6375 7465 642e 2049 6e20 6361   executed. In ca
│ │ │ +001c63d0: 7365 2069 7420 6973 206e 6f74 2064 6566  se it is not def
│ │ │ +001c63e0: 696e 6564 2c20 7468 650a 2020 2020 2020  ined, the.      
│ │ │ +001c63f0: 2020 2320 7265 6d65 6469 6174 696f 6e20    # remediation 
│ │ │ +001c6400: 6162 6f72 7473 2061 6e64 206e 6f20 6368  aborts and no ch
│ │ │ +001c6410: 616e 6765 7320 7265 6761 7264 696e 6720  anges regarding 
│ │ │ +001c6420: 7468 6520 6d6f 756e 7420 706f 696e 7420  the mount point 
│ │ │ +001c6430: 6172 6520 646f 6e65 2e0a 2020 2020 2020  are done..      
│ │ │ +001c6440: 2020 6d6f 756e 745f 706f 696e 745f 6d61    mount_point_ma
│ │ │ +001c6450: 7463 685f 7265 6765 7870 3d22 2428 7072  tch_regexp="$(pr
│ │ │ +001c6460: 696e 7466 2022 5e5b 5b3a 7370 6163 653a  intf "^[[:space:
│ │ │ +001c6470: 5d5d 2a5b 5e23 5d2e 2a5b 5b3a 7370 6163  ]]*[^#].*[[:spac
│ │ │ +001c6480: 653a 5d5d 2573 5b5b 3a73 7061 6365 3a5d  e:]]%s[[:space:]
│ │ │ +001c6490: 5d22 2022 2f76 6172 2f74 6d70 2229 220a  ]" "/var/tmp")".
│ │ │ +001c64a0: 0a20 2020 2067 7265 7020 2224 6d6f 756e  .    grep "$moun
│ │ │ +001c64b0: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ +001c64c0: 6765 7870 2220 2d71 202f 6574 632f 6673  gexp" -q /etc/fs
│ │ │ +001c64d0: 7461 6220 5c0a 2020 2020 2020 2020 7c7c  tab \.        ||
│ │ │ +001c64e0: 207b 2065 6368 6f20 2254 6865 206d 6f75   { echo "The mou
│ │ │ +001c64f0: 6e74 2070 6f69 6e74 2027 2f76 6172 2f74  nt point '/var/t
│ │ │ +001c6500: 6d70 2720 6973 206e 6f74 2065 7665 6e20  mp' is not even 
│ │ │ +001c6510: 696e 202f 6574 632f 6673 7461 622c 2073  in /etc/fstab, s
│ │ │ +001c6520: 6f20 7765 2063 616e 2774 2073 6574 2075  o we can't set u
│ │ │ +001c6530: 7020 6d6f 756e 7420 6f70 7469 6f6e 7322  p mount options"
│ │ │ +001c6540: 2026 6774 3b26 616d 703b 323b 0a20 2020   >&2;.   
│ │ │ +001c6550: 2020 2020 2020 2020 2020 2020 2065 6368               ech
│ │ │ +001c6560: 6f20 224e 6f74 2072 656d 6564 6961 7469  o "Not remediati
│ │ │ +001c6570: 6e67 2c20 6265 6361 7573 6520 7468 6572  ng, because ther
│ │ │ +001c6580: 6520 6973 206e 6f20 7265 636f 7264 206f  e is no record o
│ │ │ +001c6590: 6620 2f76 6172 2f74 6d70 2069 6e20 2f65  f /var/tmp in /e
│ │ │ +001c65a0: 7463 2f66 7374 6162 2220 2667 743b 2661  tc/fstab" >&a
│ │ │ +001c65b0: 6d70 3b32 3b20 7265 7475 726e 2031 3b20  mp;2; return 1; 
│ │ │ +001c65c0: 7d0a 2020 2020 0a0a 0a20 2020 206d 6f75  }.    ...    mou
│ │ │ +001c65d0: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ +001c65e0: 6567 6578 703d 2224 2870 7269 6e74 6620  egexp="$(printf 
│ │ │ +001c65f0: 225e 5b5b 3a73 7061 6365 3a5d 5d2a 5b5e  "^[[:space:]]*[^
│ │ │ +001c6600: 235d 2e2a 5b5b 3a73 7061 6365 3a5d 5d25  #].*[[:space:]]%
│ │ │ +001c6610: 735b 5b3a 7370 6163 653a 5d5d 2220 2f76  s[[:space:]]" /v
│ │ │ +001c6620: 6172 2f74 6d70 2922 0a0a 2020 2020 2320  ar/tmp)"..    # 
│ │ │ +001c6630: 4966 2074 6865 206d 6f75 6e74 2070 6f69  If the mount poi
│ │ │ +001c6640: 6e74 2069 7320 6e6f 7420 696e 202f 6574  nt is not in /et
│ │ │ +001c6650: 632f 6673 7461 622c 2067 6574 2070 7265  c/fstab, get pre
│ │ │ +001c6660: 7669 6f75 7320 6d6f 756e 7420 6f70 7469  vious mount opti
│ │ │ +001c6670: 6f6e 7320 6672 6f6d 202f 6574 632f 6d74  ons from /etc/mt
│ │ │ +001c6680: 6162 0a20 2020 2069 6620 2120 6772 6570  ab.    if ! grep
│ │ │ +001c6690: 202d 7120 2224 6d6f 756e 745f 706f 696e   -q "$mount_poin
│ │ │ +001c66a0: 745f 6d61 7463 685f 7265 6765 7870 2220  t_match_regexp" 
│ │ │ +001c66b0: 2f65 7463 2f66 7374 6162 3b20 7468 656e  /etc/fstab; then
│ │ │ +001c66c0: 0a20 2020 2020 2020 2023 2072 756e 7469  .        # runti
│ │ │ +001c66d0: 6d65 206f 7074 7320 7769 7468 6f75 7420  me opts without 
│ │ │ +001c66e0: 736f 6d65 2061 7574 6f6d 6174 6963 206b  some automatic k
│ │ │ +001c66f0: 6572 6e65 6c2f 7573 6572 7370 6163 652d  ernel/userspace-
│ │ │ +001c6700: 6164 6465 6420 6465 6661 756c 7473 0a20  added defaults. 
│ │ │ +001c6710: 2020 2020 2020 2070 7265 7669 6f75 735f         previous_
│ │ │ +001c6720: 6d6f 756e 745f 6f70 7473 3d24 2867 7265  mount_opts=$(gre
│ │ │ +001c6730: 7020 2224 6d6f 756e 745f 706f 696e 745f  p "$mount_point_
│ │ │ +001c6740: 6d61 7463 685f 7265 6765 7870 2220 2f65  match_regexp" /e
│ │ │ +001c6750: 7463 2f6d 7461 6220 7c20 6865 6164 202d  tc/mtab | head -
│ │ │ +001c6760: 3120 7c20 2061 776b 2027 7b70 7269 6e74  1 |  awk '{print
│ │ │ +001c6770: 2024 347d 2720 5c0a 2020 2020 2020 2020   $4}' \.        
│ │ │ +001c6780: 2020 2020 2020 2020 2020 2020 7c20 7365              | se
│ │ │ +001c6790: 6420 2d45 2022 732f 2872 777c 6465 6661  d -E "s/(rw|defa
│ │ │ +001c67a0: 756c 7473 7c73 6563 6c61 6265 6c7c 6e6f  ults|seclabel|no
│ │ │ +001c67b0: 6578 6563 2928 2c7c 2429 2f2f 673b 732f  exec)(,|$)//g;s/
│ │ │ +001c67c0: 2c24 2f2f 2229 0a20 2020 2020 2020 205b  ,$//").        [
│ │ │ +001c67d0: 2022 2470 7265 7669 6f75 735f 6d6f 756e   "$previous_moun
│ │ │ +001c67e0: 745f 6f70 7473 2220 5d20 2661 6d70 3b26  t_opts" ] &&
│ │ │ +001c67f0: 616d 703b 2070 7265 7669 6f75 735f 6d6f  amp; previous_mo
│ │ │ +001c6800: 756e 745f 6f70 7473 2b3d 222c 220a 2020  unt_opts+=",".  
│ │ │ +001c6810: 2020 2020 2020 2320 496e 2069 736f 3936        # In iso96
│ │ │ +001c6820: 3630 2066 696c 6573 7973 7465 6d73 206d  60 filesystems m
│ │ │ +001c6830: 7461 6220 636f 756c 6420 6465 7363 7269  tab could descri
│ │ │ +001c6840: 6265 2061 2022 626c 6f63 6b73 697a 6522  be a "blocksize"
│ │ │ +001c6850: 2076 616c 7565 2c20 7468 6973 2073 686f   value, this sho
│ │ │ +001c6860: 756c 6420 6265 2072 6566 6c65 6374 6564  uld be reflected
│ │ │ +001c6870: 2069 6e0a 2020 2020 2020 2020 2320 6673   in.        # fs
│ │ │ +001c6880: 7461 6220 6173 2022 626c 6f63 6b22 2e20  tab as "block". 
│ │ │ +001c6890: 2054 6865 206e 6578 7420 7661 7269 6162   The next variab
│ │ │ +001c68a0: 6c65 2069 7320 746f 2073 6174 6973 6679  le is to satisfy
│ │ │ +001c68b0: 2073 6865 6c6c 6368 6563 6b20 5343 3230   shellcheck SC20
│ │ │ +001c68c0: 3530 2e0a 2020 2020 2020 2020 6673 5f74  50..        fs_t
│ │ │ +001c68d0: 7970 653d 2222 0a20 2020 2020 2020 2069  ype="".        i
│ │ │ +001c68e0: 6620 5b20 2022 2466 735f 7479 7065 2220  f [  "$fs_type" 
│ │ │ +001c68f0: 3d3d 2022 6973 6f39 3636 3022 205d 203b  == "iso9660" ] ;
│ │ │ +001c6900: 2074 6865 6e0a 2020 2020 2020 2020 2020   then.          
│ │ │ +001c6910: 2020 7072 6576 696f 7573 5f6d 6f75 6e74    previous_mount
│ │ │ +001c6920: 5f6f 7074 733d 2428 7365 6420 2773 2f62  _opts=$(sed 's/b
│ │ │ +001c6930: 6c6f 636b 7369 7a65 3d2f 626c 6f63 6b3d  locksize=/block=
│ │ │ +001c6940: 2f27 2026 6c74 3b26 6c74 3b26 6c74 3b20  /' <<< 
│ │ │ +001c6950: 2224 7072 6576 696f 7573 5f6d 6f75 6e74  "$previous_mount
│ │ │ +001c6960: 5f6f 7074 7322 290a 2020 2020 2020 2020  _opts").        
│ │ │ +001c6970: 6669 0a20 2020 2020 2020 2065 6368 6f20  fi.        echo 
│ │ │ +001c6980: 2220 2f76 6172 2f74 6d70 2020 6465 6661  " /var/tmp  defa
│ │ │ +001c6990: 756c 7473 2c24 7b70 7265 7669 6f75 735f  ults,${previous_
│ │ │ +001c69a0: 6d6f 756e 745f 6f70 7473 7d6e 6f65 7865  mount_opts}noexe
│ │ │ +001c69b0: 6320 3020 3022 2026 6774 3b26 6774 3b20  c 0 0" >> 
│ │ │ +001c69c0: 2f65 7463 2f66 7374 6162 0a20 2020 2023  /etc/fstab.    #
│ │ │ +001c69d0: 2049 6620 7468 6520 6d6f 756e 745f 6f70   If the mount_op
│ │ │ +001c69e0: 7420 6f70 7469 6f6e 2069 7320 6e6f 7420  t option is not 
│ │ │ +001c69f0: 616c 7265 6164 7920 696e 2074 6865 206d  already in the m
│ │ │ +001c6a00: 6f75 6e74 2070 6f69 6e74 2773 202f 6574  ount point's /et
│ │ │ +001c6a10: 632f 6673 7461 6220 656e 7472 792c 2061  c/fstab entry, a
│ │ │ +001c6a20: 6464 2069 740a 2020 2020 656c 6966 2021  dd it.    elif !
│ │ │ +001c6a30: 2067 7265 7020 2224 6d6f 756e 745f 706f   grep "$mount_po
│ │ │ +001c6a40: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ +001c6a50: 2220 2f65 7463 2f66 7374 6162 207c 2067  " /etc/fstab | g
│ │ │ +001c6a60: 7265 7020 2d71 2022 6e6f 6578 6563 223b  rep -q "noexec";
│ │ │ +001c6a70: 2074 6865 6e0a 2020 2020 2020 2020 7072   then.        pr
│ │ │ +001c6a80: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ +001c6a90: 733d 2428 6772 6570 2022 246d 6f75 6e74  s=$(grep "$mount
│ │ │ +001c6aa0: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ +001c6ab0: 6578 7022 202f 6574 632f 6673 7461 6220  exp" /etc/fstab 
│ │ │ +001c6ac0: 7c20 6177 6b20 277b 7072 696e 7420 2434  | awk '{print $4
│ │ │ +001c6ad0: 7d27 290a 2020 2020 2020 2020 7365 6420  }').        sed 
│ │ │ +001c6ae0: 2d69 2022 737c 5c28 247b 6d6f 756e 745f  -i "s|\(${mount_
│ │ │ +001c6af0: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ +001c6b00: 7870 7d2e 2a24 7b70 7265 7669 6f75 735f  xp}.*${previous_
│ │ │ +001c6b10: 6d6f 756e 745f 6f70 7473 7d5c 297c 5c31  mount_opts}\)|\1
│ │ │ +001c6b20: 2c6e 6f65 7865 637c 2220 2f65 7463 2f66  ,noexec|" /etc/f
│ │ │ +001c6b30: 7374 6162 0a20 2020 2066 690a 0a0a 2020  stab.    fi...  
│ │ │ +001c6b40: 2020 6966 206d 6b64 6972 202d 7020 222f    if mkdir -p "/
│ │ │ +001c6b50: 7661 722f 746d 7022 3b20 7468 656e 0a20  var/tmp"; then. 
│ │ │ +001c6b60: 2020 2020 2020 2069 6620 6d6f 756e 7470         if mountp
│ │ │ +001c6b70: 6f69 6e74 202d 7120 222f 7661 722f 746d  oint -q "/var/tm
│ │ │ +001c6b80: 7022 3b20 7468 656e 0a20 2020 2020 2020  p"; then.       
│ │ │ +001c6b90: 2020 2020 206d 6f75 6e74 202d 6f20 7265       mount -o re
│ │ │ +001c6ba0: 6d6f 756e 7420 2d2d 7461 7267 6574 2022  mount --target "
│ │ │ +001c6bb0: 2f76 6172 2f74 6d70 220a 2020 2020 2020  /var/tmp".      
│ │ │ +001c6bc0: 2020 6669 0a20 2020 2066 690a 7d0a 0a70    fi.    fi.}..p
│ │ │ +001c6bd0: 6572 666f 726d 5f72 656d 6564 6961 7469  erform_remediati
│ │ │ +001c6be0: 6f6e 0a0a 656c 7365 0a20 2020 2026 6774  on..else.    >
│ │ │ +001c6bf0: 3b26 616d 703b 3220 6563 686f 2027 5265  ;&2 echo 'Re
│ │ │ +001c6c00: 6d65 6469 6174 696f 6e20 6973 206e 6f74  mediation is not
│ │ │ +001c6c10: 2061 7070 6c69 6361 626c 652c 206e 6f74   applicable, not
│ │ │ +001c6c20: 6869 6e67 2077 6173 2064 6f6e 6527 0a66  hing was done'.f
│ │ │ +001c6c30: 690a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  i.
< │ │ │ +001c6c40: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation An │ │ │ +001c6cf0: 6163 6f6e 6461 2073 6e69 7070 6574 20e2 aconda snippet . │ │ │ +001c6d00: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
Reboo │ │ │ +001c6160: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ +001c6170: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
│ │ │ +001c6d80: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +001c6da0: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 < │ │ │ +001c6dd0: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr> │ │ │ +001c6e20: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ +001c6d90: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +001c6db0: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:high
Reboot:false
St │ │ │ +001c6e00: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ +001c6e10: 656e 6162 6c65 3c2f 7464 3e3c 2f74 723e enable
.part /var/tm
│ │ │ +001c6e40: 7020 2d2d 6d6f 756e 746f 7074 696f 6e73  p --mountoptions
│ │ │ +001c6e50: 3d22 6e6f 6578 6563 220a 3c2f 636f 6465  ="noexec".
Remed │ │ │ -001c7890: 6961 7469 6f6e 2041 6e61 636f 6e64 6120 iation Anaconda │ │ │ -001c78a0: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ -001c78b0: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
< │ │ │ -001c79a0: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
Com │ │ │ -001c7930: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ -001c7960: 3a3c 2f74 683e 3c74 643e 6869 6768 3c2f :high
│ │ │ -001c7980: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ -001c7990: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ -001c79b0: 3c2f 7468 3e3c 7464 3e65 6e61 626c 653c enable< │ │ │ -001c79c0: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
.par
│ │ │ -001c79e0: 7420 2f76 6172 2f74 6d70 202d 2d6d 6f75  t /var/tmp --mou
│ │ │ -001c79f0: 6e74 6f70 7469 6f6e 733d 226e 6f73 7569  ntoptions="nosui
│ │ │ -001c7a00: 6422 0a3c 2f63 6f64 653e 3c2f 7072 653e  d".
│ │ │ -001c7a10: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation A │ │ │ -001c7ac0: 6e73 6962 6c65 2073 6e69 7070 6574 20e2 nsible snippet . │ │ │ -001c7ad0: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ -001c7b50: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -001c7b70: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 < │ │ │ -001c7ba0: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>
Complexity:< │ │ │ -001c7b60: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ -001c7b80: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:high
Reboot:false
St │ │ │ -001c7bd0: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ -001c7be0: 636f 6e66 6967 7572 653c 2f74 643e 3c2f configure
│ │ │ -001c7c00: 3c63 6f64 653e 2d20 6e61 6d65 3a20 4761  - name: Ga
│ │ │ -001c7c10: 7468 6572 2074 6865 2070 6163 6b61 6765  ther the package
│ │ │ -001c7c20: 2066 6163 7473 0a20 2070 6163 6b61 6765   facts.  package
│ │ │ -001c7c30: 5f66 6163 7473 3a0a 2020 2020 6d61 6e61  _facts:.    mana
│ │ │ -001c7c40: 6765 723a 2061 7574 6f0a 2020 7461 6773  ger: auto.  tags
│ │ │ -001c7c50: 3a0a 2020 2d20 636f 6e66 6967 7572 655f  :.  - configure_
│ │ │ -001c7c60: 7374 7261 7465 6779 0a20 202d 2068 6967  strategy.  - hig
│ │ │ -001c7c70: 685f 6469 7372 7570 7469 6f6e 0a20 202d  h_disruption.  -
│ │ │ -001c7c80: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ -001c7c90: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ -001c7ca0: 6974 790a 2020 2d20 6d6f 756e 745f 6f70  ity.  - mount_op
│ │ │ -001c7cb0: 7469 6f6e 5f76 6172 5f74 6d70 5f6e 6f73  tion_var_tmp_nos
│ │ │ -001c7cc0: 7569 640a 2020 2d20 6e6f 5f72 6562 6f6f  uid.  - no_reboo
│ │ │ -001c7cd0: 745f 6e65 6564 6564 0a0a 2d20 6e61 6d65  t_needed..- name
│ │ │ -001c7ce0: 3a20 2741 6464 206e 6f73 7569 6420 4f70  : 'Add nosuid Op
│ │ │ -001c7cf0: 7469 6f6e 2074 6f20 2f76 6172 2f74 6d70  tion to /var/tmp
│ │ │ -001c7d00: 3a20 4368 6563 6b20 696e 666f 726d 6174  : Check informat
│ │ │ -001c7d10: 696f 6e20 6173 736f 6369 6174 6564 2074  ion associated t
│ │ │ -001c7d20: 6f20 6d6f 756e 7470 6f69 6e74 270a 2020  o mountpoint'.  
│ │ │ -001c7d30: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ -001c7d40: 636f 6d6d 616e 643a 2066 696e 646d 6e74  command: findmnt
│ │ │ -001c7d50: 202d 2d66 7374 6162 2027 2f76 6172 2f74   --fstab '/var/t
│ │ │ -001c7d60: 6d70 270a 2020 7265 6769 7374 6572 3a20  mp'.  register: 
│ │ │ -001c7d70: 6465 7669 6365 5f6e 616d 650a 2020 6661  device_name.  fa
│ │ │ -001c7d80: 696c 6564 5f77 6865 6e3a 2064 6576 6963  iled_when: devic
│ │ │ -001c7d90: 655f 6e61 6d65 2e72 6320 2667 743b 2031  e_name.rc > 1
│ │ │ -001c7da0: 0a20 2063 6861 6e67 6564 5f77 6865 6e3a  .  changed_when:
│ │ │ -001c7db0: 2066 616c 7365 0a20 2063 6865 636b 5f6d   false.  check_m
│ │ │ -001c7dc0: 6f64 653a 2066 616c 7365 0a20 2077 6865  ode: false.  whe
│ │ │ -001c7dd0: 6e3a 0a20 202d 2028 206e 6f74 2028 2022  n:.  - ( not ( "
│ │ │ -001c7de0: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ -001c7df0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -001c7e00: 7320 616e 6420 2262 6f6f 7463 2220 696e  s and "bootc" in
│ │ │ -001c7e10: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -001c7e20: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ -001c7e30: 6e6f 7420 226f 7065 6e73 6869 6674 2d6b  not "openshift-k
│ │ │ -001c7e40: 7562 656c 6574 2220 696e 2061 6e73 6962  ubelet" in ansib
│ │ │ -001c7e50: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -001c7e60: 7320 616e 6420 226f 7374 7265 6522 2069  s and "ostree" i
│ │ │ -001c7e70: 6e20 616e 7369 626c 655f 7072 6f63 5f63  n ansible_proc_c
│ │ │ -001c7e80: 6d64 6c69 6e65 0a20 2020 2029 2061 6e64  mdline.    ) and
│ │ │ -001c7e90: 206e 6f74 2028 2061 6e73 6962 6c65 5f76   not ( ansible_v
│ │ │ -001c7ea0: 6972 7475 616c 697a 6174 696f 6e5f 7479  irtualization_ty
│ │ │ -001c7eb0: 7065 2069 6e20 5b22 646f 636b 6572 222c  pe in ["docker",
│ │ │ -001c7ec0: 2022 6c78 6322 2c20 226f 7065 6e76 7a22   "lxc", "openvz"
│ │ │ -001c7ed0: 2c20 2270 6f64 6d61 6e22 2c0a 2020 2020  , "podman",.    
│ │ │ -001c7ee0: 2263 6f6e 7461 696e 6572 225d 2029 2029  "container"] ) )
│ │ │ -001c7ef0: 0a20 202d 2027 222f 7661 722f 746d 7022  .  - '"/var/tmp"
│ │ │ -001c7f00: 2069 6e20 616e 7369 626c 655f 6d6f 756e   in ansible_moun
│ │ │ -001c7f10: 7473 207c 206d 6170 2861 7474 7269 6275  ts | map(attribu
│ │ │ -001c7f20: 7465 3d22 6d6f 756e 7422 2920 7c20 6c69  te="mount") | li
│ │ │ -001c7f30: 7374 270a 2020 7461 6773 3a0a 2020 2d20  st'.  tags:.  - 
│ │ │ -001c7f40: 636f 6e66 6967 7572 655f 7374 7261 7465  configure_strate
│ │ │ -001c7f50: 6779 0a20 202d 2068 6967 685f 6469 7372  gy.  - high_disr
│ │ │ -001c7f60: 7570 7469 6f6e 0a20 202d 206c 6f77 5f63  uption.  - low_c
│ │ │ -001c7f70: 6f6d 706c 6578 6974 790a 2020 2d20 6d65  omplexity.  - me
│ │ │ -001c7f80: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ -001c7f90: 2d20 6d6f 756e 745f 6f70 7469 6f6e 5f76  - mount_option_v
│ │ │ -001c7fa0: 6172 5f74 6d70 5f6e 6f73 7569 640a 2020  ar_tmp_nosuid.  
│ │ │ -001c7fb0: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ -001c7fc0: 6564 0a0a 2d20 6e61 6d65 3a20 2741 6464  ed..- name: 'Add
│ │ │ -001c7fd0: 206e 6f73 7569 6420 4f70 7469 6f6e 2074   nosuid Option t
│ │ │ -001c7fe0: 6f20 2f76 6172 2f74 6d70 3a20 4372 6561  o /var/tmp: Crea
│ │ │ -001c7ff0: 7465 206d 6f75 6e74 5f69 6e66 6f20 6469  te mount_info di
│ │ │ -001c8000: 6374 696f 6e61 7279 2076 6172 6961 626c  ctionary variabl
│ │ │ -001c8010: 6527 0a20 2073 6574 5f66 6163 743a 0a20  e'.  set_fact:. 
│ │ │ -001c8020: 2020 206d 6f75 6e74 5f69 6e66 6f3a 2027     mount_info: '
│ │ │ -001c8030: 7b7b 206d 6f75 6e74 5f69 6e66 6f7c 6465  {{ mount_info|de
│ │ │ -001c8040: 6661 756c 7428 7b7d 297c 636f 6d62 696e  fault({})|combin
│ │ │ -001c8050: 6528 7b69 7465 6d2e 303a 2069 7465 6d2e  e({item.0: item.
│ │ │ -001c8060: 317d 2920 7d7d 270a 2020 7769 7468 5f74  1}) }}'.  with_t
│ │ │ -001c8070: 6f67 6574 6865 723a 0a20 202d 2027 7b7b  ogether:.  - '{{
│ │ │ -001c8080: 2064 6576 6963 655f 6e61 6d65 2e73 7464   device_name.std
│ │ │ -001c8090: 6f75 745f 6c69 6e65 735b 305d 2e73 706c  out_lines[0].spl
│ │ │ -001c80a0: 6974 2829 207c 206d 6170 2827 276c 6f77  it() | map(''low
│ │ │ -001c80b0: 6572 2727 2920 7c20 6c69 7374 207d 7d27  er'') | list }}'
│ │ │ -001c80c0: 0a20 202d 2027 7b7b 2064 6576 6963 655f  .  - '{{ device_
│ │ │ -001c80d0: 6e61 6d65 2e73 7464 6f75 745f 6c69 6e65  name.stdout_line
│ │ │ -001c80e0: 735b 315d 2e73 706c 6974 2829 207c 206c  s[1].split() | l
│ │ │ -001c80f0: 6973 7420 7d7d 270a 2020 7768 656e 3a0a  ist }}'.  when:.
│ │ │ -001c8100: 2020 2d20 2820 6e6f 7420 2820 226b 6572    - ( not ( "ker
│ │ │ -001c8110: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ -001c8120: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ -001c8130: 6e64 2022 626f 6f74 6322 2069 6e20 616e  nd "bootc" in an
│ │ │ -001c8140: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001c8150: 6167 6573 0a20 2020 2061 6e64 206e 6f74  ages.    and not
│ │ │ -001c8160: 2022 6f70 656e 7368 6966 742d 6b75 6265   "openshift-kube
│ │ │ -001c8170: 6c65 7422 2069 6e20 616e 7369 626c 655f  let" in ansible_
│ │ │ -001c8180: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ -001c8190: 6e64 2022 6f73 7472 6565 2220 696e 2061  nd "ostree" in a
│ │ │ -001c81a0: 6e73 6962 6c65 5f70 726f 635f 636d 646c  nsible_proc_cmdl
│ │ │ -001c81b0: 696e 650a 2020 2020 2920 616e 6420 6e6f  ine.    ) and no
│ │ │ -001c81c0: 7420 2820 616e 7369 626c 655f 7669 7274  t ( ansible_virt
│ │ │ -001c81d0: 7561 6c69 7a61 7469 6f6e 5f74 7970 6520  ualization_type 
│ │ │ -001c81e0: 696e 205b 2264 6f63 6b65 7222 2c20 226c  in ["docker", "l
│ │ │ -001c81f0: 7863 222c 2022 6f70 656e 767a 222c 2022  xc", "openvz", "
│ │ │ -001c8200: 706f 646d 616e 222c 0a20 2020 2022 636f  podman",.    "co
│ │ │ -001c8210: 6e74 6169 6e65 7222 5d20 2920 290a 2020  ntainer"] ) ).  
│ │ │ -001c8220: 2d20 2722 2f76 6172 2f74 6d70 2220 696e  - '"/var/tmp" in
│ │ │ -001c8230: 2061 6e73 6962 6c65 5f6d 6f75 6e74 7320   ansible_mounts 
│ │ │ -001c8240: 7c20 6d61 7028 6174 7472 6962 7574 653d  | map(attribute=
│ │ │ -001c8250: 226d 6f75 6e74 2229 207c 206c 6973 7427  "mount") | list'
│ │ │ -001c8260: 0a20 202d 2064 6576 6963 655f 6e61 6d65  .  - device_name
│ │ │ -001c8270: 2e73 7464 6f75 7420 6973 2064 6566 696e  .stdout is defin
│ │ │ -001c8280: 6564 2061 6e64 2064 6576 6963 655f 6e61  ed and device_na
│ │ │ -001c8290: 6d65 2e73 7464 6f75 745f 6c69 6e65 7320  me.stdout_lines 
│ │ │ -001c82a0: 6973 2064 6566 696e 6564 0a20 202d 2028  is defined.  - (
│ │ │ -001c82b0: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ -001c82c0: 7574 207c 206c 656e 6774 6820 2667 743b  ut | length >
│ │ │ -001c82d0: 2030 290a 2020 7461 6773 3a0a 2020 2d20   0).  tags:.  - 
│ │ │ -001c82e0: 636f 6e66 6967 7572 655f 7374 7261 7465  configure_strate
│ │ │ -001c82f0: 6779 0a20 202d 2068 6967 685f 6469 7372  gy.  - high_disr
│ │ │ -001c8300: 7570 7469 6f6e 0a20 202d 206c 6f77 5f63  uption.  - low_c
│ │ │ -001c8310: 6f6d 706c 6578 6974 790a 2020 2d20 6d65  omplexity.  - me
│ │ │ -001c8320: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ -001c8330: 2d20 6d6f 756e 745f 6f70 7469 6f6e 5f76  - mount_option_v
│ │ │ -001c8340: 6172 5f74 6d70 5f6e 6f73 7569 640a 2020  ar_tmp_nosuid.  
│ │ │ -001c8350: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ -001c8360: 6564 0a0a 2d20 6e61 6d65 3a20 2741 6464  ed..- name: 'Add
│ │ │ -001c8370: 206e 6f73 7569 6420 4f70 7469 6f6e 2074   nosuid Option t
│ │ │ -001c8380: 6f20 2f76 6172 2f74 6d70 3a20 4966 202f  o /var/tmp: If /
│ │ │ -001c8390: 7661 722f 746d 7020 6e6f 7420 6d6f 756e  var/tmp not moun
│ │ │ -001c83a0: 7465 642c 2063 7261 6674 206d 6f75 6e74  ted, craft mount
│ │ │ -001c83b0: 5f69 6e66 6f0a 2020 2020 6d61 6e75 616c  _info.    manual
│ │ │ -001c83c0: 6c79 270a 2020 7365 745f 6661 6374 3a0a  ly'.  set_fact:.
│ │ │ -001c83d0: 2020 2020 6d6f 756e 745f 696e 666f 3a20      mount_info: 
│ │ │ -001c83e0: 277b 7b20 6d6f 756e 745f 696e 666f 7c64  '{{ mount_info|d
│ │ │ -001c83f0: 6566 6175 6c74 287b 7d29 7c63 6f6d 6269  efault({})|combi
│ │ │ -001c8400: 6e65 287b 6974 656d 2e30 3a20 6974 656d  ne({item.0: item
│ │ │ -001c8410: 2e31 7d29 207d 7d27 0a20 2077 6974 685f  .1}) }}'.  with_
│ │ │ -001c8420: 746f 6765 7468 6572 3a0a 2020 2d20 2d20  together:.  - - 
│ │ │ -001c8430: 7461 7267 6574 0a20 2020 202d 2073 6f75  target.    - sou
│ │ │ -001c8440: 7263 650a 2020 2020 2d20 6673 7479 7065  rce.    - fstype
│ │ │ -001c8450: 0a20 2020 202d 206f 7074 696f 6e73 0a20  .    - options. 
│ │ │ -001c8460: 202d 202d 202f 7661 722f 746d 700a 2020   - - /var/tmp.  
│ │ │ -001c8470: 2020 2d20 2727 0a20 2020 202d 2027 270a    - ''.    - ''.
│ │ │ -001c8480: 2020 2020 2d20 6465 6661 756c 7473 0a20      - defaults. 
│ │ │ -001c8490: 2077 6865 6e3a 0a20 202d 2028 206e 6f74   when:.  - ( not
│ │ │ -001c84a0: 2028 2022 6b65 726e 656c 2220 696e 2061   ( "kernel" in a
│ │ │ -001c84b0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001c84c0: 6b61 6765 7320 616e 6420 2262 6f6f 7463  kages and "bootc
│ │ │ -001c84d0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001c84e0: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ -001c84f0: 616e 6420 6e6f 7420 226f 7065 6e73 6869  and not "openshi
│ │ │ -001c8500: 6674 2d6b 7562 656c 6574 2220 696e 2061  ft-kubelet" in a
│ │ │ -001c8510: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001c8520: 6b61 6765 7320 616e 6420 226f 7374 7265  kages and "ostre
│ │ │ -001c8530: 6522 2069 6e20 616e 7369 626c 655f 7072  e" in ansible_pr
│ │ │ -001c8540: 6f63 5f63 6d64 6c69 6e65 0a20 2020 2029  oc_cmdline.    )
│ │ │ -001c8550: 2061 6e64 206e 6f74 2028 2061 6e73 6962   and not ( ansib
│ │ │ -001c8560: 6c65 5f76 6972 7475 616c 697a 6174 696f  le_virtualizatio
│ │ │ -001c8570: 6e5f 7479 7065 2069 6e20 5b22 646f 636b  n_type in ["dock
│ │ │ -001c8580: 6572 222c 2022 6c78 6322 2c20 226f 7065  er", "lxc", "ope
│ │ │ -001c8590: 6e76 7a22 2c20 2270 6f64 6d61 6e22 2c0a  nvz", "podman",.
│ │ │ -001c85a0: 2020 2020 2263 6f6e 7461 696e 6572 225d      "container"]
│ │ │ -001c85b0: 2029 2029 0a20 202d 2027 222f 7661 722f   ) ).  - '"/var/
│ │ │ -001c85c0: 746d 7022 2069 6e20 616e 7369 626c 655f  tmp" in ansible_
│ │ │ -001c85d0: 6d6f 756e 7473 207c 206d 6170 2861 7474  mounts | map(att
│ │ │ -001c85e0: 7269 6275 7465 3d22 6d6f 756e 7422 2920  ribute="mount") 
│ │ │ -001c85f0: 7c20 6c69 7374 270a 2020 2d20 2822 2d2d  | list'.  - ("--
│ │ │ -001c8600: 6673 7461 6222 207c 206c 656e 6774 6820  fstab" | length 
│ │ │ -001c8610: 3d3d 2030 290a 2020 2d20 6465 7669 6365  == 0).  - device
│ │ │ -001c8620: 5f6e 616d 652e 7374 646f 7574 2069 7320  _name.stdout is 
│ │ │ -001c8630: 6465 6669 6e65 6420 616e 6420 6465 7669  defined and devi
│ │ │ -001c8640: 6365 5f6e 616d 652e 7374 646f 7574 5f6c  ce_name.stdout_l
│ │ │ -001c8650: 696e 6573 2069 7320 6465 6669 6e65 640a  ines is defined.
│ │ │ -001c8660: 2020 2d20 2864 6576 6963 655f 6e61 6d65    - (device_name
│ │ │ -001c8670: 2e73 7464 6f75 7420 7c20 6c65 6e67 7468  .stdout | length
│ │ │ -001c8680: 203d 3d20 3029 0a20 2074 6167 733a 0a20   == 0).  tags:. 
│ │ │ -001c8690: 202d 2063 6f6e 6669 6775 7265 5f73 7472   - configure_str
│ │ │ -001c86a0: 6174 6567 790a 2020 2d20 6869 6768 5f64  ategy.  - high_d
│ │ │ -001c86b0: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ -001c86c0: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ -001c86d0: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ -001c86e0: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f  .  - mount_optio
│ │ │ -001c86f0: 6e5f 7661 725f 746d 705f 6e6f 7375 6964  n_var_tmp_nosuid
│ │ │ -001c8700: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ -001c8710: 6565 6465 640a 0a2d 206e 616d 653a 2027  eeded..- name: '
│ │ │ -001c8720: 4164 6420 6e6f 7375 6964 204f 7074 696f  Add nosuid Optio
│ │ │ -001c8730: 6e20 746f 202f 7661 722f 746d 703a 204d  n to /var/tmp: M
│ │ │ -001c8740: 616b 6520 7375 7265 206e 6f73 7569 6420  ake sure nosuid 
│ │ │ -001c8750: 6f70 7469 6f6e 2069 7320 7061 7274 206f  option is part o
│ │ │ -001c8760: 6620 7468 6520 746f 0a20 2020 202f 7661  f the to.    /va
│ │ │ -001c8770: 722f 746d 7020 6f70 7469 6f6e 7327 0a20  r/tmp options'. 
│ │ │ -001c8780: 2073 6574 5f66 6163 743a 0a20 2020 206d   set_fact:.    m
│ │ │ -001c8790: 6f75 6e74 5f69 6e66 6f3a 2027 7b7b 206d  ount_info: '{{ m
│ │ │ -001c87a0: 6f75 6e74 5f69 6e66 6f20 7c20 636f 6d62  ount_info | comb
│ │ │ -001c87b0: 696e 6528 207b 2727 6f70 7469 6f6e 7327  ine( {''options'
│ │ │ -001c87c0: 273a 2727 2727 7e28 6d6f 756e 745f 696e  ':''''~(mount_in
│ │ │ -001c87d0: 666f 2e6f 7074 696f 6e73 207c 0a20 2020  fo.options |.   
│ │ │ -001c87e0: 2020 2064 6566 6175 6c74 2827 2727 2729     default('''')
│ │ │ -001c87f0: 297e 2827 272c 2727 2069 6620 286d 6f75  )~('','' if (mou
│ │ │ -001c8800: 6e74 5f69 6e66 6f2e 6f70 7469 6f6e 7320  nt_info.options 
│ │ │ -001c8810: 7c20 6465 6661 756c 7428 2727 2727 2929  | default(''''))
│ │ │ -001c8820: 2065 6c73 6520 2727 2727 297e 2727 6e6f   else '''')~''no
│ │ │ -001c8830: 7375 6964 2727 0a20 2020 2020 207d 2920  suid''.      }) 
│ │ │ -001c8840: 7d7d 270a 2020 7768 656e 3a0a 2020 2d20  }}'.  when:.  - 
│ │ │ -001c8850: 2820 6e6f 7420 2820 226b 6572 6e65 6c22  ( not ( "kernel"
│ │ │ -001c8860: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001c8870: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ -001c8880: 626f 6f74 6322 2069 6e20 616e 7369 626c  bootc" in ansibl
│ │ │ -001c8890: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001c88a0: 0a20 2020 2061 6e64 206e 6f74 2022 6f70  .    and not "op
│ │ │ -001c88b0: 656e 7368 6966 742d 6b75 6265 6c65 7422  enshift-kubelet"
│ │ │ -001c88c0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001c88d0: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ -001c88e0: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ -001c88f0: 6c65 5f70 726f 635f 636d 646c 696e 650a  le_proc_cmdline.
│ │ │ -001c8900: 2020 2020 2920 616e 6420 6e6f 7420 2820      ) and not ( 
│ │ │ -001c8910: 616e 7369 626c 655f 7669 7274 7561 6c69  ansible_virtuali
│ │ │ -001c8920: 7a61 7469 6f6e 5f74 7970 6520 696e 205b  zation_type in [
│ │ │ -001c8930: 2264 6f63 6b65 7222 2c20 226c 7863 222c  "docker", "lxc",
│ │ │ -001c8940: 2022 6f70 656e 767a 222c 2022 706f 646d   "openvz", "podm
│ │ │ -001c8950: 616e 222c 0a20 2020 2022 636f 6e74 6169  an",.    "contai
│ │ │ -001c8960: 6e65 7222 5d20 2920 290a 2020 2d20 2722  ner"] ) ).  - '"
│ │ │ -001c8970: 2f76 6172 2f74 6d70 2220 696e 2061 6e73  /var/tmp" in ans
│ │ │ -001c8980: 6962 6c65 5f6d 6f75 6e74 7320 7c20 6d61  ible_mounts | ma
│ │ │ -001c8990: 7028 6174 7472 6962 7574 653d 226d 6f75  p(attribute="mou
│ │ │ -001c89a0: 6e74 2229 207c 206c 6973 7427 0a20 202d  nt") | list'.  -
│ │ │ -001c89b0: 206d 6f75 6e74 5f69 6e66 6f20 6973 2064   mount_info is d
│ │ │ -001c89c0: 6566 696e 6564 2061 6e64 2022 6e6f 7375  efined and "nosu
│ │ │ -001c89d0: 6964 2220 6e6f 7420 696e 2028 6d6f 756e  id" not in (moun
│ │ │ -001c89e0: 745f 696e 666f 2e6f 7074 696f 6e73 207c  t_info.options |
│ │ │ -001c89f0: 2064 6566 6175 6c74 2827 2729 290a 2020   default('')).  
│ │ │ -001c8a00: 7461 6773 3a0a 2020 2d20 636f 6e66 6967  tags:.  - config
│ │ │ -001c8a10: 7572 655f 7374 7261 7465 6779 0a20 202d  ure_strategy.  -
│ │ │ -001c8a20: 2068 6967 685f 6469 7372 7570 7469 6f6e   high_disruption
│ │ │ -001c8a30: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ -001c8a40: 6974 790a 2020 2d20 6d65 6469 756d 5f73  ity.  - medium_s
│ │ │ -001c8a50: 6576 6572 6974 790a 2020 2d20 6d6f 756e  everity.  - moun
│ │ │ -001c8a60: 745f 6f70 7469 6f6e 5f76 6172 5f74 6d70  t_option_var_tmp
│ │ │ -001c8a70: 5f6e 6f73 7569 640a 2020 2d20 6e6f 5f72  _nosuid.  - no_r
│ │ │ -001c8a80: 6562 6f6f 745f 6e65 6564 6564 0a0a 2d20  eboot_needed..- 
│ │ │ -001c8a90: 6e61 6d65 3a20 2741 6464 206e 6f73 7569  name: 'Add nosui
│ │ │ -001c8aa0: 6420 4f70 7469 6f6e 2074 6f20 2f76 6172  d Option to /var
│ │ │ -001c8ab0: 2f74 6d70 3a20 456e 7375 7265 202f 7661  /tmp: Ensure /va
│ │ │ -001c8ac0: 722f 746d 7020 6973 206d 6f75 6e74 6564  r/tmp is mounted
│ │ │ -001c8ad0: 2077 6974 6820 6e6f 7375 6964 206f 7074   with nosuid opt
│ │ │ -001c8ae0: 696f 6e27 0a20 2061 6e73 6962 6c65 2e70  ion'.  ansible.p
│ │ │ -001c8af0: 6f73 6978 2e6d 6f75 6e74 3a0a 2020 2020  osix.mount:.    
│ │ │ -001c8b00: 7061 7468 3a20 2f76 6172 2f74 6d70 0a20  path: /var/tmp. 
│ │ │ -001c8b10: 2020 2073 7263 3a20 277b 7b20 6d6f 756e     src: '{{ moun
│ │ │ -001c8b20: 745f 696e 666f 2e73 6f75 7263 6520 7c20  t_info.source | 
│ │ │ -001c8b30: 6465 6661 756c 7428 2727 2727 2920 7d7d  default('''') }}
│ │ │ -001c8b40: 270a 2020 2020 6f70 7473 3a20 277b 7b20  '.    opts: '{{ 
│ │ │ -001c8b50: 6d6f 756e 745f 696e 666f 2e6f 7074 696f  mount_info.optio
│ │ │ -001c8b60: 6e73 207c 2064 6566 6175 6c74 2827 2727  ns | default('''
│ │ │ -001c8b70: 2729 207d 7d27 0a20 2020 2073 7461 7465  ') }}'.    state
│ │ │ -001c8b80: 3a20 6d6f 756e 7465 640a 2020 2020 6673  : mounted.    fs
│ │ │ -001c8b90: 7479 7065 3a20 277b 7b20 6d6f 756e 745f  type: '{{ mount_
│ │ │ -001c8ba0: 696e 666f 2e66 7374 7970 6520 7c20 6465  info.fstype | de
│ │ │ -001c8bb0: 6661 756c 7428 2727 2727 2920 7d7d 270a  fault('''') }}'.
│ │ │ -001c8bc0: 2020 7265 6769 7374 6572 3a20 6d6f 756e    register: moun
│ │ │ -001c8bd0: 745f 7265 7375 6c74 0a20 2066 6169 6c65  t_result.  faile
│ │ │ -001c8be0: 645f 7768 656e 3a0a 2020 2d20 6d6f 756e  d_when:.  - moun
│ │ │ -001c8bf0: 745f 7265 7375 6c74 2069 7320 6661 696c  t_result is fail
│ │ │ -001c8c00: 6564 0a20 202d 2027 2727 7461 7267 6574  ed.  - '''target
│ │ │ -001c8c10: 2069 7320 6275 7379 2727 206e 6f74 2069   is busy'' not i
│ │ │ -001c8c20: 6e20 286d 6f75 6e74 5f72 6573 756c 742e  n (mount_result.
│ │ │ -001c8c30: 6d73 6720 7c20 6465 6661 756c 7428 2727  msg | default(''
│ │ │ -001c8c40: 2727 2929 270a 2020 2d20 2727 2761 6c72  ''))'.  - '''alr
│ │ │ -001c8c50: 6561 6479 206d 6f75 6e74 6564 2727 206e  eady mounted'' n
│ │ │ -001c8c60: 6f74 2069 6e20 286d 6f75 6e74 5f72 6573  ot in (mount_res
│ │ │ -001c8c70: 756c 742e 6d73 6720 7c20 6465 6661 756c  ult.msg | defaul
│ │ │ -001c8c80: 7428 2727 2727 2929 270a 2020 7768 656e  t(''''))'.  when
│ │ │ -001c8c90: 3a0a 2020 2d20 2820 6e6f 7420 2820 226b  :.  - ( not ( "k
│ │ │ -001c8ca0: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ -001c8cb0: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001c8cc0: 2061 6e64 2022 626f 6f74 6322 2069 6e20   and "bootc" in 
│ │ │ -001c8cd0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001c8ce0: 636b 6167 6573 0a20 2020 2061 6e64 206e  ckages.    and n
│ │ │ -001c8cf0: 6f74 2022 6f70 656e 7368 6966 742d 6b75  ot "openshift-ku
│ │ │ -001c8d00: 6265 6c65 7422 2069 6e20 616e 7369 626c  belet" in ansibl
│ │ │ -001c8d10: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001c8d20: 2061 6e64 2022 6f73 7472 6565 2220 696e   and "ostree" in
│ │ │ -001c8d30: 2061 6e73 6962 6c65 5f70 726f 635f 636d   ansible_proc_cm
│ │ │ -001c8d40: 646c 696e 650a 2020 2020 2920 616e 6420  dline.    ) and 
│ │ │ -001c8d50: 6e6f 7420 2820 616e 7369 626c 655f 7669  not ( ansible_vi
│ │ │ -001c8d60: 7274 7561 6c69 7a61 7469 6f6e 5f74 7970  rtualization_typ
│ │ │ -001c8d70: 6520 696e 205b 2264 6f63 6b65 7222 2c20  e in ["docker", 
│ │ │ -001c8d80: 226c 7863 222c 2022 6f70 656e 767a 222c  "lxc", "openvz",
│ │ │ -001c8d90: 2022 706f 646d 616e 222c 0a20 2020 2022   "podman",.    "
│ │ │ -001c8da0: 636f 6e74 6169 6e65 7222 5d20 2920 290a  container"] ) ).
│ │ │ -001c8db0: 2020 2d20 2722 2f76 6172 2f74 6d70 2220    - '"/var/tmp" 
│ │ │ -001c8dc0: 696e 2061 6e73 6962 6c65 5f6d 6f75 6e74  in ansible_mount
│ │ │ -001c8dd0: 7320 7c20 6d61 7028 6174 7472 6962 7574  s | map(attribut
│ │ │ -001c8de0: 653d 226d 6f75 6e74 2229 207c 206c 6973  e="mount") | lis
│ │ │ -001c8df0: 7427 0a20 202d 206d 6f75 6e74 5f69 6e66  t'.  - mount_inf
│ │ │ -001c8e00: 6f20 6973 2064 6566 696e 6564 0a20 202d  o is defined.  -
│ │ │ -001c8e10: 2028 6465 7669 6365 5f6e 616d 652e 7374   (device_name.st
│ │ │ -001c8e20: 646f 7574 2069 7320 6465 6669 6e65 6420  dout is defined 
│ │ │ -001c8e30: 616e 6420 2864 6576 6963 655f 6e61 6d65  and (device_name
│ │ │ -001c8e40: 2e73 7464 6f75 7420 7c20 6c65 6e67 7468  .stdout | length
│ │ │ -001c8e50: 2026 6774 3b20 3029 2920 6f72 2028 222d   > 0)) or ("-
│ │ │ -001c8e60: 2d66 7374 6162 220a 2020 2020 7c20 6c65  -fstab".    | le
│ │ │ -001c8e70: 6e67 7468 203d 3d20 3029 0a20 2074 6167  ngth == 0).  tag
│ │ │ -001c8e80: 733a 0a20 202d 2063 6f6e 6669 6775 7265  s:.  - configure
│ │ │ -001c8e90: 5f73 7472 6174 6567 790a 2020 2d20 6869  _strategy.  - hi
│ │ │ -001c8ea0: 6768 5f64 6973 7275 7074 696f 6e0a 2020  gh_disruption.  
│ │ │ -001c8eb0: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ -001c8ec0: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ -001c8ed0: 7269 7479 0a20 202d 206d 6f75 6e74 5f6f  rity.  - mount_o
│ │ │ -001c8ee0: 7074 696f 6e5f 7661 725f 746d 705f 6e6f  ption_var_tmp_no
│ │ │ -001c8ef0: 7375 6964 0a20 202d 206e 6f5f 7265 626f  suid.  - no_rebo
│ │ │ -001c8f00: 6f74 5f6e 6565 6465 640a 3c2f 636f 6465  ot_needed.
Remedi │ │ │ -001c8fc0: 6174 696f 6e20 5368 656c 6c20 7363 7269 ation Shell scri │ │ │ -001c8fd0: 7074 20e2 87b2 3c2f 613e 3c62 723e 3c64 pt ...
│ │ │ -001c9050: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ -001c9060: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>false< │ │ │ -001c9080: 7072 653e 3c63 6f64 653e 2320 5265 6d65 pre># Reme │ │ │ -001c9090: 6469 6174 696f 6e20 6973 2061 7070 6c69 diation is appli │ │ │ -001c90a0: 6361 626c 6520 6f6e 6c79 2069 6e20 6365 cable only in ce │ │ │ -001c90b0: 7274 6169 6e20 706c 6174 666f 726d 730a rtain platforms. │ │ │ -001c90c0: 6966 2028 2021 2028 207b 2072 706d 202d if ( ! ( { rpm - │ │ │ -001c90d0: 2d71 7569 6574 202d 7120 6b65 726e 656c -quiet -q kernel │ │ │ -001c90e0: 203b 7d20 2661 6d70 3b26 616d 703b 207b ;} && { │ │ │ -001c90f0: 2072 706d 202d 2d71 7569 6574 202d 7120 rpm --quiet -q │ │ │ -001c9100: 626f 6f74 6320 3b7d 2026 616d 703b 2661 bootc ;} &&a │ │ │ -001c9110: 6d70 3b20 7b20 2120 7270 6d20 2d2d 7175 mp; { ! rpm --qu │ │ │ -001c9120: 6965 7420 2d71 206f 7065 6e73 6869 6674 iet -q openshift │ │ │ -001c9130: 2d6b 7562 656c 6574 203b 7d20 2661 6d70 -kubelet ;} & │ │ │ -001c9140: 3b26 616d 703b 2028 5b20 2d66 202f 7275 ;& ([ -f /ru │ │ │ -001c9150: 6e2f 6f73 7472 6565 2d62 6f6f 7465 6420 n/ostree-booted │ │ │ -001c9160: 5d20 7c7c 205b 202d 4c20 2f6f 7374 7265 ] || [ -L /ostre │ │ │ -001c9170: 6520 5d29 2029 2026 616d 703b 2661 6d70 e ]) ) && │ │ │ -001c9180: 3b20 2120 2820 5b20 2d66 202f 2e64 6f63 ; ! ( [ -f /.doc │ │ │ -001c9190: 6b65 7265 6e76 205d 207c 7c20 5b20 2d66 kerenv ] || [ -f │ │ │ -001c91a0: 202f 7275 6e2f 2e63 6f6e 7461 696e 6572 /run/.container │ │ │ -001c91b0: 656e 7620 5d20 2920 2920 2661 6d70 3b26 env ] ) ) && │ │ │ -001c91c0: 616d 703b 207b 2028 2066 696e 646d 6e74 amp; { ( findmnt │ │ │ -001c91d0: 202d 2d6b 6572 6e65 6c20 222f 7661 722f --kernel "/var/ │ │ │ -001c91e0: 746d 7022 2026 6774 3b20 2f64 6576 2f6e tmp" > /dev/n │ │ │ -001c91f0: 756c 6c20 7c7c 2066 696e 646d 6e74 202d ull || findmnt - │ │ │ -001c9200: 2d66 7374 6162 2022 2f76 6172 2f74 6d70 -fstab "/var/tmp │ │ │ -001c9210: 2220 2667 743b 202f 6465 762f 6e75 6c6c " > /dev/null │ │ │ -001c9220: 2029 3b20 7d3b 2074 6865 6e0a 0a66 756e ); }; then..fun │ │ │ -001c9230: 6374 696f 6e20 7065 7266 6f72 6d5f 7265 ction perform_re │ │ │ -001c9240: 6d65 6469 6174 696f 6e20 7b0a 0a20 2020 mediation {.. │ │ │ -001c9250: 200a 2020 2020 2020 2020 2320 7468 6520 . # the │ │ │ -001c9260: 6d6f 756e 7420 706f 696e 7420 2f76 6172 mount point /var │ │ │ -001c9270: 2f74 6d70 2068 6173 2074 6f20 6265 2064 /tmp has to be d │ │ │ -001c9280: 6566 696e 6564 2069 6e20 2f65 7463 2f66 efined in /etc/f │ │ │ -001c9290: 7374 6162 0a20 2020 2020 2020 2023 2062 stab. # b │ │ │ -001c92a0: 6566 6f72 6520 7468 6973 2072 656d 6564 efore this remed │ │ │ -001c92b0: 6961 7469 6f6e 2063 616e 2062 6520 6578 iation can be ex │ │ │ -001c92c0: 6563 7574 6564 2e20 496e 2063 6173 6520 ecuted. In case │ │ │ -001c92d0: 6974 2069 7320 6e6f 7420 6465 6669 6e65 it is not define │ │ │ -001c92e0: 642c 2074 6865 0a20 2020 2020 2020 2023 d, the. # │ │ │ -001c92f0: 2072 656d 6564 6961 7469 6f6e 2061 626f remediation abo │ │ │ -001c9300: 7274 7320 616e 6420 6e6f 2063 6861 6e67 rts and no chang │ │ │ -001c9310: 6573 2072 6567 6172 6469 6e67 2074 6865 es regarding the │ │ │ -001c9320: 206d 6f75 6e74 2070 6f69 6e74 2061 7265 mount point are │ │ │ -001c9330: 2064 6f6e 652e 0a20 2020 2020 2020 206d done.. m │ │ │ -001c9340: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368 ount_point_match │ │ │ -001c9350: 5f72 6567 6578 703d 2224 2870 7269 6e74 _regexp="$(print │ │ │ -001c9360: 6620 225e 5b5b 3a73 7061 6365 3a5d 5d2a f "^[[:space:]]* │ │ │ -001c9370: 5b5e 235d 2e2a 5b5b 3a73 7061 6365 3a5d [^#].*[[:space:] │ │ │ -001c9380: 5d25 735b 5b3a 7370 6163 653a 5d5d 2220 ]%s[[:space:]]" │ │ │ -001c9390: 222f 7661 722f 746d 7022 2922 0a0a 2020 "/var/tmp")".. │ │ │ -001c93a0: 2020 6772 6570 2022 246d 6f75 6e74 5f70 grep "$mount_p │ │ │ -001c93b0: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578 oint_match_regex │ │ │ -001c93c0: 7022 202d 7120 2f65 7463 2f66 7374 6162 p" -q /etc/fstab │ │ │ -001c93d0: 205c 0a20 2020 2020 2020 207c 7c20 7b20 \. || { │ │ │ -001c93e0: 6563 686f 2022 5468 6520 6d6f 756e 7420 echo "The mount │ │ │ -001c93f0: 706f 696e 7420 272f 7661 722f 746d 7027 point '/var/tmp' │ │ │ -001c9400: 2069 7320 6e6f 7420 6576 656e 2069 6e20 is not even in │ │ │ -001c9410: 2f65 7463 2f66 7374 6162 2c20 736f 2077 /etc/fstab, so w │ │ │ -001c9420: 6520 6361 6e27 7420 7365 7420 7570 206d e can't set up m │ │ │ -001c9430: 6f75 6e74 206f 7074 696f 6e73 2220 2667 ount options" &g │ │ │ -001c9440: 743b 2661 6d70 3b32 3b0a 2020 2020 2020 t;&2;. │ │ │ -001c9450: 2020 2020 2020 2020 2020 6563 686f 2022 echo " │ │ │ -001c9460: 4e6f 7420 7265 6d65 6469 6174 696e 672c Not remediating, │ │ │ -001c9470: 2062 6563 6175 7365 2074 6865 7265 2069 because there i │ │ │ -001c9480: 7320 6e6f 2072 6563 6f72 6420 6f66 202f s no record of / │ │ │ -001c9490: 7661 722f 746d 7020 696e 202f 6574 632f var/tmp in /etc/ │ │ │ -001c94a0: 6673 7461 6222 2026 6774 3b26 616d 703b fstab" >& │ │ │ -001c94b0: 323b 2072 6574 7572 6e20 313b 207d 0a20 2; return 1; }. │ │ │ -001c94c0: 2020 200a 0a0a 2020 2020 6d6f 756e 745f ... mount_ │ │ │ -001c94d0: 706f 696e 745f 6d61 7463 685f 7265 6765 point_match_rege │ │ │ -001c94e0: 7870 3d22 2428 7072 696e 7466 2022 5e5b xp="$(printf "^[ │ │ │ -001c94f0: 5b3a 7370 6163 653a 5d5d 2a5b 5e23 5d2e [:space:]]*[^#]. │ │ │ -001c9500: 2a5b 5b3a 7370 6163 653a 5d5d 2573 5b5b *[[:space:]]%s[[ │ │ │ -001c9510: 3a73 7061 6365 3a5d 5d22 202f 7661 722f :space:]]" /var/ │ │ │ -001c9520: 746d 7029 220a 0a20 2020 2023 2049 6620 tmp)".. # If │ │ │ -001c9530: 7468 6520 6d6f 756e 7420 706f 696e 7420 the mount point │ │ │ -001c9540: 6973 206e 6f74 2069 6e20 2f65 7463 2f66 is not in /etc/f │ │ │ -001c9550: 7374 6162 2c20 6765 7420 7072 6576 696f stab, get previo │ │ │ -001c9560: 7573 206d 6f75 6e74 206f 7074 696f 6e73 us mount options │ │ │ -001c9570: 2066 726f 6d20 2f65 7463 2f6d 7461 620a from /etc/mtab. │ │ │ -001c9580: 2020 2020 6966 2021 2067 7265 7020 2d71 if ! grep -q │ │ │ -001c9590: 2022 246d 6f75 6e74 5f70 6f69 6e74 5f6d "$mount_point_m │ │ │ -001c95a0: 6174 6368 5f72 6567 6578 7022 202f 6574 atch_regexp" /et │ │ │ -001c95b0: 632f 6673 7461 623b 2074 6865 6e0a 2020 c/fstab; then. │ │ │ -001c95c0: 2020 2020 2020 2320 7275 6e74 696d 6520 # runtime │ │ │ -001c95d0: 6f70 7473 2077 6974 686f 7574 2073 6f6d opts without som │ │ │ -001c95e0: 6520 6175 746f 6d61 7469 6320 6b65 726e e automatic kern │ │ │ -001c95f0: 656c 2f75 7365 7273 7061 6365 2d61 6464 el/userspace-add │ │ │ -001c9600: 6564 2064 6566 6175 6c74 730a 2020 2020 ed defaults. │ │ │ -001c9610: 2020 2020 7072 6576 696f 7573 5f6d 6f75 previous_mou │ │ │ -001c9620: 6e74 5f6f 7074 733d 2428 6772 6570 2022 nt_opts=$(grep " │ │ │ -001c9630: 246d 6f75 6e74 5f70 6f69 6e74 5f6d 6174 $mount_point_mat │ │ │ -001c9640: 6368 5f72 6567 6578 7022 202f 6574 632f ch_regexp" /etc/ │ │ │ -001c9650: 6d74 6162 207c 2068 6561 6420 2d31 207c mtab | head -1 | │ │ │ -001c9660: 2020 6177 6b20 277b 7072 696e 7420 2434 awk '{print $4 │ │ │ -001c9670: 7d27 205c 0a20 2020 2020 2020 2020 2020 }' \. │ │ │ -001c9680: 2020 2020 2020 2020 207c 2073 6564 202d | sed - │ │ │ -001c9690: 4520 2273 2f28 7277 7c64 6566 6175 6c74 E "s/(rw|default │ │ │ -001c96a0: 737c 7365 636c 6162 656c 7c6e 6f73 7569 s|seclabel|nosui │ │ │ -001c96b0: 6429 282c 7c24 292f 2f67 3b73 2f2c 242f d)(,|$)//g;s/,$/ │ │ │ -001c96c0: 2f22 290a 2020 2020 2020 2020 5b20 2224 /"). [ "$ │ │ │ -001c96d0: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f previous_mount_o │ │ │ -001c96e0: 7074 7322 205d 2026 616d 703b 2661 6d70 pts" ] && │ │ │ -001c96f0: 3b20 7072 6576 696f 7573 5f6d 6f75 6e74 ; previous_mount │ │ │ -001c9700: 5f6f 7074 732b 3d22 2c22 0a20 2020 2020 _opts+=",". │ │ │ -001c9710: 2020 2023 2049 6e20 6973 6f39 3636 3020 # In iso9660 │ │ │ -001c9720: 6669 6c65 7379 7374 656d 7320 6d74 6162 filesystems mtab │ │ │ -001c9730: 2063 6f75 6c64 2064 6573 6372 6962 6520 could describe │ │ │ -001c9740: 6120 2262 6c6f 636b 7369 7a65 2220 7661 a "blocksize" va │ │ │ -001c9750: 6c75 652c 2074 6869 7320 7368 6f75 6c64 lue, this should │ │ │ -001c9760: 2062 6520 7265 666c 6563 7465 6420 696e be reflected in │ │ │ -001c9770: 0a20 2020 2020 2020 2023 2066 7374 6162 . # fstab │ │ │ -001c9780: 2061 7320 2262 6c6f 636b 222e 2020 5468 as "block". Th │ │ │ -001c9790: 6520 6e65 7874 2076 6172 6961 626c 6520 e next variable │ │ │ -001c97a0: 6973 2074 6f20 7361 7469 7366 7920 7368 is to satisfy sh │ │ │ -001c97b0: 656c 6c63 6865 636b 2053 4332 3035 302e ellcheck SC2050. │ │ │ -001c97c0: 0a20 2020 2020 2020 2066 735f 7479 7065 . fs_type │ │ │ -001c97d0: 3d22 220a 2020 2020 2020 2020 6966 205b ="". if [ │ │ │ -001c97e0: 2020 2224 6673 5f74 7970 6522 203d 3d20 "$fs_type" == │ │ │ -001c97f0: 2269 736f 3936 3630 2220 5d20 3b20 7468 "iso9660" ] ; th │ │ │ -001c9800: 656e 0a20 2020 2020 2020 2020 2020 2070 en. p │ │ │ -001c9810: 7265 7669 6f75 735f 6d6f 756e 745f 6f70 revious_mount_op │ │ │ -001c9820: 7473 3d24 2873 6564 2027 732f 626c 6f63 ts=$(sed 's/bloc │ │ │ -001c9830: 6b73 697a 653d 2f62 6c6f 636b 3d2f 2720 ksize=/block=/' │ │ │ -001c9840: 266c 743b 266c 743b 266c 743b 2022 2470 <<< "$p │ │ │ -001c9850: 7265 7669 6f75 735f 6d6f 756e 745f 6f70 revious_mount_op │ │ │ -001c9860: 7473 2229 0a20 2020 2020 2020 2066 690a ts"). fi. │ │ │ -001c9870: 2020 2020 2020 2020 6563 686f 2022 202f echo " / │ │ │ -001c9880: 7661 722f 746d 7020 2064 6566 6175 6c74 var/tmp default │ │ │ -001c9890: 732c 247b 7072 6576 696f 7573 5f6d 6f75 s,${previous_mou │ │ │ -001c98a0: 6e74 5f6f 7074 737d 6e6f 7375 6964 2030 nt_opts}nosuid 0 │ │ │ -001c98b0: 2030 2220 2667 743b 2667 743b 202f 6574 0" >> /et │ │ │ -001c98c0: 632f 6673 7461 620a 2020 2020 2320 4966 c/fstab. # If │ │ │ -001c98d0: 2074 6865 206d 6f75 6e74 5f6f 7074 206f the mount_opt o │ │ │ -001c98e0: 7074 696f 6e20 6973 206e 6f74 2061 6c72 ption is not alr │ │ │ -001c98f0: 6561 6479 2069 6e20 7468 6520 6d6f 756e eady in the moun │ │ │ -001c9900: 7420 706f 696e 7427 7320 2f65 7463 2f66 t point's /etc/f │ │ │ -001c9910: 7374 6162 2065 6e74 7279 2c20 6164 6420 stab entry, add │ │ │ -001c9920: 6974 0a20 2020 2065 6c69 6620 2120 6772 it. elif ! gr │ │ │ -001c9930: 6570 2022 246d 6f75 6e74 5f70 6f69 6e74 ep "$mount_point │ │ │ -001c9940: 5f6d 6174 6368 5f72 6567 6578 7022 202f _match_regexp" / │ │ │ -001c9950: 6574 632f 6673 7461 6220 7c20 6772 6570 etc/fstab | grep │ │ │ -001c9960: 202d 7120 226e 6f73 7569 6422 3b20 7468 -q "nosuid"; th │ │ │ -001c9970: 656e 0a20 2020 2020 2020 2070 7265 7669 en. previ │ │ │ -001c9980: 6f75 735f 6d6f 756e 745f 6f70 7473 3d24 ous_mount_opts=$ │ │ │ -001c9990: 2867 7265 7020 2224 6d6f 756e 745f 706f (grep "$mount_po │ │ │ -001c99a0: 696e 745f 6d61 7463 685f 7265 6765 7870 int_match_regexp │ │ │ -001c99b0: 2220 2f65 7463 2f66 7374 6162 207c 2061 " /etc/fstab | a │ │ │ -001c99c0: 776b 2027 7b70 7269 6e74 2024 347d 2729 wk '{print $4}') │ │ │ -001c99d0: 0a20 2020 2020 2020 2073 6564 202d 6920 . sed -i │ │ │ -001c99e0: 2273 7c5c 2824 7b6d 6f75 6e74 5f70 6f69 "s|\(${mount_poi │ │ │ -001c99f0: 6e74 5f6d 6174 6368 5f72 6567 6578 707d nt_match_regexp} │ │ │ -001c9a00: 2e2a 247b 7072 6576 696f 7573 5f6d 6f75 .*${previous_mou │ │ │ -001c9a10: 6e74 5f6f 7074 737d 5c29 7c5c 312c 6e6f nt_opts}\)|\1,no │ │ │ -001c9a20: 7375 6964 7c22 202f 6574 632f 6673 7461 suid|" /etc/fsta │ │ │ -001c9a30: 620a 2020 2020 6669 0a0a 0a20 2020 2069 b. fi... i │ │ │ -001c9a40: 6620 6d6b 6469 7220 2d70 2022 2f76 6172 f mkdir -p "/var │ │ │ -001c9a50: 2f74 6d70 223b 2074 6865 6e0a 2020 2020 /tmp"; then. │ │ │ -001c9a60: 2020 2020 6966 206d 6f75 6e74 706f 696e if mountpoin │ │ │ -001c9a70: 7420 2d71 2022 2f76 6172 2f74 6d70 223b t -q "/var/tmp"; │ │ │ -001c9a80: 2074 6865 6e0a 2020 2020 2020 2020 2020 then. │ │ │ -001c9a90: 2020 6d6f 756e 7420 2d6f 2072 656d 6f75 mount -o remou │ │ │ -001c9aa0: 6e74 202d 2d74 6172 6765 7420 222f 7661 nt --target "/va │ │ │ -001c9ab0: 722f 746d 7022 0a20 2020 2020 2020 2066 r/tmp". f │ │ │ -001c9ac0: 690a 2020 2020 6669 0a7d 0a0a 7065 7266 i. fi.}..perf │ │ │ -001c9ad0: 6f72 6d5f 7265 6d65 6469 6174 696f 6e0a orm_remediation. │ │ │ -001c9ae0: 0a65 6c73 650a 2020 2020 2667 743b 2661 .else. >&a │ │ │ -001c9af0: 6d70 3b32 2065 6368 6f20 2752 656d 6564 mp;2 echo 'Remed │ │ │ -001c9b00: 6961 7469 6f6e 2069 7320 6e6f 7420 6170 iation is not ap │ │ │ -001c9b10: 706c 6963 6162 6c65 2c20 6e6f 7468 696e plicable, nothin │ │ │ -001c9b20: 6720 7761 7320 646f 6e65 270a 6669 0a3c g was done'.fi.< │ │ │ +001c7890: 6961 7469 6f6e 2041 6e73 6962 6c65 2073 iation Ansible s │ │ │ +001c78a0: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
- 
│ │ │ +001c79e0: 6e61 6d65 3a20 4761 7468 6572 2074 6865  name: Gather the
│ │ │ +001c79f0: 2070 6163 6b61 6765 2066 6163 7473 0a20   package facts. 
│ │ │ +001c7a00: 2070 6163 6b61 6765 5f66 6163 7473 3a0a   package_facts:.
│ │ │ +001c7a10: 2020 2020 6d61 6e61 6765 723a 2061 7574      manager: aut
│ │ │ +001c7a20: 6f0a 2020 7461 6773 3a0a 2020 2d20 636f  o.  tags:.  - co
│ │ │ +001c7a30: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ +001c7a40: 0a20 202d 2068 6967 685f 6469 7372 7570  .  - high_disrup
│ │ │ +001c7a50: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d  tion.  - low_com
│ │ │ +001c7a60: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ +001c7a70: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ +001c7a80: 6d6f 756e 745f 6f70 7469 6f6e 5f76 6172  mount_option_var
│ │ │ +001c7a90: 5f74 6d70 5f6e 6f73 7569 640a 2020 2d20  _tmp_nosuid.  - 
│ │ │ +001c7aa0: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ +001c7ab0: 0a0a 2d20 6e61 6d65 3a20 2741 6464 206e  ..- name: 'Add n
│ │ │ +001c7ac0: 6f73 7569 6420 4f70 7469 6f6e 2074 6f20  osuid Option to 
│ │ │ +001c7ad0: 2f76 6172 2f74 6d70 3a20 4368 6563 6b20  /var/tmp: Check 
│ │ │ +001c7ae0: 696e 666f 726d 6174 696f 6e20 6173 736f  information asso
│ │ │ +001c7af0: 6369 6174 6564 2074 6f20 6d6f 756e 7470  ciated to mountp
│ │ │ +001c7b00: 6f69 6e74 270a 2020 616e 7369 626c 652e  oint'.  ansible.
│ │ │ +001c7b10: 6275 696c 7469 6e2e 636f 6d6d 616e 643a  builtin.command:
│ │ │ +001c7b20: 2066 696e 646d 6e74 202d 2d66 7374 6162   findmnt --fstab
│ │ │ +001c7b30: 2027 2f76 6172 2f74 6d70 270a 2020 7265   '/var/tmp'.  re
│ │ │ +001c7b40: 6769 7374 6572 3a20 6465 7669 6365 5f6e  gister: device_n
│ │ │ +001c7b50: 616d 650a 2020 6661 696c 6564 5f77 6865  ame.  failed_whe
│ │ │ +001c7b60: 6e3a 2064 6576 6963 655f 6e61 6d65 2e72  n: device_name.r
│ │ │ +001c7b70: 6320 2667 743b 2031 0a20 2063 6861 6e67  c > 1.  chang
│ │ │ +001c7b80: 6564 5f77 6865 6e3a 2066 616c 7365 0a20  ed_when: false. 
│ │ │ +001c7b90: 2063 6865 636b 5f6d 6f64 653a 2066 616c   check_mode: fal
│ │ │ +001c7ba0: 7365 0a20 2077 6865 6e3a 0a20 202d 2028  se.  when:.  - (
│ │ │ +001c7bb0: 206e 6f74 2028 2022 6b65 726e 656c 2220   not ( "kernel" 
│ │ │ +001c7bc0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001c7bd0: 2e70 6163 6b61 6765 7320 616e 6420 2262  .packages and "b
│ │ │ +001c7be0: 6f6f 7463 2220 696e 2061 6e73 6962 6c65  ootc" in ansible
│ │ │ +001c7bf0: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ +001c7c00: 2020 2020 616e 6420 6e6f 7420 226f 7065      and not "ope
│ │ │ +001c7c10: 6e73 6869 6674 2d6b 7562 656c 6574 2220  nshift-kubelet" 
│ │ │ +001c7c20: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001c7c30: 2e70 6163 6b61 6765 7320 616e 6420 226f  .packages and "o
│ │ │ +001c7c40: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ +001c7c50: 655f 7072 6f63 5f63 6d64 6c69 6e65 0a20  e_proc_cmdline. 
│ │ │ +001c7c60: 2020 2029 2061 6e64 206e 6f74 2028 2061     ) and not ( a
│ │ │ +001c7c70: 6e73 6962 6c65 5f76 6972 7475 616c 697a  nsible_virtualiz
│ │ │ +001c7c80: 6174 696f 6e5f 7479 7065 2069 6e20 5b22  ation_type in ["
│ │ │ +001c7c90: 646f 636b 6572 222c 2022 6c78 6322 2c20  docker", "lxc", 
│ │ │ +001c7ca0: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61  "openvz", "podma
│ │ │ +001c7cb0: 6e22 2c0a 2020 2020 2263 6f6e 7461 696e  n",.    "contain
│ │ │ +001c7cc0: 6572 225d 2029 2029 0a20 202d 2027 222f  er"] ) ).  - '"/
│ │ │ +001c7cd0: 7661 722f 746d 7022 2069 6e20 616e 7369  var/tmp" in ansi
│ │ │ +001c7ce0: 626c 655f 6d6f 756e 7473 207c 206d 6170  ble_mounts | map
│ │ │ +001c7cf0: 2861 7474 7269 6275 7465 3d22 6d6f 756e  (attribute="moun
│ │ │ +001c7d00: 7422 2920 7c20 6c69 7374 270a 2020 7461  t") | list'.  ta
│ │ │ +001c7d10: 6773 3a0a 2020 2d20 636f 6e66 6967 7572  gs:.  - configur
│ │ │ +001c7d20: 655f 7374 7261 7465 6779 0a20 202d 2068  e_strategy.  - h
│ │ │ +001c7d30: 6967 685f 6469 7372 7570 7469 6f6e 0a20  igh_disruption. 
│ │ │ +001c7d40: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ +001c7d50: 790a 2020 2d20 6d65 6469 756d 5f73 6576  y.  - medium_sev
│ │ │ +001c7d60: 6572 6974 790a 2020 2d20 6d6f 756e 745f  erity.  - mount_
│ │ │ +001c7d70: 6f70 7469 6f6e 5f76 6172 5f74 6d70 5f6e  option_var_tmp_n
│ │ │ +001c7d80: 6f73 7569 640a 2020 2d20 6e6f 5f72 6562  osuid.  - no_reb
│ │ │ +001c7d90: 6f6f 745f 6e65 6564 6564 0a0a 2d20 6e61  oot_needed..- na
│ │ │ +001c7da0: 6d65 3a20 2741 6464 206e 6f73 7569 6420  me: 'Add nosuid 
│ │ │ +001c7db0: 4f70 7469 6f6e 2074 6f20 2f76 6172 2f74  Option to /var/t
│ │ │ +001c7dc0: 6d70 3a20 4372 6561 7465 206d 6f75 6e74  mp: Create mount
│ │ │ +001c7dd0: 5f69 6e66 6f20 6469 6374 696f 6e61 7279  _info dictionary
│ │ │ +001c7de0: 2076 6172 6961 626c 6527 0a20 2073 6574   variable'.  set
│ │ │ +001c7df0: 5f66 6163 743a 0a20 2020 206d 6f75 6e74  _fact:.    mount
│ │ │ +001c7e00: 5f69 6e66 6f3a 2027 7b7b 206d 6f75 6e74  _info: '{{ mount
│ │ │ +001c7e10: 5f69 6e66 6f7c 6465 6661 756c 7428 7b7d  _info|default({}
│ │ │ +001c7e20: 297c 636f 6d62 696e 6528 7b69 7465 6d2e  )|combine({item.
│ │ │ +001c7e30: 303a 2069 7465 6d2e 317d 2920 7d7d 270a  0: item.1}) }}'.
│ │ │ +001c7e40: 2020 7769 7468 5f74 6f67 6574 6865 723a    with_together:
│ │ │ +001c7e50: 0a20 202d 2027 7b7b 2064 6576 6963 655f  .  - '{{ device_
│ │ │ +001c7e60: 6e61 6d65 2e73 7464 6f75 745f 6c69 6e65  name.stdout_line
│ │ │ +001c7e70: 735b 305d 2e73 706c 6974 2829 207c 206d  s[0].split() | m
│ │ │ +001c7e80: 6170 2827 276c 6f77 6572 2727 2920 7c20  ap(''lower'') | 
│ │ │ +001c7e90: 6c69 7374 207d 7d27 0a20 202d 2027 7b7b  list }}'.  - '{{
│ │ │ +001c7ea0: 2064 6576 6963 655f 6e61 6d65 2e73 7464   device_name.std
│ │ │ +001c7eb0: 6f75 745f 6c69 6e65 735b 315d 2e73 706c  out_lines[1].spl
│ │ │ +001c7ec0: 6974 2829 207c 206c 6973 7420 7d7d 270a  it() | list }}'.
│ │ │ +001c7ed0: 2020 7768 656e 3a0a 2020 2d20 2820 6e6f    when:.  - ( no
│ │ │ +001c7ee0: 7420 2820 226b 6572 6e65 6c22 2069 6e20  t ( "kernel" in 
│ │ │ +001c7ef0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001c7f00: 636b 6167 6573 2061 6e64 2022 626f 6f74  ckages and "boot
│ │ │ +001c7f10: 6322 2069 6e20 616e 7369 626c 655f 6661  c" in ansible_fa
│ │ │ +001c7f20: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ +001c7f30: 2061 6e64 206e 6f74 2022 6f70 656e 7368   and not "opensh
│ │ │ +001c7f40: 6966 742d 6b75 6265 6c65 7422 2069 6e20  ift-kubelet" in 
│ │ │ +001c7f50: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001c7f60: 636b 6167 6573 2061 6e64 2022 6f73 7472  ckages and "ostr
│ │ │ +001c7f70: 6565 2220 696e 2061 6e73 6962 6c65 5f70  ee" in ansible_p
│ │ │ +001c7f80: 726f 635f 636d 646c 696e 650a 2020 2020  roc_cmdline.    
│ │ │ +001c7f90: 2920 616e 6420 6e6f 7420 2820 616e 7369  ) and not ( ansi
│ │ │ +001c7fa0: 626c 655f 7669 7274 7561 6c69 7a61 7469  ble_virtualizati
│ │ │ +001c7fb0: 6f6e 5f74 7970 6520 696e 205b 2264 6f63  on_type in ["doc
│ │ │ +001c7fc0: 6b65 7222 2c20 226c 7863 222c 2022 6f70  ker", "lxc", "op
│ │ │ +001c7fd0: 656e 767a 222c 2022 706f 646d 616e 222c  envz", "podman",
│ │ │ +001c7fe0: 0a20 2020 2022 636f 6e74 6169 6e65 7222  .    "container"
│ │ │ +001c7ff0: 5d20 2920 290a 2020 2d20 2722 2f76 6172  ] ) ).  - '"/var
│ │ │ +001c8000: 2f74 6d70 2220 696e 2061 6e73 6962 6c65  /tmp" in ansible
│ │ │ +001c8010: 5f6d 6f75 6e74 7320 7c20 6d61 7028 6174  _mounts | map(at
│ │ │ +001c8020: 7472 6962 7574 653d 226d 6f75 6e74 2229  tribute="mount")
│ │ │ +001c8030: 207c 206c 6973 7427 0a20 202d 2064 6576   | list'.  - dev
│ │ │ +001c8040: 6963 655f 6e61 6d65 2e73 7464 6f75 7420  ice_name.stdout 
│ │ │ +001c8050: 6973 2064 6566 696e 6564 2061 6e64 2064  is defined and d
│ │ │ +001c8060: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ +001c8070: 745f 6c69 6e65 7320 6973 2064 6566 696e  t_lines is defin
│ │ │ +001c8080: 6564 0a20 202d 2028 6465 7669 6365 5f6e  ed.  - (device_n
│ │ │ +001c8090: 616d 652e 7374 646f 7574 207c 206c 656e  ame.stdout | len
│ │ │ +001c80a0: 6774 6820 2667 743b 2030 290a 2020 7461  gth > 0).  ta
│ │ │ +001c80b0: 6773 3a0a 2020 2d20 636f 6e66 6967 7572  gs:.  - configur
│ │ │ +001c80c0: 655f 7374 7261 7465 6779 0a20 202d 2068  e_strategy.  - h
│ │ │ +001c80d0: 6967 685f 6469 7372 7570 7469 6f6e 0a20  igh_disruption. 
│ │ │ +001c80e0: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ +001c80f0: 790a 2020 2d20 6d65 6469 756d 5f73 6576  y.  - medium_sev
│ │ │ +001c8100: 6572 6974 790a 2020 2d20 6d6f 756e 745f  erity.  - mount_
│ │ │ +001c8110: 6f70 7469 6f6e 5f76 6172 5f74 6d70 5f6e  option_var_tmp_n
│ │ │ +001c8120: 6f73 7569 640a 2020 2d20 6e6f 5f72 6562  osuid.  - no_reb
│ │ │ +001c8130: 6f6f 745f 6e65 6564 6564 0a0a 2d20 6e61  oot_needed..- na
│ │ │ +001c8140: 6d65 3a20 2741 6464 206e 6f73 7569 6420  me: 'Add nosuid 
│ │ │ +001c8150: 4f70 7469 6f6e 2074 6f20 2f76 6172 2f74  Option to /var/t
│ │ │ +001c8160: 6d70 3a20 4966 202f 7661 722f 746d 7020  mp: If /var/tmp 
│ │ │ +001c8170: 6e6f 7420 6d6f 756e 7465 642c 2063 7261  not mounted, cra
│ │ │ +001c8180: 6674 206d 6f75 6e74 5f69 6e66 6f0a 2020  ft mount_info.  
│ │ │ +001c8190: 2020 6d61 6e75 616c 6c79 270a 2020 7365    manually'.  se
│ │ │ +001c81a0: 745f 6661 6374 3a0a 2020 2020 6d6f 756e  t_fact:.    moun
│ │ │ +001c81b0: 745f 696e 666f 3a20 277b 7b20 6d6f 756e  t_info: '{{ moun
│ │ │ +001c81c0: 745f 696e 666f 7c64 6566 6175 6c74 287b  t_info|default({
│ │ │ +001c81d0: 7d29 7c63 6f6d 6269 6e65 287b 6974 656d  })|combine({item
│ │ │ +001c81e0: 2e30 3a20 6974 656d 2e31 7d29 207d 7d27  .0: item.1}) }}'
│ │ │ +001c81f0: 0a20 2077 6974 685f 746f 6765 7468 6572  .  with_together
│ │ │ +001c8200: 3a0a 2020 2d20 2d20 7461 7267 6574 0a20  :.  - - target. 
│ │ │ +001c8210: 2020 202d 2073 6f75 7263 650a 2020 2020     - source.    
│ │ │ +001c8220: 2d20 6673 7479 7065 0a20 2020 202d 206f  - fstype.    - o
│ │ │ +001c8230: 7074 696f 6e73 0a20 202d 202d 202f 7661  ptions.  - - /va
│ │ │ +001c8240: 722f 746d 700a 2020 2020 2d20 2727 0a20  r/tmp.    - ''. 
│ │ │ +001c8250: 2020 202d 2027 270a 2020 2020 2d20 6465     - ''.    - de
│ │ │ +001c8260: 6661 756c 7473 0a20 2077 6865 6e3a 0a20  faults.  when:. 
│ │ │ +001c8270: 202d 2028 206e 6f74 2028 2022 6b65 726e   - ( not ( "kern
│ │ │ +001c8280: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ +001c8290: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +001c82a0: 6420 2262 6f6f 7463 2220 696e 2061 6e73  d "bootc" in ans
│ │ │ +001c82b0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001c82c0: 6765 730a 2020 2020 616e 6420 6e6f 7420  ges.    and not 
│ │ │ +001c82d0: 226f 7065 6e73 6869 6674 2d6b 7562 656c  "openshift-kubel
│ │ │ +001c82e0: 6574 2220 696e 2061 6e73 6962 6c65 5f66  et" in ansible_f
│ │ │ +001c82f0: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +001c8300: 6420 226f 7374 7265 6522 2069 6e20 616e  d "ostree" in an
│ │ │ +001c8310: 7369 626c 655f 7072 6f63 5f63 6d64 6c69  sible_proc_cmdli
│ │ │ +001c8320: 6e65 0a20 2020 2029 2061 6e64 206e 6f74  ne.    ) and not
│ │ │ +001c8330: 2028 2061 6e73 6962 6c65 5f76 6972 7475   ( ansible_virtu
│ │ │ +001c8340: 616c 697a 6174 696f 6e5f 7479 7065 2069  alization_type i
│ │ │ +001c8350: 6e20 5b22 646f 636b 6572 222c 2022 6c78  n ["docker", "lx
│ │ │ +001c8360: 6322 2c20 226f 7065 6e76 7a22 2c20 2270  c", "openvz", "p
│ │ │ +001c8370: 6f64 6d61 6e22 2c0a 2020 2020 2263 6f6e  odman",.    "con
│ │ │ +001c8380: 7461 696e 6572 225d 2029 2029 0a20 202d  tainer"] ) ).  -
│ │ │ +001c8390: 2027 222f 7661 722f 746d 7022 2069 6e20   '"/var/tmp" in 
│ │ │ +001c83a0: 616e 7369 626c 655f 6d6f 756e 7473 207c  ansible_mounts |
│ │ │ +001c83b0: 206d 6170 2861 7474 7269 6275 7465 3d22   map(attribute="
│ │ │ +001c83c0: 6d6f 756e 7422 2920 7c20 6c69 7374 270a  mount") | list'.
│ │ │ +001c83d0: 2020 2d20 2822 2d2d 6673 7461 6222 207c    - ("--fstab" |
│ │ │ +001c83e0: 206c 656e 6774 6820 3d3d 2030 290a 2020   length == 0).  
│ │ │ +001c83f0: 2d20 6465 7669 6365 5f6e 616d 652e 7374  - device_name.st
│ │ │ +001c8400: 646f 7574 2069 7320 6465 6669 6e65 6420  dout is defined 
│ │ │ +001c8410: 616e 6420 6465 7669 6365 5f6e 616d 652e  and device_name.
│ │ │ +001c8420: 7374 646f 7574 5f6c 696e 6573 2069 7320  stdout_lines is 
│ │ │ +001c8430: 6465 6669 6e65 640a 2020 2d20 2864 6576  defined.  - (dev
│ │ │ +001c8440: 6963 655f 6e61 6d65 2e73 7464 6f75 7420  ice_name.stdout 
│ │ │ +001c8450: 7c20 6c65 6e67 7468 203d 3d20 3029 0a20  | length == 0). 
│ │ │ +001c8460: 2074 6167 733a 0a20 202d 2063 6f6e 6669   tags:.  - confi
│ │ │ +001c8470: 6775 7265 5f73 7472 6174 6567 790a 2020  gure_strategy.  
│ │ │ +001c8480: 2d20 6869 6768 5f64 6973 7275 7074 696f  - high_disruptio
│ │ │ +001c8490: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65  n.  - low_comple
│ │ │ +001c84a0: 7869 7479 0a20 202d 206d 6564 6975 6d5f  xity.  - medium_
│ │ │ +001c84b0: 7365 7665 7269 7479 0a20 202d 206d 6f75  severity.  - mou
│ │ │ +001c84c0: 6e74 5f6f 7074 696f 6e5f 7661 725f 746d  nt_option_var_tm
│ │ │ +001c84d0: 705f 6e6f 7375 6964 0a20 202d 206e 6f5f  p_nosuid.  - no_
│ │ │ +001c84e0: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ +001c84f0: 206e 616d 653a 2027 4164 6420 6e6f 7375   name: 'Add nosu
│ │ │ +001c8500: 6964 204f 7074 696f 6e20 746f 202f 7661  id Option to /va
│ │ │ +001c8510: 722f 746d 703a 204d 616b 6520 7375 7265  r/tmp: Make sure
│ │ │ +001c8520: 206e 6f73 7569 6420 6f70 7469 6f6e 2069   nosuid option i
│ │ │ +001c8530: 7320 7061 7274 206f 6620 7468 6520 746f  s part of the to
│ │ │ +001c8540: 0a20 2020 202f 7661 722f 746d 7020 6f70  .    /var/tmp op
│ │ │ +001c8550: 7469 6f6e 7327 0a20 2073 6574 5f66 6163  tions'.  set_fac
│ │ │ +001c8560: 743a 0a20 2020 206d 6f75 6e74 5f69 6e66  t:.    mount_inf
│ │ │ +001c8570: 6f3a 2027 7b7b 206d 6f75 6e74 5f69 6e66  o: '{{ mount_inf
│ │ │ +001c8580: 6f20 7c20 636f 6d62 696e 6528 207b 2727  o | combine( {''
│ │ │ +001c8590: 6f70 7469 6f6e 7327 273a 2727 2727 7e28  options'':''''~(
│ │ │ +001c85a0: 6d6f 756e 745f 696e 666f 2e6f 7074 696f  mount_info.optio
│ │ │ +001c85b0: 6e73 207c 0a20 2020 2020 2064 6566 6175  ns |.      defau
│ │ │ +001c85c0: 6c74 2827 2727 2729 297e 2827 272c 2727  lt(''''))~('',''
│ │ │ +001c85d0: 2069 6620 286d 6f75 6e74 5f69 6e66 6f2e   if (mount_info.
│ │ │ +001c85e0: 6f70 7469 6f6e 7320 7c20 6465 6661 756c  options | defaul
│ │ │ +001c85f0: 7428 2727 2727 2929 2065 6c73 6520 2727  t('''')) else ''
│ │ │ +001c8600: 2727 297e 2727 6e6f 7375 6964 2727 0a20  '')~''nosuid''. 
│ │ │ +001c8610: 2020 2020 207d 2920 7d7d 270a 2020 7768       }) }}'.  wh
│ │ │ +001c8620: 656e 3a0a 2020 2d20 2820 6e6f 7420 2820  en:.  - ( not ( 
│ │ │ +001c8630: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ +001c8640: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001c8650: 6573 2061 6e64 2022 626f 6f74 6322 2069  es and "bootc" i
│ │ │ +001c8660: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001c8670: 7061 636b 6167 6573 0a20 2020 2061 6e64  packages.    and
│ │ │ +001c8680: 206e 6f74 2022 6f70 656e 7368 6966 742d   not "openshift-
│ │ │ +001c8690: 6b75 6265 6c65 7422 2069 6e20 616e 7369  kubelet" in ansi
│ │ │ +001c86a0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001c86b0: 6573 2061 6e64 2022 6f73 7472 6565 2220  es and "ostree" 
│ │ │ +001c86c0: 696e 2061 6e73 6962 6c65 5f70 726f 635f  in ansible_proc_
│ │ │ +001c86d0: 636d 646c 696e 650a 2020 2020 2920 616e  cmdline.    ) an
│ │ │ +001c86e0: 6420 6e6f 7420 2820 616e 7369 626c 655f  d not ( ansible_
│ │ │ +001c86f0: 7669 7274 7561 6c69 7a61 7469 6f6e 5f74  virtualization_t
│ │ │ +001c8700: 7970 6520 696e 205b 2264 6f63 6b65 7222  ype in ["docker"
│ │ │ +001c8710: 2c20 226c 7863 222c 2022 6f70 656e 767a  , "lxc", "openvz
│ │ │ +001c8720: 222c 2022 706f 646d 616e 222c 0a20 2020  ", "podman",.   
│ │ │ +001c8730: 2022 636f 6e74 6169 6e65 7222 5d20 2920   "container"] ) 
│ │ │ +001c8740: 290a 2020 2d20 2722 2f76 6172 2f74 6d70  ).  - '"/var/tmp
│ │ │ +001c8750: 2220 696e 2061 6e73 6962 6c65 5f6d 6f75  " in ansible_mou
│ │ │ +001c8760: 6e74 7320 7c20 6d61 7028 6174 7472 6962  nts | map(attrib
│ │ │ +001c8770: 7574 653d 226d 6f75 6e74 2229 207c 206c  ute="mount") | l
│ │ │ +001c8780: 6973 7427 0a20 202d 206d 6f75 6e74 5f69  ist'.  - mount_i
│ │ │ +001c8790: 6e66 6f20 6973 2064 6566 696e 6564 2061  nfo is defined a
│ │ │ +001c87a0: 6e64 2022 6e6f 7375 6964 2220 6e6f 7420  nd "nosuid" not 
│ │ │ +001c87b0: 696e 2028 6d6f 756e 745f 696e 666f 2e6f  in (mount_info.o
│ │ │ +001c87c0: 7074 696f 6e73 207c 2064 6566 6175 6c74  ptions | default
│ │ │ +001c87d0: 2827 2729 290a 2020 7461 6773 3a0a 2020  ('')).  tags:.  
│ │ │ +001c87e0: 2d20 636f 6e66 6967 7572 655f 7374 7261  - configure_stra
│ │ │ +001c87f0: 7465 6779 0a20 202d 2068 6967 685f 6469  tegy.  - high_di
│ │ │ +001c8800: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ +001c8810: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +001c8820: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ +001c8830: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e    - mount_option
│ │ │ +001c8840: 5f76 6172 5f74 6d70 5f6e 6f73 7569 640a  _var_tmp_nosuid.
│ │ │ +001c8850: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ +001c8860: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741  eded..- name: 'A
│ │ │ +001c8870: 6464 206e 6f73 7569 6420 4f70 7469 6f6e  dd nosuid Option
│ │ │ +001c8880: 2074 6f20 2f76 6172 2f74 6d70 3a20 456e   to /var/tmp: En
│ │ │ +001c8890: 7375 7265 202f 7661 722f 746d 7020 6973  sure /var/tmp is
│ │ │ +001c88a0: 206d 6f75 6e74 6564 2077 6974 6820 6e6f   mounted with no
│ │ │ +001c88b0: 7375 6964 206f 7074 696f 6e27 0a20 2061  suid option'.  a
│ │ │ +001c88c0: 6e73 6962 6c65 2e70 6f73 6978 2e6d 6f75  nsible.posix.mou
│ │ │ +001c88d0: 6e74 3a0a 2020 2020 7061 7468 3a20 2f76  nt:.    path: /v
│ │ │ +001c88e0: 6172 2f74 6d70 0a20 2020 2073 7263 3a20  ar/tmp.    src: 
│ │ │ +001c88f0: 277b 7b20 6d6f 756e 745f 696e 666f 2e73  '{{ mount_info.s
│ │ │ +001c8900: 6f75 7263 6520 7c20 6465 6661 756c 7428  ource | default(
│ │ │ +001c8910: 2727 2727 2920 7d7d 270a 2020 2020 6f70  '''') }}'.    op
│ │ │ +001c8920: 7473 3a20 277b 7b20 6d6f 756e 745f 696e  ts: '{{ mount_in
│ │ │ +001c8930: 666f 2e6f 7074 696f 6e73 207c 2064 6566  fo.options | def
│ │ │ +001c8940: 6175 6c74 2827 2727 2729 207d 7d27 0a20  ault('''') }}'. 
│ │ │ +001c8950: 2020 2073 7461 7465 3a20 6d6f 756e 7465     state: mounte
│ │ │ +001c8960: 640a 2020 2020 6673 7479 7065 3a20 277b  d.    fstype: '{
│ │ │ +001c8970: 7b20 6d6f 756e 745f 696e 666f 2e66 7374  { mount_info.fst
│ │ │ +001c8980: 7970 6520 7c20 6465 6661 756c 7428 2727  ype | default(''
│ │ │ +001c8990: 2727 2920 7d7d 270a 2020 7265 6769 7374  '') }}'.  regist
│ │ │ +001c89a0: 6572 3a20 6d6f 756e 745f 7265 7375 6c74  er: mount_result
│ │ │ +001c89b0: 0a20 2066 6169 6c65 645f 7768 656e 3a0a  .  failed_when:.
│ │ │ +001c89c0: 2020 2d20 6d6f 756e 745f 7265 7375 6c74    - mount_result
│ │ │ +001c89d0: 2069 7320 6661 696c 6564 0a20 202d 2027   is failed.  - '
│ │ │ +001c89e0: 2727 7461 7267 6574 2069 7320 6275 7379  ''target is busy
│ │ │ +001c89f0: 2727 206e 6f74 2069 6e20 286d 6f75 6e74  '' not in (mount
│ │ │ +001c8a00: 5f72 6573 756c 742e 6d73 6720 7c20 6465  _result.msg | de
│ │ │ +001c8a10: 6661 756c 7428 2727 2727 2929 270a 2020  fault(''''))'.  
│ │ │ +001c8a20: 2d20 2727 2761 6c72 6561 6479 206d 6f75  - '''already mou
│ │ │ +001c8a30: 6e74 6564 2727 206e 6f74 2069 6e20 286d  nted'' not in (m
│ │ │ +001c8a40: 6f75 6e74 5f72 6573 756c 742e 6d73 6720  ount_result.msg 
│ │ │ +001c8a50: 7c20 6465 6661 756c 7428 2727 2727 2929  | default(''''))
│ │ │ +001c8a60: 270a 2020 7768 656e 3a0a 2020 2d20 2820  '.  when:.  - ( 
│ │ │ +001c8a70: 6e6f 7420 2820 226b 6572 6e65 6c22 2069  not ( "kernel" i
│ │ │ +001c8a80: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001c8a90: 7061 636b 6167 6573 2061 6e64 2022 626f  packages and "bo
│ │ │ +001c8aa0: 6f74 6322 2069 6e20 616e 7369 626c 655f  otc" in ansible_
│ │ │ +001c8ab0: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ +001c8ac0: 2020 2061 6e64 206e 6f74 2022 6f70 656e     and not "open
│ │ │ +001c8ad0: 7368 6966 742d 6b75 6265 6c65 7422 2069  shift-kubelet" i
│ │ │ +001c8ae0: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001c8af0: 7061 636b 6167 6573 2061 6e64 2022 6f73  packages and "os
│ │ │ +001c8b00: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ +001c8b10: 5f70 726f 635f 636d 646c 696e 650a 2020  _proc_cmdline.  
│ │ │ +001c8b20: 2020 2920 616e 6420 6e6f 7420 2820 616e    ) and not ( an
│ │ │ +001c8b30: 7369 626c 655f 7669 7274 7561 6c69 7a61  sible_virtualiza
│ │ │ +001c8b40: 7469 6f6e 5f74 7970 6520 696e 205b 2264  tion_type in ["d
│ │ │ +001c8b50: 6f63 6b65 7222 2c20 226c 7863 222c 2022  ocker", "lxc", "
│ │ │ +001c8b60: 6f70 656e 767a 222c 2022 706f 646d 616e  openvz", "podman
│ │ │ +001c8b70: 222c 0a20 2020 2022 636f 6e74 6169 6e65  ",.    "containe
│ │ │ +001c8b80: 7222 5d20 2920 290a 2020 2d20 2722 2f76  r"] ) ).  - '"/v
│ │ │ +001c8b90: 6172 2f74 6d70 2220 696e 2061 6e73 6962  ar/tmp" in ansib
│ │ │ +001c8ba0: 6c65 5f6d 6f75 6e74 7320 7c20 6d61 7028  le_mounts | map(
│ │ │ +001c8bb0: 6174 7472 6962 7574 653d 226d 6f75 6e74  attribute="mount
│ │ │ +001c8bc0: 2229 207c 206c 6973 7427 0a20 202d 206d  ") | list'.  - m
│ │ │ +001c8bd0: 6f75 6e74 5f69 6e66 6f20 6973 2064 6566  ount_info is def
│ │ │ +001c8be0: 696e 6564 0a20 202d 2028 6465 7669 6365  ined.  - (device
│ │ │ +001c8bf0: 5f6e 616d 652e 7374 646f 7574 2069 7320  _name.stdout is 
│ │ │ +001c8c00: 6465 6669 6e65 6420 616e 6420 2864 6576  defined and (dev
│ │ │ +001c8c10: 6963 655f 6e61 6d65 2e73 7464 6f75 7420  ice_name.stdout 
│ │ │ +001c8c20: 7c20 6c65 6e67 7468 2026 6774 3b20 3029  | length > 0)
│ │ │ +001c8c30: 2920 6f72 2028 222d 2d66 7374 6162 220a  ) or ("--fstab".
│ │ │ +001c8c40: 2020 2020 7c20 6c65 6e67 7468 203d 3d20      | length == 
│ │ │ +001c8c50: 3029 0a20 2074 6167 733a 0a20 202d 2063  0).  tags:.  - c
│ │ │ +001c8c60: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ +001c8c70: 790a 2020 2d20 6869 6768 5f64 6973 7275  y.  - high_disru
│ │ │ +001c8c80: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f  ption.  - low_co
│ │ │ +001c8c90: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ +001c8ca0: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ +001c8cb0: 206d 6f75 6e74 5f6f 7074 696f 6e5f 7661   mount_option_va
│ │ │ +001c8cc0: 725f 746d 705f 6e6f 7375 6964 0a20 202d  r_tmp_nosuid.  -
│ │ │ +001c8cd0: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ +001c8ce0: 640a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  d.
< │ │ │ +001c8cf0: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Sh │ │ │ +001c8da0: 656c 6c20 7363 7269 7074 20e2 87b2 3c2f ell script ...
Comp │ │ │ +001c7930: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +001c7940: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ +001c7960: 3c2f 7468 3e3c 7464 3e68 6967 683c 2f74 high
R │ │ │ +001c7980: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +001c7990: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ +001c79b0: 2f74 683e 3c74 643e 636f 6e66 6967 7572 /th>configur │ │ │ +001c79c0: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
< │ │ │ +001c8e50: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
# Remediation 
│ │ │ +001c8e70: 6973 2061 7070 6c69 6361 626c 6520 6f6e  is applicable on
│ │ │ +001c8e80: 6c79 2069 6e20 6365 7274 6169 6e20 706c  ly in certain pl
│ │ │ +001c8e90: 6174 666f 726d 730a 6966 2028 2021 2028  atforms.if ( ! (
│ │ │ +001c8ea0: 207b 2072 706d 202d 2d71 7569 6574 202d   { rpm --quiet -
│ │ │ +001c8eb0: 7120 6b65 726e 656c 203b 7d20 2661 6d70  q kernel ;} &
│ │ │ +001c8ec0: 3b26 616d 703b 207b 2072 706d 202d 2d71  ;& { rpm --q
│ │ │ +001c8ed0: 7569 6574 202d 7120 626f 6f74 6320 3b7d  uiet -q bootc ;}
│ │ │ +001c8ee0: 2026 616d 703b 2661 6d70 3b20 7b20 2120   && { ! 
│ │ │ +001c8ef0: 7270 6d20 2d2d 7175 6965 7420 2d71 206f  rpm --quiet -q o
│ │ │ +001c8f00: 7065 6e73 6869 6674 2d6b 7562 656c 6574  penshift-kubelet
│ │ │ +001c8f10: 203b 7d20 2661 6d70 3b26 616d 703b 2028   ;} && (
│ │ │ +001c8f20: 5b20 2d66 202f 7275 6e2f 6f73 7472 6565  [ -f /run/ostree
│ │ │ +001c8f30: 2d62 6f6f 7465 6420 5d20 7c7c 205b 202d  -booted ] || [ -
│ │ │ +001c8f40: 4c20 2f6f 7374 7265 6520 5d29 2029 2026  L /ostree ]) ) &
│ │ │ +001c8f50: 616d 703b 2661 6d70 3b20 2120 2820 5b20  amp;& ! ( [ 
│ │ │ +001c8f60: 2d66 202f 2e64 6f63 6b65 7265 6e76 205d  -f /.dockerenv ]
│ │ │ +001c8f70: 207c 7c20 5b20 2d66 202f 7275 6e2f 2e63   || [ -f /run/.c
│ │ │ +001c8f80: 6f6e 7461 696e 6572 656e 7620 5d20 2920  ontainerenv ] ) 
│ │ │ +001c8f90: 2920 2661 6d70 3b26 616d 703b 207b 2028  ) && { (
│ │ │ +001c8fa0: 2066 696e 646d 6e74 202d 2d6b 6572 6e65   findmnt --kerne
│ │ │ +001c8fb0: 6c20 222f 7661 722f 746d 7022 2026 6774  l "/var/tmp" >
│ │ │ +001c8fc0: 3b20 2f64 6576 2f6e 756c 6c20 7c7c 2066  ; /dev/null || f
│ │ │ +001c8fd0: 696e 646d 6e74 202d 2d66 7374 6162 2022  indmnt --fstab "
│ │ │ +001c8fe0: 2f76 6172 2f74 6d70 2220 2667 743b 202f  /var/tmp" > /
│ │ │ +001c8ff0: 6465 762f 6e75 6c6c 2029 3b20 7d3b 2074  dev/null ); }; t
│ │ │ +001c9000: 6865 6e0a 0a66 756e 6374 696f 6e20 7065  hen..function pe
│ │ │ +001c9010: 7266 6f72 6d5f 7265 6d65 6469 6174 696f  rform_remediatio
│ │ │ +001c9020: 6e20 7b0a 0a20 2020 200a 2020 2020 2020  n {..    .      
│ │ │ +001c9030: 2020 2320 7468 6520 6d6f 756e 7420 706f    # the mount po
│ │ │ +001c9040: 696e 7420 2f76 6172 2f74 6d70 2068 6173  int /var/tmp has
│ │ │ +001c9050: 2074 6f20 6265 2064 6566 696e 6564 2069   to be defined i
│ │ │ +001c9060: 6e20 2f65 7463 2f66 7374 6162 0a20 2020  n /etc/fstab.   
│ │ │ +001c9070: 2020 2020 2023 2062 6566 6f72 6520 7468       # before th
│ │ │ +001c9080: 6973 2072 656d 6564 6961 7469 6f6e 2063  is remediation c
│ │ │ +001c9090: 616e 2062 6520 6578 6563 7574 6564 2e20  an be executed. 
│ │ │ +001c90a0: 496e 2063 6173 6520 6974 2069 7320 6e6f  In case it is no
│ │ │ +001c90b0: 7420 6465 6669 6e65 642c 2074 6865 0a20  t defined, the. 
│ │ │ +001c90c0: 2020 2020 2020 2023 2072 656d 6564 6961         # remedia
│ │ │ +001c90d0: 7469 6f6e 2061 626f 7274 7320 616e 6420  tion aborts and 
│ │ │ +001c90e0: 6e6f 2063 6861 6e67 6573 2072 6567 6172  no changes regar
│ │ │ +001c90f0: 6469 6e67 2074 6865 206d 6f75 6e74 2070  ding the mount p
│ │ │ +001c9100: 6f69 6e74 2061 7265 2064 6f6e 652e 0a20  oint are done.. 
│ │ │ +001c9110: 2020 2020 2020 206d 6f75 6e74 5f70 6f69         mount_poi
│ │ │ +001c9120: 6e74 5f6d 6174 6368 5f72 6567 6578 703d  nt_match_regexp=
│ │ │ +001c9130: 2224 2870 7269 6e74 6620 225e 5b5b 3a73  "$(printf "^[[:s
│ │ │ +001c9140: 7061 6365 3a5d 5d2a 5b5e 235d 2e2a 5b5b  pace:]]*[^#].*[[
│ │ │ +001c9150: 3a73 7061 6365 3a5d 5d25 735b 5b3a 7370  :space:]]%s[[:sp
│ │ │ +001c9160: 6163 653a 5d5d 2220 222f 7661 722f 746d  ace:]]" "/var/tm
│ │ │ +001c9170: 7022 2922 0a0a 2020 2020 6772 6570 2022  p")"..    grep "
│ │ │ +001c9180: 246d 6f75 6e74 5f70 6f69 6e74 5f6d 6174  $mount_point_mat
│ │ │ +001c9190: 6368 5f72 6567 6578 7022 202d 7120 2f65  ch_regexp" -q /e
│ │ │ +001c91a0: 7463 2f66 7374 6162 205c 0a20 2020 2020  tc/fstab \.     
│ │ │ +001c91b0: 2020 207c 7c20 7b20 6563 686f 2022 5468     || { echo "Th
│ │ │ +001c91c0: 6520 6d6f 756e 7420 706f 696e 7420 272f  e mount point '/
│ │ │ +001c91d0: 7661 722f 746d 7027 2069 7320 6e6f 7420  var/tmp' is not 
│ │ │ +001c91e0: 6576 656e 2069 6e20 2f65 7463 2f66 7374  even in /etc/fst
│ │ │ +001c91f0: 6162 2c20 736f 2077 6520 6361 6e27 7420  ab, so we can't 
│ │ │ +001c9200: 7365 7420 7570 206d 6f75 6e74 206f 7074  set up mount opt
│ │ │ +001c9210: 696f 6e73 2220 2667 743b 2661 6d70 3b32  ions" >&2
│ │ │ +001c9220: 3b0a 2020 2020 2020 2020 2020 2020 2020  ;.              
│ │ │ +001c9230: 2020 6563 686f 2022 4e6f 7420 7265 6d65    echo "Not reme
│ │ │ +001c9240: 6469 6174 696e 672c 2062 6563 6175 7365  diating, because
│ │ │ +001c9250: 2074 6865 7265 2069 7320 6e6f 2072 6563   there is no rec
│ │ │ +001c9260: 6f72 6420 6f66 202f 7661 722f 746d 7020  ord of /var/tmp 
│ │ │ +001c9270: 696e 202f 6574 632f 6673 7461 6222 2026  in /etc/fstab" &
│ │ │ +001c9280: 6774 3b26 616d 703b 323b 2072 6574 7572  gt;&2; retur
│ │ │ +001c9290: 6e20 313b 207d 0a20 2020 200a 0a0a 2020  n 1; }.    ...  
│ │ │ +001c92a0: 2020 6d6f 756e 745f 706f 696e 745f 6d61    mount_point_ma
│ │ │ +001c92b0: 7463 685f 7265 6765 7870 3d22 2428 7072  tch_regexp="$(pr
│ │ │ +001c92c0: 696e 7466 2022 5e5b 5b3a 7370 6163 653a  intf "^[[:space:
│ │ │ +001c92d0: 5d5d 2a5b 5e23 5d2e 2a5b 5b3a 7370 6163  ]]*[^#].*[[:spac
│ │ │ +001c92e0: 653a 5d5d 2573 5b5b 3a73 7061 6365 3a5d  e:]]%s[[:space:]
│ │ │ +001c92f0: 5d22 202f 7661 722f 746d 7029 220a 0a20  ]" /var/tmp)".. 
│ │ │ +001c9300: 2020 2023 2049 6620 7468 6520 6d6f 756e     # If the moun
│ │ │ +001c9310: 7420 706f 696e 7420 6973 206e 6f74 2069  t point is not i
│ │ │ +001c9320: 6e20 2f65 7463 2f66 7374 6162 2c20 6765  n /etc/fstab, ge
│ │ │ +001c9330: 7420 7072 6576 696f 7573 206d 6f75 6e74  t previous mount
│ │ │ +001c9340: 206f 7074 696f 6e73 2066 726f 6d20 2f65   options from /e
│ │ │ +001c9350: 7463 2f6d 7461 620a 2020 2020 6966 2021  tc/mtab.    if !
│ │ │ +001c9360: 2067 7265 7020 2d71 2022 246d 6f75 6e74   grep -q "$mount
│ │ │ +001c9370: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ +001c9380: 6578 7022 202f 6574 632f 6673 7461 623b  exp" /etc/fstab;
│ │ │ +001c9390: 2074 6865 6e0a 2020 2020 2020 2020 2320   then.        # 
│ │ │ +001c93a0: 7275 6e74 696d 6520 6f70 7473 2077 6974  runtime opts wit
│ │ │ +001c93b0: 686f 7574 2073 6f6d 6520 6175 746f 6d61  hout some automa
│ │ │ +001c93c0: 7469 6320 6b65 726e 656c 2f75 7365 7273  tic kernel/users
│ │ │ +001c93d0: 7061 6365 2d61 6464 6564 2064 6566 6175  pace-added defau
│ │ │ +001c93e0: 6c74 730a 2020 2020 2020 2020 7072 6576  lts.        prev
│ │ │ +001c93f0: 696f 7573 5f6d 6f75 6e74 5f6f 7074 733d  ious_mount_opts=
│ │ │ +001c9400: 2428 6772 6570 2022 246d 6f75 6e74 5f70  $(grep "$mount_p
│ │ │ +001c9410: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ +001c9420: 7022 202f 6574 632f 6d74 6162 207c 2068  p" /etc/mtab | h
│ │ │ +001c9430: 6561 6420 2d31 207c 2020 6177 6b20 277b  ead -1 |  awk '{
│ │ │ +001c9440: 7072 696e 7420 2434 7d27 205c 0a20 2020  print $4}' \.   
│ │ │ +001c9450: 2020 2020 2020 2020 2020 2020 2020 2020                  
│ │ │ +001c9460: 207c 2073 6564 202d 4520 2273 2f28 7277   | sed -E "s/(rw
│ │ │ +001c9470: 7c64 6566 6175 6c74 737c 7365 636c 6162  |defaults|seclab
│ │ │ +001c9480: 656c 7c6e 6f73 7569 6429 282c 7c24 292f  el|nosuid)(,|$)/
│ │ │ +001c9490: 2f67 3b73 2f2c 242f 2f22 290a 2020 2020  /g;s/,$//").    
│ │ │ +001c94a0: 2020 2020 5b20 2224 7072 6576 696f 7573      [ "$previous
│ │ │ +001c94b0: 5f6d 6f75 6e74 5f6f 7074 7322 205d 2026  _mount_opts" ] &
│ │ │ +001c94c0: 616d 703b 2661 6d70 3b20 7072 6576 696f  amp;& previo
│ │ │ +001c94d0: 7573 5f6d 6f75 6e74 5f6f 7074 732b 3d22  us_mount_opts+="
│ │ │ +001c94e0: 2c22 0a20 2020 2020 2020 2023 2049 6e20  ,".        # In 
│ │ │ +001c94f0: 6973 6f39 3636 3020 6669 6c65 7379 7374  iso9660 filesyst
│ │ │ +001c9500: 656d 7320 6d74 6162 2063 6f75 6c64 2064  ems mtab could d
│ │ │ +001c9510: 6573 6372 6962 6520 6120 2262 6c6f 636b  escribe a "block
│ │ │ +001c9520: 7369 7a65 2220 7661 6c75 652c 2074 6869  size" value, thi
│ │ │ +001c9530: 7320 7368 6f75 6c64 2062 6520 7265 666c  s should be refl
│ │ │ +001c9540: 6563 7465 6420 696e 0a20 2020 2020 2020  ected in.       
│ │ │ +001c9550: 2023 2066 7374 6162 2061 7320 2262 6c6f   # fstab as "blo
│ │ │ +001c9560: 636b 222e 2020 5468 6520 6e65 7874 2076  ck".  The next v
│ │ │ +001c9570: 6172 6961 626c 6520 6973 2074 6f20 7361  ariable is to sa
│ │ │ +001c9580: 7469 7366 7920 7368 656c 6c63 6865 636b  tisfy shellcheck
│ │ │ +001c9590: 2053 4332 3035 302e 0a20 2020 2020 2020   SC2050..       
│ │ │ +001c95a0: 2066 735f 7479 7065 3d22 220a 2020 2020   fs_type="".    
│ │ │ +001c95b0: 2020 2020 6966 205b 2020 2224 6673 5f74      if [  "$fs_t
│ │ │ +001c95c0: 7970 6522 203d 3d20 2269 736f 3936 3630  ype" == "iso9660
│ │ │ +001c95d0: 2220 5d20 3b20 7468 656e 0a20 2020 2020  " ] ; then.     
│ │ │ +001c95e0: 2020 2020 2020 2070 7265 7669 6f75 735f         previous_
│ │ │ +001c95f0: 6d6f 756e 745f 6f70 7473 3d24 2873 6564  mount_opts=$(sed
│ │ │ +001c9600: 2027 732f 626c 6f63 6b73 697a 653d 2f62   's/blocksize=/b
│ │ │ +001c9610: 6c6f 636b 3d2f 2720 266c 743b 266c 743b  lock=/' <<
│ │ │ +001c9620: 266c 743b 2022 2470 7265 7669 6f75 735f  < "$previous_
│ │ │ +001c9630: 6d6f 756e 745f 6f70 7473 2229 0a20 2020  mount_opts").   
│ │ │ +001c9640: 2020 2020 2066 690a 2020 2020 2020 2020       fi.        
│ │ │ +001c9650: 6563 686f 2022 202f 7661 722f 746d 7020  echo " /var/tmp 
│ │ │ +001c9660: 2064 6566 6175 6c74 732c 247b 7072 6576   defaults,${prev
│ │ │ +001c9670: 696f 7573 5f6d 6f75 6e74 5f6f 7074 737d  ious_mount_opts}
│ │ │ +001c9680: 6e6f 7375 6964 2030 2030 2220 2667 743b  nosuid 0 0" >
│ │ │ +001c9690: 2667 743b 202f 6574 632f 6673 7461 620a  > /etc/fstab.
│ │ │ +001c96a0: 2020 2020 2320 4966 2074 6865 206d 6f75      # If the mou
│ │ │ +001c96b0: 6e74 5f6f 7074 206f 7074 696f 6e20 6973  nt_opt option is
│ │ │ +001c96c0: 206e 6f74 2061 6c72 6561 6479 2069 6e20   not already in 
│ │ │ +001c96d0: 7468 6520 6d6f 756e 7420 706f 696e 7427  the mount point'
│ │ │ +001c96e0: 7320 2f65 7463 2f66 7374 6162 2065 6e74  s /etc/fstab ent
│ │ │ +001c96f0: 7279 2c20 6164 6420 6974 0a20 2020 2065  ry, add it.    e
│ │ │ +001c9700: 6c69 6620 2120 6772 6570 2022 246d 6f75  lif ! grep "$mou
│ │ │ +001c9710: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ +001c9720: 6567 6578 7022 202f 6574 632f 6673 7461  egexp" /etc/fsta
│ │ │ +001c9730: 6220 7c20 6772 6570 202d 7120 226e 6f73  b | grep -q "nos
│ │ │ +001c9740: 7569 6422 3b20 7468 656e 0a20 2020 2020  uid"; then.     
│ │ │ +001c9750: 2020 2070 7265 7669 6f75 735f 6d6f 756e     previous_moun
│ │ │ +001c9760: 745f 6f70 7473 3d24 2867 7265 7020 2224  t_opts=$(grep "$
│ │ │ +001c9770: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ +001c9780: 685f 7265 6765 7870 2220 2f65 7463 2f66  h_regexp" /etc/f
│ │ │ +001c9790: 7374 6162 207c 2061 776b 2027 7b70 7269  stab | awk '{pri
│ │ │ +001c97a0: 6e74 2024 347d 2729 0a20 2020 2020 2020  nt $4}').       
│ │ │ +001c97b0: 2073 6564 202d 6920 2273 7c5c 2824 7b6d   sed -i "s|\(${m
│ │ │ +001c97c0: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ +001c97d0: 5f72 6567 6578 707d 2e2a 247b 7072 6576  _regexp}.*${prev
│ │ │ +001c97e0: 696f 7573 5f6d 6f75 6e74 5f6f 7074 737d  ious_mount_opts}
│ │ │ +001c97f0: 5c29 7c5c 312c 6e6f 7375 6964 7c22 202f  \)|\1,nosuid|" /
│ │ │ +001c9800: 6574 632f 6673 7461 620a 2020 2020 6669  etc/fstab.    fi
│ │ │ +001c9810: 0a0a 0a20 2020 2069 6620 6d6b 6469 7220  ...    if mkdir 
│ │ │ +001c9820: 2d70 2022 2f76 6172 2f74 6d70 223b 2074  -p "/var/tmp"; t
│ │ │ +001c9830: 6865 6e0a 2020 2020 2020 2020 6966 206d  hen.        if m
│ │ │ +001c9840: 6f75 6e74 706f 696e 7420 2d71 2022 2f76  ountpoint -q "/v
│ │ │ +001c9850: 6172 2f74 6d70 223b 2074 6865 6e0a 2020  ar/tmp"; then.  
│ │ │ +001c9860: 2020 2020 2020 2020 2020 6d6f 756e 7420            mount 
│ │ │ +001c9870: 2d6f 2072 656d 6f75 6e74 202d 2d74 6172  -o remount --tar
│ │ │ +001c9880: 6765 7420 222f 7661 722f 746d 7022 0a20  get "/var/tmp". 
│ │ │ +001c9890: 2020 2020 2020 2066 690a 2020 2020 6669         fi.    fi
│ │ │ +001c98a0: 0a7d 0a0a 7065 7266 6f72 6d5f 7265 6d65  .}..perform_reme
│ │ │ +001c98b0: 6469 6174 696f 6e0a 0a65 6c73 650a 2020  diation..else.  
│ │ │ +001c98c0: 2020 2667 743b 2661 6d70 3b32 2065 6368    >&2 ech
│ │ │ +001c98d0: 6f20 2752 656d 6564 6961 7469 6f6e 2069  o 'Remediation i
│ │ │ +001c98e0: 7320 6e6f 7420 6170 706c 6963 6162 6c65  s not applicable
│ │ │ +001c98f0: 2c20 6e6f 7468 696e 6720 7761 7320 646f  , nothing was do
│ │ │ +001c9900: 6e65 270a 6669 0a3c 2f63 6f64 653e 3c2f  ne'.fi.Remediati
│ │ │ +001c99c0: 6f6e 2041 6e61 636f 6e64 6120 736e 6970  on Anaconda snip
│ │ │ +001c99d0: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c  pet ...
< │ │ │ +001c99e0: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +001c99f0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +001c9a00: 7365 2220 6964 3d22 6964 3530 3222 3e3c se" id="id502">< │ │ │ +001c9a10: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +001c9a20: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +001c9a30: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +001c9a40: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +001c9a50: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >
Disruption:< │ │ │ +001c9aa0: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ +001c9ad0: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy: │ │ │ +001c9af0: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
│ │ │ +001c8e30: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +001c8e40: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Complex │ │ │ +001c9a60: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ +001c9a70: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
high
Rebo │ │ │ +001c9ab0: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +001c9ac0: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
enable
.part /v │ │ │ +001c9b10: 6172 2f74 6d70 202d 2d6d 6f75 6e74 6f70 ar/tmp --mountop │ │ │ +001c9b20: 7469 6f6e 733d 226e 6f73 7569 6422 0a3c tions="nosuid".< │ │ │ 001c9b30: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469 /code>
Remedia │ │ │ -001d56a0: 7469 6f6e 204f 5342 7569 6c64 2042 6c75 tion OSBuild Blu │ │ │ -001d56b0: 6570 7269 6e74 2073 6e69 7070 6574 20e2 eprint snippet . │ │ │ -001d56c0: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
<
│ │ │ -001d5700: 636f 6465 3e0a 5b5b 7061 636b 6167 6573  code>.[[packages
│ │ │ -001d5710: 5d5d 0a6e 616d 6520 3d20 226c 6962 7365  ]].name = "libse
│ │ │ -001d5720: 6c69 6e75 7822 0a76 6572 7369 6f6e 203d  linux".version =
│ │ │ -001d5730: 2022 2a22 0a3c 2f63 6f64 653e 3c2f 7072   "*".
Remediation │ │ │ -001d57f0: 2041 6e61 636f 6e64 6120 736e 6970 7065 Anaconda snippe │ │ │ -001d5800: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ -001d5880: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ -001d5890: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ -001d58b0: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ -001d58c0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ -001d58e0: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ -001d5900: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:enable
<
│ │ │ -001d5930: 636f 6465 3e0a 7061 636b 6167 6520 2d2d  code>.package --
│ │ │ -001d5940: 6164 643d 6c69 6273 656c 696e 7578 0a3c  add=libselinux.<
│ │ │ -001d5950: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ -001d5a00: 656d 6564 6961 7469 6f6e 2050 7570 7065 emediation Puppe │ │ │ -001d5a10: 7420 736e 6970 7065 7420 e287 b23c 2f61 t snippet ...
< │ │ │ -001d5ab0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -001d5ac0: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ -001d5b10: 3c74 723e 3c74 683e 5374 7261 7465 6779
inc
│ │ │ -001d5b50: 6c75 6465 2069 6e73 7461 6c6c 5f6c 6962  lude install_lib
│ │ │ -001d5b60: 7365 6c69 6e75 780a 0a63 6c61 7373 2069  selinux..class i
│ │ │ -001d5b70: 6e73 7461 6c6c 5f6c 6962 7365 6c69 6e75  nstall_libselinu
│ │ │ -001d5b80: 7820 7b0a 2020 7061 636b 6167 6520 7b20  x {.  package { 
│ │ │ -001d5b90: 276c 6962 7365 6c69 6e75 7827 3a0a 2020  'libselinux':.  
│ │ │ -001d5ba0: 2020 656e 7375 7265 203d 2667 743b 2027    ensure => '
│ │ │ -001d5bb0: 696e 7374 616c 6c65 6427 2c0a 2020 7d0a  installed',.  }.
│ │ │ -001d5bc0: 7d0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  }.
< │ │ │ -001d5bd0: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation An │ │ │ -001d5c80: 7369 626c 6520 736e 6970 7065 7420 e287 sible snippet .. │ │ │ -001d5c90: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
C │ │ │ -001d5aa0: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -001d5ad0: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ -001d5ae0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -001d5b20: 3a3c 2f74 683e 3c74 643e 656e 6162 6c65 :enable │ │ │ -001d5b30: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
< │ │ │ -001d5d10: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -001d5d30: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -001d5d80: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
- name: Gather 
│ │ │ -001d5dd0: 7468 6520 7061 636b 6167 6520 6661 6374  the package fact
│ │ │ -001d5de0: 730a 2020 7061 636b 6167 655f 6661 6374  s.  package_fact
│ │ │ -001d5df0: 733a 0a20 2020 206d 616e 6167 6572 3a20  s:.    manager: 
│ │ │ -001d5e00: 6175 746f 0a20 2074 6167 733a 0a20 202d  auto.  tags:.  -
│ │ │ -001d5e10: 2050 4349 2d44 5353 7634 2d31 2e32 0a20   PCI-DSSv4-1.2. 
│ │ │ -001d5e20: 202d 2050 4349 2d44 5353 7634 2d31 2e32   - PCI-DSSv4-1.2
│ │ │ -001d5e30: 2e36 0a20 202d 2065 6e61 626c 655f 7374  .6.  - enable_st
│ │ │ -001d5e40: 7261 7465 6779 0a20 202d 2068 6967 685f  rategy.  - high_
│ │ │ -001d5e50: 7365 7665 7269 7479 0a20 202d 206c 6f77  severity.  - low
│ │ │ -001d5e60: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ -001d5e70: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ -001d5e80: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ -001d5e90: 6465 640a 2020 2d20 7061 636b 6167 655f  ded.  - package_
│ │ │ -001d5ea0: 6c69 6273 656c 696e 7578 5f69 6e73 7461  libselinux_insta
│ │ │ -001d5eb0: 6c6c 6564 0a0a 2d20 6e61 6d65 3a20 456e  lled..- name: En
│ │ │ -001d5ec0: 7375 7265 206c 6962 7365 6c69 6e75 7820  sure libselinux 
│ │ │ -001d5ed0: 6973 2069 6e73 7461 6c6c 6564 0a20 2061  is installed.  a
│ │ │ -001d5ee0: 6e73 6962 6c65 2e62 7569 6c74 696e 2e70  nsible.builtin.p
│ │ │ -001d5ef0: 6163 6b61 6765 3a0a 2020 2020 6e61 6d65  ackage:.    name
│ │ │ -001d5f00: 3a20 6c69 6273 656c 696e 7578 0a20 2020  : libselinux.   
│ │ │ -001d5f10: 2073 7461 7465 3a20 7072 6573 656e 740a   state: present.
│ │ │ -001d5f20: 2020 7768 656e 3a20 2722 6b65 726e 656c    when: '"kernel
│ │ │ -001d5f30: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001d5f40: 7473 2e70 6163 6b61 6765 7327 0a20 2074  ts.packages'.  t
│ │ │ -001d5f50: 6167 733a 0a20 202d 2050 4349 2d44 5353  ags:.  - PCI-DSS
│ │ │ -001d5f60: 7634 2d31 2e32 0a20 202d 2050 4349 2d44  v4-1.2.  - PCI-D
│ │ │ -001d5f70: 5353 7634 2d31 2e32 2e36 0a20 202d 2065  SSv4-1.2.6.  - e
│ │ │ -001d5f80: 6e61 626c 655f 7374 7261 7465 6779 0a20  nable_strategy. 
│ │ │ -001d5f90: 202d 2068 6967 685f 7365 7665 7269 7479   - high_severity
│ │ │ -001d5fa0: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ -001d5fb0: 6974 790a 2020 2d20 6c6f 775f 6469 7372  ity.  - low_disr
│ │ │ -001d5fc0: 7570 7469 6f6e 0a20 202d 206e 6f5f 7265  uption.  - no_re
│ │ │ -001d5fd0: 626f 6f74 5f6e 6565 6465 640a 2020 2d20  boot_needed.  - 
│ │ │ -001d5fe0: 7061 636b 6167 655f 6c69 6273 656c 696e  package_libselin
│ │ │ -001d5ff0: 7578 5f69 6e73 7461 6c6c 6564 0a3c 2f63  ux_installed.
│ │ │ -001d6010: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ -001d60b0: 6564 6961 7469 6f6e 2053 6865 6c6c 2073 ediation Shell s │ │ │ -001d60c0: 6372 6970 7420 e287 b23c 2f61 3e3c 6272 cript ...
low
Disr │ │ │ -001d5d40: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -001d5d50: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ -001d5d90: 7465 6779 3a3c 2f74 683e 3c74 643e 656e tegy:en │ │ │ -001d5da0: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
│ │ │ -001d6170: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ -001d6190: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ -001d61c0: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ -001d6150: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ -001d6160: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ -001d6180: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ -001d61a0: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -001d61b0: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:enable

# Remed │ │ │ -001d6200: 6961 7469 6f6e 2069 7320 6170 706c 6963 iation is applic │ │ │ -001d6210: 6162 6c65 206f 6e6c 7920 696e 2063 6572 able only in cer │ │ │ -001d6220: 7461 696e 2070 6c61 7466 6f72 6d73 0a69 tain platforms.i │ │ │ -001d6230: 6620 7270 6d20 2d2d 7175 6965 7420 2d71 f rpm --quiet -q │ │ │ -001d6240: 206b 6572 6e65 6c3b 2074 6865 6e0a 0a69 kernel; then..i │ │ │ -001d6250: 6620 2120 7270 6d20 2d71 202d 2d71 7569 f ! rpm -q --qui │ │ │ -001d6260: 6574 2022 6c69 6273 656c 696e 7578 2220 et "libselinux" │ │ │ -001d6270: 3b20 7468 656e 0a20 2020 2064 6e66 2069 ; then. dnf i │ │ │ -001d6280: 6e73 7461 6c6c 202d 7920 226c 6962 7365 nstall -y "libse │ │ │ -001d6290: 6c69 6e75 7822 0a66 690a 0a65 6c73 650a linux".fi..else. │ │ │ -001d62a0: 2020 2020 2667 743b 2661 6d70 3b32 2065 >&2 e │ │ │ -001d62b0: 6368 6f20 2752 656d 6564 6961 7469 6f6e cho 'Remediation │ │ │ -001d62c0: 2069 7320 6e6f 7420 6170 706c 6963 6162 is not applicab │ │ │ -001d62d0: 6c65 2c20 6e6f 7468 696e 6720 7761 7320 le, nothing was │ │ │ -001d62e0: 646f 6e65 270a 6669 0a3c 2f63 6f64 653e done'.fi. │ │ │ +001d56a0: 7469 6f6e 2041 6e73 6962 6c65 2073 6e69 tion Ansible sni │ │ │ +001d56b0: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ +001d56c0: 3c64 6976 2063 6c61 7373 3d22 7061 6e65

│ │ │ +001d56f0: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ +001d5760: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ +001d5780: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ +001d57b0: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy: │ │ │ +001d57d0: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
Comple │ │ │ +001d5740: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ +001d5750: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ +001d5790: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +001d57a0: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
enable
- name: │ │ │ +001d57f0: 4761 7468 6572 2074 6865 2070 6163 6b61 Gather the packa │ │ │ +001d5800: 6765 2066 6163 7473 0a20 2070 6163 6b61 ge facts. packa │ │ │ +001d5810: 6765 5f66 6163 7473 3a0a 2020 2020 6d61 ge_facts:. ma │ │ │ +001d5820: 6e61 6765 723a 2061 7574 6f0a 2020 7461 nager: auto. ta │ │ │ +001d5830: 6773 3a0a 2020 2d20 5043 492d 4453 5376 gs:. - PCI-DSSv │ │ │ +001d5840: 342d 312e 320a 2020 2d20 5043 492d 4453 4-1.2. - PCI-DS │ │ │ +001d5850: 5376 342d 312e 322e 360a 2020 2d20 656e Sv4-1.2.6. - en │ │ │ +001d5860: 6162 6c65 5f73 7472 6174 6567 790a 2020 able_strategy. │ │ │ +001d5870: 2d20 6869 6768 5f73 6576 6572 6974 790a - high_severity. │ │ │ +001d5880: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869 - low_complexi │ │ │ +001d5890: 7479 0a20 202d 206c 6f77 5f64 6973 7275 ty. - low_disru │ │ │ +001d58a0: 7074 696f 6e0a 2020 2d20 6e6f 5f72 6562 ption. - no_reb │ │ │ +001d58b0: 6f6f 745f 6e65 6564 6564 0a20 202d 2070 oot_needed. - p │ │ │ +001d58c0: 6163 6b61 6765 5f6c 6962 7365 6c69 6e75 ackage_libselinu │ │ │ +001d58d0: 785f 696e 7374 616c 6c65 640a 0a2d 206e x_installed..- n │ │ │ +001d58e0: 616d 653a 2045 6e73 7572 6520 6c69 6273 ame: Ensure libs │ │ │ +001d58f0: 656c 696e 7578 2069 7320 696e 7374 616c elinux is instal │ │ │ +001d5900: 6c65 640a 2020 616e 7369 626c 652e 6275 led. ansible.bu │ │ │ +001d5910: 696c 7469 6e2e 7061 636b 6167 653a 0a20 iltin.package:. │ │ │ +001d5920: 2020 206e 616d 653a 206c 6962 7365 6c69 name: libseli │ │ │ +001d5930: 6e75 780a 2020 2020 7374 6174 653a 2070 nux. state: p │ │ │ +001d5940: 7265 7365 6e74 0a20 2077 6865 6e3a 2027 resent. when: ' │ │ │ +001d5950: 226b 6572 6e65 6c22 2069 6e20 616e 7369 "kernel" in ansi │ │ │ +001d5960: 626c 655f 6661 6374 732e 7061 636b 6167 ble_facts.packag │ │ │ +001d5970: 6573 270a 2020 7461 6773 3a0a 2020 2d20 es'. tags:. - │ │ │ +001d5980: 5043 492d 4453 5376 342d 312e 320a 2020 PCI-DSSv4-1.2. │ │ │ +001d5990: 2d20 5043 492d 4453 5376 342d 312e 322e - PCI-DSSv4-1.2. │ │ │ +001d59a0: 360a 2020 2d20 656e 6162 6c65 5f73 7472 6. - enable_str │ │ │ +001d59b0: 6174 6567 790a 2020 2d20 6869 6768 5f73 ategy. - high_s │ │ │ +001d59c0: 6576 6572 6974 790a 2020 2d20 6c6f 775f everity. - low_ │ │ │ +001d59d0: 636f 6d70 6c65 7869 7479 0a20 202d 206c complexity. - l │ │ │ +001d59e0: 6f77 5f64 6973 7275 7074 696f 6e0a 2020 ow_disruption. │ │ │ +001d59f0: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564 - no_reboot_need │ │ │ +001d5a00: 6564 0a20 202d 2070 6163 6b61 6765 5f6c ed. - package_l │ │ │ +001d5a10: 6962 7365 6c69 6e75 785f 696e 7374 616c ibselinux_instal │ │ │ +001d5a20: 6c65 640a 3c2f 636f 6465 3e3c 2f70 7265 led.
Remediation │ │ │ +001d5ae0: 5075 7070 6574 2073 6e69 7070 6574 20e2 Puppet snippet . │ │ │ +001d5af0: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ +001d5b70: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +001d5b90: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ +001d5be0: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 < │ │ │ +001d5c10: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
include instal
│ │ │ +001d5c30: 6c5f 6c69 6273 656c 696e 7578 0a0a 636c  l_libselinux..cl
│ │ │ +001d5c40: 6173 7320 696e 7374 616c 6c5f 6c69 6273  ass install_libs
│ │ │ +001d5c50: 656c 696e 7578 207b 0a20 2070 6163 6b61  elinux {.  packa
│ │ │ +001d5c60: 6765 207b 2027 6c69 6273 656c 696e 7578  ge { 'libselinux
│ │ │ +001d5c70: 273a 0a20 2020 2065 6e73 7572 6520 3d26  ':.    ensure =&
│ │ │ +001d5c80: 6774 3b20 2769 6e73 7461 6c6c 6564 272c  gt; 'installed',
│ │ │ +001d5c90: 0a20 207d 0a7d 0a3c 2f63 6f64 653e 3c2f  .  }.}.Remediati
│ │ │ +001d5d50: 6f6e 204f 5342 7569 6c64 2042 6c75 6570  on OSBuild Bluep
│ │ │ +001d5d60: 7269 6e74 2073 6e69 7070 6574 20e2 87b2  rint snippet ...
│ │ │ +001d5d70: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61  
.[[packages]]
│ │ │ +001d5dc0: 0a6e 616d 6520 3d20 226c 6962 7365 6c69  .name = "libseli
│ │ │ +001d5dd0: 6e75 7822 0a76 6572 7369 6f6e 203d 2022  nux".version = "
│ │ │ +001d5de0: 2a22 0a3c 2f63 6f64 653e 3c2f 7072 653e  *".
│ │ │ +001d5df0: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation S │ │ │ +001d5ea0: 6865 6c6c 2073 6372 6970 7420 e287 b23c hell script ...< │ │ │ +001d5eb0: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
Complexity:< │ │ │ +001d5b80: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +001d5ba0: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ +001d5bf0: 6174 6567 793a 3c2f 7468 3e3c 7464 3e65 ategy:e │ │ │ +001d5c00: 6e61 626c 653c 2f74 643e 3c2f 7472 3e3c nable
< │ │ │ +001d5f80: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +001d5f90: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
#
│ │ │ +001d5fe0: 2052 656d 6564 6961 7469 6f6e 2069 7320   Remediation is 
│ │ │ +001d5ff0: 6170 706c 6963 6162 6c65 206f 6e6c 7920  applicable only 
│ │ │ +001d6000: 696e 2063 6572 7461 696e 2070 6c61 7466  in certain platf
│ │ │ +001d6010: 6f72 6d73 0a69 6620 7270 6d20 2d2d 7175  orms.if rpm --qu
│ │ │ +001d6020: 6965 7420 2d71 206b 6572 6e65 6c3b 2074  iet -q kernel; t
│ │ │ +001d6030: 6865 6e0a 0a69 6620 2120 7270 6d20 2d71  hen..if ! rpm -q
│ │ │ +001d6040: 202d 2d71 7569 6574 2022 6c69 6273 656c   --quiet "libsel
│ │ │ +001d6050: 696e 7578 2220 3b20 7468 656e 0a20 2020  inux" ; then.   
│ │ │ +001d6060: 2064 6e66 2069 6e73 7461 6c6c 202d 7920   dnf install -y 
│ │ │ +001d6070: 226c 6962 7365 6c69 6e75 7822 0a66 690a  "libselinux".fi.
│ │ │ +001d6080: 0a65 6c73 650a 2020 2020 2667 743b 2661  .else.    >&a
│ │ │ +001d6090: 6d70 3b32 2065 6368 6f20 2752 656d 6564  mp;2 echo 'Remed
│ │ │ +001d60a0: 6961 7469 6f6e 2069 7320 6e6f 7420 6170  iation is not ap
│ │ │ +001d60b0: 706c 6963 6162 6c65 2c20 6e6f 7468 696e  plicable, nothin
│ │ │ +001d60c0: 6720 7761 7320 646f 6e65 270a 6669 0a3c  g was done'.fi.<
│ │ │ +001d60d0: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ +001d6180: 656d 6564 6961 7469 6f6e 2041 6e61 636f emediation Anaco │ │ │ +001d6190: 6e64 6120 736e 6970 7065 7420 e287 b23c nda snippet ...< │ │ │ +001d61a0: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
Complexity:low
Disrup │ │ │ +001d5f60: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ +001d5f70: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ +001d5fb0: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ +001d5fc0: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
< │ │ │ +001d6270: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +001d6280: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
.
│ │ │ +001d62d0: 7061 636b 6167 6520 2d2d 6164 643d 6c69  package --add=li
│ │ │ +001d62e0: 6273 656c 696e 7578 0a3c 2f63 6f64 653e  bselinux.
│ │ │  001d62f0: 3c2f 7072 653e 3c2f 6469 763e 3c2f 6469  
Complexity:low
Disrup │ │ │ +001d6250: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ +001d6260: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ +001d62a0: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ +001d62b0: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Reme │ │ │ -001d6ba0: 6469 6174 696f 6e20 416e 6163 6f6e 6461 diation Anaconda │ │ │ -001d6bb0: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -001d6bc0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ -001d6c60: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ -001d6cb0: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
..p
│ │ │ -001d6cf0: 6163 6b61 6765 202d 2d72 656d 6f76 653d  ackage --remove=
│ │ │ -001d6d00: 6d63 7374 7261 6e73 0a3c 2f63 6f64 653e  mcstrans.
│ │ │ -001d6d10: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ -001d6dc0: 7469 6f6e 2050 7570 7065 7420 736e 6970 tion Puppet snip │ │ │ -001d6dd0: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ -001d6de0: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -001d6df0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -001d6e00: 7365 2220 6964 3d22 6964 3532 3322 3e3c se" id="id523">< │ │ │ -001d6e10: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ -001d6e20: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ -001d6e30: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ -001d6e40: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ -001d6e50: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Disruption:Strategy: │ │ │ -001d6ee0: 3c74 643e 6469 7361 626c 653c 2f74 643e │ │ │ -001d6ef0: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
Co │ │ │ -001d6c40: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -001d6c70: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ -001d6c90: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ -001d6ca0: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ -001d6cc0: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ -001d6cd0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Complex │ │ │ -001d6e60: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ -001d6e70: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
low
Reboo │ │ │ -001d6eb0: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -001d6ec0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
disable
.include │ │ │ -001d6f10: 2072 656d 6f76 655f 6d63 7374 7261 6e73 remove_mcstrans │ │ │ -001d6f20: 0a0a 636c 6173 7320 7265 6d6f 7665 5f6d ..class remove_m │ │ │ -001d6f30: 6373 7472 616e 7320 7b0a 2020 7061 636b cstrans {. pack │ │ │ -001d6f40: 6167 6520 7b20 276d 6373 7472 616e 7327 age { 'mcstrans' │ │ │ -001d6f50: 3a0a 2020 2020 656e 7375 7265 203d 2667 :. ensure =&g │ │ │ -001d6f60: 743b 2027 7075 7267 6564 272c 0a20 207d t; 'purged',. } │ │ │ -001d6f70: 0a7d 0a3c 2f63 6f64 653e 3c2f 7072 653e .}. │ │ │ -001d6f80: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation A │ │ │ -001d7030: 6e73 6962 6c65 2073 6e69 7070 6574 20e2 nsible snippet . │ │ │ -001d7040: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ -001d70c0: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -001d70e0: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ -001d7130: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ -001d7160: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ -001d70d0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ -001d70f0: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ -001d7140: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ -001d7150: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
- name: Gathe
│ │ │ -001d7180: 7220 7468 6520 7061 636b 6167 6520 6661  r the package fa
│ │ │ -001d7190: 6374 730a 2020 7061 636b 6167 655f 6661  cts.  package_fa
│ │ │ -001d71a0: 6374 733a 0a20 2020 206d 616e 6167 6572  cts:.    manager
│ │ │ -001d71b0: 3a20 6175 746f 0a20 2074 6167 733a 0a20  : auto.  tags:. 
│ │ │ -001d71c0: 202d 2064 6973 6162 6c65 5f73 7472 6174   - disable_strat
│ │ │ -001d71d0: 6567 790a 2020 2d20 6c6f 775f 636f 6d70  egy.  - low_comp
│ │ │ -001d71e0: 6c65 7869 7479 0a20 202d 206c 6f77 5f64  lexity.  - low_d
│ │ │ -001d71f0: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ -001d7200: 775f 7365 7665 7269 7479 0a20 202d 206e  w_severity.  - n
│ │ │ -001d7210: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ -001d7220: 2020 2d20 7061 636b 6167 655f 6d63 7374    - package_mcst
│ │ │ -001d7230: 7261 6e73 5f72 656d 6f76 6564 0a0a 2d20  rans_removed..- 
│ │ │ -001d7240: 6e61 6d65 3a20 2755 6e69 6e73 7461 6c6c  name: 'Uninstall
│ │ │ -001d7250: 206d 6373 7472 616e 7320 5061 636b 6167   mcstrans Packag
│ │ │ -001d7260: 653a 2045 6e73 7572 6520 6d63 7374 7261  e: Ensure mcstra
│ │ │ -001d7270: 6e73 2069 7320 7265 6d6f 7665 6427 0a20  ns is removed'. 
│ │ │ -001d7280: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ -001d7290: 2e70 6163 6b61 6765 3a0a 2020 2020 6e61  .package:.    na
│ │ │ -001d72a0: 6d65 3a20 6d63 7374 7261 6e73 0a20 2020  me: mcstrans.   
│ │ │ -001d72b0: 2073 7461 7465 3a20 6162 7365 6e74 0a20   state: absent. 
│ │ │ -001d72c0: 2077 6865 6e3a 2027 226b 6572 6e65 6c22   when: '"kernel"
│ │ │ -001d72d0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001d72e0: 732e 7061 636b 6167 6573 270a 2020 7461  s.packages'.  ta
│ │ │ -001d72f0: 6773 3a0a 2020 2d20 6469 7361 626c 655f  gs:.  - disable_
│ │ │ -001d7300: 7374 7261 7465 6779 0a20 202d 206c 6f77  strategy.  - low
│ │ │ -001d7310: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ -001d7320: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ -001d7330: 202d 206c 6f77 5f73 6576 6572 6974 790a   - low_severity.
│ │ │ -001d7340: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ -001d7350: 6564 6564 0a20 202d 2070 6163 6b61 6765  eded.  - package
│ │ │ -001d7360: 5f6d 6373 7472 616e 735f 7265 6d6f 7665  _mcstrans_remove
│ │ │ -001d7370: 640a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  d.
< │ │ │ -001d7380: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Sh │ │ │ -001d7430: 656c 6c20 7363 7269 7074 20e2 87b2 3c2f ell script ...
│ │ │ -001d74d0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
#
│ │ │ -001d7570: 2052 656d 6564 6961 7469 6f6e 2069 7320   Remediation is 
│ │ │ -001d7580: 6170 706c 6963 6162 6c65 206f 6e6c 7920  applicable only 
│ │ │ -001d7590: 696e 2063 6572 7461 696e 2070 6c61 7466  in certain platf
│ │ │ -001d75a0: 6f72 6d73 0a69 6620 7270 6d20 2d2d 7175  orms.if rpm --qu
│ │ │ -001d75b0: 6965 7420 2d71 206b 6572 6e65 6c3b 2074  iet -q kernel; t
│ │ │ -001d75c0: 6865 6e0a 0a23 2043 4155 5449 4f4e 3a20  hen..# CAUTION: 
│ │ │ -001d75d0: 5468 6973 2072 656d 6564 6961 7469 6f6e  This remediation
│ │ │ -001d75e0: 2073 6372 6970 7420 7769 6c6c 2072 656d   script will rem
│ │ │ -001d75f0: 6f76 6520 6d63 7374 7261 6e73 0a23 2066  ove mcstrans.# f
│ │ │ -001d7600: 726f 6d20 7468 6520 7379 7374 656d 2c20  rom the system, 
│ │ │ -001d7610: 616e 6420 6d61 7920 7265 6d6f 7665 2061  and may remove a
│ │ │ -001d7620: 6e79 2070 6163 6b61 6765 730a 2320 7468  ny packages.# th
│ │ │ -001d7630: 6174 2064 6570 656e 6420 6f6e 206d 6373  at depend on mcs
│ │ │ -001d7640: 7472 616e 732e 2045 7865 6375 7465 2074  trans. Execute t
│ │ │ -001d7650: 6869 730a 2320 7265 6d65 6469 6174 696f  his.# remediatio
│ │ │ -001d7660: 6e20 4146 5445 5220 7465 7374 696e 6720  n AFTER testing 
│ │ │ -001d7670: 6f6e 2061 206e 6f6e 2d70 726f 6475 6374  on a non-product
│ │ │ -001d7680: 696f 6e0a 2320 7379 7374 656d 210a 0a0a  ion.# system!...
│ │ │ -001d7690: 6966 2072 706d 202d 7120 2d2d 7175 6965  if rpm -q --quie
│ │ │ -001d76a0: 7420 226d 6373 7472 616e 7322 203b 2074  t "mcstrans" ; t
│ │ │ -001d76b0: 6865 6e0a 646e 6620 7265 6d6f 7665 202d  hen.dnf remove -
│ │ │ -001d76c0: 7920 2d2d 6e6f 6175 746f 7265 6d6f 7665  y --noautoremove
│ │ │ -001d76d0: 2022 6d63 7374 7261 6e73 220a 6669 0a0a   "mcstrans".fi..
│ │ │ -001d76e0: 656c 7365 0a20 2020 2026 6774 3b26 616d  else.    >&am
│ │ │ -001d76f0: 703b 3220 6563 686f 2027 5265 6d65 6469  p;2 echo 'Remedi
│ │ │ -001d7700: 6174 696f 6e20 6973 206e 6f74 2061 7070  ation is not app
│ │ │ -001d7710: 6c69 6361 626c 652c 206e 6f74 6869 6e67  licable, nothing
│ │ │ -001d7720: 2077 6173 2064 6f6e 6527 0a66 690a 3c2f   was done'.fi.<
│ │ │ +001d6bc0: 6272 3e3c 6469 7620 636c 6173 733d 2270  br>
│ │ │ -001d74c0: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -001d74f0: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -001d7500: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -001d7540: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ -001d7550: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Com │ │ │ +001d6c40: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ +001d6c70: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ +001d6c90: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +001d6ca0: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ +001d6cc0: 2f74 683e 3c74 643e 6469 7361 626c 653c /th>disable< │ │ │ +001d6cd0: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
- na
│ │ │ +001d6cf0: 6d65 3a20 4761 7468 6572 2074 6865 2070  me: Gather the p
│ │ │ +001d6d00: 6163 6b61 6765 2066 6163 7473 0a20 2070  ackage facts.  p
│ │ │ +001d6d10: 6163 6b61 6765 5f66 6163 7473 3a0a 2020  ackage_facts:.  
│ │ │ +001d6d20: 2020 6d61 6e61 6765 723a 2061 7574 6f0a    manager: auto.
│ │ │ +001d6d30: 2020 7461 6773 3a0a 2020 2d20 6469 7361    tags:.  - disa
│ │ │ +001d6d40: 626c 655f 7374 7261 7465 6779 0a20 202d  ble_strategy.  -
│ │ │ +001d6d50: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ +001d6d60: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ +001d6d70: 6f6e 0a20 202d 206c 6f77 5f73 6576 6572  on.  - low_sever
│ │ │ +001d6d80: 6974 790a 2020 2d20 6e6f 5f72 6562 6f6f  ity.  - no_reboo
│ │ │ +001d6d90: 745f 6e65 6564 6564 0a20 202d 2070 6163  t_needed.  - pac
│ │ │ +001d6da0: 6b61 6765 5f6d 6373 7472 616e 735f 7265  kage_mcstrans_re
│ │ │ +001d6db0: 6d6f 7665 640a 0a2d 206e 616d 653a 2027  moved..- name: '
│ │ │ +001d6dc0: 556e 696e 7374 616c 6c20 6d63 7374 7261  Uninstall mcstra
│ │ │ +001d6dd0: 6e73 2050 6163 6b61 6765 3a20 456e 7375  ns Package: Ensu
│ │ │ +001d6de0: 7265 206d 6373 7472 616e 7320 6973 2072  re mcstrans is r
│ │ │ +001d6df0: 656d 6f76 6564 270a 2020 616e 7369 626c  emoved'.  ansibl
│ │ │ +001d6e00: 652e 6275 696c 7469 6e2e 7061 636b 6167  e.builtin.packag
│ │ │ +001d6e10: 653a 0a20 2020 206e 616d 653a 206d 6373  e:.    name: mcs
│ │ │ +001d6e20: 7472 616e 730a 2020 2020 7374 6174 653a  trans.    state:
│ │ │ +001d6e30: 2061 6273 656e 740a 2020 7768 656e 3a20   absent.  when: 
│ │ │ +001d6e40: 2722 6b65 726e 656c 2220 696e 2061 6e73  '"kernel" in ans
│ │ │ +001d6e50: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001d6e60: 6765 7327 0a20 2074 6167 733a 0a20 202d  ges'.  tags:.  -
│ │ │ +001d6e70: 2064 6973 6162 6c65 5f73 7472 6174 6567   disable_strateg
│ │ │ +001d6e80: 790a 2020 2d20 6c6f 775f 636f 6d70 6c65  y.  - low_comple
│ │ │ +001d6e90: 7869 7479 0a20 202d 206c 6f77 5f64 6973  xity.  - low_dis
│ │ │ +001d6ea0: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f  ruption.  - low_
│ │ │ +001d6eb0: 7365 7665 7269 7479 0a20 202d 206e 6f5f  severity.  - no_
│ │ │ +001d6ec0: 7265 626f 6f74 5f6e 6565 6465 640a 2020  reboot_needed.  
│ │ │ +001d6ed0: 2d20 7061 636b 6167 655f 6d63 7374 7261  - package_mcstra
│ │ │ +001d6ee0: 6e73 5f72 656d 6f76 6564 0a3c 2f63 6f64  ns_removed.
Remed │ │ │ +001d6fa0: 6961 7469 6f6e 2050 7570 7065 7420 736e iation Puppet sn │ │ │ +001d6fb0: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ +001d7060: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ +001d7080: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ +001d70b0: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ +001d7040: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ +001d7050: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ +001d7070: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ +001d7090: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ +001d70a0: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:disable
< │ │ │ +001d70e0: 7072 653e 3c63 6f64 653e 0a69 6e63 6c75 pre>.inclu │ │ │ +001d70f0: 6465 2072 656d 6f76 655f 6d63 7374 7261 de remove_mcstra │ │ │ +001d7100: 6e73 0a0a 636c 6173 7320 7265 6d6f 7665 ns..class remove │ │ │ +001d7110: 5f6d 6373 7472 616e 7320 7b0a 2020 7061 _mcstrans {. pa │ │ │ +001d7120: 636b 6167 6520 7b20 276d 6373 7472 616e ckage { 'mcstran │ │ │ +001d7130: 7327 3a0a 2020 2020 656e 7375 7265 203d s':. ensure = │ │ │ +001d7140: 2667 743b 2027 7075 7267 6564 272c 0a20 > 'purged',. │ │ │ +001d7150: 207d 0a7d 0a3c 2f63 6f64 653e 3c2f 7072 }.}.
Remediation │ │ │ +001d7210: 2053 6865 6c6c 2073 6372 6970 7420 e287 Shell script .. │ │ │ +001d7220: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ +001d72a0: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ +001d72c0: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ +001d7310: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>< │ │ │ +001d7340: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
# Remediation 
│ │ │ +001d7360: 6973 2061 7070 6c69 6361 626c 6520 6f6e  is applicable on
│ │ │ +001d7370: 6c79 2069 6e20 6365 7274 6169 6e20 706c  ly in certain pl
│ │ │ +001d7380: 6174 666f 726d 730a 6966 2072 706d 202d  atforms.if rpm -
│ │ │ +001d7390: 2d71 7569 6574 202d 7120 6b65 726e 656c  -quiet -q kernel
│ │ │ +001d73a0: 3b20 7468 656e 0a0a 2320 4341 5554 494f  ; then..# CAUTIO
│ │ │ +001d73b0: 4e3a 2054 6869 7320 7265 6d65 6469 6174  N: This remediat
│ │ │ +001d73c0: 696f 6e20 7363 7269 7074 2077 696c 6c20  ion script will 
│ │ │ +001d73d0: 7265 6d6f 7665 206d 6373 7472 616e 730a  remove mcstrans.
│ │ │ +001d73e0: 2320 6672 6f6d 2074 6865 2073 7973 7465  # from the syste
│ │ │ +001d73f0: 6d2c 2061 6e64 206d 6179 2072 656d 6f76  m, and may remov
│ │ │ +001d7400: 6520 616e 7920 7061 636b 6167 6573 0a23  e any packages.#
│ │ │ +001d7410: 2074 6861 7420 6465 7065 6e64 206f 6e20   that depend on 
│ │ │ +001d7420: 6d63 7374 7261 6e73 2e20 4578 6563 7574  mcstrans. Execut
│ │ │ +001d7430: 6520 7468 6973 0a23 2072 656d 6564 6961  e this.# remedia
│ │ │ +001d7440: 7469 6f6e 2041 4654 4552 2074 6573 7469  tion AFTER testi
│ │ │ +001d7450: 6e67 206f 6e20 6120 6e6f 6e2d 7072 6f64  ng on a non-prod
│ │ │ +001d7460: 7563 7469 6f6e 0a23 2073 7973 7465 6d21  uction.# system!
│ │ │ +001d7470: 0a0a 0a69 6620 7270 6d20 2d71 202d 2d71  ...if rpm -q --q
│ │ │ +001d7480: 7569 6574 2022 6d63 7374 7261 6e73 2220  uiet "mcstrans" 
│ │ │ +001d7490: 3b20 7468 656e 0a64 6e66 2072 656d 6f76  ; then.dnf remov
│ │ │ +001d74a0: 6520 2d79 202d 2d6e 6f61 7574 6f72 656d  e -y --noautorem
│ │ │ +001d74b0: 6f76 6520 226d 6373 7472 616e 7322 0a66  ove "mcstrans".f
│ │ │ +001d74c0: 690a 0a65 6c73 650a 2020 2020 2667 743b  i..else.    >
│ │ │ +001d74d0: 2661 6d70 3b32 2065 6368 6f20 2752 656d  &2 echo 'Rem
│ │ │ +001d74e0: 6564 6961 7469 6f6e 2069 7320 6e6f 7420  ediation is not 
│ │ │ +001d74f0: 6170 706c 6963 6162 6c65 2c20 6e6f 7468  applicable, noth
│ │ │ +001d7500: 696e 6720 7761 7320 646f 6e65 270a 6669  ing was done'.fi
│ │ │ +001d7510: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation Ana │ │ │ +001d75d0: 636f 6e64 6120 736e 6970 7065 7420 e287 conda snippet .. │ │ │ +001d75e0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
low
Disr │ │ │ +001d72d0: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +001d72e0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ +001d7320: 7465 6779 3a3c 2f74 683e 3c74 643e 6469 tegy:di │ │ │ +001d7330: 7361 626c 653c 2f74 643e 3c2f 7472 3e3c sable
< │ │ │ +001d7660: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ +001d7680: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ +001d76d0: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>< │ │ │ +001d7700: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
..package --re
│ │ │ +001d7720: 6d6f 7665 3d6d 6373 7472 616e 730a 3c2f  move=mcstrans.
low
Disr │ │ │ +001d7690: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +001d76a0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ +001d76e0: 7465 6779 3a3c 2f74 683e 3c74 643e 6469 tegy:di │ │ │ +001d76f0: 7361 626c 653c 2f74 643e 3c2f 7472 3e3c sable
Remediation A │ │ │ -001d8090: 6e61 636f 6e64 6120 736e 6970 7065 7420 naconda snippet │ │ │ -001d80a0: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
Complexity: │ │ │ -001d8130: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ -001d8150: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:low< │ │ │ -001d8170: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:falseSt │ │ │ -001d81a0: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ -001d81b0: 6469 7361 626c 653c 2f74 643e 3c2f 7472 disable
..package --
│ │ │ -001d81e0: 7265 6d6f 7665 3d73 6574 726f 7562 6c65  remove=setrouble
│ │ │ -001d81f0: 7368 6f6f 740a 3c2f 636f 6465 3e3c 2f70  shoot.

Remediatio │ │ │ -001d82b0: 6e20 5075 7070 6574 2073 6e69 7070 6574 n Puppet snippet │ │ │ -001d82c0: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Complexity │ │ │ -001d8350: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ -001d8370: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ -001d8380: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -001d8390: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ -001d83a0: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ -001d83c0: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:disable
<
│ │ │ -001d83f0: 636f 6465 3e0a 696e 636c 7564 6520 7265  code>.include re
│ │ │ -001d8400: 6d6f 7665 5f73 6574 726f 7562 6c65 7368  move_setroublesh
│ │ │ -001d8410: 6f6f 740a 0a63 6c61 7373 2072 656d 6f76  oot..class remov
│ │ │ -001d8420: 655f 7365 7472 6f75 626c 6573 686f 6f74  e_setroubleshoot
│ │ │ -001d8430: 207b 0a20 2070 6163 6b61 6765 207b 2027   {.  package { '
│ │ │ -001d8440: 7365 7472 6f75 626c 6573 686f 6f74 273a  setroubleshoot':
│ │ │ -001d8450: 0a20 2020 2065 6e73 7572 6520 3d26 6774  .    ensure =>
│ │ │ -001d8460: 3b20 2770 7572 6765 6427 2c0a 2020 7d0a  ; 'purged',.  }.
│ │ │ -001d8470: 7d0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  }.
< │ │ │ -001d8480: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation An │ │ │ -001d8530: 7369 626c 6520 736e 6970 7065 7420 e287 sible snippet .. │ │ │ -001d8540: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ -001d85c0: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -001d85e0: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -001d8630: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>< │ │ │ -001d8660: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
- name: Gather
│ │ │ -001d8680: 2074 6865 2070 6163 6b61 6765 2066 6163   the package fac
│ │ │ -001d8690: 7473 0a20 2070 6163 6b61 6765 5f66 6163  ts.  package_fac
│ │ │ -001d86a0: 7473 3a0a 2020 2020 6d61 6e61 6765 723a  ts:.    manager:
│ │ │ -001d86b0: 2061 7574 6f0a 2020 7461 6773 3a0a 2020   auto.  tags:.  
│ │ │ -001d86c0: 2d20 6469 7361 626c 655f 7374 7261 7465  - disable_strate
│ │ │ -001d86d0: 6779 0a20 202d 206c 6f77 5f63 6f6d 706c  gy.  - low_compl
│ │ │ -001d86e0: 6578 6974 790a 2020 2d20 6c6f 775f 6469  exity.  - low_di
│ │ │ -001d86f0: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ -001d8700: 5f73 6576 6572 6974 790a 2020 2d20 6e6f  _severity.  - no
│ │ │ -001d8710: 5f72 6562 6f6f 745f 6e65 6564 6564 0a20  _reboot_needed. 
│ │ │ -001d8720: 202d 2070 6163 6b61 6765 5f73 6574 726f   - package_setro
│ │ │ -001d8730: 7562 6c65 7368 6f6f 745f 7265 6d6f 7665  ubleshoot_remove
│ │ │ -001d8740: 640a 0a2d 206e 616d 653a 2027 556e 696e  d..- name: 'Unin
│ │ │ -001d8750: 7374 616c 6c20 7365 7472 6f75 626c 6573  stall setroubles
│ │ │ -001d8760: 686f 6f74 2050 6163 6b61 6765 3a20 456e  hoot Package: En
│ │ │ -001d8770: 7375 7265 2073 6574 726f 7562 6c65 7368  sure setroublesh
│ │ │ -001d8780: 6f6f 7420 6973 2072 656d 6f76 6564 270a  oot is removed'.
│ │ │ -001d8790: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ -001d87a0: 6e2e 7061 636b 6167 653a 0a20 2020 206e  n.package:.    n
│ │ │ -001d87b0: 616d 653a 2073 6574 726f 7562 6c65 7368  ame: setroublesh
│ │ │ -001d87c0: 6f6f 740a 2020 2020 7374 6174 653a 2061  oot.    state: a
│ │ │ -001d87d0: 6273 656e 740a 2020 7768 656e 3a20 2722  bsent.  when: '"
│ │ │ -001d87e0: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ -001d87f0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -001d8800: 7327 0a20 2074 6167 733a 0a20 202d 2064  s'.  tags:.  - d
│ │ │ -001d8810: 6973 6162 6c65 5f73 7472 6174 6567 790a  isable_strategy.
│ │ │ -001d8820: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ -001d8830: 7479 0a20 202d 206c 6f77 5f64 6973 7275  ty.  - low_disru
│ │ │ -001d8840: 7074 696f 6e0a 2020 2d20 6c6f 775f 7365  ption.  - low_se
│ │ │ -001d8850: 7665 7269 7479 0a20 202d 206e 6f5f 7265  verity.  - no_re
│ │ │ -001d8860: 626f 6f74 5f6e 6565 6465 640a 2020 2d20  boot_needed.  - 
│ │ │ -001d8870: 7061 636b 6167 655f 7365 7472 6f75 626c  package_setroubl
│ │ │ -001d8880: 6573 686f 6f74 5f72 656d 6f76 6564 0a3c  eshoot_removed.<
│ │ │ -001d8890: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ -001d8940: 656d 6564 6961 7469 6f6e 2053 6865 6c6c emediation Shell │ │ │ -001d8950: 2073 6372 6970 7420 e287 b23c 2f61 3e3c script ...< │ │ │ -001d8960: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
low
Disr │ │ │ -001d85f0: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -001d8600: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ -001d8640: 7465 6779 3a3c 2f74 683e 3c74 643e 6469 tegy:di │ │ │ -001d8650: 7361 626c 653c 2f74 643e 3c2f 7472 3e3c sable
Com │ │ │ -001d89e0: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ -001d8a10: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ -001d8a30: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -001d8a40: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -001d8a60: 2f74 683e 3c74 643e 6469 7361 626c 653c /th>disable< │ │ │ -001d8a70: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
# Re
│ │ │ -001d8a90: 6d65 6469 6174 696f 6e20 6973 2061 7070  mediation is app
│ │ │ -001d8aa0: 6c69 6361 626c 6520 6f6e 6c79 2069 6e20  licable only in 
│ │ │ -001d8ab0: 6365 7274 6169 6e20 706c 6174 666f 726d  certain platform
│ │ │ -001d8ac0: 730a 6966 2072 706d 202d 2d71 7569 6574  s.if rpm --quiet
│ │ │ -001d8ad0: 202d 7120 6b65 726e 656c 3b20 7468 656e   -q kernel; then
│ │ │ -001d8ae0: 0a0a 2320 4341 5554 494f 4e3a 2054 6869  ..# CAUTION: Thi
│ │ │ -001d8af0: 7320 7265 6d65 6469 6174 696f 6e20 7363  s remediation sc
│ │ │ -001d8b00: 7269 7074 2077 696c 6c20 7265 6d6f 7665  ript will remove
│ │ │ -001d8b10: 2073 6574 726f 7562 6c65 7368 6f6f 740a   setroubleshoot.
│ │ │ -001d8b20: 2320 6672 6f6d 2074 6865 2073 7973 7465  # from the syste
│ │ │ -001d8b30: 6d2c 2061 6e64 206d 6179 2072 656d 6f76  m, and may remov
│ │ │ -001d8b40: 6520 616e 7920 7061 636b 6167 6573 0a23  e any packages.#
│ │ │ -001d8b50: 2074 6861 7420 6465 7065 6e64 206f 6e20   that depend on 
│ │ │ -001d8b60: 7365 7472 6f75 626c 6573 686f 6f74 2e20  setroubleshoot. 
│ │ │ -001d8b70: 4578 6563 7574 6520 7468 6973 0a23 2072  Execute this.# r
│ │ │ -001d8b80: 656d 6564 6961 7469 6f6e 2041 4654 4552  emediation AFTER
│ │ │ -001d8b90: 2074 6573 7469 6e67 206f 6e20 6120 6e6f   testing on a no
│ │ │ -001d8ba0: 6e2d 7072 6f64 7563 7469 6f6e 0a23 2073  n-production.# s
│ │ │ -001d8bb0: 7973 7465 6d21 0a0a 0a69 6620 7270 6d20  ystem!...if rpm 
│ │ │ -001d8bc0: 2d71 202d 2d71 7569 6574 2022 7365 7472  -q --quiet "setr
│ │ │ -001d8bd0: 6f75 626c 6573 686f 6f74 2220 3b20 7468  oubleshoot" ; th
│ │ │ -001d8be0: 656e 0a64 6e66 2072 656d 6f76 6520 2d79  en.dnf remove -y
│ │ │ -001d8bf0: 202d 2d6e 6f61 7574 6f72 656d 6f76 6520   --noautoremove 
│ │ │ -001d8c00: 2273 6574 726f 7562 6c65 7368 6f6f 7422  "setroubleshoot"
│ │ │ -001d8c10: 0a66 690a 0a65 6c73 650a 2020 2020 2667  .fi..else.    &g
│ │ │ -001d8c20: 743b 2661 6d70 3b32 2065 6368 6f20 2752  t;&2 echo 'R
│ │ │ -001d8c30: 656d 6564 6961 7469 6f6e 2069 7320 6e6f  emediation is no
│ │ │ -001d8c40: 7420 6170 706c 6963 6162 6c65 2c20 6e6f  t applicable, no
│ │ │ -001d8c50: 7468 696e 6720 7761 7320 646f 6e65 270a  thing was done'.
│ │ │ -001d8c60: 6669 0a3c 2f63 6f64 653e 3c2f 7072 653e  fi.
│ │ │ +001d8090: 6e73 6962 6c65 2073 6e69 7070 6574 20e2 nsible snippet . │ │ │ +001d80a0: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ +001d8120: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +001d8140: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ +001d8190: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ +001d81c0: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ +001d8130: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +001d8150: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ +001d81a0: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ +001d81b0: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
- name: Gathe
│ │ │ +001d81e0: 7220 7468 6520 7061 636b 6167 6520 6661  r the package fa
│ │ │ +001d81f0: 6374 730a 2020 7061 636b 6167 655f 6661  cts.  package_fa
│ │ │ +001d8200: 6374 733a 0a20 2020 206d 616e 6167 6572  cts:.    manager
│ │ │ +001d8210: 3a20 6175 746f 0a20 2074 6167 733a 0a20  : auto.  tags:. 
│ │ │ +001d8220: 202d 2064 6973 6162 6c65 5f73 7472 6174   - disable_strat
│ │ │ +001d8230: 6567 790a 2020 2d20 6c6f 775f 636f 6d70  egy.  - low_comp
│ │ │ +001d8240: 6c65 7869 7479 0a20 202d 206c 6f77 5f64  lexity.  - low_d
│ │ │ +001d8250: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ +001d8260: 775f 7365 7665 7269 7479 0a20 202d 206e  w_severity.  - n
│ │ │ +001d8270: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ +001d8280: 2020 2d20 7061 636b 6167 655f 7365 7472    - package_setr
│ │ │ +001d8290: 6f75 626c 6573 686f 6f74 5f72 656d 6f76  oubleshoot_remov
│ │ │ +001d82a0: 6564 0a0a 2d20 6e61 6d65 3a20 2755 6e69  ed..- name: 'Uni
│ │ │ +001d82b0: 6e73 7461 6c6c 2073 6574 726f 7562 6c65  nstall setrouble
│ │ │ +001d82c0: 7368 6f6f 7420 5061 636b 6167 653a 2045  shoot Package: E
│ │ │ +001d82d0: 6e73 7572 6520 7365 7472 6f75 626c 6573  nsure setroubles
│ │ │ +001d82e0: 686f 6f74 2069 7320 7265 6d6f 7665 6427  hoot is removed'
│ │ │ +001d82f0: 0a20 2061 6e73 6962 6c65 2e62 7569 6c74  .  ansible.built
│ │ │ +001d8300: 696e 2e70 6163 6b61 6765 3a0a 2020 2020  in.package:.    
│ │ │ +001d8310: 6e61 6d65 3a20 7365 7472 6f75 626c 6573  name: setroubles
│ │ │ +001d8320: 686f 6f74 0a20 2020 2073 7461 7465 3a20  hoot.    state: 
│ │ │ +001d8330: 6162 7365 6e74 0a20 2077 6865 6e3a 2027  absent.  when: '
│ │ │ +001d8340: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ +001d8350: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001d8360: 6573 270a 2020 7461 6773 3a0a 2020 2d20  es'.  tags:.  - 
│ │ │ +001d8370: 6469 7361 626c 655f 7374 7261 7465 6779  disable_strategy
│ │ │ +001d8380: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ +001d8390: 6974 790a 2020 2d20 6c6f 775f 6469 7372  ity.  - low_disr
│ │ │ +001d83a0: 7570 7469 6f6e 0a20 202d 206c 6f77 5f73  uption.  - low_s
│ │ │ +001d83b0: 6576 6572 6974 790a 2020 2d20 6e6f 5f72  everity.  - no_r
│ │ │ +001d83c0: 6562 6f6f 745f 6e65 6564 6564 0a20 202d  eboot_needed.  -
│ │ │ +001d83d0: 2070 6163 6b61 6765 5f73 6574 726f 7562   package_setroub
│ │ │ +001d83e0: 6c65 7368 6f6f 745f 7265 6d6f 7665 640a  leshoot_removed.
│ │ │ +001d83f0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ +001d84a0: 5265 6d65 6469 6174 696f 6e20 5075 7070 Remediation Pupp │ │ │ +001d84b0: 6574 2073 6e69 7070 6574 20e2 87b2 3c2f et snippet ...
│ │ │ +001d8550: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
.
│ │ │ +001d85f0: 696e 636c 7564 6520 7265 6d6f 7665 5f73  include remove_s
│ │ │ +001d8600: 6574 726f 7562 6c65 7368 6f6f 740a 0a63  etroubleshoot..c
│ │ │ +001d8610: 6c61 7373 2072 656d 6f76 655f 7365 7472  lass remove_setr
│ │ │ +001d8620: 6f75 626c 6573 686f 6f74 207b 0a20 2070  oubleshoot {.  p
│ │ │ +001d8630: 6163 6b61 6765 207b 2027 7365 7472 6f75  ackage { 'setrou
│ │ │ +001d8640: 626c 6573 686f 6f74 273a 0a20 2020 2065  bleshoot':.    e
│ │ │ +001d8650: 6e73 7572 6520 3d26 6774 3b20 2770 7572  nsure => 'pur
│ │ │ +001d8660: 6765 6427 2c0a 2020 7d0a 7d0a 3c2f 636f  ged',.  }.}.
< │ │ │ +001d8680: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ +001d8690: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ +001d86a0: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ +001d86b0: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ +001d86c0: 6435 3239 2220 7461 6269 6e64 6578 3d22 d529" tabindex=" │ │ │ +001d86d0: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ +001d86e0: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ +001d86f0: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ +001d8700: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ +001d8710: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ +001d8720: 6469 6174 696f 6e20 5368 656c 6c20 7363 diation Shell sc │ │ │ +001d8730: 7269 7074 20e2 87b2 3c2f 613e 3c62 723e ript ...
│ │ │ +001d8740: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ +001d8770: 3c74 6162 6c65 2063 6c61 7373 3d22 7461
│ │ │ +001d8540: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +001d8570: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +001d8580: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +001d85c0: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ +001d85d0: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
< │ │ │ +001d87e0: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ +001d8800: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ +001d8830: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
Comple │ │ │ +001d87c0: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ +001d87d0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ +001d8810: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +001d8820: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
disable

# Remed │ │ │ +001d8870: 6961 7469 6f6e 2069 7320 6170 706c 6963 iation is applic │ │ │ +001d8880: 6162 6c65 206f 6e6c 7920 696e 2063 6572 able only in cer │ │ │ +001d8890: 7461 696e 2070 6c61 7466 6f72 6d73 0a69 tain platforms.i │ │ │ +001d88a0: 6620 7270 6d20 2d2d 7175 6965 7420 2d71 f rpm --quiet -q │ │ │ +001d88b0: 206b 6572 6e65 6c3b 2074 6865 6e0a 0a23 kernel; then..# │ │ │ +001d88c0: 2043 4155 5449 4f4e 3a20 5468 6973 2072 CAUTION: This r │ │ │ +001d88d0: 656d 6564 6961 7469 6f6e 2073 6372 6970 emediation scrip │ │ │ +001d88e0: 7420 7769 6c6c 2072 656d 6f76 6520 7365 t will remove se │ │ │ +001d88f0: 7472 6f75 626c 6573 686f 6f74 0a23 2066 troubleshoot.# f │ │ │ +001d8900: 726f 6d20 7468 6520 7379 7374 656d 2c20 rom the system, │ │ │ +001d8910: 616e 6420 6d61 7920 7265 6d6f 7665 2061 and may remove a │ │ │ +001d8920: 6e79 2070 6163 6b61 6765 730a 2320 7468 ny packages.# th │ │ │ +001d8930: 6174 2064 6570 656e 6420 6f6e 2073 6574 at depend on set │ │ │ +001d8940: 726f 7562 6c65 7368 6f6f 742e 2045 7865 roubleshoot. Exe │ │ │ +001d8950: 6375 7465 2074 6869 730a 2320 7265 6d65 cute this.# reme │ │ │ +001d8960: 6469 6174 696f 6e20 4146 5445 5220 7465 diation AFTER te │ │ │ +001d8970: 7374 696e 6720 6f6e 2061 206e 6f6e 2d70 sting on a non-p │ │ │ +001d8980: 726f 6475 6374 696f 6e0a 2320 7379 7374 roduction.# syst │ │ │ +001d8990: 656d 210a 0a0a 6966 2072 706d 202d 7120 em!...if rpm -q │ │ │ +001d89a0: 2d2d 7175 6965 7420 2273 6574 726f 7562 --quiet "setroub │ │ │ +001d89b0: 6c65 7368 6f6f 7422 203b 2074 6865 6e0a leshoot" ; then. │ │ │ +001d89c0: 646e 6620 7265 6d6f 7665 202d 7920 2d2d dnf remove -y -- │ │ │ +001d89d0: 6e6f 6175 746f 7265 6d6f 7665 2022 7365 noautoremove "se │ │ │ +001d89e0: 7472 6f75 626c 6573 686f 6f74 220a 6669 troubleshoot".fi │ │ │ +001d89f0: 0a0a 656c 7365 0a20 2020 2026 6774 3b26 ..else. >& │ │ │ +001d8a00: 616d 703b 3220 6563 686f 2027 5265 6d65 amp;2 echo 'Reme │ │ │ +001d8a10: 6469 6174 696f 6e20 6973 206e 6f74 2061 diation is not a │ │ │ +001d8a20: 7070 6c69 6361 626c 652c 206e 6f74 6869 pplicable, nothi │ │ │ +001d8a30: 6e67 2077 6173 2064 6f6e 6527 0a66 690a ng was done'.fi. │ │ │ +001d8a40: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64 │ │ │ +001d8af0: 5265 6d65 6469 6174 696f 6e20 416e 6163 Remediation Anac │ │ │ +001d8b00: 6f6e 6461 2073 6e69 7070 6574 20e2 87b2 onda snippet ... │ │ │ +001d8b10: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61

Complexity: │ │ │ +001d8be0: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +001d8bf0: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
..package --rem
│ │ │ +001d8c50: 6f76 653d 7365 7472 6f75 626c 6573 686f  ove=setroublesho
│ │ │ +001d8c60: 6f74 0a3c 2f63 6f64 653e 3c2f 7072 653e  ot.
│ │ │ 001d8c70: 3c2f 6469 763e 3c2f 6469 763e 3c2f 7464 │ │ │ 001d8ca0: 3c74 7220 6461 7461 2d74 742d 6964 3d22 │ │ │ -001e2610: 5265 6d65 6469 6174 696f 6e20 416e 6163 Remediation Anac │ │ │ -001e2620: 6f6e 6461 2073 6e69 7070 6574 20e2 87b2 onda snippet ... │ │ │ -001e2630: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
low
Disru │ │ │ +001d8bc0: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +001d8bd0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +001d8c10: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ +001d8c20: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
Complexity: │ │ │ -001e2700: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -001e2710: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
..package --rem
│ │ │ -001e2770: 6f76 653d 6176 6168 690a 3c2f 636f 6465  ove=avahi.
Remedi │ │ │ -001e2830: 6174 696f 6e20 5075 7070 6574 2073 6e69 ation Puppet sni │ │ │ -001e2840: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -001e2850: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -001e2880: 3c74 6162 6c65 2063 6c61 7373 3d22 7461
low
Disru │ │ │ -001e26e0: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ -001e26f0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ -001e2730: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ -001e2740: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
< │ │ │ -001e28f0: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ -001e2910: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ -001e2940: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
Comple │ │ │ -001e28d0: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ -001e28e0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ -001e2920: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ -001e2930: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
disable

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

Remed │ │ │ -001e2a90: 6961 7469 6f6e 2041 6e73 6962 6c65 2073 iation Ansible s │ │ │ -001e2aa0: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ -001e2b30: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -001e2b40: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -001e2b60: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ -001e2b80: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -001e2b90: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ -001e2bd0: 3c70 7265 3e3c 636f 6465 3e2d 206e 616d
- nam
│ │ │ -001e2be0: 653a 2027 556e 696e 7374 616c 6c20 6176  e: 'Uninstall av
│ │ │ -001e2bf0: 6168 6920 5365 7276 6572 2050 6163 6b61  ahi Server Packa
│ │ │ -001e2c00: 6765 3a20 456e 7375 7265 2061 7661 6869  ge: Ensure avahi
│ │ │ -001e2c10: 2069 7320 7265 6d6f 7665 6427 0a20 2061   is removed'.  a
│ │ │ -001e2c20: 6e73 6962 6c65 2e62 7569 6c74 696e 2e70  nsible.builtin.p
│ │ │ -001e2c30: 6163 6b61 6765 3a0a 2020 2020 6e61 6d65  ackage:.    name
│ │ │ -001e2c40: 3a20 6176 6168 690a 2020 2020 7374 6174  : avahi.    stat
│ │ │ -001e2c50: 653a 2061 6273 656e 740a 2020 7461 6773  e: absent.  tags
│ │ │ -001e2c60: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ -001e2c70: 332d 434d 2d36 2861 290a 2020 2d20 4e49  3-CM-6(a).  - NI
│ │ │ -001e2c80: 5354 2d38 3030 2d35 332d 434d 2d37 2861  ST-800-53-CM-7(a
│ │ │ -001e2c90: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -001e2ca0: 332d 434d 2d37 2862 290a 2020 2d20 6469  3-CM-7(b).  - di
│ │ │ -001e2cb0: 7361 626c 655f 7374 7261 7465 6779 0a20  sable_strategy. 
│ │ │ -001e2cc0: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ -001e2cd0: 790a 2020 2d20 6c6f 775f 6469 7372 7570  y.  - low_disrup
│ │ │ -001e2ce0: 7469 6f6e 0a20 202d 206d 6564 6975 6d5f  tion.  - medium_
│ │ │ -001e2cf0: 7365 7665 7269 7479 0a20 202d 206e 6f5f  severity.  - no_
│ │ │ -001e2d00: 7265 626f 6f74 5f6e 6565 6465 640a 2020  reboot_needed.  
│ │ │ -001e2d10: 2d20 7061 636b 6167 655f 6176 6168 695f  - package_avahi_
│ │ │ -001e2d20: 7265 6d6f 7665 640a 3c2f 636f 6465 3e3c  removed.<
│ │ │ -001e2d30: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>
Remediat │ │ │ -001e2de0: 696f 6e20 5368 656c 6c20 7363 7269 7074 ion Shell script │ │ │ -001e2df0: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Complexity │ │ │ -001e2e80: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ -001e2ea0: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ -001e2eb0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -001e2ec0: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ -001e2ed0: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ -001e2ef0: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:disable
<
│ │ │ -001e2f20: 636f 6465 3e0a 2320 4341 5554 494f 4e3a  code>.# CAUTION:
│ │ │ -001e2f30: 2054 6869 7320 7265 6d65 6469 6174 696f   This remediatio
│ │ │ -001e2f40: 6e20 7363 7269 7074 2077 696c 6c20 7265  n script will re
│ │ │ -001e2f50: 6d6f 7665 2061 7661 6869 0a23 2066 726f  move avahi.# fro
│ │ │ -001e2f60: 6d20 7468 6520 7379 7374 656d 2c20 616e  m the system, an
│ │ │ -001e2f70: 6420 6d61 7920 7265 6d6f 7665 2061 6e79  d may remove any
│ │ │ -001e2f80: 2070 6163 6b61 6765 730a 2320 7468 6174   packages.# that
│ │ │ -001e2f90: 2064 6570 656e 6420 6f6e 2061 7661 6869   depend on avahi
│ │ │ -001e2fa0: 2e20 4578 6563 7574 6520 7468 6973 0a23  . Execute this.#
│ │ │ -001e2fb0: 2072 656d 6564 6961 7469 6f6e 2041 4654   remediation AFT
│ │ │ -001e2fc0: 4552 2074 6573 7469 6e67 206f 6e20 6120  ER testing on a 
│ │ │ -001e2fd0: 6e6f 6e2d 7072 6f64 7563 7469 6f6e 0a23  non-production.#
│ │ │ -001e2fe0: 2073 7973 7465 6d21 0a0a 0a69 6620 7270   system!...if rp
│ │ │ -001e2ff0: 6d20 2d71 202d 2d71 7569 6574 2022 6176  m -q --quiet "av
│ │ │ -001e3000: 6168 6922 203b 2074 6865 6e0a 646e 6620  ahi" ; then.dnf 
│ │ │ -001e3010: 7265 6d6f 7665 202d 7920 2d2d 6e6f 6175  remove -y --noau
│ │ │ -001e3020: 746f 7265 6d6f 7665 2022 6176 6168 6922  toremove "avahi"
│ │ │ -001e3030: 0a66 690a 3c2f 636f 6465 3e3c 2f70 7265  .fi.

< │ │ │ +001e2700: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +001e2710: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

│ │ │ +001e2760: 2d20 6e61 6d65 3a20 2755 6e69 6e73 7461  - name: 'Uninsta
│ │ │ +001e2770: 6c6c 2061 7661 6869 2053 6572 7665 7220  ll avahi Server 
│ │ │ +001e2780: 5061 636b 6167 653a 2045 6e73 7572 6520  Package: Ensure 
│ │ │ +001e2790: 6176 6168 6920 6973 2072 656d 6f76 6564  avahi is removed
│ │ │ +001e27a0: 270a 2020 616e 7369 626c 652e 6275 696c  '.  ansible.buil
│ │ │ +001e27b0: 7469 6e2e 7061 636b 6167 653a 0a20 2020  tin.package:.   
│ │ │ +001e27c0: 206e 616d 653a 2061 7661 6869 0a20 2020   name: avahi.   
│ │ │ +001e27d0: 2073 7461 7465 3a20 6162 7365 6e74 0a20   state: absent. 
│ │ │ +001e27e0: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ +001e27f0: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ +001e2800: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +001e2810: 4d2d 3728 6129 0a20 202d 204e 4953 542d  M-7(a).  - NIST-
│ │ │ +001e2820: 3830 302d 3533 2d43 4d2d 3728 6229 0a20  800-53-CM-7(b). 
│ │ │ +001e2830: 202d 2064 6973 6162 6c65 5f73 7472 6174   - disable_strat
│ │ │ +001e2840: 6567 790a 2020 2d20 6c6f 775f 636f 6d70  egy.  - low_comp
│ │ │ +001e2850: 6c65 7869 7479 0a20 202d 206c 6f77 5f64  lexity.  - low_d
│ │ │ +001e2860: 6973 7275 7074 696f 6e0a 2020 2d20 6d65  isruption.  - me
│ │ │ +001e2870: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ +001e2880: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ +001e2890: 6564 0a20 202d 2070 6163 6b61 6765 5f61  ed.  - package_a
│ │ │ +001e28a0: 7661 6869 5f72 656d 6f76 6564 0a3c 2f63  vahi_removed.
│ │ │ +001e28c0: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ +001e2960: 6564 6961 7469 6f6e 2050 7570 7065 7420 ediation Puppet │ │ │ +001e2970: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ +001e2980: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Complexity:low
Disrup │ │ │ +001e26e0: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ +001e26f0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ +001e2730: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ +001e2740: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Com │ │ │ +001e2a00: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ +001e2a30: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ +001e2a50: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +001e2a60: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ +001e2a80: 2f74 683e 3c74 643e 6469 7361 626c 653c /th>disable< │ │ │ +001e2a90: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
.inc
│ │ │ +001e2ab0: 6c75 6465 2072 656d 6f76 655f 6176 6168  lude remove_avah
│ │ │ +001e2ac0: 690a 0a63 6c61 7373 2072 656d 6f76 655f  i..class remove_
│ │ │ +001e2ad0: 6176 6168 6920 7b0a 2020 7061 636b 6167  avahi {.  packag
│ │ │ +001e2ae0: 6520 7b20 2761 7661 6869 273a 0a20 2020  e { 'avahi':.   
│ │ │ +001e2af0: 2065 6e73 7572 6520 3d26 6774 3b20 2770   ensure => 'p
│ │ │ +001e2b00: 7572 6765 6427 2c0a 2020 7d0a 7d0a 3c2f  urged',.  }.}.
Re │ │ │ +001e2bc0: 6d65 6469 6174 696f 6e20 5368 656c 6c20 mediation Shell │ │ │ +001e2bd0: 7363 7269 7074 20e2 87b2 3c2f 613e 3c62 script ...
Comp │ │ │ +001e2c60: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +001e2c70: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ +001e2c90: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ +001e2cb0: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +001e2cc0: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ +001e2d00: 3c70 7265 3e3c 636f 6465 3e0a 2320 4341
.# CA
│ │ │ +001e2d10: 5554 494f 4e3a 2054 6869 7320 7265 6d65  UTION: This reme
│ │ │ +001e2d20: 6469 6174 696f 6e20 7363 7269 7074 2077  diation script w
│ │ │ +001e2d30: 696c 6c20 7265 6d6f 7665 2061 7661 6869  ill remove avahi
│ │ │ +001e2d40: 0a23 2066 726f 6d20 7468 6520 7379 7374  .# from the syst
│ │ │ +001e2d50: 656d 2c20 616e 6420 6d61 7920 7265 6d6f  em, and may remo
│ │ │ +001e2d60: 7665 2061 6e79 2070 6163 6b61 6765 730a  ve any packages.
│ │ │ +001e2d70: 2320 7468 6174 2064 6570 656e 6420 6f6e  # that depend on
│ │ │ +001e2d80: 2061 7661 6869 2e20 4578 6563 7574 6520   avahi. Execute 
│ │ │ +001e2d90: 7468 6973 0a23 2072 656d 6564 6961 7469  this.# remediati
│ │ │ +001e2da0: 6f6e 2041 4654 4552 2074 6573 7469 6e67  on AFTER testing
│ │ │ +001e2db0: 206f 6e20 6120 6e6f 6e2d 7072 6f64 7563   on a non-produc
│ │ │ +001e2dc0: 7469 6f6e 0a23 2073 7973 7465 6d21 0a0a  tion.# system!..
│ │ │ +001e2dd0: 0a69 6620 7270 6d20 2d71 202d 2d71 7569  .if rpm -q --qui
│ │ │ +001e2de0: 6574 2022 6176 6168 6922 203b 2074 6865  et "avahi" ; the
│ │ │ +001e2df0: 6e0a 646e 6620 7265 6d6f 7665 202d 7920  n.dnf remove -y 
│ │ │ +001e2e00: 2d2d 6e6f 6175 746f 7265 6d6f 7665 2022  --noautoremove "
│ │ │ +001e2e10: 6176 6168 6922 0a66 690a 3c2f 636f 6465  avahi".fi.
Remedi │ │ │ +001e2ed0: 6174 696f 6e20 416e 6163 6f6e 6461 2073 ation Anaconda s │ │ │ +001e2ee0: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ +001e2f70: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +001e2f80: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ +001e2fa0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ +001e2fc0: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +001e2fd0: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ +001e3010: 3c70 7265 3e3c 636f 6465 3e0a 0a70 6163
..pac
│ │ │ +001e3020: 6b61 6765 202d 2d72 656d 6f76 653d 6176  kage --remove=av
│ │ │ +001e3030: 6168 690a 3c2f 636f 6465 3e3c 2f70 7265  ahi.
< │ │ │ 001e3060: 2f74 6162 6c65 3e3c 2f74 643e 3c2f 7472 /table>Remediation OSB │ │ │ -001ef5d0: 7569 6c64 2042 6c75 6570 7269 6e74 2073 uild Blueprint s │ │ │ -001ef5e0: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
.[c
│ │ │ -001ef630: 7573 746f 6d69 7a61 7469 6f6e 732e 7365  ustomizations.se
│ │ │ -001ef640: 7276 6963 6573 5d0a 656e 6162 6c65 6420  rvices].enabled 
│ │ │ -001ef650: 3d20 5b22 6372 6f6e 6422 5d0a 3c2f 636f  = ["crond"].
< │ │ │ -001ef670: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ -001ef680: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ -001ef690: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ -001ef6a0: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ -001ef6b0: 6435 3735 2220 7461 6269 6e64 6578 3d22 d575" tabindex=" │ │ │ -001ef6c0: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ -001ef6d0: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ -001ef6e0: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ -001ef6f0: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ -001ef700: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ -001ef710: 6469 6174 696f 6e20 5075 7070 6574 2073 diation Puppet s │ │ │ -001ef720: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ -001ef7b0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -001ef7c0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -001ef7e0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ -001ef800: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -001ef810: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:enable
< │ │ │ -001ef850: 7072 653e 3c63 6f64 653e 696e 636c 7564 pre>includ │ │ │ -001ef860: 6520 656e 6162 6c65 5f63 726f 6e64 0a0a e enable_crond.. │ │ │ -001ef870: 636c 6173 7320 656e 6162 6c65 5f63 726f class enable_cro │ │ │ -001ef880: 6e64 207b 0a20 2073 6572 7669 6365 207b nd {. service { │ │ │ -001ef890: 2763 726f 6e64 273a 0a20 2020 2065 6e61 'crond':. ena │ │ │ -001ef8a0: 626c 6520 3d26 6774 3b20 7472 7565 2c0a ble => true,. │ │ │ -001ef8b0: 2020 2020 656e 7375 7265 203d 2667 743b ensure => │ │ │ -001ef8c0: 2027 7275 6e6e 696e 6727 2c0a 2020 7d0a 'running',. }. │ │ │ -001ef8d0: 7d0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c }.< │ │ │ -001ef8e0: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation An │ │ │ -001ef990: 7369 626c 6520 736e 6970 7065 7420 e287 sible snippet .. │ │ │ -001ef9a0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ -001efa20: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -001efa40: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -001efa90: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
- name: Gather 
│ │ │ -001efae0: 7468 6520 7061 636b 6167 6520 6661 6374  the package fact
│ │ │ -001efaf0: 730a 2020 7061 636b 6167 655f 6661 6374  s.  package_fact
│ │ │ -001efb00: 733a 0a20 2020 206d 616e 6167 6572 3a20  s:.    manager: 
│ │ │ -001efb10: 6175 746f 0a20 2074 6167 733a 0a20 202d  auto.  tags:.  -
│ │ │ -001efb20: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -001efb30: 3628 6129 0a20 202d 2065 6e61 626c 655f  6(a).  - enable_
│ │ │ -001efb40: 7374 7261 7465 6779 0a20 202d 206c 6f77  strategy.  - low
│ │ │ -001efb50: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ -001efb60: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ -001efb70: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ -001efb80: 7479 0a20 202d 206e 6f5f 7265 626f 6f74  ty.  - no_reboot
│ │ │ -001efb90: 5f6e 6565 6465 640a 2020 2d20 7365 7276  _needed.  - serv
│ │ │ -001efba0: 6963 655f 6372 6f6e 645f 656e 6162 6c65  ice_crond_enable
│ │ │ -001efbb0: 640a 0a2d 206e 616d 653a 2045 6e61 626c  d..- name: Enabl
│ │ │ -001efbc0: 6520 6372 6f6e 2053 6572 7669 6365 202d  e cron Service -
│ │ │ -001efbd0: 2045 6e61 626c 6520 7365 7276 6963 6520   Enable service 
│ │ │ -001efbe0: 6372 6f6e 640a 2020 626c 6f63 6b3a 0a0a  crond.  block:..
│ │ │ -001efbf0: 2020 2d20 6e61 6d65 3a20 4761 7468 6572    - name: Gather
│ │ │ -001efc00: 2074 6865 2070 6163 6b61 6765 2066 6163   the package fac
│ │ │ -001efc10: 7473 0a20 2020 2061 6e73 6962 6c65 2e62  ts.    ansible.b
│ │ │ -001efc20: 7569 6c74 696e 2e70 6163 6b61 6765 5f66  uiltin.package_f
│ │ │ -001efc30: 6163 7473 3a0a 2020 2020 2020 6d61 6e61  acts:.      mana
│ │ │ -001efc40: 6765 723a 2061 7574 6f0a 0a20 202d 206e  ger: auto..  - n
│ │ │ -001efc50: 616d 653a 2045 6e61 626c 6520 6372 6f6e  ame: Enable cron
│ │ │ -001efc60: 2053 6572 7669 6365 202d 2045 6e61 626c   Service - Enabl
│ │ │ -001efc70: 6520 5365 7276 6963 6520 6372 6f6e 640a  e Service crond.
│ │ │ -001efc80: 2020 2020 616e 7369 626c 652e 6275 696c      ansible.buil
│ │ │ -001efc90: 7469 6e2e 7379 7374 656d 643a 0a20 2020  tin.systemd:.   
│ │ │ -001efca0: 2020 206e 616d 653a 2063 726f 6e64 0a20     name: crond. 
│ │ │ -001efcb0: 2020 2020 2065 6e61 626c 6564 3a20 7472       enabled: tr
│ │ │ -001efcc0: 7565 0a20 2020 2020 2073 7461 7465 3a20  ue.      state: 
│ │ │ -001efcd0: 7374 6172 7465 640a 2020 2020 2020 6d61  started.      ma
│ │ │ -001efce0: 736b 6564 3a20 6661 6c73 650a 2020 2020  sked: false.    
│ │ │ -001efcf0: 7768 656e 3a0a 2020 2020 2d20 2722 6372  when:.    - '"cr
│ │ │ -001efd00: 6f6e 6965 2220 696e 2061 6e73 6962 6c65  onie" in ansible
│ │ │ -001efd10: 5f66 6163 7473 2e70 6163 6b61 6765 7327  _facts.packages'
│ │ │ -001efd20: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ -001efd30: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ -001efd40: 0a20 202d 2065 6e61 626c 655f 7374 7261  .  - enable_stra
│ │ │ -001efd50: 7465 6779 0a20 202d 206c 6f77 5f63 6f6d  tegy.  - low_com
│ │ │ -001efd60: 706c 6578 6974 790a 2020 2d20 6c6f 775f  plexity.  - low_
│ │ │ -001efd70: 6469 7372 7570 7469 6f6e 0a20 202d 206d  disruption.  - m
│ │ │ -001efd80: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ -001efd90: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ -001efda0: 6465 640a 2020 2d20 7365 7276 6963 655f  ded.  - service_
│ │ │ -001efdb0: 6372 6f6e 645f 656e 6162 6c65 640a 2020  crond_enabled.  
│ │ │ -001efdc0: 2d20 7370 6563 6961 6c5f 7365 7276 6963  - special_servic
│ │ │ -001efdd0: 655f 626c 6f63 6b0a 2020 7768 656e 3a20  e_block.  when: 
│ │ │ -001efde0: 2722 6b65 726e 656c 2220 696e 2061 6e73  '"kernel" in ans
│ │ │ -001efdf0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001efe00: 6765 7327 0a3c 2f63 6f64 653e 3c2f 7072  ges'.Remediation Ans
│ │ │ +001ef5d0: 6962 6c65 2073 6e69 7070 6574 20e2 87b2  ible snippet ...
│ │ │ +001ef5e0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61  
low
Disr │ │ │ -001efa50: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -001efa60: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ -001efaa0: 7465 6779 3a3c 2f74 683e 3c74 643e 656e tegy:en │ │ │ -001efab0: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
Complexity: │ │ │ +001ef6b0: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +001ef6c0: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f

│ │ │ +001ef710: 2d20 6e61 6d65 3a20 4761 7468 6572 2074  - name: Gather t
│ │ │ +001ef720: 6865 2070 6163 6b61 6765 2066 6163 7473  he package facts
│ │ │ +001ef730: 0a20 2070 6163 6b61 6765 5f66 6163 7473  .  package_facts
│ │ │ +001ef740: 3a0a 2020 2020 6d61 6e61 6765 723a 2061  :.    manager: a
│ │ │ +001ef750: 7574 6f0a 2020 7461 6773 3a0a 2020 2d20  uto.  tags:.  - 
│ │ │ +001ef760: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ +001ef770: 2861 290a 2020 2d20 656e 6162 6c65 5f73  (a).  - enable_s
│ │ │ +001ef780: 7472 6174 6567 790a 2020 2d20 6c6f 775f  trategy.  - low_
│ │ │ +001ef790: 636f 6d70 6c65 7869 7479 0a20 202d 206c  complexity.  - l
│ │ │ +001ef7a0: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ +001ef7b0: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ +001ef7c0: 790a 2020 2d20 6e6f 5f72 6562 6f6f 745f  y.  - no_reboot_
│ │ │ +001ef7d0: 6e65 6564 6564 0a20 202d 2073 6572 7669  needed.  - servi
│ │ │ +001ef7e0: 6365 5f63 726f 6e64 5f65 6e61 626c 6564  ce_crond_enabled
│ │ │ +001ef7f0: 0a0a 2d20 6e61 6d65 3a20 456e 6162 6c65  ..- name: Enable
│ │ │ +001ef800: 2063 726f 6e20 5365 7276 6963 6520 2d20   cron Service - 
│ │ │ +001ef810: 456e 6162 6c65 2073 6572 7669 6365 2063  Enable service c
│ │ │ +001ef820: 726f 6e64 0a20 2062 6c6f 636b 3a0a 0a20  rond.  block:.. 
│ │ │ +001ef830: 202d 206e 616d 653a 2047 6174 6865 7220   - name: Gather 
│ │ │ +001ef840: 7468 6520 7061 636b 6167 6520 6661 6374  the package fact
│ │ │ +001ef850: 730a 2020 2020 616e 7369 626c 652e 6275  s.    ansible.bu
│ │ │ +001ef860: 696c 7469 6e2e 7061 636b 6167 655f 6661  iltin.package_fa
│ │ │ +001ef870: 6374 733a 0a20 2020 2020 206d 616e 6167  cts:.      manag
│ │ │ +001ef880: 6572 3a20 6175 746f 0a0a 2020 2d20 6e61  er: auto..  - na
│ │ │ +001ef890: 6d65 3a20 456e 6162 6c65 2063 726f 6e20  me: Enable cron 
│ │ │ +001ef8a0: 5365 7276 6963 6520 2d20 456e 6162 6c65  Service - Enable
│ │ │ +001ef8b0: 2053 6572 7669 6365 2063 726f 6e64 0a20   Service crond. 
│ │ │ +001ef8c0: 2020 2061 6e73 6962 6c65 2e62 7569 6c74     ansible.built
│ │ │ +001ef8d0: 696e 2e73 7973 7465 6d64 3a0a 2020 2020  in.systemd:.    
│ │ │ +001ef8e0: 2020 6e61 6d65 3a20 6372 6f6e 640a 2020    name: crond.  
│ │ │ +001ef8f0: 2020 2020 656e 6162 6c65 643a 2074 7275      enabled: tru
│ │ │ +001ef900: 650a 2020 2020 2020 7374 6174 653a 2073  e.      state: s
│ │ │ +001ef910: 7461 7274 6564 0a20 2020 2020 206d 6173  tarted.      mas
│ │ │ +001ef920: 6b65 643a 2066 616c 7365 0a20 2020 2077  ked: false.    w
│ │ │ +001ef930: 6865 6e3a 0a20 2020 202d 2027 2263 726f  hen:.    - '"cro
│ │ │ +001ef940: 6e69 6522 2069 6e20 616e 7369 626c 655f  nie" in ansible_
│ │ │ +001ef950: 6661 6374 732e 7061 636b 6167 6573 270a  facts.packages'.
│ │ │ +001ef960: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ +001ef970: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ +001ef980: 2020 2d20 656e 6162 6c65 5f73 7472 6174    - enable_strat
│ │ │ +001ef990: 6567 790a 2020 2d20 6c6f 775f 636f 6d70  egy.  - low_comp
│ │ │ +001ef9a0: 6c65 7869 7479 0a20 202d 206c 6f77 5f64  lexity.  - low_d
│ │ │ +001ef9b0: 6973 7275 7074 696f 6e0a 2020 2d20 6d65  isruption.  - me
│ │ │ +001ef9c0: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ +001ef9d0: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ +001ef9e0: 6564 0a20 202d 2073 6572 7669 6365 5f63  ed.  - service_c
│ │ │ +001ef9f0: 726f 6e64 5f65 6e61 626c 6564 0a20 202d  rond_enabled.  -
│ │ │ +001efa00: 2073 7065 6369 616c 5f73 6572 7669 6365   special_service
│ │ │ +001efa10: 5f62 6c6f 636b 0a20 2077 6865 6e3a 2027  _block.  when: '
│ │ │ +001efa20: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ +001efa30: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001efa40: 6573 270a 3c2f 636f 6465 3e3c 2f70 7265  es'.
Remediation │ │ │ +001efb00: 5075 7070 6574 2073 6e69 7070 6574 20e2 Puppet snippet . │ │ │ +001efb10: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
low
Disru │ │ │ +001ef690: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +001ef6a0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +001ef6e0: 6567 793a 3c2f 7468 3e3c 7464 3e65 6e61 egy:ena │ │ │ +001ef6f0: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
│ │ │ +001efb90: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +001efbb0: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ +001efc00: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 < │ │ │ +001efc30: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
include enable
│ │ │ +001efc50: 5f63 726f 6e64 0a0a 636c 6173 7320 656e  _crond..class en
│ │ │ +001efc60: 6162 6c65 5f63 726f 6e64 207b 0a20 2073  able_crond {.  s
│ │ │ +001efc70: 6572 7669 6365 207b 2763 726f 6e64 273a  ervice {'crond':
│ │ │ +001efc80: 0a20 2020 2065 6e61 626c 6520 3d26 6774  .    enable =>
│ │ │ +001efc90: 3b20 7472 7565 2c0a 2020 2020 656e 7375  ; true,.    ensu
│ │ │ +001efca0: 7265 203d 2667 743b 2027 7275 6e6e 696e  re => 'runnin
│ │ │ +001efcb0: 6727 2c0a 2020 7d0a 7d0a 3c2f 636f 6465  g',.  }.}.
Remedi │ │ │ +001efd70: 6174 696f 6e20 4f53 4275 696c 6420 426c ation OSBuild Bl │ │ │ +001efd80: 7565 7072 696e 7420 736e 6970 7065 7420 ueprint snippet │ │ │ +001efd90: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
│ │ │ +001efdd0: 3c63 6f64 653e 0a5b 6375 7374 6f6d 697a  .[customiz
│ │ │ +001efde0: 6174 696f 6e73 2e73 6572 7669 6365 735d  ations.services]
│ │ │ +001efdf0: 0a65 6e61 626c 6564 203d 205b 2263 726f  .enabled = ["cro
│ │ │ +001efe00: 6e64 225d 0a3c 2f63 6f64 653e 3c2f 7072  nd"].
Remediation A │ │ │ -0020c580: 6e61 636f 6e64 6120 736e 6970 7065 7420 naconda snippet │ │ │ -0020c590: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
low< │ │ │ -0020c660: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>
Complexity:< │ │ │ +001efba0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +001efbc0: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ +001efc10: 6174 6567 793a 3c2f 7468 3e3c 7464 3e65 ategy:e │ │ │ +001efc20: 6e61 626c 653c 2f74 643e 3c2f 7472 3e3c nable
Complexity: │ │ │ -0020c620: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Di │ │ │ -0020c640: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:
Reboot:false
St │ │ │ -0020c690: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ -0020c6a0: 6469 7361 626c 653c 2f74 643e 3c2f 7472 disable
..package --
│ │ │ -0020c6d0: 7265 6d6f 7665 3d64 6863 700a 3c2f 636f  remove=dhcp.
< │ │ │ -0020c6f0: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ -0020c700: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ -0020c710: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ -0020c720: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ -0020c730: 6436 3334 2220 7461 6269 6e64 6578 3d22 d634" tabindex=" │ │ │ -0020c740: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ -0020c750: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ -0020c760: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ -0020c770: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ -0020c780: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ -0020c790: 6469 6174 696f 6e20 5075 7070 6574 2073 diation Puppet s │ │ │ -0020c7a0: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ -0020c830: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -0020c840: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -0020c860: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ -0020c880: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -0020c890: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ -0020c8d0: 3c70 7265 3e3c 636f 6465 3e0a 696e 636c
.incl
│ │ │ -0020c8e0: 7564 6520 7265 6d6f 7665 5f64 6863 700a  ude remove_dhcp.
│ │ │ -0020c8f0: 0a63 6c61 7373 2072 656d 6f76 655f 6468  .class remove_dh
│ │ │ -0020c900: 6370 207b 0a20 2070 6163 6b61 6765 207b  cp {.  package {
│ │ │ -0020c910: 2027 6468 6370 273a 0a20 2020 2065 6e73   'dhcp':.    ens
│ │ │ -0020c920: 7572 6520 3d26 6774 3b20 2770 7572 6765  ure => 'purge
│ │ │ -0020c930: 6427 2c0a 2020 7d0a 7d0a 3c2f 636f 6465  d',.  }.}.
Remedi │ │ │ -0020c9f0: 6174 696f 6e20 416e 7369 626c 6520 736e ation Ansible sn │ │ │ -0020ca00: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ -0020cab0: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ -0020cad0: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ -0020cb00: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ -0020ca90: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ -0020caa0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ -0020cac0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ -0020cae0: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -0020caf0: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:disable
< │ │ │ -0020cb30: 7072 653e 3c63 6f64 653e 2d20 6e61 6d65 pre>- name │ │ │ -0020cb40: 3a20 2755 6e69 6e73 7461 6c6c 2044 4843 : 'Uninstall DHC │ │ │ -0020cb50: 5020 5365 7276 6572 2050 6163 6b61 6765 P Server Package │ │ │ -0020cb60: 3a20 456e 7375 7265 2064 6863 7020 6973 : Ensure dhcp is │ │ │ -0020cb70: 2072 656d 6f76 6564 270a 2020 616e 7369 removed'. ansi │ │ │ -0020cb80: 626c 652e 6275 696c 7469 6e2e 7061 636b ble.builtin.pack │ │ │ -0020cb90: 6167 653a 0a20 2020 206e 616d 653a 2064 age:. name: d │ │ │ -0020cba0: 6863 700a 2020 2020 7374 6174 653a 2061 hcp. state: a │ │ │ -0020cbb0: 6273 656e 740a 2020 7461 6773 3a0a 2020 bsent. tags:. │ │ │ -0020cbc0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d - NIST-800-53-CM │ │ │ -0020cbd0: 2d36 2861 290a 2020 2d20 4e49 5354 2d38 -6(a). - NIST-8 │ │ │ -0020cbe0: 3030 2d35 332d 434d 2d37 2861 290a 2020 00-53-CM-7(a). │ │ │ -0020cbf0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d - NIST-800-53-CM │ │ │ -0020cc00: 2d37 2862 290a 2020 2d20 5043 492d 4453 -7(b). - PCI-DS │ │ │ -0020cc10: 5376 342d 322e 320a 2020 2d20 5043 492d Sv4-2.2. - PCI- │ │ │ -0020cc20: 4453 5376 342d 322e 322e 340a 2020 2d20 DSSv4-2.2.4. - │ │ │ -0020cc30: 6469 7361 626c 655f 7374 7261 7465 6779 disable_strategy │ │ │ -0020cc40: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578 . - low_complex │ │ │ -0020cc50: 6974 790a 2020 2d20 6c6f 775f 6469 7372 ity. - low_disr │ │ │ -0020cc60: 7570 7469 6f6e 0a20 202d 206d 6564 6975 uption. - mediu │ │ │ -0020cc70: 6d5f 7365 7665 7269 7479 0a20 202d 206e m_severity. - n │ │ │ -0020cc80: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a o_reboot_needed. │ │ │ -0020cc90: 2020 2d20 7061 636b 6167 655f 6468 6370 - package_dhcp │ │ │ -0020cca0: 5f72 656d 6f76 6564 0a3c 2f63 6f64 653e _removed. │ │ │ -0020ccb0: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063
Remedia │ │ │ -0020cd60: 7469 6f6e 2053 6865 6c6c 2073 6372 6970 tion Shell scrip │ │ │ -0020cd70: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ -0020cdf0: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ -0020ce00: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ -0020ce20: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ -0020ce30: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ -0020ce50: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ -0020ce70: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:disable
│ │ │ -0020cea0: 3c63 6f64 653e 0a23 2043 4155 5449 4f4e  .# CAUTION
│ │ │ -0020ceb0: 3a20 5468 6973 2072 656d 6564 6961 7469  : This remediati
│ │ │ -0020cec0: 6f6e 2073 6372 6970 7420 7769 6c6c 2072  on script will r
│ │ │ -0020ced0: 656d 6f76 6520 6468 6370 0a23 2066 726f  emove dhcp.# fro
│ │ │ -0020cee0: 6d20 7468 6520 7379 7374 656d 2c20 616e  m the system, an
│ │ │ -0020cef0: 6420 6d61 7920 7265 6d6f 7665 2061 6e79  d may remove any
│ │ │ -0020cf00: 2070 6163 6b61 6765 730a 2320 7468 6174   packages.# that
│ │ │ -0020cf10: 2064 6570 656e 6420 6f6e 2064 6863 702e   depend on dhcp.
│ │ │ -0020cf20: 2045 7865 6375 7465 2074 6869 730a 2320   Execute this.# 
│ │ │ -0020cf30: 7265 6d65 6469 6174 696f 6e20 4146 5445  remediation AFTE
│ │ │ -0020cf40: 5220 7465 7374 696e 6720 6f6e 2061 206e  R testing on a n
│ │ │ -0020cf50: 6f6e 2d70 726f 6475 6374 696f 6e0a 2320  on-production.# 
│ │ │ -0020cf60: 7379 7374 656d 210a 0a0a 6966 2072 706d  system!...if rpm
│ │ │ -0020cf70: 202d 7120 2d2d 7175 6965 7420 2264 6863   -q --quiet "dhc
│ │ │ -0020cf80: 7022 203b 2074 6865 6e0a 646e 6620 7265  p" ; then.dnf re
│ │ │ -0020cf90: 6d6f 7665 202d 7920 2d2d 6e6f 6175 746f  move -y --noauto
│ │ │ -0020cfa0: 7265 6d6f 7665 2022 6468 6370 220a 6669  remove "dhcp".fi
│ │ │ +0020c580: 6e73 6962 6c65 2073 6e69 7070 6574 20e2  nsible snippet .
│ │ │ +0020c590: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063  ..
│ │ │ +0020c610: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +0020c630: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ +0020c680: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ +0020c6b0: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ +0020c620: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +0020c640: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ +0020c690: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ +0020c6a0: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
- name: 'Unin
│ │ │ +0020c6d0: 7374 616c 6c20 4448 4350 2053 6572 7665  stall DHCP Serve
│ │ │ +0020c6e0: 7220 5061 636b 6167 653a 2045 6e73 7572  r Package: Ensur
│ │ │ +0020c6f0: 6520 6468 6370 2069 7320 7265 6d6f 7665  e dhcp is remove
│ │ │ +0020c700: 6427 0a20 2061 6e73 6962 6c65 2e62 7569  d'.  ansible.bui
│ │ │ +0020c710: 6c74 696e 2e70 6163 6b61 6765 3a0a 2020  ltin.package:.  
│ │ │ +0020c720: 2020 6e61 6d65 3a20 6468 6370 0a20 2020    name: dhcp.   
│ │ │ +0020c730: 2073 7461 7465 3a20 6162 7365 6e74 0a20   state: absent. 
│ │ │ +0020c740: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ +0020c750: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ +0020c760: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +0020c770: 4d2d 3728 6129 0a20 202d 204e 4953 542d  M-7(a).  - NIST-
│ │ │ +0020c780: 3830 302d 3533 2d43 4d2d 3728 6229 0a20  800-53-CM-7(b). 
│ │ │ +0020c790: 202d 2050 4349 2d44 5353 7634 2d32 2e32   - PCI-DSSv4-2.2
│ │ │ +0020c7a0: 0a20 202d 2050 4349 2d44 5353 7634 2d32  .  - PCI-DSSv4-2
│ │ │ +0020c7b0: 2e32 2e34 0a20 202d 2064 6973 6162 6c65  .2.4.  - disable
│ │ │ +0020c7c0: 5f73 7472 6174 6567 790a 2020 2d20 6c6f  _strategy.  - lo
│ │ │ +0020c7d0: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ +0020c7e0: 206c 6f77 5f64 6973 7275 7074 696f 6e0a   low_disruption.
│ │ │ +0020c7f0: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ +0020c800: 6974 790a 2020 2d20 6e6f 5f72 6562 6f6f  ity.  - no_reboo
│ │ │ +0020c810: 745f 6e65 6564 6564 0a20 202d 2070 6163  t_needed.  - pac
│ │ │ +0020c820: 6b61 6765 5f64 6863 705f 7265 6d6f 7665  kage_dhcp_remove
│ │ │ +0020c830: 640a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  d.
< │ │ │ +0020c840: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Pu │ │ │ +0020c8f0: 7070 6574 2073 6e69 7070 6574 20e2 87b2 ppet snippet ... │ │ │ +0020c900: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity: │ │ │ +0020c9d0: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +0020c9e0: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
.include remove
│ │ │ +0020ca40: 5f64 6863 700a 0a63 6c61 7373 2072 656d  _dhcp..class rem
│ │ │ +0020ca50: 6f76 655f 6468 6370 207b 0a20 2070 6163  ove_dhcp {.  pac
│ │ │ +0020ca60: 6b61 6765 207b 2027 6468 6370 273a 0a20  kage { 'dhcp':. 
│ │ │ +0020ca70: 2020 2065 6e73 7572 6520 3d26 6774 3b20     ensure => 
│ │ │ +0020ca80: 2770 7572 6765 6427 2c0a 2020 7d0a 7d0a  'purged',.  }.}.
│ │ │ +0020ca90: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ +0020cb40: 5265 6d65 6469 6174 696f 6e20 5368 656c Remediation Shel │ │ │ +0020cb50: 6c20 7363 7269 7074 20e2 87b2 3c2f 613e l script ... │ │ │ +0020cb60: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low
Disru │ │ │ +0020c9b0: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +0020c9c0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +0020ca00: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ +0020ca10: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
low< │ │ │ +0020cc00: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ +0020cc50: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
.# 
│ │ │ +0020cc90: 4341 5554 494f 4e3a 2054 6869 7320 7265  CAUTION: This re
│ │ │ +0020cca0: 6d65 6469 6174 696f 6e20 7363 7269 7074  mediation script
│ │ │ +0020ccb0: 2077 696c 6c20 7265 6d6f 7665 2064 6863   will remove dhc
│ │ │ +0020ccc0: 700a 2320 6672 6f6d 2074 6865 2073 7973  p.# from the sys
│ │ │ +0020ccd0: 7465 6d2c 2061 6e64 206d 6179 2072 656d  tem, and may rem
│ │ │ +0020cce0: 6f76 6520 616e 7920 7061 636b 6167 6573  ove any packages
│ │ │ +0020ccf0: 0a23 2074 6861 7420 6465 7065 6e64 206f  .# that depend o
│ │ │ +0020cd00: 6e20 6468 6370 2e20 4578 6563 7574 6520  n dhcp. Execute 
│ │ │ +0020cd10: 7468 6973 0a23 2072 656d 6564 6961 7469  this.# remediati
│ │ │ +0020cd20: 6f6e 2041 4654 4552 2074 6573 7469 6e67  on AFTER testing
│ │ │ +0020cd30: 206f 6e20 6120 6e6f 6e2d 7072 6f64 7563   on a non-produc
│ │ │ +0020cd40: 7469 6f6e 0a23 2073 7973 7465 6d21 0a0a  tion.# system!..
│ │ │ +0020cd50: 0a69 6620 7270 6d20 2d71 202d 2d71 7569  .if rpm -q --qui
│ │ │ +0020cd60: 6574 2022 6468 6370 2220 3b20 7468 656e  et "dhcp" ; then
│ │ │ +0020cd70: 0a64 6e66 2072 656d 6f76 6520 2d79 202d  .dnf remove -y -
│ │ │ +0020cd80: 2d6e 6f61 7574 6f72 656d 6f76 6520 2264  -noautoremove "d
│ │ │ +0020cd90: 6863 7022 0a66 690a 3c2f 636f 6465 3e3c  hcp".fi.<
│ │ │ +0020cda0: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>Remediat
│ │ │ +0020ce50: 696f 6e20 416e 6163 6f6e 6461 2073 6e69  ion Anaconda sni
│ │ │ +0020ce60: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e  ppet ...
│ │ │ +0020ce70: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ +0020cea0: 3c74 6162 6c65 2063 6c61 7373 3d22 7461
Co │ │ │ +0020cbe0: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +0020cc10: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +0020cc30: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +0020cc40: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +0020cc60: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ +0020cc70: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
< │ │ │ +0020cf10: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ +0020cf30: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ +0020cf60: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
Comple │ │ │ +0020cef0: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ +0020cf00: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ +0020cf40: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +0020cf50: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
disable

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

< │ │ │ 0020cfd0: 2f74 723e 3c2f 7462 6f64 793e 3c2f 7461 /tr>Rem │ │ │ -0020e560: 6564 6961 7469 6f6e 2041 6e61 636f 6e64 ediation Anacond │ │ │ -0020e570: 6120 736e 6970 7065 7420 e287 b23c 2f61 a snippet ...
< │ │ │ -0020e610: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -0020e620: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ -0020e670: 3c74 723e 3c74 683e 5374 7261 7465 6779
..
│ │ │ -0020e6b0: 7061 636b 6167 6520 2d2d 7265 6d6f 7665  package --remove
│ │ │ -0020e6c0: 3d62 696e 640a 3c2f 636f 6465 3e3c 2f70  =bind.

Remediatio │ │ │ -0020e780: 6e20 5075 7070 6574 2073 6e69 7070 6574 n Puppet snippet │ │ │ -0020e790: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
< │ │ │ -0020e850: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -0020e860: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c
C │ │ │ -0020e600: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -0020e630: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ -0020e640: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -0020e680: 3a3c 2f74 683e 3c74 643e 6469 7361 626c :disabl │ │ │ -0020e690: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
Complexity │ │ │ -0020e820: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
D │ │ │ -0020e840: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:
Reboot:< │ │ │ -0020e870: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>false
S │ │ │ -0020e890: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:disable
<
│ │ │ -0020e8c0: 636f 6465 3e0a 696e 636c 7564 6520 7265  code>.include re
│ │ │ -0020e8d0: 6d6f 7665 5f62 696e 640a 0a63 6c61 7373  move_bind..class
│ │ │ -0020e8e0: 2072 656d 6f76 655f 6269 6e64 207b 0a20   remove_bind {. 
│ │ │ -0020e8f0: 2070 6163 6b61 6765 207b 2027 6269 6e64   package { 'bind
│ │ │ -0020e900: 273a 0a20 2020 2065 6e73 7572 6520 3d26  ':.    ensure =&
│ │ │ -0020e910: 6774 3b20 2770 7572 6765 6427 2c0a 2020  gt; 'purged',.  
│ │ │ -0020e920: 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70 7265  }.}.
Remediation │ │ │ -0020e9e0: 416e 7369 626c 6520 736e 6970 7065 7420 Ansible snippet │ │ │ -0020e9f0: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
Complexity: │ │ │ -0020ea80: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ -0020eaa0: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:low< │ │ │ -0020eac0: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:falseSt │ │ │ -0020eaf0: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ -0020eb00: 6469 7361 626c 653c 2f74 643e 3c2f 7472 disable
- name: 'Uni
│ │ │ -0020eb30: 6e73 7461 6c6c 2062 696e 6420 5061 636b  nstall bind Pack
│ │ │ -0020eb40: 6167 653a 2045 6e73 7572 6520 6269 6e64  age: Ensure bind
│ │ │ -0020eb50: 2069 7320 7265 6d6f 7665 6427 0a20 2061   is removed'.  a
│ │ │ -0020eb60: 6e73 6962 6c65 2e62 7569 6c74 696e 2e70  nsible.builtin.p
│ │ │ -0020eb70: 6163 6b61 6765 3a0a 2020 2020 6e61 6d65  ackage:.    name
│ │ │ -0020eb80: 3a20 6269 6e64 0a20 2020 2073 7461 7465  : bind.    state
│ │ │ -0020eb90: 3a20 6162 7365 6e74 0a20 2074 6167 733a  : absent.  tags:
│ │ │ -0020eba0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -0020ebb0: 2d43 4d2d 3628 6129 0a20 202d 204e 4953  -CM-6(a).  - NIS
│ │ │ -0020ebc0: 542d 3830 302d 3533 2d43 4d2d 3728 6129  T-800-53-CM-7(a)
│ │ │ -0020ebd0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -0020ebe0: 2d43 4d2d 3728 6229 0a20 202d 2064 6973  -CM-7(b).  - dis
│ │ │ -0020ebf0: 6162 6c65 5f73 7472 6174 6567 790a 2020  able_strategy.  
│ │ │ -0020ec00: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ -0020ec10: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ -0020ec20: 696f 6e0a 2020 2d20 6c6f 775f 7365 7665  ion.  - low_seve
│ │ │ -0020ec30: 7269 7479 0a20 202d 206e 6f5f 7265 626f  rity.  - no_rebo
│ │ │ -0020ec40: 6f74 5f6e 6565 6465 640a 2020 2d20 7061  ot_needed.  - pa
│ │ │ -0020ec50: 636b 6167 655f 6269 6e64 5f72 656d 6f76  ckage_bind_remov
│ │ │ -0020ec60: 6564 0a3c 2f63 6f64 653e 3c2f 7072 653e  ed.
│ │ │ -0020ec70: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation S │ │ │ -0020ed20: 6865 6c6c 2073 6372 6970 7420 e287 b23c hell script ...< │ │ │ -0020ed30: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
< │ │ │ -0020ee00: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -0020ee10: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

│ │ │ -0020ee60: 0a23 2043 4155 5449 4f4e 3a20 5468 6973  .# CAUTION: This
│ │ │ -0020ee70: 2072 656d 6564 6961 7469 6f6e 2073 6372   remediation scr
│ │ │ -0020ee80: 6970 7420 7769 6c6c 2072 656d 6f76 6520  ipt will remove 
│ │ │ -0020ee90: 6269 6e64 0a23 2066 726f 6d20 7468 6520  bind.# from the 
│ │ │ -0020eea0: 7379 7374 656d 2c20 616e 6420 6d61 7920  system, and may 
│ │ │ -0020eeb0: 7265 6d6f 7665 2061 6e79 2070 6163 6b61  remove any packa
│ │ │ -0020eec0: 6765 730a 2320 7468 6174 2064 6570 656e  ges.# that depen
│ │ │ -0020eed0: 6420 6f6e 2062 696e 642e 2045 7865 6375  d on bind. Execu
│ │ │ -0020eee0: 7465 2074 6869 730a 2320 7265 6d65 6469  te this.# remedi
│ │ │ -0020eef0: 6174 696f 6e20 4146 5445 5220 7465 7374  ation AFTER test
│ │ │ -0020ef00: 696e 6720 6f6e 2061 206e 6f6e 2d70 726f  ing on a non-pro
│ │ │ -0020ef10: 6475 6374 696f 6e0a 2320 7379 7374 656d  duction.# system
│ │ │ -0020ef20: 210a 0a0a 6966 2072 706d 202d 7120 2d2d  !...if rpm -q --
│ │ │ -0020ef30: 7175 6965 7420 2262 696e 6422 203b 2074  quiet "bind" ; t
│ │ │ -0020ef40: 6865 6e0a 646e 6620 7265 6d6f 7665 202d  hen.dnf remove -
│ │ │ -0020ef50: 7920 2d2d 6e6f 6175 746f 7265 6d6f 7665  y --noautoremove
│ │ │ -0020ef60: 2022 6269 6e64 220a 6669 0a3c 2f63 6f64   "bind".fi.
│ │ │ +0020e580: 3c62 723e 3c64 6976 2063 6c61 7373 3d22  
Complexity:low
Disrup │ │ │ -0020ede0: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -0020edf0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -0020ee30: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ -0020ee40: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
low< │ │ │ +0020e620: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ +0020e670: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
- n
│ │ │ +0020e6b0: 616d 653a 2027 556e 696e 7374 616c 6c20  ame: 'Uninstall 
│ │ │ +0020e6c0: 6269 6e64 2050 6163 6b61 6765 3a20 456e  bind Package: En
│ │ │ +0020e6d0: 7375 7265 2062 696e 6420 6973 2072 656d  sure bind is rem
│ │ │ +0020e6e0: 6f76 6564 270a 2020 616e 7369 626c 652e  oved'.  ansible.
│ │ │ +0020e6f0: 6275 696c 7469 6e2e 7061 636b 6167 653a  builtin.package:
│ │ │ +0020e700: 0a20 2020 206e 616d 653a 2062 696e 640a  .    name: bind.
│ │ │ +0020e710: 2020 2020 7374 6174 653a 2061 6273 656e      state: absen
│ │ │ +0020e720: 740a 2020 7461 6773 3a0a 2020 2d20 4e49  t.  tags:.  - NI
│ │ │ +0020e730: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ +0020e740: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +0020e750: 332d 434d 2d37 2861 290a 2020 2d20 4e49  3-CM-7(a).  - NI
│ │ │ +0020e760: 5354 2d38 3030 2d35 332d 434d 2d37 2862  ST-800-53-CM-7(b
│ │ │ +0020e770: 290a 2020 2d20 6469 7361 626c 655f 7374  ).  - disable_st
│ │ │ +0020e780: 7261 7465 6779 0a20 202d 206c 6f77 5f63  rategy.  - low_c
│ │ │ +0020e790: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f  omplexity.  - lo
│ │ │ +0020e7a0: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ +0020e7b0: 206c 6f77 5f73 6576 6572 6974 790a 2020   low_severity.  
│ │ │ +0020e7c0: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ +0020e7d0: 6564 0a20 202d 2070 6163 6b61 6765 5f62  ed.  - package_b
│ │ │ +0020e7e0: 696e 645f 7265 6d6f 7665 640a 3c2f 636f  ind_removed.
< │ │ │ +0020e800: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ +0020e810: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ +0020e820: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ +0020e830: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ +0020e840: 6436 3339 2220 7461 6269 6e64 6578 3d22 d639" tabindex=" │ │ │ +0020e850: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ +0020e860: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ +0020e870: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ +0020e880: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ +0020e890: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ +0020e8a0: 6469 6174 696f 6e20 5075 7070 6574 2073 diation Puppet s │ │ │ +0020e8b0: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Co │ │ │ +0020e600: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +0020e630: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +0020e650: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +0020e660: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +0020e680: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ +0020e690: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Comp │ │ │ +0020e940: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +0020e950: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ +0020e970: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ +0020e990: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +0020e9a0: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ +0020e9e0: 3c70 7265 3e3c 636f 6465 3e0a 696e 636c
.incl
│ │ │ +0020e9f0: 7564 6520 7265 6d6f 7665 5f62 696e 640a  ude remove_bind.
│ │ │ +0020ea00: 0a63 6c61 7373 2072 656d 6f76 655f 6269  .class remove_bi
│ │ │ +0020ea10: 6e64 207b 0a20 2070 6163 6b61 6765 207b  nd {.  package {
│ │ │ +0020ea20: 2027 6269 6e64 273a 0a20 2020 2065 6e73   'bind':.    ens
│ │ │ +0020ea30: 7572 6520 3d26 6774 3b20 2770 7572 6765  ure => 'purge
│ │ │ +0020ea40: 6427 2c0a 2020 7d0a 7d0a 3c2f 636f 6465  d',.  }.}.
Remedi │ │ │ +0020eb00: 6174 696f 6e20 5368 656c 6c20 7363 7269 ation Shell scri │ │ │ +0020eb10: 7074 20e2 87b2 3c2f 613e 3c62 723e 3c64 pt ...
│ │ │ +0020eb90: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ +0020eba0: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +0020ebb0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ +0020ebf0: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +0020ec00: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ +0020ec20: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ +0020ec30: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
.# CAUTIO
│ │ │ +0020ec50: 4e3a 2054 6869 7320 7265 6d65 6469 6174  N: This remediat
│ │ │ +0020ec60: 696f 6e20 7363 7269 7074 2077 696c 6c20  ion script will 
│ │ │ +0020ec70: 7265 6d6f 7665 2062 696e 640a 2320 6672  remove bind.# fr
│ │ │ +0020ec80: 6f6d 2074 6865 2073 7973 7465 6d2c 2061  om the system, a
│ │ │ +0020ec90: 6e64 206d 6179 2072 656d 6f76 6520 616e  nd may remove an
│ │ │ +0020eca0: 7920 7061 636b 6167 6573 0a23 2074 6861  y packages.# tha
│ │ │ +0020ecb0: 7420 6465 7065 6e64 206f 6e20 6269 6e64  t depend on bind
│ │ │ +0020ecc0: 2e20 4578 6563 7574 6520 7468 6973 0a23  . Execute this.#
│ │ │ +0020ecd0: 2072 656d 6564 6961 7469 6f6e 2041 4654   remediation AFT
│ │ │ +0020ece0: 4552 2074 6573 7469 6e67 206f 6e20 6120  ER testing on a 
│ │ │ +0020ecf0: 6e6f 6e2d 7072 6f64 7563 7469 6f6e 0a23  non-production.#
│ │ │ +0020ed00: 2073 7973 7465 6d21 0a0a 0a69 6620 7270   system!...if rp
│ │ │ +0020ed10: 6d20 2d71 202d 2d71 7569 6574 2022 6269  m -q --quiet "bi
│ │ │ +0020ed20: 6e64 2220 3b20 7468 656e 0a64 6e66 2072  nd" ; then.dnf r
│ │ │ +0020ed30: 656d 6f76 6520 2d79 202d 2d6e 6f61 7574  emove -y --noaut
│ │ │ +0020ed40: 6f72 656d 6f76 6520 2262 696e 6422 0a66  oremove "bind".f
│ │ │ +0020ed50: 690a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  i.
< │ │ │ +0020ed60: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation An │ │ │ +0020ee10: 6163 6f6e 6461 2073 6e69 7070 6574 20e2 aconda snippet . │ │ │ +0020ee20: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ +0020eea0: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +0020eec0: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ +0020ef10: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ +0020ef40: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ +0020eeb0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +0020eed0: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ +0020ef20: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ +0020ef30: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
..package --r
│ │ │ +0020ef60: 656d 6f76 653d 6269 6e64 0a3c 2f63 6f64  emove=bind.
Remedi │ │ │ -0020f810: 6174 696f 6e20 416e 6163 6f6e 6461 2073 ation Anaconda s │ │ │ -0020f820: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ -0020f8b0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -0020f8c0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -0020f8e0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ -0020f900: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -0020f910: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ -0020f950: 3c70 7265 3e3c 636f 6465 3e0a 0a70 6163
..pac
│ │ │ -0020f960: 6b61 6765 202d 2d72 656d 6f76 653d 646e  kage --remove=dn
│ │ │ -0020f970: 736d 6173 710a 3c2f 636f 6465 3e3c 2f70  smasq.

Remediatio │ │ │ -0020fa30: 6e20 5075 7070 6574 2073 6e69 7070 6574 n Puppet snippet │ │ │ -0020fa40: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Complexity │ │ │ -0020fad0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ -0020faf0: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ -0020fb00: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -0020fb10: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ -0020fb20: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ -0020fb40: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:disable
<
│ │ │ -0020fb70: 636f 6465 3e0a 696e 636c 7564 6520 7265  code>.include re
│ │ │ -0020fb80: 6d6f 7665 5f64 6e73 6d61 7371 0a0a 636c  move_dnsmasq..cl
│ │ │ -0020fb90: 6173 7320 7265 6d6f 7665 5f64 6e73 6d61  ass remove_dnsma
│ │ │ -0020fba0: 7371 207b 0a20 2070 6163 6b61 6765 207b  sq {.  package {
│ │ │ -0020fbb0: 2027 646e 736d 6173 7127 3a0a 2020 2020   'dnsmasq':.    
│ │ │ -0020fbc0: 656e 7375 7265 203d 2667 743b 2027 7075  ensure => 'pu
│ │ │ -0020fbd0: 7267 6564 272c 0a20 207d 0a7d 0a3c 2f63  rged',.  }.}.
│ │ │ -0020fbf0: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ -0020fc90: 6564 6961 7469 6f6e 2041 6e73 6962 6c65 ediation Ansible │ │ │ -0020fca0: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -0020fcb0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ -0020fd50: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ -0020fda0: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
- n
│ │ │ -0020fde0: 616d 653a 2027 556e 696e 7374 616c 6c20  ame: 'Uninstall 
│ │ │ -0020fdf0: 646e 736d 6173 7120 5061 636b 6167 653a  dnsmasq Package:
│ │ │ -0020fe00: 2045 6e73 7572 6520 646e 736d 6173 7120   Ensure dnsmasq 
│ │ │ -0020fe10: 6973 2072 656d 6f76 6564 270a 2020 616e  is removed'.  an
│ │ │ -0020fe20: 7369 626c 652e 6275 696c 7469 6e2e 7061  sible.builtin.pa
│ │ │ -0020fe30: 636b 6167 653a 0a20 2020 206e 616d 653a  ckage:.    name:
│ │ │ -0020fe40: 2064 6e73 6d61 7371 0a20 2020 2073 7461   dnsmasq.    sta
│ │ │ -0020fe50: 7465 3a20 6162 7365 6e74 0a20 2074 6167  te: absent.  tag
│ │ │ -0020fe60: 733a 0a20 202d 2064 6973 6162 6c65 5f73  s:.  - disable_s
│ │ │ -0020fe70: 7472 6174 6567 790a 2020 2d20 6c6f 775f  trategy.  - low_
│ │ │ -0020fe80: 636f 6d70 6c65 7869 7479 0a20 202d 206c  complexity.  - l
│ │ │ -0020fe90: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ -0020fea0: 2d20 6c6f 775f 7365 7665 7269 7479 0a20  - low_severity. 
│ │ │ -0020feb0: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ -0020fec0: 6465 640a 2020 2d20 7061 636b 6167 655f  ded.  - package_
│ │ │ -0020fed0: 646e 736d 6173 715f 7265 6d6f 7665 640a  dnsmasq_removed.
│ │ │ -0020fee0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ -0020ff90: 5265 6d65 6469 6174 696f 6e20 5368 656c Remediation Shel │ │ │ -0020ffa0: 6c20 7363 7269 7074 20e2 87b2 3c2f 613e l script ... │ │ │ -0020ffb0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
Co │ │ │ -0020fd30: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -0020fd60: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ -0020fd80: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ -0020fd90: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ -0020fdb0: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ -0020fdc0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
low< │ │ │ -00210050: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ -002100a0: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
.# 
│ │ │ -002100e0: 4341 5554 494f 4e3a 2054 6869 7320 7265  CAUTION: This re
│ │ │ -002100f0: 6d65 6469 6174 696f 6e20 7363 7269 7074  mediation script
│ │ │ -00210100: 2077 696c 6c20 7265 6d6f 7665 2064 6e73   will remove dns
│ │ │ -00210110: 6d61 7371 0a23 2066 726f 6d20 7468 6520  masq.# from the 
│ │ │ -00210120: 7379 7374 656d 2c20 616e 6420 6d61 7920  system, and may 
│ │ │ -00210130: 7265 6d6f 7665 2061 6e79 2070 6163 6b61  remove any packa
│ │ │ -00210140: 6765 730a 2320 7468 6174 2064 6570 656e  ges.# that depen
│ │ │ -00210150: 6420 6f6e 2064 6e73 6d61 7371 2e20 4578  d on dnsmasq. Ex
│ │ │ -00210160: 6563 7574 6520 7468 6973 0a23 2072 656d  ecute this.# rem
│ │ │ -00210170: 6564 6961 7469 6f6e 2041 4654 4552 2074  ediation AFTER t
│ │ │ -00210180: 6573 7469 6e67 206f 6e20 6120 6e6f 6e2d  esting on a non-
│ │ │ -00210190: 7072 6f64 7563 7469 6f6e 0a23 2073 7973  production.# sys
│ │ │ -002101a0: 7465 6d21 0a0a 0a69 6620 7270 6d20 2d71  tem!...if rpm -q
│ │ │ -002101b0: 202d 2d71 7569 6574 2022 646e 736d 6173   --quiet "dnsmas
│ │ │ -002101c0: 7122 203b 2074 6865 6e0a 646e 6620 7265  q" ; then.dnf re
│ │ │ -002101d0: 6d6f 7665 202d 7920 2d2d 6e6f 6175 746f  move -y --noauto
│ │ │ -002101e0: 7265 6d6f 7665 2022 646e 736d 6173 7122  remove "dnsmasq"
│ │ │ -002101f0: 0a66 690a 3c2f 636f 6465 3e3c 2f70 7265  .fi.

Co │ │ │ -00210030: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -00210060: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ -00210080: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ -00210090: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ -002100b0: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ -002100c0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
│ │ │ +0020f8d0: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ +0020f8f0: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ +0020f920: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ +0020f8b0: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ +0020f8c0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ +0020f8e0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ +0020f900: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ +0020f910: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:disable
< │ │ │ +0020f950: 7072 653e 3c63 6f64 653e 2d20 6e61 6d65 pre>- name │ │ │ +0020f960: 3a20 2755 6e69 6e73 7461 6c6c 2064 6e73 : 'Uninstall dns │ │ │ +0020f970: 6d61 7371 2050 6163 6b61 6765 3a20 456e masq Package: En │ │ │ +0020f980: 7375 7265 2064 6e73 6d61 7371 2069 7320 sure dnsmasq is │ │ │ +0020f990: 7265 6d6f 7665 6427 0a20 2061 6e73 6962 removed'. ansib │ │ │ +0020f9a0: 6c65 2e62 7569 6c74 696e 2e70 6163 6b61 le.builtin.packa │ │ │ +0020f9b0: 6765 3a0a 2020 2020 6e61 6d65 3a20 646e ge:. name: dn │ │ │ +0020f9c0: 736d 6173 710a 2020 2020 7374 6174 653a smasq. state: │ │ │ +0020f9d0: 2061 6273 656e 740a 2020 7461 6773 3a0a absent. tags:. │ │ │ +0020f9e0: 2020 2d20 6469 7361 626c 655f 7374 7261 - disable_stra │ │ │ +0020f9f0: 7465 6779 0a20 202d 206c 6f77 5f63 6f6d tegy. - low_com │ │ │ +0020fa00: 706c 6578 6974 790a 2020 2d20 6c6f 775f plexity. - low_ │ │ │ +0020fa10: 6469 7372 7570 7469 6f6e 0a20 202d 206c disruption. - l │ │ │ +0020fa20: 6f77 5f73 6576 6572 6974 790a 2020 2d20 ow_severity. - │ │ │ +0020fa30: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564 no_reboot_needed │ │ │ +0020fa40: 0a20 202d 2070 6163 6b61 6765 5f64 6e73 . - package_dns │ │ │ +0020fa50: 6d61 7371 5f72 656d 6f76 6564 0a3c 2f63 masq_removed.
│ │ │ +0020fa70: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ +0020fb10: 6564 6961 7469 6f6e 2050 7570 7065 7420 ediation Puppet │ │ │ +0020fb20: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ +0020fb30: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Com │ │ │ +0020fbb0: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ +0020fbe0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ +0020fc00: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +0020fc10: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ +0020fc30: 2f74 683e 3c74 643e 6469 7361 626c 653c /th>disable< │ │ │ +0020fc40: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
.inc
│ │ │ +0020fc60: 6c75 6465 2072 656d 6f76 655f 646e 736d  lude remove_dnsm
│ │ │ +0020fc70: 6173 710a 0a63 6c61 7373 2072 656d 6f76  asq..class remov
│ │ │ +0020fc80: 655f 646e 736d 6173 7120 7b0a 2020 7061  e_dnsmasq {.  pa
│ │ │ +0020fc90: 636b 6167 6520 7b20 2764 6e73 6d61 7371  ckage { 'dnsmasq
│ │ │ +0020fca0: 273a 0a20 2020 2065 6e73 7572 6520 3d26  ':.    ensure =&
│ │ │ +0020fcb0: 6774 3b20 2770 7572 6765 6427 2c0a 2020  gt; 'purged',.  
│ │ │ +0020fcc0: 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70 7265  }.}.
Remediation │ │ │ +0020fd80: 5368 656c 6c20 7363 7269 7074 20e2 87b2 Shell script ... │ │ │ +0020fd90: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity: │ │ │ +0020fe60: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +0020fe70: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
.# CAUTION: Thi
│ │ │ +0020fed0: 7320 7265 6d65 6469 6174 696f 6e20 7363  s remediation sc
│ │ │ +0020fee0: 7269 7074 2077 696c 6c20 7265 6d6f 7665  ript will remove
│ │ │ +0020fef0: 2064 6e73 6d61 7371 0a23 2066 726f 6d20   dnsmasq.# from 
│ │ │ +0020ff00: 7468 6520 7379 7374 656d 2c20 616e 6420  the system, and 
│ │ │ +0020ff10: 6d61 7920 7265 6d6f 7665 2061 6e79 2070  may remove any p
│ │ │ +0020ff20: 6163 6b61 6765 730a 2320 7468 6174 2064  ackages.# that d
│ │ │ +0020ff30: 6570 656e 6420 6f6e 2064 6e73 6d61 7371  epend on dnsmasq
│ │ │ +0020ff40: 2e20 4578 6563 7574 6520 7468 6973 0a23  . Execute this.#
│ │ │ +0020ff50: 2072 656d 6564 6961 7469 6f6e 2041 4654   remediation AFT
│ │ │ +0020ff60: 4552 2074 6573 7469 6e67 206f 6e20 6120  ER testing on a 
│ │ │ +0020ff70: 6e6f 6e2d 7072 6f64 7563 7469 6f6e 0a23  non-production.#
│ │ │ +0020ff80: 2073 7973 7465 6d21 0a0a 0a69 6620 7270   system!...if rp
│ │ │ +0020ff90: 6d20 2d71 202d 2d71 7569 6574 2022 646e  m -q --quiet "dn
│ │ │ +0020ffa0: 736d 6173 7122 203b 2074 6865 6e0a 646e  smasq" ; then.dn
│ │ │ +0020ffb0: 6620 7265 6d6f 7665 202d 7920 2d2d 6e6f  f remove -y --no
│ │ │ +0020ffc0: 6175 746f 7265 6d6f 7665 2022 646e 736d  autoremove "dnsm
│ │ │ +0020ffd0: 6173 7122 0a66 690a 3c2f 636f 6465 3e3c  asq".fi.<
│ │ │ +0020ffe0: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>Remediat
│ │ │ +00210090: 696f 6e20 416e 6163 6f6e 6461 2073 6e69  ion Anaconda sni
│ │ │ +002100a0: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e  ppet ...
│ │ │ +002100b0: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ +002100e0: 3c74 6162 6c65 2063 6c61 7373 3d22 7461
low
Disru │ │ │ +0020fe40: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +0020fe50: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +0020fe90: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ +0020fea0: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
< │ │ │ +00210150: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ +00210170: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ +002101a0: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
Comple │ │ │ +00210130: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ +00210140: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ +00210180: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +00210190: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
disable

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

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

│ │ │ +002119f0: 2d20 6e61 6d65 3a20 2755 6e69 6e73 7461  - name: 'Uninsta
│ │ │ +00211a00: 6c6c 2076 7366 7470 6420 5061 636b 6167  ll vsftpd Packag
│ │ │ +00211a10: 653a 2045 6e73 7572 6520 7673 6674 7064  e: Ensure vsftpd
│ │ │ +00211a20: 2069 7320 7265 6d6f 7665 6427 0a20 2061   is removed'.  a
│ │ │ +00211a30: 6e73 6962 6c65 2e62 7569 6c74 696e 2e70  nsible.builtin.p
│ │ │ +00211a40: 6163 6b61 6765 3a0a 2020 2020 6e61 6d65  ackage:.    name
│ │ │ +00211a50: 3a20 7673 6674 7064 0a20 2020 2073 7461  : vsftpd.    sta
│ │ │ +00211a60: 7465 3a20 6162 7365 6e74 0a20 2074 6167  te: absent.  tag
│ │ │ +00211a70: 733a 0a20 202d 204e 4953 542d 3830 302d  s:.  - NIST-800-
│ │ │ +00211a80: 3533 2d43 4d2d 3628 6129 0a20 202d 204e  53-CM-6(a).  - N
│ │ │ +00211a90: 4953 542d 3830 302d 3533 2d43 4d2d 370a  IST-800-53-CM-7.
│ │ │ +00211aa0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +00211ab0: 434d 2d37 2861 290a 2020 2d20 4e49 5354  CM-7(a).  - NIST
│ │ │ +00211ac0: 2d38 3030 2d35 332d 434d 2d37 2862 290a  -800-53-CM-7(b).
│ │ │ +00211ad0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +00211ae0: 434d 2d37 2e31 2869 6929 0a20 202d 204e  CM-7.1(ii).  - N
│ │ │ +00211af0: 4953 542d 3830 302d 3533 2d49 412d 3528  IST-800-53-IA-5(
│ │ │ +00211b00: 3129 2863 290a 2020 2d20 4e49 5354 2d38  1)(c).  - NIST-8
│ │ │ +00211b10: 3030 2d35 332d 4941 2d35 2831 292e 3128  00-53-IA-5(1).1(
│ │ │ +00211b20: 7629 0a20 202d 2064 6973 6162 6c65 5f73  v).  - disable_s
│ │ │ +00211b30: 7472 6174 6567 790a 2020 2d20 6869 6768  trategy.  - high
│ │ │ +00211b40: 5f73 6576 6572 6974 790a 2020 2d20 6c6f  _severity.  - lo
│ │ │ +00211b50: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ +00211b60: 206c 6f77 5f64 6973 7275 7074 696f 6e0a   low_disruption.
│ │ │ +00211b70: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ +00211b80: 6564 6564 0a20 202d 2070 6163 6b61 6765  eded.  - package
│ │ │ +00211b90: 5f76 7366 7470 645f 7265 6d6f 7665 640a  _vsftpd_removed.
│ │ │ +00211ba0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ +00211c50: 5265 6d65 6469 6174 696f 6e20 5075 7070 Remediation Pupp │ │ │ +00211c60: 6574 2073 6e69 7070 6574 20e2 87b2 3c2f et snippet ...
Complexity:low
Disrup │ │ │ +00211970: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ +00211980: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ +002119c0: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ +002119d0: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
│ │ │ +00211d00: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
.
│ │ │ +00211da0: 696e 636c 7564 6520 7265 6d6f 7665 5f76  include remove_v
│ │ │ +00211db0: 7366 7470 640a 0a63 6c61 7373 2072 656d  sftpd..class rem
│ │ │ +00211dc0: 6f76 655f 7673 6674 7064 207b 0a20 2070  ove_vsftpd {.  p
│ │ │ +00211dd0: 6163 6b61 6765 207b 2027 7673 6674 7064  ackage { 'vsftpd
│ │ │ +00211de0: 273a 0a20 2020 2065 6e73 7572 6520 3d26  ':.    ensure =&
│ │ │ +00211df0: 6774 3b20 2770 7572 6765 6427 2c0a 2020  gt; 'purged',.  
│ │ │ +00211e00: 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70 7265  }.}.
Remediation │ │ │ +00211ec0: 5368 656c 6c20 7363 7269 7074 20e2 87b2 Shell script ... │ │ │ +00211ed0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
│ │ │ +00211cf0: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +00211d20: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +00211d30: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +00211d70: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ +00211d80: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Complexity: │ │ │ +00211fa0: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +00211fb0: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
.# CAUTION: Thi
│ │ │ +00212010: 7320 7265 6d65 6469 6174 696f 6e20 7363  s remediation sc
│ │ │ +00212020: 7269 7074 2077 696c 6c20 7265 6d6f 7665  ript will remove
│ │ │ +00212030: 2076 7366 7470 640a 2320 6672 6f6d 2074   vsftpd.# from t
│ │ │ +00212040: 6865 2073 7973 7465 6d2c 2061 6e64 206d  he system, and m
│ │ │ +00212050: 6179 2072 656d 6f76 6520 616e 7920 7061  ay remove any pa
│ │ │ +00212060: 636b 6167 6573 0a23 2074 6861 7420 6465  ckages.# that de
│ │ │ +00212070: 7065 6e64 206f 6e20 7673 6674 7064 2e20  pend on vsftpd. 
│ │ │ +00212080: 4578 6563 7574 6520 7468 6973 0a23 2072  Execute this.# r
│ │ │ +00212090: 656d 6564 6961 7469 6f6e 2041 4654 4552  emediation AFTER
│ │ │ +002120a0: 2074 6573 7469 6e67 206f 6e20 6120 6e6f   testing on a no
│ │ │ +002120b0: 6e2d 7072 6f64 7563 7469 6f6e 0a23 2073  n-production.# s
│ │ │ +002120c0: 7973 7465 6d21 0a0a 0a69 6620 7270 6d20  ystem!...if rpm 
│ │ │ +002120d0: 2d71 202d 2d71 7569 6574 2022 7673 6674  -q --quiet "vsft
│ │ │ +002120e0: 7064 2220 3b20 7468 656e 0a64 6e66 2072  pd" ; then.dnf r
│ │ │ +002120f0: 656d 6f76 6520 2d79 202d 2d6e 6f61 7574  emove -y --noaut
│ │ │ +00212100: 6f72 656d 6f76 6520 2276 7366 7470 6422  oremove "vsftpd"
│ │ │ +00212110: 0a66 690a 3c2f 636f 6465 3e3c 2f70 7265  .fi.
Remediation │ │ │ +002121d0: 416e 6163 6f6e 6461 2073 6e69 7070 6574 Anaconda snippet │ │ │ +002121e0: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
< │ │ │ +002122a0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +002122b0: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c
low
Disru │ │ │ +00211f80: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +00211f90: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +00211fd0: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ +00211fe0: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
Complexity │ │ │ +00212270: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
D │ │ │ +00212290: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:
Reboot:< │ │ │ +002122c0: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>false
S │ │ │ +002122e0: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:disable
<
│ │ │ +00212310: 636f 6465 3e0a 0a70 6163 6b61 6765 202d  code>..package -
│ │ │ +00212320: 2d72 656d 6f76 653d 7673 6674 7064 0a3c  -remove=vsftpd.<
│ │ │  00212330: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ -00212d30: 656d 6564 6961 7469 6f6e 2041 6e61 636f emediation Anaco │ │ │ -00212d40: 6e64 6120 736e 6970 7065 7420 e287 b23c nda snippet ...< │ │ │ -00212d50: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
< │ │ │ -00212e20: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -00212e30: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

│ │ │ -00212e80: 0a0a 7061 636b 6167 6520 2d2d 7265 6d6f  ..package --remo
│ │ │ -00212e90: 7665 3d66 7470 0a3c 2f63 6f64 653e 3c2f  ve=ftp.Remediati
│ │ │ -00212f50: 6f6e 2050 7570 7065 7420 736e 6970 7065  on Puppet snippe
│ │ │ -00212f60: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469  t ...
< │ │ │ -00212fe0: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>
│ │ │ -00213020: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 disable
Complexity:low
Disrup │ │ │ -00212e00: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -00212e10: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -00212e50: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ -00212e60: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Complexit │ │ │ -00212ff0: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low
│ │ │ -00213010: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption:low
Reboot: │ │ │ -00213040: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false
│ │ │ -00213060: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:
│ │ │ -00213090: 3c63 6f64 653e 0a69 6e63 6c75 6465 2072  .include r
│ │ │ -002130a0: 656d 6f76 655f 6674 700a 0a63 6c61 7373  emove_ftp..class
│ │ │ -002130b0: 2072 656d 6f76 655f 6674 7020 7b0a 2020   remove_ftp {.  
│ │ │ -002130c0: 7061 636b 6167 6520 7b20 2766 7470 273a  package { 'ftp':
│ │ │ -002130d0: 0a20 2020 2065 6e73 7572 6520 3d26 6774  .    ensure =>
│ │ │ -002130e0: 3b20 2770 7572 6765 6427 2c0a 2020 7d0a  ; 'purged',.  }.
│ │ │ -002130f0: 7d0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  }.
< │ │ │ -00213100: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation An │ │ │ -002131b0: 7369 626c 6520 736e 6970 7065 7420 e287 sible snippet .. │ │ │ -002131c0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ -00213240: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -00213260: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -002132b0: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>< │ │ │ -002132e0: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
- name: 'Remov
│ │ │ -00213300: 6520 6674 7020 5061 636b 6167 653a 2045  e ftp Package: E
│ │ │ -00213310: 6e73 7572 6520 6674 7020 6973 2072 656d  nsure ftp is rem
│ │ │ -00213320: 6f76 6564 270a 2020 616e 7369 626c 652e  oved'.  ansible.
│ │ │ -00213330: 6275 696c 7469 6e2e 7061 636b 6167 653a  builtin.package:
│ │ │ -00213340: 0a20 2020 206e 616d 653a 2066 7470 0a20  .    name: ftp. 
│ │ │ -00213350: 2020 2073 7461 7465 3a20 6162 7365 6e74     state: absent
│ │ │ -00213360: 0a20 2074 6167 733a 0a20 202d 2050 4349  .  tags:.  - PCI
│ │ │ -00213370: 2d44 5353 7634 2d32 2e32 0a20 202d 2050  -DSSv4-2.2.  - P
│ │ │ -00213380: 4349 2d44 5353 7634 2d32 2e32 2e34 0a20  CI-DSSv4-2.2.4. 
│ │ │ -00213390: 202d 2064 6973 6162 6c65 5f73 7472 6174   - disable_strat
│ │ │ -002133a0: 6567 790a 2020 2d20 6c6f 775f 636f 6d70  egy.  - low_comp
│ │ │ -002133b0: 6c65 7869 7479 0a20 202d 206c 6f77 5f64  lexity.  - low_d
│ │ │ -002133c0: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ -002133d0: 775f 7365 7665 7269 7479 0a20 202d 206e  w_severity.  - n
│ │ │ -002133e0: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ -002133f0: 2020 2d20 7061 636b 6167 655f 6674 705f    - package_ftp_
│ │ │ -00213400: 7265 6d6f 7665 640a 3c2f 636f 6465 3e3c  removed.<
│ │ │ -00213410: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>Remediat
│ │ │ -002134c0: 696f 6e20 5368 656c 6c20 7363 7269 7074  ion Shell script
│ │ │ -002134d0: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976   ...
< │ │ │ -00213590: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -002135a0: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c
low
Disr │ │ │ -00213270: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -00213280: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ -002132c0: 7465 6779 3a3c 2f74 683e 3c74 643e 6469 tegy:di │ │ │ -002132d0: 7361 626c 653c 2f74 643e 3c2f 7472 3e3c sable
Complexity │ │ │ -00213560: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
D │ │ │ -00213580: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:
Reboot:< │ │ │ -002135b0: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>false
S │ │ │ -002135d0: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:disable
<
│ │ │ -00213600: 636f 6465 3e0a 2320 4341 5554 494f 4e3a  code>.# CAUTION:
│ │ │ -00213610: 2054 6869 7320 7265 6d65 6469 6174 696f   This remediatio
│ │ │ -00213620: 6e20 7363 7269 7074 2077 696c 6c20 7265  n script will re
│ │ │ -00213630: 6d6f 7665 2066 7470 0a23 2066 726f 6d20  move ftp.# from 
│ │ │ -00213640: 7468 6520 7379 7374 656d 2c20 616e 6420  the system, and 
│ │ │ -00213650: 6d61 7920 7265 6d6f 7665 2061 6e79 2070  may remove any p
│ │ │ -00213660: 6163 6b61 6765 730a 2320 7468 6174 2064  ackages.# that d
│ │ │ -00213670: 6570 656e 6420 6f6e 2066 7470 2e20 4578  epend on ftp. Ex
│ │ │ -00213680: 6563 7574 6520 7468 6973 0a23 2072 656d  ecute this.# rem
│ │ │ -00213690: 6564 6961 7469 6f6e 2041 4654 4552 2074  ediation AFTER t
│ │ │ -002136a0: 6573 7469 6e67 206f 6e20 6120 6e6f 6e2d  esting on a non-
│ │ │ -002136b0: 7072 6f64 7563 7469 6f6e 0a23 2073 7973  production.# sys
│ │ │ -002136c0: 7465 6d21 0a0a 0a69 6620 7270 6d20 2d71  tem!...if rpm -q
│ │ │ -002136d0: 202d 2d71 7569 6574 2022 6674 7022 203b   --quiet "ftp" ;
│ │ │ -002136e0: 2074 6865 6e0a 646e 6620 7265 6d6f 7665   then.dnf remove
│ │ │ -002136f0: 202d 7920 2d2d 6e6f 6175 746f 7265 6d6f   -y --noautoremo
│ │ │ -00213700: 7665 2022 6674 7022 0a66 690a 3c2f 636f  ve "ftp".fi.
│ │ │ +00212de0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
-
│ │ │ +00212e80: 206e 616d 653a 2027 5265 6d6f 7665 2066   name: 'Remove f
│ │ │ +00212e90: 7470 2050 6163 6b61 6765 3a20 456e 7375  tp Package: Ensu
│ │ │ +00212ea0: 7265 2066 7470 2069 7320 7265 6d6f 7665  re ftp is remove
│ │ │ +00212eb0: 6427 0a20 2061 6e73 6962 6c65 2e62 7569  d'.  ansible.bui
│ │ │ +00212ec0: 6c74 696e 2e70 6163 6b61 6765 3a0a 2020  ltin.package:.  
│ │ │ +00212ed0: 2020 6e61 6d65 3a20 6674 700a 2020 2020    name: ftp.    
│ │ │ +00212ee0: 7374 6174 653a 2061 6273 656e 740a 2020  state: absent.  
│ │ │ +00212ef0: 7461 6773 3a0a 2020 2d20 5043 492d 4453  tags:.  - PCI-DS
│ │ │ +00212f00: 5376 342d 322e 320a 2020 2d20 5043 492d  Sv4-2.2.  - PCI-
│ │ │ +00212f10: 4453 5376 342d 322e 322e 340a 2020 2d20  DSSv4-2.2.4.  - 
│ │ │ +00212f20: 6469 7361 626c 655f 7374 7261 7465 6779  disable_strategy
│ │ │ +00212f30: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ +00212f40: 6974 790a 2020 2d20 6c6f 775f 6469 7372  ity.  - low_disr
│ │ │ +00212f50: 7570 7469 6f6e 0a20 202d 206c 6f77 5f73  uption.  - low_s
│ │ │ +00212f60: 6576 6572 6974 790a 2020 2d20 6e6f 5f72  everity.  - no_r
│ │ │ +00212f70: 6562 6f6f 745f 6e65 6564 6564 0a20 202d  eboot_needed.  -
│ │ │ +00212f80: 2070 6163 6b61 6765 5f66 7470 5f72 656d   package_ftp_rem
│ │ │ +00212f90: 6f76 6564 0a3c 2f63 6f64 653e 3c2f 7072  oved.Remediation
│ │ │ +00213050: 2050 7570 7065 7420 736e 6970 7065 7420   Puppet snippet 
│ │ │ +00213060: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620  ...
low< │ │ │ +00213130: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>
│ │ │ +00212dd0: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +00212e00: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +00212e10: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +00212e50: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ +00212e60: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Complexity: │ │ │ +002130f0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Di │ │ │ +00213110: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:
Reboot:false
St │ │ │ +00213160: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ +00213170: 6469 7361 626c 653c 2f74 643e 3c2f 7472 disable
.include rem
│ │ │ +002131a0: 6f76 655f 6674 700a 0a63 6c61 7373 2072  ove_ftp..class r
│ │ │ +002131b0: 656d 6f76 655f 6674 7020 7b0a 2020 7061  emove_ftp {.  pa
│ │ │ +002131c0: 636b 6167 6520 7b20 2766 7470 273a 0a20  ckage { 'ftp':. 
│ │ │ +002131d0: 2020 2065 6e73 7572 6520 3d26 6774 3b20     ensure => 
│ │ │ +002131e0: 2770 7572 6765 6427 2c0a 2020 7d0a 7d0a  'purged',.  }.}.
│ │ │ +002131f0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ +002132a0: 5265 6d65 6469 6174 696f 6e20 5368 656c Remediation Shel │ │ │ +002132b0: 6c20 7363 7269 7074 20e2 87b2 3c2f 613e l script ... │ │ │ +002132c0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ +00213360: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ +002133b0: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
.# 
│ │ │ +002133f0: 4341 5554 494f 4e3a 2054 6869 7320 7265  CAUTION: This re
│ │ │ +00213400: 6d65 6469 6174 696f 6e20 7363 7269 7074  mediation script
│ │ │ +00213410: 2077 696c 6c20 7265 6d6f 7665 2066 7470   will remove ftp
│ │ │ +00213420: 0a23 2066 726f 6d20 7468 6520 7379 7374  .# from the syst
│ │ │ +00213430: 656d 2c20 616e 6420 6d61 7920 7265 6d6f  em, and may remo
│ │ │ +00213440: 7665 2061 6e79 2070 6163 6b61 6765 730a  ve any packages.
│ │ │ +00213450: 2320 7468 6174 2064 6570 656e 6420 6f6e  # that depend on
│ │ │ +00213460: 2066 7470 2e20 4578 6563 7574 6520 7468   ftp. Execute th
│ │ │ +00213470: 6973 0a23 2072 656d 6564 6961 7469 6f6e  is.# remediation
│ │ │ +00213480: 2041 4654 4552 2074 6573 7469 6e67 206f   AFTER testing o
│ │ │ +00213490: 6e20 6120 6e6f 6e2d 7072 6f64 7563 7469  n a non-producti
│ │ │ +002134a0: 6f6e 0a23 2073 7973 7465 6d21 0a0a 0a69  on.# system!...i
│ │ │ +002134b0: 6620 7270 6d20 2d71 202d 2d71 7569 6574  f rpm -q --quiet
│ │ │ +002134c0: 2022 6674 7022 203b 2074 6865 6e0a 646e   "ftp" ; then.dn
│ │ │ +002134d0: 6620 7265 6d6f 7665 202d 7920 2d2d 6e6f  f remove -y --no
│ │ │ +002134e0: 6175 746f 7265 6d6f 7665 2022 6674 7022  autoremove "ftp"
│ │ │ +002134f0: 0a66 690a 3c2f 636f 6465 3e3c 2f70 7265  .fi.
Remediation │ │ │ +002135b0: 416e 6163 6f6e 6461 2073 6e69 7070 6574 Anaconda snippet │ │ │ +002135c0: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
< │ │ │ +00213680: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +00213690: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c
Co │ │ │ +00213340: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +00213370: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +00213390: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +002133a0: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +002133c0: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ +002133d0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Complexity │ │ │ +00213650: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
D │ │ │ +00213670: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:
Reboot:< │ │ │ +002136a0: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>false
S │ │ │ +002136c0: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:disable
<
│ │ │ +002136f0: 636f 6465 3e0a 0a70 6163 6b61 6765 202d  code>..package -
│ │ │ +00213700: 2d72 656d 6f76 653d 6674 700a 3c2f 636f  -remove=ftp.
< │ │ │ 00213720: 2f64 6976 3e3c 2f74 643e 3c2f 7472 3e3c /div>< │ │ │ 00213730: 2f74 626f 6479 3e3c 2f74 6162 6c65 3e3c /tbody>< │ │ │ 00213740: 2f74 643e 3c2f 7472 3e3c 7472 2064 6174 /td>Remediation Ana │ │ │ -00214d30: 636f 6e64 6120 736e 6970 7065 7420 e287 conda snippet .. │ │ │ -00214d40: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ -00214dc0: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -00214de0: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -00214e30: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>< │ │ │ -00214e60: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
..package --re
│ │ │ -00214e80: 6d6f 7665 3d68 7474 7064 0a3c 2f63 6f64  move=httpd.
Remed │ │ │ -00214f40: 6961 7469 6f6e 2050 7570 7065 7420 736e iation Puppet sn │ │ │ -00214f50: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
low
Disr │ │ │ -00214df0: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -00214e00: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ -00214e40: 7465 6779 3a3c 2f74 683e 3c74 643e 6469 tegy:di │ │ │ -00214e50: 7361 626c 653c 2f74 643e 3c2f 7472 3e3c sable
│ │ │ -00215000: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ -00215020: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ -00215050: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ -00214fe0: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ -00214ff0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ -00215010: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ -00215030: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -00215040: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:disable
< │ │ │ -00215080: 7072 653e 3c63 6f64 653e 0a69 6e63 6c75 pre>.inclu │ │ │ -00215090: 6465 2072 656d 6f76 655f 6874 7470 640a de remove_httpd. │ │ │ -002150a0: 0a63 6c61 7373 2072 656d 6f76 655f 6874 .class remove_ht │ │ │ -002150b0: 7470 6420 7b0a 2020 7061 636b 6167 6520 tpd {. package │ │ │ -002150c0: 7b20 2768 7474 7064 273a 0a20 2020 2065 { 'httpd':. e │ │ │ -002150d0: 6e73 7572 6520 3d26 6774 3b20 2770 7572 nsure => 'pur │ │ │ -002150e0: 6765 6427 2c0a 2020 7d0a 7d0a 3c2f 636f ged',. }.}.
< │ │ │ -00215100: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ -00215110: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ -00215120: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ -00215130: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ -00215140: 6436 3630 2220 7461 6269 6e64 6578 3d22 d660" tabindex=" │ │ │ -00215150: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ -00215160: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ -00215170: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ -00215180: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ -00215190: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ -002151a0: 6469 6174 696f 6e20 416e 7369 626c 6520 diation Ansible │ │ │ -002151b0: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ -002151c0: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Com │ │ │ -00215240: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ -00215270: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ -00215290: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -002152a0: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -002152c0: 2f74 683e 3c74 643e 6469 7361 626c 653c /th>disable< │ │ │ -002152d0: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
- na
│ │ │ -002152f0: 6d65 3a20 2755 6e69 6e73 7461 6c6c 2068  me: 'Uninstall h
│ │ │ -00215300: 7474 7064 2050 6163 6b61 6765 3a20 456e  ttpd Package: En
│ │ │ -00215310: 7375 7265 2068 7474 7064 2069 7320 7265  sure httpd is re
│ │ │ -00215320: 6d6f 7665 6427 0a20 2061 6e73 6962 6c65  moved'.  ansible
│ │ │ -00215330: 2e62 7569 6c74 696e 2e70 6163 6b61 6765  .builtin.package
│ │ │ -00215340: 3a0a 2020 2020 6e61 6d65 3a20 6874 7470  :.    name: http
│ │ │ -00215350: 640a 2020 2020 7374 6174 653a 2061 6273  d.    state: abs
│ │ │ -00215360: 656e 740a 2020 7461 6773 3a0a 2020 2d20  ent.  tags:.  - 
│ │ │ -00215370: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ -00215380: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ -00215390: 2d35 332d 434d 2d37 2861 290a 2020 2d20  -53-CM-7(a).  - 
│ │ │ -002153a0: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ -002153b0: 2862 290a 2020 2d20 6469 7361 626c 655f  (b).  - disable_
│ │ │ -002153c0: 7374 7261 7465 6779 0a20 202d 206c 6f77  strategy.  - low
│ │ │ -002153d0: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ -002153e0: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ -002153f0: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ -00215400: 6465 640a 2020 2d20 7061 636b 6167 655f  ded.  - package_
│ │ │ -00215410: 6874 7470 645f 7265 6d6f 7665 640a 2020  httpd_removed.  
│ │ │ -00215420: 2d20 756e 6b6e 6f77 6e5f 7365 7665 7269  - unknown_severi
│ │ │ -00215430: 7479 0a3c 2f63 6f64 653e 3c2f 7072 653e  ty.
│ │ │ -00215440: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation S │ │ │ -002154f0: 6865 6c6c 2073 6372 6970 7420 e287 b23c hell script ...< │ │ │ -00215500: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
< │ │ │ -002155d0: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -002155e0: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

│ │ │ -00215630: 0a23 2043 4155 5449 4f4e 3a20 5468 6973  .# CAUTION: This
│ │ │ -00215640: 2072 656d 6564 6961 7469 6f6e 2073 6372   remediation scr
│ │ │ -00215650: 6970 7420 7769 6c6c 2072 656d 6f76 6520  ipt will remove 
│ │ │ -00215660: 6874 7470 640a 2320 6672 6f6d 2074 6865  httpd.# from the
│ │ │ -00215670: 2073 7973 7465 6d2c 2061 6e64 206d 6179   system, and may
│ │ │ -00215680: 2072 656d 6f76 6520 616e 7920 7061 636b   remove any pack
│ │ │ -00215690: 6167 6573 0a23 2074 6861 7420 6465 7065  ages.# that depe
│ │ │ -002156a0: 6e64 206f 6e20 6874 7470 642e 2045 7865  nd on httpd. Exe
│ │ │ -002156b0: 6375 7465 2074 6869 730a 2320 7265 6d65  cute this.# reme
│ │ │ -002156c0: 6469 6174 696f 6e20 4146 5445 5220 7465  diation AFTER te
│ │ │ -002156d0: 7374 696e 6720 6f6e 2061 206e 6f6e 2d70  sting on a non-p
│ │ │ -002156e0: 726f 6475 6374 696f 6e0a 2320 7379 7374  roduction.# syst
│ │ │ -002156f0: 656d 210a 0a0a 6966 2072 706d 202d 7120  em!...if rpm -q 
│ │ │ -00215700: 2d2d 7175 6965 7420 2268 7474 7064 2220  --quiet "httpd" 
│ │ │ -00215710: 3b20 7468 656e 0a64 6e66 2072 656d 6f76  ; then.dnf remov
│ │ │ -00215720: 6520 2d79 202d 2d6e 6f61 7574 6f72 656d  e -y --noautorem
│ │ │ -00215730: 6f76 6520 2268 7474 7064 220a 6669 0a3c  ove "httpd".fi.<
│ │ │ +00214d20: 3e52 656d 6564 6961 7469 6f6e 2041 6e73  >Remediation Ans
│ │ │ +00214d30: 6962 6c65 2073 6e69 7070 6574 20e2 87b2  ible snippet ...
│ │ │ +00214d40: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61  
Complexity:low
Disrup │ │ │ -002155b0: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -002155c0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -00215600: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ -00215610: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Complexity: │ │ │ +00214e10: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +00214e20: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
- name: 'Uninst
│ │ │ +00214e80: 616c 6c20 6874 7470 6420 5061 636b 6167  all httpd Packag
│ │ │ +00214e90: 653a 2045 6e73 7572 6520 6874 7470 6420  e: Ensure httpd 
│ │ │ +00214ea0: 6973 2072 656d 6f76 6564 270a 2020 616e  is removed'.  an
│ │ │ +00214eb0: 7369 626c 652e 6275 696c 7469 6e2e 7061  sible.builtin.pa
│ │ │ +00214ec0: 636b 6167 653a 0a20 2020 206e 616d 653a  ckage:.    name:
│ │ │ +00214ed0: 2068 7474 7064 0a20 2020 2073 7461 7465   httpd.    state
│ │ │ +00214ee0: 3a20 6162 7365 6e74 0a20 2074 6167 733a  : absent.  tags:
│ │ │ +00214ef0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +00214f00: 2d43 4d2d 3628 6129 0a20 202d 204e 4953  -CM-6(a).  - NIS
│ │ │ +00214f10: 542d 3830 302d 3533 2d43 4d2d 3728 6129  T-800-53-CM-7(a)
│ │ │ +00214f20: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +00214f30: 2d43 4d2d 3728 6229 0a20 202d 2064 6973  -CM-7(b).  - dis
│ │ │ +00214f40: 6162 6c65 5f73 7472 6174 6567 790a 2020  able_strategy.  
│ │ │ +00214f50: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ +00214f60: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ +00214f70: 696f 6e0a 2020 2d20 6e6f 5f72 6562 6f6f  ion.  - no_reboo
│ │ │ +00214f80: 745f 6e65 6564 6564 0a20 202d 2070 6163  t_needed.  - pac
│ │ │ +00214f90: 6b61 6765 5f68 7474 7064 5f72 656d 6f76  kage_httpd_remov
│ │ │ +00214fa0: 6564 0a20 202d 2075 6e6b 6e6f 776e 5f73  ed.  - unknown_s
│ │ │ +00214fb0: 6576 6572 6974 790a 3c2f 636f 6465 3e3c  everity.<
│ │ │ +00214fc0: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>Remediat
│ │ │ +00215070: 696f 6e20 5075 7070 6574 2073 6e69 7070  ion Puppet snipp
│ │ │ +00215080: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64  et ...
│ │ │ +00215100: 3c74 723e 3c74 683e 436f 6d70 6c65 7869
< │ │ │ +00215190: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ +002151a0: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
low
Disru │ │ │ +00214df0: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +00214e00: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +00214e40: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ +00214e50: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
Complexi │ │ │ +00215110: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +00215120: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Disruption:low
Reboot │ │ │ +00215160: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +00215170: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Strategy:
.include 
│ │ │ +002151c0: 7265 6d6f 7665 5f68 7474 7064 0a0a 636c  remove_httpd..cl
│ │ │ +002151d0: 6173 7320 7265 6d6f 7665 5f68 7474 7064  ass remove_httpd
│ │ │ +002151e0: 207b 0a20 2070 6163 6b61 6765 207b 2027   {.  package { '
│ │ │ +002151f0: 6874 7470 6427 3a0a 2020 2020 656e 7375  httpd':.    ensu
│ │ │ +00215200: 7265 203d 2667 743b 2027 7075 7267 6564  re => 'purged
│ │ │ +00215210: 272c 0a20 207d 0a7d 0a3c 2f63 6f64 653e  ',.  }.}.
│ │ │ +00215220: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ +002152d0: 7469 6f6e 2053 6865 6c6c 2073 6372 6970 tion Shell scrip │ │ │ +002152e0: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ +00215360: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ +00215370: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ +00215390: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ +002153a0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ +002153c0: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ +002153e0: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:disable
│ │ │ +00215410: 3c63 6f64 653e 0a23 2043 4155 5449 4f4e  .# CAUTION
│ │ │ +00215420: 3a20 5468 6973 2072 656d 6564 6961 7469  : This remediati
│ │ │ +00215430: 6f6e 2073 6372 6970 7420 7769 6c6c 2072  on script will r
│ │ │ +00215440: 656d 6f76 6520 6874 7470 640a 2320 6672  emove httpd.# fr
│ │ │ +00215450: 6f6d 2074 6865 2073 7973 7465 6d2c 2061  om the system, a
│ │ │ +00215460: 6e64 206d 6179 2072 656d 6f76 6520 616e  nd may remove an
│ │ │ +00215470: 7920 7061 636b 6167 6573 0a23 2074 6861  y packages.# tha
│ │ │ +00215480: 7420 6465 7065 6e64 206f 6e20 6874 7470  t depend on http
│ │ │ +00215490: 642e 2045 7865 6375 7465 2074 6869 730a  d. Execute this.
│ │ │ +002154a0: 2320 7265 6d65 6469 6174 696f 6e20 4146  # remediation AF
│ │ │ +002154b0: 5445 5220 7465 7374 696e 6720 6f6e 2061  TER testing on a
│ │ │ +002154c0: 206e 6f6e 2d70 726f 6475 6374 696f 6e0a   non-production.
│ │ │ +002154d0: 2320 7379 7374 656d 210a 0a0a 6966 2072  # system!...if r
│ │ │ +002154e0: 706d 202d 7120 2d2d 7175 6965 7420 2268  pm -q --quiet "h
│ │ │ +002154f0: 7474 7064 2220 3b20 7468 656e 0a64 6e66  ttpd" ; then.dnf
│ │ │ +00215500: 2072 656d 6f76 6520 2d79 202d 2d6e 6f61   remove -y --noa
│ │ │ +00215510: 7574 6f72 656d 6f76 6520 2268 7474 7064  utoremove "httpd
│ │ │ +00215520: 220a 6669 0a3c 2f63 6f64 653e 3c2f 7072  ".fi.
Remediation │ │ │ +002155e0: 2041 6e61 636f 6e64 6120 736e 6970 7065 Anaconda snippe │ │ │ +002155f0: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ +00215670: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ +00215680: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ +002156a0: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ +002156b0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ +002156d0: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ +002156f0: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:disable
│ │ │ +00215720: 3c63 6f64 653e 0a0a 7061 636b 6167 6520  ..package 
│ │ │ +00215730: 2d2d 7265 6d6f 7665 3d68 7474 7064 0a3c  --remove=httpd.<
│ │ │  00215740: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
Remediation An │ │ │ -002167e0: 6163 6f6e 6461 2073 6e69 7070 6574 20e2 aconda snippet . │ │ │ -002167f0: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ -00216870: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -00216890: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ -002168e0: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ -00216910: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ -00216880: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ -002168a0: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ -002168f0: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ -00216900: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
..package --r
│ │ │ -00216930: 656d 6f76 653d 6e67 696e 780a 3c2f 636f  emove=nginx.
< │ │ │ -00216950: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ -00216960: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ -00216970: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ -00216980: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ -00216990: 6436 3634 2220 7461 6269 6e64 6578 3d22 d664" tabindex=" │ │ │ -002169a0: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ -002169b0: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ -002169c0: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ -002169d0: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ -002169e0: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ -002169f0: 6469 6174 696f 6e20 5075 7070 6574 2073 diation Puppet s │ │ │ -00216a00: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ -00216a90: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -00216aa0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -00216ac0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ -00216ae0: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -00216af0: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ -00216b30: 3c70 7265 3e3c 636f 6465 3e0a 696e 636c
.incl
│ │ │ -00216b40: 7564 6520 7265 6d6f 7665 5f6e 6769 6e78  ude remove_nginx
│ │ │ -00216b50: 0a0a 636c 6173 7320 7265 6d6f 7665 5f6e  ..class remove_n
│ │ │ -00216b60: 6769 6e78 207b 0a20 2070 6163 6b61 6765  ginx {.  package
│ │ │ -00216b70: 207b 2027 6e67 696e 7827 3a0a 2020 2020   { 'nginx':.    
│ │ │ -00216b80: 656e 7375 7265 203d 2667 743b 2027 7075  ensure => 'pu
│ │ │ -00216b90: 7267 6564 272c 0a20 207d 0a7d 0a3c 2f63  rged',.  }.}.
│ │ │ -00216bb0: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ -00216c50: 6564 6961 7469 6f6e 2041 6e73 6962 6c65 ediation Ansible │ │ │ -00216c60: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -00216c70: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ -00216d10: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ -00216d60: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
- n
│ │ │ -00216da0: 616d 653a 2027 556e 696e 7374 616c 6c20  ame: 'Uninstall 
│ │ │ -00216db0: 6e67 696e 7820 5061 636b 6167 653a 2045  nginx Package: E
│ │ │ -00216dc0: 6e73 7572 6520 6e67 696e 7820 6973 2072  nsure nginx is r
│ │ │ -00216dd0: 656d 6f76 6564 270a 2020 616e 7369 626c  emoved'.  ansibl
│ │ │ -00216de0: 652e 6275 696c 7469 6e2e 7061 636b 6167  e.builtin.packag
│ │ │ -00216df0: 653a 0a20 2020 206e 616d 653a 206e 6769  e:.    name: ngi
│ │ │ -00216e00: 6e78 0a20 2020 2073 7461 7465 3a20 6162  nx.    state: ab
│ │ │ -00216e10: 7365 6e74 0a20 2074 6167 733a 0a20 202d  sent.  tags:.  -
│ │ │ -00216e20: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -00216e30: 3628 6129 0a20 202d 204e 4953 542d 3830  6(a).  - NIST-80
│ │ │ -00216e40: 302d 3533 2d43 4d2d 3728 6129 0a20 202d  0-53-CM-7(a).  -
│ │ │ -00216e50: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -00216e60: 3728 6229 0a20 202d 2064 6973 6162 6c65  7(b).  - disable
│ │ │ -00216e70: 5f73 7472 6174 6567 790a 2020 2d20 6c6f  _strategy.  - lo
│ │ │ -00216e80: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ -00216e90: 206c 6f77 5f64 6973 7275 7074 696f 6e0a   low_disruption.
│ │ │ -00216ea0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ -00216eb0: 6564 6564 0a20 202d 2070 6163 6b61 6765  eded.  - package
│ │ │ -00216ec0: 5f6e 6769 6e78 5f72 656d 6f76 6564 0a20  _nginx_removed. 
│ │ │ -00216ed0: 202d 2075 6e6b 6e6f 776e 5f73 6576 6572   - unknown_sever
│ │ │ -00216ee0: 6974 790a 3c2f 636f 6465 3e3c 2f70 7265  ity.
Remediation │ │ │ -00216fa0: 5368 656c 6c20 7363 7269 7074 20e2 87b2 Shell script ... │ │ │ -00216fb0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Co │ │ │ -00216cf0: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -00216d20: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ -00216d40: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ -00216d50: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ -00216d70: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ -00216d80: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Complexity: │ │ │ -00217080: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -00217090: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
.# CAUTION: Thi
│ │ │ -002170f0: 7320 7265 6d65 6469 6174 696f 6e20 7363  s remediation sc
│ │ │ -00217100: 7269 7074 2077 696c 6c20 7265 6d6f 7665  ript will remove
│ │ │ -00217110: 206e 6769 6e78 0a23 2066 726f 6d20 7468   nginx.# from th
│ │ │ -00217120: 6520 7379 7374 656d 2c20 616e 6420 6d61  e system, and ma
│ │ │ -00217130: 7920 7265 6d6f 7665 2061 6e79 2070 6163  y remove any pac
│ │ │ -00217140: 6b61 6765 730a 2320 7468 6174 2064 6570  kages.# that dep
│ │ │ -00217150: 656e 6420 6f6e 206e 6769 6e78 2e20 4578  end on nginx. Ex
│ │ │ -00217160: 6563 7574 6520 7468 6973 0a23 2072 656d  ecute this.# rem
│ │ │ -00217170: 6564 6961 7469 6f6e 2041 4654 4552 2074  ediation AFTER t
│ │ │ -00217180: 6573 7469 6e67 206f 6e20 6120 6e6f 6e2d  esting on a non-
│ │ │ -00217190: 7072 6f64 7563 7469 6f6e 0a23 2073 7973  production.# sys
│ │ │ -002171a0: 7465 6d21 0a0a 0a69 6620 7270 6d20 2d71  tem!...if rpm -q
│ │ │ -002171b0: 202d 2d71 7569 6574 2022 6e67 696e 7822   --quiet "nginx"
│ │ │ -002171c0: 203b 2074 6865 6e0a 646e 6620 7265 6d6f   ; then.dnf remo
│ │ │ -002171d0: 7665 202d 7920 2d2d 6e6f 6175 746f 7265  ve -y --noautore
│ │ │ -002171e0: 6d6f 7665 2022 6e67 696e 7822 0a66 690a  move "nginx".fi.
│ │ │ +002167e0: 7369 626c 6520 736e 6970 7065 7420 e287  sible snippet ..
│ │ │ +002167f0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c  .
low
Disru │ │ │ -00217060: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ -00217070: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ -002170b0: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ -002170c0: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
< │ │ │ +00216870: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ +00216890: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ +002168e0: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>< │ │ │ +00216910: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
- name: 'Unins
│ │ │ +00216930: 7461 6c6c 206e 6769 6e78 2050 6163 6b61  tall nginx Packa
│ │ │ +00216940: 6765 3a20 456e 7375 7265 206e 6769 6e78  ge: Ensure nginx
│ │ │ +00216950: 2069 7320 7265 6d6f 7665 6427 0a20 2061   is removed'.  a
│ │ │ +00216960: 6e73 6962 6c65 2e62 7569 6c74 696e 2e70  nsible.builtin.p
│ │ │ +00216970: 6163 6b61 6765 3a0a 2020 2020 6e61 6d65  ackage:.    name
│ │ │ +00216980: 3a20 6e67 696e 780a 2020 2020 7374 6174  : nginx.    stat
│ │ │ +00216990: 653a 2061 6273 656e 740a 2020 7461 6773  e: absent.  tags
│ │ │ +002169a0: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ +002169b0: 332d 434d 2d36 2861 290a 2020 2d20 4e49  3-CM-6(a).  - NI
│ │ │ +002169c0: 5354 2d38 3030 2d35 332d 434d 2d37 2861  ST-800-53-CM-7(a
│ │ │ +002169d0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +002169e0: 332d 434d 2d37 2862 290a 2020 2d20 6469  3-CM-7(b).  - di
│ │ │ +002169f0: 7361 626c 655f 7374 7261 7465 6779 0a20  sable_strategy. 
│ │ │ +00216a00: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ +00216a10: 790a 2020 2d20 6c6f 775f 6469 7372 7570  y.  - low_disrup
│ │ │ +00216a20: 7469 6f6e 0a20 202d 206e 6f5f 7265 626f  tion.  - no_rebo
│ │ │ +00216a30: 6f74 5f6e 6565 6465 640a 2020 2d20 7061  ot_needed.  - pa
│ │ │ +00216a40: 636b 6167 655f 6e67 696e 785f 7265 6d6f  ckage_nginx_remo
│ │ │ +00216a50: 7665 640a 2020 2d20 756e 6b6e 6f77 6e5f  ved.  - unknown_
│ │ │ +00216a60: 7365 7665 7269 7479 0a3c 2f63 6f64 653e  severity.
│ │ │ +00216a70: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ +00216b20: 7469 6f6e 2050 7570 7065 7420 736e 6970 tion Puppet snip │ │ │ +00216b30: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ +00216b40: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +00216b50: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +00216b60: 7365 2220 6964 3d22 6964 3636 3422 3e3c se" id="id664">< │ │ │ +00216b70: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +00216b80: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +00216b90: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +00216ba0: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +00216bb0: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Disruption:Strategy: │ │ │ +00216c40: 3c74 643e 6469 7361 626c 653c 2f74 643e │ │ │ +00216c50: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
low
Disr │ │ │ +002168a0: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +002168b0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ +002168f0: 7465 6779 3a3c 2f74 683e 3c74 643e 6469 tegy:di │ │ │ +00216900: 7361 626c 653c 2f74 643e 3c2f 7472 3e3c sable
Complex │ │ │ +00216bc0: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ +00216bd0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
low
Reboo │ │ │ +00216c10: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ +00216c20: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
disable
.include │ │ │ +00216c70: 2072 656d 6f76 655f 6e67 696e 780a 0a63 remove_nginx..c │ │ │ +00216c80: 6c61 7373 2072 656d 6f76 655f 6e67 696e lass remove_ngin │ │ │ +00216c90: 7820 7b0a 2020 7061 636b 6167 6520 7b20 x {. package { │ │ │ +00216ca0: 276e 6769 6e78 273a 0a20 2020 2065 6e73 'nginx':. ens │ │ │ +00216cb0: 7572 6520 3d26 6774 3b20 2770 7572 6765 ure => 'purge │ │ │ +00216cc0: 6427 2c0a 2020 7d0a 7d0a 3c2f 636f 6465 d',. }.}.
Remedi │ │ │ +00216d80: 6174 696f 6e20 5368 656c 6c20 7363 7269 ation Shell scri │ │ │ +00216d90: 7074 20e2 87b2 3c2f 613e 3c62 723e 3c64 pt ...
│ │ │ +00216e10: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ +00216e20: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +00216e30: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ +00216e70: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +00216e80: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ +00216ea0: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ +00216eb0: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
.# CAUTIO
│ │ │ +00216ed0: 4e3a 2054 6869 7320 7265 6d65 6469 6174  N: This remediat
│ │ │ +00216ee0: 696f 6e20 7363 7269 7074 2077 696c 6c20  ion script will 
│ │ │ +00216ef0: 7265 6d6f 7665 206e 6769 6e78 0a23 2066  remove nginx.# f
│ │ │ +00216f00: 726f 6d20 7468 6520 7379 7374 656d 2c20  rom the system, 
│ │ │ +00216f10: 616e 6420 6d61 7920 7265 6d6f 7665 2061  and may remove a
│ │ │ +00216f20: 6e79 2070 6163 6b61 6765 730a 2320 7468  ny packages.# th
│ │ │ +00216f30: 6174 2064 6570 656e 6420 6f6e 206e 6769  at depend on ngi
│ │ │ +00216f40: 6e78 2e20 4578 6563 7574 6520 7468 6973  nx. Execute this
│ │ │ +00216f50: 0a23 2072 656d 6564 6961 7469 6f6e 2041  .# remediation A
│ │ │ +00216f60: 4654 4552 2074 6573 7469 6e67 206f 6e20  FTER testing on 
│ │ │ +00216f70: 6120 6e6f 6e2d 7072 6f64 7563 7469 6f6e  a non-production
│ │ │ +00216f80: 0a23 2073 7973 7465 6d21 0a0a 0a69 6620  .# system!...if 
│ │ │ +00216f90: 7270 6d20 2d71 202d 2d71 7569 6574 2022  rpm -q --quiet "
│ │ │ +00216fa0: 6e67 696e 7822 203b 2074 6865 6e0a 646e  nginx" ; then.dn
│ │ │ +00216fb0: 6620 7265 6d6f 7665 202d 7920 2d2d 6e6f  f remove -y --no
│ │ │ +00216fc0: 6175 746f 7265 6d6f 7665 2022 6e67 696e  autoremove "ngin
│ │ │ +00216fd0: 7822 0a66 690a 3c2f 636f 6465 3e3c 2f70  x".fi.

Remediatio │ │ │ +00217090: 6e20 416e 6163 6f6e 6461 2073 6e69 7070 n Anaconda snipp │ │ │ +002170a0: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ +00217120: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ +00217130: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +00217140: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ +00217180: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +00217190: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ +002171b0: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ +002171c0: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
..package
│ │ │ +002171e0: 202d 2d72 656d 6f76 653d 6e67 696e 780a   --remove=nginx.
│ │ │  002171f0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
Remediat │ │ │ -00218190: 696f 6e20 416e 6163 6f6e 6461 2073 6e69 ion Anaconda sni │ │ │ -002181a0: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -002181b0: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -002181e0: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ -00218250: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ -00218270: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ -002182a0: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
Comple │ │ │ -00218230: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ -00218240: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ -00218280: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ -00218290: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
disable

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

Remediat │ │ │ -002183b0: 696f 6e20 5075 7070 6574 2073 6e69 7070 ion Puppet snipp │ │ │ -002183c0: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ -00218440: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ -00218450: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -00218460: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ -002184a0: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -002184b0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ -002184d0: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ -002184e0: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
.include 
│ │ │ -00218500: 7265 6d6f 7665 5f63 7972 7573 2d69 6d61  remove_cyrus-ima
│ │ │ -00218510: 7064 0a0a 636c 6173 7320 7265 6d6f 7665  pd..class remove
│ │ │ -00218520: 5f63 7972 7573 2d69 6d61 7064 207b 0a20  _cyrus-imapd {. 
│ │ │ -00218530: 2070 6163 6b61 6765 207b 2027 6379 7275   package { 'cyru
│ │ │ -00218540: 732d 696d 6170 6427 3a0a 2020 2020 656e  s-imapd':.    en
│ │ │ -00218550: 7375 7265 203d 2667 743b 2027 7075 7267  sure => 'purg
│ │ │ -00218560: 6564 272c 0a20 207d 0a7d 0a3c 2f63 6f64  ed',.  }.}.
Remed │ │ │ -00218620: 6961 7469 6f6e 2041 6e73 6962 6c65 2073 iation Ansible s │ │ │ -00218630: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ -002186c0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -002186d0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -002186f0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ -00218710: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -00218720: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ -00218760: 3c70 7265 3e3c 636f 6465 3e2d 206e 616d
- nam
│ │ │ -00218770: 653a 2027 556e 696e 7374 616c 6c20 6379  e: 'Uninstall cy
│ │ │ -00218780: 7275 732d 696d 6170 6420 5061 636b 6167  rus-imapd Packag
│ │ │ -00218790: 653a 2045 6e73 7572 6520 6379 7275 732d  e: Ensure cyrus-
│ │ │ -002187a0: 696d 6170 6420 6973 2072 656d 6f76 6564  imapd is removed
│ │ │ -002187b0: 270a 2020 616e 7369 626c 652e 6275 696c  '.  ansible.buil
│ │ │ -002187c0: 7469 6e2e 7061 636b 6167 653a 0a20 2020  tin.package:.   
│ │ │ -002187d0: 206e 616d 653a 2063 7972 7573 2d69 6d61   name: cyrus-ima
│ │ │ -002187e0: 7064 0a20 2020 2073 7461 7465 3a20 6162  pd.    state: ab
│ │ │ -002187f0: 7365 6e74 0a20 2074 6167 733a 0a20 202d  sent.  tags:.  -
│ │ │ -00218800: 2064 6973 6162 6c65 5f73 7472 6174 6567   disable_strateg
│ │ │ -00218810: 790a 2020 2d20 6c6f 775f 636f 6d70 6c65  y.  - low_comple
│ │ │ -00218820: 7869 7479 0a20 202d 206c 6f77 5f64 6973  xity.  - low_dis
│ │ │ -00218830: 7275 7074 696f 6e0a 2020 2d20 6e6f 5f72  ruption.  - no_r
│ │ │ -00218840: 6562 6f6f 745f 6e65 6564 6564 0a20 202d  eboot_needed.  -
│ │ │ -00218850: 2070 6163 6b61 6765 5f63 7972 7573 2d69   package_cyrus-i
│ │ │ -00218860: 6d61 7064 5f72 656d 6f76 6564 0a20 202d  mapd_removed.  -
│ │ │ -00218870: 2075 6e6b 6e6f 776e 5f73 6576 6572 6974   unknown_severit
│ │ │ -00218880: 790a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  y.
< │ │ │ -00218890: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Sh │ │ │ -00218940: 656c 6c20 7363 7269 7074 20e2 87b2 3c2f ell script ...
│ │ │ -002189e0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
.
│ │ │ -00218a80: 2320 4341 5554 494f 4e3a 2054 6869 7320  # CAUTION: This 
│ │ │ -00218a90: 7265 6d65 6469 6174 696f 6e20 7363 7269  remediation scri
│ │ │ -00218aa0: 7074 2077 696c 6c20 7265 6d6f 7665 2063  pt will remove c
│ │ │ -00218ab0: 7972 7573 2d69 6d61 7064 0a23 2066 726f  yrus-imapd.# fro
│ │ │ -00218ac0: 6d20 7468 6520 7379 7374 656d 2c20 616e  m the system, an
│ │ │ -00218ad0: 6420 6d61 7920 7265 6d6f 7665 2061 6e79  d may remove any
│ │ │ -00218ae0: 2070 6163 6b61 6765 730a 2320 7468 6174   packages.# that
│ │ │ -00218af0: 2064 6570 656e 6420 6f6e 2063 7972 7573   depend on cyrus
│ │ │ -00218b00: 2d69 6d61 7064 2e20 4578 6563 7574 6520  -imapd. Execute 
│ │ │ -00218b10: 7468 6973 0a23 2072 656d 6564 6961 7469  this.# remediati
│ │ │ -00218b20: 6f6e 2041 4654 4552 2074 6573 7469 6e67  on AFTER testing
│ │ │ -00218b30: 206f 6e20 6120 6e6f 6e2d 7072 6f64 7563   on a non-produc
│ │ │ -00218b40: 7469 6f6e 0a23 2073 7973 7465 6d21 0a0a  tion.# system!..
│ │ │ -00218b50: 0a69 6620 7270 6d20 2d71 202d 2d71 7569  .if rpm -q --qui
│ │ │ -00218b60: 6574 2022 6379 7275 732d 696d 6170 6422  et "cyrus-imapd"
│ │ │ -00218b70: 203b 2074 6865 6e0a 646e 6620 7265 6d6f   ; then.dnf remo
│ │ │ -00218b80: 7665 202d 7920 2d2d 6e6f 6175 746f 7265  ve -y --noautore
│ │ │ -00218b90: 6d6f 7665 2022 6379 7275 732d 696d 6170  move "cyrus-imap
│ │ │ -00218ba0: 6422 0a66 690a 3c2f 636f 6465 3e3c 2f70  d".fi.


< │ │ │ +002181b0: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +002181c0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +002181d0: 7365 2220 6964 3d22 6964 3636 3822 3e3c se" id="id668">< │ │ │ +002181e0: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +002181f0: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +00218200: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +00218210: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +00218220: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >
Disruption:Strategy: │ │ │ +002182b0: 3c74 643e 6469 7361 626c 653c 2f74 643e │ │ │ +002182c0: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
│ │ │ -002189d0: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -00218a00: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -00218a10: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -00218a50: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ -00218a60: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Complex │ │ │ +00218230: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ +00218240: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
low
Reboo │ │ │ +00218280: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ +00218290: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
disable
- name: │ │ │ +002182e0: 2755 6e69 6e73 7461 6c6c 2063 7972 7573 'Uninstall cyrus │ │ │ +002182f0: 2d69 6d61 7064 2050 6163 6b61 6765 3a20 -imapd Package: │ │ │ +00218300: 456e 7375 7265 2063 7972 7573 2d69 6d61 Ensure cyrus-ima │ │ │ +00218310: 7064 2069 7320 7265 6d6f 7665 6427 0a20 pd is removed'. │ │ │ +00218320: 2061 6e73 6962 6c65 2e62 7569 6c74 696e ansible.builtin │ │ │ +00218330: 2e70 6163 6b61 6765 3a0a 2020 2020 6e61 .package:. na │ │ │ +00218340: 6d65 3a20 6379 7275 732d 696d 6170 640a me: cyrus-imapd. │ │ │ +00218350: 2020 2020 7374 6174 653a 2061 6273 656e state: absen │ │ │ +00218360: 740a 2020 7461 6773 3a0a 2020 2d20 6469 t. tags:. - di │ │ │ +00218370: 7361 626c 655f 7374 7261 7465 6779 0a20 sable_strategy. │ │ │ +00218380: 202d 206c 6f77 5f63 6f6d 706c 6578 6974 - low_complexit │ │ │ +00218390: 790a 2020 2d20 6c6f 775f 6469 7372 7570 y. - low_disrup │ │ │ +002183a0: 7469 6f6e 0a20 202d 206e 6f5f 7265 626f tion. - no_rebo │ │ │ +002183b0: 6f74 5f6e 6565 6465 640a 2020 2d20 7061 ot_needed. - pa │ │ │ +002183c0: 636b 6167 655f 6379 7275 732d 696d 6170 ckage_cyrus-imap │ │ │ +002183d0: 645f 7265 6d6f 7665 640a 2020 2d20 756e d_removed. - un │ │ │ +002183e0: 6b6e 6f77 6e5f 7365 7665 7269 7479 0a3c known_severity.< │ │ │ +002183f0: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469 /code>
R │ │ │ +002184a0: 656d 6564 6961 7469 6f6e 2050 7570 7065 emediation Puppe │ │ │ +002184b0: 7420 736e 6970 7065 7420 e287 b23c 2f61 t snippet ...
< │ │ │ +00218550: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +00218560: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ +002185b0: 3c74 723e 3c74 683e 5374 7261 7465 6779
.i
│ │ │ +002185f0: 6e63 6c75 6465 2072 656d 6f76 655f 6379  nclude remove_cy
│ │ │ +00218600: 7275 732d 696d 6170 640a 0a63 6c61 7373  rus-imapd..class
│ │ │ +00218610: 2072 656d 6f76 655f 6379 7275 732d 696d   remove_cyrus-im
│ │ │ +00218620: 6170 6420 7b0a 2020 7061 636b 6167 6520  apd {.  package 
│ │ │ +00218630: 7b20 2763 7972 7573 2d69 6d61 7064 273a  { 'cyrus-imapd':
│ │ │ +00218640: 0a20 2020 2065 6e73 7572 6520 3d26 6774  .    ensure =>
│ │ │ +00218650: 3b20 2770 7572 6765 6427 2c0a 2020 7d0a  ; 'purged',.  }.
│ │ │ +00218660: 7d0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  }.
< │ │ │ +00218670: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Sh │ │ │ +00218720: 656c 6c20 7363 7269 7074 20e2 87b2 3c2f ell script ...
C │ │ │ +00218540: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ +00218570: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ +00218580: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ +002185c0: 3a3c 2f74 683e 3c74 643e 6469 7361 626c :disabl │ │ │ +002185d0: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
│ │ │ +002187c0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
.
│ │ │ +00218860: 2320 4341 5554 494f 4e3a 2054 6869 7320  # CAUTION: This 
│ │ │ +00218870: 7265 6d65 6469 6174 696f 6e20 7363 7269  remediation scri
│ │ │ +00218880: 7074 2077 696c 6c20 7265 6d6f 7665 2063  pt will remove c
│ │ │ +00218890: 7972 7573 2d69 6d61 7064 0a23 2066 726f  yrus-imapd.# fro
│ │ │ +002188a0: 6d20 7468 6520 7379 7374 656d 2c20 616e  m the system, an
│ │ │ +002188b0: 6420 6d61 7920 7265 6d6f 7665 2061 6e79  d may remove any
│ │ │ +002188c0: 2070 6163 6b61 6765 730a 2320 7468 6174   packages.# that
│ │ │ +002188d0: 2064 6570 656e 6420 6f6e 2063 7972 7573   depend on cyrus
│ │ │ +002188e0: 2d69 6d61 7064 2e20 4578 6563 7574 6520  -imapd. Execute 
│ │ │ +002188f0: 7468 6973 0a23 2072 656d 6564 6961 7469  this.# remediati
│ │ │ +00218900: 6f6e 2041 4654 4552 2074 6573 7469 6e67  on AFTER testing
│ │ │ +00218910: 206f 6e20 6120 6e6f 6e2d 7072 6f64 7563   on a non-produc
│ │ │ +00218920: 7469 6f6e 0a23 2073 7973 7465 6d21 0a0a  tion.# system!..
│ │ │ +00218930: 0a69 6620 7270 6d20 2d71 202d 2d71 7569  .if rpm -q --qui
│ │ │ +00218940: 6574 2022 6379 7275 732d 696d 6170 6422  et "cyrus-imapd"
│ │ │ +00218950: 203b 2074 6865 6e0a 646e 6620 7265 6d6f   ; then.dnf remo
│ │ │ +00218960: 7665 202d 7920 2d2d 6e6f 6175 746f 7265  ve -y --noautore
│ │ │ +00218970: 6d6f 7665 2022 6379 7275 732d 696d 6170  move "cyrus-imap
│ │ │ +00218980: 6422 0a66 690a 3c2f 636f 6465 3e3c 2f70  d".fi.

Remediatio │ │ │ +00218a40: 6e20 416e 6163 6f6e 6461 2073 6e69 7070 n Anaconda snipp │ │ │ +00218a50: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ +00218ad0: 3c74 723e 3c74 683e 436f 6d70 6c65 7869
< │ │ │ +00218b60: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ +00218b70: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
│ │ │ +002187b0: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +002187e0: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +002187f0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +00218830: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ +00218840: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Complexi │ │ │ +00218ae0: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +00218af0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Disruption:low
Reboot │ │ │ +00218b30: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +00218b40: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Strategy:
..package
│ │ │ +00218b90: 202d 2d72 656d 6f76 653d 6379 7275 732d   --remove=cyrus-
│ │ │ +00218ba0: 696d 6170 640a 3c2f 636f 6465 3e3c 2f70  imapd.

< │ │ │ 00218bc0: 2f74 643e 3c2f 7472 3e3c 2f74 626f 6479 /td>Remedia │ │ │ -00219730: 7469 6f6e 2041 6e61 636f 6e64 6120 736e tion Anaconda sn │ │ │ -00219740: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ -002197f0: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ -00219810: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ -00219840: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ -002197d0: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ -002197e0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ -00219800: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ -00219820: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -00219830: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:disable
< │ │ │ -00219870: 7072 653e 3c63 6f64 653e 0a0a 7061 636b pre>..pack │ │ │ -00219880: 6167 6520 2d2d 7265 6d6f 7665 3d64 6f76 age --remove=dov │ │ │ -00219890: 6563 6f74 0a3c 2f63 6f64 653e 3c2f 7072 ecot.
Remediation │ │ │ -00219950: 2050 7570 7065 7420 736e 6970 7065 7420 Puppet snippet │ │ │ -00219960: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
Complexity: │ │ │ -002199f0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ -00219a10: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:low< │ │ │ -00219a30: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:falseSt │ │ │ -00219a60: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ -00219a70: 6469 7361 626c 653c 2f74 643e 3c2f 7472 disable
.include rem
│ │ │ -00219aa0: 6f76 655f 646f 7665 636f 740a 0a63 6c61  ove_dovecot..cla
│ │ │ -00219ab0: 7373 2072 656d 6f76 655f 646f 7665 636f  ss remove_doveco
│ │ │ -00219ac0: 7420 7b0a 2020 7061 636b 6167 6520 7b20  t {.  package { 
│ │ │ -00219ad0: 2764 6f76 6563 6f74 273a 0a20 2020 2065  'dovecot':.    e
│ │ │ -00219ae0: 6e73 7572 6520 3d26 6774 3b20 2770 7572  nsure => 'pur
│ │ │ -00219af0: 6765 6427 2c0a 2020 7d0a 7d0a 3c2f 636f  ged',.  }.}.
< │ │ │ -00219b10: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ -00219b20: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ -00219b30: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ -00219b40: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ -00219b50: 6436 3735 2220 7461 6269 6e64 6578 3d22 d675" tabindex=" │ │ │ -00219b60: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ -00219b70: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ -00219b80: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ -00219b90: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ -00219ba0: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ -00219bb0: 6469 6174 696f 6e20 416e 7369 626c 6520 diation Ansible │ │ │ -00219bc0: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ -00219bd0: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Com │ │ │ -00219c50: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ -00219c80: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ -00219ca0: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -00219cb0: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -00219cd0: 2f74 683e 3c74 643e 6469 7361 626c 653c /th>disable< │ │ │ -00219ce0: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
- na
│ │ │ -00219d00: 6d65 3a20 2755 6e69 6e73 7461 6c6c 2064  me: 'Uninstall d
│ │ │ -00219d10: 6f76 6563 6f74 2050 6163 6b61 6765 3a20  ovecot Package: 
│ │ │ -00219d20: 456e 7375 7265 2064 6f76 6563 6f74 2069  Ensure dovecot i
│ │ │ -00219d30: 7320 7265 6d6f 7665 6427 0a20 2061 6e73  s removed'.  ans
│ │ │ -00219d40: 6962 6c65 2e62 7569 6c74 696e 2e70 6163  ible.builtin.pac
│ │ │ -00219d50: 6b61 6765 3a0a 2020 2020 6e61 6d65 3a20  kage:.    name: 
│ │ │ -00219d60: 646f 7665 636f 740a 2020 2020 7374 6174  dovecot.    stat
│ │ │ -00219d70: 653a 2061 6273 656e 740a 2020 7461 6773  e: absent.  tags
│ │ │ -00219d80: 3a0a 2020 2d20 6469 7361 626c 655f 7374  :.  - disable_st
│ │ │ -00219d90: 7261 7465 6779 0a20 202d 206c 6f77 5f63  rategy.  - low_c
│ │ │ -00219da0: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f  omplexity.  - lo
│ │ │ -00219db0: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ -00219dc0: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ -00219dd0: 640a 2020 2d20 7061 636b 6167 655f 646f  d.  - package_do
│ │ │ -00219de0: 7665 636f 745f 7265 6d6f 7665 640a 2020  vecot_removed.  
│ │ │ -00219df0: 2d20 756e 6b6e 6f77 6e5f 7365 7665 7269  - unknown_severi
│ │ │ -00219e00: 7479 0a3c 2f63 6f64 653e 3c2f 7072 653e  ty.
│ │ │ -00219e10: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation S │ │ │ -00219ec0: 6865 6c6c 2073 6372 6970 7420 e287 b23c hell script ...< │ │ │ -00219ed0: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
< │ │ │ -00219fa0: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -00219fb0: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

│ │ │ -0021a000: 0a23 2043 4155 5449 4f4e 3a20 5468 6973  .# CAUTION: This
│ │ │ -0021a010: 2072 656d 6564 6961 7469 6f6e 2073 6372   remediation scr
│ │ │ -0021a020: 6970 7420 7769 6c6c 2072 656d 6f76 6520  ipt will remove 
│ │ │ -0021a030: 646f 7665 636f 740a 2320 6672 6f6d 2074  dovecot.# from t
│ │ │ -0021a040: 6865 2073 7973 7465 6d2c 2061 6e64 206d  he system, and m
│ │ │ -0021a050: 6179 2072 656d 6f76 6520 616e 7920 7061  ay remove any pa
│ │ │ -0021a060: 636b 6167 6573 0a23 2074 6861 7420 6465  ckages.# that de
│ │ │ -0021a070: 7065 6e64 206f 6e20 646f 7665 636f 742e  pend on dovecot.
│ │ │ -0021a080: 2045 7865 6375 7465 2074 6869 730a 2320   Execute this.# 
│ │ │ -0021a090: 7265 6d65 6469 6174 696f 6e20 4146 5445  remediation AFTE
│ │ │ -0021a0a0: 5220 7465 7374 696e 6720 6f6e 2061 206e  R testing on a n
│ │ │ -0021a0b0: 6f6e 2d70 726f 6475 6374 696f 6e0a 2320  on-production.# 
│ │ │ -0021a0c0: 7379 7374 656d 210a 0a0a 6966 2072 706d  system!...if rpm
│ │ │ -0021a0d0: 202d 7120 2d2d 7175 6965 7420 2264 6f76   -q --quiet "dov
│ │ │ -0021a0e0: 6563 6f74 2220 3b20 7468 656e 0a64 6e66  ecot" ; then.dnf
│ │ │ -0021a0f0: 2072 656d 6f76 6520 2d79 202d 2d6e 6f61   remove -y --noa
│ │ │ -0021a100: 7574 6f72 656d 6f76 6520 2264 6f76 6563  utoremove "dovec
│ │ │ -0021a110: 6f74 220a 6669 0a3c 2f63 6f64 653e 3c2f  ot".fi.
│ │ │ +00219750: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ +00219780: 3c74 6162 6c65 2063 6c61 7373 3d22 7461
Complexity:low
Disrup │ │ │ -00219f80: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -00219f90: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -00219fd0: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ -00219fe0: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
< │ │ │ +002197f0: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ +00219810: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ +00219840: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
Comple │ │ │ +002197d0: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ +002197e0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ +00219820: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +00219830: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
disable

- name: │ │ │ +00219880: 2027 556e 696e 7374 616c 6c20 646f 7665 'Uninstall dove │ │ │ +00219890: 636f 7420 5061 636b 6167 653a 2045 6e73 cot Package: Ens │ │ │ +002198a0: 7572 6520 646f 7665 636f 7420 6973 2072 ure dovecot is r │ │ │ +002198b0: 656d 6f76 6564 270a 2020 616e 7369 626c emoved'. ansibl │ │ │ +002198c0: 652e 6275 696c 7469 6e2e 7061 636b 6167 e.builtin.packag │ │ │ +002198d0: 653a 0a20 2020 206e 616d 653a 2064 6f76 e:. name: dov │ │ │ +002198e0: 6563 6f74 0a20 2020 2073 7461 7465 3a20 ecot. state: │ │ │ +002198f0: 6162 7365 6e74 0a20 2074 6167 733a 0a20 absent. tags:. │ │ │ +00219900: 202d 2064 6973 6162 6c65 5f73 7472 6174 - disable_strat │ │ │ +00219910: 6567 790a 2020 2d20 6c6f 775f 636f 6d70 egy. - low_comp │ │ │ +00219920: 6c65 7869 7479 0a20 202d 206c 6f77 5f64 lexity. - low_d │ │ │ +00219930: 6973 7275 7074 696f 6e0a 2020 2d20 6e6f isruption. - no │ │ │ +00219940: 5f72 6562 6f6f 745f 6e65 6564 6564 0a20 _reboot_needed. │ │ │ +00219950: 202d 2070 6163 6b61 6765 5f64 6f76 6563 - package_dovec │ │ │ +00219960: 6f74 5f72 656d 6f76 6564 0a20 202d 2075 ot_removed. - u │ │ │ +00219970: 6e6b 6e6f 776e 5f73 6576 6572 6974 790a nknown_severity. │ │ │ +00219980: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64 │ │ │ +00219a30: 5265 6d65 6469 6174 696f 6e20 5075 7070 Remediation Pupp │ │ │ +00219a40: 6574 2073 6e69 7070 6574 20e2 87b2 3c2f et snippet ...

│ │ │ +00219ae0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
.
│ │ │ +00219b80: 696e 636c 7564 6520 7265 6d6f 7665 5f64  include remove_d
│ │ │ +00219b90: 6f76 6563 6f74 0a0a 636c 6173 7320 7265  ovecot..class re
│ │ │ +00219ba0: 6d6f 7665 5f64 6f76 6563 6f74 207b 0a20  move_dovecot {. 
│ │ │ +00219bb0: 2070 6163 6b61 6765 207b 2027 646f 7665   package { 'dove
│ │ │ +00219bc0: 636f 7427 3a0a 2020 2020 656e 7375 7265  cot':.    ensure
│ │ │ +00219bd0: 203d 2667 743b 2027 7075 7267 6564 272c   => 'purged',
│ │ │ +00219be0: 0a20 207d 0a7d 0a3c 2f63 6f64 653e 3c2f  .  }.}.Remediati
│ │ │ +00219ca0: 6f6e 2053 6865 6c6c 2073 6372 6970 7420  on Shell script 
│ │ │ +00219cb0: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620  ...
low< │ │ │ +00219d80: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>
│ │ │ +00219ad0: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +00219b00: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +00219b10: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +00219b50: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ +00219b60: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Complexity: │ │ │ +00219d40: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Di │ │ │ +00219d60: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:
Reboot:false
St │ │ │ +00219db0: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ +00219dc0: 6469 7361 626c 653c 2f74 643e 3c2f 7472 disable
.# CAUTION: 
│ │ │ +00219df0: 5468 6973 2072 656d 6564 6961 7469 6f6e  This remediation
│ │ │ +00219e00: 2073 6372 6970 7420 7769 6c6c 2072 656d   script will rem
│ │ │ +00219e10: 6f76 6520 646f 7665 636f 740a 2320 6672  ove dovecot.# fr
│ │ │ +00219e20: 6f6d 2074 6865 2073 7973 7465 6d2c 2061  om the system, a
│ │ │ +00219e30: 6e64 206d 6179 2072 656d 6f76 6520 616e  nd may remove an
│ │ │ +00219e40: 7920 7061 636b 6167 6573 0a23 2074 6861  y packages.# tha
│ │ │ +00219e50: 7420 6465 7065 6e64 206f 6e20 646f 7665  t depend on dove
│ │ │ +00219e60: 636f 742e 2045 7865 6375 7465 2074 6869  cot. Execute thi
│ │ │ +00219e70: 730a 2320 7265 6d65 6469 6174 696f 6e20  s.# remediation 
│ │ │ +00219e80: 4146 5445 5220 7465 7374 696e 6720 6f6e  AFTER testing on
│ │ │ +00219e90: 2061 206e 6f6e 2d70 726f 6475 6374 696f   a non-productio
│ │ │ +00219ea0: 6e0a 2320 7379 7374 656d 210a 0a0a 6966  n.# system!...if
│ │ │ +00219eb0: 2072 706d 202d 7120 2d2d 7175 6965 7420   rpm -q --quiet 
│ │ │ +00219ec0: 2264 6f76 6563 6f74 2220 3b20 7468 656e  "dovecot" ; then
│ │ │ +00219ed0: 0a64 6e66 2072 656d 6f76 6520 2d79 202d  .dnf remove -y -
│ │ │ +00219ee0: 2d6e 6f61 7574 6f72 656d 6f76 6520 2264  -noautoremove "d
│ │ │ +00219ef0: 6f76 6563 6f74 220a 6669 0a3c 2f63 6f64  ovecot".fi.
Remed │ │ │ +00219fb0: 6961 7469 6f6e 2041 6e61 636f 6e64 6120 iation Anaconda │ │ │ +00219fc0: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ +00219fd0: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Com │ │ │ +0021a050: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ +0021a080: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ +0021a0a0: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +0021a0b0: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ +0021a0d0: 2f74 683e 3c74 643e 6469 7361 626c 653c /th>disable< │ │ │ +0021a0e0: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
..pa
│ │ │ +0021a100: 636b 6167 6520 2d2d 7265 6d6f 7665 3d64  ckage --remove=d
│ │ │ +0021a110: 6f76 6563 6f74 0a3c 2f63 6f64 653e 3c2f  ovecot.
│ │ │ 0021a130: 3c2f 7464 3e3c 2f74 723e 3c2f 7462 6f64 < │ │ │ 0021a150: 2f74 723e 3c74 7220 6461 7461 2d74 742d /tr>Remediat │ │ │ -0021b490: 696f 6e20 416e 6163 6f6e 6461 2073 6e69 ion Anaconda sni │ │ │ -0021b4a0: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -0021b4b0: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -0021b4e0: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ -0021b550: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ -0021b570: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ -0021b5a0: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
Comple │ │ │ -0021b530: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ -0021b540: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ -0021b580: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ -0021b590: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
disable

..packa │ │ │ -0021b5e0: 6765 202d 2d72 656d 6f76 653d 6f70 656e ge --remove=open │ │ │ -0021b5f0: 6c64 6170 2d63 6c69 656e 7473 0a3c 2f63 ldap-clients.

│ │ │ -0021b610: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ -0021b6b0: 6564 6961 7469 6f6e 2050 7570 7065 7420 ediation Puppet │ │ │ -0021b6c0: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ -0021b6d0: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Com │ │ │ -0021b750: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ -0021b780: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ -0021b7a0: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -0021b7b0: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -0021b7d0: 2f74 683e 3c74 643e 6469 7361 626c 653c /th>disable< │ │ │ -0021b7e0: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
.inc
│ │ │ -0021b800: 6c75 6465 2072 656d 6f76 655f 6f70 656e  lude remove_open
│ │ │ -0021b810: 6c64 6170 2d63 6c69 656e 7473 0a0a 636c  ldap-clients..cl
│ │ │ -0021b820: 6173 7320 7265 6d6f 7665 5f6f 7065 6e6c  ass remove_openl
│ │ │ -0021b830: 6461 702d 636c 6965 6e74 7320 7b0a 2020  dap-clients {.  
│ │ │ -0021b840: 7061 636b 6167 6520 7b20 276f 7065 6e6c  package { 'openl
│ │ │ -0021b850: 6461 702d 636c 6965 6e74 7327 3a0a 2020  dap-clients':.  
│ │ │ -0021b860: 2020 656e 7375 7265 203d 2667 743b 2027    ensure => '
│ │ │ -0021b870: 7075 7267 6564 272c 0a20 207d 0a7d 0a3c  purged',.  }.}.<
│ │ │ -0021b880: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ -0021b930: 656d 6564 6961 7469 6f6e 2041 6e73 6962 emediation Ansib │ │ │ -0021b940: 6c65 2073 6e69 7070 6574 20e2 87b2 3c2f le snippet ...
│ │ │ -0021b9e0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
-
│ │ │ -0021ba80: 206e 616d 653a 2027 456e 7375 7265 204c   name: 'Ensure L
│ │ │ -0021ba90: 4441 5020 636c 6965 6e74 2069 7320 6e6f  DAP client is no
│ │ │ -0021baa0: 7420 696e 7374 616c 6c65 643a 2045 6e73  t installed: Ens
│ │ │ -0021bab0: 7572 6520 6f70 656e 6c64 6170 2d63 6c69  ure openldap-cli
│ │ │ -0021bac0: 656e 7473 2069 7320 7265 6d6f 7665 6427  ents is removed'
│ │ │ -0021bad0: 0a20 2061 6e73 6962 6c65 2e62 7569 6c74  .  ansible.built
│ │ │ -0021bae0: 696e 2e70 6163 6b61 6765 3a0a 2020 2020  in.package:.    
│ │ │ -0021baf0: 6e61 6d65 3a20 6f70 656e 6c64 6170 2d63  name: openldap-c
│ │ │ -0021bb00: 6c69 656e 7473 0a20 2020 2073 7461 7465  lients.    state
│ │ │ -0021bb10: 3a20 6162 7365 6e74 0a20 2074 6167 733a  : absent.  tags:
│ │ │ -0021bb20: 0a20 202d 2064 6973 6162 6c65 5f73 7472  .  - disable_str
│ │ │ -0021bb30: 6174 6567 790a 2020 2d20 6c6f 775f 636f  ategy.  - low_co
│ │ │ -0021bb40: 6d70 6c65 7869 7479 0a20 202d 206c 6f77  mplexity.  - low
│ │ │ -0021bb50: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ -0021bb60: 6c6f 775f 7365 7665 7269 7479 0a20 202d  low_severity.  -
│ │ │ -0021bb70: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ -0021bb80: 640a 2020 2d20 7061 636b 6167 655f 6f70  d.  - package_op
│ │ │ -0021bb90: 656e 6c64 6170 2d63 6c69 656e 7473 5f72  enldap-clients_r
│ │ │ -0021bba0: 656d 6f76 6564 0a3c 2f63 6f64 653e 3c2f  emoved.Remediati
│ │ │ -0021bc60: 6f6e 2053 6865 6c6c 2073 6372 6970 7420  on Shell script 
│ │ │ -0021bc70: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620  ...
low< │ │ │ -0021bd40: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>
│ │ │ -0021b9d0: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -0021ba00: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -0021ba10: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -0021ba50: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ -0021ba60: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Complexity: │ │ │ -0021bd00: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Di │ │ │ -0021bd20: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:
Reboot:false
St │ │ │ -0021bd70: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ -0021bd80: 6469 7361 626c 653c 2f74 643e 3c2f 7472 disable
.# CAUTION: 
│ │ │ -0021bdb0: 5468 6973 2072 656d 6564 6961 7469 6f6e  This remediation
│ │ │ -0021bdc0: 2073 6372 6970 7420 7769 6c6c 2072 656d   script will rem
│ │ │ -0021bdd0: 6f76 6520 6f70 656e 6c64 6170 2d63 6c69  ove openldap-cli
│ │ │ -0021bde0: 656e 7473 0a23 2066 726f 6d20 7468 6520  ents.# from the 
│ │ │ -0021bdf0: 7379 7374 656d 2c20 616e 6420 6d61 7920  system, and may 
│ │ │ -0021be00: 7265 6d6f 7665 2061 6e79 2070 6163 6b61  remove any packa
│ │ │ -0021be10: 6765 730a 2320 7468 6174 2064 6570 656e  ges.# that depen
│ │ │ -0021be20: 6420 6f6e 206f 7065 6e6c 6461 702d 636c  d on openldap-cl
│ │ │ -0021be30: 6965 6e74 732e 2045 7865 6375 7465 2074  ients. Execute t
│ │ │ -0021be40: 6869 730a 2320 7265 6d65 6469 6174 696f  his.# remediatio
│ │ │ -0021be50: 6e20 4146 5445 5220 7465 7374 696e 6720  n AFTER testing 
│ │ │ -0021be60: 6f6e 2061 206e 6f6e 2d70 726f 6475 6374  on a non-product
│ │ │ -0021be70: 696f 6e0a 2320 7379 7374 656d 210a 0a0a  ion.# system!...
│ │ │ -0021be80: 6966 2072 706d 202d 7120 2d2d 7175 6965  if rpm -q --quie
│ │ │ -0021be90: 7420 226f 7065 6e6c 6461 702d 636c 6965  t "openldap-clie
│ │ │ -0021bea0: 6e74 7322 203b 2074 6865 6e0a 646e 6620  nts" ; then.dnf 
│ │ │ -0021beb0: 7265 6d6f 7665 202d 7920 2d2d 6e6f 6175  remove -y --noau
│ │ │ -0021bec0: 746f 7265 6d6f 7665 2022 6f70 656e 6c64  toremove "openld
│ │ │ -0021bed0: 6170 2d63 6c69 656e 7473 220a 6669 0a3c  ap-clients".fi.<
│ │ │ +0021b490: 696f 6e20 416e 7369 626c 6520 736e 6970  ion Ansible snip
│ │ │ +0021b4a0: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c  pet ...
< │ │ │ +0021b4b0: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +0021b4c0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +0021b4d0: 7365 2220 6964 3d22 6964 3637 3822 3e3c se" id="id678">< │ │ │ +0021b4e0: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +0021b4f0: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +0021b500: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +0021b510: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +0021b520: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Complex │ │ │ +0021b530: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ +0021b540: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Disruption:lowReboo │ │ │ +0021b580: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ +0021b590: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ +0021b5b0: 3c74 643e 6469 7361 626c 653c 2f74 643e disable │ │ │ +0021b5c0: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072 - name: │ │ │ +0021b5e0: 2745 6e73 7572 6520 4c44 4150 2063 6c69 'Ensure LDAP cli │ │ │ +0021b5f0: 656e 7420 6973 206e 6f74 2069 6e73 7461 ent is not insta │ │ │ +0021b600: 6c6c 6564 3a20 456e 7375 7265 206f 7065 lled: Ensure ope │ │ │ +0021b610: 6e6c 6461 702d 636c 6965 6e74 7320 6973 nldap-clients is │ │ │ +0021b620: 2072 656d 6f76 6564 270a 2020 616e 7369 removed'. ansi │ │ │ +0021b630: 626c 652e 6275 696c 7469 6e2e 7061 636b ble.builtin.pack │ │ │ +0021b640: 6167 653a 0a20 2020 206e 616d 653a 206f age:. name: o │ │ │ +0021b650: 7065 6e6c 6461 702d 636c 6965 6e74 730a penldap-clients. │ │ │ +0021b660: 2020 2020 7374 6174 653a 2061 6273 656e state: absen │ │ │ +0021b670: 740a 2020 7461 6773 3a0a 2020 2d20 6469 t. tags:. - di │ │ │ +0021b680: 7361 626c 655f 7374 7261 7465 6779 0a20 sable_strategy. │ │ │ +0021b690: 202d 206c 6f77 5f63 6f6d 706c 6578 6974 - low_complexit │ │ │ +0021b6a0: 790a 2020 2d20 6c6f 775f 6469 7372 7570 y. - low_disrup │ │ │ +0021b6b0: 7469 6f6e 0a20 202d 206c 6f77 5f73 6576 tion. - low_sev │ │ │ +0021b6c0: 6572 6974 790a 2020 2d20 6e6f 5f72 6562 erity. - no_reb │ │ │ +0021b6d0: 6f6f 745f 6e65 6564 6564 0a20 202d 2070 oot_needed. - p │ │ │ +0021b6e0: 6163 6b61 6765 5f6f 7065 6e6c 6461 702d ackage_openldap- │ │ │ +0021b6f0: 636c 6965 6e74 735f 7265 6d6f 7665 640a clients_removed. │ │ │ +0021b700: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64
│ │ │ +0021b7b0: 5265 6d65 6469 6174 696f 6e20 5075 7070 Remediation Pupp │ │ │ +0021b7c0: 6574 2073 6e69 7070 6574 20e2 87b2 3c2f et snippet ...
│ │ │ +0021b860: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
.
│ │ │ +0021b900: 696e 636c 7564 6520 7265 6d6f 7665 5f6f  include remove_o
│ │ │ +0021b910: 7065 6e6c 6461 702d 636c 6965 6e74 730a  penldap-clients.
│ │ │ +0021b920: 0a63 6c61 7373 2072 656d 6f76 655f 6f70  .class remove_op
│ │ │ +0021b930: 656e 6c64 6170 2d63 6c69 656e 7473 207b  enldap-clients {
│ │ │ +0021b940: 0a20 2070 6163 6b61 6765 207b 2027 6f70  .  package { 'op
│ │ │ +0021b950: 656e 6c64 6170 2d63 6c69 656e 7473 273a  enldap-clients':
│ │ │ +0021b960: 0a20 2020 2065 6e73 7572 6520 3d26 6774  .    ensure =>
│ │ │ +0021b970: 3b20 2770 7572 6765 6427 2c0a 2020 7d0a  ; 'purged',.  }.
│ │ │ +0021b980: 7d0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  }.
< │ │ │ +0021b990: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Sh │ │ │ +0021ba40: 656c 6c20 7363 7269 7074 20e2 87b2 3c2f ell script ...
│ │ │ +0021b850: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +0021b880: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +0021b890: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +0021b8d0: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ +0021b8e0: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
│ │ │ +0021bae0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
.
│ │ │ +0021bb80: 2320 4341 5554 494f 4e3a 2054 6869 7320  # CAUTION: This 
│ │ │ +0021bb90: 7265 6d65 6469 6174 696f 6e20 7363 7269  remediation scri
│ │ │ +0021bba0: 7074 2077 696c 6c20 7265 6d6f 7665 206f  pt will remove o
│ │ │ +0021bbb0: 7065 6e6c 6461 702d 636c 6965 6e74 730a  penldap-clients.
│ │ │ +0021bbc0: 2320 6672 6f6d 2074 6865 2073 7973 7465  # from the syste
│ │ │ +0021bbd0: 6d2c 2061 6e64 206d 6179 2072 656d 6f76  m, and may remov
│ │ │ +0021bbe0: 6520 616e 7920 7061 636b 6167 6573 0a23  e any packages.#
│ │ │ +0021bbf0: 2074 6861 7420 6465 7065 6e64 206f 6e20   that depend on 
│ │ │ +0021bc00: 6f70 656e 6c64 6170 2d63 6c69 656e 7473  openldap-clients
│ │ │ +0021bc10: 2e20 4578 6563 7574 6520 7468 6973 0a23  . Execute this.#
│ │ │ +0021bc20: 2072 656d 6564 6961 7469 6f6e 2041 4654   remediation AFT
│ │ │ +0021bc30: 4552 2074 6573 7469 6e67 206f 6e20 6120  ER testing on a 
│ │ │ +0021bc40: 6e6f 6e2d 7072 6f64 7563 7469 6f6e 0a23  non-production.#
│ │ │ +0021bc50: 2073 7973 7465 6d21 0a0a 0a69 6620 7270   system!...if rp
│ │ │ +0021bc60: 6d20 2d71 202d 2d71 7569 6574 2022 6f70  m -q --quiet "op
│ │ │ +0021bc70: 656e 6c64 6170 2d63 6c69 656e 7473 2220  enldap-clients" 
│ │ │ +0021bc80: 3b20 7468 656e 0a64 6e66 2072 656d 6f76  ; then.dnf remov
│ │ │ +0021bc90: 6520 2d79 202d 2d6e 6f61 7574 6f72 656d  e -y --noautorem
│ │ │ +0021bca0: 6f76 6520 226f 7065 6e6c 6461 702d 636c  ove "openldap-cl
│ │ │ +0021bcb0: 6965 6e74 7322 0a66 690a 3c2f 636f 6465  ients".fi.
Remedi │ │ │ +0021bd70: 6174 696f 6e20 416e 6163 6f6e 6461 2073 ation Anaconda s │ │ │ +0021bd80: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
│ │ │ +0021bad0: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +0021bb00: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +0021bb10: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +0021bb50: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ +0021bb60: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Comp │ │ │ +0021be10: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +0021be20: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ +0021be40: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ +0021be60: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +0021be70: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ +0021beb0: 3c70 7265 3e3c 636f 6465 3e0a 0a70 6163
..pac
│ │ │ +0021bec0: 6b61 6765 202d 2d72 656d 6f76 653d 6f70  kage --remove=op
│ │ │ +0021bed0: 656e 6c64 6170 2d63 6c69 656e 7473 0a3c  enldap-clients.<
│ │ │  0021bee0: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
Remediation │ │ │ -002208a0: 4f53 4275 696c 6420 426c 7565 7072 696e OSBuild Blueprin │ │ │ -002208b0: 7420 736e 6970 7065 7420 e287 b23c 2f61 t snippet ...

│ │ │ -00220900: 0a5b 6375 7374 6f6d 697a 6174 696f 6e73  .[customizations
│ │ │ -00220910: 2e73 6572 7669 6365 735d 0a6d 6173 6b65  .services].maske
│ │ │ -00220920: 6420 3d20 5b22 7270 6362 696e 6422 5d0a  d = ["rpcbind"].
│ │ │ -00220930: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ -002209e0: 5265 6d65 6469 6174 696f 6e20 5075 7070 Remediation Pupp │ │ │ -002209f0: 6574 2073 6e69 7070 6574 20e2 87b2 3c2f et snippet ...
│ │ │ -00220a90: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
in
│ │ │ -00220b30: 636c 7564 6520 6469 7361 626c 655f 7270  clude disable_rp
│ │ │ -00220b40: 6362 696e 640a 0a63 6c61 7373 2064 6973  cbind..class dis
│ │ │ -00220b50: 6162 6c65 5f72 7063 6269 6e64 207b 0a20  able_rpcbind {. 
│ │ │ -00220b60: 2073 6572 7669 6365 207b 2772 7063 6269   service {'rpcbi
│ │ │ -00220b70: 6e64 273a 0a20 2020 2065 6e61 626c 6520  nd':.    enable 
│ │ │ -00220b80: 3d26 6774 3b20 6661 6c73 652c 0a20 2020  => false,.   
│ │ │ -00220b90: 2065 6e73 7572 6520 3d26 6774 3b20 2773   ensure => 's
│ │ │ -00220ba0: 746f 7070 6564 272c 0a20 207d 0a7d 0a3c  topped',.  }.}.<
│ │ │ -00220bb0: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ -00220c60: 656d 6564 6961 7469 6f6e 2041 6e73 6962 emediation Ansib │ │ │ -00220c70: 6c65 2073 6e69 7070 6574 20e2 87b2 3c2f le snippet ...
│ │ │ -00220a80: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -00220ab0: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -00220ac0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -00220b00: 793a 3c2f 7468 3e3c 7464 3e65 6e61 626c y:enabl │ │ │ -00220b10: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
│ │ │ -00220d10: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
-
│ │ │ -00220db0: 206e 616d 653a 2047 6174 6865 7220 7468   name: Gather th
│ │ │ -00220dc0: 6520 7061 636b 6167 6520 6661 6374 730a  e package facts.
│ │ │ -00220dd0: 2020 7061 636b 6167 655f 6661 6374 733a    package_facts:
│ │ │ -00220de0: 0a20 2020 206d 616e 6167 6572 3a20 6175  .    manager: au
│ │ │ -00220df0: 746f 0a20 2074 6167 733a 0a20 202d 2050  to.  tags:.  - P
│ │ │ -00220e00: 4349 2d44 5353 7634 2d32 2e32 0a20 202d  CI-DSSv4-2.2.  -
│ │ │ -00220e10: 2050 4349 2d44 5353 7634 2d32 2e32 2e34   PCI-DSSv4-2.2.4
│ │ │ -00220e20: 0a20 202d 2064 6973 6162 6c65 5f73 7472  .  - disable_str
│ │ │ -00220e30: 6174 6567 790a 2020 2d20 6c6f 775f 636f  ategy.  - low_co
│ │ │ -00220e40: 6d70 6c65 7869 7479 0a20 202d 206c 6f77  mplexity.  - low
│ │ │ -00220e50: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ -00220e60: 6c6f 775f 7365 7665 7269 7479 0a20 202d  low_severity.  -
│ │ │ -00220e70: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ -00220e80: 640a 2020 2d20 7365 7276 6963 655f 7270  d.  - service_rp
│ │ │ -00220e90: 6362 696e 645f 6469 7361 626c 6564 0a0a  cbind_disabled..
│ │ │ -00220ea0: 2d20 6e61 6d65 3a20 4469 7361 626c 6520  - name: Disable 
│ │ │ -00220eb0: 7270 6362 696e 6420 5365 7276 6963 6520  rpcbind Service 
│ │ │ -00220ec0: 2d20 4469 7361 626c 6520 7365 7276 6963  - Disable servic
│ │ │ -00220ed0: 6520 7270 6362 696e 640a 2020 626c 6f63  e rpcbind.  bloc
│ │ │ -00220ee0: 6b3a 0a0a 2020 2d20 6e61 6d65 3a20 4469  k:..  - name: Di
│ │ │ -00220ef0: 7361 626c 6520 7270 6362 696e 6420 5365  sable rpcbind Se
│ │ │ -00220f00: 7276 6963 6520 2d20 436f 6c6c 6563 7420  rvice - Collect 
│ │ │ -00220f10: 7379 7374 656d 6420 5365 7276 6963 6573  systemd Services
│ │ │ -00220f20: 2050 7265 7365 6e74 2069 6e20 7468 6520   Present in the 
│ │ │ -00220f30: 5379 7374 656d 0a20 2020 2061 6e73 6962  System.    ansib
│ │ │ -00220f40: 6c65 2e62 7569 6c74 696e 2e63 6f6d 6d61  le.builtin.comma
│ │ │ -00220f50: 6e64 3a20 7379 7374 656d 6374 6c20 2d71  nd: systemctl -q
│ │ │ -00220f60: 206c 6973 742d 756e 6974 2d66 696c 6573   list-unit-files
│ │ │ -00220f70: 202d 2d74 7970 6520 7365 7276 6963 650a   --type service.
│ │ │ -00220f80: 2020 2020 7265 6769 7374 6572 3a20 7365      register: se
│ │ │ -00220f90: 7276 6963 655f 6578 6973 7473 0a20 2020  rvice_exists.   
│ │ │ -00220fa0: 2063 6861 6e67 6564 5f77 6865 6e3a 2066   changed_when: f
│ │ │ -00220fb0: 616c 7365 0a20 2020 2066 6169 6c65 645f  alse.    failed_
│ │ │ -00220fc0: 7768 656e 3a20 7365 7276 6963 655f 6578  when: service_ex
│ │ │ -00220fd0: 6973 7473 2e72 6320 6e6f 7420 696e 205b  ists.rc not in [
│ │ │ -00220fe0: 302c 2031 5d0a 2020 2020 6368 6563 6b5f  0, 1].    check_
│ │ │ -00220ff0: 6d6f 6465 3a20 6661 6c73 650a 0a20 202d  mode: false..  -
│ │ │ -00221000: 206e 616d 653a 2044 6973 6162 6c65 2072   name: Disable r
│ │ │ -00221010: 7063 6269 6e64 2053 6572 7669 6365 202d  pcbind Service -
│ │ │ -00221020: 2045 6e73 7572 6520 7270 6362 696e 642e   Ensure rpcbind.
│ │ │ -00221030: 7365 7276 6963 6520 6973 204d 6173 6b65  service is Maske
│ │ │ -00221040: 640a 2020 2020 616e 7369 626c 652e 6275  d.    ansible.bu
│ │ │ -00221050: 696c 7469 6e2e 7379 7374 656d 643a 0a20  iltin.systemd:. 
│ │ │ -00221060: 2020 2020 206e 616d 653a 2072 7063 6269       name: rpcbi
│ │ │ -00221070: 6e64 2e73 6572 7669 6365 0a20 2020 2020  nd.service.     
│ │ │ -00221080: 2073 7461 7465 3a20 7374 6f70 7065 640a   state: stopped.
│ │ │ -00221090: 2020 2020 2020 656e 6162 6c65 643a 2066        enabled: f
│ │ │ -002210a0: 616c 7365 0a20 2020 2020 206d 6173 6b65  alse.      maske
│ │ │ -002210b0: 643a 2074 7275 650a 2020 2020 7768 656e  d: true.    when
│ │ │ -002210c0: 3a20 7365 7276 6963 655f 6578 6973 7473  : service_exists
│ │ │ -002210d0: 2e73 7464 6f75 745f 6c69 6e65 7320 6973  .stdout_lines is
│ │ │ -002210e0: 2073 6561 7263 6828 2272 7063 6269 6e64   search("rpcbind
│ │ │ -002210f0: 2e73 6572 7669 6365 222c 206d 756c 7469  .service", multi
│ │ │ -00221100: 6c69 6e65 3d54 7275 6529 0a0a 2020 2d20  line=True)..  - 
│ │ │ -00221110: 6e61 6d65 3a20 556e 6974 2053 6f63 6b65  name: Unit Socke
│ │ │ -00221120: 7420 4578 6973 7473 202d 2072 7063 6269  t Exists - rpcbi
│ │ │ -00221130: 6e64 2e73 6f63 6b65 740a 2020 2020 616e  nd.socket.    an
│ │ │ -00221140: 7369 626c 652e 6275 696c 7469 6e2e 636f  sible.builtin.co
│ │ │ -00221150: 6d6d 616e 643a 2073 7973 7465 6d63 746c  mmand: systemctl
│ │ │ -00221160: 202d 7120 6c69 7374 2d75 6e69 742d 6669   -q list-unit-fi
│ │ │ -00221170: 6c65 7320 7270 6362 696e 642e 736f 636b  les rpcbind.sock
│ │ │ -00221180: 6574 0a20 2020 2072 6567 6973 7465 723a  et.    register:
│ │ │ -00221190: 2073 6f63 6b65 745f 6669 6c65 5f65 7869   socket_file_exi
│ │ │ -002211a0: 7374 730a 2020 2020 6368 616e 6765 645f  sts.    changed_
│ │ │ -002211b0: 7768 656e 3a20 6661 6c73 650a 2020 2020  when: false.    
│ │ │ -002211c0: 6661 696c 6564 5f77 6865 6e3a 2073 6f63  failed_when: soc
│ │ │ -002211d0: 6b65 745f 6669 6c65 5f65 7869 7374 732e  ket_file_exists.
│ │ │ -002211e0: 7263 206e 6f74 2069 6e20 5b30 2c20 315d  rc not in [0, 1]
│ │ │ -002211f0: 0a20 2020 2063 6865 636b 5f6d 6f64 653a  .    check_mode:
│ │ │ -00221200: 2066 616c 7365 0a0a 2020 2d20 6e61 6d65   false..  - name
│ │ │ -00221210: 3a20 4469 7361 626c 6520 7270 6362 696e  : Disable rpcbin
│ │ │ -00221220: 6420 5365 7276 6963 6520 2d20 4469 7361  d Service - Disa
│ │ │ -00221230: 626c 6520 536f 636b 6574 2072 7063 6269  ble Socket rpcbi
│ │ │ -00221240: 6e64 0a20 2020 2061 6e73 6962 6c65 2e62  nd.    ansible.b
│ │ │ -00221250: 7569 6c74 696e 2e73 7973 7465 6d64 3a0a  uiltin.systemd:.
│ │ │ -00221260: 2020 2020 2020 6e61 6d65 3a20 7270 6362        name: rpcb
│ │ │ -00221270: 696e 642e 736f 636b 6574 0a20 2020 2020  ind.socket.     
│ │ │ -00221280: 2065 6e61 626c 6564 3a20 6661 6c73 650a   enabled: false.
│ │ │ -00221290: 2020 2020 2020 7374 6174 653a 2073 746f        state: sto
│ │ │ -002212a0: 7070 6564 0a20 2020 2020 206d 6173 6b65  pped.      maske
│ │ │ -002212b0: 643a 2074 7275 650a 2020 2020 7768 656e  d: true.    when
│ │ │ -002212c0: 3a20 736f 636b 6574 5f66 696c 655f 6578  : socket_file_ex
│ │ │ -002212d0: 6973 7473 2e73 7464 6f75 745f 6c69 6e65  ists.stdout_line
│ │ │ -002212e0: 7320 6973 2073 6561 7263 6828 2272 7063  s is search("rpc
│ │ │ -002212f0: 6269 6e64 2e73 6f63 6b65 7422 2c20 6d75  bind.socket", mu
│ │ │ -00221300: 6c74 696c 696e 653d 5472 7565 290a 2020  ltiline=True).  
│ │ │ -00221310: 7461 6773 3a0a 2020 2d20 5043 492d 4453  tags:.  - PCI-DS
│ │ │ -00221320: 5376 342d 322e 320a 2020 2d20 5043 492d  Sv4-2.2.  - PCI-
│ │ │ -00221330: 4453 5376 342d 322e 322e 340a 2020 2d20  DSSv4-2.2.4.  - 
│ │ │ -00221340: 6469 7361 626c 655f 7374 7261 7465 6779  disable_strategy
│ │ │ -00221350: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ -00221360: 6974 790a 2020 2d20 6c6f 775f 6469 7372  ity.  - low_disr
│ │ │ -00221370: 7570 7469 6f6e 0a20 202d 206c 6f77 5f73  uption.  - low_s
│ │ │ -00221380: 6576 6572 6974 790a 2020 2d20 6e6f 5f72  everity.  - no_r
│ │ │ -00221390: 6562 6f6f 745f 6e65 6564 6564 0a20 202d  eboot_needed.  -
│ │ │ -002213a0: 2073 6572 7669 6365 5f72 7063 6269 6e64   service_rpcbind
│ │ │ -002213b0: 5f64 6973 6162 6c65 640a 2020 2d20 7370  _disabled.  - sp
│ │ │ -002213c0: 6563 6961 6c5f 7365 7276 6963 655f 626c  ecial_service_bl
│ │ │ -002213d0: 6f63 6b0a 2020 7768 656e 3a20 2722 6b65  ock.  when: '"ke
│ │ │ -002213e0: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ -002213f0: 5f66 6163 7473 2e70 6163 6b61 6765 7327  _facts.packages'
│ │ │ +002208a0: 416e 7369 626c 6520 736e 6970 7065 7420  Ansible snippet 
│ │ │ +002208b0: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620  ...
low< │ │ │ +00220980: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>
│ │ │ -00220d00: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -00220d30: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -00220d40: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -00220d80: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ -00220d90: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Complexity: │ │ │ +00220940: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Di │ │ │ +00220960: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:
Reboot:false
St │ │ │ +002209b0: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ +002209c0: 6469 7361 626c 653c 2f74 643e 3c2f 7472 disable
- name: Gath
│ │ │ +002209f0: 6572 2074 6865 2070 6163 6b61 6765 2066  er the package f
│ │ │ +00220a00: 6163 7473 0a20 2070 6163 6b61 6765 5f66  acts.  package_f
│ │ │ +00220a10: 6163 7473 3a0a 2020 2020 6d61 6e61 6765  acts:.    manage
│ │ │ +00220a20: 723a 2061 7574 6f0a 2020 7461 6773 3a0a  r: auto.  tags:.
│ │ │ +00220a30: 2020 2d20 5043 492d 4453 5376 342d 322e    - PCI-DSSv4-2.
│ │ │ +00220a40: 320a 2020 2d20 5043 492d 4453 5376 342d  2.  - PCI-DSSv4-
│ │ │ +00220a50: 322e 322e 340a 2020 2d20 6469 7361 626c  2.2.4.  - disabl
│ │ │ +00220a60: 655f 7374 7261 7465 6779 0a20 202d 206c  e_strategy.  - l
│ │ │ +00220a70: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ +00220a80: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ +00220a90: 0a20 202d 206c 6f77 5f73 6576 6572 6974  .  - low_severit
│ │ │ +00220aa0: 790a 2020 2d20 6e6f 5f72 6562 6f6f 745f  y.  - no_reboot_
│ │ │ +00220ab0: 6e65 6564 6564 0a20 202d 2073 6572 7669  needed.  - servi
│ │ │ +00220ac0: 6365 5f72 7063 6269 6e64 5f64 6973 6162  ce_rpcbind_disab
│ │ │ +00220ad0: 6c65 640a 0a2d 206e 616d 653a 2044 6973  led..- name: Dis
│ │ │ +00220ae0: 6162 6c65 2072 7063 6269 6e64 2053 6572  able rpcbind Ser
│ │ │ +00220af0: 7669 6365 202d 2044 6973 6162 6c65 2073  vice - Disable s
│ │ │ +00220b00: 6572 7669 6365 2072 7063 6269 6e64 0a20  ervice rpcbind. 
│ │ │ +00220b10: 2062 6c6f 636b 3a0a 0a20 202d 206e 616d   block:..  - nam
│ │ │ +00220b20: 653a 2044 6973 6162 6c65 2072 7063 6269  e: Disable rpcbi
│ │ │ +00220b30: 6e64 2053 6572 7669 6365 202d 2043 6f6c  nd Service - Col
│ │ │ +00220b40: 6c65 6374 2073 7973 7465 6d64 2053 6572  lect systemd Ser
│ │ │ +00220b50: 7669 6365 7320 5072 6573 656e 7420 696e  vices Present in
│ │ │ +00220b60: 2074 6865 2053 7973 7465 6d0a 2020 2020   the System.    
│ │ │ +00220b70: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ +00220b80: 636f 6d6d 616e 643a 2073 7973 7465 6d63  command: systemc
│ │ │ +00220b90: 746c 202d 7120 6c69 7374 2d75 6e69 742d  tl -q list-unit-
│ │ │ +00220ba0: 6669 6c65 7320 2d2d 7479 7065 2073 6572  files --type ser
│ │ │ +00220bb0: 7669 6365 0a20 2020 2072 6567 6973 7465  vice.    registe
│ │ │ +00220bc0: 723a 2073 6572 7669 6365 5f65 7869 7374  r: service_exist
│ │ │ +00220bd0: 730a 2020 2020 6368 616e 6765 645f 7768  s.    changed_wh
│ │ │ +00220be0: 656e 3a20 6661 6c73 650a 2020 2020 6661  en: false.    fa
│ │ │ +00220bf0: 696c 6564 5f77 6865 6e3a 2073 6572 7669  iled_when: servi
│ │ │ +00220c00: 6365 5f65 7869 7374 732e 7263 206e 6f74  ce_exists.rc not
│ │ │ +00220c10: 2069 6e20 5b30 2c20 315d 0a20 2020 2063   in [0, 1].    c
│ │ │ +00220c20: 6865 636b 5f6d 6f64 653a 2066 616c 7365  heck_mode: false
│ │ │ +00220c30: 0a0a 2020 2d20 6e61 6d65 3a20 4469 7361  ..  - name: Disa
│ │ │ +00220c40: 626c 6520 7270 6362 696e 6420 5365 7276  ble rpcbind Serv
│ │ │ +00220c50: 6963 6520 2d20 456e 7375 7265 2072 7063  ice - Ensure rpc
│ │ │ +00220c60: 6269 6e64 2e73 6572 7669 6365 2069 7320  bind.service is 
│ │ │ +00220c70: 4d61 736b 6564 0a20 2020 2061 6e73 6962  Masked.    ansib
│ │ │ +00220c80: 6c65 2e62 7569 6c74 696e 2e73 7973 7465  le.builtin.syste
│ │ │ +00220c90: 6d64 3a0a 2020 2020 2020 6e61 6d65 3a20  md:.      name: 
│ │ │ +00220ca0: 7270 6362 696e 642e 7365 7276 6963 650a  rpcbind.service.
│ │ │ +00220cb0: 2020 2020 2020 7374 6174 653a 2073 746f        state: sto
│ │ │ +00220cc0: 7070 6564 0a20 2020 2020 2065 6e61 626c  pped.      enabl
│ │ │ +00220cd0: 6564 3a20 6661 6c73 650a 2020 2020 2020  ed: false.      
│ │ │ +00220ce0: 6d61 736b 6564 3a20 7472 7565 0a20 2020  masked: true.   
│ │ │ +00220cf0: 2077 6865 6e3a 2073 6572 7669 6365 5f65   when: service_e
│ │ │ +00220d00: 7869 7374 732e 7374 646f 7574 5f6c 696e  xists.stdout_lin
│ │ │ +00220d10: 6573 2069 7320 7365 6172 6368 2822 7270  es is search("rp
│ │ │ +00220d20: 6362 696e 642e 7365 7276 6963 6522 2c20  cbind.service", 
│ │ │ +00220d30: 6d75 6c74 696c 696e 653d 5472 7565 290a  multiline=True).
│ │ │ +00220d40: 0a20 202d 206e 616d 653a 2055 6e69 7420  .  - name: Unit 
│ │ │ +00220d50: 536f 636b 6574 2045 7869 7374 7320 2d20  Socket Exists - 
│ │ │ +00220d60: 7270 6362 696e 642e 736f 636b 6574 0a20  rpcbind.socket. 
│ │ │ +00220d70: 2020 2061 6e73 6962 6c65 2e62 7569 6c74     ansible.built
│ │ │ +00220d80: 696e 2e63 6f6d 6d61 6e64 3a20 7379 7374  in.command: syst
│ │ │ +00220d90: 656d 6374 6c20 2d71 206c 6973 742d 756e  emctl -q list-un
│ │ │ +00220da0: 6974 2d66 696c 6573 2072 7063 6269 6e64  it-files rpcbind
│ │ │ +00220db0: 2e73 6f63 6b65 740a 2020 2020 7265 6769  .socket.    regi
│ │ │ +00220dc0: 7374 6572 3a20 736f 636b 6574 5f66 696c  ster: socket_fil
│ │ │ +00220dd0: 655f 6578 6973 7473 0a20 2020 2063 6861  e_exists.    cha
│ │ │ +00220de0: 6e67 6564 5f77 6865 6e3a 2066 616c 7365  nged_when: false
│ │ │ +00220df0: 0a20 2020 2066 6169 6c65 645f 7768 656e  .    failed_when
│ │ │ +00220e00: 3a20 736f 636b 6574 5f66 696c 655f 6578  : socket_file_ex
│ │ │ +00220e10: 6973 7473 2e72 6320 6e6f 7420 696e 205b  ists.rc not in [
│ │ │ +00220e20: 302c 2031 5d0a 2020 2020 6368 6563 6b5f  0, 1].    check_
│ │ │ +00220e30: 6d6f 6465 3a20 6661 6c73 650a 0a20 202d  mode: false..  -
│ │ │ +00220e40: 206e 616d 653a 2044 6973 6162 6c65 2072   name: Disable r
│ │ │ +00220e50: 7063 6269 6e64 2053 6572 7669 6365 202d  pcbind Service -
│ │ │ +00220e60: 2044 6973 6162 6c65 2053 6f63 6b65 7420   Disable Socket 
│ │ │ +00220e70: 7270 6362 696e 640a 2020 2020 616e 7369  rpcbind.    ansi
│ │ │ +00220e80: 626c 652e 6275 696c 7469 6e2e 7379 7374  ble.builtin.syst
│ │ │ +00220e90: 656d 643a 0a20 2020 2020 206e 616d 653a  emd:.      name:
│ │ │ +00220ea0: 2072 7063 6269 6e64 2e73 6f63 6b65 740a   rpcbind.socket.
│ │ │ +00220eb0: 2020 2020 2020 656e 6162 6c65 643a 2066        enabled: f
│ │ │ +00220ec0: 616c 7365 0a20 2020 2020 2073 7461 7465  alse.      state
│ │ │ +00220ed0: 3a20 7374 6f70 7065 640a 2020 2020 2020  : stopped.      
│ │ │ +00220ee0: 6d61 736b 6564 3a20 7472 7565 0a20 2020  masked: true.   
│ │ │ +00220ef0: 2077 6865 6e3a 2073 6f63 6b65 745f 6669   when: socket_fi
│ │ │ +00220f00: 6c65 5f65 7869 7374 732e 7374 646f 7574  le_exists.stdout
│ │ │ +00220f10: 5f6c 696e 6573 2069 7320 7365 6172 6368  _lines is search
│ │ │ +00220f20: 2822 7270 6362 696e 642e 736f 636b 6574  ("rpcbind.socket
│ │ │ +00220f30: 222c 206d 756c 7469 6c69 6e65 3d54 7275  ", multiline=Tru
│ │ │ +00220f40: 6529 0a20 2074 6167 733a 0a20 202d 2050  e).  tags:.  - P
│ │ │ +00220f50: 4349 2d44 5353 7634 2d32 2e32 0a20 202d  CI-DSSv4-2.2.  -
│ │ │ +00220f60: 2050 4349 2d44 5353 7634 2d32 2e32 2e34   PCI-DSSv4-2.2.4
│ │ │ +00220f70: 0a20 202d 2064 6973 6162 6c65 5f73 7472  .  - disable_str
│ │ │ +00220f80: 6174 6567 790a 2020 2d20 6c6f 775f 636f  ategy.  - low_co
│ │ │ +00220f90: 6d70 6c65 7869 7479 0a20 202d 206c 6f77  mplexity.  - low
│ │ │ +00220fa0: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +00220fb0: 6c6f 775f 7365 7665 7269 7479 0a20 202d  low_severity.  -
│ │ │ +00220fc0: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ +00220fd0: 640a 2020 2d20 7365 7276 6963 655f 7270  d.  - service_rp
│ │ │ +00220fe0: 6362 696e 645f 6469 7361 626c 6564 0a20  cbind_disabled. 
│ │ │ +00220ff0: 202d 2073 7065 6369 616c 5f73 6572 7669   - special_servi
│ │ │ +00221000: 6365 5f62 6c6f 636b 0a20 2077 6865 6e3a  ce_block.  when:
│ │ │ +00221010: 2027 226b 6572 6e65 6c22 2069 6e20 616e   '"kernel" in an
│ │ │ +00221020: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +00221030: 6167 6573 270a 3c2f 636f 6465 3e3c 2f70  ages'.

Remediatio │ │ │ +002210f0: 6e20 5075 7070 6574 2073 6e69 7070 6574 n Puppet snippet │ │ │ +00221100: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Complexity │ │ │ +00221190: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ +002211b0: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ +002211c0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +002211d0: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ +002211e0: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ +00221200: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:enable
include disa
│ │ │ +00221240: 626c 655f 7270 6362 696e 640a 0a63 6c61  ble_rpcbind..cla
│ │ │ +00221250: 7373 2064 6973 6162 6c65 5f72 7063 6269  ss disable_rpcbi
│ │ │ +00221260: 6e64 207b 0a20 2073 6572 7669 6365 207b  nd {.  service {
│ │ │ +00221270: 2772 7063 6269 6e64 273a 0a20 2020 2065  'rpcbind':.    e
│ │ │ +00221280: 6e61 626c 6520 3d26 6774 3b20 6661 6c73  nable => fals
│ │ │ +00221290: 652c 0a20 2020 2065 6e73 7572 6520 3d26  e,.    ensure =&
│ │ │ +002212a0: 6774 3b20 2773 746f 7070 6564 272c 0a20  gt; 'stopped',. 
│ │ │ +002212b0: 207d 0a7d 0a3c 2f63 6f64 653e 3c2f 7072   }.}.
Remediation │ │ │ +00221370: 204f 5342 7569 6c64 2042 6c75 6570 7269 OSBuild Bluepri │ │ │ +00221380: 6e74 2073 6e69 7070 6574 20e2 87b2 3c2f nt snippet ...
.[customization
│ │ │ +002213e0: 732e 7365 7276 6963 6573 5d0a 6d61 736b  s.services].mask
│ │ │ +002213f0: 6564 203d 205b 2272 7063 6269 6e64 225d  ed = ["rpcbind"]
│ │ │  00221400: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediat │ │ │ -00222fb0: 696f 6e20 4f53 4275 696c 6420 426c 7565 ion OSBuild Blue │ │ │ -00222fc0: 7072 696e 7420 736e 6970 7065 7420 e287 print snippet .. │ │ │ -00222fd0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
.[customizat
│ │ │ -00223020: 696f 6e73 2e73 6572 7669 6365 735d 0a6d  ions.services].m
│ │ │ -00223030: 6173 6b65 6420 3d20 5b22 6e66 732d 7365  asked = ["nfs-se
│ │ │ -00223040: 7276 6572 225d 0a3c 2f63 6f64 653e 3c2f  rver"].
Remediati │ │ │ -00223100: 6f6e 2050 7570 7065 7420 736e 6970 7065 on Puppet snippe │ │ │ -00223110: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ -00223190: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ -002231a0: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ -002231c0: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ -002231d0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ -002231f0: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ -00223210: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:enable
<
│ │ │ -00223240: 636f 6465 3e69 6e63 6c75 6465 2064 6973  code>include dis
│ │ │ -00223250: 6162 6c65 5f6e 6673 2d73 6572 7665 720a  able_nfs-server.
│ │ │ -00223260: 0a63 6c61 7373 2064 6973 6162 6c65 5f6e  .class disable_n
│ │ │ -00223270: 6673 2d73 6572 7665 7220 7b0a 2020 7365  fs-server {.  se
│ │ │ -00223280: 7276 6963 6520 7b27 6e66 732d 7365 7276  rvice {'nfs-serv
│ │ │ -00223290: 6572 273a 0a20 2020 2065 6e61 626c 6520  er':.    enable 
│ │ │ -002232a0: 3d26 6774 3b20 6661 6c73 652c 0a20 2020  => false,.   
│ │ │ -002232b0: 2065 6e73 7572 6520 3d26 6774 3b20 2773   ensure => 's
│ │ │ -002232c0: 746f 7070 6564 272c 0a20 207d 0a7d 0a3c  topped',.  }.}.<
│ │ │ -002232d0: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ -00223380: 656d 6564 6961 7469 6f6e 2041 6e73 6962 emediation Ansib │ │ │ -00223390: 6c65 2073 6e69 7070 6574 20e2 87b2 3c2f le snippet ...
│ │ │ -00223430: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
-
│ │ │ -002234d0: 206e 616d 653a 2047 6174 6865 7220 7468   name: Gather th
│ │ │ -002234e0: 6520 7061 636b 6167 6520 6661 6374 730a  e package facts.
│ │ │ -002234f0: 2020 7061 636b 6167 655f 6661 6374 733a    package_facts:
│ │ │ -00223500: 0a20 2020 206d 616e 6167 6572 3a20 6175  .    manager: au
│ │ │ -00223510: 746f 0a20 2074 6167 733a 0a20 202d 204e  to.  tags:.  - N
│ │ │ -00223520: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ -00223530: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ -00223540: 3533 2d43 4d2d 3728 6129 0a20 202d 204e  53-CM-7(a).  - N
│ │ │ -00223550: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ -00223560: 6229 0a20 202d 2064 6973 6162 6c65 5f73  b).  - disable_s
│ │ │ -00223570: 7472 6174 6567 790a 2020 2d20 6c6f 775f  trategy.  - low_
│ │ │ -00223580: 636f 6d70 6c65 7869 7479 0a20 202d 206c  complexity.  - l
│ │ │ -00223590: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ -002235a0: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ -002235b0: 6564 0a20 202d 2073 6572 7669 6365 5f6e  ed.  - service_n
│ │ │ -002235c0: 6673 5f64 6973 6162 6c65 640a 2020 2d20  fs_disabled.  - 
│ │ │ -002235d0: 756e 6b6e 6f77 6e5f 7365 7665 7269 7479  unknown_severity
│ │ │ -002235e0: 0a0a 2d20 6e61 6d65 3a20 4469 7361 626c  ..- name: Disabl
│ │ │ -002235f0: 6520 4e65 7477 6f72 6b20 4669 6c65 2053  e Network File S
│ │ │ -00223600: 7973 7465 6d20 286e 6673 2920 2d20 4469  ystem (nfs) - Di
│ │ │ -00223610: 7361 626c 6520 7365 7276 6963 6520 6e66  sable service nf
│ │ │ -00223620: 732d 7365 7276 6572 0a20 2062 6c6f 636b  s-server.  block
│ │ │ -00223630: 3a0a 0a20 202d 206e 616d 653a 2044 6973  :..  - name: Dis
│ │ │ -00223640: 6162 6c65 204e 6574 776f 726b 2046 696c  able Network Fil
│ │ │ -00223650: 6520 5379 7374 656d 2028 6e66 7329 202d  e System (nfs) -
│ │ │ -00223660: 2043 6f6c 6c65 6374 2073 7973 7465 6d64   Collect systemd
│ │ │ -00223670: 2053 6572 7669 6365 7320 5072 6573 656e   Services Presen
│ │ │ -00223680: 7420 696e 0a20 2020 2020 2074 6865 2053  t in.      the S
│ │ │ -00223690: 7973 7465 6d0a 2020 2020 616e 7369 626c  ystem.    ansibl
│ │ │ -002236a0: 652e 6275 696c 7469 6e2e 636f 6d6d 616e  e.builtin.comman
│ │ │ -002236b0: 643a 2073 7973 7465 6d63 746c 202d 7120  d: systemctl -q 
│ │ │ -002236c0: 6c69 7374 2d75 6e69 742d 6669 6c65 7320  list-unit-files 
│ │ │ -002236d0: 2d2d 7479 7065 2073 6572 7669 6365 0a20  --type service. 
│ │ │ -002236e0: 2020 2072 6567 6973 7465 723a 2073 6572     register: ser
│ │ │ -002236f0: 7669 6365 5f65 7869 7374 730a 2020 2020  vice_exists.    
│ │ │ -00223700: 6368 616e 6765 645f 7768 656e 3a20 6661  changed_when: fa
│ │ │ -00223710: 6c73 650a 2020 2020 6661 696c 6564 5f77  lse.    failed_w
│ │ │ -00223720: 6865 6e3a 2073 6572 7669 6365 5f65 7869  hen: service_exi
│ │ │ -00223730: 7374 732e 7263 206e 6f74 2069 6e20 5b30  sts.rc not in [0
│ │ │ -00223740: 2c20 315d 0a20 2020 2063 6865 636b 5f6d  , 1].    check_m
│ │ │ -00223750: 6f64 653a 2066 616c 7365 0a0a 2020 2d20  ode: false..  - 
│ │ │ -00223760: 6e61 6d65 3a20 4469 7361 626c 6520 4e65  name: Disable Ne
│ │ │ -00223770: 7477 6f72 6b20 4669 6c65 2053 7973 7465  twork File Syste
│ │ │ -00223780: 6d20 286e 6673 2920 2d20 456e 7375 7265  m (nfs) - Ensure
│ │ │ -00223790: 206e 6673 2d73 6572 7665 722e 7365 7276   nfs-server.serv
│ │ │ -002237a0: 6963 6520 6973 204d 6173 6b65 640a 2020  ice is Masked.  
│ │ │ -002237b0: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ -002237c0: 6e2e 7379 7374 656d 643a 0a20 2020 2020  n.systemd:.     
│ │ │ -002237d0: 206e 616d 653a 206e 6673 2d73 6572 7665   name: nfs-serve
│ │ │ -002237e0: 722e 7365 7276 6963 650a 2020 2020 2020  r.service.      
│ │ │ -002237f0: 7374 6174 653a 2073 746f 7070 6564 0a20  state: stopped. 
│ │ │ -00223800: 2020 2020 2065 6e61 626c 6564 3a20 6661       enabled: fa
│ │ │ -00223810: 6c73 650a 2020 2020 2020 6d61 736b 6564  lse.      masked
│ │ │ -00223820: 3a20 7472 7565 0a20 2020 2077 6865 6e3a  : true.    when:
│ │ │ -00223830: 2073 6572 7669 6365 5f65 7869 7374 732e   service_exists.
│ │ │ -00223840: 7374 646f 7574 5f6c 696e 6573 2069 7320  stdout_lines is 
│ │ │ -00223850: 7365 6172 6368 2822 6e66 732d 7365 7276  search("nfs-serv
│ │ │ -00223860: 6572 2e73 6572 7669 6365 222c 206d 756c  er.service", mul
│ │ │ -00223870: 7469 6c69 6e65 3d54 7275 6529 0a0a 2020  tiline=True)..  
│ │ │ -00223880: 2d20 6e61 6d65 3a20 556e 6974 2053 6f63  - name: Unit Soc
│ │ │ -00223890: 6b65 7420 4578 6973 7473 202d 206e 6673  ket Exists - nfs
│ │ │ -002238a0: 2d73 6572 7665 722e 736f 636b 6574 0a20  -server.socket. 
│ │ │ -002238b0: 2020 2061 6e73 6962 6c65 2e62 7569 6c74     ansible.built
│ │ │ -002238c0: 696e 2e63 6f6d 6d61 6e64 3a20 7379 7374  in.command: syst
│ │ │ -002238d0: 656d 6374 6c20 2d71 206c 6973 742d 756e  emctl -q list-un
│ │ │ -002238e0: 6974 2d66 696c 6573 206e 6673 2d73 6572  it-files nfs-ser
│ │ │ -002238f0: 7665 722e 736f 636b 6574 0a20 2020 2072  ver.socket.    r
│ │ │ -00223900: 6567 6973 7465 723a 2073 6f63 6b65 745f  egister: socket_
│ │ │ -00223910: 6669 6c65 5f65 7869 7374 730a 2020 2020  file_exists.    
│ │ │ -00223920: 6368 616e 6765 645f 7768 656e 3a20 6661  changed_when: fa
│ │ │ -00223930: 6c73 650a 2020 2020 6661 696c 6564 5f77  lse.    failed_w
│ │ │ -00223940: 6865 6e3a 2073 6f63 6b65 745f 6669 6c65  hen: socket_file
│ │ │ -00223950: 5f65 7869 7374 732e 7263 206e 6f74 2069  _exists.rc not i
│ │ │ -00223960: 6e20 5b30 2c20 315d 0a20 2020 2063 6865  n [0, 1].    che
│ │ │ -00223970: 636b 5f6d 6f64 653a 2066 616c 7365 0a0a  ck_mode: false..
│ │ │ -00223980: 2020 2d20 6e61 6d65 3a20 4469 7361 626c    - name: Disabl
│ │ │ -00223990: 6520 4e65 7477 6f72 6b20 4669 6c65 2053  e Network File S
│ │ │ -002239a0: 7973 7465 6d20 286e 6673 2920 2d20 4469  ystem (nfs) - Di
│ │ │ -002239b0: 7361 626c 6520 536f 636b 6574 206e 6673  sable Socket nfs
│ │ │ -002239c0: 2d73 6572 7665 720a 2020 2020 616e 7369  -server.    ansi
│ │ │ -002239d0: 626c 652e 6275 696c 7469 6e2e 7379 7374  ble.builtin.syst
│ │ │ -002239e0: 656d 643a 0a20 2020 2020 206e 616d 653a  emd:.      name:
│ │ │ -002239f0: 206e 6673 2d73 6572 7665 722e 736f 636b   nfs-server.sock
│ │ │ -00223a00: 6574 0a20 2020 2020 2065 6e61 626c 6564  et.      enabled
│ │ │ -00223a10: 3a20 6661 6c73 650a 2020 2020 2020 7374  : false.      st
│ │ │ -00223a20: 6174 653a 2073 746f 7070 6564 0a20 2020  ate: stopped.   
│ │ │ -00223a30: 2020 206d 6173 6b65 643a 2074 7275 650a     masked: true.
│ │ │ -00223a40: 2020 2020 7768 656e 3a20 736f 636b 6574      when: socket
│ │ │ -00223a50: 5f66 696c 655f 6578 6973 7473 2e73 7464  _file_exists.std
│ │ │ -00223a60: 6f75 745f 6c69 6e65 7320 6973 2073 6561  out_lines is sea
│ │ │ -00223a70: 7263 6828 226e 6673 2d73 6572 7665 722e  rch("nfs-server.
│ │ │ -00223a80: 736f 636b 6574 222c 206d 756c 7469 6c69  socket", multili
│ │ │ -00223a90: 6e65 3d54 7275 6529 0a20 2074 6167 733a  ne=True).  tags:
│ │ │ -00223aa0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -00223ab0: 2d43 4d2d 3628 6129 0a20 202d 204e 4953  -CM-6(a).  - NIS
│ │ │ -00223ac0: 542d 3830 302d 3533 2d43 4d2d 3728 6129  T-800-53-CM-7(a)
│ │ │ -00223ad0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -00223ae0: 2d43 4d2d 3728 6229 0a20 202d 2064 6973  -CM-7(b).  - dis
│ │ │ -00223af0: 6162 6c65 5f73 7472 6174 6567 790a 2020  able_strategy.  
│ │ │ -00223b00: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ -00223b10: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ -00223b20: 696f 6e0a 2020 2d20 6e6f 5f72 6562 6f6f  ion.  - no_reboo
│ │ │ -00223b30: 745f 6e65 6564 6564 0a20 202d 2073 6572  t_needed.  - ser
│ │ │ -00223b40: 7669 6365 5f6e 6673 5f64 6973 6162 6c65  vice_nfs_disable
│ │ │ -00223b50: 640a 2020 2d20 7370 6563 6961 6c5f 7365  d.  - special_se
│ │ │ -00223b60: 7276 6963 655f 626c 6f63 6b0a 2020 2d20  rvice_block.  - 
│ │ │ -00223b70: 756e 6b6e 6f77 6e5f 7365 7665 7269 7479  unknown_severity
│ │ │ -00223b80: 0a20 2077 6865 6e3a 2027 226b 6572 6e65  .  when: '"kerne
│ │ │ -00223b90: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ -00223ba0: 6374 732e 7061 636b 6167 6573 270a 3c2f  cts.packages'.
< │ │ │ +00222fd0: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +00222fe0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +00222ff0: 7365 2220 6964 3d22 6964 3639 3222 3e3c se" id="id692">< │ │ │ +00223000: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +00223010: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +00223020: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +00223030: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +00223040: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >
Disruption:Strategy: │ │ │ +002230d0: 3c74 643e 6469 7361 626c 653c 2f74 643e │ │ │ +002230e0: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
│ │ │ -00223420: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -00223450: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -00223460: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -002234a0: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ -002234b0: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Complex │ │ │ +00223050: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ +00223060: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
low
Reboo │ │ │ +002230a0: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ +002230b0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
disable
- name: │ │ │ +00223100: 4761 7468 6572 2074 6865 2070 6163 6b61 Gather the packa │ │ │ +00223110: 6765 2066 6163 7473 0a20 2070 6163 6b61 ge facts. packa │ │ │ +00223120: 6765 5f66 6163 7473 3a0a 2020 2020 6d61 ge_facts:. ma │ │ │ +00223130: 6e61 6765 723a 2061 7574 6f0a 2020 7461 nager: auto. ta │ │ │ +00223140: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030 gs:. - NIST-800 │ │ │ +00223150: 2d35 332d 434d 2d36 2861 290a 2020 2d20 -53-CM-6(a). - │ │ │ +00223160: 4e49 5354 2d38 3030 2d35 332d 434d 2d37 NIST-800-53-CM-7 │ │ │ +00223170: 2861 290a 2020 2d20 4e49 5354 2d38 3030 (a). - NIST-800 │ │ │ +00223180: 2d35 332d 434d 2d37 2862 290a 2020 2d20 -53-CM-7(b). - │ │ │ +00223190: 6469 7361 626c 655f 7374 7261 7465 6779 disable_strategy │ │ │ +002231a0: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578 . - low_complex │ │ │ +002231b0: 6974 790a 2020 2d20 6c6f 775f 6469 7372 ity. - low_disr │ │ │ +002231c0: 7570 7469 6f6e 0a20 202d 206e 6f5f 7265 uption. - no_re │ │ │ +002231d0: 626f 6f74 5f6e 6565 6465 640a 2020 2d20 boot_needed. - │ │ │ +002231e0: 7365 7276 6963 655f 6e66 735f 6469 7361 service_nfs_disa │ │ │ +002231f0: 626c 6564 0a20 202d 2075 6e6b 6e6f 776e bled. - unknown │ │ │ +00223200: 5f73 6576 6572 6974 790a 0a2d 206e 616d _severity..- nam │ │ │ +00223210: 653a 2044 6973 6162 6c65 204e 6574 776f e: Disable Netwo │ │ │ +00223220: 726b 2046 696c 6520 5379 7374 656d 2028 rk File System ( │ │ │ +00223230: 6e66 7329 202d 2044 6973 6162 6c65 2073 nfs) - Disable s │ │ │ +00223240: 6572 7669 6365 206e 6673 2d73 6572 7665 ervice nfs-serve │ │ │ +00223250: 720a 2020 626c 6f63 6b3a 0a0a 2020 2d20 r. block:.. - │ │ │ +00223260: 6e61 6d65 3a20 4469 7361 626c 6520 4e65 name: Disable Ne │ │ │ +00223270: 7477 6f72 6b20 4669 6c65 2053 7973 7465 twork File Syste │ │ │ +00223280: 6d20 286e 6673 2920 2d20 436f 6c6c 6563 m (nfs) - Collec │ │ │ +00223290: 7420 7379 7374 656d 6420 5365 7276 6963 t systemd Servic │ │ │ +002232a0: 6573 2050 7265 7365 6e74 2069 6e0a 2020 es Present in. │ │ │ +002232b0: 2020 2020 7468 6520 5379 7374 656d 0a20 the System. │ │ │ +002232c0: 2020 2061 6e73 6962 6c65 2e62 7569 6c74 ansible.built │ │ │ +002232d0: 696e 2e63 6f6d 6d61 6e64 3a20 7379 7374 in.command: syst │ │ │ +002232e0: 656d 6374 6c20 2d71 206c 6973 742d 756e emctl -q list-un │ │ │ +002232f0: 6974 2d66 696c 6573 202d 2d74 7970 6520 it-files --type │ │ │ +00223300: 7365 7276 6963 650a 2020 2020 7265 6769 service. regi │ │ │ +00223310: 7374 6572 3a20 7365 7276 6963 655f 6578 ster: service_ex │ │ │ +00223320: 6973 7473 0a20 2020 2063 6861 6e67 6564 ists. changed │ │ │ +00223330: 5f77 6865 6e3a 2066 616c 7365 0a20 2020 _when: false. │ │ │ +00223340: 2066 6169 6c65 645f 7768 656e 3a20 7365 failed_when: se │ │ │ +00223350: 7276 6963 655f 6578 6973 7473 2e72 6320 rvice_exists.rc │ │ │ +00223360: 6e6f 7420 696e 205b 302c 2031 5d0a 2020 not in [0, 1]. │ │ │ +00223370: 2020 6368 6563 6b5f 6d6f 6465 3a20 6661 check_mode: fa │ │ │ +00223380: 6c73 650a 0a20 202d 206e 616d 653a 2044 lse.. - name: D │ │ │ +00223390: 6973 6162 6c65 204e 6574 776f 726b 2046 isable Network F │ │ │ +002233a0: 696c 6520 5379 7374 656d 2028 6e66 7329 ile System (nfs) │ │ │ +002233b0: 202d 2045 6e73 7572 6520 6e66 732d 7365 - Ensure nfs-se │ │ │ +002233c0: 7276 6572 2e73 6572 7669 6365 2069 7320 rver.service is │ │ │ +002233d0: 4d61 736b 6564 0a20 2020 2061 6e73 6962 Masked. ansib │ │ │ +002233e0: 6c65 2e62 7569 6c74 696e 2e73 7973 7465 le.builtin.syste │ │ │ +002233f0: 6d64 3a0a 2020 2020 2020 6e61 6d65 3a20 md:. name: │ │ │ +00223400: 6e66 732d 7365 7276 6572 2e73 6572 7669 nfs-server.servi │ │ │ +00223410: 6365 0a20 2020 2020 2073 7461 7465 3a20 ce. state: │ │ │ +00223420: 7374 6f70 7065 640a 2020 2020 2020 656e stopped. en │ │ │ +00223430: 6162 6c65 643a 2066 616c 7365 0a20 2020 abled: false. │ │ │ +00223440: 2020 206d 6173 6b65 643a 2074 7275 650a masked: true. │ │ │ +00223450: 2020 2020 7768 656e 3a20 7365 7276 6963 when: servic │ │ │ +00223460: 655f 6578 6973 7473 2e73 7464 6f75 745f e_exists.stdout_ │ │ │ +00223470: 6c69 6e65 7320 6973 2073 6561 7263 6828 lines is search( │ │ │ +00223480: 226e 6673 2d73 6572 7665 722e 7365 7276 "nfs-server.serv │ │ │ +00223490: 6963 6522 2c20 6d75 6c74 696c 696e 653d ice", multiline= │ │ │ +002234a0: 5472 7565 290a 0a20 202d 206e 616d 653a True).. - name: │ │ │ +002234b0: 2055 6e69 7420 536f 636b 6574 2045 7869 Unit Socket Exi │ │ │ +002234c0: 7374 7320 2d20 6e66 732d 7365 7276 6572 sts - nfs-server │ │ │ +002234d0: 2e73 6f63 6b65 740a 2020 2020 616e 7369 .socket. ansi │ │ │ +002234e0: 626c 652e 6275 696c 7469 6e2e 636f 6d6d ble.builtin.comm │ │ │ +002234f0: 616e 643a 2073 7973 7465 6d63 746c 202d and: systemctl - │ │ │ +00223500: 7120 6c69 7374 2d75 6e69 742d 6669 6c65 q list-unit-file │ │ │ +00223510: 7320 6e66 732d 7365 7276 6572 2e73 6f63 s nfs-server.soc │ │ │ +00223520: 6b65 740a 2020 2020 7265 6769 7374 6572 ket. register │ │ │ +00223530: 3a20 736f 636b 6574 5f66 696c 655f 6578 : socket_file_ex │ │ │ +00223540: 6973 7473 0a20 2020 2063 6861 6e67 6564 ists. changed │ │ │ +00223550: 5f77 6865 6e3a 2066 616c 7365 0a20 2020 _when: false. │ │ │ +00223560: 2066 6169 6c65 645f 7768 656e 3a20 736f failed_when: so │ │ │ +00223570: 636b 6574 5f66 696c 655f 6578 6973 7473 cket_file_exists │ │ │ +00223580: 2e72 6320 6e6f 7420 696e 205b 302c 2031 .rc not in [0, 1 │ │ │ +00223590: 5d0a 2020 2020 6368 6563 6b5f 6d6f 6465 ]. check_mode │ │ │ +002235a0: 3a20 6661 6c73 650a 0a20 202d 206e 616d : false.. - nam │ │ │ +002235b0: 653a 2044 6973 6162 6c65 204e 6574 776f e: Disable Netwo │ │ │ +002235c0: 726b 2046 696c 6520 5379 7374 656d 2028 rk File System ( │ │ │ +002235d0: 6e66 7329 202d 2044 6973 6162 6c65 2053 nfs) - Disable S │ │ │ +002235e0: 6f63 6b65 7420 6e66 732d 7365 7276 6572 ocket nfs-server │ │ │ +002235f0: 0a20 2020 2061 6e73 6962 6c65 2e62 7569 . ansible.bui │ │ │ +00223600: 6c74 696e 2e73 7973 7465 6d64 3a0a 2020 ltin.systemd:. │ │ │ +00223610: 2020 2020 6e61 6d65 3a20 6e66 732d 7365 name: nfs-se │ │ │ +00223620: 7276 6572 2e73 6f63 6b65 740a 2020 2020 rver.socket. │ │ │ +00223630: 2020 656e 6162 6c65 643a 2066 616c 7365 enabled: false │ │ │ +00223640: 0a20 2020 2020 2073 7461 7465 3a20 7374 . state: st │ │ │ +00223650: 6f70 7065 640a 2020 2020 2020 6d61 736b opped. mask │ │ │ +00223660: 6564 3a20 7472 7565 0a20 2020 2077 6865 ed: true. whe │ │ │ +00223670: 6e3a 2073 6f63 6b65 745f 6669 6c65 5f65 n: socket_file_e │ │ │ +00223680: 7869 7374 732e 7374 646f 7574 5f6c 696e xists.stdout_lin │ │ │ +00223690: 6573 2069 7320 7365 6172 6368 2822 6e66 es is search("nf │ │ │ +002236a0: 732d 7365 7276 6572 2e73 6f63 6b65 7422 s-server.socket" │ │ │ +002236b0: 2c20 6d75 6c74 696c 696e 653d 5472 7565 , multiline=True │ │ │ +002236c0: 290a 2020 7461 6773 3a0a 2020 2d20 4e49 ). tags:. - NI │ │ │ +002236d0: 5354 2d38 3030 2d35 332d 434d 2d36 2861 ST-800-53-CM-6(a │ │ │ +002236e0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35 ). - NIST-800-5 │ │ │ +002236f0: 332d 434d 2d37 2861 290a 2020 2d20 4e49 3-CM-7(a). - NI │ │ │ +00223700: 5354 2d38 3030 2d35 332d 434d 2d37 2862 ST-800-53-CM-7(b │ │ │ +00223710: 290a 2020 2d20 6469 7361 626c 655f 7374 ). - disable_st │ │ │ +00223720: 7261 7465 6779 0a20 202d 206c 6f77 5f63 rategy. - low_c │ │ │ +00223730: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f omplexity. - lo │ │ │ +00223740: 775f 6469 7372 7570 7469 6f6e 0a20 202d w_disruption. - │ │ │ +00223750: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465 no_reboot_neede │ │ │ +00223760: 640a 2020 2d20 7365 7276 6963 655f 6e66 d. - service_nf │ │ │ +00223770: 735f 6469 7361 626c 6564 0a20 202d 2073 s_disabled. - s │ │ │ +00223780: 7065 6369 616c 5f73 6572 7669 6365 5f62 pecial_service_b │ │ │ +00223790: 6c6f 636b 0a20 202d 2075 6e6b 6e6f 776e lock. - unknown │ │ │ +002237a0: 5f73 6576 6572 6974 790a 2020 7768 656e _severity. when │ │ │ +002237b0: 3a20 2722 6b65 726e 656c 2220 696e 2061 : '"kernel" in a │ │ │ +002237c0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163 nsible_facts.pac │ │ │ +002237d0: 6b61 6765 7327 0a3c 2f63 6f64 653e 3c2f kages'.
Remediati │ │ │ +00223890: 6f6e 2050 7570 7065 7420 736e 6970 7065 on Puppet snippe │ │ │ +002238a0: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ +00223920: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ +00223930: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ +00223950: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ +00223960: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ +00223980: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ +002239a0: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:enable
<
│ │ │ +002239d0: 636f 6465 3e69 6e63 6c75 6465 2064 6973  code>include dis
│ │ │ +002239e0: 6162 6c65 5f6e 6673 2d73 6572 7665 720a  able_nfs-server.
│ │ │ +002239f0: 0a63 6c61 7373 2064 6973 6162 6c65 5f6e  .class disable_n
│ │ │ +00223a00: 6673 2d73 6572 7665 7220 7b0a 2020 7365  fs-server {.  se
│ │ │ +00223a10: 7276 6963 6520 7b27 6e66 732d 7365 7276  rvice {'nfs-serv
│ │ │ +00223a20: 6572 273a 0a20 2020 2065 6e61 626c 6520  er':.    enable 
│ │ │ +00223a30: 3d26 6774 3b20 6661 6c73 652c 0a20 2020  => false,.   
│ │ │ +00223a40: 2065 6e73 7572 6520 3d26 6774 3b20 2773   ensure => 's
│ │ │ +00223a50: 746f 7070 6564 272c 0a20 207d 0a7d 0a3c  topped',.  }.}.<
│ │ │ +00223a60: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ +00223b10: 656d 6564 6961 7469 6f6e 204f 5342 7569 emediation OSBui │ │ │ +00223b20: 6c64 2042 6c75 6570 7269 6e74 2073 6e69 ld Blueprint sni │ │ │ +00223b30: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ +00223b40: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ +00223b70: 3c70 7265 3e3c 636f 6465 3e0a 5b63 7573
.[cus
│ │ │ +00223b80: 746f 6d69 7a61 7469 6f6e 732e 7365 7276  tomizations.serv
│ │ │ +00223b90: 6963 6573 5d0a 6d61 736b 6564 203d 205b  ices].masked = [
│ │ │ +00223ba0: 226e 6673 2d73 6572 7665 7222 5d0a 3c2f  "nfs-server"].
R │ │ │ -0022dca0: 656d 6564 6961 7469 6f6e 2041 6e61 636f emediation Anaco │ │ │ -0022dcb0: 6e64 6120 736e 6970 7065 7420 e287 b23c nda snippet ...< │ │ │ -0022dcc0: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
< │ │ │ -0022dd90: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -0022dda0: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

│ │ │ -0022ddf0: 0a0a 7061 636b 6167 6520 2d2d 7265 6d6f  ..package --remo
│ │ │ -0022de00: 7665 3d74 656c 6e65 742d 7365 7276 6572  ve=telnet-server
│ │ │ -0022de10: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation Pup │ │ │ -0022ded0: 7065 7420 736e 6970 7065 7420 e287 b23c pet snippet ...< │ │ │ -0022dee0: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
Complexity:low
Disrup │ │ │ -0022dd70: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -0022dd80: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -0022ddc0: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ -0022ddd0: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
< │ │ │ -0022dfb0: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -0022dfc0: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

│ │ │ -0022e010: 0a69 6e63 6c75 6465 2072 656d 6f76 655f  .include remove_
│ │ │ -0022e020: 7465 6c6e 6574 2d73 6572 7665 720a 0a63  telnet-server..c
│ │ │ -0022e030: 6c61 7373 2072 656d 6f76 655f 7465 6c6e  lass remove_teln
│ │ │ -0022e040: 6574 2d73 6572 7665 7220 7b0a 2020 7061  et-server {.  pa
│ │ │ -0022e050: 636b 6167 6520 7b20 2774 656c 6e65 742d  ckage { 'telnet-
│ │ │ -0022e060: 7365 7276 6572 273a 0a20 2020 2065 6e73  server':.    ens
│ │ │ -0022e070: 7572 6520 3d26 6774 3b20 2770 7572 6765  ure => 'purge
│ │ │ -0022e080: 6427 2c0a 2020 7d0a 7d0a 3c2f 636f 6465  d',.  }.}.
Remedi │ │ │ -0022e140: 6174 696f 6e20 416e 7369 626c 6520 736e ation Ansible sn │ │ │ -0022e150: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
Complexity:low
Disrup │ │ │ -0022df90: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -0022dfa0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -0022dfe0: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ -0022dff0: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
│ │ │ -0022e200: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ -0022e220: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ -0022e250: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ -0022e1e0: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ -0022e1f0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ -0022e210: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ -0022e230: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -0022e240: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:disable
< │ │ │ -0022e280: 7072 653e 3c63 6f64 653e 2d20 6e61 6d65 pre>- name │ │ │ -0022e290: 3a20 2755 6e69 6e73 7461 6c6c 2074 656c : 'Uninstall tel │ │ │ -0022e2a0: 6e65 742d 7365 7276 6572 2050 6163 6b61 net-server Packa │ │ │ -0022e2b0: 6765 3a20 456e 7375 7265 2074 656c 6e65 ge: Ensure telne │ │ │ -0022e2c0: 742d 7365 7276 6572 2069 7320 7265 6d6f t-server is remo │ │ │ -0022e2d0: 7665 6427 0a20 2061 6e73 6962 6c65 2e62 ved'. ansible.b │ │ │ -0022e2e0: 7569 6c74 696e 2e70 6163 6b61 6765 3a0a uiltin.package:. │ │ │ -0022e2f0: 2020 2020 6e61 6d65 3a20 7465 6c6e 6574 name: telnet │ │ │ -0022e300: 2d73 6572 7665 720a 2020 2020 7374 6174 -server. stat │ │ │ -0022e310: 653a 2061 6273 656e 740a 2020 7461 6773 e: absent. tags │ │ │ -0022e320: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35 :. - NIST-800-5 │ │ │ -0022e330: 332d 434d 2d36 2861 290a 2020 2d20 4e49 3-CM-6(a). - NI │ │ │ -0022e340: 5354 2d38 3030 2d35 332d 434d 2d37 2861 ST-800-53-CM-7(a │ │ │ -0022e350: 290a 2020 2d20 4e49 5354 2d38 3030 2d35 ). - NIST-800-5 │ │ │ -0022e360: 332d 434d 2d37 2862 290a 2020 2d20 5043 3-CM-7(b). - PC │ │ │ -0022e370: 492d 4453 532d 5265 712d 322e 322e 320a I-DSS-Req-2.2.2. │ │ │ -0022e380: 2020 2d20 5043 492d 4453 5376 342d 322e - PCI-DSSv4-2. │ │ │ -0022e390: 320a 2020 2d20 5043 492d 4453 5376 342d 2. - PCI-DSSv4- │ │ │ -0022e3a0: 322e 322e 340a 2020 2d20 6469 7361 626c 2.2.4. - disabl │ │ │ -0022e3b0: 655f 7374 7261 7465 6779 0a20 202d 2068 e_strategy. - h │ │ │ -0022e3c0: 6967 685f 7365 7665 7269 7479 0a20 202d igh_severity. - │ │ │ -0022e3d0: 206c 6f77 5f63 6f6d 706c 6578 6974 790a low_complexity. │ │ │ -0022e3e0: 2020 2d20 6c6f 775f 6469 7372 7570 7469 - low_disrupti │ │ │ -0022e3f0: 6f6e 0a20 202d 206e 6f5f 7265 626f 6f74 on. - no_reboot │ │ │ -0022e400: 5f6e 6565 6465 640a 2020 2d20 7061 636b _needed. - pack │ │ │ -0022e410: 6167 655f 7465 6c6e 6574 2d73 6572 7665 age_telnet-serve │ │ │ -0022e420: 725f 7265 6d6f 7665 640a 3c2f 636f 6465 r_removed.
Remedi │ │ │ -0022e4e0: 6174 696f 6e20 5368 656c 6c20 7363 7269 ation Shell scri │ │ │ -0022e4f0: 7074 20e2 87b2 3c2f 613e 3c62 723e 3c64 pt ...
│ │ │ -0022e570: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ -0022e580: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -0022e590: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ -0022e5d0: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -0022e5e0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ -0022e600: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ -0022e610: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
.# CAUTIO
│ │ │ -0022e630: 4e3a 2054 6869 7320 7265 6d65 6469 6174  N: This remediat
│ │ │ -0022e640: 696f 6e20 7363 7269 7074 2077 696c 6c20  ion script will 
│ │ │ -0022e650: 7265 6d6f 7665 2074 656c 6e65 742d 7365  remove telnet-se
│ │ │ -0022e660: 7276 6572 0a23 2066 726f 6d20 7468 6520  rver.# from the 
│ │ │ -0022e670: 7379 7374 656d 2c20 616e 6420 6d61 7920  system, and may 
│ │ │ -0022e680: 7265 6d6f 7665 2061 6e79 2070 6163 6b61  remove any packa
│ │ │ -0022e690: 6765 730a 2320 7468 6174 2064 6570 656e  ges.# that depen
│ │ │ -0022e6a0: 6420 6f6e 2074 656c 6e65 742d 7365 7276  d on telnet-serv
│ │ │ -0022e6b0: 6572 2e20 4578 6563 7574 6520 7468 6973  er. Execute this
│ │ │ -0022e6c0: 0a23 2072 656d 6564 6961 7469 6f6e 2041  .# remediation A
│ │ │ -0022e6d0: 4654 4552 2074 6573 7469 6e67 206f 6e20  FTER testing on 
│ │ │ -0022e6e0: 6120 6e6f 6e2d 7072 6f64 7563 7469 6f6e  a non-production
│ │ │ -0022e6f0: 0a23 2073 7973 7465 6d21 0a0a 0a69 6620  .# system!...if 
│ │ │ -0022e700: 7270 6d20 2d71 202d 2d71 7569 6574 2022  rpm -q --quiet "
│ │ │ -0022e710: 7465 6c6e 6574 2d73 6572 7665 7222 203b  telnet-server" ;
│ │ │ -0022e720: 2074 6865 6e0a 646e 6620 7265 6d6f 7665   then.dnf remove
│ │ │ -0022e730: 202d 7920 2d2d 6e6f 6175 746f 7265 6d6f   -y --noautoremo
│ │ │ -0022e740: 7665 2022 7465 6c6e 6574 2d73 6572 7665  ve "telnet-serve
│ │ │ -0022e750: 7222 0a66 690a 3c2f 636f 6465 3e3c 2f70  r".fi.


│ │ │ +0022dd50: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
-
│ │ │ +0022ddf0: 206e 616d 653a 2027 556e 696e 7374 616c   name: 'Uninstal
│ │ │ +0022de00: 6c20 7465 6c6e 6574 2d73 6572 7665 7220  l telnet-server 
│ │ │ +0022de10: 5061 636b 6167 653a 2045 6e73 7572 6520  Package: Ensure 
│ │ │ +0022de20: 7465 6c6e 6574 2d73 6572 7665 7220 6973  telnet-server is
│ │ │ +0022de30: 2072 656d 6f76 6564 270a 2020 616e 7369   removed'.  ansi
│ │ │ +0022de40: 626c 652e 6275 696c 7469 6e2e 7061 636b  ble.builtin.pack
│ │ │ +0022de50: 6167 653a 0a20 2020 206e 616d 653a 2074  age:.    name: t
│ │ │ +0022de60: 656c 6e65 742d 7365 7276 6572 0a20 2020  elnet-server.   
│ │ │ +0022de70: 2073 7461 7465 3a20 6162 7365 6e74 0a20   state: absent. 
│ │ │ +0022de80: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ +0022de90: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ +0022dea0: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +0022deb0: 4d2d 3728 6129 0a20 202d 204e 4953 542d  M-7(a).  - NIST-
│ │ │ +0022dec0: 3830 302d 3533 2d43 4d2d 3728 6229 0a20  800-53-CM-7(b). 
│ │ │ +0022ded0: 202d 2050 4349 2d44 5353 2d52 6571 2d32   - PCI-DSS-Req-2
│ │ │ +0022dee0: 2e32 2e32 0a20 202d 2050 4349 2d44 5353  .2.2.  - PCI-DSS
│ │ │ +0022def0: 7634 2d32 2e32 0a20 202d 2050 4349 2d44  v4-2.2.  - PCI-D
│ │ │ +0022df00: 5353 7634 2d32 2e32 2e34 0a20 202d 2064  SSv4-2.2.4.  - d
│ │ │ +0022df10: 6973 6162 6c65 5f73 7472 6174 6567 790a  isable_strategy.
│ │ │ +0022df20: 2020 2d20 6869 6768 5f73 6576 6572 6974    - high_severit
│ │ │ +0022df30: 790a 2020 2d20 6c6f 775f 636f 6d70 6c65  y.  - low_comple
│ │ │ +0022df40: 7869 7479 0a20 202d 206c 6f77 5f64 6973  xity.  - low_dis
│ │ │ +0022df50: 7275 7074 696f 6e0a 2020 2d20 6e6f 5f72  ruption.  - no_r
│ │ │ +0022df60: 6562 6f6f 745f 6e65 6564 6564 0a20 202d  eboot_needed.  -
│ │ │ +0022df70: 2070 6163 6b61 6765 5f74 656c 6e65 742d   package_telnet-
│ │ │ +0022df80: 7365 7276 6572 5f72 656d 6f76 6564 0a3c  server_removed.<
│ │ │ +0022df90: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ +0022e040: 656d 6564 6961 7469 6f6e 2050 7570 7065 emediation Puppe │ │ │ +0022e050: 7420 736e 6970 7065 7420 e287 b23c 2f61 t snippet ...
│ │ │ +0022dd40: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +0022dd70: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +0022dd80: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +0022ddc0: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ +0022ddd0: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
< │ │ │ +0022e0f0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +0022e100: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ +0022e150: 3c74 723e 3c74 683e 5374 7261 7465 6779
.i
│ │ │ +0022e190: 6e63 6c75 6465 2072 656d 6f76 655f 7465  nclude remove_te
│ │ │ +0022e1a0: 6c6e 6574 2d73 6572 7665 720a 0a63 6c61  lnet-server..cla
│ │ │ +0022e1b0: 7373 2072 656d 6f76 655f 7465 6c6e 6574  ss remove_telnet
│ │ │ +0022e1c0: 2d73 6572 7665 7220 7b0a 2020 7061 636b  -server {.  pack
│ │ │ +0022e1d0: 6167 6520 7b20 2774 656c 6e65 742d 7365  age { 'telnet-se
│ │ │ +0022e1e0: 7276 6572 273a 0a20 2020 2065 6e73 7572  rver':.    ensur
│ │ │ +0022e1f0: 6520 3d26 6774 3b20 2770 7572 6765 6427  e => 'purged'
│ │ │ +0022e200: 2c0a 2020 7d0a 7d0a 3c2f 636f 6465 3e3c  ,.  }.}.<
│ │ │ +0022e210: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>Remediat
│ │ │ +0022e2c0: 696f 6e20 5368 656c 6c20 7363 7269 7074  ion Shell script
│ │ │ +0022e2d0: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976   ...
< │ │ │ +0022e390: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +0022e3a0: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c
C │ │ │ +0022e0e0: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ +0022e110: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ +0022e120: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ +0022e160: 3a3c 2f74 683e 3c74 643e 6469 7361 626c :disabl │ │ │ +0022e170: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
Complexity │ │ │ +0022e360: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
D │ │ │ +0022e380: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:
Reboot:< │ │ │ +0022e3b0: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>false
S │ │ │ +0022e3d0: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:disable
<
│ │ │ +0022e400: 636f 6465 3e0a 2320 4341 5554 494f 4e3a  code>.# CAUTION:
│ │ │ +0022e410: 2054 6869 7320 7265 6d65 6469 6174 696f   This remediatio
│ │ │ +0022e420: 6e20 7363 7269 7074 2077 696c 6c20 7265  n script will re
│ │ │ +0022e430: 6d6f 7665 2074 656c 6e65 742d 7365 7276  move telnet-serv
│ │ │ +0022e440: 6572 0a23 2066 726f 6d20 7468 6520 7379  er.# from the sy
│ │ │ +0022e450: 7374 656d 2c20 616e 6420 6d61 7920 7265  stem, and may re
│ │ │ +0022e460: 6d6f 7665 2061 6e79 2070 6163 6b61 6765  move any package
│ │ │ +0022e470: 730a 2320 7468 6174 2064 6570 656e 6420  s.# that depend 
│ │ │ +0022e480: 6f6e 2074 656c 6e65 742d 7365 7276 6572  on telnet-server
│ │ │ +0022e490: 2e20 4578 6563 7574 6520 7468 6973 0a23  . Execute this.#
│ │ │ +0022e4a0: 2072 656d 6564 6961 7469 6f6e 2041 4654   remediation AFT
│ │ │ +0022e4b0: 4552 2074 6573 7469 6e67 206f 6e20 6120  ER testing on a 
│ │ │ +0022e4c0: 6e6f 6e2d 7072 6f64 7563 7469 6f6e 0a23  non-production.#
│ │ │ +0022e4d0: 2073 7973 7465 6d21 0a0a 0a69 6620 7270   system!...if rp
│ │ │ +0022e4e0: 6d20 2d71 202d 2d71 7569 6574 2022 7465  m -q --quiet "te
│ │ │ +0022e4f0: 6c6e 6574 2d73 6572 7665 7222 203b 2074  lnet-server" ; t
│ │ │ +0022e500: 6865 6e0a 646e 6620 7265 6d6f 7665 202d  hen.dnf remove -
│ │ │ +0022e510: 7920 2d2d 6e6f 6175 746f 7265 6d6f 7665  y --noautoremove
│ │ │ +0022e520: 2022 7465 6c6e 6574 2d73 6572 7665 7222   "telnet-server"
│ │ │ +0022e530: 0a66 690a 3c2f 636f 6465 3e3c 2f70 7265  .fi.
Remediation │ │ │ +0022e5f0: 416e 6163 6f6e 6461 2073 6e69 7070 6574 Anaconda snippet │ │ │ +0022e600: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Complexity │ │ │ +0022e690: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ +0022e6b0: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ +0022e6c0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +0022e6d0: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ +0022e6e0: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ +0022e700: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:disable
<
│ │ │ +0022e730: 636f 6465 3e0a 0a70 6163 6b61 6765 202d  code>..package -
│ │ │ +0022e740: 2d72 656d 6f76 653d 7465 6c6e 6574 2d73  -remove=telnet-s
│ │ │ +0022e750: 6572 7665 720a 3c2f 636f 6465 3e3c 2f70  erver.

< │ │ │ 0022e770: 2f74 643e 3c2f 7472 3e3c 2f74 626f 6479 /td>Remediat │ │ │ -0022f330: 696f 6e20 416e 6163 6f6e 6461 2073 6e69 ion Anaconda sni │ │ │ -0022f340: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -0022f350: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -0022f380: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ -0022f3f0: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ -0022f410: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ -0022f440: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
Comple │ │ │ -0022f3d0: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ -0022f3e0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ -0022f420: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ -0022f430: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
disable

..packa │ │ │ -0022f480: 6765 202d 2d72 656d 6f76 653d 7465 6c6e ge --remove=teln │ │ │ -0022f490: 6574 0a3c 2f63 6f64 653e 3c2f 7072 653e et. │ │ │ -0022f4a0: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22

Remediation P │ │ │ -0022f550: 7570 7065 7420 736e 6970 7065 7420 e287 uppet snippet .. │ │ │ -0022f560: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ -0022f5e0: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -0022f600: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -0022f650: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>< │ │ │ -0022f680: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
.include remov
│ │ │ -0022f6a0: 655f 7465 6c6e 6574 0a0a 636c 6173 7320  e_telnet..class 
│ │ │ -0022f6b0: 7265 6d6f 7665 5f74 656c 6e65 7420 7b0a  remove_telnet {.
│ │ │ -0022f6c0: 2020 7061 636b 6167 6520 7b20 2774 656c    package { 'tel
│ │ │ -0022f6d0: 6e65 7427 3a0a 2020 2020 656e 7375 7265  net':.    ensure
│ │ │ -0022f6e0: 203d 2667 743b 2027 7075 7267 6564 272c   => 'purged',
│ │ │ -0022f6f0: 0a20 207d 0a7d 0a3c 2f63 6f64 653e 3c2f  .  }.}.Remediati
│ │ │ -0022f7b0: 6f6e 2041 6e73 6962 6c65 2073 6e69 7070  on Ansible snipp
│ │ │ -0022f7c0: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64  et ...
│ │ │ -0022f840: 3c74 723e 3c74 683e 436f 6d70 6c65 7869
< │ │ │ -0022f8d0: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ -0022f8e0: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
low
Disr │ │ │ -0022f610: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -0022f620: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ -0022f660: 7465 6779 3a3c 2f74 683e 3c74 643e 6469 tegy:di │ │ │ -0022f670: 7361 626c 653c 2f74 643e 3c2f 7472 3e3c sable
Complexi │ │ │ -0022f850: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -0022f860: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Disruption:low
Reboot │ │ │ -0022f8a0: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -0022f8b0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Strategy:
- name: '
│ │ │ -0022f900: 5265 6d6f 7665 2074 656c 6e65 7420 436c  Remove telnet Cl
│ │ │ -0022f910: 6965 6e74 733a 2045 6e73 7572 6520 7465  ients: Ensure te
│ │ │ -0022f920: 6c6e 6574 2069 7320 7265 6d6f 7665 6427  lnet is removed'
│ │ │ -0022f930: 0a20 2061 6e73 6962 6c65 2e62 7569 6c74  .  ansible.built
│ │ │ -0022f940: 696e 2e70 6163 6b61 6765 3a0a 2020 2020  in.package:.    
│ │ │ -0022f950: 6e61 6d65 3a20 7465 6c6e 6574 0a20 2020  name: telnet.   
│ │ │ -0022f960: 2073 7461 7465 3a20 6162 7365 6e74 0a20   state: absent. 
│ │ │ -0022f970: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ -0022f980: 3830 302d 3137 312d 332e 312e 3133 0a20  800-171-3.1.13. 
│ │ │ -0022f990: 202d 2050 4349 2d44 5353 7634 2d32 2e32   - PCI-DSSv4-2.2
│ │ │ -0022f9a0: 0a20 202d 2050 4349 2d44 5353 7634 2d32  .  - PCI-DSSv4-2
│ │ │ -0022f9b0: 2e32 2e34 0a20 202d 2064 6973 6162 6c65  .2.4.  - disable
│ │ │ -0022f9c0: 5f73 7472 6174 6567 790a 2020 2d20 6c6f  _strategy.  - lo
│ │ │ -0022f9d0: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ -0022f9e0: 206c 6f77 5f64 6973 7275 7074 696f 6e0a   low_disruption.
│ │ │ -0022f9f0: 2020 2d20 6c6f 775f 7365 7665 7269 7479    - low_severity
│ │ │ -0022fa00: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ -0022fa10: 6565 6465 640a 2020 2d20 7061 636b 6167  eeded.  - packag
│ │ │ -0022fa20: 655f 7465 6c6e 6574 5f72 656d 6f76 6564  e_telnet_removed
│ │ │ -0022fa30: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation She │ │ │ -0022faf0: 6c6c 2073 6372 6970 7420 e287 b23c 2f61 ll script ...
< │ │ │ -0022fb90: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -0022fba0: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ -0022fbf0: 3c74 723e 3c74 683e 5374 7261 7465 6779
.#
│ │ │ -0022fc30: 2043 4155 5449 4f4e 3a20 5468 6973 2072   CAUTION: This r
│ │ │ -0022fc40: 656d 6564 6961 7469 6f6e 2073 6372 6970  emediation scrip
│ │ │ -0022fc50: 7420 7769 6c6c 2072 656d 6f76 6520 7465  t will remove te
│ │ │ -0022fc60: 6c6e 6574 0a23 2066 726f 6d20 7468 6520  lnet.# from the 
│ │ │ -0022fc70: 7379 7374 656d 2c20 616e 6420 6d61 7920  system, and may 
│ │ │ -0022fc80: 7265 6d6f 7665 2061 6e79 2070 6163 6b61  remove any packa
│ │ │ -0022fc90: 6765 730a 2320 7468 6174 2064 6570 656e  ges.# that depen
│ │ │ -0022fca0: 6420 6f6e 2074 656c 6e65 742e 2045 7865  d on telnet. Exe
│ │ │ -0022fcb0: 6375 7465 2074 6869 730a 2320 7265 6d65  cute this.# reme
│ │ │ -0022fcc0: 6469 6174 696f 6e20 4146 5445 5220 7465  diation AFTER te
│ │ │ -0022fcd0: 7374 696e 6720 6f6e 2061 206e 6f6e 2d70  sting on a non-p
│ │ │ -0022fce0: 726f 6475 6374 696f 6e0a 2320 7379 7374  roduction.# syst
│ │ │ -0022fcf0: 656d 210a 0a0a 6966 2072 706d 202d 7120  em!...if rpm -q 
│ │ │ -0022fd00: 2d2d 7175 6965 7420 2274 656c 6e65 7422  --quiet "telnet"
│ │ │ -0022fd10: 203b 2074 6865 6e0a 646e 6620 7265 6d6f   ; then.dnf remo
│ │ │ -0022fd20: 7665 202d 7920 2d2d 6e6f 6175 746f 7265  ve -y --noautore
│ │ │ -0022fd30: 6d6f 7665 2022 7465 6c6e 6574 220a 6669  move "telnet".fi
│ │ │ +0022f330: 696f 6e20 416e 7369 626c 6520 736e 6970  ion Ansible snip
│ │ │ +0022f340: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c  pet ...
< │ │ │ +0022f350: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +0022f360: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +0022f370: 7365 2220 6964 3d22 6964 3731 3122 3e3c se" id="id711">< │ │ │ +0022f380: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +0022f390: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +0022f3a0: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +0022f3b0: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +0022f3c0: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >
Disruption:Strategy: │ │ │ +0022f450: 3c74 643e 6469 7361 626c 653c 2f74 643e │ │ │ +0022f460: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
C │ │ │ -0022fb80: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -0022fbb0: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ -0022fbc0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -0022fc00: 3a3c 2f74 683e 3c74 643e 6469 7361 626c :disabl │ │ │ -0022fc10: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
Complex │ │ │ +0022f3d0: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ +0022f3e0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
low
Reboo │ │ │ +0022f420: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ +0022f430: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
disable
- name: │ │ │ +0022f480: 2752 656d 6f76 6520 7465 6c6e 6574 2043 'Remove telnet C │ │ │ +0022f490: 6c69 656e 7473 3a20 456e 7375 7265 2074 lients: Ensure t │ │ │ +0022f4a0: 656c 6e65 7420 6973 2072 656d 6f76 6564 elnet is removed │ │ │ +0022f4b0: 270a 2020 616e 7369 626c 652e 6275 696c '. ansible.buil │ │ │ +0022f4c0: 7469 6e2e 7061 636b 6167 653a 0a20 2020 tin.package:. │ │ │ +0022f4d0: 206e 616d 653a 2074 656c 6e65 740a 2020 name: telnet. │ │ │ +0022f4e0: 2020 7374 6174 653a 2061 6273 656e 740a state: absent. │ │ │ +0022f4f0: 2020 7461 6773 3a0a 2020 2d20 4e49 5354 tags:. - NIST │ │ │ +0022f500: 2d38 3030 2d31 3731 2d33 2e31 2e31 330a -800-171-3.1.13. │ │ │ +0022f510: 2020 2d20 5043 492d 4453 5376 342d 322e - PCI-DSSv4-2. │ │ │ +0022f520: 320a 2020 2d20 5043 492d 4453 5376 342d 2. - PCI-DSSv4- │ │ │ +0022f530: 322e 322e 340a 2020 2d20 6469 7361 626c 2.2.4. - disabl │ │ │ +0022f540: 655f 7374 7261 7465 6779 0a20 202d 206c e_strategy. - l │ │ │ +0022f550: 6f77 5f63 6f6d 706c 6578 6974 790a 2020 ow_complexity. │ │ │ +0022f560: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e - low_disruption │ │ │ +0022f570: 0a20 202d 206c 6f77 5f73 6576 6572 6974 . - low_severit │ │ │ +0022f580: 790a 2020 2d20 6e6f 5f72 6562 6f6f 745f y. - no_reboot_ │ │ │ +0022f590: 6e65 6564 6564 0a20 202d 2070 6163 6b61 needed. - packa │ │ │ +0022f5a0: 6765 5f74 656c 6e65 745f 7265 6d6f 7665 ge_telnet_remove │ │ │ +0022f5b0: 640a 3c2f 636f 6465 3e3c 2f70 7265 3e3c d.< │ │ │ +0022f5c0: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Pu │ │ │ +0022f670: 7070 6574 2073 6e69 7070 6574 20e2 87b2 ppet snippet ... │ │ │ +0022f680: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity: │ │ │ +0022f750: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +0022f760: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
.include remove
│ │ │ +0022f7c0: 5f74 656c 6e65 740a 0a63 6c61 7373 2072  _telnet..class r
│ │ │ +0022f7d0: 656d 6f76 655f 7465 6c6e 6574 207b 0a20  emove_telnet {. 
│ │ │ +0022f7e0: 2070 6163 6b61 6765 207b 2027 7465 6c6e   package { 'teln
│ │ │ +0022f7f0: 6574 273a 0a20 2020 2065 6e73 7572 6520  et':.    ensure 
│ │ │ +0022f800: 3d26 6774 3b20 2770 7572 6765 6427 2c0a  => 'purged',.
│ │ │ +0022f810: 2020 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70    }.}.

Remediatio │ │ │ +0022f8d0: 6e20 5368 656c 6c20 7363 7269 7074 20e2 n Shell script . │ │ │ +0022f8e0: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
low
Disru │ │ │ +0022f730: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +0022f740: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +0022f780: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ +0022f790: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
│ │ │ +0022f960: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +0022f980: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ +0022f9d0: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ +0022fa00: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ +0022f970: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +0022f990: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ +0022f9e0: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ +0022f9f0: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
.# CAUTION: T
│ │ │ +0022fa20: 6869 7320 7265 6d65 6469 6174 696f 6e20  his remediation 
│ │ │ +0022fa30: 7363 7269 7074 2077 696c 6c20 7265 6d6f  script will remo
│ │ │ +0022fa40: 7665 2074 656c 6e65 740a 2320 6672 6f6d  ve telnet.# from
│ │ │ +0022fa50: 2074 6865 2073 7973 7465 6d2c 2061 6e64   the system, and
│ │ │ +0022fa60: 206d 6179 2072 656d 6f76 6520 616e 7920   may remove any 
│ │ │ +0022fa70: 7061 636b 6167 6573 0a23 2074 6861 7420  packages.# that 
│ │ │ +0022fa80: 6465 7065 6e64 206f 6e20 7465 6c6e 6574  depend on telnet
│ │ │ +0022fa90: 2e20 4578 6563 7574 6520 7468 6973 0a23  . Execute this.#
│ │ │ +0022faa0: 2072 656d 6564 6961 7469 6f6e 2041 4654   remediation AFT
│ │ │ +0022fab0: 4552 2074 6573 7469 6e67 206f 6e20 6120  ER testing on a 
│ │ │ +0022fac0: 6e6f 6e2d 7072 6f64 7563 7469 6f6e 0a23  non-production.#
│ │ │ +0022fad0: 2073 7973 7465 6d21 0a0a 0a69 6620 7270   system!...if rp
│ │ │ +0022fae0: 6d20 2d71 202d 2d71 7569 6574 2022 7465  m -q --quiet "te
│ │ │ +0022faf0: 6c6e 6574 2220 3b20 7468 656e 0a64 6e66  lnet" ; then.dnf
│ │ │ +0022fb00: 2072 656d 6f76 6520 2d79 202d 2d6e 6f61   remove -y --noa
│ │ │ +0022fb10: 7574 6f72 656d 6f76 6520 2274 656c 6e65  utoremove "telne
│ │ │ +0022fb20: 7422 0a66 690a 3c2f 636f 6465 3e3c 2f70  t".fi.

Remediatio │ │ │ +0022fbe0: 6e20 416e 6163 6f6e 6461 2073 6e69 7070 n Anaconda snipp │ │ │ +0022fbf0: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ +0022fc70: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ +0022fc80: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +0022fc90: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ +0022fcd0: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +0022fce0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ +0022fd00: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ +0022fd10: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
..package
│ │ │ +0022fd30: 202d 2d72 656d 6f76 653d 7465 6c6e 6574   --remove=telnet
│ │ │  0022fd40: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
< │ │ │ 0022fd60: 2f74 723e 3c2f 7462 6f64 793e 3c2f 7461 /tr>Remediation An │ │ │ -002312b0: 6163 6f6e 6461 2073 6e69 7070 6574 20e2 aconda snippet . │ │ │ -002312c0: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ -00231340: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -00231360: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ -002313b0: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ -002313e0: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ -00231350: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ -00231370: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ -002313c0: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ -002313d0: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
..package --r
│ │ │ -00231400: 656d 6f76 653d 7466 7470 2d73 6572 7665  emove=tftp-serve
│ │ │ -00231410: 720a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  r.
< │ │ │ -00231420: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Pu │ │ │ -002314d0: 7070 6574 2073 6e69 7070 6574 20e2 87b2 ppet snippet ... │ │ │ -002314e0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity: │ │ │ -002315b0: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -002315c0: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
.include remove
│ │ │ -00231620: 5f74 6674 702d 7365 7276 6572 0a0a 636c  _tftp-server..cl
│ │ │ -00231630: 6173 7320 7265 6d6f 7665 5f74 6674 702d  ass remove_tftp-
│ │ │ -00231640: 7365 7276 6572 207b 0a20 2070 6163 6b61  server {.  packa
│ │ │ -00231650: 6765 207b 2027 7466 7470 2d73 6572 7665  ge { 'tftp-serve
│ │ │ -00231660: 7227 3a0a 2020 2020 656e 7375 7265 203d  r':.    ensure =
│ │ │ -00231670: 2667 743b 2027 7075 7267 6564 272c 0a20  > 'purged',. 
│ │ │ -00231680: 207d 0a7d 0a3c 2f63 6f64 653e 3c2f 7072   }.}.Remediation
│ │ │ -00231740: 2041 6e73 6962 6c65 2073 6e69 7070 6574   Ansible snippet
│ │ │ -00231750: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976   ...
< │ │ │ -00231810: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -00231820: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c
low
Disru │ │ │ -00231590: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ -002315a0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ -002315e0: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ -002315f0: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
Complexity │ │ │ -002317e0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
D │ │ │ -00231800: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:
Reboot:< │ │ │ -00231830: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>false
S │ │ │ -00231850: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:disable
<
│ │ │ -00231880: 636f 6465 3e2d 206e 616d 653a 2027 556e  code>- name: 'Un
│ │ │ -00231890: 696e 7374 616c 6c20 7466 7470 2d73 6572  install tftp-ser
│ │ │ -002318a0: 7665 7220 5061 636b 6167 653a 2045 6e73  ver Package: Ens
│ │ │ -002318b0: 7572 6520 7466 7470 2d73 6572 7665 7220  ure tftp-server 
│ │ │ -002318c0: 6973 2072 656d 6f76 6564 270a 2020 616e  is removed'.  an
│ │ │ -002318d0: 7369 626c 652e 6275 696c 7469 6e2e 7061  sible.builtin.pa
│ │ │ -002318e0: 636b 6167 653a 0a20 2020 206e 616d 653a  ckage:.    name:
│ │ │ -002318f0: 2074 6674 702d 7365 7276 6572 0a20 2020   tftp-server.   
│ │ │ -00231900: 2073 7461 7465 3a20 6162 7365 6e74 0a20   state: absent. 
│ │ │ -00231910: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ -00231920: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ -00231930: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -00231940: 4d2d 3728 6129 0a20 202d 204e 4953 542d  M-7(a).  - NIST-
│ │ │ -00231950: 3830 302d 3533 2d43 4d2d 3728 6229 0a20  800-53-CM-7(b). 
│ │ │ -00231960: 202d 2050 4349 2d44 5353 7634 2d32 2e32   - PCI-DSSv4-2.2
│ │ │ -00231970: 0a20 202d 2050 4349 2d44 5353 7634 2d32  .  - PCI-DSSv4-2
│ │ │ -00231980: 2e32 2e34 0a20 202d 2064 6973 6162 6c65  .2.4.  - disable
│ │ │ -00231990: 5f73 7472 6174 6567 790a 2020 2d20 6869  _strategy.  - hi
│ │ │ -002319a0: 6768 5f73 6576 6572 6974 790a 2020 2d20  gh_severity.  - 
│ │ │ -002319b0: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ -002319c0: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ -002319d0: 6e0a 2020 2d20 6e6f 5f72 6562 6f6f 745f  n.  - no_reboot_
│ │ │ -002319e0: 6e65 6564 6564 0a20 202d 2070 6163 6b61  needed.  - packa
│ │ │ -002319f0: 6765 5f74 6674 702d 7365 7276 6572 5f72  ge_tftp-server_r
│ │ │ -00231a00: 656d 6f76 6564 0a3c 2f63 6f64 653e 3c2f  emoved.
Remediati │ │ │ -00231ac0: 6f6e 2053 6865 6c6c 2073 6372 6970 7420 on Shell script │ │ │ -00231ad0: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
Complexity: │ │ │ -00231b60: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ -00231b80: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:low< │ │ │ -00231ba0: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:falseSt │ │ │ -00231bd0: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ -00231be0: 6469 7361 626c 653c 2f74 643e 3c2f 7472 disable
.# CAUTION: 
│ │ │ -00231c10: 5468 6973 2072 656d 6564 6961 7469 6f6e  This remediation
│ │ │ -00231c20: 2073 6372 6970 7420 7769 6c6c 2072 656d   script will rem
│ │ │ -00231c30: 6f76 6520 7466 7470 2d73 6572 7665 720a  ove tftp-server.
│ │ │ -00231c40: 2320 6672 6f6d 2074 6865 2073 7973 7465  # from the syste
│ │ │ -00231c50: 6d2c 2061 6e64 206d 6179 2072 656d 6f76  m, and may remov
│ │ │ -00231c60: 6520 616e 7920 7061 636b 6167 6573 0a23  e any packages.#
│ │ │ -00231c70: 2074 6861 7420 6465 7065 6e64 206f 6e20   that depend on 
│ │ │ -00231c80: 7466 7470 2d73 6572 7665 722e 2045 7865  tftp-server. Exe
│ │ │ -00231c90: 6375 7465 2074 6869 730a 2320 7265 6d65  cute this.# reme
│ │ │ -00231ca0: 6469 6174 696f 6e20 4146 5445 5220 7465  diation AFTER te
│ │ │ -00231cb0: 7374 696e 6720 6f6e 2061 206e 6f6e 2d70  sting on a non-p
│ │ │ -00231cc0: 726f 6475 6374 696f 6e0a 2320 7379 7374  roduction.# syst
│ │ │ -00231cd0: 656d 210a 0a0a 6966 2072 706d 202d 7120  em!...if rpm -q 
│ │ │ -00231ce0: 2d2d 7175 6965 7420 2274 6674 702d 7365  --quiet "tftp-se
│ │ │ -00231cf0: 7276 6572 2220 3b20 7468 656e 0a64 6e66  rver" ; then.dnf
│ │ │ -00231d00: 2072 656d 6f76 6520 2d79 202d 2d6e 6f61   remove -y --noa
│ │ │ -00231d10: 7574 6f72 656d 6f76 6520 2274 6674 702d  utoremove "tftp-
│ │ │ -00231d20: 7365 7276 6572 220a 6669 0a3c 2f63 6f64  server".fi.
< │ │ │ +00231340: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ +00231360: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ +002313b0: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>< │ │ │ +002313e0: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
- name: 'Unins
│ │ │ +00231400: 7461 6c6c 2074 6674 702d 7365 7276 6572  tall tftp-server
│ │ │ +00231410: 2050 6163 6b61 6765 3a20 456e 7375 7265   Package: Ensure
│ │ │ +00231420: 2074 6674 702d 7365 7276 6572 2069 7320   tftp-server is 
│ │ │ +00231430: 7265 6d6f 7665 6427 0a20 2061 6e73 6962  removed'.  ansib
│ │ │ +00231440: 6c65 2e62 7569 6c74 696e 2e70 6163 6b61  le.builtin.packa
│ │ │ +00231450: 6765 3a0a 2020 2020 6e61 6d65 3a20 7466  ge:.    name: tf
│ │ │ +00231460: 7470 2d73 6572 7665 720a 2020 2020 7374  tp-server.    st
│ │ │ +00231470: 6174 653a 2061 6273 656e 740a 2020 7461  ate: absent.  ta
│ │ │ +00231480: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030  gs:.  - NIST-800
│ │ │ +00231490: 2d35 332d 434d 2d36 2861 290a 2020 2d20  -53-CM-6(a).  - 
│ │ │ +002314a0: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ +002314b0: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ +002314c0: 2d35 332d 434d 2d37 2862 290a 2020 2d20  -53-CM-7(b).  - 
│ │ │ +002314d0: 5043 492d 4453 5376 342d 322e 320a 2020  PCI-DSSv4-2.2.  
│ │ │ +002314e0: 2d20 5043 492d 4453 5376 342d 322e 322e  - PCI-DSSv4-2.2.
│ │ │ +002314f0: 340a 2020 2d20 6469 7361 626c 655f 7374  4.  - disable_st
│ │ │ +00231500: 7261 7465 6779 0a20 202d 2068 6967 685f  rategy.  - high_
│ │ │ +00231510: 7365 7665 7269 7479 0a20 202d 206c 6f77  severity.  - low
│ │ │ +00231520: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +00231530: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ +00231540: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ +00231550: 6465 640a 2020 2d20 7061 636b 6167 655f  ded.  - package_
│ │ │ +00231560: 7466 7470 2d73 6572 7665 725f 7265 6d6f  tftp-server_remo
│ │ │ +00231570: 7665 640a 3c2f 636f 6465 3e3c 2f70 7265  ved.
Remediation │ │ │ +00231630: 5075 7070 6574 2073 6e69 7070 6574 20e2 Puppet snippet . │ │ │ +00231640: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
low
Disr │ │ │ +00231370: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +00231380: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ +002313c0: 7465 6779 3a3c 2f74 683e 3c74 643e 6469 tegy:di │ │ │ +002313d0: 7361 626c 653c 2f74 643e 3c2f 7472 3e3c sable
│ │ │ +002316c0: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +002316e0: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ +00231730: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ +00231760: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ +002316d0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +002316f0: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ +00231740: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ +00231750: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
.include remo
│ │ │ +00231780: 7665 5f74 6674 702d 7365 7276 6572 0a0a  ve_tftp-server..
│ │ │ +00231790: 636c 6173 7320 7265 6d6f 7665 5f74 6674  class remove_tft
│ │ │ +002317a0: 702d 7365 7276 6572 207b 0a20 2070 6163  p-server {.  pac
│ │ │ +002317b0: 6b61 6765 207b 2027 7466 7470 2d73 6572  kage { 'tftp-ser
│ │ │ +002317c0: 7665 7227 3a0a 2020 2020 656e 7375 7265  ver':.    ensure
│ │ │ +002317d0: 203d 2667 743b 2027 7075 7267 6564 272c   => 'purged',
│ │ │ +002317e0: 0a20 207d 0a7d 0a3c 2f63 6f64 653e 3c2f  .  }.}.
Remediati │ │ │ +002318a0: 6f6e 2053 6865 6c6c 2073 6372 6970 7420 on Shell script │ │ │ +002318b0: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
Complexity: │ │ │ +00231940: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ +00231960: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:low< │ │ │ +00231980: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:falseSt │ │ │ +002319b0: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ +002319c0: 6469 7361 626c 653c 2f74 643e 3c2f 7472 disable
.# CAUTION: 
│ │ │ +002319f0: 5468 6973 2072 656d 6564 6961 7469 6f6e  This remediation
│ │ │ +00231a00: 2073 6372 6970 7420 7769 6c6c 2072 656d   script will rem
│ │ │ +00231a10: 6f76 6520 7466 7470 2d73 6572 7665 720a  ove tftp-server.
│ │ │ +00231a20: 2320 6672 6f6d 2074 6865 2073 7973 7465  # from the syste
│ │ │ +00231a30: 6d2c 2061 6e64 206d 6179 2072 656d 6f76  m, and may remov
│ │ │ +00231a40: 6520 616e 7920 7061 636b 6167 6573 0a23  e any packages.#
│ │ │ +00231a50: 2074 6861 7420 6465 7065 6e64 206f 6e20   that depend on 
│ │ │ +00231a60: 7466 7470 2d73 6572 7665 722e 2045 7865  tftp-server. Exe
│ │ │ +00231a70: 6375 7465 2074 6869 730a 2320 7265 6d65  cute this.# reme
│ │ │ +00231a80: 6469 6174 696f 6e20 4146 5445 5220 7465  diation AFTER te
│ │ │ +00231a90: 7374 696e 6720 6f6e 2061 206e 6f6e 2d70  sting on a non-p
│ │ │ +00231aa0: 726f 6475 6374 696f 6e0a 2320 7379 7374  roduction.# syst
│ │ │ +00231ab0: 656d 210a 0a0a 6966 2072 706d 202d 7120  em!...if rpm -q 
│ │ │ +00231ac0: 2d2d 7175 6965 7420 2274 6674 702d 7365  --quiet "tftp-se
│ │ │ +00231ad0: 7276 6572 2220 3b20 7468 656e 0a64 6e66  rver" ; then.dnf
│ │ │ +00231ae0: 2072 656d 6f76 6520 2d79 202d 2d6e 6f61   remove -y --noa
│ │ │ +00231af0: 7574 6f72 656d 6f76 6520 2274 6674 702d  utoremove "tftp-
│ │ │ +00231b00: 7365 7276 6572 220a 6669 0a3c 2f63 6f64  server".fi.
Remed │ │ │ +00231bc0: 6961 7469 6f6e 2041 6e61 636f 6e64 6120 iation Anaconda │ │ │ +00231bd0: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ +00231be0: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Com │ │ │ +00231c60: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ +00231c90: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ +00231cb0: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +00231cc0: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ +00231ce0: 2f74 683e 3c74 643e 6469 7361 626c 653c /th>disable< │ │ │ +00231cf0: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
..pa
│ │ │ +00231d10: 636b 6167 6520 2d2d 7265 6d6f 7665 3d74  ckage --remove=t
│ │ │ +00231d20: 6674 702d 7365 7276 6572 0a3c 2f63 6f64  ftp-server.
Remediati │ │ │ -00232540: 6f6e 2041 6e61 636f 6e64 6120 736e 6970 on Anaconda snip │ │ │ -00232550: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ -00232560: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -00232570: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -00232580: 7365 2220 6964 3d22 6964 3732 3122 3e3c se" id="id721">< │ │ │ -00232590: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ -002325a0: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ -002325b0: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ -002325c0: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ -002325d0: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Complex │ │ │ -002325e0: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ -002325f0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Disruption:lowReboo │ │ │ -00232630: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -00232640: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ -00232660: 3c74 643e 6469 7361 626c 653c 2f74 643e disable │ │ │ -00232670: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072 ..packag │ │ │ -00232690: 6520 2d2d 7265 6d6f 7665 3d72 7379 6e63 e --remove=rsync │ │ │ -002326a0: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f .
Remediation Pup │ │ │ -00232760: 7065 7420 736e 6970 7065 7420 e287 b23c pet snippet ...< │ │ │ -00232770: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
< │ │ │ -00232840: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -00232850: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

│ │ │ -002328a0: 0a69 6e63 6c75 6465 2072 656d 6f76 655f  .include remove_
│ │ │ -002328b0: 7273 796e 630a 0a63 6c61 7373 2072 656d  rsync..class rem
│ │ │ -002328c0: 6f76 655f 7273 796e 6320 7b0a 2020 7061  ove_rsync {.  pa
│ │ │ -002328d0: 636b 6167 6520 7b20 2772 7379 6e63 273a  ckage { 'rsync':
│ │ │ -002328e0: 0a20 2020 2065 6e73 7572 6520 3d26 6774  .    ensure =>
│ │ │ -002328f0: 3b20 2770 7572 6765 6427 2c0a 2020 7d0a  ; 'purged',.  }.
│ │ │ -00232900: 7d0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  }.
< │ │ │ -00232910: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation An │ │ │ -002329c0: 7369 626c 6520 736e 6970 7065 7420 e287 sible snippet .. │ │ │ -002329d0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
Complexity:low
Disrup │ │ │ -00232820: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -00232830: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -00232870: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ -00232880: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
< │ │ │ -00232a50: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -00232a70: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -00232ac0: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>< │ │ │ -00232af0: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
- name: 'Unins
│ │ │ -00232b10: 7461 6c6c 2072 7379 6e63 2050 6163 6b61  tall rsync Packa
│ │ │ -00232b20: 6765 3a20 456e 7375 7265 2072 7379 6e63  ge: Ensure rsync
│ │ │ -00232b30: 2069 7320 7265 6d6f 7665 6427 0a20 2061   is removed'.  a
│ │ │ -00232b40: 6e73 6962 6c65 2e62 7569 6c74 696e 2e70  nsible.builtin.p
│ │ │ -00232b50: 6163 6b61 6765 3a0a 2020 2020 6e61 6d65  ackage:.    name
│ │ │ -00232b60: 3a20 7273 796e 630a 2020 2020 7374 6174  : rsync.    stat
│ │ │ -00232b70: 653a 2061 6273 656e 740a 2020 7461 6773  e: absent.  tags
│ │ │ -00232b80: 3a0a 2020 2d20 6469 7361 626c 655f 7374  :.  - disable_st
│ │ │ -00232b90: 7261 7465 6779 0a20 202d 206c 6f77 5f63  rategy.  - low_c
│ │ │ -00232ba0: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f  omplexity.  - lo
│ │ │ -00232bb0: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ -00232bc0: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ -00232bd0: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ -00232be0: 6565 6465 640a 2020 2d20 7061 636b 6167  eeded.  - packag
│ │ │ -00232bf0: 655f 7273 796e 635f 7265 6d6f 7665 640a  e_rsync_removed.
│ │ │ -00232c00: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ -00232cb0: 5265 6d65 6469 6174 696f 6e20 5368 656c Remediation Shel │ │ │ -00232cc0: 6c20 7363 7269 7074 20e2 87b2 3c2f 613e l script ... │ │ │ -00232cd0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low
Disr │ │ │ -00232a80: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -00232a90: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ -00232ad0: 7465 6779 3a3c 2f74 683e 3c74 643e 6469 tegy:di │ │ │ -00232ae0: 7361 626c 653c 2f74 643e 3c2f 7472 3e3c sable
low< │ │ │ -00232d70: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ -00232dc0: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
.# 
│ │ │ -00232e00: 4341 5554 494f 4e3a 2054 6869 7320 7265  CAUTION: This re
│ │ │ -00232e10: 6d65 6469 6174 696f 6e20 7363 7269 7074  mediation script
│ │ │ -00232e20: 2077 696c 6c20 7265 6d6f 7665 2072 7379   will remove rsy
│ │ │ -00232e30: 6e63 0a23 2066 726f 6d20 7468 6520 7379  nc.# from the sy
│ │ │ -00232e40: 7374 656d 2c20 616e 6420 6d61 7920 7265  stem, and may re
│ │ │ -00232e50: 6d6f 7665 2061 6e79 2070 6163 6b61 6765  move any package
│ │ │ -00232e60: 730a 2320 7468 6174 2064 6570 656e 6420  s.# that depend 
│ │ │ -00232e70: 6f6e 2072 7379 6e63 2e20 4578 6563 7574  on rsync. Execut
│ │ │ -00232e80: 6520 7468 6973 0a23 2072 656d 6564 6961  e this.# remedia
│ │ │ -00232e90: 7469 6f6e 2041 4654 4552 2074 6573 7469  tion AFTER testi
│ │ │ -00232ea0: 6e67 206f 6e20 6120 6e6f 6e2d 7072 6f64  ng on a non-prod
│ │ │ -00232eb0: 7563 7469 6f6e 0a23 2073 7973 7465 6d21  uction.# system!
│ │ │ -00232ec0: 0a0a 0a69 6620 7270 6d20 2d71 202d 2d71  ...if rpm -q --q
│ │ │ -00232ed0: 7569 6574 2022 7273 796e 6322 203b 2074  uiet "rsync" ; t
│ │ │ -00232ee0: 6865 6e0a 646e 6620 7265 6d6f 7665 202d  hen.dnf remove -
│ │ │ -00232ef0: 7920 2d2d 6e6f 6175 746f 7265 6d6f 7665  y --noautoremove
│ │ │ -00232f00: 2022 7273 796e 6322 0a66 690a 3c2f 636f   "rsync".fi.
│ │ │ +002325d0: 3c74 723e 3c74 683e 436f 6d70 6c65 7869
< │ │ │ +00232660: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ +00232670: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
Co │ │ │ -00232d50: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -00232d80: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ -00232da0: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ -00232db0: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ -00232dd0: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ -00232de0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Complexi │ │ │ +002325e0: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +002325f0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Disruption:low
Reboot │ │ │ +00232630: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +00232640: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Strategy:
- name: '
│ │ │ +00232690: 556e 696e 7374 616c 6c20 7273 796e 6320  Uninstall rsync 
│ │ │ +002326a0: 5061 636b 6167 653a 2045 6e73 7572 6520  Package: Ensure 
│ │ │ +002326b0: 7273 796e 6320 6973 2072 656d 6f76 6564  rsync is removed
│ │ │ +002326c0: 270a 2020 616e 7369 626c 652e 6275 696c  '.  ansible.buil
│ │ │ +002326d0: 7469 6e2e 7061 636b 6167 653a 0a20 2020  tin.package:.   
│ │ │ +002326e0: 206e 616d 653a 2072 7379 6e63 0a20 2020   name: rsync.   
│ │ │ +002326f0: 2073 7461 7465 3a20 6162 7365 6e74 0a20   state: absent. 
│ │ │ +00232700: 2074 6167 733a 0a20 202d 2064 6973 6162   tags:.  - disab
│ │ │ +00232710: 6c65 5f73 7472 6174 6567 790a 2020 2d20  le_strategy.  - 
│ │ │ +00232720: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ +00232730: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ +00232740: 6e0a 2020 2d20 6d65 6469 756d 5f73 6576  n.  - medium_sev
│ │ │ +00232750: 6572 6974 790a 2020 2d20 6e6f 5f72 6562  erity.  - no_reb
│ │ │ +00232760: 6f6f 745f 6e65 6564 6564 0a20 202d 2070  oot_needed.  - p
│ │ │ +00232770: 6163 6b61 6765 5f72 7379 6e63 5f72 656d  ackage_rsync_rem
│ │ │ +00232780: 6f76 6564 0a3c 2f63 6f64 653e 3c2f 7072  oved.
Remediation │ │ │ +00232840: 2050 7570 7065 7420 736e 6970 7065 7420 Puppet snippet │ │ │ +00232850: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
Complexity: │ │ │ +002328e0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ +00232900: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:low< │ │ │ +00232920: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:falseSt │ │ │ +00232950: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ +00232960: 6469 7361 626c 653c 2f74 643e 3c2f 7472 disable
.include rem
│ │ │ +00232990: 6f76 655f 7273 796e 630a 0a63 6c61 7373  ove_rsync..class
│ │ │ +002329a0: 2072 656d 6f76 655f 7273 796e 6320 7b0a   remove_rsync {.
│ │ │ +002329b0: 2020 7061 636b 6167 6520 7b20 2772 7379    package { 'rsy
│ │ │ +002329c0: 6e63 273a 0a20 2020 2065 6e73 7572 6520  nc':.    ensure 
│ │ │ +002329d0: 3d26 6774 3b20 2770 7572 6765 6427 2c0a  => 'purged',.
│ │ │ +002329e0: 2020 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70    }.}.

Remediatio │ │ │ +00232aa0: 6e20 5368 656c 6c20 7363 7269 7074 20e2 n Shell script . │ │ │ +00232ab0: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ +00232b30: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +00232b50: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ +00232ba0: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ +00232bd0: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ +00232b40: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +00232b60: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ +00232bb0: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ +00232bc0: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
.# CAUTION: T
│ │ │ +00232bf0: 6869 7320 7265 6d65 6469 6174 696f 6e20  his remediation 
│ │ │ +00232c00: 7363 7269 7074 2077 696c 6c20 7265 6d6f  script will remo
│ │ │ +00232c10: 7665 2072 7379 6e63 0a23 2066 726f 6d20  ve rsync.# from 
│ │ │ +00232c20: 7468 6520 7379 7374 656d 2c20 616e 6420  the system, and 
│ │ │ +00232c30: 6d61 7920 7265 6d6f 7665 2061 6e79 2070  may remove any p
│ │ │ +00232c40: 6163 6b61 6765 730a 2320 7468 6174 2064  ackages.# that d
│ │ │ +00232c50: 6570 656e 6420 6f6e 2072 7379 6e63 2e20  epend on rsync. 
│ │ │ +00232c60: 4578 6563 7574 6520 7468 6973 0a23 2072  Execute this.# r
│ │ │ +00232c70: 656d 6564 6961 7469 6f6e 2041 4654 4552  emediation AFTER
│ │ │ +00232c80: 2074 6573 7469 6e67 206f 6e20 6120 6e6f   testing on a no
│ │ │ +00232c90: 6e2d 7072 6f64 7563 7469 6f6e 0a23 2073  n-production.# s
│ │ │ +00232ca0: 7973 7465 6d21 0a0a 0a69 6620 7270 6d20  ystem!...if rpm 
│ │ │ +00232cb0: 2d71 202d 2d71 7569 6574 2022 7273 796e  -q --quiet "rsyn
│ │ │ +00232cc0: 6322 203b 2074 6865 6e0a 646e 6620 7265  c" ; then.dnf re
│ │ │ +00232cd0: 6d6f 7665 202d 7920 2d2d 6e6f 6175 746f  move -y --noauto
│ │ │ +00232ce0: 7265 6d6f 7665 2022 7273 796e 6322 0a66  remove "rsync".f
│ │ │ +00232cf0: 690a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  i.
< │ │ │ +00232d00: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation An │ │ │ +00232db0: 6163 6f6e 6461 2073 6e69 7070 6574 20e2 aconda snippet . │ │ │ +00232dc0: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ +00232e40: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +00232e60: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ +00232eb0: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ +00232ee0: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ +00232e50: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +00232e70: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ +00232ec0: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ +00232ed0: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
..package --r
│ │ │ +00232f00: 656d 6f76 653d 7273 796e 630a 3c2f 636f  emove=rsync.
< │ │ │ 00232f20: 2f64 6976 3e3c 2f74 643e 3c2f 7472 3e3c /div>< │ │ │ 00232f30: 2f74 626f 6479 3e3c 2f74 6162 6c65 3e3c /tbody>< │ │ │ 00232f40: 2f74 643e 3c2f 7472 3e3c 7472 2064 6174 /td>Remediation Ana │ │ │ -00234180: 636f 6e64 6120 736e 6970 7065 7420 e287 conda snippet .. │ │ │ -00234190: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ -00234210: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -00234230: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -00234280: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>< │ │ │ -002342b0: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
..package --re
│ │ │ -002342d0: 6d6f 7665 3d63 7570 730a 3c2f 636f 6465  move=cups.
Remedi │ │ │ -00234390: 6174 696f 6e20 5075 7070 6574 2073 6e69 ation Puppet sni │ │ │ -002343a0: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -002343b0: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -002343e0: 3c74 6162 6c65 2063 6c61 7373 3d22 7461
low
Disr │ │ │ -00234240: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -00234250: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ -00234290: 7465 6779 3a3c 2f74 683e 3c74 643e 6469 tegy:di │ │ │ -002342a0: 7361 626c 653c 2f74 643e 3c2f 7472 3e3c sable
< │ │ │ -00234450: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ -00234470: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ -002344a0: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
Comple │ │ │ -00234430: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ -00234440: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ -00234480: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ -00234490: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
disable

.includ │ │ │ -002344e0: 6520 7265 6d6f 7665 5f63 7570 730a 0a63 e remove_cups..c │ │ │ -002344f0: 6c61 7373 2072 656d 6f76 655f 6375 7073 lass remove_cups │ │ │ -00234500: 207b 0a20 2070 6163 6b61 6765 207b 2027 {. package { ' │ │ │ -00234510: 6375 7073 273a 0a20 2020 2065 6e73 7572 cups':. ensur │ │ │ -00234520: 6520 3d26 6774 3b20 2770 7572 6765 6427 e => 'purged' │ │ │ -00234530: 2c0a 2020 7d0a 7d0a 3c2f 636f 6465 3e3c ,. }.}.< │ │ │ -00234540: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c /pre>

Remediat │ │ │ -002345f0: 696f 6e20 416e 7369 626c 6520 736e 6970 ion Ansible snip │ │ │ -00234600: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ -00234610: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -00234620: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -00234630: 7365 2220 6964 3d22 6964 3732 3822 3e3c se" id="id728">< │ │ │ -00234640: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ -00234650: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ -00234660: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ -00234670: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ -00234680: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Complex │ │ │ -00234690: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ -002346a0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Disruption:lowReboo │ │ │ -002346e0: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -002346f0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ -00234710: 3c74 643e 6469 7361 626c 653c 2f74 643e disable │ │ │ -00234720: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072 - name: │ │ │ -00234740: 2755 6e69 6e73 7461 6c6c 2043 5550 5320 'Uninstall CUPS │ │ │ -00234750: 5061 636b 6167 653a 2045 6e73 7572 6520 Package: Ensure │ │ │ -00234760: 6375 7073 2069 7320 7265 6d6f 7665 6427 cups is removed' │ │ │ -00234770: 0a20 2061 6e73 6962 6c65 2e62 7569 6c74 . ansible.built │ │ │ -00234780: 696e 2e70 6163 6b61 6765 3a0a 2020 2020 in.package:. │ │ │ -00234790: 6e61 6d65 3a20 6375 7073 0a20 2020 2073 name: cups. s │ │ │ -002347a0: 7461 7465 3a20 6162 7365 6e74 0a20 2074 tate: absent. t │ │ │ -002347b0: 6167 733a 0a20 202d 204e 4953 542d 3830 ags:. - NIST-80 │ │ │ -002347c0: 302d 3533 2d43 4d2d 3628 6129 0a20 202d 0-53-CM-6(a). - │ │ │ -002347d0: 204e 4953 542d 3830 302d 3533 2d43 4d2d NIST-800-53-CM- │ │ │ -002347e0: 3728 6129 0a20 202d 204e 4953 542d 3830 7(a). - NIST-80 │ │ │ -002347f0: 302d 3533 2d43 4d2d 3728 6229 0a20 202d 0-53-CM-7(b). - │ │ │ -00234800: 2064 6973 6162 6c65 5f73 7472 6174 6567 disable_strateg │ │ │ -00234810: 790a 2020 2d20 6c6f 775f 636f 6d70 6c65 y. - low_comple │ │ │ -00234820: 7869 7479 0a20 202d 206c 6f77 5f64 6973 xity. - low_dis │ │ │ -00234830: 7275 7074 696f 6e0a 2020 2d20 6e6f 5f72 ruption. - no_r │ │ │ -00234840: 6562 6f6f 745f 6e65 6564 6564 0a20 202d eboot_needed. - │ │ │ -00234850: 2070 6163 6b61 6765 5f63 7570 735f 7265 package_cups_re │ │ │ -00234860: 6d6f 7665 640a 2020 2d20 756e 6b6e 6f77 moved. - unknow │ │ │ -00234870: 6e5f 7365 7665 7269 7479 0a3c 2f63 6f64 n_severity.
Remed │ │ │ -00234930: 6961 7469 6f6e 2053 6865 6c6c 2073 6372 iation Shell scr │ │ │ -00234940: 6970 7420 e287 b23c 2f61 3e3c 6272 3e3c ipt ...
< │ │ │ -00234950: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -00234960: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -00234970: 7365 2220 6964 3d22 6964 3732 3922 3e3c se" id="id729">< │ │ │ -00234980: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ -00234990: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ -002349a0: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ -002349b0: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ -002349c0: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Complex │ │ │ -002349d0: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ -002349e0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Disruption:lowReboo │ │ │ -00234a20: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -00234a30: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ -00234a50: 3c74 643e 6469 7361 626c 653c 2f74 643e disable │ │ │ -00234a60: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072 .# CAUTI │ │ │ -00234a80: 4f4e 3a20 5468 6973 2072 656d 6564 6961 ON: This remedia │ │ │ -00234a90: 7469 6f6e 2073 6372 6970 7420 7769 6c6c tion script will │ │ │ -00234aa0: 2072 656d 6f76 6520 6375 7073 0a23 2066 remove cups.# f │ │ │ -00234ab0: 726f 6d20 7468 6520 7379 7374 656d 2c20 rom the system, │ │ │ -00234ac0: 616e 6420 6d61 7920 7265 6d6f 7665 2061 and may remove a │ │ │ -00234ad0: 6e79 2070 6163 6b61 6765 730a 2320 7468 ny packages.# th │ │ │ -00234ae0: 6174 2064 6570 656e 6420 6f6e 2063 7570 at depend on cup │ │ │ -00234af0: 732e 2045 7865 6375 7465 2074 6869 730a s. Execute this. │ │ │ -00234b00: 2320 7265 6d65 6469 6174 696f 6e20 4146 # remediation AF │ │ │ -00234b10: 5445 5220 7465 7374 696e 6720 6f6e 2061 TER testing on a │ │ │ -00234b20: 206e 6f6e 2d70 726f 6475 6374 696f 6e0a non-production. │ │ │ -00234b30: 2320 7379 7374 656d 210a 0a0a 6966 2072 # system!...if r │ │ │ -00234b40: 706d 202d 7120 2d2d 7175 6965 7420 2263 pm -q --quiet "c │ │ │ -00234b50: 7570 7322 203b 2074 6865 6e0a 646e 6620 ups" ; then.dnf │ │ │ -00234b60: 7265 6d6f 7665 202d 7920 2d2d 6e6f 6175 remove -y --noau │ │ │ -00234b70: 746f 7265 6d6f 7665 2022 6375 7073 220a toremove "cups". │ │ │ -00234b80: 6669 0a3c 2f63 6f64 653e 3c2f 7072 653e fi. │ │ │ +00234170: 3e52 656d 6564 6961 7469 6f6e 2041 6e73 >Remediation Ans │ │ │ +00234180: 6962 6c65 2073 6e69 7070 6574 20e2 87b2 ible snippet ... │ │ │ +00234190: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity: │ │ │ +00234260: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +00234270: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
- name: 'Uninst
│ │ │ +002342d0: 616c 6c20 4355 5053 2050 6163 6b61 6765  all CUPS Package
│ │ │ +002342e0: 3a20 456e 7375 7265 2063 7570 7320 6973  : Ensure cups is
│ │ │ +002342f0: 2072 656d 6f76 6564 270a 2020 616e 7369   removed'.  ansi
│ │ │ +00234300: 626c 652e 6275 696c 7469 6e2e 7061 636b  ble.builtin.pack
│ │ │ +00234310: 6167 653a 0a20 2020 206e 616d 653a 2063  age:.    name: c
│ │ │ +00234320: 7570 730a 2020 2020 7374 6174 653a 2061  ups.    state: a
│ │ │ +00234330: 6273 656e 740a 2020 7461 6773 3a0a 2020  bsent.  tags:.  
│ │ │ +00234340: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +00234350: 2d36 2861 290a 2020 2d20 4e49 5354 2d38  -6(a).  - NIST-8
│ │ │ +00234360: 3030 2d35 332d 434d 2d37 2861 290a 2020  00-53-CM-7(a).  
│ │ │ +00234370: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +00234380: 2d37 2862 290a 2020 2d20 6469 7361 626c  -7(b).  - disabl
│ │ │ +00234390: 655f 7374 7261 7465 6779 0a20 202d 206c  e_strategy.  - l
│ │ │ +002343a0: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ +002343b0: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ +002343c0: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ +002343d0: 6565 6465 640a 2020 2d20 7061 636b 6167  eeded.  - packag
│ │ │ +002343e0: 655f 6375 7073 5f72 656d 6f76 6564 0a20  e_cups_removed. 
│ │ │ +002343f0: 202d 2075 6e6b 6e6f 776e 5f73 6576 6572   - unknown_sever
│ │ │ +00234400: 6974 790a 3c2f 636f 6465 3e3c 2f70 7265  ity.
Remediation │ │ │ +002344c0: 5075 7070 6574 2073 6e69 7070 6574 20e2 Puppet snippet . │ │ │ +002344d0: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
low
Disru │ │ │ +00234240: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +00234250: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +00234290: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ +002342a0: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
│ │ │ +00234550: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +00234570: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ +002345c0: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ +002345f0: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ +00234560: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +00234580: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ +002345d0: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ +002345e0: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
.include remo
│ │ │ +00234610: 7665 5f63 7570 730a 0a63 6c61 7373 2072  ve_cups..class r
│ │ │ +00234620: 656d 6f76 655f 6375 7073 207b 0a20 2070  emove_cups {.  p
│ │ │ +00234630: 6163 6b61 6765 207b 2027 6375 7073 273a  ackage { 'cups':
│ │ │ +00234640: 0a20 2020 2065 6e73 7572 6520 3d26 6774  .    ensure =>
│ │ │ +00234650: 3b20 2770 7572 6765 6427 2c0a 2020 7d0a  ; 'purged',.  }.
│ │ │ +00234660: 7d0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  }.
< │ │ │ +00234670: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Sh │ │ │ +00234720: 656c 6c20 7363 7269 7074 20e2 87b2 3c2f ell script ...
│ │ │ +002347c0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
.
│ │ │ +00234860: 2320 4341 5554 494f 4e3a 2054 6869 7320  # CAUTION: This 
│ │ │ +00234870: 7265 6d65 6469 6174 696f 6e20 7363 7269  remediation scri
│ │ │ +00234880: 7074 2077 696c 6c20 7265 6d6f 7665 2063  pt will remove c
│ │ │ +00234890: 7570 730a 2320 6672 6f6d 2074 6865 2073  ups.# from the s
│ │ │ +002348a0: 7973 7465 6d2c 2061 6e64 206d 6179 2072  ystem, and may r
│ │ │ +002348b0: 656d 6f76 6520 616e 7920 7061 636b 6167  emove any packag
│ │ │ +002348c0: 6573 0a23 2074 6861 7420 6465 7065 6e64  es.# that depend
│ │ │ +002348d0: 206f 6e20 6375 7073 2e20 4578 6563 7574   on cups. Execut
│ │ │ +002348e0: 6520 7468 6973 0a23 2072 656d 6564 6961  e this.# remedia
│ │ │ +002348f0: 7469 6f6e 2041 4654 4552 2074 6573 7469  tion AFTER testi
│ │ │ +00234900: 6e67 206f 6e20 6120 6e6f 6e2d 7072 6f64  ng on a non-prod
│ │ │ +00234910: 7563 7469 6f6e 0a23 2073 7973 7465 6d21  uction.# system!
│ │ │ +00234920: 0a0a 0a69 6620 7270 6d20 2d71 202d 2d71  ...if rpm -q --q
│ │ │ +00234930: 7569 6574 2022 6375 7073 2220 3b20 7468  uiet "cups" ; th
│ │ │ +00234940: 656e 0a64 6e66 2072 656d 6f76 6520 2d79  en.dnf remove -y
│ │ │ +00234950: 202d 2d6e 6f61 7574 6f72 656d 6f76 6520   --noautoremove 
│ │ │ +00234960: 2263 7570 7322 0a66 690a 3c2f 636f 6465  "cups".fi.
Remedi │ │ │ +00234a20: 6174 696f 6e20 416e 6163 6f6e 6461 2073 ation Anaconda s │ │ │ +00234a30: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
│ │ │ +002347b0: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +002347e0: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +002347f0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +00234830: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ +00234840: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Comp │ │ │ +00234ac0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +00234ad0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ +00234af0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ +00234b10: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +00234b20: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ +00234b60: 3c70 7265 3e3c 636f 6465 3e0a 0a70 6163
..pac
│ │ │ +00234b70: 6b61 6765 202d 2d72 656d 6f76 653d 6375  kage --remove=cu
│ │ │ +00234b80: 7073 0a3c 2f63 6f64 653e 3c2f 7072 653e  ps.
│ │ │ 00234b90: 3c2f 6469 763e 3c2f 6469 763e 3c2f 7464
│ │ │ 00234bc0: 3c74 7220 6461 7461 2d74 742d 6964 3d22 Remediatio │ │ │ -00235c10: 6e20 416e 6163 6f6e 6461 2073 6e69 7070 n Anaconda snipp │ │ │ -00235c20: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ -00235ca0: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ -00235cb0: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -00235cc0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ -00235d00: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -00235d10: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ -00235d30: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ -00235d40: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
..package
│ │ │ -00235d60: 202d 2d72 656d 6f76 653d 7371 7569 640a   --remove=squid.
│ │ │ -00235d70: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ -00235e20: 5265 6d65 6469 6174 696f 6e20 5075 7070 Remediation Pupp │ │ │ -00235e30: 6574 2073 6e69 7070 6574 20e2 87b2 3c2f et snippet ...
│ │ │ -00235ed0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
.
│ │ │ -00235f70: 696e 636c 7564 6520 7265 6d6f 7665 5f73  include remove_s
│ │ │ -00235f80: 7175 6964 0a0a 636c 6173 7320 7265 6d6f  quid..class remo
│ │ │ -00235f90: 7665 5f73 7175 6964 207b 0a20 2070 6163  ve_squid {.  pac
│ │ │ -00235fa0: 6b61 6765 207b 2027 7371 7569 6427 3a0a  kage { 'squid':.
│ │ │ -00235fb0: 2020 2020 656e 7375 7265 203d 2667 743b      ensure =>
│ │ │ -00235fc0: 2027 7075 7267 6564 272c 0a20 207d 0a7d   'purged',.  }.}
│ │ │ -00235fd0: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation Ans │ │ │ -00236090: 6962 6c65 2073 6e69 7070 6574 20e2 87b2 ible snippet ... │ │ │ -002360a0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
│ │ │ -00235ec0: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -00235ef0: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -00235f00: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -00235f40: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ -00235f50: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Complexity: │ │ │ -00236170: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -00236180: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
- name: 'Uninst
│ │ │ -002361e0: 616c 6c20 7371 7569 6420 5061 636b 6167  all squid Packag
│ │ │ -002361f0: 653a 2045 6e73 7572 6520 7371 7569 6420  e: Ensure squid 
│ │ │ -00236200: 6973 2072 656d 6f76 6564 270a 2020 616e  is removed'.  an
│ │ │ -00236210: 7369 626c 652e 6275 696c 7469 6e2e 7061  sible.builtin.pa
│ │ │ -00236220: 636b 6167 653a 0a20 2020 206e 616d 653a  ckage:.    name:
│ │ │ -00236230: 2073 7175 6964 0a20 2020 2073 7461 7465   squid.    state
│ │ │ -00236240: 3a20 6162 7365 6e74 0a20 2074 6167 733a  : absent.  tags:
│ │ │ -00236250: 0a20 202d 2064 6973 6162 6c65 5f73 7472  .  - disable_str
│ │ │ -00236260: 6174 6567 790a 2020 2d20 6c6f 775f 636f  ategy.  - low_co
│ │ │ -00236270: 6d70 6c65 7869 7479 0a20 202d 206c 6f77  mplexity.  - low
│ │ │ -00236280: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ -00236290: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ -002362a0: 0a20 202d 2070 6163 6b61 6765 5f73 7175  .  - package_squ
│ │ │ -002362b0: 6964 5f72 656d 6f76 6564 0a20 202d 2075  id_removed.  - u
│ │ │ -002362c0: 6e6b 6e6f 776e 5f73 6576 6572 6974 790a  nknown_severity.
│ │ │ -002362d0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ -00236380: 5265 6d65 6469 6174 696f 6e20 5368 656c Remediation Shel │ │ │ -00236390: 6c20 7363 7269 7074 20e2 87b2 3c2f 613e l script ... │ │ │ -002363a0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low
Disru │ │ │ -00236150: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ -00236160: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ -002361a0: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ -002361b0: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
low< │ │ │ -00236440: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ -00236490: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
.# 
│ │ │ -002364d0: 4341 5554 494f 4e3a 2054 6869 7320 7265  CAUTION: This re
│ │ │ -002364e0: 6d65 6469 6174 696f 6e20 7363 7269 7074  mediation script
│ │ │ -002364f0: 2077 696c 6c20 7265 6d6f 7665 2073 7175   will remove squ
│ │ │ -00236500: 6964 0a23 2066 726f 6d20 7468 6520 7379  id.# from the sy
│ │ │ -00236510: 7374 656d 2c20 616e 6420 6d61 7920 7265  stem, and may re
│ │ │ -00236520: 6d6f 7665 2061 6e79 2070 6163 6b61 6765  move any package
│ │ │ -00236530: 730a 2320 7468 6174 2064 6570 656e 6420  s.# that depend 
│ │ │ -00236540: 6f6e 2073 7175 6964 2e20 4578 6563 7574  on squid. Execut
│ │ │ -00236550: 6520 7468 6973 0a23 2072 656d 6564 6961  e this.# remedia
│ │ │ -00236560: 7469 6f6e 2041 4654 4552 2074 6573 7469  tion AFTER testi
│ │ │ -00236570: 6e67 206f 6e20 6120 6e6f 6e2d 7072 6f64  ng on a non-prod
│ │ │ -00236580: 7563 7469 6f6e 0a23 2073 7973 7465 6d21  uction.# system!
│ │ │ -00236590: 0a0a 0a69 6620 7270 6d20 2d71 202d 2d71  ...if rpm -q --q
│ │ │ -002365a0: 7569 6574 2022 7371 7569 6422 203b 2074  uiet "squid" ; t
│ │ │ -002365b0: 6865 6e0a 646e 6620 7265 6d6f 7665 202d  hen.dnf remove -
│ │ │ -002365c0: 7920 2d2d 6e6f 6175 746f 7265 6d6f 7665  y --noautoremove
│ │ │ -002365d0: 2022 7371 7569 6422 0a66 690a 3c2f 636f   "squid".fi.
< │ │ │ +00235ca0: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>
│ │ │ +00235ce0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 disable
Co │ │ │ -00236420: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -00236450: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ -00236470: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ -00236480: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ -002364a0: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ -002364b0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Complexit │ │ │ +00235cb0: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low
│ │ │ +00235cd0: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption:low
Reboot: │ │ │ +00235d00: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false
│ │ │ +00235d20: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:
│ │ │ +00235d50: 3c63 6f64 653e 2d20 6e61 6d65 3a20 2755  - name: 'U
│ │ │ +00235d60: 6e69 6e73 7461 6c6c 2073 7175 6964 2050  ninstall squid P
│ │ │ +00235d70: 6163 6b61 6765 3a20 456e 7375 7265 2073  ackage: Ensure s
│ │ │ +00235d80: 7175 6964 2069 7320 7265 6d6f 7665 6427  quid is removed'
│ │ │ +00235d90: 0a20 2061 6e73 6962 6c65 2e62 7569 6c74  .  ansible.built
│ │ │ +00235da0: 696e 2e70 6163 6b61 6765 3a0a 2020 2020  in.package:.    
│ │ │ +00235db0: 6e61 6d65 3a20 7371 7569 640a 2020 2020  name: squid.    
│ │ │ +00235dc0: 7374 6174 653a 2061 6273 656e 740a 2020  state: absent.  
│ │ │ +00235dd0: 7461 6773 3a0a 2020 2d20 6469 7361 626c  tags:.  - disabl
│ │ │ +00235de0: 655f 7374 7261 7465 6779 0a20 202d 206c  e_strategy.  - l
│ │ │ +00235df0: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ +00235e00: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ +00235e10: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ +00235e20: 6565 6465 640a 2020 2d20 7061 636b 6167  eeded.  - packag
│ │ │ +00235e30: 655f 7371 7569 645f 7265 6d6f 7665 640a  e_squid_removed.
│ │ │ +00235e40: 2020 2d20 756e 6b6e 6f77 6e5f 7365 7665    - unknown_seve
│ │ │ +00235e50: 7269 7479 0a3c 2f63 6f64 653e 3c2f 7072  rity.
Remediation │ │ │ +00235f10: 2050 7570 7065 7420 736e 6970 7065 7420 Puppet snippet │ │ │ +00235f20: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
Complexity: │ │ │ +00235fb0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ +00235fd0: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:low< │ │ │ +00235ff0: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:falseSt │ │ │ +00236020: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ +00236030: 6469 7361 626c 653c 2f74 643e 3c2f 7472 disable
.include rem
│ │ │ +00236060: 6f76 655f 7371 7569 640a 0a63 6c61 7373  ove_squid..class
│ │ │ +00236070: 2072 656d 6f76 655f 7371 7569 6420 7b0a   remove_squid {.
│ │ │ +00236080: 2020 7061 636b 6167 6520 7b20 2773 7175    package { 'squ
│ │ │ +00236090: 6964 273a 0a20 2020 2065 6e73 7572 6520  id':.    ensure 
│ │ │ +002360a0: 3d26 6774 3b20 2770 7572 6765 6427 2c0a  => 'purged',.
│ │ │ +002360b0: 2020 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70    }.}.

Remediatio │ │ │ +00236170: 6e20 5368 656c 6c20 7363 7269 7074 20e2 n Shell script . │ │ │ +00236180: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ +00236200: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +00236220: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ +00236270: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ +002362a0: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ +00236210: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +00236230: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ +00236280: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ +00236290: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
.# CAUTION: T
│ │ │ +002362c0: 6869 7320 7265 6d65 6469 6174 696f 6e20  his remediation 
│ │ │ +002362d0: 7363 7269 7074 2077 696c 6c20 7265 6d6f  script will remo
│ │ │ +002362e0: 7665 2073 7175 6964 0a23 2066 726f 6d20  ve squid.# from 
│ │ │ +002362f0: 7468 6520 7379 7374 656d 2c20 616e 6420  the system, and 
│ │ │ +00236300: 6d61 7920 7265 6d6f 7665 2061 6e79 2070  may remove any p
│ │ │ +00236310: 6163 6b61 6765 730a 2320 7468 6174 2064  ackages.# that d
│ │ │ +00236320: 6570 656e 6420 6f6e 2073 7175 6964 2e20  epend on squid. 
│ │ │ +00236330: 4578 6563 7574 6520 7468 6973 0a23 2072  Execute this.# r
│ │ │ +00236340: 656d 6564 6961 7469 6f6e 2041 4654 4552  emediation AFTER
│ │ │ +00236350: 2074 6573 7469 6e67 206f 6e20 6120 6e6f   testing on a no
│ │ │ +00236360: 6e2d 7072 6f64 7563 7469 6f6e 0a23 2073  n-production.# s
│ │ │ +00236370: 7973 7465 6d21 0a0a 0a69 6620 7270 6d20  ystem!...if rpm 
│ │ │ +00236380: 2d71 202d 2d71 7569 6574 2022 7371 7569  -q --quiet "squi
│ │ │ +00236390: 6422 203b 2074 6865 6e0a 646e 6620 7265  d" ; then.dnf re
│ │ │ +002363a0: 6d6f 7665 202d 7920 2d2d 6e6f 6175 746f  move -y --noauto
│ │ │ +002363b0: 7265 6d6f 7665 2022 7371 7569 6422 0a66  remove "squid".f
│ │ │ +002363c0: 690a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  i.
< │ │ │ +002363d0: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation An │ │ │ +00236480: 6163 6f6e 6461 2073 6e69 7070 6574 20e2 aconda snippet . │ │ │ +00236490: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ +00236510: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +00236530: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ +00236580: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ +002365b0: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ +00236520: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +00236540: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ +00236590: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ +002365a0: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
..package --r
│ │ │ +002365d0: 656d 6f76 653d 7371 7569 640a 3c2f 636f  emove=squid.
< │ │ │ 002365f0: 2f64 6976 3e3c 2f74 643e 3c2f 7472 3e3c /div>< │ │ │ 00236600: 2f74 626f 6479 3e3c 2f74 6162 6c65 3e3c /tbody>< │ │ │ 00236610: 2f74 643e 3c2f 7472 3e3c 7472 2064 6174 /td>Remediation Ana │ │ │ -00237720: 636f 6e64 6120 736e 6970 7065 7420 e287 conda snippet .. │ │ │ -00237730: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ -002377b0: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -002377d0: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -00237820: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>< │ │ │ -00237850: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
..package --re
│ │ │ -00237870: 6d6f 7665 3d73 616d 6261 0a3c 2f63 6f64  move=samba.
Remed │ │ │ -00237930: 6961 7469 6f6e 2050 7570 7065 7420 736e iation Puppet sn │ │ │ -00237940: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
low
Disr │ │ │ -002377e0: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -002377f0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ -00237830: 7465 6779 3a3c 2f74 683e 3c74 643e 6469 tegy:di │ │ │ -00237840: 7361 626c 653c 2f74 643e 3c2f 7472 3e3c sable
│ │ │ -002379f0: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ -00237a10: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ -00237a40: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ -002379d0: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ -002379e0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ -00237a00: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ -00237a20: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -00237a30: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:disable
< │ │ │ -00237a70: 7072 653e 3c63 6f64 653e 0a69 6e63 6c75 pre>.inclu │ │ │ -00237a80: 6465 2072 656d 6f76 655f 7361 6d62 610a de remove_samba. │ │ │ -00237a90: 0a63 6c61 7373 2072 656d 6f76 655f 7361 .class remove_sa │ │ │ -00237aa0: 6d62 6120 7b0a 2020 7061 636b 6167 6520 mba {. package │ │ │ -00237ab0: 7b20 2773 616d 6261 273a 0a20 2020 2065 { 'samba':. e │ │ │ -00237ac0: 6e73 7572 6520 3d26 6774 3b20 2770 7572 nsure => 'pur │ │ │ -00237ad0: 6765 6427 2c0a 2020 7d0a 7d0a 3c2f 636f ged',. }.}.
< │ │ │ -00237af0: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ -00237b00: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ -00237b10: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ -00237b20: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ -00237b30: 6437 3338 2220 7461 6269 6e64 6578 3d22 d738" tabindex=" │ │ │ -00237b40: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ -00237b50: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ -00237b60: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ -00237b70: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ -00237b80: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ -00237b90: 6469 6174 696f 6e20 416e 7369 626c 6520 diation Ansible │ │ │ -00237ba0: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ -00237bb0: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Com │ │ │ -00237c30: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ -00237c60: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ -00237c80: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -00237c90: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -00237cb0: 2f74 683e 3c74 643e 6469 7361 626c 653c /th>disable< │ │ │ -00237cc0: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
- na
│ │ │ -00237ce0: 6d65 3a20 2755 6e69 6e73 7461 6c6c 2053  me: 'Uninstall S
│ │ │ -00237cf0: 616d 6261 2050 6163 6b61 6765 3a20 456e  amba Package: En
│ │ │ -00237d00: 7375 7265 2073 616d 6261 2069 7320 7265  sure samba is re
│ │ │ -00237d10: 6d6f 7665 6427 0a20 2061 6e73 6962 6c65  moved'.  ansible
│ │ │ -00237d20: 2e62 7569 6c74 696e 2e70 6163 6b61 6765  .builtin.package
│ │ │ -00237d30: 3a0a 2020 2020 6e61 6d65 3a20 7361 6d62  :.    name: samb
│ │ │ -00237d40: 610a 2020 2020 7374 6174 653a 2061 6273  a.    state: abs
│ │ │ -00237d50: 656e 740a 2020 7461 6773 3a0a 2020 2d20  ent.  tags:.  - 
│ │ │ -00237d60: 6469 7361 626c 655f 7374 7261 7465 6779  disable_strategy
│ │ │ -00237d70: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ -00237d80: 6974 790a 2020 2d20 6c6f 775f 6469 7372  ity.  - low_disr
│ │ │ -00237d90: 7570 7469 6f6e 0a20 202d 206e 6f5f 7265  uption.  - no_re
│ │ │ -00237da0: 626f 6f74 5f6e 6565 6465 640a 2020 2d20  boot_needed.  - 
│ │ │ -00237db0: 7061 636b 6167 655f 7361 6d62 615f 7265  package_samba_re
│ │ │ -00237dc0: 6d6f 7665 640a 2020 2d20 756e 6b6e 6f77  moved.  - unknow
│ │ │ -00237dd0: 6e5f 7365 7665 7269 7479 0a3c 2f63 6f64  n_severity.
Remed │ │ │ -00237e90: 6961 7469 6f6e 2053 6865 6c6c 2073 6372 iation Shell scr │ │ │ -00237ea0: 6970 7420 e287 b23c 2f61 3e3c 6272 3e3c ipt ...
< │ │ │ -00237eb0: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -00237ec0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -00237ed0: 7365 2220 6964 3d22 6964 3733 3922 3e3c se" id="id739">< │ │ │ -00237ee0: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ -00237ef0: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ -00237f00: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ -00237f10: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ -00237f20: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Complex │ │ │ -00237f30: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ -00237f40: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Disruption:lowReboo │ │ │ -00237f80: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -00237f90: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ -00237fb0: 3c74 643e 6469 7361 626c 653c 2f74 643e disable │ │ │ -00237fc0: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072 .# CAUTI │ │ │ -00237fe0: 4f4e 3a20 5468 6973 2072 656d 6564 6961 ON: This remedia │ │ │ -00237ff0: 7469 6f6e 2073 6372 6970 7420 7769 6c6c tion script will │ │ │ -00238000: 2072 656d 6f76 6520 7361 6d62 610a 2320 remove samba.# │ │ │ -00238010: 6672 6f6d 2074 6865 2073 7973 7465 6d2c from the system, │ │ │ -00238020: 2061 6e64 206d 6179 2072 656d 6f76 6520 and may remove │ │ │ -00238030: 616e 7920 7061 636b 6167 6573 0a23 2074 any packages.# t │ │ │ -00238040: 6861 7420 6465 7065 6e64 206f 6e20 7361 hat depend on sa │ │ │ -00238050: 6d62 612e 2045 7865 6375 7465 2074 6869 mba. Execute thi │ │ │ -00238060: 730a 2320 7265 6d65 6469 6174 696f 6e20 s.# remediation │ │ │ -00238070: 4146 5445 5220 7465 7374 696e 6720 6f6e AFTER testing on │ │ │ -00238080: 2061 206e 6f6e 2d70 726f 6475 6374 696f a non-productio │ │ │ -00238090: 6e0a 2320 7379 7374 656d 210a 0a0a 6966 n.# system!...if │ │ │ -002380a0: 2072 706d 202d 7120 2d2d 7175 6965 7420 rpm -q --quiet │ │ │ -002380b0: 2273 616d 6261 2220 3b20 7468 656e 0a64 "samba" ; then.d │ │ │ -002380c0: 6e66 2072 656d 6f76 6520 2d79 202d 2d6e nf remove -y --n │ │ │ -002380d0: 6f61 7574 6f72 656d 6f76 6520 2273 616d oautoremove "sam │ │ │ -002380e0: 6261 220a 6669 0a3c 2f63 6f64 653e 3c2f ba".fi.Remediation Ans │ │ │ +00237720: 6962 6c65 2073 6e69 7070 6574 20e2 87b2 ible snippet ... │ │ │ +00237730: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity: │ │ │ +00237800: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +00237810: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
- name: 'Uninst
│ │ │ +00237870: 616c 6c20 5361 6d62 6120 5061 636b 6167  all Samba Packag
│ │ │ +00237880: 653a 2045 6e73 7572 6520 7361 6d62 6120  e: Ensure samba 
│ │ │ +00237890: 6973 2072 656d 6f76 6564 270a 2020 616e  is removed'.  an
│ │ │ +002378a0: 7369 626c 652e 6275 696c 7469 6e2e 7061  sible.builtin.pa
│ │ │ +002378b0: 636b 6167 653a 0a20 2020 206e 616d 653a  ckage:.    name:
│ │ │ +002378c0: 2073 616d 6261 0a20 2020 2073 7461 7465   samba.    state
│ │ │ +002378d0: 3a20 6162 7365 6e74 0a20 2074 6167 733a  : absent.  tags:
│ │ │ +002378e0: 0a20 202d 2064 6973 6162 6c65 5f73 7472  .  - disable_str
│ │ │ +002378f0: 6174 6567 790a 2020 2d20 6c6f 775f 636f  ategy.  - low_co
│ │ │ +00237900: 6d70 6c65 7869 7479 0a20 202d 206c 6f77  mplexity.  - low
│ │ │ +00237910: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +00237920: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ +00237930: 0a20 202d 2070 6163 6b61 6765 5f73 616d  .  - package_sam
│ │ │ +00237940: 6261 5f72 656d 6f76 6564 0a20 202d 2075  ba_removed.  - u
│ │ │ +00237950: 6e6b 6e6f 776e 5f73 6576 6572 6974 790a  nknown_severity.
│ │ │ +00237960: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ +00237a10: 5265 6d65 6469 6174 696f 6e20 5075 7070 Remediation Pupp │ │ │ +00237a20: 6574 2073 6e69 7070 6574 20e2 87b2 3c2f et snippet ...
low
Disru │ │ │ +002377e0: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +002377f0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +00237830: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ +00237840: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
│ │ │ +00237ac0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
.
│ │ │ +00237b60: 696e 636c 7564 6520 7265 6d6f 7665 5f73  include remove_s
│ │ │ +00237b70: 616d 6261 0a0a 636c 6173 7320 7265 6d6f  amba..class remo
│ │ │ +00237b80: 7665 5f73 616d 6261 207b 0a20 2070 6163  ve_samba {.  pac
│ │ │ +00237b90: 6b61 6765 207b 2027 7361 6d62 6127 3a0a  kage { 'samba':.
│ │ │ +00237ba0: 2020 2020 656e 7375 7265 203d 2667 743b      ensure =>
│ │ │ +00237bb0: 2027 7075 7267 6564 272c 0a20 207d 0a7d   'purged',.  }.}
│ │ │ +00237bc0: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation She │ │ │ +00237c80: 6c6c 2073 6372 6970 7420 e287 b23c 2f61 ll script ...
│ │ │ +00237ab0: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +00237ae0: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +00237af0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +00237b30: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ +00237b40: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
< │ │ │ +00237d20: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +00237d30: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ +00237d80: 3c74 723e 3c74 683e 5374 7261 7465 6779
.#
│ │ │ +00237dc0: 2043 4155 5449 4f4e 3a20 5468 6973 2072   CAUTION: This r
│ │ │ +00237dd0: 656d 6564 6961 7469 6f6e 2073 6372 6970  emediation scrip
│ │ │ +00237de0: 7420 7769 6c6c 2072 656d 6f76 6520 7361  t will remove sa
│ │ │ +00237df0: 6d62 610a 2320 6672 6f6d 2074 6865 2073  mba.# from the s
│ │ │ +00237e00: 7973 7465 6d2c 2061 6e64 206d 6179 2072  ystem, and may r
│ │ │ +00237e10: 656d 6f76 6520 616e 7920 7061 636b 6167  emove any packag
│ │ │ +00237e20: 6573 0a23 2074 6861 7420 6465 7065 6e64  es.# that depend
│ │ │ +00237e30: 206f 6e20 7361 6d62 612e 2045 7865 6375   on samba. Execu
│ │ │ +00237e40: 7465 2074 6869 730a 2320 7265 6d65 6469  te this.# remedi
│ │ │ +00237e50: 6174 696f 6e20 4146 5445 5220 7465 7374  ation AFTER test
│ │ │ +00237e60: 696e 6720 6f6e 2061 206e 6f6e 2d70 726f  ing on a non-pro
│ │ │ +00237e70: 6475 6374 696f 6e0a 2320 7379 7374 656d  duction.# system
│ │ │ +00237e80: 210a 0a0a 6966 2072 706d 202d 7120 2d2d  !...if rpm -q --
│ │ │ +00237e90: 7175 6965 7420 2273 616d 6261 2220 3b20  quiet "samba" ; 
│ │ │ +00237ea0: 7468 656e 0a64 6e66 2072 656d 6f76 6520  then.dnf remove 
│ │ │ +00237eb0: 2d79 202d 2d6e 6f61 7574 6f72 656d 6f76  -y --noautoremov
│ │ │ +00237ec0: 6520 2273 616d 6261 220a 6669 0a3c 2f63  e "samba".fi.
│ │ │ +00237ee0: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ +00237f80: 6564 6961 7469 6f6e 2041 6e61 636f 6e64 ediation Anacond │ │ │ +00237f90: 6120 736e 6970 7065 7420 e287 b23c 2f61 a snippet ...
C │ │ │ +00237d10: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ +00237d40: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ +00237d50: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ +00237d90: 3a3c 2f74 683e 3c74 643e 6469 7361 626c :disabl │ │ │ +00237da0: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
< │ │ │ +00238030: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +00238040: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ +00238090: 3c74 723e 3c74 683e 5374 7261 7465 6779
..
│ │ │ +002380d0: 7061 636b 6167 6520 2d2d 7265 6d6f 7665  package --remove
│ │ │ +002380e0: 3d73 616d 6261 0a3c 2f63 6f64 653e 3c2f  =samba.
│ │ │  00238100: 3c2f 7464 3e3c 2f74 723e 3c2f 7462 6f64  
C │ │ │ +00238020: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ +00238050: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ +00238060: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ +002380a0: 3a3c 2f74 683e 3c74 643e 6469 7361 626c :disabl │ │ │ +002380b0: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
< │ │ │ 00238120: 2f74 723e 3c74 7220 6461 7461 2d74 742d /tr>Rem │ │ │ -00239200: 6564 6961 7469 6f6e 2041 6e61 636f 6e64 ediation Anacond │ │ │ -00239210: 6120 736e 6970 7065 7420 e287 b23c 2f61 a snippet ...
< │ │ │ -002392b0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -002392c0: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ -00239310: 3c74 723e 3c74 683e 5374 7261 7465 6779
..
│ │ │ -00239350: 7061 636b 6167 6520 2d2d 7265 6d6f 7665  package --remove
│ │ │ -00239360: 3d6e 6574 2d73 6e6d 700a 3c2f 636f 6465  =net-snmp.
Remedi │ │ │ -00239420: 6174 696f 6e20 5075 7070 6574 2073 6e69 ation Puppet sni │ │ │ -00239430: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -00239440: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -00239470: 3c74 6162 6c65 2063 6c61 7373 3d22 7461
C │ │ │ -002392a0: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -002392d0: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ -002392e0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -00239320: 3a3c 2f74 683e 3c74 643e 6469 7361 626c :disabl │ │ │ -00239330: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
< │ │ │ -002394e0: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ -00239500: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ -00239530: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
Comple │ │ │ -002394c0: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ -002394d0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ -00239510: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ -00239520: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
disable

.includ │ │ │ -00239570: 6520 7265 6d6f 7665 5f6e 6574 2d73 6e6d e remove_net-snm │ │ │ -00239580: 700a 0a63 6c61 7373 2072 656d 6f76 655f p..class remove_ │ │ │ -00239590: 6e65 742d 736e 6d70 207b 0a20 2070 6163 net-snmp {. pac │ │ │ -002395a0: 6b61 6765 207b 2027 6e65 742d 736e 6d70 kage { 'net-snmp │ │ │ -002395b0: 273a 0a20 2020 2065 6e73 7572 6520 3d26 ':. ensure =& │ │ │ -002395c0: 6774 3b20 2770 7572 6765 6427 2c0a 2020 gt; 'purged',. │ │ │ -002395d0: 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70 7265 }.}.

Remediation │ │ │ -00239690: 416e 7369 626c 6520 736e 6970 7065 7420 Ansible snippet │ │ │ -002396a0: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
Complexity: │ │ │ -00239730: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ -00239750: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:low< │ │ │ -00239770: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:falseSt │ │ │ -002397a0: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ -002397b0: 6469 7361 626c 653c 2f74 643e 3c2f 7472 disable
- name: 'Uni
│ │ │ -002397e0: 6e73 7461 6c6c 206e 6574 2d73 6e6d 7020  nstall net-snmp 
│ │ │ -002397f0: 5061 636b 6167 653a 2045 6e73 7572 6520  Package: Ensure 
│ │ │ -00239800: 6e65 742d 736e 6d70 2069 7320 7265 6d6f  net-snmp is remo
│ │ │ -00239810: 7665 6427 0a20 2061 6e73 6962 6c65 2e62  ved'.  ansible.b
│ │ │ -00239820: 7569 6c74 696e 2e70 6163 6b61 6765 3a0a  uiltin.package:.
│ │ │ -00239830: 2020 2020 6e61 6d65 3a20 6e65 742d 736e      name: net-sn
│ │ │ -00239840: 6d70 0a20 2020 2073 7461 7465 3a20 6162  mp.    state: ab
│ │ │ -00239850: 7365 6e74 0a20 2074 6167 733a 0a20 202d  sent.  tags:.  -
│ │ │ -00239860: 2050 4349 2d44 5353 7634 2d32 2e32 0a20   PCI-DSSv4-2.2. 
│ │ │ -00239870: 202d 2050 4349 2d44 5353 7634 2d32 2e32   - PCI-DSSv4-2.2
│ │ │ -00239880: 2e34 0a20 202d 2064 6973 6162 6c65 5f73  .4.  - disable_s
│ │ │ -00239890: 7472 6174 6567 790a 2020 2d20 6c6f 775f  trategy.  - low_
│ │ │ -002398a0: 636f 6d70 6c65 7869 7479 0a20 202d 206c  complexity.  - l
│ │ │ -002398b0: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ -002398c0: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ -002398d0: 6564 0a20 202d 2070 6163 6b61 6765 5f6e  ed.  - package_n
│ │ │ -002398e0: 6574 2d73 6e6d 705f 7265 6d6f 7665 640a  et-snmp_removed.
│ │ │ -002398f0: 2020 2d20 756e 6b6e 6f77 6e5f 7365 7665    - unknown_seve
│ │ │ -00239900: 7269 7479 0a3c 2f63 6f64 653e 3c2f 7072  rity.
Remediation │ │ │ -002399c0: 2053 6865 6c6c 2073 6372 6970 7420 e287 Shell script .. │ │ │ -002399d0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ -00239a50: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -00239a70: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -00239ac0: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>< │ │ │ -00239af0: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
.# CAUTION: Th
│ │ │ -00239b10: 6973 2072 656d 6564 6961 7469 6f6e 2073  is remediation s
│ │ │ -00239b20: 6372 6970 7420 7769 6c6c 2072 656d 6f76  cript will remov
│ │ │ -00239b30: 6520 6e65 742d 736e 6d70 0a23 2066 726f  e net-snmp.# fro
│ │ │ -00239b40: 6d20 7468 6520 7379 7374 656d 2c20 616e  m the system, an
│ │ │ -00239b50: 6420 6d61 7920 7265 6d6f 7665 2061 6e79  d may remove any
│ │ │ -00239b60: 2070 6163 6b61 6765 730a 2320 7468 6174   packages.# that
│ │ │ -00239b70: 2064 6570 656e 6420 6f6e 206e 6574 2d73   depend on net-s
│ │ │ -00239b80: 6e6d 702e 2045 7865 6375 7465 2074 6869  nmp. Execute thi
│ │ │ -00239b90: 730a 2320 7265 6d65 6469 6174 696f 6e20  s.# remediation 
│ │ │ -00239ba0: 4146 5445 5220 7465 7374 696e 6720 6f6e  AFTER testing on
│ │ │ -00239bb0: 2061 206e 6f6e 2d70 726f 6475 6374 696f   a non-productio
│ │ │ -00239bc0: 6e0a 2320 7379 7374 656d 210a 0a0a 6966  n.# system!...if
│ │ │ -00239bd0: 2072 706d 202d 7120 2d2d 7175 6965 7420   rpm -q --quiet 
│ │ │ -00239be0: 226e 6574 2d73 6e6d 7022 203b 2074 6865  "net-snmp" ; the
│ │ │ -00239bf0: 6e0a 646e 6620 7265 6d6f 7665 202d 7920  n.dnf remove -y 
│ │ │ -00239c00: 2d2d 6e6f 6175 746f 7265 6d6f 7665 2022  --noautoremove "
│ │ │ -00239c10: 6e65 742d 736e 6d70 220a 6669 0a3c 2f63  net-snmp".fi.
│ │ │ +00239220: 3c62 723e 3c64 6976 2063 6c61 7373 3d22  
low
Disr │ │ │ -00239a80: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -00239a90: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ -00239ad0: 7465 6779 3a3c 2f74 683e 3c74 643e 6469 tegy:di │ │ │ -00239ae0: 7361 626c 653c 2f74 643e 3c2f 7472 3e3c sable
low< │ │ │ +002392c0: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ +00239310: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
- n
│ │ │ +00239350: 616d 653a 2027 556e 696e 7374 616c 6c20  ame: 'Uninstall 
│ │ │ +00239360: 6e65 742d 736e 6d70 2050 6163 6b61 6765  net-snmp Package
│ │ │ +00239370: 3a20 456e 7375 7265 206e 6574 2d73 6e6d  : Ensure net-snm
│ │ │ +00239380: 7020 6973 2072 656d 6f76 6564 270a 2020  p is removed'.  
│ │ │ +00239390: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ +002393a0: 7061 636b 6167 653a 0a20 2020 206e 616d  package:.    nam
│ │ │ +002393b0: 653a 206e 6574 2d73 6e6d 700a 2020 2020  e: net-snmp.    
│ │ │ +002393c0: 7374 6174 653a 2061 6273 656e 740a 2020  state: absent.  
│ │ │ +002393d0: 7461 6773 3a0a 2020 2d20 5043 492d 4453  tags:.  - PCI-DS
│ │ │ +002393e0: 5376 342d 322e 320a 2020 2d20 5043 492d  Sv4-2.2.  - PCI-
│ │ │ +002393f0: 4453 5376 342d 322e 322e 340a 2020 2d20  DSSv4-2.2.4.  - 
│ │ │ +00239400: 6469 7361 626c 655f 7374 7261 7465 6779  disable_strategy
│ │ │ +00239410: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ +00239420: 6974 790a 2020 2d20 6c6f 775f 6469 7372  ity.  - low_disr
│ │ │ +00239430: 7570 7469 6f6e 0a20 202d 206e 6f5f 7265  uption.  - no_re
│ │ │ +00239440: 626f 6f74 5f6e 6565 6465 640a 2020 2d20  boot_needed.  - 
│ │ │ +00239450: 7061 636b 6167 655f 6e65 742d 736e 6d70  package_net-snmp
│ │ │ +00239460: 5f72 656d 6f76 6564 0a20 202d 2075 6e6b  _removed.  - unk
│ │ │ +00239470: 6e6f 776e 5f73 6576 6572 6974 790a 3c2f  nown_severity.
Re │ │ │ +00239530: 6d65 6469 6174 696f 6e20 5075 7070 6574 mediation Puppet │ │ │ +00239540: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ +00239550: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
Co │ │ │ +002392a0: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +002392d0: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +002392f0: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +00239300: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +00239320: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ +00239330: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
low< │ │ │ +002395f0: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ +00239640: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
.in
│ │ │ +00239680: 636c 7564 6520 7265 6d6f 7665 5f6e 6574  clude remove_net
│ │ │ +00239690: 2d73 6e6d 700a 0a63 6c61 7373 2072 656d  -snmp..class rem
│ │ │ +002396a0: 6f76 655f 6e65 742d 736e 6d70 207b 0a20  ove_net-snmp {. 
│ │ │ +002396b0: 2070 6163 6b61 6765 207b 2027 6e65 742d   package { 'net-
│ │ │ +002396c0: 736e 6d70 273a 0a20 2020 2065 6e73 7572  snmp':.    ensur
│ │ │ +002396d0: 6520 3d26 6774 3b20 2770 7572 6765 6427  e => 'purged'
│ │ │ +002396e0: 2c0a 2020 7d0a 7d0a 3c2f 636f 6465 3e3c  ,.  }.}.<
│ │ │ +002396f0: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>Remediat
│ │ │ +002397a0: 696f 6e20 5368 656c 6c20 7363 7269 7074  ion Shell script
│ │ │ +002397b0: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976   ...
< │ │ │ +00239870: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +00239880: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c
Co │ │ │ +002395d0: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +00239600: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +00239620: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +00239630: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +00239650: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ +00239660: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Complexity │ │ │ +00239840: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
D │ │ │ +00239860: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:
Reboot:< │ │ │ +00239890: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>false
S │ │ │ +002398b0: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:disable
<
│ │ │ +002398e0: 636f 6465 3e0a 2320 4341 5554 494f 4e3a  code>.# CAUTION:
│ │ │ +002398f0: 2054 6869 7320 7265 6d65 6469 6174 696f   This remediatio
│ │ │ +00239900: 6e20 7363 7269 7074 2077 696c 6c20 7265  n script will re
│ │ │ +00239910: 6d6f 7665 206e 6574 2d73 6e6d 700a 2320  move net-snmp.# 
│ │ │ +00239920: 6672 6f6d 2074 6865 2073 7973 7465 6d2c  from the system,
│ │ │ +00239930: 2061 6e64 206d 6179 2072 656d 6f76 6520   and may remove 
│ │ │ +00239940: 616e 7920 7061 636b 6167 6573 0a23 2074  any packages.# t
│ │ │ +00239950: 6861 7420 6465 7065 6e64 206f 6e20 6e65  hat depend on ne
│ │ │ +00239960: 742d 736e 6d70 2e20 4578 6563 7574 6520  t-snmp. Execute 
│ │ │ +00239970: 7468 6973 0a23 2072 656d 6564 6961 7469  this.# remediati
│ │ │ +00239980: 6f6e 2041 4654 4552 2074 6573 7469 6e67  on AFTER testing
│ │ │ +00239990: 206f 6e20 6120 6e6f 6e2d 7072 6f64 7563   on a non-produc
│ │ │ +002399a0: 7469 6f6e 0a23 2073 7973 7465 6d21 0a0a  tion.# system!..
│ │ │ +002399b0: 0a69 6620 7270 6d20 2d71 202d 2d71 7569  .if rpm -q --qui
│ │ │ +002399c0: 6574 2022 6e65 742d 736e 6d70 2220 3b20  et "net-snmp" ; 
│ │ │ +002399d0: 7468 656e 0a64 6e66 2072 656d 6f76 6520  then.dnf remove 
│ │ │ +002399e0: 2d79 202d 2d6e 6f61 7574 6f72 656d 6f76  -y --noautoremov
│ │ │ +002399f0: 6520 226e 6574 2d73 6e6d 7022 0a66 690a  e "net-snmp".fi.
│ │ │ +00239a00: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ +00239ab0: 5265 6d65 6469 6174 696f 6e20 416e 6163 Remediation Anac │ │ │ +00239ac0: 6f6e 6461 2073 6e69 7070 6574 20e2 87b2 onda snippet ... │ │ │ +00239ad0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity: │ │ │ +00239ba0: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +00239bb0: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
..package --rem
│ │ │ +00239c10: 6f76 653d 6e65 742d 736e 6d70 0a3c 2f63  ove=net-snmp.
│ │ │ 00239c30: 3c2f 6469 763e 3c2f 7464 3e3c 2f74 723e │ │ │ 00239c40: 3c2f 7462 6f64 793e 3c2f 7461 626c 653e
low
Disru │ │ │ +00239b80: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +00239b90: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +00239bd0: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ +00239be0: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
│ │ │ 00239c50: 3c2f 7464 3e3c 2f74 723e 3c74 7220 6461 Rem │ │ │ -0023a460: 6564 6961 7469 6f6e 204f 5342 7569 6c64 ediation OSBuild │ │ │ -0023a470: 2042 6c75 6570 7269 6e74 2073 6e69 7070 Blueprint snipp │ │ │ -0023a480: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...

.[custo │ │ │ -0023a4d0: 6d69 7a61 7469 6f6e 732e 7365 7276 6963 mizations.servic │ │ │ -0023a4e0: 6573 5d0a 6d61 736b 6564 203d 205b 2273 es].masked = ["s │ │ │ -0023a4f0: 6e6d 7064 225d 0a3c 2f63 6f64 653e 3c2f nmpd"].

Remediati │ │ │ -0023a5b0: 6f6e 2050 7570 7065 7420 736e 6970 7065 on Puppet snippe │ │ │ -0023a5c0: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ -0023a640: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ -0023a650: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ -0023a670: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ -0023a680: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ -0023a6a0: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ -0023a6c0: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:enable
<
│ │ │ -0023a6f0: 636f 6465 3e69 6e63 6c75 6465 2064 6973  code>include dis
│ │ │ -0023a700: 6162 6c65 5f73 6e6d 7064 0a0a 636c 6173  able_snmpd..clas
│ │ │ -0023a710: 7320 6469 7361 626c 655f 736e 6d70 6420  s disable_snmpd 
│ │ │ -0023a720: 7b0a 2020 7365 7276 6963 6520 7b27 736e  {.  service {'sn
│ │ │ -0023a730: 6d70 6427 3a0a 2020 2020 656e 6162 6c65  mpd':.    enable
│ │ │ -0023a740: 203d 2667 743b 2066 616c 7365 2c0a 2020   => false,.  
│ │ │ -0023a750: 2020 656e 7375 7265 203d 2667 743b 2027    ensure => '
│ │ │ -0023a760: 7374 6f70 7065 6427 2c0a 2020 7d0a 7d0a  stopped',.  }.}.
│ │ │ -0023a770: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ -0023a820: 5265 6d65 6469 6174 696f 6e20 416e 7369 Remediation Ansi │ │ │ -0023a830: 626c 6520 736e 6970 7065 7420 e287 b23c ble snippet ...< │ │ │ -0023a840: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
< │ │ │ -0023a910: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -0023a920: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

│ │ │ -0023a970: 2d20 6e61 6d65 3a20 4761 7468 6572 2074  - name: Gather t
│ │ │ -0023a980: 6865 2070 6163 6b61 6765 2066 6163 7473  he package facts
│ │ │ -0023a990: 0a20 2070 6163 6b61 6765 5f66 6163 7473  .  package_facts
│ │ │ -0023a9a0: 3a0a 2020 2020 6d61 6e61 6765 723a 2061  :.    manager: a
│ │ │ -0023a9b0: 7574 6f0a 2020 7461 6773 3a0a 2020 2d20  uto.  tags:.  - 
│ │ │ -0023a9c0: 6469 7361 626c 655f 7374 7261 7465 6779  disable_strategy
│ │ │ -0023a9d0: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ -0023a9e0: 6974 790a 2020 2d20 6c6f 775f 6469 7372  ity.  - low_disr
│ │ │ -0023a9f0: 7570 7469 6f6e 0a20 202d 206c 6f77 5f73  uption.  - low_s
│ │ │ -0023aa00: 6576 6572 6974 790a 2020 2d20 6e6f 5f72  everity.  - no_r
│ │ │ -0023aa10: 6562 6f6f 745f 6e65 6564 6564 0a20 202d  eboot_needed.  -
│ │ │ -0023aa20: 2073 6572 7669 6365 5f73 6e6d 7064 5f64   service_snmpd_d
│ │ │ -0023aa30: 6973 6162 6c65 640a 0a2d 206e 616d 653a  isabled..- name:
│ │ │ -0023aa40: 2044 6973 6162 6c65 2073 6e6d 7064 2053   Disable snmpd S
│ │ │ -0023aa50: 6572 7669 6365 202d 2044 6973 6162 6c65  ervice - Disable
│ │ │ -0023aa60: 2073 6572 7669 6365 2073 6e6d 7064 0a20   service snmpd. 
│ │ │ -0023aa70: 2062 6c6f 636b 3a0a 0a20 202d 206e 616d   block:..  - nam
│ │ │ -0023aa80: 653a 2044 6973 6162 6c65 2073 6e6d 7064  e: Disable snmpd
│ │ │ -0023aa90: 2053 6572 7669 6365 202d 2043 6f6c 6c65   Service - Colle
│ │ │ -0023aaa0: 6374 2073 7973 7465 6d64 2053 6572 7669  ct systemd Servi
│ │ │ -0023aab0: 6365 7320 5072 6573 656e 7420 696e 2074  ces Present in t
│ │ │ -0023aac0: 6865 2053 7973 7465 6d0a 2020 2020 616e  he System.    an
│ │ │ -0023aad0: 7369 626c 652e 6275 696c 7469 6e2e 636f  sible.builtin.co
│ │ │ -0023aae0: 6d6d 616e 643a 2073 7973 7465 6d63 746c  mmand: systemctl
│ │ │ -0023aaf0: 202d 7120 6c69 7374 2d75 6e69 742d 6669   -q list-unit-fi
│ │ │ -0023ab00: 6c65 7320 2d2d 7479 7065 2073 6572 7669  les --type servi
│ │ │ -0023ab10: 6365 0a20 2020 2072 6567 6973 7465 723a  ce.    register:
│ │ │ -0023ab20: 2073 6572 7669 6365 5f65 7869 7374 730a   service_exists.
│ │ │ -0023ab30: 2020 2020 6368 616e 6765 645f 7768 656e      changed_when
│ │ │ -0023ab40: 3a20 6661 6c73 650a 2020 2020 6661 696c  : false.    fail
│ │ │ -0023ab50: 6564 5f77 6865 6e3a 2073 6572 7669 6365  ed_when: service
│ │ │ -0023ab60: 5f65 7869 7374 732e 7263 206e 6f74 2069  _exists.rc not i
│ │ │ -0023ab70: 6e20 5b30 2c20 315d 0a20 2020 2063 6865  n [0, 1].    che
│ │ │ -0023ab80: 636b 5f6d 6f64 653a 2066 616c 7365 0a0a  ck_mode: false..
│ │ │ -0023ab90: 2020 2d20 6e61 6d65 3a20 4469 7361 626c    - name: Disabl
│ │ │ -0023aba0: 6520 736e 6d70 6420 5365 7276 6963 6520  e snmpd Service 
│ │ │ -0023abb0: 2d20 456e 7375 7265 2073 6e6d 7064 2e73  - Ensure snmpd.s
│ │ │ -0023abc0: 6572 7669 6365 2069 7320 4d61 736b 6564  ervice is Masked
│ │ │ -0023abd0: 0a20 2020 2061 6e73 6962 6c65 2e62 7569  .    ansible.bui
│ │ │ -0023abe0: 6c74 696e 2e73 7973 7465 6d64 3a0a 2020  ltin.systemd:.  
│ │ │ -0023abf0: 2020 2020 6e61 6d65 3a20 736e 6d70 642e      name: snmpd.
│ │ │ -0023ac00: 7365 7276 6963 650a 2020 2020 2020 7374  service.      st
│ │ │ -0023ac10: 6174 653a 2073 746f 7070 6564 0a20 2020  ate: stopped.   
│ │ │ -0023ac20: 2020 2065 6e61 626c 6564 3a20 6661 6c73     enabled: fals
│ │ │ -0023ac30: 650a 2020 2020 2020 6d61 736b 6564 3a20  e.      masked: 
│ │ │ -0023ac40: 7472 7565 0a20 2020 2077 6865 6e3a 2073  true.    when: s
│ │ │ -0023ac50: 6572 7669 6365 5f65 7869 7374 732e 7374  ervice_exists.st
│ │ │ -0023ac60: 646f 7574 5f6c 696e 6573 2069 7320 7365  dout_lines is se
│ │ │ -0023ac70: 6172 6368 2822 736e 6d70 642e 7365 7276  arch("snmpd.serv
│ │ │ -0023ac80: 6963 6522 2c20 6d75 6c74 696c 696e 653d  ice", multiline=
│ │ │ -0023ac90: 5472 7565 290a 0a20 202d 206e 616d 653a  True)..  - name:
│ │ │ -0023aca0: 2055 6e69 7420 536f 636b 6574 2045 7869   Unit Socket Exi
│ │ │ -0023acb0: 7374 7320 2d20 736e 6d70 642e 736f 636b  sts - snmpd.sock
│ │ │ -0023acc0: 6574 0a20 2020 2061 6e73 6962 6c65 2e62  et.    ansible.b
│ │ │ -0023acd0: 7569 6c74 696e 2e63 6f6d 6d61 6e64 3a20  uiltin.command: 
│ │ │ -0023ace0: 7379 7374 656d 6374 6c20 2d71 206c 6973  systemctl -q lis
│ │ │ -0023acf0: 742d 756e 6974 2d66 696c 6573 2073 6e6d  t-unit-files snm
│ │ │ -0023ad00: 7064 2e73 6f63 6b65 740a 2020 2020 7265  pd.socket.    re
│ │ │ -0023ad10: 6769 7374 6572 3a20 736f 636b 6574 5f66  gister: socket_f
│ │ │ -0023ad20: 696c 655f 6578 6973 7473 0a20 2020 2063  ile_exists.    c
│ │ │ -0023ad30: 6861 6e67 6564 5f77 6865 6e3a 2066 616c  hanged_when: fal
│ │ │ -0023ad40: 7365 0a20 2020 2066 6169 6c65 645f 7768  se.    failed_wh
│ │ │ -0023ad50: 656e 3a20 736f 636b 6574 5f66 696c 655f  en: socket_file_
│ │ │ -0023ad60: 6578 6973 7473 2e72 6320 6e6f 7420 696e  exists.rc not in
│ │ │ -0023ad70: 205b 302c 2031 5d0a 2020 2020 6368 6563   [0, 1].    chec
│ │ │ -0023ad80: 6b5f 6d6f 6465 3a20 6661 6c73 650a 0a20  k_mode: false.. 
│ │ │ -0023ad90: 202d 206e 616d 653a 2044 6973 6162 6c65   - name: Disable
│ │ │ -0023ada0: 2073 6e6d 7064 2053 6572 7669 6365 202d   snmpd Service -
│ │ │ -0023adb0: 2044 6973 6162 6c65 2053 6f63 6b65 7420   Disable Socket 
│ │ │ -0023adc0: 736e 6d70 640a 2020 2020 616e 7369 626c  snmpd.    ansibl
│ │ │ -0023add0: 652e 6275 696c 7469 6e2e 7379 7374 656d  e.builtin.system
│ │ │ -0023ade0: 643a 0a20 2020 2020 206e 616d 653a 2073  d:.      name: s
│ │ │ -0023adf0: 6e6d 7064 2e73 6f63 6b65 740a 2020 2020  nmpd.socket.    
│ │ │ -0023ae00: 2020 656e 6162 6c65 643a 2066 616c 7365    enabled: false
│ │ │ -0023ae10: 0a20 2020 2020 2073 7461 7465 3a20 7374  .      state: st
│ │ │ -0023ae20: 6f70 7065 640a 2020 2020 2020 6d61 736b  opped.      mask
│ │ │ -0023ae30: 6564 3a20 7472 7565 0a20 2020 2077 6865  ed: true.    whe
│ │ │ -0023ae40: 6e3a 2073 6f63 6b65 745f 6669 6c65 5f65  n: socket_file_e
│ │ │ -0023ae50: 7869 7374 732e 7374 646f 7574 5f6c 696e  xists.stdout_lin
│ │ │ -0023ae60: 6573 2069 7320 7365 6172 6368 2822 736e  es is search("sn
│ │ │ -0023ae70: 6d70 642e 736f 636b 6574 222c 206d 756c  mpd.socket", mul
│ │ │ -0023ae80: 7469 6c69 6e65 3d54 7275 6529 0a20 2074  tiline=True).  t
│ │ │ -0023ae90: 6167 733a 0a20 202d 2064 6973 6162 6c65  ags:.  - disable
│ │ │ -0023aea0: 5f73 7472 6174 6567 790a 2020 2d20 6c6f  _strategy.  - lo
│ │ │ -0023aeb0: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ -0023aec0: 206c 6f77 5f64 6973 7275 7074 696f 6e0a   low_disruption.
│ │ │ -0023aed0: 2020 2d20 6c6f 775f 7365 7665 7269 7479    - low_severity
│ │ │ -0023aee0: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ -0023aef0: 6565 6465 640a 2020 2d20 7365 7276 6963  eeded.  - servic
│ │ │ -0023af00: 655f 736e 6d70 645f 6469 7361 626c 6564  e_snmpd_disabled
│ │ │ -0023af10: 0a20 202d 2073 7065 6369 616c 5f73 6572  .  - special_ser
│ │ │ -0023af20: 7669 6365 5f62 6c6f 636b 0a20 2077 6865  vice_block.  whe
│ │ │ -0023af30: 6e3a 2028 2022 6e65 742d 736e 6d70 2220  n: ( "net-snmp" 
│ │ │ -0023af40: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -0023af50: 2e70 6163 6b61 6765 7320 616e 6420 226b  .packages and "k
│ │ │ -0023af60: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ -0023af70: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -0023af80: 0a20 2020 2029 0a3c 2f63 6f64 653e 3c2f  .    ).
│ │ │ +0023a480: 3c62 723e 3c64 6976 2063 6c61 7373 3d22  
Complexity:low
Disrup │ │ │ -0023a8f0: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -0023a900: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -0023a940: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ -0023a950: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
low< │ │ │ +0023a520: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ +0023a570: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
- n
│ │ │ +0023a5b0: 616d 653a 2047 6174 6865 7220 7468 6520  ame: Gather the 
│ │ │ +0023a5c0: 7061 636b 6167 6520 6661 6374 730a 2020  package facts.  
│ │ │ +0023a5d0: 7061 636b 6167 655f 6661 6374 733a 0a20  package_facts:. 
│ │ │ +0023a5e0: 2020 206d 616e 6167 6572 3a20 6175 746f     manager: auto
│ │ │ +0023a5f0: 0a20 2074 6167 733a 0a20 202d 2064 6973  .  tags:.  - dis
│ │ │ +0023a600: 6162 6c65 5f73 7472 6174 6567 790a 2020  able_strategy.  
│ │ │ +0023a610: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ +0023a620: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ +0023a630: 696f 6e0a 2020 2d20 6c6f 775f 7365 7665  ion.  - low_seve
│ │ │ +0023a640: 7269 7479 0a20 202d 206e 6f5f 7265 626f  rity.  - no_rebo
│ │ │ +0023a650: 6f74 5f6e 6565 6465 640a 2020 2d20 7365  ot_needed.  - se
│ │ │ +0023a660: 7276 6963 655f 736e 6d70 645f 6469 7361  rvice_snmpd_disa
│ │ │ +0023a670: 626c 6564 0a0a 2d20 6e61 6d65 3a20 4469  bled..- name: Di
│ │ │ +0023a680: 7361 626c 6520 736e 6d70 6420 5365 7276  sable snmpd Serv
│ │ │ +0023a690: 6963 6520 2d20 4469 7361 626c 6520 7365  ice - Disable se
│ │ │ +0023a6a0: 7276 6963 6520 736e 6d70 640a 2020 626c  rvice snmpd.  bl
│ │ │ +0023a6b0: 6f63 6b3a 0a0a 2020 2d20 6e61 6d65 3a20  ock:..  - name: 
│ │ │ +0023a6c0: 4469 7361 626c 6520 736e 6d70 6420 5365  Disable snmpd Se
│ │ │ +0023a6d0: 7276 6963 6520 2d20 436f 6c6c 6563 7420  rvice - Collect 
│ │ │ +0023a6e0: 7379 7374 656d 6420 5365 7276 6963 6573  systemd Services
│ │ │ +0023a6f0: 2050 7265 7365 6e74 2069 6e20 7468 6520   Present in the 
│ │ │ +0023a700: 5379 7374 656d 0a20 2020 2061 6e73 6962  System.    ansib
│ │ │ +0023a710: 6c65 2e62 7569 6c74 696e 2e63 6f6d 6d61  le.builtin.comma
│ │ │ +0023a720: 6e64 3a20 7379 7374 656d 6374 6c20 2d71  nd: systemctl -q
│ │ │ +0023a730: 206c 6973 742d 756e 6974 2d66 696c 6573   list-unit-files
│ │ │ +0023a740: 202d 2d74 7970 6520 7365 7276 6963 650a   --type service.
│ │ │ +0023a750: 2020 2020 7265 6769 7374 6572 3a20 7365      register: se
│ │ │ +0023a760: 7276 6963 655f 6578 6973 7473 0a20 2020  rvice_exists.   
│ │ │ +0023a770: 2063 6861 6e67 6564 5f77 6865 6e3a 2066   changed_when: f
│ │ │ +0023a780: 616c 7365 0a20 2020 2066 6169 6c65 645f  alse.    failed_
│ │ │ +0023a790: 7768 656e 3a20 7365 7276 6963 655f 6578  when: service_ex
│ │ │ +0023a7a0: 6973 7473 2e72 6320 6e6f 7420 696e 205b  ists.rc not in [
│ │ │ +0023a7b0: 302c 2031 5d0a 2020 2020 6368 6563 6b5f  0, 1].    check_
│ │ │ +0023a7c0: 6d6f 6465 3a20 6661 6c73 650a 0a20 202d  mode: false..  -
│ │ │ +0023a7d0: 206e 616d 653a 2044 6973 6162 6c65 2073   name: Disable s
│ │ │ +0023a7e0: 6e6d 7064 2053 6572 7669 6365 202d 2045  nmpd Service - E
│ │ │ +0023a7f0: 6e73 7572 6520 736e 6d70 642e 7365 7276  nsure snmpd.serv
│ │ │ +0023a800: 6963 6520 6973 204d 6173 6b65 640a 2020  ice is Masked.  
│ │ │ +0023a810: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ +0023a820: 6e2e 7379 7374 656d 643a 0a20 2020 2020  n.systemd:.     
│ │ │ +0023a830: 206e 616d 653a 2073 6e6d 7064 2e73 6572   name: snmpd.ser
│ │ │ +0023a840: 7669 6365 0a20 2020 2020 2073 7461 7465  vice.      state
│ │ │ +0023a850: 3a20 7374 6f70 7065 640a 2020 2020 2020  : stopped.      
│ │ │ +0023a860: 656e 6162 6c65 643a 2066 616c 7365 0a20  enabled: false. 
│ │ │ +0023a870: 2020 2020 206d 6173 6b65 643a 2074 7275       masked: tru
│ │ │ +0023a880: 650a 2020 2020 7768 656e 3a20 7365 7276  e.    when: serv
│ │ │ +0023a890: 6963 655f 6578 6973 7473 2e73 7464 6f75  ice_exists.stdou
│ │ │ +0023a8a0: 745f 6c69 6e65 7320 6973 2073 6561 7263  t_lines is searc
│ │ │ +0023a8b0: 6828 2273 6e6d 7064 2e73 6572 7669 6365  h("snmpd.service
│ │ │ +0023a8c0: 222c 206d 756c 7469 6c69 6e65 3d54 7275  ", multiline=Tru
│ │ │ +0023a8d0: 6529 0a0a 2020 2d20 6e61 6d65 3a20 556e  e)..  - name: Un
│ │ │ +0023a8e0: 6974 2053 6f63 6b65 7420 4578 6973 7473  it Socket Exists
│ │ │ +0023a8f0: 202d 2073 6e6d 7064 2e73 6f63 6b65 740a   - snmpd.socket.
│ │ │ +0023a900: 2020 2020 616e 7369 626c 652e 6275 696c      ansible.buil
│ │ │ +0023a910: 7469 6e2e 636f 6d6d 616e 643a 2073 7973  tin.command: sys
│ │ │ +0023a920: 7465 6d63 746c 202d 7120 6c69 7374 2d75  temctl -q list-u
│ │ │ +0023a930: 6e69 742d 6669 6c65 7320 736e 6d70 642e  nit-files snmpd.
│ │ │ +0023a940: 736f 636b 6574 0a20 2020 2072 6567 6973  socket.    regis
│ │ │ +0023a950: 7465 723a 2073 6f63 6b65 745f 6669 6c65  ter: socket_file
│ │ │ +0023a960: 5f65 7869 7374 730a 2020 2020 6368 616e  _exists.    chan
│ │ │ +0023a970: 6765 645f 7768 656e 3a20 6661 6c73 650a  ged_when: false.
│ │ │ +0023a980: 2020 2020 6661 696c 6564 5f77 6865 6e3a      failed_when:
│ │ │ +0023a990: 2073 6f63 6b65 745f 6669 6c65 5f65 7869   socket_file_exi
│ │ │ +0023a9a0: 7374 732e 7263 206e 6f74 2069 6e20 5b30  sts.rc not in [0
│ │ │ +0023a9b0: 2c20 315d 0a20 2020 2063 6865 636b 5f6d  , 1].    check_m
│ │ │ +0023a9c0: 6f64 653a 2066 616c 7365 0a0a 2020 2d20  ode: false..  - 
│ │ │ +0023a9d0: 6e61 6d65 3a20 4469 7361 626c 6520 736e  name: Disable sn
│ │ │ +0023a9e0: 6d70 6420 5365 7276 6963 6520 2d20 4469  mpd Service - Di
│ │ │ +0023a9f0: 7361 626c 6520 536f 636b 6574 2073 6e6d  sable Socket snm
│ │ │ +0023aa00: 7064 0a20 2020 2061 6e73 6962 6c65 2e62  pd.    ansible.b
│ │ │ +0023aa10: 7569 6c74 696e 2e73 7973 7465 6d64 3a0a  uiltin.systemd:.
│ │ │ +0023aa20: 2020 2020 2020 6e61 6d65 3a20 736e 6d70        name: snmp
│ │ │ +0023aa30: 642e 736f 636b 6574 0a20 2020 2020 2065  d.socket.      e
│ │ │ +0023aa40: 6e61 626c 6564 3a20 6661 6c73 650a 2020  nabled: false.  
│ │ │ +0023aa50: 2020 2020 7374 6174 653a 2073 746f 7070      state: stopp
│ │ │ +0023aa60: 6564 0a20 2020 2020 206d 6173 6b65 643a  ed.      masked:
│ │ │ +0023aa70: 2074 7275 650a 2020 2020 7768 656e 3a20   true.    when: 
│ │ │ +0023aa80: 736f 636b 6574 5f66 696c 655f 6578 6973  socket_file_exis
│ │ │ +0023aa90: 7473 2e73 7464 6f75 745f 6c69 6e65 7320  ts.stdout_lines 
│ │ │ +0023aaa0: 6973 2073 6561 7263 6828 2273 6e6d 7064  is search("snmpd
│ │ │ +0023aab0: 2e73 6f63 6b65 7422 2c20 6d75 6c74 696c  .socket", multil
│ │ │ +0023aac0: 696e 653d 5472 7565 290a 2020 7461 6773  ine=True).  tags
│ │ │ +0023aad0: 3a0a 2020 2d20 6469 7361 626c 655f 7374  :.  - disable_st
│ │ │ +0023aae0: 7261 7465 6779 0a20 202d 206c 6f77 5f63  rategy.  - low_c
│ │ │ +0023aaf0: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f  omplexity.  - lo
│ │ │ +0023ab00: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ +0023ab10: 206c 6f77 5f73 6576 6572 6974 790a 2020   low_severity.  
│ │ │ +0023ab20: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ +0023ab30: 6564 0a20 202d 2073 6572 7669 6365 5f73  ed.  - service_s
│ │ │ +0023ab40: 6e6d 7064 5f64 6973 6162 6c65 640a 2020  nmpd_disabled.  
│ │ │ +0023ab50: 2d20 7370 6563 6961 6c5f 7365 7276 6963  - special_servic
│ │ │ +0023ab60: 655f 626c 6f63 6b0a 2020 7768 656e 3a20  e_block.  when: 
│ │ │ +0023ab70: 2820 226e 6574 2d73 6e6d 7022 2069 6e20  ( "net-snmp" in 
│ │ │ +0023ab80: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +0023ab90: 636b 6167 6573 2061 6e64 2022 6b65 726e  ckages and "kern
│ │ │ +0023aba0: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ +0023abb0: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ +0023abc0: 2020 290a 3c2f 636f 6465 3e3c 2f70 7265    ).
Remediation │ │ │ +0023ac80: 5075 7070 6574 2073 6e69 7070 6574 20e2 Puppet snippet . │ │ │ +0023ac90: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
Co │ │ │ +0023a500: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +0023a530: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +0023a550: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +0023a560: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +0023a580: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ +0023a590: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
│ │ │ +0023ad10: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +0023ad30: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ +0023ad80: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 < │ │ │ +0023adb0: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
include disabl
│ │ │ +0023add0: 655f 736e 6d70 640a 0a63 6c61 7373 2064  e_snmpd..class d
│ │ │ +0023ade0: 6973 6162 6c65 5f73 6e6d 7064 207b 0a20  isable_snmpd {. 
│ │ │ +0023adf0: 2073 6572 7669 6365 207b 2773 6e6d 7064   service {'snmpd
│ │ │ +0023ae00: 273a 0a20 2020 2065 6e61 626c 6520 3d26  ':.    enable =&
│ │ │ +0023ae10: 6774 3b20 6661 6c73 652c 0a20 2020 2065  gt; false,.    e
│ │ │ +0023ae20: 6e73 7572 6520 3d26 6774 3b20 2773 746f  nsure => 'sto
│ │ │ +0023ae30: 7070 6564 272c 0a20 207d 0a7d 0a3c 2f63  pped',.  }.}.
│ │ │ +0023ae50: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ +0023aef0: 6564 6961 7469 6f6e 204f 5342 7569 6c64 ediation OSBuild │ │ │ +0023af00: 2042 6c75 6570 7269 6e74 2073 6e69 7070 Blueprint snipp │ │ │ +0023af10: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...

.[custo │ │ │ +0023af60: 6d69 7a61 7469 6f6e 732e 7365 7276 6963 mizations.servic │ │ │ +0023af70: 6573 5d0a 6d61 736b 6564 203d 205b 2273 es].masked = ["s │ │ │ +0023af80: 6e6d 7064 225d 0a3c 2f63 6f64 653e 3c2f nmpd"].Remediation Pu │ │ │ -00274dc0: 7070 6574 2073 6e69 7070 6574 20e2 87b2 ppet snippet ... │ │ │ -00274dd0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61

...include ss
│ │ │ -00274e20: 685f 7072 6976 6174 655f 6b65 795f 7065  h_private_key_pe
│ │ │ -00274e30: 726d 730a 0a63 6c61 7373 2073 7368 5f70  rms..class ssh_p
│ │ │ -00274e40: 7269 7661 7465 5f6b 6579 5f70 6572 6d73  rivate_key_perms
│ │ │ -00274e50: 207b 0a20 2065 7865 6320 7b20 2773 7368   {.  exec { 'ssh
│ │ │ -00274e60: 645f 7072 6976 5f6b 6579 273a 0a20 2020  d_priv_key':.   
│ │ │ -00274e70: 2063 6f6d 6d61 6e64 203d 2667 743b 2022   command => "
│ │ │ -00274e80: 6368 6d6f 6420 3036 3030 202f 6574 632f  chmod 0600 /etc/
│ │ │ -00274e90: 7373 682f 2a5f 6b65 7922 2c0a 2020 2020  ssh/*_key",.    
│ │ │ -00274ea0: 7061 7468 2020 2020 3d26 6774 3b20 272f  path    => '/
│ │ │ -00274eb0: 6269 6e3a 2f75 7372 2f62 696e 270a 2020  bin:/usr/bin'.  
│ │ │ -00274ec0: 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70 7265  }.}.
Remediation │ │ │ -00274f80: 416e 7369 626c 6520 736e 6970 7065 7420 Ansible snippet │ │ │ -00274f90: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
low< │ │ │ -00275060: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>
Complexity:< │ │ │ +0023ad20: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +0023ad40: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ +0023ad90: 6174 6567 793a 3c2f 7468 3e3c 7464 3e65 ategy:e │ │ │ +0023ada0: 6e61 626c 653c 2f74 643e 3c2f 7472 3e3c nable
Complexity: │ │ │ -00275020: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Di │ │ │ -00275040: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:
Reboot:false
St │ │ │ -00275090: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ -002750a0: 636f 6e66 6967 7572 653c 2f74 643e 3c2f configure
│ │ │ -002750c0: 3c63 6f64 653e 2d20 6e61 6d65 3a20 4761  - name: Ga
│ │ │ -002750d0: 7468 6572 2074 6865 2070 6163 6b61 6765  ther the package
│ │ │ -002750e0: 2066 6163 7473 0a20 2070 6163 6b61 6765   facts.  package
│ │ │ -002750f0: 5f66 6163 7473 3a0a 2020 2020 6d61 6e61  _facts:.    mana
│ │ │ -00275100: 6765 723a 2061 7574 6f0a 2020 7461 6773  ger: auto.  tags
│ │ │ -00275110: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d31  :.  - NIST-800-1
│ │ │ -00275120: 3731 2d33 2e31 2e31 330a 2020 2d20 4e49  71-3.1.13.  - NI
│ │ │ -00275130: 5354 2d38 3030 2d31 3731 2d33 2e31 332e  ST-800-171-3.13.
│ │ │ -00275140: 3130 0a20 202d 204e 4953 542d 3830 302d  10.  - NIST-800-
│ │ │ -00275150: 3533 2d41 432d 3137 2861 290a 2020 2d20  53-AC-17(a).  - 
│ │ │ -00275160: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ -00275170: 2831 290a 2020 2d20 4e49 5354 2d38 3030  (1).  - NIST-800
│ │ │ -00275180: 2d35 332d 434d 2d36 2861 290a 2020 2d20  -53-CM-6(a).  - 
│ │ │ -00275190: 5043 492d 4453 532d 5265 712d 322e 322e  PCI-DSS-Req-2.2.
│ │ │ -002751a0: 340a 2020 2d20 5043 492d 4453 5376 342d  4.  - PCI-DSSv4-
│ │ │ -002751b0: 322e 320a 2020 2d20 5043 492d 4453 5376  2.2.  - PCI-DSSv
│ │ │ -002751c0: 342d 322e 322e 360a 2020 2d20 636f 6e66  4-2.2.6.  - conf
│ │ │ -002751d0: 6967 7572 655f 7374 7261 7465 6779 0a20  igure_strategy. 
│ │ │ -002751e0: 202d 2066 696c 655f 7065 726d 6973 7369   - file_permissi
│ │ │ -002751f0: 6f6e 735f 7373 6864 5f70 7269 7661 7465  ons_sshd_private
│ │ │ -00275200: 5f6b 6579 0a20 202d 206c 6f77 5f63 6f6d  _key.  - low_com
│ │ │ -00275210: 706c 6578 6974 790a 2020 2d20 6c6f 775f  plexity.  - low_
│ │ │ -00275220: 6469 7372 7570 7469 6f6e 0a20 202d 206d  disruption.  - m
│ │ │ -00275230: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ -00275240: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ -00275250: 6465 640a 0a2d 206e 616d 653a 2046 696e  ded..- name: Fin
│ │ │ -00275260: 6420 726f 6f74 3a72 6f6f 742d 6f77 6e65  d root:root-owne
│ │ │ -00275270: 6420 6b65 7973 0a20 2061 6e73 6962 6c65  d keys.  ansible
│ │ │ -00275280: 2e62 7569 6c74 696e 2e63 6f6d 6d61 6e64  .builtin.command
│ │ │ -00275290: 3a20 6669 6e64 202d 4820 2f65 7463 2f73  : find -H /etc/s
│ │ │ -002752a0: 7368 2f20 2d6d 6178 6465 7074 6820 3120  sh/ -maxdepth 1 
│ │ │ -002752b0: 2d75 7365 7220 726f 6f74 202d 7265 6765  -user root -rege
│ │ │ -002752c0: 7820 222e 2a5f 6b65 7924 220a 2020 2020  x ".*_key$".    
│ │ │ -002752d0: 2d74 7970 6520 6620 2d67 726f 7570 2072  -type f -group r
│ │ │ -002752e0: 6f6f 7420 2d70 6572 6d20 2f75 2b78 732c  oot -perm /u+xs,
│ │ │ -002752f0: 672b 7877 7273 2c6f 2b78 7772 740a 2020  g+xwrs,o+xwrt.  
│ │ │ -00275300: 7265 6769 7374 6572 3a20 726f 6f74 5f6f  register: root_o
│ │ │ -00275310: 776e 6564 5f6b 6579 730a 2020 6368 616e  wned_keys.  chan
│ │ │ -00275320: 6765 645f 7768 656e 3a20 6661 6c73 650a  ged_when: false.
│ │ │ -00275330: 2020 6661 696c 6564 5f77 6865 6e3a 2066    failed_when: f
│ │ │ -00275340: 616c 7365 0a20 2063 6865 636b 5f6d 6f64  alse.  check_mod
│ │ │ -00275350: 653a 2066 616c 7365 0a20 2077 6865 6e3a  e: false.  when:
│ │ │ -00275360: 2027 226b 6572 6e65 6c22 2069 6e20 616e   '"kernel" in an
│ │ │ -00275370: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -00275380: 6167 6573 270a 2020 7461 6773 3a0a 2020  ages'.  tags:.  
│ │ │ -00275390: 2d20 4e49 5354 2d38 3030 2d31 3731 2d33  - NIST-800-171-3
│ │ │ -002753a0: 2e31 2e31 330a 2020 2d20 4e49 5354 2d38  .1.13.  - NIST-8
│ │ │ -002753b0: 3030 2d31 3731 2d33 2e31 332e 3130 0a20  00-171-3.13.10. 
│ │ │ -002753c0: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ -002753d0: 432d 3137 2861 290a 2020 2d20 4e49 5354  C-17(a).  - NIST
│ │ │ -002753e0: 2d38 3030 2d35 332d 4143 2d36 2831 290a  -800-53-AC-6(1).
│ │ │ -002753f0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -00275400: 434d 2d36 2861 290a 2020 2d20 5043 492d  CM-6(a).  - PCI-
│ │ │ -00275410: 4453 532d 5265 712d 322e 322e 340a 2020  DSS-Req-2.2.4.  
│ │ │ -00275420: 2d20 5043 492d 4453 5376 342d 322e 320a  - PCI-DSSv4-2.2.
│ │ │ -00275430: 2020 2d20 5043 492d 4453 5376 342d 322e    - PCI-DSSv4-2.
│ │ │ -00275440: 322e 360a 2020 2d20 636f 6e66 6967 7572  2.6.  - configur
│ │ │ -00275450: 655f 7374 7261 7465 6779 0a20 202d 2066  e_strategy.  - f
│ │ │ -00275460: 696c 655f 7065 726d 6973 7369 6f6e 735f  ile_permissions_
│ │ │ -00275470: 7373 6864 5f70 7269 7661 7465 5f6b 6579  sshd_private_key
│ │ │ -00275480: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ -00275490: 6974 790a 2020 2d20 6c6f 775f 6469 7372  ity.  - low_disr
│ │ │ -002754a0: 7570 7469 6f6e 0a20 202d 206d 6564 6975  uption.  - mediu
│ │ │ -002754b0: 6d5f 7365 7665 7269 7479 0a20 202d 206e  m_severity.  - n
│ │ │ -002754c0: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ -002754d0: 0a2d 206e 616d 653a 2053 6574 2070 6572  .- name: Set per
│ │ │ -002754e0: 6d69 7373 696f 6e73 2066 6f72 2072 6f6f  missions for roo
│ │ │ -002754f0: 743a 726f 6f74 2d6f 776e 6564 206b 6579  t:root-owned key
│ │ │ -00275500: 730a 2020 616e 7369 626c 652e 6275 696c  s.  ansible.buil
│ │ │ -00275510: 7469 6e2e 6669 6c65 3a0a 2020 2020 7061  tin.file:.    pa
│ │ │ -00275520: 7468 3a20 277b 7b20 6974 656d 207d 7d27  th: '{{ item }}'
│ │ │ -00275530: 0a20 2020 206d 6f64 653a 2075 2d78 732c  .    mode: u-xs,
│ │ │ -00275540: 672d 7877 7273 2c6f 2d78 7772 740a 2020  g-xwrs,o-xwrt.  
│ │ │ -00275550: 2020 7374 6174 653a 2066 696c 650a 2020    state: file.  
│ │ │ -00275560: 7769 7468 5f69 7465 6d73 3a0a 2020 2d20  with_items:.  - 
│ │ │ -00275570: 277b 7b20 726f 6f74 5f6f 776e 6564 5f6b  '{{ root_owned_k
│ │ │ -00275580: 6579 732e 7374 646f 7574 5f6c 696e 6573  eys.stdout_lines
│ │ │ -00275590: 207d 7d27 0a20 2077 6865 6e3a 2027 226b   }}'.  when: '"k
│ │ │ -002755a0: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ -002755b0: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -002755c0: 270a 2020 7461 6773 3a0a 2020 2d20 4e49  '.  tags:.  - NI
│ │ │ -002755d0: 5354 2d38 3030 2d31 3731 2d33 2e31 2e31  ST-800-171-3.1.1
│ │ │ -002755e0: 330a 2020 2d20 4e49 5354 2d38 3030 2d31  3.  - NIST-800-1
│ │ │ -002755f0: 3731 2d33 2e31 332e 3130 0a20 202d 204e  71-3.13.10.  - N
│ │ │ -00275600: 4953 542d 3830 302d 3533 2d41 432d 3137  IST-800-53-AC-17
│ │ │ -00275610: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ -00275620: 2d35 332d 4143 2d36 2831 290a 2020 2d20  -53-AC-6(1).  - 
│ │ │ -00275630: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ -00275640: 2861 290a 2020 2d20 5043 492d 4453 532d  (a).  - PCI-DSS-
│ │ │ -00275650: 5265 712d 322e 322e 340a 2020 2d20 5043  Req-2.2.4.  - PC
│ │ │ -00275660: 492d 4453 5376 342d 322e 320a 2020 2d20  I-DSSv4-2.2.  - 
│ │ │ -00275670: 5043 492d 4453 5376 342d 322e 322e 360a  PCI-DSSv4-2.2.6.
│ │ │ -00275680: 2020 2d20 636f 6e66 6967 7572 655f 7374    - configure_st
│ │ │ -00275690: 7261 7465 6779 0a20 202d 2066 696c 655f  rategy.  - file_
│ │ │ -002756a0: 7065 726d 6973 7369 6f6e 735f 7373 6864  permissions_sshd
│ │ │ -002756b0: 5f70 7269 7661 7465 5f6b 6579 0a20 202d  _private_key.  -
│ │ │ -002756c0: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ -002756d0: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ -002756e0: 6f6e 0a20 202d 206d 6564 6975 6d5f 7365  on.  - medium_se
│ │ │ -002756f0: 7665 7269 7479 0a20 202d 206e 6f5f 7265  verity.  - no_re
│ │ │ -00275700: 626f 6f74 5f6e 6565 6465 640a 0a2d 206e  boot_needed..- n
│ │ │ -00275710: 616d 653a 2046 696e 6420 726f 6f74 3a73  ame: Find root:s
│ │ │ -00275720: 7368 5f6b 6579 732d 6f77 6e65 6420 6b65  sh_keys-owned ke
│ │ │ -00275730: 7973 0a20 2061 6e73 6962 6c65 2e62 7569  ys.  ansible.bui
│ │ │ -00275740: 6c74 696e 2e63 6f6d 6d61 6e64 3a20 6669  ltin.command: fi
│ │ │ -00275750: 6e64 202d 4820 2f65 7463 2f73 7368 2f20  nd -H /etc/ssh/ 
│ │ │ -00275760: 2d6d 6178 6465 7074 6820 3120 2d75 7365  -maxdepth 1 -use
│ │ │ -00275770: 7220 726f 6f74 202d 7265 6765 7820 222e  r root -regex ".
│ │ │ -00275780: 2a5f 6b65 7924 220a 2020 2020 2d74 7970  *_key$".    -typ
│ │ │ -00275790: 6520 6620 2d67 726f 7570 2073 7368 5f6b  e f -group ssh_k
│ │ │ -002757a0: 6579 7320 2d70 6572 6d20 2f75 2b78 732c  eys -perm /u+xs,
│ │ │ -002757b0: 672b 7877 7273 2c6f 2b78 7772 740a 2020  g+xwrs,o+xwrt.  
│ │ │ -002757c0: 7265 6769 7374 6572 3a20 6465 6469 6361  register: dedica
│ │ │ -002757d0: 7465 645f 6772 6f75 705f 6f77 6e65 645f  ted_group_owned_
│ │ │ -002757e0: 6b65 7973 0a20 2063 6861 6e67 6564 5f77  keys.  changed_w
│ │ │ -002757f0: 6865 6e3a 2066 616c 7365 0a20 2066 6169  hen: false.  fai
│ │ │ -00275800: 6c65 645f 7768 656e 3a20 6661 6c73 650a  led_when: false.
│ │ │ -00275810: 2020 6368 6563 6b5f 6d6f 6465 3a20 6661    check_mode: fa
│ │ │ -00275820: 6c73 650a 2020 7768 656e 3a20 2722 6b65  lse.  when: '"ke
│ │ │ -00275830: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ -00275840: 5f66 6163 7473 2e70 6163 6b61 6765 7327  _facts.packages'
│ │ │ -00275850: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ -00275860: 542d 3830 302d 3137 312d 332e 312e 3133  T-800-171-3.1.13
│ │ │ -00275870: 0a20 202d 204e 4953 542d 3830 302d 3137  .  - NIST-800-17
│ │ │ -00275880: 312d 332e 3133 2e31 300a 2020 2d20 4e49  1-3.13.10.  - NI
│ │ │ -00275890: 5354 2d38 3030 2d35 332d 4143 2d31 3728  ST-800-53-AC-17(
│ │ │ -002758a0: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ -002758b0: 3533 2d41 432d 3628 3129 0a20 202d 204e  53-AC-6(1).  - N
│ │ │ -002758c0: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ -002758d0: 6129 0a20 202d 2050 4349 2d44 5353 2d52  a).  - PCI-DSS-R
│ │ │ -002758e0: 6571 2d32 2e32 2e34 0a20 202d 2050 4349  eq-2.2.4.  - PCI
│ │ │ -002758f0: 2d44 5353 7634 2d32 2e32 0a20 202d 2050  -DSSv4-2.2.  - P
│ │ │ -00275900: 4349 2d44 5353 7634 2d32 2e32 2e36 0a20  CI-DSSv4-2.2.6. 
│ │ │ -00275910: 202d 2063 6f6e 6669 6775 7265 5f73 7472   - configure_str
│ │ │ -00275920: 6174 6567 790a 2020 2d20 6669 6c65 5f70  ategy.  - file_p
│ │ │ -00275930: 6572 6d69 7373 696f 6e73 5f73 7368 645f  ermissions_sshd_
│ │ │ -00275940: 7072 6976 6174 655f 6b65 790a 2020 2d20  private_key.  - 
│ │ │ -00275950: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ -00275960: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ -00275970: 6e0a 2020 2d20 6d65 6469 756d 5f73 6576  n.  - medium_sev
│ │ │ -00275980: 6572 6974 790a 2020 2d20 6e6f 5f72 6562  erity.  - no_reb
│ │ │ -00275990: 6f6f 745f 6e65 6564 6564 0a0a 2d20 6e61  oot_needed..- na
│ │ │ -002759a0: 6d65 3a20 5365 7420 7065 726d 6973 7369  me: Set permissi
│ │ │ -002759b0: 6f6e 7320 666f 7220 726f 6f74 3a73 7368  ons for root:ssh
│ │ │ -002759c0: 5f6b 6579 732d 6f77 6e65 6420 6b65 7973  _keys-owned keys
│ │ │ -002759d0: 0a20 2061 6e73 6962 6c65 2e62 7569 6c74  .  ansible.built
│ │ │ -002759e0: 696e 2e66 696c 653a 0a20 2020 2070 6174  in.file:.    pat
│ │ │ -002759f0: 683a 2027 7b7b 2069 7465 6d20 7d7d 270a  h: '{{ item }}'.
│ │ │ -00275a00: 2020 2020 6d6f 6465 3a20 752d 7873 2c67      mode: u-xs,g
│ │ │ -00275a10: 2d78 7772 732c 6f2d 7877 7274 0a20 2020  -xwrs,o-xwrt.   
│ │ │ -00275a20: 2073 7461 7465 3a20 6669 6c65 0a20 2077   state: file.  w
│ │ │ -00275a30: 6974 685f 6974 656d 733a 0a20 202d 2027  ith_items:.  - '
│ │ │ -00275a40: 7b7b 2064 6564 6963 6174 6564 5f67 726f  {{ dedicated_gro
│ │ │ -00275a50: 7570 5f6f 776e 6564 5f6b 6579 732e 7374  up_owned_keys.st
│ │ │ -00275a60: 646f 7574 5f6c 696e 6573 207d 7d27 0a20  dout_lines }}'. 
│ │ │ -00275a70: 2077 6865 6e3a 2027 226b 6572 6e65 6c22   when: '"kernel"
│ │ │ -00275a80: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -00275a90: 732e 7061 636b 6167 6573 270a 2020 7461  s.packages'.  ta
│ │ │ -00275aa0: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030  gs:.  - NIST-800
│ │ │ -00275ab0: 2d31 3731 2d33 2e31 2e31 330a 2020 2d20  -171-3.1.13.  - 
│ │ │ -00275ac0: 4e49 5354 2d38 3030 2d31 3731 2d33 2e31  NIST-800-171-3.1
│ │ │ -00275ad0: 332e 3130 0a20 202d 204e 4953 542d 3830  3.10.  - NIST-80
│ │ │ -00275ae0: 302d 3533 2d41 432d 3137 2861 290a 2020  0-53-AC-17(a).  
│ │ │ -00275af0: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ -00275b00: 2d36 2831 290a 2020 2d20 4e49 5354 2d38  -6(1).  - NIST-8
│ │ │ -00275b10: 3030 2d35 332d 434d 2d36 2861 290a 2020  00-53-CM-6(a).  
│ │ │ -00275b20: 2d20 5043 492d 4453 532d 5265 712d 322e  - PCI-DSS-Req-2.
│ │ │ -00275b30: 322e 340a 2020 2d20 5043 492d 4453 5376  2.4.  - PCI-DSSv
│ │ │ -00275b40: 342d 322e 320a 2020 2d20 5043 492d 4453  4-2.2.  - PCI-DS
│ │ │ -00275b50: 5376 342d 322e 322e 360a 2020 2d20 636f  Sv4-2.2.6.  - co
│ │ │ -00275b60: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ -00275b70: 0a20 202d 2066 696c 655f 7065 726d 6973  .  - file_permis
│ │ │ -00275b80: 7369 6f6e 735f 7373 6864 5f70 7269 7661  sions_sshd_priva
│ │ │ -00275b90: 7465 5f6b 6579 0a20 202d 206c 6f77 5f63  te_key.  - low_c
│ │ │ -00275ba0: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f  omplexity.  - lo
│ │ │ -00275bb0: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ -00275bc0: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ -00275bd0: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ -00275be0: 6565 6465 640a 3c2f 636f 6465 3e3c 2f70  eeded.

Remediation An │ │ │ +00274dc0: 7369 626c 6520 736e 6970 7065 7420 e287 sible snippet .. │ │ │ +00274dd0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ +00274e50: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ +00274e70: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ +00274ec0: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
low
Disr │ │ │ +00274e80: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +00274e90: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ +00274ed0: 7465 6779 3a3c 2f74 683e 3c74 643e 636f tegy:co │ │ │ +00274ee0: 6e66 6967 7572 653c 2f74 643e 3c2f 7472 nfigure
- name: Gath
│ │ │ +00274f10: 6572 2074 6865 2070 6163 6b61 6765 2066  er the package f
│ │ │ +00274f20: 6163 7473 0a20 2070 6163 6b61 6765 5f66  acts.  package_f
│ │ │ +00274f30: 6163 7473 3a0a 2020 2020 6d61 6e61 6765  acts:.    manage
│ │ │ +00274f40: 723a 2061 7574 6f0a 2020 7461 6773 3a0a  r: auto.  tags:.
│ │ │ +00274f50: 2020 2d20 4e49 5354 2d38 3030 2d31 3731    - NIST-800-171
│ │ │ +00274f60: 2d33 2e31 2e31 330a 2020 2d20 4e49 5354  -3.1.13.  - NIST
│ │ │ +00274f70: 2d38 3030 2d31 3731 2d33 2e31 332e 3130  -800-171-3.13.10
│ │ │ +00274f80: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +00274f90: 2d41 432d 3137 2861 290a 2020 2d20 4e49  -AC-17(a).  - NI
│ │ │ +00274fa0: 5354 2d38 3030 2d35 332d 4143 2d36 2831  ST-800-53-AC-6(1
│ │ │ +00274fb0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +00274fc0: 332d 434d 2d36 2861 290a 2020 2d20 5043  3-CM-6(a).  - PC
│ │ │ +00274fd0: 492d 4453 532d 5265 712d 322e 322e 340a  I-DSS-Req-2.2.4.
│ │ │ +00274fe0: 2020 2d20 5043 492d 4453 5376 342d 322e    - PCI-DSSv4-2.
│ │ │ +00274ff0: 320a 2020 2d20 5043 492d 4453 5376 342d  2.  - PCI-DSSv4-
│ │ │ +00275000: 322e 322e 360a 2020 2d20 636f 6e66 6967  2.2.6.  - config
│ │ │ +00275010: 7572 655f 7374 7261 7465 6779 0a20 202d  ure_strategy.  -
│ │ │ +00275020: 2066 696c 655f 7065 726d 6973 7369 6f6e   file_permission
│ │ │ +00275030: 735f 7373 6864 5f70 7269 7661 7465 5f6b  s_sshd_private_k
│ │ │ +00275040: 6579 0a20 202d 206c 6f77 5f63 6f6d 706c  ey.  - low_compl
│ │ │ +00275050: 6578 6974 790a 2020 2d20 6c6f 775f 6469  exity.  - low_di
│ │ │ +00275060: 7372 7570 7469 6f6e 0a20 202d 206d 6564  sruption.  - med
│ │ │ +00275070: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ +00275080: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ +00275090: 640a 0a2d 206e 616d 653a 2046 696e 6420  d..- name: Find 
│ │ │ +002750a0: 726f 6f74 3a72 6f6f 742d 6f77 6e65 6420  root:root-owned 
│ │ │ +002750b0: 6b65 7973 0a20 2061 6e73 6962 6c65 2e62  keys.  ansible.b
│ │ │ +002750c0: 7569 6c74 696e 2e63 6f6d 6d61 6e64 3a20  uiltin.command: 
│ │ │ +002750d0: 6669 6e64 202d 4820 2f65 7463 2f73 7368  find -H /etc/ssh
│ │ │ +002750e0: 2f20 2d6d 6178 6465 7074 6820 3120 2d75  / -maxdepth 1 -u
│ │ │ +002750f0: 7365 7220 726f 6f74 202d 7265 6765 7820  ser root -regex 
│ │ │ +00275100: 222e 2a5f 6b65 7924 220a 2020 2020 2d74  ".*_key$".    -t
│ │ │ +00275110: 7970 6520 6620 2d67 726f 7570 2072 6f6f  ype f -group roo
│ │ │ +00275120: 7420 2d70 6572 6d20 2f75 2b78 732c 672b  t -perm /u+xs,g+
│ │ │ +00275130: 7877 7273 2c6f 2b78 7772 740a 2020 7265  xwrs,o+xwrt.  re
│ │ │ +00275140: 6769 7374 6572 3a20 726f 6f74 5f6f 776e  gister: root_own
│ │ │ +00275150: 6564 5f6b 6579 730a 2020 6368 616e 6765  ed_keys.  change
│ │ │ +00275160: 645f 7768 656e 3a20 6661 6c73 650a 2020  d_when: false.  
│ │ │ +00275170: 6661 696c 6564 5f77 6865 6e3a 2066 616c  failed_when: fal
│ │ │ +00275180: 7365 0a20 2063 6865 636b 5f6d 6f64 653a  se.  check_mode:
│ │ │ +00275190: 2066 616c 7365 0a20 2077 6865 6e3a 2027   false.  when: '
│ │ │ +002751a0: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ +002751b0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +002751c0: 6573 270a 2020 7461 6773 3a0a 2020 2d20  es'.  tags:.  - 
│ │ │ +002751d0: 4e49 5354 2d38 3030 2d31 3731 2d33 2e31  NIST-800-171-3.1
│ │ │ +002751e0: 2e31 330a 2020 2d20 4e49 5354 2d38 3030  .13.  - NIST-800
│ │ │ +002751f0: 2d31 3731 2d33 2e31 332e 3130 0a20 202d  -171-3.13.10.  -
│ │ │ +00275200: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ +00275210: 3137 2861 290a 2020 2d20 4e49 5354 2d38  17(a).  - NIST-8
│ │ │ +00275220: 3030 2d35 332d 4143 2d36 2831 290a 2020  00-53-AC-6(1).  
│ │ │ +00275230: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +00275240: 2d36 2861 290a 2020 2d20 5043 492d 4453  -6(a).  - PCI-DS
│ │ │ +00275250: 532d 5265 712d 322e 322e 340a 2020 2d20  S-Req-2.2.4.  - 
│ │ │ +00275260: 5043 492d 4453 5376 342d 322e 320a 2020  PCI-DSSv4-2.2.  
│ │ │ +00275270: 2d20 5043 492d 4453 5376 342d 322e 322e  - PCI-DSSv4-2.2.
│ │ │ +00275280: 360a 2020 2d20 636f 6e66 6967 7572 655f  6.  - configure_
│ │ │ +00275290: 7374 7261 7465 6779 0a20 202d 2066 696c  strategy.  - fil
│ │ │ +002752a0: 655f 7065 726d 6973 7369 6f6e 735f 7373  e_permissions_ss
│ │ │ +002752b0: 6864 5f70 7269 7661 7465 5f6b 6579 0a20  hd_private_key. 
│ │ │ +002752c0: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ +002752d0: 790a 2020 2d20 6c6f 775f 6469 7372 7570  y.  - low_disrup
│ │ │ +002752e0: 7469 6f6e 0a20 202d 206d 6564 6975 6d5f  tion.  - medium_
│ │ │ +002752f0: 7365 7665 7269 7479 0a20 202d 206e 6f5f  severity.  - no_
│ │ │ +00275300: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ +00275310: 206e 616d 653a 2053 6574 2070 6572 6d69   name: Set permi
│ │ │ +00275320: 7373 696f 6e73 2066 6f72 2072 6f6f 743a  ssions for root:
│ │ │ +00275330: 726f 6f74 2d6f 776e 6564 206b 6579 730a  root-owned keys.
│ │ │ +00275340: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ +00275350: 6e2e 6669 6c65 3a0a 2020 2020 7061 7468  n.file:.    path
│ │ │ +00275360: 3a20 277b 7b20 6974 656d 207d 7d27 0a20  : '{{ item }}'. 
│ │ │ +00275370: 2020 206d 6f64 653a 2075 2d78 732c 672d     mode: u-xs,g-
│ │ │ +00275380: 7877 7273 2c6f 2d78 7772 740a 2020 2020  xwrs,o-xwrt.    
│ │ │ +00275390: 7374 6174 653a 2066 696c 650a 2020 7769  state: file.  wi
│ │ │ +002753a0: 7468 5f69 7465 6d73 3a0a 2020 2d20 277b  th_items:.  - '{
│ │ │ +002753b0: 7b20 726f 6f74 5f6f 776e 6564 5f6b 6579  { root_owned_key
│ │ │ +002753c0: 732e 7374 646f 7574 5f6c 696e 6573 207d  s.stdout_lines }
│ │ │ +002753d0: 7d27 0a20 2077 6865 6e3a 2027 226b 6572  }'.  when: '"ker
│ │ │ +002753e0: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ +002753f0: 6661 6374 732e 7061 636b 6167 6573 270a  facts.packages'.
│ │ │ +00275400: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ +00275410: 2d38 3030 2d31 3731 2d33 2e31 2e31 330a  -800-171-3.1.13.
│ │ │ +00275420: 2020 2d20 4e49 5354 2d38 3030 2d31 3731    - NIST-800-171
│ │ │ +00275430: 2d33 2e31 332e 3130 0a20 202d 204e 4953  -3.13.10.  - NIS
│ │ │ +00275440: 542d 3830 302d 3533 2d41 432d 3137 2861  T-800-53-AC-17(a
│ │ │ +00275450: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +00275460: 332d 4143 2d36 2831 290a 2020 2d20 4e49  3-AC-6(1).  - NI
│ │ │ +00275470: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ +00275480: 290a 2020 2d20 5043 492d 4453 532d 5265  ).  - PCI-DSS-Re
│ │ │ +00275490: 712d 322e 322e 340a 2020 2d20 5043 492d  q-2.2.4.  - PCI-
│ │ │ +002754a0: 4453 5376 342d 322e 320a 2020 2d20 5043  DSSv4-2.2.  - PC
│ │ │ +002754b0: 492d 4453 5376 342d 322e 322e 360a 2020  I-DSSv4-2.2.6.  
│ │ │ +002754c0: 2d20 636f 6e66 6967 7572 655f 7374 7261  - configure_stra
│ │ │ +002754d0: 7465 6779 0a20 202d 2066 696c 655f 7065  tegy.  - file_pe
│ │ │ +002754e0: 726d 6973 7369 6f6e 735f 7373 6864 5f70  rmissions_sshd_p
│ │ │ +002754f0: 7269 7661 7465 5f6b 6579 0a20 202d 206c  rivate_key.  - l
│ │ │ +00275500: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ +00275510: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ +00275520: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ +00275530: 7269 7479 0a20 202d 206e 6f5f 7265 626f  rity.  - no_rebo
│ │ │ +00275540: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d  ot_needed..- nam
│ │ │ +00275550: 653a 2046 696e 6420 726f 6f74 3a73 7368  e: Find root:ssh
│ │ │ +00275560: 5f6b 6579 732d 6f77 6e65 6420 6b65 7973  _keys-owned keys
│ │ │ +00275570: 0a20 2061 6e73 6962 6c65 2e62 7569 6c74  .  ansible.built
│ │ │ +00275580: 696e 2e63 6f6d 6d61 6e64 3a20 6669 6e64  in.command: find
│ │ │ +00275590: 202d 4820 2f65 7463 2f73 7368 2f20 2d6d   -H /etc/ssh/ -m
│ │ │ +002755a0: 6178 6465 7074 6820 3120 2d75 7365 7220  axdepth 1 -user 
│ │ │ +002755b0: 726f 6f74 202d 7265 6765 7820 222e 2a5f  root -regex ".*_
│ │ │ +002755c0: 6b65 7924 220a 2020 2020 2d74 7970 6520  key$".    -type 
│ │ │ +002755d0: 6620 2d67 726f 7570 2073 7368 5f6b 6579  f -group ssh_key
│ │ │ +002755e0: 7320 2d70 6572 6d20 2f75 2b78 732c 672b  s -perm /u+xs,g+
│ │ │ +002755f0: 7877 7273 2c6f 2b78 7772 740a 2020 7265  xwrs,o+xwrt.  re
│ │ │ +00275600: 6769 7374 6572 3a20 6465 6469 6361 7465  gister: dedicate
│ │ │ +00275610: 645f 6772 6f75 705f 6f77 6e65 645f 6b65  d_group_owned_ke
│ │ │ +00275620: 7973 0a20 2063 6861 6e67 6564 5f77 6865  ys.  changed_whe
│ │ │ +00275630: 6e3a 2066 616c 7365 0a20 2066 6169 6c65  n: false.  faile
│ │ │ +00275640: 645f 7768 656e 3a20 6661 6c73 650a 2020  d_when: false.  
│ │ │ +00275650: 6368 6563 6b5f 6d6f 6465 3a20 6661 6c73  check_mode: fals
│ │ │ +00275660: 650a 2020 7768 656e 3a20 2722 6b65 726e  e.  when: '"kern
│ │ │ +00275670: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ +00275680: 6163 7473 2e70 6163 6b61 6765 7327 0a20  acts.packages'. 
│ │ │ +00275690: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ +002756a0: 3830 302d 3137 312d 332e 312e 3133 0a20  800-171-3.1.13. 
│ │ │ +002756b0: 202d 204e 4953 542d 3830 302d 3137 312d   - NIST-800-171-
│ │ │ +002756c0: 332e 3133 2e31 300a 2020 2d20 4e49 5354  3.13.10.  - NIST
│ │ │ +002756d0: 2d38 3030 2d35 332d 4143 2d31 3728 6129  -800-53-AC-17(a)
│ │ │ +002756e0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +002756f0: 2d41 432d 3628 3129 0a20 202d 204e 4953  -AC-6(1).  - NIS
│ │ │ +00275700: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ +00275710: 0a20 202d 2050 4349 2d44 5353 2d52 6571  .  - PCI-DSS-Req
│ │ │ +00275720: 2d32 2e32 2e34 0a20 202d 2050 4349 2d44  -2.2.4.  - PCI-D
│ │ │ +00275730: 5353 7634 2d32 2e32 0a20 202d 2050 4349  SSv4-2.2.  - PCI
│ │ │ +00275740: 2d44 5353 7634 2d32 2e32 2e36 0a20 202d  -DSSv4-2.2.6.  -
│ │ │ +00275750: 2063 6f6e 6669 6775 7265 5f73 7472 6174   configure_strat
│ │ │ +00275760: 6567 790a 2020 2d20 6669 6c65 5f70 6572  egy.  - file_per
│ │ │ +00275770: 6d69 7373 696f 6e73 5f73 7368 645f 7072  missions_sshd_pr
│ │ │ +00275780: 6976 6174 655f 6b65 790a 2020 2d20 6c6f  ivate_key.  - lo
│ │ │ +00275790: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ +002757a0: 206c 6f77 5f64 6973 7275 7074 696f 6e0a   low_disruption.
│ │ │ +002757b0: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ +002757c0: 6974 790a 2020 2d20 6e6f 5f72 6562 6f6f  ity.  - no_reboo
│ │ │ +002757d0: 745f 6e65 6564 6564 0a0a 2d20 6e61 6d65  t_needed..- name
│ │ │ +002757e0: 3a20 5365 7420 7065 726d 6973 7369 6f6e  : Set permission
│ │ │ +002757f0: 7320 666f 7220 726f 6f74 3a73 7368 5f6b  s for root:ssh_k
│ │ │ +00275800: 6579 732d 6f77 6e65 6420 6b65 7973 0a20  eys-owned keys. 
│ │ │ +00275810: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ +00275820: 2e66 696c 653a 0a20 2020 2070 6174 683a  .file:.    path:
│ │ │ +00275830: 2027 7b7b 2069 7465 6d20 7d7d 270a 2020   '{{ item }}'.  
│ │ │ +00275840: 2020 6d6f 6465 3a20 752d 7873 2c67 2d78    mode: u-xs,g-x
│ │ │ +00275850: 7772 732c 6f2d 7877 7274 0a20 2020 2073  wrs,o-xwrt.    s
│ │ │ +00275860: 7461 7465 3a20 6669 6c65 0a20 2077 6974  tate: file.  wit
│ │ │ +00275870: 685f 6974 656d 733a 0a20 202d 2027 7b7b  h_items:.  - '{{
│ │ │ +00275880: 2064 6564 6963 6174 6564 5f67 726f 7570   dedicated_group
│ │ │ +00275890: 5f6f 776e 6564 5f6b 6579 732e 7374 646f  _owned_keys.stdo
│ │ │ +002758a0: 7574 5f6c 696e 6573 207d 7d27 0a20 2077  ut_lines }}'.  w
│ │ │ +002758b0: 6865 6e3a 2027 226b 6572 6e65 6c22 2069  hen: '"kernel" i
│ │ │ +002758c0: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +002758d0: 7061 636b 6167 6573 270a 2020 7461 6773  packages'.  tags
│ │ │ +002758e0: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d31  :.  - NIST-800-1
│ │ │ +002758f0: 3731 2d33 2e31 2e31 330a 2020 2d20 4e49  71-3.1.13.  - NI
│ │ │ +00275900: 5354 2d38 3030 2d31 3731 2d33 2e31 332e  ST-800-171-3.13.
│ │ │ +00275910: 3130 0a20 202d 204e 4953 542d 3830 302d  10.  - NIST-800-
│ │ │ +00275920: 3533 2d41 432d 3137 2861 290a 2020 2d20  53-AC-17(a).  - 
│ │ │ +00275930: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ +00275940: 2831 290a 2020 2d20 4e49 5354 2d38 3030  (1).  - NIST-800
│ │ │ +00275950: 2d35 332d 434d 2d36 2861 290a 2020 2d20  -53-CM-6(a).  - 
│ │ │ +00275960: 5043 492d 4453 532d 5265 712d 322e 322e  PCI-DSS-Req-2.2.
│ │ │ +00275970: 340a 2020 2d20 5043 492d 4453 5376 342d  4.  - PCI-DSSv4-
│ │ │ +00275980: 322e 320a 2020 2d20 5043 492d 4453 5376  2.2.  - PCI-DSSv
│ │ │ +00275990: 342d 322e 322e 360a 2020 2d20 636f 6e66  4-2.2.6.  - conf
│ │ │ +002759a0: 6967 7572 655f 7374 7261 7465 6779 0a20  igure_strategy. 
│ │ │ +002759b0: 202d 2066 696c 655f 7065 726d 6973 7369   - file_permissi
│ │ │ +002759c0: 6f6e 735f 7373 6864 5f70 7269 7661 7465  ons_sshd_private
│ │ │ +002759d0: 5f6b 6579 0a20 202d 206c 6f77 5f63 6f6d  _key.  - low_com
│ │ │ +002759e0: 706c 6578 6974 790a 2020 2d20 6c6f 775f  plexity.  - low_
│ │ │ +002759f0: 6469 7372 7570 7469 6f6e 0a20 202d 206d  disruption.  - m
│ │ │ +00275a00: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ +00275a10: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ +00275a20: 6465 640a 3c2f 636f 6465 3e3c 2f70 7265  ded.
Remediation │ │ │ +00275ae0: 5075 7070 6574 2073 6e69 7070 6574 20e2 Puppet snippet . │ │ │ +00275af0: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
<
│ │ │ +00275b30: 636f 6465 3e0a 0a0a 696e 636c 7564 6520  code>...include 
│ │ │ +00275b40: 7373 685f 7072 6976 6174 655f 6b65 795f  ssh_private_key_
│ │ │ +00275b50: 7065 726d 730a 0a63 6c61 7373 2073 7368  perms..class ssh
│ │ │ +00275b60: 5f70 7269 7661 7465 5f6b 6579 5f70 6572  _private_key_per
│ │ │ +00275b70: 6d73 207b 0a20 2065 7865 6320 7b20 2773  ms {.  exec { 's
│ │ │ +00275b80: 7368 645f 7072 6976 5f6b 6579 273a 0a20  shd_priv_key':. 
│ │ │ +00275b90: 2020 2063 6f6d 6d61 6e64 203d 2667 743b     command =>
│ │ │ +00275ba0: 2022 6368 6d6f 6420 3036 3030 202f 6574   "chmod 0600 /et
│ │ │ +00275bb0: 632f 7373 682f 2a5f 6b65 7922 2c0a 2020  c/ssh/*_key",.  
│ │ │ +00275bc0: 2020 7061 7468 2020 2020 3d26 6774 3b20    path    => 
│ │ │ +00275bd0: 272f 6269 6e3a 2f75 7372 2f62 696e 270a  '/bin:/usr/bin'.
│ │ │ +00275be0: 2020 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70    }.}.

Remediatio │ │ │ -00277060: 6e20 5075 7070 6574 2073 6e69 7070 6574 n Puppet snippet │ │ │ -00277070: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
include s
│ │ │ -002770c0: 7368 5f70 7562 6c69 635f 6b65 795f 7065  sh_public_key_pe
│ │ │ -002770d0: 726d 730a 0a63 6c61 7373 2073 7368 5f70  rms..class ssh_p
│ │ │ -002770e0: 7562 6c69 635f 6b65 795f 7065 726d 7320  ublic_key_perms 
│ │ │ -002770f0: 7b0a 2020 6578 6563 207b 2027 7373 6864  {.  exec { 'sshd
│ │ │ -00277100: 5f70 7562 5f6b 6579 273a 0a20 2020 2063  _pub_key':.    c
│ │ │ -00277110: 6f6d 6d61 6e64 203d 2667 743b 2022 6368  ommand => "ch
│ │ │ -00277120: 6d6f 6420 3036 3434 202f 6574 632f 7373  mod 0644 /etc/ss
│ │ │ -00277130: 682f 2a2e 7075 6222 2c0a 2020 2020 7061  h/*.pub",.    pa
│ │ │ -00277140: 7468 2020 2020 3d26 6774 3b20 272f 6269  th    => '/bi
│ │ │ -00277150: 6e3a 2f75 7372 2f62 696e 270a 2020 7d0a  n:/usr/bin'.  }.
│ │ │ -00277160: 7d0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  }.
< │ │ │ -00277170: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation An │ │ │ -00277220: 7369 626c 6520 736e 6970 7065 7420 e287 sible snippet .. │ │ │ -00277230: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ -002772b0: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -002772d0: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -00277320: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
low
Disr │ │ │ -002772e0: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -002772f0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ -00277330: 7465 6779 3a3c 2f74 683e 3c74 643e 636f tegy:co │ │ │ -00277340: 6e66 6967 7572 653c 2f74 643e 3c2f 7472 nfigure
- name: Gath
│ │ │ -00277370: 6572 2074 6865 2070 6163 6b61 6765 2066  er the package f
│ │ │ -00277380: 6163 7473 0a20 2070 6163 6b61 6765 5f66  acts.  package_f
│ │ │ -00277390: 6163 7473 3a0a 2020 2020 6d61 6e61 6765  acts:.    manage
│ │ │ -002773a0: 723a 2061 7574 6f0a 2020 7461 6773 3a0a  r: auto.  tags:.
│ │ │ -002773b0: 2020 2d20 4e49 5354 2d38 3030 2d31 3731    - NIST-800-171
│ │ │ -002773c0: 2d33 2e31 2e31 330a 2020 2d20 4e49 5354  -3.1.13.  - NIST
│ │ │ -002773d0: 2d38 3030 2d31 3731 2d33 2e31 332e 3130  -800-171-3.13.10
│ │ │ -002773e0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -002773f0: 2d41 432d 3137 2861 290a 2020 2d20 4e49  -AC-17(a).  - NI
│ │ │ -00277400: 5354 2d38 3030 2d35 332d 4143 2d36 2831  ST-800-53-AC-6(1
│ │ │ -00277410: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -00277420: 332d 434d 2d36 2861 290a 2020 2d20 5043  3-CM-6(a).  - PC
│ │ │ -00277430: 492d 4453 532d 5265 712d 322e 322e 340a  I-DSS-Req-2.2.4.
│ │ │ -00277440: 2020 2d20 5043 492d 4453 5376 342d 322e    - PCI-DSSv4-2.
│ │ │ -00277450: 320a 2020 2d20 5043 492d 4453 5376 342d  2.  - PCI-DSSv4-
│ │ │ -00277460: 322e 322e 360a 2020 2d20 636f 6e66 6967  2.2.6.  - config
│ │ │ -00277470: 7572 655f 7374 7261 7465 6779 0a20 202d  ure_strategy.  -
│ │ │ -00277480: 2066 696c 655f 7065 726d 6973 7369 6f6e   file_permission
│ │ │ -00277490: 735f 7373 6864 5f70 7562 5f6b 6579 0a20  s_sshd_pub_key. 
│ │ │ -002774a0: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ -002774b0: 790a 2020 2d20 6c6f 775f 6469 7372 7570  y.  - low_disrup
│ │ │ -002774c0: 7469 6f6e 0a20 202d 206d 6564 6975 6d5f  tion.  - medium_
│ │ │ -002774d0: 7365 7665 7269 7479 0a20 202d 206e 6f5f  severity.  - no_
│ │ │ -002774e0: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ -002774f0: 206e 616d 653a 2046 696e 6420 2f65 7463   name: Find /etc
│ │ │ -00277500: 2f73 7368 2f20 6669 6c65 2873 290a 2020  /ssh/ file(s).  
│ │ │ -00277510: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ -00277520: 636f 6d6d 616e 643a 2066 696e 6420 2d50  command: find -P
│ │ │ -00277530: 202f 6574 632f 7373 682f 202d 6d61 7864   /etc/ssh/ -maxd
│ │ │ -00277540: 6570 7468 2031 202d 7065 726d 202f 752b  epth 1 -perm /u+
│ │ │ -00277550: 7873 2c67 2b78 7773 2c6f 2b78 7774 2020  xs,g+xws,o+xwt  
│ │ │ -00277560: 2d74 7970 650a 2020 2020 6620 2d72 6567  -type.    f -reg
│ │ │ -00277570: 6578 7479 7065 2070 6f73 6978 2d65 7874  extype posix-ext
│ │ │ -00277580: 656e 6465 6420 2d72 6567 6578 2022 5e2e  ended -regex "^.
│ │ │ -00277590: 2a5c 2e70 7562 2422 0a20 2072 6567 6973  *\.pub$".  regis
│ │ │ -002775a0: 7465 723a 2066 696c 6573 5f66 6f75 6e64  ter: files_found
│ │ │ -002775b0: 0a20 2063 6861 6e67 6564 5f77 6865 6e3a  .  changed_when:
│ │ │ -002775c0: 2066 616c 7365 0a20 2066 6169 6c65 645f   false.  failed_
│ │ │ -002775d0: 7768 656e 3a20 6661 6c73 650a 2020 6368  when: false.  ch
│ │ │ -002775e0: 6563 6b5f 6d6f 6465 3a20 6661 6c73 650a  eck_mode: false.
│ │ │ -002775f0: 2020 7768 656e 3a20 2722 6b65 726e 656c    when: '"kernel
│ │ │ -00277600: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -00277610: 7473 2e70 6163 6b61 6765 7327 0a20 2074  ts.packages'.  t
│ │ │ -00277620: 6167 733a 0a20 202d 204e 4953 542d 3830  ags:.  - NIST-80
│ │ │ -00277630: 302d 3137 312d 332e 312e 3133 0a20 202d  0-171-3.1.13.  -
│ │ │ -00277640: 204e 4953 542d 3830 302d 3137 312d 332e   NIST-800-171-3.
│ │ │ -00277650: 3133 2e31 300a 2020 2d20 4e49 5354 2d38  13.10.  - NIST-8
│ │ │ -00277660: 3030 2d35 332d 4143 2d31 3728 6129 0a20  00-53-AC-17(a). 
│ │ │ -00277670: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ -00277680: 432d 3628 3129 0a20 202d 204e 4953 542d  C-6(1).  - NIST-
│ │ │ -00277690: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ -002776a0: 202d 2050 4349 2d44 5353 2d52 6571 2d32   - PCI-DSS-Req-2
│ │ │ -002776b0: 2e32 2e34 0a20 202d 2050 4349 2d44 5353  .2.4.  - PCI-DSS
│ │ │ -002776c0: 7634 2d32 2e32 0a20 202d 2050 4349 2d44  v4-2.2.  - PCI-D
│ │ │ -002776d0: 5353 7634 2d32 2e32 2e36 0a20 202d 2063  SSv4-2.2.6.  - c
│ │ │ -002776e0: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ -002776f0: 790a 2020 2d20 6669 6c65 5f70 6572 6d69  y.  - file_permi
│ │ │ -00277700: 7373 696f 6e73 5f73 7368 645f 7075 625f  ssions_sshd_pub_
│ │ │ -00277710: 6b65 790a 2020 2d20 6c6f 775f 636f 6d70  key.  - low_comp
│ │ │ -00277720: 6c65 7869 7479 0a20 202d 206c 6f77 5f64  lexity.  - low_d
│ │ │ -00277730: 6973 7275 7074 696f 6e0a 2020 2d20 6d65  isruption.  - me
│ │ │ -00277740: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ -00277750: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ -00277760: 6564 0a0a 2d20 6e61 6d65 3a20 5365 7420  ed..- name: Set 
│ │ │ -00277770: 7065 726d 6973 7369 6f6e 7320 666f 7220  permissions for 
│ │ │ -00277780: 2f65 7463 2f73 7368 2f20 6669 6c65 2873  /etc/ssh/ file(s
│ │ │ -00277790: 290a 2020 616e 7369 626c 652e 6275 696c  ).  ansible.buil
│ │ │ -002777a0: 7469 6e2e 6669 6c65 3a0a 2020 2020 7061  tin.file:.    pa
│ │ │ -002777b0: 7468 3a20 277b 7b20 6974 656d 207d 7d27  th: '{{ item }}'
│ │ │ -002777c0: 0a20 2020 206d 6f64 653a 2075 2d78 732c  .    mode: u-xs,
│ │ │ -002777d0: 672d 7877 732c 6f2d 7877 740a 2020 2020  g-xws,o-xwt.    
│ │ │ -002777e0: 7374 6174 653a 2066 696c 650a 2020 7769  state: file.  wi
│ │ │ -002777f0: 7468 5f69 7465 6d73 3a0a 2020 2d20 277b  th_items:.  - '{
│ │ │ -00277800: 7b20 6669 6c65 735f 666f 756e 642e 7374  { files_found.st
│ │ │ -00277810: 646f 7574 5f6c 696e 6573 207d 7d27 0a20  dout_lines }}'. 
│ │ │ -00277820: 2077 6865 6e3a 2027 226b 6572 6e65 6c22   when: '"kernel"
│ │ │ -00277830: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -00277840: 732e 7061 636b 6167 6573 270a 2020 7461  s.packages'.  ta
│ │ │ -00277850: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030  gs:.  - NIST-800
│ │ │ -00277860: 2d31 3731 2d33 2e31 2e31 330a 2020 2d20  -171-3.1.13.  - 
│ │ │ -00277870: 4e49 5354 2d38 3030 2d31 3731 2d33 2e31  NIST-800-171-3.1
│ │ │ -00277880: 332e 3130 0a20 202d 204e 4953 542d 3830  3.10.  - NIST-80
│ │ │ -00277890: 302d 3533 2d41 432d 3137 2861 290a 2020  0-53-AC-17(a).  
│ │ │ -002778a0: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ -002778b0: 2d36 2831 290a 2020 2d20 4e49 5354 2d38  -6(1).  - NIST-8
│ │ │ -002778c0: 3030 2d35 332d 434d 2d36 2861 290a 2020  00-53-CM-6(a).  
│ │ │ -002778d0: 2d20 5043 492d 4453 532d 5265 712d 322e  - PCI-DSS-Req-2.
│ │ │ -002778e0: 322e 340a 2020 2d20 5043 492d 4453 5376  2.4.  - PCI-DSSv
│ │ │ -002778f0: 342d 322e 320a 2020 2d20 5043 492d 4453  4-2.2.  - PCI-DS
│ │ │ -00277900: 5376 342d 322e 322e 360a 2020 2d20 636f  Sv4-2.2.6.  - co
│ │ │ -00277910: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ -00277920: 0a20 202d 2066 696c 655f 7065 726d 6973  .  - file_permis
│ │ │ -00277930: 7369 6f6e 735f 7373 6864 5f70 7562 5f6b  sions_sshd_pub_k
│ │ │ -00277940: 6579 0a20 202d 206c 6f77 5f63 6f6d 706c  ey.  - low_compl
│ │ │ -00277950: 6578 6974 790a 2020 2d20 6c6f 775f 6469  exity.  - low_di
│ │ │ -00277960: 7372 7570 7469 6f6e 0a20 202d 206d 6564  sruption.  - med
│ │ │ -00277970: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ -00277980: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ -00277990: 640a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  d.
< │ │ │ +00277060: 6e20 416e 7369 626c 6520 736e 6970 7065 n Ansible snippe │ │ │ +00277070: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ +002770f0: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ +00277100: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ +00277120: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ +00277130: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ +00277150: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ +00277170: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:configure │ │ │ +00277190: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072 - name: │ │ │ +002771b0: 4761 7468 6572 2074 6865 2070 6163 6b61 Gather the packa │ │ │ +002771c0: 6765 2066 6163 7473 0a20 2070 6163 6b61 ge facts. packa │ │ │ +002771d0: 6765 5f66 6163 7473 3a0a 2020 2020 6d61 ge_facts:. ma │ │ │ +002771e0: 6e61 6765 723a 2061 7574 6f0a 2020 7461 nager: auto. ta │ │ │ +002771f0: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030 gs:. - NIST-800 │ │ │ +00277200: 2d31 3731 2d33 2e31 2e31 330a 2020 2d20 -171-3.1.13. - │ │ │ +00277210: 4e49 5354 2d38 3030 2d31 3731 2d33 2e31 NIST-800-171-3.1 │ │ │ +00277220: 332e 3130 0a20 202d 204e 4953 542d 3830 3.10. - NIST-80 │ │ │ +00277230: 302d 3533 2d41 432d 3137 2861 290a 2020 0-53-AC-17(a). │ │ │ +00277240: 2d20 4e49 5354 2d38 3030 2d35 332d 4143 - NIST-800-53-AC │ │ │ +00277250: 2d36 2831 290a 2020 2d20 4e49 5354 2d38 -6(1). - NIST-8 │ │ │ +00277260: 3030 2d35 332d 434d 2d36 2861 290a 2020 00-53-CM-6(a). │ │ │ +00277270: 2d20 5043 492d 4453 532d 5265 712d 322e - PCI-DSS-Req-2. │ │ │ +00277280: 322e 340a 2020 2d20 5043 492d 4453 5376 2.4. - PCI-DSSv │ │ │ +00277290: 342d 322e 320a 2020 2d20 5043 492d 4453 4-2.2. - PCI-DS │ │ │ +002772a0: 5376 342d 322e 322e 360a 2020 2d20 636f Sv4-2.2.6. - co │ │ │ +002772b0: 6e66 6967 7572 655f 7374 7261 7465 6779 nfigure_strategy │ │ │ +002772c0: 0a20 202d 2066 696c 655f 7065 726d 6973 . - file_permis │ │ │ +002772d0: 7369 6f6e 735f 7373 6864 5f70 7562 5f6b sions_sshd_pub_k │ │ │ +002772e0: 6579 0a20 202d 206c 6f77 5f63 6f6d 706c ey. - low_compl │ │ │ +002772f0: 6578 6974 790a 2020 2d20 6c6f 775f 6469 exity. - low_di │ │ │ +00277300: 7372 7570 7469 6f6e 0a20 202d 206d 6564 sruption. - med │ │ │ +00277310: 6975 6d5f 7365 7665 7269 7479 0a20 202d ium_severity. - │ │ │ +00277320: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465 no_reboot_neede │ │ │ +00277330: 640a 0a2d 206e 616d 653a 2046 696e 6420 d..- name: Find │ │ │ +00277340: 2f65 7463 2f73 7368 2f20 6669 6c65 2873 /etc/ssh/ file(s │ │ │ +00277350: 290a 2020 616e 7369 626c 652e 6275 696c ). ansible.buil │ │ │ +00277360: 7469 6e2e 636f 6d6d 616e 643a 2066 696e tin.command: fin │ │ │ +00277370: 6420 2d50 202f 6574 632f 7373 682f 202d d -P /etc/ssh/ - │ │ │ +00277380: 6d61 7864 6570 7468 2031 202d 7065 726d maxdepth 1 -perm │ │ │ +00277390: 202f 752b 7873 2c67 2b78 7773 2c6f 2b78 /u+xs,g+xws,o+x │ │ │ +002773a0: 7774 2020 2d74 7970 650a 2020 2020 6620 wt -type. f │ │ │ +002773b0: 2d72 6567 6578 7479 7065 2070 6f73 6978 -regextype posix │ │ │ +002773c0: 2d65 7874 656e 6465 6420 2d72 6567 6578 -extended -regex │ │ │ +002773d0: 2022 5e2e 2a5c 2e70 7562 2422 0a20 2072 "^.*\.pub$". r │ │ │ +002773e0: 6567 6973 7465 723a 2066 696c 6573 5f66 egister: files_f │ │ │ +002773f0: 6f75 6e64 0a20 2063 6861 6e67 6564 5f77 ound. changed_w │ │ │ +00277400: 6865 6e3a 2066 616c 7365 0a20 2066 6169 hen: false. fai │ │ │ +00277410: 6c65 645f 7768 656e 3a20 6661 6c73 650a led_when: false. │ │ │ +00277420: 2020 6368 6563 6b5f 6d6f 6465 3a20 6661 check_mode: fa │ │ │ +00277430: 6c73 650a 2020 7768 656e 3a20 2722 6b65 lse. when: '"ke │ │ │ +00277440: 726e 656c 2220 696e 2061 6e73 6962 6c65 rnel" in ansible │ │ │ +00277450: 5f66 6163 7473 2e70 6163 6b61 6765 7327 _facts.packages' │ │ │ +00277460: 0a20 2074 6167 733a 0a20 202d 204e 4953 . tags:. - NIS │ │ │ +00277470: 542d 3830 302d 3137 312d 332e 312e 3133 T-800-171-3.1.13 │ │ │ +00277480: 0a20 202d 204e 4953 542d 3830 302d 3137 . - NIST-800-17 │ │ │ +00277490: 312d 332e 3133 2e31 300a 2020 2d20 4e49 1-3.13.10. - NI │ │ │ +002774a0: 5354 2d38 3030 2d35 332d 4143 2d31 3728 ST-800-53-AC-17( │ │ │ +002774b0: 6129 0a20 202d 204e 4953 542d 3830 302d a). - NIST-800- │ │ │ +002774c0: 3533 2d41 432d 3628 3129 0a20 202d 204e 53-AC-6(1). - N │ │ │ +002774d0: 4953 542d 3830 302d 3533 2d43 4d2d 3628 IST-800-53-CM-6( │ │ │ +002774e0: 6129 0a20 202d 2050 4349 2d44 5353 2d52 a). - PCI-DSS-R │ │ │ +002774f0: 6571 2d32 2e32 2e34 0a20 202d 2050 4349 eq-2.2.4. - PCI │ │ │ +00277500: 2d44 5353 7634 2d32 2e32 0a20 202d 2050 -DSSv4-2.2. - P │ │ │ +00277510: 4349 2d44 5353 7634 2d32 2e32 2e36 0a20 CI-DSSv4-2.2.6. │ │ │ +00277520: 202d 2063 6f6e 6669 6775 7265 5f73 7472 - configure_str │ │ │ +00277530: 6174 6567 790a 2020 2d20 6669 6c65 5f70 ategy. - file_p │ │ │ +00277540: 6572 6d69 7373 696f 6e73 5f73 7368 645f ermissions_sshd_ │ │ │ +00277550: 7075 625f 6b65 790a 2020 2d20 6c6f 775f pub_key. - low_ │ │ │ +00277560: 636f 6d70 6c65 7869 7479 0a20 202d 206c complexity. - l │ │ │ +00277570: 6f77 5f64 6973 7275 7074 696f 6e0a 2020 ow_disruption. │ │ │ +00277580: 2d20 6d65 6469 756d 5f73 6576 6572 6974 - medium_severit │ │ │ +00277590: 790a 2020 2d20 6e6f 5f72 6562 6f6f 745f y. - no_reboot_ │ │ │ +002775a0: 6e65 6564 6564 0a0a 2d20 6e61 6d65 3a20 needed..- name: │ │ │ +002775b0: 5365 7420 7065 726d 6973 7369 6f6e 7320 Set permissions │ │ │ +002775c0: 666f 7220 2f65 7463 2f73 7368 2f20 6669 for /etc/ssh/ fi │ │ │ +002775d0: 6c65 2873 290a 2020 616e 7369 626c 652e le(s). ansible. │ │ │ +002775e0: 6275 696c 7469 6e2e 6669 6c65 3a0a 2020 builtin.file:. │ │ │ +002775f0: 2020 7061 7468 3a20 277b 7b20 6974 656d path: '{{ item │ │ │ +00277600: 207d 7d27 0a20 2020 206d 6f64 653a 2075 }}'. mode: u │ │ │ +00277610: 2d78 732c 672d 7877 732c 6f2d 7877 740a -xs,g-xws,o-xwt. │ │ │ +00277620: 2020 2020 7374 6174 653a 2066 696c 650a state: file. │ │ │ +00277630: 2020 7769 7468 5f69 7465 6d73 3a0a 2020 with_items:. │ │ │ +00277640: 2d20 277b 7b20 6669 6c65 735f 666f 756e - '{{ files_foun │ │ │ +00277650: 642e 7374 646f 7574 5f6c 696e 6573 207d d.stdout_lines } │ │ │ +00277660: 7d27 0a20 2077 6865 6e3a 2027 226b 6572 }'. when: '"ker │ │ │ +00277670: 6e65 6c22 2069 6e20 616e 7369 626c 655f nel" in ansible_ │ │ │ +00277680: 6661 6374 732e 7061 636b 6167 6573 270a facts.packages'. │ │ │ +00277690: 2020 7461 6773 3a0a 2020 2d20 4e49 5354 tags:. - NIST │ │ │ +002776a0: 2d38 3030 2d31 3731 2d33 2e31 2e31 330a -800-171-3.1.13. │ │ │ +002776b0: 2020 2d20 4e49 5354 2d38 3030 2d31 3731 - NIST-800-171 │ │ │ +002776c0: 2d33 2e31 332e 3130 0a20 202d 204e 4953 -3.13.10. - NIS │ │ │ +002776d0: 542d 3830 302d 3533 2d41 432d 3137 2861 T-800-53-AC-17(a │ │ │ +002776e0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35 ). - NIST-800-5 │ │ │ +002776f0: 332d 4143 2d36 2831 290a 2020 2d20 4e49 3-AC-6(1). - NI │ │ │ +00277700: 5354 2d38 3030 2d35 332d 434d 2d36 2861 ST-800-53-CM-6(a │ │ │ +00277710: 290a 2020 2d20 5043 492d 4453 532d 5265 ). - PCI-DSS-Re │ │ │ +00277720: 712d 322e 322e 340a 2020 2d20 5043 492d q-2.2.4. - PCI- │ │ │ +00277730: 4453 5376 342d 322e 320a 2020 2d20 5043 DSSv4-2.2. - PC │ │ │ +00277740: 492d 4453 5376 342d 322e 322e 360a 2020 I-DSSv4-2.2.6. │ │ │ +00277750: 2d20 636f 6e66 6967 7572 655f 7374 7261 - configure_stra │ │ │ +00277760: 7465 6779 0a20 202d 2066 696c 655f 7065 tegy. - file_pe │ │ │ +00277770: 726d 6973 7369 6f6e 735f 7373 6864 5f70 rmissions_sshd_p │ │ │ +00277780: 7562 5f6b 6579 0a20 202d 206c 6f77 5f63 ub_key. - low_c │ │ │ +00277790: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f omplexity. - lo │ │ │ +002777a0: 775f 6469 7372 7570 7469 6f6e 0a20 202d w_disruption. - │ │ │ +002777b0: 206d 6564 6975 6d5f 7365 7665 7269 7479 medium_severity │ │ │ +002777c0: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e . - no_reboot_n │ │ │ +002777d0: 6565 6465 640a 3c2f 636f 6465 3e3c 2f70 eeded.

Remediatio │ │ │ +00277890: 6e20 5075 7070 6574 2073 6e69 7070 6574 n Puppet snippet │ │ │ +002778a0: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
include s
│ │ │ +002778f0: 7368 5f70 7562 6c69 635f 6b65 795f 7065  sh_public_key_pe
│ │ │ +00277900: 726d 730a 0a63 6c61 7373 2073 7368 5f70  rms..class ssh_p
│ │ │ +00277910: 7562 6c69 635f 6b65 795f 7065 726d 7320  ublic_key_perms 
│ │ │ +00277920: 7b0a 2020 6578 6563 207b 2027 7373 6864  {.  exec { 'sshd
│ │ │ +00277930: 5f70 7562 5f6b 6579 273a 0a20 2020 2063  _pub_key':.    c
│ │ │ +00277940: 6f6d 6d61 6e64 203d 2667 743b 2022 6368  ommand => "ch
│ │ │ +00277950: 6d6f 6420 3036 3434 202f 6574 632f 7373  mod 0644 /etc/ss
│ │ │ +00277960: 682f 2a2e 7075 6222 2c0a 2020 2020 7061  h/*.pub",.    pa
│ │ │ +00277970: 7468 2020 2020 3d26 6774 3b20 272f 6269  th    => '/bi
│ │ │ +00277980: 6e3a 2f75 7372 2f62 696e 270a 2020 7d0a  n:/usr/bin'.  }.
│ │ │ +00277990: 7d0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  }.
< │ │ │ 002779a0: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div> '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: │ │ │ │ @@ -1071,38 +1071,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: │ │ │ │ @@ -1129,14 +1105,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 │ │ │ │ @@ -1144,14 +1137,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 │ │ │ │ @@ -14644,31 +14644,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: │ │ │ │ @@ -14703,14 +14686,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 │ │ │ │ @@ -15563,38 +15563,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: │ │ │ │ @@ -15617,14 +15593,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 │ │ │ │ @@ -15632,14 +15625,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 │ │ │ │ @@ -25381,21 +25381,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: │ │ │ │ @@ -25580,14 +25573,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 │ │ │ │ @@ -25607,21 +25607,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: │ │ │ │ @@ -25842,14 +25835,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 │ │ │ │ @@ -25868,21 +25868,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: │ │ │ │ @@ -26102,14 +26095,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 │ │ │ │ @@ -26128,21 +26128,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: │ │ │ │ @@ -26362,14 +26355,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 │ │ │ │ @@ -26389,21 +26389,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: │ │ │ │ @@ -26624,14 +26617,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. │ │ │ │ @@ -26640,21 +26640,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: │ │ │ │ @@ -26879,14 +26872,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 │ │ │ │ @@ -26894,21 +26894,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: │ │ │ │ @@ -27133,14 +27126,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 │ │ │ │ @@ -27148,21 +27148,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: │ │ │ │ @@ -27387,14 +27380,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. │ │ │ │ @@ -27402,21 +27402,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: │ │ │ │ @@ -27638,14 +27631,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 │ │ │ │ @@ -27653,21 +27653,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: │ │ │ │ @@ -27890,14 +27883,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 │ │ │ │ @@ -27905,21 +27905,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: │ │ │ │ @@ -28142,14 +28135,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. │ │ │ │ @@ -28157,21 +28157,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: │ │ │ │ @@ -28390,30 +28383,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: │ │ │ │ @@ -28598,31 +28591,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: │ │ │ │ @@ -28808,31 +28801,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: │ │ │ │ @@ -29019,32 +29012,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: │ │ │ │ @@ -29231,14 +29224,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 │ │ │ │ @@ -30119,38 +30119,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: │ │ │ │ @@ -30175,14 +30151,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 │ │ │ │ @@ -30190,45 +30183,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: │ │ │ │ @@ -30249,14 +30228,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 │ │ │ │ @@ -30271,46 +30263,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: │ │ │ │ @@ -30331,14 +30310,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 │ │ │ │ @@ -30353,14 +30345,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 │ │ │ │ @@ -30923,35 +30923,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: │ │ │ │ @@ -30963,14 +30942,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 │ │ │ │ @@ -30979,14 +30971,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 │ │ │ │ @@ -31765,31 +31765,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: │ │ │ │ @@ -31824,14 +31807,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 │ │ │ │ @@ -33629,35 +33629,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: │ │ │ │ @@ -33671,14 +33650,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 │ │ │ │ @@ -33687,14 +33679,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 │ │ │ │ @@ -33716,35 +33716,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: │ │ │ │ @@ -33756,14 +33735,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 │ │ │ │ @@ -33772,61 +33764,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 │ │ │ │ @@ -33835,14 +33827,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, │ │ │ │ @@ -33866,35 +33866,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: │ │ │ │ @@ -33910,14 +33889,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 │ │ │ │ @@ -33926,49 +33918,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: │ │ │ │ @@ -33979,14 +33958,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 │ │ │ │ @@ -33995,14 +33987,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 │ │ │ │ @@ -34028,35 +34028,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: │ │ │ │ @@ -34068,14 +34047,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 │ │ │ │ @@ -34084,14 +34076,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 │ │ │ │ @@ -34106,35 +34106,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: │ │ │ │ @@ -34146,14 +34125,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 │ │ │ │ @@ -34162,65 +34154,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 │ │ │ │ @@ -34229,62 +34221,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 │ │ │ │ @@ -34293,14 +34285,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 │ │ │ │ @@ -34317,51 +34317,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 │ │ │ │ @@ -34370,14 +34362,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 │ │ │ │ @@ -34545,31 +34545,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: │ │ │ │ @@ -34623,14 +34606,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 │ │ │ │ @@ -34678,31 +34678,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: │ │ │ │ @@ -34759,14 +34742,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 │ │ │ │ @@ -35481,35 +35481,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: │ │ │ │ @@ -35524,14 +35503,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 │ │ │ │ @@ -35540,14 +35532,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 │ │ │ │ @@ -35555,35 +35555,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: │ │ │ │ @@ -35595,14 +35574,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 │ │ │ │ @@ -35611,14 +35603,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: │ │ │ │ @@ -35646,35 +35646,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: │ │ │ │ @@ -35688,14 +35667,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 │ │ │ │ @@ -35704,59 +35696,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 │ │ │ │ @@ -35765,14 +35757,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. │ │ │ │ │ │ │ │ @@ -35792,35 +35792,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: │ │ │ │ @@ -35832,14 +35811,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 │ │ │ │ @@ -35848,14 +35840,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 │ │ │ │ @@ -35865,51 +35865,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 │ │ │ │ @@ -35918,14 +35910,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. │ │ │ │ @@ -35937,51 +35937,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 │ │ │ │ @@ -35990,14 +35982,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 │ │ │ │ @@ -36009,35 +36009,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: │ │ │ │ @@ -36048,14 +36027,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 │ │ │ │ @@ -36064,40 +36056,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: │ │ │ │ @@ -36148,14 +36131,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 │ │ │ │ @@ -41034,26 +41034,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 0600 /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: │ │ │ │ @@ -41165,14 +41153,26 @@ │ │ │ │ - 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 0600 /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 │ │ │ │ @@ -41211,23 +41211,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: │ │ │ │ @@ -41291,14 +41282,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>Rem │ │ │ -00090c40: 6564 6961 7469 6f6e 204f 5342 7569 6c64 ediation OSBuild │ │ │ -00090c50: 2042 6c75 6570 7269 6e74 2073 6e69 7070 Blueprint snipp │ │ │ -00090c60: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
.[[packa │ │ │ -00090cb0: 6765 735d 5d0a 6e61 6d65 203d 2022 6c6f ges]].name = "lo │ │ │ -00090cc0: 6772 6f74 6174 6522 0a76 6572 7369 6f6e grotate".version │ │ │ -00090cd0: 203d 2022 2a22 0a3c 2f63 6f64 653e 3c2f = "*".
Remediatio │ │ │ -00090d90: 6e20 5075 7070 6574 2073 6e69 7070 6574 n Puppet snippet │ │ │ -00090da0: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Complexity: │ │ │ -00090e30: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ -00090e50: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:low< │ │ │ -00090e70: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:falseSt │ │ │ -00090ea0: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ -00090eb0: 656e 6162 6c65 3c2f 7464 3e3c 2f74 723e enable │ │ │ -00090ec0: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
include insta
│ │ │ -00090ee0: 6c6c 5f6c 6f67 726f 7461 7465 0a0a 636c  ll_logrotate..cl
│ │ │ -00090ef0: 6173 7320 696e 7374 616c 6c5f 6c6f 6772  ass install_logr
│ │ │ -00090f00: 6f74 6174 6520 7b0a 2020 7061 636b 6167  otate {.  packag
│ │ │ -00090f10: 6520 7b20 276c 6f67 726f 7461 7465 273a  e { 'logrotate':
│ │ │ -00090f20: 0a20 2020 2065 6e73 7572 6520 3d26 6774  .    ensure =>
│ │ │ -00090f30: 3b20 2769 6e73 7461 6c6c 6564 272c 0a20  ; 'installed',. 
│ │ │ -00090f40: 207d 0a7d 0a3c 2f63 6f64 653e 3c2f 7072   }.}.
Remediation │ │ │ -00091000: 2041 6e73 6962 6c65 2073 6e69 7070 6574 Ansible snippet │ │ │ -00091010: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Complexity │ │ │ -000910a0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ -000910c0: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ -000910d0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -000910e0: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ -000910f0: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ -00091110: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:enable
- name: Gath
│ │ │ -00091150: 6572 2074 6865 2070 6163 6b61 6765 2066  er the package f
│ │ │ -00091160: 6163 7473 0a20 2070 6163 6b61 6765 5f66  acts.  package_f
│ │ │ -00091170: 6163 7473 3a0a 2020 2020 6d61 6e61 6765  acts:.    manage
│ │ │ -00091180: 723a 2061 7574 6f0a 2020 7461 6773 3a0a  r: auto.  tags:.
│ │ │ -00091190: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -000911a0: 434d 2d36 2861 290a 2020 2d20 5043 492d  CM-6(a).  - PCI-
│ │ │ -000911b0: 4453 532d 5265 712d 3130 2e37 0a20 202d  DSS-Req-10.7.  -
│ │ │ -000911c0: 2050 4349 2d44 5353 7634 2d31 302e 350a   PCI-DSSv4-10.5.
│ │ │ -000911d0: 2020 2d20 5043 492d 4453 5376 342d 3130    - PCI-DSSv4-10
│ │ │ -000911e0: 2e35 2e31 0a20 202d 2065 6e61 626c 655f  .5.1.  - enable_
│ │ │ -000911f0: 7374 7261 7465 6779 0a20 202d 206c 6f77  strategy.  - low
│ │ │ -00091200: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ -00091210: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ -00091220: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ -00091230: 7479 0a20 202d 206e 6f5f 7265 626f 6f74  ty.  - no_reboot
│ │ │ -00091240: 5f6e 6565 6465 640a 2020 2d20 7061 636b  _needed.  - pack
│ │ │ -00091250: 6167 655f 6c6f 6772 6f74 6174 655f 696e  age_logrotate_in
│ │ │ -00091260: 7374 616c 6c65 640a 0a2d 206e 616d 653a  stalled..- name:
│ │ │ -00091270: 2045 6e73 7572 6520 6c6f 6772 6f74 6174   Ensure logrotat
│ │ │ -00091280: 6520 6973 2069 6e73 7461 6c6c 6564 0a20  e is installed. 
│ │ │ -00091290: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ -000912a0: 2e70 6163 6b61 6765 3a0a 2020 2020 6e61  .package:.    na
│ │ │ -000912b0: 6d65 3a20 6c6f 6772 6f74 6174 650a 2020  me: logrotate.  
│ │ │ -000912c0: 2020 7374 6174 653a 2070 7265 7365 6e74    state: present
│ │ │ -000912d0: 0a20 2077 6865 6e3a 2027 226b 6572 6e65  .  when: '"kerne
│ │ │ -000912e0: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ -000912f0: 6374 732e 7061 636b 6167 6573 270a 2020  cts.packages'.  
│ │ │ -00091300: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38  tags:.  - NIST-8
│ │ │ -00091310: 3030 2d35 332d 434d 2d36 2861 290a 2020  00-53-CM-6(a).  
│ │ │ -00091320: 2d20 5043 492d 4453 532d 5265 712d 3130  - PCI-DSS-Req-10
│ │ │ -00091330: 2e37 0a20 202d 2050 4349 2d44 5353 7634  .7.  - PCI-DSSv4
│ │ │ -00091340: 2d31 302e 350a 2020 2d20 5043 492d 4453  -10.5.  - PCI-DS
│ │ │ -00091350: 5376 342d 3130 2e35 2e31 0a20 202d 2065  Sv4-10.5.1.  - e
│ │ │ -00091360: 6e61 626c 655f 7374 7261 7465 6779 0a20  nable_strategy. 
│ │ │ -00091370: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ -00091380: 790a 2020 2d20 6c6f 775f 6469 7372 7570  y.  - low_disrup
│ │ │ -00091390: 7469 6f6e 0a20 202d 206d 6564 6975 6d5f  tion.  - medium_
│ │ │ -000913a0: 7365 7665 7269 7479 0a20 202d 206e 6f5f  severity.  - no_
│ │ │ -000913b0: 7265 626f 6f74 5f6e 6565 6465 640a 2020  reboot_needed.  
│ │ │ -000913c0: 2d20 7061 636b 6167 655f 6c6f 6772 6f74  - package_logrot
│ │ │ -000913d0: 6174 655f 696e 7374 616c 6c65 640a 3c2f  ate_installed.
│ │ │ +00090c60: 3c62 723e 3c64 6976 2063 6c61 7373 3d22  
Com │ │ │ +00090ce0: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ +00090d10: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ +00090d30: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +00090d40: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ +00090d60: 2f74 683e 3c74 643e 656e 6162 6c65 3c2f /th>enable
│ │ │ +00090d80: 3c70 7265 3e3c 636f 6465 3e2d 206e 616d
- nam
│ │ │ +00090d90: 653a 2047 6174 6865 7220 7468 6520 7061  e: Gather the pa
│ │ │ +00090da0: 636b 6167 6520 6661 6374 730a 2020 7061  ckage facts.  pa
│ │ │ +00090db0: 636b 6167 655f 6661 6374 733a 0a20 2020  ckage_facts:.   
│ │ │ +00090dc0: 206d 616e 6167 6572 3a20 6175 746f 0a20   manager: auto. 
│ │ │ +00090dd0: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ +00090de0: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ +00090df0: 202d 2050 4349 2d44 5353 2d52 6571 2d31   - PCI-DSS-Req-1
│ │ │ +00090e00: 302e 370a 2020 2d20 5043 492d 4453 5376  0.7.  - PCI-DSSv
│ │ │ +00090e10: 342d 3130 2e35 0a20 202d 2050 4349 2d44  4-10.5.  - PCI-D
│ │ │ +00090e20: 5353 7634 2d31 302e 352e 310a 2020 2d20  SSv4-10.5.1.  - 
│ │ │ +00090e30: 656e 6162 6c65 5f73 7472 6174 6567 790a  enable_strategy.
│ │ │ +00090e40: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ +00090e50: 7479 0a20 202d 206c 6f77 5f64 6973 7275  ty.  - low_disru
│ │ │ +00090e60: 7074 696f 6e0a 2020 2d20 6d65 6469 756d  ption.  - medium
│ │ │ +00090e70: 5f73 6576 6572 6974 790a 2020 2d20 6e6f  _severity.  - no
│ │ │ +00090e80: 5f72 6562 6f6f 745f 6e65 6564 6564 0a20  _reboot_needed. 
│ │ │ +00090e90: 202d 2070 6163 6b61 6765 5f6c 6f67 726f   - package_logro
│ │ │ +00090ea0: 7461 7465 5f69 6e73 7461 6c6c 6564 0a0a  tate_installed..
│ │ │ +00090eb0: 2d20 6e61 6d65 3a20 456e 7375 7265 206c  - name: Ensure l
│ │ │ +00090ec0: 6f67 726f 7461 7465 2069 7320 696e 7374  ogrotate is inst
│ │ │ +00090ed0: 616c 6c65 640a 2020 616e 7369 626c 652e  alled.  ansible.
│ │ │ +00090ee0: 6275 696c 7469 6e2e 7061 636b 6167 653a  builtin.package:
│ │ │ +00090ef0: 0a20 2020 206e 616d 653a 206c 6f67 726f  .    name: logro
│ │ │ +00090f00: 7461 7465 0a20 2020 2073 7461 7465 3a20  tate.    state: 
│ │ │ +00090f10: 7072 6573 656e 740a 2020 7768 656e 3a20  present.  when: 
│ │ │ +00090f20: 2722 6b65 726e 656c 2220 696e 2061 6e73  '"kernel" in ans
│ │ │ +00090f30: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +00090f40: 6765 7327 0a20 2074 6167 733a 0a20 202d  ges'.  tags:.  -
│ │ │ +00090f50: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +00090f60: 3628 6129 0a20 202d 2050 4349 2d44 5353  6(a).  - PCI-DSS
│ │ │ +00090f70: 2d52 6571 2d31 302e 370a 2020 2d20 5043  -Req-10.7.  - PC
│ │ │ +00090f80: 492d 4453 5376 342d 3130 2e35 0a20 202d  I-DSSv4-10.5.  -
│ │ │ +00090f90: 2050 4349 2d44 5353 7634 2d31 302e 352e   PCI-DSSv4-10.5.
│ │ │ +00090fa0: 310a 2020 2d20 656e 6162 6c65 5f73 7472  1.  - enable_str
│ │ │ +00090fb0: 6174 6567 790a 2020 2d20 6c6f 775f 636f  ategy.  - low_co
│ │ │ +00090fc0: 6d70 6c65 7869 7479 0a20 202d 206c 6f77  mplexity.  - low
│ │ │ +00090fd0: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +00090fe0: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ +00090ff0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ +00091000: 6564 6564 0a20 202d 2070 6163 6b61 6765  eded.  - package
│ │ │ +00091010: 5f6c 6f67 726f 7461 7465 5f69 6e73 7461  _logrotate_insta
│ │ │ +00091020: 6c6c 6564 0a3c 2f63 6f64 653e 3c2f 7072  lled.
Remediation │ │ │ +000910e0: 5075 7070 6574 2073 6e69 7070 6574 20e2 Puppet snippet . │ │ │ +000910f0: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
< │ │ │ +00091170: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ +00091190: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ +000911e0: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
include install
│ │ │ +00091230: 5f6c 6f67 726f 7461 7465 0a0a 636c 6173  _logrotate..clas
│ │ │ +00091240: 7320 696e 7374 616c 6c5f 6c6f 6772 6f74  s install_logrot
│ │ │ +00091250: 6174 6520 7b0a 2020 7061 636b 6167 6520  ate {.  package 
│ │ │ +00091260: 7b20 276c 6f67 726f 7461 7465 273a 0a20  { 'logrotate':. 
│ │ │ +00091270: 2020 2065 6e73 7572 6520 3d26 6774 3b20     ensure => 
│ │ │ +00091280: 2769 6e73 7461 6c6c 6564 272c 0a20 207d  'installed',.  }
│ │ │ +00091290: 0a7d 0a3c 2f63 6f64 653e 3c2f 7072 653e  .}.
│ │ │ +000912a0: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22 Remediation O │ │ │ +00091350: 5342 7569 6c64 2042 6c75 6570 7269 6e74 SBuild Blueprint │ │ │ +00091360: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ +00091370: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
.
│ │ │ +000913b0: 5b5b 7061 636b 6167 6573 5d5d 0a6e 616d  [[packages]].nam
│ │ │ +000913c0: 6520 3d20 226c 6f67 726f 7461 7465 220a  e = "logrotate".
│ │ │ +000913d0: 7665 7273 696f 6e20 3d20 222a 220a 3c2f  version = "*".
low
Disr │ │ │ +000911a0: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +000911b0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ +000911f0: 7465 6779 3a3c 2f74 683e 3c74 643e 656e tegy:en │ │ │ +00091200: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
Remediation OS │ │ │ -000941a0: 4275 696c 6420 426c 7565 7072 696e 7420 Build Blueprint │ │ │ -000941b0: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ -000941c0: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
.[
│ │ │ -00094200: 5b70 6163 6b61 6765 735d 5d0a 6e61 6d65  [packages]].name
│ │ │ -00094210: 203d 2022 6669 7265 7761 6c6c 6422 0a76   = "firewalld".v
│ │ │ -00094220: 6572 7369 6f6e 203d 2022 2a22 0a3c 2f63  ersion = "*".
│ │ │ -00094240: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ -000942e0: 6564 6961 7469 6f6e 2050 7570 7065 7420 ediation Puppet │ │ │ -000942f0: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ -00094300: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Com │ │ │ -00094380: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ -000943b0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ -000943d0: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -000943e0: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -00094400: 2f74 683e 3c74 643e 656e 6162 6c65 3c2f /th>enable
│ │ │ -00094420: 3c70 7265 3e3c 636f 6465 3e69 6e63 6c75
inclu
│ │ │ -00094430: 6465 2069 6e73 7461 6c6c 5f66 6972 6577  de install_firew
│ │ │ -00094440: 616c 6c64 0a0a 636c 6173 7320 696e 7374  alld..class inst
│ │ │ -00094450: 616c 6c5f 6669 7265 7761 6c6c 6420 7b0a  all_firewalld {.
│ │ │ -00094460: 2020 7061 636b 6167 6520 7b20 2766 6972    package { 'fir
│ │ │ -00094470: 6577 616c 6c64 273a 0a20 2020 2065 6e73  ewalld':.    ens
│ │ │ -00094480: 7572 6520 3d26 6774 3b20 2769 6e73 7461  ure => 'insta
│ │ │ -00094490: 6c6c 6564 272c 0a20 207d 0a7d 0a3c 2f63  lled',.  }.}.
│ │ │ -000944b0: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ -00094550: 6564 6961 7469 6f6e 2041 6e73 6962 6c65 ediation Ansible │ │ │ -00094560: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -00094570: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ -00094610: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ -00094660: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
Co │ │ │ -000945f0: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -00094620: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ -00094640: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ -00094650: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ -00094670: 3c2f 7468 3e3c 7464 3e65 6e61 626c 653c enable< │ │ │ -00094680: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
- na
│ │ │ -000946a0: 6d65 3a20 4761 7468 6572 2074 6865 2070  me: Gather the p
│ │ │ -000946b0: 6163 6b61 6765 2066 6163 7473 0a20 2070  ackage facts.  p
│ │ │ -000946c0: 6163 6b61 6765 5f66 6163 7473 3a0a 2020  ackage_facts:.  
│ │ │ -000946d0: 2020 6d61 6e61 6765 723a 2061 7574 6f0a    manager: auto.
│ │ │ -000946e0: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ -000946f0: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ -00094700: 2020 2d20 5043 492d 4453 5376 342d 312e    - PCI-DSSv4-1.
│ │ │ -00094710: 320a 2020 2d20 5043 492d 4453 5376 342d  2.  - PCI-DSSv4-
│ │ │ -00094720: 312e 322e 310a 2020 2d20 656e 6162 6c65  1.2.1.  - enable
│ │ │ -00094730: 5f73 7472 6174 6567 790a 2020 2d20 6c6f  _strategy.  - lo
│ │ │ -00094740: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ -00094750: 206c 6f77 5f64 6973 7275 7074 696f 6e0a   low_disruption.
│ │ │ -00094760: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ -00094770: 6974 790a 2020 2d20 6e6f 5f72 6562 6f6f  ity.  - no_reboo
│ │ │ -00094780: 745f 6e65 6564 6564 0a20 202d 2070 6163  t_needed.  - pac
│ │ │ -00094790: 6b61 6765 5f66 6972 6577 616c 6c64 5f69  kage_firewalld_i
│ │ │ -000947a0: 6e73 7461 6c6c 6564 0a0a 2d20 6e61 6d65  nstalled..- name
│ │ │ -000947b0: 3a20 456e 7375 7265 2066 6972 6577 616c  : Ensure firewal
│ │ │ -000947c0: 6c64 2069 7320 696e 7374 616c 6c65 640a  ld is installed.
│ │ │ -000947d0: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ -000947e0: 6e2e 7061 636b 6167 653a 0a20 2020 206e  n.package:.    n
│ │ │ -000947f0: 616d 653a 2066 6972 6577 616c 6c64 0a20  ame: firewalld. 
│ │ │ -00094800: 2020 2073 7461 7465 3a20 7072 6573 656e     state: presen
│ │ │ -00094810: 740a 2020 7768 656e 3a20 2722 6b65 726e  t.  when: '"kern
│ │ │ -00094820: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ -00094830: 6163 7473 2e70 6163 6b61 6765 7327 0a20  acts.packages'. 
│ │ │ -00094840: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ -00094850: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ -00094860: 202d 2050 4349 2d44 5353 7634 2d31 2e32   - PCI-DSSv4-1.2
│ │ │ -00094870: 0a20 202d 2050 4349 2d44 5353 7634 2d31  .  - PCI-DSSv4-1
│ │ │ -00094880: 2e32 2e31 0a20 202d 2065 6e61 626c 655f  .2.1.  - enable_
│ │ │ -00094890: 7374 7261 7465 6779 0a20 202d 206c 6f77  strategy.  - low
│ │ │ -000948a0: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ -000948b0: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ -000948c0: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ -000948d0: 7479 0a20 202d 206e 6f5f 7265 626f 6f74  ty.  - no_reboot
│ │ │ -000948e0: 5f6e 6565 6465 640a 2020 2d20 7061 636b  _needed.  - pack
│ │ │ -000948f0: 6167 655f 6669 7265 7761 6c6c 645f 696e  age_firewalld_in
│ │ │ -00094900: 7374 616c 6c65 640a 3c2f 636f 6465 3e3c  stalled.<
│ │ │ +00094190: 223e 5265 6d65 6469 6174 696f 6e20 416e  ">Remediation An
│ │ │ +000941a0: 7369 626c 6520 736e 6970 7065 7420 e287  sible snippet ..
│ │ │ +000941b0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c  .
< │ │ │ +00094230: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ +00094250: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ +000942a0: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
- name: Gather 
│ │ │ +000942f0: 7468 6520 7061 636b 6167 6520 6661 6374  the package fact
│ │ │ +00094300: 730a 2020 7061 636b 6167 655f 6661 6374  s.  package_fact
│ │ │ +00094310: 733a 0a20 2020 206d 616e 6167 6572 3a20  s:.    manager: 
│ │ │ +00094320: 6175 746f 0a20 2074 6167 733a 0a20 202d  auto.  tags:.  -
│ │ │ +00094330: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +00094340: 3628 6129 0a20 202d 2050 4349 2d44 5353  6(a).  - PCI-DSS
│ │ │ +00094350: 7634 2d31 2e32 0a20 202d 2050 4349 2d44  v4-1.2.  - PCI-D
│ │ │ +00094360: 5353 7634 2d31 2e32 2e31 0a20 202d 2065  SSv4-1.2.1.  - e
│ │ │ +00094370: 6e61 626c 655f 7374 7261 7465 6779 0a20  nable_strategy. 
│ │ │ +00094380: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ +00094390: 790a 2020 2d20 6c6f 775f 6469 7372 7570  y.  - low_disrup
│ │ │ +000943a0: 7469 6f6e 0a20 202d 206d 6564 6975 6d5f  tion.  - medium_
│ │ │ +000943b0: 7365 7665 7269 7479 0a20 202d 206e 6f5f  severity.  - no_
│ │ │ +000943c0: 7265 626f 6f74 5f6e 6565 6465 640a 2020  reboot_needed.  
│ │ │ +000943d0: 2d20 7061 636b 6167 655f 6669 7265 7761  - package_firewa
│ │ │ +000943e0: 6c6c 645f 696e 7374 616c 6c65 640a 0a2d  lld_installed..-
│ │ │ +000943f0: 206e 616d 653a 2045 6e73 7572 6520 6669   name: Ensure fi
│ │ │ +00094400: 7265 7761 6c6c 6420 6973 2069 6e73 7461  rewalld is insta
│ │ │ +00094410: 6c6c 6564 0a20 2061 6e73 6962 6c65 2e62  lled.  ansible.b
│ │ │ +00094420: 7569 6c74 696e 2e70 6163 6b61 6765 3a0a  uiltin.package:.
│ │ │ +00094430: 2020 2020 6e61 6d65 3a20 6669 7265 7761      name: firewa
│ │ │ +00094440: 6c6c 640a 2020 2020 7374 6174 653a 2070  lld.    state: p
│ │ │ +00094450: 7265 7365 6e74 0a20 2077 6865 6e3a 2027  resent.  when: '
│ │ │ +00094460: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ +00094470: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +00094480: 6573 270a 2020 7461 6773 3a0a 2020 2d20  es'.  tags:.  - 
│ │ │ +00094490: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ +000944a0: 2861 290a 2020 2d20 5043 492d 4453 5376  (a).  - PCI-DSSv
│ │ │ +000944b0: 342d 312e 320a 2020 2d20 5043 492d 4453  4-1.2.  - PCI-DS
│ │ │ +000944c0: 5376 342d 312e 322e 310a 2020 2d20 656e  Sv4-1.2.1.  - en
│ │ │ +000944d0: 6162 6c65 5f73 7472 6174 6567 790a 2020  able_strategy.  
│ │ │ +000944e0: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ +000944f0: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ +00094500: 696f 6e0a 2020 2d20 6d65 6469 756d 5f73  ion.  - medium_s
│ │ │ +00094510: 6576 6572 6974 790a 2020 2d20 6e6f 5f72  everity.  - no_r
│ │ │ +00094520: 6562 6f6f 745f 6e65 6564 6564 0a20 202d  eboot_needed.  -
│ │ │ +00094530: 2070 6163 6b61 6765 5f66 6972 6577 616c   package_firewal
│ │ │ +00094540: 6c64 5f69 6e73 7461 6c6c 6564 0a3c 2f63  ld_installed.
│ │ │ +00094560: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ +00094600: 6564 6961 7469 6f6e 2050 7570 7065 7420 ediation Puppet │ │ │ +00094610: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ +00094620: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
low
Disr │ │ │ +00094260: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +00094270: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ +000942b0: 7465 6779 3a3c 2f74 683e 3c74 643e 656e tegy:en │ │ │ +000942c0: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
Com │ │ │ +000946a0: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ +000946d0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ +000946f0: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +00094700: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ +00094720: 2f74 683e 3c74 643e 656e 6162 6c65 3c2f /th>enable
│ │ │ +00094740: 3c70 7265 3e3c 636f 6465 3e69 6e63 6c75
inclu
│ │ │ +00094750: 6465 2069 6e73 7461 6c6c 5f66 6972 6577  de install_firew
│ │ │ +00094760: 616c 6c64 0a0a 636c 6173 7320 696e 7374  alld..class inst
│ │ │ +00094770: 616c 6c5f 6669 7265 7761 6c6c 6420 7b0a  all_firewalld {.
│ │ │ +00094780: 2020 7061 636b 6167 6520 7b20 2766 6972    package { 'fir
│ │ │ +00094790: 6577 616c 6c64 273a 0a20 2020 2065 6e73  ewalld':.    ens
│ │ │ +000947a0: 7572 6520 3d26 6774 3b20 2769 6e73 7461  ure => 'insta
│ │ │ +000947b0: 6c6c 6564 272c 0a20 207d 0a7d 0a3c 2f63  lled',.  }.}.
│ │ │ +000947d0: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ +00094870: 6564 6961 7469 6f6e 204f 5342 7569 6c64 ediation OSBuild │ │ │ +00094880: 2042 6c75 6570 7269 6e74 2073 6e69 7070 Blueprint snipp │ │ │ +00094890: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...

.[[pack │ │ │ +000948e0: 6167 6573 5d5d 0a6e 616d 6520 3d20 2266 ages]].name = "f │ │ │ +000948f0: 6972 6577 616c 6c64 220a 7665 7273 696f irewalld".versio │ │ │ +00094900: 6e20 3d20 222a 220a 3c2f 636f 6465 3e3c n = "*".< │ │ │ 00094910: 2f70 7265 3e3c 2f64 6976 3e3c 2f64 6976 /pre>

│ │ │ 00094940: 3c2f 7472 3e3c 7472 2064 6174 612d 7474 Reme │ │ │ -000958e0: 6469 6174 696f 6e20 4f53 4275 696c 6420 diation OSBuild │ │ │ -000958f0: 426c 7565 7072 696e 7420 736e 6970 7065 Blueprint snippe │ │ │ -00095900: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
.[custom │ │ │ -00095950: 697a 6174 696f 6e73 2e73 6572 7669 6365 izations.service │ │ │ -00095960: 735d 0a65 6e61 626c 6564 203d 205b 2266 s].enabled = ["f │ │ │ -00095970: 6972 6577 616c 6c64 225d 0a3c 2f63 6f64 irewalld"].
Remed │ │ │ -00095a30: 6961 7469 6f6e 2050 7570 7065 7420 736e iation Puppet sn │ │ │ -00095a40: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ -00095af0: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ -00095b10: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ -00095b40: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ -00095ad0: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ -00095ae0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ -00095b00: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ -00095b20: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -00095b30: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:enable

include │ │ │ -00095b80: 2065 6e61 626c 655f 6669 7265 7761 6c6c enable_firewall │ │ │ -00095b90: 640a 0a63 6c61 7373 2065 6e61 626c 655f d..class enable_ │ │ │ -00095ba0: 6669 7265 7761 6c6c 6420 7b0a 2020 7365 firewalld {. se │ │ │ -00095bb0: 7276 6963 6520 7b27 6669 7265 7761 6c6c rvice {'firewall │ │ │ -00095bc0: 6427 3a0a 2020 2020 656e 6162 6c65 203d d':. enable = │ │ │ -00095bd0: 2667 743b 2074 7275 652c 0a20 2020 2065 > true,. e │ │ │ -00095be0: 6e73 7572 6520 3d26 6774 3b20 2772 756e nsure => 'run │ │ │ -00095bf0: 6e69 6e67 272c 0a20 207d 0a7d 0a3c 2f63 ning',. }.}.

│ │ │ -00095c10: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ -00095cb0: 6564 6961 7469 6f6e 2041 6e73 6962 6c65 ediation Ansible │ │ │ -00095cc0: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -00095cd0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ -00095d70: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ -00095dc0: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
Co │ │ │ -00095d50: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -00095d80: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ -00095da0: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ -00095db0: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ -00095dd0: 3c2f 7468 3e3c 7464 3e65 6e61 626c 653c enable< │ │ │ -00095de0: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
- na
│ │ │ -00095e00: 6d65 3a20 4761 7468 6572 2074 6865 2070  me: Gather the p
│ │ │ -00095e10: 6163 6b61 6765 2066 6163 7473 0a20 2070  ackage facts.  p
│ │ │ -00095e20: 6163 6b61 6765 5f66 6163 7473 3a0a 2020  ackage_facts:.  
│ │ │ -00095e30: 2020 6d61 6e61 6765 723a 2061 7574 6f0a    manager: auto.
│ │ │ -00095e40: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ -00095e50: 2d38 3030 2d31 3731 2d33 2e31 2e33 0a20  -800-171-3.1.3. 
│ │ │ -00095e60: 202d 204e 4953 542d 3830 302d 3137 312d   - NIST-800-171-
│ │ │ -00095e70: 332e 342e 370a 2020 2d20 4e49 5354 2d38  3.4.7.  - NIST-8
│ │ │ -00095e80: 3030 2d35 332d 4143 2d34 0a20 202d 204e  00-53-AC-4.  - N
│ │ │ -00095e90: 4953 542d 3830 302d 3533 2d43 412d 3328  IST-800-53-CA-3(
│ │ │ -00095ea0: 3529 0a20 202d 204e 4953 542d 3830 302d  5).  - NIST-800-
│ │ │ -00095eb0: 3533 2d43 4d2d 3628 6129 0a20 202d 204e  53-CM-6(a).  - N
│ │ │ -00095ec0: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ -00095ed0: 6229 0a20 202d 204e 4953 542d 3830 302d  b).  - NIST-800-
│ │ │ -00095ee0: 3533 2d53 432d 3728 3231 290a 2020 2d20  53-SC-7(21).  - 
│ │ │ -00095ef0: 5043 492d 4453 5376 342d 312e 320a 2020  PCI-DSSv4-1.2.  
│ │ │ -00095f00: 2d20 5043 492d 4453 5376 342d 312e 322e  - PCI-DSSv4-1.2.
│ │ │ -00095f10: 310a 2020 2d20 656e 6162 6c65 5f73 7472  1.  - enable_str
│ │ │ -00095f20: 6174 6567 790a 2020 2d20 6c6f 775f 636f  ategy.  - low_co
│ │ │ -00095f30: 6d70 6c65 7869 7479 0a20 202d 206c 6f77  mplexity.  - low
│ │ │ -00095f40: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ -00095f50: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ -00095f60: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ -00095f70: 6564 6564 0a20 202d 2073 6572 7669 6365  eded.  - service
│ │ │ -00095f80: 5f66 6972 6577 616c 6c64 5f65 6e61 626c  _firewalld_enabl
│ │ │ -00095f90: 6564 0a0a 2d20 6e61 6d65 3a20 5665 7269  ed..- name: Veri
│ │ │ -00095fa0: 6679 2066 6972 6577 616c 6c64 2045 6e61  fy firewalld Ena
│ │ │ -00095fb0: 626c 6564 202d 2045 6e61 626c 6520 7365  bled - Enable se
│ │ │ -00095fc0: 7276 6963 6520 6669 7265 7761 6c6c 640a  rvice firewalld.
│ │ │ -00095fd0: 2020 626c 6f63 6b3a 0a0a 2020 2d20 6e61    block:..  - na
│ │ │ -00095fe0: 6d65 3a20 4761 7468 6572 2074 6865 2070  me: Gather the p
│ │ │ -00095ff0: 6163 6b61 6765 2066 6163 7473 0a20 2020  ackage facts.   
│ │ │ -00096000: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ -00096010: 2e70 6163 6b61 6765 5f66 6163 7473 3a0a  .package_facts:.
│ │ │ -00096020: 2020 2020 2020 6d61 6e61 6765 723a 2061        manager: a
│ │ │ -00096030: 7574 6f0a 0a20 202d 206e 616d 653a 2056  uto..  - name: V
│ │ │ -00096040: 6572 6966 7920 6669 7265 7761 6c6c 6420  erify firewalld 
│ │ │ -00096050: 456e 6162 6c65 6420 2d20 456e 6162 6c65  Enabled - Enable
│ │ │ -00096060: 2053 6572 7669 6365 2066 6972 6577 616c   Service firewal
│ │ │ -00096070: 6c64 0a20 2020 2061 6e73 6962 6c65 2e62  ld.    ansible.b
│ │ │ -00096080: 7569 6c74 696e 2e73 7973 7465 6d64 3a0a  uiltin.systemd:.
│ │ │ -00096090: 2020 2020 2020 6e61 6d65 3a20 6669 7265        name: fire
│ │ │ -000960a0: 7761 6c6c 640a 2020 2020 2020 656e 6162  walld.      enab
│ │ │ -000960b0: 6c65 643a 2074 7275 650a 2020 2020 2020  led: true.      
│ │ │ -000960c0: 7374 6174 653a 2073 7461 7274 6564 0a20  state: started. 
│ │ │ -000960d0: 2020 2020 206d 6173 6b65 643a 2066 616c       masked: fal
│ │ │ -000960e0: 7365 0a20 2020 2077 6865 6e3a 0a20 2020  se.    when:.   
│ │ │ -000960f0: 202d 2027 2266 6972 6577 616c 6c64 2220   - '"firewalld" 
│ │ │ -00096100: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -00096110: 2e70 6163 6b61 6765 7327 0a20 2074 6167  .packages'.  tag
│ │ │ -00096120: 733a 0a20 202d 204e 4953 542d 3830 302d  s:.  - NIST-800-
│ │ │ -00096130: 3137 312d 332e 312e 330a 2020 2d20 4e49  171-3.1.3.  - NI
│ │ │ -00096140: 5354 2d38 3030 2d31 3731 2d33 2e34 2e37  ST-800-171-3.4.7
│ │ │ -00096150: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -00096160: 2d41 432d 340a 2020 2d20 4e49 5354 2d38  -AC-4.  - NIST-8
│ │ │ -00096170: 3030 2d35 332d 4341 2d33 2835 290a 2020  00-53-CA-3(5).  
│ │ │ -00096180: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -00096190: 2d36 2861 290a 2020 2d20 4e49 5354 2d38  -6(a).  - NIST-8
│ │ │ -000961a0: 3030 2d35 332d 434d 2d37 2862 290a 2020  00-53-CM-7(b).  
│ │ │ -000961b0: 2d20 4e49 5354 2d38 3030 2d35 332d 5343  - NIST-800-53-SC
│ │ │ -000961c0: 2d37 2832 3129 0a20 202d 2050 4349 2d44  -7(21).  - PCI-D
│ │ │ -000961d0: 5353 7634 2d31 2e32 0a20 202d 2050 4349  SSv4-1.2.  - PCI
│ │ │ -000961e0: 2d44 5353 7634 2d31 2e32 2e31 0a20 202d  -DSSv4-1.2.1.  -
│ │ │ -000961f0: 2065 6e61 626c 655f 7374 7261 7465 6779   enable_strategy
│ │ │ -00096200: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ -00096210: 6974 790a 2020 2d20 6c6f 775f 6469 7372  ity.  - low_disr
│ │ │ -00096220: 7570 7469 6f6e 0a20 202d 206d 6564 6975  uption.  - mediu
│ │ │ -00096230: 6d5f 7365 7665 7269 7479 0a20 202d 206e  m_severity.  - n
│ │ │ -00096240: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ -00096250: 2020 2d20 7365 7276 6963 655f 6669 7265    - service_fire
│ │ │ -00096260: 7761 6c6c 645f 656e 6162 6c65 640a 2020  walld_enabled.  
│ │ │ -00096270: 2d20 7370 6563 6961 6c5f 7365 7276 6963  - special_servic
│ │ │ -00096280: 655f 626c 6f63 6b0a 2020 7768 656e 3a0a  e_block.  when:.
│ │ │ -00096290: 2020 2d20 2722 6b65 726e 656c 2220 696e    - '"kernel" in
│ │ │ -000962a0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -000962b0: 6163 6b61 6765 7327 0a20 202d 2027 2266  ackages'.  - '"f
│ │ │ -000962c0: 6972 6577 616c 6c64 2220 696e 2061 6e73  irewalld" in ans
│ │ │ -000962d0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -000962e0: 6765 7327 0a3c 2f63 6f64 653e 3c2f 7072  ges'.<
│ │ │ +00095900: 6272 3e3c 6469 7620 636c 6173 733d 2270  br>
Com │ │ │ +00095980: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ +000959b0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ +000959d0: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +000959e0: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ +00095a00: 2f74 683e 3c74 643e 656e 6162 6c65 3c2f /th>enable
│ │ │ +00095a20: 3c70 7265 3e3c 636f 6465 3e2d 206e 616d
- nam
│ │ │ +00095a30: 653a 2047 6174 6865 7220 7468 6520 7061  e: Gather the pa
│ │ │ +00095a40: 636b 6167 6520 6661 6374 730a 2020 7061  ckage facts.  pa
│ │ │ +00095a50: 636b 6167 655f 6661 6374 733a 0a20 2020  ckage_facts:.   
│ │ │ +00095a60: 206d 616e 6167 6572 3a20 6175 746f 0a20   manager: auto. 
│ │ │ +00095a70: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ +00095a80: 3830 302d 3137 312d 332e 312e 330a 2020  800-171-3.1.3.  
│ │ │ +00095a90: 2d20 4e49 5354 2d38 3030 2d31 3731 2d33  - NIST-800-171-3
│ │ │ +00095aa0: 2e34 2e37 0a20 202d 204e 4953 542d 3830  .4.7.  - NIST-80
│ │ │ +00095ab0: 302d 3533 2d41 432d 340a 2020 2d20 4e49  0-53-AC-4.  - NI
│ │ │ +00095ac0: 5354 2d38 3030 2d35 332d 4341 2d33 2835  ST-800-53-CA-3(5
│ │ │ +00095ad0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +00095ae0: 332d 434d 2d36 2861 290a 2020 2d20 4e49  3-CM-6(a).  - NI
│ │ │ +00095af0: 5354 2d38 3030 2d35 332d 434d 2d37 2862  ST-800-53-CM-7(b
│ │ │ +00095b00: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +00095b10: 332d 5343 2d37 2832 3129 0a20 202d 2050  3-SC-7(21).  - P
│ │ │ +00095b20: 4349 2d44 5353 7634 2d31 2e32 0a20 202d  CI-DSSv4-1.2.  -
│ │ │ +00095b30: 2050 4349 2d44 5353 7634 2d31 2e32 2e31   PCI-DSSv4-1.2.1
│ │ │ +00095b40: 0a20 202d 2065 6e61 626c 655f 7374 7261  .  - enable_stra
│ │ │ +00095b50: 7465 6779 0a20 202d 206c 6f77 5f63 6f6d  tegy.  - low_com
│ │ │ +00095b60: 706c 6578 6974 790a 2020 2d20 6c6f 775f  plexity.  - low_
│ │ │ +00095b70: 6469 7372 7570 7469 6f6e 0a20 202d 206d  disruption.  - m
│ │ │ +00095b80: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ +00095b90: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ +00095ba0: 6465 640a 2020 2d20 7365 7276 6963 655f  ded.  - service_
│ │ │ +00095bb0: 6669 7265 7761 6c6c 645f 656e 6162 6c65  firewalld_enable
│ │ │ +00095bc0: 640a 0a2d 206e 616d 653a 2056 6572 6966  d..- name: Verif
│ │ │ +00095bd0: 7920 6669 7265 7761 6c6c 6420 456e 6162  y firewalld Enab
│ │ │ +00095be0: 6c65 6420 2d20 456e 6162 6c65 2073 6572  led - Enable ser
│ │ │ +00095bf0: 7669 6365 2066 6972 6577 616c 6c64 0a20  vice firewalld. 
│ │ │ +00095c00: 2062 6c6f 636b 3a0a 0a20 202d 206e 616d   block:..  - nam
│ │ │ +00095c10: 653a 2047 6174 6865 7220 7468 6520 7061  e: Gather the pa
│ │ │ +00095c20: 636b 6167 6520 6661 6374 730a 2020 2020  ckage facts.    
│ │ │ +00095c30: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ +00095c40: 7061 636b 6167 655f 6661 6374 733a 0a20  package_facts:. 
│ │ │ +00095c50: 2020 2020 206d 616e 6167 6572 3a20 6175       manager: au
│ │ │ +00095c60: 746f 0a0a 2020 2d20 6e61 6d65 3a20 5665  to..  - name: Ve
│ │ │ +00095c70: 7269 6679 2066 6972 6577 616c 6c64 2045  rify firewalld E
│ │ │ +00095c80: 6e61 626c 6564 202d 2045 6e61 626c 6520  nabled - Enable 
│ │ │ +00095c90: 5365 7276 6963 6520 6669 7265 7761 6c6c  Service firewall
│ │ │ +00095ca0: 640a 2020 2020 616e 7369 626c 652e 6275  d.    ansible.bu
│ │ │ +00095cb0: 696c 7469 6e2e 7379 7374 656d 643a 0a20  iltin.systemd:. 
│ │ │ +00095cc0: 2020 2020 206e 616d 653a 2066 6972 6577       name: firew
│ │ │ +00095cd0: 616c 6c64 0a20 2020 2020 2065 6e61 626c  alld.      enabl
│ │ │ +00095ce0: 6564 3a20 7472 7565 0a20 2020 2020 2073  ed: true.      s
│ │ │ +00095cf0: 7461 7465 3a20 7374 6172 7465 640a 2020  tate: started.  
│ │ │ +00095d00: 2020 2020 6d61 736b 6564 3a20 6661 6c73      masked: fals
│ │ │ +00095d10: 650a 2020 2020 7768 656e 3a0a 2020 2020  e.    when:.    
│ │ │ +00095d20: 2d20 2722 6669 7265 7761 6c6c 6422 2069  - '"firewalld" i
│ │ │ +00095d30: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +00095d40: 7061 636b 6167 6573 270a 2020 7461 6773  packages'.  tags
│ │ │ +00095d50: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d31  :.  - NIST-800-1
│ │ │ +00095d60: 3731 2d33 2e31 2e33 0a20 202d 204e 4953  71-3.1.3.  - NIS
│ │ │ +00095d70: 542d 3830 302d 3137 312d 332e 342e 370a  T-800-171-3.4.7.
│ │ │ +00095d80: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +00095d90: 4143 2d34 0a20 202d 204e 4953 542d 3830  AC-4.  - NIST-80
│ │ │ +00095da0: 302d 3533 2d43 412d 3328 3529 0a20 202d  0-53-CA-3(5).  -
│ │ │ +00095db0: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +00095dc0: 3628 6129 0a20 202d 204e 4953 542d 3830  6(a).  - NIST-80
│ │ │ +00095dd0: 302d 3533 2d43 4d2d 3728 6229 0a20 202d  0-53-CM-7(b).  -
│ │ │ +00095de0: 204e 4953 542d 3830 302d 3533 2d53 432d   NIST-800-53-SC-
│ │ │ +00095df0: 3728 3231 290a 2020 2d20 5043 492d 4453  7(21).  - PCI-DS
│ │ │ +00095e00: 5376 342d 312e 320a 2020 2d20 5043 492d  Sv4-1.2.  - PCI-
│ │ │ +00095e10: 4453 5376 342d 312e 322e 310a 2020 2d20  DSSv4-1.2.1.  - 
│ │ │ +00095e20: 656e 6162 6c65 5f73 7472 6174 6567 790a  enable_strategy.
│ │ │ +00095e30: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ +00095e40: 7479 0a20 202d 206c 6f77 5f64 6973 7275  ty.  - low_disru
│ │ │ +00095e50: 7074 696f 6e0a 2020 2d20 6d65 6469 756d  ption.  - medium
│ │ │ +00095e60: 5f73 6576 6572 6974 790a 2020 2d20 6e6f  _severity.  - no
│ │ │ +00095e70: 5f72 6562 6f6f 745f 6e65 6564 6564 0a20  _reboot_needed. 
│ │ │ +00095e80: 202d 2073 6572 7669 6365 5f66 6972 6577   - service_firew
│ │ │ +00095e90: 616c 6c64 5f65 6e61 626c 6564 0a20 202d  alld_enabled.  -
│ │ │ +00095ea0: 2073 7065 6369 616c 5f73 6572 7669 6365   special_service
│ │ │ +00095eb0: 5f62 6c6f 636b 0a20 2077 6865 6e3a 0a20  _block.  when:. 
│ │ │ +00095ec0: 202d 2027 226b 6572 6e65 6c22 2069 6e20   - '"kernel" in 
│ │ │ +00095ed0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +00095ee0: 636b 6167 6573 270a 2020 2d20 2722 6669  ckages'.  - '"fi
│ │ │ +00095ef0: 7265 7761 6c6c 6422 2069 6e20 616e 7369  rewalld" in ansi
│ │ │ +00095f00: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +00095f10: 6573 270a 3c2f 636f 6465 3e3c 2f70 7265  es'.
Remediation │ │ │ +00095fd0: 5075 7070 6574 2073 6e69 7070 6574 20e2 Puppet snippet . │ │ │ +00095fe0: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ +00096060: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +00096080: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ +000960d0: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 < │ │ │ +00096100: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
include enable
│ │ │ +00096120: 5f66 6972 6577 616c 6c64 0a0a 636c 6173  _firewalld..clas
│ │ │ +00096130: 7320 656e 6162 6c65 5f66 6972 6577 616c  s enable_firewal
│ │ │ +00096140: 6c64 207b 0a20 2073 6572 7669 6365 207b  ld {.  service {
│ │ │ +00096150: 2766 6972 6577 616c 6c64 273a 0a20 2020  'firewalld':.   
│ │ │ +00096160: 2065 6e61 626c 6520 3d26 6774 3b20 7472   enable => tr
│ │ │ +00096170: 7565 2c0a 2020 2020 656e 7375 7265 203d  ue,.    ensure =
│ │ │ +00096180: 2667 743b 2027 7275 6e6e 696e 6727 2c0a  > 'running',.
│ │ │ +00096190: 2020 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70    }.}.

Remediatio │ │ │ +00096250: 6e20 4f53 4275 696c 6420 426c 7565 7072 n OSBuild Bluepr │ │ │ +00096260: 696e 7420 736e 6970 7065 7420 e287 b23c int snippet ...< │ │ │ +00096270: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
.[customizatio
│ │ │ +000962c0: 6e73 2e73 6572 7669 6365 735d 0a65 6e61  ns.services].ena
│ │ │ +000962d0: 626c 6564 203d 205b 2266 6972 6577 616c  bled = ["firewal
│ │ │ +000962e0: 6c64 225d 0a3c 2f63 6f64 653e 3c2f 7072  ld"].
│ │ │ 00096310: 3c2f 7461 626c 653e 3c2f 7464 3e3c 2f74
Complexity:< │ │ │ +00096070: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +00096090: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ +000960e0: 6174 6567 793a 3c2f 7468 3e3c 7464 3e65 ategy:e │ │ │ +000960f0: 6e61 626c 653c 2f74 643e 3c2f 7472 3e3c nable
│ │ │ -000e22a0: 5265 6d65 6469 6174 696f 6e20 4f53 4275 Remediation OSBu │ │ │ -000e22b0: 696c 6420 426c 7565 7072 696e 7420 736e ild Blueprint sn │ │ │ -000e22c0: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
.[[p
│ │ │ -000e2310: 6163 6b61 6765 735d 5d0a 6e61 6d65 203d  ackages]].name =
│ │ │ -000e2320: 2022 6c69 6273 656c 696e 7578 220a 7665   "libselinux".ve
│ │ │ -000e2330: 7273 696f 6e20 3d20 222a 220a 3c2f 636f  rsion = "*".
< │ │ │ -000e2350: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ -000e2360: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ -000e2370: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ -000e2380: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ -000e2390: 6432 3038 2220 7461 6269 6e64 6578 3d22 d208" tabindex=" │ │ │ -000e23a0: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ -000e23b0: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ -000e23c0: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ -000e23d0: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ -000e23e0: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ -000e23f0: 6469 6174 696f 6e20 5075 7070 6574 2073 diation Puppet s │ │ │ -000e2400: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ -000e2490: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -000e24a0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -000e24c0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ -000e24e0: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -000e24f0: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:enable
< │ │ │ -000e2530: 7072 653e 3c63 6f64 653e 696e 636c 7564 pre>includ │ │ │ -000e2540: 6520 696e 7374 616c 6c5f 6c69 6273 656c e install_libsel │ │ │ -000e2550: 696e 7578 0a0a 636c 6173 7320 696e 7374 inux..class inst │ │ │ -000e2560: 616c 6c5f 6c69 6273 656c 696e 7578 207b all_libselinux { │ │ │ -000e2570: 0a20 2070 6163 6b61 6765 207b 2027 6c69 . package { 'li │ │ │ -000e2580: 6273 656c 696e 7578 273a 0a20 2020 2065 bselinux':. e │ │ │ -000e2590: 6e73 7572 6520 3d26 6774 3b20 2769 6e73 nsure => 'ins │ │ │ -000e25a0: 7461 6c6c 6564 272c 0a20 207d 0a7d 0a3c talled',. }.}.< │ │ │ -000e25b0: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469 /code>
R │ │ │ -000e2660: 656d 6564 6961 7469 6f6e 2041 6e73 6962 emediation Ansib │ │ │ -000e2670: 6c65 2073 6e69 7070 6574 20e2 87b2 3c2f le snippet ...
│ │ │ -000e2710: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
- 
│ │ │ -000e27b0: 6e61 6d65 3a20 4761 7468 6572 2074 6865  name: Gather the
│ │ │ -000e27c0: 2070 6163 6b61 6765 2066 6163 7473 0a20   package facts. 
│ │ │ -000e27d0: 2070 6163 6b61 6765 5f66 6163 7473 3a0a   package_facts:.
│ │ │ -000e27e0: 2020 2020 6d61 6e61 6765 723a 2061 7574      manager: aut
│ │ │ -000e27f0: 6f0a 2020 7461 6773 3a0a 2020 2d20 5043  o.  tags:.  - PC
│ │ │ -000e2800: 492d 4453 5376 342d 312e 320a 2020 2d20  I-DSSv4-1.2.  - 
│ │ │ -000e2810: 5043 492d 4453 5376 342d 312e 322e 360a  PCI-DSSv4-1.2.6.
│ │ │ -000e2820: 2020 2d20 656e 6162 6c65 5f73 7472 6174    - enable_strat
│ │ │ -000e2830: 6567 790a 2020 2d20 6869 6768 5f73 6576  egy.  - high_sev
│ │ │ -000e2840: 6572 6974 790a 2020 2d20 6c6f 775f 636f  erity.  - low_co
│ │ │ -000e2850: 6d70 6c65 7869 7479 0a20 202d 206c 6f77  mplexity.  - low
│ │ │ -000e2860: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ -000e2870: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ -000e2880: 0a20 202d 2070 6163 6b61 6765 5f6c 6962  .  - package_lib
│ │ │ -000e2890: 7365 6c69 6e75 785f 696e 7374 616c 6c65  selinux_installe
│ │ │ -000e28a0: 640a 0a2d 206e 616d 653a 2045 6e73 7572  d..- name: Ensur
│ │ │ -000e28b0: 6520 6c69 6273 656c 696e 7578 2069 7320  e libselinux is 
│ │ │ -000e28c0: 696e 7374 616c 6c65 640a 2020 616e 7369  installed.  ansi
│ │ │ -000e28d0: 626c 652e 6275 696c 7469 6e2e 7061 636b  ble.builtin.pack
│ │ │ -000e28e0: 6167 653a 0a20 2020 206e 616d 653a 206c  age:.    name: l
│ │ │ -000e28f0: 6962 7365 6c69 6e75 780a 2020 2020 7374  ibselinux.    st
│ │ │ -000e2900: 6174 653a 2070 7265 7365 6e74 0a20 2077  ate: present.  w
│ │ │ -000e2910: 6865 6e3a 2027 226b 6572 6e65 6c22 2069  hen: '"kernel" i
│ │ │ -000e2920: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -000e2930: 7061 636b 6167 6573 270a 2020 7461 6773  packages'.  tags
│ │ │ -000e2940: 3a0a 2020 2d20 5043 492d 4453 5376 342d  :.  - PCI-DSSv4-
│ │ │ -000e2950: 312e 320a 2020 2d20 5043 492d 4453 5376  1.2.  - PCI-DSSv
│ │ │ -000e2960: 342d 312e 322e 360a 2020 2d20 656e 6162  4-1.2.6.  - enab
│ │ │ -000e2970: 6c65 5f73 7472 6174 6567 790a 2020 2d20  le_strategy.  - 
│ │ │ -000e2980: 6869 6768 5f73 6576 6572 6974 790a 2020  high_severity.  
│ │ │ -000e2990: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ -000e29a0: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ -000e29b0: 696f 6e0a 2020 2d20 6e6f 5f72 6562 6f6f  ion.  - no_reboo
│ │ │ -000e29c0: 745f 6e65 6564 6564 0a20 202d 2070 6163  t_needed.  - pac
│ │ │ -000e29d0: 6b61 6765 5f6c 6962 7365 6c69 6e75 785f  kage_libselinux_
│ │ │ -000e29e0: 696e 7374 616c 6c65 640a 3c2f 636f 6465  installed.
│ │ │ -000e2700: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -000e2730: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -000e2740: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -000e2780: 793a 3c2f 7468 3e3c 7464 3e65 6e61 626c y:enabl │ │ │ -000e2790: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
< │ │ │ +000e2390: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +000e23a0: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
-
│ │ │ +000e23f0: 206e 616d 653a 2047 6174 6865 7220 7468   name: Gather th
│ │ │ +000e2400: 6520 7061 636b 6167 6520 6661 6374 730a  e package facts.
│ │ │ +000e2410: 2020 7061 636b 6167 655f 6661 6374 733a    package_facts:
│ │ │ +000e2420: 0a20 2020 206d 616e 6167 6572 3a20 6175  .    manager: au
│ │ │ +000e2430: 746f 0a20 2074 6167 733a 0a20 202d 2050  to.  tags:.  - P
│ │ │ +000e2440: 4349 2d44 5353 7634 2d31 2e32 0a20 202d  CI-DSSv4-1.2.  -
│ │ │ +000e2450: 2050 4349 2d44 5353 7634 2d31 2e32 2e36   PCI-DSSv4-1.2.6
│ │ │ +000e2460: 0a20 202d 2065 6e61 626c 655f 7374 7261  .  - enable_stra
│ │ │ +000e2470: 7465 6779 0a20 202d 2068 6967 685f 7365  tegy.  - high_se
│ │ │ +000e2480: 7665 7269 7479 0a20 202d 206c 6f77 5f63  verity.  - low_c
│ │ │ +000e2490: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f  omplexity.  - lo
│ │ │ +000e24a0: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ +000e24b0: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ +000e24c0: 640a 2020 2d20 7061 636b 6167 655f 6c69  d.  - package_li
│ │ │ +000e24d0: 6273 656c 696e 7578 5f69 6e73 7461 6c6c  bselinux_install
│ │ │ +000e24e0: 6564 0a0a 2d20 6e61 6d65 3a20 456e 7375  ed..- name: Ensu
│ │ │ +000e24f0: 7265 206c 6962 7365 6c69 6e75 7820 6973  re libselinux is
│ │ │ +000e2500: 2069 6e73 7461 6c6c 6564 0a20 2061 6e73   installed.  ans
│ │ │ +000e2510: 6962 6c65 2e62 7569 6c74 696e 2e70 6163  ible.builtin.pac
│ │ │ +000e2520: 6b61 6765 3a0a 2020 2020 6e61 6d65 3a20  kage:.    name: 
│ │ │ +000e2530: 6c69 6273 656c 696e 7578 0a20 2020 2073  libselinux.    s
│ │ │ +000e2540: 7461 7465 3a20 7072 6573 656e 740a 2020  tate: present.  
│ │ │ +000e2550: 7768 656e 3a20 2722 6b65 726e 656c 2220  when: '"kernel" 
│ │ │ +000e2560: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +000e2570: 2e70 6163 6b61 6765 7327 0a20 2074 6167  .packages'.  tag
│ │ │ +000e2580: 733a 0a20 202d 2050 4349 2d44 5353 7634  s:.  - PCI-DSSv4
│ │ │ +000e2590: 2d31 2e32 0a20 202d 2050 4349 2d44 5353  -1.2.  - PCI-DSS
│ │ │ +000e25a0: 7634 2d31 2e32 2e36 0a20 202d 2065 6e61  v4-1.2.6.  - ena
│ │ │ +000e25b0: 626c 655f 7374 7261 7465 6779 0a20 202d  ble_strategy.  -
│ │ │ +000e25c0: 2068 6967 685f 7365 7665 7269 7479 0a20   high_severity. 
│ │ │ +000e25d0: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ +000e25e0: 790a 2020 2d20 6c6f 775f 6469 7372 7570  y.  - low_disrup
│ │ │ +000e25f0: 7469 6f6e 0a20 202d 206e 6f5f 7265 626f  tion.  - no_rebo
│ │ │ +000e2600: 6f74 5f6e 6565 6465 640a 2020 2d20 7061  ot_needed.  - pa
│ │ │ +000e2610: 636b 6167 655f 6c69 6273 656c 696e 7578  ckage_libselinux
│ │ │ +000e2620: 5f69 6e73 7461 6c6c 6564 0a3c 2f63 6f64  _installed.
Remed │ │ │ +000e26e0: 6961 7469 6f6e 2050 7570 7065 7420 736e iation Puppet sn │ │ │ +000e26f0: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
Complexity:low
Disrup │ │ │ +000e2370: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ +000e2380: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ +000e23c0: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ +000e23d0: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
│ │ │ +000e27a0: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ +000e27c0: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ +000e27f0: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ +000e2780: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ +000e2790: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ +000e27b0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ +000e27d0: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ +000e27e0: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:enable

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

Re │ │ │ +000e2950: 6d65 6469 6174 696f 6e20 4f53 4275 696c mediation OSBuil │ │ │ +000e2960: 6420 426c 7565 7072 696e 7420 736e 6970 d Blueprint snip │ │ │ +000e2970: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ +000e2980: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +000e2990: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +000e29a0: 7365 2220 6964 3d22 6964 3230 3922 3e3c se" id="id209">< │ │ │ +000e29b0: 7072 653e 3c63 6f64 653e 0a5b 5b70 6163 pre>.[[pac │ │ │ +000e29c0: 6b61 6765 735d 5d0a 6e61 6d65 203d 2022 kages]].name = " │ │ │ +000e29d0: 6c69 6273 656c 696e 7578 220a 7665 7273 libselinux".vers │ │ │ +000e29e0: 696f 6e20 3d20 222a 220a 3c2f 636f 6465 ion = "*".
Remediatio │ │ │ -000ea9f0: 6e20 4f53 4275 696c 6420 426c 7565 7072 n OSBuild Bluepr │ │ │ -000eaa00: 696e 7420 736e 6970 7065 7420 e287 b23c int snippet ...< │ │ │ -000eaa10: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
.[customizatio
│ │ │ -000eaa60: 6e73 2e73 6572 7669 6365 735d 0a6d 6173  ns.services].mas
│ │ │ -000eaa70: 6b65 6420 3d20 5b22 6176 6168 692d 6461  ked = ["avahi-da
│ │ │ -000eaa80: 656d 6f6e 225d 0a3c 2f63 6f64 653e 3c2f  emon"].
Remediati │ │ │ -000eab40: 6f6e 2050 7570 7065 7420 736e 6970 7065 on Puppet snippe │ │ │ -000eab50: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ -000eabd0: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ -000eabe0: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ -000eac00: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ -000eac10: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ -000eac30: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ -000eac50: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:enable
<
│ │ │ -000eac80: 636f 6465 3e69 6e63 6c75 6465 2064 6973  code>include dis
│ │ │ -000eac90: 6162 6c65 5f61 7661 6869 2d64 6165 6d6f  able_avahi-daemo
│ │ │ -000eaca0: 6e0a 0a63 6c61 7373 2064 6973 6162 6c65  n..class disable
│ │ │ -000eacb0: 5f61 7661 6869 2d64 6165 6d6f 6e20 7b0a  _avahi-daemon {.
│ │ │ -000eacc0: 2020 7365 7276 6963 6520 7b27 6176 6168    service {'avah
│ │ │ -000eacd0: 692d 6461 656d 6f6e 273a 0a20 2020 2065  i-daemon':.    e
│ │ │ -000eace0: 6e61 626c 6520 3d26 6774 3b20 6661 6c73  nable => fals
│ │ │ -000eacf0: 652c 0a20 2020 2065 6e73 7572 6520 3d26  e,.    ensure =&
│ │ │ -000ead00: 6774 3b20 2773 746f 7070 6564 272c 0a20  gt; 'stopped',. 
│ │ │ -000ead10: 207d 0a7d 0a3c 2f63 6f64 653e 3c2f 7072   }.}.
Remediation │ │ │ -000eadd0: 2041 6e73 6962 6c65 2073 6e69 7070 6574 Ansible snippet │ │ │ -000eade0: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Complexity │ │ │ -000eae70: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ -000eae90: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ -000eaea0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -000eaeb0: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ -000eaec0: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ -000eaee0: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:disable
<
│ │ │ -000eaf10: 636f 6465 3e2d 206e 616d 653a 2047 6174  code>- name: Gat
│ │ │ -000eaf20: 6865 7220 7468 6520 7061 636b 6167 6520  her the package 
│ │ │ -000eaf30: 6661 6374 730a 2020 7061 636b 6167 655f  facts.  package_
│ │ │ -000eaf40: 6661 6374 733a 0a20 2020 206d 616e 6167  facts:.    manag
│ │ │ -000eaf50: 6572 3a20 6175 746f 0a20 2074 6167 733a  er: auto.  tags:
│ │ │ -000eaf60: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -000eaf70: 2d43 4d2d 3628 6129 0a20 202d 204e 4953  -CM-6(a).  - NIS
│ │ │ -000eaf80: 542d 3830 302d 3533 2d43 4d2d 3728 6129  T-800-53-CM-7(a)
│ │ │ -000eaf90: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -000eafa0: 2d43 4d2d 3728 6229 0a20 202d 2050 4349  -CM-7(b).  - PCI
│ │ │ -000eafb0: 2d44 5353 7634 2d32 2e32 0a20 202d 2050  -DSSv4-2.2.  - P
│ │ │ -000eafc0: 4349 2d44 5353 7634 2d32 2e32 2e34 0a20  CI-DSSv4-2.2.4. 
│ │ │ -000eafd0: 202d 2064 6973 6162 6c65 5f73 7472 6174   - disable_strat
│ │ │ -000eafe0: 6567 790a 2020 2d20 6c6f 775f 636f 6d70  egy.  - low_comp
│ │ │ -000eaff0: 6c65 7869 7479 0a20 202d 206c 6f77 5f64  lexity.  - low_d
│ │ │ -000eb000: 6973 7275 7074 696f 6e0a 2020 2d20 6d65  isruption.  - me
│ │ │ -000eb010: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ -000eb020: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ -000eb030: 6564 0a20 202d 2073 6572 7669 6365 5f61  ed.  - service_a
│ │ │ -000eb040: 7661 6869 2d64 6165 6d6f 6e5f 6469 7361  vahi-daemon_disa
│ │ │ -000eb050: 626c 6564 0a0a 2d20 6e61 6d65 3a20 4469  bled..- name: Di
│ │ │ -000eb060: 7361 626c 6520 4176 6168 6920 5365 7276  sable Avahi Serv
│ │ │ -000eb070: 6572 2053 6f66 7477 6172 6520 2d20 4469  er Software - Di
│ │ │ -000eb080: 7361 626c 6520 7365 7276 6963 6520 6176  sable service av
│ │ │ -000eb090: 6168 692d 6461 656d 6f6e 0a20 2062 6c6f  ahi-daemon.  blo
│ │ │ -000eb0a0: 636b 3a0a 0a20 202d 206e 616d 653a 2044  ck:..  - name: D
│ │ │ -000eb0b0: 6973 6162 6c65 2041 7661 6869 2053 6572  isable Avahi Ser
│ │ │ -000eb0c0: 7665 7220 536f 6674 7761 7265 202d 2043  ver Software - C
│ │ │ -000eb0d0: 6f6c 6c65 6374 2073 7973 7465 6d64 2053  ollect systemd S
│ │ │ -000eb0e0: 6572 7669 6365 7320 5072 6573 656e 7420  ervices Present 
│ │ │ -000eb0f0: 696e 2074 6865 0a20 2020 2020 2053 7973  in the.      Sys
│ │ │ -000eb100: 7465 6d0a 2020 2020 616e 7369 626c 652e  tem.    ansible.
│ │ │ -000eb110: 6275 696c 7469 6e2e 636f 6d6d 616e 643a  builtin.command:
│ │ │ -000eb120: 2073 7973 7465 6d63 746c 202d 7120 6c69   systemctl -q li
│ │ │ -000eb130: 7374 2d75 6e69 742d 6669 6c65 7320 2d2d  st-unit-files --
│ │ │ -000eb140: 7479 7065 2073 6572 7669 6365 0a20 2020  type service.   
│ │ │ -000eb150: 2072 6567 6973 7465 723a 2073 6572 7669   register: servi
│ │ │ -000eb160: 6365 5f65 7869 7374 730a 2020 2020 6368  ce_exists.    ch
│ │ │ -000eb170: 616e 6765 645f 7768 656e 3a20 6661 6c73  anged_when: fals
│ │ │ -000eb180: 650a 2020 2020 6661 696c 6564 5f77 6865  e.    failed_whe
│ │ │ -000eb190: 6e3a 2073 6572 7669 6365 5f65 7869 7374  n: service_exist
│ │ │ -000eb1a0: 732e 7263 206e 6f74 2069 6e20 5b30 2c20  s.rc not in [0, 
│ │ │ -000eb1b0: 315d 0a20 2020 2063 6865 636b 5f6d 6f64  1].    check_mod
│ │ │ -000eb1c0: 653a 2066 616c 7365 0a0a 2020 2d20 6e61  e: false..  - na
│ │ │ -000eb1d0: 6d65 3a20 4469 7361 626c 6520 4176 6168  me: Disable Avah
│ │ │ -000eb1e0: 6920 5365 7276 6572 2053 6f66 7477 6172  i Server Softwar
│ │ │ -000eb1f0: 6520 2d20 456e 7375 7265 2061 7661 6869  e - Ensure avahi
│ │ │ -000eb200: 2d64 6165 6d6f 6e2e 7365 7276 6963 6520  -daemon.service 
│ │ │ -000eb210: 6973 204d 6173 6b65 640a 2020 2020 616e  is Masked.    an
│ │ │ -000eb220: 7369 626c 652e 6275 696c 7469 6e2e 7379  sible.builtin.sy
│ │ │ -000eb230: 7374 656d 643a 0a20 2020 2020 206e 616d  stemd:.      nam
│ │ │ -000eb240: 653a 2061 7661 6869 2d64 6165 6d6f 6e2e  e: avahi-daemon.
│ │ │ -000eb250: 7365 7276 6963 650a 2020 2020 2020 7374  service.      st
│ │ │ -000eb260: 6174 653a 2073 746f 7070 6564 0a20 2020  ate: stopped.   
│ │ │ -000eb270: 2020 2065 6e61 626c 6564 3a20 6661 6c73     enabled: fals
│ │ │ -000eb280: 650a 2020 2020 2020 6d61 736b 6564 3a20  e.      masked: 
│ │ │ -000eb290: 7472 7565 0a20 2020 2077 6865 6e3a 2073  true.    when: s
│ │ │ -000eb2a0: 6572 7669 6365 5f65 7869 7374 732e 7374  ervice_exists.st
│ │ │ -000eb2b0: 646f 7574 5f6c 696e 6573 2069 7320 7365  dout_lines is se
│ │ │ -000eb2c0: 6172 6368 2822 6176 6168 692d 6461 656d  arch("avahi-daem
│ │ │ -000eb2d0: 6f6e 2e73 6572 7669 6365 222c 206d 756c  on.service", mul
│ │ │ -000eb2e0: 7469 6c69 6e65 3d54 7275 6529 0a0a 2020  tiline=True)..  
│ │ │ -000eb2f0: 2d20 6e61 6d65 3a20 556e 6974 2053 6f63  - name: Unit Soc
│ │ │ -000eb300: 6b65 7420 4578 6973 7473 202d 2061 7661  ket Exists - ava
│ │ │ -000eb310: 6869 2d64 6165 6d6f 6e2e 736f 636b 6574  hi-daemon.socket
│ │ │ -000eb320: 0a20 2020 2061 6e73 6962 6c65 2e62 7569  .    ansible.bui
│ │ │ -000eb330: 6c74 696e 2e63 6f6d 6d61 6e64 3a20 7379  ltin.command: sy
│ │ │ -000eb340: 7374 656d 6374 6c20 2d71 206c 6973 742d  stemctl -q list-
│ │ │ -000eb350: 756e 6974 2d66 696c 6573 2061 7661 6869  unit-files avahi
│ │ │ -000eb360: 2d64 6165 6d6f 6e2e 736f 636b 6574 0a20  -daemon.socket. 
│ │ │ -000eb370: 2020 2072 6567 6973 7465 723a 2073 6f63     register: soc
│ │ │ -000eb380: 6b65 745f 6669 6c65 5f65 7869 7374 730a  ket_file_exists.
│ │ │ -000eb390: 2020 2020 6368 616e 6765 645f 7768 656e      changed_when
│ │ │ -000eb3a0: 3a20 6661 6c73 650a 2020 2020 6661 696c  : false.    fail
│ │ │ -000eb3b0: 6564 5f77 6865 6e3a 2073 6f63 6b65 745f  ed_when: socket_
│ │ │ -000eb3c0: 6669 6c65 5f65 7869 7374 732e 7263 206e  file_exists.rc n
│ │ │ -000eb3d0: 6f74 2069 6e20 5b30 2c20 315d 0a20 2020  ot in [0, 1].   
│ │ │ -000eb3e0: 2063 6865 636b 5f6d 6f64 653a 2066 616c   check_mode: fal
│ │ │ -000eb3f0: 7365 0a0a 2020 2d20 6e61 6d65 3a20 4469  se..  - name: Di
│ │ │ -000eb400: 7361 626c 6520 4176 6168 6920 5365 7276  sable Avahi Serv
│ │ │ -000eb410: 6572 2053 6f66 7477 6172 6520 2d20 4469  er Software - Di
│ │ │ -000eb420: 7361 626c 6520 536f 636b 6574 2061 7661  sable Socket ava
│ │ │ -000eb430: 6869 2d64 6165 6d6f 6e0a 2020 2020 616e  hi-daemon.    an
│ │ │ -000eb440: 7369 626c 652e 6275 696c 7469 6e2e 7379  sible.builtin.sy
│ │ │ -000eb450: 7374 656d 643a 0a20 2020 2020 206e 616d  stemd:.      nam
│ │ │ -000eb460: 653a 2061 7661 6869 2d64 6165 6d6f 6e2e  e: avahi-daemon.
│ │ │ -000eb470: 736f 636b 6574 0a20 2020 2020 2065 6e61  socket.      ena
│ │ │ -000eb480: 626c 6564 3a20 6661 6c73 650a 2020 2020  bled: false.    
│ │ │ -000eb490: 2020 7374 6174 653a 2073 746f 7070 6564    state: stopped
│ │ │ -000eb4a0: 0a20 2020 2020 206d 6173 6b65 643a 2074  .      masked: t
│ │ │ -000eb4b0: 7275 650a 2020 2020 7768 656e 3a20 736f  rue.    when: so
│ │ │ -000eb4c0: 636b 6574 5f66 696c 655f 6578 6973 7473  cket_file_exists
│ │ │ -000eb4d0: 2e73 7464 6f75 745f 6c69 6e65 7320 6973  .stdout_lines is
│ │ │ -000eb4e0: 2073 6561 7263 6828 2261 7661 6869 2d64   search("avahi-d
│ │ │ -000eb4f0: 6165 6d6f 6e2e 736f 636b 6574 222c 206d  aemon.socket", m
│ │ │ -000eb500: 756c 7469 6c69 6e65 3d54 7275 6529 0a20  ultiline=True). 
│ │ │ -000eb510: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ -000eb520: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ -000eb530: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -000eb540: 4d2d 3728 6129 0a20 202d 204e 4953 542d  M-7(a).  - NIST-
│ │ │ -000eb550: 3830 302d 3533 2d43 4d2d 3728 6229 0a20  800-53-CM-7(b). 
│ │ │ -000eb560: 202d 2050 4349 2d44 5353 7634 2d32 2e32   - PCI-DSSv4-2.2
│ │ │ -000eb570: 0a20 202d 2050 4349 2d44 5353 7634 2d32  .  - PCI-DSSv4-2
│ │ │ -000eb580: 2e32 2e34 0a20 202d 2064 6973 6162 6c65  .2.4.  - disable
│ │ │ -000eb590: 5f73 7472 6174 6567 790a 2020 2d20 6c6f  _strategy.  - lo
│ │ │ -000eb5a0: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ -000eb5b0: 206c 6f77 5f64 6973 7275 7074 696f 6e0a   low_disruption.
│ │ │ -000eb5c0: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ -000eb5d0: 6974 790a 2020 2d20 6e6f 5f72 6562 6f6f  ity.  - no_reboo
│ │ │ -000eb5e0: 745f 6e65 6564 6564 0a20 202d 2073 6572  t_needed.  - ser
│ │ │ -000eb5f0: 7669 6365 5f61 7661 6869 2d64 6165 6d6f  vice_avahi-daemo
│ │ │ -000eb600: 6e5f 6469 7361 626c 6564 0a20 202d 2073  n_disabled.  - s
│ │ │ -000eb610: 7065 6369 616c 5f73 6572 7669 6365 5f62  pecial_service_b
│ │ │ -000eb620: 6c6f 636b 0a20 2077 6865 6e3a 2028 2022  lock.  when: ( "
│ │ │ -000eb630: 6176 6168 6922 2069 6e20 616e 7369 626c  avahi" in ansibl
│ │ │ -000eb640: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -000eb650: 2061 6e64 2022 6b65 726e 656c 2220 696e   and "kernel" in
│ │ │ -000eb660: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -000eb670: 6163 6b61 6765 730a 2020 2020 290a 3c2f  ackages.    ).
< │ │ │ +000eaa80: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ +000eaa90: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ +000eaab0: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ +000eaac0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ +000eaae0: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ +000eab00: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:disable
│ │ │ +000eab30: 3c63 6f64 653e 2d20 6e61 6d65 3a20 4761  - name: Ga
│ │ │ +000eab40: 7468 6572 2074 6865 2070 6163 6b61 6765  ther the package
│ │ │ +000eab50: 2066 6163 7473 0a20 2070 6163 6b61 6765   facts.  package
│ │ │ +000eab60: 5f66 6163 7473 3a0a 2020 2020 6d61 6e61  _facts:.    mana
│ │ │ +000eab70: 6765 723a 2061 7574 6f0a 2020 7461 6773  ger: auto.  tags
│ │ │ +000eab80: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ +000eab90: 332d 434d 2d36 2861 290a 2020 2d20 4e49  3-CM-6(a).  - NI
│ │ │ +000eaba0: 5354 2d38 3030 2d35 332d 434d 2d37 2861  ST-800-53-CM-7(a
│ │ │ +000eabb0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +000eabc0: 332d 434d 2d37 2862 290a 2020 2d20 5043  3-CM-7(b).  - PC
│ │ │ +000eabd0: 492d 4453 5376 342d 322e 320a 2020 2d20  I-DSSv4-2.2.  - 
│ │ │ +000eabe0: 5043 492d 4453 5376 342d 322e 322e 340a  PCI-DSSv4-2.2.4.
│ │ │ +000eabf0: 2020 2d20 6469 7361 626c 655f 7374 7261    - disable_stra
│ │ │ +000eac00: 7465 6779 0a20 202d 206c 6f77 5f63 6f6d  tegy.  - low_com
│ │ │ +000eac10: 706c 6578 6974 790a 2020 2d20 6c6f 775f  plexity.  - low_
│ │ │ +000eac20: 6469 7372 7570 7469 6f6e 0a20 202d 206d  disruption.  - m
│ │ │ +000eac30: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ +000eac40: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ +000eac50: 6465 640a 2020 2d20 7365 7276 6963 655f  ded.  - service_
│ │ │ +000eac60: 6176 6168 692d 6461 656d 6f6e 5f64 6973  avahi-daemon_dis
│ │ │ +000eac70: 6162 6c65 640a 0a2d 206e 616d 653a 2044  abled..- name: D
│ │ │ +000eac80: 6973 6162 6c65 2041 7661 6869 2053 6572  isable Avahi Ser
│ │ │ +000eac90: 7665 7220 536f 6674 7761 7265 202d 2044  ver Software - D
│ │ │ +000eaca0: 6973 6162 6c65 2073 6572 7669 6365 2061  isable service a
│ │ │ +000eacb0: 7661 6869 2d64 6165 6d6f 6e0a 2020 626c  vahi-daemon.  bl
│ │ │ +000eacc0: 6f63 6b3a 0a0a 2020 2d20 6e61 6d65 3a20  ock:..  - name: 
│ │ │ +000eacd0: 4469 7361 626c 6520 4176 6168 6920 5365  Disable Avahi Se
│ │ │ +000eace0: 7276 6572 2053 6f66 7477 6172 6520 2d20  rver Software - 
│ │ │ +000eacf0: 436f 6c6c 6563 7420 7379 7374 656d 6420  Collect systemd 
│ │ │ +000ead00: 5365 7276 6963 6573 2050 7265 7365 6e74  Services Present
│ │ │ +000ead10: 2069 6e20 7468 650a 2020 2020 2020 5379   in the.      Sy
│ │ │ +000ead20: 7374 656d 0a20 2020 2061 6e73 6962 6c65  stem.    ansible
│ │ │ +000ead30: 2e62 7569 6c74 696e 2e63 6f6d 6d61 6e64  .builtin.command
│ │ │ +000ead40: 3a20 7379 7374 656d 6374 6c20 2d71 206c  : systemctl -q l
│ │ │ +000ead50: 6973 742d 756e 6974 2d66 696c 6573 202d  ist-unit-files -
│ │ │ +000ead60: 2d74 7970 6520 7365 7276 6963 650a 2020  -type service.  
│ │ │ +000ead70: 2020 7265 6769 7374 6572 3a20 7365 7276    register: serv
│ │ │ +000ead80: 6963 655f 6578 6973 7473 0a20 2020 2063  ice_exists.    c
│ │ │ +000ead90: 6861 6e67 6564 5f77 6865 6e3a 2066 616c  hanged_when: fal
│ │ │ +000eada0: 7365 0a20 2020 2066 6169 6c65 645f 7768  se.    failed_wh
│ │ │ +000eadb0: 656e 3a20 7365 7276 6963 655f 6578 6973  en: service_exis
│ │ │ +000eadc0: 7473 2e72 6320 6e6f 7420 696e 205b 302c  ts.rc not in [0,
│ │ │ +000eadd0: 2031 5d0a 2020 2020 6368 6563 6b5f 6d6f   1].    check_mo
│ │ │ +000eade0: 6465 3a20 6661 6c73 650a 0a20 202d 206e  de: false..  - n
│ │ │ +000eadf0: 616d 653a 2044 6973 6162 6c65 2041 7661  ame: Disable Ava
│ │ │ +000eae00: 6869 2053 6572 7665 7220 536f 6674 7761  hi Server Softwa
│ │ │ +000eae10: 7265 202d 2045 6e73 7572 6520 6176 6168  re - Ensure avah
│ │ │ +000eae20: 692d 6461 656d 6f6e 2e73 6572 7669 6365  i-daemon.service
│ │ │ +000eae30: 2069 7320 4d61 736b 6564 0a20 2020 2061   is Masked.    a
│ │ │ +000eae40: 6e73 6962 6c65 2e62 7569 6c74 696e 2e73  nsible.builtin.s
│ │ │ +000eae50: 7973 7465 6d64 3a0a 2020 2020 2020 6e61  ystemd:.      na
│ │ │ +000eae60: 6d65 3a20 6176 6168 692d 6461 656d 6f6e  me: avahi-daemon
│ │ │ +000eae70: 2e73 6572 7669 6365 0a20 2020 2020 2073  .service.      s
│ │ │ +000eae80: 7461 7465 3a20 7374 6f70 7065 640a 2020  tate: stopped.  
│ │ │ +000eae90: 2020 2020 656e 6162 6c65 643a 2066 616c      enabled: fal
│ │ │ +000eaea0: 7365 0a20 2020 2020 206d 6173 6b65 643a  se.      masked:
│ │ │ +000eaeb0: 2074 7275 650a 2020 2020 7768 656e 3a20   true.    when: 
│ │ │ +000eaec0: 7365 7276 6963 655f 6578 6973 7473 2e73  service_exists.s
│ │ │ +000eaed0: 7464 6f75 745f 6c69 6e65 7320 6973 2073  tdout_lines is s
│ │ │ +000eaee0: 6561 7263 6828 2261 7661 6869 2d64 6165  earch("avahi-dae
│ │ │ +000eaef0: 6d6f 6e2e 7365 7276 6963 6522 2c20 6d75  mon.service", mu
│ │ │ +000eaf00: 6c74 696c 696e 653d 5472 7565 290a 0a20  ltiline=True).. 
│ │ │ +000eaf10: 202d 206e 616d 653a 2055 6e69 7420 536f   - name: Unit So
│ │ │ +000eaf20: 636b 6574 2045 7869 7374 7320 2d20 6176  cket Exists - av
│ │ │ +000eaf30: 6168 692d 6461 656d 6f6e 2e73 6f63 6b65  ahi-daemon.socke
│ │ │ +000eaf40: 740a 2020 2020 616e 7369 626c 652e 6275  t.    ansible.bu
│ │ │ +000eaf50: 696c 7469 6e2e 636f 6d6d 616e 643a 2073  iltin.command: s
│ │ │ +000eaf60: 7973 7465 6d63 746c 202d 7120 6c69 7374  ystemctl -q list
│ │ │ +000eaf70: 2d75 6e69 742d 6669 6c65 7320 6176 6168  -unit-files avah
│ │ │ +000eaf80: 692d 6461 656d 6f6e 2e73 6f63 6b65 740a  i-daemon.socket.
│ │ │ +000eaf90: 2020 2020 7265 6769 7374 6572 3a20 736f      register: so
│ │ │ +000eafa0: 636b 6574 5f66 696c 655f 6578 6973 7473  cket_file_exists
│ │ │ +000eafb0: 0a20 2020 2063 6861 6e67 6564 5f77 6865  .    changed_whe
│ │ │ +000eafc0: 6e3a 2066 616c 7365 0a20 2020 2066 6169  n: false.    fai
│ │ │ +000eafd0: 6c65 645f 7768 656e 3a20 736f 636b 6574  led_when: socket
│ │ │ +000eafe0: 5f66 696c 655f 6578 6973 7473 2e72 6320  _file_exists.rc 
│ │ │ +000eaff0: 6e6f 7420 696e 205b 302c 2031 5d0a 2020  not in [0, 1].  
│ │ │ +000eb000: 2020 6368 6563 6b5f 6d6f 6465 3a20 6661    check_mode: fa
│ │ │ +000eb010: 6c73 650a 0a20 202d 206e 616d 653a 2044  lse..  - name: D
│ │ │ +000eb020: 6973 6162 6c65 2041 7661 6869 2053 6572  isable Avahi Ser
│ │ │ +000eb030: 7665 7220 536f 6674 7761 7265 202d 2044  ver Software - D
│ │ │ +000eb040: 6973 6162 6c65 2053 6f63 6b65 7420 6176  isable Socket av
│ │ │ +000eb050: 6168 692d 6461 656d 6f6e 0a20 2020 2061  ahi-daemon.    a
│ │ │ +000eb060: 6e73 6962 6c65 2e62 7569 6c74 696e 2e73  nsible.builtin.s
│ │ │ +000eb070: 7973 7465 6d64 3a0a 2020 2020 2020 6e61  ystemd:.      na
│ │ │ +000eb080: 6d65 3a20 6176 6168 692d 6461 656d 6f6e  me: avahi-daemon
│ │ │ +000eb090: 2e73 6f63 6b65 740a 2020 2020 2020 656e  .socket.      en
│ │ │ +000eb0a0: 6162 6c65 643a 2066 616c 7365 0a20 2020  abled: false.   
│ │ │ +000eb0b0: 2020 2073 7461 7465 3a20 7374 6f70 7065     state: stoppe
│ │ │ +000eb0c0: 640a 2020 2020 2020 6d61 736b 6564 3a20  d.      masked: 
│ │ │ +000eb0d0: 7472 7565 0a20 2020 2077 6865 6e3a 2073  true.    when: s
│ │ │ +000eb0e0: 6f63 6b65 745f 6669 6c65 5f65 7869 7374  ocket_file_exist
│ │ │ +000eb0f0: 732e 7374 646f 7574 5f6c 696e 6573 2069  s.stdout_lines i
│ │ │ +000eb100: 7320 7365 6172 6368 2822 6176 6168 692d  s search("avahi-
│ │ │ +000eb110: 6461 656d 6f6e 2e73 6f63 6b65 7422 2c20  daemon.socket", 
│ │ │ +000eb120: 6d75 6c74 696c 696e 653d 5472 7565 290a  multiline=True).
│ │ │ +000eb130: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ +000eb140: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ +000eb150: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +000eb160: 434d 2d37 2861 290a 2020 2d20 4e49 5354  CM-7(a).  - NIST
│ │ │ +000eb170: 2d38 3030 2d35 332d 434d 2d37 2862 290a  -800-53-CM-7(b).
│ │ │ +000eb180: 2020 2d20 5043 492d 4453 5376 342d 322e    - PCI-DSSv4-2.
│ │ │ +000eb190: 320a 2020 2d20 5043 492d 4453 5376 342d  2.  - PCI-DSSv4-
│ │ │ +000eb1a0: 322e 322e 340a 2020 2d20 6469 7361 626c  2.2.4.  - disabl
│ │ │ +000eb1b0: 655f 7374 7261 7465 6779 0a20 202d 206c  e_strategy.  - l
│ │ │ +000eb1c0: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ +000eb1d0: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ +000eb1e0: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ +000eb1f0: 7269 7479 0a20 202d 206e 6f5f 7265 626f  rity.  - no_rebo
│ │ │ +000eb200: 6f74 5f6e 6565 6465 640a 2020 2d20 7365  ot_needed.  - se
│ │ │ +000eb210: 7276 6963 655f 6176 6168 692d 6461 656d  rvice_avahi-daem
│ │ │ +000eb220: 6f6e 5f64 6973 6162 6c65 640a 2020 2d20  on_disabled.  - 
│ │ │ +000eb230: 7370 6563 6961 6c5f 7365 7276 6963 655f  special_service_
│ │ │ +000eb240: 626c 6f63 6b0a 2020 7768 656e 3a20 2820  block.  when: ( 
│ │ │ +000eb250: 2261 7661 6869 2220 696e 2061 6e73 6962  "avahi" in ansib
│ │ │ +000eb260: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +000eb270: 7320 616e 6420 226b 6572 6e65 6c22 2069  s and "kernel" i
│ │ │ +000eb280: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +000eb290: 7061 636b 6167 6573 0a20 2020 2029 0a3c  packages.    ).<
│ │ │ +000eb2a0: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ +000eb350: 656d 6564 6961 7469 6f6e 2050 7570 7065 emediation Puppe │ │ │ +000eb360: 7420 736e 6970 7065 7420 e287 b23c 2f61 t snippet ...
< │ │ │ +000eb400: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +000eb410: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ +000eb460: 3c74 723e 3c74 683e 5374 7261 7465 6779
inc
│ │ │ +000eb4a0: 6c75 6465 2064 6973 6162 6c65 5f61 7661  lude disable_ava
│ │ │ +000eb4b0: 6869 2d64 6165 6d6f 6e0a 0a63 6c61 7373  hi-daemon..class
│ │ │ +000eb4c0: 2064 6973 6162 6c65 5f61 7661 6869 2d64   disable_avahi-d
│ │ │ +000eb4d0: 6165 6d6f 6e20 7b0a 2020 7365 7276 6963  aemon {.  servic
│ │ │ +000eb4e0: 6520 7b27 6176 6168 692d 6461 656d 6f6e  e {'avahi-daemon
│ │ │ +000eb4f0: 273a 0a20 2020 2065 6e61 626c 6520 3d26  ':.    enable =&
│ │ │ +000eb500: 6774 3b20 6661 6c73 652c 0a20 2020 2065  gt; false,.    e
│ │ │ +000eb510: 6e73 7572 6520 3d26 6774 3b20 2773 746f  nsure => 'sto
│ │ │ +000eb520: 7070 6564 272c 0a20 207d 0a7d 0a3c 2f63  pped',.  }.}.
│ │ │ +000eb540: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ +000eb5e0: 6564 6961 7469 6f6e 204f 5342 7569 6c64 ediation OSBuild │ │ │ +000eb5f0: 2042 6c75 6570 7269 6e74 2073 6e69 7070 Blueprint snipp │ │ │ +000eb600: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...

.[custo │ │ │ +000eb650: 6d69 7a61 7469 6f6e 732e 7365 7276 6963 mizations.servic │ │ │ +000eb660: 6573 5d0a 6d61 736b 6564 203d 205b 2261 es].masked = ["a │ │ │ +000eb670: 7661 6869 2d64 6165 6d6f 6e22 5d0a 3c2f vahi-daemon"].

C │ │ │ +000eb3f0: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ +000eb420: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ +000eb430: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ +000eb470: 3a3c 2f74 683e 3c74 643e 656e 6162 6c65 :enable │ │ │ +000eb480: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Remedi │ │ │ -000f69b0: 6174 696f 6e20 4f53 4275 696c 6420 426c ation OSBuild Bl │ │ │ -000f69c0: 7565 7072 696e 7420 736e 6970 7065 7420 ueprint snippet │ │ │ -000f69d0: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
│ │ │ -000f6a10: 3c63 6f64 653e 0a5b 5b70 6163 6b61 6765  .[[package
│ │ │ -000f6a20: 735d 5d0a 6e61 6d65 203d 2022 6372 6f6e  s]].name = "cron
│ │ │ -000f6a30: 220a 7665 7273 696f 6e20 3d20 222a 220a  ".version = "*".
│ │ │ -000f6a40: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ -000f6af0: 5265 6d65 6469 6174 696f 6e20 5075 7070 Remediation Pupp │ │ │ -000f6b00: 6574 2073 6e69 7070 6574 20e2 87b2 3c2f et snippet ...
│ │ │ -000f6ba0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
in
│ │ │ -000f6c40: 636c 7564 6520 696e 7374 616c 6c5f 6372  clude install_cr
│ │ │ -000f6c50: 6f6e 0a0a 636c 6173 7320 696e 7374 616c  on..class instal
│ │ │ -000f6c60: 6c5f 6372 6f6e 207b 0a20 2070 6163 6b61  l_cron {.  packa
│ │ │ -000f6c70: 6765 207b 2027 6372 6f6e 273a 0a20 2020  ge { 'cron':.   
│ │ │ -000f6c80: 2065 6e73 7572 6520 3d26 6774 3b20 2769   ensure => 'i
│ │ │ -000f6c90: 6e73 7461 6c6c 6564 272c 0a20 207d 0a7d  nstalled',.  }.}
│ │ │ -000f6ca0: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation Ans │ │ │ -000f6d60: 6962 6c65 2073 6e69 7070 6574 20e2 87b2 ible snippet ... │ │ │ -000f6d70: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
│ │ │ -000f6b90: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -000f6bc0: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -000f6bd0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -000f6c10: 793a 3c2f 7468 3e3c 7464 3e65 6e61 626c y:enabl │ │ │ -000f6c20: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
Complexity: │ │ │ -000f6e40: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -000f6e50: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f

│ │ │ -000f6ea0: 2d20 6e61 6d65 3a20 4761 7468 6572 2074  - name: Gather t
│ │ │ -000f6eb0: 6865 2070 6163 6b61 6765 2066 6163 7473  he package facts
│ │ │ -000f6ec0: 0a20 2070 6163 6b61 6765 5f66 6163 7473  .  package_facts
│ │ │ -000f6ed0: 3a0a 2020 2020 6d61 6e61 6765 723a 2061  :.    manager: a
│ │ │ -000f6ee0: 7574 6f0a 2020 7461 6773 3a0a 2020 2d20  uto.  tags:.  - 
│ │ │ -000f6ef0: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ -000f6f00: 2861 290a 2020 2d20 5043 492d 4453 5376  (a).  - PCI-DSSv
│ │ │ -000f6f10: 342d 322e 320a 2020 2d20 5043 492d 4453  4-2.2.  - PCI-DS
│ │ │ -000f6f20: 5376 342d 322e 322e 360a 2020 2d20 656e  Sv4-2.2.6.  - en
│ │ │ -000f6f30: 6162 6c65 5f73 7472 6174 6567 790a 2020  able_strategy.  
│ │ │ -000f6f40: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ -000f6f50: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ -000f6f60: 696f 6e0a 2020 2d20 6d65 6469 756d 5f73  ion.  - medium_s
│ │ │ -000f6f70: 6576 6572 6974 790a 2020 2d20 6e6f 5f72  everity.  - no_r
│ │ │ -000f6f80: 6562 6f6f 745f 6e65 6564 6564 0a20 202d  eboot_needed.  -
│ │ │ -000f6f90: 2070 6163 6b61 6765 5f63 726f 6e5f 696e   package_cron_in
│ │ │ -000f6fa0: 7374 616c 6c65 640a 0a2d 206e 616d 653a  stalled..- name:
│ │ │ -000f6fb0: 2045 6e73 7572 6520 6372 6f6e 2069 7320   Ensure cron is 
│ │ │ -000f6fc0: 696e 7374 616c 6c65 640a 2020 616e 7369  installed.  ansi
│ │ │ -000f6fd0: 626c 652e 6275 696c 7469 6e2e 7061 636b  ble.builtin.pack
│ │ │ -000f6fe0: 6167 653a 0a20 2020 206e 616d 653a 2063  age:.    name: c
│ │ │ -000f6ff0: 726f 6e0a 2020 2020 7374 6174 653a 2070  ron.    state: p
│ │ │ -000f7000: 7265 7365 6e74 0a20 2077 6865 6e3a 2027  resent.  when: '
│ │ │ -000f7010: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ -000f7020: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -000f7030: 6573 270a 2020 7461 6773 3a0a 2020 2d20  es'.  tags:.  - 
│ │ │ -000f7040: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ -000f7050: 2861 290a 2020 2d20 5043 492d 4453 5376  (a).  - PCI-DSSv
│ │ │ -000f7060: 342d 322e 320a 2020 2d20 5043 492d 4453  4-2.2.  - PCI-DS
│ │ │ -000f7070: 5376 342d 322e 322e 360a 2020 2d20 656e  Sv4-2.2.6.  - en
│ │ │ -000f7080: 6162 6c65 5f73 7472 6174 6567 790a 2020  able_strategy.  
│ │ │ -000f7090: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ -000f70a0: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ -000f70b0: 696f 6e0a 2020 2d20 6d65 6469 756d 5f73  ion.  - medium_s
│ │ │ -000f70c0: 6576 6572 6974 790a 2020 2d20 6e6f 5f72  everity.  - no_r
│ │ │ -000f70d0: 6562 6f6f 745f 6e65 6564 6564 0a20 202d  eboot_needed.  -
│ │ │ -000f70e0: 2070 6163 6b61 6765 5f63 726f 6e5f 696e   package_cron_in
│ │ │ -000f70f0: 7374 616c 6c65 640a 3c2f 636f 6465 3e3c  stalled.<
│ │ │ +000f69b0: 6174 696f 6e20 416e 7369 626c 6520 736e  ation Ansible sn
│ │ │ +000f69c0: 6970 7065 7420 e287 b23c 2f61 3e3c 6272  ippet ...
low
Disru │ │ │ -000f6e20: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ -000f6e30: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ -000f6e70: 6567 793a 3c2f 7468 3e3c 7464 3e65 6e61 egy:ena │ │ │ -000f6e80: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
│ │ │ +000f6a70: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ +000f6a90: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ +000f6ac0: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ +000f6a50: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ +000f6a60: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ +000f6a80: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ +000f6aa0: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ +000f6ab0: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:enable

- name: │ │ │ +000f6b00: 2047 6174 6865 7220 7468 6520 7061 636b Gather the pack │ │ │ +000f6b10: 6167 6520 6661 6374 730a 2020 7061 636b age facts. pack │ │ │ +000f6b20: 6167 655f 6661 6374 733a 0a20 2020 206d age_facts:. m │ │ │ +000f6b30: 616e 6167 6572 3a20 6175 746f 0a20 2074 anager: auto. t │ │ │ +000f6b40: 6167 733a 0a20 202d 204e 4953 542d 3830 ags:. - NIST-80 │ │ │ +000f6b50: 302d 3533 2d43 4d2d 3628 6129 0a20 202d 0-53-CM-6(a). - │ │ │ +000f6b60: 2050 4349 2d44 5353 7634 2d32 2e32 0a20 PCI-DSSv4-2.2. │ │ │ +000f6b70: 202d 2050 4349 2d44 5353 7634 2d32 2e32 - PCI-DSSv4-2.2 │ │ │ +000f6b80: 2e36 0a20 202d 2065 6e61 626c 655f 7374 .6. - enable_st │ │ │ +000f6b90: 7261 7465 6779 0a20 202d 206c 6f77 5f63 rategy. - low_c │ │ │ +000f6ba0: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f omplexity. - lo │ │ │ +000f6bb0: 775f 6469 7372 7570 7469 6f6e 0a20 202d w_disruption. - │ │ │ +000f6bc0: 206d 6564 6975 6d5f 7365 7665 7269 7479 medium_severity │ │ │ +000f6bd0: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e . - no_reboot_n │ │ │ +000f6be0: 6565 6465 640a 2020 2d20 7061 636b 6167 eeded. - packag │ │ │ +000f6bf0: 655f 6372 6f6e 5f69 6e73 7461 6c6c 6564 e_cron_installed │ │ │ +000f6c00: 0a0a 2d20 6e61 6d65 3a20 456e 7375 7265 ..- name: Ensure │ │ │ +000f6c10: 2063 726f 6e20 6973 2069 6e73 7461 6c6c cron is install │ │ │ +000f6c20: 6564 0a20 2061 6e73 6962 6c65 2e62 7569 ed. ansible.bui │ │ │ +000f6c30: 6c74 696e 2e70 6163 6b61 6765 3a0a 2020 ltin.package:. │ │ │ +000f6c40: 2020 6e61 6d65 3a20 6372 6f6e 0a20 2020 name: cron. │ │ │ +000f6c50: 2073 7461 7465 3a20 7072 6573 656e 740a state: present. │ │ │ +000f6c60: 2020 7768 656e 3a20 2722 6b65 726e 656c when: '"kernel │ │ │ +000f6c70: 2220 696e 2061 6e73 6962 6c65 5f66 6163 " in ansible_fac │ │ │ +000f6c80: 7473 2e70 6163 6b61 6765 7327 0a20 2074 ts.packages'. t │ │ │ +000f6c90: 6167 733a 0a20 202d 204e 4953 542d 3830 ags:. - NIST-80 │ │ │ +000f6ca0: 302d 3533 2d43 4d2d 3628 6129 0a20 202d 0-53-CM-6(a). - │ │ │ +000f6cb0: 2050 4349 2d44 5353 7634 2d32 2e32 0a20 PCI-DSSv4-2.2. │ │ │ +000f6cc0: 202d 2050 4349 2d44 5353 7634 2d32 2e32 - PCI-DSSv4-2.2 │ │ │ +000f6cd0: 2e36 0a20 202d 2065 6e61 626c 655f 7374 .6. - enable_st │ │ │ +000f6ce0: 7261 7465 6779 0a20 202d 206c 6f77 5f63 rategy. - low_c │ │ │ +000f6cf0: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f omplexity. - lo │ │ │ +000f6d00: 775f 6469 7372 7570 7469 6f6e 0a20 202d w_disruption. - │ │ │ +000f6d10: 206d 6564 6975 6d5f 7365 7665 7269 7479 medium_severity │ │ │ +000f6d20: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e . - no_reboot_n │ │ │ +000f6d30: 6565 6465 640a 2020 2d20 7061 636b 6167 eeded. - packag │ │ │ +000f6d40: 655f 6372 6f6e 5f69 6e73 7461 6c6c 6564 e_cron_installed │ │ │ +000f6d50: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f .

Remediation Pup │ │ │ +000f6e10: 7065 7420 736e 6970 7065 7420 e287 b23c pet snippet ...< │ │ │ +000f6e20: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
< │ │ │ +000f6ef0: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +000f6f00: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
i
│ │ │ +000f6f50: 6e63 6c75 6465 2069 6e73 7461 6c6c 5f63  nclude install_c
│ │ │ +000f6f60: 726f 6e0a 0a63 6c61 7373 2069 6e73 7461  ron..class insta
│ │ │ +000f6f70: 6c6c 5f63 726f 6e20 7b0a 2020 7061 636b  ll_cron {.  pack
│ │ │ +000f6f80: 6167 6520 7b20 2763 726f 6e27 3a0a 2020  age { 'cron':.  
│ │ │ +000f6f90: 2020 656e 7375 7265 203d 2667 743b 2027    ensure => '
│ │ │ +000f6fa0: 696e 7374 616c 6c65 6427 2c0a 2020 7d0a  installed',.  }.
│ │ │ +000f6fb0: 7d0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  }.
< │ │ │ +000f6fc0: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation OS │ │ │ +000f7070: 4275 696c 6420 426c 7565 7072 696e 7420 Build Blueprint │ │ │ +000f7080: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ +000f7090: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
.[
│ │ │ +000f70d0: 5b70 6163 6b61 6765 735d 5d0a 6e61 6d65  [packages]].name
│ │ │ +000f70e0: 203d 2022 6372 6f6e 220a 7665 7273 696f   = "cron".versio
│ │ │ +000f70f0: 6e20 3d20 222a 220a 3c2f 636f 6465 3e3c  n = "*".<
│ │ │  000f7100: 2f70 7265 3e3c 2f64 6976 3e3c 2f64 6976  /pre>
Complexity:low
Disrup │ │ │ +000f6ed0: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ +000f6ee0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ +000f6f20: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ +000f6f30: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
│ │ │ 000f7130: 3c2f 7472 3e3c 7472 2064 6174 612d 7474 R │ │ │ -001139f0: 656d 6564 6961 7469 6f6e 204f 5342 7569 emediation OSBui │ │ │ -00113a00: 6c64 2042 6c75 6570 7269 6e74 2073 6e69 ld Blueprint sni │ │ │ -00113a10: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -00113a20: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -00113a50: 3c70 7265 3e3c 636f 6465 3e0a 5b5b 7061
.[[pa
│ │ │ -00113a60: 636b 6167 6573 5d5d 0a6e 616d 6520 3d20  ckages]].name = 
│ │ │ -00113a70: 2270 6f73 7466 6978 220a 7665 7273 696f  "postfix".versio
│ │ │ -00113a80: 6e20 3d20 222a 220a 3c2f 636f 6465 3e3c  n = "*".<
│ │ │ -00113a90: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>
Remediat │ │ │ -00113b40: 696f 6e20 5075 7070 6574 2073 6e69 7070 ion Puppet snipp │ │ │ -00113b50: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ -00113bd0: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ -00113be0: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -00113bf0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ -00113c30: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -00113c40: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ -00113c60: 7464 3e65 6e61 626c 653c 2f74 643e 3c2f td>enable
│ │ │ -00113c80: 3c63 6f64 653e 696e 636c 7564 6520 696e  include in
│ │ │ -00113c90: 7374 616c 6c5f 706f 7374 6669 780a 0a63  stall_postfix..c
│ │ │ -00113ca0: 6c61 7373 2069 6e73 7461 6c6c 5f70 6f73  lass install_pos
│ │ │ -00113cb0: 7466 6978 207b 0a20 2070 6163 6b61 6765  tfix {.  package
│ │ │ -00113cc0: 207b 2027 706f 7374 6669 7827 3a0a 2020   { 'postfix':.  
│ │ │ -00113cd0: 2020 656e 7375 7265 203d 2667 743b 2027    ensure => '
│ │ │ -00113ce0: 696e 7374 616c 6c65 6427 2c0a 2020 7d0a  installed',.  }.
│ │ │ -00113cf0: 7d0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  }.
< │ │ │ -00113d00: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation An │ │ │ -00113db0: 7369 626c 6520 736e 6970 7065 7420 e287 sible snippet .. │ │ │ -00113dc0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ -00113e40: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -00113e60: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -00113eb0: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
- name: Gather 
│ │ │ -00113f00: 7468 6520 7061 636b 6167 6520 6661 6374  the package fact
│ │ │ -00113f10: 730a 2020 7061 636b 6167 655f 6661 6374  s.  package_fact
│ │ │ -00113f20: 733a 0a20 2020 206d 616e 6167 6572 3a20  s:.    manager: 
│ │ │ -00113f30: 6175 746f 0a20 2074 6167 733a 0a20 202d  auto.  tags:.  -
│ │ │ -00113f40: 2050 4349 2d44 5353 7634 2d31 302e 350a   PCI-DSSv4-10.5.
│ │ │ -00113f50: 2020 2d20 5043 492d 4453 5376 342d 3130    - PCI-DSSv4-10
│ │ │ -00113f60: 2e35 2e31 0a20 202d 2065 6e61 626c 655f  .5.1.  - enable_
│ │ │ -00113f70: 7374 7261 7465 6779 0a20 202d 206c 6f77  strategy.  - low
│ │ │ -00113f80: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ -00113f90: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ -00113fa0: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ -00113fb0: 7479 0a20 202d 206e 6f5f 7265 626f 6f74  ty.  - no_reboot
│ │ │ -00113fc0: 5f6e 6565 6465 640a 2020 2d20 7061 636b  _needed.  - pack
│ │ │ -00113fd0: 6167 655f 706f 7374 6669 785f 696e 7374  age_postfix_inst
│ │ │ -00113fe0: 616c 6c65 640a 0a2d 206e 616d 653a 2045  alled..- name: E
│ │ │ -00113ff0: 6e73 7572 6520 706f 7374 6669 7820 6973  nsure postfix is
│ │ │ -00114000: 2069 6e73 7461 6c6c 6564 0a20 2061 6e73   installed.  ans
│ │ │ -00114010: 6962 6c65 2e62 7569 6c74 696e 2e70 6163  ible.builtin.pac
│ │ │ -00114020: 6b61 6765 3a0a 2020 2020 6e61 6d65 3a20  kage:.    name: 
│ │ │ -00114030: 706f 7374 6669 780a 2020 2020 7374 6174  postfix.    stat
│ │ │ -00114040: 653a 2070 7265 7365 6e74 0a20 2077 6865  e: present.  whe
│ │ │ -00114050: 6e3a 2027 226b 6572 6e65 6c22 2069 6e20  n: '"kernel" in 
│ │ │ -00114060: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -00114070: 636b 6167 6573 270a 2020 7461 6773 3a0a  ckages'.  tags:.
│ │ │ -00114080: 2020 2d20 5043 492d 4453 5376 342d 3130    - PCI-DSSv4-10
│ │ │ -00114090: 2e35 0a20 202d 2050 4349 2d44 5353 7634  .5.  - PCI-DSSv4
│ │ │ -001140a0: 2d31 302e 352e 310a 2020 2d20 656e 6162  -10.5.1.  - enab
│ │ │ -001140b0: 6c65 5f73 7472 6174 6567 790a 2020 2d20  le_strategy.  - 
│ │ │ -001140c0: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ -001140d0: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ -001140e0: 6e0a 2020 2d20 6d65 6469 756d 5f73 6576  n.  - medium_sev
│ │ │ -001140f0: 6572 6974 790a 2020 2d20 6e6f 5f72 6562  erity.  - no_reb
│ │ │ -00114100: 6f6f 745f 6e65 6564 6564 0a20 202d 2070  oot_needed.  - p
│ │ │ -00114110: 6163 6b61 6765 5f70 6f73 7466 6978 5f69  ackage_postfix_i
│ │ │ -00114120: 6e73 7461 6c6c 6564 0a3c 2f63 6f64 653e  nstalled.
│ │ │ +001139f0: 656d 6564 6961 7469 6f6e 2041 6e73 6962  emediation Ansib
│ │ │ +00113a00: 6c65 2073 6e69 7070 6574 20e2 87b2 3c2f  le snippet ...
low
Disr │ │ │ -00113e70: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -00113e80: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ -00113ec0: 7465 6779 3a3c 2f74 683e 3c74 643e 656e tegy:en │ │ │ -00113ed0: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
│ │ │ +00113aa0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
- 
│ │ │ +00113b40: 6e61 6d65 3a20 4761 7468 6572 2074 6865  name: Gather the
│ │ │ +00113b50: 2070 6163 6b61 6765 2066 6163 7473 0a20   package facts. 
│ │ │ +00113b60: 2070 6163 6b61 6765 5f66 6163 7473 3a0a   package_facts:.
│ │ │ +00113b70: 2020 2020 6d61 6e61 6765 723a 2061 7574      manager: aut
│ │ │ +00113b80: 6f0a 2020 7461 6773 3a0a 2020 2d20 5043  o.  tags:.  - PC
│ │ │ +00113b90: 492d 4453 5376 342d 3130 2e35 0a20 202d  I-DSSv4-10.5.  -
│ │ │ +00113ba0: 2050 4349 2d44 5353 7634 2d31 302e 352e   PCI-DSSv4-10.5.
│ │ │ +00113bb0: 310a 2020 2d20 656e 6162 6c65 5f73 7472  1.  - enable_str
│ │ │ +00113bc0: 6174 6567 790a 2020 2d20 6c6f 775f 636f  ategy.  - low_co
│ │ │ +00113bd0: 6d70 6c65 7869 7479 0a20 202d 206c 6f77  mplexity.  - low
│ │ │ +00113be0: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +00113bf0: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ +00113c00: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ +00113c10: 6564 6564 0a20 202d 2070 6163 6b61 6765  eded.  - package
│ │ │ +00113c20: 5f70 6f73 7466 6978 5f69 6e73 7461 6c6c  _postfix_install
│ │ │ +00113c30: 6564 0a0a 2d20 6e61 6d65 3a20 456e 7375  ed..- name: Ensu
│ │ │ +00113c40: 7265 2070 6f73 7466 6978 2069 7320 696e  re postfix is in
│ │ │ +00113c50: 7374 616c 6c65 640a 2020 616e 7369 626c  stalled.  ansibl
│ │ │ +00113c60: 652e 6275 696c 7469 6e2e 7061 636b 6167  e.builtin.packag
│ │ │ +00113c70: 653a 0a20 2020 206e 616d 653a 2070 6f73  e:.    name: pos
│ │ │ +00113c80: 7466 6978 0a20 2020 2073 7461 7465 3a20  tfix.    state: 
│ │ │ +00113c90: 7072 6573 656e 740a 2020 7768 656e 3a20  present.  when: 
│ │ │ +00113ca0: 2722 6b65 726e 656c 2220 696e 2061 6e73  '"kernel" in ans
│ │ │ +00113cb0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +00113cc0: 6765 7327 0a20 2074 6167 733a 0a20 202d  ges'.  tags:.  -
│ │ │ +00113cd0: 2050 4349 2d44 5353 7634 2d31 302e 350a   PCI-DSSv4-10.5.
│ │ │ +00113ce0: 2020 2d20 5043 492d 4453 5376 342d 3130    - PCI-DSSv4-10
│ │ │ +00113cf0: 2e35 2e31 0a20 202d 2065 6e61 626c 655f  .5.1.  - enable_
│ │ │ +00113d00: 7374 7261 7465 6779 0a20 202d 206c 6f77  strategy.  - low
│ │ │ +00113d10: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +00113d20: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ +00113d30: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ +00113d40: 7479 0a20 202d 206e 6f5f 7265 626f 6f74  ty.  - no_reboot
│ │ │ +00113d50: 5f6e 6565 6465 640a 2020 2d20 7061 636b  _needed.  - pack
│ │ │ +00113d60: 6167 655f 706f 7374 6669 785f 696e 7374  age_postfix_inst
│ │ │ +00113d70: 616c 6c65 640a 3c2f 636f 6465 3e3c 2f70  alled.

Remediatio │ │ │ +00113e30: 6e20 5075 7070 6574 2073 6e69 7070 6574 n Puppet snippet │ │ │ +00113e40: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
< │ │ │ +00113f00: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +00113f10: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c
│ │ │ +00113a90: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +00113ac0: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +00113ad0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +00113b10: 793a 3c2f 7468 3e3c 7464 3e65 6e61 626c y:enabl │ │ │ +00113b20: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
Complexity │ │ │ +00113ed0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
D │ │ │ +00113ef0: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:
Reboot:< │ │ │ +00113f20: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>false
S │ │ │ +00113f40: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:enable
include inst
│ │ │ +00113f80: 616c 6c5f 706f 7374 6669 780a 0a63 6c61  all_postfix..cla
│ │ │ +00113f90: 7373 2069 6e73 7461 6c6c 5f70 6f73 7466  ss install_postf
│ │ │ +00113fa0: 6978 207b 0a20 2070 6163 6b61 6765 207b  ix {.  package {
│ │ │ +00113fb0: 2027 706f 7374 6669 7827 3a0a 2020 2020   'postfix':.    
│ │ │ +00113fc0: 656e 7375 7265 203d 2667 743b 2027 696e  ensure => 'in
│ │ │ +00113fd0: 7374 616c 6c65 6427 2c0a 2020 7d0a 7d0a  stalled',.  }.}.
│ │ │ +00113fe0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ +00114090: 5265 6d65 6469 6174 696f 6e20 4f53 4275 Remediation OSBu │ │ │ +001140a0: 696c 6420 426c 7565 7072 696e 7420 736e ild Blueprint sn │ │ │ +001140b0: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
.[[p
│ │ │ +00114100: 6163 6b61 6765 735d 5d0a 6e61 6d65 203d  ackages]].name =
│ │ │ +00114110: 2022 706f 7374 6669 7822 0a76 6572 7369   "postfix".versi
│ │ │ +00114120: 6f6e 203d 2022 2a22 0a3c 2f63 6f64 653e  on = "*".
│ │ │  00114130: 3c2f 7072 653e 3c2f 6469 763e 3c2f 6469  
Remediation OSB │ │ │ -00115970: 7569 6c64 2042 6c75 6570 7269 6e74 2073 uild Blueprint s │ │ │ -00115980: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
.[c
│ │ │ -001159d0: 7573 746f 6d69 7a61 7469 6f6e 732e 7365  ustomizations.se
│ │ │ -001159e0: 7276 6963 6573 5d0a 6d61 736b 6564 203d  rvices].masked =
│ │ │ -001159f0: 205b 2272 7063 6269 6e64 225d 0a3c 2f63   ["rpcbind"].
│ │ │ -00115a10: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ -00115ab0: 6564 6961 7469 6f6e 2050 7570 7065 7420 ediation Puppet │ │ │ -00115ac0: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ -00115ad0: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Com │ │ │ -00115b50: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ -00115b80: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ -00115ba0: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -00115bb0: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -00115bd0: 2f74 683e 3c74 643e 656e 6162 6c65 3c2f /th>enable
│ │ │ -00115bf0: 3c70 7265 3e3c 636f 6465 3e69 6e63 6c75
inclu
│ │ │ -00115c00: 6465 2064 6973 6162 6c65 5f72 7063 6269  de disable_rpcbi
│ │ │ -00115c10: 6e64 0a0a 636c 6173 7320 6469 7361 626c  nd..class disabl
│ │ │ -00115c20: 655f 7270 6362 696e 6420 7b0a 2020 7365  e_rpcbind {.  se
│ │ │ -00115c30: 7276 6963 6520 7b27 7270 6362 696e 6427  rvice {'rpcbind'
│ │ │ -00115c40: 3a0a 2020 2020 656e 6162 6c65 203d 2667  :.    enable =&g
│ │ │ -00115c50: 743b 2066 616c 7365 2c0a 2020 2020 656e  t; false,.    en
│ │ │ -00115c60: 7375 7265 203d 2667 743b 2027 7374 6f70  sure => 'stop
│ │ │ -00115c70: 7065 6427 2c0a 2020 7d0a 7d0a 3c2f 636f  ped',.  }.}.
< │ │ │ -00115c90: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ -00115ca0: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ -00115cb0: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ -00115cc0: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ -00115cd0: 6433 3130 2220 7461 6269 6e64 6578 3d22 d310" tabindex=" │ │ │ -00115ce0: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ -00115cf0: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ -00115d00: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ -00115d10: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ -00115d20: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ -00115d30: 6469 6174 696f 6e20 416e 7369 626c 6520 diation Ansible │ │ │ -00115d40: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ -00115d50: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Com │ │ │ -00115dd0: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ -00115e00: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ -00115e20: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -00115e30: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -00115e50: 2f74 683e 3c74 643e 6469 7361 626c 653c /th>disable< │ │ │ -00115e60: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
- na
│ │ │ -00115e80: 6d65 3a20 4761 7468 6572 2074 6865 2070  me: Gather the p
│ │ │ -00115e90: 6163 6b61 6765 2066 6163 7473 0a20 2070  ackage facts.  p
│ │ │ -00115ea0: 6163 6b61 6765 5f66 6163 7473 3a0a 2020  ackage_facts:.  
│ │ │ -00115eb0: 2020 6d61 6e61 6765 723a 2061 7574 6f0a    manager: auto.
│ │ │ -00115ec0: 2020 7461 6773 3a0a 2020 2d20 5043 492d    tags:.  - PCI-
│ │ │ -00115ed0: 4453 5376 342d 322e 320a 2020 2d20 5043  DSSv4-2.2.  - PC
│ │ │ -00115ee0: 492d 4453 5376 342d 322e 322e 340a 2020  I-DSSv4-2.2.4.  
│ │ │ -00115ef0: 2d20 6469 7361 626c 655f 7374 7261 7465  - disable_strate
│ │ │ -00115f00: 6779 0a20 202d 206c 6f77 5f63 6f6d 706c  gy.  - low_compl
│ │ │ -00115f10: 6578 6974 790a 2020 2d20 6c6f 775f 6469  exity.  - low_di
│ │ │ -00115f20: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ -00115f30: 5f73 6576 6572 6974 790a 2020 2d20 6e6f  _severity.  - no
│ │ │ -00115f40: 5f72 6562 6f6f 745f 6e65 6564 6564 0a20  _reboot_needed. 
│ │ │ -00115f50: 202d 2073 6572 7669 6365 5f72 7063 6269   - service_rpcbi
│ │ │ -00115f60: 6e64 5f64 6973 6162 6c65 640a 0a2d 206e  nd_disabled..- n
│ │ │ -00115f70: 616d 653a 2044 6973 6162 6c65 2072 7063  ame: Disable rpc
│ │ │ -00115f80: 6269 6e64 2053 6572 7669 6365 202d 2044  bind Service - D
│ │ │ -00115f90: 6973 6162 6c65 2073 6572 7669 6365 2072  isable service r
│ │ │ -00115fa0: 7063 6269 6e64 0a20 2062 6c6f 636b 3a0a  pcbind.  block:.
│ │ │ -00115fb0: 0a20 202d 206e 616d 653a 2044 6973 6162  .  - name: Disab
│ │ │ -00115fc0: 6c65 2072 7063 6269 6e64 2053 6572 7669  le rpcbind Servi
│ │ │ -00115fd0: 6365 202d 2043 6f6c 6c65 6374 2073 7973  ce - Collect sys
│ │ │ -00115fe0: 7465 6d64 2053 6572 7669 6365 7320 5072  temd Services Pr
│ │ │ -00115ff0: 6573 656e 7420 696e 2074 6865 2053 7973  esent in the Sys
│ │ │ -00116000: 7465 6d0a 2020 2020 616e 7369 626c 652e  tem.    ansible.
│ │ │ -00116010: 6275 696c 7469 6e2e 636f 6d6d 616e 643a  builtin.command:
│ │ │ -00116020: 2073 7973 7465 6d63 746c 202d 7120 6c69   systemctl -q li
│ │ │ -00116030: 7374 2d75 6e69 742d 6669 6c65 7320 2d2d  st-unit-files --
│ │ │ -00116040: 7479 7065 2073 6572 7669 6365 0a20 2020  type service.   
│ │ │ -00116050: 2072 6567 6973 7465 723a 2073 6572 7669   register: servi
│ │ │ -00116060: 6365 5f65 7869 7374 730a 2020 2020 6368  ce_exists.    ch
│ │ │ -00116070: 616e 6765 645f 7768 656e 3a20 6661 6c73  anged_when: fals
│ │ │ -00116080: 650a 2020 2020 6661 696c 6564 5f77 6865  e.    failed_whe
│ │ │ -00116090: 6e3a 2073 6572 7669 6365 5f65 7869 7374  n: service_exist
│ │ │ -001160a0: 732e 7263 206e 6f74 2069 6e20 5b30 2c20  s.rc not in [0, 
│ │ │ -001160b0: 315d 0a20 2020 2063 6865 636b 5f6d 6f64  1].    check_mod
│ │ │ -001160c0: 653a 2066 616c 7365 0a0a 2020 2d20 6e61  e: false..  - na
│ │ │ -001160d0: 6d65 3a20 4469 7361 626c 6520 7270 6362  me: Disable rpcb
│ │ │ -001160e0: 696e 6420 5365 7276 6963 6520 2d20 456e  ind Service - En
│ │ │ -001160f0: 7375 7265 2072 7063 6269 6e64 2e73 6572  sure rpcbind.ser
│ │ │ -00116100: 7669 6365 2069 7320 4d61 736b 6564 0a20  vice is Masked. 
│ │ │ -00116110: 2020 2061 6e73 6962 6c65 2e62 7569 6c74     ansible.built
│ │ │ -00116120: 696e 2e73 7973 7465 6d64 3a0a 2020 2020  in.systemd:.    
│ │ │ -00116130: 2020 6e61 6d65 3a20 7270 6362 696e 642e    name: rpcbind.
│ │ │ -00116140: 7365 7276 6963 650a 2020 2020 2020 7374  service.      st
│ │ │ -00116150: 6174 653a 2073 746f 7070 6564 0a20 2020  ate: stopped.   
│ │ │ -00116160: 2020 2065 6e61 626c 6564 3a20 6661 6c73     enabled: fals
│ │ │ -00116170: 650a 2020 2020 2020 6d61 736b 6564 3a20  e.      masked: 
│ │ │ -00116180: 7472 7565 0a20 2020 2077 6865 6e3a 2073  true.    when: s
│ │ │ -00116190: 6572 7669 6365 5f65 7869 7374 732e 7374  ervice_exists.st
│ │ │ -001161a0: 646f 7574 5f6c 696e 6573 2069 7320 7365  dout_lines is se
│ │ │ -001161b0: 6172 6368 2822 7270 6362 696e 642e 7365  arch("rpcbind.se
│ │ │ -001161c0: 7276 6963 6522 2c20 6d75 6c74 696c 696e  rvice", multilin
│ │ │ -001161d0: 653d 5472 7565 290a 0a20 202d 206e 616d  e=True)..  - nam
│ │ │ -001161e0: 653a 2055 6e69 7420 536f 636b 6574 2045  e: Unit Socket E
│ │ │ -001161f0: 7869 7374 7320 2d20 7270 6362 696e 642e  xists - rpcbind.
│ │ │ -00116200: 736f 636b 6574 0a20 2020 2061 6e73 6962  socket.    ansib
│ │ │ -00116210: 6c65 2e62 7569 6c74 696e 2e63 6f6d 6d61  le.builtin.comma
│ │ │ -00116220: 6e64 3a20 7379 7374 656d 6374 6c20 2d71  nd: systemctl -q
│ │ │ -00116230: 206c 6973 742d 756e 6974 2d66 696c 6573   list-unit-files
│ │ │ -00116240: 2072 7063 6269 6e64 2e73 6f63 6b65 740a   rpcbind.socket.
│ │ │ -00116250: 2020 2020 7265 6769 7374 6572 3a20 736f      register: so
│ │ │ -00116260: 636b 6574 5f66 696c 655f 6578 6973 7473  cket_file_exists
│ │ │ -00116270: 0a20 2020 2063 6861 6e67 6564 5f77 6865  .    changed_whe
│ │ │ -00116280: 6e3a 2066 616c 7365 0a20 2020 2066 6169  n: false.    fai
│ │ │ -00116290: 6c65 645f 7768 656e 3a20 736f 636b 6574  led_when: socket
│ │ │ -001162a0: 5f66 696c 655f 6578 6973 7473 2e72 6320  _file_exists.rc 
│ │ │ -001162b0: 6e6f 7420 696e 205b 302c 2031 5d0a 2020  not in [0, 1].  
│ │ │ -001162c0: 2020 6368 6563 6b5f 6d6f 6465 3a20 6661    check_mode: fa
│ │ │ -001162d0: 6c73 650a 0a20 202d 206e 616d 653a 2044  lse..  - name: D
│ │ │ -001162e0: 6973 6162 6c65 2072 7063 6269 6e64 2053  isable rpcbind S
│ │ │ -001162f0: 6572 7669 6365 202d 2044 6973 6162 6c65  ervice - Disable
│ │ │ -00116300: 2053 6f63 6b65 7420 7270 6362 696e 640a   Socket rpcbind.
│ │ │ -00116310: 2020 2020 616e 7369 626c 652e 6275 696c      ansible.buil
│ │ │ -00116320: 7469 6e2e 7379 7374 656d 643a 0a20 2020  tin.systemd:.   
│ │ │ -00116330: 2020 206e 616d 653a 2072 7063 6269 6e64     name: rpcbind
│ │ │ -00116340: 2e73 6f63 6b65 740a 2020 2020 2020 656e  .socket.      en
│ │ │ -00116350: 6162 6c65 643a 2066 616c 7365 0a20 2020  abled: false.   
│ │ │ -00116360: 2020 2073 7461 7465 3a20 7374 6f70 7065     state: stoppe
│ │ │ -00116370: 640a 2020 2020 2020 6d61 736b 6564 3a20  d.      masked: 
│ │ │ -00116380: 7472 7565 0a20 2020 2077 6865 6e3a 2073  true.    when: s
│ │ │ -00116390: 6f63 6b65 745f 6669 6c65 5f65 7869 7374  ocket_file_exist
│ │ │ -001163a0: 732e 7374 646f 7574 5f6c 696e 6573 2069  s.stdout_lines i
│ │ │ -001163b0: 7320 7365 6172 6368 2822 7270 6362 696e  s search("rpcbin
│ │ │ -001163c0: 642e 736f 636b 6574 222c 206d 756c 7469  d.socket", multi
│ │ │ -001163d0: 6c69 6e65 3d54 7275 6529 0a20 2074 6167  line=True).  tag
│ │ │ -001163e0: 733a 0a20 202d 2050 4349 2d44 5353 7634  s:.  - PCI-DSSv4
│ │ │ -001163f0: 2d32 2e32 0a20 202d 2050 4349 2d44 5353  -2.2.  - PCI-DSS
│ │ │ -00116400: 7634 2d32 2e32 2e34 0a20 202d 2064 6973  v4-2.2.4.  - dis
│ │ │ -00116410: 6162 6c65 5f73 7472 6174 6567 790a 2020  able_strategy.  
│ │ │ -00116420: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ -00116430: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ -00116440: 696f 6e0a 2020 2d20 6c6f 775f 7365 7665  ion.  - low_seve
│ │ │ -00116450: 7269 7479 0a20 202d 206e 6f5f 7265 626f  rity.  - no_rebo
│ │ │ -00116460: 6f74 5f6e 6565 6465 640a 2020 2d20 7365  ot_needed.  - se
│ │ │ -00116470: 7276 6963 655f 7270 6362 696e 645f 6469  rvice_rpcbind_di
│ │ │ -00116480: 7361 626c 6564 0a20 202d 2073 7065 6369  sabled.  - speci
│ │ │ -00116490: 616c 5f73 6572 7669 6365 5f62 6c6f 636b  al_service_block
│ │ │ -001164a0: 0a20 2077 6865 6e3a 2027 226b 6572 6e65  .  when: '"kerne
│ │ │ -001164b0: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ -001164c0: 6374 732e 7061 636b 6167 6573 270a 3c2f  cts.packages'.Remediation Ans
│ │ │ +00115970: 6962 6c65 2073 6e69 7070 6574 20e2 87b2  ible snippet ...
│ │ │ +00115980: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61  
Complexity: │ │ │ +00115a50: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +00115a60: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
- name: Gather 
│ │ │ +00115ac0: 7468 6520 7061 636b 6167 6520 6661 6374  the package fact
│ │ │ +00115ad0: 730a 2020 7061 636b 6167 655f 6661 6374  s.  package_fact
│ │ │ +00115ae0: 733a 0a20 2020 206d 616e 6167 6572 3a20  s:.    manager: 
│ │ │ +00115af0: 6175 746f 0a20 2074 6167 733a 0a20 202d  auto.  tags:.  -
│ │ │ +00115b00: 2050 4349 2d44 5353 7634 2d32 2e32 0a20   PCI-DSSv4-2.2. 
│ │ │ +00115b10: 202d 2050 4349 2d44 5353 7634 2d32 2e32   - PCI-DSSv4-2.2
│ │ │ +00115b20: 2e34 0a20 202d 2064 6973 6162 6c65 5f73  .4.  - disable_s
│ │ │ +00115b30: 7472 6174 6567 790a 2020 2d20 6c6f 775f  trategy.  - low_
│ │ │ +00115b40: 636f 6d70 6c65 7869 7479 0a20 202d 206c  complexity.  - l
│ │ │ +00115b50: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ +00115b60: 2d20 6c6f 775f 7365 7665 7269 7479 0a20  - low_severity. 
│ │ │ +00115b70: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ +00115b80: 6465 640a 2020 2d20 7365 7276 6963 655f  ded.  - service_
│ │ │ +00115b90: 7270 6362 696e 645f 6469 7361 626c 6564  rpcbind_disabled
│ │ │ +00115ba0: 0a0a 2d20 6e61 6d65 3a20 4469 7361 626c  ..- name: Disabl
│ │ │ +00115bb0: 6520 7270 6362 696e 6420 5365 7276 6963  e rpcbind Servic
│ │ │ +00115bc0: 6520 2d20 4469 7361 626c 6520 7365 7276  e - Disable serv
│ │ │ +00115bd0: 6963 6520 7270 6362 696e 640a 2020 626c  ice rpcbind.  bl
│ │ │ +00115be0: 6f63 6b3a 0a0a 2020 2d20 6e61 6d65 3a20  ock:..  - name: 
│ │ │ +00115bf0: 4469 7361 626c 6520 7270 6362 696e 6420  Disable rpcbind 
│ │ │ +00115c00: 5365 7276 6963 6520 2d20 436f 6c6c 6563  Service - Collec
│ │ │ +00115c10: 7420 7379 7374 656d 6420 5365 7276 6963  t systemd Servic
│ │ │ +00115c20: 6573 2050 7265 7365 6e74 2069 6e20 7468  es Present in th
│ │ │ +00115c30: 6520 5379 7374 656d 0a20 2020 2061 6e73  e System.    ans
│ │ │ +00115c40: 6962 6c65 2e62 7569 6c74 696e 2e63 6f6d  ible.builtin.com
│ │ │ +00115c50: 6d61 6e64 3a20 7379 7374 656d 6374 6c20  mand: systemctl 
│ │ │ +00115c60: 2d71 206c 6973 742d 756e 6974 2d66 696c  -q list-unit-fil
│ │ │ +00115c70: 6573 202d 2d74 7970 6520 7365 7276 6963  es --type servic
│ │ │ +00115c80: 650a 2020 2020 7265 6769 7374 6572 3a20  e.    register: 
│ │ │ +00115c90: 7365 7276 6963 655f 6578 6973 7473 0a20  service_exists. 
│ │ │ +00115ca0: 2020 2063 6861 6e67 6564 5f77 6865 6e3a     changed_when:
│ │ │ +00115cb0: 2066 616c 7365 0a20 2020 2066 6169 6c65   false.    faile
│ │ │ +00115cc0: 645f 7768 656e 3a20 7365 7276 6963 655f  d_when: service_
│ │ │ +00115cd0: 6578 6973 7473 2e72 6320 6e6f 7420 696e  exists.rc not in
│ │ │ +00115ce0: 205b 302c 2031 5d0a 2020 2020 6368 6563   [0, 1].    chec
│ │ │ +00115cf0: 6b5f 6d6f 6465 3a20 6661 6c73 650a 0a20  k_mode: false.. 
│ │ │ +00115d00: 202d 206e 616d 653a 2044 6973 6162 6c65   - name: Disable
│ │ │ +00115d10: 2072 7063 6269 6e64 2053 6572 7669 6365   rpcbind Service
│ │ │ +00115d20: 202d 2045 6e73 7572 6520 7270 6362 696e   - Ensure rpcbin
│ │ │ +00115d30: 642e 7365 7276 6963 6520 6973 204d 6173  d.service is Mas
│ │ │ +00115d40: 6b65 640a 2020 2020 616e 7369 626c 652e  ked.    ansible.
│ │ │ +00115d50: 6275 696c 7469 6e2e 7379 7374 656d 643a  builtin.systemd:
│ │ │ +00115d60: 0a20 2020 2020 206e 616d 653a 2072 7063  .      name: rpc
│ │ │ +00115d70: 6269 6e64 2e73 6572 7669 6365 0a20 2020  bind.service.   
│ │ │ +00115d80: 2020 2073 7461 7465 3a20 7374 6f70 7065     state: stoppe
│ │ │ +00115d90: 640a 2020 2020 2020 656e 6162 6c65 643a  d.      enabled:
│ │ │ +00115da0: 2066 616c 7365 0a20 2020 2020 206d 6173   false.      mas
│ │ │ +00115db0: 6b65 643a 2074 7275 650a 2020 2020 7768  ked: true.    wh
│ │ │ +00115dc0: 656e 3a20 7365 7276 6963 655f 6578 6973  en: service_exis
│ │ │ +00115dd0: 7473 2e73 7464 6f75 745f 6c69 6e65 7320  ts.stdout_lines 
│ │ │ +00115de0: 6973 2073 6561 7263 6828 2272 7063 6269  is search("rpcbi
│ │ │ +00115df0: 6e64 2e73 6572 7669 6365 222c 206d 756c  nd.service", mul
│ │ │ +00115e00: 7469 6c69 6e65 3d54 7275 6529 0a0a 2020  tiline=True)..  
│ │ │ +00115e10: 2d20 6e61 6d65 3a20 556e 6974 2053 6f63  - name: Unit Soc
│ │ │ +00115e20: 6b65 7420 4578 6973 7473 202d 2072 7063  ket Exists - rpc
│ │ │ +00115e30: 6269 6e64 2e73 6f63 6b65 740a 2020 2020  bind.socket.    
│ │ │ +00115e40: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ +00115e50: 636f 6d6d 616e 643a 2073 7973 7465 6d63  command: systemc
│ │ │ +00115e60: 746c 202d 7120 6c69 7374 2d75 6e69 742d  tl -q list-unit-
│ │ │ +00115e70: 6669 6c65 7320 7270 6362 696e 642e 736f  files rpcbind.so
│ │ │ +00115e80: 636b 6574 0a20 2020 2072 6567 6973 7465  cket.    registe
│ │ │ +00115e90: 723a 2073 6f63 6b65 745f 6669 6c65 5f65  r: socket_file_e
│ │ │ +00115ea0: 7869 7374 730a 2020 2020 6368 616e 6765  xists.    change
│ │ │ +00115eb0: 645f 7768 656e 3a20 6661 6c73 650a 2020  d_when: false.  
│ │ │ +00115ec0: 2020 6661 696c 6564 5f77 6865 6e3a 2073    failed_when: s
│ │ │ +00115ed0: 6f63 6b65 745f 6669 6c65 5f65 7869 7374  ocket_file_exist
│ │ │ +00115ee0: 732e 7263 206e 6f74 2069 6e20 5b30 2c20  s.rc not in [0, 
│ │ │ +00115ef0: 315d 0a20 2020 2063 6865 636b 5f6d 6f64  1].    check_mod
│ │ │ +00115f00: 653a 2066 616c 7365 0a0a 2020 2d20 6e61  e: false..  - na
│ │ │ +00115f10: 6d65 3a20 4469 7361 626c 6520 7270 6362  me: Disable rpcb
│ │ │ +00115f20: 696e 6420 5365 7276 6963 6520 2d20 4469  ind Service - Di
│ │ │ +00115f30: 7361 626c 6520 536f 636b 6574 2072 7063  sable Socket rpc
│ │ │ +00115f40: 6269 6e64 0a20 2020 2061 6e73 6962 6c65  bind.    ansible
│ │ │ +00115f50: 2e62 7569 6c74 696e 2e73 7973 7465 6d64  .builtin.systemd
│ │ │ +00115f60: 3a0a 2020 2020 2020 6e61 6d65 3a20 7270  :.      name: rp
│ │ │ +00115f70: 6362 696e 642e 736f 636b 6574 0a20 2020  cbind.socket.   
│ │ │ +00115f80: 2020 2065 6e61 626c 6564 3a20 6661 6c73     enabled: fals
│ │ │ +00115f90: 650a 2020 2020 2020 7374 6174 653a 2073  e.      state: s
│ │ │ +00115fa0: 746f 7070 6564 0a20 2020 2020 206d 6173  topped.      mas
│ │ │ +00115fb0: 6b65 643a 2074 7275 650a 2020 2020 7768  ked: true.    wh
│ │ │ +00115fc0: 656e 3a20 736f 636b 6574 5f66 696c 655f  en: socket_file_
│ │ │ +00115fd0: 6578 6973 7473 2e73 7464 6f75 745f 6c69  exists.stdout_li
│ │ │ +00115fe0: 6e65 7320 6973 2073 6561 7263 6828 2272  nes is search("r
│ │ │ +00115ff0: 7063 6269 6e64 2e73 6f63 6b65 7422 2c20  pcbind.socket", 
│ │ │ +00116000: 6d75 6c74 696c 696e 653d 5472 7565 290a  multiline=True).
│ │ │ +00116010: 2020 7461 6773 3a0a 2020 2d20 5043 492d    tags:.  - PCI-
│ │ │ +00116020: 4453 5376 342d 322e 320a 2020 2d20 5043  DSSv4-2.2.  - PC
│ │ │ +00116030: 492d 4453 5376 342d 322e 322e 340a 2020  I-DSSv4-2.2.4.  
│ │ │ +00116040: 2d20 6469 7361 626c 655f 7374 7261 7465  - disable_strate
│ │ │ +00116050: 6779 0a20 202d 206c 6f77 5f63 6f6d 706c  gy.  - low_compl
│ │ │ +00116060: 6578 6974 790a 2020 2d20 6c6f 775f 6469  exity.  - low_di
│ │ │ +00116070: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ +00116080: 5f73 6576 6572 6974 790a 2020 2d20 6e6f  _severity.  - no
│ │ │ +00116090: 5f72 6562 6f6f 745f 6e65 6564 6564 0a20  _reboot_needed. 
│ │ │ +001160a0: 202d 2073 6572 7669 6365 5f72 7063 6269   - service_rpcbi
│ │ │ +001160b0: 6e64 5f64 6973 6162 6c65 640a 2020 2d20  nd_disabled.  - 
│ │ │ +001160c0: 7370 6563 6961 6c5f 7365 7276 6963 655f  special_service_
│ │ │ +001160d0: 626c 6f63 6b0a 2020 7768 656e 3a20 2722  block.  when: '"
│ │ │ +001160e0: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ +001160f0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +00116100: 7327 0a3c 2f63 6f64 653e 3c2f 7072 653e  s'.
│ │ │ +00116110: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22 Remediation P │ │ │ +001161c0: 7570 7065 7420 736e 6970 7065 7420 e287 uppet snippet .. │ │ │ +001161d0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
low
Disru │ │ │ +00115a30: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +00115a40: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +00115a80: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ +00115a90: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
< │ │ │ +00116250: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ +00116270: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ +001162c0: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
include disable
│ │ │ +00116310: 5f72 7063 6269 6e64 0a0a 636c 6173 7320  _rpcbind..class 
│ │ │ +00116320: 6469 7361 626c 655f 7270 6362 696e 6420  disable_rpcbind 
│ │ │ +00116330: 7b0a 2020 7365 7276 6963 6520 7b27 7270  {.  service {'rp
│ │ │ +00116340: 6362 696e 6427 3a0a 2020 2020 656e 6162  cbind':.    enab
│ │ │ +00116350: 6c65 203d 2667 743b 2066 616c 7365 2c0a  le => false,.
│ │ │ +00116360: 2020 2020 656e 7375 7265 203d 2667 743b      ensure =>
│ │ │ +00116370: 2027 7374 6f70 7065 6427 2c0a 2020 7d0a   'stopped',.  }.
│ │ │ +00116380: 7d0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  }.
< │ │ │ +00116390: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation OS │ │ │ +00116440: 4275 696c 6420 426c 7565 7072 696e 7420 Build Blueprint │ │ │ +00116450: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ +00116460: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
.[
│ │ │ +001164a0: 6375 7374 6f6d 697a 6174 696f 6e73 2e73  customizations.s
│ │ │ +001164b0: 6572 7669 6365 735d 0a6d 6173 6b65 6420  ervices].masked 
│ │ │ +001164c0: 3d20 5b22 7270 6362 696e 6422 5d0a 3c2f  = ["rpcbind"].
low
Disr │ │ │ +00116280: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +00116290: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ +001162d0: 7465 6779 3a3c 2f74 683e 3c74 643e 656e tegy:en │ │ │ +001162e0: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
Remediation O │ │ │ -00118110: 5342 7569 6c64 2042 6c75 6570 7269 6e74 SBuild Blueprint │ │ │ -00118120: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -00118130: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
.
│ │ │ -00118170: 5b5b 7061 636b 6167 6573 5d5d 0a6e 616d  [[packages]].nam
│ │ │ -00118180: 6520 3d20 2263 6872 6f6e 7922 0a76 6572  e = "chrony".ver
│ │ │ -00118190: 7369 6f6e 203d 2022 2a22 0a3c 2f63 6f64  sion = "*".
Remed │ │ │ -00118250: 6961 7469 6f6e 2050 7570 7065 7420 736e iation Puppet sn │ │ │ -00118260: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ -00118310: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ -00118330: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ -00118360: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ -001182f0: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ -00118300: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ -00118320: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ -00118340: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -00118350: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:enable

include │ │ │ -001183a0: 2069 6e73 7461 6c6c 5f63 6872 6f6e 790a install_chrony. │ │ │ -001183b0: 0a63 6c61 7373 2069 6e73 7461 6c6c 5f63 .class install_c │ │ │ -001183c0: 6872 6f6e 7920 7b0a 2020 7061 636b 6167 hrony {. packag │ │ │ -001183d0: 6520 7b20 2763 6872 6f6e 7927 3a0a 2020 e { 'chrony':. │ │ │ -001183e0: 2020 656e 7375 7265 203d 2667 743b 2027 ensure => ' │ │ │ -001183f0: 696e 7374 616c 6c65 6427 2c0a 2020 7d0a installed',. }. │ │ │ -00118400: 7d0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c }.

< │ │ │ -00118410: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation An │ │ │ -001184c0: 7369 626c 6520 736e 6970 7065 7420 e287 sible snippet .. │ │ │ -001184d0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ -00118550: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -00118570: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -001185c0: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
- name: Gather 
│ │ │ -00118610: 7468 6520 7061 636b 6167 6520 6661 6374  the package fact
│ │ │ -00118620: 730a 2020 7061 636b 6167 655f 6661 6374  s.  package_fact
│ │ │ -00118630: 733a 0a20 2020 206d 616e 6167 6572 3a20  s:.    manager: 
│ │ │ -00118640: 6175 746f 0a20 2074 6167 733a 0a20 202d  auto.  tags:.  -
│ │ │ -00118650: 2050 4349 2d44 5353 2d52 6571 2d31 302e   PCI-DSS-Req-10.
│ │ │ -00118660: 340a 2020 2d20 5043 492d 4453 5376 342d  4.  - PCI-DSSv4-
│ │ │ -00118670: 3130 2e36 0a20 202d 2050 4349 2d44 5353  10.6.  - PCI-DSS
│ │ │ -00118680: 7634 2d31 302e 362e 310a 2020 2d20 656e  v4-10.6.1.  - en
│ │ │ -00118690: 6162 6c65 5f73 7472 6174 6567 790a 2020  able_strategy.  
│ │ │ -001186a0: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ -001186b0: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ -001186c0: 696f 6e0a 2020 2d20 6d65 6469 756d 5f73  ion.  - medium_s
│ │ │ -001186d0: 6576 6572 6974 790a 2020 2d20 6e6f 5f72  everity.  - no_r
│ │ │ -001186e0: 6562 6f6f 745f 6e65 6564 6564 0a20 202d  eboot_needed.  -
│ │ │ -001186f0: 2070 6163 6b61 6765 5f63 6872 6f6e 795f   package_chrony_
│ │ │ -00118700: 696e 7374 616c 6c65 640a 0a2d 206e 616d  installed..- nam
│ │ │ -00118710: 653a 2045 6e73 7572 6520 6368 726f 6e79  e: Ensure chrony
│ │ │ -00118720: 2069 7320 696e 7374 616c 6c65 640a 2020   is installed.  
│ │ │ -00118730: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ -00118740: 7061 636b 6167 653a 0a20 2020 206e 616d  package:.    nam
│ │ │ -00118750: 653a 2063 6872 6f6e 790a 2020 2020 7374  e: chrony.    st
│ │ │ -00118760: 6174 653a 2070 7265 7365 6e74 0a20 2077  ate: present.  w
│ │ │ -00118770: 6865 6e3a 2027 226b 6572 6e65 6c22 2069  hen: '"kernel" i
│ │ │ -00118780: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -00118790: 7061 636b 6167 6573 270a 2020 7461 6773  packages'.  tags
│ │ │ -001187a0: 3a0a 2020 2d20 5043 492d 4453 532d 5265  :.  - PCI-DSS-Re
│ │ │ -001187b0: 712d 3130 2e34 0a20 202d 2050 4349 2d44  q-10.4.  - PCI-D
│ │ │ -001187c0: 5353 7634 2d31 302e 360a 2020 2d20 5043  SSv4-10.6.  - PC
│ │ │ -001187d0: 492d 4453 5376 342d 3130 2e36 2e31 0a20  I-DSSv4-10.6.1. 
│ │ │ -001187e0: 202d 2065 6e61 626c 655f 7374 7261 7465   - enable_strate
│ │ │ -001187f0: 6779 0a20 202d 206c 6f77 5f63 6f6d 706c  gy.  - low_compl
│ │ │ -00118800: 6578 6974 790a 2020 2d20 6c6f 775f 6469  exity.  - low_di
│ │ │ -00118810: 7372 7570 7469 6f6e 0a20 202d 206d 6564  sruption.  - med
│ │ │ -00118820: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ -00118830: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ -00118840: 640a 2020 2d20 7061 636b 6167 655f 6368  d.  - package_ch
│ │ │ -00118850: 726f 6e79 5f69 6e73 7461 6c6c 6564 0a3c  rony_installed.<
│ │ │ +00118100: 2122 3e52 656d 6564 6961 7469 6f6e 2041  !">Remediation A
│ │ │ +00118110: 6e73 6962 6c65 2073 6e69 7070 6574 20e2  nsible snippet .
│ │ │ +00118120: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063  ..
low
Disr │ │ │ -00118580: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -00118590: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ -001185d0: 7465 6779 3a3c 2f74 683e 3c74 643e 656e tegy:en │ │ │ -001185e0: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
│ │ │ +001181a0: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +001181c0: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ +00118210: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 < │ │ │ +00118240: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
- name: Gather
│ │ │ +00118260: 2074 6865 2070 6163 6b61 6765 2066 6163   the package fac
│ │ │ +00118270: 7473 0a20 2070 6163 6b61 6765 5f66 6163  ts.  package_fac
│ │ │ +00118280: 7473 3a0a 2020 2020 6d61 6e61 6765 723a  ts:.    manager:
│ │ │ +00118290: 2061 7574 6f0a 2020 7461 6773 3a0a 2020   auto.  tags:.  
│ │ │ +001182a0: 2d20 5043 492d 4453 532d 5265 712d 3130  - PCI-DSS-Req-10
│ │ │ +001182b0: 2e34 0a20 202d 2050 4349 2d44 5353 7634  .4.  - PCI-DSSv4
│ │ │ +001182c0: 2d31 302e 360a 2020 2d20 5043 492d 4453  -10.6.  - PCI-DS
│ │ │ +001182d0: 5376 342d 3130 2e36 2e31 0a20 202d 2065  Sv4-10.6.1.  - e
│ │ │ +001182e0: 6e61 626c 655f 7374 7261 7465 6779 0a20  nable_strategy. 
│ │ │ +001182f0: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ +00118300: 790a 2020 2d20 6c6f 775f 6469 7372 7570  y.  - low_disrup
│ │ │ +00118310: 7469 6f6e 0a20 202d 206d 6564 6975 6d5f  tion.  - medium_
│ │ │ +00118320: 7365 7665 7269 7479 0a20 202d 206e 6f5f  severity.  - no_
│ │ │ +00118330: 7265 626f 6f74 5f6e 6565 6465 640a 2020  reboot_needed.  
│ │ │ +00118340: 2d20 7061 636b 6167 655f 6368 726f 6e79  - package_chrony
│ │ │ +00118350: 5f69 6e73 7461 6c6c 6564 0a0a 2d20 6e61  _installed..- na
│ │ │ +00118360: 6d65 3a20 456e 7375 7265 2063 6872 6f6e  me: Ensure chron
│ │ │ +00118370: 7920 6973 2069 6e73 7461 6c6c 6564 0a20  y is installed. 
│ │ │ +00118380: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ +00118390: 2e70 6163 6b61 6765 3a0a 2020 2020 6e61  .package:.    na
│ │ │ +001183a0: 6d65 3a20 6368 726f 6e79 0a20 2020 2073  me: chrony.    s
│ │ │ +001183b0: 7461 7465 3a20 7072 6573 656e 740a 2020  tate: present.  
│ │ │ +001183c0: 7768 656e 3a20 2722 6b65 726e 656c 2220  when: '"kernel" 
│ │ │ +001183d0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001183e0: 2e70 6163 6b61 6765 7327 0a20 2074 6167  .packages'.  tag
│ │ │ +001183f0: 733a 0a20 202d 2050 4349 2d44 5353 2d52  s:.  - PCI-DSS-R
│ │ │ +00118400: 6571 2d31 302e 340a 2020 2d20 5043 492d  eq-10.4.  - PCI-
│ │ │ +00118410: 4453 5376 342d 3130 2e36 0a20 202d 2050  DSSv4-10.6.  - P
│ │ │ +00118420: 4349 2d44 5353 7634 2d31 302e 362e 310a  CI-DSSv4-10.6.1.
│ │ │ +00118430: 2020 2d20 656e 6162 6c65 5f73 7472 6174    - enable_strat
│ │ │ +00118440: 6567 790a 2020 2d20 6c6f 775f 636f 6d70  egy.  - low_comp
│ │ │ +00118450: 6c65 7869 7479 0a20 202d 206c 6f77 5f64  lexity.  - low_d
│ │ │ +00118460: 6973 7275 7074 696f 6e0a 2020 2d20 6d65  isruption.  - me
│ │ │ +00118470: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ +00118480: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ +00118490: 6564 0a20 202d 2070 6163 6b61 6765 5f63  ed.  - package_c
│ │ │ +001184a0: 6872 6f6e 795f 696e 7374 616c 6c65 640a  hrony_installed.
│ │ │ +001184b0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ +00118560: 5265 6d65 6469 6174 696f 6e20 5075 7070 Remediation Pupp │ │ │ +00118570: 6574 2073 6e69 7070 6574 20e2 87b2 3c2f et snippet ...
Complexity:< │ │ │ +001181b0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +001181d0: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ +00118220: 6174 6567 793a 3c2f 7468 3e3c 7464 3e65 ategy:e │ │ │ +00118230: 6e61 626c 653c 2f74 643e 3c2f 7472 3e3c nable
│ │ │ +00118610: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
in
│ │ │ +001186b0: 636c 7564 6520 696e 7374 616c 6c5f 6368  clude install_ch
│ │ │ +001186c0: 726f 6e79 0a0a 636c 6173 7320 696e 7374  rony..class inst
│ │ │ +001186d0: 616c 6c5f 6368 726f 6e79 207b 0a20 2070  all_chrony {.  p
│ │ │ +001186e0: 6163 6b61 6765 207b 2027 6368 726f 6e79  ackage { 'chrony
│ │ │ +001186f0: 273a 0a20 2020 2065 6e73 7572 6520 3d26  ':.    ensure =&
│ │ │ +00118700: 6774 3b20 2769 6e73 7461 6c6c 6564 272c  gt; 'installed',
│ │ │ +00118710: 0a20 207d 0a7d 0a3c 2f63 6f64 653e 3c2f  .  }.}.Remediati
│ │ │ +001187d0: 6f6e 204f 5342 7569 6c64 2042 6c75 6570  on OSBuild Bluep
│ │ │ +001187e0: 7269 6e74 2073 6e69 7070 6574 20e2 87b2  rint snippet ...
│ │ │ +001187f0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61  
.[[packages]]
│ │ │ +00118840: 0a6e 616d 6520 3d20 2263 6872 6f6e 7922  .name = "chrony"
│ │ │ +00118850: 0a76 6572 7369 6f6e 203d 2022 2a22 0a3c  .version = "*".<
│ │ │  00118860: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
Re │ │ │ -0011a9a0: 6d65 6469 6174 696f 6e20 4f53 4275 696c mediation OSBuil │ │ │ -0011a9b0: 6420 426c 7565 7072 696e 7420 736e 6970 d Blueprint snip │ │ │ -0011a9c0: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ -0011a9d0: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -0011a9e0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -0011a9f0: 7365 2220 6964 3d22 6964 3331 3722 3e3c se" id="id317">< │ │ │ -0011aa00: 7072 653e 3c63 6f64 653e 0a5b 6375 7374 pre>.[cust │ │ │ -0011aa10: 6f6d 697a 6174 696f 6e73 2e73 6572 7669 omizations.servi │ │ │ -0011aa20: 6365 735d 0a65 6e61 626c 6564 203d 205b ces].enabled = [ │ │ │ -0011aa30: 226e 7470 6422 5d0a 3c2f 636f 6465 3e3c "ntpd"].< │ │ │ -0011aa40: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c /pre>Remediat │ │ │ -0011aaf0: 696f 6e20 5075 7070 6574 2073 6e69 7070 ion Puppet snipp │ │ │ -0011ab00: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ -0011ab80: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 < │ │ │ -0011ac10: 7464 3e65 6e61 626c 653c 2f74 643e 3c2f td>enable
│ │ │ +00118600: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +00118630: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +00118640: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +00118680: 793a 3c2f 7468 3e3c 7464 3e65 6e61 626c y:enabl │ │ │ +00118690: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
Complexi │ │ │ -0011ab90: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -0011aba0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Disruption:low
Reboot │ │ │ -0011abe0: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -0011abf0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Strategy:
│ │ │ -0011ac30: 3c63 6f64 653e 696e 636c 7564 6520 656e  include en
│ │ │ -0011ac40: 6162 6c65 5f6e 7470 640a 0a63 6c61 7373  able_ntpd..class
│ │ │ -0011ac50: 2065 6e61 626c 655f 6e74 7064 207b 0a20   enable_ntpd {. 
│ │ │ -0011ac60: 2073 6572 7669 6365 207b 276e 7470 6427   service {'ntpd'
│ │ │ -0011ac70: 3a0a 2020 2020 656e 6162 6c65 203d 2667  :.    enable =&g
│ │ │ -0011ac80: 743b 2074 7275 652c 0a20 2020 2065 6e73  t; true,.    ens
│ │ │ -0011ac90: 7572 6520 3d26 6774 3b20 2772 756e 6e69  ure => 'runni
│ │ │ -0011aca0: 6e67 272c 0a20 207d 0a7d 0a3c 2f63 6f64  ng',.  }.}.
Remed │ │ │ -0011ad60: 6961 7469 6f6e 2041 6e73 6962 6c65 2073 iation Ansible s │ │ │ -0011ad70: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ -0011ae00: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -0011ae10: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -0011ae30: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ -0011ae50: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -0011ae60: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:enable
< │ │ │ -0011aea0: 7072 653e 3c63 6f64 653e 2d20 6e61 6d65 pre>- name │ │ │ -0011aeb0: 3a20 4761 7468 6572 2074 6865 2070 6163 : Gather the pac │ │ │ -0011aec0: 6b61 6765 2066 6163 7473 0a20 2070 6163 kage facts. pac │ │ │ -0011aed0: 6b61 6765 5f66 6163 7473 3a0a 2020 2020 kage_facts:. │ │ │ -0011aee0: 6d61 6e61 6765 723a 2061 7574 6f0a 2020 manager: auto. │ │ │ -0011aef0: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38 tags:. - NIST-8 │ │ │ -0011af00: 3030 2d35 332d 4155 2d38 2831 2928 6129 00-53-AU-8(1)(a) │ │ │ -0011af10: 0a20 202d 204e 4953 542d 3830 302d 3533 . - NIST-800-53 │ │ │ -0011af20: 2d43 4d2d 3628 6129 0a20 202d 2050 4349 -CM-6(a). - PCI │ │ │ -0011af30: 2d44 5353 2d52 6571 2d31 302e 340a 2020 -DSS-Req-10.4. │ │ │ -0011af40: 2d20 5043 492d 4453 5376 342d 3130 2e36 - PCI-DSSv4-10.6 │ │ │ -0011af50: 0a20 202d 2050 4349 2d44 5353 7634 2d31 . - PCI-DSSv4-1 │ │ │ -0011af60: 302e 362e 310a 2020 2d20 656e 6162 6c65 0.6.1. - enable │ │ │ -0011af70: 5f73 7472 6174 6567 790a 2020 2d20 6c6f _strategy. - lo │ │ │ -0011af80: 775f 636f 6d70 6c65 7869 7479 0a20 202d w_complexity. - │ │ │ -0011af90: 206c 6f77 5f64 6973 7275 7074 696f 6e0a low_disruption. │ │ │ -0011afa0: 2020 2d20 6d65 6469 756d 5f73 6576 6572 - medium_sever │ │ │ -0011afb0: 6974 790a 2020 2d20 6e6f 5f72 6562 6f6f ity. - no_reboo │ │ │ -0011afc0: 745f 6e65 6564 6564 0a20 202d 2073 6572 t_needed. - ser │ │ │ -0011afd0: 7669 6365 5f6e 7470 645f 656e 6162 6c65 vice_ntpd_enable │ │ │ -0011afe0: 640a 0a2d 206e 616d 653a 2045 6e61 626c d..- name: Enabl │ │ │ -0011aff0: 6520 7468 6520 4e54 5020 4461 656d 6f6e e the NTP Daemon │ │ │ -0011b000: 202d 2045 6e61 626c 6520 7365 7276 6963 - Enable servic │ │ │ -0011b010: 6520 6e74 7064 0a20 2062 6c6f 636b 3a0a e ntpd. block:. │ │ │ -0011b020: 0a20 202d 206e 616d 653a 2047 6174 6865 . - name: Gathe │ │ │ -0011b030: 7220 7468 6520 7061 636b 6167 6520 6661 r the package fa │ │ │ -0011b040: 6374 730a 2020 2020 616e 7369 626c 652e cts. ansible. │ │ │ -0011b050: 6275 696c 7469 6e2e 7061 636b 6167 655f builtin.package_ │ │ │ -0011b060: 6661 6374 733a 0a20 2020 2020 206d 616e facts:. man │ │ │ -0011b070: 6167 6572 3a20 6175 746f 0a0a 2020 2d20 ager: auto.. - │ │ │ -0011b080: 6e61 6d65 3a20 456e 6162 6c65 2074 6865 name: Enable the │ │ │ -0011b090: 204e 5450 2044 6165 6d6f 6e20 2d20 456e NTP Daemon - En │ │ │ -0011b0a0: 6162 6c65 2053 6572 7669 6365 206e 7470 able Service ntp │ │ │ -0011b0b0: 640a 2020 2020 616e 7369 626c 652e 6275 d. ansible.bu │ │ │ -0011b0c0: 696c 7469 6e2e 7379 7374 656d 643a 0a20 iltin.systemd:. │ │ │ -0011b0d0: 2020 2020 206e 616d 653a 206e 7470 640a name: ntpd. │ │ │ -0011b0e0: 2020 2020 2020 656e 6162 6c65 643a 2074 enabled: t │ │ │ -0011b0f0: 7275 650a 2020 2020 2020 7374 6174 653a rue. state: │ │ │ -0011b100: 2073 7461 7274 6564 0a20 2020 2020 206d started. m │ │ │ -0011b110: 6173 6b65 643a 2066 616c 7365 0a20 2020 asked: false. │ │ │ -0011b120: 2077 6865 6e3a 0a20 2020 202d 2027 226e when:. - '"n │ │ │ -0011b130: 7470 2220 696e 2061 6e73 6962 6c65 5f66 tp" in ansible_f │ │ │ -0011b140: 6163 7473 2e70 6163 6b61 6765 7327 0a20 acts.packages'. │ │ │ -0011b150: 2074 6167 733a 0a20 202d 204e 4953 542d tags:. - NIST- │ │ │ -0011b160: 3830 302d 3533 2d41 552d 3828 3129 2861 800-53-AU-8(1)(a │ │ │ -0011b170: 290a 2020 2d20 4e49 5354 2d38 3030 2d35 ). - NIST-800-5 │ │ │ -0011b180: 332d 434d 2d36 2861 290a 2020 2d20 5043 3-CM-6(a). - PC │ │ │ -0011b190: 492d 4453 532d 5265 712d 3130 2e34 0a20 I-DSS-Req-10.4. │ │ │ -0011b1a0: 202d 2050 4349 2d44 5353 7634 2d31 302e - PCI-DSSv4-10. │ │ │ -0011b1b0: 360a 2020 2d20 5043 492d 4453 5376 342d 6. - PCI-DSSv4- │ │ │ -0011b1c0: 3130 2e36 2e31 0a20 202d 2065 6e61 626c 10.6.1. - enabl │ │ │ -0011b1d0: 655f 7374 7261 7465 6779 0a20 202d 206c e_strategy. - l │ │ │ -0011b1e0: 6f77 5f63 6f6d 706c 6578 6974 790a 2020 ow_complexity. │ │ │ -0011b1f0: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e - low_disruption │ │ │ -0011b200: 0a20 202d 206d 6564 6975 6d5f 7365 7665 . - medium_seve │ │ │ -0011b210: 7269 7479 0a20 202d 206e 6f5f 7265 626f rity. - no_rebo │ │ │ -0011b220: 6f74 5f6e 6565 6465 640a 2020 2d20 7365 ot_needed. - se │ │ │ -0011b230: 7276 6963 655f 6e74 7064 5f65 6e61 626c rvice_ntpd_enabl │ │ │ -0011b240: 6564 0a20 202d 2073 7065 6369 616c 5f73 ed. - special_s │ │ │ -0011b250: 6572 7669 6365 5f62 6c6f 636b 0a20 2077 ervice_block. w │ │ │ -0011b260: 6865 6e3a 0a20 202d 2027 226b 6572 6e65 hen:. - '"kerne │ │ │ -0011b270: 6c22 2069 6e20 616e 7369 626c 655f 6661 l" in ansible_fa │ │ │ -0011b280: 6374 732e 7061 636b 6167 6573 270a 2020 cts.packages'. │ │ │ -0011b290: 2d20 2722 6e74 7022 2069 6e20 616e 7369 - '"ntp" in ansi │ │ │ -0011b2a0: 626c 655f 6661 6374 732e 7061 636b 6167 ble_facts.packag │ │ │ -0011b2b0: 6573 270a 3c2f 636f 6465 3e3c 2f70 7265 es'.
< │ │ │ +0011aa50: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +0011aa60: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ +0011aab0: 3c74 723e 3c74 683e 5374 7261 7465 6779
- n
│ │ │ +0011aaf0: 616d 653a 2047 6174 6865 7220 7468 6520  ame: Gather the 
│ │ │ +0011ab00: 7061 636b 6167 6520 6661 6374 730a 2020  package facts.  
│ │ │ +0011ab10: 7061 636b 6167 655f 6661 6374 733a 0a20  package_facts:. 
│ │ │ +0011ab20: 2020 206d 616e 6167 6572 3a20 6175 746f     manager: auto
│ │ │ +0011ab30: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ +0011ab40: 542d 3830 302d 3533 2d41 552d 3828 3129  T-800-53-AU-8(1)
│ │ │ +0011ab50: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ +0011ab60: 2d35 332d 434d 2d36 2861 290a 2020 2d20  -53-CM-6(a).  - 
│ │ │ +0011ab70: 5043 492d 4453 532d 5265 712d 3130 2e34  PCI-DSS-Req-10.4
│ │ │ +0011ab80: 0a20 202d 2050 4349 2d44 5353 7634 2d31  .  - PCI-DSSv4-1
│ │ │ +0011ab90: 302e 360a 2020 2d20 5043 492d 4453 5376  0.6.  - PCI-DSSv
│ │ │ +0011aba0: 342d 3130 2e36 2e31 0a20 202d 2065 6e61  4-10.6.1.  - ena
│ │ │ +0011abb0: 626c 655f 7374 7261 7465 6779 0a20 202d  ble_strategy.  -
│ │ │ +0011abc0: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ +0011abd0: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ +0011abe0: 6f6e 0a20 202d 206d 6564 6975 6d5f 7365  on.  - medium_se
│ │ │ +0011abf0: 7665 7269 7479 0a20 202d 206e 6f5f 7265  verity.  - no_re
│ │ │ +0011ac00: 626f 6f74 5f6e 6565 6465 640a 2020 2d20  boot_needed.  - 
│ │ │ +0011ac10: 7365 7276 6963 655f 6e74 7064 5f65 6e61  service_ntpd_ena
│ │ │ +0011ac20: 626c 6564 0a0a 2d20 6e61 6d65 3a20 456e  bled..- name: En
│ │ │ +0011ac30: 6162 6c65 2074 6865 204e 5450 2044 6165  able the NTP Dae
│ │ │ +0011ac40: 6d6f 6e20 2d20 456e 6162 6c65 2073 6572  mon - Enable ser
│ │ │ +0011ac50: 7669 6365 206e 7470 640a 2020 626c 6f63  vice ntpd.  bloc
│ │ │ +0011ac60: 6b3a 0a0a 2020 2d20 6e61 6d65 3a20 4761  k:..  - name: Ga
│ │ │ +0011ac70: 7468 6572 2074 6865 2070 6163 6b61 6765  ther the package
│ │ │ +0011ac80: 2066 6163 7473 0a20 2020 2061 6e73 6962   facts.    ansib
│ │ │ +0011ac90: 6c65 2e62 7569 6c74 696e 2e70 6163 6b61  le.builtin.packa
│ │ │ +0011aca0: 6765 5f66 6163 7473 3a0a 2020 2020 2020  ge_facts:.      
│ │ │ +0011acb0: 6d61 6e61 6765 723a 2061 7574 6f0a 0a20  manager: auto.. 
│ │ │ +0011acc0: 202d 206e 616d 653a 2045 6e61 626c 6520   - name: Enable 
│ │ │ +0011acd0: 7468 6520 4e54 5020 4461 656d 6f6e 202d  the NTP Daemon -
│ │ │ +0011ace0: 2045 6e61 626c 6520 5365 7276 6963 6520   Enable Service 
│ │ │ +0011acf0: 6e74 7064 0a20 2020 2061 6e73 6962 6c65  ntpd.    ansible
│ │ │ +0011ad00: 2e62 7569 6c74 696e 2e73 7973 7465 6d64  .builtin.systemd
│ │ │ +0011ad10: 3a0a 2020 2020 2020 6e61 6d65 3a20 6e74  :.      name: nt
│ │ │ +0011ad20: 7064 0a20 2020 2020 2065 6e61 626c 6564  pd.      enabled
│ │ │ +0011ad30: 3a20 7472 7565 0a20 2020 2020 2073 7461  : true.      sta
│ │ │ +0011ad40: 7465 3a20 7374 6172 7465 640a 2020 2020  te: started.    
│ │ │ +0011ad50: 2020 6d61 736b 6564 3a20 6661 6c73 650a    masked: false.
│ │ │ +0011ad60: 2020 2020 7768 656e 3a0a 2020 2020 2d20      when:.    - 
│ │ │ +0011ad70: 2722 6e74 7022 2069 6e20 616e 7369 626c  '"ntp" in ansibl
│ │ │ +0011ad80: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +0011ad90: 270a 2020 7461 6773 3a0a 2020 2d20 4e49  '.  tags:.  - NI
│ │ │ +0011ada0: 5354 2d38 3030 2d35 332d 4155 2d38 2831  ST-800-53-AU-8(1
│ │ │ +0011adb0: 2928 6129 0a20 202d 204e 4953 542d 3830  )(a).  - NIST-80
│ │ │ +0011adc0: 302d 3533 2d43 4d2d 3628 6129 0a20 202d  0-53-CM-6(a).  -
│ │ │ +0011add0: 2050 4349 2d44 5353 2d52 6571 2d31 302e   PCI-DSS-Req-10.
│ │ │ +0011ade0: 340a 2020 2d20 5043 492d 4453 5376 342d  4.  - PCI-DSSv4-
│ │ │ +0011adf0: 3130 2e36 0a20 202d 2050 4349 2d44 5353  10.6.  - PCI-DSS
│ │ │ +0011ae00: 7634 2d31 302e 362e 310a 2020 2d20 656e  v4-10.6.1.  - en
│ │ │ +0011ae10: 6162 6c65 5f73 7472 6174 6567 790a 2020  able_strategy.  
│ │ │ +0011ae20: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ +0011ae30: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ +0011ae40: 696f 6e0a 2020 2d20 6d65 6469 756d 5f73  ion.  - medium_s
│ │ │ +0011ae50: 6576 6572 6974 790a 2020 2d20 6e6f 5f72  everity.  - no_r
│ │ │ +0011ae60: 6562 6f6f 745f 6e65 6564 6564 0a20 202d  eboot_needed.  -
│ │ │ +0011ae70: 2073 6572 7669 6365 5f6e 7470 645f 656e   service_ntpd_en
│ │ │ +0011ae80: 6162 6c65 640a 2020 2d20 7370 6563 6961  abled.  - specia
│ │ │ +0011ae90: 6c5f 7365 7276 6963 655f 626c 6f63 6b0a  l_service_block.
│ │ │ +0011aea0: 2020 7768 656e 3a0a 2020 2d20 2722 6b65    when:.  - '"ke
│ │ │ +0011aeb0: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ +0011aec0: 5f66 6163 7473 2e70 6163 6b61 6765 7327  _facts.packages'
│ │ │ +0011aed0: 0a20 202d 2027 226e 7470 2220 696e 2061  .  - '"ntp" in a
│ │ │ +0011aee0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +0011aef0: 6b61 6765 7327 0a3c 2f63 6f64 653e 3c2f  kages'.Remediati
│ │ │ +0011afb0: 6f6e 2050 7570 7065 7420 736e 6970 7065  on Puppet snippe
│ │ │ +0011afc0: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469  t ...
< │ │ │ +0011b040: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>
│ │ │ +0011b080: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 enable
C │ │ │ +0011aa40: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ +0011aa70: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ +0011aa80: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ +0011aac0: 3a3c 2f74 683e 3c74 643e 656e 6162 6c65 :enable │ │ │ +0011aad0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Complexit │ │ │ +0011b050: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low
│ │ │ +0011b070: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption:low
Reboot: │ │ │ +0011b0a0: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false
│ │ │ +0011b0c0: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:
<
│ │ │ +0011b0f0: 636f 6465 3e69 6e63 6c75 6465 2065 6e61  code>include ena
│ │ │ +0011b100: 626c 655f 6e74 7064 0a0a 636c 6173 7320  ble_ntpd..class 
│ │ │ +0011b110: 656e 6162 6c65 5f6e 7470 6420 7b0a 2020  enable_ntpd {.  
│ │ │ +0011b120: 7365 7276 6963 6520 7b27 6e74 7064 273a  service {'ntpd':
│ │ │ +0011b130: 0a20 2020 2065 6e61 626c 6520 3d26 6774  .    enable =>
│ │ │ +0011b140: 3b20 7472 7565 2c0a 2020 2020 656e 7375  ; true,.    ensu
│ │ │ +0011b150: 7265 203d 2667 743b 2027 7275 6e6e 696e  re => 'runnin
│ │ │ +0011b160: 6727 2c0a 2020 7d0a 7d0a 3c2f 636f 6465  g',.  }.}.
Remedi │ │ │ +0011b220: 6174 696f 6e20 4f53 4275 696c 6420 426c ation OSBuild Bl │ │ │ +0011b230: 7565 7072 696e 7420 736e 6970 7065 7420 ueprint snippet │ │ │ +0011b240: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
│ │ │ +0011b280: 3c63 6f64 653e 0a5b 6375 7374 6f6d 697a  .[customiz
│ │ │ +0011b290: 6174 696f 6e73 2e73 6572 7669 6365 735d  ations.services]
│ │ │ +0011b2a0: 0a65 6e61 626c 6564 203d 205b 226e 7470  .enabled = ["ntp
│ │ │ +0011b2b0: 6422 5d0a 3c2f 636f 6465 3e3c 2f70 7265  d"].
< │ │ │ 0011b2e0: 2f74 6162 6c65 3e3c 2f74 643e 3c2f 7472 /table>Remediation │ │ │ -00121820: 5075 7070 6574 2073 6e69 7070 6574 20e2 Puppet snippet . │ │ │ -00121830: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ -001218b0: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -001218d0: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ -00121920: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ -00121950: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ -001218c0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ -001218e0: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ -00121930: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ -00121940: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
.include remo
│ │ │ -00121970: 7665 5f79 7062 696e 640a 0a63 6c61 7373  ve_ypbind..class
│ │ │ -00121980: 2072 656d 6f76 655f 7970 6269 6e64 207b   remove_ypbind {
│ │ │ -00121990: 0a20 2070 6163 6b61 6765 207b 2027 7970  .  package { 'yp
│ │ │ -001219a0: 6269 6e64 273a 0a20 2020 2065 6e73 7572  bind':.    ensur
│ │ │ -001219b0: 6520 3d26 6774 3b20 2770 7572 6765 6427  e => 'purged'
│ │ │ -001219c0: 2c0a 2020 7d0a 7d0a 3c2f 636f 6465 3e3c  ,.  }.}.<
│ │ │ -001219d0: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>
Remediat │ │ │ -00121a80: 696f 6e20 416e 7369 626c 6520 736e 6970 ion Ansible snip │ │ │ -00121a90: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ -00121aa0: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -00121ab0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -00121ac0: 7365 2220 6964 3d22 6964 3332 3822 3e3c se" id="id328">< │ │ │ -00121ad0: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ -00121ae0: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ -00121af0: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ -00121b00: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ -00121b10: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Complex │ │ │ -00121b20: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ -00121b30: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Disruption:lowReboo │ │ │ -00121b70: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -00121b80: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ -00121ba0: 3c74 643e 6469 7361 626c 653c 2f74 643e disable │ │ │ -00121bb0: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072 - name: │ │ │ -00121bd0: 2752 656d 6f76 6520 4e49 5320 436c 6965 'Remove NIS Clie │ │ │ -00121be0: 6e74 3a20 456e 7375 7265 2079 7062 696e nt: Ensure ypbin │ │ │ -00121bf0: 6420 6973 2072 656d 6f76 6564 270a 2020 d is removed'. │ │ │ -00121c00: 616e 7369 626c 652e 6275 696c 7469 6e2e ansible.builtin. │ │ │ -00121c10: 7061 636b 6167 653a 0a20 2020 206e 616d package:. nam │ │ │ -00121c20: 653a 2079 7062 696e 640a 2020 2020 7374 e: ypbind. st │ │ │ -00121c30: 6174 653a 2061 6273 656e 740a 2020 7461 ate: absent. ta │ │ │ -00121c40: 6773 3a0a 2020 2d20 5043 492d 4453 5376 gs:. - PCI-DSSv │ │ │ -00121c50: 342d 322e 320a 2020 2d20 5043 492d 4453 4-2.2. - PCI-DS │ │ │ -00121c60: 5376 342d 322e 322e 340a 2020 2d20 6469 Sv4-2.2.4. - di │ │ │ -00121c70: 7361 626c 655f 7374 7261 7465 6779 0a20 sable_strategy. │ │ │ -00121c80: 202d 206c 6f77 5f63 6f6d 706c 6578 6974 - low_complexit │ │ │ -00121c90: 790a 2020 2d20 6c6f 775f 6469 7372 7570 y. - low_disrup │ │ │ -00121ca0: 7469 6f6e 0a20 202d 206e 6f5f 7265 626f tion. - no_rebo │ │ │ -00121cb0: 6f74 5f6e 6565 6465 640a 2020 2d20 7061 ot_needed. - pa │ │ │ -00121cc0: 636b 6167 655f 7970 6269 6e64 5f72 656d ckage_ypbind_rem │ │ │ -00121cd0: 6f76 6564 0a20 202d 2075 6e6b 6e6f 776e oved. - unknown │ │ │ -00121ce0: 5f73 6576 6572 6974 790a 3c2f 636f 6465 _severity.
Complexity: │ │ │ +001218c0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ +001218e0: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:low< │ │ │ +00121900: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:falseSt │ │ │ +00121930: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ +00121940: 6469 7361 626c 653c 2f74 643e 3c2f 7472 disable
- name: 'Rem
│ │ │ +00121970: 6f76 6520 4e49 5320 436c 6965 6e74 3a20  ove NIS Client: 
│ │ │ +00121980: 456e 7375 7265 2079 7062 696e 6420 6973  Ensure ypbind is
│ │ │ +00121990: 2072 656d 6f76 6564 270a 2020 616e 7369   removed'.  ansi
│ │ │ +001219a0: 626c 652e 6275 696c 7469 6e2e 7061 636b  ble.builtin.pack
│ │ │ +001219b0: 6167 653a 0a20 2020 206e 616d 653a 2079  age:.    name: y
│ │ │ +001219c0: 7062 696e 640a 2020 2020 7374 6174 653a  pbind.    state:
│ │ │ +001219d0: 2061 6273 656e 740a 2020 7461 6773 3a0a   absent.  tags:.
│ │ │ +001219e0: 2020 2d20 5043 492d 4453 5376 342d 322e    - PCI-DSSv4-2.
│ │ │ +001219f0: 320a 2020 2d20 5043 492d 4453 5376 342d  2.  - PCI-DSSv4-
│ │ │ +00121a00: 322e 322e 340a 2020 2d20 6469 7361 626c  2.2.4.  - disabl
│ │ │ +00121a10: 655f 7374 7261 7465 6779 0a20 202d 206c  e_strategy.  - l
│ │ │ +00121a20: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ +00121a30: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ +00121a40: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ +00121a50: 6565 6465 640a 2020 2d20 7061 636b 6167  eeded.  - packag
│ │ │ +00121a60: 655f 7970 6269 6e64 5f72 656d 6f76 6564  e_ypbind_removed
│ │ │ +00121a70: 0a20 202d 2075 6e6b 6e6f 776e 5f73 6576  .  - unknown_sev
│ │ │ +00121a80: 6572 6974 790a 3c2f 636f 6465 3e3c 2f70  erity.

Remediatio │ │ │ +00121b40: 6e20 5075 7070 6574 2073 6e69 7070 6574 n Puppet snippet │ │ │ +00121b50: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Complexity │ │ │ +00121be0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ +00121c00: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ +00121c10: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +00121c20: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ +00121c30: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ +00121c50: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:disable
<
│ │ │ +00121c80: 636f 6465 3e0a 696e 636c 7564 6520 7265  code>.include re
│ │ │ +00121c90: 6d6f 7665 5f79 7062 696e 640a 0a63 6c61  move_ypbind..cla
│ │ │ +00121ca0: 7373 2072 656d 6f76 655f 7970 6269 6e64  ss remove_ypbind
│ │ │ +00121cb0: 207b 0a20 2070 6163 6b61 6765 207b 2027   {.  package { '
│ │ │ +00121cc0: 7970 6269 6e64 273a 0a20 2020 2065 6e73  ypbind':.    ens
│ │ │ +00121cd0: 7572 6520 3d26 6774 3b20 2770 7572 6765  ure => 'purge
│ │ │ +00121ce0: 6427 2c0a 2020 7d0a 7d0a 3c2f 636f 6465  d',.  }.}.
Remediati │ │ │ -00122f10: 6f6e 2050 7570 7065 7420 736e 6970 7065 on Puppet snippe │ │ │ -00122f20: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ -00122fa0: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ -00122fb0: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ -00122fd0: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ -00122fe0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ -00123000: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ -00123020: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:disable
│ │ │ -00123050: 3c63 6f64 653e 0a69 6e63 6c75 6465 2072  .include r
│ │ │ -00123060: 656d 6f76 655f 7273 680a 0a63 6c61 7373  emove_rsh..class
│ │ │ -00123070: 2072 656d 6f76 655f 7273 6820 7b0a 2020   remove_rsh {.  
│ │ │ -00123080: 7061 636b 6167 6520 7b20 2772 7368 273a  package { 'rsh':
│ │ │ -00123090: 0a20 2020 2065 6e73 7572 6520 3d26 6774  .    ensure =>
│ │ │ -001230a0: 3b20 2770 7572 6765 6427 2c0a 2020 7d0a  ; 'purged',.  }.
│ │ │ -001230b0: 7d0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  }.
< │ │ │ -001230c0: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation An │ │ │ -00123170: 7369 626c 6520 736e 6970 7065 7420 e287 sible snippet .. │ │ │ -00123180: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ -00123200: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -00123220: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -00123270: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>< │ │ │ -001232a0: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
- name: 'Unins
│ │ │ -001232c0: 7461 6c6c 2072 7368 2050 6163 6b61 6765  tall rsh Package
│ │ │ -001232d0: 3a20 456e 7375 7265 2072 7368 2069 7320  : Ensure rsh is 
│ │ │ -001232e0: 7265 6d6f 7665 6427 0a20 2061 6e73 6962  removed'.  ansib
│ │ │ -001232f0: 6c65 2e62 7569 6c74 696e 2e70 6163 6b61  le.builtin.packa
│ │ │ -00123300: 6765 3a0a 2020 2020 6e61 6d65 3a20 7273  ge:.    name: rs
│ │ │ -00123310: 680a 2020 2020 7374 6174 653a 2061 6273  h.    state: abs
│ │ │ -00123320: 656e 740a 2020 7461 6773 3a0a 2020 2d20  ent.  tags:.  - 
│ │ │ -00123330: 4e49 5354 2d38 3030 2d31 3731 2d33 2e31  NIST-800-171-3.1
│ │ │ -00123340: 2e31 330a 2020 2d20 5043 492d 4453 5376  .13.  - PCI-DSSv
│ │ │ -00123350: 342d 322e 320a 2020 2d20 5043 492d 4453  4-2.2.  - PCI-DS
│ │ │ -00123360: 5376 342d 322e 322e 340a 2020 2d20 6469  Sv4-2.2.4.  - di
│ │ │ -00123370: 7361 626c 655f 7374 7261 7465 6779 0a20  sable_strategy. 
│ │ │ -00123380: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ -00123390: 790a 2020 2d20 6c6f 775f 6469 7372 7570  y.  - low_disrup
│ │ │ -001233a0: 7469 6f6e 0a20 202d 206e 6f5f 7265 626f  tion.  - no_rebo
│ │ │ -001233b0: 6f74 5f6e 6565 6465 640a 2020 2d20 7061  ot_needed.  - pa
│ │ │ -001233c0: 636b 6167 655f 7273 685f 7265 6d6f 7665  ckage_rsh_remove
│ │ │ -001233d0: 640a 2020 2d20 756e 6b6e 6f77 6e5f 7365  d.  - unknown_se
│ │ │ -001233e0: 7665 7269 7479 0a3c 2f63 6f64 653e 3c2f  verity.
│ │ │ +00122fa0: 3c74 723e 3c74 683e 436f 6d70 6c65 7869
< │ │ │ +00123030: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ +00123040: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
low
Disr │ │ │ -00123230: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -00123240: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ -00123280: 7465 6779 3a3c 2f74 683e 3c74 643e 6469 tegy:di │ │ │ -00123290: 7361 626c 653c 2f74 643e 3c2f 7472 3e3c sable
Complexi │ │ │ +00122fb0: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +00122fc0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Disruption:low
Reboot │ │ │ +00123000: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +00123010: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Strategy:
- name: '
│ │ │ +00123060: 556e 696e 7374 616c 6c20 7273 6820 5061  Uninstall rsh Pa
│ │ │ +00123070: 636b 6167 653a 2045 6e73 7572 6520 7273  ckage: Ensure rs
│ │ │ +00123080: 6820 6973 2072 656d 6f76 6564 270a 2020  h is removed'.  
│ │ │ +00123090: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ +001230a0: 7061 636b 6167 653a 0a20 2020 206e 616d  package:.    nam
│ │ │ +001230b0: 653a 2072 7368 0a20 2020 2073 7461 7465  e: rsh.    state
│ │ │ +001230c0: 3a20 6162 7365 6e74 0a20 2074 6167 733a  : absent.  tags:
│ │ │ +001230d0: 0a20 202d 204e 4953 542d 3830 302d 3137  .  - NIST-800-17
│ │ │ +001230e0: 312d 332e 312e 3133 0a20 202d 2050 4349  1-3.1.13.  - PCI
│ │ │ +001230f0: 2d44 5353 7634 2d32 2e32 0a20 202d 2050  -DSSv4-2.2.  - P
│ │ │ +00123100: 4349 2d44 5353 7634 2d32 2e32 2e34 0a20  CI-DSSv4-2.2.4. 
│ │ │ +00123110: 202d 2064 6973 6162 6c65 5f73 7472 6174   - disable_strat
│ │ │ +00123120: 6567 790a 2020 2d20 6c6f 775f 636f 6d70  egy.  - low_comp
│ │ │ +00123130: 6c65 7869 7479 0a20 202d 206c 6f77 5f64  lexity.  - low_d
│ │ │ +00123140: 6973 7275 7074 696f 6e0a 2020 2d20 6e6f  isruption.  - no
│ │ │ +00123150: 5f72 6562 6f6f 745f 6e65 6564 6564 0a20  _reboot_needed. 
│ │ │ +00123160: 202d 2070 6163 6b61 6765 5f72 7368 5f72   - package_rsh_r
│ │ │ +00123170: 656d 6f76 6564 0a20 202d 2075 6e6b 6e6f  emoved.  - unkno
│ │ │ +00123180: 776e 5f73 6576 6572 6974 790a 3c2f 636f  wn_severity.
< │ │ │ +001231a0: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ +001231b0: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ +001231c0: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ +001231d0: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ +001231e0: 6433 3332 2220 7461 6269 6e64 6578 3d22 d332" tabindex=" │ │ │ +001231f0: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ +00123200: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ +00123210: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ +00123220: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ +00123230: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ +00123240: 6469 6174 696f 6e20 5075 7070 6574 2073 diation Puppet s │ │ │ +00123250: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ +001232e0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +001232f0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ +00123310: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ +00123330: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +00123340: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ +00123380: 3c70 7265 3e3c 636f 6465 3e0a 696e 636c
.incl
│ │ │ +00123390: 7564 6520 7265 6d6f 7665 5f72 7368 0a0a  ude remove_rsh..
│ │ │ +001233a0: 636c 6173 7320 7265 6d6f 7665 5f72 7368  class remove_rsh
│ │ │ +001233b0: 207b 0a20 2070 6163 6b61 6765 207b 2027   {.  package { '
│ │ │ +001233c0: 7273 6827 3a0a 2020 2020 656e 7375 7265  rsh':.    ensure
│ │ │ +001233d0: 203d 2667 743b 2027 7075 7267 6564 272c   => 'purged',
│ │ │ +001233e0: 0a20 207d 0a7d 0a3c 2f63 6f64 653e 3c2f  .  }.}.
Remed │ │ │ -00124440: 6961 7469 6f6e 2050 7570 7065 7420 736e iation Puppet sn │ │ │ -00124450: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ -00124500: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ -00124520: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ -00124550: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ -001244e0: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ -001244f0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ -00124510: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ -00124530: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -00124540: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:disable
< │ │ │ -00124580: 7072 653e 3c63 6f64 653e 0a69 6e63 6c75 pre>.inclu │ │ │ -00124590: 6465 2072 656d 6f76 655f 7461 6c6b 2d73 de remove_talk-s │ │ │ -001245a0: 6572 7665 720a 0a63 6c61 7373 2072 656d erver..class rem │ │ │ -001245b0: 6f76 655f 7461 6c6b 2d73 6572 7665 7220 ove_talk-server │ │ │ -001245c0: 7b0a 2020 7061 636b 6167 6520 7b20 2774 {. package { 't │ │ │ -001245d0: 616c 6b2d 7365 7276 6572 273a 0a20 2020 alk-server':. │ │ │ -001245e0: 2065 6e73 7572 6520 3d26 6774 3b20 2770 ensure => 'p │ │ │ -001245f0: 7572 6765 6427 2c0a 2020 7d0a 7d0a 3c2f urged',. }.}.
Re │ │ │ -001246b0: 6d65 6469 6174 696f 6e20 416e 7369 626c mediation Ansibl │ │ │ -001246c0: 6520 736e 6970 7065 7420 e287 b23c 2f61 e snippet ...
< │ │ │ -00124760: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -00124770: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ -001247c0: 3c74 723e 3c74 683e 5374 7261 7465 6779
- 
│ │ │ -00124800: 6e61 6d65 3a20 2755 6e69 6e73 7461 6c6c  name: 'Uninstall
│ │ │ -00124810: 2074 616c 6b2d 7365 7276 6572 2050 6163   talk-server Pac
│ │ │ -00124820: 6b61 6765 3a20 456e 7375 7265 2074 616c  kage: Ensure tal
│ │ │ -00124830: 6b2d 7365 7276 6572 2069 7320 7265 6d6f  k-server is remo
│ │ │ -00124840: 7665 6427 0a20 2061 6e73 6962 6c65 2e62  ved'.  ansible.b
│ │ │ -00124850: 7569 6c74 696e 2e70 6163 6b61 6765 3a0a  uiltin.package:.
│ │ │ -00124860: 2020 2020 6e61 6d65 3a20 7461 6c6b 2d73      name: talk-s
│ │ │ -00124870: 6572 7665 720a 2020 2020 7374 6174 653a  erver.    state:
│ │ │ -00124880: 2061 6273 656e 740a 2020 7461 6773 3a0a   absent.  tags:.
│ │ │ -00124890: 2020 2d20 5043 492d 4453 5376 342d 322e    - PCI-DSSv4-2.
│ │ │ -001248a0: 320a 2020 2d20 5043 492d 4453 5376 342d  2.  - PCI-DSSv4-
│ │ │ -001248b0: 322e 322e 340a 2020 2d20 6469 7361 626c  2.2.4.  - disabl
│ │ │ -001248c0: 655f 7374 7261 7465 6779 0a20 202d 206c  e_strategy.  - l
│ │ │ -001248d0: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ -001248e0: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ -001248f0: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ -00124900: 7269 7479 0a20 202d 206e 6f5f 7265 626f  rity.  - no_rebo
│ │ │ -00124910: 6f74 5f6e 6565 6465 640a 2020 2d20 7061  ot_needed.  - pa
│ │ │ -00124920: 636b 6167 655f 7461 6c6b 2d73 6572 7665  ckage_talk-serve
│ │ │ -00124930: 725f 7265 6d6f 7665 640a 3c2f 636f 6465  r_removed.
C │ │ │ -00124750: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -00124780: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ -00124790: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -001247d0: 3a3c 2f74 683e 3c74 643e 6469 7361 626c :disabl │ │ │ -001247e0: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
Comp │ │ │ +001244e0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +001244f0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ +00124510: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ +00124530: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +00124540: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ +00124580: 3c70 7265 3e3c 636f 6465 3e2d 206e 616d
- nam
│ │ │ +00124590: 653a 2027 556e 696e 7374 616c 6c20 7461  e: 'Uninstall ta
│ │ │ +001245a0: 6c6b 2d73 6572 7665 7220 5061 636b 6167  lk-server Packag
│ │ │ +001245b0: 653a 2045 6e73 7572 6520 7461 6c6b 2d73  e: Ensure talk-s
│ │ │ +001245c0: 6572 7665 7220 6973 2072 656d 6f76 6564  erver is removed
│ │ │ +001245d0: 270a 2020 616e 7369 626c 652e 6275 696c  '.  ansible.buil
│ │ │ +001245e0: 7469 6e2e 7061 636b 6167 653a 0a20 2020  tin.package:.   
│ │ │ +001245f0: 206e 616d 653a 2074 616c 6b2d 7365 7276   name: talk-serv
│ │ │ +00124600: 6572 0a20 2020 2073 7461 7465 3a20 6162  er.    state: ab
│ │ │ +00124610: 7365 6e74 0a20 2074 6167 733a 0a20 202d  sent.  tags:.  -
│ │ │ +00124620: 2050 4349 2d44 5353 7634 2d32 2e32 0a20   PCI-DSSv4-2.2. 
│ │ │ +00124630: 202d 2050 4349 2d44 5353 7634 2d32 2e32   - PCI-DSSv4-2.2
│ │ │ +00124640: 2e34 0a20 202d 2064 6973 6162 6c65 5f73  .4.  - disable_s
│ │ │ +00124650: 7472 6174 6567 790a 2020 2d20 6c6f 775f  trategy.  - low_
│ │ │ +00124660: 636f 6d70 6c65 7869 7479 0a20 202d 206c  complexity.  - l
│ │ │ +00124670: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ +00124680: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ +00124690: 790a 2020 2d20 6e6f 5f72 6562 6f6f 745f  y.  - no_reboot_
│ │ │ +001246a0: 6e65 6564 6564 0a20 202d 2070 6163 6b61  needed.  - packa
│ │ │ +001246b0: 6765 5f74 616c 6b2d 7365 7276 6572 5f72  ge_talk-server_r
│ │ │ +001246c0: 656d 6f76 6564 0a3c 2f63 6f64 653e 3c2f  emoved.
Remediati │ │ │ +00124780: 6f6e 2050 7570 7065 7420 736e 6970 7065 on Puppet snippe │ │ │ +00124790: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ +00124810: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ +00124820: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ +00124840: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ +00124850: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ +00124870: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ +00124890: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:disable
│ │ │ +001248c0: 3c63 6f64 653e 0a69 6e63 6c75 6465 2072  .include r
│ │ │ +001248d0: 656d 6f76 655f 7461 6c6b 2d73 6572 7665  emove_talk-serve
│ │ │ +001248e0: 720a 0a63 6c61 7373 2072 656d 6f76 655f  r..class remove_
│ │ │ +001248f0: 7461 6c6b 2d73 6572 7665 7220 7b0a 2020  talk-server {.  
│ │ │ +00124900: 7061 636b 6167 6520 7b20 2774 616c 6b2d  package { 'talk-
│ │ │ +00124910: 7365 7276 6572 273a 0a20 2020 2065 6e73  server':.    ens
│ │ │ +00124920: 7572 6520 3d26 6774 3b20 2770 7572 6765  ure => 'purge
│ │ │ +00124930: 6427 2c0a 2020 7d0a 7d0a 3c2f 636f 6465  d',.  }.}.
Reme │ │ │ -00125710: 6469 6174 696f 6e20 5075 7070 6574 2073 diation Puppet s │ │ │ -00125720: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ -001257b0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -001257c0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -001257e0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ -00125800: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -00125810: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ -00125850: 3c70 7265 3e3c 636f 6465 3e0a 696e 636c
.incl
│ │ │ -00125860: 7564 6520 7265 6d6f 7665 5f74 616c 6b0a  ude remove_talk.
│ │ │ -00125870: 0a63 6c61 7373 2072 656d 6f76 655f 7461  .class remove_ta
│ │ │ -00125880: 6c6b 207b 0a20 2070 6163 6b61 6765 207b  lk {.  package {
│ │ │ -00125890: 2027 7461 6c6b 273a 0a20 2020 2065 6e73   'talk':.    ens
│ │ │ -001258a0: 7572 6520 3d26 6774 3b20 2770 7572 6765  ure => 'purge
│ │ │ -001258b0: 6427 2c0a 2020 7d0a 7d0a 3c2f 636f 6465  d',.  }.}.
Remedi │ │ │ -00125970: 6174 696f 6e20 416e 7369 626c 6520 736e ation Ansible sn │ │ │ -00125980: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ -00125a30: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ -00125a50: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ -00125a80: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ -00125a10: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ -00125a20: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ -00125a40: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ -00125a60: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -00125a70: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:disable
< │ │ │ -00125ab0: 7072 653e 3c63 6f64 653e 2d20 6e61 6d65 pre>- name │ │ │ -00125ac0: 3a20 2755 6e69 6e73 7461 6c6c 2074 616c : 'Uninstall tal │ │ │ -00125ad0: 6b20 5061 636b 6167 653a 2045 6e73 7572 k Package: Ensur │ │ │ -00125ae0: 6520 7461 6c6b 2069 7320 7265 6d6f 7665 e talk is remove │ │ │ -00125af0: 6427 0a20 2061 6e73 6962 6c65 2e62 7569 d'. ansible.bui │ │ │ -00125b00: 6c74 696e 2e70 6163 6b61 6765 3a0a 2020 ltin.package:. │ │ │ -00125b10: 2020 6e61 6d65 3a20 7461 6c6b 0a20 2020 name: talk. │ │ │ -00125b20: 2073 7461 7465 3a20 6162 7365 6e74 0a20 state: absent. │ │ │ -00125b30: 2074 6167 733a 0a20 202d 2050 4349 2d44 tags:. - PCI-D │ │ │ -00125b40: 5353 7634 2d32 2e32 0a20 202d 2050 4349 SSv4-2.2. - PCI │ │ │ -00125b50: 2d44 5353 7634 2d32 2e32 2e34 0a20 202d -DSSv4-2.2.4. - │ │ │ -00125b60: 2064 6973 6162 6c65 5f73 7472 6174 6567 disable_strateg │ │ │ -00125b70: 790a 2020 2d20 6c6f 775f 636f 6d70 6c65 y. - low_comple │ │ │ -00125b80: 7869 7479 0a20 202d 206c 6f77 5f64 6973 xity. - low_dis │ │ │ -00125b90: 7275 7074 696f 6e0a 2020 2d20 6d65 6469 ruption. - medi │ │ │ -00125ba0: 756d 5f73 6576 6572 6974 790a 2020 2d20 um_severity. - │ │ │ -00125bb0: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564 no_reboot_needed │ │ │ -00125bc0: 0a20 202d 2070 6163 6b61 6765 5f74 616c . - package_tal │ │ │ -00125bd0: 6b5f 7265 6d6f 7665 640a 3c2f 636f 6465 k_removed.< │ │ │ +00125730: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Com │ │ │ +001257b0: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ +001257e0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ +00125800: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +00125810: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ +00125830: 2f74 683e 3c74 643e 6469 7361 626c 653c /th>disable< │ │ │ +00125840: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
- na
│ │ │ +00125860: 6d65 3a20 2755 6e69 6e73 7461 6c6c 2074  me: 'Uninstall t
│ │ │ +00125870: 616c 6b20 5061 636b 6167 653a 2045 6e73  alk Package: Ens
│ │ │ +00125880: 7572 6520 7461 6c6b 2069 7320 7265 6d6f  ure talk is remo
│ │ │ +00125890: 7665 6427 0a20 2061 6e73 6962 6c65 2e62  ved'.  ansible.b
│ │ │ +001258a0: 7569 6c74 696e 2e70 6163 6b61 6765 3a0a  uiltin.package:.
│ │ │ +001258b0: 2020 2020 6e61 6d65 3a20 7461 6c6b 0a20      name: talk. 
│ │ │ +001258c0: 2020 2073 7461 7465 3a20 6162 7365 6e74     state: absent
│ │ │ +001258d0: 0a20 2074 6167 733a 0a20 202d 2050 4349  .  tags:.  - PCI
│ │ │ +001258e0: 2d44 5353 7634 2d32 2e32 0a20 202d 2050  -DSSv4-2.2.  - P
│ │ │ +001258f0: 4349 2d44 5353 7634 2d32 2e32 2e34 0a20  CI-DSSv4-2.2.4. 
│ │ │ +00125900: 202d 2064 6973 6162 6c65 5f73 7472 6174   - disable_strat
│ │ │ +00125910: 6567 790a 2020 2d20 6c6f 775f 636f 6d70  egy.  - low_comp
│ │ │ +00125920: 6c65 7869 7479 0a20 202d 206c 6f77 5f64  lexity.  - low_d
│ │ │ +00125930: 6973 7275 7074 696f 6e0a 2020 2d20 6d65  isruption.  - me
│ │ │ +00125940: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ +00125950: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ +00125960: 6564 0a20 202d 2070 6163 6b61 6765 5f74  ed.  - package_t
│ │ │ +00125970: 616c 6b5f 7265 6d6f 7665 640a 3c2f 636f  alk_removed.
< │ │ │ +00125990: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ +001259a0: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ +001259b0: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ +001259c0: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ +001259d0: 6433 3430 2220 7461 6269 6e64 6578 3d22 d340" tabindex=" │ │ │ +001259e0: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ +001259f0: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ +00125a00: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ +00125a10: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ +00125a20: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ +00125a30: 6469 6174 696f 6e20 5075 7070 6574 2073 diation Puppet s │ │ │ +00125a40: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ +00125ad0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +00125ae0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ +00125b00: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ +00125b20: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +00125b30: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ +00125b70: 3c70 7265 3e3c 636f 6465 3e0a 696e 636c
.incl
│ │ │ +00125b80: 7564 6520 7265 6d6f 7665 5f74 616c 6b0a  ude remove_talk.
│ │ │ +00125b90: 0a63 6c61 7373 2072 656d 6f76 655f 7461  .class remove_ta
│ │ │ +00125ba0: 6c6b 207b 0a20 2070 6163 6b61 6765 207b  lk {.  package {
│ │ │ +00125bb0: 2027 7461 6c6b 273a 0a20 2020 2065 6e73   'talk':.    ens
│ │ │ +00125bc0: 7572 6520 3d26 6774 3b20 2770 7572 6765  ure => 'purge
│ │ │ +00125bd0: 6427 2c0a 2020 7d0a 7d0a 3c2f 636f 6465  d',.  }.}.
│ │ │ -00126e40: 5265 6d65 6469 6174 696f 6e20 5075 7070 Remediation Pupp │ │ │ -00126e50: 6574 2073 6e69 7070 6574 20e2 87b2 3c2f et snippet ...
│ │ │ -00126ef0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
.
│ │ │ -00126f90: 696e 636c 7564 6520 7265 6d6f 7665 5f74  include remove_t
│ │ │ -00126fa0: 656c 6e65 740a 0a63 6c61 7373 2072 656d  elnet..class rem
│ │ │ -00126fb0: 6f76 655f 7465 6c6e 6574 207b 0a20 2070  ove_telnet {.  p
│ │ │ -00126fc0: 6163 6b61 6765 207b 2027 7465 6c6e 6574  ackage { 'telnet
│ │ │ -00126fd0: 273a 0a20 2020 2065 6e73 7572 6520 3d26  ':.    ensure =&
│ │ │ -00126fe0: 6774 3b20 2770 7572 6765 6427 2c0a 2020  gt; 'purged',.  
│ │ │ -00126ff0: 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70 7265  }.}.
Remediation │ │ │ -001270b0: 416e 7369 626c 6520 736e 6970 7065 7420 Ansible snippet │ │ │ -001270c0: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
low< │ │ │ -00127190: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>
│ │ │ -00126ee0: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -00126f10: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -00126f20: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -00126f60: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ -00126f70: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Complexity: │ │ │ -00127150: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Di │ │ │ -00127170: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:
Reboot:false
St │ │ │ -001271c0: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ -001271d0: 6469 7361 626c 653c 2f74 643e 3c2f 7472 disable
- name: 'Rem
│ │ │ -00127200: 6f76 6520 7465 6c6e 6574 2043 6c69 656e  ove telnet Clien
│ │ │ -00127210: 7473 3a20 456e 7375 7265 2074 656c 6e65  ts: Ensure telne
│ │ │ -00127220: 7420 6973 2072 656d 6f76 6564 270a 2020  t is removed'.  
│ │ │ -00127230: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ -00127240: 7061 636b 6167 653a 0a20 2020 206e 616d  package:.    nam
│ │ │ -00127250: 653a 2074 656c 6e65 740a 2020 2020 7374  e: telnet.    st
│ │ │ -00127260: 6174 653a 2061 6273 656e 740a 2020 7461  ate: absent.  ta
│ │ │ -00127270: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030  gs:.  - NIST-800
│ │ │ -00127280: 2d31 3731 2d33 2e31 2e31 330a 2020 2d20  -171-3.1.13.  - 
│ │ │ -00127290: 5043 492d 4453 5376 342d 322e 320a 2020  PCI-DSSv4-2.2.  
│ │ │ -001272a0: 2d20 5043 492d 4453 5376 342d 322e 322e  - PCI-DSSv4-2.2.
│ │ │ -001272b0: 340a 2020 2d20 6469 7361 626c 655f 7374  4.  - disable_st
│ │ │ -001272c0: 7261 7465 6779 0a20 202d 206c 6f77 5f63  rategy.  - low_c
│ │ │ -001272d0: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f  omplexity.  - lo
│ │ │ -001272e0: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ -001272f0: 206c 6f77 5f73 6576 6572 6974 790a 2020   low_severity.  
│ │ │ -00127300: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ -00127310: 6564 0a20 202d 2070 6163 6b61 6765 5f74  ed.  - package_t
│ │ │ -00127320: 656c 6e65 745f 7265 6d6f 7665 640a 3c2f  elnet_removed.
< │ │ │ +00126f30: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +00126f40: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

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

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

R │ │ │ -00127e30: 656d 6564 6961 7469 6f6e 204f 5342 7569 emediation OSBui │ │ │ -00127e40: 6c64 2042 6c75 6570 7269 6e74 2073 6e69 ld Blueprint sni │ │ │ -00127e50: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -00127e60: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -00127e90: 3c70 7265 3e3c 636f 6465 3e0a 5b63 7573
.[cus
│ │ │ -00127ea0: 746f 6d69 7a61 7469 6f6e 732e 7365 7276  tomizations.serv
│ │ │ -00127eb0: 6963 6573 5d0a 6d61 736b 6564 203d 205b  ices].masked = [
│ │ │ -00127ec0: 2272 7379 6e63 6422 5d0a 3c2f 636f 6465  "rsyncd"].
Remedi │ │ │ -00127f80: 6174 696f 6e20 5075 7070 6574 2073 6e69 ation Puppet sni │ │ │ -00127f90: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -00127fa0: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -00127fd0: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ -00128040: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ -00128060: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ -00128090: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy: │ │ │ -001280b0: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
Comple │ │ │ -00128020: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ -00128030: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ -00128070: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ -00128080: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
enable
include │ │ │ -001280d0: 6469 7361 626c 655f 7273 796e 6364 0a0a disable_rsyncd.. │ │ │ -001280e0: 636c 6173 7320 6469 7361 626c 655f 7273 class disable_rs │ │ │ -001280f0: 796e 6364 207b 0a20 2073 6572 7669 6365 yncd {. service │ │ │ -00128100: 207b 2772 7379 6e63 6427 3a0a 2020 2020 {'rsyncd':. │ │ │ -00128110: 656e 6162 6c65 203d 2667 743b 2066 616c enable => fal │ │ │ -00128120: 7365 2c0a 2020 2020 656e 7375 7265 203d se,. ensure = │ │ │ -00128130: 2667 743b 2027 7374 6f70 7065 6427 2c0a > 'stopped',. │ │ │ -00128140: 2020 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70 }.}.

Remediatio │ │ │ -00128200: 6e20 416e 7369 626c 6520 736e 6970 7065 n Ansible snippe │ │ │ -00128210: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ -00128290: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ -001282a0: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ -001282c0: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ -001282d0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ -001282f0: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ -00128310: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:disable
│ │ │ -00128340: 3c63 6f64 653e 2d20 6e61 6d65 3a20 4761  - name: Ga
│ │ │ -00128350: 7468 6572 2074 6865 2070 6163 6b61 6765  ther the package
│ │ │ -00128360: 2066 6163 7473 0a20 2070 6163 6b61 6765   facts.  package
│ │ │ -00128370: 5f66 6163 7473 3a0a 2020 2020 6d61 6e61  _facts:.    mana
│ │ │ -00128380: 6765 723a 2061 7574 6f0a 2020 7461 6773  ger: auto.  tags
│ │ │ -00128390: 3a0a 2020 2d20 5043 492d 4453 5376 342d  :.  - PCI-DSSv4-
│ │ │ -001283a0: 322e 320a 2020 2d20 5043 492d 4453 5376  2.2.  - PCI-DSSv
│ │ │ -001283b0: 342d 322e 322e 340a 2020 2d20 6469 7361  4-2.2.4.  - disa
│ │ │ -001283c0: 626c 655f 7374 7261 7465 6779 0a20 202d  ble_strategy.  -
│ │ │ -001283d0: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ -001283e0: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ -001283f0: 6f6e 0a20 202d 206d 6564 6975 6d5f 7365  on.  - medium_se
│ │ │ -00128400: 7665 7269 7479 0a20 202d 206e 6f5f 7265  verity.  - no_re
│ │ │ -00128410: 626f 6f74 5f6e 6565 6465 640a 2020 2d20  boot_needed.  - 
│ │ │ -00128420: 7365 7276 6963 655f 7273 796e 6364 5f64  service_rsyncd_d
│ │ │ -00128430: 6973 6162 6c65 640a 0a2d 206e 616d 653a  isabled..- name:
│ │ │ -00128440: 2045 6e73 7572 6520 7273 796e 6364 2073   Ensure rsyncd s
│ │ │ -00128450: 6572 7669 6365 2069 7320 6469 7361 626c  ervice is disabl
│ │ │ -00128460: 6564 202d 2044 6973 6162 6c65 2073 6572  ed - Disable ser
│ │ │ -00128470: 7669 6365 2072 7379 6e63 640a 2020 626c  vice rsyncd.  bl
│ │ │ -00128480: 6f63 6b3a 0a0a 2020 2d20 6e61 6d65 3a20  ock:..  - name: 
│ │ │ -00128490: 456e 7375 7265 2072 7379 6e63 6420 7365  Ensure rsyncd se
│ │ │ -001284a0: 7276 6963 6520 6973 2064 6973 6162 6c65  rvice is disable
│ │ │ -001284b0: 6420 2d20 436f 6c6c 6563 7420 7379 7374  d - Collect syst
│ │ │ -001284c0: 656d 6420 5365 7276 6963 6573 2050 7265  emd Services Pre
│ │ │ -001284d0: 7365 6e74 2069 6e0a 2020 2020 2020 7468  sent in.      th
│ │ │ -001284e0: 6520 5379 7374 656d 0a20 2020 2061 6e73  e System.    ans
│ │ │ -001284f0: 6962 6c65 2e62 7569 6c74 696e 2e63 6f6d  ible.builtin.com
│ │ │ -00128500: 6d61 6e64 3a20 7379 7374 656d 6374 6c20  mand: systemctl 
│ │ │ -00128510: 2d71 206c 6973 742d 756e 6974 2d66 696c  -q list-unit-fil
│ │ │ -00128520: 6573 202d 2d74 7970 6520 7365 7276 6963  es --type servic
│ │ │ -00128530: 650a 2020 2020 7265 6769 7374 6572 3a20  e.    register: 
│ │ │ -00128540: 7365 7276 6963 655f 6578 6973 7473 0a20  service_exists. 
│ │ │ -00128550: 2020 2063 6861 6e67 6564 5f77 6865 6e3a     changed_when:
│ │ │ -00128560: 2066 616c 7365 0a20 2020 2066 6169 6c65   false.    faile
│ │ │ -00128570: 645f 7768 656e 3a20 7365 7276 6963 655f  d_when: service_
│ │ │ -00128580: 6578 6973 7473 2e72 6320 6e6f 7420 696e  exists.rc not in
│ │ │ -00128590: 205b 302c 2031 5d0a 2020 2020 6368 6563   [0, 1].    chec
│ │ │ -001285a0: 6b5f 6d6f 6465 3a20 6661 6c73 650a 0a20  k_mode: false.. 
│ │ │ -001285b0: 202d 206e 616d 653a 2045 6e73 7572 6520   - name: Ensure 
│ │ │ -001285c0: 7273 796e 6364 2073 6572 7669 6365 2069  rsyncd service i
│ │ │ -001285d0: 7320 6469 7361 626c 6564 202d 2045 6e73  s disabled - Ens
│ │ │ -001285e0: 7572 6520 7273 796e 6364 2e73 6572 7669  ure rsyncd.servi
│ │ │ -001285f0: 6365 2069 7320 4d61 736b 6564 0a20 2020  ce is Masked.   
│ │ │ -00128600: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ -00128610: 2e73 7973 7465 6d64 3a0a 2020 2020 2020  .systemd:.      
│ │ │ -00128620: 6e61 6d65 3a20 7273 796e 6364 2e73 6572  name: rsyncd.ser
│ │ │ -00128630: 7669 6365 0a20 2020 2020 2073 7461 7465  vice.      state
│ │ │ -00128640: 3a20 7374 6f70 7065 640a 2020 2020 2020  : stopped.      
│ │ │ -00128650: 656e 6162 6c65 643a 2066 616c 7365 0a20  enabled: false. 
│ │ │ -00128660: 2020 2020 206d 6173 6b65 643a 2074 7275       masked: tru
│ │ │ -00128670: 650a 2020 2020 7768 656e 3a20 7365 7276  e.    when: serv
│ │ │ -00128680: 6963 655f 6578 6973 7473 2e73 7464 6f75  ice_exists.stdou
│ │ │ -00128690: 745f 6c69 6e65 7320 6973 2073 6561 7263  t_lines is searc
│ │ │ -001286a0: 6828 2272 7379 6e63 642e 7365 7276 6963  h("rsyncd.servic
│ │ │ -001286b0: 6522 2c20 6d75 6c74 696c 696e 653d 5472  e", multiline=Tr
│ │ │ -001286c0: 7565 290a 0a20 202d 206e 616d 653a 2055  ue)..  - name: U
│ │ │ -001286d0: 6e69 7420 536f 636b 6574 2045 7869 7374  nit Socket Exist
│ │ │ -001286e0: 7320 2d20 7273 796e 6364 2e73 6f63 6b65  s - rsyncd.socke
│ │ │ -001286f0: 740a 2020 2020 616e 7369 626c 652e 6275  t.    ansible.bu
│ │ │ -00128700: 696c 7469 6e2e 636f 6d6d 616e 643a 2073  iltin.command: s
│ │ │ -00128710: 7973 7465 6d63 746c 202d 7120 6c69 7374  ystemctl -q list
│ │ │ -00128720: 2d75 6e69 742d 6669 6c65 7320 7273 796e  -unit-files rsyn
│ │ │ -00128730: 6364 2e73 6f63 6b65 740a 2020 2020 7265  cd.socket.    re
│ │ │ -00128740: 6769 7374 6572 3a20 736f 636b 6574 5f66  gister: socket_f
│ │ │ -00128750: 696c 655f 6578 6973 7473 0a20 2020 2063  ile_exists.    c
│ │ │ -00128760: 6861 6e67 6564 5f77 6865 6e3a 2066 616c  hanged_when: fal
│ │ │ -00128770: 7365 0a20 2020 2066 6169 6c65 645f 7768  se.    failed_wh
│ │ │ -00128780: 656e 3a20 736f 636b 6574 5f66 696c 655f  en: socket_file_
│ │ │ -00128790: 6578 6973 7473 2e72 6320 6e6f 7420 696e  exists.rc not in
│ │ │ -001287a0: 205b 302c 2031 5d0a 2020 2020 6368 6563   [0, 1].    chec
│ │ │ -001287b0: 6b5f 6d6f 6465 3a20 6661 6c73 650a 0a20  k_mode: false.. 
│ │ │ -001287c0: 202d 206e 616d 653a 2045 6e73 7572 6520   - name: Ensure 
│ │ │ -001287d0: 7273 796e 6364 2073 6572 7669 6365 2069  rsyncd service i
│ │ │ -001287e0: 7320 6469 7361 626c 6564 202d 2044 6973  s disabled - Dis
│ │ │ -001287f0: 6162 6c65 2053 6f63 6b65 7420 7273 796e  able Socket rsyn
│ │ │ -00128800: 6364 0a20 2020 2061 6e73 6962 6c65 2e62  cd.    ansible.b
│ │ │ -00128810: 7569 6c74 696e 2e73 7973 7465 6d64 3a0a  uiltin.systemd:.
│ │ │ -00128820: 2020 2020 2020 6e61 6d65 3a20 7273 796e        name: rsyn
│ │ │ -00128830: 6364 2e73 6f63 6b65 740a 2020 2020 2020  cd.socket.      
│ │ │ -00128840: 656e 6162 6c65 643a 2066 616c 7365 0a20  enabled: false. 
│ │ │ -00128850: 2020 2020 2073 7461 7465 3a20 7374 6f70       state: stop
│ │ │ -00128860: 7065 640a 2020 2020 2020 6d61 736b 6564  ped.      masked
│ │ │ -00128870: 3a20 7472 7565 0a20 2020 2077 6865 6e3a  : true.    when:
│ │ │ -00128880: 2073 6f63 6b65 745f 6669 6c65 5f65 7869   socket_file_exi
│ │ │ -00128890: 7374 732e 7374 646f 7574 5f6c 696e 6573  sts.stdout_lines
│ │ │ -001288a0: 2069 7320 7365 6172 6368 2822 7273 796e   is search("rsyn
│ │ │ -001288b0: 6364 2e73 6f63 6b65 7422 2c20 6d75 6c74  cd.socket", mult
│ │ │ -001288c0: 696c 696e 653d 5472 7565 290a 2020 7461  iline=True).  ta
│ │ │ -001288d0: 6773 3a0a 2020 2d20 5043 492d 4453 5376  gs:.  - PCI-DSSv
│ │ │ -001288e0: 342d 322e 320a 2020 2d20 5043 492d 4453  4-2.2.  - PCI-DS
│ │ │ -001288f0: 5376 342d 322e 322e 340a 2020 2d20 6469  Sv4-2.2.4.  - di
│ │ │ -00128900: 7361 626c 655f 7374 7261 7465 6779 0a20  sable_strategy. 
│ │ │ -00128910: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ -00128920: 790a 2020 2d20 6c6f 775f 6469 7372 7570  y.  - low_disrup
│ │ │ -00128930: 7469 6f6e 0a20 202d 206d 6564 6975 6d5f  tion.  - medium_
│ │ │ -00128940: 7365 7665 7269 7479 0a20 202d 206e 6f5f  severity.  - no_
│ │ │ -00128950: 7265 626f 6f74 5f6e 6565 6465 640a 2020  reboot_needed.  
│ │ │ -00128960: 2d20 7365 7276 6963 655f 7273 796e 6364  - service_rsyncd
│ │ │ -00128970: 5f64 6973 6162 6c65 640a 2020 2d20 7370  _disabled.  - sp
│ │ │ -00128980: 6563 6961 6c5f 7365 7276 6963 655f 626c  ecial_service_bl
│ │ │ -00128990: 6f63 6b0a 2020 7768 656e 3a20 2722 6b65  ock.  when: '"ke
│ │ │ -001289a0: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ -001289b0: 5f66 6163 7473 2e70 6163 6b61 6765 7327  _facts.packages'
│ │ │ +00127e30: 656d 6564 6961 7469 6f6e 2041 6e73 6962  emediation Ansib
│ │ │ +00127e40: 6c65 2073 6e69 7070 6574 20e2 87b2 3c2f  le snippet ...
│ │ │ +00127ee0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
-
│ │ │ +00127f80: 206e 616d 653a 2047 6174 6865 7220 7468   name: Gather th
│ │ │ +00127f90: 6520 7061 636b 6167 6520 6661 6374 730a  e package facts.
│ │ │ +00127fa0: 2020 7061 636b 6167 655f 6661 6374 733a    package_facts:
│ │ │ +00127fb0: 0a20 2020 206d 616e 6167 6572 3a20 6175  .    manager: au
│ │ │ +00127fc0: 746f 0a20 2074 6167 733a 0a20 202d 2050  to.  tags:.  - P
│ │ │ +00127fd0: 4349 2d44 5353 7634 2d32 2e32 0a20 202d  CI-DSSv4-2.2.  -
│ │ │ +00127fe0: 2050 4349 2d44 5353 7634 2d32 2e32 2e34   PCI-DSSv4-2.2.4
│ │ │ +00127ff0: 0a20 202d 2064 6973 6162 6c65 5f73 7472  .  - disable_str
│ │ │ +00128000: 6174 6567 790a 2020 2d20 6c6f 775f 636f  ategy.  - low_co
│ │ │ +00128010: 6d70 6c65 7869 7479 0a20 202d 206c 6f77  mplexity.  - low
│ │ │ +00128020: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +00128030: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ +00128040: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ +00128050: 6564 6564 0a20 202d 2073 6572 7669 6365  eded.  - service
│ │ │ +00128060: 5f72 7379 6e63 645f 6469 7361 626c 6564  _rsyncd_disabled
│ │ │ +00128070: 0a0a 2d20 6e61 6d65 3a20 456e 7375 7265  ..- name: Ensure
│ │ │ +00128080: 2072 7379 6e63 6420 7365 7276 6963 6520   rsyncd service 
│ │ │ +00128090: 6973 2064 6973 6162 6c65 6420 2d20 4469  is disabled - Di
│ │ │ +001280a0: 7361 626c 6520 7365 7276 6963 6520 7273  sable service rs
│ │ │ +001280b0: 796e 6364 0a20 2062 6c6f 636b 3a0a 0a20  yncd.  block:.. 
│ │ │ +001280c0: 202d 206e 616d 653a 2045 6e73 7572 6520   - name: Ensure 
│ │ │ +001280d0: 7273 796e 6364 2073 6572 7669 6365 2069  rsyncd service i
│ │ │ +001280e0: 7320 6469 7361 626c 6564 202d 2043 6f6c  s disabled - Col
│ │ │ +001280f0: 6c65 6374 2073 7973 7465 6d64 2053 6572  lect systemd Ser
│ │ │ +00128100: 7669 6365 7320 5072 6573 656e 7420 696e  vices Present in
│ │ │ +00128110: 0a20 2020 2020 2074 6865 2053 7973 7465  .      the Syste
│ │ │ +00128120: 6d0a 2020 2020 616e 7369 626c 652e 6275  m.    ansible.bu
│ │ │ +00128130: 696c 7469 6e2e 636f 6d6d 616e 643a 2073  iltin.command: s
│ │ │ +00128140: 7973 7465 6d63 746c 202d 7120 6c69 7374  ystemctl -q list
│ │ │ +00128150: 2d75 6e69 742d 6669 6c65 7320 2d2d 7479  -unit-files --ty
│ │ │ +00128160: 7065 2073 6572 7669 6365 0a20 2020 2072  pe service.    r
│ │ │ +00128170: 6567 6973 7465 723a 2073 6572 7669 6365  egister: service
│ │ │ +00128180: 5f65 7869 7374 730a 2020 2020 6368 616e  _exists.    chan
│ │ │ +00128190: 6765 645f 7768 656e 3a20 6661 6c73 650a  ged_when: false.
│ │ │ +001281a0: 2020 2020 6661 696c 6564 5f77 6865 6e3a      failed_when:
│ │ │ +001281b0: 2073 6572 7669 6365 5f65 7869 7374 732e   service_exists.
│ │ │ +001281c0: 7263 206e 6f74 2069 6e20 5b30 2c20 315d  rc not in [0, 1]
│ │ │ +001281d0: 0a20 2020 2063 6865 636b 5f6d 6f64 653a  .    check_mode:
│ │ │ +001281e0: 2066 616c 7365 0a0a 2020 2d20 6e61 6d65   false..  - name
│ │ │ +001281f0: 3a20 456e 7375 7265 2072 7379 6e63 6420  : Ensure rsyncd 
│ │ │ +00128200: 7365 7276 6963 6520 6973 2064 6973 6162  service is disab
│ │ │ +00128210: 6c65 6420 2d20 456e 7375 7265 2072 7379  led - Ensure rsy
│ │ │ +00128220: 6e63 642e 7365 7276 6963 6520 6973 204d  ncd.service is M
│ │ │ +00128230: 6173 6b65 640a 2020 2020 616e 7369 626c  asked.    ansibl
│ │ │ +00128240: 652e 6275 696c 7469 6e2e 7379 7374 656d  e.builtin.system
│ │ │ +00128250: 643a 0a20 2020 2020 206e 616d 653a 2072  d:.      name: r
│ │ │ +00128260: 7379 6e63 642e 7365 7276 6963 650a 2020  syncd.service.  
│ │ │ +00128270: 2020 2020 7374 6174 653a 2073 746f 7070      state: stopp
│ │ │ +00128280: 6564 0a20 2020 2020 2065 6e61 626c 6564  ed.      enabled
│ │ │ +00128290: 3a20 6661 6c73 650a 2020 2020 2020 6d61  : false.      ma
│ │ │ +001282a0: 736b 6564 3a20 7472 7565 0a20 2020 2077  sked: true.    w
│ │ │ +001282b0: 6865 6e3a 2073 6572 7669 6365 5f65 7869  hen: service_exi
│ │ │ +001282c0: 7374 732e 7374 646f 7574 5f6c 696e 6573  sts.stdout_lines
│ │ │ +001282d0: 2069 7320 7365 6172 6368 2822 7273 796e   is search("rsyn
│ │ │ +001282e0: 6364 2e73 6572 7669 6365 222c 206d 756c  cd.service", mul
│ │ │ +001282f0: 7469 6c69 6e65 3d54 7275 6529 0a0a 2020  tiline=True)..  
│ │ │ +00128300: 2d20 6e61 6d65 3a20 556e 6974 2053 6f63  - name: Unit Soc
│ │ │ +00128310: 6b65 7420 4578 6973 7473 202d 2072 7379  ket Exists - rsy
│ │ │ +00128320: 6e63 642e 736f 636b 6574 0a20 2020 2061  ncd.socket.    a
│ │ │ +00128330: 6e73 6962 6c65 2e62 7569 6c74 696e 2e63  nsible.builtin.c
│ │ │ +00128340: 6f6d 6d61 6e64 3a20 7379 7374 656d 6374  ommand: systemct
│ │ │ +00128350: 6c20 2d71 206c 6973 742d 756e 6974 2d66  l -q list-unit-f
│ │ │ +00128360: 696c 6573 2072 7379 6e63 642e 736f 636b  iles rsyncd.sock
│ │ │ +00128370: 6574 0a20 2020 2072 6567 6973 7465 723a  et.    register:
│ │ │ +00128380: 2073 6f63 6b65 745f 6669 6c65 5f65 7869   socket_file_exi
│ │ │ +00128390: 7374 730a 2020 2020 6368 616e 6765 645f  sts.    changed_
│ │ │ +001283a0: 7768 656e 3a20 6661 6c73 650a 2020 2020  when: false.    
│ │ │ +001283b0: 6661 696c 6564 5f77 6865 6e3a 2073 6f63  failed_when: soc
│ │ │ +001283c0: 6b65 745f 6669 6c65 5f65 7869 7374 732e  ket_file_exists.
│ │ │ +001283d0: 7263 206e 6f74 2069 6e20 5b30 2c20 315d  rc not in [0, 1]
│ │ │ +001283e0: 0a20 2020 2063 6865 636b 5f6d 6f64 653a  .    check_mode:
│ │ │ +001283f0: 2066 616c 7365 0a0a 2020 2d20 6e61 6d65   false..  - name
│ │ │ +00128400: 3a20 456e 7375 7265 2072 7379 6e63 6420  : Ensure rsyncd 
│ │ │ +00128410: 7365 7276 6963 6520 6973 2064 6973 6162  service is disab
│ │ │ +00128420: 6c65 6420 2d20 4469 7361 626c 6520 536f  led - Disable So
│ │ │ +00128430: 636b 6574 2072 7379 6e63 640a 2020 2020  cket rsyncd.    
│ │ │ +00128440: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ +00128450: 7379 7374 656d 643a 0a20 2020 2020 206e  systemd:.      n
│ │ │ +00128460: 616d 653a 2072 7379 6e63 642e 736f 636b  ame: rsyncd.sock
│ │ │ +00128470: 6574 0a20 2020 2020 2065 6e61 626c 6564  et.      enabled
│ │ │ +00128480: 3a20 6661 6c73 650a 2020 2020 2020 7374  : false.      st
│ │ │ +00128490: 6174 653a 2073 746f 7070 6564 0a20 2020  ate: stopped.   
│ │ │ +001284a0: 2020 206d 6173 6b65 643a 2074 7275 650a     masked: true.
│ │ │ +001284b0: 2020 2020 7768 656e 3a20 736f 636b 6574      when: socket
│ │ │ +001284c0: 5f66 696c 655f 6578 6973 7473 2e73 7464  _file_exists.std
│ │ │ +001284d0: 6f75 745f 6c69 6e65 7320 6973 2073 6561  out_lines is sea
│ │ │ +001284e0: 7263 6828 2272 7379 6e63 642e 736f 636b  rch("rsyncd.sock
│ │ │ +001284f0: 6574 222c 206d 756c 7469 6c69 6e65 3d54  et", multiline=T
│ │ │ +00128500: 7275 6529 0a20 2074 6167 733a 0a20 202d  rue).  tags:.  -
│ │ │ +00128510: 2050 4349 2d44 5353 7634 2d32 2e32 0a20   PCI-DSSv4-2.2. 
│ │ │ +00128520: 202d 2050 4349 2d44 5353 7634 2d32 2e32   - PCI-DSSv4-2.2
│ │ │ +00128530: 2e34 0a20 202d 2064 6973 6162 6c65 5f73  .4.  - disable_s
│ │ │ +00128540: 7472 6174 6567 790a 2020 2d20 6c6f 775f  trategy.  - low_
│ │ │ +00128550: 636f 6d70 6c65 7869 7479 0a20 202d 206c  complexity.  - l
│ │ │ +00128560: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ +00128570: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ +00128580: 790a 2020 2d20 6e6f 5f72 6562 6f6f 745f  y.  - no_reboot_
│ │ │ +00128590: 6e65 6564 6564 0a20 202d 2073 6572 7669  needed.  - servi
│ │ │ +001285a0: 6365 5f72 7379 6e63 645f 6469 7361 626c  ce_rsyncd_disabl
│ │ │ +001285b0: 6564 0a20 202d 2073 7065 6369 616c 5f73  ed.  - special_s
│ │ │ +001285c0: 6572 7669 6365 5f62 6c6f 636b 0a20 2077  ervice_block.  w
│ │ │ +001285d0: 6865 6e3a 2027 226b 6572 6e65 6c22 2069  hen: '"kernel" i
│ │ │ +001285e0: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001285f0: 7061 636b 6167 6573 270a 3c2f 636f 6465  packages'.
Remedi │ │ │ +001286b0: 6174 696f 6e20 5075 7070 6574 2073 6e69 ation Puppet sni │ │ │ +001286c0: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ +001286d0: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ +00128700: 3c74 6162 6c65 2063 6c61 7373 3d22 7461
│ │ │ +00127ed0: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +00127f00: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +00127f10: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +00127f50: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ +00127f60: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
< │ │ │ +00128770: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ +00128790: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ +001287c0: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy: │ │ │ +001287e0: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
Comple │ │ │ +00128750: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ +00128760: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ +001287a0: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +001287b0: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
enable
include │ │ │ +00128800: 6469 7361 626c 655f 7273 796e 6364 0a0a disable_rsyncd.. │ │ │ +00128810: 636c 6173 7320 6469 7361 626c 655f 7273 class disable_rs │ │ │ +00128820: 796e 6364 207b 0a20 2073 6572 7669 6365 yncd {. service │ │ │ +00128830: 207b 2772 7379 6e63 6427 3a0a 2020 2020 {'rsyncd':. │ │ │ +00128840: 656e 6162 6c65 203d 2667 743b 2066 616c enable => fal │ │ │ +00128850: 7365 2c0a 2020 2020 656e 7375 7265 203d se,. ensure = │ │ │ +00128860: 2667 743b 2027 7374 6f70 7065 6427 2c0a > 'stopped',. │ │ │ +00128870: 2020 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70 }.}.

Remediatio │ │ │ +00128930: 6e20 4f53 4275 696c 6420 426c 7565 7072 n OSBuild Bluepr │ │ │ +00128940: 696e 7420 736e 6970 7065 7420 e287 b23c int snippet ...< │ │ │ +00128950: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
.[customizatio
│ │ │ +001289a0: 6e73 2e73 6572 7669 6365 735d 0a6d 6173  ns.services].mas
│ │ │ +001289b0: 6b65 6420 3d20 5b22 7273 796e 6364 225d  ked = ["rsyncd"]
│ │ │  001289c0: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
< │ │ │ 001289e0: 2f74 723e 3c2f 7462 6f64 793e 3c2f 7461 /tr>Remediat │ │ │ -0014b710: 696f 6e20 5075 7070 6574 2073 6e69 7070 ion Puppet snipp │ │ │ -0014b720: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...

...incl │ │ │ -0014b770: 7564 6520 7373 685f 7072 6976 6174 655f ude ssh_private_ │ │ │ -0014b780: 6b65 795f 7065 726d 730a 0a63 6c61 7373 key_perms..class │ │ │ -0014b790: 2073 7368 5f70 7269 7661 7465 5f6b 6579 ssh_private_key │ │ │ -0014b7a0: 5f70 6572 6d73 207b 0a20 2065 7865 6320 _perms {. exec │ │ │ -0014b7b0: 7b20 2773 7368 645f 7072 6976 5f6b 6579 { 'sshd_priv_key │ │ │ -0014b7c0: 273a 0a20 2020 2063 6f6d 6d61 6e64 203d ':. command = │ │ │ -0014b7d0: 2667 743b 2022 6368 6d6f 6420 3036 3030 > "chmod 0600 │ │ │ -0014b7e0: 202f 6574 632f 7373 682f 2a5f 6b65 7922 /etc/ssh/*_key" │ │ │ -0014b7f0: 2c0a 2020 2020 7061 7468 2020 2020 3d26 ,. path =& │ │ │ -0014b800: 6774 3b20 272f 6269 6e3a 2f75 7372 2f62 gt; '/bin:/usr/b │ │ │ -0014b810: 696e 270a 2020 7d0a 7d0a 3c2f 636f 6465 in'. }.}.

Remedi │ │ │ -0014b8d0: 6174 696f 6e20 416e 7369 626c 6520 736e ation Ansible sn │ │ │ -0014b8e0: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ -0014b990: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ -0014b9b0: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ -0014b9e0: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ -0014b970: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ -0014b980: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ -0014b9a0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ -0014b9c0: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -0014b9d0: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:configure< │ │ │ -0014ba00: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
- na
│ │ │ -0014ba20: 6d65 3a20 4761 7468 6572 2074 6865 2070  me: Gather the p
│ │ │ -0014ba30: 6163 6b61 6765 2066 6163 7473 0a20 2070  ackage facts.  p
│ │ │ -0014ba40: 6163 6b61 6765 5f66 6163 7473 3a0a 2020  ackage_facts:.  
│ │ │ -0014ba50: 2020 6d61 6e61 6765 723a 2061 7574 6f0a    manager: auto.
│ │ │ -0014ba60: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ -0014ba70: 2d38 3030 2d31 3731 2d33 2e31 2e31 330a  -800-171-3.1.13.
│ │ │ -0014ba80: 2020 2d20 4e49 5354 2d38 3030 2d31 3731    - NIST-800-171
│ │ │ -0014ba90: 2d33 2e31 332e 3130 0a20 202d 204e 4953  -3.13.10.  - NIS
│ │ │ -0014baa0: 542d 3830 302d 3533 2d41 432d 3137 2861  T-800-53-AC-17(a
│ │ │ -0014bab0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -0014bac0: 332d 4143 2d36 2831 290a 2020 2d20 4e49  3-AC-6(1).  - NI
│ │ │ -0014bad0: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ -0014bae0: 290a 2020 2d20 5043 492d 4453 532d 5265  ).  - PCI-DSS-Re
│ │ │ -0014baf0: 712d 322e 322e 340a 2020 2d20 5043 492d  q-2.2.4.  - PCI-
│ │ │ -0014bb00: 4453 5376 342d 322e 320a 2020 2d20 5043  DSSv4-2.2.  - PC
│ │ │ -0014bb10: 492d 4453 5376 342d 322e 322e 360a 2020  I-DSSv4-2.2.6.  
│ │ │ -0014bb20: 2d20 636f 6e66 6967 7572 655f 7374 7261  - configure_stra
│ │ │ -0014bb30: 7465 6779 0a20 202d 2066 696c 655f 7065  tegy.  - file_pe
│ │ │ -0014bb40: 726d 6973 7369 6f6e 735f 7373 6864 5f70  rmissions_sshd_p
│ │ │ -0014bb50: 7269 7661 7465 5f6b 6579 0a20 202d 206c  rivate_key.  - l
│ │ │ -0014bb60: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ -0014bb70: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ -0014bb80: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ -0014bb90: 7269 7479 0a20 202d 206e 6f5f 7265 626f  rity.  - no_rebo
│ │ │ -0014bba0: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d  ot_needed..- nam
│ │ │ -0014bbb0: 653a 2046 696e 6420 726f 6f74 3a72 6f6f  e: Find root:roo
│ │ │ -0014bbc0: 742d 6f77 6e65 6420 6b65 7973 0a20 2061  t-owned keys.  a
│ │ │ -0014bbd0: 6e73 6962 6c65 2e62 7569 6c74 696e 2e63  nsible.builtin.c
│ │ │ -0014bbe0: 6f6d 6d61 6e64 3a20 6669 6e64 202d 4820  ommand: find -H 
│ │ │ -0014bbf0: 2f65 7463 2f73 7368 2f20 2d6d 6178 6465  /etc/ssh/ -maxde
│ │ │ -0014bc00: 7074 6820 3120 2d75 7365 7220 726f 6f74  pth 1 -user root
│ │ │ -0014bc10: 202d 7265 6765 7820 222e 2a5f 6b65 7924   -regex ".*_key$
│ │ │ -0014bc20: 220a 2020 2020 2d74 7970 6520 6620 2d67  ".    -type f -g
│ │ │ -0014bc30: 726f 7570 2072 6f6f 7420 2d70 6572 6d20  roup root -perm 
│ │ │ -0014bc40: 2f75 2b78 732c 672b 7877 7273 2c6f 2b78  /u+xs,g+xwrs,o+x
│ │ │ -0014bc50: 7772 740a 2020 7265 6769 7374 6572 3a20  wrt.  register: 
│ │ │ -0014bc60: 726f 6f74 5f6f 776e 6564 5f6b 6579 730a  root_owned_keys.
│ │ │ -0014bc70: 2020 6368 616e 6765 645f 7768 656e 3a20    changed_when: 
│ │ │ -0014bc80: 6661 6c73 650a 2020 6661 696c 6564 5f77  false.  failed_w
│ │ │ -0014bc90: 6865 6e3a 2066 616c 7365 0a20 2063 6865  hen: false.  che
│ │ │ -0014bca0: 636b 5f6d 6f64 653a 2066 616c 7365 0a20  ck_mode: false. 
│ │ │ -0014bcb0: 2077 6865 6e3a 2027 226b 6572 6e65 6c22   when: '"kernel"
│ │ │ -0014bcc0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -0014bcd0: 732e 7061 636b 6167 6573 270a 2020 7461  s.packages'.  ta
│ │ │ -0014bce0: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030  gs:.  - NIST-800
│ │ │ -0014bcf0: 2d31 3731 2d33 2e31 2e31 330a 2020 2d20  -171-3.1.13.  - 
│ │ │ -0014bd00: 4e49 5354 2d38 3030 2d31 3731 2d33 2e31  NIST-800-171-3.1
│ │ │ -0014bd10: 332e 3130 0a20 202d 204e 4953 542d 3830  3.10.  - NIST-80
│ │ │ -0014bd20: 302d 3533 2d41 432d 3137 2861 290a 2020  0-53-AC-17(a).  
│ │ │ -0014bd30: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ -0014bd40: 2d36 2831 290a 2020 2d20 4e49 5354 2d38  -6(1).  - NIST-8
│ │ │ -0014bd50: 3030 2d35 332d 434d 2d36 2861 290a 2020  00-53-CM-6(a).  
│ │ │ -0014bd60: 2d20 5043 492d 4453 532d 5265 712d 322e  - PCI-DSS-Req-2.
│ │ │ -0014bd70: 322e 340a 2020 2d20 5043 492d 4453 5376  2.4.  - PCI-DSSv
│ │ │ -0014bd80: 342d 322e 320a 2020 2d20 5043 492d 4453  4-2.2.  - PCI-DS
│ │ │ -0014bd90: 5376 342d 322e 322e 360a 2020 2d20 636f  Sv4-2.2.6.  - co
│ │ │ -0014bda0: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ -0014bdb0: 0a20 202d 2066 696c 655f 7065 726d 6973  .  - file_permis
│ │ │ -0014bdc0: 7369 6f6e 735f 7373 6864 5f70 7269 7661  sions_sshd_priva
│ │ │ -0014bdd0: 7465 5f6b 6579 0a20 202d 206c 6f77 5f63  te_key.  - low_c
│ │ │ -0014bde0: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f  omplexity.  - lo
│ │ │ -0014bdf0: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ -0014be00: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ -0014be10: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ -0014be20: 6565 6465 640a 0a2d 206e 616d 653a 2053  eeded..- name: S
│ │ │ -0014be30: 6574 2070 6572 6d69 7373 696f 6e73 2066  et permissions f
│ │ │ -0014be40: 6f72 2072 6f6f 743a 726f 6f74 2d6f 776e  or root:root-own
│ │ │ -0014be50: 6564 206b 6579 730a 2020 616e 7369 626c  ed keys.  ansibl
│ │ │ -0014be60: 652e 6275 696c 7469 6e2e 6669 6c65 3a0a  e.builtin.file:.
│ │ │ -0014be70: 2020 2020 7061 7468 3a20 277b 7b20 6974      path: '{{ it
│ │ │ -0014be80: 656d 207d 7d27 0a20 2020 206d 6f64 653a  em }}'.    mode:
│ │ │ -0014be90: 2075 2d78 732c 672d 7877 7273 2c6f 2d78   u-xs,g-xwrs,o-x
│ │ │ -0014bea0: 7772 740a 2020 2020 7374 6174 653a 2066  wrt.    state: f
│ │ │ -0014beb0: 696c 650a 2020 7769 7468 5f69 7465 6d73  ile.  with_items
│ │ │ -0014bec0: 3a0a 2020 2d20 277b 7b20 726f 6f74 5f6f  :.  - '{{ root_o
│ │ │ -0014bed0: 776e 6564 5f6b 6579 732e 7374 646f 7574  wned_keys.stdout
│ │ │ -0014bee0: 5f6c 696e 6573 207d 7d27 0a20 2077 6865  _lines }}'.  whe
│ │ │ -0014bef0: 6e3a 2027 226b 6572 6e65 6c22 2069 6e20  n: '"kernel" in 
│ │ │ -0014bf00: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -0014bf10: 636b 6167 6573 270a 2020 7461 6773 3a0a  ckages'.  tags:.
│ │ │ -0014bf20: 2020 2d20 4e49 5354 2d38 3030 2d31 3731    - NIST-800-171
│ │ │ -0014bf30: 2d33 2e31 2e31 330a 2020 2d20 4e49 5354  -3.1.13.  - NIST
│ │ │ -0014bf40: 2d38 3030 2d31 3731 2d33 2e31 332e 3130  -800-171-3.13.10
│ │ │ -0014bf50: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -0014bf60: 2d41 432d 3137 2861 290a 2020 2d20 4e49  -AC-17(a).  - NI
│ │ │ -0014bf70: 5354 2d38 3030 2d35 332d 4143 2d36 2831  ST-800-53-AC-6(1
│ │ │ -0014bf80: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -0014bf90: 332d 434d 2d36 2861 290a 2020 2d20 5043  3-CM-6(a).  - PC
│ │ │ -0014bfa0: 492d 4453 532d 5265 712d 322e 322e 340a  I-DSS-Req-2.2.4.
│ │ │ -0014bfb0: 2020 2d20 5043 492d 4453 5376 342d 322e    - PCI-DSSv4-2.
│ │ │ -0014bfc0: 320a 2020 2d20 5043 492d 4453 5376 342d  2.  - PCI-DSSv4-
│ │ │ -0014bfd0: 322e 322e 360a 2020 2d20 636f 6e66 6967  2.2.6.  - config
│ │ │ -0014bfe0: 7572 655f 7374 7261 7465 6779 0a20 202d  ure_strategy.  -
│ │ │ -0014bff0: 2066 696c 655f 7065 726d 6973 7369 6f6e   file_permission
│ │ │ -0014c000: 735f 7373 6864 5f70 7269 7661 7465 5f6b  s_sshd_private_k
│ │ │ -0014c010: 6579 0a20 202d 206c 6f77 5f63 6f6d 706c  ey.  - low_compl
│ │ │ -0014c020: 6578 6974 790a 2020 2d20 6c6f 775f 6469  exity.  - low_di
│ │ │ -0014c030: 7372 7570 7469 6f6e 0a20 202d 206d 6564  sruption.  - med
│ │ │ -0014c040: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ -0014c050: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ -0014c060: 640a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  d.
< │ │ │ +0014b710: 696f 6e20 416e 7369 626c 6520 736e 6970 ion Ansible snip │ │ │ +0014b720: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ +0014b730: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +0014b740: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +0014b750: 7365 2220 6964 3d22 6964 3430 3422 3e3c se" id="id404">< │ │ │ +0014b760: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +0014b770: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +0014b780: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +0014b790: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +0014b7a0: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Complex │ │ │ +0014b7b0: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ +0014b7c0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Disruption:lowReboo │ │ │ +0014b800: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ +0014b810: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ +0014b830: 3c74 643e 636f 6e66 6967 7572 653c 2f74 configure< │ │ │ +0014b850: 7072 653e 3c63 6f64 653e 2d20 6e61 6d65 pre>- name │ │ │ +0014b860: 3a20 4761 7468 6572 2074 6865 2070 6163 : Gather the pac │ │ │ +0014b870: 6b61 6765 2066 6163 7473 0a20 2070 6163 kage facts. pac │ │ │ +0014b880: 6b61 6765 5f66 6163 7473 3a0a 2020 2020 kage_facts:. │ │ │ +0014b890: 6d61 6e61 6765 723a 2061 7574 6f0a 2020 manager: auto. │ │ │ +0014b8a0: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38 tags:. - NIST-8 │ │ │ +0014b8b0: 3030 2d31 3731 2d33 2e31 2e31 330a 2020 00-171-3.1.13. │ │ │ +0014b8c0: 2d20 4e49 5354 2d38 3030 2d31 3731 2d33 - NIST-800-171-3 │ │ │ +0014b8d0: 2e31 332e 3130 0a20 202d 204e 4953 542d .13.10. - NIST- │ │ │ +0014b8e0: 3830 302d 3533 2d41 432d 3137 2861 290a 800-53-AC-17(a). │ │ │ +0014b8f0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d - NIST-800-53- │ │ │ +0014b900: 4143 2d36 2831 290a 2020 2d20 4e49 5354 AC-6(1). - NIST │ │ │ +0014b910: 2d38 3030 2d35 332d 434d 2d36 2861 290a -800-53-CM-6(a). │ │ │ +0014b920: 2020 2d20 5043 492d 4453 532d 5265 712d - PCI-DSS-Req- │ │ │ +0014b930: 322e 322e 340a 2020 2d20 5043 492d 4453 2.2.4. - PCI-DS │ │ │ +0014b940: 5376 342d 322e 320a 2020 2d20 5043 492d Sv4-2.2. - PCI- │ │ │ +0014b950: 4453 5376 342d 322e 322e 360a 2020 2d20 DSSv4-2.2.6. - │ │ │ +0014b960: 636f 6e66 6967 7572 655f 7374 7261 7465 configure_strate │ │ │ +0014b970: 6779 0a20 202d 2066 696c 655f 7065 726d gy. - file_perm │ │ │ +0014b980: 6973 7369 6f6e 735f 7373 6864 5f70 7269 issions_sshd_pri │ │ │ +0014b990: 7661 7465 5f6b 6579 0a20 202d 206c 6f77 vate_key. - low │ │ │ +0014b9a0: 5f63 6f6d 706c 6578 6974 790a 2020 2d20 _complexity. - │ │ │ +0014b9b0: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20 low_disruption. │ │ │ +0014b9c0: 202d 206d 6564 6975 6d5f 7365 7665 7269 - medium_severi │ │ │ +0014b9d0: 7479 0a20 202d 206e 6f5f 7265 626f 6f74 ty. - no_reboot │ │ │ +0014b9e0: 5f6e 6565 6465 640a 0a2d 206e 616d 653a _needed..- name: │ │ │ +0014b9f0: 2046 696e 6420 726f 6f74 3a72 6f6f 742d Find root:root- │ │ │ +0014ba00: 6f77 6e65 6420 6b65 7973 0a20 2061 6e73 owned keys. ans │ │ │ +0014ba10: 6962 6c65 2e62 7569 6c74 696e 2e63 6f6d ible.builtin.com │ │ │ +0014ba20: 6d61 6e64 3a20 6669 6e64 202d 4820 2f65 mand: find -H /e │ │ │ +0014ba30: 7463 2f73 7368 2f20 2d6d 6178 6465 7074 tc/ssh/ -maxdept │ │ │ +0014ba40: 6820 3120 2d75 7365 7220 726f 6f74 202d h 1 -user root - │ │ │ +0014ba50: 7265 6765 7820 222e 2a5f 6b65 7924 220a regex ".*_key$". │ │ │ +0014ba60: 2020 2020 2d74 7970 6520 6620 2d67 726f -type f -gro │ │ │ +0014ba70: 7570 2072 6f6f 7420 2d70 6572 6d20 2f75 up root -perm /u │ │ │ +0014ba80: 2b78 732c 672b 7877 7273 2c6f 2b78 7772 +xs,g+xwrs,o+xwr │ │ │ +0014ba90: 740a 2020 7265 6769 7374 6572 3a20 726f t. register: ro │ │ │ +0014baa0: 6f74 5f6f 776e 6564 5f6b 6579 730a 2020 ot_owned_keys. │ │ │ +0014bab0: 6368 616e 6765 645f 7768 656e 3a20 6661 changed_when: fa │ │ │ +0014bac0: 6c73 650a 2020 6661 696c 6564 5f77 6865 lse. failed_whe │ │ │ +0014bad0: 6e3a 2066 616c 7365 0a20 2063 6865 636b n: false. check │ │ │ +0014bae0: 5f6d 6f64 653a 2066 616c 7365 0a20 2077 _mode: false. w │ │ │ +0014baf0: 6865 6e3a 2027 226b 6572 6e65 6c22 2069 hen: '"kernel" i │ │ │ +0014bb00: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ +0014bb10: 7061 636b 6167 6573 270a 2020 7461 6773 packages'. tags │ │ │ +0014bb20: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d31 :. - NIST-800-1 │ │ │ +0014bb30: 3731 2d33 2e31 2e31 330a 2020 2d20 4e49 71-3.1.13. - NI │ │ │ +0014bb40: 5354 2d38 3030 2d31 3731 2d33 2e31 332e ST-800-171-3.13. │ │ │ +0014bb50: 3130 0a20 202d 204e 4953 542d 3830 302d 10. - NIST-800- │ │ │ +0014bb60: 3533 2d41 432d 3137 2861 290a 2020 2d20 53-AC-17(a). - │ │ │ +0014bb70: 4e49 5354 2d38 3030 2d35 332d 4143 2d36 NIST-800-53-AC-6 │ │ │ +0014bb80: 2831 290a 2020 2d20 4e49 5354 2d38 3030 (1). - NIST-800 │ │ │ +0014bb90: 2d35 332d 434d 2d36 2861 290a 2020 2d20 -53-CM-6(a). - │ │ │ +0014bba0: 5043 492d 4453 532d 5265 712d 322e 322e PCI-DSS-Req-2.2. │ │ │ +0014bbb0: 340a 2020 2d20 5043 492d 4453 5376 342d 4. - PCI-DSSv4- │ │ │ +0014bbc0: 322e 320a 2020 2d20 5043 492d 4453 5376 2.2. - PCI-DSSv │ │ │ +0014bbd0: 342d 322e 322e 360a 2020 2d20 636f 6e66 4-2.2.6. - conf │ │ │ +0014bbe0: 6967 7572 655f 7374 7261 7465 6779 0a20 igure_strategy. │ │ │ +0014bbf0: 202d 2066 696c 655f 7065 726d 6973 7369 - file_permissi │ │ │ +0014bc00: 6f6e 735f 7373 6864 5f70 7269 7661 7465 ons_sshd_private │ │ │ +0014bc10: 5f6b 6579 0a20 202d 206c 6f77 5f63 6f6d _key. - low_com │ │ │ +0014bc20: 706c 6578 6974 790a 2020 2d20 6c6f 775f plexity. - low_ │ │ │ +0014bc30: 6469 7372 7570 7469 6f6e 0a20 202d 206d disruption. - m │ │ │ +0014bc40: 6564 6975 6d5f 7365 7665 7269 7479 0a20 edium_severity. │ │ │ +0014bc50: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565 - no_reboot_nee │ │ │ +0014bc60: 6465 640a 0a2d 206e 616d 653a 2053 6574 ded..- name: Set │ │ │ +0014bc70: 2070 6572 6d69 7373 696f 6e73 2066 6f72 permissions for │ │ │ +0014bc80: 2072 6f6f 743a 726f 6f74 2d6f 776e 6564 root:root-owned │ │ │ +0014bc90: 206b 6579 730a 2020 616e 7369 626c 652e keys. ansible. │ │ │ +0014bca0: 6275 696c 7469 6e2e 6669 6c65 3a0a 2020 builtin.file:. │ │ │ +0014bcb0: 2020 7061 7468 3a20 277b 7b20 6974 656d path: '{{ item │ │ │ +0014bcc0: 207d 7d27 0a20 2020 206d 6f64 653a 2075 }}'. mode: u │ │ │ +0014bcd0: 2d78 732c 672d 7877 7273 2c6f 2d78 7772 -xs,g-xwrs,o-xwr │ │ │ +0014bce0: 740a 2020 2020 7374 6174 653a 2066 696c t. state: fil │ │ │ +0014bcf0: 650a 2020 7769 7468 5f69 7465 6d73 3a0a e. with_items:. │ │ │ +0014bd00: 2020 2d20 277b 7b20 726f 6f74 5f6f 776e - '{{ root_own │ │ │ +0014bd10: 6564 5f6b 6579 732e 7374 646f 7574 5f6c ed_keys.stdout_l │ │ │ +0014bd20: 696e 6573 207d 7d27 0a20 2077 6865 6e3a ines }}'. when: │ │ │ +0014bd30: 2027 226b 6572 6e65 6c22 2069 6e20 616e '"kernel" in an │ │ │ +0014bd40: 7369 626c 655f 6661 6374 732e 7061 636b sible_facts.pack │ │ │ +0014bd50: 6167 6573 270a 2020 7461 6773 3a0a 2020 ages'. tags:. │ │ │ +0014bd60: 2d20 4e49 5354 2d38 3030 2d31 3731 2d33 - NIST-800-171-3 │ │ │ +0014bd70: 2e31 2e31 330a 2020 2d20 4e49 5354 2d38 .1.13. - NIST-8 │ │ │ +0014bd80: 3030 2d31 3731 2d33 2e31 332e 3130 0a20 00-171-3.13.10. │ │ │ +0014bd90: 202d 204e 4953 542d 3830 302d 3533 2d41 - NIST-800-53-A │ │ │ +0014bda0: 432d 3137 2861 290a 2020 2d20 4e49 5354 C-17(a). - NIST │ │ │ +0014bdb0: 2d38 3030 2d35 332d 4143 2d36 2831 290a -800-53-AC-6(1). │ │ │ +0014bdc0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d - NIST-800-53- │ │ │ +0014bdd0: 434d 2d36 2861 290a 2020 2d20 5043 492d CM-6(a). - PCI- │ │ │ +0014bde0: 4453 532d 5265 712d 322e 322e 340a 2020 DSS-Req-2.2.4. │ │ │ +0014bdf0: 2d20 5043 492d 4453 5376 342d 322e 320a - PCI-DSSv4-2.2. │ │ │ +0014be00: 2020 2d20 5043 492d 4453 5376 342d 322e - PCI-DSSv4-2. │ │ │ +0014be10: 322e 360a 2020 2d20 636f 6e66 6967 7572 2.6. - configur │ │ │ +0014be20: 655f 7374 7261 7465 6779 0a20 202d 2066 e_strategy. - f │ │ │ +0014be30: 696c 655f 7065 726d 6973 7369 6f6e 735f ile_permissions_ │ │ │ +0014be40: 7373 6864 5f70 7269 7661 7465 5f6b 6579 sshd_private_key │ │ │ +0014be50: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578 . - low_complex │ │ │ +0014be60: 6974 790a 2020 2d20 6c6f 775f 6469 7372 ity. - low_disr │ │ │ +0014be70: 7570 7469 6f6e 0a20 202d 206d 6564 6975 uption. - mediu │ │ │ +0014be80: 6d5f 7365 7665 7269 7479 0a20 202d 206e m_severity. - n │ │ │ +0014be90: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a o_reboot_needed. │ │ │ +0014bea0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64 │ │ │ +0014bf50: 5265 6d65 6469 6174 696f 6e20 5075 7070 Remediation Pupp │ │ │ +0014bf60: 6574 2073 6e69 7070 6574 20e2 87b2 3c2f et snippet ...
...include ssh_
│ │ │ +0014bfc0: 7072 6976 6174 655f 6b65 795f 7065 726d  private_key_perm
│ │ │ +0014bfd0: 730a 0a63 6c61 7373 2073 7368 5f70 7269  s..class ssh_pri
│ │ │ +0014bfe0: 7661 7465 5f6b 6579 5f70 6572 6d73 207b  vate_key_perms {
│ │ │ +0014bff0: 0a20 2065 7865 6320 7b20 2773 7368 645f  .  exec { 'sshd_
│ │ │ +0014c000: 7072 6976 5f6b 6579 273a 0a20 2020 2063  priv_key':.    c
│ │ │ +0014c010: 6f6d 6d61 6e64 203d 2667 743b 2022 6368  ommand => "ch
│ │ │ +0014c020: 6d6f 6420 3036 3030 202f 6574 632f 7373  mod 0600 /etc/ss
│ │ │ +0014c030: 682f 2a5f 6b65 7922 2c0a 2020 2020 7061  h/*_key",.    pa
│ │ │ +0014c040: 7468 2020 2020 3d26 6774 3b20 272f 6269  th    => '/bi
│ │ │ +0014c050: 6e3a 2f75 7372 2f62 696e 270a 2020 7d0a  n:/usr/bin'.  }.
│ │ │ +0014c060: 7d0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  }.
< │ │ │ 0014c070: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>
│ │ │ -0014d400: 5265 6d65 6469 6174 696f 6e20 5075 7070 Remediation Pupp │ │ │ -0014d410: 6574 2073 6e69 7070 6574 20e2 87b2 3c2f et snippet ...
include ssh_pub
│ │ │ -0014d470: 6c69 635f 6b65 795f 7065 726d 730a 0a63  lic_key_perms..c
│ │ │ -0014d480: 6c61 7373 2073 7368 5f70 7562 6c69 635f  lass ssh_public_
│ │ │ -0014d490: 6b65 795f 7065 726d 7320 7b0a 2020 6578  key_perms {.  ex
│ │ │ -0014d4a0: 6563 207b 2027 7373 6864 5f70 7562 5f6b  ec { 'sshd_pub_k
│ │ │ -0014d4b0: 6579 273a 0a20 2020 2063 6f6d 6d61 6e64  ey':.    command
│ │ │ -0014d4c0: 203d 2667 743b 2022 6368 6d6f 6420 3036   => "chmod 06
│ │ │ -0014d4d0: 3434 202f 6574 632f 7373 682f 2a2e 7075  44 /etc/ssh/*.pu
│ │ │ -0014d4e0: 6222 2c0a 2020 2020 7061 7468 2020 2020  b",.    path    
│ │ │ -0014d4f0: 3d26 6774 3b20 272f 6269 6e3a 2f75 7372  => '/bin:/usr
│ │ │ -0014d500: 2f62 696e 270a 2020 7d0a 7d0a 3c2f 636f  /bin'.  }.}.
< │ │ │ -0014d520: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ -0014d530: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ -0014d540: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ -0014d550: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ -0014d560: 6434 3039 2220 7461 6269 6e64 6578 3d22 d409" tabindex=" │ │ │ -0014d570: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ -0014d580: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ -0014d590: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ -0014d5a0: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ -0014d5b0: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ -0014d5c0: 6469 6174 696f 6e20 416e 7369 626c 6520 diation Ansible │ │ │ -0014d5d0: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...
< │ │ │ -0014d5e0: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
- 
│ │ │ -0014d710: 6e61 6d65 3a20 4761 7468 6572 2074 6865  name: Gather the
│ │ │ -0014d720: 2070 6163 6b61 6765 2066 6163 7473 0a20   package facts. 
│ │ │ -0014d730: 2070 6163 6b61 6765 5f66 6163 7473 3a0a   package_facts:.
│ │ │ -0014d740: 2020 2020 6d61 6e61 6765 723a 2061 7574      manager: aut
│ │ │ -0014d750: 6f0a 2020 7461 6773 3a0a 2020 2d20 4e49  o.  tags:.  - NI
│ │ │ -0014d760: 5354 2d38 3030 2d31 3731 2d33 2e31 2e31  ST-800-171-3.1.1
│ │ │ -0014d770: 330a 2020 2d20 4e49 5354 2d38 3030 2d31  3.  - NIST-800-1
│ │ │ -0014d780: 3731 2d33 2e31 332e 3130 0a20 202d 204e  71-3.13.10.  - N
│ │ │ -0014d790: 4953 542d 3830 302d 3533 2d41 432d 3137  IST-800-53-AC-17
│ │ │ -0014d7a0: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ -0014d7b0: 2d35 332d 4143 2d36 2831 290a 2020 2d20  -53-AC-6(1).  - 
│ │ │ -0014d7c0: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ -0014d7d0: 2861 290a 2020 2d20 5043 492d 4453 532d  (a).  - PCI-DSS-
│ │ │ -0014d7e0: 5265 712d 322e 322e 340a 2020 2d20 5043  Req-2.2.4.  - PC
│ │ │ -0014d7f0: 492d 4453 5376 342d 322e 320a 2020 2d20  I-DSSv4-2.2.  - 
│ │ │ -0014d800: 5043 492d 4453 5376 342d 322e 322e 360a  PCI-DSSv4-2.2.6.
│ │ │ -0014d810: 2020 2d20 636f 6e66 6967 7572 655f 7374    - configure_st
│ │ │ -0014d820: 7261 7465 6779 0a20 202d 2066 696c 655f  rategy.  - file_
│ │ │ -0014d830: 7065 726d 6973 7369 6f6e 735f 7373 6864  permissions_sshd
│ │ │ -0014d840: 5f70 7562 5f6b 6579 0a20 202d 206c 6f77  _pub_key.  - low
│ │ │ -0014d850: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ -0014d860: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ -0014d870: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ -0014d880: 7479 0a20 202d 206e 6f5f 7265 626f 6f74  ty.  - no_reboot
│ │ │ -0014d890: 5f6e 6565 6465 640a 0a2d 206e 616d 653a  _needed..- name:
│ │ │ -0014d8a0: 2046 696e 6420 2f65 7463 2f73 7368 2f20   Find /etc/ssh/ 
│ │ │ -0014d8b0: 6669 6c65 2873 290a 2020 616e 7369 626c  file(s).  ansibl
│ │ │ -0014d8c0: 652e 6275 696c 7469 6e2e 636f 6d6d 616e  e.builtin.comman
│ │ │ -0014d8d0: 643a 2066 696e 6420 2d50 202f 6574 632f  d: find -P /etc/
│ │ │ -0014d8e0: 7373 682f 202d 6d61 7864 6570 7468 2031  ssh/ -maxdepth 1
│ │ │ -0014d8f0: 202d 7065 726d 202f 752b 7873 2c67 2b78   -perm /u+xs,g+x
│ │ │ -0014d900: 7773 2c6f 2b78 7774 2020 2d74 7970 650a  ws,o+xwt  -type.
│ │ │ -0014d910: 2020 2020 6620 2d72 6567 6578 7479 7065      f -regextype
│ │ │ -0014d920: 2070 6f73 6978 2d65 7874 656e 6465 6420   posix-extended 
│ │ │ -0014d930: 2d72 6567 6578 2022 5e2e 2a5c 2e70 7562  -regex "^.*\.pub
│ │ │ -0014d940: 2422 0a20 2072 6567 6973 7465 723a 2066  $".  register: f
│ │ │ -0014d950: 696c 6573 5f66 6f75 6e64 0a20 2063 6861  iles_found.  cha
│ │ │ -0014d960: 6e67 6564 5f77 6865 6e3a 2066 616c 7365  nged_when: false
│ │ │ -0014d970: 0a20 2066 6169 6c65 645f 7768 656e 3a20  .  failed_when: 
│ │ │ -0014d980: 6661 6c73 650a 2020 6368 6563 6b5f 6d6f  false.  check_mo
│ │ │ -0014d990: 6465 3a20 6661 6c73 650a 2020 7768 656e  de: false.  when
│ │ │ -0014d9a0: 3a20 2722 6b65 726e 656c 2220 696e 2061  : '"kernel" in a
│ │ │ -0014d9b0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -0014d9c0: 6b61 6765 7327 0a20 2074 6167 733a 0a20  kages'.  tags:. 
│ │ │ -0014d9d0: 202d 204e 4953 542d 3830 302d 3137 312d   - NIST-800-171-
│ │ │ -0014d9e0: 332e 312e 3133 0a20 202d 204e 4953 542d  3.1.13.  - NIST-
│ │ │ -0014d9f0: 3830 302d 3137 312d 332e 3133 2e31 300a  800-171-3.13.10.
│ │ │ -0014da00: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -0014da10: 4143 2d31 3728 6129 0a20 202d 204e 4953  AC-17(a).  - NIS
│ │ │ -0014da20: 542d 3830 302d 3533 2d41 432d 3628 3129  T-800-53-AC-6(1)
│ │ │ -0014da30: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -0014da40: 2d43 4d2d 3628 6129 0a20 202d 2050 4349  -CM-6(a).  - PCI
│ │ │ -0014da50: 2d44 5353 2d52 6571 2d32 2e32 2e34 0a20  -DSS-Req-2.2.4. 
│ │ │ -0014da60: 202d 2050 4349 2d44 5353 7634 2d32 2e32   - PCI-DSSv4-2.2
│ │ │ -0014da70: 0a20 202d 2050 4349 2d44 5353 7634 2d32  .  - PCI-DSSv4-2
│ │ │ -0014da80: 2e32 2e36 0a20 202d 2063 6f6e 6669 6775  .2.6.  - configu
│ │ │ -0014da90: 7265 5f73 7472 6174 6567 790a 2020 2d20  re_strategy.  - 
│ │ │ -0014daa0: 6669 6c65 5f70 6572 6d69 7373 696f 6e73  file_permissions
│ │ │ -0014dab0: 5f73 7368 645f 7075 625f 6b65 790a 2020  _sshd_pub_key.  
│ │ │ -0014dac0: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ -0014dad0: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ -0014dae0: 696f 6e0a 2020 2d20 6d65 6469 756d 5f73  ion.  - medium_s
│ │ │ -0014daf0: 6576 6572 6974 790a 2020 2d20 6e6f 5f72  everity.  - no_r
│ │ │ -0014db00: 6562 6f6f 745f 6e65 6564 6564 0a0a 2d20  eboot_needed..- 
│ │ │ -0014db10: 6e61 6d65 3a20 5365 7420 7065 726d 6973  name: Set permis
│ │ │ -0014db20: 7369 6f6e 7320 666f 7220 2f65 7463 2f73  sions for /etc/s
│ │ │ -0014db30: 7368 2f20 6669 6c65 2873 290a 2020 616e  sh/ file(s).  an
│ │ │ -0014db40: 7369 626c 652e 6275 696c 7469 6e2e 6669  sible.builtin.fi
│ │ │ -0014db50: 6c65 3a0a 2020 2020 7061 7468 3a20 277b  le:.    path: '{
│ │ │ -0014db60: 7b20 6974 656d 207d 7d27 0a20 2020 206d  { item }}'.    m
│ │ │ -0014db70: 6f64 653a 2075 2d78 732c 672d 7877 732c  ode: u-xs,g-xws,
│ │ │ -0014db80: 6f2d 7877 740a 2020 2020 7374 6174 653a  o-xwt.    state:
│ │ │ -0014db90: 2066 696c 650a 2020 7769 7468 5f69 7465   file.  with_ite
│ │ │ -0014dba0: 6d73 3a0a 2020 2d20 277b 7b20 6669 6c65  ms:.  - '{{ file
│ │ │ -0014dbb0: 735f 666f 756e 642e 7374 646f 7574 5f6c  s_found.stdout_l
│ │ │ -0014dbc0: 696e 6573 207d 7d27 0a20 2077 6865 6e3a  ines }}'.  when:
│ │ │ -0014dbd0: 2027 226b 6572 6e65 6c22 2069 6e20 616e   '"kernel" in an
│ │ │ -0014dbe0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -0014dbf0: 6167 6573 270a 2020 7461 6773 3a0a 2020  ages'.  tags:.  
│ │ │ -0014dc00: 2d20 4e49 5354 2d38 3030 2d31 3731 2d33  - NIST-800-171-3
│ │ │ -0014dc10: 2e31 2e31 330a 2020 2d20 4e49 5354 2d38  .1.13.  - NIST-8
│ │ │ -0014dc20: 3030 2d31 3731 2d33 2e31 332e 3130 0a20  00-171-3.13.10. 
│ │ │ -0014dc30: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ -0014dc40: 432d 3137 2861 290a 2020 2d20 4e49 5354  C-17(a).  - NIST
│ │ │ -0014dc50: 2d38 3030 2d35 332d 4143 2d36 2831 290a  -800-53-AC-6(1).
│ │ │ -0014dc60: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -0014dc70: 434d 2d36 2861 290a 2020 2d20 5043 492d  CM-6(a).  - PCI-
│ │ │ -0014dc80: 4453 532d 5265 712d 322e 322e 340a 2020  DSS-Req-2.2.4.  
│ │ │ -0014dc90: 2d20 5043 492d 4453 5376 342d 322e 320a  - PCI-DSSv4-2.2.
│ │ │ -0014dca0: 2020 2d20 5043 492d 4453 5376 342d 322e    - PCI-DSSv4-2.
│ │ │ -0014dcb0: 322e 360a 2020 2d20 636f 6e66 6967 7572  2.6.  - configur
│ │ │ -0014dcc0: 655f 7374 7261 7465 6779 0a20 202d 2066  e_strategy.  - f
│ │ │ -0014dcd0: 696c 655f 7065 726d 6973 7369 6f6e 735f  ile_permissions_
│ │ │ -0014dce0: 7373 6864 5f70 7562 5f6b 6579 0a20 202d  sshd_pub_key.  -
│ │ │ -0014dcf0: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ -0014dd00: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ -0014dd10: 6f6e 0a20 202d 206d 6564 6975 6d5f 7365  on.  - medium_se
│ │ │ -0014dd20: 7665 7269 7479 0a20 202d 206e 6f5f 7265  verity.  - no_re
│ │ │ -0014dd30: 626f 6f74 5f6e 6565 6465 640a 3c2f 636f  boot_needed.
Com │ │ │ -0014d660: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ -0014d690: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ -0014d6b0: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -0014d6c0: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -0014d6e0: 2f74 683e 3c74 643e 636f 6e66 6967 7572 /th>configur │ │ │ -0014d6f0: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
< │ │ │ +0014d4f0: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +0014d500: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false< │ │ │ +0014d540: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
- name: Gather
│ │ │ +0014d560: 2074 6865 2070 6163 6b61 6765 2066 6163   the package fac
│ │ │ +0014d570: 7473 0a20 2070 6163 6b61 6765 5f66 6163  ts.  package_fac
│ │ │ +0014d580: 7473 3a0a 2020 2020 6d61 6e61 6765 723a  ts:.    manager:
│ │ │ +0014d590: 2061 7574 6f0a 2020 7461 6773 3a0a 2020   auto.  tags:.  
│ │ │ +0014d5a0: 2d20 4e49 5354 2d38 3030 2d31 3731 2d33  - NIST-800-171-3
│ │ │ +0014d5b0: 2e31 2e31 330a 2020 2d20 4e49 5354 2d38  .1.13.  - NIST-8
│ │ │ +0014d5c0: 3030 2d31 3731 2d33 2e31 332e 3130 0a20  00-171-3.13.10. 
│ │ │ +0014d5d0: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ +0014d5e0: 432d 3137 2861 290a 2020 2d20 4e49 5354  C-17(a).  - NIST
│ │ │ +0014d5f0: 2d38 3030 2d35 332d 4143 2d36 2831 290a  -800-53-AC-6(1).
│ │ │ +0014d600: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +0014d610: 434d 2d36 2861 290a 2020 2d20 5043 492d  CM-6(a).  - PCI-
│ │ │ +0014d620: 4453 532d 5265 712d 322e 322e 340a 2020  DSS-Req-2.2.4.  
│ │ │ +0014d630: 2d20 5043 492d 4453 5376 342d 322e 320a  - PCI-DSSv4-2.2.
│ │ │ +0014d640: 2020 2d20 5043 492d 4453 5376 342d 322e    - PCI-DSSv4-2.
│ │ │ +0014d650: 322e 360a 2020 2d20 636f 6e66 6967 7572  2.6.  - configur
│ │ │ +0014d660: 655f 7374 7261 7465 6779 0a20 202d 2066  e_strategy.  - f
│ │ │ +0014d670: 696c 655f 7065 726d 6973 7369 6f6e 735f  ile_permissions_
│ │ │ +0014d680: 7373 6864 5f70 7562 5f6b 6579 0a20 202d  sshd_pub_key.  -
│ │ │ +0014d690: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ +0014d6a0: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ +0014d6b0: 6f6e 0a20 202d 206d 6564 6975 6d5f 7365  on.  - medium_se
│ │ │ +0014d6c0: 7665 7269 7479 0a20 202d 206e 6f5f 7265  verity.  - no_re
│ │ │ +0014d6d0: 626f 6f74 5f6e 6565 6465 640a 0a2d 206e  boot_needed..- n
│ │ │ +0014d6e0: 616d 653a 2046 696e 6420 2f65 7463 2f73  ame: Find /etc/s
│ │ │ +0014d6f0: 7368 2f20 6669 6c65 2873 290a 2020 616e  sh/ file(s).  an
│ │ │ +0014d700: 7369 626c 652e 6275 696c 7469 6e2e 636f  sible.builtin.co
│ │ │ +0014d710: 6d6d 616e 643a 2066 696e 6420 2d50 202f  mmand: find -P /
│ │ │ +0014d720: 6574 632f 7373 682f 202d 6d61 7864 6570  etc/ssh/ -maxdep
│ │ │ +0014d730: 7468 2031 202d 7065 726d 202f 752b 7873  th 1 -perm /u+xs
│ │ │ +0014d740: 2c67 2b78 7773 2c6f 2b78 7774 2020 2d74  ,g+xws,o+xwt  -t
│ │ │ +0014d750: 7970 650a 2020 2020 6620 2d72 6567 6578  ype.    f -regex
│ │ │ +0014d760: 7479 7065 2070 6f73 6978 2d65 7874 656e  type posix-exten
│ │ │ +0014d770: 6465 6420 2d72 6567 6578 2022 5e2e 2a5c  ded -regex "^.*\
│ │ │ +0014d780: 2e70 7562 2422 0a20 2072 6567 6973 7465  .pub$".  registe
│ │ │ +0014d790: 723a 2066 696c 6573 5f66 6f75 6e64 0a20  r: files_found. 
│ │ │ +0014d7a0: 2063 6861 6e67 6564 5f77 6865 6e3a 2066   changed_when: f
│ │ │ +0014d7b0: 616c 7365 0a20 2066 6169 6c65 645f 7768  alse.  failed_wh
│ │ │ +0014d7c0: 656e 3a20 6661 6c73 650a 2020 6368 6563  en: false.  chec
│ │ │ +0014d7d0: 6b5f 6d6f 6465 3a20 6661 6c73 650a 2020  k_mode: false.  
│ │ │ +0014d7e0: 7768 656e 3a20 2722 6b65 726e 656c 2220  when: '"kernel" 
│ │ │ +0014d7f0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +0014d800: 2e70 6163 6b61 6765 7327 0a20 2074 6167  .packages'.  tag
│ │ │ +0014d810: 733a 0a20 202d 204e 4953 542d 3830 302d  s:.  - NIST-800-
│ │ │ +0014d820: 3137 312d 332e 312e 3133 0a20 202d 204e  171-3.1.13.  - N
│ │ │ +0014d830: 4953 542d 3830 302d 3137 312d 332e 3133  IST-800-171-3.13
│ │ │ +0014d840: 2e31 300a 2020 2d20 4e49 5354 2d38 3030  .10.  - NIST-800
│ │ │ +0014d850: 2d35 332d 4143 2d31 3728 6129 0a20 202d  -53-AC-17(a).  -
│ │ │ +0014d860: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ +0014d870: 3628 3129 0a20 202d 204e 4953 542d 3830  6(1).  - NIST-80
│ │ │ +0014d880: 302d 3533 2d43 4d2d 3628 6129 0a20 202d  0-53-CM-6(a).  -
│ │ │ +0014d890: 2050 4349 2d44 5353 2d52 6571 2d32 2e32   PCI-DSS-Req-2.2
│ │ │ +0014d8a0: 2e34 0a20 202d 2050 4349 2d44 5353 7634  .4.  - PCI-DSSv4
│ │ │ +0014d8b0: 2d32 2e32 0a20 202d 2050 4349 2d44 5353  -2.2.  - PCI-DSS
│ │ │ +0014d8c0: 7634 2d32 2e32 2e36 0a20 202d 2063 6f6e  v4-2.2.6.  - con
│ │ │ +0014d8d0: 6669 6775 7265 5f73 7472 6174 6567 790a  figure_strategy.
│ │ │ +0014d8e0: 2020 2d20 6669 6c65 5f70 6572 6d69 7373    - file_permiss
│ │ │ +0014d8f0: 696f 6e73 5f73 7368 645f 7075 625f 6b65  ions_sshd_pub_ke
│ │ │ +0014d900: 790a 2020 2d20 6c6f 775f 636f 6d70 6c65  y.  - low_comple
│ │ │ +0014d910: 7869 7479 0a20 202d 206c 6f77 5f64 6973  xity.  - low_dis
│ │ │ +0014d920: 7275 7074 696f 6e0a 2020 2d20 6d65 6469  ruption.  - medi
│ │ │ +0014d930: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ +0014d940: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ +0014d950: 0a0a 2d20 6e61 6d65 3a20 5365 7420 7065  ..- name: Set pe
│ │ │ +0014d960: 726d 6973 7369 6f6e 7320 666f 7220 2f65  rmissions for /e
│ │ │ +0014d970: 7463 2f73 7368 2f20 6669 6c65 2873 290a  tc/ssh/ file(s).
│ │ │ +0014d980: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ +0014d990: 6e2e 6669 6c65 3a0a 2020 2020 7061 7468  n.file:.    path
│ │ │ +0014d9a0: 3a20 277b 7b20 6974 656d 207d 7d27 0a20  : '{{ item }}'. 
│ │ │ +0014d9b0: 2020 206d 6f64 653a 2075 2d78 732c 672d     mode: u-xs,g-
│ │ │ +0014d9c0: 7877 732c 6f2d 7877 740a 2020 2020 7374  xws,o-xwt.    st
│ │ │ +0014d9d0: 6174 653a 2066 696c 650a 2020 7769 7468  ate: file.  with
│ │ │ +0014d9e0: 5f69 7465 6d73 3a0a 2020 2d20 277b 7b20  _items:.  - '{{ 
│ │ │ +0014d9f0: 6669 6c65 735f 666f 756e 642e 7374 646f  files_found.stdo
│ │ │ +0014da00: 7574 5f6c 696e 6573 207d 7d27 0a20 2077  ut_lines }}'.  w
│ │ │ +0014da10: 6865 6e3a 2027 226b 6572 6e65 6c22 2069  hen: '"kernel" i
│ │ │ +0014da20: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +0014da30: 7061 636b 6167 6573 270a 2020 7461 6773  packages'.  tags
│ │ │ +0014da40: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d31  :.  - NIST-800-1
│ │ │ +0014da50: 3731 2d33 2e31 2e31 330a 2020 2d20 4e49  71-3.1.13.  - NI
│ │ │ +0014da60: 5354 2d38 3030 2d31 3731 2d33 2e31 332e  ST-800-171-3.13.
│ │ │ +0014da70: 3130 0a20 202d 204e 4953 542d 3830 302d  10.  - NIST-800-
│ │ │ +0014da80: 3533 2d41 432d 3137 2861 290a 2020 2d20  53-AC-17(a).  - 
│ │ │ +0014da90: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ +0014daa0: 2831 290a 2020 2d20 4e49 5354 2d38 3030  (1).  - NIST-800
│ │ │ +0014dab0: 2d35 332d 434d 2d36 2861 290a 2020 2d20  -53-CM-6(a).  - 
│ │ │ +0014dac0: 5043 492d 4453 532d 5265 712d 322e 322e  PCI-DSS-Req-2.2.
│ │ │ +0014dad0: 340a 2020 2d20 5043 492d 4453 5376 342d  4.  - PCI-DSSv4-
│ │ │ +0014dae0: 322e 320a 2020 2d20 5043 492d 4453 5376  2.2.  - PCI-DSSv
│ │ │ +0014daf0: 342d 322e 322e 360a 2020 2d20 636f 6e66  4-2.2.6.  - conf
│ │ │ +0014db00: 6967 7572 655f 7374 7261 7465 6779 0a20  igure_strategy. 
│ │ │ +0014db10: 202d 2066 696c 655f 7065 726d 6973 7369   - file_permissi
│ │ │ +0014db20: 6f6e 735f 7373 6864 5f70 7562 5f6b 6579  ons_sshd_pub_key
│ │ │ +0014db30: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ +0014db40: 6974 790a 2020 2d20 6c6f 775f 6469 7372  ity.  - low_disr
│ │ │ +0014db50: 7570 7469 6f6e 0a20 202d 206d 6564 6975  uption.  - mediu
│ │ │ +0014db60: 6d5f 7365 7665 7269 7479 0a20 202d 206e  m_severity.  - n
│ │ │ +0014db70: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ +0014db80: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ +0014dc30: 5265 6d65 6469 6174 696f 6e20 5075 7070 Remediation Pupp │ │ │ +0014dc40: 6574 2073 6e69 7070 6574 20e2 87b2 3c2f et snippet ...
include ssh_pub
│ │ │ +0014dca0: 6c69 635f 6b65 795f 7065 726d 730a 0a63  lic_key_perms..c
│ │ │ +0014dcb0: 6c61 7373 2073 7368 5f70 7562 6c69 635f  lass ssh_public_
│ │ │ +0014dcc0: 6b65 795f 7065 726d 7320 7b0a 2020 6578  key_perms {.  ex
│ │ │ +0014dcd0: 6563 207b 2027 7373 6864 5f70 7562 5f6b  ec { 'sshd_pub_k
│ │ │ +0014dce0: 6579 273a 0a20 2020 2063 6f6d 6d61 6e64  ey':.    command
│ │ │ +0014dcf0: 203d 2667 743b 2022 6368 6d6f 6420 3036   => "chmod 06
│ │ │ +0014dd00: 3434 202f 6574 632f 7373 682f 2a2e 7075  44 /etc/ssh/*.pu
│ │ │ +0014dd10: 6222 2c0a 2020 2020 7061 7468 2020 2020  b",.    path    
│ │ │ +0014dd20: 3d26 6774 3b20 272f 6269 6e3a 2f75 7372  => '/bin:/usr
│ │ │ +0014dd30: 2f62 696e 270a 2020 7d0a 7d0a 3c2f 636f  /bin'.  }.}.
< │ │ │ 0014dd50: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ 0014dd60: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ 0014dd70: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ 0014dd80: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ 0014dd90: 6434 3130 2220 7461 6269 6e64 6578 3d22 d410" tabindex=" │ │ │ 0014dda0: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ @@ -118485,152 +118485,152 @@ │ │ │ 001ced40: 2d74 6172 6765 743d 2223 6964 3439 3122 -target="#id491" │ │ │ 001ced50: 2074 6162 696e 6465 783d 2230 2220 726f tabindex="0" ro │ │ │ 001ced60: 6c65 3d22 6275 7474 6f6e 2220 6172 6961 le="button" aria │ │ │ 001ced70: 2d65 7870 616e 6465 643d 2266 616c 7365 -expanded="false │ │ │ 001ced80: 2220 7469 746c 653d 2241 6374 6976 6174 " title="Activat │ │ │ 001ced90: 6520 746f 2072 6576 6561 6c22 2068 7265 e to reveal" hre │ │ │ 001ceda0: 663d 2223 2122 3e52 656d 6564 6961 7469 f="#!">Remediati │ │ │ -001cedb0: 6f6e 204f 5342 7569 6c64 2042 6c75 6570 on OSBuild Bluep │ │ │ -001cedc0: 7269 6e74 2073 6e69 7070 6574 20e2 87b2 rint snippet ... │ │ │ -001cedd0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61

.[[packages]]
│ │ │ -001cee20: 0a6e 616d 6520 3d20 2261 7564 6974 220a  .name = "audit".
│ │ │ -001cee30: 7665 7273 696f 6e20 3d20 222a 220a 3c2f  version = "*".
Re │ │ │ -001ceef0: 6d65 6469 6174 696f 6e20 5075 7070 6574 mediation Puppet │ │ │ -001cef00: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -001cef10: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
Complexity:low
Disrup │ │ │ +0014d4d0: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ +0014d4e0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ +0014d520: 6779 3a3c 2f74 683e 3c74 643e 636f 6e66 gy:conf │ │ │ +0014d530: 6967 7572 653c 2f74 643e 3c2f 7472 3e3c igure
low< │ │ │ -001cefb0: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ -001cf000: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
Co │ │ │ -001cef90: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -001cefc0: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ -001cefe0: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ -001ceff0: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ -001cf010: 3c2f 7468 3e3c 7464 3e65 6e61 626c 653c enable< │ │ │ -001cf020: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
incl
│ │ │ -001cf040: 7564 6520 696e 7374 616c 6c5f 6175 6469  ude install_audi
│ │ │ -001cf050: 740a 0a63 6c61 7373 2069 6e73 7461 6c6c  t..class install
│ │ │ -001cf060: 5f61 7564 6974 207b 0a20 2070 6163 6b61  _audit {.  packa
│ │ │ -001cf070: 6765 207b 2027 6175 6469 7427 3a0a 2020  ge { 'audit':.  
│ │ │ -001cf080: 2020 656e 7375 7265 203d 2667 743b 2027    ensure => '
│ │ │ -001cf090: 696e 7374 616c 6c65 6427 2c0a 2020 7d0a  installed',.  }.
│ │ │ -001cf0a0: 7d0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  }.
< │ │ │ -001cf0b0: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation An │ │ │ -001cf160: 7369 626c 6520 736e 6970 7065 7420 e287 sible snippet .. │ │ │ -001cf170: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ -001cf1f0: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -001cf210: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -001cf260: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
- name: Gather 
│ │ │ -001cf2b0: 7468 6520 7061 636b 6167 6520 6661 6374  the package fact
│ │ │ -001cf2c0: 730a 2020 7061 636b 6167 655f 6661 6374  s.  package_fact
│ │ │ -001cf2d0: 733a 0a20 2020 206d 616e 6167 6572 3a20  s:.    manager: 
│ │ │ -001cf2e0: 6175 746f 0a20 2074 6167 733a 0a20 202d  auto.  tags:.  -
│ │ │ -001cf2f0: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ -001cf300: 3728 6129 0a20 202d 204e 4953 542d 3830  7(a).  - NIST-80
│ │ │ -001cf310: 302d 3533 2d41 552d 3132 2832 290a 2020  0-53-AU-12(2).  
│ │ │ -001cf320: 2d20 4e49 5354 2d38 3030 2d35 332d 4155  - NIST-800-53-AU
│ │ │ -001cf330: 2d31 340a 2020 2d20 4e49 5354 2d38 3030  -14.  - NIST-800
│ │ │ -001cf340: 2d35 332d 4155 2d32 2861 290a 2020 2d20  -53-AU-2(a).  - 
│ │ │ -001cf350: 4e49 5354 2d38 3030 2d35 332d 4155 2d37  NIST-800-53-AU-7
│ │ │ -001cf360: 2831 290a 2020 2d20 4e49 5354 2d38 3030  (1).  - NIST-800
│ │ │ -001cf370: 2d35 332d 4155 2d37 2832 290a 2020 2d20  -53-AU-7(2).  - 
│ │ │ -001cf380: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ -001cf390: 2861 290a 2020 2d20 5043 492d 4453 532d  (a).  - PCI-DSS-
│ │ │ -001cf3a0: 5265 712d 3130 2e31 0a20 202d 2050 4349  Req-10.1.  - PCI
│ │ │ -001cf3b0: 2d44 5353 7634 2d31 302e 320a 2020 2d20  -DSSv4-10.2.  - 
│ │ │ -001cf3c0: 5043 492d 4453 5376 342d 3130 2e32 2e31  PCI-DSSv4-10.2.1
│ │ │ -001cf3d0: 0a20 202d 2065 6e61 626c 655f 7374 7261  .  - enable_stra
│ │ │ -001cf3e0: 7465 6779 0a20 202d 206c 6f77 5f63 6f6d  tegy.  - low_com
│ │ │ -001cf3f0: 706c 6578 6974 790a 2020 2d20 6c6f 775f  plexity.  - low_
│ │ │ -001cf400: 6469 7372 7570 7469 6f6e 0a20 202d 206d  disruption.  - m
│ │ │ -001cf410: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ -001cf420: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ -001cf430: 6465 640a 2020 2d20 7061 636b 6167 655f  ded.  - package_
│ │ │ -001cf440: 6175 6469 745f 696e 7374 616c 6c65 640a  audit_installed.
│ │ │ -001cf450: 0a2d 206e 616d 653a 2045 6e73 7572 6520  .- name: Ensure 
│ │ │ -001cf460: 6175 6469 7420 6973 2069 6e73 7461 6c6c  audit is install
│ │ │ -001cf470: 6564 0a20 2061 6e73 6962 6c65 2e62 7569  ed.  ansible.bui
│ │ │ -001cf480: 6c74 696e 2e70 6163 6b61 6765 3a0a 2020  ltin.package:.  
│ │ │ -001cf490: 2020 6e61 6d65 3a20 6175 6469 740a 2020    name: audit.  
│ │ │ -001cf4a0: 2020 7374 6174 653a 2070 7265 7365 6e74    state: present
│ │ │ -001cf4b0: 0a20 2077 6865 6e3a 2027 226b 6572 6e65  .  when: '"kerne
│ │ │ -001cf4c0: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ -001cf4d0: 6374 732e 7061 636b 6167 6573 270a 2020  cts.packages'.  
│ │ │ -001cf4e0: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38  tags:.  - NIST-8
│ │ │ -001cf4f0: 3030 2d35 332d 4143 2d37 2861 290a 2020  00-53-AC-7(a).  
│ │ │ -001cf500: 2d20 4e49 5354 2d38 3030 2d35 332d 4155  - NIST-800-53-AU
│ │ │ -001cf510: 2d31 3228 3229 0a20 202d 204e 4953 542d  -12(2).  - NIST-
│ │ │ -001cf520: 3830 302d 3533 2d41 552d 3134 0a20 202d  800-53-AU-14.  -
│ │ │ -001cf530: 204e 4953 542d 3830 302d 3533 2d41 552d   NIST-800-53-AU-
│ │ │ -001cf540: 3228 6129 0a20 202d 204e 4953 542d 3830  2(a).  - NIST-80
│ │ │ -001cf550: 302d 3533 2d41 552d 3728 3129 0a20 202d  0-53-AU-7(1).  -
│ │ │ -001cf560: 204e 4953 542d 3830 302d 3533 2d41 552d   NIST-800-53-AU-
│ │ │ -001cf570: 3728 3229 0a20 202d 204e 4953 542d 3830  7(2).  - NIST-80
│ │ │ -001cf580: 302d 3533 2d43 4d2d 3628 6129 0a20 202d  0-53-CM-6(a).  -
│ │ │ -001cf590: 2050 4349 2d44 5353 2d52 6571 2d31 302e   PCI-DSS-Req-10.
│ │ │ -001cf5a0: 310a 2020 2d20 5043 492d 4453 5376 342d  1.  - PCI-DSSv4-
│ │ │ -001cf5b0: 3130 2e32 0a20 202d 2050 4349 2d44 5353  10.2.  - PCI-DSS
│ │ │ -001cf5c0: 7634 2d31 302e 322e 310a 2020 2d20 656e  v4-10.2.1.  - en
│ │ │ -001cf5d0: 6162 6c65 5f73 7472 6174 6567 790a 2020  able_strategy.  
│ │ │ -001cf5e0: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ -001cf5f0: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ -001cf600: 696f 6e0a 2020 2d20 6d65 6469 756d 5f73  ion.  - medium_s
│ │ │ -001cf610: 6576 6572 6974 790a 2020 2d20 6e6f 5f72  everity.  - no_r
│ │ │ -001cf620: 6562 6f6f 745f 6e65 6564 6564 0a20 202d  eboot_needed.  -
│ │ │ -001cf630: 2070 6163 6b61 6765 5f61 7564 6974 5f69   package_audit_i
│ │ │ -001cf640: 6e73 7461 6c6c 6564 0a3c 2f63 6f64 653e  nstalled.
│ │ │ +001cedb0: 6f6e 2041 6e73 6962 6c65 2073 6e69 7070  on Ansible snipp
│ │ │ +001cedc0: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64  et ...
│ │ │ +001cee40: 3c74 723e 3c74 683e 436f 6d70 6c65 7869
< │ │ │ +001ceed0: 7464 3e65 6e61 626c 653c 2f74 643e 3c2f td>enable
low
Disr │ │ │ -001cf220: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -001cf230: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ -001cf270: 7465 6779 3a3c 2f74 683e 3c74 643e 656e tegy:en │ │ │ -001cf280: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
Complexi │ │ │ +001cee50: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +001cee60: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Disruption:low
Reboot │ │ │ +001ceea0: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +001ceeb0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Strategy:
│ │ │ +001ceef0: 3c63 6f64 653e 2d20 6e61 6d65 3a20 4761  - name: Ga
│ │ │ +001cef00: 7468 6572 2074 6865 2070 6163 6b61 6765  ther the package
│ │ │ +001cef10: 2066 6163 7473 0a20 2070 6163 6b61 6765   facts.  package
│ │ │ +001cef20: 5f66 6163 7473 3a0a 2020 2020 6d61 6e61  _facts:.    mana
│ │ │ +001cef30: 6765 723a 2061 7574 6f0a 2020 7461 6773  ger: auto.  tags
│ │ │ +001cef40: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ +001cef50: 332d 4143 2d37 2861 290a 2020 2d20 4e49  3-AC-7(a).  - NI
│ │ │ +001cef60: 5354 2d38 3030 2d35 332d 4155 2d31 3228  ST-800-53-AU-12(
│ │ │ +001cef70: 3229 0a20 202d 204e 4953 542d 3830 302d  2).  - NIST-800-
│ │ │ +001cef80: 3533 2d41 552d 3134 0a20 202d 204e 4953  53-AU-14.  - NIS
│ │ │ +001cef90: 542d 3830 302d 3533 2d41 552d 3228 6129  T-800-53-AU-2(a)
│ │ │ +001cefa0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001cefb0: 2d41 552d 3728 3129 0a20 202d 204e 4953  -AU-7(1).  - NIS
│ │ │ +001cefc0: 542d 3830 302d 3533 2d41 552d 3728 3229  T-800-53-AU-7(2)
│ │ │ +001cefd0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001cefe0: 2d43 4d2d 3628 6129 0a20 202d 2050 4349  -CM-6(a).  - PCI
│ │ │ +001ceff0: 2d44 5353 2d52 6571 2d31 302e 310a 2020  -DSS-Req-10.1.  
│ │ │ +001cf000: 2d20 5043 492d 4453 5376 342d 3130 2e32  - PCI-DSSv4-10.2
│ │ │ +001cf010: 0a20 202d 2050 4349 2d44 5353 7634 2d31  .  - PCI-DSSv4-1
│ │ │ +001cf020: 302e 322e 310a 2020 2d20 656e 6162 6c65  0.2.1.  - enable
│ │ │ +001cf030: 5f73 7472 6174 6567 790a 2020 2d20 6c6f  _strategy.  - lo
│ │ │ +001cf040: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ +001cf050: 206c 6f77 5f64 6973 7275 7074 696f 6e0a   low_disruption.
│ │ │ +001cf060: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ +001cf070: 6974 790a 2020 2d20 6e6f 5f72 6562 6f6f  ity.  - no_reboo
│ │ │ +001cf080: 745f 6e65 6564 6564 0a20 202d 2070 6163  t_needed.  - pac
│ │ │ +001cf090: 6b61 6765 5f61 7564 6974 5f69 6e73 7461  kage_audit_insta
│ │ │ +001cf0a0: 6c6c 6564 0a0a 2d20 6e61 6d65 3a20 456e  lled..- name: En
│ │ │ +001cf0b0: 7375 7265 2061 7564 6974 2069 7320 696e  sure audit is in
│ │ │ +001cf0c0: 7374 616c 6c65 640a 2020 616e 7369 626c  stalled.  ansibl
│ │ │ +001cf0d0: 652e 6275 696c 7469 6e2e 7061 636b 6167  e.builtin.packag
│ │ │ +001cf0e0: 653a 0a20 2020 206e 616d 653a 2061 7564  e:.    name: aud
│ │ │ +001cf0f0: 6974 0a20 2020 2073 7461 7465 3a20 7072  it.    state: pr
│ │ │ +001cf100: 6573 656e 740a 2020 7768 656e 3a20 2722  esent.  when: '"
│ │ │ +001cf110: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ +001cf120: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001cf130: 7327 0a20 2074 6167 733a 0a20 202d 204e  s'.  tags:.  - N
│ │ │ +001cf140: 4953 542d 3830 302d 3533 2d41 432d 3728  IST-800-53-AC-7(
│ │ │ +001cf150: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ +001cf160: 3533 2d41 552d 3132 2832 290a 2020 2d20  53-AU-12(2).  - 
│ │ │ +001cf170: 4e49 5354 2d38 3030 2d35 332d 4155 2d31  NIST-800-53-AU-1
│ │ │ +001cf180: 340a 2020 2d20 4e49 5354 2d38 3030 2d35  4.  - NIST-800-5
│ │ │ +001cf190: 332d 4155 2d32 2861 290a 2020 2d20 4e49  3-AU-2(a).  - NI
│ │ │ +001cf1a0: 5354 2d38 3030 2d35 332d 4155 2d37 2831  ST-800-53-AU-7(1
│ │ │ +001cf1b0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001cf1c0: 332d 4155 2d37 2832 290a 2020 2d20 4e49  3-AU-7(2).  - NI
│ │ │ +001cf1d0: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ +001cf1e0: 290a 2020 2d20 5043 492d 4453 532d 5265  ).  - PCI-DSS-Re
│ │ │ +001cf1f0: 712d 3130 2e31 0a20 202d 2050 4349 2d44  q-10.1.  - PCI-D
│ │ │ +001cf200: 5353 7634 2d31 302e 320a 2020 2d20 5043  SSv4-10.2.  - PC
│ │ │ +001cf210: 492d 4453 5376 342d 3130 2e32 2e31 0a20  I-DSSv4-10.2.1. 
│ │ │ +001cf220: 202d 2065 6e61 626c 655f 7374 7261 7465   - enable_strate
│ │ │ +001cf230: 6779 0a20 202d 206c 6f77 5f63 6f6d 706c  gy.  - low_compl
│ │ │ +001cf240: 6578 6974 790a 2020 2d20 6c6f 775f 6469  exity.  - low_di
│ │ │ +001cf250: 7372 7570 7469 6f6e 0a20 202d 206d 6564  sruption.  - med
│ │ │ +001cf260: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ +001cf270: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ +001cf280: 640a 2020 2d20 7061 636b 6167 655f 6175  d.  - package_au
│ │ │ +001cf290: 6469 745f 696e 7374 616c 6c65 640a 3c2f  dit_installed.
Re │ │ │ +001cf350: 6d65 6469 6174 696f 6e20 5075 7070 6574 mediation Puppet │ │ │ +001cf360: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ +001cf370: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ +001cf410: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ +001cf460: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
Co │ │ │ +001cf3f0: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +001cf420: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +001cf440: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +001cf450: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +001cf470: 3c2f 7468 3e3c 7464 3e65 6e61 626c 653c enable< │ │ │ +001cf480: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
incl
│ │ │ +001cf4a0: 7564 6520 696e 7374 616c 6c5f 6175 6469  ude install_audi
│ │ │ +001cf4b0: 740a 0a63 6c61 7373 2069 6e73 7461 6c6c  t..class install
│ │ │ +001cf4c0: 5f61 7564 6974 207b 0a20 2070 6163 6b61  _audit {.  packa
│ │ │ +001cf4d0: 6765 207b 2027 6175 6469 7427 3a0a 2020  ge { 'audit':.  
│ │ │ +001cf4e0: 2020 656e 7375 7265 203d 2667 743b 2027    ensure => '
│ │ │ +001cf4f0: 696e 7374 616c 6c65 6427 2c0a 2020 7d0a  installed',.  }.
│ │ │ +001cf500: 7d0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  }.
< │ │ │ +001cf510: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation OS │ │ │ +001cf5c0: 4275 696c 6420 426c 7565 7072 696e 7420 Build Blueprint │ │ │ +001cf5d0: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ +001cf5e0: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
.[
│ │ │ +001cf620: 5b70 6163 6b61 6765 735d 5d0a 6e61 6d65  [packages]].name
│ │ │ +001cf630: 203d 2022 6175 6469 7422 0a76 6572 7369   = "audit".versi
│ │ │ +001cf640: 6f6e 203d 2022 2a22 0a3c 2f63 6f64 653e  on = "*".
│ │ │  001cf650: 3c2f 7072 653e 3c2f 6469 763e 3c2f 6469  
Remediation OSB │ │ │ -001d0f40: 7569 6c64 2042 6c75 6570 7269 6e74 2073 uild Blueprint s │ │ │ -001d0f50: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
.[c
│ │ │ -001d0fa0: 7573 746f 6d69 7a61 7469 6f6e 732e 7365  ustomizations.se
│ │ │ -001d0fb0: 7276 6963 6573 5d0a 656e 6162 6c65 6420  rvices].enabled 
│ │ │ -001d0fc0: 3d20 5b22 6175 6469 7464 225d 0a3c 2f63  = ["auditd"].
│ │ │ -001d0fe0: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ -001d1080: 6564 6961 7469 6f6e 2050 7570 7065 7420 ediation Puppet │ │ │ -001d1090: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ -001d10a0: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Com │ │ │ -001d1120: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ -001d1150: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ -001d1170: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -001d1180: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -001d11a0: 2f74 683e 3c74 643e 656e 6162 6c65 3c2f /th>enable
│ │ │ -001d11c0: 3c70 7265 3e3c 636f 6465 3e69 6e63 6c75
inclu
│ │ │ -001d11d0: 6465 2065 6e61 626c 655f 6175 6469 7464  de enable_auditd
│ │ │ -001d11e0: 0a0a 636c 6173 7320 656e 6162 6c65 5f61  ..class enable_a
│ │ │ -001d11f0: 7564 6974 6420 7b0a 2020 7365 7276 6963  uditd {.  servic
│ │ │ -001d1200: 6520 7b27 6175 6469 7464 273a 0a20 2020  e {'auditd':.   
│ │ │ -001d1210: 2065 6e61 626c 6520 3d26 6774 3b20 7472   enable => tr
│ │ │ -001d1220: 7565 2c0a 2020 2020 656e 7375 7265 203d  ue,.    ensure =
│ │ │ -001d1230: 2667 743b 2027 7275 6e6e 696e 6727 2c0a  > 'running',.
│ │ │ -001d1240: 2020 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70    }.}.

Remediatio │ │ │ -001d1300: 6e20 416e 7369 626c 6520 736e 6970 7065 n Ansible snippe │ │ │ -001d1310: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ -001d1390: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ -001d13a0: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ -001d13c0: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ -001d13d0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ -001d13f0: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ -001d1410: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:enable
<
│ │ │ -001d1440: 636f 6465 3e2d 206e 616d 653a 2047 6174  code>- name: Gat
│ │ │ -001d1450: 6865 7220 7468 6520 7061 636b 6167 6520  her the package 
│ │ │ -001d1460: 6661 6374 730a 2020 7061 636b 6167 655f  facts.  package_
│ │ │ -001d1470: 6661 6374 733a 0a20 2020 206d 616e 6167  facts:.    manag
│ │ │ -001d1480: 6572 3a20 6175 746f 0a20 2074 6167 733a  er: auto.  tags:
│ │ │ -001d1490: 0a20 202d 2043 4a49 532d 352e 342e 312e  .  - CJIS-5.4.1.
│ │ │ -001d14a0: 310a 2020 2d20 4e49 5354 2d38 3030 2d31  1.  - NIST-800-1
│ │ │ -001d14b0: 3731 2d33 2e33 2e31 0a20 202d 204e 4953  71-3.3.1.  - NIS
│ │ │ -001d14c0: 542d 3830 302d 3137 312d 332e 332e 320a  T-800-171-3.3.2.
│ │ │ -001d14d0: 2020 2d20 4e49 5354 2d38 3030 2d31 3731    - NIST-800-171
│ │ │ -001d14e0: 2d33 2e33 2e36 0a20 202d 204e 4953 542d  -3.3.6.  - NIST-
│ │ │ -001d14f0: 3830 302d 3533 2d41 432d 3228 6729 0a20  800-53-AC-2(g). 
│ │ │ -001d1500: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ -001d1510: 432d 3628 3929 0a20 202d 204e 4953 542d  C-6(9).  - NIST-
│ │ │ -001d1520: 3830 302d 3533 2d41 552d 3130 0a20 202d  800-53-AU-10.  -
│ │ │ -001d1530: 204e 4953 542d 3830 302d 3533 2d41 552d   NIST-800-53-AU-
│ │ │ -001d1540: 3132 2863 290a 2020 2d20 4e49 5354 2d38  12(c).  - NIST-8
│ │ │ -001d1550: 3030 2d35 332d 4155 2d31 3428 3129 0a20  00-53-AU-14(1). 
│ │ │ -001d1560: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ -001d1570: 552d 3228 6429 0a20 202d 204e 4953 542d  U-2(d).  - NIST-
│ │ │ -001d1580: 3830 302d 3533 2d41 552d 330a 2020 2d20  800-53-AU-3.  - 
│ │ │ -001d1590: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ -001d15a0: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ -001d15b0: 2d35 332d 5349 2d34 2832 3329 0a20 202d  -53-SI-4(23).  -
│ │ │ -001d15c0: 2050 4349 2d44 5353 2d52 6571 2d31 302e   PCI-DSS-Req-10.
│ │ │ -001d15d0: 310a 2020 2d20 5043 492d 4453 5376 342d  1.  - PCI-DSSv4-
│ │ │ -001d15e0: 3130 2e32 0a20 202d 2050 4349 2d44 5353  10.2.  - PCI-DSS
│ │ │ -001d15f0: 7634 2d31 302e 322e 310a 2020 2d20 656e  v4-10.2.1.  - en
│ │ │ -001d1600: 6162 6c65 5f73 7472 6174 6567 790a 2020  able_strategy.  
│ │ │ -001d1610: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ -001d1620: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ -001d1630: 696f 6e0a 2020 2d20 6d65 6469 756d 5f73  ion.  - medium_s
│ │ │ -001d1640: 6576 6572 6974 790a 2020 2d20 6e6f 5f72  everity.  - no_r
│ │ │ -001d1650: 6562 6f6f 745f 6e65 6564 6564 0a20 202d  eboot_needed.  -
│ │ │ -001d1660: 2073 6572 7669 6365 5f61 7564 6974 645f   service_auditd_
│ │ │ -001d1670: 656e 6162 6c65 640a 0a2d 206e 616d 653a  enabled..- name:
│ │ │ -001d1680: 2045 6e61 626c 6520 6175 6469 7464 2053   Enable auditd S
│ │ │ -001d1690: 6572 7669 6365 202d 2045 6e61 626c 6520  ervice - Enable 
│ │ │ -001d16a0: 7365 7276 6963 6520 6175 6469 7464 0a20  service auditd. 
│ │ │ -001d16b0: 2062 6c6f 636b 3a0a 0a20 202d 206e 616d   block:..  - nam
│ │ │ -001d16c0: 653a 2047 6174 6865 7220 7468 6520 7061  e: Gather the pa
│ │ │ -001d16d0: 636b 6167 6520 6661 6374 730a 2020 2020  ckage facts.    
│ │ │ -001d16e0: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ -001d16f0: 7061 636b 6167 655f 6661 6374 733a 0a20  package_facts:. 
│ │ │ -001d1700: 2020 2020 206d 616e 6167 6572 3a20 6175       manager: au
│ │ │ -001d1710: 746f 0a0a 2020 2d20 6e61 6d65 3a20 456e  to..  - name: En
│ │ │ -001d1720: 6162 6c65 2061 7564 6974 6420 5365 7276  able auditd Serv
│ │ │ -001d1730: 6963 6520 2d20 456e 6162 6c65 2053 6572  ice - Enable Ser
│ │ │ -001d1740: 7669 6365 2061 7564 6974 640a 2020 2020  vice auditd.    
│ │ │ -001d1750: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ -001d1760: 7379 7374 656d 643a 0a20 2020 2020 206e  systemd:.      n
│ │ │ -001d1770: 616d 653a 2061 7564 6974 640a 2020 2020  ame: auditd.    
│ │ │ -001d1780: 2020 656e 6162 6c65 643a 2074 7275 650a    enabled: true.
│ │ │ -001d1790: 2020 2020 2020 7374 6174 653a 2073 7461        state: sta
│ │ │ -001d17a0: 7274 6564 0a20 2020 2020 206d 6173 6b65  rted.      maske
│ │ │ -001d17b0: 643a 2066 616c 7365 0a20 2020 2077 6865  d: false.    whe
│ │ │ -001d17c0: 6e3a 0a20 2020 202d 2027 2261 7564 6974  n:.    - '"audit
│ │ │ -001d17d0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001d17e0: 7473 2e70 6163 6b61 6765 7327 0a20 2074  ts.packages'.  t
│ │ │ -001d17f0: 6167 733a 0a20 202d 2043 4a49 532d 352e  ags:.  - CJIS-5.
│ │ │ -001d1800: 342e 312e 310a 2020 2d20 4e49 5354 2d38  4.1.1.  - NIST-8
│ │ │ -001d1810: 3030 2d31 3731 2d33 2e33 2e31 0a20 202d  00-171-3.3.1.  -
│ │ │ -001d1820: 204e 4953 542d 3830 302d 3137 312d 332e   NIST-800-171-3.
│ │ │ -001d1830: 332e 320a 2020 2d20 4e49 5354 2d38 3030  3.2.  - NIST-800
│ │ │ -001d1840: 2d31 3731 2d33 2e33 2e36 0a20 202d 204e  -171-3.3.6.  - N
│ │ │ -001d1850: 4953 542d 3830 302d 3533 2d41 432d 3228  IST-800-53-AC-2(
│ │ │ -001d1860: 6729 0a20 202d 204e 4953 542d 3830 302d  g).  - NIST-800-
│ │ │ -001d1870: 3533 2d41 432d 3628 3929 0a20 202d 204e  53-AC-6(9).  - N
│ │ │ -001d1880: 4953 542d 3830 302d 3533 2d41 552d 3130  IST-800-53-AU-10
│ │ │ -001d1890: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001d18a0: 2d41 552d 3132 2863 290a 2020 2d20 4e49  -AU-12(c).  - NI
│ │ │ -001d18b0: 5354 2d38 3030 2d35 332d 4155 2d31 3428  ST-800-53-AU-14(
│ │ │ -001d18c0: 3129 0a20 202d 204e 4953 542d 3830 302d  1).  - NIST-800-
│ │ │ -001d18d0: 3533 2d41 552d 3228 6429 0a20 202d 204e  53-AU-2(d).  - N
│ │ │ -001d18e0: 4953 542d 3830 302d 3533 2d41 552d 330a  IST-800-53-AU-3.
│ │ │ -001d18f0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001d1900: 434d 2d36 2861 290a 2020 2d20 4e49 5354  CM-6(a).  - NIST
│ │ │ -001d1910: 2d38 3030 2d35 332d 5349 2d34 2832 3329  -800-53-SI-4(23)
│ │ │ -001d1920: 0a20 202d 2050 4349 2d44 5353 2d52 6571  .  - PCI-DSS-Req
│ │ │ -001d1930: 2d31 302e 310a 2020 2d20 5043 492d 4453  -10.1.  - PCI-DS
│ │ │ -001d1940: 5376 342d 3130 2e32 0a20 202d 2050 4349  Sv4-10.2.  - PCI
│ │ │ -001d1950: 2d44 5353 7634 2d31 302e 322e 310a 2020  -DSSv4-10.2.1.  
│ │ │ -001d1960: 2d20 656e 6162 6c65 5f73 7472 6174 6567  - enable_strateg
│ │ │ -001d1970: 790a 2020 2d20 6c6f 775f 636f 6d70 6c65  y.  - low_comple
│ │ │ -001d1980: 7869 7479 0a20 202d 206c 6f77 5f64 6973  xity.  - low_dis
│ │ │ -001d1990: 7275 7074 696f 6e0a 2020 2d20 6d65 6469  ruption.  - medi
│ │ │ -001d19a0: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ -001d19b0: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ -001d19c0: 0a20 202d 2073 6572 7669 6365 5f61 7564  .  - service_aud
│ │ │ -001d19d0: 6974 645f 656e 6162 6c65 640a 2020 2d20  itd_enabled.  - 
│ │ │ -001d19e0: 7370 6563 6961 6c5f 7365 7276 6963 655f  special_service_
│ │ │ -001d19f0: 626c 6f63 6b0a 2020 7768 656e 3a0a 2020  block.  when:.  
│ │ │ -001d1a00: 2d20 2722 6b65 726e 656c 2220 696e 2061  - '"kernel" in a
│ │ │ -001d1a10: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001d1a20: 6b61 6765 7327 0a20 202d 2027 2261 7564  kages'.  - '"aud
│ │ │ -001d1a30: 6974 2220 696e 2061 6e73 6962 6c65 5f66  it" in ansible_f
│ │ │ -001d1a40: 6163 7473 2e70 6163 6b61 6765 7327 0a3c  acts.packages'.<
│ │ │ +001d0f30: 3e52 656d 6564 6961 7469 6f6e 2041 6e73  >Remediation Ans
│ │ │ +001d0f40: 6962 6c65 2073 6e69 7070 6574 20e2 87b2  ible snippet ...
│ │ │ +001d0f50: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61  
Complexity: │ │ │ +001d1020: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +001d1030: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f

│ │ │ +001d1080: 2d20 6e61 6d65 3a20 4761 7468 6572 2074  - name: Gather t
│ │ │ +001d1090: 6865 2070 6163 6b61 6765 2066 6163 7473  he package facts
│ │ │ +001d10a0: 0a20 2070 6163 6b61 6765 5f66 6163 7473  .  package_facts
│ │ │ +001d10b0: 3a0a 2020 2020 6d61 6e61 6765 723a 2061  :.    manager: a
│ │ │ +001d10c0: 7574 6f0a 2020 7461 6773 3a0a 2020 2d20  uto.  tags:.  - 
│ │ │ +001d10d0: 434a 4953 2d35 2e34 2e31 2e31 0a20 202d  CJIS-5.4.1.1.  -
│ │ │ +001d10e0: 204e 4953 542d 3830 302d 3137 312d 332e   NIST-800-171-3.
│ │ │ +001d10f0: 332e 310a 2020 2d20 4e49 5354 2d38 3030  3.1.  - NIST-800
│ │ │ +001d1100: 2d31 3731 2d33 2e33 2e32 0a20 202d 204e  -171-3.3.2.  - N
│ │ │ +001d1110: 4953 542d 3830 302d 3137 312d 332e 332e  IST-800-171-3.3.
│ │ │ +001d1120: 360a 2020 2d20 4e49 5354 2d38 3030 2d35  6.  - NIST-800-5
│ │ │ +001d1130: 332d 4143 2d32 2867 290a 2020 2d20 4e49  3-AC-2(g).  - NI
│ │ │ +001d1140: 5354 2d38 3030 2d35 332d 4143 2d36 2839  ST-800-53-AC-6(9
│ │ │ +001d1150: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001d1160: 332d 4155 2d31 300a 2020 2d20 4e49 5354  3-AU-10.  - NIST
│ │ │ +001d1170: 2d38 3030 2d35 332d 4155 2d31 3228 6329  -800-53-AU-12(c)
│ │ │ +001d1180: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001d1190: 2d41 552d 3134 2831 290a 2020 2d20 4e49  -AU-14(1).  - NI
│ │ │ +001d11a0: 5354 2d38 3030 2d35 332d 4155 2d32 2864  ST-800-53-AU-2(d
│ │ │ +001d11b0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001d11c0: 332d 4155 2d33 0a20 202d 204e 4953 542d  3-AU-3.  - NIST-
│ │ │ +001d11d0: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ +001d11e0: 202d 204e 4953 542d 3830 302d 3533 2d53   - NIST-800-53-S
│ │ │ +001d11f0: 492d 3428 3233 290a 2020 2d20 5043 492d  I-4(23).  - PCI-
│ │ │ +001d1200: 4453 532d 5265 712d 3130 2e31 0a20 202d  DSS-Req-10.1.  -
│ │ │ +001d1210: 2050 4349 2d44 5353 7634 2d31 302e 320a   PCI-DSSv4-10.2.
│ │ │ +001d1220: 2020 2d20 5043 492d 4453 5376 342d 3130    - PCI-DSSv4-10
│ │ │ +001d1230: 2e32 2e31 0a20 202d 2065 6e61 626c 655f  .2.1.  - enable_
│ │ │ +001d1240: 7374 7261 7465 6779 0a20 202d 206c 6f77  strategy.  - low
│ │ │ +001d1250: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +001d1260: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ +001d1270: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ +001d1280: 7479 0a20 202d 206e 6f5f 7265 626f 6f74  ty.  - no_reboot
│ │ │ +001d1290: 5f6e 6565 6465 640a 2020 2d20 7365 7276  _needed.  - serv
│ │ │ +001d12a0: 6963 655f 6175 6469 7464 5f65 6e61 626c  ice_auditd_enabl
│ │ │ +001d12b0: 6564 0a0a 2d20 6e61 6d65 3a20 456e 6162  ed..- name: Enab
│ │ │ +001d12c0: 6c65 2061 7564 6974 6420 5365 7276 6963  le auditd Servic
│ │ │ +001d12d0: 6520 2d20 456e 6162 6c65 2073 6572 7669  e - Enable servi
│ │ │ +001d12e0: 6365 2061 7564 6974 640a 2020 626c 6f63  ce auditd.  bloc
│ │ │ +001d12f0: 6b3a 0a0a 2020 2d20 6e61 6d65 3a20 4761  k:..  - name: Ga
│ │ │ +001d1300: 7468 6572 2074 6865 2070 6163 6b61 6765  ther the package
│ │ │ +001d1310: 2066 6163 7473 0a20 2020 2061 6e73 6962   facts.    ansib
│ │ │ +001d1320: 6c65 2e62 7569 6c74 696e 2e70 6163 6b61  le.builtin.packa
│ │ │ +001d1330: 6765 5f66 6163 7473 3a0a 2020 2020 2020  ge_facts:.      
│ │ │ +001d1340: 6d61 6e61 6765 723a 2061 7574 6f0a 0a20  manager: auto.. 
│ │ │ +001d1350: 202d 206e 616d 653a 2045 6e61 626c 6520   - name: Enable 
│ │ │ +001d1360: 6175 6469 7464 2053 6572 7669 6365 202d  auditd Service -
│ │ │ +001d1370: 2045 6e61 626c 6520 5365 7276 6963 6520   Enable Service 
│ │ │ +001d1380: 6175 6469 7464 0a20 2020 2061 6e73 6962  auditd.    ansib
│ │ │ +001d1390: 6c65 2e62 7569 6c74 696e 2e73 7973 7465  le.builtin.syste
│ │ │ +001d13a0: 6d64 3a0a 2020 2020 2020 6e61 6d65 3a20  md:.      name: 
│ │ │ +001d13b0: 6175 6469 7464 0a20 2020 2020 2065 6e61  auditd.      ena
│ │ │ +001d13c0: 626c 6564 3a20 7472 7565 0a20 2020 2020  bled: true.     
│ │ │ +001d13d0: 2073 7461 7465 3a20 7374 6172 7465 640a   state: started.
│ │ │ +001d13e0: 2020 2020 2020 6d61 736b 6564 3a20 6661        masked: fa
│ │ │ +001d13f0: 6c73 650a 2020 2020 7768 656e 3a0a 2020  lse.    when:.  
│ │ │ +001d1400: 2020 2d20 2722 6175 6469 7422 2069 6e20    - '"audit" in 
│ │ │ +001d1410: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001d1420: 636b 6167 6573 270a 2020 7461 6773 3a0a  ckages'.  tags:.
│ │ │ +001d1430: 2020 2d20 434a 4953 2d35 2e34 2e31 2e31    - CJIS-5.4.1.1
│ │ │ +001d1440: 0a20 202d 204e 4953 542d 3830 302d 3137  .  - NIST-800-17
│ │ │ +001d1450: 312d 332e 332e 310a 2020 2d20 4e49 5354  1-3.3.1.  - NIST
│ │ │ +001d1460: 2d38 3030 2d31 3731 2d33 2e33 2e32 0a20  -800-171-3.3.2. 
│ │ │ +001d1470: 202d 204e 4953 542d 3830 302d 3137 312d   - NIST-800-171-
│ │ │ +001d1480: 332e 332e 360a 2020 2d20 4e49 5354 2d38  3.3.6.  - NIST-8
│ │ │ +001d1490: 3030 2d35 332d 4143 2d32 2867 290a 2020  00-53-AC-2(g).  
│ │ │ +001d14a0: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ +001d14b0: 2d36 2839 290a 2020 2d20 4e49 5354 2d38  -6(9).  - NIST-8
│ │ │ +001d14c0: 3030 2d35 332d 4155 2d31 300a 2020 2d20  00-53-AU-10.  - 
│ │ │ +001d14d0: 4e49 5354 2d38 3030 2d35 332d 4155 2d31  NIST-800-53-AU-1
│ │ │ +001d14e0: 3228 6329 0a20 202d 204e 4953 542d 3830  2(c).  - NIST-80
│ │ │ +001d14f0: 302d 3533 2d41 552d 3134 2831 290a 2020  0-53-AU-14(1).  
│ │ │ +001d1500: 2d20 4e49 5354 2d38 3030 2d35 332d 4155  - NIST-800-53-AU
│ │ │ +001d1510: 2d32 2864 290a 2020 2d20 4e49 5354 2d38  -2(d).  - NIST-8
│ │ │ +001d1520: 3030 2d35 332d 4155 2d33 0a20 202d 204e  00-53-AU-3.  - N
│ │ │ +001d1530: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ +001d1540: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ +001d1550: 3533 2d53 492d 3428 3233 290a 2020 2d20  53-SI-4(23).  - 
│ │ │ +001d1560: 5043 492d 4453 532d 5265 712d 3130 2e31  PCI-DSS-Req-10.1
│ │ │ +001d1570: 0a20 202d 2050 4349 2d44 5353 7634 2d31  .  - PCI-DSSv4-1
│ │ │ +001d1580: 302e 320a 2020 2d20 5043 492d 4453 5376  0.2.  - PCI-DSSv
│ │ │ +001d1590: 342d 3130 2e32 2e31 0a20 202d 2065 6e61  4-10.2.1.  - ena
│ │ │ +001d15a0: 626c 655f 7374 7261 7465 6779 0a20 202d  ble_strategy.  -
│ │ │ +001d15b0: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ +001d15c0: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ +001d15d0: 6f6e 0a20 202d 206d 6564 6975 6d5f 7365  on.  - medium_se
│ │ │ +001d15e0: 7665 7269 7479 0a20 202d 206e 6f5f 7265  verity.  - no_re
│ │ │ +001d15f0: 626f 6f74 5f6e 6565 6465 640a 2020 2d20  boot_needed.  - 
│ │ │ +001d1600: 7365 7276 6963 655f 6175 6469 7464 5f65  service_auditd_e
│ │ │ +001d1610: 6e61 626c 6564 0a20 202d 2073 7065 6369  nabled.  - speci
│ │ │ +001d1620: 616c 5f73 6572 7669 6365 5f62 6c6f 636b  al_service_block
│ │ │ +001d1630: 0a20 2077 6865 6e3a 0a20 202d 2027 226b  .  when:.  - '"k
│ │ │ +001d1640: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ +001d1650: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +001d1660: 270a 2020 2d20 2722 6175 6469 7422 2069  '.  - '"audit" i
│ │ │ +001d1670: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001d1680: 7061 636b 6167 6573 270a 3c2f 636f 6465  packages'.
Remedi │ │ │ +001d1740: 6174 696f 6e20 5075 7070 6574 2073 6e69 ation Puppet sni │ │ │ +001d1750: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ +001d1760: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ +001d1790: 3c74 6162 6c65 2063 6c61 7373 3d22 7461
low
Disru │ │ │ +001d1000: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +001d1010: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +001d1050: 6567 793a 3c2f 7468 3e3c 7464 3e65 6e61 egy:ena │ │ │ +001d1060: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
< │ │ │ +001d1800: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ +001d1820: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ +001d1850: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy: │ │ │ +001d1870: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
Comple │ │ │ +001d17e0: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ +001d17f0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ +001d1830: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +001d1840: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
enable
include │ │ │ +001d1890: 656e 6162 6c65 5f61 7564 6974 640a 0a63 enable_auditd..c │ │ │ +001d18a0: 6c61 7373 2065 6e61 626c 655f 6175 6469 lass enable_audi │ │ │ +001d18b0: 7464 207b 0a20 2073 6572 7669 6365 207b td {. service { │ │ │ +001d18c0: 2761 7564 6974 6427 3a0a 2020 2020 656e 'auditd':. en │ │ │ +001d18d0: 6162 6c65 203d 2667 743b 2074 7275 652c able => true, │ │ │ +001d18e0: 0a20 2020 2065 6e73 7572 6520 3d26 6774 . ensure => │ │ │ +001d18f0: 3b20 2772 756e 6e69 6e67 272c 0a20 207d ; 'running',. } │ │ │ +001d1900: 0a7d 0a3c 2f63 6f64 653e 3c2f 7072 653e .}.
│ │ │ +001d1910: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation O │ │ │ +001d19c0: 5342 7569 6c64 2042 6c75 6570 7269 6e74 SBuild Blueprint │ │ │ +001d19d0: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ +001d19e0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
.
│ │ │ +001d1a20: 5b63 7573 746f 6d69 7a61 7469 6f6e 732e  [customizations.
│ │ │ +001d1a30: 7365 7276 6963 6573 5d0a 656e 6162 6c65  services].enable
│ │ │ +001d1a40: 6420 3d20 5b22 6175 6469 7464 225d 0a3c  d = ["auditd"].<
│ │ │  001d1a50: 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: │ │ │ │ @@ -5391,31 +5391,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: │ │ │ │ @@ -5444,14 +5427,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 │ │ │ │ @@ -5554,31 +5554,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: │ │ │ │ @@ -5605,14 +5588,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 │ │ │ │ @@ -5628,31 +5628,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: │ │ │ │ @@ -5705,14 +5688,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 │ │ │ │ @@ -10668,31 +10668,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: │ │ │ │ @@ -10717,14 +10700,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 │ │ │ │ @@ -11028,31 +11028,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: │ │ │ │ @@ -11114,14 +11097,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 / │ │ │ │ @@ -11840,31 +11840,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: │ │ │ │ @@ -11891,14 +11874,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. │ │ │ │ @@ -13725,31 +13725,14 @@ │ │ │ │ Rationale: Emails can be used to notify designated personnel about important system events such as │ │ │ │ failures or warnings. │ │ │ │ Severity:  medium │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_package_postfix_installed │ │ │ │ _h_i_p_a_a 164.312(a)(2)(ii) │ │ │ │ References: _o_s_-_s_r_g SRG-OS-000046-GPOS-00022 │ │ │ │ _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 = "postfix" │ │ │ │ -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_postfix │ │ │ │ - │ │ │ │ -class install_postfix { │ │ │ │ - package { 'postfix': │ │ │ │ - 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: │ │ │ │ @@ -13774,14 +13757,31 @@ │ │ │ │ - PCI-DSSv4-10.5.1 │ │ │ │ - enable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - package_postfix_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_postfix │ │ │ │ + │ │ │ │ +class install_postfix { │ │ │ │ + package { 'postfix': │ │ │ │ + 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 = "postfix" │ │ │ │ +version = "*" │ │ │ │ Group   NFS and RPC   Group contains 2 groups and 1 rule │ │ │ │ _[_r_e_f_]   The Network File System is a popular distributed filesystem for the Unix environment, and is │ │ │ │ very widely deployed. This section discusses the circumstances under which it is possible to disable │ │ │ │ NFS and its dependencies, and then details steps which should be taken to secure NFS's │ │ │ │ configuration. This section is relevant to systems operating as NFS clients, as well as to those │ │ │ │ operating as NFS servers. │ │ │ │ Group   Disable All NFS Services if Possible   Group contains 1 group and 1 rule │ │ │ │ @@ -13803,31 +13803,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: │ │ │ │ @@ -13881,14 +13864,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 │ │ │ │ @@ -13941,31 +13941,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: │ │ │ │ @@ -13992,14 +13975,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. │ │ │ │ │ │ │ │ @@ -14052,31 +14052,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: │ │ │ │ @@ -14121,14 +14104,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 │ │ │ │ @@ -14555,27 +14555,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: │ │ │ │ @@ -14586,14 +14573,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 │ │ │ │ @@ -14620,27 +14620,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: │ │ │ │ @@ -14652,14 +14639,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 │ │ │ │ @@ -14683,27 +14683,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: │ │ │ │ @@ -14714,14 +14701,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 │ │ │ │ @@ -14745,27 +14745,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: │ │ │ │ @@ -14776,14 +14763,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 │ │ │ │ @@ -14810,27 +14810,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: │ │ │ │ @@ -14842,14 +14829,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 │ │ │ │ @@ -14866,31 +14866,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: │ │ │ │ @@ -14945,14 +14928,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 │ │ │ │ @@ -17191,26 +17191,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 0600 /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: │ │ │ │ @@ -17274,14 +17262,26 @@ │ │ │ │ - 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 0600 /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 │ │ │ │ @@ -17318,23 +17318,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: │ │ │ │ @@ -17398,14 +17389,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 │ │ │ │ @@ -26608,31 +26608,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: │ │ │ │ @@ -26673,14 +26656,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 │ │ │ │ @@ -26726,31 +26726,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: │ │ │ │ @@ -26817,14 +26800,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 │ │ │ @@ -20177,174 +20177,174 @@ │ │ │ 0004ed00: 6461 7461 2d74 6172 6765 743d 2223 6964 data-target="#id │ │ │ 0004ed10: 3239 2220 7461 6269 6e64 6578 3d22 3022 29" tabindex="0" │ │ │ 0004ed20: 2072 6f6c 653d 2262 7574 746f 6e22 2061 role="button" a │ │ │ 0004ed30: 7269 612d 6578 7061 6e64 6564 3d22 6661 ria-expanded="fa │ │ │ 0004ed40: 6c73 6522 2074 6974 6c65 3d22 4163 7469 lse" title="Acti │ │ │ 0004ed50: 7661 7465 2074 6f20 7265 7665 616c 2220 vate to reveal" │ │ │ 0004ed60: 6872 6566 3d22 2321 223e 5265 6d65 6469 href="#!">Remedi │ │ │ -0004ed70: 6174 696f 6e20 4f53 4275 696c 6420 426c ation OSBuild Bl │ │ │ -0004ed80: 7565 7072 696e 7420 736e 6970 7065 7420 ueprint snippet │ │ │ -0004ed90: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
<
│ │ │ -0004edd0: 636f 6465 3e0a 5b63 7573 746f 6d69 7a61  code>.[customiza
│ │ │ -0004ede0: 7469 6f6e 732e 7365 7276 6963 6573 5d0a  tions.services].
│ │ │ -0004edf0: 656e 6162 6c65 6420 3d20 5b22 6669 7265  enabled = ["fire
│ │ │ -0004ee00: 7761 6c6c 6422 5d0a 3c2f 636f 6465 3e3c  walld"].<
│ │ │ -0004ee10: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>
Remediati │ │ │ -0004eec0: 6f6e 2050 7570 7065 7420 736e 6970 7065 on Puppet snippe │ │ │ -0004eed0: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
Complexity │ │ │ -0004ef60: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ -0004ef80: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ -0004ef90: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -0004efa0: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ -0004efb0: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ -0004efd0: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:enable
include enab
│ │ │ -0004f010: 6c65 5f66 6972 6577 616c 6c64 0a0a 636c  le_firewalld..cl
│ │ │ -0004f020: 6173 7320 656e 6162 6c65 5f66 6972 6577  ass enable_firew
│ │ │ -0004f030: 616c 6c64 207b 0a20 2073 6572 7669 6365  alld {.  service
│ │ │ -0004f040: 207b 2766 6972 6577 616c 6c64 273a 0a20   {'firewalld':. 
│ │ │ -0004f050: 2020 2065 6e61 626c 6520 3d26 6774 3b20     enable => 
│ │ │ -0004f060: 7472 7565 2c0a 2020 2020 656e 7375 7265  true,.    ensure
│ │ │ -0004f070: 203d 2667 743b 2027 7275 6e6e 696e 6727   => 'running'
│ │ │ -0004f080: 2c0a 2020 7d0a 7d0a 3c2f 636f 6465 3e3c  ,.  }.}.<
│ │ │ -0004f090: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>
Remediati │ │ │ -0004f140: 6f6e 2041 6e73 6962 6c65 2073 6e69 7070 on Ansible snipp │ │ │ -0004f150: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
< │ │ │ -0004f1d0: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ -0004f1e0: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ -0004f200: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ -0004f210: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ -0004f230: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ -0004f250: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:enable
<
│ │ │ -0004f280: 636f 6465 3e2d 206e 616d 653a 2047 6174  code>- name: Gat
│ │ │ -0004f290: 6865 7220 7468 6520 7061 636b 6167 6520  her the package 
│ │ │ -0004f2a0: 6661 6374 730a 2020 7061 636b 6167 655f  facts.  package_
│ │ │ -0004f2b0: 6661 6374 733a 0a20 2020 206d 616e 6167  facts:.    manag
│ │ │ -0004f2c0: 6572 3a20 6175 746f 0a20 2074 6167 733a  er: auto.  tags:
│ │ │ -0004f2d0: 0a20 202d 204e 4953 542d 3830 302d 3137  .  - NIST-800-17
│ │ │ -0004f2e0: 312d 332e 312e 330a 2020 2d20 4e49 5354  1-3.1.3.  - NIST
│ │ │ -0004f2f0: 2d38 3030 2d31 3731 2d33 2e34 2e37 0a20  -800-171-3.4.7. 
│ │ │ -0004f300: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ -0004f310: 432d 340a 2020 2d20 4e49 5354 2d38 3030  C-4.  - NIST-800
│ │ │ -0004f320: 2d35 332d 4341 2d33 2835 290a 2020 2d20  -53-CA-3(5).  - 
│ │ │ -0004f330: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ -0004f340: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ -0004f350: 2d35 332d 434d 2d37 2862 290a 2020 2d20  -53-CM-7(b).  - 
│ │ │ -0004f360: 4e49 5354 2d38 3030 2d35 332d 5343 2d37  NIST-800-53-SC-7
│ │ │ -0004f370: 2832 3129 0a20 202d 2050 4349 2d44 5353  (21).  - PCI-DSS
│ │ │ -0004f380: 7634 2d31 2e32 0a20 202d 2050 4349 2d44  v4-1.2.  - PCI-D
│ │ │ -0004f390: 5353 7634 2d31 2e32 2e31 0a20 202d 2065  SSv4-1.2.1.  - e
│ │ │ -0004f3a0: 6e61 626c 655f 7374 7261 7465 6779 0a20  nable_strategy. 
│ │ │ -0004f3b0: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ -0004f3c0: 790a 2020 2d20 6c6f 775f 6469 7372 7570  y.  - low_disrup
│ │ │ -0004f3d0: 7469 6f6e 0a20 202d 206d 6564 6975 6d5f  tion.  - medium_
│ │ │ -0004f3e0: 7365 7665 7269 7479 0a20 202d 206e 6f5f  severity.  - no_
│ │ │ -0004f3f0: 7265 626f 6f74 5f6e 6565 6465 640a 2020  reboot_needed.  
│ │ │ -0004f400: 2d20 7365 7276 6963 655f 6669 7265 7761  - service_firewa
│ │ │ -0004f410: 6c6c 645f 656e 6162 6c65 640a 0a2d 206e  lld_enabled..- n
│ │ │ -0004f420: 616d 653a 2056 6572 6966 7920 6669 7265  ame: Verify fire
│ │ │ -0004f430: 7761 6c6c 6420 456e 6162 6c65 6420 2d20  walld Enabled - 
│ │ │ -0004f440: 456e 6162 6c65 2073 6572 7669 6365 2066  Enable service f
│ │ │ -0004f450: 6972 6577 616c 6c64 0a20 2062 6c6f 636b  irewalld.  block
│ │ │ -0004f460: 3a0a 0a20 202d 206e 616d 653a 2047 6174  :..  - name: Gat
│ │ │ -0004f470: 6865 7220 7468 6520 7061 636b 6167 6520  her the package 
│ │ │ -0004f480: 6661 6374 730a 2020 2020 616e 7369 626c  facts.    ansibl
│ │ │ -0004f490: 652e 6275 696c 7469 6e2e 7061 636b 6167  e.builtin.packag
│ │ │ -0004f4a0: 655f 6661 6374 733a 0a20 2020 2020 206d  e_facts:.      m
│ │ │ -0004f4b0: 616e 6167 6572 3a20 6175 746f 0a0a 2020  anager: auto..  
│ │ │ -0004f4c0: 2d20 6e61 6d65 3a20 5665 7269 6679 2066  - name: Verify f
│ │ │ -0004f4d0: 6972 6577 616c 6c64 2045 6e61 626c 6564  irewalld Enabled
│ │ │ -0004f4e0: 202d 2045 6e61 626c 6520 5365 7276 6963   - Enable Servic
│ │ │ -0004f4f0: 6520 6669 7265 7761 6c6c 640a 2020 2020  e firewalld.    
│ │ │ -0004f500: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ -0004f510: 7379 7374 656d 643a 0a20 2020 2020 206e  systemd:.      n
│ │ │ -0004f520: 616d 653a 2066 6972 6577 616c 6c64 0a20  ame: firewalld. 
│ │ │ -0004f530: 2020 2020 2065 6e61 626c 6564 3a20 7472       enabled: tr
│ │ │ -0004f540: 7565 0a20 2020 2020 2073 7461 7465 3a20  ue.      state: 
│ │ │ -0004f550: 7374 6172 7465 640a 2020 2020 2020 6d61  started.      ma
│ │ │ -0004f560: 736b 6564 3a20 6661 6c73 650a 2020 2020  sked: false.    
│ │ │ -0004f570: 7768 656e 3a0a 2020 2020 2d20 2722 6669  when:.    - '"fi
│ │ │ -0004f580: 7265 7761 6c6c 6422 2069 6e20 616e 7369  rewalld" in ansi
│ │ │ -0004f590: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -0004f5a0: 6573 270a 2020 7461 6773 3a0a 2020 2d20  es'.  tags:.  - 
│ │ │ -0004f5b0: 4e49 5354 2d38 3030 2d31 3731 2d33 2e31  NIST-800-171-3.1
│ │ │ -0004f5c0: 2e33 0a20 202d 204e 4953 542d 3830 302d  .3.  - NIST-800-
│ │ │ -0004f5d0: 3137 312d 332e 342e 370a 2020 2d20 4e49  171-3.4.7.  - NI
│ │ │ -0004f5e0: 5354 2d38 3030 2d35 332d 4143 2d34 0a20  ST-800-53-AC-4. 
│ │ │ -0004f5f0: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -0004f600: 412d 3328 3529 0a20 202d 204e 4953 542d  A-3(5).  - NIST-
│ │ │ -0004f610: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ -0004f620: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -0004f630: 4d2d 3728 6229 0a20 202d 204e 4953 542d  M-7(b).  - NIST-
│ │ │ -0004f640: 3830 302d 3533 2d53 432d 3728 3231 290a  800-53-SC-7(21).
│ │ │ -0004f650: 2020 2d20 5043 492d 4453 5376 342d 312e    - PCI-DSSv4-1.
│ │ │ -0004f660: 320a 2020 2d20 5043 492d 4453 5376 342d  2.  - PCI-DSSv4-
│ │ │ -0004f670: 312e 322e 310a 2020 2d20 656e 6162 6c65  1.2.1.  - enable
│ │ │ -0004f680: 5f73 7472 6174 6567 790a 2020 2d20 6c6f  _strategy.  - lo
│ │ │ -0004f690: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ -0004f6a0: 206c 6f77 5f64 6973 7275 7074 696f 6e0a   low_disruption.
│ │ │ -0004f6b0: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ -0004f6c0: 6974 790a 2020 2d20 6e6f 5f72 6562 6f6f  ity.  - no_reboo
│ │ │ -0004f6d0: 745f 6e65 6564 6564 0a20 202d 2073 6572  t_needed.  - ser
│ │ │ -0004f6e0: 7669 6365 5f66 6972 6577 616c 6c64 5f65  vice_firewalld_e
│ │ │ -0004f6f0: 6e61 626c 6564 0a20 202d 2073 7065 6369  nabled.  - speci
│ │ │ -0004f700: 616c 5f73 6572 7669 6365 5f62 6c6f 636b  al_service_block
│ │ │ -0004f710: 0a20 2077 6865 6e3a 0a20 202d 2027 226b  .  when:.  - '"k
│ │ │ -0004f720: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ -0004f730: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -0004f740: 270a 2020 2d20 2722 6669 7265 7761 6c6c  '.  - '"firewall
│ │ │ -0004f750: 6422 2069 6e20 616e 7369 626c 655f 6661  d" in ansible_fa
│ │ │ -0004f760: 6374 732e 7061 636b 6167 6573 270a 3c2f  cts.packages'.
│ │ │ +0004edc0: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ +0004ee30: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ +0004ee50: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ +0004ee80: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy: │ │ │ +0004eea0: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
Comple │ │ │ +0004ee10: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ +0004ee20: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ +0004ee60: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +0004ee70: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
enable
- name: │ │ │ +0004eec0: 4761 7468 6572 2074 6865 2070 6163 6b61 Gather the packa │ │ │ +0004eed0: 6765 2066 6163 7473 0a20 2070 6163 6b61 ge facts. packa │ │ │ +0004eee0: 6765 5f66 6163 7473 3a0a 2020 2020 6d61 ge_facts:. ma │ │ │ +0004eef0: 6e61 6765 723a 2061 7574 6f0a 2020 7461 nager: auto. ta │ │ │ +0004ef00: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030 gs:. - NIST-800 │ │ │ +0004ef10: 2d31 3731 2d33 2e31 2e33 0a20 202d 204e -171-3.1.3. - N │ │ │ +0004ef20: 4953 542d 3830 302d 3137 312d 332e 342e IST-800-171-3.4. │ │ │ +0004ef30: 370a 2020 2d20 4e49 5354 2d38 3030 2d35 7. - NIST-800-5 │ │ │ +0004ef40: 332d 4143 2d34 0a20 202d 204e 4953 542d 3-AC-4. - NIST- │ │ │ +0004ef50: 3830 302d 3533 2d43 412d 3328 3529 0a20 800-53-CA-3(5). │ │ │ +0004ef60: 202d 204e 4953 542d 3830 302d 3533 2d43 - NIST-800-53-C │ │ │ +0004ef70: 4d2d 3628 6129 0a20 202d 204e 4953 542d M-6(a). - NIST- │ │ │ +0004ef80: 3830 302d 3533 2d43 4d2d 3728 6229 0a20 800-53-CM-7(b). │ │ │ +0004ef90: 202d 204e 4953 542d 3830 302d 3533 2d53 - NIST-800-53-S │ │ │ +0004efa0: 432d 3728 3231 290a 2020 2d20 5043 492d C-7(21). - PCI- │ │ │ +0004efb0: 4453 5376 342d 312e 320a 2020 2d20 5043 DSSv4-1.2. - PC │ │ │ +0004efc0: 492d 4453 5376 342d 312e 322e 310a 2020 I-DSSv4-1.2.1. │ │ │ +0004efd0: 2d20 656e 6162 6c65 5f73 7472 6174 6567 - enable_strateg │ │ │ +0004efe0: 790a 2020 2d20 6c6f 775f 636f 6d70 6c65 y. - low_comple │ │ │ +0004eff0: 7869 7479 0a20 202d 206c 6f77 5f64 6973 xity. - low_dis │ │ │ +0004f000: 7275 7074 696f 6e0a 2020 2d20 6d65 6469 ruption. - medi │ │ │ +0004f010: 756d 5f73 6576 6572 6974 790a 2020 2d20 um_severity. - │ │ │ +0004f020: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564 no_reboot_needed │ │ │ +0004f030: 0a20 202d 2073 6572 7669 6365 5f66 6972 . - service_fir │ │ │ +0004f040: 6577 616c 6c64 5f65 6e61 626c 6564 0a0a ewalld_enabled.. │ │ │ +0004f050: 2d20 6e61 6d65 3a20 5665 7269 6679 2066 - name: Verify f │ │ │ +0004f060: 6972 6577 616c 6c64 2045 6e61 626c 6564 irewalld Enabled │ │ │ +0004f070: 202d 2045 6e61 626c 6520 7365 7276 6963 - Enable servic │ │ │ +0004f080: 6520 6669 7265 7761 6c6c 640a 2020 626c e firewalld. bl │ │ │ +0004f090: 6f63 6b3a 0a0a 2020 2d20 6e61 6d65 3a20 ock:.. - name: │ │ │ +0004f0a0: 4761 7468 6572 2074 6865 2070 6163 6b61 Gather the packa │ │ │ +0004f0b0: 6765 2066 6163 7473 0a20 2020 2061 6e73 ge facts. ans │ │ │ +0004f0c0: 6962 6c65 2e62 7569 6c74 696e 2e70 6163 ible.builtin.pac │ │ │ +0004f0d0: 6b61 6765 5f66 6163 7473 3a0a 2020 2020 kage_facts:. │ │ │ +0004f0e0: 2020 6d61 6e61 6765 723a 2061 7574 6f0a manager: auto. │ │ │ +0004f0f0: 0a20 202d 206e 616d 653a 2056 6572 6966 . - name: Verif │ │ │ +0004f100: 7920 6669 7265 7761 6c6c 6420 456e 6162 y firewalld Enab │ │ │ +0004f110: 6c65 6420 2d20 456e 6162 6c65 2053 6572 led - Enable Ser │ │ │ +0004f120: 7669 6365 2066 6972 6577 616c 6c64 0a20 vice firewalld. │ │ │ +0004f130: 2020 2061 6e73 6962 6c65 2e62 7569 6c74 ansible.built │ │ │ +0004f140: 696e 2e73 7973 7465 6d64 3a0a 2020 2020 in.systemd:. │ │ │ +0004f150: 2020 6e61 6d65 3a20 6669 7265 7761 6c6c name: firewall │ │ │ +0004f160: 640a 2020 2020 2020 656e 6162 6c65 643a d. enabled: │ │ │ +0004f170: 2074 7275 650a 2020 2020 2020 7374 6174 true. stat │ │ │ +0004f180: 653a 2073 7461 7274 6564 0a20 2020 2020 e: started. │ │ │ +0004f190: 206d 6173 6b65 643a 2066 616c 7365 0a20 masked: false. │ │ │ +0004f1a0: 2020 2077 6865 6e3a 0a20 2020 202d 2027 when:. - ' │ │ │ +0004f1b0: 2266 6972 6577 616c 6c64 2220 696e 2061 "firewalld" in a │ │ │ +0004f1c0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163 nsible_facts.pac │ │ │ +0004f1d0: 6b61 6765 7327 0a20 2074 6167 733a 0a20 kages'. tags:. │ │ │ +0004f1e0: 202d 204e 4953 542d 3830 302d 3137 312d - NIST-800-171- │ │ │ +0004f1f0: 332e 312e 330a 2020 2d20 4e49 5354 2d38 3.1.3. - NIST-8 │ │ │ +0004f200: 3030 2d31 3731 2d33 2e34 2e37 0a20 202d 00-171-3.4.7. - │ │ │ +0004f210: 204e 4953 542d 3830 302d 3533 2d41 432d NIST-800-53-AC- │ │ │ +0004f220: 340a 2020 2d20 4e49 5354 2d38 3030 2d35 4. - NIST-800-5 │ │ │ +0004f230: 332d 4341 2d33 2835 290a 2020 2d20 4e49 3-CA-3(5). - NI │ │ │ +0004f240: 5354 2d38 3030 2d35 332d 434d 2d36 2861 ST-800-53-CM-6(a │ │ │ +0004f250: 290a 2020 2d20 4e49 5354 2d38 3030 2d35 ). - NIST-800-5 │ │ │ +0004f260: 332d 434d 2d37 2862 290a 2020 2d20 4e49 3-CM-7(b). - NI │ │ │ +0004f270: 5354 2d38 3030 2d35 332d 5343 2d37 2832 ST-800-53-SC-7(2 │ │ │ +0004f280: 3129 0a20 202d 2050 4349 2d44 5353 7634 1). - PCI-DSSv4 │ │ │ +0004f290: 2d31 2e32 0a20 202d 2050 4349 2d44 5353 -1.2. - PCI-DSS │ │ │ +0004f2a0: 7634 2d31 2e32 2e31 0a20 202d 2065 6e61 v4-1.2.1. - ena │ │ │ +0004f2b0: 626c 655f 7374 7261 7465 6779 0a20 202d ble_strategy. - │ │ │ +0004f2c0: 206c 6f77 5f63 6f6d 706c 6578 6974 790a low_complexity. │ │ │ +0004f2d0: 2020 2d20 6c6f 775f 6469 7372 7570 7469 - low_disrupti │ │ │ +0004f2e0: 6f6e 0a20 202d 206d 6564 6975 6d5f 7365 on. - medium_se │ │ │ +0004f2f0: 7665 7269 7479 0a20 202d 206e 6f5f 7265 verity. - no_re │ │ │ +0004f300: 626f 6f74 5f6e 6565 6465 640a 2020 2d20 boot_needed. - │ │ │ +0004f310: 7365 7276 6963 655f 6669 7265 7761 6c6c service_firewall │ │ │ +0004f320: 645f 656e 6162 6c65 640a 2020 2d20 7370 d_enabled. - sp │ │ │ +0004f330: 6563 6961 6c5f 7365 7276 6963 655f 626c ecial_service_bl │ │ │ +0004f340: 6f63 6b0a 2020 7768 656e 3a0a 2020 2d20 ock. when:. - │ │ │ +0004f350: 2722 6b65 726e 656c 2220 696e 2061 6e73 '"kernel" in ans │ │ │ +0004f360: 6962 6c65 5f66 6163 7473 2e70 6163 6b61 ible_facts.packa │ │ │ +0004f370: 6765 7327 0a20 202d 2027 2266 6972 6577 ges'. - '"firew │ │ │ +0004f380: 616c 6c64 2220 696e 2061 6e73 6962 6c65 alld" in ansible │ │ │ +0004f390: 5f66 6163 7473 2e70 6163 6b61 6765 7327 _facts.packages' │ │ │ +0004f3a0: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f .
│ │ │ +0004f450: 5265 6d65 6469 6174 696f 6e20 5075 7070 Remediation Pupp │ │ │ +0004f460: 6574 2073 6e69 7070 6574 20e2 87b2 3c2f et snippet ...
< │ │ │ +0004f500: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +0004f510: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ +0004f560: 3c74 723e 3c74 683e 5374 7261 7465 6779
inc
│ │ │ +0004f5a0: 6c75 6465 2065 6e61 626c 655f 6669 7265  lude enable_fire
│ │ │ +0004f5b0: 7761 6c6c 640a 0a63 6c61 7373 2065 6e61  walld..class ena
│ │ │ +0004f5c0: 626c 655f 6669 7265 7761 6c6c 6420 7b0a  ble_firewalld {.
│ │ │ +0004f5d0: 2020 7365 7276 6963 6520 7b27 6669 7265    service {'fire
│ │ │ +0004f5e0: 7761 6c6c 6427 3a0a 2020 2020 656e 6162  walld':.    enab
│ │ │ +0004f5f0: 6c65 203d 2667 743b 2074 7275 652c 0a20  le => true,. 
│ │ │ +0004f600: 2020 2065 6e73 7572 6520 3d26 6774 3b20     ensure => 
│ │ │ +0004f610: 2772 756e 6e69 6e67 272c 0a20 207d 0a7d  'running',.  }.}
│ │ │ +0004f620: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
│ │ │ +0004f6d0: 5265 6d65 6469 6174 696f 6e20 4f53 4275 Remediation OSBu │ │ │ +0004f6e0: 696c 6420 426c 7565 7072 696e 7420 736e ild Blueprint sn │ │ │ +0004f6f0: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ +0004f730: 3c70 7265 3e3c 636f 6465 3e0a 5b63 7573
.[cus
│ │ │ +0004f740: 746f 6d69 7a61 7469 6f6e 732e 7365 7276  tomizations.serv
│ │ │ +0004f750: 6963 6573 5d0a 656e 6162 6c65 6420 3d20  ices].enabled = 
│ │ │ +0004f760: 5b22 6669 7265 7761 6c6c 6422 5d0a 3c2f  ["firewalld"].
C │ │ │ +0004f4f0: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ +0004f520: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ +0004f530: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ +0004f570: 3a3c 2f74 683e 3c74 643e 656e 6162 6c65 :enable │ │ │ +0004f580: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Remediati │ │ │ -00052ff0: 6f6e 204f 5342 7569 6c64 2042 6c75 6570 on OSBuild Bluep │ │ │ -00053000: 7269 6e74 2073 6e69 7070 6574 20e2 87b2 rint snippet ... │ │ │ -00053010: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
.[customizatio
│ │ │ -00053060: 6e73 2e73 6572 7669 6365 735d 0a6d 6173  ns.services].mas
│ │ │ -00053070: 6b65 6420 3d20 5b22 6175 746f 6673 225d  ked = ["autofs"]
│ │ │ -00053080: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
│ │ │ -00053130: 5265 6d65 6469 6174 696f 6e20 5075 7070 Remediation Pupp │ │ │ -00053140: 6574 2073 6e69 7070 6574 20e2 87b2 3c2f et snippet ...
< │ │ │ -000531e0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -000531f0: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ -00053240: 3c74 723e 3c74 683e 5374 7261 7465 6779
inc
│ │ │ -00053280: 6c75 6465 2064 6973 6162 6c65 5f61 7574  lude disable_aut
│ │ │ -00053290: 6f66 730a 0a63 6c61 7373 2064 6973 6162  ofs..class disab
│ │ │ -000532a0: 6c65 5f61 7574 6f66 7320 7b0a 2020 7365  le_autofs {.  se
│ │ │ -000532b0: 7276 6963 6520 7b27 6175 746f 6673 273a  rvice {'autofs':
│ │ │ -000532c0: 0a20 2020 2065 6e61 626c 6520 3d26 6774  .    enable =>
│ │ │ -000532d0: 3b20 6661 6c73 652c 0a20 2020 2065 6e73  ; false,.    ens
│ │ │ -000532e0: 7572 6520 3d26 6774 3b20 2773 746f 7070  ure => 'stopp
│ │ │ -000532f0: 6564 272c 0a20 207d 0a7d 0a3c 2f63 6f64  ed',.  }.}.
Remedi │ │ │ -000533b0: 6174 696f 6e20 416e 7369 626c 6520 736e ation Ansible sn │ │ │ -000533c0: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ -00053400: 3c74 6162 6c65 2063 6c61 7373 3d22 7461
C │ │ │ -000531d0: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -00053200: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ -00053210: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -00053250: 3a3c 2f74 683e 3c74 643e 656e 6162 6c65 :enable │ │ │ -00053260: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
< │ │ │ -00053470: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ -00053490: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ -000534c0: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
Comple │ │ │ -00053450: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ -00053460: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ -000534a0: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ -000534b0: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
disable

- name: │ │ │ -00053500: 2047 6174 6865 7220 7468 6520 7061 636b Gather the pack │ │ │ -00053510: 6167 6520 6661 6374 730a 2020 7061 636b age facts. pack │ │ │ -00053520: 6167 655f 6661 6374 733a 0a20 2020 206d age_facts:. m │ │ │ -00053530: 616e 6167 6572 3a20 6175 746f 0a20 2074 anager: auto. t │ │ │ -00053540: 6167 733a 0a20 202d 204e 4953 542d 3830 ags:. - NIST-80 │ │ │ -00053550: 302d 3137 312d 332e 342e 360a 2020 2d20 0-171-3.4.6. - │ │ │ -00053560: 4e49 5354 2d38 3030 2d35 332d 434d 2d36 NIST-800-53-CM-6 │ │ │ -00053570: 2861 290a 2020 2d20 4e49 5354 2d38 3030 (a). - NIST-800 │ │ │ -00053580: 2d35 332d 434d 2d37 2861 290a 2020 2d20 -53-CM-7(a). - │ │ │ -00053590: 4e49 5354 2d38 3030 2d35 332d 434d 2d37 NIST-800-53-CM-7 │ │ │ -000535a0: 2862 290a 2020 2d20 4e49 5354 2d38 3030 (b). - NIST-800 │ │ │ -000535b0: 2d35 332d 4d50 2d37 0a20 202d 2064 6973 -53-MP-7. - dis │ │ │ -000535c0: 6162 6c65 5f73 7472 6174 6567 790a 2020 able_strategy. │ │ │ -000535d0: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479 - low_complexity │ │ │ -000535e0: 0a20 202d 206c 6f77 5f64 6973 7275 7074 . - low_disrupt │ │ │ -000535f0: 696f 6e0a 2020 2d20 6d65 6469 756d 5f73 ion. - medium_s │ │ │ -00053600: 6576 6572 6974 790a 2020 2d20 6e6f 5f72 everity. - no_r │ │ │ -00053610: 6562 6f6f 745f 6e65 6564 6564 0a20 202d eboot_needed. - │ │ │ -00053620: 2073 6572 7669 6365 5f61 7574 6f66 735f service_autofs_ │ │ │ -00053630: 6469 7361 626c 6564 0a0a 2d20 6e61 6d65 disabled..- name │ │ │ -00053640: 3a20 4469 7361 626c 6520 7468 6520 4175 : Disable the Au │ │ │ -00053650: 746f 6d6f 756e 7465 7220 2d20 4469 7361 tomounter - Disa │ │ │ -00053660: 626c 6520 7365 7276 6963 6520 6175 746f ble service auto │ │ │ -00053670: 6673 0a20 2062 6c6f 636b 3a0a 0a20 202d fs. block:.. - │ │ │ -00053680: 206e 616d 653a 2044 6973 6162 6c65 2074 name: Disable t │ │ │ -00053690: 6865 2041 7574 6f6d 6f75 6e74 6572 202d he Automounter - │ │ │ -000536a0: 2043 6f6c 6c65 6374 2073 7973 7465 6d64 Collect systemd │ │ │ -000536b0: 2053 6572 7669 6365 7320 5072 6573 656e Services Presen │ │ │ -000536c0: 7420 696e 2074 6865 2053 7973 7465 6d0a t in the System. │ │ │ -000536d0: 2020 2020 616e 7369 626c 652e 6275 696c ansible.buil │ │ │ -000536e0: 7469 6e2e 636f 6d6d 616e 643a 2073 7973 tin.command: sys │ │ │ -000536f0: 7465 6d63 746c 202d 7120 6c69 7374 2d75 temctl -q list-u │ │ │ -00053700: 6e69 742d 6669 6c65 7320 2d2d 7479 7065 nit-files --type │ │ │ -00053710: 2073 6572 7669 6365 0a20 2020 2072 6567 service. reg │ │ │ -00053720: 6973 7465 723a 2073 6572 7669 6365 5f65 ister: service_e │ │ │ -00053730: 7869 7374 730a 2020 2020 6368 616e 6765 xists. change │ │ │ -00053740: 645f 7768 656e 3a20 6661 6c73 650a 2020 d_when: false. │ │ │ -00053750: 2020 6661 696c 6564 5f77 6865 6e3a 2073 failed_when: s │ │ │ -00053760: 6572 7669 6365 5f65 7869 7374 732e 7263 ervice_exists.rc │ │ │ -00053770: 206e 6f74 2069 6e20 5b30 2c20 315d 0a20 not in [0, 1]. │ │ │ -00053780: 2020 2063 6865 636b 5f6d 6f64 653a 2066 check_mode: f │ │ │ -00053790: 616c 7365 0a0a 2020 2d20 6e61 6d65 3a20 alse.. - name: │ │ │ -000537a0: 4469 7361 626c 6520 7468 6520 4175 746f Disable the Auto │ │ │ -000537b0: 6d6f 756e 7465 7220 2d20 456e 7375 7265 mounter - Ensure │ │ │ -000537c0: 2061 7574 6f66 732e 7365 7276 6963 6520 autofs.service │ │ │ -000537d0: 6973 204d 6173 6b65 640a 2020 2020 616e is Masked. an │ │ │ -000537e0: 7369 626c 652e 6275 696c 7469 6e2e 7379 sible.builtin.sy │ │ │ -000537f0: 7374 656d 643a 0a20 2020 2020 206e 616d stemd:. nam │ │ │ -00053800: 653a 2061 7574 6f66 732e 7365 7276 6963 e: autofs.servic │ │ │ -00053810: 650a 2020 2020 2020 7374 6174 653a 2073 e. state: s │ │ │ -00053820: 746f 7070 6564 0a20 2020 2020 2065 6e61 topped. ena │ │ │ -00053830: 626c 6564 3a20 6661 6c73 650a 2020 2020 bled: false. │ │ │ -00053840: 2020 6d61 736b 6564 3a20 7472 7565 0a20 masked: true. │ │ │ -00053850: 2020 2077 6865 6e3a 2073 6572 7669 6365 when: service │ │ │ -00053860: 5f65 7869 7374 732e 7374 646f 7574 5f6c _exists.stdout_l │ │ │ -00053870: 696e 6573 2069 7320 7365 6172 6368 2822 ines is search(" │ │ │ -00053880: 6175 746f 6673 2e73 6572 7669 6365 222c autofs.service", │ │ │ -00053890: 206d 756c 7469 6c69 6e65 3d54 7275 6529 multiline=True) │ │ │ -000538a0: 0a0a 2020 2d20 6e61 6d65 3a20 556e 6974 .. - name: Unit │ │ │ -000538b0: 2053 6f63 6b65 7420 4578 6973 7473 202d Socket Exists - │ │ │ -000538c0: 2061 7574 6f66 732e 736f 636b 6574 0a20 autofs.socket. │ │ │ -000538d0: 2020 2061 6e73 6962 6c65 2e62 7569 6c74 ansible.built │ │ │ -000538e0: 696e 2e63 6f6d 6d61 6e64 3a20 7379 7374 in.command: syst │ │ │ -000538f0: 656d 6374 6c20 2d71 206c 6973 742d 756e emctl -q list-un │ │ │ -00053900: 6974 2d66 696c 6573 2061 7574 6f66 732e it-files autofs. │ │ │ -00053910: 736f 636b 6574 0a20 2020 2072 6567 6973 socket. regis │ │ │ -00053920: 7465 723a 2073 6f63 6b65 745f 6669 6c65 ter: socket_file │ │ │ -00053930: 5f65 7869 7374 730a 2020 2020 6368 616e _exists. chan │ │ │ -00053940: 6765 645f 7768 656e 3a20 6661 6c73 650a ged_when: false. │ │ │ -00053950: 2020 2020 6661 696c 6564 5f77 6865 6e3a failed_when: │ │ │ -00053960: 2073 6f63 6b65 745f 6669 6c65 5f65 7869 socket_file_exi │ │ │ -00053970: 7374 732e 7263 206e 6f74 2069 6e20 5b30 sts.rc not in [0 │ │ │ -00053980: 2c20 315d 0a20 2020 2063 6865 636b 5f6d , 1]. check_m │ │ │ -00053990: 6f64 653a 2066 616c 7365 0a0a 2020 2d20 ode: false.. - │ │ │ -000539a0: 6e61 6d65 3a20 4469 7361 626c 6520 7468 name: Disable th │ │ │ -000539b0: 6520 4175 746f 6d6f 756e 7465 7220 2d20 e Automounter - │ │ │ -000539c0: 4469 7361 626c 6520 536f 636b 6574 2061 Disable Socket a │ │ │ -000539d0: 7574 6f66 730a 2020 2020 616e 7369 626c utofs. ansibl │ │ │ -000539e0: 652e 6275 696c 7469 6e2e 7379 7374 656d e.builtin.system │ │ │ -000539f0: 643a 0a20 2020 2020 206e 616d 653a 2061 d:. name: a │ │ │ -00053a00: 7574 6f66 732e 736f 636b 6574 0a20 2020 utofs.socket. │ │ │ -00053a10: 2020 2065 6e61 626c 6564 3a20 6661 6c73 enabled: fals │ │ │ -00053a20: 650a 2020 2020 2020 7374 6174 653a 2073 e. state: s │ │ │ -00053a30: 746f 7070 6564 0a20 2020 2020 206d 6173 topped. mas │ │ │ -00053a40: 6b65 643a 2074 7275 650a 2020 2020 7768 ked: true. wh │ │ │ -00053a50: 656e 3a20 736f 636b 6574 5f66 696c 655f en: socket_file_ │ │ │ -00053a60: 6578 6973 7473 2e73 7464 6f75 745f 6c69 exists.stdout_li │ │ │ -00053a70: 6e65 7320 6973 2073 6561 7263 6828 2261 nes is search("a │ │ │ -00053a80: 7574 6f66 732e 736f 636b 6574 222c 206d utofs.socket", m │ │ │ -00053a90: 756c 7469 6c69 6e65 3d54 7275 6529 0a20 ultiline=True). │ │ │ -00053aa0: 2074 6167 733a 0a20 202d 204e 4953 542d tags:. - NIST- │ │ │ -00053ab0: 3830 302d 3137 312d 332e 342e 360a 2020 800-171-3.4.6. │ │ │ -00053ac0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d - NIST-800-53-CM │ │ │ -00053ad0: 2d36 2861 290a 2020 2d20 4e49 5354 2d38 -6(a). - NIST-8 │ │ │ -00053ae0: 3030 2d35 332d 434d 2d37 2861 290a 2020 00-53-CM-7(a). │ │ │ -00053af0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d - NIST-800-53-CM │ │ │ -00053b00: 2d37 2862 290a 2020 2d20 4e49 5354 2d38 -7(b). - NIST-8 │ │ │ -00053b10: 3030 2d35 332d 4d50 2d37 0a20 202d 2064 00-53-MP-7. - d │ │ │ -00053b20: 6973 6162 6c65 5f73 7472 6174 6567 790a isable_strategy. │ │ │ -00053b30: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869 - low_complexi │ │ │ -00053b40: 7479 0a20 202d 206c 6f77 5f64 6973 7275 ty. - low_disru │ │ │ -00053b50: 7074 696f 6e0a 2020 2d20 6d65 6469 756d ption. - medium │ │ │ -00053b60: 5f73 6576 6572 6974 790a 2020 2d20 6e6f _severity. - no │ │ │ -00053b70: 5f72 6562 6f6f 745f 6e65 6564 6564 0a20 _reboot_needed. │ │ │ -00053b80: 202d 2073 6572 7669 6365 5f61 7574 6f66 - service_autof │ │ │ -00053b90: 735f 6469 7361 626c 6564 0a20 202d 2073 s_disabled. - s │ │ │ -00053ba0: 7065 6369 616c 5f73 6572 7669 6365 5f62 pecial_service_b │ │ │ -00053bb0: 6c6f 636b 0a20 2077 6865 6e3a 2028 2022 lock. when: ( " │ │ │ -00053bc0: 6175 746f 6673 2220 696e 2061 6e73 6962 autofs" in ansib │ │ │ -00053bd0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765 le_facts.package │ │ │ -00053be0: 7320 616e 6420 226b 6572 6e65 6c22 2069 s and "kernel" i │ │ │ -00053bf0: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ -00053c00: 7061 636b 6167 6573 0a20 2020 2029 0a3c packages. ).< │ │ │ +00052ff0: 6f6e 2041 6e73 6962 6c65 2073 6e69 7070 on Ansible snipp │ │ │ +00053000: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
< │ │ │ +00053080: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ +00053090: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ +000530b0: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ +000530c0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ +000530e0: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ +00053100: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:disable

│ │ │ +00053130: 3c63 6f64 653e 2d20 6e61 6d65 3a20 4761  - name: Ga
│ │ │ +00053140: 7468 6572 2074 6865 2070 6163 6b61 6765  ther the package
│ │ │ +00053150: 2066 6163 7473 0a20 2070 6163 6b61 6765   facts.  package
│ │ │ +00053160: 5f66 6163 7473 3a0a 2020 2020 6d61 6e61  _facts:.    mana
│ │ │ +00053170: 6765 723a 2061 7574 6f0a 2020 7461 6773  ger: auto.  tags
│ │ │ +00053180: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d31  :.  - NIST-800-1
│ │ │ +00053190: 3731 2d33 2e34 2e36 0a20 202d 204e 4953  71-3.4.6.  - NIS
│ │ │ +000531a0: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ +000531b0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +000531c0: 2d43 4d2d 3728 6129 0a20 202d 204e 4953  -CM-7(a).  - NIS
│ │ │ +000531d0: 542d 3830 302d 3533 2d43 4d2d 3728 6229  T-800-53-CM-7(b)
│ │ │ +000531e0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +000531f0: 2d4d 502d 370a 2020 2d20 6469 7361 626c  -MP-7.  - disabl
│ │ │ +00053200: 655f 7374 7261 7465 6779 0a20 202d 206c  e_strategy.  - l
│ │ │ +00053210: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ +00053220: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ +00053230: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ +00053240: 7269 7479 0a20 202d 206e 6f5f 7265 626f  rity.  - no_rebo
│ │ │ +00053250: 6f74 5f6e 6565 6465 640a 2020 2d20 7365  ot_needed.  - se
│ │ │ +00053260: 7276 6963 655f 6175 746f 6673 5f64 6973  rvice_autofs_dis
│ │ │ +00053270: 6162 6c65 640a 0a2d 206e 616d 653a 2044  abled..- name: D
│ │ │ +00053280: 6973 6162 6c65 2074 6865 2041 7574 6f6d  isable the Autom
│ │ │ +00053290: 6f75 6e74 6572 202d 2044 6973 6162 6c65  ounter - Disable
│ │ │ +000532a0: 2073 6572 7669 6365 2061 7574 6f66 730a   service autofs.
│ │ │ +000532b0: 2020 626c 6f63 6b3a 0a0a 2020 2d20 6e61    block:..  - na
│ │ │ +000532c0: 6d65 3a20 4469 7361 626c 6520 7468 6520  me: Disable the 
│ │ │ +000532d0: 4175 746f 6d6f 756e 7465 7220 2d20 436f  Automounter - Co
│ │ │ +000532e0: 6c6c 6563 7420 7379 7374 656d 6420 5365  llect systemd Se
│ │ │ +000532f0: 7276 6963 6573 2050 7265 7365 6e74 2069  rvices Present i
│ │ │ +00053300: 6e20 7468 6520 5379 7374 656d 0a20 2020  n the System.   
│ │ │ +00053310: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ +00053320: 2e63 6f6d 6d61 6e64 3a20 7379 7374 656d  .command: system
│ │ │ +00053330: 6374 6c20 2d71 206c 6973 742d 756e 6974  ctl -q list-unit
│ │ │ +00053340: 2d66 696c 6573 202d 2d74 7970 6520 7365  -files --type se
│ │ │ +00053350: 7276 6963 650a 2020 2020 7265 6769 7374  rvice.    regist
│ │ │ +00053360: 6572 3a20 7365 7276 6963 655f 6578 6973  er: service_exis
│ │ │ +00053370: 7473 0a20 2020 2063 6861 6e67 6564 5f77  ts.    changed_w
│ │ │ +00053380: 6865 6e3a 2066 616c 7365 0a20 2020 2066  hen: false.    f
│ │ │ +00053390: 6169 6c65 645f 7768 656e 3a20 7365 7276  ailed_when: serv
│ │ │ +000533a0: 6963 655f 6578 6973 7473 2e72 6320 6e6f  ice_exists.rc no
│ │ │ +000533b0: 7420 696e 205b 302c 2031 5d0a 2020 2020  t in [0, 1].    
│ │ │ +000533c0: 6368 6563 6b5f 6d6f 6465 3a20 6661 6c73  check_mode: fals
│ │ │ +000533d0: 650a 0a20 202d 206e 616d 653a 2044 6973  e..  - name: Dis
│ │ │ +000533e0: 6162 6c65 2074 6865 2041 7574 6f6d 6f75  able the Automou
│ │ │ +000533f0: 6e74 6572 202d 2045 6e73 7572 6520 6175  nter - Ensure au
│ │ │ +00053400: 746f 6673 2e73 6572 7669 6365 2069 7320  tofs.service is 
│ │ │ +00053410: 4d61 736b 6564 0a20 2020 2061 6e73 6962  Masked.    ansib
│ │ │ +00053420: 6c65 2e62 7569 6c74 696e 2e73 7973 7465  le.builtin.syste
│ │ │ +00053430: 6d64 3a0a 2020 2020 2020 6e61 6d65 3a20  md:.      name: 
│ │ │ +00053440: 6175 746f 6673 2e73 6572 7669 6365 0a20  autofs.service. 
│ │ │ +00053450: 2020 2020 2073 7461 7465 3a20 7374 6f70       state: stop
│ │ │ +00053460: 7065 640a 2020 2020 2020 656e 6162 6c65  ped.      enable
│ │ │ +00053470: 643a 2066 616c 7365 0a20 2020 2020 206d  d: false.      m
│ │ │ +00053480: 6173 6b65 643a 2074 7275 650a 2020 2020  asked: true.    
│ │ │ +00053490: 7768 656e 3a20 7365 7276 6963 655f 6578  when: service_ex
│ │ │ +000534a0: 6973 7473 2e73 7464 6f75 745f 6c69 6e65  ists.stdout_line
│ │ │ +000534b0: 7320 6973 2073 6561 7263 6828 2261 7574  s is search("aut
│ │ │ +000534c0: 6f66 732e 7365 7276 6963 6522 2c20 6d75  ofs.service", mu
│ │ │ +000534d0: 6c74 696c 696e 653d 5472 7565 290a 0a20  ltiline=True).. 
│ │ │ +000534e0: 202d 206e 616d 653a 2055 6e69 7420 536f   - name: Unit So
│ │ │ +000534f0: 636b 6574 2045 7869 7374 7320 2d20 6175  cket Exists - au
│ │ │ +00053500: 746f 6673 2e73 6f63 6b65 740a 2020 2020  tofs.socket.    
│ │ │ +00053510: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ +00053520: 636f 6d6d 616e 643a 2073 7973 7465 6d63  command: systemc
│ │ │ +00053530: 746c 202d 7120 6c69 7374 2d75 6e69 742d  tl -q list-unit-
│ │ │ +00053540: 6669 6c65 7320 6175 746f 6673 2e73 6f63  files autofs.soc
│ │ │ +00053550: 6b65 740a 2020 2020 7265 6769 7374 6572  ket.    register
│ │ │ +00053560: 3a20 736f 636b 6574 5f66 696c 655f 6578  : socket_file_ex
│ │ │ +00053570: 6973 7473 0a20 2020 2063 6861 6e67 6564  ists.    changed
│ │ │ +00053580: 5f77 6865 6e3a 2066 616c 7365 0a20 2020  _when: false.   
│ │ │ +00053590: 2066 6169 6c65 645f 7768 656e 3a20 736f   failed_when: so
│ │ │ +000535a0: 636b 6574 5f66 696c 655f 6578 6973 7473  cket_file_exists
│ │ │ +000535b0: 2e72 6320 6e6f 7420 696e 205b 302c 2031  .rc not in [0, 1
│ │ │ +000535c0: 5d0a 2020 2020 6368 6563 6b5f 6d6f 6465  ].    check_mode
│ │ │ +000535d0: 3a20 6661 6c73 650a 0a20 202d 206e 616d  : false..  - nam
│ │ │ +000535e0: 653a 2044 6973 6162 6c65 2074 6865 2041  e: Disable the A
│ │ │ +000535f0: 7574 6f6d 6f75 6e74 6572 202d 2044 6973  utomounter - Dis
│ │ │ +00053600: 6162 6c65 2053 6f63 6b65 7420 6175 746f  able Socket auto
│ │ │ +00053610: 6673 0a20 2020 2061 6e73 6962 6c65 2e62  fs.    ansible.b
│ │ │ +00053620: 7569 6c74 696e 2e73 7973 7465 6d64 3a0a  uiltin.systemd:.
│ │ │ +00053630: 2020 2020 2020 6e61 6d65 3a20 6175 746f        name: auto
│ │ │ +00053640: 6673 2e73 6f63 6b65 740a 2020 2020 2020  fs.socket.      
│ │ │ +00053650: 656e 6162 6c65 643a 2066 616c 7365 0a20  enabled: false. 
│ │ │ +00053660: 2020 2020 2073 7461 7465 3a20 7374 6f70       state: stop
│ │ │ +00053670: 7065 640a 2020 2020 2020 6d61 736b 6564  ped.      masked
│ │ │ +00053680: 3a20 7472 7565 0a20 2020 2077 6865 6e3a  : true.    when:
│ │ │ +00053690: 2073 6f63 6b65 745f 6669 6c65 5f65 7869   socket_file_exi
│ │ │ +000536a0: 7374 732e 7374 646f 7574 5f6c 696e 6573  sts.stdout_lines
│ │ │ +000536b0: 2069 7320 7365 6172 6368 2822 6175 746f   is search("auto
│ │ │ +000536c0: 6673 2e73 6f63 6b65 7422 2c20 6d75 6c74  fs.socket", mult
│ │ │ +000536d0: 696c 696e 653d 5472 7565 290a 2020 7461  iline=True).  ta
│ │ │ +000536e0: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030  gs:.  - NIST-800
│ │ │ +000536f0: 2d31 3731 2d33 2e34 2e36 0a20 202d 204e  -171-3.4.6.  - N
│ │ │ +00053700: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ +00053710: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ +00053720: 3533 2d43 4d2d 3728 6129 0a20 202d 204e  53-CM-7(a).  - N
│ │ │ +00053730: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ +00053740: 6229 0a20 202d 204e 4953 542d 3830 302d  b).  - NIST-800-
│ │ │ +00053750: 3533 2d4d 502d 370a 2020 2d20 6469 7361  53-MP-7.  - disa
│ │ │ +00053760: 626c 655f 7374 7261 7465 6779 0a20 202d  ble_strategy.  -
│ │ │ +00053770: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ +00053780: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ +00053790: 6f6e 0a20 202d 206d 6564 6975 6d5f 7365  on.  - medium_se
│ │ │ +000537a0: 7665 7269 7479 0a20 202d 206e 6f5f 7265  verity.  - no_re
│ │ │ +000537b0: 626f 6f74 5f6e 6565 6465 640a 2020 2d20  boot_needed.  - 
│ │ │ +000537c0: 7365 7276 6963 655f 6175 746f 6673 5f64  service_autofs_d
│ │ │ +000537d0: 6973 6162 6c65 640a 2020 2d20 7370 6563  isabled.  - spec
│ │ │ +000537e0: 6961 6c5f 7365 7276 6963 655f 626c 6f63  ial_service_bloc
│ │ │ +000537f0: 6b0a 2020 7768 656e 3a20 2820 2261 7574  k.  when: ( "aut
│ │ │ +00053800: 6f66 7322 2069 6e20 616e 7369 626c 655f  ofs" in ansible_
│ │ │ +00053810: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ +00053820: 6e64 2022 6b65 726e 656c 2220 696e 2061  nd "kernel" in a
│ │ │ +00053830: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +00053840: 6b61 6765 730a 2020 2020 290a 3c2f 636f  kages.    ).
< │ │ │ +00053860: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ +00053870: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ +00053880: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ +00053890: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ +000538a0: 6433 3522 2074 6162 696e 6465 783d 2230 d35" tabindex="0 │ │ │ +000538b0: 2220 726f 6c65 3d22 6275 7474 6f6e 2220 " role="button" │ │ │ +000538c0: 6172 6961 2d65 7870 616e 6465 643d 2266 aria-expanded="f │ │ │ +000538d0: 616c 7365 2220 7469 746c 653d 2241 6374 alse" title="Act │ │ │ +000538e0: 6976 6174 6520 746f 2072 6576 6561 6c22 ivate to reveal" │ │ │ +000538f0: 2068 7265 663d 2223 2122 3e52 656d 6564 href="#!">Remed │ │ │ +00053900: 6961 7469 6f6e 2050 7570 7065 7420 736e iation Puppet sn │ │ │ +00053910: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ +00053950: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ +000539c0: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ +000539e0: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ +00053a10: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy: │ │ │ +00053a30: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
Comple │ │ │ +000539a0: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ +000539b0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ +000539f0: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +00053a00: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
enable
include │ │ │ +00053a50: 6469 7361 626c 655f 6175 746f 6673 0a0a disable_autofs.. │ │ │ +00053a60: 636c 6173 7320 6469 7361 626c 655f 6175 class disable_au │ │ │ +00053a70: 746f 6673 207b 0a20 2073 6572 7669 6365 tofs {. service │ │ │ +00053a80: 207b 2761 7574 6f66 7327 3a0a 2020 2020 {'autofs':. │ │ │ +00053a90: 656e 6162 6c65 203d 2667 743b 2066 616c enable => fal │ │ │ +00053aa0: 7365 2c0a 2020 2020 656e 7375 7265 203d se,. ensure = │ │ │ +00053ab0: 2667 743b 2027 7374 6f70 7065 6427 2c0a > 'stopped',. │ │ │ +00053ac0: 2020 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70 }.}.

Remediation │ │ │ +00053b80: 204f 5342 7569 6c64 2042 6c75 6570 7269 OSBuild Bluepri │ │ │ +00053b90: 6e74 2073 6e69 7070 6574 20e2 87b2 3c2f nt snippet ...

│ │ │ +00053be0: 0a5b 6375 7374 6f6d 697a 6174 696f 6e73  .[customizations
│ │ │ +00053bf0: 2e73 6572 7669 6365 735d 0a6d 6173 6b65  .services].maske
│ │ │ +00053c00: 6420 3d20 5b22 6175 746f 6673 225d 0a3c  d = ["autofs"].<
│ │ │  00053c10: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
Remedi │ │ │ -00056440: 6174 696f 6e20 4f53 4275 696c 6420 426c ation OSBuild Bl │ │ │ -00056450: 7565 7072 696e 7420 736e 6970 7065 7420 ueprint snippet │ │ │ -00056460: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...

<
│ │ │ -000564a0: 636f 6465 3e0a 5b63 7573 746f 6d69 7a61  code>.[customiza
│ │ │ -000564b0: 7469 6f6e 732e 7365 7276 6963 6573 5d0a  tions.services].
│ │ │ -000564c0: 6d61 736b 6564 203d 205b 2261 6272 7464  masked = ["abrtd
│ │ │ -000564d0: 225d 0a3c 2f63 6f64 653e 3c2f 7072 653e  "].
│ │ │ -000564e0: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation Pu │ │ │ -00056590: 7070 6574 2073 6e69 7070 6574 20e2 87b2 ppet snippet ... │ │ │ -000565a0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
< │ │ │ -00056670: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -00056680: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
i
│ │ │ -000566d0: 6e63 6c75 6465 2064 6973 6162 6c65 5f61  nclude disable_a
│ │ │ -000566e0: 6272 7464 0a0a 636c 6173 7320 6469 7361  brtd..class disa
│ │ │ -000566f0: 626c 655f 6162 7274 6420 7b0a 2020 7365  ble_abrtd {.  se
│ │ │ -00056700: 7276 6963 6520 7b27 6162 7274 6427 3a0a  rvice {'abrtd':.
│ │ │ -00056710: 2020 2020 656e 6162 6c65 203d 2667 743b      enable =>
│ │ │ -00056720: 2066 616c 7365 2c0a 2020 2020 656e 7375   false,.    ensu
│ │ │ -00056730: 7265 203d 2667 743b 2027 7374 6f70 7065  re => 'stoppe
│ │ │ -00056740: 6427 2c0a 2020 7d0a 7d0a 3c2f 636f 6465  d',.  }.}.
Remedia │ │ │ -00056800: 7469 6f6e 2041 6e73 6962 6c65 2073 6e69 tion Ansible sni │ │ │ -00056810: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -00056820: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
< │ │ │ -00056850: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ -00056860: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ -00056870: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ -00056880: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ -00056890: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >
Disruption:Strategy: │ │ │ -00056920: 3c74 643e 6469 7361 626c 653c 2f74 643e │ │ │ -00056930: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
Complexity:low
Disrup │ │ │ -00056650: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -00056660: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -000566a0: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ -000566b0: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Complex │ │ │ -000568a0: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ -000568b0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
low
Reboo │ │ │ -000568f0: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -00056900: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
disable
- name: │ │ │ -00056950: 4761 7468 6572 2074 6865 2070 6163 6b61 Gather the packa │ │ │ -00056960: 6765 2066 6163 7473 0a20 2070 6163 6b61 ge facts. packa │ │ │ -00056970: 6765 5f66 6163 7473 3a0a 2020 2020 6d61 ge_facts:. ma │ │ │ -00056980: 6e61 6765 723a 2061 7574 6f0a 2020 7461 nager: auto. ta │ │ │ -00056990: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030 gs:. - NIST-800 │ │ │ -000569a0: 2d35 332d 434d 2d36 2861 290a 2020 2d20 -53-CM-6(a). - │ │ │ -000569b0: 4e49 5354 2d38 3030 2d35 332d 434d 2d37 NIST-800-53-CM-7 │ │ │ -000569c0: 2861 290a 2020 2d20 6469 7361 626c 655f (a). - disable_ │ │ │ -000569d0: 7374 7261 7465 6779 0a20 202d 206c 6f77 strategy. - low │ │ │ -000569e0: 5f63 6f6d 706c 6578 6974 790a 2020 2d20 _complexity. - │ │ │ -000569f0: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20 low_disruption. │ │ │ -00056a00: 202d 206d 6564 6975 6d5f 7365 7665 7269 - medium_severi │ │ │ -00056a10: 7479 0a20 202d 206e 6f5f 7265 626f 6f74 ty. - no_reboot │ │ │ -00056a20: 5f6e 6565 6465 640a 2020 2d20 7365 7276 _needed. - serv │ │ │ -00056a30: 6963 655f 6162 7274 645f 6469 7361 626c ice_abrtd_disabl │ │ │ -00056a40: 6564 0a0a 2d20 6e61 6d65 3a20 4469 7361 ed..- name: Disa │ │ │ -00056a50: 626c 6520 4175 746f 6d61 7469 6320 4275 ble Automatic Bu │ │ │ -00056a60: 6720 5265 706f 7274 696e 6720 546f 6f6c g Reporting Tool │ │ │ -00056a70: 2028 6162 7274 6429 202d 2044 6973 6162 (abrtd) - Disab │ │ │ -00056a80: 6c65 2073 6572 7669 6365 2061 6272 7464 le service abrtd │ │ │ -00056a90: 0a20 2062 6c6f 636b 3a0a 0a20 202d 206e . block:.. - n │ │ │ -00056aa0: 616d 653a 2044 6973 6162 6c65 2041 7574 ame: Disable Aut │ │ │ -00056ab0: 6f6d 6174 6963 2042 7567 2052 6570 6f72 omatic Bug Repor │ │ │ -00056ac0: 7469 6e67 2054 6f6f 6c20 2861 6272 7464 ting Tool (abrtd │ │ │ -00056ad0: 2920 2d20 436f 6c6c 6563 7420 7379 7374 ) - Collect syst │ │ │ -00056ae0: 656d 6420 5365 7276 6963 6573 0a20 2020 emd Services. │ │ │ -00056af0: 2020 2050 7265 7365 6e74 2069 6e20 7468 Present in th │ │ │ -00056b00: 6520 5379 7374 656d 0a20 2020 2061 6e73 e System. ans │ │ │ -00056b10: 6962 6c65 2e62 7569 6c74 696e 2e63 6f6d ible.builtin.com │ │ │ -00056b20: 6d61 6e64 3a20 7379 7374 656d 6374 6c20 mand: systemctl │ │ │ -00056b30: 2d71 206c 6973 742d 756e 6974 2d66 696c -q list-unit-fil │ │ │ -00056b40: 6573 202d 2d74 7970 6520 7365 7276 6963 es --type servic │ │ │ -00056b50: 650a 2020 2020 7265 6769 7374 6572 3a20 e. register: │ │ │ -00056b60: 7365 7276 6963 655f 6578 6973 7473 0a20 service_exists. │ │ │ -00056b70: 2020 2063 6861 6e67 6564 5f77 6865 6e3a changed_when: │ │ │ -00056b80: 2066 616c 7365 0a20 2020 2066 6169 6c65 false. faile │ │ │ -00056b90: 645f 7768 656e 3a20 7365 7276 6963 655f d_when: service_ │ │ │ -00056ba0: 6578 6973 7473 2e72 6320 6e6f 7420 696e exists.rc not in │ │ │ -00056bb0: 205b 302c 2031 5d0a 2020 2020 6368 6563 [0, 1]. chec │ │ │ -00056bc0: 6b5f 6d6f 6465 3a20 6661 6c73 650a 0a20 k_mode: false.. │ │ │ -00056bd0: 202d 206e 616d 653a 2044 6973 6162 6c65 - name: Disable │ │ │ -00056be0: 2041 7574 6f6d 6174 6963 2042 7567 2052 Automatic Bug R │ │ │ -00056bf0: 6570 6f72 7469 6e67 2054 6f6f 6c20 2861 eporting Tool (a │ │ │ -00056c00: 6272 7464 2920 2d20 456e 7375 7265 2061 brtd) - Ensure a │ │ │ -00056c10: 6272 7464 2e73 6572 7669 6365 2069 7320 brtd.service is │ │ │ -00056c20: 4d61 736b 6564 0a20 2020 2061 6e73 6962 Masked. ansib │ │ │ -00056c30: 6c65 2e62 7569 6c74 696e 2e73 7973 7465 le.builtin.syste │ │ │ -00056c40: 6d64 3a0a 2020 2020 2020 6e61 6d65 3a20 md:. name: │ │ │ -00056c50: 6162 7274 642e 7365 7276 6963 650a 2020 abrtd.service. │ │ │ -00056c60: 2020 2020 7374 6174 653a 2073 746f 7070 state: stopp │ │ │ -00056c70: 6564 0a20 2020 2020 2065 6e61 626c 6564 ed. enabled │ │ │ -00056c80: 3a20 6661 6c73 650a 2020 2020 2020 6d61 : false. ma │ │ │ -00056c90: 736b 6564 3a20 7472 7565 0a20 2020 2077 sked: true. w │ │ │ -00056ca0: 6865 6e3a 2073 6572 7669 6365 5f65 7869 hen: service_exi │ │ │ -00056cb0: 7374 732e 7374 646f 7574 5f6c 696e 6573 sts.stdout_lines │ │ │ -00056cc0: 2069 7320 7365 6172 6368 2822 6162 7274 is search("abrt │ │ │ -00056cd0: 642e 7365 7276 6963 6522 2c20 6d75 6c74 d.service", mult │ │ │ -00056ce0: 696c 696e 653d 5472 7565 290a 0a20 202d iline=True).. - │ │ │ -00056cf0: 206e 616d 653a 2055 6e69 7420 536f 636b name: Unit Sock │ │ │ -00056d00: 6574 2045 7869 7374 7320 2d20 6162 7274 et Exists - abrt │ │ │ -00056d10: 642e 736f 636b 6574 0a20 2020 2061 6e73 d.socket. ans │ │ │ -00056d20: 6962 6c65 2e62 7569 6c74 696e 2e63 6f6d ible.builtin.com │ │ │ -00056d30: 6d61 6e64 3a20 7379 7374 656d 6374 6c20 mand: systemctl │ │ │ -00056d40: 2d71 206c 6973 742d 756e 6974 2d66 696c -q list-unit-fil │ │ │ -00056d50: 6573 2061 6272 7464 2e73 6f63 6b65 740a es abrtd.socket. │ │ │ -00056d60: 2020 2020 7265 6769 7374 6572 3a20 736f register: so │ │ │ -00056d70: 636b 6574 5f66 696c 655f 6578 6973 7473 cket_file_exists │ │ │ -00056d80: 0a20 2020 2063 6861 6e67 6564 5f77 6865 . changed_whe │ │ │ -00056d90: 6e3a 2066 616c 7365 0a20 2020 2066 6169 n: false. fai │ │ │ -00056da0: 6c65 645f 7768 656e 3a20 736f 636b 6574 led_when: socket │ │ │ -00056db0: 5f66 696c 655f 6578 6973 7473 2e72 6320 _file_exists.rc │ │ │ -00056dc0: 6e6f 7420 696e 205b 302c 2031 5d0a 2020 not in [0, 1]. │ │ │ -00056dd0: 2020 6368 6563 6b5f 6d6f 6465 3a20 6661 check_mode: fa │ │ │ -00056de0: 6c73 650a 0a20 202d 206e 616d 653a 2044 lse.. - name: D │ │ │ -00056df0: 6973 6162 6c65 2041 7574 6f6d 6174 6963 isable Automatic │ │ │ -00056e00: 2042 7567 2052 6570 6f72 7469 6e67 2054 Bug Reporting T │ │ │ -00056e10: 6f6f 6c20 2861 6272 7464 2920 2d20 4469 ool (abrtd) - Di │ │ │ -00056e20: 7361 626c 6520 536f 636b 6574 2061 6272 sable Socket abr │ │ │ -00056e30: 7464 0a20 2020 2061 6e73 6962 6c65 2e62 td. ansible.b │ │ │ -00056e40: 7569 6c74 696e 2e73 7973 7465 6d64 3a0a uiltin.systemd:. │ │ │ -00056e50: 2020 2020 2020 6e61 6d65 3a20 6162 7274 name: abrt │ │ │ -00056e60: 642e 736f 636b 6574 0a20 2020 2020 2065 d.socket. e │ │ │ -00056e70: 6e61 626c 6564 3a20 6661 6c73 650a 2020 nabled: false. │ │ │ -00056e80: 2020 2020 7374 6174 653a 2073 746f 7070 state: stopp │ │ │ -00056e90: 6564 0a20 2020 2020 206d 6173 6b65 643a ed. masked: │ │ │ -00056ea0: 2074 7275 650a 2020 2020 7768 656e 3a20 true. when: │ │ │ -00056eb0: 736f 636b 6574 5f66 696c 655f 6578 6973 socket_file_exis │ │ │ -00056ec0: 7473 2e73 7464 6f75 745f 6c69 6e65 7320 ts.stdout_lines │ │ │ -00056ed0: 6973 2073 6561 7263 6828 2261 6272 7464 is search("abrtd │ │ │ -00056ee0: 2e73 6f63 6b65 7422 2c20 6d75 6c74 696c .socket", multil │ │ │ -00056ef0: 696e 653d 5472 7565 290a 2020 7461 6773 ine=True). tags │ │ │ -00056f00: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35 :. - NIST-800-5 │ │ │ -00056f10: 332d 434d 2d36 2861 290a 2020 2d20 4e49 3-CM-6(a). - NI │ │ │ -00056f20: 5354 2d38 3030 2d35 332d 434d 2d37 2861 ST-800-53-CM-7(a │ │ │ -00056f30: 290a 2020 2d20 6469 7361 626c 655f 7374 ). - disable_st │ │ │ -00056f40: 7261 7465 6779 0a20 202d 206c 6f77 5f63 rategy. - low_c │ │ │ -00056f50: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f omplexity. - lo │ │ │ -00056f60: 775f 6469 7372 7570 7469 6f6e 0a20 202d w_disruption. - │ │ │ -00056f70: 206d 6564 6975 6d5f 7365 7665 7269 7479 medium_severity │ │ │ -00056f80: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e . - no_reboot_n │ │ │ -00056f90: 6565 6465 640a 2020 2d20 7365 7276 6963 eeded. - servic │ │ │ -00056fa0: 655f 6162 7274 645f 6469 7361 626c 6564 e_abrtd_disabled │ │ │ -00056fb0: 0a20 202d 2073 7065 6369 616c 5f73 6572 . - special_ser │ │ │ -00056fc0: 7669 6365 5f62 6c6f 636b 0a20 2077 6865 vice_block. whe │ │ │ -00056fd0: 6e3a 2027 226b 6572 6e65 6c22 2069 6e20 n: '"kernel" in │ │ │ -00056fe0: 616e 7369 626c 655f 6661 6374 732e 7061 ansible_facts.pa │ │ │ -00056ff0: 636b 6167 6573 270a 3c2f 636f 6465 3e3c ckages'.< │ │ │ +00056440: 6174 696f 6e20 416e 7369 626c 6520 736e ation Ansible sn │ │ │ +00056450: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ +00056490: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ +00056500: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ +00056520: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ +00056550: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
Comple │ │ │ +000564e0: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ +000564f0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ +00056530: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +00056540: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
disable

- name: │ │ │ +00056590: 2047 6174 6865 7220 7468 6520 7061 636b Gather the pack │ │ │ +000565a0: 6167 6520 6661 6374 730a 2020 7061 636b age facts. pack │ │ │ +000565b0: 6167 655f 6661 6374 733a 0a20 2020 206d age_facts:. m │ │ │ +000565c0: 616e 6167 6572 3a20 6175 746f 0a20 2074 anager: auto. t │ │ │ +000565d0: 6167 733a 0a20 202d 204e 4953 542d 3830 ags:. - NIST-80 │ │ │ +000565e0: 302d 3533 2d43 4d2d 3628 6129 0a20 202d 0-53-CM-6(a). - │ │ │ +000565f0: 204e 4953 542d 3830 302d 3533 2d43 4d2d NIST-800-53-CM- │ │ │ +00056600: 3728 6129 0a20 202d 2064 6973 6162 6c65 7(a). - disable │ │ │ +00056610: 5f73 7472 6174 6567 790a 2020 2d20 6c6f _strategy. - lo │ │ │ +00056620: 775f 636f 6d70 6c65 7869 7479 0a20 202d w_complexity. - │ │ │ +00056630: 206c 6f77 5f64 6973 7275 7074 696f 6e0a low_disruption. │ │ │ +00056640: 2020 2d20 6d65 6469 756d 5f73 6576 6572 - medium_sever │ │ │ +00056650: 6974 790a 2020 2d20 6e6f 5f72 6562 6f6f ity. - no_reboo │ │ │ +00056660: 745f 6e65 6564 6564 0a20 202d 2073 6572 t_needed. - ser │ │ │ +00056670: 7669 6365 5f61 6272 7464 5f64 6973 6162 vice_abrtd_disab │ │ │ +00056680: 6c65 640a 0a2d 206e 616d 653a 2044 6973 led..- name: Dis │ │ │ +00056690: 6162 6c65 2041 7574 6f6d 6174 6963 2042 able Automatic B │ │ │ +000566a0: 7567 2052 6570 6f72 7469 6e67 2054 6f6f ug Reporting Too │ │ │ +000566b0: 6c20 2861 6272 7464 2920 2d20 4469 7361 l (abrtd) - Disa │ │ │ +000566c0: 626c 6520 7365 7276 6963 6520 6162 7274 ble service abrt │ │ │ +000566d0: 640a 2020 626c 6f63 6b3a 0a0a 2020 2d20 d. block:.. - │ │ │ +000566e0: 6e61 6d65 3a20 4469 7361 626c 6520 4175 name: Disable Au │ │ │ +000566f0: 746f 6d61 7469 6320 4275 6720 5265 706f tomatic Bug Repo │ │ │ +00056700: 7274 696e 6720 546f 6f6c 2028 6162 7274 rting Tool (abrt │ │ │ +00056710: 6429 202d 2043 6f6c 6c65 6374 2073 7973 d) - Collect sys │ │ │ +00056720: 7465 6d64 2053 6572 7669 6365 730a 2020 temd Services. │ │ │ +00056730: 2020 2020 5072 6573 656e 7420 696e 2074 Present in t │ │ │ +00056740: 6865 2053 7973 7465 6d0a 2020 2020 616e he System. an │ │ │ +00056750: 7369 626c 652e 6275 696c 7469 6e2e 636f sible.builtin.co │ │ │ +00056760: 6d6d 616e 643a 2073 7973 7465 6d63 746c mmand: systemctl │ │ │ +00056770: 202d 7120 6c69 7374 2d75 6e69 742d 6669 -q list-unit-fi │ │ │ +00056780: 6c65 7320 2d2d 7479 7065 2073 6572 7669 les --type servi │ │ │ +00056790: 6365 0a20 2020 2072 6567 6973 7465 723a ce. register: │ │ │ +000567a0: 2073 6572 7669 6365 5f65 7869 7374 730a service_exists. │ │ │ +000567b0: 2020 2020 6368 616e 6765 645f 7768 656e changed_when │ │ │ +000567c0: 3a20 6661 6c73 650a 2020 2020 6661 696c : false. fail │ │ │ +000567d0: 6564 5f77 6865 6e3a 2073 6572 7669 6365 ed_when: service │ │ │ +000567e0: 5f65 7869 7374 732e 7263 206e 6f74 2069 _exists.rc not i │ │ │ +000567f0: 6e20 5b30 2c20 315d 0a20 2020 2063 6865 n [0, 1]. che │ │ │ +00056800: 636b 5f6d 6f64 653a 2066 616c 7365 0a0a ck_mode: false.. │ │ │ +00056810: 2020 2d20 6e61 6d65 3a20 4469 7361 626c - name: Disabl │ │ │ +00056820: 6520 4175 746f 6d61 7469 6320 4275 6720 e Automatic Bug │ │ │ +00056830: 5265 706f 7274 696e 6720 546f 6f6c 2028 Reporting Tool ( │ │ │ +00056840: 6162 7274 6429 202d 2045 6e73 7572 6520 abrtd) - Ensure │ │ │ +00056850: 6162 7274 642e 7365 7276 6963 6520 6973 abrtd.service is │ │ │ +00056860: 204d 6173 6b65 640a 2020 2020 616e 7369 Masked. ansi │ │ │ +00056870: 626c 652e 6275 696c 7469 6e2e 7379 7374 ble.builtin.syst │ │ │ +00056880: 656d 643a 0a20 2020 2020 206e 616d 653a emd:. name: │ │ │ +00056890: 2061 6272 7464 2e73 6572 7669 6365 0a20 abrtd.service. │ │ │ +000568a0: 2020 2020 2073 7461 7465 3a20 7374 6f70 state: stop │ │ │ +000568b0: 7065 640a 2020 2020 2020 656e 6162 6c65 ped. enable │ │ │ +000568c0: 643a 2066 616c 7365 0a20 2020 2020 206d d: false. m │ │ │ +000568d0: 6173 6b65 643a 2074 7275 650a 2020 2020 asked: true. │ │ │ +000568e0: 7768 656e 3a20 7365 7276 6963 655f 6578 when: service_ex │ │ │ +000568f0: 6973 7473 2e73 7464 6f75 745f 6c69 6e65 ists.stdout_line │ │ │ +00056900: 7320 6973 2073 6561 7263 6828 2261 6272 s is search("abr │ │ │ +00056910: 7464 2e73 6572 7669 6365 222c 206d 756c td.service", mul │ │ │ +00056920: 7469 6c69 6e65 3d54 7275 6529 0a0a 2020 tiline=True).. │ │ │ +00056930: 2d20 6e61 6d65 3a20 556e 6974 2053 6f63 - name: Unit Soc │ │ │ +00056940: 6b65 7420 4578 6973 7473 202d 2061 6272 ket Exists - abr │ │ │ +00056950: 7464 2e73 6f63 6b65 740a 2020 2020 616e td.socket. an │ │ │ +00056960: 7369 626c 652e 6275 696c 7469 6e2e 636f sible.builtin.co │ │ │ +00056970: 6d6d 616e 643a 2073 7973 7465 6d63 746c mmand: systemctl │ │ │ +00056980: 202d 7120 6c69 7374 2d75 6e69 742d 6669 -q list-unit-fi │ │ │ +00056990: 6c65 7320 6162 7274 642e 736f 636b 6574 les abrtd.socket │ │ │ +000569a0: 0a20 2020 2072 6567 6973 7465 723a 2073 . register: s │ │ │ +000569b0: 6f63 6b65 745f 6669 6c65 5f65 7869 7374 ocket_file_exist │ │ │ +000569c0: 730a 2020 2020 6368 616e 6765 645f 7768 s. changed_wh │ │ │ +000569d0: 656e 3a20 6661 6c73 650a 2020 2020 6661 en: false. fa │ │ │ +000569e0: 696c 6564 5f77 6865 6e3a 2073 6f63 6b65 iled_when: socke │ │ │ +000569f0: 745f 6669 6c65 5f65 7869 7374 732e 7263 t_file_exists.rc │ │ │ +00056a00: 206e 6f74 2069 6e20 5b30 2c20 315d 0a20 not in [0, 1]. │ │ │ +00056a10: 2020 2063 6865 636b 5f6d 6f64 653a 2066 check_mode: f │ │ │ +00056a20: 616c 7365 0a0a 2020 2d20 6e61 6d65 3a20 alse.. - name: │ │ │ +00056a30: 4469 7361 626c 6520 4175 746f 6d61 7469 Disable Automati │ │ │ +00056a40: 6320 4275 6720 5265 706f 7274 696e 6720 c Bug Reporting │ │ │ +00056a50: 546f 6f6c 2028 6162 7274 6429 202d 2044 Tool (abrtd) - D │ │ │ +00056a60: 6973 6162 6c65 2053 6f63 6b65 7420 6162 isable Socket ab │ │ │ +00056a70: 7274 640a 2020 2020 616e 7369 626c 652e rtd. ansible. │ │ │ +00056a80: 6275 696c 7469 6e2e 7379 7374 656d 643a builtin.systemd: │ │ │ +00056a90: 0a20 2020 2020 206e 616d 653a 2061 6272 . name: abr │ │ │ +00056aa0: 7464 2e73 6f63 6b65 740a 2020 2020 2020 td.socket. │ │ │ +00056ab0: 656e 6162 6c65 643a 2066 616c 7365 0a20 enabled: false. │ │ │ +00056ac0: 2020 2020 2073 7461 7465 3a20 7374 6f70 state: stop │ │ │ +00056ad0: 7065 640a 2020 2020 2020 6d61 736b 6564 ped. masked │ │ │ +00056ae0: 3a20 7472 7565 0a20 2020 2077 6865 6e3a : true. when: │ │ │ +00056af0: 2073 6f63 6b65 745f 6669 6c65 5f65 7869 socket_file_exi │ │ │ +00056b00: 7374 732e 7374 646f 7574 5f6c 696e 6573 sts.stdout_lines │ │ │ +00056b10: 2069 7320 7365 6172 6368 2822 6162 7274 is search("abrt │ │ │ +00056b20: 642e 736f 636b 6574 222c 206d 756c 7469 d.socket", multi │ │ │ +00056b30: 6c69 6e65 3d54 7275 6529 0a20 2074 6167 line=True). tag │ │ │ +00056b40: 733a 0a20 202d 204e 4953 542d 3830 302d s:. - NIST-800- │ │ │ +00056b50: 3533 2d43 4d2d 3628 6129 0a20 202d 204e 53-CM-6(a). - N │ │ │ +00056b60: 4953 542d 3830 302d 3533 2d43 4d2d 3728 IST-800-53-CM-7( │ │ │ +00056b70: 6129 0a20 202d 2064 6973 6162 6c65 5f73 a). - disable_s │ │ │ +00056b80: 7472 6174 6567 790a 2020 2d20 6c6f 775f trategy. - low_ │ │ │ +00056b90: 636f 6d70 6c65 7869 7479 0a20 202d 206c complexity. - l │ │ │ +00056ba0: 6f77 5f64 6973 7275 7074 696f 6e0a 2020 ow_disruption. │ │ │ +00056bb0: 2d20 6d65 6469 756d 5f73 6576 6572 6974 - medium_severit │ │ │ +00056bc0: 790a 2020 2d20 6e6f 5f72 6562 6f6f 745f y. - no_reboot_ │ │ │ +00056bd0: 6e65 6564 6564 0a20 202d 2073 6572 7669 needed. - servi │ │ │ +00056be0: 6365 5f61 6272 7464 5f64 6973 6162 6c65 ce_abrtd_disable │ │ │ +00056bf0: 640a 2020 2d20 7370 6563 6961 6c5f 7365 d. - special_se │ │ │ +00056c00: 7276 6963 655f 626c 6f63 6b0a 2020 7768 rvice_block. wh │ │ │ +00056c10: 656e 3a20 2722 6b65 726e 656c 2220 696e en: '"kernel" in │ │ │ +00056c20: 2061 6e73 6962 6c65 5f66 6163 7473 2e70 ansible_facts.p │ │ │ +00056c30: 6163 6b61 6765 7327 0a3c 2f63 6f64 653e ackages'. │ │ │ +00056c40: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063

Remediat │ │ │ +00056cf0: 696f 6e20 5075 7070 6574 2073 6e69 7070 ion Puppet snipp │ │ │ +00056d00: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
< │ │ │ +00056d80: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ +00056d90: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ +00056db0: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ +00056dc0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ +00056de0: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ +00056e00: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:enable
<
│ │ │ +00056e30: 636f 6465 3e69 6e63 6c75 6465 2064 6973  code>include dis
│ │ │ +00056e40: 6162 6c65 5f61 6272 7464 0a0a 636c 6173  able_abrtd..clas
│ │ │ +00056e50: 7320 6469 7361 626c 655f 6162 7274 6420  s disable_abrtd 
│ │ │ +00056e60: 7b0a 2020 7365 7276 6963 6520 7b27 6162  {.  service {'ab
│ │ │ +00056e70: 7274 6427 3a0a 2020 2020 656e 6162 6c65  rtd':.    enable
│ │ │ +00056e80: 203d 2667 743b 2066 616c 7365 2c0a 2020   => false,.  
│ │ │ +00056e90: 2020 656e 7375 7265 203d 2667 743b 2027    ensure => '
│ │ │ +00056ea0: 7374 6f70 7065 6427 2c0a 2020 7d0a 7d0a  stopped',.  }.}.
│ │ │ +00056eb0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
R │ │ │ +00056f60: 656d 6564 6961 7469 6f6e 204f 5342 7569 emediation OSBui │ │ │ +00056f70: 6c64 2042 6c75 6570 7269 6e74 2073 6e69 ld Blueprint sni │ │ │ +00056f80: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ +00056f90: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
< │ │ │ +00056fc0: 7072 653e 3c63 6f64 653e 0a5b 6375 7374 pre>.[cust │ │ │ +00056fd0: 6f6d 697a 6174 696f 6e73 2e73 6572 7669 omizations.servi │ │ │ +00056fe0: 6365 735d 0a6d 6173 6b65 6420 3d20 5b22 ces].masked = [" │ │ │ +00056ff0: 6162 7274 6422 5d0a 3c2f 636f 6465 3e3c abrtd"].< │ │ │ 00057000: 2f70 7265 3e3c 2f64 6976 3e3c 2f64 6976 /pre>
│ │ │ 00057030: 3c2f 7472 3e3c 7472 2064 6174 612d 7474 Remediati │ │ │ -00057f90: 6f6e 204f 5342 7569 6c64 2042 6c75 6570 on OSBuild Bluep │ │ │ -00057fa0: 7269 6e74 2073 6e69 7070 6574 20e2 87b2 rint snippet ... │ │ │ -00057fb0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
.[customizatio
│ │ │ -00058000: 6e73 2e73 6572 7669 6365 735d 0a6d 6173  ns.services].mas
│ │ │ -00058010: 6b65 6420 3d20 5b22 6e74 7064 6174 6522  ked = ["ntpdate"
│ │ │ -00058020: 5d0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  ].
< │ │ │ -00058030: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Pup │ │ │ -000580e0: 7065 7420 736e 6970 7065 7420 e287 b23c pet snippet ...< │ │ │ -000580f0: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
│ │ │ -00058180: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
in
│ │ │ -00058220: 636c 7564 6520 6469 7361 626c 655f 6e74  clude disable_nt
│ │ │ -00058230: 7064 6174 650a 0a63 6c61 7373 2064 6973  pdate..class dis
│ │ │ -00058240: 6162 6c65 5f6e 7470 6461 7465 207b 0a20  able_ntpdate {. 
│ │ │ -00058250: 2073 6572 7669 6365 207b 276e 7470 6461   service {'ntpda
│ │ │ -00058260: 7465 273a 0a20 2020 2065 6e61 626c 6520  te':.    enable 
│ │ │ -00058270: 3d26 6774 3b20 6661 6c73 652c 0a20 2020  => false,.   
│ │ │ -00058280: 2065 6e73 7572 6520 3d26 6774 3b20 2773   ensure => 's
│ │ │ -00058290: 746f 7070 6564 272c 0a20 207d 0a7d 0a3c  topped',.  }.}.<
│ │ │ -000582a0: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
Re │ │ │ -00058350: 6d65 6469 6174 696f 6e20 416e 7369 626c mediation Ansibl │ │ │ -00058360: 6520 736e 6970 7065 7420 e287 b23c 2f61 e snippet ...
│ │ │ -00058170: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -000581a0: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -000581b0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -000581f0: 793a 3c2f 7468 3e3c 7464 3e65 6e61 626c y:enabl │ │ │ -00058200: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
low< │ │ │ -00058410: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ -00058460: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
- n
│ │ │ -000584a0: 616d 653a 2047 6174 6865 7220 7468 6520  ame: Gather the 
│ │ │ -000584b0: 7061 636b 6167 6520 6661 6374 730a 2020  package facts.  
│ │ │ -000584c0: 7061 636b 6167 655f 6661 6374 733a 0a20  package_facts:. 
│ │ │ -000584d0: 2020 206d 616e 6167 6572 3a20 6175 746f     manager: auto
│ │ │ -000584e0: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ -000584f0: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ -00058500: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -00058510: 2d43 4d2d 3728 6129 0a20 202d 204e 4953  -CM-7(a).  - NIS
│ │ │ -00058520: 542d 3830 302d 3533 2d43 4d2d 3728 6229  T-800-53-CM-7(b)
│ │ │ -00058530: 0a20 202d 2064 6973 6162 6c65 5f73 7472  .  - disable_str
│ │ │ -00058540: 6174 6567 790a 2020 2d20 6c6f 775f 636f  ategy.  - low_co
│ │ │ -00058550: 6d70 6c65 7869 7479 0a20 202d 206c 6f77  mplexity.  - low
│ │ │ -00058560: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ -00058570: 6c6f 775f 7365 7665 7269 7479 0a20 202d  low_severity.  -
│ │ │ -00058580: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ -00058590: 640a 2020 2d20 7365 7276 6963 655f 6e74  d.  - service_nt
│ │ │ -000585a0: 7064 6174 655f 6469 7361 626c 6564 0a0a  pdate_disabled..
│ │ │ -000585b0: 2d20 6e61 6d65 3a20 4469 7361 626c 6520  - name: Disable 
│ │ │ -000585c0: 6e74 7064 6174 6520 5365 7276 6963 6520  ntpdate Service 
│ │ │ -000585d0: 286e 7470 6461 7465 2920 2d20 4469 7361  (ntpdate) - Disa
│ │ │ -000585e0: 626c 6520 7365 7276 6963 6520 6e74 7064  ble service ntpd
│ │ │ -000585f0: 6174 650a 2020 626c 6f63 6b3a 0a0a 2020  ate.  block:..  
│ │ │ -00058600: 2d20 6e61 6d65 3a20 4469 7361 626c 6520  - name: Disable 
│ │ │ -00058610: 6e74 7064 6174 6520 5365 7276 6963 6520  ntpdate Service 
│ │ │ -00058620: 286e 7470 6461 7465 2920 2d20 436f 6c6c  (ntpdate) - Coll
│ │ │ -00058630: 6563 7420 7379 7374 656d 6420 5365 7276  ect systemd Serv
│ │ │ -00058640: 6963 6573 2050 7265 7365 6e74 2069 6e0a  ices Present in.
│ │ │ -00058650: 2020 2020 2020 7468 6520 5379 7374 656d        the System
│ │ │ -00058660: 0a20 2020 2061 6e73 6962 6c65 2e62 7569  .    ansible.bui
│ │ │ -00058670: 6c74 696e 2e63 6f6d 6d61 6e64 3a20 7379  ltin.command: sy
│ │ │ -00058680: 7374 656d 6374 6c20 2d71 206c 6973 742d  stemctl -q list-
│ │ │ -00058690: 756e 6974 2d66 696c 6573 202d 2d74 7970  unit-files --typ
│ │ │ -000586a0: 6520 7365 7276 6963 650a 2020 2020 7265  e service.    re
│ │ │ -000586b0: 6769 7374 6572 3a20 7365 7276 6963 655f  gister: service_
│ │ │ -000586c0: 6578 6973 7473 0a20 2020 2063 6861 6e67  exists.    chang
│ │ │ -000586d0: 6564 5f77 6865 6e3a 2066 616c 7365 0a20  ed_when: false. 
│ │ │ -000586e0: 2020 2066 6169 6c65 645f 7768 656e 3a20     failed_when: 
│ │ │ -000586f0: 7365 7276 6963 655f 6578 6973 7473 2e72  service_exists.r
│ │ │ -00058700: 6320 6e6f 7420 696e 205b 302c 2031 5d0a  c not in [0, 1].
│ │ │ -00058710: 2020 2020 6368 6563 6b5f 6d6f 6465 3a20      check_mode: 
│ │ │ -00058720: 6661 6c73 650a 0a20 202d 206e 616d 653a  false..  - name:
│ │ │ -00058730: 2044 6973 6162 6c65 206e 7470 6461 7465   Disable ntpdate
│ │ │ -00058740: 2053 6572 7669 6365 2028 6e74 7064 6174   Service (ntpdat
│ │ │ -00058750: 6529 202d 2045 6e73 7572 6520 6e74 7064  e) - Ensure ntpd
│ │ │ -00058760: 6174 652e 7365 7276 6963 6520 6973 204d  ate.service is M
│ │ │ -00058770: 6173 6b65 640a 2020 2020 616e 7369 626c  asked.    ansibl
│ │ │ -00058780: 652e 6275 696c 7469 6e2e 7379 7374 656d  e.builtin.system
│ │ │ -00058790: 643a 0a20 2020 2020 206e 616d 653a 206e  d:.      name: n
│ │ │ -000587a0: 7470 6461 7465 2e73 6572 7669 6365 0a20  tpdate.service. 
│ │ │ -000587b0: 2020 2020 2073 7461 7465 3a20 7374 6f70       state: stop
│ │ │ -000587c0: 7065 640a 2020 2020 2020 656e 6162 6c65  ped.      enable
│ │ │ -000587d0: 643a 2066 616c 7365 0a20 2020 2020 206d  d: false.      m
│ │ │ -000587e0: 6173 6b65 643a 2074 7275 650a 2020 2020  asked: true.    
│ │ │ -000587f0: 7768 656e 3a20 7365 7276 6963 655f 6578  when: service_ex
│ │ │ -00058800: 6973 7473 2e73 7464 6f75 745f 6c69 6e65  ists.stdout_line
│ │ │ -00058810: 7320 6973 2073 6561 7263 6828 226e 7470  s is search("ntp
│ │ │ -00058820: 6461 7465 2e73 6572 7669 6365 222c 206d  date.service", m
│ │ │ -00058830: 756c 7469 6c69 6e65 3d54 7275 6529 0a0a  ultiline=True)..
│ │ │ -00058840: 2020 2d20 6e61 6d65 3a20 556e 6974 2053    - name: Unit S
│ │ │ -00058850: 6f63 6b65 7420 4578 6973 7473 202d 206e  ocket Exists - n
│ │ │ -00058860: 7470 6461 7465 2e73 6f63 6b65 740a 2020  tpdate.socket.  
│ │ │ -00058870: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ -00058880: 6e2e 636f 6d6d 616e 643a 2073 7973 7465  n.command: syste
│ │ │ -00058890: 6d63 746c 202d 7120 6c69 7374 2d75 6e69  mctl -q list-uni
│ │ │ -000588a0: 742d 6669 6c65 7320 6e74 7064 6174 652e  t-files ntpdate.
│ │ │ -000588b0: 736f 636b 6574 0a20 2020 2072 6567 6973  socket.    regis
│ │ │ -000588c0: 7465 723a 2073 6f63 6b65 745f 6669 6c65  ter: socket_file
│ │ │ -000588d0: 5f65 7869 7374 730a 2020 2020 6368 616e  _exists.    chan
│ │ │ -000588e0: 6765 645f 7768 656e 3a20 6661 6c73 650a  ged_when: false.
│ │ │ -000588f0: 2020 2020 6661 696c 6564 5f77 6865 6e3a      failed_when:
│ │ │ -00058900: 2073 6f63 6b65 745f 6669 6c65 5f65 7869   socket_file_exi
│ │ │ -00058910: 7374 732e 7263 206e 6f74 2069 6e20 5b30  sts.rc not in [0
│ │ │ -00058920: 2c20 315d 0a20 2020 2063 6865 636b 5f6d  , 1].    check_m
│ │ │ -00058930: 6f64 653a 2066 616c 7365 0a0a 2020 2d20  ode: false..  - 
│ │ │ -00058940: 6e61 6d65 3a20 4469 7361 626c 6520 6e74  name: Disable nt
│ │ │ -00058950: 7064 6174 6520 5365 7276 6963 6520 286e  pdate Service (n
│ │ │ -00058960: 7470 6461 7465 2920 2d20 4469 7361 626c  tpdate) - Disabl
│ │ │ -00058970: 6520 536f 636b 6574 206e 7470 6461 7465  e Socket ntpdate
│ │ │ -00058980: 0a20 2020 2061 6e73 6962 6c65 2e62 7569  .    ansible.bui
│ │ │ -00058990: 6c74 696e 2e73 7973 7465 6d64 3a0a 2020  ltin.systemd:.  
│ │ │ -000589a0: 2020 2020 6e61 6d65 3a20 6e74 7064 6174      name: ntpdat
│ │ │ -000589b0: 652e 736f 636b 6574 0a20 2020 2020 2065  e.socket.      e
│ │ │ -000589c0: 6e61 626c 6564 3a20 6661 6c73 650a 2020  nabled: false.  
│ │ │ -000589d0: 2020 2020 7374 6174 653a 2073 746f 7070      state: stopp
│ │ │ -000589e0: 6564 0a20 2020 2020 206d 6173 6b65 643a  ed.      masked:
│ │ │ -000589f0: 2074 7275 650a 2020 2020 7768 656e 3a20   true.    when: 
│ │ │ -00058a00: 736f 636b 6574 5f66 696c 655f 6578 6973  socket_file_exis
│ │ │ -00058a10: 7473 2e73 7464 6f75 745f 6c69 6e65 7320  ts.stdout_lines 
│ │ │ -00058a20: 6973 2073 6561 7263 6828 226e 7470 6461  is search("ntpda
│ │ │ -00058a30: 7465 2e73 6f63 6b65 7422 2c20 6d75 6c74  te.socket", mult
│ │ │ -00058a40: 696c 696e 653d 5472 7565 290a 2020 7461  iline=True).  ta
│ │ │ -00058a50: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030  gs:.  - NIST-800
│ │ │ -00058a60: 2d35 332d 434d 2d36 2861 290a 2020 2d20  -53-CM-6(a).  - 
│ │ │ -00058a70: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ -00058a80: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ -00058a90: 2d35 332d 434d 2d37 2862 290a 2020 2d20  -53-CM-7(b).  - 
│ │ │ -00058aa0: 6469 7361 626c 655f 7374 7261 7465 6779  disable_strategy
│ │ │ -00058ab0: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ -00058ac0: 6974 790a 2020 2d20 6c6f 775f 6469 7372  ity.  - low_disr
│ │ │ -00058ad0: 7570 7469 6f6e 0a20 202d 206c 6f77 5f73  uption.  - low_s
│ │ │ -00058ae0: 6576 6572 6974 790a 2020 2d20 6e6f 5f72  everity.  - no_r
│ │ │ -00058af0: 6562 6f6f 745f 6e65 6564 6564 0a20 202d  eboot_needed.  -
│ │ │ -00058b00: 2073 6572 7669 6365 5f6e 7470 6461 7465   service_ntpdate
│ │ │ -00058b10: 5f64 6973 6162 6c65 640a 2020 2d20 7370  _disabled.  - sp
│ │ │ -00058b20: 6563 6961 6c5f 7365 7276 6963 655f 626c  ecial_service_bl
│ │ │ -00058b30: 6f63 6b0a 2020 7768 656e 3a20 2722 6b65  ock.  when: '"ke
│ │ │ -00058b40: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ -00058b50: 5f66 6163 7473 2e70 6163 6b61 6765 7327  _facts.packages'
│ │ │ +00057f90: 6f6e 2041 6e73 6962 6c65 2073 6e69 7070  on Ansible snipp
│ │ │ +00057fa0: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64  et ...
< │ │ │ +00058020: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>
│ │ │ +00058060: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 disable
Co │ │ │ -000583f0: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -00058420: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ -00058440: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ -00058450: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ -00058470: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ -00058480: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Complexit │ │ │ +00058030: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low
│ │ │ +00058050: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption:low
Reboot: │ │ │ +00058080: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false
│ │ │ +000580a0: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:
│ │ │ +000580d0: 3c63 6f64 653e 2d20 6e61 6d65 3a20 4761  - name: Ga
│ │ │ +000580e0: 7468 6572 2074 6865 2070 6163 6b61 6765  ther the package
│ │ │ +000580f0: 2066 6163 7473 0a20 2070 6163 6b61 6765   facts.  package
│ │ │ +00058100: 5f66 6163 7473 3a0a 2020 2020 6d61 6e61  _facts:.    mana
│ │ │ +00058110: 6765 723a 2061 7574 6f0a 2020 7461 6773  ger: auto.  tags
│ │ │ +00058120: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ +00058130: 332d 434d 2d36 2861 290a 2020 2d20 4e49  3-CM-6(a).  - NI
│ │ │ +00058140: 5354 2d38 3030 2d35 332d 434d 2d37 2861  ST-800-53-CM-7(a
│ │ │ +00058150: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +00058160: 332d 434d 2d37 2862 290a 2020 2d20 6469  3-CM-7(b).  - di
│ │ │ +00058170: 7361 626c 655f 7374 7261 7465 6779 0a20  sable_strategy. 
│ │ │ +00058180: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ +00058190: 790a 2020 2d20 6c6f 775f 6469 7372 7570  y.  - low_disrup
│ │ │ +000581a0: 7469 6f6e 0a20 202d 206c 6f77 5f73 6576  tion.  - low_sev
│ │ │ +000581b0: 6572 6974 790a 2020 2d20 6e6f 5f72 6562  erity.  - no_reb
│ │ │ +000581c0: 6f6f 745f 6e65 6564 6564 0a20 202d 2073  oot_needed.  - s
│ │ │ +000581d0: 6572 7669 6365 5f6e 7470 6461 7465 5f64  ervice_ntpdate_d
│ │ │ +000581e0: 6973 6162 6c65 640a 0a2d 206e 616d 653a  isabled..- name:
│ │ │ +000581f0: 2044 6973 6162 6c65 206e 7470 6461 7465   Disable ntpdate
│ │ │ +00058200: 2053 6572 7669 6365 2028 6e74 7064 6174   Service (ntpdat
│ │ │ +00058210: 6529 202d 2044 6973 6162 6c65 2073 6572  e) - Disable ser
│ │ │ +00058220: 7669 6365 206e 7470 6461 7465 0a20 2062  vice ntpdate.  b
│ │ │ +00058230: 6c6f 636b 3a0a 0a20 202d 206e 616d 653a  lock:..  - name:
│ │ │ +00058240: 2044 6973 6162 6c65 206e 7470 6461 7465   Disable ntpdate
│ │ │ +00058250: 2053 6572 7669 6365 2028 6e74 7064 6174   Service (ntpdat
│ │ │ +00058260: 6529 202d 2043 6f6c 6c65 6374 2073 7973  e) - Collect sys
│ │ │ +00058270: 7465 6d64 2053 6572 7669 6365 7320 5072  temd Services Pr
│ │ │ +00058280: 6573 656e 7420 696e 0a20 2020 2020 2074  esent in.      t
│ │ │ +00058290: 6865 2053 7973 7465 6d0a 2020 2020 616e  he System.    an
│ │ │ +000582a0: 7369 626c 652e 6275 696c 7469 6e2e 636f  sible.builtin.co
│ │ │ +000582b0: 6d6d 616e 643a 2073 7973 7465 6d63 746c  mmand: systemctl
│ │ │ +000582c0: 202d 7120 6c69 7374 2d75 6e69 742d 6669   -q list-unit-fi
│ │ │ +000582d0: 6c65 7320 2d2d 7479 7065 2073 6572 7669  les --type servi
│ │ │ +000582e0: 6365 0a20 2020 2072 6567 6973 7465 723a  ce.    register:
│ │ │ +000582f0: 2073 6572 7669 6365 5f65 7869 7374 730a   service_exists.
│ │ │ +00058300: 2020 2020 6368 616e 6765 645f 7768 656e      changed_when
│ │ │ +00058310: 3a20 6661 6c73 650a 2020 2020 6661 696c  : false.    fail
│ │ │ +00058320: 6564 5f77 6865 6e3a 2073 6572 7669 6365  ed_when: service
│ │ │ +00058330: 5f65 7869 7374 732e 7263 206e 6f74 2069  _exists.rc not i
│ │ │ +00058340: 6e20 5b30 2c20 315d 0a20 2020 2063 6865  n [0, 1].    che
│ │ │ +00058350: 636b 5f6d 6f64 653a 2066 616c 7365 0a0a  ck_mode: false..
│ │ │ +00058360: 2020 2d20 6e61 6d65 3a20 4469 7361 626c    - name: Disabl
│ │ │ +00058370: 6520 6e74 7064 6174 6520 5365 7276 6963  e ntpdate Servic
│ │ │ +00058380: 6520 286e 7470 6461 7465 2920 2d20 456e  e (ntpdate) - En
│ │ │ +00058390: 7375 7265 206e 7470 6461 7465 2e73 6572  sure ntpdate.ser
│ │ │ +000583a0: 7669 6365 2069 7320 4d61 736b 6564 0a20  vice is Masked. 
│ │ │ +000583b0: 2020 2061 6e73 6962 6c65 2e62 7569 6c74     ansible.built
│ │ │ +000583c0: 696e 2e73 7973 7465 6d64 3a0a 2020 2020  in.systemd:.    
│ │ │ +000583d0: 2020 6e61 6d65 3a20 6e74 7064 6174 652e    name: ntpdate.
│ │ │ +000583e0: 7365 7276 6963 650a 2020 2020 2020 7374  service.      st
│ │ │ +000583f0: 6174 653a 2073 746f 7070 6564 0a20 2020  ate: stopped.   
│ │ │ +00058400: 2020 2065 6e61 626c 6564 3a20 6661 6c73     enabled: fals
│ │ │ +00058410: 650a 2020 2020 2020 6d61 736b 6564 3a20  e.      masked: 
│ │ │ +00058420: 7472 7565 0a20 2020 2077 6865 6e3a 2073  true.    when: s
│ │ │ +00058430: 6572 7669 6365 5f65 7869 7374 732e 7374  ervice_exists.st
│ │ │ +00058440: 646f 7574 5f6c 696e 6573 2069 7320 7365  dout_lines is se
│ │ │ +00058450: 6172 6368 2822 6e74 7064 6174 652e 7365  arch("ntpdate.se
│ │ │ +00058460: 7276 6963 6522 2c20 6d75 6c74 696c 696e  rvice", multilin
│ │ │ +00058470: 653d 5472 7565 290a 0a20 202d 206e 616d  e=True)..  - nam
│ │ │ +00058480: 653a 2055 6e69 7420 536f 636b 6574 2045  e: Unit Socket E
│ │ │ +00058490: 7869 7374 7320 2d20 6e74 7064 6174 652e  xists - ntpdate.
│ │ │ +000584a0: 736f 636b 6574 0a20 2020 2061 6e73 6962  socket.    ansib
│ │ │ +000584b0: 6c65 2e62 7569 6c74 696e 2e63 6f6d 6d61  le.builtin.comma
│ │ │ +000584c0: 6e64 3a20 7379 7374 656d 6374 6c20 2d71  nd: systemctl -q
│ │ │ +000584d0: 206c 6973 742d 756e 6974 2d66 696c 6573   list-unit-files
│ │ │ +000584e0: 206e 7470 6461 7465 2e73 6f63 6b65 740a   ntpdate.socket.
│ │ │ +000584f0: 2020 2020 7265 6769 7374 6572 3a20 736f      register: so
│ │ │ +00058500: 636b 6574 5f66 696c 655f 6578 6973 7473  cket_file_exists
│ │ │ +00058510: 0a20 2020 2063 6861 6e67 6564 5f77 6865  .    changed_whe
│ │ │ +00058520: 6e3a 2066 616c 7365 0a20 2020 2066 6169  n: false.    fai
│ │ │ +00058530: 6c65 645f 7768 656e 3a20 736f 636b 6574  led_when: socket
│ │ │ +00058540: 5f66 696c 655f 6578 6973 7473 2e72 6320  _file_exists.rc 
│ │ │ +00058550: 6e6f 7420 696e 205b 302c 2031 5d0a 2020  not in [0, 1].  
│ │ │ +00058560: 2020 6368 6563 6b5f 6d6f 6465 3a20 6661    check_mode: fa
│ │ │ +00058570: 6c73 650a 0a20 202d 206e 616d 653a 2044  lse..  - name: D
│ │ │ +00058580: 6973 6162 6c65 206e 7470 6461 7465 2053  isable ntpdate S
│ │ │ +00058590: 6572 7669 6365 2028 6e74 7064 6174 6529  ervice (ntpdate)
│ │ │ +000585a0: 202d 2044 6973 6162 6c65 2053 6f63 6b65   - Disable Socke
│ │ │ +000585b0: 7420 6e74 7064 6174 650a 2020 2020 616e  t ntpdate.    an
│ │ │ +000585c0: 7369 626c 652e 6275 696c 7469 6e2e 7379  sible.builtin.sy
│ │ │ +000585d0: 7374 656d 643a 0a20 2020 2020 206e 616d  stemd:.      nam
│ │ │ +000585e0: 653a 206e 7470 6461 7465 2e73 6f63 6b65  e: ntpdate.socke
│ │ │ +000585f0: 740a 2020 2020 2020 656e 6162 6c65 643a  t.      enabled:
│ │ │ +00058600: 2066 616c 7365 0a20 2020 2020 2073 7461   false.      sta
│ │ │ +00058610: 7465 3a20 7374 6f70 7065 640a 2020 2020  te: stopped.    
│ │ │ +00058620: 2020 6d61 736b 6564 3a20 7472 7565 0a20    masked: true. 
│ │ │ +00058630: 2020 2077 6865 6e3a 2073 6f63 6b65 745f     when: socket_
│ │ │ +00058640: 6669 6c65 5f65 7869 7374 732e 7374 646f  file_exists.stdo
│ │ │ +00058650: 7574 5f6c 696e 6573 2069 7320 7365 6172  ut_lines is sear
│ │ │ +00058660: 6368 2822 6e74 7064 6174 652e 736f 636b  ch("ntpdate.sock
│ │ │ +00058670: 6574 222c 206d 756c 7469 6c69 6e65 3d54  et", multiline=T
│ │ │ +00058680: 7275 6529 0a20 2074 6167 733a 0a20 202d  rue).  tags:.  -
│ │ │ +00058690: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +000586a0: 3628 6129 0a20 202d 204e 4953 542d 3830  6(a).  - NIST-80
│ │ │ +000586b0: 302d 3533 2d43 4d2d 3728 6129 0a20 202d  0-53-CM-7(a).  -
│ │ │ +000586c0: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +000586d0: 3728 6229 0a20 202d 2064 6973 6162 6c65  7(b).  - disable
│ │ │ +000586e0: 5f73 7472 6174 6567 790a 2020 2d20 6c6f  _strategy.  - lo
│ │ │ +000586f0: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ +00058700: 206c 6f77 5f64 6973 7275 7074 696f 6e0a   low_disruption.
│ │ │ +00058710: 2020 2d20 6c6f 775f 7365 7665 7269 7479    - low_severity
│ │ │ +00058720: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ +00058730: 6565 6465 640a 2020 2d20 7365 7276 6963  eeded.  - servic
│ │ │ +00058740: 655f 6e74 7064 6174 655f 6469 7361 626c  e_ntpdate_disabl
│ │ │ +00058750: 6564 0a20 202d 2073 7065 6369 616c 5f73  ed.  - special_s
│ │ │ +00058760: 6572 7669 6365 5f62 6c6f 636b 0a20 2077  ervice_block.  w
│ │ │ +00058770: 6865 6e3a 2027 226b 6572 6e65 6c22 2069  hen: '"kernel" i
│ │ │ +00058780: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +00058790: 7061 636b 6167 6573 270a 3c2f 636f 6465  packages'.
Remedia │ │ │ +00058850: 7469 6f6e 2050 7570 7065 7420 736e 6970 tion Puppet snip │ │ │ +00058860: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ +00058870: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +00058880: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +00058890: 7365 2220 6964 3d22 6964 3434 223e 3c74 se" id="id44"> │ │ │ +000588e0: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ +000588f0: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +00058900: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ +00058940: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +00058950: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ +00058970: 7464 3e65 6e61 626c 653c 2f74 643e 3c2f td>enable
│ │ │ +00058990: 3c63 6f64 653e 696e 636c 7564 6520 6469  include di
│ │ │ +000589a0: 7361 626c 655f 6e74 7064 6174 650a 0a63  sable_ntpdate..c
│ │ │ +000589b0: 6c61 7373 2064 6973 6162 6c65 5f6e 7470  lass disable_ntp
│ │ │ +000589c0: 6461 7465 207b 0a20 2073 6572 7669 6365  date {.  service
│ │ │ +000589d0: 207b 276e 7470 6461 7465 273a 0a20 2020   {'ntpdate':.   
│ │ │ +000589e0: 2065 6e61 626c 6520 3d26 6774 3b20 6661   enable => fa
│ │ │ +000589f0: 6c73 652c 0a20 2020 2065 6e73 7572 6520  lse,.    ensure 
│ │ │ +00058a00: 3d26 6774 3b20 2773 746f 7070 6564 272c  => 'stopped',
│ │ │ +00058a10: 0a20 207d 0a7d 0a3c 2f63 6f64 653e 3c2f  .  }.}.
Remediatio │ │ │ +00058ad0: 6e20 4f53 4275 696c 6420 426c 7565 7072 n OSBuild Bluepr │ │ │ +00058ae0: 696e 7420 736e 6970 7065 7420 e287 b23c int snippet ...< │ │ │ +00058af0: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
.[customization
│ │ │ +00058b40: 732e 7365 7276 6963 6573 5d0a 6d61 736b  s.services].mask
│ │ │ +00058b50: 6564 203d 205b 226e 7470 6461 7465 225d  ed = ["ntpdate"]
│ │ │  00058b60: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
< │ │ │ 00058b80: 2f74 723e 3c2f 7462 6f64 793e 3c2f 7461 /tr>Remediation │ │ │ -00059a10: 4f53 4275 696c 6420 426c 7565 7072 696e OSBuild Blueprin │ │ │ -00059a20: 7420 736e 6970 7065 7420 e287 b23c 2f61 t snippet ...

.
│ │ │ -00059a70: 5b63 7573 746f 6d69 7a61 7469 6f6e 732e  [customizations.
│ │ │ -00059a80: 7365 7276 6963 6573 5d0a 6d61 736b 6564  services].masked
│ │ │ -00059a90: 203d 205b 226f 6464 6a6f 6264 225d 0a3c   = ["oddjobd"].<
│ │ │ -00059aa0: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
Re │ │ │ -00059b50: 6d65 6469 6174 696f 6e20 5075 7070 6574 mediation Puppet │ │ │ -00059b60: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -00059b70: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
Com │ │ │ -00059bf0: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ -00059c20: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ -00059c40: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -00059c50: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -00059c70: 2f74 683e 3c74 643e 656e 6162 6c65 3c2f /th>enable
│ │ │ -00059c90: 3c70 7265 3e3c 636f 6465 3e69 6e63 6c75
inclu
│ │ │ -00059ca0: 6465 2064 6973 6162 6c65 5f6f 6464 6a6f  de disable_oddjo
│ │ │ -00059cb0: 6264 0a0a 636c 6173 7320 6469 7361 626c  bd..class disabl
│ │ │ -00059cc0: 655f 6f64 646a 6f62 6420 7b0a 2020 7365  e_oddjobd {.  se
│ │ │ -00059cd0: 7276 6963 6520 7b27 6f64 646a 6f62 6427  rvice {'oddjobd'
│ │ │ -00059ce0: 3a0a 2020 2020 656e 6162 6c65 203d 2667  :.    enable =&g
│ │ │ -00059cf0: 743b 2066 616c 7365 2c0a 2020 2020 656e  t; false,.    en
│ │ │ -00059d00: 7375 7265 203d 2667 743b 2027 7374 6f70  sure => 'stop
│ │ │ -00059d10: 7065 6427 2c0a 2020 7d0a 7d0a 3c2f 636f  ped',.  }.}.
< │ │ │ -00059d30: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ -00059d40: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ -00059d50: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ -00059d60: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ -00059d70: 6434 3922 2074 6162 696e 6465 783d 2230 d49" tabindex="0 │ │ │ -00059d80: 2220 726f 6c65 3d22 6275 7474 6f6e 2220 " role="button" │ │ │ -00059d90: 6172 6961 2d65 7870 616e 6465 643d 2266 aria-expanded="f │ │ │ -00059da0: 616c 7365 2220 7469 746c 653d 2241 6374 alse" title="Act │ │ │ -00059db0: 6976 6174 6520 746f 2072 6576 6561 6c22 ivate to reveal" │ │ │ -00059dc0: 2068 7265 663d 2223 2122 3e52 656d 6564 href="#!">Remed │ │ │ -00059dd0: 6961 7469 6f6e 2041 6e73 6962 6c65 2073 iation Ansible s │ │ │ -00059de0: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
│ │ │ -00059e90: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ -00059eb0: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ -00059ee0: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ -00059e70: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ -00059e80: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ -00059ea0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ -00059ec0: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -00059ed0: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:disable
< │ │ │ -00059f10: 7072 653e 3c63 6f64 653e 2d20 6e61 6d65 pre>- name │ │ │ -00059f20: 3a20 4761 7468 6572 2074 6865 2070 6163 : Gather the pac │ │ │ -00059f30: 6b61 6765 2066 6163 7473 0a20 2070 6163 kage facts. pac │ │ │ -00059f40: 6b61 6765 5f66 6163 7473 3a0a 2020 2020 kage_facts:. │ │ │ -00059f50: 6d61 6e61 6765 723a 2061 7574 6f0a 2020 manager: auto. │ │ │ -00059f60: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38 tags:. - NIST-8 │ │ │ -00059f70: 3030 2d35 332d 434d 2d36 2861 290a 2020 00-53-CM-6(a). │ │ │ -00059f80: 2d20 4e49 5354 2d38 3030 2d35 332d 434d - NIST-800-53-CM │ │ │ -00059f90: 2d37 2861 290a 2020 2d20 4e49 5354 2d38 -7(a). - NIST-8 │ │ │ -00059fa0: 3030 2d35 332d 434d 2d37 2862 290a 2020 00-53-CM-7(b). │ │ │ -00059fb0: 2d20 6469 7361 626c 655f 7374 7261 7465 - disable_strate │ │ │ -00059fc0: 6779 0a20 202d 206c 6f77 5f63 6f6d 706c gy. - low_compl │ │ │ -00059fd0: 6578 6974 790a 2020 2d20 6c6f 775f 6469 exity. - low_di │ │ │ -00059fe0: 7372 7570 7469 6f6e 0a20 202d 206d 6564 sruption. - med │ │ │ -00059ff0: 6975 6d5f 7365 7665 7269 7479 0a20 202d ium_severity. - │ │ │ -0005a000: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465 no_reboot_neede │ │ │ -0005a010: 640a 2020 2d20 7365 7276 6963 655f 6f64 d. - service_od │ │ │ -0005a020: 646a 6f62 645f 6469 7361 626c 6564 0a0a djobd_disabled.. │ │ │ -0005a030: 2d20 6e61 6d65 3a20 4469 7361 626c 6520 - name: Disable │ │ │ -0005a040: 4f64 6420 4a6f 6220 4461 656d 6f6e 2028 Odd Job Daemon ( │ │ │ -0005a050: 6f64 646a 6f62 6429 202d 2044 6973 6162 oddjobd) - Disab │ │ │ -0005a060: 6c65 2073 6572 7669 6365 206f 6464 6a6f le service oddjo │ │ │ -0005a070: 6264 0a20 2062 6c6f 636b 3a0a 0a20 202d bd. block:.. - │ │ │ -0005a080: 206e 616d 653a 2044 6973 6162 6c65 204f name: Disable O │ │ │ -0005a090: 6464 204a 6f62 2044 6165 6d6f 6e20 286f dd Job Daemon (o │ │ │ -0005a0a0: 6464 6a6f 6264 2920 2d20 436f 6c6c 6563 ddjobd) - Collec │ │ │ -0005a0b0: 7420 7379 7374 656d 6420 5365 7276 6963 t systemd Servic │ │ │ -0005a0c0: 6573 2050 7265 7365 6e74 2069 6e20 7468 es Present in th │ │ │ -0005a0d0: 650a 2020 2020 2020 5379 7374 656d 0a20 e. System. │ │ │ -0005a0e0: 2020 2061 6e73 6962 6c65 2e62 7569 6c74 ansible.built │ │ │ -0005a0f0: 696e 2e63 6f6d 6d61 6e64 3a20 7379 7374 in.command: syst │ │ │ -0005a100: 656d 6374 6c20 2d71 206c 6973 742d 756e emctl -q list-un │ │ │ -0005a110: 6974 2d66 696c 6573 202d 2d74 7970 6520 it-files --type │ │ │ -0005a120: 7365 7276 6963 650a 2020 2020 7265 6769 service. regi │ │ │ -0005a130: 7374 6572 3a20 7365 7276 6963 655f 6578 ster: service_ex │ │ │ -0005a140: 6973 7473 0a20 2020 2063 6861 6e67 6564 ists. changed │ │ │ -0005a150: 5f77 6865 6e3a 2066 616c 7365 0a20 2020 _when: false. │ │ │ -0005a160: 2066 6169 6c65 645f 7768 656e 3a20 7365 failed_when: se │ │ │ -0005a170: 7276 6963 655f 6578 6973 7473 2e72 6320 rvice_exists.rc │ │ │ -0005a180: 6e6f 7420 696e 205b 302c 2031 5d0a 2020 not in [0, 1]. │ │ │ -0005a190: 2020 6368 6563 6b5f 6d6f 6465 3a20 6661 check_mode: fa │ │ │ -0005a1a0: 6c73 650a 0a20 202d 206e 616d 653a 2044 lse.. - name: D │ │ │ -0005a1b0: 6973 6162 6c65 204f 6464 204a 6f62 2044 isable Odd Job D │ │ │ -0005a1c0: 6165 6d6f 6e20 286f 6464 6a6f 6264 2920 aemon (oddjobd) │ │ │ -0005a1d0: 2d20 456e 7375 7265 206f 6464 6a6f 6264 - Ensure oddjobd │ │ │ -0005a1e0: 2e73 6572 7669 6365 2069 7320 4d61 736b .service is Mask │ │ │ -0005a1f0: 6564 0a20 2020 2061 6e73 6962 6c65 2e62 ed. ansible.b │ │ │ -0005a200: 7569 6c74 696e 2e73 7973 7465 6d64 3a0a uiltin.systemd:. │ │ │ -0005a210: 2020 2020 2020 6e61 6d65 3a20 6f64 646a name: oddj │ │ │ -0005a220: 6f62 642e 7365 7276 6963 650a 2020 2020 obd.service. │ │ │ -0005a230: 2020 7374 6174 653a 2073 746f 7070 6564 state: stopped │ │ │ -0005a240: 0a20 2020 2020 2065 6e61 626c 6564 3a20 . enabled: │ │ │ -0005a250: 6661 6c73 650a 2020 2020 2020 6d61 736b false. mask │ │ │ -0005a260: 6564 3a20 7472 7565 0a20 2020 2077 6865 ed: true. whe │ │ │ -0005a270: 6e3a 2073 6572 7669 6365 5f65 7869 7374 n: service_exist │ │ │ -0005a280: 732e 7374 646f 7574 5f6c 696e 6573 2069 s.stdout_lines i │ │ │ -0005a290: 7320 7365 6172 6368 2822 6f64 646a 6f62 s search("oddjob │ │ │ -0005a2a0: 642e 7365 7276 6963 6522 2c20 6d75 6c74 d.service", mult │ │ │ -0005a2b0: 696c 696e 653d 5472 7565 290a 0a20 202d iline=True).. - │ │ │ -0005a2c0: 206e 616d 653a 2055 6e69 7420 536f 636b name: Unit Sock │ │ │ -0005a2d0: 6574 2045 7869 7374 7320 2d20 6f64 646a et Exists - oddj │ │ │ -0005a2e0: 6f62 642e 736f 636b 6574 0a20 2020 2061 obd.socket. a │ │ │ -0005a2f0: 6e73 6962 6c65 2e62 7569 6c74 696e 2e63 nsible.builtin.c │ │ │ -0005a300: 6f6d 6d61 6e64 3a20 7379 7374 656d 6374 ommand: systemct │ │ │ -0005a310: 6c20 2d71 206c 6973 742d 756e 6974 2d66 l -q list-unit-f │ │ │ -0005a320: 696c 6573 206f 6464 6a6f 6264 2e73 6f63 iles oddjobd.soc │ │ │ -0005a330: 6b65 740a 2020 2020 7265 6769 7374 6572 ket. register │ │ │ -0005a340: 3a20 736f 636b 6574 5f66 696c 655f 6578 : socket_file_ex │ │ │ -0005a350: 6973 7473 0a20 2020 2063 6861 6e67 6564 ists. changed │ │ │ -0005a360: 5f77 6865 6e3a 2066 616c 7365 0a20 2020 _when: false. │ │ │ -0005a370: 2066 6169 6c65 645f 7768 656e 3a20 736f failed_when: so │ │ │ -0005a380: 636b 6574 5f66 696c 655f 6578 6973 7473 cket_file_exists │ │ │ -0005a390: 2e72 6320 6e6f 7420 696e 205b 302c 2031 .rc not in [0, 1 │ │ │ -0005a3a0: 5d0a 2020 2020 6368 6563 6b5f 6d6f 6465 ]. check_mode │ │ │ -0005a3b0: 3a20 6661 6c73 650a 0a20 202d 206e 616d : false.. - nam │ │ │ -0005a3c0: 653a 2044 6973 6162 6c65 204f 6464 204a e: Disable Odd J │ │ │ -0005a3d0: 6f62 2044 6165 6d6f 6e20 286f 6464 6a6f ob Daemon (oddjo │ │ │ -0005a3e0: 6264 2920 2d20 4469 7361 626c 6520 536f bd) - Disable So │ │ │ -0005a3f0: 636b 6574 206f 6464 6a6f 6264 0a20 2020 cket oddjobd. │ │ │ -0005a400: 2061 6e73 6962 6c65 2e62 7569 6c74 696e ansible.builtin │ │ │ -0005a410: 2e73 7973 7465 6d64 3a0a 2020 2020 2020 .systemd:. │ │ │ -0005a420: 6e61 6d65 3a20 6f64 646a 6f62 642e 736f name: oddjobd.so │ │ │ -0005a430: 636b 6574 0a20 2020 2020 2065 6e61 626c cket. enabl │ │ │ -0005a440: 6564 3a20 6661 6c73 650a 2020 2020 2020 ed: false. │ │ │ -0005a450: 7374 6174 653a 2073 746f 7070 6564 0a20 state: stopped. │ │ │ -0005a460: 2020 2020 206d 6173 6b65 643a 2074 7275 masked: tru │ │ │ -0005a470: 650a 2020 2020 7768 656e 3a20 736f 636b e. when: sock │ │ │ -0005a480: 6574 5f66 696c 655f 6578 6973 7473 2e73 et_file_exists.s │ │ │ -0005a490: 7464 6f75 745f 6c69 6e65 7320 6973 2073 tdout_lines is s │ │ │ -0005a4a0: 6561 7263 6828 226f 6464 6a6f 6264 2e73 earch("oddjobd.s │ │ │ -0005a4b0: 6f63 6b65 7422 2c20 6d75 6c74 696c 696e ocket", multilin │ │ │ -0005a4c0: 653d 5472 7565 290a 2020 7461 6773 3a0a e=True). tags:. │ │ │ -0005a4d0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d - NIST-800-53- │ │ │ -0005a4e0: 434d 2d36 2861 290a 2020 2d20 4e49 5354 CM-6(a). - NIST │ │ │ -0005a4f0: 2d38 3030 2d35 332d 434d 2d37 2861 290a -800-53-CM-7(a). │ │ │ -0005a500: 2020 2d20 4e49 5354 2d38 3030 2d35 332d - NIST-800-53- │ │ │ -0005a510: 434d 2d37 2862 290a 2020 2d20 6469 7361 CM-7(b). - disa │ │ │ -0005a520: 626c 655f 7374 7261 7465 6779 0a20 202d ble_strategy. - │ │ │ -0005a530: 206c 6f77 5f63 6f6d 706c 6578 6974 790a low_complexity. │ │ │ -0005a540: 2020 2d20 6c6f 775f 6469 7372 7570 7469 - low_disrupti │ │ │ -0005a550: 6f6e 0a20 202d 206d 6564 6975 6d5f 7365 on. - medium_se │ │ │ -0005a560: 7665 7269 7479 0a20 202d 206e 6f5f 7265 verity. - no_re │ │ │ -0005a570: 626f 6f74 5f6e 6565 6465 640a 2020 2d20 boot_needed. - │ │ │ -0005a580: 7365 7276 6963 655f 6f64 646a 6f62 645f service_oddjobd_ │ │ │ -0005a590: 6469 7361 626c 6564 0a20 202d 2073 7065 disabled. - spe │ │ │ -0005a5a0: 6369 616c 5f73 6572 7669 6365 5f62 6c6f cial_service_blo │ │ │ -0005a5b0: 636b 0a20 2077 6865 6e3a 2027 226b 6572 ck. when: '"ker │ │ │ -0005a5c0: 6e65 6c22 2069 6e20 616e 7369 626c 655f nel" in ansible_ │ │ │ -0005a5d0: 6661 6374 732e 7061 636b 6167 6573 270a facts.packages'. │ │ │ +00059a10: 416e 7369 626c 6520 736e 6970 7065 7420 Ansible snippet │ │ │ +00059a20: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
│ │ │ +00059aa0: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +00059ac0: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ +00059b10: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ +00059b40: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ +00059ab0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +00059ad0: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ +00059b20: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ +00059b30: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
- name: Gathe
│ │ │ +00059b60: 7220 7468 6520 7061 636b 6167 6520 6661  r the package fa
│ │ │ +00059b70: 6374 730a 2020 7061 636b 6167 655f 6661  cts.  package_fa
│ │ │ +00059b80: 6374 733a 0a20 2020 206d 616e 6167 6572  cts:.    manager
│ │ │ +00059b90: 3a20 6175 746f 0a20 2074 6167 733a 0a20  : auto.  tags:. 
│ │ │ +00059ba0: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +00059bb0: 4d2d 3628 6129 0a20 202d 204e 4953 542d  M-6(a).  - NIST-
│ │ │ +00059bc0: 3830 302d 3533 2d43 4d2d 3728 6129 0a20  800-53-CM-7(a). 
│ │ │ +00059bd0: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +00059be0: 4d2d 3728 6229 0a20 202d 2064 6973 6162  M-7(b).  - disab
│ │ │ +00059bf0: 6c65 5f73 7472 6174 6567 790a 2020 2d20  le_strategy.  - 
│ │ │ +00059c00: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ +00059c10: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ +00059c20: 6e0a 2020 2d20 6d65 6469 756d 5f73 6576  n.  - medium_sev
│ │ │ +00059c30: 6572 6974 790a 2020 2d20 6e6f 5f72 6562  erity.  - no_reb
│ │ │ +00059c40: 6f6f 745f 6e65 6564 6564 0a20 202d 2073  oot_needed.  - s
│ │ │ +00059c50: 6572 7669 6365 5f6f 6464 6a6f 6264 5f64  ervice_oddjobd_d
│ │ │ +00059c60: 6973 6162 6c65 640a 0a2d 206e 616d 653a  isabled..- name:
│ │ │ +00059c70: 2044 6973 6162 6c65 204f 6464 204a 6f62   Disable Odd Job
│ │ │ +00059c80: 2044 6165 6d6f 6e20 286f 6464 6a6f 6264   Daemon (oddjobd
│ │ │ +00059c90: 2920 2d20 4469 7361 626c 6520 7365 7276  ) - Disable serv
│ │ │ +00059ca0: 6963 6520 6f64 646a 6f62 640a 2020 626c  ice oddjobd.  bl
│ │ │ +00059cb0: 6f63 6b3a 0a0a 2020 2d20 6e61 6d65 3a20  ock:..  - name: 
│ │ │ +00059cc0: 4469 7361 626c 6520 4f64 6420 4a6f 6220  Disable Odd Job 
│ │ │ +00059cd0: 4461 656d 6f6e 2028 6f64 646a 6f62 6429  Daemon (oddjobd)
│ │ │ +00059ce0: 202d 2043 6f6c 6c65 6374 2073 7973 7465   - Collect syste
│ │ │ +00059cf0: 6d64 2053 6572 7669 6365 7320 5072 6573  md Services Pres
│ │ │ +00059d00: 656e 7420 696e 2074 6865 0a20 2020 2020  ent in the.     
│ │ │ +00059d10: 2053 7973 7465 6d0a 2020 2020 616e 7369   System.    ansi
│ │ │ +00059d20: 626c 652e 6275 696c 7469 6e2e 636f 6d6d  ble.builtin.comm
│ │ │ +00059d30: 616e 643a 2073 7973 7465 6d63 746c 202d  and: systemctl -
│ │ │ +00059d40: 7120 6c69 7374 2d75 6e69 742d 6669 6c65  q list-unit-file
│ │ │ +00059d50: 7320 2d2d 7479 7065 2073 6572 7669 6365  s --type service
│ │ │ +00059d60: 0a20 2020 2072 6567 6973 7465 723a 2073  .    register: s
│ │ │ +00059d70: 6572 7669 6365 5f65 7869 7374 730a 2020  ervice_exists.  
│ │ │ +00059d80: 2020 6368 616e 6765 645f 7768 656e 3a20    changed_when: 
│ │ │ +00059d90: 6661 6c73 650a 2020 2020 6661 696c 6564  false.    failed
│ │ │ +00059da0: 5f77 6865 6e3a 2073 6572 7669 6365 5f65  _when: service_e
│ │ │ +00059db0: 7869 7374 732e 7263 206e 6f74 2069 6e20  xists.rc not in 
│ │ │ +00059dc0: 5b30 2c20 315d 0a20 2020 2063 6865 636b  [0, 1].    check
│ │ │ +00059dd0: 5f6d 6f64 653a 2066 616c 7365 0a0a 2020  _mode: false..  
│ │ │ +00059de0: 2d20 6e61 6d65 3a20 4469 7361 626c 6520  - name: Disable 
│ │ │ +00059df0: 4f64 6420 4a6f 6220 4461 656d 6f6e 2028  Odd Job Daemon (
│ │ │ +00059e00: 6f64 646a 6f62 6429 202d 2045 6e73 7572  oddjobd) - Ensur
│ │ │ +00059e10: 6520 6f64 646a 6f62 642e 7365 7276 6963  e oddjobd.servic
│ │ │ +00059e20: 6520 6973 204d 6173 6b65 640a 2020 2020  e is Masked.    
│ │ │ +00059e30: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ +00059e40: 7379 7374 656d 643a 0a20 2020 2020 206e  systemd:.      n
│ │ │ +00059e50: 616d 653a 206f 6464 6a6f 6264 2e73 6572  ame: oddjobd.ser
│ │ │ +00059e60: 7669 6365 0a20 2020 2020 2073 7461 7465  vice.      state
│ │ │ +00059e70: 3a20 7374 6f70 7065 640a 2020 2020 2020  : stopped.      
│ │ │ +00059e80: 656e 6162 6c65 643a 2066 616c 7365 0a20  enabled: false. 
│ │ │ +00059e90: 2020 2020 206d 6173 6b65 643a 2074 7275       masked: tru
│ │ │ +00059ea0: 650a 2020 2020 7768 656e 3a20 7365 7276  e.    when: serv
│ │ │ +00059eb0: 6963 655f 6578 6973 7473 2e73 7464 6f75  ice_exists.stdou
│ │ │ +00059ec0: 745f 6c69 6e65 7320 6973 2073 6561 7263  t_lines is searc
│ │ │ +00059ed0: 6828 226f 6464 6a6f 6264 2e73 6572 7669  h("oddjobd.servi
│ │ │ +00059ee0: 6365 222c 206d 756c 7469 6c69 6e65 3d54  ce", multiline=T
│ │ │ +00059ef0: 7275 6529 0a0a 2020 2d20 6e61 6d65 3a20  rue)..  - name: 
│ │ │ +00059f00: 556e 6974 2053 6f63 6b65 7420 4578 6973  Unit Socket Exis
│ │ │ +00059f10: 7473 202d 206f 6464 6a6f 6264 2e73 6f63  ts - oddjobd.soc
│ │ │ +00059f20: 6b65 740a 2020 2020 616e 7369 626c 652e  ket.    ansible.
│ │ │ +00059f30: 6275 696c 7469 6e2e 636f 6d6d 616e 643a  builtin.command:
│ │ │ +00059f40: 2073 7973 7465 6d63 746c 202d 7120 6c69   systemctl -q li
│ │ │ +00059f50: 7374 2d75 6e69 742d 6669 6c65 7320 6f64  st-unit-files od
│ │ │ +00059f60: 646a 6f62 642e 736f 636b 6574 0a20 2020  djobd.socket.   
│ │ │ +00059f70: 2072 6567 6973 7465 723a 2073 6f63 6b65   register: socke
│ │ │ +00059f80: 745f 6669 6c65 5f65 7869 7374 730a 2020  t_file_exists.  
│ │ │ +00059f90: 2020 6368 616e 6765 645f 7768 656e 3a20    changed_when: 
│ │ │ +00059fa0: 6661 6c73 650a 2020 2020 6661 696c 6564  false.    failed
│ │ │ +00059fb0: 5f77 6865 6e3a 2073 6f63 6b65 745f 6669  _when: socket_fi
│ │ │ +00059fc0: 6c65 5f65 7869 7374 732e 7263 206e 6f74  le_exists.rc not
│ │ │ +00059fd0: 2069 6e20 5b30 2c20 315d 0a20 2020 2063   in [0, 1].    c
│ │ │ +00059fe0: 6865 636b 5f6d 6f64 653a 2066 616c 7365  heck_mode: false
│ │ │ +00059ff0: 0a0a 2020 2d20 6e61 6d65 3a20 4469 7361  ..  - name: Disa
│ │ │ +0005a000: 626c 6520 4f64 6420 4a6f 6220 4461 656d  ble Odd Job Daem
│ │ │ +0005a010: 6f6e 2028 6f64 646a 6f62 6429 202d 2044  on (oddjobd) - D
│ │ │ +0005a020: 6973 6162 6c65 2053 6f63 6b65 7420 6f64  isable Socket od
│ │ │ +0005a030: 646a 6f62 640a 2020 2020 616e 7369 626c  djobd.    ansibl
│ │ │ +0005a040: 652e 6275 696c 7469 6e2e 7379 7374 656d  e.builtin.system
│ │ │ +0005a050: 643a 0a20 2020 2020 206e 616d 653a 206f  d:.      name: o
│ │ │ +0005a060: 6464 6a6f 6264 2e73 6f63 6b65 740a 2020  ddjobd.socket.  
│ │ │ +0005a070: 2020 2020 656e 6162 6c65 643a 2066 616c      enabled: fal
│ │ │ +0005a080: 7365 0a20 2020 2020 2073 7461 7465 3a20  se.      state: 
│ │ │ +0005a090: 7374 6f70 7065 640a 2020 2020 2020 6d61  stopped.      ma
│ │ │ +0005a0a0: 736b 6564 3a20 7472 7565 0a20 2020 2077  sked: true.    w
│ │ │ +0005a0b0: 6865 6e3a 2073 6f63 6b65 745f 6669 6c65  hen: socket_file
│ │ │ +0005a0c0: 5f65 7869 7374 732e 7374 646f 7574 5f6c  _exists.stdout_l
│ │ │ +0005a0d0: 696e 6573 2069 7320 7365 6172 6368 2822  ines is search("
│ │ │ +0005a0e0: 6f64 646a 6f62 642e 736f 636b 6574 222c  oddjobd.socket",
│ │ │ +0005a0f0: 206d 756c 7469 6c69 6e65 3d54 7275 6529   multiline=True)
│ │ │ +0005a100: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ +0005a110: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ +0005a120: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +0005a130: 2d43 4d2d 3728 6129 0a20 202d 204e 4953  -CM-7(a).  - NIS
│ │ │ +0005a140: 542d 3830 302d 3533 2d43 4d2d 3728 6229  T-800-53-CM-7(b)
│ │ │ +0005a150: 0a20 202d 2064 6973 6162 6c65 5f73 7472  .  - disable_str
│ │ │ +0005a160: 6174 6567 790a 2020 2d20 6c6f 775f 636f  ategy.  - low_co
│ │ │ +0005a170: 6d70 6c65 7869 7479 0a20 202d 206c 6f77  mplexity.  - low
│ │ │ +0005a180: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +0005a190: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ +0005a1a0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ +0005a1b0: 6564 6564 0a20 202d 2073 6572 7669 6365  eded.  - service
│ │ │ +0005a1c0: 5f6f 6464 6a6f 6264 5f64 6973 6162 6c65  _oddjobd_disable
│ │ │ +0005a1d0: 640a 2020 2d20 7370 6563 6961 6c5f 7365  d.  - special_se
│ │ │ +0005a1e0: 7276 6963 655f 626c 6f63 6b0a 2020 7768  rvice_block.  wh
│ │ │ +0005a1f0: 656e 3a20 2722 6b65 726e 656c 2220 696e  en: '"kernel" in
│ │ │ +0005a200: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +0005a210: 6163 6b61 6765 7327 0a3c 2f63 6f64 653e  ackages'.
│ │ │ +0005a220: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remediat │ │ │ +0005a2d0: 696f 6e20 5075 7070 6574 2073 6e69 7070 ion Puppet snipp │ │ │ +0005a2e0: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
< │ │ │ +0005a360: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ +0005a370: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ +0005a390: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ +0005a3a0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ +0005a3c0: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ +0005a3e0: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:enable
<
│ │ │ +0005a410: 636f 6465 3e69 6e63 6c75 6465 2064 6973  code>include dis
│ │ │ +0005a420: 6162 6c65 5f6f 6464 6a6f 6264 0a0a 636c  able_oddjobd..cl
│ │ │ +0005a430: 6173 7320 6469 7361 626c 655f 6f64 646a  ass disable_oddj
│ │ │ +0005a440: 6f62 6420 7b0a 2020 7365 7276 6963 6520  obd {.  service 
│ │ │ +0005a450: 7b27 6f64 646a 6f62 6427 3a0a 2020 2020  {'oddjobd':.    
│ │ │ +0005a460: 656e 6162 6c65 203d 2667 743b 2066 616c  enable => fal
│ │ │ +0005a470: 7365 2c0a 2020 2020 656e 7375 7265 203d  se,.    ensure =
│ │ │ +0005a480: 2667 743b 2027 7374 6f70 7065 6427 2c0a  > 'stopped',.
│ │ │ +0005a490: 2020 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70    }.}.

Remediation │ │ │ +0005a550: 204f 5342 7569 6c64 2042 6c75 6570 7269 OSBuild Bluepri │ │ │ +0005a560: 6e74 2073 6e69 7070 6574 20e2 87b2 3c2f nt snippet ...

│ │ │ +0005a5b0: 0a5b 6375 7374 6f6d 697a 6174 696f 6e73  .[customizations
│ │ │ +0005a5c0: 2e73 6572 7669 6365 735d 0a6d 6173 6b65  .services].maske
│ │ │ +0005a5d0: 6420 3d20 5b22 6f64 646a 6f62 6422 5d0a  d = ["oddjobd"].
│ │ │  0005a5e0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
Remediation OS │ │ │ -0005b580: 4275 696c 6420 426c 7565 7072 696e 7420 Build Blueprint │ │ │ -0005b590: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...
< │ │ │ -0005b5a0: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
.[c
│ │ │ -0005b5e0: 7573 746f 6d69 7a61 7469 6f6e 732e 7365  ustomizations.se
│ │ │ -0005b5f0: 7276 6963 6573 5d0a 6d61 736b 6564 203d  rvices].masked =
│ │ │ -0005b600: 205b 2271 7069 6464 225d 0a3c 2f63 6f64   ["qpidd"].
Remedi │ │ │ -0005b6c0: 6174 696f 6e20 5075 7070 6574 2073 6e69 ation Puppet sni │ │ │ -0005b6d0: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -0005b6e0: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
< │ │ │ -0005b710: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ -0005b720: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ -0005b730: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ -0005b740: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ -0005b750: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Complex │ │ │ -0005b760: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ -0005b770: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Disruption:lowReboo │ │ │ -0005b7b0: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -0005b7c0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ -0005b7e0: 3c74 643e 656e 6162 6c65 3c2f 7464 3e3c enable< │ │ │ -0005b7f0: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
include d
│ │ │ -0005b810: 6973 6162 6c65 5f71 7069 6464 0a0a 636c  isable_qpidd..cl
│ │ │ -0005b820: 6173 7320 6469 7361 626c 655f 7170 6964  ass disable_qpid
│ │ │ -0005b830: 6420 7b0a 2020 7365 7276 6963 6520 7b27  d {.  service {'
│ │ │ -0005b840: 7170 6964 6427 3a0a 2020 2020 656e 6162  qpidd':.    enab
│ │ │ -0005b850: 6c65 203d 2667 743b 2066 616c 7365 2c0a  le => false,.
│ │ │ -0005b860: 2020 2020 656e 7375 7265 203d 2667 743b      ensure =>
│ │ │ -0005b870: 2027 7374 6f70 7065 6427 2c0a 2020 7d0a   'stopped',.  }.
│ │ │ -0005b880: 7d0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  }.
< │ │ │ -0005b890: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Ans │ │ │ -0005b940: 6962 6c65 2073 6e69 7070 6574 20e2 87b2 ible snippet ... │ │ │ -0005b950: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
< │ │ │ -0005ba20: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -0005ba30: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

│ │ │ -0005ba80: 2d20 6e61 6d65 3a20 4761 7468 6572 2074  - name: Gather t
│ │ │ -0005ba90: 6865 2070 6163 6b61 6765 2066 6163 7473  he package facts
│ │ │ -0005baa0: 0a20 2070 6163 6b61 6765 5f66 6163 7473  .  package_facts
│ │ │ -0005bab0: 3a0a 2020 2020 6d61 6e61 6765 723a 2061  :.    manager: a
│ │ │ -0005bac0: 7574 6f0a 2020 7461 6773 3a0a 2020 2d20  uto.  tags:.  - 
│ │ │ -0005bad0: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ -0005bae0: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ -0005baf0: 2d35 332d 434d 2d37 2861 290a 2020 2d20  -53-CM-7(a).  - 
│ │ │ -0005bb00: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ -0005bb10: 2862 290a 2020 2d20 6469 7361 626c 655f  (b).  - disable_
│ │ │ -0005bb20: 7374 7261 7465 6779 0a20 202d 206c 6f77  strategy.  - low
│ │ │ -0005bb30: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ -0005bb40: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ -0005bb50: 202d 206c 6f77 5f73 6576 6572 6974 790a   - low_severity.
│ │ │ -0005bb60: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ -0005bb70: 6564 6564 0a20 202d 2073 6572 7669 6365  eded.  - service
│ │ │ -0005bb80: 5f71 7069 6464 5f64 6973 6162 6c65 640a  _qpidd_disabled.
│ │ │ -0005bb90: 0a2d 206e 616d 653a 2044 6973 6162 6c65  .- name: Disable
│ │ │ -0005bba0: 2041 7061 6368 6520 5170 6964 2028 7170   Apache Qpid (qp
│ │ │ -0005bbb0: 6964 6429 202d 2044 6973 6162 6c65 2073  idd) - Disable s
│ │ │ -0005bbc0: 6572 7669 6365 2071 7069 6464 0a20 2062  ervice qpidd.  b
│ │ │ -0005bbd0: 6c6f 636b 3a0a 0a20 202d 206e 616d 653a  lock:..  - name:
│ │ │ -0005bbe0: 2044 6973 6162 6c65 2041 7061 6368 6520   Disable Apache 
│ │ │ -0005bbf0: 5170 6964 2028 7170 6964 6429 202d 2043  Qpid (qpidd) - C
│ │ │ -0005bc00: 6f6c 6c65 6374 2073 7973 7465 6d64 2053  ollect systemd S
│ │ │ -0005bc10: 6572 7669 6365 7320 5072 6573 656e 7420  ervices Present 
│ │ │ -0005bc20: 696e 2074 6865 2053 7973 7465 6d0a 2020  in the System.  
│ │ │ -0005bc30: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ -0005bc40: 6e2e 636f 6d6d 616e 643a 2073 7973 7465  n.command: syste
│ │ │ -0005bc50: 6d63 746c 202d 7120 6c69 7374 2d75 6e69  mctl -q list-uni
│ │ │ -0005bc60: 742d 6669 6c65 7320 2d2d 7479 7065 2073  t-files --type s
│ │ │ -0005bc70: 6572 7669 6365 0a20 2020 2072 6567 6973  ervice.    regis
│ │ │ -0005bc80: 7465 723a 2073 6572 7669 6365 5f65 7869  ter: service_exi
│ │ │ -0005bc90: 7374 730a 2020 2020 6368 616e 6765 645f  sts.    changed_
│ │ │ -0005bca0: 7768 656e 3a20 6661 6c73 650a 2020 2020  when: false.    
│ │ │ -0005bcb0: 6661 696c 6564 5f77 6865 6e3a 2073 6572  failed_when: ser
│ │ │ -0005bcc0: 7669 6365 5f65 7869 7374 732e 7263 206e  vice_exists.rc n
│ │ │ -0005bcd0: 6f74 2069 6e20 5b30 2c20 315d 0a20 2020  ot in [0, 1].   
│ │ │ -0005bce0: 2063 6865 636b 5f6d 6f64 653a 2066 616c   check_mode: fal
│ │ │ -0005bcf0: 7365 0a0a 2020 2d20 6e61 6d65 3a20 4469  se..  - name: Di
│ │ │ -0005bd00: 7361 626c 6520 4170 6163 6865 2051 7069  sable Apache Qpi
│ │ │ -0005bd10: 6420 2871 7069 6464 2920 2d20 456e 7375  d (qpidd) - Ensu
│ │ │ -0005bd20: 7265 2071 7069 6464 2e73 6572 7669 6365  re qpidd.service
│ │ │ -0005bd30: 2069 7320 4d61 736b 6564 0a20 2020 2061   is Masked.    a
│ │ │ -0005bd40: 6e73 6962 6c65 2e62 7569 6c74 696e 2e73  nsible.builtin.s
│ │ │ -0005bd50: 7973 7465 6d64 3a0a 2020 2020 2020 6e61  ystemd:.      na
│ │ │ -0005bd60: 6d65 3a20 7170 6964 642e 7365 7276 6963  me: qpidd.servic
│ │ │ -0005bd70: 650a 2020 2020 2020 7374 6174 653a 2073  e.      state: s
│ │ │ -0005bd80: 746f 7070 6564 0a20 2020 2020 2065 6e61  topped.      ena
│ │ │ -0005bd90: 626c 6564 3a20 6661 6c73 650a 2020 2020  bled: false.    
│ │ │ -0005bda0: 2020 6d61 736b 6564 3a20 7472 7565 0a20    masked: true. 
│ │ │ -0005bdb0: 2020 2077 6865 6e3a 2073 6572 7669 6365     when: service
│ │ │ -0005bdc0: 5f65 7869 7374 732e 7374 646f 7574 5f6c  _exists.stdout_l
│ │ │ -0005bdd0: 696e 6573 2069 7320 7365 6172 6368 2822  ines is search("
│ │ │ -0005bde0: 7170 6964 642e 7365 7276 6963 6522 2c20  qpidd.service", 
│ │ │ -0005bdf0: 6d75 6c74 696c 696e 653d 5472 7565 290a  multiline=True).
│ │ │ -0005be00: 0a20 202d 206e 616d 653a 2055 6e69 7420  .  - name: Unit 
│ │ │ -0005be10: 536f 636b 6574 2045 7869 7374 7320 2d20  Socket Exists - 
│ │ │ -0005be20: 7170 6964 642e 736f 636b 6574 0a20 2020  qpidd.socket.   
│ │ │ -0005be30: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ -0005be40: 2e63 6f6d 6d61 6e64 3a20 7379 7374 656d  .command: system
│ │ │ -0005be50: 6374 6c20 2d71 206c 6973 742d 756e 6974  ctl -q list-unit
│ │ │ -0005be60: 2d66 696c 6573 2071 7069 6464 2e73 6f63  -files qpidd.soc
│ │ │ -0005be70: 6b65 740a 2020 2020 7265 6769 7374 6572  ket.    register
│ │ │ -0005be80: 3a20 736f 636b 6574 5f66 696c 655f 6578  : socket_file_ex
│ │ │ -0005be90: 6973 7473 0a20 2020 2063 6861 6e67 6564  ists.    changed
│ │ │ -0005bea0: 5f77 6865 6e3a 2066 616c 7365 0a20 2020  _when: false.   
│ │ │ -0005beb0: 2066 6169 6c65 645f 7768 656e 3a20 736f   failed_when: so
│ │ │ -0005bec0: 636b 6574 5f66 696c 655f 6578 6973 7473  cket_file_exists
│ │ │ -0005bed0: 2e72 6320 6e6f 7420 696e 205b 302c 2031  .rc not in [0, 1
│ │ │ -0005bee0: 5d0a 2020 2020 6368 6563 6b5f 6d6f 6465  ].    check_mode
│ │ │ -0005bef0: 3a20 6661 6c73 650a 0a20 202d 206e 616d  : false..  - nam
│ │ │ -0005bf00: 653a 2044 6973 6162 6c65 2041 7061 6368  e: Disable Apach
│ │ │ -0005bf10: 6520 5170 6964 2028 7170 6964 6429 202d  e Qpid (qpidd) -
│ │ │ -0005bf20: 2044 6973 6162 6c65 2053 6f63 6b65 7420   Disable Socket 
│ │ │ -0005bf30: 7170 6964 640a 2020 2020 616e 7369 626c  qpidd.    ansibl
│ │ │ -0005bf40: 652e 6275 696c 7469 6e2e 7379 7374 656d  e.builtin.system
│ │ │ -0005bf50: 643a 0a20 2020 2020 206e 616d 653a 2071  d:.      name: q
│ │ │ -0005bf60: 7069 6464 2e73 6f63 6b65 740a 2020 2020  pidd.socket.    
│ │ │ -0005bf70: 2020 656e 6162 6c65 643a 2066 616c 7365    enabled: false
│ │ │ -0005bf80: 0a20 2020 2020 2073 7461 7465 3a20 7374  .      state: st
│ │ │ -0005bf90: 6f70 7065 640a 2020 2020 2020 6d61 736b  opped.      mask
│ │ │ -0005bfa0: 6564 3a20 7472 7565 0a20 2020 2077 6865  ed: true.    whe
│ │ │ -0005bfb0: 6e3a 2073 6f63 6b65 745f 6669 6c65 5f65  n: socket_file_e
│ │ │ -0005bfc0: 7869 7374 732e 7374 646f 7574 5f6c 696e  xists.stdout_lin
│ │ │ -0005bfd0: 6573 2069 7320 7365 6172 6368 2822 7170  es is search("qp
│ │ │ -0005bfe0: 6964 642e 736f 636b 6574 222c 206d 756c  idd.socket", mul
│ │ │ -0005bff0: 7469 6c69 6e65 3d54 7275 6529 0a20 2074  tiline=True).  t
│ │ │ -0005c000: 6167 733a 0a20 202d 204e 4953 542d 3830  ags:.  - NIST-80
│ │ │ -0005c010: 302d 3533 2d43 4d2d 3628 6129 0a20 202d  0-53-CM-6(a).  -
│ │ │ -0005c020: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -0005c030: 3728 6129 0a20 202d 204e 4953 542d 3830  7(a).  - NIST-80
│ │ │ -0005c040: 302d 3533 2d43 4d2d 3728 6229 0a20 202d  0-53-CM-7(b).  -
│ │ │ -0005c050: 2064 6973 6162 6c65 5f73 7472 6174 6567   disable_strateg
│ │ │ -0005c060: 790a 2020 2d20 6c6f 775f 636f 6d70 6c65  y.  - low_comple
│ │ │ -0005c070: 7869 7479 0a20 202d 206c 6f77 5f64 6973  xity.  - low_dis
│ │ │ -0005c080: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f  ruption.  - low_
│ │ │ -0005c090: 7365 7665 7269 7479 0a20 202d 206e 6f5f  severity.  - no_
│ │ │ -0005c0a0: 7265 626f 6f74 5f6e 6565 6465 640a 2020  reboot_needed.  
│ │ │ -0005c0b0: 2d20 7365 7276 6963 655f 7170 6964 645f  - service_qpidd_
│ │ │ -0005c0c0: 6469 7361 626c 6564 0a20 202d 2073 7065  disabled.  - spe
│ │ │ -0005c0d0: 6369 616c 5f73 6572 7669 6365 5f62 6c6f  cial_service_blo
│ │ │ -0005c0e0: 636b 0a20 2077 6865 6e3a 2027 226b 6572  ck.  when: '"ker
│ │ │ -0005c0f0: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ -0005c100: 6661 6374 732e 7061 636b 6167 6573 270a  facts.packages'.
│ │ │ +0005b570: 223e 5265 6d65 6469 6174 696f 6e20 416e  ">Remediation An
│ │ │ +0005b580: 7369 626c 6520 736e 6970 7065 7420 e287  sible snippet ..
│ │ │ +0005b590: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c  .
Complexity:low
Disrup │ │ │ -0005ba00: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -0005ba10: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -0005ba50: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ -0005ba60: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Complexity: │ │ │ +0005b660: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +0005b670: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
- name: Gather 
│ │ │ +0005b6d0: 7468 6520 7061 636b 6167 6520 6661 6374  the package fact
│ │ │ +0005b6e0: 730a 2020 7061 636b 6167 655f 6661 6374  s.  package_fact
│ │ │ +0005b6f0: 733a 0a20 2020 206d 616e 6167 6572 3a20  s:.    manager: 
│ │ │ +0005b700: 6175 746f 0a20 2074 6167 733a 0a20 202d  auto.  tags:.  -
│ │ │ +0005b710: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +0005b720: 3628 6129 0a20 202d 204e 4953 542d 3830  6(a).  - NIST-80
│ │ │ +0005b730: 302d 3533 2d43 4d2d 3728 6129 0a20 202d  0-53-CM-7(a).  -
│ │ │ +0005b740: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +0005b750: 3728 6229 0a20 202d 2064 6973 6162 6c65  7(b).  - disable
│ │ │ +0005b760: 5f73 7472 6174 6567 790a 2020 2d20 6c6f  _strategy.  - lo
│ │ │ +0005b770: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ +0005b780: 206c 6f77 5f64 6973 7275 7074 696f 6e0a   low_disruption.
│ │ │ +0005b790: 2020 2d20 6c6f 775f 7365 7665 7269 7479    - low_severity
│ │ │ +0005b7a0: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ +0005b7b0: 6565 6465 640a 2020 2d20 7365 7276 6963  eeded.  - servic
│ │ │ +0005b7c0: 655f 7170 6964 645f 6469 7361 626c 6564  e_qpidd_disabled
│ │ │ +0005b7d0: 0a0a 2d20 6e61 6d65 3a20 4469 7361 626c  ..- name: Disabl
│ │ │ +0005b7e0: 6520 4170 6163 6865 2051 7069 6420 2871  e Apache Qpid (q
│ │ │ +0005b7f0: 7069 6464 2920 2d20 4469 7361 626c 6520  pidd) - Disable 
│ │ │ +0005b800: 7365 7276 6963 6520 7170 6964 640a 2020  service qpidd.  
│ │ │ +0005b810: 626c 6f63 6b3a 0a0a 2020 2d20 6e61 6d65  block:..  - name
│ │ │ +0005b820: 3a20 4469 7361 626c 6520 4170 6163 6865  : Disable Apache
│ │ │ +0005b830: 2051 7069 6420 2871 7069 6464 2920 2d20   Qpid (qpidd) - 
│ │ │ +0005b840: 436f 6c6c 6563 7420 7379 7374 656d 6420  Collect systemd 
│ │ │ +0005b850: 5365 7276 6963 6573 2050 7265 7365 6e74  Services Present
│ │ │ +0005b860: 2069 6e20 7468 6520 5379 7374 656d 0a20   in the System. 
│ │ │ +0005b870: 2020 2061 6e73 6962 6c65 2e62 7569 6c74     ansible.built
│ │ │ +0005b880: 696e 2e63 6f6d 6d61 6e64 3a20 7379 7374  in.command: syst
│ │ │ +0005b890: 656d 6374 6c20 2d71 206c 6973 742d 756e  emctl -q list-un
│ │ │ +0005b8a0: 6974 2d66 696c 6573 202d 2d74 7970 6520  it-files --type 
│ │ │ +0005b8b0: 7365 7276 6963 650a 2020 2020 7265 6769  service.    regi
│ │ │ +0005b8c0: 7374 6572 3a20 7365 7276 6963 655f 6578  ster: service_ex
│ │ │ +0005b8d0: 6973 7473 0a20 2020 2063 6861 6e67 6564  ists.    changed
│ │ │ +0005b8e0: 5f77 6865 6e3a 2066 616c 7365 0a20 2020  _when: false.   
│ │ │ +0005b8f0: 2066 6169 6c65 645f 7768 656e 3a20 7365   failed_when: se
│ │ │ +0005b900: 7276 6963 655f 6578 6973 7473 2e72 6320  rvice_exists.rc 
│ │ │ +0005b910: 6e6f 7420 696e 205b 302c 2031 5d0a 2020  not in [0, 1].  
│ │ │ +0005b920: 2020 6368 6563 6b5f 6d6f 6465 3a20 6661    check_mode: fa
│ │ │ +0005b930: 6c73 650a 0a20 202d 206e 616d 653a 2044  lse..  - name: D
│ │ │ +0005b940: 6973 6162 6c65 2041 7061 6368 6520 5170  isable Apache Qp
│ │ │ +0005b950: 6964 2028 7170 6964 6429 202d 2045 6e73  id (qpidd) - Ens
│ │ │ +0005b960: 7572 6520 7170 6964 642e 7365 7276 6963  ure qpidd.servic
│ │ │ +0005b970: 6520 6973 204d 6173 6b65 640a 2020 2020  e is Masked.    
│ │ │ +0005b980: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ +0005b990: 7379 7374 656d 643a 0a20 2020 2020 206e  systemd:.      n
│ │ │ +0005b9a0: 616d 653a 2071 7069 6464 2e73 6572 7669  ame: qpidd.servi
│ │ │ +0005b9b0: 6365 0a20 2020 2020 2073 7461 7465 3a20  ce.      state: 
│ │ │ +0005b9c0: 7374 6f70 7065 640a 2020 2020 2020 656e  stopped.      en
│ │ │ +0005b9d0: 6162 6c65 643a 2066 616c 7365 0a20 2020  abled: false.   
│ │ │ +0005b9e0: 2020 206d 6173 6b65 643a 2074 7275 650a     masked: true.
│ │ │ +0005b9f0: 2020 2020 7768 656e 3a20 7365 7276 6963      when: servic
│ │ │ +0005ba00: 655f 6578 6973 7473 2e73 7464 6f75 745f  e_exists.stdout_
│ │ │ +0005ba10: 6c69 6e65 7320 6973 2073 6561 7263 6828  lines is search(
│ │ │ +0005ba20: 2271 7069 6464 2e73 6572 7669 6365 222c  "qpidd.service",
│ │ │ +0005ba30: 206d 756c 7469 6c69 6e65 3d54 7275 6529   multiline=True)
│ │ │ +0005ba40: 0a0a 2020 2d20 6e61 6d65 3a20 556e 6974  ..  - name: Unit
│ │ │ +0005ba50: 2053 6f63 6b65 7420 4578 6973 7473 202d   Socket Exists -
│ │ │ +0005ba60: 2071 7069 6464 2e73 6f63 6b65 740a 2020   qpidd.socket.  
│ │ │ +0005ba70: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ +0005ba80: 6e2e 636f 6d6d 616e 643a 2073 7973 7465  n.command: syste
│ │ │ +0005ba90: 6d63 746c 202d 7120 6c69 7374 2d75 6e69  mctl -q list-uni
│ │ │ +0005baa0: 742d 6669 6c65 7320 7170 6964 642e 736f  t-files qpidd.so
│ │ │ +0005bab0: 636b 6574 0a20 2020 2072 6567 6973 7465  cket.    registe
│ │ │ +0005bac0: 723a 2073 6f63 6b65 745f 6669 6c65 5f65  r: socket_file_e
│ │ │ +0005bad0: 7869 7374 730a 2020 2020 6368 616e 6765  xists.    change
│ │ │ +0005bae0: 645f 7768 656e 3a20 6661 6c73 650a 2020  d_when: false.  
│ │ │ +0005baf0: 2020 6661 696c 6564 5f77 6865 6e3a 2073    failed_when: s
│ │ │ +0005bb00: 6f63 6b65 745f 6669 6c65 5f65 7869 7374  ocket_file_exist
│ │ │ +0005bb10: 732e 7263 206e 6f74 2069 6e20 5b30 2c20  s.rc not in [0, 
│ │ │ +0005bb20: 315d 0a20 2020 2063 6865 636b 5f6d 6f64  1].    check_mod
│ │ │ +0005bb30: 653a 2066 616c 7365 0a0a 2020 2d20 6e61  e: false..  - na
│ │ │ +0005bb40: 6d65 3a20 4469 7361 626c 6520 4170 6163  me: Disable Apac
│ │ │ +0005bb50: 6865 2051 7069 6420 2871 7069 6464 2920  he Qpid (qpidd) 
│ │ │ +0005bb60: 2d20 4469 7361 626c 6520 536f 636b 6574  - Disable Socket
│ │ │ +0005bb70: 2071 7069 6464 0a20 2020 2061 6e73 6962   qpidd.    ansib
│ │ │ +0005bb80: 6c65 2e62 7569 6c74 696e 2e73 7973 7465  le.builtin.syste
│ │ │ +0005bb90: 6d64 3a0a 2020 2020 2020 6e61 6d65 3a20  md:.      name: 
│ │ │ +0005bba0: 7170 6964 642e 736f 636b 6574 0a20 2020  qpidd.socket.   
│ │ │ +0005bbb0: 2020 2065 6e61 626c 6564 3a20 6661 6c73     enabled: fals
│ │ │ +0005bbc0: 650a 2020 2020 2020 7374 6174 653a 2073  e.      state: s
│ │ │ +0005bbd0: 746f 7070 6564 0a20 2020 2020 206d 6173  topped.      mas
│ │ │ +0005bbe0: 6b65 643a 2074 7275 650a 2020 2020 7768  ked: true.    wh
│ │ │ +0005bbf0: 656e 3a20 736f 636b 6574 5f66 696c 655f  en: socket_file_
│ │ │ +0005bc00: 6578 6973 7473 2e73 7464 6f75 745f 6c69  exists.stdout_li
│ │ │ +0005bc10: 6e65 7320 6973 2073 6561 7263 6828 2271  nes is search("q
│ │ │ +0005bc20: 7069 6464 2e73 6f63 6b65 7422 2c20 6d75  pidd.socket", mu
│ │ │ +0005bc30: 6c74 696c 696e 653d 5472 7565 290a 2020  ltiline=True).  
│ │ │ +0005bc40: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38  tags:.  - NIST-8
│ │ │ +0005bc50: 3030 2d35 332d 434d 2d36 2861 290a 2020  00-53-CM-6(a).  
│ │ │ +0005bc60: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +0005bc70: 2d37 2861 290a 2020 2d20 4e49 5354 2d38  -7(a).  - NIST-8
│ │ │ +0005bc80: 3030 2d35 332d 434d 2d37 2862 290a 2020  00-53-CM-7(b).  
│ │ │ +0005bc90: 2d20 6469 7361 626c 655f 7374 7261 7465  - disable_strate
│ │ │ +0005bca0: 6779 0a20 202d 206c 6f77 5f63 6f6d 706c  gy.  - low_compl
│ │ │ +0005bcb0: 6578 6974 790a 2020 2d20 6c6f 775f 6469  exity.  - low_di
│ │ │ +0005bcc0: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ +0005bcd0: 5f73 6576 6572 6974 790a 2020 2d20 6e6f  _severity.  - no
│ │ │ +0005bce0: 5f72 6562 6f6f 745f 6e65 6564 6564 0a20  _reboot_needed. 
│ │ │ +0005bcf0: 202d 2073 6572 7669 6365 5f71 7069 6464   - service_qpidd
│ │ │ +0005bd00: 5f64 6973 6162 6c65 640a 2020 2d20 7370  _disabled.  - sp
│ │ │ +0005bd10: 6563 6961 6c5f 7365 7276 6963 655f 626c  ecial_service_bl
│ │ │ +0005bd20: 6f63 6b0a 2020 7768 656e 3a20 2722 6b65  ock.  when: '"ke
│ │ │ +0005bd30: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ +0005bd40: 5f66 6163 7473 2e70 6163 6b61 6765 7327  _facts.packages'
│ │ │ +0005bd50: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
│ │ │ +0005be00: 5265 6d65 6469 6174 696f 6e20 5075 7070 Remediation Pupp │ │ │ +0005be10: 6574 2073 6e69 7070 6574 20e2 87b2 3c2f et snippet ...
low
Disru │ │ │ +0005b640: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +0005b650: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +0005b690: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ +0005b6a0: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
< │ │ │ +0005beb0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +0005bec0: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ +0005bf10: 3c74 723e 3c74 683e 5374 7261 7465 6779
inc
│ │ │ +0005bf50: 6c75 6465 2064 6973 6162 6c65 5f71 7069  lude disable_qpi
│ │ │ +0005bf60: 6464 0a0a 636c 6173 7320 6469 7361 626c  dd..class disabl
│ │ │ +0005bf70: 655f 7170 6964 6420 7b0a 2020 7365 7276  e_qpidd {.  serv
│ │ │ +0005bf80: 6963 6520 7b27 7170 6964 6427 3a0a 2020  ice {'qpidd':.  
│ │ │ +0005bf90: 2020 656e 6162 6c65 203d 2667 743b 2066    enable => f
│ │ │ +0005bfa0: 616c 7365 2c0a 2020 2020 656e 7375 7265  alse,.    ensure
│ │ │ +0005bfb0: 203d 2667 743b 2027 7374 6f70 7065 6427   => 'stopped'
│ │ │ +0005bfc0: 2c0a 2020 7d0a 7d0a 3c2f 636f 6465 3e3c  ,.  }.}.<
│ │ │ +0005bfd0: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>Remediati
│ │ │ +0005c080: 6f6e 204f 5342 7569 6c64 2042 6c75 6570  on OSBuild Bluep
│ │ │ +0005c090: 7269 6e74 2073 6e69 7070 6574 20e2 87b2  rint snippet ...
│ │ │ +0005c0a0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61  
.[customizatio
│ │ │ +0005c0f0: 6e73 2e73 6572 7669 6365 735d 0a6d 6173  ns.services].mas
│ │ │ +0005c100: 6b65 6420 3d20 5b22 7170 6964 6422 5d0a  ked = ["qpidd"].
│ │ │  0005c110: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
Remediation O │ │ │ -0005d200: 5342 7569 6c64 2042 6c75 6570 7269 6e74 SBuild Blueprint │ │ │ -0005d210: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -0005d220: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
.[
│ │ │ -0005d260: 6375 7374 6f6d 697a 6174 696f 6e73 2e73  customizations.s
│ │ │ -0005d270: 6572 7669 6365 735d 0a6d 6173 6b65 6420  ervices].masked 
│ │ │ -0005d280: 3d20 5b22 7264 6973 6322 5d0a 3c2f 636f  = ["rdisc"].
< │ │ │ -0005d2a0: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ -0005d2b0: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ -0005d2c0: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ -0005d2d0: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ -0005d2e0: 6435 3622 2074 6162 696e 6465 783d 2230 d56" tabindex="0 │ │ │ -0005d2f0: 2220 726f 6c65 3d22 6275 7474 6f6e 2220 " role="button" │ │ │ -0005d300: 6172 6961 2d65 7870 616e 6465 643d 2266 aria-expanded="f │ │ │ -0005d310: 616c 7365 2220 7469 746c 653d 2241 6374 alse" title="Act │ │ │ -0005d320: 6976 6174 6520 746f 2072 6576 6561 6c22 ivate to reveal" │ │ │ -0005d330: 2068 7265 663d 2223 2122 3e52 656d 6564 href="#!">Remed │ │ │ -0005d340: 6961 7469 6f6e 2050 7570 7065 7420 736e iation Puppet sn │ │ │ -0005d350: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ -0005d390: 3c74 6162 6c65 2063 6c61 7373 3d22 7461
C │ │ │ +0005bea0: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ +0005bed0: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ +0005bee0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ +0005bf20: 3a3c 2f74 683e 3c74 643e 656e 6162 6c65 :enable │ │ │ +0005bf30: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
< │ │ │ -0005d400: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ -0005d420: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ -0005d450: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy: │ │ │ -0005d470: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
Comple │ │ │ -0005d3e0: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ -0005d3f0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ -0005d430: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ -0005d440: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
enable
include │ │ │ -0005d490: 6469 7361 626c 655f 7264 6973 630a 0a63 disable_rdisc..c │ │ │ -0005d4a0: 6c61 7373 2064 6973 6162 6c65 5f72 6469 lass disable_rdi │ │ │ -0005d4b0: 7363 207b 0a20 2073 6572 7669 6365 207b sc {. service { │ │ │ -0005d4c0: 2772 6469 7363 273a 0a20 2020 2065 6e61 'rdisc':. ena │ │ │ -0005d4d0: 626c 6520 3d26 6774 3b20 6661 6c73 652c ble => false, │ │ │ -0005d4e0: 0a20 2020 2065 6e73 7572 6520 3d26 6774 . ensure => │ │ │ -0005d4f0: 3b20 2773 746f 7070 6564 272c 0a20 207d ; 'stopped',. } │ │ │ -0005d500: 0a7d 0a3c 2f63 6f64 653e 3c2f 7072 653e .}. │ │ │ -0005d510: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation An │ │ │ -0005d5c0: 7369 626c 6520 736e 6970 7065 7420 e287 sible snippet .. │ │ │ -0005d5d0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
Complexity: │ │ │ -0005d6a0: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -0005d6b0: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
- name: Gather 
│ │ │ -0005d710: 7468 6520 7061 636b 6167 6520 6661 6374  the package fact
│ │ │ -0005d720: 730a 2020 7061 636b 6167 655f 6661 6374  s.  package_fact
│ │ │ -0005d730: 733a 0a20 2020 206d 616e 6167 6572 3a20  s:.    manager: 
│ │ │ -0005d740: 6175 746f 0a20 2074 6167 733a 0a20 202d  auto.  tags:.  -
│ │ │ -0005d750: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ -0005d760: 340a 2020 2d20 4e49 5354 2d38 3030 2d35  4.  - NIST-800-5
│ │ │ -0005d770: 332d 434d 2d36 2861 290a 2020 2d20 4e49  3-CM-6(a).  - NI
│ │ │ -0005d780: 5354 2d38 3030 2d35 332d 434d 2d37 2861  ST-800-53-CM-7(a
│ │ │ -0005d790: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -0005d7a0: 332d 434d 2d37 2862 290a 2020 2d20 6469  3-CM-7(b).  - di
│ │ │ -0005d7b0: 7361 626c 655f 7374 7261 7465 6779 0a20  sable_strategy. 
│ │ │ -0005d7c0: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ -0005d7d0: 790a 2020 2d20 6c6f 775f 6469 7372 7570  y.  - low_disrup
│ │ │ -0005d7e0: 7469 6f6e 0a20 202d 206d 6564 6975 6d5f  tion.  - medium_
│ │ │ -0005d7f0: 7365 7665 7269 7479 0a20 202d 206e 6f5f  severity.  - no_
│ │ │ -0005d800: 7265 626f 6f74 5f6e 6565 6465 640a 2020  reboot_needed.  
│ │ │ -0005d810: 2d20 7365 7276 6963 655f 7264 6973 635f  - service_rdisc_
│ │ │ -0005d820: 6469 7361 626c 6564 0a0a 2d20 6e61 6d65  disabled..- name
│ │ │ -0005d830: 3a20 4469 7361 626c 6520 4e65 7477 6f72  : Disable Networ
│ │ │ -0005d840: 6b20 526f 7574 6572 2044 6973 636f 7665  k Router Discove
│ │ │ -0005d850: 7279 2044 6165 6d6f 6e20 2872 6469 7363  ry Daemon (rdisc
│ │ │ -0005d860: 2920 2d20 4469 7361 626c 6520 7365 7276  ) - Disable serv
│ │ │ -0005d870: 6963 6520 7264 6973 630a 2020 626c 6f63  ice rdisc.  bloc
│ │ │ -0005d880: 6b3a 0a0a 2020 2d20 6e61 6d65 3a20 4469  k:..  - name: Di
│ │ │ -0005d890: 7361 626c 6520 4e65 7477 6f72 6b20 526f  sable Network Ro
│ │ │ -0005d8a0: 7574 6572 2044 6973 636f 7665 7279 2044  uter Discovery D
│ │ │ -0005d8b0: 6165 6d6f 6e20 2872 6469 7363 2920 2d20  aemon (rdisc) - 
│ │ │ -0005d8c0: 436f 6c6c 6563 7420 7379 7374 656d 6420  Collect systemd 
│ │ │ -0005d8d0: 5365 7276 6963 6573 0a20 2020 2020 2050  Services.      P
│ │ │ -0005d8e0: 7265 7365 6e74 2069 6e20 7468 6520 5379  resent in the Sy
│ │ │ -0005d8f0: 7374 656d 0a20 2020 2061 6e73 6962 6c65  stem.    ansible
│ │ │ -0005d900: 2e62 7569 6c74 696e 2e63 6f6d 6d61 6e64  .builtin.command
│ │ │ -0005d910: 3a20 7379 7374 656d 6374 6c20 2d71 206c  : systemctl -q l
│ │ │ -0005d920: 6973 742d 756e 6974 2d66 696c 6573 202d  ist-unit-files -
│ │ │ -0005d930: 2d74 7970 6520 7365 7276 6963 650a 2020  -type service.  
│ │ │ -0005d940: 2020 7265 6769 7374 6572 3a20 7365 7276    register: serv
│ │ │ -0005d950: 6963 655f 6578 6973 7473 0a20 2020 2063  ice_exists.    c
│ │ │ -0005d960: 6861 6e67 6564 5f77 6865 6e3a 2066 616c  hanged_when: fal
│ │ │ -0005d970: 7365 0a20 2020 2066 6169 6c65 645f 7768  se.    failed_wh
│ │ │ -0005d980: 656e 3a20 7365 7276 6963 655f 6578 6973  en: service_exis
│ │ │ -0005d990: 7473 2e72 6320 6e6f 7420 696e 205b 302c  ts.rc not in [0,
│ │ │ -0005d9a0: 2031 5d0a 2020 2020 6368 6563 6b5f 6d6f   1].    check_mo
│ │ │ -0005d9b0: 6465 3a20 6661 6c73 650a 0a20 202d 206e  de: false..  - n
│ │ │ -0005d9c0: 616d 653a 2044 6973 6162 6c65 204e 6574  ame: Disable Net
│ │ │ -0005d9d0: 776f 726b 2052 6f75 7465 7220 4469 7363  work Router Disc
│ │ │ -0005d9e0: 6f76 6572 7920 4461 656d 6f6e 2028 7264  overy Daemon (rd
│ │ │ -0005d9f0: 6973 6329 202d 2045 6e73 7572 6520 7264  isc) - Ensure rd
│ │ │ -0005da00: 6973 632e 7365 7276 6963 6520 6973 0a20  isc.service is. 
│ │ │ -0005da10: 2020 2020 204d 6173 6b65 640a 2020 2020       Masked.    
│ │ │ -0005da20: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ -0005da30: 7379 7374 656d 643a 0a20 2020 2020 206e  systemd:.      n
│ │ │ -0005da40: 616d 653a 2072 6469 7363 2e73 6572 7669  ame: rdisc.servi
│ │ │ -0005da50: 6365 0a20 2020 2020 2073 7461 7465 3a20  ce.      state: 
│ │ │ -0005da60: 7374 6f70 7065 640a 2020 2020 2020 656e  stopped.      en
│ │ │ -0005da70: 6162 6c65 643a 2066 616c 7365 0a20 2020  abled: false.   
│ │ │ -0005da80: 2020 206d 6173 6b65 643a 2074 7275 650a     masked: true.
│ │ │ -0005da90: 2020 2020 7768 656e 3a20 7365 7276 6963      when: servic
│ │ │ -0005daa0: 655f 6578 6973 7473 2e73 7464 6f75 745f  e_exists.stdout_
│ │ │ -0005dab0: 6c69 6e65 7320 6973 2073 6561 7263 6828  lines is search(
│ │ │ -0005dac0: 2272 6469 7363 2e73 6572 7669 6365 222c  "rdisc.service",
│ │ │ -0005dad0: 206d 756c 7469 6c69 6e65 3d54 7275 6529   multiline=True)
│ │ │ -0005dae0: 0a0a 2020 2d20 6e61 6d65 3a20 556e 6974  ..  - name: Unit
│ │ │ -0005daf0: 2053 6f63 6b65 7420 4578 6973 7473 202d   Socket Exists -
│ │ │ -0005db00: 2072 6469 7363 2e73 6f63 6b65 740a 2020   rdisc.socket.  
│ │ │ -0005db10: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ -0005db20: 6e2e 636f 6d6d 616e 643a 2073 7973 7465  n.command: syste
│ │ │ -0005db30: 6d63 746c 202d 7120 6c69 7374 2d75 6e69  mctl -q list-uni
│ │ │ -0005db40: 742d 6669 6c65 7320 7264 6973 632e 736f  t-files rdisc.so
│ │ │ -0005db50: 636b 6574 0a20 2020 2072 6567 6973 7465  cket.    registe
│ │ │ -0005db60: 723a 2073 6f63 6b65 745f 6669 6c65 5f65  r: socket_file_e
│ │ │ -0005db70: 7869 7374 730a 2020 2020 6368 616e 6765  xists.    change
│ │ │ -0005db80: 645f 7768 656e 3a20 6661 6c73 650a 2020  d_when: false.  
│ │ │ -0005db90: 2020 6661 696c 6564 5f77 6865 6e3a 2073    failed_when: s
│ │ │ -0005dba0: 6f63 6b65 745f 6669 6c65 5f65 7869 7374  ocket_file_exist
│ │ │ -0005dbb0: 732e 7263 206e 6f74 2069 6e20 5b30 2c20  s.rc not in [0, 
│ │ │ -0005dbc0: 315d 0a20 2020 2063 6865 636b 5f6d 6f64  1].    check_mod
│ │ │ -0005dbd0: 653a 2066 616c 7365 0a0a 2020 2d20 6e61  e: false..  - na
│ │ │ -0005dbe0: 6d65 3a20 4469 7361 626c 6520 4e65 7477  me: Disable Netw
│ │ │ -0005dbf0: 6f72 6b20 526f 7574 6572 2044 6973 636f  ork Router Disco
│ │ │ -0005dc00: 7665 7279 2044 6165 6d6f 6e20 2872 6469  very Daemon (rdi
│ │ │ -0005dc10: 7363 2920 2d20 4469 7361 626c 6520 536f  sc) - Disable So
│ │ │ -0005dc20: 636b 6574 2072 6469 7363 0a20 2020 2061  cket rdisc.    a
│ │ │ -0005dc30: 6e73 6962 6c65 2e62 7569 6c74 696e 2e73  nsible.builtin.s
│ │ │ -0005dc40: 7973 7465 6d64 3a0a 2020 2020 2020 6e61  ystemd:.      na
│ │ │ -0005dc50: 6d65 3a20 7264 6973 632e 736f 636b 6574  me: rdisc.socket
│ │ │ -0005dc60: 0a20 2020 2020 2065 6e61 626c 6564 3a20  .      enabled: 
│ │ │ -0005dc70: 6661 6c73 650a 2020 2020 2020 7374 6174  false.      stat
│ │ │ -0005dc80: 653a 2073 746f 7070 6564 0a20 2020 2020  e: stopped.     
│ │ │ -0005dc90: 206d 6173 6b65 643a 2074 7275 650a 2020   masked: true.  
│ │ │ -0005dca0: 2020 7768 656e 3a20 736f 636b 6574 5f66    when: socket_f
│ │ │ -0005dcb0: 696c 655f 6578 6973 7473 2e73 7464 6f75  ile_exists.stdou
│ │ │ -0005dcc0: 745f 6c69 6e65 7320 6973 2073 6561 7263  t_lines is searc
│ │ │ -0005dcd0: 6828 2272 6469 7363 2e73 6f63 6b65 7422  h("rdisc.socket"
│ │ │ -0005dce0: 2c20 6d75 6c74 696c 696e 653d 5472 7565  , multiline=True
│ │ │ -0005dcf0: 290a 2020 7461 6773 3a0a 2020 2d20 4e49  ).  tags:.  - NI
│ │ │ -0005dd00: 5354 2d38 3030 2d35 332d 4143 2d34 0a20  ST-800-53-AC-4. 
│ │ │ -0005dd10: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -0005dd20: 4d2d 3628 6129 0a20 202d 204e 4953 542d  M-6(a).  - NIST-
│ │ │ -0005dd30: 3830 302d 3533 2d43 4d2d 3728 6129 0a20  800-53-CM-7(a). 
│ │ │ -0005dd40: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -0005dd50: 4d2d 3728 6229 0a20 202d 2064 6973 6162  M-7(b).  - disab
│ │ │ -0005dd60: 6c65 5f73 7472 6174 6567 790a 2020 2d20  le_strategy.  - 
│ │ │ -0005dd70: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ -0005dd80: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ -0005dd90: 6e0a 2020 2d20 6d65 6469 756d 5f73 6576  n.  - medium_sev
│ │ │ -0005dda0: 6572 6974 790a 2020 2d20 6e6f 5f72 6562  erity.  - no_reb
│ │ │ -0005ddb0: 6f6f 745f 6e65 6564 6564 0a20 202d 2073  oot_needed.  - s
│ │ │ -0005ddc0: 6572 7669 6365 5f72 6469 7363 5f64 6973  ervice_rdisc_dis
│ │ │ -0005ddd0: 6162 6c65 640a 2020 2d20 7370 6563 6961  abled.  - specia
│ │ │ -0005dde0: 6c5f 7365 7276 6963 655f 626c 6f63 6b0a  l_service_block.
│ │ │ -0005ddf0: 2020 7768 656e 3a20 2722 6b65 726e 656c    when: '"kernel
│ │ │ -0005de00: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -0005de10: 7473 2e70 6163 6b61 6765 7327 0a3c 2f63  ts.packages'.Remediation A
│ │ │ +0005d200: 6e73 6962 6c65 2073 6e69 7070 6574 20e2  nsible snippet .
│ │ │ +0005d210: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063  ..
low
Disru │ │ │ -0005d680: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ -0005d690: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ -0005d6d0: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ -0005d6e0: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
< │ │ │ +0005d290: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ +0005d2b0: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ +0005d300: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>< │ │ │ +0005d330: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
- name: Gather
│ │ │ +0005d350: 2074 6865 2070 6163 6b61 6765 2066 6163   the package fac
│ │ │ +0005d360: 7473 0a20 2070 6163 6b61 6765 5f66 6163  ts.  package_fac
│ │ │ +0005d370: 7473 3a0a 2020 2020 6d61 6e61 6765 723a  ts:.    manager:
│ │ │ +0005d380: 2061 7574 6f0a 2020 7461 6773 3a0a 2020   auto.  tags:.  
│ │ │ +0005d390: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ +0005d3a0: 2d34 0a20 202d 204e 4953 542d 3830 302d  -4.  - NIST-800-
│ │ │ +0005d3b0: 3533 2d43 4d2d 3628 6129 0a20 202d 204e  53-CM-6(a).  - N
│ │ │ +0005d3c0: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ +0005d3d0: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ +0005d3e0: 3533 2d43 4d2d 3728 6229 0a20 202d 2064  53-CM-7(b).  - d
│ │ │ +0005d3f0: 6973 6162 6c65 5f73 7472 6174 6567 790a  isable_strategy.
│ │ │ +0005d400: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ +0005d410: 7479 0a20 202d 206c 6f77 5f64 6973 7275  ty.  - low_disru
│ │ │ +0005d420: 7074 696f 6e0a 2020 2d20 6d65 6469 756d  ption.  - medium
│ │ │ +0005d430: 5f73 6576 6572 6974 790a 2020 2d20 6e6f  _severity.  - no
│ │ │ +0005d440: 5f72 6562 6f6f 745f 6e65 6564 6564 0a20  _reboot_needed. 
│ │ │ +0005d450: 202d 2073 6572 7669 6365 5f72 6469 7363   - service_rdisc
│ │ │ +0005d460: 5f64 6973 6162 6c65 640a 0a2d 206e 616d  _disabled..- nam
│ │ │ +0005d470: 653a 2044 6973 6162 6c65 204e 6574 776f  e: Disable Netwo
│ │ │ +0005d480: 726b 2052 6f75 7465 7220 4469 7363 6f76  rk Router Discov
│ │ │ +0005d490: 6572 7920 4461 656d 6f6e 2028 7264 6973  ery Daemon (rdis
│ │ │ +0005d4a0: 6329 202d 2044 6973 6162 6c65 2073 6572  c) - Disable ser
│ │ │ +0005d4b0: 7669 6365 2072 6469 7363 0a20 2062 6c6f  vice rdisc.  blo
│ │ │ +0005d4c0: 636b 3a0a 0a20 202d 206e 616d 653a 2044  ck:..  - name: D
│ │ │ +0005d4d0: 6973 6162 6c65 204e 6574 776f 726b 2052  isable Network R
│ │ │ +0005d4e0: 6f75 7465 7220 4469 7363 6f76 6572 7920  outer Discovery 
│ │ │ +0005d4f0: 4461 656d 6f6e 2028 7264 6973 6329 202d  Daemon (rdisc) -
│ │ │ +0005d500: 2043 6f6c 6c65 6374 2073 7973 7465 6d64   Collect systemd
│ │ │ +0005d510: 2053 6572 7669 6365 730a 2020 2020 2020   Services.      
│ │ │ +0005d520: 5072 6573 656e 7420 696e 2074 6865 2053  Present in the S
│ │ │ +0005d530: 7973 7465 6d0a 2020 2020 616e 7369 626c  ystem.    ansibl
│ │ │ +0005d540: 652e 6275 696c 7469 6e2e 636f 6d6d 616e  e.builtin.comman
│ │ │ +0005d550: 643a 2073 7973 7465 6d63 746c 202d 7120  d: systemctl -q 
│ │ │ +0005d560: 6c69 7374 2d75 6e69 742d 6669 6c65 7320  list-unit-files 
│ │ │ +0005d570: 2d2d 7479 7065 2073 6572 7669 6365 0a20  --type service. 
│ │ │ +0005d580: 2020 2072 6567 6973 7465 723a 2073 6572     register: ser
│ │ │ +0005d590: 7669 6365 5f65 7869 7374 730a 2020 2020  vice_exists.    
│ │ │ +0005d5a0: 6368 616e 6765 645f 7768 656e 3a20 6661  changed_when: fa
│ │ │ +0005d5b0: 6c73 650a 2020 2020 6661 696c 6564 5f77  lse.    failed_w
│ │ │ +0005d5c0: 6865 6e3a 2073 6572 7669 6365 5f65 7869  hen: service_exi
│ │ │ +0005d5d0: 7374 732e 7263 206e 6f74 2069 6e20 5b30  sts.rc not in [0
│ │ │ +0005d5e0: 2c20 315d 0a20 2020 2063 6865 636b 5f6d  , 1].    check_m
│ │ │ +0005d5f0: 6f64 653a 2066 616c 7365 0a0a 2020 2d20  ode: false..  - 
│ │ │ +0005d600: 6e61 6d65 3a20 4469 7361 626c 6520 4e65  name: Disable Ne
│ │ │ +0005d610: 7477 6f72 6b20 526f 7574 6572 2044 6973  twork Router Dis
│ │ │ +0005d620: 636f 7665 7279 2044 6165 6d6f 6e20 2872  covery Daemon (r
│ │ │ +0005d630: 6469 7363 2920 2d20 456e 7375 7265 2072  disc) - Ensure r
│ │ │ +0005d640: 6469 7363 2e73 6572 7669 6365 2069 730a  disc.service is.
│ │ │ +0005d650: 2020 2020 2020 4d61 736b 6564 0a20 2020        Masked.   
│ │ │ +0005d660: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ +0005d670: 2e73 7973 7465 6d64 3a0a 2020 2020 2020  .systemd:.      
│ │ │ +0005d680: 6e61 6d65 3a20 7264 6973 632e 7365 7276  name: rdisc.serv
│ │ │ +0005d690: 6963 650a 2020 2020 2020 7374 6174 653a  ice.      state:
│ │ │ +0005d6a0: 2073 746f 7070 6564 0a20 2020 2020 2065   stopped.      e
│ │ │ +0005d6b0: 6e61 626c 6564 3a20 6661 6c73 650a 2020  nabled: false.  
│ │ │ +0005d6c0: 2020 2020 6d61 736b 6564 3a20 7472 7565      masked: true
│ │ │ +0005d6d0: 0a20 2020 2077 6865 6e3a 2073 6572 7669  .    when: servi
│ │ │ +0005d6e0: 6365 5f65 7869 7374 732e 7374 646f 7574  ce_exists.stdout
│ │ │ +0005d6f0: 5f6c 696e 6573 2069 7320 7365 6172 6368  _lines is search
│ │ │ +0005d700: 2822 7264 6973 632e 7365 7276 6963 6522  ("rdisc.service"
│ │ │ +0005d710: 2c20 6d75 6c74 696c 696e 653d 5472 7565  , multiline=True
│ │ │ +0005d720: 290a 0a20 202d 206e 616d 653a 2055 6e69  )..  - name: Uni
│ │ │ +0005d730: 7420 536f 636b 6574 2045 7869 7374 7320  t Socket Exists 
│ │ │ +0005d740: 2d20 7264 6973 632e 736f 636b 6574 0a20  - rdisc.socket. 
│ │ │ +0005d750: 2020 2061 6e73 6962 6c65 2e62 7569 6c74     ansible.built
│ │ │ +0005d760: 696e 2e63 6f6d 6d61 6e64 3a20 7379 7374  in.command: syst
│ │ │ +0005d770: 656d 6374 6c20 2d71 206c 6973 742d 756e  emctl -q list-un
│ │ │ +0005d780: 6974 2d66 696c 6573 2072 6469 7363 2e73  it-files rdisc.s
│ │ │ +0005d790: 6f63 6b65 740a 2020 2020 7265 6769 7374  ocket.    regist
│ │ │ +0005d7a0: 6572 3a20 736f 636b 6574 5f66 696c 655f  er: socket_file_
│ │ │ +0005d7b0: 6578 6973 7473 0a20 2020 2063 6861 6e67  exists.    chang
│ │ │ +0005d7c0: 6564 5f77 6865 6e3a 2066 616c 7365 0a20  ed_when: false. 
│ │ │ +0005d7d0: 2020 2066 6169 6c65 645f 7768 656e 3a20     failed_when: 
│ │ │ +0005d7e0: 736f 636b 6574 5f66 696c 655f 6578 6973  socket_file_exis
│ │ │ +0005d7f0: 7473 2e72 6320 6e6f 7420 696e 205b 302c  ts.rc not in [0,
│ │ │ +0005d800: 2031 5d0a 2020 2020 6368 6563 6b5f 6d6f   1].    check_mo
│ │ │ +0005d810: 6465 3a20 6661 6c73 650a 0a20 202d 206e  de: false..  - n
│ │ │ +0005d820: 616d 653a 2044 6973 6162 6c65 204e 6574  ame: Disable Net
│ │ │ +0005d830: 776f 726b 2052 6f75 7465 7220 4469 7363  work Router Disc
│ │ │ +0005d840: 6f76 6572 7920 4461 656d 6f6e 2028 7264  overy Daemon (rd
│ │ │ +0005d850: 6973 6329 202d 2044 6973 6162 6c65 2053  isc) - Disable S
│ │ │ +0005d860: 6f63 6b65 7420 7264 6973 630a 2020 2020  ocket rdisc.    
│ │ │ +0005d870: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ +0005d880: 7379 7374 656d 643a 0a20 2020 2020 206e  systemd:.      n
│ │ │ +0005d890: 616d 653a 2072 6469 7363 2e73 6f63 6b65  ame: rdisc.socke
│ │ │ +0005d8a0: 740a 2020 2020 2020 656e 6162 6c65 643a  t.      enabled:
│ │ │ +0005d8b0: 2066 616c 7365 0a20 2020 2020 2073 7461   false.      sta
│ │ │ +0005d8c0: 7465 3a20 7374 6f70 7065 640a 2020 2020  te: stopped.    
│ │ │ +0005d8d0: 2020 6d61 736b 6564 3a20 7472 7565 0a20    masked: true. 
│ │ │ +0005d8e0: 2020 2077 6865 6e3a 2073 6f63 6b65 745f     when: socket_
│ │ │ +0005d8f0: 6669 6c65 5f65 7869 7374 732e 7374 646f  file_exists.stdo
│ │ │ +0005d900: 7574 5f6c 696e 6573 2069 7320 7365 6172  ut_lines is sear
│ │ │ +0005d910: 6368 2822 7264 6973 632e 736f 636b 6574  ch("rdisc.socket
│ │ │ +0005d920: 222c 206d 756c 7469 6c69 6e65 3d54 7275  ", multiline=Tru
│ │ │ +0005d930: 6529 0a20 2074 6167 733a 0a20 202d 204e  e).  tags:.  - N
│ │ │ +0005d940: 4953 542d 3830 302d 3533 2d41 432d 340a  IST-800-53-AC-4.
│ │ │ +0005d950: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +0005d960: 434d 2d36 2861 290a 2020 2d20 4e49 5354  CM-6(a).  - NIST
│ │ │ +0005d970: 2d38 3030 2d35 332d 434d 2d37 2861 290a  -800-53-CM-7(a).
│ │ │ +0005d980: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +0005d990: 434d 2d37 2862 290a 2020 2d20 6469 7361  CM-7(b).  - disa
│ │ │ +0005d9a0: 626c 655f 7374 7261 7465 6779 0a20 202d  ble_strategy.  -
│ │ │ +0005d9b0: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ +0005d9c0: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ +0005d9d0: 6f6e 0a20 202d 206d 6564 6975 6d5f 7365  on.  - medium_se
│ │ │ +0005d9e0: 7665 7269 7479 0a20 202d 206e 6f5f 7265  verity.  - no_re
│ │ │ +0005d9f0: 626f 6f74 5f6e 6565 6465 640a 2020 2d20  boot_needed.  - 
│ │ │ +0005da00: 7365 7276 6963 655f 7264 6973 635f 6469  service_rdisc_di
│ │ │ +0005da10: 7361 626c 6564 0a20 202d 2073 7065 6369  sabled.  - speci
│ │ │ +0005da20: 616c 5f73 6572 7669 6365 5f62 6c6f 636b  al_service_block
│ │ │ +0005da30: 0a20 2077 6865 6e3a 2027 226b 6572 6e65  .  when: '"kerne
│ │ │ +0005da40: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ +0005da50: 6374 732e 7061 636b 6167 6573 270a 3c2f  cts.packages'.
Rem │ │ │ +0005db10: 6564 6961 7469 6f6e 2050 7570 7065 7420 ediation Puppet │ │ │ +0005db20: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ +0005db30: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
low
Disr │ │ │ +0005d2c0: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +0005d2d0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ +0005d310: 7465 6779 3a3c 2f74 683e 3c74 643e 6469 tegy:di │ │ │ +0005d320: 7361 626c 653c 2f74 643e 3c2f 7472 3e3c sable
Comp │ │ │ +0005dbb0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +0005dbc0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ +0005dbe0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ +0005dc00: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +0005dc10: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:enable
< │ │ │ +0005dc50: 7072 653e 3c63 6f64 653e 696e 636c 7564 pre>includ │ │ │ +0005dc60: 6520 6469 7361 626c 655f 7264 6973 630a e disable_rdisc. │ │ │ +0005dc70: 0a63 6c61 7373 2064 6973 6162 6c65 5f72 .class disable_r │ │ │ +0005dc80: 6469 7363 207b 0a20 2073 6572 7669 6365 disc {. service │ │ │ +0005dc90: 207b 2772 6469 7363 273a 0a20 2020 2065 {'rdisc':. e │ │ │ +0005dca0: 6e61 626c 6520 3d26 6774 3b20 6661 6c73 nable => fals │ │ │ +0005dcb0: 652c 0a20 2020 2065 6e73 7572 6520 3d26 e,. ensure =& │ │ │ +0005dcc0: 6774 3b20 2773 746f 7070 6564 272c 0a20 gt; 'stopped',. │ │ │ +0005dcd0: 207d 0a7d 0a3c 2f63 6f64 653e 3c2f 7072 }.}.
Remediation │ │ │ +0005dd90: 4f53 4275 696c 6420 426c 7565 7072 696e OSBuild Blueprin │ │ │ +0005dda0: 7420 736e 6970 7065 7420 e287 b23c 2f61 t snippet ...
.
│ │ │ +0005ddf0: 5b63 7573 746f 6d69 7a61 7469 6f6e 732e  [customizations.
│ │ │ +0005de00: 7365 7276 6963 6573 5d0a 6d61 736b 6564  services].masked
│ │ │ +0005de10: 203d 205b 2272 6469 7363 225d 0a3c 2f63   = ["rdisc"].
│ │ │ 0005de30: 3c2f 6469 763e 3c2f 7464 3e3c 2f74 723e
│ │ │ 0005de40: 3c2f 7462 6f64 793e 3c2f 7461 626c 653e │ │ │ 0005de50: 3c2f 7464 3e3c 2f74 723e 3c74 7220 6461 Remedia │ │ │ -0005f130: 7469 6f6e 204f 5342 7569 6c64 2042 6c75 tion OSBuild Blu │ │ │ -0005f140: 6570 7269 6e74 2073 6e69 7070 6574 20e2 eprint snippet . │ │ │ -0005f150: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
.[customizat
│ │ │ -0005f1a0: 696f 6e73 2e73 6572 7669 6365 735d 0a6d  ions.services].m
│ │ │ -0005f1b0: 6173 6b65 6420 3d20 5b22 6174 6422 5d0a  asked = ["atd"].
│ │ │ -0005f1c0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
R │ │ │ -0005f270: 656d 6564 6961 7469 6f6e 2050 7570 7065 emediation Puppe │ │ │ -0005f280: 7420 736e 6970 7065 7420 e287 b23c 2f61 t snippet ...
low< │ │ │ -0005f330: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ -0005f380: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
Co │ │ │ -0005f310: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -0005f340: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ -0005f360: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ -0005f370: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ -0005f390: 3c2f 7468 3e3c 7464 3e65 6e61 626c 653c enable< │ │ │ -0005f3a0: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
incl
│ │ │ -0005f3c0: 7564 6520 6469 7361 626c 655f 6174 640a  ude disable_atd.
│ │ │ -0005f3d0: 0a63 6c61 7373 2064 6973 6162 6c65 5f61  .class disable_a
│ │ │ -0005f3e0: 7464 207b 0a20 2073 6572 7669 6365 207b  td {.  service {
│ │ │ -0005f3f0: 2761 7464 273a 0a20 2020 2065 6e61 626c  'atd':.    enabl
│ │ │ -0005f400: 6520 3d26 6774 3b20 6661 6c73 652c 0a20  e => false,. 
│ │ │ -0005f410: 2020 2065 6e73 7572 6520 3d26 6774 3b20     ensure => 
│ │ │ -0005f420: 2773 746f 7070 6564 272c 0a20 207d 0a7d  'stopped',.  }.}
│ │ │ -0005f430: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
│ │ │ -0005f4e0: 5265 6d65 6469 6174 696f 6e20 416e 7369 Remediation Ansi │ │ │ -0005f4f0: 626c 6520 736e 6970 7065 7420 e287 b23c ble snippet ...< │ │ │ -0005f500: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
│ │ │ -0005f590: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
-
│ │ │ -0005f630: 206e 616d 653a 2047 6174 6865 7220 7468   name: Gather th
│ │ │ -0005f640: 6520 7061 636b 6167 6520 6661 6374 730a  e package facts.
│ │ │ -0005f650: 2020 7061 636b 6167 655f 6661 6374 733a    package_facts:
│ │ │ -0005f660: 0a20 2020 206d 616e 6167 6572 3a20 6175  .    manager: au
│ │ │ -0005f670: 746f 0a20 2074 6167 733a 0a20 202d 204e  to.  tags:.  - N
│ │ │ -0005f680: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ -0005f690: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ -0005f6a0: 3533 2d43 4d2d 3728 6129 0a20 202d 204e  53-CM-7(a).  - N
│ │ │ -0005f6b0: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ -0005f6c0: 6229 0a20 202d 2064 6973 6162 6c65 5f73  b).  - disable_s
│ │ │ -0005f6d0: 7472 6174 6567 790a 2020 2d20 6c6f 775f  trategy.  - low_
│ │ │ -0005f6e0: 636f 6d70 6c65 7869 7479 0a20 202d 206c  complexity.  - l
│ │ │ -0005f6f0: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ -0005f700: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ -0005f710: 790a 2020 2d20 6e6f 5f72 6562 6f6f 745f  y.  - no_reboot_
│ │ │ -0005f720: 6e65 6564 6564 0a20 202d 2073 6572 7669  needed.  - servi
│ │ │ -0005f730: 6365 5f61 7464 5f64 6973 6162 6c65 640a  ce_atd_disabled.
│ │ │ -0005f740: 0a2d 206e 616d 653a 2044 6973 6162 6c65  .- name: Disable
│ │ │ -0005f750: 2041 7420 5365 7276 6963 6520 2861 7464   At Service (atd
│ │ │ -0005f760: 2920 2d20 4469 7361 626c 6520 7365 7276  ) - Disable serv
│ │ │ -0005f770: 6963 6520 6174 640a 2020 626c 6f63 6b3a  ice atd.  block:
│ │ │ -0005f780: 0a0a 2020 2d20 6e61 6d65 3a20 4469 7361  ..  - name: Disa
│ │ │ -0005f790: 626c 6520 4174 2053 6572 7669 6365 2028  ble At Service (
│ │ │ -0005f7a0: 6174 6429 202d 2043 6f6c 6c65 6374 2073  atd) - Collect s
│ │ │ -0005f7b0: 7973 7465 6d64 2053 6572 7669 6365 7320  ystemd Services 
│ │ │ -0005f7c0: 5072 6573 656e 7420 696e 2074 6865 2053  Present in the S
│ │ │ -0005f7d0: 7973 7465 6d0a 2020 2020 616e 7369 626c  ystem.    ansibl
│ │ │ -0005f7e0: 652e 6275 696c 7469 6e2e 636f 6d6d 616e  e.builtin.comman
│ │ │ -0005f7f0: 643a 2073 7973 7465 6d63 746c 202d 7120  d: systemctl -q 
│ │ │ -0005f800: 6c69 7374 2d75 6e69 742d 6669 6c65 7320  list-unit-files 
│ │ │ -0005f810: 2d2d 7479 7065 2073 6572 7669 6365 0a20  --type service. 
│ │ │ -0005f820: 2020 2072 6567 6973 7465 723a 2073 6572     register: ser
│ │ │ -0005f830: 7669 6365 5f65 7869 7374 730a 2020 2020  vice_exists.    
│ │ │ -0005f840: 6368 616e 6765 645f 7768 656e 3a20 6661  changed_when: fa
│ │ │ -0005f850: 6c73 650a 2020 2020 6661 696c 6564 5f77  lse.    failed_w
│ │ │ -0005f860: 6865 6e3a 2073 6572 7669 6365 5f65 7869  hen: service_exi
│ │ │ -0005f870: 7374 732e 7263 206e 6f74 2069 6e20 5b30  sts.rc not in [0
│ │ │ -0005f880: 2c20 315d 0a20 2020 2063 6865 636b 5f6d  , 1].    check_m
│ │ │ -0005f890: 6f64 653a 2066 616c 7365 0a0a 2020 2d20  ode: false..  - 
│ │ │ -0005f8a0: 6e61 6d65 3a20 4469 7361 626c 6520 4174  name: Disable At
│ │ │ -0005f8b0: 2053 6572 7669 6365 2028 6174 6429 202d   Service (atd) -
│ │ │ -0005f8c0: 2045 6e73 7572 6520 6174 642e 7365 7276   Ensure atd.serv
│ │ │ -0005f8d0: 6963 6520 6973 204d 6173 6b65 640a 2020  ice is Masked.  
│ │ │ -0005f8e0: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ -0005f8f0: 6e2e 7379 7374 656d 643a 0a20 2020 2020  n.systemd:.     
│ │ │ -0005f900: 206e 616d 653a 2061 7464 2e73 6572 7669   name: atd.servi
│ │ │ -0005f910: 6365 0a20 2020 2020 2073 7461 7465 3a20  ce.      state: 
│ │ │ -0005f920: 7374 6f70 7065 640a 2020 2020 2020 656e  stopped.      en
│ │ │ -0005f930: 6162 6c65 643a 2066 616c 7365 0a20 2020  abled: false.   
│ │ │ -0005f940: 2020 206d 6173 6b65 643a 2074 7275 650a     masked: true.
│ │ │ -0005f950: 2020 2020 7768 656e 3a20 7365 7276 6963      when: servic
│ │ │ -0005f960: 655f 6578 6973 7473 2e73 7464 6f75 745f  e_exists.stdout_
│ │ │ -0005f970: 6c69 6e65 7320 6973 2073 6561 7263 6828  lines is search(
│ │ │ -0005f980: 2261 7464 2e73 6572 7669 6365 222c 206d  "atd.service", m
│ │ │ -0005f990: 756c 7469 6c69 6e65 3d54 7275 6529 0a0a  ultiline=True)..
│ │ │ -0005f9a0: 2020 2d20 6e61 6d65 3a20 556e 6974 2053    - name: Unit S
│ │ │ -0005f9b0: 6f63 6b65 7420 4578 6973 7473 202d 2061  ocket Exists - a
│ │ │ -0005f9c0: 7464 2e73 6f63 6b65 740a 2020 2020 616e  td.socket.    an
│ │ │ -0005f9d0: 7369 626c 652e 6275 696c 7469 6e2e 636f  sible.builtin.co
│ │ │ -0005f9e0: 6d6d 616e 643a 2073 7973 7465 6d63 746c  mmand: systemctl
│ │ │ -0005f9f0: 202d 7120 6c69 7374 2d75 6e69 742d 6669   -q list-unit-fi
│ │ │ -0005fa00: 6c65 7320 6174 642e 736f 636b 6574 0a20  les atd.socket. 
│ │ │ -0005fa10: 2020 2072 6567 6973 7465 723a 2073 6f63     register: soc
│ │ │ -0005fa20: 6b65 745f 6669 6c65 5f65 7869 7374 730a  ket_file_exists.
│ │ │ -0005fa30: 2020 2020 6368 616e 6765 645f 7768 656e      changed_when
│ │ │ -0005fa40: 3a20 6661 6c73 650a 2020 2020 6661 696c  : false.    fail
│ │ │ -0005fa50: 6564 5f77 6865 6e3a 2073 6f63 6b65 745f  ed_when: socket_
│ │ │ -0005fa60: 6669 6c65 5f65 7869 7374 732e 7263 206e  file_exists.rc n
│ │ │ -0005fa70: 6f74 2069 6e20 5b30 2c20 315d 0a20 2020  ot in [0, 1].   
│ │ │ -0005fa80: 2063 6865 636b 5f6d 6f64 653a 2066 616c   check_mode: fal
│ │ │ -0005fa90: 7365 0a0a 2020 2d20 6e61 6d65 3a20 4469  se..  - name: Di
│ │ │ -0005faa0: 7361 626c 6520 4174 2053 6572 7669 6365  sable At Service
│ │ │ -0005fab0: 2028 6174 6429 202d 2044 6973 6162 6c65   (atd) - Disable
│ │ │ -0005fac0: 2053 6f63 6b65 7420 6174 640a 2020 2020   Socket atd.    
│ │ │ -0005fad0: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ -0005fae0: 7379 7374 656d 643a 0a20 2020 2020 206e  systemd:.      n
│ │ │ -0005faf0: 616d 653a 2061 7464 2e73 6f63 6b65 740a  ame: atd.socket.
│ │ │ -0005fb00: 2020 2020 2020 656e 6162 6c65 643a 2066        enabled: f
│ │ │ -0005fb10: 616c 7365 0a20 2020 2020 2073 7461 7465  alse.      state
│ │ │ -0005fb20: 3a20 7374 6f70 7065 640a 2020 2020 2020  : stopped.      
│ │ │ -0005fb30: 6d61 736b 6564 3a20 7472 7565 0a20 2020  masked: true.   
│ │ │ -0005fb40: 2077 6865 6e3a 2073 6f63 6b65 745f 6669   when: socket_fi
│ │ │ -0005fb50: 6c65 5f65 7869 7374 732e 7374 646f 7574  le_exists.stdout
│ │ │ -0005fb60: 5f6c 696e 6573 2069 7320 7365 6172 6368  _lines is search
│ │ │ -0005fb70: 2822 6174 642e 736f 636b 6574 222c 206d  ("atd.socket", m
│ │ │ -0005fb80: 756c 7469 6c69 6e65 3d54 7275 6529 0a20  ultiline=True). 
│ │ │ -0005fb90: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ -0005fba0: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ -0005fbb0: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -0005fbc0: 4d2d 3728 6129 0a20 202d 204e 4953 542d  M-7(a).  - NIST-
│ │ │ -0005fbd0: 3830 302d 3533 2d43 4d2d 3728 6229 0a20  800-53-CM-7(b). 
│ │ │ -0005fbe0: 202d 2064 6973 6162 6c65 5f73 7472 6174   - disable_strat
│ │ │ -0005fbf0: 6567 790a 2020 2d20 6c6f 775f 636f 6d70  egy.  - low_comp
│ │ │ -0005fc00: 6c65 7869 7479 0a20 202d 206c 6f77 5f64  lexity.  - low_d
│ │ │ -0005fc10: 6973 7275 7074 696f 6e0a 2020 2d20 6d65  isruption.  - me
│ │ │ -0005fc20: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ -0005fc30: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ -0005fc40: 6564 0a20 202d 2073 6572 7669 6365 5f61  ed.  - service_a
│ │ │ -0005fc50: 7464 5f64 6973 6162 6c65 640a 2020 2d20  td_disabled.  - 
│ │ │ -0005fc60: 7370 6563 6961 6c5f 7365 7276 6963 655f  special_service_
│ │ │ -0005fc70: 626c 6f63 6b0a 2020 7768 656e 3a20 2722  block.  when: '"
│ │ │ -0005fc80: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ -0005fc90: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -0005fca0: 7327 0a3c 2f63 6f64 653e 3c2f 7072 653e  s'.
│ │ │ +0005f130: 7469 6f6e 2041 6e73 6962 6c65 2073 6e69 tion Ansible sni │ │ │ +0005f140: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ +0005f150: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
< │ │ │ +0005f180: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +0005f190: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +0005f1a0: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +0005f1b0: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +0005f1c0: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >
Disruption:Strategy: │ │ │ +0005f250: 3c74 643e 6469 7361 626c 653c 2f74 643e │ │ │ +0005f260: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
│ │ │ -0005f580: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -0005f5b0: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -0005f5c0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -0005f600: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ -0005f610: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Complex │ │ │ +0005f1d0: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ +0005f1e0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
low
Reboo │ │ │ +0005f220: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ +0005f230: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
disable
- name: │ │ │ +0005f280: 4761 7468 6572 2074 6865 2070 6163 6b61 Gather the packa │ │ │ +0005f290: 6765 2066 6163 7473 0a20 2070 6163 6b61 ge facts. packa │ │ │ +0005f2a0: 6765 5f66 6163 7473 3a0a 2020 2020 6d61 ge_facts:. ma │ │ │ +0005f2b0: 6e61 6765 723a 2061 7574 6f0a 2020 7461 nager: auto. ta │ │ │ +0005f2c0: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030 gs:. - NIST-800 │ │ │ +0005f2d0: 2d35 332d 434d 2d36 2861 290a 2020 2d20 -53-CM-6(a). - │ │ │ +0005f2e0: 4e49 5354 2d38 3030 2d35 332d 434d 2d37 NIST-800-53-CM-7 │ │ │ +0005f2f0: 2861 290a 2020 2d20 4e49 5354 2d38 3030 (a). - NIST-800 │ │ │ +0005f300: 2d35 332d 434d 2d37 2862 290a 2020 2d20 -53-CM-7(b). - │ │ │ +0005f310: 6469 7361 626c 655f 7374 7261 7465 6779 disable_strategy │ │ │ +0005f320: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578 . - low_complex │ │ │ +0005f330: 6974 790a 2020 2d20 6c6f 775f 6469 7372 ity. - low_disr │ │ │ +0005f340: 7570 7469 6f6e 0a20 202d 206d 6564 6975 uption. - mediu │ │ │ +0005f350: 6d5f 7365 7665 7269 7479 0a20 202d 206e m_severity. - n │ │ │ +0005f360: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a o_reboot_needed. │ │ │ +0005f370: 2020 2d20 7365 7276 6963 655f 6174 645f - service_atd_ │ │ │ +0005f380: 6469 7361 626c 6564 0a0a 2d20 6e61 6d65 disabled..- name │ │ │ +0005f390: 3a20 4469 7361 626c 6520 4174 2053 6572 : Disable At Ser │ │ │ +0005f3a0: 7669 6365 2028 6174 6429 202d 2044 6973 vice (atd) - Dis │ │ │ +0005f3b0: 6162 6c65 2073 6572 7669 6365 2061 7464 able service atd │ │ │ +0005f3c0: 0a20 2062 6c6f 636b 3a0a 0a20 202d 206e . block:.. - n │ │ │ +0005f3d0: 616d 653a 2044 6973 6162 6c65 2041 7420 ame: Disable At │ │ │ +0005f3e0: 5365 7276 6963 6520 2861 7464 2920 2d20 Service (atd) - │ │ │ +0005f3f0: 436f 6c6c 6563 7420 7379 7374 656d 6420 Collect systemd │ │ │ +0005f400: 5365 7276 6963 6573 2050 7265 7365 6e74 Services Present │ │ │ +0005f410: 2069 6e20 7468 6520 5379 7374 656d 0a20 in the System. │ │ │ +0005f420: 2020 2061 6e73 6962 6c65 2e62 7569 6c74 ansible.built │ │ │ +0005f430: 696e 2e63 6f6d 6d61 6e64 3a20 7379 7374 in.command: syst │ │ │ +0005f440: 656d 6374 6c20 2d71 206c 6973 742d 756e emctl -q list-un │ │ │ +0005f450: 6974 2d66 696c 6573 202d 2d74 7970 6520 it-files --type │ │ │ +0005f460: 7365 7276 6963 650a 2020 2020 7265 6769 service. regi │ │ │ +0005f470: 7374 6572 3a20 7365 7276 6963 655f 6578 ster: service_ex │ │ │ +0005f480: 6973 7473 0a20 2020 2063 6861 6e67 6564 ists. changed │ │ │ +0005f490: 5f77 6865 6e3a 2066 616c 7365 0a20 2020 _when: false. │ │ │ +0005f4a0: 2066 6169 6c65 645f 7768 656e 3a20 7365 failed_when: se │ │ │ +0005f4b0: 7276 6963 655f 6578 6973 7473 2e72 6320 rvice_exists.rc │ │ │ +0005f4c0: 6e6f 7420 696e 205b 302c 2031 5d0a 2020 not in [0, 1]. │ │ │ +0005f4d0: 2020 6368 6563 6b5f 6d6f 6465 3a20 6661 check_mode: fa │ │ │ +0005f4e0: 6c73 650a 0a20 202d 206e 616d 653a 2044 lse.. - name: D │ │ │ +0005f4f0: 6973 6162 6c65 2041 7420 5365 7276 6963 isable At Servic │ │ │ +0005f500: 6520 2861 7464 2920 2d20 456e 7375 7265 e (atd) - Ensure │ │ │ +0005f510: 2061 7464 2e73 6572 7669 6365 2069 7320 atd.service is │ │ │ +0005f520: 4d61 736b 6564 0a20 2020 2061 6e73 6962 Masked. ansib │ │ │ +0005f530: 6c65 2e62 7569 6c74 696e 2e73 7973 7465 le.builtin.syste │ │ │ +0005f540: 6d64 3a0a 2020 2020 2020 6e61 6d65 3a20 md:. name: │ │ │ +0005f550: 6174 642e 7365 7276 6963 650a 2020 2020 atd.service. │ │ │ +0005f560: 2020 7374 6174 653a 2073 746f 7070 6564 state: stopped │ │ │ +0005f570: 0a20 2020 2020 2065 6e61 626c 6564 3a20 . enabled: │ │ │ +0005f580: 6661 6c73 650a 2020 2020 2020 6d61 736b false. mask │ │ │ +0005f590: 6564 3a20 7472 7565 0a20 2020 2077 6865 ed: true. whe │ │ │ +0005f5a0: 6e3a 2073 6572 7669 6365 5f65 7869 7374 n: service_exist │ │ │ +0005f5b0: 732e 7374 646f 7574 5f6c 696e 6573 2069 s.stdout_lines i │ │ │ +0005f5c0: 7320 7365 6172 6368 2822 6174 642e 7365 s search("atd.se │ │ │ +0005f5d0: 7276 6963 6522 2c20 6d75 6c74 696c 696e rvice", multilin │ │ │ +0005f5e0: 653d 5472 7565 290a 0a20 202d 206e 616d e=True).. - nam │ │ │ +0005f5f0: 653a 2055 6e69 7420 536f 636b 6574 2045 e: Unit Socket E │ │ │ +0005f600: 7869 7374 7320 2d20 6174 642e 736f 636b xists - atd.sock │ │ │ +0005f610: 6574 0a20 2020 2061 6e73 6962 6c65 2e62 et. ansible.b │ │ │ +0005f620: 7569 6c74 696e 2e63 6f6d 6d61 6e64 3a20 uiltin.command: │ │ │ +0005f630: 7379 7374 656d 6374 6c20 2d71 206c 6973 systemctl -q lis │ │ │ +0005f640: 742d 756e 6974 2d66 696c 6573 2061 7464 t-unit-files atd │ │ │ +0005f650: 2e73 6f63 6b65 740a 2020 2020 7265 6769 .socket. regi │ │ │ +0005f660: 7374 6572 3a20 736f 636b 6574 5f66 696c ster: socket_fil │ │ │ +0005f670: 655f 6578 6973 7473 0a20 2020 2063 6861 e_exists. cha │ │ │ +0005f680: 6e67 6564 5f77 6865 6e3a 2066 616c 7365 nged_when: false │ │ │ +0005f690: 0a20 2020 2066 6169 6c65 645f 7768 656e . failed_when │ │ │ +0005f6a0: 3a20 736f 636b 6574 5f66 696c 655f 6578 : socket_file_ex │ │ │ +0005f6b0: 6973 7473 2e72 6320 6e6f 7420 696e 205b ists.rc not in [ │ │ │ +0005f6c0: 302c 2031 5d0a 2020 2020 6368 6563 6b5f 0, 1]. check_ │ │ │ +0005f6d0: 6d6f 6465 3a20 6661 6c73 650a 0a20 202d mode: false.. - │ │ │ +0005f6e0: 206e 616d 653a 2044 6973 6162 6c65 2041 name: Disable A │ │ │ +0005f6f0: 7420 5365 7276 6963 6520 2861 7464 2920 t Service (atd) │ │ │ +0005f700: 2d20 4469 7361 626c 6520 536f 636b 6574 - Disable Socket │ │ │ +0005f710: 2061 7464 0a20 2020 2061 6e73 6962 6c65 atd. ansible │ │ │ +0005f720: 2e62 7569 6c74 696e 2e73 7973 7465 6d64 .builtin.systemd │ │ │ +0005f730: 3a0a 2020 2020 2020 6e61 6d65 3a20 6174 :. name: at │ │ │ +0005f740: 642e 736f 636b 6574 0a20 2020 2020 2065 d.socket. e │ │ │ +0005f750: 6e61 626c 6564 3a20 6661 6c73 650a 2020 nabled: false. │ │ │ +0005f760: 2020 2020 7374 6174 653a 2073 746f 7070 state: stopp │ │ │ +0005f770: 6564 0a20 2020 2020 206d 6173 6b65 643a ed. masked: │ │ │ +0005f780: 2074 7275 650a 2020 2020 7768 656e 3a20 true. when: │ │ │ +0005f790: 736f 636b 6574 5f66 696c 655f 6578 6973 socket_file_exis │ │ │ +0005f7a0: 7473 2e73 7464 6f75 745f 6c69 6e65 7320 ts.stdout_lines │ │ │ +0005f7b0: 6973 2073 6561 7263 6828 2261 7464 2e73 is search("atd.s │ │ │ +0005f7c0: 6f63 6b65 7422 2c20 6d75 6c74 696c 696e ocket", multilin │ │ │ +0005f7d0: 653d 5472 7565 290a 2020 7461 6773 3a0a e=True). tags:. │ │ │ +0005f7e0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d - NIST-800-53- │ │ │ +0005f7f0: 434d 2d36 2861 290a 2020 2d20 4e49 5354 CM-6(a). - NIST │ │ │ +0005f800: 2d38 3030 2d35 332d 434d 2d37 2861 290a -800-53-CM-7(a). │ │ │ +0005f810: 2020 2d20 4e49 5354 2d38 3030 2d35 332d - NIST-800-53- │ │ │ +0005f820: 434d 2d37 2862 290a 2020 2d20 6469 7361 CM-7(b). - disa │ │ │ +0005f830: 626c 655f 7374 7261 7465 6779 0a20 202d ble_strategy. - │ │ │ +0005f840: 206c 6f77 5f63 6f6d 706c 6578 6974 790a low_complexity. │ │ │ +0005f850: 2020 2d20 6c6f 775f 6469 7372 7570 7469 - low_disrupti │ │ │ +0005f860: 6f6e 0a20 202d 206d 6564 6975 6d5f 7365 on. - medium_se │ │ │ +0005f870: 7665 7269 7479 0a20 202d 206e 6f5f 7265 verity. - no_re │ │ │ +0005f880: 626f 6f74 5f6e 6565 6465 640a 2020 2d20 boot_needed. - │ │ │ +0005f890: 7365 7276 6963 655f 6174 645f 6469 7361 service_atd_disa │ │ │ +0005f8a0: 626c 6564 0a20 202d 2073 7065 6369 616c bled. - special │ │ │ +0005f8b0: 5f73 6572 7669 6365 5f62 6c6f 636b 0a20 _service_block. │ │ │ +0005f8c0: 2077 6865 6e3a 2027 226b 6572 6e65 6c22 when: '"kernel" │ │ │ +0005f8d0: 2069 6e20 616e 7369 626c 655f 6661 6374 in ansible_fact │ │ │ +0005f8e0: 732e 7061 636b 6167 6573 270a 3c2f 636f s.packages'.
< │ │ │ +0005f900: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ +0005f910: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ +0005f920: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ +0005f930: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ +0005f940: 6436 3022 2074 6162 696e 6465 783d 2230 d60" tabindex="0 │ │ │ +0005f950: 2220 726f 6c65 3d22 6275 7474 6f6e 2220 " role="button" │ │ │ +0005f960: 6172 6961 2d65 7870 616e 6465 643d 2266 aria-expanded="f │ │ │ +0005f970: 616c 7365 2220 7469 746c 653d 2241 6374 alse" title="Act │ │ │ +0005f980: 6976 6174 6520 746f 2072 6576 6561 6c22 ivate to reveal" │ │ │ +0005f990: 2068 7265 663d 2223 2122 3e52 656d 6564 href="#!">Remed │ │ │ +0005f9a0: 6961 7469 6f6e 2050 7570 7065 7420 736e iation Puppet sn │ │ │ +0005f9b0: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...

│ │ │ +0005f9f0: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ +0005fa60: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ +0005fa80: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ +0005fab0: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy: │ │ │ +0005fad0: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
Comple │ │ │ +0005fa40: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ +0005fa50: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ +0005fa90: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +0005faa0: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
enable
include │ │ │ +0005faf0: 6469 7361 626c 655f 6174 640a 0a63 6c61 disable_atd..cla │ │ │ +0005fb00: 7373 2064 6973 6162 6c65 5f61 7464 207b ss disable_atd { │ │ │ +0005fb10: 0a20 2073 6572 7669 6365 207b 2761 7464 . service {'atd │ │ │ +0005fb20: 273a 0a20 2020 2065 6e61 626c 6520 3d26 ':. enable =& │ │ │ +0005fb30: 6774 3b20 6661 6c73 652c 0a20 2020 2065 gt; false,. e │ │ │ +0005fb40: 6e73 7572 6520 3d26 6774 3b20 2773 746f nsure => 'sto │ │ │ +0005fb50: 7070 6564 272c 0a20 207d 0a7d 0a3c 2f63 pped',. }.}.
│ │ │ +0005fb70: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Reme │ │ │ +0005fc10: 6469 6174 696f 6e20 4f53 4275 696c 6420 diation OSBuild │ │ │ +0005fc20: 426c 7565 7072 696e 7420 736e 6970 7065 Blueprint snippe │ │ │ +0005fc30: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
.[customi
│ │ │ +0005fc80: 7a61 7469 6f6e 732e 7365 7276 6963 6573  zations.services
│ │ │ +0005fc90: 5d0a 6d61 736b 6564 203d 205b 2261 7464  ].masked = ["atd
│ │ │ +0005fca0: 225d 0a3c 2f63 6f64 653e 3c2f 7072 653e  "].
│ │ │ 0005fcb0: 3c2f 6469 763e 3c2f 6469 763e 3c2f 7464
│ │ │ 0005fce0: 3c74 7220 6461 7461 2d74 742d 6964 3d22 │ │ │ -00060ea0: 5265 6d65 6469 6174 696f 6e20 5075 7070 Remediation Pupp │ │ │ -00060eb0: 6574 2073 6e69 7070 6574 20e2 87b2 3c2f et snippet ...
< │ │ │ -00060f50: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -00060f60: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ -00060fb0: 3c74 723e 3c74 683e 5374 7261 7465 6779
.i
│ │ │ -00060ff0: 6e63 6c75 6465 2072 656d 6f76 655f 6f70  nclude remove_op
│ │ │ -00061000: 656e 6c64 6170 2d63 6c69 656e 7473 0a0a  enldap-clients..
│ │ │ -00061010: 636c 6173 7320 7265 6d6f 7665 5f6f 7065  class remove_ope
│ │ │ -00061020: 6e6c 6461 702d 636c 6965 6e74 7320 7b0a  nldap-clients {.
│ │ │ -00061030: 2020 7061 636b 6167 6520 7b20 276f 7065    package { 'ope
│ │ │ -00061040: 6e6c 6461 702d 636c 6965 6e74 7327 3a0a  nldap-clients':.
│ │ │ -00061050: 2020 2020 656e 7375 7265 203d 2667 743b      ensure =>
│ │ │ -00061060: 2027 7075 7267 6564 272c 0a20 207d 0a7d   'purged',.  }.}
│ │ │ -00061070: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
│ │ │ -00061120: 5265 6d65 6469 6174 696f 6e20 416e 7369 Remediation Ansi │ │ │ -00061130: 626c 6520 736e 6970 7065 7420 e287 b23c ble snippet ...< │ │ │ -00061140: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
C │ │ │ -00060f40: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -00060f70: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ -00060f80: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -00060fc0: 3a3c 2f74 683e 3c74 643e 6469 7361 626c :disabl │ │ │ -00060fd0: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
│ │ │ -000611d0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
-
│ │ │ -00061270: 206e 616d 653a 2027 456e 7375 7265 204c   name: 'Ensure L
│ │ │ -00061280: 4441 5020 636c 6965 6e74 2069 7320 6e6f  DAP client is no
│ │ │ -00061290: 7420 696e 7374 616c 6c65 643a 2045 6e73  t installed: Ens
│ │ │ -000612a0: 7572 6520 6f70 656e 6c64 6170 2d63 6c69  ure openldap-cli
│ │ │ -000612b0: 656e 7473 2069 7320 7265 6d6f 7665 6427  ents is removed'
│ │ │ -000612c0: 0a20 2061 6e73 6962 6c65 2e62 7569 6c74  .  ansible.built
│ │ │ -000612d0: 696e 2e70 6163 6b61 6765 3a0a 2020 2020  in.package:.    
│ │ │ -000612e0: 6e61 6d65 3a20 6f70 656e 6c64 6170 2d63  name: openldap-c
│ │ │ -000612f0: 6c69 656e 7473 0a20 2020 2073 7461 7465  lients.    state
│ │ │ -00061300: 3a20 6162 7365 6e74 0a20 2074 6167 733a  : absent.  tags:
│ │ │ -00061310: 0a20 202d 2064 6973 6162 6c65 5f73 7472  .  - disable_str
│ │ │ -00061320: 6174 6567 790a 2020 2d20 6c6f 775f 636f  ategy.  - low_co
│ │ │ -00061330: 6d70 6c65 7869 7479 0a20 202d 206c 6f77  mplexity.  - low
│ │ │ -00061340: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ -00061350: 6c6f 775f 7365 7665 7269 7479 0a20 202d  low_severity.  -
│ │ │ -00061360: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ -00061370: 640a 2020 2d20 7061 636b 6167 655f 6f70  d.  - package_op
│ │ │ -00061380: 656e 6c64 6170 2d63 6c69 656e 7473 5f72  enldap-clients_r
│ │ │ -00061390: 656d 6f76 6564 0a3c 2f63 6f64 653e 3c2f  emoved.
│ │ │ -000611c0: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -000611f0: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -00061200: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -00061240: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ -00061250: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
│ │ │ +00060f50: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
-
│ │ │ +00060ff0: 206e 616d 653a 2027 456e 7375 7265 204c   name: 'Ensure L
│ │ │ +00061000: 4441 5020 636c 6965 6e74 2069 7320 6e6f  DAP client is no
│ │ │ +00061010: 7420 696e 7374 616c 6c65 643a 2045 6e73  t installed: Ens
│ │ │ +00061020: 7572 6520 6f70 656e 6c64 6170 2d63 6c69  ure openldap-cli
│ │ │ +00061030: 656e 7473 2069 7320 7265 6d6f 7665 6427  ents is removed'
│ │ │ +00061040: 0a20 2061 6e73 6962 6c65 2e62 7569 6c74  .  ansible.built
│ │ │ +00061050: 696e 2e70 6163 6b61 6765 3a0a 2020 2020  in.package:.    
│ │ │ +00061060: 6e61 6d65 3a20 6f70 656e 6c64 6170 2d63  name: openldap-c
│ │ │ +00061070: 6c69 656e 7473 0a20 2020 2073 7461 7465  lients.    state
│ │ │ +00061080: 3a20 6162 7365 6e74 0a20 2074 6167 733a  : absent.  tags:
│ │ │ +00061090: 0a20 202d 2064 6973 6162 6c65 5f73 7472  .  - disable_str
│ │ │ +000610a0: 6174 6567 790a 2020 2d20 6c6f 775f 636f  ategy.  - low_co
│ │ │ +000610b0: 6d70 6c65 7869 7479 0a20 202d 206c 6f77  mplexity.  - low
│ │ │ +000610c0: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +000610d0: 6c6f 775f 7365 7665 7269 7479 0a20 202d  low_severity.  -
│ │ │ +000610e0: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ +000610f0: 640a 2020 2d20 7061 636b 6167 655f 6f70  d.  - package_op
│ │ │ +00061100: 656e 6c64 6170 2d63 6c69 656e 7473 5f72  enldap-clients_r
│ │ │ +00061110: 656d 6f76 6564 0a3c 2f63 6f64 653e 3c2f  emoved.Remediatio
│ │ │ +000611d0: 6e20 5075 7070 6574 2073 6e69 7070 6574  n Puppet snippet
│ │ │ +000611e0: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976   ...
low< │ │ │ +000612b0: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>
│ │ │ +00060f40: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +00060f70: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +00060f80: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +00060fc0: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ +00060fd0: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Complexity: │ │ │ +00061270: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Di │ │ │ +00061290: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:
Reboot:false
St │ │ │ +000612e0: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ +000612f0: 6469 7361 626c 653c 2f74 643e 3c2f 7472 disable
.include rem
│ │ │ +00061320: 6f76 655f 6f70 656e 6c64 6170 2d63 6c69  ove_openldap-cli
│ │ │ +00061330: 656e 7473 0a0a 636c 6173 7320 7265 6d6f  ents..class remo
│ │ │ +00061340: 7665 5f6f 7065 6e6c 6461 702d 636c 6965  ve_openldap-clie
│ │ │ +00061350: 6e74 7320 7b0a 2020 7061 636b 6167 6520  nts {.  package 
│ │ │ +00061360: 7b20 276f 7065 6e6c 6461 702d 636c 6965  { 'openldap-clie
│ │ │ +00061370: 6e74 7327 3a0a 2020 2020 656e 7375 7265  nts':.    ensure
│ │ │ +00061380: 203d 2667 743b 2027 7075 7267 6564 272c   => 'purged',
│ │ │ +00061390: 0a20 207d 0a7d 0a3c 2f63 6f64 653e 3c2f  .  }.}.
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: │ │ │ │ @@ -1392,14 +1375,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 │ │ │ │ @@ -1504,31 +1504,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: │ │ │ │ @@ -1589,14 +1572,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 │ │ │ │ @@ -1662,31 +1662,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: │ │ │ │ @@ -1741,14 +1724,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 │ │ │ │ @@ -1771,31 +1771,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: │ │ │ │ @@ -1852,14 +1835,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 │ │ │ │ @@ -1879,31 +1879,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: │ │ │ │ @@ -1960,14 +1943,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 │ │ │ │ @@ -1991,31 +1991,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: │ │ │ │ @@ -2071,14 +2054,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 │ │ │ │ @@ -2107,31 +2107,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: │ │ │ │ @@ -2191,14 +2174,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 │ │ │ │ @@ -2224,31 +2224,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: │ │ │ │ @@ -2304,14 +2287,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. │ │ │ │ @@ -2329,27 +2329,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: │ │ │ │ @@ -2358,14 +2345,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 = "*".
Remediation OSB │ │ │ -0008cca0: 7569 6c64 2042 6c75 6570 7269 6e74 2073 uild Blueprint s │ │ │ -0008ccb0: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
.[[p
│ │ │ -0008cd00: 6163 6b61 6765 735d 5d0a 6e61 6d65 203d  ackages]].name =
│ │ │ -0008cd10: 2022 6c6f 6772 6f74 6174 6522 0a76 6572   "logrotate".ver
│ │ │ -0008cd20: 7369 6f6e 203d 2022 2a22 0a3c 2f63 6f64  sion = "*".
Remedi │ │ │ -0008cde0: 6174 696f 6e20 5075 7070 6574 2073 6e69 ation Puppet sni │ │ │ -0008cdf0: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -0008ce00: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
< │ │ │ -0008ce30: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ -0008ce40: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ -0008ce50: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ -0008ce60: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ -0008ce70: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Complex │ │ │ -0008ce80: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ -0008ce90: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Disruption:lowReboo │ │ │ -0008ced0: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -0008cee0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ -0008cf00: 3c74 643e 656e 6162 6c65 3c2f 7464 3e3c enable< │ │ │ -0008cf10: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
include i
│ │ │ -0008cf30: 6e73 7461 6c6c 5f6c 6f67 726f 7461 7465  nstall_logrotate
│ │ │ -0008cf40: 0a0a 636c 6173 7320 696e 7374 616c 6c5f  ..class install_
│ │ │ -0008cf50: 6c6f 6772 6f74 6174 6520 7b0a 2020 7061  logrotate {.  pa
│ │ │ -0008cf60: 636b 6167 6520 7b20 276c 6f67 726f 7461  ckage { 'logrota
│ │ │ -0008cf70: 7465 273a 0a20 2020 2065 6e73 7572 6520  te':.    ensure 
│ │ │ -0008cf80: 3d26 6774 3b20 2769 6e73 7461 6c6c 6564  => 'installed
│ │ │ -0008cf90: 272c 0a20 207d 0a7d 0a3c 2f63 6f64 653e  ',.  }.}.
│ │ │ -0008cfa0: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remediat │ │ │ -0008d050: 696f 6e20 416e 7369 626c 6520 736e 6970 ion Ansible snip │ │ │ -0008d060: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ -0008d070: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -0008d080: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -0008d090: 7365 2220 6964 3d22 6964 3937 223e 3c74 se" id="id97"> │ │ │ -0008d0e0: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ -0008d0f0: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -0008d100: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ -0008d140: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -0008d150: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ -0008d170: 7464 3e65 6e61 626c 653c 2f74 643e 3c2f td>enable
│ │ │ -0008d190: 3c63 6f64 653e 2d20 6e61 6d65 3a20 4761  - name: Ga
│ │ │ -0008d1a0: 7468 6572 2074 6865 2070 6163 6b61 6765  ther the package
│ │ │ -0008d1b0: 2066 6163 7473 0a20 2070 6163 6b61 6765   facts.  package
│ │ │ -0008d1c0: 5f66 6163 7473 3a0a 2020 2020 6d61 6e61  _facts:.    mana
│ │ │ -0008d1d0: 6765 723a 2061 7574 6f0a 2020 7461 6773  ger: auto.  tags
│ │ │ -0008d1e0: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ -0008d1f0: 332d 434d 2d36 2861 290a 2020 2d20 5043  3-CM-6(a).  - PC
│ │ │ -0008d200: 492d 4453 532d 5265 712d 3130 2e37 0a20  I-DSS-Req-10.7. 
│ │ │ -0008d210: 202d 2050 4349 2d44 5353 7634 2d31 302e   - PCI-DSSv4-10.
│ │ │ -0008d220: 350a 2020 2d20 5043 492d 4453 5376 342d  5.  - PCI-DSSv4-
│ │ │ -0008d230: 3130 2e35 2e31 0a20 202d 2065 6e61 626c  10.5.1.  - enabl
│ │ │ -0008d240: 655f 7374 7261 7465 6779 0a20 202d 206c  e_strategy.  - l
│ │ │ -0008d250: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ -0008d260: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ -0008d270: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ -0008d280: 7269 7479 0a20 202d 206e 6f5f 7265 626f  rity.  - no_rebo
│ │ │ -0008d290: 6f74 5f6e 6565 6465 640a 2020 2d20 7061  ot_needed.  - pa
│ │ │ -0008d2a0: 636b 6167 655f 6c6f 6772 6f74 6174 655f  ckage_logrotate_
│ │ │ -0008d2b0: 696e 7374 616c 6c65 640a 0a2d 206e 616d  installed..- nam
│ │ │ -0008d2c0: 653a 2045 6e73 7572 6520 6c6f 6772 6f74  e: Ensure logrot
│ │ │ -0008d2d0: 6174 6520 6973 2069 6e73 7461 6c6c 6564  ate is installed
│ │ │ -0008d2e0: 0a20 2061 6e73 6962 6c65 2e62 7569 6c74  .  ansible.built
│ │ │ -0008d2f0: 696e 2e70 6163 6b61 6765 3a0a 2020 2020  in.package:.    
│ │ │ -0008d300: 6e61 6d65 3a20 6c6f 6772 6f74 6174 650a  name: logrotate.
│ │ │ -0008d310: 2020 2020 7374 6174 653a 2070 7265 7365      state: prese
│ │ │ -0008d320: 6e74 0a20 2077 6865 6e3a 2027 226b 6572  nt.  when: '"ker
│ │ │ -0008d330: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ -0008d340: 6661 6374 732e 7061 636b 6167 6573 270a  facts.packages'.
│ │ │ -0008d350: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ -0008d360: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ -0008d370: 2020 2d20 5043 492d 4453 532d 5265 712d    - PCI-DSS-Req-
│ │ │ -0008d380: 3130 2e37 0a20 202d 2050 4349 2d44 5353  10.7.  - PCI-DSS
│ │ │ -0008d390: 7634 2d31 302e 350a 2020 2d20 5043 492d  v4-10.5.  - PCI-
│ │ │ -0008d3a0: 4453 5376 342d 3130 2e35 2e31 0a20 202d  DSSv4-10.5.1.  -
│ │ │ -0008d3b0: 2065 6e61 626c 655f 7374 7261 7465 6779   enable_strategy
│ │ │ -0008d3c0: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ -0008d3d0: 6974 790a 2020 2d20 6c6f 775f 6469 7372  ity.  - low_disr
│ │ │ -0008d3e0: 7570 7469 6f6e 0a20 202d 206d 6564 6975  uption.  - mediu
│ │ │ -0008d3f0: 6d5f 7365 7665 7269 7479 0a20 202d 206e  m_severity.  - n
│ │ │ -0008d400: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ -0008d410: 2020 2d20 7061 636b 6167 655f 6c6f 6772    - package_logr
│ │ │ -0008d420: 6f74 6174 655f 696e 7374 616c 6c65 640a  otate_installed.
│ │ │ +0008cc90: 3e52 656d 6564 6961 7469 6f6e 2041 6e73  >Remediation Ans
│ │ │ +0008cca0: 6962 6c65 2073 6e69 7070 6574 20e2 87b2  ible snippet ...
│ │ │ +0008ccb0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61  
< │ │ │ +0008cd80: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +0008cd90: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
-
│ │ │ +0008cde0: 206e 616d 653a 2047 6174 6865 7220 7468   name: Gather th
│ │ │ +0008cdf0: 6520 7061 636b 6167 6520 6661 6374 730a  e package facts.
│ │ │ +0008ce00: 2020 7061 636b 6167 655f 6661 6374 733a    package_facts:
│ │ │ +0008ce10: 0a20 2020 206d 616e 6167 6572 3a20 6175  .    manager: au
│ │ │ +0008ce20: 746f 0a20 2074 6167 733a 0a20 202d 204e  to.  tags:.  - N
│ │ │ +0008ce30: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ +0008ce40: 6129 0a20 202d 2050 4349 2d44 5353 2d52  a).  - PCI-DSS-R
│ │ │ +0008ce50: 6571 2d31 302e 370a 2020 2d20 5043 492d  eq-10.7.  - PCI-
│ │ │ +0008ce60: 4453 5376 342d 3130 2e35 0a20 202d 2050  DSSv4-10.5.  - P
│ │ │ +0008ce70: 4349 2d44 5353 7634 2d31 302e 352e 310a  CI-DSSv4-10.5.1.
│ │ │ +0008ce80: 2020 2d20 656e 6162 6c65 5f73 7472 6174    - enable_strat
│ │ │ +0008ce90: 6567 790a 2020 2d20 6c6f 775f 636f 6d70  egy.  - low_comp
│ │ │ +0008cea0: 6c65 7869 7479 0a20 202d 206c 6f77 5f64  lexity.  - low_d
│ │ │ +0008ceb0: 6973 7275 7074 696f 6e0a 2020 2d20 6d65  isruption.  - me
│ │ │ +0008cec0: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ +0008ced0: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ +0008cee0: 6564 0a20 202d 2070 6163 6b61 6765 5f6c  ed.  - package_l
│ │ │ +0008cef0: 6f67 726f 7461 7465 5f69 6e73 7461 6c6c  ogrotate_install
│ │ │ +0008cf00: 6564 0a0a 2d20 6e61 6d65 3a20 456e 7375  ed..- name: Ensu
│ │ │ +0008cf10: 7265 206c 6f67 726f 7461 7465 2069 7320  re logrotate is 
│ │ │ +0008cf20: 696e 7374 616c 6c65 640a 2020 616e 7369  installed.  ansi
│ │ │ +0008cf30: 626c 652e 6275 696c 7469 6e2e 7061 636b  ble.builtin.pack
│ │ │ +0008cf40: 6167 653a 0a20 2020 206e 616d 653a 206c  age:.    name: l
│ │ │ +0008cf50: 6f67 726f 7461 7465 0a20 2020 2073 7461  ogrotate.    sta
│ │ │ +0008cf60: 7465 3a20 7072 6573 656e 740a 2020 7768  te: present.  wh
│ │ │ +0008cf70: 656e 3a20 2722 6b65 726e 656c 2220 696e  en: '"kernel" in
│ │ │ +0008cf80: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +0008cf90: 6163 6b61 6765 7327 0a20 2074 6167 733a  ackages'.  tags:
│ │ │ +0008cfa0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +0008cfb0: 2d43 4d2d 3628 6129 0a20 202d 2050 4349  -CM-6(a).  - PCI
│ │ │ +0008cfc0: 2d44 5353 2d52 6571 2d31 302e 370a 2020  -DSS-Req-10.7.  
│ │ │ +0008cfd0: 2d20 5043 492d 4453 5376 342d 3130 2e35  - PCI-DSSv4-10.5
│ │ │ +0008cfe0: 0a20 202d 2050 4349 2d44 5353 7634 2d31  .  - PCI-DSSv4-1
│ │ │ +0008cff0: 302e 352e 310a 2020 2d20 656e 6162 6c65  0.5.1.  - enable
│ │ │ +0008d000: 5f73 7472 6174 6567 790a 2020 2d20 6c6f  _strategy.  - lo
│ │ │ +0008d010: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ +0008d020: 206c 6f77 5f64 6973 7275 7074 696f 6e0a   low_disruption.
│ │ │ +0008d030: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ +0008d040: 6974 790a 2020 2d20 6e6f 5f72 6562 6f6f  ity.  - no_reboo
│ │ │ +0008d050: 745f 6e65 6564 6564 0a20 202d 2070 6163  t_needed.  - pac
│ │ │ +0008d060: 6b61 6765 5f6c 6f67 726f 7461 7465 5f69  kage_logrotate_i
│ │ │ +0008d070: 6e73 7461 6c6c 6564 0a3c 2f63 6f64 653e  nstalled.
│ │ │ +0008d080: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remediat │ │ │ +0008d130: 696f 6e20 5075 7070 6574 2073 6e69 7070 ion Puppet snipp │ │ │ +0008d140: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
< │ │ │ +0008d1c0: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr> │ │ │ +0008d200: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 enable
Complexity:low
Disrup │ │ │ +0008cd60: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ +0008cd70: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ +0008cdb0: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ +0008cdc0: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Complexit │ │ │ +0008d1d0: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low
│ │ │ +0008d1f0: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption:low
Reboot: │ │ │ +0008d220: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false
│ │ │ +0008d240: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:
<
│ │ │ +0008d270: 636f 6465 3e69 6e63 6c75 6465 2069 6e73  code>include ins
│ │ │ +0008d280: 7461 6c6c 5f6c 6f67 726f 7461 7465 0a0a  tall_logrotate..
│ │ │ +0008d290: 636c 6173 7320 696e 7374 616c 6c5f 6c6f  class install_lo
│ │ │ +0008d2a0: 6772 6f74 6174 6520 7b0a 2020 7061 636b  grotate {.  pack
│ │ │ +0008d2b0: 6167 6520 7b20 276c 6f67 726f 7461 7465  age { 'logrotate
│ │ │ +0008d2c0: 273a 0a20 2020 2065 6e73 7572 6520 3d26  ':.    ensure =&
│ │ │ +0008d2d0: 6774 3b20 2769 6e73 7461 6c6c 6564 272c  gt; 'installed',
│ │ │ +0008d2e0: 0a20 207d 0a7d 0a3c 2f63 6f64 653e 3c2f  .  }.}.
Remediatio │ │ │ +0008d3a0: 6e20 4f53 4275 696c 6420 426c 7565 7072 n OSBuild Bluepr │ │ │ +0008d3b0: 696e 7420 736e 6970 7065 7420 e287 b23c int snippet ...< │ │ │ +0008d3c0: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
.[[packages]].n
│ │ │ +0008d410: 616d 6520 3d20 226c 6f67 726f 7461 7465  ame = "logrotate
│ │ │ +0008d420: 220a 7665 7273 696f 6e20 3d20 222a 220a  ".version = "*".
│ │ │  0008d430: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
Remediation OSB │ │ │ -000901f0: 7569 6c64 2042 6c75 6570 7269 6e74 2073 uild Blueprint s │ │ │ -00090200: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
.[[p
│ │ │ -00090250: 6163 6b61 6765 735d 5d0a 6e61 6d65 203d  ackages]].name =
│ │ │ -00090260: 2022 6669 7265 7761 6c6c 6422 0a76 6572   "firewalld".ver
│ │ │ -00090270: 7369 6f6e 203d 2022 2a22 0a3c 2f63 6f64  sion = "*".
Remed │ │ │ -00090330: 6961 7469 6f6e 2050 7570 7065 7420 736e iation Puppet sn │ │ │ -00090340: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ -000903f0: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ -00090410: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ -00090440: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ -000903d0: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ -000903e0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ -00090400: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ -00090420: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -00090430: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:enable

include │ │ │ -00090480: 2069 6e73 7461 6c6c 5f66 6972 6577 616c install_firewal │ │ │ -00090490: 6c64 0a0a 636c 6173 7320 696e 7374 616c ld..class instal │ │ │ -000904a0: 6c5f 6669 7265 7761 6c6c 6420 7b0a 2020 l_firewalld {. │ │ │ -000904b0: 7061 636b 6167 6520 7b20 2766 6972 6577 package { 'firew │ │ │ -000904c0: 616c 6c64 273a 0a20 2020 2065 6e73 7572 alld':. ensur │ │ │ -000904d0: 6520 3d26 6774 3b20 2769 6e73 7461 6c6c e => 'install │ │ │ -000904e0: 6564 272c 0a20 207d 0a7d 0a3c 2f63 6f64 ed',. }.}.

Remed │ │ │ -000905a0: 6961 7469 6f6e 2041 6e73 6962 6c65 2073 iation Ansible s │ │ │ -000905b0: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ -00090640: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -00090650: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -00090670: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ -00090690: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -000906a0: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:enable
< │ │ │ -000906e0: 7072 653e 3c63 6f64 653e 2d20 6e61 6d65 pre>- name │ │ │ -000906f0: 3a20 4761 7468 6572 2074 6865 2070 6163 : Gather the pac │ │ │ -00090700: 6b61 6765 2066 6163 7473 0a20 2070 6163 kage facts. pac │ │ │ -00090710: 6b61 6765 5f66 6163 7473 3a0a 2020 2020 kage_facts:. │ │ │ -00090720: 6d61 6e61 6765 723a 2061 7574 6f0a 2020 manager: auto. │ │ │ -00090730: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38 tags:. - NIST-8 │ │ │ -00090740: 3030 2d35 332d 434d 2d36 2861 290a 2020 00-53-CM-6(a). │ │ │ -00090750: 2d20 5043 492d 4453 5376 342d 312e 320a - PCI-DSSv4-1.2. │ │ │ -00090760: 2020 2d20 5043 492d 4453 5376 342d 312e - PCI-DSSv4-1. │ │ │ -00090770: 322e 310a 2020 2d20 656e 6162 6c65 5f73 2.1. - enable_s │ │ │ -00090780: 7472 6174 6567 790a 2020 2d20 6c6f 775f trategy. - low_ │ │ │ -00090790: 636f 6d70 6c65 7869 7479 0a20 202d 206c complexity. - l │ │ │ -000907a0: 6f77 5f64 6973 7275 7074 696f 6e0a 2020 ow_disruption. │ │ │ -000907b0: 2d20 6d65 6469 756d 5f73 6576 6572 6974 - medium_severit │ │ │ -000907c0: 790a 2020 2d20 6e6f 5f72 6562 6f6f 745f y. - no_reboot_ │ │ │ -000907d0: 6e65 6564 6564 0a20 202d 2070 6163 6b61 needed. - packa │ │ │ -000907e0: 6765 5f66 6972 6577 616c 6c64 5f69 6e73 ge_firewalld_ins │ │ │ -000907f0: 7461 6c6c 6564 0a0a 2d20 6e61 6d65 3a20 talled..- name: │ │ │ -00090800: 456e 7375 7265 2066 6972 6577 616c 6c64 Ensure firewalld │ │ │ -00090810: 2069 7320 696e 7374 616c 6c65 640a 2020 is installed. │ │ │ -00090820: 616e 7369 626c 652e 6275 696c 7469 6e2e ansible.builtin. │ │ │ -00090830: 7061 636b 6167 653a 0a20 2020 206e 616d package:. nam │ │ │ -00090840: 653a 2066 6972 6577 616c 6c64 0a20 2020 e: firewalld. │ │ │ -00090850: 2073 7461 7465 3a20 7072 6573 656e 740a state: present. │ │ │ -00090860: 2020 7768 656e 3a20 2722 6b65 726e 656c when: '"kernel │ │ │ -00090870: 2220 696e 2061 6e73 6962 6c65 5f66 6163 " in ansible_fac │ │ │ -00090880: 7473 2e70 6163 6b61 6765 7327 0a20 2074 ts.packages'. t │ │ │ -00090890: 6167 733a 0a20 202d 204e 4953 542d 3830 ags:. - NIST-80 │ │ │ -000908a0: 302d 3533 2d43 4d2d 3628 6129 0a20 202d 0-53-CM-6(a). - │ │ │ -000908b0: 2050 4349 2d44 5353 7634 2d31 2e32 0a20 PCI-DSSv4-1.2. │ │ │ -000908c0: 202d 2050 4349 2d44 5353 7634 2d31 2e32 - PCI-DSSv4-1.2 │ │ │ -000908d0: 2e31 0a20 202d 2065 6e61 626c 655f 7374 .1. - enable_st │ │ │ -000908e0: 7261 7465 6779 0a20 202d 206c 6f77 5f63 rategy. - low_c │ │ │ -000908f0: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f omplexity. - lo │ │ │ -00090900: 775f 6469 7372 7570 7469 6f6e 0a20 202d w_disruption. - │ │ │ -00090910: 206d 6564 6975 6d5f 7365 7665 7269 7479 medium_severity │ │ │ -00090920: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e . - no_reboot_n │ │ │ -00090930: 6565 6465 640a 2020 2d20 7061 636b 6167 eeded. - packag │ │ │ -00090940: 655f 6669 7265 7761 6c6c 645f 696e 7374 e_firewalld_inst │ │ │ -00090950: 616c 6c65 640a 3c2f 636f 6465 3e3c 2f70 alled.

Remediation Ans │ │ │ +000901f0: 6962 6c65 2073 6e69 7070 6574 20e2 87b2 ible snippet ... │ │ │ +00090200: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
< │ │ │ +000902d0: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +000902e0: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
-
│ │ │ +00090330: 206e 616d 653a 2047 6174 6865 7220 7468   name: Gather th
│ │ │ +00090340: 6520 7061 636b 6167 6520 6661 6374 730a  e package facts.
│ │ │ +00090350: 2020 7061 636b 6167 655f 6661 6374 733a    package_facts:
│ │ │ +00090360: 0a20 2020 206d 616e 6167 6572 3a20 6175  .    manager: au
│ │ │ +00090370: 746f 0a20 2074 6167 733a 0a20 202d 204e  to.  tags:.  - N
│ │ │ +00090380: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ +00090390: 6129 0a20 202d 2050 4349 2d44 5353 7634  a).  - PCI-DSSv4
│ │ │ +000903a0: 2d31 2e32 0a20 202d 2050 4349 2d44 5353  -1.2.  - PCI-DSS
│ │ │ +000903b0: 7634 2d31 2e32 2e31 0a20 202d 2065 6e61  v4-1.2.1.  - ena
│ │ │ +000903c0: 626c 655f 7374 7261 7465 6779 0a20 202d  ble_strategy.  -
│ │ │ +000903d0: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ +000903e0: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ +000903f0: 6f6e 0a20 202d 206d 6564 6975 6d5f 7365  on.  - medium_se
│ │ │ +00090400: 7665 7269 7479 0a20 202d 206e 6f5f 7265  verity.  - no_re
│ │ │ +00090410: 626f 6f74 5f6e 6565 6465 640a 2020 2d20  boot_needed.  - 
│ │ │ +00090420: 7061 636b 6167 655f 6669 7265 7761 6c6c  package_firewall
│ │ │ +00090430: 645f 696e 7374 616c 6c65 640a 0a2d 206e  d_installed..- n
│ │ │ +00090440: 616d 653a 2045 6e73 7572 6520 6669 7265  ame: Ensure fire
│ │ │ +00090450: 7761 6c6c 6420 6973 2069 6e73 7461 6c6c  walld is install
│ │ │ +00090460: 6564 0a20 2061 6e73 6962 6c65 2e62 7569  ed.  ansible.bui
│ │ │ +00090470: 6c74 696e 2e70 6163 6b61 6765 3a0a 2020  ltin.package:.  
│ │ │ +00090480: 2020 6e61 6d65 3a20 6669 7265 7761 6c6c    name: firewall
│ │ │ +00090490: 640a 2020 2020 7374 6174 653a 2070 7265  d.    state: pre
│ │ │ +000904a0: 7365 6e74 0a20 2077 6865 6e3a 2027 226b  sent.  when: '"k
│ │ │ +000904b0: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ +000904c0: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +000904d0: 270a 2020 7461 6773 3a0a 2020 2d20 4e49  '.  tags:.  - NI
│ │ │ +000904e0: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ +000904f0: 290a 2020 2d20 5043 492d 4453 5376 342d  ).  - PCI-DSSv4-
│ │ │ +00090500: 312e 320a 2020 2d20 5043 492d 4453 5376  1.2.  - PCI-DSSv
│ │ │ +00090510: 342d 312e 322e 310a 2020 2d20 656e 6162  4-1.2.1.  - enab
│ │ │ +00090520: 6c65 5f73 7472 6174 6567 790a 2020 2d20  le_strategy.  - 
│ │ │ +00090530: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ +00090540: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ +00090550: 6e0a 2020 2d20 6d65 6469 756d 5f73 6576  n.  - medium_sev
│ │ │ +00090560: 6572 6974 790a 2020 2d20 6e6f 5f72 6562  erity.  - no_reb
│ │ │ +00090570: 6f6f 745f 6e65 6564 6564 0a20 202d 2070  oot_needed.  - p
│ │ │ +00090580: 6163 6b61 6765 5f66 6972 6577 616c 6c64  ackage_firewalld
│ │ │ +00090590: 5f69 6e73 7461 6c6c 6564 0a3c 2f63 6f64  _installed.
Remed │ │ │ +00090650: 6961 7469 6f6e 2050 7570 7065 7420 736e iation Puppet sn │ │ │ +00090660: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
Complexity:low
Disrup │ │ │ +000902b0: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ +000902c0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ +00090300: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ +00090310: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
│ │ │ +00090710: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ +00090730: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ +00090760: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ +000906f0: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ +00090700: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ +00090720: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ +00090740: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ +00090750: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:enable

include │ │ │ +000907a0: 2069 6e73 7461 6c6c 5f66 6972 6577 616c install_firewal │ │ │ +000907b0: 6c64 0a0a 636c 6173 7320 696e 7374 616c ld..class instal │ │ │ +000907c0: 6c5f 6669 7265 7761 6c6c 6420 7b0a 2020 l_firewalld {. │ │ │ +000907d0: 7061 636b 6167 6520 7b20 2766 6972 6577 package { 'firew │ │ │ +000907e0: 616c 6c64 273a 0a20 2020 2065 6e73 7572 alld':. ensur │ │ │ +000907f0: 6520 3d26 6774 3b20 2769 6e73 7461 6c6c e => 'install │ │ │ +00090800: 6564 272c 0a20 207d 0a7d 0a3c 2f63 6f64 ed',. }.}.

Remed │ │ │ +000908c0: 6961 7469 6f6e 204f 5342 7569 6c64 2042 iation OSBuild B │ │ │ +000908d0: 6c75 6570 7269 6e74 2073 6e69 7070 6574 lueprint snippet │ │ │ +000908e0: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
.[[packag
│ │ │ +00090930: 6573 5d5d 0a6e 616d 6520 3d20 2266 6972  es]].name = "fir
│ │ │ +00090940: 6577 616c 6c64 220a 7665 7273 696f 6e20  ewalld".version 
│ │ │ +00090950: 3d20 222a 220a 3c2f 636f 6465 3e3c 2f70  = "*".

< │ │ │ 00090970: 2f74 643e 3c2f 7472 3e3c 2f74 626f 6479 /td>Remedi │ │ │ -00091930: 6174 696f 6e20 4f53 4275 696c 6420 426c ation OSBuild Bl │ │ │ -00091940: 7565 7072 696e 7420 736e 6970 7065 7420 ueprint snippet │ │ │ -00091950: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
│ │ │ -00091990: 3c63 6f64 653e 0a5b 6375 7374 6f6d 697a  .[customiz
│ │ │ -000919a0: 6174 696f 6e73 2e73 6572 7669 6365 735d  ations.services]
│ │ │ -000919b0: 0a65 6e61 626c 6564 203d 205b 2266 6972  .enabled = ["fir
│ │ │ -000919c0: 6577 616c 6c64 225d 0a3c 2f63 6f64 653e  ewalld"].
│ │ │ -000919d0: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ -00091a80: 7469 6f6e 2050 7570 7065 7420 736e 6970 tion Puppet snip │ │ │ -00091a90: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ -00091aa0: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -00091ab0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -00091ac0: 7365 2220 6964 3d22 6964 3130 3422 3e3c se" id="id104">< │ │ │ -00091ad0: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ -00091ae0: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ -00091af0: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ -00091b00: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ -00091b10: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Complex │ │ │ -00091b20: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ -00091b30: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Disruption:lowReboo │ │ │ -00091b70: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -00091b80: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ -00091ba0: 3c74 643e 656e 6162 6c65 3c2f 7464 3e3c enable< │ │ │ -00091bb0: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
include e
│ │ │ -00091bd0: 6e61 626c 655f 6669 7265 7761 6c6c 640a  nable_firewalld.
│ │ │ -00091be0: 0a63 6c61 7373 2065 6e61 626c 655f 6669  .class enable_fi
│ │ │ -00091bf0: 7265 7761 6c6c 6420 7b0a 2020 7365 7276  rewalld {.  serv
│ │ │ -00091c00: 6963 6520 7b27 6669 7265 7761 6c6c 6427  ice {'firewalld'
│ │ │ -00091c10: 3a0a 2020 2020 656e 6162 6c65 203d 2667  :.    enable =&g
│ │ │ -00091c20: 743b 2074 7275 652c 0a20 2020 2065 6e73  t; true,.    ens
│ │ │ -00091c30: 7572 6520 3d26 6774 3b20 2772 756e 6e69  ure => 'runni
│ │ │ -00091c40: 6e67 272c 0a20 207d 0a7d 0a3c 2f63 6f64  ng',.  }.}.
Remed │ │ │ -00091d00: 6961 7469 6f6e 2041 6e73 6962 6c65 2073 iation Ansible s │ │ │ -00091d10: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ -00091da0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -00091db0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -00091dd0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ -00091df0: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -00091e00: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:enable
< │ │ │ -00091e40: 7072 653e 3c63 6f64 653e 2d20 6e61 6d65 pre>- name │ │ │ -00091e50: 3a20 4761 7468 6572 2074 6865 2070 6163 : Gather the pac │ │ │ -00091e60: 6b61 6765 2066 6163 7473 0a20 2070 6163 kage facts. pac │ │ │ -00091e70: 6b61 6765 5f66 6163 7473 3a0a 2020 2020 kage_facts:. │ │ │ -00091e80: 6d61 6e61 6765 723a 2061 7574 6f0a 2020 manager: auto. │ │ │ -00091e90: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38 tags:. - NIST-8 │ │ │ -00091ea0: 3030 2d31 3731 2d33 2e31 2e33 0a20 202d 00-171-3.1.3. - │ │ │ -00091eb0: 204e 4953 542d 3830 302d 3137 312d 332e NIST-800-171-3. │ │ │ -00091ec0: 342e 370a 2020 2d20 4e49 5354 2d38 3030 4.7. - NIST-800 │ │ │ -00091ed0: 2d35 332d 4143 2d34 0a20 202d 204e 4953 -53-AC-4. - NIS │ │ │ -00091ee0: 542d 3830 302d 3533 2d43 412d 3328 3529 T-800-53-CA-3(5) │ │ │ -00091ef0: 0a20 202d 204e 4953 542d 3830 302d 3533 . - NIST-800-53 │ │ │ -00091f00: 2d43 4d2d 3628 6129 0a20 202d 204e 4953 -CM-6(a). - NIS │ │ │ -00091f10: 542d 3830 302d 3533 2d43 4d2d 3728 6229 T-800-53-CM-7(b) │ │ │ -00091f20: 0a20 202d 204e 4953 542d 3830 302d 3533 . - NIST-800-53 │ │ │ -00091f30: 2d53 432d 3728 3231 290a 2020 2d20 5043 -SC-7(21). - PC │ │ │ -00091f40: 492d 4453 5376 342d 312e 320a 2020 2d20 I-DSSv4-1.2. - │ │ │ -00091f50: 5043 492d 4453 5376 342d 312e 322e 310a PCI-DSSv4-1.2.1. │ │ │ -00091f60: 2020 2d20 656e 6162 6c65 5f73 7472 6174 - enable_strat │ │ │ -00091f70: 6567 790a 2020 2d20 6c6f 775f 636f 6d70 egy. - low_comp │ │ │ -00091f80: 6c65 7869 7479 0a20 202d 206c 6f77 5f64 lexity. - low_d │ │ │ -00091f90: 6973 7275 7074 696f 6e0a 2020 2d20 6d65 isruption. - me │ │ │ -00091fa0: 6469 756d 5f73 6576 6572 6974 790a 2020 dium_severity. │ │ │ -00091fb0: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564 - no_reboot_need │ │ │ -00091fc0: 6564 0a20 202d 2073 6572 7669 6365 5f66 ed. - service_f │ │ │ -00091fd0: 6972 6577 616c 6c64 5f65 6e61 626c 6564 irewalld_enabled │ │ │ -00091fe0: 0a0a 2d20 6e61 6d65 3a20 5665 7269 6679 ..- name: Verify │ │ │ -00091ff0: 2066 6972 6577 616c 6c64 2045 6e61 626c firewalld Enabl │ │ │ -00092000: 6564 202d 2045 6e61 626c 6520 7365 7276 ed - Enable serv │ │ │ -00092010: 6963 6520 6669 7265 7761 6c6c 640a 2020 ice firewalld. │ │ │ -00092020: 626c 6f63 6b3a 0a0a 2020 2d20 6e61 6d65 block:.. - name │ │ │ -00092030: 3a20 4761 7468 6572 2074 6865 2070 6163 : Gather the pac │ │ │ -00092040: 6b61 6765 2066 6163 7473 0a20 2020 2061 kage facts. a │ │ │ -00092050: 6e73 6962 6c65 2e62 7569 6c74 696e 2e70 nsible.builtin.p │ │ │ -00092060: 6163 6b61 6765 5f66 6163 7473 3a0a 2020 ackage_facts:. │ │ │ -00092070: 2020 2020 6d61 6e61 6765 723a 2061 7574 manager: aut │ │ │ -00092080: 6f0a 0a20 202d 206e 616d 653a 2056 6572 o.. - name: Ver │ │ │ -00092090: 6966 7920 6669 7265 7761 6c6c 6420 456e ify firewalld En │ │ │ -000920a0: 6162 6c65 6420 2d20 456e 6162 6c65 2053 abled - Enable S │ │ │ -000920b0: 6572 7669 6365 2066 6972 6577 616c 6c64 ervice firewalld │ │ │ -000920c0: 0a20 2020 2061 6e73 6962 6c65 2e62 7569 . ansible.bui │ │ │ -000920d0: 6c74 696e 2e73 7973 7465 6d64 3a0a 2020 ltin.systemd:. │ │ │ -000920e0: 2020 2020 6e61 6d65 3a20 6669 7265 7761 name: firewa │ │ │ -000920f0: 6c6c 640a 2020 2020 2020 656e 6162 6c65 lld. enable │ │ │ -00092100: 643a 2074 7275 650a 2020 2020 2020 7374 d: true. st │ │ │ -00092110: 6174 653a 2073 7461 7274 6564 0a20 2020 ate: started. │ │ │ -00092120: 2020 206d 6173 6b65 643a 2066 616c 7365 masked: false │ │ │ -00092130: 0a20 2020 2077 6865 6e3a 0a20 2020 202d . when:. - │ │ │ -00092140: 2027 2266 6972 6577 616c 6c64 2220 696e '"firewalld" in │ │ │ -00092150: 2061 6e73 6962 6c65 5f66 6163 7473 2e70 ansible_facts.p │ │ │ -00092160: 6163 6b61 6765 7327 0a20 2074 6167 733a ackages'. tags: │ │ │ -00092170: 0a20 202d 204e 4953 542d 3830 302d 3137 . - NIST-800-17 │ │ │ -00092180: 312d 332e 312e 330a 2020 2d20 4e49 5354 1-3.1.3. - NIST │ │ │ -00092190: 2d38 3030 2d31 3731 2d33 2e34 2e37 0a20 -800-171-3.4.7. │ │ │ -000921a0: 202d 204e 4953 542d 3830 302d 3533 2d41 - NIST-800-53-A │ │ │ -000921b0: 432d 340a 2020 2d20 4e49 5354 2d38 3030 C-4. - NIST-800 │ │ │ -000921c0: 2d35 332d 4341 2d33 2835 290a 2020 2d20 -53-CA-3(5). - │ │ │ -000921d0: 4e49 5354 2d38 3030 2d35 332d 434d 2d36 NIST-800-53-CM-6 │ │ │ -000921e0: 2861 290a 2020 2d20 4e49 5354 2d38 3030 (a). - NIST-800 │ │ │ -000921f0: 2d35 332d 434d 2d37 2862 290a 2020 2d20 -53-CM-7(b). - │ │ │ -00092200: 4e49 5354 2d38 3030 2d35 332d 5343 2d37 NIST-800-53-SC-7 │ │ │ -00092210: 2832 3129 0a20 202d 2050 4349 2d44 5353 (21). - PCI-DSS │ │ │ -00092220: 7634 2d31 2e32 0a20 202d 2050 4349 2d44 v4-1.2. - PCI-D │ │ │ -00092230: 5353 7634 2d31 2e32 2e31 0a20 202d 2065 SSv4-1.2.1. - e │ │ │ -00092240: 6e61 626c 655f 7374 7261 7465 6779 0a20 nable_strategy. │ │ │ -00092250: 202d 206c 6f77 5f63 6f6d 706c 6578 6974 - low_complexit │ │ │ -00092260: 790a 2020 2d20 6c6f 775f 6469 7372 7570 y. - low_disrup │ │ │ -00092270: 7469 6f6e 0a20 202d 206d 6564 6975 6d5f tion. - medium_ │ │ │ -00092280: 7365 7665 7269 7479 0a20 202d 206e 6f5f severity. - no_ │ │ │ -00092290: 7265 626f 6f74 5f6e 6565 6465 640a 2020 reboot_needed. │ │ │ -000922a0: 2d20 7365 7276 6963 655f 6669 7265 7761 - service_firewa │ │ │ -000922b0: 6c6c 645f 656e 6162 6c65 640a 2020 2d20 lld_enabled. - │ │ │ -000922c0: 7370 6563 6961 6c5f 7365 7276 6963 655f special_service_ │ │ │ -000922d0: 626c 6f63 6b0a 2020 7768 656e 3a0a 2020 block. when:. │ │ │ -000922e0: 2d20 2722 6b65 726e 656c 2220 696e 2061 - '"kernel" in a │ │ │ -000922f0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163 nsible_facts.pac │ │ │ -00092300: 6b61 6765 7327 0a20 202d 2027 2266 6972 kages'. - '"fir │ │ │ -00092310: 6577 616c 6c64 2220 696e 2061 6e73 6962 ewalld" in ansib │ │ │ -00092320: 6c65 5f66 6163 7473 2e70 6163 6b61 6765 le_facts.package │ │ │ -00092330: 7327 0a3c 2f63 6f64 653e 3c2f 7072 653e s'. │ │ │ +00091930: 6174 696f 6e20 416e 7369 626c 6520 736e ation Ansible sn │ │ │ +00091940: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ +000919f0: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ +00091a10: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ +00091a40: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ +000919d0: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ +000919e0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ +00091a00: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ +00091a20: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ +00091a30: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:enable

- name: │ │ │ +00091a80: 2047 6174 6865 7220 7468 6520 7061 636b Gather the pack │ │ │ +00091a90: 6167 6520 6661 6374 730a 2020 7061 636b age facts. pack │ │ │ +00091aa0: 6167 655f 6661 6374 733a 0a20 2020 206d age_facts:. m │ │ │ +00091ab0: 616e 6167 6572 3a20 6175 746f 0a20 2074 anager: auto. t │ │ │ +00091ac0: 6167 733a 0a20 202d 204e 4953 542d 3830 ags:. - NIST-80 │ │ │ +00091ad0: 302d 3137 312d 332e 312e 330a 2020 2d20 0-171-3.1.3. - │ │ │ +00091ae0: 4e49 5354 2d38 3030 2d31 3731 2d33 2e34 NIST-800-171-3.4 │ │ │ +00091af0: 2e37 0a20 202d 204e 4953 542d 3830 302d .7. - NIST-800- │ │ │ +00091b00: 3533 2d41 432d 340a 2020 2d20 4e49 5354 53-AC-4. - NIST │ │ │ +00091b10: 2d38 3030 2d35 332d 4341 2d33 2835 290a -800-53-CA-3(5). │ │ │ +00091b20: 2020 2d20 4e49 5354 2d38 3030 2d35 332d - NIST-800-53- │ │ │ +00091b30: 434d 2d36 2861 290a 2020 2d20 4e49 5354 CM-6(a). - NIST │ │ │ +00091b40: 2d38 3030 2d35 332d 434d 2d37 2862 290a -800-53-CM-7(b). │ │ │ +00091b50: 2020 2d20 4e49 5354 2d38 3030 2d35 332d - NIST-800-53- │ │ │ +00091b60: 5343 2d37 2832 3129 0a20 202d 2050 4349 SC-7(21). - PCI │ │ │ +00091b70: 2d44 5353 7634 2d31 2e32 0a20 202d 2050 -DSSv4-1.2. - P │ │ │ +00091b80: 4349 2d44 5353 7634 2d31 2e32 2e31 0a20 CI-DSSv4-1.2.1. │ │ │ +00091b90: 202d 2065 6e61 626c 655f 7374 7261 7465 - enable_strate │ │ │ +00091ba0: 6779 0a20 202d 206c 6f77 5f63 6f6d 706c gy. - low_compl │ │ │ +00091bb0: 6578 6974 790a 2020 2d20 6c6f 775f 6469 exity. - low_di │ │ │ +00091bc0: 7372 7570 7469 6f6e 0a20 202d 206d 6564 sruption. - med │ │ │ +00091bd0: 6975 6d5f 7365 7665 7269 7479 0a20 202d ium_severity. - │ │ │ +00091be0: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465 no_reboot_neede │ │ │ +00091bf0: 640a 2020 2d20 7365 7276 6963 655f 6669 d. - service_fi │ │ │ +00091c00: 7265 7761 6c6c 645f 656e 6162 6c65 640a rewalld_enabled. │ │ │ +00091c10: 0a2d 206e 616d 653a 2056 6572 6966 7920 .- name: Verify │ │ │ +00091c20: 6669 7265 7761 6c6c 6420 456e 6162 6c65 firewalld Enable │ │ │ +00091c30: 6420 2d20 456e 6162 6c65 2073 6572 7669 d - Enable servi │ │ │ +00091c40: 6365 2066 6972 6577 616c 6c64 0a20 2062 ce firewalld. b │ │ │ +00091c50: 6c6f 636b 3a0a 0a20 202d 206e 616d 653a lock:.. - name: │ │ │ +00091c60: 2047 6174 6865 7220 7468 6520 7061 636b Gather the pack │ │ │ +00091c70: 6167 6520 6661 6374 730a 2020 2020 616e age facts. an │ │ │ +00091c80: 7369 626c 652e 6275 696c 7469 6e2e 7061 sible.builtin.pa │ │ │ +00091c90: 636b 6167 655f 6661 6374 733a 0a20 2020 ckage_facts:. │ │ │ +00091ca0: 2020 206d 616e 6167 6572 3a20 6175 746f manager: auto │ │ │ +00091cb0: 0a0a 2020 2d20 6e61 6d65 3a20 5665 7269 .. - name: Veri │ │ │ +00091cc0: 6679 2066 6972 6577 616c 6c64 2045 6e61 fy firewalld Ena │ │ │ +00091cd0: 626c 6564 202d 2045 6e61 626c 6520 5365 bled - Enable Se │ │ │ +00091ce0: 7276 6963 6520 6669 7265 7761 6c6c 640a rvice firewalld. │ │ │ +00091cf0: 2020 2020 616e 7369 626c 652e 6275 696c ansible.buil │ │ │ +00091d00: 7469 6e2e 7379 7374 656d 643a 0a20 2020 tin.systemd:. │ │ │ +00091d10: 2020 206e 616d 653a 2066 6972 6577 616c name: firewal │ │ │ +00091d20: 6c64 0a20 2020 2020 2065 6e61 626c 6564 ld. enabled │ │ │ +00091d30: 3a20 7472 7565 0a20 2020 2020 2073 7461 : true. sta │ │ │ +00091d40: 7465 3a20 7374 6172 7465 640a 2020 2020 te: started. │ │ │ +00091d50: 2020 6d61 736b 6564 3a20 6661 6c73 650a masked: false. │ │ │ +00091d60: 2020 2020 7768 656e 3a0a 2020 2020 2d20 when:. - │ │ │ +00091d70: 2722 6669 7265 7761 6c6c 6422 2069 6e20 '"firewalld" in │ │ │ +00091d80: 616e 7369 626c 655f 6661 6374 732e 7061 ansible_facts.pa │ │ │ +00091d90: 636b 6167 6573 270a 2020 7461 6773 3a0a ckages'. tags:. │ │ │ +00091da0: 2020 2d20 4e49 5354 2d38 3030 2d31 3731 - NIST-800-171 │ │ │ +00091db0: 2d33 2e31 2e33 0a20 202d 204e 4953 542d -3.1.3. - NIST- │ │ │ +00091dc0: 3830 302d 3137 312d 332e 342e 370a 2020 800-171-3.4.7. │ │ │ +00091dd0: 2d20 4e49 5354 2d38 3030 2d35 332d 4143 - NIST-800-53-AC │ │ │ +00091de0: 2d34 0a20 202d 204e 4953 542d 3830 302d -4. - NIST-800- │ │ │ +00091df0: 3533 2d43 412d 3328 3529 0a20 202d 204e 53-CA-3(5). - N │ │ │ +00091e00: 4953 542d 3830 302d 3533 2d43 4d2d 3628 IST-800-53-CM-6( │ │ │ +00091e10: 6129 0a20 202d 204e 4953 542d 3830 302d a). - NIST-800- │ │ │ +00091e20: 3533 2d43 4d2d 3728 6229 0a20 202d 204e 53-CM-7(b). - N │ │ │ +00091e30: 4953 542d 3830 302d 3533 2d53 432d 3728 IST-800-53-SC-7( │ │ │ +00091e40: 3231 290a 2020 2d20 5043 492d 4453 5376 21). - PCI-DSSv │ │ │ +00091e50: 342d 312e 320a 2020 2d20 5043 492d 4453 4-1.2. - PCI-DS │ │ │ +00091e60: 5376 342d 312e 322e 310a 2020 2d20 656e Sv4-1.2.1. - en │ │ │ +00091e70: 6162 6c65 5f73 7472 6174 6567 790a 2020 able_strategy. │ │ │ +00091e80: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479 - low_complexity │ │ │ +00091e90: 0a20 202d 206c 6f77 5f64 6973 7275 7074 . - low_disrupt │ │ │ +00091ea0: 696f 6e0a 2020 2d20 6d65 6469 756d 5f73 ion. - medium_s │ │ │ +00091eb0: 6576 6572 6974 790a 2020 2d20 6e6f 5f72 everity. - no_r │ │ │ +00091ec0: 6562 6f6f 745f 6e65 6564 6564 0a20 202d eboot_needed. - │ │ │ +00091ed0: 2073 6572 7669 6365 5f66 6972 6577 616c service_firewal │ │ │ +00091ee0: 6c64 5f65 6e61 626c 6564 0a20 202d 2073 ld_enabled. - s │ │ │ +00091ef0: 7065 6369 616c 5f73 6572 7669 6365 5f62 pecial_service_b │ │ │ +00091f00: 6c6f 636b 0a20 2077 6865 6e3a 0a20 202d lock. when:. - │ │ │ +00091f10: 2027 226b 6572 6e65 6c22 2069 6e20 616e '"kernel" in an │ │ │ +00091f20: 7369 626c 655f 6661 6374 732e 7061 636b sible_facts.pack │ │ │ +00091f30: 6167 6573 270a 2020 2d20 2722 6669 7265 ages'. - '"fire │ │ │ +00091f40: 7761 6c6c 6422 2069 6e20 616e 7369 626c walld" in ansibl │ │ │ +00091f50: 655f 6661 6374 732e 7061 636b 6167 6573 e_facts.packages │ │ │ +00091f60: 270a 3c2f 636f 6465 3e3c 2f70 7265 3e3c '.< │ │ │ +00091f70: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Pu │ │ │ +00092020: 7070 6574 2073 6e69 7070 6574 20e2 87b2 ppet snippet ... │ │ │ +00092030: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61

Complexity: │ │ │ +00092100: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +00092110: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f

│ │ │ +00092160: 696e 636c 7564 6520 656e 6162 6c65 5f66  include enable_f
│ │ │ +00092170: 6972 6577 616c 6c64 0a0a 636c 6173 7320  irewalld..class 
│ │ │ +00092180: 656e 6162 6c65 5f66 6972 6577 616c 6c64  enable_firewalld
│ │ │ +00092190: 207b 0a20 2073 6572 7669 6365 207b 2766   {.  service {'f
│ │ │ +000921a0: 6972 6577 616c 6c64 273a 0a20 2020 2065  irewalld':.    e
│ │ │ +000921b0: 6e61 626c 6520 3d26 6774 3b20 7472 7565  nable => true
│ │ │ +000921c0: 2c0a 2020 2020 656e 7375 7265 203d 2667  ,.    ensure =&g
│ │ │ +000921d0: 743b 2027 7275 6e6e 696e 6727 2c0a 2020  t; 'running',.  
│ │ │ +000921e0: 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70 7265  }.}.
Remediation │ │ │ +000922a0: 4f53 4275 696c 6420 426c 7565 7072 696e OSBuild Blueprin │ │ │ +000922b0: 7420 736e 6970 7065 7420 e287 b23c 2f61 t snippet ...

│ │ │ +00092300: 0a5b 6375 7374 6f6d 697a 6174 696f 6e73  .[customizations
│ │ │ +00092310: 2e73 6572 7669 6365 735d 0a65 6e61 626c  .services].enabl
│ │ │ +00092320: 6564 203d 205b 2266 6972 6577 616c 6c64  ed = ["firewalld
│ │ │ +00092330: 225d 0a3c 2f63 6f64 653e 3c2f 7072 653e  "].
│ │ │ 00092340: 3c2f 6469 763e 3c2f 6469 763e 3c2f 7464
│ │ │ 00092370: 3c74 7220 6461 7461 2d74 742d 6964 3d22 Remediation O │ │ │ -000af190: 5342 7569 6c64 2042 6c75 6570 7269 6e74 SBuild Blueprint │ │ │ -000af1a0: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -000af1b0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
.
│ │ │ -000af1f0: 5b63 7573 746f 6d69 7a61 7469 6f6e 732e  [customizations.
│ │ │ -000af200: 7365 7276 6963 6573 5d0a 6d61 736b 6564  services].masked
│ │ │ -000af210: 203d 205b 226e 6674 6162 6c65 7322 5d0a   = ["nftables"].
│ │ │ -000af220: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ -000af2d0: 5265 6d65 6469 6174 696f 6e20 5075 7070 Remediation Pupp │ │ │ -000af2e0: 6574 2073 6e69 7070 6574 20e2 87b2 3c2f et snippet ...
low
Disru │ │ │ +000920e0: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +000920f0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +00092130: 6567 793a 3c2f 7468 3e3c 7464 3e65 6e61 egy:ena │ │ │ +00092140: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
│ │ │ -000af380: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
in
│ │ │ -000af420: 636c 7564 6520 6469 7361 626c 655f 6e66  clude disable_nf
│ │ │ -000af430: 7461 626c 6573 0a0a 636c 6173 7320 6469  tables..class di
│ │ │ -000af440: 7361 626c 655f 6e66 7461 626c 6573 207b  sable_nftables {
│ │ │ -000af450: 0a20 2073 6572 7669 6365 207b 276e 6674  .  service {'nft
│ │ │ -000af460: 6162 6c65 7327 3a0a 2020 2020 656e 6162  ables':.    enab
│ │ │ -000af470: 6c65 203d 2667 743b 2066 616c 7365 2c0a  le => false,.
│ │ │ -000af480: 2020 2020 656e 7375 7265 203d 2667 743b      ensure =>
│ │ │ -000af490: 2027 7374 6f70 7065 6427 2c0a 2020 7d0a   'stopped',.  }.
│ │ │ -000af4a0: 7d0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  }.
< │ │ │ -000af4b0: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation An │ │ │ -000af560: 7369 626c 6520 736e 6970 7065 7420 e287 sible snippet .. │ │ │ -000af570: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
│ │ │ -000af370: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -000af3a0: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -000af3b0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -000af3f0: 793a 3c2f 7468 3e3c 7464 3e65 6e61 626c y:enabl │ │ │ -000af400: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
< │ │ │ -000af5f0: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -000af610: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -000af660: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>< │ │ │ -000af690: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
- name: Gather
│ │ │ -000af6b0: 2074 6865 2070 6163 6b61 6765 2066 6163   the package fac
│ │ │ -000af6c0: 7473 0a20 2070 6163 6b61 6765 5f66 6163  ts.  package_fac
│ │ │ -000af6d0: 7473 3a0a 2020 2020 6d61 6e61 6765 723a  ts:.    manager:
│ │ │ -000af6e0: 2061 7574 6f0a 2020 7461 6773 3a0a 2020   auto.  tags:.  
│ │ │ -000af6f0: 2d20 5043 492d 4453 5376 342d 312e 320a  - PCI-DSSv4-1.2.
│ │ │ -000af700: 2020 2d20 5043 492d 4453 5376 342d 312e    - PCI-DSSv4-1.
│ │ │ -000af710: 322e 310a 2020 2d20 6469 7361 626c 655f  2.1.  - disable_
│ │ │ -000af720: 7374 7261 7465 6779 0a20 202d 206c 6f77  strategy.  - low
│ │ │ -000af730: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ -000af740: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ -000af750: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ -000af760: 7479 0a20 202d 206e 6f5f 7265 626f 6f74  ty.  - no_reboot
│ │ │ -000af770: 5f6e 6565 6465 640a 2020 2d20 7365 7276  _needed.  - serv
│ │ │ -000af780: 6963 655f 6e66 7461 626c 6573 5f64 6973  ice_nftables_dis
│ │ │ -000af790: 6162 6c65 640a 0a2d 206e 616d 653a 2056  abled..- name: V
│ │ │ -000af7a0: 6572 6966 7920 6e66 7461 626c 6573 2053  erify nftables S
│ │ │ -000af7b0: 6572 7669 6365 2069 7320 4469 7361 626c  ervice is Disabl
│ │ │ -000af7c0: 6564 202d 2044 6973 6162 6c65 2073 6572  ed - Disable ser
│ │ │ -000af7d0: 7669 6365 206e 6674 6162 6c65 730a 2020  vice nftables.  
│ │ │ -000af7e0: 626c 6f63 6b3a 0a0a 2020 2d20 6e61 6d65  block:..  - name
│ │ │ -000af7f0: 3a20 5665 7269 6679 206e 6674 6162 6c65  : Verify nftable
│ │ │ -000af800: 7320 5365 7276 6963 6520 6973 2044 6973  s Service is Dis
│ │ │ -000af810: 6162 6c65 6420 2d20 436f 6c6c 6563 7420  abled - Collect 
│ │ │ -000af820: 7379 7374 656d 6420 5365 7276 6963 6573  systemd Services
│ │ │ -000af830: 2050 7265 7365 6e74 2069 6e0a 2020 2020   Present in.    
│ │ │ -000af840: 2020 7468 6520 5379 7374 656d 0a20 2020    the System.   
│ │ │ -000af850: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ -000af860: 2e63 6f6d 6d61 6e64 3a20 7379 7374 656d  .command: system
│ │ │ -000af870: 6374 6c20 2d71 206c 6973 742d 756e 6974  ctl -q list-unit
│ │ │ -000af880: 2d66 696c 6573 202d 2d74 7970 6520 7365  -files --type se
│ │ │ -000af890: 7276 6963 650a 2020 2020 7265 6769 7374  rvice.    regist
│ │ │ -000af8a0: 6572 3a20 7365 7276 6963 655f 6578 6973  er: service_exis
│ │ │ -000af8b0: 7473 0a20 2020 2063 6861 6e67 6564 5f77  ts.    changed_w
│ │ │ -000af8c0: 6865 6e3a 2066 616c 7365 0a20 2020 2066  hen: false.    f
│ │ │ -000af8d0: 6169 6c65 645f 7768 656e 3a20 7365 7276  ailed_when: serv
│ │ │ -000af8e0: 6963 655f 6578 6973 7473 2e72 6320 6e6f  ice_exists.rc no
│ │ │ -000af8f0: 7420 696e 205b 302c 2031 5d0a 2020 2020  t in [0, 1].    
│ │ │ -000af900: 6368 6563 6b5f 6d6f 6465 3a20 6661 6c73  check_mode: fals
│ │ │ -000af910: 650a 0a20 202d 206e 616d 653a 2056 6572  e..  - name: Ver
│ │ │ -000af920: 6966 7920 6e66 7461 626c 6573 2053 6572  ify nftables Ser
│ │ │ -000af930: 7669 6365 2069 7320 4469 7361 626c 6564  vice is Disabled
│ │ │ -000af940: 202d 2045 6e73 7572 6520 6e66 7461 626c   - Ensure nftabl
│ │ │ -000af950: 6573 2e73 6572 7669 6365 2069 7320 4d61  es.service is Ma
│ │ │ -000af960: 736b 6564 0a20 2020 2061 6e73 6962 6c65  sked.    ansible
│ │ │ -000af970: 2e62 7569 6c74 696e 2e73 7973 7465 6d64  .builtin.systemd
│ │ │ -000af980: 3a0a 2020 2020 2020 6e61 6d65 3a20 6e66  :.      name: nf
│ │ │ -000af990: 7461 626c 6573 2e73 6572 7669 6365 0a20  tables.service. 
│ │ │ -000af9a0: 2020 2020 2073 7461 7465 3a20 7374 6f70       state: stop
│ │ │ -000af9b0: 7065 640a 2020 2020 2020 656e 6162 6c65  ped.      enable
│ │ │ -000af9c0: 643a 2066 616c 7365 0a20 2020 2020 206d  d: false.      m
│ │ │ -000af9d0: 6173 6b65 643a 2074 7275 650a 2020 2020  asked: true.    
│ │ │ -000af9e0: 7768 656e 3a20 7365 7276 6963 655f 6578  when: service_ex
│ │ │ -000af9f0: 6973 7473 2e73 7464 6f75 745f 6c69 6e65  ists.stdout_line
│ │ │ -000afa00: 7320 6973 2073 6561 7263 6828 226e 6674  s is search("nft
│ │ │ -000afa10: 6162 6c65 732e 7365 7276 6963 6522 2c20  ables.service", 
│ │ │ -000afa20: 6d75 6c74 696c 696e 653d 5472 7565 290a  multiline=True).
│ │ │ -000afa30: 0a20 202d 206e 616d 653a 2055 6e69 7420  .  - name: Unit 
│ │ │ -000afa40: 536f 636b 6574 2045 7869 7374 7320 2d20  Socket Exists - 
│ │ │ -000afa50: 6e66 7461 626c 6573 2e73 6f63 6b65 740a  nftables.socket.
│ │ │ -000afa60: 2020 2020 616e 7369 626c 652e 6275 696c      ansible.buil
│ │ │ -000afa70: 7469 6e2e 636f 6d6d 616e 643a 2073 7973  tin.command: sys
│ │ │ -000afa80: 7465 6d63 746c 202d 7120 6c69 7374 2d75  temctl -q list-u
│ │ │ -000afa90: 6e69 742d 6669 6c65 7320 6e66 7461 626c  nit-files nftabl
│ │ │ -000afaa0: 6573 2e73 6f63 6b65 740a 2020 2020 7265  es.socket.    re
│ │ │ -000afab0: 6769 7374 6572 3a20 736f 636b 6574 5f66  gister: socket_f
│ │ │ -000afac0: 696c 655f 6578 6973 7473 0a20 2020 2063  ile_exists.    c
│ │ │ -000afad0: 6861 6e67 6564 5f77 6865 6e3a 2066 616c  hanged_when: fal
│ │ │ -000afae0: 7365 0a20 2020 2066 6169 6c65 645f 7768  se.    failed_wh
│ │ │ -000afaf0: 656e 3a20 736f 636b 6574 5f66 696c 655f  en: socket_file_
│ │ │ -000afb00: 6578 6973 7473 2e72 6320 6e6f 7420 696e  exists.rc not in
│ │ │ -000afb10: 205b 302c 2031 5d0a 2020 2020 6368 6563   [0, 1].    chec
│ │ │ -000afb20: 6b5f 6d6f 6465 3a20 6661 6c73 650a 0a20  k_mode: false.. 
│ │ │ -000afb30: 202d 206e 616d 653a 2056 6572 6966 7920   - name: Verify 
│ │ │ -000afb40: 6e66 7461 626c 6573 2053 6572 7669 6365  nftables Service
│ │ │ -000afb50: 2069 7320 4469 7361 626c 6564 202d 2044   is Disabled - D
│ │ │ -000afb60: 6973 6162 6c65 2053 6f63 6b65 7420 6e66  isable Socket nf
│ │ │ -000afb70: 7461 626c 6573 0a20 2020 2061 6e73 6962  tables.    ansib
│ │ │ -000afb80: 6c65 2e62 7569 6c74 696e 2e73 7973 7465  le.builtin.syste
│ │ │ -000afb90: 6d64 3a0a 2020 2020 2020 6e61 6d65 3a20  md:.      name: 
│ │ │ -000afba0: 6e66 7461 626c 6573 2e73 6f63 6b65 740a  nftables.socket.
│ │ │ -000afbb0: 2020 2020 2020 656e 6162 6c65 643a 2066        enabled: f
│ │ │ -000afbc0: 616c 7365 0a20 2020 2020 2073 7461 7465  alse.      state
│ │ │ -000afbd0: 3a20 7374 6f70 7065 640a 2020 2020 2020  : stopped.      
│ │ │ -000afbe0: 6d61 736b 6564 3a20 7472 7565 0a20 2020  masked: true.   
│ │ │ -000afbf0: 2077 6865 6e3a 2073 6f63 6b65 745f 6669   when: socket_fi
│ │ │ -000afc00: 6c65 5f65 7869 7374 732e 7374 646f 7574  le_exists.stdout
│ │ │ -000afc10: 5f6c 696e 6573 2069 7320 7365 6172 6368  _lines is search
│ │ │ -000afc20: 2822 6e66 7461 626c 6573 2e73 6f63 6b65  ("nftables.socke
│ │ │ -000afc30: 7422 2c20 6d75 6c74 696c 696e 653d 5472  t", multiline=Tr
│ │ │ -000afc40: 7565 290a 2020 7461 6773 3a0a 2020 2d20  ue).  tags:.  - 
│ │ │ -000afc50: 5043 492d 4453 5376 342d 312e 320a 2020  PCI-DSSv4-1.2.  
│ │ │ -000afc60: 2d20 5043 492d 4453 5376 342d 312e 322e  - PCI-DSSv4-1.2.
│ │ │ -000afc70: 310a 2020 2d20 6469 7361 626c 655f 7374  1.  - disable_st
│ │ │ -000afc80: 7261 7465 6779 0a20 202d 206c 6f77 5f63  rategy.  - low_c
│ │ │ -000afc90: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f  omplexity.  - lo
│ │ │ -000afca0: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ -000afcb0: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ -000afcc0: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ -000afcd0: 6565 6465 640a 2020 2d20 7365 7276 6963  eeded.  - servic
│ │ │ -000afce0: 655f 6e66 7461 626c 6573 5f64 6973 6162  e_nftables_disab
│ │ │ -000afcf0: 6c65 640a 2020 2d20 7370 6563 6961 6c5f  led.  - special_
│ │ │ -000afd00: 7365 7276 6963 655f 626c 6f63 6b0a 2020  service_block.  
│ │ │ -000afd10: 7768 656e 3a20 2820 2266 6972 6577 616c  when: ( "firewal
│ │ │ -000afd20: 6c64 2220 696e 2061 6e73 6962 6c65 5f66  ld" in ansible_f
│ │ │ -000afd30: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ -000afd40: 6420 226e 6674 6162 6c65 7322 2069 6e20  d "nftables" in 
│ │ │ -000afd50: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -000afd60: 636b 6167 6573 0a20 2020 2061 6e64 2022  ckages.    and "
│ │ │ -000afd70: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ -000afd80: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -000afd90: 7320 290a 3c2f 636f 6465 3e3c 2f70 7265  s ).
Remediation A │ │ │ +000af190: 6e73 6962 6c65 2073 6e69 7070 6574 20e2 nsible snippet . │ │ │ +000af1a0: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
low
Disr │ │ │ -000af620: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -000af630: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ -000af670: 7465 6779 3a3c 2f74 683e 3c74 643e 6469 tegy:di │ │ │ -000af680: 7361 626c 653c 2f74 643e 3c2f 7472 3e3c sable
│ │ │ +000af220: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +000af240: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ +000af290: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ +000af2c0: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ +000af230: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +000af250: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ +000af2a0: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ +000af2b0: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
- name: Gathe
│ │ │ +000af2e0: 7220 7468 6520 7061 636b 6167 6520 6661  r the package fa
│ │ │ +000af2f0: 6374 730a 2020 7061 636b 6167 655f 6661  cts.  package_fa
│ │ │ +000af300: 6374 733a 0a20 2020 206d 616e 6167 6572  cts:.    manager
│ │ │ +000af310: 3a20 6175 746f 0a20 2074 6167 733a 0a20  : auto.  tags:. 
│ │ │ +000af320: 202d 2050 4349 2d44 5353 7634 2d31 2e32   - PCI-DSSv4-1.2
│ │ │ +000af330: 0a20 202d 2050 4349 2d44 5353 7634 2d31  .  - PCI-DSSv4-1
│ │ │ +000af340: 2e32 2e31 0a20 202d 2064 6973 6162 6c65  .2.1.  - disable
│ │ │ +000af350: 5f73 7472 6174 6567 790a 2020 2d20 6c6f  _strategy.  - lo
│ │ │ +000af360: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ +000af370: 206c 6f77 5f64 6973 7275 7074 696f 6e0a   low_disruption.
│ │ │ +000af380: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ +000af390: 6974 790a 2020 2d20 6e6f 5f72 6562 6f6f  ity.  - no_reboo
│ │ │ +000af3a0: 745f 6e65 6564 6564 0a20 202d 2073 6572  t_needed.  - ser
│ │ │ +000af3b0: 7669 6365 5f6e 6674 6162 6c65 735f 6469  vice_nftables_di
│ │ │ +000af3c0: 7361 626c 6564 0a0a 2d20 6e61 6d65 3a20  sabled..- name: 
│ │ │ +000af3d0: 5665 7269 6679 206e 6674 6162 6c65 7320  Verify nftables 
│ │ │ +000af3e0: 5365 7276 6963 6520 6973 2044 6973 6162  Service is Disab
│ │ │ +000af3f0: 6c65 6420 2d20 4469 7361 626c 6520 7365  led - Disable se
│ │ │ +000af400: 7276 6963 6520 6e66 7461 626c 6573 0a20  rvice nftables. 
│ │ │ +000af410: 2062 6c6f 636b 3a0a 0a20 202d 206e 616d   block:..  - nam
│ │ │ +000af420: 653a 2056 6572 6966 7920 6e66 7461 626c  e: Verify nftabl
│ │ │ +000af430: 6573 2053 6572 7669 6365 2069 7320 4469  es Service is Di
│ │ │ +000af440: 7361 626c 6564 202d 2043 6f6c 6c65 6374  sabled - Collect
│ │ │ +000af450: 2073 7973 7465 6d64 2053 6572 7669 6365   systemd Service
│ │ │ +000af460: 7320 5072 6573 656e 7420 696e 0a20 2020  s Present in.   
│ │ │ +000af470: 2020 2074 6865 2053 7973 7465 6d0a 2020     the System.  
│ │ │ +000af480: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ +000af490: 6e2e 636f 6d6d 616e 643a 2073 7973 7465  n.command: syste
│ │ │ +000af4a0: 6d63 746c 202d 7120 6c69 7374 2d75 6e69  mctl -q list-uni
│ │ │ +000af4b0: 742d 6669 6c65 7320 2d2d 7479 7065 2073  t-files --type s
│ │ │ +000af4c0: 6572 7669 6365 0a20 2020 2072 6567 6973  ervice.    regis
│ │ │ +000af4d0: 7465 723a 2073 6572 7669 6365 5f65 7869  ter: service_exi
│ │ │ +000af4e0: 7374 730a 2020 2020 6368 616e 6765 645f  sts.    changed_
│ │ │ +000af4f0: 7768 656e 3a20 6661 6c73 650a 2020 2020  when: false.    
│ │ │ +000af500: 6661 696c 6564 5f77 6865 6e3a 2073 6572  failed_when: ser
│ │ │ +000af510: 7669 6365 5f65 7869 7374 732e 7263 206e  vice_exists.rc n
│ │ │ +000af520: 6f74 2069 6e20 5b30 2c20 315d 0a20 2020  ot in [0, 1].   
│ │ │ +000af530: 2063 6865 636b 5f6d 6f64 653a 2066 616c   check_mode: fal
│ │ │ +000af540: 7365 0a0a 2020 2d20 6e61 6d65 3a20 5665  se..  - name: Ve
│ │ │ +000af550: 7269 6679 206e 6674 6162 6c65 7320 5365  rify nftables Se
│ │ │ +000af560: 7276 6963 6520 6973 2044 6973 6162 6c65  rvice is Disable
│ │ │ +000af570: 6420 2d20 456e 7375 7265 206e 6674 6162  d - Ensure nftab
│ │ │ +000af580: 6c65 732e 7365 7276 6963 6520 6973 204d  les.service is M
│ │ │ +000af590: 6173 6b65 640a 2020 2020 616e 7369 626c  asked.    ansibl
│ │ │ +000af5a0: 652e 6275 696c 7469 6e2e 7379 7374 656d  e.builtin.system
│ │ │ +000af5b0: 643a 0a20 2020 2020 206e 616d 653a 206e  d:.      name: n
│ │ │ +000af5c0: 6674 6162 6c65 732e 7365 7276 6963 650a  ftables.service.
│ │ │ +000af5d0: 2020 2020 2020 7374 6174 653a 2073 746f        state: sto
│ │ │ +000af5e0: 7070 6564 0a20 2020 2020 2065 6e61 626c  pped.      enabl
│ │ │ +000af5f0: 6564 3a20 6661 6c73 650a 2020 2020 2020  ed: false.      
│ │ │ +000af600: 6d61 736b 6564 3a20 7472 7565 0a20 2020  masked: true.   
│ │ │ +000af610: 2077 6865 6e3a 2073 6572 7669 6365 5f65   when: service_e
│ │ │ +000af620: 7869 7374 732e 7374 646f 7574 5f6c 696e  xists.stdout_lin
│ │ │ +000af630: 6573 2069 7320 7365 6172 6368 2822 6e66  es is search("nf
│ │ │ +000af640: 7461 626c 6573 2e73 6572 7669 6365 222c  tables.service",
│ │ │ +000af650: 206d 756c 7469 6c69 6e65 3d54 7275 6529   multiline=True)
│ │ │ +000af660: 0a0a 2020 2d20 6e61 6d65 3a20 556e 6974  ..  - name: Unit
│ │ │ +000af670: 2053 6f63 6b65 7420 4578 6973 7473 202d   Socket Exists -
│ │ │ +000af680: 206e 6674 6162 6c65 732e 736f 636b 6574   nftables.socket
│ │ │ +000af690: 0a20 2020 2061 6e73 6962 6c65 2e62 7569  .    ansible.bui
│ │ │ +000af6a0: 6c74 696e 2e63 6f6d 6d61 6e64 3a20 7379  ltin.command: sy
│ │ │ +000af6b0: 7374 656d 6374 6c20 2d71 206c 6973 742d  stemctl -q list-
│ │ │ +000af6c0: 756e 6974 2d66 696c 6573 206e 6674 6162  unit-files nftab
│ │ │ +000af6d0: 6c65 732e 736f 636b 6574 0a20 2020 2072  les.socket.    r
│ │ │ +000af6e0: 6567 6973 7465 723a 2073 6f63 6b65 745f  egister: socket_
│ │ │ +000af6f0: 6669 6c65 5f65 7869 7374 730a 2020 2020  file_exists.    
│ │ │ +000af700: 6368 616e 6765 645f 7768 656e 3a20 6661  changed_when: fa
│ │ │ +000af710: 6c73 650a 2020 2020 6661 696c 6564 5f77  lse.    failed_w
│ │ │ +000af720: 6865 6e3a 2073 6f63 6b65 745f 6669 6c65  hen: socket_file
│ │ │ +000af730: 5f65 7869 7374 732e 7263 206e 6f74 2069  _exists.rc not i
│ │ │ +000af740: 6e20 5b30 2c20 315d 0a20 2020 2063 6865  n [0, 1].    che
│ │ │ +000af750: 636b 5f6d 6f64 653a 2066 616c 7365 0a0a  ck_mode: false..
│ │ │ +000af760: 2020 2d20 6e61 6d65 3a20 5665 7269 6679    - name: Verify
│ │ │ +000af770: 206e 6674 6162 6c65 7320 5365 7276 6963   nftables Servic
│ │ │ +000af780: 6520 6973 2044 6973 6162 6c65 6420 2d20  e is Disabled - 
│ │ │ +000af790: 4469 7361 626c 6520 536f 636b 6574 206e  Disable Socket n
│ │ │ +000af7a0: 6674 6162 6c65 730a 2020 2020 616e 7369  ftables.    ansi
│ │ │ +000af7b0: 626c 652e 6275 696c 7469 6e2e 7379 7374  ble.builtin.syst
│ │ │ +000af7c0: 656d 643a 0a20 2020 2020 206e 616d 653a  emd:.      name:
│ │ │ +000af7d0: 206e 6674 6162 6c65 732e 736f 636b 6574   nftables.socket
│ │ │ +000af7e0: 0a20 2020 2020 2065 6e61 626c 6564 3a20  .      enabled: 
│ │ │ +000af7f0: 6661 6c73 650a 2020 2020 2020 7374 6174  false.      stat
│ │ │ +000af800: 653a 2073 746f 7070 6564 0a20 2020 2020  e: stopped.     
│ │ │ +000af810: 206d 6173 6b65 643a 2074 7275 650a 2020   masked: true.  
│ │ │ +000af820: 2020 7768 656e 3a20 736f 636b 6574 5f66    when: socket_f
│ │ │ +000af830: 696c 655f 6578 6973 7473 2e73 7464 6f75  ile_exists.stdou
│ │ │ +000af840: 745f 6c69 6e65 7320 6973 2073 6561 7263  t_lines is searc
│ │ │ +000af850: 6828 226e 6674 6162 6c65 732e 736f 636b  h("nftables.sock
│ │ │ +000af860: 6574 222c 206d 756c 7469 6c69 6e65 3d54  et", multiline=T
│ │ │ +000af870: 7275 6529 0a20 2074 6167 733a 0a20 202d  rue).  tags:.  -
│ │ │ +000af880: 2050 4349 2d44 5353 7634 2d31 2e32 0a20   PCI-DSSv4-1.2. 
│ │ │ +000af890: 202d 2050 4349 2d44 5353 7634 2d31 2e32   - PCI-DSSv4-1.2
│ │ │ +000af8a0: 2e31 0a20 202d 2064 6973 6162 6c65 5f73  .1.  - disable_s
│ │ │ +000af8b0: 7472 6174 6567 790a 2020 2d20 6c6f 775f  trategy.  - low_
│ │ │ +000af8c0: 636f 6d70 6c65 7869 7479 0a20 202d 206c  complexity.  - l
│ │ │ +000af8d0: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ +000af8e0: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ +000af8f0: 790a 2020 2d20 6e6f 5f72 6562 6f6f 745f  y.  - no_reboot_
│ │ │ +000af900: 6e65 6564 6564 0a20 202d 2073 6572 7669  needed.  - servi
│ │ │ +000af910: 6365 5f6e 6674 6162 6c65 735f 6469 7361  ce_nftables_disa
│ │ │ +000af920: 626c 6564 0a20 202d 2073 7065 6369 616c  bled.  - special
│ │ │ +000af930: 5f73 6572 7669 6365 5f62 6c6f 636b 0a20  _service_block. 
│ │ │ +000af940: 2077 6865 6e3a 2028 2022 6669 7265 7761   when: ( "firewa
│ │ │ +000af950: 6c6c 6422 2069 6e20 616e 7369 626c 655f  lld" in ansible_
│ │ │ +000af960: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ +000af970: 6e64 2022 6e66 7461 626c 6573 2220 696e  nd "nftables" in
│ │ │ +000af980: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +000af990: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ +000af9a0: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ +000af9b0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +000af9c0: 6573 2029 0a3c 2f63 6f64 653e 3c2f 7072  es ).
Remediation │ │ │ +000afa80: 2050 7570 7065 7420 736e 6970 7065 7420 Puppet snippet │ │ │ +000afa90: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
Complexity: │ │ │ +000afb20: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ +000afb40: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:low< │ │ │ +000afb60: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:falseSt │ │ │ +000afb90: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ +000afba0: 656e 6162 6c65 3c2f 7464 3e3c 2f74 723e enable │ │ │ +000afbb0: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
include disab
│ │ │ +000afbd0: 6c65 5f6e 6674 6162 6c65 730a 0a63 6c61  le_nftables..cla
│ │ │ +000afbe0: 7373 2064 6973 6162 6c65 5f6e 6674 6162  ss disable_nftab
│ │ │ +000afbf0: 6c65 7320 7b0a 2020 7365 7276 6963 6520  les {.  service 
│ │ │ +000afc00: 7b27 6e66 7461 626c 6573 273a 0a20 2020  {'nftables':.   
│ │ │ +000afc10: 2065 6e61 626c 6520 3d26 6774 3b20 6661   enable => fa
│ │ │ +000afc20: 6c73 652c 0a20 2020 2065 6e73 7572 6520  lse,.    ensure 
│ │ │ +000afc30: 3d26 6774 3b20 2773 746f 7070 6564 272c  => 'stopped',
│ │ │ +000afc40: 0a20 207d 0a7d 0a3c 2f63 6f64 653e 3c2f  .  }.}.
Remediati │ │ │ +000afd00: 6f6e 204f 5342 7569 6c64 2042 6c75 6570 on OSBuild Bluep │ │ │ +000afd10: 7269 6e74 2073 6e69 7070 6574 20e2 87b2 rint snippet ... │ │ │ +000afd20: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
.[customizati
│ │ │ +000afd70: 6f6e 732e 7365 7276 6963 6573 5d0a 6d61  ons.services].ma
│ │ │ +000afd80: 736b 6564 203d 205b 226e 6674 6162 6c65  sked = ["nftable
│ │ │ +000afd90: 7322 5d0a 3c2f 636f 6465 3e3c 2f70 7265  s"].
< │ │ │ 000afdc0: 2f74 6162 6c65 3e3c 2f74 643e 3c2f 7472 /table>Rem │ │ │ -000e0b90: 6564 6961 7469 6f6e 204f 5342 7569 6c64 ediation OSBuild │ │ │ -000e0ba0: 2042 6c75 6570 7269 6e74 2073 6e69 7070 Blueprint snipp │ │ │ -000e0bb0: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...

.[[pack │ │ │ -000e0c00: 6167 6573 5d5d 0a6e 616d 6520 3d20 226c ages]].name = "l │ │ │ -000e0c10: 6962 7365 6c69 6e75 7822 0a76 6572 7369 ibselinux".versi │ │ │ -000e0c20: 6f6e 203d 2022 2a22 0a3c 2f63 6f64 653e on = "*". │ │ │ -000e0c30: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063

Remedia │ │ │ -000e0ce0: 7469 6f6e 2050 7570 7065 7420 736e 6970 tion Puppet snip │ │ │ -000e0cf0: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ -000e0d00: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -000e0d10: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -000e0d20: 7365 2220 6964 3d22 6964 3231 3022 3e3c se" id="id210">< │ │ │ -000e0d30: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ -000e0d40: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ -000e0d50: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ -000e0d60: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ -000e0d70: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Complex │ │ │ -000e0d80: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ -000e0d90: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Disruption:lowReboo │ │ │ -000e0dd0: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -000e0de0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ -000e0e00: 3c74 643e 656e 6162 6c65 3c2f 7464 3e3c enable< │ │ │ -000e0e10: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
include i
│ │ │ -000e0e30: 6e73 7461 6c6c 5f6c 6962 7365 6c69 6e75  nstall_libselinu
│ │ │ -000e0e40: 780a 0a63 6c61 7373 2069 6e73 7461 6c6c  x..class install
│ │ │ -000e0e50: 5f6c 6962 7365 6c69 6e75 7820 7b0a 2020  _libselinux {.  
│ │ │ -000e0e60: 7061 636b 6167 6520 7b20 276c 6962 7365  package { 'libse
│ │ │ -000e0e70: 6c69 6e75 7827 3a0a 2020 2020 656e 7375  linux':.    ensu
│ │ │ -000e0e80: 7265 203d 2667 743b 2027 696e 7374 616c  re => 'instal
│ │ │ -000e0e90: 6c65 6427 2c0a 2020 7d0a 7d0a 3c2f 636f  led',.  }.}.
< │ │ │ -000e0eb0: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ -000e0ec0: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ -000e0ed0: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ -000e0ee0: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ -000e0ef0: 6432 3131 2220 7461 6269 6e64 6578 3d22 d211" tabindex=" │ │ │ -000e0f00: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ -000e0f10: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ -000e0f20: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ -000e0f30: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ -000e0f40: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ -000e0f50: 6469 6174 696f 6e20 416e 7369 626c 6520 diation Ansible │ │ │ -000e0f60: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ -000e0f70: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Com │ │ │ -000e0ff0: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ -000e1020: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ -000e1040: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -000e1050: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -000e1070: 2f74 683e 3c74 643e 656e 6162 6c65 3c2f /th>enable
│ │ │ -000e1090: 3c70 7265 3e3c 636f 6465 3e2d 206e 616d
- nam
│ │ │ -000e10a0: 653a 2047 6174 6865 7220 7468 6520 7061  e: Gather the pa
│ │ │ -000e10b0: 636b 6167 6520 6661 6374 730a 2020 7061  ckage facts.  pa
│ │ │ -000e10c0: 636b 6167 655f 6661 6374 733a 0a20 2020  ckage_facts:.   
│ │ │ -000e10d0: 206d 616e 6167 6572 3a20 6175 746f 0a20   manager: auto. 
│ │ │ -000e10e0: 2074 6167 733a 0a20 202d 2050 4349 2d44   tags:.  - PCI-D
│ │ │ -000e10f0: 5353 7634 2d31 2e32 0a20 202d 2050 4349  SSv4-1.2.  - PCI
│ │ │ -000e1100: 2d44 5353 7634 2d31 2e32 2e36 0a20 202d  -DSSv4-1.2.6.  -
│ │ │ -000e1110: 2065 6e61 626c 655f 7374 7261 7465 6779   enable_strategy
│ │ │ -000e1120: 0a20 202d 2068 6967 685f 7365 7665 7269  .  - high_severi
│ │ │ -000e1130: 7479 0a20 202d 206c 6f77 5f63 6f6d 706c  ty.  - low_compl
│ │ │ -000e1140: 6578 6974 790a 2020 2d20 6c6f 775f 6469  exity.  - low_di
│ │ │ -000e1150: 7372 7570 7469 6f6e 0a20 202d 206e 6f5f  sruption.  - no_
│ │ │ -000e1160: 7265 626f 6f74 5f6e 6565 6465 640a 2020  reboot_needed.  
│ │ │ -000e1170: 2d20 7061 636b 6167 655f 6c69 6273 656c  - package_libsel
│ │ │ -000e1180: 696e 7578 5f69 6e73 7461 6c6c 6564 0a0a  inux_installed..
│ │ │ -000e1190: 2d20 6e61 6d65 3a20 456e 7375 7265 206c  - name: Ensure l
│ │ │ -000e11a0: 6962 7365 6c69 6e75 7820 6973 2069 6e73  ibselinux is ins
│ │ │ -000e11b0: 7461 6c6c 6564 0a20 2061 6e73 6962 6c65  talled.  ansible
│ │ │ -000e11c0: 2e62 7569 6c74 696e 2e70 6163 6b61 6765  .builtin.package
│ │ │ -000e11d0: 3a0a 2020 2020 6e61 6d65 3a20 6c69 6273  :.    name: libs
│ │ │ -000e11e0: 656c 696e 7578 0a20 2020 2073 7461 7465  elinux.    state
│ │ │ -000e11f0: 3a20 7072 6573 656e 740a 2020 7768 656e  : present.  when
│ │ │ -000e1200: 3a20 2722 6b65 726e 656c 2220 696e 2061  : '"kernel" in a
│ │ │ -000e1210: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -000e1220: 6b61 6765 7327 0a20 2074 6167 733a 0a20  kages'.  tags:. 
│ │ │ -000e1230: 202d 2050 4349 2d44 5353 7634 2d31 2e32   - PCI-DSSv4-1.2
│ │ │ -000e1240: 0a20 202d 2050 4349 2d44 5353 7634 2d31  .  - PCI-DSSv4-1
│ │ │ -000e1250: 2e32 2e36 0a20 202d 2065 6e61 626c 655f  .2.6.  - enable_
│ │ │ -000e1260: 7374 7261 7465 6779 0a20 202d 2068 6967  strategy.  - hig
│ │ │ -000e1270: 685f 7365 7665 7269 7479 0a20 202d 206c  h_severity.  - l
│ │ │ -000e1280: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ -000e1290: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ -000e12a0: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ -000e12b0: 6565 6465 640a 2020 2d20 7061 636b 6167  eeded.  - packag
│ │ │ -000e12c0: 655f 6c69 6273 656c 696e 7578 5f69 6e73  e_libselinux_ins
│ │ │ -000e12d0: 7461 6c6c 6564 0a3c 2f63 6f64 653e 3c2f  talled.
│ │ │ +000e0bb0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22  
low< │ │ │ +000e0c50: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ +000e0ca0: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
Co │ │ │ +000e0c30: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +000e0c60: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +000e0c80: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +000e0c90: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +000e0cb0: 3c2f 7468 3e3c 7464 3e65 6e61 626c 653c enable< │ │ │ +000e0cc0: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
- na
│ │ │ +000e0ce0: 6d65 3a20 4761 7468 6572 2074 6865 2070  me: Gather the p
│ │ │ +000e0cf0: 6163 6b61 6765 2066 6163 7473 0a20 2070  ackage facts.  p
│ │ │ +000e0d00: 6163 6b61 6765 5f66 6163 7473 3a0a 2020  ackage_facts:.  
│ │ │ +000e0d10: 2020 6d61 6e61 6765 723a 2061 7574 6f0a    manager: auto.
│ │ │ +000e0d20: 2020 7461 6773 3a0a 2020 2d20 5043 492d    tags:.  - PCI-
│ │ │ +000e0d30: 4453 5376 342d 312e 320a 2020 2d20 5043  DSSv4-1.2.  - PC
│ │ │ +000e0d40: 492d 4453 5376 342d 312e 322e 360a 2020  I-DSSv4-1.2.6.  
│ │ │ +000e0d50: 2d20 656e 6162 6c65 5f73 7472 6174 6567  - enable_strateg
│ │ │ +000e0d60: 790a 2020 2d20 6869 6768 5f73 6576 6572  y.  - high_sever
│ │ │ +000e0d70: 6974 790a 2020 2d20 6c6f 775f 636f 6d70  ity.  - low_comp
│ │ │ +000e0d80: 6c65 7869 7479 0a20 202d 206c 6f77 5f64  lexity.  - low_d
│ │ │ +000e0d90: 6973 7275 7074 696f 6e0a 2020 2d20 6e6f  isruption.  - no
│ │ │ +000e0da0: 5f72 6562 6f6f 745f 6e65 6564 6564 0a20  _reboot_needed. 
│ │ │ +000e0db0: 202d 2070 6163 6b61 6765 5f6c 6962 7365   - package_libse
│ │ │ +000e0dc0: 6c69 6e75 785f 696e 7374 616c 6c65 640a  linux_installed.
│ │ │ +000e0dd0: 0a2d 206e 616d 653a 2045 6e73 7572 6520  .- name: Ensure 
│ │ │ +000e0de0: 6c69 6273 656c 696e 7578 2069 7320 696e  libselinux is in
│ │ │ +000e0df0: 7374 616c 6c65 640a 2020 616e 7369 626c  stalled.  ansibl
│ │ │ +000e0e00: 652e 6275 696c 7469 6e2e 7061 636b 6167  e.builtin.packag
│ │ │ +000e0e10: 653a 0a20 2020 206e 616d 653a 206c 6962  e:.    name: lib
│ │ │ +000e0e20: 7365 6c69 6e75 780a 2020 2020 7374 6174  selinux.    stat
│ │ │ +000e0e30: 653a 2070 7265 7365 6e74 0a20 2077 6865  e: present.  whe
│ │ │ +000e0e40: 6e3a 2027 226b 6572 6e65 6c22 2069 6e20  n: '"kernel" in 
│ │ │ +000e0e50: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +000e0e60: 636b 6167 6573 270a 2020 7461 6773 3a0a  ckages'.  tags:.
│ │ │ +000e0e70: 2020 2d20 5043 492d 4453 5376 342d 312e    - PCI-DSSv4-1.
│ │ │ +000e0e80: 320a 2020 2d20 5043 492d 4453 5376 342d  2.  - PCI-DSSv4-
│ │ │ +000e0e90: 312e 322e 360a 2020 2d20 656e 6162 6c65  1.2.6.  - enable
│ │ │ +000e0ea0: 5f73 7472 6174 6567 790a 2020 2d20 6869  _strategy.  - hi
│ │ │ +000e0eb0: 6768 5f73 6576 6572 6974 790a 2020 2d20  gh_severity.  - 
│ │ │ +000e0ec0: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ +000e0ed0: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ +000e0ee0: 6e0a 2020 2d20 6e6f 5f72 6562 6f6f 745f  n.  - no_reboot_
│ │ │ +000e0ef0: 6e65 6564 6564 0a20 202d 2070 6163 6b61  needed.  - packa
│ │ │ +000e0f00: 6765 5f6c 6962 7365 6c69 6e75 785f 696e  ge_libselinux_in
│ │ │ +000e0f10: 7374 616c 6c65 640a 3c2f 636f 6465 3e3c  stalled.<
│ │ │ +000e0f20: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>
Remediat │ │ │ +000e0fd0: 696f 6e20 5075 7070 6574 2073 6e69 7070 ion Puppet snipp │ │ │ +000e0fe0: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ +000e1060: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ +000e1070: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +000e1080: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ +000e10c0: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +000e10d0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ +000e10f0: 7464 3e65 6e61 626c 653c 2f74 643e 3c2f td>enable
│ │ │ +000e1110: 3c63 6f64 653e 696e 636c 7564 6520 696e  include in
│ │ │ +000e1120: 7374 616c 6c5f 6c69 6273 656c 696e 7578  stall_libselinux
│ │ │ +000e1130: 0a0a 636c 6173 7320 696e 7374 616c 6c5f  ..class install_
│ │ │ +000e1140: 6c69 6273 656c 696e 7578 207b 0a20 2070  libselinux {.  p
│ │ │ +000e1150: 6163 6b61 6765 207b 2027 6c69 6273 656c  ackage { 'libsel
│ │ │ +000e1160: 696e 7578 273a 0a20 2020 2065 6e73 7572  inux':.    ensur
│ │ │ +000e1170: 6520 3d26 6774 3b20 2769 6e73 7461 6c6c  e => 'install
│ │ │ +000e1180: 6564 272c 0a20 207d 0a7d 0a3c 2f63 6f64  ed',.  }.}.
Remed │ │ │ +000e1240: 6961 7469 6f6e 204f 5342 7569 6c64 2042 iation OSBuild B │ │ │ +000e1250: 6c75 6570 7269 6e74 2073 6e69 7070 6574 lueprint snippet │ │ │ +000e1260: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
.[[packag
│ │ │ +000e12b0: 6573 5d5d 0a6e 616d 6520 3d20 226c 6962  es]].name = "lib
│ │ │ +000e12c0: 7365 6c69 6e75 7822 0a76 6572 7369 6f6e  selinux".version
│ │ │ +000e12d0: 203d 2022 2a22 0a3c 2f63 6f64 653e 3c2f   = "*".
│ │ │ 000e12f0: 3c2f 7464 3e3c 2f74 723e 3c2f 7462 6f64 < │ │ │ 000e1310: 2f74 723e 3c74 7220 6461 7461 2d74 742d /tr>Remediation O │ │ │ -000e92e0: 5342 7569 6c64 2042 6c75 6570 7269 6e74 SBuild Blueprint │ │ │ -000e92f0: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -000e9300: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
.
│ │ │ -000e9340: 5b63 7573 746f 6d69 7a61 7469 6f6e 732e  [customizations.
│ │ │ -000e9350: 7365 7276 6963 6573 5d0a 6d61 736b 6564  services].masked
│ │ │ -000e9360: 203d 205b 2261 7661 6869 2d64 6165 6d6f   = ["avahi-daemo
│ │ │ -000e9370: 6e22 5d0a 3c2f 636f 6465 3e3c 2f70 7265  n"].
Remediation │ │ │ -000e9430: 5075 7070 6574 2073 6e69 7070 6574 20e2 Puppet snippet . │ │ │ -000e9440: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ -000e94c0: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -000e94e0: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ -000e9530: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 < │ │ │ -000e9560: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
include disabl
│ │ │ -000e9580: 655f 6176 6168 692d 6461 656d 6f6e 0a0a  e_avahi-daemon..
│ │ │ -000e9590: 636c 6173 7320 6469 7361 626c 655f 6176  class disable_av
│ │ │ -000e95a0: 6168 692d 6461 656d 6f6e 207b 0a20 2073  ahi-daemon {.  s
│ │ │ -000e95b0: 6572 7669 6365 207b 2761 7661 6869 2d64  ervice {'avahi-d
│ │ │ -000e95c0: 6165 6d6f 6e27 3a0a 2020 2020 656e 6162  aemon':.    enab
│ │ │ -000e95d0: 6c65 203d 2667 743b 2066 616c 7365 2c0a  le => false,.
│ │ │ -000e95e0: 2020 2020 656e 7375 7265 203d 2667 743b      ensure =>
│ │ │ -000e95f0: 2027 7374 6f70 7065 6427 2c0a 2020 7d0a   'stopped',.  }.
│ │ │ -000e9600: 7d0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  }.
< │ │ │ -000e9610: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation An │ │ │ -000e96c0: 7369 626c 6520 736e 6970 7065 7420 e287 sible snippet .. │ │ │ -000e96d0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
Complexity:< │ │ │ -000e94d0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ -000e94f0: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ -000e9540: 6174 6567 793a 3c2f 7468 3e3c 7464 3e65 ategy:e │ │ │ -000e9550: 6e61 626c 653c 2f74 643e 3c2f 7472 3e3c nable
< │ │ │ -000e9750: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -000e9770: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -000e97c0: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>< │ │ │ -000e97f0: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
- name: Gather
│ │ │ -000e9810: 2074 6865 2070 6163 6b61 6765 2066 6163   the package fac
│ │ │ -000e9820: 7473 0a20 2070 6163 6b61 6765 5f66 6163  ts.  package_fac
│ │ │ -000e9830: 7473 3a0a 2020 2020 6d61 6e61 6765 723a  ts:.    manager:
│ │ │ -000e9840: 2061 7574 6f0a 2020 7461 6773 3a0a 2020   auto.  tags:.  
│ │ │ -000e9850: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -000e9860: 2d36 2861 290a 2020 2d20 4e49 5354 2d38  -6(a).  - NIST-8
│ │ │ -000e9870: 3030 2d35 332d 434d 2d37 2861 290a 2020  00-53-CM-7(a).  
│ │ │ -000e9880: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -000e9890: 2d37 2862 290a 2020 2d20 5043 492d 4453  -7(b).  - PCI-DS
│ │ │ -000e98a0: 5376 342d 322e 320a 2020 2d20 5043 492d  Sv4-2.2.  - PCI-
│ │ │ -000e98b0: 4453 5376 342d 322e 322e 340a 2020 2d20  DSSv4-2.2.4.  - 
│ │ │ -000e98c0: 6469 7361 626c 655f 7374 7261 7465 6779  disable_strategy
│ │ │ -000e98d0: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ -000e98e0: 6974 790a 2020 2d20 6c6f 775f 6469 7372  ity.  - low_disr
│ │ │ -000e98f0: 7570 7469 6f6e 0a20 202d 206d 6564 6975  uption.  - mediu
│ │ │ -000e9900: 6d5f 7365 7665 7269 7479 0a20 202d 206e  m_severity.  - n
│ │ │ -000e9910: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ -000e9920: 2020 2d20 7365 7276 6963 655f 6176 6168    - service_avah
│ │ │ -000e9930: 692d 6461 656d 6f6e 5f64 6973 6162 6c65  i-daemon_disable
│ │ │ -000e9940: 640a 0a2d 206e 616d 653a 2044 6973 6162  d..- name: Disab
│ │ │ -000e9950: 6c65 2041 7661 6869 2053 6572 7665 7220  le Avahi Server 
│ │ │ -000e9960: 536f 6674 7761 7265 202d 2044 6973 6162  Software - Disab
│ │ │ -000e9970: 6c65 2073 6572 7669 6365 2061 7661 6869  le service avahi
│ │ │ -000e9980: 2d64 6165 6d6f 6e0a 2020 626c 6f63 6b3a  -daemon.  block:
│ │ │ -000e9990: 0a0a 2020 2d20 6e61 6d65 3a20 4469 7361  ..  - name: Disa
│ │ │ -000e99a0: 626c 6520 4176 6168 6920 5365 7276 6572  ble Avahi Server
│ │ │ -000e99b0: 2053 6f66 7477 6172 6520 2d20 436f 6c6c   Software - Coll
│ │ │ -000e99c0: 6563 7420 7379 7374 656d 6420 5365 7276  ect systemd Serv
│ │ │ -000e99d0: 6963 6573 2050 7265 7365 6e74 2069 6e20  ices Present in 
│ │ │ -000e99e0: 7468 650a 2020 2020 2020 5379 7374 656d  the.      System
│ │ │ -000e99f0: 0a20 2020 2061 6e73 6962 6c65 2e62 7569  .    ansible.bui
│ │ │ -000e9a00: 6c74 696e 2e63 6f6d 6d61 6e64 3a20 7379  ltin.command: sy
│ │ │ -000e9a10: 7374 656d 6374 6c20 2d71 206c 6973 742d  stemctl -q list-
│ │ │ -000e9a20: 756e 6974 2d66 696c 6573 202d 2d74 7970  unit-files --typ
│ │ │ -000e9a30: 6520 7365 7276 6963 650a 2020 2020 7265  e service.    re
│ │ │ -000e9a40: 6769 7374 6572 3a20 7365 7276 6963 655f  gister: service_
│ │ │ -000e9a50: 6578 6973 7473 0a20 2020 2063 6861 6e67  exists.    chang
│ │ │ -000e9a60: 6564 5f77 6865 6e3a 2066 616c 7365 0a20  ed_when: false. 
│ │ │ -000e9a70: 2020 2066 6169 6c65 645f 7768 656e 3a20     failed_when: 
│ │ │ -000e9a80: 7365 7276 6963 655f 6578 6973 7473 2e72  service_exists.r
│ │ │ -000e9a90: 6320 6e6f 7420 696e 205b 302c 2031 5d0a  c not in [0, 1].
│ │ │ -000e9aa0: 2020 2020 6368 6563 6b5f 6d6f 6465 3a20      check_mode: 
│ │ │ -000e9ab0: 6661 6c73 650a 0a20 202d 206e 616d 653a  false..  - name:
│ │ │ -000e9ac0: 2044 6973 6162 6c65 2041 7661 6869 2053   Disable Avahi S
│ │ │ -000e9ad0: 6572 7665 7220 536f 6674 7761 7265 202d  erver Software -
│ │ │ -000e9ae0: 2045 6e73 7572 6520 6176 6168 692d 6461   Ensure avahi-da
│ │ │ -000e9af0: 656d 6f6e 2e73 6572 7669 6365 2069 7320  emon.service is 
│ │ │ -000e9b00: 4d61 736b 6564 0a20 2020 2061 6e73 6962  Masked.    ansib
│ │ │ -000e9b10: 6c65 2e62 7569 6c74 696e 2e73 7973 7465  le.builtin.syste
│ │ │ -000e9b20: 6d64 3a0a 2020 2020 2020 6e61 6d65 3a20  md:.      name: 
│ │ │ -000e9b30: 6176 6168 692d 6461 656d 6f6e 2e73 6572  avahi-daemon.ser
│ │ │ -000e9b40: 7669 6365 0a20 2020 2020 2073 7461 7465  vice.      state
│ │ │ -000e9b50: 3a20 7374 6f70 7065 640a 2020 2020 2020  : stopped.      
│ │ │ -000e9b60: 656e 6162 6c65 643a 2066 616c 7365 0a20  enabled: false. 
│ │ │ -000e9b70: 2020 2020 206d 6173 6b65 643a 2074 7275       masked: tru
│ │ │ -000e9b80: 650a 2020 2020 7768 656e 3a20 7365 7276  e.    when: serv
│ │ │ -000e9b90: 6963 655f 6578 6973 7473 2e73 7464 6f75  ice_exists.stdou
│ │ │ -000e9ba0: 745f 6c69 6e65 7320 6973 2073 6561 7263  t_lines is searc
│ │ │ -000e9bb0: 6828 2261 7661 6869 2d64 6165 6d6f 6e2e  h("avahi-daemon.
│ │ │ -000e9bc0: 7365 7276 6963 6522 2c20 6d75 6c74 696c  service", multil
│ │ │ -000e9bd0: 696e 653d 5472 7565 290a 0a20 202d 206e  ine=True)..  - n
│ │ │ -000e9be0: 616d 653a 2055 6e69 7420 536f 636b 6574  ame: Unit Socket
│ │ │ -000e9bf0: 2045 7869 7374 7320 2d20 6176 6168 692d   Exists - avahi-
│ │ │ -000e9c00: 6461 656d 6f6e 2e73 6f63 6b65 740a 2020  daemon.socket.  
│ │ │ -000e9c10: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ -000e9c20: 6e2e 636f 6d6d 616e 643a 2073 7973 7465  n.command: syste
│ │ │ -000e9c30: 6d63 746c 202d 7120 6c69 7374 2d75 6e69  mctl -q list-uni
│ │ │ -000e9c40: 742d 6669 6c65 7320 6176 6168 692d 6461  t-files avahi-da
│ │ │ -000e9c50: 656d 6f6e 2e73 6f63 6b65 740a 2020 2020  emon.socket.    
│ │ │ -000e9c60: 7265 6769 7374 6572 3a20 736f 636b 6574  register: socket
│ │ │ -000e9c70: 5f66 696c 655f 6578 6973 7473 0a20 2020  _file_exists.   
│ │ │ -000e9c80: 2063 6861 6e67 6564 5f77 6865 6e3a 2066   changed_when: f
│ │ │ -000e9c90: 616c 7365 0a20 2020 2066 6169 6c65 645f  alse.    failed_
│ │ │ -000e9ca0: 7768 656e 3a20 736f 636b 6574 5f66 696c  when: socket_fil
│ │ │ -000e9cb0: 655f 6578 6973 7473 2e72 6320 6e6f 7420  e_exists.rc not 
│ │ │ -000e9cc0: 696e 205b 302c 2031 5d0a 2020 2020 6368  in [0, 1].    ch
│ │ │ -000e9cd0: 6563 6b5f 6d6f 6465 3a20 6661 6c73 650a  eck_mode: false.
│ │ │ -000e9ce0: 0a20 202d 206e 616d 653a 2044 6973 6162  .  - name: Disab
│ │ │ -000e9cf0: 6c65 2041 7661 6869 2053 6572 7665 7220  le Avahi Server 
│ │ │ -000e9d00: 536f 6674 7761 7265 202d 2044 6973 6162  Software - Disab
│ │ │ -000e9d10: 6c65 2053 6f63 6b65 7420 6176 6168 692d  le Socket avahi-
│ │ │ -000e9d20: 6461 656d 6f6e 0a20 2020 2061 6e73 6962  daemon.    ansib
│ │ │ -000e9d30: 6c65 2e62 7569 6c74 696e 2e73 7973 7465  le.builtin.syste
│ │ │ -000e9d40: 6d64 3a0a 2020 2020 2020 6e61 6d65 3a20  md:.      name: 
│ │ │ -000e9d50: 6176 6168 692d 6461 656d 6f6e 2e73 6f63  avahi-daemon.soc
│ │ │ -000e9d60: 6b65 740a 2020 2020 2020 656e 6162 6c65  ket.      enable
│ │ │ -000e9d70: 643a 2066 616c 7365 0a20 2020 2020 2073  d: false.      s
│ │ │ -000e9d80: 7461 7465 3a20 7374 6f70 7065 640a 2020  tate: stopped.  
│ │ │ -000e9d90: 2020 2020 6d61 736b 6564 3a20 7472 7565      masked: true
│ │ │ -000e9da0: 0a20 2020 2077 6865 6e3a 2073 6f63 6b65  .    when: socke
│ │ │ -000e9db0: 745f 6669 6c65 5f65 7869 7374 732e 7374  t_file_exists.st
│ │ │ -000e9dc0: 646f 7574 5f6c 696e 6573 2069 7320 7365  dout_lines is se
│ │ │ -000e9dd0: 6172 6368 2822 6176 6168 692d 6461 656d  arch("avahi-daem
│ │ │ -000e9de0: 6f6e 2e73 6f63 6b65 7422 2c20 6d75 6c74  on.socket", mult
│ │ │ -000e9df0: 696c 696e 653d 5472 7565 290a 2020 7461  iline=True).  ta
│ │ │ -000e9e00: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030  gs:.  - NIST-800
│ │ │ -000e9e10: 2d35 332d 434d 2d36 2861 290a 2020 2d20  -53-CM-6(a).  - 
│ │ │ -000e9e20: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ -000e9e30: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ -000e9e40: 2d35 332d 434d 2d37 2862 290a 2020 2d20  -53-CM-7(b).  - 
│ │ │ -000e9e50: 5043 492d 4453 5376 342d 322e 320a 2020  PCI-DSSv4-2.2.  
│ │ │ -000e9e60: 2d20 5043 492d 4453 5376 342d 322e 322e  - PCI-DSSv4-2.2.
│ │ │ -000e9e70: 340a 2020 2d20 6469 7361 626c 655f 7374  4.  - disable_st
│ │ │ -000e9e80: 7261 7465 6779 0a20 202d 206c 6f77 5f63  rategy.  - low_c
│ │ │ -000e9e90: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f  omplexity.  - lo
│ │ │ -000e9ea0: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ -000e9eb0: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ -000e9ec0: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ -000e9ed0: 6565 6465 640a 2020 2d20 7365 7276 6963  eeded.  - servic
│ │ │ -000e9ee0: 655f 6176 6168 692d 6461 656d 6f6e 5f64  e_avahi-daemon_d
│ │ │ -000e9ef0: 6973 6162 6c65 640a 2020 2d20 7370 6563  isabled.  - spec
│ │ │ -000e9f00: 6961 6c5f 7365 7276 6963 655f 626c 6f63  ial_service_bloc
│ │ │ -000e9f10: 6b0a 2020 7768 656e 3a20 2820 2261 7661  k.  when: ( "ava
│ │ │ -000e9f20: 6869 2220 696e 2061 6e73 6962 6c65 5f66  hi" in ansible_f
│ │ │ -000e9f30: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ -000e9f40: 6420 226b 6572 6e65 6c22 2069 6e20 616e  d "kernel" in an
│ │ │ -000e9f50: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -000e9f60: 6167 6573 0a20 2020 2029 0a3c 2f63 6f64  ages.    ).Remediation A
│ │ │ +000e92e0: 6e73 6962 6c65 2073 6e69 7070 6574 20e2  nsible snippet .
│ │ │ +000e92f0: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063  ..
low
Disr │ │ │ -000e9780: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -000e9790: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ -000e97d0: 7465 6779 3a3c 2f74 683e 3c74 643e 6469 tegy:di │ │ │ -000e97e0: 7361 626c 653c 2f74 643e 3c2f 7472 3e3c sable
│ │ │ +000e9370: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +000e9390: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ +000e93e0: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ +000e9410: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ +000e9380: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +000e93a0: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ +000e93f0: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ +000e9400: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
- name: Gathe
│ │ │ +000e9430: 7220 7468 6520 7061 636b 6167 6520 6661  r the package fa
│ │ │ +000e9440: 6374 730a 2020 7061 636b 6167 655f 6661  cts.  package_fa
│ │ │ +000e9450: 6374 733a 0a20 2020 206d 616e 6167 6572  cts:.    manager
│ │ │ +000e9460: 3a20 6175 746f 0a20 2074 6167 733a 0a20  : auto.  tags:. 
│ │ │ +000e9470: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +000e9480: 4d2d 3628 6129 0a20 202d 204e 4953 542d  M-6(a).  - NIST-
│ │ │ +000e9490: 3830 302d 3533 2d43 4d2d 3728 6129 0a20  800-53-CM-7(a). 
│ │ │ +000e94a0: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +000e94b0: 4d2d 3728 6229 0a20 202d 2050 4349 2d44  M-7(b).  - PCI-D
│ │ │ +000e94c0: 5353 7634 2d32 2e32 0a20 202d 2050 4349  SSv4-2.2.  - PCI
│ │ │ +000e94d0: 2d44 5353 7634 2d32 2e32 2e34 0a20 202d  -DSSv4-2.2.4.  -
│ │ │ +000e94e0: 2064 6973 6162 6c65 5f73 7472 6174 6567   disable_strateg
│ │ │ +000e94f0: 790a 2020 2d20 6c6f 775f 636f 6d70 6c65  y.  - low_comple
│ │ │ +000e9500: 7869 7479 0a20 202d 206c 6f77 5f64 6973  xity.  - low_dis
│ │ │ +000e9510: 7275 7074 696f 6e0a 2020 2d20 6d65 6469  ruption.  - medi
│ │ │ +000e9520: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ +000e9530: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ +000e9540: 0a20 202d 2073 6572 7669 6365 5f61 7661  .  - service_ava
│ │ │ +000e9550: 6869 2d64 6165 6d6f 6e5f 6469 7361 626c  hi-daemon_disabl
│ │ │ +000e9560: 6564 0a0a 2d20 6e61 6d65 3a20 4469 7361  ed..- name: Disa
│ │ │ +000e9570: 626c 6520 4176 6168 6920 5365 7276 6572  ble Avahi Server
│ │ │ +000e9580: 2053 6f66 7477 6172 6520 2d20 4469 7361   Software - Disa
│ │ │ +000e9590: 626c 6520 7365 7276 6963 6520 6176 6168  ble service avah
│ │ │ +000e95a0: 692d 6461 656d 6f6e 0a20 2062 6c6f 636b  i-daemon.  block
│ │ │ +000e95b0: 3a0a 0a20 202d 206e 616d 653a 2044 6973  :..  - name: Dis
│ │ │ +000e95c0: 6162 6c65 2041 7661 6869 2053 6572 7665  able Avahi Serve
│ │ │ +000e95d0: 7220 536f 6674 7761 7265 202d 2043 6f6c  r Software - Col
│ │ │ +000e95e0: 6c65 6374 2073 7973 7465 6d64 2053 6572  lect systemd Ser
│ │ │ +000e95f0: 7669 6365 7320 5072 6573 656e 7420 696e  vices Present in
│ │ │ +000e9600: 2074 6865 0a20 2020 2020 2053 7973 7465   the.      Syste
│ │ │ +000e9610: 6d0a 2020 2020 616e 7369 626c 652e 6275  m.    ansible.bu
│ │ │ +000e9620: 696c 7469 6e2e 636f 6d6d 616e 643a 2073  iltin.command: s
│ │ │ +000e9630: 7973 7465 6d63 746c 202d 7120 6c69 7374  ystemctl -q list
│ │ │ +000e9640: 2d75 6e69 742d 6669 6c65 7320 2d2d 7479  -unit-files --ty
│ │ │ +000e9650: 7065 2073 6572 7669 6365 0a20 2020 2072  pe service.    r
│ │ │ +000e9660: 6567 6973 7465 723a 2073 6572 7669 6365  egister: service
│ │ │ +000e9670: 5f65 7869 7374 730a 2020 2020 6368 616e  _exists.    chan
│ │ │ +000e9680: 6765 645f 7768 656e 3a20 6661 6c73 650a  ged_when: false.
│ │ │ +000e9690: 2020 2020 6661 696c 6564 5f77 6865 6e3a      failed_when:
│ │ │ +000e96a0: 2073 6572 7669 6365 5f65 7869 7374 732e   service_exists.
│ │ │ +000e96b0: 7263 206e 6f74 2069 6e20 5b30 2c20 315d  rc not in [0, 1]
│ │ │ +000e96c0: 0a20 2020 2063 6865 636b 5f6d 6f64 653a  .    check_mode:
│ │ │ +000e96d0: 2066 616c 7365 0a0a 2020 2d20 6e61 6d65   false..  - name
│ │ │ +000e96e0: 3a20 4469 7361 626c 6520 4176 6168 6920  : Disable Avahi 
│ │ │ +000e96f0: 5365 7276 6572 2053 6f66 7477 6172 6520  Server Software 
│ │ │ +000e9700: 2d20 456e 7375 7265 2061 7661 6869 2d64  - Ensure avahi-d
│ │ │ +000e9710: 6165 6d6f 6e2e 7365 7276 6963 6520 6973  aemon.service is
│ │ │ +000e9720: 204d 6173 6b65 640a 2020 2020 616e 7369   Masked.    ansi
│ │ │ +000e9730: 626c 652e 6275 696c 7469 6e2e 7379 7374  ble.builtin.syst
│ │ │ +000e9740: 656d 643a 0a20 2020 2020 206e 616d 653a  emd:.      name:
│ │ │ +000e9750: 2061 7661 6869 2d64 6165 6d6f 6e2e 7365   avahi-daemon.se
│ │ │ +000e9760: 7276 6963 650a 2020 2020 2020 7374 6174  rvice.      stat
│ │ │ +000e9770: 653a 2073 746f 7070 6564 0a20 2020 2020  e: stopped.     
│ │ │ +000e9780: 2065 6e61 626c 6564 3a20 6661 6c73 650a   enabled: false.
│ │ │ +000e9790: 2020 2020 2020 6d61 736b 6564 3a20 7472        masked: tr
│ │ │ +000e97a0: 7565 0a20 2020 2077 6865 6e3a 2073 6572  ue.    when: ser
│ │ │ +000e97b0: 7669 6365 5f65 7869 7374 732e 7374 646f  vice_exists.stdo
│ │ │ +000e97c0: 7574 5f6c 696e 6573 2069 7320 7365 6172  ut_lines is sear
│ │ │ +000e97d0: 6368 2822 6176 6168 692d 6461 656d 6f6e  ch("avahi-daemon
│ │ │ +000e97e0: 2e73 6572 7669 6365 222c 206d 756c 7469  .service", multi
│ │ │ +000e97f0: 6c69 6e65 3d54 7275 6529 0a0a 2020 2d20  line=True)..  - 
│ │ │ +000e9800: 6e61 6d65 3a20 556e 6974 2053 6f63 6b65  name: Unit Socke
│ │ │ +000e9810: 7420 4578 6973 7473 202d 2061 7661 6869  t Exists - avahi
│ │ │ +000e9820: 2d64 6165 6d6f 6e2e 736f 636b 6574 0a20  -daemon.socket. 
│ │ │ +000e9830: 2020 2061 6e73 6962 6c65 2e62 7569 6c74     ansible.built
│ │ │ +000e9840: 696e 2e63 6f6d 6d61 6e64 3a20 7379 7374  in.command: syst
│ │ │ +000e9850: 656d 6374 6c20 2d71 206c 6973 742d 756e  emctl -q list-un
│ │ │ +000e9860: 6974 2d66 696c 6573 2061 7661 6869 2d64  it-files avahi-d
│ │ │ +000e9870: 6165 6d6f 6e2e 736f 636b 6574 0a20 2020  aemon.socket.   
│ │ │ +000e9880: 2072 6567 6973 7465 723a 2073 6f63 6b65   register: socke
│ │ │ +000e9890: 745f 6669 6c65 5f65 7869 7374 730a 2020  t_file_exists.  
│ │ │ +000e98a0: 2020 6368 616e 6765 645f 7768 656e 3a20    changed_when: 
│ │ │ +000e98b0: 6661 6c73 650a 2020 2020 6661 696c 6564  false.    failed
│ │ │ +000e98c0: 5f77 6865 6e3a 2073 6f63 6b65 745f 6669  _when: socket_fi
│ │ │ +000e98d0: 6c65 5f65 7869 7374 732e 7263 206e 6f74  le_exists.rc not
│ │ │ +000e98e0: 2069 6e20 5b30 2c20 315d 0a20 2020 2063   in [0, 1].    c
│ │ │ +000e98f0: 6865 636b 5f6d 6f64 653a 2066 616c 7365  heck_mode: false
│ │ │ +000e9900: 0a0a 2020 2d20 6e61 6d65 3a20 4469 7361  ..  - name: Disa
│ │ │ +000e9910: 626c 6520 4176 6168 6920 5365 7276 6572  ble Avahi Server
│ │ │ +000e9920: 2053 6f66 7477 6172 6520 2d20 4469 7361   Software - Disa
│ │ │ +000e9930: 626c 6520 536f 636b 6574 2061 7661 6869  ble Socket avahi
│ │ │ +000e9940: 2d64 6165 6d6f 6e0a 2020 2020 616e 7369  -daemon.    ansi
│ │ │ +000e9950: 626c 652e 6275 696c 7469 6e2e 7379 7374  ble.builtin.syst
│ │ │ +000e9960: 656d 643a 0a20 2020 2020 206e 616d 653a  emd:.      name:
│ │ │ +000e9970: 2061 7661 6869 2d64 6165 6d6f 6e2e 736f   avahi-daemon.so
│ │ │ +000e9980: 636b 6574 0a20 2020 2020 2065 6e61 626c  cket.      enabl
│ │ │ +000e9990: 6564 3a20 6661 6c73 650a 2020 2020 2020  ed: false.      
│ │ │ +000e99a0: 7374 6174 653a 2073 746f 7070 6564 0a20  state: stopped. 
│ │ │ +000e99b0: 2020 2020 206d 6173 6b65 643a 2074 7275       masked: tru
│ │ │ +000e99c0: 650a 2020 2020 7768 656e 3a20 736f 636b  e.    when: sock
│ │ │ +000e99d0: 6574 5f66 696c 655f 6578 6973 7473 2e73  et_file_exists.s
│ │ │ +000e99e0: 7464 6f75 745f 6c69 6e65 7320 6973 2073  tdout_lines is s
│ │ │ +000e99f0: 6561 7263 6828 2261 7661 6869 2d64 6165  earch("avahi-dae
│ │ │ +000e9a00: 6d6f 6e2e 736f 636b 6574 222c 206d 756c  mon.socket", mul
│ │ │ +000e9a10: 7469 6c69 6e65 3d54 7275 6529 0a20 2074  tiline=True).  t
│ │ │ +000e9a20: 6167 733a 0a20 202d 204e 4953 542d 3830  ags:.  - NIST-80
│ │ │ +000e9a30: 302d 3533 2d43 4d2d 3628 6129 0a20 202d  0-53-CM-6(a).  -
│ │ │ +000e9a40: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +000e9a50: 3728 6129 0a20 202d 204e 4953 542d 3830  7(a).  - NIST-80
│ │ │ +000e9a60: 302d 3533 2d43 4d2d 3728 6229 0a20 202d  0-53-CM-7(b).  -
│ │ │ +000e9a70: 2050 4349 2d44 5353 7634 2d32 2e32 0a20   PCI-DSSv4-2.2. 
│ │ │ +000e9a80: 202d 2050 4349 2d44 5353 7634 2d32 2e32   - PCI-DSSv4-2.2
│ │ │ +000e9a90: 2e34 0a20 202d 2064 6973 6162 6c65 5f73  .4.  - disable_s
│ │ │ +000e9aa0: 7472 6174 6567 790a 2020 2d20 6c6f 775f  trategy.  - low_
│ │ │ +000e9ab0: 636f 6d70 6c65 7869 7479 0a20 202d 206c  complexity.  - l
│ │ │ +000e9ac0: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ +000e9ad0: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ +000e9ae0: 790a 2020 2d20 6e6f 5f72 6562 6f6f 745f  y.  - no_reboot_
│ │ │ +000e9af0: 6e65 6564 6564 0a20 202d 2073 6572 7669  needed.  - servi
│ │ │ +000e9b00: 6365 5f61 7661 6869 2d64 6165 6d6f 6e5f  ce_avahi-daemon_
│ │ │ +000e9b10: 6469 7361 626c 6564 0a20 202d 2073 7065  disabled.  - spe
│ │ │ +000e9b20: 6369 616c 5f73 6572 7669 6365 5f62 6c6f  cial_service_blo
│ │ │ +000e9b30: 636b 0a20 2077 6865 6e3a 2028 2022 6176  ck.  when: ( "av
│ │ │ +000e9b40: 6168 6922 2069 6e20 616e 7369 626c 655f  ahi" in ansible_
│ │ │ +000e9b50: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ +000e9b60: 6e64 2022 6b65 726e 656c 2220 696e 2061  nd "kernel" in a
│ │ │ +000e9b70: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +000e9b80: 6b61 6765 730a 2020 2020 290a 3c2f 636f  kages.    ).
< │ │ │ +000e9ba0: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ +000e9bb0: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ +000e9bc0: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ +000e9bd0: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ +000e9be0: 6432 3230 2220 7461 6269 6e64 6578 3d22 d220" tabindex=" │ │ │ +000e9bf0: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ +000e9c00: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ +000e9c10: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ +000e9c20: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ +000e9c30: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ +000e9c40: 6469 6174 696f 6e20 5075 7070 6574 2073 diation Puppet s │ │ │ +000e9c50: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ +000e9ce0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +000e9cf0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ +000e9d10: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ +000e9d30: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +000e9d40: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:enable
< │ │ │ +000e9d80: 7072 653e 3c63 6f64 653e 696e 636c 7564 pre>includ │ │ │ +000e9d90: 6520 6469 7361 626c 655f 6176 6168 692d e disable_avahi- │ │ │ +000e9da0: 6461 656d 6f6e 0a0a 636c 6173 7320 6469 daemon..class di │ │ │ +000e9db0: 7361 626c 655f 6176 6168 692d 6461 656d sable_avahi-daem │ │ │ +000e9dc0: 6f6e 207b 0a20 2073 6572 7669 6365 207b on {. service { │ │ │ +000e9dd0: 2761 7661 6869 2d64 6165 6d6f 6e27 3a0a 'avahi-daemon':. │ │ │ +000e9de0: 2020 2020 656e 6162 6c65 203d 2667 743b enable => │ │ │ +000e9df0: 2066 616c 7365 2c0a 2020 2020 656e 7375 false,. ensu │ │ │ +000e9e00: 7265 203d 2667 743b 2027 7374 6f70 7065 re => 'stoppe │ │ │ +000e9e10: 6427 2c0a 2020 7d0a 7d0a 3c2f 636f 6465 d',. }.}.
Remedi │ │ │ +000e9ed0: 6174 696f 6e20 4f53 4275 696c 6420 426c ation OSBuild Bl │ │ │ +000e9ee0: 7565 7072 696e 7420 736e 6970 7065 7420 ueprint snippet │ │ │ +000e9ef0: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
│ │ │ +000e9f30: 3c63 6f64 653e 0a5b 6375 7374 6f6d 697a  .[customiz
│ │ │ +000e9f40: 6174 696f 6e73 2e73 6572 7669 6365 735d  ations.services]
│ │ │ +000e9f50: 0a6d 6173 6b65 6420 3d20 5b22 6176 6168  .masked = ["avah
│ │ │ +000e9f60: 692d 6461 656d 6f6e 225d 0a3c 2f63 6f64  i-daemon"].
Remediati │ │ │ -000f52a0: 6f6e 204f 5342 7569 6c64 2042 6c75 6570 on OSBuild Bluep │ │ │ -000f52b0: 7269 6e74 2073 6e69 7070 6574 20e2 87b2 rint snippet ... │ │ │ -000f52c0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
.[[packages]]
│ │ │ -000f5310: 0a6e 616d 6520 3d20 2263 726f 6e22 0a76  .name = "cron".v
│ │ │ -000f5320: 6572 7369 6f6e 203d 2022 2a22 0a3c 2f63  ersion = "*".
│ │ │ -000f5340: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ -000f53e0: 6564 6961 7469 6f6e 2050 7570 7065 7420 ediation Puppet │ │ │ -000f53f0: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ -000f5400: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Com │ │ │ -000f5480: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ -000f54b0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ -000f54d0: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -000f54e0: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -000f5500: 2f74 683e 3c74 643e 656e 6162 6c65 3c2f /th>enable
│ │ │ -000f5520: 3c70 7265 3e3c 636f 6465 3e69 6e63 6c75
inclu
│ │ │ -000f5530: 6465 2069 6e73 7461 6c6c 5f63 726f 6e0a  de install_cron.
│ │ │ -000f5540: 0a63 6c61 7373 2069 6e73 7461 6c6c 5f63  .class install_c
│ │ │ -000f5550: 726f 6e20 7b0a 2020 7061 636b 6167 6520  ron {.  package 
│ │ │ -000f5560: 7b20 2763 726f 6e27 3a0a 2020 2020 656e  { 'cron':.    en
│ │ │ -000f5570: 7375 7265 203d 2667 743b 2027 696e 7374  sure => 'inst
│ │ │ -000f5580: 616c 6c65 6427 2c0a 2020 7d0a 7d0a 3c2f  alled',.  }.}.
Re │ │ │ -000f5640: 6d65 6469 6174 696f 6e20 416e 7369 626c mediation Ansibl │ │ │ -000f5650: 6520 736e 6970 7065 7420 e287 b23c 2f61 e snippet ...
< │ │ │ -000f56f0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -000f5700: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ -000f5750: 3c74 723e 3c74 683e 5374 7261 7465 6779
- n
│ │ │ -000f5790: 616d 653a 2047 6174 6865 7220 7468 6520  ame: Gather the 
│ │ │ -000f57a0: 7061 636b 6167 6520 6661 6374 730a 2020  package facts.  
│ │ │ -000f57b0: 7061 636b 6167 655f 6661 6374 733a 0a20  package_facts:. 
│ │ │ -000f57c0: 2020 206d 616e 6167 6572 3a20 6175 746f     manager: auto
│ │ │ -000f57d0: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ -000f57e0: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ -000f57f0: 0a20 202d 2050 4349 2d44 5353 7634 2d32  .  - PCI-DSSv4-2
│ │ │ -000f5800: 2e32 0a20 202d 2050 4349 2d44 5353 7634  .2.  - PCI-DSSv4
│ │ │ -000f5810: 2d32 2e32 2e36 0a20 202d 2065 6e61 626c  -2.2.6.  - enabl
│ │ │ -000f5820: 655f 7374 7261 7465 6779 0a20 202d 206c  e_strategy.  - l
│ │ │ -000f5830: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ -000f5840: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ -000f5850: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ -000f5860: 7269 7479 0a20 202d 206e 6f5f 7265 626f  rity.  - no_rebo
│ │ │ -000f5870: 6f74 5f6e 6565 6465 640a 2020 2d20 7061  ot_needed.  - pa
│ │ │ -000f5880: 636b 6167 655f 6372 6f6e 5f69 6e73 7461  ckage_cron_insta
│ │ │ -000f5890: 6c6c 6564 0a0a 2d20 6e61 6d65 3a20 456e  lled..- name: En
│ │ │ -000f58a0: 7375 7265 2063 726f 6e20 6973 2069 6e73  sure cron is ins
│ │ │ -000f58b0: 7461 6c6c 6564 0a20 2061 6e73 6962 6c65  talled.  ansible
│ │ │ -000f58c0: 2e62 7569 6c74 696e 2e70 6163 6b61 6765  .builtin.package
│ │ │ -000f58d0: 3a0a 2020 2020 6e61 6d65 3a20 6372 6f6e  :.    name: cron
│ │ │ -000f58e0: 0a20 2020 2073 7461 7465 3a20 7072 6573  .    state: pres
│ │ │ -000f58f0: 656e 740a 2020 7768 656e 3a20 2722 6b65  ent.  when: '"ke
│ │ │ -000f5900: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ -000f5910: 5f66 6163 7473 2e70 6163 6b61 6765 7327  _facts.packages'
│ │ │ -000f5920: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ -000f5930: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ -000f5940: 0a20 202d 2050 4349 2d44 5353 7634 2d32  .  - PCI-DSSv4-2
│ │ │ -000f5950: 2e32 0a20 202d 2050 4349 2d44 5353 7634  .2.  - PCI-DSSv4
│ │ │ -000f5960: 2d32 2e32 2e36 0a20 202d 2065 6e61 626c  -2.2.6.  - enabl
│ │ │ -000f5970: 655f 7374 7261 7465 6779 0a20 202d 206c  e_strategy.  - l
│ │ │ -000f5980: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ -000f5990: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ -000f59a0: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ -000f59b0: 7269 7479 0a20 202d 206e 6f5f 7265 626f  rity.  - no_rebo
│ │ │ -000f59c0: 6f74 5f6e 6565 6465 640a 2020 2d20 7061  ot_needed.  - pa
│ │ │ -000f59d0: 636b 6167 655f 6372 6f6e 5f69 6e73 7461  ckage_cron_insta
│ │ │ -000f59e0: 6c6c 6564 0a3c 2f63 6f64 653e 3c2f 7072  lled.
│ │ │ +000f5330: 3c74 723e 3c74 683e 436f 6d70 6c65 7869
< │ │ │ +000f53c0: 7464 3e65 6e61 626c 653c 2f74 643e 3c2f td>enable
C │ │ │ -000f56e0: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -000f5710: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ -000f5720: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -000f5760: 3a3c 2f74 683e 3c74 643e 656e 6162 6c65 :enable │ │ │ -000f5770: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Complexi │ │ │ +000f5340: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +000f5350: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Disruption:low
Reboot │ │ │ +000f5390: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +000f53a0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Strategy:
│ │ │ +000f53e0: 3c63 6f64 653e 2d20 6e61 6d65 3a20 4761  - name: Ga
│ │ │ +000f53f0: 7468 6572 2074 6865 2070 6163 6b61 6765  ther the package
│ │ │ +000f5400: 2066 6163 7473 0a20 2070 6163 6b61 6765   facts.  package
│ │ │ +000f5410: 5f66 6163 7473 3a0a 2020 2020 6d61 6e61  _facts:.    mana
│ │ │ +000f5420: 6765 723a 2061 7574 6f0a 2020 7461 6773  ger: auto.  tags
│ │ │ +000f5430: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ +000f5440: 332d 434d 2d36 2861 290a 2020 2d20 5043  3-CM-6(a).  - PC
│ │ │ +000f5450: 492d 4453 5376 342d 322e 320a 2020 2d20  I-DSSv4-2.2.  - 
│ │ │ +000f5460: 5043 492d 4453 5376 342d 322e 322e 360a  PCI-DSSv4-2.2.6.
│ │ │ +000f5470: 2020 2d20 656e 6162 6c65 5f73 7472 6174    - enable_strat
│ │ │ +000f5480: 6567 790a 2020 2d20 6c6f 775f 636f 6d70  egy.  - low_comp
│ │ │ +000f5490: 6c65 7869 7479 0a20 202d 206c 6f77 5f64  lexity.  - low_d
│ │ │ +000f54a0: 6973 7275 7074 696f 6e0a 2020 2d20 6d65  isruption.  - me
│ │ │ +000f54b0: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ +000f54c0: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ +000f54d0: 6564 0a20 202d 2070 6163 6b61 6765 5f63  ed.  - package_c
│ │ │ +000f54e0: 726f 6e5f 696e 7374 616c 6c65 640a 0a2d  ron_installed..-
│ │ │ +000f54f0: 206e 616d 653a 2045 6e73 7572 6520 6372   name: Ensure cr
│ │ │ +000f5500: 6f6e 2069 7320 696e 7374 616c 6c65 640a  on is installed.
│ │ │ +000f5510: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ +000f5520: 6e2e 7061 636b 6167 653a 0a20 2020 206e  n.package:.    n
│ │ │ +000f5530: 616d 653a 2063 726f 6e0a 2020 2020 7374  ame: cron.    st
│ │ │ +000f5540: 6174 653a 2070 7265 7365 6e74 0a20 2077  ate: present.  w
│ │ │ +000f5550: 6865 6e3a 2027 226b 6572 6e65 6c22 2069  hen: '"kernel" i
│ │ │ +000f5560: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +000f5570: 7061 636b 6167 6573 270a 2020 7461 6773  packages'.  tags
│ │ │ +000f5580: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ +000f5590: 332d 434d 2d36 2861 290a 2020 2d20 5043  3-CM-6(a).  - PC
│ │ │ +000f55a0: 492d 4453 5376 342d 322e 320a 2020 2d20  I-DSSv4-2.2.  - 
│ │ │ +000f55b0: 5043 492d 4453 5376 342d 322e 322e 360a  PCI-DSSv4-2.2.6.
│ │ │ +000f55c0: 2020 2d20 656e 6162 6c65 5f73 7472 6174    - enable_strat
│ │ │ +000f55d0: 6567 790a 2020 2d20 6c6f 775f 636f 6d70  egy.  - low_comp
│ │ │ +000f55e0: 6c65 7869 7479 0a20 202d 206c 6f77 5f64  lexity.  - low_d
│ │ │ +000f55f0: 6973 7275 7074 696f 6e0a 2020 2d20 6d65  isruption.  - me
│ │ │ +000f5600: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ +000f5610: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ +000f5620: 6564 0a20 202d 2070 6163 6b61 6765 5f63  ed.  - package_c
│ │ │ +000f5630: 726f 6e5f 696e 7374 616c 6c65 640a 3c2f  ron_installed.
Re │ │ │ +000f56f0: 6d65 6469 6174 696f 6e20 5075 7070 6574 mediation Puppet │ │ │ +000f5700: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ +000f5710: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ +000f57b0: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ +000f5800: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
Co │ │ │ +000f5790: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +000f57c0: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +000f57e0: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +000f57f0: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +000f5810: 3c2f 7468 3e3c 7464 3e65 6e61 626c 653c enable< │ │ │ +000f5820: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
incl
│ │ │ +000f5840: 7564 6520 696e 7374 616c 6c5f 6372 6f6e  ude install_cron
│ │ │ +000f5850: 0a0a 636c 6173 7320 696e 7374 616c 6c5f  ..class install_
│ │ │ +000f5860: 6372 6f6e 207b 0a20 2070 6163 6b61 6765  cron {.  package
│ │ │ +000f5870: 207b 2027 6372 6f6e 273a 0a20 2020 2065   { 'cron':.    e
│ │ │ +000f5880: 6e73 7572 6520 3d26 6774 3b20 2769 6e73  nsure => 'ins
│ │ │ +000f5890: 7461 6c6c 6564 272c 0a20 207d 0a7d 0a3c  talled',.  }.}.<
│ │ │ +000f58a0: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ +000f5950: 656d 6564 6961 7469 6f6e 204f 5342 7569 emediation OSBui │ │ │ +000f5960: 6c64 2042 6c75 6570 7269 6e74 2073 6e69 ld Blueprint sni │ │ │ +000f5970: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ +000f5980: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ +000f59b0: 3c70 7265 3e3c 636f 6465 3e0a 5b5b 7061
.[[pa
│ │ │ +000f59c0: 636b 6167 6573 5d5d 0a6e 616d 6520 3d20  ckages]].name = 
│ │ │ +000f59d0: 2263 726f 6e22 0a76 6572 7369 6f6e 203d  "cron".version =
│ │ │ +000f59e0: 2022 2a22 0a3c 2f63 6f64 653e 3c2f 7072   "*".
│ │ │ 000f5a10: 3c2f 7461 626c 653e 3c2f 7464 3e3c 2f74 Reme │ │ │ -001122e0: 6469 6174 696f 6e20 4f53 4275 696c 6420 diation OSBuild │ │ │ -001122f0: 426c 7565 7072 696e 7420 736e 6970 7065 Blueprint snippe │ │ │ -00112300: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
.[[packa │ │ │ -00112350: 6765 735d 5d0a 6e61 6d65 203d 2022 706f ges]].name = "po │ │ │ -00112360: 7374 6669 7822 0a76 6572 7369 6f6e 203d stfix".version = │ │ │ -00112370: 2022 2a22 0a3c 2f63 6f64 653e 3c2f 7072 "*".
Remediation │ │ │ -00112430: 2050 7570 7065 7420 736e 6970 7065 7420 Puppet snippet │ │ │ -00112440: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
Complexity: │ │ │ -001124d0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ -001124f0: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:low< │ │ │ -00112510: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:falseSt │ │ │ -00112540: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ -00112550: 656e 6162 6c65 3c2f 7464 3e3c 2f74 723e enable │ │ │ -00112560: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
include insta
│ │ │ -00112580: 6c6c 5f70 6f73 7466 6978 0a0a 636c 6173  ll_postfix..clas
│ │ │ -00112590: 7320 696e 7374 616c 6c5f 706f 7374 6669  s install_postfi
│ │ │ -001125a0: 7820 7b0a 2020 7061 636b 6167 6520 7b20  x {.  package { 
│ │ │ -001125b0: 2770 6f73 7466 6978 273a 0a20 2020 2065  'postfix':.    e
│ │ │ -001125c0: 6e73 7572 6520 3d26 6774 3b20 2769 6e73  nsure => 'ins
│ │ │ -001125d0: 7461 6c6c 6564 272c 0a20 207d 0a7d 0a3c  talled',.  }.}.<
│ │ │ -001125e0: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ -00112690: 656d 6564 6961 7469 6f6e 2041 6e73 6962 emediation Ansib │ │ │ -001126a0: 6c65 2073 6e69 7070 6574 20e2 87b2 3c2f le snippet ...
│ │ │ -00112740: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
- 
│ │ │ -001127e0: 6e61 6d65 3a20 4761 7468 6572 2074 6865  name: Gather the
│ │ │ -001127f0: 2070 6163 6b61 6765 2066 6163 7473 0a20   package facts. 
│ │ │ -00112800: 2070 6163 6b61 6765 5f66 6163 7473 3a0a   package_facts:.
│ │ │ -00112810: 2020 2020 6d61 6e61 6765 723a 2061 7574      manager: aut
│ │ │ -00112820: 6f0a 2020 7461 6773 3a0a 2020 2d20 5043  o.  tags:.  - PC
│ │ │ -00112830: 492d 4453 5376 342d 3130 2e35 0a20 202d  I-DSSv4-10.5.  -
│ │ │ -00112840: 2050 4349 2d44 5353 7634 2d31 302e 352e   PCI-DSSv4-10.5.
│ │ │ -00112850: 310a 2020 2d20 656e 6162 6c65 5f73 7472  1.  - enable_str
│ │ │ -00112860: 6174 6567 790a 2020 2d20 6c6f 775f 636f  ategy.  - low_co
│ │ │ -00112870: 6d70 6c65 7869 7479 0a20 202d 206c 6f77  mplexity.  - low
│ │ │ -00112880: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ -00112890: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ -001128a0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ -001128b0: 6564 6564 0a20 202d 2070 6163 6b61 6765  eded.  - package
│ │ │ -001128c0: 5f70 6f73 7466 6978 5f69 6e73 7461 6c6c  _postfix_install
│ │ │ -001128d0: 6564 0a0a 2d20 6e61 6d65 3a20 456e 7375  ed..- name: Ensu
│ │ │ -001128e0: 7265 2070 6f73 7466 6978 2069 7320 696e  re postfix is in
│ │ │ -001128f0: 7374 616c 6c65 640a 2020 616e 7369 626c  stalled.  ansibl
│ │ │ -00112900: 652e 6275 696c 7469 6e2e 7061 636b 6167  e.builtin.packag
│ │ │ -00112910: 653a 0a20 2020 206e 616d 653a 2070 6f73  e:.    name: pos
│ │ │ -00112920: 7466 6978 0a20 2020 2073 7461 7465 3a20  tfix.    state: 
│ │ │ -00112930: 7072 6573 656e 740a 2020 7768 656e 3a20  present.  when: 
│ │ │ -00112940: 2722 6b65 726e 656c 2220 696e 2061 6e73  '"kernel" in ans
│ │ │ -00112950: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -00112960: 6765 7327 0a20 2074 6167 733a 0a20 202d  ges'.  tags:.  -
│ │ │ -00112970: 2050 4349 2d44 5353 7634 2d31 302e 350a   PCI-DSSv4-10.5.
│ │ │ -00112980: 2020 2d20 5043 492d 4453 5376 342d 3130    - PCI-DSSv4-10
│ │ │ -00112990: 2e35 2e31 0a20 202d 2065 6e61 626c 655f  .5.1.  - enable_
│ │ │ -001129a0: 7374 7261 7465 6779 0a20 202d 206c 6f77  strategy.  - low
│ │ │ -001129b0: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ -001129c0: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ -001129d0: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ -001129e0: 7479 0a20 202d 206e 6f5f 7265 626f 6f74  ty.  - no_reboot
│ │ │ -001129f0: 5f6e 6565 6465 640a 2020 2d20 7061 636b  _needed.  - pack
│ │ │ -00112a00: 6167 655f 706f 7374 6669 785f 696e 7374  age_postfix_inst
│ │ │ -00112a10: 616c 6c65 640a 3c2f 636f 6465 3e3c 2f70  alled.

< │ │ │ +00112300: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
│ │ │ -00112730: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -00112760: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -00112770: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -001127b0: 793a 3c2f 7468 3e3c 7464 3e65 6e61 626c y:enabl │ │ │ -001127c0: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
Com │ │ │ +00112380: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ +001123b0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ +001123d0: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +001123e0: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ +00112400: 2f74 683e 3c74 643e 656e 6162 6c65 3c2f /th>enable
│ │ │ +00112420: 3c70 7265 3e3c 636f 6465 3e2d 206e 616d
- nam
│ │ │ +00112430: 653a 2047 6174 6865 7220 7468 6520 7061  e: Gather the pa
│ │ │ +00112440: 636b 6167 6520 6661 6374 730a 2020 7061  ckage facts.  pa
│ │ │ +00112450: 636b 6167 655f 6661 6374 733a 0a20 2020  ckage_facts:.   
│ │ │ +00112460: 206d 616e 6167 6572 3a20 6175 746f 0a20   manager: auto. 
│ │ │ +00112470: 2074 6167 733a 0a20 202d 2050 4349 2d44   tags:.  - PCI-D
│ │ │ +00112480: 5353 7634 2d31 302e 350a 2020 2d20 5043  SSv4-10.5.  - PC
│ │ │ +00112490: 492d 4453 5376 342d 3130 2e35 2e31 0a20  I-DSSv4-10.5.1. 
│ │ │ +001124a0: 202d 2065 6e61 626c 655f 7374 7261 7465   - enable_strate
│ │ │ +001124b0: 6779 0a20 202d 206c 6f77 5f63 6f6d 706c  gy.  - low_compl
│ │ │ +001124c0: 6578 6974 790a 2020 2d20 6c6f 775f 6469  exity.  - low_di
│ │ │ +001124d0: 7372 7570 7469 6f6e 0a20 202d 206d 6564  sruption.  - med
│ │ │ +001124e0: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ +001124f0: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ +00112500: 640a 2020 2d20 7061 636b 6167 655f 706f  d.  - package_po
│ │ │ +00112510: 7374 6669 785f 696e 7374 616c 6c65 640a  stfix_installed.
│ │ │ +00112520: 0a2d 206e 616d 653a 2045 6e73 7572 6520  .- name: Ensure 
│ │ │ +00112530: 706f 7374 6669 7820 6973 2069 6e73 7461  postfix is insta
│ │ │ +00112540: 6c6c 6564 0a20 2061 6e73 6962 6c65 2e62  lled.  ansible.b
│ │ │ +00112550: 7569 6c74 696e 2e70 6163 6b61 6765 3a0a  uiltin.package:.
│ │ │ +00112560: 2020 2020 6e61 6d65 3a20 706f 7374 6669      name: postfi
│ │ │ +00112570: 780a 2020 2020 7374 6174 653a 2070 7265  x.    state: pre
│ │ │ +00112580: 7365 6e74 0a20 2077 6865 6e3a 2027 226b  sent.  when: '"k
│ │ │ +00112590: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ +001125a0: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +001125b0: 270a 2020 7461 6773 3a0a 2020 2d20 5043  '.  tags:.  - PC
│ │ │ +001125c0: 492d 4453 5376 342d 3130 2e35 0a20 202d  I-DSSv4-10.5.  -
│ │ │ +001125d0: 2050 4349 2d44 5353 7634 2d31 302e 352e   PCI-DSSv4-10.5.
│ │ │ +001125e0: 310a 2020 2d20 656e 6162 6c65 5f73 7472  1.  - enable_str
│ │ │ +001125f0: 6174 6567 790a 2020 2d20 6c6f 775f 636f  ategy.  - low_co
│ │ │ +00112600: 6d70 6c65 7869 7479 0a20 202d 206c 6f77  mplexity.  - low
│ │ │ +00112610: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +00112620: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ +00112630: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ +00112640: 6564 6564 0a20 202d 2070 6163 6b61 6765  eded.  - package
│ │ │ +00112650: 5f70 6f73 7466 6978 5f69 6e73 7461 6c6c  _postfix_install
│ │ │ +00112660: 6564 0a3c 2f63 6f64 653e 3c2f 7072 653e  ed.
│ │ │ +00112670: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation P │ │ │ +00112720: 7570 7065 7420 736e 6970 7065 7420 e287 uppet snippet .. │ │ │ +00112730: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ +001127b0: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ +001127d0: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ +00112820: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
include install
│ │ │ +00112870: 5f70 6f73 7466 6978 0a0a 636c 6173 7320  _postfix..class 
│ │ │ +00112880: 696e 7374 616c 6c5f 706f 7374 6669 7820  install_postfix 
│ │ │ +00112890: 7b0a 2020 7061 636b 6167 6520 7b20 2770  {.  package { 'p
│ │ │ +001128a0: 6f73 7466 6978 273a 0a20 2020 2065 6e73  ostfix':.    ens
│ │ │ +001128b0: 7572 6520 3d26 6774 3b20 2769 6e73 7461  ure => 'insta
│ │ │ +001128c0: 6c6c 6564 272c 0a20 207d 0a7d 0a3c 2f63  lled',.  }.}.
│ │ │ +001128e0: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ +00112980: 6564 6961 7469 6f6e 204f 5342 7569 6c64 ediation OSBuild │ │ │ +00112990: 2042 6c75 6570 7269 6e74 2073 6e69 7070 Blueprint snipp │ │ │ +001129a0: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...

.[[pack │ │ │ +001129f0: 6167 6573 5d5d 0a6e 616d 6520 3d20 2270 ages]].name = "p │ │ │ +00112a00: 6f73 7466 6978 220a 7665 7273 696f 6e20 ostfix".version │ │ │ +00112a10: 3d20 222a 220a 3c2f 636f 6465 3e3c 2f70 = "*".

< │ │ │ 00112a30: 2f74 643e 3c2f 7472 3e3c 2f74 626f 6479 /td>
low
Disr │ │ │ +001127e0: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +001127f0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ +00112830: 7465 6779 3a3c 2f74 683e 3c74 643e 656e tegy:en │ │ │ +00112840: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
Re │ │ │ -00114250: 6d65 6469 6174 696f 6e20 4f53 4275 696c mediation OSBuil │ │ │ -00114260: 6420 426c 7565 7072 696e 7420 736e 6970 d Blueprint snip │ │ │ -00114270: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ -00114280: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -00114290: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -001142a0: 7365 2220 6964 3d22 6964 3331 3022 3e3c se" id="id310">< │ │ │ -001142b0: 7072 653e 3c63 6f64 653e 0a5b 6375 7374 pre>.[cust │ │ │ -001142c0: 6f6d 697a 6174 696f 6e73 2e73 6572 7669 omizations.servi │ │ │ -001142d0: 6365 735d 0a6d 6173 6b65 6420 3d20 5b22 ces].masked = [" │ │ │ -001142e0: 7270 6362 696e 6422 5d0a 3c2f 636f 6465 rpcbind"].
Remedi │ │ │ -001143a0: 6174 696f 6e20 5075 7070 6574 2073 6e69 ation Puppet sni │ │ │ -001143b0: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -001143c0: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -001143f0: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ -00114460: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ -00114480: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ -001144b0: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy: │ │ │ -001144d0: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
Comple │ │ │ -00114440: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ -00114450: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ -00114490: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ -001144a0: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
enable
include │ │ │ -001144f0: 6469 7361 626c 655f 7270 6362 696e 640a disable_rpcbind. │ │ │ -00114500: 0a63 6c61 7373 2064 6973 6162 6c65 5f72 .class disable_r │ │ │ -00114510: 7063 6269 6e64 207b 0a20 2073 6572 7669 pcbind {. servi │ │ │ -00114520: 6365 207b 2772 7063 6269 6e64 273a 0a20 ce {'rpcbind':. │ │ │ -00114530: 2020 2065 6e61 626c 6520 3d26 6774 3b20 enable => │ │ │ -00114540: 6661 6c73 652c 0a20 2020 2065 6e73 7572 false,. ensur │ │ │ -00114550: 6520 3d26 6774 3b20 2773 746f 7070 6564 e => 'stopped │ │ │ -00114560: 272c 0a20 207d 0a7d 0a3c 2f63 6f64 653e ',. }.}. │ │ │ -00114570: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063
Remedia │ │ │ -00114620: 7469 6f6e 2041 6e73 6962 6c65 2073 6e69 tion Ansible sni │ │ │ -00114630: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -00114640: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -00114670: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ -001146e0: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ -00114700: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ -00114730: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
Comple │ │ │ -001146c0: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ -001146d0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ -00114710: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ -00114720: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
disable

- name: │ │ │ -00114770: 2047 6174 6865 7220 7468 6520 7061 636b Gather the pack │ │ │ -00114780: 6167 6520 6661 6374 730a 2020 7061 636b age facts. pack │ │ │ -00114790: 6167 655f 6661 6374 733a 0a20 2020 206d age_facts:. m │ │ │ -001147a0: 616e 6167 6572 3a20 6175 746f 0a20 2074 anager: auto. t │ │ │ -001147b0: 6167 733a 0a20 202d 2050 4349 2d44 5353 ags:. - PCI-DSS │ │ │ -001147c0: 7634 2d32 2e32 0a20 202d 2050 4349 2d44 v4-2.2. - PCI-D │ │ │ -001147d0: 5353 7634 2d32 2e32 2e34 0a20 202d 2064 SSv4-2.2.4. - d │ │ │ -001147e0: 6973 6162 6c65 5f73 7472 6174 6567 790a isable_strategy. │ │ │ -001147f0: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869 - low_complexi │ │ │ -00114800: 7479 0a20 202d 206c 6f77 5f64 6973 7275 ty. - low_disru │ │ │ -00114810: 7074 696f 6e0a 2020 2d20 6c6f 775f 7365 ption. - low_se │ │ │ -00114820: 7665 7269 7479 0a20 202d 206e 6f5f 7265 verity. - no_re │ │ │ -00114830: 626f 6f74 5f6e 6565 6465 640a 2020 2d20 boot_needed. - │ │ │ -00114840: 7365 7276 6963 655f 7270 6362 696e 645f service_rpcbind_ │ │ │ -00114850: 6469 7361 626c 6564 0a0a 2d20 6e61 6d65 disabled..- name │ │ │ -00114860: 3a20 4469 7361 626c 6520 7270 6362 696e : Disable rpcbin │ │ │ -00114870: 6420 5365 7276 6963 6520 2d20 4469 7361 d Service - Disa │ │ │ -00114880: 626c 6520 7365 7276 6963 6520 7270 6362 ble service rpcb │ │ │ -00114890: 696e 640a 2020 626c 6f63 6b3a 0a0a 2020 ind. block:.. │ │ │ -001148a0: 2d20 6e61 6d65 3a20 4469 7361 626c 6520 - name: Disable │ │ │ -001148b0: 7270 6362 696e 6420 5365 7276 6963 6520 rpcbind Service │ │ │ -001148c0: 2d20 436f 6c6c 6563 7420 7379 7374 656d - Collect system │ │ │ -001148d0: 6420 5365 7276 6963 6573 2050 7265 7365 d Services Prese │ │ │ -001148e0: 6e74 2069 6e20 7468 6520 5379 7374 656d nt in the System │ │ │ -001148f0: 0a20 2020 2061 6e73 6962 6c65 2e62 7569 . ansible.bui │ │ │ -00114900: 6c74 696e 2e63 6f6d 6d61 6e64 3a20 7379 ltin.command: sy │ │ │ -00114910: 7374 656d 6374 6c20 2d71 206c 6973 742d stemctl -q list- │ │ │ -00114920: 756e 6974 2d66 696c 6573 202d 2d74 7970 unit-files --typ │ │ │ -00114930: 6520 7365 7276 6963 650a 2020 2020 7265 e service. re │ │ │ -00114940: 6769 7374 6572 3a20 7365 7276 6963 655f gister: service_ │ │ │ -00114950: 6578 6973 7473 0a20 2020 2063 6861 6e67 exists. chang │ │ │ -00114960: 6564 5f77 6865 6e3a 2066 616c 7365 0a20 ed_when: false. │ │ │ -00114970: 2020 2066 6169 6c65 645f 7768 656e 3a20 failed_when: │ │ │ -00114980: 7365 7276 6963 655f 6578 6973 7473 2e72 service_exists.r │ │ │ -00114990: 6320 6e6f 7420 696e 205b 302c 2031 5d0a c not in [0, 1]. │ │ │ -001149a0: 2020 2020 6368 6563 6b5f 6d6f 6465 3a20 check_mode: │ │ │ -001149b0: 6661 6c73 650a 0a20 202d 206e 616d 653a false.. - name: │ │ │ -001149c0: 2044 6973 6162 6c65 2072 7063 6269 6e64 Disable rpcbind │ │ │ -001149d0: 2053 6572 7669 6365 202d 2045 6e73 7572 Service - Ensur │ │ │ -001149e0: 6520 7270 6362 696e 642e 7365 7276 6963 e rpcbind.servic │ │ │ -001149f0: 6520 6973 204d 6173 6b65 640a 2020 2020 e is Masked. │ │ │ -00114a00: 616e 7369 626c 652e 6275 696c 7469 6e2e ansible.builtin. │ │ │ -00114a10: 7379 7374 656d 643a 0a20 2020 2020 206e systemd:. n │ │ │ -00114a20: 616d 653a 2072 7063 6269 6e64 2e73 6572 ame: rpcbind.ser │ │ │ -00114a30: 7669 6365 0a20 2020 2020 2073 7461 7465 vice. state │ │ │ -00114a40: 3a20 7374 6f70 7065 640a 2020 2020 2020 : stopped. │ │ │ -00114a50: 656e 6162 6c65 643a 2066 616c 7365 0a20 enabled: false. │ │ │ -00114a60: 2020 2020 206d 6173 6b65 643a 2074 7275 masked: tru │ │ │ -00114a70: 650a 2020 2020 7768 656e 3a20 7365 7276 e. when: serv │ │ │ -00114a80: 6963 655f 6578 6973 7473 2e73 7464 6f75 ice_exists.stdou │ │ │ -00114a90: 745f 6c69 6e65 7320 6973 2073 6561 7263 t_lines is searc │ │ │ -00114aa0: 6828 2272 7063 6269 6e64 2e73 6572 7669 h("rpcbind.servi │ │ │ -00114ab0: 6365 222c 206d 756c 7469 6c69 6e65 3d54 ce", multiline=T │ │ │ -00114ac0: 7275 6529 0a0a 2020 2d20 6e61 6d65 3a20 rue).. - name: │ │ │ -00114ad0: 556e 6974 2053 6f63 6b65 7420 4578 6973 Unit Socket Exis │ │ │ -00114ae0: 7473 202d 2072 7063 6269 6e64 2e73 6f63 ts - rpcbind.soc │ │ │ -00114af0: 6b65 740a 2020 2020 616e 7369 626c 652e ket. ansible. │ │ │ -00114b00: 6275 696c 7469 6e2e 636f 6d6d 616e 643a builtin.command: │ │ │ -00114b10: 2073 7973 7465 6d63 746c 202d 7120 6c69 systemctl -q li │ │ │ -00114b20: 7374 2d75 6e69 742d 6669 6c65 7320 7270 st-unit-files rp │ │ │ -00114b30: 6362 696e 642e 736f 636b 6574 0a20 2020 cbind.socket. │ │ │ -00114b40: 2072 6567 6973 7465 723a 2073 6f63 6b65 register: socke │ │ │ -00114b50: 745f 6669 6c65 5f65 7869 7374 730a 2020 t_file_exists. │ │ │ -00114b60: 2020 6368 616e 6765 645f 7768 656e 3a20 changed_when: │ │ │ -00114b70: 6661 6c73 650a 2020 2020 6661 696c 6564 false. failed │ │ │ -00114b80: 5f77 6865 6e3a 2073 6f63 6b65 745f 6669 _when: socket_fi │ │ │ -00114b90: 6c65 5f65 7869 7374 732e 7263 206e 6f74 le_exists.rc not │ │ │ -00114ba0: 2069 6e20 5b30 2c20 315d 0a20 2020 2063 in [0, 1]. c │ │ │ -00114bb0: 6865 636b 5f6d 6f64 653a 2066 616c 7365 heck_mode: false │ │ │ -00114bc0: 0a0a 2020 2d20 6e61 6d65 3a20 4469 7361 .. - name: Disa │ │ │ -00114bd0: 626c 6520 7270 6362 696e 6420 5365 7276 ble rpcbind Serv │ │ │ -00114be0: 6963 6520 2d20 4469 7361 626c 6520 536f ice - Disable So │ │ │ -00114bf0: 636b 6574 2072 7063 6269 6e64 0a20 2020 cket rpcbind. │ │ │ -00114c00: 2061 6e73 6962 6c65 2e62 7569 6c74 696e ansible.builtin │ │ │ -00114c10: 2e73 7973 7465 6d64 3a0a 2020 2020 2020 .systemd:. │ │ │ -00114c20: 6e61 6d65 3a20 7270 6362 696e 642e 736f name: rpcbind.so │ │ │ -00114c30: 636b 6574 0a20 2020 2020 2065 6e61 626c cket. enabl │ │ │ -00114c40: 6564 3a20 6661 6c73 650a 2020 2020 2020 ed: false. │ │ │ -00114c50: 7374 6174 653a 2073 746f 7070 6564 0a20 state: stopped. │ │ │ -00114c60: 2020 2020 206d 6173 6b65 643a 2074 7275 masked: tru │ │ │ -00114c70: 650a 2020 2020 7768 656e 3a20 736f 636b e. when: sock │ │ │ -00114c80: 6574 5f66 696c 655f 6578 6973 7473 2e73 et_file_exists.s │ │ │ -00114c90: 7464 6f75 745f 6c69 6e65 7320 6973 2073 tdout_lines is s │ │ │ -00114ca0: 6561 7263 6828 2272 7063 6269 6e64 2e73 earch("rpcbind.s │ │ │ -00114cb0: 6f63 6b65 7422 2c20 6d75 6c74 696c 696e ocket", multilin │ │ │ -00114cc0: 653d 5472 7565 290a 2020 7461 6773 3a0a e=True). tags:. │ │ │ -00114cd0: 2020 2d20 5043 492d 4453 5376 342d 322e - PCI-DSSv4-2. │ │ │ -00114ce0: 320a 2020 2d20 5043 492d 4453 5376 342d 2. - PCI-DSSv4- │ │ │ -00114cf0: 322e 322e 340a 2020 2d20 6469 7361 626c 2.2.4. - disabl │ │ │ -00114d00: 655f 7374 7261 7465 6779 0a20 202d 206c e_strategy. - l │ │ │ -00114d10: 6f77 5f63 6f6d 706c 6578 6974 790a 2020 ow_complexity. │ │ │ -00114d20: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e - low_disruption │ │ │ -00114d30: 0a20 202d 206c 6f77 5f73 6576 6572 6974 . - low_severit │ │ │ -00114d40: 790a 2020 2d20 6e6f 5f72 6562 6f6f 745f y. - no_reboot_ │ │ │ -00114d50: 6e65 6564 6564 0a20 202d 2073 6572 7669 needed. - servi │ │ │ -00114d60: 6365 5f72 7063 6269 6e64 5f64 6973 6162 ce_rpcbind_disab │ │ │ -00114d70: 6c65 640a 2020 2d20 7370 6563 6961 6c5f led. - special_ │ │ │ -00114d80: 7365 7276 6963 655f 626c 6f63 6b0a 2020 service_block. │ │ │ -00114d90: 7768 656e 3a20 2722 6b65 726e 656c 2220 when: '"kernel" │ │ │ -00114da0: 696e 2061 6e73 6962 6c65 5f66 6163 7473 in ansible_facts │ │ │ -00114db0: 2e70 6163 6b61 6765 7327 0a3c 2f63 6f64 .packages'.

< │ │ │ +00114300: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +00114310: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ +00114360: 3c74 723e 3c74 683e 5374 7261 7465 6779
- 
│ │ │ +001143a0: 6e61 6d65 3a20 4761 7468 6572 2074 6865  name: Gather the
│ │ │ +001143b0: 2070 6163 6b61 6765 2066 6163 7473 0a20   package facts. 
│ │ │ +001143c0: 2070 6163 6b61 6765 5f66 6163 7473 3a0a   package_facts:.
│ │ │ +001143d0: 2020 2020 6d61 6e61 6765 723a 2061 7574      manager: aut
│ │ │ +001143e0: 6f0a 2020 7461 6773 3a0a 2020 2d20 5043  o.  tags:.  - PC
│ │ │ +001143f0: 492d 4453 5376 342d 322e 320a 2020 2d20  I-DSSv4-2.2.  - 
│ │ │ +00114400: 5043 492d 4453 5376 342d 322e 322e 340a  PCI-DSSv4-2.2.4.
│ │ │ +00114410: 2020 2d20 6469 7361 626c 655f 7374 7261    - disable_stra
│ │ │ +00114420: 7465 6779 0a20 202d 206c 6f77 5f63 6f6d  tegy.  - low_com
│ │ │ +00114430: 706c 6578 6974 790a 2020 2d20 6c6f 775f  plexity.  - low_
│ │ │ +00114440: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ +00114450: 6f77 5f73 6576 6572 6974 790a 2020 2d20  ow_severity.  - 
│ │ │ +00114460: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ +00114470: 0a20 202d 2073 6572 7669 6365 5f72 7063  .  - service_rpc
│ │ │ +00114480: 6269 6e64 5f64 6973 6162 6c65 640a 0a2d  bind_disabled..-
│ │ │ +00114490: 206e 616d 653a 2044 6973 6162 6c65 2072   name: Disable r
│ │ │ +001144a0: 7063 6269 6e64 2053 6572 7669 6365 202d  pcbind Service -
│ │ │ +001144b0: 2044 6973 6162 6c65 2073 6572 7669 6365   Disable service
│ │ │ +001144c0: 2072 7063 6269 6e64 0a20 2062 6c6f 636b   rpcbind.  block
│ │ │ +001144d0: 3a0a 0a20 202d 206e 616d 653a 2044 6973  :..  - name: Dis
│ │ │ +001144e0: 6162 6c65 2072 7063 6269 6e64 2053 6572  able rpcbind Ser
│ │ │ +001144f0: 7669 6365 202d 2043 6f6c 6c65 6374 2073  vice - Collect s
│ │ │ +00114500: 7973 7465 6d64 2053 6572 7669 6365 7320  ystemd Services 
│ │ │ +00114510: 5072 6573 656e 7420 696e 2074 6865 2053  Present in the S
│ │ │ +00114520: 7973 7465 6d0a 2020 2020 616e 7369 626c  ystem.    ansibl
│ │ │ +00114530: 652e 6275 696c 7469 6e2e 636f 6d6d 616e  e.builtin.comman
│ │ │ +00114540: 643a 2073 7973 7465 6d63 746c 202d 7120  d: systemctl -q 
│ │ │ +00114550: 6c69 7374 2d75 6e69 742d 6669 6c65 7320  list-unit-files 
│ │ │ +00114560: 2d2d 7479 7065 2073 6572 7669 6365 0a20  --type service. 
│ │ │ +00114570: 2020 2072 6567 6973 7465 723a 2073 6572     register: ser
│ │ │ +00114580: 7669 6365 5f65 7869 7374 730a 2020 2020  vice_exists.    
│ │ │ +00114590: 6368 616e 6765 645f 7768 656e 3a20 6661  changed_when: fa
│ │ │ +001145a0: 6c73 650a 2020 2020 6661 696c 6564 5f77  lse.    failed_w
│ │ │ +001145b0: 6865 6e3a 2073 6572 7669 6365 5f65 7869  hen: service_exi
│ │ │ +001145c0: 7374 732e 7263 206e 6f74 2069 6e20 5b30  sts.rc not in [0
│ │ │ +001145d0: 2c20 315d 0a20 2020 2063 6865 636b 5f6d  , 1].    check_m
│ │ │ +001145e0: 6f64 653a 2066 616c 7365 0a0a 2020 2d20  ode: false..  - 
│ │ │ +001145f0: 6e61 6d65 3a20 4469 7361 626c 6520 7270  name: Disable rp
│ │ │ +00114600: 6362 696e 6420 5365 7276 6963 6520 2d20  cbind Service - 
│ │ │ +00114610: 456e 7375 7265 2072 7063 6269 6e64 2e73  Ensure rpcbind.s
│ │ │ +00114620: 6572 7669 6365 2069 7320 4d61 736b 6564  ervice is Masked
│ │ │ +00114630: 0a20 2020 2061 6e73 6962 6c65 2e62 7569  .    ansible.bui
│ │ │ +00114640: 6c74 696e 2e73 7973 7465 6d64 3a0a 2020  ltin.systemd:.  
│ │ │ +00114650: 2020 2020 6e61 6d65 3a20 7270 6362 696e      name: rpcbin
│ │ │ +00114660: 642e 7365 7276 6963 650a 2020 2020 2020  d.service.      
│ │ │ +00114670: 7374 6174 653a 2073 746f 7070 6564 0a20  state: stopped. 
│ │ │ +00114680: 2020 2020 2065 6e61 626c 6564 3a20 6661       enabled: fa
│ │ │ +00114690: 6c73 650a 2020 2020 2020 6d61 736b 6564  lse.      masked
│ │ │ +001146a0: 3a20 7472 7565 0a20 2020 2077 6865 6e3a  : true.    when:
│ │ │ +001146b0: 2073 6572 7669 6365 5f65 7869 7374 732e   service_exists.
│ │ │ +001146c0: 7374 646f 7574 5f6c 696e 6573 2069 7320  stdout_lines is 
│ │ │ +001146d0: 7365 6172 6368 2822 7270 6362 696e 642e  search("rpcbind.
│ │ │ +001146e0: 7365 7276 6963 6522 2c20 6d75 6c74 696c  service", multil
│ │ │ +001146f0: 696e 653d 5472 7565 290a 0a20 202d 206e  ine=True)..  - n
│ │ │ +00114700: 616d 653a 2055 6e69 7420 536f 636b 6574  ame: Unit Socket
│ │ │ +00114710: 2045 7869 7374 7320 2d20 7270 6362 696e   Exists - rpcbin
│ │ │ +00114720: 642e 736f 636b 6574 0a20 2020 2061 6e73  d.socket.    ans
│ │ │ +00114730: 6962 6c65 2e62 7569 6c74 696e 2e63 6f6d  ible.builtin.com
│ │ │ +00114740: 6d61 6e64 3a20 7379 7374 656d 6374 6c20  mand: systemctl 
│ │ │ +00114750: 2d71 206c 6973 742d 756e 6974 2d66 696c  -q list-unit-fil
│ │ │ +00114760: 6573 2072 7063 6269 6e64 2e73 6f63 6b65  es rpcbind.socke
│ │ │ +00114770: 740a 2020 2020 7265 6769 7374 6572 3a20  t.    register: 
│ │ │ +00114780: 736f 636b 6574 5f66 696c 655f 6578 6973  socket_file_exis
│ │ │ +00114790: 7473 0a20 2020 2063 6861 6e67 6564 5f77  ts.    changed_w
│ │ │ +001147a0: 6865 6e3a 2066 616c 7365 0a20 2020 2066  hen: false.    f
│ │ │ +001147b0: 6169 6c65 645f 7768 656e 3a20 736f 636b  ailed_when: sock
│ │ │ +001147c0: 6574 5f66 696c 655f 6578 6973 7473 2e72  et_file_exists.r
│ │ │ +001147d0: 6320 6e6f 7420 696e 205b 302c 2031 5d0a  c not in [0, 1].
│ │ │ +001147e0: 2020 2020 6368 6563 6b5f 6d6f 6465 3a20      check_mode: 
│ │ │ +001147f0: 6661 6c73 650a 0a20 202d 206e 616d 653a  false..  - name:
│ │ │ +00114800: 2044 6973 6162 6c65 2072 7063 6269 6e64   Disable rpcbind
│ │ │ +00114810: 2053 6572 7669 6365 202d 2044 6973 6162   Service - Disab
│ │ │ +00114820: 6c65 2053 6f63 6b65 7420 7270 6362 696e  le Socket rpcbin
│ │ │ +00114830: 640a 2020 2020 616e 7369 626c 652e 6275  d.    ansible.bu
│ │ │ +00114840: 696c 7469 6e2e 7379 7374 656d 643a 0a20  iltin.systemd:. 
│ │ │ +00114850: 2020 2020 206e 616d 653a 2072 7063 6269       name: rpcbi
│ │ │ +00114860: 6e64 2e73 6f63 6b65 740a 2020 2020 2020  nd.socket.      
│ │ │ +00114870: 656e 6162 6c65 643a 2066 616c 7365 0a20  enabled: false. 
│ │ │ +00114880: 2020 2020 2073 7461 7465 3a20 7374 6f70       state: stop
│ │ │ +00114890: 7065 640a 2020 2020 2020 6d61 736b 6564  ped.      masked
│ │ │ +001148a0: 3a20 7472 7565 0a20 2020 2077 6865 6e3a  : true.    when:
│ │ │ +001148b0: 2073 6f63 6b65 745f 6669 6c65 5f65 7869   socket_file_exi
│ │ │ +001148c0: 7374 732e 7374 646f 7574 5f6c 696e 6573  sts.stdout_lines
│ │ │ +001148d0: 2069 7320 7365 6172 6368 2822 7270 6362   is search("rpcb
│ │ │ +001148e0: 696e 642e 736f 636b 6574 222c 206d 756c  ind.socket", mul
│ │ │ +001148f0: 7469 6c69 6e65 3d54 7275 6529 0a20 2074  tiline=True).  t
│ │ │ +00114900: 6167 733a 0a20 202d 2050 4349 2d44 5353  ags:.  - PCI-DSS
│ │ │ +00114910: 7634 2d32 2e32 0a20 202d 2050 4349 2d44  v4-2.2.  - PCI-D
│ │ │ +00114920: 5353 7634 2d32 2e32 2e34 0a20 202d 2064  SSv4-2.2.4.  - d
│ │ │ +00114930: 6973 6162 6c65 5f73 7472 6174 6567 790a  isable_strategy.
│ │ │ +00114940: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ +00114950: 7479 0a20 202d 206c 6f77 5f64 6973 7275  ty.  - low_disru
│ │ │ +00114960: 7074 696f 6e0a 2020 2d20 6c6f 775f 7365  ption.  - low_se
│ │ │ +00114970: 7665 7269 7479 0a20 202d 206e 6f5f 7265  verity.  - no_re
│ │ │ +00114980: 626f 6f74 5f6e 6565 6465 640a 2020 2d20  boot_needed.  - 
│ │ │ +00114990: 7365 7276 6963 655f 7270 6362 696e 645f  service_rpcbind_
│ │ │ +001149a0: 6469 7361 626c 6564 0a20 202d 2073 7065  disabled.  - spe
│ │ │ +001149b0: 6369 616c 5f73 6572 7669 6365 5f62 6c6f  cial_service_blo
│ │ │ +001149c0: 636b 0a20 2077 6865 6e3a 2027 226b 6572  ck.  when: '"ker
│ │ │ +001149d0: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ +001149e0: 6661 6374 732e 7061 636b 6167 6573 270a  facts.packages'.
│ │ │ +001149f0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ +00114aa0: 5265 6d65 6469 6174 696f 6e20 5075 7070 Remediation Pupp │ │ │ +00114ab0: 6574 2073 6e69 7070 6574 20e2 87b2 3c2f et snippet ...
C │ │ │ +001142f0: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ +00114320: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ +00114330: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ +00114370: 3a3c 2f74 683e 3c74 643e 6469 7361 626c :disabl │ │ │ +00114380: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
│ │ │ +00114b50: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
in
│ │ │ +00114bf0: 636c 7564 6520 6469 7361 626c 655f 7270  clude disable_rp
│ │ │ +00114c00: 6362 696e 640a 0a63 6c61 7373 2064 6973  cbind..class dis
│ │ │ +00114c10: 6162 6c65 5f72 7063 6269 6e64 207b 0a20  able_rpcbind {. 
│ │ │ +00114c20: 2073 6572 7669 6365 207b 2772 7063 6269   service {'rpcbi
│ │ │ +00114c30: 6e64 273a 0a20 2020 2065 6e61 626c 6520  nd':.    enable 
│ │ │ +00114c40: 3d26 6774 3b20 6661 6c73 652c 0a20 2020  => false,.   
│ │ │ +00114c50: 2065 6e73 7572 6520 3d26 6774 3b20 2773   ensure => 's
│ │ │ +00114c60: 746f 7070 6564 272c 0a20 207d 0a7d 0a3c  topped',.  }.}.<
│ │ │ +00114c70: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ +00114d20: 656d 6564 6961 7469 6f6e 204f 5342 7569 emediation OSBui │ │ │ +00114d30: 6c64 2042 6c75 6570 7269 6e74 2073 6e69 ld Blueprint sni │ │ │ +00114d40: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ +00114d50: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ +00114d80: 3c70 7265 3e3c 636f 6465 3e0a 5b63 7573
.[cus
│ │ │ +00114d90: 746f 6d69 7a61 7469 6f6e 732e 7365 7276  tomizations.serv
│ │ │ +00114da0: 6963 6573 5d0a 6d61 736b 6564 203d 205b  ices].masked = [
│ │ │ +00114db0: 2272 7063 6269 6e64 225d 0a3c 2f63 6f64  "rpcbind"].
│ │ │ +00114b40: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +00114b70: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +00114b80: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +00114bc0: 793a 3c2f 7468 3e3c 7464 3e65 6e61 626c y:enabl │ │ │ +00114bd0: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
│ │ │ -001169f0: 5265 6d65 6469 6174 696f 6e20 4f53 4275 Remediation OSBu │ │ │ -00116a00: 696c 6420 426c 7565 7072 696e 7420 736e ild Blueprint sn │ │ │ -00116a10: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
.[[p
│ │ │ -00116a60: 6163 6b61 6765 735d 5d0a 6e61 6d65 203d  ackages]].name =
│ │ │ -00116a70: 2022 6368 726f 6e79 220a 7665 7273 696f   "chrony".versio
│ │ │ -00116a80: 6e20 3d20 222a 220a 3c2f 636f 6465 3e3c  n = "*".<
│ │ │ -00116a90: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>
Remediat │ │ │ -00116b40: 696f 6e20 5075 7070 6574 2073 6e69 7070 ion Puppet snipp │ │ │ -00116b50: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ -00116bd0: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ -00116be0: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -00116bf0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ -00116c30: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -00116c40: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ -00116c60: 7464 3e65 6e61 626c 653c 2f74 643e 3c2f td>enable
│ │ │ -00116c80: 3c63 6f64 653e 696e 636c 7564 6520 696e  include in
│ │ │ -00116c90: 7374 616c 6c5f 6368 726f 6e79 0a0a 636c  stall_chrony..cl
│ │ │ -00116ca0: 6173 7320 696e 7374 616c 6c5f 6368 726f  ass install_chro
│ │ │ -00116cb0: 6e79 207b 0a20 2070 6163 6b61 6765 207b  ny {.  package {
│ │ │ -00116cc0: 2027 6368 726f 6e79 273a 0a20 2020 2065   'chrony':.    e
│ │ │ -00116cd0: 6e73 7572 6520 3d26 6774 3b20 2769 6e73  nsure => 'ins
│ │ │ -00116ce0: 7461 6c6c 6564 272c 0a20 207d 0a7d 0a3c  talled',.  }.}.<
│ │ │ -00116cf0: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ -00116da0: 656d 6564 6961 7469 6f6e 2041 6e73 6962 emediation Ansib │ │ │ -00116db0: 6c65 2073 6e69 7070 6574 20e2 87b2 3c2f le snippet ...
│ │ │ -00116e50: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
- 
│ │ │ -00116ef0: 6e61 6d65 3a20 4761 7468 6572 2074 6865  name: Gather the
│ │ │ -00116f00: 2070 6163 6b61 6765 2066 6163 7473 0a20   package facts. 
│ │ │ -00116f10: 2070 6163 6b61 6765 5f66 6163 7473 3a0a   package_facts:.
│ │ │ -00116f20: 2020 2020 6d61 6e61 6765 723a 2061 7574      manager: aut
│ │ │ -00116f30: 6f0a 2020 7461 6773 3a0a 2020 2d20 5043  o.  tags:.  - PC
│ │ │ -00116f40: 492d 4453 532d 5265 712d 3130 2e34 0a20  I-DSS-Req-10.4. 
│ │ │ -00116f50: 202d 2050 4349 2d44 5353 7634 2d31 302e   - PCI-DSSv4-10.
│ │ │ -00116f60: 360a 2020 2d20 5043 492d 4453 5376 342d  6.  - PCI-DSSv4-
│ │ │ -00116f70: 3130 2e36 2e31 0a20 202d 2065 6e61 626c  10.6.1.  - enabl
│ │ │ -00116f80: 655f 7374 7261 7465 6779 0a20 202d 206c  e_strategy.  - l
│ │ │ -00116f90: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ -00116fa0: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ -00116fb0: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ -00116fc0: 7269 7479 0a20 202d 206e 6f5f 7265 626f  rity.  - no_rebo
│ │ │ -00116fd0: 6f74 5f6e 6565 6465 640a 2020 2d20 7061  ot_needed.  - pa
│ │ │ -00116fe0: 636b 6167 655f 6368 726f 6e79 5f69 6e73  ckage_chrony_ins
│ │ │ -00116ff0: 7461 6c6c 6564 0a0a 2d20 6e61 6d65 3a20  talled..- name: 
│ │ │ -00117000: 456e 7375 7265 2063 6872 6f6e 7920 6973  Ensure chrony is
│ │ │ -00117010: 2069 6e73 7461 6c6c 6564 0a20 2061 6e73   installed.  ans
│ │ │ -00117020: 6962 6c65 2e62 7569 6c74 696e 2e70 6163  ible.builtin.pac
│ │ │ -00117030: 6b61 6765 3a0a 2020 2020 6e61 6d65 3a20  kage:.    name: 
│ │ │ -00117040: 6368 726f 6e79 0a20 2020 2073 7461 7465  chrony.    state
│ │ │ -00117050: 3a20 7072 6573 656e 740a 2020 7768 656e  : present.  when
│ │ │ -00117060: 3a20 2722 6b65 726e 656c 2220 696e 2061  : '"kernel" in a
│ │ │ -00117070: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -00117080: 6b61 6765 7327 0a20 2074 6167 733a 0a20  kages'.  tags:. 
│ │ │ -00117090: 202d 2050 4349 2d44 5353 2d52 6571 2d31   - PCI-DSS-Req-1
│ │ │ -001170a0: 302e 340a 2020 2d20 5043 492d 4453 5376  0.4.  - PCI-DSSv
│ │ │ -001170b0: 342d 3130 2e36 0a20 202d 2050 4349 2d44  4-10.6.  - PCI-D
│ │ │ -001170c0: 5353 7634 2d31 302e 362e 310a 2020 2d20  SSv4-10.6.1.  - 
│ │ │ -001170d0: 656e 6162 6c65 5f73 7472 6174 6567 790a  enable_strategy.
│ │ │ -001170e0: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ -001170f0: 7479 0a20 202d 206c 6f77 5f64 6973 7275  ty.  - low_disru
│ │ │ -00117100: 7074 696f 6e0a 2020 2d20 6d65 6469 756d  ption.  - medium
│ │ │ -00117110: 5f73 6576 6572 6974 790a 2020 2d20 6e6f  _severity.  - no
│ │ │ -00117120: 5f72 6562 6f6f 745f 6e65 6564 6564 0a20  _reboot_needed. 
│ │ │ -00117130: 202d 2070 6163 6b61 6765 5f63 6872 6f6e   - package_chron
│ │ │ -00117140: 795f 696e 7374 616c 6c65 640a 3c2f 636f  y_installed.
│ │ │ -00116e40: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -00116e70: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -00116e80: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -00116ec0: 793a 3c2f 7468 3e3c 7464 3e65 6e61 626c y:enabl │ │ │ -00116ed0: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
< │ │ │ +00116ae0: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +00116af0: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
-
│ │ │ +00116b40: 206e 616d 653a 2047 6174 6865 7220 7468   name: Gather th
│ │ │ +00116b50: 6520 7061 636b 6167 6520 6661 6374 730a  e package facts.
│ │ │ +00116b60: 2020 7061 636b 6167 655f 6661 6374 733a    package_facts:
│ │ │ +00116b70: 0a20 2020 206d 616e 6167 6572 3a20 6175  .    manager: au
│ │ │ +00116b80: 746f 0a20 2074 6167 733a 0a20 202d 2050  to.  tags:.  - P
│ │ │ +00116b90: 4349 2d44 5353 2d52 6571 2d31 302e 340a  CI-DSS-Req-10.4.
│ │ │ +00116ba0: 2020 2d20 5043 492d 4453 5376 342d 3130    - PCI-DSSv4-10
│ │ │ +00116bb0: 2e36 0a20 202d 2050 4349 2d44 5353 7634  .6.  - PCI-DSSv4
│ │ │ +00116bc0: 2d31 302e 362e 310a 2020 2d20 656e 6162  -10.6.1.  - enab
│ │ │ +00116bd0: 6c65 5f73 7472 6174 6567 790a 2020 2d20  le_strategy.  - 
│ │ │ +00116be0: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ +00116bf0: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ +00116c00: 6e0a 2020 2d20 6d65 6469 756d 5f73 6576  n.  - medium_sev
│ │ │ +00116c10: 6572 6974 790a 2020 2d20 6e6f 5f72 6562  erity.  - no_reb
│ │ │ +00116c20: 6f6f 745f 6e65 6564 6564 0a20 202d 2070  oot_needed.  - p
│ │ │ +00116c30: 6163 6b61 6765 5f63 6872 6f6e 795f 696e  ackage_chrony_in
│ │ │ +00116c40: 7374 616c 6c65 640a 0a2d 206e 616d 653a  stalled..- name:
│ │ │ +00116c50: 2045 6e73 7572 6520 6368 726f 6e79 2069   Ensure chrony i
│ │ │ +00116c60: 7320 696e 7374 616c 6c65 640a 2020 616e  s installed.  an
│ │ │ +00116c70: 7369 626c 652e 6275 696c 7469 6e2e 7061  sible.builtin.pa
│ │ │ +00116c80: 636b 6167 653a 0a20 2020 206e 616d 653a  ckage:.    name:
│ │ │ +00116c90: 2063 6872 6f6e 790a 2020 2020 7374 6174   chrony.    stat
│ │ │ +00116ca0: 653a 2070 7265 7365 6e74 0a20 2077 6865  e: present.  whe
│ │ │ +00116cb0: 6e3a 2027 226b 6572 6e65 6c22 2069 6e20  n: '"kernel" in 
│ │ │ +00116cc0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +00116cd0: 636b 6167 6573 270a 2020 7461 6773 3a0a  ckages'.  tags:.
│ │ │ +00116ce0: 2020 2d20 5043 492d 4453 532d 5265 712d    - PCI-DSS-Req-
│ │ │ +00116cf0: 3130 2e34 0a20 202d 2050 4349 2d44 5353  10.4.  - PCI-DSS
│ │ │ +00116d00: 7634 2d31 302e 360a 2020 2d20 5043 492d  v4-10.6.  - PCI-
│ │ │ +00116d10: 4453 5376 342d 3130 2e36 2e31 0a20 202d  DSSv4-10.6.1.  -
│ │ │ +00116d20: 2065 6e61 626c 655f 7374 7261 7465 6779   enable_strategy
│ │ │ +00116d30: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ +00116d40: 6974 790a 2020 2d20 6c6f 775f 6469 7372  ity.  - low_disr
│ │ │ +00116d50: 7570 7469 6f6e 0a20 202d 206d 6564 6975  uption.  - mediu
│ │ │ +00116d60: 6d5f 7365 7665 7269 7479 0a20 202d 206e  m_severity.  - n
│ │ │ +00116d70: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ +00116d80: 2020 2d20 7061 636b 6167 655f 6368 726f    - package_chro
│ │ │ +00116d90: 6e79 5f69 6e73 7461 6c6c 6564 0a3c 2f63  ny_installed.
│ │ │ +00116db0: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ +00116e50: 6564 6961 7469 6f6e 2050 7570 7065 7420 ediation Puppet │ │ │ +00116e60: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ +00116e70: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Complexity:low
Disrup │ │ │ +00116ac0: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ +00116ad0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ +00116b10: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ +00116b20: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Com │ │ │ +00116ef0: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ +00116f20: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ +00116f40: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +00116f50: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ +00116f70: 2f74 683e 3c74 643e 656e 6162 6c65 3c2f /th>enable
│ │ │ +00116f90: 3c70 7265 3e3c 636f 6465 3e69 6e63 6c75
inclu
│ │ │ +00116fa0: 6465 2069 6e73 7461 6c6c 5f63 6872 6f6e  de install_chron
│ │ │ +00116fb0: 790a 0a63 6c61 7373 2069 6e73 7461 6c6c  y..class install
│ │ │ +00116fc0: 5f63 6872 6f6e 7920 7b0a 2020 7061 636b  _chrony {.  pack
│ │ │ +00116fd0: 6167 6520 7b20 2763 6872 6f6e 7927 3a0a  age { 'chrony':.
│ │ │ +00116fe0: 2020 2020 656e 7375 7265 203d 2667 743b      ensure =>
│ │ │ +00116ff0: 2027 696e 7374 616c 6c65 6427 2c0a 2020   'installed',.  
│ │ │ +00117000: 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70 7265  }.}.
Remediation │ │ │ +001170c0: 4f53 4275 696c 6420 426c 7565 7072 696e OSBuild Blueprin │ │ │ +001170d0: 7420 736e 6970 7065 7420 e287 b23c 2f61 t snippet ...

│ │ │ +00117120: 0a5b 5b70 6163 6b61 6765 735d 5d0a 6e61  .[[packages]].na
│ │ │ +00117130: 6d65 203d 2022 6368 726f 6e79 220a 7665  me = "chrony".ve
│ │ │ +00117140: 7273 696f 6e20 3d20 222a 220a 3c2f 636f  rsion = "*".
< │ │ │ 00117160: 2f64 6976 3e3c 2f74 643e 3c2f 7472 3e3c /div>< │ │ │ 00117170: 2f74 626f 6479 3e3c 2f74 6162 6c65 3e3c /tbody>< │ │ │ 00117180: 2f74 643e 3c2f 7472 3e3c 7472 2064 6174 /td>Remediation │ │ │ -0011cf10: 2050 7570 7065 7420 736e 6970 7065 7420 Puppet snippet │ │ │ -0011cf20: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
Complexity: │ │ │ -0011cfb0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ -0011cfd0: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:low< │ │ │ -0011cff0: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:falseSt │ │ │ -0011d020: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ -0011d030: 6469 7361 626c 653c 2f74 643e 3c2f 7472 disable
.include rem
│ │ │ -0011d060: 6f76 655f 7869 6e65 7464 0a0a 636c 6173  ove_xinetd..clas
│ │ │ -0011d070: 7320 7265 6d6f 7665 5f78 696e 6574 6420  s remove_xinetd 
│ │ │ -0011d080: 7b0a 2020 7061 636b 6167 6520 7b20 2778  {.  package { 'x
│ │ │ -0011d090: 696e 6574 6427 3a0a 2020 2020 656e 7375  inetd':.    ensu
│ │ │ -0011d0a0: 7265 203d 2667 743b 2027 7075 7267 6564  re => 'purged
│ │ │ -0011d0b0: 272c 0a20 207d 0a7d 0a3c 2f63 6f64 653e  ',.  }.}.
│ │ │ -0011d0c0: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ -0011d170: 7469 6f6e 2041 6e73 6962 6c65 2073 6e69 tion Ansible sni │ │ │ -0011d180: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -0011d190: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -0011d1c0: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ -0011d230: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ -0011d250: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ -0011d280: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
Comple │ │ │ -0011d210: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ -0011d220: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ -0011d260: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ -0011d270: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
disable

- name: │ │ │ -0011d2c0: 2047 6174 6865 7220 7468 6520 7061 636b Gather the pack │ │ │ -0011d2d0: 6167 6520 6661 6374 730a 2020 7061 636b age facts. pack │ │ │ -0011d2e0: 6167 655f 6661 6374 733a 0a20 2020 206d age_facts:. m │ │ │ -0011d2f0: 616e 6167 6572 3a20 6175 746f 0a20 2074 anager: auto. t │ │ │ -0011d300: 6167 733a 0a20 202d 204e 4953 542d 3830 ags:. - NIST-80 │ │ │ -0011d310: 302d 3533 2d43 4d2d 3628 6129 0a20 202d 0-53-CM-6(a). - │ │ │ -0011d320: 204e 4953 542d 3830 302d 3533 2d43 4d2d NIST-800-53-CM- │ │ │ -0011d330: 3728 6129 0a20 202d 204e 4953 542d 3830 7(a). - NIST-80 │ │ │ -0011d340: 302d 3533 2d43 4d2d 3728 6229 0a20 202d 0-53-CM-7(b). - │ │ │ -0011d350: 2050 4349 2d44 5353 7634 2d32 2e32 0a20 PCI-DSSv4-2.2. │ │ │ -0011d360: 202d 2050 4349 2d44 5353 7634 2d32 2e32 - PCI-DSSv4-2.2 │ │ │ -0011d370: 2e34 0a20 202d 2064 6973 6162 6c65 5f73 .4. - disable_s │ │ │ -0011d380: 7472 6174 6567 790a 2020 2d20 6c6f 775f trategy. - low_ │ │ │ -0011d390: 636f 6d70 6c65 7869 7479 0a20 202d 206c complexity. - l │ │ │ -0011d3a0: 6f77 5f64 6973 7275 7074 696f 6e0a 2020 ow_disruption. │ │ │ -0011d3b0: 2d20 6c6f 775f 7365 7665 7269 7479 0a20 - low_severity. │ │ │ -0011d3c0: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565 - no_reboot_nee │ │ │ -0011d3d0: 6465 640a 2020 2d20 7061 636b 6167 655f ded. - package_ │ │ │ -0011d3e0: 7869 6e65 7464 5f72 656d 6f76 6564 0a0a xinetd_removed.. │ │ │ -0011d3f0: 2d20 6e61 6d65 3a20 2755 6e69 6e73 7461 - name: 'Uninsta │ │ │ -0011d400: 6c6c 2078 696e 6574 6420 7061 636b 6167 ll xinetd packag │ │ │ -0011d410: 6520 6966 206e 6f74 2075 7365 6420 6279 e if not used by │ │ │ -0011d420: 206e 6574 776f 726b 2073 6572 7669 6365 network service │ │ │ -0011d430: 733a 2045 6e73 7572 6520 7869 6e65 7464 s: Ensure xinetd │ │ │ -0011d440: 2069 730a 2020 2020 7265 6d6f 7665 6427 is. removed' │ │ │ -0011d450: 0a20 2061 6e73 6962 6c65 2e62 7569 6c74 . ansible.built │ │ │ -0011d460: 696e 2e70 6163 6b61 6765 3a0a 2020 2020 in.package:. │ │ │ -0011d470: 6e61 6d65 3a20 7869 6e65 7464 0a20 2020 name: xinetd. │ │ │ -0011d480: 2073 7461 7465 3a20 6162 7365 6e74 0a20 state: absent. │ │ │ -0011d490: 2077 6865 6e3a 2027 226b 6572 6e65 6c22 when: '"kernel" │ │ │ -0011d4a0: 2069 6e20 616e 7369 626c 655f 6661 6374 in ansible_fact │ │ │ -0011d4b0: 732e 7061 636b 6167 6573 270a 2020 7461 s.packages'. ta │ │ │ -0011d4c0: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030 gs:. - NIST-800 │ │ │ -0011d4d0: 2d35 332d 434d 2d36 2861 290a 2020 2d20 -53-CM-6(a). - │ │ │ -0011d4e0: 4e49 5354 2d38 3030 2d35 332d 434d 2d37 NIST-800-53-CM-7 │ │ │ -0011d4f0: 2861 290a 2020 2d20 4e49 5354 2d38 3030 (a). - NIST-800 │ │ │ -0011d500: 2d35 332d 434d 2d37 2862 290a 2020 2d20 -53-CM-7(b). - │ │ │ -0011d510: 5043 492d 4453 5376 342d 322e 320a 2020 PCI-DSSv4-2.2. │ │ │ -0011d520: 2d20 5043 492d 4453 5376 342d 322e 322e - PCI-DSSv4-2.2. │ │ │ -0011d530: 340a 2020 2d20 6469 7361 626c 655f 7374 4. - disable_st │ │ │ -0011d540: 7261 7465 6779 0a20 202d 206c 6f77 5f63 rategy. - low_c │ │ │ -0011d550: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f omplexity. - lo │ │ │ -0011d560: 775f 6469 7372 7570 7469 6f6e 0a20 202d w_disruption. - │ │ │ -0011d570: 206c 6f77 5f73 6576 6572 6974 790a 2020 low_severity. │ │ │ -0011d580: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564 - no_reboot_need │ │ │ -0011d590: 6564 0a20 202d 2070 6163 6b61 6765 5f78 ed. - package_x │ │ │ -0011d5a0: 696e 6574 645f 7265 6d6f 7665 640a 3c2f inetd_removed.

Complexity │ │ │ +0011cfb0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ +0011cfd0: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ +0011cfe0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +0011cff0: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ +0011d000: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ +0011d020: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:disable
<
│ │ │ +0011d050: 636f 6465 3e2d 206e 616d 653a 2047 6174  code>- name: Gat
│ │ │ +0011d060: 6865 7220 7468 6520 7061 636b 6167 6520  her the package 
│ │ │ +0011d070: 6661 6374 730a 2020 7061 636b 6167 655f  facts.  package_
│ │ │ +0011d080: 6661 6374 733a 0a20 2020 206d 616e 6167  facts:.    manag
│ │ │ +0011d090: 6572 3a20 6175 746f 0a20 2074 6167 733a  er: auto.  tags:
│ │ │ +0011d0a0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +0011d0b0: 2d43 4d2d 3628 6129 0a20 202d 204e 4953  -CM-6(a).  - NIS
│ │ │ +0011d0c0: 542d 3830 302d 3533 2d43 4d2d 3728 6129  T-800-53-CM-7(a)
│ │ │ +0011d0d0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +0011d0e0: 2d43 4d2d 3728 6229 0a20 202d 2050 4349  -CM-7(b).  - PCI
│ │ │ +0011d0f0: 2d44 5353 7634 2d32 2e32 0a20 202d 2050  -DSSv4-2.2.  - P
│ │ │ +0011d100: 4349 2d44 5353 7634 2d32 2e32 2e34 0a20  CI-DSSv4-2.2.4. 
│ │ │ +0011d110: 202d 2064 6973 6162 6c65 5f73 7472 6174   - disable_strat
│ │ │ +0011d120: 6567 790a 2020 2d20 6c6f 775f 636f 6d70  egy.  - low_comp
│ │ │ +0011d130: 6c65 7869 7479 0a20 202d 206c 6f77 5f64  lexity.  - low_d
│ │ │ +0011d140: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ +0011d150: 775f 7365 7665 7269 7479 0a20 202d 206e  w_severity.  - n
│ │ │ +0011d160: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ +0011d170: 2020 2d20 7061 636b 6167 655f 7869 6e65    - package_xine
│ │ │ +0011d180: 7464 5f72 656d 6f76 6564 0a0a 2d20 6e61  td_removed..- na
│ │ │ +0011d190: 6d65 3a20 2755 6e69 6e73 7461 6c6c 2078  me: 'Uninstall x
│ │ │ +0011d1a0: 696e 6574 6420 7061 636b 6167 6520 6966  inetd package if
│ │ │ +0011d1b0: 206e 6f74 2075 7365 6420 6279 206e 6574   not used by net
│ │ │ +0011d1c0: 776f 726b 2073 6572 7669 6365 733a 2045  work services: E
│ │ │ +0011d1d0: 6e73 7572 6520 7869 6e65 7464 2069 730a  nsure xinetd is.
│ │ │ +0011d1e0: 2020 2020 7265 6d6f 7665 6427 0a20 2061      removed'.  a
│ │ │ +0011d1f0: 6e73 6962 6c65 2e62 7569 6c74 696e 2e70  nsible.builtin.p
│ │ │ +0011d200: 6163 6b61 6765 3a0a 2020 2020 6e61 6d65  ackage:.    name
│ │ │ +0011d210: 3a20 7869 6e65 7464 0a20 2020 2073 7461  : xinetd.    sta
│ │ │ +0011d220: 7465 3a20 6162 7365 6e74 0a20 2077 6865  te: absent.  whe
│ │ │ +0011d230: 6e3a 2027 226b 6572 6e65 6c22 2069 6e20  n: '"kernel" in 
│ │ │ +0011d240: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +0011d250: 636b 6167 6573 270a 2020 7461 6773 3a0a  ckages'.  tags:.
│ │ │ +0011d260: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +0011d270: 434d 2d36 2861 290a 2020 2d20 4e49 5354  CM-6(a).  - NIST
│ │ │ +0011d280: 2d38 3030 2d35 332d 434d 2d37 2861 290a  -800-53-CM-7(a).
│ │ │ +0011d290: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +0011d2a0: 434d 2d37 2862 290a 2020 2d20 5043 492d  CM-7(b).  - PCI-
│ │ │ +0011d2b0: 4453 5376 342d 322e 320a 2020 2d20 5043  DSSv4-2.2.  - PC
│ │ │ +0011d2c0: 492d 4453 5376 342d 322e 322e 340a 2020  I-DSSv4-2.2.4.  
│ │ │ +0011d2d0: 2d20 6469 7361 626c 655f 7374 7261 7465  - disable_strate
│ │ │ +0011d2e0: 6779 0a20 202d 206c 6f77 5f63 6f6d 706c  gy.  - low_compl
│ │ │ +0011d2f0: 6578 6974 790a 2020 2d20 6c6f 775f 6469  exity.  - low_di
│ │ │ +0011d300: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ +0011d310: 5f73 6576 6572 6974 790a 2020 2d20 6e6f  _severity.  - no
│ │ │ +0011d320: 5f72 6562 6f6f 745f 6e65 6564 6564 0a20  _reboot_needed. 
│ │ │ +0011d330: 202d 2070 6163 6b61 6765 5f78 696e 6574   - package_xinet
│ │ │ +0011d340: 645f 7265 6d6f 7665 640a 3c2f 636f 6465  d_removed.
Remedi │ │ │ +0011d400: 6174 696f 6e20 5075 7070 6574 2073 6e69 ation Puppet sni │ │ │ +0011d410: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ +0011d420: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ +0011d450: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ +0011d4c0: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ +0011d4e0: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ +0011d510: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
Comple │ │ │ +0011d4a0: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ +0011d4b0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ +0011d4f0: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +0011d500: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
disable

.includ │ │ │ +0011d550: 6520 7265 6d6f 7665 5f78 696e 6574 640a e remove_xinetd. │ │ │ +0011d560: 0a63 6c61 7373 2072 656d 6f76 655f 7869 .class remove_xi │ │ │ +0011d570: 6e65 7464 207b 0a20 2070 6163 6b61 6765 netd {. package │ │ │ +0011d580: 207b 2027 7869 6e65 7464 273a 0a20 2020 { 'xinetd':. │ │ │ +0011d590: 2065 6e73 7572 6520 3d26 6774 3b20 2770 ensure => 'p │ │ │ +0011d5a0: 7572 6765 6427 2c0a 2020 7d0a 7d0a 3c2f urged',. }.}.

Remediatio │ │ │ -0011e8c0: 6e20 5075 7070 6574 2073 6e69 7070 6574 n Puppet snippet │ │ │ -0011e8d0: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Complexity │ │ │ -0011e960: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ -0011e980: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ -0011e990: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -0011e9a0: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ -0011e9b0: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ -0011e9d0: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:disable
<
│ │ │ -0011ea00: 636f 6465 3e0a 696e 636c 7564 6520 7265  code>.include re
│ │ │ -0011ea10: 6d6f 7665 5f79 7062 696e 640a 0a63 6c61  move_ypbind..cla
│ │ │ -0011ea20: 7373 2072 656d 6f76 655f 7970 6269 6e64  ss remove_ypbind
│ │ │ -0011ea30: 207b 0a20 2070 6163 6b61 6765 207b 2027   {.  package { '
│ │ │ -0011ea40: 7970 6269 6e64 273a 0a20 2020 2065 6e73  ypbind':.    ens
│ │ │ -0011ea50: 7572 6520 3d26 6774 3b20 2770 7572 6765  ure => 'purge
│ │ │ -0011ea60: 6427 2c0a 2020 7d0a 7d0a 3c2f 636f 6465  d',.  }.}.
Remedi │ │ │ -0011eb20: 6174 696f 6e20 416e 7369 626c 6520 736e ation Ansible sn │ │ │ -0011eb30: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ -0011ebe0: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ -0011ec00: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ -0011ec30: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ -0011ebc0: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ -0011ebd0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ -0011ebf0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ -0011ec10: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -0011ec20: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:disable
< │ │ │ -0011ec60: 7072 653e 3c63 6f64 653e 2d20 6e61 6d65 pre>- name │ │ │ -0011ec70: 3a20 2752 656d 6f76 6520 4e49 5320 436c : 'Remove NIS Cl │ │ │ -0011ec80: 6965 6e74 3a20 456e 7375 7265 2079 7062 ient: Ensure ypb │ │ │ -0011ec90: 696e 6420 6973 2072 656d 6f76 6564 270a ind is removed'. │ │ │ -0011eca0: 2020 616e 7369 626c 652e 6275 696c 7469 ansible.builti │ │ │ -0011ecb0: 6e2e 7061 636b 6167 653a 0a20 2020 206e n.package:. n │ │ │ -0011ecc0: 616d 653a 2079 7062 696e 640a 2020 2020 ame: ypbind. │ │ │ -0011ecd0: 7374 6174 653a 2061 6273 656e 740a 2020 state: absent. │ │ │ -0011ece0: 7461 6773 3a0a 2020 2d20 5043 492d 4453 tags:. - PCI-DS │ │ │ -0011ecf0: 5376 342d 322e 320a 2020 2d20 5043 492d Sv4-2.2. - PCI- │ │ │ -0011ed00: 4453 5376 342d 322e 322e 340a 2020 2d20 DSSv4-2.2.4. - │ │ │ -0011ed10: 6469 7361 626c 655f 7374 7261 7465 6779 disable_strategy │ │ │ -0011ed20: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578 . - low_complex │ │ │ -0011ed30: 6974 790a 2020 2d20 6c6f 775f 6469 7372 ity. - low_disr │ │ │ -0011ed40: 7570 7469 6f6e 0a20 202d 206e 6f5f 7265 uption. - no_re │ │ │ -0011ed50: 626f 6f74 5f6e 6565 6465 640a 2020 2d20 boot_needed. - │ │ │ -0011ed60: 7061 636b 6167 655f 7970 6269 6e64 5f72 package_ypbind_r │ │ │ -0011ed70: 656d 6f76 6564 0a20 202d 2075 6e6b 6e6f emoved. - unkno │ │ │ -0011ed80: 776e 5f73 6576 6572 6974 790a 3c2f 636f wn_severity.
< │ │ │ +0011e950: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ +0011e960: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ +0011e980: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ +0011e990: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ +0011e9b0: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ +0011e9d0: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:disable
│ │ │ +0011ea00: 3c63 6f64 653e 2d20 6e61 6d65 3a20 2752  - name: 'R
│ │ │ +0011ea10: 656d 6f76 6520 4e49 5320 436c 6965 6e74  emove NIS Client
│ │ │ +0011ea20: 3a20 456e 7375 7265 2079 7062 696e 6420  : Ensure ypbind 
│ │ │ +0011ea30: 6973 2072 656d 6f76 6564 270a 2020 616e  is removed'.  an
│ │ │ +0011ea40: 7369 626c 652e 6275 696c 7469 6e2e 7061  sible.builtin.pa
│ │ │ +0011ea50: 636b 6167 653a 0a20 2020 206e 616d 653a  ckage:.    name:
│ │ │ +0011ea60: 2079 7062 696e 640a 2020 2020 7374 6174   ypbind.    stat
│ │ │ +0011ea70: 653a 2061 6273 656e 740a 2020 7461 6773  e: absent.  tags
│ │ │ +0011ea80: 3a0a 2020 2d20 5043 492d 4453 5376 342d  :.  - PCI-DSSv4-
│ │ │ +0011ea90: 322e 320a 2020 2d20 5043 492d 4453 5376  2.2.  - PCI-DSSv
│ │ │ +0011eaa0: 342d 322e 322e 340a 2020 2d20 6469 7361  4-2.2.4.  - disa
│ │ │ +0011eab0: 626c 655f 7374 7261 7465 6779 0a20 202d  ble_strategy.  -
│ │ │ +0011eac0: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ +0011ead0: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ +0011eae0: 6f6e 0a20 202d 206e 6f5f 7265 626f 6f74  on.  - no_reboot
│ │ │ +0011eaf0: 5f6e 6565 6465 640a 2020 2d20 7061 636b  _needed.  - pack
│ │ │ +0011eb00: 6167 655f 7970 6269 6e64 5f72 656d 6f76  age_ypbind_remov
│ │ │ +0011eb10: 6564 0a20 202d 2075 6e6b 6e6f 776e 5f73  ed.  - unknown_s
│ │ │ +0011eb20: 6576 6572 6974 790a 3c2f 636f 6465 3e3c  everity.<
│ │ │ +0011eb30: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>
Remediat │ │ │ +0011ebe0: 696f 6e20 5075 7070 6574 2073 6e69 7070 ion Puppet snipp │ │ │ +0011ebf0: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ +0011ec70: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ +0011ec80: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +0011ec90: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ +0011ecd0: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +0011ece0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ +0011ed00: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ +0011ed10: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
.include 
│ │ │ +0011ed30: 7265 6d6f 7665 5f79 7062 696e 640a 0a63  remove_ypbind..c
│ │ │ +0011ed40: 6c61 7373 2072 656d 6f76 655f 7970 6269  lass remove_ypbi
│ │ │ +0011ed50: 6e64 207b 0a20 2070 6163 6b61 6765 207b  nd {.  package {
│ │ │ +0011ed60: 2027 7970 6269 6e64 273a 0a20 2020 2065   'ypbind':.    e
│ │ │ +0011ed70: 6e73 7572 6520 3d26 6774 3b20 2770 7572  nsure => 'pur
│ │ │ +0011ed80: 6765 6427 2c0a 2020 7d0a 7d0a 3c2f 636f  ged',.  }.}.
< │ │ │ 0011eda0: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ 0011edb0: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ 0011edc0: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ 0011edd0: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ 0011ede0: 6433 3239 2220 7461 6269 6e64 6578 3d22 d329" tabindex=" │ │ │ 0011edf0: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ @@ -73722,93 +73722,93 @@ │ │ │ 0011ff90: 6174 612d 7461 7267 6574 3d22 2369 6433 ata-target="#id3 │ │ │ 0011ffa0: 3331 2220 7461 6269 6e64 6578 3d22 3022 31" tabindex="0" │ │ │ 0011ffb0: 2072 6f6c 653d 2262 7574 746f 6e22 2061 role="button" a │ │ │ 0011ffc0: 7269 612d 6578 7061 6e64 6564 3d22 6661 ria-expanded="fa │ │ │ 0011ffd0: 6c73 6522 2074 6974 6c65 3d22 4163 7469 lse" title="Acti │ │ │ 0011ffe0: 7661 7465 2074 6f20 7265 7665 616c 2220 vate to reveal" │ │ │ 0011fff0: 6872 6566 3d22 2321 223e 5265 6d65 6469 href="#!">Remedi │ │ │ -00120000: 6174 696f 6e20 5075 7070 6574 2073 6e69 ation Puppet sni │ │ │ -00120010: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -00120020: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -00120050: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ -001200c0: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ -001200e0: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ -00120110: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
Comple │ │ │ -001200a0: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ -001200b0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ -001200f0: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ -00120100: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
disable

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

Re │ │ │ -00120260: 6d65 6469 6174 696f 6e20 416e 7369 626c mediation Ansibl │ │ │ -00120270: 6520 736e 6970 7065 7420 e287 b23c 2f61 e snippet ...
< │ │ │ -00120310: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -00120320: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ -00120370: 3c74 723e 3c74 683e 5374 7261 7465 6779
- 
│ │ │ -001203b0: 6e61 6d65 3a20 2752 656d 6f76 6520 7465  name: 'Remove te
│ │ │ -001203c0: 6c6e 6574 2043 6c69 656e 7473 3a20 456e  lnet Clients: En
│ │ │ -001203d0: 7375 7265 2074 656c 6e65 7420 6973 2072  sure telnet is r
│ │ │ -001203e0: 656d 6f76 6564 270a 2020 616e 7369 626c  emoved'.  ansibl
│ │ │ -001203f0: 652e 6275 696c 7469 6e2e 7061 636b 6167  e.builtin.packag
│ │ │ -00120400: 653a 0a20 2020 206e 616d 653a 2074 656c  e:.    name: tel
│ │ │ -00120410: 6e65 740a 2020 2020 7374 6174 653a 2061  net.    state: a
│ │ │ -00120420: 6273 656e 740a 2020 7461 6773 3a0a 2020  bsent.  tags:.  
│ │ │ -00120430: 2d20 4e49 5354 2d38 3030 2d31 3731 2d33  - NIST-800-171-3
│ │ │ -00120440: 2e31 2e31 330a 2020 2d20 5043 492d 4453  .1.13.  - PCI-DS
│ │ │ -00120450: 5376 342d 322e 320a 2020 2d20 5043 492d  Sv4-2.2.  - PCI-
│ │ │ -00120460: 4453 5376 342d 322e 322e 340a 2020 2d20  DSSv4-2.2.4.  - 
│ │ │ -00120470: 6469 7361 626c 655f 7374 7261 7465 6779  disable_strategy
│ │ │ -00120480: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ -00120490: 6974 790a 2020 2d20 6c6f 775f 6469 7372  ity.  - low_disr
│ │ │ -001204a0: 7570 7469 6f6e 0a20 202d 206c 6f77 5f73  uption.  - low_s
│ │ │ -001204b0: 6576 6572 6974 790a 2020 2d20 6e6f 5f72  everity.  - no_r
│ │ │ -001204c0: 6562 6f6f 745f 6e65 6564 6564 0a20 202d  eboot_needed.  -
│ │ │ -001204d0: 2070 6163 6b61 6765 5f74 656c 6e65 745f   package_telnet_
│ │ │ -001204e0: 7265 6d6f 7665 640a 3c2f 636f 6465 3e3c  removed.<
│ │ │ +00120000: 6174 696f 6e20 416e 7369 626c 6520 736e  ation Ansible sn
│ │ │ +00120010: 6970 7065 7420 e287 b23c 2f61 3e3c 6272  ippet ...
C │ │ │ -00120300: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -00120330: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ -00120340: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -00120380: 3a3c 2f74 683e 3c74 643e 6469 7361 626c :disabl │ │ │ -00120390: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
│ │ │ +001200c0: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ +001200e0: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ +00120110: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ +001200a0: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ +001200b0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ +001200d0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ +001200f0: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ +00120100: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:disable
< │ │ │ +00120140: 7072 653e 3c63 6f64 653e 2d20 6e61 6d65 pre>- name │ │ │ +00120150: 3a20 2752 656d 6f76 6520 7465 6c6e 6574 : 'Remove telnet │ │ │ +00120160: 2043 6c69 656e 7473 3a20 456e 7375 7265 Clients: Ensure │ │ │ +00120170: 2074 656c 6e65 7420 6973 2072 656d 6f76 telnet is remov │ │ │ +00120180: 6564 270a 2020 616e 7369 626c 652e 6275 ed'. ansible.bu │ │ │ +00120190: 696c 7469 6e2e 7061 636b 6167 653a 0a20 iltin.package:. │ │ │ +001201a0: 2020 206e 616d 653a 2074 656c 6e65 740a name: telnet. │ │ │ +001201b0: 2020 2020 7374 6174 653a 2061 6273 656e state: absen │ │ │ +001201c0: 740a 2020 7461 6773 3a0a 2020 2d20 4e49 t. tags:. - NI │ │ │ +001201d0: 5354 2d38 3030 2d31 3731 2d33 2e31 2e31 ST-800-171-3.1.1 │ │ │ +001201e0: 330a 2020 2d20 5043 492d 4453 5376 342d 3. - PCI-DSSv4- │ │ │ +001201f0: 322e 320a 2020 2d20 5043 492d 4453 5376 2.2. - PCI-DSSv │ │ │ +00120200: 342d 322e 322e 340a 2020 2d20 6469 7361 4-2.2.4. - disa │ │ │ +00120210: 626c 655f 7374 7261 7465 6779 0a20 202d ble_strategy. - │ │ │ +00120220: 206c 6f77 5f63 6f6d 706c 6578 6974 790a low_complexity. │ │ │ +00120230: 2020 2d20 6c6f 775f 6469 7372 7570 7469 - low_disrupti │ │ │ +00120240: 6f6e 0a20 202d 206c 6f77 5f73 6576 6572 on. - low_sever │ │ │ +00120250: 6974 790a 2020 2d20 6e6f 5f72 6562 6f6f ity. - no_reboo │ │ │ +00120260: 745f 6e65 6564 6564 0a20 202d 2070 6163 t_needed. - pac │ │ │ +00120270: 6b61 6765 5f74 656c 6e65 745f 7265 6d6f kage_telnet_remo │ │ │ +00120280: 7665 640a 3c2f 636f 6465 3e3c 2f70 7265 ved.
Remediation │ │ │ +00120340: 5075 7070 6574 2073 6e69 7070 6574 20e2 Puppet snippet . │ │ │ +00120350: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ +001203d0: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +001203f0: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ +00120440: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ +00120470: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ +001203e0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +00120400: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ +00120450: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ +00120460: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
.include remo
│ │ │ +00120490: 7665 5f74 656c 6e65 740a 0a63 6c61 7373  ve_telnet..class
│ │ │ +001204a0: 2072 656d 6f76 655f 7465 6c6e 6574 207b   remove_telnet {
│ │ │ +001204b0: 0a20 2070 6163 6b61 6765 207b 2027 7465  .  package { 'te
│ │ │ +001204c0: 6c6e 6574 273a 0a20 2020 2065 6e73 7572  lnet':.    ensur
│ │ │ +001204d0: 6520 3d26 6774 3b20 2770 7572 6765 6427  e => 'purged'
│ │ │ +001204e0: 2c0a 2020 7d0a 7d0a 3c2f 636f 6465 3e3c  ,.  }.}.<
│ │ │  001204f0: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>
Remedia │ │ │ -00120ff0: 7469 6f6e 204f 5342 7569 6c64 2042 6c75 tion OSBuild Blu │ │ │ -00121000: 6570 7269 6e74 2073 6e69 7070 6574 20e2 eprint snippet . │ │ │ -00121010: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
<
│ │ │ -00121050: 636f 6465 3e0a 5b63 7573 746f 6d69 7a61  code>.[customiza
│ │ │ -00121060: 7469 6f6e 732e 7365 7276 6963 6573 5d0a  tions.services].
│ │ │ -00121070: 6d61 736b 6564 203d 205b 2272 7379 6e63  masked = ["rsync
│ │ │ -00121080: 6422 5d0a 3c2f 636f 6465 3e3c 2f70 7265  d"].
Remediation │ │ │ -00121140: 5075 7070 6574 2073 6e69 7070 6574 20e2 Puppet snippet . │ │ │ -00121150: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ -001211d0: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -001211f0: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ -00121240: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 < │ │ │ -00121270: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
include disabl
│ │ │ -00121290: 655f 7273 796e 6364 0a0a 636c 6173 7320  e_rsyncd..class 
│ │ │ -001212a0: 6469 7361 626c 655f 7273 796e 6364 207b  disable_rsyncd {
│ │ │ -001212b0: 0a20 2073 6572 7669 6365 207b 2772 7379  .  service {'rsy
│ │ │ -001212c0: 6e63 6427 3a0a 2020 2020 656e 6162 6c65  ncd':.    enable
│ │ │ -001212d0: 203d 2667 743b 2066 616c 7365 2c0a 2020   => false,.  
│ │ │ -001212e0: 2020 656e 7375 7265 203d 2667 743b 2027    ensure => '
│ │ │ -001212f0: 7374 6f70 7065 6427 2c0a 2020 7d0a 7d0a  stopped',.  }.}.
│ │ │ -00121300: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ -001213b0: 5265 6d65 6469 6174 696f 6e20 416e 7369 Remediation Ansi │ │ │ -001213c0: 626c 6520 736e 6970 7065 7420 e287 b23c ble snippet ...< │ │ │ -001213d0: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
Complexity:< │ │ │ -001211e0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ -00121200: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ -00121250: 6174 6567 793a 3c2f 7468 3e3c 7464 3e65 ategy:e │ │ │ -00121260: 6e61 626c 653c 2f74 643e 3c2f 7472 3e3c nable
< │ │ │ -001214a0: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -001214b0: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

│ │ │ -00121500: 2d20 6e61 6d65 3a20 4761 7468 6572 2074  - name: Gather t
│ │ │ -00121510: 6865 2070 6163 6b61 6765 2066 6163 7473  he package facts
│ │ │ -00121520: 0a20 2070 6163 6b61 6765 5f66 6163 7473  .  package_facts
│ │ │ -00121530: 3a0a 2020 2020 6d61 6e61 6765 723a 2061  :.    manager: a
│ │ │ -00121540: 7574 6f0a 2020 7461 6773 3a0a 2020 2d20  uto.  tags:.  - 
│ │ │ -00121550: 5043 492d 4453 5376 342d 322e 320a 2020  PCI-DSSv4-2.2.  
│ │ │ -00121560: 2d20 5043 492d 4453 5376 342d 322e 322e  - PCI-DSSv4-2.2.
│ │ │ -00121570: 340a 2020 2d20 6469 7361 626c 655f 7374  4.  - disable_st
│ │ │ -00121580: 7261 7465 6779 0a20 202d 206c 6f77 5f63  rategy.  - low_c
│ │ │ -00121590: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f  omplexity.  - lo
│ │ │ -001215a0: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ -001215b0: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ -001215c0: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ -001215d0: 6565 6465 640a 2020 2d20 7365 7276 6963  eeded.  - servic
│ │ │ -001215e0: 655f 7273 796e 6364 5f64 6973 6162 6c65  e_rsyncd_disable
│ │ │ -001215f0: 640a 0a2d 206e 616d 653a 2045 6e73 7572  d..- name: Ensur
│ │ │ -00121600: 6520 7273 796e 6364 2073 6572 7669 6365  e rsyncd service
│ │ │ -00121610: 2069 7320 6469 7361 626c 6564 202d 2044   is disabled - D
│ │ │ -00121620: 6973 6162 6c65 2073 6572 7669 6365 2072  isable service r
│ │ │ -00121630: 7379 6e63 640a 2020 626c 6f63 6b3a 0a0a  syncd.  block:..
│ │ │ -00121640: 2020 2d20 6e61 6d65 3a20 456e 7375 7265    - name: Ensure
│ │ │ -00121650: 2072 7379 6e63 6420 7365 7276 6963 6520   rsyncd service 
│ │ │ -00121660: 6973 2064 6973 6162 6c65 6420 2d20 436f  is disabled - Co
│ │ │ -00121670: 6c6c 6563 7420 7379 7374 656d 6420 5365  llect systemd Se
│ │ │ -00121680: 7276 6963 6573 2050 7265 7365 6e74 2069  rvices Present i
│ │ │ -00121690: 6e0a 2020 2020 2020 7468 6520 5379 7374  n.      the Syst
│ │ │ -001216a0: 656d 0a20 2020 2061 6e73 6962 6c65 2e62  em.    ansible.b
│ │ │ -001216b0: 7569 6c74 696e 2e63 6f6d 6d61 6e64 3a20  uiltin.command: 
│ │ │ -001216c0: 7379 7374 656d 6374 6c20 2d71 206c 6973  systemctl -q lis
│ │ │ -001216d0: 742d 756e 6974 2d66 696c 6573 202d 2d74  t-unit-files --t
│ │ │ -001216e0: 7970 6520 7365 7276 6963 650a 2020 2020  ype service.    
│ │ │ -001216f0: 7265 6769 7374 6572 3a20 7365 7276 6963  register: servic
│ │ │ -00121700: 655f 6578 6973 7473 0a20 2020 2063 6861  e_exists.    cha
│ │ │ -00121710: 6e67 6564 5f77 6865 6e3a 2066 616c 7365  nged_when: false
│ │ │ -00121720: 0a20 2020 2066 6169 6c65 645f 7768 656e  .    failed_when
│ │ │ -00121730: 3a20 7365 7276 6963 655f 6578 6973 7473  : service_exists
│ │ │ -00121740: 2e72 6320 6e6f 7420 696e 205b 302c 2031  .rc not in [0, 1
│ │ │ -00121750: 5d0a 2020 2020 6368 6563 6b5f 6d6f 6465  ].    check_mode
│ │ │ -00121760: 3a20 6661 6c73 650a 0a20 202d 206e 616d  : false..  - nam
│ │ │ -00121770: 653a 2045 6e73 7572 6520 7273 796e 6364  e: Ensure rsyncd
│ │ │ -00121780: 2073 6572 7669 6365 2069 7320 6469 7361   service is disa
│ │ │ -00121790: 626c 6564 202d 2045 6e73 7572 6520 7273  bled - Ensure rs
│ │ │ -001217a0: 796e 6364 2e73 6572 7669 6365 2069 7320  yncd.service is 
│ │ │ -001217b0: 4d61 736b 6564 0a20 2020 2061 6e73 6962  Masked.    ansib
│ │ │ -001217c0: 6c65 2e62 7569 6c74 696e 2e73 7973 7465  le.builtin.syste
│ │ │ -001217d0: 6d64 3a0a 2020 2020 2020 6e61 6d65 3a20  md:.      name: 
│ │ │ -001217e0: 7273 796e 6364 2e73 6572 7669 6365 0a20  rsyncd.service. 
│ │ │ -001217f0: 2020 2020 2073 7461 7465 3a20 7374 6f70       state: stop
│ │ │ -00121800: 7065 640a 2020 2020 2020 656e 6162 6c65  ped.      enable
│ │ │ -00121810: 643a 2066 616c 7365 0a20 2020 2020 206d  d: false.      m
│ │ │ -00121820: 6173 6b65 643a 2074 7275 650a 2020 2020  asked: true.    
│ │ │ -00121830: 7768 656e 3a20 7365 7276 6963 655f 6578  when: service_ex
│ │ │ -00121840: 6973 7473 2e73 7464 6f75 745f 6c69 6e65  ists.stdout_line
│ │ │ -00121850: 7320 6973 2073 6561 7263 6828 2272 7379  s is search("rsy
│ │ │ -00121860: 6e63 642e 7365 7276 6963 6522 2c20 6d75  ncd.service", mu
│ │ │ -00121870: 6c74 696c 696e 653d 5472 7565 290a 0a20  ltiline=True).. 
│ │ │ -00121880: 202d 206e 616d 653a 2055 6e69 7420 536f   - name: Unit So
│ │ │ -00121890: 636b 6574 2045 7869 7374 7320 2d20 7273  cket Exists - rs
│ │ │ -001218a0: 796e 6364 2e73 6f63 6b65 740a 2020 2020  yncd.socket.    
│ │ │ -001218b0: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ -001218c0: 636f 6d6d 616e 643a 2073 7973 7465 6d63  command: systemc
│ │ │ -001218d0: 746c 202d 7120 6c69 7374 2d75 6e69 742d  tl -q list-unit-
│ │ │ -001218e0: 6669 6c65 7320 7273 796e 6364 2e73 6f63  files rsyncd.soc
│ │ │ -001218f0: 6b65 740a 2020 2020 7265 6769 7374 6572  ket.    register
│ │ │ -00121900: 3a20 736f 636b 6574 5f66 696c 655f 6578  : socket_file_ex
│ │ │ -00121910: 6973 7473 0a20 2020 2063 6861 6e67 6564  ists.    changed
│ │ │ -00121920: 5f77 6865 6e3a 2066 616c 7365 0a20 2020  _when: false.   
│ │ │ -00121930: 2066 6169 6c65 645f 7768 656e 3a20 736f   failed_when: so
│ │ │ -00121940: 636b 6574 5f66 696c 655f 6578 6973 7473  cket_file_exists
│ │ │ -00121950: 2e72 6320 6e6f 7420 696e 205b 302c 2031  .rc not in [0, 1
│ │ │ -00121960: 5d0a 2020 2020 6368 6563 6b5f 6d6f 6465  ].    check_mode
│ │ │ -00121970: 3a20 6661 6c73 650a 0a20 202d 206e 616d  : false..  - nam
│ │ │ -00121980: 653a 2045 6e73 7572 6520 7273 796e 6364  e: Ensure rsyncd
│ │ │ -00121990: 2073 6572 7669 6365 2069 7320 6469 7361   service is disa
│ │ │ -001219a0: 626c 6564 202d 2044 6973 6162 6c65 2053  bled - Disable S
│ │ │ -001219b0: 6f63 6b65 7420 7273 796e 6364 0a20 2020  ocket rsyncd.   
│ │ │ -001219c0: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ -001219d0: 2e73 7973 7465 6d64 3a0a 2020 2020 2020  .systemd:.      
│ │ │ -001219e0: 6e61 6d65 3a20 7273 796e 6364 2e73 6f63  name: rsyncd.soc
│ │ │ -001219f0: 6b65 740a 2020 2020 2020 656e 6162 6c65  ket.      enable
│ │ │ -00121a00: 643a 2066 616c 7365 0a20 2020 2020 2073  d: false.      s
│ │ │ -00121a10: 7461 7465 3a20 7374 6f70 7065 640a 2020  tate: stopped.  
│ │ │ -00121a20: 2020 2020 6d61 736b 6564 3a20 7472 7565      masked: true
│ │ │ -00121a30: 0a20 2020 2077 6865 6e3a 2073 6f63 6b65  .    when: socke
│ │ │ -00121a40: 745f 6669 6c65 5f65 7869 7374 732e 7374  t_file_exists.st
│ │ │ -00121a50: 646f 7574 5f6c 696e 6573 2069 7320 7365  dout_lines is se
│ │ │ -00121a60: 6172 6368 2822 7273 796e 6364 2e73 6f63  arch("rsyncd.soc
│ │ │ -00121a70: 6b65 7422 2c20 6d75 6c74 696c 696e 653d  ket", multiline=
│ │ │ -00121a80: 5472 7565 290a 2020 7461 6773 3a0a 2020  True).  tags:.  
│ │ │ -00121a90: 2d20 5043 492d 4453 5376 342d 322e 320a  - PCI-DSSv4-2.2.
│ │ │ -00121aa0: 2020 2d20 5043 492d 4453 5376 342d 322e    - PCI-DSSv4-2.
│ │ │ -00121ab0: 322e 340a 2020 2d20 6469 7361 626c 655f  2.4.  - disable_
│ │ │ -00121ac0: 7374 7261 7465 6779 0a20 202d 206c 6f77  strategy.  - low
│ │ │ -00121ad0: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ -00121ae0: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ -00121af0: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ -00121b00: 7479 0a20 202d 206e 6f5f 7265 626f 6f74  ty.  - no_reboot
│ │ │ -00121b10: 5f6e 6565 6465 640a 2020 2d20 7365 7276  _needed.  - serv
│ │ │ -00121b20: 6963 655f 7273 796e 6364 5f64 6973 6162  ice_rsyncd_disab
│ │ │ -00121b30: 6c65 640a 2020 2d20 7370 6563 6961 6c5f  led.  - special_
│ │ │ -00121b40: 7365 7276 6963 655f 626c 6f63 6b0a 2020  service_block.  
│ │ │ -00121b50: 7768 656e 3a20 2722 6b65 726e 656c 2220  when: '"kernel" 
│ │ │ -00121b60: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -00121b70: 2e70 6163 6b61 6765 7327 0a3c 2f63 6f64  .packages'.
│ │ │ +00121010: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ +00121040: 3c74 6162 6c65 2063 6c61 7373 3d22 7461
Complexity:low
Disrup │ │ │ -00121480: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -00121490: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -001214d0: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ -001214e0: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
< │ │ │ +001210b0: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ +001210d0: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ +00121100: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
Comple │ │ │ +00121090: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ +001210a0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ +001210e0: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +001210f0: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
disable

- name: │ │ │ +00121140: 2047 6174 6865 7220 7468 6520 7061 636b Gather the pack │ │ │ +00121150: 6167 6520 6661 6374 730a 2020 7061 636b age facts. pack │ │ │ +00121160: 6167 655f 6661 6374 733a 0a20 2020 206d age_facts:. m │ │ │ +00121170: 616e 6167 6572 3a20 6175 746f 0a20 2074 anager: auto. t │ │ │ +00121180: 6167 733a 0a20 202d 2050 4349 2d44 5353 ags:. - PCI-DSS │ │ │ +00121190: 7634 2d32 2e32 0a20 202d 2050 4349 2d44 v4-2.2. - PCI-D │ │ │ +001211a0: 5353 7634 2d32 2e32 2e34 0a20 202d 2064 SSv4-2.2.4. - d │ │ │ +001211b0: 6973 6162 6c65 5f73 7472 6174 6567 790a isable_strategy. │ │ │ +001211c0: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869 - low_complexi │ │ │ +001211d0: 7479 0a20 202d 206c 6f77 5f64 6973 7275 ty. - low_disru │ │ │ +001211e0: 7074 696f 6e0a 2020 2d20 6d65 6469 756d ption. - medium │ │ │ +001211f0: 5f73 6576 6572 6974 790a 2020 2d20 6e6f _severity. - no │ │ │ +00121200: 5f72 6562 6f6f 745f 6e65 6564 6564 0a20 _reboot_needed. │ │ │ +00121210: 202d 2073 6572 7669 6365 5f72 7379 6e63 - service_rsync │ │ │ +00121220: 645f 6469 7361 626c 6564 0a0a 2d20 6e61 d_disabled..- na │ │ │ +00121230: 6d65 3a20 456e 7375 7265 2072 7379 6e63 me: Ensure rsync │ │ │ +00121240: 6420 7365 7276 6963 6520 6973 2064 6973 d service is dis │ │ │ +00121250: 6162 6c65 6420 2d20 4469 7361 626c 6520 abled - Disable │ │ │ +00121260: 7365 7276 6963 6520 7273 796e 6364 0a20 service rsyncd. │ │ │ +00121270: 2062 6c6f 636b 3a0a 0a20 202d 206e 616d block:.. - nam │ │ │ +00121280: 653a 2045 6e73 7572 6520 7273 796e 6364 e: Ensure rsyncd │ │ │ +00121290: 2073 6572 7669 6365 2069 7320 6469 7361 service is disa │ │ │ +001212a0: 626c 6564 202d 2043 6f6c 6c65 6374 2073 bled - Collect s │ │ │ +001212b0: 7973 7465 6d64 2053 6572 7669 6365 7320 ystemd Services │ │ │ +001212c0: 5072 6573 656e 7420 696e 0a20 2020 2020 Present in. │ │ │ +001212d0: 2074 6865 2053 7973 7465 6d0a 2020 2020 the System. │ │ │ +001212e0: 616e 7369 626c 652e 6275 696c 7469 6e2e ansible.builtin. │ │ │ +001212f0: 636f 6d6d 616e 643a 2073 7973 7465 6d63 command: systemc │ │ │ +00121300: 746c 202d 7120 6c69 7374 2d75 6e69 742d tl -q list-unit- │ │ │ +00121310: 6669 6c65 7320 2d2d 7479 7065 2073 6572 files --type ser │ │ │ +00121320: 7669 6365 0a20 2020 2072 6567 6973 7465 vice. registe │ │ │ +00121330: 723a 2073 6572 7669 6365 5f65 7869 7374 r: service_exist │ │ │ +00121340: 730a 2020 2020 6368 616e 6765 645f 7768 s. changed_wh │ │ │ +00121350: 656e 3a20 6661 6c73 650a 2020 2020 6661 en: false. fa │ │ │ +00121360: 696c 6564 5f77 6865 6e3a 2073 6572 7669 iled_when: servi │ │ │ +00121370: 6365 5f65 7869 7374 732e 7263 206e 6f74 ce_exists.rc not │ │ │ +00121380: 2069 6e20 5b30 2c20 315d 0a20 2020 2063 in [0, 1]. c │ │ │ +00121390: 6865 636b 5f6d 6f64 653a 2066 616c 7365 heck_mode: false │ │ │ +001213a0: 0a0a 2020 2d20 6e61 6d65 3a20 456e 7375 .. - name: Ensu │ │ │ +001213b0: 7265 2072 7379 6e63 6420 7365 7276 6963 re rsyncd servic │ │ │ +001213c0: 6520 6973 2064 6973 6162 6c65 6420 2d20 e is disabled - │ │ │ +001213d0: 456e 7375 7265 2072 7379 6e63 642e 7365 Ensure rsyncd.se │ │ │ +001213e0: 7276 6963 6520 6973 204d 6173 6b65 640a rvice is Masked. │ │ │ +001213f0: 2020 2020 616e 7369 626c 652e 6275 696c ansible.buil │ │ │ +00121400: 7469 6e2e 7379 7374 656d 643a 0a20 2020 tin.systemd:. │ │ │ +00121410: 2020 206e 616d 653a 2072 7379 6e63 642e name: rsyncd. │ │ │ +00121420: 7365 7276 6963 650a 2020 2020 2020 7374 service. st │ │ │ +00121430: 6174 653a 2073 746f 7070 6564 0a20 2020 ate: stopped. │ │ │ +00121440: 2020 2065 6e61 626c 6564 3a20 6661 6c73 enabled: fals │ │ │ +00121450: 650a 2020 2020 2020 6d61 736b 6564 3a20 e. masked: │ │ │ +00121460: 7472 7565 0a20 2020 2077 6865 6e3a 2073 true. when: s │ │ │ +00121470: 6572 7669 6365 5f65 7869 7374 732e 7374 ervice_exists.st │ │ │ +00121480: 646f 7574 5f6c 696e 6573 2069 7320 7365 dout_lines is se │ │ │ +00121490: 6172 6368 2822 7273 796e 6364 2e73 6572 arch("rsyncd.ser │ │ │ +001214a0: 7669 6365 222c 206d 756c 7469 6c69 6e65 vice", multiline │ │ │ +001214b0: 3d54 7275 6529 0a0a 2020 2d20 6e61 6d65 =True).. - name │ │ │ +001214c0: 3a20 556e 6974 2053 6f63 6b65 7420 4578 : Unit Socket Ex │ │ │ +001214d0: 6973 7473 202d 2072 7379 6e63 642e 736f ists - rsyncd.so │ │ │ +001214e0: 636b 6574 0a20 2020 2061 6e73 6962 6c65 cket. ansible │ │ │ +001214f0: 2e62 7569 6c74 696e 2e63 6f6d 6d61 6e64 .builtin.command │ │ │ +00121500: 3a20 7379 7374 656d 6374 6c20 2d71 206c : systemctl -q l │ │ │ +00121510: 6973 742d 756e 6974 2d66 696c 6573 2072 ist-unit-files r │ │ │ +00121520: 7379 6e63 642e 736f 636b 6574 0a20 2020 syncd.socket. │ │ │ +00121530: 2072 6567 6973 7465 723a 2073 6f63 6b65 register: socke │ │ │ +00121540: 745f 6669 6c65 5f65 7869 7374 730a 2020 t_file_exists. │ │ │ +00121550: 2020 6368 616e 6765 645f 7768 656e 3a20 changed_when: │ │ │ +00121560: 6661 6c73 650a 2020 2020 6661 696c 6564 false. failed │ │ │ +00121570: 5f77 6865 6e3a 2073 6f63 6b65 745f 6669 _when: socket_fi │ │ │ +00121580: 6c65 5f65 7869 7374 732e 7263 206e 6f74 le_exists.rc not │ │ │ +00121590: 2069 6e20 5b30 2c20 315d 0a20 2020 2063 in [0, 1]. c │ │ │ +001215a0: 6865 636b 5f6d 6f64 653a 2066 616c 7365 heck_mode: false │ │ │ +001215b0: 0a0a 2020 2d20 6e61 6d65 3a20 456e 7375 .. - name: Ensu │ │ │ +001215c0: 7265 2072 7379 6e63 6420 7365 7276 6963 re rsyncd servic │ │ │ +001215d0: 6520 6973 2064 6973 6162 6c65 6420 2d20 e is disabled - │ │ │ +001215e0: 4469 7361 626c 6520 536f 636b 6574 2072 Disable Socket r │ │ │ +001215f0: 7379 6e63 640a 2020 2020 616e 7369 626c syncd. ansibl │ │ │ +00121600: 652e 6275 696c 7469 6e2e 7379 7374 656d e.builtin.system │ │ │ +00121610: 643a 0a20 2020 2020 206e 616d 653a 2072 d:. name: r │ │ │ +00121620: 7379 6e63 642e 736f 636b 6574 0a20 2020 syncd.socket. │ │ │ +00121630: 2020 2065 6e61 626c 6564 3a20 6661 6c73 enabled: fals │ │ │ +00121640: 650a 2020 2020 2020 7374 6174 653a 2073 e. state: s │ │ │ +00121650: 746f 7070 6564 0a20 2020 2020 206d 6173 topped. mas │ │ │ +00121660: 6b65 643a 2074 7275 650a 2020 2020 7768 ked: true. wh │ │ │ +00121670: 656e 3a20 736f 636b 6574 5f66 696c 655f en: socket_file_ │ │ │ +00121680: 6578 6973 7473 2e73 7464 6f75 745f 6c69 exists.stdout_li │ │ │ +00121690: 6e65 7320 6973 2073 6561 7263 6828 2272 nes is search("r │ │ │ +001216a0: 7379 6e63 642e 736f 636b 6574 222c 206d syncd.socket", m │ │ │ +001216b0: 756c 7469 6c69 6e65 3d54 7275 6529 0a20 ultiline=True). │ │ │ +001216c0: 2074 6167 733a 0a20 202d 2050 4349 2d44 tags:. - PCI-D │ │ │ +001216d0: 5353 7634 2d32 2e32 0a20 202d 2050 4349 SSv4-2.2. - PCI │ │ │ +001216e0: 2d44 5353 7634 2d32 2e32 2e34 0a20 202d -DSSv4-2.2.4. - │ │ │ +001216f0: 2064 6973 6162 6c65 5f73 7472 6174 6567 disable_strateg │ │ │ +00121700: 790a 2020 2d20 6c6f 775f 636f 6d70 6c65 y. - low_comple │ │ │ +00121710: 7869 7479 0a20 202d 206c 6f77 5f64 6973 xity. - low_dis │ │ │ +00121720: 7275 7074 696f 6e0a 2020 2d20 6d65 6469 ruption. - medi │ │ │ +00121730: 756d 5f73 6576 6572 6974 790a 2020 2d20 um_severity. - │ │ │ +00121740: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564 no_reboot_needed │ │ │ +00121750: 0a20 202d 2073 6572 7669 6365 5f72 7379 . - service_rsy │ │ │ +00121760: 6e63 645f 6469 7361 626c 6564 0a20 202d ncd_disabled. - │ │ │ +00121770: 2073 7065 6369 616c 5f73 6572 7669 6365 special_service │ │ │ +00121780: 5f62 6c6f 636b 0a20 2077 6865 6e3a 2027 _block. when: ' │ │ │ +00121790: 226b 6572 6e65 6c22 2069 6e20 616e 7369 "kernel" in ansi │ │ │ +001217a0: 626c 655f 6661 6374 732e 7061 636b 6167 ble_facts.packag │ │ │ +001217b0: 6573 270a 3c2f 636f 6465 3e3c 2f70 7265 es'.

Remediation │ │ │ +00121870: 5075 7070 6574 2073 6e69 7070 6574 20e2 Puppet snippet . │ │ │ +00121880: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ +00121900: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +00121920: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ +00121970: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 < │ │ │ +001219a0: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
include disabl
│ │ │ +001219c0: 655f 7273 796e 6364 0a0a 636c 6173 7320  e_rsyncd..class 
│ │ │ +001219d0: 6469 7361 626c 655f 7273 796e 6364 207b  disable_rsyncd {
│ │ │ +001219e0: 0a20 2073 6572 7669 6365 207b 2772 7379  .  service {'rsy
│ │ │ +001219f0: 6e63 6427 3a0a 2020 2020 656e 6162 6c65  ncd':.    enable
│ │ │ +00121a00: 203d 2667 743b 2066 616c 7365 2c0a 2020   => false,.  
│ │ │ +00121a10: 2020 656e 7375 7265 203d 2667 743b 2027    ensure => '
│ │ │ +00121a20: 7374 6f70 7065 6427 2c0a 2020 7d0a 7d0a  stopped',.  }.}.
│ │ │ +00121a30: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ +00121ae0: 5265 6d65 6469 6174 696f 6e20 4f53 4275 Remediation OSBu │ │ │ +00121af0: 696c 6420 426c 7565 7072 696e 7420 736e ild Blueprint sn │ │ │ +00121b00: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
.[cu
│ │ │ +00121b50: 7374 6f6d 697a 6174 696f 6e73 2e73 6572  stomizations.ser
│ │ │ +00121b60: 7669 6365 735d 0a6d 6173 6b65 6420 3d20  vices].masked = 
│ │ │ +00121b70: 5b22 7273 796e 6364 225d 0a3c 2f63 6f64  ["rsyncd"].
Complexity:< │ │ │ +00121910: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +00121930: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ +00121980: 6174 6567 793a 3c2f 7468 3e3c 7464 3e65 ategy:e │ │ │ +00121990: 6e61 626c 653c 2f74 643e 3c2f 7472 3e3c nable
│ │ │ -00140590: 5265 6d65 6469 6174 696f 6e20 5075 7070 Remediation Pupp │ │ │ -001405a0: 6574 2073 6e69 7070 6574 20e2 87b2 3c2f et snippet ...
...include ssh_
│ │ │ -00140600: 7072 6976 6174 655f 6b65 795f 7065 726d  private_key_perm
│ │ │ -00140610: 730a 0a63 6c61 7373 2073 7368 5f70 7269  s..class ssh_pri
│ │ │ -00140620: 7661 7465 5f6b 6579 5f70 6572 6d73 207b  vate_key_perms {
│ │ │ -00140630: 0a20 2065 7865 6320 7b20 2773 7368 645f  .  exec { 'sshd_
│ │ │ -00140640: 7072 6976 5f6b 6579 273a 0a20 2020 2063  priv_key':.    c
│ │ │ -00140650: 6f6d 6d61 6e64 203d 2667 743b 2022 6368  ommand => "ch
│ │ │ -00140660: 6d6f 6420 3036 3030 202f 6574 632f 7373  mod 0600 /etc/ss
│ │ │ -00140670: 682f 2a5f 6b65 7922 2c0a 2020 2020 7061  h/*_key",.    pa
│ │ │ -00140680: 7468 2020 2020 3d26 6774 3b20 272f 6269  th    => '/bi
│ │ │ -00140690: 6e3a 2f75 7372 2f62 696e 270a 2020 7d0a  n:/usr/bin'.  }.
│ │ │ -001406a0: 7d0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  }.
< │ │ │ -001406b0: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation An │ │ │ -00140760: 7369 626c 6520 736e 6970 7065 7420 e287 sible snippet .. │ │ │ -00140770: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ -001407f0: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -00140810: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -00140860: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
low
Disr │ │ │ -00140820: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -00140830: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ -00140870: 7465 6779 3a3c 2f74 683e 3c74 643e 636f tegy:co │ │ │ -00140880: 6e66 6967 7572 653c 2f74 643e 3c2f 7472 nfigure
- name: Gath
│ │ │ -001408b0: 6572 2074 6865 2070 6163 6b61 6765 2066  er the package f
│ │ │ -001408c0: 6163 7473 0a20 2070 6163 6b61 6765 5f66  acts.  package_f
│ │ │ -001408d0: 6163 7473 3a0a 2020 2020 6d61 6e61 6765  acts:.    manage
│ │ │ -001408e0: 723a 2061 7574 6f0a 2020 7461 6773 3a0a  r: auto.  tags:.
│ │ │ -001408f0: 2020 2d20 4e49 5354 2d38 3030 2d31 3731    - NIST-800-171
│ │ │ -00140900: 2d33 2e31 2e31 330a 2020 2d20 4e49 5354  -3.1.13.  - NIST
│ │ │ -00140910: 2d38 3030 2d31 3731 2d33 2e31 332e 3130  -800-171-3.13.10
│ │ │ -00140920: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -00140930: 2d41 432d 3137 2861 290a 2020 2d20 4e49  -AC-17(a).  - NI
│ │ │ -00140940: 5354 2d38 3030 2d35 332d 4143 2d36 2831  ST-800-53-AC-6(1
│ │ │ -00140950: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -00140960: 332d 434d 2d36 2861 290a 2020 2d20 5043  3-CM-6(a).  - PC
│ │ │ -00140970: 492d 4453 532d 5265 712d 322e 322e 340a  I-DSS-Req-2.2.4.
│ │ │ -00140980: 2020 2d20 5043 492d 4453 5376 342d 322e    - PCI-DSSv4-2.
│ │ │ -00140990: 320a 2020 2d20 5043 492d 4453 5376 342d  2.  - PCI-DSSv4-
│ │ │ -001409a0: 322e 322e 360a 2020 2d20 636f 6e66 6967  2.2.6.  - config
│ │ │ -001409b0: 7572 655f 7374 7261 7465 6779 0a20 202d  ure_strategy.  -
│ │ │ -001409c0: 2066 696c 655f 7065 726d 6973 7369 6f6e   file_permission
│ │ │ -001409d0: 735f 7373 6864 5f70 7269 7661 7465 5f6b  s_sshd_private_k
│ │ │ -001409e0: 6579 0a20 202d 206c 6f77 5f63 6f6d 706c  ey.  - low_compl
│ │ │ -001409f0: 6578 6974 790a 2020 2d20 6c6f 775f 6469  exity.  - low_di
│ │ │ -00140a00: 7372 7570 7469 6f6e 0a20 202d 206d 6564  sruption.  - med
│ │ │ -00140a10: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ -00140a20: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ -00140a30: 640a 0a2d 206e 616d 653a 2046 696e 6420  d..- name: Find 
│ │ │ -00140a40: 726f 6f74 3a72 6f6f 742d 6f77 6e65 6420  root:root-owned 
│ │ │ -00140a50: 6b65 7973 0a20 2061 6e73 6962 6c65 2e62  keys.  ansible.b
│ │ │ -00140a60: 7569 6c74 696e 2e63 6f6d 6d61 6e64 3a20  uiltin.command: 
│ │ │ -00140a70: 6669 6e64 202d 4820 2f65 7463 2f73 7368  find -H /etc/ssh
│ │ │ -00140a80: 2f20 2d6d 6178 6465 7074 6820 3120 2d75  / -maxdepth 1 -u
│ │ │ -00140a90: 7365 7220 726f 6f74 202d 7265 6765 7820  ser root -regex 
│ │ │ -00140aa0: 222e 2a5f 6b65 7924 220a 2020 2020 2d74  ".*_key$".    -t
│ │ │ -00140ab0: 7970 6520 6620 2d67 726f 7570 2072 6f6f  ype f -group roo
│ │ │ -00140ac0: 7420 2d70 6572 6d20 2f75 2b78 732c 672b  t -perm /u+xs,g+
│ │ │ -00140ad0: 7877 7273 2c6f 2b78 7772 740a 2020 7265  xwrs,o+xwrt.  re
│ │ │ -00140ae0: 6769 7374 6572 3a20 726f 6f74 5f6f 776e  gister: root_own
│ │ │ -00140af0: 6564 5f6b 6579 730a 2020 6368 616e 6765  ed_keys.  change
│ │ │ -00140b00: 645f 7768 656e 3a20 6661 6c73 650a 2020  d_when: false.  
│ │ │ -00140b10: 6661 696c 6564 5f77 6865 6e3a 2066 616c  failed_when: fal
│ │ │ -00140b20: 7365 0a20 2063 6865 636b 5f6d 6f64 653a  se.  check_mode:
│ │ │ -00140b30: 2066 616c 7365 0a20 2077 6865 6e3a 2027   false.  when: '
│ │ │ -00140b40: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ -00140b50: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -00140b60: 6573 270a 2020 7461 6773 3a0a 2020 2d20  es'.  tags:.  - 
│ │ │ -00140b70: 4e49 5354 2d38 3030 2d31 3731 2d33 2e31  NIST-800-171-3.1
│ │ │ -00140b80: 2e31 330a 2020 2d20 4e49 5354 2d38 3030  .13.  - NIST-800
│ │ │ -00140b90: 2d31 3731 2d33 2e31 332e 3130 0a20 202d  -171-3.13.10.  -
│ │ │ -00140ba0: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ -00140bb0: 3137 2861 290a 2020 2d20 4e49 5354 2d38  17(a).  - NIST-8
│ │ │ -00140bc0: 3030 2d35 332d 4143 2d36 2831 290a 2020  00-53-AC-6(1).  
│ │ │ -00140bd0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -00140be0: 2d36 2861 290a 2020 2d20 5043 492d 4453  -6(a).  - PCI-DS
│ │ │ -00140bf0: 532d 5265 712d 322e 322e 340a 2020 2d20  S-Req-2.2.4.  - 
│ │ │ -00140c00: 5043 492d 4453 5376 342d 322e 320a 2020  PCI-DSSv4-2.2.  
│ │ │ -00140c10: 2d20 5043 492d 4453 5376 342d 322e 322e  - PCI-DSSv4-2.2.
│ │ │ -00140c20: 360a 2020 2d20 636f 6e66 6967 7572 655f  6.  - configure_
│ │ │ -00140c30: 7374 7261 7465 6779 0a20 202d 2066 696c  strategy.  - fil
│ │ │ -00140c40: 655f 7065 726d 6973 7369 6f6e 735f 7373  e_permissions_ss
│ │ │ -00140c50: 6864 5f70 7269 7661 7465 5f6b 6579 0a20  hd_private_key. 
│ │ │ -00140c60: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ -00140c70: 790a 2020 2d20 6c6f 775f 6469 7372 7570  y.  - low_disrup
│ │ │ -00140c80: 7469 6f6e 0a20 202d 206d 6564 6975 6d5f  tion.  - medium_
│ │ │ -00140c90: 7365 7665 7269 7479 0a20 202d 206e 6f5f  severity.  - no_
│ │ │ -00140ca0: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ -00140cb0: 206e 616d 653a 2053 6574 2070 6572 6d69   name: Set permi
│ │ │ -00140cc0: 7373 696f 6e73 2066 6f72 2072 6f6f 743a  ssions for root:
│ │ │ -00140cd0: 726f 6f74 2d6f 776e 6564 206b 6579 730a  root-owned keys.
│ │ │ -00140ce0: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ -00140cf0: 6e2e 6669 6c65 3a0a 2020 2020 7061 7468  n.file:.    path
│ │ │ -00140d00: 3a20 277b 7b20 6974 656d 207d 7d27 0a20  : '{{ item }}'. 
│ │ │ -00140d10: 2020 206d 6f64 653a 2075 2d78 732c 672d     mode: u-xs,g-
│ │ │ -00140d20: 7877 7273 2c6f 2d78 7772 740a 2020 2020  xwrs,o-xwrt.    
│ │ │ -00140d30: 7374 6174 653a 2066 696c 650a 2020 7769  state: file.  wi
│ │ │ -00140d40: 7468 5f69 7465 6d73 3a0a 2020 2d20 277b  th_items:.  - '{
│ │ │ -00140d50: 7b20 726f 6f74 5f6f 776e 6564 5f6b 6579  { root_owned_key
│ │ │ -00140d60: 732e 7374 646f 7574 5f6c 696e 6573 207d  s.stdout_lines }
│ │ │ -00140d70: 7d27 0a20 2077 6865 6e3a 2027 226b 6572  }'.  when: '"ker
│ │ │ -00140d80: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ -00140d90: 6661 6374 732e 7061 636b 6167 6573 270a  facts.packages'.
│ │ │ -00140da0: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ -00140db0: 2d38 3030 2d31 3731 2d33 2e31 2e31 330a  -800-171-3.1.13.
│ │ │ -00140dc0: 2020 2d20 4e49 5354 2d38 3030 2d31 3731    - NIST-800-171
│ │ │ -00140dd0: 2d33 2e31 332e 3130 0a20 202d 204e 4953  -3.13.10.  - NIS
│ │ │ -00140de0: 542d 3830 302d 3533 2d41 432d 3137 2861  T-800-53-AC-17(a
│ │ │ -00140df0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -00140e00: 332d 4143 2d36 2831 290a 2020 2d20 4e49  3-AC-6(1).  - NI
│ │ │ -00140e10: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ -00140e20: 290a 2020 2d20 5043 492d 4453 532d 5265  ).  - PCI-DSS-Re
│ │ │ -00140e30: 712d 322e 322e 340a 2020 2d20 5043 492d  q-2.2.4.  - PCI-
│ │ │ -00140e40: 4453 5376 342d 322e 320a 2020 2d20 5043  DSSv4-2.2.  - PC
│ │ │ -00140e50: 492d 4453 5376 342d 322e 322e 360a 2020  I-DSSv4-2.2.6.  
│ │ │ -00140e60: 2d20 636f 6e66 6967 7572 655f 7374 7261  - configure_stra
│ │ │ -00140e70: 7465 6779 0a20 202d 2066 696c 655f 7065  tegy.  - file_pe
│ │ │ -00140e80: 726d 6973 7369 6f6e 735f 7373 6864 5f70  rmissions_sshd_p
│ │ │ -00140e90: 7269 7661 7465 5f6b 6579 0a20 202d 206c  rivate_key.  - l
│ │ │ -00140ea0: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ -00140eb0: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ -00140ec0: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ -00140ed0: 7269 7479 0a20 202d 206e 6f5f 7265 626f  rity.  - no_rebo
│ │ │ -00140ee0: 6f74 5f6e 6565 6465 640a 3c2f 636f 6465  ot_needed.
< │ │ │ +00140680: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +00140690: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false< │ │ │ +001406d0: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
- name: Gather
│ │ │ +001406f0: 2074 6865 2070 6163 6b61 6765 2066 6163   the package fac
│ │ │ +00140700: 7473 0a20 2070 6163 6b61 6765 5f66 6163  ts.  package_fac
│ │ │ +00140710: 7473 3a0a 2020 2020 6d61 6e61 6765 723a  ts:.    manager:
│ │ │ +00140720: 2061 7574 6f0a 2020 7461 6773 3a0a 2020   auto.  tags:.  
│ │ │ +00140730: 2d20 4e49 5354 2d38 3030 2d31 3731 2d33  - NIST-800-171-3
│ │ │ +00140740: 2e31 2e31 330a 2020 2d20 4e49 5354 2d38  .1.13.  - NIST-8
│ │ │ +00140750: 3030 2d31 3731 2d33 2e31 332e 3130 0a20  00-171-3.13.10. 
│ │ │ +00140760: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ +00140770: 432d 3137 2861 290a 2020 2d20 4e49 5354  C-17(a).  - NIST
│ │ │ +00140780: 2d38 3030 2d35 332d 4143 2d36 2831 290a  -800-53-AC-6(1).
│ │ │ +00140790: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001407a0: 434d 2d36 2861 290a 2020 2d20 5043 492d  CM-6(a).  - PCI-
│ │ │ +001407b0: 4453 532d 5265 712d 322e 322e 340a 2020  DSS-Req-2.2.4.  
│ │ │ +001407c0: 2d20 5043 492d 4453 5376 342d 322e 320a  - PCI-DSSv4-2.2.
│ │ │ +001407d0: 2020 2d20 5043 492d 4453 5376 342d 322e    - PCI-DSSv4-2.
│ │ │ +001407e0: 322e 360a 2020 2d20 636f 6e66 6967 7572  2.6.  - configur
│ │ │ +001407f0: 655f 7374 7261 7465 6779 0a20 202d 2066  e_strategy.  - f
│ │ │ +00140800: 696c 655f 7065 726d 6973 7369 6f6e 735f  ile_permissions_
│ │ │ +00140810: 7373 6864 5f70 7269 7661 7465 5f6b 6579  sshd_private_key
│ │ │ +00140820: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ +00140830: 6974 790a 2020 2d20 6c6f 775f 6469 7372  ity.  - low_disr
│ │ │ +00140840: 7570 7469 6f6e 0a20 202d 206d 6564 6975  uption.  - mediu
│ │ │ +00140850: 6d5f 7365 7665 7269 7479 0a20 202d 206e  m_severity.  - n
│ │ │ +00140860: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ +00140870: 0a2d 206e 616d 653a 2046 696e 6420 726f  .- name: Find ro
│ │ │ +00140880: 6f74 3a72 6f6f 742d 6f77 6e65 6420 6b65  ot:root-owned ke
│ │ │ +00140890: 7973 0a20 2061 6e73 6962 6c65 2e62 7569  ys.  ansible.bui
│ │ │ +001408a0: 6c74 696e 2e63 6f6d 6d61 6e64 3a20 6669  ltin.command: fi
│ │ │ +001408b0: 6e64 202d 4820 2f65 7463 2f73 7368 2f20  nd -H /etc/ssh/ 
│ │ │ +001408c0: 2d6d 6178 6465 7074 6820 3120 2d75 7365  -maxdepth 1 -use
│ │ │ +001408d0: 7220 726f 6f74 202d 7265 6765 7820 222e  r root -regex ".
│ │ │ +001408e0: 2a5f 6b65 7924 220a 2020 2020 2d74 7970  *_key$".    -typ
│ │ │ +001408f0: 6520 6620 2d67 726f 7570 2072 6f6f 7420  e f -group root 
│ │ │ +00140900: 2d70 6572 6d20 2f75 2b78 732c 672b 7877  -perm /u+xs,g+xw
│ │ │ +00140910: 7273 2c6f 2b78 7772 740a 2020 7265 6769  rs,o+xwrt.  regi
│ │ │ +00140920: 7374 6572 3a20 726f 6f74 5f6f 776e 6564  ster: root_owned
│ │ │ +00140930: 5f6b 6579 730a 2020 6368 616e 6765 645f  _keys.  changed_
│ │ │ +00140940: 7768 656e 3a20 6661 6c73 650a 2020 6661  when: false.  fa
│ │ │ +00140950: 696c 6564 5f77 6865 6e3a 2066 616c 7365  iled_when: false
│ │ │ +00140960: 0a20 2063 6865 636b 5f6d 6f64 653a 2066  .  check_mode: f
│ │ │ +00140970: 616c 7365 0a20 2077 6865 6e3a 2027 226b  alse.  when: '"k
│ │ │ +00140980: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ +00140990: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +001409a0: 270a 2020 7461 6773 3a0a 2020 2d20 4e49  '.  tags:.  - NI
│ │ │ +001409b0: 5354 2d38 3030 2d31 3731 2d33 2e31 2e31  ST-800-171-3.1.1
│ │ │ +001409c0: 330a 2020 2d20 4e49 5354 2d38 3030 2d31  3.  - NIST-800-1
│ │ │ +001409d0: 3731 2d33 2e31 332e 3130 0a20 202d 204e  71-3.13.10.  - N
│ │ │ +001409e0: 4953 542d 3830 302d 3533 2d41 432d 3137  IST-800-53-AC-17
│ │ │ +001409f0: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ +00140a00: 2d35 332d 4143 2d36 2831 290a 2020 2d20  -53-AC-6(1).  - 
│ │ │ +00140a10: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ +00140a20: 2861 290a 2020 2d20 5043 492d 4453 532d  (a).  - PCI-DSS-
│ │ │ +00140a30: 5265 712d 322e 322e 340a 2020 2d20 5043  Req-2.2.4.  - PC
│ │ │ +00140a40: 492d 4453 5376 342d 322e 320a 2020 2d20  I-DSSv4-2.2.  - 
│ │ │ +00140a50: 5043 492d 4453 5376 342d 322e 322e 360a  PCI-DSSv4-2.2.6.
│ │ │ +00140a60: 2020 2d20 636f 6e66 6967 7572 655f 7374    - configure_st
│ │ │ +00140a70: 7261 7465 6779 0a20 202d 2066 696c 655f  rategy.  - file_
│ │ │ +00140a80: 7065 726d 6973 7369 6f6e 735f 7373 6864  permissions_sshd
│ │ │ +00140a90: 5f70 7269 7661 7465 5f6b 6579 0a20 202d  _private_key.  -
│ │ │ +00140aa0: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ +00140ab0: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ +00140ac0: 6f6e 0a20 202d 206d 6564 6975 6d5f 7365  on.  - medium_se
│ │ │ +00140ad0: 7665 7269 7479 0a20 202d 206e 6f5f 7265  verity.  - no_re
│ │ │ +00140ae0: 626f 6f74 5f6e 6565 6465 640a 0a2d 206e  boot_needed..- n
│ │ │ +00140af0: 616d 653a 2053 6574 2070 6572 6d69 7373  ame: Set permiss
│ │ │ +00140b00: 696f 6e73 2066 6f72 2072 6f6f 743a 726f  ions for root:ro
│ │ │ +00140b10: 6f74 2d6f 776e 6564 206b 6579 730a 2020  ot-owned keys.  
│ │ │ +00140b20: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ +00140b30: 6669 6c65 3a0a 2020 2020 7061 7468 3a20  file:.    path: 
│ │ │ +00140b40: 277b 7b20 6974 656d 207d 7d27 0a20 2020  '{{ item }}'.   
│ │ │ +00140b50: 206d 6f64 653a 2075 2d78 732c 672d 7877   mode: u-xs,g-xw
│ │ │ +00140b60: 7273 2c6f 2d78 7772 740a 2020 2020 7374  rs,o-xwrt.    st
│ │ │ +00140b70: 6174 653a 2066 696c 650a 2020 7769 7468  ate: file.  with
│ │ │ +00140b80: 5f69 7465 6d73 3a0a 2020 2d20 277b 7b20  _items:.  - '{{ 
│ │ │ +00140b90: 726f 6f74 5f6f 776e 6564 5f6b 6579 732e  root_owned_keys.
│ │ │ +00140ba0: 7374 646f 7574 5f6c 696e 6573 207d 7d27  stdout_lines }}'
│ │ │ +00140bb0: 0a20 2077 6865 6e3a 2027 226b 6572 6e65  .  when: '"kerne
│ │ │ +00140bc0: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ +00140bd0: 6374 732e 7061 636b 6167 6573 270a 2020  cts.packages'.  
│ │ │ +00140be0: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38  tags:.  - NIST-8
│ │ │ +00140bf0: 3030 2d31 3731 2d33 2e31 2e31 330a 2020  00-171-3.1.13.  
│ │ │ +00140c00: 2d20 4e49 5354 2d38 3030 2d31 3731 2d33  - NIST-800-171-3
│ │ │ +00140c10: 2e31 332e 3130 0a20 202d 204e 4953 542d  .13.10.  - NIST-
│ │ │ +00140c20: 3830 302d 3533 2d41 432d 3137 2861 290a  800-53-AC-17(a).
│ │ │ +00140c30: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +00140c40: 4143 2d36 2831 290a 2020 2d20 4e49 5354  AC-6(1).  - NIST
│ │ │ +00140c50: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ +00140c60: 2020 2d20 5043 492d 4453 532d 5265 712d    - PCI-DSS-Req-
│ │ │ +00140c70: 322e 322e 340a 2020 2d20 5043 492d 4453  2.2.4.  - PCI-DS
│ │ │ +00140c80: 5376 342d 322e 320a 2020 2d20 5043 492d  Sv4-2.2.  - PCI-
│ │ │ +00140c90: 4453 5376 342d 322e 322e 360a 2020 2d20  DSSv4-2.2.6.  - 
│ │ │ +00140ca0: 636f 6e66 6967 7572 655f 7374 7261 7465  configure_strate
│ │ │ +00140cb0: 6779 0a20 202d 2066 696c 655f 7065 726d  gy.  - file_perm
│ │ │ +00140cc0: 6973 7369 6f6e 735f 7373 6864 5f70 7269  issions_sshd_pri
│ │ │ +00140cd0: 7661 7465 5f6b 6579 0a20 202d 206c 6f77  vate_key.  - low
│ │ │ +00140ce0: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +00140cf0: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ +00140d00: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ +00140d10: 7479 0a20 202d 206e 6f5f 7265 626f 6f74  ty.  - no_reboot
│ │ │ +00140d20: 5f6e 6565 6465 640a 3c2f 636f 6465 3e3c  _needed.<
│ │ │ +00140d30: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>Remediat
│ │ │ +00140de0: 696f 6e20 5075 7070 6574 2073 6e69 7070  ion Puppet snipp
│ │ │ +00140df0: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64  et ...

...incl │ │ │ +00140e40: 7564 6520 7373 685f 7072 6976 6174 655f ude ssh_private_ │ │ │ +00140e50: 6b65 795f 7065 726d 730a 0a63 6c61 7373 key_perms..class │ │ │ +00140e60: 2073 7368 5f70 7269 7661 7465 5f6b 6579 ssh_private_key │ │ │ +00140e70: 5f70 6572 6d73 207b 0a20 2065 7865 6320 _perms {. exec │ │ │ +00140e80: 7b20 2773 7368 645f 7072 6976 5f6b 6579 { 'sshd_priv_key │ │ │ +00140e90: 273a 0a20 2020 2063 6f6d 6d61 6e64 203d ':. command = │ │ │ +00140ea0: 2667 743b 2022 6368 6d6f 6420 3036 3030 > "chmod 0600 │ │ │ +00140eb0: 202f 6574 632f 7373 682f 2a5f 6b65 7922 /etc/ssh/*_key" │ │ │ +00140ec0: 2c0a 2020 2020 7061 7468 2020 2020 3d26 ,. path =& │ │ │ +00140ed0: 6774 3b20 272f 6269 6e3a 2f75 7372 2f62 gt; '/bin:/usr/b │ │ │ +00140ee0: 696e 270a 2020 7d0a 7d0a 3c2f 636f 6465 in'. }.}.

Remediat │ │ │ -00142290: 696f 6e20 5075 7070 6574 2073 6e69 7070 ion Puppet snipp │ │ │ -001422a0: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...

include │ │ │ -001422f0: 2073 7368 5f70 7562 6c69 635f 6b65 795f ssh_public_key_ │ │ │ -00142300: 7065 726d 730a 0a63 6c61 7373 2073 7368 perms..class ssh │ │ │ -00142310: 5f70 7562 6c69 635f 6b65 795f 7065 726d _public_key_perm │ │ │ -00142320: 7320 7b0a 2020 6578 6563 207b 2027 7373 s {. exec { 'ss │ │ │ -00142330: 6864 5f70 7562 5f6b 6579 273a 0a20 2020 hd_pub_key':. │ │ │ -00142340: 2063 6f6d 6d61 6e64 203d 2667 743b 2022 command => " │ │ │ -00142350: 6368 6d6f 6420 3036 3434 202f 6574 632f chmod 0644 /etc/ │ │ │ -00142360: 7373 682f 2a2e 7075 6222 2c0a 2020 2020 ssh/*.pub",. │ │ │ -00142370: 7061 7468 2020 2020 3d26 6774 3b20 272f path => '/ │ │ │ -00142380: 6269 6e3a 2f75 7372 2f62 696e 270a 2020 bin:/usr/bin'. │ │ │ -00142390: 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70 7265 }.}.Remediation │ │ │ -00142450: 416e 7369 626c 6520 736e 6970 7065 7420 Ansible snippet │ │ │ -00142460: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...

low< │ │ │ -00142530: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>
Complexity:low
Disrup │ │ │ +00140660: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ +00140670: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ +001406b0: 6779 3a3c 2f74 683e 3c74 643e 636f 6e66 gy:conf │ │ │ +001406c0: 6967 7572 653c 2f74 643e 3c2f 7472 3e3c igure
Complexity: │ │ │ -001424f0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Di │ │ │ -00142510: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:
Reboot:false
St │ │ │ -00142560: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ -00142570: 636f 6e66 6967 7572 653c 2f74 643e 3c2f configure
│ │ │ -00142590: 3c63 6f64 653e 2d20 6e61 6d65 3a20 4761  - name: Ga
│ │ │ -001425a0: 7468 6572 2074 6865 2070 6163 6b61 6765  ther the package
│ │ │ -001425b0: 2066 6163 7473 0a20 2070 6163 6b61 6765   facts.  package
│ │ │ -001425c0: 5f66 6163 7473 3a0a 2020 2020 6d61 6e61  _facts:.    mana
│ │ │ -001425d0: 6765 723a 2061 7574 6f0a 2020 7461 6773  ger: auto.  tags
│ │ │ -001425e0: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d31  :.  - NIST-800-1
│ │ │ -001425f0: 3731 2d33 2e31 2e31 330a 2020 2d20 4e49  71-3.1.13.  - NI
│ │ │ -00142600: 5354 2d38 3030 2d31 3731 2d33 2e31 332e  ST-800-171-3.13.
│ │ │ -00142610: 3130 0a20 202d 204e 4953 542d 3830 302d  10.  - NIST-800-
│ │ │ -00142620: 3533 2d41 432d 3137 2861 290a 2020 2d20  53-AC-17(a).  - 
│ │ │ -00142630: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ -00142640: 2831 290a 2020 2d20 4e49 5354 2d38 3030  (1).  - NIST-800
│ │ │ -00142650: 2d35 332d 434d 2d36 2861 290a 2020 2d20  -53-CM-6(a).  - 
│ │ │ -00142660: 5043 492d 4453 532d 5265 712d 322e 322e  PCI-DSS-Req-2.2.
│ │ │ -00142670: 340a 2020 2d20 5043 492d 4453 5376 342d  4.  - PCI-DSSv4-
│ │ │ -00142680: 322e 320a 2020 2d20 5043 492d 4453 5376  2.2.  - PCI-DSSv
│ │ │ -00142690: 342d 322e 322e 360a 2020 2d20 636f 6e66  4-2.2.6.  - conf
│ │ │ -001426a0: 6967 7572 655f 7374 7261 7465 6779 0a20  igure_strategy. 
│ │ │ -001426b0: 202d 2066 696c 655f 7065 726d 6973 7369   - file_permissi
│ │ │ -001426c0: 6f6e 735f 7373 6864 5f70 7562 5f6b 6579  ons_sshd_pub_key
│ │ │ -001426d0: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ -001426e0: 6974 790a 2020 2d20 6c6f 775f 6469 7372  ity.  - low_disr
│ │ │ -001426f0: 7570 7469 6f6e 0a20 202d 206d 6564 6975  uption.  - mediu
│ │ │ -00142700: 6d5f 7365 7665 7269 7479 0a20 202d 206e  m_severity.  - n
│ │ │ -00142710: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ -00142720: 0a2d 206e 616d 653a 2046 696e 6420 2f65  .- name: Find /e
│ │ │ -00142730: 7463 2f73 7368 2f20 6669 6c65 2873 290a  tc/ssh/ file(s).
│ │ │ -00142740: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ -00142750: 6e2e 636f 6d6d 616e 643a 2066 696e 6420  n.command: find 
│ │ │ -00142760: 2d50 202f 6574 632f 7373 682f 202d 6d61  -P /etc/ssh/ -ma
│ │ │ -00142770: 7864 6570 7468 2031 202d 7065 726d 202f  xdepth 1 -perm /
│ │ │ -00142780: 752b 7873 2c67 2b78 7773 2c6f 2b78 7774  u+xs,g+xws,o+xwt
│ │ │ -00142790: 2020 2d74 7970 650a 2020 2020 6620 2d72    -type.    f -r
│ │ │ -001427a0: 6567 6578 7479 7065 2070 6f73 6978 2d65  egextype posix-e
│ │ │ -001427b0: 7874 656e 6465 6420 2d72 6567 6578 2022  xtended -regex "
│ │ │ -001427c0: 5e2e 2a5c 2e70 7562 2422 0a20 2072 6567  ^.*\.pub$".  reg
│ │ │ -001427d0: 6973 7465 723a 2066 696c 6573 5f66 6f75  ister: files_fou
│ │ │ -001427e0: 6e64 0a20 2063 6861 6e67 6564 5f77 6865  nd.  changed_whe
│ │ │ -001427f0: 6e3a 2066 616c 7365 0a20 2066 6169 6c65  n: false.  faile
│ │ │ -00142800: 645f 7768 656e 3a20 6661 6c73 650a 2020  d_when: false.  
│ │ │ -00142810: 6368 6563 6b5f 6d6f 6465 3a20 6661 6c73  check_mode: fals
│ │ │ -00142820: 650a 2020 7768 656e 3a20 2722 6b65 726e  e.  when: '"kern
│ │ │ -00142830: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ -00142840: 6163 7473 2e70 6163 6b61 6765 7327 0a20  acts.packages'. 
│ │ │ -00142850: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ -00142860: 3830 302d 3137 312d 332e 312e 3133 0a20  800-171-3.1.13. 
│ │ │ -00142870: 202d 204e 4953 542d 3830 302d 3137 312d   - NIST-800-171-
│ │ │ -00142880: 332e 3133 2e31 300a 2020 2d20 4e49 5354  3.13.10.  - NIST
│ │ │ -00142890: 2d38 3030 2d35 332d 4143 2d31 3728 6129  -800-53-AC-17(a)
│ │ │ -001428a0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001428b0: 2d41 432d 3628 3129 0a20 202d 204e 4953  -AC-6(1).  - NIS
│ │ │ -001428c0: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ -001428d0: 0a20 202d 2050 4349 2d44 5353 2d52 6571  .  - PCI-DSS-Req
│ │ │ -001428e0: 2d32 2e32 2e34 0a20 202d 2050 4349 2d44  -2.2.4.  - PCI-D
│ │ │ -001428f0: 5353 7634 2d32 2e32 0a20 202d 2050 4349  SSv4-2.2.  - PCI
│ │ │ -00142900: 2d44 5353 7634 2d32 2e32 2e36 0a20 202d  -DSSv4-2.2.6.  -
│ │ │ -00142910: 2063 6f6e 6669 6775 7265 5f73 7472 6174   configure_strat
│ │ │ -00142920: 6567 790a 2020 2d20 6669 6c65 5f70 6572  egy.  - file_per
│ │ │ -00142930: 6d69 7373 696f 6e73 5f73 7368 645f 7075  missions_sshd_pu
│ │ │ -00142940: 625f 6b65 790a 2020 2d20 6c6f 775f 636f  b_key.  - low_co
│ │ │ -00142950: 6d70 6c65 7869 7479 0a20 202d 206c 6f77  mplexity.  - low
│ │ │ -00142960: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ -00142970: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ -00142980: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ -00142990: 6564 6564 0a0a 2d20 6e61 6d65 3a20 5365  eded..- name: Se
│ │ │ -001429a0: 7420 7065 726d 6973 7369 6f6e 7320 666f  t permissions fo
│ │ │ -001429b0: 7220 2f65 7463 2f73 7368 2f20 6669 6c65  r /etc/ssh/ file
│ │ │ -001429c0: 2873 290a 2020 616e 7369 626c 652e 6275  (s).  ansible.bu
│ │ │ -001429d0: 696c 7469 6e2e 6669 6c65 3a0a 2020 2020  iltin.file:.    
│ │ │ -001429e0: 7061 7468 3a20 277b 7b20 6974 656d 207d  path: '{{ item }
│ │ │ -001429f0: 7d27 0a20 2020 206d 6f64 653a 2075 2d78  }'.    mode: u-x
│ │ │ -00142a00: 732c 672d 7877 732c 6f2d 7877 740a 2020  s,g-xws,o-xwt.  
│ │ │ -00142a10: 2020 7374 6174 653a 2066 696c 650a 2020    state: file.  
│ │ │ -00142a20: 7769 7468 5f69 7465 6d73 3a0a 2020 2d20  with_items:.  - 
│ │ │ -00142a30: 277b 7b20 6669 6c65 735f 666f 756e 642e  '{{ files_found.
│ │ │ -00142a40: 7374 646f 7574 5f6c 696e 6573 207d 7d27  stdout_lines }}'
│ │ │ -00142a50: 0a20 2077 6865 6e3a 2027 226b 6572 6e65  .  when: '"kerne
│ │ │ -00142a60: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ -00142a70: 6374 732e 7061 636b 6167 6573 270a 2020  cts.packages'.  
│ │ │ -00142a80: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38  tags:.  - NIST-8
│ │ │ -00142a90: 3030 2d31 3731 2d33 2e31 2e31 330a 2020  00-171-3.1.13.  
│ │ │ -00142aa0: 2d20 4e49 5354 2d38 3030 2d31 3731 2d33  - NIST-800-171-3
│ │ │ -00142ab0: 2e31 332e 3130 0a20 202d 204e 4953 542d  .13.10.  - NIST-
│ │ │ -00142ac0: 3830 302d 3533 2d41 432d 3137 2861 290a  800-53-AC-17(a).
│ │ │ -00142ad0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -00142ae0: 4143 2d36 2831 290a 2020 2d20 4e49 5354  AC-6(1).  - NIST
│ │ │ -00142af0: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ -00142b00: 2020 2d20 5043 492d 4453 532d 5265 712d    - PCI-DSS-Req-
│ │ │ -00142b10: 322e 322e 340a 2020 2d20 5043 492d 4453  2.2.4.  - PCI-DS
│ │ │ -00142b20: 5376 342d 322e 320a 2020 2d20 5043 492d  Sv4-2.2.  - PCI-
│ │ │ -00142b30: 4453 5376 342d 322e 322e 360a 2020 2d20  DSSv4-2.2.6.  - 
│ │ │ -00142b40: 636f 6e66 6967 7572 655f 7374 7261 7465  configure_strate
│ │ │ -00142b50: 6779 0a20 202d 2066 696c 655f 7065 726d  gy.  - file_perm
│ │ │ -00142b60: 6973 7369 6f6e 735f 7373 6864 5f70 7562  issions_sshd_pub
│ │ │ -00142b70: 5f6b 6579 0a20 202d 206c 6f77 5f63 6f6d  _key.  - low_com
│ │ │ -00142b80: 706c 6578 6974 790a 2020 2d20 6c6f 775f  plexity.  - low_
│ │ │ -00142b90: 6469 7372 7570 7469 6f6e 0a20 202d 206d  disruption.  - m
│ │ │ -00142ba0: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ -00142bb0: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ -00142bc0: 6465 640a 3c2f 636f 6465 3e3c 2f70 7265  ded.

< │ │ │ +001422b0: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +001422c0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +001422d0: 7365 2220 6964 3d22 6964 3339 3222 3e3c se" id="id392">< │ │ │ +001422e0: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +001422f0: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +00142300: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +00142310: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +00142320: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Complex │ │ │ +00142330: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ +00142340: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Disruption:lowReboo │ │ │ +00142380: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ +00142390: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ +001423b0: 3c74 643e 636f 6e66 6967 7572 653c 2f74 configure< │ │ │ +001423d0: 7072 653e 3c63 6f64 653e 2d20 6e61 6d65 pre>- name │ │ │ +001423e0: 3a20 4761 7468 6572 2074 6865 2070 6163 : Gather the pac │ │ │ +001423f0: 6b61 6765 2066 6163 7473 0a20 2070 6163 kage facts. pac │ │ │ +00142400: 6b61 6765 5f66 6163 7473 3a0a 2020 2020 kage_facts:. │ │ │ +00142410: 6d61 6e61 6765 723a 2061 7574 6f0a 2020 manager: auto. │ │ │ +00142420: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38 tags:. - NIST-8 │ │ │ +00142430: 3030 2d31 3731 2d33 2e31 2e31 330a 2020 00-171-3.1.13. │ │ │ +00142440: 2d20 4e49 5354 2d38 3030 2d31 3731 2d33 - NIST-800-171-3 │ │ │ +00142450: 2e31 332e 3130 0a20 202d 204e 4953 542d .13.10. - NIST- │ │ │ +00142460: 3830 302d 3533 2d41 432d 3137 2861 290a 800-53-AC-17(a). │ │ │ +00142470: 2020 2d20 4e49 5354 2d38 3030 2d35 332d - NIST-800-53- │ │ │ +00142480: 4143 2d36 2831 290a 2020 2d20 4e49 5354 AC-6(1). - NIST │ │ │ +00142490: 2d38 3030 2d35 332d 434d 2d36 2861 290a -800-53-CM-6(a). │ │ │ +001424a0: 2020 2d20 5043 492d 4453 532d 5265 712d - PCI-DSS-Req- │ │ │ +001424b0: 322e 322e 340a 2020 2d20 5043 492d 4453 2.2.4. - PCI-DS │ │ │ +001424c0: 5376 342d 322e 320a 2020 2d20 5043 492d Sv4-2.2. - PCI- │ │ │ +001424d0: 4453 5376 342d 322e 322e 360a 2020 2d20 DSSv4-2.2.6. - │ │ │ +001424e0: 636f 6e66 6967 7572 655f 7374 7261 7465 configure_strate │ │ │ +001424f0: 6779 0a20 202d 2066 696c 655f 7065 726d gy. - file_perm │ │ │ +00142500: 6973 7369 6f6e 735f 7373 6864 5f70 7562 issions_sshd_pub │ │ │ +00142510: 5f6b 6579 0a20 202d 206c 6f77 5f63 6f6d _key. - low_com │ │ │ +00142520: 706c 6578 6974 790a 2020 2d20 6c6f 775f plexity. - low_ │ │ │ +00142530: 6469 7372 7570 7469 6f6e 0a20 202d 206d disruption. - m │ │ │ +00142540: 6564 6975 6d5f 7365 7665 7269 7479 0a20 edium_severity. │ │ │ +00142550: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565 - no_reboot_nee │ │ │ +00142560: 6465 640a 0a2d 206e 616d 653a 2046 696e ded..- name: Fin │ │ │ +00142570: 6420 2f65 7463 2f73 7368 2f20 6669 6c65 d /etc/ssh/ file │ │ │ +00142580: 2873 290a 2020 616e 7369 626c 652e 6275 (s). ansible.bu │ │ │ +00142590: 696c 7469 6e2e 636f 6d6d 616e 643a 2066 iltin.command: f │ │ │ +001425a0: 696e 6420 2d50 202f 6574 632f 7373 682f ind -P /etc/ssh/ │ │ │ +001425b0: 202d 6d61 7864 6570 7468 2031 202d 7065 -maxdepth 1 -pe │ │ │ +001425c0: 726d 202f 752b 7873 2c67 2b78 7773 2c6f rm /u+xs,g+xws,o │ │ │ +001425d0: 2b78 7774 2020 2d74 7970 650a 2020 2020 +xwt -type. │ │ │ +001425e0: 6620 2d72 6567 6578 7479 7065 2070 6f73 f -regextype pos │ │ │ +001425f0: 6978 2d65 7874 656e 6465 6420 2d72 6567 ix-extended -reg │ │ │ +00142600: 6578 2022 5e2e 2a5c 2e70 7562 2422 0a20 ex "^.*\.pub$". │ │ │ +00142610: 2072 6567 6973 7465 723a 2066 696c 6573 register: files │ │ │ +00142620: 5f66 6f75 6e64 0a20 2063 6861 6e67 6564 _found. changed │ │ │ +00142630: 5f77 6865 6e3a 2066 616c 7365 0a20 2066 _when: false. f │ │ │ +00142640: 6169 6c65 645f 7768 656e 3a20 6661 6c73 ailed_when: fals │ │ │ +00142650: 650a 2020 6368 6563 6b5f 6d6f 6465 3a20 e. check_mode: │ │ │ +00142660: 6661 6c73 650a 2020 7768 656e 3a20 2722 false. when: '" │ │ │ +00142670: 6b65 726e 656c 2220 696e 2061 6e73 6962 kernel" in ansib │ │ │ +00142680: 6c65 5f66 6163 7473 2e70 6163 6b61 6765 le_facts.package │ │ │ +00142690: 7327 0a20 2074 6167 733a 0a20 202d 204e s'. tags:. - N │ │ │ +001426a0: 4953 542d 3830 302d 3137 312d 332e 312e IST-800-171-3.1. │ │ │ +001426b0: 3133 0a20 202d 204e 4953 542d 3830 302d 13. - NIST-800- │ │ │ +001426c0: 3137 312d 332e 3133 2e31 300a 2020 2d20 171-3.13.10. - │ │ │ +001426d0: 4e49 5354 2d38 3030 2d35 332d 4143 2d31 NIST-800-53-AC-1 │ │ │ +001426e0: 3728 6129 0a20 202d 204e 4953 542d 3830 7(a). - NIST-80 │ │ │ +001426f0: 302d 3533 2d41 432d 3628 3129 0a20 202d 0-53-AC-6(1). - │ │ │ +00142700: 204e 4953 542d 3830 302d 3533 2d43 4d2d NIST-800-53-CM- │ │ │ +00142710: 3628 6129 0a20 202d 2050 4349 2d44 5353 6(a). - PCI-DSS │ │ │ +00142720: 2d52 6571 2d32 2e32 2e34 0a20 202d 2050 -Req-2.2.4. - P │ │ │ +00142730: 4349 2d44 5353 7634 2d32 2e32 0a20 202d CI-DSSv4-2.2. - │ │ │ +00142740: 2050 4349 2d44 5353 7634 2d32 2e32 2e36 PCI-DSSv4-2.2.6 │ │ │ +00142750: 0a20 202d 2063 6f6e 6669 6775 7265 5f73 . - configure_s │ │ │ +00142760: 7472 6174 6567 790a 2020 2d20 6669 6c65 trategy. - file │ │ │ +00142770: 5f70 6572 6d69 7373 696f 6e73 5f73 7368 _permissions_ssh │ │ │ +00142780: 645f 7075 625f 6b65 790a 2020 2d20 6c6f d_pub_key. - lo │ │ │ +00142790: 775f 636f 6d70 6c65 7869 7479 0a20 202d w_complexity. - │ │ │ +001427a0: 206c 6f77 5f64 6973 7275 7074 696f 6e0a low_disruption. │ │ │ +001427b0: 2020 2d20 6d65 6469 756d 5f73 6576 6572 - medium_sever │ │ │ +001427c0: 6974 790a 2020 2d20 6e6f 5f72 6562 6f6f ity. - no_reboo │ │ │ +001427d0: 745f 6e65 6564 6564 0a0a 2d20 6e61 6d65 t_needed..- name │ │ │ +001427e0: 3a20 5365 7420 7065 726d 6973 7369 6f6e : Set permission │ │ │ +001427f0: 7320 666f 7220 2f65 7463 2f73 7368 2f20 s for /etc/ssh/ │ │ │ +00142800: 6669 6c65 2873 290a 2020 616e 7369 626c file(s). ansibl │ │ │ +00142810: 652e 6275 696c 7469 6e2e 6669 6c65 3a0a e.builtin.file:. │ │ │ +00142820: 2020 2020 7061 7468 3a20 277b 7b20 6974 path: '{{ it │ │ │ +00142830: 656d 207d 7d27 0a20 2020 206d 6f64 653a em }}'. mode: │ │ │ +00142840: 2075 2d78 732c 672d 7877 732c 6f2d 7877 u-xs,g-xws,o-xw │ │ │ +00142850: 740a 2020 2020 7374 6174 653a 2066 696c t. state: fil │ │ │ +00142860: 650a 2020 7769 7468 5f69 7465 6d73 3a0a e. with_items:. │ │ │ +00142870: 2020 2d20 277b 7b20 6669 6c65 735f 666f - '{{ files_fo │ │ │ +00142880: 756e 642e 7374 646f 7574 5f6c 696e 6573 und.stdout_lines │ │ │ +00142890: 207d 7d27 0a20 2077 6865 6e3a 2027 226b }}'. when: '"k │ │ │ +001428a0: 6572 6e65 6c22 2069 6e20 616e 7369 626c ernel" in ansibl │ │ │ +001428b0: 655f 6661 6374 732e 7061 636b 6167 6573 e_facts.packages │ │ │ +001428c0: 270a 2020 7461 6773 3a0a 2020 2d20 4e49 '. tags:. - NI │ │ │ +001428d0: 5354 2d38 3030 2d31 3731 2d33 2e31 2e31 ST-800-171-3.1.1 │ │ │ +001428e0: 330a 2020 2d20 4e49 5354 2d38 3030 2d31 3. - NIST-800-1 │ │ │ +001428f0: 3731 2d33 2e31 332e 3130 0a20 202d 204e 71-3.13.10. - N │ │ │ +00142900: 4953 542d 3830 302d 3533 2d41 432d 3137 IST-800-53-AC-17 │ │ │ +00142910: 2861 290a 2020 2d20 4e49 5354 2d38 3030 (a). - NIST-800 │ │ │ +00142920: 2d35 332d 4143 2d36 2831 290a 2020 2d20 -53-AC-6(1). - │ │ │ +00142930: 4e49 5354 2d38 3030 2d35 332d 434d 2d36 NIST-800-53-CM-6 │ │ │ +00142940: 2861 290a 2020 2d20 5043 492d 4453 532d (a). - PCI-DSS- │ │ │ +00142950: 5265 712d 322e 322e 340a 2020 2d20 5043 Req-2.2.4. - PC │ │ │ +00142960: 492d 4453 5376 342d 322e 320a 2020 2d20 I-DSSv4-2.2. - │ │ │ +00142970: 5043 492d 4453 5376 342d 322e 322e 360a PCI-DSSv4-2.2.6. │ │ │ +00142980: 2020 2d20 636f 6e66 6967 7572 655f 7374 - configure_st │ │ │ +00142990: 7261 7465 6779 0a20 202d 2066 696c 655f rategy. - file_ │ │ │ +001429a0: 7065 726d 6973 7369 6f6e 735f 7373 6864 permissions_sshd │ │ │ +001429b0: 5f70 7562 5f6b 6579 0a20 202d 206c 6f77 _pub_key. - low │ │ │ +001429c0: 5f63 6f6d 706c 6578 6974 790a 2020 2d20 _complexity. - │ │ │ +001429d0: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20 low_disruption. │ │ │ +001429e0: 202d 206d 6564 6975 6d5f 7365 7665 7269 - medium_severi │ │ │ +001429f0: 7479 0a20 202d 206e 6f5f 7265 626f 6f74 ty. - no_reboot │ │ │ +00142a00: 5f6e 6565 6465 640a 3c2f 636f 6465 3e3c _needed.< │ │ │ +00142a10: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c /pre>
Remediat │ │ │ +00142ac0: 696f 6e20 5075 7070 6574 2073 6e69 7070 ion Puppet snipp │ │ │ +00142ad0: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...

include │ │ │ +00142b20: 2073 7368 5f70 7562 6c69 635f 6b65 795f ssh_public_key_ │ │ │ +00142b30: 7065 726d 730a 0a63 6c61 7373 2073 7368 perms..class ssh │ │ │ +00142b40: 5f70 7562 6c69 635f 6b65 795f 7065 726d _public_key_perm │ │ │ +00142b50: 7320 7b0a 2020 6578 6563 207b 2027 7373 s {. exec { 'ss │ │ │ +00142b60: 6864 5f70 7562 5f6b 6579 273a 0a20 2020 hd_pub_key':. │ │ │ +00142b70: 2063 6f6d 6d61 6e64 203d 2667 743b 2022 command => " │ │ │ +00142b80: 6368 6d6f 6420 3036 3434 202f 6574 632f chmod 0644 /etc/ │ │ │ +00142b90: 7373 682f 2a2e 7075 6222 2c0a 2020 2020 ssh/*.pub",. │ │ │ +00142ba0: 7061 7468 2020 2020 3d26 6774 3b20 272f path => '/ │ │ │ +00142bb0: 6269 6e3a 2f75 7372 2f62 696e 270a 2020 bin:/usr/bin'. │ │ │ +00142bc0: 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70 7265 }.}.

Remediation │ │ │ -001bf180: 204f 5342 7569 6c64 2042 6c75 6570 7269 OSBuild Bluepri │ │ │ -001bf190: 6e74 2073 6e69 7070 6574 20e2 87b2 3c2f nt snippet ...
.[[packages]].n
│ │ │ -001bf1f0: 616d 6520 3d20 2261 7564 6974 220a 7665  ame = "audit".ve
│ │ │ -001bf200: 7273 696f 6e20 3d20 222a 220a 3c2f 636f  rsion = "*".
< │ │ │ -001bf220: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ -001bf230: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ -001bf240: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ -001bf250: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ -001bf260: 6434 3733 2220 7461 6269 6e64 6578 3d22 d473" tabindex=" │ │ │ -001bf270: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ -001bf280: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ -001bf290: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ -001bf2a0: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ -001bf2b0: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ -001bf2c0: 6469 6174 696f 6e20 5075 7070 6574 2073 diation Puppet s │ │ │ -001bf2d0: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ -001bf360: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -001bf370: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -001bf390: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ -001bf3b0: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -001bf3c0: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:enable
< │ │ │ -001bf400: 7072 653e 3c63 6f64 653e 696e 636c 7564 pre>includ │ │ │ -001bf410: 6520 696e 7374 616c 6c5f 6175 6469 740a e install_audit. │ │ │ -001bf420: 0a63 6c61 7373 2069 6e73 7461 6c6c 5f61 .class install_a │ │ │ -001bf430: 7564 6974 207b 0a20 2070 6163 6b61 6765 udit {. package │ │ │ -001bf440: 207b 2027 6175 6469 7427 3a0a 2020 2020 { 'audit':. │ │ │ -001bf450: 656e 7375 7265 203d 2667 743b 2027 696e ensure => 'in │ │ │ -001bf460: 7374 616c 6c65 6427 2c0a 2020 7d0a 7d0a stalled',. }.}. │ │ │ -001bf470: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64 │ │ │ -001bf520: 5265 6d65 6469 6174 696f 6e20 416e 7369 Remediation Ansi │ │ │ -001bf530: 626c 6520 736e 6970 7065 7420 e287 b23c ble snippet ...< │ │ │ -001bf540: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
< │ │ │ -001bf610: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -001bf620: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
-
│ │ │ -001bf670: 206e 616d 653a 2047 6174 6865 7220 7468   name: Gather th
│ │ │ -001bf680: 6520 7061 636b 6167 6520 6661 6374 730a  e package facts.
│ │ │ -001bf690: 2020 7061 636b 6167 655f 6661 6374 733a    package_facts:
│ │ │ -001bf6a0: 0a20 2020 206d 616e 6167 6572 3a20 6175  .    manager: au
│ │ │ -001bf6b0: 746f 0a20 2074 6167 733a 0a20 202d 204e  to.  tags:.  - N
│ │ │ -001bf6c0: 4953 542d 3830 302d 3533 2d41 432d 3728  IST-800-53-AC-7(
│ │ │ -001bf6d0: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ -001bf6e0: 3533 2d41 552d 3132 2832 290a 2020 2d20  53-AU-12(2).  - 
│ │ │ -001bf6f0: 4e49 5354 2d38 3030 2d35 332d 4155 2d31  NIST-800-53-AU-1
│ │ │ -001bf700: 340a 2020 2d20 4e49 5354 2d38 3030 2d35  4.  - NIST-800-5
│ │ │ -001bf710: 332d 4155 2d32 2861 290a 2020 2d20 4e49  3-AU-2(a).  - NI
│ │ │ -001bf720: 5354 2d38 3030 2d35 332d 4155 2d37 2831  ST-800-53-AU-7(1
│ │ │ -001bf730: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -001bf740: 332d 4155 2d37 2832 290a 2020 2d20 4e49  3-AU-7(2).  - NI
│ │ │ -001bf750: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ -001bf760: 290a 2020 2d20 5043 492d 4453 532d 5265  ).  - PCI-DSS-Re
│ │ │ -001bf770: 712d 3130 2e31 0a20 202d 2050 4349 2d44  q-10.1.  - PCI-D
│ │ │ -001bf780: 5353 7634 2d31 302e 320a 2020 2d20 5043  SSv4-10.2.  - PC
│ │ │ -001bf790: 492d 4453 5376 342d 3130 2e32 2e31 0a20  I-DSSv4-10.2.1. 
│ │ │ -001bf7a0: 202d 2065 6e61 626c 655f 7374 7261 7465   - enable_strate
│ │ │ -001bf7b0: 6779 0a20 202d 206c 6f77 5f63 6f6d 706c  gy.  - low_compl
│ │ │ -001bf7c0: 6578 6974 790a 2020 2d20 6c6f 775f 6469  exity.  - low_di
│ │ │ -001bf7d0: 7372 7570 7469 6f6e 0a20 202d 206d 6564  sruption.  - med
│ │ │ -001bf7e0: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ -001bf7f0: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ -001bf800: 640a 2020 2d20 7061 636b 6167 655f 6175  d.  - package_au
│ │ │ -001bf810: 6469 745f 696e 7374 616c 6c65 640a 0a2d  dit_installed..-
│ │ │ -001bf820: 206e 616d 653a 2045 6e73 7572 6520 6175   name: Ensure au
│ │ │ -001bf830: 6469 7420 6973 2069 6e73 7461 6c6c 6564  dit is installed
│ │ │ -001bf840: 0a20 2061 6e73 6962 6c65 2e62 7569 6c74  .  ansible.built
│ │ │ -001bf850: 696e 2e70 6163 6b61 6765 3a0a 2020 2020  in.package:.    
│ │ │ -001bf860: 6e61 6d65 3a20 6175 6469 740a 2020 2020  name: audit.    
│ │ │ -001bf870: 7374 6174 653a 2070 7265 7365 6e74 0a20  state: present. 
│ │ │ -001bf880: 2077 6865 6e3a 2027 226b 6572 6e65 6c22   when: '"kernel"
│ │ │ -001bf890: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001bf8a0: 732e 7061 636b 6167 6573 270a 2020 7461  s.packages'.  ta
│ │ │ -001bf8b0: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030  gs:.  - NIST-800
│ │ │ -001bf8c0: 2d35 332d 4143 2d37 2861 290a 2020 2d20  -53-AC-7(a).  - 
│ │ │ -001bf8d0: 4e49 5354 2d38 3030 2d35 332d 4155 2d31  NIST-800-53-AU-1
│ │ │ -001bf8e0: 3228 3229 0a20 202d 204e 4953 542d 3830  2(2).  - NIST-80
│ │ │ -001bf8f0: 302d 3533 2d41 552d 3134 0a20 202d 204e  0-53-AU-14.  - N
│ │ │ -001bf900: 4953 542d 3830 302d 3533 2d41 552d 3228  IST-800-53-AU-2(
│ │ │ -001bf910: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ -001bf920: 3533 2d41 552d 3728 3129 0a20 202d 204e  53-AU-7(1).  - N
│ │ │ -001bf930: 4953 542d 3830 302d 3533 2d41 552d 3728  IST-800-53-AU-7(
│ │ │ -001bf940: 3229 0a20 202d 204e 4953 542d 3830 302d  2).  - NIST-800-
│ │ │ -001bf950: 3533 2d43 4d2d 3628 6129 0a20 202d 2050  53-CM-6(a).  - P
│ │ │ -001bf960: 4349 2d44 5353 2d52 6571 2d31 302e 310a  CI-DSS-Req-10.1.
│ │ │ -001bf970: 2020 2d20 5043 492d 4453 5376 342d 3130    - PCI-DSSv4-10
│ │ │ -001bf980: 2e32 0a20 202d 2050 4349 2d44 5353 7634  .2.  - PCI-DSSv4
│ │ │ -001bf990: 2d31 302e 322e 310a 2020 2d20 656e 6162  -10.2.1.  - enab
│ │ │ -001bf9a0: 6c65 5f73 7472 6174 6567 790a 2020 2d20  le_strategy.  - 
│ │ │ -001bf9b0: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ -001bf9c0: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ -001bf9d0: 6e0a 2020 2d20 6d65 6469 756d 5f73 6576  n.  - medium_sev
│ │ │ -001bf9e0: 6572 6974 790a 2020 2d20 6e6f 5f72 6562  erity.  - no_reb
│ │ │ -001bf9f0: 6f6f 745f 6e65 6564 6564 0a20 202d 2070  oot_needed.  - p
│ │ │ -001bfa00: 6163 6b61 6765 5f61 7564 6974 5f69 6e73  ackage_audit_ins
│ │ │ -001bfa10: 7461 6c6c 6564 0a3c 2f63 6f64 653e 3c2f  talled.
< │ │ │ +001bf250: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +001bf260: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c
Complexity:low
Disrup │ │ │ -001bf5f0: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -001bf600: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -001bf640: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ -001bf650: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Complexity │ │ │ +001bf220: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
D │ │ │ +001bf240: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:
Reboot:< │ │ │ +001bf270: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>false
S │ │ │ +001bf290: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:enable
- name: Gath
│ │ │ +001bf2d0: 6572 2074 6865 2070 6163 6b61 6765 2066  er the package f
│ │ │ +001bf2e0: 6163 7473 0a20 2070 6163 6b61 6765 5f66  acts.  package_f
│ │ │ +001bf2f0: 6163 7473 3a0a 2020 2020 6d61 6e61 6765  acts:.    manage
│ │ │ +001bf300: 723a 2061 7574 6f0a 2020 7461 6773 3a0a  r: auto.  tags:.
│ │ │ +001bf310: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001bf320: 4143 2d37 2861 290a 2020 2d20 4e49 5354  AC-7(a).  - NIST
│ │ │ +001bf330: 2d38 3030 2d35 332d 4155 2d31 3228 3229  -800-53-AU-12(2)
│ │ │ +001bf340: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001bf350: 2d41 552d 3134 0a20 202d 204e 4953 542d  -AU-14.  - NIST-
│ │ │ +001bf360: 3830 302d 3533 2d41 552d 3228 6129 0a20  800-53-AU-2(a). 
│ │ │ +001bf370: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ +001bf380: 552d 3728 3129 0a20 202d 204e 4953 542d  U-7(1).  - NIST-
│ │ │ +001bf390: 3830 302d 3533 2d41 552d 3728 3229 0a20  800-53-AU-7(2). 
│ │ │ +001bf3a0: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +001bf3b0: 4d2d 3628 6129 0a20 202d 2050 4349 2d44  M-6(a).  - PCI-D
│ │ │ +001bf3c0: 5353 2d52 6571 2d31 302e 310a 2020 2d20  SS-Req-10.1.  - 
│ │ │ +001bf3d0: 5043 492d 4453 5376 342d 3130 2e32 0a20  PCI-DSSv4-10.2. 
│ │ │ +001bf3e0: 202d 2050 4349 2d44 5353 7634 2d31 302e   - PCI-DSSv4-10.
│ │ │ +001bf3f0: 322e 310a 2020 2d20 656e 6162 6c65 5f73  2.1.  - enable_s
│ │ │ +001bf400: 7472 6174 6567 790a 2020 2d20 6c6f 775f  trategy.  - low_
│ │ │ +001bf410: 636f 6d70 6c65 7869 7479 0a20 202d 206c  complexity.  - l
│ │ │ +001bf420: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ +001bf430: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ +001bf440: 790a 2020 2d20 6e6f 5f72 6562 6f6f 745f  y.  - no_reboot_
│ │ │ +001bf450: 6e65 6564 6564 0a20 202d 2070 6163 6b61  needed.  - packa
│ │ │ +001bf460: 6765 5f61 7564 6974 5f69 6e73 7461 6c6c  ge_audit_install
│ │ │ +001bf470: 6564 0a0a 2d20 6e61 6d65 3a20 456e 7375  ed..- name: Ensu
│ │ │ +001bf480: 7265 2061 7564 6974 2069 7320 696e 7374  re audit is inst
│ │ │ +001bf490: 616c 6c65 640a 2020 616e 7369 626c 652e  alled.  ansible.
│ │ │ +001bf4a0: 6275 696c 7469 6e2e 7061 636b 6167 653a  builtin.package:
│ │ │ +001bf4b0: 0a20 2020 206e 616d 653a 2061 7564 6974  .    name: audit
│ │ │ +001bf4c0: 0a20 2020 2073 7461 7465 3a20 7072 6573  .    state: pres
│ │ │ +001bf4d0: 656e 740a 2020 7768 656e 3a20 2722 6b65  ent.  when: '"ke
│ │ │ +001bf4e0: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ +001bf4f0: 5f66 6163 7473 2e70 6163 6b61 6765 7327  _facts.packages'
│ │ │ +001bf500: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ +001bf510: 542d 3830 302d 3533 2d41 432d 3728 6129  T-800-53-AC-7(a)
│ │ │ +001bf520: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001bf530: 2d41 552d 3132 2832 290a 2020 2d20 4e49  -AU-12(2).  - NI
│ │ │ +001bf540: 5354 2d38 3030 2d35 332d 4155 2d31 340a  ST-800-53-AU-14.
│ │ │ +001bf550: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001bf560: 4155 2d32 2861 290a 2020 2d20 4e49 5354  AU-2(a).  - NIST
│ │ │ +001bf570: 2d38 3030 2d35 332d 4155 2d37 2831 290a  -800-53-AU-7(1).
│ │ │ +001bf580: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001bf590: 4155 2d37 2832 290a 2020 2d20 4e49 5354  AU-7(2).  - NIST
│ │ │ +001bf5a0: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ +001bf5b0: 2020 2d20 5043 492d 4453 532d 5265 712d    - PCI-DSS-Req-
│ │ │ +001bf5c0: 3130 2e31 0a20 202d 2050 4349 2d44 5353  10.1.  - PCI-DSS
│ │ │ +001bf5d0: 7634 2d31 302e 320a 2020 2d20 5043 492d  v4-10.2.  - PCI-
│ │ │ +001bf5e0: 4453 5376 342d 3130 2e32 2e31 0a20 202d  DSSv4-10.2.1.  -
│ │ │ +001bf5f0: 2065 6e61 626c 655f 7374 7261 7465 6779   enable_strategy
│ │ │ +001bf600: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ +001bf610: 6974 790a 2020 2d20 6c6f 775f 6469 7372  ity.  - low_disr
│ │ │ +001bf620: 7570 7469 6f6e 0a20 202d 206d 6564 6975  uption.  - mediu
│ │ │ +001bf630: 6d5f 7365 7665 7269 7479 0a20 202d 206e  m_severity.  - n
│ │ │ +001bf640: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ +001bf650: 2020 2d20 7061 636b 6167 655f 6175 6469    - package_audi
│ │ │ +001bf660: 745f 696e 7374 616c 6c65 640a 3c2f 636f  t_installed.
< │ │ │ +001bf680: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ +001bf690: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ +001bf6a0: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ +001bf6b0: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ +001bf6c0: 6434 3733 2220 7461 6269 6e64 6578 3d22 d473" tabindex=" │ │ │ +001bf6d0: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ +001bf6e0: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ +001bf6f0: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ +001bf700: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ +001bf710: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ +001bf720: 6469 6174 696f 6e20 5075 7070 6574 2073 diation Puppet s │ │ │ +001bf730: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ +001bf7c0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +001bf7d0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ +001bf7f0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ +001bf810: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +001bf820: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:enable
< │ │ │ +001bf860: 7072 653e 3c63 6f64 653e 696e 636c 7564 pre>includ │ │ │ +001bf870: 6520 696e 7374 616c 6c5f 6175 6469 740a e install_audit. │ │ │ +001bf880: 0a63 6c61 7373 2069 6e73 7461 6c6c 5f61 .class install_a │ │ │ +001bf890: 7564 6974 207b 0a20 2070 6163 6b61 6765 udit {. package │ │ │ +001bf8a0: 207b 2027 6175 6469 7427 3a0a 2020 2020 { 'audit':. │ │ │ +001bf8b0: 656e 7375 7265 203d 2667 743b 2027 696e ensure => 'in │ │ │ +001bf8c0: 7374 616c 6c65 6427 2c0a 2020 7d0a 7d0a stalled',. }.}. │ │ │ +001bf8d0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64 │ │ │ +001bf980: 5265 6d65 6469 6174 696f 6e20 4f53 4275 Remediation OSBu │ │ │ +001bf990: 696c 6420 426c 7565 7072 696e 7420 736e ild Blueprint sn │ │ │ +001bf9a0: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
.[[p
│ │ │ +001bf9f0: 6163 6b61 6765 735d 5d0a 6e61 6d65 203d  ackages]].name =
│ │ │ +001bfa00: 2022 6175 6469 7422 0a76 6572 7369 6f6e   "audit".version
│ │ │ +001bfa10: 203d 2022 2a22 0a3c 2f63 6f64 653e 3c2f   = "*".
│ │ │ 001bfa30: 3c2f 7464 3e3c 2f74 723e 3c2f 7462 6f64 < │ │ │ 001bfa50: 2f74 723e 3c74 7220 6461 7461 2d74 742d /tr>R │ │ │ -001c1300: 656d 6564 6961 7469 6f6e 204f 5342 7569 emediation OSBui │ │ │ -001c1310: 6c64 2042 6c75 6570 7269 6e74 2073 6e69 ld Blueprint sni │ │ │ -001c1320: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -001c1330: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -001c1360: 3c70 7265 3e3c 636f 6465 3e0a 5b63 7573
.[cus
│ │ │ -001c1370: 746f 6d69 7a61 7469 6f6e 732e 7365 7276  tomizations.serv
│ │ │ -001c1380: 6963 6573 5d0a 656e 6162 6c65 6420 3d20  ices].enabled = 
│ │ │ -001c1390: 5b22 6175 6469 7464 225d 0a3c 2f63 6f64  ["auditd"].
Remed │ │ │ -001c1450: 6961 7469 6f6e 2050 7570 7065 7420 736e iation Puppet sn │ │ │ -001c1460: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ -001c1510: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ -001c1530: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ -001c1560: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ -001c14f0: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ -001c1500: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ -001c1520: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ -001c1540: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -001c1550: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:enable

include │ │ │ -001c15a0: 2065 6e61 626c 655f 6175 6469 7464 0a0a enable_auditd.. │ │ │ -001c15b0: 636c 6173 7320 656e 6162 6c65 5f61 7564 class enable_aud │ │ │ -001c15c0: 6974 6420 7b0a 2020 7365 7276 6963 6520 itd {. service │ │ │ -001c15d0: 7b27 6175 6469 7464 273a 0a20 2020 2065 {'auditd':. e │ │ │ -001c15e0: 6e61 626c 6520 3d26 6774 3b20 7472 7565 nable => true │ │ │ -001c15f0: 2c0a 2020 2020 656e 7375 7265 203d 2667 ,. ensure =&g │ │ │ -001c1600: 743b 2027 7275 6e6e 696e 6727 2c0a 2020 t; 'running',. │ │ │ -001c1610: 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70 7265 }.}.

Remediation │ │ │ -001c16d0: 416e 7369 626c 6520 736e 6970 7065 7420 Ansible snippet │ │ │ -001c16e0: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
Complexity: │ │ │ -001c1770: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ -001c1790: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:low< │ │ │ -001c17b0: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:falseSt │ │ │ -001c17e0: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ -001c17f0: 656e 6162 6c65 3c2f 7464 3e3c 2f74 723e enable │ │ │ -001c1800: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
- name: Gathe
│ │ │ -001c1820: 7220 7468 6520 7061 636b 6167 6520 6661  r the package fa
│ │ │ -001c1830: 6374 730a 2020 7061 636b 6167 655f 6661  cts.  package_fa
│ │ │ -001c1840: 6374 733a 0a20 2020 206d 616e 6167 6572  cts:.    manager
│ │ │ -001c1850: 3a20 6175 746f 0a20 2074 6167 733a 0a20  : auto.  tags:. 
│ │ │ -001c1860: 202d 2043 4a49 532d 352e 342e 312e 310a   - CJIS-5.4.1.1.
│ │ │ -001c1870: 2020 2d20 4e49 5354 2d38 3030 2d31 3731    - NIST-800-171
│ │ │ -001c1880: 2d33 2e33 2e31 0a20 202d 204e 4953 542d  -3.3.1.  - NIST-
│ │ │ -001c1890: 3830 302d 3137 312d 332e 332e 320a 2020  800-171-3.3.2.  
│ │ │ -001c18a0: 2d20 4e49 5354 2d38 3030 2d31 3731 2d33  - NIST-800-171-3
│ │ │ -001c18b0: 2e33 2e36 0a20 202d 204e 4953 542d 3830  .3.6.  - NIST-80
│ │ │ -001c18c0: 302d 3533 2d41 432d 3228 6729 0a20 202d  0-53-AC-2(g).  -
│ │ │ -001c18d0: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ -001c18e0: 3628 3929 0a20 202d 204e 4953 542d 3830  6(9).  - NIST-80
│ │ │ -001c18f0: 302d 3533 2d41 552d 3130 0a20 202d 204e  0-53-AU-10.  - N
│ │ │ -001c1900: 4953 542d 3830 302d 3533 2d41 552d 3132  IST-800-53-AU-12
│ │ │ -001c1910: 2863 290a 2020 2d20 4e49 5354 2d38 3030  (c).  - NIST-800
│ │ │ -001c1920: 2d35 332d 4155 2d31 3428 3129 0a20 202d  -53-AU-14(1).  -
│ │ │ -001c1930: 204e 4953 542d 3830 302d 3533 2d41 552d   NIST-800-53-AU-
│ │ │ -001c1940: 3228 6429 0a20 202d 204e 4953 542d 3830  2(d).  - NIST-80
│ │ │ -001c1950: 302d 3533 2d41 552d 330a 2020 2d20 4e49  0-53-AU-3.  - NI
│ │ │ -001c1960: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ -001c1970: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -001c1980: 332d 5349 2d34 2832 3329 0a20 202d 2050  3-SI-4(23).  - P
│ │ │ -001c1990: 4349 2d44 5353 2d52 6571 2d31 302e 310a  CI-DSS-Req-10.1.
│ │ │ -001c19a0: 2020 2d20 5043 492d 4453 5376 342d 3130    - PCI-DSSv4-10
│ │ │ -001c19b0: 2e32 0a20 202d 2050 4349 2d44 5353 7634  .2.  - PCI-DSSv4
│ │ │ -001c19c0: 2d31 302e 322e 310a 2020 2d20 656e 6162  -10.2.1.  - enab
│ │ │ -001c19d0: 6c65 5f73 7472 6174 6567 790a 2020 2d20  le_strategy.  - 
│ │ │ -001c19e0: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ -001c19f0: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ -001c1a00: 6e0a 2020 2d20 6d65 6469 756d 5f73 6576  n.  - medium_sev
│ │ │ -001c1a10: 6572 6974 790a 2020 2d20 6e6f 5f72 6562  erity.  - no_reb
│ │ │ -001c1a20: 6f6f 745f 6e65 6564 6564 0a20 202d 2073  oot_needed.  - s
│ │ │ -001c1a30: 6572 7669 6365 5f61 7564 6974 645f 656e  ervice_auditd_en
│ │ │ -001c1a40: 6162 6c65 640a 0a2d 206e 616d 653a 2045  abled..- name: E
│ │ │ -001c1a50: 6e61 626c 6520 6175 6469 7464 2053 6572  nable auditd Ser
│ │ │ -001c1a60: 7669 6365 202d 2045 6e61 626c 6520 7365  vice - Enable se
│ │ │ -001c1a70: 7276 6963 6520 6175 6469 7464 0a20 2062  rvice auditd.  b
│ │ │ -001c1a80: 6c6f 636b 3a0a 0a20 202d 206e 616d 653a  lock:..  - name:
│ │ │ -001c1a90: 2047 6174 6865 7220 7468 6520 7061 636b   Gather the pack
│ │ │ -001c1aa0: 6167 6520 6661 6374 730a 2020 2020 616e  age facts.    an
│ │ │ -001c1ab0: 7369 626c 652e 6275 696c 7469 6e2e 7061  sible.builtin.pa
│ │ │ -001c1ac0: 636b 6167 655f 6661 6374 733a 0a20 2020  ckage_facts:.   
│ │ │ -001c1ad0: 2020 206d 616e 6167 6572 3a20 6175 746f     manager: auto
│ │ │ -001c1ae0: 0a0a 2020 2d20 6e61 6d65 3a20 456e 6162  ..  - name: Enab
│ │ │ -001c1af0: 6c65 2061 7564 6974 6420 5365 7276 6963  le auditd Servic
│ │ │ -001c1b00: 6520 2d20 456e 6162 6c65 2053 6572 7669  e - Enable Servi
│ │ │ -001c1b10: 6365 2061 7564 6974 640a 2020 2020 616e  ce auditd.    an
│ │ │ -001c1b20: 7369 626c 652e 6275 696c 7469 6e2e 7379  sible.builtin.sy
│ │ │ -001c1b30: 7374 656d 643a 0a20 2020 2020 206e 616d  stemd:.      nam
│ │ │ -001c1b40: 653a 2061 7564 6974 640a 2020 2020 2020  e: auditd.      
│ │ │ -001c1b50: 656e 6162 6c65 643a 2074 7275 650a 2020  enabled: true.  
│ │ │ -001c1b60: 2020 2020 7374 6174 653a 2073 7461 7274      state: start
│ │ │ -001c1b70: 6564 0a20 2020 2020 206d 6173 6b65 643a  ed.      masked:
│ │ │ -001c1b80: 2066 616c 7365 0a20 2020 2077 6865 6e3a   false.    when:
│ │ │ -001c1b90: 0a20 2020 202d 2027 2261 7564 6974 2220  .    - '"audit" 
│ │ │ -001c1ba0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001c1bb0: 2e70 6163 6b61 6765 7327 0a20 2074 6167  .packages'.  tag
│ │ │ -001c1bc0: 733a 0a20 202d 2043 4a49 532d 352e 342e  s:.  - CJIS-5.4.
│ │ │ -001c1bd0: 312e 310a 2020 2d20 4e49 5354 2d38 3030  1.1.  - NIST-800
│ │ │ -001c1be0: 2d31 3731 2d33 2e33 2e31 0a20 202d 204e  -171-3.3.1.  - N
│ │ │ -001c1bf0: 4953 542d 3830 302d 3137 312d 332e 332e  IST-800-171-3.3.
│ │ │ -001c1c00: 320a 2020 2d20 4e49 5354 2d38 3030 2d31  2.  - NIST-800-1
│ │ │ -001c1c10: 3731 2d33 2e33 2e36 0a20 202d 204e 4953  71-3.3.6.  - NIS
│ │ │ -001c1c20: 542d 3830 302d 3533 2d41 432d 3228 6729  T-800-53-AC-2(g)
│ │ │ -001c1c30: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001c1c40: 2d41 432d 3628 3929 0a20 202d 204e 4953  -AC-6(9).  - NIS
│ │ │ -001c1c50: 542d 3830 302d 3533 2d41 552d 3130 0a20  T-800-53-AU-10. 
│ │ │ -001c1c60: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ -001c1c70: 552d 3132 2863 290a 2020 2d20 4e49 5354  U-12(c).  - NIST
│ │ │ -001c1c80: 2d38 3030 2d35 332d 4155 2d31 3428 3129  -800-53-AU-14(1)
│ │ │ -001c1c90: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001c1ca0: 2d41 552d 3228 6429 0a20 202d 204e 4953  -AU-2(d).  - NIS
│ │ │ -001c1cb0: 542d 3830 302d 3533 2d41 552d 330a 2020  T-800-53-AU-3.  
│ │ │ -001c1cc0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -001c1cd0: 2d36 2861 290a 2020 2d20 4e49 5354 2d38  -6(a).  - NIST-8
│ │ │ -001c1ce0: 3030 2d35 332d 5349 2d34 2832 3329 0a20  00-53-SI-4(23). 
│ │ │ -001c1cf0: 202d 2050 4349 2d44 5353 2d52 6571 2d31   - PCI-DSS-Req-1
│ │ │ -001c1d00: 302e 310a 2020 2d20 5043 492d 4453 5376  0.1.  - PCI-DSSv
│ │ │ -001c1d10: 342d 3130 2e32 0a20 202d 2050 4349 2d44  4-10.2.  - PCI-D
│ │ │ -001c1d20: 5353 7634 2d31 302e 322e 310a 2020 2d20  SSv4-10.2.1.  - 
│ │ │ -001c1d30: 656e 6162 6c65 5f73 7472 6174 6567 790a  enable_strategy.
│ │ │ -001c1d40: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ -001c1d50: 7479 0a20 202d 206c 6f77 5f64 6973 7275  ty.  - low_disru
│ │ │ -001c1d60: 7074 696f 6e0a 2020 2d20 6d65 6469 756d  ption.  - medium
│ │ │ -001c1d70: 5f73 6576 6572 6974 790a 2020 2d20 6e6f  _severity.  - no
│ │ │ -001c1d80: 5f72 6562 6f6f 745f 6e65 6564 6564 0a20  _reboot_needed. 
│ │ │ -001c1d90: 202d 2073 6572 7669 6365 5f61 7564 6974   - service_audit
│ │ │ -001c1da0: 645f 656e 6162 6c65 640a 2020 2d20 7370  d_enabled.  - sp
│ │ │ -001c1db0: 6563 6961 6c5f 7365 7276 6963 655f 626c  ecial_service_bl
│ │ │ -001c1dc0: 6f63 6b0a 2020 7768 656e 3a0a 2020 2d20  ock.  when:.  - 
│ │ │ -001c1dd0: 2722 6b65 726e 656c 2220 696e 2061 6e73  '"kernel" in ans
│ │ │ -001c1de0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001c1df0: 6765 7327 0a20 202d 2027 2261 7564 6974  ges'.  - '"audit
│ │ │ -001c1e00: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001c1e10: 7473 2e70 6163 6b61 6765 7327 0a3c 2f63  ts.packages'.
│ │ │ +001c13b0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
- 
│ │ │ +001c1450: 6e61 6d65 3a20 4761 7468 6572 2074 6865  name: Gather the
│ │ │ +001c1460: 2070 6163 6b61 6765 2066 6163 7473 0a20   package facts. 
│ │ │ +001c1470: 2070 6163 6b61 6765 5f66 6163 7473 3a0a   package_facts:.
│ │ │ +001c1480: 2020 2020 6d61 6e61 6765 723a 2061 7574      manager: aut
│ │ │ +001c1490: 6f0a 2020 7461 6773 3a0a 2020 2d20 434a  o.  tags:.  - CJ
│ │ │ +001c14a0: 4953 2d35 2e34 2e31 2e31 0a20 202d 204e  IS-5.4.1.1.  - N
│ │ │ +001c14b0: 4953 542d 3830 302d 3137 312d 332e 332e  IST-800-171-3.3.
│ │ │ +001c14c0: 310a 2020 2d20 4e49 5354 2d38 3030 2d31  1.  - NIST-800-1
│ │ │ +001c14d0: 3731 2d33 2e33 2e32 0a20 202d 204e 4953  71-3.3.2.  - NIS
│ │ │ +001c14e0: 542d 3830 302d 3137 312d 332e 332e 360a  T-800-171-3.3.6.
│ │ │ +001c14f0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001c1500: 4143 2d32 2867 290a 2020 2d20 4e49 5354  AC-2(g).  - NIST
│ │ │ +001c1510: 2d38 3030 2d35 332d 4143 2d36 2839 290a  -800-53-AC-6(9).
│ │ │ +001c1520: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001c1530: 4155 2d31 300a 2020 2d20 4e49 5354 2d38  AU-10.  - NIST-8
│ │ │ +001c1540: 3030 2d35 332d 4155 2d31 3228 6329 0a20  00-53-AU-12(c). 
│ │ │ +001c1550: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ +001c1560: 552d 3134 2831 290a 2020 2d20 4e49 5354  U-14(1).  - NIST
│ │ │ +001c1570: 2d38 3030 2d35 332d 4155 2d32 2864 290a  -800-53-AU-2(d).
│ │ │ +001c1580: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001c1590: 4155 2d33 0a20 202d 204e 4953 542d 3830  AU-3.  - NIST-80
│ │ │ +001c15a0: 302d 3533 2d43 4d2d 3628 6129 0a20 202d  0-53-CM-6(a).  -
│ │ │ +001c15b0: 204e 4953 542d 3830 302d 3533 2d53 492d   NIST-800-53-SI-
│ │ │ +001c15c0: 3428 3233 290a 2020 2d20 5043 492d 4453  4(23).  - PCI-DS
│ │ │ +001c15d0: 532d 5265 712d 3130 2e31 0a20 202d 2050  S-Req-10.1.  - P
│ │ │ +001c15e0: 4349 2d44 5353 7634 2d31 302e 320a 2020  CI-DSSv4-10.2.  
│ │ │ +001c15f0: 2d20 5043 492d 4453 5376 342d 3130 2e32  - PCI-DSSv4-10.2
│ │ │ +001c1600: 2e31 0a20 202d 2065 6e61 626c 655f 7374  .1.  - enable_st
│ │ │ +001c1610: 7261 7465 6779 0a20 202d 206c 6f77 5f63  rategy.  - low_c
│ │ │ +001c1620: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f  omplexity.  - lo
│ │ │ +001c1630: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ +001c1640: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ +001c1650: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ +001c1660: 6565 6465 640a 2020 2d20 7365 7276 6963  eeded.  - servic
│ │ │ +001c1670: 655f 6175 6469 7464 5f65 6e61 626c 6564  e_auditd_enabled
│ │ │ +001c1680: 0a0a 2d20 6e61 6d65 3a20 456e 6162 6c65  ..- name: Enable
│ │ │ +001c1690: 2061 7564 6974 6420 5365 7276 6963 6520   auditd Service 
│ │ │ +001c16a0: 2d20 456e 6162 6c65 2073 6572 7669 6365  - Enable service
│ │ │ +001c16b0: 2061 7564 6974 640a 2020 626c 6f63 6b3a   auditd.  block:
│ │ │ +001c16c0: 0a0a 2020 2d20 6e61 6d65 3a20 4761 7468  ..  - name: Gath
│ │ │ +001c16d0: 6572 2074 6865 2070 6163 6b61 6765 2066  er the package f
│ │ │ +001c16e0: 6163 7473 0a20 2020 2061 6e73 6962 6c65  acts.    ansible
│ │ │ +001c16f0: 2e62 7569 6c74 696e 2e70 6163 6b61 6765  .builtin.package
│ │ │ +001c1700: 5f66 6163 7473 3a0a 2020 2020 2020 6d61  _facts:.      ma
│ │ │ +001c1710: 6e61 6765 723a 2061 7574 6f0a 0a20 202d  nager: auto..  -
│ │ │ +001c1720: 206e 616d 653a 2045 6e61 626c 6520 6175   name: Enable au
│ │ │ +001c1730: 6469 7464 2053 6572 7669 6365 202d 2045  ditd Service - E
│ │ │ +001c1740: 6e61 626c 6520 5365 7276 6963 6520 6175  nable Service au
│ │ │ +001c1750: 6469 7464 0a20 2020 2061 6e73 6962 6c65  ditd.    ansible
│ │ │ +001c1760: 2e62 7569 6c74 696e 2e73 7973 7465 6d64  .builtin.systemd
│ │ │ +001c1770: 3a0a 2020 2020 2020 6e61 6d65 3a20 6175  :.      name: au
│ │ │ +001c1780: 6469 7464 0a20 2020 2020 2065 6e61 626c  ditd.      enabl
│ │ │ +001c1790: 6564 3a20 7472 7565 0a20 2020 2020 2073  ed: true.      s
│ │ │ +001c17a0: 7461 7465 3a20 7374 6172 7465 640a 2020  tate: started.  
│ │ │ +001c17b0: 2020 2020 6d61 736b 6564 3a20 6661 6c73      masked: fals
│ │ │ +001c17c0: 650a 2020 2020 7768 656e 3a0a 2020 2020  e.    when:.    
│ │ │ +001c17d0: 2d20 2722 6175 6469 7422 2069 6e20 616e  - '"audit" in an
│ │ │ +001c17e0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001c17f0: 6167 6573 270a 2020 7461 6773 3a0a 2020  ages'.  tags:.  
│ │ │ +001c1800: 2d20 434a 4953 2d35 2e34 2e31 2e31 0a20  - CJIS-5.4.1.1. 
│ │ │ +001c1810: 202d 204e 4953 542d 3830 302d 3137 312d   - NIST-800-171-
│ │ │ +001c1820: 332e 332e 310a 2020 2d20 4e49 5354 2d38  3.3.1.  - NIST-8
│ │ │ +001c1830: 3030 2d31 3731 2d33 2e33 2e32 0a20 202d  00-171-3.3.2.  -
│ │ │ +001c1840: 204e 4953 542d 3830 302d 3137 312d 332e   NIST-800-171-3.
│ │ │ +001c1850: 332e 360a 2020 2d20 4e49 5354 2d38 3030  3.6.  - NIST-800
│ │ │ +001c1860: 2d35 332d 4143 2d32 2867 290a 2020 2d20  -53-AC-2(g).  - 
│ │ │ +001c1870: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ +001c1880: 2839 290a 2020 2d20 4e49 5354 2d38 3030  (9).  - NIST-800
│ │ │ +001c1890: 2d35 332d 4155 2d31 300a 2020 2d20 4e49  -53-AU-10.  - NI
│ │ │ +001c18a0: 5354 2d38 3030 2d35 332d 4155 2d31 3228  ST-800-53-AU-12(
│ │ │ +001c18b0: 6329 0a20 202d 204e 4953 542d 3830 302d  c).  - NIST-800-
│ │ │ +001c18c0: 3533 2d41 552d 3134 2831 290a 2020 2d20  53-AU-14(1).  - 
│ │ │ +001c18d0: 4e49 5354 2d38 3030 2d35 332d 4155 2d32  NIST-800-53-AU-2
│ │ │ +001c18e0: 2864 290a 2020 2d20 4e49 5354 2d38 3030  (d).  - NIST-800
│ │ │ +001c18f0: 2d35 332d 4155 2d33 0a20 202d 204e 4953  -53-AU-3.  - NIS
│ │ │ +001c1900: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ +001c1910: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001c1920: 2d53 492d 3428 3233 290a 2020 2d20 5043  -SI-4(23).  - PC
│ │ │ +001c1930: 492d 4453 532d 5265 712d 3130 2e31 0a20  I-DSS-Req-10.1. 
│ │ │ +001c1940: 202d 2050 4349 2d44 5353 7634 2d31 302e   - PCI-DSSv4-10.
│ │ │ +001c1950: 320a 2020 2d20 5043 492d 4453 5376 342d  2.  - PCI-DSSv4-
│ │ │ +001c1960: 3130 2e32 2e31 0a20 202d 2065 6e61 626c  10.2.1.  - enabl
│ │ │ +001c1970: 655f 7374 7261 7465 6779 0a20 202d 206c  e_strategy.  - l
│ │ │ +001c1980: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ +001c1990: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ +001c19a0: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ +001c19b0: 7269 7479 0a20 202d 206e 6f5f 7265 626f  rity.  - no_rebo
│ │ │ +001c19c0: 6f74 5f6e 6565 6465 640a 2020 2d20 7365  ot_needed.  - se
│ │ │ +001c19d0: 7276 6963 655f 6175 6469 7464 5f65 6e61  rvice_auditd_ena
│ │ │ +001c19e0: 626c 6564 0a20 202d 2073 7065 6369 616c  bled.  - special
│ │ │ +001c19f0: 5f73 6572 7669 6365 5f62 6c6f 636b 0a20  _service_block. 
│ │ │ +001c1a00: 2077 6865 6e3a 0a20 202d 2027 226b 6572   when:.  - '"ker
│ │ │ +001c1a10: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ +001c1a20: 6661 6374 732e 7061 636b 6167 6573 270a  facts.packages'.
│ │ │ +001c1a30: 2020 2d20 2722 6175 6469 7422 2069 6e20    - '"audit" in 
│ │ │ +001c1a40: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001c1a50: 636b 6167 6573 270a 3c2f 636f 6465 3e3c  ckages'.<
│ │ │ +001c1a60: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>Remediat
│ │ │ +001c1b10: 696f 6e20 5075 7070 6574 2073 6e69 7070  ion Puppet snipp
│ │ │ +001c1b20: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64  et ...
│ │ │ +001c1ba0: 3c74 723e 3c74 683e 436f 6d70 6c65 7869
< │ │ │ +001c1c30: 7464 3e65 6e61 626c 653c 2f74 643e 3c2f td>enable
│ │ │ +001c13a0: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +001c13d0: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +001c13e0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +001c1420: 793a 3c2f 7468 3e3c 7464 3e65 6e61 626c y:enabl │ │ │ +001c1430: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
Complexi │ │ │ +001c1bb0: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +001c1bc0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Disruption:low
Reboot │ │ │ +001c1c00: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +001c1c10: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Strategy:
│ │ │ +001c1c50: 3c63 6f64 653e 696e 636c 7564 6520 656e  include en
│ │ │ +001c1c60: 6162 6c65 5f61 7564 6974 640a 0a63 6c61  able_auditd..cla
│ │ │ +001c1c70: 7373 2065 6e61 626c 655f 6175 6469 7464  ss enable_auditd
│ │ │ +001c1c80: 207b 0a20 2073 6572 7669 6365 207b 2761   {.  service {'a
│ │ │ +001c1c90: 7564 6974 6427 3a0a 2020 2020 656e 6162  uditd':.    enab
│ │ │ +001c1ca0: 6c65 203d 2667 743b 2074 7275 652c 0a20  le => true,. 
│ │ │ +001c1cb0: 2020 2065 6e73 7572 6520 3d26 6774 3b20     ensure => 
│ │ │ +001c1cc0: 2772 756e 6e69 6e67 272c 0a20 207d 0a7d  'running',.  }.}
│ │ │ +001c1cd0: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation OSB │ │ │ +001c1d90: 7569 6c64 2042 6c75 6570 7269 6e74 2073 uild Blueprint s │ │ │ +001c1da0: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
.[c
│ │ │ +001c1df0: 7573 746f 6d69 7a61 7469 6f6e 732e 7365  ustomizations.se
│ │ │ +001c1e00: 7276 6963 6573 5d0a 656e 6162 6c65 6420  rvices].enabled 
│ │ │ +001c1e10: 3d20 5b22 6175 6469 7464 225d 0a3c 2f63  = ["auditd"].
│ │ │ 001c1e30: 3c2f 6469 763e 3c2f 7464 3e3c 2f74 723e
│ │ │ 001c1e40: 3c2f 7462 6f64 793e 3c2f 7461 626c 653e │ │ │ 001c1e50: 3c2f 7464 3e3c 2f74 723e 3c74 7220 6461 '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 │ │ │ │ @@ -5079,31 +5079,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: │ │ │ │ @@ -5132,14 +5115,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 │ │ │ │ @@ -5242,31 +5242,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: │ │ │ │ @@ -5293,14 +5276,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 │ │ │ │ @@ -5316,31 +5316,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: │ │ │ │ @@ -5393,14 +5376,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 │ │ │ │ @@ -7496,31 +7496,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: │ │ │ │ @@ -7576,14 +7559,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. │ │ │ │ @@ -10579,31 +10579,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: │ │ │ │ @@ -10628,14 +10611,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 │ │ │ │ @@ -10939,31 +10939,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: │ │ │ │ @@ -11025,14 +11008,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 / │ │ │ │ @@ -11751,31 +11751,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: │ │ │ │ @@ -11802,14 +11785,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. │ │ │ │ @@ -13636,31 +13636,14 @@ │ │ │ │ Rationale: Emails can be used to notify designated personnel about important system events such as │ │ │ │ failures or warnings. │ │ │ │ Severity:  medium │ │ │ │ Rule ID: xccdf_org.ssgproject.content_rule_package_postfix_installed │ │ │ │ _h_i_p_a_a 164.312(a)(2)(ii) │ │ │ │ References: _o_s_-_s_r_g SRG-OS-000046-GPOS-00022 │ │ │ │ _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 = "postfix" │ │ │ │ -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_postfix │ │ │ │ - │ │ │ │ -class install_postfix { │ │ │ │ - package { 'postfix': │ │ │ │ - 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: │ │ │ │ @@ -13685,14 +13668,31 @@ │ │ │ │ - PCI-DSSv4-10.5.1 │ │ │ │ - enable_strategy │ │ │ │ - low_complexity │ │ │ │ - low_disruption │ │ │ │ - medium_severity │ │ │ │ - no_reboot_needed │ │ │ │ - package_postfix_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_postfix │ │ │ │ + │ │ │ │ +class install_postfix { │ │ │ │ + package { 'postfix': │ │ │ │ + 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 = "postfix" │ │ │ │ +version = "*" │ │ │ │ Group   NFS and RPC   Group contains 2 groups and 1 rule │ │ │ │ _[_r_e_f_]   The Network File System is a popular distributed filesystem for the Unix environment, and is │ │ │ │ very widely deployed. This section discusses the circumstances under which it is possible to disable │ │ │ │ NFS and its dependencies, and then details steps which should be taken to secure NFS's │ │ │ │ configuration. This section is relevant to systems operating as NFS clients, as well as to those │ │ │ │ operating as NFS servers. │ │ │ │ Group   Disable All NFS Services if Possible   Group contains 1 group and 1 rule │ │ │ │ @@ -13714,31 +13714,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: │ │ │ │ @@ -13792,14 +13775,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 │ │ │ │ @@ -13852,31 +13852,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: │ │ │ │ @@ -13903,14 +13886,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 │ │ │ │ @@ -14331,27 +14331,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: │ │ │ │ @@ -14383,14 +14370,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 │ │ │ │ @@ -14425,27 +14425,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: │ │ │ │ @@ -14456,14 +14443,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 │ │ │ │ @@ -14490,27 +14490,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: │ │ │ │ @@ -14522,14 +14509,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 │ │ │ │ @@ -14546,31 +14546,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: │ │ │ │ @@ -14625,14 +14608,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 │ │ │ │ @@ -16648,26 +16648,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 0600 /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: │ │ │ │ @@ -16731,14 +16719,26 @@ │ │ │ │ - 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 0600 /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 │ │ │ │ @@ -16775,23 +16775,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: │ │ │ │ @@ -16855,14 +16846,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 │ │ │ │ @@ -25636,31 +25636,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: │ │ │ │ @@ -25701,14 +25684,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 │ │ │ │ @@ -25754,31 +25754,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: │ │ │ │ @@ -25845,14 +25828,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 │ │ │ @@ -20296,209 +20296,209 @@ │ │ │ 0004f470: 6170 7365 2220 6461 7461 2d74 6172 6765 apse" data-targe │ │ │ 0004f480: 743d 2223 6964 3331 2220 7461 6269 6e64 t="#id31" tabind │ │ │ 0004f490: 6578 3d22 3022 2072 6f6c 653d 2262 7574 ex="0" role="but │ │ │ 0004f4a0: 746f 6e22 2061 7269 612d 6578 7061 6e64 ton" aria-expand │ │ │ 0004f4b0: 6564 3d22 6661 6c73 6522 2074 6974 6c65 ed="false" title │ │ │ 0004f4c0: 3d22 4163 7469 7661 7465 2074 6f20 7265 ="Activate to re │ │ │ 0004f4d0: 7665 616c 2220 6872 6566 3d22 2321 223e veal" href="#!"> │ │ │ -0004f4e0: 5265 6d65 6469 6174 696f 6e20 4f53 4275 Remediation OSBu │ │ │ -0004f4f0: 696c 6420 426c 7565 7072 696e 7420 736e ild Blueprint sn │ │ │ -0004f500: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ -0004f540: 3c70 7265 3e3c 636f 6465 3e0a 5b63 7573
.[cus
│ │ │ -0004f550: 746f 6d69 7a61 7469 6f6e 732e 7365 7276  tomizations.serv
│ │ │ -0004f560: 6963 6573 5d0a 6d61 736b 6564 203d 205b  ices].masked = [
│ │ │ -0004f570: 2261 7574 6f66 7322 5d0a 3c2f 636f 6465  "autofs"].
Remedia │ │ │ -0004f630: 7469 6f6e 2050 7570 7065 7420 736e 6970 tion Puppet snip │ │ │ -0004f640: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ -0004f650: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -0004f660: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -0004f670: 7365 2220 6964 3d22 6964 3332 223e 3c74 se" id="id32"> │ │ │ -0004f6c0: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ -0004f6d0: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -0004f6e0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ -0004f720: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -0004f730: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ -0004f750: 7464 3e65 6e61 626c 653c 2f74 643e 3c2f td>enable
│ │ │ -0004f770: 3c63 6f64 653e 696e 636c 7564 6520 6469  include di
│ │ │ -0004f780: 7361 626c 655f 6175 746f 6673 0a0a 636c  sable_autofs..cl
│ │ │ -0004f790: 6173 7320 6469 7361 626c 655f 6175 746f  ass disable_auto
│ │ │ -0004f7a0: 6673 207b 0a20 2073 6572 7669 6365 207b  fs {.  service {
│ │ │ -0004f7b0: 2761 7574 6f66 7327 3a0a 2020 2020 656e  'autofs':.    en
│ │ │ -0004f7c0: 6162 6c65 203d 2667 743b 2066 616c 7365  able => false
│ │ │ -0004f7d0: 2c0a 2020 2020 656e 7375 7265 203d 2667  ,.    ensure =&g
│ │ │ -0004f7e0: 743b 2027 7374 6f70 7065 6427 2c0a 2020  t; 'stopped',.  
│ │ │ -0004f7f0: 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70 7265  }.}.
Remediation A │ │ │ -0004f8b0: 6e73 6962 6c65 2073 6e69 7070 6574 20e2 nsible snippet . │ │ │ -0004f8c0: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
< │ │ │ -0004f940: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -0004f960: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -0004f9b0: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>< │ │ │ -0004f9e0: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
- name: Gather
│ │ │ -0004fa00: 2074 6865 2070 6163 6b61 6765 2066 6163   the package fac
│ │ │ -0004fa10: 7473 0a20 2070 6163 6b61 6765 5f66 6163  ts.  package_fac
│ │ │ -0004fa20: 7473 3a0a 2020 2020 6d61 6e61 6765 723a  ts:.    manager:
│ │ │ -0004fa30: 2061 7574 6f0a 2020 7461 6773 3a0a 2020   auto.  tags:.  
│ │ │ -0004fa40: 2d20 4e49 5354 2d38 3030 2d31 3731 2d33  - NIST-800-171-3
│ │ │ -0004fa50: 2e34 2e36 0a20 202d 204e 4953 542d 3830  .4.6.  - NIST-80
│ │ │ -0004fa60: 302d 3533 2d43 4d2d 3628 6129 0a20 202d  0-53-CM-6(a).  -
│ │ │ -0004fa70: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -0004fa80: 3728 6129 0a20 202d 204e 4953 542d 3830  7(a).  - NIST-80
│ │ │ -0004fa90: 302d 3533 2d43 4d2d 3728 6229 0a20 202d  0-53-CM-7(b).  -
│ │ │ -0004faa0: 204e 4953 542d 3830 302d 3533 2d4d 502d   NIST-800-53-MP-
│ │ │ -0004fab0: 370a 2020 2d20 6469 7361 626c 655f 7374  7.  - disable_st
│ │ │ -0004fac0: 7261 7465 6779 0a20 202d 206c 6f77 5f63  rategy.  - low_c
│ │ │ -0004fad0: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f  omplexity.  - lo
│ │ │ -0004fae0: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ -0004faf0: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ -0004fb00: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ -0004fb10: 6565 6465 640a 2020 2d20 7365 7276 6963  eeded.  - servic
│ │ │ -0004fb20: 655f 6175 746f 6673 5f64 6973 6162 6c65  e_autofs_disable
│ │ │ -0004fb30: 640a 0a2d 206e 616d 653a 2044 6973 6162  d..- name: Disab
│ │ │ -0004fb40: 6c65 2074 6865 2041 7574 6f6d 6f75 6e74  le the Automount
│ │ │ -0004fb50: 6572 202d 2044 6973 6162 6c65 2073 6572  er - Disable ser
│ │ │ -0004fb60: 7669 6365 2061 7574 6f66 730a 2020 626c  vice autofs.  bl
│ │ │ -0004fb70: 6f63 6b3a 0a0a 2020 2d20 6e61 6d65 3a20  ock:..  - name: 
│ │ │ -0004fb80: 4469 7361 626c 6520 7468 6520 4175 746f  Disable the Auto
│ │ │ -0004fb90: 6d6f 756e 7465 7220 2d20 436f 6c6c 6563  mounter - Collec
│ │ │ -0004fba0: 7420 7379 7374 656d 6420 5365 7276 6963  t systemd Servic
│ │ │ -0004fbb0: 6573 2050 7265 7365 6e74 2069 6e20 7468  es Present in th
│ │ │ -0004fbc0: 6520 5379 7374 656d 0a20 2020 2061 6e73  e System.    ans
│ │ │ -0004fbd0: 6962 6c65 2e62 7569 6c74 696e 2e63 6f6d  ible.builtin.com
│ │ │ -0004fbe0: 6d61 6e64 3a20 7379 7374 656d 6374 6c20  mand: systemctl 
│ │ │ -0004fbf0: 2d71 206c 6973 742d 756e 6974 2d66 696c  -q list-unit-fil
│ │ │ -0004fc00: 6573 202d 2d74 7970 6520 7365 7276 6963  es --type servic
│ │ │ -0004fc10: 650a 2020 2020 7265 6769 7374 6572 3a20  e.    register: 
│ │ │ -0004fc20: 7365 7276 6963 655f 6578 6973 7473 0a20  service_exists. 
│ │ │ -0004fc30: 2020 2063 6861 6e67 6564 5f77 6865 6e3a     changed_when:
│ │ │ -0004fc40: 2066 616c 7365 0a20 2020 2066 6169 6c65   false.    faile
│ │ │ -0004fc50: 645f 7768 656e 3a20 7365 7276 6963 655f  d_when: service_
│ │ │ -0004fc60: 6578 6973 7473 2e72 6320 6e6f 7420 696e  exists.rc not in
│ │ │ -0004fc70: 205b 302c 2031 5d0a 2020 2020 6368 6563   [0, 1].    chec
│ │ │ -0004fc80: 6b5f 6d6f 6465 3a20 6661 6c73 650a 0a20  k_mode: false.. 
│ │ │ -0004fc90: 202d 206e 616d 653a 2044 6973 6162 6c65   - name: Disable
│ │ │ -0004fca0: 2074 6865 2041 7574 6f6d 6f75 6e74 6572   the Automounter
│ │ │ -0004fcb0: 202d 2045 6e73 7572 6520 6175 746f 6673   - Ensure autofs
│ │ │ -0004fcc0: 2e73 6572 7669 6365 2069 7320 4d61 736b  .service is Mask
│ │ │ -0004fcd0: 6564 0a20 2020 2061 6e73 6962 6c65 2e62  ed.    ansible.b
│ │ │ -0004fce0: 7569 6c74 696e 2e73 7973 7465 6d64 3a0a  uiltin.systemd:.
│ │ │ -0004fcf0: 2020 2020 2020 6e61 6d65 3a20 6175 746f        name: auto
│ │ │ -0004fd00: 6673 2e73 6572 7669 6365 0a20 2020 2020  fs.service.     
│ │ │ -0004fd10: 2073 7461 7465 3a20 7374 6f70 7065 640a   state: stopped.
│ │ │ -0004fd20: 2020 2020 2020 656e 6162 6c65 643a 2066        enabled: f
│ │ │ -0004fd30: 616c 7365 0a20 2020 2020 206d 6173 6b65  alse.      maske
│ │ │ -0004fd40: 643a 2074 7275 650a 2020 2020 7768 656e  d: true.    when
│ │ │ -0004fd50: 3a20 7365 7276 6963 655f 6578 6973 7473  : service_exists
│ │ │ -0004fd60: 2e73 7464 6f75 745f 6c69 6e65 7320 6973  .stdout_lines is
│ │ │ -0004fd70: 2073 6561 7263 6828 2261 7574 6f66 732e   search("autofs.
│ │ │ -0004fd80: 7365 7276 6963 6522 2c20 6d75 6c74 696c  service", multil
│ │ │ -0004fd90: 696e 653d 5472 7565 290a 0a20 202d 206e  ine=True)..  - n
│ │ │ -0004fda0: 616d 653a 2055 6e69 7420 536f 636b 6574  ame: Unit Socket
│ │ │ -0004fdb0: 2045 7869 7374 7320 2d20 6175 746f 6673   Exists - autofs
│ │ │ -0004fdc0: 2e73 6f63 6b65 740a 2020 2020 616e 7369  .socket.    ansi
│ │ │ -0004fdd0: 626c 652e 6275 696c 7469 6e2e 636f 6d6d  ble.builtin.comm
│ │ │ -0004fde0: 616e 643a 2073 7973 7465 6d63 746c 202d  and: systemctl -
│ │ │ -0004fdf0: 7120 6c69 7374 2d75 6e69 742d 6669 6c65  q list-unit-file
│ │ │ -0004fe00: 7320 6175 746f 6673 2e73 6f63 6b65 740a  s autofs.socket.
│ │ │ -0004fe10: 2020 2020 7265 6769 7374 6572 3a20 736f      register: so
│ │ │ -0004fe20: 636b 6574 5f66 696c 655f 6578 6973 7473  cket_file_exists
│ │ │ -0004fe30: 0a20 2020 2063 6861 6e67 6564 5f77 6865  .    changed_whe
│ │ │ -0004fe40: 6e3a 2066 616c 7365 0a20 2020 2066 6169  n: false.    fai
│ │ │ -0004fe50: 6c65 645f 7768 656e 3a20 736f 636b 6574  led_when: socket
│ │ │ -0004fe60: 5f66 696c 655f 6578 6973 7473 2e72 6320  _file_exists.rc 
│ │ │ -0004fe70: 6e6f 7420 696e 205b 302c 2031 5d0a 2020  not in [0, 1].  
│ │ │ -0004fe80: 2020 6368 6563 6b5f 6d6f 6465 3a20 6661    check_mode: fa
│ │ │ -0004fe90: 6c73 650a 0a20 202d 206e 616d 653a 2044  lse..  - name: D
│ │ │ -0004fea0: 6973 6162 6c65 2074 6865 2041 7574 6f6d  isable the Autom
│ │ │ -0004feb0: 6f75 6e74 6572 202d 2044 6973 6162 6c65  ounter - Disable
│ │ │ -0004fec0: 2053 6f63 6b65 7420 6175 746f 6673 0a20   Socket autofs. 
│ │ │ -0004fed0: 2020 2061 6e73 6962 6c65 2e62 7569 6c74     ansible.built
│ │ │ -0004fee0: 696e 2e73 7973 7465 6d64 3a0a 2020 2020  in.systemd:.    
│ │ │ -0004fef0: 2020 6e61 6d65 3a20 6175 746f 6673 2e73    name: autofs.s
│ │ │ -0004ff00: 6f63 6b65 740a 2020 2020 2020 656e 6162  ocket.      enab
│ │ │ -0004ff10: 6c65 643a 2066 616c 7365 0a20 2020 2020  led: false.     
│ │ │ -0004ff20: 2073 7461 7465 3a20 7374 6f70 7065 640a   state: stopped.
│ │ │ -0004ff30: 2020 2020 2020 6d61 736b 6564 3a20 7472        masked: tr
│ │ │ -0004ff40: 7565 0a20 2020 2077 6865 6e3a 2073 6f63  ue.    when: soc
│ │ │ -0004ff50: 6b65 745f 6669 6c65 5f65 7869 7374 732e  ket_file_exists.
│ │ │ -0004ff60: 7374 646f 7574 5f6c 696e 6573 2069 7320  stdout_lines is 
│ │ │ -0004ff70: 7365 6172 6368 2822 6175 746f 6673 2e73  search("autofs.s
│ │ │ -0004ff80: 6f63 6b65 7422 2c20 6d75 6c74 696c 696e  ocket", multilin
│ │ │ -0004ff90: 653d 5472 7565 290a 2020 7461 6773 3a0a  e=True).  tags:.
│ │ │ -0004ffa0: 2020 2d20 4e49 5354 2d38 3030 2d31 3731    - NIST-800-171
│ │ │ -0004ffb0: 2d33 2e34 2e36 0a20 202d 204e 4953 542d  -3.4.6.  - NIST-
│ │ │ -0004ffc0: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ -0004ffd0: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -0004ffe0: 4d2d 3728 6129 0a20 202d 204e 4953 542d  M-7(a).  - NIST-
│ │ │ -0004fff0: 3830 302d 3533 2d43 4d2d 3728 6229 0a20  800-53-CM-7(b). 
│ │ │ -00050000: 202d 204e 4953 542d 3830 302d 3533 2d4d   - NIST-800-53-M
│ │ │ -00050010: 502d 370a 2020 2d20 6469 7361 626c 655f  P-7.  - disable_
│ │ │ -00050020: 7374 7261 7465 6779 0a20 202d 206c 6f77  strategy.  - low
│ │ │ -00050030: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ -00050040: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ -00050050: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ -00050060: 7479 0a20 202d 206e 6f5f 7265 626f 6f74  ty.  - no_reboot
│ │ │ -00050070: 5f6e 6565 6465 640a 2020 2d20 7365 7276  _needed.  - serv
│ │ │ -00050080: 6963 655f 6175 746f 6673 5f64 6973 6162  ice_autofs_disab
│ │ │ -00050090: 6c65 640a 2020 2d20 7370 6563 6961 6c5f  led.  - special_
│ │ │ -000500a0: 7365 7276 6963 655f 626c 6f63 6b0a 2020  service_block.  
│ │ │ -000500b0: 7768 656e 3a20 2820 2261 7574 6f66 7322  when: ( "autofs"
│ │ │ -000500c0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -000500d0: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ -000500e0: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ -000500f0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -00050100: 730a 2020 2020 290a 3c2f 636f 6465 3e3c  s.    ).<
│ │ │ +0004f4e0: 5265 6d65 6469 6174 696f 6e20 416e 7369  Remediation Ansi
│ │ │ +0004f4f0: 626c 6520 736e 6970 7065 7420 e287 b23c  ble snippet ...<
│ │ │ +0004f500: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173  /a>
low
Disr │ │ │ -0004f970: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -0004f980: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ -0004f9c0: 7465 6779 3a3c 2f74 683e 3c74 643e 6469 tegy:di │ │ │ -0004f9d0: 7361 626c 653c 2f74 643e 3c2f 7472 3e3c sable
│ │ │ +0004f590: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
-
│ │ │ +0004f630: 206e 616d 653a 2047 6174 6865 7220 7468   name: Gather th
│ │ │ +0004f640: 6520 7061 636b 6167 6520 6661 6374 730a  e package facts.
│ │ │ +0004f650: 2020 7061 636b 6167 655f 6661 6374 733a    package_facts:
│ │ │ +0004f660: 0a20 2020 206d 616e 6167 6572 3a20 6175  .    manager: au
│ │ │ +0004f670: 746f 0a20 2074 6167 733a 0a20 202d 204e  to.  tags:.  - N
│ │ │ +0004f680: 4953 542d 3830 302d 3137 312d 332e 342e  IST-800-171-3.4.
│ │ │ +0004f690: 360a 2020 2d20 4e49 5354 2d38 3030 2d35  6.  - NIST-800-5
│ │ │ +0004f6a0: 332d 434d 2d36 2861 290a 2020 2d20 4e49  3-CM-6(a).  - NI
│ │ │ +0004f6b0: 5354 2d38 3030 2d35 332d 434d 2d37 2861  ST-800-53-CM-7(a
│ │ │ +0004f6c0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +0004f6d0: 332d 434d 2d37 2862 290a 2020 2d20 4e49  3-CM-7(b).  - NI
│ │ │ +0004f6e0: 5354 2d38 3030 2d35 332d 4d50 2d37 0a20  ST-800-53-MP-7. 
│ │ │ +0004f6f0: 202d 2064 6973 6162 6c65 5f73 7472 6174   - disable_strat
│ │ │ +0004f700: 6567 790a 2020 2d20 6c6f 775f 636f 6d70  egy.  - low_comp
│ │ │ +0004f710: 6c65 7869 7479 0a20 202d 206c 6f77 5f64  lexity.  - low_d
│ │ │ +0004f720: 6973 7275 7074 696f 6e0a 2020 2d20 6d65  isruption.  - me
│ │ │ +0004f730: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ +0004f740: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ +0004f750: 6564 0a20 202d 2073 6572 7669 6365 5f61  ed.  - service_a
│ │ │ +0004f760: 7574 6f66 735f 6469 7361 626c 6564 0a0a  utofs_disabled..
│ │ │ +0004f770: 2d20 6e61 6d65 3a20 4469 7361 626c 6520  - name: Disable 
│ │ │ +0004f780: 7468 6520 4175 746f 6d6f 756e 7465 7220  the Automounter 
│ │ │ +0004f790: 2d20 4469 7361 626c 6520 7365 7276 6963  - Disable servic
│ │ │ +0004f7a0: 6520 6175 746f 6673 0a20 2062 6c6f 636b  e autofs.  block
│ │ │ +0004f7b0: 3a0a 0a20 202d 206e 616d 653a 2044 6973  :..  - name: Dis
│ │ │ +0004f7c0: 6162 6c65 2074 6865 2041 7574 6f6d 6f75  able the Automou
│ │ │ +0004f7d0: 6e74 6572 202d 2043 6f6c 6c65 6374 2073  nter - Collect s
│ │ │ +0004f7e0: 7973 7465 6d64 2053 6572 7669 6365 7320  ystemd Services 
│ │ │ +0004f7f0: 5072 6573 656e 7420 696e 2074 6865 2053  Present in the S
│ │ │ +0004f800: 7973 7465 6d0a 2020 2020 616e 7369 626c  ystem.    ansibl
│ │ │ +0004f810: 652e 6275 696c 7469 6e2e 636f 6d6d 616e  e.builtin.comman
│ │ │ +0004f820: 643a 2073 7973 7465 6d63 746c 202d 7120  d: systemctl -q 
│ │ │ +0004f830: 6c69 7374 2d75 6e69 742d 6669 6c65 7320  list-unit-files 
│ │ │ +0004f840: 2d2d 7479 7065 2073 6572 7669 6365 0a20  --type service. 
│ │ │ +0004f850: 2020 2072 6567 6973 7465 723a 2073 6572     register: ser
│ │ │ +0004f860: 7669 6365 5f65 7869 7374 730a 2020 2020  vice_exists.    
│ │ │ +0004f870: 6368 616e 6765 645f 7768 656e 3a20 6661  changed_when: fa
│ │ │ +0004f880: 6c73 650a 2020 2020 6661 696c 6564 5f77  lse.    failed_w
│ │ │ +0004f890: 6865 6e3a 2073 6572 7669 6365 5f65 7869  hen: service_exi
│ │ │ +0004f8a0: 7374 732e 7263 206e 6f74 2069 6e20 5b30  sts.rc not in [0
│ │ │ +0004f8b0: 2c20 315d 0a20 2020 2063 6865 636b 5f6d  , 1].    check_m
│ │ │ +0004f8c0: 6f64 653a 2066 616c 7365 0a0a 2020 2d20  ode: false..  - 
│ │ │ +0004f8d0: 6e61 6d65 3a20 4469 7361 626c 6520 7468  name: Disable th
│ │ │ +0004f8e0: 6520 4175 746f 6d6f 756e 7465 7220 2d20  e Automounter - 
│ │ │ +0004f8f0: 456e 7375 7265 2061 7574 6f66 732e 7365  Ensure autofs.se
│ │ │ +0004f900: 7276 6963 6520 6973 204d 6173 6b65 640a  rvice is Masked.
│ │ │ +0004f910: 2020 2020 616e 7369 626c 652e 6275 696c      ansible.buil
│ │ │ +0004f920: 7469 6e2e 7379 7374 656d 643a 0a20 2020  tin.systemd:.   
│ │ │ +0004f930: 2020 206e 616d 653a 2061 7574 6f66 732e     name: autofs.
│ │ │ +0004f940: 7365 7276 6963 650a 2020 2020 2020 7374  service.      st
│ │ │ +0004f950: 6174 653a 2073 746f 7070 6564 0a20 2020  ate: stopped.   
│ │ │ +0004f960: 2020 2065 6e61 626c 6564 3a20 6661 6c73     enabled: fals
│ │ │ +0004f970: 650a 2020 2020 2020 6d61 736b 6564 3a20  e.      masked: 
│ │ │ +0004f980: 7472 7565 0a20 2020 2077 6865 6e3a 2073  true.    when: s
│ │ │ +0004f990: 6572 7669 6365 5f65 7869 7374 732e 7374  ervice_exists.st
│ │ │ +0004f9a0: 646f 7574 5f6c 696e 6573 2069 7320 7365  dout_lines is se
│ │ │ +0004f9b0: 6172 6368 2822 6175 746f 6673 2e73 6572  arch("autofs.ser
│ │ │ +0004f9c0: 7669 6365 222c 206d 756c 7469 6c69 6e65  vice", multiline
│ │ │ +0004f9d0: 3d54 7275 6529 0a0a 2020 2d20 6e61 6d65  =True)..  - name
│ │ │ +0004f9e0: 3a20 556e 6974 2053 6f63 6b65 7420 4578  : Unit Socket Ex
│ │ │ +0004f9f0: 6973 7473 202d 2061 7574 6f66 732e 736f  ists - autofs.so
│ │ │ +0004fa00: 636b 6574 0a20 2020 2061 6e73 6962 6c65  cket.    ansible
│ │ │ +0004fa10: 2e62 7569 6c74 696e 2e63 6f6d 6d61 6e64  .builtin.command
│ │ │ +0004fa20: 3a20 7379 7374 656d 6374 6c20 2d71 206c  : systemctl -q l
│ │ │ +0004fa30: 6973 742d 756e 6974 2d66 696c 6573 2061  ist-unit-files a
│ │ │ +0004fa40: 7574 6f66 732e 736f 636b 6574 0a20 2020  utofs.socket.   
│ │ │ +0004fa50: 2072 6567 6973 7465 723a 2073 6f63 6b65   register: socke
│ │ │ +0004fa60: 745f 6669 6c65 5f65 7869 7374 730a 2020  t_file_exists.  
│ │ │ +0004fa70: 2020 6368 616e 6765 645f 7768 656e 3a20    changed_when: 
│ │ │ +0004fa80: 6661 6c73 650a 2020 2020 6661 696c 6564  false.    failed
│ │ │ +0004fa90: 5f77 6865 6e3a 2073 6f63 6b65 745f 6669  _when: socket_fi
│ │ │ +0004faa0: 6c65 5f65 7869 7374 732e 7263 206e 6f74  le_exists.rc not
│ │ │ +0004fab0: 2069 6e20 5b30 2c20 315d 0a20 2020 2063   in [0, 1].    c
│ │ │ +0004fac0: 6865 636b 5f6d 6f64 653a 2066 616c 7365  heck_mode: false
│ │ │ +0004fad0: 0a0a 2020 2d20 6e61 6d65 3a20 4469 7361  ..  - name: Disa
│ │ │ +0004fae0: 626c 6520 7468 6520 4175 746f 6d6f 756e  ble the Automoun
│ │ │ +0004faf0: 7465 7220 2d20 4469 7361 626c 6520 536f  ter - Disable So
│ │ │ +0004fb00: 636b 6574 2061 7574 6f66 730a 2020 2020  cket autofs.    
│ │ │ +0004fb10: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ +0004fb20: 7379 7374 656d 643a 0a20 2020 2020 206e  systemd:.      n
│ │ │ +0004fb30: 616d 653a 2061 7574 6f66 732e 736f 636b  ame: autofs.sock
│ │ │ +0004fb40: 6574 0a20 2020 2020 2065 6e61 626c 6564  et.      enabled
│ │ │ +0004fb50: 3a20 6661 6c73 650a 2020 2020 2020 7374  : false.      st
│ │ │ +0004fb60: 6174 653a 2073 746f 7070 6564 0a20 2020  ate: stopped.   
│ │ │ +0004fb70: 2020 206d 6173 6b65 643a 2074 7275 650a     masked: true.
│ │ │ +0004fb80: 2020 2020 7768 656e 3a20 736f 636b 6574      when: socket
│ │ │ +0004fb90: 5f66 696c 655f 6578 6973 7473 2e73 7464  _file_exists.std
│ │ │ +0004fba0: 6f75 745f 6c69 6e65 7320 6973 2073 6561  out_lines is sea
│ │ │ +0004fbb0: 7263 6828 2261 7574 6f66 732e 736f 636b  rch("autofs.sock
│ │ │ +0004fbc0: 6574 222c 206d 756c 7469 6c69 6e65 3d54  et", multiline=T
│ │ │ +0004fbd0: 7275 6529 0a20 2074 6167 733a 0a20 202d  rue).  tags:.  -
│ │ │ +0004fbe0: 204e 4953 542d 3830 302d 3137 312d 332e   NIST-800-171-3.
│ │ │ +0004fbf0: 342e 360a 2020 2d20 4e49 5354 2d38 3030  4.6.  - NIST-800
│ │ │ +0004fc00: 2d35 332d 434d 2d36 2861 290a 2020 2d20  -53-CM-6(a).  - 
│ │ │ +0004fc10: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ +0004fc20: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ +0004fc30: 2d35 332d 434d 2d37 2862 290a 2020 2d20  -53-CM-7(b).  - 
│ │ │ +0004fc40: 4e49 5354 2d38 3030 2d35 332d 4d50 2d37  NIST-800-53-MP-7
│ │ │ +0004fc50: 0a20 202d 2064 6973 6162 6c65 5f73 7472  .  - disable_str
│ │ │ +0004fc60: 6174 6567 790a 2020 2d20 6c6f 775f 636f  ategy.  - low_co
│ │ │ +0004fc70: 6d70 6c65 7869 7479 0a20 202d 206c 6f77  mplexity.  - low
│ │ │ +0004fc80: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +0004fc90: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ +0004fca0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ +0004fcb0: 6564 6564 0a20 202d 2073 6572 7669 6365  eded.  - service
│ │ │ +0004fcc0: 5f61 7574 6f66 735f 6469 7361 626c 6564  _autofs_disabled
│ │ │ +0004fcd0: 0a20 202d 2073 7065 6369 616c 5f73 6572  .  - special_ser
│ │ │ +0004fce0: 7669 6365 5f62 6c6f 636b 0a20 2077 6865  vice_block.  whe
│ │ │ +0004fcf0: 6e3a 2028 2022 6175 746f 6673 2220 696e  n: ( "autofs" in
│ │ │ +0004fd00: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +0004fd10: 6163 6b61 6765 7320 616e 6420 226b 6572  ackages and "ker
│ │ │ +0004fd20: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ +0004fd30: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ +0004fd40: 2020 2029 0a3c 2f63 6f64 653e 3c2f 7072     ).Remediation 
│ │ │ +0004fe00: 5075 7070 6574 2073 6e69 7070 6574 20e2  Puppet snippet .
│ │ │ +0004fe10: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063  ..
│ │ │ +0004f580: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +0004f5b0: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +0004f5c0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +0004f600: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ +0004f610: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
< │ │ │ +0004fe90: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ +0004feb0: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ +0004ff00: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
include disable
│ │ │ +0004ff50: 5f61 7574 6f66 730a 0a63 6c61 7373 2064  _autofs..class d
│ │ │ +0004ff60: 6973 6162 6c65 5f61 7574 6f66 7320 7b0a  isable_autofs {.
│ │ │ +0004ff70: 2020 7365 7276 6963 6520 7b27 6175 746f    service {'auto
│ │ │ +0004ff80: 6673 273a 0a20 2020 2065 6e61 626c 6520  fs':.    enable 
│ │ │ +0004ff90: 3d26 6774 3b20 6661 6c73 652c 0a20 2020  => false,.   
│ │ │ +0004ffa0: 2065 6e73 7572 6520 3d26 6774 3b20 2773   ensure => 's
│ │ │ +0004ffb0: 746f 7070 6564 272c 0a20 207d 0a7d 0a3c  topped',.  }.}.<
│ │ │ +0004ffc0: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
Re │ │ │ +00050070: 6d65 6469 6174 696f 6e20 4f53 4275 696c mediation OSBuil │ │ │ +00050080: 6420 426c 7565 7072 696e 7420 736e 6970 d Blueprint snip │ │ │ +00050090: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ +000500a0: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +000500b0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +000500c0: 7365 2220 6964 3d22 6964 3333 223e 3c70 se" id="id33">

.[custo │ │ │ +000500e0: 6d69 7a61 7469 6f6e 732e 7365 7276 6963 mizations.servic │ │ │ +000500f0: 6573 5d0a 6d61 736b 6564 203d 205b 2261 es].masked = ["a │ │ │ +00050100: 7574 6f66 7322 5d0a 3c2f 636f 6465 3e3c utofs"].< │ │ │ 00050110: 2f70 7265 3e3c 2f64 6976 3e3c 2f64 6976 /pre>

low
Disr │ │ │ +0004fec0: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +0004fed0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ +0004ff10: 7465 6779 3a3c 2f74 683e 3c74 643e 656e tegy:en │ │ │ +0004ff20: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
│ │ │ 00050140: 3c2f 7472 3e3c 7472 2064 6174 612d 7474 Remediation OSB │ │ │ -00051a80: 7569 6c64 2042 6c75 6570 7269 6e74 2073 uild Blueprint s │ │ │ -00051a90: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
.[cu
│ │ │ -00051ae0: 7374 6f6d 697a 6174 696f 6e73 2e73 6572  stomizations.ser
│ │ │ -00051af0: 7669 6365 735d 0a6d 6173 6b65 6420 3d20  vices].masked = 
│ │ │ -00051b00: 5b22 6162 7274 6422 5d0a 3c2f 636f 6465  ["abrtd"].
Remedia │ │ │ -00051bc0: 7469 6f6e 2050 7570 7065 7420 736e 6970 tion Puppet snip │ │ │ -00051bd0: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ -00051be0: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -00051bf0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -00051c00: 7365 2220 6964 3d22 6964 3336 223e 3c74 se" id="id36"> │ │ │ -00051c50: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ -00051c60: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -00051c70: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ -00051cb0: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -00051cc0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ -00051ce0: 7464 3e65 6e61 626c 653c 2f74 643e 3c2f td>enable
│ │ │ -00051d00: 3c63 6f64 653e 696e 636c 7564 6520 6469  include di
│ │ │ -00051d10: 7361 626c 655f 6162 7274 640a 0a63 6c61  sable_abrtd..cla
│ │ │ -00051d20: 7373 2064 6973 6162 6c65 5f61 6272 7464  ss disable_abrtd
│ │ │ -00051d30: 207b 0a20 2073 6572 7669 6365 207b 2761   {.  service {'a
│ │ │ -00051d40: 6272 7464 273a 0a20 2020 2065 6e61 626c  brtd':.    enabl
│ │ │ -00051d50: 6520 3d26 6774 3b20 6661 6c73 652c 0a20  e => false,. 
│ │ │ -00051d60: 2020 2065 6e73 7572 6520 3d26 6774 3b20     ensure => 
│ │ │ -00051d70: 2773 746f 7070 6564 272c 0a20 207d 0a7d  'stopped',.  }.}
│ │ │ -00051d80: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
│ │ │ -00051e30: 5265 6d65 6469 6174 696f 6e20 416e 7369 Remediation Ansi │ │ │ -00051e40: 626c 6520 736e 6970 7065 7420 e287 b23c ble snippet ...< │ │ │ -00051e50: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
│ │ │ -00051ee0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
-
│ │ │ -00051f80: 206e 616d 653a 2047 6174 6865 7220 7468   name: Gather th
│ │ │ -00051f90: 6520 7061 636b 6167 6520 6661 6374 730a  e package facts.
│ │ │ -00051fa0: 2020 7061 636b 6167 655f 6661 6374 733a    package_facts:
│ │ │ -00051fb0: 0a20 2020 206d 616e 6167 6572 3a20 6175  .    manager: au
│ │ │ -00051fc0: 746f 0a20 2074 6167 733a 0a20 202d 204e  to.  tags:.  - N
│ │ │ -00051fd0: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ -00051fe0: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ -00051ff0: 3533 2d43 4d2d 3728 6129 0a20 202d 2064  53-CM-7(a).  - d
│ │ │ -00052000: 6973 6162 6c65 5f73 7472 6174 6567 790a  isable_strategy.
│ │ │ -00052010: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ -00052020: 7479 0a20 202d 206c 6f77 5f64 6973 7275  ty.  - low_disru
│ │ │ -00052030: 7074 696f 6e0a 2020 2d20 6d65 6469 756d  ption.  - medium
│ │ │ -00052040: 5f73 6576 6572 6974 790a 2020 2d20 6e6f  _severity.  - no
│ │ │ -00052050: 5f72 6562 6f6f 745f 6e65 6564 6564 0a20  _reboot_needed. 
│ │ │ -00052060: 202d 2073 6572 7669 6365 5f61 6272 7464   - service_abrtd
│ │ │ -00052070: 5f64 6973 6162 6c65 640a 0a2d 206e 616d  _disabled..- nam
│ │ │ -00052080: 653a 2044 6973 6162 6c65 2041 7574 6f6d  e: Disable Autom
│ │ │ -00052090: 6174 6963 2042 7567 2052 6570 6f72 7469  atic Bug Reporti
│ │ │ -000520a0: 6e67 2054 6f6f 6c20 2861 6272 7464 2920  ng Tool (abrtd) 
│ │ │ -000520b0: 2d20 4469 7361 626c 6520 7365 7276 6963  - Disable servic
│ │ │ -000520c0: 6520 6162 7274 640a 2020 626c 6f63 6b3a  e abrtd.  block:
│ │ │ -000520d0: 0a0a 2020 2d20 6e61 6d65 3a20 4469 7361  ..  - name: Disa
│ │ │ -000520e0: 626c 6520 4175 746f 6d61 7469 6320 4275  ble Automatic Bu
│ │ │ -000520f0: 6720 5265 706f 7274 696e 6720 546f 6f6c  g Reporting Tool
│ │ │ -00052100: 2028 6162 7274 6429 202d 2043 6f6c 6c65   (abrtd) - Colle
│ │ │ -00052110: 6374 2073 7973 7465 6d64 2053 6572 7669  ct systemd Servi
│ │ │ -00052120: 6365 730a 2020 2020 2020 5072 6573 656e  ces.      Presen
│ │ │ -00052130: 7420 696e 2074 6865 2053 7973 7465 6d0a  t in the System.
│ │ │ -00052140: 2020 2020 616e 7369 626c 652e 6275 696c      ansible.buil
│ │ │ -00052150: 7469 6e2e 636f 6d6d 616e 643a 2073 7973  tin.command: sys
│ │ │ -00052160: 7465 6d63 746c 202d 7120 6c69 7374 2d75  temctl -q list-u
│ │ │ -00052170: 6e69 742d 6669 6c65 7320 2d2d 7479 7065  nit-files --type
│ │ │ -00052180: 2073 6572 7669 6365 0a20 2020 2072 6567   service.    reg
│ │ │ -00052190: 6973 7465 723a 2073 6572 7669 6365 5f65  ister: service_e
│ │ │ -000521a0: 7869 7374 730a 2020 2020 6368 616e 6765  xists.    change
│ │ │ -000521b0: 645f 7768 656e 3a20 6661 6c73 650a 2020  d_when: false.  
│ │ │ -000521c0: 2020 6661 696c 6564 5f77 6865 6e3a 2073    failed_when: s
│ │ │ -000521d0: 6572 7669 6365 5f65 7869 7374 732e 7263  ervice_exists.rc
│ │ │ -000521e0: 206e 6f74 2069 6e20 5b30 2c20 315d 0a20   not in [0, 1]. 
│ │ │ -000521f0: 2020 2063 6865 636b 5f6d 6f64 653a 2066     check_mode: f
│ │ │ -00052200: 616c 7365 0a0a 2020 2d20 6e61 6d65 3a20  alse..  - name: 
│ │ │ -00052210: 4469 7361 626c 6520 4175 746f 6d61 7469  Disable Automati
│ │ │ -00052220: 6320 4275 6720 5265 706f 7274 696e 6720  c Bug Reporting 
│ │ │ -00052230: 546f 6f6c 2028 6162 7274 6429 202d 2045  Tool (abrtd) - E
│ │ │ -00052240: 6e73 7572 6520 6162 7274 642e 7365 7276  nsure abrtd.serv
│ │ │ -00052250: 6963 6520 6973 204d 6173 6b65 640a 2020  ice is Masked.  
│ │ │ -00052260: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ -00052270: 6e2e 7379 7374 656d 643a 0a20 2020 2020  n.systemd:.     
│ │ │ -00052280: 206e 616d 653a 2061 6272 7464 2e73 6572   name: abrtd.ser
│ │ │ -00052290: 7669 6365 0a20 2020 2020 2073 7461 7465  vice.      state
│ │ │ -000522a0: 3a20 7374 6f70 7065 640a 2020 2020 2020  : stopped.      
│ │ │ -000522b0: 656e 6162 6c65 643a 2066 616c 7365 0a20  enabled: false. 
│ │ │ -000522c0: 2020 2020 206d 6173 6b65 643a 2074 7275       masked: tru
│ │ │ -000522d0: 650a 2020 2020 7768 656e 3a20 7365 7276  e.    when: serv
│ │ │ -000522e0: 6963 655f 6578 6973 7473 2e73 7464 6f75  ice_exists.stdou
│ │ │ -000522f0: 745f 6c69 6e65 7320 6973 2073 6561 7263  t_lines is searc
│ │ │ -00052300: 6828 2261 6272 7464 2e73 6572 7669 6365  h("abrtd.service
│ │ │ -00052310: 222c 206d 756c 7469 6c69 6e65 3d54 7275  ", multiline=Tru
│ │ │ -00052320: 6529 0a0a 2020 2d20 6e61 6d65 3a20 556e  e)..  - name: Un
│ │ │ -00052330: 6974 2053 6f63 6b65 7420 4578 6973 7473  it Socket Exists
│ │ │ -00052340: 202d 2061 6272 7464 2e73 6f63 6b65 740a   - abrtd.socket.
│ │ │ -00052350: 2020 2020 616e 7369 626c 652e 6275 696c      ansible.buil
│ │ │ -00052360: 7469 6e2e 636f 6d6d 616e 643a 2073 7973  tin.command: sys
│ │ │ -00052370: 7465 6d63 746c 202d 7120 6c69 7374 2d75  temctl -q list-u
│ │ │ -00052380: 6e69 742d 6669 6c65 7320 6162 7274 642e  nit-files abrtd.
│ │ │ -00052390: 736f 636b 6574 0a20 2020 2072 6567 6973  socket.    regis
│ │ │ -000523a0: 7465 723a 2073 6f63 6b65 745f 6669 6c65  ter: socket_file
│ │ │ -000523b0: 5f65 7869 7374 730a 2020 2020 6368 616e  _exists.    chan
│ │ │ -000523c0: 6765 645f 7768 656e 3a20 6661 6c73 650a  ged_when: false.
│ │ │ -000523d0: 2020 2020 6661 696c 6564 5f77 6865 6e3a      failed_when:
│ │ │ -000523e0: 2073 6f63 6b65 745f 6669 6c65 5f65 7869   socket_file_exi
│ │ │ -000523f0: 7374 732e 7263 206e 6f74 2069 6e20 5b30  sts.rc not in [0
│ │ │ -00052400: 2c20 315d 0a20 2020 2063 6865 636b 5f6d  , 1].    check_m
│ │ │ -00052410: 6f64 653a 2066 616c 7365 0a0a 2020 2d20  ode: false..  - 
│ │ │ -00052420: 6e61 6d65 3a20 4469 7361 626c 6520 4175  name: Disable Au
│ │ │ -00052430: 746f 6d61 7469 6320 4275 6720 5265 706f  tomatic Bug Repo
│ │ │ -00052440: 7274 696e 6720 546f 6f6c 2028 6162 7274  rting Tool (abrt
│ │ │ -00052450: 6429 202d 2044 6973 6162 6c65 2053 6f63  d) - Disable Soc
│ │ │ -00052460: 6b65 7420 6162 7274 640a 2020 2020 616e  ket abrtd.    an
│ │ │ -00052470: 7369 626c 652e 6275 696c 7469 6e2e 7379  sible.builtin.sy
│ │ │ -00052480: 7374 656d 643a 0a20 2020 2020 206e 616d  stemd:.      nam
│ │ │ -00052490: 653a 2061 6272 7464 2e73 6f63 6b65 740a  e: abrtd.socket.
│ │ │ -000524a0: 2020 2020 2020 656e 6162 6c65 643a 2066        enabled: f
│ │ │ -000524b0: 616c 7365 0a20 2020 2020 2073 7461 7465  alse.      state
│ │ │ -000524c0: 3a20 7374 6f70 7065 640a 2020 2020 2020  : stopped.      
│ │ │ -000524d0: 6d61 736b 6564 3a20 7472 7565 0a20 2020  masked: true.   
│ │ │ -000524e0: 2077 6865 6e3a 2073 6f63 6b65 745f 6669   when: socket_fi
│ │ │ -000524f0: 6c65 5f65 7869 7374 732e 7374 646f 7574  le_exists.stdout
│ │ │ -00052500: 5f6c 696e 6573 2069 7320 7365 6172 6368  _lines is search
│ │ │ -00052510: 2822 6162 7274 642e 736f 636b 6574 222c  ("abrtd.socket",
│ │ │ -00052520: 206d 756c 7469 6c69 6e65 3d54 7275 6529   multiline=True)
│ │ │ -00052530: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ -00052540: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ -00052550: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -00052560: 2d43 4d2d 3728 6129 0a20 202d 2064 6973  -CM-7(a).  - dis
│ │ │ -00052570: 6162 6c65 5f73 7472 6174 6567 790a 2020  able_strategy.  
│ │ │ -00052580: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ -00052590: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ -000525a0: 696f 6e0a 2020 2d20 6d65 6469 756d 5f73  ion.  - medium_s
│ │ │ -000525b0: 6576 6572 6974 790a 2020 2d20 6e6f 5f72  everity.  - no_r
│ │ │ -000525c0: 6562 6f6f 745f 6e65 6564 6564 0a20 202d  eboot_needed.  -
│ │ │ -000525d0: 2073 6572 7669 6365 5f61 6272 7464 5f64   service_abrtd_d
│ │ │ -000525e0: 6973 6162 6c65 640a 2020 2d20 7370 6563  isabled.  - spec
│ │ │ -000525f0: 6961 6c5f 7365 7276 6963 655f 626c 6f63  ial_service_bloc
│ │ │ -00052600: 6b0a 2020 7768 656e 3a20 2722 6b65 726e  k.  when: '"kern
│ │ │ -00052610: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ -00052620: 6163 7473 2e70 6163 6b61 6765 7327 0a3c  acts.packages'.<
│ │ │ +00051a70: 3e52 656d 6564 6961 7469 6f6e 2041 6e73  >Remediation Ans
│ │ │ +00051a80: 6962 6c65 2073 6e69 7070 6574 20e2 87b2  ible snippet ...
│ │ │ +00051a90: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61  
│ │ │ -00051ed0: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -00051f00: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -00051f10: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -00051f50: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ -00051f60: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
< │ │ │ +00051b60: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +00051b70: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

│ │ │ +00051bc0: 2d20 6e61 6d65 3a20 4761 7468 6572 2074  - name: Gather t
│ │ │ +00051bd0: 6865 2070 6163 6b61 6765 2066 6163 7473  he package facts
│ │ │ +00051be0: 0a20 2070 6163 6b61 6765 5f66 6163 7473  .  package_facts
│ │ │ +00051bf0: 3a0a 2020 2020 6d61 6e61 6765 723a 2061  :.    manager: a
│ │ │ +00051c00: 7574 6f0a 2020 7461 6773 3a0a 2020 2d20  uto.  tags:.  - 
│ │ │ +00051c10: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ +00051c20: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ +00051c30: 2d35 332d 434d 2d37 2861 290a 2020 2d20  -53-CM-7(a).  - 
│ │ │ +00051c40: 6469 7361 626c 655f 7374 7261 7465 6779  disable_strategy
│ │ │ +00051c50: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ +00051c60: 6974 790a 2020 2d20 6c6f 775f 6469 7372  ity.  - low_disr
│ │ │ +00051c70: 7570 7469 6f6e 0a20 202d 206d 6564 6975  uption.  - mediu
│ │ │ +00051c80: 6d5f 7365 7665 7269 7479 0a20 202d 206e  m_severity.  - n
│ │ │ +00051c90: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ +00051ca0: 2020 2d20 7365 7276 6963 655f 6162 7274    - service_abrt
│ │ │ +00051cb0: 645f 6469 7361 626c 6564 0a0a 2d20 6e61  d_disabled..- na
│ │ │ +00051cc0: 6d65 3a20 4469 7361 626c 6520 4175 746f  me: Disable Auto
│ │ │ +00051cd0: 6d61 7469 6320 4275 6720 5265 706f 7274  matic Bug Report
│ │ │ +00051ce0: 696e 6720 546f 6f6c 2028 6162 7274 6429  ing Tool (abrtd)
│ │ │ +00051cf0: 202d 2044 6973 6162 6c65 2073 6572 7669   - Disable servi
│ │ │ +00051d00: 6365 2061 6272 7464 0a20 2062 6c6f 636b  ce abrtd.  block
│ │ │ +00051d10: 3a0a 0a20 202d 206e 616d 653a 2044 6973  :..  - name: Dis
│ │ │ +00051d20: 6162 6c65 2041 7574 6f6d 6174 6963 2042  able Automatic B
│ │ │ +00051d30: 7567 2052 6570 6f72 7469 6e67 2054 6f6f  ug Reporting Too
│ │ │ +00051d40: 6c20 2861 6272 7464 2920 2d20 436f 6c6c  l (abrtd) - Coll
│ │ │ +00051d50: 6563 7420 7379 7374 656d 6420 5365 7276  ect systemd Serv
│ │ │ +00051d60: 6963 6573 0a20 2020 2020 2050 7265 7365  ices.      Prese
│ │ │ +00051d70: 6e74 2069 6e20 7468 6520 5379 7374 656d  nt in the System
│ │ │ +00051d80: 0a20 2020 2061 6e73 6962 6c65 2e62 7569  .    ansible.bui
│ │ │ +00051d90: 6c74 696e 2e63 6f6d 6d61 6e64 3a20 7379  ltin.command: sy
│ │ │ +00051da0: 7374 656d 6374 6c20 2d71 206c 6973 742d  stemctl -q list-
│ │ │ +00051db0: 756e 6974 2d66 696c 6573 202d 2d74 7970  unit-files --typ
│ │ │ +00051dc0: 6520 7365 7276 6963 650a 2020 2020 7265  e service.    re
│ │ │ +00051dd0: 6769 7374 6572 3a20 7365 7276 6963 655f  gister: service_
│ │ │ +00051de0: 6578 6973 7473 0a20 2020 2063 6861 6e67  exists.    chang
│ │ │ +00051df0: 6564 5f77 6865 6e3a 2066 616c 7365 0a20  ed_when: false. 
│ │ │ +00051e00: 2020 2066 6169 6c65 645f 7768 656e 3a20     failed_when: 
│ │ │ +00051e10: 7365 7276 6963 655f 6578 6973 7473 2e72  service_exists.r
│ │ │ +00051e20: 6320 6e6f 7420 696e 205b 302c 2031 5d0a  c not in [0, 1].
│ │ │ +00051e30: 2020 2020 6368 6563 6b5f 6d6f 6465 3a20      check_mode: 
│ │ │ +00051e40: 6661 6c73 650a 0a20 202d 206e 616d 653a  false..  - name:
│ │ │ +00051e50: 2044 6973 6162 6c65 2041 7574 6f6d 6174   Disable Automat
│ │ │ +00051e60: 6963 2042 7567 2052 6570 6f72 7469 6e67  ic Bug Reporting
│ │ │ +00051e70: 2054 6f6f 6c20 2861 6272 7464 2920 2d20   Tool (abrtd) - 
│ │ │ +00051e80: 456e 7375 7265 2061 6272 7464 2e73 6572  Ensure abrtd.ser
│ │ │ +00051e90: 7669 6365 2069 7320 4d61 736b 6564 0a20  vice is Masked. 
│ │ │ +00051ea0: 2020 2061 6e73 6962 6c65 2e62 7569 6c74     ansible.built
│ │ │ +00051eb0: 696e 2e73 7973 7465 6d64 3a0a 2020 2020  in.systemd:.    
│ │ │ +00051ec0: 2020 6e61 6d65 3a20 6162 7274 642e 7365    name: abrtd.se
│ │ │ +00051ed0: 7276 6963 650a 2020 2020 2020 7374 6174  rvice.      stat
│ │ │ +00051ee0: 653a 2073 746f 7070 6564 0a20 2020 2020  e: stopped.     
│ │ │ +00051ef0: 2065 6e61 626c 6564 3a20 6661 6c73 650a   enabled: false.
│ │ │ +00051f00: 2020 2020 2020 6d61 736b 6564 3a20 7472        masked: tr
│ │ │ +00051f10: 7565 0a20 2020 2077 6865 6e3a 2073 6572  ue.    when: ser
│ │ │ +00051f20: 7669 6365 5f65 7869 7374 732e 7374 646f  vice_exists.stdo
│ │ │ +00051f30: 7574 5f6c 696e 6573 2069 7320 7365 6172  ut_lines is sear
│ │ │ +00051f40: 6368 2822 6162 7274 642e 7365 7276 6963  ch("abrtd.servic
│ │ │ +00051f50: 6522 2c20 6d75 6c74 696c 696e 653d 5472  e", multiline=Tr
│ │ │ +00051f60: 7565 290a 0a20 202d 206e 616d 653a 2055  ue)..  - name: U
│ │ │ +00051f70: 6e69 7420 536f 636b 6574 2045 7869 7374  nit Socket Exist
│ │ │ +00051f80: 7320 2d20 6162 7274 642e 736f 636b 6574  s - abrtd.socket
│ │ │ +00051f90: 0a20 2020 2061 6e73 6962 6c65 2e62 7569  .    ansible.bui
│ │ │ +00051fa0: 6c74 696e 2e63 6f6d 6d61 6e64 3a20 7379  ltin.command: sy
│ │ │ +00051fb0: 7374 656d 6374 6c20 2d71 206c 6973 742d  stemctl -q list-
│ │ │ +00051fc0: 756e 6974 2d66 696c 6573 2061 6272 7464  unit-files abrtd
│ │ │ +00051fd0: 2e73 6f63 6b65 740a 2020 2020 7265 6769  .socket.    regi
│ │ │ +00051fe0: 7374 6572 3a20 736f 636b 6574 5f66 696c  ster: socket_fil
│ │ │ +00051ff0: 655f 6578 6973 7473 0a20 2020 2063 6861  e_exists.    cha
│ │ │ +00052000: 6e67 6564 5f77 6865 6e3a 2066 616c 7365  nged_when: false
│ │ │ +00052010: 0a20 2020 2066 6169 6c65 645f 7768 656e  .    failed_when
│ │ │ +00052020: 3a20 736f 636b 6574 5f66 696c 655f 6578  : socket_file_ex
│ │ │ +00052030: 6973 7473 2e72 6320 6e6f 7420 696e 205b  ists.rc not in [
│ │ │ +00052040: 302c 2031 5d0a 2020 2020 6368 6563 6b5f  0, 1].    check_
│ │ │ +00052050: 6d6f 6465 3a20 6661 6c73 650a 0a20 202d  mode: false..  -
│ │ │ +00052060: 206e 616d 653a 2044 6973 6162 6c65 2041   name: Disable A
│ │ │ +00052070: 7574 6f6d 6174 6963 2042 7567 2052 6570  utomatic Bug Rep
│ │ │ +00052080: 6f72 7469 6e67 2054 6f6f 6c20 2861 6272  orting Tool (abr
│ │ │ +00052090: 7464 2920 2d20 4469 7361 626c 6520 536f  td) - Disable So
│ │ │ +000520a0: 636b 6574 2061 6272 7464 0a20 2020 2061  cket abrtd.    a
│ │ │ +000520b0: 6e73 6962 6c65 2e62 7569 6c74 696e 2e73  nsible.builtin.s
│ │ │ +000520c0: 7973 7465 6d64 3a0a 2020 2020 2020 6e61  ystemd:.      na
│ │ │ +000520d0: 6d65 3a20 6162 7274 642e 736f 636b 6574  me: abrtd.socket
│ │ │ +000520e0: 0a20 2020 2020 2065 6e61 626c 6564 3a20  .      enabled: 
│ │ │ +000520f0: 6661 6c73 650a 2020 2020 2020 7374 6174  false.      stat
│ │ │ +00052100: 653a 2073 746f 7070 6564 0a20 2020 2020  e: stopped.     
│ │ │ +00052110: 206d 6173 6b65 643a 2074 7275 650a 2020   masked: true.  
│ │ │ +00052120: 2020 7768 656e 3a20 736f 636b 6574 5f66    when: socket_f
│ │ │ +00052130: 696c 655f 6578 6973 7473 2e73 7464 6f75  ile_exists.stdou
│ │ │ +00052140: 745f 6c69 6e65 7320 6973 2073 6561 7263  t_lines is searc
│ │ │ +00052150: 6828 2261 6272 7464 2e73 6f63 6b65 7422  h("abrtd.socket"
│ │ │ +00052160: 2c20 6d75 6c74 696c 696e 653d 5472 7565  , multiline=True
│ │ │ +00052170: 290a 2020 7461 6773 3a0a 2020 2d20 4e49  ).  tags:.  - NI
│ │ │ +00052180: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ +00052190: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +000521a0: 332d 434d 2d37 2861 290a 2020 2d20 6469  3-CM-7(a).  - di
│ │ │ +000521b0: 7361 626c 655f 7374 7261 7465 6779 0a20  sable_strategy. 
│ │ │ +000521c0: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ +000521d0: 790a 2020 2d20 6c6f 775f 6469 7372 7570  y.  - low_disrup
│ │ │ +000521e0: 7469 6f6e 0a20 202d 206d 6564 6975 6d5f  tion.  - medium_
│ │ │ +000521f0: 7365 7665 7269 7479 0a20 202d 206e 6f5f  severity.  - no_
│ │ │ +00052200: 7265 626f 6f74 5f6e 6565 6465 640a 2020  reboot_needed.  
│ │ │ +00052210: 2d20 7365 7276 6963 655f 6162 7274 645f  - service_abrtd_
│ │ │ +00052220: 6469 7361 626c 6564 0a20 202d 2073 7065  disabled.  - spe
│ │ │ +00052230: 6369 616c 5f73 6572 7669 6365 5f62 6c6f  cial_service_blo
│ │ │ +00052240: 636b 0a20 2077 6865 6e3a 2027 226b 6572  ck.  when: '"ker
│ │ │ +00052250: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ +00052260: 6661 6374 732e 7061 636b 6167 6573 270a  facts.packages'.
│ │ │ +00052270: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
R │ │ │ +00052320: 656d 6564 6961 7469 6f6e 2050 7570 7065 emediation Puppe │ │ │ +00052330: 7420 736e 6970 7065 7420 e287 b23c 2f61 t snippet ...
Complexity:low
Disrup │ │ │ +00051b40: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ +00051b50: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ +00051b90: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ +00051ba0: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
low< │ │ │ +000523e0: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ +00052430: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
Co │ │ │ +000523c0: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +000523f0: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +00052410: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +00052420: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +00052440: 3c2f 7468 3e3c 7464 3e65 6e61 626c 653c enable< │ │ │ +00052450: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
incl
│ │ │ +00052470: 7564 6520 6469 7361 626c 655f 6162 7274  ude disable_abrt
│ │ │ +00052480: 640a 0a63 6c61 7373 2064 6973 6162 6c65  d..class disable
│ │ │ +00052490: 5f61 6272 7464 207b 0a20 2073 6572 7669  _abrtd {.  servi
│ │ │ +000524a0: 6365 207b 2761 6272 7464 273a 0a20 2020  ce {'abrtd':.   
│ │ │ +000524b0: 2065 6e61 626c 6520 3d26 6774 3b20 6661   enable => fa
│ │ │ +000524c0: 6c73 652c 0a20 2020 2065 6e73 7572 6520  lse,.    ensure 
│ │ │ +000524d0: 3d26 6774 3b20 2773 746f 7070 6564 272c  => 'stopped',
│ │ │ +000524e0: 0a20 207d 0a7d 0a3c 2f63 6f64 653e 3c2f  .  }.}.
Remediatio │ │ │ +000525a0: 6e20 4f53 4275 696c 6420 426c 7565 7072 n OSBuild Bluepr │ │ │ +000525b0: 696e 7420 736e 6970 7065 7420 e287 b23c int snippet ...< │ │ │ +000525c0: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
.[customization
│ │ │ +00052610: 732e 7365 7276 6963 6573 5d0a 6d61 736b  s.services].mask
│ │ │ +00052620: 6564 203d 205b 2261 6272 7464 225d 0a3c  ed = ["abrtd"].<
│ │ │  00052630: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
Re │ │ │ -000535c0: 6d65 6469 6174 696f 6e20 4f53 4275 696c mediation OSBuil │ │ │ -000535d0: 6420 426c 7565 7072 696e 7420 736e 6970 d Blueprint snip │ │ │ -000535e0: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...

< │ │ │ -000535f0: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -00053600: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -00053610: 7365 2220 6964 3d22 6964 3339 223e 3c70 se" id="id39">

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

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

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

Remediation │ │ │ -00055190: 2050 7570 7065 7420 736e 6970 7065 7420 Puppet snippet │ │ │ -000551a0: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
│ │ │ -00055220: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -00055240: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ -00055290: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 < │ │ │ -000552c0: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
include disabl
│ │ │ -000552e0: 655f 6f64 646a 6f62 640a 0a63 6c61 7373  e_oddjobd..class
│ │ │ -000552f0: 2064 6973 6162 6c65 5f6f 6464 6a6f 6264   disable_oddjobd
│ │ │ -00055300: 207b 0a20 2073 6572 7669 6365 207b 276f   {.  service {'o
│ │ │ -00055310: 6464 6a6f 6264 273a 0a20 2020 2065 6e61  ddjobd':.    ena
│ │ │ -00055320: 626c 6520 3d26 6774 3b20 6661 6c73 652c  ble => false,
│ │ │ -00055330: 0a20 2020 2065 6e73 7572 6520 3d26 6774  .    ensure =>
│ │ │ -00055340: 3b20 2773 746f 7070 6564 272c 0a20 207d  ; 'stopped',.  }
│ │ │ -00055350: 0a7d 0a3c 2f63 6f64 653e 3c2f 7072 653e  .}.
│ │ │ -00055360: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22 Remediation An │ │ │ -00055410: 7369 626c 6520 736e 6970 7065 7420 e287 sible snippet .. │ │ │ -00055420: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
Complexity:< │ │ │ -00055230: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ -00055250: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ -000552a0: 6174 6567 793a 3c2f 7468 3e3c 7464 3e65 ategy:e │ │ │ -000552b0: 6e61 626c 653c 2f74 643e 3c2f 7472 3e3c nable
Complexity: │ │ │ -000554f0: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -00055500: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
- name: Gather 
│ │ │ -00055560: 7468 6520 7061 636b 6167 6520 6661 6374  the package fact
│ │ │ -00055570: 730a 2020 7061 636b 6167 655f 6661 6374  s.  package_fact
│ │ │ -00055580: 733a 0a20 2020 206d 616e 6167 6572 3a20  s:.    manager: 
│ │ │ -00055590: 6175 746f 0a20 2074 6167 733a 0a20 202d  auto.  tags:.  -
│ │ │ -000555a0: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -000555b0: 3628 6129 0a20 202d 204e 4953 542d 3830  6(a).  - NIST-80
│ │ │ -000555c0: 302d 3533 2d43 4d2d 3728 6129 0a20 202d  0-53-CM-7(a).  -
│ │ │ -000555d0: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -000555e0: 3728 6229 0a20 202d 2064 6973 6162 6c65  7(b).  - disable
│ │ │ -000555f0: 5f73 7472 6174 6567 790a 2020 2d20 6c6f  _strategy.  - lo
│ │ │ -00055600: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ -00055610: 206c 6f77 5f64 6973 7275 7074 696f 6e0a   low_disruption.
│ │ │ -00055620: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ -00055630: 6974 790a 2020 2d20 6e6f 5f72 6562 6f6f  ity.  - no_reboo
│ │ │ -00055640: 745f 6e65 6564 6564 0a20 202d 2073 6572  t_needed.  - ser
│ │ │ -00055650: 7669 6365 5f6f 6464 6a6f 6264 5f64 6973  vice_oddjobd_dis
│ │ │ -00055660: 6162 6c65 640a 0a2d 206e 616d 653a 2044  abled..- name: D
│ │ │ -00055670: 6973 6162 6c65 204f 6464 204a 6f62 2044  isable Odd Job D
│ │ │ -00055680: 6165 6d6f 6e20 286f 6464 6a6f 6264 2920  aemon (oddjobd) 
│ │ │ -00055690: 2d20 4469 7361 626c 6520 7365 7276 6963  - Disable servic
│ │ │ -000556a0: 6520 6f64 646a 6f62 640a 2020 626c 6f63  e oddjobd.  bloc
│ │ │ -000556b0: 6b3a 0a0a 2020 2d20 6e61 6d65 3a20 4469  k:..  - name: Di
│ │ │ -000556c0: 7361 626c 6520 4f64 6420 4a6f 6220 4461  sable Odd Job Da
│ │ │ -000556d0: 656d 6f6e 2028 6f64 646a 6f62 6429 202d  emon (oddjobd) -
│ │ │ -000556e0: 2043 6f6c 6c65 6374 2073 7973 7465 6d64   Collect systemd
│ │ │ -000556f0: 2053 6572 7669 6365 7320 5072 6573 656e   Services Presen
│ │ │ -00055700: 7420 696e 2074 6865 0a20 2020 2020 2053  t in the.      S
│ │ │ -00055710: 7973 7465 6d0a 2020 2020 616e 7369 626c  ystem.    ansibl
│ │ │ -00055720: 652e 6275 696c 7469 6e2e 636f 6d6d 616e  e.builtin.comman
│ │ │ -00055730: 643a 2073 7973 7465 6d63 746c 202d 7120  d: systemctl -q 
│ │ │ -00055740: 6c69 7374 2d75 6e69 742d 6669 6c65 7320  list-unit-files 
│ │ │ -00055750: 2d2d 7479 7065 2073 6572 7669 6365 0a20  --type service. 
│ │ │ -00055760: 2020 2072 6567 6973 7465 723a 2073 6572     register: ser
│ │ │ -00055770: 7669 6365 5f65 7869 7374 730a 2020 2020  vice_exists.    
│ │ │ -00055780: 6368 616e 6765 645f 7768 656e 3a20 6661  changed_when: fa
│ │ │ -00055790: 6c73 650a 2020 2020 6661 696c 6564 5f77  lse.    failed_w
│ │ │ -000557a0: 6865 6e3a 2073 6572 7669 6365 5f65 7869  hen: service_exi
│ │ │ -000557b0: 7374 732e 7263 206e 6f74 2069 6e20 5b30  sts.rc not in [0
│ │ │ -000557c0: 2c20 315d 0a20 2020 2063 6865 636b 5f6d  , 1].    check_m
│ │ │ -000557d0: 6f64 653a 2066 616c 7365 0a0a 2020 2d20  ode: false..  - 
│ │ │ -000557e0: 6e61 6d65 3a20 4469 7361 626c 6520 4f64  name: Disable Od
│ │ │ -000557f0: 6420 4a6f 6220 4461 656d 6f6e 2028 6f64  d Job Daemon (od
│ │ │ -00055800: 646a 6f62 6429 202d 2045 6e73 7572 6520  djobd) - Ensure 
│ │ │ -00055810: 6f64 646a 6f62 642e 7365 7276 6963 6520  oddjobd.service 
│ │ │ -00055820: 6973 204d 6173 6b65 640a 2020 2020 616e  is Masked.    an
│ │ │ -00055830: 7369 626c 652e 6275 696c 7469 6e2e 7379  sible.builtin.sy
│ │ │ -00055840: 7374 656d 643a 0a20 2020 2020 206e 616d  stemd:.      nam
│ │ │ -00055850: 653a 206f 6464 6a6f 6264 2e73 6572 7669  e: oddjobd.servi
│ │ │ -00055860: 6365 0a20 2020 2020 2073 7461 7465 3a20  ce.      state: 
│ │ │ -00055870: 7374 6f70 7065 640a 2020 2020 2020 656e  stopped.      en
│ │ │ -00055880: 6162 6c65 643a 2066 616c 7365 0a20 2020  abled: false.   
│ │ │ -00055890: 2020 206d 6173 6b65 643a 2074 7275 650a     masked: true.
│ │ │ -000558a0: 2020 2020 7768 656e 3a20 7365 7276 6963      when: servic
│ │ │ -000558b0: 655f 6578 6973 7473 2e73 7464 6f75 745f  e_exists.stdout_
│ │ │ -000558c0: 6c69 6e65 7320 6973 2073 6561 7263 6828  lines is search(
│ │ │ -000558d0: 226f 6464 6a6f 6264 2e73 6572 7669 6365  "oddjobd.service
│ │ │ -000558e0: 222c 206d 756c 7469 6c69 6e65 3d54 7275  ", multiline=Tru
│ │ │ -000558f0: 6529 0a0a 2020 2d20 6e61 6d65 3a20 556e  e)..  - name: Un
│ │ │ -00055900: 6974 2053 6f63 6b65 7420 4578 6973 7473  it Socket Exists
│ │ │ -00055910: 202d 206f 6464 6a6f 6264 2e73 6f63 6b65   - oddjobd.socke
│ │ │ -00055920: 740a 2020 2020 616e 7369 626c 652e 6275  t.    ansible.bu
│ │ │ -00055930: 696c 7469 6e2e 636f 6d6d 616e 643a 2073  iltin.command: s
│ │ │ -00055940: 7973 7465 6d63 746c 202d 7120 6c69 7374  ystemctl -q list
│ │ │ -00055950: 2d75 6e69 742d 6669 6c65 7320 6f64 646a  -unit-files oddj
│ │ │ -00055960: 6f62 642e 736f 636b 6574 0a20 2020 2072  obd.socket.    r
│ │ │ -00055970: 6567 6973 7465 723a 2073 6f63 6b65 745f  egister: socket_
│ │ │ -00055980: 6669 6c65 5f65 7869 7374 730a 2020 2020  file_exists.    
│ │ │ -00055990: 6368 616e 6765 645f 7768 656e 3a20 6661  changed_when: fa
│ │ │ -000559a0: 6c73 650a 2020 2020 6661 696c 6564 5f77  lse.    failed_w
│ │ │ -000559b0: 6865 6e3a 2073 6f63 6b65 745f 6669 6c65  hen: socket_file
│ │ │ -000559c0: 5f65 7869 7374 732e 7263 206e 6f74 2069  _exists.rc not i
│ │ │ -000559d0: 6e20 5b30 2c20 315d 0a20 2020 2063 6865  n [0, 1].    che
│ │ │ -000559e0: 636b 5f6d 6f64 653a 2066 616c 7365 0a0a  ck_mode: false..
│ │ │ -000559f0: 2020 2d20 6e61 6d65 3a20 4469 7361 626c    - name: Disabl
│ │ │ -00055a00: 6520 4f64 6420 4a6f 6220 4461 656d 6f6e  e Odd Job Daemon
│ │ │ -00055a10: 2028 6f64 646a 6f62 6429 202d 2044 6973   (oddjobd) - Dis
│ │ │ -00055a20: 6162 6c65 2053 6f63 6b65 7420 6f64 646a  able Socket oddj
│ │ │ -00055a30: 6f62 640a 2020 2020 616e 7369 626c 652e  obd.    ansible.
│ │ │ -00055a40: 6275 696c 7469 6e2e 7379 7374 656d 643a  builtin.systemd:
│ │ │ -00055a50: 0a20 2020 2020 206e 616d 653a 206f 6464  .      name: odd
│ │ │ -00055a60: 6a6f 6264 2e73 6f63 6b65 740a 2020 2020  jobd.socket.    
│ │ │ -00055a70: 2020 656e 6162 6c65 643a 2066 616c 7365    enabled: false
│ │ │ -00055a80: 0a20 2020 2020 2073 7461 7465 3a20 7374  .      state: st
│ │ │ -00055a90: 6f70 7065 640a 2020 2020 2020 6d61 736b  opped.      mask
│ │ │ -00055aa0: 6564 3a20 7472 7565 0a20 2020 2077 6865  ed: true.    whe
│ │ │ -00055ab0: 6e3a 2073 6f63 6b65 745f 6669 6c65 5f65  n: socket_file_e
│ │ │ -00055ac0: 7869 7374 732e 7374 646f 7574 5f6c 696e  xists.stdout_lin
│ │ │ -00055ad0: 6573 2069 7320 7365 6172 6368 2822 6f64  es is search("od
│ │ │ -00055ae0: 646a 6f62 642e 736f 636b 6574 222c 206d  djobd.socket", m
│ │ │ -00055af0: 756c 7469 6c69 6e65 3d54 7275 6529 0a20  ultiline=True). 
│ │ │ -00055b00: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ -00055b10: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ -00055b20: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -00055b30: 4d2d 3728 6129 0a20 202d 204e 4953 542d  M-7(a).  - NIST-
│ │ │ -00055b40: 3830 302d 3533 2d43 4d2d 3728 6229 0a20  800-53-CM-7(b). 
│ │ │ -00055b50: 202d 2064 6973 6162 6c65 5f73 7472 6174   - disable_strat
│ │ │ -00055b60: 6567 790a 2020 2d20 6c6f 775f 636f 6d70  egy.  - low_comp
│ │ │ -00055b70: 6c65 7869 7479 0a20 202d 206c 6f77 5f64  lexity.  - low_d
│ │ │ -00055b80: 6973 7275 7074 696f 6e0a 2020 2d20 6d65  isruption.  - me
│ │ │ -00055b90: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ -00055ba0: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ -00055bb0: 6564 0a20 202d 2073 6572 7669 6365 5f6f  ed.  - service_o
│ │ │ -00055bc0: 6464 6a6f 6264 5f64 6973 6162 6c65 640a  ddjobd_disabled.
│ │ │ -00055bd0: 2020 2d20 7370 6563 6961 6c5f 7365 7276    - special_serv
│ │ │ -00055be0: 6963 655f 626c 6f63 6b0a 2020 7768 656e  ice_block.  when
│ │ │ -00055bf0: 3a20 2722 6b65 726e 656c 2220 696e 2061  : '"kernel" in a
│ │ │ -00055c00: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -00055c10: 6b61 6765 7327 0a3c 2f63 6f64 653e 3c2f  kages'.
low
Disru │ │ │ -000554d0: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ -000554e0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ -00055520: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ -00055530: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
│ │ │ +00055100: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ +00055120: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ +00055150: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ +000550e0: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ +000550f0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ +00055110: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ +00055130: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ +00055140: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:disable
< │ │ │ +00055180: 7072 653e 3c63 6f64 653e 2d20 6e61 6d65 pre>- name │ │ │ +00055190: 3a20 4761 7468 6572 2074 6865 2070 6163 : Gather the pac │ │ │ +000551a0: 6b61 6765 2066 6163 7473 0a20 2070 6163 kage facts. pac │ │ │ +000551b0: 6b61 6765 5f66 6163 7473 3a0a 2020 2020 kage_facts:. │ │ │ +000551c0: 6d61 6e61 6765 723a 2061 7574 6f0a 2020 manager: auto. │ │ │ +000551d0: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38 tags:. - NIST-8 │ │ │ +000551e0: 3030 2d35 332d 434d 2d36 2861 290a 2020 00-53-CM-6(a). │ │ │ +000551f0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d - NIST-800-53-CM │ │ │ +00055200: 2d37 2861 290a 2020 2d20 4e49 5354 2d38 -7(a). - NIST-8 │ │ │ +00055210: 3030 2d35 332d 434d 2d37 2862 290a 2020 00-53-CM-7(b). │ │ │ +00055220: 2d20 6469 7361 626c 655f 7374 7261 7465 - disable_strate │ │ │ +00055230: 6779 0a20 202d 206c 6f77 5f63 6f6d 706c gy. - low_compl │ │ │ +00055240: 6578 6974 790a 2020 2d20 6c6f 775f 6469 exity. - low_di │ │ │ +00055250: 7372 7570 7469 6f6e 0a20 202d 206d 6564 sruption. - med │ │ │ +00055260: 6975 6d5f 7365 7665 7269 7479 0a20 202d ium_severity. - │ │ │ +00055270: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465 no_reboot_neede │ │ │ +00055280: 640a 2020 2d20 7365 7276 6963 655f 6f64 d. - service_od │ │ │ +00055290: 646a 6f62 645f 6469 7361 626c 6564 0a0a djobd_disabled.. │ │ │ +000552a0: 2d20 6e61 6d65 3a20 4469 7361 626c 6520 - name: Disable │ │ │ +000552b0: 4f64 6420 4a6f 6220 4461 656d 6f6e 2028 Odd Job Daemon ( │ │ │ +000552c0: 6f64 646a 6f62 6429 202d 2044 6973 6162 oddjobd) - Disab │ │ │ +000552d0: 6c65 2073 6572 7669 6365 206f 6464 6a6f le service oddjo │ │ │ +000552e0: 6264 0a20 2062 6c6f 636b 3a0a 0a20 202d bd. block:.. - │ │ │ +000552f0: 206e 616d 653a 2044 6973 6162 6c65 204f name: Disable O │ │ │ +00055300: 6464 204a 6f62 2044 6165 6d6f 6e20 286f dd Job Daemon (o │ │ │ +00055310: 6464 6a6f 6264 2920 2d20 436f 6c6c 6563 ddjobd) - Collec │ │ │ +00055320: 7420 7379 7374 656d 6420 5365 7276 6963 t systemd Servic │ │ │ +00055330: 6573 2050 7265 7365 6e74 2069 6e20 7468 es Present in th │ │ │ +00055340: 650a 2020 2020 2020 5379 7374 656d 0a20 e. System. │ │ │ +00055350: 2020 2061 6e73 6962 6c65 2e62 7569 6c74 ansible.built │ │ │ +00055360: 696e 2e63 6f6d 6d61 6e64 3a20 7379 7374 in.command: syst │ │ │ +00055370: 656d 6374 6c20 2d71 206c 6973 742d 756e emctl -q list-un │ │ │ +00055380: 6974 2d66 696c 6573 202d 2d74 7970 6520 it-files --type │ │ │ +00055390: 7365 7276 6963 650a 2020 2020 7265 6769 service. regi │ │ │ +000553a0: 7374 6572 3a20 7365 7276 6963 655f 6578 ster: service_ex │ │ │ +000553b0: 6973 7473 0a20 2020 2063 6861 6e67 6564 ists. changed │ │ │ +000553c0: 5f77 6865 6e3a 2066 616c 7365 0a20 2020 _when: false. │ │ │ +000553d0: 2066 6169 6c65 645f 7768 656e 3a20 7365 failed_when: se │ │ │ +000553e0: 7276 6963 655f 6578 6973 7473 2e72 6320 rvice_exists.rc │ │ │ +000553f0: 6e6f 7420 696e 205b 302c 2031 5d0a 2020 not in [0, 1]. │ │ │ +00055400: 2020 6368 6563 6b5f 6d6f 6465 3a20 6661 check_mode: fa │ │ │ +00055410: 6c73 650a 0a20 202d 206e 616d 653a 2044 lse.. - name: D │ │ │ +00055420: 6973 6162 6c65 204f 6464 204a 6f62 2044 isable Odd Job D │ │ │ +00055430: 6165 6d6f 6e20 286f 6464 6a6f 6264 2920 aemon (oddjobd) │ │ │ +00055440: 2d20 456e 7375 7265 206f 6464 6a6f 6264 - Ensure oddjobd │ │ │ +00055450: 2e73 6572 7669 6365 2069 7320 4d61 736b .service is Mask │ │ │ +00055460: 6564 0a20 2020 2061 6e73 6962 6c65 2e62 ed. ansible.b │ │ │ +00055470: 7569 6c74 696e 2e73 7973 7465 6d64 3a0a uiltin.systemd:. │ │ │ +00055480: 2020 2020 2020 6e61 6d65 3a20 6f64 646a name: oddj │ │ │ +00055490: 6f62 642e 7365 7276 6963 650a 2020 2020 obd.service. │ │ │ +000554a0: 2020 7374 6174 653a 2073 746f 7070 6564 state: stopped │ │ │ +000554b0: 0a20 2020 2020 2065 6e61 626c 6564 3a20 . enabled: │ │ │ +000554c0: 6661 6c73 650a 2020 2020 2020 6d61 736b false. mask │ │ │ +000554d0: 6564 3a20 7472 7565 0a20 2020 2077 6865 ed: true. whe │ │ │ +000554e0: 6e3a 2073 6572 7669 6365 5f65 7869 7374 n: service_exist │ │ │ +000554f0: 732e 7374 646f 7574 5f6c 696e 6573 2069 s.stdout_lines i │ │ │ +00055500: 7320 7365 6172 6368 2822 6f64 646a 6f62 s search("oddjob │ │ │ +00055510: 642e 7365 7276 6963 6522 2c20 6d75 6c74 d.service", mult │ │ │ +00055520: 696c 696e 653d 5472 7565 290a 0a20 202d iline=True).. - │ │ │ +00055530: 206e 616d 653a 2055 6e69 7420 536f 636b name: Unit Sock │ │ │ +00055540: 6574 2045 7869 7374 7320 2d20 6f64 646a et Exists - oddj │ │ │ +00055550: 6f62 642e 736f 636b 6574 0a20 2020 2061 obd.socket. a │ │ │ +00055560: 6e73 6962 6c65 2e62 7569 6c74 696e 2e63 nsible.builtin.c │ │ │ +00055570: 6f6d 6d61 6e64 3a20 7379 7374 656d 6374 ommand: systemct │ │ │ +00055580: 6c20 2d71 206c 6973 742d 756e 6974 2d66 l -q list-unit-f │ │ │ +00055590: 696c 6573 206f 6464 6a6f 6264 2e73 6f63 iles oddjobd.soc │ │ │ +000555a0: 6b65 740a 2020 2020 7265 6769 7374 6572 ket. register │ │ │ +000555b0: 3a20 736f 636b 6574 5f66 696c 655f 6578 : socket_file_ex │ │ │ +000555c0: 6973 7473 0a20 2020 2063 6861 6e67 6564 ists. changed │ │ │ +000555d0: 5f77 6865 6e3a 2066 616c 7365 0a20 2020 _when: false. │ │ │ +000555e0: 2066 6169 6c65 645f 7768 656e 3a20 736f failed_when: so │ │ │ +000555f0: 636b 6574 5f66 696c 655f 6578 6973 7473 cket_file_exists │ │ │ +00055600: 2e72 6320 6e6f 7420 696e 205b 302c 2031 .rc not in [0, 1 │ │ │ +00055610: 5d0a 2020 2020 6368 6563 6b5f 6d6f 6465 ]. check_mode │ │ │ +00055620: 3a20 6661 6c73 650a 0a20 202d 206e 616d : false.. - nam │ │ │ +00055630: 653a 2044 6973 6162 6c65 204f 6464 204a e: Disable Odd J │ │ │ +00055640: 6f62 2044 6165 6d6f 6e20 286f 6464 6a6f ob Daemon (oddjo │ │ │ +00055650: 6264 2920 2d20 4469 7361 626c 6520 536f bd) - Disable So │ │ │ +00055660: 636b 6574 206f 6464 6a6f 6264 0a20 2020 cket oddjobd. │ │ │ +00055670: 2061 6e73 6962 6c65 2e62 7569 6c74 696e ansible.builtin │ │ │ +00055680: 2e73 7973 7465 6d64 3a0a 2020 2020 2020 .systemd:. │ │ │ +00055690: 6e61 6d65 3a20 6f64 646a 6f62 642e 736f name: oddjobd.so │ │ │ +000556a0: 636b 6574 0a20 2020 2020 2065 6e61 626c cket. enabl │ │ │ +000556b0: 6564 3a20 6661 6c73 650a 2020 2020 2020 ed: false. │ │ │ +000556c0: 7374 6174 653a 2073 746f 7070 6564 0a20 state: stopped. │ │ │ +000556d0: 2020 2020 206d 6173 6b65 643a 2074 7275 masked: tru │ │ │ +000556e0: 650a 2020 2020 7768 656e 3a20 736f 636b e. when: sock │ │ │ +000556f0: 6574 5f66 696c 655f 6578 6973 7473 2e73 et_file_exists.s │ │ │ +00055700: 7464 6f75 745f 6c69 6e65 7320 6973 2073 tdout_lines is s │ │ │ +00055710: 6561 7263 6828 226f 6464 6a6f 6264 2e73 earch("oddjobd.s │ │ │ +00055720: 6f63 6b65 7422 2c20 6d75 6c74 696c 696e ocket", multilin │ │ │ +00055730: 653d 5472 7565 290a 2020 7461 6773 3a0a e=True). tags:. │ │ │ +00055740: 2020 2d20 4e49 5354 2d38 3030 2d35 332d - NIST-800-53- │ │ │ +00055750: 434d 2d36 2861 290a 2020 2d20 4e49 5354 CM-6(a). - NIST │ │ │ +00055760: 2d38 3030 2d35 332d 434d 2d37 2861 290a -800-53-CM-7(a). │ │ │ +00055770: 2020 2d20 4e49 5354 2d38 3030 2d35 332d - NIST-800-53- │ │ │ +00055780: 434d 2d37 2862 290a 2020 2d20 6469 7361 CM-7(b). - disa │ │ │ +00055790: 626c 655f 7374 7261 7465 6779 0a20 202d ble_strategy. - │ │ │ +000557a0: 206c 6f77 5f63 6f6d 706c 6578 6974 790a low_complexity. │ │ │ +000557b0: 2020 2d20 6c6f 775f 6469 7372 7570 7469 - low_disrupti │ │ │ +000557c0: 6f6e 0a20 202d 206d 6564 6975 6d5f 7365 on. - medium_se │ │ │ +000557d0: 7665 7269 7479 0a20 202d 206e 6f5f 7265 verity. - no_re │ │ │ +000557e0: 626f 6f74 5f6e 6565 6465 640a 2020 2d20 boot_needed. - │ │ │ +000557f0: 7365 7276 6963 655f 6f64 646a 6f62 645f service_oddjobd_ │ │ │ +00055800: 6469 7361 626c 6564 0a20 202d 2073 7065 disabled. - spe │ │ │ +00055810: 6369 616c 5f73 6572 7669 6365 5f62 6c6f cial_service_blo │ │ │ +00055820: 636b 0a20 2077 6865 6e3a 2027 226b 6572 ck. when: '"ker │ │ │ +00055830: 6e65 6c22 2069 6e20 616e 7369 626c 655f nel" in ansible_ │ │ │ +00055840: 6661 6374 732e 7061 636b 6167 6573 270a facts.packages'. │ │ │ +00055850: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64
R │ │ │ +00055900: 656d 6564 6961 7469 6f6e 2050 7570 7065 emediation Puppe │ │ │ +00055910: 7420 736e 6970 7065 7420 e287 b23c 2f61 t snippet ...
low< │ │ │ +000559c0: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ +00055a10: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
Co │ │ │ +000559a0: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +000559d0: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +000559f0: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +00055a00: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +00055a20: 3c2f 7468 3e3c 7464 3e65 6e61 626c 653c enable< │ │ │ +00055a30: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
incl
│ │ │ +00055a50: 7564 6520 6469 7361 626c 655f 6f64 646a  ude disable_oddj
│ │ │ +00055a60: 6f62 640a 0a63 6c61 7373 2064 6973 6162  obd..class disab
│ │ │ +00055a70: 6c65 5f6f 6464 6a6f 6264 207b 0a20 2073  le_oddjobd {.  s
│ │ │ +00055a80: 6572 7669 6365 207b 276f 6464 6a6f 6264  ervice {'oddjobd
│ │ │ +00055a90: 273a 0a20 2020 2065 6e61 626c 6520 3d26  ':.    enable =&
│ │ │ +00055aa0: 6774 3b20 6661 6c73 652c 0a20 2020 2065  gt; false,.    e
│ │ │ +00055ab0: 6e73 7572 6520 3d26 6774 3b20 2773 746f  nsure => 'sto
│ │ │ +00055ac0: 7070 6564 272c 0a20 207d 0a7d 0a3c 2f63  pped',.  }.}.
│ │ │ +00055ae0: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Reme │ │ │ +00055b80: 6469 6174 696f 6e20 4f53 4275 696c 6420 diation OSBuild │ │ │ +00055b90: 426c 7565 7072 696e 7420 736e 6970 7065 Blueprint snippe │ │ │ +00055ba0: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
.[customi
│ │ │ +00055bf0: 7a61 7469 6f6e 732e 7365 7276 6963 6573  zations.services
│ │ │ +00055c00: 5d0a 6d61 736b 6564 203d 205b 226f 6464  ].masked = ["odd
│ │ │ +00055c10: 6a6f 6264 225d 0a3c 2f63 6f64 653e 3c2f  jobd"].
│ │ │ 00055c30: 3c2f 7464 3e3c 2f74 723e 3c2f 7462 6f64 < │ │ │ 00055c50: 2f74 723e 3c74 7220 6461 7461 2d74 742d /tr>Remedia │ │ │ -00056bb0: 7469 6f6e 204f 5342 7569 6c64 2042 6c75 tion OSBuild Blu │ │ │ -00056bc0: 6570 7269 6e74 2073 6e69 7070 6574 20e2 eprint snippet . │ │ │ -00056bd0: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
.[customizat
│ │ │ -00056c20: 696f 6e73 2e73 6572 7669 6365 735d 0a6d  ions.services].m
│ │ │ -00056c30: 6173 6b65 6420 3d20 5b22 7170 6964 6422  asked = ["qpidd"
│ │ │ -00056c40: 5d0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  ].
< │ │ │ -00056c50: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Pup │ │ │ -00056d00: 7065 7420 736e 6970 7065 7420 e287 b23c pet snippet ...< │ │ │ -00056d10: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
│ │ │ -00056da0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
in
│ │ │ -00056e40: 636c 7564 6520 6469 7361 626c 655f 7170  clude disable_qp
│ │ │ -00056e50: 6964 640a 0a63 6c61 7373 2064 6973 6162  idd..class disab
│ │ │ -00056e60: 6c65 5f71 7069 6464 207b 0a20 2073 6572  le_qpidd {.  ser
│ │ │ -00056e70: 7669 6365 207b 2771 7069 6464 273a 0a20  vice {'qpidd':. 
│ │ │ -00056e80: 2020 2065 6e61 626c 6520 3d26 6774 3b20     enable => 
│ │ │ -00056e90: 6661 6c73 652c 0a20 2020 2065 6e73 7572  false,.    ensur
│ │ │ -00056ea0: 6520 3d26 6774 3b20 2773 746f 7070 6564  e => 'stopped
│ │ │ -00056eb0: 272c 0a20 207d 0a7d 0a3c 2f63 6f64 653e  ',.  }.}.
│ │ │ -00056ec0: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remediat │ │ │ -00056f70: 696f 6e20 416e 7369 626c 6520 736e 6970 ion Ansible snip │ │ │ -00056f80: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ -00056f90: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -00056fa0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -00056fb0: 7365 2220 6964 3d22 6964 3439 223e 3c74 se" id="id49"> │ │ │ -00057000: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 < │ │ │ -00057090: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ -000570a0: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
│ │ │ -00056d90: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -00056dc0: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -00056dd0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -00056e10: 793a 3c2f 7468 3e3c 7464 3e65 6e61 626c y:enabl │ │ │ -00056e20: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
Complexi │ │ │ -00057010: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -00057020: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Disruption:low
Reboot │ │ │ -00057060: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -00057070: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Strategy:
- name: G
│ │ │ -000570c0: 6174 6865 7220 7468 6520 7061 636b 6167  ather the packag
│ │ │ -000570d0: 6520 6661 6374 730a 2020 7061 636b 6167  e facts.  packag
│ │ │ -000570e0: 655f 6661 6374 733a 0a20 2020 206d 616e  e_facts:.    man
│ │ │ -000570f0: 6167 6572 3a20 6175 746f 0a20 2074 6167  ager: auto.  tag
│ │ │ -00057100: 733a 0a20 202d 204e 4953 542d 3830 302d  s:.  - NIST-800-
│ │ │ -00057110: 3533 2d43 4d2d 3628 6129 0a20 202d 204e  53-CM-6(a).  - N
│ │ │ -00057120: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ -00057130: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ -00057140: 3533 2d43 4d2d 3728 6229 0a20 202d 2064  53-CM-7(b).  - d
│ │ │ -00057150: 6973 6162 6c65 5f73 7472 6174 6567 790a  isable_strategy.
│ │ │ -00057160: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ -00057170: 7479 0a20 202d 206c 6f77 5f64 6973 7275  ty.  - low_disru
│ │ │ -00057180: 7074 696f 6e0a 2020 2d20 6c6f 775f 7365  ption.  - low_se
│ │ │ -00057190: 7665 7269 7479 0a20 202d 206e 6f5f 7265  verity.  - no_re
│ │ │ -000571a0: 626f 6f74 5f6e 6565 6465 640a 2020 2d20  boot_needed.  - 
│ │ │ -000571b0: 7365 7276 6963 655f 7170 6964 645f 6469  service_qpidd_di
│ │ │ -000571c0: 7361 626c 6564 0a0a 2d20 6e61 6d65 3a20  sabled..- name: 
│ │ │ -000571d0: 4469 7361 626c 6520 4170 6163 6865 2051  Disable Apache Q
│ │ │ -000571e0: 7069 6420 2871 7069 6464 2920 2d20 4469  pid (qpidd) - Di
│ │ │ -000571f0: 7361 626c 6520 7365 7276 6963 6520 7170  sable service qp
│ │ │ -00057200: 6964 640a 2020 626c 6f63 6b3a 0a0a 2020  idd.  block:..  
│ │ │ -00057210: 2d20 6e61 6d65 3a20 4469 7361 626c 6520  - name: Disable 
│ │ │ -00057220: 4170 6163 6865 2051 7069 6420 2871 7069  Apache Qpid (qpi
│ │ │ -00057230: 6464 2920 2d20 436f 6c6c 6563 7420 7379  dd) - Collect sy
│ │ │ -00057240: 7374 656d 6420 5365 7276 6963 6573 2050  stemd Services P
│ │ │ -00057250: 7265 7365 6e74 2069 6e20 7468 6520 5379  resent in the Sy
│ │ │ -00057260: 7374 656d 0a20 2020 2061 6e73 6962 6c65  stem.    ansible
│ │ │ -00057270: 2e62 7569 6c74 696e 2e63 6f6d 6d61 6e64  .builtin.command
│ │ │ -00057280: 3a20 7379 7374 656d 6374 6c20 2d71 206c  : systemctl -q l
│ │ │ -00057290: 6973 742d 756e 6974 2d66 696c 6573 202d  ist-unit-files -
│ │ │ -000572a0: 2d74 7970 6520 7365 7276 6963 650a 2020  -type service.  
│ │ │ -000572b0: 2020 7265 6769 7374 6572 3a20 7365 7276    register: serv
│ │ │ -000572c0: 6963 655f 6578 6973 7473 0a20 2020 2063  ice_exists.    c
│ │ │ -000572d0: 6861 6e67 6564 5f77 6865 6e3a 2066 616c  hanged_when: fal
│ │ │ -000572e0: 7365 0a20 2020 2066 6169 6c65 645f 7768  se.    failed_wh
│ │ │ -000572f0: 656e 3a20 7365 7276 6963 655f 6578 6973  en: service_exis
│ │ │ -00057300: 7473 2e72 6320 6e6f 7420 696e 205b 302c  ts.rc not in [0,
│ │ │ -00057310: 2031 5d0a 2020 2020 6368 6563 6b5f 6d6f   1].    check_mo
│ │ │ -00057320: 6465 3a20 6661 6c73 650a 0a20 202d 206e  de: false..  - n
│ │ │ -00057330: 616d 653a 2044 6973 6162 6c65 2041 7061  ame: Disable Apa
│ │ │ -00057340: 6368 6520 5170 6964 2028 7170 6964 6429  che Qpid (qpidd)
│ │ │ -00057350: 202d 2045 6e73 7572 6520 7170 6964 642e   - Ensure qpidd.
│ │ │ -00057360: 7365 7276 6963 6520 6973 204d 6173 6b65  service is Maske
│ │ │ -00057370: 640a 2020 2020 616e 7369 626c 652e 6275  d.    ansible.bu
│ │ │ -00057380: 696c 7469 6e2e 7379 7374 656d 643a 0a20  iltin.systemd:. 
│ │ │ -00057390: 2020 2020 206e 616d 653a 2071 7069 6464       name: qpidd
│ │ │ -000573a0: 2e73 6572 7669 6365 0a20 2020 2020 2073  .service.      s
│ │ │ -000573b0: 7461 7465 3a20 7374 6f70 7065 640a 2020  tate: stopped.  
│ │ │ -000573c0: 2020 2020 656e 6162 6c65 643a 2066 616c      enabled: fal
│ │ │ -000573d0: 7365 0a20 2020 2020 206d 6173 6b65 643a  se.      masked:
│ │ │ -000573e0: 2074 7275 650a 2020 2020 7768 656e 3a20   true.    when: 
│ │ │ -000573f0: 7365 7276 6963 655f 6578 6973 7473 2e73  service_exists.s
│ │ │ -00057400: 7464 6f75 745f 6c69 6e65 7320 6973 2073  tdout_lines is s
│ │ │ -00057410: 6561 7263 6828 2271 7069 6464 2e73 6572  earch("qpidd.ser
│ │ │ -00057420: 7669 6365 222c 206d 756c 7469 6c69 6e65  vice", multiline
│ │ │ -00057430: 3d54 7275 6529 0a0a 2020 2d20 6e61 6d65  =True)..  - name
│ │ │ -00057440: 3a20 556e 6974 2053 6f63 6b65 7420 4578  : Unit Socket Ex
│ │ │ -00057450: 6973 7473 202d 2071 7069 6464 2e73 6f63  ists - qpidd.soc
│ │ │ -00057460: 6b65 740a 2020 2020 616e 7369 626c 652e  ket.    ansible.
│ │ │ -00057470: 6275 696c 7469 6e2e 636f 6d6d 616e 643a  builtin.command:
│ │ │ -00057480: 2073 7973 7465 6d63 746c 202d 7120 6c69   systemctl -q li
│ │ │ -00057490: 7374 2d75 6e69 742d 6669 6c65 7320 7170  st-unit-files qp
│ │ │ -000574a0: 6964 642e 736f 636b 6574 0a20 2020 2072  idd.socket.    r
│ │ │ -000574b0: 6567 6973 7465 723a 2073 6f63 6b65 745f  egister: socket_
│ │ │ -000574c0: 6669 6c65 5f65 7869 7374 730a 2020 2020  file_exists.    
│ │ │ -000574d0: 6368 616e 6765 645f 7768 656e 3a20 6661  changed_when: fa
│ │ │ -000574e0: 6c73 650a 2020 2020 6661 696c 6564 5f77  lse.    failed_w
│ │ │ -000574f0: 6865 6e3a 2073 6f63 6b65 745f 6669 6c65  hen: socket_file
│ │ │ -00057500: 5f65 7869 7374 732e 7263 206e 6f74 2069  _exists.rc not i
│ │ │ -00057510: 6e20 5b30 2c20 315d 0a20 2020 2063 6865  n [0, 1].    che
│ │ │ -00057520: 636b 5f6d 6f64 653a 2066 616c 7365 0a0a  ck_mode: false..
│ │ │ -00057530: 2020 2d20 6e61 6d65 3a20 4469 7361 626c    - name: Disabl
│ │ │ -00057540: 6520 4170 6163 6865 2051 7069 6420 2871  e Apache Qpid (q
│ │ │ -00057550: 7069 6464 2920 2d20 4469 7361 626c 6520  pidd) - Disable 
│ │ │ -00057560: 536f 636b 6574 2071 7069 6464 0a20 2020  Socket qpidd.   
│ │ │ -00057570: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ -00057580: 2e73 7973 7465 6d64 3a0a 2020 2020 2020  .systemd:.      
│ │ │ -00057590: 6e61 6d65 3a20 7170 6964 642e 736f 636b  name: qpidd.sock
│ │ │ -000575a0: 6574 0a20 2020 2020 2065 6e61 626c 6564  et.      enabled
│ │ │ -000575b0: 3a20 6661 6c73 650a 2020 2020 2020 7374  : false.      st
│ │ │ -000575c0: 6174 653a 2073 746f 7070 6564 0a20 2020  ate: stopped.   
│ │ │ -000575d0: 2020 206d 6173 6b65 643a 2074 7275 650a     masked: true.
│ │ │ -000575e0: 2020 2020 7768 656e 3a20 736f 636b 6574      when: socket
│ │ │ -000575f0: 5f66 696c 655f 6578 6973 7473 2e73 7464  _file_exists.std
│ │ │ -00057600: 6f75 745f 6c69 6e65 7320 6973 2073 6561  out_lines is sea
│ │ │ -00057610: 7263 6828 2271 7069 6464 2e73 6f63 6b65  rch("qpidd.socke
│ │ │ -00057620: 7422 2c20 6d75 6c74 696c 696e 653d 5472  t", multiline=Tr
│ │ │ -00057630: 7565 290a 2020 7461 6773 3a0a 2020 2d20  ue).  tags:.  - 
│ │ │ -00057640: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ -00057650: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ -00057660: 2d35 332d 434d 2d37 2861 290a 2020 2d20  -53-CM-7(a).  - 
│ │ │ -00057670: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ -00057680: 2862 290a 2020 2d20 6469 7361 626c 655f  (b).  - disable_
│ │ │ -00057690: 7374 7261 7465 6779 0a20 202d 206c 6f77  strategy.  - low
│ │ │ -000576a0: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ -000576b0: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ -000576c0: 202d 206c 6f77 5f73 6576 6572 6974 790a   - low_severity.
│ │ │ -000576d0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ -000576e0: 6564 6564 0a20 202d 2073 6572 7669 6365  eded.  - service
│ │ │ -000576f0: 5f71 7069 6464 5f64 6973 6162 6c65 640a  _qpidd_disabled.
│ │ │ -00057700: 2020 2d20 7370 6563 6961 6c5f 7365 7276    - special_serv
│ │ │ -00057710: 6963 655f 626c 6f63 6b0a 2020 7768 656e  ice_block.  when
│ │ │ -00057720: 3a20 2722 6b65 726e 656c 2220 696e 2061  : '"kernel" in a
│ │ │ -00057730: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -00057740: 6b61 6765 7327 0a3c 2f63 6f64 653e 3c2f  kages'.
│ │ │ +00056bd0: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
< │ │ │ +00056c00: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +00056c10: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +00056c20: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +00056c30: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +00056c40: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Complex │ │ │ +00056c50: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ +00056c60: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Disruption:lowReboo │ │ │ +00056ca0: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ +00056cb0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ +00056cd0: 3c74 643e 6469 7361 626c 653c 2f74 643e disable │ │ │ +00056ce0: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072 - name: │ │ │ +00056d00: 4761 7468 6572 2074 6865 2070 6163 6b61 Gather the packa │ │ │ +00056d10: 6765 2066 6163 7473 0a20 2070 6163 6b61 ge facts. packa │ │ │ +00056d20: 6765 5f66 6163 7473 3a0a 2020 2020 6d61 ge_facts:. ma │ │ │ +00056d30: 6e61 6765 723a 2061 7574 6f0a 2020 7461 nager: auto. ta │ │ │ +00056d40: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030 gs:. - NIST-800 │ │ │ +00056d50: 2d35 332d 434d 2d36 2861 290a 2020 2d20 -53-CM-6(a). - │ │ │ +00056d60: 4e49 5354 2d38 3030 2d35 332d 434d 2d37 NIST-800-53-CM-7 │ │ │ +00056d70: 2861 290a 2020 2d20 4e49 5354 2d38 3030 (a). - NIST-800 │ │ │ +00056d80: 2d35 332d 434d 2d37 2862 290a 2020 2d20 -53-CM-7(b). - │ │ │ +00056d90: 6469 7361 626c 655f 7374 7261 7465 6779 disable_strategy │ │ │ +00056da0: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578 . - low_complex │ │ │ +00056db0: 6974 790a 2020 2d20 6c6f 775f 6469 7372 ity. - low_disr │ │ │ +00056dc0: 7570 7469 6f6e 0a20 202d 206c 6f77 5f73 uption. - low_s │ │ │ +00056dd0: 6576 6572 6974 790a 2020 2d20 6e6f 5f72 everity. - no_r │ │ │ +00056de0: 6562 6f6f 745f 6e65 6564 6564 0a20 202d eboot_needed. - │ │ │ +00056df0: 2073 6572 7669 6365 5f71 7069 6464 5f64 service_qpidd_d │ │ │ +00056e00: 6973 6162 6c65 640a 0a2d 206e 616d 653a isabled..- name: │ │ │ +00056e10: 2044 6973 6162 6c65 2041 7061 6368 6520 Disable Apache │ │ │ +00056e20: 5170 6964 2028 7170 6964 6429 202d 2044 Qpid (qpidd) - D │ │ │ +00056e30: 6973 6162 6c65 2073 6572 7669 6365 2071 isable service q │ │ │ +00056e40: 7069 6464 0a20 2062 6c6f 636b 3a0a 0a20 pidd. block:.. │ │ │ +00056e50: 202d 206e 616d 653a 2044 6973 6162 6c65 - name: Disable │ │ │ +00056e60: 2041 7061 6368 6520 5170 6964 2028 7170 Apache Qpid (qp │ │ │ +00056e70: 6964 6429 202d 2043 6f6c 6c65 6374 2073 idd) - Collect s │ │ │ +00056e80: 7973 7465 6d64 2053 6572 7669 6365 7320 ystemd Services │ │ │ +00056e90: 5072 6573 656e 7420 696e 2074 6865 2053 Present in the S │ │ │ +00056ea0: 7973 7465 6d0a 2020 2020 616e 7369 626c ystem. ansibl │ │ │ +00056eb0: 652e 6275 696c 7469 6e2e 636f 6d6d 616e e.builtin.comman │ │ │ +00056ec0: 643a 2073 7973 7465 6d63 746c 202d 7120 d: systemctl -q │ │ │ +00056ed0: 6c69 7374 2d75 6e69 742d 6669 6c65 7320 list-unit-files │ │ │ +00056ee0: 2d2d 7479 7065 2073 6572 7669 6365 0a20 --type service. │ │ │ +00056ef0: 2020 2072 6567 6973 7465 723a 2073 6572 register: ser │ │ │ +00056f00: 7669 6365 5f65 7869 7374 730a 2020 2020 vice_exists. │ │ │ +00056f10: 6368 616e 6765 645f 7768 656e 3a20 6661 changed_when: fa │ │ │ +00056f20: 6c73 650a 2020 2020 6661 696c 6564 5f77 lse. failed_w │ │ │ +00056f30: 6865 6e3a 2073 6572 7669 6365 5f65 7869 hen: service_exi │ │ │ +00056f40: 7374 732e 7263 206e 6f74 2069 6e20 5b30 sts.rc not in [0 │ │ │ +00056f50: 2c20 315d 0a20 2020 2063 6865 636b 5f6d , 1]. check_m │ │ │ +00056f60: 6f64 653a 2066 616c 7365 0a0a 2020 2d20 ode: false.. - │ │ │ +00056f70: 6e61 6d65 3a20 4469 7361 626c 6520 4170 name: Disable Ap │ │ │ +00056f80: 6163 6865 2051 7069 6420 2871 7069 6464 ache Qpid (qpidd │ │ │ +00056f90: 2920 2d20 456e 7375 7265 2071 7069 6464 ) - Ensure qpidd │ │ │ +00056fa0: 2e73 6572 7669 6365 2069 7320 4d61 736b .service is Mask │ │ │ +00056fb0: 6564 0a20 2020 2061 6e73 6962 6c65 2e62 ed. ansible.b │ │ │ +00056fc0: 7569 6c74 696e 2e73 7973 7465 6d64 3a0a uiltin.systemd:. │ │ │ +00056fd0: 2020 2020 2020 6e61 6d65 3a20 7170 6964 name: qpid │ │ │ +00056fe0: 642e 7365 7276 6963 650a 2020 2020 2020 d.service. │ │ │ +00056ff0: 7374 6174 653a 2073 746f 7070 6564 0a20 state: stopped. │ │ │ +00057000: 2020 2020 2065 6e61 626c 6564 3a20 6661 enabled: fa │ │ │ +00057010: 6c73 650a 2020 2020 2020 6d61 736b 6564 lse. masked │ │ │ +00057020: 3a20 7472 7565 0a20 2020 2077 6865 6e3a : true. when: │ │ │ +00057030: 2073 6572 7669 6365 5f65 7869 7374 732e service_exists. │ │ │ +00057040: 7374 646f 7574 5f6c 696e 6573 2069 7320 stdout_lines is │ │ │ +00057050: 7365 6172 6368 2822 7170 6964 642e 7365 search("qpidd.se │ │ │ +00057060: 7276 6963 6522 2c20 6d75 6c74 696c 696e rvice", multilin │ │ │ +00057070: 653d 5472 7565 290a 0a20 202d 206e 616d e=True).. - nam │ │ │ +00057080: 653a 2055 6e69 7420 536f 636b 6574 2045 e: Unit Socket E │ │ │ +00057090: 7869 7374 7320 2d20 7170 6964 642e 736f xists - qpidd.so │ │ │ +000570a0: 636b 6574 0a20 2020 2061 6e73 6962 6c65 cket. ansible │ │ │ +000570b0: 2e62 7569 6c74 696e 2e63 6f6d 6d61 6e64 .builtin.command │ │ │ +000570c0: 3a20 7379 7374 656d 6374 6c20 2d71 206c : systemctl -q l │ │ │ +000570d0: 6973 742d 756e 6974 2d66 696c 6573 2071 ist-unit-files q │ │ │ +000570e0: 7069 6464 2e73 6f63 6b65 740a 2020 2020 pidd.socket. │ │ │ +000570f0: 7265 6769 7374 6572 3a20 736f 636b 6574 register: socket │ │ │ +00057100: 5f66 696c 655f 6578 6973 7473 0a20 2020 _file_exists. │ │ │ +00057110: 2063 6861 6e67 6564 5f77 6865 6e3a 2066 changed_when: f │ │ │ +00057120: 616c 7365 0a20 2020 2066 6169 6c65 645f alse. failed_ │ │ │ +00057130: 7768 656e 3a20 736f 636b 6574 5f66 696c when: socket_fil │ │ │ +00057140: 655f 6578 6973 7473 2e72 6320 6e6f 7420 e_exists.rc not │ │ │ +00057150: 696e 205b 302c 2031 5d0a 2020 2020 6368 in [0, 1]. ch │ │ │ +00057160: 6563 6b5f 6d6f 6465 3a20 6661 6c73 650a eck_mode: false. │ │ │ +00057170: 0a20 202d 206e 616d 653a 2044 6973 6162 . - name: Disab │ │ │ +00057180: 6c65 2041 7061 6368 6520 5170 6964 2028 le Apache Qpid ( │ │ │ +00057190: 7170 6964 6429 202d 2044 6973 6162 6c65 qpidd) - Disable │ │ │ +000571a0: 2053 6f63 6b65 7420 7170 6964 640a 2020 Socket qpidd. │ │ │ +000571b0: 2020 616e 7369 626c 652e 6275 696c 7469 ansible.builti │ │ │ +000571c0: 6e2e 7379 7374 656d 643a 0a20 2020 2020 n.systemd:. │ │ │ +000571d0: 206e 616d 653a 2071 7069 6464 2e73 6f63 name: qpidd.soc │ │ │ +000571e0: 6b65 740a 2020 2020 2020 656e 6162 6c65 ket. enable │ │ │ +000571f0: 643a 2066 616c 7365 0a20 2020 2020 2073 d: false. s │ │ │ +00057200: 7461 7465 3a20 7374 6f70 7065 640a 2020 tate: stopped. │ │ │ +00057210: 2020 2020 6d61 736b 6564 3a20 7472 7565 masked: true │ │ │ +00057220: 0a20 2020 2077 6865 6e3a 2073 6f63 6b65 . when: socke │ │ │ +00057230: 745f 6669 6c65 5f65 7869 7374 732e 7374 t_file_exists.st │ │ │ +00057240: 646f 7574 5f6c 696e 6573 2069 7320 7365 dout_lines is se │ │ │ +00057250: 6172 6368 2822 7170 6964 642e 736f 636b arch("qpidd.sock │ │ │ +00057260: 6574 222c 206d 756c 7469 6c69 6e65 3d54 et", multiline=T │ │ │ +00057270: 7275 6529 0a20 2074 6167 733a 0a20 202d rue). tags:. - │ │ │ +00057280: 204e 4953 542d 3830 302d 3533 2d43 4d2d NIST-800-53-CM- │ │ │ +00057290: 3628 6129 0a20 202d 204e 4953 542d 3830 6(a). - NIST-80 │ │ │ +000572a0: 302d 3533 2d43 4d2d 3728 6129 0a20 202d 0-53-CM-7(a). - │ │ │ +000572b0: 204e 4953 542d 3830 302d 3533 2d43 4d2d NIST-800-53-CM- │ │ │ +000572c0: 3728 6229 0a20 202d 2064 6973 6162 6c65 7(b). - disable │ │ │ +000572d0: 5f73 7472 6174 6567 790a 2020 2d20 6c6f _strategy. - lo │ │ │ +000572e0: 775f 636f 6d70 6c65 7869 7479 0a20 202d w_complexity. - │ │ │ +000572f0: 206c 6f77 5f64 6973 7275 7074 696f 6e0a low_disruption. │ │ │ +00057300: 2020 2d20 6c6f 775f 7365 7665 7269 7479 - low_severity │ │ │ +00057310: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e . - no_reboot_n │ │ │ +00057320: 6565 6465 640a 2020 2d20 7365 7276 6963 eeded. - servic │ │ │ +00057330: 655f 7170 6964 645f 6469 7361 626c 6564 e_qpidd_disabled │ │ │ +00057340: 0a20 202d 2073 7065 6369 616c 5f73 6572 . - special_ser │ │ │ +00057350: 7669 6365 5f62 6c6f 636b 0a20 2077 6865 vice_block. whe │ │ │ +00057360: 6e3a 2027 226b 6572 6e65 6c22 2069 6e20 n: '"kernel" in │ │ │ +00057370: 616e 7369 626c 655f 6661 6374 732e 7061 ansible_facts.pa │ │ │ +00057380: 636b 6167 6573 270a 3c2f 636f 6465 3e3c ckages'.< │ │ │ +00057390: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c /pre>
Remediati │ │ │ +00057440: 6f6e 2050 7570 7065 7420 736e 6970 7065 on Puppet snippe │ │ │ +00057450: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
Complexity │ │ │ +000574e0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ +00057500: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ +00057510: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +00057520: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ +00057530: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ +00057550: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:enable
include disa
│ │ │ +00057590: 626c 655f 7170 6964 640a 0a63 6c61 7373  ble_qpidd..class
│ │ │ +000575a0: 2064 6973 6162 6c65 5f71 7069 6464 207b   disable_qpidd {
│ │ │ +000575b0: 0a20 2073 6572 7669 6365 207b 2771 7069  .  service {'qpi
│ │ │ +000575c0: 6464 273a 0a20 2020 2065 6e61 626c 6520  dd':.    enable 
│ │ │ +000575d0: 3d26 6774 3b20 6661 6c73 652c 0a20 2020  => false,.   
│ │ │ +000575e0: 2065 6e73 7572 6520 3d26 6774 3b20 2773   ensure => 's
│ │ │ +000575f0: 746f 7070 6564 272c 0a20 207d 0a7d 0a3c  topped',.  }.}.<
│ │ │ +00057600: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
Re │ │ │ +000576b0: 6d65 6469 6174 696f 6e20 4f53 4275 696c mediation OSBuil │ │ │ +000576c0: 6420 426c 7565 7072 696e 7420 736e 6970 d Blueprint snip │ │ │ +000576d0: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ +000576e0: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +000576f0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +00057700: 7365 2220 6964 3d22 6964 3439 223e 3c70 se" id="id49">

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

│ │ │ 00057760: 3c2f 7464 3e3c 2f74 723e 3c2f 7462 6f64 < │ │ │ 00057780: 2f74 723e 3c74 7220 6461 7461 2d74 742d /tr>Remedi │ │ │ -00058830: 6174 696f 6e20 4f53 4275 696c 6420 426c ation OSBuild Bl │ │ │ -00058840: 7565 7072 696e 7420 736e 6970 7065 7420 ueprint snippet │ │ │ -00058850: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
<
│ │ │ -00058890: 636f 6465 3e0a 5b63 7573 746f 6d69 7a61  code>.[customiza
│ │ │ -000588a0: 7469 6f6e 732e 7365 7276 6963 6573 5d0a  tions.services].
│ │ │ -000588b0: 6d61 736b 6564 203d 205b 2272 6469 7363  masked = ["rdisc
│ │ │ -000588c0: 225d 0a3c 2f63 6f64 653e 3c2f 7072 653e  "].
│ │ │ -000588d0: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation Pu │ │ │ -00058980: 7070 6574 2073 6e69 7070 6574 20e2 87b2 ppet snippet ... │ │ │ -00058990: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
< │ │ │ -00058a60: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -00058a70: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
i
│ │ │ -00058ac0: 6e63 6c75 6465 2064 6973 6162 6c65 5f72  nclude disable_r
│ │ │ -00058ad0: 6469 7363 0a0a 636c 6173 7320 6469 7361  disc..class disa
│ │ │ -00058ae0: 626c 655f 7264 6973 6320 7b0a 2020 7365  ble_rdisc {.  se
│ │ │ -00058af0: 7276 6963 6520 7b27 7264 6973 6327 3a0a  rvice {'rdisc':.
│ │ │ -00058b00: 2020 2020 656e 6162 6c65 203d 2667 743b      enable =>
│ │ │ -00058b10: 2066 616c 7365 2c0a 2020 2020 656e 7375   false,.    ensu
│ │ │ -00058b20: 7265 203d 2667 743b 2027 7374 6f70 7065  re => 'stoppe
│ │ │ -00058b30: 6427 2c0a 2020 7d0a 7d0a 3c2f 636f 6465  d',.  }.}.
Remedia │ │ │ -00058bf0: 7469 6f6e 2041 6e73 6962 6c65 2073 6e69 tion Ansible sni │ │ │ -00058c00: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -00058c10: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
< │ │ │ -00058c40: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ -00058c50: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ -00058c60: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ -00058c70: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ -00058c80: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >
Disruption:Strategy: │ │ │ -00058d10: 3c74 643e 6469 7361 626c 653c 2f74 643e │ │ │ -00058d20: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
Complexity:low
Disrup │ │ │ -00058a40: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -00058a50: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -00058a90: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ -00058aa0: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Complex │ │ │ -00058c90: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ -00058ca0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
low
Reboo │ │ │ -00058ce0: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -00058cf0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
disable
- name: │ │ │ -00058d40: 4761 7468 6572 2074 6865 2070 6163 6b61 Gather the packa │ │ │ -00058d50: 6765 2066 6163 7473 0a20 2070 6163 6b61 ge facts. packa │ │ │ -00058d60: 6765 5f66 6163 7473 3a0a 2020 2020 6d61 ge_facts:. ma │ │ │ -00058d70: 6e61 6765 723a 2061 7574 6f0a 2020 7461 nager: auto. ta │ │ │ -00058d80: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030 gs:. - NIST-800 │ │ │ -00058d90: 2d35 332d 4143 2d34 0a20 202d 204e 4953 -53-AC-4. - NIS │ │ │ -00058da0: 542d 3830 302d 3533 2d43 4d2d 3628 6129 T-800-53-CM-6(a) │ │ │ -00058db0: 0a20 202d 204e 4953 542d 3830 302d 3533 . - NIST-800-53 │ │ │ -00058dc0: 2d43 4d2d 3728 6129 0a20 202d 204e 4953 -CM-7(a). - NIS │ │ │ -00058dd0: 542d 3830 302d 3533 2d43 4d2d 3728 6229 T-800-53-CM-7(b) │ │ │ -00058de0: 0a20 202d 2064 6973 6162 6c65 5f73 7472 . - disable_str │ │ │ -00058df0: 6174 6567 790a 2020 2d20 6c6f 775f 636f ategy. - low_co │ │ │ -00058e00: 6d70 6c65 7869 7479 0a20 202d 206c 6f77 mplexity. - low │ │ │ -00058e10: 5f64 6973 7275 7074 696f 6e0a 2020 2d20 _disruption. - │ │ │ -00058e20: 6d65 6469 756d 5f73 6576 6572 6974 790a medium_severity. │ │ │ -00058e30: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65 - no_reboot_ne │ │ │ -00058e40: 6564 6564 0a20 202d 2073 6572 7669 6365 eded. - service │ │ │ -00058e50: 5f72 6469 7363 5f64 6973 6162 6c65 640a _rdisc_disabled. │ │ │ -00058e60: 0a2d 206e 616d 653a 2044 6973 6162 6c65 .- name: Disable │ │ │ -00058e70: 204e 6574 776f 726b 2052 6f75 7465 7220 Network Router │ │ │ -00058e80: 4469 7363 6f76 6572 7920 4461 656d 6f6e Discovery Daemon │ │ │ -00058e90: 2028 7264 6973 6329 202d 2044 6973 6162 (rdisc) - Disab │ │ │ -00058ea0: 6c65 2073 6572 7669 6365 2072 6469 7363 le service rdisc │ │ │ -00058eb0: 0a20 2062 6c6f 636b 3a0a 0a20 202d 206e . block:.. - n │ │ │ -00058ec0: 616d 653a 2044 6973 6162 6c65 204e 6574 ame: Disable Net │ │ │ -00058ed0: 776f 726b 2052 6f75 7465 7220 4469 7363 work Router Disc │ │ │ -00058ee0: 6f76 6572 7920 4461 656d 6f6e 2028 7264 overy Daemon (rd │ │ │ -00058ef0: 6973 6329 202d 2043 6f6c 6c65 6374 2073 isc) - Collect s │ │ │ -00058f00: 7973 7465 6d64 2053 6572 7669 6365 730a ystemd Services. │ │ │ -00058f10: 2020 2020 2020 5072 6573 656e 7420 696e Present in │ │ │ -00058f20: 2074 6865 2053 7973 7465 6d0a 2020 2020 the System. │ │ │ -00058f30: 616e 7369 626c 652e 6275 696c 7469 6e2e ansible.builtin. │ │ │ -00058f40: 636f 6d6d 616e 643a 2073 7973 7465 6d63 command: systemc │ │ │ -00058f50: 746c 202d 7120 6c69 7374 2d75 6e69 742d tl -q list-unit- │ │ │ -00058f60: 6669 6c65 7320 2d2d 7479 7065 2073 6572 files --type ser │ │ │ -00058f70: 7669 6365 0a20 2020 2072 6567 6973 7465 vice. registe │ │ │ -00058f80: 723a 2073 6572 7669 6365 5f65 7869 7374 r: service_exist │ │ │ -00058f90: 730a 2020 2020 6368 616e 6765 645f 7768 s. changed_wh │ │ │ -00058fa0: 656e 3a20 6661 6c73 650a 2020 2020 6661 en: false. fa │ │ │ -00058fb0: 696c 6564 5f77 6865 6e3a 2073 6572 7669 iled_when: servi │ │ │ -00058fc0: 6365 5f65 7869 7374 732e 7263 206e 6f74 ce_exists.rc not │ │ │ -00058fd0: 2069 6e20 5b30 2c20 315d 0a20 2020 2063 in [0, 1]. c │ │ │ -00058fe0: 6865 636b 5f6d 6f64 653a 2066 616c 7365 heck_mode: false │ │ │ -00058ff0: 0a0a 2020 2d20 6e61 6d65 3a20 4469 7361 .. - name: Disa │ │ │ -00059000: 626c 6520 4e65 7477 6f72 6b20 526f 7574 ble Network Rout │ │ │ -00059010: 6572 2044 6973 636f 7665 7279 2044 6165 er Discovery Dae │ │ │ -00059020: 6d6f 6e20 2872 6469 7363 2920 2d20 456e mon (rdisc) - En │ │ │ -00059030: 7375 7265 2072 6469 7363 2e73 6572 7669 sure rdisc.servi │ │ │ -00059040: 6365 2069 730a 2020 2020 2020 4d61 736b ce is. Mask │ │ │ -00059050: 6564 0a20 2020 2061 6e73 6962 6c65 2e62 ed. ansible.b │ │ │ -00059060: 7569 6c74 696e 2e73 7973 7465 6d64 3a0a uiltin.systemd:. │ │ │ -00059070: 2020 2020 2020 6e61 6d65 3a20 7264 6973 name: rdis │ │ │ -00059080: 632e 7365 7276 6963 650a 2020 2020 2020 c.service. │ │ │ -00059090: 7374 6174 653a 2073 746f 7070 6564 0a20 state: stopped. │ │ │ -000590a0: 2020 2020 2065 6e61 626c 6564 3a20 6661 enabled: fa │ │ │ -000590b0: 6c73 650a 2020 2020 2020 6d61 736b 6564 lse. masked │ │ │ -000590c0: 3a20 7472 7565 0a20 2020 2077 6865 6e3a : true. when: │ │ │ -000590d0: 2073 6572 7669 6365 5f65 7869 7374 732e service_exists. │ │ │ -000590e0: 7374 646f 7574 5f6c 696e 6573 2069 7320 stdout_lines is │ │ │ -000590f0: 7365 6172 6368 2822 7264 6973 632e 7365 search("rdisc.se │ │ │ -00059100: 7276 6963 6522 2c20 6d75 6c74 696c 696e rvice", multilin │ │ │ -00059110: 653d 5472 7565 290a 0a20 202d 206e 616d e=True).. - nam │ │ │ -00059120: 653a 2055 6e69 7420 536f 636b 6574 2045 e: Unit Socket E │ │ │ -00059130: 7869 7374 7320 2d20 7264 6973 632e 736f xists - rdisc.so │ │ │ -00059140: 636b 6574 0a20 2020 2061 6e73 6962 6c65 cket. ansible │ │ │ -00059150: 2e62 7569 6c74 696e 2e63 6f6d 6d61 6e64 .builtin.command │ │ │ -00059160: 3a20 7379 7374 656d 6374 6c20 2d71 206c : systemctl -q l │ │ │ -00059170: 6973 742d 756e 6974 2d66 696c 6573 2072 ist-unit-files r │ │ │ -00059180: 6469 7363 2e73 6f63 6b65 740a 2020 2020 disc.socket. │ │ │ -00059190: 7265 6769 7374 6572 3a20 736f 636b 6574 register: socket │ │ │ -000591a0: 5f66 696c 655f 6578 6973 7473 0a20 2020 _file_exists. │ │ │ -000591b0: 2063 6861 6e67 6564 5f77 6865 6e3a 2066 changed_when: f │ │ │ -000591c0: 616c 7365 0a20 2020 2066 6169 6c65 645f alse. failed_ │ │ │ -000591d0: 7768 656e 3a20 736f 636b 6574 5f66 696c when: socket_fil │ │ │ -000591e0: 655f 6578 6973 7473 2e72 6320 6e6f 7420 e_exists.rc not │ │ │ -000591f0: 696e 205b 302c 2031 5d0a 2020 2020 6368 in [0, 1]. ch │ │ │ -00059200: 6563 6b5f 6d6f 6465 3a20 6661 6c73 650a eck_mode: false. │ │ │ -00059210: 0a20 202d 206e 616d 653a 2044 6973 6162 . - name: Disab │ │ │ -00059220: 6c65 204e 6574 776f 726b 2052 6f75 7465 le Network Route │ │ │ -00059230: 7220 4469 7363 6f76 6572 7920 4461 656d r Discovery Daem │ │ │ -00059240: 6f6e 2028 7264 6973 6329 202d 2044 6973 on (rdisc) - Dis │ │ │ -00059250: 6162 6c65 2053 6f63 6b65 7420 7264 6973 able Socket rdis │ │ │ -00059260: 630a 2020 2020 616e 7369 626c 652e 6275 c. ansible.bu │ │ │ -00059270: 696c 7469 6e2e 7379 7374 656d 643a 0a20 iltin.systemd:. │ │ │ -00059280: 2020 2020 206e 616d 653a 2072 6469 7363 name: rdisc │ │ │ -00059290: 2e73 6f63 6b65 740a 2020 2020 2020 656e .socket. en │ │ │ -000592a0: 6162 6c65 643a 2066 616c 7365 0a20 2020 abled: false. │ │ │ -000592b0: 2020 2073 7461 7465 3a20 7374 6f70 7065 state: stoppe │ │ │ -000592c0: 640a 2020 2020 2020 6d61 736b 6564 3a20 d. masked: │ │ │ -000592d0: 7472 7565 0a20 2020 2077 6865 6e3a 2073 true. when: s │ │ │ -000592e0: 6f63 6b65 745f 6669 6c65 5f65 7869 7374 ocket_file_exist │ │ │ -000592f0: 732e 7374 646f 7574 5f6c 696e 6573 2069 s.stdout_lines i │ │ │ -00059300: 7320 7365 6172 6368 2822 7264 6973 632e s search("rdisc. │ │ │ -00059310: 736f 636b 6574 222c 206d 756c 7469 6c69 socket", multili │ │ │ -00059320: 6e65 3d54 7275 6529 0a20 2074 6167 733a ne=True). tags: │ │ │ -00059330: 0a20 202d 204e 4953 542d 3830 302d 3533 . - NIST-800-53 │ │ │ -00059340: 2d41 432d 340a 2020 2d20 4e49 5354 2d38 -AC-4. - NIST-8 │ │ │ -00059350: 3030 2d35 332d 434d 2d36 2861 290a 2020 00-53-CM-6(a). │ │ │ -00059360: 2d20 4e49 5354 2d38 3030 2d35 332d 434d - NIST-800-53-CM │ │ │ -00059370: 2d37 2861 290a 2020 2d20 4e49 5354 2d38 -7(a). - NIST-8 │ │ │ -00059380: 3030 2d35 332d 434d 2d37 2862 290a 2020 00-53-CM-7(b). │ │ │ -00059390: 2d20 6469 7361 626c 655f 7374 7261 7465 - disable_strate │ │ │ -000593a0: 6779 0a20 202d 206c 6f77 5f63 6f6d 706c gy. - low_compl │ │ │ -000593b0: 6578 6974 790a 2020 2d20 6c6f 775f 6469 exity. - low_di │ │ │ -000593c0: 7372 7570 7469 6f6e 0a20 202d 206d 6564 sruption. - med │ │ │ -000593d0: 6975 6d5f 7365 7665 7269 7479 0a20 202d ium_severity. - │ │ │ -000593e0: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465 no_reboot_neede │ │ │ -000593f0: 640a 2020 2d20 7365 7276 6963 655f 7264 d. - service_rd │ │ │ -00059400: 6973 635f 6469 7361 626c 6564 0a20 202d isc_disabled. - │ │ │ -00059410: 2073 7065 6369 616c 5f73 6572 7669 6365 special_service │ │ │ -00059420: 5f62 6c6f 636b 0a20 2077 6865 6e3a 2027 _block. when: ' │ │ │ -00059430: 226b 6572 6e65 6c22 2069 6e20 616e 7369 "kernel" in ansi │ │ │ -00059440: 626c 655f 6661 6374 732e 7061 636b 6167 ble_facts.packag │ │ │ -00059450: 6573 270a 3c2f 636f 6465 3e3c 2f70 7265 es'.
│ │ │ +00058880: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ +000588f0: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ +00058910: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ +00058940: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
Comple │ │ │ +000588d0: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ +000588e0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ +00058920: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +00058930: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
disable

- name: │ │ │ +00058980: 2047 6174 6865 7220 7468 6520 7061 636b Gather the pack │ │ │ +00058990: 6167 6520 6661 6374 730a 2020 7061 636b age facts. pack │ │ │ +000589a0: 6167 655f 6661 6374 733a 0a20 2020 206d age_facts:. m │ │ │ +000589b0: 616e 6167 6572 3a20 6175 746f 0a20 2074 anager: auto. t │ │ │ +000589c0: 6167 733a 0a20 202d 204e 4953 542d 3830 ags:. - NIST-80 │ │ │ +000589d0: 302d 3533 2d41 432d 340a 2020 2d20 4e49 0-53-AC-4. - NI │ │ │ +000589e0: 5354 2d38 3030 2d35 332d 434d 2d36 2861 ST-800-53-CM-6(a │ │ │ +000589f0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35 ). - NIST-800-5 │ │ │ +00058a00: 332d 434d 2d37 2861 290a 2020 2d20 4e49 3-CM-7(a). - NI │ │ │ +00058a10: 5354 2d38 3030 2d35 332d 434d 2d37 2862 ST-800-53-CM-7(b │ │ │ +00058a20: 290a 2020 2d20 6469 7361 626c 655f 7374 ). - disable_st │ │ │ +00058a30: 7261 7465 6779 0a20 202d 206c 6f77 5f63 rategy. - low_c │ │ │ +00058a40: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f omplexity. - lo │ │ │ +00058a50: 775f 6469 7372 7570 7469 6f6e 0a20 202d w_disruption. - │ │ │ +00058a60: 206d 6564 6975 6d5f 7365 7665 7269 7479 medium_severity │ │ │ +00058a70: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e . - no_reboot_n │ │ │ +00058a80: 6565 6465 640a 2020 2d20 7365 7276 6963 eeded. - servic │ │ │ +00058a90: 655f 7264 6973 635f 6469 7361 626c 6564 e_rdisc_disabled │ │ │ +00058aa0: 0a0a 2d20 6e61 6d65 3a20 4469 7361 626c ..- name: Disabl │ │ │ +00058ab0: 6520 4e65 7477 6f72 6b20 526f 7574 6572 e Network Router │ │ │ +00058ac0: 2044 6973 636f 7665 7279 2044 6165 6d6f Discovery Daemo │ │ │ +00058ad0: 6e20 2872 6469 7363 2920 2d20 4469 7361 n (rdisc) - Disa │ │ │ +00058ae0: 626c 6520 7365 7276 6963 6520 7264 6973 ble service rdis │ │ │ +00058af0: 630a 2020 626c 6f63 6b3a 0a0a 2020 2d20 c. block:.. - │ │ │ +00058b00: 6e61 6d65 3a20 4469 7361 626c 6520 4e65 name: Disable Ne │ │ │ +00058b10: 7477 6f72 6b20 526f 7574 6572 2044 6973 twork Router Dis │ │ │ +00058b20: 636f 7665 7279 2044 6165 6d6f 6e20 2872 covery Daemon (r │ │ │ +00058b30: 6469 7363 2920 2d20 436f 6c6c 6563 7420 disc) - Collect │ │ │ +00058b40: 7379 7374 656d 6420 5365 7276 6963 6573 systemd Services │ │ │ +00058b50: 0a20 2020 2020 2050 7265 7365 6e74 2069 . Present i │ │ │ +00058b60: 6e20 7468 6520 5379 7374 656d 0a20 2020 n the System. │ │ │ +00058b70: 2061 6e73 6962 6c65 2e62 7569 6c74 696e ansible.builtin │ │ │ +00058b80: 2e63 6f6d 6d61 6e64 3a20 7379 7374 656d .command: system │ │ │ +00058b90: 6374 6c20 2d71 206c 6973 742d 756e 6974 ctl -q list-unit │ │ │ +00058ba0: 2d66 696c 6573 202d 2d74 7970 6520 7365 -files --type se │ │ │ +00058bb0: 7276 6963 650a 2020 2020 7265 6769 7374 rvice. regist │ │ │ +00058bc0: 6572 3a20 7365 7276 6963 655f 6578 6973 er: service_exis │ │ │ +00058bd0: 7473 0a20 2020 2063 6861 6e67 6564 5f77 ts. changed_w │ │ │ +00058be0: 6865 6e3a 2066 616c 7365 0a20 2020 2066 hen: false. f │ │ │ +00058bf0: 6169 6c65 645f 7768 656e 3a20 7365 7276 ailed_when: serv │ │ │ +00058c00: 6963 655f 6578 6973 7473 2e72 6320 6e6f ice_exists.rc no │ │ │ +00058c10: 7420 696e 205b 302c 2031 5d0a 2020 2020 t in [0, 1]. │ │ │ +00058c20: 6368 6563 6b5f 6d6f 6465 3a20 6661 6c73 check_mode: fals │ │ │ +00058c30: 650a 0a20 202d 206e 616d 653a 2044 6973 e.. - name: Dis │ │ │ +00058c40: 6162 6c65 204e 6574 776f 726b 2052 6f75 able Network Rou │ │ │ +00058c50: 7465 7220 4469 7363 6f76 6572 7920 4461 ter Discovery Da │ │ │ +00058c60: 656d 6f6e 2028 7264 6973 6329 202d 2045 emon (rdisc) - E │ │ │ +00058c70: 6e73 7572 6520 7264 6973 632e 7365 7276 nsure rdisc.serv │ │ │ +00058c80: 6963 6520 6973 0a20 2020 2020 204d 6173 ice is. Mas │ │ │ +00058c90: 6b65 640a 2020 2020 616e 7369 626c 652e ked. ansible. │ │ │ +00058ca0: 6275 696c 7469 6e2e 7379 7374 656d 643a builtin.systemd: │ │ │ +00058cb0: 0a20 2020 2020 206e 616d 653a 2072 6469 . name: rdi │ │ │ +00058cc0: 7363 2e73 6572 7669 6365 0a20 2020 2020 sc.service. │ │ │ +00058cd0: 2073 7461 7465 3a20 7374 6f70 7065 640a state: stopped. │ │ │ +00058ce0: 2020 2020 2020 656e 6162 6c65 643a 2066 enabled: f │ │ │ +00058cf0: 616c 7365 0a20 2020 2020 206d 6173 6b65 alse. maske │ │ │ +00058d00: 643a 2074 7275 650a 2020 2020 7768 656e d: true. when │ │ │ +00058d10: 3a20 7365 7276 6963 655f 6578 6973 7473 : service_exists │ │ │ +00058d20: 2e73 7464 6f75 745f 6c69 6e65 7320 6973 .stdout_lines is │ │ │ +00058d30: 2073 6561 7263 6828 2272 6469 7363 2e73 search("rdisc.s │ │ │ +00058d40: 6572 7669 6365 222c 206d 756c 7469 6c69 ervice", multili │ │ │ +00058d50: 6e65 3d54 7275 6529 0a0a 2020 2d20 6e61 ne=True).. - na │ │ │ +00058d60: 6d65 3a20 556e 6974 2053 6f63 6b65 7420 me: Unit Socket │ │ │ +00058d70: 4578 6973 7473 202d 2072 6469 7363 2e73 Exists - rdisc.s │ │ │ +00058d80: 6f63 6b65 740a 2020 2020 616e 7369 626c ocket. ansibl │ │ │ +00058d90: 652e 6275 696c 7469 6e2e 636f 6d6d 616e e.builtin.comman │ │ │ +00058da0: 643a 2073 7973 7465 6d63 746c 202d 7120 d: systemctl -q │ │ │ +00058db0: 6c69 7374 2d75 6e69 742d 6669 6c65 7320 list-unit-files │ │ │ +00058dc0: 7264 6973 632e 736f 636b 6574 0a20 2020 rdisc.socket. │ │ │ +00058dd0: 2072 6567 6973 7465 723a 2073 6f63 6b65 register: socke │ │ │ +00058de0: 745f 6669 6c65 5f65 7869 7374 730a 2020 t_file_exists. │ │ │ +00058df0: 2020 6368 616e 6765 645f 7768 656e 3a20 changed_when: │ │ │ +00058e00: 6661 6c73 650a 2020 2020 6661 696c 6564 false. failed │ │ │ +00058e10: 5f77 6865 6e3a 2073 6f63 6b65 745f 6669 _when: socket_fi │ │ │ +00058e20: 6c65 5f65 7869 7374 732e 7263 206e 6f74 le_exists.rc not │ │ │ +00058e30: 2069 6e20 5b30 2c20 315d 0a20 2020 2063 in [0, 1]. c │ │ │ +00058e40: 6865 636b 5f6d 6f64 653a 2066 616c 7365 heck_mode: false │ │ │ +00058e50: 0a0a 2020 2d20 6e61 6d65 3a20 4469 7361 .. - name: Disa │ │ │ +00058e60: 626c 6520 4e65 7477 6f72 6b20 526f 7574 ble Network Rout │ │ │ +00058e70: 6572 2044 6973 636f 7665 7279 2044 6165 er Discovery Dae │ │ │ +00058e80: 6d6f 6e20 2872 6469 7363 2920 2d20 4469 mon (rdisc) - Di │ │ │ +00058e90: 7361 626c 6520 536f 636b 6574 2072 6469 sable Socket rdi │ │ │ +00058ea0: 7363 0a20 2020 2061 6e73 6962 6c65 2e62 sc. ansible.b │ │ │ +00058eb0: 7569 6c74 696e 2e73 7973 7465 6d64 3a0a uiltin.systemd:. │ │ │ +00058ec0: 2020 2020 2020 6e61 6d65 3a20 7264 6973 name: rdis │ │ │ +00058ed0: 632e 736f 636b 6574 0a20 2020 2020 2065 c.socket. e │ │ │ +00058ee0: 6e61 626c 6564 3a20 6661 6c73 650a 2020 nabled: false. │ │ │ +00058ef0: 2020 2020 7374 6174 653a 2073 746f 7070 state: stopp │ │ │ +00058f00: 6564 0a20 2020 2020 206d 6173 6b65 643a ed. masked: │ │ │ +00058f10: 2074 7275 650a 2020 2020 7768 656e 3a20 true. when: │ │ │ +00058f20: 736f 636b 6574 5f66 696c 655f 6578 6973 socket_file_exis │ │ │ +00058f30: 7473 2e73 7464 6f75 745f 6c69 6e65 7320 ts.stdout_lines │ │ │ +00058f40: 6973 2073 6561 7263 6828 2272 6469 7363 is search("rdisc │ │ │ +00058f50: 2e73 6f63 6b65 7422 2c20 6d75 6c74 696c .socket", multil │ │ │ +00058f60: 696e 653d 5472 7565 290a 2020 7461 6773 ine=True). tags │ │ │ +00058f70: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35 :. - NIST-800-5 │ │ │ +00058f80: 332d 4143 2d34 0a20 202d 204e 4953 542d 3-AC-4. - NIST- │ │ │ +00058f90: 3830 302d 3533 2d43 4d2d 3628 6129 0a20 800-53-CM-6(a). │ │ │ +00058fa0: 202d 204e 4953 542d 3830 302d 3533 2d43 - NIST-800-53-C │ │ │ +00058fb0: 4d2d 3728 6129 0a20 202d 204e 4953 542d M-7(a). - NIST- │ │ │ +00058fc0: 3830 302d 3533 2d43 4d2d 3728 6229 0a20 800-53-CM-7(b). │ │ │ +00058fd0: 202d 2064 6973 6162 6c65 5f73 7472 6174 - disable_strat │ │ │ +00058fe0: 6567 790a 2020 2d20 6c6f 775f 636f 6d70 egy. - low_comp │ │ │ +00058ff0: 6c65 7869 7479 0a20 202d 206c 6f77 5f64 lexity. - low_d │ │ │ +00059000: 6973 7275 7074 696f 6e0a 2020 2d20 6d65 isruption. - me │ │ │ +00059010: 6469 756d 5f73 6576 6572 6974 790a 2020 dium_severity. │ │ │ +00059020: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564 - no_reboot_need │ │ │ +00059030: 6564 0a20 202d 2073 6572 7669 6365 5f72 ed. - service_r │ │ │ +00059040: 6469 7363 5f64 6973 6162 6c65 640a 2020 disc_disabled. │ │ │ +00059050: 2d20 7370 6563 6961 6c5f 7365 7276 6963 - special_servic │ │ │ +00059060: 655f 626c 6f63 6b0a 2020 7768 656e 3a20 e_block. when: │ │ │ +00059070: 2722 6b65 726e 656c 2220 696e 2061 6e73 '"kernel" in ans │ │ │ +00059080: 6962 6c65 5f66 6163 7473 2e70 6163 6b61 ible_facts.packa │ │ │ +00059090: 6765 7327 0a3c 2f63 6f64 653e 3c2f 7072 ges'.

Remediation │ │ │ +00059150: 5075 7070 6574 2073 6e69 7070 6574 20e2 Puppet snippet . │ │ │ +00059160: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
< │ │ │ +000591e0: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ +00059200: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ +00059250: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
include disable
│ │ │ +000592a0: 5f72 6469 7363 0a0a 636c 6173 7320 6469  _rdisc..class di
│ │ │ +000592b0: 7361 626c 655f 7264 6973 6320 7b0a 2020  sable_rdisc {.  
│ │ │ +000592c0: 7365 7276 6963 6520 7b27 7264 6973 6327  service {'rdisc'
│ │ │ +000592d0: 3a0a 2020 2020 656e 6162 6c65 203d 2667  :.    enable =&g
│ │ │ +000592e0: 743b 2066 616c 7365 2c0a 2020 2020 656e  t; false,.    en
│ │ │ +000592f0: 7375 7265 203d 2667 743b 2027 7374 6f70  sure => 'stop
│ │ │ +00059300: 7065 6427 2c0a 2020 7d0a 7d0a 3c2f 636f  ped',.  }.}.
< │ │ │ +00059320: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ +00059330: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ +00059340: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ +00059350: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ +00059360: 6435 3322 2074 6162 696e 6465 783d 2230 d53" tabindex="0 │ │ │ +00059370: 2220 726f 6c65 3d22 6275 7474 6f6e 2220 " role="button" │ │ │ +00059380: 6172 6961 2d65 7870 616e 6465 643d 2266 aria-expanded="f │ │ │ +00059390: 616c 7365 2220 7469 746c 653d 2241 6374 alse" title="Act │ │ │ +000593a0: 6976 6174 6520 746f 2072 6576 6561 6c22 ivate to reveal" │ │ │ +000593b0: 2068 7265 663d 2223 2122 3e52 656d 6564 href="#!">Remed │ │ │ +000593c0: 6961 7469 6f6e 204f 5342 7569 6c64 2042 iation OSBuild B │ │ │ +000593d0: 6c75 6570 7269 6e74 2073 6e69 7070 6574 lueprint snippet │ │ │ +000593e0: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
│ │ │ +00059420: 3c63 6f64 653e 0a5b 6375 7374 6f6d 697a  .[customiz
│ │ │ +00059430: 6174 696f 6e73 2e73 6572 7669 6365 735d  ations.services]
│ │ │ +00059440: 0a6d 6173 6b65 6420 3d20 5b22 7264 6973  .masked = ["rdis
│ │ │ +00059450: 6322 5d0a 3c2f 636f 6465 3e3c 2f70 7265  c"].
< │ │ │ 00059480: 2f74 6162 6c65 3e3c 2f74 643e 3c2f 7472 /table> │ │ │ -0005a760: 5265 6d65 6469 6174 696f 6e20 4f53 4275 Remediation OSBu │ │ │ -0005a770: 696c 6420 426c 7565 7072 696e 7420 736e ild Blueprint sn │ │ │ -0005a780: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ -0005a7c0: 3c70 7265 3e3c 636f 6465 3e0a 5b63 7573
.[cus
│ │ │ -0005a7d0: 746f 6d69 7a61 7469 6f6e 732e 7365 7276  tomizations.serv
│ │ │ -0005a7e0: 6963 6573 5d0a 6d61 736b 6564 203d 205b  ices].masked = [
│ │ │ -0005a7f0: 2261 7464 225d 0a3c 2f63 6f64 653e 3c2f  "atd"].
Remediatio │ │ │ -0005a8b0: 6e20 5075 7070 6574 2073 6e69 7070 6574 n Puppet snippet │ │ │ -0005a8c0: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
low< │ │ │ -0005a990: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr> │ │ │ -0005a9e0: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
low
Disr │ │ │ +00059210: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +00059220: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ +00059260: 7465 6779 3a3c 2f74 683e 3c74 643e 656e tegy:en │ │ │ +00059270: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
Complexity: │ │ │ -0005a950: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Di │ │ │ -0005a970: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:
Reboot:false
St │ │ │ -0005a9c0: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ -0005a9d0: 656e 6162 6c65 3c2f 7464 3e3c 2f74 723e enable
include disab
│ │ │ -0005aa00: 6c65 5f61 7464 0a0a 636c 6173 7320 6469  le_atd..class di
│ │ │ -0005aa10: 7361 626c 655f 6174 6420 7b0a 2020 7365  sable_atd {.  se
│ │ │ -0005aa20: 7276 6963 6520 7b27 6174 6427 3a0a 2020  rvice {'atd':.  
│ │ │ -0005aa30: 2020 656e 6162 6c65 203d 2667 743b 2066    enable => f
│ │ │ -0005aa40: 616c 7365 2c0a 2020 2020 656e 7375 7265  alse,.    ensure
│ │ │ -0005aa50: 203d 2667 743b 2027 7374 6f70 7065 6427   => 'stopped'
│ │ │ -0005aa60: 2c0a 2020 7d0a 7d0a 3c2f 636f 6465 3e3c  ,.  }.}.<
│ │ │ -0005aa70: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>
Remediati │ │ │ -0005ab20: 6f6e 2041 6e73 6962 6c65 2073 6e69 7070 on Ansible snipp │ │ │ -0005ab30: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
< │ │ │ -0005abb0: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ -0005abc0: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ -0005abe0: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ -0005abf0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ -0005ac10: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ -0005ac30: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:disable
│ │ │ -0005ac60: 3c63 6f64 653e 2d20 6e61 6d65 3a20 4761  - name: Ga
│ │ │ -0005ac70: 7468 6572 2074 6865 2070 6163 6b61 6765  ther the package
│ │ │ -0005ac80: 2066 6163 7473 0a20 2070 6163 6b61 6765   facts.  package
│ │ │ -0005ac90: 5f66 6163 7473 3a0a 2020 2020 6d61 6e61  _facts:.    mana
│ │ │ -0005aca0: 6765 723a 2061 7574 6f0a 2020 7461 6773  ger: auto.  tags
│ │ │ -0005acb0: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ -0005acc0: 332d 434d 2d36 2861 290a 2020 2d20 4e49  3-CM-6(a).  - NI
│ │ │ -0005acd0: 5354 2d38 3030 2d35 332d 434d 2d37 2861  ST-800-53-CM-7(a
│ │ │ -0005ace0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -0005acf0: 332d 434d 2d37 2862 290a 2020 2d20 6469  3-CM-7(b).  - di
│ │ │ -0005ad00: 7361 626c 655f 7374 7261 7465 6779 0a20  sable_strategy. 
│ │ │ -0005ad10: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ -0005ad20: 790a 2020 2d20 6c6f 775f 6469 7372 7570  y.  - low_disrup
│ │ │ -0005ad30: 7469 6f6e 0a20 202d 206d 6564 6975 6d5f  tion.  - medium_
│ │ │ -0005ad40: 7365 7665 7269 7479 0a20 202d 206e 6f5f  severity.  - no_
│ │ │ -0005ad50: 7265 626f 6f74 5f6e 6565 6465 640a 2020  reboot_needed.  
│ │ │ -0005ad60: 2d20 7365 7276 6963 655f 6174 645f 6469  - service_atd_di
│ │ │ -0005ad70: 7361 626c 6564 0a0a 2d20 6e61 6d65 3a20  sabled..- name: 
│ │ │ -0005ad80: 4469 7361 626c 6520 4174 2053 6572 7669  Disable At Servi
│ │ │ -0005ad90: 6365 2028 6174 6429 202d 2044 6973 6162  ce (atd) - Disab
│ │ │ -0005ada0: 6c65 2073 6572 7669 6365 2061 7464 0a20  le service atd. 
│ │ │ -0005adb0: 2062 6c6f 636b 3a0a 0a20 202d 206e 616d   block:..  - nam
│ │ │ -0005adc0: 653a 2044 6973 6162 6c65 2041 7420 5365  e: Disable At Se
│ │ │ -0005add0: 7276 6963 6520 2861 7464 2920 2d20 436f  rvice (atd) - Co
│ │ │ -0005ade0: 6c6c 6563 7420 7379 7374 656d 6420 5365  llect systemd Se
│ │ │ -0005adf0: 7276 6963 6573 2050 7265 7365 6e74 2069  rvices Present i
│ │ │ -0005ae00: 6e20 7468 6520 5379 7374 656d 0a20 2020  n the System.   
│ │ │ -0005ae10: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ -0005ae20: 2e63 6f6d 6d61 6e64 3a20 7379 7374 656d  .command: system
│ │ │ -0005ae30: 6374 6c20 2d71 206c 6973 742d 756e 6974  ctl -q list-unit
│ │ │ -0005ae40: 2d66 696c 6573 202d 2d74 7970 6520 7365  -files --type se
│ │ │ -0005ae50: 7276 6963 650a 2020 2020 7265 6769 7374  rvice.    regist
│ │ │ -0005ae60: 6572 3a20 7365 7276 6963 655f 6578 6973  er: service_exis
│ │ │ -0005ae70: 7473 0a20 2020 2063 6861 6e67 6564 5f77  ts.    changed_w
│ │ │ -0005ae80: 6865 6e3a 2066 616c 7365 0a20 2020 2066  hen: false.    f
│ │ │ -0005ae90: 6169 6c65 645f 7768 656e 3a20 7365 7276  ailed_when: serv
│ │ │ -0005aea0: 6963 655f 6578 6973 7473 2e72 6320 6e6f  ice_exists.rc no
│ │ │ -0005aeb0: 7420 696e 205b 302c 2031 5d0a 2020 2020  t in [0, 1].    
│ │ │ -0005aec0: 6368 6563 6b5f 6d6f 6465 3a20 6661 6c73  check_mode: fals
│ │ │ -0005aed0: 650a 0a20 202d 206e 616d 653a 2044 6973  e..  - name: Dis
│ │ │ -0005aee0: 6162 6c65 2041 7420 5365 7276 6963 6520  able At Service 
│ │ │ -0005aef0: 2861 7464 2920 2d20 456e 7375 7265 2061  (atd) - Ensure a
│ │ │ -0005af00: 7464 2e73 6572 7669 6365 2069 7320 4d61  td.service is Ma
│ │ │ -0005af10: 736b 6564 0a20 2020 2061 6e73 6962 6c65  sked.    ansible
│ │ │ -0005af20: 2e62 7569 6c74 696e 2e73 7973 7465 6d64  .builtin.systemd
│ │ │ -0005af30: 3a0a 2020 2020 2020 6e61 6d65 3a20 6174  :.      name: at
│ │ │ -0005af40: 642e 7365 7276 6963 650a 2020 2020 2020  d.service.      
│ │ │ -0005af50: 7374 6174 653a 2073 746f 7070 6564 0a20  state: stopped. 
│ │ │ -0005af60: 2020 2020 2065 6e61 626c 6564 3a20 6661       enabled: fa
│ │ │ -0005af70: 6c73 650a 2020 2020 2020 6d61 736b 6564  lse.      masked
│ │ │ -0005af80: 3a20 7472 7565 0a20 2020 2077 6865 6e3a  : true.    when:
│ │ │ -0005af90: 2073 6572 7669 6365 5f65 7869 7374 732e   service_exists.
│ │ │ -0005afa0: 7374 646f 7574 5f6c 696e 6573 2069 7320  stdout_lines is 
│ │ │ -0005afb0: 7365 6172 6368 2822 6174 642e 7365 7276  search("atd.serv
│ │ │ -0005afc0: 6963 6522 2c20 6d75 6c74 696c 696e 653d  ice", multiline=
│ │ │ -0005afd0: 5472 7565 290a 0a20 202d 206e 616d 653a  True)..  - name:
│ │ │ -0005afe0: 2055 6e69 7420 536f 636b 6574 2045 7869   Unit Socket Exi
│ │ │ -0005aff0: 7374 7320 2d20 6174 642e 736f 636b 6574  sts - atd.socket
│ │ │ -0005b000: 0a20 2020 2061 6e73 6962 6c65 2e62 7569  .    ansible.bui
│ │ │ -0005b010: 6c74 696e 2e63 6f6d 6d61 6e64 3a20 7379  ltin.command: sy
│ │ │ -0005b020: 7374 656d 6374 6c20 2d71 206c 6973 742d  stemctl -q list-
│ │ │ -0005b030: 756e 6974 2d66 696c 6573 2061 7464 2e73  unit-files atd.s
│ │ │ -0005b040: 6f63 6b65 740a 2020 2020 7265 6769 7374  ocket.    regist
│ │ │ -0005b050: 6572 3a20 736f 636b 6574 5f66 696c 655f  er: socket_file_
│ │ │ -0005b060: 6578 6973 7473 0a20 2020 2063 6861 6e67  exists.    chang
│ │ │ -0005b070: 6564 5f77 6865 6e3a 2066 616c 7365 0a20  ed_when: false. 
│ │ │ -0005b080: 2020 2066 6169 6c65 645f 7768 656e 3a20     failed_when: 
│ │ │ -0005b090: 736f 636b 6574 5f66 696c 655f 6578 6973  socket_file_exis
│ │ │ -0005b0a0: 7473 2e72 6320 6e6f 7420 696e 205b 302c  ts.rc not in [0,
│ │ │ -0005b0b0: 2031 5d0a 2020 2020 6368 6563 6b5f 6d6f   1].    check_mo
│ │ │ -0005b0c0: 6465 3a20 6661 6c73 650a 0a20 202d 206e  de: false..  - n
│ │ │ -0005b0d0: 616d 653a 2044 6973 6162 6c65 2041 7420  ame: Disable At 
│ │ │ -0005b0e0: 5365 7276 6963 6520 2861 7464 2920 2d20  Service (atd) - 
│ │ │ -0005b0f0: 4469 7361 626c 6520 536f 636b 6574 2061  Disable Socket a
│ │ │ -0005b100: 7464 0a20 2020 2061 6e73 6962 6c65 2e62  td.    ansible.b
│ │ │ -0005b110: 7569 6c74 696e 2e73 7973 7465 6d64 3a0a  uiltin.systemd:.
│ │ │ -0005b120: 2020 2020 2020 6e61 6d65 3a20 6174 642e        name: atd.
│ │ │ -0005b130: 736f 636b 6574 0a20 2020 2020 2065 6e61  socket.      ena
│ │ │ -0005b140: 626c 6564 3a20 6661 6c73 650a 2020 2020  bled: false.    
│ │ │ -0005b150: 2020 7374 6174 653a 2073 746f 7070 6564    state: stopped
│ │ │ -0005b160: 0a20 2020 2020 206d 6173 6b65 643a 2074  .      masked: t
│ │ │ -0005b170: 7275 650a 2020 2020 7768 656e 3a20 736f  rue.    when: so
│ │ │ -0005b180: 636b 6574 5f66 696c 655f 6578 6973 7473  cket_file_exists
│ │ │ -0005b190: 2e73 7464 6f75 745f 6c69 6e65 7320 6973  .stdout_lines is
│ │ │ -0005b1a0: 2073 6561 7263 6828 2261 7464 2e73 6f63   search("atd.soc
│ │ │ -0005b1b0: 6b65 7422 2c20 6d75 6c74 696c 696e 653d  ket", multiline=
│ │ │ -0005b1c0: 5472 7565 290a 2020 7461 6773 3a0a 2020  True).  tags:.  
│ │ │ -0005b1d0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -0005b1e0: 2d36 2861 290a 2020 2d20 4e49 5354 2d38  -6(a).  - NIST-8
│ │ │ -0005b1f0: 3030 2d35 332d 434d 2d37 2861 290a 2020  00-53-CM-7(a).  
│ │ │ -0005b200: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -0005b210: 2d37 2862 290a 2020 2d20 6469 7361 626c  -7(b).  - disabl
│ │ │ -0005b220: 655f 7374 7261 7465 6779 0a20 202d 206c  e_strategy.  - l
│ │ │ -0005b230: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ -0005b240: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ -0005b250: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ -0005b260: 7269 7479 0a20 202d 206e 6f5f 7265 626f  rity.  - no_rebo
│ │ │ -0005b270: 6f74 5f6e 6565 6465 640a 2020 2d20 7365  ot_needed.  - se
│ │ │ -0005b280: 7276 6963 655f 6174 645f 6469 7361 626c  rvice_atd_disabl
│ │ │ -0005b290: 6564 0a20 202d 2073 7065 6369 616c 5f73  ed.  - special_s
│ │ │ -0005b2a0: 6572 7669 6365 5f62 6c6f 636b 0a20 2077  ervice_block.  w
│ │ │ -0005b2b0: 6865 6e3a 2027 226b 6572 6e65 6c22 2069  hen: '"kernel" i
│ │ │ -0005b2c0: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -0005b2d0: 7061 636b 6167 6573 270a 3c2f 636f 6465  packages'.
│ │ │ +0005a810: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
-
│ │ │ +0005a8b0: 206e 616d 653a 2047 6174 6865 7220 7468   name: Gather th
│ │ │ +0005a8c0: 6520 7061 636b 6167 6520 6661 6374 730a  e package facts.
│ │ │ +0005a8d0: 2020 7061 636b 6167 655f 6661 6374 733a    package_facts:
│ │ │ +0005a8e0: 0a20 2020 206d 616e 6167 6572 3a20 6175  .    manager: au
│ │ │ +0005a8f0: 746f 0a20 2074 6167 733a 0a20 202d 204e  to.  tags:.  - N
│ │ │ +0005a900: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ +0005a910: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ +0005a920: 3533 2d43 4d2d 3728 6129 0a20 202d 204e  53-CM-7(a).  - N
│ │ │ +0005a930: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ +0005a940: 6229 0a20 202d 2064 6973 6162 6c65 5f73  b).  - disable_s
│ │ │ +0005a950: 7472 6174 6567 790a 2020 2d20 6c6f 775f  trategy.  - low_
│ │ │ +0005a960: 636f 6d70 6c65 7869 7479 0a20 202d 206c  complexity.  - l
│ │ │ +0005a970: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ +0005a980: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ +0005a990: 790a 2020 2d20 6e6f 5f72 6562 6f6f 745f  y.  - no_reboot_
│ │ │ +0005a9a0: 6e65 6564 6564 0a20 202d 2073 6572 7669  needed.  - servi
│ │ │ +0005a9b0: 6365 5f61 7464 5f64 6973 6162 6c65 640a  ce_atd_disabled.
│ │ │ +0005a9c0: 0a2d 206e 616d 653a 2044 6973 6162 6c65  .- name: Disable
│ │ │ +0005a9d0: 2041 7420 5365 7276 6963 6520 2861 7464   At Service (atd
│ │ │ +0005a9e0: 2920 2d20 4469 7361 626c 6520 7365 7276  ) - Disable serv
│ │ │ +0005a9f0: 6963 6520 6174 640a 2020 626c 6f63 6b3a  ice atd.  block:
│ │ │ +0005aa00: 0a0a 2020 2d20 6e61 6d65 3a20 4469 7361  ..  - name: Disa
│ │ │ +0005aa10: 626c 6520 4174 2053 6572 7669 6365 2028  ble At Service (
│ │ │ +0005aa20: 6174 6429 202d 2043 6f6c 6c65 6374 2073  atd) - Collect s
│ │ │ +0005aa30: 7973 7465 6d64 2053 6572 7669 6365 7320  ystemd Services 
│ │ │ +0005aa40: 5072 6573 656e 7420 696e 2074 6865 2053  Present in the S
│ │ │ +0005aa50: 7973 7465 6d0a 2020 2020 616e 7369 626c  ystem.    ansibl
│ │ │ +0005aa60: 652e 6275 696c 7469 6e2e 636f 6d6d 616e  e.builtin.comman
│ │ │ +0005aa70: 643a 2073 7973 7465 6d63 746c 202d 7120  d: systemctl -q 
│ │ │ +0005aa80: 6c69 7374 2d75 6e69 742d 6669 6c65 7320  list-unit-files 
│ │ │ +0005aa90: 2d2d 7479 7065 2073 6572 7669 6365 0a20  --type service. 
│ │ │ +0005aaa0: 2020 2072 6567 6973 7465 723a 2073 6572     register: ser
│ │ │ +0005aab0: 7669 6365 5f65 7869 7374 730a 2020 2020  vice_exists.    
│ │ │ +0005aac0: 6368 616e 6765 645f 7768 656e 3a20 6661  changed_when: fa
│ │ │ +0005aad0: 6c73 650a 2020 2020 6661 696c 6564 5f77  lse.    failed_w
│ │ │ +0005aae0: 6865 6e3a 2073 6572 7669 6365 5f65 7869  hen: service_exi
│ │ │ +0005aaf0: 7374 732e 7263 206e 6f74 2069 6e20 5b30  sts.rc not in [0
│ │ │ +0005ab00: 2c20 315d 0a20 2020 2063 6865 636b 5f6d  , 1].    check_m
│ │ │ +0005ab10: 6f64 653a 2066 616c 7365 0a0a 2020 2d20  ode: false..  - 
│ │ │ +0005ab20: 6e61 6d65 3a20 4469 7361 626c 6520 4174  name: Disable At
│ │ │ +0005ab30: 2053 6572 7669 6365 2028 6174 6429 202d   Service (atd) -
│ │ │ +0005ab40: 2045 6e73 7572 6520 6174 642e 7365 7276   Ensure atd.serv
│ │ │ +0005ab50: 6963 6520 6973 204d 6173 6b65 640a 2020  ice is Masked.  
│ │ │ +0005ab60: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ +0005ab70: 6e2e 7379 7374 656d 643a 0a20 2020 2020  n.systemd:.     
│ │ │ +0005ab80: 206e 616d 653a 2061 7464 2e73 6572 7669   name: atd.servi
│ │ │ +0005ab90: 6365 0a20 2020 2020 2073 7461 7465 3a20  ce.      state: 
│ │ │ +0005aba0: 7374 6f70 7065 640a 2020 2020 2020 656e  stopped.      en
│ │ │ +0005abb0: 6162 6c65 643a 2066 616c 7365 0a20 2020  abled: false.   
│ │ │ +0005abc0: 2020 206d 6173 6b65 643a 2074 7275 650a     masked: true.
│ │ │ +0005abd0: 2020 2020 7768 656e 3a20 7365 7276 6963      when: servic
│ │ │ +0005abe0: 655f 6578 6973 7473 2e73 7464 6f75 745f  e_exists.stdout_
│ │ │ +0005abf0: 6c69 6e65 7320 6973 2073 6561 7263 6828  lines is search(
│ │ │ +0005ac00: 2261 7464 2e73 6572 7669 6365 222c 206d  "atd.service", m
│ │ │ +0005ac10: 756c 7469 6c69 6e65 3d54 7275 6529 0a0a  ultiline=True)..
│ │ │ +0005ac20: 2020 2d20 6e61 6d65 3a20 556e 6974 2053    - name: Unit S
│ │ │ +0005ac30: 6f63 6b65 7420 4578 6973 7473 202d 2061  ocket Exists - a
│ │ │ +0005ac40: 7464 2e73 6f63 6b65 740a 2020 2020 616e  td.socket.    an
│ │ │ +0005ac50: 7369 626c 652e 6275 696c 7469 6e2e 636f  sible.builtin.co
│ │ │ +0005ac60: 6d6d 616e 643a 2073 7973 7465 6d63 746c  mmand: systemctl
│ │ │ +0005ac70: 202d 7120 6c69 7374 2d75 6e69 742d 6669   -q list-unit-fi
│ │ │ +0005ac80: 6c65 7320 6174 642e 736f 636b 6574 0a20  les atd.socket. 
│ │ │ +0005ac90: 2020 2072 6567 6973 7465 723a 2073 6f63     register: soc
│ │ │ +0005aca0: 6b65 745f 6669 6c65 5f65 7869 7374 730a  ket_file_exists.
│ │ │ +0005acb0: 2020 2020 6368 616e 6765 645f 7768 656e      changed_when
│ │ │ +0005acc0: 3a20 6661 6c73 650a 2020 2020 6661 696c  : false.    fail
│ │ │ +0005acd0: 6564 5f77 6865 6e3a 2073 6f63 6b65 745f  ed_when: socket_
│ │ │ +0005ace0: 6669 6c65 5f65 7869 7374 732e 7263 206e  file_exists.rc n
│ │ │ +0005acf0: 6f74 2069 6e20 5b30 2c20 315d 0a20 2020  ot in [0, 1].   
│ │ │ +0005ad00: 2063 6865 636b 5f6d 6f64 653a 2066 616c   check_mode: fal
│ │ │ +0005ad10: 7365 0a0a 2020 2d20 6e61 6d65 3a20 4469  se..  - name: Di
│ │ │ +0005ad20: 7361 626c 6520 4174 2053 6572 7669 6365  sable At Service
│ │ │ +0005ad30: 2028 6174 6429 202d 2044 6973 6162 6c65   (atd) - Disable
│ │ │ +0005ad40: 2053 6f63 6b65 7420 6174 640a 2020 2020   Socket atd.    
│ │ │ +0005ad50: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ +0005ad60: 7379 7374 656d 643a 0a20 2020 2020 206e  systemd:.      n
│ │ │ +0005ad70: 616d 653a 2061 7464 2e73 6f63 6b65 740a  ame: atd.socket.
│ │ │ +0005ad80: 2020 2020 2020 656e 6162 6c65 643a 2066        enabled: f
│ │ │ +0005ad90: 616c 7365 0a20 2020 2020 2073 7461 7465  alse.      state
│ │ │ +0005ada0: 3a20 7374 6f70 7065 640a 2020 2020 2020  : stopped.      
│ │ │ +0005adb0: 6d61 736b 6564 3a20 7472 7565 0a20 2020  masked: true.   
│ │ │ +0005adc0: 2077 6865 6e3a 2073 6f63 6b65 745f 6669   when: socket_fi
│ │ │ +0005add0: 6c65 5f65 7869 7374 732e 7374 646f 7574  le_exists.stdout
│ │ │ +0005ade0: 5f6c 696e 6573 2069 7320 7365 6172 6368  _lines is search
│ │ │ +0005adf0: 2822 6174 642e 736f 636b 6574 222c 206d  ("atd.socket", m
│ │ │ +0005ae00: 756c 7469 6c69 6e65 3d54 7275 6529 0a20  ultiline=True). 
│ │ │ +0005ae10: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ +0005ae20: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ +0005ae30: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +0005ae40: 4d2d 3728 6129 0a20 202d 204e 4953 542d  M-7(a).  - NIST-
│ │ │ +0005ae50: 3830 302d 3533 2d43 4d2d 3728 6229 0a20  800-53-CM-7(b). 
│ │ │ +0005ae60: 202d 2064 6973 6162 6c65 5f73 7472 6174   - disable_strat
│ │ │ +0005ae70: 6567 790a 2020 2d20 6c6f 775f 636f 6d70  egy.  - low_comp
│ │ │ +0005ae80: 6c65 7869 7479 0a20 202d 206c 6f77 5f64  lexity.  - low_d
│ │ │ +0005ae90: 6973 7275 7074 696f 6e0a 2020 2d20 6d65  isruption.  - me
│ │ │ +0005aea0: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ +0005aeb0: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ +0005aec0: 6564 0a20 202d 2073 6572 7669 6365 5f61  ed.  - service_a
│ │ │ +0005aed0: 7464 5f64 6973 6162 6c65 640a 2020 2d20  td_disabled.  - 
│ │ │ +0005aee0: 7370 6563 6961 6c5f 7365 7276 6963 655f  special_service_
│ │ │ +0005aef0: 626c 6f63 6b0a 2020 7768 656e 3a20 2722  block.  when: '"
│ │ │ +0005af00: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ +0005af10: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +0005af20: 7327 0a3c 2f63 6f64 653e 3c2f 7072 653e  s'.
│ │ │ +0005af30: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22 Remediation Pu │ │ │ +0005afe0: 7070 6574 2073 6e69 7070 6574 20e2 87b2 ppet snippet ... │ │ │ +0005aff0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
│ │ │ +0005a800: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +0005a830: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +0005a840: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +0005a880: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ +0005a890: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
< │ │ │ +0005b0c0: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +0005b0d0: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
i
│ │ │ +0005b120: 6e63 6c75 6465 2064 6973 6162 6c65 5f61  nclude disable_a
│ │ │ +0005b130: 7464 0a0a 636c 6173 7320 6469 7361 626c  td..class disabl
│ │ │ +0005b140: 655f 6174 6420 7b0a 2020 7365 7276 6963  e_atd {.  servic
│ │ │ +0005b150: 6520 7b27 6174 6427 3a0a 2020 2020 656e  e {'atd':.    en
│ │ │ +0005b160: 6162 6c65 203d 2667 743b 2066 616c 7365  able => false
│ │ │ +0005b170: 2c0a 2020 2020 656e 7375 7265 203d 2667  ,.    ensure =&g
│ │ │ +0005b180: 743b 2027 7374 6f70 7065 6427 2c0a 2020  t; 'stopped',.  
│ │ │ +0005b190: 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70 7265  }.}.
Remediation O │ │ │ +0005b250: 5342 7569 6c64 2042 6c75 6570 7269 6e74 SBuild Blueprint │ │ │ +0005b260: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ +0005b270: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
.[
│ │ │ +0005b2b0: 6375 7374 6f6d 697a 6174 696f 6e73 2e73  customizations.s
│ │ │ +0005b2c0: 6572 7669 6365 735d 0a6d 6173 6b65 6420  ervices].masked 
│ │ │ +0005b2d0: 3d20 5b22 6174 6422 5d0a 3c2f 636f 6465  = ["atd"].
Complexity:low
Disrup │ │ │ +0005b0a0: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ +0005b0b0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ +0005b0f0: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ +0005b100: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
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: │ │ │ │ @@ -1330,14 +1313,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. │ │ │ │ │ │ │ │ @@ -1377,31 +1377,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: │ │ │ │ @@ -1456,14 +1439,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 │ │ │ │ @@ -1486,31 +1486,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: │ │ │ │ @@ -1567,14 +1550,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 │ │ │ │ @@ -1594,31 +1594,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: │ │ │ │ @@ -1675,14 +1658,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 │ │ │ │ @@ -1706,31 +1706,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: │ │ │ │ @@ -1786,14 +1769,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 │ │ │ │ @@ -1822,31 +1822,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: │ │ │ │ @@ -1906,14 +1889,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 │ │ │ │ @@ -1939,31 +1939,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: │ │ │ │ @@ -2019,14 +2002,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  
Remediat │ │ │ -000441f0: 696f 6e20 416e 6163 6f6e 6461 2073 6e69 ion Anaconda sni │ │ │ -00044200: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -00044210: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
< │ │ │ -00044240: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ -00044250: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ -00044260: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ -00044270: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ -00044280: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Complex │ │ │ -00044290: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ -000442a0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Disruption:lowReboo │ │ │ -000442e0: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -000442f0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ -00044310: 3c74 643e 656e 6162 6c65 3c2f 7464 3e3c enable< │ │ │ -00044320: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
.services
│ │ │ -00044340: 202d 2d65 6e61 626c 6564 3d74 6d70 2e6d   --enabled=tmp.m
│ │ │ -00044350: 6f75 6e74 0a3c 2f63 6f64 653e 3c2f 7072  ount.
Remediation │ │ │ -00044410: 416e 7369 626c 6520 736e 6970 7065 7420 Ansible snippet │ │ │ -00044420: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
│ │ │ -000444a0: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -000444c0: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ -00044510: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 < │ │ │ -00044540: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
- name: Gather
│ │ │ -00044560: 2074 6865 2070 6163 6b61 6765 2066 6163   the package fac
│ │ │ -00044570: 7473 0a20 2070 6163 6b61 6765 5f66 6163  ts.  package_fac
│ │ │ -00044580: 7473 3a0a 2020 2020 6d61 6e61 6765 723a  ts:.    manager:
│ │ │ -00044590: 2061 7574 6f0a 2020 7461 6773 3a0a 2020   auto.  tags:.  
│ │ │ -000445a0: 2d20 656e 6162 6c65 5f73 7472 6174 6567  - enable_strateg
│ │ │ -000445b0: 790a 2020 2d20 6c6f 775f 636f 6d70 6c65  y.  - low_comple
│ │ │ -000445c0: 7869 7479 0a20 202d 206c 6f77 5f64 6973  xity.  - low_dis
│ │ │ -000445d0: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f  ruption.  - low_
│ │ │ -000445e0: 7365 7665 7269 7479 0a20 202d 206e 6f5f  severity.  - no_
│ │ │ -000445f0: 7265 626f 6f74 5f6e 6565 6465 640a 2020  reboot_needed.  
│ │ │ -00044600: 2d20 7379 7374 656d 645f 746d 705f 6d6f  - systemd_tmp_mo
│ │ │ -00044610: 756e 745f 656e 6162 6c65 640a 0a2d 206e  unt_enabled..- n
│ │ │ -00044620: 616d 653a 2045 6e61 626c 6520 6d6f 756e  ame: Enable moun
│ │ │ -00044630: 7420 746d 700a 2020 616e 7369 626c 652e  t tmp.  ansible.
│ │ │ -00044640: 6275 696c 7469 6e2e 7379 7374 656d 643a  builtin.systemd:
│ │ │ -00044650: 0a20 2020 206e 616d 653a 2074 6d70 2e6d  .    name: tmp.m
│ │ │ -00044660: 6f75 6e74 0a20 2020 2065 6e61 626c 6564  ount.    enabled
│ │ │ -00044670: 3a20 2779 6573 270a 2020 2020 7374 6174  : 'yes'.    stat
│ │ │ -00044680: 653a 2073 7461 7274 6564 0a20 2020 206d  e: started.    m
│ │ │ -00044690: 6173 6b65 643a 2027 6661 6c73 6527 0a20  asked: 'false'. 
│ │ │ -000446a0: 2077 6865 6e3a 2028 206e 6f74 2028 2022   when: ( not ( "
│ │ │ -000446b0: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ -000446c0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -000446d0: 7320 616e 6420 2262 6f6f 7463 2220 696e  s and "bootc" in
│ │ │ -000446e0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -000446f0: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ -00044700: 6e6f 7420 226f 7065 6e73 6869 6674 2d6b  not "openshift-k
│ │ │ -00044710: 7562 656c 6574 2220 696e 2061 6e73 6962  ubelet" in ansib
│ │ │ -00044720: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -00044730: 7320 616e 6420 226f 7374 7265 6522 2069  s and "ostree" i
│ │ │ -00044740: 6e20 616e 7369 626c 655f 7072 6f63 5f63  n ansible_proc_c
│ │ │ -00044750: 6d64 6c69 6e65 0a20 2020 2029 2061 6e64  mdline.    ) and
│ │ │ -00044760: 206e 6f74 2028 2061 6e73 6962 6c65 5f76   not ( ansible_v
│ │ │ -00044770: 6972 7475 616c 697a 6174 696f 6e5f 7479  irtualization_ty
│ │ │ -00044780: 7065 2069 6e20 5b22 646f 636b 6572 222c  pe in ["docker",
│ │ │ -00044790: 2022 6c78 6322 2c20 226f 7065 6e76 7a22   "lxc", "openvz"
│ │ │ -000447a0: 2c20 2270 6f64 6d61 6e22 2c0a 2020 2020  , "podman",.    
│ │ │ -000447b0: 2263 6f6e 7461 696e 6572 225d 2029 2029  "container"] ) )
│ │ │ -000447c0: 0a20 2074 6167 733a 0a20 202d 2065 6e61  .  tags:.  - ena
│ │ │ -000447d0: 626c 655f 7374 7261 7465 6779 0a20 202d  ble_strategy.  -
│ │ │ -000447e0: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ -000447f0: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ -00044800: 6f6e 0a20 202d 206c 6f77 5f73 6576 6572  on.  - low_sever
│ │ │ -00044810: 6974 790a 2020 2d20 6e6f 5f72 6562 6f6f  ity.  - no_reboo
│ │ │ -00044820: 745f 6e65 6564 6564 0a20 202d 2073 7973  t_needed.  - sys
│ │ │ -00044830: 7465 6d64 5f74 6d70 5f6d 6f75 6e74 5f65  temd_tmp_mount_e
│ │ │ -00044840: 6e61 626c 6564 0a3c 2f63 6f64 653e 3c2f  nabled.Remediatio
│ │ │ -00044900: 6e20 5368 656c 6c20 7363 7269 7074 20e2  n Shell script .
│ │ │ -00044910: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063  ..
Complexity:< │ │ │ -000444b0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ -000444d0: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ -00044520: 6174 6567 793a 3c2f 7468 3e3c 7464 3e65 ategy:e │ │ │ -00044530: 6e61 626c 653c 2f74 643e 3c2f 7472 3e3c nable
< │ │ │ -00044990: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -000449b0: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -00044a00: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
# Remediation i
│ │ │ -00044a50: 7320 6170 706c 6963 6162 6c65 206f 6e6c  s applicable onl
│ │ │ -00044a60: 7920 696e 2063 6572 7461 696e 2070 6c61  y in certain pla
│ │ │ -00044a70: 7466 6f72 6d73 0a69 6620 2820 2120 2820  tforms.if ( ! ( 
│ │ │ -00044a80: 7b20 7270 6d20 2d2d 7175 6965 7420 2d71  { rpm --quiet -q
│ │ │ -00044a90: 206b 6572 6e65 6c20 3b7d 2026 616d 703b   kernel ;} &
│ │ │ -00044aa0: 2661 6d70 3b20 7b20 7270 6d20 2d2d 7175  & { rpm --qu
│ │ │ -00044ab0: 6965 7420 2d71 2062 6f6f 7463 203b 7d20  iet -q bootc ;} 
│ │ │ -00044ac0: 2661 6d70 3b26 616d 703b 207b 2021 2072  && { ! r
│ │ │ -00044ad0: 706d 202d 2d71 7569 6574 202d 7120 6f70  pm --quiet -q op
│ │ │ -00044ae0: 656e 7368 6966 742d 6b75 6265 6c65 7420  enshift-kubelet 
│ │ │ -00044af0: 3b7d 2026 616d 703b 2661 6d70 3b20 285b  ;} && ([
│ │ │ -00044b00: 202d 6620 2f72 756e 2f6f 7374 7265 652d   -f /run/ostree-
│ │ │ -00044b10: 626f 6f74 6564 205d 207c 7c20 5b20 2d4c  booted ] || [ -L
│ │ │ -00044b20: 202f 6f73 7472 6565 205d 2920 2920 2661   /ostree ]) ) &a
│ │ │ -00044b30: 6d70 3b26 616d 703b 2021 2028 205b 202d  mp;& ! ( [ -
│ │ │ -00044b40: 6620 2f2e 646f 636b 6572 656e 7620 5d20  f /.dockerenv ] 
│ │ │ -00044b50: 7c7c 205b 202d 6620 2f72 756e 2f2e 636f  || [ -f /run/.co
│ │ │ -00044b60: 6e74 6169 6e65 7265 6e76 205d 2029 2029  ntainerenv ] ) )
│ │ │ -00044b70: 3b20 7468 656e 0a0a 5359 5354 454d 4354  ; then..SYSTEMCT
│ │ │ -00044b80: 4c5f 4558 4543 3d27 2f75 7372 2f62 696e  L_EXEC='/usr/bin
│ │ │ -00044b90: 2f73 7973 7465 6d63 746c 270a 2224 5359  /systemctl'."$SY
│ │ │ -00044ba0: 5354 454d 4354 4c5f 4558 4543 2220 756e  STEMCTL_EXEC" un
│ │ │ -00044bb0: 6d61 736b 2027 746d 702e 6d6f 756e 7427  mask 'tmp.mount'
│ │ │ -00044bc0: 0a69 6620 5b5b 2024 2822 2453 5953 5445  .if [[ $("$SYSTE
│ │ │ -00044bd0: 4d43 544c 5f45 5845 4322 2069 732d 7379  MCTL_EXEC" is-sy
│ │ │ -00044be0: 7374 656d 2d72 756e 6e69 6e67 2920 213d  stem-running) !=
│ │ │ -00044bf0: 2022 6f66 666c 696e 6522 205d 5d3b 2074   "offline" ]]; t
│ │ │ -00044c00: 6865 6e0a 2020 2224 5359 5354 454d 4354  hen.  "$SYSTEMCT
│ │ │ -00044c10: 4c5f 4558 4543 2220 7374 6172 7420 2774  L_EXEC" start 't
│ │ │ -00044c20: 6d70 2e6d 6f75 6e74 270a 6669 0a22 2453  mp.mount'.fi."$S
│ │ │ -00044c30: 5953 5445 4d43 544c 5f45 5845 4322 2065  YSTEMCTL_EXEC" e
│ │ │ -00044c40: 6e61 626c 6520 2774 6d70 2e6d 6f75 6e74  nable 'tmp.mount
│ │ │ -00044c50: 270a 0a65 6c73 650a 2020 2020 2667 743b  '..else.    >
│ │ │ -00044c60: 2661 6d70 3b32 2065 6368 6f20 2752 656d  &2 echo 'Rem
│ │ │ -00044c70: 6564 6961 7469 6f6e 2069 7320 6e6f 7420  ediation is not 
│ │ │ -00044c80: 6170 706c 6963 6162 6c65 2c20 6e6f 7468  applicable, noth
│ │ │ -00044c90: 696e 6720 7761 7320 646f 6e65 270a 6669  ing was done'.fi
│ │ │ +000441f0: 696f 6e20 416e 7369 626c 6520 736e 6970  ion Ansible snip
│ │ │ +00044200: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c  pet ...
< │ │ │ +00044210: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +00044220: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +00044230: 7365 2220 6964 3d22 6964 3333 223e 3c74 se" id="id33"> │ │ │ +00044280: 3c74 723e 3c74 683e 436f 6d70 6c65 7869
< │ │ │ +00044310: 7464 3e65 6e61 626c 653c 2f74 643e 3c2f td>enable
low
Disr │ │ │ -000449c0: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -000449d0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ -00044a10: 7465 6779 3a3c 2f74 683e 3c74 643e 656e tegy:en │ │ │ -00044a20: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
Complexi │ │ │ +00044290: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +000442a0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Disruption:low
Reboot │ │ │ +000442e0: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +000442f0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Strategy:
│ │ │ +00044330: 3c63 6f64 653e 2d20 6e61 6d65 3a20 4761  - name: Ga
│ │ │ +00044340: 7468 6572 2074 6865 2070 6163 6b61 6765  ther the package
│ │ │ +00044350: 2066 6163 7473 0a20 2070 6163 6b61 6765   facts.  package
│ │ │ +00044360: 5f66 6163 7473 3a0a 2020 2020 6d61 6e61  _facts:.    mana
│ │ │ +00044370: 6765 723a 2061 7574 6f0a 2020 7461 6773  ger: auto.  tags
│ │ │ +00044380: 3a0a 2020 2d20 656e 6162 6c65 5f73 7472  :.  - enable_str
│ │ │ +00044390: 6174 6567 790a 2020 2d20 6c6f 775f 636f  ategy.  - low_co
│ │ │ +000443a0: 6d70 6c65 7869 7479 0a20 202d 206c 6f77  mplexity.  - low
│ │ │ +000443b0: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +000443c0: 6c6f 775f 7365 7665 7269 7479 0a20 202d  low_severity.  -
│ │ │ +000443d0: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ +000443e0: 640a 2020 2d20 7379 7374 656d 645f 746d  d.  - systemd_tm
│ │ │ +000443f0: 705f 6d6f 756e 745f 656e 6162 6c65 640a  p_mount_enabled.
│ │ │ +00044400: 0a2d 206e 616d 653a 2045 6e61 626c 6520  .- name: Enable 
│ │ │ +00044410: 6d6f 756e 7420 746d 700a 2020 616e 7369  mount tmp.  ansi
│ │ │ +00044420: 626c 652e 6275 696c 7469 6e2e 7379 7374  ble.builtin.syst
│ │ │ +00044430: 656d 643a 0a20 2020 206e 616d 653a 2074  emd:.    name: t
│ │ │ +00044440: 6d70 2e6d 6f75 6e74 0a20 2020 2065 6e61  mp.mount.    ena
│ │ │ +00044450: 626c 6564 3a20 2779 6573 270a 2020 2020  bled: 'yes'.    
│ │ │ +00044460: 7374 6174 653a 2073 7461 7274 6564 0a20  state: started. 
│ │ │ +00044470: 2020 206d 6173 6b65 643a 2027 6661 6c73     masked: 'fals
│ │ │ +00044480: 6527 0a20 2077 6865 6e3a 2028 206e 6f74  e'.  when: ( not
│ │ │ +00044490: 2028 2022 6b65 726e 656c 2220 696e 2061   ( "kernel" in a
│ │ │ +000444a0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +000444b0: 6b61 6765 7320 616e 6420 2262 6f6f 7463  kages and "bootc
│ │ │ +000444c0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +000444d0: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ +000444e0: 616e 6420 6e6f 7420 226f 7065 6e73 6869  and not "openshi
│ │ │ +000444f0: 6674 2d6b 7562 656c 6574 2220 696e 2061  ft-kubelet" in a
│ │ │ +00044500: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +00044510: 6b61 6765 7320 616e 6420 226f 7374 7265  kages and "ostre
│ │ │ +00044520: 6522 2069 6e20 616e 7369 626c 655f 7072  e" in ansible_pr
│ │ │ +00044530: 6f63 5f63 6d64 6c69 6e65 0a20 2020 2029  oc_cmdline.    )
│ │ │ +00044540: 2061 6e64 206e 6f74 2028 2061 6e73 6962   and not ( ansib
│ │ │ +00044550: 6c65 5f76 6972 7475 616c 697a 6174 696f  le_virtualizatio
│ │ │ +00044560: 6e5f 7479 7065 2069 6e20 5b22 646f 636b  n_type in ["dock
│ │ │ +00044570: 6572 222c 2022 6c78 6322 2c20 226f 7065  er", "lxc", "ope
│ │ │ +00044580: 6e76 7a22 2c20 2270 6f64 6d61 6e22 2c0a  nvz", "podman",.
│ │ │ +00044590: 2020 2020 2263 6f6e 7461 696e 6572 225d      "container"]
│ │ │ +000445a0: 2029 2029 0a20 2074 6167 733a 0a20 202d   ) ).  tags:.  -
│ │ │ +000445b0: 2065 6e61 626c 655f 7374 7261 7465 6779   enable_strategy
│ │ │ +000445c0: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ +000445d0: 6974 790a 2020 2d20 6c6f 775f 6469 7372  ity.  - low_disr
│ │ │ +000445e0: 7570 7469 6f6e 0a20 202d 206c 6f77 5f73  uption.  - low_s
│ │ │ +000445f0: 6576 6572 6974 790a 2020 2d20 6e6f 5f72  everity.  - no_r
│ │ │ +00044600: 6562 6f6f 745f 6e65 6564 6564 0a20 202d  eboot_needed.  -
│ │ │ +00044610: 2073 7973 7465 6d64 5f74 6d70 5f6d 6f75   systemd_tmp_mou
│ │ │ +00044620: 6e74 5f65 6e61 626c 6564 0a3c 2f63 6f64  nt_enabled.
Remedi │ │ │ +000446e0: 6174 696f 6e20 5368 656c 6c20 7363 7269 ation Shell scri │ │ │ +000446f0: 7074 20e2 87b2 3c2f 613e 3c62 723e 3c64 pt ...
< │ │ │ +00044770: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ +00044780: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ +000447a0: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ +000447b0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ +000447d0: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ +000447f0: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:enable
<
│ │ │ +00044820: 636f 6465 3e23 2052 656d 6564 6961 7469  code># Remediati
│ │ │ +00044830: 6f6e 2069 7320 6170 706c 6963 6162 6c65  on is applicable
│ │ │ +00044840: 206f 6e6c 7920 696e 2063 6572 7461 696e   only in certain
│ │ │ +00044850: 2070 6c61 7466 6f72 6d73 0a69 6620 2820   platforms.if ( 
│ │ │ +00044860: 2120 2820 7b20 7270 6d20 2d2d 7175 6965  ! ( { rpm --quie
│ │ │ +00044870: 7420 2d71 206b 6572 6e65 6c20 3b7d 2026  t -q kernel ;} &
│ │ │ +00044880: 616d 703b 2661 6d70 3b20 7b20 7270 6d20  amp;& { rpm 
│ │ │ +00044890: 2d2d 7175 6965 7420 2d71 2062 6f6f 7463  --quiet -q bootc
│ │ │ +000448a0: 203b 7d20 2661 6d70 3b26 616d 703b 207b   ;} && {
│ │ │ +000448b0: 2021 2072 706d 202d 2d71 7569 6574 202d   ! rpm --quiet -
│ │ │ +000448c0: 7120 6f70 656e 7368 6966 742d 6b75 6265  q openshift-kube
│ │ │ +000448d0: 6c65 7420 3b7d 2026 616d 703b 2661 6d70  let ;} &&
│ │ │ +000448e0: 3b20 285b 202d 6620 2f72 756e 2f6f 7374  ; ([ -f /run/ost
│ │ │ +000448f0: 7265 652d 626f 6f74 6564 205d 207c 7c20  ree-booted ] || 
│ │ │ +00044900: 5b20 2d4c 202f 6f73 7472 6565 205d 2920  [ -L /ostree ]) 
│ │ │ +00044910: 2920 2661 6d70 3b26 616d 703b 2021 2028  ) && ! (
│ │ │ +00044920: 205b 202d 6620 2f2e 646f 636b 6572 656e   [ -f /.dockeren
│ │ │ +00044930: 7620 5d20 7c7c 205b 202d 6620 2f72 756e  v ] || [ -f /run
│ │ │ +00044940: 2f2e 636f 6e74 6169 6e65 7265 6e76 205d  /.containerenv ]
│ │ │ +00044950: 2029 2029 3b20 7468 656e 0a0a 5359 5354   ) ); then..SYST
│ │ │ +00044960: 454d 4354 4c5f 4558 4543 3d27 2f75 7372  EMCTL_EXEC='/usr
│ │ │ +00044970: 2f62 696e 2f73 7973 7465 6d63 746c 270a  /bin/systemctl'.
│ │ │ +00044980: 2224 5359 5354 454d 4354 4c5f 4558 4543  "$SYSTEMCTL_EXEC
│ │ │ +00044990: 2220 756e 6d61 736b 2027 746d 702e 6d6f  " unmask 'tmp.mo
│ │ │ +000449a0: 756e 7427 0a69 6620 5b5b 2024 2822 2453  unt'.if [[ $("$S
│ │ │ +000449b0: 5953 5445 4d43 544c 5f45 5845 4322 2069  YSTEMCTL_EXEC" i
│ │ │ +000449c0: 732d 7379 7374 656d 2d72 756e 6e69 6e67  s-system-running
│ │ │ +000449d0: 2920 213d 2022 6f66 666c 696e 6522 205d  ) != "offline" ]
│ │ │ +000449e0: 5d3b 2074 6865 6e0a 2020 2224 5359 5354  ]; then.  "$SYST
│ │ │ +000449f0: 454d 4354 4c5f 4558 4543 2220 7374 6172  EMCTL_EXEC" star
│ │ │ +00044a00: 7420 2774 6d70 2e6d 6f75 6e74 270a 6669  t 'tmp.mount'.fi
│ │ │ +00044a10: 0a22 2453 5953 5445 4d43 544c 5f45 5845  ."$SYSTEMCTL_EXE
│ │ │ +00044a20: 4322 2065 6e61 626c 6520 2774 6d70 2e6d  C" enable 'tmp.m
│ │ │ +00044a30: 6f75 6e74 270a 0a65 6c73 650a 2020 2020  ount'..else.    
│ │ │ +00044a40: 2667 743b 2661 6d70 3b32 2065 6368 6f20  >&2 echo 
│ │ │ +00044a50: 2752 656d 6564 6961 7469 6f6e 2069 7320  'Remediation is 
│ │ │ +00044a60: 6e6f 7420 6170 706c 6963 6162 6c65 2c20  not applicable, 
│ │ │ +00044a70: 6e6f 7468 696e 6720 7761 7320 646f 6e65  nothing was done
│ │ │ +00044a80: 270a 6669 0a3c 2f63 6f64 653e 3c2f 7072  '.fi.
Remediation │ │ │ +00044b40: 416e 6163 6f6e 6461 2073 6e69 7070 6574 Anaconda snippet │ │ │ +00044b50: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Complexity: │ │ │ +00044be0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ +00044c00: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:low< │ │ │ +00044c20: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:falseSt │ │ │ +00044c50: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ +00044c60: 656e 6162 6c65 3c2f 7464 3e3c 2f74 723e enable │ │ │ +00044c70: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
.services --e
│ │ │ +00044c90: 6e61 626c 6564 3d74 6d70 2e6d 6f75 6e74  nabled=tmp.mount
│ │ │  00044ca0: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
< │ │ │ 00044cc0: 2f74 723e 3c2f 7462 6f64 793e 3c2f 7461 /tr>Rem │ │ │ -00045cd0: 6564 6961 7469 6f6e 204f 5342 7569 6c64 ediation OSBuild │ │ │ -00045ce0: 2042 6c75 6570 7269 6e74 2073 6e69 7070 Blueprint snipp │ │ │ -00045cf0: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
.[[packa │ │ │ -00045d40: 6765 735d 5d0a 6e61 6d65 203d 2022 7375 ges]].name = "su │ │ │ -00045d50: 646f 220a 7665 7273 696f 6e20 3d20 222a do".version = "* │ │ │ -00045d60: 220a 3c2f 636f 6465 3e3c 2f70 7265 3e3c ".< │ │ │ -00045d70: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Ana │ │ │ -00045e20: 636f 6e64 6120 736e 6970 7065 7420 e287 conda snippet .. │ │ │ -00045e30: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
Complexity: │ │ │ -00045f00: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -00045f10: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f

│ │ │ -00045f60: 0a70 6163 6b61 6765 202d 2d61 6464 3d73  .package --add=s
│ │ │ -00045f70: 7564 6f0a 3c2f 636f 6465 3e3c 2f70 7265  udo.
Remediation P │ │ │ -00046030: 7570 7065 7420 736e 6970 7065 7420 e287 uppet snippet .. │ │ │ -00046040: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
low
Disru │ │ │ -00045ee0: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ -00045ef0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ -00045f30: 6567 793a 3c2f 7468 3e3c 7464 3e65 6e61 egy:ena │ │ │ -00045f40: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Complexity: │ │ │ -00046110: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -00046120: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f

│ │ │ -00046170: 696e 636c 7564 6520 696e 7374 616c 6c5f  include install_
│ │ │ -00046180: 7375 646f 0a0a 636c 6173 7320 696e 7374  sudo..class inst
│ │ │ -00046190: 616c 6c5f 7375 646f 207b 0a20 2070 6163  all_sudo {.  pac
│ │ │ -000461a0: 6b61 6765 207b 2027 7375 646f 273a 0a20  kage { 'sudo':. 
│ │ │ -000461b0: 2020 2065 6e73 7572 6520 3d26 6774 3b20     ensure => 
│ │ │ -000461c0: 2769 6e73 7461 6c6c 6564 272c 0a20 207d  'installed',.  }
│ │ │ -000461d0: 0a7d 0a3c 2f63 6f64 653e 3c2f 7072 653e  .}.
│ │ │ -000461e0: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22 Remediation An │ │ │ -00046290: 7369 626c 6520 736e 6970 7065 7420 e287 sible snippet .. │ │ │ -000462a0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
low
Disru │ │ │ -000460f0: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ -00046100: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ -00046140: 6567 793a 3c2f 7468 3e3c 7464 3e65 6e61 egy:ena │ │ │ -00046150: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Complexity: │ │ │ -00046370: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -00046380: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f

│ │ │ -000463d0: 2d20 6e61 6d65 3a20 4761 7468 6572 2074  - name: Gather t
│ │ │ -000463e0: 6865 2070 6163 6b61 6765 2066 6163 7473  he package facts
│ │ │ -000463f0: 0a20 2070 6163 6b61 6765 5f66 6163 7473  .  package_facts
│ │ │ -00046400: 3a0a 2020 2020 6d61 6e61 6765 723a 2061  :.    manager: a
│ │ │ -00046410: 7574 6f0a 2020 7461 6773 3a0a 2020 2d20  uto.  tags:.  - 
│ │ │ -00046420: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ -00046430: 2861 290a 2020 2d20 5043 492d 4453 5376  (a).  - PCI-DSSv
│ │ │ -00046440: 342d 322e 320a 2020 2d20 5043 492d 4453  4-2.2.  - PCI-DS
│ │ │ -00046450: 5376 342d 322e 322e 360a 2020 2d20 656e  Sv4-2.2.6.  - en
│ │ │ -00046460: 6162 6c65 5f73 7472 6174 6567 790a 2020  able_strategy.  
│ │ │ -00046470: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ -00046480: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ -00046490: 696f 6e0a 2020 2d20 6d65 6469 756d 5f73  ion.  - medium_s
│ │ │ -000464a0: 6576 6572 6974 790a 2020 2d20 6e6f 5f72  everity.  - no_r
│ │ │ -000464b0: 6562 6f6f 745f 6e65 6564 6564 0a20 202d  eboot_needed.  -
│ │ │ -000464c0: 2070 6163 6b61 6765 5f73 7564 6f5f 696e   package_sudo_in
│ │ │ -000464d0: 7374 616c 6c65 640a 0a2d 206e 616d 653a  stalled..- name:
│ │ │ -000464e0: 2045 6e73 7572 6520 7375 646f 2069 7320   Ensure sudo is 
│ │ │ -000464f0: 696e 7374 616c 6c65 640a 2020 616e 7369  installed.  ansi
│ │ │ -00046500: 626c 652e 6275 696c 7469 6e2e 7061 636b  ble.builtin.pack
│ │ │ -00046510: 6167 653a 0a20 2020 206e 616d 653a 2073  age:.    name: s
│ │ │ -00046520: 7564 6f0a 2020 2020 7374 6174 653a 2070  udo.    state: p
│ │ │ -00046530: 7265 7365 6e74 0a20 2077 6865 6e3a 2027  resent.  when: '
│ │ │ -00046540: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ -00046550: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -00046560: 6573 270a 2020 7461 6773 3a0a 2020 2d20  es'.  tags:.  - 
│ │ │ -00046570: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ -00046580: 2861 290a 2020 2d20 5043 492d 4453 5376  (a).  - PCI-DSSv
│ │ │ -00046590: 342d 322e 320a 2020 2d20 5043 492d 4453  4-2.2.  - PCI-DS
│ │ │ -000465a0: 5376 342d 322e 322e 360a 2020 2d20 656e  Sv4-2.2.6.  - en
│ │ │ -000465b0: 6162 6c65 5f73 7472 6174 6567 790a 2020  able_strategy.  
│ │ │ -000465c0: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ -000465d0: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ -000465e0: 696f 6e0a 2020 2d20 6d65 6469 756d 5f73  ion.  - medium_s
│ │ │ -000465f0: 6576 6572 6974 790a 2020 2d20 6e6f 5f72  everity.  - no_r
│ │ │ -00046600: 6562 6f6f 745f 6e65 6564 6564 0a20 202d  eboot_needed.  -
│ │ │ -00046610: 2070 6163 6b61 6765 5f73 7564 6f5f 696e   package_sudo_in
│ │ │ -00046620: 7374 616c 6c65 640a 3c2f 636f 6465 3e3c  stalled.<
│ │ │ -00046630: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>Remediati
│ │ │ -000466e0: 6f6e 2053 6865 6c6c 2073 6372 6970 7420  on Shell script 
│ │ │ -000466f0: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620  ...
low
Disru │ │ │ -00046350: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ -00046360: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ -000463a0: 6567 793a 3c2f 7468 3e3c 7464 3e65 6e61 egy:ena │ │ │ -000463b0: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
│ │ │ -00046770: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -00046790: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ -000467e0: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 < │ │ │ -00046810: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
# Remediation 
│ │ │ -00046830: 6973 2061 7070 6c69 6361 626c 6520 6f6e  is applicable on
│ │ │ -00046840: 6c79 2069 6e20 6365 7274 6169 6e20 706c  ly in certain pl
│ │ │ -00046850: 6174 666f 726d 730a 6966 2072 706d 202d  atforms.if rpm -
│ │ │ -00046860: 2d71 7569 6574 202d 7120 6b65 726e 656c  -quiet -q kernel
│ │ │ -00046870: 3b20 7468 656e 0a0a 6966 2021 2072 706d  ; then..if ! rpm
│ │ │ -00046880: 202d 7120 2d2d 7175 6965 7420 2273 7564   -q --quiet "sud
│ │ │ -00046890: 6f22 203b 2074 6865 6e0a 2020 2020 646e  o" ; then.    dn
│ │ │ -000468a0: 6620 696e 7374 616c 6c20 2d79 2022 7375  f install -y "su
│ │ │ -000468b0: 646f 220a 6669 0a0a 656c 7365 0a20 2020  do".fi..else.   
│ │ │ -000468c0: 2026 6774 3b26 616d 703b 3220 6563 686f   >&2 echo
│ │ │ -000468d0: 2027 5265 6d65 6469 6174 696f 6e20 6973   'Remediation is
│ │ │ -000468e0: 206e 6f74 2061 7070 6c69 6361 626c 652c   not applicable,
│ │ │ -000468f0: 206e 6f74 6869 6e67 2077 6173 2064 6f6e   nothing was don
│ │ │ -00046900: 6527 0a66 690a 3c2f 636f 6465 3e3c 2f70  e'.fi.

│ │ │ +00045cf0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
Complexity:< │ │ │ -00046780: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ -000467a0: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ -000467f0: 6174 6567 793a 3c2f 7468 3e3c 7464 3e65 ategy:e │ │ │ -00046800: 6e61 626c 653c 2f74 643e 3c2f 7472 3e3c nable
Com │ │ │ +00045d70: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ +00045da0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ +00045dc0: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +00045dd0: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ +00045df0: 2f74 683e 3c74 643e 656e 6162 6c65 3c2f /th>enable
│ │ │ +00045e10: 3c70 7265 3e3c 636f 6465 3e2d 206e 616d
- nam
│ │ │ +00045e20: 653a 2047 6174 6865 7220 7468 6520 7061  e: Gather the pa
│ │ │ +00045e30: 636b 6167 6520 6661 6374 730a 2020 7061  ckage facts.  pa
│ │ │ +00045e40: 636b 6167 655f 6661 6374 733a 0a20 2020  ckage_facts:.   
│ │ │ +00045e50: 206d 616e 6167 6572 3a20 6175 746f 0a20   manager: auto. 
│ │ │ +00045e60: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ +00045e70: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ +00045e80: 202d 2050 4349 2d44 5353 7634 2d32 2e32   - PCI-DSSv4-2.2
│ │ │ +00045e90: 0a20 202d 2050 4349 2d44 5353 7634 2d32  .  - PCI-DSSv4-2
│ │ │ +00045ea0: 2e32 2e36 0a20 202d 2065 6e61 626c 655f  .2.6.  - enable_
│ │ │ +00045eb0: 7374 7261 7465 6779 0a20 202d 206c 6f77  strategy.  - low
│ │ │ +00045ec0: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +00045ed0: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ +00045ee0: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ +00045ef0: 7479 0a20 202d 206e 6f5f 7265 626f 6f74  ty.  - no_reboot
│ │ │ +00045f00: 5f6e 6565 6465 640a 2020 2d20 7061 636b  _needed.  - pack
│ │ │ +00045f10: 6167 655f 7375 646f 5f69 6e73 7461 6c6c  age_sudo_install
│ │ │ +00045f20: 6564 0a0a 2d20 6e61 6d65 3a20 456e 7375  ed..- name: Ensu
│ │ │ +00045f30: 7265 2073 7564 6f20 6973 2069 6e73 7461  re sudo is insta
│ │ │ +00045f40: 6c6c 6564 0a20 2061 6e73 6962 6c65 2e62  lled.  ansible.b
│ │ │ +00045f50: 7569 6c74 696e 2e70 6163 6b61 6765 3a0a  uiltin.package:.
│ │ │ +00045f60: 2020 2020 6e61 6d65 3a20 7375 646f 0a20      name: sudo. 
│ │ │ +00045f70: 2020 2073 7461 7465 3a20 7072 6573 656e     state: presen
│ │ │ +00045f80: 740a 2020 7768 656e 3a20 2722 6b65 726e  t.  when: '"kern
│ │ │ +00045f90: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ +00045fa0: 6163 7473 2e70 6163 6b61 6765 7327 0a20  acts.packages'. 
│ │ │ +00045fb0: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ +00045fc0: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ +00045fd0: 202d 2050 4349 2d44 5353 7634 2d32 2e32   - PCI-DSSv4-2.2
│ │ │ +00045fe0: 0a20 202d 2050 4349 2d44 5353 7634 2d32  .  - PCI-DSSv4-2
│ │ │ +00045ff0: 2e32 2e36 0a20 202d 2065 6e61 626c 655f  .2.6.  - enable_
│ │ │ +00046000: 7374 7261 7465 6779 0a20 202d 206c 6f77  strategy.  - low
│ │ │ +00046010: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +00046020: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ +00046030: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ +00046040: 7479 0a20 202d 206e 6f5f 7265 626f 6f74  ty.  - no_reboot
│ │ │ +00046050: 5f6e 6565 6465 640a 2020 2d20 7061 636b  _needed.  - pack
│ │ │ +00046060: 6167 655f 7375 646f 5f69 6e73 7461 6c6c  age_sudo_install
│ │ │ +00046070: 6564 0a3c 2f63 6f64 653e 3c2f 7072 653e  ed.
│ │ │ +00046080: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation Pu │ │ │ +00046130: 7070 6574 2073 6e69 7070 6574 20e2 87b2 ppet snippet ... │ │ │ +00046140: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
< │ │ │ +00046210: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +00046220: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
i
│ │ │ +00046270: 6e63 6c75 6465 2069 6e73 7461 6c6c 5f73  nclude install_s
│ │ │ +00046280: 7564 6f0a 0a63 6c61 7373 2069 6e73 7461  udo..class insta
│ │ │ +00046290: 6c6c 5f73 7564 6f20 7b0a 2020 7061 636b  ll_sudo {.  pack
│ │ │ +000462a0: 6167 6520 7b20 2773 7564 6f27 3a0a 2020  age { 'sudo':.  
│ │ │ +000462b0: 2020 656e 7375 7265 203d 2667 743b 2027    ensure => '
│ │ │ +000462c0: 696e 7374 616c 6c65 6427 2c0a 2020 7d0a  installed',.  }.
│ │ │ +000462d0: 7d0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  }.
< │ │ │ +000462e0: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation OSB │ │ │ +00046390: 7569 6c64 2042 6c75 6570 7269 6e74 2073 uild Blueprint s │ │ │ +000463a0: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
.[[p
│ │ │ +000463f0: 6163 6b61 6765 735d 5d0a 6e61 6d65 203d  ackages]].name =
│ │ │ +00046400: 2022 7375 646f 220a 7665 7273 696f 6e20   "sudo".version 
│ │ │ +00046410: 3d20 222a 220a 3c2f 636f 6465 3e3c 2f70  = "*".

Remediation │ │ │ +000464d0: 2053 6865 6c6c 2073 6372 6970 7420 e287 Shell script .. │ │ │ +000464e0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
Complexity:low
Disrup │ │ │ +000461f0: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ +00046200: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ +00046240: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ +00046250: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Complexity: │ │ │ +000465b0: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +000465c0: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f

│ │ │ +00046610: 2320 5265 6d65 6469 6174 696f 6e20 6973  # Remediation is
│ │ │ +00046620: 2061 7070 6c69 6361 626c 6520 6f6e 6c79   applicable only
│ │ │ +00046630: 2069 6e20 6365 7274 6169 6e20 706c 6174   in certain plat
│ │ │ +00046640: 666f 726d 730a 6966 2072 706d 202d 2d71  forms.if rpm --q
│ │ │ +00046650: 7569 6574 202d 7120 6b65 726e 656c 3b20  uiet -q kernel; 
│ │ │ +00046660: 7468 656e 0a0a 6966 2021 2072 706d 202d  then..if ! rpm -
│ │ │ +00046670: 7120 2d2d 7175 6965 7420 2273 7564 6f22  q --quiet "sudo"
│ │ │ +00046680: 203b 2074 6865 6e0a 2020 2020 646e 6620   ; then.    dnf 
│ │ │ +00046690: 696e 7374 616c 6c20 2d79 2022 7375 646f  install -y "sudo
│ │ │ +000466a0: 220a 6669 0a0a 656c 7365 0a20 2020 2026  ".fi..else.    &
│ │ │ +000466b0: 6774 3b26 616d 703b 3220 6563 686f 2027  gt;&2 echo '
│ │ │ +000466c0: 5265 6d65 6469 6174 696f 6e20 6973 206e  Remediation is n
│ │ │ +000466d0: 6f74 2061 7070 6c69 6361 626c 652c 206e  ot applicable, n
│ │ │ +000466e0: 6f74 6869 6e67 2077 6173 2064 6f6e 6527  othing was done'
│ │ │ +000466f0: 0a66 690a 3c2f 636f 6465 3e3c 2f70 7265  .fi.
Remediation A │ │ │ +000467b0: 6e61 636f 6e64 6120 736e 6970 7065 7420 naconda snippet │ │ │ +000467c0: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
low
Disru │ │ │ +00046590: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +000465a0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +000465e0: 6567 793a 3c2f 7468 3e3c 7464 3e65 6e61 egy:ena │ │ │ +000465f0: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
│ │ │ +00046840: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +00046860: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ +000468b0: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 < │ │ │ +000468e0: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
.package --add
│ │ │ +00046900: 3d73 7564 6f0a 3c2f 636f 6465 3e3c 2f70  =sudo.

< │ │ │ 00046920: 2f74 643e 3c2f 7472 3e3c 2f74 626f 6479 /td>
Complexity:< │ │ │ +00046850: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +00046870: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ +000468c0: 6174 6567 793a 3c2f 7468 3e3c 7464 3e65 ategy:e │ │ │ +000468d0: 6e61 626c 653c 2f74 643e 3c2f 7472 3e3c nable
Remediation O │ │ │ -00055950: 5342 7569 6c64 2042 6c75 6570 7269 6e74 SBuild Blueprint │ │ │ -00055960: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -00055970: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
.[
│ │ │ -000559b0: 5b70 6163 6b61 6765 735d 5d0a 6e61 6d65  [packages]].name
│ │ │ -000559c0: 203d 2022 646e 662d 6175 746f 6d61 7469   = "dnf-automati
│ │ │ -000559d0: 6322 0a76 6572 7369 6f6e 203d 2022 2a22  c".version = "*"
│ │ │ -000559e0: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
│ │ │ -00055a90: 5265 6d65 6469 6174 696f 6e20 416e 6163 Remediation Anac │ │ │ -00055aa0: 6f6e 6461 2073 6e69 7070 6574 20e2 87b2 onda snippet ... │ │ │ -00055ab0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
< │ │ │ -00055b80: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -00055b90: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
.
│ │ │ -00055be0: 7061 636b 6167 6520 2d2d 6164 643d 646e  package --add=dn
│ │ │ -00055bf0: 662d 6175 746f 6d61 7469 630a 3c2f 636f  f-automatic.
< │ │ │ -00055c10: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ -00055c20: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ -00055c30: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ -00055c40: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ -00055c50: 6437 3922 2074 6162 696e 6465 783d 2230 d79" tabindex="0 │ │ │ -00055c60: 2220 726f 6c65 3d22 6275 7474 6f6e 2220 " role="button" │ │ │ -00055c70: 6172 6961 2d65 7870 616e 6465 643d 2266 aria-expanded="f │ │ │ -00055c80: 616c 7365 2220 7469 746c 653d 2241 6374 alse" title="Act │ │ │ -00055c90: 6976 6174 6520 746f 2072 6576 6561 6c22 ivate to reveal" │ │ │ -00055ca0: 2068 7265 663d 2223 2122 3e52 656d 6564 href="#!">Remed │ │ │ -00055cb0: 6961 7469 6f6e 2050 7570 7065 7420 736e iation Puppet sn │ │ │ -00055cc0: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ -00055d00: 3c74 6162 6c65 2063 6c61 7373 3d22 7461
Complexity:low
Disrup │ │ │ -00055b60: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -00055b70: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -00055bb0: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ -00055bc0: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
< │ │ │ -00055d70: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ -00055d90: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ -00055dc0: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy: │ │ │ -00055de0: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
Comple │ │ │ -00055d50: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ -00055d60: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ -00055da0: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ -00055db0: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
enable
include │ │ │ -00055e00: 696e 7374 616c 6c5f 646e 662d 6175 746f install_dnf-auto │ │ │ -00055e10: 6d61 7469 630a 0a63 6c61 7373 2069 6e73 matic..class ins │ │ │ -00055e20: 7461 6c6c 5f64 6e66 2d61 7574 6f6d 6174 tall_dnf-automat │ │ │ -00055e30: 6963 207b 0a20 2070 6163 6b61 6765 207b ic {. package { │ │ │ -00055e40: 2027 646e 662d 6175 746f 6d61 7469 6327 'dnf-automatic' │ │ │ -00055e50: 3a0a 2020 2020 656e 7375 7265 203d 2667 :. ensure =&g │ │ │ -00055e60: 743b 2027 696e 7374 616c 6c65 6427 2c0a t; 'installed',. │ │ │ -00055e70: 2020 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70 }.}.

Remediation │ │ │ -00055f30: 2041 6e73 6962 6c65 2073 6e69 7070 6574 Ansible snippet │ │ │ -00055f40: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Complexity: │ │ │ -00055fd0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ -00055ff0: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:low< │ │ │ -00056010: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:falseSt │ │ │ -00056040: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ -00056050: 656e 6162 6c65 3c2f 7464 3e3c 2f74 723e enable │ │ │ -00056060: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
- name: Gathe
│ │ │ -00056080: 7220 7468 6520 7061 636b 6167 6520 6661  r the package fa
│ │ │ -00056090: 6374 730a 2020 7061 636b 6167 655f 6661  cts.  package_fa
│ │ │ -000560a0: 6374 733a 0a20 2020 206d 616e 6167 6572  cts:.    manager
│ │ │ -000560b0: 3a20 6175 746f 0a20 2074 6167 733a 0a20  : auto.  tags:. 
│ │ │ -000560c0: 202d 2065 6e61 626c 655f 7374 7261 7465   - enable_strate
│ │ │ -000560d0: 6779 0a20 202d 206c 6f77 5f63 6f6d 706c  gy.  - low_compl
│ │ │ -000560e0: 6578 6974 790a 2020 2d20 6c6f 775f 6469  exity.  - low_di
│ │ │ -000560f0: 7372 7570 7469 6f6e 0a20 202d 206d 6564  sruption.  - med
│ │ │ -00056100: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ -00056110: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ -00056120: 640a 2020 2d20 7061 636b 6167 655f 646e  d.  - package_dn
│ │ │ -00056130: 662d 6175 746f 6d61 7469 635f 696e 7374  f-automatic_inst
│ │ │ -00056140: 616c 6c65 640a 0a2d 206e 616d 653a 2045  alled..- name: E
│ │ │ -00056150: 6e73 7572 6520 646e 662d 6175 746f 6d61  nsure dnf-automa
│ │ │ -00056160: 7469 6320 6973 2069 6e73 7461 6c6c 6564  tic is installed
│ │ │ -00056170: 0a20 2061 6e73 6962 6c65 2e62 7569 6c74  .  ansible.built
│ │ │ -00056180: 696e 2e70 6163 6b61 6765 3a0a 2020 2020  in.package:.    
│ │ │ -00056190: 6e61 6d65 3a20 646e 662d 6175 746f 6d61  name: dnf-automa
│ │ │ -000561a0: 7469 630a 2020 2020 7374 6174 653a 2070  tic.    state: p
│ │ │ -000561b0: 7265 7365 6e74 0a20 2077 6865 6e3a 2028  resent.  when: (
│ │ │ -000561c0: 206e 6f74 2028 2022 6b65 726e 656c 2220   not ( "kernel" 
│ │ │ -000561d0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -000561e0: 2e70 6163 6b61 6765 7320 616e 6420 2262  .packages and "b
│ │ │ -000561f0: 6f6f 7463 2220 696e 2061 6e73 6962 6c65  ootc" in ansible
│ │ │ -00056200: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ -00056210: 2020 2020 616e 6420 6e6f 7420 226f 7065      and not "ope
│ │ │ -00056220: 6e73 6869 6674 2d6b 7562 656c 6574 2220  nshift-kubelet" 
│ │ │ -00056230: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -00056240: 2e70 6163 6b61 6765 7320 616e 6420 226f  .packages and "o
│ │ │ -00056250: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ -00056260: 655f 7072 6f63 5f63 6d64 6c69 6e65 0a20  e_proc_cmdline. 
│ │ │ -00056270: 2020 2029 2061 6e64 206e 6f74 2028 2061     ) and not ( a
│ │ │ -00056280: 6e73 6962 6c65 5f76 6972 7475 616c 697a  nsible_virtualiz
│ │ │ -00056290: 6174 696f 6e5f 7479 7065 2069 6e20 5b22  ation_type in ["
│ │ │ -000562a0: 646f 636b 6572 222c 2022 6c78 6322 2c20  docker", "lxc", 
│ │ │ -000562b0: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61  "openvz", "podma
│ │ │ -000562c0: 6e22 2c0a 2020 2020 2263 6f6e 7461 696e  n",.    "contain
│ │ │ -000562d0: 6572 225d 2029 2029 0a20 2074 6167 733a  er"] ) ).  tags:
│ │ │ -000562e0: 0a20 202d 2065 6e61 626c 655f 7374 7261  .  - enable_stra
│ │ │ -000562f0: 7465 6779 0a20 202d 206c 6f77 5f63 6f6d  tegy.  - low_com
│ │ │ -00056300: 706c 6578 6974 790a 2020 2d20 6c6f 775f  plexity.  - low_
│ │ │ -00056310: 6469 7372 7570 7469 6f6e 0a20 202d 206d  disruption.  - m
│ │ │ -00056320: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ -00056330: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ -00056340: 6465 640a 2020 2d20 7061 636b 6167 655f  ded.  - package_
│ │ │ -00056350: 646e 662d 6175 746f 6d61 7469 635f 696e  dnf-automatic_in
│ │ │ -00056360: 7374 616c 6c65 640a 3c2f 636f 6465 3e3c  stalled.<
│ │ │ -00056370: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>
Remediati │ │ │ -00056420: 6f6e 2053 6865 6c6c 2073 6372 6970 7420 on Shell script │ │ │ -00056430: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
│ │ │ -000564b0: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -000564d0: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ -00056520: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 < │ │ │ -00056550: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
# Remediation 
│ │ │ -00056570: 6973 2061 7070 6c69 6361 626c 6520 6f6e  is applicable on
│ │ │ -00056580: 6c79 2069 6e20 6365 7274 6169 6e20 706c  ly in certain pl
│ │ │ -00056590: 6174 666f 726d 730a 6966 2028 2028 2021  atforms.if ( ( !
│ │ │ -000565a0: 2028 207b 2072 706d 202d 2d71 7569 6574   ( { rpm --quiet
│ │ │ -000565b0: 202d 7120 6b65 726e 656c 203b 7d20 2661   -q kernel ;} &a
│ │ │ -000565c0: 6d70 3b26 616d 703b 207b 2072 706d 202d  mp;& { rpm -
│ │ │ -000565d0: 2d71 7569 6574 202d 7120 626f 6f74 6320  -quiet -q bootc 
│ │ │ -000565e0: 3b7d 2026 616d 703b 2661 6d70 3b20 7b20  ;} && { 
│ │ │ -000565f0: 2120 7270 6d20 2d2d 7175 6965 7420 2d71  ! rpm --quiet -q
│ │ │ -00056600: 206f 7065 6e73 6869 6674 2d6b 7562 656c   openshift-kubel
│ │ │ -00056610: 6574 203b 7d20 2661 6d70 3b26 616d 703b  et ;} &&
│ │ │ -00056620: 2028 5b20 2d66 202f 7275 6e2f 6f73 7472   ([ -f /run/ostr
│ │ │ -00056630: 6565 2d62 6f6f 7465 6420 5d20 7c7c 205b  ee-booted ] || [
│ │ │ -00056640: 202d 4c20 2f6f 7374 7265 6520 5d29 2029   -L /ostree ]) )
│ │ │ -00056650: 2026 616d 703b 2661 6d70 3b20 2120 2820   && ! ( 
│ │ │ -00056660: 5b20 2d66 202f 2e64 6f63 6b65 7265 6e76  [ -f /.dockerenv
│ │ │ -00056670: 205d 207c 7c20 5b20 2d66 202f 7275 6e2f   ] || [ -f /run/
│ │ │ -00056680: 2e63 6f6e 7461 696e 6572 656e 7620 5d20  .containerenv ] 
│ │ │ -00056690: 2920 2920 293b 2074 6865 6e0a 0a69 6620  ) ) ); then..if 
│ │ │ -000566a0: 2120 7270 6d20 2d71 202d 2d71 7569 6574  ! rpm -q --quiet
│ │ │ -000566b0: 2022 646e 662d 6175 746f 6d61 7469 6322   "dnf-automatic"
│ │ │ -000566c0: 203b 2074 6865 6e0a 2020 2020 646e 6620   ; then.    dnf 
│ │ │ -000566d0: 696e 7374 616c 6c20 2d79 2022 646e 662d  install -y "dnf-
│ │ │ -000566e0: 6175 746f 6d61 7469 6322 0a66 690a 0a65  automatic".fi..e
│ │ │ -000566f0: 6c73 650a 2020 2020 2667 743b 2661 6d70  lse.    >&
│ │ │ -00056700: 3b32 2065 6368 6f20 2752 656d 6564 6961  ;2 echo 'Remedia
│ │ │ -00056710: 7469 6f6e 2069 7320 6e6f 7420 6170 706c  tion is not appl
│ │ │ -00056720: 6963 6162 6c65 2c20 6e6f 7468 696e 6720  icable, nothing 
│ │ │ -00056730: 7761 7320 646f 6e65 270a 6669 0a3c 2f63  was done'.fi.Remediation A
│ │ │ +00055950: 6e73 6962 6c65 2073 6e69 7070 6574 20e2  nsible snippet .
│ │ │ +00055960: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063  ..
Complexity:< │ │ │ -000564c0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ -000564e0: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ -00056530: 6174 6567 793a 3c2f 7468 3e3c 7464 3e65 ategy:e │ │ │ -00056540: 6e61 626c 653c 2f74 643e 3c2f 7472 3e3c nable
< │ │ │ +000559e0: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ +00055a00: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ +00055a50: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
- name: Gather 
│ │ │ +00055aa0: 7468 6520 7061 636b 6167 6520 6661 6374  the package fact
│ │ │ +00055ab0: 730a 2020 7061 636b 6167 655f 6661 6374  s.  package_fact
│ │ │ +00055ac0: 733a 0a20 2020 206d 616e 6167 6572 3a20  s:.    manager: 
│ │ │ +00055ad0: 6175 746f 0a20 2074 6167 733a 0a20 202d  auto.  tags:.  -
│ │ │ +00055ae0: 2065 6e61 626c 655f 7374 7261 7465 6779   enable_strategy
│ │ │ +00055af0: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ +00055b00: 6974 790a 2020 2d20 6c6f 775f 6469 7372  ity.  - low_disr
│ │ │ +00055b10: 7570 7469 6f6e 0a20 202d 206d 6564 6975  uption.  - mediu
│ │ │ +00055b20: 6d5f 7365 7665 7269 7479 0a20 202d 206e  m_severity.  - n
│ │ │ +00055b30: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ +00055b40: 2020 2d20 7061 636b 6167 655f 646e 662d    - package_dnf-
│ │ │ +00055b50: 6175 746f 6d61 7469 635f 696e 7374 616c  automatic_instal
│ │ │ +00055b60: 6c65 640a 0a2d 206e 616d 653a 2045 6e73  led..- name: Ens
│ │ │ +00055b70: 7572 6520 646e 662d 6175 746f 6d61 7469  ure dnf-automati
│ │ │ +00055b80: 6320 6973 2069 6e73 7461 6c6c 6564 0a20  c is installed. 
│ │ │ +00055b90: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ +00055ba0: 2e70 6163 6b61 6765 3a0a 2020 2020 6e61  .package:.    na
│ │ │ +00055bb0: 6d65 3a20 646e 662d 6175 746f 6d61 7469  me: dnf-automati
│ │ │ +00055bc0: 630a 2020 2020 7374 6174 653a 2070 7265  c.    state: pre
│ │ │ +00055bd0: 7365 6e74 0a20 2077 6865 6e3a 2028 206e  sent.  when: ( n
│ │ │ +00055be0: 6f74 2028 2022 6b65 726e 656c 2220 696e  ot ( "kernel" in
│ │ │ +00055bf0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +00055c00: 6163 6b61 6765 7320 616e 6420 2262 6f6f  ackages and "boo
│ │ │ +00055c10: 7463 2220 696e 2061 6e73 6962 6c65 5f66  tc" in ansible_f
│ │ │ +00055c20: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ +00055c30: 2020 616e 6420 6e6f 7420 226f 7065 6e73    and not "opens
│ │ │ +00055c40: 6869 6674 2d6b 7562 656c 6574 2220 696e  hift-kubelet" in
│ │ │ +00055c50: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +00055c60: 6163 6b61 6765 7320 616e 6420 226f 7374  ackages and "ost
│ │ │ +00055c70: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ +00055c80: 7072 6f63 5f63 6d64 6c69 6e65 0a20 2020  proc_cmdline.   
│ │ │ +00055c90: 2029 2061 6e64 206e 6f74 2028 2061 6e73   ) and not ( ans
│ │ │ +00055ca0: 6962 6c65 5f76 6972 7475 616c 697a 6174  ible_virtualizat
│ │ │ +00055cb0: 696f 6e5f 7479 7065 2069 6e20 5b22 646f  ion_type in ["do
│ │ │ +00055cc0: 636b 6572 222c 2022 6c78 6322 2c20 226f  cker", "lxc", "o
│ │ │ +00055cd0: 7065 6e76 7a22 2c20 2270 6f64 6d61 6e22  penvz", "podman"
│ │ │ +00055ce0: 2c0a 2020 2020 2263 6f6e 7461 696e 6572  ,.    "container
│ │ │ +00055cf0: 225d 2029 2029 0a20 2074 6167 733a 0a20  "] ) ).  tags:. 
│ │ │ +00055d00: 202d 2065 6e61 626c 655f 7374 7261 7465   - enable_strate
│ │ │ +00055d10: 6779 0a20 202d 206c 6f77 5f63 6f6d 706c  gy.  - low_compl
│ │ │ +00055d20: 6578 6974 790a 2020 2d20 6c6f 775f 6469  exity.  - low_di
│ │ │ +00055d30: 7372 7570 7469 6f6e 0a20 202d 206d 6564  sruption.  - med
│ │ │ +00055d40: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ +00055d50: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ +00055d60: 640a 2020 2d20 7061 636b 6167 655f 646e  d.  - package_dn
│ │ │ +00055d70: 662d 6175 746f 6d61 7469 635f 696e 7374  f-automatic_inst
│ │ │ +00055d80: 616c 6c65 640a 3c2f 636f 6465 3e3c 2f70  alled.

Remediation │ │ │ +00055e40: 2050 7570 7065 7420 736e 6970 7065 7420 Puppet snippet │ │ │ +00055e50: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
low
Disr │ │ │ +00055a10: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +00055a20: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ +00055a60: 7465 6779 3a3c 2f74 683e 3c74 643e 656e tegy:en │ │ │ +00055a70: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
│ │ │ +00055ed0: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +00055ef0: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ +00055f40: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 < │ │ │ +00055f70: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
include instal
│ │ │ +00055f90: 6c5f 646e 662d 6175 746f 6d61 7469 630a  l_dnf-automatic.
│ │ │ +00055fa0: 0a63 6c61 7373 2069 6e73 7461 6c6c 5f64  .class install_d
│ │ │ +00055fb0: 6e66 2d61 7574 6f6d 6174 6963 207b 0a20  nf-automatic {. 
│ │ │ +00055fc0: 2070 6163 6b61 6765 207b 2027 646e 662d   package { 'dnf-
│ │ │ +00055fd0: 6175 746f 6d61 7469 6327 3a0a 2020 2020  automatic':.    
│ │ │ +00055fe0: 656e 7375 7265 203d 2667 743b 2027 696e  ensure => 'in
│ │ │ +00055ff0: 7374 616c 6c65 6427 2c0a 2020 7d0a 7d0a  stalled',.  }.}.
│ │ │ +00056000: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
R │ │ │ +000560b0: 656d 6564 6961 7469 6f6e 204f 5342 7569 emediation OSBui │ │ │ +000560c0: 6c64 2042 6c75 6570 7269 6e74 2073 6e69 ld Blueprint sni │ │ │ +000560d0: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ +000560e0: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
< │ │ │ +00056110: 7072 653e 3c63 6f64 653e 0a5b 5b70 6163 pre>.[[pac │ │ │ +00056120: 6b61 6765 735d 5d0a 6e61 6d65 203d 2022 kages]].name = " │ │ │ +00056130: 646e 662d 6175 746f 6d61 7469 6322 0a76 dnf-automatic".v │ │ │ +00056140: 6572 7369 6f6e 203d 2022 2a22 0a3c 2f63 ersion = "*".
│ │ │ +00056160: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Reme │ │ │ +00056200: 6469 6174 696f 6e20 5368 656c 6c20 7363 diation Shell sc │ │ │ +00056210: 7269 7074 20e2 87b2 3c2f 613e 3c62 723e ript ...
│ │ │ +00056220: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
< │ │ │ +00056250: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +00056260: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +00056270: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +00056280: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +00056290: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >
Disruption:Strategy: │ │ │ +00056320: 3c74 643e 656e 6162 6c65 3c2f 7464 3e3c < │ │ │ +00056330: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
Complexity:< │ │ │ +00055ee0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +00055f00: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ +00055f50: 6174 6567 793a 3c2f 7468 3e3c 7464 3e65 ategy:e │ │ │ +00055f60: 6e61 626c 653c 2f74 643e 3c2f 7472 3e3c nable
Complex │ │ │ +000562a0: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ +000562b0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
low
Reboo │ │ │ +000562f0: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ +00056300: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
enable
# Remedia
│ │ │ +00056350: 7469 6f6e 2069 7320 6170 706c 6963 6162  tion is applicab
│ │ │ +00056360: 6c65 206f 6e6c 7920 696e 2063 6572 7461  le only in certa
│ │ │ +00056370: 696e 2070 6c61 7466 6f72 6d73 0a69 6620  in platforms.if 
│ │ │ +00056380: 2820 2820 2120 2820 7b20 7270 6d20 2d2d  ( ( ! ( { rpm --
│ │ │ +00056390: 7175 6965 7420 2d71 206b 6572 6e65 6c20  quiet -q kernel 
│ │ │ +000563a0: 3b7d 2026 616d 703b 2661 6d70 3b20 7b20  ;} && { 
│ │ │ +000563b0: 7270 6d20 2d2d 7175 6965 7420 2d71 2062  rpm --quiet -q b
│ │ │ +000563c0: 6f6f 7463 203b 7d20 2661 6d70 3b26 616d  ootc ;} &&am
│ │ │ +000563d0: 703b 207b 2021 2072 706d 202d 2d71 7569  p; { ! rpm --qui
│ │ │ +000563e0: 6574 202d 7120 6f70 656e 7368 6966 742d  et -q openshift-
│ │ │ +000563f0: 6b75 6265 6c65 7420 3b7d 2026 616d 703b  kubelet ;} &
│ │ │ +00056400: 2661 6d70 3b20 285b 202d 6620 2f72 756e  & ([ -f /run
│ │ │ +00056410: 2f6f 7374 7265 652d 626f 6f74 6564 205d  /ostree-booted ]
│ │ │ +00056420: 207c 7c20 5b20 2d4c 202f 6f73 7472 6565   || [ -L /ostree
│ │ │ +00056430: 205d 2920 2920 2661 6d70 3b26 616d 703b   ]) ) &&
│ │ │ +00056440: 2021 2028 205b 202d 6620 2f2e 646f 636b   ! ( [ -f /.dock
│ │ │ +00056450: 6572 656e 7620 5d20 7c7c 205b 202d 6620  erenv ] || [ -f 
│ │ │ +00056460: 2f72 756e 2f2e 636f 6e74 6169 6e65 7265  /run/.containere
│ │ │ +00056470: 6e76 205d 2029 2029 2029 3b20 7468 656e  nv ] ) ) ); then
│ │ │ +00056480: 0a0a 6966 2021 2072 706d 202d 7120 2d2d  ..if ! rpm -q --
│ │ │ +00056490: 7175 6965 7420 2264 6e66 2d61 7574 6f6d  quiet "dnf-autom
│ │ │ +000564a0: 6174 6963 2220 3b20 7468 656e 0a20 2020  atic" ; then.   
│ │ │ +000564b0: 2064 6e66 2069 6e73 7461 6c6c 202d 7920   dnf install -y 
│ │ │ +000564c0: 2264 6e66 2d61 7574 6f6d 6174 6963 220a  "dnf-automatic".
│ │ │ +000564d0: 6669 0a0a 656c 7365 0a20 2020 2026 6774  fi..else.    >
│ │ │ +000564e0: 3b26 616d 703b 3220 6563 686f 2027 5265  ;&2 echo 'Re
│ │ │ +000564f0: 6d65 6469 6174 696f 6e20 6973 206e 6f74  mediation is not
│ │ │ +00056500: 2061 7070 6c69 6361 626c 652c 206e 6f74   applicable, not
│ │ │ +00056510: 6869 6e67 2077 6173 2064 6f6e 6527 0a66  hing was done'.f
│ │ │ +00056520: 690a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  i.
< │ │ │ +00056530: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Ana │ │ │ +000565e0: 636f 6e64 6120 736e 6970 7065 7420 e287 conda snippet .. │ │ │ +000565f0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
Complexity: │ │ │ +000566c0: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +000566d0: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f

│ │ │ +00056720: 0a70 6163 6b61 6765 202d 2d61 6464 3d64  .package --add=d
│ │ │ +00056730: 6e66 2d61 7574 6f6d 6174 6963 0a3c 2f63  nf-automatic.
│ │ │ 00056750: 3c2f 6469 763e 3c2f 7464 3e3c 2f74 723e │ │ │ 00056760: 3c2f 7462 6f64 793e 3c2f 7461 626c 653e
low
Disru │ │ │ +000566a0: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +000566b0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +000566f0: 6567 793a 3c2f 7468 3e3c 7464 3e65 6e61 egy:ena │ │ │ +00056700: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
│ │ │ 00056770: 3c2f 7464 3e3c 2f74 723e 3c74 7220 6461 Remedia │ │ │ -000ec070: 7469 6f6e 204f 5342 7569 6c64 2042 6c75 tion OSBuild Blu │ │ │ -000ec080: 6570 7269 6e74 2073 6e69 7070 6574 20e2 eprint snippet . │ │ │ -000ec090: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
<
│ │ │ -000ec0d0: 636f 6465 3e5b 6375 7374 6f6d 697a 6174  code>[customizat
│ │ │ -000ec0e0: 696f 6e73 2e6b 6572 6e65 6c5d 0a61 7070  ions.kernel].app
│ │ │ -000ec0f0: 656e 6420 3d20 2269 6f6d 6d75 3d66 6f72  end = "iommu=for
│ │ │ -000ec100: 6365 220a 3c2f 636f 6465 3e3c 2f70 7265  ce".
Remediation │ │ │ -000ec1c0: 416e 7369 626c 6520 736e 6970 7065 7420 Ansible snippet │ │ │ -000ec1d0: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
Complexity: │ │ │ -000ec260: 3c2f 7468 3e3c 7464 3e6d 6564 6975 6d3c medium< │ │ │ -000ec270: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ -000ec2b0: 3a3c 2f74 683e 3c74 643e 7472 7565 3c2f :true │ │ │ -000ec2d0: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:restrict< │ │ │ -000ec2f0: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
- name: G
│ │ │ -000ec310: 6174 6865 7220 7468 6520 7061 636b 6167  ather the packag
│ │ │ -000ec320: 6520 6661 6374 730a 2020 7061 636b 6167  e facts.  packag
│ │ │ -000ec330: 655f 6661 6374 733a 0a20 2020 206d 616e  e_facts:.    man
│ │ │ -000ec340: 6167 6572 3a20 6175 746f 0a20 2074 6167  ager: auto.  tag
│ │ │ -000ec350: 733a 0a20 202d 2067 7275 6232 5f65 6e61  s:.  - grub2_ena
│ │ │ -000ec360: 626c 655f 696f 6d6d 755f 666f 7263 650a  ble_iommu_force.
│ │ │ -000ec370: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ -000ec380: 6f6e 0a20 202d 206d 6564 6975 6d5f 636f  on.  - medium_co
│ │ │ -000ec390: 6d70 6c65 7869 7479 0a20 202d 2072 6562  mplexity.  - reb
│ │ │ -000ec3a0: 6f6f 745f 7265 7175 6972 6564 0a20 202d  oot_required.  -
│ │ │ -000ec3b0: 2072 6573 7472 6963 745f 7374 7261 7465   restrict_strate
│ │ │ -000ec3c0: 6779 0a20 202d 2075 6e6b 6e6f 776e 5f73  gy.  - unknown_s
│ │ │ -000ec3d0: 6576 6572 6974 790a 0a2d 206e 616d 653a  everity..- name:
│ │ │ -000ec3e0: 2043 6865 636b 2069 6620 696f 6d6d 7520   Check if iommu 
│ │ │ -000ec3f0: 6172 6775 6d65 6e74 2069 7320 616c 7265  argument is alre
│ │ │ -000ec400: 6164 7920 7072 6573 656e 7420 696e 202f  ady present in /
│ │ │ -000ec410: 6574 632f 6465 6661 756c 742f 6772 7562  etc/default/grub
│ │ │ -000ec420: 0a20 2061 6e73 6962 6c65 2e62 7569 6c74  .  ansible.built
│ │ │ -000ec430: 696e 2e73 6c75 7270 3a0a 2020 2020 7372  in.slurp:.    sr
│ │ │ -000ec440: 633a 202f 6574 632f 6465 6661 756c 742f  c: /etc/default/
│ │ │ -000ec450: 6772 7562 0a20 2072 6567 6973 7465 723a  grub.  register:
│ │ │ -000ec460: 2065 7463 5f64 6566 6175 6c74 5f67 7275   etc_default_gru
│ │ │ -000ec470: 620a 2020 7768 656e 3a20 2820 2267 7275  b.  when: ( "gru
│ │ │ -000ec480: 6232 2d63 6f6d 6d6f 6e22 2069 6e20 616e  b2-common" in an
│ │ │ -000ec490: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -000ec4a0: 6167 6573 2061 6e64 2022 6b65 726e 656c  ages and "kernel
│ │ │ -000ec4b0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -000ec4c0: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ -000ec4d0: 290a 2020 7461 6773 3a0a 2020 2d20 6772  ).  tags:.  - gr
│ │ │ -000ec4e0: 7562 325f 656e 6162 6c65 5f69 6f6d 6d75  ub2_enable_iommu
│ │ │ -000ec4f0: 5f66 6f72 6365 0a20 202d 206c 6f77 5f64  _force.  - low_d
│ │ │ -000ec500: 6973 7275 7074 696f 6e0a 2020 2d20 6d65  isruption.  - me
│ │ │ -000ec510: 6469 756d 5f63 6f6d 706c 6578 6974 790a  dium_complexity.
│ │ │ -000ec520: 2020 2d20 7265 626f 6f74 5f72 6571 7569    - reboot_requi
│ │ │ -000ec530: 7265 640a 2020 2d20 7265 7374 7269 6374  red.  - restrict
│ │ │ -000ec540: 5f73 7472 6174 6567 790a 2020 2d20 756e  _strategy.  - un
│ │ │ -000ec550: 6b6e 6f77 6e5f 7365 7665 7269 7479 0a0a  known_severity..
│ │ │ -000ec560: 2d20 6e61 6d65 3a20 4368 6563 6b20 6966  - name: Check if
│ │ │ -000ec570: 2069 6f6d 6d75 2061 7267 756d 656e 7420   iommu argument 
│ │ │ -000ec580: 6973 2061 6c72 6561 6479 2070 7265 7365  is already prese
│ │ │ -000ec590: 6e74 0a20 2061 6e73 6962 6c65 2e62 7569  nt.  ansible.bui
│ │ │ -000ec5a0: 6c74 696e 2e63 6f6d 6d61 6e64 3a20 2f73  ltin.command: /s
│ │ │ -000ec5b0: 6269 6e2f 6772 7562 6279 202d 2d69 6e66  bin/grubby --inf
│ │ │ -000ec5c0: 6f3d 414c 4c0a 2020 7265 6769 7374 6572  o=ALL.  register
│ │ │ -000ec5d0: 3a20 6772 7562 6279 5f69 6e66 6f0a 2020  : grubby_info.  
│ │ │ -000ec5e0: 6368 6563 6b5f 6d6f 6465 3a20 6661 6c73  check_mode: fals
│ │ │ -000ec5f0: 650a 2020 6368 616e 6765 645f 7768 656e  e.  changed_when
│ │ │ -000ec600: 3a20 6661 6c73 650a 2020 6661 696c 6564  : false.  failed
│ │ │ -000ec610: 5f77 6865 6e3a 2066 616c 7365 0a20 2077  _when: false.  w
│ │ │ -000ec620: 6865 6e3a 2028 2022 6772 7562 322d 636f  hen: ( "grub2-co
│ │ │ -000ec630: 6d6d 6f6e 2220 696e 2061 6e73 6962 6c65  mmon" in ansible
│ │ │ -000ec640: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ -000ec650: 616e 6420 226b 6572 6e65 6c22 2069 6e20  and "kernel" in 
│ │ │ -000ec660: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -000ec670: 636b 6167 6573 0a20 2020 2029 0a20 2074  ckages.    ).  t
│ │ │ -000ec680: 6167 733a 0a20 202d 2067 7275 6232 5f65  ags:.  - grub2_e
│ │ │ -000ec690: 6e61 626c 655f 696f 6d6d 755f 666f 7263  nable_iommu_forc
│ │ │ -000ec6a0: 650a 2020 2d20 6c6f 775f 6469 7372 7570  e.  - low_disrup
│ │ │ -000ec6b0: 7469 6f6e 0a20 202d 206d 6564 6975 6d5f  tion.  - medium_
│ │ │ -000ec6c0: 636f 6d70 6c65 7869 7479 0a20 202d 2072  complexity.  - r
│ │ │ -000ec6d0: 6562 6f6f 745f 7265 7175 6972 6564 0a20  eboot_required. 
│ │ │ -000ec6e0: 202d 2072 6573 7472 6963 745f 7374 7261   - restrict_stra
│ │ │ -000ec6f0: 7465 6779 0a20 202d 2075 6e6b 6e6f 776e  tegy.  - unknown
│ │ │ -000ec700: 5f73 6576 6572 6974 790a 0a2d 206e 616d  _severity..- nam
│ │ │ -000ec710: 653a 2055 7064 6174 6520 6772 7562 2064  e: Update grub d
│ │ │ -000ec720: 6566 6175 6c74 7320 616e 6420 7468 6520  efaults and the 
│ │ │ -000ec730: 626f 6f74 6c6f 6164 6572 206d 656e 750a  bootloader menu.
│ │ │ -000ec740: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ -000ec750: 6e2e 636f 6d6d 616e 643a 202f 7362 696e  n.command: /sbin
│ │ │ -000ec760: 2f67 7275 6262 7920 2d2d 7570 6461 7465  /grubby --update
│ │ │ -000ec770: 2d6b 6572 6e65 6c3d 414c 4c20 2d2d 6172  -kernel=ALL --ar
│ │ │ -000ec780: 6773 3d22 696f 6d6d 753d 666f 7263 6522  gs="iommu=force"
│ │ │ -000ec790: 0a20 2077 6865 6e3a 0a20 202d 2028 2022  .  when:.  - ( "
│ │ │ -000ec7a0: 6772 7562 322d 636f 6d6d 6f6e 2220 696e  grub2-common" in
│ │ │ -000ec7b0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -000ec7c0: 6163 6b61 6765 7320 616e 6420 226b 6572  ackages and "ker
│ │ │ -000ec7d0: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ -000ec7e0: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ -000ec7f0: 2020 2029 0a20 202d 2028 6772 7562 6279     ).  - (grubby
│ │ │ -000ec800: 5f69 6e66 6f2e 7374 646f 7574 2069 7320  _info.stdout is 
│ │ │ -000ec810: 6e6f 7420 7365 6172 6368 2827 696f 6d6d  not search('iomm
│ │ │ -000ec820: 753d 666f 7263 6527 2929 206f 7220 2828  u=force')) or ((
│ │ │ -000ec830: 6574 635f 6465 6661 756c 745f 6772 7562  etc_default_grub
│ │ │ -000ec840: 5b27 636f 6e74 656e 7427 5d0a 2020 2020  ['content'].    
│ │ │ -000ec850: 7c20 6236 3464 6563 6f64 6529 2069 7320  | b64decode) is 
│ │ │ -000ec860: 6e6f 7420 7365 6172 6368 2827 696f 6d6d  not search('iomm
│ │ │ -000ec870: 753d 666f 7263 6527 2929 0a20 2074 6167  u=force')).  tag
│ │ │ -000ec880: 733a 0a20 202d 2067 7275 6232 5f65 6e61  s:.  - grub2_ena
│ │ │ -000ec890: 626c 655f 696f 6d6d 755f 666f 7263 650a  ble_iommu_force.
│ │ │ -000ec8a0: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ -000ec8b0: 6f6e 0a20 202d 206d 6564 6975 6d5f 636f  on.  - medium_co
│ │ │ -000ec8c0: 6d70 6c65 7869 7479 0a20 202d 2072 6562  mplexity.  - reb
│ │ │ -000ec8d0: 6f6f 745f 7265 7175 6972 6564 0a20 202d  oot_required.  -
│ │ │ -000ec8e0: 2072 6573 7472 6963 745f 7374 7261 7465   restrict_strate
│ │ │ -000ec8f0: 6779 0a20 202d 2075 6e6b 6e6f 776e 5f73  gy.  - unknown_s
│ │ │ -000ec900: 6576 6572 6974 790a 3c2f 636f 6465 3e3c  everity.<
│ │ │ +000ec070: 7469 6f6e 2041 6e73 6962 6c65 2073 6e69  tion Ansible sni
│ │ │ +000ec080: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e  ppet ...
│ │ │ +000ec090: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ +000ec0c0: 3c74 6162 6c65 2063 6c61 7373 3d22 7461
Comple │ │ │ +000ec110: 7869 7479 3a3c 2f74 683e 3c74 643e 6d65 xity:me │ │ │ +000ec120: 6469 756d 3c2f 7464 3e3c 2f74 723e 3c74 dium
Disruption │ │ │ +000ec140: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ +000ec160: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e74 eboot:t │ │ │ +000ec170: 7275 653c 2f74 643e 3c2f 7472 3e3c 7472 rue
Strategy:restrict< │ │ │ +000ec1a0: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
- na
│ │ │ +000ec1c0: 6d65 3a20 4761 7468 6572 2074 6865 2070  me: Gather the p
│ │ │ +000ec1d0: 6163 6b61 6765 2066 6163 7473 0a20 2070  ackage facts.  p
│ │ │ +000ec1e0: 6163 6b61 6765 5f66 6163 7473 3a0a 2020  ackage_facts:.  
│ │ │ +000ec1f0: 2020 6d61 6e61 6765 723a 2061 7574 6f0a    manager: auto.
│ │ │ +000ec200: 2020 7461 6773 3a0a 2020 2d20 6772 7562    tags:.  - grub
│ │ │ +000ec210: 325f 656e 6162 6c65 5f69 6f6d 6d75 5f66  2_enable_iommu_f
│ │ │ +000ec220: 6f72 6365 0a20 202d 206c 6f77 5f64 6973  orce.  - low_dis
│ │ │ +000ec230: 7275 7074 696f 6e0a 2020 2d20 6d65 6469  ruption.  - medi
│ │ │ +000ec240: 756d 5f63 6f6d 706c 6578 6974 790a 2020  um_complexity.  
│ │ │ +000ec250: 2d20 7265 626f 6f74 5f72 6571 7569 7265  - reboot_require
│ │ │ +000ec260: 640a 2020 2d20 7265 7374 7269 6374 5f73  d.  - restrict_s
│ │ │ +000ec270: 7472 6174 6567 790a 2020 2d20 756e 6b6e  trategy.  - unkn
│ │ │ +000ec280: 6f77 6e5f 7365 7665 7269 7479 0a0a 2d20  own_severity..- 
│ │ │ +000ec290: 6e61 6d65 3a20 4368 6563 6b20 6966 2069  name: Check if i
│ │ │ +000ec2a0: 6f6d 6d75 2061 7267 756d 656e 7420 6973  ommu argument is
│ │ │ +000ec2b0: 2061 6c72 6561 6479 2070 7265 7365 6e74   already present
│ │ │ +000ec2c0: 2069 6e20 2f65 7463 2f64 6566 6175 6c74   in /etc/default
│ │ │ +000ec2d0: 2f67 7275 620a 2020 616e 7369 626c 652e  /grub.  ansible.
│ │ │ +000ec2e0: 6275 696c 7469 6e2e 736c 7572 703a 0a20  builtin.slurp:. 
│ │ │ +000ec2f0: 2020 2073 7263 3a20 2f65 7463 2f64 6566     src: /etc/def
│ │ │ +000ec300: 6175 6c74 2f67 7275 620a 2020 7265 6769  ault/grub.  regi
│ │ │ +000ec310: 7374 6572 3a20 6574 635f 6465 6661 756c  ster: etc_defaul
│ │ │ +000ec320: 745f 6772 7562 0a20 2077 6865 6e3a 2028  t_grub.  when: (
│ │ │ +000ec330: 2022 6772 7562 322d 636f 6d6d 6f6e 2220   "grub2-common" 
│ │ │ +000ec340: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +000ec350: 2e70 6163 6b61 6765 7320 616e 6420 226b  .packages and "k
│ │ │ +000ec360: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ +000ec370: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +000ec380: 0a20 2020 2029 0a20 2074 6167 733a 0a20  .    ).  tags:. 
│ │ │ +000ec390: 202d 2067 7275 6232 5f65 6e61 626c 655f   - grub2_enable_
│ │ │ +000ec3a0: 696f 6d6d 755f 666f 7263 650a 2020 2d20  iommu_force.  - 
│ │ │ +000ec3b0: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ +000ec3c0: 202d 206d 6564 6975 6d5f 636f 6d70 6c65   - medium_comple
│ │ │ +000ec3d0: 7869 7479 0a20 202d 2072 6562 6f6f 745f  xity.  - reboot_
│ │ │ +000ec3e0: 7265 7175 6972 6564 0a20 202d 2072 6573  required.  - res
│ │ │ +000ec3f0: 7472 6963 745f 7374 7261 7465 6779 0a20  trict_strategy. 
│ │ │ +000ec400: 202d 2075 6e6b 6e6f 776e 5f73 6576 6572   - unknown_sever
│ │ │ +000ec410: 6974 790a 0a2d 206e 616d 653a 2043 6865  ity..- name: Che
│ │ │ +000ec420: 636b 2069 6620 696f 6d6d 7520 6172 6775  ck if iommu argu
│ │ │ +000ec430: 6d65 6e74 2069 7320 616c 7265 6164 7920  ment is already 
│ │ │ +000ec440: 7072 6573 656e 740a 2020 616e 7369 626c  present.  ansibl
│ │ │ +000ec450: 652e 6275 696c 7469 6e2e 636f 6d6d 616e  e.builtin.comman
│ │ │ +000ec460: 643a 202f 7362 696e 2f67 7275 6262 7920  d: /sbin/grubby 
│ │ │ +000ec470: 2d2d 696e 666f 3d41 4c4c 0a20 2072 6567  --info=ALL.  reg
│ │ │ +000ec480: 6973 7465 723a 2067 7275 6262 795f 696e  ister: grubby_in
│ │ │ +000ec490: 666f 0a20 2063 6865 636b 5f6d 6f64 653a  fo.  check_mode:
│ │ │ +000ec4a0: 2066 616c 7365 0a20 2063 6861 6e67 6564   false.  changed
│ │ │ +000ec4b0: 5f77 6865 6e3a 2066 616c 7365 0a20 2066  _when: false.  f
│ │ │ +000ec4c0: 6169 6c65 645f 7768 656e 3a20 6661 6c73  ailed_when: fals
│ │ │ +000ec4d0: 650a 2020 7768 656e 3a20 2820 2267 7275  e.  when: ( "gru
│ │ │ +000ec4e0: 6232 2d63 6f6d 6d6f 6e22 2069 6e20 616e  b2-common" in an
│ │ │ +000ec4f0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +000ec500: 6167 6573 2061 6e64 2022 6b65 726e 656c  ages and "kernel
│ │ │ +000ec510: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +000ec520: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ +000ec530: 290a 2020 7461 6773 3a0a 2020 2d20 6772  ).  tags:.  - gr
│ │ │ +000ec540: 7562 325f 656e 6162 6c65 5f69 6f6d 6d75  ub2_enable_iommu
│ │ │ +000ec550: 5f66 6f72 6365 0a20 202d 206c 6f77 5f64  _force.  - low_d
│ │ │ +000ec560: 6973 7275 7074 696f 6e0a 2020 2d20 6d65  isruption.  - me
│ │ │ +000ec570: 6469 756d 5f63 6f6d 706c 6578 6974 790a  dium_complexity.
│ │ │ +000ec580: 2020 2d20 7265 626f 6f74 5f72 6571 7569    - reboot_requi
│ │ │ +000ec590: 7265 640a 2020 2d20 7265 7374 7269 6374  red.  - restrict
│ │ │ +000ec5a0: 5f73 7472 6174 6567 790a 2020 2d20 756e  _strategy.  - un
│ │ │ +000ec5b0: 6b6e 6f77 6e5f 7365 7665 7269 7479 0a0a  known_severity..
│ │ │ +000ec5c0: 2d20 6e61 6d65 3a20 5570 6461 7465 2067  - name: Update g
│ │ │ +000ec5d0: 7275 6220 6465 6661 756c 7473 2061 6e64  rub defaults and
│ │ │ +000ec5e0: 2074 6865 2062 6f6f 746c 6f61 6465 7220   the bootloader 
│ │ │ +000ec5f0: 6d65 6e75 0a20 2061 6e73 6962 6c65 2e62  menu.  ansible.b
│ │ │ +000ec600: 7569 6c74 696e 2e63 6f6d 6d61 6e64 3a20  uiltin.command: 
│ │ │ +000ec610: 2f73 6269 6e2f 6772 7562 6279 202d 2d75  /sbin/grubby --u
│ │ │ +000ec620: 7064 6174 652d 6b65 726e 656c 3d41 4c4c  pdate-kernel=ALL
│ │ │ +000ec630: 202d 2d61 7267 733d 2269 6f6d 6d75 3d66   --args="iommu=f
│ │ │ +000ec640: 6f72 6365 220a 2020 7768 656e 3a0a 2020  orce".  when:.  
│ │ │ +000ec650: 2d20 2820 2267 7275 6232 2d63 6f6d 6d6f  - ( "grub2-commo
│ │ │ +000ec660: 6e22 2069 6e20 616e 7369 626c 655f 6661  n" in ansible_fa
│ │ │ +000ec670: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ +000ec680: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ +000ec690: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +000ec6a0: 6765 730a 2020 2020 290a 2020 2d20 2867  ges.    ).  - (g
│ │ │ +000ec6b0: 7275 6262 795f 696e 666f 2e73 7464 6f75  rubby_info.stdou
│ │ │ +000ec6c0: 7420 6973 206e 6f74 2073 6561 7263 6828  t is not search(
│ │ │ +000ec6d0: 2769 6f6d 6d75 3d66 6f72 6365 2729 2920  'iommu=force')) 
│ │ │ +000ec6e0: 6f72 2028 2865 7463 5f64 6566 6175 6c74  or ((etc_default
│ │ │ +000ec6f0: 5f67 7275 625b 2763 6f6e 7465 6e74 275d  _grub['content']
│ │ │ +000ec700: 0a20 2020 207c 2062 3634 6465 636f 6465  .    | b64decode
│ │ │ +000ec710: 2920 6973 206e 6f74 2073 6561 7263 6828  ) is not search(
│ │ │ +000ec720: 2769 6f6d 6d75 3d66 6f72 6365 2729 290a  'iommu=force')).
│ │ │ +000ec730: 2020 7461 6773 3a0a 2020 2d20 6772 7562    tags:.  - grub
│ │ │ +000ec740: 325f 656e 6162 6c65 5f69 6f6d 6d75 5f66  2_enable_iommu_f
│ │ │ +000ec750: 6f72 6365 0a20 202d 206c 6f77 5f64 6973  orce.  - low_dis
│ │ │ +000ec760: 7275 7074 696f 6e0a 2020 2d20 6d65 6469  ruption.  - medi
│ │ │ +000ec770: 756d 5f63 6f6d 706c 6578 6974 790a 2020  um_complexity.  
│ │ │ +000ec780: 2d20 7265 626f 6f74 5f72 6571 7569 7265  - reboot_require
│ │ │ +000ec790: 640a 2020 2d20 7265 7374 7269 6374 5f73  d.  - restrict_s
│ │ │ +000ec7a0: 7472 6174 6567 790a 2020 2d20 756e 6b6e  trategy.  - unkn
│ │ │ +000ec7b0: 6f77 6e5f 7365 7665 7269 7479 0a3c 2f63  own_severity.
│ │ │ +000ec7d0: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ +000ec870: 6564 6961 7469 6f6e 204f 5342 7569 6c64 ediation OSBuild │ │ │ +000ec880: 2042 6c75 6570 7269 6e74 2073 6e69 7070 Blueprint snipp │ │ │ +000ec890: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...

[custom │ │ │ +000ec8e0: 697a 6174 696f 6e73 2e6b 6572 6e65 6c5d izations.kernel] │ │ │ +000ec8f0: 0a61 7070 656e 6420 3d20 2269 6f6d 6d75 .append = "iommu │ │ │ +000ec900: 3d66 6f72 6365 220a 3c2f 636f 6465 3e3c =force".< │ │ │ 000ec910: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c /pre>

Remediation │ │ │ -000ed9b0: 4f53 4275 696c 6420 426c 7565 7072 696e OSBuild Blueprin │ │ │ -000ed9c0: 7420 736e 6970 7065 7420 e287 b23c 2f61 t snippet ...

│ │ │ -000eda10: 5b63 7573 746f 6d69 7a61 7469 6f6e 732e  [customizations.
│ │ │ -000eda20: 6b65 726e 656c 5d0a 6170 7065 6e64 203d  kernel].append =
│ │ │ -000eda30: 2022 6c31 7466 3d3c 6162 6272 2074 6974   "l1tf=full,force".
Remediati │ │ │ -000edb60: 6f6e 2041 6e73 6962 6c65 2073 6e69 7070 on Ansible snipp │ │ │ -000edb70: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ -000edbf0: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ -000edc00: 7479 3a3c 2f74 683e 3c74 643e 6d65 6469 ty:medi │ │ │ -000edc10: 756d 3c2f 7464 3e3c 2f74 723e 3c74 723e um │ │ │ -000edc20: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c Disruption:< │ │ │ -000edc30: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low │ │ │ -000edc40: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 Reb │ │ │ -000edc50: 6f6f 743a 3c2f 7468 3e3c 7464 3e74 7275 oot:tru │ │ │ -000edc60: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e< │ │ │ -000edc70: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:restrict< │ │ │ -000edca0: 7072 653e 3c63 6f64 653e 2d20 6e61 6d65 pre>- name │ │ │ -000edcb0: 3a20 4761 7468 6572 2074 6865 2070 6163 : Gather the pac │ │ │ -000edcc0: 6b61 6765 2066 6163 7473 0a20 2070 6163 kage facts. pac │ │ │ -000edcd0: 6b61 6765 5f66 6163 7473 3a0a 2020 2020 kage_facts:. │ │ │ -000edce0: 6d61 6e61 6765 723a 2061 7574 6f0a 2020 manager: auto. │ │ │ -000edcf0: 7461 6773 3a0a 2020 2d20 6772 7562 325f tags:. - grub2_ │ │ │ -000edd00: 6c31 7466 5f61 7267 756d 656e 740a 2020 l1tf_argument. │ │ │ -000edd10: 2d20 6869 6768 5f73 6576 6572 6974 790a - high_severity. │ │ │ -000edd20: 2020 2d20 6c6f 775f 6469 7372 7570 7469 - low_disrupti │ │ │ -000edd30: 6f6e 0a20 202d 206d 6564 6975 6d5f 636f on. - medium_co │ │ │ -000edd40: 6d70 6c65 7869 7479 0a20 202d 2072 6562 mplexity. - reb │ │ │ -000edd50: 6f6f 745f 7265 7175 6972 6564 0a20 202d oot_required. - │ │ │ -000edd60: 2072 6573 7472 6963 745f 7374 7261 7465 restrict_strate │ │ │ -000edd70: 6779 0a2d 206e 616d 653a 2058 4343 4446 gy.- name: XCCDF │ │ │ -000edd80: 2056 616c 7565 2076 6172 5f6c 3174 665f Value var_l1tf_ │ │ │ -000edd90: 6f70 7469 6f6e 7320 2320 7072 6f6d 6f74 options # promot │ │ │ -000edda0: 6520 746f 2076 6172 6961 626c 650a 2020 e to variable. │ │ │ -000eddb0: 7365 745f 6661 6374 3a0a 2020 2020 7661 set_fact:. va │ │ │ -000eddc0: 725f 6c31 7466 5f6f 7074 696f 6e73 3a20 r_l1tf_options: │ │ │ -000eddd0: 2121 7374 7220 3c61 6262 7220 7469 746c !!str full,force. tags:. │ │ │ -000ede50: 202d 2061 6c77 6179 730a 0a2d 206e 616d - always..- nam │ │ │ -000ede60: 653a 2043 6865 636b 2069 6620 6c31 7466 e: Check if l1tf │ │ │ -000ede70: 2061 7267 756d 656e 7420 6973 2061 6c72 argument is alr │ │ │ -000ede80: 6561 6479 2070 7265 7365 6e74 2069 6e20 eady present in │ │ │ -000ede90: 2f65 7463 2f64 6566 6175 6c74 2f67 7275 /etc/default/gru │ │ │ -000edea0: 620a 2020 616e 7369 626c 652e 6275 696c b. ansible.buil │ │ │ -000edeb0: 7469 6e2e 736c 7572 703a 0a20 2020 2073 tin.slurp:. s │ │ │ -000edec0: 7263 3a20 2f65 7463 2f64 6566 6175 6c74 rc: /etc/default │ │ │ -000eded0: 2f67 7275 620a 2020 7265 6769 7374 6572 /grub. register │ │ │ -000edee0: 3a20 6574 635f 6465 6661 756c 745f 6772 : etc_default_gr │ │ │ -000edef0: 7562 0a20 2077 6865 6e3a 2028 2022 6772 ub. when: ( "gr │ │ │ -000edf00: 7562 322d 636f 6d6d 6f6e 2220 696e 2061 ub2-common" in a │ │ │ -000edf10: 6e73 6962 6c65 5f66 6163 7473 2e70 6163 nsible_facts.pac │ │ │ -000edf20: 6b61 6765 7320 616e 6420 226b 6572 6e65 kages and "kerne │ │ │ -000edf30: 6c22 2069 6e20 616e 7369 626c 655f 6661 l" in ansible_fa │ │ │ -000edf40: 6374 732e 7061 636b 6167 6573 0a20 2020 cts.packages. │ │ │ -000edf50: 2029 0a20 2074 6167 733a 0a20 202d 2067 ). tags:. - g │ │ │ -000edf60: 7275 6232 5f6c 3174 665f 6172 6775 6d65 rub2_l1tf_argume │ │ │ -000edf70: 6e74 0a20 202d 2068 6967 685f 7365 7665 nt. - high_seve │ │ │ -000edf80: 7269 7479 0a20 202d 206c 6f77 5f64 6973 rity. - low_dis │ │ │ -000edf90: 7275 7074 696f 6e0a 2020 2d20 6d65 6469 ruption. - medi │ │ │ -000edfa0: 756d 5f63 6f6d 706c 6578 6974 790a 2020 um_complexity. │ │ │ -000edfb0: 2d20 7265 626f 6f74 5f72 6571 7569 7265 - reboot_require │ │ │ -000edfc0: 640a 2020 2d20 7265 7374 7269 6374 5f73 d. - restrict_s │ │ │ -000edfd0: 7472 6174 6567 790a 0a2d 206e 616d 653a trategy..- name: │ │ │ -000edfe0: 2043 6865 636b 2069 6620 6c31 7466 2061 Check if l1tf a │ │ │ -000edff0: 7267 756d 656e 7420 6973 2061 6c72 6561 rgument is alrea │ │ │ -000ee000: 6479 2070 7265 7365 6e74 0a20 2061 6e73 dy present. ans │ │ │ -000ee010: 6962 6c65 2e62 7569 6c74 696e 2e63 6f6d ible.builtin.com │ │ │ -000ee020: 6d61 6e64 3a20 2f73 6269 6e2f 6772 7562 mand: /sbin/grub │ │ │ -000ee030: 6279 202d 2d69 6e66 6f3d 414c 4c0a 2020 by --info=ALL. │ │ │ -000ee040: 7265 6769 7374 6572 3a20 6772 7562 6279 register: grubby │ │ │ -000ee050: 5f69 6e66 6f0a 2020 6368 6563 6b5f 6d6f _info. check_mo │ │ │ -000ee060: 6465 3a20 6661 6c73 650a 2020 6368 616e de: false. chan │ │ │ -000ee070: 6765 645f 7768 656e 3a20 6661 6c73 650a ged_when: false. │ │ │ -000ee080: 2020 6661 696c 6564 5f77 6865 6e3a 2066 failed_when: f │ │ │ -000ee090: 616c 7365 0a20 2077 6865 6e3a 2028 2022 alse. when: ( " │ │ │ -000ee0a0: 6772 7562 322d 636f 6d6d 6f6e 2220 696e grub2-common" in │ │ │ -000ee0b0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70 ansible_facts.p │ │ │ -000ee0c0: 6163 6b61 6765 7320 616e 6420 226b 6572 ackages and "ker │ │ │ -000ee0d0: 6e65 6c22 2069 6e20 616e 7369 626c 655f nel" in ansible_ │ │ │ -000ee0e0: 6661 6374 732e 7061 636b 6167 6573 0a20 facts.packages. │ │ │ -000ee0f0: 2020 2029 0a20 2074 6167 733a 0a20 202d ). tags:. - │ │ │ -000ee100: 2067 7275 6232 5f6c 3174 665f 6172 6775 grub2_l1tf_argu │ │ │ -000ee110: 6d65 6e74 0a20 202d 2068 6967 685f 7365 ment. - high_se │ │ │ -000ee120: 7665 7269 7479 0a20 202d 206c 6f77 5f64 verity. - low_d │ │ │ -000ee130: 6973 7275 7074 696f 6e0a 2020 2d20 6d65 isruption. - me │ │ │ -000ee140: 6469 756d 5f63 6f6d 706c 6578 6974 790a dium_complexity. │ │ │ -000ee150: 2020 2d20 7265 626f 6f74 5f72 6571 7569 - reboot_requi │ │ │ -000ee160: 7265 640a 2020 2d20 7265 7374 7269 6374 red. - restrict │ │ │ -000ee170: 5f73 7472 6174 6567 790a 0a2d 206e 616d _strategy..- nam │ │ │ -000ee180: 653a 2055 7064 6174 6520 6772 7562 2064 e: Update grub d │ │ │ -000ee190: 6566 6175 6c74 7320 616e 6420 7468 6520 efaults and the │ │ │ -000ee1a0: 626f 6f74 6c6f 6164 6572 206d 656e 750a bootloader menu. │ │ │ -000ee1b0: 2020 616e 7369 626c 652e 6275 696c 7469 ansible.builti │ │ │ -000ee1c0: 6e2e 636f 6d6d 616e 643a 202f 7362 696e n.command: /sbin │ │ │ -000ee1d0: 2f67 7275 6262 7920 2d2d 7570 6461 7465 /grubby --update │ │ │ -000ee1e0: 2d6b 6572 6e65 6c3d 414c 4c20 2d2d 6172 -kernel=ALL --ar │ │ │ -000ee1f0: 6773 3d22 6c31 7466 3d7b 7b20 7661 725f gs="l1tf={{ var_ │ │ │ -000ee200: 6c31 7466 5f6f 7074 696f 6e73 0a20 2020 l1tf_options. │ │ │ -000ee210: 207d 7d22 0a20 2077 6865 6e3a 0a20 202d }}". when:. - │ │ │ -000ee220: 2028 2022 6772 7562 322d 636f 6d6d 6f6e ( "grub2-common │ │ │ -000ee230: 2220 696e 2061 6e73 6962 6c65 5f66 6163 " in ansible_fac │ │ │ -000ee240: 7473 2e70 6163 6b61 6765 7320 616e 6420 ts.packages and │ │ │ -000ee250: 226b 6572 6e65 6c22 2069 6e20 616e 7369 "kernel" in ansi │ │ │ -000ee260: 626c 655f 6661 6374 732e 7061 636b 6167 ble_facts.packag │ │ │ -000ee270: 6573 0a20 2020 2029 0a20 202d 2028 6772 es. ). - (gr │ │ │ -000ee280: 7562 6279 5f69 6e66 6f2e 7374 646f 7574 ubby_info.stdout │ │ │ -000ee290: 2069 7320 6e6f 7420 7365 6172 6368 2827 is not search(' │ │ │ -000ee2a0: 6c31 7466 3d27 207e 2076 6172 5f6c 3174 l1tf=' ~ var_l1t │ │ │ -000ee2b0: 665f 6f70 7469 6f6e 7329 2920 6f72 2028 f_options)) or ( │ │ │ -000ee2c0: 2865 7463 5f64 6566 6175 6c74 5f67 7275 (etc_default_gru │ │ │ -000ee2d0: 625b 2763 6f6e 7465 6e74 275d 0a20 2020 b['content']. │ │ │ -000ee2e0: 207c 2062 3634 6465 636f 6465 2920 6973 | b64decode) is │ │ │ -000ee2f0: 206e 6f74 2073 6561 7263 6828 276c 3174 not search('l1t │ │ │ -000ee300: 663d 2720 7e20 7661 725f 6c31 7466 5f6f f=' ~ var_l1tf_o │ │ │ -000ee310: 7074 696f 6e73 2929 0a20 2074 6167 733a ptions)). tags: │ │ │ -000ee320: 0a20 202d 2067 7275 6232 5f6c 3174 665f . - grub2_l1tf_ │ │ │ -000ee330: 6172 6775 6d65 6e74 0a20 202d 2068 6967 argument. - hig │ │ │ -000ee340: 685f 7365 7665 7269 7479 0a20 202d 206c h_severity. - l │ │ │ -000ee350: 6f77 5f64 6973 7275 7074 696f 6e0a 2020 ow_disruption. │ │ │ -000ee360: 2d20 6d65 6469 756d 5f63 6f6d 706c 6578 - medium_complex │ │ │ -000ee370: 6974 790a 2020 2d20 7265 626f 6f74 5f72 ity. - reboot_r │ │ │ -000ee380: 6571 7569 7265 640a 2020 2d20 7265 7374 equired. - rest │ │ │ -000ee390: 7269 6374 5f73 7472 6174 6567 790a 3c2f rict_strategy.
Complexity: │ │ │ +000eda50: 3c2f 7468 3e3c 7464 3e6d 6564 6975 6d3c medium< │ │ │ +000eda60: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ +000edaa0: 3a3c 2f74 683e 3c74 643e 7472 7565 3c2f :true │ │ │ +000edac0: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:restrict< │ │ │ +000edae0: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
- name: G
│ │ │ +000edb00: 6174 6865 7220 7468 6520 7061 636b 6167  ather the packag
│ │ │ +000edb10: 6520 6661 6374 730a 2020 7061 636b 6167  e facts.  packag
│ │ │ +000edb20: 655f 6661 6374 733a 0a20 2020 206d 616e  e_facts:.    man
│ │ │ +000edb30: 6167 6572 3a20 6175 746f 0a20 2074 6167  ager: auto.  tag
│ │ │ +000edb40: 733a 0a20 202d 2067 7275 6232 5f6c 3174  s:.  - grub2_l1t
│ │ │ +000edb50: 665f 6172 6775 6d65 6e74 0a20 202d 2068  f_argument.  - h
│ │ │ +000edb60: 6967 685f 7365 7665 7269 7479 0a20 202d  igh_severity.  -
│ │ │ +000edb70: 206c 6f77 5f64 6973 7275 7074 696f 6e0a   low_disruption.
│ │ │ +000edb80: 2020 2d20 6d65 6469 756d 5f63 6f6d 706c    - medium_compl
│ │ │ +000edb90: 6578 6974 790a 2020 2d20 7265 626f 6f74  exity.  - reboot
│ │ │ +000edba0: 5f72 6571 7569 7265 640a 2020 2d20 7265  _required.  - re
│ │ │ +000edbb0: 7374 7269 6374 5f73 7472 6174 6567 790a  strict_strategy.
│ │ │ +000edbc0: 2d20 6e61 6d65 3a20 5843 4344 4620 5661  - name: XCCDF Va
│ │ │ +000edbd0: 6c75 6520 7661 725f 6c31 7466 5f6f 7074  lue var_l1tf_opt
│ │ │ +000edbe0: 696f 6e73 2023 2070 726f 6d6f 7465 2074  ions # promote t
│ │ │ +000edbf0: 6f20 7661 7269 6162 6c65 0a20 2073 6574  o variable.  set
│ │ │ +000edc00: 5f66 6163 743a 0a20 2020 2076 6172 5f6c  _fact:.    var_l
│ │ │ +000edc10: 3174 665f 6f70 7469 6f6e 733a 2021 2173  1tf_options: !!s
│ │ │ +000edc20: 7472 203c 6162 6272 2074 6974 6c65 3d22  tr 
│ │ │ +000edc80: 6675 6c6c 2c66 6f72 6365 3c2f 6162 6272  full,force.  tags:.    - 
│ │ │ +000edca0: 616c 7761 7973 0a0a 2d20 6e61 6d65 3a20  always..- name: 
│ │ │ +000edcb0: 4368 6563 6b20 6966 206c 3174 6620 6172  Check if l1tf ar
│ │ │ +000edcc0: 6775 6d65 6e74 2069 7320 616c 7265 6164  gument is alread
│ │ │ +000edcd0: 7920 7072 6573 656e 7420 696e 202f 6574  y present in /et
│ │ │ +000edce0: 632f 6465 6661 756c 742f 6772 7562 0a20  c/default/grub. 
│ │ │ +000edcf0: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ +000edd00: 2e73 6c75 7270 3a0a 2020 2020 7372 633a  .slurp:.    src:
│ │ │ +000edd10: 202f 6574 632f 6465 6661 756c 742f 6772   /etc/default/gr
│ │ │ +000edd20: 7562 0a20 2072 6567 6973 7465 723a 2065  ub.  register: e
│ │ │ +000edd30: 7463 5f64 6566 6175 6c74 5f67 7275 620a  tc_default_grub.
│ │ │ +000edd40: 2020 7768 656e 3a20 2820 2267 7275 6232    when: ( "grub2
│ │ │ +000edd50: 2d63 6f6d 6d6f 6e22 2069 6e20 616e 7369  -common" in ansi
│ │ │ +000edd60: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +000edd70: 6573 2061 6e64 2022 6b65 726e 656c 2220  es and "kernel" 
│ │ │ +000edd80: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +000edd90: 2e70 6163 6b61 6765 730a 2020 2020 290a  .packages.    ).
│ │ │ +000edda0: 2020 7461 6773 3a0a 2020 2d20 6772 7562    tags:.  - grub
│ │ │ +000eddb0: 325f 6c31 7466 5f61 7267 756d 656e 740a  2_l1tf_argument.
│ │ │ +000eddc0: 2020 2d20 6869 6768 5f73 6576 6572 6974    - high_severit
│ │ │ +000eddd0: 790a 2020 2d20 6c6f 775f 6469 7372 7570  y.  - low_disrup
│ │ │ +000edde0: 7469 6f6e 0a20 202d 206d 6564 6975 6d5f  tion.  - medium_
│ │ │ +000eddf0: 636f 6d70 6c65 7869 7479 0a20 202d 2072  complexity.  - r
│ │ │ +000ede00: 6562 6f6f 745f 7265 7175 6972 6564 0a20  eboot_required. 
│ │ │ +000ede10: 202d 2072 6573 7472 6963 745f 7374 7261   - restrict_stra
│ │ │ +000ede20: 7465 6779 0a0a 2d20 6e61 6d65 3a20 4368  tegy..- name: Ch
│ │ │ +000ede30: 6563 6b20 6966 206c 3174 6620 6172 6775  eck if l1tf argu
│ │ │ +000ede40: 6d65 6e74 2069 7320 616c 7265 6164 7920  ment is already 
│ │ │ +000ede50: 7072 6573 656e 740a 2020 616e 7369 626c  present.  ansibl
│ │ │ +000ede60: 652e 6275 696c 7469 6e2e 636f 6d6d 616e  e.builtin.comman
│ │ │ +000ede70: 643a 202f 7362 696e 2f67 7275 6262 7920  d: /sbin/grubby 
│ │ │ +000ede80: 2d2d 696e 666f 3d41 4c4c 0a20 2072 6567  --info=ALL.  reg
│ │ │ +000ede90: 6973 7465 723a 2067 7275 6262 795f 696e  ister: grubby_in
│ │ │ +000edea0: 666f 0a20 2063 6865 636b 5f6d 6f64 653a  fo.  check_mode:
│ │ │ +000edeb0: 2066 616c 7365 0a20 2063 6861 6e67 6564   false.  changed
│ │ │ +000edec0: 5f77 6865 6e3a 2066 616c 7365 0a20 2066  _when: false.  f
│ │ │ +000eded0: 6169 6c65 645f 7768 656e 3a20 6661 6c73  ailed_when: fals
│ │ │ +000edee0: 650a 2020 7768 656e 3a20 2820 2267 7275  e.  when: ( "gru
│ │ │ +000edef0: 6232 2d63 6f6d 6d6f 6e22 2069 6e20 616e  b2-common" in an
│ │ │ +000edf00: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +000edf10: 6167 6573 2061 6e64 2022 6b65 726e 656c  ages and "kernel
│ │ │ +000edf20: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +000edf30: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ +000edf40: 290a 2020 7461 6773 3a0a 2020 2d20 6772  ).  tags:.  - gr
│ │ │ +000edf50: 7562 325f 6c31 7466 5f61 7267 756d 656e  ub2_l1tf_argumen
│ │ │ +000edf60: 740a 2020 2d20 6869 6768 5f73 6576 6572  t.  - high_sever
│ │ │ +000edf70: 6974 790a 2020 2d20 6c6f 775f 6469 7372  ity.  - low_disr
│ │ │ +000edf80: 7570 7469 6f6e 0a20 202d 206d 6564 6975  uption.  - mediu
│ │ │ +000edf90: 6d5f 636f 6d70 6c65 7869 7479 0a20 202d  m_complexity.  -
│ │ │ +000edfa0: 2072 6562 6f6f 745f 7265 7175 6972 6564   reboot_required
│ │ │ +000edfb0: 0a20 202d 2072 6573 7472 6963 745f 7374  .  - restrict_st
│ │ │ +000edfc0: 7261 7465 6779 0a0a 2d20 6e61 6d65 3a20  rategy..- name: 
│ │ │ +000edfd0: 5570 6461 7465 2067 7275 6220 6465 6661  Update grub defa
│ │ │ +000edfe0: 756c 7473 2061 6e64 2074 6865 2062 6f6f  ults and the boo
│ │ │ +000edff0: 746c 6f61 6465 7220 6d65 6e75 0a20 2061  tloader menu.  a
│ │ │ +000ee000: 6e73 6962 6c65 2e62 7569 6c74 696e 2e63  nsible.builtin.c
│ │ │ +000ee010: 6f6d 6d61 6e64 3a20 2f73 6269 6e2f 6772  ommand: /sbin/gr
│ │ │ +000ee020: 7562 6279 202d 2d75 7064 6174 652d 6b65  ubby --update-ke
│ │ │ +000ee030: 726e 656c 3d41 4c4c 202d 2d61 7267 733d  rnel=ALL --args=
│ │ │ +000ee040: 226c 3174 663d 7b7b 2076 6172 5f6c 3174  "l1tf={{ var_l1t
│ │ │ +000ee050: 665f 6f70 7469 6f6e 730a 2020 2020 7d7d  f_options.    }}
│ │ │ +000ee060: 220a 2020 7768 656e 3a0a 2020 2d20 2820  ".  when:.  - ( 
│ │ │ +000ee070: 2267 7275 6232 2d63 6f6d 6d6f 6e22 2069  "grub2-common" i
│ │ │ +000ee080: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +000ee090: 7061 636b 6167 6573 2061 6e64 2022 6b65  packages and "ke
│ │ │ +000ee0a0: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ +000ee0b0: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ +000ee0c0: 2020 2020 290a 2020 2d20 2867 7275 6262      ).  - (grubb
│ │ │ +000ee0d0: 795f 696e 666f 2e73 7464 6f75 7420 6973  y_info.stdout is
│ │ │ +000ee0e0: 206e 6f74 2073 6561 7263 6828 276c 3174   not search('l1t
│ │ │ +000ee0f0: 663d 2720 7e20 7661 725f 6c31 7466 5f6f  f=' ~ var_l1tf_o
│ │ │ +000ee100: 7074 696f 6e73 2929 206f 7220 2828 6574  ptions)) or ((et
│ │ │ +000ee110: 635f 6465 6661 756c 745f 6772 7562 5b27  c_default_grub['
│ │ │ +000ee120: 636f 6e74 656e 7427 5d0a 2020 2020 7c20  content'].    | 
│ │ │ +000ee130: 6236 3464 6563 6f64 6529 2069 7320 6e6f  b64decode) is no
│ │ │ +000ee140: 7420 7365 6172 6368 2827 6c31 7466 3d27  t search('l1tf='
│ │ │ +000ee150: 207e 2076 6172 5f6c 3174 665f 6f70 7469   ~ var_l1tf_opti
│ │ │ +000ee160: 6f6e 7329 290a 2020 7461 6773 3a0a 2020  ons)).  tags:.  
│ │ │ +000ee170: 2d20 6772 7562 325f 6c31 7466 5f61 7267  - grub2_l1tf_arg
│ │ │ +000ee180: 756d 656e 740a 2020 2d20 6869 6768 5f73  ument.  - high_s
│ │ │ +000ee190: 6576 6572 6974 790a 2020 2d20 6c6f 775f  everity.  - low_
│ │ │ +000ee1a0: 6469 7372 7570 7469 6f6e 0a20 202d 206d  disruption.  - m
│ │ │ +000ee1b0: 6564 6975 6d5f 636f 6d70 6c65 7869 7479  edium_complexity
│ │ │ +000ee1c0: 0a20 202d 2072 6562 6f6f 745f 7265 7175  .  - reboot_requ
│ │ │ +000ee1d0: 6972 6564 0a20 202d 2072 6573 7472 6963  ired.  - restric
│ │ │ +000ee1e0: 745f 7374 7261 7465 6779 0a3c 2f63 6f64  t_strategy.
Remed │ │ │ +000ee2a0: 6961 7469 6f6e 204f 5342 7569 6c64 2042 iation OSBuild B │ │ │ +000ee2b0: 6c75 6570 7269 6e74 2073 6e69 7070 6574 lueprint snippet │ │ │ +000ee2c0: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
[customiz
│ │ │ +000ee310: 6174 696f 6e73 2e6b 6572 6e65 6c5d 0a61  ations.kernel].a
│ │ │ +000ee320: 7070 656e 6420 3d20 226c 3174 663d 3c61  ppend = "l1tf=full,
│ │ │ +000ee390: 666f 7263 653c 2f61 6262 723e 220a 3c2f  force".
Remediation │ │ │ -000ef220: 4f53 4275 696c 6420 426c 7565 7072 696e OSBuild Blueprin │ │ │ -000ef230: 7420 736e 6970 7065 7420 e287 b23c 2f61 t snippet ...

│ │ │ -000ef280: 5b63 7573 746f 6d69 7a61 7469 6f6e 732e  [customizations.
│ │ │ -000ef290: 6b65 726e 656c 5d0a 6170 7065 6e64 203d  kernel].append =
│ │ │ -000ef2a0: 2022 6d63 653d 3022 0a3c 2f63 6f64 653e   "mce=0".
│ │ │ -000ef2b0: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ -000ef360: 7469 6f6e 2041 6e73 6962 6c65 2073 6e69 tion Ansible sni │ │ │ -000ef370: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -000ef380: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -000ef3b0: 3c74 6162 6c65 2063 6c61 7373 3d22 7461
Comple │ │ │ -000ef400: 7869 7479 3a3c 2f74 683e 3c74 643e 6d65 xity:me │ │ │ -000ef410: 6469 756d 3c2f 7464 3e3c 2f74 723e 3c74 dium
Disruption │ │ │ -000ef430: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ -000ef450: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e74 eboot:t │ │ │ -000ef460: 7275 653c 2f74 643e 3c2f 7472 3e3c 7472 rue
Strategy:restrict< │ │ │ -000ef490: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
- na
│ │ │ -000ef4b0: 6d65 3a20 4761 7468 6572 2074 6865 2070  me: Gather the p
│ │ │ -000ef4c0: 6163 6b61 6765 2066 6163 7473 0a20 2070  ackage facts.  p
│ │ │ -000ef4d0: 6163 6b61 6765 5f66 6163 7473 3a0a 2020  ackage_facts:.  
│ │ │ -000ef4e0: 2020 6d61 6e61 6765 723a 2061 7574 6f0a    manager: auto.
│ │ │ -000ef4f0: 2020 7461 6773 3a0a 2020 2d20 6772 7562    tags:.  - grub
│ │ │ -000ef500: 325f 6d63 655f 6172 6775 6d65 6e74 0a20  2_mce_argument. 
│ │ │ -000ef510: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ -000ef520: 6e0a 2020 2d20 6d65 6469 756d 5f63 6f6d  n.  - medium_com
│ │ │ -000ef530: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ -000ef540: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ -000ef550: 7265 626f 6f74 5f72 6571 7569 7265 640a  reboot_required.
│ │ │ -000ef560: 2020 2d20 7265 7374 7269 6374 5f73 7472    - restrict_str
│ │ │ -000ef570: 6174 6567 790a 0a2d 206e 616d 653a 2043  ategy..- name: C
│ │ │ -000ef580: 6865 636b 2069 6620 6d63 6520 6172 6775  heck if mce argu
│ │ │ -000ef590: 6d65 6e74 2069 7320 616c 7265 6164 7920  ment is already 
│ │ │ -000ef5a0: 7072 6573 656e 7420 696e 202f 6574 632f  present in /etc/
│ │ │ -000ef5b0: 6465 6661 756c 742f 6772 7562 0a20 2061  default/grub.  a
│ │ │ -000ef5c0: 6e73 6962 6c65 2e62 7569 6c74 696e 2e73  nsible.builtin.s
│ │ │ -000ef5d0: 6c75 7270 3a0a 2020 2020 7372 633a 202f  lurp:.    src: /
│ │ │ -000ef5e0: 6574 632f 6465 6661 756c 742f 6772 7562  etc/default/grub
│ │ │ -000ef5f0: 0a20 2072 6567 6973 7465 723a 2065 7463  .  register: etc
│ │ │ -000ef600: 5f64 6566 6175 6c74 5f67 7275 620a 2020  _default_grub.  
│ │ │ -000ef610: 7768 656e 3a20 2820 2267 7275 6232 2d63  when: ( "grub2-c
│ │ │ -000ef620: 6f6d 6d6f 6e22 2069 6e20 616e 7369 626c  ommon" in ansibl
│ │ │ -000ef630: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -000ef640: 2061 6e64 2022 6b65 726e 656c 2220 696e   and "kernel" in
│ │ │ -000ef650: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -000ef660: 6163 6b61 6765 730a 2020 2020 290a 2020  ackages.    ).  
│ │ │ -000ef670: 7461 6773 3a0a 2020 2d20 6772 7562 325f  tags:.  - grub2_
│ │ │ -000ef680: 6d63 655f 6172 6775 6d65 6e74 0a20 202d  mce_argument.  -
│ │ │ -000ef690: 206c 6f77 5f64 6973 7275 7074 696f 6e0a   low_disruption.
│ │ │ -000ef6a0: 2020 2d20 6d65 6469 756d 5f63 6f6d 706c    - medium_compl
│ │ │ -000ef6b0: 6578 6974 790a 2020 2d20 6d65 6469 756d  exity.  - medium
│ │ │ -000ef6c0: 5f73 6576 6572 6974 790a 2020 2d20 7265  _severity.  - re
│ │ │ -000ef6d0: 626f 6f74 5f72 6571 7569 7265 640a 2020  boot_required.  
│ │ │ -000ef6e0: 2d20 7265 7374 7269 6374 5f73 7472 6174  - restrict_strat
│ │ │ -000ef6f0: 6567 790a 0a2d 206e 616d 653a 2043 6865  egy..- name: Che
│ │ │ -000ef700: 636b 2069 6620 6d63 6520 6172 6775 6d65  ck if mce argume
│ │ │ -000ef710: 6e74 2069 7320 616c 7265 6164 7920 7072  nt is already pr
│ │ │ -000ef720: 6573 656e 740a 2020 616e 7369 626c 652e  esent.  ansible.
│ │ │ -000ef730: 6275 696c 7469 6e2e 636f 6d6d 616e 643a  builtin.command:
│ │ │ -000ef740: 202f 7362 696e 2f67 7275 6262 7920 2d2d   /sbin/grubby --
│ │ │ -000ef750: 696e 666f 3d41 4c4c 0a20 2072 6567 6973  info=ALL.  regis
│ │ │ -000ef760: 7465 723a 2067 7275 6262 795f 696e 666f  ter: grubby_info
│ │ │ -000ef770: 0a20 2063 6865 636b 5f6d 6f64 653a 2066  .  check_mode: f
│ │ │ -000ef780: 616c 7365 0a20 2063 6861 6e67 6564 5f77  alse.  changed_w
│ │ │ -000ef790: 6865 6e3a 2066 616c 7365 0a20 2066 6169  hen: false.  fai
│ │ │ -000ef7a0: 6c65 645f 7768 656e 3a20 6661 6c73 650a  led_when: false.
│ │ │ -000ef7b0: 2020 7768 656e 3a20 2820 2267 7275 6232    when: ( "grub2
│ │ │ -000ef7c0: 2d63 6f6d 6d6f 6e22 2069 6e20 616e 7369  -common" in ansi
│ │ │ -000ef7d0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -000ef7e0: 6573 2061 6e64 2022 6b65 726e 656c 2220  es and "kernel" 
│ │ │ -000ef7f0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -000ef800: 2e70 6163 6b61 6765 730a 2020 2020 290a  .packages.    ).
│ │ │ -000ef810: 2020 7461 6773 3a0a 2020 2d20 6772 7562    tags:.  - grub
│ │ │ -000ef820: 325f 6d63 655f 6172 6775 6d65 6e74 0a20  2_mce_argument. 
│ │ │ -000ef830: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ -000ef840: 6e0a 2020 2d20 6d65 6469 756d 5f63 6f6d  n.  - medium_com
│ │ │ -000ef850: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ -000ef860: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ -000ef870: 7265 626f 6f74 5f72 6571 7569 7265 640a  reboot_required.
│ │ │ -000ef880: 2020 2d20 7265 7374 7269 6374 5f73 7472    - restrict_str
│ │ │ -000ef890: 6174 6567 790a 0a2d 206e 616d 653a 2055  ategy..- name: U
│ │ │ -000ef8a0: 7064 6174 6520 6772 7562 2064 6566 6175  pdate grub defau
│ │ │ -000ef8b0: 6c74 7320 616e 6420 7468 6520 626f 6f74  lts and the boot
│ │ │ -000ef8c0: 6c6f 6164 6572 206d 656e 750a 2020 616e  loader menu.  an
│ │ │ -000ef8d0: 7369 626c 652e 6275 696c 7469 6e2e 636f  sible.builtin.co
│ │ │ -000ef8e0: 6d6d 616e 643a 202f 7362 696e 2f67 7275  mmand: /sbin/gru
│ │ │ -000ef8f0: 6262 7920 2d2d 7570 6461 7465 2d6b 6572  bby --update-ker
│ │ │ -000ef900: 6e65 6c3d 414c 4c20 2d2d 6172 6773 3d22  nel=ALL --args="
│ │ │ -000ef910: 6d63 653d 3022 0a20 2077 6865 6e3a 0a20  mce=0".  when:. 
│ │ │ -000ef920: 202d 2028 2022 6772 7562 322d 636f 6d6d   - ( "grub2-comm
│ │ │ -000ef930: 6f6e 2220 696e 2061 6e73 6962 6c65 5f66  on" in ansible_f
│ │ │ -000ef940: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ -000ef950: 6420 226b 6572 6e65 6c22 2069 6e20 616e  d "kernel" in an
│ │ │ -000ef960: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -000ef970: 6167 6573 0a20 2020 2029 0a20 202d 2028  ages.    ).  - (
│ │ │ -000ef980: 6772 7562 6279 5f69 6e66 6f2e 7374 646f  grubby_info.stdo
│ │ │ -000ef990: 7574 2069 7320 6e6f 7420 7365 6172 6368  ut is not search
│ │ │ -000ef9a0: 2827 6d63 653d 3027 2929 206f 7220 2828  ('mce=0')) or ((
│ │ │ -000ef9b0: 6574 635f 6465 6661 756c 745f 6772 7562  etc_default_grub
│ │ │ -000ef9c0: 5b27 636f 6e74 656e 7427 5d20 7c0a 2020  ['content'] |.  
│ │ │ -000ef9d0: 2020 6236 3464 6563 6f64 6529 2069 7320    b64decode) is 
│ │ │ -000ef9e0: 6e6f 7420 7365 6172 6368 2827 6d63 653d  not search('mce=
│ │ │ -000ef9f0: 3027 2929 0a20 2074 6167 733a 0a20 202d  0')).  tags:.  -
│ │ │ -000efa00: 2067 7275 6232 5f6d 6365 5f61 7267 756d   grub2_mce_argum
│ │ │ -000efa10: 656e 740a 2020 2d20 6c6f 775f 6469 7372  ent.  - low_disr
│ │ │ -000efa20: 7570 7469 6f6e 0a20 202d 206d 6564 6975  uption.  - mediu
│ │ │ -000efa30: 6d5f 636f 6d70 6c65 7869 7479 0a20 202d  m_complexity.  -
│ │ │ -000efa40: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ -000efa50: 0a20 202d 2072 6562 6f6f 745f 7265 7175  .  - reboot_requ
│ │ │ -000efa60: 6972 6564 0a20 202d 2072 6573 7472 6963  ired.  - restric
│ │ │ -000efa70: 745f 7374 7261 7465 6779 0a3c 2f63 6f64  t_strategy.
Complexity: │ │ │ +000ef2c0: 3c2f 7468 3e3c 7464 3e6d 6564 6975 6d3c medium< │ │ │ +000ef2d0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ +000ef310: 3a3c 2f74 683e 3c74 643e 7472 7565 3c2f :true │ │ │ +000ef330: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:restrict< │ │ │ +000ef350: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
- name: G
│ │ │ +000ef370: 6174 6865 7220 7468 6520 7061 636b 6167  ather the packag
│ │ │ +000ef380: 6520 6661 6374 730a 2020 7061 636b 6167  e facts.  packag
│ │ │ +000ef390: 655f 6661 6374 733a 0a20 2020 206d 616e  e_facts:.    man
│ │ │ +000ef3a0: 6167 6572 3a20 6175 746f 0a20 2074 6167  ager: auto.  tag
│ │ │ +000ef3b0: 733a 0a20 202d 2067 7275 6232 5f6d 6365  s:.  - grub2_mce
│ │ │ +000ef3c0: 5f61 7267 756d 656e 740a 2020 2d20 6c6f  _argument.  - lo
│ │ │ +000ef3d0: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ +000ef3e0: 206d 6564 6975 6d5f 636f 6d70 6c65 7869   medium_complexi
│ │ │ +000ef3f0: 7479 0a20 202d 206d 6564 6975 6d5f 7365  ty.  - medium_se
│ │ │ +000ef400: 7665 7269 7479 0a20 202d 2072 6562 6f6f  verity.  - reboo
│ │ │ +000ef410: 745f 7265 7175 6972 6564 0a20 202d 2072  t_required.  - r
│ │ │ +000ef420: 6573 7472 6963 745f 7374 7261 7465 6779  estrict_strategy
│ │ │ +000ef430: 0a0a 2d20 6e61 6d65 3a20 4368 6563 6b20  ..- name: Check 
│ │ │ +000ef440: 6966 206d 6365 2061 7267 756d 656e 7420  if mce argument 
│ │ │ +000ef450: 6973 2061 6c72 6561 6479 2070 7265 7365  is already prese
│ │ │ +000ef460: 6e74 2069 6e20 2f65 7463 2f64 6566 6175  nt in /etc/defau
│ │ │ +000ef470: 6c74 2f67 7275 620a 2020 616e 7369 626c  lt/grub.  ansibl
│ │ │ +000ef480: 652e 6275 696c 7469 6e2e 736c 7572 703a  e.builtin.slurp:
│ │ │ +000ef490: 0a20 2020 2073 7263 3a20 2f65 7463 2f64  .    src: /etc/d
│ │ │ +000ef4a0: 6566 6175 6c74 2f67 7275 620a 2020 7265  efault/grub.  re
│ │ │ +000ef4b0: 6769 7374 6572 3a20 6574 635f 6465 6661  gister: etc_defa
│ │ │ +000ef4c0: 756c 745f 6772 7562 0a20 2077 6865 6e3a  ult_grub.  when:
│ │ │ +000ef4d0: 2028 2022 6772 7562 322d 636f 6d6d 6f6e   ( "grub2-common
│ │ │ +000ef4e0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +000ef4f0: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ +000ef500: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ +000ef510: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +000ef520: 6573 0a20 2020 2029 0a20 2074 6167 733a  es.    ).  tags:
│ │ │ +000ef530: 0a20 202d 2067 7275 6232 5f6d 6365 5f61  .  - grub2_mce_a
│ │ │ +000ef540: 7267 756d 656e 740a 2020 2d20 6c6f 775f  rgument.  - low_
│ │ │ +000ef550: 6469 7372 7570 7469 6f6e 0a20 202d 206d  disruption.  - m
│ │ │ +000ef560: 6564 6975 6d5f 636f 6d70 6c65 7869 7479  edium_complexity
│ │ │ +000ef570: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ +000ef580: 7269 7479 0a20 202d 2072 6562 6f6f 745f  rity.  - reboot_
│ │ │ +000ef590: 7265 7175 6972 6564 0a20 202d 2072 6573  required.  - res
│ │ │ +000ef5a0: 7472 6963 745f 7374 7261 7465 6779 0a0a  trict_strategy..
│ │ │ +000ef5b0: 2d20 6e61 6d65 3a20 4368 6563 6b20 6966  - name: Check if
│ │ │ +000ef5c0: 206d 6365 2061 7267 756d 656e 7420 6973   mce argument is
│ │ │ +000ef5d0: 2061 6c72 6561 6479 2070 7265 7365 6e74   already present
│ │ │ +000ef5e0: 0a20 2061 6e73 6962 6c65 2e62 7569 6c74  .  ansible.built
│ │ │ +000ef5f0: 696e 2e63 6f6d 6d61 6e64 3a20 2f73 6269  in.command: /sbi
│ │ │ +000ef600: 6e2f 6772 7562 6279 202d 2d69 6e66 6f3d  n/grubby --info=
│ │ │ +000ef610: 414c 4c0a 2020 7265 6769 7374 6572 3a20  ALL.  register: 
│ │ │ +000ef620: 6772 7562 6279 5f69 6e66 6f0a 2020 6368  grubby_info.  ch
│ │ │ +000ef630: 6563 6b5f 6d6f 6465 3a20 6661 6c73 650a  eck_mode: false.
│ │ │ +000ef640: 2020 6368 616e 6765 645f 7768 656e 3a20    changed_when: 
│ │ │ +000ef650: 6661 6c73 650a 2020 6661 696c 6564 5f77  false.  failed_w
│ │ │ +000ef660: 6865 6e3a 2066 616c 7365 0a20 2077 6865  hen: false.  whe
│ │ │ +000ef670: 6e3a 2028 2022 6772 7562 322d 636f 6d6d  n: ( "grub2-comm
│ │ │ +000ef680: 6f6e 2220 696e 2061 6e73 6962 6c65 5f66  on" in ansible_f
│ │ │ +000ef690: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +000ef6a0: 6420 226b 6572 6e65 6c22 2069 6e20 616e  d "kernel" in an
│ │ │ +000ef6b0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +000ef6c0: 6167 6573 0a20 2020 2029 0a20 2074 6167  ages.    ).  tag
│ │ │ +000ef6d0: 733a 0a20 202d 2067 7275 6232 5f6d 6365  s:.  - grub2_mce
│ │ │ +000ef6e0: 5f61 7267 756d 656e 740a 2020 2d20 6c6f  _argument.  - lo
│ │ │ +000ef6f0: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ +000ef700: 206d 6564 6975 6d5f 636f 6d70 6c65 7869   medium_complexi
│ │ │ +000ef710: 7479 0a20 202d 206d 6564 6975 6d5f 7365  ty.  - medium_se
│ │ │ +000ef720: 7665 7269 7479 0a20 202d 2072 6562 6f6f  verity.  - reboo
│ │ │ +000ef730: 745f 7265 7175 6972 6564 0a20 202d 2072  t_required.  - r
│ │ │ +000ef740: 6573 7472 6963 745f 7374 7261 7465 6779  estrict_strategy
│ │ │ +000ef750: 0a0a 2d20 6e61 6d65 3a20 5570 6461 7465  ..- name: Update
│ │ │ +000ef760: 2067 7275 6220 6465 6661 756c 7473 2061   grub defaults a
│ │ │ +000ef770: 6e64 2074 6865 2062 6f6f 746c 6f61 6465  nd the bootloade
│ │ │ +000ef780: 7220 6d65 6e75 0a20 2061 6e73 6962 6c65  r menu.  ansible
│ │ │ +000ef790: 2e62 7569 6c74 696e 2e63 6f6d 6d61 6e64  .builtin.command
│ │ │ +000ef7a0: 3a20 2f73 6269 6e2f 6772 7562 6279 202d  : /sbin/grubby -
│ │ │ +000ef7b0: 2d75 7064 6174 652d 6b65 726e 656c 3d41  -update-kernel=A
│ │ │ +000ef7c0: 4c4c 202d 2d61 7267 733d 226d 6365 3d30  LL --args="mce=0
│ │ │ +000ef7d0: 220a 2020 7768 656e 3a0a 2020 2d20 2820  ".  when:.  - ( 
│ │ │ +000ef7e0: 2267 7275 6232 2d63 6f6d 6d6f 6e22 2069  "grub2-common" i
│ │ │ +000ef7f0: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +000ef800: 7061 636b 6167 6573 2061 6e64 2022 6b65  packages and "ke
│ │ │ +000ef810: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ +000ef820: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ +000ef830: 2020 2020 290a 2020 2d20 2867 7275 6262      ).  - (grubb
│ │ │ +000ef840: 795f 696e 666f 2e73 7464 6f75 7420 6973  y_info.stdout is
│ │ │ +000ef850: 206e 6f74 2073 6561 7263 6828 276d 6365   not search('mce
│ │ │ +000ef860: 3d30 2729 2920 6f72 2028 2865 7463 5f64  =0')) or ((etc_d
│ │ │ +000ef870: 6566 6175 6c74 5f67 7275 625b 2763 6f6e  efault_grub['con
│ │ │ +000ef880: 7465 6e74 275d 207c 0a20 2020 2062 3634  tent'] |.    b64
│ │ │ +000ef890: 6465 636f 6465 2920 6973 206e 6f74 2073  decode) is not s
│ │ │ +000ef8a0: 6561 7263 6828 276d 6365 3d30 2729 290a  earch('mce=0')).
│ │ │ +000ef8b0: 2020 7461 6773 3a0a 2020 2d20 6772 7562    tags:.  - grub
│ │ │ +000ef8c0: 325f 6d63 655f 6172 6775 6d65 6e74 0a20  2_mce_argument. 
│ │ │ +000ef8d0: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ +000ef8e0: 6e0a 2020 2d20 6d65 6469 756d 5f63 6f6d  n.  - medium_com
│ │ │ +000ef8f0: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ +000ef900: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ +000ef910: 7265 626f 6f74 5f72 6571 7569 7265 640a  reboot_required.
│ │ │ +000ef920: 2020 2d20 7265 7374 7269 6374 5f73 7472    - restrict_str
│ │ │ +000ef930: 6174 6567 790a 3c2f 636f 6465 3e3c 2f70  ategy.

Remediatio │ │ │ +000ef9f0: 6e20 4f53 4275 696c 6420 426c 7565 7072 n OSBuild Bluepr │ │ │ +000efa00: 696e 7420 736e 6970 7065 7420 e287 b23c int snippet ...< │ │ │ +000efa10: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
[customization
│ │ │ +000efa60: 732e 6b65 726e 656c 5d0a 6170 7065 6e64  s.kernel].append
│ │ │ +000efa70: 203d 2022 6d63 653d 3022 0a3c 2f63 6f64   = "mce=0".
R │ │ │ -000f0d00: 656d 6564 6961 7469 6f6e 204f 5342 7569 emediation OSBui │ │ │ -000f0d10: 6c64 2042 6c75 6570 7269 6e74 2073 6e69 ld Blueprint sni │ │ │ -000f0d20: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -000f0d30: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -000f0d60: 3c70 7265 3e3c 636f 6465 3e5b 6375 7374
[cust
│ │ │ -000f0d70: 6f6d 697a 6174 696f 6e73 2e6b 6572 6e65  omizations.kerne
│ │ │ -000f0d80: 6c5d 0a61 7070 656e 6420 3d20 226d 6473  l].append = "mds
│ │ │ -000f0d90: 3d3c 6162 6272 2074 6974 6c65 3d22 6672  =ful
│ │ │ -000f0df0: 6c2c 6e6f 736d 743c 2f61 6262 723e 220a  l,nosmt".
│ │ │ -000f0e00: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ -000f0eb0: 5265 6d65 6469 6174 696f 6e20 416e 7369 Remediation Ansi │ │ │ -000f0ec0: 626c 6520 736e 6970 7065 7420 e287 b23c ble snippet ...< │ │ │ -000f0ed0: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
│ │ │ -000f0f70: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 < │ │ │ -000f0fc0: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr> │ │ │ -000f0ff0: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:medium
Dis │ │ │ -000f0f80: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:true
Stra │ │ │ -000f0fd0: 7465 6779 3a3c 2f74 683e 3c74 643e 7265 tegy:re │ │ │ -000f0fe0: 7374 7269 6374 3c2f 7464 3e3c 2f74 723e strict
- name: Gathe
│ │ │ -000f1010: 7220 7468 6520 7061 636b 6167 6520 6661  r the package fa
│ │ │ -000f1020: 6374 730a 2020 7061 636b 6167 655f 6661  cts.  package_fa
│ │ │ -000f1030: 6374 733a 0a20 2020 206d 616e 6167 6572  cts:.    manager
│ │ │ -000f1040: 3a20 6175 746f 0a20 2074 6167 733a 0a20  : auto.  tags:. 
│ │ │ -000f1050: 202d 2067 7275 6232 5f6d 6473 5f61 7267   - grub2_mds_arg
│ │ │ -000f1060: 756d 656e 740a 2020 2d20 6c6f 775f 6469  ument.  - low_di
│ │ │ -000f1070: 7372 7570 7469 6f6e 0a20 202d 206d 6564  sruption.  - med
│ │ │ -000f1080: 6975 6d5f 636f 6d70 6c65 7869 7479 0a20  ium_complexity. 
│ │ │ -000f1090: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ -000f10a0: 7479 0a20 202d 2072 6562 6f6f 745f 7265  ty.  - reboot_re
│ │ │ -000f10b0: 7175 6972 6564 0a20 202d 2072 6573 7472  quired.  - restr
│ │ │ -000f10c0: 6963 745f 7374 7261 7465 6779 0a2d 206e  ict_strategy.- n
│ │ │ -000f10d0: 616d 653a 2058 4343 4446 2056 616c 7565  ame: XCCDF Value
│ │ │ -000f10e0: 2076 6172 5f6d 6473 5f6f 7074 696f 6e73   var_mds_options
│ │ │ -000f10f0: 2023 2070 726f 6d6f 7465 2074 6f20 7661   # promote to va
│ │ │ -000f1100: 7269 6162 6c65 0a20 2073 6574 5f66 6163  riable.  set_fac
│ │ │ -000f1110: 743a 0a20 2020 2076 6172 5f6d 6473 5f6f  t:.    var_mds_o
│ │ │ -000f1120: 7074 696f 6e73 3a20 2121 7374 7220 3c61  ptions: !!str full,n
│ │ │ -000f1190: 6f73 6d74 3c2f 6162 6272 3e0a 2020 7461  osmt.  ta
│ │ │ -000f11a0: 6773 3a0a 2020 2020 2d20 616c 7761 7973  gs:.    - always
│ │ │ -000f11b0: 0a0a 2d20 6e61 6d65 3a20 4368 6563 6b20  ..- name: Check 
│ │ │ -000f11c0: 6966 206d 6473 2061 7267 756d 656e 7420  if mds argument 
│ │ │ -000f11d0: 6973 2061 6c72 6561 6479 2070 7265 7365  is already prese
│ │ │ -000f11e0: 6e74 2069 6e20 2f65 7463 2f64 6566 6175  nt in /etc/defau
│ │ │ -000f11f0: 6c74 2f67 7275 620a 2020 616e 7369 626c  lt/grub.  ansibl
│ │ │ -000f1200: 652e 6275 696c 7469 6e2e 736c 7572 703a  e.builtin.slurp:
│ │ │ -000f1210: 0a20 2020 2073 7263 3a20 2f65 7463 2f64  .    src: /etc/d
│ │ │ -000f1220: 6566 6175 6c74 2f67 7275 620a 2020 7265  efault/grub.  re
│ │ │ -000f1230: 6769 7374 6572 3a20 6574 635f 6465 6661  gister: etc_defa
│ │ │ -000f1240: 756c 745f 6772 7562 0a20 2077 6865 6e3a  ult_grub.  when:
│ │ │ -000f1250: 2028 2022 6772 7562 322d 636f 6d6d 6f6e   ( "grub2-common
│ │ │ -000f1260: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -000f1270: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ -000f1280: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ -000f1290: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -000f12a0: 6573 0a20 2020 2029 0a20 2074 6167 733a  es.    ).  tags:
│ │ │ -000f12b0: 0a20 202d 2067 7275 6232 5f6d 6473 5f61  .  - grub2_mds_a
│ │ │ -000f12c0: 7267 756d 656e 740a 2020 2d20 6c6f 775f  rgument.  - low_
│ │ │ -000f12d0: 6469 7372 7570 7469 6f6e 0a20 202d 206d  disruption.  - m
│ │ │ -000f12e0: 6564 6975 6d5f 636f 6d70 6c65 7869 7479  edium_complexity
│ │ │ -000f12f0: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ -000f1300: 7269 7479 0a20 202d 2072 6562 6f6f 745f  rity.  - reboot_
│ │ │ -000f1310: 7265 7175 6972 6564 0a20 202d 2072 6573  required.  - res
│ │ │ -000f1320: 7472 6963 745f 7374 7261 7465 6779 0a0a  trict_strategy..
│ │ │ -000f1330: 2d20 6e61 6d65 3a20 4368 6563 6b20 6966  - name: Check if
│ │ │ -000f1340: 206d 6473 2061 7267 756d 656e 7420 6973   mds argument is
│ │ │ -000f1350: 2061 6c72 6561 6479 2070 7265 7365 6e74   already present
│ │ │ -000f1360: 0a20 2061 6e73 6962 6c65 2e62 7569 6c74  .  ansible.built
│ │ │ -000f1370: 696e 2e63 6f6d 6d61 6e64 3a20 2f73 6269  in.command: /sbi
│ │ │ -000f1380: 6e2f 6772 7562 6279 202d 2d69 6e66 6f3d  n/grubby --info=
│ │ │ -000f1390: 414c 4c0a 2020 7265 6769 7374 6572 3a20  ALL.  register: 
│ │ │ -000f13a0: 6772 7562 6279 5f69 6e66 6f0a 2020 6368  grubby_info.  ch
│ │ │ -000f13b0: 6563 6b5f 6d6f 6465 3a20 6661 6c73 650a  eck_mode: false.
│ │ │ -000f13c0: 2020 6368 616e 6765 645f 7768 656e 3a20    changed_when: 
│ │ │ -000f13d0: 6661 6c73 650a 2020 6661 696c 6564 5f77  false.  failed_w
│ │ │ -000f13e0: 6865 6e3a 2066 616c 7365 0a20 2077 6865  hen: false.  whe
│ │ │ -000f13f0: 6e3a 2028 2022 6772 7562 322d 636f 6d6d  n: ( "grub2-comm
│ │ │ -000f1400: 6f6e 2220 696e 2061 6e73 6962 6c65 5f66  on" in ansible_f
│ │ │ -000f1410: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ -000f1420: 6420 226b 6572 6e65 6c22 2069 6e20 616e  d "kernel" in an
│ │ │ -000f1430: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -000f1440: 6167 6573 0a20 2020 2029 0a20 2074 6167  ages.    ).  tag
│ │ │ -000f1450: 733a 0a20 202d 2067 7275 6232 5f6d 6473  s:.  - grub2_mds
│ │ │ -000f1460: 5f61 7267 756d 656e 740a 2020 2d20 6c6f  _argument.  - lo
│ │ │ -000f1470: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ -000f1480: 206d 6564 6975 6d5f 636f 6d70 6c65 7869   medium_complexi
│ │ │ -000f1490: 7479 0a20 202d 206d 6564 6975 6d5f 7365  ty.  - medium_se
│ │ │ -000f14a0: 7665 7269 7479 0a20 202d 2072 6562 6f6f  verity.  - reboo
│ │ │ -000f14b0: 745f 7265 7175 6972 6564 0a20 202d 2072  t_required.  - r
│ │ │ -000f14c0: 6573 7472 6963 745f 7374 7261 7465 6779  estrict_strategy
│ │ │ -000f14d0: 0a0a 2d20 6e61 6d65 3a20 5570 6461 7465  ..- name: Update
│ │ │ -000f14e0: 2067 7275 6220 6465 6661 756c 7473 2061   grub defaults a
│ │ │ -000f14f0: 6e64 2074 6865 2062 6f6f 746c 6f61 6465  nd the bootloade
│ │ │ -000f1500: 7220 6d65 6e75 0a20 2061 6e73 6962 6c65  r menu.  ansible
│ │ │ -000f1510: 2e62 7569 6c74 696e 2e63 6f6d 6d61 6e64  .builtin.command
│ │ │ -000f1520: 3a20 2f73 6269 6e2f 6772 7562 6279 202d  : /sbin/grubby -
│ │ │ -000f1530: 2d75 7064 6174 652d 6b65 726e 656c 3d41  -update-kernel=A
│ │ │ -000f1540: 4c4c 202d 2d61 7267 733d 226d 6473 3d7b  LL --args="mds={
│ │ │ -000f1550: 7b20 7661 725f 6d64 735f 6f70 7469 6f6e  { var_mds_option
│ │ │ -000f1560: 730a 2020 2020 7d7d 220a 2020 7768 656e  s.    }}".  when
│ │ │ -000f1570: 3a0a 2020 2d20 2820 2267 7275 6232 2d63  :.  - ( "grub2-c
│ │ │ -000f1580: 6f6d 6d6f 6e22 2069 6e20 616e 7369 626c  ommon" in ansibl
│ │ │ -000f1590: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -000f15a0: 2061 6e64 2022 6b65 726e 656c 2220 696e   and "kernel" in
│ │ │ -000f15b0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -000f15c0: 6163 6b61 6765 730a 2020 2020 290a 2020  ackages.    ).  
│ │ │ -000f15d0: 2d20 2867 7275 6262 795f 696e 666f 2e73  - (grubby_info.s
│ │ │ -000f15e0: 7464 6f75 7420 6973 206e 6f74 2073 6561  tdout is not sea
│ │ │ -000f15f0: 7263 6828 276d 6473 3d27 207e 2076 6172  rch('mds=' ~ var
│ │ │ -000f1600: 5f6d 6473 5f6f 7074 696f 6e73 2929 206f  _mds_options)) o
│ │ │ -000f1610: 7220 2828 6574 635f 6465 6661 756c 745f  r ((etc_default_
│ │ │ -000f1620: 6772 7562 5b27 636f 6e74 656e 7427 5d0a  grub['content'].
│ │ │ -000f1630: 2020 2020 7c20 6236 3464 6563 6f64 6529      | b64decode)
│ │ │ -000f1640: 2069 7320 6e6f 7420 7365 6172 6368 2827   is not search('
│ │ │ -000f1650: 6d64 733d 2720 7e20 7661 725f 6d64 735f  mds=' ~ var_mds_
│ │ │ -000f1660: 6f70 7469 6f6e 7329 290a 2020 7461 6773  options)).  tags
│ │ │ -000f1670: 3a0a 2020 2d20 6772 7562 325f 6d64 735f  :.  - grub2_mds_
│ │ │ -000f1680: 6172 6775 6d65 6e74 0a20 202d 206c 6f77  argument.  - low
│ │ │ -000f1690: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ -000f16a0: 6d65 6469 756d 5f63 6f6d 706c 6578 6974  medium_complexit
│ │ │ -000f16b0: 790a 2020 2d20 6d65 6469 756d 5f73 6576  y.  - medium_sev
│ │ │ -000f16c0: 6572 6974 790a 2020 2d20 7265 626f 6f74  erity.  - reboot
│ │ │ -000f16d0: 5f72 6571 7569 7265 640a 2020 2d20 7265  _required.  - re
│ │ │ -000f16e0: 7374 7269 6374 5f73 7472 6174 6567 790a  strict_strategy.
│ │ │ +000f0d00: 656d 6564 6961 7469 6f6e 2041 6e73 6962  emediation Ansib
│ │ │ +000f0d10: 6c65 2073 6e69 7070 6574 20e2 87b2 3c2f  le snippet ...
│ │ │ +000f0db0: 3c74 643e 6d65 6469 756d 3c2f 7464 3e3c < │ │ │ +000f0dc0: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ +000f0e40: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
- name: Gather
│ │ │ +000f0e60: 2074 6865 2070 6163 6b61 6765 2066 6163   the package fac
│ │ │ +000f0e70: 7473 0a20 2070 6163 6b61 6765 5f66 6163  ts.  package_fac
│ │ │ +000f0e80: 7473 3a0a 2020 2020 6d61 6e61 6765 723a  ts:.    manager:
│ │ │ +000f0e90: 2061 7574 6f0a 2020 7461 6773 3a0a 2020   auto.  tags:.  
│ │ │ +000f0ea0: 2d20 6772 7562 325f 6d64 735f 6172 6775  - grub2_mds_argu
│ │ │ +000f0eb0: 6d65 6e74 0a20 202d 206c 6f77 5f64 6973  ment.  - low_dis
│ │ │ +000f0ec0: 7275 7074 696f 6e0a 2020 2d20 6d65 6469  ruption.  - medi
│ │ │ +000f0ed0: 756d 5f63 6f6d 706c 6578 6974 790a 2020  um_complexity.  
│ │ │ +000f0ee0: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ +000f0ef0: 790a 2020 2d20 7265 626f 6f74 5f72 6571  y.  - reboot_req
│ │ │ +000f0f00: 7569 7265 640a 2020 2d20 7265 7374 7269  uired.  - restri
│ │ │ +000f0f10: 6374 5f73 7472 6174 6567 790a 2d20 6e61  ct_strategy.- na
│ │ │ +000f0f20: 6d65 3a20 5843 4344 4620 5661 6c75 6520  me: XCCDF Value 
│ │ │ +000f0f30: 7661 725f 6d64 735f 6f70 7469 6f6e 7320  var_mds_options 
│ │ │ +000f0f40: 2320 7072 6f6d 6f74 6520 746f 2076 6172  # promote to var
│ │ │ +000f0f50: 6961 626c 650a 2020 7365 745f 6661 6374  iable.  set_fact
│ │ │ +000f0f60: 3a0a 2020 2020 7661 725f 6d64 735f 6f70  :.    var_mds_op
│ │ │ +000f0f70: 7469 6f6e 733a 2021 2173 7472 203c 6162  tions: !!str full,no
│ │ │ +000f0fe0: 736d 743c 2f61 6262 723e 0a20 2074 6167  smt.  tag
│ │ │ +000f0ff0: 733a 0a20 2020 202d 2061 6c77 6179 730a  s:.    - always.
│ │ │ +000f1000: 0a2d 206e 616d 653a 2043 6865 636b 2069  .- name: Check i
│ │ │ +000f1010: 6620 6d64 7320 6172 6775 6d65 6e74 2069  f mds argument i
│ │ │ +000f1020: 7320 616c 7265 6164 7920 7072 6573 656e  s already presen
│ │ │ +000f1030: 7420 696e 202f 6574 632f 6465 6661 756c  t in /etc/defaul
│ │ │ +000f1040: 742f 6772 7562 0a20 2061 6e73 6962 6c65  t/grub.  ansible
│ │ │ +000f1050: 2e62 7569 6c74 696e 2e73 6c75 7270 3a0a  .builtin.slurp:.
│ │ │ +000f1060: 2020 2020 7372 633a 202f 6574 632f 6465      src: /etc/de
│ │ │ +000f1070: 6661 756c 742f 6772 7562 0a20 2072 6567  fault/grub.  reg
│ │ │ +000f1080: 6973 7465 723a 2065 7463 5f64 6566 6175  ister: etc_defau
│ │ │ +000f1090: 6c74 5f67 7275 620a 2020 7768 656e 3a20  lt_grub.  when: 
│ │ │ +000f10a0: 2820 2267 7275 6232 2d63 6f6d 6d6f 6e22  ( "grub2-common"
│ │ │ +000f10b0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +000f10c0: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ +000f10d0: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ +000f10e0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +000f10f0: 730a 2020 2020 290a 2020 7461 6773 3a0a  s.    ).  tags:.
│ │ │ +000f1100: 2020 2d20 6772 7562 325f 6d64 735f 6172    - grub2_mds_ar
│ │ │ +000f1110: 6775 6d65 6e74 0a20 202d 206c 6f77 5f64  gument.  - low_d
│ │ │ +000f1120: 6973 7275 7074 696f 6e0a 2020 2d20 6d65  isruption.  - me
│ │ │ +000f1130: 6469 756d 5f63 6f6d 706c 6578 6974 790a  dium_complexity.
│ │ │ +000f1140: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ +000f1150: 6974 790a 2020 2d20 7265 626f 6f74 5f72  ity.  - reboot_r
│ │ │ +000f1160: 6571 7569 7265 640a 2020 2d20 7265 7374  equired.  - rest
│ │ │ +000f1170: 7269 6374 5f73 7472 6174 6567 790a 0a2d  rict_strategy..-
│ │ │ +000f1180: 206e 616d 653a 2043 6865 636b 2069 6620   name: Check if 
│ │ │ +000f1190: 6d64 7320 6172 6775 6d65 6e74 2069 7320  mds argument is 
│ │ │ +000f11a0: 616c 7265 6164 7920 7072 6573 656e 740a  already present.
│ │ │ +000f11b0: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ +000f11c0: 6e2e 636f 6d6d 616e 643a 202f 7362 696e  n.command: /sbin
│ │ │ +000f11d0: 2f67 7275 6262 7920 2d2d 696e 666f 3d41  /grubby --info=A
│ │ │ +000f11e0: 4c4c 0a20 2072 6567 6973 7465 723a 2067  LL.  register: g
│ │ │ +000f11f0: 7275 6262 795f 696e 666f 0a20 2063 6865  rubby_info.  che
│ │ │ +000f1200: 636b 5f6d 6f64 653a 2066 616c 7365 0a20  ck_mode: false. 
│ │ │ +000f1210: 2063 6861 6e67 6564 5f77 6865 6e3a 2066   changed_when: f
│ │ │ +000f1220: 616c 7365 0a20 2066 6169 6c65 645f 7768  alse.  failed_wh
│ │ │ +000f1230: 656e 3a20 6661 6c73 650a 2020 7768 656e  en: false.  when
│ │ │ +000f1240: 3a20 2820 2267 7275 6232 2d63 6f6d 6d6f  : ( "grub2-commo
│ │ │ +000f1250: 6e22 2069 6e20 616e 7369 626c 655f 6661  n" in ansible_fa
│ │ │ +000f1260: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ +000f1270: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ +000f1280: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +000f1290: 6765 730a 2020 2020 290a 2020 7461 6773  ges.    ).  tags
│ │ │ +000f12a0: 3a0a 2020 2d20 6772 7562 325f 6d64 735f  :.  - grub2_mds_
│ │ │ +000f12b0: 6172 6775 6d65 6e74 0a20 202d 206c 6f77  argument.  - low
│ │ │ +000f12c0: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +000f12d0: 6d65 6469 756d 5f63 6f6d 706c 6578 6974  medium_complexit
│ │ │ +000f12e0: 790a 2020 2d20 6d65 6469 756d 5f73 6576  y.  - medium_sev
│ │ │ +000f12f0: 6572 6974 790a 2020 2d20 7265 626f 6f74  erity.  - reboot
│ │ │ +000f1300: 5f72 6571 7569 7265 640a 2020 2d20 7265  _required.  - re
│ │ │ +000f1310: 7374 7269 6374 5f73 7472 6174 6567 790a  strict_strategy.
│ │ │ +000f1320: 0a2d 206e 616d 653a 2055 7064 6174 6520  .- name: Update 
│ │ │ +000f1330: 6772 7562 2064 6566 6175 6c74 7320 616e  grub defaults an
│ │ │ +000f1340: 6420 7468 6520 626f 6f74 6c6f 6164 6572  d the bootloader
│ │ │ +000f1350: 206d 656e 750a 2020 616e 7369 626c 652e   menu.  ansible.
│ │ │ +000f1360: 6275 696c 7469 6e2e 636f 6d6d 616e 643a  builtin.command:
│ │ │ +000f1370: 202f 7362 696e 2f67 7275 6262 7920 2d2d   /sbin/grubby --
│ │ │ +000f1380: 7570 6461 7465 2d6b 6572 6e65 6c3d 414c  update-kernel=AL
│ │ │ +000f1390: 4c20 2d2d 6172 6773 3d22 6d64 733d 7b7b  L --args="mds={{
│ │ │ +000f13a0: 2076 6172 5f6d 6473 5f6f 7074 696f 6e73   var_mds_options
│ │ │ +000f13b0: 0a20 2020 207d 7d22 0a20 2077 6865 6e3a  .    }}".  when:
│ │ │ +000f13c0: 0a20 202d 2028 2022 6772 7562 322d 636f  .  - ( "grub2-co
│ │ │ +000f13d0: 6d6d 6f6e 2220 696e 2061 6e73 6962 6c65  mmon" in ansible
│ │ │ +000f13e0: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ +000f13f0: 616e 6420 226b 6572 6e65 6c22 2069 6e20  and "kernel" in 
│ │ │ +000f1400: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +000f1410: 636b 6167 6573 0a20 2020 2029 0a20 202d  ckages.    ).  -
│ │ │ +000f1420: 2028 6772 7562 6279 5f69 6e66 6f2e 7374   (grubby_info.st
│ │ │ +000f1430: 646f 7574 2069 7320 6e6f 7420 7365 6172  dout is not sear
│ │ │ +000f1440: 6368 2827 6d64 733d 2720 7e20 7661 725f  ch('mds=' ~ var_
│ │ │ +000f1450: 6d64 735f 6f70 7469 6f6e 7329 2920 6f72  mds_options)) or
│ │ │ +000f1460: 2028 2865 7463 5f64 6566 6175 6c74 5f67   ((etc_default_g
│ │ │ +000f1470: 7275 625b 2763 6f6e 7465 6e74 275d 0a20  rub['content']. 
│ │ │ +000f1480: 2020 207c 2062 3634 6465 636f 6465 2920     | b64decode) 
│ │ │ +000f1490: 6973 206e 6f74 2073 6561 7263 6828 276d  is not search('m
│ │ │ +000f14a0: 6473 3d27 207e 2076 6172 5f6d 6473 5f6f  ds=' ~ var_mds_o
│ │ │ +000f14b0: 7074 696f 6e73 2929 0a20 2074 6167 733a  ptions)).  tags:
│ │ │ +000f14c0: 0a20 202d 2067 7275 6232 5f6d 6473 5f61  .  - grub2_mds_a
│ │ │ +000f14d0: 7267 756d 656e 740a 2020 2d20 6c6f 775f  rgument.  - low_
│ │ │ +000f14e0: 6469 7372 7570 7469 6f6e 0a20 202d 206d  disruption.  - m
│ │ │ +000f14f0: 6564 6975 6d5f 636f 6d70 6c65 7869 7479  edium_complexity
│ │ │ +000f1500: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ +000f1510: 7269 7479 0a20 202d 2072 6562 6f6f 745f  rity.  - reboot_
│ │ │ +000f1520: 7265 7175 6972 6564 0a20 202d 2072 6573  required.  - res
│ │ │ +000f1530: 7472 6963 745f 7374 7261 7465 6779 0a3c  trict_strategy.<
│ │ │ +000f1540: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ +000f15f0: 656d 6564 6961 7469 6f6e 204f 5342 7569 emediation OSBui │ │ │ +000f1600: 6c64 2042 6c75 6570 7269 6e74 2073 6e69 ld Blueprint sni │ │ │ +000f1610: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ +000f1620: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ +000f1650: 3c70 7265 3e3c 636f 6465 3e5b 6375 7374
[cust
│ │ │ +000f1660: 6f6d 697a 6174 696f 6e73 2e6b 6572 6e65  omizations.kerne
│ │ │ +000f1670: 6c5d 0a61 7070 656e 6420 3d20 226d 6473  l].append = "mds
│ │ │ +000f1680: 3d3c 6162 6272 2074 6974 6c65 3d22 6672  =ful
│ │ │ +000f16e0: 6c2c 6e6f 736d 743c 2f61 6262 723e 220a  l,nosmt".
│ │ │  000f16f0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ -000f5190: 5265 6d65 6469 6174 696f 6e20 4f53 4275 Remediation OSBu │ │ │ -000f51a0: 696c 6420 426c 7565 7072 696e 7420 736e ild Blueprint sn │ │ │ -000f51b0: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
[cus
│ │ │ -000f5200: 746f 6d69 7a61 7469 6f6e 732e 6b65 726e  tomizations.kern
│ │ │ -000f5210: 656c 5d0a 6170 7065 6e64 203d 2022 7061  el].append = "pa
│ │ │ -000f5220: 6765 5f61 6c6c 6f63 2e73 6875 6666 6c65  ge_alloc.shuffle
│ │ │ -000f5230: 3d31 220a 3c2f 636f 6465 3e3c 2f70 7265  =1".
Remediation │ │ │ -000f52f0: 416e 7369 626c 6520 736e 6970 7065 7420 Ansible snippet │ │ │ -000f5300: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
restrict< │ │ │ -000f5420: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
│ │ │ +000f0da0: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:medium
Disr │ │ │ +000f0dd0: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +000f0de0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:true
Strat │ │ │ +000f0e20: 6567 793a 3c2f 7468 3e3c 7464 3e72 6573 egy:res │ │ │ +000f0e30: 7472 6963 743c 2f74 643e 3c2f 7472 3e3c trict
Complexity: │ │ │ -000f5390: 3c2f 7468 3e3c 7464 3e6d 6564 6975 6d3c medium< │ │ │ -000f53a0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Disruption:low
Reboot │ │ │ -000f53e0: 3a3c 2f74 683e 3c74 643e 7472 7565 3c2f :true
│ │ │ -000f5400: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:
- name: G
│ │ │ -000f5440: 6174 6865 7220 7468 6520 7061 636b 6167  ather the packag
│ │ │ -000f5450: 6520 6661 6374 730a 2020 7061 636b 6167  e facts.  packag
│ │ │ -000f5460: 655f 6661 6374 733a 0a20 2020 206d 616e  e_facts:.    man
│ │ │ -000f5470: 6167 6572 3a20 6175 746f 0a20 2074 6167  ager: auto.  tag
│ │ │ -000f5480: 733a 0a20 202d 2067 7275 6232 5f70 6167  s:.  - grub2_pag
│ │ │ -000f5490: 655f 616c 6c6f 635f 7368 7566 666c 655f  e_alloc_shuffle_
│ │ │ -000f54a0: 6172 6775 6d65 6e74 0a20 202d 206c 6f77  argument.  - low
│ │ │ -000f54b0: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ -000f54c0: 6d65 6469 756d 5f63 6f6d 706c 6578 6974  medium_complexit
│ │ │ -000f54d0: 790a 2020 2d20 6d65 6469 756d 5f73 6576  y.  - medium_sev
│ │ │ -000f54e0: 6572 6974 790a 2020 2d20 7265 626f 6f74  erity.  - reboot
│ │ │ -000f54f0: 5f72 6571 7569 7265 640a 2020 2d20 7265  _required.  - re
│ │ │ -000f5500: 7374 7269 6374 5f73 7472 6174 6567 790a  strict_strategy.
│ │ │ -000f5510: 0a2d 206e 616d 653a 2043 6865 636b 2069  .- name: Check i
│ │ │ -000f5520: 6620 7061 6765 5f61 6c6c 6f63 2e73 6875  f page_alloc.shu
│ │ │ -000f5530: 6666 6c65 2061 7267 756d 656e 7420 6973  ffle argument is
│ │ │ -000f5540: 2061 6c72 6561 6479 2070 7265 7365 6e74   already present
│ │ │ -000f5550: 2069 6e20 2f65 7463 2f64 6566 6175 6c74   in /etc/default
│ │ │ -000f5560: 2f67 7275 620a 2020 616e 7369 626c 652e  /grub.  ansible.
│ │ │ -000f5570: 6275 696c 7469 6e2e 736c 7572 703a 0a20  builtin.slurp:. 
│ │ │ -000f5580: 2020 2073 7263 3a20 2f65 7463 2f64 6566     src: /etc/def
│ │ │ -000f5590: 6175 6c74 2f67 7275 620a 2020 7265 6769  ault/grub.  regi
│ │ │ -000f55a0: 7374 6572 3a20 6574 635f 6465 6661 756c  ster: etc_defaul
│ │ │ -000f55b0: 745f 6772 7562 0a20 2077 6865 6e3a 2028  t_grub.  when: (
│ │ │ -000f55c0: 2022 6772 7562 322d 636f 6d6d 6f6e 2220   "grub2-common" 
│ │ │ -000f55d0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -000f55e0: 2e70 6163 6b61 6765 7320 616e 6420 226b  .packages and "k
│ │ │ -000f55f0: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ -000f5600: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -000f5610: 0a20 2020 2029 0a20 2074 6167 733a 0a20  .    ).  tags:. 
│ │ │ -000f5620: 202d 2067 7275 6232 5f70 6167 655f 616c   - grub2_page_al
│ │ │ -000f5630: 6c6f 635f 7368 7566 666c 655f 6172 6775  loc_shuffle_argu
│ │ │ -000f5640: 6d65 6e74 0a20 202d 206c 6f77 5f64 6973  ment.  - low_dis
│ │ │ -000f5650: 7275 7074 696f 6e0a 2020 2d20 6d65 6469  ruption.  - medi
│ │ │ -000f5660: 756d 5f63 6f6d 706c 6578 6974 790a 2020  um_complexity.  
│ │ │ -000f5670: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ -000f5680: 790a 2020 2d20 7265 626f 6f74 5f72 6571  y.  - reboot_req
│ │ │ -000f5690: 7569 7265 640a 2020 2d20 7265 7374 7269  uired.  - restri
│ │ │ -000f56a0: 6374 5f73 7472 6174 6567 790a 0a2d 206e  ct_strategy..- n
│ │ │ -000f56b0: 616d 653a 2043 6865 636b 2069 6620 7061  ame: Check if pa
│ │ │ -000f56c0: 6765 5f61 6c6c 6f63 2e73 6875 6666 6c65  ge_alloc.shuffle
│ │ │ -000f56d0: 2061 7267 756d 656e 7420 6973 2061 6c72   argument is alr
│ │ │ -000f56e0: 6561 6479 2070 7265 7365 6e74 0a20 2061  eady present.  a
│ │ │ -000f56f0: 6e73 6962 6c65 2e62 7569 6c74 696e 2e63  nsible.builtin.c
│ │ │ -000f5700: 6f6d 6d61 6e64 3a20 2f73 6269 6e2f 6772  ommand: /sbin/gr
│ │ │ -000f5710: 7562 6279 202d 2d69 6e66 6f3d 414c 4c0a  ubby --info=ALL.
│ │ │ -000f5720: 2020 7265 6769 7374 6572 3a20 6772 7562    register: grub
│ │ │ -000f5730: 6279 5f69 6e66 6f0a 2020 6368 6563 6b5f  by_info.  check_
│ │ │ -000f5740: 6d6f 6465 3a20 6661 6c73 650a 2020 6368  mode: false.  ch
│ │ │ -000f5750: 616e 6765 645f 7768 656e 3a20 6661 6c73  anged_when: fals
│ │ │ -000f5760: 650a 2020 6661 696c 6564 5f77 6865 6e3a  e.  failed_when:
│ │ │ -000f5770: 2066 616c 7365 0a20 2077 6865 6e3a 2028   false.  when: (
│ │ │ -000f5780: 2022 6772 7562 322d 636f 6d6d 6f6e 2220   "grub2-common" 
│ │ │ -000f5790: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -000f57a0: 2e70 6163 6b61 6765 7320 616e 6420 226b  .packages and "k
│ │ │ -000f57b0: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ -000f57c0: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -000f57d0: 0a20 2020 2029 0a20 2074 6167 733a 0a20  .    ).  tags:. 
│ │ │ -000f57e0: 202d 2067 7275 6232 5f70 6167 655f 616c   - grub2_page_al
│ │ │ -000f57f0: 6c6f 635f 7368 7566 666c 655f 6172 6775  loc_shuffle_argu
│ │ │ -000f5800: 6d65 6e74 0a20 202d 206c 6f77 5f64 6973  ment.  - low_dis
│ │ │ -000f5810: 7275 7074 696f 6e0a 2020 2d20 6d65 6469  ruption.  - medi
│ │ │ -000f5820: 756d 5f63 6f6d 706c 6578 6974 790a 2020  um_complexity.  
│ │ │ -000f5830: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ -000f5840: 790a 2020 2d20 7265 626f 6f74 5f72 6571  y.  - reboot_req
│ │ │ -000f5850: 7569 7265 640a 2020 2d20 7265 7374 7269  uired.  - restri
│ │ │ -000f5860: 6374 5f73 7472 6174 6567 790a 0a2d 206e  ct_strategy..- n
│ │ │ -000f5870: 616d 653a 2055 7064 6174 6520 6772 7562  ame: Update grub
│ │ │ -000f5880: 2064 6566 6175 6c74 7320 616e 6420 7468   defaults and th
│ │ │ -000f5890: 6520 626f 6f74 6c6f 6164 6572 206d 656e  e bootloader men
│ │ │ -000f58a0: 750a 2020 616e 7369 626c 652e 6275 696c  u.  ansible.buil
│ │ │ -000f58b0: 7469 6e2e 636f 6d6d 616e 643a 202f 7362  tin.command: /sb
│ │ │ -000f58c0: 696e 2f67 7275 6262 7920 2d2d 7570 6461  in/grubby --upda
│ │ │ -000f58d0: 7465 2d6b 6572 6e65 6c3d 414c 4c20 2d2d  te-kernel=ALL --
│ │ │ -000f58e0: 6172 6773 3d22 7061 6765 5f61 6c6c 6f63  args="page_alloc
│ │ │ -000f58f0: 2e73 6875 6666 6c65 3d31 220a 2020 7768  .shuffle=1".  wh
│ │ │ -000f5900: 656e 3a0a 2020 2d20 2820 2267 7275 6232  en:.  - ( "grub2
│ │ │ -000f5910: 2d63 6f6d 6d6f 6e22 2069 6e20 616e 7369  -common" in ansi
│ │ │ -000f5920: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -000f5930: 6573 2061 6e64 2022 6b65 726e 656c 2220  es and "kernel" 
│ │ │ -000f5940: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -000f5950: 2e70 6163 6b61 6765 730a 2020 2020 290a  .packages.    ).
│ │ │ -000f5960: 2020 2d20 2867 7275 6262 795f 696e 666f    - (grubby_info
│ │ │ -000f5970: 2e73 7464 6f75 7420 6973 206e 6f74 2073  .stdout is not s
│ │ │ -000f5980: 6561 7263 6828 2770 6167 655f 616c 6c6f  earch('page_allo
│ │ │ -000f5990: 632e 7368 7566 666c 653d 3127 2929 206f  c.shuffle=1')) o
│ │ │ -000f59a0: 7220 2828 6574 635f 6465 6661 756c 745f  r ((etc_default_
│ │ │ -000f59b0: 6772 7562 5b27 636f 6e74 656e 7427 5d0a  grub['content'].
│ │ │ -000f59c0: 2020 2020 7c20 6236 3464 6563 6f64 6529      | b64decode)
│ │ │ -000f59d0: 2069 7320 6e6f 7420 7365 6172 6368 2827   is not search('
│ │ │ -000f59e0: 7061 6765 5f61 6c6c 6f63 2e73 6875 6666  page_alloc.shuff
│ │ │ -000f59f0: 6c65 3d31 2729 290a 2020 7461 6773 3a0a  le=1')).  tags:.
│ │ │ -000f5a00: 2020 2d20 6772 7562 325f 7061 6765 5f61    - grub2_page_a
│ │ │ -000f5a10: 6c6c 6f63 5f73 6875 6666 6c65 5f61 7267  lloc_shuffle_arg
│ │ │ -000f5a20: 756d 656e 740a 2020 2d20 6c6f 775f 6469  ument.  - low_di
│ │ │ -000f5a30: 7372 7570 7469 6f6e 0a20 202d 206d 6564  sruption.  - med
│ │ │ -000f5a40: 6975 6d5f 636f 6d70 6c65 7869 7479 0a20  ium_complexity. 
│ │ │ -000f5a50: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ -000f5a60: 7479 0a20 202d 2072 6562 6f6f 745f 7265  ty.  - reboot_re
│ │ │ -000f5a70: 7175 6972 6564 0a20 202d 2072 6573 7472  quired.  - restr
│ │ │ -000f5a80: 6963 745f 7374 7261 7465 6779 0a3c 2f63  ict_strategy.
│ │ │ +000f5250: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 < │ │ │ +000f52a0: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr> │ │ │ +000f52d0: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:medium
Dis │ │ │ +000f5260: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:true
Stra │ │ │ +000f52b0: 7465 6779 3a3c 2f74 683e 3c74 643e 7265 tegy:re │ │ │ +000f52c0: 7374 7269 6374 3c2f 7464 3e3c 2f74 723e strict
- name: Gathe
│ │ │ +000f52f0: 7220 7468 6520 7061 636b 6167 6520 6661  r the package fa
│ │ │ +000f5300: 6374 730a 2020 7061 636b 6167 655f 6661  cts.  package_fa
│ │ │ +000f5310: 6374 733a 0a20 2020 206d 616e 6167 6572  cts:.    manager
│ │ │ +000f5320: 3a20 6175 746f 0a20 2074 6167 733a 0a20  : auto.  tags:. 
│ │ │ +000f5330: 202d 2067 7275 6232 5f70 6167 655f 616c   - grub2_page_al
│ │ │ +000f5340: 6c6f 635f 7368 7566 666c 655f 6172 6775  loc_shuffle_argu
│ │ │ +000f5350: 6d65 6e74 0a20 202d 206c 6f77 5f64 6973  ment.  - low_dis
│ │ │ +000f5360: 7275 7074 696f 6e0a 2020 2d20 6d65 6469  ruption.  - medi
│ │ │ +000f5370: 756d 5f63 6f6d 706c 6578 6974 790a 2020  um_complexity.  
│ │ │ +000f5380: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ +000f5390: 790a 2020 2d20 7265 626f 6f74 5f72 6571  y.  - reboot_req
│ │ │ +000f53a0: 7569 7265 640a 2020 2d20 7265 7374 7269  uired.  - restri
│ │ │ +000f53b0: 6374 5f73 7472 6174 6567 790a 0a2d 206e  ct_strategy..- n
│ │ │ +000f53c0: 616d 653a 2043 6865 636b 2069 6620 7061  ame: Check if pa
│ │ │ +000f53d0: 6765 5f61 6c6c 6f63 2e73 6875 6666 6c65  ge_alloc.shuffle
│ │ │ +000f53e0: 2061 7267 756d 656e 7420 6973 2061 6c72   argument is alr
│ │ │ +000f53f0: 6561 6479 2070 7265 7365 6e74 2069 6e20  eady present in 
│ │ │ +000f5400: 2f65 7463 2f64 6566 6175 6c74 2f67 7275  /etc/default/gru
│ │ │ +000f5410: 620a 2020 616e 7369 626c 652e 6275 696c  b.  ansible.buil
│ │ │ +000f5420: 7469 6e2e 736c 7572 703a 0a20 2020 2073  tin.slurp:.    s
│ │ │ +000f5430: 7263 3a20 2f65 7463 2f64 6566 6175 6c74  rc: /etc/default
│ │ │ +000f5440: 2f67 7275 620a 2020 7265 6769 7374 6572  /grub.  register
│ │ │ +000f5450: 3a20 6574 635f 6465 6661 756c 745f 6772  : etc_default_gr
│ │ │ +000f5460: 7562 0a20 2077 6865 6e3a 2028 2022 6772  ub.  when: ( "gr
│ │ │ +000f5470: 7562 322d 636f 6d6d 6f6e 2220 696e 2061  ub2-common" in a
│ │ │ +000f5480: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +000f5490: 6b61 6765 7320 616e 6420 226b 6572 6e65  kages and "kerne
│ │ │ +000f54a0: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ +000f54b0: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ +000f54c0: 2029 0a20 2074 6167 733a 0a20 202d 2067   ).  tags:.  - g
│ │ │ +000f54d0: 7275 6232 5f70 6167 655f 616c 6c6f 635f  rub2_page_alloc_
│ │ │ +000f54e0: 7368 7566 666c 655f 6172 6775 6d65 6e74  shuffle_argument
│ │ │ +000f54f0: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ +000f5500: 696f 6e0a 2020 2d20 6d65 6469 756d 5f63  ion.  - medium_c
│ │ │ +000f5510: 6f6d 706c 6578 6974 790a 2020 2d20 6d65  omplexity.  - me
│ │ │ +000f5520: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ +000f5530: 2d20 7265 626f 6f74 5f72 6571 7569 7265  - reboot_require
│ │ │ +000f5540: 640a 2020 2d20 7265 7374 7269 6374 5f73  d.  - restrict_s
│ │ │ +000f5550: 7472 6174 6567 790a 0a2d 206e 616d 653a  trategy..- name:
│ │ │ +000f5560: 2043 6865 636b 2069 6620 7061 6765 5f61   Check if page_a
│ │ │ +000f5570: 6c6c 6f63 2e73 6875 6666 6c65 2061 7267  lloc.shuffle arg
│ │ │ +000f5580: 756d 656e 7420 6973 2061 6c72 6561 6479  ument is already
│ │ │ +000f5590: 2070 7265 7365 6e74 0a20 2061 6e73 6962   present.  ansib
│ │ │ +000f55a0: 6c65 2e62 7569 6c74 696e 2e63 6f6d 6d61  le.builtin.comma
│ │ │ +000f55b0: 6e64 3a20 2f73 6269 6e2f 6772 7562 6279  nd: /sbin/grubby
│ │ │ +000f55c0: 202d 2d69 6e66 6f3d 414c 4c0a 2020 7265   --info=ALL.  re
│ │ │ +000f55d0: 6769 7374 6572 3a20 6772 7562 6279 5f69  gister: grubby_i
│ │ │ +000f55e0: 6e66 6f0a 2020 6368 6563 6b5f 6d6f 6465  nfo.  check_mode
│ │ │ +000f55f0: 3a20 6661 6c73 650a 2020 6368 616e 6765  : false.  change
│ │ │ +000f5600: 645f 7768 656e 3a20 6661 6c73 650a 2020  d_when: false.  
│ │ │ +000f5610: 6661 696c 6564 5f77 6865 6e3a 2066 616c  failed_when: fal
│ │ │ +000f5620: 7365 0a20 2077 6865 6e3a 2028 2022 6772  se.  when: ( "gr
│ │ │ +000f5630: 7562 322d 636f 6d6d 6f6e 2220 696e 2061  ub2-common" in a
│ │ │ +000f5640: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +000f5650: 6b61 6765 7320 616e 6420 226b 6572 6e65  kages and "kerne
│ │ │ +000f5660: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ +000f5670: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ +000f5680: 2029 0a20 2074 6167 733a 0a20 202d 2067   ).  tags:.  - g
│ │ │ +000f5690: 7275 6232 5f70 6167 655f 616c 6c6f 635f  rub2_page_alloc_
│ │ │ +000f56a0: 7368 7566 666c 655f 6172 6775 6d65 6e74  shuffle_argument
│ │ │ +000f56b0: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ +000f56c0: 696f 6e0a 2020 2d20 6d65 6469 756d 5f63  ion.  - medium_c
│ │ │ +000f56d0: 6f6d 706c 6578 6974 790a 2020 2d20 6d65  omplexity.  - me
│ │ │ +000f56e0: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ +000f56f0: 2d20 7265 626f 6f74 5f72 6571 7569 7265  - reboot_require
│ │ │ +000f5700: 640a 2020 2d20 7265 7374 7269 6374 5f73  d.  - restrict_s
│ │ │ +000f5710: 7472 6174 6567 790a 0a2d 206e 616d 653a  trategy..- name:
│ │ │ +000f5720: 2055 7064 6174 6520 6772 7562 2064 6566   Update grub def
│ │ │ +000f5730: 6175 6c74 7320 616e 6420 7468 6520 626f  aults and the bo
│ │ │ +000f5740: 6f74 6c6f 6164 6572 206d 656e 750a 2020  otloader menu.  
│ │ │ +000f5750: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ +000f5760: 636f 6d6d 616e 643a 202f 7362 696e 2f67  command: /sbin/g
│ │ │ +000f5770: 7275 6262 7920 2d2d 7570 6461 7465 2d6b  rubby --update-k
│ │ │ +000f5780: 6572 6e65 6c3d 414c 4c20 2d2d 6172 6773  ernel=ALL --args
│ │ │ +000f5790: 3d22 7061 6765 5f61 6c6c 6f63 2e73 6875  ="page_alloc.shu
│ │ │ +000f57a0: 6666 6c65 3d31 220a 2020 7768 656e 3a0a  ffle=1".  when:.
│ │ │ +000f57b0: 2020 2d20 2820 2267 7275 6232 2d63 6f6d    - ( "grub2-com
│ │ │ +000f57c0: 6d6f 6e22 2069 6e20 616e 7369 626c 655f  mon" in ansible_
│ │ │ +000f57d0: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ +000f57e0: 6e64 2022 6b65 726e 656c 2220 696e 2061  nd "kernel" in a
│ │ │ +000f57f0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +000f5800: 6b61 6765 730a 2020 2020 290a 2020 2d20  kages.    ).  - 
│ │ │ +000f5810: 2867 7275 6262 795f 696e 666f 2e73 7464  (grubby_info.std
│ │ │ +000f5820: 6f75 7420 6973 206e 6f74 2073 6561 7263  out is not searc
│ │ │ +000f5830: 6828 2770 6167 655f 616c 6c6f 632e 7368  h('page_alloc.sh
│ │ │ +000f5840: 7566 666c 653d 3127 2929 206f 7220 2828  uffle=1')) or ((
│ │ │ +000f5850: 6574 635f 6465 6661 756c 745f 6772 7562  etc_default_grub
│ │ │ +000f5860: 5b27 636f 6e74 656e 7427 5d0a 2020 2020  ['content'].    
│ │ │ +000f5870: 7c20 6236 3464 6563 6f64 6529 2069 7320  | b64decode) is 
│ │ │ +000f5880: 6e6f 7420 7365 6172 6368 2827 7061 6765  not search('page
│ │ │ +000f5890: 5f61 6c6c 6f63 2e73 6875 6666 6c65 3d31  _alloc.shuffle=1
│ │ │ +000f58a0: 2729 290a 2020 7461 6773 3a0a 2020 2d20  ')).  tags:.  - 
│ │ │ +000f58b0: 6772 7562 325f 7061 6765 5f61 6c6c 6f63  grub2_page_alloc
│ │ │ +000f58c0: 5f73 6875 6666 6c65 5f61 7267 756d 656e  _shuffle_argumen
│ │ │ +000f58d0: 740a 2020 2d20 6c6f 775f 6469 7372 7570  t.  - low_disrup
│ │ │ +000f58e0: 7469 6f6e 0a20 202d 206d 6564 6975 6d5f  tion.  - medium_
│ │ │ +000f58f0: 636f 6d70 6c65 7869 7479 0a20 202d 206d  complexity.  - m
│ │ │ +000f5900: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ +000f5910: 202d 2072 6562 6f6f 745f 7265 7175 6972   - reboot_requir
│ │ │ +000f5920: 6564 0a20 202d 2072 6573 7472 6963 745f  ed.  - restrict_
│ │ │ +000f5930: 7374 7261 7465 6779 0a3c 2f63 6f64 653e  strategy.
│ │ │ +000f5940: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ +000f59f0: 7469 6f6e 204f 5342 7569 6c64 2042 6c75 tion OSBuild Blu │ │ │ +000f5a00: 6570 7269 6e74 2073 6e69 7070 6574 20e2 eprint snippet . │ │ │ +000f5a10: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
<
│ │ │ +000f5a50: 636f 6465 3e5b 6375 7374 6f6d 697a 6174  code>[customizat
│ │ │ +000f5a60: 696f 6e73 2e6b 6572 6e65 6c5d 0a61 7070  ions.kernel].app
│ │ │ +000f5a70: 656e 6420 3d20 2270 6167 655f 616c 6c6f  end = "page_allo
│ │ │ +000f5a80: 632e 7368 7566 666c 653d 3122 0a3c 2f63  c.shuffle=1".
│ │ │ 000f5aa0: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 │ │ │ -000f68f0: 5265 6d65 6469 6174 696f 6e20 4f53 4275 Remediation OSBu │ │ │ -000f6900: 696c 6420 426c 7565 7072 696e 7420 736e ild Blueprint sn │ │ │ -000f6910: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
[cus
│ │ │ -000f6960: 746f 6d69 7a61 7469 6f6e 732e 6b65 726e  tomizations.kern
│ │ │ -000f6970: 656c 5d0a 6170 7065 6e64 203d 2022 7074  el].append = "pt
│ │ │ -000f6980: 693d 6f6e 220a 3c2f 636f 6465 3e3c 2f70  i=on".

Remediatio │ │ │ -000f6a40: 6e20 416e 7369 626c 6520 736e 6970 7065 n Ansible snippe │ │ │ -000f6a50: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ -000f6ad0: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ -000f6ae0: 793a 3c2f 7468 3e3c 7464 3e6d 6564 6975 y:mediu │ │ │ -000f6af0: 6d3c 2f74 643e 3c2f 7472 3e3c 7472 3e3c m< │ │ │ -000f6b00: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:low< │ │ │ -000f6b20: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>Rebo │ │ │ -000f6b30: 6f74 3a3c 2f74 683e 3c74 643e 7472 7565 ot:true │ │ │ -000f6b40: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ -000f6b60: 3c74 643e 7265 7374 7269 6374 3c2f 7464 restrict

- name: │ │ │ -000f6b90: 2047 6174 6865 7220 7468 6520 7061 636b Gather the pack │ │ │ -000f6ba0: 6167 6520 6661 6374 730a 2020 7061 636b age facts. pack │ │ │ -000f6bb0: 6167 655f 6661 6374 733a 0a20 2020 206d age_facts:. m │ │ │ -000f6bc0: 616e 6167 6572 3a20 6175 746f 0a20 2074 anager: auto. t │ │ │ -000f6bd0: 6167 733a 0a20 202d 204e 4953 542d 3830 ags:. - NIST-80 │ │ │ -000f6be0: 302d 3533 2d53 492d 3136 0a20 202d 2067 0-53-SI-16. - g │ │ │ -000f6bf0: 7275 6232 5f70 7469 5f61 7267 756d 656e rub2_pti_argumen │ │ │ -000f6c00: 740a 2020 2d20 6c6f 775f 6469 7372 7570 t. - low_disrup │ │ │ -000f6c10: 7469 6f6e 0a20 202d 206c 6f77 5f73 6576 tion. - low_sev │ │ │ -000f6c20: 6572 6974 790a 2020 2d20 6d65 6469 756d erity. - medium │ │ │ -000f6c30: 5f63 6f6d 706c 6578 6974 790a 2020 2d20 _complexity. - │ │ │ -000f6c40: 7265 626f 6f74 5f72 6571 7569 7265 640a reboot_required. │ │ │ -000f6c50: 2020 2d20 7265 7374 7269 6374 5f73 7472 - restrict_str │ │ │ -000f6c60: 6174 6567 790a 0a2d 206e 616d 653a 2043 ategy..- name: C │ │ │ -000f6c70: 6865 636b 2069 6620 7074 6920 6172 6775 heck if pti argu │ │ │ -000f6c80: 6d65 6e74 2069 7320 616c 7265 6164 7920 ment is already │ │ │ -000f6c90: 7072 6573 656e 7420 696e 202f 6574 632f present in /etc/ │ │ │ -000f6ca0: 6465 6661 756c 742f 6772 7562 0a20 2061 default/grub. a │ │ │ -000f6cb0: 6e73 6962 6c65 2e62 7569 6c74 696e 2e73 nsible.builtin.s │ │ │ -000f6cc0: 6c75 7270 3a0a 2020 2020 7372 633a 202f lurp:. src: / │ │ │ -000f6cd0: 6574 632f 6465 6661 756c 742f 6772 7562 etc/default/grub │ │ │ -000f6ce0: 0a20 2072 6567 6973 7465 723a 2065 7463 . register: etc │ │ │ -000f6cf0: 5f64 6566 6175 6c74 5f67 7275 620a 2020 _default_grub. │ │ │ -000f6d00: 7768 656e 3a20 2820 2267 7275 6232 2d63 when: ( "grub2-c │ │ │ -000f6d10: 6f6d 6d6f 6e22 2069 6e20 616e 7369 626c ommon" in ansibl │ │ │ -000f6d20: 655f 6661 6374 732e 7061 636b 6167 6573 e_facts.packages │ │ │ -000f6d30: 2061 6e64 2022 6b65 726e 656c 2220 696e and "kernel" in │ │ │ -000f6d40: 2061 6e73 6962 6c65 5f66 6163 7473 2e70 ansible_facts.p │ │ │ -000f6d50: 6163 6b61 6765 730a 2020 2020 290a 2020 ackages. ). │ │ │ -000f6d60: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38 tags:. - NIST-8 │ │ │ -000f6d70: 3030 2d35 332d 5349 2d31 360a 2020 2d20 00-53-SI-16. - │ │ │ -000f6d80: 6772 7562 325f 7074 695f 6172 6775 6d65 grub2_pti_argume │ │ │ -000f6d90: 6e74 0a20 202d 206c 6f77 5f64 6973 7275 nt. - low_disru │ │ │ -000f6da0: 7074 696f 6e0a 2020 2d20 6c6f 775f 7365 ption. - low_se │ │ │ -000f6db0: 7665 7269 7479 0a20 202d 206d 6564 6975 verity. - mediu │ │ │ -000f6dc0: 6d5f 636f 6d70 6c65 7869 7479 0a20 202d m_complexity. - │ │ │ -000f6dd0: 2072 6562 6f6f 745f 7265 7175 6972 6564 reboot_required │ │ │ -000f6de0: 0a20 202d 2072 6573 7472 6963 745f 7374 . - restrict_st │ │ │ -000f6df0: 7261 7465 6779 0a0a 2d20 6e61 6d65 3a20 rategy..- name: │ │ │ -000f6e00: 4368 6563 6b20 6966 2070 7469 2061 7267 Check if pti arg │ │ │ -000f6e10: 756d 656e 7420 6973 2061 6c72 6561 6479 ument is already │ │ │ -000f6e20: 2070 7265 7365 6e74 0a20 2061 6e73 6962 present. ansib │ │ │ -000f6e30: 6c65 2e62 7569 6c74 696e 2e63 6f6d 6d61 le.builtin.comma │ │ │ -000f6e40: 6e64 3a20 2f73 6269 6e2f 6772 7562 6279 nd: /sbin/grubby │ │ │ -000f6e50: 202d 2d69 6e66 6f3d 414c 4c0a 2020 7265 --info=ALL. re │ │ │ -000f6e60: 6769 7374 6572 3a20 6772 7562 6279 5f69 gister: grubby_i │ │ │ -000f6e70: 6e66 6f0a 2020 6368 6563 6b5f 6d6f 6465 nfo. check_mode │ │ │ -000f6e80: 3a20 6661 6c73 650a 2020 6368 616e 6765 : false. change │ │ │ -000f6e90: 645f 7768 656e 3a20 6661 6c73 650a 2020 d_when: false. │ │ │ -000f6ea0: 6661 696c 6564 5f77 6865 6e3a 2066 616c failed_when: fal │ │ │ -000f6eb0: 7365 0a20 2077 6865 6e3a 2028 2022 6772 se. when: ( "gr │ │ │ -000f6ec0: 7562 322d 636f 6d6d 6f6e 2220 696e 2061 ub2-common" in a │ │ │ -000f6ed0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163 nsible_facts.pac │ │ │ -000f6ee0: 6b61 6765 7320 616e 6420 226b 6572 6e65 kages and "kerne │ │ │ -000f6ef0: 6c22 2069 6e20 616e 7369 626c 655f 6661 l" in ansible_fa │ │ │ -000f6f00: 6374 732e 7061 636b 6167 6573 0a20 2020 cts.packages. │ │ │ -000f6f10: 2029 0a20 2074 6167 733a 0a20 202d 204e ). tags:. - N │ │ │ -000f6f20: 4953 542d 3830 302d 3533 2d53 492d 3136 IST-800-53-SI-16 │ │ │ -000f6f30: 0a20 202d 2067 7275 6232 5f70 7469 5f61 . - grub2_pti_a │ │ │ -000f6f40: 7267 756d 656e 740a 2020 2d20 6c6f 775f rgument. - low_ │ │ │ -000f6f50: 6469 7372 7570 7469 6f6e 0a20 202d 206c disruption. - l │ │ │ -000f6f60: 6f77 5f73 6576 6572 6974 790a 2020 2d20 ow_severity. - │ │ │ -000f6f70: 6d65 6469 756d 5f63 6f6d 706c 6578 6974 medium_complexit │ │ │ -000f6f80: 790a 2020 2d20 7265 626f 6f74 5f72 6571 y. - reboot_req │ │ │ -000f6f90: 7569 7265 640a 2020 2d20 7265 7374 7269 uired. - restri │ │ │ -000f6fa0: 6374 5f73 7472 6174 6567 790a 0a2d 206e ct_strategy..- n │ │ │ -000f6fb0: 616d 653a 2055 7064 6174 6520 6772 7562 ame: Update grub │ │ │ -000f6fc0: 2064 6566 6175 6c74 7320 616e 6420 7468 defaults and th │ │ │ -000f6fd0: 6520 626f 6f74 6c6f 6164 6572 206d 656e e bootloader men │ │ │ -000f6fe0: 750a 2020 616e 7369 626c 652e 6275 696c u. ansible.buil │ │ │ -000f6ff0: 7469 6e2e 636f 6d6d 616e 643a 202f 7362 tin.command: /sb │ │ │ -000f7000: 696e 2f67 7275 6262 7920 2d2d 7570 6461 in/grubby --upda │ │ │ -000f7010: 7465 2d6b 6572 6e65 6c3d 414c 4c20 2d2d te-kernel=ALL -- │ │ │ -000f7020: 6172 6773 3d22 7074 693d 6f6e 220a 2020 args="pti=on". │ │ │ -000f7030: 7768 656e 3a0a 2020 2d20 2820 2267 7275 when:. - ( "gru │ │ │ -000f7040: 6232 2d63 6f6d 6d6f 6e22 2069 6e20 616e b2-common" in an │ │ │ -000f7050: 7369 626c 655f 6661 6374 732e 7061 636b sible_facts.pack │ │ │ -000f7060: 6167 6573 2061 6e64 2022 6b65 726e 656c ages and "kernel │ │ │ -000f7070: 2220 696e 2061 6e73 6962 6c65 5f66 6163 " in ansible_fac │ │ │ -000f7080: 7473 2e70 6163 6b61 6765 730a 2020 2020 ts.packages. │ │ │ -000f7090: 290a 2020 2d20 2867 7275 6262 795f 696e ). - (grubby_in │ │ │ -000f70a0: 666f 2e73 7464 6f75 7420 6973 206e 6f74 fo.stdout is not │ │ │ -000f70b0: 2073 6561 7263 6828 2770 7469 3d6f 6e27 search('pti=on' │ │ │ -000f70c0: 2929 206f 7220 2828 6574 635f 6465 6661 )) or ((etc_defa │ │ │ -000f70d0: 756c 745f 6772 7562 5b27 636f 6e74 656e ult_grub['conten │ │ │ -000f70e0: 7427 5d0a 2020 2020 7c20 6236 3464 6563 t']. | b64dec │ │ │ -000f70f0: 6f64 6529 2069 7320 6e6f 7420 7365 6172 ode) is not sear │ │ │ -000f7100: 6368 2827 7074 693d 6f6e 2729 290a 2020 ch('pti=on')). │ │ │ -000f7110: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38 tags:. - NIST-8 │ │ │ -000f7120: 3030 2d35 332d 5349 2d31 360a 2020 2d20 00-53-SI-16. - │ │ │ -000f7130: 6772 7562 325f 7074 695f 6172 6775 6d65 grub2_pti_argume │ │ │ -000f7140: 6e74 0a20 202d 206c 6f77 5f64 6973 7275 nt. - low_disru │ │ │ -000f7150: 7074 696f 6e0a 2020 2d20 6c6f 775f 7365 ption. - low_se │ │ │ -000f7160: 7665 7269 7479 0a20 202d 206d 6564 6975 verity. - mediu │ │ │ -000f7170: 6d5f 636f 6d70 6c65 7869 7479 0a20 202d m_complexity. - │ │ │ -000f7180: 2072 6562 6f6f 745f 7265 7175 6972 6564 reboot_required │ │ │ -000f7190: 0a20 202d 2072 6573 7472 6963 745f 7374 . - restrict_st │ │ │ -000f71a0: 7261 7465 6779 0a3c 2f63 6f64 653e 3c2f rategy.

│ │ │ +000f69b0: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 < │ │ │ +000f6a00: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr> │ │ │ +000f6a30: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:medium
Dis │ │ │ +000f69c0: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:true
Stra │ │ │ +000f6a10: 7465 6779 3a3c 2f74 683e 3c74 643e 7265 tegy:re │ │ │ +000f6a20: 7374 7269 6374 3c2f 7464 3e3c 2f74 723e strict
- name: Gathe
│ │ │ +000f6a50: 7220 7468 6520 7061 636b 6167 6520 6661  r the package fa
│ │ │ +000f6a60: 6374 730a 2020 7061 636b 6167 655f 6661  cts.  package_fa
│ │ │ +000f6a70: 6374 733a 0a20 2020 206d 616e 6167 6572  cts:.    manager
│ │ │ +000f6a80: 3a20 6175 746f 0a20 2074 6167 733a 0a20  : auto.  tags:. 
│ │ │ +000f6a90: 202d 204e 4953 542d 3830 302d 3533 2d53   - NIST-800-53-S
│ │ │ +000f6aa0: 492d 3136 0a20 202d 2067 7275 6232 5f70  I-16.  - grub2_p
│ │ │ +000f6ab0: 7469 5f61 7267 756d 656e 740a 2020 2d20  ti_argument.  - 
│ │ │ +000f6ac0: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ +000f6ad0: 202d 206c 6f77 5f73 6576 6572 6974 790a   - low_severity.
│ │ │ +000f6ae0: 2020 2d20 6d65 6469 756d 5f63 6f6d 706c    - medium_compl
│ │ │ +000f6af0: 6578 6974 790a 2020 2d20 7265 626f 6f74  exity.  - reboot
│ │ │ +000f6b00: 5f72 6571 7569 7265 640a 2020 2d20 7265  _required.  - re
│ │ │ +000f6b10: 7374 7269 6374 5f73 7472 6174 6567 790a  strict_strategy.
│ │ │ +000f6b20: 0a2d 206e 616d 653a 2043 6865 636b 2069  .- name: Check i
│ │ │ +000f6b30: 6620 7074 6920 6172 6775 6d65 6e74 2069  f pti argument i
│ │ │ +000f6b40: 7320 616c 7265 6164 7920 7072 6573 656e  s already presen
│ │ │ +000f6b50: 7420 696e 202f 6574 632f 6465 6661 756c  t in /etc/defaul
│ │ │ +000f6b60: 742f 6772 7562 0a20 2061 6e73 6962 6c65  t/grub.  ansible
│ │ │ +000f6b70: 2e62 7569 6c74 696e 2e73 6c75 7270 3a0a  .builtin.slurp:.
│ │ │ +000f6b80: 2020 2020 7372 633a 202f 6574 632f 6465      src: /etc/de
│ │ │ +000f6b90: 6661 756c 742f 6772 7562 0a20 2072 6567  fault/grub.  reg
│ │ │ +000f6ba0: 6973 7465 723a 2065 7463 5f64 6566 6175  ister: etc_defau
│ │ │ +000f6bb0: 6c74 5f67 7275 620a 2020 7768 656e 3a20  lt_grub.  when: 
│ │ │ +000f6bc0: 2820 2267 7275 6232 2d63 6f6d 6d6f 6e22  ( "grub2-common"
│ │ │ +000f6bd0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +000f6be0: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ +000f6bf0: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ +000f6c00: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +000f6c10: 730a 2020 2020 290a 2020 7461 6773 3a0a  s.    ).  tags:.
│ │ │ +000f6c20: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +000f6c30: 5349 2d31 360a 2020 2d20 6772 7562 325f  SI-16.  - grub2_
│ │ │ +000f6c40: 7074 695f 6172 6775 6d65 6e74 0a20 202d  pti_argument.  -
│ │ │ +000f6c50: 206c 6f77 5f64 6973 7275 7074 696f 6e0a   low_disruption.
│ │ │ +000f6c60: 2020 2d20 6c6f 775f 7365 7665 7269 7479    - low_severity
│ │ │ +000f6c70: 0a20 202d 206d 6564 6975 6d5f 636f 6d70  .  - medium_comp
│ │ │ +000f6c80: 6c65 7869 7479 0a20 202d 2072 6562 6f6f  lexity.  - reboo
│ │ │ +000f6c90: 745f 7265 7175 6972 6564 0a20 202d 2072  t_required.  - r
│ │ │ +000f6ca0: 6573 7472 6963 745f 7374 7261 7465 6779  estrict_strategy
│ │ │ +000f6cb0: 0a0a 2d20 6e61 6d65 3a20 4368 6563 6b20  ..- name: Check 
│ │ │ +000f6cc0: 6966 2070 7469 2061 7267 756d 656e 7420  if pti argument 
│ │ │ +000f6cd0: 6973 2061 6c72 6561 6479 2070 7265 7365  is already prese
│ │ │ +000f6ce0: 6e74 0a20 2061 6e73 6962 6c65 2e62 7569  nt.  ansible.bui
│ │ │ +000f6cf0: 6c74 696e 2e63 6f6d 6d61 6e64 3a20 2f73  ltin.command: /s
│ │ │ +000f6d00: 6269 6e2f 6772 7562 6279 202d 2d69 6e66  bin/grubby --inf
│ │ │ +000f6d10: 6f3d 414c 4c0a 2020 7265 6769 7374 6572  o=ALL.  register
│ │ │ +000f6d20: 3a20 6772 7562 6279 5f69 6e66 6f0a 2020  : grubby_info.  
│ │ │ +000f6d30: 6368 6563 6b5f 6d6f 6465 3a20 6661 6c73  check_mode: fals
│ │ │ +000f6d40: 650a 2020 6368 616e 6765 645f 7768 656e  e.  changed_when
│ │ │ +000f6d50: 3a20 6661 6c73 650a 2020 6661 696c 6564  : false.  failed
│ │ │ +000f6d60: 5f77 6865 6e3a 2066 616c 7365 0a20 2077  _when: false.  w
│ │ │ +000f6d70: 6865 6e3a 2028 2022 6772 7562 322d 636f  hen: ( "grub2-co
│ │ │ +000f6d80: 6d6d 6f6e 2220 696e 2061 6e73 6962 6c65  mmon" in ansible
│ │ │ +000f6d90: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ +000f6da0: 616e 6420 226b 6572 6e65 6c22 2069 6e20  and "kernel" in 
│ │ │ +000f6db0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +000f6dc0: 636b 6167 6573 0a20 2020 2029 0a20 2074  ckages.    ).  t
│ │ │ +000f6dd0: 6167 733a 0a20 202d 204e 4953 542d 3830  ags:.  - NIST-80
│ │ │ +000f6de0: 302d 3533 2d53 492d 3136 0a20 202d 2067  0-53-SI-16.  - g
│ │ │ +000f6df0: 7275 6232 5f70 7469 5f61 7267 756d 656e  rub2_pti_argumen
│ │ │ +000f6e00: 740a 2020 2d20 6c6f 775f 6469 7372 7570  t.  - low_disrup
│ │ │ +000f6e10: 7469 6f6e 0a20 202d 206c 6f77 5f73 6576  tion.  - low_sev
│ │ │ +000f6e20: 6572 6974 790a 2020 2d20 6d65 6469 756d  erity.  - medium
│ │ │ +000f6e30: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +000f6e40: 7265 626f 6f74 5f72 6571 7569 7265 640a  reboot_required.
│ │ │ +000f6e50: 2020 2d20 7265 7374 7269 6374 5f73 7472    - restrict_str
│ │ │ +000f6e60: 6174 6567 790a 0a2d 206e 616d 653a 2055  ategy..- name: U
│ │ │ +000f6e70: 7064 6174 6520 6772 7562 2064 6566 6175  pdate grub defau
│ │ │ +000f6e80: 6c74 7320 616e 6420 7468 6520 626f 6f74  lts and the boot
│ │ │ +000f6e90: 6c6f 6164 6572 206d 656e 750a 2020 616e  loader menu.  an
│ │ │ +000f6ea0: 7369 626c 652e 6275 696c 7469 6e2e 636f  sible.builtin.co
│ │ │ +000f6eb0: 6d6d 616e 643a 202f 7362 696e 2f67 7275  mmand: /sbin/gru
│ │ │ +000f6ec0: 6262 7920 2d2d 7570 6461 7465 2d6b 6572  bby --update-ker
│ │ │ +000f6ed0: 6e65 6c3d 414c 4c20 2d2d 6172 6773 3d22  nel=ALL --args="
│ │ │ +000f6ee0: 7074 693d 6f6e 220a 2020 7768 656e 3a0a  pti=on".  when:.
│ │ │ +000f6ef0: 2020 2d20 2820 2267 7275 6232 2d63 6f6d    - ( "grub2-com
│ │ │ +000f6f00: 6d6f 6e22 2069 6e20 616e 7369 626c 655f  mon" in ansible_
│ │ │ +000f6f10: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ +000f6f20: 6e64 2022 6b65 726e 656c 2220 696e 2061  nd "kernel" in a
│ │ │ +000f6f30: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +000f6f40: 6b61 6765 730a 2020 2020 290a 2020 2d20  kages.    ).  - 
│ │ │ +000f6f50: 2867 7275 6262 795f 696e 666f 2e73 7464  (grubby_info.std
│ │ │ +000f6f60: 6f75 7420 6973 206e 6f74 2073 6561 7263  out is not searc
│ │ │ +000f6f70: 6828 2770 7469 3d6f 6e27 2929 206f 7220  h('pti=on')) or 
│ │ │ +000f6f80: 2828 6574 635f 6465 6661 756c 745f 6772  ((etc_default_gr
│ │ │ +000f6f90: 7562 5b27 636f 6e74 656e 7427 5d0a 2020  ub['content'].  
│ │ │ +000f6fa0: 2020 7c20 6236 3464 6563 6f64 6529 2069    | b64decode) i
│ │ │ +000f6fb0: 7320 6e6f 7420 7365 6172 6368 2827 7074  s not search('pt
│ │ │ +000f6fc0: 693d 6f6e 2729 290a 2020 7461 6773 3a0a  i=on')).  tags:.
│ │ │ +000f6fd0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +000f6fe0: 5349 2d31 360a 2020 2d20 6772 7562 325f  SI-16.  - grub2_
│ │ │ +000f6ff0: 7074 695f 6172 6775 6d65 6e74 0a20 202d  pti_argument.  -
│ │ │ +000f7000: 206c 6f77 5f64 6973 7275 7074 696f 6e0a   low_disruption.
│ │ │ +000f7010: 2020 2d20 6c6f 775f 7365 7665 7269 7479    - low_severity
│ │ │ +000f7020: 0a20 202d 206d 6564 6975 6d5f 636f 6d70  .  - medium_comp
│ │ │ +000f7030: 6c65 7869 7479 0a20 202d 2072 6562 6f6f  lexity.  - reboo
│ │ │ +000f7040: 745f 7265 7175 6972 6564 0a20 202d 2072  t_required.  - r
│ │ │ +000f7050: 6573 7472 6963 745f 7374 7261 7465 6779  estrict_strategy
│ │ │ +000f7060: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation OSB │ │ │ +000f7120: 7569 6c64 2042 6c75 6570 7269 6e74 2073 uild Blueprint s │ │ │ +000f7130: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
[cu
│ │ │ +000f7180: 7374 6f6d 697a 6174 696f 6e73 2e6b 6572  stomizations.ker
│ │ │ +000f7190: 6e65 6c5d 0a61 7070 656e 6420 3d20 2270  nel].append = "p
│ │ │ +000f71a0: 7469 3d6f 6e22 0a3c 2f63 6f64 653e 3c2f  ti=on".
Remed │ │ │ -000f8360: 6961 7469 6f6e 204f 5342 7569 6c64 2042 iation OSBuild B │ │ │ -000f8370: 6c75 6570 7269 6e74 2073 6e69 7070 6574 lueprint snippet │ │ │ -000f8380: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
[customiz
│ │ │ -000f83d0: 6174 696f 6e73 2e6b 6572 6e65 6c5d 0a61  ations.kernel].a
│ │ │ -000f83e0: 7070 656e 6420 3d20 2272 6e67 5f63 6f72  ppend = "rng_cor
│ │ │ -000f83f0: 652e 6465 6661 756c 745f 7175 616c 6974  e.default_qualit
│ │ │ -000f8400: 793d 3c61 6262 7220 7469 746c 653d 2266  y=500".
Remediati │ │ │ -000f8530: 6f6e 2041 6e73 6962 6c65 2073 6e69 7070 on Ansible snipp │ │ │ -000f8540: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ -000f85c0: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ -000f85d0: 7479 3a3c 2f74 683e 3c74 643e 6d65 6469 ty:medi │ │ │ -000f85e0: 756d 3c2f 7464 3e3c 2f74 723e 3c74 723e um │ │ │ -000f85f0: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c Disruption:< │ │ │ -000f8600: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low │ │ │ -000f8610: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 Reb │ │ │ -000f8620: 6f6f 743a 3c2f 7468 3e3c 7464 3e74 7275 oot:tru │ │ │ -000f8630: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e< │ │ │ -000f8640: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:restrict< │ │ │ -000f8670: 7072 653e 3c63 6f64 653e 2d20 6e61 6d65 pre>- name │ │ │ -000f8680: 3a20 4761 7468 6572 2074 6865 2070 6163 : Gather the pac │ │ │ -000f8690: 6b61 6765 2066 6163 7473 0a20 2070 6163 kage facts. pac │ │ │ -000f86a0: 6b61 6765 5f66 6163 7473 3a0a 2020 2020 kage_facts:. │ │ │ -000f86b0: 6d61 6e61 6765 723a 2061 7574 6f0a 2020 manager: auto. │ │ │ -000f86c0: 7461 6773 3a0a 2020 2d20 6772 7562 325f tags:. - grub2_ │ │ │ -000f86d0: 726e 675f 636f 7265 5f64 6566 6175 6c74 rng_core_default │ │ │ -000f86e0: 5f71 7561 6c69 7479 5f61 7267 756d 656e _quality_argumen │ │ │ -000f86f0: 740a 2020 2d20 6c6f 775f 6469 7372 7570 t. - low_disrup │ │ │ -000f8700: 7469 6f6e 0a20 202d 206c 6f77 5f73 6576 tion. - low_sev │ │ │ -000f8710: 6572 6974 790a 2020 2d20 6d65 6469 756d erity. - medium │ │ │ -000f8720: 5f63 6f6d 706c 6578 6974 790a 2020 2d20 _complexity. - │ │ │ -000f8730: 7265 626f 6f74 5f72 6571 7569 7265 640a reboot_required. │ │ │ -000f8740: 2020 2d20 7265 7374 7269 6374 5f73 7472 - restrict_str │ │ │ -000f8750: 6174 6567 790a 2d20 6e61 6d65 3a20 5843 ategy.- name: XC │ │ │ -000f8760: 4344 4620 5661 6c75 6520 7661 725f 726e CDF Value var_rn │ │ │ -000f8770: 675f 636f 7265 5f64 6566 6175 6c74 5f71 g_core_default_q │ │ │ -000f8780: 7561 6c69 7479 2023 2070 726f 6d6f 7465 uality # promote │ │ │ -000f8790: 2074 6f20 7661 7269 6162 6c65 0a20 2073 to variable. s │ │ │ -000f87a0: 6574 5f66 6163 743a 0a20 2020 2076 6172 et_fact:. var │ │ │ -000f87b0: 5f72 6e67 5f63 6f72 655f 6465 6661 756c _rng_core_defaul │ │ │ -000f87c0: 745f 7175 616c 6974 793a 2021 2173 7472 t_quality: !!str │ │ │ -000f87d0: 203c 6162 6272 2074 6974 6c65 3d22 6672 500. tags:. │ │ │ -000f8850: 202d 2061 6c77 6179 730a 0a2d 206e 616d - always..- nam │ │ │ -000f8860: 653a 2043 6865 636b 2069 6620 726e 675f e: Check if rng_ │ │ │ -000f8870: 636f 7265 2e64 6566 6175 6c74 5f71 7561 core.default_qua │ │ │ -000f8880: 6c69 7479 2061 7267 756d 656e 7420 6973 lity argument is │ │ │ -000f8890: 2061 6c72 6561 6479 2070 7265 7365 6e74 already present │ │ │ -000f88a0: 2069 6e20 2f65 7463 2f64 6566 6175 6c74 in /etc/default │ │ │ -000f88b0: 2f67 7275 620a 2020 616e 7369 626c 652e /grub. ansible. │ │ │ -000f88c0: 6275 696c 7469 6e2e 736c 7572 703a 0a20 builtin.slurp:. │ │ │ -000f88d0: 2020 2073 7263 3a20 2f65 7463 2f64 6566 src: /etc/def │ │ │ -000f88e0: 6175 6c74 2f67 7275 620a 2020 7265 6769 ault/grub. regi │ │ │ -000f88f0: 7374 6572 3a20 6574 635f 6465 6661 756c ster: etc_defaul │ │ │ -000f8900: 745f 6772 7562 0a20 2077 6865 6e3a 2028 t_grub. when: ( │ │ │ -000f8910: 2022 6772 7562 322d 636f 6d6d 6f6e 2220 "grub2-common" │ │ │ -000f8920: 696e 2061 6e73 6962 6c65 5f66 6163 7473 in ansible_facts │ │ │ -000f8930: 2e70 6163 6b61 6765 7320 616e 6420 226b .packages and "k │ │ │ -000f8940: 6572 6e65 6c22 2069 6e20 616e 7369 626c ernel" in ansibl │ │ │ -000f8950: 655f 6661 6374 732e 7061 636b 6167 6573 e_facts.packages │ │ │ -000f8960: 0a20 2020 2029 0a20 2074 6167 733a 0a20 . ). tags:. │ │ │ -000f8970: 202d 2067 7275 6232 5f72 6e67 5f63 6f72 - grub2_rng_cor │ │ │ -000f8980: 655f 6465 6661 756c 745f 7175 616c 6974 e_default_qualit │ │ │ -000f8990: 795f 6172 6775 6d65 6e74 0a20 202d 206c y_argument. - l │ │ │ -000f89a0: 6f77 5f64 6973 7275 7074 696f 6e0a 2020 ow_disruption. │ │ │ -000f89b0: 2d20 6c6f 775f 7365 7665 7269 7479 0a20 - low_severity. │ │ │ -000f89c0: 202d 206d 6564 6975 6d5f 636f 6d70 6c65 - medium_comple │ │ │ -000f89d0: 7869 7479 0a20 202d 2072 6562 6f6f 745f xity. - reboot_ │ │ │ -000f89e0: 7265 7175 6972 6564 0a20 202d 2072 6573 required. - res │ │ │ -000f89f0: 7472 6963 745f 7374 7261 7465 6779 0a0a trict_strategy.. │ │ │ -000f8a00: 2d20 6e61 6d65 3a20 4368 6563 6b20 6966 - name: Check if │ │ │ -000f8a10: 2072 6e67 5f63 6f72 652e 6465 6661 756c rng_core.defaul │ │ │ -000f8a20: 745f 7175 616c 6974 7920 6172 6775 6d65 t_quality argume │ │ │ -000f8a30: 6e74 2069 7320 616c 7265 6164 7920 7072 nt is already pr │ │ │ -000f8a40: 6573 656e 740a 2020 616e 7369 626c 652e esent. ansible. │ │ │ -000f8a50: 6275 696c 7469 6e2e 636f 6d6d 616e 643a builtin.command: │ │ │ -000f8a60: 202f 7362 696e 2f67 7275 6262 7920 2d2d /sbin/grubby -- │ │ │ -000f8a70: 696e 666f 3d41 4c4c 0a20 2072 6567 6973 info=ALL. regis │ │ │ -000f8a80: 7465 723a 2067 7275 6262 795f 696e 666f ter: grubby_info │ │ │ -000f8a90: 0a20 2063 6865 636b 5f6d 6f64 653a 2066 . check_mode: f │ │ │ -000f8aa0: 616c 7365 0a20 2063 6861 6e67 6564 5f77 alse. changed_w │ │ │ -000f8ab0: 6865 6e3a 2066 616c 7365 0a20 2066 6169 hen: false. fai │ │ │ -000f8ac0: 6c65 645f 7768 656e 3a20 6661 6c73 650a led_when: false. │ │ │ -000f8ad0: 2020 7768 656e 3a20 2820 2267 7275 6232 when: ( "grub2 │ │ │ -000f8ae0: 2d63 6f6d 6d6f 6e22 2069 6e20 616e 7369 -common" in ansi │ │ │ -000f8af0: 626c 655f 6661 6374 732e 7061 636b 6167 ble_facts.packag │ │ │ -000f8b00: 6573 2061 6e64 2022 6b65 726e 656c 2220 es and "kernel" │ │ │ -000f8b10: 696e 2061 6e73 6962 6c65 5f66 6163 7473 in ansible_facts │ │ │ -000f8b20: 2e70 6163 6b61 6765 730a 2020 2020 290a .packages. ). │ │ │ -000f8b30: 2020 7461 6773 3a0a 2020 2d20 6772 7562 tags:. - grub │ │ │ -000f8b40: 325f 726e 675f 636f 7265 5f64 6566 6175 2_rng_core_defau │ │ │ -000f8b50: 6c74 5f71 7561 6c69 7479 5f61 7267 756d lt_quality_argum │ │ │ -000f8b60: 656e 740a 2020 2d20 6c6f 775f 6469 7372 ent. - low_disr │ │ │ -000f8b70: 7570 7469 6f6e 0a20 202d 206c 6f77 5f73 uption. - low_s │ │ │ -000f8b80: 6576 6572 6974 790a 2020 2d20 6d65 6469 everity. - medi │ │ │ -000f8b90: 756d 5f63 6f6d 706c 6578 6974 790a 2020 um_complexity. │ │ │ -000f8ba0: 2d20 7265 626f 6f74 5f72 6571 7569 7265 - reboot_require │ │ │ -000f8bb0: 640a 2020 2d20 7265 7374 7269 6374 5f73 d. - restrict_s │ │ │ -000f8bc0: 7472 6174 6567 790a 0a2d 206e 616d 653a trategy..- name: │ │ │ -000f8bd0: 2055 7064 6174 6520 6772 7562 2064 6566 Update grub def │ │ │ -000f8be0: 6175 6c74 7320 616e 6420 7468 6520 626f aults and the bo │ │ │ -000f8bf0: 6f74 6c6f 6164 6572 206d 656e 750a 2020 otloader menu. │ │ │ -000f8c00: 616e 7369 626c 652e 6275 696c 7469 6e2e ansible.builtin. │ │ │ -000f8c10: 636f 6d6d 616e 643a 202f 7362 696e 2f67 command: /sbin/g │ │ │ -000f8c20: 7275 6262 7920 2d2d 7570 6461 7465 2d6b rubby --update-k │ │ │ -000f8c30: 6572 6e65 6c3d 414c 4c20 2d2d 6172 6773 ernel=ALL --args │ │ │ -000f8c40: 3d22 726e 675f 636f 7265 2e64 6566 6175 ="rng_core.defau │ │ │ -000f8c50: 6c74 5f71 7561 6c69 7479 3d7b 7b0a 2020 lt_quality={{. │ │ │ -000f8c60: 2020 7661 725f 726e 675f 636f 7265 5f64 var_rng_core_d │ │ │ -000f8c70: 6566 6175 6c74 5f71 7561 6c69 7479 207d efault_quality } │ │ │ -000f8c80: 7d22 0a20 2077 6865 6e3a 0a20 202d 2028 }". when:. - ( │ │ │ -000f8c90: 2022 6772 7562 322d 636f 6d6d 6f6e 2220 "grub2-common" │ │ │ -000f8ca0: 696e 2061 6e73 6962 6c65 5f66 6163 7473 in ansible_facts │ │ │ -000f8cb0: 2e70 6163 6b61 6765 7320 616e 6420 226b .packages and "k │ │ │ -000f8cc0: 6572 6e65 6c22 2069 6e20 616e 7369 626c ernel" in ansibl │ │ │ -000f8cd0: 655f 6661 6374 732e 7061 636b 6167 6573 e_facts.packages │ │ │ -000f8ce0: 0a20 2020 2029 0a20 202d 2028 6772 7562 . ). - (grub │ │ │ -000f8cf0: 6279 5f69 6e66 6f2e 7374 646f 7574 2069 by_info.stdout i │ │ │ -000f8d00: 7320 6e6f 7420 7365 6172 6368 2827 726e s not search('rn │ │ │ -000f8d10: 675f 636f 7265 2e64 6566 6175 6c74 5f71 g_core.default_q │ │ │ -000f8d20: 7561 6c69 7479 3d27 207e 2076 6172 5f72 uality=' ~ var_r │ │ │ -000f8d30: 6e67 5f63 6f72 655f 6465 6661 756c 745f ng_core_default_ │ │ │ -000f8d40: 7175 616c 6974 7929 290a 2020 2020 6f72 quality)). or │ │ │ -000f8d50: 2028 2865 7463 5f64 6566 6175 6c74 5f67 ((etc_default_g │ │ │ -000f8d60: 7275 625b 2763 6f6e 7465 6e74 275d 207c rub['content'] | │ │ │ -000f8d70: 2062 3634 6465 636f 6465 2920 6973 206e b64decode) is n │ │ │ -000f8d80: 6f74 2073 6561 7263 6828 2772 6e67 5f63 ot search('rng_c │ │ │ -000f8d90: 6f72 652e 6465 6661 756c 745f 7175 616c ore.default_qual │ │ │ -000f8da0: 6974 793d 270a 2020 2020 7e20 7661 725f ity='. ~ var_ │ │ │ -000f8db0: 726e 675f 636f 7265 5f64 6566 6175 6c74 rng_core_default │ │ │ -000f8dc0: 5f71 7561 6c69 7479 2929 0a20 2074 6167 _quality)). tag │ │ │ -000f8dd0: 733a 0a20 202d 2067 7275 6232 5f72 6e67 s:. - grub2_rng │ │ │ -000f8de0: 5f63 6f72 655f 6465 6661 756c 745f 7175 _core_default_qu │ │ │ -000f8df0: 616c 6974 795f 6172 6775 6d65 6e74 0a20 ality_argument. │ │ │ -000f8e00: 202d 206c 6f77 5f64 6973 7275 7074 696f - low_disruptio │ │ │ -000f8e10: 6e0a 2020 2d20 6c6f 775f 7365 7665 7269 n. - low_severi │ │ │ -000f8e20: 7479 0a20 202d 206d 6564 6975 6d5f 636f ty. - medium_co │ │ │ -000f8e30: 6d70 6c65 7869 7479 0a20 202d 2072 6562 mplexity. - reb │ │ │ -000f8e40: 6f6f 745f 7265 7175 6972 6564 0a20 202d oot_required. - │ │ │ -000f8e50: 2072 6573 7472 6963 745f 7374 7261 7465 restrict_strate │ │ │ -000f8e60: 6779 0a3c 2f63 6f64 653e 3c2f 7072 653e gy.
│ │ │ +000f8360: 6961 7469 6f6e 2041 6e73 6962 6c65 2073 iation Ansible s │ │ │ +000f8370: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
│ │ │ +000f8420: 3c74 723e 3c74 683e 4469 7372 7570 7469 < │ │ │ +000f8470: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
- 
│ │ │ +000f84b0: 6e61 6d65 3a20 4761 7468 6572 2074 6865  name: Gather the
│ │ │ +000f84c0: 2070 6163 6b61 6765 2066 6163 7473 0a20   package facts. 
│ │ │ +000f84d0: 2070 6163 6b61 6765 5f66 6163 7473 3a0a   package_facts:.
│ │ │ +000f84e0: 2020 2020 6d61 6e61 6765 723a 2061 7574      manager: aut
│ │ │ +000f84f0: 6f0a 2020 7461 6773 3a0a 2020 2d20 6772  o.  tags:.  - gr
│ │ │ +000f8500: 7562 325f 726e 675f 636f 7265 5f64 6566  ub2_rng_core_def
│ │ │ +000f8510: 6175 6c74 5f71 7561 6c69 7479 5f61 7267  ault_quality_arg
│ │ │ +000f8520: 756d 656e 740a 2020 2d20 6c6f 775f 6469  ument.  - low_di
│ │ │ +000f8530: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ +000f8540: 5f73 6576 6572 6974 790a 2020 2d20 6d65  _severity.  - me
│ │ │ +000f8550: 6469 756d 5f63 6f6d 706c 6578 6974 790a  dium_complexity.
│ │ │ +000f8560: 2020 2d20 7265 626f 6f74 5f72 6571 7569    - reboot_requi
│ │ │ +000f8570: 7265 640a 2020 2d20 7265 7374 7269 6374  red.  - restrict
│ │ │ +000f8580: 5f73 7472 6174 6567 790a 2d20 6e61 6d65  _strategy.- name
│ │ │ +000f8590: 3a20 5843 4344 4620 5661 6c75 6520 7661  : XCCDF Value va
│ │ │ +000f85a0: 725f 726e 675f 636f 7265 5f64 6566 6175  r_rng_core_defau
│ │ │ +000f85b0: 6c74 5f71 7561 6c69 7479 2023 2070 726f  lt_quality # pro
│ │ │ +000f85c0: 6d6f 7465 2074 6f20 7661 7269 6162 6c65  mote to variable
│ │ │ +000f85d0: 0a20 2073 6574 5f66 6163 743a 0a20 2020  .  set_fact:.   
│ │ │ +000f85e0: 2076 6172 5f72 6e67 5f63 6f72 655f 6465   var_rng_core_de
│ │ │ +000f85f0: 6661 756c 745f 7175 616c 6974 793a 2021  fault_quality: !
│ │ │ +000f8600: 2173 7472 203c 6162 6272 2074 6974 6c65  !str 50
│ │ │ +000f8670: 303c 2f61 6262 723e 0a20 2074 6167 733a  0.  tags:
│ │ │ +000f8680: 0a20 2020 202d 2061 6c77 6179 730a 0a2d  .    - always..-
│ │ │ +000f8690: 206e 616d 653a 2043 6865 636b 2069 6620   name: Check if 
│ │ │ +000f86a0: 726e 675f 636f 7265 2e64 6566 6175 6c74  rng_core.default
│ │ │ +000f86b0: 5f71 7561 6c69 7479 2061 7267 756d 656e  _quality argumen
│ │ │ +000f86c0: 7420 6973 2061 6c72 6561 6479 2070 7265  t is already pre
│ │ │ +000f86d0: 7365 6e74 2069 6e20 2f65 7463 2f64 6566  sent in /etc/def
│ │ │ +000f86e0: 6175 6c74 2f67 7275 620a 2020 616e 7369  ault/grub.  ansi
│ │ │ +000f86f0: 626c 652e 6275 696c 7469 6e2e 736c 7572  ble.builtin.slur
│ │ │ +000f8700: 703a 0a20 2020 2073 7263 3a20 2f65 7463  p:.    src: /etc
│ │ │ +000f8710: 2f64 6566 6175 6c74 2f67 7275 620a 2020  /default/grub.  
│ │ │ +000f8720: 7265 6769 7374 6572 3a20 6574 635f 6465  register: etc_de
│ │ │ +000f8730: 6661 756c 745f 6772 7562 0a20 2077 6865  fault_grub.  whe
│ │ │ +000f8740: 6e3a 2028 2022 6772 7562 322d 636f 6d6d  n: ( "grub2-comm
│ │ │ +000f8750: 6f6e 2220 696e 2061 6e73 6962 6c65 5f66  on" in ansible_f
│ │ │ +000f8760: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +000f8770: 6420 226b 6572 6e65 6c22 2069 6e20 616e  d "kernel" in an
│ │ │ +000f8780: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +000f8790: 6167 6573 0a20 2020 2029 0a20 2074 6167  ages.    ).  tag
│ │ │ +000f87a0: 733a 0a20 202d 2067 7275 6232 5f72 6e67  s:.  - grub2_rng
│ │ │ +000f87b0: 5f63 6f72 655f 6465 6661 756c 745f 7175  _core_default_qu
│ │ │ +000f87c0: 616c 6974 795f 6172 6775 6d65 6e74 0a20  ality_argument. 
│ │ │ +000f87d0: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ +000f87e0: 6e0a 2020 2d20 6c6f 775f 7365 7665 7269  n.  - low_severi
│ │ │ +000f87f0: 7479 0a20 202d 206d 6564 6975 6d5f 636f  ty.  - medium_co
│ │ │ +000f8800: 6d70 6c65 7869 7479 0a20 202d 2072 6562  mplexity.  - reb
│ │ │ +000f8810: 6f6f 745f 7265 7175 6972 6564 0a20 202d  oot_required.  -
│ │ │ +000f8820: 2072 6573 7472 6963 745f 7374 7261 7465   restrict_strate
│ │ │ +000f8830: 6779 0a0a 2d20 6e61 6d65 3a20 4368 6563  gy..- name: Chec
│ │ │ +000f8840: 6b20 6966 2072 6e67 5f63 6f72 652e 6465  k if rng_core.de
│ │ │ +000f8850: 6661 756c 745f 7175 616c 6974 7920 6172  fault_quality ar
│ │ │ +000f8860: 6775 6d65 6e74 2069 7320 616c 7265 6164  gument is alread
│ │ │ +000f8870: 7920 7072 6573 656e 740a 2020 616e 7369  y present.  ansi
│ │ │ +000f8880: 626c 652e 6275 696c 7469 6e2e 636f 6d6d  ble.builtin.comm
│ │ │ +000f8890: 616e 643a 202f 7362 696e 2f67 7275 6262  and: /sbin/grubb
│ │ │ +000f88a0: 7920 2d2d 696e 666f 3d41 4c4c 0a20 2072  y --info=ALL.  r
│ │ │ +000f88b0: 6567 6973 7465 723a 2067 7275 6262 795f  egister: grubby_
│ │ │ +000f88c0: 696e 666f 0a20 2063 6865 636b 5f6d 6f64  info.  check_mod
│ │ │ +000f88d0: 653a 2066 616c 7365 0a20 2063 6861 6e67  e: false.  chang
│ │ │ +000f88e0: 6564 5f77 6865 6e3a 2066 616c 7365 0a20  ed_when: false. 
│ │ │ +000f88f0: 2066 6169 6c65 645f 7768 656e 3a20 6661   failed_when: fa
│ │ │ +000f8900: 6c73 650a 2020 7768 656e 3a20 2820 2267  lse.  when: ( "g
│ │ │ +000f8910: 7275 6232 2d63 6f6d 6d6f 6e22 2069 6e20  rub2-common" in 
│ │ │ +000f8920: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +000f8930: 636b 6167 6573 2061 6e64 2022 6b65 726e  ckages and "kern
│ │ │ +000f8940: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ +000f8950: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ +000f8960: 2020 290a 2020 7461 6773 3a0a 2020 2d20    ).  tags:.  - 
│ │ │ +000f8970: 6772 7562 325f 726e 675f 636f 7265 5f64  grub2_rng_core_d
│ │ │ +000f8980: 6566 6175 6c74 5f71 7561 6c69 7479 5f61  efault_quality_a
│ │ │ +000f8990: 7267 756d 656e 740a 2020 2d20 6c6f 775f  rgument.  - low_
│ │ │ +000f89a0: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ +000f89b0: 6f77 5f73 6576 6572 6974 790a 2020 2d20  ow_severity.  - 
│ │ │ +000f89c0: 6d65 6469 756d 5f63 6f6d 706c 6578 6974  medium_complexit
│ │ │ +000f89d0: 790a 2020 2d20 7265 626f 6f74 5f72 6571  y.  - reboot_req
│ │ │ +000f89e0: 7569 7265 640a 2020 2d20 7265 7374 7269  uired.  - restri
│ │ │ +000f89f0: 6374 5f73 7472 6174 6567 790a 0a2d 206e  ct_strategy..- n
│ │ │ +000f8a00: 616d 653a 2055 7064 6174 6520 6772 7562  ame: Update grub
│ │ │ +000f8a10: 2064 6566 6175 6c74 7320 616e 6420 7468   defaults and th
│ │ │ +000f8a20: 6520 626f 6f74 6c6f 6164 6572 206d 656e  e bootloader men
│ │ │ +000f8a30: 750a 2020 616e 7369 626c 652e 6275 696c  u.  ansible.buil
│ │ │ +000f8a40: 7469 6e2e 636f 6d6d 616e 643a 202f 7362  tin.command: /sb
│ │ │ +000f8a50: 696e 2f67 7275 6262 7920 2d2d 7570 6461  in/grubby --upda
│ │ │ +000f8a60: 7465 2d6b 6572 6e65 6c3d 414c 4c20 2d2d  te-kernel=ALL --
│ │ │ +000f8a70: 6172 6773 3d22 726e 675f 636f 7265 2e64  args="rng_core.d
│ │ │ +000f8a80: 6566 6175 6c74 5f71 7561 6c69 7479 3d7b  efault_quality={
│ │ │ +000f8a90: 7b0a 2020 2020 7661 725f 726e 675f 636f  {.    var_rng_co
│ │ │ +000f8aa0: 7265 5f64 6566 6175 6c74 5f71 7561 6c69  re_default_quali
│ │ │ +000f8ab0: 7479 207d 7d22 0a20 2077 6865 6e3a 0a20  ty }}".  when:. 
│ │ │ +000f8ac0: 202d 2028 2022 6772 7562 322d 636f 6d6d   - ( "grub2-comm
│ │ │ +000f8ad0: 6f6e 2220 696e 2061 6e73 6962 6c65 5f66  on" in ansible_f
│ │ │ +000f8ae0: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +000f8af0: 6420 226b 6572 6e65 6c22 2069 6e20 616e  d "kernel" in an
│ │ │ +000f8b00: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +000f8b10: 6167 6573 0a20 2020 2029 0a20 202d 2028  ages.    ).  - (
│ │ │ +000f8b20: 6772 7562 6279 5f69 6e66 6f2e 7374 646f  grubby_info.stdo
│ │ │ +000f8b30: 7574 2069 7320 6e6f 7420 7365 6172 6368  ut is not search
│ │ │ +000f8b40: 2827 726e 675f 636f 7265 2e64 6566 6175  ('rng_core.defau
│ │ │ +000f8b50: 6c74 5f71 7561 6c69 7479 3d27 207e 2076  lt_quality=' ~ v
│ │ │ +000f8b60: 6172 5f72 6e67 5f63 6f72 655f 6465 6661  ar_rng_core_defa
│ │ │ +000f8b70: 756c 745f 7175 616c 6974 7929 290a 2020  ult_quality)).  
│ │ │ +000f8b80: 2020 6f72 2028 2865 7463 5f64 6566 6175    or ((etc_defau
│ │ │ +000f8b90: 6c74 5f67 7275 625b 2763 6f6e 7465 6e74  lt_grub['content
│ │ │ +000f8ba0: 275d 207c 2062 3634 6465 636f 6465 2920  '] | b64decode) 
│ │ │ +000f8bb0: 6973 206e 6f74 2073 6561 7263 6828 2772  is not search('r
│ │ │ +000f8bc0: 6e67 5f63 6f72 652e 6465 6661 756c 745f  ng_core.default_
│ │ │ +000f8bd0: 7175 616c 6974 793d 270a 2020 2020 7e20  quality='.    ~ 
│ │ │ +000f8be0: 7661 725f 726e 675f 636f 7265 5f64 6566  var_rng_core_def
│ │ │ +000f8bf0: 6175 6c74 5f71 7561 6c69 7479 2929 0a20  ault_quality)). 
│ │ │ +000f8c00: 2074 6167 733a 0a20 202d 2067 7275 6232   tags:.  - grub2
│ │ │ +000f8c10: 5f72 6e67 5f63 6f72 655f 6465 6661 756c  _rng_core_defaul
│ │ │ +000f8c20: 745f 7175 616c 6974 795f 6172 6775 6d65  t_quality_argume
│ │ │ +000f8c30: 6e74 0a20 202d 206c 6f77 5f64 6973 7275  nt.  - low_disru
│ │ │ +000f8c40: 7074 696f 6e0a 2020 2d20 6c6f 775f 7365  ption.  - low_se
│ │ │ +000f8c50: 7665 7269 7479 0a20 202d 206d 6564 6975  verity.  - mediu
│ │ │ +000f8c60: 6d5f 636f 6d70 6c65 7869 7479 0a20 202d  m_complexity.  -
│ │ │ +000f8c70: 2072 6562 6f6f 745f 7265 7175 6972 6564   reboot_required
│ │ │ +000f8c80: 0a20 202d 2072 6573 7472 6963 745f 7374  .  - restrict_st
│ │ │ +000f8c90: 7261 7465 6779 0a3c 2f63 6f64 653e 3c2f  rategy.Remediati
│ │ │ +000f8d50: 6f6e 204f 5342 7569 6c64 2042 6c75 6570  on OSBuild Bluep
│ │ │ +000f8d60: 7269 6e74 2073 6e69 7070 6574 20e2 87b2  rint snippet ...
│ │ │ +000f8d70: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61  
[customizatio
│ │ │ +000f8dc0: 6e73 2e6b 6572 6e65 6c5d 0a61 7070 656e  ns.kernel].appen
│ │ │ +000f8dd0: 6420 3d20 2272 6e67 5f63 6f72 652e 6465  d = "rng_core.de
│ │ │ +000f8de0: 6661 756c 745f 7175 616c 6974 793d 3c61  fault_quality=500".
│ │ │ 000f8e70: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation OSB │ │ │ -000f9fb0: 7569 6c64 2042 6c75 6570 7269 6e74 2073 uild Blueprint s │ │ │ -000f9fc0: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
[cu
│ │ │ -000fa010: 7374 6f6d 697a 6174 696f 6e73 2e6b 6572  stomizations.ker
│ │ │ -000fa020: 6e65 6c5d 0a61 7070 656e 6420 3d20 2273  nel].append = "s
│ │ │ -000fa030: 6c61 625f 6e6f 6d65 7267 653d 7965 7322  lab_nomerge=yes"
│ │ │ -000fa040: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation Ans │ │ │ -000fa100: 6962 6c65 2073 6e69 7070 6574 20e2 87b2 ible snippet ... │ │ │ -000fa110: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Comp │ │ │ +000f8400: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +000f8410: 6d65 6469 756d 3c2f 7464 3e3c 2f74 723e medium
Disrupti │ │ │ +000f8430: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ +000f8440: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:true
Strategy: │ │ │ +000f8480: 3c2f 7468 3e3c 7464 3e72 6573 7472 6963 restric │ │ │ +000f8490: 743c 2f74 643e 3c2f 7472 3e3c 2f74 6162 t
Complexity:low< │ │ │ -000fa1e0: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr> │ │ │ -000fa200: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472
medium
Di │ │ │ -000fa1c0: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:
Reboot:true
Str │ │ │ -000fa210: 6174 6567 793a 3c2f 7468 3e3c 7464 3e72 ategy:r │ │ │ -000fa220: 6573 7472 6963 743c 2f74 643e 3c2f 7472 estrict
- name: Gath
│ │ │ -000fa250: 6572 2074 6865 2070 6163 6b61 6765 2066  er the package f
│ │ │ -000fa260: 6163 7473 0a20 2070 6163 6b61 6765 5f66  acts.  package_f
│ │ │ -000fa270: 6163 7473 3a0a 2020 2020 6d61 6e61 6765  acts:.    manage
│ │ │ -000fa280: 723a 2061 7574 6f0a 2020 7461 6773 3a0a  r: auto.  tags:.
│ │ │ -000fa290: 2020 2d20 6772 7562 325f 736c 6162 5f6e    - grub2_slab_n
│ │ │ -000fa2a0: 6f6d 6572 6765 5f61 7267 756d 656e 740a  omerge_argument.
│ │ │ -000fa2b0: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ -000fa2c0: 6f6e 0a20 202d 206d 6564 6975 6d5f 636f  on.  - medium_co
│ │ │ -000fa2d0: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ -000fa2e0: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ -000fa2f0: 2072 6562 6f6f 745f 7265 7175 6972 6564   reboot_required
│ │ │ -000fa300: 0a20 202d 2072 6573 7472 6963 745f 7374  .  - restrict_st
│ │ │ -000fa310: 7261 7465 6779 0a0a 2d20 6e61 6d65 3a20  rategy..- name: 
│ │ │ -000fa320: 4368 6563 6b20 6966 2073 6c61 625f 6e6f  Check if slab_no
│ │ │ -000fa330: 6d65 7267 6520 6172 6775 6d65 6e74 2069  merge argument i
│ │ │ -000fa340: 7320 616c 7265 6164 7920 7072 6573 656e  s already presen
│ │ │ -000fa350: 7420 696e 202f 6574 632f 6465 6661 756c  t in /etc/defaul
│ │ │ -000fa360: 742f 6772 7562 0a20 2061 6e73 6962 6c65  t/grub.  ansible
│ │ │ -000fa370: 2e62 7569 6c74 696e 2e73 6c75 7270 3a0a  .builtin.slurp:.
│ │ │ -000fa380: 2020 2020 7372 633a 202f 6574 632f 6465      src: /etc/de
│ │ │ -000fa390: 6661 756c 742f 6772 7562 0a20 2072 6567  fault/grub.  reg
│ │ │ -000fa3a0: 6973 7465 723a 2065 7463 5f64 6566 6175  ister: etc_defau
│ │ │ -000fa3b0: 6c74 5f67 7275 620a 2020 7768 656e 3a20  lt_grub.  when: 
│ │ │ -000fa3c0: 2820 2267 7275 6232 2d63 6f6d 6d6f 6e22  ( "grub2-common"
│ │ │ -000fa3d0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -000fa3e0: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ -000fa3f0: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ -000fa400: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -000fa410: 730a 2020 2020 290a 2020 7461 6773 3a0a  s.    ).  tags:.
│ │ │ -000fa420: 2020 2d20 6772 7562 325f 736c 6162 5f6e    - grub2_slab_n
│ │ │ -000fa430: 6f6d 6572 6765 5f61 7267 756d 656e 740a  omerge_argument.
│ │ │ -000fa440: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ -000fa450: 6f6e 0a20 202d 206d 6564 6975 6d5f 636f  on.  - medium_co
│ │ │ -000fa460: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ -000fa470: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ -000fa480: 2072 6562 6f6f 745f 7265 7175 6972 6564   reboot_required
│ │ │ -000fa490: 0a20 202d 2072 6573 7472 6963 745f 7374  .  - restrict_st
│ │ │ -000fa4a0: 7261 7465 6779 0a0a 2d20 6e61 6d65 3a20  rategy..- name: 
│ │ │ -000fa4b0: 4368 6563 6b20 6966 2073 6c61 625f 6e6f  Check if slab_no
│ │ │ -000fa4c0: 6d65 7267 6520 6172 6775 6d65 6e74 2069  merge argument i
│ │ │ -000fa4d0: 7320 616c 7265 6164 7920 7072 6573 656e  s already presen
│ │ │ -000fa4e0: 740a 2020 616e 7369 626c 652e 6275 696c  t.  ansible.buil
│ │ │ -000fa4f0: 7469 6e2e 636f 6d6d 616e 643a 202f 7362  tin.command: /sb
│ │ │ -000fa500: 696e 2f67 7275 6262 7920 2d2d 696e 666f  in/grubby --info
│ │ │ -000fa510: 3d41 4c4c 0a20 2072 6567 6973 7465 723a  =ALL.  register:
│ │ │ -000fa520: 2067 7275 6262 795f 696e 666f 0a20 2063   grubby_info.  c
│ │ │ -000fa530: 6865 636b 5f6d 6f64 653a 2066 616c 7365  heck_mode: false
│ │ │ -000fa540: 0a20 2063 6861 6e67 6564 5f77 6865 6e3a  .  changed_when:
│ │ │ -000fa550: 2066 616c 7365 0a20 2066 6169 6c65 645f   false.  failed_
│ │ │ -000fa560: 7768 656e 3a20 6661 6c73 650a 2020 7768  when: false.  wh
│ │ │ -000fa570: 656e 3a20 2820 2267 7275 6232 2d63 6f6d  en: ( "grub2-com
│ │ │ -000fa580: 6d6f 6e22 2069 6e20 616e 7369 626c 655f  mon" in ansible_
│ │ │ -000fa590: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ -000fa5a0: 6e64 2022 6b65 726e 656c 2220 696e 2061  nd "kernel" in a
│ │ │ -000fa5b0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -000fa5c0: 6b61 6765 730a 2020 2020 290a 2020 7461  kages.    ).  ta
│ │ │ -000fa5d0: 6773 3a0a 2020 2d20 6772 7562 325f 736c  gs:.  - grub2_sl
│ │ │ -000fa5e0: 6162 5f6e 6f6d 6572 6765 5f61 7267 756d  ab_nomerge_argum
│ │ │ -000fa5f0: 656e 740a 2020 2d20 6c6f 775f 6469 7372  ent.  - low_disr
│ │ │ -000fa600: 7570 7469 6f6e 0a20 202d 206d 6564 6975  uption.  - mediu
│ │ │ -000fa610: 6d5f 636f 6d70 6c65 7869 7479 0a20 202d  m_complexity.  -
│ │ │ -000fa620: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ -000fa630: 0a20 202d 2072 6562 6f6f 745f 7265 7175  .  - reboot_requ
│ │ │ -000fa640: 6972 6564 0a20 202d 2072 6573 7472 6963  ired.  - restric
│ │ │ -000fa650: 745f 7374 7261 7465 6779 0a0a 2d20 6e61  t_strategy..- na
│ │ │ -000fa660: 6d65 3a20 5570 6461 7465 2067 7275 6220  me: Update grub 
│ │ │ -000fa670: 6465 6661 756c 7473 2061 6e64 2074 6865  defaults and the
│ │ │ -000fa680: 2062 6f6f 746c 6f61 6465 7220 6d65 6e75   bootloader menu
│ │ │ -000fa690: 0a20 2061 6e73 6962 6c65 2e62 7569 6c74  .  ansible.built
│ │ │ -000fa6a0: 696e 2e63 6f6d 6d61 6e64 3a20 2f73 6269  in.command: /sbi
│ │ │ -000fa6b0: 6e2f 6772 7562 6279 202d 2d75 7064 6174  n/grubby --updat
│ │ │ -000fa6c0: 652d 6b65 726e 656c 3d41 4c4c 202d 2d61  e-kernel=ALL --a
│ │ │ -000fa6d0: 7267 733d 2273 6c61 625f 6e6f 6d65 7267  rgs="slab_nomerg
│ │ │ -000fa6e0: 653d 7965 7322 0a20 2077 6865 6e3a 0a20  e=yes".  when:. 
│ │ │ -000fa6f0: 202d 2028 2022 6772 7562 322d 636f 6d6d   - ( "grub2-comm
│ │ │ -000fa700: 6f6e 2220 696e 2061 6e73 6962 6c65 5f66  on" in ansible_f
│ │ │ -000fa710: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ -000fa720: 6420 226b 6572 6e65 6c22 2069 6e20 616e  d "kernel" in an
│ │ │ -000fa730: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -000fa740: 6167 6573 0a20 2020 2029 0a20 202d 2028  ages.    ).  - (
│ │ │ -000fa750: 6772 7562 6279 5f69 6e66 6f2e 7374 646f  grubby_info.stdo
│ │ │ -000fa760: 7574 2069 7320 6e6f 7420 7365 6172 6368  ut is not search
│ │ │ -000fa770: 2827 736c 6162 5f6e 6f6d 6572 6765 3d79  ('slab_nomerge=y
│ │ │ -000fa780: 6573 2729 2920 6f72 2028 2865 7463 5f64  es')) or ((etc_d
│ │ │ -000fa790: 6566 6175 6c74 5f67 7275 625b 2763 6f6e  efault_grub['con
│ │ │ -000fa7a0: 7465 6e74 275d 0a20 2020 207c 2062 3634  tent'].    | b64
│ │ │ -000fa7b0: 6465 636f 6465 2920 6973 206e 6f74 2073  decode) is not s
│ │ │ -000fa7c0: 6561 7263 6828 2773 6c61 625f 6e6f 6d65  earch('slab_nome
│ │ │ -000fa7d0: 7267 653d 7965 7327 2929 0a20 2074 6167  rge=yes')).  tag
│ │ │ -000fa7e0: 733a 0a20 202d 2067 7275 6232 5f73 6c61  s:.  - grub2_sla
│ │ │ -000fa7f0: 625f 6e6f 6d65 7267 655f 6172 6775 6d65  b_nomerge_argume
│ │ │ -000fa800: 6e74 0a20 202d 206c 6f77 5f64 6973 7275  nt.  - low_disru
│ │ │ -000fa810: 7074 696f 6e0a 2020 2d20 6d65 6469 756d  ption.  - medium
│ │ │ -000fa820: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ -000fa830: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ -000fa840: 2020 2d20 7265 626f 6f74 5f72 6571 7569    - reboot_requi
│ │ │ -000fa850: 7265 640a 2020 2d20 7265 7374 7269 6374  red.  - restrict
│ │ │ -000fa860: 5f73 7472 6174 6567 790a 3c2f 636f 6465  _strategy.Remediation Ans
│ │ │ +000f9fb0: 6962 6c65 2073 6e69 7070 6574 20e2 87b2  ible snippet ...
│ │ │ +000f9fc0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61  
Complexity:low< │ │ │ +000fa090: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr> │ │ │ +000fa0b0: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472
medium
Di │ │ │ +000fa070: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:
Reboot:true
Str │ │ │ +000fa0c0: 6174 6567 793a 3c2f 7468 3e3c 7464 3e72 ategy:r │ │ │ +000fa0d0: 6573 7472 6963 743c 2f74 643e 3c2f 7472 estrict
- name: Gath
│ │ │ +000fa100: 6572 2074 6865 2070 6163 6b61 6765 2066  er the package f
│ │ │ +000fa110: 6163 7473 0a20 2070 6163 6b61 6765 5f66  acts.  package_f
│ │ │ +000fa120: 6163 7473 3a0a 2020 2020 6d61 6e61 6765  acts:.    manage
│ │ │ +000fa130: 723a 2061 7574 6f0a 2020 7461 6773 3a0a  r: auto.  tags:.
│ │ │ +000fa140: 2020 2d20 6772 7562 325f 736c 6162 5f6e    - grub2_slab_n
│ │ │ +000fa150: 6f6d 6572 6765 5f61 7267 756d 656e 740a  omerge_argument.
│ │ │ +000fa160: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ +000fa170: 6f6e 0a20 202d 206d 6564 6975 6d5f 636f  on.  - medium_co
│ │ │ +000fa180: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ +000fa190: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ +000fa1a0: 2072 6562 6f6f 745f 7265 7175 6972 6564   reboot_required
│ │ │ +000fa1b0: 0a20 202d 2072 6573 7472 6963 745f 7374  .  - restrict_st
│ │ │ +000fa1c0: 7261 7465 6779 0a0a 2d20 6e61 6d65 3a20  rategy..- name: 
│ │ │ +000fa1d0: 4368 6563 6b20 6966 2073 6c61 625f 6e6f  Check if slab_no
│ │ │ +000fa1e0: 6d65 7267 6520 6172 6775 6d65 6e74 2069  merge argument i
│ │ │ +000fa1f0: 7320 616c 7265 6164 7920 7072 6573 656e  s already presen
│ │ │ +000fa200: 7420 696e 202f 6574 632f 6465 6661 756c  t in /etc/defaul
│ │ │ +000fa210: 742f 6772 7562 0a20 2061 6e73 6962 6c65  t/grub.  ansible
│ │ │ +000fa220: 2e62 7569 6c74 696e 2e73 6c75 7270 3a0a  .builtin.slurp:.
│ │ │ +000fa230: 2020 2020 7372 633a 202f 6574 632f 6465      src: /etc/de
│ │ │ +000fa240: 6661 756c 742f 6772 7562 0a20 2072 6567  fault/grub.  reg
│ │ │ +000fa250: 6973 7465 723a 2065 7463 5f64 6566 6175  ister: etc_defau
│ │ │ +000fa260: 6c74 5f67 7275 620a 2020 7768 656e 3a20  lt_grub.  when: 
│ │ │ +000fa270: 2820 2267 7275 6232 2d63 6f6d 6d6f 6e22  ( "grub2-common"
│ │ │ +000fa280: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +000fa290: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ +000fa2a0: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ +000fa2b0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +000fa2c0: 730a 2020 2020 290a 2020 7461 6773 3a0a  s.    ).  tags:.
│ │ │ +000fa2d0: 2020 2d20 6772 7562 325f 736c 6162 5f6e    - grub2_slab_n
│ │ │ +000fa2e0: 6f6d 6572 6765 5f61 7267 756d 656e 740a  omerge_argument.
│ │ │ +000fa2f0: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ +000fa300: 6f6e 0a20 202d 206d 6564 6975 6d5f 636f  on.  - medium_co
│ │ │ +000fa310: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ +000fa320: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ +000fa330: 2072 6562 6f6f 745f 7265 7175 6972 6564   reboot_required
│ │ │ +000fa340: 0a20 202d 2072 6573 7472 6963 745f 7374  .  - restrict_st
│ │ │ +000fa350: 7261 7465 6779 0a0a 2d20 6e61 6d65 3a20  rategy..- name: 
│ │ │ +000fa360: 4368 6563 6b20 6966 2073 6c61 625f 6e6f  Check if slab_no
│ │ │ +000fa370: 6d65 7267 6520 6172 6775 6d65 6e74 2069  merge argument i
│ │ │ +000fa380: 7320 616c 7265 6164 7920 7072 6573 656e  s already presen
│ │ │ +000fa390: 740a 2020 616e 7369 626c 652e 6275 696c  t.  ansible.buil
│ │ │ +000fa3a0: 7469 6e2e 636f 6d6d 616e 643a 202f 7362  tin.command: /sb
│ │ │ +000fa3b0: 696e 2f67 7275 6262 7920 2d2d 696e 666f  in/grubby --info
│ │ │ +000fa3c0: 3d41 4c4c 0a20 2072 6567 6973 7465 723a  =ALL.  register:
│ │ │ +000fa3d0: 2067 7275 6262 795f 696e 666f 0a20 2063   grubby_info.  c
│ │ │ +000fa3e0: 6865 636b 5f6d 6f64 653a 2066 616c 7365  heck_mode: false
│ │ │ +000fa3f0: 0a20 2063 6861 6e67 6564 5f77 6865 6e3a  .  changed_when:
│ │ │ +000fa400: 2066 616c 7365 0a20 2066 6169 6c65 645f   false.  failed_
│ │ │ +000fa410: 7768 656e 3a20 6661 6c73 650a 2020 7768  when: false.  wh
│ │ │ +000fa420: 656e 3a20 2820 2267 7275 6232 2d63 6f6d  en: ( "grub2-com
│ │ │ +000fa430: 6d6f 6e22 2069 6e20 616e 7369 626c 655f  mon" in ansible_
│ │ │ +000fa440: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ +000fa450: 6e64 2022 6b65 726e 656c 2220 696e 2061  nd "kernel" in a
│ │ │ +000fa460: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +000fa470: 6b61 6765 730a 2020 2020 290a 2020 7461  kages.    ).  ta
│ │ │ +000fa480: 6773 3a0a 2020 2d20 6772 7562 325f 736c  gs:.  - grub2_sl
│ │ │ +000fa490: 6162 5f6e 6f6d 6572 6765 5f61 7267 756d  ab_nomerge_argum
│ │ │ +000fa4a0: 656e 740a 2020 2d20 6c6f 775f 6469 7372  ent.  - low_disr
│ │ │ +000fa4b0: 7570 7469 6f6e 0a20 202d 206d 6564 6975  uption.  - mediu
│ │ │ +000fa4c0: 6d5f 636f 6d70 6c65 7869 7479 0a20 202d  m_complexity.  -
│ │ │ +000fa4d0: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ +000fa4e0: 0a20 202d 2072 6562 6f6f 745f 7265 7175  .  - reboot_requ
│ │ │ +000fa4f0: 6972 6564 0a20 202d 2072 6573 7472 6963  ired.  - restric
│ │ │ +000fa500: 745f 7374 7261 7465 6779 0a0a 2d20 6e61  t_strategy..- na
│ │ │ +000fa510: 6d65 3a20 5570 6461 7465 2067 7275 6220  me: Update grub 
│ │ │ +000fa520: 6465 6661 756c 7473 2061 6e64 2074 6865  defaults and the
│ │ │ +000fa530: 2062 6f6f 746c 6f61 6465 7220 6d65 6e75   bootloader menu
│ │ │ +000fa540: 0a20 2061 6e73 6962 6c65 2e62 7569 6c74  .  ansible.built
│ │ │ +000fa550: 696e 2e63 6f6d 6d61 6e64 3a20 2f73 6269  in.command: /sbi
│ │ │ +000fa560: 6e2f 6772 7562 6279 202d 2d75 7064 6174  n/grubby --updat
│ │ │ +000fa570: 652d 6b65 726e 656c 3d41 4c4c 202d 2d61  e-kernel=ALL --a
│ │ │ +000fa580: 7267 733d 2273 6c61 625f 6e6f 6d65 7267  rgs="slab_nomerg
│ │ │ +000fa590: 653d 7965 7322 0a20 2077 6865 6e3a 0a20  e=yes".  when:. 
│ │ │ +000fa5a0: 202d 2028 2022 6772 7562 322d 636f 6d6d   - ( "grub2-comm
│ │ │ +000fa5b0: 6f6e 2220 696e 2061 6e73 6962 6c65 5f66  on" in ansible_f
│ │ │ +000fa5c0: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +000fa5d0: 6420 226b 6572 6e65 6c22 2069 6e20 616e  d "kernel" in an
│ │ │ +000fa5e0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +000fa5f0: 6167 6573 0a20 2020 2029 0a20 202d 2028  ages.    ).  - (
│ │ │ +000fa600: 6772 7562 6279 5f69 6e66 6f2e 7374 646f  grubby_info.stdo
│ │ │ +000fa610: 7574 2069 7320 6e6f 7420 7365 6172 6368  ut is not search
│ │ │ +000fa620: 2827 736c 6162 5f6e 6f6d 6572 6765 3d79  ('slab_nomerge=y
│ │ │ +000fa630: 6573 2729 2920 6f72 2028 2865 7463 5f64  es')) or ((etc_d
│ │ │ +000fa640: 6566 6175 6c74 5f67 7275 625b 2763 6f6e  efault_grub['con
│ │ │ +000fa650: 7465 6e74 275d 0a20 2020 207c 2062 3634  tent'].    | b64
│ │ │ +000fa660: 6465 636f 6465 2920 6973 206e 6f74 2073  decode) is not s
│ │ │ +000fa670: 6561 7263 6828 2773 6c61 625f 6e6f 6d65  earch('slab_nome
│ │ │ +000fa680: 7267 653d 7965 7327 2929 0a20 2074 6167  rge=yes')).  tag
│ │ │ +000fa690: 733a 0a20 202d 2067 7275 6232 5f73 6c61  s:.  - grub2_sla
│ │ │ +000fa6a0: 625f 6e6f 6d65 7267 655f 6172 6775 6d65  b_nomerge_argume
│ │ │ +000fa6b0: 6e74 0a20 202d 206c 6f77 5f64 6973 7275  nt.  - low_disru
│ │ │ +000fa6c0: 7074 696f 6e0a 2020 2d20 6d65 6469 756d  ption.  - medium
│ │ │ +000fa6d0: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +000fa6e0: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ +000fa6f0: 2020 2d20 7265 626f 6f74 5f72 6571 7569    - reboot_requi
│ │ │ +000fa700: 7265 640a 2020 2d20 7265 7374 7269 6374  red.  - restrict
│ │ │ +000fa710: 5f73 7472 6174 6567 790a 3c2f 636f 6465  _strategy.
Remedi │ │ │ +000fa7d0: 6174 696f 6e20 4f53 4275 696c 6420 426c ation OSBuild Bl │ │ │ +000fa7e0: 7565 7072 696e 7420 736e 6970 7065 7420 ueprint snippet │ │ │ +000fa7f0: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
│ │ │ +000fa830: 3c63 6f64 653e 5b63 7573 746f 6d69 7a61  [customiza
│ │ │ +000fa840: 7469 6f6e 732e 6b65 726e 656c 5d0a 6170  tions.kernel].ap
│ │ │ +000fa850: 7065 6e64 203d 2022 736c 6162 5f6e 6f6d  pend = "slab_nom
│ │ │ +000fa860: 6572 6765 3d79 6573 220a 3c2f 636f 6465  erge=yes".
Reme │ │ │ -000fbb10: 6469 6174 696f 6e20 4f53 4275 696c 6420 diation OSBuild │ │ │ -000fbb20: 426c 7565 7072 696e 7420 736e 6970 7065 Blueprint snippe │ │ │ -000fbb30: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
[customi │ │ │ -000fbb80: 7a61 7469 6f6e 732e 6b65 726e 656c 5d0a zations.kernel]. │ │ │ -000fbb90: 6170 7065 6e64 203d 2022 7370 6563 5f73 append = "spec_s │ │ │ -000fbba0: 746f 7265 5f62 7970 6173 735f 6469 7361 tore_bypass_disa │ │ │ -000fbbb0: 626c 653d 3c61 6262 7220 7469 746c 653d ble=seccomp".

Remediatio │ │ │ -000fbcf0: 6e20 416e 7369 626c 6520 736e 6970 7065 n Ansible snippe │ │ │ -000fbd00: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ -000fbd80: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ -000fbd90: 793a 3c2f 7468 3e3c 7464 3e6d 6564 6975 y:mediu │ │ │ -000fbda0: 6d3c 2f74 643e 3c2f 7472 3e3c 7472 3e3c m< │ │ │ -000fbdb0: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:low< │ │ │ -000fbdd0: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>Rebo │ │ │ -000fbde0: 6f74 3a3c 2f74 683e 3c74 643e 7472 7565 ot:true │ │ │ -000fbdf0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ -000fbe10: 3c74 643e 7265 7374 7269 6374 3c2f 7464 restrict

- name: │ │ │ -000fbe40: 2047 6174 6865 7220 7468 6520 7061 636b Gather the pack │ │ │ -000fbe50: 6167 6520 6661 6374 730a 2020 7061 636b age facts. pack │ │ │ -000fbe60: 6167 655f 6661 6374 733a 0a20 2020 206d age_facts:. m │ │ │ -000fbe70: 616e 6167 6572 3a20 6175 746f 0a20 2074 anager: auto. t │ │ │ -000fbe80: 6167 733a 0a20 202d 2067 7275 6232 5f73 ags:. - grub2_s │ │ │ -000fbe90: 7065 635f 7374 6f72 655f 6279 7061 7373 pec_store_bypass │ │ │ -000fbea0: 5f64 6973 6162 6c65 5f61 7267 756d 656e _disable_argumen │ │ │ -000fbeb0: 740a 2020 2d20 6c6f 775f 6469 7372 7570 t. - low_disrup │ │ │ -000fbec0: 7469 6f6e 0a20 202d 206d 6564 6975 6d5f tion. - medium_ │ │ │ -000fbed0: 636f 6d70 6c65 7869 7479 0a20 202d 206d complexity. - m │ │ │ -000fbee0: 6564 6975 6d5f 7365 7665 7269 7479 0a20 edium_severity. │ │ │ -000fbef0: 202d 2072 6562 6f6f 745f 7265 7175 6972 - reboot_requir │ │ │ -000fbf00: 6564 0a20 202d 2072 6573 7472 6963 745f ed. - restrict_ │ │ │ -000fbf10: 7374 7261 7465 6779 0a2d 206e 616d 653a strategy.- name: │ │ │ -000fbf20: 2058 4343 4446 2056 616c 7565 2076 6172 XCCDF Value var │ │ │ -000fbf30: 5f73 7065 635f 7374 6f72 655f 6279 7061 _spec_store_bypa │ │ │ -000fbf40: 7373 5f64 6973 6162 6c65 5f6f 7074 696f ss_disable_optio │ │ │ -000fbf50: 6e73 2023 2070 726f 6d6f 7465 2074 6f20 ns # promote to │ │ │ -000fbf60: 7661 7269 6162 6c65 0a20 2073 6574 5f66 variable. set_f │ │ │ -000fbf70: 6163 743a 0a20 2020 2076 6172 5f73 7065 act:. var_spe │ │ │ -000fbf80: 635f 7374 6f72 655f 6279 7061 7373 5f64 c_store_bypass_d │ │ │ -000fbf90: 6973 6162 6c65 5f6f 7074 696f 6e73 3a20 isable_options: │ │ │ -000fbfa0: 2121 7374 7220 3c61 6262 7220 7469 746c !!str seccomp< │ │ │ -000fc020: 2f61 6262 723e 0a20 2074 6167 733a 0a20 /abbr>. tags:. │ │ │ -000fc030: 2020 202d 2061 6c77 6179 730a 0a2d 206e - always..- n │ │ │ -000fc040: 616d 653a 2043 6865 636b 2069 6620 7370 ame: Check if sp │ │ │ -000fc050: 6563 5f73 746f 7265 5f62 7970 6173 735f ec_store_bypass_ │ │ │ -000fc060: 6469 7361 626c 6520 6172 6775 6d65 6e74 disable argument │ │ │ -000fc070: 2069 7320 616c 7265 6164 7920 7072 6573 is already pres │ │ │ -000fc080: 656e 7420 696e 202f 6574 632f 6465 6661 ent in /etc/defa │ │ │ -000fc090: 756c 742f 6772 7562 0a20 2061 6e73 6962 ult/grub. ansib │ │ │ -000fc0a0: 6c65 2e62 7569 6c74 696e 2e73 6c75 7270 le.builtin.slurp │ │ │ -000fc0b0: 3a0a 2020 2020 7372 633a 202f 6574 632f :. src: /etc/ │ │ │ -000fc0c0: 6465 6661 756c 742f 6772 7562 0a20 2072 default/grub. r │ │ │ -000fc0d0: 6567 6973 7465 723a 2065 7463 5f64 6566 egister: etc_def │ │ │ -000fc0e0: 6175 6c74 5f67 7275 620a 2020 7768 656e ault_grub. when │ │ │ -000fc0f0: 3a20 2820 2267 7275 6232 2d63 6f6d 6d6f : ( "grub2-commo │ │ │ -000fc100: 6e22 2069 6e20 616e 7369 626c 655f 6661 n" in ansible_fa │ │ │ -000fc110: 6374 732e 7061 636b 6167 6573 2061 6e64 cts.packages and │ │ │ -000fc120: 2022 6b65 726e 656c 2220 696e 2061 6e73 "kernel" in ans │ │ │ -000fc130: 6962 6c65 5f66 6163 7473 2e70 6163 6b61 ible_facts.packa │ │ │ -000fc140: 6765 730a 2020 2020 290a 2020 7461 6773 ges. ). tags │ │ │ -000fc150: 3a0a 2020 2d20 6772 7562 325f 7370 6563 :. - grub2_spec │ │ │ -000fc160: 5f73 746f 7265 5f62 7970 6173 735f 6469 _store_bypass_di │ │ │ -000fc170: 7361 626c 655f 6172 6775 6d65 6e74 0a20 sable_argument. │ │ │ -000fc180: 202d 206c 6f77 5f64 6973 7275 7074 696f - low_disruptio │ │ │ -000fc190: 6e0a 2020 2d20 6d65 6469 756d 5f63 6f6d n. - medium_com │ │ │ -000fc1a0: 706c 6578 6974 790a 2020 2d20 6d65 6469 plexity. - medi │ │ │ -000fc1b0: 756d 5f73 6576 6572 6974 790a 2020 2d20 um_severity. - │ │ │ -000fc1c0: 7265 626f 6f74 5f72 6571 7569 7265 640a reboot_required. │ │ │ -000fc1d0: 2020 2d20 7265 7374 7269 6374 5f73 7472 - restrict_str │ │ │ -000fc1e0: 6174 6567 790a 0a2d 206e 616d 653a 2043 ategy..- name: C │ │ │ -000fc1f0: 6865 636b 2069 6620 7370 6563 5f73 746f heck if spec_sto │ │ │ -000fc200: 7265 5f62 7970 6173 735f 6469 7361 626c re_bypass_disabl │ │ │ -000fc210: 6520 6172 6775 6d65 6e74 2069 7320 616c e argument is al │ │ │ -000fc220: 7265 6164 7920 7072 6573 656e 740a 2020 ready present. │ │ │ -000fc230: 616e 7369 626c 652e 6275 696c 7469 6e2e ansible.builtin. │ │ │ -000fc240: 636f 6d6d 616e 643a 202f 7362 696e 2f67 command: /sbin/g │ │ │ -000fc250: 7275 6262 7920 2d2d 696e 666f 3d41 4c4c rubby --info=ALL │ │ │ -000fc260: 0a20 2072 6567 6973 7465 723a 2067 7275 . register: gru │ │ │ -000fc270: 6262 795f 696e 666f 0a20 2063 6865 636b bby_info. check │ │ │ -000fc280: 5f6d 6f64 653a 2066 616c 7365 0a20 2063 _mode: false. c │ │ │ -000fc290: 6861 6e67 6564 5f77 6865 6e3a 2066 616c hanged_when: fal │ │ │ -000fc2a0: 7365 0a20 2066 6169 6c65 645f 7768 656e se. failed_when │ │ │ -000fc2b0: 3a20 6661 6c73 650a 2020 7768 656e 3a20 : false. when: │ │ │ -000fc2c0: 2820 2267 7275 6232 2d63 6f6d 6d6f 6e22 ( "grub2-common" │ │ │ -000fc2d0: 2069 6e20 616e 7369 626c 655f 6661 6374 in ansible_fact │ │ │ -000fc2e0: 732e 7061 636b 6167 6573 2061 6e64 2022 s.packages and " │ │ │ -000fc2f0: 6b65 726e 656c 2220 696e 2061 6e73 6962 kernel" in ansib │ │ │ -000fc300: 6c65 5f66 6163 7473 2e70 6163 6b61 6765 le_facts.package │ │ │ -000fc310: 730a 2020 2020 290a 2020 7461 6773 3a0a s. ). tags:. │ │ │ -000fc320: 2020 2d20 6772 7562 325f 7370 6563 5f73 - grub2_spec_s │ │ │ +000fbb10: 6469 6174 696f 6e20 416e 7369 626c 6520 diation Ansible │ │ │ +000fbb20: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ +000fbb30: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>

Reboot:true │ │ │ +000fbc20: 3c74 723e 3c74 683e 5374 7261 7465 6779
-
│ │ │ +000fbc60: 206e 616d 653a 2047 6174 6865 7220 7468   name: Gather th
│ │ │ +000fbc70: 6520 7061 636b 6167 6520 6661 6374 730a  e package facts.
│ │ │ +000fbc80: 2020 7061 636b 6167 655f 6661 6374 733a    package_facts:
│ │ │ +000fbc90: 0a20 2020 206d 616e 6167 6572 3a20 6175  .    manager: au
│ │ │ +000fbca0: 746f 0a20 2074 6167 733a 0a20 202d 2067  to.  tags:.  - g
│ │ │ +000fbcb0: 7275 6232 5f73 7065 635f 7374 6f72 655f  rub2_spec_store_
│ │ │ +000fbcc0: 6279 7061 7373 5f64 6973 6162 6c65 5f61  bypass_disable_a
│ │ │ +000fbcd0: 7267 756d 656e 740a 2020 2d20 6c6f 775f  rgument.  - low_
│ │ │ +000fbce0: 6469 7372 7570 7469 6f6e 0a20 202d 206d  disruption.  - m
│ │ │ +000fbcf0: 6564 6975 6d5f 636f 6d70 6c65 7869 7479  edium_complexity
│ │ │ +000fbd00: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ +000fbd10: 7269 7479 0a20 202d 2072 6562 6f6f 745f  rity.  - reboot_
│ │ │ +000fbd20: 7265 7175 6972 6564 0a20 202d 2072 6573  required.  - res
│ │ │ +000fbd30: 7472 6963 745f 7374 7261 7465 6779 0a2d  trict_strategy.-
│ │ │ +000fbd40: 206e 616d 653a 2058 4343 4446 2056 616c   name: XCCDF Val
│ │ │ +000fbd50: 7565 2076 6172 5f73 7065 635f 7374 6f72  ue var_spec_stor
│ │ │ +000fbd60: 655f 6279 7061 7373 5f64 6973 6162 6c65  e_bypass_disable
│ │ │ +000fbd70: 5f6f 7074 696f 6e73 2023 2070 726f 6d6f  _options # promo
│ │ │ +000fbd80: 7465 2074 6f20 7661 7269 6162 6c65 0a20  te to variable. 
│ │ │ +000fbd90: 2073 6574 5f66 6163 743a 0a20 2020 2076   set_fact:.    v
│ │ │ +000fbda0: 6172 5f73 7065 635f 7374 6f72 655f 6279  ar_spec_store_by
│ │ │ +000fbdb0: 7061 7373 5f64 6973 6162 6c65 5f6f 7074  pass_disable_opt
│ │ │ +000fbdc0: 696f 6e73 3a20 2121 7374 7220 3c61 6262  ions: !!str se
│ │ │ +000fbe40: 6363 6f6d 703c 2f61 6262 723e 0a20 2074  ccomp.  t
│ │ │ +000fbe50: 6167 733a 0a20 2020 202d 2061 6c77 6179  ags:.    - alway
│ │ │ +000fbe60: 730a 0a2d 206e 616d 653a 2043 6865 636b  s..- name: Check
│ │ │ +000fbe70: 2069 6620 7370 6563 5f73 746f 7265 5f62   if spec_store_b
│ │ │ +000fbe80: 7970 6173 735f 6469 7361 626c 6520 6172  ypass_disable ar
│ │ │ +000fbe90: 6775 6d65 6e74 2069 7320 616c 7265 6164  gument is alread
│ │ │ +000fbea0: 7920 7072 6573 656e 7420 696e 202f 6574  y present in /et
│ │ │ +000fbeb0: 632f 6465 6661 756c 742f 6772 7562 0a20  c/default/grub. 
│ │ │ +000fbec0: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ +000fbed0: 2e73 6c75 7270 3a0a 2020 2020 7372 633a  .slurp:.    src:
│ │ │ +000fbee0: 202f 6574 632f 6465 6661 756c 742f 6772   /etc/default/gr
│ │ │ +000fbef0: 7562 0a20 2072 6567 6973 7465 723a 2065  ub.  register: e
│ │ │ +000fbf00: 7463 5f64 6566 6175 6c74 5f67 7275 620a  tc_default_grub.
│ │ │ +000fbf10: 2020 7768 656e 3a20 2820 2267 7275 6232    when: ( "grub2
│ │ │ +000fbf20: 2d63 6f6d 6d6f 6e22 2069 6e20 616e 7369  -common" in ansi
│ │ │ +000fbf30: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +000fbf40: 6573 2061 6e64 2022 6b65 726e 656c 2220  es and "kernel" 
│ │ │ +000fbf50: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +000fbf60: 2e70 6163 6b61 6765 730a 2020 2020 290a  .packages.    ).
│ │ │ +000fbf70: 2020 7461 6773 3a0a 2020 2d20 6772 7562    tags:.  - grub
│ │ │ +000fbf80: 325f 7370 6563 5f73 746f 7265 5f62 7970  2_spec_store_byp
│ │ │ +000fbf90: 6173 735f 6469 7361 626c 655f 6172 6775  ass_disable_argu
│ │ │ +000fbfa0: 6d65 6e74 0a20 202d 206c 6f77 5f64 6973  ment.  - low_dis
│ │ │ +000fbfb0: 7275 7074 696f 6e0a 2020 2d20 6d65 6469  ruption.  - medi
│ │ │ +000fbfc0: 756d 5f63 6f6d 706c 6578 6974 790a 2020  um_complexity.  
│ │ │ +000fbfd0: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ +000fbfe0: 790a 2020 2d20 7265 626f 6f74 5f72 6571  y.  - reboot_req
│ │ │ +000fbff0: 7569 7265 640a 2020 2d20 7265 7374 7269  uired.  - restri
│ │ │ +000fc000: 6374 5f73 7472 6174 6567 790a 0a2d 206e  ct_strategy..- n
│ │ │ +000fc010: 616d 653a 2043 6865 636b 2069 6620 7370  ame: Check if sp
│ │ │ +000fc020: 6563 5f73 746f 7265 5f62 7970 6173 735f  ec_store_bypass_
│ │ │ +000fc030: 6469 7361 626c 6520 6172 6775 6d65 6e74  disable argument
│ │ │ +000fc040: 2069 7320 616c 7265 6164 7920 7072 6573   is already pres
│ │ │ +000fc050: 656e 740a 2020 616e 7369 626c 652e 6275  ent.  ansible.bu
│ │ │ +000fc060: 696c 7469 6e2e 636f 6d6d 616e 643a 202f  iltin.command: /
│ │ │ +000fc070: 7362 696e 2f67 7275 6262 7920 2d2d 696e  sbin/grubby --in
│ │ │ +000fc080: 666f 3d41 4c4c 0a20 2072 6567 6973 7465  fo=ALL.  registe
│ │ │ +000fc090: 723a 2067 7275 6262 795f 696e 666f 0a20  r: grubby_info. 
│ │ │ +000fc0a0: 2063 6865 636b 5f6d 6f64 653a 2066 616c   check_mode: fal
│ │ │ +000fc0b0: 7365 0a20 2063 6861 6e67 6564 5f77 6865  se.  changed_whe
│ │ │ +000fc0c0: 6e3a 2066 616c 7365 0a20 2066 6169 6c65  n: false.  faile
│ │ │ +000fc0d0: 645f 7768 656e 3a20 6661 6c73 650a 2020  d_when: false.  
│ │ │ +000fc0e0: 7768 656e 3a20 2820 2267 7275 6232 2d63  when: ( "grub2-c
│ │ │ +000fc0f0: 6f6d 6d6f 6e22 2069 6e20 616e 7369 626c  ommon" in ansibl
│ │ │ +000fc100: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +000fc110: 2061 6e64 2022 6b65 726e 656c 2220 696e   and "kernel" in
│ │ │ +000fc120: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +000fc130: 6163 6b61 6765 730a 2020 2020 290a 2020  ackages.    ).  
│ │ │ +000fc140: 7461 6773 3a0a 2020 2d20 6772 7562 325f  tags:.  - grub2_
│ │ │ +000fc150: 7370 6563 5f73 746f 7265 5f62 7970 6173  spec_store_bypas
│ │ │ +000fc160: 735f 6469 7361 626c 655f 6172 6775 6d65  s_disable_argume
│ │ │ +000fc170: 6e74 0a20 202d 206c 6f77 5f64 6973 7275  nt.  - low_disru
│ │ │ +000fc180: 7074 696f 6e0a 2020 2d20 6d65 6469 756d  ption.  - medium
│ │ │ +000fc190: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +000fc1a0: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ +000fc1b0: 2020 2d20 7265 626f 6f74 5f72 6571 7569    - reboot_requi
│ │ │ +000fc1c0: 7265 640a 2020 2d20 7265 7374 7269 6374  red.  - restrict
│ │ │ +000fc1d0: 5f73 7472 6174 6567 790a 0a2d 206e 616d  _strategy..- nam
│ │ │ +000fc1e0: 653a 2055 7064 6174 6520 6772 7562 2064  e: Update grub d
│ │ │ +000fc1f0: 6566 6175 6c74 7320 616e 6420 7468 6520  efaults and the 
│ │ │ +000fc200: 626f 6f74 6c6f 6164 6572 206d 656e 750a  bootloader menu.
│ │ │ +000fc210: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ +000fc220: 6e2e 636f 6d6d 616e 643a 202f 7362 696e  n.command: /sbin
│ │ │ +000fc230: 2f67 7275 6262 7920 2d2d 7570 6461 7465  /grubby --update
│ │ │ +000fc240: 2d6b 6572 6e65 6c3d 414c 4c20 2d2d 6172  -kernel=ALL --ar
│ │ │ +000fc250: 6773 3d22 7370 6563 5f73 746f 7265 5f62  gs="spec_store_b
│ │ │ +000fc260: 7970 6173 735f 6469 7361 626c 653d 7b7b  ypass_disable={{
│ │ │ +000fc270: 0a20 2020 2076 6172 5f73 7065 635f 7374  .    var_spec_st
│ │ │ +000fc280: 6f72 655f 6279 7061 7373 5f64 6973 6162  ore_bypass_disab
│ │ │ +000fc290: 6c65 5f6f 7074 696f 6e73 207d 7d22 0a20  le_options }}". 
│ │ │ +000fc2a0: 2077 6865 6e3a 0a20 202d 2028 2022 6772   when:.  - ( "gr
│ │ │ +000fc2b0: 7562 322d 636f 6d6d 6f6e 2220 696e 2061  ub2-common" in a
│ │ │ +000fc2c0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +000fc2d0: 6b61 6765 7320 616e 6420 226b 6572 6e65  kages and "kerne
│ │ │ +000fc2e0: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ +000fc2f0: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ +000fc300: 2029 0a20 202d 2028 6772 7562 6279 5f69   ).  - (grubby_i
│ │ │ +000fc310: 6e66 6f2e 7374 646f 7574 2069 7320 6e6f  nfo.stdout is no
│ │ │ +000fc320: 7420 7365 6172 6368 2827 7370 6563 5f73  t search('spec_s
│ │ │  000fc330: 746f 7265 5f62 7970 6173 735f 6469 7361  tore_bypass_disa
│ │ │ -000fc340: 626c 655f 6172 6775 6d65 6e74 0a20 202d  ble_argument.  -
│ │ │ -000fc350: 206c 6f77 5f64 6973 7275 7074 696f 6e0a   low_disruption.
│ │ │ -000fc360: 2020 2d20 6d65 6469 756d 5f63 6f6d 706c    - medium_compl
│ │ │ -000fc370: 6578 6974 790a 2020 2d20 6d65 6469 756d  exity.  - medium
│ │ │ -000fc380: 5f73 6576 6572 6974 790a 2020 2d20 7265  _severity.  - re
│ │ │ -000fc390: 626f 6f74 5f72 6571 7569 7265 640a 2020  boot_required.  
│ │ │ -000fc3a0: 2d20 7265 7374 7269 6374 5f73 7472 6174  - restrict_strat
│ │ │ -000fc3b0: 6567 790a 0a2d 206e 616d 653a 2055 7064  egy..- name: Upd
│ │ │ -000fc3c0: 6174 6520 6772 7562 2064 6566 6175 6c74  ate grub default
│ │ │ -000fc3d0: 7320 616e 6420 7468 6520 626f 6f74 6c6f  s and the bootlo
│ │ │ -000fc3e0: 6164 6572 206d 656e 750a 2020 616e 7369  ader menu.  ansi
│ │ │ -000fc3f0: 626c 652e 6275 696c 7469 6e2e 636f 6d6d  ble.builtin.comm
│ │ │ -000fc400: 616e 643a 202f 7362 696e 2f67 7275 6262  and: /sbin/grubb
│ │ │ -000fc410: 7920 2d2d 7570 6461 7465 2d6b 6572 6e65  y --update-kerne
│ │ │ -000fc420: 6c3d 414c 4c20 2d2d 6172 6773 3d22 7370  l=ALL --args="sp
│ │ │ -000fc430: 6563 5f73 746f 7265 5f62 7970 6173 735f  ec_store_bypass_
│ │ │ -000fc440: 6469 7361 626c 653d 7b7b 0a20 2020 2076  disable={{.    v
│ │ │ -000fc450: 6172 5f73 7065 635f 7374 6f72 655f 6279  ar_spec_store_by
│ │ │ -000fc460: 7061 7373 5f64 6973 6162 6c65 5f6f 7074  pass_disable_opt
│ │ │ -000fc470: 696f 6e73 207d 7d22 0a20 2077 6865 6e3a  ions }}".  when:
│ │ │ -000fc480: 0a20 202d 2028 2022 6772 7562 322d 636f  .  - ( "grub2-co
│ │ │ -000fc490: 6d6d 6f6e 2220 696e 2061 6e73 6962 6c65  mmon" in ansible
│ │ │ -000fc4a0: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ -000fc4b0: 616e 6420 226b 6572 6e65 6c22 2069 6e20  and "kernel" in 
│ │ │ -000fc4c0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -000fc4d0: 636b 6167 6573 0a20 2020 2029 0a20 202d  ckages.    ).  -
│ │ │ -000fc4e0: 2028 6772 7562 6279 5f69 6e66 6f2e 7374   (grubby_info.st
│ │ │ -000fc4f0: 646f 7574 2069 7320 6e6f 7420 7365 6172  dout is not sear
│ │ │ -000fc500: 6368 2827 7370 6563 5f73 746f 7265 5f62  ch('spec_store_b
│ │ │ -000fc510: 7970 6173 735f 6469 7361 626c 653d 2720  ypass_disable=' 
│ │ │ -000fc520: 7e20 7661 725f 7370 6563 5f73 746f 7265  ~ var_spec_store
│ │ │ -000fc530: 5f62 7970 6173 735f 6469 7361 626c 655f  _bypass_disable_
│ │ │ -000fc540: 6f70 7469 6f6e 7329 290a 2020 2020 6f72  options)).    or
│ │ │ -000fc550: 2028 2865 7463 5f64 6566 6175 6c74 5f67   ((etc_default_g
│ │ │ -000fc560: 7275 625b 2763 6f6e 7465 6e74 275d 207c  rub['content'] |
│ │ │ -000fc570: 2062 3634 6465 636f 6465 2920 6973 206e   b64decode) is n
│ │ │ -000fc580: 6f74 2073 6561 7263 6828 2773 7065 635f  ot search('spec_
│ │ │ -000fc590: 7374 6f72 655f 6279 7061 7373 5f64 6973  store_bypass_dis
│ │ │ -000fc5a0: 6162 6c65 3d27 0a20 2020 207e 2076 6172  able='.    ~ var
│ │ │ -000fc5b0: 5f73 7065 635f 7374 6f72 655f 6279 7061  _spec_store_bypa
│ │ │ -000fc5c0: 7373 5f64 6973 6162 6c65 5f6f 7074 696f  ss_disable_optio
│ │ │ -000fc5d0: 6e73 2929 0a20 2074 6167 733a 0a20 202d  ns)).  tags:.  -
│ │ │ -000fc5e0: 2067 7275 6232 5f73 7065 635f 7374 6f72   grub2_spec_stor
│ │ │ -000fc5f0: 655f 6279 7061 7373 5f64 6973 6162 6c65  e_bypass_disable
│ │ │ -000fc600: 5f61 7267 756d 656e 740a 2020 2d20 6c6f  _argument.  - lo
│ │ │ -000fc610: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ -000fc620: 206d 6564 6975 6d5f 636f 6d70 6c65 7869   medium_complexi
│ │ │ -000fc630: 7479 0a20 202d 206d 6564 6975 6d5f 7365  ty.  - medium_se
│ │ │ -000fc640: 7665 7269 7479 0a20 202d 2072 6562 6f6f  verity.  - reboo
│ │ │ -000fc650: 745f 7265 7175 6972 6564 0a20 202d 2072  t_required.  - r
│ │ │ -000fc660: 6573 7472 6963 745f 7374 7261 7465 6779  estrict_strategy
│ │ │ +000fc340: 626c 653d 2720 7e20 7661 725f 7370 6563  ble=' ~ var_spec
│ │ │ +000fc350: 5f73 746f 7265 5f62 7970 6173 735f 6469  _store_bypass_di
│ │ │ +000fc360: 7361 626c 655f 6f70 7469 6f6e 7329 290a  sable_options)).
│ │ │ +000fc370: 2020 2020 6f72 2028 2865 7463 5f64 6566      or ((etc_def
│ │ │ +000fc380: 6175 6c74 5f67 7275 625b 2763 6f6e 7465  ault_grub['conte
│ │ │ +000fc390: 6e74 275d 207c 2062 3634 6465 636f 6465  nt'] | b64decode
│ │ │ +000fc3a0: 2920 6973 206e 6f74 2073 6561 7263 6828  ) is not search(
│ │ │ +000fc3b0: 2773 7065 635f 7374 6f72 655f 6279 7061  'spec_store_bypa
│ │ │ +000fc3c0: 7373 5f64 6973 6162 6c65 3d27 0a20 2020  ss_disable='.   
│ │ │ +000fc3d0: 207e 2076 6172 5f73 7065 635f 7374 6f72   ~ var_spec_stor
│ │ │ +000fc3e0: 655f 6279 7061 7373 5f64 6973 6162 6c65  e_bypass_disable
│ │ │ +000fc3f0: 5f6f 7074 696f 6e73 2929 0a20 2074 6167  _options)).  tag
│ │ │ +000fc400: 733a 0a20 202d 2067 7275 6232 5f73 7065  s:.  - grub2_spe
│ │ │ +000fc410: 635f 7374 6f72 655f 6279 7061 7373 5f64  c_store_bypass_d
│ │ │ +000fc420: 6973 6162 6c65 5f61 7267 756d 656e 740a  isable_argument.
│ │ │ +000fc430: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ +000fc440: 6f6e 0a20 202d 206d 6564 6975 6d5f 636f  on.  - medium_co
│ │ │ +000fc450: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ +000fc460: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ +000fc470: 2072 6562 6f6f 745f 7265 7175 6972 6564   reboot_required
│ │ │ +000fc480: 0a20 202d 2072 6573 7472 6963 745f 7374  .  - restrict_st
│ │ │ +000fc490: 7261 7465 6779 0a3c 2f63 6f64 653e 3c2f  rategy.Remediati
│ │ │ +000fc550: 6f6e 204f 5342 7569 6c64 2042 6c75 6570  on OSBuild Bluep
│ │ │ +000fc560: 7269 6e74 2073 6e69 7070 6574 20e2 87b2  rint snippet ...
│ │ │ +000fc570: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61  
[customizatio
│ │ │ +000fc5c0: 6e73 2e6b 6572 6e65 6c5d 0a61 7070 656e  ns.kernel].appen
│ │ │ +000fc5d0: 6420 3d20 2273 7065 635f 7374 6f72 655f  d = "spec_store_
│ │ │ +000fc5e0: 6279 7061 7373 5f64 6973 6162 6c65 3d3c  bypass_disable=<
│ │ │ +000fc5f0: 6162 6272 2074 6974 6c65 3d22 6672 6f6d  abbr title="from
│ │ │ +000fc600: 2050 726f 6669 6c65 2f72 6566 696e 652d   Profile/refine-
│ │ │ +000fc610: 7661 6c75 653a 2078 6363 6466 5f6f 7267  value: xccdf_org
│ │ │ +000fc620: 2e73 7367 7072 6f6a 6563 742e 636f 6e74  .ssgproject.cont
│ │ │ +000fc630: 656e 745f 7661 6c75 655f 7661 725f 7370  ent_value_var_sp
│ │ │ +000fc640: 6563 5f73 746f 7265 5f62 7970 6173 735f  ec_store_bypass_
│ │ │ +000fc650: 6469 7361 626c 655f 6f70 7469 6f6e 7322  disable_options"
│ │ │ +000fc660: 3e73 6563 636f 6d70 3c2f 6162 6272 3e22  >seccomp"
│ │ │  000fc670: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation OS │ │ │ -000fd660: 4275 696c 6420 426c 7565 7072 696e 7420 Build Blueprint │ │ │ -000fd670: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ -000fd680: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
[c
│ │ │ -000fd6c0: 7573 746f 6d69 7a61 7469 6f6e 732e 6b65  ustomizations.ke
│ │ │ -000fd6d0: 726e 656c 5d0a 6170 7065 6e64 203d 2022  rnel].append = "
│ │ │ -000fd6e0: 7370 6563 7472 655f 7632 3d6f 6e22 0a3c  spectre_v2=on".<
│ │ │ -000fd6f0: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ -000fd7a0: 656d 6564 6961 7469 6f6e 2041 6e73 6962 emediation Ansib │ │ │ -000fd7b0: 6c65 2073 6e69 7070 6574 20e2 87b2 3c2f le snippet ...
Com │ │ │ +000fbbb0: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:medium
Disrupt │ │ │ +000fbbe0: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +000fbbf0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strategy │ │ │ +000fbc30: 3a3c 2f74 683e 3c74 643e 7265 7374 7269 :restri │ │ │ +000fbc40: 6374 3c2f 7464 3e3c 2f74 723e 3c2f 7461 ct
│ │ │ -000fd850: 3c74 643e 6d65 6469 756d 3c2f 7464 3e3c < │ │ │ -000fd860: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -000fd8e0: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
- name: Gather
│ │ │ -000fd900: 2074 6865 2070 6163 6b61 6765 2066 6163   the package fac
│ │ │ -000fd910: 7473 0a20 2070 6163 6b61 6765 5f66 6163  ts.  package_fac
│ │ │ -000fd920: 7473 3a0a 2020 2020 6d61 6e61 6765 723a  ts:.    manager:
│ │ │ -000fd930: 2061 7574 6f0a 2020 7461 6773 3a0a 2020   auto.  tags:.  
│ │ │ -000fd940: 2d20 6772 7562 325f 7370 6563 7472 655f  - grub2_spectre_
│ │ │ -000fd950: 7632 5f61 7267 756d 656e 740a 2020 2d20  v2_argument.  - 
│ │ │ -000fd960: 6869 6768 5f73 6576 6572 6974 790a 2020  high_severity.  
│ │ │ -000fd970: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ -000fd980: 0a20 202d 206d 6564 6975 6d5f 636f 6d70  .  - medium_comp
│ │ │ -000fd990: 6c65 7869 7479 0a20 202d 2072 6562 6f6f  lexity.  - reboo
│ │ │ -000fd9a0: 745f 7265 7175 6972 6564 0a20 202d 2072  t_required.  - r
│ │ │ -000fd9b0: 6573 7472 6963 745f 7374 7261 7465 6779  estrict_strategy
│ │ │ -000fd9c0: 0a0a 2d20 6e61 6d65 3a20 4368 6563 6b20  ..- name: Check 
│ │ │ -000fd9d0: 6966 2073 7065 6374 7265 5f76 3220 6172  if spectre_v2 ar
│ │ │ -000fd9e0: 6775 6d65 6e74 2069 7320 616c 7265 6164  gument is alread
│ │ │ -000fd9f0: 7920 7072 6573 656e 7420 696e 202f 6574  y present in /et
│ │ │ -000fda00: 632f 6465 6661 756c 742f 6772 7562 0a20  c/default/grub. 
│ │ │ -000fda10: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ -000fda20: 2e73 6c75 7270 3a0a 2020 2020 7372 633a  .slurp:.    src:
│ │ │ -000fda30: 202f 6574 632f 6465 6661 756c 742f 6772   /etc/default/gr
│ │ │ -000fda40: 7562 0a20 2072 6567 6973 7465 723a 2065  ub.  register: e
│ │ │ -000fda50: 7463 5f64 6566 6175 6c74 5f67 7275 620a  tc_default_grub.
│ │ │ -000fda60: 2020 7768 656e 3a20 2820 2267 7275 6232    when: ( "grub2
│ │ │ -000fda70: 2d63 6f6d 6d6f 6e22 2069 6e20 616e 7369  -common" in ansi
│ │ │ -000fda80: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -000fda90: 6573 2061 6e64 2022 6b65 726e 656c 2220  es and "kernel" 
│ │ │ -000fdaa0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -000fdab0: 2e70 6163 6b61 6765 730a 2020 2020 290a  .packages.    ).
│ │ │ -000fdac0: 2020 7461 6773 3a0a 2020 2d20 6772 7562    tags:.  - grub
│ │ │ -000fdad0: 325f 7370 6563 7472 655f 7632 5f61 7267  2_spectre_v2_arg
│ │ │ -000fdae0: 756d 656e 740a 2020 2d20 6869 6768 5f73  ument.  - high_s
│ │ │ -000fdaf0: 6576 6572 6974 790a 2020 2d20 6c6f 775f  everity.  - low_
│ │ │ -000fdb00: 6469 7372 7570 7469 6f6e 0a20 202d 206d  disruption.  - m
│ │ │ -000fdb10: 6564 6975 6d5f 636f 6d70 6c65 7869 7479  edium_complexity
│ │ │ -000fdb20: 0a20 202d 2072 6562 6f6f 745f 7265 7175  .  - reboot_requ
│ │ │ -000fdb30: 6972 6564 0a20 202d 2072 6573 7472 6963  ired.  - restric
│ │ │ -000fdb40: 745f 7374 7261 7465 6779 0a0a 2d20 6e61  t_strategy..- na
│ │ │ -000fdb50: 6d65 3a20 4368 6563 6b20 6966 2073 7065  me: Check if spe
│ │ │ -000fdb60: 6374 7265 5f76 3220 6172 6775 6d65 6e74  ctre_v2 argument
│ │ │ -000fdb70: 2069 7320 616c 7265 6164 7920 7072 6573   is already pres
│ │ │ -000fdb80: 656e 740a 2020 616e 7369 626c 652e 6275  ent.  ansible.bu
│ │ │ -000fdb90: 696c 7469 6e2e 636f 6d6d 616e 643a 202f  iltin.command: /
│ │ │ -000fdba0: 7362 696e 2f67 7275 6262 7920 2d2d 696e  sbin/grubby --in
│ │ │ -000fdbb0: 666f 3d41 4c4c 0a20 2072 6567 6973 7465  fo=ALL.  registe
│ │ │ -000fdbc0: 723a 2067 7275 6262 795f 696e 666f 0a20  r: grubby_info. 
│ │ │ -000fdbd0: 2063 6865 636b 5f6d 6f64 653a 2066 616c   check_mode: fal
│ │ │ -000fdbe0: 7365 0a20 2063 6861 6e67 6564 5f77 6865  se.  changed_whe
│ │ │ -000fdbf0: 6e3a 2066 616c 7365 0a20 2066 6169 6c65  n: false.  faile
│ │ │ -000fdc00: 645f 7768 656e 3a20 6661 6c73 650a 2020  d_when: false.  
│ │ │ -000fdc10: 7768 656e 3a20 2820 2267 7275 6232 2d63  when: ( "grub2-c
│ │ │ -000fdc20: 6f6d 6d6f 6e22 2069 6e20 616e 7369 626c  ommon" in ansibl
│ │ │ -000fdc30: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -000fdc40: 2061 6e64 2022 6b65 726e 656c 2220 696e   and "kernel" in
│ │ │ -000fdc50: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -000fdc60: 6163 6b61 6765 730a 2020 2020 290a 2020  ackages.    ).  
│ │ │ -000fdc70: 7461 6773 3a0a 2020 2d20 6772 7562 325f  tags:.  - grub2_
│ │ │ -000fdc80: 7370 6563 7472 655f 7632 5f61 7267 756d  spectre_v2_argum
│ │ │ -000fdc90: 656e 740a 2020 2d20 6869 6768 5f73 6576  ent.  - high_sev
│ │ │ -000fdca0: 6572 6974 790a 2020 2d20 6c6f 775f 6469  erity.  - low_di
│ │ │ -000fdcb0: 7372 7570 7469 6f6e 0a20 202d 206d 6564  sruption.  - med
│ │ │ -000fdcc0: 6975 6d5f 636f 6d70 6c65 7869 7479 0a20  ium_complexity. 
│ │ │ -000fdcd0: 202d 2072 6562 6f6f 745f 7265 7175 6972   - reboot_requir
│ │ │ -000fdce0: 6564 0a20 202d 2072 6573 7472 6963 745f  ed.  - restrict_
│ │ │ -000fdcf0: 7374 7261 7465 6779 0a0a 2d20 6e61 6d65  strategy..- name
│ │ │ -000fdd00: 3a20 5570 6461 7465 2067 7275 6220 6465  : Update grub de
│ │ │ -000fdd10: 6661 756c 7473 2061 6e64 2074 6865 2062  faults and the b
│ │ │ -000fdd20: 6f6f 746c 6f61 6465 7220 6d65 6e75 0a20  ootloader menu. 
│ │ │ -000fdd30: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ -000fdd40: 2e63 6f6d 6d61 6e64 3a20 2f73 6269 6e2f  .command: /sbin/
│ │ │ -000fdd50: 6772 7562 6279 202d 2d75 7064 6174 652d  grubby --update-
│ │ │ -000fdd60: 6b65 726e 656c 3d41 4c4c 202d 2d61 7267  kernel=ALL --arg
│ │ │ -000fdd70: 733d 2273 7065 6374 7265 5f76 323d 6f6e  s="spectre_v2=on
│ │ │ -000fdd80: 220a 2020 7768 656e 3a0a 2020 2d20 2820  ".  when:.  - ( 
│ │ │ -000fdd90: 2267 7275 6232 2d63 6f6d 6d6f 6e22 2069  "grub2-common" i
│ │ │ -000fdda0: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -000fddb0: 7061 636b 6167 6573 2061 6e64 2022 6b65  packages and "ke
│ │ │ -000fddc0: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ -000fddd0: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ -000fdde0: 2020 2020 290a 2020 2d20 2867 7275 6262      ).  - (grubb
│ │ │ -000fddf0: 795f 696e 666f 2e73 7464 6f75 7420 6973  y_info.stdout is
│ │ │ -000fde00: 206e 6f74 2073 6561 7263 6828 2773 7065   not search('spe
│ │ │ -000fde10: 6374 7265 5f76 323d 6f6e 2729 2920 6f72  ctre_v2=on')) or
│ │ │ -000fde20: 2028 2865 7463 5f64 6566 6175 6c74 5f67   ((etc_default_g
│ │ │ -000fde30: 7275 625b 2763 6f6e 7465 6e74 275d 0a20  rub['content']. 
│ │ │ -000fde40: 2020 207c 2062 3634 6465 636f 6465 2920     | b64decode) 
│ │ │ -000fde50: 6973 206e 6f74 2073 6561 7263 6828 2773  is not search('s
│ │ │ -000fde60: 7065 6374 7265 5f76 323d 6f6e 2729 290a  pectre_v2=on')).
│ │ │ -000fde70: 2020 7461 6773 3a0a 2020 2d20 6772 7562    tags:.  - grub
│ │ │ -000fde80: 325f 7370 6563 7472 655f 7632 5f61 7267  2_spectre_v2_arg
│ │ │ -000fde90: 756d 656e 740a 2020 2d20 6869 6768 5f73  ument.  - high_s
│ │ │ -000fdea0: 6576 6572 6974 790a 2020 2d20 6c6f 775f  everity.  - low_
│ │ │ -000fdeb0: 6469 7372 7570 7469 6f6e 0a20 202d 206d  disruption.  - m
│ │ │ -000fdec0: 6564 6975 6d5f 636f 6d70 6c65 7869 7479  edium_complexity
│ │ │ -000fded0: 0a20 202d 2072 6562 6f6f 745f 7265 7175  .  - reboot_requ
│ │ │ -000fdee0: 6972 6564 0a20 202d 2072 6573 7472 6963  ired.  - restric
│ │ │ -000fdef0: 745f 7374 7261 7465 6779 0a3c 2f63 6f64  t_strategy.Remediation An
│ │ │ +000fd660: 7369 626c 6520 736e 6970 7065 7420 e287  sible snippet ..
│ │ │ +000fd670: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c  .
│ │ │ -000fd840: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:medium
Disr │ │ │ -000fd870: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -000fd880: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:true
Strat │ │ │ -000fd8c0: 6567 793a 3c2f 7468 3e3c 7464 3e72 6573 egy:res │ │ │ -000fd8d0: 7472 6963 743c 2f74 643e 3c2f 7472 3e3c trict
< │ │ │ +000fd6f0: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ +000fd730: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +000fd740: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c
medium
D │ │ │ +000fd720: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:
Reboot:< │ │ │ +000fd750: 2f74 683e 3c74 643e 7472 7565 3c2f 7464 /th>true
St │ │ │ +000fd770: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ +000fd780: 7265 7374 7269 6374 3c2f 7464 3e3c 2f74 restrict
<
│ │ │ +000fd7a0: 636f 6465 3e2d 206e 616d 653a 2047 6174  code>- name: Gat
│ │ │ +000fd7b0: 6865 7220 7468 6520 7061 636b 6167 6520  her the package 
│ │ │ +000fd7c0: 6661 6374 730a 2020 7061 636b 6167 655f  facts.  package_
│ │ │ +000fd7d0: 6661 6374 733a 0a20 2020 206d 616e 6167  facts:.    manag
│ │ │ +000fd7e0: 6572 3a20 6175 746f 0a20 2074 6167 733a  er: auto.  tags:
│ │ │ +000fd7f0: 0a20 202d 2067 7275 6232 5f73 7065 6374  .  - grub2_spect
│ │ │ +000fd800: 7265 5f76 325f 6172 6775 6d65 6e74 0a20  re_v2_argument. 
│ │ │ +000fd810: 202d 2068 6967 685f 7365 7665 7269 7479   - high_severity
│ │ │ +000fd820: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ +000fd830: 696f 6e0a 2020 2d20 6d65 6469 756d 5f63  ion.  - medium_c
│ │ │ +000fd840: 6f6d 706c 6578 6974 790a 2020 2d20 7265  omplexity.  - re
│ │ │ +000fd850: 626f 6f74 5f72 6571 7569 7265 640a 2020  boot_required.  
│ │ │ +000fd860: 2d20 7265 7374 7269 6374 5f73 7472 6174  - restrict_strat
│ │ │ +000fd870: 6567 790a 0a2d 206e 616d 653a 2043 6865  egy..- name: Che
│ │ │ +000fd880: 636b 2069 6620 7370 6563 7472 655f 7632  ck if spectre_v2
│ │ │ +000fd890: 2061 7267 756d 656e 7420 6973 2061 6c72   argument is alr
│ │ │ +000fd8a0: 6561 6479 2070 7265 7365 6e74 2069 6e20  eady present in 
│ │ │ +000fd8b0: 2f65 7463 2f64 6566 6175 6c74 2f67 7275  /etc/default/gru
│ │ │ +000fd8c0: 620a 2020 616e 7369 626c 652e 6275 696c  b.  ansible.buil
│ │ │ +000fd8d0: 7469 6e2e 736c 7572 703a 0a20 2020 2073  tin.slurp:.    s
│ │ │ +000fd8e0: 7263 3a20 2f65 7463 2f64 6566 6175 6c74  rc: /etc/default
│ │ │ +000fd8f0: 2f67 7275 620a 2020 7265 6769 7374 6572  /grub.  register
│ │ │ +000fd900: 3a20 6574 635f 6465 6661 756c 745f 6772  : etc_default_gr
│ │ │ +000fd910: 7562 0a20 2077 6865 6e3a 2028 2022 6772  ub.  when: ( "gr
│ │ │ +000fd920: 7562 322d 636f 6d6d 6f6e 2220 696e 2061  ub2-common" in a
│ │ │ +000fd930: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +000fd940: 6b61 6765 7320 616e 6420 226b 6572 6e65  kages and "kerne
│ │ │ +000fd950: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ +000fd960: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ +000fd970: 2029 0a20 2074 6167 733a 0a20 202d 2067   ).  tags:.  - g
│ │ │ +000fd980: 7275 6232 5f73 7065 6374 7265 5f76 325f  rub2_spectre_v2_
│ │ │ +000fd990: 6172 6775 6d65 6e74 0a20 202d 2068 6967  argument.  - hig
│ │ │ +000fd9a0: 685f 7365 7665 7269 7479 0a20 202d 206c  h_severity.  - l
│ │ │ +000fd9b0: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ +000fd9c0: 2d20 6d65 6469 756d 5f63 6f6d 706c 6578  - medium_complex
│ │ │ +000fd9d0: 6974 790a 2020 2d20 7265 626f 6f74 5f72  ity.  - reboot_r
│ │ │ +000fd9e0: 6571 7569 7265 640a 2020 2d20 7265 7374  equired.  - rest
│ │ │ +000fd9f0: 7269 6374 5f73 7472 6174 6567 790a 0a2d  rict_strategy..-
│ │ │ +000fda00: 206e 616d 653a 2043 6865 636b 2069 6620   name: Check if 
│ │ │ +000fda10: 7370 6563 7472 655f 7632 2061 7267 756d  spectre_v2 argum
│ │ │ +000fda20: 656e 7420 6973 2061 6c72 6561 6479 2070  ent is already p
│ │ │ +000fda30: 7265 7365 6e74 0a20 2061 6e73 6962 6c65  resent.  ansible
│ │ │ +000fda40: 2e62 7569 6c74 696e 2e63 6f6d 6d61 6e64  .builtin.command
│ │ │ +000fda50: 3a20 2f73 6269 6e2f 6772 7562 6279 202d  : /sbin/grubby -
│ │ │ +000fda60: 2d69 6e66 6f3d 414c 4c0a 2020 7265 6769  -info=ALL.  regi
│ │ │ +000fda70: 7374 6572 3a20 6772 7562 6279 5f69 6e66  ster: grubby_inf
│ │ │ +000fda80: 6f0a 2020 6368 6563 6b5f 6d6f 6465 3a20  o.  check_mode: 
│ │ │ +000fda90: 6661 6c73 650a 2020 6368 616e 6765 645f  false.  changed_
│ │ │ +000fdaa0: 7768 656e 3a20 6661 6c73 650a 2020 6661  when: false.  fa
│ │ │ +000fdab0: 696c 6564 5f77 6865 6e3a 2066 616c 7365  iled_when: false
│ │ │ +000fdac0: 0a20 2077 6865 6e3a 2028 2022 6772 7562  .  when: ( "grub
│ │ │ +000fdad0: 322d 636f 6d6d 6f6e 2220 696e 2061 6e73  2-common" in ans
│ │ │ +000fdae0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +000fdaf0: 6765 7320 616e 6420 226b 6572 6e65 6c22  ges and "kernel"
│ │ │ +000fdb00: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +000fdb10: 732e 7061 636b 6167 6573 0a20 2020 2029  s.packages.    )
│ │ │ +000fdb20: 0a20 2074 6167 733a 0a20 202d 2067 7275  .  tags:.  - gru
│ │ │ +000fdb30: 6232 5f73 7065 6374 7265 5f76 325f 6172  b2_spectre_v2_ar
│ │ │ +000fdb40: 6775 6d65 6e74 0a20 202d 2068 6967 685f  gument.  - high_
│ │ │ +000fdb50: 7365 7665 7269 7479 0a20 202d 206c 6f77  severity.  - low
│ │ │ +000fdb60: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +000fdb70: 6d65 6469 756d 5f63 6f6d 706c 6578 6974  medium_complexit
│ │ │ +000fdb80: 790a 2020 2d20 7265 626f 6f74 5f72 6571  y.  - reboot_req
│ │ │ +000fdb90: 7569 7265 640a 2020 2d20 7265 7374 7269  uired.  - restri
│ │ │ +000fdba0: 6374 5f73 7472 6174 6567 790a 0a2d 206e  ct_strategy..- n
│ │ │ +000fdbb0: 616d 653a 2055 7064 6174 6520 6772 7562  ame: Update grub
│ │ │ +000fdbc0: 2064 6566 6175 6c74 7320 616e 6420 7468   defaults and th
│ │ │ +000fdbd0: 6520 626f 6f74 6c6f 6164 6572 206d 656e  e bootloader men
│ │ │ +000fdbe0: 750a 2020 616e 7369 626c 652e 6275 696c  u.  ansible.buil
│ │ │ +000fdbf0: 7469 6e2e 636f 6d6d 616e 643a 202f 7362  tin.command: /sb
│ │ │ +000fdc00: 696e 2f67 7275 6262 7920 2d2d 7570 6461  in/grubby --upda
│ │ │ +000fdc10: 7465 2d6b 6572 6e65 6c3d 414c 4c20 2d2d  te-kernel=ALL --
│ │ │ +000fdc20: 6172 6773 3d22 7370 6563 7472 655f 7632  args="spectre_v2
│ │ │ +000fdc30: 3d6f 6e22 0a20 2077 6865 6e3a 0a20 202d  =on".  when:.  -
│ │ │ +000fdc40: 2028 2022 6772 7562 322d 636f 6d6d 6f6e   ( "grub2-common
│ │ │ +000fdc50: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +000fdc60: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ +000fdc70: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ +000fdc80: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +000fdc90: 6573 0a20 2020 2029 0a20 202d 2028 6772  es.    ).  - (gr
│ │ │ +000fdca0: 7562 6279 5f69 6e66 6f2e 7374 646f 7574  ubby_info.stdout
│ │ │ +000fdcb0: 2069 7320 6e6f 7420 7365 6172 6368 2827   is not search('
│ │ │ +000fdcc0: 7370 6563 7472 655f 7632 3d6f 6e27 2929  spectre_v2=on'))
│ │ │ +000fdcd0: 206f 7220 2828 6574 635f 6465 6661 756c   or ((etc_defaul
│ │ │ +000fdce0: 745f 6772 7562 5b27 636f 6e74 656e 7427  t_grub['content'
│ │ │ +000fdcf0: 5d0a 2020 2020 7c20 6236 3464 6563 6f64  ].    | b64decod
│ │ │ +000fdd00: 6529 2069 7320 6e6f 7420 7365 6172 6368  e) is not search
│ │ │ +000fdd10: 2827 7370 6563 7472 655f 7632 3d6f 6e27  ('spectre_v2=on'
│ │ │ +000fdd20: 2929 0a20 2074 6167 733a 0a20 202d 2067  )).  tags:.  - g
│ │ │ +000fdd30: 7275 6232 5f73 7065 6374 7265 5f76 325f  rub2_spectre_v2_
│ │ │ +000fdd40: 6172 6775 6d65 6e74 0a20 202d 2068 6967  argument.  - hig
│ │ │ +000fdd50: 685f 7365 7665 7269 7479 0a20 202d 206c  h_severity.  - l
│ │ │ +000fdd60: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ +000fdd70: 2d20 6d65 6469 756d 5f63 6f6d 706c 6578  - medium_complex
│ │ │ +000fdd80: 6974 790a 2020 2d20 7265 626f 6f74 5f72  ity.  - reboot_r
│ │ │ +000fdd90: 6571 7569 7265 640a 2020 2d20 7265 7374  equired.  - rest
│ │ │ +000fdda0: 7269 6374 5f73 7472 6174 6567 790a 3c2f  rict_strategy.
Re │ │ │ +000fde60: 6d65 6469 6174 696f 6e20 4f53 4275 696c mediation OSBuil │ │ │ +000fde70: 6420 426c 7565 7072 696e 7420 736e 6970 d Blueprint snip │ │ │ +000fde80: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ +000fde90: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +000fdea0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +000fdeb0: 7365 2220 6964 3d22 6964 3235 3922 3e3c se" id="id259">< │ │ │ +000fdec0: 7072 653e 3c63 6f64 653e 5b63 7573 746f pre>[custo │ │ │ +000fded0: 6d69 7a61 7469 6f6e 732e 6b65 726e 656c mizations.kernel │ │ │ +000fdee0: 5d0a 6170 7065 6e64 203d 2022 7370 6563 ].append = "spec │ │ │ +000fdef0: 7472 655f 7632 3d6f 6e22 0a3c 2f63 6f64 tre_v2=on".
Rem │ │ │ -0010d470: 6564 6961 7469 6f6e 204f 5342 7569 6c64 ediation OSBuild │ │ │ -0010d480: 2042 6c75 6570 7269 6e74 2073 6e69 7070 Blueprint snipp │ │ │ -0010d490: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...

.[[pack │ │ │ -0010d4e0: 6167 6573 5d5d 0a6e 616d 6520 3d20 226c ages]].name = "l │ │ │ -0010d4f0: 6f67 726f 7461 7465 220a 7665 7273 696f ogrotate".versio │ │ │ -0010d500: 6e20 3d20 222a 220a 3c2f 636f 6465 3e3c n = "*".< │ │ │ -0010d510: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c /pre>

Remediat │ │ │ -0010d5c0: 696f 6e20 416e 6163 6f6e 6461 2073 6e69 ion Anaconda sni │ │ │ -0010d5d0: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -0010d5e0: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -0010d610: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ -0010d680: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ -0010d6a0: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ -0010d6d0: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy: │ │ │ -0010d6f0: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
Comple │ │ │ -0010d660: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ -0010d670: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ -0010d6b0: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ -0010d6c0: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
enable
.package │ │ │ -0010d710: 202d 2d61 6464 3d6c 6f67 726f 7461 7465 --add=logrotate │ │ │ -0010d720: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f .
Remediation Pup │ │ │ -0010d7e0: 7065 7420 736e 6970 7065 7420 e287 b23c pet snippet ...< │ │ │ -0010d7f0: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
< │ │ │ -0010d8c0: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -0010d8d0: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
i
│ │ │ -0010d920: 6e63 6c75 6465 2069 6e73 7461 6c6c 5f6c  nclude install_l
│ │ │ -0010d930: 6f67 726f 7461 7465 0a0a 636c 6173 7320  ogrotate..class 
│ │ │ -0010d940: 696e 7374 616c 6c5f 6c6f 6772 6f74 6174  install_logrotat
│ │ │ -0010d950: 6520 7b0a 2020 7061 636b 6167 6520 7b20  e {.  package { 
│ │ │ -0010d960: 276c 6f67 726f 7461 7465 273a 0a20 2020  'logrotate':.   
│ │ │ -0010d970: 2065 6e73 7572 6520 3d26 6774 3b20 2769   ensure => 'i
│ │ │ -0010d980: 6e73 7461 6c6c 6564 272c 0a20 207d 0a7d  nstalled',.  }.}
│ │ │ -0010d990: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation Ans │ │ │ -0010da50: 6962 6c65 2073 6e69 7070 6574 20e2 87b2 ible snippet ... │ │ │ -0010da60: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity:low
Disrup │ │ │ -0010d8a0: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -0010d8b0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -0010d8f0: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ -0010d900: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Complexity: │ │ │ -0010db30: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -0010db40: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f

│ │ │ -0010db90: 2d20 6e61 6d65 3a20 4761 7468 6572 2074  - name: Gather t
│ │ │ -0010dba0: 6865 2070 6163 6b61 6765 2066 6163 7473  he package facts
│ │ │ -0010dbb0: 0a20 2070 6163 6b61 6765 5f66 6163 7473  .  package_facts
│ │ │ -0010dbc0: 3a0a 2020 2020 6d61 6e61 6765 723a 2061  :.    manager: a
│ │ │ -0010dbd0: 7574 6f0a 2020 7461 6773 3a0a 2020 2d20  uto.  tags:.  - 
│ │ │ -0010dbe0: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ -0010dbf0: 2861 290a 2020 2d20 5043 492d 4453 532d  (a).  - PCI-DSS-
│ │ │ -0010dc00: 5265 712d 3130 2e37 0a20 202d 2050 4349  Req-10.7.  - PCI
│ │ │ -0010dc10: 2d44 5353 7634 2d31 302e 350a 2020 2d20  -DSSv4-10.5.  - 
│ │ │ -0010dc20: 5043 492d 4453 5376 342d 3130 2e35 2e31  PCI-DSSv4-10.5.1
│ │ │ -0010dc30: 0a20 202d 2065 6e61 626c 655f 7374 7261  .  - enable_stra
│ │ │ -0010dc40: 7465 6779 0a20 202d 206c 6f77 5f63 6f6d  tegy.  - low_com
│ │ │ -0010dc50: 706c 6578 6974 790a 2020 2d20 6c6f 775f  plexity.  - low_
│ │ │ -0010dc60: 6469 7372 7570 7469 6f6e 0a20 202d 206d  disruption.  - m
│ │ │ -0010dc70: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ -0010dc80: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ -0010dc90: 6465 640a 2020 2d20 7061 636b 6167 655f  ded.  - package_
│ │ │ -0010dca0: 6c6f 6772 6f74 6174 655f 696e 7374 616c  logrotate_instal
│ │ │ -0010dcb0: 6c65 640a 0a2d 206e 616d 653a 2045 6e73  led..- name: Ens
│ │ │ -0010dcc0: 7572 6520 6c6f 6772 6f74 6174 6520 6973  ure logrotate is
│ │ │ -0010dcd0: 2069 6e73 7461 6c6c 6564 0a20 2061 6e73   installed.  ans
│ │ │ -0010dce0: 6962 6c65 2e62 7569 6c74 696e 2e70 6163  ible.builtin.pac
│ │ │ -0010dcf0: 6b61 6765 3a0a 2020 2020 6e61 6d65 3a20  kage:.    name: 
│ │ │ -0010dd00: 6c6f 6772 6f74 6174 650a 2020 2020 7374  logrotate.    st
│ │ │ -0010dd10: 6174 653a 2070 7265 7365 6e74 0a20 2077  ate: present.  w
│ │ │ -0010dd20: 6865 6e3a 2027 226b 6572 6e65 6c22 2069  hen: '"kernel" i
│ │ │ -0010dd30: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -0010dd40: 7061 636b 6167 6573 270a 2020 7461 6773  packages'.  tags
│ │ │ -0010dd50: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ -0010dd60: 332d 434d 2d36 2861 290a 2020 2d20 5043  3-CM-6(a).  - PC
│ │ │ -0010dd70: 492d 4453 532d 5265 712d 3130 2e37 0a20  I-DSS-Req-10.7. 
│ │ │ -0010dd80: 202d 2050 4349 2d44 5353 7634 2d31 302e   - PCI-DSSv4-10.
│ │ │ -0010dd90: 350a 2020 2d20 5043 492d 4453 5376 342d  5.  - PCI-DSSv4-
│ │ │ -0010dda0: 3130 2e35 2e31 0a20 202d 2065 6e61 626c  10.5.1.  - enabl
│ │ │ -0010ddb0: 655f 7374 7261 7465 6779 0a20 202d 206c  e_strategy.  - l
│ │ │ -0010ddc0: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ -0010ddd0: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ -0010dde0: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ -0010ddf0: 7269 7479 0a20 202d 206e 6f5f 7265 626f  rity.  - no_rebo
│ │ │ -0010de00: 6f74 5f6e 6565 6465 640a 2020 2d20 7061  ot_needed.  - pa
│ │ │ -0010de10: 636b 6167 655f 6c6f 6772 6f74 6174 655f  ckage_logrotate_
│ │ │ -0010de20: 696e 7374 616c 6c65 640a 3c2f 636f 6465  installed.
Remedi │ │ │ -0010dee0: 6174 696f 6e20 5368 656c 6c20 7363 7269 ation Shell scri │ │ │ -0010def0: 7074 20e2 87b2 3c2f 613e 3c62 723e 3c64 pt ...
│ │ │ -0010df70: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 < │ │ │ -0010e000: 7464 3e65 6e61 626c 653c 2f74 643e 3c2f td>enable
low
Disru │ │ │ -0010db10: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ -0010db20: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ -0010db60: 6567 793a 3c2f 7468 3e3c 7464 3e65 6e61 egy:ena │ │ │ -0010db70: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Complexi │ │ │ -0010df80: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -0010df90: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Disruption:low
Reboot │ │ │ -0010dfd0: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -0010dfe0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Strategy:
│ │ │ -0010e020: 3c63 6f64 653e 2320 5265 6d65 6469 6174  # Remediat
│ │ │ -0010e030: 696f 6e20 6973 2061 7070 6c69 6361 626c  ion is applicabl
│ │ │ -0010e040: 6520 6f6e 6c79 2069 6e20 6365 7274 6169  e only in certai
│ │ │ -0010e050: 6e20 706c 6174 666f 726d 730a 6966 2072  n platforms.if r
│ │ │ -0010e060: 706d 202d 2d71 7569 6574 202d 7120 6b65  pm --quiet -q ke
│ │ │ -0010e070: 726e 656c 3b20 7468 656e 0a0a 6966 2021  rnel; then..if !
│ │ │ -0010e080: 2072 706d 202d 7120 2d2d 7175 6965 7420   rpm -q --quiet 
│ │ │ -0010e090: 226c 6f67 726f 7461 7465 2220 3b20 7468  "logrotate" ; th
│ │ │ -0010e0a0: 656e 0a20 2020 2064 6e66 2069 6e73 7461  en.    dnf insta
│ │ │ -0010e0b0: 6c6c 202d 7920 226c 6f67 726f 7461 7465  ll -y "logrotate
│ │ │ -0010e0c0: 220a 6669 0a0a 656c 7365 0a20 2020 2026  ".fi..else.    &
│ │ │ -0010e0d0: 6774 3b26 616d 703b 3220 6563 686f 2027  gt;&2 echo '
│ │ │ -0010e0e0: 5265 6d65 6469 6174 696f 6e20 6973 206e  Remediation is n
│ │ │ -0010e0f0: 6f74 2061 7070 6c69 6361 626c 652c 206e  ot applicable, n
│ │ │ -0010e100: 6f74 6869 6e67 2077 6173 2064 6f6e 6527  othing was done'
│ │ │ -0010e110: 0a66 690a 3c2f 636f 6465 3e3c 2f70 7265  .fi.
│ │ │ +0010d490: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ +0010d530: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ +0010d580: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
Co │ │ │ +0010d510: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +0010d540: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +0010d560: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +0010d570: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +0010d590: 3c2f 7468 3e3c 7464 3e65 6e61 626c 653c enable< │ │ │ +0010d5a0: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
- na
│ │ │ +0010d5c0: 6d65 3a20 4761 7468 6572 2074 6865 2070  me: Gather the p
│ │ │ +0010d5d0: 6163 6b61 6765 2066 6163 7473 0a20 2070  ackage facts.  p
│ │ │ +0010d5e0: 6163 6b61 6765 5f66 6163 7473 3a0a 2020  ackage_facts:.  
│ │ │ +0010d5f0: 2020 6d61 6e61 6765 723a 2061 7574 6f0a    manager: auto.
│ │ │ +0010d600: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ +0010d610: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ +0010d620: 2020 2d20 5043 492d 4453 532d 5265 712d    - PCI-DSS-Req-
│ │ │ +0010d630: 3130 2e37 0a20 202d 2050 4349 2d44 5353  10.7.  - PCI-DSS
│ │ │ +0010d640: 7634 2d31 302e 350a 2020 2d20 5043 492d  v4-10.5.  - PCI-
│ │ │ +0010d650: 4453 5376 342d 3130 2e35 2e31 0a20 202d  DSSv4-10.5.1.  -
│ │ │ +0010d660: 2065 6e61 626c 655f 7374 7261 7465 6779   enable_strategy
│ │ │ +0010d670: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ +0010d680: 6974 790a 2020 2d20 6c6f 775f 6469 7372  ity.  - low_disr
│ │ │ +0010d690: 7570 7469 6f6e 0a20 202d 206d 6564 6975  uption.  - mediu
│ │ │ +0010d6a0: 6d5f 7365 7665 7269 7479 0a20 202d 206e  m_severity.  - n
│ │ │ +0010d6b0: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ +0010d6c0: 2020 2d20 7061 636b 6167 655f 6c6f 6772    - package_logr
│ │ │ +0010d6d0: 6f74 6174 655f 696e 7374 616c 6c65 640a  otate_installed.
│ │ │ +0010d6e0: 0a2d 206e 616d 653a 2045 6e73 7572 6520  .- name: Ensure 
│ │ │ +0010d6f0: 6c6f 6772 6f74 6174 6520 6973 2069 6e73  logrotate is ins
│ │ │ +0010d700: 7461 6c6c 6564 0a20 2061 6e73 6962 6c65  talled.  ansible
│ │ │ +0010d710: 2e62 7569 6c74 696e 2e70 6163 6b61 6765  .builtin.package
│ │ │ +0010d720: 3a0a 2020 2020 6e61 6d65 3a20 6c6f 6772  :.    name: logr
│ │ │ +0010d730: 6f74 6174 650a 2020 2020 7374 6174 653a  otate.    state:
│ │ │ +0010d740: 2070 7265 7365 6e74 0a20 2077 6865 6e3a   present.  when:
│ │ │ +0010d750: 2027 226b 6572 6e65 6c22 2069 6e20 616e   '"kernel" in an
│ │ │ +0010d760: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +0010d770: 6167 6573 270a 2020 7461 6773 3a0a 2020  ages'.  tags:.  
│ │ │ +0010d780: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +0010d790: 2d36 2861 290a 2020 2d20 5043 492d 4453  -6(a).  - PCI-DS
│ │ │ +0010d7a0: 532d 5265 712d 3130 2e37 0a20 202d 2050  S-Req-10.7.  - P
│ │ │ +0010d7b0: 4349 2d44 5353 7634 2d31 302e 350a 2020  CI-DSSv4-10.5.  
│ │ │ +0010d7c0: 2d20 5043 492d 4453 5376 342d 3130 2e35  - PCI-DSSv4-10.5
│ │ │ +0010d7d0: 2e31 0a20 202d 2065 6e61 626c 655f 7374  .1.  - enable_st
│ │ │ +0010d7e0: 7261 7465 6779 0a20 202d 206c 6f77 5f63  rategy.  - low_c
│ │ │ +0010d7f0: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f  omplexity.  - lo
│ │ │ +0010d800: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ +0010d810: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ +0010d820: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ +0010d830: 6565 6465 640a 2020 2d20 7061 636b 6167  eeded.  - packag
│ │ │ +0010d840: 655f 6c6f 6772 6f74 6174 655f 696e 7374  e_logrotate_inst
│ │ │ +0010d850: 616c 6c65 640a 3c2f 636f 6465 3e3c 2f70  alled.

Remediatio │ │ │ +0010d910: 6e20 5075 7070 6574 2073 6e69 7070 6574 n Puppet snippet │ │ │ +0010d920: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Complexity │ │ │ +0010d9b0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ +0010d9d0: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ +0010d9e0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +0010d9f0: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ +0010da00: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ +0010da20: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:enable
include inst
│ │ │ +0010da60: 616c 6c5f 6c6f 6772 6f74 6174 650a 0a63  all_logrotate..c
│ │ │ +0010da70: 6c61 7373 2069 6e73 7461 6c6c 5f6c 6f67  lass install_log
│ │ │ +0010da80: 726f 7461 7465 207b 0a20 2070 6163 6b61  rotate {.  packa
│ │ │ +0010da90: 6765 207b 2027 6c6f 6772 6f74 6174 6527  ge { 'logrotate'
│ │ │ +0010daa0: 3a0a 2020 2020 656e 7375 7265 203d 2667  :.    ensure =&g
│ │ │ +0010dab0: 743b 2027 696e 7374 616c 6c65 6427 2c0a  t; 'installed',.
│ │ │ +0010dac0: 2020 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70    }.}.

Remediatio │ │ │ +0010db80: 6e20 4f53 4275 696c 6420 426c 7565 7072 n OSBuild Bluepr │ │ │ +0010db90: 696e 7420 736e 6970 7065 7420 e287 b23c int snippet ...< │ │ │ +0010dba0: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
.[[packages]].
│ │ │ +0010dbf0: 6e61 6d65 203d 2022 6c6f 6772 6f74 6174  name = "logrotat
│ │ │ +0010dc00: 6522 0a76 6572 7369 6f6e 203d 2022 2a22  e".version = "*"
│ │ │ +0010dc10: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation She │ │ │ +0010dcd0: 6c6c 2073 6372 6970 7420 e287 b23c 2f61 ll script ...
< │ │ │ +0010dd70: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +0010dd80: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ +0010ddd0: 3c74 723e 3c74 683e 5374 7261 7465 6779
# R
│ │ │ +0010de10: 656d 6564 6961 7469 6f6e 2069 7320 6170  emediation is ap
│ │ │ +0010de20: 706c 6963 6162 6c65 206f 6e6c 7920 696e  plicable only in
│ │ │ +0010de30: 2063 6572 7461 696e 2070 6c61 7466 6f72   certain platfor
│ │ │ +0010de40: 6d73 0a69 6620 7270 6d20 2d2d 7175 6965  ms.if rpm --quie
│ │ │ +0010de50: 7420 2d71 206b 6572 6e65 6c3b 2074 6865  t -q kernel; the
│ │ │ +0010de60: 6e0a 0a69 6620 2120 7270 6d20 2d71 202d  n..if ! rpm -q -
│ │ │ +0010de70: 2d71 7569 6574 2022 6c6f 6772 6f74 6174  -quiet "logrotat
│ │ │ +0010de80: 6522 203b 2074 6865 6e0a 2020 2020 646e  e" ; then.    dn
│ │ │ +0010de90: 6620 696e 7374 616c 6c20 2d79 2022 6c6f  f install -y "lo
│ │ │ +0010dea0: 6772 6f74 6174 6522 0a66 690a 0a65 6c73  grotate".fi..els
│ │ │ +0010deb0: 650a 2020 2020 2667 743b 2661 6d70 3b32  e.    >&2
│ │ │ +0010dec0: 2065 6368 6f20 2752 656d 6564 6961 7469   echo 'Remediati
│ │ │ +0010ded0: 6f6e 2069 7320 6e6f 7420 6170 706c 6963  on is not applic
│ │ │ +0010dee0: 6162 6c65 2c20 6e6f 7468 696e 6720 7761  able, nothing wa
│ │ │ +0010def0: 7320 646f 6e65 270a 6669 0a3c 2f63 6f64  s done'.fi.
Remed │ │ │ +0010dfb0: 6961 7469 6f6e 2041 6e61 636f 6e64 6120 iation Anaconda │ │ │ +0010dfc0: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ +0010dfd0: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
C │ │ │ +0010dd60: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ +0010dd90: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ +0010dda0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ +0010dde0: 3a3c 2f74 683e 3c74 643e 656e 6162 6c65 :enable │ │ │ +0010ddf0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Com │ │ │ +0010e050: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ +0010e080: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ +0010e0a0: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +0010e0b0: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ +0010e0d0: 2f74 683e 3c74 643e 656e 6162 6c65 3c2f /th>enable
│ │ │ +0010e0f0: 3c70 7265 3e3c 636f 6465 3e0a 7061 636b
.pack
│ │ │ +0010e100: 6167 6520 2d2d 6164 643d 6c6f 6772 6f74  age --add=logrot
│ │ │ +0010e110: 6174 650a 3c2f 636f 6465 3e3c 2f70 7265  ate.
< │ │ │ 0010e140: 2f74 6162 6c65 3e3c 2f74 643e 3c2f 7472 /table>Remediation OSB │ │ │ -001187b0: 7569 6c64 2042 6c75 6570 7269 6e74 2073 uild Blueprint s │ │ │ -001187c0: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
.[[
│ │ │ -00118810: 7061 636b 6167 6573 5d5d 0a6e 616d 6520  packages]].name 
│ │ │ -00118820: 3d20 2272 7379 736c 6f67 2d67 6e75 746c  = "rsyslog-gnutl
│ │ │ -00118830: 7322 0a76 6572 7369 6f6e 203d 2022 2a22  s".version = "*"
│ │ │ -00118840: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation Ana │ │ │ -00118900: 636f 6e64 6120 736e 6970 7065 7420 e287 conda snippet .. │ │ │ -00118910: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ -00118990: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -001189b0: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -00118a00: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
.package --add=
│ │ │ -00118a50: 7273 7973 6c6f 672d 676e 7574 6c73 0a3c  rsyslog-gnutls.<
│ │ │ -00118a60: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ -00118b10: 656d 6564 6961 7469 6f6e 2050 7570 7065 emediation Puppe │ │ │ -00118b20: 7420 736e 6970 7065 7420 e287 b23c 2f61 t snippet ...
low
Disr │ │ │ -001189c0: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -001189d0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ -00118a10: 7465 6779 3a3c 2f74 683e 3c74 643e 656e tegy:en │ │ │ -00118a20: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
< │ │ │ -00118bc0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -00118bd0: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ -00118c20: 3c74 723e 3c74 683e 5374 7261 7465 6779
inc
│ │ │ -00118c60: 6c75 6465 2069 6e73 7461 6c6c 5f72 7379  lude install_rsy
│ │ │ -00118c70: 736c 6f67 2d67 6e75 746c 730a 0a63 6c61  slog-gnutls..cla
│ │ │ -00118c80: 7373 2069 6e73 7461 6c6c 5f72 7379 736c  ss install_rsysl
│ │ │ -00118c90: 6f67 2d67 6e75 746c 7320 7b0a 2020 7061  og-gnutls {.  pa
│ │ │ -00118ca0: 636b 6167 6520 7b20 2772 7379 736c 6f67  ckage { 'rsyslog
│ │ │ -00118cb0: 2d67 6e75 746c 7327 3a0a 2020 2020 656e  -gnutls':.    en
│ │ │ -00118cc0: 7375 7265 203d 2667 743b 2027 696e 7374  sure => 'inst
│ │ │ -00118cd0: 616c 6c65 6427 2c0a 2020 7d0a 7d0a 3c2f  alled',.  }.}.
Re │ │ │ -00118d90: 6d65 6469 6174 696f 6e20 416e 7369 626c mediation Ansibl │ │ │ -00118da0: 6520 736e 6970 7065 7420 e287 b23c 2f61 e snippet ...
C │ │ │ -00118bb0: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -00118be0: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ -00118bf0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -00118c30: 3a3c 2f74 683e 3c74 643e 656e 6162 6c65 :enable │ │ │ -00118c40: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
< │ │ │ -00118e40: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -00118e50: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ -00118ea0: 3c74 723e 3c74 683e 5374 7261 7465 6779
- n
│ │ │ -00118ee0: 616d 653a 2047 6174 6865 7220 7468 6520  ame: Gather the 
│ │ │ -00118ef0: 7061 636b 6167 6520 6661 6374 730a 2020  package facts.  
│ │ │ -00118f00: 7061 636b 6167 655f 6661 6374 733a 0a20  package_facts:. 
│ │ │ -00118f10: 2020 206d 616e 6167 6572 3a20 6175 746f     manager: auto
│ │ │ -00118f20: 0a20 2074 6167 733a 0a20 202d 2065 6e61  .  tags:.  - ena
│ │ │ -00118f30: 626c 655f 7374 7261 7465 6779 0a20 202d  ble_strategy.  -
│ │ │ -00118f40: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ -00118f50: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ -00118f60: 6f6e 0a20 202d 206d 6564 6975 6d5f 7365  on.  - medium_se
│ │ │ -00118f70: 7665 7269 7479 0a20 202d 206e 6f5f 7265  verity.  - no_re
│ │ │ -00118f80: 626f 6f74 5f6e 6565 6465 640a 2020 2d20  boot_needed.  - 
│ │ │ -00118f90: 7061 636b 6167 655f 7273 7973 6c6f 672d  package_rsyslog-
│ │ │ -00118fa0: 676e 7574 6c73 5f69 6e73 7461 6c6c 6564  gnutls_installed
│ │ │ -00118fb0: 0a0a 2d20 6e61 6d65 3a20 456e 7375 7265  ..- name: Ensure
│ │ │ -00118fc0: 2072 7379 736c 6f67 2d67 6e75 746c 7320   rsyslog-gnutls 
│ │ │ -00118fd0: 6973 2069 6e73 7461 6c6c 6564 0a20 2061  is installed.  a
│ │ │ -00118fe0: 6e73 6962 6c65 2e62 7569 6c74 696e 2e70  nsible.builtin.p
│ │ │ -00118ff0: 6163 6b61 6765 3a0a 2020 2020 6e61 6d65  ackage:.    name
│ │ │ -00119000: 3a20 7273 7973 6c6f 672d 676e 7574 6c73  : rsyslog-gnutls
│ │ │ -00119010: 0a20 2020 2073 7461 7465 3a20 7072 6573  .    state: pres
│ │ │ -00119020: 656e 740a 2020 7768 656e 3a20 2722 6b65  ent.  when: '"ke
│ │ │ -00119030: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ -00119040: 5f66 6163 7473 2e70 6163 6b61 6765 7327  _facts.packages'
│ │ │ -00119050: 0a20 2074 6167 733a 0a20 202d 2065 6e61  .  tags:.  - ena
│ │ │ -00119060: 626c 655f 7374 7261 7465 6779 0a20 202d  ble_strategy.  -
│ │ │ -00119070: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ -00119080: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ -00119090: 6f6e 0a20 202d 206d 6564 6975 6d5f 7365  on.  - medium_se
│ │ │ -001190a0: 7665 7269 7479 0a20 202d 206e 6f5f 7265  verity.  - no_re
│ │ │ -001190b0: 626f 6f74 5f6e 6565 6465 640a 2020 2d20  boot_needed.  - 
│ │ │ -001190c0: 7061 636b 6167 655f 7273 7973 6c6f 672d  package_rsyslog-
│ │ │ -001190d0: 676e 7574 6c73 5f69 6e73 7461 6c6c 6564  gnutls_installed
│ │ │ -001190e0: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation She │ │ │ -001191a0: 6c6c 2073 6372 6970 7420 e287 b23c 2f61 ll script ...
C │ │ │ -00118e30: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -00118e60: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ -00118e70: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -00118eb0: 3a3c 2f74 683e 3c74 643e 656e 6162 6c65 :enable │ │ │ -00118ec0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
< │ │ │ -00119240: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -00119250: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ -001192a0: 3c74 723e 3c74 683e 5374 7261 7465 6779
# R
│ │ │ -001192e0: 656d 6564 6961 7469 6f6e 2069 7320 6170  emediation is ap
│ │ │ -001192f0: 706c 6963 6162 6c65 206f 6e6c 7920 696e  plicable only in
│ │ │ -00119300: 2063 6572 7461 696e 2070 6c61 7466 6f72   certain platfor
│ │ │ -00119310: 6d73 0a69 6620 7270 6d20 2d2d 7175 6965  ms.if rpm --quie
│ │ │ -00119320: 7420 2d71 206b 6572 6e65 6c3b 2074 6865  t -q kernel; the
│ │ │ -00119330: 6e0a 0a69 6620 2120 7270 6d20 2d71 202d  n..if ! rpm -q -
│ │ │ -00119340: 2d71 7569 6574 2022 7273 7973 6c6f 672d  -quiet "rsyslog-
│ │ │ -00119350: 676e 7574 6c73 2220 3b20 7468 656e 0a20  gnutls" ; then. 
│ │ │ -00119360: 2020 2064 6e66 2069 6e73 7461 6c6c 202d     dnf install -
│ │ │ -00119370: 7920 2272 7379 736c 6f67 2d67 6e75 746c  y "rsyslog-gnutl
│ │ │ -00119380: 7322 0a66 690a 0a65 6c73 650a 2020 2020  s".fi..else.    
│ │ │ -00119390: 2667 743b 2661 6d70 3b32 2065 6368 6f20  >&2 echo 
│ │ │ -001193a0: 2752 656d 6564 6961 7469 6f6e 2069 7320  'Remediation is 
│ │ │ -001193b0: 6e6f 7420 6170 706c 6963 6162 6c65 2c20  not applicable, 
│ │ │ -001193c0: 6e6f 7468 696e 6720 7761 7320 646f 6e65  nothing was done
│ │ │ -001193d0: 270a 6669 0a3c 2f63 6f64 653e 3c2f 7072  '.fi.Remediation Ans
│ │ │ +001187b0: 6962 6c65 2073 6e69 7070 6574 20e2 87b2  ible snippet ...
│ │ │ +001187c0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61  
C │ │ │ -00119230: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -00119260: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ -00119270: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -001192b0: 3a3c 2f74 683e 3c74 643e 656e 6162 6c65 :enable │ │ │ -001192c0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Complexity: │ │ │ +00118890: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +001188a0: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f

│ │ │ +001188f0: 2d20 6e61 6d65 3a20 4761 7468 6572 2074  - name: Gather t
│ │ │ +00118900: 6865 2070 6163 6b61 6765 2066 6163 7473  he package facts
│ │ │ +00118910: 0a20 2070 6163 6b61 6765 5f66 6163 7473  .  package_facts
│ │ │ +00118920: 3a0a 2020 2020 6d61 6e61 6765 723a 2061  :.    manager: a
│ │ │ +00118930: 7574 6f0a 2020 7461 6773 3a0a 2020 2d20  uto.  tags:.  - 
│ │ │ +00118940: 656e 6162 6c65 5f73 7472 6174 6567 790a  enable_strategy.
│ │ │ +00118950: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ +00118960: 7479 0a20 202d 206c 6f77 5f64 6973 7275  ty.  - low_disru
│ │ │ +00118970: 7074 696f 6e0a 2020 2d20 6d65 6469 756d  ption.  - medium
│ │ │ +00118980: 5f73 6576 6572 6974 790a 2020 2d20 6e6f  _severity.  - no
│ │ │ +00118990: 5f72 6562 6f6f 745f 6e65 6564 6564 0a20  _reboot_needed. 
│ │ │ +001189a0: 202d 2070 6163 6b61 6765 5f72 7379 736c   - package_rsysl
│ │ │ +001189b0: 6f67 2d67 6e75 746c 735f 696e 7374 616c  og-gnutls_instal
│ │ │ +001189c0: 6c65 640a 0a2d 206e 616d 653a 2045 6e73  led..- name: Ens
│ │ │ +001189d0: 7572 6520 7273 7973 6c6f 672d 676e 7574  ure rsyslog-gnut
│ │ │ +001189e0: 6c73 2069 7320 696e 7374 616c 6c65 640a  ls is installed.
│ │ │ +001189f0: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ +00118a00: 6e2e 7061 636b 6167 653a 0a20 2020 206e  n.package:.    n
│ │ │ +00118a10: 616d 653a 2072 7379 736c 6f67 2d67 6e75  ame: rsyslog-gnu
│ │ │ +00118a20: 746c 730a 2020 2020 7374 6174 653a 2070  tls.    state: p
│ │ │ +00118a30: 7265 7365 6e74 0a20 2077 6865 6e3a 2027  resent.  when: '
│ │ │ +00118a40: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ +00118a50: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +00118a60: 6573 270a 2020 7461 6773 3a0a 2020 2d20  es'.  tags:.  - 
│ │ │ +00118a70: 656e 6162 6c65 5f73 7472 6174 6567 790a  enable_strategy.
│ │ │ +00118a80: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ +00118a90: 7479 0a20 202d 206c 6f77 5f64 6973 7275  ty.  - low_disru
│ │ │ +00118aa0: 7074 696f 6e0a 2020 2d20 6d65 6469 756d  ption.  - medium
│ │ │ +00118ab0: 5f73 6576 6572 6974 790a 2020 2d20 6e6f  _severity.  - no
│ │ │ +00118ac0: 5f72 6562 6f6f 745f 6e65 6564 6564 0a20  _reboot_needed. 
│ │ │ +00118ad0: 202d 2070 6163 6b61 6765 5f72 7379 736c   - package_rsysl
│ │ │ +00118ae0: 6f67 2d67 6e75 746c 735f 696e 7374 616c  og-gnutls_instal
│ │ │ +00118af0: 6c65 640a 3c2f 636f 6465 3e3c 2f70 7265  led.
Remediation │ │ │ +00118bb0: 5075 7070 6574 2073 6e69 7070 6574 20e2 Puppet snippet . │ │ │ +00118bc0: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
low
Disru │ │ │ +00118870: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +00118880: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +001188c0: 6567 793a 3c2f 7468 3e3c 7464 3e65 6e61 egy:ena │ │ │ +001188d0: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
│ │ │ +00118c40: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +00118c60: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ +00118cb0: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 < │ │ │ +00118ce0: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
include instal
│ │ │ +00118d00: 6c5f 7273 7973 6c6f 672d 676e 7574 6c73  l_rsyslog-gnutls
│ │ │ +00118d10: 0a0a 636c 6173 7320 696e 7374 616c 6c5f  ..class install_
│ │ │ +00118d20: 7273 7973 6c6f 672d 676e 7574 6c73 207b  rsyslog-gnutls {
│ │ │ +00118d30: 0a20 2070 6163 6b61 6765 207b 2027 7273  .  package { 'rs
│ │ │ +00118d40: 7973 6c6f 672d 676e 7574 6c73 273a 0a20  yslog-gnutls':. 
│ │ │ +00118d50: 2020 2065 6e73 7572 6520 3d26 6774 3b20     ensure => 
│ │ │ +00118d60: 2769 6e73 7461 6c6c 6564 272c 0a20 207d  'installed',.  }
│ │ │ +00118d70: 0a7d 0a3c 2f63 6f64 653e 3c2f 7072 653e  .}.
│ │ │ +00118d80: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22 Remediation O │ │ │ +00118e30: 5342 7569 6c64 2042 6c75 6570 7269 6e74 SBuild Blueprint │ │ │ +00118e40: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ +00118e50: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
.
│ │ │ +00118e90: 5b5b 7061 636b 6167 6573 5d5d 0a6e 616d  [[packages]].nam
│ │ │ +00118ea0: 6520 3d20 2272 7379 736c 6f67 2d67 6e75  e = "rsyslog-gnu
│ │ │ +00118eb0: 746c 7322 0a76 6572 7369 6f6e 203d 2022  tls".version = "
│ │ │ +00118ec0: 2a22 0a3c 2f63 6f64 653e 3c2f 7072 653e  *".
│ │ │ +00118ed0: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation S │ │ │ +00118f80: 6865 6c6c 2073 6372 6970 7420 e287 b23c hell script ...< │ │ │ +00118f90: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
Complexity:< │ │ │ +00118c50: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +00118c70: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ +00118cc0: 6174 6567 793a 3c2f 7468 3e3c 7464 3e65 ategy:e │ │ │ +00118cd0: 6e61 626c 653c 2f74 643e 3c2f 7472 3e3c nable
< │ │ │ +00119060: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +00119070: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
#
│ │ │ +001190c0: 2052 656d 6564 6961 7469 6f6e 2069 7320   Remediation is 
│ │ │ +001190d0: 6170 706c 6963 6162 6c65 206f 6e6c 7920  applicable only 
│ │ │ +001190e0: 696e 2063 6572 7461 696e 2070 6c61 7466  in certain platf
│ │ │ +001190f0: 6f72 6d73 0a69 6620 7270 6d20 2d2d 7175  orms.if rpm --qu
│ │ │ +00119100: 6965 7420 2d71 206b 6572 6e65 6c3b 2074  iet -q kernel; t
│ │ │ +00119110: 6865 6e0a 0a69 6620 2120 7270 6d20 2d71  hen..if ! rpm -q
│ │ │ +00119120: 202d 2d71 7569 6574 2022 7273 7973 6c6f   --quiet "rsyslo
│ │ │ +00119130: 672d 676e 7574 6c73 2220 3b20 7468 656e  g-gnutls" ; then
│ │ │ +00119140: 0a20 2020 2064 6e66 2069 6e73 7461 6c6c  .    dnf install
│ │ │ +00119150: 202d 7920 2272 7379 736c 6f67 2d67 6e75   -y "rsyslog-gnu
│ │ │ +00119160: 746c 7322 0a66 690a 0a65 6c73 650a 2020  tls".fi..else.  
│ │ │ +00119170: 2020 2667 743b 2661 6d70 3b32 2065 6368    >&2 ech
│ │ │ +00119180: 6f20 2752 656d 6564 6961 7469 6f6e 2069  o 'Remediation i
│ │ │ +00119190: 7320 6e6f 7420 6170 706c 6963 6162 6c65  s not applicable
│ │ │ +001191a0: 2c20 6e6f 7468 696e 6720 7761 7320 646f  , nothing was do
│ │ │ +001191b0: 6e65 270a 6669 0a3c 2f63 6f64 653e 3c2f  ne'.fi.Remediati
│ │ │ +00119270: 6f6e 2041 6e61 636f 6e64 6120 736e 6970  on Anaconda snip
│ │ │ +00119280: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c  pet ...
< │ │ │ +00119290: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +001192a0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +001192b0: 7365 2220 6964 3d22 6964 3239 3422 3e3c se" id="id294">< │ │ │ +001192c0: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +001192d0: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +001192e0: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +001192f0: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +00119300: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >
Disruption:Strategy: │ │ │ +00119390: 3c74 643e 656e 6162 6c65 3c2f 7464 3e3c < │ │ │ +001193a0: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
Complexity:low
Disrup │ │ │ +00119040: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ +00119050: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ +00119090: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ +001190a0: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Complex │ │ │ +00119310: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ +00119320: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
low
Reboo │ │ │ +00119360: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ +00119370: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
enable
.package 
│ │ │ +001193c0: 2d2d 6164 643d 7273 7973 6c6f 672d 676e  --add=rsyslog-gn
│ │ │ +001193d0: 7574 6c73 0a3c 2f63 6f64 653e 3c2f 7072  utls.
│ │ │ 00119400: 3c2f 7461 626c 653e 3c2f 7464 3e3c 2f74 Remediation │ │ │ -001d4d60: 2041 6e61 636f 6e64 6120 736e 6970 7065 Anaconda snippe │ │ │ -001d4d70: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ -001d4df0: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ -001d4e00: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ -001d4e20: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ -001d4e30: 3c74 643e 6869 6768 3c2f 7464 3e3c 2f74 highReboot │ │ │ -001d4e50: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -001d4e60: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ -001d4e80: 7464 3e65 6e61 626c 653c 2f74 643e 3c2f td>enable
│ │ │ -001d4ea0: 3c63 6f64 653e 0a70 6172 7420 2f62 6f6f  .part /boo
│ │ │ -001d4eb0: 7420 2d2d 6d6f 756e 746f 7074 696f 6e73  t --mountoptions
│ │ │ -001d4ec0: 3d22 6e6f 6578 6563 220a 3c2f 636f 6465  ="noexec".
Remedi │ │ │ -001d4f80: 6174 696f 6e20 416e 7369 626c 6520 736e ation Ansible sn │ │ │ -001d4f90: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ -001d5040: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c
- n
│ │ │ -001d50d0: 616d 653a 2047 6174 6865 7220 7468 6520  ame: Gather the 
│ │ │ -001d50e0: 7061 636b 6167 6520 6661 6374 730a 2020  package facts.  
│ │ │ -001d50f0: 7061 636b 6167 655f 6661 6374 733a 0a20  package_facts:. 
│ │ │ -001d5100: 2020 206d 616e 6167 6572 3a20 6175 746f     manager: auto
│ │ │ -001d5110: 0a20 2074 6167 733a 0a20 202d 2063 6f6e  .  tags:.  - con
│ │ │ -001d5120: 6669 6775 7265 5f73 7472 6174 6567 790a  figure_strategy.
│ │ │ -001d5130: 2020 2d20 6869 6768 5f64 6973 7275 7074    - high_disrupt
│ │ │ -001d5140: 696f 6e0a 2020 2d20 6c6f 775f 636f 6d70  ion.  - low_comp
│ │ │ -001d5150: 6c65 7869 7479 0a20 202d 206d 6564 6975  lexity.  - mediu
│ │ │ -001d5160: 6d5f 7365 7665 7269 7479 0a20 202d 206d  m_severity.  - m
│ │ │ -001d5170: 6f75 6e74 5f6f 7074 696f 6e5f 626f 6f74  ount_option_boot
│ │ │ -001d5180: 5f6e 6f65 7865 630a 2020 2d20 6e6f 5f72  _noexec.  - no_r
│ │ │ -001d5190: 6562 6f6f 745f 6e65 6564 6564 0a0a 2d20  eboot_needed..- 
│ │ │ -001d51a0: 6e61 6d65 3a20 2741 6464 206e 6f65 7865  name: 'Add noexe
│ │ │ -001d51b0: 6320 4f70 7469 6f6e 2074 6f20 2f62 6f6f  c Option to /boo
│ │ │ -001d51c0: 743a 2043 6865 636b 2069 6e66 6f72 6d61  t: Check informa
│ │ │ -001d51d0: 7469 6f6e 2061 7373 6f63 6961 7465 6420  tion associated 
│ │ │ -001d51e0: 746f 206d 6f75 6e74 706f 696e 7427 0a20  to mountpoint'. 
│ │ │ -001d51f0: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ -001d5200: 2e63 6f6d 6d61 6e64 3a20 6669 6e64 6d6e  .command: findmn
│ │ │ -001d5210: 7420 2d2d 6673 7461 6220 272f 626f 6f74  t --fstab '/boot
│ │ │ -001d5220: 270a 2020 7265 6769 7374 6572 3a20 6465  '.  register: de
│ │ │ -001d5230: 7669 6365 5f6e 616d 650a 2020 6661 696c  vice_name.  fail
│ │ │ -001d5240: 6564 5f77 6865 6e3a 2064 6576 6963 655f  ed_when: device_
│ │ │ -001d5250: 6e61 6d65 2e72 6320 2667 743b 2031 0a20  name.rc > 1. 
│ │ │ -001d5260: 2063 6861 6e67 6564 5f77 6865 6e3a 2066   changed_when: f
│ │ │ -001d5270: 616c 7365 0a20 2063 6865 636b 5f6d 6f64  alse.  check_mod
│ │ │ -001d5280: 653a 2066 616c 7365 0a20 2077 6865 6e3a  e: false.  when:
│ │ │ -001d5290: 2028 206e 6f74 2028 2022 6b65 726e 656c   ( not ( "kernel
│ │ │ -001d52a0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001d52b0: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ -001d52c0: 2262 6f6f 7463 2220 696e 2061 6e73 6962  "bootc" in ansib
│ │ │ -001d52d0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -001d52e0: 730a 2020 2020 616e 6420 6e6f 7420 226f  s.    and not "o
│ │ │ -001d52f0: 7065 6e73 6869 6674 2d6b 7562 656c 6574  penshift-kubelet
│ │ │ -001d5300: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001d5310: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ -001d5320: 226f 7374 7265 6522 2069 6e20 616e 7369  "ostree" in ansi
│ │ │ -001d5330: 626c 655f 7072 6f63 5f63 6d64 6c69 6e65  ble_proc_cmdline
│ │ │ -001d5340: 0a20 2020 2029 2061 6e64 206e 6f74 2028  .    ) and not (
│ │ │ -001d5350: 2061 6e73 6962 6c65 5f76 6972 7475 616c   ansible_virtual
│ │ │ -001d5360: 697a 6174 696f 6e5f 7479 7065 2069 6e20  ization_type in 
│ │ │ -001d5370: 5b22 646f 636b 6572 222c 2022 6c78 6322  ["docker", "lxc"
│ │ │ -001d5380: 2c20 226f 7065 6e76 7a22 2c20 2270 6f64  , "openvz", "pod
│ │ │ -001d5390: 6d61 6e22 2c0a 2020 2020 2263 6f6e 7461  man",.    "conta
│ │ │ -001d53a0: 696e 6572 225d 2029 2029 0a20 2074 6167  iner"] ) ).  tag
│ │ │ -001d53b0: 733a 0a20 202d 2063 6f6e 6669 6775 7265  s:.  - configure
│ │ │ -001d53c0: 5f73 7472 6174 6567 790a 2020 2d20 6869  _strategy.  - hi
│ │ │ -001d53d0: 6768 5f64 6973 7275 7074 696f 6e0a 2020  gh_disruption.  
│ │ │ -001d53e0: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ -001d53f0: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ -001d5400: 7269 7479 0a20 202d 206d 6f75 6e74 5f6f  rity.  - mount_o
│ │ │ -001d5410: 7074 696f 6e5f 626f 6f74 5f6e 6f65 7865  ption_boot_noexe
│ │ │ -001d5420: 630a 2020 2d20 6e6f 5f72 6562 6f6f 745f  c.  - no_reboot_
│ │ │ -001d5430: 6e65 6564 6564 0a0a 2d20 6e61 6d65 3a20  needed..- name: 
│ │ │ -001d5440: 2741 6464 206e 6f65 7865 6320 4f70 7469  'Add noexec Opti
│ │ │ -001d5450: 6f6e 2074 6f20 2f62 6f6f 743a 2043 7265  on to /boot: Cre
│ │ │ -001d5460: 6174 6520 6d6f 756e 745f 696e 666f 2064  ate mount_info d
│ │ │ -001d5470: 6963 7469 6f6e 6172 7920 7661 7269 6162  ictionary variab
│ │ │ -001d5480: 6c65 270a 2020 7365 745f 6661 6374 3a0a  le'.  set_fact:.
│ │ │ -001d5490: 2020 2020 6d6f 756e 745f 696e 666f 3a20      mount_info: 
│ │ │ -001d54a0: 277b 7b20 6d6f 756e 745f 696e 666f 7c64  '{{ mount_info|d
│ │ │ -001d54b0: 6566 6175 6c74 287b 7d29 7c63 6f6d 6269  efault({})|combi
│ │ │ -001d54c0: 6e65 287b 6974 656d 2e30 3a20 6974 656d  ne({item.0: item
│ │ │ -001d54d0: 2e31 7d29 207d 7d27 0a20 2077 6974 685f  .1}) }}'.  with_
│ │ │ -001d54e0: 746f 6765 7468 6572 3a0a 2020 2d20 277b  together:.  - '{
│ │ │ -001d54f0: 7b20 6465 7669 6365 5f6e 616d 652e 7374  { device_name.st
│ │ │ -001d5500: 646f 7574 5f6c 696e 6573 5b30 5d2e 7370  dout_lines[0].sp
│ │ │ -001d5510: 6c69 7428 2920 7c20 6d61 7028 2727 6c6f  lit() | map(''lo
│ │ │ -001d5520: 7765 7227 2729 207c 206c 6973 7420 7d7d  wer'') | list }}
│ │ │ -001d5530: 270a 2020 2d20 277b 7b20 6465 7669 6365  '.  - '{{ device
│ │ │ -001d5540: 5f6e 616d 652e 7374 646f 7574 5f6c 696e  _name.stdout_lin
│ │ │ -001d5550: 6573 5b31 5d2e 7370 6c69 7428 2920 7c20  es[1].split() | 
│ │ │ -001d5560: 6c69 7374 207d 7d27 0a20 2077 6865 6e3a  list }}'.  when:
│ │ │ -001d5570: 0a20 202d 2028 206e 6f74 2028 2022 6b65  .  - ( not ( "ke
│ │ │ -001d5580: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ -001d5590: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ -001d55a0: 616e 6420 2262 6f6f 7463 2220 696e 2061  and "bootc" in a
│ │ │ -001d55b0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001d55c0: 6b61 6765 730a 2020 2020 616e 6420 6e6f  kages.    and no
│ │ │ -001d55d0: 7420 226f 7065 6e73 6869 6674 2d6b 7562  t "openshift-kub
│ │ │ -001d55e0: 656c 6574 2220 696e 2061 6e73 6962 6c65  elet" in ansible
│ │ │ -001d55f0: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ -001d5600: 616e 6420 226f 7374 7265 6522 2069 6e20  and "ostree" in 
│ │ │ -001d5610: 616e 7369 626c 655f 7072 6f63 5f63 6d64  ansible_proc_cmd
│ │ │ -001d5620: 6c69 6e65 0a20 2020 2029 2061 6e64 206e  line.    ) and n
│ │ │ -001d5630: 6f74 2028 2061 6e73 6962 6c65 5f76 6972  ot ( ansible_vir
│ │ │ -001d5640: 7475 616c 697a 6174 696f 6e5f 7479 7065  tualization_type
│ │ │ -001d5650: 2069 6e20 5b22 646f 636b 6572 222c 2022   in ["docker", "
│ │ │ -001d5660: 6c78 6322 2c20 226f 7065 6e76 7a22 2c20  lxc", "openvz", 
│ │ │ -001d5670: 2270 6f64 6d61 6e22 2c0a 2020 2020 2263  "podman",.    "c
│ │ │ -001d5680: 6f6e 7461 696e 6572 225d 2029 2029 0a20  ontainer"] ) ). 
│ │ │ -001d5690: 202d 2064 6576 6963 655f 6e61 6d65 2e73   - device_name.s
│ │ │ -001d56a0: 7464 6f75 7420 6973 2064 6566 696e 6564  tdout is defined
│ │ │ -001d56b0: 2061 6e64 2064 6576 6963 655f 6e61 6d65   and device_name
│ │ │ -001d56c0: 2e73 7464 6f75 745f 6c69 6e65 7320 6973  .stdout_lines is
│ │ │ -001d56d0: 2064 6566 696e 6564 0a20 202d 2028 6465   defined.  - (de
│ │ │ -001d56e0: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ -001d56f0: 207c 206c 656e 6774 6820 2667 743b 2030   | length > 0
│ │ │ -001d5700: 290a 2020 7461 6773 3a0a 2020 2d20 636f  ).  tags:.  - co
│ │ │ -001d5710: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ -001d5720: 0a20 202d 2068 6967 685f 6469 7372 7570  .  - high_disrup
│ │ │ -001d5730: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d  tion.  - low_com
│ │ │ -001d5740: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ -001d5750: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ -001d5760: 6d6f 756e 745f 6f70 7469 6f6e 5f62 6f6f  mount_option_boo
│ │ │ -001d5770: 745f 6e6f 6578 6563 0a20 202d 206e 6f5f  t_noexec.  - no_
│ │ │ -001d5780: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ -001d5790: 206e 616d 653a 2027 4164 6420 6e6f 6578   name: 'Add noex
│ │ │ -001d57a0: 6563 204f 7074 696f 6e20 746f 202f 626f  ec Option to /bo
│ │ │ -001d57b0: 6f74 3a20 4966 202f 626f 6f74 206e 6f74  ot: If /boot not
│ │ │ -001d57c0: 206d 6f75 6e74 6564 2c20 6372 6166 7420   mounted, craft 
│ │ │ -001d57d0: 6d6f 756e 745f 696e 666f 206d 616e 7561  mount_info manua
│ │ │ -001d57e0: 6c6c 7927 0a20 2073 6574 5f66 6163 743a  lly'.  set_fact:
│ │ │ -001d57f0: 0a20 2020 206d 6f75 6e74 5f69 6e66 6f3a  .    mount_info:
│ │ │ -001d5800: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f7c   '{{ mount_info|
│ │ │ -001d5810: 6465 6661 756c 7428 7b7d 297c 636f 6d62  default({})|comb
│ │ │ -001d5820: 696e 6528 7b69 7465 6d2e 303a 2069 7465  ine({item.0: ite
│ │ │ -001d5830: 6d2e 317d 2920 7d7d 270a 2020 7769 7468  m.1}) }}'.  with
│ │ │ -001d5840: 5f74 6f67 6574 6865 723a 0a20 202d 202d  _together:.  - -
│ │ │ -001d5850: 2074 6172 6765 740a 2020 2020 2d20 736f   target.    - so
│ │ │ -001d5860: 7572 6365 0a20 2020 202d 2066 7374 7970  urce.    - fstyp
│ │ │ -001d5870: 650a 2020 2020 2d20 6f70 7469 6f6e 730a  e.    - options.
│ │ │ -001d5880: 2020 2d20 2d20 2f62 6f6f 740a 2020 2020    - - /boot.    
│ │ │ -001d5890: 2d20 2727 0a20 2020 202d 2027 270a 2020  - ''.    - ''.  
│ │ │ -001d58a0: 2020 2d20 6465 6661 756c 7473 0a20 2077    - defaults.  w
│ │ │ -001d58b0: 6865 6e3a 0a20 202d 2028 206e 6f74 2028  hen:.  - ( not (
│ │ │ -001d58c0: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ -001d58d0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001d58e0: 6765 7320 616e 6420 2262 6f6f 7463 2220  ges and "bootc" 
│ │ │ -001d58f0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001d5900: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ -001d5910: 6420 6e6f 7420 226f 7065 6e73 6869 6674  d not "openshift
│ │ │ -001d5920: 2d6b 7562 656c 6574 2220 696e 2061 6e73  -kubelet" in ans
│ │ │ -001d5930: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001d5940: 6765 7320 616e 6420 226f 7374 7265 6522  ges and "ostree"
│ │ │ -001d5950: 2069 6e20 616e 7369 626c 655f 7072 6f63   in ansible_proc
│ │ │ -001d5960: 5f63 6d64 6c69 6e65 0a20 2020 2029 2061  _cmdline.    ) a
│ │ │ -001d5970: 6e64 206e 6f74 2028 2061 6e73 6962 6c65  nd not ( ansible
│ │ │ -001d5980: 5f76 6972 7475 616c 697a 6174 696f 6e5f  _virtualization_
│ │ │ -001d5990: 7479 7065 2069 6e20 5b22 646f 636b 6572  type in ["docker
│ │ │ -001d59a0: 222c 2022 6c78 6322 2c20 226f 7065 6e76  ", "lxc", "openv
│ │ │ -001d59b0: 7a22 2c20 2270 6f64 6d61 6e22 2c0a 2020  z", "podman",.  
│ │ │ -001d59c0: 2020 2263 6f6e 7461 696e 6572 225d 2029    "container"] )
│ │ │ -001d59d0: 2029 0a20 202d 2028 222d 2d66 7374 6162   ).  - ("--fstab
│ │ │ -001d59e0: 2220 7c20 6c65 6e67 7468 203d 3d20 3029  " | length == 0)
│ │ │ -001d59f0: 0a20 202d 2064 6576 6963 655f 6e61 6d65  .  - device_name
│ │ │ -001d5a00: 2e73 7464 6f75 7420 6973 2064 6566 696e  .stdout is defin
│ │ │ -001d5a10: 6564 2061 6e64 2064 6576 6963 655f 6e61  ed and device_na
│ │ │ -001d5a20: 6d65 2e73 7464 6f75 745f 6c69 6e65 7320  me.stdout_lines 
│ │ │ -001d5a30: 6973 2064 6566 696e 6564 0a20 202d 2028  is defined.  - (
│ │ │ -001d5a40: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ -001d5a50: 7574 207c 206c 656e 6774 6820 3d3d 2030  ut | length == 0
│ │ │ -001d5a60: 290a 2020 7461 6773 3a0a 2020 2d20 636f  ).  tags:.  - co
│ │ │ -001d5a70: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ -001d5a80: 0a20 202d 2068 6967 685f 6469 7372 7570  .  - high_disrup
│ │ │ -001d5a90: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d  tion.  - low_com
│ │ │ -001d5aa0: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ -001d5ab0: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ -001d5ac0: 6d6f 756e 745f 6f70 7469 6f6e 5f62 6f6f  mount_option_boo
│ │ │ -001d5ad0: 745f 6e6f 6578 6563 0a20 202d 206e 6f5f  t_noexec.  - no_
│ │ │ -001d5ae0: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ -001d5af0: 206e 616d 653a 2027 4164 6420 6e6f 6578   name: 'Add noex
│ │ │ -001d5b00: 6563 204f 7074 696f 6e20 746f 202f 626f  ec Option to /bo
│ │ │ -001d5b10: 6f74 3a20 4d61 6b65 2073 7572 6520 6e6f  ot: Make sure no
│ │ │ -001d5b20: 6578 6563 206f 7074 696f 6e20 6973 2070  exec option is p
│ │ │ -001d5b30: 6172 7420 6f66 2074 6865 2074 6f20 2f62  art of the to /b
│ │ │ -001d5b40: 6f6f 740a 2020 2020 6f70 7469 6f6e 7327  oot.    options'
│ │ │ -001d5b50: 0a20 2073 6574 5f66 6163 743a 0a20 2020  .  set_fact:.   
│ │ │ -001d5b60: 206d 6f75 6e74 5f69 6e66 6f3a 2027 7b7b   mount_info: '{{
│ │ │ -001d5b70: 206d 6f75 6e74 5f69 6e66 6f20 7c20 636f   mount_info | co
│ │ │ -001d5b80: 6d62 696e 6528 207b 2727 6f70 7469 6f6e  mbine( {''option
│ │ │ -001d5b90: 7327 273a 2727 2727 7e28 6d6f 756e 745f  s'':''''~(mount_
│ │ │ -001d5ba0: 696e 666f 2e6f 7074 696f 6e73 207c 0a20  info.options |. 
│ │ │ -001d5bb0: 2020 2020 2064 6566 6175 6c74 2827 2727       default('''
│ │ │ -001d5bc0: 2729 297e 2827 272c 2727 2069 6620 286d  '))~('','' if (m
│ │ │ -001d5bd0: 6f75 6e74 5f69 6e66 6f2e 6f70 7469 6f6e  ount_info.option
│ │ │ -001d5be0: 7320 7c20 6465 6661 756c 7428 2727 2727  s | default(''''
│ │ │ -001d5bf0: 2929 2065 6c73 6520 2727 2727 297e 2727  )) else '''')~''
│ │ │ -001d5c00: 6e6f 6578 6563 2727 0a20 2020 2020 207d  noexec''.      }
│ │ │ -001d5c10: 2920 7d7d 270a 2020 7768 656e 3a0a 2020  ) }}'.  when:.  
│ │ │ -001d5c20: 2d20 2820 6e6f 7420 2820 226b 6572 6e65  - ( not ( "kerne
│ │ │ -001d5c30: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ -001d5c40: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ -001d5c50: 2022 626f 6f74 6322 2069 6e20 616e 7369   "bootc" in ansi
│ │ │ -001d5c60: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001d5c70: 6573 0a20 2020 2061 6e64 206e 6f74 2022  es.    and not "
│ │ │ -001d5c80: 6f70 656e 7368 6966 742d 6b75 6265 6c65  openshift-kubele
│ │ │ -001d5c90: 7422 2069 6e20 616e 7369 626c 655f 6661  t" in ansible_fa
│ │ │ -001d5ca0: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ -001d5cb0: 2022 6f73 7472 6565 2220 696e 2061 6e73   "ostree" in ans
│ │ │ -001d5cc0: 6962 6c65 5f70 726f 635f 636d 646c 696e  ible_proc_cmdlin
│ │ │ -001d5cd0: 650a 2020 2020 2920 616e 6420 6e6f 7420  e.    ) and not 
│ │ │ -001d5ce0: 2820 616e 7369 626c 655f 7669 7274 7561  ( ansible_virtua
│ │ │ -001d5cf0: 6c69 7a61 7469 6f6e 5f74 7970 6520 696e  lization_type in
│ │ │ -001d5d00: 205b 2264 6f63 6b65 7222 2c20 226c 7863   ["docker", "lxc
│ │ │ -001d5d10: 222c 2022 6f70 656e 767a 222c 2022 706f  ", "openvz", "po
│ │ │ -001d5d20: 646d 616e 222c 0a20 2020 2022 636f 6e74  dman",.    "cont
│ │ │ -001d5d30: 6169 6e65 7222 5d20 2920 290a 2020 2d20  ainer"] ) ).  - 
│ │ │ -001d5d40: 6d6f 756e 745f 696e 666f 2069 7320 6465  mount_info is de
│ │ │ -001d5d50: 6669 6e65 6420 616e 6420 226e 6f65 7865  fined and "noexe
│ │ │ -001d5d60: 6322 206e 6f74 2069 6e20 286d 6f75 6e74  c" not in (mount
│ │ │ -001d5d70: 5f69 6e66 6f2e 6f70 7469 6f6e 7320 7c20  _info.options | 
│ │ │ -001d5d80: 6465 6661 756c 7428 2727 2929 0a20 2074  default('')).  t
│ │ │ -001d5d90: 6167 733a 0a20 202d 2063 6f6e 6669 6775  ags:.  - configu
│ │ │ -001d5da0: 7265 5f73 7472 6174 6567 790a 2020 2d20  re_strategy.  - 
│ │ │ -001d5db0: 6869 6768 5f64 6973 7275 7074 696f 6e0a  high_disruption.
│ │ │ -001d5dc0: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ -001d5dd0: 7479 0a20 202d 206d 6564 6975 6d5f 7365  ty.  - medium_se
│ │ │ -001d5de0: 7665 7269 7479 0a20 202d 206d 6f75 6e74  verity.  - mount
│ │ │ -001d5df0: 5f6f 7074 696f 6e5f 626f 6f74 5f6e 6f65  _option_boot_noe
│ │ │ -001d5e00: 7865 630a 2020 2d20 6e6f 5f72 6562 6f6f  xec.  - no_reboo
│ │ │ -001d5e10: 745f 6e65 6564 6564 0a0a 2d20 6e61 6d65  t_needed..- name
│ │ │ -001d5e20: 3a20 2741 6464 206e 6f65 7865 6320 4f70  : 'Add noexec Op
│ │ │ -001d5e30: 7469 6f6e 2074 6f20 2f62 6f6f 743a 2045  tion to /boot: E
│ │ │ -001d5e40: 6e73 7572 6520 2f62 6f6f 7420 6973 206d  nsure /boot is m
│ │ │ -001d5e50: 6f75 6e74 6564 2077 6974 6820 6e6f 6578  ounted with noex
│ │ │ -001d5e60: 6563 206f 7074 696f 6e27 0a20 2061 6e73  ec option'.  ans
│ │ │ -001d5e70: 6962 6c65 2e70 6f73 6978 2e6d 6f75 6e74  ible.posix.mount
│ │ │ -001d5e80: 3a0a 2020 2020 7061 7468 3a20 2f62 6f6f  :.    path: /boo
│ │ │ -001d5e90: 740a 2020 2020 7372 633a 2027 7b7b 206d  t.    src: '{{ m
│ │ │ -001d5ea0: 6f75 6e74 5f69 6e66 6f2e 736f 7572 6365  ount_info.source
│ │ │ -001d5eb0: 207c 2064 6566 6175 6c74 2827 2727 2729   | default('''')
│ │ │ -001d5ec0: 207d 7d27 0a20 2020 206f 7074 733a 2027   }}'.    opts: '
│ │ │ -001d5ed0: 7b7b 206d 6f75 6e74 5f69 6e66 6f2e 6f70  {{ mount_info.op
│ │ │ -001d5ee0: 7469 6f6e 7320 7c20 6465 6661 756c 7428  tions | default(
│ │ │ -001d5ef0: 2727 2727 2920 7d7d 270a 2020 2020 7374  '''') }}'.    st
│ │ │ -001d5f00: 6174 653a 206d 6f75 6e74 6564 0a20 2020  ate: mounted.   
│ │ │ -001d5f10: 2066 7374 7970 653a 2027 7b7b 206d 6f75   fstype: '{{ mou
│ │ │ -001d5f20: 6e74 5f69 6e66 6f2e 6673 7479 7065 207c  nt_info.fstype |
│ │ │ -001d5f30: 2064 6566 6175 6c74 2827 2727 2729 207d   default('''') }
│ │ │ -001d5f40: 7d27 0a20 2072 6567 6973 7465 723a 206d  }'.  register: m
│ │ │ -001d5f50: 6f75 6e74 5f72 6573 756c 740a 2020 6661  ount_result.  fa
│ │ │ -001d5f60: 696c 6564 5f77 6865 6e3a 0a20 202d 206d  iled_when:.  - m
│ │ │ -001d5f70: 6f75 6e74 5f72 6573 756c 7420 6973 2066  ount_result is f
│ │ │ -001d5f80: 6169 6c65 640a 2020 2d20 2727 2774 6172  ailed.  - '''tar
│ │ │ -001d5f90: 6765 7420 6973 2062 7573 7927 2720 6e6f  get is busy'' no
│ │ │ -001d5fa0: 7420 696e 2028 6d6f 756e 745f 7265 7375  t in (mount_resu
│ │ │ -001d5fb0: 6c74 2e6d 7367 207c 2064 6566 6175 6c74  lt.msg | default
│ │ │ -001d5fc0: 2827 2727 2729 2927 0a20 202d 2027 2727  (''''))'.  - '''
│ │ │ -001d5fd0: 616c 7265 6164 7920 6d6f 756e 7465 6427  already mounted'
│ │ │ -001d5fe0: 2720 6e6f 7420 696e 2028 6d6f 756e 745f  ' not in (mount_
│ │ │ -001d5ff0: 7265 7375 6c74 2e6d 7367 207c 2064 6566  result.msg | def
│ │ │ -001d6000: 6175 6c74 2827 2727 2729 2927 0a20 2077  ault(''''))'.  w
│ │ │ -001d6010: 6865 6e3a 0a20 202d 2028 206e 6f74 2028  hen:.  - ( not (
│ │ │ -001d6020: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ -001d6030: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001d6040: 6765 7320 616e 6420 2262 6f6f 7463 2220  ges and "bootc" 
│ │ │ -001d6050: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001d6060: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ -001d6070: 6420 6e6f 7420 226f 7065 6e73 6869 6674  d not "openshift
│ │ │ -001d6080: 2d6b 7562 656c 6574 2220 696e 2061 6e73  -kubelet" in ans
│ │ │ -001d6090: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001d60a0: 6765 7320 616e 6420 226f 7374 7265 6522  ges and "ostree"
│ │ │ -001d60b0: 2069 6e20 616e 7369 626c 655f 7072 6f63   in ansible_proc
│ │ │ -001d60c0: 5f63 6d64 6c69 6e65 0a20 2020 2029 2061  _cmdline.    ) a
│ │ │ -001d60d0: 6e64 206e 6f74 2028 2061 6e73 6962 6c65  nd not ( ansible
│ │ │ -001d60e0: 5f76 6972 7475 616c 697a 6174 696f 6e5f  _virtualization_
│ │ │ -001d60f0: 7479 7065 2069 6e20 5b22 646f 636b 6572  type in ["docker
│ │ │ -001d6100: 222c 2022 6c78 6322 2c20 226f 7065 6e76  ", "lxc", "openv
│ │ │ -001d6110: 7a22 2c20 2270 6f64 6d61 6e22 2c0a 2020  z", "podman",.  
│ │ │ -001d6120: 2020 2263 6f6e 7461 696e 6572 225d 2029    "container"] )
│ │ │ -001d6130: 2029 0a20 202d 206d 6f75 6e74 5f69 6e66   ).  - mount_inf
│ │ │ -001d6140: 6f20 6973 2064 6566 696e 6564 0a20 202d  o is defined.  -
│ │ │ -001d6150: 2028 6465 7669 6365 5f6e 616d 652e 7374   (device_name.st
│ │ │ -001d6160: 646f 7574 2069 7320 6465 6669 6e65 6420  dout is defined 
│ │ │ -001d6170: 616e 6420 2864 6576 6963 655f 6e61 6d65  and (device_name
│ │ │ -001d6180: 2e73 7464 6f75 7420 7c20 6c65 6e67 7468  .stdout | length
│ │ │ -001d6190: 2026 6774 3b20 3029 2920 6f72 2028 222d   > 0)) or ("-
│ │ │ -001d61a0: 2d66 7374 6162 220a 2020 2020 7c20 6c65  -fstab".    | le
│ │ │ -001d61b0: 6e67 7468 203d 3d20 3029 0a20 2074 6167  ngth == 0).  tag
│ │ │ -001d61c0: 733a 0a20 202d 2063 6f6e 6669 6775 7265  s:.  - configure
│ │ │ -001d61d0: 5f73 7472 6174 6567 790a 2020 2d20 6869  _strategy.  - hi
│ │ │ -001d61e0: 6768 5f64 6973 7275 7074 696f 6e0a 2020  gh_disruption.  
│ │ │ -001d61f0: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ -001d6200: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ -001d6210: 7269 7479 0a20 202d 206d 6f75 6e74 5f6f  rity.  - mount_o
│ │ │ -001d6220: 7074 696f 6e5f 626f 6f74 5f6e 6f65 7865  ption_boot_noexe
│ │ │ -001d6230: 630a 2020 2d20 6e6f 5f72 6562 6f6f 745f  c.  - no_reboot_
│ │ │ -001d6240: 6e65 6564 6564 0a3c 2f63 6f64 653e 3c2f  needed.Remediati
│ │ │ -001d6300: 6f6e 2053 6865 6c6c 2073 6372 6970 7420  on Shell script 
│ │ │ -001d6310: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620  ...
< │ │ │ -001d63b0: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
Compl │ │ │ -001d5020: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ -001d5030: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ -001d5050: 2f74 683e 3c74 643e 6869 6768 3c2f 7464 /th>high
Re │ │ │ -001d5070: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -001d5080: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:configure │ │ │ -001d50b0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Reboot:false
# Remedia
│ │ │ -001d63d0: 7469 6f6e 2069 7320 6170 706c 6963 6162  tion is applicab
│ │ │ -001d63e0: 6c65 206f 6e6c 7920 696e 2063 6572 7461  le only in certa
│ │ │ -001d63f0: 696e 2070 6c61 7466 6f72 6d73 0a69 6620  in platforms.if 
│ │ │ -001d6400: 2820 2120 2820 7b20 7270 6d20 2d2d 7175  ( ! ( { rpm --qu
│ │ │ -001d6410: 6965 7420 2d71 206b 6572 6e65 6c20 3b7d  iet -q kernel ;}
│ │ │ -001d6420: 2026 616d 703b 2661 6d70 3b20 7b20 7270   && { rp
│ │ │ -001d6430: 6d20 2d2d 7175 6965 7420 2d71 2062 6f6f  m --quiet -q boo
│ │ │ -001d6440: 7463 203b 7d20 2661 6d70 3b26 616d 703b  tc ;} &&
│ │ │ -001d6450: 207b 2021 2072 706d 202d 2d71 7569 6574   { ! rpm --quiet
│ │ │ -001d6460: 202d 7120 6f70 656e 7368 6966 742d 6b75   -q openshift-ku
│ │ │ -001d6470: 6265 6c65 7420 3b7d 2026 616d 703b 2661  belet ;} &&a
│ │ │ -001d6480: 6d70 3b20 285b 202d 6620 2f72 756e 2f6f  mp; ([ -f /run/o
│ │ │ -001d6490: 7374 7265 652d 626f 6f74 6564 205d 207c  stree-booted ] |
│ │ │ -001d64a0: 7c20 5b20 2d4c 202f 6f73 7472 6565 205d  | [ -L /ostree ]
│ │ │ -001d64b0: 2920 2920 2661 6d70 3b26 616d 703b 2021  ) ) && !
│ │ │ -001d64c0: 2028 205b 202d 6620 2f2e 646f 636b 6572   ( [ -f /.docker
│ │ │ -001d64d0: 656e 7620 5d20 7c7c 205b 202d 6620 2f72  env ] || [ -f /r
│ │ │ -001d64e0: 756e 2f2e 636f 6e74 6169 6e65 7265 6e76  un/.containerenv
│ │ │ -001d64f0: 205d 2029 2029 3b20 7468 656e 0a0a 6675   ] ) ); then..fu
│ │ │ -001d6500: 6e63 7469 6f6e 2070 6572 666f 726d 5f72  nction perform_r
│ │ │ -001d6510: 656d 6564 6961 7469 6f6e 207b 0a0a 2020  emediation {..  
│ │ │ -001d6520: 2020 0a20 2020 2020 2020 2023 2074 6865    .        # the
│ │ │ -001d6530: 206d 6f75 6e74 2070 6f69 6e74 202f 626f   mount point /bo
│ │ │ -001d6540: 6f74 2068 6173 2074 6f20 6265 2064 6566  ot has to be def
│ │ │ -001d6550: 696e 6564 2069 6e20 2f65 7463 2f66 7374  ined in /etc/fst
│ │ │ -001d6560: 6162 0a20 2020 2020 2020 2023 2062 6566  ab.        # bef
│ │ │ -001d6570: 6f72 6520 7468 6973 2072 656d 6564 6961  ore this remedia
│ │ │ -001d6580: 7469 6f6e 2063 616e 2062 6520 6578 6563  tion can be exec
│ │ │ -001d6590: 7574 6564 2e20 496e 2063 6173 6520 6974  uted. In case it
│ │ │ -001d65a0: 2069 7320 6e6f 7420 6465 6669 6e65 642c   is not defined,
│ │ │ -001d65b0: 2074 6865 0a20 2020 2020 2020 2023 2072   the.        # r
│ │ │ -001d65c0: 656d 6564 6961 7469 6f6e 2061 626f 7274  emediation abort
│ │ │ -001d65d0: 7320 616e 6420 6e6f 2063 6861 6e67 6573  s and no changes
│ │ │ -001d65e0: 2072 6567 6172 6469 6e67 2074 6865 206d   regarding the m
│ │ │ -001d65f0: 6f75 6e74 2070 6f69 6e74 2061 7265 2064  ount point are d
│ │ │ -001d6600: 6f6e 652e 0a20 2020 2020 2020 206d 6f75  one..        mou
│ │ │ -001d6610: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ -001d6620: 6567 6578 703d 2224 2870 7269 6e74 6620  egexp="$(printf 
│ │ │ -001d6630: 225e 5b5b 3a73 7061 6365 3a5d 5d2a 5b5e  "^[[:space:]]*[^
│ │ │ -001d6640: 235d 2e2a 5b5b 3a73 7061 6365 3a5d 5d25  #].*[[:space:]]%
│ │ │ -001d6650: 735b 5b3a 7370 6163 653a 5d5d 2220 222f  s[[:space:]]" "/
│ │ │ -001d6660: 626f 6f74 2229 220a 0a20 2020 2067 7265  boot")"..    gre
│ │ │ -001d6670: 7020 2224 6d6f 756e 745f 706f 696e 745f  p "$mount_point_
│ │ │ -001d6680: 6d61 7463 685f 7265 6765 7870 2220 2d71  match_regexp" -q
│ │ │ -001d6690: 202f 6574 632f 6673 7461 6220 5c0a 2020   /etc/fstab \.  
│ │ │ -001d66a0: 2020 2020 2020 7c7c 207b 2065 6368 6f20        || { echo 
│ │ │ -001d66b0: 2254 6865 206d 6f75 6e74 2070 6f69 6e74  "The mount point
│ │ │ -001d66c0: 2027 2f62 6f6f 7427 2069 7320 6e6f 7420   '/boot' is not 
│ │ │ -001d66d0: 6576 656e 2069 6e20 2f65 7463 2f66 7374  even in /etc/fst
│ │ │ -001d66e0: 6162 2c20 736f 2077 6520 6361 6e27 7420  ab, so we can't 
│ │ │ -001d66f0: 7365 7420 7570 206d 6f75 6e74 206f 7074  set up mount opt
│ │ │ -001d6700: 696f 6e73 2220 2667 743b 2661 6d70 3b32  ions" >&2
│ │ │ -001d6710: 3b0a 2020 2020 2020 2020 2020 2020 2020  ;.              
│ │ │ -001d6720: 2020 6563 686f 2022 4e6f 7420 7265 6d65    echo "Not reme
│ │ │ -001d6730: 6469 6174 696e 672c 2062 6563 6175 7365  diating, because
│ │ │ -001d6740: 2074 6865 7265 2069 7320 6e6f 2072 6563   there is no rec
│ │ │ -001d6750: 6f72 6420 6f66 202f 626f 6f74 2069 6e20  ord of /boot in 
│ │ │ -001d6760: 2f65 7463 2f66 7374 6162 2220 2667 743b  /etc/fstab" >
│ │ │ -001d6770: 2661 6d70 3b32 3b20 7265 7475 726e 2031  &2; return 1
│ │ │ -001d6780: 3b20 7d0a 2020 2020 0a0a 0a20 2020 206d  ; }.    ...    m
│ │ │ -001d6790: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ -001d67a0: 5f72 6567 6578 703d 2224 2870 7269 6e74  _regexp="$(print
│ │ │ -001d67b0: 6620 225e 5b5b 3a73 7061 6365 3a5d 5d2a  f "^[[:space:]]*
│ │ │ -001d67c0: 5b5e 235d 2e2a 5b5b 3a73 7061 6365 3a5d  [^#].*[[:space:]
│ │ │ -001d67d0: 5d25 735b 5b3a 7370 6163 653a 5d5d 2220  ]%s[[:space:]]" 
│ │ │ -001d67e0: 2f62 6f6f 7429 220a 0a20 2020 2023 2049  /boot)"..    # I
│ │ │ -001d67f0: 6620 7468 6520 6d6f 756e 7420 706f 696e  f the mount poin
│ │ │ -001d6800: 7420 6973 206e 6f74 2069 6e20 2f65 7463  t is not in /etc
│ │ │ -001d6810: 2f66 7374 6162 2c20 6765 7420 7072 6576  /fstab, get prev
│ │ │ -001d6820: 696f 7573 206d 6f75 6e74 206f 7074 696f  ious mount optio
│ │ │ -001d6830: 6e73 2066 726f 6d20 2f65 7463 2f6d 7461  ns from /etc/mta
│ │ │ -001d6840: 620a 2020 2020 6966 2021 2067 7265 7020  b.    if ! grep 
│ │ │ -001d6850: 2d71 2022 246d 6f75 6e74 5f70 6f69 6e74  -q "$mount_point
│ │ │ -001d6860: 5f6d 6174 6368 5f72 6567 6578 7022 202f  _match_regexp" /
│ │ │ -001d6870: 6574 632f 6673 7461 623b 2074 6865 6e0a  etc/fstab; then.
│ │ │ -001d6880: 2020 2020 2020 2020 2320 7275 6e74 696d          # runtim
│ │ │ -001d6890: 6520 6f70 7473 2077 6974 686f 7574 2073  e opts without s
│ │ │ -001d68a0: 6f6d 6520 6175 746f 6d61 7469 6320 6b65  ome automatic ke
│ │ │ -001d68b0: 726e 656c 2f75 7365 7273 7061 6365 2d61  rnel/userspace-a
│ │ │ -001d68c0: 6464 6564 2064 6566 6175 6c74 730a 2020  dded defaults.  
│ │ │ -001d68d0: 2020 2020 2020 7072 6576 696f 7573 5f6d        previous_m
│ │ │ -001d68e0: 6f75 6e74 5f6f 7074 733d 2428 6772 6570  ount_opts=$(grep
│ │ │ -001d68f0: 2022 246d 6f75 6e74 5f70 6f69 6e74 5f6d   "$mount_point_m
│ │ │ -001d6900: 6174 6368 5f72 6567 6578 7022 202f 6574  atch_regexp" /et
│ │ │ -001d6910: 632f 6d74 6162 207c 2068 6561 6420 2d31  c/mtab | head -1
│ │ │ -001d6920: 207c 2020 6177 6b20 277b 7072 696e 7420   |  awk '{print 
│ │ │ -001d6930: 2434 7d27 205c 0a20 2020 2020 2020 2020  $4}' \.         
│ │ │ -001d6940: 2020 2020 2020 2020 2020 207c 2073 6564             | sed
│ │ │ -001d6950: 202d 4520 2273 2f28 7277 7c64 6566 6175   -E "s/(rw|defau
│ │ │ -001d6960: 6c74 737c 7365 636c 6162 656c 7c6e 6f65  lts|seclabel|noe
│ │ │ -001d6970: 7865 6329 282c 7c24 292f 2f67 3b73 2f2c  xec)(,|$)//g;s/,
│ │ │ -001d6980: 242f 2f22 290a 2020 2020 2020 2020 5b20  $//").        [ 
│ │ │ -001d6990: 2224 7072 6576 696f 7573 5f6d 6f75 6e74  "$previous_mount
│ │ │ -001d69a0: 5f6f 7074 7322 205d 2026 616d 703b 2661  _opts" ] &&a
│ │ │ -001d69b0: 6d70 3b20 7072 6576 696f 7573 5f6d 6f75  mp; previous_mou
│ │ │ -001d69c0: 6e74 5f6f 7074 732b 3d22 2c22 0a20 2020  nt_opts+=",".   
│ │ │ -001d69d0: 2020 2020 2023 2049 6e20 6973 6f39 3636       # In iso966
│ │ │ -001d69e0: 3020 6669 6c65 7379 7374 656d 7320 6d74  0 filesystems mt
│ │ │ -001d69f0: 6162 2063 6f75 6c64 2064 6573 6372 6962  ab could describ
│ │ │ -001d6a00: 6520 6120 2262 6c6f 636b 7369 7a65 2220  e a "blocksize" 
│ │ │ -001d6a10: 7661 6c75 652c 2074 6869 7320 7368 6f75  value, this shou
│ │ │ -001d6a20: 6c64 2062 6520 7265 666c 6563 7465 6420  ld be reflected 
│ │ │ -001d6a30: 696e 0a20 2020 2020 2020 2023 2066 7374  in.        # fst
│ │ │ -001d6a40: 6162 2061 7320 2262 6c6f 636b 222e 2020  ab as "block".  
│ │ │ -001d6a50: 5468 6520 6e65 7874 2076 6172 6961 626c  The next variabl
│ │ │ -001d6a60: 6520 6973 2074 6f20 7361 7469 7366 7920  e is to satisfy 
│ │ │ -001d6a70: 7368 656c 6c63 6865 636b 2053 4332 3035  shellcheck SC205
│ │ │ -001d6a80: 302e 0a20 2020 2020 2020 2066 735f 7479  0..        fs_ty
│ │ │ -001d6a90: 7065 3d22 220a 2020 2020 2020 2020 6966  pe="".        if
│ │ │ -001d6aa0: 205b 2020 2224 6673 5f74 7970 6522 203d   [  "$fs_type" =
│ │ │ -001d6ab0: 3d20 2269 736f 3936 3630 2220 5d20 3b20  = "iso9660" ] ; 
│ │ │ -001d6ac0: 7468 656e 0a20 2020 2020 2020 2020 2020  then.           
│ │ │ -001d6ad0: 2070 7265 7669 6f75 735f 6d6f 756e 745f   previous_mount_
│ │ │ -001d6ae0: 6f70 7473 3d24 2873 6564 2027 732f 626c  opts=$(sed 's/bl
│ │ │ -001d6af0: 6f63 6b73 697a 653d 2f62 6c6f 636b 3d2f  ocksize=/block=/
│ │ │ -001d6b00: 2720 266c 743b 266c 743b 266c 743b 2022  ' <<< "
│ │ │ -001d6b10: 2470 7265 7669 6f75 735f 6d6f 756e 745f  $previous_mount_
│ │ │ -001d6b20: 6f70 7473 2229 0a20 2020 2020 2020 2066  opts").        f
│ │ │ -001d6b30: 690a 2020 2020 2020 2020 6563 686f 2022  i.        echo "
│ │ │ -001d6b40: 202f 626f 6f74 2020 6465 6661 756c 7473   /boot  defaults
│ │ │ -001d6b50: 2c24 7b70 7265 7669 6f75 735f 6d6f 756e  ,${previous_moun
│ │ │ -001d6b60: 745f 6f70 7473 7d6e 6f65 7865 6320 3020  t_opts}noexec 0 
│ │ │ -001d6b70: 3022 2026 6774 3b26 6774 3b20 2f65 7463  0" >> /etc
│ │ │ -001d6b80: 2f66 7374 6162 0a20 2020 2023 2049 6620  /fstab.    # If 
│ │ │ -001d6b90: 7468 6520 6d6f 756e 745f 6f70 7420 6f70  the mount_opt op
│ │ │ -001d6ba0: 7469 6f6e 2069 7320 6e6f 7420 616c 7265  tion is not alre
│ │ │ -001d6bb0: 6164 7920 696e 2074 6865 206d 6f75 6e74  ady in the mount
│ │ │ -001d6bc0: 2070 6f69 6e74 2773 202f 6574 632f 6673   point's /etc/fs
│ │ │ -001d6bd0: 7461 6220 656e 7472 792c 2061 6464 2069  tab entry, add i
│ │ │ -001d6be0: 740a 2020 2020 656c 6966 2021 2067 7265  t.    elif ! gre
│ │ │ -001d6bf0: 7020 2224 6d6f 756e 745f 706f 696e 745f  p "$mount_point_
│ │ │ -001d6c00: 6d61 7463 685f 7265 6765 7870 2220 2f65  match_regexp" /e
│ │ │ -001d6c10: 7463 2f66 7374 6162 207c 2067 7265 7020  tc/fstab | grep 
│ │ │ -001d6c20: 2d71 2022 6e6f 6578 6563 223b 2074 6865  -q "noexec"; the
│ │ │ -001d6c30: 6e0a 2020 2020 2020 2020 7072 6576 696f  n.        previo
│ │ │ -001d6c40: 7573 5f6d 6f75 6e74 5f6f 7074 733d 2428  us_mount_opts=$(
│ │ │ -001d6c50: 6772 6570 2022 246d 6f75 6e74 5f70 6f69  grep "$mount_poi
│ │ │ -001d6c60: 6e74 5f6d 6174 6368 5f72 6567 6578 7022  nt_match_regexp"
│ │ │ -001d6c70: 202f 6574 632f 6673 7461 6220 7c20 6177   /etc/fstab | aw
│ │ │ -001d6c80: 6b20 277b 7072 696e 7420 2434 7d27 290a  k '{print $4}').
│ │ │ -001d6c90: 2020 2020 2020 2020 7365 6420 2d69 2022          sed -i "
│ │ │ -001d6ca0: 737c 5c28 247b 6d6f 756e 745f 706f 696e  s|\(${mount_poin
│ │ │ -001d6cb0: 745f 6d61 7463 685f 7265 6765 7870 7d2e  t_match_regexp}.
│ │ │ -001d6cc0: 2a24 7b70 7265 7669 6f75 735f 6d6f 756e  *${previous_moun
│ │ │ -001d6cd0: 745f 6f70 7473 7d5c 297c 5c31 2c6e 6f65  t_opts}\)|\1,noe
│ │ │ -001d6ce0: 7865 637c 2220 2f65 7463 2f66 7374 6162  xec|" /etc/fstab
│ │ │ -001d6cf0: 0a20 2020 2066 690a 0a0a 2020 2020 6966  .    fi...    if
│ │ │ -001d6d00: 206d 6b64 6972 202d 7020 222f 626f 6f74   mkdir -p "/boot
│ │ │ -001d6d10: 223b 2074 6865 6e0a 2020 2020 2020 2020  "; then.        
│ │ │ -001d6d20: 6966 206d 6f75 6e74 706f 696e 7420 2d71  if mountpoint -q
│ │ │ -001d6d30: 2022 2f62 6f6f 7422 3b20 7468 656e 0a20   "/boot"; then. 
│ │ │ -001d6d40: 2020 2020 2020 2020 2020 206d 6f75 6e74             mount
│ │ │ -001d6d50: 202d 6f20 7265 6d6f 756e 7420 2d2d 7461   -o remount --ta
│ │ │ -001d6d60: 7267 6574 2022 2f62 6f6f 7422 0a20 2020  rget "/boot".   
│ │ │ -001d6d70: 2020 2020 2066 690a 2020 2020 6669 0a7d       fi.    fi.}
│ │ │ -001d6d80: 0a0a 7065 7266 6f72 6d5f 7265 6d65 6469  ..perform_remedi
│ │ │ -001d6d90: 6174 696f 6e0a 0a65 6c73 650a 2020 2020  ation..else.    
│ │ │ -001d6da0: 2667 743b 2661 6d70 3b32 2065 6368 6f20  >&2 echo 
│ │ │ -001d6db0: 2752 656d 6564 6961 7469 6f6e 2069 7320  'Remediation is 
│ │ │ -001d6dc0: 6e6f 7420 6170 706c 6963 6162 6c65 2c20  not applicable, 
│ │ │ -001d6dd0: 6e6f 7468 696e 6720 7761 7320 646f 6e65  nothing was done
│ │ │ -001d6de0: 270a 6669 0a3c 2f63 6f64 653e 3c2f 7072  '.fi.
Complexity │ │ │ +001d4e00: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ +001d4e20: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ +001d4e30: 7464 3e68 6967 683c 2f74 643e 3c2f 7472 td>highReboot: │ │ │ +001d4e50: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ +001d4e70: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:configure │ │ │ +001d4e90: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072 - name: │ │ │ +001d4eb0: 4761 7468 6572 2074 6865 2070 6163 6b61 Gather the packa │ │ │ +001d4ec0: 6765 2066 6163 7473 0a20 2070 6163 6b61 ge facts. packa │ │ │ +001d4ed0: 6765 5f66 6163 7473 3a0a 2020 2020 6d61 ge_facts:. ma │ │ │ +001d4ee0: 6e61 6765 723a 2061 7574 6f0a 2020 7461 nager: auto. ta │ │ │ +001d4ef0: 6773 3a0a 2020 2d20 636f 6e66 6967 7572 gs:. - configur │ │ │ +001d4f00: 655f 7374 7261 7465 6779 0a20 202d 2068 e_strategy. - h │ │ │ +001d4f10: 6967 685f 6469 7372 7570 7469 6f6e 0a20 igh_disruption. │ │ │ +001d4f20: 202d 206c 6f77 5f63 6f6d 706c 6578 6974 - low_complexit │ │ │ +001d4f30: 790a 2020 2d20 6d65 6469 756d 5f73 6576 y. - medium_sev │ │ │ +001d4f40: 6572 6974 790a 2020 2d20 6d6f 756e 745f erity. - mount_ │ │ │ +001d4f50: 6f70 7469 6f6e 5f62 6f6f 745f 6e6f 6578 option_boot_noex │ │ │ +001d4f60: 6563 0a20 202d 206e 6f5f 7265 626f 6f74 ec. - no_reboot │ │ │ +001d4f70: 5f6e 6565 6465 640a 0a2d 206e 616d 653a _needed..- name: │ │ │ +001d4f80: 2027 4164 6420 6e6f 6578 6563 204f 7074 'Add noexec Opt │ │ │ +001d4f90: 696f 6e20 746f 202f 626f 6f74 3a20 4368 ion to /boot: Ch │ │ │ +001d4fa0: 6563 6b20 696e 666f 726d 6174 696f 6e20 eck information │ │ │ +001d4fb0: 6173 736f 6369 6174 6564 2074 6f20 6d6f associated to mo │ │ │ +001d4fc0: 756e 7470 6f69 6e74 270a 2020 616e 7369 untpoint'. ansi │ │ │ +001d4fd0: 626c 652e 6275 696c 7469 6e2e 636f 6d6d ble.builtin.comm │ │ │ +001d4fe0: 616e 643a 2066 696e 646d 6e74 202d 2d66 and: findmnt --f │ │ │ +001d4ff0: 7374 6162 2027 2f62 6f6f 7427 0a20 2072 stab '/boot'. r │ │ │ +001d5000: 6567 6973 7465 723a 2064 6576 6963 655f egister: device_ │ │ │ +001d5010: 6e61 6d65 0a20 2066 6169 6c65 645f 7768 name. failed_wh │ │ │ +001d5020: 656e 3a20 6465 7669 6365 5f6e 616d 652e en: device_name. │ │ │ +001d5030: 7263 2026 6774 3b20 310a 2020 6368 616e rc > 1. chan │ │ │ +001d5040: 6765 645f 7768 656e 3a20 6661 6c73 650a ged_when: false. │ │ │ +001d5050: 2020 6368 6563 6b5f 6d6f 6465 3a20 6661 check_mode: fa │ │ │ +001d5060: 6c73 650a 2020 7768 656e 3a20 2820 6e6f lse. when: ( no │ │ │ +001d5070: 7420 2820 226b 6572 6e65 6c22 2069 6e20 t ( "kernel" in │ │ │ +001d5080: 616e 7369 626c 655f 6661 6374 732e 7061 ansible_facts.pa │ │ │ +001d5090: 636b 6167 6573 2061 6e64 2022 626f 6f74 ckages and "boot │ │ │ +001d50a0: 6322 2069 6e20 616e 7369 626c 655f 6661 c" in ansible_fa │ │ │ +001d50b0: 6374 732e 7061 636b 6167 6573 0a20 2020 cts.packages. │ │ │ +001d50c0: 2061 6e64 206e 6f74 2022 6f70 656e 7368 and not "opensh │ │ │ +001d50d0: 6966 742d 6b75 6265 6c65 7422 2069 6e20 ift-kubelet" in │ │ │ +001d50e0: 616e 7369 626c 655f 6661 6374 732e 7061 ansible_facts.pa │ │ │ +001d50f0: 636b 6167 6573 2061 6e64 2022 6f73 7472 ckages and "ostr │ │ │ +001d5100: 6565 2220 696e 2061 6e73 6962 6c65 5f70 ee" in ansible_p │ │ │ +001d5110: 726f 635f 636d 646c 696e 650a 2020 2020 roc_cmdline. │ │ │ +001d5120: 2920 616e 6420 6e6f 7420 2820 616e 7369 ) and not ( ansi │ │ │ +001d5130: 626c 655f 7669 7274 7561 6c69 7a61 7469 ble_virtualizati │ │ │ +001d5140: 6f6e 5f74 7970 6520 696e 205b 2264 6f63 on_type in ["doc │ │ │ +001d5150: 6b65 7222 2c20 226c 7863 222c 2022 6f70 ker", "lxc", "op │ │ │ +001d5160: 656e 767a 222c 2022 706f 646d 616e 222c envz", "podman", │ │ │ +001d5170: 0a20 2020 2022 636f 6e74 6169 6e65 7222 . "container" │ │ │ +001d5180: 5d20 2920 290a 2020 7461 6773 3a0a 2020 ] ) ). tags:. │ │ │ +001d5190: 2d20 636f 6e66 6967 7572 655f 7374 7261 - configure_stra │ │ │ +001d51a0: 7465 6779 0a20 202d 2068 6967 685f 6469 tegy. - high_di │ │ │ +001d51b0: 7372 7570 7469 6f6e 0a20 202d 206c 6f77 sruption. - low │ │ │ +001d51c0: 5f63 6f6d 706c 6578 6974 790a 2020 2d20 _complexity. - │ │ │ +001d51d0: 6d65 6469 756d 5f73 6576 6572 6974 790a medium_severity. │ │ │ +001d51e0: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e - mount_option │ │ │ +001d51f0: 5f62 6f6f 745f 6e6f 6578 6563 0a20 202d _boot_noexec. - │ │ │ +001d5200: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465 no_reboot_neede │ │ │ +001d5210: 640a 0a2d 206e 616d 653a 2027 4164 6420 d..- name: 'Add │ │ │ +001d5220: 6e6f 6578 6563 204f 7074 696f 6e20 746f noexec Option to │ │ │ +001d5230: 202f 626f 6f74 3a20 4372 6561 7465 206d /boot: Create m │ │ │ +001d5240: 6f75 6e74 5f69 6e66 6f20 6469 6374 696f ount_info dictio │ │ │ +001d5250: 6e61 7279 2076 6172 6961 626c 6527 0a20 nary variable'. │ │ │ +001d5260: 2073 6574 5f66 6163 743a 0a20 2020 206d set_fact:. m │ │ │ +001d5270: 6f75 6e74 5f69 6e66 6f3a 2027 7b7b 206d ount_info: '{{ m │ │ │ +001d5280: 6f75 6e74 5f69 6e66 6f7c 6465 6661 756c ount_info|defaul │ │ │ +001d5290: 7428 7b7d 297c 636f 6d62 696e 6528 7b69 t({})|combine({i │ │ │ +001d52a0: 7465 6d2e 303a 2069 7465 6d2e 317d 2920 tem.0: item.1}) │ │ │ +001d52b0: 7d7d 270a 2020 7769 7468 5f74 6f67 6574 }}'. with_toget │ │ │ +001d52c0: 6865 723a 0a20 202d 2027 7b7b 2064 6576 her:. - '{{ dev │ │ │ +001d52d0: 6963 655f 6e61 6d65 2e73 7464 6f75 745f ice_name.stdout_ │ │ │ +001d52e0: 6c69 6e65 735b 305d 2e73 706c 6974 2829 lines[0].split() │ │ │ +001d52f0: 207c 206d 6170 2827 276c 6f77 6572 2727 | map(''lower'' │ │ │ +001d5300: 2920 7c20 6c69 7374 207d 7d27 0a20 202d ) | list }}'. - │ │ │ +001d5310: 2027 7b7b 2064 6576 6963 655f 6e61 6d65 '{{ device_name │ │ │ +001d5320: 2e73 7464 6f75 745f 6c69 6e65 735b 315d .stdout_lines[1] │ │ │ +001d5330: 2e73 706c 6974 2829 207c 206c 6973 7420 .split() | list │ │ │ +001d5340: 7d7d 270a 2020 7768 656e 3a0a 2020 2d20 }}'. when:. - │ │ │ +001d5350: 2820 6e6f 7420 2820 226b 6572 6e65 6c22 ( not ( "kernel" │ │ │ +001d5360: 2069 6e20 616e 7369 626c 655f 6661 6374 in ansible_fact │ │ │ +001d5370: 732e 7061 636b 6167 6573 2061 6e64 2022 s.packages and " │ │ │ +001d5380: 626f 6f74 6322 2069 6e20 616e 7369 626c bootc" in ansibl │ │ │ +001d5390: 655f 6661 6374 732e 7061 636b 6167 6573 e_facts.packages │ │ │ +001d53a0: 0a20 2020 2061 6e64 206e 6f74 2022 6f70 . and not "op │ │ │ +001d53b0: 656e 7368 6966 742d 6b75 6265 6c65 7422 enshift-kubelet" │ │ │ +001d53c0: 2069 6e20 616e 7369 626c 655f 6661 6374 in ansible_fact │ │ │ +001d53d0: 732e 7061 636b 6167 6573 2061 6e64 2022 s.packages and " │ │ │ +001d53e0: 6f73 7472 6565 2220 696e 2061 6e73 6962 ostree" in ansib │ │ │ +001d53f0: 6c65 5f70 726f 635f 636d 646c 696e 650a le_proc_cmdline. │ │ │ +001d5400: 2020 2020 2920 616e 6420 6e6f 7420 2820 ) and not ( │ │ │ +001d5410: 616e 7369 626c 655f 7669 7274 7561 6c69 ansible_virtuali │ │ │ +001d5420: 7a61 7469 6f6e 5f74 7970 6520 696e 205b zation_type in [ │ │ │ +001d5430: 2264 6f63 6b65 7222 2c20 226c 7863 222c "docker", "lxc", │ │ │ +001d5440: 2022 6f70 656e 767a 222c 2022 706f 646d "openvz", "podm │ │ │ +001d5450: 616e 222c 0a20 2020 2022 636f 6e74 6169 an",. "contai │ │ │ +001d5460: 6e65 7222 5d20 2920 290a 2020 2d20 6465 ner"] ) ). - de │ │ │ +001d5470: 7669 6365 5f6e 616d 652e 7374 646f 7574 vice_name.stdout │ │ │ +001d5480: 2069 7320 6465 6669 6e65 6420 616e 6420 is defined and │ │ │ +001d5490: 6465 7669 6365 5f6e 616d 652e 7374 646f device_name.stdo │ │ │ +001d54a0: 7574 5f6c 696e 6573 2069 7320 6465 6669 ut_lines is defi │ │ │ +001d54b0: 6e65 640a 2020 2d20 2864 6576 6963 655f ned. - (device_ │ │ │ +001d54c0: 6e61 6d65 2e73 7464 6f75 7420 7c20 6c65 name.stdout | le │ │ │ +001d54d0: 6e67 7468 2026 6774 3b20 3029 0a20 2074 ngth > 0). t │ │ │ +001d54e0: 6167 733a 0a20 202d 2063 6f6e 6669 6775 ags:. - configu │ │ │ +001d54f0: 7265 5f73 7472 6174 6567 790a 2020 2d20 re_strategy. - │ │ │ +001d5500: 6869 6768 5f64 6973 7275 7074 696f 6e0a high_disruption. │ │ │ +001d5510: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869 - low_complexi │ │ │ +001d5520: 7479 0a20 202d 206d 6564 6975 6d5f 7365 ty. - medium_se │ │ │ +001d5530: 7665 7269 7479 0a20 202d 206d 6f75 6e74 verity. - mount │ │ │ +001d5540: 5f6f 7074 696f 6e5f 626f 6f74 5f6e 6f65 _option_boot_noe │ │ │ +001d5550: 7865 630a 2020 2d20 6e6f 5f72 6562 6f6f xec. - no_reboo │ │ │ +001d5560: 745f 6e65 6564 6564 0a0a 2d20 6e61 6d65 t_needed..- name │ │ │ +001d5570: 3a20 2741 6464 206e 6f65 7865 6320 4f70 : 'Add noexec Op │ │ │ +001d5580: 7469 6f6e 2074 6f20 2f62 6f6f 743a 2049 tion to /boot: I │ │ │ +001d5590: 6620 2f62 6f6f 7420 6e6f 7420 6d6f 756e f /boot not moun │ │ │ +001d55a0: 7465 642c 2063 7261 6674 206d 6f75 6e74 ted, craft mount │ │ │ +001d55b0: 5f69 6e66 6f20 6d61 6e75 616c 6c79 270a _info manually'. │ │ │ +001d55c0: 2020 7365 745f 6661 6374 3a0a 2020 2020 set_fact:. │ │ │ +001d55d0: 6d6f 756e 745f 696e 666f 3a20 277b 7b20 mount_info: '{{ │ │ │ +001d55e0: 6d6f 756e 745f 696e 666f 7c64 6566 6175 mount_info|defau │ │ │ +001d55f0: 6c74 287b 7d29 7c63 6f6d 6269 6e65 287b lt({})|combine({ │ │ │ +001d5600: 6974 656d 2e30 3a20 6974 656d 2e31 7d29 item.0: item.1}) │ │ │ +001d5610: 207d 7d27 0a20 2077 6974 685f 746f 6765 }}'. with_toge │ │ │ +001d5620: 7468 6572 3a0a 2020 2d20 2d20 7461 7267 ther:. - - targ │ │ │ +001d5630: 6574 0a20 2020 202d 2073 6f75 7263 650a et. - source. │ │ │ +001d5640: 2020 2020 2d20 6673 7479 7065 0a20 2020 - fstype. │ │ │ +001d5650: 202d 206f 7074 696f 6e73 0a20 202d 202d - options. - - │ │ │ +001d5660: 202f 626f 6f74 0a20 2020 202d 2027 270a /boot. - ''. │ │ │ +001d5670: 2020 2020 2d20 2727 0a20 2020 202d 2064 - ''. - d │ │ │ +001d5680: 6566 6175 6c74 730a 2020 7768 656e 3a0a efaults. when:. │ │ │ +001d5690: 2020 2d20 2820 6e6f 7420 2820 226b 6572 - ( not ( "ker │ │ │ +001d56a0: 6e65 6c22 2069 6e20 616e 7369 626c 655f nel" in ansible_ │ │ │ +001d56b0: 6661 6374 732e 7061 636b 6167 6573 2061 facts.packages a │ │ │ +001d56c0: 6e64 2022 626f 6f74 6322 2069 6e20 616e nd "bootc" in an │ │ │ +001d56d0: 7369 626c 655f 6661 6374 732e 7061 636b sible_facts.pack │ │ │ +001d56e0: 6167 6573 0a20 2020 2061 6e64 206e 6f74 ages. and not │ │ │ +001d56f0: 2022 6f70 656e 7368 6966 742d 6b75 6265 "openshift-kube │ │ │ +001d5700: 6c65 7422 2069 6e20 616e 7369 626c 655f let" in ansible_ │ │ │ +001d5710: 6661 6374 732e 7061 636b 6167 6573 2061 facts.packages a │ │ │ +001d5720: 6e64 2022 6f73 7472 6565 2220 696e 2061 nd "ostree" in a │ │ │ +001d5730: 6e73 6962 6c65 5f70 726f 635f 636d 646c nsible_proc_cmdl │ │ │ +001d5740: 696e 650a 2020 2020 2920 616e 6420 6e6f ine. ) and no │ │ │ +001d5750: 7420 2820 616e 7369 626c 655f 7669 7274 t ( ansible_virt │ │ │ +001d5760: 7561 6c69 7a61 7469 6f6e 5f74 7970 6520 ualization_type │ │ │ +001d5770: 696e 205b 2264 6f63 6b65 7222 2c20 226c in ["docker", "l │ │ │ +001d5780: 7863 222c 2022 6f70 656e 767a 222c 2022 xc", "openvz", " │ │ │ +001d5790: 706f 646d 616e 222c 0a20 2020 2022 636f podman",. "co │ │ │ +001d57a0: 6e74 6169 6e65 7222 5d20 2920 290a 2020 ntainer"] ) ). │ │ │ +001d57b0: 2d20 2822 2d2d 6673 7461 6222 207c 206c - ("--fstab" | l │ │ │ +001d57c0: 656e 6774 6820 3d3d 2030 290a 2020 2d20 ength == 0). - │ │ │ +001d57d0: 6465 7669 6365 5f6e 616d 652e 7374 646f device_name.stdo │ │ │ +001d57e0: 7574 2069 7320 6465 6669 6e65 6420 616e ut is defined an │ │ │ +001d57f0: 6420 6465 7669 6365 5f6e 616d 652e 7374 d device_name.st │ │ │ +001d5800: 646f 7574 5f6c 696e 6573 2069 7320 6465 dout_lines is de │ │ │ +001d5810: 6669 6e65 640a 2020 2d20 2864 6576 6963 fined. - (devic │ │ │ +001d5820: 655f 6e61 6d65 2e73 7464 6f75 7420 7c20 e_name.stdout | │ │ │ +001d5830: 6c65 6e67 7468 203d 3d20 3029 0a20 2074 length == 0). t │ │ │ +001d5840: 6167 733a 0a20 202d 2063 6f6e 6669 6775 ags:. - configu │ │ │ +001d5850: 7265 5f73 7472 6174 6567 790a 2020 2d20 re_strategy. - │ │ │ +001d5860: 6869 6768 5f64 6973 7275 7074 696f 6e0a high_disruption. │ │ │ +001d5870: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869 - low_complexi │ │ │ +001d5880: 7479 0a20 202d 206d 6564 6975 6d5f 7365 ty. - medium_se │ │ │ +001d5890: 7665 7269 7479 0a20 202d 206d 6f75 6e74 verity. - mount │ │ │ +001d58a0: 5f6f 7074 696f 6e5f 626f 6f74 5f6e 6f65 _option_boot_noe │ │ │ +001d58b0: 7865 630a 2020 2d20 6e6f 5f72 6562 6f6f xec. - no_reboo │ │ │ +001d58c0: 745f 6e65 6564 6564 0a0a 2d20 6e61 6d65 t_needed..- name │ │ │ +001d58d0: 3a20 2741 6464 206e 6f65 7865 6320 4f70 : 'Add noexec Op │ │ │ +001d58e0: 7469 6f6e 2074 6f20 2f62 6f6f 743a 204d tion to /boot: M │ │ │ +001d58f0: 616b 6520 7375 7265 206e 6f65 7865 6320 ake sure noexec │ │ │ +001d5900: 6f70 7469 6f6e 2069 7320 7061 7274 206f option is part o │ │ │ +001d5910: 6620 7468 6520 746f 202f 626f 6f74 0a20 f the to /boot. │ │ │ +001d5920: 2020 206f 7074 696f 6e73 270a 2020 7365 options'. se │ │ │ +001d5930: 745f 6661 6374 3a0a 2020 2020 6d6f 756e t_fact:. moun │ │ │ +001d5940: 745f 696e 666f 3a20 277b 7b20 6d6f 756e t_info: '{{ moun │ │ │ +001d5950: 745f 696e 666f 207c 2063 6f6d 6269 6e65 t_info | combine │ │ │ +001d5960: 2820 7b27 276f 7074 696f 6e73 2727 3a27 ( {''options'':' │ │ │ +001d5970: 2727 277e 286d 6f75 6e74 5f69 6e66 6f2e '''~(mount_info. │ │ │ +001d5980: 6f70 7469 6f6e 7320 7c0a 2020 2020 2020 options |. │ │ │ +001d5990: 6465 6661 756c 7428 2727 2727 2929 7e28 default(''''))~( │ │ │ +001d59a0: 2727 2c27 2720 6966 2028 6d6f 756e 745f '','' if (mount_ │ │ │ +001d59b0: 696e 666f 2e6f 7074 696f 6e73 207c 2064 info.options | d │ │ │ +001d59c0: 6566 6175 6c74 2827 2727 2729 2920 656c efault('''')) el │ │ │ +001d59d0: 7365 2027 2727 2729 7e27 276e 6f65 7865 se '''')~''noexe │ │ │ +001d59e0: 6327 270a 2020 2020 2020 7d29 207d 7d27 c''. }) }}' │ │ │ +001d59f0: 0a20 2077 6865 6e3a 0a20 202d 2028 206e . when:. - ( n │ │ │ +001d5a00: 6f74 2028 2022 6b65 726e 656c 2220 696e ot ( "kernel" in │ │ │ +001d5a10: 2061 6e73 6962 6c65 5f66 6163 7473 2e70 ansible_facts.p │ │ │ +001d5a20: 6163 6b61 6765 7320 616e 6420 2262 6f6f ackages and "boo │ │ │ +001d5a30: 7463 2220 696e 2061 6e73 6962 6c65 5f66 tc" in ansible_f │ │ │ +001d5a40: 6163 7473 2e70 6163 6b61 6765 730a 2020 acts.packages. │ │ │ +001d5a50: 2020 616e 6420 6e6f 7420 226f 7065 6e73 and not "opens │ │ │ +001d5a60: 6869 6674 2d6b 7562 656c 6574 2220 696e hift-kubelet" in │ │ │ +001d5a70: 2061 6e73 6962 6c65 5f66 6163 7473 2e70 ansible_facts.p │ │ │ +001d5a80: 6163 6b61 6765 7320 616e 6420 226f 7374 ackages and "ost │ │ │ +001d5a90: 7265 6522 2069 6e20 616e 7369 626c 655f ree" in ansible_ │ │ │ +001d5aa0: 7072 6f63 5f63 6d64 6c69 6e65 0a20 2020 proc_cmdline. │ │ │ +001d5ab0: 2029 2061 6e64 206e 6f74 2028 2061 6e73 ) and not ( ans │ │ │ +001d5ac0: 6962 6c65 5f76 6972 7475 616c 697a 6174 ible_virtualizat │ │ │ +001d5ad0: 696f 6e5f 7479 7065 2069 6e20 5b22 646f ion_type in ["do │ │ │ +001d5ae0: 636b 6572 222c 2022 6c78 6322 2c20 226f cker", "lxc", "o │ │ │ +001d5af0: 7065 6e76 7a22 2c20 2270 6f64 6d61 6e22 penvz", "podman" │ │ │ +001d5b00: 2c0a 2020 2020 2263 6f6e 7461 696e 6572 ,. "container │ │ │ +001d5b10: 225d 2029 2029 0a20 202d 206d 6f75 6e74 "] ) ). - mount │ │ │ +001d5b20: 5f69 6e66 6f20 6973 2064 6566 696e 6564 _info is defined │ │ │ +001d5b30: 2061 6e64 2022 6e6f 6578 6563 2220 6e6f and "noexec" no │ │ │ +001d5b40: 7420 696e 2028 6d6f 756e 745f 696e 666f t in (mount_info │ │ │ +001d5b50: 2e6f 7074 696f 6e73 207c 2064 6566 6175 .options | defau │ │ │ +001d5b60: 6c74 2827 2729 290a 2020 7461 6773 3a0a lt('')). tags:. │ │ │ +001d5b70: 2020 2d20 636f 6e66 6967 7572 655f 7374 - configure_st │ │ │ +001d5b80: 7261 7465 6779 0a20 202d 2068 6967 685f rategy. - high_ │ │ │ +001d5b90: 6469 7372 7570 7469 6f6e 0a20 202d 206c disruption. - l │ │ │ +001d5ba0: 6f77 5f63 6f6d 706c 6578 6974 790a 2020 ow_complexity. │ │ │ +001d5bb0: 2d20 6d65 6469 756d 5f73 6576 6572 6974 - medium_severit │ │ │ +001d5bc0: 790a 2020 2d20 6d6f 756e 745f 6f70 7469 y. - mount_opti │ │ │ +001d5bd0: 6f6e 5f62 6f6f 745f 6e6f 6578 6563 0a20 on_boot_noexec. │ │ │ +001d5be0: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565 - no_reboot_nee │ │ │ +001d5bf0: 6465 640a 0a2d 206e 616d 653a 2027 4164 ded..- name: 'Ad │ │ │ +001d5c00: 6420 6e6f 6578 6563 204f 7074 696f 6e20 d noexec Option │ │ │ +001d5c10: 746f 202f 626f 6f74 3a20 456e 7375 7265 to /boot: Ensure │ │ │ +001d5c20: 202f 626f 6f74 2069 7320 6d6f 756e 7465 /boot is mounte │ │ │ +001d5c30: 6420 7769 7468 206e 6f65 7865 6320 6f70 d with noexec op │ │ │ +001d5c40: 7469 6f6e 270a 2020 616e 7369 626c 652e tion'. ansible. │ │ │ +001d5c50: 706f 7369 782e 6d6f 756e 743a 0a20 2020 posix.mount:. │ │ │ +001d5c60: 2070 6174 683a 202f 626f 6f74 0a20 2020 path: /boot. │ │ │ +001d5c70: 2073 7263 3a20 277b 7b20 6d6f 756e 745f src: '{{ mount_ │ │ │ +001d5c80: 696e 666f 2e73 6f75 7263 6520 7c20 6465 info.source | de │ │ │ +001d5c90: 6661 756c 7428 2727 2727 2920 7d7d 270a fault('''') }}'. │ │ │ +001d5ca0: 2020 2020 6f70 7473 3a20 277b 7b20 6d6f opts: '{{ mo │ │ │ +001d5cb0: 756e 745f 696e 666f 2e6f 7074 696f 6e73 unt_info.options │ │ │ +001d5cc0: 207c 2064 6566 6175 6c74 2827 2727 2729 | default('''') │ │ │ +001d5cd0: 207d 7d27 0a20 2020 2073 7461 7465 3a20 }}'. state: │ │ │ +001d5ce0: 6d6f 756e 7465 640a 2020 2020 6673 7479 mounted. fsty │ │ │ +001d5cf0: 7065 3a20 277b 7b20 6d6f 756e 745f 696e pe: '{{ mount_in │ │ │ +001d5d00: 666f 2e66 7374 7970 6520 7c20 6465 6661 fo.fstype | defa │ │ │ +001d5d10: 756c 7428 2727 2727 2920 7d7d 270a 2020 ult('''') }}'. │ │ │ +001d5d20: 7265 6769 7374 6572 3a20 6d6f 756e 745f register: mount_ │ │ │ +001d5d30: 7265 7375 6c74 0a20 2066 6169 6c65 645f result. failed_ │ │ │ +001d5d40: 7768 656e 3a0a 2020 2d20 6d6f 756e 745f when:. - mount_ │ │ │ +001d5d50: 7265 7375 6c74 2069 7320 6661 696c 6564 result is failed │ │ │ +001d5d60: 0a20 202d 2027 2727 7461 7267 6574 2069 . - '''target i │ │ │ +001d5d70: 7320 6275 7379 2727 206e 6f74 2069 6e20 s busy'' not in │ │ │ +001d5d80: 286d 6f75 6e74 5f72 6573 756c 742e 6d73 (mount_result.ms │ │ │ +001d5d90: 6720 7c20 6465 6661 756c 7428 2727 2727 g | default('''' │ │ │ +001d5da0: 2929 270a 2020 2d20 2727 2761 6c72 6561 ))'. - '''alrea │ │ │ +001d5db0: 6479 206d 6f75 6e74 6564 2727 206e 6f74 dy mounted'' not │ │ │ +001d5dc0: 2069 6e20 286d 6f75 6e74 5f72 6573 756c in (mount_resul │ │ │ +001d5dd0: 742e 6d73 6720 7c20 6465 6661 756c 7428 t.msg | default( │ │ │ +001d5de0: 2727 2727 2929 270a 2020 7768 656e 3a0a ''''))'. when:. │ │ │ +001d5df0: 2020 2d20 2820 6e6f 7420 2820 226b 6572 - ( not ( "ker │ │ │ +001d5e00: 6e65 6c22 2069 6e20 616e 7369 626c 655f nel" in ansible_ │ │ │ +001d5e10: 6661 6374 732e 7061 636b 6167 6573 2061 facts.packages a │ │ │ +001d5e20: 6e64 2022 626f 6f74 6322 2069 6e20 616e nd "bootc" in an │ │ │ +001d5e30: 7369 626c 655f 6661 6374 732e 7061 636b sible_facts.pack │ │ │ +001d5e40: 6167 6573 0a20 2020 2061 6e64 206e 6f74 ages. and not │ │ │ +001d5e50: 2022 6f70 656e 7368 6966 742d 6b75 6265 "openshift-kube │ │ │ +001d5e60: 6c65 7422 2069 6e20 616e 7369 626c 655f let" in ansible_ │ │ │ +001d5e70: 6661 6374 732e 7061 636b 6167 6573 2061 facts.packages a │ │ │ +001d5e80: 6e64 2022 6f73 7472 6565 2220 696e 2061 nd "ostree" in a │ │ │ +001d5e90: 6e73 6962 6c65 5f70 726f 635f 636d 646c nsible_proc_cmdl │ │ │ +001d5ea0: 696e 650a 2020 2020 2920 616e 6420 6e6f ine. ) and no │ │ │ +001d5eb0: 7420 2820 616e 7369 626c 655f 7669 7274 t ( ansible_virt │ │ │ +001d5ec0: 7561 6c69 7a61 7469 6f6e 5f74 7970 6520 ualization_type │ │ │ +001d5ed0: 696e 205b 2264 6f63 6b65 7222 2c20 226c in ["docker", "l │ │ │ +001d5ee0: 7863 222c 2022 6f70 656e 767a 222c 2022 xc", "openvz", " │ │ │ +001d5ef0: 706f 646d 616e 222c 0a20 2020 2022 636f podman",. "co │ │ │ +001d5f00: 6e74 6169 6e65 7222 5d20 2920 290a 2020 ntainer"] ) ). │ │ │ +001d5f10: 2d20 6d6f 756e 745f 696e 666f 2069 7320 - mount_info is │ │ │ +001d5f20: 6465 6669 6e65 640a 2020 2d20 2864 6576 defined. - (dev │ │ │ +001d5f30: 6963 655f 6e61 6d65 2e73 7464 6f75 7420 ice_name.stdout │ │ │ +001d5f40: 6973 2064 6566 696e 6564 2061 6e64 2028 is defined and ( │ │ │ +001d5f50: 6465 7669 6365 5f6e 616d 652e 7374 646f device_name.stdo │ │ │ +001d5f60: 7574 207c 206c 656e 6774 6820 2667 743b ut | length > │ │ │ +001d5f70: 2030 2929 206f 7220 2822 2d2d 6673 7461 0)) or ("--fsta │ │ │ +001d5f80: 6222 0a20 2020 207c 206c 656e 6774 6820 b". | length │ │ │ +001d5f90: 3d3d 2030 290a 2020 7461 6773 3a0a 2020 == 0). tags:. │ │ │ +001d5fa0: 2d20 636f 6e66 6967 7572 655f 7374 7261 - configure_stra │ │ │ +001d5fb0: 7465 6779 0a20 202d 2068 6967 685f 6469 tegy. - high_di │ │ │ +001d5fc0: 7372 7570 7469 6f6e 0a20 202d 206c 6f77 sruption. - low │ │ │ +001d5fd0: 5f63 6f6d 706c 6578 6974 790a 2020 2d20 _complexity. - │ │ │ +001d5fe0: 6d65 6469 756d 5f73 6576 6572 6974 790a medium_severity. │ │ │ +001d5ff0: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e - mount_option │ │ │ +001d6000: 5f62 6f6f 745f 6e6f 6578 6563 0a20 202d _boot_noexec. - │ │ │ +001d6010: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465 no_reboot_neede │ │ │ +001d6020: 640a 3c2f 636f 6465 3e3c 2f70 7265 3e3c d.
< │ │ │ +001d6030: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Sh │ │ │ +001d60e0: 656c 6c20 7363 7269 7074 20e2 87b2 3c2f ell script ...
< │ │ │ +001d6190: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
# Remediation 
│ │ │ +001d61b0: 6973 2061 7070 6c69 6361 626c 6520 6f6e  is applicable on
│ │ │ +001d61c0: 6c79 2069 6e20 6365 7274 6169 6e20 706c  ly in certain pl
│ │ │ +001d61d0: 6174 666f 726d 730a 6966 2028 2021 2028  atforms.if ( ! (
│ │ │ +001d61e0: 207b 2072 706d 202d 2d71 7569 6574 202d   { rpm --quiet -
│ │ │ +001d61f0: 7120 6b65 726e 656c 203b 7d20 2661 6d70  q kernel ;} &
│ │ │ +001d6200: 3b26 616d 703b 207b 2072 706d 202d 2d71  ;& { rpm --q
│ │ │ +001d6210: 7569 6574 202d 7120 626f 6f74 6320 3b7d  uiet -q bootc ;}
│ │ │ +001d6220: 2026 616d 703b 2661 6d70 3b20 7b20 2120   && { ! 
│ │ │ +001d6230: 7270 6d20 2d2d 7175 6965 7420 2d71 206f  rpm --quiet -q o
│ │ │ +001d6240: 7065 6e73 6869 6674 2d6b 7562 656c 6574  penshift-kubelet
│ │ │ +001d6250: 203b 7d20 2661 6d70 3b26 616d 703b 2028   ;} && (
│ │ │ +001d6260: 5b20 2d66 202f 7275 6e2f 6f73 7472 6565  [ -f /run/ostree
│ │ │ +001d6270: 2d62 6f6f 7465 6420 5d20 7c7c 205b 202d  -booted ] || [ -
│ │ │ +001d6280: 4c20 2f6f 7374 7265 6520 5d29 2029 2026  L /ostree ]) ) &
│ │ │ +001d6290: 616d 703b 2661 6d70 3b20 2120 2820 5b20  amp;& ! ( [ 
│ │ │ +001d62a0: 2d66 202f 2e64 6f63 6b65 7265 6e76 205d  -f /.dockerenv ]
│ │ │ +001d62b0: 207c 7c20 5b20 2d66 202f 7275 6e2f 2e63   || [ -f /run/.c
│ │ │ +001d62c0: 6f6e 7461 696e 6572 656e 7620 5d20 2920  ontainerenv ] ) 
│ │ │ +001d62d0: 293b 2074 6865 6e0a 0a66 756e 6374 696f  ); then..functio
│ │ │ +001d62e0: 6e20 7065 7266 6f72 6d5f 7265 6d65 6469  n perform_remedi
│ │ │ +001d62f0: 6174 696f 6e20 7b0a 0a20 2020 200a 2020  ation {..    .  
│ │ │ +001d6300: 2020 2020 2020 2320 7468 6520 6d6f 756e        # the moun
│ │ │ +001d6310: 7420 706f 696e 7420 2f62 6f6f 7420 6861  t point /boot ha
│ │ │ +001d6320: 7320 746f 2062 6520 6465 6669 6e65 6420  s to be defined 
│ │ │ +001d6330: 696e 202f 6574 632f 6673 7461 620a 2020  in /etc/fstab.  
│ │ │ +001d6340: 2020 2020 2020 2320 6265 666f 7265 2074        # before t
│ │ │ +001d6350: 6869 7320 7265 6d65 6469 6174 696f 6e20  his remediation 
│ │ │ +001d6360: 6361 6e20 6265 2065 7865 6375 7465 642e  can be executed.
│ │ │ +001d6370: 2049 6e20 6361 7365 2069 7420 6973 206e   In case it is n
│ │ │ +001d6380: 6f74 2064 6566 696e 6564 2c20 7468 650a  ot defined, the.
│ │ │ +001d6390: 2020 2020 2020 2020 2320 7265 6d65 6469          # remedi
│ │ │ +001d63a0: 6174 696f 6e20 6162 6f72 7473 2061 6e64  ation aborts and
│ │ │ +001d63b0: 206e 6f20 6368 616e 6765 7320 7265 6761   no changes rega
│ │ │ +001d63c0: 7264 696e 6720 7468 6520 6d6f 756e 7420  rding the mount 
│ │ │ +001d63d0: 706f 696e 7420 6172 6520 646f 6e65 2e0a  point are done..
│ │ │ +001d63e0: 2020 2020 2020 2020 6d6f 756e 745f 706f          mount_po
│ │ │ +001d63f0: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ +001d6400: 3d22 2428 7072 696e 7466 2022 5e5b 5b3a  ="$(printf "^[[:
│ │ │ +001d6410: 7370 6163 653a 5d5d 2a5b 5e23 5d2e 2a5b  space:]]*[^#].*[
│ │ │ +001d6420: 5b3a 7370 6163 653a 5d5d 2573 5b5b 3a73  [:space:]]%s[[:s
│ │ │ +001d6430: 7061 6365 3a5d 5d22 2022 2f62 6f6f 7422  pace:]]" "/boot"
│ │ │ +001d6440: 2922 0a0a 2020 2020 6772 6570 2022 246d  )"..    grep "$m
│ │ │ +001d6450: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ +001d6460: 5f72 6567 6578 7022 202d 7120 2f65 7463  _regexp" -q /etc
│ │ │ +001d6470: 2f66 7374 6162 205c 0a20 2020 2020 2020  /fstab \.       
│ │ │ +001d6480: 207c 7c20 7b20 6563 686f 2022 5468 6520   || { echo "The 
│ │ │ +001d6490: 6d6f 756e 7420 706f 696e 7420 272f 626f  mount point '/bo
│ │ │ +001d64a0: 6f74 2720 6973 206e 6f74 2065 7665 6e20  ot' is not even 
│ │ │ +001d64b0: 696e 202f 6574 632f 6673 7461 622c 2073  in /etc/fstab, s
│ │ │ +001d64c0: 6f20 7765 2063 616e 2774 2073 6574 2075  o we can't set u
│ │ │ +001d64d0: 7020 6d6f 756e 7420 6f70 7469 6f6e 7322  p mount options"
│ │ │ +001d64e0: 2026 6774 3b26 616d 703b 323b 0a20 2020   >&2;.   
│ │ │ +001d64f0: 2020 2020 2020 2020 2020 2020 2065 6368               ech
│ │ │ +001d6500: 6f20 224e 6f74 2072 656d 6564 6961 7469  o "Not remediati
│ │ │ +001d6510: 6e67 2c20 6265 6361 7573 6520 7468 6572  ng, because ther
│ │ │ +001d6520: 6520 6973 206e 6f20 7265 636f 7264 206f  e is no record o
│ │ │ +001d6530: 6620 2f62 6f6f 7420 696e 202f 6574 632f  f /boot in /etc/
│ │ │ +001d6540: 6673 7461 6222 2026 6774 3b26 616d 703b  fstab" >&
│ │ │ +001d6550: 323b 2072 6574 7572 6e20 313b 207d 0a20  2; return 1; }. 
│ │ │ +001d6560: 2020 200a 0a0a 2020 2020 6d6f 756e 745f     ...    mount_
│ │ │ +001d6570: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ +001d6580: 7870 3d22 2428 7072 696e 7466 2022 5e5b  xp="$(printf "^[
│ │ │ +001d6590: 5b3a 7370 6163 653a 5d5d 2a5b 5e23 5d2e  [:space:]]*[^#].
│ │ │ +001d65a0: 2a5b 5b3a 7370 6163 653a 5d5d 2573 5b5b  *[[:space:]]%s[[
│ │ │ +001d65b0: 3a73 7061 6365 3a5d 5d22 202f 626f 6f74  :space:]]" /boot
│ │ │ +001d65c0: 2922 0a0a 2020 2020 2320 4966 2074 6865  )"..    # If the
│ │ │ +001d65d0: 206d 6f75 6e74 2070 6f69 6e74 2069 7320   mount point is 
│ │ │ +001d65e0: 6e6f 7420 696e 202f 6574 632f 6673 7461  not in /etc/fsta
│ │ │ +001d65f0: 622c 2067 6574 2070 7265 7669 6f75 7320  b, get previous 
│ │ │ +001d6600: 6d6f 756e 7420 6f70 7469 6f6e 7320 6672  mount options fr
│ │ │ +001d6610: 6f6d 202f 6574 632f 6d74 6162 0a20 2020  om /etc/mtab.   
│ │ │ +001d6620: 2069 6620 2120 6772 6570 202d 7120 2224   if ! grep -q "$
│ │ │ +001d6630: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ +001d6640: 685f 7265 6765 7870 2220 2f65 7463 2f66  h_regexp" /etc/f
│ │ │ +001d6650: 7374 6162 3b20 7468 656e 0a20 2020 2020  stab; then.     
│ │ │ +001d6660: 2020 2023 2072 756e 7469 6d65 206f 7074     # runtime opt
│ │ │ +001d6670: 7320 7769 7468 6f75 7420 736f 6d65 2061  s without some a
│ │ │ +001d6680: 7574 6f6d 6174 6963 206b 6572 6e65 6c2f  utomatic kernel/
│ │ │ +001d6690: 7573 6572 7370 6163 652d 6164 6465 6420  userspace-added 
│ │ │ +001d66a0: 6465 6661 756c 7473 0a20 2020 2020 2020  defaults.       
│ │ │ +001d66b0: 2070 7265 7669 6f75 735f 6d6f 756e 745f   previous_mount_
│ │ │ +001d66c0: 6f70 7473 3d24 2867 7265 7020 2224 6d6f  opts=$(grep "$mo
│ │ │ +001d66d0: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ +001d66e0: 7265 6765 7870 2220 2f65 7463 2f6d 7461  regexp" /etc/mta
│ │ │ +001d66f0: 6220 7c20 6865 6164 202d 3120 7c20 2061  b | head -1 |  a
│ │ │ +001d6700: 776b 2027 7b70 7269 6e74 2024 347d 2720  wk '{print $4}' 
│ │ │ +001d6710: 5c0a 2020 2020 2020 2020 2020 2020 2020  \.              
│ │ │ +001d6720: 2020 2020 2020 7c20 7365 6420 2d45 2022        | sed -E "
│ │ │ +001d6730: 732f 2872 777c 6465 6661 756c 7473 7c73  s/(rw|defaults|s
│ │ │ +001d6740: 6563 6c61 6265 6c7c 6e6f 6578 6563 2928  eclabel|noexec)(
│ │ │ +001d6750: 2c7c 2429 2f2f 673b 732f 2c24 2f2f 2229  ,|$)//g;s/,$//")
│ │ │ +001d6760: 0a20 2020 2020 2020 205b 2022 2470 7265  .        [ "$pre
│ │ │ +001d6770: 7669 6f75 735f 6d6f 756e 745f 6f70 7473  vious_mount_opts
│ │ │ +001d6780: 2220 5d20 2661 6d70 3b26 616d 703b 2070  " ] && p
│ │ │ +001d6790: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ +001d67a0: 7473 2b3d 222c 220a 2020 2020 2020 2020  ts+=",".        
│ │ │ +001d67b0: 2320 496e 2069 736f 3936 3630 2066 696c  # In iso9660 fil
│ │ │ +001d67c0: 6573 7973 7465 6d73 206d 7461 6220 636f  esystems mtab co
│ │ │ +001d67d0: 756c 6420 6465 7363 7269 6265 2061 2022  uld describe a "
│ │ │ +001d67e0: 626c 6f63 6b73 697a 6522 2076 616c 7565  blocksize" value
│ │ │ +001d67f0: 2c20 7468 6973 2073 686f 756c 6420 6265  , this should be
│ │ │ +001d6800: 2072 6566 6c65 6374 6564 2069 6e0a 2020   reflected in.  
│ │ │ +001d6810: 2020 2020 2020 2320 6673 7461 6220 6173        # fstab as
│ │ │ +001d6820: 2022 626c 6f63 6b22 2e20 2054 6865 206e   "block".  The n
│ │ │ +001d6830: 6578 7420 7661 7269 6162 6c65 2069 7320  ext variable is 
│ │ │ +001d6840: 746f 2073 6174 6973 6679 2073 6865 6c6c  to satisfy shell
│ │ │ +001d6850: 6368 6563 6b20 5343 3230 3530 2e0a 2020  check SC2050..  
│ │ │ +001d6860: 2020 2020 2020 6673 5f74 7970 653d 2222        fs_type=""
│ │ │ +001d6870: 0a20 2020 2020 2020 2069 6620 5b20 2022  .        if [  "
│ │ │ +001d6880: 2466 735f 7479 7065 2220 3d3d 2022 6973  $fs_type" == "is
│ │ │ +001d6890: 6f39 3636 3022 205d 203b 2074 6865 6e0a  o9660" ] ; then.
│ │ │ +001d68a0: 2020 2020 2020 2020 2020 2020 7072 6576              prev
│ │ │ +001d68b0: 696f 7573 5f6d 6f75 6e74 5f6f 7074 733d  ious_mount_opts=
│ │ │ +001d68c0: 2428 7365 6420 2773 2f62 6c6f 636b 7369  $(sed 's/blocksi
│ │ │ +001d68d0: 7a65 3d2f 626c 6f63 6b3d 2f27 2026 6c74  ze=/block=/' <
│ │ │ +001d68e0: 3b26 6c74 3b26 6c74 3b20 2224 7072 6576  ;<< "$prev
│ │ │ +001d68f0: 696f 7573 5f6d 6f75 6e74 5f6f 7074 7322  ious_mount_opts"
│ │ │ +001d6900: 290a 2020 2020 2020 2020 6669 0a20 2020  ).        fi.   
│ │ │ +001d6910: 2020 2020 2065 6368 6f20 2220 2f62 6f6f       echo " /boo
│ │ │ +001d6920: 7420 2064 6566 6175 6c74 732c 247b 7072  t  defaults,${pr
│ │ │ +001d6930: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ +001d6940: 737d 6e6f 6578 6563 2030 2030 2220 2667  s}noexec 0 0" &g
│ │ │ +001d6950: 743b 2667 743b 202f 6574 632f 6673 7461  t;> /etc/fsta
│ │ │ +001d6960: 620a 2020 2020 2320 4966 2074 6865 206d  b.    # If the m
│ │ │ +001d6970: 6f75 6e74 5f6f 7074 206f 7074 696f 6e20  ount_opt option 
│ │ │ +001d6980: 6973 206e 6f74 2061 6c72 6561 6479 2069  is not already i
│ │ │ +001d6990: 6e20 7468 6520 6d6f 756e 7420 706f 696e  n the mount poin
│ │ │ +001d69a0: 7427 7320 2f65 7463 2f66 7374 6162 2065  t's /etc/fstab e
│ │ │ +001d69b0: 6e74 7279 2c20 6164 6420 6974 0a20 2020  ntry, add it.   
│ │ │ +001d69c0: 2065 6c69 6620 2120 6772 6570 2022 246d   elif ! grep "$m
│ │ │ +001d69d0: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ +001d69e0: 5f72 6567 6578 7022 202f 6574 632f 6673  _regexp" /etc/fs
│ │ │ +001d69f0: 7461 6220 7c20 6772 6570 202d 7120 226e  tab | grep -q "n
│ │ │ +001d6a00: 6f65 7865 6322 3b20 7468 656e 0a20 2020  oexec"; then.   
│ │ │ +001d6a10: 2020 2020 2070 7265 7669 6f75 735f 6d6f       previous_mo
│ │ │ +001d6a20: 756e 745f 6f70 7473 3d24 2867 7265 7020  unt_opts=$(grep 
│ │ │ +001d6a30: 2224 6d6f 756e 745f 706f 696e 745f 6d61  "$mount_point_ma
│ │ │ +001d6a40: 7463 685f 7265 6765 7870 2220 2f65 7463  tch_regexp" /etc
│ │ │ +001d6a50: 2f66 7374 6162 207c 2061 776b 2027 7b70  /fstab | awk '{p
│ │ │ +001d6a60: 7269 6e74 2024 347d 2729 0a20 2020 2020  rint $4}').     
│ │ │ +001d6a70: 2020 2073 6564 202d 6920 2273 7c5c 2824     sed -i "s|\($
│ │ │ +001d6a80: 7b6d 6f75 6e74 5f70 6f69 6e74 5f6d 6174  {mount_point_mat
│ │ │ +001d6a90: 6368 5f72 6567 6578 707d 2e2a 247b 7072  ch_regexp}.*${pr
│ │ │ +001d6aa0: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ +001d6ab0: 737d 5c29 7c5c 312c 6e6f 6578 6563 7c22  s}\)|\1,noexec|"
│ │ │ +001d6ac0: 202f 6574 632f 6673 7461 620a 2020 2020   /etc/fstab.    
│ │ │ +001d6ad0: 6669 0a0a 0a20 2020 2069 6620 6d6b 6469  fi...    if mkdi
│ │ │ +001d6ae0: 7220 2d70 2022 2f62 6f6f 7422 3b20 7468  r -p "/boot"; th
│ │ │ +001d6af0: 656e 0a20 2020 2020 2020 2069 6620 6d6f  en.        if mo
│ │ │ +001d6b00: 756e 7470 6f69 6e74 202d 7120 222f 626f  untpoint -q "/bo
│ │ │ +001d6b10: 6f74 223b 2074 6865 6e0a 2020 2020 2020  ot"; then.      
│ │ │ +001d6b20: 2020 2020 2020 6d6f 756e 7420 2d6f 2072        mount -o r
│ │ │ +001d6b30: 656d 6f75 6e74 202d 2d74 6172 6765 7420  emount --target 
│ │ │ +001d6b40: 222f 626f 6f74 220a 2020 2020 2020 2020  "/boot".        
│ │ │ +001d6b50: 6669 0a20 2020 2066 690a 7d0a 0a70 6572  fi.    fi.}..per
│ │ │ +001d6b60: 666f 726d 5f72 656d 6564 6961 7469 6f6e  form_remediation
│ │ │ +001d6b70: 0a0a 656c 7365 0a20 2020 2026 6774 3b26  ..else.    >&
│ │ │ +001d6b80: 616d 703b 3220 6563 686f 2027 5265 6d65  amp;2 echo 'Reme
│ │ │ +001d6b90: 6469 6174 696f 6e20 6973 206e 6f74 2061  diation is not a
│ │ │ +001d6ba0: 7070 6c69 6361 626c 652c 206e 6f74 6869  pplicable, nothi
│ │ │ +001d6bb0: 6e67 2077 6173 2064 6f6e 6527 0a66 690a  ng was done'.fi.
│ │ │ +001d6bc0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ +001d6c70: 5265 6d65 6469 6174 696f 6e20 416e 6163 Remediation Anac │ │ │ +001d6c80: 6f6e 6461 2073 6e69 7070 6574 20e2 87b2 onda snippet ... │ │ │ +001d6c90: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
│ │ │ +001d6170: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +001d6180: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Complexity:< │ │ │ +001d6d80: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
.part /boot --m
│ │ │ +001d6dd0: 6f75 6e74 6f70 7469 6f6e 733d 226e 6f65  ountoptions="noe
│ │ │ +001d6de0: 7865 6322 0a3c 2f63 6f64 653e 3c2f 7072  xec".
│ │ │ 001d6e10: 3c2f 7461 626c 653e 3c2f 7464 3e3c 2f74
low
Disru │ │ │ +001d6d40: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e68 ption:h │ │ │ +001d6d50: 6967 683c 2f74 643e 3c2f 7472 3e3c 7472 igh
Reboot:false
Stra │ │ │ +001d6d90: 7465 6779 3a3c 2f74 683e 3c74 643e 656e tegy:en │ │ │ +001d6da0: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
Remediation An │ │ │ -001d79d0: 6163 6f6e 6461 2073 6e69 7070 6574 20e2 aconda snippet . │ │ │ -001d79e0: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ -001d7a60: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -001d7a80: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 < │ │ │ -001d7ab0: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr> │ │ │ -001d7b00: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ -001d7a70: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ -001d7a90: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:high
Reboot:false
St │ │ │ -001d7ae0: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ -001d7af0: 656e 6162 6c65 3c2f 7464 3e3c 2f74 723e enable
.part /boot -
│ │ │ -001d7b20: 2d6d 6f75 6e74 6f70 7469 6f6e 733d 226e  -mountoptions="n
│ │ │ -001d7b30: 6f73 7569 6422 0a3c 2f63 6f64 653e 3c2f  osuid".
Remediati │ │ │ -001d7bf0: 6f6e 2041 6e73 6962 6c65 2073 6e69 7070 on Ansible snipp │ │ │ -001d7c00: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ -001d7c80: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ -001d7c90: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -001d7ca0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:highReboo │ │ │ -001d7ce0: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -001d7cf0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ -001d7d10: 3c74 643e 636f 6e66 6967 7572 653c 2f74 configure< │ │ │ -001d7d30: 7072 653e 3c63 6f64 653e 2d20 6e61 6d65 pre>- name │ │ │ -001d7d40: 3a20 4761 7468 6572 2074 6865 2070 6163 : Gather the pac │ │ │ -001d7d50: 6b61 6765 2066 6163 7473 0a20 2070 6163 kage facts. pac │ │ │ -001d7d60: 6b61 6765 5f66 6163 7473 3a0a 2020 2020 kage_facts:. │ │ │ -001d7d70: 6d61 6e61 6765 723a 2061 7574 6f0a 2020 manager: auto. │ │ │ -001d7d80: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38 tags:. - NIST-8 │ │ │ -001d7d90: 3030 2d35 332d 4143 2d36 0a20 202d 204e 00-53-AC-6. - N │ │ │ -001d7da0: 4953 542d 3830 302d 3533 2d41 432d 3628 IST-800-53-AC-6( │ │ │ -001d7db0: 3129 0a20 202d 204e 4953 542d 3830 302d 1). - NIST-800- │ │ │ -001d7dc0: 3533 2d43 4d2d 3628 6129 0a20 202d 204e 53-CM-6(a). - N │ │ │ -001d7dd0: 4953 542d 3830 302d 3533 2d43 4d2d 3728 IST-800-53-CM-7( │ │ │ -001d7de0: 6129 0a20 202d 204e 4953 542d 3830 302d a). - NIST-800- │ │ │ -001d7df0: 3533 2d43 4d2d 3728 6229 0a20 202d 204e 53-CM-7(b). - N │ │ │ -001d7e00: 4953 542d 3830 302d 3533 2d4d 502d 370a IST-800-53-MP-7. │ │ │ -001d7e10: 2020 2d20 636f 6e66 6967 7572 655f 7374 - configure_st │ │ │ -001d7e20: 7261 7465 6779 0a20 202d 2068 6967 685f rategy. - high_ │ │ │ -001d7e30: 6469 7372 7570 7469 6f6e 0a20 202d 206c disruption. - l │ │ │ -001d7e40: 6f77 5f63 6f6d 706c 6578 6974 790a 2020 ow_complexity. │ │ │ -001d7e50: 2d20 6d65 6469 756d 5f73 6576 6572 6974 - medium_severit │ │ │ -001d7e60: 790a 2020 2d20 6d6f 756e 745f 6f70 7469 y. - mount_opti │ │ │ -001d7e70: 6f6e 5f62 6f6f 745f 6e6f 7375 6964 0a20 on_boot_nosuid. │ │ │ -001d7e80: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565 - no_reboot_nee │ │ │ -001d7e90: 6465 640a 0a2d 206e 616d 653a 2027 4164 ded..- name: 'Ad │ │ │ -001d7ea0: 6420 6e6f 7375 6964 204f 7074 696f 6e20 d nosuid Option │ │ │ -001d7eb0: 746f 202f 626f 6f74 3a20 4368 6563 6b20 to /boot: Check │ │ │ -001d7ec0: 696e 666f 726d 6174 696f 6e20 6173 736f information asso │ │ │ -001d7ed0: 6369 6174 6564 2074 6f20 6d6f 756e 7470 ciated to mountp │ │ │ -001d7ee0: 6f69 6e74 270a 2020 616e 7369 626c 652e oint'. ansible. │ │ │ -001d7ef0: 6275 696c 7469 6e2e 636f 6d6d 616e 643a builtin.command: │ │ │ -001d7f00: 2066 696e 646d 6e74 202d 2d66 7374 6162 findmnt --fstab │ │ │ -001d7f10: 2027 2f62 6f6f 7427 0a20 2072 6567 6973 '/boot'. regis │ │ │ -001d7f20: 7465 723a 2064 6576 6963 655f 6e61 6d65 ter: device_name │ │ │ -001d7f30: 0a20 2066 6169 6c65 645f 7768 656e 3a20 . failed_when: │ │ │ -001d7f40: 6465 7669 6365 5f6e 616d 652e 7263 2026 device_name.rc & │ │ │ -001d7f50: 6774 3b20 310a 2020 6368 616e 6765 645f gt; 1. changed_ │ │ │ -001d7f60: 7768 656e 3a20 6661 6c73 650a 2020 6368 when: false. ch │ │ │ -001d7f70: 6563 6b5f 6d6f 6465 3a20 6661 6c73 650a eck_mode: false. │ │ │ -001d7f80: 2020 7768 656e 3a20 2820 6e6f 7420 2820 when: ( not ( │ │ │ -001d7f90: 226b 6572 6e65 6c22 2069 6e20 616e 7369 "kernel" in ansi │ │ │ -001d7fa0: 626c 655f 6661 6374 732e 7061 636b 6167 ble_facts.packag │ │ │ -001d7fb0: 6573 2061 6e64 2022 626f 6f74 6322 2069 es and "bootc" i │ │ │ -001d7fc0: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ -001d7fd0: 7061 636b 6167 6573 0a20 2020 2061 6e64 packages. and │ │ │ -001d7fe0: 206e 6f74 2022 6f70 656e 7368 6966 742d not "openshift- │ │ │ -001d7ff0: 6b75 6265 6c65 7422 2069 6e20 616e 7369 kubelet" in ansi │ │ │ -001d8000: 626c 655f 6661 6374 732e 7061 636b 6167 ble_facts.packag │ │ │ -001d8010: 6573 2061 6e64 2022 6f73 7472 6565 2220 es and "ostree" │ │ │ -001d8020: 696e 2061 6e73 6962 6c65 5f70 726f 635f in ansible_proc_ │ │ │ -001d8030: 636d 646c 696e 650a 2020 2020 2920 616e cmdline. ) an │ │ │ -001d8040: 6420 6e6f 7420 2820 616e 7369 626c 655f d not ( ansible_ │ │ │ -001d8050: 7669 7274 7561 6c69 7a61 7469 6f6e 5f74 virtualization_t │ │ │ -001d8060: 7970 6520 696e 205b 2264 6f63 6b65 7222 ype in ["docker" │ │ │ -001d8070: 2c20 226c 7863 222c 2022 6f70 656e 767a , "lxc", "openvz │ │ │ -001d8080: 222c 2022 706f 646d 616e 222c 0a20 2020 ", "podman",. │ │ │ -001d8090: 2022 636f 6e74 6169 6e65 7222 5d20 2920 "container"] ) │ │ │ -001d80a0: 290a 2020 7461 6773 3a0a 2020 2d20 4e49 ). tags:. - NI │ │ │ -001d80b0: 5354 2d38 3030 2d35 332d 4143 2d36 0a20 ST-800-53-AC-6. │ │ │ -001d80c0: 202d 204e 4953 542d 3830 302d 3533 2d41 - NIST-800-53-A │ │ │ -001d80d0: 432d 3628 3129 0a20 202d 204e 4953 542d C-6(1). - NIST- │ │ │ -001d80e0: 3830 302d 3533 2d43 4d2d 3628 6129 0a20 800-53-CM-6(a). │ │ │ -001d80f0: 202d 204e 4953 542d 3830 302d 3533 2d43 - NIST-800-53-C │ │ │ -001d8100: 4d2d 3728 6129 0a20 202d 204e 4953 542d M-7(a). - NIST- │ │ │ -001d8110: 3830 302d 3533 2d43 4d2d 3728 6229 0a20 800-53-CM-7(b). │ │ │ -001d8120: 202d 204e 4953 542d 3830 302d 3533 2d4d - NIST-800-53-M │ │ │ -001d8130: 502d 370a 2020 2d20 636f 6e66 6967 7572 P-7. - configur │ │ │ -001d8140: 655f 7374 7261 7465 6779 0a20 202d 2068 e_strategy. - h │ │ │ -001d8150: 6967 685f 6469 7372 7570 7469 6f6e 0a20 igh_disruption. │ │ │ -001d8160: 202d 206c 6f77 5f63 6f6d 706c 6578 6974 - low_complexit │ │ │ -001d8170: 790a 2020 2d20 6d65 6469 756d 5f73 6576 y. - medium_sev │ │ │ -001d8180: 6572 6974 790a 2020 2d20 6d6f 756e 745f erity. - mount_ │ │ │ -001d8190: 6f70 7469 6f6e 5f62 6f6f 745f 6e6f 7375 option_boot_nosu │ │ │ -001d81a0: 6964 0a20 202d 206e 6f5f 7265 626f 6f74 id. - no_reboot │ │ │ -001d81b0: 5f6e 6565 6465 640a 0a2d 206e 616d 653a _needed..- name: │ │ │ -001d81c0: 2027 4164 6420 6e6f 7375 6964 204f 7074 'Add nosuid Opt │ │ │ -001d81d0: 696f 6e20 746f 202f 626f 6f74 3a20 4372 ion to /boot: Cr │ │ │ -001d81e0: 6561 7465 206d 6f75 6e74 5f69 6e66 6f20 eate mount_info │ │ │ -001d81f0: 6469 6374 696f 6e61 7279 2076 6172 6961 dictionary varia │ │ │ -001d8200: 626c 6527 0a20 2073 6574 5f66 6163 743a ble'. set_fact: │ │ │ -001d8210: 0a20 2020 206d 6f75 6e74 5f69 6e66 6f3a . mount_info: │ │ │ -001d8220: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f7c '{{ mount_info| │ │ │ -001d8230: 6465 6661 756c 7428 7b7d 297c 636f 6d62 default({})|comb │ │ │ -001d8240: 696e 6528 7b69 7465 6d2e 303a 2069 7465 ine({item.0: ite │ │ │ -001d8250: 6d2e 317d 2920 7d7d 270a 2020 7769 7468 m.1}) }}'. with │ │ │ -001d8260: 5f74 6f67 6574 6865 723a 0a20 202d 2027 _together:. - ' │ │ │ -001d8270: 7b7b 2064 6576 6963 655f 6e61 6d65 2e73 {{ device_name.s │ │ │ -001d8280: 7464 6f75 745f 6c69 6e65 735b 305d 2e73 tdout_lines[0].s │ │ │ -001d8290: 706c 6974 2829 207c 206d 6170 2827 276c plit() | map(''l │ │ │ -001d82a0: 6f77 6572 2727 2920 7c20 6c69 7374 207d ower'') | list } │ │ │ -001d82b0: 7d27 0a20 202d 2027 7b7b 2064 6576 6963 }'. - '{{ devic │ │ │ -001d82c0: 655f 6e61 6d65 2e73 7464 6f75 745f 6c69 e_name.stdout_li │ │ │ -001d82d0: 6e65 735b 315d 2e73 706c 6974 2829 207c nes[1].split() | │ │ │ -001d82e0: 206c 6973 7420 7d7d 270a 2020 7768 656e list }}'. when │ │ │ -001d82f0: 3a0a 2020 2d20 2820 6e6f 7420 2820 226b :. - ( not ( "k │ │ │ -001d8300: 6572 6e65 6c22 2069 6e20 616e 7369 626c ernel" in ansibl │ │ │ -001d8310: 655f 6661 6374 732e 7061 636b 6167 6573 e_facts.packages │ │ │ -001d8320: 2061 6e64 2022 626f 6f74 6322 2069 6e20 and "bootc" in │ │ │ -001d8330: 616e 7369 626c 655f 6661 6374 732e 7061 ansible_facts.pa │ │ │ -001d8340: 636b 6167 6573 0a20 2020 2061 6e64 206e ckages. and n │ │ │ -001d8350: 6f74 2022 6f70 656e 7368 6966 742d 6b75 ot "openshift-ku │ │ │ -001d8360: 6265 6c65 7422 2069 6e20 616e 7369 626c belet" in ansibl │ │ │ -001d8370: 655f 6661 6374 732e 7061 636b 6167 6573 e_facts.packages │ │ │ -001d8380: 2061 6e64 2022 6f73 7472 6565 2220 696e and "ostree" in │ │ │ -001d8390: 2061 6e73 6962 6c65 5f70 726f 635f 636d ansible_proc_cm │ │ │ -001d83a0: 646c 696e 650a 2020 2020 2920 616e 6420 dline. ) and │ │ │ -001d83b0: 6e6f 7420 2820 616e 7369 626c 655f 7669 not ( ansible_vi │ │ │ -001d83c0: 7274 7561 6c69 7a61 7469 6f6e 5f74 7970 rtualization_typ │ │ │ -001d83d0: 6520 696e 205b 2264 6f63 6b65 7222 2c20 e in ["docker", │ │ │ -001d83e0: 226c 7863 222c 2022 6f70 656e 767a 222c "lxc", "openvz", │ │ │ -001d83f0: 2022 706f 646d 616e 222c 0a20 2020 2022 "podman",. " │ │ │ -001d8400: 636f 6e74 6169 6e65 7222 5d20 2920 290a container"] ) ). │ │ │ -001d8410: 2020 2d20 6465 7669 6365 5f6e 616d 652e - device_name. │ │ │ -001d8420: 7374 646f 7574 2069 7320 6465 6669 6e65 stdout is define │ │ │ -001d8430: 6420 616e 6420 6465 7669 6365 5f6e 616d d and device_nam │ │ │ -001d8440: 652e 7374 646f 7574 5f6c 696e 6573 2069 e.stdout_lines i │ │ │ -001d8450: 7320 6465 6669 6e65 640a 2020 2d20 2864 s defined. - (d │ │ │ -001d8460: 6576 6963 655f 6e61 6d65 2e73 7464 6f75 evice_name.stdou │ │ │ -001d8470: 7420 7c20 6c65 6e67 7468 2026 6774 3b20 t | length > │ │ │ -001d8480: 3029 0a20 2074 6167 733a 0a20 202d 204e 0). tags:. - N │ │ │ -001d8490: 4953 542d 3830 302d 3533 2d41 432d 360a IST-800-53-AC-6. │ │ │ -001d84a0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d - NIST-800-53- │ │ │ -001d84b0: 4143 2d36 2831 290a 2020 2d20 4e49 5354 AC-6(1). - NIST │ │ │ -001d84c0: 2d38 3030 2d35 332d 434d 2d36 2861 290a -800-53-CM-6(a). │ │ │ -001d84d0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d - NIST-800-53- │ │ │ -001d84e0: 434d 2d37 2861 290a 2020 2d20 4e49 5354 CM-7(a). - NIST │ │ │ -001d84f0: 2d38 3030 2d35 332d 434d 2d37 2862 290a -800-53-CM-7(b). │ │ │ -001d8500: 2020 2d20 4e49 5354 2d38 3030 2d35 332d - NIST-800-53- │ │ │ -001d8510: 4d50 2d37 0a20 202d 2063 6f6e 6669 6775 MP-7. - configu │ │ │ -001d8520: 7265 5f73 7472 6174 6567 790a 2020 2d20 re_strategy. - │ │ │ -001d8530: 6869 6768 5f64 6973 7275 7074 696f 6e0a high_disruption. │ │ │ -001d8540: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869 - low_complexi │ │ │ -001d8550: 7479 0a20 202d 206d 6564 6975 6d5f 7365 ty. - medium_se │ │ │ -001d8560: 7665 7269 7479 0a20 202d 206d 6f75 6e74 verity. - mount │ │ │ -001d8570: 5f6f 7074 696f 6e5f 626f 6f74 5f6e 6f73 _option_boot_nos │ │ │ -001d8580: 7569 640a 2020 2d20 6e6f 5f72 6562 6f6f uid. - no_reboo │ │ │ -001d8590: 745f 6e65 6564 6564 0a0a 2d20 6e61 6d65 t_needed..- name │ │ │ -001d85a0: 3a20 2741 6464 206e 6f73 7569 6420 4f70 : 'Add nosuid Op │ │ │ -001d85b0: 7469 6f6e 2074 6f20 2f62 6f6f 743a 2049 tion to /boot: I │ │ │ -001d85c0: 6620 2f62 6f6f 7420 6e6f 7420 6d6f 756e f /boot not moun │ │ │ -001d85d0: 7465 642c 2063 7261 6674 206d 6f75 6e74 ted, craft mount │ │ │ -001d85e0: 5f69 6e66 6f20 6d61 6e75 616c 6c79 270a _info manually'. │ │ │ -001d85f0: 2020 7365 745f 6661 6374 3a0a 2020 2020 set_fact:. │ │ │ -001d8600: 6d6f 756e 745f 696e 666f 3a20 277b 7b20 mount_info: '{{ │ │ │ -001d8610: 6d6f 756e 745f 696e 666f 7c64 6566 6175 mount_info|defau │ │ │ -001d8620: 6c74 287b 7d29 7c63 6f6d 6269 6e65 287b lt({})|combine({ │ │ │ -001d8630: 6974 656d 2e30 3a20 6974 656d 2e31 7d29 item.0: item.1}) │ │ │ -001d8640: 207d 7d27 0a20 2077 6974 685f 746f 6765 }}'. with_toge │ │ │ -001d8650: 7468 6572 3a0a 2020 2d20 2d20 7461 7267 ther:. - - targ │ │ │ -001d8660: 6574 0a20 2020 202d 2073 6f75 7263 650a et. - source. │ │ │ -001d8670: 2020 2020 2d20 6673 7479 7065 0a20 2020 - fstype. │ │ │ -001d8680: 202d 206f 7074 696f 6e73 0a20 202d 202d - options. - - │ │ │ -001d8690: 202f 626f 6f74 0a20 2020 202d 2027 270a /boot. - ''. │ │ │ -001d86a0: 2020 2020 2d20 2727 0a20 2020 202d 2064 - ''. - d │ │ │ -001d86b0: 6566 6175 6c74 730a 2020 7768 656e 3a0a efaults. when:. │ │ │ -001d86c0: 2020 2d20 2820 6e6f 7420 2820 226b 6572 - ( not ( "ker │ │ │ -001d86d0: 6e65 6c22 2069 6e20 616e 7369 626c 655f nel" in ansible_ │ │ │ -001d86e0: 6661 6374 732e 7061 636b 6167 6573 2061 facts.packages a │ │ │ -001d86f0: 6e64 2022 626f 6f74 6322 2069 6e20 616e nd "bootc" in an │ │ │ -001d8700: 7369 626c 655f 6661 6374 732e 7061 636b sible_facts.pack │ │ │ -001d8710: 6167 6573 0a20 2020 2061 6e64 206e 6f74 ages. and not │ │ │ -001d8720: 2022 6f70 656e 7368 6966 742d 6b75 6265 "openshift-kube │ │ │ -001d8730: 6c65 7422 2069 6e20 616e 7369 626c 655f let" in ansible_ │ │ │ -001d8740: 6661 6374 732e 7061 636b 6167 6573 2061 facts.packages a │ │ │ -001d8750: 6e64 2022 6f73 7472 6565 2220 696e 2061 nd "ostree" in a │ │ │ -001d8760: 6e73 6962 6c65 5f70 726f 635f 636d 646c nsible_proc_cmdl │ │ │ -001d8770: 696e 650a 2020 2020 2920 616e 6420 6e6f ine. ) and no │ │ │ -001d8780: 7420 2820 616e 7369 626c 655f 7669 7274 t ( ansible_virt │ │ │ -001d8790: 7561 6c69 7a61 7469 6f6e 5f74 7970 6520 ualization_type │ │ │ -001d87a0: 696e 205b 2264 6f63 6b65 7222 2c20 226c in ["docker", "l │ │ │ -001d87b0: 7863 222c 2022 6f70 656e 767a 222c 2022 xc", "openvz", " │ │ │ -001d87c0: 706f 646d 616e 222c 0a20 2020 2022 636f podman",. "co │ │ │ -001d87d0: 6e74 6169 6e65 7222 5d20 2920 290a 2020 ntainer"] ) ). │ │ │ -001d87e0: 2d20 2822 2d2d 6673 7461 6222 207c 206c - ("--fstab" | l │ │ │ -001d87f0: 656e 6774 6820 3d3d 2030 290a 2020 2d20 ength == 0). - │ │ │ -001d8800: 6465 7669 6365 5f6e 616d 652e 7374 646f device_name.stdo │ │ │ -001d8810: 7574 2069 7320 6465 6669 6e65 6420 616e ut is defined an │ │ │ -001d8820: 6420 6465 7669 6365 5f6e 616d 652e 7374 d device_name.st │ │ │ -001d8830: 646f 7574 5f6c 696e 6573 2069 7320 6465 dout_lines is de │ │ │ -001d8840: 6669 6e65 640a 2020 2d20 2864 6576 6963 fined. - (devic │ │ │ -001d8850: 655f 6e61 6d65 2e73 7464 6f75 7420 7c20 e_name.stdout | │ │ │ -001d8860: 6c65 6e67 7468 203d 3d20 3029 0a20 2074 length == 0). t │ │ │ -001d8870: 6167 733a 0a20 202d 204e 4953 542d 3830 ags:. - NIST-80 │ │ │ -001d8880: 302d 3533 2d41 432d 360a 2020 2d20 4e49 0-53-AC-6. - NI │ │ │ -001d8890: 5354 2d38 3030 2d35 332d 4143 2d36 2831 ST-800-53-AC-6(1 │ │ │ -001d88a0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35 ). - NIST-800-5 │ │ │ -001d88b0: 332d 434d 2d36 2861 290a 2020 2d20 4e49 3-CM-6(a). - NI │ │ │ -001d88c0: 5354 2d38 3030 2d35 332d 434d 2d37 2861 ST-800-53-CM-7(a │ │ │ -001d88d0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35 ). - NIST-800-5 │ │ │ -001d88e0: 332d 434d 2d37 2862 290a 2020 2d20 4e49 3-CM-7(b). - NI │ │ │ -001d88f0: 5354 2d38 3030 2d35 332d 4d50 2d37 0a20 ST-800-53-MP-7. │ │ │ -001d8900: 202d 2063 6f6e 6669 6775 7265 5f73 7472 - configure_str │ │ │ -001d8910: 6174 6567 790a 2020 2d20 6869 6768 5f64 ategy. - high_d │ │ │ -001d8920: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f isruption. - lo │ │ │ -001d8930: 775f 636f 6d70 6c65 7869 7479 0a20 202d w_complexity. - │ │ │ -001d8940: 206d 6564 6975 6d5f 7365 7665 7269 7479 medium_severity │ │ │ -001d8950: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f . - mount_optio │ │ │ -001d8960: 6e5f 626f 6f74 5f6e 6f73 7569 640a 2020 n_boot_nosuid. │ │ │ -001d8970: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564 - no_reboot_need │ │ │ -001d8980: 6564 0a0a 2d20 6e61 6d65 3a20 2741 6464 ed..- name: 'Add │ │ │ -001d8990: 206e 6f73 7569 6420 4f70 7469 6f6e 2074 nosuid Option t │ │ │ -001d89a0: 6f20 2f62 6f6f 743a 204d 616b 6520 7375 o /boot: Make su │ │ │ -001d89b0: 7265 206e 6f73 7569 6420 6f70 7469 6f6e re nosuid option │ │ │ -001d89c0: 2069 7320 7061 7274 206f 6620 7468 6520 is part of the │ │ │ -001d89d0: 746f 202f 626f 6f74 0a20 2020 206f 7074 to /boot. opt │ │ │ -001d89e0: 696f 6e73 270a 2020 7365 745f 6661 6374 ions'. set_fact │ │ │ -001d89f0: 3a0a 2020 2020 6d6f 756e 745f 696e 666f :. mount_info │ │ │ -001d8a00: 3a20 277b 7b20 6d6f 756e 745f 696e 666f : '{{ mount_info │ │ │ -001d8a10: 207c 2063 6f6d 6269 6e65 2820 7b27 276f | combine( {''o │ │ │ -001d8a20: 7074 696f 6e73 2727 3a27 2727 277e 286d ptions'':''''~(m │ │ │ -001d8a30: 6f75 6e74 5f69 6e66 6f2e 6f70 7469 6f6e ount_info.option │ │ │ -001d8a40: 7320 7c0a 2020 2020 2020 6465 6661 756c s |. defaul │ │ │ -001d8a50: 7428 2727 2727 2929 7e28 2727 2c27 2720 t(''''))~('','' │ │ │ -001d8a60: 6966 2028 6d6f 756e 745f 696e 666f 2e6f if (mount_info.o │ │ │ -001d8a70: 7074 696f 6e73 207c 2064 6566 6175 6c74 ptions | default │ │ │ -001d8a80: 2827 2727 2729 2920 656c 7365 2027 2727 ('''')) else ''' │ │ │ -001d8a90: 2729 7e27 276e 6f73 7569 6427 270a 2020 ')~''nosuid''. │ │ │ -001d8aa0: 2020 2020 7d29 207d 7d27 0a20 2077 6865 }) }}'. whe │ │ │ -001d8ab0: 6e3a 0a20 202d 2028 206e 6f74 2028 2022 n:. - ( not ( " │ │ │ -001d8ac0: 6b65 726e 656c 2220 696e 2061 6e73 6962 kernel" in ansib │ │ │ -001d8ad0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765 le_facts.package │ │ │ -001d8ae0: 7320 616e 6420 2262 6f6f 7463 2220 696e s and "bootc" in │ │ │ -001d8af0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70 ansible_facts.p │ │ │ -001d8b00: 6163 6b61 6765 730a 2020 2020 616e 6420 ackages. and │ │ │ -001d8b10: 6e6f 7420 226f 7065 6e73 6869 6674 2d6b not "openshift-k │ │ │ -001d8b20: 7562 656c 6574 2220 696e 2061 6e73 6962 ubelet" in ansib │ │ │ -001d8b30: 6c65 5f66 6163 7473 2e70 6163 6b61 6765 le_facts.package │ │ │ -001d8b40: 7320 616e 6420 226f 7374 7265 6522 2069 s and "ostree" i │ │ │ -001d8b50: 6e20 616e 7369 626c 655f 7072 6f63 5f63 n ansible_proc_c │ │ │ -001d8b60: 6d64 6c69 6e65 0a20 2020 2029 2061 6e64 mdline. ) and │ │ │ -001d8b70: 206e 6f74 2028 2061 6e73 6962 6c65 5f76 not ( ansible_v │ │ │ -001d8b80: 6972 7475 616c 697a 6174 696f 6e5f 7479 irtualization_ty │ │ │ -001d8b90: 7065 2069 6e20 5b22 646f 636b 6572 222c pe in ["docker", │ │ │ -001d8ba0: 2022 6c78 6322 2c20 226f 7065 6e76 7a22 "lxc", "openvz" │ │ │ -001d8bb0: 2c20 2270 6f64 6d61 6e22 2c0a 2020 2020 , "podman",. │ │ │ -001d8bc0: 2263 6f6e 7461 696e 6572 225d 2029 2029 "container"] ) ) │ │ │ -001d8bd0: 0a20 202d 206d 6f75 6e74 5f69 6e66 6f20 . - mount_info │ │ │ -001d8be0: 6973 2064 6566 696e 6564 2061 6e64 2022 is defined and " │ │ │ -001d8bf0: 6e6f 7375 6964 2220 6e6f 7420 696e 2028 nosuid" not in ( │ │ │ -001d8c00: 6d6f 756e 745f 696e 666f 2e6f 7074 696f mount_info.optio │ │ │ -001d8c10: 6e73 207c 2064 6566 6175 6c74 2827 2729 ns | default('') │ │ │ -001d8c20: 290a 2020 7461 6773 3a0a 2020 2d20 4e49 ). tags:. - NI │ │ │ -001d8c30: 5354 2d38 3030 2d35 332d 4143 2d36 0a20 ST-800-53-AC-6. │ │ │ -001d8c40: 202d 204e 4953 542d 3830 302d 3533 2d41 - NIST-800-53-A │ │ │ -001d8c50: 432d 3628 3129 0a20 202d 204e 4953 542d C-6(1). - NIST- │ │ │ -001d8c60: 3830 302d 3533 2d43 4d2d 3628 6129 0a20 800-53-CM-6(a). │ │ │ -001d8c70: 202d 204e 4953 542d 3830 302d 3533 2d43 - NIST-800-53-C │ │ │ -001d8c80: 4d2d 3728 6129 0a20 202d 204e 4953 542d M-7(a). - NIST- │ │ │ -001d8c90: 3830 302d 3533 2d43 4d2d 3728 6229 0a20 800-53-CM-7(b). │ │ │ -001d8ca0: 202d 204e 4953 542d 3830 302d 3533 2d4d - NIST-800-53-M │ │ │ -001d8cb0: 502d 370a 2020 2d20 636f 6e66 6967 7572 P-7. - configur │ │ │ -001d8cc0: 655f 7374 7261 7465 6779 0a20 202d 2068 e_strategy. - h │ │ │ -001d8cd0: 6967 685f 6469 7372 7570 7469 6f6e 0a20 igh_disruption. │ │ │ -001d8ce0: 202d 206c 6f77 5f63 6f6d 706c 6578 6974 - low_complexit │ │ │ -001d8cf0: 790a 2020 2d20 6d65 6469 756d 5f73 6576 y. - medium_sev │ │ │ -001d8d00: 6572 6974 790a 2020 2d20 6d6f 756e 745f erity. - mount_ │ │ │ -001d8d10: 6f70 7469 6f6e 5f62 6f6f 745f 6e6f 7375 option_boot_nosu │ │ │ -001d8d20: 6964 0a20 202d 206e 6f5f 7265 626f 6f74 id. - no_reboot │ │ │ -001d8d30: 5f6e 6565 6465 640a 0a2d 206e 616d 653a _needed..- name: │ │ │ -001d8d40: 2027 4164 6420 6e6f 7375 6964 204f 7074 'Add nosuid Opt │ │ │ -001d8d50: 696f 6e20 746f 202f 626f 6f74 3a20 456e ion to /boot: En │ │ │ -001d8d60: 7375 7265 202f 626f 6f74 2069 7320 6d6f sure /boot is mo │ │ │ -001d8d70: 756e 7465 6420 7769 7468 206e 6f73 7569 unted with nosui │ │ │ -001d8d80: 6420 6f70 7469 6f6e 270a 2020 616e 7369 d option'. ansi │ │ │ -001d8d90: 626c 652e 706f 7369 782e 6d6f 756e 743a ble.posix.mount: │ │ │ -001d8da0: 0a20 2020 2070 6174 683a 202f 626f 6f74 . path: /boot │ │ │ -001d8db0: 0a20 2020 2073 7263 3a20 277b 7b20 6d6f . src: '{{ mo │ │ │ -001d8dc0: 756e 745f 696e 666f 2e73 6f75 7263 6520 unt_info.source │ │ │ -001d8dd0: 7c20 6465 6661 756c 7428 2727 2727 2920 | default('''') │ │ │ -001d8de0: 7d7d 270a 2020 2020 6f70 7473 3a20 277b }}'. opts: '{ │ │ │ -001d8df0: 7b20 6d6f 756e 745f 696e 666f 2e6f 7074 { mount_info.opt │ │ │ -001d8e00: 696f 6e73 207c 2064 6566 6175 6c74 2827 ions | default(' │ │ │ -001d8e10: 2727 2729 207d 7d27 0a20 2020 2073 7461 ''') }}'. sta │ │ │ -001d8e20: 7465 3a20 6d6f 756e 7465 640a 2020 2020 te: mounted. │ │ │ -001d8e30: 6673 7479 7065 3a20 277b 7b20 6d6f 756e fstype: '{{ moun │ │ │ -001d8e40: 745f 696e 666f 2e66 7374 7970 6520 7c20 t_info.fstype | │ │ │ -001d8e50: 6465 6661 756c 7428 2727 2727 2920 7d7d default('''') }} │ │ │ -001d8e60: 270a 2020 7265 6769 7374 6572 3a20 6d6f '. register: mo │ │ │ -001d8e70: 756e 745f 7265 7375 6c74 0a20 2066 6169 unt_result. fai │ │ │ -001d8e80: 6c65 645f 7768 656e 3a0a 2020 2d20 6d6f led_when:. - mo │ │ │ -001d8e90: 756e 745f 7265 7375 6c74 2069 7320 6661 unt_result is fa │ │ │ -001d8ea0: 696c 6564 0a20 202d 2027 2727 7461 7267 iled. - '''targ │ │ │ -001d8eb0: 6574 2069 7320 6275 7379 2727 206e 6f74 et is busy'' not │ │ │ -001d8ec0: 2069 6e20 286d 6f75 6e74 5f72 6573 756c in (mount_resul │ │ │ -001d8ed0: 742e 6d73 6720 7c20 6465 6661 756c 7428 t.msg | default( │ │ │ -001d8ee0: 2727 2727 2929 270a 2020 2d20 2727 2761 ''''))'. - '''a │ │ │ -001d8ef0: 6c72 6561 6479 206d 6f75 6e74 6564 2727 lready mounted'' │ │ │ -001d8f00: 206e 6f74 2069 6e20 286d 6f75 6e74 5f72 not in (mount_r │ │ │ -001d8f10: 6573 756c 742e 6d73 6720 7c20 6465 6661 esult.msg | defa │ │ │ -001d8f20: 756c 7428 2727 2727 2929 270a 2020 7768 ult(''''))'. wh │ │ │ -001d8f30: 656e 3a0a 2020 2d20 2820 6e6f 7420 2820 en:. - ( not ( │ │ │ -001d8f40: 226b 6572 6e65 6c22 2069 6e20 616e 7369 "kernel" in ansi │ │ │ -001d8f50: 626c 655f 6661 6374 732e 7061 636b 6167 ble_facts.packag │ │ │ -001d8f60: 6573 2061 6e64 2022 626f 6f74 6322 2069 es and "bootc" i │ │ │ -001d8f70: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ -001d8f80: 7061 636b 6167 6573 0a20 2020 2061 6e64 packages. and │ │ │ -001d8f90: 206e 6f74 2022 6f70 656e 7368 6966 742d not "openshift- │ │ │ -001d8fa0: 6b75 6265 6c65 7422 2069 6e20 616e 7369 kubelet" in ansi │ │ │ -001d8fb0: 626c 655f 6661 6374 732e 7061 636b 6167 ble_facts.packag │ │ │ -001d8fc0: 6573 2061 6e64 2022 6f73 7472 6565 2220 es and "ostree" │ │ │ -001d8fd0: 696e 2061 6e73 6962 6c65 5f70 726f 635f in ansible_proc_ │ │ │ -001d8fe0: 636d 646c 696e 650a 2020 2020 2920 616e cmdline. ) an │ │ │ -001d8ff0: 6420 6e6f 7420 2820 616e 7369 626c 655f d not ( ansible_ │ │ │ -001d9000: 7669 7274 7561 6c69 7a61 7469 6f6e 5f74 virtualization_t │ │ │ -001d9010: 7970 6520 696e 205b 2264 6f63 6b65 7222 ype in ["docker" │ │ │ -001d9020: 2c20 226c 7863 222c 2022 6f70 656e 767a , "lxc", "openvz │ │ │ -001d9030: 222c 2022 706f 646d 616e 222c 0a20 2020 ", "podman",. │ │ │ -001d9040: 2022 636f 6e74 6169 6e65 7222 5d20 2920 "container"] ) │ │ │ -001d9050: 290a 2020 2d20 6d6f 756e 745f 696e 666f ). - mount_info │ │ │ -001d9060: 2069 7320 6465 6669 6e65 640a 2020 2d20 is defined. - │ │ │ -001d9070: 2864 6576 6963 655f 6e61 6d65 2e73 7464 (device_name.std │ │ │ -001d9080: 6f75 7420 6973 2064 6566 696e 6564 2061 out is defined a │ │ │ -001d9090: 6e64 2028 6465 7669 6365 5f6e 616d 652e nd (device_name. │ │ │ -001d90a0: 7374 646f 7574 207c 206c 656e 6774 6820 stdout | length │ │ │ -001d90b0: 2667 743b 2030 2929 206f 7220 2822 2d2d > 0)) or ("-- │ │ │ -001d90c0: 6673 7461 6222 0a20 2020 207c 206c 656e fstab". | len │ │ │ -001d90d0: 6774 6820 3d3d 2030 290a 2020 7461 6773 gth == 0). tags │ │ │ -001d90e0: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35 :. - NIST-800-5 │ │ │ -001d90f0: 332d 4143 2d36 0a20 202d 204e 4953 542d 3-AC-6. - NIST- │ │ │ -001d9100: 3830 302d 3533 2d41 432d 3628 3129 0a20 800-53-AC-6(1). │ │ │ -001d9110: 202d 204e 4953 542d 3830 302d 3533 2d43 - NIST-800-53-C │ │ │ -001d9120: 4d2d 3628 6129 0a20 202d 204e 4953 542d M-6(a). - NIST- │ │ │ -001d9130: 3830 302d 3533 2d43 4d2d 3728 6129 0a20 800-53-CM-7(a). │ │ │ -001d9140: 202d 204e 4953 542d 3830 302d 3533 2d43 - NIST-800-53-C │ │ │ -001d9150: 4d2d 3728 6229 0a20 202d 204e 4953 542d M-7(b). - NIST- │ │ │ -001d9160: 3830 302d 3533 2d4d 502d 370a 2020 2d20 800-53-MP-7. - │ │ │ -001d9170: 636f 6e66 6967 7572 655f 7374 7261 7465 configure_strate │ │ │ -001d9180: 6779 0a20 202d 2068 6967 685f 6469 7372 gy. - high_disr │ │ │ -001d9190: 7570 7469 6f6e 0a20 202d 206c 6f77 5f63 uption. - low_c │ │ │ -001d91a0: 6f6d 706c 6578 6974 790a 2020 2d20 6d65 omplexity. - me │ │ │ -001d91b0: 6469 756d 5f73 6576 6572 6974 790a 2020 dium_severity. │ │ │ -001d91c0: 2d20 6d6f 756e 745f 6f70 7469 6f6e 5f62 - mount_option_b │ │ │ -001d91d0: 6f6f 745f 6e6f 7375 6964 0a20 202d 206e oot_nosuid. - n │ │ │ -001d91e0: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a o_reboot_needed. │ │ │ -001d91f0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64 │ │ │ -001d92a0: 5265 6d65 6469 6174 696f 6e20 5368 656c Remediation Shel │ │ │ -001d92b0: 6c20 7363 7269 7074 20e2 87b2 3c2f 613e l script ... │ │ │ -001d92c0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22

│ │ │ -001d9370: 2320 5265 6d65 6469 6174 696f 6e20 6973  # Remediation is
│ │ │ -001d9380: 2061 7070 6c69 6361 626c 6520 6f6e 6c79   applicable only
│ │ │ -001d9390: 2069 6e20 6365 7274 6169 6e20 706c 6174   in certain plat
│ │ │ -001d93a0: 666f 726d 730a 6966 2028 2021 2028 207b  forms.if ( ! ( {
│ │ │ -001d93b0: 2072 706d 202d 2d71 7569 6574 202d 7120   rpm --quiet -q 
│ │ │ -001d93c0: 6b65 726e 656c 203b 7d20 2661 6d70 3b26  kernel ;} &&
│ │ │ -001d93d0: 616d 703b 207b 2072 706d 202d 2d71 7569  amp; { rpm --qui
│ │ │ -001d93e0: 6574 202d 7120 626f 6f74 6320 3b7d 2026  et -q bootc ;} &
│ │ │ -001d93f0: 616d 703b 2661 6d70 3b20 7b20 2120 7270  amp;& { ! rp
│ │ │ -001d9400: 6d20 2d2d 7175 6965 7420 2d71 206f 7065  m --quiet -q ope
│ │ │ -001d9410: 6e73 6869 6674 2d6b 7562 656c 6574 203b  nshift-kubelet ;
│ │ │ -001d9420: 7d20 2661 6d70 3b26 616d 703b 2028 5b20  } && ([ 
│ │ │ -001d9430: 2d66 202f 7275 6e2f 6f73 7472 6565 2d62  -f /run/ostree-b
│ │ │ -001d9440: 6f6f 7465 6420 5d20 7c7c 205b 202d 4c20  ooted ] || [ -L 
│ │ │ -001d9450: 2f6f 7374 7265 6520 5d29 2029 2026 616d  /ostree ]) ) &am
│ │ │ -001d9460: 703b 2661 6d70 3b20 2120 2820 5b20 2d66  p;& ! ( [ -f
│ │ │ -001d9470: 202f 2e64 6f63 6b65 7265 6e76 205d 207c   /.dockerenv ] |
│ │ │ -001d9480: 7c20 5b20 2d66 202f 7275 6e2f 2e63 6f6e  | [ -f /run/.con
│ │ │ -001d9490: 7461 696e 6572 656e 7620 5d20 2920 293b  tainerenv ] ) );
│ │ │ -001d94a0: 2074 6865 6e0a 0a66 756e 6374 696f 6e20   then..function 
│ │ │ -001d94b0: 7065 7266 6f72 6d5f 7265 6d65 6469 6174  perform_remediat
│ │ │ -001d94c0: 696f 6e20 7b0a 0a20 2020 200a 2020 2020  ion {..    .    
│ │ │ -001d94d0: 2020 2020 2320 7468 6520 6d6f 756e 7420      # the mount 
│ │ │ -001d94e0: 706f 696e 7420 2f62 6f6f 7420 6861 7320  point /boot has 
│ │ │ -001d94f0: 746f 2062 6520 6465 6669 6e65 6420 696e  to be defined in
│ │ │ -001d9500: 202f 6574 632f 6673 7461 620a 2020 2020   /etc/fstab.    
│ │ │ -001d9510: 2020 2020 2320 6265 666f 7265 2074 6869      # before thi
│ │ │ -001d9520: 7320 7265 6d65 6469 6174 696f 6e20 6361  s remediation ca
│ │ │ -001d9530: 6e20 6265 2065 7865 6375 7465 642e 2049  n be executed. I
│ │ │ -001d9540: 6e20 6361 7365 2069 7420 6973 206e 6f74  n case it is not
│ │ │ -001d9550: 2064 6566 696e 6564 2c20 7468 650a 2020   defined, the.  
│ │ │ -001d9560: 2020 2020 2020 2320 7265 6d65 6469 6174        # remediat
│ │ │ -001d9570: 696f 6e20 6162 6f72 7473 2061 6e64 206e  ion aborts and n
│ │ │ -001d9580: 6f20 6368 616e 6765 7320 7265 6761 7264  o changes regard
│ │ │ -001d9590: 696e 6720 7468 6520 6d6f 756e 7420 706f  ing the mount po
│ │ │ -001d95a0: 696e 7420 6172 6520 646f 6e65 2e0a 2020  int are done..  
│ │ │ -001d95b0: 2020 2020 2020 6d6f 756e 745f 706f 696e        mount_poin
│ │ │ -001d95c0: 745f 6d61 7463 685f 7265 6765 7870 3d22  t_match_regexp="
│ │ │ -001d95d0: 2428 7072 696e 7466 2022 5e5b 5b3a 7370  $(printf "^[[:sp
│ │ │ -001d95e0: 6163 653a 5d5d 2a5b 5e23 5d2e 2a5b 5b3a  ace:]]*[^#].*[[:
│ │ │ -001d95f0: 7370 6163 653a 5d5d 2573 5b5b 3a73 7061  space:]]%s[[:spa
│ │ │ -001d9600: 6365 3a5d 5d22 2022 2f62 6f6f 7422 2922  ce:]]" "/boot")"
│ │ │ -001d9610: 0a0a 2020 2020 6772 6570 2022 246d 6f75  ..    grep "$mou
│ │ │ -001d9620: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ -001d9630: 6567 6578 7022 202d 7120 2f65 7463 2f66  egexp" -q /etc/f
│ │ │ -001d9640: 7374 6162 205c 0a20 2020 2020 2020 207c  stab \.        |
│ │ │ -001d9650: 7c20 7b20 6563 686f 2022 5468 6520 6d6f  | { echo "The mo
│ │ │ -001d9660: 756e 7420 706f 696e 7420 272f 626f 6f74  unt point '/boot
│ │ │ -001d9670: 2720 6973 206e 6f74 2065 7665 6e20 696e  ' is not even in
│ │ │ -001d9680: 202f 6574 632f 6673 7461 622c 2073 6f20   /etc/fstab, so 
│ │ │ -001d9690: 7765 2063 616e 2774 2073 6574 2075 7020  we can't set up 
│ │ │ -001d96a0: 6d6f 756e 7420 6f70 7469 6f6e 7322 2026  mount options" &
│ │ │ -001d96b0: 6774 3b26 616d 703b 323b 0a20 2020 2020  gt;&2;.     
│ │ │ -001d96c0: 2020 2020 2020 2020 2020 2065 6368 6f20             echo 
│ │ │ -001d96d0: 224e 6f74 2072 656d 6564 6961 7469 6e67  "Not remediating
│ │ │ -001d96e0: 2c20 6265 6361 7573 6520 7468 6572 6520  , because there 
│ │ │ -001d96f0: 6973 206e 6f20 7265 636f 7264 206f 6620  is no record of 
│ │ │ -001d9700: 2f62 6f6f 7420 696e 202f 6574 632f 6673  /boot in /etc/fs
│ │ │ -001d9710: 7461 6222 2026 6774 3b26 616d 703b 323b  tab" >&2;
│ │ │ -001d9720: 2072 6574 7572 6e20 313b 207d 0a20 2020   return 1; }.   
│ │ │ -001d9730: 200a 0a0a 2020 2020 6d6f 756e 745f 706f   ...    mount_po
│ │ │ -001d9740: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ -001d9750: 3d22 2428 7072 696e 7466 2022 5e5b 5b3a  ="$(printf "^[[:
│ │ │ -001d9760: 7370 6163 653a 5d5d 2a5b 5e23 5d2e 2a5b  space:]]*[^#].*[
│ │ │ -001d9770: 5b3a 7370 6163 653a 5d5d 2573 5b5b 3a73  [:space:]]%s[[:s
│ │ │ -001d9780: 7061 6365 3a5d 5d22 202f 626f 6f74 2922  pace:]]" /boot)"
│ │ │ -001d9790: 0a0a 2020 2020 2320 4966 2074 6865 206d  ..    # If the m
│ │ │ -001d97a0: 6f75 6e74 2070 6f69 6e74 2069 7320 6e6f  ount point is no
│ │ │ -001d97b0: 7420 696e 202f 6574 632f 6673 7461 622c  t in /etc/fstab,
│ │ │ -001d97c0: 2067 6574 2070 7265 7669 6f75 7320 6d6f   get previous mo
│ │ │ -001d97d0: 756e 7420 6f70 7469 6f6e 7320 6672 6f6d  unt options from
│ │ │ -001d97e0: 202f 6574 632f 6d74 6162 0a20 2020 2069   /etc/mtab.    i
│ │ │ -001d97f0: 6620 2120 6772 6570 202d 7120 2224 6d6f  f ! grep -q "$mo
│ │ │ -001d9800: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ -001d9810: 7265 6765 7870 2220 2f65 7463 2f66 7374  regexp" /etc/fst
│ │ │ -001d9820: 6162 3b20 7468 656e 0a20 2020 2020 2020  ab; then.       
│ │ │ -001d9830: 2023 2072 756e 7469 6d65 206f 7074 7320   # runtime opts 
│ │ │ -001d9840: 7769 7468 6f75 7420 736f 6d65 2061 7574  without some aut
│ │ │ -001d9850: 6f6d 6174 6963 206b 6572 6e65 6c2f 7573  omatic kernel/us
│ │ │ -001d9860: 6572 7370 6163 652d 6164 6465 6420 6465  erspace-added de
│ │ │ -001d9870: 6661 756c 7473 0a20 2020 2020 2020 2070  faults.        p
│ │ │ -001d9880: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ -001d9890: 7473 3d24 2867 7265 7020 2224 6d6f 756e  ts=$(grep "$moun
│ │ │ -001d98a0: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ -001d98b0: 6765 7870 2220 2f65 7463 2f6d 7461 6220  gexp" /etc/mtab 
│ │ │ -001d98c0: 7c20 6865 6164 202d 3120 7c20 2061 776b  | head -1 |  awk
│ │ │ -001d98d0: 2027 7b70 7269 6e74 2024 347d 2720 5c0a   '{print $4}' \.
│ │ │ -001d98e0: 2020 2020 2020 2020 2020 2020 2020 2020                  
│ │ │ -001d98f0: 2020 2020 7c20 7365 6420 2d45 2022 732f      | sed -E "s/
│ │ │ -001d9900: 2872 777c 6465 6661 756c 7473 7c73 6563  (rw|defaults|sec
│ │ │ -001d9910: 6c61 6265 6c7c 6e6f 7375 6964 2928 2c7c  label|nosuid)(,|
│ │ │ -001d9920: 2429 2f2f 673b 732f 2c24 2f2f 2229 0a20  $)//g;s/,$//"). 
│ │ │ -001d9930: 2020 2020 2020 205b 2022 2470 7265 7669         [ "$previ
│ │ │ -001d9940: 6f75 735f 6d6f 756e 745f 6f70 7473 2220  ous_mount_opts" 
│ │ │ -001d9950: 5d20 2661 6d70 3b26 616d 703b 2070 7265  ] && pre
│ │ │ -001d9960: 7669 6f75 735f 6d6f 756e 745f 6f70 7473  vious_mount_opts
│ │ │ -001d9970: 2b3d 222c 220a 2020 2020 2020 2020 2320  +=",".        # 
│ │ │ -001d9980: 496e 2069 736f 3936 3630 2066 696c 6573  In iso9660 files
│ │ │ -001d9990: 7973 7465 6d73 206d 7461 6220 636f 756c  ystems mtab coul
│ │ │ -001d99a0: 6420 6465 7363 7269 6265 2061 2022 626c  d describe a "bl
│ │ │ -001d99b0: 6f63 6b73 697a 6522 2076 616c 7565 2c20  ocksize" value, 
│ │ │ -001d99c0: 7468 6973 2073 686f 756c 6420 6265 2072  this should be r
│ │ │ -001d99d0: 6566 6c65 6374 6564 2069 6e0a 2020 2020  eflected in.    
│ │ │ -001d99e0: 2020 2020 2320 6673 7461 6220 6173 2022      # fstab as "
│ │ │ -001d99f0: 626c 6f63 6b22 2e20 2054 6865 206e 6578  block".  The nex
│ │ │ -001d9a00: 7420 7661 7269 6162 6c65 2069 7320 746f  t variable is to
│ │ │ -001d9a10: 2073 6174 6973 6679 2073 6865 6c6c 6368   satisfy shellch
│ │ │ -001d9a20: 6563 6b20 5343 3230 3530 2e0a 2020 2020  eck SC2050..    
│ │ │ -001d9a30: 2020 2020 6673 5f74 7970 653d 2222 0a20      fs_type="". 
│ │ │ -001d9a40: 2020 2020 2020 2069 6620 5b20 2022 2466         if [  "$f
│ │ │ -001d9a50: 735f 7479 7065 2220 3d3d 2022 6973 6f39  s_type" == "iso9
│ │ │ -001d9a60: 3636 3022 205d 203b 2074 6865 6e0a 2020  660" ] ; then.  
│ │ │ -001d9a70: 2020 2020 2020 2020 2020 7072 6576 696f            previo
│ │ │ -001d9a80: 7573 5f6d 6f75 6e74 5f6f 7074 733d 2428  us_mount_opts=$(
│ │ │ -001d9a90: 7365 6420 2773 2f62 6c6f 636b 7369 7a65  sed 's/blocksize
│ │ │ -001d9aa0: 3d2f 626c 6f63 6b3d 2f27 2026 6c74 3b26  =/block=/' <&
│ │ │ -001d9ab0: 6c74 3b26 6c74 3b20 2224 7072 6576 696f  lt;< "$previo
│ │ │ -001d9ac0: 7573 5f6d 6f75 6e74 5f6f 7074 7322 290a  us_mount_opts").
│ │ │ -001d9ad0: 2020 2020 2020 2020 6669 0a20 2020 2020          fi.     
│ │ │ -001d9ae0: 2020 2065 6368 6f20 2220 2f62 6f6f 7420     echo " /boot 
│ │ │ -001d9af0: 2064 6566 6175 6c74 732c 247b 7072 6576   defaults,${prev
│ │ │ -001d9b00: 696f 7573 5f6d 6f75 6e74 5f6f 7074 737d  ious_mount_opts}
│ │ │ -001d9b10: 6e6f 7375 6964 2030 2030 2220 2667 743b  nosuid 0 0" >
│ │ │ -001d9b20: 2667 743b 202f 6574 632f 6673 7461 620a  > /etc/fstab.
│ │ │ -001d9b30: 2020 2020 2320 4966 2074 6865 206d 6f75      # If the mou
│ │ │ -001d9b40: 6e74 5f6f 7074 206f 7074 696f 6e20 6973  nt_opt option is
│ │ │ -001d9b50: 206e 6f74 2061 6c72 6561 6479 2069 6e20   not already in 
│ │ │ -001d9b60: 7468 6520 6d6f 756e 7420 706f 696e 7427  the mount point'
│ │ │ -001d9b70: 7320 2f65 7463 2f66 7374 6162 2065 6e74  s /etc/fstab ent
│ │ │ -001d9b80: 7279 2c20 6164 6420 6974 0a20 2020 2065  ry, add it.    e
│ │ │ -001d9b90: 6c69 6620 2120 6772 6570 2022 246d 6f75  lif ! grep "$mou
│ │ │ -001d9ba0: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ -001d9bb0: 6567 6578 7022 202f 6574 632f 6673 7461  egexp" /etc/fsta
│ │ │ -001d9bc0: 6220 7c20 6772 6570 202d 7120 226e 6f73  b | grep -q "nos
│ │ │ -001d9bd0: 7569 6422 3b20 7468 656e 0a20 2020 2020  uid"; then.     
│ │ │ -001d9be0: 2020 2070 7265 7669 6f75 735f 6d6f 756e     previous_moun
│ │ │ -001d9bf0: 745f 6f70 7473 3d24 2867 7265 7020 2224  t_opts=$(grep "$
│ │ │ -001d9c00: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ -001d9c10: 685f 7265 6765 7870 2220 2f65 7463 2f66  h_regexp" /etc/f
│ │ │ -001d9c20: 7374 6162 207c 2061 776b 2027 7b70 7269  stab | awk '{pri
│ │ │ -001d9c30: 6e74 2024 347d 2729 0a20 2020 2020 2020  nt $4}').       
│ │ │ -001d9c40: 2073 6564 202d 6920 2273 7c5c 2824 7b6d   sed -i "s|\(${m
│ │ │ -001d9c50: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ -001d9c60: 5f72 6567 6578 707d 2e2a 247b 7072 6576  _regexp}.*${prev
│ │ │ -001d9c70: 696f 7573 5f6d 6f75 6e74 5f6f 7074 737d  ious_mount_opts}
│ │ │ -001d9c80: 5c29 7c5c 312c 6e6f 7375 6964 7c22 202f  \)|\1,nosuid|" /
│ │ │ -001d9c90: 6574 632f 6673 7461 620a 2020 2020 6669  etc/fstab.    fi
│ │ │ -001d9ca0: 0a0a 0a20 2020 2069 6620 6d6b 6469 7220  ...    if mkdir 
│ │ │ -001d9cb0: 2d70 2022 2f62 6f6f 7422 3b20 7468 656e  -p "/boot"; then
│ │ │ -001d9cc0: 0a20 2020 2020 2020 2069 6620 6d6f 756e  .        if moun
│ │ │ -001d9cd0: 7470 6f69 6e74 202d 7120 222f 626f 6f74  tpoint -q "/boot
│ │ │ -001d9ce0: 223b 2074 6865 6e0a 2020 2020 2020 2020  "; then.        
│ │ │ -001d9cf0: 2020 2020 6d6f 756e 7420 2d6f 2072 656d      mount -o rem
│ │ │ -001d9d00: 6f75 6e74 202d 2d74 6172 6765 7420 222f  ount --target "/
│ │ │ -001d9d10: 626f 6f74 220a 2020 2020 2020 2020 6669  boot".        fi
│ │ │ -001d9d20: 0a20 2020 2066 690a 7d0a 0a70 6572 666f  .    fi.}..perfo
│ │ │ -001d9d30: 726d 5f72 656d 6564 6961 7469 6f6e 0a0a  rm_remediation..
│ │ │ -001d9d40: 656c 7365 0a20 2020 2026 6774 3b26 616d  else.    >&am
│ │ │ -001d9d50: 703b 3220 6563 686f 2027 5265 6d65 6469  p;2 echo 'Remedi
│ │ │ -001d9d60: 6174 696f 6e20 6973 206e 6f74 2061 7070  ation is not app
│ │ │ -001d9d70: 6c69 6361 626c 652c 206e 6f74 6869 6e67  licable, nothing
│ │ │ -001d9d80: 2077 6173 2064 6f6e 6527 0a66 690a 3c2f   was done'.fi.
Re │ │ │ -001d9340: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -001d9350: 6c73 653c 2f74 643e 3c2f 7472 3e3c 2f74 lse
< │ │ │ +001d7a60: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ +001d7a80: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr> │ │ │ +001d7ad0: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472
low
Disr │ │ │ +001d7a90: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +001d7aa0: 6869 6768 3c2f 7464 3e3c 2f74 723e 3c74 high
Reboot:false
Str │ │ │ +001d7ae0: 6174 6567 793a 3c2f 7468 3e3c 7464 3e63 ategy:c │ │ │ +001d7af0: 6f6e 6669 6775 7265 3c2f 7464 3e3c 2f74 onfigure
<
│ │ │ +001d7b10: 636f 6465 3e2d 206e 616d 653a 2047 6174  code>- name: Gat
│ │ │ +001d7b20: 6865 7220 7468 6520 7061 636b 6167 6520  her the package 
│ │ │ +001d7b30: 6661 6374 730a 2020 7061 636b 6167 655f  facts.  package_
│ │ │ +001d7b40: 6661 6374 733a 0a20 2020 206d 616e 6167  facts:.    manag
│ │ │ +001d7b50: 6572 3a20 6175 746f 0a20 2074 6167 733a  er: auto.  tags:
│ │ │ +001d7b60: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +001d7b70: 2d41 432d 360a 2020 2d20 4e49 5354 2d38  -AC-6.  - NIST-8
│ │ │ +001d7b80: 3030 2d35 332d 4143 2d36 2831 290a 2020  00-53-AC-6(1).  
│ │ │ +001d7b90: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +001d7ba0: 2d36 2861 290a 2020 2d20 4e49 5354 2d38  -6(a).  - NIST-8
│ │ │ +001d7bb0: 3030 2d35 332d 434d 2d37 2861 290a 2020  00-53-CM-7(a).  
│ │ │ +001d7bc0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +001d7bd0: 2d37 2862 290a 2020 2d20 4e49 5354 2d38  -7(b).  - NIST-8
│ │ │ +001d7be0: 3030 2d35 332d 4d50 2d37 0a20 202d 2063  00-53-MP-7.  - c
│ │ │ +001d7bf0: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ +001d7c00: 790a 2020 2d20 6869 6768 5f64 6973 7275  y.  - high_disru
│ │ │ +001d7c10: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f  ption.  - low_co
│ │ │ +001d7c20: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ +001d7c30: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ +001d7c40: 206d 6f75 6e74 5f6f 7074 696f 6e5f 626f   mount_option_bo
│ │ │ +001d7c50: 6f74 5f6e 6f73 7569 640a 2020 2d20 6e6f  ot_nosuid.  - no
│ │ │ +001d7c60: 5f72 6562 6f6f 745f 6e65 6564 6564 0a0a  _reboot_needed..
│ │ │ +001d7c70: 2d20 6e61 6d65 3a20 2741 6464 206e 6f73  - name: 'Add nos
│ │ │ +001d7c80: 7569 6420 4f70 7469 6f6e 2074 6f20 2f62  uid Option to /b
│ │ │ +001d7c90: 6f6f 743a 2043 6865 636b 2069 6e66 6f72  oot: Check infor
│ │ │ +001d7ca0: 6d61 7469 6f6e 2061 7373 6f63 6961 7465  mation associate
│ │ │ +001d7cb0: 6420 746f 206d 6f75 6e74 706f 696e 7427  d to mountpoint'
│ │ │ +001d7cc0: 0a20 2061 6e73 6962 6c65 2e62 7569 6c74  .  ansible.built
│ │ │ +001d7cd0: 696e 2e63 6f6d 6d61 6e64 3a20 6669 6e64  in.command: find
│ │ │ +001d7ce0: 6d6e 7420 2d2d 6673 7461 6220 272f 626f  mnt --fstab '/bo
│ │ │ +001d7cf0: 6f74 270a 2020 7265 6769 7374 6572 3a20  ot'.  register: 
│ │ │ +001d7d00: 6465 7669 6365 5f6e 616d 650a 2020 6661  device_name.  fa
│ │ │ +001d7d10: 696c 6564 5f77 6865 6e3a 2064 6576 6963  iled_when: devic
│ │ │ +001d7d20: 655f 6e61 6d65 2e72 6320 2667 743b 2031  e_name.rc > 1
│ │ │ +001d7d30: 0a20 2063 6861 6e67 6564 5f77 6865 6e3a  .  changed_when:
│ │ │ +001d7d40: 2066 616c 7365 0a20 2063 6865 636b 5f6d   false.  check_m
│ │ │ +001d7d50: 6f64 653a 2066 616c 7365 0a20 2077 6865  ode: false.  whe
│ │ │ +001d7d60: 6e3a 2028 206e 6f74 2028 2022 6b65 726e  n: ( not ( "kern
│ │ │ +001d7d70: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ +001d7d80: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +001d7d90: 6420 2262 6f6f 7463 2220 696e 2061 6e73  d "bootc" in ans
│ │ │ +001d7da0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001d7db0: 6765 730a 2020 2020 616e 6420 6e6f 7420  ges.    and not 
│ │ │ +001d7dc0: 226f 7065 6e73 6869 6674 2d6b 7562 656c  "openshift-kubel
│ │ │ +001d7dd0: 6574 2220 696e 2061 6e73 6962 6c65 5f66  et" in ansible_f
│ │ │ +001d7de0: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +001d7df0: 6420 226f 7374 7265 6522 2069 6e20 616e  d "ostree" in an
│ │ │ +001d7e00: 7369 626c 655f 7072 6f63 5f63 6d64 6c69  sible_proc_cmdli
│ │ │ +001d7e10: 6e65 0a20 2020 2029 2061 6e64 206e 6f74  ne.    ) and not
│ │ │ +001d7e20: 2028 2061 6e73 6962 6c65 5f76 6972 7475   ( ansible_virtu
│ │ │ +001d7e30: 616c 697a 6174 696f 6e5f 7479 7065 2069  alization_type i
│ │ │ +001d7e40: 6e20 5b22 646f 636b 6572 222c 2022 6c78  n ["docker", "lx
│ │ │ +001d7e50: 6322 2c20 226f 7065 6e76 7a22 2c20 2270  c", "openvz", "p
│ │ │ +001d7e60: 6f64 6d61 6e22 2c0a 2020 2020 2263 6f6e  odman",.    "con
│ │ │ +001d7e70: 7461 696e 6572 225d 2029 2029 0a20 2074  tainer"] ) ).  t
│ │ │ +001d7e80: 6167 733a 0a20 202d 204e 4953 542d 3830  ags:.  - NIST-80
│ │ │ +001d7e90: 302d 3533 2d41 432d 360a 2020 2d20 4e49  0-53-AC-6.  - NI
│ │ │ +001d7ea0: 5354 2d38 3030 2d35 332d 4143 2d36 2831  ST-800-53-AC-6(1
│ │ │ +001d7eb0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001d7ec0: 332d 434d 2d36 2861 290a 2020 2d20 4e49  3-CM-6(a).  - NI
│ │ │ +001d7ed0: 5354 2d38 3030 2d35 332d 434d 2d37 2861  ST-800-53-CM-7(a
│ │ │ +001d7ee0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001d7ef0: 332d 434d 2d37 2862 290a 2020 2d20 4e49  3-CM-7(b).  - NI
│ │ │ +001d7f00: 5354 2d38 3030 2d35 332d 4d50 2d37 0a20  ST-800-53-MP-7. 
│ │ │ +001d7f10: 202d 2063 6f6e 6669 6775 7265 5f73 7472   - configure_str
│ │ │ +001d7f20: 6174 6567 790a 2020 2d20 6869 6768 5f64  ategy.  - high_d
│ │ │ +001d7f30: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ +001d7f40: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ +001d7f50: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ +001d7f60: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f  .  - mount_optio
│ │ │ +001d7f70: 6e5f 626f 6f74 5f6e 6f73 7569 640a 2020  n_boot_nosuid.  
│ │ │ +001d7f80: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ +001d7f90: 6564 0a0a 2d20 6e61 6d65 3a20 2741 6464  ed..- name: 'Add
│ │ │ +001d7fa0: 206e 6f73 7569 6420 4f70 7469 6f6e 2074   nosuid Option t
│ │ │ +001d7fb0: 6f20 2f62 6f6f 743a 2043 7265 6174 6520  o /boot: Create 
│ │ │ +001d7fc0: 6d6f 756e 745f 696e 666f 2064 6963 7469  mount_info dicti
│ │ │ +001d7fd0: 6f6e 6172 7920 7661 7269 6162 6c65 270a  onary variable'.
│ │ │ +001d7fe0: 2020 7365 745f 6661 6374 3a0a 2020 2020    set_fact:.    
│ │ │ +001d7ff0: 6d6f 756e 745f 696e 666f 3a20 277b 7b20  mount_info: '{{ 
│ │ │ +001d8000: 6d6f 756e 745f 696e 666f 7c64 6566 6175  mount_info|defau
│ │ │ +001d8010: 6c74 287b 7d29 7c63 6f6d 6269 6e65 287b  lt({})|combine({
│ │ │ +001d8020: 6974 656d 2e30 3a20 6974 656d 2e31 7d29  item.0: item.1})
│ │ │ +001d8030: 207d 7d27 0a20 2077 6974 685f 746f 6765   }}'.  with_toge
│ │ │ +001d8040: 7468 6572 3a0a 2020 2d20 277b 7b20 6465  ther:.  - '{{ de
│ │ │ +001d8050: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ +001d8060: 5f6c 696e 6573 5b30 5d2e 7370 6c69 7428  _lines[0].split(
│ │ │ +001d8070: 2920 7c20 6d61 7028 2727 6c6f 7765 7227  ) | map(''lower'
│ │ │ +001d8080: 2729 207c 206c 6973 7420 7d7d 270a 2020  ') | list }}'.  
│ │ │ +001d8090: 2d20 277b 7b20 6465 7669 6365 5f6e 616d  - '{{ device_nam
│ │ │ +001d80a0: 652e 7374 646f 7574 5f6c 696e 6573 5b31  e.stdout_lines[1
│ │ │ +001d80b0: 5d2e 7370 6c69 7428 2920 7c20 6c69 7374  ].split() | list
│ │ │ +001d80c0: 207d 7d27 0a20 2077 6865 6e3a 0a20 202d   }}'.  when:.  -
│ │ │ +001d80d0: 2028 206e 6f74 2028 2022 6b65 726e 656c   ( not ( "kernel
│ │ │ +001d80e0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +001d80f0: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ +001d8100: 2262 6f6f 7463 2220 696e 2061 6e73 6962  "bootc" in ansib
│ │ │ +001d8110: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001d8120: 730a 2020 2020 616e 6420 6e6f 7420 226f  s.    and not "o
│ │ │ +001d8130: 7065 6e73 6869 6674 2d6b 7562 656c 6574  penshift-kubelet
│ │ │ +001d8140: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +001d8150: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ +001d8160: 226f 7374 7265 6522 2069 6e20 616e 7369  "ostree" in ansi
│ │ │ +001d8170: 626c 655f 7072 6f63 5f63 6d64 6c69 6e65  ble_proc_cmdline
│ │ │ +001d8180: 0a20 2020 2029 2061 6e64 206e 6f74 2028  .    ) and not (
│ │ │ +001d8190: 2061 6e73 6962 6c65 5f76 6972 7475 616c   ansible_virtual
│ │ │ +001d81a0: 697a 6174 696f 6e5f 7479 7065 2069 6e20  ization_type in 
│ │ │ +001d81b0: 5b22 646f 636b 6572 222c 2022 6c78 6322  ["docker", "lxc"
│ │ │ +001d81c0: 2c20 226f 7065 6e76 7a22 2c20 2270 6f64  , "openvz", "pod
│ │ │ +001d81d0: 6d61 6e22 2c0a 2020 2020 2263 6f6e 7461  man",.    "conta
│ │ │ +001d81e0: 696e 6572 225d 2029 2029 0a20 202d 2064  iner"] ) ).  - d
│ │ │ +001d81f0: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ +001d8200: 7420 6973 2064 6566 696e 6564 2061 6e64  t is defined and
│ │ │ +001d8210: 2064 6576 6963 655f 6e61 6d65 2e73 7464   device_name.std
│ │ │ +001d8220: 6f75 745f 6c69 6e65 7320 6973 2064 6566  out_lines is def
│ │ │ +001d8230: 696e 6564 0a20 202d 2028 6465 7669 6365  ined.  - (device
│ │ │ +001d8240: 5f6e 616d 652e 7374 646f 7574 207c 206c  _name.stdout | l
│ │ │ +001d8250: 656e 6774 6820 2667 743b 2030 290a 2020  ength > 0).  
│ │ │ +001d8260: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38  tags:.  - NIST-8
│ │ │ +001d8270: 3030 2d35 332d 4143 2d36 0a20 202d 204e  00-53-AC-6.  - N
│ │ │ +001d8280: 4953 542d 3830 302d 3533 2d41 432d 3628  IST-800-53-AC-6(
│ │ │ +001d8290: 3129 0a20 202d 204e 4953 542d 3830 302d  1).  - NIST-800-
│ │ │ +001d82a0: 3533 2d43 4d2d 3628 6129 0a20 202d 204e  53-CM-6(a).  - N
│ │ │ +001d82b0: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ +001d82c0: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ +001d82d0: 3533 2d43 4d2d 3728 6229 0a20 202d 204e  53-CM-7(b).  - N
│ │ │ +001d82e0: 4953 542d 3830 302d 3533 2d4d 502d 370a  IST-800-53-MP-7.
│ │ │ +001d82f0: 2020 2d20 636f 6e66 6967 7572 655f 7374    - configure_st
│ │ │ +001d8300: 7261 7465 6779 0a20 202d 2068 6967 685f  rategy.  - high_
│ │ │ +001d8310: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ +001d8320: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ +001d8330: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ +001d8340: 790a 2020 2d20 6d6f 756e 745f 6f70 7469  y.  - mount_opti
│ │ │ +001d8350: 6f6e 5f62 6f6f 745f 6e6f 7375 6964 0a20  on_boot_nosuid. 
│ │ │ +001d8360: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ +001d8370: 6465 640a 0a2d 206e 616d 653a 2027 4164  ded..- name: 'Ad
│ │ │ +001d8380: 6420 6e6f 7375 6964 204f 7074 696f 6e20  d nosuid Option 
│ │ │ +001d8390: 746f 202f 626f 6f74 3a20 4966 202f 626f  to /boot: If /bo
│ │ │ +001d83a0: 6f74 206e 6f74 206d 6f75 6e74 6564 2c20  ot not mounted, 
│ │ │ +001d83b0: 6372 6166 7420 6d6f 756e 745f 696e 666f  craft mount_info
│ │ │ +001d83c0: 206d 616e 7561 6c6c 7927 0a20 2073 6574   manually'.  set
│ │ │ +001d83d0: 5f66 6163 743a 0a20 2020 206d 6f75 6e74  _fact:.    mount
│ │ │ +001d83e0: 5f69 6e66 6f3a 2027 7b7b 206d 6f75 6e74  _info: '{{ mount
│ │ │ +001d83f0: 5f69 6e66 6f7c 6465 6661 756c 7428 7b7d  _info|default({}
│ │ │ +001d8400: 297c 636f 6d62 696e 6528 7b69 7465 6d2e  )|combine({item.
│ │ │ +001d8410: 303a 2069 7465 6d2e 317d 2920 7d7d 270a  0: item.1}) }}'.
│ │ │ +001d8420: 2020 7769 7468 5f74 6f67 6574 6865 723a    with_together:
│ │ │ +001d8430: 0a20 202d 202d 2074 6172 6765 740a 2020  .  - - target.  
│ │ │ +001d8440: 2020 2d20 736f 7572 6365 0a20 2020 202d    - source.    -
│ │ │ +001d8450: 2066 7374 7970 650a 2020 2020 2d20 6f70   fstype.    - op
│ │ │ +001d8460: 7469 6f6e 730a 2020 2d20 2d20 2f62 6f6f  tions.  - - /boo
│ │ │ +001d8470: 740a 2020 2020 2d20 2727 0a20 2020 202d  t.    - ''.    -
│ │ │ +001d8480: 2027 270a 2020 2020 2d20 6465 6661 756c   ''.    - defaul
│ │ │ +001d8490: 7473 0a20 2077 6865 6e3a 0a20 202d 2028  ts.  when:.  - (
│ │ │ +001d84a0: 206e 6f74 2028 2022 6b65 726e 656c 2220   not ( "kernel" 
│ │ │ +001d84b0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001d84c0: 2e70 6163 6b61 6765 7320 616e 6420 2262  .packages and "b
│ │ │ +001d84d0: 6f6f 7463 2220 696e 2061 6e73 6962 6c65  ootc" in ansible
│ │ │ +001d84e0: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ +001d84f0: 2020 2020 616e 6420 6e6f 7420 226f 7065      and not "ope
│ │ │ +001d8500: 6e73 6869 6674 2d6b 7562 656c 6574 2220  nshift-kubelet" 
│ │ │ +001d8510: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001d8520: 2e70 6163 6b61 6765 7320 616e 6420 226f  .packages and "o
│ │ │ +001d8530: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ +001d8540: 655f 7072 6f63 5f63 6d64 6c69 6e65 0a20  e_proc_cmdline. 
│ │ │ +001d8550: 2020 2029 2061 6e64 206e 6f74 2028 2061     ) and not ( a
│ │ │ +001d8560: 6e73 6962 6c65 5f76 6972 7475 616c 697a  nsible_virtualiz
│ │ │ +001d8570: 6174 696f 6e5f 7479 7065 2069 6e20 5b22  ation_type in ["
│ │ │ +001d8580: 646f 636b 6572 222c 2022 6c78 6322 2c20  docker", "lxc", 
│ │ │ +001d8590: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61  "openvz", "podma
│ │ │ +001d85a0: 6e22 2c0a 2020 2020 2263 6f6e 7461 696e  n",.    "contain
│ │ │ +001d85b0: 6572 225d 2029 2029 0a20 202d 2028 222d  er"] ) ).  - ("-
│ │ │ +001d85c0: 2d66 7374 6162 2220 7c20 6c65 6e67 7468  -fstab" | length
│ │ │ +001d85d0: 203d 3d20 3029 0a20 202d 2064 6576 6963   == 0).  - devic
│ │ │ +001d85e0: 655f 6e61 6d65 2e73 7464 6f75 7420 6973  e_name.stdout is
│ │ │ +001d85f0: 2064 6566 696e 6564 2061 6e64 2064 6576   defined and dev
│ │ │ +001d8600: 6963 655f 6e61 6d65 2e73 7464 6f75 745f  ice_name.stdout_
│ │ │ +001d8610: 6c69 6e65 7320 6973 2064 6566 696e 6564  lines is defined
│ │ │ +001d8620: 0a20 202d 2028 6465 7669 6365 5f6e 616d  .  - (device_nam
│ │ │ +001d8630: 652e 7374 646f 7574 207c 206c 656e 6774  e.stdout | lengt
│ │ │ +001d8640: 6820 3d3d 2030 290a 2020 7461 6773 3a0a  h == 0).  tags:.
│ │ │ +001d8650: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001d8660: 4143 2d36 0a20 202d 204e 4953 542d 3830  AC-6.  - NIST-80
│ │ │ +001d8670: 302d 3533 2d41 432d 3628 3129 0a20 202d  0-53-AC-6(1).  -
│ │ │ +001d8680: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +001d8690: 3628 6129 0a20 202d 204e 4953 542d 3830  6(a).  - NIST-80
│ │ │ +001d86a0: 302d 3533 2d43 4d2d 3728 6129 0a20 202d  0-53-CM-7(a).  -
│ │ │ +001d86b0: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +001d86c0: 3728 6229 0a20 202d 204e 4953 542d 3830  7(b).  - NIST-80
│ │ │ +001d86d0: 302d 3533 2d4d 502d 370a 2020 2d20 636f  0-53-MP-7.  - co
│ │ │ +001d86e0: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ +001d86f0: 0a20 202d 2068 6967 685f 6469 7372 7570  .  - high_disrup
│ │ │ +001d8700: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d  tion.  - low_com
│ │ │ +001d8710: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ +001d8720: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ +001d8730: 6d6f 756e 745f 6f70 7469 6f6e 5f62 6f6f  mount_option_boo
│ │ │ +001d8740: 745f 6e6f 7375 6964 0a20 202d 206e 6f5f  t_nosuid.  - no_
│ │ │ +001d8750: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ +001d8760: 206e 616d 653a 2027 4164 6420 6e6f 7375   name: 'Add nosu
│ │ │ +001d8770: 6964 204f 7074 696f 6e20 746f 202f 626f  id Option to /bo
│ │ │ +001d8780: 6f74 3a20 4d61 6b65 2073 7572 6520 6e6f  ot: Make sure no
│ │ │ +001d8790: 7375 6964 206f 7074 696f 6e20 6973 2070  suid option is p
│ │ │ +001d87a0: 6172 7420 6f66 2074 6865 2074 6f20 2f62  art of the to /b
│ │ │ +001d87b0: 6f6f 740a 2020 2020 6f70 7469 6f6e 7327  oot.    options'
│ │ │ +001d87c0: 0a20 2073 6574 5f66 6163 743a 0a20 2020  .  set_fact:.   
│ │ │ +001d87d0: 206d 6f75 6e74 5f69 6e66 6f3a 2027 7b7b   mount_info: '{{
│ │ │ +001d87e0: 206d 6f75 6e74 5f69 6e66 6f20 7c20 636f   mount_info | co
│ │ │ +001d87f0: 6d62 696e 6528 207b 2727 6f70 7469 6f6e  mbine( {''option
│ │ │ +001d8800: 7327 273a 2727 2727 7e28 6d6f 756e 745f  s'':''''~(mount_
│ │ │ +001d8810: 696e 666f 2e6f 7074 696f 6e73 207c 0a20  info.options |. 
│ │ │ +001d8820: 2020 2020 2064 6566 6175 6c74 2827 2727       default('''
│ │ │ +001d8830: 2729 297e 2827 272c 2727 2069 6620 286d  '))~('','' if (m
│ │ │ +001d8840: 6f75 6e74 5f69 6e66 6f2e 6f70 7469 6f6e  ount_info.option
│ │ │ +001d8850: 7320 7c20 6465 6661 756c 7428 2727 2727  s | default(''''
│ │ │ +001d8860: 2929 2065 6c73 6520 2727 2727 297e 2727  )) else '''')~''
│ │ │ +001d8870: 6e6f 7375 6964 2727 0a20 2020 2020 207d  nosuid''.      }
│ │ │ +001d8880: 2920 7d7d 270a 2020 7768 656e 3a0a 2020  ) }}'.  when:.  
│ │ │ +001d8890: 2d20 2820 6e6f 7420 2820 226b 6572 6e65  - ( not ( "kerne
│ │ │ +001d88a0: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ +001d88b0: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ +001d88c0: 2022 626f 6f74 6322 2069 6e20 616e 7369   "bootc" in ansi
│ │ │ +001d88d0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001d88e0: 6573 0a20 2020 2061 6e64 206e 6f74 2022  es.    and not "
│ │ │ +001d88f0: 6f70 656e 7368 6966 742d 6b75 6265 6c65  openshift-kubele
│ │ │ +001d8900: 7422 2069 6e20 616e 7369 626c 655f 6661  t" in ansible_fa
│ │ │ +001d8910: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ +001d8920: 2022 6f73 7472 6565 2220 696e 2061 6e73   "ostree" in ans
│ │ │ +001d8930: 6962 6c65 5f70 726f 635f 636d 646c 696e  ible_proc_cmdlin
│ │ │ +001d8940: 650a 2020 2020 2920 616e 6420 6e6f 7420  e.    ) and not 
│ │ │ +001d8950: 2820 616e 7369 626c 655f 7669 7274 7561  ( ansible_virtua
│ │ │ +001d8960: 6c69 7a61 7469 6f6e 5f74 7970 6520 696e  lization_type in
│ │ │ +001d8970: 205b 2264 6f63 6b65 7222 2c20 226c 7863   ["docker", "lxc
│ │ │ +001d8980: 222c 2022 6f70 656e 767a 222c 2022 706f  ", "openvz", "po
│ │ │ +001d8990: 646d 616e 222c 0a20 2020 2022 636f 6e74  dman",.    "cont
│ │ │ +001d89a0: 6169 6e65 7222 5d20 2920 290a 2020 2d20  ainer"] ) ).  - 
│ │ │ +001d89b0: 6d6f 756e 745f 696e 666f 2069 7320 6465  mount_info is de
│ │ │ +001d89c0: 6669 6e65 6420 616e 6420 226e 6f73 7569  fined and "nosui
│ │ │ +001d89d0: 6422 206e 6f74 2069 6e20 286d 6f75 6e74  d" not in (mount
│ │ │ +001d89e0: 5f69 6e66 6f2e 6f70 7469 6f6e 7320 7c20  _info.options | 
│ │ │ +001d89f0: 6465 6661 756c 7428 2727 2929 0a20 2074  default('')).  t
│ │ │ +001d8a00: 6167 733a 0a20 202d 204e 4953 542d 3830  ags:.  - NIST-80
│ │ │ +001d8a10: 302d 3533 2d41 432d 360a 2020 2d20 4e49  0-53-AC-6.  - NI
│ │ │ +001d8a20: 5354 2d38 3030 2d35 332d 4143 2d36 2831  ST-800-53-AC-6(1
│ │ │ +001d8a30: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001d8a40: 332d 434d 2d36 2861 290a 2020 2d20 4e49  3-CM-6(a).  - NI
│ │ │ +001d8a50: 5354 2d38 3030 2d35 332d 434d 2d37 2861  ST-800-53-CM-7(a
│ │ │ +001d8a60: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001d8a70: 332d 434d 2d37 2862 290a 2020 2d20 4e49  3-CM-7(b).  - NI
│ │ │ +001d8a80: 5354 2d38 3030 2d35 332d 4d50 2d37 0a20  ST-800-53-MP-7. 
│ │ │ +001d8a90: 202d 2063 6f6e 6669 6775 7265 5f73 7472   - configure_str
│ │ │ +001d8aa0: 6174 6567 790a 2020 2d20 6869 6768 5f64  ategy.  - high_d
│ │ │ +001d8ab0: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ +001d8ac0: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ +001d8ad0: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ +001d8ae0: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f  .  - mount_optio
│ │ │ +001d8af0: 6e5f 626f 6f74 5f6e 6f73 7569 640a 2020  n_boot_nosuid.  
│ │ │ +001d8b00: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ +001d8b10: 6564 0a0a 2d20 6e61 6d65 3a20 2741 6464  ed..- name: 'Add
│ │ │ +001d8b20: 206e 6f73 7569 6420 4f70 7469 6f6e 2074   nosuid Option t
│ │ │ +001d8b30: 6f20 2f62 6f6f 743a 2045 6e73 7572 6520  o /boot: Ensure 
│ │ │ +001d8b40: 2f62 6f6f 7420 6973 206d 6f75 6e74 6564  /boot is mounted
│ │ │ +001d8b50: 2077 6974 6820 6e6f 7375 6964 206f 7074   with nosuid opt
│ │ │ +001d8b60: 696f 6e27 0a20 2061 6e73 6962 6c65 2e70  ion'.  ansible.p
│ │ │ +001d8b70: 6f73 6978 2e6d 6f75 6e74 3a0a 2020 2020  osix.mount:.    
│ │ │ +001d8b80: 7061 7468 3a20 2f62 6f6f 740a 2020 2020  path: /boot.    
│ │ │ +001d8b90: 7372 633a 2027 7b7b 206d 6f75 6e74 5f69  src: '{{ mount_i
│ │ │ +001d8ba0: 6e66 6f2e 736f 7572 6365 207c 2064 6566  nfo.source | def
│ │ │ +001d8bb0: 6175 6c74 2827 2727 2729 207d 7d27 0a20  ault('''') }}'. 
│ │ │ +001d8bc0: 2020 206f 7074 733a 2027 7b7b 206d 6f75     opts: '{{ mou
│ │ │ +001d8bd0: 6e74 5f69 6e66 6f2e 6f70 7469 6f6e 7320  nt_info.options 
│ │ │ +001d8be0: 7c20 6465 6661 756c 7428 2727 2727 2920  | default('''') 
│ │ │ +001d8bf0: 7d7d 270a 2020 2020 7374 6174 653a 206d  }}'.    state: m
│ │ │ +001d8c00: 6f75 6e74 6564 0a20 2020 2066 7374 7970  ounted.    fstyp
│ │ │ +001d8c10: 653a 2027 7b7b 206d 6f75 6e74 5f69 6e66  e: '{{ mount_inf
│ │ │ +001d8c20: 6f2e 6673 7479 7065 207c 2064 6566 6175  o.fstype | defau
│ │ │ +001d8c30: 6c74 2827 2727 2729 207d 7d27 0a20 2072  lt('''') }}'.  r
│ │ │ +001d8c40: 6567 6973 7465 723a 206d 6f75 6e74 5f72  egister: mount_r
│ │ │ +001d8c50: 6573 756c 740a 2020 6661 696c 6564 5f77  esult.  failed_w
│ │ │ +001d8c60: 6865 6e3a 0a20 202d 206d 6f75 6e74 5f72  hen:.  - mount_r
│ │ │ +001d8c70: 6573 756c 7420 6973 2066 6169 6c65 640a  esult is failed.
│ │ │ +001d8c80: 2020 2d20 2727 2774 6172 6765 7420 6973    - '''target is
│ │ │ +001d8c90: 2062 7573 7927 2720 6e6f 7420 696e 2028   busy'' not in (
│ │ │ +001d8ca0: 6d6f 756e 745f 7265 7375 6c74 2e6d 7367  mount_result.msg
│ │ │ +001d8cb0: 207c 2064 6566 6175 6c74 2827 2727 2729   | default('''')
│ │ │ +001d8cc0: 2927 0a20 202d 2027 2727 616c 7265 6164  )'.  - '''alread
│ │ │ +001d8cd0: 7920 6d6f 756e 7465 6427 2720 6e6f 7420  y mounted'' not 
│ │ │ +001d8ce0: 696e 2028 6d6f 756e 745f 7265 7375 6c74  in (mount_result
│ │ │ +001d8cf0: 2e6d 7367 207c 2064 6566 6175 6c74 2827  .msg | default('
│ │ │ +001d8d00: 2727 2729 2927 0a20 2077 6865 6e3a 0a20  '''))'.  when:. 
│ │ │ +001d8d10: 202d 2028 206e 6f74 2028 2022 6b65 726e   - ( not ( "kern
│ │ │ +001d8d20: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ +001d8d30: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +001d8d40: 6420 2262 6f6f 7463 2220 696e 2061 6e73  d "bootc" in ans
│ │ │ +001d8d50: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001d8d60: 6765 730a 2020 2020 616e 6420 6e6f 7420  ges.    and not 
│ │ │ +001d8d70: 226f 7065 6e73 6869 6674 2d6b 7562 656c  "openshift-kubel
│ │ │ +001d8d80: 6574 2220 696e 2061 6e73 6962 6c65 5f66  et" in ansible_f
│ │ │ +001d8d90: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +001d8da0: 6420 226f 7374 7265 6522 2069 6e20 616e  d "ostree" in an
│ │ │ +001d8db0: 7369 626c 655f 7072 6f63 5f63 6d64 6c69  sible_proc_cmdli
│ │ │ +001d8dc0: 6e65 0a20 2020 2029 2061 6e64 206e 6f74  ne.    ) and not
│ │ │ +001d8dd0: 2028 2061 6e73 6962 6c65 5f76 6972 7475   ( ansible_virtu
│ │ │ +001d8de0: 616c 697a 6174 696f 6e5f 7479 7065 2069  alization_type i
│ │ │ +001d8df0: 6e20 5b22 646f 636b 6572 222c 2022 6c78  n ["docker", "lx
│ │ │ +001d8e00: 6322 2c20 226f 7065 6e76 7a22 2c20 2270  c", "openvz", "p
│ │ │ +001d8e10: 6f64 6d61 6e22 2c0a 2020 2020 2263 6f6e  odman",.    "con
│ │ │ +001d8e20: 7461 696e 6572 225d 2029 2029 0a20 202d  tainer"] ) ).  -
│ │ │ +001d8e30: 206d 6f75 6e74 5f69 6e66 6f20 6973 2064   mount_info is d
│ │ │ +001d8e40: 6566 696e 6564 0a20 202d 2028 6465 7669  efined.  - (devi
│ │ │ +001d8e50: 6365 5f6e 616d 652e 7374 646f 7574 2069  ce_name.stdout i
│ │ │ +001d8e60: 7320 6465 6669 6e65 6420 616e 6420 2864  s defined and (d
│ │ │ +001d8e70: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ +001d8e80: 7420 7c20 6c65 6e67 7468 2026 6774 3b20  t | length > 
│ │ │ +001d8e90: 3029 2920 6f72 2028 222d 2d66 7374 6162  0)) or ("--fstab
│ │ │ +001d8ea0: 220a 2020 2020 7c20 6c65 6e67 7468 203d  ".    | length =
│ │ │ +001d8eb0: 3d20 3029 0a20 2074 6167 733a 0a20 202d  = 0).  tags:.  -
│ │ │ +001d8ec0: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ +001d8ed0: 360a 2020 2d20 4e49 5354 2d38 3030 2d35  6.  - NIST-800-5
│ │ │ +001d8ee0: 332d 4143 2d36 2831 290a 2020 2d20 4e49  3-AC-6(1).  - NI
│ │ │ +001d8ef0: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ +001d8f00: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001d8f10: 332d 434d 2d37 2861 290a 2020 2d20 4e49  3-CM-7(a).  - NI
│ │ │ +001d8f20: 5354 2d38 3030 2d35 332d 434d 2d37 2862  ST-800-53-CM-7(b
│ │ │ +001d8f30: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001d8f40: 332d 4d50 2d37 0a20 202d 2063 6f6e 6669  3-MP-7.  - confi
│ │ │ +001d8f50: 6775 7265 5f73 7472 6174 6567 790a 2020  gure_strategy.  
│ │ │ +001d8f60: 2d20 6869 6768 5f64 6973 7275 7074 696f  - high_disruptio
│ │ │ +001d8f70: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65  n.  - low_comple
│ │ │ +001d8f80: 7869 7479 0a20 202d 206d 6564 6975 6d5f  xity.  - medium_
│ │ │ +001d8f90: 7365 7665 7269 7479 0a20 202d 206d 6f75  severity.  - mou
│ │ │ +001d8fa0: 6e74 5f6f 7074 696f 6e5f 626f 6f74 5f6e  nt_option_boot_n
│ │ │ +001d8fb0: 6f73 7569 640a 2020 2d20 6e6f 5f72 6562  osuid.  - no_reb
│ │ │ +001d8fc0: 6f6f 745f 6e65 6564 6564 0a3c 2f63 6f64  oot_needed.
Remed │ │ │ +001d9080: 6961 7469 6f6e 2053 6865 6c6c 2073 6372 iation Shell scr │ │ │ +001d9090: 6970 7420 e287 b23c 2f61 3e3c 6272 3e3c ipt ...
< │ │ │ +001d90a0: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +001d90b0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +001d90c0: 7365 2220 6964 3d22 6964 3537 3422 3e3c se" id="id574">< │ │ │ +001d90d0: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +001d90e0: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +001d90f0: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +001d9100: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +001d9110: 3e3c 7472 3e3c 7468 3e52 6562 6f6f 743a >Reboot: │ │ │ +001d9120: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ +001d9140: 3c70 7265 3e3c 636f 6465 3e23 2052 656d
# Rem
│ │ │ +001d9150: 6564 6961 7469 6f6e 2069 7320 6170 706c  ediation is appl
│ │ │ +001d9160: 6963 6162 6c65 206f 6e6c 7920 696e 2063  icable only in c
│ │ │ +001d9170: 6572 7461 696e 2070 6c61 7466 6f72 6d73  ertain platforms
│ │ │ +001d9180: 0a69 6620 2820 2120 2820 7b20 7270 6d20  .if ( ! ( { rpm 
│ │ │ +001d9190: 2d2d 7175 6965 7420 2d71 206b 6572 6e65  --quiet -q kerne
│ │ │ +001d91a0: 6c20 3b7d 2026 616d 703b 2661 6d70 3b20  l ;} && 
│ │ │ +001d91b0: 7b20 7270 6d20 2d2d 7175 6965 7420 2d71  { rpm --quiet -q
│ │ │ +001d91c0: 2062 6f6f 7463 203b 7d20 2661 6d70 3b26   bootc ;} &&
│ │ │ +001d91d0: 616d 703b 207b 2021 2072 706d 202d 2d71  amp; { ! rpm --q
│ │ │ +001d91e0: 7569 6574 202d 7120 6f70 656e 7368 6966  uiet -q openshif
│ │ │ +001d91f0: 742d 6b75 6265 6c65 7420 3b7d 2026 616d  t-kubelet ;} &am
│ │ │ +001d9200: 703b 2661 6d70 3b20 285b 202d 6620 2f72  p;& ([ -f /r
│ │ │ +001d9210: 756e 2f6f 7374 7265 652d 626f 6f74 6564  un/ostree-booted
│ │ │ +001d9220: 205d 207c 7c20 5b20 2d4c 202f 6f73 7472   ] || [ -L /ostr
│ │ │ +001d9230: 6565 205d 2920 2920 2661 6d70 3b26 616d  ee ]) ) &&am
│ │ │ +001d9240: 703b 2021 2028 205b 202d 6620 2f2e 646f  p; ! ( [ -f /.do
│ │ │ +001d9250: 636b 6572 656e 7620 5d20 7c7c 205b 202d  ckerenv ] || [ -
│ │ │ +001d9260: 6620 2f72 756e 2f2e 636f 6e74 6169 6e65  f /run/.containe
│ │ │ +001d9270: 7265 6e76 205d 2029 2029 3b20 7468 656e  renv ] ) ); then
│ │ │ +001d9280: 0a0a 6675 6e63 7469 6f6e 2070 6572 666f  ..function perfo
│ │ │ +001d9290: 726d 5f72 656d 6564 6961 7469 6f6e 207b  rm_remediation {
│ │ │ +001d92a0: 0a0a 2020 2020 0a20 2020 2020 2020 2023  ..    .        #
│ │ │ +001d92b0: 2074 6865 206d 6f75 6e74 2070 6f69 6e74   the mount point
│ │ │ +001d92c0: 202f 626f 6f74 2068 6173 2074 6f20 6265   /boot has to be
│ │ │ +001d92d0: 2064 6566 696e 6564 2069 6e20 2f65 7463   defined in /etc
│ │ │ +001d92e0: 2f66 7374 6162 0a20 2020 2020 2020 2023  /fstab.        #
│ │ │ +001d92f0: 2062 6566 6f72 6520 7468 6973 2072 656d   before this rem
│ │ │ +001d9300: 6564 6961 7469 6f6e 2063 616e 2062 6520  ediation can be 
│ │ │ +001d9310: 6578 6563 7574 6564 2e20 496e 2063 6173  executed. In cas
│ │ │ +001d9320: 6520 6974 2069 7320 6e6f 7420 6465 6669  e it is not defi
│ │ │ +001d9330: 6e65 642c 2074 6865 0a20 2020 2020 2020  ned, the.       
│ │ │ +001d9340: 2023 2072 656d 6564 6961 7469 6f6e 2061   # remediation a
│ │ │ +001d9350: 626f 7274 7320 616e 6420 6e6f 2063 6861  borts and no cha
│ │ │ +001d9360: 6e67 6573 2072 6567 6172 6469 6e67 2074  nges regarding t
│ │ │ +001d9370: 6865 206d 6f75 6e74 2070 6f69 6e74 2061  he mount point a
│ │ │ +001d9380: 7265 2064 6f6e 652e 0a20 2020 2020 2020  re done..       
│ │ │ +001d9390: 206d 6f75 6e74 5f70 6f69 6e74 5f6d 6174   mount_point_mat
│ │ │ +001d93a0: 6368 5f72 6567 6578 703d 2224 2870 7269  ch_regexp="$(pri
│ │ │ +001d93b0: 6e74 6620 225e 5b5b 3a73 7061 6365 3a5d  ntf "^[[:space:]
│ │ │ +001d93c0: 5d2a 5b5e 235d 2e2a 5b5b 3a73 7061 6365  ]*[^#].*[[:space
│ │ │ +001d93d0: 3a5d 5d25 735b 5b3a 7370 6163 653a 5d5d  :]]%s[[:space:]]
│ │ │ +001d93e0: 2220 222f 626f 6f74 2229 220a 0a20 2020  " "/boot")"..   
│ │ │ +001d93f0: 2067 7265 7020 2224 6d6f 756e 745f 706f   grep "$mount_po
│ │ │ +001d9400: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ +001d9410: 2220 2d71 202f 6574 632f 6673 7461 6220  " -q /etc/fstab 
│ │ │ +001d9420: 5c0a 2020 2020 2020 2020 7c7c 207b 2065  \.        || { e
│ │ │ +001d9430: 6368 6f20 2254 6865 206d 6f75 6e74 2070  cho "The mount p
│ │ │ +001d9440: 6f69 6e74 2027 2f62 6f6f 7427 2069 7320  oint '/boot' is 
│ │ │ +001d9450: 6e6f 7420 6576 656e 2069 6e20 2f65 7463  not even in /etc
│ │ │ +001d9460: 2f66 7374 6162 2c20 736f 2077 6520 6361  /fstab, so we ca
│ │ │ +001d9470: 6e27 7420 7365 7420 7570 206d 6f75 6e74  n't set up mount
│ │ │ +001d9480: 206f 7074 696f 6e73 2220 2667 743b 2661   options" >&a
│ │ │ +001d9490: 6d70 3b32 3b0a 2020 2020 2020 2020 2020  mp;2;.          
│ │ │ +001d94a0: 2020 2020 2020 6563 686f 2022 4e6f 7420        echo "Not 
│ │ │ +001d94b0: 7265 6d65 6469 6174 696e 672c 2062 6563  remediating, bec
│ │ │ +001d94c0: 6175 7365 2074 6865 7265 2069 7320 6e6f  ause there is no
│ │ │ +001d94d0: 2072 6563 6f72 6420 6f66 202f 626f 6f74   record of /boot
│ │ │ +001d94e0: 2069 6e20 2f65 7463 2f66 7374 6162 2220   in /etc/fstab" 
│ │ │ +001d94f0: 2667 743b 2661 6d70 3b32 3b20 7265 7475  >&2; retu
│ │ │ +001d9500: 726e 2031 3b20 7d0a 2020 2020 0a0a 0a20  rn 1; }.    ... 
│ │ │ +001d9510: 2020 206d 6f75 6e74 5f70 6f69 6e74 5f6d     mount_point_m
│ │ │ +001d9520: 6174 6368 5f72 6567 6578 703d 2224 2870  atch_regexp="$(p
│ │ │ +001d9530: 7269 6e74 6620 225e 5b5b 3a73 7061 6365  rintf "^[[:space
│ │ │ +001d9540: 3a5d 5d2a 5b5e 235d 2e2a 5b5b 3a73 7061  :]]*[^#].*[[:spa
│ │ │ +001d9550: 6365 3a5d 5d25 735b 5b3a 7370 6163 653a  ce:]]%s[[:space:
│ │ │ +001d9560: 5d5d 2220 2f62 6f6f 7429 220a 0a20 2020  ]]" /boot)"..   
│ │ │ +001d9570: 2023 2049 6620 7468 6520 6d6f 756e 7420   # If the mount 
│ │ │ +001d9580: 706f 696e 7420 6973 206e 6f74 2069 6e20  point is not in 
│ │ │ +001d9590: 2f65 7463 2f66 7374 6162 2c20 6765 7420  /etc/fstab, get 
│ │ │ +001d95a0: 7072 6576 696f 7573 206d 6f75 6e74 206f  previous mount o
│ │ │ +001d95b0: 7074 696f 6e73 2066 726f 6d20 2f65 7463  ptions from /etc
│ │ │ +001d95c0: 2f6d 7461 620a 2020 2020 6966 2021 2067  /mtab.    if ! g
│ │ │ +001d95d0: 7265 7020 2d71 2022 246d 6f75 6e74 5f70  rep -q "$mount_p
│ │ │ +001d95e0: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ +001d95f0: 7022 202f 6574 632f 6673 7461 623b 2074  p" /etc/fstab; t
│ │ │ +001d9600: 6865 6e0a 2020 2020 2020 2020 2320 7275  hen.        # ru
│ │ │ +001d9610: 6e74 696d 6520 6f70 7473 2077 6974 686f  ntime opts witho
│ │ │ +001d9620: 7574 2073 6f6d 6520 6175 746f 6d61 7469  ut some automati
│ │ │ +001d9630: 6320 6b65 726e 656c 2f75 7365 7273 7061  c kernel/userspa
│ │ │ +001d9640: 6365 2d61 6464 6564 2064 6566 6175 6c74  ce-added default
│ │ │ +001d9650: 730a 2020 2020 2020 2020 7072 6576 696f  s.        previo
│ │ │ +001d9660: 7573 5f6d 6f75 6e74 5f6f 7074 733d 2428  us_mount_opts=$(
│ │ │ +001d9670: 6772 6570 2022 246d 6f75 6e74 5f70 6f69  grep "$mount_poi
│ │ │ +001d9680: 6e74 5f6d 6174 6368 5f72 6567 6578 7022  nt_match_regexp"
│ │ │ +001d9690: 202f 6574 632f 6d74 6162 207c 2068 6561   /etc/mtab | hea
│ │ │ +001d96a0: 6420 2d31 207c 2020 6177 6b20 277b 7072  d -1 |  awk '{pr
│ │ │ +001d96b0: 696e 7420 2434 7d27 205c 0a20 2020 2020  int $4}' \.     
│ │ │ +001d96c0: 2020 2020 2020 2020 2020 2020 2020 207c                 |
│ │ │ +001d96d0: 2073 6564 202d 4520 2273 2f28 7277 7c64   sed -E "s/(rw|d
│ │ │ +001d96e0: 6566 6175 6c74 737c 7365 636c 6162 656c  efaults|seclabel
│ │ │ +001d96f0: 7c6e 6f73 7569 6429 282c 7c24 292f 2f67  |nosuid)(,|$)//g
│ │ │ +001d9700: 3b73 2f2c 242f 2f22 290a 2020 2020 2020  ;s/,$//").      
│ │ │ +001d9710: 2020 5b20 2224 7072 6576 696f 7573 5f6d    [ "$previous_m
│ │ │ +001d9720: 6f75 6e74 5f6f 7074 7322 205d 2026 616d  ount_opts" ] &am
│ │ │ +001d9730: 703b 2661 6d70 3b20 7072 6576 696f 7573  p;& previous
│ │ │ +001d9740: 5f6d 6f75 6e74 5f6f 7074 732b 3d22 2c22  _mount_opts+=","
│ │ │ +001d9750: 0a20 2020 2020 2020 2023 2049 6e20 6973  .        # In is
│ │ │ +001d9760: 6f39 3636 3020 6669 6c65 7379 7374 656d  o9660 filesystem
│ │ │ +001d9770: 7320 6d74 6162 2063 6f75 6c64 2064 6573  s mtab could des
│ │ │ +001d9780: 6372 6962 6520 6120 2262 6c6f 636b 7369  cribe a "blocksi
│ │ │ +001d9790: 7a65 2220 7661 6c75 652c 2074 6869 7320  ze" value, this 
│ │ │ +001d97a0: 7368 6f75 6c64 2062 6520 7265 666c 6563  should be reflec
│ │ │ +001d97b0: 7465 6420 696e 0a20 2020 2020 2020 2023  ted in.        #
│ │ │ +001d97c0: 2066 7374 6162 2061 7320 2262 6c6f 636b   fstab as "block
│ │ │ +001d97d0: 222e 2020 5468 6520 6e65 7874 2076 6172  ".  The next var
│ │ │ +001d97e0: 6961 626c 6520 6973 2074 6f20 7361 7469  iable is to sati
│ │ │ +001d97f0: 7366 7920 7368 656c 6c63 6865 636b 2053  sfy shellcheck S
│ │ │ +001d9800: 4332 3035 302e 0a20 2020 2020 2020 2066  C2050..        f
│ │ │ +001d9810: 735f 7479 7065 3d22 220a 2020 2020 2020  s_type="".      
│ │ │ +001d9820: 2020 6966 205b 2020 2224 6673 5f74 7970    if [  "$fs_typ
│ │ │ +001d9830: 6522 203d 3d20 2269 736f 3936 3630 2220  e" == "iso9660" 
│ │ │ +001d9840: 5d20 3b20 7468 656e 0a20 2020 2020 2020  ] ; then.       
│ │ │ +001d9850: 2020 2020 2070 7265 7669 6f75 735f 6d6f       previous_mo
│ │ │ +001d9860: 756e 745f 6f70 7473 3d24 2873 6564 2027  unt_opts=$(sed '
│ │ │ +001d9870: 732f 626c 6f63 6b73 697a 653d 2f62 6c6f  s/blocksize=/blo
│ │ │ +001d9880: 636b 3d2f 2720 266c 743b 266c 743b 266c  ck=/' <<&l
│ │ │ +001d9890: 743b 2022 2470 7265 7669 6f75 735f 6d6f  t; "$previous_mo
│ │ │ +001d98a0: 756e 745f 6f70 7473 2229 0a20 2020 2020  unt_opts").     
│ │ │ +001d98b0: 2020 2066 690a 2020 2020 2020 2020 6563     fi.        ec
│ │ │ +001d98c0: 686f 2022 202f 626f 6f74 2020 6465 6661  ho " /boot  defa
│ │ │ +001d98d0: 756c 7473 2c24 7b70 7265 7669 6f75 735f  ults,${previous_
│ │ │ +001d98e0: 6d6f 756e 745f 6f70 7473 7d6e 6f73 7569  mount_opts}nosui
│ │ │ +001d98f0: 6420 3020 3022 2026 6774 3b26 6774 3b20  d 0 0" >> 
│ │ │ +001d9900: 2f65 7463 2f66 7374 6162 0a20 2020 2023  /etc/fstab.    #
│ │ │ +001d9910: 2049 6620 7468 6520 6d6f 756e 745f 6f70   If the mount_op
│ │ │ +001d9920: 7420 6f70 7469 6f6e 2069 7320 6e6f 7420  t option is not 
│ │ │ +001d9930: 616c 7265 6164 7920 696e 2074 6865 206d  already in the m
│ │ │ +001d9940: 6f75 6e74 2070 6f69 6e74 2773 202f 6574  ount point's /et
│ │ │ +001d9950: 632f 6673 7461 6220 656e 7472 792c 2061  c/fstab entry, a
│ │ │ +001d9960: 6464 2069 740a 2020 2020 656c 6966 2021  dd it.    elif !
│ │ │ +001d9970: 2067 7265 7020 2224 6d6f 756e 745f 706f   grep "$mount_po
│ │ │ +001d9980: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ +001d9990: 2220 2f65 7463 2f66 7374 6162 207c 2067  " /etc/fstab | g
│ │ │ +001d99a0: 7265 7020 2d71 2022 6e6f 7375 6964 223b  rep -q "nosuid";
│ │ │ +001d99b0: 2074 6865 6e0a 2020 2020 2020 2020 7072   then.        pr
│ │ │ +001d99c0: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ +001d99d0: 733d 2428 6772 6570 2022 246d 6f75 6e74  s=$(grep "$mount
│ │ │ +001d99e0: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ +001d99f0: 6578 7022 202f 6574 632f 6673 7461 6220  exp" /etc/fstab 
│ │ │ +001d9a00: 7c20 6177 6b20 277b 7072 696e 7420 2434  | awk '{print $4
│ │ │ +001d9a10: 7d27 290a 2020 2020 2020 2020 7365 6420  }').        sed 
│ │ │ +001d9a20: 2d69 2022 737c 5c28 247b 6d6f 756e 745f  -i "s|\(${mount_
│ │ │ +001d9a30: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ +001d9a40: 7870 7d2e 2a24 7b70 7265 7669 6f75 735f  xp}.*${previous_
│ │ │ +001d9a50: 6d6f 756e 745f 6f70 7473 7d5c 297c 5c31  mount_opts}\)|\1
│ │ │ +001d9a60: 2c6e 6f73 7569 647c 2220 2f65 7463 2f66  ,nosuid|" /etc/f
│ │ │ +001d9a70: 7374 6162 0a20 2020 2066 690a 0a0a 2020  stab.    fi...  
│ │ │ +001d9a80: 2020 6966 206d 6b64 6972 202d 7020 222f    if mkdir -p "/
│ │ │ +001d9a90: 626f 6f74 223b 2074 6865 6e0a 2020 2020  boot"; then.    
│ │ │ +001d9aa0: 2020 2020 6966 206d 6f75 6e74 706f 696e      if mountpoin
│ │ │ +001d9ab0: 7420 2d71 2022 2f62 6f6f 7422 3b20 7468  t -q "/boot"; th
│ │ │ +001d9ac0: 656e 0a20 2020 2020 2020 2020 2020 206d  en.            m
│ │ │ +001d9ad0: 6f75 6e74 202d 6f20 7265 6d6f 756e 7420  ount -o remount 
│ │ │ +001d9ae0: 2d2d 7461 7267 6574 2022 2f62 6f6f 7422  --target "/boot"
│ │ │ +001d9af0: 0a20 2020 2020 2020 2066 690a 2020 2020  .        fi.    
│ │ │ +001d9b00: 6669 0a7d 0a0a 7065 7266 6f72 6d5f 7265  fi.}..perform_re
│ │ │ +001d9b10: 6d65 6469 6174 696f 6e0a 0a65 6c73 650a  mediation..else.
│ │ │ +001d9b20: 2020 2020 2667 743b 2661 6d70 3b32 2065      >&2 e
│ │ │ +001d9b30: 6368 6f20 2752 656d 6564 6961 7469 6f6e  cho 'Remediation
│ │ │ +001d9b40: 2069 7320 6e6f 7420 6170 706c 6963 6162   is not applicab
│ │ │ +001d9b50: 6c65 2c20 6e6f 7468 696e 6720 7761 7320  le, nothing was 
│ │ │ +001d9b60: 646f 6e65 270a 6669 0a3c 2f63 6f64 653e  done'.fi.
│ │ │ +001d9b70: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ +001d9c20: 7469 6f6e 2041 6e61 636f 6e64 6120 736e tion Anaconda sn │ │ │ +001d9c30: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ +001d9ce0: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c
Compl │ │ │ +001d9cc0: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ +001d9cd0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ +001d9cf0: 2f74 683e 3c74 643e 6869 6768 3c2f 7464 /th>high
Re │ │ │ +001d9d10: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +001d9d20: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:enable
< │ │ │ +001d9d60: 7072 653e 3c63 6f64 653e 0a70 6172 7420 pre>.part │ │ │ +001d9d70: 2f62 6f6f 7420 2d2d 6d6f 756e 746f 7074 /boot --mountopt │ │ │ +001d9d80: 696f 6e73 3d22 6e6f 7375 6964 220a 3c2f ions="nosuid".
Remediation │ │ │ -001da780: 2041 6e61 636f 6e64 6120 736e 6970 7065 Anaconda snippe │ │ │ -001da790: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ -001da810: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ -001da820: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ -001da840: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ -001da850: 3c74 643e 6869 6768 3c2f 7464 3e3c 2f74 highReboot │ │ │ -001da870: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -001da880: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ -001da8a0: 7464 3e65 6e61 626c 653c 2f74 643e 3c2f td>enable
│ │ │ -001da8c0: 3c63 6f64 653e 0a70 6172 7420 2f68 6f6d  .part /hom
│ │ │ -001da8d0: 6520 2d2d 6d6f 756e 746f 7074 696f 6e73  e --mountoptions
│ │ │ -001da8e0: 3d22 6e6f 6578 6563 220a 3c2f 636f 6465  ="noexec".
Remedi │ │ │ -001da9a0: 6174 696f 6e20 416e 7369 626c 6520 736e ation Ansible sn │ │ │ -001da9b0: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ -001daa60: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c
- n
│ │ │ -001daaf0: 616d 653a 2047 6174 6865 7220 7468 6520  ame: Gather the 
│ │ │ -001dab00: 7061 636b 6167 6520 6661 6374 730a 2020  package facts.  
│ │ │ -001dab10: 7061 636b 6167 655f 6661 6374 733a 0a20  package_facts:. 
│ │ │ -001dab20: 2020 206d 616e 6167 6572 3a20 6175 746f     manager: auto
│ │ │ -001dab30: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ -001dab40: 542d 3830 302d 3533 2d43 4d2d 3628 6229  T-800-53-CM-6(b)
│ │ │ -001dab50: 0a20 202d 2063 6f6e 6669 6775 7265 5f73  .  - configure_s
│ │ │ -001dab60: 7472 6174 6567 790a 2020 2d20 6869 6768  trategy.  - high
│ │ │ -001dab70: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ -001dab80: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ -001dab90: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ -001daba0: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074  ty.  - mount_opt
│ │ │ -001dabb0: 696f 6e5f 686f 6d65 5f6e 6f65 7865 630a  ion_home_noexec.
│ │ │ -001dabc0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ -001dabd0: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741  eded..- name: 'A
│ │ │ -001dabe0: 6464 206e 6f65 7865 6320 4f70 7469 6f6e  dd noexec Option
│ │ │ -001dabf0: 2074 6f20 2f68 6f6d 653a 2043 6865 636b   to /home: Check
│ │ │ -001dac00: 2069 6e66 6f72 6d61 7469 6f6e 2061 7373   information ass
│ │ │ -001dac10: 6f63 6961 7465 6420 746f 206d 6f75 6e74  ociated to mount
│ │ │ -001dac20: 706f 696e 7427 0a20 2061 6e73 6962 6c65  point'.  ansible
│ │ │ -001dac30: 2e62 7569 6c74 696e 2e63 6f6d 6d61 6e64  .builtin.command
│ │ │ -001dac40: 3a20 6669 6e64 6d6e 7420 2d2d 6673 7461  : findmnt --fsta
│ │ │ -001dac50: 6220 272f 686f 6d65 270a 2020 7265 6769  b '/home'.  regi
│ │ │ -001dac60: 7374 6572 3a20 6465 7669 6365 5f6e 616d  ster: device_nam
│ │ │ -001dac70: 650a 2020 6661 696c 6564 5f77 6865 6e3a  e.  failed_when:
│ │ │ -001dac80: 2064 6576 6963 655f 6e61 6d65 2e72 6320   device_name.rc 
│ │ │ -001dac90: 2667 743b 2031 0a20 2063 6861 6e67 6564  > 1.  changed
│ │ │ -001daca0: 5f77 6865 6e3a 2066 616c 7365 0a20 2063  _when: false.  c
│ │ │ -001dacb0: 6865 636b 5f6d 6f64 653a 2066 616c 7365  heck_mode: false
│ │ │ -001dacc0: 0a20 2077 6865 6e3a 2028 206e 6f74 2028  .  when: ( not (
│ │ │ -001dacd0: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ -001dace0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001dacf0: 6765 7320 616e 6420 2262 6f6f 7463 2220  ges and "bootc" 
│ │ │ -001dad00: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001dad10: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ -001dad20: 6420 6e6f 7420 226f 7065 6e73 6869 6674  d not "openshift
│ │ │ -001dad30: 2d6b 7562 656c 6574 2220 696e 2061 6e73  -kubelet" in ans
│ │ │ -001dad40: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001dad50: 6765 7320 616e 6420 226f 7374 7265 6522  ges and "ostree"
│ │ │ -001dad60: 2069 6e20 616e 7369 626c 655f 7072 6f63   in ansible_proc
│ │ │ -001dad70: 5f63 6d64 6c69 6e65 0a20 2020 2029 2061  _cmdline.    ) a
│ │ │ -001dad80: 6e64 206e 6f74 2028 2061 6e73 6962 6c65  nd not ( ansible
│ │ │ -001dad90: 5f76 6972 7475 616c 697a 6174 696f 6e5f  _virtualization_
│ │ │ -001dada0: 7479 7065 2069 6e20 5b22 646f 636b 6572  type in ["docker
│ │ │ -001dadb0: 222c 2022 6c78 6322 2c20 226f 7065 6e76  ", "lxc", "openv
│ │ │ -001dadc0: 7a22 2c20 2270 6f64 6d61 6e22 2c0a 2020  z", "podman",.  
│ │ │ -001dadd0: 2020 2263 6f6e 7461 696e 6572 225d 2029    "container"] )
│ │ │ -001dade0: 2029 0a20 2074 6167 733a 0a20 202d 204e   ).  tags:.  - N
│ │ │ -001dadf0: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ -001dae00: 6229 0a20 202d 2063 6f6e 6669 6775 7265  b).  - configure
│ │ │ -001dae10: 5f73 7472 6174 6567 790a 2020 2d20 6869  _strategy.  - hi
│ │ │ -001dae20: 6768 5f64 6973 7275 7074 696f 6e0a 2020  gh_disruption.  
│ │ │ -001dae30: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ -001dae40: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ -001dae50: 7269 7479 0a20 202d 206d 6f75 6e74 5f6f  rity.  - mount_o
│ │ │ -001dae60: 7074 696f 6e5f 686f 6d65 5f6e 6f65 7865  ption_home_noexe
│ │ │ -001dae70: 630a 2020 2d20 6e6f 5f72 6562 6f6f 745f  c.  - no_reboot_
│ │ │ -001dae80: 6e65 6564 6564 0a0a 2d20 6e61 6d65 3a20  needed..- name: 
│ │ │ -001dae90: 2741 6464 206e 6f65 7865 6320 4f70 7469  'Add noexec Opti
│ │ │ -001daea0: 6f6e 2074 6f20 2f68 6f6d 653a 2043 7265  on to /home: Cre
│ │ │ -001daeb0: 6174 6520 6d6f 756e 745f 696e 666f 2064  ate mount_info d
│ │ │ -001daec0: 6963 7469 6f6e 6172 7920 7661 7269 6162  ictionary variab
│ │ │ -001daed0: 6c65 270a 2020 7365 745f 6661 6374 3a0a  le'.  set_fact:.
│ │ │ -001daee0: 2020 2020 6d6f 756e 745f 696e 666f 3a20      mount_info: 
│ │ │ -001daef0: 277b 7b20 6d6f 756e 745f 696e 666f 7c64  '{{ mount_info|d
│ │ │ -001daf00: 6566 6175 6c74 287b 7d29 7c63 6f6d 6269  efault({})|combi
│ │ │ -001daf10: 6e65 287b 6974 656d 2e30 3a20 6974 656d  ne({item.0: item
│ │ │ -001daf20: 2e31 7d29 207d 7d27 0a20 2077 6974 685f  .1}) }}'.  with_
│ │ │ -001daf30: 746f 6765 7468 6572 3a0a 2020 2d20 277b  together:.  - '{
│ │ │ -001daf40: 7b20 6465 7669 6365 5f6e 616d 652e 7374  { device_name.st
│ │ │ -001daf50: 646f 7574 5f6c 696e 6573 5b30 5d2e 7370  dout_lines[0].sp
│ │ │ -001daf60: 6c69 7428 2920 7c20 6d61 7028 2727 6c6f  lit() | map(''lo
│ │ │ -001daf70: 7765 7227 2729 207c 206c 6973 7420 7d7d  wer'') | list }}
│ │ │ -001daf80: 270a 2020 2d20 277b 7b20 6465 7669 6365  '.  - '{{ device
│ │ │ -001daf90: 5f6e 616d 652e 7374 646f 7574 5f6c 696e  _name.stdout_lin
│ │ │ -001dafa0: 6573 5b31 5d2e 7370 6c69 7428 2920 7c20  es[1].split() | 
│ │ │ -001dafb0: 6c69 7374 207d 7d27 0a20 2077 6865 6e3a  list }}'.  when:
│ │ │ -001dafc0: 0a20 202d 2028 206e 6f74 2028 2022 6b65  .  - ( not ( "ke
│ │ │ -001dafd0: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ -001dafe0: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ -001daff0: 616e 6420 2262 6f6f 7463 2220 696e 2061  and "bootc" in a
│ │ │ -001db000: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001db010: 6b61 6765 730a 2020 2020 616e 6420 6e6f  kages.    and no
│ │ │ -001db020: 7420 226f 7065 6e73 6869 6674 2d6b 7562  t "openshift-kub
│ │ │ -001db030: 656c 6574 2220 696e 2061 6e73 6962 6c65  elet" in ansible
│ │ │ -001db040: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ -001db050: 616e 6420 226f 7374 7265 6522 2069 6e20  and "ostree" in 
│ │ │ -001db060: 616e 7369 626c 655f 7072 6f63 5f63 6d64  ansible_proc_cmd
│ │ │ -001db070: 6c69 6e65 0a20 2020 2029 2061 6e64 206e  line.    ) and n
│ │ │ -001db080: 6f74 2028 2061 6e73 6962 6c65 5f76 6972  ot ( ansible_vir
│ │ │ -001db090: 7475 616c 697a 6174 696f 6e5f 7479 7065  tualization_type
│ │ │ -001db0a0: 2069 6e20 5b22 646f 636b 6572 222c 2022   in ["docker", "
│ │ │ -001db0b0: 6c78 6322 2c20 226f 7065 6e76 7a22 2c20  lxc", "openvz", 
│ │ │ -001db0c0: 2270 6f64 6d61 6e22 2c0a 2020 2020 2263  "podman",.    "c
│ │ │ -001db0d0: 6f6e 7461 696e 6572 225d 2029 2029 0a20  ontainer"] ) ). 
│ │ │ -001db0e0: 202d 2064 6576 6963 655f 6e61 6d65 2e73   - device_name.s
│ │ │ -001db0f0: 7464 6f75 7420 6973 2064 6566 696e 6564  tdout is defined
│ │ │ -001db100: 2061 6e64 2064 6576 6963 655f 6e61 6d65   and device_name
│ │ │ -001db110: 2e73 7464 6f75 745f 6c69 6e65 7320 6973  .stdout_lines is
│ │ │ -001db120: 2064 6566 696e 6564 0a20 202d 2028 6465   defined.  - (de
│ │ │ -001db130: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ -001db140: 207c 206c 656e 6774 6820 2667 743b 2030   | length > 0
│ │ │ -001db150: 290a 2020 7461 6773 3a0a 2020 2d20 4e49  ).  tags:.  - NI
│ │ │ -001db160: 5354 2d38 3030 2d35 332d 434d 2d36 2862  ST-800-53-CM-6(b
│ │ │ -001db170: 290a 2020 2d20 636f 6e66 6967 7572 655f  ).  - configure_
│ │ │ -001db180: 7374 7261 7465 6779 0a20 202d 2068 6967  strategy.  - hig
│ │ │ -001db190: 685f 6469 7372 7570 7469 6f6e 0a20 202d  h_disruption.  -
│ │ │ -001db1a0: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ -001db1b0: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ -001db1c0: 6974 790a 2020 2d20 6d6f 756e 745f 6f70  ity.  - mount_op
│ │ │ -001db1d0: 7469 6f6e 5f68 6f6d 655f 6e6f 6578 6563  tion_home_noexec
│ │ │ -001db1e0: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ -001db1f0: 6565 6465 640a 0a2d 206e 616d 653a 2027  eeded..- name: '
│ │ │ -001db200: 4164 6420 6e6f 6578 6563 204f 7074 696f  Add noexec Optio
│ │ │ -001db210: 6e20 746f 202f 686f 6d65 3a20 4966 202f  n to /home: If /
│ │ │ -001db220: 686f 6d65 206e 6f74 206d 6f75 6e74 6564  home not mounted
│ │ │ -001db230: 2c20 6372 6166 7420 6d6f 756e 745f 696e  , craft mount_in
│ │ │ -001db240: 666f 206d 616e 7561 6c6c 7927 0a20 2073  fo manually'.  s
│ │ │ -001db250: 6574 5f66 6163 743a 0a20 2020 206d 6f75  et_fact:.    mou
│ │ │ -001db260: 6e74 5f69 6e66 6f3a 2027 7b7b 206d 6f75  nt_info: '{{ mou
│ │ │ -001db270: 6e74 5f69 6e66 6f7c 6465 6661 756c 7428  nt_info|default(
│ │ │ -001db280: 7b7d 297c 636f 6d62 696e 6528 7b69 7465  {})|combine({ite
│ │ │ -001db290: 6d2e 303a 2069 7465 6d2e 317d 2920 7d7d  m.0: item.1}) }}
│ │ │ -001db2a0: 270a 2020 7769 7468 5f74 6f67 6574 6865  '.  with_togethe
│ │ │ -001db2b0: 723a 0a20 202d 202d 2074 6172 6765 740a  r:.  - - target.
│ │ │ -001db2c0: 2020 2020 2d20 736f 7572 6365 0a20 2020      - source.   
│ │ │ -001db2d0: 202d 2066 7374 7970 650a 2020 2020 2d20   - fstype.    - 
│ │ │ -001db2e0: 6f70 7469 6f6e 730a 2020 2d20 2d20 2f68  options.  - - /h
│ │ │ -001db2f0: 6f6d 650a 2020 2020 2d20 2727 0a20 2020  ome.    - ''.   
│ │ │ -001db300: 202d 2027 270a 2020 2020 2d20 6465 6661   - ''.    - defa
│ │ │ -001db310: 756c 7473 0a20 2077 6865 6e3a 0a20 202d  ults.  when:.  -
│ │ │ -001db320: 2028 206e 6f74 2028 2022 6b65 726e 656c   ( not ( "kernel
│ │ │ -001db330: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001db340: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ -001db350: 2262 6f6f 7463 2220 696e 2061 6e73 6962  "bootc" in ansib
│ │ │ -001db360: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -001db370: 730a 2020 2020 616e 6420 6e6f 7420 226f  s.    and not "o
│ │ │ -001db380: 7065 6e73 6869 6674 2d6b 7562 656c 6574  penshift-kubelet
│ │ │ -001db390: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001db3a0: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ -001db3b0: 226f 7374 7265 6522 2069 6e20 616e 7369  "ostree" in ansi
│ │ │ -001db3c0: 626c 655f 7072 6f63 5f63 6d64 6c69 6e65  ble_proc_cmdline
│ │ │ -001db3d0: 0a20 2020 2029 2061 6e64 206e 6f74 2028  .    ) and not (
│ │ │ -001db3e0: 2061 6e73 6962 6c65 5f76 6972 7475 616c   ansible_virtual
│ │ │ -001db3f0: 697a 6174 696f 6e5f 7479 7065 2069 6e20  ization_type in 
│ │ │ -001db400: 5b22 646f 636b 6572 222c 2022 6c78 6322  ["docker", "lxc"
│ │ │ -001db410: 2c20 226f 7065 6e76 7a22 2c20 2270 6f64  , "openvz", "pod
│ │ │ -001db420: 6d61 6e22 2c0a 2020 2020 2263 6f6e 7461  man",.    "conta
│ │ │ -001db430: 696e 6572 225d 2029 2029 0a20 202d 2028  iner"] ) ).  - (
│ │ │ -001db440: 222d 2d66 7374 6162 2220 7c20 6c65 6e67  "--fstab" | leng
│ │ │ -001db450: 7468 203d 3d20 3029 0a20 202d 2064 6576  th == 0).  - dev
│ │ │ -001db460: 6963 655f 6e61 6d65 2e73 7464 6f75 7420  ice_name.stdout 
│ │ │ -001db470: 6973 2064 6566 696e 6564 2061 6e64 2064  is defined and d
│ │ │ -001db480: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ -001db490: 745f 6c69 6e65 7320 6973 2064 6566 696e  t_lines is defin
│ │ │ -001db4a0: 6564 0a20 202d 2028 6465 7669 6365 5f6e  ed.  - (device_n
│ │ │ -001db4b0: 616d 652e 7374 646f 7574 207c 206c 656e  ame.stdout | len
│ │ │ -001db4c0: 6774 6820 3d3d 2030 290a 2020 7461 6773  gth == 0).  tags
│ │ │ -001db4d0: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ -001db4e0: 332d 434d 2d36 2862 290a 2020 2d20 636f  3-CM-6(b).  - co
│ │ │ -001db4f0: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ -001db500: 0a20 202d 2068 6967 685f 6469 7372 7570  .  - high_disrup
│ │ │ -001db510: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d  tion.  - low_com
│ │ │ -001db520: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ -001db530: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ -001db540: 6d6f 756e 745f 6f70 7469 6f6e 5f68 6f6d  mount_option_hom
│ │ │ -001db550: 655f 6e6f 6578 6563 0a20 202d 206e 6f5f  e_noexec.  - no_
│ │ │ -001db560: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ -001db570: 206e 616d 653a 2027 4164 6420 6e6f 6578   name: 'Add noex
│ │ │ -001db580: 6563 204f 7074 696f 6e20 746f 202f 686f  ec Option to /ho
│ │ │ -001db590: 6d65 3a20 4d61 6b65 2073 7572 6520 6e6f  me: Make sure no
│ │ │ -001db5a0: 6578 6563 206f 7074 696f 6e20 6973 2070  exec option is p
│ │ │ -001db5b0: 6172 7420 6f66 2074 6865 2074 6f20 2f68  art of the to /h
│ │ │ -001db5c0: 6f6d 650a 2020 2020 6f70 7469 6f6e 7327  ome.    options'
│ │ │ -001db5d0: 0a20 2073 6574 5f66 6163 743a 0a20 2020  .  set_fact:.   
│ │ │ -001db5e0: 206d 6f75 6e74 5f69 6e66 6f3a 2027 7b7b   mount_info: '{{
│ │ │ -001db5f0: 206d 6f75 6e74 5f69 6e66 6f20 7c20 636f   mount_info | co
│ │ │ -001db600: 6d62 696e 6528 207b 2727 6f70 7469 6f6e  mbine( {''option
│ │ │ -001db610: 7327 273a 2727 2727 7e28 6d6f 756e 745f  s'':''''~(mount_
│ │ │ -001db620: 696e 666f 2e6f 7074 696f 6e73 207c 0a20  info.options |. 
│ │ │ -001db630: 2020 2020 2064 6566 6175 6c74 2827 2727       default('''
│ │ │ -001db640: 2729 297e 2827 272c 2727 2069 6620 286d  '))~('','' if (m
│ │ │ -001db650: 6f75 6e74 5f69 6e66 6f2e 6f70 7469 6f6e  ount_info.option
│ │ │ -001db660: 7320 7c20 6465 6661 756c 7428 2727 2727  s | default(''''
│ │ │ -001db670: 2929 2065 6c73 6520 2727 2727 297e 2727  )) else '''')~''
│ │ │ -001db680: 6e6f 6578 6563 2727 0a20 2020 2020 207d  noexec''.      }
│ │ │ -001db690: 2920 7d7d 270a 2020 7768 656e 3a0a 2020  ) }}'.  when:.  
│ │ │ -001db6a0: 2d20 2820 6e6f 7420 2820 226b 6572 6e65  - ( not ( "kerne
│ │ │ -001db6b0: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ -001db6c0: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ -001db6d0: 2022 626f 6f74 6322 2069 6e20 616e 7369   "bootc" in ansi
│ │ │ -001db6e0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001db6f0: 6573 0a20 2020 2061 6e64 206e 6f74 2022  es.    and not "
│ │ │ -001db700: 6f70 656e 7368 6966 742d 6b75 6265 6c65  openshift-kubele
│ │ │ -001db710: 7422 2069 6e20 616e 7369 626c 655f 6661  t" in ansible_fa
│ │ │ -001db720: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ -001db730: 2022 6f73 7472 6565 2220 696e 2061 6e73   "ostree" in ans
│ │ │ -001db740: 6962 6c65 5f70 726f 635f 636d 646c 696e  ible_proc_cmdlin
│ │ │ -001db750: 650a 2020 2020 2920 616e 6420 6e6f 7420  e.    ) and not 
│ │ │ -001db760: 2820 616e 7369 626c 655f 7669 7274 7561  ( ansible_virtua
│ │ │ -001db770: 6c69 7a61 7469 6f6e 5f74 7970 6520 696e  lization_type in
│ │ │ -001db780: 205b 2264 6f63 6b65 7222 2c20 226c 7863   ["docker", "lxc
│ │ │ -001db790: 222c 2022 6f70 656e 767a 222c 2022 706f  ", "openvz", "po
│ │ │ -001db7a0: 646d 616e 222c 0a20 2020 2022 636f 6e74  dman",.    "cont
│ │ │ -001db7b0: 6169 6e65 7222 5d20 2920 290a 2020 2d20  ainer"] ) ).  - 
│ │ │ -001db7c0: 6d6f 756e 745f 696e 666f 2069 7320 6465  mount_info is de
│ │ │ -001db7d0: 6669 6e65 6420 616e 6420 226e 6f65 7865  fined and "noexe
│ │ │ -001db7e0: 6322 206e 6f74 2069 6e20 286d 6f75 6e74  c" not in (mount
│ │ │ -001db7f0: 5f69 6e66 6f2e 6f70 7469 6f6e 7320 7c20  _info.options | 
│ │ │ -001db800: 6465 6661 756c 7428 2727 2929 0a20 2074  default('')).  t
│ │ │ -001db810: 6167 733a 0a20 202d 204e 4953 542d 3830  ags:.  - NIST-80
│ │ │ -001db820: 302d 3533 2d43 4d2d 3628 6229 0a20 202d  0-53-CM-6(b).  -
│ │ │ -001db830: 2063 6f6e 6669 6775 7265 5f73 7472 6174   configure_strat
│ │ │ -001db840: 6567 790a 2020 2d20 6869 6768 5f64 6973  egy.  - high_dis
│ │ │ -001db850: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f  ruption.  - low_
│ │ │ -001db860: 636f 6d70 6c65 7869 7479 0a20 202d 206d  complexity.  - m
│ │ │ -001db870: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ -001db880: 202d 206d 6f75 6e74 5f6f 7074 696f 6e5f   - mount_option_
│ │ │ -001db890: 686f 6d65 5f6e 6f65 7865 630a 2020 2d20  home_noexec.  - 
│ │ │ -001db8a0: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ -001db8b0: 0a0a 2d20 6e61 6d65 3a20 2741 6464 206e  ..- name: 'Add n
│ │ │ -001db8c0: 6f65 7865 6320 4f70 7469 6f6e 2074 6f20  oexec Option to 
│ │ │ -001db8d0: 2f68 6f6d 653a 2045 6e73 7572 6520 2f68  /home: Ensure /h
│ │ │ -001db8e0: 6f6d 6520 6973 206d 6f75 6e74 6564 2077  ome is mounted w
│ │ │ -001db8f0: 6974 6820 6e6f 6578 6563 206f 7074 696f  ith noexec optio
│ │ │ -001db900: 6e27 0a20 2061 6e73 6962 6c65 2e70 6f73  n'.  ansible.pos
│ │ │ -001db910: 6978 2e6d 6f75 6e74 3a0a 2020 2020 7061  ix.mount:.    pa
│ │ │ -001db920: 7468 3a20 2f68 6f6d 650a 2020 2020 7372  th: /home.    sr
│ │ │ -001db930: 633a 2027 7b7b 206d 6f75 6e74 5f69 6e66  c: '{{ mount_inf
│ │ │ -001db940: 6f2e 736f 7572 6365 207c 2064 6566 6175  o.source | defau
│ │ │ -001db950: 6c74 2827 2727 2729 207d 7d27 0a20 2020  lt('''') }}'.   
│ │ │ -001db960: 206f 7074 733a 2027 7b7b 206d 6f75 6e74   opts: '{{ mount
│ │ │ -001db970: 5f69 6e66 6f2e 6f70 7469 6f6e 7320 7c20  _info.options | 
│ │ │ -001db980: 6465 6661 756c 7428 2727 2727 2920 7d7d  default('''') }}
│ │ │ -001db990: 270a 2020 2020 7374 6174 653a 206d 6f75  '.    state: mou
│ │ │ -001db9a0: 6e74 6564 0a20 2020 2066 7374 7970 653a  nted.    fstype:
│ │ │ -001db9b0: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f2e   '{{ mount_info.
│ │ │ -001db9c0: 6673 7479 7065 207c 2064 6566 6175 6c74  fstype | default
│ │ │ -001db9d0: 2827 2727 2729 207d 7d27 0a20 2072 6567  ('''') }}'.  reg
│ │ │ -001db9e0: 6973 7465 723a 206d 6f75 6e74 5f72 6573  ister: mount_res
│ │ │ -001db9f0: 756c 740a 2020 6661 696c 6564 5f77 6865  ult.  failed_whe
│ │ │ -001dba00: 6e3a 0a20 202d 206d 6f75 6e74 5f72 6573  n:.  - mount_res
│ │ │ -001dba10: 756c 7420 6973 2066 6169 6c65 640a 2020  ult is failed.  
│ │ │ -001dba20: 2d20 2727 2774 6172 6765 7420 6973 2062  - '''target is b
│ │ │ -001dba30: 7573 7927 2720 6e6f 7420 696e 2028 6d6f  usy'' not in (mo
│ │ │ -001dba40: 756e 745f 7265 7375 6c74 2e6d 7367 207c  unt_result.msg |
│ │ │ -001dba50: 2064 6566 6175 6c74 2827 2727 2729 2927   default(''''))'
│ │ │ -001dba60: 0a20 202d 2027 2727 616c 7265 6164 7920  .  - '''already 
│ │ │ -001dba70: 6d6f 756e 7465 6427 2720 6e6f 7420 696e  mounted'' not in
│ │ │ -001dba80: 2028 6d6f 756e 745f 7265 7375 6c74 2e6d   (mount_result.m
│ │ │ -001dba90: 7367 207c 2064 6566 6175 6c74 2827 2727  sg | default('''
│ │ │ -001dbaa0: 2729 2927 0a20 2077 6865 6e3a 0a20 202d  '))'.  when:.  -
│ │ │ -001dbab0: 2028 206e 6f74 2028 2022 6b65 726e 656c   ( not ( "kernel
│ │ │ -001dbac0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001dbad0: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ -001dbae0: 2262 6f6f 7463 2220 696e 2061 6e73 6962  "bootc" in ansib
│ │ │ -001dbaf0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -001dbb00: 730a 2020 2020 616e 6420 6e6f 7420 226f  s.    and not "o
│ │ │ -001dbb10: 7065 6e73 6869 6674 2d6b 7562 656c 6574  penshift-kubelet
│ │ │ -001dbb20: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001dbb30: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ -001dbb40: 226f 7374 7265 6522 2069 6e20 616e 7369  "ostree" in ansi
│ │ │ -001dbb50: 626c 655f 7072 6f63 5f63 6d64 6c69 6e65  ble_proc_cmdline
│ │ │ -001dbb60: 0a20 2020 2029 2061 6e64 206e 6f74 2028  .    ) and not (
│ │ │ -001dbb70: 2061 6e73 6962 6c65 5f76 6972 7475 616c   ansible_virtual
│ │ │ -001dbb80: 697a 6174 696f 6e5f 7479 7065 2069 6e20  ization_type in 
│ │ │ -001dbb90: 5b22 646f 636b 6572 222c 2022 6c78 6322  ["docker", "lxc"
│ │ │ -001dbba0: 2c20 226f 7065 6e76 7a22 2c20 2270 6f64  , "openvz", "pod
│ │ │ -001dbbb0: 6d61 6e22 2c0a 2020 2020 2263 6f6e 7461  man",.    "conta
│ │ │ -001dbbc0: 696e 6572 225d 2029 2029 0a20 202d 206d  iner"] ) ).  - m
│ │ │ -001dbbd0: 6f75 6e74 5f69 6e66 6f20 6973 2064 6566  ount_info is def
│ │ │ -001dbbe0: 696e 6564 0a20 202d 2028 6465 7669 6365  ined.  - (device
│ │ │ -001dbbf0: 5f6e 616d 652e 7374 646f 7574 2069 7320  _name.stdout is 
│ │ │ -001dbc00: 6465 6669 6e65 6420 616e 6420 2864 6576  defined and (dev
│ │ │ -001dbc10: 6963 655f 6e61 6d65 2e73 7464 6f75 7420  ice_name.stdout 
│ │ │ -001dbc20: 7c20 6c65 6e67 7468 2026 6774 3b20 3029  | length > 0)
│ │ │ -001dbc30: 2920 6f72 2028 222d 2d66 7374 6162 220a  ) or ("--fstab".
│ │ │ -001dbc40: 2020 2020 7c20 6c65 6e67 7468 203d 3d20      | length == 
│ │ │ -001dbc50: 3029 0a20 2074 6167 733a 0a20 202d 204e  0).  tags:.  - N
│ │ │ -001dbc60: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ -001dbc70: 6229 0a20 202d 2063 6f6e 6669 6775 7265  b).  - configure
│ │ │ -001dbc80: 5f73 7472 6174 6567 790a 2020 2d20 6869  _strategy.  - hi
│ │ │ -001dbc90: 6768 5f64 6973 7275 7074 696f 6e0a 2020  gh_disruption.  
│ │ │ -001dbca0: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ -001dbcb0: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ -001dbcc0: 7269 7479 0a20 202d 206d 6f75 6e74 5f6f  rity.  - mount_o
│ │ │ -001dbcd0: 7074 696f 6e5f 686f 6d65 5f6e 6f65 7865  ption_home_noexe
│ │ │ -001dbce0: 630a 2020 2d20 6e6f 5f72 6562 6f6f 745f  c.  - no_reboot_
│ │ │ -001dbcf0: 6e65 6564 6564 0a3c 2f63 6f64 653e 3c2f  needed.Remediati
│ │ │ -001dbdb0: 6f6e 2053 6865 6c6c 2073 6372 6970 7420  on Shell script 
│ │ │ -001dbdc0: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620  ...
< │ │ │ -001dbe60: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
Compl │ │ │ -001daa40: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ -001daa50: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ -001daa70: 2f74 683e 3c74 643e 6869 6768 3c2f 7464 /th>high
Re │ │ │ -001daa90: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -001daaa0: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:configure │ │ │ -001daad0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Reboot:false
# Remedia
│ │ │ -001dbe80: 7469 6f6e 2069 7320 6170 706c 6963 6162  tion is applicab
│ │ │ -001dbe90: 6c65 206f 6e6c 7920 696e 2063 6572 7461  le only in certa
│ │ │ -001dbea0: 696e 2070 6c61 7466 6f72 6d73 0a69 6620  in platforms.if 
│ │ │ -001dbeb0: 2820 2120 2820 7b20 7270 6d20 2d2d 7175  ( ! ( { rpm --qu
│ │ │ -001dbec0: 6965 7420 2d71 206b 6572 6e65 6c20 3b7d  iet -q kernel ;}
│ │ │ -001dbed0: 2026 616d 703b 2661 6d70 3b20 7b20 7270   && { rp
│ │ │ -001dbee0: 6d20 2d2d 7175 6965 7420 2d71 2062 6f6f  m --quiet -q boo
│ │ │ -001dbef0: 7463 203b 7d20 2661 6d70 3b26 616d 703b  tc ;} &&
│ │ │ -001dbf00: 207b 2021 2072 706d 202d 2d71 7569 6574   { ! rpm --quiet
│ │ │ -001dbf10: 202d 7120 6f70 656e 7368 6966 742d 6b75   -q openshift-ku
│ │ │ -001dbf20: 6265 6c65 7420 3b7d 2026 616d 703b 2661  belet ;} &&a
│ │ │ -001dbf30: 6d70 3b20 285b 202d 6620 2f72 756e 2f6f  mp; ([ -f /run/o
│ │ │ -001dbf40: 7374 7265 652d 626f 6f74 6564 205d 207c  stree-booted ] |
│ │ │ -001dbf50: 7c20 5b20 2d4c 202f 6f73 7472 6565 205d  | [ -L /ostree ]
│ │ │ -001dbf60: 2920 2920 2661 6d70 3b26 616d 703b 2021  ) ) && !
│ │ │ -001dbf70: 2028 205b 202d 6620 2f2e 646f 636b 6572   ( [ -f /.docker
│ │ │ -001dbf80: 656e 7620 5d20 7c7c 205b 202d 6620 2f72  env ] || [ -f /r
│ │ │ -001dbf90: 756e 2f2e 636f 6e74 6169 6e65 7265 6e76  un/.containerenv
│ │ │ -001dbfa0: 205d 2029 2029 3b20 7468 656e 0a0a 6675   ] ) ); then..fu
│ │ │ -001dbfb0: 6e63 7469 6f6e 2070 6572 666f 726d 5f72  nction perform_r
│ │ │ -001dbfc0: 656d 6564 6961 7469 6f6e 207b 0a0a 2020  emediation {..  
│ │ │ -001dbfd0: 2020 0a20 2020 2020 2020 2023 2074 6865    .        # the
│ │ │ -001dbfe0: 206d 6f75 6e74 2070 6f69 6e74 202f 686f   mount point /ho
│ │ │ -001dbff0: 6d65 2068 6173 2074 6f20 6265 2064 6566  me has to be def
│ │ │ -001dc000: 696e 6564 2069 6e20 2f65 7463 2f66 7374  ined in /etc/fst
│ │ │ -001dc010: 6162 0a20 2020 2020 2020 2023 2062 6566  ab.        # bef
│ │ │ -001dc020: 6f72 6520 7468 6973 2072 656d 6564 6961  ore this remedia
│ │ │ -001dc030: 7469 6f6e 2063 616e 2062 6520 6578 6563  tion can be exec
│ │ │ -001dc040: 7574 6564 2e20 496e 2063 6173 6520 6974  uted. In case it
│ │ │ -001dc050: 2069 7320 6e6f 7420 6465 6669 6e65 642c   is not defined,
│ │ │ -001dc060: 2074 6865 0a20 2020 2020 2020 2023 2072   the.        # r
│ │ │ -001dc070: 656d 6564 6961 7469 6f6e 2061 626f 7274  emediation abort
│ │ │ -001dc080: 7320 616e 6420 6e6f 2063 6861 6e67 6573  s and no changes
│ │ │ -001dc090: 2072 6567 6172 6469 6e67 2074 6865 206d   regarding the m
│ │ │ -001dc0a0: 6f75 6e74 2070 6f69 6e74 2061 7265 2064  ount point are d
│ │ │ -001dc0b0: 6f6e 652e 0a20 2020 2020 2020 206d 6f75  one..        mou
│ │ │ -001dc0c0: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ -001dc0d0: 6567 6578 703d 2224 2870 7269 6e74 6620  egexp="$(printf 
│ │ │ -001dc0e0: 225e 5b5b 3a73 7061 6365 3a5d 5d2a 5b5e  "^[[:space:]]*[^
│ │ │ -001dc0f0: 235d 2e2a 5b5b 3a73 7061 6365 3a5d 5d25  #].*[[:space:]]%
│ │ │ -001dc100: 735b 5b3a 7370 6163 653a 5d5d 2220 222f  s[[:space:]]" "/
│ │ │ -001dc110: 686f 6d65 2229 220a 0a20 2020 2067 7265  home")"..    gre
│ │ │ -001dc120: 7020 2224 6d6f 756e 745f 706f 696e 745f  p "$mount_point_
│ │ │ -001dc130: 6d61 7463 685f 7265 6765 7870 2220 2d71  match_regexp" -q
│ │ │ -001dc140: 202f 6574 632f 6673 7461 6220 5c0a 2020   /etc/fstab \.  
│ │ │ -001dc150: 2020 2020 2020 7c7c 207b 2065 6368 6f20        || { echo 
│ │ │ -001dc160: 2254 6865 206d 6f75 6e74 2070 6f69 6e74  "The mount point
│ │ │ -001dc170: 2027 2f68 6f6d 6527 2069 7320 6e6f 7420   '/home' is not 
│ │ │ -001dc180: 6576 656e 2069 6e20 2f65 7463 2f66 7374  even in /etc/fst
│ │ │ -001dc190: 6162 2c20 736f 2077 6520 6361 6e27 7420  ab, so we can't 
│ │ │ -001dc1a0: 7365 7420 7570 206d 6f75 6e74 206f 7074  set up mount opt
│ │ │ -001dc1b0: 696f 6e73 2220 2667 743b 2661 6d70 3b32  ions" >&2
│ │ │ -001dc1c0: 3b0a 2020 2020 2020 2020 2020 2020 2020  ;.              
│ │ │ -001dc1d0: 2020 6563 686f 2022 4e6f 7420 7265 6d65    echo "Not reme
│ │ │ -001dc1e0: 6469 6174 696e 672c 2062 6563 6175 7365  diating, because
│ │ │ -001dc1f0: 2074 6865 7265 2069 7320 6e6f 2072 6563   there is no rec
│ │ │ -001dc200: 6f72 6420 6f66 202f 686f 6d65 2069 6e20  ord of /home in 
│ │ │ -001dc210: 2f65 7463 2f66 7374 6162 2220 2667 743b  /etc/fstab" >
│ │ │ -001dc220: 2661 6d70 3b32 3b20 7265 7475 726e 2031  &2; return 1
│ │ │ -001dc230: 3b20 7d0a 2020 2020 0a0a 0a20 2020 206d  ; }.    ...    m
│ │ │ -001dc240: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ -001dc250: 5f72 6567 6578 703d 2224 2870 7269 6e74  _regexp="$(print
│ │ │ -001dc260: 6620 225e 5b5b 3a73 7061 6365 3a5d 5d2a  f "^[[:space:]]*
│ │ │ -001dc270: 5b5e 235d 2e2a 5b5b 3a73 7061 6365 3a5d  [^#].*[[:space:]
│ │ │ -001dc280: 5d25 735b 5b3a 7370 6163 653a 5d5d 2220  ]%s[[:space:]]" 
│ │ │ -001dc290: 2f68 6f6d 6529 220a 0a20 2020 2023 2049  /home)"..    # I
│ │ │ -001dc2a0: 6620 7468 6520 6d6f 756e 7420 706f 696e  f the mount poin
│ │ │ -001dc2b0: 7420 6973 206e 6f74 2069 6e20 2f65 7463  t is not in /etc
│ │ │ -001dc2c0: 2f66 7374 6162 2c20 6765 7420 7072 6576  /fstab, get prev
│ │ │ -001dc2d0: 696f 7573 206d 6f75 6e74 206f 7074 696f  ious mount optio
│ │ │ -001dc2e0: 6e73 2066 726f 6d20 2f65 7463 2f6d 7461  ns from /etc/mta
│ │ │ -001dc2f0: 620a 2020 2020 6966 2021 2067 7265 7020  b.    if ! grep 
│ │ │ -001dc300: 2d71 2022 246d 6f75 6e74 5f70 6f69 6e74  -q "$mount_point
│ │ │ -001dc310: 5f6d 6174 6368 5f72 6567 6578 7022 202f  _match_regexp" /
│ │ │ -001dc320: 6574 632f 6673 7461 623b 2074 6865 6e0a  etc/fstab; then.
│ │ │ -001dc330: 2020 2020 2020 2020 2320 7275 6e74 696d          # runtim
│ │ │ -001dc340: 6520 6f70 7473 2077 6974 686f 7574 2073  e opts without s
│ │ │ -001dc350: 6f6d 6520 6175 746f 6d61 7469 6320 6b65  ome automatic ke
│ │ │ -001dc360: 726e 656c 2f75 7365 7273 7061 6365 2d61  rnel/userspace-a
│ │ │ -001dc370: 6464 6564 2064 6566 6175 6c74 730a 2020  dded defaults.  
│ │ │ -001dc380: 2020 2020 2020 7072 6576 696f 7573 5f6d        previous_m
│ │ │ -001dc390: 6f75 6e74 5f6f 7074 733d 2428 6772 6570  ount_opts=$(grep
│ │ │ -001dc3a0: 2022 246d 6f75 6e74 5f70 6f69 6e74 5f6d   "$mount_point_m
│ │ │ -001dc3b0: 6174 6368 5f72 6567 6578 7022 202f 6574  atch_regexp" /et
│ │ │ -001dc3c0: 632f 6d74 6162 207c 2068 6561 6420 2d31  c/mtab | head -1
│ │ │ -001dc3d0: 207c 2020 6177 6b20 277b 7072 696e 7420   |  awk '{print 
│ │ │ -001dc3e0: 2434 7d27 205c 0a20 2020 2020 2020 2020  $4}' \.         
│ │ │ -001dc3f0: 2020 2020 2020 2020 2020 207c 2073 6564             | sed
│ │ │ -001dc400: 202d 4520 2273 2f28 7277 7c64 6566 6175   -E "s/(rw|defau
│ │ │ -001dc410: 6c74 737c 7365 636c 6162 656c 7c6e 6f65  lts|seclabel|noe
│ │ │ -001dc420: 7865 6329 282c 7c24 292f 2f67 3b73 2f2c  xec)(,|$)//g;s/,
│ │ │ -001dc430: 242f 2f22 290a 2020 2020 2020 2020 5b20  $//").        [ 
│ │ │ -001dc440: 2224 7072 6576 696f 7573 5f6d 6f75 6e74  "$previous_mount
│ │ │ -001dc450: 5f6f 7074 7322 205d 2026 616d 703b 2661  _opts" ] &&a
│ │ │ -001dc460: 6d70 3b20 7072 6576 696f 7573 5f6d 6f75  mp; previous_mou
│ │ │ -001dc470: 6e74 5f6f 7074 732b 3d22 2c22 0a20 2020  nt_opts+=",".   
│ │ │ -001dc480: 2020 2020 2023 2049 6e20 6973 6f39 3636       # In iso966
│ │ │ -001dc490: 3020 6669 6c65 7379 7374 656d 7320 6d74  0 filesystems mt
│ │ │ -001dc4a0: 6162 2063 6f75 6c64 2064 6573 6372 6962  ab could describ
│ │ │ -001dc4b0: 6520 6120 2262 6c6f 636b 7369 7a65 2220  e a "blocksize" 
│ │ │ -001dc4c0: 7661 6c75 652c 2074 6869 7320 7368 6f75  value, this shou
│ │ │ -001dc4d0: 6c64 2062 6520 7265 666c 6563 7465 6420  ld be reflected 
│ │ │ -001dc4e0: 696e 0a20 2020 2020 2020 2023 2066 7374  in.        # fst
│ │ │ -001dc4f0: 6162 2061 7320 2262 6c6f 636b 222e 2020  ab as "block".  
│ │ │ -001dc500: 5468 6520 6e65 7874 2076 6172 6961 626c  The next variabl
│ │ │ -001dc510: 6520 6973 2074 6f20 7361 7469 7366 7920  e is to satisfy 
│ │ │ -001dc520: 7368 656c 6c63 6865 636b 2053 4332 3035  shellcheck SC205
│ │ │ -001dc530: 302e 0a20 2020 2020 2020 2066 735f 7479  0..        fs_ty
│ │ │ -001dc540: 7065 3d22 220a 2020 2020 2020 2020 6966  pe="".        if
│ │ │ -001dc550: 205b 2020 2224 6673 5f74 7970 6522 203d   [  "$fs_type" =
│ │ │ -001dc560: 3d20 2269 736f 3936 3630 2220 5d20 3b20  = "iso9660" ] ; 
│ │ │ -001dc570: 7468 656e 0a20 2020 2020 2020 2020 2020  then.           
│ │ │ -001dc580: 2070 7265 7669 6f75 735f 6d6f 756e 745f   previous_mount_
│ │ │ -001dc590: 6f70 7473 3d24 2873 6564 2027 732f 626c  opts=$(sed 's/bl
│ │ │ -001dc5a0: 6f63 6b73 697a 653d 2f62 6c6f 636b 3d2f  ocksize=/block=/
│ │ │ -001dc5b0: 2720 266c 743b 266c 743b 266c 743b 2022  ' <<< "
│ │ │ -001dc5c0: 2470 7265 7669 6f75 735f 6d6f 756e 745f  $previous_mount_
│ │ │ -001dc5d0: 6f70 7473 2229 0a20 2020 2020 2020 2066  opts").        f
│ │ │ -001dc5e0: 690a 2020 2020 2020 2020 6563 686f 2022  i.        echo "
│ │ │ -001dc5f0: 202f 686f 6d65 2020 6465 6661 756c 7473   /home  defaults
│ │ │ -001dc600: 2c24 7b70 7265 7669 6f75 735f 6d6f 756e  ,${previous_moun
│ │ │ -001dc610: 745f 6f70 7473 7d6e 6f65 7865 6320 3020  t_opts}noexec 0 
│ │ │ -001dc620: 3022 2026 6774 3b26 6774 3b20 2f65 7463  0" >> /etc
│ │ │ -001dc630: 2f66 7374 6162 0a20 2020 2023 2049 6620  /fstab.    # If 
│ │ │ -001dc640: 7468 6520 6d6f 756e 745f 6f70 7420 6f70  the mount_opt op
│ │ │ -001dc650: 7469 6f6e 2069 7320 6e6f 7420 616c 7265  tion is not alre
│ │ │ -001dc660: 6164 7920 696e 2074 6865 206d 6f75 6e74  ady in the mount
│ │ │ -001dc670: 2070 6f69 6e74 2773 202f 6574 632f 6673   point's /etc/fs
│ │ │ -001dc680: 7461 6220 656e 7472 792c 2061 6464 2069  tab entry, add i
│ │ │ -001dc690: 740a 2020 2020 656c 6966 2021 2067 7265  t.    elif ! gre
│ │ │ -001dc6a0: 7020 2224 6d6f 756e 745f 706f 696e 745f  p "$mount_point_
│ │ │ -001dc6b0: 6d61 7463 685f 7265 6765 7870 2220 2f65  match_regexp" /e
│ │ │ -001dc6c0: 7463 2f66 7374 6162 207c 2067 7265 7020  tc/fstab | grep 
│ │ │ -001dc6d0: 2d71 2022 6e6f 6578 6563 223b 2074 6865  -q "noexec"; the
│ │ │ -001dc6e0: 6e0a 2020 2020 2020 2020 7072 6576 696f  n.        previo
│ │ │ -001dc6f0: 7573 5f6d 6f75 6e74 5f6f 7074 733d 2428  us_mount_opts=$(
│ │ │ -001dc700: 6772 6570 2022 246d 6f75 6e74 5f70 6f69  grep "$mount_poi
│ │ │ -001dc710: 6e74 5f6d 6174 6368 5f72 6567 6578 7022  nt_match_regexp"
│ │ │ -001dc720: 202f 6574 632f 6673 7461 6220 7c20 6177   /etc/fstab | aw
│ │ │ -001dc730: 6b20 277b 7072 696e 7420 2434 7d27 290a  k '{print $4}').
│ │ │ -001dc740: 2020 2020 2020 2020 7365 6420 2d69 2022          sed -i "
│ │ │ -001dc750: 737c 5c28 247b 6d6f 756e 745f 706f 696e  s|\(${mount_poin
│ │ │ -001dc760: 745f 6d61 7463 685f 7265 6765 7870 7d2e  t_match_regexp}.
│ │ │ -001dc770: 2a24 7b70 7265 7669 6f75 735f 6d6f 756e  *${previous_moun
│ │ │ -001dc780: 745f 6f70 7473 7d5c 297c 5c31 2c6e 6f65  t_opts}\)|\1,noe
│ │ │ -001dc790: 7865 637c 2220 2f65 7463 2f66 7374 6162  xec|" /etc/fstab
│ │ │ -001dc7a0: 0a20 2020 2066 690a 0a0a 2020 2020 6966  .    fi...    if
│ │ │ -001dc7b0: 206d 6b64 6972 202d 7020 222f 686f 6d65   mkdir -p "/home
│ │ │ -001dc7c0: 223b 2074 6865 6e0a 2020 2020 2020 2020  "; then.        
│ │ │ -001dc7d0: 6966 206d 6f75 6e74 706f 696e 7420 2d71  if mountpoint -q
│ │ │ -001dc7e0: 2022 2f68 6f6d 6522 3b20 7468 656e 0a20   "/home"; then. 
│ │ │ -001dc7f0: 2020 2020 2020 2020 2020 206d 6f75 6e74             mount
│ │ │ -001dc800: 202d 6f20 7265 6d6f 756e 7420 2d2d 7461   -o remount --ta
│ │ │ -001dc810: 7267 6574 2022 2f68 6f6d 6522 0a20 2020  rget "/home".   
│ │ │ -001dc820: 2020 2020 2066 690a 2020 2020 6669 0a7d       fi.    fi.}
│ │ │ -001dc830: 0a0a 7065 7266 6f72 6d5f 7265 6d65 6469  ..perform_remedi
│ │ │ -001dc840: 6174 696f 6e0a 0a65 6c73 650a 2020 2020  ation..else.    
│ │ │ -001dc850: 2667 743b 2661 6d70 3b32 2065 6368 6f20  >&2 echo 
│ │ │ -001dc860: 2752 656d 6564 6961 7469 6f6e 2069 7320  'Remediation is 
│ │ │ -001dc870: 6e6f 7420 6170 706c 6963 6162 6c65 2c20  not applicable, 
│ │ │ -001dc880: 6e6f 7468 696e 6720 7761 7320 646f 6e65  nothing was done
│ │ │ -001dc890: 270a 6669 0a3c 2f63 6f64 653e 3c2f 7072  '.fi.
Complexity │ │ │ +001da820: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ +001da840: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ +001da850: 7464 3e68 6967 683c 2f74 643e 3c2f 7472 td>highReboot: │ │ │ +001da870: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ +001da890: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:configure │ │ │ +001da8b0: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072 - name: │ │ │ +001da8d0: 4761 7468 6572 2074 6865 2070 6163 6b61 Gather the packa │ │ │ +001da8e0: 6765 2066 6163 7473 0a20 2070 6163 6b61 ge facts. packa │ │ │ +001da8f0: 6765 5f66 6163 7473 3a0a 2020 2020 6d61 ge_facts:. ma │ │ │ +001da900: 6e61 6765 723a 2061 7574 6f0a 2020 7461 nager: auto. ta │ │ │ +001da910: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030 gs:. - NIST-800 │ │ │ +001da920: 2d35 332d 434d 2d36 2862 290a 2020 2d20 -53-CM-6(b). - │ │ │ +001da930: 636f 6e66 6967 7572 655f 7374 7261 7465 configure_strate │ │ │ +001da940: 6779 0a20 202d 2068 6967 685f 6469 7372 gy. - high_disr │ │ │ +001da950: 7570 7469 6f6e 0a20 202d 206c 6f77 5f63 uption. - low_c │ │ │ +001da960: 6f6d 706c 6578 6974 790a 2020 2d20 6d65 omplexity. - me │ │ │ +001da970: 6469 756d 5f73 6576 6572 6974 790a 2020 dium_severity. │ │ │ +001da980: 2d20 6d6f 756e 745f 6f70 7469 6f6e 5f68 - mount_option_h │ │ │ +001da990: 6f6d 655f 6e6f 6578 6563 0a20 202d 206e ome_noexec. - n │ │ │ +001da9a0: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a o_reboot_needed. │ │ │ +001da9b0: 0a2d 206e 616d 653a 2027 4164 6420 6e6f .- name: 'Add no │ │ │ +001da9c0: 6578 6563 204f 7074 696f 6e20 746f 202f exec Option to / │ │ │ +001da9d0: 686f 6d65 3a20 4368 6563 6b20 696e 666f home: Check info │ │ │ +001da9e0: 726d 6174 696f 6e20 6173 736f 6369 6174 rmation associat │ │ │ +001da9f0: 6564 2074 6f20 6d6f 756e 7470 6f69 6e74 ed to mountpoint │ │ │ +001daa00: 270a 2020 616e 7369 626c 652e 6275 696c '. ansible.buil │ │ │ +001daa10: 7469 6e2e 636f 6d6d 616e 643a 2066 696e tin.command: fin │ │ │ +001daa20: 646d 6e74 202d 2d66 7374 6162 2027 2f68 dmnt --fstab '/h │ │ │ +001daa30: 6f6d 6527 0a20 2072 6567 6973 7465 723a ome'. register: │ │ │ +001daa40: 2064 6576 6963 655f 6e61 6d65 0a20 2066 device_name. f │ │ │ +001daa50: 6169 6c65 645f 7768 656e 3a20 6465 7669 ailed_when: devi │ │ │ +001daa60: 6365 5f6e 616d 652e 7263 2026 6774 3b20 ce_name.rc > │ │ │ +001daa70: 310a 2020 6368 616e 6765 645f 7768 656e 1. changed_when │ │ │ +001daa80: 3a20 6661 6c73 650a 2020 6368 6563 6b5f : false. check_ │ │ │ +001daa90: 6d6f 6465 3a20 6661 6c73 650a 2020 7768 mode: false. wh │ │ │ +001daaa0: 656e 3a20 2820 6e6f 7420 2820 226b 6572 en: ( not ( "ker │ │ │ +001daab0: 6e65 6c22 2069 6e20 616e 7369 626c 655f nel" in ansible_ │ │ │ +001daac0: 6661 6374 732e 7061 636b 6167 6573 2061 facts.packages a │ │ │ +001daad0: 6e64 2022 626f 6f74 6322 2069 6e20 616e nd "bootc" in an │ │ │ +001daae0: 7369 626c 655f 6661 6374 732e 7061 636b sible_facts.pack │ │ │ +001daaf0: 6167 6573 0a20 2020 2061 6e64 206e 6f74 ages. and not │ │ │ +001dab00: 2022 6f70 656e 7368 6966 742d 6b75 6265 "openshift-kube │ │ │ +001dab10: 6c65 7422 2069 6e20 616e 7369 626c 655f let" in ansible_ │ │ │ +001dab20: 6661 6374 732e 7061 636b 6167 6573 2061 facts.packages a │ │ │ +001dab30: 6e64 2022 6f73 7472 6565 2220 696e 2061 nd "ostree" in a │ │ │ +001dab40: 6e73 6962 6c65 5f70 726f 635f 636d 646c nsible_proc_cmdl │ │ │ +001dab50: 696e 650a 2020 2020 2920 616e 6420 6e6f ine. ) and no │ │ │ +001dab60: 7420 2820 616e 7369 626c 655f 7669 7274 t ( ansible_virt │ │ │ +001dab70: 7561 6c69 7a61 7469 6f6e 5f74 7970 6520 ualization_type │ │ │ +001dab80: 696e 205b 2264 6f63 6b65 7222 2c20 226c in ["docker", "l │ │ │ +001dab90: 7863 222c 2022 6f70 656e 767a 222c 2022 xc", "openvz", " │ │ │ +001daba0: 706f 646d 616e 222c 0a20 2020 2022 636f podman",. "co │ │ │ +001dabb0: 6e74 6169 6e65 7222 5d20 2920 290a 2020 ntainer"] ) ). │ │ │ +001dabc0: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38 tags:. - NIST-8 │ │ │ +001dabd0: 3030 2d35 332d 434d 2d36 2862 290a 2020 00-53-CM-6(b). │ │ │ +001dabe0: 2d20 636f 6e66 6967 7572 655f 7374 7261 - configure_stra │ │ │ +001dabf0: 7465 6779 0a20 202d 2068 6967 685f 6469 tegy. - high_di │ │ │ +001dac00: 7372 7570 7469 6f6e 0a20 202d 206c 6f77 sruption. - low │ │ │ +001dac10: 5f63 6f6d 706c 6578 6974 790a 2020 2d20 _complexity. - │ │ │ +001dac20: 6d65 6469 756d 5f73 6576 6572 6974 790a medium_severity. │ │ │ +001dac30: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e - mount_option │ │ │ +001dac40: 5f68 6f6d 655f 6e6f 6578 6563 0a20 202d _home_noexec. - │ │ │ +001dac50: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465 no_reboot_neede │ │ │ +001dac60: 640a 0a2d 206e 616d 653a 2027 4164 6420 d..- name: 'Add │ │ │ +001dac70: 6e6f 6578 6563 204f 7074 696f 6e20 746f noexec Option to │ │ │ +001dac80: 202f 686f 6d65 3a20 4372 6561 7465 206d /home: Create m │ │ │ +001dac90: 6f75 6e74 5f69 6e66 6f20 6469 6374 696f ount_info dictio │ │ │ +001daca0: 6e61 7279 2076 6172 6961 626c 6527 0a20 nary variable'. │ │ │ +001dacb0: 2073 6574 5f66 6163 743a 0a20 2020 206d set_fact:. m │ │ │ +001dacc0: 6f75 6e74 5f69 6e66 6f3a 2027 7b7b 206d ount_info: '{{ m │ │ │ +001dacd0: 6f75 6e74 5f69 6e66 6f7c 6465 6661 756c ount_info|defaul │ │ │ +001dace0: 7428 7b7d 297c 636f 6d62 696e 6528 7b69 t({})|combine({i │ │ │ +001dacf0: 7465 6d2e 303a 2069 7465 6d2e 317d 2920 tem.0: item.1}) │ │ │ +001dad00: 7d7d 270a 2020 7769 7468 5f74 6f67 6574 }}'. with_toget │ │ │ +001dad10: 6865 723a 0a20 202d 2027 7b7b 2064 6576 her:. - '{{ dev │ │ │ +001dad20: 6963 655f 6e61 6d65 2e73 7464 6f75 745f ice_name.stdout_ │ │ │ +001dad30: 6c69 6e65 735b 305d 2e73 706c 6974 2829 lines[0].split() │ │ │ +001dad40: 207c 206d 6170 2827 276c 6f77 6572 2727 | map(''lower'' │ │ │ +001dad50: 2920 7c20 6c69 7374 207d 7d27 0a20 202d ) | list }}'. - │ │ │ +001dad60: 2027 7b7b 2064 6576 6963 655f 6e61 6d65 '{{ device_name │ │ │ +001dad70: 2e73 7464 6f75 745f 6c69 6e65 735b 315d .stdout_lines[1] │ │ │ +001dad80: 2e73 706c 6974 2829 207c 206c 6973 7420 .split() | list │ │ │ +001dad90: 7d7d 270a 2020 7768 656e 3a0a 2020 2d20 }}'. when:. - │ │ │ +001dada0: 2820 6e6f 7420 2820 226b 6572 6e65 6c22 ( not ( "kernel" │ │ │ +001dadb0: 2069 6e20 616e 7369 626c 655f 6661 6374 in ansible_fact │ │ │ +001dadc0: 732e 7061 636b 6167 6573 2061 6e64 2022 s.packages and " │ │ │ +001dadd0: 626f 6f74 6322 2069 6e20 616e 7369 626c bootc" in ansibl │ │ │ +001dade0: 655f 6661 6374 732e 7061 636b 6167 6573 e_facts.packages │ │ │ +001dadf0: 0a20 2020 2061 6e64 206e 6f74 2022 6f70 . and not "op │ │ │ +001dae00: 656e 7368 6966 742d 6b75 6265 6c65 7422 enshift-kubelet" │ │ │ +001dae10: 2069 6e20 616e 7369 626c 655f 6661 6374 in ansible_fact │ │ │ +001dae20: 732e 7061 636b 6167 6573 2061 6e64 2022 s.packages and " │ │ │ +001dae30: 6f73 7472 6565 2220 696e 2061 6e73 6962 ostree" in ansib │ │ │ +001dae40: 6c65 5f70 726f 635f 636d 646c 696e 650a le_proc_cmdline. │ │ │ +001dae50: 2020 2020 2920 616e 6420 6e6f 7420 2820 ) and not ( │ │ │ +001dae60: 616e 7369 626c 655f 7669 7274 7561 6c69 ansible_virtuali │ │ │ +001dae70: 7a61 7469 6f6e 5f74 7970 6520 696e 205b zation_type in [ │ │ │ +001dae80: 2264 6f63 6b65 7222 2c20 226c 7863 222c "docker", "lxc", │ │ │ +001dae90: 2022 6f70 656e 767a 222c 2022 706f 646d "openvz", "podm │ │ │ +001daea0: 616e 222c 0a20 2020 2022 636f 6e74 6169 an",. "contai │ │ │ +001daeb0: 6e65 7222 5d20 2920 290a 2020 2d20 6465 ner"] ) ). - de │ │ │ +001daec0: 7669 6365 5f6e 616d 652e 7374 646f 7574 vice_name.stdout │ │ │ +001daed0: 2069 7320 6465 6669 6e65 6420 616e 6420 is defined and │ │ │ +001daee0: 6465 7669 6365 5f6e 616d 652e 7374 646f device_name.stdo │ │ │ +001daef0: 7574 5f6c 696e 6573 2069 7320 6465 6669 ut_lines is defi │ │ │ +001daf00: 6e65 640a 2020 2d20 2864 6576 6963 655f ned. - (device_ │ │ │ +001daf10: 6e61 6d65 2e73 7464 6f75 7420 7c20 6c65 name.stdout | le │ │ │ +001daf20: 6e67 7468 2026 6774 3b20 3029 0a20 2074 ngth > 0). t │ │ │ +001daf30: 6167 733a 0a20 202d 204e 4953 542d 3830 ags:. - NIST-80 │ │ │ +001daf40: 302d 3533 2d43 4d2d 3628 6229 0a20 202d 0-53-CM-6(b). - │ │ │ +001daf50: 2063 6f6e 6669 6775 7265 5f73 7472 6174 configure_strat │ │ │ +001daf60: 6567 790a 2020 2d20 6869 6768 5f64 6973 egy. - high_dis │ │ │ +001daf70: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f ruption. - low_ │ │ │ +001daf80: 636f 6d70 6c65 7869 7479 0a20 202d 206d complexity. - m │ │ │ +001daf90: 6564 6975 6d5f 7365 7665 7269 7479 0a20 edium_severity. │ │ │ +001dafa0: 202d 206d 6f75 6e74 5f6f 7074 696f 6e5f - mount_option_ │ │ │ +001dafb0: 686f 6d65 5f6e 6f65 7865 630a 2020 2d20 home_noexec. - │ │ │ +001dafc0: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564 no_reboot_needed │ │ │ +001dafd0: 0a0a 2d20 6e61 6d65 3a20 2741 6464 206e ..- name: 'Add n │ │ │ +001dafe0: 6f65 7865 6320 4f70 7469 6f6e 2074 6f20 oexec Option to │ │ │ +001daff0: 2f68 6f6d 653a 2049 6620 2f68 6f6d 6520 /home: If /home │ │ │ +001db000: 6e6f 7420 6d6f 756e 7465 642c 2063 7261 not mounted, cra │ │ │ +001db010: 6674 206d 6f75 6e74 5f69 6e66 6f20 6d61 ft mount_info ma │ │ │ +001db020: 6e75 616c 6c79 270a 2020 7365 745f 6661 nually'. set_fa │ │ │ +001db030: 6374 3a0a 2020 2020 6d6f 756e 745f 696e ct:. mount_in │ │ │ +001db040: 666f 3a20 277b 7b20 6d6f 756e 745f 696e fo: '{{ mount_in │ │ │ +001db050: 666f 7c64 6566 6175 6c74 287b 7d29 7c63 fo|default({})|c │ │ │ +001db060: 6f6d 6269 6e65 287b 6974 656d 2e30 3a20 ombine({item.0: │ │ │ +001db070: 6974 656d 2e31 7d29 207d 7d27 0a20 2077 item.1}) }}'. w │ │ │ +001db080: 6974 685f 746f 6765 7468 6572 3a0a 2020 ith_together:. │ │ │ +001db090: 2d20 2d20 7461 7267 6574 0a20 2020 202d - - target. - │ │ │ +001db0a0: 2073 6f75 7263 650a 2020 2020 2d20 6673 source. - fs │ │ │ +001db0b0: 7479 7065 0a20 2020 202d 206f 7074 696f type. - optio │ │ │ +001db0c0: 6e73 0a20 202d 202d 202f 686f 6d65 0a20 ns. - - /home. │ │ │ +001db0d0: 2020 202d 2027 270a 2020 2020 2d20 2727 - ''. - '' │ │ │ +001db0e0: 0a20 2020 202d 2064 6566 6175 6c74 730a . - defaults. │ │ │ +001db0f0: 2020 7768 656e 3a0a 2020 2d20 2820 6e6f when:. - ( no │ │ │ +001db100: 7420 2820 226b 6572 6e65 6c22 2069 6e20 t ( "kernel" in │ │ │ +001db110: 616e 7369 626c 655f 6661 6374 732e 7061 ansible_facts.pa │ │ │ +001db120: 636b 6167 6573 2061 6e64 2022 626f 6f74 ckages and "boot │ │ │ +001db130: 6322 2069 6e20 616e 7369 626c 655f 6661 c" in ansible_fa │ │ │ +001db140: 6374 732e 7061 636b 6167 6573 0a20 2020 cts.packages. │ │ │ +001db150: 2061 6e64 206e 6f74 2022 6f70 656e 7368 and not "opensh │ │ │ +001db160: 6966 742d 6b75 6265 6c65 7422 2069 6e20 ift-kubelet" in │ │ │ +001db170: 616e 7369 626c 655f 6661 6374 732e 7061 ansible_facts.pa │ │ │ +001db180: 636b 6167 6573 2061 6e64 2022 6f73 7472 ckages and "ostr │ │ │ +001db190: 6565 2220 696e 2061 6e73 6962 6c65 5f70 ee" in ansible_p │ │ │ +001db1a0: 726f 635f 636d 646c 696e 650a 2020 2020 roc_cmdline. │ │ │ +001db1b0: 2920 616e 6420 6e6f 7420 2820 616e 7369 ) and not ( ansi │ │ │ +001db1c0: 626c 655f 7669 7274 7561 6c69 7a61 7469 ble_virtualizati │ │ │ +001db1d0: 6f6e 5f74 7970 6520 696e 205b 2264 6f63 on_type in ["doc │ │ │ +001db1e0: 6b65 7222 2c20 226c 7863 222c 2022 6f70 ker", "lxc", "op │ │ │ +001db1f0: 656e 767a 222c 2022 706f 646d 616e 222c envz", "podman", │ │ │ +001db200: 0a20 2020 2022 636f 6e74 6169 6e65 7222 . "container" │ │ │ +001db210: 5d20 2920 290a 2020 2d20 2822 2d2d 6673 ] ) ). - ("--fs │ │ │ +001db220: 7461 6222 207c 206c 656e 6774 6820 3d3d tab" | length == │ │ │ +001db230: 2030 290a 2020 2d20 6465 7669 6365 5f6e 0). - device_n │ │ │ +001db240: 616d 652e 7374 646f 7574 2069 7320 6465 ame.stdout is de │ │ │ +001db250: 6669 6e65 6420 616e 6420 6465 7669 6365 fined and device │ │ │ +001db260: 5f6e 616d 652e 7374 646f 7574 5f6c 696e _name.stdout_lin │ │ │ +001db270: 6573 2069 7320 6465 6669 6e65 640a 2020 es is defined. │ │ │ +001db280: 2d20 2864 6576 6963 655f 6e61 6d65 2e73 - (device_name.s │ │ │ +001db290: 7464 6f75 7420 7c20 6c65 6e67 7468 203d tdout | length = │ │ │ +001db2a0: 3d20 3029 0a20 2074 6167 733a 0a20 202d = 0). tags:. - │ │ │ +001db2b0: 204e 4953 542d 3830 302d 3533 2d43 4d2d NIST-800-53-CM- │ │ │ +001db2c0: 3628 6229 0a20 202d 2063 6f6e 6669 6775 6(b). - configu │ │ │ +001db2d0: 7265 5f73 7472 6174 6567 790a 2020 2d20 re_strategy. - │ │ │ +001db2e0: 6869 6768 5f64 6973 7275 7074 696f 6e0a high_disruption. │ │ │ +001db2f0: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869 - low_complexi │ │ │ +001db300: 7479 0a20 202d 206d 6564 6975 6d5f 7365 ty. - medium_se │ │ │ +001db310: 7665 7269 7479 0a20 202d 206d 6f75 6e74 verity. - mount │ │ │ +001db320: 5f6f 7074 696f 6e5f 686f 6d65 5f6e 6f65 _option_home_noe │ │ │ +001db330: 7865 630a 2020 2d20 6e6f 5f72 6562 6f6f xec. - no_reboo │ │ │ +001db340: 745f 6e65 6564 6564 0a0a 2d20 6e61 6d65 t_needed..- name │ │ │ +001db350: 3a20 2741 6464 206e 6f65 7865 6320 4f70 : 'Add noexec Op │ │ │ +001db360: 7469 6f6e 2074 6f20 2f68 6f6d 653a 204d tion to /home: M │ │ │ +001db370: 616b 6520 7375 7265 206e 6f65 7865 6320 ake sure noexec │ │ │ +001db380: 6f70 7469 6f6e 2069 7320 7061 7274 206f option is part o │ │ │ +001db390: 6620 7468 6520 746f 202f 686f 6d65 0a20 f the to /home. │ │ │ +001db3a0: 2020 206f 7074 696f 6e73 270a 2020 7365 options'. se │ │ │ +001db3b0: 745f 6661 6374 3a0a 2020 2020 6d6f 756e t_fact:. moun │ │ │ +001db3c0: 745f 696e 666f 3a20 277b 7b20 6d6f 756e t_info: '{{ moun │ │ │ +001db3d0: 745f 696e 666f 207c 2063 6f6d 6269 6e65 t_info | combine │ │ │ +001db3e0: 2820 7b27 276f 7074 696f 6e73 2727 3a27 ( {''options'':' │ │ │ +001db3f0: 2727 277e 286d 6f75 6e74 5f69 6e66 6f2e '''~(mount_info. │ │ │ +001db400: 6f70 7469 6f6e 7320 7c0a 2020 2020 2020 options |. │ │ │ +001db410: 6465 6661 756c 7428 2727 2727 2929 7e28 default(''''))~( │ │ │ +001db420: 2727 2c27 2720 6966 2028 6d6f 756e 745f '','' if (mount_ │ │ │ +001db430: 696e 666f 2e6f 7074 696f 6e73 207c 2064 info.options | d │ │ │ +001db440: 6566 6175 6c74 2827 2727 2729 2920 656c efault('''')) el │ │ │ +001db450: 7365 2027 2727 2729 7e27 276e 6f65 7865 se '''')~''noexe │ │ │ +001db460: 6327 270a 2020 2020 2020 7d29 207d 7d27 c''. }) }}' │ │ │ +001db470: 0a20 2077 6865 6e3a 0a20 202d 2028 206e . when:. - ( n │ │ │ +001db480: 6f74 2028 2022 6b65 726e 656c 2220 696e ot ( "kernel" in │ │ │ +001db490: 2061 6e73 6962 6c65 5f66 6163 7473 2e70 ansible_facts.p │ │ │ +001db4a0: 6163 6b61 6765 7320 616e 6420 2262 6f6f ackages and "boo │ │ │ +001db4b0: 7463 2220 696e 2061 6e73 6962 6c65 5f66 tc" in ansible_f │ │ │ +001db4c0: 6163 7473 2e70 6163 6b61 6765 730a 2020 acts.packages. │ │ │ +001db4d0: 2020 616e 6420 6e6f 7420 226f 7065 6e73 and not "opens │ │ │ +001db4e0: 6869 6674 2d6b 7562 656c 6574 2220 696e hift-kubelet" in │ │ │ +001db4f0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70 ansible_facts.p │ │ │ +001db500: 6163 6b61 6765 7320 616e 6420 226f 7374 ackages and "ost │ │ │ +001db510: 7265 6522 2069 6e20 616e 7369 626c 655f ree" in ansible_ │ │ │ +001db520: 7072 6f63 5f63 6d64 6c69 6e65 0a20 2020 proc_cmdline. │ │ │ +001db530: 2029 2061 6e64 206e 6f74 2028 2061 6e73 ) and not ( ans │ │ │ +001db540: 6962 6c65 5f76 6972 7475 616c 697a 6174 ible_virtualizat │ │ │ +001db550: 696f 6e5f 7479 7065 2069 6e20 5b22 646f ion_type in ["do │ │ │ +001db560: 636b 6572 222c 2022 6c78 6322 2c20 226f cker", "lxc", "o │ │ │ +001db570: 7065 6e76 7a22 2c20 2270 6f64 6d61 6e22 penvz", "podman" │ │ │ +001db580: 2c0a 2020 2020 2263 6f6e 7461 696e 6572 ,. "container │ │ │ +001db590: 225d 2029 2029 0a20 202d 206d 6f75 6e74 "] ) ). - mount │ │ │ +001db5a0: 5f69 6e66 6f20 6973 2064 6566 696e 6564 _info is defined │ │ │ +001db5b0: 2061 6e64 2022 6e6f 6578 6563 2220 6e6f and "noexec" no │ │ │ +001db5c0: 7420 696e 2028 6d6f 756e 745f 696e 666f t in (mount_info │ │ │ +001db5d0: 2e6f 7074 696f 6e73 207c 2064 6566 6175 .options | defau │ │ │ +001db5e0: 6c74 2827 2729 290a 2020 7461 6773 3a0a lt('')). tags:. │ │ │ +001db5f0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d - NIST-800-53- │ │ │ +001db600: 434d 2d36 2862 290a 2020 2d20 636f 6e66 CM-6(b). - conf │ │ │ +001db610: 6967 7572 655f 7374 7261 7465 6779 0a20 igure_strategy. │ │ │ +001db620: 202d 2068 6967 685f 6469 7372 7570 7469 - high_disrupti │ │ │ +001db630: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c on. - low_compl │ │ │ +001db640: 6578 6974 790a 2020 2d20 6d65 6469 756d exity. - medium │ │ │ +001db650: 5f73 6576 6572 6974 790a 2020 2d20 6d6f _severity. - mo │ │ │ +001db660: 756e 745f 6f70 7469 6f6e 5f68 6f6d 655f unt_option_home_ │ │ │ +001db670: 6e6f 6578 6563 0a20 202d 206e 6f5f 7265 noexec. - no_re │ │ │ +001db680: 626f 6f74 5f6e 6565 6465 640a 0a2d 206e boot_needed..- n │ │ │ +001db690: 616d 653a 2027 4164 6420 6e6f 6578 6563 ame: 'Add noexec │ │ │ +001db6a0: 204f 7074 696f 6e20 746f 202f 686f 6d65 Option to /home │ │ │ +001db6b0: 3a20 456e 7375 7265 202f 686f 6d65 2069 : Ensure /home i │ │ │ +001db6c0: 7320 6d6f 756e 7465 6420 7769 7468 206e s mounted with n │ │ │ +001db6d0: 6f65 7865 6320 6f70 7469 6f6e 270a 2020 oexec option'. │ │ │ +001db6e0: 616e 7369 626c 652e 706f 7369 782e 6d6f ansible.posix.mo │ │ │ +001db6f0: 756e 743a 0a20 2020 2070 6174 683a 202f unt:. path: / │ │ │ +001db700: 686f 6d65 0a20 2020 2073 7263 3a20 277b home. src: '{ │ │ │ +001db710: 7b20 6d6f 756e 745f 696e 666f 2e73 6f75 { mount_info.sou │ │ │ +001db720: 7263 6520 7c20 6465 6661 756c 7428 2727 rce | default('' │ │ │ +001db730: 2727 2920 7d7d 270a 2020 2020 6f70 7473 '') }}'. opts │ │ │ +001db740: 3a20 277b 7b20 6d6f 756e 745f 696e 666f : '{{ mount_info │ │ │ +001db750: 2e6f 7074 696f 6e73 207c 2064 6566 6175 .options | defau │ │ │ +001db760: 6c74 2827 2727 2729 207d 7d27 0a20 2020 lt('''') }}'. │ │ │ +001db770: 2073 7461 7465 3a20 6d6f 756e 7465 640a state: mounted. │ │ │ +001db780: 2020 2020 6673 7479 7065 3a20 277b 7b20 fstype: '{{ │ │ │ +001db790: 6d6f 756e 745f 696e 666f 2e66 7374 7970 mount_info.fstyp │ │ │ +001db7a0: 6520 7c20 6465 6661 756c 7428 2727 2727 e | default('''' │ │ │ +001db7b0: 2920 7d7d 270a 2020 7265 6769 7374 6572 ) }}'. register │ │ │ +001db7c0: 3a20 6d6f 756e 745f 7265 7375 6c74 0a20 : mount_result. │ │ │ +001db7d0: 2066 6169 6c65 645f 7768 656e 3a0a 2020 failed_when:. │ │ │ +001db7e0: 2d20 6d6f 756e 745f 7265 7375 6c74 2069 - mount_result i │ │ │ +001db7f0: 7320 6661 696c 6564 0a20 202d 2027 2727 s failed. - ''' │ │ │ +001db800: 7461 7267 6574 2069 7320 6275 7379 2727 target is busy'' │ │ │ +001db810: 206e 6f74 2069 6e20 286d 6f75 6e74 5f72 not in (mount_r │ │ │ +001db820: 6573 756c 742e 6d73 6720 7c20 6465 6661 esult.msg | defa │ │ │ +001db830: 756c 7428 2727 2727 2929 270a 2020 2d20 ult(''''))'. - │ │ │ +001db840: 2727 2761 6c72 6561 6479 206d 6f75 6e74 '''already mount │ │ │ +001db850: 6564 2727 206e 6f74 2069 6e20 286d 6f75 ed'' not in (mou │ │ │ +001db860: 6e74 5f72 6573 756c 742e 6d73 6720 7c20 nt_result.msg | │ │ │ +001db870: 6465 6661 756c 7428 2727 2727 2929 270a default(''''))'. │ │ │ +001db880: 2020 7768 656e 3a0a 2020 2d20 2820 6e6f when:. - ( no │ │ │ +001db890: 7420 2820 226b 6572 6e65 6c22 2069 6e20 t ( "kernel" in │ │ │ +001db8a0: 616e 7369 626c 655f 6661 6374 732e 7061 ansible_facts.pa │ │ │ +001db8b0: 636b 6167 6573 2061 6e64 2022 626f 6f74 ckages and "boot │ │ │ +001db8c0: 6322 2069 6e20 616e 7369 626c 655f 6661 c" in ansible_fa │ │ │ +001db8d0: 6374 732e 7061 636b 6167 6573 0a20 2020 cts.packages. │ │ │ +001db8e0: 2061 6e64 206e 6f74 2022 6f70 656e 7368 and not "opensh │ │ │ +001db8f0: 6966 742d 6b75 6265 6c65 7422 2069 6e20 ift-kubelet" in │ │ │ +001db900: 616e 7369 626c 655f 6661 6374 732e 7061 ansible_facts.pa │ │ │ +001db910: 636b 6167 6573 2061 6e64 2022 6f73 7472 ckages and "ostr │ │ │ +001db920: 6565 2220 696e 2061 6e73 6962 6c65 5f70 ee" in ansible_p │ │ │ +001db930: 726f 635f 636d 646c 696e 650a 2020 2020 roc_cmdline. │ │ │ +001db940: 2920 616e 6420 6e6f 7420 2820 616e 7369 ) and not ( ansi │ │ │ +001db950: 626c 655f 7669 7274 7561 6c69 7a61 7469 ble_virtualizati │ │ │ +001db960: 6f6e 5f74 7970 6520 696e 205b 2264 6f63 on_type in ["doc │ │ │ +001db970: 6b65 7222 2c20 226c 7863 222c 2022 6f70 ker", "lxc", "op │ │ │ +001db980: 656e 767a 222c 2022 706f 646d 616e 222c envz", "podman", │ │ │ +001db990: 0a20 2020 2022 636f 6e74 6169 6e65 7222 . "container" │ │ │ +001db9a0: 5d20 2920 290a 2020 2d20 6d6f 756e 745f ] ) ). - mount_ │ │ │ +001db9b0: 696e 666f 2069 7320 6465 6669 6e65 640a info is defined. │ │ │ +001db9c0: 2020 2d20 2864 6576 6963 655f 6e61 6d65 - (device_name │ │ │ +001db9d0: 2e73 7464 6f75 7420 6973 2064 6566 696e .stdout is defin │ │ │ +001db9e0: 6564 2061 6e64 2028 6465 7669 6365 5f6e ed and (device_n │ │ │ +001db9f0: 616d 652e 7374 646f 7574 207c 206c 656e ame.stdout | len │ │ │ +001dba00: 6774 6820 2667 743b 2030 2929 206f 7220 gth > 0)) or │ │ │ +001dba10: 2822 2d2d 6673 7461 6222 0a20 2020 207c ("--fstab". | │ │ │ +001dba20: 206c 656e 6774 6820 3d3d 2030 290a 2020 length == 0). │ │ │ +001dba30: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38 tags:. - NIST-8 │ │ │ +001dba40: 3030 2d35 332d 434d 2d36 2862 290a 2020 00-53-CM-6(b). │ │ │ +001dba50: 2d20 636f 6e66 6967 7572 655f 7374 7261 - configure_stra │ │ │ +001dba60: 7465 6779 0a20 202d 2068 6967 685f 6469 tegy. - high_di │ │ │ +001dba70: 7372 7570 7469 6f6e 0a20 202d 206c 6f77 sruption. - low │ │ │ +001dba80: 5f63 6f6d 706c 6578 6974 790a 2020 2d20 _complexity. - │ │ │ +001dba90: 6d65 6469 756d 5f73 6576 6572 6974 790a medium_severity. │ │ │ +001dbaa0: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e - mount_option │ │ │ +001dbab0: 5f68 6f6d 655f 6e6f 6578 6563 0a20 202d _home_noexec. - │ │ │ +001dbac0: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465 no_reboot_neede │ │ │ +001dbad0: 640a 3c2f 636f 6465 3e3c 2f70 7265 3e3c d.
< │ │ │ +001dbae0: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Sh │ │ │ +001dbb90: 656c 6c20 7363 7269 7074 20e2 87b2 3c2f ell script ...
< │ │ │ +001dbc40: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
# Remediation 
│ │ │ +001dbc60: 6973 2061 7070 6c69 6361 626c 6520 6f6e  is applicable on
│ │ │ +001dbc70: 6c79 2069 6e20 6365 7274 6169 6e20 706c  ly in certain pl
│ │ │ +001dbc80: 6174 666f 726d 730a 6966 2028 2021 2028  atforms.if ( ! (
│ │ │ +001dbc90: 207b 2072 706d 202d 2d71 7569 6574 202d   { rpm --quiet -
│ │ │ +001dbca0: 7120 6b65 726e 656c 203b 7d20 2661 6d70  q kernel ;} &
│ │ │ +001dbcb0: 3b26 616d 703b 207b 2072 706d 202d 2d71  ;& { rpm --q
│ │ │ +001dbcc0: 7569 6574 202d 7120 626f 6f74 6320 3b7d  uiet -q bootc ;}
│ │ │ +001dbcd0: 2026 616d 703b 2661 6d70 3b20 7b20 2120   && { ! 
│ │ │ +001dbce0: 7270 6d20 2d2d 7175 6965 7420 2d71 206f  rpm --quiet -q o
│ │ │ +001dbcf0: 7065 6e73 6869 6674 2d6b 7562 656c 6574  penshift-kubelet
│ │ │ +001dbd00: 203b 7d20 2661 6d70 3b26 616d 703b 2028   ;} && (
│ │ │ +001dbd10: 5b20 2d66 202f 7275 6e2f 6f73 7472 6565  [ -f /run/ostree
│ │ │ +001dbd20: 2d62 6f6f 7465 6420 5d20 7c7c 205b 202d  -booted ] || [ -
│ │ │ +001dbd30: 4c20 2f6f 7374 7265 6520 5d29 2029 2026  L /ostree ]) ) &
│ │ │ +001dbd40: 616d 703b 2661 6d70 3b20 2120 2820 5b20  amp;& ! ( [ 
│ │ │ +001dbd50: 2d66 202f 2e64 6f63 6b65 7265 6e76 205d  -f /.dockerenv ]
│ │ │ +001dbd60: 207c 7c20 5b20 2d66 202f 7275 6e2f 2e63   || [ -f /run/.c
│ │ │ +001dbd70: 6f6e 7461 696e 6572 656e 7620 5d20 2920  ontainerenv ] ) 
│ │ │ +001dbd80: 293b 2074 6865 6e0a 0a66 756e 6374 696f  ); then..functio
│ │ │ +001dbd90: 6e20 7065 7266 6f72 6d5f 7265 6d65 6469  n perform_remedi
│ │ │ +001dbda0: 6174 696f 6e20 7b0a 0a20 2020 200a 2020  ation {..    .  
│ │ │ +001dbdb0: 2020 2020 2020 2320 7468 6520 6d6f 756e        # the moun
│ │ │ +001dbdc0: 7420 706f 696e 7420 2f68 6f6d 6520 6861  t point /home ha
│ │ │ +001dbdd0: 7320 746f 2062 6520 6465 6669 6e65 6420  s to be defined 
│ │ │ +001dbde0: 696e 202f 6574 632f 6673 7461 620a 2020  in /etc/fstab.  
│ │ │ +001dbdf0: 2020 2020 2020 2320 6265 666f 7265 2074        # before t
│ │ │ +001dbe00: 6869 7320 7265 6d65 6469 6174 696f 6e20  his remediation 
│ │ │ +001dbe10: 6361 6e20 6265 2065 7865 6375 7465 642e  can be executed.
│ │ │ +001dbe20: 2049 6e20 6361 7365 2069 7420 6973 206e   In case it is n
│ │ │ +001dbe30: 6f74 2064 6566 696e 6564 2c20 7468 650a  ot defined, the.
│ │ │ +001dbe40: 2020 2020 2020 2020 2320 7265 6d65 6469          # remedi
│ │ │ +001dbe50: 6174 696f 6e20 6162 6f72 7473 2061 6e64  ation aborts and
│ │ │ +001dbe60: 206e 6f20 6368 616e 6765 7320 7265 6761   no changes rega
│ │ │ +001dbe70: 7264 696e 6720 7468 6520 6d6f 756e 7420  rding the mount 
│ │ │ +001dbe80: 706f 696e 7420 6172 6520 646f 6e65 2e0a  point are done..
│ │ │ +001dbe90: 2020 2020 2020 2020 6d6f 756e 745f 706f          mount_po
│ │ │ +001dbea0: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ +001dbeb0: 3d22 2428 7072 696e 7466 2022 5e5b 5b3a  ="$(printf "^[[:
│ │ │ +001dbec0: 7370 6163 653a 5d5d 2a5b 5e23 5d2e 2a5b  space:]]*[^#].*[
│ │ │ +001dbed0: 5b3a 7370 6163 653a 5d5d 2573 5b5b 3a73  [:space:]]%s[[:s
│ │ │ +001dbee0: 7061 6365 3a5d 5d22 2022 2f68 6f6d 6522  pace:]]" "/home"
│ │ │ +001dbef0: 2922 0a0a 2020 2020 6772 6570 2022 246d  )"..    grep "$m
│ │ │ +001dbf00: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ +001dbf10: 5f72 6567 6578 7022 202d 7120 2f65 7463  _regexp" -q /etc
│ │ │ +001dbf20: 2f66 7374 6162 205c 0a20 2020 2020 2020  /fstab \.       
│ │ │ +001dbf30: 207c 7c20 7b20 6563 686f 2022 5468 6520   || { echo "The 
│ │ │ +001dbf40: 6d6f 756e 7420 706f 696e 7420 272f 686f  mount point '/ho
│ │ │ +001dbf50: 6d65 2720 6973 206e 6f74 2065 7665 6e20  me' is not even 
│ │ │ +001dbf60: 696e 202f 6574 632f 6673 7461 622c 2073  in /etc/fstab, s
│ │ │ +001dbf70: 6f20 7765 2063 616e 2774 2073 6574 2075  o we can't set u
│ │ │ +001dbf80: 7020 6d6f 756e 7420 6f70 7469 6f6e 7322  p mount options"
│ │ │ +001dbf90: 2026 6774 3b26 616d 703b 323b 0a20 2020   >&2;.   
│ │ │ +001dbfa0: 2020 2020 2020 2020 2020 2020 2065 6368               ech
│ │ │ +001dbfb0: 6f20 224e 6f74 2072 656d 6564 6961 7469  o "Not remediati
│ │ │ +001dbfc0: 6e67 2c20 6265 6361 7573 6520 7468 6572  ng, because ther
│ │ │ +001dbfd0: 6520 6973 206e 6f20 7265 636f 7264 206f  e is no record o
│ │ │ +001dbfe0: 6620 2f68 6f6d 6520 696e 202f 6574 632f  f /home in /etc/
│ │ │ +001dbff0: 6673 7461 6222 2026 6774 3b26 616d 703b  fstab" >&
│ │ │ +001dc000: 323b 2072 6574 7572 6e20 313b 207d 0a20  2; return 1; }. 
│ │ │ +001dc010: 2020 200a 0a0a 2020 2020 6d6f 756e 745f     ...    mount_
│ │ │ +001dc020: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ +001dc030: 7870 3d22 2428 7072 696e 7466 2022 5e5b  xp="$(printf "^[
│ │ │ +001dc040: 5b3a 7370 6163 653a 5d5d 2a5b 5e23 5d2e  [:space:]]*[^#].
│ │ │ +001dc050: 2a5b 5b3a 7370 6163 653a 5d5d 2573 5b5b  *[[:space:]]%s[[
│ │ │ +001dc060: 3a73 7061 6365 3a5d 5d22 202f 686f 6d65  :space:]]" /home
│ │ │ +001dc070: 2922 0a0a 2020 2020 2320 4966 2074 6865  )"..    # If the
│ │ │ +001dc080: 206d 6f75 6e74 2070 6f69 6e74 2069 7320   mount point is 
│ │ │ +001dc090: 6e6f 7420 696e 202f 6574 632f 6673 7461  not in /etc/fsta
│ │ │ +001dc0a0: 622c 2067 6574 2070 7265 7669 6f75 7320  b, get previous 
│ │ │ +001dc0b0: 6d6f 756e 7420 6f70 7469 6f6e 7320 6672  mount options fr
│ │ │ +001dc0c0: 6f6d 202f 6574 632f 6d74 6162 0a20 2020  om /etc/mtab.   
│ │ │ +001dc0d0: 2069 6620 2120 6772 6570 202d 7120 2224   if ! grep -q "$
│ │ │ +001dc0e0: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ +001dc0f0: 685f 7265 6765 7870 2220 2f65 7463 2f66  h_regexp" /etc/f
│ │ │ +001dc100: 7374 6162 3b20 7468 656e 0a20 2020 2020  stab; then.     
│ │ │ +001dc110: 2020 2023 2072 756e 7469 6d65 206f 7074     # runtime opt
│ │ │ +001dc120: 7320 7769 7468 6f75 7420 736f 6d65 2061  s without some a
│ │ │ +001dc130: 7574 6f6d 6174 6963 206b 6572 6e65 6c2f  utomatic kernel/
│ │ │ +001dc140: 7573 6572 7370 6163 652d 6164 6465 6420  userspace-added 
│ │ │ +001dc150: 6465 6661 756c 7473 0a20 2020 2020 2020  defaults.       
│ │ │ +001dc160: 2070 7265 7669 6f75 735f 6d6f 756e 745f   previous_mount_
│ │ │ +001dc170: 6f70 7473 3d24 2867 7265 7020 2224 6d6f  opts=$(grep "$mo
│ │ │ +001dc180: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ +001dc190: 7265 6765 7870 2220 2f65 7463 2f6d 7461  regexp" /etc/mta
│ │ │ +001dc1a0: 6220 7c20 6865 6164 202d 3120 7c20 2061  b | head -1 |  a
│ │ │ +001dc1b0: 776b 2027 7b70 7269 6e74 2024 347d 2720  wk '{print $4}' 
│ │ │ +001dc1c0: 5c0a 2020 2020 2020 2020 2020 2020 2020  \.              
│ │ │ +001dc1d0: 2020 2020 2020 7c20 7365 6420 2d45 2022        | sed -E "
│ │ │ +001dc1e0: 732f 2872 777c 6465 6661 756c 7473 7c73  s/(rw|defaults|s
│ │ │ +001dc1f0: 6563 6c61 6265 6c7c 6e6f 6578 6563 2928  eclabel|noexec)(
│ │ │ +001dc200: 2c7c 2429 2f2f 673b 732f 2c24 2f2f 2229  ,|$)//g;s/,$//")
│ │ │ +001dc210: 0a20 2020 2020 2020 205b 2022 2470 7265  .        [ "$pre
│ │ │ +001dc220: 7669 6f75 735f 6d6f 756e 745f 6f70 7473  vious_mount_opts
│ │ │ +001dc230: 2220 5d20 2661 6d70 3b26 616d 703b 2070  " ] && p
│ │ │ +001dc240: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ +001dc250: 7473 2b3d 222c 220a 2020 2020 2020 2020  ts+=",".        
│ │ │ +001dc260: 2320 496e 2069 736f 3936 3630 2066 696c  # In iso9660 fil
│ │ │ +001dc270: 6573 7973 7465 6d73 206d 7461 6220 636f  esystems mtab co
│ │ │ +001dc280: 756c 6420 6465 7363 7269 6265 2061 2022  uld describe a "
│ │ │ +001dc290: 626c 6f63 6b73 697a 6522 2076 616c 7565  blocksize" value
│ │ │ +001dc2a0: 2c20 7468 6973 2073 686f 756c 6420 6265  , this should be
│ │ │ +001dc2b0: 2072 6566 6c65 6374 6564 2069 6e0a 2020   reflected in.  
│ │ │ +001dc2c0: 2020 2020 2020 2320 6673 7461 6220 6173        # fstab as
│ │ │ +001dc2d0: 2022 626c 6f63 6b22 2e20 2054 6865 206e   "block".  The n
│ │ │ +001dc2e0: 6578 7420 7661 7269 6162 6c65 2069 7320  ext variable is 
│ │ │ +001dc2f0: 746f 2073 6174 6973 6679 2073 6865 6c6c  to satisfy shell
│ │ │ +001dc300: 6368 6563 6b20 5343 3230 3530 2e0a 2020  check SC2050..  
│ │ │ +001dc310: 2020 2020 2020 6673 5f74 7970 653d 2222        fs_type=""
│ │ │ +001dc320: 0a20 2020 2020 2020 2069 6620 5b20 2022  .        if [  "
│ │ │ +001dc330: 2466 735f 7479 7065 2220 3d3d 2022 6973  $fs_type" == "is
│ │ │ +001dc340: 6f39 3636 3022 205d 203b 2074 6865 6e0a  o9660" ] ; then.
│ │ │ +001dc350: 2020 2020 2020 2020 2020 2020 7072 6576              prev
│ │ │ +001dc360: 696f 7573 5f6d 6f75 6e74 5f6f 7074 733d  ious_mount_opts=
│ │ │ +001dc370: 2428 7365 6420 2773 2f62 6c6f 636b 7369  $(sed 's/blocksi
│ │ │ +001dc380: 7a65 3d2f 626c 6f63 6b3d 2f27 2026 6c74  ze=/block=/' <
│ │ │ +001dc390: 3b26 6c74 3b26 6c74 3b20 2224 7072 6576  ;<< "$prev
│ │ │ +001dc3a0: 696f 7573 5f6d 6f75 6e74 5f6f 7074 7322  ious_mount_opts"
│ │ │ +001dc3b0: 290a 2020 2020 2020 2020 6669 0a20 2020  ).        fi.   
│ │ │ +001dc3c0: 2020 2020 2065 6368 6f20 2220 2f68 6f6d       echo " /hom
│ │ │ +001dc3d0: 6520 2064 6566 6175 6c74 732c 247b 7072  e  defaults,${pr
│ │ │ +001dc3e0: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ +001dc3f0: 737d 6e6f 6578 6563 2030 2030 2220 2667  s}noexec 0 0" &g
│ │ │ +001dc400: 743b 2667 743b 202f 6574 632f 6673 7461  t;> /etc/fsta
│ │ │ +001dc410: 620a 2020 2020 2320 4966 2074 6865 206d  b.    # If the m
│ │ │ +001dc420: 6f75 6e74 5f6f 7074 206f 7074 696f 6e20  ount_opt option 
│ │ │ +001dc430: 6973 206e 6f74 2061 6c72 6561 6479 2069  is not already i
│ │ │ +001dc440: 6e20 7468 6520 6d6f 756e 7420 706f 696e  n the mount poin
│ │ │ +001dc450: 7427 7320 2f65 7463 2f66 7374 6162 2065  t's /etc/fstab e
│ │ │ +001dc460: 6e74 7279 2c20 6164 6420 6974 0a20 2020  ntry, add it.   
│ │ │ +001dc470: 2065 6c69 6620 2120 6772 6570 2022 246d   elif ! grep "$m
│ │ │ +001dc480: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ +001dc490: 5f72 6567 6578 7022 202f 6574 632f 6673  _regexp" /etc/fs
│ │ │ +001dc4a0: 7461 6220 7c20 6772 6570 202d 7120 226e  tab | grep -q "n
│ │ │ +001dc4b0: 6f65 7865 6322 3b20 7468 656e 0a20 2020  oexec"; then.   
│ │ │ +001dc4c0: 2020 2020 2070 7265 7669 6f75 735f 6d6f       previous_mo
│ │ │ +001dc4d0: 756e 745f 6f70 7473 3d24 2867 7265 7020  unt_opts=$(grep 
│ │ │ +001dc4e0: 2224 6d6f 756e 745f 706f 696e 745f 6d61  "$mount_point_ma
│ │ │ +001dc4f0: 7463 685f 7265 6765 7870 2220 2f65 7463  tch_regexp" /etc
│ │ │ +001dc500: 2f66 7374 6162 207c 2061 776b 2027 7b70  /fstab | awk '{p
│ │ │ +001dc510: 7269 6e74 2024 347d 2729 0a20 2020 2020  rint $4}').     
│ │ │ +001dc520: 2020 2073 6564 202d 6920 2273 7c5c 2824     sed -i "s|\($
│ │ │ +001dc530: 7b6d 6f75 6e74 5f70 6f69 6e74 5f6d 6174  {mount_point_mat
│ │ │ +001dc540: 6368 5f72 6567 6578 707d 2e2a 247b 7072  ch_regexp}.*${pr
│ │ │ +001dc550: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ +001dc560: 737d 5c29 7c5c 312c 6e6f 6578 6563 7c22  s}\)|\1,noexec|"
│ │ │ +001dc570: 202f 6574 632f 6673 7461 620a 2020 2020   /etc/fstab.    
│ │ │ +001dc580: 6669 0a0a 0a20 2020 2069 6620 6d6b 6469  fi...    if mkdi
│ │ │ +001dc590: 7220 2d70 2022 2f68 6f6d 6522 3b20 7468  r -p "/home"; th
│ │ │ +001dc5a0: 656e 0a20 2020 2020 2020 2069 6620 6d6f  en.        if mo
│ │ │ +001dc5b0: 756e 7470 6f69 6e74 202d 7120 222f 686f  untpoint -q "/ho
│ │ │ +001dc5c0: 6d65 223b 2074 6865 6e0a 2020 2020 2020  me"; then.      
│ │ │ +001dc5d0: 2020 2020 2020 6d6f 756e 7420 2d6f 2072        mount -o r
│ │ │ +001dc5e0: 656d 6f75 6e74 202d 2d74 6172 6765 7420  emount --target 
│ │ │ +001dc5f0: 222f 686f 6d65 220a 2020 2020 2020 2020  "/home".        
│ │ │ +001dc600: 6669 0a20 2020 2066 690a 7d0a 0a70 6572  fi.    fi.}..per
│ │ │ +001dc610: 666f 726d 5f72 656d 6564 6961 7469 6f6e  form_remediation
│ │ │ +001dc620: 0a0a 656c 7365 0a20 2020 2026 6774 3b26  ..else.    >&
│ │ │ +001dc630: 616d 703b 3220 6563 686f 2027 5265 6d65  amp;2 echo 'Reme
│ │ │ +001dc640: 6469 6174 696f 6e20 6973 206e 6f74 2061  diation is not a
│ │ │ +001dc650: 7070 6c69 6361 626c 652c 206e 6f74 6869  pplicable, nothi
│ │ │ +001dc660: 6e67 2077 6173 2064 6f6e 6527 0a66 690a  ng was done'.fi.
│ │ │ +001dc670: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ +001dc720: 5265 6d65 6469 6174 696f 6e20 416e 6163 Remediation Anac │ │ │ +001dc730: 6f6e 6461 2073 6e69 7070 6574 20e2 87b2 onda snippet ... │ │ │ +001dc740: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
│ │ │ +001dbc20: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +001dbc30: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Complexity:< │ │ │ +001dc830: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
.part /home --m
│ │ │ +001dc880: 6f75 6e74 6f70 7469 6f6e 733d 226e 6f65  ountoptions="noe
│ │ │ +001dc890: 7865 6322 0a3c 2f63 6f64 653e 3c2f 7072  xec".
│ │ │ 001dc8c0: 3c2f 7461 626c 653e 3c2f 7464 3e3c 2f74
low
Disru │ │ │ +001dc7f0: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e68 ption:h │ │ │ +001dc800: 6967 683c 2f74 643e 3c2f 7472 3e3c 7472 igh
Reboot:false
Stra │ │ │ +001dc840: 7465 6779 3a3c 2f74 683e 3c74 643e 656e tegy:en │ │ │ +001dc850: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
Remed │ │ │ -001dd9b0: 6961 7469 6f6e 2041 6e61 636f 6e64 6120 iation Anaconda │ │ │ -001dd9c0: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ -001dd9d0: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
< │ │ │ -001ddac0: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
Com │ │ │ -001dda50: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ -001dda80: 3a3c 2f74 683e 3c74 643e 6869 6768 3c2f :high
│ │ │ -001ddaa0: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ -001ddab0: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ -001ddad0: 3c2f 7468 3e3c 7464 3e65 6e61 626c 653c enable< │ │ │ -001ddae0: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
.par
│ │ │ -001ddb00: 7420 2f68 6f6d 6520 2d2d 6d6f 756e 746f  t /home --mounto
│ │ │ -001ddb10: 7074 696f 6e73 3d22 6e6f 7375 6964 220a  ptions="nosuid".
│ │ │ -001ddb20: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ -001ddbd0: 5265 6d65 6469 6174 696f 6e20 416e 7369 Remediation Ansi │ │ │ -001ddbe0: 626c 6520 736e 6970 7065 7420 e287 b23c ble snippet ...< │ │ │ -001ddbf0: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
│ │ │ -001ddcc0: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -001ddcd0: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f │ │ │ -001ddd10: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:low
Disrup │ │ │ -001ddca0: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6869 tion:hi │ │ │ -001ddcb0: 6768 3c2f 7464 3e3c 2f74 723e 3c74 723e gh
Reboot:false
Strat │ │ │ -001ddcf0: 6567 793a 3c2f 7468 3e3c 7464 3e63 6f6e egy:con │ │ │ -001ddd00: 6669 6775 7265 3c2f 7464 3e3c 2f74 723e figure
- name: Gathe
│ │ │ -001ddd30: 7220 7468 6520 7061 636b 6167 6520 6661  r the package fa
│ │ │ -001ddd40: 6374 730a 2020 7061 636b 6167 655f 6661  cts.  package_fa
│ │ │ -001ddd50: 6374 733a 0a20 2020 206d 616e 6167 6572  cts:.    manager
│ │ │ -001ddd60: 3a20 6175 746f 0a20 2074 6167 733a 0a20  : auto.  tags:. 
│ │ │ -001ddd70: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ -001ddd80: 432d 360a 2020 2d20 4e49 5354 2d38 3030  C-6.  - NIST-800
│ │ │ -001ddd90: 2d35 332d 4143 2d36 2831 290a 2020 2d20  -53-AC-6(1).  - 
│ │ │ -001ddda0: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ -001dddb0: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ -001dddc0: 2d35 332d 434d 2d37 2861 290a 2020 2d20  -53-CM-7(a).  - 
│ │ │ -001dddd0: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ -001ddde0: 2862 290a 2020 2d20 4e49 5354 2d38 3030  (b).  - NIST-800
│ │ │ -001dddf0: 2d35 332d 4d50 2d37 0a20 202d 2063 6f6e  -53-MP-7.  - con
│ │ │ -001dde00: 6669 6775 7265 5f73 7472 6174 6567 790a  figure_strategy.
│ │ │ -001dde10: 2020 2d20 6869 6768 5f64 6973 7275 7074    - high_disrupt
│ │ │ -001dde20: 696f 6e0a 2020 2d20 6c6f 775f 636f 6d70  ion.  - low_comp
│ │ │ -001dde30: 6c65 7869 7479 0a20 202d 206d 6564 6975  lexity.  - mediu
│ │ │ -001dde40: 6d5f 7365 7665 7269 7479 0a20 202d 206d  m_severity.  - m
│ │ │ -001dde50: 6f75 6e74 5f6f 7074 696f 6e5f 686f 6d65  ount_option_home
│ │ │ -001dde60: 5f6e 6f73 7569 640a 2020 2d20 6e6f 5f72  _nosuid.  - no_r
│ │ │ -001dde70: 6562 6f6f 745f 6e65 6564 6564 0a0a 2d20  eboot_needed..- 
│ │ │ -001dde80: 6e61 6d65 3a20 2741 6464 206e 6f73 7569  name: 'Add nosui
│ │ │ -001dde90: 6420 4f70 7469 6f6e 2074 6f20 2f68 6f6d  d Option to /hom
│ │ │ -001ddea0: 653a 2043 6865 636b 2069 6e66 6f72 6d61  e: Check informa
│ │ │ -001ddeb0: 7469 6f6e 2061 7373 6f63 6961 7465 6420  tion associated 
│ │ │ -001ddec0: 746f 206d 6f75 6e74 706f 696e 7427 0a20  to mountpoint'. 
│ │ │ -001dded0: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ -001ddee0: 2e63 6f6d 6d61 6e64 3a20 6669 6e64 6d6e  .command: findmn
│ │ │ -001ddef0: 7420 2d2d 6673 7461 6220 272f 686f 6d65  t --fstab '/home
│ │ │ -001ddf00: 270a 2020 7265 6769 7374 6572 3a20 6465  '.  register: de
│ │ │ -001ddf10: 7669 6365 5f6e 616d 650a 2020 6661 696c  vice_name.  fail
│ │ │ -001ddf20: 6564 5f77 6865 6e3a 2064 6576 6963 655f  ed_when: device_
│ │ │ -001ddf30: 6e61 6d65 2e72 6320 2667 743b 2031 0a20  name.rc > 1. 
│ │ │ -001ddf40: 2063 6861 6e67 6564 5f77 6865 6e3a 2066   changed_when: f
│ │ │ -001ddf50: 616c 7365 0a20 2063 6865 636b 5f6d 6f64  alse.  check_mod
│ │ │ -001ddf60: 653a 2066 616c 7365 0a20 2077 6865 6e3a  e: false.  when:
│ │ │ -001ddf70: 0a20 202d 2028 206e 6f74 2028 2022 6b65  .  - ( not ( "ke
│ │ │ -001ddf80: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ -001ddf90: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ -001ddfa0: 616e 6420 2262 6f6f 7463 2220 696e 2061  and "bootc" in a
│ │ │ -001ddfb0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001ddfc0: 6b61 6765 730a 2020 2020 616e 6420 6e6f  kages.    and no
│ │ │ -001ddfd0: 7420 226f 7065 6e73 6869 6674 2d6b 7562  t "openshift-kub
│ │ │ -001ddfe0: 656c 6574 2220 696e 2061 6e73 6962 6c65  elet" in ansible
│ │ │ -001ddff0: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ -001de000: 616e 6420 226f 7374 7265 6522 2069 6e20  and "ostree" in 
│ │ │ -001de010: 616e 7369 626c 655f 7072 6f63 5f63 6d64  ansible_proc_cmd
│ │ │ -001de020: 6c69 6e65 0a20 2020 2029 2061 6e64 206e  line.    ) and n
│ │ │ -001de030: 6f74 2028 2061 6e73 6962 6c65 5f76 6972  ot ( ansible_vir
│ │ │ -001de040: 7475 616c 697a 6174 696f 6e5f 7479 7065  tualization_type
│ │ │ -001de050: 2069 6e20 5b22 646f 636b 6572 222c 2022   in ["docker", "
│ │ │ -001de060: 6c78 6322 2c20 226f 7065 6e76 7a22 2c20  lxc", "openvz", 
│ │ │ -001de070: 2270 6f64 6d61 6e22 2c0a 2020 2020 2263  "podman",.    "c
│ │ │ -001de080: 6f6e 7461 696e 6572 225d 2029 2029 0a20  ontainer"] ) ). 
│ │ │ -001de090: 202d 2027 222f 686f 6d65 2220 696e 2061   - '"/home" in a
│ │ │ -001de0a0: 6e73 6962 6c65 5f6d 6f75 6e74 7320 7c20  nsible_mounts | 
│ │ │ -001de0b0: 6d61 7028 6174 7472 6962 7574 653d 226d  map(attribute="m
│ │ │ -001de0c0: 6f75 6e74 2229 207c 206c 6973 7427 0a20  ount") | list'. 
│ │ │ -001de0d0: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ -001de0e0: 3830 302d 3533 2d41 432d 360a 2020 2d20  800-53-AC-6.  - 
│ │ │ -001de0f0: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ -001de100: 2831 290a 2020 2d20 4e49 5354 2d38 3030  (1).  - NIST-800
│ │ │ -001de110: 2d35 332d 434d 2d36 2861 290a 2020 2d20  -53-CM-6(a).  - 
│ │ │ -001de120: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ -001de130: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ -001de140: 2d35 332d 434d 2d37 2862 290a 2020 2d20  -53-CM-7(b).  - 
│ │ │ -001de150: 4e49 5354 2d38 3030 2d35 332d 4d50 2d37  NIST-800-53-MP-7
│ │ │ -001de160: 0a20 202d 2063 6f6e 6669 6775 7265 5f73  .  - configure_s
│ │ │ -001de170: 7472 6174 6567 790a 2020 2d20 6869 6768  trategy.  - high
│ │ │ -001de180: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ -001de190: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ -001de1a0: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ -001de1b0: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074  ty.  - mount_opt
│ │ │ -001de1c0: 696f 6e5f 686f 6d65 5f6e 6f73 7569 640a  ion_home_nosuid.
│ │ │ -001de1d0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ -001de1e0: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741  eded..- name: 'A
│ │ │ -001de1f0: 6464 206e 6f73 7569 6420 4f70 7469 6f6e  dd nosuid Option
│ │ │ -001de200: 2074 6f20 2f68 6f6d 653a 2043 7265 6174   to /home: Creat
│ │ │ -001de210: 6520 6d6f 756e 745f 696e 666f 2064 6963  e mount_info dic
│ │ │ -001de220: 7469 6f6e 6172 7920 7661 7269 6162 6c65  tionary variable
│ │ │ -001de230: 270a 2020 7365 745f 6661 6374 3a0a 2020  '.  set_fact:.  
│ │ │ -001de240: 2020 6d6f 756e 745f 696e 666f 3a20 277b    mount_info: '{
│ │ │ -001de250: 7b20 6d6f 756e 745f 696e 666f 7c64 6566  { mount_info|def
│ │ │ -001de260: 6175 6c74 287b 7d29 7c63 6f6d 6269 6e65  ault({})|combine
│ │ │ -001de270: 287b 6974 656d 2e30 3a20 6974 656d 2e31  ({item.0: item.1
│ │ │ -001de280: 7d29 207d 7d27 0a20 2077 6974 685f 746f  }) }}'.  with_to
│ │ │ -001de290: 6765 7468 6572 3a0a 2020 2d20 277b 7b20  gether:.  - '{{ 
│ │ │ -001de2a0: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ -001de2b0: 7574 5f6c 696e 6573 5b30 5d2e 7370 6c69  ut_lines[0].spli
│ │ │ -001de2c0: 7428 2920 7c20 6d61 7028 2727 6c6f 7765  t() | map(''lowe
│ │ │ -001de2d0: 7227 2729 207c 206c 6973 7420 7d7d 270a  r'') | list }}'.
│ │ │ -001de2e0: 2020 2d20 277b 7b20 6465 7669 6365 5f6e    - '{{ device_n
│ │ │ -001de2f0: 616d 652e 7374 646f 7574 5f6c 696e 6573  ame.stdout_lines
│ │ │ -001de300: 5b31 5d2e 7370 6c69 7428 2920 7c20 6c69  [1].split() | li
│ │ │ -001de310: 7374 207d 7d27 0a20 2077 6865 6e3a 0a20  st }}'.  when:. 
│ │ │ -001de320: 202d 2028 206e 6f74 2028 2022 6b65 726e   - ( not ( "kern
│ │ │ -001de330: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ -001de340: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ -001de350: 6420 2262 6f6f 7463 2220 696e 2061 6e73  d "bootc" in ans
│ │ │ -001de360: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001de370: 6765 730a 2020 2020 616e 6420 6e6f 7420  ges.    and not 
│ │ │ -001de380: 226f 7065 6e73 6869 6674 2d6b 7562 656c  "openshift-kubel
│ │ │ -001de390: 6574 2220 696e 2061 6e73 6962 6c65 5f66  et" in ansible_f
│ │ │ -001de3a0: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ -001de3b0: 6420 226f 7374 7265 6522 2069 6e20 616e  d "ostree" in an
│ │ │ -001de3c0: 7369 626c 655f 7072 6f63 5f63 6d64 6c69  sible_proc_cmdli
│ │ │ -001de3d0: 6e65 0a20 2020 2029 2061 6e64 206e 6f74  ne.    ) and not
│ │ │ -001de3e0: 2028 2061 6e73 6962 6c65 5f76 6972 7475   ( ansible_virtu
│ │ │ -001de3f0: 616c 697a 6174 696f 6e5f 7479 7065 2069  alization_type i
│ │ │ -001de400: 6e20 5b22 646f 636b 6572 222c 2022 6c78  n ["docker", "lx
│ │ │ -001de410: 6322 2c20 226f 7065 6e76 7a22 2c20 2270  c", "openvz", "p
│ │ │ -001de420: 6f64 6d61 6e22 2c0a 2020 2020 2263 6f6e  odman",.    "con
│ │ │ -001de430: 7461 696e 6572 225d 2029 2029 0a20 202d  tainer"] ) ).  -
│ │ │ -001de440: 2027 222f 686f 6d65 2220 696e 2061 6e73   '"/home" in ans
│ │ │ -001de450: 6962 6c65 5f6d 6f75 6e74 7320 7c20 6d61  ible_mounts | ma
│ │ │ -001de460: 7028 6174 7472 6962 7574 653d 226d 6f75  p(attribute="mou
│ │ │ -001de470: 6e74 2229 207c 206c 6973 7427 0a20 202d  nt") | list'.  -
│ │ │ -001de480: 2064 6576 6963 655f 6e61 6d65 2e73 7464   device_name.std
│ │ │ -001de490: 6f75 7420 6973 2064 6566 696e 6564 2061  out is defined a
│ │ │ -001de4a0: 6e64 2064 6576 6963 655f 6e61 6d65 2e73  nd device_name.s
│ │ │ -001de4b0: 7464 6f75 745f 6c69 6e65 7320 6973 2064  tdout_lines is d
│ │ │ -001de4c0: 6566 696e 6564 0a20 202d 2028 6465 7669  efined.  - (devi
│ │ │ -001de4d0: 6365 5f6e 616d 652e 7374 646f 7574 207c  ce_name.stdout |
│ │ │ -001de4e0: 206c 656e 6774 6820 2667 743b 2030 290a   length > 0).
│ │ │ -001de4f0: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ -001de500: 2d38 3030 2d35 332d 4143 2d36 0a20 202d  -800-53-AC-6.  -
│ │ │ -001de510: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ -001de520: 3628 3129 0a20 202d 204e 4953 542d 3830  6(1).  - NIST-80
│ │ │ -001de530: 302d 3533 2d43 4d2d 3628 6129 0a20 202d  0-53-CM-6(a).  -
│ │ │ -001de540: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -001de550: 3728 6129 0a20 202d 204e 4953 542d 3830  7(a).  - NIST-80
│ │ │ -001de560: 302d 3533 2d43 4d2d 3728 6229 0a20 202d  0-53-CM-7(b).  -
│ │ │ -001de570: 204e 4953 542d 3830 302d 3533 2d4d 502d   NIST-800-53-MP-
│ │ │ -001de580: 370a 2020 2d20 636f 6e66 6967 7572 655f  7.  - configure_
│ │ │ -001de590: 7374 7261 7465 6779 0a20 202d 2068 6967  strategy.  - hig
│ │ │ -001de5a0: 685f 6469 7372 7570 7469 6f6e 0a20 202d  h_disruption.  -
│ │ │ -001de5b0: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ -001de5c0: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ -001de5d0: 6974 790a 2020 2d20 6d6f 756e 745f 6f70  ity.  - mount_op
│ │ │ -001de5e0: 7469 6f6e 5f68 6f6d 655f 6e6f 7375 6964  tion_home_nosuid
│ │ │ -001de5f0: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ -001de600: 6565 6465 640a 0a2d 206e 616d 653a 2027  eeded..- name: '
│ │ │ -001de610: 4164 6420 6e6f 7375 6964 204f 7074 696f  Add nosuid Optio
│ │ │ -001de620: 6e20 746f 202f 686f 6d65 3a20 4966 202f  n to /home: If /
│ │ │ -001de630: 686f 6d65 206e 6f74 206d 6f75 6e74 6564  home not mounted
│ │ │ -001de640: 2c20 6372 6166 7420 6d6f 756e 745f 696e  , craft mount_in
│ │ │ -001de650: 666f 206d 616e 7561 6c6c 7927 0a20 2073  fo manually'.  s
│ │ │ -001de660: 6574 5f66 6163 743a 0a20 2020 206d 6f75  et_fact:.    mou
│ │ │ -001de670: 6e74 5f69 6e66 6f3a 2027 7b7b 206d 6f75  nt_info: '{{ mou
│ │ │ -001de680: 6e74 5f69 6e66 6f7c 6465 6661 756c 7428  nt_info|default(
│ │ │ -001de690: 7b7d 297c 636f 6d62 696e 6528 7b69 7465  {})|combine({ite
│ │ │ -001de6a0: 6d2e 303a 2069 7465 6d2e 317d 2920 7d7d  m.0: item.1}) }}
│ │ │ -001de6b0: 270a 2020 7769 7468 5f74 6f67 6574 6865  '.  with_togethe
│ │ │ -001de6c0: 723a 0a20 202d 202d 2074 6172 6765 740a  r:.  - - target.
│ │ │ -001de6d0: 2020 2020 2d20 736f 7572 6365 0a20 2020      - source.   
│ │ │ -001de6e0: 202d 2066 7374 7970 650a 2020 2020 2d20   - fstype.    - 
│ │ │ -001de6f0: 6f70 7469 6f6e 730a 2020 2d20 2d20 2f68  options.  - - /h
│ │ │ -001de700: 6f6d 650a 2020 2020 2d20 2727 0a20 2020  ome.    - ''.   
│ │ │ -001de710: 202d 2027 270a 2020 2020 2d20 6465 6661   - ''.    - defa
│ │ │ -001de720: 756c 7473 0a20 2077 6865 6e3a 0a20 202d  ults.  when:.  -
│ │ │ -001de730: 2028 206e 6f74 2028 2022 6b65 726e 656c   ( not ( "kernel
│ │ │ -001de740: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001de750: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ -001de760: 2262 6f6f 7463 2220 696e 2061 6e73 6962  "bootc" in ansib
│ │ │ -001de770: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -001de780: 730a 2020 2020 616e 6420 6e6f 7420 226f  s.    and not "o
│ │ │ -001de790: 7065 6e73 6869 6674 2d6b 7562 656c 6574  penshift-kubelet
│ │ │ -001de7a0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001de7b0: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ -001de7c0: 226f 7374 7265 6522 2069 6e20 616e 7369  "ostree" in ansi
│ │ │ -001de7d0: 626c 655f 7072 6f63 5f63 6d64 6c69 6e65  ble_proc_cmdline
│ │ │ -001de7e0: 0a20 2020 2029 2061 6e64 206e 6f74 2028  .    ) and not (
│ │ │ -001de7f0: 2061 6e73 6962 6c65 5f76 6972 7475 616c   ansible_virtual
│ │ │ -001de800: 697a 6174 696f 6e5f 7479 7065 2069 6e20  ization_type in 
│ │ │ -001de810: 5b22 646f 636b 6572 222c 2022 6c78 6322  ["docker", "lxc"
│ │ │ -001de820: 2c20 226f 7065 6e76 7a22 2c20 2270 6f64  , "openvz", "pod
│ │ │ -001de830: 6d61 6e22 2c0a 2020 2020 2263 6f6e 7461  man",.    "conta
│ │ │ -001de840: 696e 6572 225d 2029 2029 0a20 202d 2027  iner"] ) ).  - '
│ │ │ -001de850: 222f 686f 6d65 2220 696e 2061 6e73 6962  "/home" in ansib
│ │ │ -001de860: 6c65 5f6d 6f75 6e74 7320 7c20 6d61 7028  le_mounts | map(
│ │ │ -001de870: 6174 7472 6962 7574 653d 226d 6f75 6e74  attribute="mount
│ │ │ -001de880: 2229 207c 206c 6973 7427 0a20 202d 2028  ") | list'.  - (
│ │ │ -001de890: 222d 2d66 7374 6162 2220 7c20 6c65 6e67  "--fstab" | leng
│ │ │ -001de8a0: 7468 203d 3d20 3029 0a20 202d 2064 6576  th == 0).  - dev
│ │ │ -001de8b0: 6963 655f 6e61 6d65 2e73 7464 6f75 7420  ice_name.stdout 
│ │ │ -001de8c0: 6973 2064 6566 696e 6564 2061 6e64 2064  is defined and d
│ │ │ -001de8d0: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ -001de8e0: 745f 6c69 6e65 7320 6973 2064 6566 696e  t_lines is defin
│ │ │ -001de8f0: 6564 0a20 202d 2028 6465 7669 6365 5f6e  ed.  - (device_n
│ │ │ -001de900: 616d 652e 7374 646f 7574 207c 206c 656e  ame.stdout | len
│ │ │ -001de910: 6774 6820 3d3d 2030 290a 2020 7461 6773  gth == 0).  tags
│ │ │ -001de920: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ -001de930: 332d 4143 2d36 0a20 202d 204e 4953 542d  3-AC-6.  - NIST-
│ │ │ -001de940: 3830 302d 3533 2d41 432d 3628 3129 0a20  800-53-AC-6(1). 
│ │ │ -001de950: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -001de960: 4d2d 3628 6129 0a20 202d 204e 4953 542d  M-6(a).  - NIST-
│ │ │ -001de970: 3830 302d 3533 2d43 4d2d 3728 6129 0a20  800-53-CM-7(a). 
│ │ │ -001de980: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -001de990: 4d2d 3728 6229 0a20 202d 204e 4953 542d  M-7(b).  - NIST-
│ │ │ -001de9a0: 3830 302d 3533 2d4d 502d 370a 2020 2d20  800-53-MP-7.  - 
│ │ │ -001de9b0: 636f 6e66 6967 7572 655f 7374 7261 7465  configure_strate
│ │ │ -001de9c0: 6779 0a20 202d 2068 6967 685f 6469 7372  gy.  - high_disr
│ │ │ -001de9d0: 7570 7469 6f6e 0a20 202d 206c 6f77 5f63  uption.  - low_c
│ │ │ -001de9e0: 6f6d 706c 6578 6974 790a 2020 2d20 6d65  omplexity.  - me
│ │ │ -001de9f0: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ -001dea00: 2d20 6d6f 756e 745f 6f70 7469 6f6e 5f68  - mount_option_h
│ │ │ -001dea10: 6f6d 655f 6e6f 7375 6964 0a20 202d 206e  ome_nosuid.  - n
│ │ │ -001dea20: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ -001dea30: 0a2d 206e 616d 653a 2027 4164 6420 6e6f  .- name: 'Add no
│ │ │ -001dea40: 7375 6964 204f 7074 696f 6e20 746f 202f  suid Option to /
│ │ │ -001dea50: 686f 6d65 3a20 4d61 6b65 2073 7572 6520  home: Make sure 
│ │ │ -001dea60: 6e6f 7375 6964 206f 7074 696f 6e20 6973  nosuid option is
│ │ │ -001dea70: 2070 6172 7420 6f66 2074 6865 2074 6f20   part of the to 
│ │ │ -001dea80: 2f68 6f6d 650a 2020 2020 6f70 7469 6f6e  /home.    option
│ │ │ -001dea90: 7327 0a20 2073 6574 5f66 6163 743a 0a20  s'.  set_fact:. 
│ │ │ -001deaa0: 2020 206d 6f75 6e74 5f69 6e66 6f3a 2027     mount_info: '
│ │ │ -001deab0: 7b7b 206d 6f75 6e74 5f69 6e66 6f20 7c20  {{ mount_info | 
│ │ │ -001deac0: 636f 6d62 696e 6528 207b 2727 6f70 7469  combine( {''opti
│ │ │ -001dead0: 6f6e 7327 273a 2727 2727 7e28 6d6f 756e  ons'':''''~(moun
│ │ │ -001deae0: 745f 696e 666f 2e6f 7074 696f 6e73 207c  t_info.options |
│ │ │ -001deaf0: 0a20 2020 2020 2064 6566 6175 6c74 2827  .      default('
│ │ │ -001deb00: 2727 2729 297e 2827 272c 2727 2069 6620  '''))~('','' if 
│ │ │ -001deb10: 286d 6f75 6e74 5f69 6e66 6f2e 6f70 7469  (mount_info.opti
│ │ │ -001deb20: 6f6e 7320 7c20 6465 6661 756c 7428 2727  ons | default(''
│ │ │ -001deb30: 2727 2929 2065 6c73 6520 2727 2727 297e  '')) else '''')~
│ │ │ -001deb40: 2727 6e6f 7375 6964 2727 0a20 2020 2020  ''nosuid''.     
│ │ │ -001deb50: 207d 2920 7d7d 270a 2020 7768 656e 3a0a   }) }}'.  when:.
│ │ │ -001deb60: 2020 2d20 2820 6e6f 7420 2820 226b 6572    - ( not ( "ker
│ │ │ -001deb70: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ -001deb80: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ -001deb90: 6e64 2022 626f 6f74 6322 2069 6e20 616e  nd "bootc" in an
│ │ │ -001deba0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001debb0: 6167 6573 0a20 2020 2061 6e64 206e 6f74  ages.    and not
│ │ │ -001debc0: 2022 6f70 656e 7368 6966 742d 6b75 6265   "openshift-kube
│ │ │ -001debd0: 6c65 7422 2069 6e20 616e 7369 626c 655f  let" in ansible_
│ │ │ -001debe0: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ -001debf0: 6e64 2022 6f73 7472 6565 2220 696e 2061  nd "ostree" in a
│ │ │ -001dec00: 6e73 6962 6c65 5f70 726f 635f 636d 646c  nsible_proc_cmdl
│ │ │ -001dec10: 696e 650a 2020 2020 2920 616e 6420 6e6f  ine.    ) and no
│ │ │ -001dec20: 7420 2820 616e 7369 626c 655f 7669 7274  t ( ansible_virt
│ │ │ -001dec30: 7561 6c69 7a61 7469 6f6e 5f74 7970 6520  ualization_type 
│ │ │ -001dec40: 696e 205b 2264 6f63 6b65 7222 2c20 226c  in ["docker", "l
│ │ │ -001dec50: 7863 222c 2022 6f70 656e 767a 222c 2022  xc", "openvz", "
│ │ │ -001dec60: 706f 646d 616e 222c 0a20 2020 2022 636f  podman",.    "co
│ │ │ -001dec70: 6e74 6169 6e65 7222 5d20 2920 290a 2020  ntainer"] ) ).  
│ │ │ -001dec80: 2d20 2722 2f68 6f6d 6522 2069 6e20 616e  - '"/home" in an
│ │ │ -001dec90: 7369 626c 655f 6d6f 756e 7473 207c 206d  sible_mounts | m
│ │ │ -001deca0: 6170 2861 7474 7269 6275 7465 3d22 6d6f  ap(attribute="mo
│ │ │ -001decb0: 756e 7422 2920 7c20 6c69 7374 270a 2020  unt") | list'.  
│ │ │ -001decc0: 2d20 6d6f 756e 745f 696e 666f 2069 7320  - mount_info is 
│ │ │ -001decd0: 6465 6669 6e65 6420 616e 6420 226e 6f73  defined and "nos
│ │ │ -001dece0: 7569 6422 206e 6f74 2069 6e20 286d 6f75  uid" not in (mou
│ │ │ -001decf0: 6e74 5f69 6e66 6f2e 6f70 7469 6f6e 7320  nt_info.options 
│ │ │ -001ded00: 7c20 6465 6661 756c 7428 2727 2929 0a20  | default('')). 
│ │ │ -001ded10: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ -001ded20: 3830 302d 3533 2d41 432d 360a 2020 2d20  800-53-AC-6.  - 
│ │ │ -001ded30: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ -001ded40: 2831 290a 2020 2d20 4e49 5354 2d38 3030  (1).  - NIST-800
│ │ │ -001ded50: 2d35 332d 434d 2d36 2861 290a 2020 2d20  -53-CM-6(a).  - 
│ │ │ -001ded60: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ -001ded70: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ -001ded80: 2d35 332d 434d 2d37 2862 290a 2020 2d20  -53-CM-7(b).  - 
│ │ │ -001ded90: 4e49 5354 2d38 3030 2d35 332d 4d50 2d37  NIST-800-53-MP-7
│ │ │ -001deda0: 0a20 202d 2063 6f6e 6669 6775 7265 5f73  .  - configure_s
│ │ │ -001dedb0: 7472 6174 6567 790a 2020 2d20 6869 6768  trategy.  - high
│ │ │ -001dedc0: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ -001dedd0: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ -001dede0: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ -001dedf0: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074  ty.  - mount_opt
│ │ │ -001dee00: 696f 6e5f 686f 6d65 5f6e 6f73 7569 640a  ion_home_nosuid.
│ │ │ -001dee10: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ -001dee20: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741  eded..- name: 'A
│ │ │ -001dee30: 6464 206e 6f73 7569 6420 4f70 7469 6f6e  dd nosuid Option
│ │ │ -001dee40: 2074 6f20 2f68 6f6d 653a 2045 6e73 7572   to /home: Ensur
│ │ │ -001dee50: 6520 2f68 6f6d 6520 6973 206d 6f75 6e74  e /home is mount
│ │ │ -001dee60: 6564 2077 6974 6820 6e6f 7375 6964 206f  ed with nosuid o
│ │ │ -001dee70: 7074 696f 6e27 0a20 2061 6e73 6962 6c65  ption'.  ansible
│ │ │ -001dee80: 2e70 6f73 6978 2e6d 6f75 6e74 3a0a 2020  .posix.mount:.  
│ │ │ -001dee90: 2020 7061 7468 3a20 2f68 6f6d 650a 2020    path: /home.  
│ │ │ -001deea0: 2020 7372 633a 2027 7b7b 206d 6f75 6e74    src: '{{ mount
│ │ │ -001deeb0: 5f69 6e66 6f2e 736f 7572 6365 207c 2064  _info.source | d
│ │ │ -001deec0: 6566 6175 6c74 2827 2727 2729 207d 7d27  efault('''') }}'
│ │ │ -001deed0: 0a20 2020 206f 7074 733a 2027 7b7b 206d  .    opts: '{{ m
│ │ │ -001deee0: 6f75 6e74 5f69 6e66 6f2e 6f70 7469 6f6e  ount_info.option
│ │ │ -001deef0: 7320 7c20 6465 6661 756c 7428 2727 2727  s | default(''''
│ │ │ -001def00: 2920 7d7d 270a 2020 2020 7374 6174 653a  ) }}'.    state:
│ │ │ -001def10: 206d 6f75 6e74 6564 0a20 2020 2066 7374   mounted.    fst
│ │ │ -001def20: 7970 653a 2027 7b7b 206d 6f75 6e74 5f69  ype: '{{ mount_i
│ │ │ -001def30: 6e66 6f2e 6673 7479 7065 207c 2064 6566  nfo.fstype | def
│ │ │ -001def40: 6175 6c74 2827 2727 2729 207d 7d27 0a20  ault('''') }}'. 
│ │ │ -001def50: 2072 6567 6973 7465 723a 206d 6f75 6e74   register: mount
│ │ │ -001def60: 5f72 6573 756c 740a 2020 6661 696c 6564  _result.  failed
│ │ │ -001def70: 5f77 6865 6e3a 0a20 202d 206d 6f75 6e74  _when:.  - mount
│ │ │ -001def80: 5f72 6573 756c 7420 6973 2066 6169 6c65  _result is faile
│ │ │ -001def90: 640a 2020 2d20 2727 2774 6172 6765 7420  d.  - '''target 
│ │ │ -001defa0: 6973 2062 7573 7927 2720 6e6f 7420 696e  is busy'' not in
│ │ │ -001defb0: 2028 6d6f 756e 745f 7265 7375 6c74 2e6d   (mount_result.m
│ │ │ -001defc0: 7367 207c 2064 6566 6175 6c74 2827 2727  sg | default('''
│ │ │ -001defd0: 2729 2927 0a20 202d 2027 2727 616c 7265  '))'.  - '''alre
│ │ │ -001defe0: 6164 7920 6d6f 756e 7465 6427 2720 6e6f  ady mounted'' no
│ │ │ -001deff0: 7420 696e 2028 6d6f 756e 745f 7265 7375  t in (mount_resu
│ │ │ -001df000: 6c74 2e6d 7367 207c 2064 6566 6175 6c74  lt.msg | default
│ │ │ -001df010: 2827 2727 2729 2927 0a20 2077 6865 6e3a  (''''))'.  when:
│ │ │ -001df020: 0a20 202d 2028 206e 6f74 2028 2022 6b65  .  - ( not ( "ke
│ │ │ -001df030: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ -001df040: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ -001df050: 616e 6420 2262 6f6f 7463 2220 696e 2061  and "bootc" in a
│ │ │ -001df060: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001df070: 6b61 6765 730a 2020 2020 616e 6420 6e6f  kages.    and no
│ │ │ -001df080: 7420 226f 7065 6e73 6869 6674 2d6b 7562  t "openshift-kub
│ │ │ -001df090: 656c 6574 2220 696e 2061 6e73 6962 6c65  elet" in ansible
│ │ │ -001df0a0: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ -001df0b0: 616e 6420 226f 7374 7265 6522 2069 6e20  and "ostree" in 
│ │ │ -001df0c0: 616e 7369 626c 655f 7072 6f63 5f63 6d64  ansible_proc_cmd
│ │ │ -001df0d0: 6c69 6e65 0a20 2020 2029 2061 6e64 206e  line.    ) and n
│ │ │ -001df0e0: 6f74 2028 2061 6e73 6962 6c65 5f76 6972  ot ( ansible_vir
│ │ │ -001df0f0: 7475 616c 697a 6174 696f 6e5f 7479 7065  tualization_type
│ │ │ -001df100: 2069 6e20 5b22 646f 636b 6572 222c 2022   in ["docker", "
│ │ │ -001df110: 6c78 6322 2c20 226f 7065 6e76 7a22 2c20  lxc", "openvz", 
│ │ │ -001df120: 2270 6f64 6d61 6e22 2c0a 2020 2020 2263  "podman",.    "c
│ │ │ -001df130: 6f6e 7461 696e 6572 225d 2029 2029 0a20  ontainer"] ) ). 
│ │ │ -001df140: 202d 2027 222f 686f 6d65 2220 696e 2061   - '"/home" in a
│ │ │ -001df150: 6e73 6962 6c65 5f6d 6f75 6e74 7320 7c20  nsible_mounts | 
│ │ │ -001df160: 6d61 7028 6174 7472 6962 7574 653d 226d  map(attribute="m
│ │ │ -001df170: 6f75 6e74 2229 207c 206c 6973 7427 0a20  ount") | list'. 
│ │ │ -001df180: 202d 206d 6f75 6e74 5f69 6e66 6f20 6973   - mount_info is
│ │ │ -001df190: 2064 6566 696e 6564 0a20 202d 2028 6465   defined.  - (de
│ │ │ -001df1a0: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ -001df1b0: 2069 7320 6465 6669 6e65 6420 616e 6420   is defined and 
│ │ │ -001df1c0: 2864 6576 6963 655f 6e61 6d65 2e73 7464  (device_name.std
│ │ │ -001df1d0: 6f75 7420 7c20 6c65 6e67 7468 2026 6774  out | length >
│ │ │ -001df1e0: 3b20 3029 2920 6f72 2028 222d 2d66 7374  ; 0)) or ("--fst
│ │ │ -001df1f0: 6162 220a 2020 2020 7c20 6c65 6e67 7468  ab".    | length
│ │ │ -001df200: 203d 3d20 3029 0a20 2074 6167 733a 0a20   == 0).  tags:. 
│ │ │ -001df210: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ -001df220: 432d 360a 2020 2d20 4e49 5354 2d38 3030  C-6.  - NIST-800
│ │ │ -001df230: 2d35 332d 4143 2d36 2831 290a 2020 2d20  -53-AC-6(1).  - 
│ │ │ -001df240: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ -001df250: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ -001df260: 2d35 332d 434d 2d37 2861 290a 2020 2d20  -53-CM-7(a).  - 
│ │ │ -001df270: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ -001df280: 2862 290a 2020 2d20 4e49 5354 2d38 3030  (b).  - NIST-800
│ │ │ -001df290: 2d35 332d 4d50 2d37 0a20 202d 2063 6f6e  -53-MP-7.  - con
│ │ │ -001df2a0: 6669 6775 7265 5f73 7472 6174 6567 790a  figure_strategy.
│ │ │ -001df2b0: 2020 2d20 6869 6768 5f64 6973 7275 7074    - high_disrupt
│ │ │ -001df2c0: 696f 6e0a 2020 2d20 6c6f 775f 636f 6d70  ion.  - low_comp
│ │ │ -001df2d0: 6c65 7869 7479 0a20 202d 206d 6564 6975  lexity.  - mediu
│ │ │ -001df2e0: 6d5f 7365 7665 7269 7479 0a20 202d 206d  m_severity.  - m
│ │ │ -001df2f0: 6f75 6e74 5f6f 7074 696f 6e5f 686f 6d65  ount_option_home
│ │ │ -001df300: 5f6e 6f73 7569 640a 2020 2d20 6e6f 5f72  _nosuid.  - no_r
│ │ │ -001df310: 6562 6f6f 745f 6e65 6564 6564 0a3c 2f63  eboot_needed.
│ │ │ -001df330: 3c61 2063 6c61 7373 3d22 6274 6e20 6274
Rem │ │ │ -001df3d0: 6564 6961 7469 6f6e 2053 6865 6c6c 2073 ediation Shell s │ │ │ -001df3e0: 6372 6970 7420 e287 b23c 2f61 3e3c 6272 cript ...
# R
│ │ │ -001df4a0: 656d 6564 6961 7469 6f6e 2069 7320 6170  emediation is ap
│ │ │ -001df4b0: 706c 6963 6162 6c65 206f 6e6c 7920 696e  plicable only in
│ │ │ -001df4c0: 2063 6572 7461 696e 2070 6c61 7466 6f72   certain platfor
│ │ │ -001df4d0: 6d73 0a69 6620 2820 2120 2820 7b20 7270  ms.if ( ! ( { rp
│ │ │ -001df4e0: 6d20 2d2d 7175 6965 7420 2d71 206b 6572  m --quiet -q ker
│ │ │ -001df4f0: 6e65 6c20 3b7d 2026 616d 703b 2661 6d70  nel ;} &&
│ │ │ -001df500: 3b20 7b20 7270 6d20 2d2d 7175 6965 7420  ; { rpm --quiet 
│ │ │ -001df510: 2d71 2062 6f6f 7463 203b 7d20 2661 6d70  -q bootc ;} &
│ │ │ -001df520: 3b26 616d 703b 207b 2021 2072 706d 202d  ;& { ! rpm -
│ │ │ -001df530: 2d71 7569 6574 202d 7120 6f70 656e 7368  -quiet -q opensh
│ │ │ -001df540: 6966 742d 6b75 6265 6c65 7420 3b7d 2026  ift-kubelet ;} &
│ │ │ -001df550: 616d 703b 2661 6d70 3b20 285b 202d 6620  amp;& ([ -f 
│ │ │ -001df560: 2f72 756e 2f6f 7374 7265 652d 626f 6f74  /run/ostree-boot
│ │ │ -001df570: 6564 205d 207c 7c20 5b20 2d4c 202f 6f73  ed ] || [ -L /os
│ │ │ -001df580: 7472 6565 205d 2920 2920 2661 6d70 3b26  tree ]) ) &&
│ │ │ -001df590: 616d 703b 2021 2028 205b 202d 6620 2f2e  amp; ! ( [ -f /.
│ │ │ -001df5a0: 646f 636b 6572 656e 7620 5d20 7c7c 205b  dockerenv ] || [
│ │ │ -001df5b0: 202d 6620 2f72 756e 2f2e 636f 6e74 6169   -f /run/.contai
│ │ │ -001df5c0: 6e65 7265 6e76 205d 2029 2029 2026 616d  nerenv ] ) ) &am
│ │ │ -001df5d0: 703b 2661 6d70 3b20 7b20 2820 6669 6e64  p;& { ( find
│ │ │ -001df5e0: 6d6e 7420 2d2d 6b65 726e 656c 2022 2f68  mnt --kernel "/h
│ │ │ -001df5f0: 6f6d 6522 2026 6774 3b20 2f64 6576 2f6e  ome" > /dev/n
│ │ │ -001df600: 756c 6c20 7c7c 2066 696e 646d 6e74 202d  ull || findmnt -
│ │ │ -001df610: 2d66 7374 6162 2022 2f68 6f6d 6522 2026  -fstab "/home" &
│ │ │ -001df620: 6774 3b20 2f64 6576 2f6e 756c 6c20 293b  gt; /dev/null );
│ │ │ -001df630: 207d 3b20 7468 656e 0a0a 6675 6e63 7469   }; then..functi
│ │ │ -001df640: 6f6e 2070 6572 666f 726d 5f72 656d 6564  on perform_remed
│ │ │ -001df650: 6961 7469 6f6e 207b 0a0a 2020 2020 0a20  iation {..    . 
│ │ │ -001df660: 2020 2020 2020 2023 2074 6865 206d 6f75         # the mou
│ │ │ -001df670: 6e74 2070 6f69 6e74 202f 686f 6d65 2068  nt point /home h
│ │ │ -001df680: 6173 2074 6f20 6265 2064 6566 696e 6564  as to be defined
│ │ │ -001df690: 2069 6e20 2f65 7463 2f66 7374 6162 0a20   in /etc/fstab. 
│ │ │ -001df6a0: 2020 2020 2020 2023 2062 6566 6f72 6520         # before 
│ │ │ -001df6b0: 7468 6973 2072 656d 6564 6961 7469 6f6e  this remediation
│ │ │ -001df6c0: 2063 616e 2062 6520 6578 6563 7574 6564   can be executed
│ │ │ -001df6d0: 2e20 496e 2063 6173 6520 6974 2069 7320  . In case it is 
│ │ │ -001df6e0: 6e6f 7420 6465 6669 6e65 642c 2074 6865  not defined, the
│ │ │ -001df6f0: 0a20 2020 2020 2020 2023 2072 656d 6564  .        # remed
│ │ │ -001df700: 6961 7469 6f6e 2061 626f 7274 7320 616e  iation aborts an
│ │ │ -001df710: 6420 6e6f 2063 6861 6e67 6573 2072 6567  d no changes reg
│ │ │ -001df720: 6172 6469 6e67 2074 6865 206d 6f75 6e74  arding the mount
│ │ │ -001df730: 2070 6f69 6e74 2061 7265 2064 6f6e 652e   point are done.
│ │ │ -001df740: 0a20 2020 2020 2020 206d 6f75 6e74 5f70  .        mount_p
│ │ │ -001df750: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ -001df760: 703d 2224 2870 7269 6e74 6620 225e 5b5b  p="$(printf "^[[
│ │ │ -001df770: 3a73 7061 6365 3a5d 5d2a 5b5e 235d 2e2a  :space:]]*[^#].*
│ │ │ -001df780: 5b5b 3a73 7061 6365 3a5d 5d25 735b 5b3a  [[:space:]]%s[[:
│ │ │ -001df790: 7370 6163 653a 5d5d 2220 222f 686f 6d65  space:]]" "/home
│ │ │ -001df7a0: 2229 220a 0a20 2020 2067 7265 7020 2224  ")"..    grep "$
│ │ │ -001df7b0: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ -001df7c0: 685f 7265 6765 7870 2220 2d71 202f 6574  h_regexp" -q /et
│ │ │ -001df7d0: 632f 6673 7461 6220 5c0a 2020 2020 2020  c/fstab \.      
│ │ │ -001df7e0: 2020 7c7c 207b 2065 6368 6f20 2254 6865    || { echo "The
│ │ │ -001df7f0: 206d 6f75 6e74 2070 6f69 6e74 2027 2f68   mount point '/h
│ │ │ -001df800: 6f6d 6527 2069 7320 6e6f 7420 6576 656e  ome' is not even
│ │ │ -001df810: 2069 6e20 2f65 7463 2f66 7374 6162 2c20   in /etc/fstab, 
│ │ │ -001df820: 736f 2077 6520 6361 6e27 7420 7365 7420  so we can't set 
│ │ │ -001df830: 7570 206d 6f75 6e74 206f 7074 696f 6e73  up mount options
│ │ │ -001df840: 2220 2667 743b 2661 6d70 3b32 3b0a 2020  " >&2;.  
│ │ │ -001df850: 2020 2020 2020 2020 2020 2020 2020 6563                ec
│ │ │ -001df860: 686f 2022 4e6f 7420 7265 6d65 6469 6174  ho "Not remediat
│ │ │ -001df870: 696e 672c 2062 6563 6175 7365 2074 6865  ing, because the
│ │ │ -001df880: 7265 2069 7320 6e6f 2072 6563 6f72 6420  re is no record 
│ │ │ -001df890: 6f66 202f 686f 6d65 2069 6e20 2f65 7463  of /home in /etc
│ │ │ -001df8a0: 2f66 7374 6162 2220 2667 743b 2661 6d70  /fstab" >&
│ │ │ -001df8b0: 3b32 3b20 7265 7475 726e 2031 3b20 7d0a  ;2; return 1; }.
│ │ │ -001df8c0: 2020 2020 0a0a 0a20 2020 206d 6f75 6e74      ...    mount
│ │ │ -001df8d0: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ -001df8e0: 6578 703d 2224 2870 7269 6e74 6620 225e  exp="$(printf "^
│ │ │ -001df8f0: 5b5b 3a73 7061 6365 3a5d 5d2a 5b5e 235d  [[:space:]]*[^#]
│ │ │ -001df900: 2e2a 5b5b 3a73 7061 6365 3a5d 5d25 735b  .*[[:space:]]%s[
│ │ │ -001df910: 5b3a 7370 6163 653a 5d5d 2220 2f68 6f6d  [:space:]]" /hom
│ │ │ -001df920: 6529 220a 0a20 2020 2023 2049 6620 7468  e)"..    # If th
│ │ │ -001df930: 6520 6d6f 756e 7420 706f 696e 7420 6973  e mount point is
│ │ │ -001df940: 206e 6f74 2069 6e20 2f65 7463 2f66 7374   not in /etc/fst
│ │ │ -001df950: 6162 2c20 6765 7420 7072 6576 696f 7573  ab, get previous
│ │ │ -001df960: 206d 6f75 6e74 206f 7074 696f 6e73 2066   mount options f
│ │ │ -001df970: 726f 6d20 2f65 7463 2f6d 7461 620a 2020  rom /etc/mtab.  
│ │ │ -001df980: 2020 6966 2021 2067 7265 7020 2d71 2022    if ! grep -q "
│ │ │ -001df990: 246d 6f75 6e74 5f70 6f69 6e74 5f6d 6174  $mount_point_mat
│ │ │ -001df9a0: 6368 5f72 6567 6578 7022 202f 6574 632f  ch_regexp" /etc/
│ │ │ -001df9b0: 6673 7461 623b 2074 6865 6e0a 2020 2020  fstab; then.    
│ │ │ -001df9c0: 2020 2020 2320 7275 6e74 696d 6520 6f70      # runtime op
│ │ │ -001df9d0: 7473 2077 6974 686f 7574 2073 6f6d 6520  ts without some 
│ │ │ -001df9e0: 6175 746f 6d61 7469 6320 6b65 726e 656c  automatic kernel
│ │ │ -001df9f0: 2f75 7365 7273 7061 6365 2d61 6464 6564  /userspace-added
│ │ │ -001dfa00: 2064 6566 6175 6c74 730a 2020 2020 2020   defaults.      
│ │ │ -001dfa10: 2020 7072 6576 696f 7573 5f6d 6f75 6e74    previous_mount
│ │ │ -001dfa20: 5f6f 7074 733d 2428 6772 6570 2022 246d  _opts=$(grep "$m
│ │ │ -001dfa30: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ -001dfa40: 5f72 6567 6578 7022 202f 6574 632f 6d74  _regexp" /etc/mt
│ │ │ -001dfa50: 6162 207c 2068 6561 6420 2d31 207c 2020  ab | head -1 |  
│ │ │ -001dfa60: 6177 6b20 277b 7072 696e 7420 2434 7d27  awk '{print $4}'
│ │ │ -001dfa70: 205c 0a20 2020 2020 2020 2020 2020 2020   \.             
│ │ │ -001dfa80: 2020 2020 2020 207c 2073 6564 202d 4520         | sed -E 
│ │ │ -001dfa90: 2273 2f28 7277 7c64 6566 6175 6c74 737c  "s/(rw|defaults|
│ │ │ -001dfaa0: 7365 636c 6162 656c 7c6e 6f73 7569 6429  seclabel|nosuid)
│ │ │ -001dfab0: 282c 7c24 292f 2f67 3b73 2f2c 242f 2f22  (,|$)//g;s/,$//"
│ │ │ -001dfac0: 290a 2020 2020 2020 2020 5b20 2224 7072  ).        [ "$pr
│ │ │ -001dfad0: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ -001dfae0: 7322 205d 2026 616d 703b 2661 6d70 3b20  s" ] && 
│ │ │ -001dfaf0: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ -001dfb00: 7074 732b 3d22 2c22 0a20 2020 2020 2020  pts+=",".       
│ │ │ -001dfb10: 2023 2049 6e20 6973 6f39 3636 3020 6669   # In iso9660 fi
│ │ │ -001dfb20: 6c65 7379 7374 656d 7320 6d74 6162 2063  lesystems mtab c
│ │ │ -001dfb30: 6f75 6c64 2064 6573 6372 6962 6520 6120  ould describe a 
│ │ │ -001dfb40: 2262 6c6f 636b 7369 7a65 2220 7661 6c75  "blocksize" valu
│ │ │ -001dfb50: 652c 2074 6869 7320 7368 6f75 6c64 2062  e, this should b
│ │ │ -001dfb60: 6520 7265 666c 6563 7465 6420 696e 0a20  e reflected in. 
│ │ │ -001dfb70: 2020 2020 2020 2023 2066 7374 6162 2061         # fstab a
│ │ │ -001dfb80: 7320 2262 6c6f 636b 222e 2020 5468 6520  s "block".  The 
│ │ │ -001dfb90: 6e65 7874 2076 6172 6961 626c 6520 6973  next variable is
│ │ │ -001dfba0: 2074 6f20 7361 7469 7366 7920 7368 656c   to satisfy shel
│ │ │ -001dfbb0: 6c63 6865 636b 2053 4332 3035 302e 0a20  lcheck SC2050.. 
│ │ │ -001dfbc0: 2020 2020 2020 2066 735f 7479 7065 3d22         fs_type="
│ │ │ -001dfbd0: 220a 2020 2020 2020 2020 6966 205b 2020  ".        if [  
│ │ │ -001dfbe0: 2224 6673 5f74 7970 6522 203d 3d20 2269  "$fs_type" == "i
│ │ │ -001dfbf0: 736f 3936 3630 2220 5d20 3b20 7468 656e  so9660" ] ; then
│ │ │ -001dfc00: 0a20 2020 2020 2020 2020 2020 2070 7265  .            pre
│ │ │ -001dfc10: 7669 6f75 735f 6d6f 756e 745f 6f70 7473  vious_mount_opts
│ │ │ -001dfc20: 3d24 2873 6564 2027 732f 626c 6f63 6b73  =$(sed 's/blocks
│ │ │ -001dfc30: 697a 653d 2f62 6c6f 636b 3d2f 2720 266c  ize=/block=/' &l
│ │ │ -001dfc40: 743b 266c 743b 266c 743b 2022 2470 7265  t;<< "$pre
│ │ │ -001dfc50: 7669 6f75 735f 6d6f 756e 745f 6f70 7473  vious_mount_opts
│ │ │ -001dfc60: 2229 0a20 2020 2020 2020 2066 690a 2020  ").        fi.  
│ │ │ -001dfc70: 2020 2020 2020 6563 686f 2022 202f 686f        echo " /ho
│ │ │ -001dfc80: 6d65 2020 6465 6661 756c 7473 2c24 7b70  me  defaults,${p
│ │ │ -001dfc90: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ -001dfca0: 7473 7d6e 6f73 7569 6420 3020 3022 2026  ts}nosuid 0 0" &
│ │ │ -001dfcb0: 6774 3b26 6774 3b20 2f65 7463 2f66 7374  gt;> /etc/fst
│ │ │ -001dfcc0: 6162 0a20 2020 2023 2049 6620 7468 6520  ab.    # If the 
│ │ │ -001dfcd0: 6d6f 756e 745f 6f70 7420 6f70 7469 6f6e  mount_opt option
│ │ │ -001dfce0: 2069 7320 6e6f 7420 616c 7265 6164 7920   is not already 
│ │ │ -001dfcf0: 696e 2074 6865 206d 6f75 6e74 2070 6f69  in the mount poi
│ │ │ -001dfd00: 6e74 2773 202f 6574 632f 6673 7461 6220  nt's /etc/fstab 
│ │ │ -001dfd10: 656e 7472 792c 2061 6464 2069 740a 2020  entry, add it.  
│ │ │ -001dfd20: 2020 656c 6966 2021 2067 7265 7020 2224    elif ! grep "$
│ │ │ -001dfd30: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ -001dfd40: 685f 7265 6765 7870 2220 2f65 7463 2f66  h_regexp" /etc/f
│ │ │ -001dfd50: 7374 6162 207c 2067 7265 7020 2d71 2022  stab | grep -q "
│ │ │ -001dfd60: 6e6f 7375 6964 223b 2074 6865 6e0a 2020  nosuid"; then.  
│ │ │ -001dfd70: 2020 2020 2020 7072 6576 696f 7573 5f6d        previous_m
│ │ │ -001dfd80: 6f75 6e74 5f6f 7074 733d 2428 6772 6570  ount_opts=$(grep
│ │ │ -001dfd90: 2022 246d 6f75 6e74 5f70 6f69 6e74 5f6d   "$mount_point_m
│ │ │ -001dfda0: 6174 6368 5f72 6567 6578 7022 202f 6574  atch_regexp" /et
│ │ │ -001dfdb0: 632f 6673 7461 6220 7c20 6177 6b20 277b  c/fstab | awk '{
│ │ │ -001dfdc0: 7072 696e 7420 2434 7d27 290a 2020 2020  print $4}').    
│ │ │ -001dfdd0: 2020 2020 7365 6420 2d69 2022 737c 5c28      sed -i "s|\(
│ │ │ -001dfde0: 247b 6d6f 756e 745f 706f 696e 745f 6d61  ${mount_point_ma
│ │ │ -001dfdf0: 7463 685f 7265 6765 7870 7d2e 2a24 7b70  tch_regexp}.*${p
│ │ │ -001dfe00: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ -001dfe10: 7473 7d5c 297c 5c31 2c6e 6f73 7569 647c  ts}\)|\1,nosuid|
│ │ │ -001dfe20: 2220 2f65 7463 2f66 7374 6162 0a20 2020  " /etc/fstab.   
│ │ │ -001dfe30: 2066 690a 0a0a 2020 2020 6966 206d 6b64   fi...    if mkd
│ │ │ -001dfe40: 6972 202d 7020 222f 686f 6d65 223b 2074  ir -p "/home"; t
│ │ │ -001dfe50: 6865 6e0a 2020 2020 2020 2020 6966 206d  hen.        if m
│ │ │ -001dfe60: 6f75 6e74 706f 696e 7420 2d71 2022 2f68  ountpoint -q "/h
│ │ │ -001dfe70: 6f6d 6522 3b20 7468 656e 0a20 2020 2020  ome"; then.     
│ │ │ -001dfe80: 2020 2020 2020 206d 6f75 6e74 202d 6f20         mount -o 
│ │ │ -001dfe90: 7265 6d6f 756e 7420 2d2d 7461 7267 6574  remount --target
│ │ │ -001dfea0: 2022 2f68 6f6d 6522 0a20 2020 2020 2020   "/home".       
│ │ │ -001dfeb0: 2066 690a 2020 2020 6669 0a7d 0a0a 7065   fi.    fi.}..pe
│ │ │ -001dfec0: 7266 6f72 6d5f 7265 6d65 6469 6174 696f  rform_remediatio
│ │ │ -001dfed0: 6e0a 0a65 6c73 650a 2020 2020 2667 743b  n..else.    >
│ │ │ -001dfee0: 2661 6d70 3b32 2065 6368 6f20 2752 656d  &2 echo 'Rem
│ │ │ -001dfef0: 6564 6961 7469 6f6e 2069 7320 6e6f 7420  ediation is not 
│ │ │ -001dff00: 6170 706c 6963 6162 6c65 2c20 6e6f 7468  applicable, noth
│ │ │ -001dff10: 696e 6720 7761 7320 646f 6e65 270a 6669  ing was done'.fi
│ │ │ +001dd9b0: 6961 7469 6f6e 2041 6e73 6962 6c65 2073  iation Ansible s
│ │ │ +001dd9c0: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62  nippet ...
Reboo │ │ │ -001df470: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -001df480: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
- 
│ │ │ +001ddb00: 6e61 6d65 3a20 4761 7468 6572 2074 6865  name: Gather the
│ │ │ +001ddb10: 2070 6163 6b61 6765 2066 6163 7473 0a20   package facts. 
│ │ │ +001ddb20: 2070 6163 6b61 6765 5f66 6163 7473 3a0a   package_facts:.
│ │ │ +001ddb30: 2020 2020 6d61 6e61 6765 723a 2061 7574      manager: aut
│ │ │ +001ddb40: 6f0a 2020 7461 6773 3a0a 2020 2d20 4e49  o.  tags:.  - NI
│ │ │ +001ddb50: 5354 2d38 3030 2d35 332d 4143 2d36 0a20  ST-800-53-AC-6. 
│ │ │ +001ddb60: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ +001ddb70: 432d 3628 3129 0a20 202d 204e 4953 542d  C-6(1).  - NIST-
│ │ │ +001ddb80: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ +001ddb90: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +001ddba0: 4d2d 3728 6129 0a20 202d 204e 4953 542d  M-7(a).  - NIST-
│ │ │ +001ddbb0: 3830 302d 3533 2d43 4d2d 3728 6229 0a20  800-53-CM-7(b). 
│ │ │ +001ddbc0: 202d 204e 4953 542d 3830 302d 3533 2d4d   - NIST-800-53-M
│ │ │ +001ddbd0: 502d 370a 2020 2d20 636f 6e66 6967 7572  P-7.  - configur
│ │ │ +001ddbe0: 655f 7374 7261 7465 6779 0a20 202d 2068  e_strategy.  - h
│ │ │ +001ddbf0: 6967 685f 6469 7372 7570 7469 6f6e 0a20  igh_disruption. 
│ │ │ +001ddc00: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ +001ddc10: 790a 2020 2d20 6d65 6469 756d 5f73 6576  y.  - medium_sev
│ │ │ +001ddc20: 6572 6974 790a 2020 2d20 6d6f 756e 745f  erity.  - mount_
│ │ │ +001ddc30: 6f70 7469 6f6e 5f68 6f6d 655f 6e6f 7375  option_home_nosu
│ │ │ +001ddc40: 6964 0a20 202d 206e 6f5f 7265 626f 6f74  id.  - no_reboot
│ │ │ +001ddc50: 5f6e 6565 6465 640a 0a2d 206e 616d 653a  _needed..- name:
│ │ │ +001ddc60: 2027 4164 6420 6e6f 7375 6964 204f 7074   'Add nosuid Opt
│ │ │ +001ddc70: 696f 6e20 746f 202f 686f 6d65 3a20 4368  ion to /home: Ch
│ │ │ +001ddc80: 6563 6b20 696e 666f 726d 6174 696f 6e20  eck information 
│ │ │ +001ddc90: 6173 736f 6369 6174 6564 2074 6f20 6d6f  associated to mo
│ │ │ +001ddca0: 756e 7470 6f69 6e74 270a 2020 616e 7369  untpoint'.  ansi
│ │ │ +001ddcb0: 626c 652e 6275 696c 7469 6e2e 636f 6d6d  ble.builtin.comm
│ │ │ +001ddcc0: 616e 643a 2066 696e 646d 6e74 202d 2d66  and: findmnt --f
│ │ │ +001ddcd0: 7374 6162 2027 2f68 6f6d 6527 0a20 2072  stab '/home'.  r
│ │ │ +001ddce0: 6567 6973 7465 723a 2064 6576 6963 655f  egister: device_
│ │ │ +001ddcf0: 6e61 6d65 0a20 2066 6169 6c65 645f 7768  name.  failed_wh
│ │ │ +001ddd00: 656e 3a20 6465 7669 6365 5f6e 616d 652e  en: device_name.
│ │ │ +001ddd10: 7263 2026 6774 3b20 310a 2020 6368 616e  rc > 1.  chan
│ │ │ +001ddd20: 6765 645f 7768 656e 3a20 6661 6c73 650a  ged_when: false.
│ │ │ +001ddd30: 2020 6368 6563 6b5f 6d6f 6465 3a20 6661    check_mode: fa
│ │ │ +001ddd40: 6c73 650a 2020 7768 656e 3a0a 2020 2d20  lse.  when:.  - 
│ │ │ +001ddd50: 2820 6e6f 7420 2820 226b 6572 6e65 6c22  ( not ( "kernel"
│ │ │ +001ddd60: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001ddd70: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ +001ddd80: 626f 6f74 6322 2069 6e20 616e 7369 626c  bootc" in ansibl
│ │ │ +001ddd90: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +001ddda0: 0a20 2020 2061 6e64 206e 6f74 2022 6f70  .    and not "op
│ │ │ +001dddb0: 656e 7368 6966 742d 6b75 6265 6c65 7422  enshift-kubelet"
│ │ │ +001dddc0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001dddd0: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ +001ddde0: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ +001dddf0: 6c65 5f70 726f 635f 636d 646c 696e 650a  le_proc_cmdline.
│ │ │ +001dde00: 2020 2020 2920 616e 6420 6e6f 7420 2820      ) and not ( 
│ │ │ +001dde10: 616e 7369 626c 655f 7669 7274 7561 6c69  ansible_virtuali
│ │ │ +001dde20: 7a61 7469 6f6e 5f74 7970 6520 696e 205b  zation_type in [
│ │ │ +001dde30: 2264 6f63 6b65 7222 2c20 226c 7863 222c  "docker", "lxc",
│ │ │ +001dde40: 2022 6f70 656e 767a 222c 2022 706f 646d   "openvz", "podm
│ │ │ +001dde50: 616e 222c 0a20 2020 2022 636f 6e74 6169  an",.    "contai
│ │ │ +001dde60: 6e65 7222 5d20 2920 290a 2020 2d20 2722  ner"] ) ).  - '"
│ │ │ +001dde70: 2f68 6f6d 6522 2069 6e20 616e 7369 626c  /home" in ansibl
│ │ │ +001dde80: 655f 6d6f 756e 7473 207c 206d 6170 2861  e_mounts | map(a
│ │ │ +001dde90: 7474 7269 6275 7465 3d22 6d6f 756e 7422  ttribute="mount"
│ │ │ +001ddea0: 2920 7c20 6c69 7374 270a 2020 7461 6773  ) | list'.  tags
│ │ │ +001ddeb0: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ +001ddec0: 332d 4143 2d36 0a20 202d 204e 4953 542d  3-AC-6.  - NIST-
│ │ │ +001dded0: 3830 302d 3533 2d41 432d 3628 3129 0a20  800-53-AC-6(1). 
│ │ │ +001ddee0: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +001ddef0: 4d2d 3628 6129 0a20 202d 204e 4953 542d  M-6(a).  - NIST-
│ │ │ +001ddf00: 3830 302d 3533 2d43 4d2d 3728 6129 0a20  800-53-CM-7(a). 
│ │ │ +001ddf10: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +001ddf20: 4d2d 3728 6229 0a20 202d 204e 4953 542d  M-7(b).  - NIST-
│ │ │ +001ddf30: 3830 302d 3533 2d4d 502d 370a 2020 2d20  800-53-MP-7.  - 
│ │ │ +001ddf40: 636f 6e66 6967 7572 655f 7374 7261 7465  configure_strate
│ │ │ +001ddf50: 6779 0a20 202d 2068 6967 685f 6469 7372  gy.  - high_disr
│ │ │ +001ddf60: 7570 7469 6f6e 0a20 202d 206c 6f77 5f63  uption.  - low_c
│ │ │ +001ddf70: 6f6d 706c 6578 6974 790a 2020 2d20 6d65  omplexity.  - me
│ │ │ +001ddf80: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ +001ddf90: 2d20 6d6f 756e 745f 6f70 7469 6f6e 5f68  - mount_option_h
│ │ │ +001ddfa0: 6f6d 655f 6e6f 7375 6964 0a20 202d 206e  ome_nosuid.  - n
│ │ │ +001ddfb0: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ +001ddfc0: 0a2d 206e 616d 653a 2027 4164 6420 6e6f  .- name: 'Add no
│ │ │ +001ddfd0: 7375 6964 204f 7074 696f 6e20 746f 202f  suid Option to /
│ │ │ +001ddfe0: 686f 6d65 3a20 4372 6561 7465 206d 6f75  home: Create mou
│ │ │ +001ddff0: 6e74 5f69 6e66 6f20 6469 6374 696f 6e61  nt_info dictiona
│ │ │ +001de000: 7279 2076 6172 6961 626c 6527 0a20 2073  ry variable'.  s
│ │ │ +001de010: 6574 5f66 6163 743a 0a20 2020 206d 6f75  et_fact:.    mou
│ │ │ +001de020: 6e74 5f69 6e66 6f3a 2027 7b7b 206d 6f75  nt_info: '{{ mou
│ │ │ +001de030: 6e74 5f69 6e66 6f7c 6465 6661 756c 7428  nt_info|default(
│ │ │ +001de040: 7b7d 297c 636f 6d62 696e 6528 7b69 7465  {})|combine({ite
│ │ │ +001de050: 6d2e 303a 2069 7465 6d2e 317d 2920 7d7d  m.0: item.1}) }}
│ │ │ +001de060: 270a 2020 7769 7468 5f74 6f67 6574 6865  '.  with_togethe
│ │ │ +001de070: 723a 0a20 202d 2027 7b7b 2064 6576 6963  r:.  - '{{ devic
│ │ │ +001de080: 655f 6e61 6d65 2e73 7464 6f75 745f 6c69  e_name.stdout_li
│ │ │ +001de090: 6e65 735b 305d 2e73 706c 6974 2829 207c  nes[0].split() |
│ │ │ +001de0a0: 206d 6170 2827 276c 6f77 6572 2727 2920   map(''lower'') 
│ │ │ +001de0b0: 7c20 6c69 7374 207d 7d27 0a20 202d 2027  | list }}'.  - '
│ │ │ +001de0c0: 7b7b 2064 6576 6963 655f 6e61 6d65 2e73  {{ device_name.s
│ │ │ +001de0d0: 7464 6f75 745f 6c69 6e65 735b 315d 2e73  tdout_lines[1].s
│ │ │ +001de0e0: 706c 6974 2829 207c 206c 6973 7420 7d7d  plit() | list }}
│ │ │ +001de0f0: 270a 2020 7768 656e 3a0a 2020 2d20 2820  '.  when:.  - ( 
│ │ │ +001de100: 6e6f 7420 2820 226b 6572 6e65 6c22 2069  not ( "kernel" i
│ │ │ +001de110: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001de120: 7061 636b 6167 6573 2061 6e64 2022 626f  packages and "bo
│ │ │ +001de130: 6f74 6322 2069 6e20 616e 7369 626c 655f  otc" in ansible_
│ │ │ +001de140: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ +001de150: 2020 2061 6e64 206e 6f74 2022 6f70 656e     and not "open
│ │ │ +001de160: 7368 6966 742d 6b75 6265 6c65 7422 2069  shift-kubelet" i
│ │ │ +001de170: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001de180: 7061 636b 6167 6573 2061 6e64 2022 6f73  packages and "os
│ │ │ +001de190: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ +001de1a0: 5f70 726f 635f 636d 646c 696e 650a 2020  _proc_cmdline.  
│ │ │ +001de1b0: 2020 2920 616e 6420 6e6f 7420 2820 616e    ) and not ( an
│ │ │ +001de1c0: 7369 626c 655f 7669 7274 7561 6c69 7a61  sible_virtualiza
│ │ │ +001de1d0: 7469 6f6e 5f74 7970 6520 696e 205b 2264  tion_type in ["d
│ │ │ +001de1e0: 6f63 6b65 7222 2c20 226c 7863 222c 2022  ocker", "lxc", "
│ │ │ +001de1f0: 6f70 656e 767a 222c 2022 706f 646d 616e  openvz", "podman
│ │ │ +001de200: 222c 0a20 2020 2022 636f 6e74 6169 6e65  ",.    "containe
│ │ │ +001de210: 7222 5d20 2920 290a 2020 2d20 2722 2f68  r"] ) ).  - '"/h
│ │ │ +001de220: 6f6d 6522 2069 6e20 616e 7369 626c 655f  ome" in ansible_
│ │ │ +001de230: 6d6f 756e 7473 207c 206d 6170 2861 7474  mounts | map(att
│ │ │ +001de240: 7269 6275 7465 3d22 6d6f 756e 7422 2920  ribute="mount") 
│ │ │ +001de250: 7c20 6c69 7374 270a 2020 2d20 6465 7669  | list'.  - devi
│ │ │ +001de260: 6365 5f6e 616d 652e 7374 646f 7574 2069  ce_name.stdout i
│ │ │ +001de270: 7320 6465 6669 6e65 6420 616e 6420 6465  s defined and de
│ │ │ +001de280: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ +001de290: 5f6c 696e 6573 2069 7320 6465 6669 6e65  _lines is define
│ │ │ +001de2a0: 640a 2020 2d20 2864 6576 6963 655f 6e61  d.  - (device_na
│ │ │ +001de2b0: 6d65 2e73 7464 6f75 7420 7c20 6c65 6e67  me.stdout | leng
│ │ │ +001de2c0: 7468 2026 6774 3b20 3029 0a20 2074 6167  th > 0).  tag
│ │ │ +001de2d0: 733a 0a20 202d 204e 4953 542d 3830 302d  s:.  - NIST-800-
│ │ │ +001de2e0: 3533 2d41 432d 360a 2020 2d20 4e49 5354  53-AC-6.  - NIST
│ │ │ +001de2f0: 2d38 3030 2d35 332d 4143 2d36 2831 290a  -800-53-AC-6(1).
│ │ │ +001de300: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001de310: 434d 2d36 2861 290a 2020 2d20 4e49 5354  CM-6(a).  - NIST
│ │ │ +001de320: 2d38 3030 2d35 332d 434d 2d37 2861 290a  -800-53-CM-7(a).
│ │ │ +001de330: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001de340: 434d 2d37 2862 290a 2020 2d20 4e49 5354  CM-7(b).  - NIST
│ │ │ +001de350: 2d38 3030 2d35 332d 4d50 2d37 0a20 202d  -800-53-MP-7.  -
│ │ │ +001de360: 2063 6f6e 6669 6775 7265 5f73 7472 6174   configure_strat
│ │ │ +001de370: 6567 790a 2020 2d20 6869 6768 5f64 6973  egy.  - high_dis
│ │ │ +001de380: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f  ruption.  - low_
│ │ │ +001de390: 636f 6d70 6c65 7869 7479 0a20 202d 206d  complexity.  - m
│ │ │ +001de3a0: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ +001de3b0: 202d 206d 6f75 6e74 5f6f 7074 696f 6e5f   - mount_option_
│ │ │ +001de3c0: 686f 6d65 5f6e 6f73 7569 640a 2020 2d20  home_nosuid.  - 
│ │ │ +001de3d0: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ +001de3e0: 0a0a 2d20 6e61 6d65 3a20 2741 6464 206e  ..- name: 'Add n
│ │ │ +001de3f0: 6f73 7569 6420 4f70 7469 6f6e 2074 6f20  osuid Option to 
│ │ │ +001de400: 2f68 6f6d 653a 2049 6620 2f68 6f6d 6520  /home: If /home 
│ │ │ +001de410: 6e6f 7420 6d6f 756e 7465 642c 2063 7261  not mounted, cra
│ │ │ +001de420: 6674 206d 6f75 6e74 5f69 6e66 6f20 6d61  ft mount_info ma
│ │ │ +001de430: 6e75 616c 6c79 270a 2020 7365 745f 6661  nually'.  set_fa
│ │ │ +001de440: 6374 3a0a 2020 2020 6d6f 756e 745f 696e  ct:.    mount_in
│ │ │ +001de450: 666f 3a20 277b 7b20 6d6f 756e 745f 696e  fo: '{{ mount_in
│ │ │ +001de460: 666f 7c64 6566 6175 6c74 287b 7d29 7c63  fo|default({})|c
│ │ │ +001de470: 6f6d 6269 6e65 287b 6974 656d 2e30 3a20  ombine({item.0: 
│ │ │ +001de480: 6974 656d 2e31 7d29 207d 7d27 0a20 2077  item.1}) }}'.  w
│ │ │ +001de490: 6974 685f 746f 6765 7468 6572 3a0a 2020  ith_together:.  
│ │ │ +001de4a0: 2d20 2d20 7461 7267 6574 0a20 2020 202d  - - target.    -
│ │ │ +001de4b0: 2073 6f75 7263 650a 2020 2020 2d20 6673   source.    - fs
│ │ │ +001de4c0: 7479 7065 0a20 2020 202d 206f 7074 696f  type.    - optio
│ │ │ +001de4d0: 6e73 0a20 202d 202d 202f 686f 6d65 0a20  ns.  - - /home. 
│ │ │ +001de4e0: 2020 202d 2027 270a 2020 2020 2d20 2727     - ''.    - ''
│ │ │ +001de4f0: 0a20 2020 202d 2064 6566 6175 6c74 730a  .    - defaults.
│ │ │ +001de500: 2020 7768 656e 3a0a 2020 2d20 2820 6e6f    when:.  - ( no
│ │ │ +001de510: 7420 2820 226b 6572 6e65 6c22 2069 6e20  t ( "kernel" in 
│ │ │ +001de520: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001de530: 636b 6167 6573 2061 6e64 2022 626f 6f74  ckages and "boot
│ │ │ +001de540: 6322 2069 6e20 616e 7369 626c 655f 6661  c" in ansible_fa
│ │ │ +001de550: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ +001de560: 2061 6e64 206e 6f74 2022 6f70 656e 7368   and not "opensh
│ │ │ +001de570: 6966 742d 6b75 6265 6c65 7422 2069 6e20  ift-kubelet" in 
│ │ │ +001de580: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001de590: 636b 6167 6573 2061 6e64 2022 6f73 7472  ckages and "ostr
│ │ │ +001de5a0: 6565 2220 696e 2061 6e73 6962 6c65 5f70  ee" in ansible_p
│ │ │ +001de5b0: 726f 635f 636d 646c 696e 650a 2020 2020  roc_cmdline.    
│ │ │ +001de5c0: 2920 616e 6420 6e6f 7420 2820 616e 7369  ) and not ( ansi
│ │ │ +001de5d0: 626c 655f 7669 7274 7561 6c69 7a61 7469  ble_virtualizati
│ │ │ +001de5e0: 6f6e 5f74 7970 6520 696e 205b 2264 6f63  on_type in ["doc
│ │ │ +001de5f0: 6b65 7222 2c20 226c 7863 222c 2022 6f70  ker", "lxc", "op
│ │ │ +001de600: 656e 767a 222c 2022 706f 646d 616e 222c  envz", "podman",
│ │ │ +001de610: 0a20 2020 2022 636f 6e74 6169 6e65 7222  .    "container"
│ │ │ +001de620: 5d20 2920 290a 2020 2d20 2722 2f68 6f6d  ] ) ).  - '"/hom
│ │ │ +001de630: 6522 2069 6e20 616e 7369 626c 655f 6d6f  e" in ansible_mo
│ │ │ +001de640: 756e 7473 207c 206d 6170 2861 7474 7269  unts | map(attri
│ │ │ +001de650: 6275 7465 3d22 6d6f 756e 7422 2920 7c20  bute="mount") | 
│ │ │ +001de660: 6c69 7374 270a 2020 2d20 2822 2d2d 6673  list'.  - ("--fs
│ │ │ +001de670: 7461 6222 207c 206c 656e 6774 6820 3d3d  tab" | length ==
│ │ │ +001de680: 2030 290a 2020 2d20 6465 7669 6365 5f6e   0).  - device_n
│ │ │ +001de690: 616d 652e 7374 646f 7574 2069 7320 6465  ame.stdout is de
│ │ │ +001de6a0: 6669 6e65 6420 616e 6420 6465 7669 6365  fined and device
│ │ │ +001de6b0: 5f6e 616d 652e 7374 646f 7574 5f6c 696e  _name.stdout_lin
│ │ │ +001de6c0: 6573 2069 7320 6465 6669 6e65 640a 2020  es is defined.  
│ │ │ +001de6d0: 2d20 2864 6576 6963 655f 6e61 6d65 2e73  - (device_name.s
│ │ │ +001de6e0: 7464 6f75 7420 7c20 6c65 6e67 7468 203d  tdout | length =
│ │ │ +001de6f0: 3d20 3029 0a20 2074 6167 733a 0a20 202d  = 0).  tags:.  -
│ │ │ +001de700: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ +001de710: 360a 2020 2d20 4e49 5354 2d38 3030 2d35  6.  - NIST-800-5
│ │ │ +001de720: 332d 4143 2d36 2831 290a 2020 2d20 4e49  3-AC-6(1).  - NI
│ │ │ +001de730: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ +001de740: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001de750: 332d 434d 2d37 2861 290a 2020 2d20 4e49  3-CM-7(a).  - NI
│ │ │ +001de760: 5354 2d38 3030 2d35 332d 434d 2d37 2862  ST-800-53-CM-7(b
│ │ │ +001de770: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001de780: 332d 4d50 2d37 0a20 202d 2063 6f6e 6669  3-MP-7.  - confi
│ │ │ +001de790: 6775 7265 5f73 7472 6174 6567 790a 2020  gure_strategy.  
│ │ │ +001de7a0: 2d20 6869 6768 5f64 6973 7275 7074 696f  - high_disruptio
│ │ │ +001de7b0: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65  n.  - low_comple
│ │ │ +001de7c0: 7869 7479 0a20 202d 206d 6564 6975 6d5f  xity.  - medium_
│ │ │ +001de7d0: 7365 7665 7269 7479 0a20 202d 206d 6f75  severity.  - mou
│ │ │ +001de7e0: 6e74 5f6f 7074 696f 6e5f 686f 6d65 5f6e  nt_option_home_n
│ │ │ +001de7f0: 6f73 7569 640a 2020 2d20 6e6f 5f72 6562  osuid.  - no_reb
│ │ │ +001de800: 6f6f 745f 6e65 6564 6564 0a0a 2d20 6e61  oot_needed..- na
│ │ │ +001de810: 6d65 3a20 2741 6464 206e 6f73 7569 6420  me: 'Add nosuid 
│ │ │ +001de820: 4f70 7469 6f6e 2074 6f20 2f68 6f6d 653a  Option to /home:
│ │ │ +001de830: 204d 616b 6520 7375 7265 206e 6f73 7569   Make sure nosui
│ │ │ +001de840: 6420 6f70 7469 6f6e 2069 7320 7061 7274  d option is part
│ │ │ +001de850: 206f 6620 7468 6520 746f 202f 686f 6d65   of the to /home
│ │ │ +001de860: 0a20 2020 206f 7074 696f 6e73 270a 2020  .    options'.  
│ │ │ +001de870: 7365 745f 6661 6374 3a0a 2020 2020 6d6f  set_fact:.    mo
│ │ │ +001de880: 756e 745f 696e 666f 3a20 277b 7b20 6d6f  unt_info: '{{ mo
│ │ │ +001de890: 756e 745f 696e 666f 207c 2063 6f6d 6269  unt_info | combi
│ │ │ +001de8a0: 6e65 2820 7b27 276f 7074 696f 6e73 2727  ne( {''options''
│ │ │ +001de8b0: 3a27 2727 277e 286d 6f75 6e74 5f69 6e66  :''''~(mount_inf
│ │ │ +001de8c0: 6f2e 6f70 7469 6f6e 7320 7c0a 2020 2020  o.options |.    
│ │ │ +001de8d0: 2020 6465 6661 756c 7428 2727 2727 2929    default(''''))
│ │ │ +001de8e0: 7e28 2727 2c27 2720 6966 2028 6d6f 756e  ~('','' if (moun
│ │ │ +001de8f0: 745f 696e 666f 2e6f 7074 696f 6e73 207c  t_info.options |
│ │ │ +001de900: 2064 6566 6175 6c74 2827 2727 2729 2920   default('''')) 
│ │ │ +001de910: 656c 7365 2027 2727 2729 7e27 276e 6f73  else '''')~''nos
│ │ │ +001de920: 7569 6427 270a 2020 2020 2020 7d29 207d  uid''.      }) }
│ │ │ +001de930: 7d27 0a20 2077 6865 6e3a 0a20 202d 2028  }'.  when:.  - (
│ │ │ +001de940: 206e 6f74 2028 2022 6b65 726e 656c 2220   not ( "kernel" 
│ │ │ +001de950: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001de960: 2e70 6163 6b61 6765 7320 616e 6420 2262  .packages and "b
│ │ │ +001de970: 6f6f 7463 2220 696e 2061 6e73 6962 6c65  ootc" in ansible
│ │ │ +001de980: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ +001de990: 2020 2020 616e 6420 6e6f 7420 226f 7065      and not "ope
│ │ │ +001de9a0: 6e73 6869 6674 2d6b 7562 656c 6574 2220  nshift-kubelet" 
│ │ │ +001de9b0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001de9c0: 2e70 6163 6b61 6765 7320 616e 6420 226f  .packages and "o
│ │ │ +001de9d0: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ +001de9e0: 655f 7072 6f63 5f63 6d64 6c69 6e65 0a20  e_proc_cmdline. 
│ │ │ +001de9f0: 2020 2029 2061 6e64 206e 6f74 2028 2061     ) and not ( a
│ │ │ +001dea00: 6e73 6962 6c65 5f76 6972 7475 616c 697a  nsible_virtualiz
│ │ │ +001dea10: 6174 696f 6e5f 7479 7065 2069 6e20 5b22  ation_type in ["
│ │ │ +001dea20: 646f 636b 6572 222c 2022 6c78 6322 2c20  docker", "lxc", 
│ │ │ +001dea30: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61  "openvz", "podma
│ │ │ +001dea40: 6e22 2c0a 2020 2020 2263 6f6e 7461 696e  n",.    "contain
│ │ │ +001dea50: 6572 225d 2029 2029 0a20 202d 2027 222f  er"] ) ).  - '"/
│ │ │ +001dea60: 686f 6d65 2220 696e 2061 6e73 6962 6c65  home" in ansible
│ │ │ +001dea70: 5f6d 6f75 6e74 7320 7c20 6d61 7028 6174  _mounts | map(at
│ │ │ +001dea80: 7472 6962 7574 653d 226d 6f75 6e74 2229  tribute="mount")
│ │ │ +001dea90: 207c 206c 6973 7427 0a20 202d 206d 6f75   | list'.  - mou
│ │ │ +001deaa0: 6e74 5f69 6e66 6f20 6973 2064 6566 696e  nt_info is defin
│ │ │ +001deab0: 6564 2061 6e64 2022 6e6f 7375 6964 2220  ed and "nosuid" 
│ │ │ +001deac0: 6e6f 7420 696e 2028 6d6f 756e 745f 696e  not in (mount_in
│ │ │ +001dead0: 666f 2e6f 7074 696f 6e73 207c 2064 6566  fo.options | def
│ │ │ +001deae0: 6175 6c74 2827 2729 290a 2020 7461 6773  ault('')).  tags
│ │ │ +001deaf0: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ +001deb00: 332d 4143 2d36 0a20 202d 204e 4953 542d  3-AC-6.  - NIST-
│ │ │ +001deb10: 3830 302d 3533 2d41 432d 3628 3129 0a20  800-53-AC-6(1). 
│ │ │ +001deb20: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +001deb30: 4d2d 3628 6129 0a20 202d 204e 4953 542d  M-6(a).  - NIST-
│ │ │ +001deb40: 3830 302d 3533 2d43 4d2d 3728 6129 0a20  800-53-CM-7(a). 
│ │ │ +001deb50: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +001deb60: 4d2d 3728 6229 0a20 202d 204e 4953 542d  M-7(b).  - NIST-
│ │ │ +001deb70: 3830 302d 3533 2d4d 502d 370a 2020 2d20  800-53-MP-7.  - 
│ │ │ +001deb80: 636f 6e66 6967 7572 655f 7374 7261 7465  configure_strate
│ │ │ +001deb90: 6779 0a20 202d 2068 6967 685f 6469 7372  gy.  - high_disr
│ │ │ +001deba0: 7570 7469 6f6e 0a20 202d 206c 6f77 5f63  uption.  - low_c
│ │ │ +001debb0: 6f6d 706c 6578 6974 790a 2020 2d20 6d65  omplexity.  - me
│ │ │ +001debc0: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ +001debd0: 2d20 6d6f 756e 745f 6f70 7469 6f6e 5f68  - mount_option_h
│ │ │ +001debe0: 6f6d 655f 6e6f 7375 6964 0a20 202d 206e  ome_nosuid.  - n
│ │ │ +001debf0: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ +001dec00: 0a2d 206e 616d 653a 2027 4164 6420 6e6f  .- name: 'Add no
│ │ │ +001dec10: 7375 6964 204f 7074 696f 6e20 746f 202f  suid Option to /
│ │ │ +001dec20: 686f 6d65 3a20 456e 7375 7265 202f 686f  home: Ensure /ho
│ │ │ +001dec30: 6d65 2069 7320 6d6f 756e 7465 6420 7769  me is mounted wi
│ │ │ +001dec40: 7468 206e 6f73 7569 6420 6f70 7469 6f6e  th nosuid option
│ │ │ +001dec50: 270a 2020 616e 7369 626c 652e 706f 7369  '.  ansible.posi
│ │ │ +001dec60: 782e 6d6f 756e 743a 0a20 2020 2070 6174  x.mount:.    pat
│ │ │ +001dec70: 683a 202f 686f 6d65 0a20 2020 2073 7263  h: /home.    src
│ │ │ +001dec80: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ +001dec90: 2e73 6f75 7263 6520 7c20 6465 6661 756c  .source | defaul
│ │ │ +001deca0: 7428 2727 2727 2920 7d7d 270a 2020 2020  t('''') }}'.    
│ │ │ +001decb0: 6f70 7473 3a20 277b 7b20 6d6f 756e 745f  opts: '{{ mount_
│ │ │ +001decc0: 696e 666f 2e6f 7074 696f 6e73 207c 2064  info.options | d
│ │ │ +001decd0: 6566 6175 6c74 2827 2727 2729 207d 7d27  efault('''') }}'
│ │ │ +001dece0: 0a20 2020 2073 7461 7465 3a20 6d6f 756e  .    state: moun
│ │ │ +001decf0: 7465 640a 2020 2020 6673 7479 7065 3a20  ted.    fstype: 
│ │ │ +001ded00: 277b 7b20 6d6f 756e 745f 696e 666f 2e66  '{{ mount_info.f
│ │ │ +001ded10: 7374 7970 6520 7c20 6465 6661 756c 7428  stype | default(
│ │ │ +001ded20: 2727 2727 2920 7d7d 270a 2020 7265 6769  '''') }}'.  regi
│ │ │ +001ded30: 7374 6572 3a20 6d6f 756e 745f 7265 7375  ster: mount_resu
│ │ │ +001ded40: 6c74 0a20 2066 6169 6c65 645f 7768 656e  lt.  failed_when
│ │ │ +001ded50: 3a0a 2020 2d20 6d6f 756e 745f 7265 7375  :.  - mount_resu
│ │ │ +001ded60: 6c74 2069 7320 6661 696c 6564 0a20 202d  lt is failed.  -
│ │ │ +001ded70: 2027 2727 7461 7267 6574 2069 7320 6275   '''target is bu
│ │ │ +001ded80: 7379 2727 206e 6f74 2069 6e20 286d 6f75  sy'' not in (mou
│ │ │ +001ded90: 6e74 5f72 6573 756c 742e 6d73 6720 7c20  nt_result.msg | 
│ │ │ +001deda0: 6465 6661 756c 7428 2727 2727 2929 270a  default(''''))'.
│ │ │ +001dedb0: 2020 2d20 2727 2761 6c72 6561 6479 206d    - '''already m
│ │ │ +001dedc0: 6f75 6e74 6564 2727 206e 6f74 2069 6e20  ounted'' not in 
│ │ │ +001dedd0: 286d 6f75 6e74 5f72 6573 756c 742e 6d73  (mount_result.ms
│ │ │ +001dede0: 6720 7c20 6465 6661 756c 7428 2727 2727  g | default(''''
│ │ │ +001dedf0: 2929 270a 2020 7768 656e 3a0a 2020 2d20  ))'.  when:.  - 
│ │ │ +001dee00: 2820 6e6f 7420 2820 226b 6572 6e65 6c22  ( not ( "kernel"
│ │ │ +001dee10: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001dee20: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ +001dee30: 626f 6f74 6322 2069 6e20 616e 7369 626c  bootc" in ansibl
│ │ │ +001dee40: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +001dee50: 0a20 2020 2061 6e64 206e 6f74 2022 6f70  .    and not "op
│ │ │ +001dee60: 656e 7368 6966 742d 6b75 6265 6c65 7422  enshift-kubelet"
│ │ │ +001dee70: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001dee80: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ +001dee90: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ +001deea0: 6c65 5f70 726f 635f 636d 646c 696e 650a  le_proc_cmdline.
│ │ │ +001deeb0: 2020 2020 2920 616e 6420 6e6f 7420 2820      ) and not ( 
│ │ │ +001deec0: 616e 7369 626c 655f 7669 7274 7561 6c69  ansible_virtuali
│ │ │ +001deed0: 7a61 7469 6f6e 5f74 7970 6520 696e 205b  zation_type in [
│ │ │ +001deee0: 2264 6f63 6b65 7222 2c20 226c 7863 222c  "docker", "lxc",
│ │ │ +001deef0: 2022 6f70 656e 767a 222c 2022 706f 646d   "openvz", "podm
│ │ │ +001def00: 616e 222c 0a20 2020 2022 636f 6e74 6169  an",.    "contai
│ │ │ +001def10: 6e65 7222 5d20 2920 290a 2020 2d20 2722  ner"] ) ).  - '"
│ │ │ +001def20: 2f68 6f6d 6522 2069 6e20 616e 7369 626c  /home" in ansibl
│ │ │ +001def30: 655f 6d6f 756e 7473 207c 206d 6170 2861  e_mounts | map(a
│ │ │ +001def40: 7474 7269 6275 7465 3d22 6d6f 756e 7422  ttribute="mount"
│ │ │ +001def50: 2920 7c20 6c69 7374 270a 2020 2d20 6d6f  ) | list'.  - mo
│ │ │ +001def60: 756e 745f 696e 666f 2069 7320 6465 6669  unt_info is defi
│ │ │ +001def70: 6e65 640a 2020 2d20 2864 6576 6963 655f  ned.  - (device_
│ │ │ +001def80: 6e61 6d65 2e73 7464 6f75 7420 6973 2064  name.stdout is d
│ │ │ +001def90: 6566 696e 6564 2061 6e64 2028 6465 7669  efined and (devi
│ │ │ +001defa0: 6365 5f6e 616d 652e 7374 646f 7574 207c  ce_name.stdout |
│ │ │ +001defb0: 206c 656e 6774 6820 2667 743b 2030 2929   length > 0))
│ │ │ +001defc0: 206f 7220 2822 2d2d 6673 7461 6222 0a20   or ("--fstab". 
│ │ │ +001defd0: 2020 207c 206c 656e 6774 6820 3d3d 2030     | length == 0
│ │ │ +001defe0: 290a 2020 7461 6773 3a0a 2020 2d20 4e49  ).  tags:.  - NI
│ │ │ +001deff0: 5354 2d38 3030 2d35 332d 4143 2d36 0a20  ST-800-53-AC-6. 
│ │ │ +001df000: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ +001df010: 432d 3628 3129 0a20 202d 204e 4953 542d  C-6(1).  - NIST-
│ │ │ +001df020: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ +001df030: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +001df040: 4d2d 3728 6129 0a20 202d 204e 4953 542d  M-7(a).  - NIST-
│ │ │ +001df050: 3830 302d 3533 2d43 4d2d 3728 6229 0a20  800-53-CM-7(b). 
│ │ │ +001df060: 202d 204e 4953 542d 3830 302d 3533 2d4d   - NIST-800-53-M
│ │ │ +001df070: 502d 370a 2020 2d20 636f 6e66 6967 7572  P-7.  - configur
│ │ │ +001df080: 655f 7374 7261 7465 6779 0a20 202d 2068  e_strategy.  - h
│ │ │ +001df090: 6967 685f 6469 7372 7570 7469 6f6e 0a20  igh_disruption. 
│ │ │ +001df0a0: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ +001df0b0: 790a 2020 2d20 6d65 6469 756d 5f73 6576  y.  - medium_sev
│ │ │ +001df0c0: 6572 6974 790a 2020 2d20 6d6f 756e 745f  erity.  - mount_
│ │ │ +001df0d0: 6f70 7469 6f6e 5f68 6f6d 655f 6e6f 7375  option_home_nosu
│ │ │ +001df0e0: 6964 0a20 202d 206e 6f5f 7265 626f 6f74  id.  - no_reboot
│ │ │ +001df0f0: 5f6e 6565 6465 640a 3c2f 636f 6465 3e3c  _needed.<
│ │ │ +001df100: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>Remediat
│ │ │ +001df1b0: 696f 6e20 5368 656c 6c20 7363 7269 7074  ion Shell script
│ │ │ +001df1c0: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976   ...
│ │ │ +001df260: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
Comp │ │ │ +001dda50: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +001dda60: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ +001dda80: 3c2f 7468 3e3c 7464 3e68 6967 683c 2f74 high
R │ │ │ +001ddaa0: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +001ddab0: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ +001ddad0: 2f74 683e 3c74 643e 636f 6e66 6967 7572 /th>configur │ │ │ +001ddae0: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
Reboot:false
# Remedi │ │ │ +001df280: 6174 696f 6e20 6973 2061 7070 6c69 6361 ation is applica │ │ │ +001df290: 626c 6520 6f6e 6c79 2069 6e20 6365 7274 ble only in cert │ │ │ +001df2a0: 6169 6e20 706c 6174 666f 726d 730a 6966 ain platforms.if │ │ │ +001df2b0: 2028 2021 2028 207b 2072 706d 202d 2d71 ( ! ( { rpm --q │ │ │ +001df2c0: 7569 6574 202d 7120 6b65 726e 656c 203b uiet -q kernel ; │ │ │ +001df2d0: 7d20 2661 6d70 3b26 616d 703b 207b 2072 } && { r │ │ │ +001df2e0: 706d 202d 2d71 7569 6574 202d 7120 626f pm --quiet -q bo │ │ │ +001df2f0: 6f74 6320 3b7d 2026 616d 703b 2661 6d70 otc ;} && │ │ │ +001df300: 3b20 7b20 2120 7270 6d20 2d2d 7175 6965 ; { ! rpm --quie │ │ │ +001df310: 7420 2d71 206f 7065 6e73 6869 6674 2d6b t -q openshift-k │ │ │ +001df320: 7562 656c 6574 203b 7d20 2661 6d70 3b26 ubelet ;} && │ │ │ +001df330: 616d 703b 2028 5b20 2d66 202f 7275 6e2f amp; ([ -f /run/ │ │ │ +001df340: 6f73 7472 6565 2d62 6f6f 7465 6420 5d20 ostree-booted ] │ │ │ +001df350: 7c7c 205b 202d 4c20 2f6f 7374 7265 6520 || [ -L /ostree │ │ │ +001df360: 5d29 2029 2026 616d 703b 2661 6d70 3b20 ]) ) && │ │ │ +001df370: 2120 2820 5b20 2d66 202f 2e64 6f63 6b65 ! ( [ -f /.docke │ │ │ +001df380: 7265 6e76 205d 207c 7c20 5b20 2d66 202f renv ] || [ -f / │ │ │ +001df390: 7275 6e2f 2e63 6f6e 7461 696e 6572 656e run/.containeren │ │ │ +001df3a0: 7620 5d20 2920 2920 2661 6d70 3b26 616d v ] ) ) &&am │ │ │ +001df3b0: 703b 207b 2028 2066 696e 646d 6e74 202d p; { ( findmnt - │ │ │ +001df3c0: 2d6b 6572 6e65 6c20 222f 686f 6d65 2220 -kernel "/home" │ │ │ +001df3d0: 2667 743b 202f 6465 762f 6e75 6c6c 207c > /dev/null | │ │ │ +001df3e0: 7c20 6669 6e64 6d6e 7420 2d2d 6673 7461 | findmnt --fsta │ │ │ +001df3f0: 6220 222f 686f 6d65 2220 2667 743b 202f b "/home" > / │ │ │ +001df400: 6465 762f 6e75 6c6c 2029 3b20 7d3b 2074 dev/null ); }; t │ │ │ +001df410: 6865 6e0a 0a66 756e 6374 696f 6e20 7065 hen..function pe │ │ │ +001df420: 7266 6f72 6d5f 7265 6d65 6469 6174 696f rform_remediatio │ │ │ +001df430: 6e20 7b0a 0a20 2020 200a 2020 2020 2020 n {.. . │ │ │ +001df440: 2020 2320 7468 6520 6d6f 756e 7420 706f # the mount po │ │ │ +001df450: 696e 7420 2f68 6f6d 6520 6861 7320 746f int /home has to │ │ │ +001df460: 2062 6520 6465 6669 6e65 6420 696e 202f be defined in / │ │ │ +001df470: 6574 632f 6673 7461 620a 2020 2020 2020 etc/fstab. │ │ │ +001df480: 2020 2320 6265 666f 7265 2074 6869 7320 # before this │ │ │ +001df490: 7265 6d65 6469 6174 696f 6e20 6361 6e20 remediation can │ │ │ +001df4a0: 6265 2065 7865 6375 7465 642e 2049 6e20 be executed. In │ │ │ +001df4b0: 6361 7365 2069 7420 6973 206e 6f74 2064 case it is not d │ │ │ +001df4c0: 6566 696e 6564 2c20 7468 650a 2020 2020 efined, the. │ │ │ +001df4d0: 2020 2020 2320 7265 6d65 6469 6174 696f # remediatio │ │ │ +001df4e0: 6e20 6162 6f72 7473 2061 6e64 206e 6f20 n aborts and no │ │ │ +001df4f0: 6368 616e 6765 7320 7265 6761 7264 696e changes regardin │ │ │ +001df500: 6720 7468 6520 6d6f 756e 7420 706f 696e g the mount poin │ │ │ +001df510: 7420 6172 6520 646f 6e65 2e0a 2020 2020 t are done.. │ │ │ +001df520: 2020 2020 6d6f 756e 745f 706f 696e 745f mount_point_ │ │ │ +001df530: 6d61 7463 685f 7265 6765 7870 3d22 2428 match_regexp="$( │ │ │ +001df540: 7072 696e 7466 2022 5e5b 5b3a 7370 6163 printf "^[[:spac │ │ │ +001df550: 653a 5d5d 2a5b 5e23 5d2e 2a5b 5b3a 7370 e:]]*[^#].*[[:sp │ │ │ +001df560: 6163 653a 5d5d 2573 5b5b 3a73 7061 6365 ace:]]%s[[:space │ │ │ +001df570: 3a5d 5d22 2022 2f68 6f6d 6522 2922 0a0a :]]" "/home")".. │ │ │ +001df580: 2020 2020 6772 6570 2022 246d 6f75 6e74 grep "$mount │ │ │ +001df590: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567 _point_match_reg │ │ │ +001df5a0: 6578 7022 202d 7120 2f65 7463 2f66 7374 exp" -q /etc/fst │ │ │ +001df5b0: 6162 205c 0a20 2020 2020 2020 207c 7c20 ab \. || │ │ │ +001df5c0: 7b20 6563 686f 2022 5468 6520 6d6f 756e { echo "The moun │ │ │ +001df5d0: 7420 706f 696e 7420 272f 686f 6d65 2720 t point '/home' │ │ │ +001df5e0: 6973 206e 6f74 2065 7665 6e20 696e 202f is not even in / │ │ │ +001df5f0: 6574 632f 6673 7461 622c 2073 6f20 7765 etc/fstab, so we │ │ │ +001df600: 2063 616e 2774 2073 6574 2075 7020 6d6f can't set up mo │ │ │ +001df610: 756e 7420 6f70 7469 6f6e 7322 2026 6774 unt options" > │ │ │ +001df620: 3b26 616d 703b 323b 0a20 2020 2020 2020 ;&2;. │ │ │ +001df630: 2020 2020 2020 2020 2065 6368 6f20 224e echo "N │ │ │ +001df640: 6f74 2072 656d 6564 6961 7469 6e67 2c20 ot remediating, │ │ │ +001df650: 6265 6361 7573 6520 7468 6572 6520 6973 because there is │ │ │ +001df660: 206e 6f20 7265 636f 7264 206f 6620 2f68 no record of /h │ │ │ +001df670: 6f6d 6520 696e 202f 6574 632f 6673 7461 ome in /etc/fsta │ │ │ +001df680: 6222 2026 6774 3b26 616d 703b 323b 2072 b" >&2; r │ │ │ +001df690: 6574 7572 6e20 313b 207d 0a20 2020 200a eturn 1; }. . │ │ │ +001df6a0: 0a0a 2020 2020 6d6f 756e 745f 706f 696e .. mount_poin │ │ │ +001df6b0: 745f 6d61 7463 685f 7265 6765 7870 3d22 t_match_regexp=" │ │ │ +001df6c0: 2428 7072 696e 7466 2022 5e5b 5b3a 7370 $(printf "^[[:sp │ │ │ +001df6d0: 6163 653a 5d5d 2a5b 5e23 5d2e 2a5b 5b3a ace:]]*[^#].*[[: │ │ │ +001df6e0: 7370 6163 653a 5d5d 2573 5b5b 3a73 7061 space:]]%s[[:spa │ │ │ +001df6f0: 6365 3a5d 5d22 202f 686f 6d65 2922 0a0a ce:]]" /home)".. │ │ │ +001df700: 2020 2020 2320 4966 2074 6865 206d 6f75 # If the mou │ │ │ +001df710: 6e74 2070 6f69 6e74 2069 7320 6e6f 7420 nt point is not │ │ │ +001df720: 696e 202f 6574 632f 6673 7461 622c 2067 in /etc/fstab, g │ │ │ +001df730: 6574 2070 7265 7669 6f75 7320 6d6f 756e et previous moun │ │ │ +001df740: 7420 6f70 7469 6f6e 7320 6672 6f6d 202f t options from / │ │ │ +001df750: 6574 632f 6d74 6162 0a20 2020 2069 6620 etc/mtab. if │ │ │ +001df760: 2120 6772 6570 202d 7120 2224 6d6f 756e ! grep -q "$moun │ │ │ +001df770: 745f 706f 696e 745f 6d61 7463 685f 7265 t_point_match_re │ │ │ +001df780: 6765 7870 2220 2f65 7463 2f66 7374 6162 gexp" /etc/fstab │ │ │ +001df790: 3b20 7468 656e 0a20 2020 2020 2020 2023 ; then. # │ │ │ +001df7a0: 2072 756e 7469 6d65 206f 7074 7320 7769 runtime opts wi │ │ │ +001df7b0: 7468 6f75 7420 736f 6d65 2061 7574 6f6d thout some autom │ │ │ +001df7c0: 6174 6963 206b 6572 6e65 6c2f 7573 6572 atic kernel/user │ │ │ +001df7d0: 7370 6163 652d 6164 6465 6420 6465 6661 space-added defa │ │ │ +001df7e0: 756c 7473 0a20 2020 2020 2020 2070 7265 ults. pre │ │ │ +001df7f0: 7669 6f75 735f 6d6f 756e 745f 6f70 7473 vious_mount_opts │ │ │ +001df800: 3d24 2867 7265 7020 2224 6d6f 756e 745f =$(grep "$mount_ │ │ │ +001df810: 706f 696e 745f 6d61 7463 685f 7265 6765 point_match_rege │ │ │ +001df820: 7870 2220 2f65 7463 2f6d 7461 6220 7c20 xp" /etc/mtab | │ │ │ +001df830: 6865 6164 202d 3120 7c20 2061 776b 2027 head -1 | awk ' │ │ │ +001df840: 7b70 7269 6e74 2024 347d 2720 5c0a 2020 {print $4}' \. │ │ │ +001df850: 2020 2020 2020 2020 2020 2020 2020 2020 │ │ │ +001df860: 2020 7c20 7365 6420 2d45 2022 732f 2872 | sed -E "s/(r │ │ │ +001df870: 777c 6465 6661 756c 7473 7c73 6563 6c61 w|defaults|secla │ │ │ +001df880: 6265 6c7c 6e6f 7375 6964 2928 2c7c 2429 bel|nosuid)(,|$) │ │ │ +001df890: 2f2f 673b 732f 2c24 2f2f 2229 0a20 2020 //g;s/,$//"). │ │ │ +001df8a0: 2020 2020 205b 2022 2470 7265 7669 6f75 [ "$previou │ │ │ +001df8b0: 735f 6d6f 756e 745f 6f70 7473 2220 5d20 s_mount_opts" ] │ │ │ +001df8c0: 2661 6d70 3b26 616d 703b 2070 7265 7669 && previ │ │ │ +001df8d0: 6f75 735f 6d6f 756e 745f 6f70 7473 2b3d ous_mount_opts+= │ │ │ +001df8e0: 222c 220a 2020 2020 2020 2020 2320 496e ",". # In │ │ │ +001df8f0: 2069 736f 3936 3630 2066 696c 6573 7973 iso9660 filesys │ │ │ +001df900: 7465 6d73 206d 7461 6220 636f 756c 6420 tems mtab could │ │ │ +001df910: 6465 7363 7269 6265 2061 2022 626c 6f63 describe a "bloc │ │ │ +001df920: 6b73 697a 6522 2076 616c 7565 2c20 7468 ksize" value, th │ │ │ +001df930: 6973 2073 686f 756c 6420 6265 2072 6566 is should be ref │ │ │ +001df940: 6c65 6374 6564 2069 6e0a 2020 2020 2020 lected in. │ │ │ +001df950: 2020 2320 6673 7461 6220 6173 2022 626c # fstab as "bl │ │ │ +001df960: 6f63 6b22 2e20 2054 6865 206e 6578 7420 ock". The next │ │ │ +001df970: 7661 7269 6162 6c65 2069 7320 746f 2073 variable is to s │ │ │ +001df980: 6174 6973 6679 2073 6865 6c6c 6368 6563 atisfy shellchec │ │ │ +001df990: 6b20 5343 3230 3530 2e0a 2020 2020 2020 k SC2050.. │ │ │ +001df9a0: 2020 6673 5f74 7970 653d 2222 0a20 2020 fs_type="". │ │ │ +001df9b0: 2020 2020 2069 6620 5b20 2022 2466 735f if [ "$fs_ │ │ │ +001df9c0: 7479 7065 2220 3d3d 2022 6973 6f39 3636 type" == "iso966 │ │ │ +001df9d0: 3022 205d 203b 2074 6865 6e0a 2020 2020 0" ] ; then. │ │ │ +001df9e0: 2020 2020 2020 2020 7072 6576 696f 7573 previous │ │ │ +001df9f0: 5f6d 6f75 6e74 5f6f 7074 733d 2428 7365 _mount_opts=$(se │ │ │ +001dfa00: 6420 2773 2f62 6c6f 636b 7369 7a65 3d2f d 's/blocksize=/ │ │ │ +001dfa10: 626c 6f63 6b3d 2f27 2026 6c74 3b26 6c74 block=/' << │ │ │ +001dfa20: 3b26 6c74 3b20 2224 7072 6576 696f 7573 ;< "$previous │ │ │ +001dfa30: 5f6d 6f75 6e74 5f6f 7074 7322 290a 2020 _mount_opts"). │ │ │ +001dfa40: 2020 2020 2020 6669 0a20 2020 2020 2020 fi. │ │ │ +001dfa50: 2065 6368 6f20 2220 2f68 6f6d 6520 2064 echo " /home d │ │ │ +001dfa60: 6566 6175 6c74 732c 247b 7072 6576 696f efaults,${previo │ │ │ +001dfa70: 7573 5f6d 6f75 6e74 5f6f 7074 737d 6e6f us_mount_opts}no │ │ │ +001dfa80: 7375 6964 2030 2030 2220 2667 743b 2667 suid 0 0" >&g │ │ │ +001dfa90: 743b 202f 6574 632f 6673 7461 620a 2020 t; /etc/fstab. │ │ │ +001dfaa0: 2020 2320 4966 2074 6865 206d 6f75 6e74 # If the mount │ │ │ +001dfab0: 5f6f 7074 206f 7074 696f 6e20 6973 206e _opt option is n │ │ │ +001dfac0: 6f74 2061 6c72 6561 6479 2069 6e20 7468 ot already in th │ │ │ +001dfad0: 6520 6d6f 756e 7420 706f 696e 7427 7320 e mount point's │ │ │ +001dfae0: 2f65 7463 2f66 7374 6162 2065 6e74 7279 /etc/fstab entry │ │ │ +001dfaf0: 2c20 6164 6420 6974 0a20 2020 2065 6c69 , add it. eli │ │ │ +001dfb00: 6620 2120 6772 6570 2022 246d 6f75 6e74 f ! grep "$mount │ │ │ +001dfb10: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567 _point_match_reg │ │ │ +001dfb20: 6578 7022 202f 6574 632f 6673 7461 6220 exp" /etc/fstab │ │ │ +001dfb30: 7c20 6772 6570 202d 7120 226e 6f73 7569 | grep -q "nosui │ │ │ +001dfb40: 6422 3b20 7468 656e 0a20 2020 2020 2020 d"; then. │ │ │ +001dfb50: 2070 7265 7669 6f75 735f 6d6f 756e 745f previous_mount_ │ │ │ +001dfb60: 6f70 7473 3d24 2867 7265 7020 2224 6d6f opts=$(grep "$mo │ │ │ +001dfb70: 756e 745f 706f 696e 745f 6d61 7463 685f unt_point_match_ │ │ │ +001dfb80: 7265 6765 7870 2220 2f65 7463 2f66 7374 regexp" /etc/fst │ │ │ +001dfb90: 6162 207c 2061 776b 2027 7b70 7269 6e74 ab | awk '{print │ │ │ +001dfba0: 2024 347d 2729 0a20 2020 2020 2020 2073 $4}'). s │ │ │ +001dfbb0: 6564 202d 6920 2273 7c5c 2824 7b6d 6f75 ed -i "s|\(${mou │ │ │ +001dfbc0: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72 nt_point_match_r │ │ │ +001dfbd0: 6567 6578 707d 2e2a 247b 7072 6576 696f egexp}.*${previo │ │ │ +001dfbe0: 7573 5f6d 6f75 6e74 5f6f 7074 737d 5c29 us_mount_opts}\) │ │ │ +001dfbf0: 7c5c 312c 6e6f 7375 6964 7c22 202f 6574 |\1,nosuid|" /et │ │ │ +001dfc00: 632f 6673 7461 620a 2020 2020 6669 0a0a c/fstab. fi.. │ │ │ +001dfc10: 0a20 2020 2069 6620 6d6b 6469 7220 2d70 . if mkdir -p │ │ │ +001dfc20: 2022 2f68 6f6d 6522 3b20 7468 656e 0a20 "/home"; then. │ │ │ +001dfc30: 2020 2020 2020 2069 6620 6d6f 756e 7470 if mountp │ │ │ +001dfc40: 6f69 6e74 202d 7120 222f 686f 6d65 223b oint -q "/home"; │ │ │ +001dfc50: 2074 6865 6e0a 2020 2020 2020 2020 2020 then. │ │ │ +001dfc60: 2020 6d6f 756e 7420 2d6f 2072 656d 6f75 mount -o remou │ │ │ +001dfc70: 6e74 202d 2d74 6172 6765 7420 222f 686f nt --target "/ho │ │ │ +001dfc80: 6d65 220a 2020 2020 2020 2020 6669 0a20 me". fi. │ │ │ +001dfc90: 2020 2066 690a 7d0a 0a70 6572 666f 726d fi.}..perform │ │ │ +001dfca0: 5f72 656d 6564 6961 7469 6f6e 0a0a 656c _remediation..el │ │ │ +001dfcb0: 7365 0a20 2020 2026 6774 3b26 616d 703b se. >& │ │ │ +001dfcc0: 3220 6563 686f 2027 5265 6d65 6469 6174 2 echo 'Remediat │ │ │ +001dfcd0: 696f 6e20 6973 206e 6f74 2061 7070 6c69 ion is not appli │ │ │ +001dfce0: 6361 626c 652c 206e 6f74 6869 6e67 2077 cable, nothing w │ │ │ +001dfcf0: 6173 2064 6f6e 6527 0a66 690a 3c2f 636f as done'.fi.
< │ │ │ +001dfd10: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ +001dfd20: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ +001dfd30: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ +001dfd40: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ +001dfd50: 6435 3833 2220 7461 6269 6e64 6578 3d22 d583" tabindex=" │ │ │ +001dfd60: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ +001dfd70: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ +001dfd80: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ +001dfd90: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ +001dfda0: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ +001dfdb0: 6469 6174 696f 6e20 416e 6163 6f6e 6461 diation Anaconda │ │ │ +001dfdc0: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ +001dfdd0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ +001dfe70: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr> │ │ │ +001dfec0: 3c74 723e 3c74 683e 5374 7261 7465 6779
.pa
│ │ │ +001dff00: 7274 202f 686f 6d65 202d 2d6d 6f75 6e74  rt /home --mount
│ │ │ +001dff10: 6f70 7469 6f6e 733d 226e 6f73 7569 6422  options="nosuid"
│ │ │  001dff20: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
< │ │ │ 001dff40: 2f74 723e 3c2f 7462 6f64 793e 3c2f 7461 /tr>Rem │ │ │ -001e3e60: 6564 6961 7469 6f6e 2041 6e61 636f 6e64 ediation Anacond │ │ │ -001e3e70: 6120 736e 6970 7065 7420 e287 b23c 2f61 a snippet ...
Co │ │ │ +001dfe50: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +001dfe80: 6e3a 3c2f 7468 3e3c 7464 3e68 6967 683c n:high< │ │ │ +001dfe90: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ +001dfed0: 3a3c 2f74 683e 3c74 643e 656e 6162 6c65 :enable │ │ │ +001dfee0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
< │ │ │ -001e3f10: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -001e3f20: 3c74 723e 3c74 683e 4469 7372 7570 7469 Reboot:false
.p
│ │ │ -001e3fb0: 6172 7420 2f6f 7074 202d 2d6d 6f75 6e74  art /opt --mount
│ │ │ -001e3fc0: 6f70 7469 6f6e 733d 226e 6f73 7569 6422  options="nosuid"
│ │ │ -001e3fd0: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation Ans │ │ │ -001e4090: 6962 6c65 2073 6e69 7070 6574 20e2 87b2 ible snippet ... │ │ │ -001e40a0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
C │ │ │ -001e3f00: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -001e3f30: 6f6e 3a3c 2f74 683e 3c74 643e 6869 6768 on:high │ │ │ -001e3f40: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -001e3f80: 793a 3c2f 7468 3e3c 7464 3e65 6e61 626c y:enabl │ │ │ -001e3f90: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
Complexity:< │ │ │ -001e4190: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
low
Disru │ │ │ -001e4150: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e68 ption:h │ │ │ -001e4160: 6967 683c 2f74 643e 3c2f 7472 3e3c 7472 igh
Reboot:false
Stra │ │ │ -001e41a0: 7465 6779 3a3c 2f74 683e 3c74 643e 636f tegy:co │ │ │ -001e41b0: 6e66 6967 7572 653c 2f74 643e 3c2f 7472 nfigure
- name: Gath
│ │ │ -001e41e0: 6572 2074 6865 2070 6163 6b61 6765 2066  er the package f
│ │ │ -001e41f0: 6163 7473 0a20 2070 6163 6b61 6765 5f66  acts.  package_f
│ │ │ -001e4200: 6163 7473 3a0a 2020 2020 6d61 6e61 6765  acts:.    manage
│ │ │ -001e4210: 723a 2061 7574 6f0a 2020 7461 6773 3a0a  r: auto.  tags:.
│ │ │ -001e4220: 2020 2d20 636f 6e66 6967 7572 655f 7374    - configure_st
│ │ │ -001e4230: 7261 7465 6779 0a20 202d 2068 6967 685f  rategy.  - high_
│ │ │ -001e4240: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ -001e4250: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ -001e4260: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ -001e4270: 790a 2020 2d20 6d6f 756e 745f 6f70 7469  y.  - mount_opti
│ │ │ -001e4280: 6f6e 5f6f 7074 5f6e 6f73 7569 640a 2020  on_opt_nosuid.  
│ │ │ -001e4290: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ -001e42a0: 6564 0a0a 2d20 6e61 6d65 3a20 2741 6464  ed..- name: 'Add
│ │ │ -001e42b0: 206e 6f73 7569 6420 4f70 7469 6f6e 2074   nosuid Option t
│ │ │ -001e42c0: 6f20 2f6f 7074 3a20 4368 6563 6b20 696e  o /opt: Check in
│ │ │ -001e42d0: 666f 726d 6174 696f 6e20 6173 736f 6369  formation associ
│ │ │ -001e42e0: 6174 6564 2074 6f20 6d6f 756e 7470 6f69  ated to mountpoi
│ │ │ -001e42f0: 6e74 270a 2020 616e 7369 626c 652e 6275  nt'.  ansible.bu
│ │ │ -001e4300: 696c 7469 6e2e 636f 6d6d 616e 643a 2066  iltin.command: f
│ │ │ -001e4310: 696e 646d 6e74 202d 2d66 7374 6162 2027  indmnt --fstab '
│ │ │ -001e4320: 2f6f 7074 270a 2020 7265 6769 7374 6572  /opt'.  register
│ │ │ -001e4330: 3a20 6465 7669 6365 5f6e 616d 650a 2020  : device_name.  
│ │ │ -001e4340: 6661 696c 6564 5f77 6865 6e3a 2064 6576  failed_when: dev
│ │ │ -001e4350: 6963 655f 6e61 6d65 2e72 6320 2667 743b  ice_name.rc >
│ │ │ -001e4360: 2031 0a20 2063 6861 6e67 6564 5f77 6865   1.  changed_whe
│ │ │ -001e4370: 6e3a 2066 616c 7365 0a20 2063 6865 636b  n: false.  check
│ │ │ -001e4380: 5f6d 6f64 653a 2066 616c 7365 0a20 2077  _mode: false.  w
│ │ │ -001e4390: 6865 6e3a 0a20 202d 2028 206e 6f74 2028  hen:.  - ( not (
│ │ │ -001e43a0: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ -001e43b0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001e43c0: 6765 7320 616e 6420 2262 6f6f 7463 2220  ges and "bootc" 
│ │ │ -001e43d0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001e43e0: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ -001e43f0: 6420 6e6f 7420 226f 7065 6e73 6869 6674  d not "openshift
│ │ │ -001e4400: 2d6b 7562 656c 6574 2220 696e 2061 6e73  -kubelet" in ans
│ │ │ -001e4410: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001e4420: 6765 7320 616e 6420 226f 7374 7265 6522  ges and "ostree"
│ │ │ -001e4430: 2069 6e20 616e 7369 626c 655f 7072 6f63   in ansible_proc
│ │ │ -001e4440: 5f63 6d64 6c69 6e65 0a20 2020 2029 2061  _cmdline.    ) a
│ │ │ -001e4450: 6e64 206e 6f74 2028 2061 6e73 6962 6c65  nd not ( ansible
│ │ │ -001e4460: 5f76 6972 7475 616c 697a 6174 696f 6e5f  _virtualization_
│ │ │ -001e4470: 7479 7065 2069 6e20 5b22 646f 636b 6572  type in ["docker
│ │ │ -001e4480: 222c 2022 6c78 6322 2c20 226f 7065 6e76  ", "lxc", "openv
│ │ │ -001e4490: 7a22 2c20 2270 6f64 6d61 6e22 2c0a 2020  z", "podman",.  
│ │ │ -001e44a0: 2020 2263 6f6e 7461 696e 6572 225d 2029    "container"] )
│ │ │ -001e44b0: 2029 0a20 202d 2027 222f 6f70 7422 2069   ).  - '"/opt" i
│ │ │ -001e44c0: 6e20 616e 7369 626c 655f 6d6f 756e 7473  n ansible_mounts
│ │ │ -001e44d0: 207c 206d 6170 2861 7474 7269 6275 7465   | map(attribute
│ │ │ -001e44e0: 3d22 6d6f 756e 7422 2920 7c20 6c69 7374  ="mount") | list
│ │ │ -001e44f0: 270a 2020 7461 6773 3a0a 2020 2d20 636f  '.  tags:.  - co
│ │ │ -001e4500: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ -001e4510: 0a20 202d 2068 6967 685f 6469 7372 7570  .  - high_disrup
│ │ │ -001e4520: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d  tion.  - low_com
│ │ │ -001e4530: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ -001e4540: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ -001e4550: 6d6f 756e 745f 6f70 7469 6f6e 5f6f 7074  mount_option_opt
│ │ │ -001e4560: 5f6e 6f73 7569 640a 2020 2d20 6e6f 5f72  _nosuid.  - no_r
│ │ │ -001e4570: 6562 6f6f 745f 6e65 6564 6564 0a0a 2d20  eboot_needed..- 
│ │ │ -001e4580: 6e61 6d65 3a20 2741 6464 206e 6f73 7569  name: 'Add nosui
│ │ │ -001e4590: 6420 4f70 7469 6f6e 2074 6f20 2f6f 7074  d Option to /opt
│ │ │ -001e45a0: 3a20 4372 6561 7465 206d 6f75 6e74 5f69  : Create mount_i
│ │ │ -001e45b0: 6e66 6f20 6469 6374 696f 6e61 7279 2076  nfo dictionary v
│ │ │ -001e45c0: 6172 6961 626c 6527 0a20 2073 6574 5f66  ariable'.  set_f
│ │ │ -001e45d0: 6163 743a 0a20 2020 206d 6f75 6e74 5f69  act:.    mount_i
│ │ │ -001e45e0: 6e66 6f3a 2027 7b7b 206d 6f75 6e74 5f69  nfo: '{{ mount_i
│ │ │ -001e45f0: 6e66 6f7c 6465 6661 756c 7428 7b7d 297c  nfo|default({})|
│ │ │ -001e4600: 636f 6d62 696e 6528 7b69 7465 6d2e 303a  combine({item.0:
│ │ │ -001e4610: 2069 7465 6d2e 317d 2920 7d7d 270a 2020   item.1}) }}'.  
│ │ │ -001e4620: 7769 7468 5f74 6f67 6574 6865 723a 0a20  with_together:. 
│ │ │ -001e4630: 202d 2027 7b7b 2064 6576 6963 655f 6e61   - '{{ device_na
│ │ │ -001e4640: 6d65 2e73 7464 6f75 745f 6c69 6e65 735b  me.stdout_lines[
│ │ │ -001e4650: 305d 2e73 706c 6974 2829 207c 206d 6170  0].split() | map
│ │ │ -001e4660: 2827 276c 6f77 6572 2727 2920 7c20 6c69  (''lower'') | li
│ │ │ -001e4670: 7374 207d 7d27 0a20 202d 2027 7b7b 2064  st }}'.  - '{{ d
│ │ │ -001e4680: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ -001e4690: 745f 6c69 6e65 735b 315d 2e73 706c 6974  t_lines[1].split
│ │ │ -001e46a0: 2829 207c 206c 6973 7420 7d7d 270a 2020  () | list }}'.  
│ │ │ -001e46b0: 7768 656e 3a0a 2020 2d20 2820 6e6f 7420  when:.  - ( not 
│ │ │ -001e46c0: 2820 226b 6572 6e65 6c22 2069 6e20 616e  ( "kernel" in an
│ │ │ -001e46d0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001e46e0: 6167 6573 2061 6e64 2022 626f 6f74 6322  ages and "bootc"
│ │ │ -001e46f0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001e4700: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ -001e4710: 6e64 206e 6f74 2022 6f70 656e 7368 6966  nd not "openshif
│ │ │ -001e4720: 742d 6b75 6265 6c65 7422 2069 6e20 616e  t-kubelet" in an
│ │ │ -001e4730: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001e4740: 6167 6573 2061 6e64 2022 6f73 7472 6565  ages and "ostree
│ │ │ -001e4750: 2220 696e 2061 6e73 6962 6c65 5f70 726f  " in ansible_pro
│ │ │ -001e4760: 635f 636d 646c 696e 650a 2020 2020 2920  c_cmdline.    ) 
│ │ │ -001e4770: 616e 6420 6e6f 7420 2820 616e 7369 626c  and not ( ansibl
│ │ │ -001e4780: 655f 7669 7274 7561 6c69 7a61 7469 6f6e  e_virtualization
│ │ │ -001e4790: 5f74 7970 6520 696e 205b 2264 6f63 6b65  _type in ["docke
│ │ │ -001e47a0: 7222 2c20 226c 7863 222c 2022 6f70 656e  r", "lxc", "open
│ │ │ -001e47b0: 767a 222c 2022 706f 646d 616e 222c 0a20  vz", "podman",. 
│ │ │ -001e47c0: 2020 2022 636f 6e74 6169 6e65 7222 5d20     "container"] 
│ │ │ -001e47d0: 2920 290a 2020 2d20 2722 2f6f 7074 2220  ) ).  - '"/opt" 
│ │ │ -001e47e0: 696e 2061 6e73 6962 6c65 5f6d 6f75 6e74  in ansible_mount
│ │ │ -001e47f0: 7320 7c20 6d61 7028 6174 7472 6962 7574  s | map(attribut
│ │ │ -001e4800: 653d 226d 6f75 6e74 2229 207c 206c 6973  e="mount") | lis
│ │ │ -001e4810: 7427 0a20 202d 2064 6576 6963 655f 6e61  t'.  - device_na
│ │ │ -001e4820: 6d65 2e73 7464 6f75 7420 6973 2064 6566  me.stdout is def
│ │ │ -001e4830: 696e 6564 2061 6e64 2064 6576 6963 655f  ined and device_
│ │ │ -001e4840: 6e61 6d65 2e73 7464 6f75 745f 6c69 6e65  name.stdout_line
│ │ │ -001e4850: 7320 6973 2064 6566 696e 6564 0a20 202d  s is defined.  -
│ │ │ -001e4860: 2028 6465 7669 6365 5f6e 616d 652e 7374   (device_name.st
│ │ │ -001e4870: 646f 7574 207c 206c 656e 6774 6820 2667  dout | length &g
│ │ │ -001e4880: 743b 2030 290a 2020 7461 6773 3a0a 2020  t; 0).  tags:.  
│ │ │ -001e4890: 2d20 636f 6e66 6967 7572 655f 7374 7261  - configure_stra
│ │ │ -001e48a0: 7465 6779 0a20 202d 2068 6967 685f 6469  tegy.  - high_di
│ │ │ -001e48b0: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ -001e48c0: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ -001e48d0: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ -001e48e0: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e    - mount_option
│ │ │ -001e48f0: 5f6f 7074 5f6e 6f73 7569 640a 2020 2d20  _opt_nosuid.  - 
│ │ │ -001e4900: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ -001e4910: 0a0a 2d20 6e61 6d65 3a20 2741 6464 206e  ..- name: 'Add n
│ │ │ -001e4920: 6f73 7569 6420 4f70 7469 6f6e 2074 6f20  osuid Option to 
│ │ │ -001e4930: 2f6f 7074 3a20 4966 202f 6f70 7420 6e6f  /opt: If /opt no
│ │ │ -001e4940: 7420 6d6f 756e 7465 642c 2063 7261 6674  t mounted, craft
│ │ │ -001e4950: 206d 6f75 6e74 5f69 6e66 6f20 6d61 6e75   mount_info manu
│ │ │ -001e4960: 616c 6c79 270a 2020 7365 745f 6661 6374  ally'.  set_fact
│ │ │ -001e4970: 3a0a 2020 2020 6d6f 756e 745f 696e 666f  :.    mount_info
│ │ │ -001e4980: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ -001e4990: 7c64 6566 6175 6c74 287b 7d29 7c63 6f6d  |default({})|com
│ │ │ -001e49a0: 6269 6e65 287b 6974 656d 2e30 3a20 6974  bine({item.0: it
│ │ │ -001e49b0: 656d 2e31 7d29 207d 7d27 0a20 2077 6974  em.1}) }}'.  wit
│ │ │ -001e49c0: 685f 746f 6765 7468 6572 3a0a 2020 2d20  h_together:.  - 
│ │ │ -001e49d0: 2d20 7461 7267 6574 0a20 2020 202d 2073  - target.    - s
│ │ │ -001e49e0: 6f75 7263 650a 2020 2020 2d20 6673 7479  ource.    - fsty
│ │ │ -001e49f0: 7065 0a20 2020 202d 206f 7074 696f 6e73  pe.    - options
│ │ │ -001e4a00: 0a20 202d 202d 202f 6f70 740a 2020 2020  .  - - /opt.    
│ │ │ -001e4a10: 2d20 2727 0a20 2020 202d 2027 270a 2020  - ''.    - ''.  
│ │ │ -001e4a20: 2020 2d20 6465 6661 756c 7473 0a20 2077    - defaults.  w
│ │ │ -001e4a30: 6865 6e3a 0a20 202d 2028 206e 6f74 2028  hen:.  - ( not (
│ │ │ -001e4a40: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ -001e4a50: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001e4a60: 6765 7320 616e 6420 2262 6f6f 7463 2220  ges and "bootc" 
│ │ │ -001e4a70: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001e4a80: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ -001e4a90: 6420 6e6f 7420 226f 7065 6e73 6869 6674  d not "openshift
│ │ │ -001e4aa0: 2d6b 7562 656c 6574 2220 696e 2061 6e73  -kubelet" in ans
│ │ │ -001e4ab0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001e4ac0: 6765 7320 616e 6420 226f 7374 7265 6522  ges and "ostree"
│ │ │ -001e4ad0: 2069 6e20 616e 7369 626c 655f 7072 6f63   in ansible_proc
│ │ │ -001e4ae0: 5f63 6d64 6c69 6e65 0a20 2020 2029 2061  _cmdline.    ) a
│ │ │ -001e4af0: 6e64 206e 6f74 2028 2061 6e73 6962 6c65  nd not ( ansible
│ │ │ -001e4b00: 5f76 6972 7475 616c 697a 6174 696f 6e5f  _virtualization_
│ │ │ -001e4b10: 7479 7065 2069 6e20 5b22 646f 636b 6572  type in ["docker
│ │ │ -001e4b20: 222c 2022 6c78 6322 2c20 226f 7065 6e76  ", "lxc", "openv
│ │ │ -001e4b30: 7a22 2c20 2270 6f64 6d61 6e22 2c0a 2020  z", "podman",.  
│ │ │ -001e4b40: 2020 2263 6f6e 7461 696e 6572 225d 2029    "container"] )
│ │ │ -001e4b50: 2029 0a20 202d 2027 222f 6f70 7422 2069   ).  - '"/opt" i
│ │ │ -001e4b60: 6e20 616e 7369 626c 655f 6d6f 756e 7473  n ansible_mounts
│ │ │ -001e4b70: 207c 206d 6170 2861 7474 7269 6275 7465   | map(attribute
│ │ │ -001e4b80: 3d22 6d6f 756e 7422 2920 7c20 6c69 7374  ="mount") | list
│ │ │ -001e4b90: 270a 2020 2d20 2822 2d2d 6673 7461 6222  '.  - ("--fstab"
│ │ │ -001e4ba0: 207c 206c 656e 6774 6820 3d3d 2030 290a   | length == 0).
│ │ │ -001e4bb0: 2020 2d20 6465 7669 6365 5f6e 616d 652e    - device_name.
│ │ │ -001e4bc0: 7374 646f 7574 2069 7320 6465 6669 6e65  stdout is define
│ │ │ -001e4bd0: 6420 616e 6420 6465 7669 6365 5f6e 616d  d and device_nam
│ │ │ -001e4be0: 652e 7374 646f 7574 5f6c 696e 6573 2069  e.stdout_lines i
│ │ │ -001e4bf0: 7320 6465 6669 6e65 640a 2020 2d20 2864  s defined.  - (d
│ │ │ -001e4c00: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ -001e4c10: 7420 7c20 6c65 6e67 7468 203d 3d20 3029  t | length == 0)
│ │ │ -001e4c20: 0a20 2074 6167 733a 0a20 202d 2063 6f6e  .  tags:.  - con
│ │ │ -001e4c30: 6669 6775 7265 5f73 7472 6174 6567 790a  figure_strategy.
│ │ │ -001e4c40: 2020 2d20 6869 6768 5f64 6973 7275 7074    - high_disrupt
│ │ │ -001e4c50: 696f 6e0a 2020 2d20 6c6f 775f 636f 6d70  ion.  - low_comp
│ │ │ -001e4c60: 6c65 7869 7479 0a20 202d 206d 6564 6975  lexity.  - mediu
│ │ │ -001e4c70: 6d5f 7365 7665 7269 7479 0a20 202d 206d  m_severity.  - m
│ │ │ -001e4c80: 6f75 6e74 5f6f 7074 696f 6e5f 6f70 745f  ount_option_opt_
│ │ │ -001e4c90: 6e6f 7375 6964 0a20 202d 206e 6f5f 7265  nosuid.  - no_re
│ │ │ -001e4ca0: 626f 6f74 5f6e 6565 6465 640a 0a2d 206e  boot_needed..- n
│ │ │ -001e4cb0: 616d 653a 2027 4164 6420 6e6f 7375 6964  ame: 'Add nosuid
│ │ │ -001e4cc0: 204f 7074 696f 6e20 746f 202f 6f70 743a   Option to /opt:
│ │ │ -001e4cd0: 204d 616b 6520 7375 7265 206e 6f73 7569   Make sure nosui
│ │ │ -001e4ce0: 6420 6f70 7469 6f6e 2069 7320 7061 7274  d option is part
│ │ │ -001e4cf0: 206f 6620 7468 6520 746f 202f 6f70 740a   of the to /opt.
│ │ │ -001e4d00: 2020 2020 6f70 7469 6f6e 7327 0a20 2073      options'.  s
│ │ │ -001e4d10: 6574 5f66 6163 743a 0a20 2020 206d 6f75  et_fact:.    mou
│ │ │ -001e4d20: 6e74 5f69 6e66 6f3a 2027 7b7b 206d 6f75  nt_info: '{{ mou
│ │ │ -001e4d30: 6e74 5f69 6e66 6f20 7c20 636f 6d62 696e  nt_info | combin
│ │ │ -001e4d40: 6528 207b 2727 6f70 7469 6f6e 7327 273a  e( {''options'':
│ │ │ -001e4d50: 2727 2727 7e28 6d6f 756e 745f 696e 666f  ''''~(mount_info
│ │ │ -001e4d60: 2e6f 7074 696f 6e73 207c 0a20 2020 2020  .options |.     
│ │ │ -001e4d70: 2064 6566 6175 6c74 2827 2727 2729 297e   default(''''))~
│ │ │ -001e4d80: 2827 272c 2727 2069 6620 286d 6f75 6e74  ('','' if (mount
│ │ │ -001e4d90: 5f69 6e66 6f2e 6f70 7469 6f6e 7320 7c20  _info.options | 
│ │ │ -001e4da0: 6465 6661 756c 7428 2727 2727 2929 2065  default('''')) e
│ │ │ -001e4db0: 6c73 6520 2727 2727 297e 2727 6e6f 7375  lse '''')~''nosu
│ │ │ -001e4dc0: 6964 2727 0a20 2020 2020 207d 2920 7d7d  id''.      }) }}
│ │ │ -001e4dd0: 270a 2020 7768 656e 3a0a 2020 2d20 2820  '.  when:.  - ( 
│ │ │ -001e4de0: 6e6f 7420 2820 226b 6572 6e65 6c22 2069  not ( "kernel" i
│ │ │ -001e4df0: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -001e4e00: 7061 636b 6167 6573 2061 6e64 2022 626f  packages and "bo
│ │ │ -001e4e10: 6f74 6322 2069 6e20 616e 7369 626c 655f  otc" in ansible_
│ │ │ -001e4e20: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ -001e4e30: 2020 2061 6e64 206e 6f74 2022 6f70 656e     and not "open
│ │ │ -001e4e40: 7368 6966 742d 6b75 6265 6c65 7422 2069  shift-kubelet" i
│ │ │ -001e4e50: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -001e4e60: 7061 636b 6167 6573 2061 6e64 2022 6f73  packages and "os
│ │ │ -001e4e70: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ -001e4e80: 5f70 726f 635f 636d 646c 696e 650a 2020  _proc_cmdline.  
│ │ │ -001e4e90: 2020 2920 616e 6420 6e6f 7420 2820 616e    ) and not ( an
│ │ │ -001e4ea0: 7369 626c 655f 7669 7274 7561 6c69 7a61  sible_virtualiza
│ │ │ -001e4eb0: 7469 6f6e 5f74 7970 6520 696e 205b 2264  tion_type in ["d
│ │ │ -001e4ec0: 6f63 6b65 7222 2c20 226c 7863 222c 2022  ocker", "lxc", "
│ │ │ -001e4ed0: 6f70 656e 767a 222c 2022 706f 646d 616e  openvz", "podman
│ │ │ -001e4ee0: 222c 0a20 2020 2022 636f 6e74 6169 6e65  ",.    "containe
│ │ │ -001e4ef0: 7222 5d20 2920 290a 2020 2d20 2722 2f6f  r"] ) ).  - '"/o
│ │ │ -001e4f00: 7074 2220 696e 2061 6e73 6962 6c65 5f6d  pt" in ansible_m
│ │ │ -001e4f10: 6f75 6e74 7320 7c20 6d61 7028 6174 7472  ounts | map(attr
│ │ │ -001e4f20: 6962 7574 653d 226d 6f75 6e74 2229 207c  ibute="mount") |
│ │ │ -001e4f30: 206c 6973 7427 0a20 202d 206d 6f75 6e74   list'.  - mount
│ │ │ -001e4f40: 5f69 6e66 6f20 6973 2064 6566 696e 6564  _info is defined
│ │ │ -001e4f50: 2061 6e64 2022 6e6f 7375 6964 2220 6e6f   and "nosuid" no
│ │ │ -001e4f60: 7420 696e 2028 6d6f 756e 745f 696e 666f  t in (mount_info
│ │ │ -001e4f70: 2e6f 7074 696f 6e73 207c 2064 6566 6175  .options | defau
│ │ │ -001e4f80: 6c74 2827 2729 290a 2020 7461 6773 3a0a  lt('')).  tags:.
│ │ │ -001e4f90: 2020 2d20 636f 6e66 6967 7572 655f 7374    - configure_st
│ │ │ -001e4fa0: 7261 7465 6779 0a20 202d 2068 6967 685f  rategy.  - high_
│ │ │ -001e4fb0: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ -001e4fc0: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ -001e4fd0: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ -001e4fe0: 790a 2020 2d20 6d6f 756e 745f 6f70 7469  y.  - mount_opti
│ │ │ -001e4ff0: 6f6e 5f6f 7074 5f6e 6f73 7569 640a 2020  on_opt_nosuid.  
│ │ │ -001e5000: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ -001e5010: 6564 0a0a 2d20 6e61 6d65 3a20 2741 6464  ed..- name: 'Add
│ │ │ -001e5020: 206e 6f73 7569 6420 4f70 7469 6f6e 2074   nosuid Option t
│ │ │ -001e5030: 6f20 2f6f 7074 3a20 456e 7375 7265 202f  o /opt: Ensure /
│ │ │ -001e5040: 6f70 7420 6973 206d 6f75 6e74 6564 2077  opt is mounted w
│ │ │ -001e5050: 6974 6820 6e6f 7375 6964 206f 7074 696f  ith nosuid optio
│ │ │ -001e5060: 6e27 0a20 2061 6e73 6962 6c65 2e70 6f73  n'.  ansible.pos
│ │ │ -001e5070: 6978 2e6d 6f75 6e74 3a0a 2020 2020 7061  ix.mount:.    pa
│ │ │ -001e5080: 7468 3a20 2f6f 7074 0a20 2020 2073 7263  th: /opt.    src
│ │ │ -001e5090: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ -001e50a0: 2e73 6f75 7263 6520 7c20 6465 6661 756c  .source | defaul
│ │ │ -001e50b0: 7428 2727 2727 2920 7d7d 270a 2020 2020  t('''') }}'.    
│ │ │ -001e50c0: 6f70 7473 3a20 277b 7b20 6d6f 756e 745f  opts: '{{ mount_
│ │ │ -001e50d0: 696e 666f 2e6f 7074 696f 6e73 207c 2064  info.options | d
│ │ │ -001e50e0: 6566 6175 6c74 2827 2727 2729 207d 7d27  efault('''') }}'
│ │ │ -001e50f0: 0a20 2020 2073 7461 7465 3a20 6d6f 756e  .    state: moun
│ │ │ -001e5100: 7465 640a 2020 2020 6673 7479 7065 3a20  ted.    fstype: 
│ │ │ -001e5110: 277b 7b20 6d6f 756e 745f 696e 666f 2e66  '{{ mount_info.f
│ │ │ -001e5120: 7374 7970 6520 7c20 6465 6661 756c 7428  stype | default(
│ │ │ -001e5130: 2727 2727 2920 7d7d 270a 2020 7265 6769  '''') }}'.  regi
│ │ │ -001e5140: 7374 6572 3a20 6d6f 756e 745f 7265 7375  ster: mount_resu
│ │ │ -001e5150: 6c74 0a20 2066 6169 6c65 645f 7768 656e  lt.  failed_when
│ │ │ -001e5160: 3a0a 2020 2d20 6d6f 756e 745f 7265 7375  :.  - mount_resu
│ │ │ -001e5170: 6c74 2069 7320 6661 696c 6564 0a20 202d  lt is failed.  -
│ │ │ -001e5180: 2027 2727 7461 7267 6574 2069 7320 6275   '''target is bu
│ │ │ -001e5190: 7379 2727 206e 6f74 2069 6e20 286d 6f75  sy'' not in (mou
│ │ │ -001e51a0: 6e74 5f72 6573 756c 742e 6d73 6720 7c20  nt_result.msg | 
│ │ │ -001e51b0: 6465 6661 756c 7428 2727 2727 2929 270a  default(''''))'.
│ │ │ -001e51c0: 2020 2d20 2727 2761 6c72 6561 6479 206d    - '''already m
│ │ │ -001e51d0: 6f75 6e74 6564 2727 206e 6f74 2069 6e20  ounted'' not in 
│ │ │ -001e51e0: 286d 6f75 6e74 5f72 6573 756c 742e 6d73  (mount_result.ms
│ │ │ -001e51f0: 6720 7c20 6465 6661 756c 7428 2727 2727  g | default(''''
│ │ │ -001e5200: 2929 270a 2020 7768 656e 3a0a 2020 2d20  ))'.  when:.  - 
│ │ │ -001e5210: 2820 6e6f 7420 2820 226b 6572 6e65 6c22  ( not ( "kernel"
│ │ │ -001e5220: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001e5230: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ -001e5240: 626f 6f74 6322 2069 6e20 616e 7369 626c  bootc" in ansibl
│ │ │ -001e5250: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001e5260: 0a20 2020 2061 6e64 206e 6f74 2022 6f70  .    and not "op
│ │ │ -001e5270: 656e 7368 6966 742d 6b75 6265 6c65 7422  enshift-kubelet"
│ │ │ -001e5280: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001e5290: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ -001e52a0: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ -001e52b0: 6c65 5f70 726f 635f 636d 646c 696e 650a  le_proc_cmdline.
│ │ │ -001e52c0: 2020 2020 2920 616e 6420 6e6f 7420 2820      ) and not ( 
│ │ │ -001e52d0: 616e 7369 626c 655f 7669 7274 7561 6c69  ansible_virtuali
│ │ │ -001e52e0: 7a61 7469 6f6e 5f74 7970 6520 696e 205b  zation_type in [
│ │ │ -001e52f0: 2264 6f63 6b65 7222 2c20 226c 7863 222c  "docker", "lxc",
│ │ │ -001e5300: 2022 6f70 656e 767a 222c 2022 706f 646d   "openvz", "podm
│ │ │ -001e5310: 616e 222c 0a20 2020 2022 636f 6e74 6169  an",.    "contai
│ │ │ -001e5320: 6e65 7222 5d20 2920 290a 2020 2d20 2722  ner"] ) ).  - '"
│ │ │ -001e5330: 2f6f 7074 2220 696e 2061 6e73 6962 6c65  /opt" in ansible
│ │ │ -001e5340: 5f6d 6f75 6e74 7320 7c20 6d61 7028 6174  _mounts | map(at
│ │ │ -001e5350: 7472 6962 7574 653d 226d 6f75 6e74 2229  tribute="mount")
│ │ │ -001e5360: 207c 206c 6973 7427 0a20 202d 206d 6f75   | list'.  - mou
│ │ │ -001e5370: 6e74 5f69 6e66 6f20 6973 2064 6566 696e  nt_info is defin
│ │ │ -001e5380: 6564 0a20 202d 2028 6465 7669 6365 5f6e  ed.  - (device_n
│ │ │ -001e5390: 616d 652e 7374 646f 7574 2069 7320 6465  ame.stdout is de
│ │ │ -001e53a0: 6669 6e65 6420 616e 6420 2864 6576 6963  fined and (devic
│ │ │ -001e53b0: 655f 6e61 6d65 2e73 7464 6f75 7420 7c20  e_name.stdout | 
│ │ │ -001e53c0: 6c65 6e67 7468 2026 6774 3b20 3029 2920  length > 0)) 
│ │ │ -001e53d0: 6f72 2028 222d 2d66 7374 6162 220a 2020  or ("--fstab".  
│ │ │ -001e53e0: 2020 7c20 6c65 6e67 7468 203d 3d20 3029    | length == 0)
│ │ │ -001e53f0: 0a20 2074 6167 733a 0a20 202d 2063 6f6e  .  tags:.  - con
│ │ │ -001e5400: 6669 6775 7265 5f73 7472 6174 6567 790a  figure_strategy.
│ │ │ -001e5410: 2020 2d20 6869 6768 5f64 6973 7275 7074    - high_disrupt
│ │ │ -001e5420: 696f 6e0a 2020 2d20 6c6f 775f 636f 6d70  ion.  - low_comp
│ │ │ -001e5430: 6c65 7869 7479 0a20 202d 206d 6564 6975  lexity.  - mediu
│ │ │ -001e5440: 6d5f 7365 7665 7269 7479 0a20 202d 206d  m_severity.  - m
│ │ │ -001e5450: 6f75 6e74 5f6f 7074 696f 6e5f 6f70 745f  ount_option_opt_
│ │ │ -001e5460: 6e6f 7375 6964 0a20 202d 206e 6f5f 7265  nosuid.  - no_re
│ │ │ -001e5470: 626f 6f74 5f6e 6565 6465 640a 3c2f 636f  boot_needed.
< │ │ │ -001e5490: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ -001e54a0: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ -001e54b0: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ -001e54c0: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ -001e54d0: 6435 3930 2220 7461 6269 6e64 6578 3d22 d590" tabindex=" │ │ │ -001e54e0: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ -001e54f0: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ -001e5500: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ -001e5510: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ -001e5520: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ -001e5530: 6469 6174 696f 6e20 5368 656c 6c20 7363 diation Shell sc │ │ │ -001e5540: 7269 7074 20e2 87b2 3c2f 613e 3c62 723e ript ...
│ │ │ -001e5550: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -001e5580: 3c74 6162 6c65 2063 6c61 7373 3d22 7461
Reboot │ │ │ -001e55d0: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -001e55e0: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
# Re
│ │ │ -001e5600: 6d65 6469 6174 696f 6e20 6973 2061 7070  mediation is app
│ │ │ -001e5610: 6c69 6361 626c 6520 6f6e 6c79 2069 6e20  licable only in 
│ │ │ -001e5620: 6365 7274 6169 6e20 706c 6174 666f 726d  certain platform
│ │ │ -001e5630: 730a 6966 2028 2021 2028 207b 2072 706d  s.if ( ! ( { rpm
│ │ │ -001e5640: 202d 2d71 7569 6574 202d 7120 6b65 726e   --quiet -q kern
│ │ │ -001e5650: 656c 203b 7d20 2661 6d70 3b26 616d 703b  el ;} &&
│ │ │ -001e5660: 207b 2072 706d 202d 2d71 7569 6574 202d   { rpm --quiet -
│ │ │ -001e5670: 7120 626f 6f74 6320 3b7d 2026 616d 703b  q bootc ;} &
│ │ │ -001e5680: 2661 6d70 3b20 7b20 2120 7270 6d20 2d2d  & { ! rpm --
│ │ │ -001e5690: 7175 6965 7420 2d71 206f 7065 6e73 6869  quiet -q openshi
│ │ │ -001e56a0: 6674 2d6b 7562 656c 6574 203b 7d20 2661  ft-kubelet ;} &a
│ │ │ -001e56b0: 6d70 3b26 616d 703b 2028 5b20 2d66 202f  mp;& ([ -f /
│ │ │ -001e56c0: 7275 6e2f 6f73 7472 6565 2d62 6f6f 7465  run/ostree-boote
│ │ │ -001e56d0: 6420 5d20 7c7c 205b 202d 4c20 2f6f 7374  d ] || [ -L /ost
│ │ │ -001e56e0: 7265 6520 5d29 2029 2026 616d 703b 2661  ree ]) ) &&a
│ │ │ -001e56f0: 6d70 3b20 2120 2820 5b20 2d66 202f 2e64  mp; ! ( [ -f /.d
│ │ │ -001e5700: 6f63 6b65 7265 6e76 205d 207c 7c20 5b20  ockerenv ] || [ 
│ │ │ -001e5710: 2d66 202f 7275 6e2f 2e63 6f6e 7461 696e  -f /run/.contain
│ │ │ -001e5720: 6572 656e 7620 5d20 2920 2920 2661 6d70  erenv ] ) ) &
│ │ │ -001e5730: 3b26 616d 703b 207b 2028 2066 696e 646d  ;& { ( findm
│ │ │ -001e5740: 6e74 202d 2d6b 6572 6e65 6c20 222f 6f70  nt --kernel "/op
│ │ │ -001e5750: 7422 2026 6774 3b20 2f64 6576 2f6e 756c  t" > /dev/nul
│ │ │ -001e5760: 6c20 7c7c 2066 696e 646d 6e74 202d 2d66  l || findmnt --f
│ │ │ -001e5770: 7374 6162 2022 2f6f 7074 2220 2667 743b  stab "/opt" >
│ │ │ -001e5780: 202f 6465 762f 6e75 6c6c 2029 3b20 7d3b   /dev/null ); };
│ │ │ -001e5790: 2074 6865 6e0a 0a66 756e 6374 696f 6e20   then..function 
│ │ │ -001e57a0: 7065 7266 6f72 6d5f 7265 6d65 6469 6174  perform_remediat
│ │ │ -001e57b0: 696f 6e20 7b0a 0a20 2020 200a 2020 2020  ion {..    .    
│ │ │ -001e57c0: 2020 2020 2320 7468 6520 6d6f 756e 7420      # the mount 
│ │ │ -001e57d0: 706f 696e 7420 2f6f 7074 2068 6173 2074  point /opt has t
│ │ │ -001e57e0: 6f20 6265 2064 6566 696e 6564 2069 6e20  o be defined in 
│ │ │ -001e57f0: 2f65 7463 2f66 7374 6162 0a20 2020 2020  /etc/fstab.     
│ │ │ -001e5800: 2020 2023 2062 6566 6f72 6520 7468 6973     # before this
│ │ │ -001e5810: 2072 656d 6564 6961 7469 6f6e 2063 616e   remediation can
│ │ │ -001e5820: 2062 6520 6578 6563 7574 6564 2e20 496e   be executed. In
│ │ │ -001e5830: 2063 6173 6520 6974 2069 7320 6e6f 7420   case it is not 
│ │ │ -001e5840: 6465 6669 6e65 642c 2074 6865 0a20 2020  defined, the.   
│ │ │ -001e5850: 2020 2020 2023 2072 656d 6564 6961 7469       # remediati
│ │ │ -001e5860: 6f6e 2061 626f 7274 7320 616e 6420 6e6f  on aborts and no
│ │ │ -001e5870: 2063 6861 6e67 6573 2072 6567 6172 6469   changes regardi
│ │ │ -001e5880: 6e67 2074 6865 206d 6f75 6e74 2070 6f69  ng the mount poi
│ │ │ -001e5890: 6e74 2061 7265 2064 6f6e 652e 0a20 2020  nt are done..   
│ │ │ -001e58a0: 2020 2020 206d 6f75 6e74 5f70 6f69 6e74       mount_point
│ │ │ -001e58b0: 5f6d 6174 6368 5f72 6567 6578 703d 2224  _match_regexp="$
│ │ │ -001e58c0: 2870 7269 6e74 6620 225e 5b5b 3a73 7061  (printf "^[[:spa
│ │ │ -001e58d0: 6365 3a5d 5d2a 5b5e 235d 2e2a 5b5b 3a73  ce:]]*[^#].*[[:s
│ │ │ -001e58e0: 7061 6365 3a5d 5d25 735b 5b3a 7370 6163  pace:]]%s[[:spac
│ │ │ -001e58f0: 653a 5d5d 2220 222f 6f70 7422 2922 0a0a  e:]]" "/opt")"..
│ │ │ -001e5900: 2020 2020 6772 6570 2022 246d 6f75 6e74      grep "$mount
│ │ │ -001e5910: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ -001e5920: 6578 7022 202d 7120 2f65 7463 2f66 7374  exp" -q /etc/fst
│ │ │ -001e5930: 6162 205c 0a20 2020 2020 2020 207c 7c20  ab \.        || 
│ │ │ -001e5940: 7b20 6563 686f 2022 5468 6520 6d6f 756e  { echo "The moun
│ │ │ -001e5950: 7420 706f 696e 7420 272f 6f70 7427 2069  t point '/opt' i
│ │ │ -001e5960: 7320 6e6f 7420 6576 656e 2069 6e20 2f65  s not even in /e
│ │ │ -001e5970: 7463 2f66 7374 6162 2c20 736f 2077 6520  tc/fstab, so we 
│ │ │ -001e5980: 6361 6e27 7420 7365 7420 7570 206d 6f75  can't set up mou
│ │ │ -001e5990: 6e74 206f 7074 696f 6e73 2220 2667 743b  nt options" >
│ │ │ -001e59a0: 2661 6d70 3b32 3b0a 2020 2020 2020 2020  &2;.        
│ │ │ -001e59b0: 2020 2020 2020 2020 6563 686f 2022 4e6f          echo "No
│ │ │ -001e59c0: 7420 7265 6d65 6469 6174 696e 672c 2062  t remediating, b
│ │ │ -001e59d0: 6563 6175 7365 2074 6865 7265 2069 7320  ecause there is 
│ │ │ -001e59e0: 6e6f 2072 6563 6f72 6420 6f66 202f 6f70  no record of /op
│ │ │ -001e59f0: 7420 696e 202f 6574 632f 6673 7461 6222  t in /etc/fstab"
│ │ │ -001e5a00: 2026 6774 3b26 616d 703b 323b 2072 6574   >&2; ret
│ │ │ -001e5a10: 7572 6e20 313b 207d 0a20 2020 200a 0a0a  urn 1; }.    ...
│ │ │ -001e5a20: 2020 2020 6d6f 756e 745f 706f 696e 745f      mount_point_
│ │ │ -001e5a30: 6d61 7463 685f 7265 6765 7870 3d22 2428  match_regexp="$(
│ │ │ -001e5a40: 7072 696e 7466 2022 5e5b 5b3a 7370 6163  printf "^[[:spac
│ │ │ -001e5a50: 653a 5d5d 2a5b 5e23 5d2e 2a5b 5b3a 7370  e:]]*[^#].*[[:sp
│ │ │ -001e5a60: 6163 653a 5d5d 2573 5b5b 3a73 7061 6365  ace:]]%s[[:space
│ │ │ -001e5a70: 3a5d 5d22 202f 6f70 7429 220a 0a20 2020  :]]" /opt)"..   
│ │ │ -001e5a80: 2023 2049 6620 7468 6520 6d6f 756e 7420   # If the mount 
│ │ │ -001e5a90: 706f 696e 7420 6973 206e 6f74 2069 6e20  point is not in 
│ │ │ -001e5aa0: 2f65 7463 2f66 7374 6162 2c20 6765 7420  /etc/fstab, get 
│ │ │ -001e5ab0: 7072 6576 696f 7573 206d 6f75 6e74 206f  previous mount o
│ │ │ -001e5ac0: 7074 696f 6e73 2066 726f 6d20 2f65 7463  ptions from /etc
│ │ │ -001e5ad0: 2f6d 7461 620a 2020 2020 6966 2021 2067  /mtab.    if ! g
│ │ │ -001e5ae0: 7265 7020 2d71 2022 246d 6f75 6e74 5f70  rep -q "$mount_p
│ │ │ -001e5af0: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ -001e5b00: 7022 202f 6574 632f 6673 7461 623b 2074  p" /etc/fstab; t
│ │ │ -001e5b10: 6865 6e0a 2020 2020 2020 2020 2320 7275  hen.        # ru
│ │ │ -001e5b20: 6e74 696d 6520 6f70 7473 2077 6974 686f  ntime opts witho
│ │ │ -001e5b30: 7574 2073 6f6d 6520 6175 746f 6d61 7469  ut some automati
│ │ │ -001e5b40: 6320 6b65 726e 656c 2f75 7365 7273 7061  c kernel/userspa
│ │ │ -001e5b50: 6365 2d61 6464 6564 2064 6566 6175 6c74  ce-added default
│ │ │ -001e5b60: 730a 2020 2020 2020 2020 7072 6576 696f  s.        previo
│ │ │ -001e5b70: 7573 5f6d 6f75 6e74 5f6f 7074 733d 2428  us_mount_opts=$(
│ │ │ -001e5b80: 6772 6570 2022 246d 6f75 6e74 5f70 6f69  grep "$mount_poi
│ │ │ -001e5b90: 6e74 5f6d 6174 6368 5f72 6567 6578 7022  nt_match_regexp"
│ │ │ -001e5ba0: 202f 6574 632f 6d74 6162 207c 2068 6561   /etc/mtab | hea
│ │ │ -001e5bb0: 6420 2d31 207c 2020 6177 6b20 277b 7072  d -1 |  awk '{pr
│ │ │ -001e5bc0: 696e 7420 2434 7d27 205c 0a20 2020 2020  int $4}' \.     
│ │ │ -001e5bd0: 2020 2020 2020 2020 2020 2020 2020 207c                 |
│ │ │ -001e5be0: 2073 6564 202d 4520 2273 2f28 7277 7c64   sed -E "s/(rw|d
│ │ │ -001e5bf0: 6566 6175 6c74 737c 7365 636c 6162 656c  efaults|seclabel
│ │ │ -001e5c00: 7c6e 6f73 7569 6429 282c 7c24 292f 2f67  |nosuid)(,|$)//g
│ │ │ -001e5c10: 3b73 2f2c 242f 2f22 290a 2020 2020 2020  ;s/,$//").      
│ │ │ -001e5c20: 2020 5b20 2224 7072 6576 696f 7573 5f6d    [ "$previous_m
│ │ │ -001e5c30: 6f75 6e74 5f6f 7074 7322 205d 2026 616d  ount_opts" ] &am
│ │ │ -001e5c40: 703b 2661 6d70 3b20 7072 6576 696f 7573  p;& previous
│ │ │ -001e5c50: 5f6d 6f75 6e74 5f6f 7074 732b 3d22 2c22  _mount_opts+=","
│ │ │ -001e5c60: 0a20 2020 2020 2020 2023 2049 6e20 6973  .        # In is
│ │ │ -001e5c70: 6f39 3636 3020 6669 6c65 7379 7374 656d  o9660 filesystem
│ │ │ -001e5c80: 7320 6d74 6162 2063 6f75 6c64 2064 6573  s mtab could des
│ │ │ -001e5c90: 6372 6962 6520 6120 2262 6c6f 636b 7369  cribe a "blocksi
│ │ │ -001e5ca0: 7a65 2220 7661 6c75 652c 2074 6869 7320  ze" value, this 
│ │ │ -001e5cb0: 7368 6f75 6c64 2062 6520 7265 666c 6563  should be reflec
│ │ │ -001e5cc0: 7465 6420 696e 0a20 2020 2020 2020 2023  ted in.        #
│ │ │ -001e5cd0: 2066 7374 6162 2061 7320 2262 6c6f 636b   fstab as "block
│ │ │ -001e5ce0: 222e 2020 5468 6520 6e65 7874 2076 6172  ".  The next var
│ │ │ -001e5cf0: 6961 626c 6520 6973 2074 6f20 7361 7469  iable is to sati
│ │ │ -001e5d00: 7366 7920 7368 656c 6c63 6865 636b 2053  sfy shellcheck S
│ │ │ -001e5d10: 4332 3035 302e 0a20 2020 2020 2020 2066  C2050..        f
│ │ │ -001e5d20: 735f 7479 7065 3d22 220a 2020 2020 2020  s_type="".      
│ │ │ -001e5d30: 2020 6966 205b 2020 2224 6673 5f74 7970    if [  "$fs_typ
│ │ │ -001e5d40: 6522 203d 3d20 2269 736f 3936 3630 2220  e" == "iso9660" 
│ │ │ -001e5d50: 5d20 3b20 7468 656e 0a20 2020 2020 2020  ] ; then.       
│ │ │ -001e5d60: 2020 2020 2070 7265 7669 6f75 735f 6d6f       previous_mo
│ │ │ -001e5d70: 756e 745f 6f70 7473 3d24 2873 6564 2027  unt_opts=$(sed '
│ │ │ -001e5d80: 732f 626c 6f63 6b73 697a 653d 2f62 6c6f  s/blocksize=/blo
│ │ │ -001e5d90: 636b 3d2f 2720 266c 743b 266c 743b 266c  ck=/' <<&l
│ │ │ -001e5da0: 743b 2022 2470 7265 7669 6f75 735f 6d6f  t; "$previous_mo
│ │ │ -001e5db0: 756e 745f 6f70 7473 2229 0a20 2020 2020  unt_opts").     
│ │ │ -001e5dc0: 2020 2066 690a 2020 2020 2020 2020 6563     fi.        ec
│ │ │ -001e5dd0: 686f 2022 202f 6f70 7420 2064 6566 6175  ho " /opt  defau
│ │ │ -001e5de0: 6c74 732c 247b 7072 6576 696f 7573 5f6d  lts,${previous_m
│ │ │ -001e5df0: 6f75 6e74 5f6f 7074 737d 6e6f 7375 6964  ount_opts}nosuid
│ │ │ -001e5e00: 2030 2030 2220 2667 743b 2667 743b 202f   0 0" >> /
│ │ │ -001e5e10: 6574 632f 6673 7461 620a 2020 2020 2320  etc/fstab.    # 
│ │ │ -001e5e20: 4966 2074 6865 206d 6f75 6e74 5f6f 7074  If the mount_opt
│ │ │ -001e5e30: 206f 7074 696f 6e20 6973 206e 6f74 2061   option is not a
│ │ │ -001e5e40: 6c72 6561 6479 2069 6e20 7468 6520 6d6f  lready in the mo
│ │ │ -001e5e50: 756e 7420 706f 696e 7427 7320 2f65 7463  unt point's /etc
│ │ │ -001e5e60: 2f66 7374 6162 2065 6e74 7279 2c20 6164  /fstab entry, ad
│ │ │ -001e5e70: 6420 6974 0a20 2020 2065 6c69 6620 2120  d it.    elif ! 
│ │ │ -001e5e80: 6772 6570 2022 246d 6f75 6e74 5f70 6f69  grep "$mount_poi
│ │ │ -001e5e90: 6e74 5f6d 6174 6368 5f72 6567 6578 7022  nt_match_regexp"
│ │ │ -001e5ea0: 202f 6574 632f 6673 7461 6220 7c20 6772   /etc/fstab | gr
│ │ │ -001e5eb0: 6570 202d 7120 226e 6f73 7569 6422 3b20  ep -q "nosuid"; 
│ │ │ -001e5ec0: 7468 656e 0a20 2020 2020 2020 2070 7265  then.        pre
│ │ │ -001e5ed0: 7669 6f75 735f 6d6f 756e 745f 6f70 7473  vious_mount_opts
│ │ │ -001e5ee0: 3d24 2867 7265 7020 2224 6d6f 756e 745f  =$(grep "$mount_
│ │ │ -001e5ef0: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ -001e5f00: 7870 2220 2f65 7463 2f66 7374 6162 207c  xp" /etc/fstab |
│ │ │ -001e5f10: 2061 776b 2027 7b70 7269 6e74 2024 347d   awk '{print $4}
│ │ │ -001e5f20: 2729 0a20 2020 2020 2020 2073 6564 202d  ').        sed -
│ │ │ -001e5f30: 6920 2273 7c5c 2824 7b6d 6f75 6e74 5f70  i "s|\(${mount_p
│ │ │ -001e5f40: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ -001e5f50: 707d 2e2a 247b 7072 6576 696f 7573 5f6d  p}.*${previous_m
│ │ │ -001e5f60: 6f75 6e74 5f6f 7074 737d 5c29 7c5c 312c  ount_opts}\)|\1,
│ │ │ -001e5f70: 6e6f 7375 6964 7c22 202f 6574 632f 6673  nosuid|" /etc/fs
│ │ │ -001e5f80: 7461 620a 2020 2020 6669 0a0a 0a20 2020  tab.    fi...   
│ │ │ -001e5f90: 2069 6620 6d6b 6469 7220 2d70 2022 2f6f   if mkdir -p "/o
│ │ │ -001e5fa0: 7074 223b 2074 6865 6e0a 2020 2020 2020  pt"; then.      
│ │ │ -001e5fb0: 2020 6966 206d 6f75 6e74 706f 696e 7420    if mountpoint 
│ │ │ -001e5fc0: 2d71 2022 2f6f 7074 223b 2074 6865 6e0a  -q "/opt"; then.
│ │ │ -001e5fd0: 2020 2020 2020 2020 2020 2020 6d6f 756e              moun
│ │ │ -001e5fe0: 7420 2d6f 2072 656d 6f75 6e74 202d 2d74  t -o remount --t
│ │ │ -001e5ff0: 6172 6765 7420 222f 6f70 7422 0a20 2020  arget "/opt".   
│ │ │ -001e6000: 2020 2020 2066 690a 2020 2020 6669 0a7d       fi.    fi.}
│ │ │ -001e6010: 0a0a 7065 7266 6f72 6d5f 7265 6d65 6469  ..perform_remedi
│ │ │ -001e6020: 6174 696f 6e0a 0a65 6c73 650a 2020 2020  ation..else.    
│ │ │ -001e6030: 2667 743b 2661 6d70 3b32 2065 6368 6f20  >&2 echo 
│ │ │ -001e6040: 2752 656d 6564 6961 7469 6f6e 2069 7320  'Remediation is 
│ │ │ -001e6050: 6e6f 7420 6170 706c 6963 6162 6c65 2c20  not applicable, 
│ │ │ -001e6060: 6e6f 7468 696e 6720 7761 7320 646f 6e65  nothing was done
│ │ │ -001e6070: 270a 6669 0a3c 2f63 6f64 653e 3c2f 7072  '.fi.
│ │ │ +001e3e80: 3c62 723e 3c64 6976 2063 6c61 7373 3d22  
low< │ │ │ +001e3f20: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr> │ │ │ +001e3f70: 3c74 723e 3c74 683e 5374 7261 7465 6779

│ │ │ +001e3fb0: 2d20 6e61 6d65 3a20 4761 7468 6572 2074  - name: Gather t
│ │ │ +001e3fc0: 6865 2070 6163 6b61 6765 2066 6163 7473  he package facts
│ │ │ +001e3fd0: 0a20 2070 6163 6b61 6765 5f66 6163 7473  .  package_facts
│ │ │ +001e3fe0: 3a0a 2020 2020 6d61 6e61 6765 723a 2061  :.    manager: a
│ │ │ +001e3ff0: 7574 6f0a 2020 7461 6773 3a0a 2020 2d20  uto.  tags:.  - 
│ │ │ +001e4000: 636f 6e66 6967 7572 655f 7374 7261 7465  configure_strate
│ │ │ +001e4010: 6779 0a20 202d 2068 6967 685f 6469 7372  gy.  - high_disr
│ │ │ +001e4020: 7570 7469 6f6e 0a20 202d 206c 6f77 5f63  uption.  - low_c
│ │ │ +001e4030: 6f6d 706c 6578 6974 790a 2020 2d20 6d65  omplexity.  - me
│ │ │ +001e4040: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ +001e4050: 2d20 6d6f 756e 745f 6f70 7469 6f6e 5f6f  - mount_option_o
│ │ │ +001e4060: 7074 5f6e 6f73 7569 640a 2020 2d20 6e6f  pt_nosuid.  - no
│ │ │ +001e4070: 5f72 6562 6f6f 745f 6e65 6564 6564 0a0a  _reboot_needed..
│ │ │ +001e4080: 2d20 6e61 6d65 3a20 2741 6464 206e 6f73  - name: 'Add nos
│ │ │ +001e4090: 7569 6420 4f70 7469 6f6e 2074 6f20 2f6f  uid Option to /o
│ │ │ +001e40a0: 7074 3a20 4368 6563 6b20 696e 666f 726d  pt: Check inform
│ │ │ +001e40b0: 6174 696f 6e20 6173 736f 6369 6174 6564  ation associated
│ │ │ +001e40c0: 2074 6f20 6d6f 756e 7470 6f69 6e74 270a   to mountpoint'.
│ │ │ +001e40d0: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ +001e40e0: 6e2e 636f 6d6d 616e 643a 2066 696e 646d  n.command: findm
│ │ │ +001e40f0: 6e74 202d 2d66 7374 6162 2027 2f6f 7074  nt --fstab '/opt
│ │ │ +001e4100: 270a 2020 7265 6769 7374 6572 3a20 6465  '.  register: de
│ │ │ +001e4110: 7669 6365 5f6e 616d 650a 2020 6661 696c  vice_name.  fail
│ │ │ +001e4120: 6564 5f77 6865 6e3a 2064 6576 6963 655f  ed_when: device_
│ │ │ +001e4130: 6e61 6d65 2e72 6320 2667 743b 2031 0a20  name.rc > 1. 
│ │ │ +001e4140: 2063 6861 6e67 6564 5f77 6865 6e3a 2066   changed_when: f
│ │ │ +001e4150: 616c 7365 0a20 2063 6865 636b 5f6d 6f64  alse.  check_mod
│ │ │ +001e4160: 653a 2066 616c 7365 0a20 2077 6865 6e3a  e: false.  when:
│ │ │ +001e4170: 0a20 202d 2028 206e 6f74 2028 2022 6b65  .  - ( not ( "ke
│ │ │ +001e4180: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ +001e4190: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ +001e41a0: 616e 6420 2262 6f6f 7463 2220 696e 2061  and "bootc" in a
│ │ │ +001e41b0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +001e41c0: 6b61 6765 730a 2020 2020 616e 6420 6e6f  kages.    and no
│ │ │ +001e41d0: 7420 226f 7065 6e73 6869 6674 2d6b 7562  t "openshift-kub
│ │ │ +001e41e0: 656c 6574 2220 696e 2061 6e73 6962 6c65  elet" in ansible
│ │ │ +001e41f0: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ +001e4200: 616e 6420 226f 7374 7265 6522 2069 6e20  and "ostree" in 
│ │ │ +001e4210: 616e 7369 626c 655f 7072 6f63 5f63 6d64  ansible_proc_cmd
│ │ │ +001e4220: 6c69 6e65 0a20 2020 2029 2061 6e64 206e  line.    ) and n
│ │ │ +001e4230: 6f74 2028 2061 6e73 6962 6c65 5f76 6972  ot ( ansible_vir
│ │ │ +001e4240: 7475 616c 697a 6174 696f 6e5f 7479 7065  tualization_type
│ │ │ +001e4250: 2069 6e20 5b22 646f 636b 6572 222c 2022   in ["docker", "
│ │ │ +001e4260: 6c78 6322 2c20 226f 7065 6e76 7a22 2c20  lxc", "openvz", 
│ │ │ +001e4270: 2270 6f64 6d61 6e22 2c0a 2020 2020 2263  "podman",.    "c
│ │ │ +001e4280: 6f6e 7461 696e 6572 225d 2029 2029 0a20  ontainer"] ) ). 
│ │ │ +001e4290: 202d 2027 222f 6f70 7422 2069 6e20 616e   - '"/opt" in an
│ │ │ +001e42a0: 7369 626c 655f 6d6f 756e 7473 207c 206d  sible_mounts | m
│ │ │ +001e42b0: 6170 2861 7474 7269 6275 7465 3d22 6d6f  ap(attribute="mo
│ │ │ +001e42c0: 756e 7422 2920 7c20 6c69 7374 270a 2020  unt") | list'.  
│ │ │ +001e42d0: 7461 6773 3a0a 2020 2d20 636f 6e66 6967  tags:.  - config
│ │ │ +001e42e0: 7572 655f 7374 7261 7465 6779 0a20 202d  ure_strategy.  -
│ │ │ +001e42f0: 2068 6967 685f 6469 7372 7570 7469 6f6e   high_disruption
│ │ │ +001e4300: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ +001e4310: 6974 790a 2020 2d20 6d65 6469 756d 5f73  ity.  - medium_s
│ │ │ +001e4320: 6576 6572 6974 790a 2020 2d20 6d6f 756e  everity.  - moun
│ │ │ +001e4330: 745f 6f70 7469 6f6e 5f6f 7074 5f6e 6f73  t_option_opt_nos
│ │ │ +001e4340: 7569 640a 2020 2d20 6e6f 5f72 6562 6f6f  uid.  - no_reboo
│ │ │ +001e4350: 745f 6e65 6564 6564 0a0a 2d20 6e61 6d65  t_needed..- name
│ │ │ +001e4360: 3a20 2741 6464 206e 6f73 7569 6420 4f70  : 'Add nosuid Op
│ │ │ +001e4370: 7469 6f6e 2074 6f20 2f6f 7074 3a20 4372  tion to /opt: Cr
│ │ │ +001e4380: 6561 7465 206d 6f75 6e74 5f69 6e66 6f20  eate mount_info 
│ │ │ +001e4390: 6469 6374 696f 6e61 7279 2076 6172 6961  dictionary varia
│ │ │ +001e43a0: 626c 6527 0a20 2073 6574 5f66 6163 743a  ble'.  set_fact:
│ │ │ +001e43b0: 0a20 2020 206d 6f75 6e74 5f69 6e66 6f3a  .    mount_info:
│ │ │ +001e43c0: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f7c   '{{ mount_info|
│ │ │ +001e43d0: 6465 6661 756c 7428 7b7d 297c 636f 6d62  default({})|comb
│ │ │ +001e43e0: 696e 6528 7b69 7465 6d2e 303a 2069 7465  ine({item.0: ite
│ │ │ +001e43f0: 6d2e 317d 2920 7d7d 270a 2020 7769 7468  m.1}) }}'.  with
│ │ │ +001e4400: 5f74 6f67 6574 6865 723a 0a20 202d 2027  _together:.  - '
│ │ │ +001e4410: 7b7b 2064 6576 6963 655f 6e61 6d65 2e73  {{ device_name.s
│ │ │ +001e4420: 7464 6f75 745f 6c69 6e65 735b 305d 2e73  tdout_lines[0].s
│ │ │ +001e4430: 706c 6974 2829 207c 206d 6170 2827 276c  plit() | map(''l
│ │ │ +001e4440: 6f77 6572 2727 2920 7c20 6c69 7374 207d  ower'') | list }
│ │ │ +001e4450: 7d27 0a20 202d 2027 7b7b 2064 6576 6963  }'.  - '{{ devic
│ │ │ +001e4460: 655f 6e61 6d65 2e73 7464 6f75 745f 6c69  e_name.stdout_li
│ │ │ +001e4470: 6e65 735b 315d 2e73 706c 6974 2829 207c  nes[1].split() |
│ │ │ +001e4480: 206c 6973 7420 7d7d 270a 2020 7768 656e   list }}'.  when
│ │ │ +001e4490: 3a0a 2020 2d20 2820 6e6f 7420 2820 226b  :.  - ( not ( "k
│ │ │ +001e44a0: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ +001e44b0: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +001e44c0: 2061 6e64 2022 626f 6f74 6322 2069 6e20   and "bootc" in 
│ │ │ +001e44d0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001e44e0: 636b 6167 6573 0a20 2020 2061 6e64 206e  ckages.    and n
│ │ │ +001e44f0: 6f74 2022 6f70 656e 7368 6966 742d 6b75  ot "openshift-ku
│ │ │ +001e4500: 6265 6c65 7422 2069 6e20 616e 7369 626c  belet" in ansibl
│ │ │ +001e4510: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +001e4520: 2061 6e64 2022 6f73 7472 6565 2220 696e   and "ostree" in
│ │ │ +001e4530: 2061 6e73 6962 6c65 5f70 726f 635f 636d   ansible_proc_cm
│ │ │ +001e4540: 646c 696e 650a 2020 2020 2920 616e 6420  dline.    ) and 
│ │ │ +001e4550: 6e6f 7420 2820 616e 7369 626c 655f 7669  not ( ansible_vi
│ │ │ +001e4560: 7274 7561 6c69 7a61 7469 6f6e 5f74 7970  rtualization_typ
│ │ │ +001e4570: 6520 696e 205b 2264 6f63 6b65 7222 2c20  e in ["docker", 
│ │ │ +001e4580: 226c 7863 222c 2022 6f70 656e 767a 222c  "lxc", "openvz",
│ │ │ +001e4590: 2022 706f 646d 616e 222c 0a20 2020 2022   "podman",.    "
│ │ │ +001e45a0: 636f 6e74 6169 6e65 7222 5d20 2920 290a  container"] ) ).
│ │ │ +001e45b0: 2020 2d20 2722 2f6f 7074 2220 696e 2061    - '"/opt" in a
│ │ │ +001e45c0: 6e73 6962 6c65 5f6d 6f75 6e74 7320 7c20  nsible_mounts | 
│ │ │ +001e45d0: 6d61 7028 6174 7472 6962 7574 653d 226d  map(attribute="m
│ │ │ +001e45e0: 6f75 6e74 2229 207c 206c 6973 7427 0a20  ount") | list'. 
│ │ │ +001e45f0: 202d 2064 6576 6963 655f 6e61 6d65 2e73   - device_name.s
│ │ │ +001e4600: 7464 6f75 7420 6973 2064 6566 696e 6564  tdout is defined
│ │ │ +001e4610: 2061 6e64 2064 6576 6963 655f 6e61 6d65   and device_name
│ │ │ +001e4620: 2e73 7464 6f75 745f 6c69 6e65 7320 6973  .stdout_lines is
│ │ │ +001e4630: 2064 6566 696e 6564 0a20 202d 2028 6465   defined.  - (de
│ │ │ +001e4640: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ +001e4650: 207c 206c 656e 6774 6820 2667 743b 2030   | length > 0
│ │ │ +001e4660: 290a 2020 7461 6773 3a0a 2020 2d20 636f  ).  tags:.  - co
│ │ │ +001e4670: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ +001e4680: 0a20 202d 2068 6967 685f 6469 7372 7570  .  - high_disrup
│ │ │ +001e4690: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d  tion.  - low_com
│ │ │ +001e46a0: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ +001e46b0: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ +001e46c0: 6d6f 756e 745f 6f70 7469 6f6e 5f6f 7074  mount_option_opt
│ │ │ +001e46d0: 5f6e 6f73 7569 640a 2020 2d20 6e6f 5f72  _nosuid.  - no_r
│ │ │ +001e46e0: 6562 6f6f 745f 6e65 6564 6564 0a0a 2d20  eboot_needed..- 
│ │ │ +001e46f0: 6e61 6d65 3a20 2741 6464 206e 6f73 7569  name: 'Add nosui
│ │ │ +001e4700: 6420 4f70 7469 6f6e 2074 6f20 2f6f 7074  d Option to /opt
│ │ │ +001e4710: 3a20 4966 202f 6f70 7420 6e6f 7420 6d6f  : If /opt not mo
│ │ │ +001e4720: 756e 7465 642c 2063 7261 6674 206d 6f75  unted, craft mou
│ │ │ +001e4730: 6e74 5f69 6e66 6f20 6d61 6e75 616c 6c79  nt_info manually
│ │ │ +001e4740: 270a 2020 7365 745f 6661 6374 3a0a 2020  '.  set_fact:.  
│ │ │ +001e4750: 2020 6d6f 756e 745f 696e 666f 3a20 277b    mount_info: '{
│ │ │ +001e4760: 7b20 6d6f 756e 745f 696e 666f 7c64 6566  { mount_info|def
│ │ │ +001e4770: 6175 6c74 287b 7d29 7c63 6f6d 6269 6e65  ault({})|combine
│ │ │ +001e4780: 287b 6974 656d 2e30 3a20 6974 656d 2e31  ({item.0: item.1
│ │ │ +001e4790: 7d29 207d 7d27 0a20 2077 6974 685f 746f  }) }}'.  with_to
│ │ │ +001e47a0: 6765 7468 6572 3a0a 2020 2d20 2d20 7461  gether:.  - - ta
│ │ │ +001e47b0: 7267 6574 0a20 2020 202d 2073 6f75 7263  rget.    - sourc
│ │ │ +001e47c0: 650a 2020 2020 2d20 6673 7479 7065 0a20  e.    - fstype. 
│ │ │ +001e47d0: 2020 202d 206f 7074 696f 6e73 0a20 202d     - options.  -
│ │ │ +001e47e0: 202d 202f 6f70 740a 2020 2020 2d20 2727   - /opt.    - ''
│ │ │ +001e47f0: 0a20 2020 202d 2027 270a 2020 2020 2d20  .    - ''.    - 
│ │ │ +001e4800: 6465 6661 756c 7473 0a20 2077 6865 6e3a  defaults.  when:
│ │ │ +001e4810: 0a20 202d 2028 206e 6f74 2028 2022 6b65  .  - ( not ( "ke
│ │ │ +001e4820: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ +001e4830: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ +001e4840: 616e 6420 2262 6f6f 7463 2220 696e 2061  and "bootc" in a
│ │ │ +001e4850: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +001e4860: 6b61 6765 730a 2020 2020 616e 6420 6e6f  kages.    and no
│ │ │ +001e4870: 7420 226f 7065 6e73 6869 6674 2d6b 7562  t "openshift-kub
│ │ │ +001e4880: 656c 6574 2220 696e 2061 6e73 6962 6c65  elet" in ansible
│ │ │ +001e4890: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ +001e48a0: 616e 6420 226f 7374 7265 6522 2069 6e20  and "ostree" in 
│ │ │ +001e48b0: 616e 7369 626c 655f 7072 6f63 5f63 6d64  ansible_proc_cmd
│ │ │ +001e48c0: 6c69 6e65 0a20 2020 2029 2061 6e64 206e  line.    ) and n
│ │ │ +001e48d0: 6f74 2028 2061 6e73 6962 6c65 5f76 6972  ot ( ansible_vir
│ │ │ +001e48e0: 7475 616c 697a 6174 696f 6e5f 7479 7065  tualization_type
│ │ │ +001e48f0: 2069 6e20 5b22 646f 636b 6572 222c 2022   in ["docker", "
│ │ │ +001e4900: 6c78 6322 2c20 226f 7065 6e76 7a22 2c20  lxc", "openvz", 
│ │ │ +001e4910: 2270 6f64 6d61 6e22 2c0a 2020 2020 2263  "podman",.    "c
│ │ │ +001e4920: 6f6e 7461 696e 6572 225d 2029 2029 0a20  ontainer"] ) ). 
│ │ │ +001e4930: 202d 2027 222f 6f70 7422 2069 6e20 616e   - '"/opt" in an
│ │ │ +001e4940: 7369 626c 655f 6d6f 756e 7473 207c 206d  sible_mounts | m
│ │ │ +001e4950: 6170 2861 7474 7269 6275 7465 3d22 6d6f  ap(attribute="mo
│ │ │ +001e4960: 756e 7422 2920 7c20 6c69 7374 270a 2020  unt") | list'.  
│ │ │ +001e4970: 2d20 2822 2d2d 6673 7461 6222 207c 206c  - ("--fstab" | l
│ │ │ +001e4980: 656e 6774 6820 3d3d 2030 290a 2020 2d20  ength == 0).  - 
│ │ │ +001e4990: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ +001e49a0: 7574 2069 7320 6465 6669 6e65 6420 616e  ut is defined an
│ │ │ +001e49b0: 6420 6465 7669 6365 5f6e 616d 652e 7374  d device_name.st
│ │ │ +001e49c0: 646f 7574 5f6c 696e 6573 2069 7320 6465  dout_lines is de
│ │ │ +001e49d0: 6669 6e65 640a 2020 2d20 2864 6576 6963  fined.  - (devic
│ │ │ +001e49e0: 655f 6e61 6d65 2e73 7464 6f75 7420 7c20  e_name.stdout | 
│ │ │ +001e49f0: 6c65 6e67 7468 203d 3d20 3029 0a20 2074  length == 0).  t
│ │ │ +001e4a00: 6167 733a 0a20 202d 2063 6f6e 6669 6775  ags:.  - configu
│ │ │ +001e4a10: 7265 5f73 7472 6174 6567 790a 2020 2d20  re_strategy.  - 
│ │ │ +001e4a20: 6869 6768 5f64 6973 7275 7074 696f 6e0a  high_disruption.
│ │ │ +001e4a30: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ +001e4a40: 7479 0a20 202d 206d 6564 6975 6d5f 7365  ty.  - medium_se
│ │ │ +001e4a50: 7665 7269 7479 0a20 202d 206d 6f75 6e74  verity.  - mount
│ │ │ +001e4a60: 5f6f 7074 696f 6e5f 6f70 745f 6e6f 7375  _option_opt_nosu
│ │ │ +001e4a70: 6964 0a20 202d 206e 6f5f 7265 626f 6f74  id.  - no_reboot
│ │ │ +001e4a80: 5f6e 6565 6465 640a 0a2d 206e 616d 653a  _needed..- name:
│ │ │ +001e4a90: 2027 4164 6420 6e6f 7375 6964 204f 7074   'Add nosuid Opt
│ │ │ +001e4aa0: 696f 6e20 746f 202f 6f70 743a 204d 616b  ion to /opt: Mak
│ │ │ +001e4ab0: 6520 7375 7265 206e 6f73 7569 6420 6f70  e sure nosuid op
│ │ │ +001e4ac0: 7469 6f6e 2069 7320 7061 7274 206f 6620  tion is part of 
│ │ │ +001e4ad0: 7468 6520 746f 202f 6f70 740a 2020 2020  the to /opt.    
│ │ │ +001e4ae0: 6f70 7469 6f6e 7327 0a20 2073 6574 5f66  options'.  set_f
│ │ │ +001e4af0: 6163 743a 0a20 2020 206d 6f75 6e74 5f69  act:.    mount_i
│ │ │ +001e4b00: 6e66 6f3a 2027 7b7b 206d 6f75 6e74 5f69  nfo: '{{ mount_i
│ │ │ +001e4b10: 6e66 6f20 7c20 636f 6d62 696e 6528 207b  nfo | combine( {
│ │ │ +001e4b20: 2727 6f70 7469 6f6e 7327 273a 2727 2727  ''options'':''''
│ │ │ +001e4b30: 7e28 6d6f 756e 745f 696e 666f 2e6f 7074  ~(mount_info.opt
│ │ │ +001e4b40: 696f 6e73 207c 0a20 2020 2020 2064 6566  ions |.      def
│ │ │ +001e4b50: 6175 6c74 2827 2727 2729 297e 2827 272c  ault(''''))~('',
│ │ │ +001e4b60: 2727 2069 6620 286d 6f75 6e74 5f69 6e66  '' if (mount_inf
│ │ │ +001e4b70: 6f2e 6f70 7469 6f6e 7320 7c20 6465 6661  o.options | defa
│ │ │ +001e4b80: 756c 7428 2727 2727 2929 2065 6c73 6520  ult('''')) else 
│ │ │ +001e4b90: 2727 2727 297e 2727 6e6f 7375 6964 2727  '''')~''nosuid''
│ │ │ +001e4ba0: 0a20 2020 2020 207d 2920 7d7d 270a 2020  .      }) }}'.  
│ │ │ +001e4bb0: 7768 656e 3a0a 2020 2d20 2820 6e6f 7420  when:.  - ( not 
│ │ │ +001e4bc0: 2820 226b 6572 6e65 6c22 2069 6e20 616e  ( "kernel" in an
│ │ │ +001e4bd0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001e4be0: 6167 6573 2061 6e64 2022 626f 6f74 6322  ages and "bootc"
│ │ │ +001e4bf0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001e4c00: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ +001e4c10: 6e64 206e 6f74 2022 6f70 656e 7368 6966  nd not "openshif
│ │ │ +001e4c20: 742d 6b75 6265 6c65 7422 2069 6e20 616e  t-kubelet" in an
│ │ │ +001e4c30: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001e4c40: 6167 6573 2061 6e64 2022 6f73 7472 6565  ages and "ostree
│ │ │ +001e4c50: 2220 696e 2061 6e73 6962 6c65 5f70 726f  " in ansible_pro
│ │ │ +001e4c60: 635f 636d 646c 696e 650a 2020 2020 2920  c_cmdline.    ) 
│ │ │ +001e4c70: 616e 6420 6e6f 7420 2820 616e 7369 626c  and not ( ansibl
│ │ │ +001e4c80: 655f 7669 7274 7561 6c69 7a61 7469 6f6e  e_virtualization
│ │ │ +001e4c90: 5f74 7970 6520 696e 205b 2264 6f63 6b65  _type in ["docke
│ │ │ +001e4ca0: 7222 2c20 226c 7863 222c 2022 6f70 656e  r", "lxc", "open
│ │ │ +001e4cb0: 767a 222c 2022 706f 646d 616e 222c 0a20  vz", "podman",. 
│ │ │ +001e4cc0: 2020 2022 636f 6e74 6169 6e65 7222 5d20     "container"] 
│ │ │ +001e4cd0: 2920 290a 2020 2d20 2722 2f6f 7074 2220  ) ).  - '"/opt" 
│ │ │ +001e4ce0: 696e 2061 6e73 6962 6c65 5f6d 6f75 6e74  in ansible_mount
│ │ │ +001e4cf0: 7320 7c20 6d61 7028 6174 7472 6962 7574  s | map(attribut
│ │ │ +001e4d00: 653d 226d 6f75 6e74 2229 207c 206c 6973  e="mount") | lis
│ │ │ +001e4d10: 7427 0a20 202d 206d 6f75 6e74 5f69 6e66  t'.  - mount_inf
│ │ │ +001e4d20: 6f20 6973 2064 6566 696e 6564 2061 6e64  o is defined and
│ │ │ +001e4d30: 2022 6e6f 7375 6964 2220 6e6f 7420 696e   "nosuid" not in
│ │ │ +001e4d40: 2028 6d6f 756e 745f 696e 666f 2e6f 7074   (mount_info.opt
│ │ │ +001e4d50: 696f 6e73 207c 2064 6566 6175 6c74 2827  ions | default('
│ │ │ +001e4d60: 2729 290a 2020 7461 6773 3a0a 2020 2d20  ')).  tags:.  - 
│ │ │ +001e4d70: 636f 6e66 6967 7572 655f 7374 7261 7465  configure_strate
│ │ │ +001e4d80: 6779 0a20 202d 2068 6967 685f 6469 7372  gy.  - high_disr
│ │ │ +001e4d90: 7570 7469 6f6e 0a20 202d 206c 6f77 5f63  uption.  - low_c
│ │ │ +001e4da0: 6f6d 706c 6578 6974 790a 2020 2d20 6d65  omplexity.  - me
│ │ │ +001e4db0: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ +001e4dc0: 2d20 6d6f 756e 745f 6f70 7469 6f6e 5f6f  - mount_option_o
│ │ │ +001e4dd0: 7074 5f6e 6f73 7569 640a 2020 2d20 6e6f  pt_nosuid.  - no
│ │ │ +001e4de0: 5f72 6562 6f6f 745f 6e65 6564 6564 0a0a  _reboot_needed..
│ │ │ +001e4df0: 2d20 6e61 6d65 3a20 2741 6464 206e 6f73  - name: 'Add nos
│ │ │ +001e4e00: 7569 6420 4f70 7469 6f6e 2074 6f20 2f6f  uid Option to /o
│ │ │ +001e4e10: 7074 3a20 456e 7375 7265 202f 6f70 7420  pt: Ensure /opt 
│ │ │ +001e4e20: 6973 206d 6f75 6e74 6564 2077 6974 6820  is mounted with 
│ │ │ +001e4e30: 6e6f 7375 6964 206f 7074 696f 6e27 0a20  nosuid option'. 
│ │ │ +001e4e40: 2061 6e73 6962 6c65 2e70 6f73 6978 2e6d   ansible.posix.m
│ │ │ +001e4e50: 6f75 6e74 3a0a 2020 2020 7061 7468 3a20  ount:.    path: 
│ │ │ +001e4e60: 2f6f 7074 0a20 2020 2073 7263 3a20 277b  /opt.    src: '{
│ │ │ +001e4e70: 7b20 6d6f 756e 745f 696e 666f 2e73 6f75  { mount_info.sou
│ │ │ +001e4e80: 7263 6520 7c20 6465 6661 756c 7428 2727  rce | default(''
│ │ │ +001e4e90: 2727 2920 7d7d 270a 2020 2020 6f70 7473  '') }}'.    opts
│ │ │ +001e4ea0: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ +001e4eb0: 2e6f 7074 696f 6e73 207c 2064 6566 6175  .options | defau
│ │ │ +001e4ec0: 6c74 2827 2727 2729 207d 7d27 0a20 2020  lt('''') }}'.   
│ │ │ +001e4ed0: 2073 7461 7465 3a20 6d6f 756e 7465 640a   state: mounted.
│ │ │ +001e4ee0: 2020 2020 6673 7479 7065 3a20 277b 7b20      fstype: '{{ 
│ │ │ +001e4ef0: 6d6f 756e 745f 696e 666f 2e66 7374 7970  mount_info.fstyp
│ │ │ +001e4f00: 6520 7c20 6465 6661 756c 7428 2727 2727  e | default(''''
│ │ │ +001e4f10: 2920 7d7d 270a 2020 7265 6769 7374 6572  ) }}'.  register
│ │ │ +001e4f20: 3a20 6d6f 756e 745f 7265 7375 6c74 0a20  : mount_result. 
│ │ │ +001e4f30: 2066 6169 6c65 645f 7768 656e 3a0a 2020   failed_when:.  
│ │ │ +001e4f40: 2d20 6d6f 756e 745f 7265 7375 6c74 2069  - mount_result i
│ │ │ +001e4f50: 7320 6661 696c 6564 0a20 202d 2027 2727  s failed.  - '''
│ │ │ +001e4f60: 7461 7267 6574 2069 7320 6275 7379 2727  target is busy''
│ │ │ +001e4f70: 206e 6f74 2069 6e20 286d 6f75 6e74 5f72   not in (mount_r
│ │ │ +001e4f80: 6573 756c 742e 6d73 6720 7c20 6465 6661  esult.msg | defa
│ │ │ +001e4f90: 756c 7428 2727 2727 2929 270a 2020 2d20  ult(''''))'.  - 
│ │ │ +001e4fa0: 2727 2761 6c72 6561 6479 206d 6f75 6e74  '''already mount
│ │ │ +001e4fb0: 6564 2727 206e 6f74 2069 6e20 286d 6f75  ed'' not in (mou
│ │ │ +001e4fc0: 6e74 5f72 6573 756c 742e 6d73 6720 7c20  nt_result.msg | 
│ │ │ +001e4fd0: 6465 6661 756c 7428 2727 2727 2929 270a  default(''''))'.
│ │ │ +001e4fe0: 2020 7768 656e 3a0a 2020 2d20 2820 6e6f    when:.  - ( no
│ │ │ +001e4ff0: 7420 2820 226b 6572 6e65 6c22 2069 6e20  t ( "kernel" in 
│ │ │ +001e5000: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001e5010: 636b 6167 6573 2061 6e64 2022 626f 6f74  ckages and "boot
│ │ │ +001e5020: 6322 2069 6e20 616e 7369 626c 655f 6661  c" in ansible_fa
│ │ │ +001e5030: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ +001e5040: 2061 6e64 206e 6f74 2022 6f70 656e 7368   and not "opensh
│ │ │ +001e5050: 6966 742d 6b75 6265 6c65 7422 2069 6e20  ift-kubelet" in 
│ │ │ +001e5060: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001e5070: 636b 6167 6573 2061 6e64 2022 6f73 7472  ckages and "ostr
│ │ │ +001e5080: 6565 2220 696e 2061 6e73 6962 6c65 5f70  ee" in ansible_p
│ │ │ +001e5090: 726f 635f 636d 646c 696e 650a 2020 2020  roc_cmdline.    
│ │ │ +001e50a0: 2920 616e 6420 6e6f 7420 2820 616e 7369  ) and not ( ansi
│ │ │ +001e50b0: 626c 655f 7669 7274 7561 6c69 7a61 7469  ble_virtualizati
│ │ │ +001e50c0: 6f6e 5f74 7970 6520 696e 205b 2264 6f63  on_type in ["doc
│ │ │ +001e50d0: 6b65 7222 2c20 226c 7863 222c 2022 6f70  ker", "lxc", "op
│ │ │ +001e50e0: 656e 767a 222c 2022 706f 646d 616e 222c  envz", "podman",
│ │ │ +001e50f0: 0a20 2020 2022 636f 6e74 6169 6e65 7222  .    "container"
│ │ │ +001e5100: 5d20 2920 290a 2020 2d20 2722 2f6f 7074  ] ) ).  - '"/opt
│ │ │ +001e5110: 2220 696e 2061 6e73 6962 6c65 5f6d 6f75  " in ansible_mou
│ │ │ +001e5120: 6e74 7320 7c20 6d61 7028 6174 7472 6962  nts | map(attrib
│ │ │ +001e5130: 7574 653d 226d 6f75 6e74 2229 207c 206c  ute="mount") | l
│ │ │ +001e5140: 6973 7427 0a20 202d 206d 6f75 6e74 5f69  ist'.  - mount_i
│ │ │ +001e5150: 6e66 6f20 6973 2064 6566 696e 6564 0a20  nfo is defined. 
│ │ │ +001e5160: 202d 2028 6465 7669 6365 5f6e 616d 652e   - (device_name.
│ │ │ +001e5170: 7374 646f 7574 2069 7320 6465 6669 6e65  stdout is define
│ │ │ +001e5180: 6420 616e 6420 2864 6576 6963 655f 6e61  d and (device_na
│ │ │ +001e5190: 6d65 2e73 7464 6f75 7420 7c20 6c65 6e67  me.stdout | leng
│ │ │ +001e51a0: 7468 2026 6774 3b20 3029 2920 6f72 2028  th > 0)) or (
│ │ │ +001e51b0: 222d 2d66 7374 6162 220a 2020 2020 7c20  "--fstab".    | 
│ │ │ +001e51c0: 6c65 6e67 7468 203d 3d20 3029 0a20 2074  length == 0).  t
│ │ │ +001e51d0: 6167 733a 0a20 202d 2063 6f6e 6669 6775  ags:.  - configu
│ │ │ +001e51e0: 7265 5f73 7472 6174 6567 790a 2020 2d20  re_strategy.  - 
│ │ │ +001e51f0: 6869 6768 5f64 6973 7275 7074 696f 6e0a  high_disruption.
│ │ │ +001e5200: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ +001e5210: 7479 0a20 202d 206d 6564 6975 6d5f 7365  ty.  - medium_se
│ │ │ +001e5220: 7665 7269 7479 0a20 202d 206d 6f75 6e74  verity.  - mount
│ │ │ +001e5230: 5f6f 7074 696f 6e5f 6f70 745f 6e6f 7375  _option_opt_nosu
│ │ │ +001e5240: 6964 0a20 202d 206e 6f5f 7265 626f 6f74  id.  - no_reboot
│ │ │ +001e5250: 5f6e 6565 6465 640a 3c2f 636f 6465 3e3c  _needed.<
│ │ │ +001e5260: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>Remediat
│ │ │ +001e5310: 696f 6e20 5368 656c 6c20 7363 7269 7074  ion Shell script
│ │ │ +001e5320: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976   ...
│ │ │ +001e53c0: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
Co │ │ │ +001e3f00: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +001e3f30: 6e3a 3c2f 7468 3e3c 7464 3e68 6967 683c n:high< │ │ │ +001e3f40: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ +001e3f80: 3a3c 2f74 683e 3c74 643e 636f 6e66 6967 :config │ │ │ +001e3f90: 7572 653c 2f74 643e 3c2f 7472 3e3c 2f74 ure
Reboot:false
# Remedi │ │ │ +001e53e0: 6174 696f 6e20 6973 2061 7070 6c69 6361 ation is applica │ │ │ +001e53f0: 626c 6520 6f6e 6c79 2069 6e20 6365 7274 ble only in cert │ │ │ +001e5400: 6169 6e20 706c 6174 666f 726d 730a 6966 ain platforms.if │ │ │ +001e5410: 2028 2021 2028 207b 2072 706d 202d 2d71 ( ! ( { rpm --q │ │ │ +001e5420: 7569 6574 202d 7120 6b65 726e 656c 203b uiet -q kernel ; │ │ │ +001e5430: 7d20 2661 6d70 3b26 616d 703b 207b 2072 } && { r │ │ │ +001e5440: 706d 202d 2d71 7569 6574 202d 7120 626f pm --quiet -q bo │ │ │ +001e5450: 6f74 6320 3b7d 2026 616d 703b 2661 6d70 otc ;} && │ │ │ +001e5460: 3b20 7b20 2120 7270 6d20 2d2d 7175 6965 ; { ! rpm --quie │ │ │ +001e5470: 7420 2d71 206f 7065 6e73 6869 6674 2d6b t -q openshift-k │ │ │ +001e5480: 7562 656c 6574 203b 7d20 2661 6d70 3b26 ubelet ;} && │ │ │ +001e5490: 616d 703b 2028 5b20 2d66 202f 7275 6e2f amp; ([ -f /run/ │ │ │ +001e54a0: 6f73 7472 6565 2d62 6f6f 7465 6420 5d20 ostree-booted ] │ │ │ +001e54b0: 7c7c 205b 202d 4c20 2f6f 7374 7265 6520 || [ -L /ostree │ │ │ +001e54c0: 5d29 2029 2026 616d 703b 2661 6d70 3b20 ]) ) && │ │ │ +001e54d0: 2120 2820 5b20 2d66 202f 2e64 6f63 6b65 ! ( [ -f /.docke │ │ │ +001e54e0: 7265 6e76 205d 207c 7c20 5b20 2d66 202f renv ] || [ -f / │ │ │ +001e54f0: 7275 6e2f 2e63 6f6e 7461 696e 6572 656e run/.containeren │ │ │ +001e5500: 7620 5d20 2920 2920 2661 6d70 3b26 616d v ] ) ) &&am │ │ │ +001e5510: 703b 207b 2028 2066 696e 646d 6e74 202d p; { ( findmnt - │ │ │ +001e5520: 2d6b 6572 6e65 6c20 222f 6f70 7422 2026 -kernel "/opt" & │ │ │ +001e5530: 6774 3b20 2f64 6576 2f6e 756c 6c20 7c7c gt; /dev/null || │ │ │ +001e5540: 2066 696e 646d 6e74 202d 2d66 7374 6162 findmnt --fstab │ │ │ +001e5550: 2022 2f6f 7074 2220 2667 743b 202f 6465 "/opt" > /de │ │ │ +001e5560: 762f 6e75 6c6c 2029 3b20 7d3b 2074 6865 v/null ); }; the │ │ │ +001e5570: 6e0a 0a66 756e 6374 696f 6e20 7065 7266 n..function perf │ │ │ +001e5580: 6f72 6d5f 7265 6d65 6469 6174 696f 6e20 orm_remediation │ │ │ +001e5590: 7b0a 0a20 2020 200a 2020 2020 2020 2020 {.. . │ │ │ +001e55a0: 2320 7468 6520 6d6f 756e 7420 706f 696e # the mount poin │ │ │ +001e55b0: 7420 2f6f 7074 2068 6173 2074 6f20 6265 t /opt has to be │ │ │ +001e55c0: 2064 6566 696e 6564 2069 6e20 2f65 7463 defined in /etc │ │ │ +001e55d0: 2f66 7374 6162 0a20 2020 2020 2020 2023 /fstab. # │ │ │ +001e55e0: 2062 6566 6f72 6520 7468 6973 2072 656d before this rem │ │ │ +001e55f0: 6564 6961 7469 6f6e 2063 616e 2062 6520 ediation can be │ │ │ +001e5600: 6578 6563 7574 6564 2e20 496e 2063 6173 executed. In cas │ │ │ +001e5610: 6520 6974 2069 7320 6e6f 7420 6465 6669 e it is not defi │ │ │ +001e5620: 6e65 642c 2074 6865 0a20 2020 2020 2020 ned, the. │ │ │ +001e5630: 2023 2072 656d 6564 6961 7469 6f6e 2061 # remediation a │ │ │ +001e5640: 626f 7274 7320 616e 6420 6e6f 2063 6861 borts and no cha │ │ │ +001e5650: 6e67 6573 2072 6567 6172 6469 6e67 2074 nges regarding t │ │ │ +001e5660: 6865 206d 6f75 6e74 2070 6f69 6e74 2061 he mount point a │ │ │ +001e5670: 7265 2064 6f6e 652e 0a20 2020 2020 2020 re done.. │ │ │ +001e5680: 206d 6f75 6e74 5f70 6f69 6e74 5f6d 6174 mount_point_mat │ │ │ +001e5690: 6368 5f72 6567 6578 703d 2224 2870 7269 ch_regexp="$(pri │ │ │ +001e56a0: 6e74 6620 225e 5b5b 3a73 7061 6365 3a5d ntf "^[[:space:] │ │ │ +001e56b0: 5d2a 5b5e 235d 2e2a 5b5b 3a73 7061 6365 ]*[^#].*[[:space │ │ │ +001e56c0: 3a5d 5d25 735b 5b3a 7370 6163 653a 5d5d :]]%s[[:space:]] │ │ │ +001e56d0: 2220 222f 6f70 7422 2922 0a0a 2020 2020 " "/opt")".. │ │ │ +001e56e0: 6772 6570 2022 246d 6f75 6e74 5f70 6f69 grep "$mount_poi │ │ │ +001e56f0: 6e74 5f6d 6174 6368 5f72 6567 6578 7022 nt_match_regexp" │ │ │ +001e5700: 202d 7120 2f65 7463 2f66 7374 6162 205c -q /etc/fstab \ │ │ │ +001e5710: 0a20 2020 2020 2020 207c 7c20 7b20 6563 . || { ec │ │ │ +001e5720: 686f 2022 5468 6520 6d6f 756e 7420 706f ho "The mount po │ │ │ +001e5730: 696e 7420 272f 6f70 7427 2069 7320 6e6f int '/opt' is no │ │ │ +001e5740: 7420 6576 656e 2069 6e20 2f65 7463 2f66 t even in /etc/f │ │ │ +001e5750: 7374 6162 2c20 736f 2077 6520 6361 6e27 stab, so we can' │ │ │ +001e5760: 7420 7365 7420 7570 206d 6f75 6e74 206f t set up mount o │ │ │ +001e5770: 7074 696f 6e73 2220 2667 743b 2661 6d70 ptions" >& │ │ │ +001e5780: 3b32 3b0a 2020 2020 2020 2020 2020 2020 ;2;. │ │ │ +001e5790: 2020 2020 6563 686f 2022 4e6f 7420 7265 echo "Not re │ │ │ +001e57a0: 6d65 6469 6174 696e 672c 2062 6563 6175 mediating, becau │ │ │ +001e57b0: 7365 2074 6865 7265 2069 7320 6e6f 2072 se there is no r │ │ │ +001e57c0: 6563 6f72 6420 6f66 202f 6f70 7420 696e ecord of /opt in │ │ │ +001e57d0: 202f 6574 632f 6673 7461 6222 2026 6774 /etc/fstab" > │ │ │ +001e57e0: 3b26 616d 703b 323b 2072 6574 7572 6e20 ;&2; return │ │ │ +001e57f0: 313b 207d 0a20 2020 200a 0a0a 2020 2020 1; }. ... │ │ │ +001e5800: 6d6f 756e 745f 706f 696e 745f 6d61 7463 mount_point_matc │ │ │ +001e5810: 685f 7265 6765 7870 3d22 2428 7072 696e h_regexp="$(prin │ │ │ +001e5820: 7466 2022 5e5b 5b3a 7370 6163 653a 5d5d tf "^[[:space:]] │ │ │ +001e5830: 2a5b 5e23 5d2e 2a5b 5b3a 7370 6163 653a *[^#].*[[:space: │ │ │ +001e5840: 5d5d 2573 5b5b 3a73 7061 6365 3a5d 5d22 ]]%s[[:space:]]" │ │ │ +001e5850: 202f 6f70 7429 220a 0a20 2020 2023 2049 /opt)".. # I │ │ │ +001e5860: 6620 7468 6520 6d6f 756e 7420 706f 696e f the mount poin │ │ │ +001e5870: 7420 6973 206e 6f74 2069 6e20 2f65 7463 t is not in /etc │ │ │ +001e5880: 2f66 7374 6162 2c20 6765 7420 7072 6576 /fstab, get prev │ │ │ +001e5890: 696f 7573 206d 6f75 6e74 206f 7074 696f ious mount optio │ │ │ +001e58a0: 6e73 2066 726f 6d20 2f65 7463 2f6d 7461 ns from /etc/mta │ │ │ +001e58b0: 620a 2020 2020 6966 2021 2067 7265 7020 b. if ! grep │ │ │ +001e58c0: 2d71 2022 246d 6f75 6e74 5f70 6f69 6e74 -q "$mount_point │ │ │ +001e58d0: 5f6d 6174 6368 5f72 6567 6578 7022 202f _match_regexp" / │ │ │ +001e58e0: 6574 632f 6673 7461 623b 2074 6865 6e0a etc/fstab; then. │ │ │ +001e58f0: 2020 2020 2020 2020 2320 7275 6e74 696d # runtim │ │ │ +001e5900: 6520 6f70 7473 2077 6974 686f 7574 2073 e opts without s │ │ │ +001e5910: 6f6d 6520 6175 746f 6d61 7469 6320 6b65 ome automatic ke │ │ │ +001e5920: 726e 656c 2f75 7365 7273 7061 6365 2d61 rnel/userspace-a │ │ │ +001e5930: 6464 6564 2064 6566 6175 6c74 730a 2020 dded defaults. │ │ │ +001e5940: 2020 2020 2020 7072 6576 696f 7573 5f6d previous_m │ │ │ +001e5950: 6f75 6e74 5f6f 7074 733d 2428 6772 6570 ount_opts=$(grep │ │ │ +001e5960: 2022 246d 6f75 6e74 5f70 6f69 6e74 5f6d "$mount_point_m │ │ │ +001e5970: 6174 6368 5f72 6567 6578 7022 202f 6574 atch_regexp" /et │ │ │ +001e5980: 632f 6d74 6162 207c 2068 6561 6420 2d31 c/mtab | head -1 │ │ │ +001e5990: 207c 2020 6177 6b20 277b 7072 696e 7420 | awk '{print │ │ │ +001e59a0: 2434 7d27 205c 0a20 2020 2020 2020 2020 $4}' \. │ │ │ +001e59b0: 2020 2020 2020 2020 2020 207c 2073 6564 | sed │ │ │ +001e59c0: 202d 4520 2273 2f28 7277 7c64 6566 6175 -E "s/(rw|defau │ │ │ +001e59d0: 6c74 737c 7365 636c 6162 656c 7c6e 6f73 lts|seclabel|nos │ │ │ +001e59e0: 7569 6429 282c 7c24 292f 2f67 3b73 2f2c uid)(,|$)//g;s/, │ │ │ +001e59f0: 242f 2f22 290a 2020 2020 2020 2020 5b20 $//"). [ │ │ │ +001e5a00: 2224 7072 6576 696f 7573 5f6d 6f75 6e74 "$previous_mount │ │ │ +001e5a10: 5f6f 7074 7322 205d 2026 616d 703b 2661 _opts" ] &&a │ │ │ +001e5a20: 6d70 3b20 7072 6576 696f 7573 5f6d 6f75 mp; previous_mou │ │ │ +001e5a30: 6e74 5f6f 7074 732b 3d22 2c22 0a20 2020 nt_opts+=",". │ │ │ +001e5a40: 2020 2020 2023 2049 6e20 6973 6f39 3636 # In iso966 │ │ │ +001e5a50: 3020 6669 6c65 7379 7374 656d 7320 6d74 0 filesystems mt │ │ │ +001e5a60: 6162 2063 6f75 6c64 2064 6573 6372 6962 ab could describ │ │ │ +001e5a70: 6520 6120 2262 6c6f 636b 7369 7a65 2220 e a "blocksize" │ │ │ +001e5a80: 7661 6c75 652c 2074 6869 7320 7368 6f75 value, this shou │ │ │ +001e5a90: 6c64 2062 6520 7265 666c 6563 7465 6420 ld be reflected │ │ │ +001e5aa0: 696e 0a20 2020 2020 2020 2023 2066 7374 in. # fst │ │ │ +001e5ab0: 6162 2061 7320 2262 6c6f 636b 222e 2020 ab as "block". │ │ │ +001e5ac0: 5468 6520 6e65 7874 2076 6172 6961 626c The next variabl │ │ │ +001e5ad0: 6520 6973 2074 6f20 7361 7469 7366 7920 e is to satisfy │ │ │ +001e5ae0: 7368 656c 6c63 6865 636b 2053 4332 3035 shellcheck SC205 │ │ │ +001e5af0: 302e 0a20 2020 2020 2020 2066 735f 7479 0.. fs_ty │ │ │ +001e5b00: 7065 3d22 220a 2020 2020 2020 2020 6966 pe="". if │ │ │ +001e5b10: 205b 2020 2224 6673 5f74 7970 6522 203d [ "$fs_type" = │ │ │ +001e5b20: 3d20 2269 736f 3936 3630 2220 5d20 3b20 = "iso9660" ] ; │ │ │ +001e5b30: 7468 656e 0a20 2020 2020 2020 2020 2020 then. │ │ │ +001e5b40: 2070 7265 7669 6f75 735f 6d6f 756e 745f previous_mount_ │ │ │ +001e5b50: 6f70 7473 3d24 2873 6564 2027 732f 626c opts=$(sed 's/bl │ │ │ +001e5b60: 6f63 6b73 697a 653d 2f62 6c6f 636b 3d2f ocksize=/block=/ │ │ │ +001e5b70: 2720 266c 743b 266c 743b 266c 743b 2022 ' <<< " │ │ │ +001e5b80: 2470 7265 7669 6f75 735f 6d6f 756e 745f $previous_mount_ │ │ │ +001e5b90: 6f70 7473 2229 0a20 2020 2020 2020 2066 opts"). f │ │ │ +001e5ba0: 690a 2020 2020 2020 2020 6563 686f 2022 i. echo " │ │ │ +001e5bb0: 202f 6f70 7420 2064 6566 6175 6c74 732c /opt defaults, │ │ │ +001e5bc0: 247b 7072 6576 696f 7573 5f6d 6f75 6e74 ${previous_mount │ │ │ +001e5bd0: 5f6f 7074 737d 6e6f 7375 6964 2030 2030 _opts}nosuid 0 0 │ │ │ +001e5be0: 2220 2667 743b 2667 743b 202f 6574 632f " >> /etc/ │ │ │ +001e5bf0: 6673 7461 620a 2020 2020 2320 4966 2074 fstab. # If t │ │ │ +001e5c00: 6865 206d 6f75 6e74 5f6f 7074 206f 7074 he mount_opt opt │ │ │ +001e5c10: 696f 6e20 6973 206e 6f74 2061 6c72 6561 ion is not alrea │ │ │ +001e5c20: 6479 2069 6e20 7468 6520 6d6f 756e 7420 dy in the mount │ │ │ +001e5c30: 706f 696e 7427 7320 2f65 7463 2f66 7374 point's /etc/fst │ │ │ +001e5c40: 6162 2065 6e74 7279 2c20 6164 6420 6974 ab entry, add it │ │ │ +001e5c50: 0a20 2020 2065 6c69 6620 2120 6772 6570 . elif ! grep │ │ │ +001e5c60: 2022 246d 6f75 6e74 5f70 6f69 6e74 5f6d "$mount_point_m │ │ │ +001e5c70: 6174 6368 5f72 6567 6578 7022 202f 6574 atch_regexp" /et │ │ │ +001e5c80: 632f 6673 7461 6220 7c20 6772 6570 202d c/fstab | grep - │ │ │ +001e5c90: 7120 226e 6f73 7569 6422 3b20 7468 656e q "nosuid"; then │ │ │ +001e5ca0: 0a20 2020 2020 2020 2070 7265 7669 6f75 . previou │ │ │ +001e5cb0: 735f 6d6f 756e 745f 6f70 7473 3d24 2867 s_mount_opts=$(g │ │ │ +001e5cc0: 7265 7020 2224 6d6f 756e 745f 706f 696e rep "$mount_poin │ │ │ +001e5cd0: 745f 6d61 7463 685f 7265 6765 7870 2220 t_match_regexp" │ │ │ +001e5ce0: 2f65 7463 2f66 7374 6162 207c 2061 776b /etc/fstab | awk │ │ │ +001e5cf0: 2027 7b70 7269 6e74 2024 347d 2729 0a20 '{print $4}'). │ │ │ +001e5d00: 2020 2020 2020 2073 6564 202d 6920 2273 sed -i "s │ │ │ +001e5d10: 7c5c 2824 7b6d 6f75 6e74 5f70 6f69 6e74 |\(${mount_point │ │ │ +001e5d20: 5f6d 6174 6368 5f72 6567 6578 707d 2e2a _match_regexp}.* │ │ │ +001e5d30: 247b 7072 6576 696f 7573 5f6d 6f75 6e74 ${previous_mount │ │ │ +001e5d40: 5f6f 7074 737d 5c29 7c5c 312c 6e6f 7375 _opts}\)|\1,nosu │ │ │ +001e5d50: 6964 7c22 202f 6574 632f 6673 7461 620a id|" /etc/fstab. │ │ │ +001e5d60: 2020 2020 6669 0a0a 0a20 2020 2069 6620 fi... if │ │ │ +001e5d70: 6d6b 6469 7220 2d70 2022 2f6f 7074 223b mkdir -p "/opt"; │ │ │ +001e5d80: 2074 6865 6e0a 2020 2020 2020 2020 6966 then. if │ │ │ +001e5d90: 206d 6f75 6e74 706f 696e 7420 2d71 2022 mountpoint -q " │ │ │ +001e5da0: 2f6f 7074 223b 2074 6865 6e0a 2020 2020 /opt"; then. │ │ │ +001e5db0: 2020 2020 2020 2020 6d6f 756e 7420 2d6f mount -o │ │ │ +001e5dc0: 2072 656d 6f75 6e74 202d 2d74 6172 6765 remount --targe │ │ │ +001e5dd0: 7420 222f 6f70 7422 0a20 2020 2020 2020 t "/opt". │ │ │ +001e5de0: 2066 690a 2020 2020 6669 0a7d 0a0a 7065 fi. fi.}..pe │ │ │ +001e5df0: 7266 6f72 6d5f 7265 6d65 6469 6174 696f rform_remediatio │ │ │ +001e5e00: 6e0a 0a65 6c73 650a 2020 2020 2667 743b n..else. > │ │ │ +001e5e10: 2661 6d70 3b32 2065 6368 6f20 2752 656d &2 echo 'Rem │ │ │ +001e5e20: 6564 6961 7469 6f6e 2069 7320 6e6f 7420 ediation is not │ │ │ +001e5e30: 6170 706c 6963 6162 6c65 2c20 6e6f 7468 applicable, noth │ │ │ +001e5e40: 696e 6720 7761 7320 646f 6e65 270a 6669 ing was done'.fi │ │ │ +001e5e50: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f .
Remediation Ana │ │ │ +001e5f10: 636f 6e64 6120 736e 6970 7065 7420 e287 conda snippet .. │ │ │ +001e5f20: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ +001e5fa0: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ +001e5fc0: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr> │ │ │ +001e6010: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 < │ │ │ +001e6040: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
.part /opt --m
│ │ │ +001e6060: 6f75 6e74 6f70 7469 6f6e 733d 226e 6f73  ountoptions="nos
│ │ │ +001e6070: 7569 6422 0a3c 2f63 6f64 653e 3c2f 7072  uid".
│ │ │ 001e60a0: 3c2f 7461 626c 653e 3c2f 7464 3e3c 2f74
low
Disr │ │ │ +001e5fd0: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +001e5fe0: 6869 6768 3c2f 7464 3e3c 2f74 723e 3c74 high
Reboot:false
Str │ │ │ +001e6020: 6174 6567 793a 3c2f 7468 3e3c 7464 3e65 ategy:e │ │ │ +001e6030: 6e61 626c 653c 2f74 643e 3c2f 7472 3e3c nable
Remedi │ │ │ -001e69c0: 6174 696f 6e20 416e 6163 6f6e 6461 2073 ation Anaconda s │ │ │ -001e69d0: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ -001e6a60: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -001e6a70: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -001e6a90: 3c2f 7468 3e3c 7464 3e68 6967 683c 2f74 high
R │ │ │ -001e6ab0: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -001e6ac0: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -001e6ae0: 2f74 683e 3c74 643e 656e 6162 6c65 3c2f /th>enable
│ │ │ -001e6b00: 3c70 7265 3e3c 636f 6465 3e0a 7061 7274
.part
│ │ │ -001e6b10: 202f 7372 7620 2d2d 6d6f 756e 746f 7074   /srv --mountopt
│ │ │ -001e6b20: 696f 6e73 3d22 6e6f 7375 6964 220a 3c2f  ions="nosuid".
Re │ │ │ -001e6be0: 6d65 6469 6174 696f 6e20 416e 7369 626c mediation Ansibl │ │ │ -001e6bf0: 6520 736e 6970 7065 7420 e287 b23c 2f61 e snippet ...
< │ │ │ -001e6c90: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -001e6ca0: 3c74 723e 3c74 683e 4469 7372 7570 7469 Reboot:false
- name: Gather 
│ │ │ -001e6d40: 7468 6520 7061 636b 6167 6520 6661 6374  the package fact
│ │ │ -001e6d50: 730a 2020 7061 636b 6167 655f 6661 6374  s.  package_fact
│ │ │ -001e6d60: 733a 0a20 2020 206d 616e 6167 6572 3a20  s:.    manager: 
│ │ │ -001e6d70: 6175 746f 0a20 2074 6167 733a 0a20 202d  auto.  tags:.  -
│ │ │ -001e6d80: 2063 6f6e 6669 6775 7265 5f73 7472 6174   configure_strat
│ │ │ -001e6d90: 6567 790a 2020 2d20 6869 6768 5f64 6973  egy.  - high_dis
│ │ │ -001e6da0: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f  ruption.  - low_
│ │ │ -001e6db0: 636f 6d70 6c65 7869 7479 0a20 202d 206d  complexity.  - m
│ │ │ -001e6dc0: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ -001e6dd0: 202d 206d 6f75 6e74 5f6f 7074 696f 6e5f   - mount_option_
│ │ │ -001e6de0: 7372 765f 6e6f 7375 6964 0a20 202d 206e  srv_nosuid.  - n
│ │ │ -001e6df0: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ -001e6e00: 0a2d 206e 616d 653a 2027 4164 6420 6e6f  .- name: 'Add no
│ │ │ -001e6e10: 7375 6964 204f 7074 696f 6e20 746f 202f  suid Option to /
│ │ │ -001e6e20: 7372 763a 2043 6865 636b 2069 6e66 6f72  srv: Check infor
│ │ │ -001e6e30: 6d61 7469 6f6e 2061 7373 6f63 6961 7465  mation associate
│ │ │ -001e6e40: 6420 746f 206d 6f75 6e74 706f 696e 7427  d to mountpoint'
│ │ │ -001e6e50: 0a20 2061 6e73 6962 6c65 2e62 7569 6c74  .  ansible.built
│ │ │ -001e6e60: 696e 2e63 6f6d 6d61 6e64 3a20 6669 6e64  in.command: find
│ │ │ -001e6e70: 6d6e 7420 2d2d 6673 7461 6220 272f 7372  mnt --fstab '/sr
│ │ │ -001e6e80: 7627 0a20 2072 6567 6973 7465 723a 2064  v'.  register: d
│ │ │ -001e6e90: 6576 6963 655f 6e61 6d65 0a20 2066 6169  evice_name.  fai
│ │ │ -001e6ea0: 6c65 645f 7768 656e 3a20 6465 7669 6365  led_when: device
│ │ │ -001e6eb0: 5f6e 616d 652e 7263 2026 6774 3b20 310a  _name.rc > 1.
│ │ │ -001e6ec0: 2020 6368 616e 6765 645f 7768 656e 3a20    changed_when: 
│ │ │ -001e6ed0: 6661 6c73 650a 2020 6368 6563 6b5f 6d6f  false.  check_mo
│ │ │ -001e6ee0: 6465 3a20 6661 6c73 650a 2020 7768 656e  de: false.  when
│ │ │ -001e6ef0: 3a0a 2020 2d20 2820 6e6f 7420 2820 226b  :.  - ( not ( "k
│ │ │ -001e6f00: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ -001e6f10: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001e6f20: 2061 6e64 2022 626f 6f74 6322 2069 6e20   and "bootc" in 
│ │ │ -001e6f30: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001e6f40: 636b 6167 6573 0a20 2020 2061 6e64 206e  ckages.    and n
│ │ │ -001e6f50: 6f74 2022 6f70 656e 7368 6966 742d 6b75  ot "openshift-ku
│ │ │ -001e6f60: 6265 6c65 7422 2069 6e20 616e 7369 626c  belet" in ansibl
│ │ │ -001e6f70: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001e6f80: 2061 6e64 2022 6f73 7472 6565 2220 696e   and "ostree" in
│ │ │ -001e6f90: 2061 6e73 6962 6c65 5f70 726f 635f 636d   ansible_proc_cm
│ │ │ -001e6fa0: 646c 696e 650a 2020 2020 2920 616e 6420  dline.    ) and 
│ │ │ -001e6fb0: 6e6f 7420 2820 616e 7369 626c 655f 7669  not ( ansible_vi
│ │ │ -001e6fc0: 7274 7561 6c69 7a61 7469 6f6e 5f74 7970  rtualization_typ
│ │ │ -001e6fd0: 6520 696e 205b 2264 6f63 6b65 7222 2c20  e in ["docker", 
│ │ │ -001e6fe0: 226c 7863 222c 2022 6f70 656e 767a 222c  "lxc", "openvz",
│ │ │ -001e6ff0: 2022 706f 646d 616e 222c 0a20 2020 2022   "podman",.    "
│ │ │ -001e7000: 636f 6e74 6169 6e65 7222 5d20 2920 290a  container"] ) ).
│ │ │ -001e7010: 2020 2d20 2722 2f73 7276 2220 696e 2061    - '"/srv" in a
│ │ │ -001e7020: 6e73 6962 6c65 5f6d 6f75 6e74 7320 7c20  nsible_mounts | 
│ │ │ -001e7030: 6d61 7028 6174 7472 6962 7574 653d 226d  map(attribute="m
│ │ │ -001e7040: 6f75 6e74 2229 207c 206c 6973 7427 0a20  ount") | list'. 
│ │ │ -001e7050: 2074 6167 733a 0a20 202d 2063 6f6e 6669   tags:.  - confi
│ │ │ -001e7060: 6775 7265 5f73 7472 6174 6567 790a 2020  gure_strategy.  
│ │ │ -001e7070: 2d20 6869 6768 5f64 6973 7275 7074 696f  - high_disruptio
│ │ │ -001e7080: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65  n.  - low_comple
│ │ │ -001e7090: 7869 7479 0a20 202d 206d 6564 6975 6d5f  xity.  - medium_
│ │ │ -001e70a0: 7365 7665 7269 7479 0a20 202d 206d 6f75  severity.  - mou
│ │ │ -001e70b0: 6e74 5f6f 7074 696f 6e5f 7372 765f 6e6f  nt_option_srv_no
│ │ │ -001e70c0: 7375 6964 0a20 202d 206e 6f5f 7265 626f  suid.  - no_rebo
│ │ │ -001e70d0: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d  ot_needed..- nam
│ │ │ -001e70e0: 653a 2027 4164 6420 6e6f 7375 6964 204f  e: 'Add nosuid O
│ │ │ -001e70f0: 7074 696f 6e20 746f 202f 7372 763a 2043  ption to /srv: C
│ │ │ -001e7100: 7265 6174 6520 6d6f 756e 745f 696e 666f  reate mount_info
│ │ │ -001e7110: 2064 6963 7469 6f6e 6172 7920 7661 7269   dictionary vari
│ │ │ -001e7120: 6162 6c65 270a 2020 7365 745f 6661 6374  able'.  set_fact
│ │ │ -001e7130: 3a0a 2020 2020 6d6f 756e 745f 696e 666f  :.    mount_info
│ │ │ -001e7140: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ -001e7150: 7c64 6566 6175 6c74 287b 7d29 7c63 6f6d  |default({})|com
│ │ │ -001e7160: 6269 6e65 287b 6974 656d 2e30 3a20 6974  bine({item.0: it
│ │ │ -001e7170: 656d 2e31 7d29 207d 7d27 0a20 2077 6974  em.1}) }}'.  wit
│ │ │ -001e7180: 685f 746f 6765 7468 6572 3a0a 2020 2d20  h_together:.  - 
│ │ │ -001e7190: 277b 7b20 6465 7669 6365 5f6e 616d 652e  '{{ device_name.
│ │ │ -001e71a0: 7374 646f 7574 5f6c 696e 6573 5b30 5d2e  stdout_lines[0].
│ │ │ -001e71b0: 7370 6c69 7428 2920 7c20 6d61 7028 2727  split() | map(''
│ │ │ -001e71c0: 6c6f 7765 7227 2729 207c 206c 6973 7420  lower'') | list 
│ │ │ -001e71d0: 7d7d 270a 2020 2d20 277b 7b20 6465 7669  }}'.  - '{{ devi
│ │ │ -001e71e0: 6365 5f6e 616d 652e 7374 646f 7574 5f6c  ce_name.stdout_l
│ │ │ -001e71f0: 696e 6573 5b31 5d2e 7370 6c69 7428 2920  ines[1].split() 
│ │ │ -001e7200: 7c20 6c69 7374 207d 7d27 0a20 2077 6865  | list }}'.  whe
│ │ │ -001e7210: 6e3a 0a20 202d 2028 206e 6f74 2028 2022  n:.  - ( not ( "
│ │ │ -001e7220: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ -001e7230: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -001e7240: 7320 616e 6420 2262 6f6f 7463 2220 696e  s and "bootc" in
│ │ │ -001e7250: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -001e7260: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ -001e7270: 6e6f 7420 226f 7065 6e73 6869 6674 2d6b  not "openshift-k
│ │ │ -001e7280: 7562 656c 6574 2220 696e 2061 6e73 6962  ubelet" in ansib
│ │ │ -001e7290: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -001e72a0: 7320 616e 6420 226f 7374 7265 6522 2069  s and "ostree" i
│ │ │ -001e72b0: 6e20 616e 7369 626c 655f 7072 6f63 5f63  n ansible_proc_c
│ │ │ -001e72c0: 6d64 6c69 6e65 0a20 2020 2029 2061 6e64  mdline.    ) and
│ │ │ -001e72d0: 206e 6f74 2028 2061 6e73 6962 6c65 5f76   not ( ansible_v
│ │ │ -001e72e0: 6972 7475 616c 697a 6174 696f 6e5f 7479  irtualization_ty
│ │ │ -001e72f0: 7065 2069 6e20 5b22 646f 636b 6572 222c  pe in ["docker",
│ │ │ -001e7300: 2022 6c78 6322 2c20 226f 7065 6e76 7a22   "lxc", "openvz"
│ │ │ -001e7310: 2c20 2270 6f64 6d61 6e22 2c0a 2020 2020  , "podman",.    
│ │ │ -001e7320: 2263 6f6e 7461 696e 6572 225d 2029 2029  "container"] ) )
│ │ │ -001e7330: 0a20 202d 2027 222f 7372 7622 2069 6e20  .  - '"/srv" in 
│ │ │ -001e7340: 616e 7369 626c 655f 6d6f 756e 7473 207c  ansible_mounts |
│ │ │ -001e7350: 206d 6170 2861 7474 7269 6275 7465 3d22   map(attribute="
│ │ │ -001e7360: 6d6f 756e 7422 2920 7c20 6c69 7374 270a  mount") | list'.
│ │ │ -001e7370: 2020 2d20 6465 7669 6365 5f6e 616d 652e    - device_name.
│ │ │ -001e7380: 7374 646f 7574 2069 7320 6465 6669 6e65  stdout is define
│ │ │ -001e7390: 6420 616e 6420 6465 7669 6365 5f6e 616d  d and device_nam
│ │ │ -001e73a0: 652e 7374 646f 7574 5f6c 696e 6573 2069  e.stdout_lines i
│ │ │ -001e73b0: 7320 6465 6669 6e65 640a 2020 2d20 2864  s defined.  - (d
│ │ │ -001e73c0: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ -001e73d0: 7420 7c20 6c65 6e67 7468 2026 6774 3b20  t | length > 
│ │ │ -001e73e0: 3029 0a20 2074 6167 733a 0a20 202d 2063  0).  tags:.  - c
│ │ │ -001e73f0: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ -001e7400: 790a 2020 2d20 6869 6768 5f64 6973 7275  y.  - high_disru
│ │ │ -001e7410: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f  ption.  - low_co
│ │ │ -001e7420: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ -001e7430: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ -001e7440: 206d 6f75 6e74 5f6f 7074 696f 6e5f 7372   mount_option_sr
│ │ │ -001e7450: 765f 6e6f 7375 6964 0a20 202d 206e 6f5f  v_nosuid.  - no_
│ │ │ -001e7460: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ -001e7470: 206e 616d 653a 2027 4164 6420 6e6f 7375   name: 'Add nosu
│ │ │ -001e7480: 6964 204f 7074 696f 6e20 746f 202f 7372  id Option to /sr
│ │ │ -001e7490: 763a 2049 6620 2f73 7276 206e 6f74 206d  v: If /srv not m
│ │ │ -001e74a0: 6f75 6e74 6564 2c20 6372 6166 7420 6d6f  ounted, craft mo
│ │ │ -001e74b0: 756e 745f 696e 666f 206d 616e 7561 6c6c  unt_info manuall
│ │ │ -001e74c0: 7927 0a20 2073 6574 5f66 6163 743a 0a20  y'.  set_fact:. 
│ │ │ -001e74d0: 2020 206d 6f75 6e74 5f69 6e66 6f3a 2027     mount_info: '
│ │ │ -001e74e0: 7b7b 206d 6f75 6e74 5f69 6e66 6f7c 6465  {{ mount_info|de
│ │ │ -001e74f0: 6661 756c 7428 7b7d 297c 636f 6d62 696e  fault({})|combin
│ │ │ -001e7500: 6528 7b69 7465 6d2e 303a 2069 7465 6d2e  e({item.0: item.
│ │ │ -001e7510: 317d 2920 7d7d 270a 2020 7769 7468 5f74  1}) }}'.  with_t
│ │ │ -001e7520: 6f67 6574 6865 723a 0a20 202d 202d 2074  ogether:.  - - t
│ │ │ -001e7530: 6172 6765 740a 2020 2020 2d20 736f 7572  arget.    - sour
│ │ │ -001e7540: 6365 0a20 2020 202d 2066 7374 7970 650a  ce.    - fstype.
│ │ │ -001e7550: 2020 2020 2d20 6f70 7469 6f6e 730a 2020      - options.  
│ │ │ -001e7560: 2d20 2d20 2f73 7276 0a20 2020 202d 2027  - - /srv.    - '
│ │ │ -001e7570: 270a 2020 2020 2d20 2727 0a20 2020 202d  '.    - ''.    -
│ │ │ -001e7580: 2064 6566 6175 6c74 730a 2020 7768 656e   defaults.  when
│ │ │ -001e7590: 3a0a 2020 2d20 2820 6e6f 7420 2820 226b  :.  - ( not ( "k
│ │ │ -001e75a0: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ -001e75b0: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001e75c0: 2061 6e64 2022 626f 6f74 6322 2069 6e20   and "bootc" in 
│ │ │ -001e75d0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001e75e0: 636b 6167 6573 0a20 2020 2061 6e64 206e  ckages.    and n
│ │ │ -001e75f0: 6f74 2022 6f70 656e 7368 6966 742d 6b75  ot "openshift-ku
│ │ │ -001e7600: 6265 6c65 7422 2069 6e20 616e 7369 626c  belet" in ansibl
│ │ │ -001e7610: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001e7620: 2061 6e64 2022 6f73 7472 6565 2220 696e   and "ostree" in
│ │ │ -001e7630: 2061 6e73 6962 6c65 5f70 726f 635f 636d   ansible_proc_cm
│ │ │ -001e7640: 646c 696e 650a 2020 2020 2920 616e 6420  dline.    ) and 
│ │ │ -001e7650: 6e6f 7420 2820 616e 7369 626c 655f 7669  not ( ansible_vi
│ │ │ -001e7660: 7274 7561 6c69 7a61 7469 6f6e 5f74 7970  rtualization_typ
│ │ │ -001e7670: 6520 696e 205b 2264 6f63 6b65 7222 2c20  e in ["docker", 
│ │ │ -001e7680: 226c 7863 222c 2022 6f70 656e 767a 222c  "lxc", "openvz",
│ │ │ -001e7690: 2022 706f 646d 616e 222c 0a20 2020 2022   "podman",.    "
│ │ │ -001e76a0: 636f 6e74 6169 6e65 7222 5d20 2920 290a  container"] ) ).
│ │ │ -001e76b0: 2020 2d20 2722 2f73 7276 2220 696e 2061    - '"/srv" in a
│ │ │ -001e76c0: 6e73 6962 6c65 5f6d 6f75 6e74 7320 7c20  nsible_mounts | 
│ │ │ -001e76d0: 6d61 7028 6174 7472 6962 7574 653d 226d  map(attribute="m
│ │ │ -001e76e0: 6f75 6e74 2229 207c 206c 6973 7427 0a20  ount") | list'. 
│ │ │ -001e76f0: 202d 2028 222d 2d66 7374 6162 2220 7c20   - ("--fstab" | 
│ │ │ -001e7700: 6c65 6e67 7468 203d 3d20 3029 0a20 202d  length == 0).  -
│ │ │ -001e7710: 2064 6576 6963 655f 6e61 6d65 2e73 7464   device_name.std
│ │ │ -001e7720: 6f75 7420 6973 2064 6566 696e 6564 2061  out is defined a
│ │ │ -001e7730: 6e64 2064 6576 6963 655f 6e61 6d65 2e73  nd device_name.s
│ │ │ -001e7740: 7464 6f75 745f 6c69 6e65 7320 6973 2064  tdout_lines is d
│ │ │ -001e7750: 6566 696e 6564 0a20 202d 2028 6465 7669  efined.  - (devi
│ │ │ -001e7760: 6365 5f6e 616d 652e 7374 646f 7574 207c  ce_name.stdout |
│ │ │ -001e7770: 206c 656e 6774 6820 3d3d 2030 290a 2020   length == 0).  
│ │ │ -001e7780: 7461 6773 3a0a 2020 2d20 636f 6e66 6967  tags:.  - config
│ │ │ -001e7790: 7572 655f 7374 7261 7465 6779 0a20 202d  ure_strategy.  -
│ │ │ -001e77a0: 2068 6967 685f 6469 7372 7570 7469 6f6e   high_disruption
│ │ │ -001e77b0: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ -001e77c0: 6974 790a 2020 2d20 6d65 6469 756d 5f73  ity.  - medium_s
│ │ │ -001e77d0: 6576 6572 6974 790a 2020 2d20 6d6f 756e  everity.  - moun
│ │ │ -001e77e0: 745f 6f70 7469 6f6e 5f73 7276 5f6e 6f73  t_option_srv_nos
│ │ │ -001e77f0: 7569 640a 2020 2d20 6e6f 5f72 6562 6f6f  uid.  - no_reboo
│ │ │ -001e7800: 745f 6e65 6564 6564 0a0a 2d20 6e61 6d65  t_needed..- name
│ │ │ -001e7810: 3a20 2741 6464 206e 6f73 7569 6420 4f70  : 'Add nosuid Op
│ │ │ -001e7820: 7469 6f6e 2074 6f20 2f73 7276 3a20 4d61  tion to /srv: Ma
│ │ │ -001e7830: 6b65 2073 7572 6520 6e6f 7375 6964 206f  ke sure nosuid o
│ │ │ -001e7840: 7074 696f 6e20 6973 2070 6172 7420 6f66  ption is part of
│ │ │ -001e7850: 2074 6865 2074 6f20 2f73 7276 0a20 2020   the to /srv.   
│ │ │ -001e7860: 206f 7074 696f 6e73 270a 2020 7365 745f   options'.  set_
│ │ │ -001e7870: 6661 6374 3a0a 2020 2020 6d6f 756e 745f  fact:.    mount_
│ │ │ -001e7880: 696e 666f 3a20 277b 7b20 6d6f 756e 745f  info: '{{ mount_
│ │ │ -001e7890: 696e 666f 207c 2063 6f6d 6269 6e65 2820  info | combine( 
│ │ │ -001e78a0: 7b27 276f 7074 696f 6e73 2727 3a27 2727  {''options'':'''
│ │ │ -001e78b0: 277e 286d 6f75 6e74 5f69 6e66 6f2e 6f70  '~(mount_info.op
│ │ │ -001e78c0: 7469 6f6e 7320 7c0a 2020 2020 2020 6465  tions |.      de
│ │ │ -001e78d0: 6661 756c 7428 2727 2727 2929 7e28 2727  fault(''''))~(''
│ │ │ -001e78e0: 2c27 2720 6966 2028 6d6f 756e 745f 696e  ,'' if (mount_in
│ │ │ -001e78f0: 666f 2e6f 7074 696f 6e73 207c 2064 6566  fo.options | def
│ │ │ -001e7900: 6175 6c74 2827 2727 2729 2920 656c 7365  ault('''')) else
│ │ │ -001e7910: 2027 2727 2729 7e27 276e 6f73 7569 6427   '''')~''nosuid'
│ │ │ -001e7920: 270a 2020 2020 2020 7d29 207d 7d27 0a20  '.      }) }}'. 
│ │ │ -001e7930: 2077 6865 6e3a 0a20 202d 2028 206e 6f74   when:.  - ( not
│ │ │ -001e7940: 2028 2022 6b65 726e 656c 2220 696e 2061   ( "kernel" in a
│ │ │ -001e7950: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001e7960: 6b61 6765 7320 616e 6420 2262 6f6f 7463  kages and "bootc
│ │ │ -001e7970: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001e7980: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ -001e7990: 616e 6420 6e6f 7420 226f 7065 6e73 6869  and not "openshi
│ │ │ -001e79a0: 6674 2d6b 7562 656c 6574 2220 696e 2061  ft-kubelet" in a
│ │ │ -001e79b0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001e79c0: 6b61 6765 7320 616e 6420 226f 7374 7265  kages and "ostre
│ │ │ -001e79d0: 6522 2069 6e20 616e 7369 626c 655f 7072  e" in ansible_pr
│ │ │ -001e79e0: 6f63 5f63 6d64 6c69 6e65 0a20 2020 2029  oc_cmdline.    )
│ │ │ -001e79f0: 2061 6e64 206e 6f74 2028 2061 6e73 6962   and not ( ansib
│ │ │ -001e7a00: 6c65 5f76 6972 7475 616c 697a 6174 696f  le_virtualizatio
│ │ │ -001e7a10: 6e5f 7479 7065 2069 6e20 5b22 646f 636b  n_type in ["dock
│ │ │ -001e7a20: 6572 222c 2022 6c78 6322 2c20 226f 7065  er", "lxc", "ope
│ │ │ -001e7a30: 6e76 7a22 2c20 2270 6f64 6d61 6e22 2c0a  nvz", "podman",.
│ │ │ -001e7a40: 2020 2020 2263 6f6e 7461 696e 6572 225d      "container"]
│ │ │ -001e7a50: 2029 2029 0a20 202d 2027 222f 7372 7622   ) ).  - '"/srv"
│ │ │ -001e7a60: 2069 6e20 616e 7369 626c 655f 6d6f 756e   in ansible_moun
│ │ │ -001e7a70: 7473 207c 206d 6170 2861 7474 7269 6275  ts | map(attribu
│ │ │ -001e7a80: 7465 3d22 6d6f 756e 7422 2920 7c20 6c69  te="mount") | li
│ │ │ -001e7a90: 7374 270a 2020 2d20 6d6f 756e 745f 696e  st'.  - mount_in
│ │ │ -001e7aa0: 666f 2069 7320 6465 6669 6e65 6420 616e  fo is defined an
│ │ │ -001e7ab0: 6420 226e 6f73 7569 6422 206e 6f74 2069  d "nosuid" not i
│ │ │ -001e7ac0: 6e20 286d 6f75 6e74 5f69 6e66 6f2e 6f70  n (mount_info.op
│ │ │ -001e7ad0: 7469 6f6e 7320 7c20 6465 6661 756c 7428  tions | default(
│ │ │ -001e7ae0: 2727 2929 0a20 2074 6167 733a 0a20 202d  '')).  tags:.  -
│ │ │ -001e7af0: 2063 6f6e 6669 6775 7265 5f73 7472 6174   configure_strat
│ │ │ -001e7b00: 6567 790a 2020 2d20 6869 6768 5f64 6973  egy.  - high_dis
│ │ │ -001e7b10: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f  ruption.  - low_
│ │ │ -001e7b20: 636f 6d70 6c65 7869 7479 0a20 202d 206d  complexity.  - m
│ │ │ -001e7b30: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ -001e7b40: 202d 206d 6f75 6e74 5f6f 7074 696f 6e5f   - mount_option_
│ │ │ -001e7b50: 7372 765f 6e6f 7375 6964 0a20 202d 206e  srv_nosuid.  - n
│ │ │ -001e7b60: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ -001e7b70: 0a2d 206e 616d 653a 2027 4164 6420 6e6f  .- name: 'Add no
│ │ │ -001e7b80: 7375 6964 204f 7074 696f 6e20 746f 202f  suid Option to /
│ │ │ -001e7b90: 7372 763a 2045 6e73 7572 6520 2f73 7276  srv: Ensure /srv
│ │ │ -001e7ba0: 2069 7320 6d6f 756e 7465 6420 7769 7468   is mounted with
│ │ │ -001e7bb0: 206e 6f73 7569 6420 6f70 7469 6f6e 270a   nosuid option'.
│ │ │ -001e7bc0: 2020 616e 7369 626c 652e 706f 7369 782e    ansible.posix.
│ │ │ -001e7bd0: 6d6f 756e 743a 0a20 2020 2070 6174 683a  mount:.    path:
│ │ │ -001e7be0: 202f 7372 760a 2020 2020 7372 633a 2027   /srv.    src: '
│ │ │ -001e7bf0: 7b7b 206d 6f75 6e74 5f69 6e66 6f2e 736f  {{ mount_info.so
│ │ │ -001e7c00: 7572 6365 207c 2064 6566 6175 6c74 2827  urce | default('
│ │ │ -001e7c10: 2727 2729 207d 7d27 0a20 2020 206f 7074  ''') }}'.    opt
│ │ │ -001e7c20: 733a 2027 7b7b 206d 6f75 6e74 5f69 6e66  s: '{{ mount_inf
│ │ │ -001e7c30: 6f2e 6f70 7469 6f6e 7320 7c20 6465 6661  o.options | defa
│ │ │ -001e7c40: 756c 7428 2727 2727 2920 7d7d 270a 2020  ult('''') }}'.  
│ │ │ -001e7c50: 2020 7374 6174 653a 206d 6f75 6e74 6564    state: mounted
│ │ │ -001e7c60: 0a20 2020 2066 7374 7970 653a 2027 7b7b  .    fstype: '{{
│ │ │ -001e7c70: 206d 6f75 6e74 5f69 6e66 6f2e 6673 7479   mount_info.fsty
│ │ │ -001e7c80: 7065 207c 2064 6566 6175 6c74 2827 2727  pe | default('''
│ │ │ -001e7c90: 2729 207d 7d27 0a20 2072 6567 6973 7465  ') }}'.  registe
│ │ │ -001e7ca0: 723a 206d 6f75 6e74 5f72 6573 756c 740a  r: mount_result.
│ │ │ -001e7cb0: 2020 6661 696c 6564 5f77 6865 6e3a 0a20    failed_when:. 
│ │ │ -001e7cc0: 202d 206d 6f75 6e74 5f72 6573 756c 7420   - mount_result 
│ │ │ -001e7cd0: 6973 2066 6169 6c65 640a 2020 2d20 2727  is failed.  - ''
│ │ │ -001e7ce0: 2774 6172 6765 7420 6973 2062 7573 7927  'target is busy'
│ │ │ -001e7cf0: 2720 6e6f 7420 696e 2028 6d6f 756e 745f  ' not in (mount_
│ │ │ -001e7d00: 7265 7375 6c74 2e6d 7367 207c 2064 6566  result.msg | def
│ │ │ -001e7d10: 6175 6c74 2827 2727 2729 2927 0a20 202d  ault(''''))'.  -
│ │ │ -001e7d20: 2027 2727 616c 7265 6164 7920 6d6f 756e   '''already moun
│ │ │ -001e7d30: 7465 6427 2720 6e6f 7420 696e 2028 6d6f  ted'' not in (mo
│ │ │ -001e7d40: 756e 745f 7265 7375 6c74 2e6d 7367 207c  unt_result.msg |
│ │ │ -001e7d50: 2064 6566 6175 6c74 2827 2727 2729 2927   default(''''))'
│ │ │ -001e7d60: 0a20 2077 6865 6e3a 0a20 202d 2028 206e  .  when:.  - ( n
│ │ │ -001e7d70: 6f74 2028 2022 6b65 726e 656c 2220 696e  ot ( "kernel" in
│ │ │ -001e7d80: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -001e7d90: 6163 6b61 6765 7320 616e 6420 2262 6f6f  ackages and "boo
│ │ │ -001e7da0: 7463 2220 696e 2061 6e73 6962 6c65 5f66  tc" in ansible_f
│ │ │ -001e7db0: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ -001e7dc0: 2020 616e 6420 6e6f 7420 226f 7065 6e73    and not "opens
│ │ │ -001e7dd0: 6869 6674 2d6b 7562 656c 6574 2220 696e  hift-kubelet" in
│ │ │ -001e7de0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -001e7df0: 6163 6b61 6765 7320 616e 6420 226f 7374  ackages and "ost
│ │ │ -001e7e00: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ -001e7e10: 7072 6f63 5f63 6d64 6c69 6e65 0a20 2020  proc_cmdline.   
│ │ │ -001e7e20: 2029 2061 6e64 206e 6f74 2028 2061 6e73   ) and not ( ans
│ │ │ -001e7e30: 6962 6c65 5f76 6972 7475 616c 697a 6174  ible_virtualizat
│ │ │ -001e7e40: 696f 6e5f 7479 7065 2069 6e20 5b22 646f  ion_type in ["do
│ │ │ -001e7e50: 636b 6572 222c 2022 6c78 6322 2c20 226f  cker", "lxc", "o
│ │ │ -001e7e60: 7065 6e76 7a22 2c20 2270 6f64 6d61 6e22  penvz", "podman"
│ │ │ -001e7e70: 2c0a 2020 2020 2263 6f6e 7461 696e 6572  ,.    "container
│ │ │ -001e7e80: 225d 2029 2029 0a20 202d 2027 222f 7372  "] ) ).  - '"/sr
│ │ │ -001e7e90: 7622 2069 6e20 616e 7369 626c 655f 6d6f  v" in ansible_mo
│ │ │ -001e7ea0: 756e 7473 207c 206d 6170 2861 7474 7269  unts | map(attri
│ │ │ -001e7eb0: 6275 7465 3d22 6d6f 756e 7422 2920 7c20  bute="mount") | 
│ │ │ -001e7ec0: 6c69 7374 270a 2020 2d20 6d6f 756e 745f  list'.  - mount_
│ │ │ -001e7ed0: 696e 666f 2069 7320 6465 6669 6e65 640a  info is defined.
│ │ │ -001e7ee0: 2020 2d20 2864 6576 6963 655f 6e61 6d65    - (device_name
│ │ │ -001e7ef0: 2e73 7464 6f75 7420 6973 2064 6566 696e  .stdout is defin
│ │ │ -001e7f00: 6564 2061 6e64 2028 6465 7669 6365 5f6e  ed and (device_n
│ │ │ -001e7f10: 616d 652e 7374 646f 7574 207c 206c 656e  ame.stdout | len
│ │ │ -001e7f20: 6774 6820 2667 743b 2030 2929 206f 7220  gth > 0)) or 
│ │ │ -001e7f30: 2822 2d2d 6673 7461 6222 0a20 2020 207c  ("--fstab".    |
│ │ │ -001e7f40: 206c 656e 6774 6820 3d3d 2030 290a 2020   length == 0).  
│ │ │ -001e7f50: 7461 6773 3a0a 2020 2d20 636f 6e66 6967  tags:.  - config
│ │ │ -001e7f60: 7572 655f 7374 7261 7465 6779 0a20 202d  ure_strategy.  -
│ │ │ -001e7f70: 2068 6967 685f 6469 7372 7570 7469 6f6e   high_disruption
│ │ │ -001e7f80: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ -001e7f90: 6974 790a 2020 2d20 6d65 6469 756d 5f73  ity.  - medium_s
│ │ │ -001e7fa0: 6576 6572 6974 790a 2020 2d20 6d6f 756e  everity.  - moun
│ │ │ -001e7fb0: 745f 6f70 7469 6f6e 5f73 7276 5f6e 6f73  t_option_srv_nos
│ │ │ -001e7fc0: 7569 640a 2020 2d20 6e6f 5f72 6562 6f6f  uid.  - no_reboo
│ │ │ -001e7fd0: 745f 6e65 6564 6564 0a3c 2f63 6f64 653e  t_needed.
│ │ │ -001e7fe0: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ -001e8090: 7469 6f6e 2053 6865 6c6c 2073 6372 6970 tion Shell scrip │ │ │ -001e80a0: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ -001e8120: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>
C │ │ │ -001e6c80: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -001e6cb0: 6f6e 3a3c 2f74 683e 3c74 643e 6869 6768 on:high │ │ │ -001e6cc0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -001e6d00: 793a 3c2f 7468 3e3c 7464 3e63 6f6e 6669 y:confi │ │ │ -001e6d10: 6775 7265 3c2f 7464 3e3c 2f74 723e 3c2f gure
Reboot:false

# Remed │ │ │ -001e8160: 6961 7469 6f6e 2069 7320 6170 706c 6963 iation is applic │ │ │ -001e8170: 6162 6c65 206f 6e6c 7920 696e 2063 6572 able only in cer │ │ │ -001e8180: 7461 696e 2070 6c61 7466 6f72 6d73 0a69 tain platforms.i │ │ │ -001e8190: 6620 2820 2120 2820 7b20 7270 6d20 2d2d f ( ! ( { rpm -- │ │ │ -001e81a0: 7175 6965 7420 2d71 206b 6572 6e65 6c20 quiet -q kernel │ │ │ -001e81b0: 3b7d 2026 616d 703b 2661 6d70 3b20 7b20 ;} && { │ │ │ -001e81c0: 7270 6d20 2d2d 7175 6965 7420 2d71 2062 rpm --quiet -q b │ │ │ -001e81d0: 6f6f 7463 203b 7d20 2661 6d70 3b26 616d ootc ;} &&am │ │ │ -001e81e0: 703b 207b 2021 2072 706d 202d 2d71 7569 p; { ! rpm --qui │ │ │ -001e81f0: 6574 202d 7120 6f70 656e 7368 6966 742d et -q openshift- │ │ │ -001e8200: 6b75 6265 6c65 7420 3b7d 2026 616d 703b kubelet ;} & │ │ │ -001e8210: 2661 6d70 3b20 285b 202d 6620 2f72 756e & ([ -f /run │ │ │ -001e8220: 2f6f 7374 7265 652d 626f 6f74 6564 205d /ostree-booted ] │ │ │ -001e8230: 207c 7c20 5b20 2d4c 202f 6f73 7472 6565 || [ -L /ostree │ │ │ -001e8240: 205d 2920 2920 2661 6d70 3b26 616d 703b ]) ) && │ │ │ -001e8250: 2021 2028 205b 202d 6620 2f2e 646f 636b ! ( [ -f /.dock │ │ │ -001e8260: 6572 656e 7620 5d20 7c7c 205b 202d 6620 erenv ] || [ -f │ │ │ -001e8270: 2f72 756e 2f2e 636f 6e74 6169 6e65 7265 /run/.containere │ │ │ -001e8280: 6e76 205d 2029 2029 2026 616d 703b 2661 nv ] ) ) &&a │ │ │ -001e8290: 6d70 3b20 7b20 2820 6669 6e64 6d6e 7420 mp; { ( findmnt │ │ │ -001e82a0: 2d2d 6b65 726e 656c 2022 2f73 7276 2220 --kernel "/srv" │ │ │ -001e82b0: 2667 743b 202f 6465 762f 6e75 6c6c 207c > /dev/null | │ │ │ -001e82c0: 7c20 6669 6e64 6d6e 7420 2d2d 6673 7461 | findmnt --fsta │ │ │ -001e82d0: 6220 222f 7372 7622 2026 6774 3b20 2f64 b "/srv" > /d │ │ │ -001e82e0: 6576 2f6e 756c 6c20 293b 207d 3b20 7468 ev/null ); }; th │ │ │ -001e82f0: 656e 0a0a 6675 6e63 7469 6f6e 2070 6572 en..function per │ │ │ -001e8300: 666f 726d 5f72 656d 6564 6961 7469 6f6e form_remediation │ │ │ -001e8310: 207b 0a0a 2020 2020 0a20 2020 2020 2020 {.. . │ │ │ -001e8320: 2023 2074 6865 206d 6f75 6e74 2070 6f69 # the mount poi │ │ │ -001e8330: 6e74 202f 7372 7620 6861 7320 746f 2062 nt /srv has to b │ │ │ -001e8340: 6520 6465 6669 6e65 6420 696e 202f 6574 e defined in /et │ │ │ -001e8350: 632f 6673 7461 620a 2020 2020 2020 2020 c/fstab. │ │ │ -001e8360: 2320 6265 666f 7265 2074 6869 7320 7265 # before this re │ │ │ -001e8370: 6d65 6469 6174 696f 6e20 6361 6e20 6265 mediation can be │ │ │ -001e8380: 2065 7865 6375 7465 642e 2049 6e20 6361 executed. In ca │ │ │ -001e8390: 7365 2069 7420 6973 206e 6f74 2064 6566 se it is not def │ │ │ -001e83a0: 696e 6564 2c20 7468 650a 2020 2020 2020 ined, the. │ │ │ -001e83b0: 2020 2320 7265 6d65 6469 6174 696f 6e20 # remediation │ │ │ -001e83c0: 6162 6f72 7473 2061 6e64 206e 6f20 6368 aborts and no ch │ │ │ -001e83d0: 616e 6765 7320 7265 6761 7264 696e 6720 anges regarding │ │ │ -001e83e0: 7468 6520 6d6f 756e 7420 706f 696e 7420 the mount point │ │ │ -001e83f0: 6172 6520 646f 6e65 2e0a 2020 2020 2020 are done.. │ │ │ -001e8400: 2020 6d6f 756e 745f 706f 696e 745f 6d61 mount_point_ma │ │ │ -001e8410: 7463 685f 7265 6765 7870 3d22 2428 7072 tch_regexp="$(pr │ │ │ -001e8420: 696e 7466 2022 5e5b 5b3a 7370 6163 653a intf "^[[:space: │ │ │ -001e8430: 5d5d 2a5b 5e23 5d2e 2a5b 5b3a 7370 6163 ]]*[^#].*[[:spac │ │ │ -001e8440: 653a 5d5d 2573 5b5b 3a73 7061 6365 3a5d e:]]%s[[:space:] │ │ │ -001e8450: 5d22 2022 2f73 7276 2229 220a 0a20 2020 ]" "/srv")".. │ │ │ -001e8460: 2067 7265 7020 2224 6d6f 756e 745f 706f grep "$mount_po │ │ │ -001e8470: 696e 745f 6d61 7463 685f 7265 6765 7870 int_match_regexp │ │ │ -001e8480: 2220 2d71 202f 6574 632f 6673 7461 6220 " -q /etc/fstab │ │ │ -001e8490: 5c0a 2020 2020 2020 2020 7c7c 207b 2065 \. || { e │ │ │ -001e84a0: 6368 6f20 2254 6865 206d 6f75 6e74 2070 cho "The mount p │ │ │ -001e84b0: 6f69 6e74 2027 2f73 7276 2720 6973 206e oint '/srv' is n │ │ │ -001e84c0: 6f74 2065 7665 6e20 696e 202f 6574 632f ot even in /etc/ │ │ │ -001e84d0: 6673 7461 622c 2073 6f20 7765 2063 616e fstab, so we can │ │ │ -001e84e0: 2774 2073 6574 2075 7020 6d6f 756e 7420 't set up mount │ │ │ -001e84f0: 6f70 7469 6f6e 7322 2026 6774 3b26 616d options" >&am │ │ │ -001e8500: 703b 323b 0a20 2020 2020 2020 2020 2020 p;2;. │ │ │ -001e8510: 2020 2020 2065 6368 6f20 224e 6f74 2072 echo "Not r │ │ │ -001e8520: 656d 6564 6961 7469 6e67 2c20 6265 6361 emediating, beca │ │ │ -001e8530: 7573 6520 7468 6572 6520 6973 206e 6f20 use there is no │ │ │ -001e8540: 7265 636f 7264 206f 6620 2f73 7276 2069 record of /srv i │ │ │ -001e8550: 6e20 2f65 7463 2f66 7374 6162 2220 2667 n /etc/fstab" &g │ │ │ -001e8560: 743b 2661 6d70 3b32 3b20 7265 7475 726e t;&2; return │ │ │ -001e8570: 2031 3b20 7d0a 2020 2020 0a0a 0a20 2020 1; }. ... │ │ │ -001e8580: 206d 6f75 6e74 5f70 6f69 6e74 5f6d 6174 mount_point_mat │ │ │ -001e8590: 6368 5f72 6567 6578 703d 2224 2870 7269 ch_regexp="$(pri │ │ │ -001e85a0: 6e74 6620 225e 5b5b 3a73 7061 6365 3a5d ntf "^[[:space:] │ │ │ -001e85b0: 5d2a 5b5e 235d 2e2a 5b5b 3a73 7061 6365 ]*[^#].*[[:space │ │ │ -001e85c0: 3a5d 5d25 735b 5b3a 7370 6163 653a 5d5d :]]%s[[:space:]] │ │ │ -001e85d0: 2220 2f73 7276 2922 0a0a 2020 2020 2320 " /srv)".. # │ │ │ -001e85e0: 4966 2074 6865 206d 6f75 6e74 2070 6f69 If the mount poi │ │ │ -001e85f0: 6e74 2069 7320 6e6f 7420 696e 202f 6574 nt is not in /et │ │ │ -001e8600: 632f 6673 7461 622c 2067 6574 2070 7265 c/fstab, get pre │ │ │ -001e8610: 7669 6f75 7320 6d6f 756e 7420 6f70 7469 vious mount opti │ │ │ -001e8620: 6f6e 7320 6672 6f6d 202f 6574 632f 6d74 ons from /etc/mt │ │ │ -001e8630: 6162 0a20 2020 2069 6620 2120 6772 6570 ab. if ! grep │ │ │ -001e8640: 202d 7120 2224 6d6f 756e 745f 706f 696e -q "$mount_poin │ │ │ -001e8650: 745f 6d61 7463 685f 7265 6765 7870 2220 t_match_regexp" │ │ │ -001e8660: 2f65 7463 2f66 7374 6162 3b20 7468 656e /etc/fstab; then │ │ │ -001e8670: 0a20 2020 2020 2020 2023 2072 756e 7469 . # runti │ │ │ -001e8680: 6d65 206f 7074 7320 7769 7468 6f75 7420 me opts without │ │ │ -001e8690: 736f 6d65 2061 7574 6f6d 6174 6963 206b some automatic k │ │ │ -001e86a0: 6572 6e65 6c2f 7573 6572 7370 6163 652d ernel/userspace- │ │ │ -001e86b0: 6164 6465 6420 6465 6661 756c 7473 0a20 added defaults. │ │ │ -001e86c0: 2020 2020 2020 2070 7265 7669 6f75 735f previous_ │ │ │ -001e86d0: 6d6f 756e 745f 6f70 7473 3d24 2867 7265 mount_opts=$(gre │ │ │ -001e86e0: 7020 2224 6d6f 756e 745f 706f 696e 745f p "$mount_point_ │ │ │ -001e86f0: 6d61 7463 685f 7265 6765 7870 2220 2f65 match_regexp" /e │ │ │ -001e8700: 7463 2f6d 7461 6220 7c20 6865 6164 202d tc/mtab | head - │ │ │ -001e8710: 3120 7c20 2061 776b 2027 7b70 7269 6e74 1 | awk '{print │ │ │ -001e8720: 2024 347d 2720 5c0a 2020 2020 2020 2020 $4}' \. │ │ │ -001e8730: 2020 2020 2020 2020 2020 2020 7c20 7365 | se │ │ │ -001e8740: 6420 2d45 2022 732f 2872 777c 6465 6661 d -E "s/(rw|defa │ │ │ -001e8750: 756c 7473 7c73 6563 6c61 6265 6c7c 6e6f ults|seclabel|no │ │ │ -001e8760: 7375 6964 2928 2c7c 2429 2f2f 673b 732f suid)(,|$)//g;s/ │ │ │ -001e8770: 2c24 2f2f 2229 0a20 2020 2020 2020 205b ,$//"). [ │ │ │ -001e8780: 2022 2470 7265 7669 6f75 735f 6d6f 756e "$previous_moun │ │ │ -001e8790: 745f 6f70 7473 2220 5d20 2661 6d70 3b26 t_opts" ] && │ │ │ -001e87a0: 616d 703b 2070 7265 7669 6f75 735f 6d6f amp; previous_mo │ │ │ -001e87b0: 756e 745f 6f70 7473 2b3d 222c 220a 2020 unt_opts+=",". │ │ │ -001e87c0: 2020 2020 2020 2320 496e 2069 736f 3936 # In iso96 │ │ │ -001e87d0: 3630 2066 696c 6573 7973 7465 6d73 206d 60 filesystems m │ │ │ -001e87e0: 7461 6220 636f 756c 6420 6465 7363 7269 tab could descri │ │ │ -001e87f0: 6265 2061 2022 626c 6f63 6b73 697a 6522 be a "blocksize" │ │ │ -001e8800: 2076 616c 7565 2c20 7468 6973 2073 686f value, this sho │ │ │ -001e8810: 756c 6420 6265 2072 6566 6c65 6374 6564 uld be reflected │ │ │ -001e8820: 2069 6e0a 2020 2020 2020 2020 2320 6673 in. # fs │ │ │ -001e8830: 7461 6220 6173 2022 626c 6f63 6b22 2e20 tab as "block". │ │ │ -001e8840: 2054 6865 206e 6578 7420 7661 7269 6162 The next variab │ │ │ -001e8850: 6c65 2069 7320 746f 2073 6174 6973 6679 le is to satisfy │ │ │ -001e8860: 2073 6865 6c6c 6368 6563 6b20 5343 3230 shellcheck SC20 │ │ │ -001e8870: 3530 2e0a 2020 2020 2020 2020 6673 5f74 50.. fs_t │ │ │ -001e8880: 7970 653d 2222 0a20 2020 2020 2020 2069 ype="". i │ │ │ -001e8890: 6620 5b20 2022 2466 735f 7479 7065 2220 f [ "$fs_type" │ │ │ -001e88a0: 3d3d 2022 6973 6f39 3636 3022 205d 203b == "iso9660" ] ; │ │ │ -001e88b0: 2074 6865 6e0a 2020 2020 2020 2020 2020 then. │ │ │ -001e88c0: 2020 7072 6576 696f 7573 5f6d 6f75 6e74 previous_mount │ │ │ -001e88d0: 5f6f 7074 733d 2428 7365 6420 2773 2f62 _opts=$(sed 's/b │ │ │ -001e88e0: 6c6f 636b 7369 7a65 3d2f 626c 6f63 6b3d locksize=/block= │ │ │ -001e88f0: 2f27 2026 6c74 3b26 6c74 3b26 6c74 3b20 /' <<< │ │ │ -001e8900: 2224 7072 6576 696f 7573 5f6d 6f75 6e74 "$previous_mount │ │ │ -001e8910: 5f6f 7074 7322 290a 2020 2020 2020 2020 _opts"). │ │ │ -001e8920: 6669 0a20 2020 2020 2020 2065 6368 6f20 fi. echo │ │ │ -001e8930: 2220 2f73 7276 2020 6465 6661 756c 7473 " /srv defaults │ │ │ -001e8940: 2c24 7b70 7265 7669 6f75 735f 6d6f 756e ,${previous_moun │ │ │ -001e8950: 745f 6f70 7473 7d6e 6f73 7569 6420 3020 t_opts}nosuid 0 │ │ │ -001e8960: 3022 2026 6774 3b26 6774 3b20 2f65 7463 0" >> /etc │ │ │ -001e8970: 2f66 7374 6162 0a20 2020 2023 2049 6620 /fstab. # If │ │ │ -001e8980: 7468 6520 6d6f 756e 745f 6f70 7420 6f70 the mount_opt op │ │ │ -001e8990: 7469 6f6e 2069 7320 6e6f 7420 616c 7265 tion is not alre │ │ │ -001e89a0: 6164 7920 696e 2074 6865 206d 6f75 6e74 ady in the mount │ │ │ -001e89b0: 2070 6f69 6e74 2773 202f 6574 632f 6673 point's /etc/fs │ │ │ -001e89c0: 7461 6220 656e 7472 792c 2061 6464 2069 tab entry, add i │ │ │ -001e89d0: 740a 2020 2020 656c 6966 2021 2067 7265 t. elif ! gre │ │ │ -001e89e0: 7020 2224 6d6f 756e 745f 706f 696e 745f p "$mount_point_ │ │ │ -001e89f0: 6d61 7463 685f 7265 6765 7870 2220 2f65 match_regexp" /e │ │ │ -001e8a00: 7463 2f66 7374 6162 207c 2067 7265 7020 tc/fstab | grep │ │ │ -001e8a10: 2d71 2022 6e6f 7375 6964 223b 2074 6865 -q "nosuid"; the │ │ │ -001e8a20: 6e0a 2020 2020 2020 2020 7072 6576 696f n. previo │ │ │ -001e8a30: 7573 5f6d 6f75 6e74 5f6f 7074 733d 2428 us_mount_opts=$( │ │ │ -001e8a40: 6772 6570 2022 246d 6f75 6e74 5f70 6f69 grep "$mount_poi │ │ │ -001e8a50: 6e74 5f6d 6174 6368 5f72 6567 6578 7022 nt_match_regexp" │ │ │ -001e8a60: 202f 6574 632f 6673 7461 6220 7c20 6177 /etc/fstab | aw │ │ │ -001e8a70: 6b20 277b 7072 696e 7420 2434 7d27 290a k '{print $4}'). │ │ │ -001e8a80: 2020 2020 2020 2020 7365 6420 2d69 2022 sed -i " │ │ │ -001e8a90: 737c 5c28 247b 6d6f 756e 745f 706f 696e s|\(${mount_poin │ │ │ -001e8aa0: 745f 6d61 7463 685f 7265 6765 7870 7d2e t_match_regexp}. │ │ │ -001e8ab0: 2a24 7b70 7265 7669 6f75 735f 6d6f 756e *${previous_moun │ │ │ -001e8ac0: 745f 6f70 7473 7d5c 297c 5c31 2c6e 6f73 t_opts}\)|\1,nos │ │ │ -001e8ad0: 7569 647c 2220 2f65 7463 2f66 7374 6162 uid|" /etc/fstab │ │ │ -001e8ae0: 0a20 2020 2066 690a 0a0a 2020 2020 6966 . fi... if │ │ │ -001e8af0: 206d 6b64 6972 202d 7020 222f 7372 7622 mkdir -p "/srv" │ │ │ -001e8b00: 3b20 7468 656e 0a20 2020 2020 2020 2069 ; then. i │ │ │ -001e8b10: 6620 6d6f 756e 7470 6f69 6e74 202d 7120 f mountpoint -q │ │ │ -001e8b20: 222f 7372 7622 3b20 7468 656e 0a20 2020 "/srv"; then. │ │ │ -001e8b30: 2020 2020 2020 2020 206d 6f75 6e74 202d mount - │ │ │ -001e8b40: 6f20 7265 6d6f 756e 7420 2d2d 7461 7267 o remount --targ │ │ │ -001e8b50: 6574 2022 2f73 7276 220a 2020 2020 2020 et "/srv". │ │ │ -001e8b60: 2020 6669 0a20 2020 2066 690a 7d0a 0a70 fi. fi.}..p │ │ │ -001e8b70: 6572 666f 726d 5f72 656d 6564 6961 7469 erform_remediati │ │ │ -001e8b80: 6f6e 0a0a 656c 7365 0a20 2020 2026 6774 on..else. > │ │ │ -001e8b90: 3b26 616d 703b 3220 6563 686f 2027 5265 ;&2 echo 'Re │ │ │ -001e8ba0: 6d65 6469 6174 696f 6e20 6973 206e 6f74 mediation is not │ │ │ -001e8bb0: 2061 7070 6c69 6361 626c 652c 206e 6f74 applicable, not │ │ │ -001e8bc0: 6869 6e67 2077 6173 2064 6f6e 6527 0a66 hing was done'.f │ │ │ -001e8bd0: 690a 3c2f 636f 6465 3e3c 2f70 7265 3e3c i.< │ │ │ +001e69c0: 6174 696f 6e20 416e 7369 626c 6520 736e ation Ansible sn │ │ │ +001e69d0: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...

│ │ │ +001e6a80: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c
- n
│ │ │ +001e6b10: 616d 653a 2047 6174 6865 7220 7468 6520  ame: Gather the 
│ │ │ +001e6b20: 7061 636b 6167 6520 6661 6374 730a 2020  package facts.  
│ │ │ +001e6b30: 7061 636b 6167 655f 6661 6374 733a 0a20  package_facts:. 
│ │ │ +001e6b40: 2020 206d 616e 6167 6572 3a20 6175 746f     manager: auto
│ │ │ +001e6b50: 0a20 2074 6167 733a 0a20 202d 2063 6f6e  .  tags:.  - con
│ │ │ +001e6b60: 6669 6775 7265 5f73 7472 6174 6567 790a  figure_strategy.
│ │ │ +001e6b70: 2020 2d20 6869 6768 5f64 6973 7275 7074    - high_disrupt
│ │ │ +001e6b80: 696f 6e0a 2020 2d20 6c6f 775f 636f 6d70  ion.  - low_comp
│ │ │ +001e6b90: 6c65 7869 7479 0a20 202d 206d 6564 6975  lexity.  - mediu
│ │ │ +001e6ba0: 6d5f 7365 7665 7269 7479 0a20 202d 206d  m_severity.  - m
│ │ │ +001e6bb0: 6f75 6e74 5f6f 7074 696f 6e5f 7372 765f  ount_option_srv_
│ │ │ +001e6bc0: 6e6f 7375 6964 0a20 202d 206e 6f5f 7265  nosuid.  - no_re
│ │ │ +001e6bd0: 626f 6f74 5f6e 6565 6465 640a 0a2d 206e  boot_needed..- n
│ │ │ +001e6be0: 616d 653a 2027 4164 6420 6e6f 7375 6964  ame: 'Add nosuid
│ │ │ +001e6bf0: 204f 7074 696f 6e20 746f 202f 7372 763a   Option to /srv:
│ │ │ +001e6c00: 2043 6865 636b 2069 6e66 6f72 6d61 7469   Check informati
│ │ │ +001e6c10: 6f6e 2061 7373 6f63 6961 7465 6420 746f  on associated to
│ │ │ +001e6c20: 206d 6f75 6e74 706f 696e 7427 0a20 2061   mountpoint'.  a
│ │ │ +001e6c30: 6e73 6962 6c65 2e62 7569 6c74 696e 2e63  nsible.builtin.c
│ │ │ +001e6c40: 6f6d 6d61 6e64 3a20 6669 6e64 6d6e 7420  ommand: findmnt 
│ │ │ +001e6c50: 2d2d 6673 7461 6220 272f 7372 7627 0a20  --fstab '/srv'. 
│ │ │ +001e6c60: 2072 6567 6973 7465 723a 2064 6576 6963   register: devic
│ │ │ +001e6c70: 655f 6e61 6d65 0a20 2066 6169 6c65 645f  e_name.  failed_
│ │ │ +001e6c80: 7768 656e 3a20 6465 7669 6365 5f6e 616d  when: device_nam
│ │ │ +001e6c90: 652e 7263 2026 6774 3b20 310a 2020 6368  e.rc > 1.  ch
│ │ │ +001e6ca0: 616e 6765 645f 7768 656e 3a20 6661 6c73  anged_when: fals
│ │ │ +001e6cb0: 650a 2020 6368 6563 6b5f 6d6f 6465 3a20  e.  check_mode: 
│ │ │ +001e6cc0: 6661 6c73 650a 2020 7768 656e 3a0a 2020  false.  when:.  
│ │ │ +001e6cd0: 2d20 2820 6e6f 7420 2820 226b 6572 6e65  - ( not ( "kerne
│ │ │ +001e6ce0: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ +001e6cf0: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ +001e6d00: 2022 626f 6f74 6322 2069 6e20 616e 7369   "bootc" in ansi
│ │ │ +001e6d10: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001e6d20: 6573 0a20 2020 2061 6e64 206e 6f74 2022  es.    and not "
│ │ │ +001e6d30: 6f70 656e 7368 6966 742d 6b75 6265 6c65  openshift-kubele
│ │ │ +001e6d40: 7422 2069 6e20 616e 7369 626c 655f 6661  t" in ansible_fa
│ │ │ +001e6d50: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ +001e6d60: 2022 6f73 7472 6565 2220 696e 2061 6e73   "ostree" in ans
│ │ │ +001e6d70: 6962 6c65 5f70 726f 635f 636d 646c 696e  ible_proc_cmdlin
│ │ │ +001e6d80: 650a 2020 2020 2920 616e 6420 6e6f 7420  e.    ) and not 
│ │ │ +001e6d90: 2820 616e 7369 626c 655f 7669 7274 7561  ( ansible_virtua
│ │ │ +001e6da0: 6c69 7a61 7469 6f6e 5f74 7970 6520 696e  lization_type in
│ │ │ +001e6db0: 205b 2264 6f63 6b65 7222 2c20 226c 7863   ["docker", "lxc
│ │ │ +001e6dc0: 222c 2022 6f70 656e 767a 222c 2022 706f  ", "openvz", "po
│ │ │ +001e6dd0: 646d 616e 222c 0a20 2020 2022 636f 6e74  dman",.    "cont
│ │ │ +001e6de0: 6169 6e65 7222 5d20 2920 290a 2020 2d20  ainer"] ) ).  - 
│ │ │ +001e6df0: 2722 2f73 7276 2220 696e 2061 6e73 6962  '"/srv" in ansib
│ │ │ +001e6e00: 6c65 5f6d 6f75 6e74 7320 7c20 6d61 7028  le_mounts | map(
│ │ │ +001e6e10: 6174 7472 6962 7574 653d 226d 6f75 6e74  attribute="mount
│ │ │ +001e6e20: 2229 207c 206c 6973 7427 0a20 2074 6167  ") | list'.  tag
│ │ │ +001e6e30: 733a 0a20 202d 2063 6f6e 6669 6775 7265  s:.  - configure
│ │ │ +001e6e40: 5f73 7472 6174 6567 790a 2020 2d20 6869  _strategy.  - hi
│ │ │ +001e6e50: 6768 5f64 6973 7275 7074 696f 6e0a 2020  gh_disruption.  
│ │ │ +001e6e60: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ +001e6e70: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ +001e6e80: 7269 7479 0a20 202d 206d 6f75 6e74 5f6f  rity.  - mount_o
│ │ │ +001e6e90: 7074 696f 6e5f 7372 765f 6e6f 7375 6964  ption_srv_nosuid
│ │ │ +001e6ea0: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ +001e6eb0: 6565 6465 640a 0a2d 206e 616d 653a 2027  eeded..- name: '
│ │ │ +001e6ec0: 4164 6420 6e6f 7375 6964 204f 7074 696f  Add nosuid Optio
│ │ │ +001e6ed0: 6e20 746f 202f 7372 763a 2043 7265 6174  n to /srv: Creat
│ │ │ +001e6ee0: 6520 6d6f 756e 745f 696e 666f 2064 6963  e mount_info dic
│ │ │ +001e6ef0: 7469 6f6e 6172 7920 7661 7269 6162 6c65  tionary variable
│ │ │ +001e6f00: 270a 2020 7365 745f 6661 6374 3a0a 2020  '.  set_fact:.  
│ │ │ +001e6f10: 2020 6d6f 756e 745f 696e 666f 3a20 277b    mount_info: '{
│ │ │ +001e6f20: 7b20 6d6f 756e 745f 696e 666f 7c64 6566  { mount_info|def
│ │ │ +001e6f30: 6175 6c74 287b 7d29 7c63 6f6d 6269 6e65  ault({})|combine
│ │ │ +001e6f40: 287b 6974 656d 2e30 3a20 6974 656d 2e31  ({item.0: item.1
│ │ │ +001e6f50: 7d29 207d 7d27 0a20 2077 6974 685f 746f  }) }}'.  with_to
│ │ │ +001e6f60: 6765 7468 6572 3a0a 2020 2d20 277b 7b20  gether:.  - '{{ 
│ │ │ +001e6f70: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ +001e6f80: 7574 5f6c 696e 6573 5b30 5d2e 7370 6c69  ut_lines[0].spli
│ │ │ +001e6f90: 7428 2920 7c20 6d61 7028 2727 6c6f 7765  t() | map(''lowe
│ │ │ +001e6fa0: 7227 2729 207c 206c 6973 7420 7d7d 270a  r'') | list }}'.
│ │ │ +001e6fb0: 2020 2d20 277b 7b20 6465 7669 6365 5f6e    - '{{ device_n
│ │ │ +001e6fc0: 616d 652e 7374 646f 7574 5f6c 696e 6573  ame.stdout_lines
│ │ │ +001e6fd0: 5b31 5d2e 7370 6c69 7428 2920 7c20 6c69  [1].split() | li
│ │ │ +001e6fe0: 7374 207d 7d27 0a20 2077 6865 6e3a 0a20  st }}'.  when:. 
│ │ │ +001e6ff0: 202d 2028 206e 6f74 2028 2022 6b65 726e   - ( not ( "kern
│ │ │ +001e7000: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ +001e7010: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +001e7020: 6420 2262 6f6f 7463 2220 696e 2061 6e73  d "bootc" in ans
│ │ │ +001e7030: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001e7040: 6765 730a 2020 2020 616e 6420 6e6f 7420  ges.    and not 
│ │ │ +001e7050: 226f 7065 6e73 6869 6674 2d6b 7562 656c  "openshift-kubel
│ │ │ +001e7060: 6574 2220 696e 2061 6e73 6962 6c65 5f66  et" in ansible_f
│ │ │ +001e7070: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +001e7080: 6420 226f 7374 7265 6522 2069 6e20 616e  d "ostree" in an
│ │ │ +001e7090: 7369 626c 655f 7072 6f63 5f63 6d64 6c69  sible_proc_cmdli
│ │ │ +001e70a0: 6e65 0a20 2020 2029 2061 6e64 206e 6f74  ne.    ) and not
│ │ │ +001e70b0: 2028 2061 6e73 6962 6c65 5f76 6972 7475   ( ansible_virtu
│ │ │ +001e70c0: 616c 697a 6174 696f 6e5f 7479 7065 2069  alization_type i
│ │ │ +001e70d0: 6e20 5b22 646f 636b 6572 222c 2022 6c78  n ["docker", "lx
│ │ │ +001e70e0: 6322 2c20 226f 7065 6e76 7a22 2c20 2270  c", "openvz", "p
│ │ │ +001e70f0: 6f64 6d61 6e22 2c0a 2020 2020 2263 6f6e  odman",.    "con
│ │ │ +001e7100: 7461 696e 6572 225d 2029 2029 0a20 202d  tainer"] ) ).  -
│ │ │ +001e7110: 2027 222f 7372 7622 2069 6e20 616e 7369   '"/srv" in ansi
│ │ │ +001e7120: 626c 655f 6d6f 756e 7473 207c 206d 6170  ble_mounts | map
│ │ │ +001e7130: 2861 7474 7269 6275 7465 3d22 6d6f 756e  (attribute="moun
│ │ │ +001e7140: 7422 2920 7c20 6c69 7374 270a 2020 2d20  t") | list'.  - 
│ │ │ +001e7150: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ +001e7160: 7574 2069 7320 6465 6669 6e65 6420 616e  ut is defined an
│ │ │ +001e7170: 6420 6465 7669 6365 5f6e 616d 652e 7374  d device_name.st
│ │ │ +001e7180: 646f 7574 5f6c 696e 6573 2069 7320 6465  dout_lines is de
│ │ │ +001e7190: 6669 6e65 640a 2020 2d20 2864 6576 6963  fined.  - (devic
│ │ │ +001e71a0: 655f 6e61 6d65 2e73 7464 6f75 7420 7c20  e_name.stdout | 
│ │ │ +001e71b0: 6c65 6e67 7468 2026 6774 3b20 3029 0a20  length > 0). 
│ │ │ +001e71c0: 2074 6167 733a 0a20 202d 2063 6f6e 6669   tags:.  - confi
│ │ │ +001e71d0: 6775 7265 5f73 7472 6174 6567 790a 2020  gure_strategy.  
│ │ │ +001e71e0: 2d20 6869 6768 5f64 6973 7275 7074 696f  - high_disruptio
│ │ │ +001e71f0: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65  n.  - low_comple
│ │ │ +001e7200: 7869 7479 0a20 202d 206d 6564 6975 6d5f  xity.  - medium_
│ │ │ +001e7210: 7365 7665 7269 7479 0a20 202d 206d 6f75  severity.  - mou
│ │ │ +001e7220: 6e74 5f6f 7074 696f 6e5f 7372 765f 6e6f  nt_option_srv_no
│ │ │ +001e7230: 7375 6964 0a20 202d 206e 6f5f 7265 626f  suid.  - no_rebo
│ │ │ +001e7240: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d  ot_needed..- nam
│ │ │ +001e7250: 653a 2027 4164 6420 6e6f 7375 6964 204f  e: 'Add nosuid O
│ │ │ +001e7260: 7074 696f 6e20 746f 202f 7372 763a 2049  ption to /srv: I
│ │ │ +001e7270: 6620 2f73 7276 206e 6f74 206d 6f75 6e74  f /srv not mount
│ │ │ +001e7280: 6564 2c20 6372 6166 7420 6d6f 756e 745f  ed, craft mount_
│ │ │ +001e7290: 696e 666f 206d 616e 7561 6c6c 7927 0a20  info manually'. 
│ │ │ +001e72a0: 2073 6574 5f66 6163 743a 0a20 2020 206d   set_fact:.    m
│ │ │ +001e72b0: 6f75 6e74 5f69 6e66 6f3a 2027 7b7b 206d  ount_info: '{{ m
│ │ │ +001e72c0: 6f75 6e74 5f69 6e66 6f7c 6465 6661 756c  ount_info|defaul
│ │ │ +001e72d0: 7428 7b7d 297c 636f 6d62 696e 6528 7b69  t({})|combine({i
│ │ │ +001e72e0: 7465 6d2e 303a 2069 7465 6d2e 317d 2920  tem.0: item.1}) 
│ │ │ +001e72f0: 7d7d 270a 2020 7769 7468 5f74 6f67 6574  }}'.  with_toget
│ │ │ +001e7300: 6865 723a 0a20 202d 202d 2074 6172 6765  her:.  - - targe
│ │ │ +001e7310: 740a 2020 2020 2d20 736f 7572 6365 0a20  t.    - source. 
│ │ │ +001e7320: 2020 202d 2066 7374 7970 650a 2020 2020     - fstype.    
│ │ │ +001e7330: 2d20 6f70 7469 6f6e 730a 2020 2d20 2d20  - options.  - - 
│ │ │ +001e7340: 2f73 7276 0a20 2020 202d 2027 270a 2020  /srv.    - ''.  
│ │ │ +001e7350: 2020 2d20 2727 0a20 2020 202d 2064 6566    - ''.    - def
│ │ │ +001e7360: 6175 6c74 730a 2020 7768 656e 3a0a 2020  aults.  when:.  
│ │ │ +001e7370: 2d20 2820 6e6f 7420 2820 226b 6572 6e65  - ( not ( "kerne
│ │ │ +001e7380: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ +001e7390: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ +001e73a0: 2022 626f 6f74 6322 2069 6e20 616e 7369   "bootc" in ansi
│ │ │ +001e73b0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001e73c0: 6573 0a20 2020 2061 6e64 206e 6f74 2022  es.    and not "
│ │ │ +001e73d0: 6f70 656e 7368 6966 742d 6b75 6265 6c65  openshift-kubele
│ │ │ +001e73e0: 7422 2069 6e20 616e 7369 626c 655f 6661  t" in ansible_fa
│ │ │ +001e73f0: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ +001e7400: 2022 6f73 7472 6565 2220 696e 2061 6e73   "ostree" in ans
│ │ │ +001e7410: 6962 6c65 5f70 726f 635f 636d 646c 696e  ible_proc_cmdlin
│ │ │ +001e7420: 650a 2020 2020 2920 616e 6420 6e6f 7420  e.    ) and not 
│ │ │ +001e7430: 2820 616e 7369 626c 655f 7669 7274 7561  ( ansible_virtua
│ │ │ +001e7440: 6c69 7a61 7469 6f6e 5f74 7970 6520 696e  lization_type in
│ │ │ +001e7450: 205b 2264 6f63 6b65 7222 2c20 226c 7863   ["docker", "lxc
│ │ │ +001e7460: 222c 2022 6f70 656e 767a 222c 2022 706f  ", "openvz", "po
│ │ │ +001e7470: 646d 616e 222c 0a20 2020 2022 636f 6e74  dman",.    "cont
│ │ │ +001e7480: 6169 6e65 7222 5d20 2920 290a 2020 2d20  ainer"] ) ).  - 
│ │ │ +001e7490: 2722 2f73 7276 2220 696e 2061 6e73 6962  '"/srv" in ansib
│ │ │ +001e74a0: 6c65 5f6d 6f75 6e74 7320 7c20 6d61 7028  le_mounts | map(
│ │ │ +001e74b0: 6174 7472 6962 7574 653d 226d 6f75 6e74  attribute="mount
│ │ │ +001e74c0: 2229 207c 206c 6973 7427 0a20 202d 2028  ") | list'.  - (
│ │ │ +001e74d0: 222d 2d66 7374 6162 2220 7c20 6c65 6e67  "--fstab" | leng
│ │ │ +001e74e0: 7468 203d 3d20 3029 0a20 202d 2064 6576  th == 0).  - dev
│ │ │ +001e74f0: 6963 655f 6e61 6d65 2e73 7464 6f75 7420  ice_name.stdout 
│ │ │ +001e7500: 6973 2064 6566 696e 6564 2061 6e64 2064  is defined and d
│ │ │ +001e7510: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ +001e7520: 745f 6c69 6e65 7320 6973 2064 6566 696e  t_lines is defin
│ │ │ +001e7530: 6564 0a20 202d 2028 6465 7669 6365 5f6e  ed.  - (device_n
│ │ │ +001e7540: 616d 652e 7374 646f 7574 207c 206c 656e  ame.stdout | len
│ │ │ +001e7550: 6774 6820 3d3d 2030 290a 2020 7461 6773  gth == 0).  tags
│ │ │ +001e7560: 3a0a 2020 2d20 636f 6e66 6967 7572 655f  :.  - configure_
│ │ │ +001e7570: 7374 7261 7465 6779 0a20 202d 2068 6967  strategy.  - hig
│ │ │ +001e7580: 685f 6469 7372 7570 7469 6f6e 0a20 202d  h_disruption.  -
│ │ │ +001e7590: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ +001e75a0: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ +001e75b0: 6974 790a 2020 2d20 6d6f 756e 745f 6f70  ity.  - mount_op
│ │ │ +001e75c0: 7469 6f6e 5f73 7276 5f6e 6f73 7569 640a  tion_srv_nosuid.
│ │ │ +001e75d0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ +001e75e0: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741  eded..- name: 'A
│ │ │ +001e75f0: 6464 206e 6f73 7569 6420 4f70 7469 6f6e  dd nosuid Option
│ │ │ +001e7600: 2074 6f20 2f73 7276 3a20 4d61 6b65 2073   to /srv: Make s
│ │ │ +001e7610: 7572 6520 6e6f 7375 6964 206f 7074 696f  ure nosuid optio
│ │ │ +001e7620: 6e20 6973 2070 6172 7420 6f66 2074 6865  n is part of the
│ │ │ +001e7630: 2074 6f20 2f73 7276 0a20 2020 206f 7074   to /srv.    opt
│ │ │ +001e7640: 696f 6e73 270a 2020 7365 745f 6661 6374  ions'.  set_fact
│ │ │ +001e7650: 3a0a 2020 2020 6d6f 756e 745f 696e 666f  :.    mount_info
│ │ │ +001e7660: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ +001e7670: 207c 2063 6f6d 6269 6e65 2820 7b27 276f   | combine( {''o
│ │ │ +001e7680: 7074 696f 6e73 2727 3a27 2727 277e 286d  ptions'':''''~(m
│ │ │ +001e7690: 6f75 6e74 5f69 6e66 6f2e 6f70 7469 6f6e  ount_info.option
│ │ │ +001e76a0: 7320 7c0a 2020 2020 2020 6465 6661 756c  s |.      defaul
│ │ │ +001e76b0: 7428 2727 2727 2929 7e28 2727 2c27 2720  t(''''))~('','' 
│ │ │ +001e76c0: 6966 2028 6d6f 756e 745f 696e 666f 2e6f  if (mount_info.o
│ │ │ +001e76d0: 7074 696f 6e73 207c 2064 6566 6175 6c74  ptions | default
│ │ │ +001e76e0: 2827 2727 2729 2920 656c 7365 2027 2727  ('''')) else '''
│ │ │ +001e76f0: 2729 7e27 276e 6f73 7569 6427 270a 2020  ')~''nosuid''.  
│ │ │ +001e7700: 2020 2020 7d29 207d 7d27 0a20 2077 6865      }) }}'.  whe
│ │ │ +001e7710: 6e3a 0a20 202d 2028 206e 6f74 2028 2022  n:.  - ( not ( "
│ │ │ +001e7720: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ +001e7730: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001e7740: 7320 616e 6420 2262 6f6f 7463 2220 696e  s and "bootc" in
│ │ │ +001e7750: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001e7760: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ +001e7770: 6e6f 7420 226f 7065 6e73 6869 6674 2d6b  not "openshift-k
│ │ │ +001e7780: 7562 656c 6574 2220 696e 2061 6e73 6962  ubelet" in ansib
│ │ │ +001e7790: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001e77a0: 7320 616e 6420 226f 7374 7265 6522 2069  s and "ostree" i
│ │ │ +001e77b0: 6e20 616e 7369 626c 655f 7072 6f63 5f63  n ansible_proc_c
│ │ │ +001e77c0: 6d64 6c69 6e65 0a20 2020 2029 2061 6e64  mdline.    ) and
│ │ │ +001e77d0: 206e 6f74 2028 2061 6e73 6962 6c65 5f76   not ( ansible_v
│ │ │ +001e77e0: 6972 7475 616c 697a 6174 696f 6e5f 7479  irtualization_ty
│ │ │ +001e77f0: 7065 2069 6e20 5b22 646f 636b 6572 222c  pe in ["docker",
│ │ │ +001e7800: 2022 6c78 6322 2c20 226f 7065 6e76 7a22   "lxc", "openvz"
│ │ │ +001e7810: 2c20 2270 6f64 6d61 6e22 2c0a 2020 2020  , "podman",.    
│ │ │ +001e7820: 2263 6f6e 7461 696e 6572 225d 2029 2029  "container"] ) )
│ │ │ +001e7830: 0a20 202d 2027 222f 7372 7622 2069 6e20  .  - '"/srv" in 
│ │ │ +001e7840: 616e 7369 626c 655f 6d6f 756e 7473 207c  ansible_mounts |
│ │ │ +001e7850: 206d 6170 2861 7474 7269 6275 7465 3d22   map(attribute="
│ │ │ +001e7860: 6d6f 756e 7422 2920 7c20 6c69 7374 270a  mount") | list'.
│ │ │ +001e7870: 2020 2d20 6d6f 756e 745f 696e 666f 2069    - mount_info i
│ │ │ +001e7880: 7320 6465 6669 6e65 6420 616e 6420 226e  s defined and "n
│ │ │ +001e7890: 6f73 7569 6422 206e 6f74 2069 6e20 286d  osuid" not in (m
│ │ │ +001e78a0: 6f75 6e74 5f69 6e66 6f2e 6f70 7469 6f6e  ount_info.option
│ │ │ +001e78b0: 7320 7c20 6465 6661 756c 7428 2727 2929  s | default(''))
│ │ │ +001e78c0: 0a20 2074 6167 733a 0a20 202d 2063 6f6e  .  tags:.  - con
│ │ │ +001e78d0: 6669 6775 7265 5f73 7472 6174 6567 790a  figure_strategy.
│ │ │ +001e78e0: 2020 2d20 6869 6768 5f64 6973 7275 7074    - high_disrupt
│ │ │ +001e78f0: 696f 6e0a 2020 2d20 6c6f 775f 636f 6d70  ion.  - low_comp
│ │ │ +001e7900: 6c65 7869 7479 0a20 202d 206d 6564 6975  lexity.  - mediu
│ │ │ +001e7910: 6d5f 7365 7665 7269 7479 0a20 202d 206d  m_severity.  - m
│ │ │ +001e7920: 6f75 6e74 5f6f 7074 696f 6e5f 7372 765f  ount_option_srv_
│ │ │ +001e7930: 6e6f 7375 6964 0a20 202d 206e 6f5f 7265  nosuid.  - no_re
│ │ │ +001e7940: 626f 6f74 5f6e 6565 6465 640a 0a2d 206e  boot_needed..- n
│ │ │ +001e7950: 616d 653a 2027 4164 6420 6e6f 7375 6964  ame: 'Add nosuid
│ │ │ +001e7960: 204f 7074 696f 6e20 746f 202f 7372 763a   Option to /srv:
│ │ │ +001e7970: 2045 6e73 7572 6520 2f73 7276 2069 7320   Ensure /srv is 
│ │ │ +001e7980: 6d6f 756e 7465 6420 7769 7468 206e 6f73  mounted with nos
│ │ │ +001e7990: 7569 6420 6f70 7469 6f6e 270a 2020 616e  uid option'.  an
│ │ │ +001e79a0: 7369 626c 652e 706f 7369 782e 6d6f 756e  sible.posix.moun
│ │ │ +001e79b0: 743a 0a20 2020 2070 6174 683a 202f 7372  t:.    path: /sr
│ │ │ +001e79c0: 760a 2020 2020 7372 633a 2027 7b7b 206d  v.    src: '{{ m
│ │ │ +001e79d0: 6f75 6e74 5f69 6e66 6f2e 736f 7572 6365  ount_info.source
│ │ │ +001e79e0: 207c 2064 6566 6175 6c74 2827 2727 2729   | default('''')
│ │ │ +001e79f0: 207d 7d27 0a20 2020 206f 7074 733a 2027   }}'.    opts: '
│ │ │ +001e7a00: 7b7b 206d 6f75 6e74 5f69 6e66 6f2e 6f70  {{ mount_info.op
│ │ │ +001e7a10: 7469 6f6e 7320 7c20 6465 6661 756c 7428  tions | default(
│ │ │ +001e7a20: 2727 2727 2920 7d7d 270a 2020 2020 7374  '''') }}'.    st
│ │ │ +001e7a30: 6174 653a 206d 6f75 6e74 6564 0a20 2020  ate: mounted.   
│ │ │ +001e7a40: 2066 7374 7970 653a 2027 7b7b 206d 6f75   fstype: '{{ mou
│ │ │ +001e7a50: 6e74 5f69 6e66 6f2e 6673 7479 7065 207c  nt_info.fstype |
│ │ │ +001e7a60: 2064 6566 6175 6c74 2827 2727 2729 207d   default('''') }
│ │ │ +001e7a70: 7d27 0a20 2072 6567 6973 7465 723a 206d  }'.  register: m
│ │ │ +001e7a80: 6f75 6e74 5f72 6573 756c 740a 2020 6661  ount_result.  fa
│ │ │ +001e7a90: 696c 6564 5f77 6865 6e3a 0a20 202d 206d  iled_when:.  - m
│ │ │ +001e7aa0: 6f75 6e74 5f72 6573 756c 7420 6973 2066  ount_result is f
│ │ │ +001e7ab0: 6169 6c65 640a 2020 2d20 2727 2774 6172  ailed.  - '''tar
│ │ │ +001e7ac0: 6765 7420 6973 2062 7573 7927 2720 6e6f  get is busy'' no
│ │ │ +001e7ad0: 7420 696e 2028 6d6f 756e 745f 7265 7375  t in (mount_resu
│ │ │ +001e7ae0: 6c74 2e6d 7367 207c 2064 6566 6175 6c74  lt.msg | default
│ │ │ +001e7af0: 2827 2727 2729 2927 0a20 202d 2027 2727  (''''))'.  - '''
│ │ │ +001e7b00: 616c 7265 6164 7920 6d6f 756e 7465 6427  already mounted'
│ │ │ +001e7b10: 2720 6e6f 7420 696e 2028 6d6f 756e 745f  ' not in (mount_
│ │ │ +001e7b20: 7265 7375 6c74 2e6d 7367 207c 2064 6566  result.msg | def
│ │ │ +001e7b30: 6175 6c74 2827 2727 2729 2927 0a20 2077  ault(''''))'.  w
│ │ │ +001e7b40: 6865 6e3a 0a20 202d 2028 206e 6f74 2028  hen:.  - ( not (
│ │ │ +001e7b50: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ +001e7b60: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001e7b70: 6765 7320 616e 6420 2262 6f6f 7463 2220  ges and "bootc" 
│ │ │ +001e7b80: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001e7b90: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ +001e7ba0: 6420 6e6f 7420 226f 7065 6e73 6869 6674  d not "openshift
│ │ │ +001e7bb0: 2d6b 7562 656c 6574 2220 696e 2061 6e73  -kubelet" in ans
│ │ │ +001e7bc0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001e7bd0: 6765 7320 616e 6420 226f 7374 7265 6522  ges and "ostree"
│ │ │ +001e7be0: 2069 6e20 616e 7369 626c 655f 7072 6f63   in ansible_proc
│ │ │ +001e7bf0: 5f63 6d64 6c69 6e65 0a20 2020 2029 2061  _cmdline.    ) a
│ │ │ +001e7c00: 6e64 206e 6f74 2028 2061 6e73 6962 6c65  nd not ( ansible
│ │ │ +001e7c10: 5f76 6972 7475 616c 697a 6174 696f 6e5f  _virtualization_
│ │ │ +001e7c20: 7479 7065 2069 6e20 5b22 646f 636b 6572  type in ["docker
│ │ │ +001e7c30: 222c 2022 6c78 6322 2c20 226f 7065 6e76  ", "lxc", "openv
│ │ │ +001e7c40: 7a22 2c20 2270 6f64 6d61 6e22 2c0a 2020  z", "podman",.  
│ │ │ +001e7c50: 2020 2263 6f6e 7461 696e 6572 225d 2029    "container"] )
│ │ │ +001e7c60: 2029 0a20 202d 2027 222f 7372 7622 2069   ).  - '"/srv" i
│ │ │ +001e7c70: 6e20 616e 7369 626c 655f 6d6f 756e 7473  n ansible_mounts
│ │ │ +001e7c80: 207c 206d 6170 2861 7474 7269 6275 7465   | map(attribute
│ │ │ +001e7c90: 3d22 6d6f 756e 7422 2920 7c20 6c69 7374  ="mount") | list
│ │ │ +001e7ca0: 270a 2020 2d20 6d6f 756e 745f 696e 666f  '.  - mount_info
│ │ │ +001e7cb0: 2069 7320 6465 6669 6e65 640a 2020 2d20   is defined.  - 
│ │ │ +001e7cc0: 2864 6576 6963 655f 6e61 6d65 2e73 7464  (device_name.std
│ │ │ +001e7cd0: 6f75 7420 6973 2064 6566 696e 6564 2061  out is defined a
│ │ │ +001e7ce0: 6e64 2028 6465 7669 6365 5f6e 616d 652e  nd (device_name.
│ │ │ +001e7cf0: 7374 646f 7574 207c 206c 656e 6774 6820  stdout | length 
│ │ │ +001e7d00: 2667 743b 2030 2929 206f 7220 2822 2d2d  > 0)) or ("--
│ │ │ +001e7d10: 6673 7461 6222 0a20 2020 207c 206c 656e  fstab".    | len
│ │ │ +001e7d20: 6774 6820 3d3d 2030 290a 2020 7461 6773  gth == 0).  tags
│ │ │ +001e7d30: 3a0a 2020 2d20 636f 6e66 6967 7572 655f  :.  - configure_
│ │ │ +001e7d40: 7374 7261 7465 6779 0a20 202d 2068 6967  strategy.  - hig
│ │ │ +001e7d50: 685f 6469 7372 7570 7469 6f6e 0a20 202d  h_disruption.  -
│ │ │ +001e7d60: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ +001e7d70: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ +001e7d80: 6974 790a 2020 2d20 6d6f 756e 745f 6f70  ity.  - mount_op
│ │ │ +001e7d90: 7469 6f6e 5f73 7276 5f6e 6f73 7569 640a  tion_srv_nosuid.
│ │ │ +001e7da0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ +001e7db0: 6564 6564 0a3c 2f63 6f64 653e 3c2f 7072  eded.Remediation
│ │ │ +001e7e70: 2053 6865 6c6c 2073 6372 6970 7420 e287   Shell script ..
│ │ │ +001e7e80: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c  .
Compl │ │ │ +001e6a60: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ +001e6a70: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ +001e6a90: 2f74 683e 3c74 643e 6869 6768 3c2f 7464 /th>high
Re │ │ │ +001e6ab0: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +001e6ac0: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:configure │ │ │ +001e6af0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
< │ │ │ +001e7f00: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +001e7f10: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
<
│ │ │ +001e7f30: 636f 6465 3e23 2052 656d 6564 6961 7469  code># Remediati
│ │ │ +001e7f40: 6f6e 2069 7320 6170 706c 6963 6162 6c65  on is applicable
│ │ │ +001e7f50: 206f 6e6c 7920 696e 2063 6572 7461 696e   only in certain
│ │ │ +001e7f60: 2070 6c61 7466 6f72 6d73 0a69 6620 2820   platforms.if ( 
│ │ │ +001e7f70: 2120 2820 7b20 7270 6d20 2d2d 7175 6965  ! ( { rpm --quie
│ │ │ +001e7f80: 7420 2d71 206b 6572 6e65 6c20 3b7d 2026  t -q kernel ;} &
│ │ │ +001e7f90: 616d 703b 2661 6d70 3b20 7b20 7270 6d20  amp;& { rpm 
│ │ │ +001e7fa0: 2d2d 7175 6965 7420 2d71 2062 6f6f 7463  --quiet -q bootc
│ │ │ +001e7fb0: 203b 7d20 2661 6d70 3b26 616d 703b 207b   ;} && {
│ │ │ +001e7fc0: 2021 2072 706d 202d 2d71 7569 6574 202d   ! rpm --quiet -
│ │ │ +001e7fd0: 7120 6f70 656e 7368 6966 742d 6b75 6265  q openshift-kube
│ │ │ +001e7fe0: 6c65 7420 3b7d 2026 616d 703b 2661 6d70  let ;} &&
│ │ │ +001e7ff0: 3b20 285b 202d 6620 2f72 756e 2f6f 7374  ; ([ -f /run/ost
│ │ │ +001e8000: 7265 652d 626f 6f74 6564 205d 207c 7c20  ree-booted ] || 
│ │ │ +001e8010: 5b20 2d4c 202f 6f73 7472 6565 205d 2920  [ -L /ostree ]) 
│ │ │ +001e8020: 2920 2661 6d70 3b26 616d 703b 2021 2028  ) && ! (
│ │ │ +001e8030: 205b 202d 6620 2f2e 646f 636b 6572 656e   [ -f /.dockeren
│ │ │ +001e8040: 7620 5d20 7c7c 205b 202d 6620 2f72 756e  v ] || [ -f /run
│ │ │ +001e8050: 2f2e 636f 6e74 6169 6e65 7265 6e76 205d  /.containerenv ]
│ │ │ +001e8060: 2029 2029 2026 616d 703b 2661 6d70 3b20   ) ) && 
│ │ │ +001e8070: 7b20 2820 6669 6e64 6d6e 7420 2d2d 6b65  { ( findmnt --ke
│ │ │ +001e8080: 726e 656c 2022 2f73 7276 2220 2667 743b  rnel "/srv" >
│ │ │ +001e8090: 202f 6465 762f 6e75 6c6c 207c 7c20 6669   /dev/null || fi
│ │ │ +001e80a0: 6e64 6d6e 7420 2d2d 6673 7461 6220 222f  ndmnt --fstab "/
│ │ │ +001e80b0: 7372 7622 2026 6774 3b20 2f64 6576 2f6e  srv" > /dev/n
│ │ │ +001e80c0: 756c 6c20 293b 207d 3b20 7468 656e 0a0a  ull ); }; then..
│ │ │ +001e80d0: 6675 6e63 7469 6f6e 2070 6572 666f 726d  function perform
│ │ │ +001e80e0: 5f72 656d 6564 6961 7469 6f6e 207b 0a0a  _remediation {..
│ │ │ +001e80f0: 2020 2020 0a20 2020 2020 2020 2023 2074      .        # t
│ │ │ +001e8100: 6865 206d 6f75 6e74 2070 6f69 6e74 202f  he mount point /
│ │ │ +001e8110: 7372 7620 6861 7320 746f 2062 6520 6465  srv has to be de
│ │ │ +001e8120: 6669 6e65 6420 696e 202f 6574 632f 6673  fined in /etc/fs
│ │ │ +001e8130: 7461 620a 2020 2020 2020 2020 2320 6265  tab.        # be
│ │ │ +001e8140: 666f 7265 2074 6869 7320 7265 6d65 6469  fore this remedi
│ │ │ +001e8150: 6174 696f 6e20 6361 6e20 6265 2065 7865  ation can be exe
│ │ │ +001e8160: 6375 7465 642e 2049 6e20 6361 7365 2069  cuted. In case i
│ │ │ +001e8170: 7420 6973 206e 6f74 2064 6566 696e 6564  t is not defined
│ │ │ +001e8180: 2c20 7468 650a 2020 2020 2020 2020 2320  , the.        # 
│ │ │ +001e8190: 7265 6d65 6469 6174 696f 6e20 6162 6f72  remediation abor
│ │ │ +001e81a0: 7473 2061 6e64 206e 6f20 6368 616e 6765  ts and no change
│ │ │ +001e81b0: 7320 7265 6761 7264 696e 6720 7468 6520  s regarding the 
│ │ │ +001e81c0: 6d6f 756e 7420 706f 696e 7420 6172 6520  mount point are 
│ │ │ +001e81d0: 646f 6e65 2e0a 2020 2020 2020 2020 6d6f  done..        mo
│ │ │ +001e81e0: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ +001e81f0: 7265 6765 7870 3d22 2428 7072 696e 7466  regexp="$(printf
│ │ │ +001e8200: 2022 5e5b 5b3a 7370 6163 653a 5d5d 2a5b   "^[[:space:]]*[
│ │ │ +001e8210: 5e23 5d2e 2a5b 5b3a 7370 6163 653a 5d5d  ^#].*[[:space:]]
│ │ │ +001e8220: 2573 5b5b 3a73 7061 6365 3a5d 5d22 2022  %s[[:space:]]" "
│ │ │ +001e8230: 2f73 7276 2229 220a 0a20 2020 2067 7265  /srv")"..    gre
│ │ │ +001e8240: 7020 2224 6d6f 756e 745f 706f 696e 745f  p "$mount_point_
│ │ │ +001e8250: 6d61 7463 685f 7265 6765 7870 2220 2d71  match_regexp" -q
│ │ │ +001e8260: 202f 6574 632f 6673 7461 6220 5c0a 2020   /etc/fstab \.  
│ │ │ +001e8270: 2020 2020 2020 7c7c 207b 2065 6368 6f20        || { echo 
│ │ │ +001e8280: 2254 6865 206d 6f75 6e74 2070 6f69 6e74  "The mount point
│ │ │ +001e8290: 2027 2f73 7276 2720 6973 206e 6f74 2065   '/srv' is not e
│ │ │ +001e82a0: 7665 6e20 696e 202f 6574 632f 6673 7461  ven in /etc/fsta
│ │ │ +001e82b0: 622c 2073 6f20 7765 2063 616e 2774 2073  b, so we can't s
│ │ │ +001e82c0: 6574 2075 7020 6d6f 756e 7420 6f70 7469  et up mount opti
│ │ │ +001e82d0: 6f6e 7322 2026 6774 3b26 616d 703b 323b  ons" >&2;
│ │ │ +001e82e0: 0a20 2020 2020 2020 2020 2020 2020 2020  .               
│ │ │ +001e82f0: 2065 6368 6f20 224e 6f74 2072 656d 6564   echo "Not remed
│ │ │ +001e8300: 6961 7469 6e67 2c20 6265 6361 7573 6520  iating, because 
│ │ │ +001e8310: 7468 6572 6520 6973 206e 6f20 7265 636f  there is no reco
│ │ │ +001e8320: 7264 206f 6620 2f73 7276 2069 6e20 2f65  rd of /srv in /e
│ │ │ +001e8330: 7463 2f66 7374 6162 2220 2667 743b 2661  tc/fstab" >&a
│ │ │ +001e8340: 6d70 3b32 3b20 7265 7475 726e 2031 3b20  mp;2; return 1; 
│ │ │ +001e8350: 7d0a 2020 2020 0a0a 0a20 2020 206d 6f75  }.    ...    mou
│ │ │ +001e8360: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ +001e8370: 6567 6578 703d 2224 2870 7269 6e74 6620  egexp="$(printf 
│ │ │ +001e8380: 225e 5b5b 3a73 7061 6365 3a5d 5d2a 5b5e  "^[[:space:]]*[^
│ │ │ +001e8390: 235d 2e2a 5b5b 3a73 7061 6365 3a5d 5d25  #].*[[:space:]]%
│ │ │ +001e83a0: 735b 5b3a 7370 6163 653a 5d5d 2220 2f73  s[[:space:]]" /s
│ │ │ +001e83b0: 7276 2922 0a0a 2020 2020 2320 4966 2074  rv)"..    # If t
│ │ │ +001e83c0: 6865 206d 6f75 6e74 2070 6f69 6e74 2069  he mount point i
│ │ │ +001e83d0: 7320 6e6f 7420 696e 202f 6574 632f 6673  s not in /etc/fs
│ │ │ +001e83e0: 7461 622c 2067 6574 2070 7265 7669 6f75  tab, get previou
│ │ │ +001e83f0: 7320 6d6f 756e 7420 6f70 7469 6f6e 7320  s mount options 
│ │ │ +001e8400: 6672 6f6d 202f 6574 632f 6d74 6162 0a20  from /etc/mtab. 
│ │ │ +001e8410: 2020 2069 6620 2120 6772 6570 202d 7120     if ! grep -q 
│ │ │ +001e8420: 2224 6d6f 756e 745f 706f 696e 745f 6d61  "$mount_point_ma
│ │ │ +001e8430: 7463 685f 7265 6765 7870 2220 2f65 7463  tch_regexp" /etc
│ │ │ +001e8440: 2f66 7374 6162 3b20 7468 656e 0a20 2020  /fstab; then.   
│ │ │ +001e8450: 2020 2020 2023 2072 756e 7469 6d65 206f       # runtime o
│ │ │ +001e8460: 7074 7320 7769 7468 6f75 7420 736f 6d65  pts without some
│ │ │ +001e8470: 2061 7574 6f6d 6174 6963 206b 6572 6e65   automatic kerne
│ │ │ +001e8480: 6c2f 7573 6572 7370 6163 652d 6164 6465  l/userspace-adde
│ │ │ +001e8490: 6420 6465 6661 756c 7473 0a20 2020 2020  d defaults.     
│ │ │ +001e84a0: 2020 2070 7265 7669 6f75 735f 6d6f 756e     previous_moun
│ │ │ +001e84b0: 745f 6f70 7473 3d24 2867 7265 7020 2224  t_opts=$(grep "$
│ │ │ +001e84c0: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ +001e84d0: 685f 7265 6765 7870 2220 2f65 7463 2f6d  h_regexp" /etc/m
│ │ │ +001e84e0: 7461 6220 7c20 6865 6164 202d 3120 7c20  tab | head -1 | 
│ │ │ +001e84f0: 2061 776b 2027 7b70 7269 6e74 2024 347d   awk '{print $4}
│ │ │ +001e8500: 2720 5c0a 2020 2020 2020 2020 2020 2020  ' \.            
│ │ │ +001e8510: 2020 2020 2020 2020 7c20 7365 6420 2d45          | sed -E
│ │ │ +001e8520: 2022 732f 2872 777c 6465 6661 756c 7473   "s/(rw|defaults
│ │ │ +001e8530: 7c73 6563 6c61 6265 6c7c 6e6f 7375 6964  |seclabel|nosuid
│ │ │ +001e8540: 2928 2c7c 2429 2f2f 673b 732f 2c24 2f2f  )(,|$)//g;s/,$//
│ │ │ +001e8550: 2229 0a20 2020 2020 2020 205b 2022 2470  ").        [ "$p
│ │ │ +001e8560: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ +001e8570: 7473 2220 5d20 2661 6d70 3b26 616d 703b  ts" ] &&
│ │ │ +001e8580: 2070 7265 7669 6f75 735f 6d6f 756e 745f   previous_mount_
│ │ │ +001e8590: 6f70 7473 2b3d 222c 220a 2020 2020 2020  opts+=",".      
│ │ │ +001e85a0: 2020 2320 496e 2069 736f 3936 3630 2066    # In iso9660 f
│ │ │ +001e85b0: 696c 6573 7973 7465 6d73 206d 7461 6220  ilesystems mtab 
│ │ │ +001e85c0: 636f 756c 6420 6465 7363 7269 6265 2061  could describe a
│ │ │ +001e85d0: 2022 626c 6f63 6b73 697a 6522 2076 616c   "blocksize" val
│ │ │ +001e85e0: 7565 2c20 7468 6973 2073 686f 756c 6420  ue, this should 
│ │ │ +001e85f0: 6265 2072 6566 6c65 6374 6564 2069 6e0a  be reflected in.
│ │ │ +001e8600: 2020 2020 2020 2020 2320 6673 7461 6220          # fstab 
│ │ │ +001e8610: 6173 2022 626c 6f63 6b22 2e20 2054 6865  as "block".  The
│ │ │ +001e8620: 206e 6578 7420 7661 7269 6162 6c65 2069   next variable i
│ │ │ +001e8630: 7320 746f 2073 6174 6973 6679 2073 6865  s to satisfy she
│ │ │ +001e8640: 6c6c 6368 6563 6b20 5343 3230 3530 2e0a  llcheck SC2050..
│ │ │ +001e8650: 2020 2020 2020 2020 6673 5f74 7970 653d          fs_type=
│ │ │ +001e8660: 2222 0a20 2020 2020 2020 2069 6620 5b20  "".        if [ 
│ │ │ +001e8670: 2022 2466 735f 7479 7065 2220 3d3d 2022   "$fs_type" == "
│ │ │ +001e8680: 6973 6f39 3636 3022 205d 203b 2074 6865  iso9660" ] ; the
│ │ │ +001e8690: 6e0a 2020 2020 2020 2020 2020 2020 7072  n.            pr
│ │ │ +001e86a0: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ +001e86b0: 733d 2428 7365 6420 2773 2f62 6c6f 636b  s=$(sed 's/block
│ │ │ +001e86c0: 7369 7a65 3d2f 626c 6f63 6b3d 2f27 2026  size=/block=/' &
│ │ │ +001e86d0: 6c74 3b26 6c74 3b26 6c74 3b20 2224 7072  lt;<< "$pr
│ │ │ +001e86e0: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ +001e86f0: 7322 290a 2020 2020 2020 2020 6669 0a20  s").        fi. 
│ │ │ +001e8700: 2020 2020 2020 2065 6368 6f20 2220 2f73         echo " /s
│ │ │ +001e8710: 7276 2020 6465 6661 756c 7473 2c24 7b70  rv  defaults,${p
│ │ │ +001e8720: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ +001e8730: 7473 7d6e 6f73 7569 6420 3020 3022 2026  ts}nosuid 0 0" &
│ │ │ +001e8740: 6774 3b26 6774 3b20 2f65 7463 2f66 7374  gt;> /etc/fst
│ │ │ +001e8750: 6162 0a20 2020 2023 2049 6620 7468 6520  ab.    # If the 
│ │ │ +001e8760: 6d6f 756e 745f 6f70 7420 6f70 7469 6f6e  mount_opt option
│ │ │ +001e8770: 2069 7320 6e6f 7420 616c 7265 6164 7920   is not already 
│ │ │ +001e8780: 696e 2074 6865 206d 6f75 6e74 2070 6f69  in the mount poi
│ │ │ +001e8790: 6e74 2773 202f 6574 632f 6673 7461 6220  nt's /etc/fstab 
│ │ │ +001e87a0: 656e 7472 792c 2061 6464 2069 740a 2020  entry, add it.  
│ │ │ +001e87b0: 2020 656c 6966 2021 2067 7265 7020 2224    elif ! grep "$
│ │ │ +001e87c0: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ +001e87d0: 685f 7265 6765 7870 2220 2f65 7463 2f66  h_regexp" /etc/f
│ │ │ +001e87e0: 7374 6162 207c 2067 7265 7020 2d71 2022  stab | grep -q "
│ │ │ +001e87f0: 6e6f 7375 6964 223b 2074 6865 6e0a 2020  nosuid"; then.  
│ │ │ +001e8800: 2020 2020 2020 7072 6576 696f 7573 5f6d        previous_m
│ │ │ +001e8810: 6f75 6e74 5f6f 7074 733d 2428 6772 6570  ount_opts=$(grep
│ │ │ +001e8820: 2022 246d 6f75 6e74 5f70 6f69 6e74 5f6d   "$mount_point_m
│ │ │ +001e8830: 6174 6368 5f72 6567 6578 7022 202f 6574  atch_regexp" /et
│ │ │ +001e8840: 632f 6673 7461 6220 7c20 6177 6b20 277b  c/fstab | awk '{
│ │ │ +001e8850: 7072 696e 7420 2434 7d27 290a 2020 2020  print $4}').    
│ │ │ +001e8860: 2020 2020 7365 6420 2d69 2022 737c 5c28      sed -i "s|\(
│ │ │ +001e8870: 247b 6d6f 756e 745f 706f 696e 745f 6d61  ${mount_point_ma
│ │ │ +001e8880: 7463 685f 7265 6765 7870 7d2e 2a24 7b70  tch_regexp}.*${p
│ │ │ +001e8890: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ +001e88a0: 7473 7d5c 297c 5c31 2c6e 6f73 7569 647c  ts}\)|\1,nosuid|
│ │ │ +001e88b0: 2220 2f65 7463 2f66 7374 6162 0a20 2020  " /etc/fstab.   
│ │ │ +001e88c0: 2066 690a 0a0a 2020 2020 6966 206d 6b64   fi...    if mkd
│ │ │ +001e88d0: 6972 202d 7020 222f 7372 7622 3b20 7468  ir -p "/srv"; th
│ │ │ +001e88e0: 656e 0a20 2020 2020 2020 2069 6620 6d6f  en.        if mo
│ │ │ +001e88f0: 756e 7470 6f69 6e74 202d 7120 222f 7372  untpoint -q "/sr
│ │ │ +001e8900: 7622 3b20 7468 656e 0a20 2020 2020 2020  v"; then.       
│ │ │ +001e8910: 2020 2020 206d 6f75 6e74 202d 6f20 7265       mount -o re
│ │ │ +001e8920: 6d6f 756e 7420 2d2d 7461 7267 6574 2022  mount --target "
│ │ │ +001e8930: 2f73 7276 220a 2020 2020 2020 2020 6669  /srv".        fi
│ │ │ +001e8940: 0a20 2020 2066 690a 7d0a 0a70 6572 666f  .    fi.}..perfo
│ │ │ +001e8950: 726d 5f72 656d 6564 6961 7469 6f6e 0a0a  rm_remediation..
│ │ │ +001e8960: 656c 7365 0a20 2020 2026 6774 3b26 616d  else.    >&am
│ │ │ +001e8970: 703b 3220 6563 686f 2027 5265 6d65 6469  p;2 echo 'Remedi
│ │ │ +001e8980: 6174 696f 6e20 6973 206e 6f74 2061 7070  ation is not app
│ │ │ +001e8990: 6c69 6361 626c 652c 206e 6f74 6869 6e67  licable, nothing
│ │ │ +001e89a0: 2077 6173 2064 6f6e 6527 0a66 690a 3c2f   was done'.fi.
Re │ │ │ +001e8a60: 6d65 6469 6174 696f 6e20 416e 6163 6f6e mediation Anacon │ │ │ +001e8a70: 6461 2073 6e69 7070 6574 20e2 87b2 3c2f da snippet ...
│ │ │ +001e8b10: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 < │ │ │ +001e8b50: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +001e8b60: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
.
│ │ │ +001e8bb0: 7061 7274 202f 7372 7620 2d2d 6d6f 756e  part /srv --moun
│ │ │ +001e8bc0: 746f 7074 696f 6e73 3d22 6e6f 7375 6964  toptions="nosuid
│ │ │ +001e8bd0: 220a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  ".
< │ │ │ 001e8be0: 2f64 6976 3e3c 2f64 6976 3e3c 2f74 643e /div> │ │ │ 001e8bf0: 3c2f 7472 3e3c 2f74 626f 6479 3e3c 2f74 < │ │ │ 001e8c10: 7472 2064 6174 612d 7474 2d69 643d 2278 tr data-tt-id="x │ │ │ 001e8c20: 6363 6466 5f6f 7267 2e73 7367 7072 6f6a ccdf_org.ssgproj │ │ │ 001e8c30: 6563 742e 636f 6e74 656e 745f 7275 6c65 ect.content_rule │ │ │ 001e8c40: 5f6d 6f75 6e74 5f6f 7074 696f 6e5f 746d _mount_option_tm │ │ │ @@ -125379,611 +125379,611 @@ │ │ │ 001e9c20: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ 001e9c30: 6435 3936 2220 7461 6269 6e64 6578 3d22 d596" tabindex=" │ │ │ 001e9c40: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ 001e9c50: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ 001e9c60: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ 001e9c70: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ 001e9c80: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ -001e9c90: 6469 6174 696f 6e20 416e 6163 6f6e 6461 diation Anaconda │ │ │ -001e9ca0: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -001e9cb0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
│ │ │ +001e8b00: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +001e8b30: 696f 6e3a 3c2f 7468 3e3c 7464 3e68 6967 ion:hig │ │ │ +001e8b40: 683c 2f74 643e 3c2f 7472 3e3c 7472 3e3c h
Strate │ │ │ +001e8b80: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ +001e8b90: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
low< │ │ │ -001e9d50: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr> │ │ │ -001e9da0: 3c74 723e 3c74 683e 5374 7261 7465 6779
.pa
│ │ │ -001e9de0: 7274 202f 746d 7020 2d2d 6d6f 756e 746f  rt /tmp --mounto
│ │ │ -001e9df0: 7074 696f 6e73 3d22 6e6f 6578 6563 220a  ptions="noexec".
│ │ │ -001e9e00: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ -001e9eb0: 5265 6d65 6469 6174 696f 6e20 416e 7369 Remediation Ansi │ │ │ -001e9ec0: 626c 6520 736e 6970 7065 7420 e287 b23c ble snippet ...< │ │ │ -001e9ed0: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
Co │ │ │ -001e9d30: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -001e9d60: 6e3a 3c2f 7468 3e3c 7464 3e68 6967 683c n:high< │ │ │ -001e9d70: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -001e9db0: 3a3c 2f74 683e 3c74 643e 656e 6162 6c65 :enable │ │ │ -001e9dc0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
│ │ │ -001e9fa0: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -001e9fb0: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f │ │ │ -001e9ff0: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:low
Disrup │ │ │ -001e9f80: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6869 tion:hi │ │ │ -001e9f90: 6768 3c2f 7464 3e3c 2f74 723e 3c74 723e gh
Reboot:false
Strat │ │ │ -001e9fd0: 6567 793a 3c2f 7468 3e3c 7464 3e63 6f6e egy:con │ │ │ -001e9fe0: 6669 6775 7265 3c2f 7464 3e3c 2f74 723e figure
- name: Gathe
│ │ │ -001ea010: 7220 7468 6520 7061 636b 6167 6520 6661  r the package fa
│ │ │ -001ea020: 6374 730a 2020 7061 636b 6167 655f 6661  cts.  package_fa
│ │ │ -001ea030: 6374 733a 0a20 2020 206d 616e 6167 6572  cts:.    manager
│ │ │ -001ea040: 3a20 6175 746f 0a20 2074 6167 733a 0a20  : auto.  tags:. 
│ │ │ -001ea050: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ -001ea060: 432d 360a 2020 2d20 4e49 5354 2d38 3030  C-6.  - NIST-800
│ │ │ -001ea070: 2d35 332d 4143 2d36 2831 290a 2020 2d20  -53-AC-6(1).  - 
│ │ │ -001ea080: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ -001ea090: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ -001ea0a0: 2d35 332d 434d 2d37 2861 290a 2020 2d20  -53-CM-7(a).  - 
│ │ │ -001ea0b0: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ -001ea0c0: 2862 290a 2020 2d20 4e49 5354 2d38 3030  (b).  - NIST-800
│ │ │ -001ea0d0: 2d35 332d 4d50 2d37 0a20 202d 2063 6f6e  -53-MP-7.  - con
│ │ │ -001ea0e0: 6669 6775 7265 5f73 7472 6174 6567 790a  figure_strategy.
│ │ │ -001ea0f0: 2020 2d20 6869 6768 5f64 6973 7275 7074    - high_disrupt
│ │ │ -001ea100: 696f 6e0a 2020 2d20 6c6f 775f 636f 6d70  ion.  - low_comp
│ │ │ -001ea110: 6c65 7869 7479 0a20 202d 206d 6564 6975  lexity.  - mediu
│ │ │ -001ea120: 6d5f 7365 7665 7269 7479 0a20 202d 206d  m_severity.  - m
│ │ │ -001ea130: 6f75 6e74 5f6f 7074 696f 6e5f 746d 705f  ount_option_tmp_
│ │ │ -001ea140: 6e6f 6578 6563 0a20 202d 206e 6f5f 7265  noexec.  - no_re
│ │ │ -001ea150: 626f 6f74 5f6e 6565 6465 640a 0a2d 206e  boot_needed..- n
│ │ │ -001ea160: 616d 653a 2027 4164 6420 6e6f 6578 6563  ame: 'Add noexec
│ │ │ -001ea170: 204f 7074 696f 6e20 746f 202f 746d 703a   Option to /tmp:
│ │ │ -001ea180: 2043 6865 636b 2069 6e66 6f72 6d61 7469   Check informati
│ │ │ -001ea190: 6f6e 2061 7373 6f63 6961 7465 6420 746f  on associated to
│ │ │ -001ea1a0: 206d 6f75 6e74 706f 696e 7427 0a20 2061   mountpoint'.  a
│ │ │ -001ea1b0: 6e73 6962 6c65 2e62 7569 6c74 696e 2e63  nsible.builtin.c
│ │ │ -001ea1c0: 6f6d 6d61 6e64 3a20 6669 6e64 6d6e 7420  ommand: findmnt 
│ │ │ -001ea1d0: 2d2d 6673 7461 6220 272f 746d 7027 0a20  --fstab '/tmp'. 
│ │ │ -001ea1e0: 2072 6567 6973 7465 723a 2064 6576 6963   register: devic
│ │ │ -001ea1f0: 655f 6e61 6d65 0a20 2066 6169 6c65 645f  e_name.  failed_
│ │ │ -001ea200: 7768 656e 3a20 6465 7669 6365 5f6e 616d  when: device_nam
│ │ │ -001ea210: 652e 7263 2026 6774 3b20 310a 2020 6368  e.rc > 1.  ch
│ │ │ -001ea220: 616e 6765 645f 7768 656e 3a20 6661 6c73  anged_when: fals
│ │ │ -001ea230: 650a 2020 6368 6563 6b5f 6d6f 6465 3a20  e.  check_mode: 
│ │ │ -001ea240: 6661 6c73 650a 2020 7768 656e 3a0a 2020  false.  when:.  
│ │ │ -001ea250: 2d20 2820 6e6f 7420 2820 226b 6572 6e65  - ( not ( "kerne
│ │ │ -001ea260: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ -001ea270: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ -001ea280: 2022 626f 6f74 6322 2069 6e20 616e 7369   "bootc" in ansi
│ │ │ -001ea290: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001ea2a0: 6573 0a20 2020 2061 6e64 206e 6f74 2022  es.    and not "
│ │ │ -001ea2b0: 6f70 656e 7368 6966 742d 6b75 6265 6c65  openshift-kubele
│ │ │ -001ea2c0: 7422 2069 6e20 616e 7369 626c 655f 6661  t" in ansible_fa
│ │ │ -001ea2d0: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ -001ea2e0: 2022 6f73 7472 6565 2220 696e 2061 6e73   "ostree" in ans
│ │ │ -001ea2f0: 6962 6c65 5f70 726f 635f 636d 646c 696e  ible_proc_cmdlin
│ │ │ -001ea300: 650a 2020 2020 2920 616e 6420 6e6f 7420  e.    ) and not 
│ │ │ -001ea310: 2820 616e 7369 626c 655f 7669 7274 7561  ( ansible_virtua
│ │ │ -001ea320: 6c69 7a61 7469 6f6e 5f74 7970 6520 696e  lization_type in
│ │ │ -001ea330: 205b 2264 6f63 6b65 7222 2c20 226c 7863   ["docker", "lxc
│ │ │ -001ea340: 222c 2022 6f70 656e 767a 222c 2022 706f  ", "openvz", "po
│ │ │ -001ea350: 646d 616e 222c 0a20 2020 2022 636f 6e74  dman",.    "cont
│ │ │ -001ea360: 6169 6e65 7222 5d20 2920 290a 2020 2d20  ainer"] ) ).  - 
│ │ │ -001ea370: 2722 2f74 6d70 2220 696e 2061 6e73 6962  '"/tmp" in ansib
│ │ │ -001ea380: 6c65 5f6d 6f75 6e74 7320 7c20 6d61 7028  le_mounts | map(
│ │ │ -001ea390: 6174 7472 6962 7574 653d 226d 6f75 6e74  attribute="mount
│ │ │ -001ea3a0: 2229 207c 206c 6973 7427 0a20 2074 6167  ") | list'.  tag
│ │ │ -001ea3b0: 733a 0a20 202d 204e 4953 542d 3830 302d  s:.  - NIST-800-
│ │ │ -001ea3c0: 3533 2d41 432d 360a 2020 2d20 4e49 5354  53-AC-6.  - NIST
│ │ │ -001ea3d0: 2d38 3030 2d35 332d 4143 2d36 2831 290a  -800-53-AC-6(1).
│ │ │ -001ea3e0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001ea3f0: 434d 2d36 2861 290a 2020 2d20 4e49 5354  CM-6(a).  - NIST
│ │ │ -001ea400: 2d38 3030 2d35 332d 434d 2d37 2861 290a  -800-53-CM-7(a).
│ │ │ -001ea410: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001ea420: 434d 2d37 2862 290a 2020 2d20 4e49 5354  CM-7(b).  - NIST
│ │ │ -001ea430: 2d38 3030 2d35 332d 4d50 2d37 0a20 202d  -800-53-MP-7.  -
│ │ │ -001ea440: 2063 6f6e 6669 6775 7265 5f73 7472 6174   configure_strat
│ │ │ -001ea450: 6567 790a 2020 2d20 6869 6768 5f64 6973  egy.  - high_dis
│ │ │ -001ea460: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f  ruption.  - low_
│ │ │ -001ea470: 636f 6d70 6c65 7869 7479 0a20 202d 206d  complexity.  - m
│ │ │ -001ea480: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ -001ea490: 202d 206d 6f75 6e74 5f6f 7074 696f 6e5f   - mount_option_
│ │ │ -001ea4a0: 746d 705f 6e6f 6578 6563 0a20 202d 206e  tmp_noexec.  - n
│ │ │ -001ea4b0: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ -001ea4c0: 0a2d 206e 616d 653a 2027 4164 6420 6e6f  .- name: 'Add no
│ │ │ -001ea4d0: 6578 6563 204f 7074 696f 6e20 746f 202f  exec Option to /
│ │ │ -001ea4e0: 746d 703a 2043 7265 6174 6520 6d6f 756e  tmp: Create moun
│ │ │ -001ea4f0: 745f 696e 666f 2064 6963 7469 6f6e 6172  t_info dictionar
│ │ │ -001ea500: 7920 7661 7269 6162 6c65 270a 2020 7365  y variable'.  se
│ │ │ -001ea510: 745f 6661 6374 3a0a 2020 2020 6d6f 756e  t_fact:.    moun
│ │ │ -001ea520: 745f 696e 666f 3a20 277b 7b20 6d6f 756e  t_info: '{{ moun
│ │ │ -001ea530: 745f 696e 666f 7c64 6566 6175 6c74 287b  t_info|default({
│ │ │ -001ea540: 7d29 7c63 6f6d 6269 6e65 287b 6974 656d  })|combine({item
│ │ │ -001ea550: 2e30 3a20 6974 656d 2e31 7d29 207d 7d27  .0: item.1}) }}'
│ │ │ -001ea560: 0a20 2077 6974 685f 746f 6765 7468 6572  .  with_together
│ │ │ -001ea570: 3a0a 2020 2d20 277b 7b20 6465 7669 6365  :.  - '{{ device
│ │ │ -001ea580: 5f6e 616d 652e 7374 646f 7574 5f6c 696e  _name.stdout_lin
│ │ │ -001ea590: 6573 5b30 5d2e 7370 6c69 7428 2920 7c20  es[0].split() | 
│ │ │ -001ea5a0: 6d61 7028 2727 6c6f 7765 7227 2729 207c  map(''lower'') |
│ │ │ -001ea5b0: 206c 6973 7420 7d7d 270a 2020 2d20 277b   list }}'.  - '{
│ │ │ -001ea5c0: 7b20 6465 7669 6365 5f6e 616d 652e 7374  { device_name.st
│ │ │ -001ea5d0: 646f 7574 5f6c 696e 6573 5b31 5d2e 7370  dout_lines[1].sp
│ │ │ -001ea5e0: 6c69 7428 2920 7c20 6c69 7374 207d 7d27  lit() | list }}'
│ │ │ -001ea5f0: 0a20 2077 6865 6e3a 0a20 202d 2028 206e  .  when:.  - ( n
│ │ │ -001ea600: 6f74 2028 2022 6b65 726e 656c 2220 696e  ot ( "kernel" in
│ │ │ -001ea610: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -001ea620: 6163 6b61 6765 7320 616e 6420 2262 6f6f  ackages and "boo
│ │ │ -001ea630: 7463 2220 696e 2061 6e73 6962 6c65 5f66  tc" in ansible_f
│ │ │ -001ea640: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ -001ea650: 2020 616e 6420 6e6f 7420 226f 7065 6e73    and not "opens
│ │ │ -001ea660: 6869 6674 2d6b 7562 656c 6574 2220 696e  hift-kubelet" in
│ │ │ -001ea670: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -001ea680: 6163 6b61 6765 7320 616e 6420 226f 7374  ackages and "ost
│ │ │ -001ea690: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ -001ea6a0: 7072 6f63 5f63 6d64 6c69 6e65 0a20 2020  proc_cmdline.   
│ │ │ -001ea6b0: 2029 2061 6e64 206e 6f74 2028 2061 6e73   ) and not ( ans
│ │ │ -001ea6c0: 6962 6c65 5f76 6972 7475 616c 697a 6174  ible_virtualizat
│ │ │ -001ea6d0: 696f 6e5f 7479 7065 2069 6e20 5b22 646f  ion_type in ["do
│ │ │ -001ea6e0: 636b 6572 222c 2022 6c78 6322 2c20 226f  cker", "lxc", "o
│ │ │ -001ea6f0: 7065 6e76 7a22 2c20 2270 6f64 6d61 6e22  penvz", "podman"
│ │ │ -001ea700: 2c0a 2020 2020 2263 6f6e 7461 696e 6572  ,.    "container
│ │ │ -001ea710: 225d 2029 2029 0a20 202d 2027 222f 746d  "] ) ).  - '"/tm
│ │ │ -001ea720: 7022 2069 6e20 616e 7369 626c 655f 6d6f  p" in ansible_mo
│ │ │ -001ea730: 756e 7473 207c 206d 6170 2861 7474 7269  unts | map(attri
│ │ │ -001ea740: 6275 7465 3d22 6d6f 756e 7422 2920 7c20  bute="mount") | 
│ │ │ -001ea750: 6c69 7374 270a 2020 2d20 6465 7669 6365  list'.  - device
│ │ │ -001ea760: 5f6e 616d 652e 7374 646f 7574 2069 7320  _name.stdout is 
│ │ │ -001ea770: 6465 6669 6e65 6420 616e 6420 6465 7669  defined and devi
│ │ │ -001ea780: 6365 5f6e 616d 652e 7374 646f 7574 5f6c  ce_name.stdout_l
│ │ │ -001ea790: 696e 6573 2069 7320 6465 6669 6e65 640a  ines is defined.
│ │ │ -001ea7a0: 2020 2d20 2864 6576 6963 655f 6e61 6d65    - (device_name
│ │ │ -001ea7b0: 2e73 7464 6f75 7420 7c20 6c65 6e67 7468  .stdout | length
│ │ │ -001ea7c0: 2026 6774 3b20 3029 0a20 2074 6167 733a   > 0).  tags:
│ │ │ -001ea7d0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001ea7e0: 2d41 432d 360a 2020 2d20 4e49 5354 2d38  -AC-6.  - NIST-8
│ │ │ -001ea7f0: 3030 2d35 332d 4143 2d36 2831 290a 2020  00-53-AC-6(1).  
│ │ │ -001ea800: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -001ea810: 2d36 2861 290a 2020 2d20 4e49 5354 2d38  -6(a).  - NIST-8
│ │ │ -001ea820: 3030 2d35 332d 434d 2d37 2861 290a 2020  00-53-CM-7(a).  
│ │ │ -001ea830: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -001ea840: 2d37 2862 290a 2020 2d20 4e49 5354 2d38  -7(b).  - NIST-8
│ │ │ -001ea850: 3030 2d35 332d 4d50 2d37 0a20 202d 2063  00-53-MP-7.  - c
│ │ │ -001ea860: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ -001ea870: 790a 2020 2d20 6869 6768 5f64 6973 7275  y.  - high_disru
│ │ │ -001ea880: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f  ption.  - low_co
│ │ │ -001ea890: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ -001ea8a0: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ -001ea8b0: 206d 6f75 6e74 5f6f 7074 696f 6e5f 746d   mount_option_tm
│ │ │ -001ea8c0: 705f 6e6f 6578 6563 0a20 202d 206e 6f5f  p_noexec.  - no_
│ │ │ -001ea8d0: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ -001ea8e0: 206e 616d 653a 2027 4164 6420 6e6f 6578   name: 'Add noex
│ │ │ -001ea8f0: 6563 204f 7074 696f 6e20 746f 202f 746d  ec Option to /tm
│ │ │ -001ea900: 703a 2049 6620 2f74 6d70 206e 6f74 206d  p: If /tmp not m
│ │ │ -001ea910: 6f75 6e74 6564 2c20 6372 6166 7420 6d6f  ounted, craft mo
│ │ │ -001ea920: 756e 745f 696e 666f 206d 616e 7561 6c6c  unt_info manuall
│ │ │ -001ea930: 7927 0a20 2073 6574 5f66 6163 743a 0a20  y'.  set_fact:. 
│ │ │ -001ea940: 2020 206d 6f75 6e74 5f69 6e66 6f3a 2027     mount_info: '
│ │ │ -001ea950: 7b7b 206d 6f75 6e74 5f69 6e66 6f7c 6465  {{ mount_info|de
│ │ │ -001ea960: 6661 756c 7428 7b7d 297c 636f 6d62 696e  fault({})|combin
│ │ │ -001ea970: 6528 7b69 7465 6d2e 303a 2069 7465 6d2e  e({item.0: item.
│ │ │ -001ea980: 317d 2920 7d7d 270a 2020 7769 7468 5f74  1}) }}'.  with_t
│ │ │ -001ea990: 6f67 6574 6865 723a 0a20 202d 202d 2074  ogether:.  - - t
│ │ │ -001ea9a0: 6172 6765 740a 2020 2020 2d20 736f 7572  arget.    - sour
│ │ │ -001ea9b0: 6365 0a20 2020 202d 2066 7374 7970 650a  ce.    - fstype.
│ │ │ -001ea9c0: 2020 2020 2d20 6f70 7469 6f6e 730a 2020      - options.  
│ │ │ -001ea9d0: 2d20 2d20 2f74 6d70 0a20 2020 202d 2027  - - /tmp.    - '
│ │ │ -001ea9e0: 270a 2020 2020 2d20 2727 0a20 2020 202d  '.    - ''.    -
│ │ │ -001ea9f0: 2064 6566 6175 6c74 730a 2020 7768 656e   defaults.  when
│ │ │ -001eaa00: 3a0a 2020 2d20 2820 6e6f 7420 2820 226b  :.  - ( not ( "k
│ │ │ -001eaa10: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ -001eaa20: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001eaa30: 2061 6e64 2022 626f 6f74 6322 2069 6e20   and "bootc" in 
│ │ │ -001eaa40: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001eaa50: 636b 6167 6573 0a20 2020 2061 6e64 206e  ckages.    and n
│ │ │ -001eaa60: 6f74 2022 6f70 656e 7368 6966 742d 6b75  ot "openshift-ku
│ │ │ -001eaa70: 6265 6c65 7422 2069 6e20 616e 7369 626c  belet" in ansibl
│ │ │ -001eaa80: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001eaa90: 2061 6e64 2022 6f73 7472 6565 2220 696e   and "ostree" in
│ │ │ -001eaaa0: 2061 6e73 6962 6c65 5f70 726f 635f 636d   ansible_proc_cm
│ │ │ -001eaab0: 646c 696e 650a 2020 2020 2920 616e 6420  dline.    ) and 
│ │ │ -001eaac0: 6e6f 7420 2820 616e 7369 626c 655f 7669  not ( ansible_vi
│ │ │ -001eaad0: 7274 7561 6c69 7a61 7469 6f6e 5f74 7970  rtualization_typ
│ │ │ -001eaae0: 6520 696e 205b 2264 6f63 6b65 7222 2c20  e in ["docker", 
│ │ │ -001eaaf0: 226c 7863 222c 2022 6f70 656e 767a 222c  "lxc", "openvz",
│ │ │ -001eab00: 2022 706f 646d 616e 222c 0a20 2020 2022   "podman",.    "
│ │ │ -001eab10: 636f 6e74 6169 6e65 7222 5d20 2920 290a  container"] ) ).
│ │ │ -001eab20: 2020 2d20 2722 2f74 6d70 2220 696e 2061    - '"/tmp" in a
│ │ │ -001eab30: 6e73 6962 6c65 5f6d 6f75 6e74 7320 7c20  nsible_mounts | 
│ │ │ -001eab40: 6d61 7028 6174 7472 6962 7574 653d 226d  map(attribute="m
│ │ │ -001eab50: 6f75 6e74 2229 207c 206c 6973 7427 0a20  ount") | list'. 
│ │ │ -001eab60: 202d 2028 222d 2d66 7374 6162 2220 7c20   - ("--fstab" | 
│ │ │ -001eab70: 6c65 6e67 7468 203d 3d20 3029 0a20 202d  length == 0).  -
│ │ │ -001eab80: 2064 6576 6963 655f 6e61 6d65 2e73 7464   device_name.std
│ │ │ -001eab90: 6f75 7420 6973 2064 6566 696e 6564 2061  out is defined a
│ │ │ -001eaba0: 6e64 2064 6576 6963 655f 6e61 6d65 2e73  nd device_name.s
│ │ │ -001eabb0: 7464 6f75 745f 6c69 6e65 7320 6973 2064  tdout_lines is d
│ │ │ -001eabc0: 6566 696e 6564 0a20 202d 2028 6465 7669  efined.  - (devi
│ │ │ -001eabd0: 6365 5f6e 616d 652e 7374 646f 7574 207c  ce_name.stdout |
│ │ │ -001eabe0: 206c 656e 6774 6820 3d3d 2030 290a 2020   length == 0).  
│ │ │ -001eabf0: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38  tags:.  - NIST-8
│ │ │ -001eac00: 3030 2d35 332d 4143 2d36 0a20 202d 204e  00-53-AC-6.  - N
│ │ │ -001eac10: 4953 542d 3830 302d 3533 2d41 432d 3628  IST-800-53-AC-6(
│ │ │ -001eac20: 3129 0a20 202d 204e 4953 542d 3830 302d  1).  - NIST-800-
│ │ │ -001eac30: 3533 2d43 4d2d 3628 6129 0a20 202d 204e  53-CM-6(a).  - N
│ │ │ -001eac40: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ -001eac50: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ -001eac60: 3533 2d43 4d2d 3728 6229 0a20 202d 204e  53-CM-7(b).  - N
│ │ │ -001eac70: 4953 542d 3830 302d 3533 2d4d 502d 370a  IST-800-53-MP-7.
│ │ │ -001eac80: 2020 2d20 636f 6e66 6967 7572 655f 7374    - configure_st
│ │ │ -001eac90: 7261 7465 6779 0a20 202d 2068 6967 685f  rategy.  - high_
│ │ │ -001eaca0: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ -001eacb0: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ -001eacc0: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ -001eacd0: 790a 2020 2d20 6d6f 756e 745f 6f70 7469  y.  - mount_opti
│ │ │ -001eace0: 6f6e 5f74 6d70 5f6e 6f65 7865 630a 2020  on_tmp_noexec.  
│ │ │ -001eacf0: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ -001ead00: 6564 0a0a 2d20 6e61 6d65 3a20 2741 6464  ed..- name: 'Add
│ │ │ -001ead10: 206e 6f65 7865 6320 4f70 7469 6f6e 2074   noexec Option t
│ │ │ -001ead20: 6f20 2f74 6d70 3a20 4d61 6b65 2073 7572  o /tmp: Make sur
│ │ │ -001ead30: 6520 6e6f 6578 6563 206f 7074 696f 6e20  e noexec option 
│ │ │ -001ead40: 6973 2070 6172 7420 6f66 2074 6865 2074  is part of the t
│ │ │ -001ead50: 6f20 2f74 6d70 0a20 2020 206f 7074 696f  o /tmp.    optio
│ │ │ -001ead60: 6e73 270a 2020 7365 745f 6661 6374 3a0a  ns'.  set_fact:.
│ │ │ -001ead70: 2020 2020 6d6f 756e 745f 696e 666f 3a20      mount_info: 
│ │ │ -001ead80: 277b 7b20 6d6f 756e 745f 696e 666f 207c  '{{ mount_info |
│ │ │ -001ead90: 2063 6f6d 6269 6e65 2820 7b27 276f 7074   combine( {''opt
│ │ │ -001eada0: 696f 6e73 2727 3a27 2727 277e 286d 6f75  ions'':''''~(mou
│ │ │ -001eadb0: 6e74 5f69 6e66 6f2e 6f70 7469 6f6e 7320  nt_info.options 
│ │ │ -001eadc0: 7c0a 2020 2020 2020 6465 6661 756c 7428  |.      default(
│ │ │ -001eadd0: 2727 2727 2929 7e28 2727 2c27 2720 6966  ''''))~('','' if
│ │ │ -001eade0: 2028 6d6f 756e 745f 696e 666f 2e6f 7074   (mount_info.opt
│ │ │ -001eadf0: 696f 6e73 207c 2064 6566 6175 6c74 2827  ions | default('
│ │ │ -001eae00: 2727 2729 2920 656c 7365 2027 2727 2729  ''')) else '''')
│ │ │ -001eae10: 7e27 276e 6f65 7865 6327 270a 2020 2020  ~''noexec''.    
│ │ │ -001eae20: 2020 7d29 207d 7d27 0a20 2077 6865 6e3a    }) }}'.  when:
│ │ │ -001eae30: 0a20 202d 2028 206e 6f74 2028 2022 6b65  .  - ( not ( "ke
│ │ │ -001eae40: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ -001eae50: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ -001eae60: 616e 6420 2262 6f6f 7463 2220 696e 2061  and "bootc" in a
│ │ │ -001eae70: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001eae80: 6b61 6765 730a 2020 2020 616e 6420 6e6f  kages.    and no
│ │ │ -001eae90: 7420 226f 7065 6e73 6869 6674 2d6b 7562  t "openshift-kub
│ │ │ -001eaea0: 656c 6574 2220 696e 2061 6e73 6962 6c65  elet" in ansible
│ │ │ -001eaeb0: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ -001eaec0: 616e 6420 226f 7374 7265 6522 2069 6e20  and "ostree" in 
│ │ │ -001eaed0: 616e 7369 626c 655f 7072 6f63 5f63 6d64  ansible_proc_cmd
│ │ │ -001eaee0: 6c69 6e65 0a20 2020 2029 2061 6e64 206e  line.    ) and n
│ │ │ -001eaef0: 6f74 2028 2061 6e73 6962 6c65 5f76 6972  ot ( ansible_vir
│ │ │ -001eaf00: 7475 616c 697a 6174 696f 6e5f 7479 7065  tualization_type
│ │ │ -001eaf10: 2069 6e20 5b22 646f 636b 6572 222c 2022   in ["docker", "
│ │ │ -001eaf20: 6c78 6322 2c20 226f 7065 6e76 7a22 2c20  lxc", "openvz", 
│ │ │ -001eaf30: 2270 6f64 6d61 6e22 2c0a 2020 2020 2263  "podman",.    "c
│ │ │ -001eaf40: 6f6e 7461 696e 6572 225d 2029 2029 0a20  ontainer"] ) ). 
│ │ │ -001eaf50: 202d 2027 222f 746d 7022 2069 6e20 616e   - '"/tmp" in an
│ │ │ -001eaf60: 7369 626c 655f 6d6f 756e 7473 207c 206d  sible_mounts | m
│ │ │ -001eaf70: 6170 2861 7474 7269 6275 7465 3d22 6d6f  ap(attribute="mo
│ │ │ -001eaf80: 756e 7422 2920 7c20 6c69 7374 270a 2020  unt") | list'.  
│ │ │ -001eaf90: 2d20 6d6f 756e 745f 696e 666f 2069 7320  - mount_info is 
│ │ │ -001eafa0: 6465 6669 6e65 6420 616e 6420 226e 6f65  defined and "noe
│ │ │ -001eafb0: 7865 6322 206e 6f74 2069 6e20 286d 6f75  xec" not in (mou
│ │ │ -001eafc0: 6e74 5f69 6e66 6f2e 6f70 7469 6f6e 7320  nt_info.options 
│ │ │ -001eafd0: 7c20 6465 6661 756c 7428 2727 2929 0a20  | default('')). 
│ │ │ -001eafe0: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ -001eaff0: 3830 302d 3533 2d41 432d 360a 2020 2d20  800-53-AC-6.  - 
│ │ │ -001eb000: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ -001eb010: 2831 290a 2020 2d20 4e49 5354 2d38 3030  (1).  - NIST-800
│ │ │ -001eb020: 2d35 332d 434d 2d36 2861 290a 2020 2d20  -53-CM-6(a).  - 
│ │ │ -001eb030: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ -001eb040: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ -001eb050: 2d35 332d 434d 2d37 2862 290a 2020 2d20  -53-CM-7(b).  - 
│ │ │ -001eb060: 4e49 5354 2d38 3030 2d35 332d 4d50 2d37  NIST-800-53-MP-7
│ │ │ -001eb070: 0a20 202d 2063 6f6e 6669 6775 7265 5f73  .  - configure_s
│ │ │ -001eb080: 7472 6174 6567 790a 2020 2d20 6869 6768  trategy.  - high
│ │ │ -001eb090: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ -001eb0a0: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ -001eb0b0: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ -001eb0c0: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074  ty.  - mount_opt
│ │ │ -001eb0d0: 696f 6e5f 746d 705f 6e6f 6578 6563 0a20  ion_tmp_noexec. 
│ │ │ -001eb0e0: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ -001eb0f0: 6465 640a 0a2d 206e 616d 653a 2027 4164  ded..- name: 'Ad
│ │ │ -001eb100: 6420 6e6f 6578 6563 204f 7074 696f 6e20  d noexec Option 
│ │ │ -001eb110: 746f 202f 746d 703a 2045 6e73 7572 6520  to /tmp: Ensure 
│ │ │ -001eb120: 2f74 6d70 2069 7320 6d6f 756e 7465 6420  /tmp is mounted 
│ │ │ -001eb130: 7769 7468 206e 6f65 7865 6320 6f70 7469  with noexec opti
│ │ │ -001eb140: 6f6e 270a 2020 616e 7369 626c 652e 706f  on'.  ansible.po
│ │ │ -001eb150: 7369 782e 6d6f 756e 743a 0a20 2020 2070  six.mount:.    p
│ │ │ -001eb160: 6174 683a 202f 746d 700a 2020 2020 7372  ath: /tmp.    sr
│ │ │ -001eb170: 633a 2027 7b7b 206d 6f75 6e74 5f69 6e66  c: '{{ mount_inf
│ │ │ -001eb180: 6f2e 736f 7572 6365 207c 2064 6566 6175  o.source | defau
│ │ │ -001eb190: 6c74 2827 2727 2729 207d 7d27 0a20 2020  lt('''') }}'.   
│ │ │ -001eb1a0: 206f 7074 733a 2027 7b7b 206d 6f75 6e74   opts: '{{ mount
│ │ │ -001eb1b0: 5f69 6e66 6f2e 6f70 7469 6f6e 7320 7c20  _info.options | 
│ │ │ -001eb1c0: 6465 6661 756c 7428 2727 2727 2920 7d7d  default('''') }}
│ │ │ -001eb1d0: 270a 2020 2020 7374 6174 653a 206d 6f75  '.    state: mou
│ │ │ -001eb1e0: 6e74 6564 0a20 2020 2066 7374 7970 653a  nted.    fstype:
│ │ │ -001eb1f0: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f2e   '{{ mount_info.
│ │ │ -001eb200: 6673 7479 7065 207c 2064 6566 6175 6c74  fstype | default
│ │ │ -001eb210: 2827 2727 2729 207d 7d27 0a20 2072 6567  ('''') }}'.  reg
│ │ │ -001eb220: 6973 7465 723a 206d 6f75 6e74 5f72 6573  ister: mount_res
│ │ │ -001eb230: 756c 740a 2020 6661 696c 6564 5f77 6865  ult.  failed_whe
│ │ │ -001eb240: 6e3a 0a20 202d 206d 6f75 6e74 5f72 6573  n:.  - mount_res
│ │ │ -001eb250: 756c 7420 6973 2066 6169 6c65 640a 2020  ult is failed.  
│ │ │ -001eb260: 2d20 2727 2774 6172 6765 7420 6973 2062  - '''target is b
│ │ │ -001eb270: 7573 7927 2720 6e6f 7420 696e 2028 6d6f  usy'' not in (mo
│ │ │ -001eb280: 756e 745f 7265 7375 6c74 2e6d 7367 207c  unt_result.msg |
│ │ │ -001eb290: 2064 6566 6175 6c74 2827 2727 2729 2927   default(''''))'
│ │ │ -001eb2a0: 0a20 202d 2027 2727 616c 7265 6164 7920  .  - '''already 
│ │ │ -001eb2b0: 6d6f 756e 7465 6427 2720 6e6f 7420 696e  mounted'' not in
│ │ │ -001eb2c0: 2028 6d6f 756e 745f 7265 7375 6c74 2e6d   (mount_result.m
│ │ │ -001eb2d0: 7367 207c 2064 6566 6175 6c74 2827 2727  sg | default('''
│ │ │ -001eb2e0: 2729 2927 0a20 2077 6865 6e3a 0a20 202d  '))'.  when:.  -
│ │ │ -001eb2f0: 2028 206e 6f74 2028 2022 6b65 726e 656c   ( not ( "kernel
│ │ │ -001eb300: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001eb310: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ -001eb320: 2262 6f6f 7463 2220 696e 2061 6e73 6962  "bootc" in ansib
│ │ │ -001eb330: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -001eb340: 730a 2020 2020 616e 6420 6e6f 7420 226f  s.    and not "o
│ │ │ -001eb350: 7065 6e73 6869 6674 2d6b 7562 656c 6574  penshift-kubelet
│ │ │ -001eb360: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001eb370: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ -001eb380: 226f 7374 7265 6522 2069 6e20 616e 7369  "ostree" in ansi
│ │ │ -001eb390: 626c 655f 7072 6f63 5f63 6d64 6c69 6e65  ble_proc_cmdline
│ │ │ -001eb3a0: 0a20 2020 2029 2061 6e64 206e 6f74 2028  .    ) and not (
│ │ │ -001eb3b0: 2061 6e73 6962 6c65 5f76 6972 7475 616c   ansible_virtual
│ │ │ -001eb3c0: 697a 6174 696f 6e5f 7479 7065 2069 6e20  ization_type in 
│ │ │ -001eb3d0: 5b22 646f 636b 6572 222c 2022 6c78 6322  ["docker", "lxc"
│ │ │ -001eb3e0: 2c20 226f 7065 6e76 7a22 2c20 2270 6f64  , "openvz", "pod
│ │ │ -001eb3f0: 6d61 6e22 2c0a 2020 2020 2263 6f6e 7461  man",.    "conta
│ │ │ -001eb400: 696e 6572 225d 2029 2029 0a20 202d 2027  iner"] ) ).  - '
│ │ │ -001eb410: 222f 746d 7022 2069 6e20 616e 7369 626c  "/tmp" in ansibl
│ │ │ -001eb420: 655f 6d6f 756e 7473 207c 206d 6170 2861  e_mounts | map(a
│ │ │ -001eb430: 7474 7269 6275 7465 3d22 6d6f 756e 7422  ttribute="mount"
│ │ │ -001eb440: 2920 7c20 6c69 7374 270a 2020 2d20 6d6f  ) | list'.  - mo
│ │ │ -001eb450: 756e 745f 696e 666f 2069 7320 6465 6669  unt_info is defi
│ │ │ -001eb460: 6e65 640a 2020 2d20 2864 6576 6963 655f  ned.  - (device_
│ │ │ -001eb470: 6e61 6d65 2e73 7464 6f75 7420 6973 2064  name.stdout is d
│ │ │ -001eb480: 6566 696e 6564 2061 6e64 2028 6465 7669  efined and (devi
│ │ │ -001eb490: 6365 5f6e 616d 652e 7374 646f 7574 207c  ce_name.stdout |
│ │ │ -001eb4a0: 206c 656e 6774 6820 2667 743b 2030 2929   length > 0))
│ │ │ -001eb4b0: 206f 7220 2822 2d2d 6673 7461 6222 0a20   or ("--fstab". 
│ │ │ -001eb4c0: 2020 207c 206c 656e 6774 6820 3d3d 2030     | length == 0
│ │ │ -001eb4d0: 290a 2020 7461 6773 3a0a 2020 2d20 4e49  ).  tags:.  - NI
│ │ │ -001eb4e0: 5354 2d38 3030 2d35 332d 4143 2d36 0a20  ST-800-53-AC-6. 
│ │ │ -001eb4f0: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ -001eb500: 432d 3628 3129 0a20 202d 204e 4953 542d  C-6(1).  - NIST-
│ │ │ -001eb510: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ -001eb520: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -001eb530: 4d2d 3728 6129 0a20 202d 204e 4953 542d  M-7(a).  - NIST-
│ │ │ -001eb540: 3830 302d 3533 2d43 4d2d 3728 6229 0a20  800-53-CM-7(b). 
│ │ │ -001eb550: 202d 204e 4953 542d 3830 302d 3533 2d4d   - NIST-800-53-M
│ │ │ -001eb560: 502d 370a 2020 2d20 636f 6e66 6967 7572  P-7.  - configur
│ │ │ -001eb570: 655f 7374 7261 7465 6779 0a20 202d 2068  e_strategy.  - h
│ │ │ -001eb580: 6967 685f 6469 7372 7570 7469 6f6e 0a20  igh_disruption. 
│ │ │ -001eb590: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ -001eb5a0: 790a 2020 2d20 6d65 6469 756d 5f73 6576  y.  - medium_sev
│ │ │ -001eb5b0: 6572 6974 790a 2020 2d20 6d6f 756e 745f  erity.  - mount_
│ │ │ -001eb5c0: 6f70 7469 6f6e 5f74 6d70 5f6e 6f65 7865  option_tmp_noexe
│ │ │ -001eb5d0: 630a 2020 2d20 6e6f 5f72 6562 6f6f 745f  c.  - no_reboot_
│ │ │ -001eb5e0: 6e65 6564 6564 0a3c 2f63 6f64 653e 3c2f  needed.
Remediati │ │ │ -001eb6a0: 6f6e 2053 6865 6c6c 2073 6372 6970 7420 on Shell script │ │ │ -001eb6b0: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
Reboot:false< │ │ │ -001eb750: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
# Remedia
│ │ │ -001eb770: 7469 6f6e 2069 7320 6170 706c 6963 6162  tion is applicab
│ │ │ -001eb780: 6c65 206f 6e6c 7920 696e 2063 6572 7461  le only in certa
│ │ │ -001eb790: 696e 2070 6c61 7466 6f72 6d73 0a69 6620  in platforms.if 
│ │ │ -001eb7a0: 2820 2120 2820 7b20 7270 6d20 2d2d 7175  ( ! ( { rpm --qu
│ │ │ -001eb7b0: 6965 7420 2d71 206b 6572 6e65 6c20 3b7d  iet -q kernel ;}
│ │ │ -001eb7c0: 2026 616d 703b 2661 6d70 3b20 7b20 7270   && { rp
│ │ │ -001eb7d0: 6d20 2d2d 7175 6965 7420 2d71 2062 6f6f  m --quiet -q boo
│ │ │ -001eb7e0: 7463 203b 7d20 2661 6d70 3b26 616d 703b  tc ;} &&
│ │ │ -001eb7f0: 207b 2021 2072 706d 202d 2d71 7569 6574   { ! rpm --quiet
│ │ │ -001eb800: 202d 7120 6f70 656e 7368 6966 742d 6b75   -q openshift-ku
│ │ │ -001eb810: 6265 6c65 7420 3b7d 2026 616d 703b 2661  belet ;} &&a
│ │ │ -001eb820: 6d70 3b20 285b 202d 6620 2f72 756e 2f6f  mp; ([ -f /run/o
│ │ │ -001eb830: 7374 7265 652d 626f 6f74 6564 205d 207c  stree-booted ] |
│ │ │ -001eb840: 7c20 5b20 2d4c 202f 6f73 7472 6565 205d  | [ -L /ostree ]
│ │ │ -001eb850: 2920 2920 2661 6d70 3b26 616d 703b 2021  ) ) && !
│ │ │ -001eb860: 2028 205b 202d 6620 2f2e 646f 636b 6572   ( [ -f /.docker
│ │ │ -001eb870: 656e 7620 5d20 7c7c 205b 202d 6620 2f72  env ] || [ -f /r
│ │ │ -001eb880: 756e 2f2e 636f 6e74 6169 6e65 7265 6e76  un/.containerenv
│ │ │ -001eb890: 205d 2029 2029 2026 616d 703b 2661 6d70   ] ) ) &&
│ │ │ -001eb8a0: 3b20 7b20 2820 6669 6e64 6d6e 7420 2d2d  ; { ( findmnt --
│ │ │ -001eb8b0: 6b65 726e 656c 2022 2f74 6d70 2220 2667  kernel "/tmp" &g
│ │ │ -001eb8c0: 743b 202f 6465 762f 6e75 6c6c 207c 7c20  t; /dev/null || 
│ │ │ -001eb8d0: 6669 6e64 6d6e 7420 2d2d 6673 7461 6220  findmnt --fstab 
│ │ │ -001eb8e0: 222f 746d 7022 2026 6774 3b20 2f64 6576  "/tmp" > /dev
│ │ │ -001eb8f0: 2f6e 756c 6c20 293b 207d 3b20 7468 656e  /null ); }; then
│ │ │ -001eb900: 0a0a 6675 6e63 7469 6f6e 2070 6572 666f  ..function perfo
│ │ │ -001eb910: 726d 5f72 656d 6564 6961 7469 6f6e 207b  rm_remediation {
│ │ │ -001eb920: 0a0a 2020 2020 0a20 2020 2020 2020 2023  ..    .        #
│ │ │ -001eb930: 2074 6865 206d 6f75 6e74 2070 6f69 6e74   the mount point
│ │ │ -001eb940: 202f 746d 7020 6861 7320 746f 2062 6520   /tmp has to be 
│ │ │ -001eb950: 6465 6669 6e65 6420 696e 202f 6574 632f  defined in /etc/
│ │ │ -001eb960: 6673 7461 620a 2020 2020 2020 2020 2320  fstab.        # 
│ │ │ -001eb970: 6265 666f 7265 2074 6869 7320 7265 6d65  before this reme
│ │ │ -001eb980: 6469 6174 696f 6e20 6361 6e20 6265 2065  diation can be e
│ │ │ -001eb990: 7865 6375 7465 642e 2049 6e20 6361 7365  xecuted. In case
│ │ │ -001eb9a0: 2069 7420 6973 206e 6f74 2064 6566 696e   it is not defin
│ │ │ -001eb9b0: 6564 2c20 7468 650a 2020 2020 2020 2020  ed, the.        
│ │ │ -001eb9c0: 2320 7265 6d65 6469 6174 696f 6e20 6162  # remediation ab
│ │ │ -001eb9d0: 6f72 7473 2061 6e64 206e 6f20 6368 616e  orts and no chan
│ │ │ -001eb9e0: 6765 7320 7265 6761 7264 696e 6720 7468  ges regarding th
│ │ │ -001eb9f0: 6520 6d6f 756e 7420 706f 696e 7420 6172  e mount point ar
│ │ │ -001eba00: 6520 646f 6e65 2e0a 2020 2020 2020 2020  e done..        
│ │ │ -001eba10: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ -001eba20: 685f 7265 6765 7870 3d22 2428 7072 696e  h_regexp="$(prin
│ │ │ -001eba30: 7466 2022 5e5b 5b3a 7370 6163 653a 5d5d  tf "^[[:space:]]
│ │ │ -001eba40: 2a5b 5e23 5d2e 2a5b 5b3a 7370 6163 653a  *[^#].*[[:space:
│ │ │ -001eba50: 5d5d 2573 5b5b 3a73 7061 6365 3a5d 5d22  ]]%s[[:space:]]"
│ │ │ -001eba60: 2022 2f74 6d70 2229 220a 0a20 2020 2067   "/tmp")"..    g
│ │ │ -001eba70: 7265 7020 2224 6d6f 756e 745f 706f 696e  rep "$mount_poin
│ │ │ -001eba80: 745f 6d61 7463 685f 7265 6765 7870 2220  t_match_regexp" 
│ │ │ -001eba90: 2d71 202f 6574 632f 6673 7461 6220 5c0a  -q /etc/fstab \.
│ │ │ -001ebaa0: 2020 2020 2020 2020 7c7c 207b 2065 6368          || { ech
│ │ │ -001ebab0: 6f20 2254 6865 206d 6f75 6e74 2070 6f69  o "The mount poi
│ │ │ -001ebac0: 6e74 2027 2f74 6d70 2720 6973 206e 6f74  nt '/tmp' is not
│ │ │ -001ebad0: 2065 7665 6e20 696e 202f 6574 632f 6673   even in /etc/fs
│ │ │ -001ebae0: 7461 622c 2073 6f20 7765 2063 616e 2774  tab, so we can't
│ │ │ -001ebaf0: 2073 6574 2075 7020 6d6f 756e 7420 6f70   set up mount op
│ │ │ -001ebb00: 7469 6f6e 7322 2026 6774 3b26 616d 703b  tions" >&
│ │ │ -001ebb10: 323b 0a20 2020 2020 2020 2020 2020 2020  2;.             
│ │ │ -001ebb20: 2020 2065 6368 6f20 224e 6f74 2072 656d     echo "Not rem
│ │ │ -001ebb30: 6564 6961 7469 6e67 2c20 6265 6361 7573  ediating, becaus
│ │ │ -001ebb40: 6520 7468 6572 6520 6973 206e 6f20 7265  e there is no re
│ │ │ -001ebb50: 636f 7264 206f 6620 2f74 6d70 2069 6e20  cord of /tmp in 
│ │ │ -001ebb60: 2f65 7463 2f66 7374 6162 2220 2667 743b  /etc/fstab" >
│ │ │ -001ebb70: 2661 6d70 3b32 3b20 7265 7475 726e 2031  &2; return 1
│ │ │ -001ebb80: 3b20 7d0a 2020 2020 0a0a 0a20 2020 206d  ; }.    ...    m
│ │ │ -001ebb90: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ -001ebba0: 5f72 6567 6578 703d 2224 2870 7269 6e74  _regexp="$(print
│ │ │ -001ebbb0: 6620 225e 5b5b 3a73 7061 6365 3a5d 5d2a  f "^[[:space:]]*
│ │ │ -001ebbc0: 5b5e 235d 2e2a 5b5b 3a73 7061 6365 3a5d  [^#].*[[:space:]
│ │ │ -001ebbd0: 5d25 735b 5b3a 7370 6163 653a 5d5d 2220  ]%s[[:space:]]" 
│ │ │ -001ebbe0: 2f74 6d70 2922 0a0a 2020 2020 2320 4966  /tmp)"..    # If
│ │ │ -001ebbf0: 2074 6865 206d 6f75 6e74 2070 6f69 6e74   the mount point
│ │ │ -001ebc00: 2069 7320 6e6f 7420 696e 202f 6574 632f   is not in /etc/
│ │ │ -001ebc10: 6673 7461 622c 2067 6574 2070 7265 7669  fstab, get previ
│ │ │ -001ebc20: 6f75 7320 6d6f 756e 7420 6f70 7469 6f6e  ous mount option
│ │ │ -001ebc30: 7320 6672 6f6d 202f 6574 632f 6d74 6162  s from /etc/mtab
│ │ │ -001ebc40: 0a20 2020 2069 6620 2120 6772 6570 202d  .    if ! grep -
│ │ │ -001ebc50: 7120 2224 6d6f 756e 745f 706f 696e 745f  q "$mount_point_
│ │ │ -001ebc60: 6d61 7463 685f 7265 6765 7870 2220 2f65  match_regexp" /e
│ │ │ -001ebc70: 7463 2f66 7374 6162 3b20 7468 656e 0a20  tc/fstab; then. 
│ │ │ -001ebc80: 2020 2020 2020 2023 2072 756e 7469 6d65         # runtime
│ │ │ -001ebc90: 206f 7074 7320 7769 7468 6f75 7420 736f   opts without so
│ │ │ -001ebca0: 6d65 2061 7574 6f6d 6174 6963 206b 6572  me automatic ker
│ │ │ -001ebcb0: 6e65 6c2f 7573 6572 7370 6163 652d 6164  nel/userspace-ad
│ │ │ -001ebcc0: 6465 6420 6465 6661 756c 7473 0a20 2020  ded defaults.   
│ │ │ -001ebcd0: 2020 2020 2070 7265 7669 6f75 735f 6d6f       previous_mo
│ │ │ -001ebce0: 756e 745f 6f70 7473 3d24 2867 7265 7020  unt_opts=$(grep 
│ │ │ -001ebcf0: 2224 6d6f 756e 745f 706f 696e 745f 6d61  "$mount_point_ma
│ │ │ -001ebd00: 7463 685f 7265 6765 7870 2220 2f65 7463  tch_regexp" /etc
│ │ │ -001ebd10: 2f6d 7461 6220 7c20 6865 6164 202d 3120  /mtab | head -1 
│ │ │ -001ebd20: 7c20 2061 776b 2027 7b70 7269 6e74 2024  |  awk '{print $
│ │ │ -001ebd30: 347d 2720 5c0a 2020 2020 2020 2020 2020  4}' \.          
│ │ │ -001ebd40: 2020 2020 2020 2020 2020 7c20 7365 6420            | sed 
│ │ │ -001ebd50: 2d45 2022 732f 2872 777c 6465 6661 756c  -E "s/(rw|defaul
│ │ │ -001ebd60: 7473 7c73 6563 6c61 6265 6c7c 6e6f 6578  ts|seclabel|noex
│ │ │ -001ebd70: 6563 2928 2c7c 2429 2f2f 673b 732f 2c24  ec)(,|$)//g;s/,$
│ │ │ -001ebd80: 2f2f 2229 0a20 2020 2020 2020 205b 2022  //").        [ "
│ │ │ -001ebd90: 2470 7265 7669 6f75 735f 6d6f 756e 745f  $previous_mount_
│ │ │ -001ebda0: 6f70 7473 2220 5d20 2661 6d70 3b26 616d  opts" ] &&am
│ │ │ -001ebdb0: 703b 2070 7265 7669 6f75 735f 6d6f 756e  p; previous_moun
│ │ │ -001ebdc0: 745f 6f70 7473 2b3d 222c 220a 2020 2020  t_opts+=",".    
│ │ │ -001ebdd0: 2020 2020 2320 496e 2069 736f 3936 3630      # In iso9660
│ │ │ -001ebde0: 2066 696c 6573 7973 7465 6d73 206d 7461   filesystems mta
│ │ │ -001ebdf0: 6220 636f 756c 6420 6465 7363 7269 6265  b could describe
│ │ │ -001ebe00: 2061 2022 626c 6f63 6b73 697a 6522 2076   a "blocksize" v
│ │ │ -001ebe10: 616c 7565 2c20 7468 6973 2073 686f 756c  alue, this shoul
│ │ │ -001ebe20: 6420 6265 2072 6566 6c65 6374 6564 2069  d be reflected i
│ │ │ -001ebe30: 6e0a 2020 2020 2020 2020 2320 6673 7461  n.        # fsta
│ │ │ -001ebe40: 6220 6173 2022 626c 6f63 6b22 2e20 2054  b as "block".  T
│ │ │ -001ebe50: 6865 206e 6578 7420 7661 7269 6162 6c65  he next variable
│ │ │ -001ebe60: 2069 7320 746f 2073 6174 6973 6679 2073   is to satisfy s
│ │ │ -001ebe70: 6865 6c6c 6368 6563 6b20 5343 3230 3530  hellcheck SC2050
│ │ │ -001ebe80: 2e0a 2020 2020 2020 2020 6673 5f74 7970  ..        fs_typ
│ │ │ -001ebe90: 653d 2222 0a20 2020 2020 2020 2069 6620  e="".        if 
│ │ │ -001ebea0: 5b20 2022 2466 735f 7479 7065 2220 3d3d  [  "$fs_type" ==
│ │ │ -001ebeb0: 2022 6973 6f39 3636 3022 205d 203b 2074   "iso9660" ] ; t
│ │ │ -001ebec0: 6865 6e0a 2020 2020 2020 2020 2020 2020  hen.            
│ │ │ -001ebed0: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ -001ebee0: 7074 733d 2428 7365 6420 2773 2f62 6c6f  pts=$(sed 's/blo
│ │ │ -001ebef0: 636b 7369 7a65 3d2f 626c 6f63 6b3d 2f27  cksize=/block=/'
│ │ │ -001ebf00: 2026 6c74 3b26 6c74 3b26 6c74 3b20 2224   <<< "$
│ │ │ -001ebf10: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ -001ebf20: 7074 7322 290a 2020 2020 2020 2020 6669  pts").        fi
│ │ │ -001ebf30: 0a20 2020 2020 2020 2065 6368 6f20 2220  .        echo " 
│ │ │ -001ebf40: 2f74 6d70 2020 6465 6661 756c 7473 2c24  /tmp  defaults,$
│ │ │ -001ebf50: 7b70 7265 7669 6f75 735f 6d6f 756e 745f  {previous_mount_
│ │ │ -001ebf60: 6f70 7473 7d6e 6f65 7865 6320 3020 3022  opts}noexec 0 0"
│ │ │ -001ebf70: 2026 6774 3b26 6774 3b20 2f65 7463 2f66   >> /etc/f
│ │ │ -001ebf80: 7374 6162 0a20 2020 2023 2049 6620 7468  stab.    # If th
│ │ │ -001ebf90: 6520 6d6f 756e 745f 6f70 7420 6f70 7469  e mount_opt opti
│ │ │ -001ebfa0: 6f6e 2069 7320 6e6f 7420 616c 7265 6164  on is not alread
│ │ │ -001ebfb0: 7920 696e 2074 6865 206d 6f75 6e74 2070  y in the mount p
│ │ │ -001ebfc0: 6f69 6e74 2773 202f 6574 632f 6673 7461  oint's /etc/fsta
│ │ │ -001ebfd0: 6220 656e 7472 792c 2061 6464 2069 740a  b entry, add it.
│ │ │ -001ebfe0: 2020 2020 656c 6966 2021 2067 7265 7020      elif ! grep 
│ │ │ -001ebff0: 2224 6d6f 756e 745f 706f 696e 745f 6d61  "$mount_point_ma
│ │ │ -001ec000: 7463 685f 7265 6765 7870 2220 2f65 7463  tch_regexp" /etc
│ │ │ -001ec010: 2f66 7374 6162 207c 2067 7265 7020 2d71  /fstab | grep -q
│ │ │ -001ec020: 2022 6e6f 6578 6563 223b 2074 6865 6e0a   "noexec"; then.
│ │ │ -001ec030: 2020 2020 2020 2020 7072 6576 696f 7573          previous
│ │ │ -001ec040: 5f6d 6f75 6e74 5f6f 7074 733d 2428 6772  _mount_opts=$(gr
│ │ │ -001ec050: 6570 2022 246d 6f75 6e74 5f70 6f69 6e74  ep "$mount_point
│ │ │ -001ec060: 5f6d 6174 6368 5f72 6567 6578 7022 202f  _match_regexp" /
│ │ │ -001ec070: 6574 632f 6673 7461 6220 7c20 6177 6b20  etc/fstab | awk 
│ │ │ -001ec080: 277b 7072 696e 7420 2434 7d27 290a 2020  '{print $4}').  
│ │ │ -001ec090: 2020 2020 2020 7365 6420 2d69 2022 737c        sed -i "s|
│ │ │ -001ec0a0: 5c28 247b 6d6f 756e 745f 706f 696e 745f  \(${mount_point_
│ │ │ -001ec0b0: 6d61 7463 685f 7265 6765 7870 7d2e 2a24  match_regexp}.*$
│ │ │ -001ec0c0: 7b70 7265 7669 6f75 735f 6d6f 756e 745f  {previous_mount_
│ │ │ -001ec0d0: 6f70 7473 7d5c 297c 5c31 2c6e 6f65 7865  opts}\)|\1,noexe
│ │ │ -001ec0e0: 637c 2220 2f65 7463 2f66 7374 6162 0a20  c|" /etc/fstab. 
│ │ │ -001ec0f0: 2020 2066 690a 0a0a 2020 2020 6966 206d     fi...    if m
│ │ │ -001ec100: 6b64 6972 202d 7020 222f 746d 7022 3b20  kdir -p "/tmp"; 
│ │ │ -001ec110: 7468 656e 0a20 2020 2020 2020 2069 6620  then.        if 
│ │ │ -001ec120: 6d6f 756e 7470 6f69 6e74 202d 7120 222f  mountpoint -q "/
│ │ │ -001ec130: 746d 7022 3b20 7468 656e 0a20 2020 2020  tmp"; then.     
│ │ │ -001ec140: 2020 2020 2020 206d 6f75 6e74 202d 6f20         mount -o 
│ │ │ -001ec150: 7265 6d6f 756e 7420 2d2d 7461 7267 6574  remount --target
│ │ │ -001ec160: 2022 2f74 6d70 220a 2020 2020 2020 2020   "/tmp".        
│ │ │ -001ec170: 6669 0a20 2020 2066 690a 7d0a 0a70 6572  fi.    fi.}..per
│ │ │ -001ec180: 666f 726d 5f72 656d 6564 6961 7469 6f6e  form_remediation
│ │ │ -001ec190: 0a0a 656c 7365 0a20 2020 2026 6774 3b26  ..else.    >&
│ │ │ -001ec1a0: 616d 703b 3220 6563 686f 2027 5265 6d65  amp;2 echo 'Reme
│ │ │ -001ec1b0: 6469 6174 696f 6e20 6973 206e 6f74 2061  diation is not a
│ │ │ -001ec1c0: 7070 6c69 6361 626c 652c 206e 6f74 6869  pplicable, nothi
│ │ │ -001ec1d0: 6e67 2077 6173 2064 6f6e 6527 0a66 690a  ng was done'.fi.
│ │ │ +001e9c90: 6469 6174 696f 6e20 416e 7369 626c 6520  diation Ansible 
│ │ │ +001e9ca0: 736e 6970 7065 7420 e287 b23c 2f61 3e3c  snippet ...<
│ │ │ +001e9cb0: 6272 3e3c 6469 7620 636c 6173 733d 2270  br>
< │ │ │ +001e9da0: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
-
│ │ │ +001e9de0: 206e 616d 653a 2047 6174 6865 7220 7468   name: Gather th
│ │ │ +001e9df0: 6520 7061 636b 6167 6520 6661 6374 730a  e package facts.
│ │ │ +001e9e00: 2020 7061 636b 6167 655f 6661 6374 733a    package_facts:
│ │ │ +001e9e10: 0a20 2020 206d 616e 6167 6572 3a20 6175  .    manager: au
│ │ │ +001e9e20: 746f 0a20 2074 6167 733a 0a20 202d 204e  to.  tags:.  - N
│ │ │ +001e9e30: 4953 542d 3830 302d 3533 2d41 432d 360a  IST-800-53-AC-6.
│ │ │ +001e9e40: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001e9e50: 4143 2d36 2831 290a 2020 2d20 4e49 5354  AC-6(1).  - NIST
│ │ │ +001e9e60: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ +001e9e70: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001e9e80: 434d 2d37 2861 290a 2020 2d20 4e49 5354  CM-7(a).  - NIST
│ │ │ +001e9e90: 2d38 3030 2d35 332d 434d 2d37 2862 290a  -800-53-CM-7(b).
│ │ │ +001e9ea0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001e9eb0: 4d50 2d37 0a20 202d 2063 6f6e 6669 6775  MP-7.  - configu
│ │ │ +001e9ec0: 7265 5f73 7472 6174 6567 790a 2020 2d20  re_strategy.  - 
│ │ │ +001e9ed0: 6869 6768 5f64 6973 7275 7074 696f 6e0a  high_disruption.
│ │ │ +001e9ee0: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ +001e9ef0: 7479 0a20 202d 206d 6564 6975 6d5f 7365  ty.  - medium_se
│ │ │ +001e9f00: 7665 7269 7479 0a20 202d 206d 6f75 6e74  verity.  - mount
│ │ │ +001e9f10: 5f6f 7074 696f 6e5f 746d 705f 6e6f 6578  _option_tmp_noex
│ │ │ +001e9f20: 6563 0a20 202d 206e 6f5f 7265 626f 6f74  ec.  - no_reboot
│ │ │ +001e9f30: 5f6e 6565 6465 640a 0a2d 206e 616d 653a  _needed..- name:
│ │ │ +001e9f40: 2027 4164 6420 6e6f 6578 6563 204f 7074   'Add noexec Opt
│ │ │ +001e9f50: 696f 6e20 746f 202f 746d 703a 2043 6865  ion to /tmp: Che
│ │ │ +001e9f60: 636b 2069 6e66 6f72 6d61 7469 6f6e 2061  ck information a
│ │ │ +001e9f70: 7373 6f63 6961 7465 6420 746f 206d 6f75  ssociated to mou
│ │ │ +001e9f80: 6e74 706f 696e 7427 0a20 2061 6e73 6962  ntpoint'.  ansib
│ │ │ +001e9f90: 6c65 2e62 7569 6c74 696e 2e63 6f6d 6d61  le.builtin.comma
│ │ │ +001e9fa0: 6e64 3a20 6669 6e64 6d6e 7420 2d2d 6673  nd: findmnt --fs
│ │ │ +001e9fb0: 7461 6220 272f 746d 7027 0a20 2072 6567  tab '/tmp'.  reg
│ │ │ +001e9fc0: 6973 7465 723a 2064 6576 6963 655f 6e61  ister: device_na
│ │ │ +001e9fd0: 6d65 0a20 2066 6169 6c65 645f 7768 656e  me.  failed_when
│ │ │ +001e9fe0: 3a20 6465 7669 6365 5f6e 616d 652e 7263  : device_name.rc
│ │ │ +001e9ff0: 2026 6774 3b20 310a 2020 6368 616e 6765   > 1.  change
│ │ │ +001ea000: 645f 7768 656e 3a20 6661 6c73 650a 2020  d_when: false.  
│ │ │ +001ea010: 6368 6563 6b5f 6d6f 6465 3a20 6661 6c73  check_mode: fals
│ │ │ +001ea020: 650a 2020 7768 656e 3a0a 2020 2d20 2820  e.  when:.  - ( 
│ │ │ +001ea030: 6e6f 7420 2820 226b 6572 6e65 6c22 2069  not ( "kernel" i
│ │ │ +001ea040: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001ea050: 7061 636b 6167 6573 2061 6e64 2022 626f  packages and "bo
│ │ │ +001ea060: 6f74 6322 2069 6e20 616e 7369 626c 655f  otc" in ansible_
│ │ │ +001ea070: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ +001ea080: 2020 2061 6e64 206e 6f74 2022 6f70 656e     and not "open
│ │ │ +001ea090: 7368 6966 742d 6b75 6265 6c65 7422 2069  shift-kubelet" i
│ │ │ +001ea0a0: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001ea0b0: 7061 636b 6167 6573 2061 6e64 2022 6f73  packages and "os
│ │ │ +001ea0c0: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ +001ea0d0: 5f70 726f 635f 636d 646c 696e 650a 2020  _proc_cmdline.  
│ │ │ +001ea0e0: 2020 2920 616e 6420 6e6f 7420 2820 616e    ) and not ( an
│ │ │ +001ea0f0: 7369 626c 655f 7669 7274 7561 6c69 7a61  sible_virtualiza
│ │ │ +001ea100: 7469 6f6e 5f74 7970 6520 696e 205b 2264  tion_type in ["d
│ │ │ +001ea110: 6f63 6b65 7222 2c20 226c 7863 222c 2022  ocker", "lxc", "
│ │ │ +001ea120: 6f70 656e 767a 222c 2022 706f 646d 616e  openvz", "podman
│ │ │ +001ea130: 222c 0a20 2020 2022 636f 6e74 6169 6e65  ",.    "containe
│ │ │ +001ea140: 7222 5d20 2920 290a 2020 2d20 2722 2f74  r"] ) ).  - '"/t
│ │ │ +001ea150: 6d70 2220 696e 2061 6e73 6962 6c65 5f6d  mp" in ansible_m
│ │ │ +001ea160: 6f75 6e74 7320 7c20 6d61 7028 6174 7472  ounts | map(attr
│ │ │ +001ea170: 6962 7574 653d 226d 6f75 6e74 2229 207c  ibute="mount") |
│ │ │ +001ea180: 206c 6973 7427 0a20 2074 6167 733a 0a20   list'.  tags:. 
│ │ │ +001ea190: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ +001ea1a0: 432d 360a 2020 2d20 4e49 5354 2d38 3030  C-6.  - NIST-800
│ │ │ +001ea1b0: 2d35 332d 4143 2d36 2831 290a 2020 2d20  -53-AC-6(1).  - 
│ │ │ +001ea1c0: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ +001ea1d0: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ +001ea1e0: 2d35 332d 434d 2d37 2861 290a 2020 2d20  -53-CM-7(a).  - 
│ │ │ +001ea1f0: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ +001ea200: 2862 290a 2020 2d20 4e49 5354 2d38 3030  (b).  - NIST-800
│ │ │ +001ea210: 2d35 332d 4d50 2d37 0a20 202d 2063 6f6e  -53-MP-7.  - con
│ │ │ +001ea220: 6669 6775 7265 5f73 7472 6174 6567 790a  figure_strategy.
│ │ │ +001ea230: 2020 2d20 6869 6768 5f64 6973 7275 7074    - high_disrupt
│ │ │ +001ea240: 696f 6e0a 2020 2d20 6c6f 775f 636f 6d70  ion.  - low_comp
│ │ │ +001ea250: 6c65 7869 7479 0a20 202d 206d 6564 6975  lexity.  - mediu
│ │ │ +001ea260: 6d5f 7365 7665 7269 7479 0a20 202d 206d  m_severity.  - m
│ │ │ +001ea270: 6f75 6e74 5f6f 7074 696f 6e5f 746d 705f  ount_option_tmp_
│ │ │ +001ea280: 6e6f 6578 6563 0a20 202d 206e 6f5f 7265  noexec.  - no_re
│ │ │ +001ea290: 626f 6f74 5f6e 6565 6465 640a 0a2d 206e  boot_needed..- n
│ │ │ +001ea2a0: 616d 653a 2027 4164 6420 6e6f 6578 6563  ame: 'Add noexec
│ │ │ +001ea2b0: 204f 7074 696f 6e20 746f 202f 746d 703a   Option to /tmp:
│ │ │ +001ea2c0: 2043 7265 6174 6520 6d6f 756e 745f 696e   Create mount_in
│ │ │ +001ea2d0: 666f 2064 6963 7469 6f6e 6172 7920 7661  fo dictionary va
│ │ │ +001ea2e0: 7269 6162 6c65 270a 2020 7365 745f 6661  riable'.  set_fa
│ │ │ +001ea2f0: 6374 3a0a 2020 2020 6d6f 756e 745f 696e  ct:.    mount_in
│ │ │ +001ea300: 666f 3a20 277b 7b20 6d6f 756e 745f 696e  fo: '{{ mount_in
│ │ │ +001ea310: 666f 7c64 6566 6175 6c74 287b 7d29 7c63  fo|default({})|c
│ │ │ +001ea320: 6f6d 6269 6e65 287b 6974 656d 2e30 3a20  ombine({item.0: 
│ │ │ +001ea330: 6974 656d 2e31 7d29 207d 7d27 0a20 2077  item.1}) }}'.  w
│ │ │ +001ea340: 6974 685f 746f 6765 7468 6572 3a0a 2020  ith_together:.  
│ │ │ +001ea350: 2d20 277b 7b20 6465 7669 6365 5f6e 616d  - '{{ device_nam
│ │ │ +001ea360: 652e 7374 646f 7574 5f6c 696e 6573 5b30  e.stdout_lines[0
│ │ │ +001ea370: 5d2e 7370 6c69 7428 2920 7c20 6d61 7028  ].split() | map(
│ │ │ +001ea380: 2727 6c6f 7765 7227 2729 207c 206c 6973  ''lower'') | lis
│ │ │ +001ea390: 7420 7d7d 270a 2020 2d20 277b 7b20 6465  t }}'.  - '{{ de
│ │ │ +001ea3a0: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ +001ea3b0: 5f6c 696e 6573 5b31 5d2e 7370 6c69 7428  _lines[1].split(
│ │ │ +001ea3c0: 2920 7c20 6c69 7374 207d 7d27 0a20 2077  ) | list }}'.  w
│ │ │ +001ea3d0: 6865 6e3a 0a20 202d 2028 206e 6f74 2028  hen:.  - ( not (
│ │ │ +001ea3e0: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ +001ea3f0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001ea400: 6765 7320 616e 6420 2262 6f6f 7463 2220  ges and "bootc" 
│ │ │ +001ea410: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001ea420: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ +001ea430: 6420 6e6f 7420 226f 7065 6e73 6869 6674  d not "openshift
│ │ │ +001ea440: 2d6b 7562 656c 6574 2220 696e 2061 6e73  -kubelet" in ans
│ │ │ +001ea450: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001ea460: 6765 7320 616e 6420 226f 7374 7265 6522  ges and "ostree"
│ │ │ +001ea470: 2069 6e20 616e 7369 626c 655f 7072 6f63   in ansible_proc
│ │ │ +001ea480: 5f63 6d64 6c69 6e65 0a20 2020 2029 2061  _cmdline.    ) a
│ │ │ +001ea490: 6e64 206e 6f74 2028 2061 6e73 6962 6c65  nd not ( ansible
│ │ │ +001ea4a0: 5f76 6972 7475 616c 697a 6174 696f 6e5f  _virtualization_
│ │ │ +001ea4b0: 7479 7065 2069 6e20 5b22 646f 636b 6572  type in ["docker
│ │ │ +001ea4c0: 222c 2022 6c78 6322 2c20 226f 7065 6e76  ", "lxc", "openv
│ │ │ +001ea4d0: 7a22 2c20 2270 6f64 6d61 6e22 2c0a 2020  z", "podman",.  
│ │ │ +001ea4e0: 2020 2263 6f6e 7461 696e 6572 225d 2029    "container"] )
│ │ │ +001ea4f0: 2029 0a20 202d 2027 222f 746d 7022 2069   ).  - '"/tmp" i
│ │ │ +001ea500: 6e20 616e 7369 626c 655f 6d6f 756e 7473  n ansible_mounts
│ │ │ +001ea510: 207c 206d 6170 2861 7474 7269 6275 7465   | map(attribute
│ │ │ +001ea520: 3d22 6d6f 756e 7422 2920 7c20 6c69 7374  ="mount") | list
│ │ │ +001ea530: 270a 2020 2d20 6465 7669 6365 5f6e 616d  '.  - device_nam
│ │ │ +001ea540: 652e 7374 646f 7574 2069 7320 6465 6669  e.stdout is defi
│ │ │ +001ea550: 6e65 6420 616e 6420 6465 7669 6365 5f6e  ned and device_n
│ │ │ +001ea560: 616d 652e 7374 646f 7574 5f6c 696e 6573  ame.stdout_lines
│ │ │ +001ea570: 2069 7320 6465 6669 6e65 640a 2020 2d20   is defined.  - 
│ │ │ +001ea580: 2864 6576 6963 655f 6e61 6d65 2e73 7464  (device_name.std
│ │ │ +001ea590: 6f75 7420 7c20 6c65 6e67 7468 2026 6774  out | length >
│ │ │ +001ea5a0: 3b20 3029 0a20 2074 6167 733a 0a20 202d  ; 0).  tags:.  -
│ │ │ +001ea5b0: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ +001ea5c0: 360a 2020 2d20 4e49 5354 2d38 3030 2d35  6.  - NIST-800-5
│ │ │ +001ea5d0: 332d 4143 2d36 2831 290a 2020 2d20 4e49  3-AC-6(1).  - NI
│ │ │ +001ea5e0: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ +001ea5f0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001ea600: 332d 434d 2d37 2861 290a 2020 2d20 4e49  3-CM-7(a).  - NI
│ │ │ +001ea610: 5354 2d38 3030 2d35 332d 434d 2d37 2862  ST-800-53-CM-7(b
│ │ │ +001ea620: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001ea630: 332d 4d50 2d37 0a20 202d 2063 6f6e 6669  3-MP-7.  - confi
│ │ │ +001ea640: 6775 7265 5f73 7472 6174 6567 790a 2020  gure_strategy.  
│ │ │ +001ea650: 2d20 6869 6768 5f64 6973 7275 7074 696f  - high_disruptio
│ │ │ +001ea660: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65  n.  - low_comple
│ │ │ +001ea670: 7869 7479 0a20 202d 206d 6564 6975 6d5f  xity.  - medium_
│ │ │ +001ea680: 7365 7665 7269 7479 0a20 202d 206d 6f75  severity.  - mou
│ │ │ +001ea690: 6e74 5f6f 7074 696f 6e5f 746d 705f 6e6f  nt_option_tmp_no
│ │ │ +001ea6a0: 6578 6563 0a20 202d 206e 6f5f 7265 626f  exec.  - no_rebo
│ │ │ +001ea6b0: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d  ot_needed..- nam
│ │ │ +001ea6c0: 653a 2027 4164 6420 6e6f 6578 6563 204f  e: 'Add noexec O
│ │ │ +001ea6d0: 7074 696f 6e20 746f 202f 746d 703a 2049  ption to /tmp: I
│ │ │ +001ea6e0: 6620 2f74 6d70 206e 6f74 206d 6f75 6e74  f /tmp not mount
│ │ │ +001ea6f0: 6564 2c20 6372 6166 7420 6d6f 756e 745f  ed, craft mount_
│ │ │ +001ea700: 696e 666f 206d 616e 7561 6c6c 7927 0a20  info manually'. 
│ │ │ +001ea710: 2073 6574 5f66 6163 743a 0a20 2020 206d   set_fact:.    m
│ │ │ +001ea720: 6f75 6e74 5f69 6e66 6f3a 2027 7b7b 206d  ount_info: '{{ m
│ │ │ +001ea730: 6f75 6e74 5f69 6e66 6f7c 6465 6661 756c  ount_info|defaul
│ │ │ +001ea740: 7428 7b7d 297c 636f 6d62 696e 6528 7b69  t({})|combine({i
│ │ │ +001ea750: 7465 6d2e 303a 2069 7465 6d2e 317d 2920  tem.0: item.1}) 
│ │ │ +001ea760: 7d7d 270a 2020 7769 7468 5f74 6f67 6574  }}'.  with_toget
│ │ │ +001ea770: 6865 723a 0a20 202d 202d 2074 6172 6765  her:.  - - targe
│ │ │ +001ea780: 740a 2020 2020 2d20 736f 7572 6365 0a20  t.    - source. 
│ │ │ +001ea790: 2020 202d 2066 7374 7970 650a 2020 2020     - fstype.    
│ │ │ +001ea7a0: 2d20 6f70 7469 6f6e 730a 2020 2d20 2d20  - options.  - - 
│ │ │ +001ea7b0: 2f74 6d70 0a20 2020 202d 2027 270a 2020  /tmp.    - ''.  
│ │ │ +001ea7c0: 2020 2d20 2727 0a20 2020 202d 2064 6566    - ''.    - def
│ │ │ +001ea7d0: 6175 6c74 730a 2020 7768 656e 3a0a 2020  aults.  when:.  
│ │ │ +001ea7e0: 2d20 2820 6e6f 7420 2820 226b 6572 6e65  - ( not ( "kerne
│ │ │ +001ea7f0: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ +001ea800: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ +001ea810: 2022 626f 6f74 6322 2069 6e20 616e 7369   "bootc" in ansi
│ │ │ +001ea820: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001ea830: 6573 0a20 2020 2061 6e64 206e 6f74 2022  es.    and not "
│ │ │ +001ea840: 6f70 656e 7368 6966 742d 6b75 6265 6c65  openshift-kubele
│ │ │ +001ea850: 7422 2069 6e20 616e 7369 626c 655f 6661  t" in ansible_fa
│ │ │ +001ea860: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ +001ea870: 2022 6f73 7472 6565 2220 696e 2061 6e73   "ostree" in ans
│ │ │ +001ea880: 6962 6c65 5f70 726f 635f 636d 646c 696e  ible_proc_cmdlin
│ │ │ +001ea890: 650a 2020 2020 2920 616e 6420 6e6f 7420  e.    ) and not 
│ │ │ +001ea8a0: 2820 616e 7369 626c 655f 7669 7274 7561  ( ansible_virtua
│ │ │ +001ea8b0: 6c69 7a61 7469 6f6e 5f74 7970 6520 696e  lization_type in
│ │ │ +001ea8c0: 205b 2264 6f63 6b65 7222 2c20 226c 7863   ["docker", "lxc
│ │ │ +001ea8d0: 222c 2022 6f70 656e 767a 222c 2022 706f  ", "openvz", "po
│ │ │ +001ea8e0: 646d 616e 222c 0a20 2020 2022 636f 6e74  dman",.    "cont
│ │ │ +001ea8f0: 6169 6e65 7222 5d20 2920 290a 2020 2d20  ainer"] ) ).  - 
│ │ │ +001ea900: 2722 2f74 6d70 2220 696e 2061 6e73 6962  '"/tmp" in ansib
│ │ │ +001ea910: 6c65 5f6d 6f75 6e74 7320 7c20 6d61 7028  le_mounts | map(
│ │ │ +001ea920: 6174 7472 6962 7574 653d 226d 6f75 6e74  attribute="mount
│ │ │ +001ea930: 2229 207c 206c 6973 7427 0a20 202d 2028  ") | list'.  - (
│ │ │ +001ea940: 222d 2d66 7374 6162 2220 7c20 6c65 6e67  "--fstab" | leng
│ │ │ +001ea950: 7468 203d 3d20 3029 0a20 202d 2064 6576  th == 0).  - dev
│ │ │ +001ea960: 6963 655f 6e61 6d65 2e73 7464 6f75 7420  ice_name.stdout 
│ │ │ +001ea970: 6973 2064 6566 696e 6564 2061 6e64 2064  is defined and d
│ │ │ +001ea980: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ +001ea990: 745f 6c69 6e65 7320 6973 2064 6566 696e  t_lines is defin
│ │ │ +001ea9a0: 6564 0a20 202d 2028 6465 7669 6365 5f6e  ed.  - (device_n
│ │ │ +001ea9b0: 616d 652e 7374 646f 7574 207c 206c 656e  ame.stdout | len
│ │ │ +001ea9c0: 6774 6820 3d3d 2030 290a 2020 7461 6773  gth == 0).  tags
│ │ │ +001ea9d0: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ +001ea9e0: 332d 4143 2d36 0a20 202d 204e 4953 542d  3-AC-6.  - NIST-
│ │ │ +001ea9f0: 3830 302d 3533 2d41 432d 3628 3129 0a20  800-53-AC-6(1). 
│ │ │ +001eaa00: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +001eaa10: 4d2d 3628 6129 0a20 202d 204e 4953 542d  M-6(a).  - NIST-
│ │ │ +001eaa20: 3830 302d 3533 2d43 4d2d 3728 6129 0a20  800-53-CM-7(a). 
│ │ │ +001eaa30: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +001eaa40: 4d2d 3728 6229 0a20 202d 204e 4953 542d  M-7(b).  - NIST-
│ │ │ +001eaa50: 3830 302d 3533 2d4d 502d 370a 2020 2d20  800-53-MP-7.  - 
│ │ │ +001eaa60: 636f 6e66 6967 7572 655f 7374 7261 7465  configure_strate
│ │ │ +001eaa70: 6779 0a20 202d 2068 6967 685f 6469 7372  gy.  - high_disr
│ │ │ +001eaa80: 7570 7469 6f6e 0a20 202d 206c 6f77 5f63  uption.  - low_c
│ │ │ +001eaa90: 6f6d 706c 6578 6974 790a 2020 2d20 6d65  omplexity.  - me
│ │ │ +001eaaa0: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ +001eaab0: 2d20 6d6f 756e 745f 6f70 7469 6f6e 5f74  - mount_option_t
│ │ │ +001eaac0: 6d70 5f6e 6f65 7865 630a 2020 2d20 6e6f  mp_noexec.  - no
│ │ │ +001eaad0: 5f72 6562 6f6f 745f 6e65 6564 6564 0a0a  _reboot_needed..
│ │ │ +001eaae0: 2d20 6e61 6d65 3a20 2741 6464 206e 6f65  - name: 'Add noe
│ │ │ +001eaaf0: 7865 6320 4f70 7469 6f6e 2074 6f20 2f74  xec Option to /t
│ │ │ +001eab00: 6d70 3a20 4d61 6b65 2073 7572 6520 6e6f  mp: Make sure no
│ │ │ +001eab10: 6578 6563 206f 7074 696f 6e20 6973 2070  exec option is p
│ │ │ +001eab20: 6172 7420 6f66 2074 6865 2074 6f20 2f74  art of the to /t
│ │ │ +001eab30: 6d70 0a20 2020 206f 7074 696f 6e73 270a  mp.    options'.
│ │ │ +001eab40: 2020 7365 745f 6661 6374 3a0a 2020 2020    set_fact:.    
│ │ │ +001eab50: 6d6f 756e 745f 696e 666f 3a20 277b 7b20  mount_info: '{{ 
│ │ │ +001eab60: 6d6f 756e 745f 696e 666f 207c 2063 6f6d  mount_info | com
│ │ │ +001eab70: 6269 6e65 2820 7b27 276f 7074 696f 6e73  bine( {''options
│ │ │ +001eab80: 2727 3a27 2727 277e 286d 6f75 6e74 5f69  '':''''~(mount_i
│ │ │ +001eab90: 6e66 6f2e 6f70 7469 6f6e 7320 7c0a 2020  nfo.options |.  
│ │ │ +001eaba0: 2020 2020 6465 6661 756c 7428 2727 2727      default(''''
│ │ │ +001eabb0: 2929 7e28 2727 2c27 2720 6966 2028 6d6f  ))~('','' if (mo
│ │ │ +001eabc0: 756e 745f 696e 666f 2e6f 7074 696f 6e73  unt_info.options
│ │ │ +001eabd0: 207c 2064 6566 6175 6c74 2827 2727 2729   | default('''')
│ │ │ +001eabe0: 2920 656c 7365 2027 2727 2729 7e27 276e  ) else '''')~''n
│ │ │ +001eabf0: 6f65 7865 6327 270a 2020 2020 2020 7d29  oexec''.      })
│ │ │ +001eac00: 207d 7d27 0a20 2077 6865 6e3a 0a20 202d   }}'.  when:.  -
│ │ │ +001eac10: 2028 206e 6f74 2028 2022 6b65 726e 656c   ( not ( "kernel
│ │ │ +001eac20: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +001eac30: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ +001eac40: 2262 6f6f 7463 2220 696e 2061 6e73 6962  "bootc" in ansib
│ │ │ +001eac50: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001eac60: 730a 2020 2020 616e 6420 6e6f 7420 226f  s.    and not "o
│ │ │ +001eac70: 7065 6e73 6869 6674 2d6b 7562 656c 6574  penshift-kubelet
│ │ │ +001eac80: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +001eac90: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ +001eaca0: 226f 7374 7265 6522 2069 6e20 616e 7369  "ostree" in ansi
│ │ │ +001eacb0: 626c 655f 7072 6f63 5f63 6d64 6c69 6e65  ble_proc_cmdline
│ │ │ +001eacc0: 0a20 2020 2029 2061 6e64 206e 6f74 2028  .    ) and not (
│ │ │ +001eacd0: 2061 6e73 6962 6c65 5f76 6972 7475 616c   ansible_virtual
│ │ │ +001eace0: 697a 6174 696f 6e5f 7479 7065 2069 6e20  ization_type in 
│ │ │ +001eacf0: 5b22 646f 636b 6572 222c 2022 6c78 6322  ["docker", "lxc"
│ │ │ +001ead00: 2c20 226f 7065 6e76 7a22 2c20 2270 6f64  , "openvz", "pod
│ │ │ +001ead10: 6d61 6e22 2c0a 2020 2020 2263 6f6e 7461  man",.    "conta
│ │ │ +001ead20: 696e 6572 225d 2029 2029 0a20 202d 2027  iner"] ) ).  - '
│ │ │ +001ead30: 222f 746d 7022 2069 6e20 616e 7369 626c  "/tmp" in ansibl
│ │ │ +001ead40: 655f 6d6f 756e 7473 207c 206d 6170 2861  e_mounts | map(a
│ │ │ +001ead50: 7474 7269 6275 7465 3d22 6d6f 756e 7422  ttribute="mount"
│ │ │ +001ead60: 2920 7c20 6c69 7374 270a 2020 2d20 6d6f  ) | list'.  - mo
│ │ │ +001ead70: 756e 745f 696e 666f 2069 7320 6465 6669  unt_info is defi
│ │ │ +001ead80: 6e65 6420 616e 6420 226e 6f65 7865 6322  ned and "noexec"
│ │ │ +001ead90: 206e 6f74 2069 6e20 286d 6f75 6e74 5f69   not in (mount_i
│ │ │ +001eada0: 6e66 6f2e 6f70 7469 6f6e 7320 7c20 6465  nfo.options | de
│ │ │ +001eadb0: 6661 756c 7428 2727 2929 0a20 2074 6167  fault('')).  tag
│ │ │ +001eadc0: 733a 0a20 202d 204e 4953 542d 3830 302d  s:.  - NIST-800-
│ │ │ +001eadd0: 3533 2d41 432d 360a 2020 2d20 4e49 5354  53-AC-6.  - NIST
│ │ │ +001eade0: 2d38 3030 2d35 332d 4143 2d36 2831 290a  -800-53-AC-6(1).
│ │ │ +001eadf0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001eae00: 434d 2d36 2861 290a 2020 2d20 4e49 5354  CM-6(a).  - NIST
│ │ │ +001eae10: 2d38 3030 2d35 332d 434d 2d37 2861 290a  -800-53-CM-7(a).
│ │ │ +001eae20: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +001eae30: 434d 2d37 2862 290a 2020 2d20 4e49 5354  CM-7(b).  - NIST
│ │ │ +001eae40: 2d38 3030 2d35 332d 4d50 2d37 0a20 202d  -800-53-MP-7.  -
│ │ │ +001eae50: 2063 6f6e 6669 6775 7265 5f73 7472 6174   configure_strat
│ │ │ +001eae60: 6567 790a 2020 2d20 6869 6768 5f64 6973  egy.  - high_dis
│ │ │ +001eae70: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f  ruption.  - low_
│ │ │ +001eae80: 636f 6d70 6c65 7869 7479 0a20 202d 206d  complexity.  - m
│ │ │ +001eae90: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ +001eaea0: 202d 206d 6f75 6e74 5f6f 7074 696f 6e5f   - mount_option_
│ │ │ +001eaeb0: 746d 705f 6e6f 6578 6563 0a20 202d 206e  tmp_noexec.  - n
│ │ │ +001eaec0: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ +001eaed0: 0a2d 206e 616d 653a 2027 4164 6420 6e6f  .- name: 'Add no
│ │ │ +001eaee0: 6578 6563 204f 7074 696f 6e20 746f 202f  exec Option to /
│ │ │ +001eaef0: 746d 703a 2045 6e73 7572 6520 2f74 6d70  tmp: Ensure /tmp
│ │ │ +001eaf00: 2069 7320 6d6f 756e 7465 6420 7769 7468   is mounted with
│ │ │ +001eaf10: 206e 6f65 7865 6320 6f70 7469 6f6e 270a   noexec option'.
│ │ │ +001eaf20: 2020 616e 7369 626c 652e 706f 7369 782e    ansible.posix.
│ │ │ +001eaf30: 6d6f 756e 743a 0a20 2020 2070 6174 683a  mount:.    path:
│ │ │ +001eaf40: 202f 746d 700a 2020 2020 7372 633a 2027   /tmp.    src: '
│ │ │ +001eaf50: 7b7b 206d 6f75 6e74 5f69 6e66 6f2e 736f  {{ mount_info.so
│ │ │ +001eaf60: 7572 6365 207c 2064 6566 6175 6c74 2827  urce | default('
│ │ │ +001eaf70: 2727 2729 207d 7d27 0a20 2020 206f 7074  ''') }}'.    opt
│ │ │ +001eaf80: 733a 2027 7b7b 206d 6f75 6e74 5f69 6e66  s: '{{ mount_inf
│ │ │ +001eaf90: 6f2e 6f70 7469 6f6e 7320 7c20 6465 6661  o.options | defa
│ │ │ +001eafa0: 756c 7428 2727 2727 2920 7d7d 270a 2020  ult('''') }}'.  
│ │ │ +001eafb0: 2020 7374 6174 653a 206d 6f75 6e74 6564    state: mounted
│ │ │ +001eafc0: 0a20 2020 2066 7374 7970 653a 2027 7b7b  .    fstype: '{{
│ │ │ +001eafd0: 206d 6f75 6e74 5f69 6e66 6f2e 6673 7479   mount_info.fsty
│ │ │ +001eafe0: 7065 207c 2064 6566 6175 6c74 2827 2727  pe | default('''
│ │ │ +001eaff0: 2729 207d 7d27 0a20 2072 6567 6973 7465  ') }}'.  registe
│ │ │ +001eb000: 723a 206d 6f75 6e74 5f72 6573 756c 740a  r: mount_result.
│ │ │ +001eb010: 2020 6661 696c 6564 5f77 6865 6e3a 0a20    failed_when:. 
│ │ │ +001eb020: 202d 206d 6f75 6e74 5f72 6573 756c 7420   - mount_result 
│ │ │ +001eb030: 6973 2066 6169 6c65 640a 2020 2d20 2727  is failed.  - ''
│ │ │ +001eb040: 2774 6172 6765 7420 6973 2062 7573 7927  'target is busy'
│ │ │ +001eb050: 2720 6e6f 7420 696e 2028 6d6f 756e 745f  ' not in (mount_
│ │ │ +001eb060: 7265 7375 6c74 2e6d 7367 207c 2064 6566  result.msg | def
│ │ │ +001eb070: 6175 6c74 2827 2727 2729 2927 0a20 202d  ault(''''))'.  -
│ │ │ +001eb080: 2027 2727 616c 7265 6164 7920 6d6f 756e   '''already moun
│ │ │ +001eb090: 7465 6427 2720 6e6f 7420 696e 2028 6d6f  ted'' not in (mo
│ │ │ +001eb0a0: 756e 745f 7265 7375 6c74 2e6d 7367 207c  unt_result.msg |
│ │ │ +001eb0b0: 2064 6566 6175 6c74 2827 2727 2729 2927   default(''''))'
│ │ │ +001eb0c0: 0a20 2077 6865 6e3a 0a20 202d 2028 206e  .  when:.  - ( n
│ │ │ +001eb0d0: 6f74 2028 2022 6b65 726e 656c 2220 696e  ot ( "kernel" in
│ │ │ +001eb0e0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001eb0f0: 6163 6b61 6765 7320 616e 6420 2262 6f6f  ackages and "boo
│ │ │ +001eb100: 7463 2220 696e 2061 6e73 6962 6c65 5f66  tc" in ansible_f
│ │ │ +001eb110: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ +001eb120: 2020 616e 6420 6e6f 7420 226f 7065 6e73    and not "opens
│ │ │ +001eb130: 6869 6674 2d6b 7562 656c 6574 2220 696e  hift-kubelet" in
│ │ │ +001eb140: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001eb150: 6163 6b61 6765 7320 616e 6420 226f 7374  ackages and "ost
│ │ │ +001eb160: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ +001eb170: 7072 6f63 5f63 6d64 6c69 6e65 0a20 2020  proc_cmdline.   
│ │ │ +001eb180: 2029 2061 6e64 206e 6f74 2028 2061 6e73   ) and not ( ans
│ │ │ +001eb190: 6962 6c65 5f76 6972 7475 616c 697a 6174  ible_virtualizat
│ │ │ +001eb1a0: 696f 6e5f 7479 7065 2069 6e20 5b22 646f  ion_type in ["do
│ │ │ +001eb1b0: 636b 6572 222c 2022 6c78 6322 2c20 226f  cker", "lxc", "o
│ │ │ +001eb1c0: 7065 6e76 7a22 2c20 2270 6f64 6d61 6e22  penvz", "podman"
│ │ │ +001eb1d0: 2c0a 2020 2020 2263 6f6e 7461 696e 6572  ,.    "container
│ │ │ +001eb1e0: 225d 2029 2029 0a20 202d 2027 222f 746d  "] ) ).  - '"/tm
│ │ │ +001eb1f0: 7022 2069 6e20 616e 7369 626c 655f 6d6f  p" in ansible_mo
│ │ │ +001eb200: 756e 7473 207c 206d 6170 2861 7474 7269  unts | map(attri
│ │ │ +001eb210: 6275 7465 3d22 6d6f 756e 7422 2920 7c20  bute="mount") | 
│ │ │ +001eb220: 6c69 7374 270a 2020 2d20 6d6f 756e 745f  list'.  - mount_
│ │ │ +001eb230: 696e 666f 2069 7320 6465 6669 6e65 640a  info is defined.
│ │ │ +001eb240: 2020 2d20 2864 6576 6963 655f 6e61 6d65    - (device_name
│ │ │ +001eb250: 2e73 7464 6f75 7420 6973 2064 6566 696e  .stdout is defin
│ │ │ +001eb260: 6564 2061 6e64 2028 6465 7669 6365 5f6e  ed and (device_n
│ │ │ +001eb270: 616d 652e 7374 646f 7574 207c 206c 656e  ame.stdout | len
│ │ │ +001eb280: 6774 6820 2667 743b 2030 2929 206f 7220  gth > 0)) or 
│ │ │ +001eb290: 2822 2d2d 6673 7461 6222 0a20 2020 207c  ("--fstab".    |
│ │ │ +001eb2a0: 206c 656e 6774 6820 3d3d 2030 290a 2020   length == 0).  
│ │ │ +001eb2b0: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38  tags:.  - NIST-8
│ │ │ +001eb2c0: 3030 2d35 332d 4143 2d36 0a20 202d 204e  00-53-AC-6.  - N
│ │ │ +001eb2d0: 4953 542d 3830 302d 3533 2d41 432d 3628  IST-800-53-AC-6(
│ │ │ +001eb2e0: 3129 0a20 202d 204e 4953 542d 3830 302d  1).  - NIST-800-
│ │ │ +001eb2f0: 3533 2d43 4d2d 3628 6129 0a20 202d 204e  53-CM-6(a).  - N
│ │ │ +001eb300: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ +001eb310: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ +001eb320: 3533 2d43 4d2d 3728 6229 0a20 202d 204e  53-CM-7(b).  - N
│ │ │ +001eb330: 4953 542d 3830 302d 3533 2d4d 502d 370a  IST-800-53-MP-7.
│ │ │ +001eb340: 2020 2d20 636f 6e66 6967 7572 655f 7374    - configure_st
│ │ │ +001eb350: 7261 7465 6779 0a20 202d 2068 6967 685f  rategy.  - high_
│ │ │ +001eb360: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ +001eb370: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ +001eb380: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ +001eb390: 790a 2020 2d20 6d6f 756e 745f 6f70 7469  y.  - mount_opti
│ │ │ +001eb3a0: 6f6e 5f74 6d70 5f6e 6f65 7865 630a 2020  on_tmp_noexec.  
│ │ │ +001eb3b0: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ +001eb3c0: 6564 0a3c 2f63 6f64 653e 3c2f 7072 653e  ed.
│ │ │ +001eb3d0: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22 Remediation S │ │ │ +001eb480: 6865 6c6c 2073 6372 6970 7420 e287 b23c hell script ...< │ │ │ +001eb490: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
Com │ │ │ +001e9d30: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ +001e9d60: 3a3c 2f74 683e 3c74 643e 6869 6768 3c2f :high
│ │ │ +001e9d80: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +001e9d90: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +001e9db0: 3c2f 7468 3e3c 7464 3e63 6f6e 6669 6775 configu │ │ │ +001e9dc0: 7265 3c2f 7464 3e3c 2f74 723e 3c2f 7461 re
│ │ │ +001eb530: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Reboot:false
# Remediation
│ │ │ +001eb550: 2069 7320 6170 706c 6963 6162 6c65 206f   is applicable o
│ │ │ +001eb560: 6e6c 7920 696e 2063 6572 7461 696e 2070  nly in certain p
│ │ │ +001eb570: 6c61 7466 6f72 6d73 0a69 6620 2820 2120  latforms.if ( ! 
│ │ │ +001eb580: 2820 7b20 7270 6d20 2d2d 7175 6965 7420  ( { rpm --quiet 
│ │ │ +001eb590: 2d71 206b 6572 6e65 6c20 3b7d 2026 616d  -q kernel ;} &am
│ │ │ +001eb5a0: 703b 2661 6d70 3b20 7b20 7270 6d20 2d2d  p;& { rpm --
│ │ │ +001eb5b0: 7175 6965 7420 2d71 2062 6f6f 7463 203b  quiet -q bootc ;
│ │ │ +001eb5c0: 7d20 2661 6d70 3b26 616d 703b 207b 2021  } && { !
│ │ │ +001eb5d0: 2072 706d 202d 2d71 7569 6574 202d 7120   rpm --quiet -q 
│ │ │ +001eb5e0: 6f70 656e 7368 6966 742d 6b75 6265 6c65  openshift-kubele
│ │ │ +001eb5f0: 7420 3b7d 2026 616d 703b 2661 6d70 3b20  t ;} && 
│ │ │ +001eb600: 285b 202d 6620 2f72 756e 2f6f 7374 7265  ([ -f /run/ostre
│ │ │ +001eb610: 652d 626f 6f74 6564 205d 207c 7c20 5b20  e-booted ] || [ 
│ │ │ +001eb620: 2d4c 202f 6f73 7472 6565 205d 2920 2920  -L /ostree ]) ) 
│ │ │ +001eb630: 2661 6d70 3b26 616d 703b 2021 2028 205b  && ! ( [
│ │ │ +001eb640: 202d 6620 2f2e 646f 636b 6572 656e 7620   -f /.dockerenv 
│ │ │ +001eb650: 5d20 7c7c 205b 202d 6620 2f72 756e 2f2e  ] || [ -f /run/.
│ │ │ +001eb660: 636f 6e74 6169 6e65 7265 6e76 205d 2029  containerenv ] )
│ │ │ +001eb670: 2029 2026 616d 703b 2661 6d70 3b20 7b20   ) && { 
│ │ │ +001eb680: 2820 6669 6e64 6d6e 7420 2d2d 6b65 726e  ( findmnt --kern
│ │ │ +001eb690: 656c 2022 2f74 6d70 2220 2667 743b 202f  el "/tmp" > /
│ │ │ +001eb6a0: 6465 762f 6e75 6c6c 207c 7c20 6669 6e64  dev/null || find
│ │ │ +001eb6b0: 6d6e 7420 2d2d 6673 7461 6220 222f 746d  mnt --fstab "/tm
│ │ │ +001eb6c0: 7022 2026 6774 3b20 2f64 6576 2f6e 756c  p" > /dev/nul
│ │ │ +001eb6d0: 6c20 293b 207d 3b20 7468 656e 0a0a 6675  l ); }; then..fu
│ │ │ +001eb6e0: 6e63 7469 6f6e 2070 6572 666f 726d 5f72  nction perform_r
│ │ │ +001eb6f0: 656d 6564 6961 7469 6f6e 207b 0a0a 2020  emediation {..  
│ │ │ +001eb700: 2020 0a20 2020 2020 2020 2023 2074 6865    .        # the
│ │ │ +001eb710: 206d 6f75 6e74 2070 6f69 6e74 202f 746d   mount point /tm
│ │ │ +001eb720: 7020 6861 7320 746f 2062 6520 6465 6669  p has to be defi
│ │ │ +001eb730: 6e65 6420 696e 202f 6574 632f 6673 7461  ned in /etc/fsta
│ │ │ +001eb740: 620a 2020 2020 2020 2020 2320 6265 666f  b.        # befo
│ │ │ +001eb750: 7265 2074 6869 7320 7265 6d65 6469 6174  re this remediat
│ │ │ +001eb760: 696f 6e20 6361 6e20 6265 2065 7865 6375  ion can be execu
│ │ │ +001eb770: 7465 642e 2049 6e20 6361 7365 2069 7420  ted. In case it 
│ │ │ +001eb780: 6973 206e 6f74 2064 6566 696e 6564 2c20  is not defined, 
│ │ │ +001eb790: 7468 650a 2020 2020 2020 2020 2320 7265  the.        # re
│ │ │ +001eb7a0: 6d65 6469 6174 696f 6e20 6162 6f72 7473  mediation aborts
│ │ │ +001eb7b0: 2061 6e64 206e 6f20 6368 616e 6765 7320   and no changes 
│ │ │ +001eb7c0: 7265 6761 7264 696e 6720 7468 6520 6d6f  regarding the mo
│ │ │ +001eb7d0: 756e 7420 706f 696e 7420 6172 6520 646f  unt point are do
│ │ │ +001eb7e0: 6e65 2e0a 2020 2020 2020 2020 6d6f 756e  ne..        moun
│ │ │ +001eb7f0: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ +001eb800: 6765 7870 3d22 2428 7072 696e 7466 2022  gexp="$(printf "
│ │ │ +001eb810: 5e5b 5b3a 7370 6163 653a 5d5d 2a5b 5e23  ^[[:space:]]*[^#
│ │ │ +001eb820: 5d2e 2a5b 5b3a 7370 6163 653a 5d5d 2573  ].*[[:space:]]%s
│ │ │ +001eb830: 5b5b 3a73 7061 6365 3a5d 5d22 2022 2f74  [[:space:]]" "/t
│ │ │ +001eb840: 6d70 2229 220a 0a20 2020 2067 7265 7020  mp")"..    grep 
│ │ │ +001eb850: 2224 6d6f 756e 745f 706f 696e 745f 6d61  "$mount_point_ma
│ │ │ +001eb860: 7463 685f 7265 6765 7870 2220 2d71 202f  tch_regexp" -q /
│ │ │ +001eb870: 6574 632f 6673 7461 6220 5c0a 2020 2020  etc/fstab \.    
│ │ │ +001eb880: 2020 2020 7c7c 207b 2065 6368 6f20 2254      || { echo "T
│ │ │ +001eb890: 6865 206d 6f75 6e74 2070 6f69 6e74 2027  he mount point '
│ │ │ +001eb8a0: 2f74 6d70 2720 6973 206e 6f74 2065 7665  /tmp' is not eve
│ │ │ +001eb8b0: 6e20 696e 202f 6574 632f 6673 7461 622c  n in /etc/fstab,
│ │ │ +001eb8c0: 2073 6f20 7765 2063 616e 2774 2073 6574   so we can't set
│ │ │ +001eb8d0: 2075 7020 6d6f 756e 7420 6f70 7469 6f6e   up mount option
│ │ │ +001eb8e0: 7322 2026 6774 3b26 616d 703b 323b 0a20  s" >&2;. 
│ │ │ +001eb8f0: 2020 2020 2020 2020 2020 2020 2020 2065                 e
│ │ │ +001eb900: 6368 6f20 224e 6f74 2072 656d 6564 6961  cho "Not remedia
│ │ │ +001eb910: 7469 6e67 2c20 6265 6361 7573 6520 7468  ting, because th
│ │ │ +001eb920: 6572 6520 6973 206e 6f20 7265 636f 7264  ere is no record
│ │ │ +001eb930: 206f 6620 2f74 6d70 2069 6e20 2f65 7463   of /tmp in /etc
│ │ │ +001eb940: 2f66 7374 6162 2220 2667 743b 2661 6d70  /fstab" >&
│ │ │ +001eb950: 3b32 3b20 7265 7475 726e 2031 3b20 7d0a  ;2; return 1; }.
│ │ │ +001eb960: 2020 2020 0a0a 0a20 2020 206d 6f75 6e74      ...    mount
│ │ │ +001eb970: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ +001eb980: 6578 703d 2224 2870 7269 6e74 6620 225e  exp="$(printf "^
│ │ │ +001eb990: 5b5b 3a73 7061 6365 3a5d 5d2a 5b5e 235d  [[:space:]]*[^#]
│ │ │ +001eb9a0: 2e2a 5b5b 3a73 7061 6365 3a5d 5d25 735b  .*[[:space:]]%s[
│ │ │ +001eb9b0: 5b3a 7370 6163 653a 5d5d 2220 2f74 6d70  [:space:]]" /tmp
│ │ │ +001eb9c0: 2922 0a0a 2020 2020 2320 4966 2074 6865  )"..    # If the
│ │ │ +001eb9d0: 206d 6f75 6e74 2070 6f69 6e74 2069 7320   mount point is 
│ │ │ +001eb9e0: 6e6f 7420 696e 202f 6574 632f 6673 7461  not in /etc/fsta
│ │ │ +001eb9f0: 622c 2067 6574 2070 7265 7669 6f75 7320  b, get previous 
│ │ │ +001eba00: 6d6f 756e 7420 6f70 7469 6f6e 7320 6672  mount options fr
│ │ │ +001eba10: 6f6d 202f 6574 632f 6d74 6162 0a20 2020  om /etc/mtab.   
│ │ │ +001eba20: 2069 6620 2120 6772 6570 202d 7120 2224   if ! grep -q "$
│ │ │ +001eba30: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ +001eba40: 685f 7265 6765 7870 2220 2f65 7463 2f66  h_regexp" /etc/f
│ │ │ +001eba50: 7374 6162 3b20 7468 656e 0a20 2020 2020  stab; then.     
│ │ │ +001eba60: 2020 2023 2072 756e 7469 6d65 206f 7074     # runtime opt
│ │ │ +001eba70: 7320 7769 7468 6f75 7420 736f 6d65 2061  s without some a
│ │ │ +001eba80: 7574 6f6d 6174 6963 206b 6572 6e65 6c2f  utomatic kernel/
│ │ │ +001eba90: 7573 6572 7370 6163 652d 6164 6465 6420  userspace-added 
│ │ │ +001ebaa0: 6465 6661 756c 7473 0a20 2020 2020 2020  defaults.       
│ │ │ +001ebab0: 2070 7265 7669 6f75 735f 6d6f 756e 745f   previous_mount_
│ │ │ +001ebac0: 6f70 7473 3d24 2867 7265 7020 2224 6d6f  opts=$(grep "$mo
│ │ │ +001ebad0: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ +001ebae0: 7265 6765 7870 2220 2f65 7463 2f6d 7461  regexp" /etc/mta
│ │ │ +001ebaf0: 6220 7c20 6865 6164 202d 3120 7c20 2061  b | head -1 |  a
│ │ │ +001ebb00: 776b 2027 7b70 7269 6e74 2024 347d 2720  wk '{print $4}' 
│ │ │ +001ebb10: 5c0a 2020 2020 2020 2020 2020 2020 2020  \.              
│ │ │ +001ebb20: 2020 2020 2020 7c20 7365 6420 2d45 2022        | sed -E "
│ │ │ +001ebb30: 732f 2872 777c 6465 6661 756c 7473 7c73  s/(rw|defaults|s
│ │ │ +001ebb40: 6563 6c61 6265 6c7c 6e6f 6578 6563 2928  eclabel|noexec)(
│ │ │ +001ebb50: 2c7c 2429 2f2f 673b 732f 2c24 2f2f 2229  ,|$)//g;s/,$//")
│ │ │ +001ebb60: 0a20 2020 2020 2020 205b 2022 2470 7265  .        [ "$pre
│ │ │ +001ebb70: 7669 6f75 735f 6d6f 756e 745f 6f70 7473  vious_mount_opts
│ │ │ +001ebb80: 2220 5d20 2661 6d70 3b26 616d 703b 2070  " ] && p
│ │ │ +001ebb90: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ +001ebba0: 7473 2b3d 222c 220a 2020 2020 2020 2020  ts+=",".        
│ │ │ +001ebbb0: 2320 496e 2069 736f 3936 3630 2066 696c  # In iso9660 fil
│ │ │ +001ebbc0: 6573 7973 7465 6d73 206d 7461 6220 636f  esystems mtab co
│ │ │ +001ebbd0: 756c 6420 6465 7363 7269 6265 2061 2022  uld describe a "
│ │ │ +001ebbe0: 626c 6f63 6b73 697a 6522 2076 616c 7565  blocksize" value
│ │ │ +001ebbf0: 2c20 7468 6973 2073 686f 756c 6420 6265  , this should be
│ │ │ +001ebc00: 2072 6566 6c65 6374 6564 2069 6e0a 2020   reflected in.  
│ │ │ +001ebc10: 2020 2020 2020 2320 6673 7461 6220 6173        # fstab as
│ │ │ +001ebc20: 2022 626c 6f63 6b22 2e20 2054 6865 206e   "block".  The n
│ │ │ +001ebc30: 6578 7420 7661 7269 6162 6c65 2069 7320  ext variable is 
│ │ │ +001ebc40: 746f 2073 6174 6973 6679 2073 6865 6c6c  to satisfy shell
│ │ │ +001ebc50: 6368 6563 6b20 5343 3230 3530 2e0a 2020  check SC2050..  
│ │ │ +001ebc60: 2020 2020 2020 6673 5f74 7970 653d 2222        fs_type=""
│ │ │ +001ebc70: 0a20 2020 2020 2020 2069 6620 5b20 2022  .        if [  "
│ │ │ +001ebc80: 2466 735f 7479 7065 2220 3d3d 2022 6973  $fs_type" == "is
│ │ │ +001ebc90: 6f39 3636 3022 205d 203b 2074 6865 6e0a  o9660" ] ; then.
│ │ │ +001ebca0: 2020 2020 2020 2020 2020 2020 7072 6576              prev
│ │ │ +001ebcb0: 696f 7573 5f6d 6f75 6e74 5f6f 7074 733d  ious_mount_opts=
│ │ │ +001ebcc0: 2428 7365 6420 2773 2f62 6c6f 636b 7369  $(sed 's/blocksi
│ │ │ +001ebcd0: 7a65 3d2f 626c 6f63 6b3d 2f27 2026 6c74  ze=/block=/' <
│ │ │ +001ebce0: 3b26 6c74 3b26 6c74 3b20 2224 7072 6576  ;<< "$prev
│ │ │ +001ebcf0: 696f 7573 5f6d 6f75 6e74 5f6f 7074 7322  ious_mount_opts"
│ │ │ +001ebd00: 290a 2020 2020 2020 2020 6669 0a20 2020  ).        fi.   
│ │ │ +001ebd10: 2020 2020 2065 6368 6f20 2220 2f74 6d70       echo " /tmp
│ │ │ +001ebd20: 2020 6465 6661 756c 7473 2c24 7b70 7265    defaults,${pre
│ │ │ +001ebd30: 7669 6f75 735f 6d6f 756e 745f 6f70 7473  vious_mount_opts
│ │ │ +001ebd40: 7d6e 6f65 7865 6320 3020 3022 2026 6774  }noexec 0 0" >
│ │ │ +001ebd50: 3b26 6774 3b20 2f65 7463 2f66 7374 6162  ;> /etc/fstab
│ │ │ +001ebd60: 0a20 2020 2023 2049 6620 7468 6520 6d6f  .    # If the mo
│ │ │ +001ebd70: 756e 745f 6f70 7420 6f70 7469 6f6e 2069  unt_opt option i
│ │ │ +001ebd80: 7320 6e6f 7420 616c 7265 6164 7920 696e  s not already in
│ │ │ +001ebd90: 2074 6865 206d 6f75 6e74 2070 6f69 6e74   the mount point
│ │ │ +001ebda0: 2773 202f 6574 632f 6673 7461 6220 656e  's /etc/fstab en
│ │ │ +001ebdb0: 7472 792c 2061 6464 2069 740a 2020 2020  try, add it.    
│ │ │ +001ebdc0: 656c 6966 2021 2067 7265 7020 2224 6d6f  elif ! grep "$mo
│ │ │ +001ebdd0: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ +001ebde0: 7265 6765 7870 2220 2f65 7463 2f66 7374  regexp" /etc/fst
│ │ │ +001ebdf0: 6162 207c 2067 7265 7020 2d71 2022 6e6f  ab | grep -q "no
│ │ │ +001ebe00: 6578 6563 223b 2074 6865 6e0a 2020 2020  exec"; then.    
│ │ │ +001ebe10: 2020 2020 7072 6576 696f 7573 5f6d 6f75      previous_mou
│ │ │ +001ebe20: 6e74 5f6f 7074 733d 2428 6772 6570 2022  nt_opts=$(grep "
│ │ │ +001ebe30: 246d 6f75 6e74 5f70 6f69 6e74 5f6d 6174  $mount_point_mat
│ │ │ +001ebe40: 6368 5f72 6567 6578 7022 202f 6574 632f  ch_regexp" /etc/
│ │ │ +001ebe50: 6673 7461 6220 7c20 6177 6b20 277b 7072  fstab | awk '{pr
│ │ │ +001ebe60: 696e 7420 2434 7d27 290a 2020 2020 2020  int $4}').      
│ │ │ +001ebe70: 2020 7365 6420 2d69 2022 737c 5c28 247b    sed -i "s|\(${
│ │ │ +001ebe80: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ +001ebe90: 685f 7265 6765 7870 7d2e 2a24 7b70 7265  h_regexp}.*${pre
│ │ │ +001ebea0: 7669 6f75 735f 6d6f 756e 745f 6f70 7473  vious_mount_opts
│ │ │ +001ebeb0: 7d5c 297c 5c31 2c6e 6f65 7865 637c 2220  }\)|\1,noexec|" 
│ │ │ +001ebec0: 2f65 7463 2f66 7374 6162 0a20 2020 2066  /etc/fstab.    f
│ │ │ +001ebed0: 690a 0a0a 2020 2020 6966 206d 6b64 6972  i...    if mkdir
│ │ │ +001ebee0: 202d 7020 222f 746d 7022 3b20 7468 656e   -p "/tmp"; then
│ │ │ +001ebef0: 0a20 2020 2020 2020 2069 6620 6d6f 756e  .        if moun
│ │ │ +001ebf00: 7470 6f69 6e74 202d 7120 222f 746d 7022  tpoint -q "/tmp"
│ │ │ +001ebf10: 3b20 7468 656e 0a20 2020 2020 2020 2020  ; then.         
│ │ │ +001ebf20: 2020 206d 6f75 6e74 202d 6f20 7265 6d6f     mount -o remo
│ │ │ +001ebf30: 756e 7420 2d2d 7461 7267 6574 2022 2f74  unt --target "/t
│ │ │ +001ebf40: 6d70 220a 2020 2020 2020 2020 6669 0a20  mp".        fi. 
│ │ │ +001ebf50: 2020 2066 690a 7d0a 0a70 6572 666f 726d     fi.}..perform
│ │ │ +001ebf60: 5f72 656d 6564 6961 7469 6f6e 0a0a 656c  _remediation..el
│ │ │ +001ebf70: 7365 0a20 2020 2026 6774 3b26 616d 703b  se.    >&
│ │ │ +001ebf80: 3220 6563 686f 2027 5265 6d65 6469 6174  2 echo 'Remediat
│ │ │ +001ebf90: 696f 6e20 6973 206e 6f74 2061 7070 6c69  ion is not appli
│ │ │ +001ebfa0: 6361 626c 652c 206e 6f74 6869 6e67 2077  cable, nothing w
│ │ │ +001ebfb0: 6173 2064 6f6e 6527 0a66 690a 3c2f 636f  as done'.fi.
< │ │ │ +001ebfd0: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ +001ebfe0: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ +001ebff0: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ +001ec000: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ +001ec010: 6435 3938 2220 7461 6269 6e64 6578 3d22 d598" tabindex=" │ │ │ +001ec020: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ +001ec030: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ +001ec040: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ +001ec050: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ +001ec060: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ +001ec070: 6469 6174 696f 6e20 416e 6163 6f6e 6461 diation Anaconda │ │ │ +001ec080: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ +001ec090: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ +001ec130: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr> │ │ │ +001ec180: 3c74 723e 3c74 683e 5374 7261 7465 6779
.pa
│ │ │ +001ec1c0: 7274 202f 746d 7020 2d2d 6d6f 756e 746f  rt /tmp --mounto
│ │ │ +001ec1d0: 7074 696f 6e73 3d22 6e6f 6578 6563 220a  ptions="noexec".
│ │ │  001ec1e0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
Remediati │ │ │ -001ed2e0: 6f6e 2041 6e61 636f 6e64 6120 736e 6970 on Anaconda snip │ │ │ -001ed2f0: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ -001ed300: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -001ed310: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -001ed320: 7365 2220 6964 3d22 6964 3630 3022 3e3c se" id="id600">< │ │ │ -001ed330: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ -001ed340: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ -001ed350: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ -001ed360: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ -001ed370: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Disruption:< │ │ │ -001ed3c0: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ -001ed3f0: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy: │ │ │ -001ed410: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
Co │ │ │ +001ec110: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +001ec140: 6e3a 3c2f 7468 3e3c 7464 3e68 6967 683c n:high< │ │ │ +001ec150: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ +001ec190: 3a3c 2f74 683e 3c74 643e 656e 6162 6c65 :enable │ │ │ +001ec1a0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Complex │ │ │ -001ed380: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ -001ed390: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
high
Rebo │ │ │ -001ed3d0: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ -001ed3e0: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
enable
.part /t │ │ │ -001ed430: 6d70 202d 2d6d 6f75 6e74 6f70 7469 6f6e mp --mountoption │ │ │ -001ed440: 733d 226e 6f73 7569 6422 0a3c 2f63 6f64 s="nosuid".
Remed │ │ │ -001ed500: 6961 7469 6f6e 2041 6e73 6962 6c65 2073 iation Ansible s │ │ │ -001ed510: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
- 
│ │ │ -001ed650: 6e61 6d65 3a20 4761 7468 6572 2074 6865  name: Gather the
│ │ │ -001ed660: 2070 6163 6b61 6765 2066 6163 7473 0a20   package facts. 
│ │ │ -001ed670: 2070 6163 6b61 6765 5f66 6163 7473 3a0a   package_facts:.
│ │ │ -001ed680: 2020 2020 6d61 6e61 6765 723a 2061 7574      manager: aut
│ │ │ -001ed690: 6f0a 2020 7461 6773 3a0a 2020 2d20 4e49  o.  tags:.  - NI
│ │ │ -001ed6a0: 5354 2d38 3030 2d35 332d 4143 2d36 0a20  ST-800-53-AC-6. 
│ │ │ -001ed6b0: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ -001ed6c0: 432d 3628 3129 0a20 202d 204e 4953 542d  C-6(1).  - NIST-
│ │ │ -001ed6d0: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ -001ed6e0: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -001ed6f0: 4d2d 3728 6129 0a20 202d 204e 4953 542d  M-7(a).  - NIST-
│ │ │ -001ed700: 3830 302d 3533 2d43 4d2d 3728 6229 0a20  800-53-CM-7(b). 
│ │ │ -001ed710: 202d 204e 4953 542d 3830 302d 3533 2d4d   - NIST-800-53-M
│ │ │ -001ed720: 502d 370a 2020 2d20 636f 6e66 6967 7572  P-7.  - configur
│ │ │ -001ed730: 655f 7374 7261 7465 6779 0a20 202d 2068  e_strategy.  - h
│ │ │ -001ed740: 6967 685f 6469 7372 7570 7469 6f6e 0a20  igh_disruption. 
│ │ │ -001ed750: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ -001ed760: 790a 2020 2d20 6d65 6469 756d 5f73 6576  y.  - medium_sev
│ │ │ -001ed770: 6572 6974 790a 2020 2d20 6d6f 756e 745f  erity.  - mount_
│ │ │ -001ed780: 6f70 7469 6f6e 5f74 6d70 5f6e 6f73 7569  option_tmp_nosui
│ │ │ -001ed790: 640a 2020 2d20 6e6f 5f72 6562 6f6f 745f  d.  - no_reboot_
│ │ │ -001ed7a0: 6e65 6564 6564 0a0a 2d20 6e61 6d65 3a20  needed..- name: 
│ │ │ -001ed7b0: 2741 6464 206e 6f73 7569 6420 4f70 7469  'Add nosuid Opti
│ │ │ -001ed7c0: 6f6e 2074 6f20 2f74 6d70 3a20 4368 6563  on to /tmp: Chec
│ │ │ -001ed7d0: 6b20 696e 666f 726d 6174 696f 6e20 6173  k information as
│ │ │ -001ed7e0: 736f 6369 6174 6564 2074 6f20 6d6f 756e  sociated to moun
│ │ │ -001ed7f0: 7470 6f69 6e74 270a 2020 616e 7369 626c  tpoint'.  ansibl
│ │ │ -001ed800: 652e 6275 696c 7469 6e2e 636f 6d6d 616e  e.builtin.comman
│ │ │ -001ed810: 643a 2066 696e 646d 6e74 202d 2d66 7374  d: findmnt --fst
│ │ │ -001ed820: 6162 2027 2f74 6d70 270a 2020 7265 6769  ab '/tmp'.  regi
│ │ │ -001ed830: 7374 6572 3a20 6465 7669 6365 5f6e 616d  ster: device_nam
│ │ │ -001ed840: 650a 2020 6661 696c 6564 5f77 6865 6e3a  e.  failed_when:
│ │ │ -001ed850: 2064 6576 6963 655f 6e61 6d65 2e72 6320   device_name.rc 
│ │ │ -001ed860: 2667 743b 2031 0a20 2063 6861 6e67 6564  > 1.  changed
│ │ │ -001ed870: 5f77 6865 6e3a 2066 616c 7365 0a20 2063  _when: false.  c
│ │ │ -001ed880: 6865 636b 5f6d 6f64 653a 2066 616c 7365  heck_mode: false
│ │ │ -001ed890: 0a20 2077 6865 6e3a 0a20 202d 2028 206e  .  when:.  - ( n
│ │ │ -001ed8a0: 6f74 2028 2022 6b65 726e 656c 2220 696e  ot ( "kernel" in
│ │ │ -001ed8b0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -001ed8c0: 6163 6b61 6765 7320 616e 6420 2262 6f6f  ackages and "boo
│ │ │ -001ed8d0: 7463 2220 696e 2061 6e73 6962 6c65 5f66  tc" in ansible_f
│ │ │ -001ed8e0: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ -001ed8f0: 2020 616e 6420 6e6f 7420 226f 7065 6e73    and not "opens
│ │ │ -001ed900: 6869 6674 2d6b 7562 656c 6574 2220 696e  hift-kubelet" in
│ │ │ -001ed910: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -001ed920: 6163 6b61 6765 7320 616e 6420 226f 7374  ackages and "ost
│ │ │ -001ed930: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ -001ed940: 7072 6f63 5f63 6d64 6c69 6e65 0a20 2020  proc_cmdline.   
│ │ │ -001ed950: 2029 2061 6e64 206e 6f74 2028 2061 6e73   ) and not ( ans
│ │ │ -001ed960: 6962 6c65 5f76 6972 7475 616c 697a 6174  ible_virtualizat
│ │ │ -001ed970: 696f 6e5f 7479 7065 2069 6e20 5b22 646f  ion_type in ["do
│ │ │ -001ed980: 636b 6572 222c 2022 6c78 6322 2c20 226f  cker", "lxc", "o
│ │ │ -001ed990: 7065 6e76 7a22 2c20 2270 6f64 6d61 6e22  penvz", "podman"
│ │ │ -001ed9a0: 2c0a 2020 2020 2263 6f6e 7461 696e 6572  ,.    "container
│ │ │ -001ed9b0: 225d 2029 2029 0a20 202d 2027 222f 746d  "] ) ).  - '"/tm
│ │ │ -001ed9c0: 7022 2069 6e20 616e 7369 626c 655f 6d6f  p" in ansible_mo
│ │ │ -001ed9d0: 756e 7473 207c 206d 6170 2861 7474 7269  unts | map(attri
│ │ │ -001ed9e0: 6275 7465 3d22 6d6f 756e 7422 2920 7c20  bute="mount") | 
│ │ │ -001ed9f0: 6c69 7374 270a 2020 7461 6773 3a0a 2020  list'.  tags:.  
│ │ │ -001eda00: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ -001eda10: 2d36 0a20 202d 204e 4953 542d 3830 302d  -6.  - NIST-800-
│ │ │ -001eda20: 3533 2d41 432d 3628 3129 0a20 202d 204e  53-AC-6(1).  - N
│ │ │ -001eda30: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ -001eda40: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ -001eda50: 3533 2d43 4d2d 3728 6129 0a20 202d 204e  53-CM-7(a).  - N
│ │ │ -001eda60: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ -001eda70: 6229 0a20 202d 204e 4953 542d 3830 302d  b).  - NIST-800-
│ │ │ -001eda80: 3533 2d4d 502d 370a 2020 2d20 636f 6e66  53-MP-7.  - conf
│ │ │ -001eda90: 6967 7572 655f 7374 7261 7465 6779 0a20  igure_strategy. 
│ │ │ -001edaa0: 202d 2068 6967 685f 6469 7372 7570 7469   - high_disrupti
│ │ │ -001edab0: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c  on.  - low_compl
│ │ │ -001edac0: 6578 6974 790a 2020 2d20 6d65 6469 756d  exity.  - medium
│ │ │ -001edad0: 5f73 6576 6572 6974 790a 2020 2d20 6d6f  _severity.  - mo
│ │ │ -001edae0: 756e 745f 6f70 7469 6f6e 5f74 6d70 5f6e  unt_option_tmp_n
│ │ │ -001edaf0: 6f73 7569 640a 2020 2d20 6e6f 5f72 6562  osuid.  - no_reb
│ │ │ -001edb00: 6f6f 745f 6e65 6564 6564 0a0a 2d20 6e61  oot_needed..- na
│ │ │ -001edb10: 6d65 3a20 2741 6464 206e 6f73 7569 6420  me: 'Add nosuid 
│ │ │ -001edb20: 4f70 7469 6f6e 2074 6f20 2f74 6d70 3a20  Option to /tmp: 
│ │ │ -001edb30: 4372 6561 7465 206d 6f75 6e74 5f69 6e66  Create mount_inf
│ │ │ -001edb40: 6f20 6469 6374 696f 6e61 7279 2076 6172  o dictionary var
│ │ │ -001edb50: 6961 626c 6527 0a20 2073 6574 5f66 6163  iable'.  set_fac
│ │ │ -001edb60: 743a 0a20 2020 206d 6f75 6e74 5f69 6e66  t:.    mount_inf
│ │ │ -001edb70: 6f3a 2027 7b7b 206d 6f75 6e74 5f69 6e66  o: '{{ mount_inf
│ │ │ -001edb80: 6f7c 6465 6661 756c 7428 7b7d 297c 636f  o|default({})|co
│ │ │ -001edb90: 6d62 696e 6528 7b69 7465 6d2e 303a 2069  mbine({item.0: i
│ │ │ -001edba0: 7465 6d2e 317d 2920 7d7d 270a 2020 7769  tem.1}) }}'.  wi
│ │ │ -001edbb0: 7468 5f74 6f67 6574 6865 723a 0a20 202d  th_together:.  -
│ │ │ -001edbc0: 2027 7b7b 2064 6576 6963 655f 6e61 6d65   '{{ device_name
│ │ │ -001edbd0: 2e73 7464 6f75 745f 6c69 6e65 735b 305d  .stdout_lines[0]
│ │ │ -001edbe0: 2e73 706c 6974 2829 207c 206d 6170 2827  .split() | map('
│ │ │ -001edbf0: 276c 6f77 6572 2727 2920 7c20 6c69 7374  'lower'') | list
│ │ │ -001edc00: 207d 7d27 0a20 202d 2027 7b7b 2064 6576   }}'.  - '{{ dev
│ │ │ -001edc10: 6963 655f 6e61 6d65 2e73 7464 6f75 745f  ice_name.stdout_
│ │ │ -001edc20: 6c69 6e65 735b 315d 2e73 706c 6974 2829  lines[1].split()
│ │ │ -001edc30: 207c 206c 6973 7420 7d7d 270a 2020 7768   | list }}'.  wh
│ │ │ -001edc40: 656e 3a0a 2020 2d20 2820 6e6f 7420 2820  en:.  - ( not ( 
│ │ │ -001edc50: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ -001edc60: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001edc70: 6573 2061 6e64 2022 626f 6f74 6322 2069  es and "bootc" i
│ │ │ -001edc80: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -001edc90: 7061 636b 6167 6573 0a20 2020 2061 6e64  packages.    and
│ │ │ -001edca0: 206e 6f74 2022 6f70 656e 7368 6966 742d   not "openshift-
│ │ │ -001edcb0: 6b75 6265 6c65 7422 2069 6e20 616e 7369  kubelet" in ansi
│ │ │ -001edcc0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001edcd0: 6573 2061 6e64 2022 6f73 7472 6565 2220  es and "ostree" 
│ │ │ -001edce0: 696e 2061 6e73 6962 6c65 5f70 726f 635f  in ansible_proc_
│ │ │ -001edcf0: 636d 646c 696e 650a 2020 2020 2920 616e  cmdline.    ) an
│ │ │ -001edd00: 6420 6e6f 7420 2820 616e 7369 626c 655f  d not ( ansible_
│ │ │ -001edd10: 7669 7274 7561 6c69 7a61 7469 6f6e 5f74  virtualization_t
│ │ │ -001edd20: 7970 6520 696e 205b 2264 6f63 6b65 7222  ype in ["docker"
│ │ │ -001edd30: 2c20 226c 7863 222c 2022 6f70 656e 767a  , "lxc", "openvz
│ │ │ -001edd40: 222c 2022 706f 646d 616e 222c 0a20 2020  ", "podman",.   
│ │ │ -001edd50: 2022 636f 6e74 6169 6e65 7222 5d20 2920   "container"] ) 
│ │ │ -001edd60: 290a 2020 2d20 2722 2f74 6d70 2220 696e  ).  - '"/tmp" in
│ │ │ -001edd70: 2061 6e73 6962 6c65 5f6d 6f75 6e74 7320   ansible_mounts 
│ │ │ -001edd80: 7c20 6d61 7028 6174 7472 6962 7574 653d  | map(attribute=
│ │ │ -001edd90: 226d 6f75 6e74 2229 207c 206c 6973 7427  "mount") | list'
│ │ │ -001edda0: 0a20 202d 2064 6576 6963 655f 6e61 6d65  .  - device_name
│ │ │ -001eddb0: 2e73 7464 6f75 7420 6973 2064 6566 696e  .stdout is defin
│ │ │ -001eddc0: 6564 2061 6e64 2064 6576 6963 655f 6e61  ed and device_na
│ │ │ -001eddd0: 6d65 2e73 7464 6f75 745f 6c69 6e65 7320  me.stdout_lines 
│ │ │ -001edde0: 6973 2064 6566 696e 6564 0a20 202d 2028  is defined.  - (
│ │ │ -001eddf0: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ -001ede00: 7574 207c 206c 656e 6774 6820 2667 743b  ut | length >
│ │ │ -001ede10: 2030 290a 2020 7461 6773 3a0a 2020 2d20   0).  tags:.  - 
│ │ │ -001ede20: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ -001ede30: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001ede40: 2d41 432d 3628 3129 0a20 202d 204e 4953  -AC-6(1).  - NIS
│ │ │ -001ede50: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ -001ede60: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001ede70: 2d43 4d2d 3728 6129 0a20 202d 204e 4953  -CM-7(a).  - NIS
│ │ │ -001ede80: 542d 3830 302d 3533 2d43 4d2d 3728 6229  T-800-53-CM-7(b)
│ │ │ -001ede90: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001edea0: 2d4d 502d 370a 2020 2d20 636f 6e66 6967  -MP-7.  - config
│ │ │ -001edeb0: 7572 655f 7374 7261 7465 6779 0a20 202d  ure_strategy.  -
│ │ │ -001edec0: 2068 6967 685f 6469 7372 7570 7469 6f6e   high_disruption
│ │ │ -001eded0: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ -001edee0: 6974 790a 2020 2d20 6d65 6469 756d 5f73  ity.  - medium_s
│ │ │ -001edef0: 6576 6572 6974 790a 2020 2d20 6d6f 756e  everity.  - moun
│ │ │ -001edf00: 745f 6f70 7469 6f6e 5f74 6d70 5f6e 6f73  t_option_tmp_nos
│ │ │ -001edf10: 7569 640a 2020 2d20 6e6f 5f72 6562 6f6f  uid.  - no_reboo
│ │ │ -001edf20: 745f 6e65 6564 6564 0a0a 2d20 6e61 6d65  t_needed..- name
│ │ │ -001edf30: 3a20 2741 6464 206e 6f73 7569 6420 4f70  : 'Add nosuid Op
│ │ │ -001edf40: 7469 6f6e 2074 6f20 2f74 6d70 3a20 4966  tion to /tmp: If
│ │ │ -001edf50: 202f 746d 7020 6e6f 7420 6d6f 756e 7465   /tmp not mounte
│ │ │ -001edf60: 642c 2063 7261 6674 206d 6f75 6e74 5f69  d, craft mount_i
│ │ │ -001edf70: 6e66 6f20 6d61 6e75 616c 6c79 270a 2020  nfo manually'.  
│ │ │ -001edf80: 7365 745f 6661 6374 3a0a 2020 2020 6d6f  set_fact:.    mo
│ │ │ -001edf90: 756e 745f 696e 666f 3a20 277b 7b20 6d6f  unt_info: '{{ mo
│ │ │ -001edfa0: 756e 745f 696e 666f 7c64 6566 6175 6c74  unt_info|default
│ │ │ -001edfb0: 287b 7d29 7c63 6f6d 6269 6e65 287b 6974  ({})|combine({it
│ │ │ -001edfc0: 656d 2e30 3a20 6974 656d 2e31 7d29 207d  em.0: item.1}) }
│ │ │ -001edfd0: 7d27 0a20 2077 6974 685f 746f 6765 7468  }'.  with_togeth
│ │ │ -001edfe0: 6572 3a0a 2020 2d20 2d20 7461 7267 6574  er:.  - - target
│ │ │ -001edff0: 0a20 2020 202d 2073 6f75 7263 650a 2020  .    - source.  
│ │ │ -001ee000: 2020 2d20 6673 7479 7065 0a20 2020 202d    - fstype.    -
│ │ │ -001ee010: 206f 7074 696f 6e73 0a20 202d 202d 202f   options.  - - /
│ │ │ -001ee020: 746d 700a 2020 2020 2d20 2727 0a20 2020  tmp.    - ''.   
│ │ │ -001ee030: 202d 2027 270a 2020 2020 2d20 6465 6661   - ''.    - defa
│ │ │ -001ee040: 756c 7473 0a20 2077 6865 6e3a 0a20 202d  ults.  when:.  -
│ │ │ -001ee050: 2028 206e 6f74 2028 2022 6b65 726e 656c   ( not ( "kernel
│ │ │ -001ee060: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001ee070: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ -001ee080: 2262 6f6f 7463 2220 696e 2061 6e73 6962  "bootc" in ansib
│ │ │ -001ee090: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -001ee0a0: 730a 2020 2020 616e 6420 6e6f 7420 226f  s.    and not "o
│ │ │ -001ee0b0: 7065 6e73 6869 6674 2d6b 7562 656c 6574  penshift-kubelet
│ │ │ -001ee0c0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001ee0d0: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ -001ee0e0: 226f 7374 7265 6522 2069 6e20 616e 7369  "ostree" in ansi
│ │ │ -001ee0f0: 626c 655f 7072 6f63 5f63 6d64 6c69 6e65  ble_proc_cmdline
│ │ │ -001ee100: 0a20 2020 2029 2061 6e64 206e 6f74 2028  .    ) and not (
│ │ │ -001ee110: 2061 6e73 6962 6c65 5f76 6972 7475 616c   ansible_virtual
│ │ │ -001ee120: 697a 6174 696f 6e5f 7479 7065 2069 6e20  ization_type in 
│ │ │ -001ee130: 5b22 646f 636b 6572 222c 2022 6c78 6322  ["docker", "lxc"
│ │ │ -001ee140: 2c20 226f 7065 6e76 7a22 2c20 2270 6f64  , "openvz", "pod
│ │ │ -001ee150: 6d61 6e22 2c0a 2020 2020 2263 6f6e 7461  man",.    "conta
│ │ │ -001ee160: 696e 6572 225d 2029 2029 0a20 202d 2027  iner"] ) ).  - '
│ │ │ -001ee170: 222f 746d 7022 2069 6e20 616e 7369 626c  "/tmp" in ansibl
│ │ │ -001ee180: 655f 6d6f 756e 7473 207c 206d 6170 2861  e_mounts | map(a
│ │ │ -001ee190: 7474 7269 6275 7465 3d22 6d6f 756e 7422  ttribute="mount"
│ │ │ -001ee1a0: 2920 7c20 6c69 7374 270a 2020 2d20 2822  ) | list'.  - ("
│ │ │ -001ee1b0: 2d2d 6673 7461 6222 207c 206c 656e 6774  --fstab" | lengt
│ │ │ -001ee1c0: 6820 3d3d 2030 290a 2020 2d20 6465 7669  h == 0).  - devi
│ │ │ -001ee1d0: 6365 5f6e 616d 652e 7374 646f 7574 2069  ce_name.stdout i
│ │ │ -001ee1e0: 7320 6465 6669 6e65 6420 616e 6420 6465  s defined and de
│ │ │ -001ee1f0: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ -001ee200: 5f6c 696e 6573 2069 7320 6465 6669 6e65  _lines is define
│ │ │ -001ee210: 640a 2020 2d20 2864 6576 6963 655f 6e61  d.  - (device_na
│ │ │ -001ee220: 6d65 2e73 7464 6f75 7420 7c20 6c65 6e67  me.stdout | leng
│ │ │ -001ee230: 7468 203d 3d20 3029 0a20 2074 6167 733a  th == 0).  tags:
│ │ │ -001ee240: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001ee250: 2d41 432d 360a 2020 2d20 4e49 5354 2d38  -AC-6.  - NIST-8
│ │ │ -001ee260: 3030 2d35 332d 4143 2d36 2831 290a 2020  00-53-AC-6(1).  
│ │ │ -001ee270: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -001ee280: 2d36 2861 290a 2020 2d20 4e49 5354 2d38  -6(a).  - NIST-8
│ │ │ -001ee290: 3030 2d35 332d 434d 2d37 2861 290a 2020  00-53-CM-7(a).  
│ │ │ -001ee2a0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -001ee2b0: 2d37 2862 290a 2020 2d20 4e49 5354 2d38  -7(b).  - NIST-8
│ │ │ -001ee2c0: 3030 2d35 332d 4d50 2d37 0a20 202d 2063  00-53-MP-7.  - c
│ │ │ -001ee2d0: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ -001ee2e0: 790a 2020 2d20 6869 6768 5f64 6973 7275  y.  - high_disru
│ │ │ -001ee2f0: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f  ption.  - low_co
│ │ │ -001ee300: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ -001ee310: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ -001ee320: 206d 6f75 6e74 5f6f 7074 696f 6e5f 746d   mount_option_tm
│ │ │ -001ee330: 705f 6e6f 7375 6964 0a20 202d 206e 6f5f  p_nosuid.  - no_
│ │ │ -001ee340: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ -001ee350: 206e 616d 653a 2027 4164 6420 6e6f 7375   name: 'Add nosu
│ │ │ -001ee360: 6964 204f 7074 696f 6e20 746f 202f 746d  id Option to /tm
│ │ │ -001ee370: 703a 204d 616b 6520 7375 7265 206e 6f73  p: Make sure nos
│ │ │ -001ee380: 7569 6420 6f70 7469 6f6e 2069 7320 7061  uid option is pa
│ │ │ -001ee390: 7274 206f 6620 7468 6520 746f 202f 746d  rt of the to /tm
│ │ │ -001ee3a0: 700a 2020 2020 6f70 7469 6f6e 7327 0a20  p.    options'. 
│ │ │ -001ee3b0: 2073 6574 5f66 6163 743a 0a20 2020 206d   set_fact:.    m
│ │ │ -001ee3c0: 6f75 6e74 5f69 6e66 6f3a 2027 7b7b 206d  ount_info: '{{ m
│ │ │ -001ee3d0: 6f75 6e74 5f69 6e66 6f20 7c20 636f 6d62  ount_info | comb
│ │ │ -001ee3e0: 696e 6528 207b 2727 6f70 7469 6f6e 7327  ine( {''options'
│ │ │ -001ee3f0: 273a 2727 2727 7e28 6d6f 756e 745f 696e  ':''''~(mount_in
│ │ │ -001ee400: 666f 2e6f 7074 696f 6e73 207c 0a20 2020  fo.options |.   
│ │ │ -001ee410: 2020 2064 6566 6175 6c74 2827 2727 2729     default('''')
│ │ │ -001ee420: 297e 2827 272c 2727 2069 6620 286d 6f75  )~('','' if (mou
│ │ │ -001ee430: 6e74 5f69 6e66 6f2e 6f70 7469 6f6e 7320  nt_info.options 
│ │ │ -001ee440: 7c20 6465 6661 756c 7428 2727 2727 2929  | default(''''))
│ │ │ -001ee450: 2065 6c73 6520 2727 2727 297e 2727 6e6f   else '''')~''no
│ │ │ -001ee460: 7375 6964 2727 0a20 2020 2020 207d 2920  suid''.      }) 
│ │ │ -001ee470: 7d7d 270a 2020 7768 656e 3a0a 2020 2d20  }}'.  when:.  - 
│ │ │ -001ee480: 2820 6e6f 7420 2820 226b 6572 6e65 6c22  ( not ( "kernel"
│ │ │ -001ee490: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001ee4a0: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ -001ee4b0: 626f 6f74 6322 2069 6e20 616e 7369 626c  bootc" in ansibl
│ │ │ -001ee4c0: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001ee4d0: 0a20 2020 2061 6e64 206e 6f74 2022 6f70  .    and not "op
│ │ │ -001ee4e0: 656e 7368 6966 742d 6b75 6265 6c65 7422  enshift-kubelet"
│ │ │ -001ee4f0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001ee500: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ -001ee510: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ -001ee520: 6c65 5f70 726f 635f 636d 646c 696e 650a  le_proc_cmdline.
│ │ │ -001ee530: 2020 2020 2920 616e 6420 6e6f 7420 2820      ) and not ( 
│ │ │ -001ee540: 616e 7369 626c 655f 7669 7274 7561 6c69  ansible_virtuali
│ │ │ -001ee550: 7a61 7469 6f6e 5f74 7970 6520 696e 205b  zation_type in [
│ │ │ -001ee560: 2264 6f63 6b65 7222 2c20 226c 7863 222c  "docker", "lxc",
│ │ │ -001ee570: 2022 6f70 656e 767a 222c 2022 706f 646d   "openvz", "podm
│ │ │ -001ee580: 616e 222c 0a20 2020 2022 636f 6e74 6169  an",.    "contai
│ │ │ -001ee590: 6e65 7222 5d20 2920 290a 2020 2d20 2722  ner"] ) ).  - '"
│ │ │ -001ee5a0: 2f74 6d70 2220 696e 2061 6e73 6962 6c65  /tmp" in ansible
│ │ │ -001ee5b0: 5f6d 6f75 6e74 7320 7c20 6d61 7028 6174  _mounts | map(at
│ │ │ -001ee5c0: 7472 6962 7574 653d 226d 6f75 6e74 2229  tribute="mount")
│ │ │ -001ee5d0: 207c 206c 6973 7427 0a20 202d 206d 6f75   | list'.  - mou
│ │ │ -001ee5e0: 6e74 5f69 6e66 6f20 6973 2064 6566 696e  nt_info is defin
│ │ │ -001ee5f0: 6564 2061 6e64 2022 6e6f 7375 6964 2220  ed and "nosuid" 
│ │ │ -001ee600: 6e6f 7420 696e 2028 6d6f 756e 745f 696e  not in (mount_in
│ │ │ -001ee610: 666f 2e6f 7074 696f 6e73 207c 2064 6566  fo.options | def
│ │ │ -001ee620: 6175 6c74 2827 2729 290a 2020 7461 6773  ault('')).  tags
│ │ │ -001ee630: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ -001ee640: 332d 4143 2d36 0a20 202d 204e 4953 542d  3-AC-6.  - NIST-
│ │ │ -001ee650: 3830 302d 3533 2d41 432d 3628 3129 0a20  800-53-AC-6(1). 
│ │ │ -001ee660: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -001ee670: 4d2d 3628 6129 0a20 202d 204e 4953 542d  M-6(a).  - NIST-
│ │ │ -001ee680: 3830 302d 3533 2d43 4d2d 3728 6129 0a20  800-53-CM-7(a). 
│ │ │ -001ee690: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -001ee6a0: 4d2d 3728 6229 0a20 202d 204e 4953 542d  M-7(b).  - NIST-
│ │ │ -001ee6b0: 3830 302d 3533 2d4d 502d 370a 2020 2d20  800-53-MP-7.  - 
│ │ │ -001ee6c0: 636f 6e66 6967 7572 655f 7374 7261 7465  configure_strate
│ │ │ -001ee6d0: 6779 0a20 202d 2068 6967 685f 6469 7372  gy.  - high_disr
│ │ │ -001ee6e0: 7570 7469 6f6e 0a20 202d 206c 6f77 5f63  uption.  - low_c
│ │ │ -001ee6f0: 6f6d 706c 6578 6974 790a 2020 2d20 6d65  omplexity.  - me
│ │ │ -001ee700: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ -001ee710: 2d20 6d6f 756e 745f 6f70 7469 6f6e 5f74  - mount_option_t
│ │ │ -001ee720: 6d70 5f6e 6f73 7569 640a 2020 2d20 6e6f  mp_nosuid.  - no
│ │ │ -001ee730: 5f72 6562 6f6f 745f 6e65 6564 6564 0a0a  _reboot_needed..
│ │ │ -001ee740: 2d20 6e61 6d65 3a20 2741 6464 206e 6f73  - name: 'Add nos
│ │ │ -001ee750: 7569 6420 4f70 7469 6f6e 2074 6f20 2f74  uid Option to /t
│ │ │ -001ee760: 6d70 3a20 456e 7375 7265 202f 746d 7020  mp: Ensure /tmp 
│ │ │ -001ee770: 6973 206d 6f75 6e74 6564 2077 6974 6820  is mounted with 
│ │ │ -001ee780: 6e6f 7375 6964 206f 7074 696f 6e27 0a20  nosuid option'. 
│ │ │ -001ee790: 2061 6e73 6962 6c65 2e70 6f73 6978 2e6d   ansible.posix.m
│ │ │ -001ee7a0: 6f75 6e74 3a0a 2020 2020 7061 7468 3a20  ount:.    path: 
│ │ │ -001ee7b0: 2f74 6d70 0a20 2020 2073 7263 3a20 277b  /tmp.    src: '{
│ │ │ -001ee7c0: 7b20 6d6f 756e 745f 696e 666f 2e73 6f75  { mount_info.sou
│ │ │ -001ee7d0: 7263 6520 7c20 6465 6661 756c 7428 2727  rce | default(''
│ │ │ -001ee7e0: 2727 2920 7d7d 270a 2020 2020 6f70 7473  '') }}'.    opts
│ │ │ -001ee7f0: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ -001ee800: 2e6f 7074 696f 6e73 207c 2064 6566 6175  .options | defau
│ │ │ -001ee810: 6c74 2827 2727 2729 207d 7d27 0a20 2020  lt('''') }}'.   
│ │ │ -001ee820: 2073 7461 7465 3a20 6d6f 756e 7465 640a   state: mounted.
│ │ │ -001ee830: 2020 2020 6673 7479 7065 3a20 277b 7b20      fstype: '{{ 
│ │ │ -001ee840: 6d6f 756e 745f 696e 666f 2e66 7374 7970  mount_info.fstyp
│ │ │ -001ee850: 6520 7c20 6465 6661 756c 7428 2727 2727  e | default(''''
│ │ │ -001ee860: 2920 7d7d 270a 2020 7265 6769 7374 6572  ) }}'.  register
│ │ │ -001ee870: 3a20 6d6f 756e 745f 7265 7375 6c74 0a20  : mount_result. 
│ │ │ -001ee880: 2066 6169 6c65 645f 7768 656e 3a0a 2020   failed_when:.  
│ │ │ -001ee890: 2d20 6d6f 756e 745f 7265 7375 6c74 2069  - mount_result i
│ │ │ -001ee8a0: 7320 6661 696c 6564 0a20 202d 2027 2727  s failed.  - '''
│ │ │ -001ee8b0: 7461 7267 6574 2069 7320 6275 7379 2727  target is busy''
│ │ │ -001ee8c0: 206e 6f74 2069 6e20 286d 6f75 6e74 5f72   not in (mount_r
│ │ │ -001ee8d0: 6573 756c 742e 6d73 6720 7c20 6465 6661  esult.msg | defa
│ │ │ -001ee8e0: 756c 7428 2727 2727 2929 270a 2020 2d20  ult(''''))'.  - 
│ │ │ -001ee8f0: 2727 2761 6c72 6561 6479 206d 6f75 6e74  '''already mount
│ │ │ -001ee900: 6564 2727 206e 6f74 2069 6e20 286d 6f75  ed'' not in (mou
│ │ │ -001ee910: 6e74 5f72 6573 756c 742e 6d73 6720 7c20  nt_result.msg | 
│ │ │ -001ee920: 6465 6661 756c 7428 2727 2727 2929 270a  default(''''))'.
│ │ │ -001ee930: 2020 7768 656e 3a0a 2020 2d20 2820 6e6f    when:.  - ( no
│ │ │ -001ee940: 7420 2820 226b 6572 6e65 6c22 2069 6e20  t ( "kernel" in 
│ │ │ -001ee950: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001ee960: 636b 6167 6573 2061 6e64 2022 626f 6f74  ckages and "boot
│ │ │ -001ee970: 6322 2069 6e20 616e 7369 626c 655f 6661  c" in ansible_fa
│ │ │ -001ee980: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ -001ee990: 2061 6e64 206e 6f74 2022 6f70 656e 7368   and not "opensh
│ │ │ -001ee9a0: 6966 742d 6b75 6265 6c65 7422 2069 6e20  ift-kubelet" in 
│ │ │ -001ee9b0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001ee9c0: 636b 6167 6573 2061 6e64 2022 6f73 7472  ckages and "ostr
│ │ │ -001ee9d0: 6565 2220 696e 2061 6e73 6962 6c65 5f70  ee" in ansible_p
│ │ │ -001ee9e0: 726f 635f 636d 646c 696e 650a 2020 2020  roc_cmdline.    
│ │ │ -001ee9f0: 2920 616e 6420 6e6f 7420 2820 616e 7369  ) and not ( ansi
│ │ │ -001eea00: 626c 655f 7669 7274 7561 6c69 7a61 7469  ble_virtualizati
│ │ │ -001eea10: 6f6e 5f74 7970 6520 696e 205b 2264 6f63  on_type in ["doc
│ │ │ -001eea20: 6b65 7222 2c20 226c 7863 222c 2022 6f70  ker", "lxc", "op
│ │ │ -001eea30: 656e 767a 222c 2022 706f 646d 616e 222c  envz", "podman",
│ │ │ -001eea40: 0a20 2020 2022 636f 6e74 6169 6e65 7222  .    "container"
│ │ │ -001eea50: 5d20 2920 290a 2020 2d20 2722 2f74 6d70  ] ) ).  - '"/tmp
│ │ │ -001eea60: 2220 696e 2061 6e73 6962 6c65 5f6d 6f75  " in ansible_mou
│ │ │ -001eea70: 6e74 7320 7c20 6d61 7028 6174 7472 6962  nts | map(attrib
│ │ │ -001eea80: 7574 653d 226d 6f75 6e74 2229 207c 206c  ute="mount") | l
│ │ │ -001eea90: 6973 7427 0a20 202d 206d 6f75 6e74 5f69  ist'.  - mount_i
│ │ │ -001eeaa0: 6e66 6f20 6973 2064 6566 696e 6564 0a20  nfo is defined. 
│ │ │ -001eeab0: 202d 2028 6465 7669 6365 5f6e 616d 652e   - (device_name.
│ │ │ -001eeac0: 7374 646f 7574 2069 7320 6465 6669 6e65  stdout is define
│ │ │ -001eead0: 6420 616e 6420 2864 6576 6963 655f 6e61  d and (device_na
│ │ │ -001eeae0: 6d65 2e73 7464 6f75 7420 7c20 6c65 6e67  me.stdout | leng
│ │ │ -001eeaf0: 7468 2026 6774 3b20 3029 2920 6f72 2028  th > 0)) or (
│ │ │ -001eeb00: 222d 2d66 7374 6162 220a 2020 2020 7c20  "--fstab".    | 
│ │ │ -001eeb10: 6c65 6e67 7468 203d 3d20 3029 0a20 2074  length == 0).  t
│ │ │ -001eeb20: 6167 733a 0a20 202d 204e 4953 542d 3830  ags:.  - NIST-80
│ │ │ -001eeb30: 302d 3533 2d41 432d 360a 2020 2d20 4e49  0-53-AC-6.  - NI
│ │ │ -001eeb40: 5354 2d38 3030 2d35 332d 4143 2d36 2831  ST-800-53-AC-6(1
│ │ │ -001eeb50: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -001eeb60: 332d 434d 2d36 2861 290a 2020 2d20 4e49  3-CM-6(a).  - NI
│ │ │ -001eeb70: 5354 2d38 3030 2d35 332d 434d 2d37 2861  ST-800-53-CM-7(a
│ │ │ -001eeb80: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -001eeb90: 332d 434d 2d37 2862 290a 2020 2d20 4e49  3-CM-7(b).  - NI
│ │ │ -001eeba0: 5354 2d38 3030 2d35 332d 4d50 2d37 0a20  ST-800-53-MP-7. 
│ │ │ -001eebb0: 202d 2063 6f6e 6669 6775 7265 5f73 7472   - configure_str
│ │ │ -001eebc0: 6174 6567 790a 2020 2d20 6869 6768 5f64  ategy.  - high_d
│ │ │ -001eebd0: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ -001eebe0: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ -001eebf0: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ -001eec00: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f  .  - mount_optio
│ │ │ -001eec10: 6e5f 746d 705f 6e6f 7375 6964 0a20 202d  n_tmp_nosuid.  -
│ │ │ -001eec20: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ -001eec30: 640a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  d.
< │ │ │ -001eec40: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Sh │ │ │ -001eecf0: 656c 6c20 7363 7269 7074 20e2 87b2 3c2f ell script ...
Comp │ │ │ -001ed5a0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -001ed5b0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -001ed5d0: 3c2f 7468 3e3c 7464 3e68 6967 683c 2f74 high
R │ │ │ -001ed5f0: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -001ed600: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -001ed620: 2f74 683e 3c74 643e 636f 6e66 6967 7572 /th>configur │ │ │ -001ed630: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
< │ │ │ -001eeda0: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
# Remediation 
│ │ │ -001eedc0: 6973 2061 7070 6c69 6361 626c 6520 6f6e  is applicable on
│ │ │ -001eedd0: 6c79 2069 6e20 6365 7274 6169 6e20 706c  ly in certain pl
│ │ │ -001eede0: 6174 666f 726d 730a 6966 2028 2021 2028  atforms.if ( ! (
│ │ │ -001eedf0: 207b 2072 706d 202d 2d71 7569 6574 202d   { rpm --quiet -
│ │ │ -001eee00: 7120 6b65 726e 656c 203b 7d20 2661 6d70  q kernel ;} &
│ │ │ -001eee10: 3b26 616d 703b 207b 2072 706d 202d 2d71  ;& { rpm --q
│ │ │ -001eee20: 7569 6574 202d 7120 626f 6f74 6320 3b7d  uiet -q bootc ;}
│ │ │ -001eee30: 2026 616d 703b 2661 6d70 3b20 7b20 2120   && { ! 
│ │ │ -001eee40: 7270 6d20 2d2d 7175 6965 7420 2d71 206f  rpm --quiet -q o
│ │ │ -001eee50: 7065 6e73 6869 6674 2d6b 7562 656c 6574  penshift-kubelet
│ │ │ -001eee60: 203b 7d20 2661 6d70 3b26 616d 703b 2028   ;} && (
│ │ │ -001eee70: 5b20 2d66 202f 7275 6e2f 6f73 7472 6565  [ -f /run/ostree
│ │ │ -001eee80: 2d62 6f6f 7465 6420 5d20 7c7c 205b 202d  -booted ] || [ -
│ │ │ -001eee90: 4c20 2f6f 7374 7265 6520 5d29 2029 2026  L /ostree ]) ) &
│ │ │ -001eeea0: 616d 703b 2661 6d70 3b20 2120 2820 5b20  amp;& ! ( [ 
│ │ │ -001eeeb0: 2d66 202f 2e64 6f63 6b65 7265 6e76 205d  -f /.dockerenv ]
│ │ │ -001eeec0: 207c 7c20 5b20 2d66 202f 7275 6e2f 2e63   || [ -f /run/.c
│ │ │ -001eeed0: 6f6e 7461 696e 6572 656e 7620 5d20 2920  ontainerenv ] ) 
│ │ │ -001eeee0: 2920 2661 6d70 3b26 616d 703b 207b 2028  ) && { (
│ │ │ -001eeef0: 2066 696e 646d 6e74 202d 2d6b 6572 6e65   findmnt --kerne
│ │ │ -001eef00: 6c20 222f 746d 7022 2026 6774 3b20 2f64  l "/tmp" > /d
│ │ │ -001eef10: 6576 2f6e 756c 6c20 7c7c 2066 696e 646d  ev/null || findm
│ │ │ -001eef20: 6e74 202d 2d66 7374 6162 2022 2f74 6d70  nt --fstab "/tmp
│ │ │ -001eef30: 2220 2667 743b 202f 6465 762f 6e75 6c6c  " > /dev/null
│ │ │ -001eef40: 2029 3b20 7d3b 2074 6865 6e0a 0a66 756e   ); }; then..fun
│ │ │ -001eef50: 6374 696f 6e20 7065 7266 6f72 6d5f 7265  ction perform_re
│ │ │ -001eef60: 6d65 6469 6174 696f 6e20 7b0a 0a20 2020  mediation {..   
│ │ │ -001eef70: 200a 2020 2020 2020 2020 2320 7468 6520   .        # the 
│ │ │ -001eef80: 6d6f 756e 7420 706f 696e 7420 2f74 6d70  mount point /tmp
│ │ │ -001eef90: 2068 6173 2074 6f20 6265 2064 6566 696e   has to be defin
│ │ │ -001eefa0: 6564 2069 6e20 2f65 7463 2f66 7374 6162  ed in /etc/fstab
│ │ │ -001eefb0: 0a20 2020 2020 2020 2023 2062 6566 6f72  .        # befor
│ │ │ -001eefc0: 6520 7468 6973 2072 656d 6564 6961 7469  e this remediati
│ │ │ -001eefd0: 6f6e 2063 616e 2062 6520 6578 6563 7574  on can be execut
│ │ │ -001eefe0: 6564 2e20 496e 2063 6173 6520 6974 2069  ed. In case it i
│ │ │ -001eeff0: 7320 6e6f 7420 6465 6669 6e65 642c 2074  s not defined, t
│ │ │ -001ef000: 6865 0a20 2020 2020 2020 2023 2072 656d  he.        # rem
│ │ │ -001ef010: 6564 6961 7469 6f6e 2061 626f 7274 7320  ediation aborts 
│ │ │ -001ef020: 616e 6420 6e6f 2063 6861 6e67 6573 2072  and no changes r
│ │ │ -001ef030: 6567 6172 6469 6e67 2074 6865 206d 6f75  egarding the mou
│ │ │ -001ef040: 6e74 2070 6f69 6e74 2061 7265 2064 6f6e  nt point are don
│ │ │ -001ef050: 652e 0a20 2020 2020 2020 206d 6f75 6e74  e..        mount
│ │ │ -001ef060: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ -001ef070: 6578 703d 2224 2870 7269 6e74 6620 225e  exp="$(printf "^
│ │ │ -001ef080: 5b5b 3a73 7061 6365 3a5d 5d2a 5b5e 235d  [[:space:]]*[^#]
│ │ │ -001ef090: 2e2a 5b5b 3a73 7061 6365 3a5d 5d25 735b  .*[[:space:]]%s[
│ │ │ -001ef0a0: 5b3a 7370 6163 653a 5d5d 2220 222f 746d  [:space:]]" "/tm
│ │ │ -001ef0b0: 7022 2922 0a0a 2020 2020 6772 6570 2022  p")"..    grep "
│ │ │ -001ef0c0: 246d 6f75 6e74 5f70 6f69 6e74 5f6d 6174  $mount_point_mat
│ │ │ -001ef0d0: 6368 5f72 6567 6578 7022 202d 7120 2f65  ch_regexp" -q /e
│ │ │ -001ef0e0: 7463 2f66 7374 6162 205c 0a20 2020 2020  tc/fstab \.     
│ │ │ -001ef0f0: 2020 207c 7c20 7b20 6563 686f 2022 5468     || { echo "Th
│ │ │ -001ef100: 6520 6d6f 756e 7420 706f 696e 7420 272f  e mount point '/
│ │ │ -001ef110: 746d 7027 2069 7320 6e6f 7420 6576 656e  tmp' is not even
│ │ │ -001ef120: 2069 6e20 2f65 7463 2f66 7374 6162 2c20   in /etc/fstab, 
│ │ │ -001ef130: 736f 2077 6520 6361 6e27 7420 7365 7420  so we can't set 
│ │ │ -001ef140: 7570 206d 6f75 6e74 206f 7074 696f 6e73  up mount options
│ │ │ -001ef150: 2220 2667 743b 2661 6d70 3b32 3b0a 2020  " >&2;.  
│ │ │ -001ef160: 2020 2020 2020 2020 2020 2020 2020 6563                ec
│ │ │ -001ef170: 686f 2022 4e6f 7420 7265 6d65 6469 6174  ho "Not remediat
│ │ │ -001ef180: 696e 672c 2062 6563 6175 7365 2074 6865  ing, because the
│ │ │ -001ef190: 7265 2069 7320 6e6f 2072 6563 6f72 6420  re is no record 
│ │ │ -001ef1a0: 6f66 202f 746d 7020 696e 202f 6574 632f  of /tmp in /etc/
│ │ │ -001ef1b0: 6673 7461 6222 2026 6774 3b26 616d 703b  fstab" >&
│ │ │ -001ef1c0: 323b 2072 6574 7572 6e20 313b 207d 0a20  2; return 1; }. 
│ │ │ -001ef1d0: 2020 200a 0a0a 2020 2020 6d6f 756e 745f     ...    mount_
│ │ │ -001ef1e0: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ -001ef1f0: 7870 3d22 2428 7072 696e 7466 2022 5e5b  xp="$(printf "^[
│ │ │ -001ef200: 5b3a 7370 6163 653a 5d5d 2a5b 5e23 5d2e  [:space:]]*[^#].
│ │ │ -001ef210: 2a5b 5b3a 7370 6163 653a 5d5d 2573 5b5b  *[[:space:]]%s[[
│ │ │ -001ef220: 3a73 7061 6365 3a5d 5d22 202f 746d 7029  :space:]]" /tmp)
│ │ │ -001ef230: 220a 0a20 2020 2023 2049 6620 7468 6520  "..    # If the 
│ │ │ -001ef240: 6d6f 756e 7420 706f 696e 7420 6973 206e  mount point is n
│ │ │ -001ef250: 6f74 2069 6e20 2f65 7463 2f66 7374 6162  ot in /etc/fstab
│ │ │ -001ef260: 2c20 6765 7420 7072 6576 696f 7573 206d  , get previous m
│ │ │ -001ef270: 6f75 6e74 206f 7074 696f 6e73 2066 726f  ount options fro
│ │ │ -001ef280: 6d20 2f65 7463 2f6d 7461 620a 2020 2020  m /etc/mtab.    
│ │ │ -001ef290: 6966 2021 2067 7265 7020 2d71 2022 246d  if ! grep -q "$m
│ │ │ -001ef2a0: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ -001ef2b0: 5f72 6567 6578 7022 202f 6574 632f 6673  _regexp" /etc/fs
│ │ │ -001ef2c0: 7461 623b 2074 6865 6e0a 2020 2020 2020  tab; then.      
│ │ │ -001ef2d0: 2020 2320 7275 6e74 696d 6520 6f70 7473    # runtime opts
│ │ │ -001ef2e0: 2077 6974 686f 7574 2073 6f6d 6520 6175   without some au
│ │ │ -001ef2f0: 746f 6d61 7469 6320 6b65 726e 656c 2f75  tomatic kernel/u
│ │ │ -001ef300: 7365 7273 7061 6365 2d61 6464 6564 2064  serspace-added d
│ │ │ -001ef310: 6566 6175 6c74 730a 2020 2020 2020 2020  efaults.        
│ │ │ -001ef320: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ -001ef330: 7074 733d 2428 6772 6570 2022 246d 6f75  pts=$(grep "$mou
│ │ │ -001ef340: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ -001ef350: 6567 6578 7022 202f 6574 632f 6d74 6162  egexp" /etc/mtab
│ │ │ -001ef360: 207c 2068 6561 6420 2d31 207c 2020 6177   | head -1 |  aw
│ │ │ -001ef370: 6b20 277b 7072 696e 7420 2434 7d27 205c  k '{print $4}' \
│ │ │ -001ef380: 0a20 2020 2020 2020 2020 2020 2020 2020  .               
│ │ │ -001ef390: 2020 2020 207c 2073 6564 202d 4520 2273       | sed -E "s
│ │ │ -001ef3a0: 2f28 7277 7c64 6566 6175 6c74 737c 7365  /(rw|defaults|se
│ │ │ -001ef3b0: 636c 6162 656c 7c6e 6f73 7569 6429 282c  clabel|nosuid)(,
│ │ │ -001ef3c0: 7c24 292f 2f67 3b73 2f2c 242f 2f22 290a  |$)//g;s/,$//").
│ │ │ -001ef3d0: 2020 2020 2020 2020 5b20 2224 7072 6576          [ "$prev
│ │ │ -001ef3e0: 696f 7573 5f6d 6f75 6e74 5f6f 7074 7322  ious_mount_opts"
│ │ │ -001ef3f0: 205d 2026 616d 703b 2661 6d70 3b20 7072   ] && pr
│ │ │ -001ef400: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ -001ef410: 732b 3d22 2c22 0a20 2020 2020 2020 2023  s+=",".        #
│ │ │ -001ef420: 2049 6e20 6973 6f39 3636 3020 6669 6c65   In iso9660 file
│ │ │ -001ef430: 7379 7374 656d 7320 6d74 6162 2063 6f75  systems mtab cou
│ │ │ -001ef440: 6c64 2064 6573 6372 6962 6520 6120 2262  ld describe a "b
│ │ │ -001ef450: 6c6f 636b 7369 7a65 2220 7661 6c75 652c  locksize" value,
│ │ │ -001ef460: 2074 6869 7320 7368 6f75 6c64 2062 6520   this should be 
│ │ │ -001ef470: 7265 666c 6563 7465 6420 696e 0a20 2020  reflected in.   
│ │ │ -001ef480: 2020 2020 2023 2066 7374 6162 2061 7320       # fstab as 
│ │ │ -001ef490: 2262 6c6f 636b 222e 2020 5468 6520 6e65  "block".  The ne
│ │ │ -001ef4a0: 7874 2076 6172 6961 626c 6520 6973 2074  xt variable is t
│ │ │ -001ef4b0: 6f20 7361 7469 7366 7920 7368 656c 6c63  o satisfy shellc
│ │ │ -001ef4c0: 6865 636b 2053 4332 3035 302e 0a20 2020  heck SC2050..   
│ │ │ -001ef4d0: 2020 2020 2066 735f 7479 7065 3d22 220a       fs_type="".
│ │ │ -001ef4e0: 2020 2020 2020 2020 6966 205b 2020 2224          if [  "$
│ │ │ -001ef4f0: 6673 5f74 7970 6522 203d 3d20 2269 736f  fs_type" == "iso
│ │ │ -001ef500: 3936 3630 2220 5d20 3b20 7468 656e 0a20  9660" ] ; then. 
│ │ │ -001ef510: 2020 2020 2020 2020 2020 2070 7265 7669             previ
│ │ │ -001ef520: 6f75 735f 6d6f 756e 745f 6f70 7473 3d24  ous_mount_opts=$
│ │ │ -001ef530: 2873 6564 2027 732f 626c 6f63 6b73 697a  (sed 's/blocksiz
│ │ │ -001ef540: 653d 2f62 6c6f 636b 3d2f 2720 266c 743b  e=/block=/' <
│ │ │ -001ef550: 266c 743b 266c 743b 2022 2470 7265 7669  << "$previ
│ │ │ -001ef560: 6f75 735f 6d6f 756e 745f 6f70 7473 2229  ous_mount_opts")
│ │ │ -001ef570: 0a20 2020 2020 2020 2066 690a 2020 2020  .        fi.    
│ │ │ -001ef580: 2020 2020 6563 686f 2022 202f 746d 7020      echo " /tmp 
│ │ │ -001ef590: 2064 6566 6175 6c74 732c 247b 7072 6576   defaults,${prev
│ │ │ -001ef5a0: 696f 7573 5f6d 6f75 6e74 5f6f 7074 737d  ious_mount_opts}
│ │ │ -001ef5b0: 6e6f 7375 6964 2030 2030 2220 2667 743b  nosuid 0 0" >
│ │ │ -001ef5c0: 2667 743b 202f 6574 632f 6673 7461 620a  > /etc/fstab.
│ │ │ -001ef5d0: 2020 2020 2320 4966 2074 6865 206d 6f75      # If the mou
│ │ │ -001ef5e0: 6e74 5f6f 7074 206f 7074 696f 6e20 6973  nt_opt option is
│ │ │ -001ef5f0: 206e 6f74 2061 6c72 6561 6479 2069 6e20   not already in 
│ │ │ -001ef600: 7468 6520 6d6f 756e 7420 706f 696e 7427  the mount point'
│ │ │ -001ef610: 7320 2f65 7463 2f66 7374 6162 2065 6e74  s /etc/fstab ent
│ │ │ -001ef620: 7279 2c20 6164 6420 6974 0a20 2020 2065  ry, add it.    e
│ │ │ -001ef630: 6c69 6620 2120 6772 6570 2022 246d 6f75  lif ! grep "$mou
│ │ │ -001ef640: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ -001ef650: 6567 6578 7022 202f 6574 632f 6673 7461  egexp" /etc/fsta
│ │ │ -001ef660: 6220 7c20 6772 6570 202d 7120 226e 6f73  b | grep -q "nos
│ │ │ -001ef670: 7569 6422 3b20 7468 656e 0a20 2020 2020  uid"; then.     
│ │ │ -001ef680: 2020 2070 7265 7669 6f75 735f 6d6f 756e     previous_moun
│ │ │ -001ef690: 745f 6f70 7473 3d24 2867 7265 7020 2224  t_opts=$(grep "$
│ │ │ -001ef6a0: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ -001ef6b0: 685f 7265 6765 7870 2220 2f65 7463 2f66  h_regexp" /etc/f
│ │ │ -001ef6c0: 7374 6162 207c 2061 776b 2027 7b70 7269  stab | awk '{pri
│ │ │ -001ef6d0: 6e74 2024 347d 2729 0a20 2020 2020 2020  nt $4}').       
│ │ │ -001ef6e0: 2073 6564 202d 6920 2273 7c5c 2824 7b6d   sed -i "s|\(${m
│ │ │ -001ef6f0: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ -001ef700: 5f72 6567 6578 707d 2e2a 247b 7072 6576  _regexp}.*${prev
│ │ │ -001ef710: 696f 7573 5f6d 6f75 6e74 5f6f 7074 737d  ious_mount_opts}
│ │ │ -001ef720: 5c29 7c5c 312c 6e6f 7375 6964 7c22 202f  \)|\1,nosuid|" /
│ │ │ -001ef730: 6574 632f 6673 7461 620a 2020 2020 6669  etc/fstab.    fi
│ │ │ -001ef740: 0a0a 0a20 2020 2069 6620 6d6b 6469 7220  ...    if mkdir 
│ │ │ -001ef750: 2d70 2022 2f74 6d70 223b 2074 6865 6e0a  -p "/tmp"; then.
│ │ │ -001ef760: 2020 2020 2020 2020 6966 206d 6f75 6e74          if mount
│ │ │ -001ef770: 706f 696e 7420 2d71 2022 2f74 6d70 223b  point -q "/tmp";
│ │ │ -001ef780: 2074 6865 6e0a 2020 2020 2020 2020 2020   then.          
│ │ │ -001ef790: 2020 6d6f 756e 7420 2d6f 2072 656d 6f75    mount -o remou
│ │ │ -001ef7a0: 6e74 202d 2d74 6172 6765 7420 222f 746d  nt --target "/tm
│ │ │ -001ef7b0: 7022 0a20 2020 2020 2020 2066 690a 2020  p".        fi.  
│ │ │ -001ef7c0: 2020 6669 0a7d 0a0a 7065 7266 6f72 6d5f    fi.}..perform_
│ │ │ -001ef7d0: 7265 6d65 6469 6174 696f 6e0a 0a65 6c73  remediation..els
│ │ │ -001ef7e0: 650a 2020 2020 2667 743b 2661 6d70 3b32  e.    >&2
│ │ │ -001ef7f0: 2065 6368 6f20 2752 656d 6564 6961 7469   echo 'Remediati
│ │ │ -001ef800: 6f6e 2069 7320 6e6f 7420 6170 706c 6963  on is not applic
│ │ │ -001ef810: 6162 6c65 2c20 6e6f 7468 696e 6720 7761  able, nothing wa
│ │ │ -001ef820: 7320 646f 6e65 270a 6669 0a3c 2f63 6f64  s done'.fi.
│ │ │ +001ed370: 3c74 723e 3c74 683e 436f 6d70 6c65 7869
Strategy: │ │ │ +001ed400: 3c74 643e 636f 6e66 6967 7572 653c 2f74
│ │ │ -001eed80: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ -001eed90: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Complexi │ │ │ +001ed380: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +001ed390: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Disruption:high
Reboo │ │ │ +001ed3d0: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ +001ed3e0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
configure
< │ │ │ +001ed420: 7072 653e 3c63 6f64 653e 2d20 6e61 6d65 pre>- name │ │ │ +001ed430: 3a20 4761 7468 6572 2074 6865 2070 6163 : Gather the pac │ │ │ +001ed440: 6b61 6765 2066 6163 7473 0a20 2070 6163 kage facts. pac │ │ │ +001ed450: 6b61 6765 5f66 6163 7473 3a0a 2020 2020 kage_facts:. │ │ │ +001ed460: 6d61 6e61 6765 723a 2061 7574 6f0a 2020 manager: auto. │ │ │ +001ed470: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38 tags:. - NIST-8 │ │ │ +001ed480: 3030 2d35 332d 4143 2d36 0a20 202d 204e 00-53-AC-6. - N │ │ │ +001ed490: 4953 542d 3830 302d 3533 2d41 432d 3628 IST-800-53-AC-6( │ │ │ +001ed4a0: 3129 0a20 202d 204e 4953 542d 3830 302d 1). - NIST-800- │ │ │ +001ed4b0: 3533 2d43 4d2d 3628 6129 0a20 202d 204e 53-CM-6(a). - N │ │ │ +001ed4c0: 4953 542d 3830 302d 3533 2d43 4d2d 3728 IST-800-53-CM-7( │ │ │ +001ed4d0: 6129 0a20 202d 204e 4953 542d 3830 302d a). - NIST-800- │ │ │ +001ed4e0: 3533 2d43 4d2d 3728 6229 0a20 202d 204e 53-CM-7(b). - N │ │ │ +001ed4f0: 4953 542d 3830 302d 3533 2d4d 502d 370a IST-800-53-MP-7. │ │ │ +001ed500: 2020 2d20 636f 6e66 6967 7572 655f 7374 - configure_st │ │ │ +001ed510: 7261 7465 6779 0a20 202d 2068 6967 685f rategy. - high_ │ │ │ +001ed520: 6469 7372 7570 7469 6f6e 0a20 202d 206c disruption. - l │ │ │ +001ed530: 6f77 5f63 6f6d 706c 6578 6974 790a 2020 ow_complexity. │ │ │ +001ed540: 2d20 6d65 6469 756d 5f73 6576 6572 6974 - medium_severit │ │ │ +001ed550: 790a 2020 2d20 6d6f 756e 745f 6f70 7469 y. - mount_opti │ │ │ +001ed560: 6f6e 5f74 6d70 5f6e 6f73 7569 640a 2020 on_tmp_nosuid. │ │ │ +001ed570: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564 - no_reboot_need │ │ │ +001ed580: 6564 0a0a 2d20 6e61 6d65 3a20 2741 6464 ed..- name: 'Add │ │ │ +001ed590: 206e 6f73 7569 6420 4f70 7469 6f6e 2074 nosuid Option t │ │ │ +001ed5a0: 6f20 2f74 6d70 3a20 4368 6563 6b20 696e o /tmp: Check in │ │ │ +001ed5b0: 666f 726d 6174 696f 6e20 6173 736f 6369 formation associ │ │ │ +001ed5c0: 6174 6564 2074 6f20 6d6f 756e 7470 6f69 ated to mountpoi │ │ │ +001ed5d0: 6e74 270a 2020 616e 7369 626c 652e 6275 nt'. ansible.bu │ │ │ +001ed5e0: 696c 7469 6e2e 636f 6d6d 616e 643a 2066 iltin.command: f │ │ │ +001ed5f0: 696e 646d 6e74 202d 2d66 7374 6162 2027 indmnt --fstab ' │ │ │ +001ed600: 2f74 6d70 270a 2020 7265 6769 7374 6572 /tmp'. register │ │ │ +001ed610: 3a20 6465 7669 6365 5f6e 616d 650a 2020 : device_name. │ │ │ +001ed620: 6661 696c 6564 5f77 6865 6e3a 2064 6576 failed_when: dev │ │ │ +001ed630: 6963 655f 6e61 6d65 2e72 6320 2667 743b ice_name.rc > │ │ │ +001ed640: 2031 0a20 2063 6861 6e67 6564 5f77 6865 1. changed_whe │ │ │ +001ed650: 6e3a 2066 616c 7365 0a20 2063 6865 636b n: false. check │ │ │ +001ed660: 5f6d 6f64 653a 2066 616c 7365 0a20 2077 _mode: false. w │ │ │ +001ed670: 6865 6e3a 0a20 202d 2028 206e 6f74 2028 hen:. - ( not ( │ │ │ +001ed680: 2022 6b65 726e 656c 2220 696e 2061 6e73 "kernel" in ans │ │ │ +001ed690: 6962 6c65 5f66 6163 7473 2e70 6163 6b61 ible_facts.packa │ │ │ +001ed6a0: 6765 7320 616e 6420 2262 6f6f 7463 2220 ges and "bootc" │ │ │ +001ed6b0: 696e 2061 6e73 6962 6c65 5f66 6163 7473 in ansible_facts │ │ │ +001ed6c0: 2e70 6163 6b61 6765 730a 2020 2020 616e .packages. an │ │ │ +001ed6d0: 6420 6e6f 7420 226f 7065 6e73 6869 6674 d not "openshift │ │ │ +001ed6e0: 2d6b 7562 656c 6574 2220 696e 2061 6e73 -kubelet" in ans │ │ │ +001ed6f0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61 ible_facts.packa │ │ │ +001ed700: 6765 7320 616e 6420 226f 7374 7265 6522 ges and "ostree" │ │ │ +001ed710: 2069 6e20 616e 7369 626c 655f 7072 6f63 in ansible_proc │ │ │ +001ed720: 5f63 6d64 6c69 6e65 0a20 2020 2029 2061 _cmdline. ) a │ │ │ +001ed730: 6e64 206e 6f74 2028 2061 6e73 6962 6c65 nd not ( ansible │ │ │ +001ed740: 5f76 6972 7475 616c 697a 6174 696f 6e5f _virtualization_ │ │ │ +001ed750: 7479 7065 2069 6e20 5b22 646f 636b 6572 type in ["docker │ │ │ +001ed760: 222c 2022 6c78 6322 2c20 226f 7065 6e76 ", "lxc", "openv │ │ │ +001ed770: 7a22 2c20 2270 6f64 6d61 6e22 2c0a 2020 z", "podman",. │ │ │ +001ed780: 2020 2263 6f6e 7461 696e 6572 225d 2029 "container"] ) │ │ │ +001ed790: 2029 0a20 202d 2027 222f 746d 7022 2069 ). - '"/tmp" i │ │ │ +001ed7a0: 6e20 616e 7369 626c 655f 6d6f 756e 7473 n ansible_mounts │ │ │ +001ed7b0: 207c 206d 6170 2861 7474 7269 6275 7465 | map(attribute │ │ │ +001ed7c0: 3d22 6d6f 756e 7422 2920 7c20 6c69 7374 ="mount") | list │ │ │ +001ed7d0: 270a 2020 7461 6773 3a0a 2020 2d20 4e49 '. tags:. - NI │ │ │ +001ed7e0: 5354 2d38 3030 2d35 332d 4143 2d36 0a20 ST-800-53-AC-6. │ │ │ +001ed7f0: 202d 204e 4953 542d 3830 302d 3533 2d41 - NIST-800-53-A │ │ │ +001ed800: 432d 3628 3129 0a20 202d 204e 4953 542d C-6(1). - NIST- │ │ │ +001ed810: 3830 302d 3533 2d43 4d2d 3628 6129 0a20 800-53-CM-6(a). │ │ │ +001ed820: 202d 204e 4953 542d 3830 302d 3533 2d43 - NIST-800-53-C │ │ │ +001ed830: 4d2d 3728 6129 0a20 202d 204e 4953 542d M-7(a). - NIST- │ │ │ +001ed840: 3830 302d 3533 2d43 4d2d 3728 6229 0a20 800-53-CM-7(b). │ │ │ +001ed850: 202d 204e 4953 542d 3830 302d 3533 2d4d - NIST-800-53-M │ │ │ +001ed860: 502d 370a 2020 2d20 636f 6e66 6967 7572 P-7. - configur │ │ │ +001ed870: 655f 7374 7261 7465 6779 0a20 202d 2068 e_strategy. - h │ │ │ +001ed880: 6967 685f 6469 7372 7570 7469 6f6e 0a20 igh_disruption. │ │ │ +001ed890: 202d 206c 6f77 5f63 6f6d 706c 6578 6974 - low_complexit │ │ │ +001ed8a0: 790a 2020 2d20 6d65 6469 756d 5f73 6576 y. - medium_sev │ │ │ +001ed8b0: 6572 6974 790a 2020 2d20 6d6f 756e 745f erity. - mount_ │ │ │ +001ed8c0: 6f70 7469 6f6e 5f74 6d70 5f6e 6f73 7569 option_tmp_nosui │ │ │ +001ed8d0: 640a 2020 2d20 6e6f 5f72 6562 6f6f 745f d. - no_reboot_ │ │ │ +001ed8e0: 6e65 6564 6564 0a0a 2d20 6e61 6d65 3a20 needed..- name: │ │ │ +001ed8f0: 2741 6464 206e 6f73 7569 6420 4f70 7469 'Add nosuid Opti │ │ │ +001ed900: 6f6e 2074 6f20 2f74 6d70 3a20 4372 6561 on to /tmp: Crea │ │ │ +001ed910: 7465 206d 6f75 6e74 5f69 6e66 6f20 6469 te mount_info di │ │ │ +001ed920: 6374 696f 6e61 7279 2076 6172 6961 626c ctionary variabl │ │ │ +001ed930: 6527 0a20 2073 6574 5f66 6163 743a 0a20 e'. set_fact:. │ │ │ +001ed940: 2020 206d 6f75 6e74 5f69 6e66 6f3a 2027 mount_info: ' │ │ │ +001ed950: 7b7b 206d 6f75 6e74 5f69 6e66 6f7c 6465 {{ mount_info|de │ │ │ +001ed960: 6661 756c 7428 7b7d 297c 636f 6d62 696e fault({})|combin │ │ │ +001ed970: 6528 7b69 7465 6d2e 303a 2069 7465 6d2e e({item.0: item. │ │ │ +001ed980: 317d 2920 7d7d 270a 2020 7769 7468 5f74 1}) }}'. with_t │ │ │ +001ed990: 6f67 6574 6865 723a 0a20 202d 2027 7b7b ogether:. - '{{ │ │ │ +001ed9a0: 2064 6576 6963 655f 6e61 6d65 2e73 7464 device_name.std │ │ │ +001ed9b0: 6f75 745f 6c69 6e65 735b 305d 2e73 706c out_lines[0].spl │ │ │ +001ed9c0: 6974 2829 207c 206d 6170 2827 276c 6f77 it() | map(''low │ │ │ +001ed9d0: 6572 2727 2920 7c20 6c69 7374 207d 7d27 er'') | list }}' │ │ │ +001ed9e0: 0a20 202d 2027 7b7b 2064 6576 6963 655f . - '{{ device_ │ │ │ +001ed9f0: 6e61 6d65 2e73 7464 6f75 745f 6c69 6e65 name.stdout_line │ │ │ +001eda00: 735b 315d 2e73 706c 6974 2829 207c 206c s[1].split() | l │ │ │ +001eda10: 6973 7420 7d7d 270a 2020 7768 656e 3a0a ist }}'. when:. │ │ │ +001eda20: 2020 2d20 2820 6e6f 7420 2820 226b 6572 - ( not ( "ker │ │ │ +001eda30: 6e65 6c22 2069 6e20 616e 7369 626c 655f nel" in ansible_ │ │ │ +001eda40: 6661 6374 732e 7061 636b 6167 6573 2061 facts.packages a │ │ │ +001eda50: 6e64 2022 626f 6f74 6322 2069 6e20 616e nd "bootc" in an │ │ │ +001eda60: 7369 626c 655f 6661 6374 732e 7061 636b sible_facts.pack │ │ │ +001eda70: 6167 6573 0a20 2020 2061 6e64 206e 6f74 ages. and not │ │ │ +001eda80: 2022 6f70 656e 7368 6966 742d 6b75 6265 "openshift-kube │ │ │ +001eda90: 6c65 7422 2069 6e20 616e 7369 626c 655f let" in ansible_ │ │ │ +001edaa0: 6661 6374 732e 7061 636b 6167 6573 2061 facts.packages a │ │ │ +001edab0: 6e64 2022 6f73 7472 6565 2220 696e 2061 nd "ostree" in a │ │ │ +001edac0: 6e73 6962 6c65 5f70 726f 635f 636d 646c nsible_proc_cmdl │ │ │ +001edad0: 696e 650a 2020 2020 2920 616e 6420 6e6f ine. ) and no │ │ │ +001edae0: 7420 2820 616e 7369 626c 655f 7669 7274 t ( ansible_virt │ │ │ +001edaf0: 7561 6c69 7a61 7469 6f6e 5f74 7970 6520 ualization_type │ │ │ +001edb00: 696e 205b 2264 6f63 6b65 7222 2c20 226c in ["docker", "l │ │ │ +001edb10: 7863 222c 2022 6f70 656e 767a 222c 2022 xc", "openvz", " │ │ │ +001edb20: 706f 646d 616e 222c 0a20 2020 2022 636f podman",. "co │ │ │ +001edb30: 6e74 6169 6e65 7222 5d20 2920 290a 2020 ntainer"] ) ). │ │ │ +001edb40: 2d20 2722 2f74 6d70 2220 696e 2061 6e73 - '"/tmp" in ans │ │ │ +001edb50: 6962 6c65 5f6d 6f75 6e74 7320 7c20 6d61 ible_mounts | ma │ │ │ +001edb60: 7028 6174 7472 6962 7574 653d 226d 6f75 p(attribute="mou │ │ │ +001edb70: 6e74 2229 207c 206c 6973 7427 0a20 202d nt") | list'. - │ │ │ +001edb80: 2064 6576 6963 655f 6e61 6d65 2e73 7464 device_name.std │ │ │ +001edb90: 6f75 7420 6973 2064 6566 696e 6564 2061 out is defined a │ │ │ +001edba0: 6e64 2064 6576 6963 655f 6e61 6d65 2e73 nd device_name.s │ │ │ +001edbb0: 7464 6f75 745f 6c69 6e65 7320 6973 2064 tdout_lines is d │ │ │ +001edbc0: 6566 696e 6564 0a20 202d 2028 6465 7669 efined. - (devi │ │ │ +001edbd0: 6365 5f6e 616d 652e 7374 646f 7574 207c ce_name.stdout | │ │ │ +001edbe0: 206c 656e 6774 6820 2667 743b 2030 290a length > 0). │ │ │ +001edbf0: 2020 7461 6773 3a0a 2020 2d20 4e49 5354 tags:. - NIST │ │ │ +001edc00: 2d38 3030 2d35 332d 4143 2d36 0a20 202d -800-53-AC-6. - │ │ │ +001edc10: 204e 4953 542d 3830 302d 3533 2d41 432d NIST-800-53-AC- │ │ │ +001edc20: 3628 3129 0a20 202d 204e 4953 542d 3830 6(1). - NIST-80 │ │ │ +001edc30: 302d 3533 2d43 4d2d 3628 6129 0a20 202d 0-53-CM-6(a). - │ │ │ +001edc40: 204e 4953 542d 3830 302d 3533 2d43 4d2d NIST-800-53-CM- │ │ │ +001edc50: 3728 6129 0a20 202d 204e 4953 542d 3830 7(a). - NIST-80 │ │ │ +001edc60: 302d 3533 2d43 4d2d 3728 6229 0a20 202d 0-53-CM-7(b). - │ │ │ +001edc70: 204e 4953 542d 3830 302d 3533 2d4d 502d NIST-800-53-MP- │ │ │ +001edc80: 370a 2020 2d20 636f 6e66 6967 7572 655f 7. - configure_ │ │ │ +001edc90: 7374 7261 7465 6779 0a20 202d 2068 6967 strategy. - hig │ │ │ +001edca0: 685f 6469 7372 7570 7469 6f6e 0a20 202d h_disruption. - │ │ │ +001edcb0: 206c 6f77 5f63 6f6d 706c 6578 6974 790a low_complexity. │ │ │ +001edcc0: 2020 2d20 6d65 6469 756d 5f73 6576 6572 - medium_sever │ │ │ +001edcd0: 6974 790a 2020 2d20 6d6f 756e 745f 6f70 ity. - mount_op │ │ │ +001edce0: 7469 6f6e 5f74 6d70 5f6e 6f73 7569 640a tion_tmp_nosuid. │ │ │ +001edcf0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65 - no_reboot_ne │ │ │ +001edd00: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741 eded..- name: 'A │ │ │ +001edd10: 6464 206e 6f73 7569 6420 4f70 7469 6f6e dd nosuid Option │ │ │ +001edd20: 2074 6f20 2f74 6d70 3a20 4966 202f 746d to /tmp: If /tm │ │ │ +001edd30: 7020 6e6f 7420 6d6f 756e 7465 642c 2063 p not mounted, c │ │ │ +001edd40: 7261 6674 206d 6f75 6e74 5f69 6e66 6f20 raft mount_info │ │ │ +001edd50: 6d61 6e75 616c 6c79 270a 2020 7365 745f manually'. set_ │ │ │ +001edd60: 6661 6374 3a0a 2020 2020 6d6f 756e 745f fact:. mount_ │ │ │ +001edd70: 696e 666f 3a20 277b 7b20 6d6f 756e 745f info: '{{ mount_ │ │ │ +001edd80: 696e 666f 7c64 6566 6175 6c74 287b 7d29 info|default({}) │ │ │ +001edd90: 7c63 6f6d 6269 6e65 287b 6974 656d 2e30 |combine({item.0 │ │ │ +001edda0: 3a20 6974 656d 2e31 7d29 207d 7d27 0a20 : item.1}) }}'. │ │ │ +001eddb0: 2077 6974 685f 746f 6765 7468 6572 3a0a with_together:. │ │ │ +001eddc0: 2020 2d20 2d20 7461 7267 6574 0a20 2020 - - target. │ │ │ +001eddd0: 202d 2073 6f75 7263 650a 2020 2020 2d20 - source. - │ │ │ +001edde0: 6673 7479 7065 0a20 2020 202d 206f 7074 fstype. - opt │ │ │ +001eddf0: 696f 6e73 0a20 202d 202d 202f 746d 700a ions. - - /tmp. │ │ │ +001ede00: 2020 2020 2d20 2727 0a20 2020 202d 2027 - ''. - ' │ │ │ +001ede10: 270a 2020 2020 2d20 6465 6661 756c 7473 '. - defaults │ │ │ +001ede20: 0a20 2077 6865 6e3a 0a20 202d 2028 206e . when:. - ( n │ │ │ +001ede30: 6f74 2028 2022 6b65 726e 656c 2220 696e ot ( "kernel" in │ │ │ +001ede40: 2061 6e73 6962 6c65 5f66 6163 7473 2e70 ansible_facts.p │ │ │ +001ede50: 6163 6b61 6765 7320 616e 6420 2262 6f6f ackages and "boo │ │ │ +001ede60: 7463 2220 696e 2061 6e73 6962 6c65 5f66 tc" in ansible_f │ │ │ +001ede70: 6163 7473 2e70 6163 6b61 6765 730a 2020 acts.packages. │ │ │ +001ede80: 2020 616e 6420 6e6f 7420 226f 7065 6e73 and not "opens │ │ │ +001ede90: 6869 6674 2d6b 7562 656c 6574 2220 696e hift-kubelet" in │ │ │ +001edea0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70 ansible_facts.p │ │ │ +001edeb0: 6163 6b61 6765 7320 616e 6420 226f 7374 ackages and "ost │ │ │ +001edec0: 7265 6522 2069 6e20 616e 7369 626c 655f ree" in ansible_ │ │ │ +001eded0: 7072 6f63 5f63 6d64 6c69 6e65 0a20 2020 proc_cmdline. │ │ │ +001edee0: 2029 2061 6e64 206e 6f74 2028 2061 6e73 ) and not ( ans │ │ │ +001edef0: 6962 6c65 5f76 6972 7475 616c 697a 6174 ible_virtualizat │ │ │ +001edf00: 696f 6e5f 7479 7065 2069 6e20 5b22 646f ion_type in ["do │ │ │ +001edf10: 636b 6572 222c 2022 6c78 6322 2c20 226f cker", "lxc", "o │ │ │ +001edf20: 7065 6e76 7a22 2c20 2270 6f64 6d61 6e22 penvz", "podman" │ │ │ +001edf30: 2c0a 2020 2020 2263 6f6e 7461 696e 6572 ,. "container │ │ │ +001edf40: 225d 2029 2029 0a20 202d 2027 222f 746d "] ) ). - '"/tm │ │ │ +001edf50: 7022 2069 6e20 616e 7369 626c 655f 6d6f p" in ansible_mo │ │ │ +001edf60: 756e 7473 207c 206d 6170 2861 7474 7269 unts | map(attri │ │ │ +001edf70: 6275 7465 3d22 6d6f 756e 7422 2920 7c20 bute="mount") | │ │ │ +001edf80: 6c69 7374 270a 2020 2d20 2822 2d2d 6673 list'. - ("--fs │ │ │ +001edf90: 7461 6222 207c 206c 656e 6774 6820 3d3d tab" | length == │ │ │ +001edfa0: 2030 290a 2020 2d20 6465 7669 6365 5f6e 0). - device_n │ │ │ +001edfb0: 616d 652e 7374 646f 7574 2069 7320 6465 ame.stdout is de │ │ │ +001edfc0: 6669 6e65 6420 616e 6420 6465 7669 6365 fined and device │ │ │ +001edfd0: 5f6e 616d 652e 7374 646f 7574 5f6c 696e _name.stdout_lin │ │ │ +001edfe0: 6573 2069 7320 6465 6669 6e65 640a 2020 es is defined. │ │ │ +001edff0: 2d20 2864 6576 6963 655f 6e61 6d65 2e73 - (device_name.s │ │ │ +001ee000: 7464 6f75 7420 7c20 6c65 6e67 7468 203d tdout | length = │ │ │ +001ee010: 3d20 3029 0a20 2074 6167 733a 0a20 202d = 0). tags:. - │ │ │ +001ee020: 204e 4953 542d 3830 302d 3533 2d41 432d NIST-800-53-AC- │ │ │ +001ee030: 360a 2020 2d20 4e49 5354 2d38 3030 2d35 6. - NIST-800-5 │ │ │ +001ee040: 332d 4143 2d36 2831 290a 2020 2d20 4e49 3-AC-6(1). - NI │ │ │ +001ee050: 5354 2d38 3030 2d35 332d 434d 2d36 2861 ST-800-53-CM-6(a │ │ │ +001ee060: 290a 2020 2d20 4e49 5354 2d38 3030 2d35 ). - NIST-800-5 │ │ │ +001ee070: 332d 434d 2d37 2861 290a 2020 2d20 4e49 3-CM-7(a). - NI │ │ │ +001ee080: 5354 2d38 3030 2d35 332d 434d 2d37 2862 ST-800-53-CM-7(b │ │ │ +001ee090: 290a 2020 2d20 4e49 5354 2d38 3030 2d35 ). - NIST-800-5 │ │ │ +001ee0a0: 332d 4d50 2d37 0a20 202d 2063 6f6e 6669 3-MP-7. - confi │ │ │ +001ee0b0: 6775 7265 5f73 7472 6174 6567 790a 2020 gure_strategy. │ │ │ +001ee0c0: 2d20 6869 6768 5f64 6973 7275 7074 696f - high_disruptio │ │ │ +001ee0d0: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65 n. - low_comple │ │ │ +001ee0e0: 7869 7479 0a20 202d 206d 6564 6975 6d5f xity. - medium_ │ │ │ +001ee0f0: 7365 7665 7269 7479 0a20 202d 206d 6f75 severity. - mou │ │ │ +001ee100: 6e74 5f6f 7074 696f 6e5f 746d 705f 6e6f nt_option_tmp_no │ │ │ +001ee110: 7375 6964 0a20 202d 206e 6f5f 7265 626f suid. - no_rebo │ │ │ +001ee120: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d ot_needed..- nam │ │ │ +001ee130: 653a 2027 4164 6420 6e6f 7375 6964 204f e: 'Add nosuid O │ │ │ +001ee140: 7074 696f 6e20 746f 202f 746d 703a 204d ption to /tmp: M │ │ │ +001ee150: 616b 6520 7375 7265 206e 6f73 7569 6420 ake sure nosuid │ │ │ +001ee160: 6f70 7469 6f6e 2069 7320 7061 7274 206f option is part o │ │ │ +001ee170: 6620 7468 6520 746f 202f 746d 700a 2020 f the to /tmp. │ │ │ +001ee180: 2020 6f70 7469 6f6e 7327 0a20 2073 6574 options'. set │ │ │ +001ee190: 5f66 6163 743a 0a20 2020 206d 6f75 6e74 _fact:. mount │ │ │ +001ee1a0: 5f69 6e66 6f3a 2027 7b7b 206d 6f75 6e74 _info: '{{ mount │ │ │ +001ee1b0: 5f69 6e66 6f20 7c20 636f 6d62 696e 6528 _info | combine( │ │ │ +001ee1c0: 207b 2727 6f70 7469 6f6e 7327 273a 2727 {''options'':'' │ │ │ +001ee1d0: 2727 7e28 6d6f 756e 745f 696e 666f 2e6f ''~(mount_info.o │ │ │ +001ee1e0: 7074 696f 6e73 207c 0a20 2020 2020 2064 ptions |. d │ │ │ +001ee1f0: 6566 6175 6c74 2827 2727 2729 297e 2827 efault(''''))~(' │ │ │ +001ee200: 272c 2727 2069 6620 286d 6f75 6e74 5f69 ','' if (mount_i │ │ │ +001ee210: 6e66 6f2e 6f70 7469 6f6e 7320 7c20 6465 nfo.options | de │ │ │ +001ee220: 6661 756c 7428 2727 2727 2929 2065 6c73 fault('''')) els │ │ │ +001ee230: 6520 2727 2727 297e 2727 6e6f 7375 6964 e '''')~''nosuid │ │ │ +001ee240: 2727 0a20 2020 2020 207d 2920 7d7d 270a ''. }) }}'. │ │ │ +001ee250: 2020 7768 656e 3a0a 2020 2d20 2820 6e6f when:. - ( no │ │ │ +001ee260: 7420 2820 226b 6572 6e65 6c22 2069 6e20 t ( "kernel" in │ │ │ +001ee270: 616e 7369 626c 655f 6661 6374 732e 7061 ansible_facts.pa │ │ │ +001ee280: 636b 6167 6573 2061 6e64 2022 626f 6f74 ckages and "boot │ │ │ +001ee290: 6322 2069 6e20 616e 7369 626c 655f 6661 c" in ansible_fa │ │ │ +001ee2a0: 6374 732e 7061 636b 6167 6573 0a20 2020 cts.packages. │ │ │ +001ee2b0: 2061 6e64 206e 6f74 2022 6f70 656e 7368 and not "opensh │ │ │ +001ee2c0: 6966 742d 6b75 6265 6c65 7422 2069 6e20 ift-kubelet" in │ │ │ +001ee2d0: 616e 7369 626c 655f 6661 6374 732e 7061 ansible_facts.pa │ │ │ +001ee2e0: 636b 6167 6573 2061 6e64 2022 6f73 7472 ckages and "ostr │ │ │ +001ee2f0: 6565 2220 696e 2061 6e73 6962 6c65 5f70 ee" in ansible_p │ │ │ +001ee300: 726f 635f 636d 646c 696e 650a 2020 2020 roc_cmdline. │ │ │ +001ee310: 2920 616e 6420 6e6f 7420 2820 616e 7369 ) and not ( ansi │ │ │ +001ee320: 626c 655f 7669 7274 7561 6c69 7a61 7469 ble_virtualizati │ │ │ +001ee330: 6f6e 5f74 7970 6520 696e 205b 2264 6f63 on_type in ["doc │ │ │ +001ee340: 6b65 7222 2c20 226c 7863 222c 2022 6f70 ker", "lxc", "op │ │ │ +001ee350: 656e 767a 222c 2022 706f 646d 616e 222c envz", "podman", │ │ │ +001ee360: 0a20 2020 2022 636f 6e74 6169 6e65 7222 . "container" │ │ │ +001ee370: 5d20 2920 290a 2020 2d20 2722 2f74 6d70 ] ) ). - '"/tmp │ │ │ +001ee380: 2220 696e 2061 6e73 6962 6c65 5f6d 6f75 " in ansible_mou │ │ │ +001ee390: 6e74 7320 7c20 6d61 7028 6174 7472 6962 nts | map(attrib │ │ │ +001ee3a0: 7574 653d 226d 6f75 6e74 2229 207c 206c ute="mount") | l │ │ │ +001ee3b0: 6973 7427 0a20 202d 206d 6f75 6e74 5f69 ist'. - mount_i │ │ │ +001ee3c0: 6e66 6f20 6973 2064 6566 696e 6564 2061 nfo is defined a │ │ │ +001ee3d0: 6e64 2022 6e6f 7375 6964 2220 6e6f 7420 nd "nosuid" not │ │ │ +001ee3e0: 696e 2028 6d6f 756e 745f 696e 666f 2e6f in (mount_info.o │ │ │ +001ee3f0: 7074 696f 6e73 207c 2064 6566 6175 6c74 ptions | default │ │ │ +001ee400: 2827 2729 290a 2020 7461 6773 3a0a 2020 ('')). tags:. │ │ │ +001ee410: 2d20 4e49 5354 2d38 3030 2d35 332d 4143 - NIST-800-53-AC │ │ │ +001ee420: 2d36 0a20 202d 204e 4953 542d 3830 302d -6. - NIST-800- │ │ │ +001ee430: 3533 2d41 432d 3628 3129 0a20 202d 204e 53-AC-6(1). - N │ │ │ +001ee440: 4953 542d 3830 302d 3533 2d43 4d2d 3628 IST-800-53-CM-6( │ │ │ +001ee450: 6129 0a20 202d 204e 4953 542d 3830 302d a). - NIST-800- │ │ │ +001ee460: 3533 2d43 4d2d 3728 6129 0a20 202d 204e 53-CM-7(a). - N │ │ │ +001ee470: 4953 542d 3830 302d 3533 2d43 4d2d 3728 IST-800-53-CM-7( │ │ │ +001ee480: 6229 0a20 202d 204e 4953 542d 3830 302d b). - NIST-800- │ │ │ +001ee490: 3533 2d4d 502d 370a 2020 2d20 636f 6e66 53-MP-7. - conf │ │ │ +001ee4a0: 6967 7572 655f 7374 7261 7465 6779 0a20 igure_strategy. │ │ │ +001ee4b0: 202d 2068 6967 685f 6469 7372 7570 7469 - high_disrupti │ │ │ +001ee4c0: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c on. - low_compl │ │ │ +001ee4d0: 6578 6974 790a 2020 2d20 6d65 6469 756d exity. - medium │ │ │ +001ee4e0: 5f73 6576 6572 6974 790a 2020 2d20 6d6f _severity. - mo │ │ │ +001ee4f0: 756e 745f 6f70 7469 6f6e 5f74 6d70 5f6e unt_option_tmp_n │ │ │ +001ee500: 6f73 7569 640a 2020 2d20 6e6f 5f72 6562 osuid. - no_reb │ │ │ +001ee510: 6f6f 745f 6e65 6564 6564 0a0a 2d20 6e61 oot_needed..- na │ │ │ +001ee520: 6d65 3a20 2741 6464 206e 6f73 7569 6420 me: 'Add nosuid │ │ │ +001ee530: 4f70 7469 6f6e 2074 6f20 2f74 6d70 3a20 Option to /tmp: │ │ │ +001ee540: 456e 7375 7265 202f 746d 7020 6973 206d Ensure /tmp is m │ │ │ +001ee550: 6f75 6e74 6564 2077 6974 6820 6e6f 7375 ounted with nosu │ │ │ +001ee560: 6964 206f 7074 696f 6e27 0a20 2061 6e73 id option'. ans │ │ │ +001ee570: 6962 6c65 2e70 6f73 6978 2e6d 6f75 6e74 ible.posix.mount │ │ │ +001ee580: 3a0a 2020 2020 7061 7468 3a20 2f74 6d70 :. path: /tmp │ │ │ +001ee590: 0a20 2020 2073 7263 3a20 277b 7b20 6d6f . src: '{{ mo │ │ │ +001ee5a0: 756e 745f 696e 666f 2e73 6f75 7263 6520 unt_info.source │ │ │ +001ee5b0: 7c20 6465 6661 756c 7428 2727 2727 2920 | default('''') │ │ │ +001ee5c0: 7d7d 270a 2020 2020 6f70 7473 3a20 277b }}'. opts: '{ │ │ │ +001ee5d0: 7b20 6d6f 756e 745f 696e 666f 2e6f 7074 { mount_info.opt │ │ │ +001ee5e0: 696f 6e73 207c 2064 6566 6175 6c74 2827 ions | default(' │ │ │ +001ee5f0: 2727 2729 207d 7d27 0a20 2020 2073 7461 ''') }}'. sta │ │ │ +001ee600: 7465 3a20 6d6f 756e 7465 640a 2020 2020 te: mounted. │ │ │ +001ee610: 6673 7479 7065 3a20 277b 7b20 6d6f 756e fstype: '{{ moun │ │ │ +001ee620: 745f 696e 666f 2e66 7374 7970 6520 7c20 t_info.fstype | │ │ │ +001ee630: 6465 6661 756c 7428 2727 2727 2920 7d7d default('''') }} │ │ │ +001ee640: 270a 2020 7265 6769 7374 6572 3a20 6d6f '. register: mo │ │ │ +001ee650: 756e 745f 7265 7375 6c74 0a20 2066 6169 unt_result. fai │ │ │ +001ee660: 6c65 645f 7768 656e 3a0a 2020 2d20 6d6f led_when:. - mo │ │ │ +001ee670: 756e 745f 7265 7375 6c74 2069 7320 6661 unt_result is fa │ │ │ +001ee680: 696c 6564 0a20 202d 2027 2727 7461 7267 iled. - '''targ │ │ │ +001ee690: 6574 2069 7320 6275 7379 2727 206e 6f74 et is busy'' not │ │ │ +001ee6a0: 2069 6e20 286d 6f75 6e74 5f72 6573 756c in (mount_resul │ │ │ +001ee6b0: 742e 6d73 6720 7c20 6465 6661 756c 7428 t.msg | default( │ │ │ +001ee6c0: 2727 2727 2929 270a 2020 2d20 2727 2761 ''''))'. - '''a │ │ │ +001ee6d0: 6c72 6561 6479 206d 6f75 6e74 6564 2727 lready mounted'' │ │ │ +001ee6e0: 206e 6f74 2069 6e20 286d 6f75 6e74 5f72 not in (mount_r │ │ │ +001ee6f0: 6573 756c 742e 6d73 6720 7c20 6465 6661 esult.msg | defa │ │ │ +001ee700: 756c 7428 2727 2727 2929 270a 2020 7768 ult(''''))'. wh │ │ │ +001ee710: 656e 3a0a 2020 2d20 2820 6e6f 7420 2820 en:. - ( not ( │ │ │ +001ee720: 226b 6572 6e65 6c22 2069 6e20 616e 7369 "kernel" in ansi │ │ │ +001ee730: 626c 655f 6661 6374 732e 7061 636b 6167 ble_facts.packag │ │ │ +001ee740: 6573 2061 6e64 2022 626f 6f74 6322 2069 es and "bootc" i │ │ │ +001ee750: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ +001ee760: 7061 636b 6167 6573 0a20 2020 2061 6e64 packages. and │ │ │ +001ee770: 206e 6f74 2022 6f70 656e 7368 6966 742d not "openshift- │ │ │ +001ee780: 6b75 6265 6c65 7422 2069 6e20 616e 7369 kubelet" in ansi │ │ │ +001ee790: 626c 655f 6661 6374 732e 7061 636b 6167 ble_facts.packag │ │ │ +001ee7a0: 6573 2061 6e64 2022 6f73 7472 6565 2220 es and "ostree" │ │ │ +001ee7b0: 696e 2061 6e73 6962 6c65 5f70 726f 635f in ansible_proc_ │ │ │ +001ee7c0: 636d 646c 696e 650a 2020 2020 2920 616e cmdline. ) an │ │ │ +001ee7d0: 6420 6e6f 7420 2820 616e 7369 626c 655f d not ( ansible_ │ │ │ +001ee7e0: 7669 7274 7561 6c69 7a61 7469 6f6e 5f74 virtualization_t │ │ │ +001ee7f0: 7970 6520 696e 205b 2264 6f63 6b65 7222 ype in ["docker" │ │ │ +001ee800: 2c20 226c 7863 222c 2022 6f70 656e 767a , "lxc", "openvz │ │ │ +001ee810: 222c 2022 706f 646d 616e 222c 0a20 2020 ", "podman",. │ │ │ +001ee820: 2022 636f 6e74 6169 6e65 7222 5d20 2920 "container"] ) │ │ │ +001ee830: 290a 2020 2d20 2722 2f74 6d70 2220 696e ). - '"/tmp" in │ │ │ +001ee840: 2061 6e73 6962 6c65 5f6d 6f75 6e74 7320 ansible_mounts │ │ │ +001ee850: 7c20 6d61 7028 6174 7472 6962 7574 653d | map(attribute= │ │ │ +001ee860: 226d 6f75 6e74 2229 207c 206c 6973 7427 "mount") | list' │ │ │ +001ee870: 0a20 202d 206d 6f75 6e74 5f69 6e66 6f20 . - mount_info │ │ │ +001ee880: 6973 2064 6566 696e 6564 0a20 202d 2028 is defined. - ( │ │ │ +001ee890: 6465 7669 6365 5f6e 616d 652e 7374 646f device_name.stdo │ │ │ +001ee8a0: 7574 2069 7320 6465 6669 6e65 6420 616e ut is defined an │ │ │ +001ee8b0: 6420 2864 6576 6963 655f 6e61 6d65 2e73 d (device_name.s │ │ │ +001ee8c0: 7464 6f75 7420 7c20 6c65 6e67 7468 2026 tdout | length & │ │ │ +001ee8d0: 6774 3b20 3029 2920 6f72 2028 222d 2d66 gt; 0)) or ("--f │ │ │ +001ee8e0: 7374 6162 220a 2020 2020 7c20 6c65 6e67 stab". | leng │ │ │ +001ee8f0: 7468 203d 3d20 3029 0a20 2074 6167 733a th == 0). tags: │ │ │ +001ee900: 0a20 202d 204e 4953 542d 3830 302d 3533 . - NIST-800-53 │ │ │ +001ee910: 2d41 432d 360a 2020 2d20 4e49 5354 2d38 -AC-6. - NIST-8 │ │ │ +001ee920: 3030 2d35 332d 4143 2d36 2831 290a 2020 00-53-AC-6(1). │ │ │ +001ee930: 2d20 4e49 5354 2d38 3030 2d35 332d 434d - NIST-800-53-CM │ │ │ +001ee940: 2d36 2861 290a 2020 2d20 4e49 5354 2d38 -6(a). - NIST-8 │ │ │ +001ee950: 3030 2d35 332d 434d 2d37 2861 290a 2020 00-53-CM-7(a). │ │ │ +001ee960: 2d20 4e49 5354 2d38 3030 2d35 332d 434d - NIST-800-53-CM │ │ │ +001ee970: 2d37 2862 290a 2020 2d20 4e49 5354 2d38 -7(b). - NIST-8 │ │ │ +001ee980: 3030 2d35 332d 4d50 2d37 0a20 202d 2063 00-53-MP-7. - c │ │ │ +001ee990: 6f6e 6669 6775 7265 5f73 7472 6174 6567 onfigure_strateg │ │ │ +001ee9a0: 790a 2020 2d20 6869 6768 5f64 6973 7275 y. - high_disru │ │ │ +001ee9b0: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f ption. - low_co │ │ │ +001ee9c0: 6d70 6c65 7869 7479 0a20 202d 206d 6564 mplexity. - med │ │ │ +001ee9d0: 6975 6d5f 7365 7665 7269 7479 0a20 202d ium_severity. - │ │ │ +001ee9e0: 206d 6f75 6e74 5f6f 7074 696f 6e5f 746d mount_option_tm │ │ │ +001ee9f0: 705f 6e6f 7375 6964 0a20 202d 206e 6f5f p_nosuid. - no_ │ │ │ +001eea00: 7265 626f 6f74 5f6e 6565 6465 640a 3c2f reboot_needed.
Re │ │ │ +001eeac0: 6d65 6469 6174 696f 6e20 5368 656c 6c20 mediation Shell │ │ │ +001eead0: 7363 7269 7074 20e2 87b2 3c2f 613e 3c62 script ...
# 
│ │ │ +001eeb90: 5265 6d65 6469 6174 696f 6e20 6973 2061  Remediation is a
│ │ │ +001eeba0: 7070 6c69 6361 626c 6520 6f6e 6c79 2069  pplicable only i
│ │ │ +001eebb0: 6e20 6365 7274 6169 6e20 706c 6174 666f  n certain platfo
│ │ │ +001eebc0: 726d 730a 6966 2028 2021 2028 207b 2072  rms.if ( ! ( { r
│ │ │ +001eebd0: 706d 202d 2d71 7569 6574 202d 7120 6b65  pm --quiet -q ke
│ │ │ +001eebe0: 726e 656c 203b 7d20 2661 6d70 3b26 616d  rnel ;} &&am
│ │ │ +001eebf0: 703b 207b 2072 706d 202d 2d71 7569 6574  p; { rpm --quiet
│ │ │ +001eec00: 202d 7120 626f 6f74 6320 3b7d 2026 616d   -q bootc ;} &am
│ │ │ +001eec10: 703b 2661 6d70 3b20 7b20 2120 7270 6d20  p;& { ! rpm 
│ │ │ +001eec20: 2d2d 7175 6965 7420 2d71 206f 7065 6e73  --quiet -q opens
│ │ │ +001eec30: 6869 6674 2d6b 7562 656c 6574 203b 7d20  hift-kubelet ;} 
│ │ │ +001eec40: 2661 6d70 3b26 616d 703b 2028 5b20 2d66  && ([ -f
│ │ │ +001eec50: 202f 7275 6e2f 6f73 7472 6565 2d62 6f6f   /run/ostree-boo
│ │ │ +001eec60: 7465 6420 5d20 7c7c 205b 202d 4c20 2f6f  ted ] || [ -L /o
│ │ │ +001eec70: 7374 7265 6520 5d29 2029 2026 616d 703b  stree ]) ) &
│ │ │ +001eec80: 2661 6d70 3b20 2120 2820 5b20 2d66 202f  & ! ( [ -f /
│ │ │ +001eec90: 2e64 6f63 6b65 7265 6e76 205d 207c 7c20  .dockerenv ] || 
│ │ │ +001eeca0: 5b20 2d66 202f 7275 6e2f 2e63 6f6e 7461  [ -f /run/.conta
│ │ │ +001eecb0: 696e 6572 656e 7620 5d20 2920 2920 2661  inerenv ] ) ) &a
│ │ │ +001eecc0: 6d70 3b26 616d 703b 207b 2028 2066 696e  mp;& { ( fin
│ │ │ +001eecd0: 646d 6e74 202d 2d6b 6572 6e65 6c20 222f  dmnt --kernel "/
│ │ │ +001eece0: 746d 7022 2026 6774 3b20 2f64 6576 2f6e  tmp" > /dev/n
│ │ │ +001eecf0: 756c 6c20 7c7c 2066 696e 646d 6e74 202d  ull || findmnt -
│ │ │ +001eed00: 2d66 7374 6162 2022 2f74 6d70 2220 2667  -fstab "/tmp" &g
│ │ │ +001eed10: 743b 202f 6465 762f 6e75 6c6c 2029 3b20  t; /dev/null ); 
│ │ │ +001eed20: 7d3b 2074 6865 6e0a 0a66 756e 6374 696f  }; then..functio
│ │ │ +001eed30: 6e20 7065 7266 6f72 6d5f 7265 6d65 6469  n perform_remedi
│ │ │ +001eed40: 6174 696f 6e20 7b0a 0a20 2020 200a 2020  ation {..    .  
│ │ │ +001eed50: 2020 2020 2020 2320 7468 6520 6d6f 756e        # the moun
│ │ │ +001eed60: 7420 706f 696e 7420 2f74 6d70 2068 6173  t point /tmp has
│ │ │ +001eed70: 2074 6f20 6265 2064 6566 696e 6564 2069   to be defined i
│ │ │ +001eed80: 6e20 2f65 7463 2f66 7374 6162 0a20 2020  n /etc/fstab.   
│ │ │ +001eed90: 2020 2020 2023 2062 6566 6f72 6520 7468       # before th
│ │ │ +001eeda0: 6973 2072 656d 6564 6961 7469 6f6e 2063  is remediation c
│ │ │ +001eedb0: 616e 2062 6520 6578 6563 7574 6564 2e20  an be executed. 
│ │ │ +001eedc0: 496e 2063 6173 6520 6974 2069 7320 6e6f  In case it is no
│ │ │ +001eedd0: 7420 6465 6669 6e65 642c 2074 6865 0a20  t defined, the. 
│ │ │ +001eede0: 2020 2020 2020 2023 2072 656d 6564 6961         # remedia
│ │ │ +001eedf0: 7469 6f6e 2061 626f 7274 7320 616e 6420  tion aborts and 
│ │ │ +001eee00: 6e6f 2063 6861 6e67 6573 2072 6567 6172  no changes regar
│ │ │ +001eee10: 6469 6e67 2074 6865 206d 6f75 6e74 2070  ding the mount p
│ │ │ +001eee20: 6f69 6e74 2061 7265 2064 6f6e 652e 0a20  oint are done.. 
│ │ │ +001eee30: 2020 2020 2020 206d 6f75 6e74 5f70 6f69         mount_poi
│ │ │ +001eee40: 6e74 5f6d 6174 6368 5f72 6567 6578 703d  nt_match_regexp=
│ │ │ +001eee50: 2224 2870 7269 6e74 6620 225e 5b5b 3a73  "$(printf "^[[:s
│ │ │ +001eee60: 7061 6365 3a5d 5d2a 5b5e 235d 2e2a 5b5b  pace:]]*[^#].*[[
│ │ │ +001eee70: 3a73 7061 6365 3a5d 5d25 735b 5b3a 7370  :space:]]%s[[:sp
│ │ │ +001eee80: 6163 653a 5d5d 2220 222f 746d 7022 2922  ace:]]" "/tmp")"
│ │ │ +001eee90: 0a0a 2020 2020 6772 6570 2022 246d 6f75  ..    grep "$mou
│ │ │ +001eeea0: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ +001eeeb0: 6567 6578 7022 202d 7120 2f65 7463 2f66  egexp" -q /etc/f
│ │ │ +001eeec0: 7374 6162 205c 0a20 2020 2020 2020 207c  stab \.        |
│ │ │ +001eeed0: 7c20 7b20 6563 686f 2022 5468 6520 6d6f  | { echo "The mo
│ │ │ +001eeee0: 756e 7420 706f 696e 7420 272f 746d 7027  unt point '/tmp'
│ │ │ +001eeef0: 2069 7320 6e6f 7420 6576 656e 2069 6e20   is not even in 
│ │ │ +001eef00: 2f65 7463 2f66 7374 6162 2c20 736f 2077  /etc/fstab, so w
│ │ │ +001eef10: 6520 6361 6e27 7420 7365 7420 7570 206d  e can't set up m
│ │ │ +001eef20: 6f75 6e74 206f 7074 696f 6e73 2220 2667  ount options" &g
│ │ │ +001eef30: 743b 2661 6d70 3b32 3b0a 2020 2020 2020  t;&2;.      
│ │ │ +001eef40: 2020 2020 2020 2020 2020 6563 686f 2022            echo "
│ │ │ +001eef50: 4e6f 7420 7265 6d65 6469 6174 696e 672c  Not remediating,
│ │ │ +001eef60: 2062 6563 6175 7365 2074 6865 7265 2069   because there i
│ │ │ +001eef70: 7320 6e6f 2072 6563 6f72 6420 6f66 202f  s no record of /
│ │ │ +001eef80: 746d 7020 696e 202f 6574 632f 6673 7461  tmp in /etc/fsta
│ │ │ +001eef90: 6222 2026 6774 3b26 616d 703b 323b 2072  b" >&2; r
│ │ │ +001eefa0: 6574 7572 6e20 313b 207d 0a20 2020 200a  eturn 1; }.    .
│ │ │ +001eefb0: 0a0a 2020 2020 6d6f 756e 745f 706f 696e  ..    mount_poin
│ │ │ +001eefc0: 745f 6d61 7463 685f 7265 6765 7870 3d22  t_match_regexp="
│ │ │ +001eefd0: 2428 7072 696e 7466 2022 5e5b 5b3a 7370  $(printf "^[[:sp
│ │ │ +001eefe0: 6163 653a 5d5d 2a5b 5e23 5d2e 2a5b 5b3a  ace:]]*[^#].*[[:
│ │ │ +001eeff0: 7370 6163 653a 5d5d 2573 5b5b 3a73 7061  space:]]%s[[:spa
│ │ │ +001ef000: 6365 3a5d 5d22 202f 746d 7029 220a 0a20  ce:]]" /tmp)".. 
│ │ │ +001ef010: 2020 2023 2049 6620 7468 6520 6d6f 756e     # If the moun
│ │ │ +001ef020: 7420 706f 696e 7420 6973 206e 6f74 2069  t point is not i
│ │ │ +001ef030: 6e20 2f65 7463 2f66 7374 6162 2c20 6765  n /etc/fstab, ge
│ │ │ +001ef040: 7420 7072 6576 696f 7573 206d 6f75 6e74  t previous mount
│ │ │ +001ef050: 206f 7074 696f 6e73 2066 726f 6d20 2f65   options from /e
│ │ │ +001ef060: 7463 2f6d 7461 620a 2020 2020 6966 2021  tc/mtab.    if !
│ │ │ +001ef070: 2067 7265 7020 2d71 2022 246d 6f75 6e74   grep -q "$mount
│ │ │ +001ef080: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ +001ef090: 6578 7022 202f 6574 632f 6673 7461 623b  exp" /etc/fstab;
│ │ │ +001ef0a0: 2074 6865 6e0a 2020 2020 2020 2020 2320   then.        # 
│ │ │ +001ef0b0: 7275 6e74 696d 6520 6f70 7473 2077 6974  runtime opts wit
│ │ │ +001ef0c0: 686f 7574 2073 6f6d 6520 6175 746f 6d61  hout some automa
│ │ │ +001ef0d0: 7469 6320 6b65 726e 656c 2f75 7365 7273  tic kernel/users
│ │ │ +001ef0e0: 7061 6365 2d61 6464 6564 2064 6566 6175  pace-added defau
│ │ │ +001ef0f0: 6c74 730a 2020 2020 2020 2020 7072 6576  lts.        prev
│ │ │ +001ef100: 696f 7573 5f6d 6f75 6e74 5f6f 7074 733d  ious_mount_opts=
│ │ │ +001ef110: 2428 6772 6570 2022 246d 6f75 6e74 5f70  $(grep "$mount_p
│ │ │ +001ef120: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ +001ef130: 7022 202f 6574 632f 6d74 6162 207c 2068  p" /etc/mtab | h
│ │ │ +001ef140: 6561 6420 2d31 207c 2020 6177 6b20 277b  ead -1 |  awk '{
│ │ │ +001ef150: 7072 696e 7420 2434 7d27 205c 0a20 2020  print $4}' \.   
│ │ │ +001ef160: 2020 2020 2020 2020 2020 2020 2020 2020                  
│ │ │ +001ef170: 207c 2073 6564 202d 4520 2273 2f28 7277   | sed -E "s/(rw
│ │ │ +001ef180: 7c64 6566 6175 6c74 737c 7365 636c 6162  |defaults|seclab
│ │ │ +001ef190: 656c 7c6e 6f73 7569 6429 282c 7c24 292f  el|nosuid)(,|$)/
│ │ │ +001ef1a0: 2f67 3b73 2f2c 242f 2f22 290a 2020 2020  /g;s/,$//").    
│ │ │ +001ef1b0: 2020 2020 5b20 2224 7072 6576 696f 7573      [ "$previous
│ │ │ +001ef1c0: 5f6d 6f75 6e74 5f6f 7074 7322 205d 2026  _mount_opts" ] &
│ │ │ +001ef1d0: 616d 703b 2661 6d70 3b20 7072 6576 696f  amp;& previo
│ │ │ +001ef1e0: 7573 5f6d 6f75 6e74 5f6f 7074 732b 3d22  us_mount_opts+="
│ │ │ +001ef1f0: 2c22 0a20 2020 2020 2020 2023 2049 6e20  ,".        # In 
│ │ │ +001ef200: 6973 6f39 3636 3020 6669 6c65 7379 7374  iso9660 filesyst
│ │ │ +001ef210: 656d 7320 6d74 6162 2063 6f75 6c64 2064  ems mtab could d
│ │ │ +001ef220: 6573 6372 6962 6520 6120 2262 6c6f 636b  escribe a "block
│ │ │ +001ef230: 7369 7a65 2220 7661 6c75 652c 2074 6869  size" value, thi
│ │ │ +001ef240: 7320 7368 6f75 6c64 2062 6520 7265 666c  s should be refl
│ │ │ +001ef250: 6563 7465 6420 696e 0a20 2020 2020 2020  ected in.       
│ │ │ +001ef260: 2023 2066 7374 6162 2061 7320 2262 6c6f   # fstab as "blo
│ │ │ +001ef270: 636b 222e 2020 5468 6520 6e65 7874 2076  ck".  The next v
│ │ │ +001ef280: 6172 6961 626c 6520 6973 2074 6f20 7361  ariable is to sa
│ │ │ +001ef290: 7469 7366 7920 7368 656c 6c63 6865 636b  tisfy shellcheck
│ │ │ +001ef2a0: 2053 4332 3035 302e 0a20 2020 2020 2020   SC2050..       
│ │ │ +001ef2b0: 2066 735f 7479 7065 3d22 220a 2020 2020   fs_type="".    
│ │ │ +001ef2c0: 2020 2020 6966 205b 2020 2224 6673 5f74      if [  "$fs_t
│ │ │ +001ef2d0: 7970 6522 203d 3d20 2269 736f 3936 3630  ype" == "iso9660
│ │ │ +001ef2e0: 2220 5d20 3b20 7468 656e 0a20 2020 2020  " ] ; then.     
│ │ │ +001ef2f0: 2020 2020 2020 2070 7265 7669 6f75 735f         previous_
│ │ │ +001ef300: 6d6f 756e 745f 6f70 7473 3d24 2873 6564  mount_opts=$(sed
│ │ │ +001ef310: 2027 732f 626c 6f63 6b73 697a 653d 2f62   's/blocksize=/b
│ │ │ +001ef320: 6c6f 636b 3d2f 2720 266c 743b 266c 743b  lock=/' <<
│ │ │ +001ef330: 266c 743b 2022 2470 7265 7669 6f75 735f  < "$previous_
│ │ │ +001ef340: 6d6f 756e 745f 6f70 7473 2229 0a20 2020  mount_opts").   
│ │ │ +001ef350: 2020 2020 2066 690a 2020 2020 2020 2020       fi.        
│ │ │ +001ef360: 6563 686f 2022 202f 746d 7020 2064 6566  echo " /tmp  def
│ │ │ +001ef370: 6175 6c74 732c 247b 7072 6576 696f 7573  aults,${previous
│ │ │ +001ef380: 5f6d 6f75 6e74 5f6f 7074 737d 6e6f 7375  _mount_opts}nosu
│ │ │ +001ef390: 6964 2030 2030 2220 2667 743b 2667 743b  id 0 0" >>
│ │ │ +001ef3a0: 202f 6574 632f 6673 7461 620a 2020 2020   /etc/fstab.    
│ │ │ +001ef3b0: 2320 4966 2074 6865 206d 6f75 6e74 5f6f  # If the mount_o
│ │ │ +001ef3c0: 7074 206f 7074 696f 6e20 6973 206e 6f74  pt option is not
│ │ │ +001ef3d0: 2061 6c72 6561 6479 2069 6e20 7468 6520   already in the 
│ │ │ +001ef3e0: 6d6f 756e 7420 706f 696e 7427 7320 2f65  mount point's /e
│ │ │ +001ef3f0: 7463 2f66 7374 6162 2065 6e74 7279 2c20  tc/fstab entry, 
│ │ │ +001ef400: 6164 6420 6974 0a20 2020 2065 6c69 6620  add it.    elif 
│ │ │ +001ef410: 2120 6772 6570 2022 246d 6f75 6e74 5f70  ! grep "$mount_p
│ │ │ +001ef420: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ +001ef430: 7022 202f 6574 632f 6673 7461 6220 7c20  p" /etc/fstab | 
│ │ │ +001ef440: 6772 6570 202d 7120 226e 6f73 7569 6422  grep -q "nosuid"
│ │ │ +001ef450: 3b20 7468 656e 0a20 2020 2020 2020 2070  ; then.        p
│ │ │ +001ef460: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ +001ef470: 7473 3d24 2867 7265 7020 2224 6d6f 756e  ts=$(grep "$moun
│ │ │ +001ef480: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ +001ef490: 6765 7870 2220 2f65 7463 2f66 7374 6162  gexp" /etc/fstab
│ │ │ +001ef4a0: 207c 2061 776b 2027 7b70 7269 6e74 2024   | awk '{print $
│ │ │ +001ef4b0: 347d 2729 0a20 2020 2020 2020 2073 6564  4}').        sed
│ │ │ +001ef4c0: 202d 6920 2273 7c5c 2824 7b6d 6f75 6e74   -i "s|\(${mount
│ │ │ +001ef4d0: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ +001ef4e0: 6578 707d 2e2a 247b 7072 6576 696f 7573  exp}.*${previous
│ │ │ +001ef4f0: 5f6d 6f75 6e74 5f6f 7074 737d 5c29 7c5c  _mount_opts}\)|\
│ │ │ +001ef500: 312c 6e6f 7375 6964 7c22 202f 6574 632f  1,nosuid|" /etc/
│ │ │ +001ef510: 6673 7461 620a 2020 2020 6669 0a0a 0a20  fstab.    fi... 
│ │ │ +001ef520: 2020 2069 6620 6d6b 6469 7220 2d70 2022     if mkdir -p "
│ │ │ +001ef530: 2f74 6d70 223b 2074 6865 6e0a 2020 2020  /tmp"; then.    
│ │ │ +001ef540: 2020 2020 6966 206d 6f75 6e74 706f 696e      if mountpoin
│ │ │ +001ef550: 7420 2d71 2022 2f74 6d70 223b 2074 6865  t -q "/tmp"; the
│ │ │ +001ef560: 6e0a 2020 2020 2020 2020 2020 2020 6d6f  n.            mo
│ │ │ +001ef570: 756e 7420 2d6f 2072 656d 6f75 6e74 202d  unt -o remount -
│ │ │ +001ef580: 2d74 6172 6765 7420 222f 746d 7022 0a20  -target "/tmp". 
│ │ │ +001ef590: 2020 2020 2020 2066 690a 2020 2020 6669         fi.    fi
│ │ │ +001ef5a0: 0a7d 0a0a 7065 7266 6f72 6d5f 7265 6d65  .}..perform_reme
│ │ │ +001ef5b0: 6469 6174 696f 6e0a 0a65 6c73 650a 2020  diation..else.  
│ │ │ +001ef5c0: 2020 2667 743b 2661 6d70 3b32 2065 6368    >&2 ech
│ │ │ +001ef5d0: 6f20 2752 656d 6564 6961 7469 6f6e 2069  o 'Remediation i
│ │ │ +001ef5e0: 7320 6e6f 7420 6170 706c 6963 6162 6c65  s not applicable
│ │ │ +001ef5f0: 2c20 6e6f 7468 696e 6720 7761 7320 646f  , nothing was do
│ │ │ +001ef600: 6e65 270a 6669 0a3c 2f63 6f64 653e 3c2f  ne'.fi.Remediati
│ │ │ +001ef6c0: 6f6e 2041 6e61 636f 6e64 6120 736e 6970  on Anaconda snip
│ │ │ +001ef6d0: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c  pet ...
< │ │ │ +001ef6e0: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +001ef6f0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +001ef700: 7365 2220 6964 3d22 6964 3630 3222 3e3c se" id="id602">< │ │ │ +001ef710: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +001ef720: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +001ef730: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +001ef740: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +001ef750: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >
Disruption:< │ │ │ +001ef7a0: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ +001ef7d0: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy: │ │ │ +001ef7f0: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
Rebo │ │ │ +001eeb60: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +001eeb70: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
Complex │ │ │ +001ef760: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ +001ef770: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
high
Rebo │ │ │ +001ef7b0: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +001ef7c0: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
enable
.part /t │ │ │ +001ef810: 6d70 202d 2d6d 6f75 6e74 6f70 7469 6f6e mp --mountoption │ │ │ +001ef820: 733d 226e 6f73 7569 6422 0a3c 2f63 6f64 s="nosuid".
Remed │ │ │ -001f0460: 6961 7469 6f6e 2041 6e61 636f 6e64 6120 iation Anaconda │ │ │ -001f0470: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ -001f0480: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
< │ │ │ -001f0570: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
Com │ │ │ -001f0500: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ -001f0530: 3a3c 2f74 683e 3c74 643e 6869 6768 3c2f :high
│ │ │ -001f0550: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ -001f0560: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ -001f0580: 3c2f 7468 3e3c 7464 3e65 6e61 626c 653c enable< │ │ │ -001f0590: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
.par
│ │ │ -001f05b0: 7420 2f76 6172 2f6c 6f67 202d 2d6d 6f75  t /var/log --mou
│ │ │ -001f05c0: 6e74 6f70 7469 6f6e 733d 226e 6f65 7865  ntoptions="noexe
│ │ │ -001f05d0: 6322 0a3c 2f63 6f64 653e 3c2f 7072 653e  c".
│ │ │ -001f05e0: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation A │ │ │ -001f0690: 6e73 6962 6c65 2073 6e69 7070 6574 20e2 nsible snippet . │ │ │ -001f06a0: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ -001f0720: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -001f0740: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 < │ │ │ -001f0770: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>
Complexity:< │ │ │ -001f0730: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ -001f0750: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:high
Reboot:false
St │ │ │ -001f07a0: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ -001f07b0: 636f 6e66 6967 7572 653c 2f74 643e 3c2f configure
│ │ │ -001f07d0: 3c63 6f64 653e 2d20 6e61 6d65 3a20 4761  - name: Ga
│ │ │ -001f07e0: 7468 6572 2074 6865 2070 6163 6b61 6765  ther the package
│ │ │ -001f07f0: 2066 6163 7473 0a20 2070 6163 6b61 6765   facts.  package
│ │ │ -001f0800: 5f66 6163 7473 3a0a 2020 2020 6d61 6e61  _facts:.    mana
│ │ │ -001f0810: 6765 723a 2061 7574 6f0a 2020 7461 6773  ger: auto.  tags
│ │ │ -001f0820: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ -001f0830: 332d 4143 2d36 0a20 202d 204e 4953 542d  3-AC-6.  - NIST-
│ │ │ -001f0840: 3830 302d 3533 2d41 432d 3628 3129 0a20  800-53-AC-6(1). 
│ │ │ -001f0850: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -001f0860: 4d2d 3628 6129 0a20 202d 204e 4953 542d  M-6(a).  - NIST-
│ │ │ -001f0870: 3830 302d 3533 2d43 4d2d 3728 6129 0a20  800-53-CM-7(a). 
│ │ │ -001f0880: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -001f0890: 4d2d 3728 6229 0a20 202d 204e 4953 542d  M-7(b).  - NIST-
│ │ │ -001f08a0: 3830 302d 3533 2d4d 502d 370a 2020 2d20  800-53-MP-7.  - 
│ │ │ -001f08b0: 636f 6e66 6967 7572 655f 7374 7261 7465  configure_strate
│ │ │ -001f08c0: 6779 0a20 202d 2068 6967 685f 6469 7372  gy.  - high_disr
│ │ │ -001f08d0: 7570 7469 6f6e 0a20 202d 206c 6f77 5f63  uption.  - low_c
│ │ │ -001f08e0: 6f6d 706c 6578 6974 790a 2020 2d20 6d65  omplexity.  - me
│ │ │ -001f08f0: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ -001f0900: 2d20 6d6f 756e 745f 6f70 7469 6f6e 5f76  - mount_option_v
│ │ │ -001f0910: 6172 5f6c 6f67 5f6e 6f65 7865 630a 2020  ar_log_noexec.  
│ │ │ -001f0920: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ -001f0930: 6564 0a0a 2d20 6e61 6d65 3a20 2741 6464  ed..- name: 'Add
│ │ │ -001f0940: 206e 6f65 7865 6320 4f70 7469 6f6e 2074   noexec Option t
│ │ │ -001f0950: 6f20 2f76 6172 2f6c 6f67 3a20 4368 6563  o /var/log: Chec
│ │ │ -001f0960: 6b20 696e 666f 726d 6174 696f 6e20 6173  k information as
│ │ │ -001f0970: 736f 6369 6174 6564 2074 6f20 6d6f 756e  sociated to moun
│ │ │ -001f0980: 7470 6f69 6e74 270a 2020 616e 7369 626c  tpoint'.  ansibl
│ │ │ -001f0990: 652e 6275 696c 7469 6e2e 636f 6d6d 616e  e.builtin.comman
│ │ │ -001f09a0: 643a 2066 696e 646d 6e74 202d 2d66 7374  d: findmnt --fst
│ │ │ -001f09b0: 6162 2027 2f76 6172 2f6c 6f67 270a 2020  ab '/var/log'.  
│ │ │ -001f09c0: 7265 6769 7374 6572 3a20 6465 7669 6365  register: device
│ │ │ -001f09d0: 5f6e 616d 650a 2020 6661 696c 6564 5f77  _name.  failed_w
│ │ │ -001f09e0: 6865 6e3a 2064 6576 6963 655f 6e61 6d65  hen: device_name
│ │ │ -001f09f0: 2e72 6320 2667 743b 2031 0a20 2063 6861  .rc > 1.  cha
│ │ │ -001f0a00: 6e67 6564 5f77 6865 6e3a 2066 616c 7365  nged_when: false
│ │ │ -001f0a10: 0a20 2063 6865 636b 5f6d 6f64 653a 2066  .  check_mode: f
│ │ │ -001f0a20: 616c 7365 0a20 2077 6865 6e3a 0a20 202d  alse.  when:.  -
│ │ │ -001f0a30: 2028 206e 6f74 2028 2022 6b65 726e 656c   ( not ( "kernel
│ │ │ -001f0a40: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001f0a50: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ -001f0a60: 2262 6f6f 7463 2220 696e 2061 6e73 6962  "bootc" in ansib
│ │ │ -001f0a70: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -001f0a80: 730a 2020 2020 616e 6420 6e6f 7420 226f  s.    and not "o
│ │ │ -001f0a90: 7065 6e73 6869 6674 2d6b 7562 656c 6574  penshift-kubelet
│ │ │ -001f0aa0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001f0ab0: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ -001f0ac0: 226f 7374 7265 6522 2069 6e20 616e 7369  "ostree" in ansi
│ │ │ -001f0ad0: 626c 655f 7072 6f63 5f63 6d64 6c69 6e65  ble_proc_cmdline
│ │ │ -001f0ae0: 0a20 2020 2029 2061 6e64 206e 6f74 2028  .    ) and not (
│ │ │ -001f0af0: 2061 6e73 6962 6c65 5f76 6972 7475 616c   ansible_virtual
│ │ │ -001f0b00: 697a 6174 696f 6e5f 7479 7065 2069 6e20  ization_type in 
│ │ │ -001f0b10: 5b22 646f 636b 6572 222c 2022 6c78 6322  ["docker", "lxc"
│ │ │ -001f0b20: 2c20 226f 7065 6e76 7a22 2c20 2270 6f64  , "openvz", "pod
│ │ │ -001f0b30: 6d61 6e22 2c0a 2020 2020 2263 6f6e 7461  man",.    "conta
│ │ │ -001f0b40: 696e 6572 225d 2029 2029 0a20 202d 2027  iner"] ) ).  - '
│ │ │ -001f0b50: 222f 7661 722f 6c6f 6722 2069 6e20 616e  "/var/log" in an
│ │ │ -001f0b60: 7369 626c 655f 6d6f 756e 7473 207c 206d  sible_mounts | m
│ │ │ -001f0b70: 6170 2861 7474 7269 6275 7465 3d22 6d6f  ap(attribute="mo
│ │ │ -001f0b80: 756e 7422 2920 7c20 6c69 7374 270a 2020  unt") | list'.  
│ │ │ -001f0b90: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38  tags:.  - NIST-8
│ │ │ -001f0ba0: 3030 2d35 332d 4143 2d36 0a20 202d 204e  00-53-AC-6.  - N
│ │ │ -001f0bb0: 4953 542d 3830 302d 3533 2d41 432d 3628  IST-800-53-AC-6(
│ │ │ -001f0bc0: 3129 0a20 202d 204e 4953 542d 3830 302d  1).  - NIST-800-
│ │ │ -001f0bd0: 3533 2d43 4d2d 3628 6129 0a20 202d 204e  53-CM-6(a).  - N
│ │ │ -001f0be0: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ -001f0bf0: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ -001f0c00: 3533 2d43 4d2d 3728 6229 0a20 202d 204e  53-CM-7(b).  - N
│ │ │ -001f0c10: 4953 542d 3830 302d 3533 2d4d 502d 370a  IST-800-53-MP-7.
│ │ │ -001f0c20: 2020 2d20 636f 6e66 6967 7572 655f 7374    - configure_st
│ │ │ -001f0c30: 7261 7465 6779 0a20 202d 2068 6967 685f  rategy.  - high_
│ │ │ -001f0c40: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ -001f0c50: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ -001f0c60: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ -001f0c70: 790a 2020 2d20 6d6f 756e 745f 6f70 7469  y.  - mount_opti
│ │ │ -001f0c80: 6f6e 5f76 6172 5f6c 6f67 5f6e 6f65 7865  on_var_log_noexe
│ │ │ -001f0c90: 630a 2020 2d20 6e6f 5f72 6562 6f6f 745f  c.  - no_reboot_
│ │ │ -001f0ca0: 6e65 6564 6564 0a0a 2d20 6e61 6d65 3a20  needed..- name: 
│ │ │ -001f0cb0: 2741 6464 206e 6f65 7865 6320 4f70 7469  'Add noexec Opti
│ │ │ -001f0cc0: 6f6e 2074 6f20 2f76 6172 2f6c 6f67 3a20  on to /var/log: 
│ │ │ -001f0cd0: 4372 6561 7465 206d 6f75 6e74 5f69 6e66  Create mount_inf
│ │ │ -001f0ce0: 6f20 6469 6374 696f 6e61 7279 2076 6172  o dictionary var
│ │ │ -001f0cf0: 6961 626c 6527 0a20 2073 6574 5f66 6163  iable'.  set_fac
│ │ │ -001f0d00: 743a 0a20 2020 206d 6f75 6e74 5f69 6e66  t:.    mount_inf
│ │ │ -001f0d10: 6f3a 2027 7b7b 206d 6f75 6e74 5f69 6e66  o: '{{ mount_inf
│ │ │ -001f0d20: 6f7c 6465 6661 756c 7428 7b7d 297c 636f  o|default({})|co
│ │ │ -001f0d30: 6d62 696e 6528 7b69 7465 6d2e 303a 2069  mbine({item.0: i
│ │ │ -001f0d40: 7465 6d2e 317d 2920 7d7d 270a 2020 7769  tem.1}) }}'.  wi
│ │ │ -001f0d50: 7468 5f74 6f67 6574 6865 723a 0a20 202d  th_together:.  -
│ │ │ -001f0d60: 2027 7b7b 2064 6576 6963 655f 6e61 6d65   '{{ device_name
│ │ │ -001f0d70: 2e73 7464 6f75 745f 6c69 6e65 735b 305d  .stdout_lines[0]
│ │ │ -001f0d80: 2e73 706c 6974 2829 207c 206d 6170 2827  .split() | map('
│ │ │ -001f0d90: 276c 6f77 6572 2727 2920 7c20 6c69 7374  'lower'') | list
│ │ │ -001f0da0: 207d 7d27 0a20 202d 2027 7b7b 2064 6576   }}'.  - '{{ dev
│ │ │ -001f0db0: 6963 655f 6e61 6d65 2e73 7464 6f75 745f  ice_name.stdout_
│ │ │ -001f0dc0: 6c69 6e65 735b 315d 2e73 706c 6974 2829  lines[1].split()
│ │ │ -001f0dd0: 207c 206c 6973 7420 7d7d 270a 2020 7768   | list }}'.  wh
│ │ │ -001f0de0: 656e 3a0a 2020 2d20 2820 6e6f 7420 2820  en:.  - ( not ( 
│ │ │ -001f0df0: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ -001f0e00: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001f0e10: 6573 2061 6e64 2022 626f 6f74 6322 2069  es and "bootc" i
│ │ │ -001f0e20: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -001f0e30: 7061 636b 6167 6573 0a20 2020 2061 6e64  packages.    and
│ │ │ -001f0e40: 206e 6f74 2022 6f70 656e 7368 6966 742d   not "openshift-
│ │ │ -001f0e50: 6b75 6265 6c65 7422 2069 6e20 616e 7369  kubelet" in ansi
│ │ │ -001f0e60: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001f0e70: 6573 2061 6e64 2022 6f73 7472 6565 2220  es and "ostree" 
│ │ │ -001f0e80: 696e 2061 6e73 6962 6c65 5f70 726f 635f  in ansible_proc_
│ │ │ -001f0e90: 636d 646c 696e 650a 2020 2020 2920 616e  cmdline.    ) an
│ │ │ -001f0ea0: 6420 6e6f 7420 2820 616e 7369 626c 655f  d not ( ansible_
│ │ │ -001f0eb0: 7669 7274 7561 6c69 7a61 7469 6f6e 5f74  virtualization_t
│ │ │ -001f0ec0: 7970 6520 696e 205b 2264 6f63 6b65 7222  ype in ["docker"
│ │ │ -001f0ed0: 2c20 226c 7863 222c 2022 6f70 656e 767a  , "lxc", "openvz
│ │ │ -001f0ee0: 222c 2022 706f 646d 616e 222c 0a20 2020  ", "podman",.   
│ │ │ -001f0ef0: 2022 636f 6e74 6169 6e65 7222 5d20 2920   "container"] ) 
│ │ │ -001f0f00: 290a 2020 2d20 2722 2f76 6172 2f6c 6f67  ).  - '"/var/log
│ │ │ -001f0f10: 2220 696e 2061 6e73 6962 6c65 5f6d 6f75  " in ansible_mou
│ │ │ -001f0f20: 6e74 7320 7c20 6d61 7028 6174 7472 6962  nts | map(attrib
│ │ │ -001f0f30: 7574 653d 226d 6f75 6e74 2229 207c 206c  ute="mount") | l
│ │ │ -001f0f40: 6973 7427 0a20 202d 2064 6576 6963 655f  ist'.  - device_
│ │ │ -001f0f50: 6e61 6d65 2e73 7464 6f75 7420 6973 2064  name.stdout is d
│ │ │ -001f0f60: 6566 696e 6564 2061 6e64 2064 6576 6963  efined and devic
│ │ │ -001f0f70: 655f 6e61 6d65 2e73 7464 6f75 745f 6c69  e_name.stdout_li
│ │ │ -001f0f80: 6e65 7320 6973 2064 6566 696e 6564 0a20  nes is defined. 
│ │ │ -001f0f90: 202d 2028 6465 7669 6365 5f6e 616d 652e   - (device_name.
│ │ │ -001f0fa0: 7374 646f 7574 207c 206c 656e 6774 6820  stdout | length 
│ │ │ -001f0fb0: 2667 743b 2030 290a 2020 7461 6773 3a0a  > 0).  tags:.
│ │ │ -001f0fc0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001f0fd0: 4143 2d36 0a20 202d 204e 4953 542d 3830  AC-6.  - NIST-80
│ │ │ -001f0fe0: 302d 3533 2d41 432d 3628 3129 0a20 202d  0-53-AC-6(1).  -
│ │ │ -001f0ff0: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -001f1000: 3628 6129 0a20 202d 204e 4953 542d 3830  6(a).  - NIST-80
│ │ │ -001f1010: 302d 3533 2d43 4d2d 3728 6129 0a20 202d  0-53-CM-7(a).  -
│ │ │ -001f1020: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -001f1030: 3728 6229 0a20 202d 204e 4953 542d 3830  7(b).  - NIST-80
│ │ │ -001f1040: 302d 3533 2d4d 502d 370a 2020 2d20 636f  0-53-MP-7.  - co
│ │ │ -001f1050: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ -001f1060: 0a20 202d 2068 6967 685f 6469 7372 7570  .  - high_disrup
│ │ │ -001f1070: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d  tion.  - low_com
│ │ │ -001f1080: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ -001f1090: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ -001f10a0: 6d6f 756e 745f 6f70 7469 6f6e 5f76 6172  mount_option_var
│ │ │ -001f10b0: 5f6c 6f67 5f6e 6f65 7865 630a 2020 2d20  _log_noexec.  - 
│ │ │ -001f10c0: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ -001f10d0: 0a0a 2d20 6e61 6d65 3a20 2741 6464 206e  ..- name: 'Add n
│ │ │ -001f10e0: 6f65 7865 6320 4f70 7469 6f6e 2074 6f20  oexec Option to 
│ │ │ -001f10f0: 2f76 6172 2f6c 6f67 3a20 4966 202f 7661  /var/log: If /va
│ │ │ -001f1100: 722f 6c6f 6720 6e6f 7420 6d6f 756e 7465  r/log not mounte
│ │ │ -001f1110: 642c 2063 7261 6674 206d 6f75 6e74 5f69  d, craft mount_i
│ │ │ -001f1120: 6e66 6f0a 2020 2020 6d61 6e75 616c 6c79  nfo.    manually
│ │ │ -001f1130: 270a 2020 7365 745f 6661 6374 3a0a 2020  '.  set_fact:.  
│ │ │ -001f1140: 2020 6d6f 756e 745f 696e 666f 3a20 277b    mount_info: '{
│ │ │ -001f1150: 7b20 6d6f 756e 745f 696e 666f 7c64 6566  { mount_info|def
│ │ │ -001f1160: 6175 6c74 287b 7d29 7c63 6f6d 6269 6e65  ault({})|combine
│ │ │ -001f1170: 287b 6974 656d 2e30 3a20 6974 656d 2e31  ({item.0: item.1
│ │ │ -001f1180: 7d29 207d 7d27 0a20 2077 6974 685f 746f  }) }}'.  with_to
│ │ │ -001f1190: 6765 7468 6572 3a0a 2020 2d20 2d20 7461  gether:.  - - ta
│ │ │ -001f11a0: 7267 6574 0a20 2020 202d 2073 6f75 7263  rget.    - sourc
│ │ │ -001f11b0: 650a 2020 2020 2d20 6673 7479 7065 0a20  e.    - fstype. 
│ │ │ -001f11c0: 2020 202d 206f 7074 696f 6e73 0a20 202d     - options.  -
│ │ │ -001f11d0: 202d 202f 7661 722f 6c6f 670a 2020 2020   - /var/log.    
│ │ │ -001f11e0: 2d20 2727 0a20 2020 202d 2027 270a 2020  - ''.    - ''.  
│ │ │ -001f11f0: 2020 2d20 6465 6661 756c 7473 0a20 2077    - defaults.  w
│ │ │ -001f1200: 6865 6e3a 0a20 202d 2028 206e 6f74 2028  hen:.  - ( not (
│ │ │ -001f1210: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ -001f1220: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001f1230: 6765 7320 616e 6420 2262 6f6f 7463 2220  ges and "bootc" 
│ │ │ -001f1240: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001f1250: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ -001f1260: 6420 6e6f 7420 226f 7065 6e73 6869 6674  d not "openshift
│ │ │ -001f1270: 2d6b 7562 656c 6574 2220 696e 2061 6e73  -kubelet" in ans
│ │ │ -001f1280: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001f1290: 6765 7320 616e 6420 226f 7374 7265 6522  ges and "ostree"
│ │ │ -001f12a0: 2069 6e20 616e 7369 626c 655f 7072 6f63   in ansible_proc
│ │ │ -001f12b0: 5f63 6d64 6c69 6e65 0a20 2020 2029 2061  _cmdline.    ) a
│ │ │ -001f12c0: 6e64 206e 6f74 2028 2061 6e73 6962 6c65  nd not ( ansible
│ │ │ -001f12d0: 5f76 6972 7475 616c 697a 6174 696f 6e5f  _virtualization_
│ │ │ -001f12e0: 7479 7065 2069 6e20 5b22 646f 636b 6572  type in ["docker
│ │ │ -001f12f0: 222c 2022 6c78 6322 2c20 226f 7065 6e76  ", "lxc", "openv
│ │ │ -001f1300: 7a22 2c20 2270 6f64 6d61 6e22 2c0a 2020  z", "podman",.  
│ │ │ -001f1310: 2020 2263 6f6e 7461 696e 6572 225d 2029    "container"] )
│ │ │ -001f1320: 2029 0a20 202d 2027 222f 7661 722f 6c6f   ).  - '"/var/lo
│ │ │ -001f1330: 6722 2069 6e20 616e 7369 626c 655f 6d6f  g" in ansible_mo
│ │ │ -001f1340: 756e 7473 207c 206d 6170 2861 7474 7269  unts | map(attri
│ │ │ -001f1350: 6275 7465 3d22 6d6f 756e 7422 2920 7c20  bute="mount") | 
│ │ │ -001f1360: 6c69 7374 270a 2020 2d20 2822 2d2d 6673  list'.  - ("--fs
│ │ │ -001f1370: 7461 6222 207c 206c 656e 6774 6820 3d3d  tab" | length ==
│ │ │ -001f1380: 2030 290a 2020 2d20 6465 7669 6365 5f6e   0).  - device_n
│ │ │ -001f1390: 616d 652e 7374 646f 7574 2069 7320 6465  ame.stdout is de
│ │ │ -001f13a0: 6669 6e65 6420 616e 6420 6465 7669 6365  fined and device
│ │ │ -001f13b0: 5f6e 616d 652e 7374 646f 7574 5f6c 696e  _name.stdout_lin
│ │ │ -001f13c0: 6573 2069 7320 6465 6669 6e65 640a 2020  es is defined.  
│ │ │ -001f13d0: 2d20 2864 6576 6963 655f 6e61 6d65 2e73  - (device_name.s
│ │ │ -001f13e0: 7464 6f75 7420 7c20 6c65 6e67 7468 203d  tdout | length =
│ │ │ -001f13f0: 3d20 3029 0a20 2074 6167 733a 0a20 202d  = 0).  tags:.  -
│ │ │ -001f1400: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ -001f1410: 360a 2020 2d20 4e49 5354 2d38 3030 2d35  6.  - NIST-800-5
│ │ │ -001f1420: 332d 4143 2d36 2831 290a 2020 2d20 4e49  3-AC-6(1).  - NI
│ │ │ -001f1430: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ -001f1440: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -001f1450: 332d 434d 2d37 2861 290a 2020 2d20 4e49  3-CM-7(a).  - NI
│ │ │ -001f1460: 5354 2d38 3030 2d35 332d 434d 2d37 2862  ST-800-53-CM-7(b
│ │ │ -001f1470: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -001f1480: 332d 4d50 2d37 0a20 202d 2063 6f6e 6669  3-MP-7.  - confi
│ │ │ -001f1490: 6775 7265 5f73 7472 6174 6567 790a 2020  gure_strategy.  
│ │ │ -001f14a0: 2d20 6869 6768 5f64 6973 7275 7074 696f  - high_disruptio
│ │ │ -001f14b0: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65  n.  - low_comple
│ │ │ -001f14c0: 7869 7479 0a20 202d 206d 6564 6975 6d5f  xity.  - medium_
│ │ │ -001f14d0: 7365 7665 7269 7479 0a20 202d 206d 6f75  severity.  - mou
│ │ │ -001f14e0: 6e74 5f6f 7074 696f 6e5f 7661 725f 6c6f  nt_option_var_lo
│ │ │ -001f14f0: 675f 6e6f 6578 6563 0a20 202d 206e 6f5f  g_noexec.  - no_
│ │ │ -001f1500: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ -001f1510: 206e 616d 653a 2027 4164 6420 6e6f 6578   name: 'Add noex
│ │ │ -001f1520: 6563 204f 7074 696f 6e20 746f 202f 7661  ec Option to /va
│ │ │ -001f1530: 722f 6c6f 673a 204d 616b 6520 7375 7265  r/log: Make sure
│ │ │ -001f1540: 206e 6f65 7865 6320 6f70 7469 6f6e 2069   noexec option i
│ │ │ -001f1550: 7320 7061 7274 206f 6620 7468 6520 746f  s part of the to
│ │ │ -001f1560: 0a20 2020 202f 7661 722f 6c6f 6720 6f70  .    /var/log op
│ │ │ -001f1570: 7469 6f6e 7327 0a20 2073 6574 5f66 6163  tions'.  set_fac
│ │ │ -001f1580: 743a 0a20 2020 206d 6f75 6e74 5f69 6e66  t:.    mount_inf
│ │ │ -001f1590: 6f3a 2027 7b7b 206d 6f75 6e74 5f69 6e66  o: '{{ mount_inf
│ │ │ -001f15a0: 6f20 7c20 636f 6d62 696e 6528 207b 2727  o | combine( {''
│ │ │ -001f15b0: 6f70 7469 6f6e 7327 273a 2727 2727 7e28  options'':''''~(
│ │ │ -001f15c0: 6d6f 756e 745f 696e 666f 2e6f 7074 696f  mount_info.optio
│ │ │ -001f15d0: 6e73 207c 0a20 2020 2020 2064 6566 6175  ns |.      defau
│ │ │ -001f15e0: 6c74 2827 2727 2729 297e 2827 272c 2727  lt(''''))~('',''
│ │ │ -001f15f0: 2069 6620 286d 6f75 6e74 5f69 6e66 6f2e   if (mount_info.
│ │ │ -001f1600: 6f70 7469 6f6e 7320 7c20 6465 6661 756c  options | defaul
│ │ │ -001f1610: 7428 2727 2727 2929 2065 6c73 6520 2727  t('''')) else ''
│ │ │ -001f1620: 2727 297e 2727 6e6f 6578 6563 2727 0a20  '')~''noexec''. 
│ │ │ -001f1630: 2020 2020 207d 2920 7d7d 270a 2020 7768       }) }}'.  wh
│ │ │ -001f1640: 656e 3a0a 2020 2d20 2820 6e6f 7420 2820  en:.  - ( not ( 
│ │ │ -001f1650: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ -001f1660: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001f1670: 6573 2061 6e64 2022 626f 6f74 6322 2069  es and "bootc" i
│ │ │ -001f1680: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -001f1690: 7061 636b 6167 6573 0a20 2020 2061 6e64  packages.    and
│ │ │ -001f16a0: 206e 6f74 2022 6f70 656e 7368 6966 742d   not "openshift-
│ │ │ -001f16b0: 6b75 6265 6c65 7422 2069 6e20 616e 7369  kubelet" in ansi
│ │ │ -001f16c0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001f16d0: 6573 2061 6e64 2022 6f73 7472 6565 2220  es and "ostree" 
│ │ │ -001f16e0: 696e 2061 6e73 6962 6c65 5f70 726f 635f  in ansible_proc_
│ │ │ -001f16f0: 636d 646c 696e 650a 2020 2020 2920 616e  cmdline.    ) an
│ │ │ -001f1700: 6420 6e6f 7420 2820 616e 7369 626c 655f  d not ( ansible_
│ │ │ -001f1710: 7669 7274 7561 6c69 7a61 7469 6f6e 5f74  virtualization_t
│ │ │ -001f1720: 7970 6520 696e 205b 2264 6f63 6b65 7222  ype in ["docker"
│ │ │ -001f1730: 2c20 226c 7863 222c 2022 6f70 656e 767a  , "lxc", "openvz
│ │ │ -001f1740: 222c 2022 706f 646d 616e 222c 0a20 2020  ", "podman",.   
│ │ │ -001f1750: 2022 636f 6e74 6169 6e65 7222 5d20 2920   "container"] ) 
│ │ │ -001f1760: 290a 2020 2d20 2722 2f76 6172 2f6c 6f67  ).  - '"/var/log
│ │ │ -001f1770: 2220 696e 2061 6e73 6962 6c65 5f6d 6f75  " in ansible_mou
│ │ │ -001f1780: 6e74 7320 7c20 6d61 7028 6174 7472 6962  nts | map(attrib
│ │ │ -001f1790: 7574 653d 226d 6f75 6e74 2229 207c 206c  ute="mount") | l
│ │ │ -001f17a0: 6973 7427 0a20 202d 206d 6f75 6e74 5f69  ist'.  - mount_i
│ │ │ -001f17b0: 6e66 6f20 6973 2064 6566 696e 6564 2061  nfo is defined a
│ │ │ -001f17c0: 6e64 2022 6e6f 6578 6563 2220 6e6f 7420  nd "noexec" not 
│ │ │ -001f17d0: 696e 2028 6d6f 756e 745f 696e 666f 2e6f  in (mount_info.o
│ │ │ -001f17e0: 7074 696f 6e73 207c 2064 6566 6175 6c74  ptions | default
│ │ │ -001f17f0: 2827 2729 290a 2020 7461 6773 3a0a 2020  ('')).  tags:.  
│ │ │ -001f1800: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ -001f1810: 2d36 0a20 202d 204e 4953 542d 3830 302d  -6.  - NIST-800-
│ │ │ -001f1820: 3533 2d41 432d 3628 3129 0a20 202d 204e  53-AC-6(1).  - N
│ │ │ -001f1830: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ -001f1840: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ -001f1850: 3533 2d43 4d2d 3728 6129 0a20 202d 204e  53-CM-7(a).  - N
│ │ │ -001f1860: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ -001f1870: 6229 0a20 202d 204e 4953 542d 3830 302d  b).  - NIST-800-
│ │ │ -001f1880: 3533 2d4d 502d 370a 2020 2d20 636f 6e66  53-MP-7.  - conf
│ │ │ -001f1890: 6967 7572 655f 7374 7261 7465 6779 0a20  igure_strategy. 
│ │ │ -001f18a0: 202d 2068 6967 685f 6469 7372 7570 7469   - high_disrupti
│ │ │ -001f18b0: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c  on.  - low_compl
│ │ │ -001f18c0: 6578 6974 790a 2020 2d20 6d65 6469 756d  exity.  - medium
│ │ │ -001f18d0: 5f73 6576 6572 6974 790a 2020 2d20 6d6f  _severity.  - mo
│ │ │ -001f18e0: 756e 745f 6f70 7469 6f6e 5f76 6172 5f6c  unt_option_var_l
│ │ │ -001f18f0: 6f67 5f6e 6f65 7865 630a 2020 2d20 6e6f  og_noexec.  - no
│ │ │ -001f1900: 5f72 6562 6f6f 745f 6e65 6564 6564 0a0a  _reboot_needed..
│ │ │ -001f1910: 2d20 6e61 6d65 3a20 2741 6464 206e 6f65  - name: 'Add noe
│ │ │ -001f1920: 7865 6320 4f70 7469 6f6e 2074 6f20 2f76  xec Option to /v
│ │ │ -001f1930: 6172 2f6c 6f67 3a20 456e 7375 7265 202f  ar/log: Ensure /
│ │ │ -001f1940: 7661 722f 6c6f 6720 6973 206d 6f75 6e74  var/log is mount
│ │ │ -001f1950: 6564 2077 6974 6820 6e6f 6578 6563 206f  ed with noexec o
│ │ │ -001f1960: 7074 696f 6e27 0a20 2061 6e73 6962 6c65  ption'.  ansible
│ │ │ -001f1970: 2e70 6f73 6978 2e6d 6f75 6e74 3a0a 2020  .posix.mount:.  
│ │ │ -001f1980: 2020 7061 7468 3a20 2f76 6172 2f6c 6f67    path: /var/log
│ │ │ -001f1990: 0a20 2020 2073 7263 3a20 277b 7b20 6d6f  .    src: '{{ mo
│ │ │ -001f19a0: 756e 745f 696e 666f 2e73 6f75 7263 6520  unt_info.source 
│ │ │ -001f19b0: 7c20 6465 6661 756c 7428 2727 2727 2920  | default('''') 
│ │ │ -001f19c0: 7d7d 270a 2020 2020 6f70 7473 3a20 277b  }}'.    opts: '{
│ │ │ -001f19d0: 7b20 6d6f 756e 745f 696e 666f 2e6f 7074  { mount_info.opt
│ │ │ -001f19e0: 696f 6e73 207c 2064 6566 6175 6c74 2827  ions | default('
│ │ │ -001f19f0: 2727 2729 207d 7d27 0a20 2020 2073 7461  ''') }}'.    sta
│ │ │ -001f1a00: 7465 3a20 6d6f 756e 7465 640a 2020 2020  te: mounted.    
│ │ │ -001f1a10: 6673 7479 7065 3a20 277b 7b20 6d6f 756e  fstype: '{{ moun
│ │ │ -001f1a20: 745f 696e 666f 2e66 7374 7970 6520 7c20  t_info.fstype | 
│ │ │ -001f1a30: 6465 6661 756c 7428 2727 2727 2920 7d7d  default('''') }}
│ │ │ -001f1a40: 270a 2020 7265 6769 7374 6572 3a20 6d6f  '.  register: mo
│ │ │ -001f1a50: 756e 745f 7265 7375 6c74 0a20 2066 6169  unt_result.  fai
│ │ │ -001f1a60: 6c65 645f 7768 656e 3a0a 2020 2d20 6d6f  led_when:.  - mo
│ │ │ -001f1a70: 756e 745f 7265 7375 6c74 2069 7320 6661  unt_result is fa
│ │ │ -001f1a80: 696c 6564 0a20 202d 2027 2727 7461 7267  iled.  - '''targ
│ │ │ -001f1a90: 6574 2069 7320 6275 7379 2727 206e 6f74  et is busy'' not
│ │ │ -001f1aa0: 2069 6e20 286d 6f75 6e74 5f72 6573 756c   in (mount_resul
│ │ │ -001f1ab0: 742e 6d73 6720 7c20 6465 6661 756c 7428  t.msg | default(
│ │ │ -001f1ac0: 2727 2727 2929 270a 2020 2d20 2727 2761  ''''))'.  - '''a
│ │ │ -001f1ad0: 6c72 6561 6479 206d 6f75 6e74 6564 2727  lready mounted''
│ │ │ -001f1ae0: 206e 6f74 2069 6e20 286d 6f75 6e74 5f72   not in (mount_r
│ │ │ -001f1af0: 6573 756c 742e 6d73 6720 7c20 6465 6661  esult.msg | defa
│ │ │ -001f1b00: 756c 7428 2727 2727 2929 270a 2020 7768  ult(''''))'.  wh
│ │ │ -001f1b10: 656e 3a0a 2020 2d20 2820 6e6f 7420 2820  en:.  - ( not ( 
│ │ │ -001f1b20: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ -001f1b30: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001f1b40: 6573 2061 6e64 2022 626f 6f74 6322 2069  es and "bootc" i
│ │ │ -001f1b50: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -001f1b60: 7061 636b 6167 6573 0a20 2020 2061 6e64  packages.    and
│ │ │ -001f1b70: 206e 6f74 2022 6f70 656e 7368 6966 742d   not "openshift-
│ │ │ -001f1b80: 6b75 6265 6c65 7422 2069 6e20 616e 7369  kubelet" in ansi
│ │ │ -001f1b90: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001f1ba0: 6573 2061 6e64 2022 6f73 7472 6565 2220  es and "ostree" 
│ │ │ -001f1bb0: 696e 2061 6e73 6962 6c65 5f70 726f 635f  in ansible_proc_
│ │ │ -001f1bc0: 636d 646c 696e 650a 2020 2020 2920 616e  cmdline.    ) an
│ │ │ -001f1bd0: 6420 6e6f 7420 2820 616e 7369 626c 655f  d not ( ansible_
│ │ │ -001f1be0: 7669 7274 7561 6c69 7a61 7469 6f6e 5f74  virtualization_t
│ │ │ -001f1bf0: 7970 6520 696e 205b 2264 6f63 6b65 7222  ype in ["docker"
│ │ │ -001f1c00: 2c20 226c 7863 222c 2022 6f70 656e 767a  , "lxc", "openvz
│ │ │ -001f1c10: 222c 2022 706f 646d 616e 222c 0a20 2020  ", "podman",.   
│ │ │ -001f1c20: 2022 636f 6e74 6169 6e65 7222 5d20 2920   "container"] ) 
│ │ │ -001f1c30: 290a 2020 2d20 2722 2f76 6172 2f6c 6f67  ).  - '"/var/log
│ │ │ -001f1c40: 2220 696e 2061 6e73 6962 6c65 5f6d 6f75  " in ansible_mou
│ │ │ -001f1c50: 6e74 7320 7c20 6d61 7028 6174 7472 6962  nts | map(attrib
│ │ │ -001f1c60: 7574 653d 226d 6f75 6e74 2229 207c 206c  ute="mount") | l
│ │ │ -001f1c70: 6973 7427 0a20 202d 206d 6f75 6e74 5f69  ist'.  - mount_i
│ │ │ -001f1c80: 6e66 6f20 6973 2064 6566 696e 6564 0a20  nfo is defined. 
│ │ │ -001f1c90: 202d 2028 6465 7669 6365 5f6e 616d 652e   - (device_name.
│ │ │ -001f1ca0: 7374 646f 7574 2069 7320 6465 6669 6e65  stdout is define
│ │ │ -001f1cb0: 6420 616e 6420 2864 6576 6963 655f 6e61  d and (device_na
│ │ │ -001f1cc0: 6d65 2e73 7464 6f75 7420 7c20 6c65 6e67  me.stdout | leng
│ │ │ -001f1cd0: 7468 2026 6774 3b20 3029 2920 6f72 2028  th > 0)) or (
│ │ │ -001f1ce0: 222d 2d66 7374 6162 220a 2020 2020 7c20  "--fstab".    | 
│ │ │ -001f1cf0: 6c65 6e67 7468 203d 3d20 3029 0a20 2074  length == 0).  t
│ │ │ -001f1d00: 6167 733a 0a20 202d 204e 4953 542d 3830  ags:.  - NIST-80
│ │ │ -001f1d10: 302d 3533 2d41 432d 360a 2020 2d20 4e49  0-53-AC-6.  - NI
│ │ │ -001f1d20: 5354 2d38 3030 2d35 332d 4143 2d36 2831  ST-800-53-AC-6(1
│ │ │ -001f1d30: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -001f1d40: 332d 434d 2d36 2861 290a 2020 2d20 4e49  3-CM-6(a).  - NI
│ │ │ -001f1d50: 5354 2d38 3030 2d35 332d 434d 2d37 2861  ST-800-53-CM-7(a
│ │ │ -001f1d60: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -001f1d70: 332d 434d 2d37 2862 290a 2020 2d20 4e49  3-CM-7(b).  - NI
│ │ │ -001f1d80: 5354 2d38 3030 2d35 332d 4d50 2d37 0a20  ST-800-53-MP-7. 
│ │ │ -001f1d90: 202d 2063 6f6e 6669 6775 7265 5f73 7472   - configure_str
│ │ │ -001f1da0: 6174 6567 790a 2020 2d20 6869 6768 5f64  ategy.  - high_d
│ │ │ -001f1db0: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ -001f1dc0: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ -001f1dd0: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ -001f1de0: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f  .  - mount_optio
│ │ │ -001f1df0: 6e5f 7661 725f 6c6f 675f 6e6f 6578 6563  n_var_log_noexec
│ │ │ -001f1e00: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ -001f1e10: 6565 6465 640a 3c2f 636f 6465 3e3c 2f70  eeded.

Remediatio │ │ │ -001f1ed0: 6e20 5368 656c 6c20 7363 7269 7074 20e2 n Shell script . │ │ │ -001f1ee0: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ -001f1f60: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -001f1f70: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
Reboot:false
│ │ │ -001f1f90: 3c63 6f64 653e 2320 5265 6d65 6469 6174  # Remediat
│ │ │ -001f1fa0: 696f 6e20 6973 2061 7070 6c69 6361 626c  ion is applicabl
│ │ │ -001f1fb0: 6520 6f6e 6c79 2069 6e20 6365 7274 6169  e only in certai
│ │ │ -001f1fc0: 6e20 706c 6174 666f 726d 730a 6966 2028  n platforms.if (
│ │ │ -001f1fd0: 2021 2028 207b 2072 706d 202d 2d71 7569   ! ( { rpm --qui
│ │ │ -001f1fe0: 6574 202d 7120 6b65 726e 656c 203b 7d20  et -q kernel ;} 
│ │ │ -001f1ff0: 2661 6d70 3b26 616d 703b 207b 2072 706d  && { rpm
│ │ │ -001f2000: 202d 2d71 7569 6574 202d 7120 626f 6f74   --quiet -q boot
│ │ │ -001f2010: 6320 3b7d 2026 616d 703b 2661 6d70 3b20  c ;} && 
│ │ │ -001f2020: 7b20 2120 7270 6d20 2d2d 7175 6965 7420  { ! rpm --quiet 
│ │ │ -001f2030: 2d71 206f 7065 6e73 6869 6674 2d6b 7562  -q openshift-kub
│ │ │ -001f2040: 656c 6574 203b 7d20 2661 6d70 3b26 616d  elet ;} &&am
│ │ │ -001f2050: 703b 2028 5b20 2d66 202f 7275 6e2f 6f73  p; ([ -f /run/os
│ │ │ -001f2060: 7472 6565 2d62 6f6f 7465 6420 5d20 7c7c  tree-booted ] ||
│ │ │ -001f2070: 205b 202d 4c20 2f6f 7374 7265 6520 5d29   [ -L /ostree ])
│ │ │ -001f2080: 2029 2026 616d 703b 2661 6d70 3b20 2120   ) && ! 
│ │ │ -001f2090: 2820 5b20 2d66 202f 2e64 6f63 6b65 7265  ( [ -f /.dockere
│ │ │ -001f20a0: 6e76 205d 207c 7c20 5b20 2d66 202f 7275  nv ] || [ -f /ru
│ │ │ -001f20b0: 6e2f 2e63 6f6e 7461 696e 6572 656e 7620  n/.containerenv 
│ │ │ -001f20c0: 5d20 2920 2920 2661 6d70 3b26 616d 703b  ] ) ) &&
│ │ │ -001f20d0: 207b 2028 2066 696e 646d 6e74 202d 2d6b   { ( findmnt --k
│ │ │ -001f20e0: 6572 6e65 6c20 222f 7661 722f 6c6f 6722  ernel "/var/log"
│ │ │ -001f20f0: 2026 6774 3b20 2f64 6576 2f6e 756c 6c20   > /dev/null 
│ │ │ -001f2100: 7c7c 2066 696e 646d 6e74 202d 2d66 7374  || findmnt --fst
│ │ │ -001f2110: 6162 2022 2f76 6172 2f6c 6f67 2220 2667  ab "/var/log" &g
│ │ │ -001f2120: 743b 202f 6465 762f 6e75 6c6c 2029 3b20  t; /dev/null ); 
│ │ │ -001f2130: 7d3b 2074 6865 6e0a 0a66 756e 6374 696f  }; then..functio
│ │ │ -001f2140: 6e20 7065 7266 6f72 6d5f 7265 6d65 6469  n perform_remedi
│ │ │ -001f2150: 6174 696f 6e20 7b0a 0a20 2020 200a 2020  ation {..    .  
│ │ │ -001f2160: 2020 2020 2020 2320 7468 6520 6d6f 756e        # the moun
│ │ │ -001f2170: 7420 706f 696e 7420 2f76 6172 2f6c 6f67  t point /var/log
│ │ │ -001f2180: 2068 6173 2074 6f20 6265 2064 6566 696e   has to be defin
│ │ │ -001f2190: 6564 2069 6e20 2f65 7463 2f66 7374 6162  ed in /etc/fstab
│ │ │ -001f21a0: 0a20 2020 2020 2020 2023 2062 6566 6f72  .        # befor
│ │ │ -001f21b0: 6520 7468 6973 2072 656d 6564 6961 7469  e this remediati
│ │ │ -001f21c0: 6f6e 2063 616e 2062 6520 6578 6563 7574  on can be execut
│ │ │ -001f21d0: 6564 2e20 496e 2063 6173 6520 6974 2069  ed. In case it i
│ │ │ -001f21e0: 7320 6e6f 7420 6465 6669 6e65 642c 2074  s not defined, t
│ │ │ -001f21f0: 6865 0a20 2020 2020 2020 2023 2072 656d  he.        # rem
│ │ │ -001f2200: 6564 6961 7469 6f6e 2061 626f 7274 7320  ediation aborts 
│ │ │ -001f2210: 616e 6420 6e6f 2063 6861 6e67 6573 2072  and no changes r
│ │ │ -001f2220: 6567 6172 6469 6e67 2074 6865 206d 6f75  egarding the mou
│ │ │ -001f2230: 6e74 2070 6f69 6e74 2061 7265 2064 6f6e  nt point are don
│ │ │ -001f2240: 652e 0a20 2020 2020 2020 206d 6f75 6e74  e..        mount
│ │ │ -001f2250: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ -001f2260: 6578 703d 2224 2870 7269 6e74 6620 225e  exp="$(printf "^
│ │ │ -001f2270: 5b5b 3a73 7061 6365 3a5d 5d2a 5b5e 235d  [[:space:]]*[^#]
│ │ │ -001f2280: 2e2a 5b5b 3a73 7061 6365 3a5d 5d25 735b  .*[[:space:]]%s[
│ │ │ -001f2290: 5b3a 7370 6163 653a 5d5d 2220 222f 7661  [:space:]]" "/va
│ │ │ -001f22a0: 722f 6c6f 6722 2922 0a0a 2020 2020 6772  r/log")"..    gr
│ │ │ -001f22b0: 6570 2022 246d 6f75 6e74 5f70 6f69 6e74  ep "$mount_point
│ │ │ -001f22c0: 5f6d 6174 6368 5f72 6567 6578 7022 202d  _match_regexp" -
│ │ │ -001f22d0: 7120 2f65 7463 2f66 7374 6162 205c 0a20  q /etc/fstab \. 
│ │ │ -001f22e0: 2020 2020 2020 207c 7c20 7b20 6563 686f         || { echo
│ │ │ -001f22f0: 2022 5468 6520 6d6f 756e 7420 706f 696e   "The mount poin
│ │ │ -001f2300: 7420 272f 7661 722f 6c6f 6727 2069 7320  t '/var/log' is 
│ │ │ -001f2310: 6e6f 7420 6576 656e 2069 6e20 2f65 7463  not even in /etc
│ │ │ -001f2320: 2f66 7374 6162 2c20 736f 2077 6520 6361  /fstab, so we ca
│ │ │ -001f2330: 6e27 7420 7365 7420 7570 206d 6f75 6e74  n't set up mount
│ │ │ -001f2340: 206f 7074 696f 6e73 2220 2667 743b 2661   options" >&a
│ │ │ -001f2350: 6d70 3b32 3b0a 2020 2020 2020 2020 2020  mp;2;.          
│ │ │ -001f2360: 2020 2020 2020 6563 686f 2022 4e6f 7420        echo "Not 
│ │ │ -001f2370: 7265 6d65 6469 6174 696e 672c 2062 6563  remediating, bec
│ │ │ -001f2380: 6175 7365 2074 6865 7265 2069 7320 6e6f  ause there is no
│ │ │ -001f2390: 2072 6563 6f72 6420 6f66 202f 7661 722f   record of /var/
│ │ │ -001f23a0: 6c6f 6720 696e 202f 6574 632f 6673 7461  log in /etc/fsta
│ │ │ -001f23b0: 6222 2026 6774 3b26 616d 703b 323b 2072  b" >&2; r
│ │ │ -001f23c0: 6574 7572 6e20 313b 207d 0a20 2020 200a  eturn 1; }.    .
│ │ │ -001f23d0: 0a0a 2020 2020 6d6f 756e 745f 706f 696e  ..    mount_poin
│ │ │ -001f23e0: 745f 6d61 7463 685f 7265 6765 7870 3d22  t_match_regexp="
│ │ │ -001f23f0: 2428 7072 696e 7466 2022 5e5b 5b3a 7370  $(printf "^[[:sp
│ │ │ -001f2400: 6163 653a 5d5d 2a5b 5e23 5d2e 2a5b 5b3a  ace:]]*[^#].*[[:
│ │ │ -001f2410: 7370 6163 653a 5d5d 2573 5b5b 3a73 7061  space:]]%s[[:spa
│ │ │ -001f2420: 6365 3a5d 5d22 202f 7661 722f 6c6f 6729  ce:]]" /var/log)
│ │ │ -001f2430: 220a 0a20 2020 2023 2049 6620 7468 6520  "..    # If the 
│ │ │ -001f2440: 6d6f 756e 7420 706f 696e 7420 6973 206e  mount point is n
│ │ │ -001f2450: 6f74 2069 6e20 2f65 7463 2f66 7374 6162  ot in /etc/fstab
│ │ │ -001f2460: 2c20 6765 7420 7072 6576 696f 7573 206d  , get previous m
│ │ │ -001f2470: 6f75 6e74 206f 7074 696f 6e73 2066 726f  ount options fro
│ │ │ -001f2480: 6d20 2f65 7463 2f6d 7461 620a 2020 2020  m /etc/mtab.    
│ │ │ -001f2490: 6966 2021 2067 7265 7020 2d71 2022 246d  if ! grep -q "$m
│ │ │ -001f24a0: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ -001f24b0: 5f72 6567 6578 7022 202f 6574 632f 6673  _regexp" /etc/fs
│ │ │ -001f24c0: 7461 623b 2074 6865 6e0a 2020 2020 2020  tab; then.      
│ │ │ -001f24d0: 2020 2320 7275 6e74 696d 6520 6f70 7473    # runtime opts
│ │ │ -001f24e0: 2077 6974 686f 7574 2073 6f6d 6520 6175   without some au
│ │ │ -001f24f0: 746f 6d61 7469 6320 6b65 726e 656c 2f75  tomatic kernel/u
│ │ │ -001f2500: 7365 7273 7061 6365 2d61 6464 6564 2064  serspace-added d
│ │ │ -001f2510: 6566 6175 6c74 730a 2020 2020 2020 2020  efaults.        
│ │ │ -001f2520: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ -001f2530: 7074 733d 2428 6772 6570 2022 246d 6f75  pts=$(grep "$mou
│ │ │ -001f2540: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ -001f2550: 6567 6578 7022 202f 6574 632f 6d74 6162  egexp" /etc/mtab
│ │ │ -001f2560: 207c 2068 6561 6420 2d31 207c 2020 6177   | head -1 |  aw
│ │ │ -001f2570: 6b20 277b 7072 696e 7420 2434 7d27 205c  k '{print $4}' \
│ │ │ -001f2580: 0a20 2020 2020 2020 2020 2020 2020 2020  .               
│ │ │ -001f2590: 2020 2020 207c 2073 6564 202d 4520 2273       | sed -E "s
│ │ │ -001f25a0: 2f28 7277 7c64 6566 6175 6c74 737c 7365  /(rw|defaults|se
│ │ │ -001f25b0: 636c 6162 656c 7c6e 6f65 7865 6329 282c  clabel|noexec)(,
│ │ │ -001f25c0: 7c24 292f 2f67 3b73 2f2c 242f 2f22 290a  |$)//g;s/,$//").
│ │ │ -001f25d0: 2020 2020 2020 2020 5b20 2224 7072 6576          [ "$prev
│ │ │ -001f25e0: 696f 7573 5f6d 6f75 6e74 5f6f 7074 7322  ious_mount_opts"
│ │ │ -001f25f0: 205d 2026 616d 703b 2661 6d70 3b20 7072   ] && pr
│ │ │ -001f2600: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ -001f2610: 732b 3d22 2c22 0a20 2020 2020 2020 2023  s+=",".        #
│ │ │ -001f2620: 2049 6e20 6973 6f39 3636 3020 6669 6c65   In iso9660 file
│ │ │ -001f2630: 7379 7374 656d 7320 6d74 6162 2063 6f75  systems mtab cou
│ │ │ -001f2640: 6c64 2064 6573 6372 6962 6520 6120 2262  ld describe a "b
│ │ │ -001f2650: 6c6f 636b 7369 7a65 2220 7661 6c75 652c  locksize" value,
│ │ │ -001f2660: 2074 6869 7320 7368 6f75 6c64 2062 6520   this should be 
│ │ │ -001f2670: 7265 666c 6563 7465 6420 696e 0a20 2020  reflected in.   
│ │ │ -001f2680: 2020 2020 2023 2066 7374 6162 2061 7320       # fstab as 
│ │ │ -001f2690: 2262 6c6f 636b 222e 2020 5468 6520 6e65  "block".  The ne
│ │ │ -001f26a0: 7874 2076 6172 6961 626c 6520 6973 2074  xt variable is t
│ │ │ -001f26b0: 6f20 7361 7469 7366 7920 7368 656c 6c63  o satisfy shellc
│ │ │ -001f26c0: 6865 636b 2053 4332 3035 302e 0a20 2020  heck SC2050..   
│ │ │ -001f26d0: 2020 2020 2066 735f 7479 7065 3d22 220a       fs_type="".
│ │ │ -001f26e0: 2020 2020 2020 2020 6966 205b 2020 2224          if [  "$
│ │ │ -001f26f0: 6673 5f74 7970 6522 203d 3d20 2269 736f  fs_type" == "iso
│ │ │ -001f2700: 3936 3630 2220 5d20 3b20 7468 656e 0a20  9660" ] ; then. 
│ │ │ -001f2710: 2020 2020 2020 2020 2020 2070 7265 7669             previ
│ │ │ -001f2720: 6f75 735f 6d6f 756e 745f 6f70 7473 3d24  ous_mount_opts=$
│ │ │ -001f2730: 2873 6564 2027 732f 626c 6f63 6b73 697a  (sed 's/blocksiz
│ │ │ -001f2740: 653d 2f62 6c6f 636b 3d2f 2720 266c 743b  e=/block=/' <
│ │ │ -001f2750: 266c 743b 266c 743b 2022 2470 7265 7669  << "$previ
│ │ │ -001f2760: 6f75 735f 6d6f 756e 745f 6f70 7473 2229  ous_mount_opts")
│ │ │ -001f2770: 0a20 2020 2020 2020 2066 690a 2020 2020  .        fi.    
│ │ │ -001f2780: 2020 2020 6563 686f 2022 202f 7661 722f      echo " /var/
│ │ │ -001f2790: 6c6f 6720 2064 6566 6175 6c74 732c 247b  log  defaults,${
│ │ │ -001f27a0: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ -001f27b0: 7074 737d 6e6f 6578 6563 2030 2030 2220  pts}noexec 0 0" 
│ │ │ -001f27c0: 2667 743b 2667 743b 202f 6574 632f 6673  >> /etc/fs
│ │ │ -001f27d0: 7461 620a 2020 2020 2320 4966 2074 6865  tab.    # If the
│ │ │ -001f27e0: 206d 6f75 6e74 5f6f 7074 206f 7074 696f   mount_opt optio
│ │ │ -001f27f0: 6e20 6973 206e 6f74 2061 6c72 6561 6479  n is not already
│ │ │ -001f2800: 2069 6e20 7468 6520 6d6f 756e 7420 706f   in the mount po
│ │ │ -001f2810: 696e 7427 7320 2f65 7463 2f66 7374 6162  int's /etc/fstab
│ │ │ -001f2820: 2065 6e74 7279 2c20 6164 6420 6974 0a20   entry, add it. 
│ │ │ -001f2830: 2020 2065 6c69 6620 2120 6772 6570 2022     elif ! grep "
│ │ │ -001f2840: 246d 6f75 6e74 5f70 6f69 6e74 5f6d 6174  $mount_point_mat
│ │ │ -001f2850: 6368 5f72 6567 6578 7022 202f 6574 632f  ch_regexp" /etc/
│ │ │ -001f2860: 6673 7461 6220 7c20 6772 6570 202d 7120  fstab | grep -q 
│ │ │ -001f2870: 226e 6f65 7865 6322 3b20 7468 656e 0a20  "noexec"; then. 
│ │ │ -001f2880: 2020 2020 2020 2070 7265 7669 6f75 735f         previous_
│ │ │ -001f2890: 6d6f 756e 745f 6f70 7473 3d24 2867 7265  mount_opts=$(gre
│ │ │ -001f28a0: 7020 2224 6d6f 756e 745f 706f 696e 745f  p "$mount_point_
│ │ │ -001f28b0: 6d61 7463 685f 7265 6765 7870 2220 2f65  match_regexp" /e
│ │ │ -001f28c0: 7463 2f66 7374 6162 207c 2061 776b 2027  tc/fstab | awk '
│ │ │ -001f28d0: 7b70 7269 6e74 2024 347d 2729 0a20 2020  {print $4}').   
│ │ │ -001f28e0: 2020 2020 2073 6564 202d 6920 2273 7c5c       sed -i "s|\
│ │ │ -001f28f0: 2824 7b6d 6f75 6e74 5f70 6f69 6e74 5f6d  (${mount_point_m
│ │ │ -001f2900: 6174 6368 5f72 6567 6578 707d 2e2a 247b  atch_regexp}.*${
│ │ │ -001f2910: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ -001f2920: 7074 737d 5c29 7c5c 312c 6e6f 6578 6563  pts}\)|\1,noexec
│ │ │ -001f2930: 7c22 202f 6574 632f 6673 7461 620a 2020  |" /etc/fstab.  
│ │ │ -001f2940: 2020 6669 0a0a 0a20 2020 2069 6620 6d6b    fi...    if mk
│ │ │ -001f2950: 6469 7220 2d70 2022 2f76 6172 2f6c 6f67  dir -p "/var/log
│ │ │ -001f2960: 223b 2074 6865 6e0a 2020 2020 2020 2020  "; then.        
│ │ │ -001f2970: 6966 206d 6f75 6e74 706f 696e 7420 2d71  if mountpoint -q
│ │ │ -001f2980: 2022 2f76 6172 2f6c 6f67 223b 2074 6865   "/var/log"; the
│ │ │ -001f2990: 6e0a 2020 2020 2020 2020 2020 2020 6d6f  n.            mo
│ │ │ -001f29a0: 756e 7420 2d6f 2072 656d 6f75 6e74 202d  unt -o remount -
│ │ │ -001f29b0: 2d74 6172 6765 7420 222f 7661 722f 6c6f  -target "/var/lo
│ │ │ -001f29c0: 6722 0a20 2020 2020 2020 2066 690a 2020  g".        fi.  
│ │ │ -001f29d0: 2020 6669 0a7d 0a0a 7065 7266 6f72 6d5f    fi.}..perform_
│ │ │ -001f29e0: 7265 6d65 6469 6174 696f 6e0a 0a65 6c73  remediation..els
│ │ │ -001f29f0: 650a 2020 2020 2667 743b 2661 6d70 3b32  e.    >&2
│ │ │ -001f2a00: 2065 6368 6f20 2752 656d 6564 6961 7469   echo 'Remediati
│ │ │ -001f2a10: 6f6e 2069 7320 6e6f 7420 6170 706c 6963  on is not applic
│ │ │ -001f2a20: 6162 6c65 2c20 6e6f 7468 696e 6720 7761  able, nothing wa
│ │ │ -001f2a30: 7320 646f 6e65 270a 6669 0a3c 2f63 6f64  s done'.fi.
- 
│ │ │ +001f05b0: 6e61 6d65 3a20 4761 7468 6572 2074 6865  name: Gather the
│ │ │ +001f05c0: 2070 6163 6b61 6765 2066 6163 7473 0a20   package facts. 
│ │ │ +001f05d0: 2070 6163 6b61 6765 5f66 6163 7473 3a0a   package_facts:.
│ │ │ +001f05e0: 2020 2020 6d61 6e61 6765 723a 2061 7574      manager: aut
│ │ │ +001f05f0: 6f0a 2020 7461 6773 3a0a 2020 2d20 4e49  o.  tags:.  - NI
│ │ │ +001f0600: 5354 2d38 3030 2d35 332d 4143 2d36 0a20  ST-800-53-AC-6. 
│ │ │ +001f0610: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ +001f0620: 432d 3628 3129 0a20 202d 204e 4953 542d  C-6(1).  - NIST-
│ │ │ +001f0630: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ +001f0640: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +001f0650: 4d2d 3728 6129 0a20 202d 204e 4953 542d  M-7(a).  - NIST-
│ │ │ +001f0660: 3830 302d 3533 2d43 4d2d 3728 6229 0a20  800-53-CM-7(b). 
│ │ │ +001f0670: 202d 204e 4953 542d 3830 302d 3533 2d4d   - NIST-800-53-M
│ │ │ +001f0680: 502d 370a 2020 2d20 636f 6e66 6967 7572  P-7.  - configur
│ │ │ +001f0690: 655f 7374 7261 7465 6779 0a20 202d 2068  e_strategy.  - h
│ │ │ +001f06a0: 6967 685f 6469 7372 7570 7469 6f6e 0a20  igh_disruption. 
│ │ │ +001f06b0: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ +001f06c0: 790a 2020 2d20 6d65 6469 756d 5f73 6576  y.  - medium_sev
│ │ │ +001f06d0: 6572 6974 790a 2020 2d20 6d6f 756e 745f  erity.  - mount_
│ │ │ +001f06e0: 6f70 7469 6f6e 5f76 6172 5f6c 6f67 5f6e  option_var_log_n
│ │ │ +001f06f0: 6f65 7865 630a 2020 2d20 6e6f 5f72 6562  oexec.  - no_reb
│ │ │ +001f0700: 6f6f 745f 6e65 6564 6564 0a0a 2d20 6e61  oot_needed..- na
│ │ │ +001f0710: 6d65 3a20 2741 6464 206e 6f65 7865 6320  me: 'Add noexec 
│ │ │ +001f0720: 4f70 7469 6f6e 2074 6f20 2f76 6172 2f6c  Option to /var/l
│ │ │ +001f0730: 6f67 3a20 4368 6563 6b20 696e 666f 726d  og: Check inform
│ │ │ +001f0740: 6174 696f 6e20 6173 736f 6369 6174 6564  ation associated
│ │ │ +001f0750: 2074 6f20 6d6f 756e 7470 6f69 6e74 270a   to mountpoint'.
│ │ │ +001f0760: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ +001f0770: 6e2e 636f 6d6d 616e 643a 2066 696e 646d  n.command: findm
│ │ │ +001f0780: 6e74 202d 2d66 7374 6162 2027 2f76 6172  nt --fstab '/var
│ │ │ +001f0790: 2f6c 6f67 270a 2020 7265 6769 7374 6572  /log'.  register
│ │ │ +001f07a0: 3a20 6465 7669 6365 5f6e 616d 650a 2020  : device_name.  
│ │ │ +001f07b0: 6661 696c 6564 5f77 6865 6e3a 2064 6576  failed_when: dev
│ │ │ +001f07c0: 6963 655f 6e61 6d65 2e72 6320 2667 743b  ice_name.rc >
│ │ │ +001f07d0: 2031 0a20 2063 6861 6e67 6564 5f77 6865   1.  changed_whe
│ │ │ +001f07e0: 6e3a 2066 616c 7365 0a20 2063 6865 636b  n: false.  check
│ │ │ +001f07f0: 5f6d 6f64 653a 2066 616c 7365 0a20 2077  _mode: false.  w
│ │ │ +001f0800: 6865 6e3a 0a20 202d 2028 206e 6f74 2028  hen:.  - ( not (
│ │ │ +001f0810: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ +001f0820: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001f0830: 6765 7320 616e 6420 2262 6f6f 7463 2220  ges and "bootc" 
│ │ │ +001f0840: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001f0850: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ +001f0860: 6420 6e6f 7420 226f 7065 6e73 6869 6674  d not "openshift
│ │ │ +001f0870: 2d6b 7562 656c 6574 2220 696e 2061 6e73  -kubelet" in ans
│ │ │ +001f0880: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001f0890: 6765 7320 616e 6420 226f 7374 7265 6522  ges and "ostree"
│ │ │ +001f08a0: 2069 6e20 616e 7369 626c 655f 7072 6f63   in ansible_proc
│ │ │ +001f08b0: 5f63 6d64 6c69 6e65 0a20 2020 2029 2061  _cmdline.    ) a
│ │ │ +001f08c0: 6e64 206e 6f74 2028 2061 6e73 6962 6c65  nd not ( ansible
│ │ │ +001f08d0: 5f76 6972 7475 616c 697a 6174 696f 6e5f  _virtualization_
│ │ │ +001f08e0: 7479 7065 2069 6e20 5b22 646f 636b 6572  type in ["docker
│ │ │ +001f08f0: 222c 2022 6c78 6322 2c20 226f 7065 6e76  ", "lxc", "openv
│ │ │ +001f0900: 7a22 2c20 2270 6f64 6d61 6e22 2c0a 2020  z", "podman",.  
│ │ │ +001f0910: 2020 2263 6f6e 7461 696e 6572 225d 2029    "container"] )
│ │ │ +001f0920: 2029 0a20 202d 2027 222f 7661 722f 6c6f   ).  - '"/var/lo
│ │ │ +001f0930: 6722 2069 6e20 616e 7369 626c 655f 6d6f  g" in ansible_mo
│ │ │ +001f0940: 756e 7473 207c 206d 6170 2861 7474 7269  unts | map(attri
│ │ │ +001f0950: 6275 7465 3d22 6d6f 756e 7422 2920 7c20  bute="mount") | 
│ │ │ +001f0960: 6c69 7374 270a 2020 7461 6773 3a0a 2020  list'.  tags:.  
│ │ │ +001f0970: 2d20 4e49 5354 2d38 3030 2d35 332d 4143  - NIST-800-53-AC
│ │ │ +001f0980: 2d36 0a20 202d 204e 4953 542d 3830 302d  -6.  - NIST-800-
│ │ │ +001f0990: 3533 2d41 432d 3628 3129 0a20 202d 204e  53-AC-6(1).  - N
│ │ │ +001f09a0: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ +001f09b0: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ +001f09c0: 3533 2d43 4d2d 3728 6129 0a20 202d 204e  53-CM-7(a).  - N
│ │ │ +001f09d0: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ +001f09e0: 6229 0a20 202d 204e 4953 542d 3830 302d  b).  - NIST-800-
│ │ │ +001f09f0: 3533 2d4d 502d 370a 2020 2d20 636f 6e66  53-MP-7.  - conf
│ │ │ +001f0a00: 6967 7572 655f 7374 7261 7465 6779 0a20  igure_strategy. 
│ │ │ +001f0a10: 202d 2068 6967 685f 6469 7372 7570 7469   - high_disrupti
│ │ │ +001f0a20: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c  on.  - low_compl
│ │ │ +001f0a30: 6578 6974 790a 2020 2d20 6d65 6469 756d  exity.  - medium
│ │ │ +001f0a40: 5f73 6576 6572 6974 790a 2020 2d20 6d6f  _severity.  - mo
│ │ │ +001f0a50: 756e 745f 6f70 7469 6f6e 5f76 6172 5f6c  unt_option_var_l
│ │ │ +001f0a60: 6f67 5f6e 6f65 7865 630a 2020 2d20 6e6f  og_noexec.  - no
│ │ │ +001f0a70: 5f72 6562 6f6f 745f 6e65 6564 6564 0a0a  _reboot_needed..
│ │ │ +001f0a80: 2d20 6e61 6d65 3a20 2741 6464 206e 6f65  - name: 'Add noe
│ │ │ +001f0a90: 7865 6320 4f70 7469 6f6e 2074 6f20 2f76  xec Option to /v
│ │ │ +001f0aa0: 6172 2f6c 6f67 3a20 4372 6561 7465 206d  ar/log: Create m
│ │ │ +001f0ab0: 6f75 6e74 5f69 6e66 6f20 6469 6374 696f  ount_info dictio
│ │ │ +001f0ac0: 6e61 7279 2076 6172 6961 626c 6527 0a20  nary variable'. 
│ │ │ +001f0ad0: 2073 6574 5f66 6163 743a 0a20 2020 206d   set_fact:.    m
│ │ │ +001f0ae0: 6f75 6e74 5f69 6e66 6f3a 2027 7b7b 206d  ount_info: '{{ m
│ │ │ +001f0af0: 6f75 6e74 5f69 6e66 6f7c 6465 6661 756c  ount_info|defaul
│ │ │ +001f0b00: 7428 7b7d 297c 636f 6d62 696e 6528 7b69  t({})|combine({i
│ │ │ +001f0b10: 7465 6d2e 303a 2069 7465 6d2e 317d 2920  tem.0: item.1}) 
│ │ │ +001f0b20: 7d7d 270a 2020 7769 7468 5f74 6f67 6574  }}'.  with_toget
│ │ │ +001f0b30: 6865 723a 0a20 202d 2027 7b7b 2064 6576  her:.  - '{{ dev
│ │ │ +001f0b40: 6963 655f 6e61 6d65 2e73 7464 6f75 745f  ice_name.stdout_
│ │ │ +001f0b50: 6c69 6e65 735b 305d 2e73 706c 6974 2829  lines[0].split()
│ │ │ +001f0b60: 207c 206d 6170 2827 276c 6f77 6572 2727   | map(''lower''
│ │ │ +001f0b70: 2920 7c20 6c69 7374 207d 7d27 0a20 202d  ) | list }}'.  -
│ │ │ +001f0b80: 2027 7b7b 2064 6576 6963 655f 6e61 6d65   '{{ device_name
│ │ │ +001f0b90: 2e73 7464 6f75 745f 6c69 6e65 735b 315d  .stdout_lines[1]
│ │ │ +001f0ba0: 2e73 706c 6974 2829 207c 206c 6973 7420  .split() | list 
│ │ │ +001f0bb0: 7d7d 270a 2020 7768 656e 3a0a 2020 2d20  }}'.  when:.  - 
│ │ │ +001f0bc0: 2820 6e6f 7420 2820 226b 6572 6e65 6c22  ( not ( "kernel"
│ │ │ +001f0bd0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001f0be0: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ +001f0bf0: 626f 6f74 6322 2069 6e20 616e 7369 626c  bootc" in ansibl
│ │ │ +001f0c00: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +001f0c10: 0a20 2020 2061 6e64 206e 6f74 2022 6f70  .    and not "op
│ │ │ +001f0c20: 656e 7368 6966 742d 6b75 6265 6c65 7422  enshift-kubelet"
│ │ │ +001f0c30: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001f0c40: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ +001f0c50: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ +001f0c60: 6c65 5f70 726f 635f 636d 646c 696e 650a  le_proc_cmdline.
│ │ │ +001f0c70: 2020 2020 2920 616e 6420 6e6f 7420 2820      ) and not ( 
│ │ │ +001f0c80: 616e 7369 626c 655f 7669 7274 7561 6c69  ansible_virtuali
│ │ │ +001f0c90: 7a61 7469 6f6e 5f74 7970 6520 696e 205b  zation_type in [
│ │ │ +001f0ca0: 2264 6f63 6b65 7222 2c20 226c 7863 222c  "docker", "lxc",
│ │ │ +001f0cb0: 2022 6f70 656e 767a 222c 2022 706f 646d   "openvz", "podm
│ │ │ +001f0cc0: 616e 222c 0a20 2020 2022 636f 6e74 6169  an",.    "contai
│ │ │ +001f0cd0: 6e65 7222 5d20 2920 290a 2020 2d20 2722  ner"] ) ).  - '"
│ │ │ +001f0ce0: 2f76 6172 2f6c 6f67 2220 696e 2061 6e73  /var/log" in ans
│ │ │ +001f0cf0: 6962 6c65 5f6d 6f75 6e74 7320 7c20 6d61  ible_mounts | ma
│ │ │ +001f0d00: 7028 6174 7472 6962 7574 653d 226d 6f75  p(attribute="mou
│ │ │ +001f0d10: 6e74 2229 207c 206c 6973 7427 0a20 202d  nt") | list'.  -
│ │ │ +001f0d20: 2064 6576 6963 655f 6e61 6d65 2e73 7464   device_name.std
│ │ │ +001f0d30: 6f75 7420 6973 2064 6566 696e 6564 2061  out is defined a
│ │ │ +001f0d40: 6e64 2064 6576 6963 655f 6e61 6d65 2e73  nd device_name.s
│ │ │ +001f0d50: 7464 6f75 745f 6c69 6e65 7320 6973 2064  tdout_lines is d
│ │ │ +001f0d60: 6566 696e 6564 0a20 202d 2028 6465 7669  efined.  - (devi
│ │ │ +001f0d70: 6365 5f6e 616d 652e 7374 646f 7574 207c  ce_name.stdout |
│ │ │ +001f0d80: 206c 656e 6774 6820 2667 743b 2030 290a   length > 0).
│ │ │ +001f0d90: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ +001f0da0: 2d38 3030 2d35 332d 4143 2d36 0a20 202d  -800-53-AC-6.  -
│ │ │ +001f0db0: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ +001f0dc0: 3628 3129 0a20 202d 204e 4953 542d 3830  6(1).  - NIST-80
│ │ │ +001f0dd0: 302d 3533 2d43 4d2d 3628 6129 0a20 202d  0-53-CM-6(a).  -
│ │ │ +001f0de0: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +001f0df0: 3728 6129 0a20 202d 204e 4953 542d 3830  7(a).  - NIST-80
│ │ │ +001f0e00: 302d 3533 2d43 4d2d 3728 6229 0a20 202d  0-53-CM-7(b).  -
│ │ │ +001f0e10: 204e 4953 542d 3830 302d 3533 2d4d 502d   NIST-800-53-MP-
│ │ │ +001f0e20: 370a 2020 2d20 636f 6e66 6967 7572 655f  7.  - configure_
│ │ │ +001f0e30: 7374 7261 7465 6779 0a20 202d 2068 6967  strategy.  - hig
│ │ │ +001f0e40: 685f 6469 7372 7570 7469 6f6e 0a20 202d  h_disruption.  -
│ │ │ +001f0e50: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ +001f0e60: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ +001f0e70: 6974 790a 2020 2d20 6d6f 756e 745f 6f70  ity.  - mount_op
│ │ │ +001f0e80: 7469 6f6e 5f76 6172 5f6c 6f67 5f6e 6f65  tion_var_log_noe
│ │ │ +001f0e90: 7865 630a 2020 2d20 6e6f 5f72 6562 6f6f  xec.  - no_reboo
│ │ │ +001f0ea0: 745f 6e65 6564 6564 0a0a 2d20 6e61 6d65  t_needed..- name
│ │ │ +001f0eb0: 3a20 2741 6464 206e 6f65 7865 6320 4f70  : 'Add noexec Op
│ │ │ +001f0ec0: 7469 6f6e 2074 6f20 2f76 6172 2f6c 6f67  tion to /var/log
│ │ │ +001f0ed0: 3a20 4966 202f 7661 722f 6c6f 6720 6e6f  : If /var/log no
│ │ │ +001f0ee0: 7420 6d6f 756e 7465 642c 2063 7261 6674  t mounted, craft
│ │ │ +001f0ef0: 206d 6f75 6e74 5f69 6e66 6f0a 2020 2020   mount_info.    
│ │ │ +001f0f00: 6d61 6e75 616c 6c79 270a 2020 7365 745f  manually'.  set_
│ │ │ +001f0f10: 6661 6374 3a0a 2020 2020 6d6f 756e 745f  fact:.    mount_
│ │ │ +001f0f20: 696e 666f 3a20 277b 7b20 6d6f 756e 745f  info: '{{ mount_
│ │ │ +001f0f30: 696e 666f 7c64 6566 6175 6c74 287b 7d29  info|default({})
│ │ │ +001f0f40: 7c63 6f6d 6269 6e65 287b 6974 656d 2e30  |combine({item.0
│ │ │ +001f0f50: 3a20 6974 656d 2e31 7d29 207d 7d27 0a20  : item.1}) }}'. 
│ │ │ +001f0f60: 2077 6974 685f 746f 6765 7468 6572 3a0a   with_together:.
│ │ │ +001f0f70: 2020 2d20 2d20 7461 7267 6574 0a20 2020    - - target.   
│ │ │ +001f0f80: 202d 2073 6f75 7263 650a 2020 2020 2d20   - source.    - 
│ │ │ +001f0f90: 6673 7479 7065 0a20 2020 202d 206f 7074  fstype.    - opt
│ │ │ +001f0fa0: 696f 6e73 0a20 202d 202d 202f 7661 722f  ions.  - - /var/
│ │ │ +001f0fb0: 6c6f 670a 2020 2020 2d20 2727 0a20 2020  log.    - ''.   
│ │ │ +001f0fc0: 202d 2027 270a 2020 2020 2d20 6465 6661   - ''.    - defa
│ │ │ +001f0fd0: 756c 7473 0a20 2077 6865 6e3a 0a20 202d  ults.  when:.  -
│ │ │ +001f0fe0: 2028 206e 6f74 2028 2022 6b65 726e 656c   ( not ( "kernel
│ │ │ +001f0ff0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +001f1000: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ +001f1010: 2262 6f6f 7463 2220 696e 2061 6e73 6962  "bootc" in ansib
│ │ │ +001f1020: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001f1030: 730a 2020 2020 616e 6420 6e6f 7420 226f  s.    and not "o
│ │ │ +001f1040: 7065 6e73 6869 6674 2d6b 7562 656c 6574  penshift-kubelet
│ │ │ +001f1050: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +001f1060: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ +001f1070: 226f 7374 7265 6522 2069 6e20 616e 7369  "ostree" in ansi
│ │ │ +001f1080: 626c 655f 7072 6f63 5f63 6d64 6c69 6e65  ble_proc_cmdline
│ │ │ +001f1090: 0a20 2020 2029 2061 6e64 206e 6f74 2028  .    ) and not (
│ │ │ +001f10a0: 2061 6e73 6962 6c65 5f76 6972 7475 616c   ansible_virtual
│ │ │ +001f10b0: 697a 6174 696f 6e5f 7479 7065 2069 6e20  ization_type in 
│ │ │ +001f10c0: 5b22 646f 636b 6572 222c 2022 6c78 6322  ["docker", "lxc"
│ │ │ +001f10d0: 2c20 226f 7065 6e76 7a22 2c20 2270 6f64  , "openvz", "pod
│ │ │ +001f10e0: 6d61 6e22 2c0a 2020 2020 2263 6f6e 7461  man",.    "conta
│ │ │ +001f10f0: 696e 6572 225d 2029 2029 0a20 202d 2027  iner"] ) ).  - '
│ │ │ +001f1100: 222f 7661 722f 6c6f 6722 2069 6e20 616e  "/var/log" in an
│ │ │ +001f1110: 7369 626c 655f 6d6f 756e 7473 207c 206d  sible_mounts | m
│ │ │ +001f1120: 6170 2861 7474 7269 6275 7465 3d22 6d6f  ap(attribute="mo
│ │ │ +001f1130: 756e 7422 2920 7c20 6c69 7374 270a 2020  unt") | list'.  
│ │ │ +001f1140: 2d20 2822 2d2d 6673 7461 6222 207c 206c  - ("--fstab" | l
│ │ │ +001f1150: 656e 6774 6820 3d3d 2030 290a 2020 2d20  ength == 0).  - 
│ │ │ +001f1160: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ +001f1170: 7574 2069 7320 6465 6669 6e65 6420 616e  ut is defined an
│ │ │ +001f1180: 6420 6465 7669 6365 5f6e 616d 652e 7374  d device_name.st
│ │ │ +001f1190: 646f 7574 5f6c 696e 6573 2069 7320 6465  dout_lines is de
│ │ │ +001f11a0: 6669 6e65 640a 2020 2d20 2864 6576 6963  fined.  - (devic
│ │ │ +001f11b0: 655f 6e61 6d65 2e73 7464 6f75 7420 7c20  e_name.stdout | 
│ │ │ +001f11c0: 6c65 6e67 7468 203d 3d20 3029 0a20 2074  length == 0).  t
│ │ │ +001f11d0: 6167 733a 0a20 202d 204e 4953 542d 3830  ags:.  - NIST-80
│ │ │ +001f11e0: 302d 3533 2d41 432d 360a 2020 2d20 4e49  0-53-AC-6.  - NI
│ │ │ +001f11f0: 5354 2d38 3030 2d35 332d 4143 2d36 2831  ST-800-53-AC-6(1
│ │ │ +001f1200: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001f1210: 332d 434d 2d36 2861 290a 2020 2d20 4e49  3-CM-6(a).  - NI
│ │ │ +001f1220: 5354 2d38 3030 2d35 332d 434d 2d37 2861  ST-800-53-CM-7(a
│ │ │ +001f1230: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001f1240: 332d 434d 2d37 2862 290a 2020 2d20 4e49  3-CM-7(b).  - NI
│ │ │ +001f1250: 5354 2d38 3030 2d35 332d 4d50 2d37 0a20  ST-800-53-MP-7. 
│ │ │ +001f1260: 202d 2063 6f6e 6669 6775 7265 5f73 7472   - configure_str
│ │ │ +001f1270: 6174 6567 790a 2020 2d20 6869 6768 5f64  ategy.  - high_d
│ │ │ +001f1280: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ +001f1290: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ +001f12a0: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ +001f12b0: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f  .  - mount_optio
│ │ │ +001f12c0: 6e5f 7661 725f 6c6f 675f 6e6f 6578 6563  n_var_log_noexec
│ │ │ +001f12d0: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ +001f12e0: 6565 6465 640a 0a2d 206e 616d 653a 2027  eeded..- name: '
│ │ │ +001f12f0: 4164 6420 6e6f 6578 6563 204f 7074 696f  Add noexec Optio
│ │ │ +001f1300: 6e20 746f 202f 7661 722f 6c6f 673a 204d  n to /var/log: M
│ │ │ +001f1310: 616b 6520 7375 7265 206e 6f65 7865 6320  ake sure noexec 
│ │ │ +001f1320: 6f70 7469 6f6e 2069 7320 7061 7274 206f  option is part o
│ │ │ +001f1330: 6620 7468 6520 746f 0a20 2020 202f 7661  f the to.    /va
│ │ │ +001f1340: 722f 6c6f 6720 6f70 7469 6f6e 7327 0a20  r/log options'. 
│ │ │ +001f1350: 2073 6574 5f66 6163 743a 0a20 2020 206d   set_fact:.    m
│ │ │ +001f1360: 6f75 6e74 5f69 6e66 6f3a 2027 7b7b 206d  ount_info: '{{ m
│ │ │ +001f1370: 6f75 6e74 5f69 6e66 6f20 7c20 636f 6d62  ount_info | comb
│ │ │ +001f1380: 696e 6528 207b 2727 6f70 7469 6f6e 7327  ine( {''options'
│ │ │ +001f1390: 273a 2727 2727 7e28 6d6f 756e 745f 696e  ':''''~(mount_in
│ │ │ +001f13a0: 666f 2e6f 7074 696f 6e73 207c 0a20 2020  fo.options |.   
│ │ │ +001f13b0: 2020 2064 6566 6175 6c74 2827 2727 2729     default('''')
│ │ │ +001f13c0: 297e 2827 272c 2727 2069 6620 286d 6f75  )~('','' if (mou
│ │ │ +001f13d0: 6e74 5f69 6e66 6f2e 6f70 7469 6f6e 7320  nt_info.options 
│ │ │ +001f13e0: 7c20 6465 6661 756c 7428 2727 2727 2929  | default(''''))
│ │ │ +001f13f0: 2065 6c73 6520 2727 2727 297e 2727 6e6f   else '''')~''no
│ │ │ +001f1400: 6578 6563 2727 0a20 2020 2020 207d 2920  exec''.      }) 
│ │ │ +001f1410: 7d7d 270a 2020 7768 656e 3a0a 2020 2d20  }}'.  when:.  - 
│ │ │ +001f1420: 2820 6e6f 7420 2820 226b 6572 6e65 6c22  ( not ( "kernel"
│ │ │ +001f1430: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001f1440: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ +001f1450: 626f 6f74 6322 2069 6e20 616e 7369 626c  bootc" in ansibl
│ │ │ +001f1460: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +001f1470: 0a20 2020 2061 6e64 206e 6f74 2022 6f70  .    and not "op
│ │ │ +001f1480: 656e 7368 6966 742d 6b75 6265 6c65 7422  enshift-kubelet"
│ │ │ +001f1490: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001f14a0: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ +001f14b0: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ +001f14c0: 6c65 5f70 726f 635f 636d 646c 696e 650a  le_proc_cmdline.
│ │ │ +001f14d0: 2020 2020 2920 616e 6420 6e6f 7420 2820      ) and not ( 
│ │ │ +001f14e0: 616e 7369 626c 655f 7669 7274 7561 6c69  ansible_virtuali
│ │ │ +001f14f0: 7a61 7469 6f6e 5f74 7970 6520 696e 205b  zation_type in [
│ │ │ +001f1500: 2264 6f63 6b65 7222 2c20 226c 7863 222c  "docker", "lxc",
│ │ │ +001f1510: 2022 6f70 656e 767a 222c 2022 706f 646d   "openvz", "podm
│ │ │ +001f1520: 616e 222c 0a20 2020 2022 636f 6e74 6169  an",.    "contai
│ │ │ +001f1530: 6e65 7222 5d20 2920 290a 2020 2d20 2722  ner"] ) ).  - '"
│ │ │ +001f1540: 2f76 6172 2f6c 6f67 2220 696e 2061 6e73  /var/log" in ans
│ │ │ +001f1550: 6962 6c65 5f6d 6f75 6e74 7320 7c20 6d61  ible_mounts | ma
│ │ │ +001f1560: 7028 6174 7472 6962 7574 653d 226d 6f75  p(attribute="mou
│ │ │ +001f1570: 6e74 2229 207c 206c 6973 7427 0a20 202d  nt") | list'.  -
│ │ │ +001f1580: 206d 6f75 6e74 5f69 6e66 6f20 6973 2064   mount_info is d
│ │ │ +001f1590: 6566 696e 6564 2061 6e64 2022 6e6f 6578  efined and "noex
│ │ │ +001f15a0: 6563 2220 6e6f 7420 696e 2028 6d6f 756e  ec" not in (moun
│ │ │ +001f15b0: 745f 696e 666f 2e6f 7074 696f 6e73 207c  t_info.options |
│ │ │ +001f15c0: 2064 6566 6175 6c74 2827 2729 290a 2020   default('')).  
│ │ │ +001f15d0: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38  tags:.  - NIST-8
│ │ │ +001f15e0: 3030 2d35 332d 4143 2d36 0a20 202d 204e  00-53-AC-6.  - N
│ │ │ +001f15f0: 4953 542d 3830 302d 3533 2d41 432d 3628  IST-800-53-AC-6(
│ │ │ +001f1600: 3129 0a20 202d 204e 4953 542d 3830 302d  1).  - NIST-800-
│ │ │ +001f1610: 3533 2d43 4d2d 3628 6129 0a20 202d 204e  53-CM-6(a).  - N
│ │ │ +001f1620: 4953 542d 3830 302d 3533 2d43 4d2d 3728  IST-800-53-CM-7(
│ │ │ +001f1630: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ +001f1640: 3533 2d43 4d2d 3728 6229 0a20 202d 204e  53-CM-7(b).  - N
│ │ │ +001f1650: 4953 542d 3830 302d 3533 2d4d 502d 370a  IST-800-53-MP-7.
│ │ │ +001f1660: 2020 2d20 636f 6e66 6967 7572 655f 7374    - configure_st
│ │ │ +001f1670: 7261 7465 6779 0a20 202d 2068 6967 685f  rategy.  - high_
│ │ │ +001f1680: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ +001f1690: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ +001f16a0: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ +001f16b0: 790a 2020 2d20 6d6f 756e 745f 6f70 7469  y.  - mount_opti
│ │ │ +001f16c0: 6f6e 5f76 6172 5f6c 6f67 5f6e 6f65 7865  on_var_log_noexe
│ │ │ +001f16d0: 630a 2020 2d20 6e6f 5f72 6562 6f6f 745f  c.  - no_reboot_
│ │ │ +001f16e0: 6e65 6564 6564 0a0a 2d20 6e61 6d65 3a20  needed..- name: 
│ │ │ +001f16f0: 2741 6464 206e 6f65 7865 6320 4f70 7469  'Add noexec Opti
│ │ │ +001f1700: 6f6e 2074 6f20 2f76 6172 2f6c 6f67 3a20  on to /var/log: 
│ │ │ +001f1710: 456e 7375 7265 202f 7661 722f 6c6f 6720  Ensure /var/log 
│ │ │ +001f1720: 6973 206d 6f75 6e74 6564 2077 6974 6820  is mounted with 
│ │ │ +001f1730: 6e6f 6578 6563 206f 7074 696f 6e27 0a20  noexec option'. 
│ │ │ +001f1740: 2061 6e73 6962 6c65 2e70 6f73 6978 2e6d   ansible.posix.m
│ │ │ +001f1750: 6f75 6e74 3a0a 2020 2020 7061 7468 3a20  ount:.    path: 
│ │ │ +001f1760: 2f76 6172 2f6c 6f67 0a20 2020 2073 7263  /var/log.    src
│ │ │ +001f1770: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ +001f1780: 2e73 6f75 7263 6520 7c20 6465 6661 756c  .source | defaul
│ │ │ +001f1790: 7428 2727 2727 2920 7d7d 270a 2020 2020  t('''') }}'.    
│ │ │ +001f17a0: 6f70 7473 3a20 277b 7b20 6d6f 756e 745f  opts: '{{ mount_
│ │ │ +001f17b0: 696e 666f 2e6f 7074 696f 6e73 207c 2064  info.options | d
│ │ │ +001f17c0: 6566 6175 6c74 2827 2727 2729 207d 7d27  efault('''') }}'
│ │ │ +001f17d0: 0a20 2020 2073 7461 7465 3a20 6d6f 756e  .    state: moun
│ │ │ +001f17e0: 7465 640a 2020 2020 6673 7479 7065 3a20  ted.    fstype: 
│ │ │ +001f17f0: 277b 7b20 6d6f 756e 745f 696e 666f 2e66  '{{ mount_info.f
│ │ │ +001f1800: 7374 7970 6520 7c20 6465 6661 756c 7428  stype | default(
│ │ │ +001f1810: 2727 2727 2920 7d7d 270a 2020 7265 6769  '''') }}'.  regi
│ │ │ +001f1820: 7374 6572 3a20 6d6f 756e 745f 7265 7375  ster: mount_resu
│ │ │ +001f1830: 6c74 0a20 2066 6169 6c65 645f 7768 656e  lt.  failed_when
│ │ │ +001f1840: 3a0a 2020 2d20 6d6f 756e 745f 7265 7375  :.  - mount_resu
│ │ │ +001f1850: 6c74 2069 7320 6661 696c 6564 0a20 202d  lt is failed.  -
│ │ │ +001f1860: 2027 2727 7461 7267 6574 2069 7320 6275   '''target is bu
│ │ │ +001f1870: 7379 2727 206e 6f74 2069 6e20 286d 6f75  sy'' not in (mou
│ │ │ +001f1880: 6e74 5f72 6573 756c 742e 6d73 6720 7c20  nt_result.msg | 
│ │ │ +001f1890: 6465 6661 756c 7428 2727 2727 2929 270a  default(''''))'.
│ │ │ +001f18a0: 2020 2d20 2727 2761 6c72 6561 6479 206d    - '''already m
│ │ │ +001f18b0: 6f75 6e74 6564 2727 206e 6f74 2069 6e20  ounted'' not in 
│ │ │ +001f18c0: 286d 6f75 6e74 5f72 6573 756c 742e 6d73  (mount_result.ms
│ │ │ +001f18d0: 6720 7c20 6465 6661 756c 7428 2727 2727  g | default(''''
│ │ │ +001f18e0: 2929 270a 2020 7768 656e 3a0a 2020 2d20  ))'.  when:.  - 
│ │ │ +001f18f0: 2820 6e6f 7420 2820 226b 6572 6e65 6c22  ( not ( "kernel"
│ │ │ +001f1900: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001f1910: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ +001f1920: 626f 6f74 6322 2069 6e20 616e 7369 626c  bootc" in ansibl
│ │ │ +001f1930: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +001f1940: 0a20 2020 2061 6e64 206e 6f74 2022 6f70  .    and not "op
│ │ │ +001f1950: 656e 7368 6966 742d 6b75 6265 6c65 7422  enshift-kubelet"
│ │ │ +001f1960: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001f1970: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ +001f1980: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ +001f1990: 6c65 5f70 726f 635f 636d 646c 696e 650a  le_proc_cmdline.
│ │ │ +001f19a0: 2020 2020 2920 616e 6420 6e6f 7420 2820      ) and not ( 
│ │ │ +001f19b0: 616e 7369 626c 655f 7669 7274 7561 6c69  ansible_virtuali
│ │ │ +001f19c0: 7a61 7469 6f6e 5f74 7970 6520 696e 205b  zation_type in [
│ │ │ +001f19d0: 2264 6f63 6b65 7222 2c20 226c 7863 222c  "docker", "lxc",
│ │ │ +001f19e0: 2022 6f70 656e 767a 222c 2022 706f 646d   "openvz", "podm
│ │ │ +001f19f0: 616e 222c 0a20 2020 2022 636f 6e74 6169  an",.    "contai
│ │ │ +001f1a00: 6e65 7222 5d20 2920 290a 2020 2d20 2722  ner"] ) ).  - '"
│ │ │ +001f1a10: 2f76 6172 2f6c 6f67 2220 696e 2061 6e73  /var/log" in ans
│ │ │ +001f1a20: 6962 6c65 5f6d 6f75 6e74 7320 7c20 6d61  ible_mounts | ma
│ │ │ +001f1a30: 7028 6174 7472 6962 7574 653d 226d 6f75  p(attribute="mou
│ │ │ +001f1a40: 6e74 2229 207c 206c 6973 7427 0a20 202d  nt") | list'.  -
│ │ │ +001f1a50: 206d 6f75 6e74 5f69 6e66 6f20 6973 2064   mount_info is d
│ │ │ +001f1a60: 6566 696e 6564 0a20 202d 2028 6465 7669  efined.  - (devi
│ │ │ +001f1a70: 6365 5f6e 616d 652e 7374 646f 7574 2069  ce_name.stdout i
│ │ │ +001f1a80: 7320 6465 6669 6e65 6420 616e 6420 2864  s defined and (d
│ │ │ +001f1a90: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ +001f1aa0: 7420 7c20 6c65 6e67 7468 2026 6774 3b20  t | length > 
│ │ │ +001f1ab0: 3029 2920 6f72 2028 222d 2d66 7374 6162  0)) or ("--fstab
│ │ │ +001f1ac0: 220a 2020 2020 7c20 6c65 6e67 7468 203d  ".    | length =
│ │ │ +001f1ad0: 3d20 3029 0a20 2074 6167 733a 0a20 202d  = 0).  tags:.  -
│ │ │ +001f1ae0: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ +001f1af0: 360a 2020 2d20 4e49 5354 2d38 3030 2d35  6.  - NIST-800-5
│ │ │ +001f1b00: 332d 4143 2d36 2831 290a 2020 2d20 4e49  3-AC-6(1).  - NI
│ │ │ +001f1b10: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ +001f1b20: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001f1b30: 332d 434d 2d37 2861 290a 2020 2d20 4e49  3-CM-7(a).  - NI
│ │ │ +001f1b40: 5354 2d38 3030 2d35 332d 434d 2d37 2862  ST-800-53-CM-7(b
│ │ │ +001f1b50: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +001f1b60: 332d 4d50 2d37 0a20 202d 2063 6f6e 6669  3-MP-7.  - confi
│ │ │ +001f1b70: 6775 7265 5f73 7472 6174 6567 790a 2020  gure_strategy.  
│ │ │ +001f1b80: 2d20 6869 6768 5f64 6973 7275 7074 696f  - high_disruptio
│ │ │ +001f1b90: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65  n.  - low_comple
│ │ │ +001f1ba0: 7869 7479 0a20 202d 206d 6564 6975 6d5f  xity.  - medium_
│ │ │ +001f1bb0: 7365 7665 7269 7479 0a20 202d 206d 6f75  severity.  - mou
│ │ │ +001f1bc0: 6e74 5f6f 7074 696f 6e5f 7661 725f 6c6f  nt_option_var_lo
│ │ │ +001f1bd0: 675f 6e6f 6578 6563 0a20 202d 206e 6f5f  g_noexec.  - no_
│ │ │ +001f1be0: 7265 626f 6f74 5f6e 6565 6465 640a 3c2f  reboot_needed.
Re │ │ │ +001f1ca0: 6d65 6469 6174 696f 6e20 5368 656c 6c20 mediation Shell │ │ │ +001f1cb0: 7363 7269 7074 20e2 87b2 3c2f 613e 3c62 script ...
Comp │ │ │ +001f0500: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +001f0510: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ +001f0530: 3c2f 7468 3e3c 7464 3e68 6967 683c 2f74 high
R │ │ │ +001f0550: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +001f0560: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ +001f0580: 2f74 683e 3c74 643e 636f 6e66 6967 7572 /th>configur │ │ │ +001f0590: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
# 
│ │ │ +001f1d70: 5265 6d65 6469 6174 696f 6e20 6973 2061  Remediation is a
│ │ │ +001f1d80: 7070 6c69 6361 626c 6520 6f6e 6c79 2069  pplicable only i
│ │ │ +001f1d90: 6e20 6365 7274 6169 6e20 706c 6174 666f  n certain platfo
│ │ │ +001f1da0: 726d 730a 6966 2028 2021 2028 207b 2072  rms.if ( ! ( { r
│ │ │ +001f1db0: 706d 202d 2d71 7569 6574 202d 7120 6b65  pm --quiet -q ke
│ │ │ +001f1dc0: 726e 656c 203b 7d20 2661 6d70 3b26 616d  rnel ;} &&am
│ │ │ +001f1dd0: 703b 207b 2072 706d 202d 2d71 7569 6574  p; { rpm --quiet
│ │ │ +001f1de0: 202d 7120 626f 6f74 6320 3b7d 2026 616d   -q bootc ;} &am
│ │ │ +001f1df0: 703b 2661 6d70 3b20 7b20 2120 7270 6d20  p;& { ! rpm 
│ │ │ +001f1e00: 2d2d 7175 6965 7420 2d71 206f 7065 6e73  --quiet -q opens
│ │ │ +001f1e10: 6869 6674 2d6b 7562 656c 6574 203b 7d20  hift-kubelet ;} 
│ │ │ +001f1e20: 2661 6d70 3b26 616d 703b 2028 5b20 2d66  && ([ -f
│ │ │ +001f1e30: 202f 7275 6e2f 6f73 7472 6565 2d62 6f6f   /run/ostree-boo
│ │ │ +001f1e40: 7465 6420 5d20 7c7c 205b 202d 4c20 2f6f  ted ] || [ -L /o
│ │ │ +001f1e50: 7374 7265 6520 5d29 2029 2026 616d 703b  stree ]) ) &
│ │ │ +001f1e60: 2661 6d70 3b20 2120 2820 5b20 2d66 202f  & ! ( [ -f /
│ │ │ +001f1e70: 2e64 6f63 6b65 7265 6e76 205d 207c 7c20  .dockerenv ] || 
│ │ │ +001f1e80: 5b20 2d66 202f 7275 6e2f 2e63 6f6e 7461  [ -f /run/.conta
│ │ │ +001f1e90: 696e 6572 656e 7620 5d20 2920 2920 2661  inerenv ] ) ) &a
│ │ │ +001f1ea0: 6d70 3b26 616d 703b 207b 2028 2066 696e  mp;& { ( fin
│ │ │ +001f1eb0: 646d 6e74 202d 2d6b 6572 6e65 6c20 222f  dmnt --kernel "/
│ │ │ +001f1ec0: 7661 722f 6c6f 6722 2026 6774 3b20 2f64  var/log" > /d
│ │ │ +001f1ed0: 6576 2f6e 756c 6c20 7c7c 2066 696e 646d  ev/null || findm
│ │ │ +001f1ee0: 6e74 202d 2d66 7374 6162 2022 2f76 6172  nt --fstab "/var
│ │ │ +001f1ef0: 2f6c 6f67 2220 2667 743b 202f 6465 762f  /log" > /dev/
│ │ │ +001f1f00: 6e75 6c6c 2029 3b20 7d3b 2074 6865 6e0a  null ); }; then.
│ │ │ +001f1f10: 0a66 756e 6374 696f 6e20 7065 7266 6f72  .function perfor
│ │ │ +001f1f20: 6d5f 7265 6d65 6469 6174 696f 6e20 7b0a  m_remediation {.
│ │ │ +001f1f30: 0a20 2020 200a 2020 2020 2020 2020 2320  .    .        # 
│ │ │ +001f1f40: 7468 6520 6d6f 756e 7420 706f 696e 7420  the mount point 
│ │ │ +001f1f50: 2f76 6172 2f6c 6f67 2068 6173 2074 6f20  /var/log has to 
│ │ │ +001f1f60: 6265 2064 6566 696e 6564 2069 6e20 2f65  be defined in /e
│ │ │ +001f1f70: 7463 2f66 7374 6162 0a20 2020 2020 2020  tc/fstab.       
│ │ │ +001f1f80: 2023 2062 6566 6f72 6520 7468 6973 2072   # before this r
│ │ │ +001f1f90: 656d 6564 6961 7469 6f6e 2063 616e 2062  emediation can b
│ │ │ +001f1fa0: 6520 6578 6563 7574 6564 2e20 496e 2063  e executed. In c
│ │ │ +001f1fb0: 6173 6520 6974 2069 7320 6e6f 7420 6465  ase it is not de
│ │ │ +001f1fc0: 6669 6e65 642c 2074 6865 0a20 2020 2020  fined, the.     
│ │ │ +001f1fd0: 2020 2023 2072 656d 6564 6961 7469 6f6e     # remediation
│ │ │ +001f1fe0: 2061 626f 7274 7320 616e 6420 6e6f 2063   aborts and no c
│ │ │ +001f1ff0: 6861 6e67 6573 2072 6567 6172 6469 6e67  hanges regarding
│ │ │ +001f2000: 2074 6865 206d 6f75 6e74 2070 6f69 6e74   the mount point
│ │ │ +001f2010: 2061 7265 2064 6f6e 652e 0a20 2020 2020   are done..     
│ │ │ +001f2020: 2020 206d 6f75 6e74 5f70 6f69 6e74 5f6d     mount_point_m
│ │ │ +001f2030: 6174 6368 5f72 6567 6578 703d 2224 2870  atch_regexp="$(p
│ │ │ +001f2040: 7269 6e74 6620 225e 5b5b 3a73 7061 6365  rintf "^[[:space
│ │ │ +001f2050: 3a5d 5d2a 5b5e 235d 2e2a 5b5b 3a73 7061  :]]*[^#].*[[:spa
│ │ │ +001f2060: 6365 3a5d 5d25 735b 5b3a 7370 6163 653a  ce:]]%s[[:space:
│ │ │ +001f2070: 5d5d 2220 222f 7661 722f 6c6f 6722 2922  ]]" "/var/log")"
│ │ │ +001f2080: 0a0a 2020 2020 6772 6570 2022 246d 6f75  ..    grep "$mou
│ │ │ +001f2090: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ +001f20a0: 6567 6578 7022 202d 7120 2f65 7463 2f66  egexp" -q /etc/f
│ │ │ +001f20b0: 7374 6162 205c 0a20 2020 2020 2020 207c  stab \.        |
│ │ │ +001f20c0: 7c20 7b20 6563 686f 2022 5468 6520 6d6f  | { echo "The mo
│ │ │ +001f20d0: 756e 7420 706f 696e 7420 272f 7661 722f  unt point '/var/
│ │ │ +001f20e0: 6c6f 6727 2069 7320 6e6f 7420 6576 656e  log' is not even
│ │ │ +001f20f0: 2069 6e20 2f65 7463 2f66 7374 6162 2c20   in /etc/fstab, 
│ │ │ +001f2100: 736f 2077 6520 6361 6e27 7420 7365 7420  so we can't set 
│ │ │ +001f2110: 7570 206d 6f75 6e74 206f 7074 696f 6e73  up mount options
│ │ │ +001f2120: 2220 2667 743b 2661 6d70 3b32 3b0a 2020  " >&2;.  
│ │ │ +001f2130: 2020 2020 2020 2020 2020 2020 2020 6563                ec
│ │ │ +001f2140: 686f 2022 4e6f 7420 7265 6d65 6469 6174  ho "Not remediat
│ │ │ +001f2150: 696e 672c 2062 6563 6175 7365 2074 6865  ing, because the
│ │ │ +001f2160: 7265 2069 7320 6e6f 2072 6563 6f72 6420  re is no record 
│ │ │ +001f2170: 6f66 202f 7661 722f 6c6f 6720 696e 202f  of /var/log in /
│ │ │ +001f2180: 6574 632f 6673 7461 6222 2026 6774 3b26  etc/fstab" >&
│ │ │ +001f2190: 616d 703b 323b 2072 6574 7572 6e20 313b  amp;2; return 1;
│ │ │ +001f21a0: 207d 0a20 2020 200a 0a0a 2020 2020 6d6f   }.    ...    mo
│ │ │ +001f21b0: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ +001f21c0: 7265 6765 7870 3d22 2428 7072 696e 7466  regexp="$(printf
│ │ │ +001f21d0: 2022 5e5b 5b3a 7370 6163 653a 5d5d 2a5b   "^[[:space:]]*[
│ │ │ +001f21e0: 5e23 5d2e 2a5b 5b3a 7370 6163 653a 5d5d  ^#].*[[:space:]]
│ │ │ +001f21f0: 2573 5b5b 3a73 7061 6365 3a5d 5d22 202f  %s[[:space:]]" /
│ │ │ +001f2200: 7661 722f 6c6f 6729 220a 0a20 2020 2023  var/log)"..    #
│ │ │ +001f2210: 2049 6620 7468 6520 6d6f 756e 7420 706f   If the mount po
│ │ │ +001f2220: 696e 7420 6973 206e 6f74 2069 6e20 2f65  int is not in /e
│ │ │ +001f2230: 7463 2f66 7374 6162 2c20 6765 7420 7072  tc/fstab, get pr
│ │ │ +001f2240: 6576 696f 7573 206d 6f75 6e74 206f 7074  evious mount opt
│ │ │ +001f2250: 696f 6e73 2066 726f 6d20 2f65 7463 2f6d  ions from /etc/m
│ │ │ +001f2260: 7461 620a 2020 2020 6966 2021 2067 7265  tab.    if ! gre
│ │ │ +001f2270: 7020 2d71 2022 246d 6f75 6e74 5f70 6f69  p -q "$mount_poi
│ │ │ +001f2280: 6e74 5f6d 6174 6368 5f72 6567 6578 7022  nt_match_regexp"
│ │ │ +001f2290: 202f 6574 632f 6673 7461 623b 2074 6865   /etc/fstab; the
│ │ │ +001f22a0: 6e0a 2020 2020 2020 2020 2320 7275 6e74  n.        # runt
│ │ │ +001f22b0: 696d 6520 6f70 7473 2077 6974 686f 7574  ime opts without
│ │ │ +001f22c0: 2073 6f6d 6520 6175 746f 6d61 7469 6320   some automatic 
│ │ │ +001f22d0: 6b65 726e 656c 2f75 7365 7273 7061 6365  kernel/userspace
│ │ │ +001f22e0: 2d61 6464 6564 2064 6566 6175 6c74 730a  -added defaults.
│ │ │ +001f22f0: 2020 2020 2020 2020 7072 6576 696f 7573          previous
│ │ │ +001f2300: 5f6d 6f75 6e74 5f6f 7074 733d 2428 6772  _mount_opts=$(gr
│ │ │ +001f2310: 6570 2022 246d 6f75 6e74 5f70 6f69 6e74  ep "$mount_point
│ │ │ +001f2320: 5f6d 6174 6368 5f72 6567 6578 7022 202f  _match_regexp" /
│ │ │ +001f2330: 6574 632f 6d74 6162 207c 2068 6561 6420  etc/mtab | head 
│ │ │ +001f2340: 2d31 207c 2020 6177 6b20 277b 7072 696e  -1 |  awk '{prin
│ │ │ +001f2350: 7420 2434 7d27 205c 0a20 2020 2020 2020  t $4}' \.       
│ │ │ +001f2360: 2020 2020 2020 2020 2020 2020 207c 2073               | s
│ │ │ +001f2370: 6564 202d 4520 2273 2f28 7277 7c64 6566  ed -E "s/(rw|def
│ │ │ +001f2380: 6175 6c74 737c 7365 636c 6162 656c 7c6e  aults|seclabel|n
│ │ │ +001f2390: 6f65 7865 6329 282c 7c24 292f 2f67 3b73  oexec)(,|$)//g;s
│ │ │ +001f23a0: 2f2c 242f 2f22 290a 2020 2020 2020 2020  /,$//").        
│ │ │ +001f23b0: 5b20 2224 7072 6576 696f 7573 5f6d 6f75  [ "$previous_mou
│ │ │ +001f23c0: 6e74 5f6f 7074 7322 205d 2026 616d 703b  nt_opts" ] &
│ │ │ +001f23d0: 2661 6d70 3b20 7072 6576 696f 7573 5f6d  & previous_m
│ │ │ +001f23e0: 6f75 6e74 5f6f 7074 732b 3d22 2c22 0a20  ount_opts+=",". 
│ │ │ +001f23f0: 2020 2020 2020 2023 2049 6e20 6973 6f39         # In iso9
│ │ │ +001f2400: 3636 3020 6669 6c65 7379 7374 656d 7320  660 filesystems 
│ │ │ +001f2410: 6d74 6162 2063 6f75 6c64 2064 6573 6372  mtab could descr
│ │ │ +001f2420: 6962 6520 6120 2262 6c6f 636b 7369 7a65  ibe a "blocksize
│ │ │ +001f2430: 2220 7661 6c75 652c 2074 6869 7320 7368  " value, this sh
│ │ │ +001f2440: 6f75 6c64 2062 6520 7265 666c 6563 7465  ould be reflecte
│ │ │ +001f2450: 6420 696e 0a20 2020 2020 2020 2023 2066  d in.        # f
│ │ │ +001f2460: 7374 6162 2061 7320 2262 6c6f 636b 222e  stab as "block".
│ │ │ +001f2470: 2020 5468 6520 6e65 7874 2076 6172 6961    The next varia
│ │ │ +001f2480: 626c 6520 6973 2074 6f20 7361 7469 7366  ble is to satisf
│ │ │ +001f2490: 7920 7368 656c 6c63 6865 636b 2053 4332  y shellcheck SC2
│ │ │ +001f24a0: 3035 302e 0a20 2020 2020 2020 2066 735f  050..        fs_
│ │ │ +001f24b0: 7479 7065 3d22 220a 2020 2020 2020 2020  type="".        
│ │ │ +001f24c0: 6966 205b 2020 2224 6673 5f74 7970 6522  if [  "$fs_type"
│ │ │ +001f24d0: 203d 3d20 2269 736f 3936 3630 2220 5d20   == "iso9660" ] 
│ │ │ +001f24e0: 3b20 7468 656e 0a20 2020 2020 2020 2020  ; then.         
│ │ │ +001f24f0: 2020 2070 7265 7669 6f75 735f 6d6f 756e     previous_moun
│ │ │ +001f2500: 745f 6f70 7473 3d24 2873 6564 2027 732f  t_opts=$(sed 's/
│ │ │ +001f2510: 626c 6f63 6b73 697a 653d 2f62 6c6f 636b  blocksize=/block
│ │ │ +001f2520: 3d2f 2720 266c 743b 266c 743b 266c 743b  =/' <<<
│ │ │ +001f2530: 2022 2470 7265 7669 6f75 735f 6d6f 756e   "$previous_moun
│ │ │ +001f2540: 745f 6f70 7473 2229 0a20 2020 2020 2020  t_opts").       
│ │ │ +001f2550: 2066 690a 2020 2020 2020 2020 6563 686f   fi.        echo
│ │ │ +001f2560: 2022 202f 7661 722f 6c6f 6720 2064 6566   " /var/log  def
│ │ │ +001f2570: 6175 6c74 732c 247b 7072 6576 696f 7573  aults,${previous
│ │ │ +001f2580: 5f6d 6f75 6e74 5f6f 7074 737d 6e6f 6578  _mount_opts}noex
│ │ │ +001f2590: 6563 2030 2030 2220 2667 743b 2667 743b  ec 0 0" >>
│ │ │ +001f25a0: 202f 6574 632f 6673 7461 620a 2020 2020   /etc/fstab.    
│ │ │ +001f25b0: 2320 4966 2074 6865 206d 6f75 6e74 5f6f  # If the mount_o
│ │ │ +001f25c0: 7074 206f 7074 696f 6e20 6973 206e 6f74  pt option is not
│ │ │ +001f25d0: 2061 6c72 6561 6479 2069 6e20 7468 6520   already in the 
│ │ │ +001f25e0: 6d6f 756e 7420 706f 696e 7427 7320 2f65  mount point's /e
│ │ │ +001f25f0: 7463 2f66 7374 6162 2065 6e74 7279 2c20  tc/fstab entry, 
│ │ │ +001f2600: 6164 6420 6974 0a20 2020 2065 6c69 6620  add it.    elif 
│ │ │ +001f2610: 2120 6772 6570 2022 246d 6f75 6e74 5f70  ! grep "$mount_p
│ │ │ +001f2620: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ +001f2630: 7022 202f 6574 632f 6673 7461 6220 7c20  p" /etc/fstab | 
│ │ │ +001f2640: 6772 6570 202d 7120 226e 6f65 7865 6322  grep -q "noexec"
│ │ │ +001f2650: 3b20 7468 656e 0a20 2020 2020 2020 2070  ; then.        p
│ │ │ +001f2660: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ +001f2670: 7473 3d24 2867 7265 7020 2224 6d6f 756e  ts=$(grep "$moun
│ │ │ +001f2680: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ +001f2690: 6765 7870 2220 2f65 7463 2f66 7374 6162  gexp" /etc/fstab
│ │ │ +001f26a0: 207c 2061 776b 2027 7b70 7269 6e74 2024   | awk '{print $
│ │ │ +001f26b0: 347d 2729 0a20 2020 2020 2020 2073 6564  4}').        sed
│ │ │ +001f26c0: 202d 6920 2273 7c5c 2824 7b6d 6f75 6e74   -i "s|\(${mount
│ │ │ +001f26d0: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ +001f26e0: 6578 707d 2e2a 247b 7072 6576 696f 7573  exp}.*${previous
│ │ │ +001f26f0: 5f6d 6f75 6e74 5f6f 7074 737d 5c29 7c5c  _mount_opts}\)|\
│ │ │ +001f2700: 312c 6e6f 6578 6563 7c22 202f 6574 632f  1,noexec|" /etc/
│ │ │ +001f2710: 6673 7461 620a 2020 2020 6669 0a0a 0a20  fstab.    fi... 
│ │ │ +001f2720: 2020 2069 6620 6d6b 6469 7220 2d70 2022     if mkdir -p "
│ │ │ +001f2730: 2f76 6172 2f6c 6f67 223b 2074 6865 6e0a  /var/log"; then.
│ │ │ +001f2740: 2020 2020 2020 2020 6966 206d 6f75 6e74          if mount
│ │ │ +001f2750: 706f 696e 7420 2d71 2022 2f76 6172 2f6c  point -q "/var/l
│ │ │ +001f2760: 6f67 223b 2074 6865 6e0a 2020 2020 2020  og"; then.      
│ │ │ +001f2770: 2020 2020 2020 6d6f 756e 7420 2d6f 2072        mount -o r
│ │ │ +001f2780: 656d 6f75 6e74 202d 2d74 6172 6765 7420  emount --target 
│ │ │ +001f2790: 222f 7661 722f 6c6f 6722 0a20 2020 2020  "/var/log".     
│ │ │ +001f27a0: 2020 2066 690a 2020 2020 6669 0a7d 0a0a     fi.    fi.}..
│ │ │ +001f27b0: 7065 7266 6f72 6d5f 7265 6d65 6469 6174  perform_remediat
│ │ │ +001f27c0: 696f 6e0a 0a65 6c73 650a 2020 2020 2667  ion..else.    &g
│ │ │ +001f27d0: 743b 2661 6d70 3b32 2065 6368 6f20 2752  t;&2 echo 'R
│ │ │ +001f27e0: 656d 6564 6961 7469 6f6e 2069 7320 6e6f  emediation is no
│ │ │ +001f27f0: 7420 6170 706c 6963 6162 6c65 2c20 6e6f  t applicable, no
│ │ │ +001f2800: 7468 696e 6720 7761 7320 646f 6e65 270a  thing was done'.
│ │ │ +001f2810: 6669 0a3c 2f63 6f64 653e 3c2f 7072 653e  fi.
│ │ │ +001f2820: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22 Remediation A │ │ │ +001f28d0: 6e61 636f 6e64 6120 736e 6970 7065 7420 naconda snippet │ │ │ +001f28e0: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
high │ │ │ +001f29b0: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c
Rebo │ │ │ +001f1d40: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +001f1d50: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
Complexity: │ │ │ +001f2970: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Di │ │ │ +001f2990: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:
Reboot:< │ │ │ +001f29c0: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>false
S │ │ │ +001f29e0: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:enable
.part /var/l
│ │ │ +001f2a20: 6f67 202d 2d6d 6f75 6e74 6f70 7469 6f6e  og --mountoption
│ │ │ +001f2a30: 733d 226e 6f65 7865 6322 0a3c 2f63 6f64  s="noexec".
Remediation │ │ │ -001f36b0: 2041 6e61 636f 6e64 6120 736e 6970 7065 Anaconda snippe │ │ │ -001f36c0: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ -001f3740: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ -001f3750: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ -001f3770: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ -001f3780: 3c74 643e 6869 6768 3c2f 7464 3e3c 2f74 highReboot │ │ │ -001f37a0: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -001f37b0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ -001f37d0: 7464 3e65 6e61 626c 653c 2f74 643e 3c2f td>enable
│ │ │ -001f37f0: 3c63 6f64 653e 0a70 6172 7420 2f76 6172  .part /var
│ │ │ -001f3800: 2f6c 6f67 202d 2d6d 6f75 6e74 6f70 7469  /log --mountopti
│ │ │ -001f3810: 6f6e 733d 226e 6f73 7569 6422 0a3c 2f63  ons="nosuid".
│ │ │ -001f3830: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ -001f38d0: 6564 6961 7469 6f6e 2041 6e73 6962 6c65 ediation Ansible │ │ │ -001f38e0: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -001f38f0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ -001f3990: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr> │ │ │ -001f39e0: 3c74 723e 3c74 683e 5374 7261 7465 6779

│ │ │ -001f3a20: 2d20 6e61 6d65 3a20 4761 7468 6572 2074  - name: Gather t
│ │ │ -001f3a30: 6865 2070 6163 6b61 6765 2066 6163 7473  he package facts
│ │ │ -001f3a40: 0a20 2070 6163 6b61 6765 5f66 6163 7473  .  package_facts
│ │ │ -001f3a50: 3a0a 2020 2020 6d61 6e61 6765 723a 2061  :.    manager: a
│ │ │ -001f3a60: 7574 6f0a 2020 7461 6773 3a0a 2020 2d20  uto.  tags:.  - 
│ │ │ -001f3a70: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ -001f3a80: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001f3a90: 2d41 432d 3628 3129 0a20 202d 204e 4953  -AC-6(1).  - NIS
│ │ │ -001f3aa0: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ -001f3ab0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001f3ac0: 2d43 4d2d 3728 6129 0a20 202d 204e 4953  -CM-7(a).  - NIS
│ │ │ -001f3ad0: 542d 3830 302d 3533 2d43 4d2d 3728 6229  T-800-53-CM-7(b)
│ │ │ -001f3ae0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -001f3af0: 2d4d 502d 370a 2020 2d20 636f 6e66 6967  -MP-7.  - config
│ │ │ -001f3b00: 7572 655f 7374 7261 7465 6779 0a20 202d  ure_strategy.  -
│ │ │ -001f3b10: 2068 6967 685f 6469 7372 7570 7469 6f6e   high_disruption
│ │ │ -001f3b20: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ -001f3b30: 6974 790a 2020 2d20 6d65 6469 756d 5f73  ity.  - medium_s
│ │ │ -001f3b40: 6576 6572 6974 790a 2020 2d20 6d6f 756e  everity.  - moun
│ │ │ -001f3b50: 745f 6f70 7469 6f6e 5f76 6172 5f6c 6f67  t_option_var_log
│ │ │ -001f3b60: 5f6e 6f73 7569 640a 2020 2d20 6e6f 5f72  _nosuid.  - no_r
│ │ │ -001f3b70: 6562 6f6f 745f 6e65 6564 6564 0a0a 2d20  eboot_needed..- 
│ │ │ -001f3b80: 6e61 6d65 3a20 2741 6464 206e 6f73 7569  name: 'Add nosui
│ │ │ -001f3b90: 6420 4f70 7469 6f6e 2074 6f20 2f76 6172  d Option to /var
│ │ │ -001f3ba0: 2f6c 6f67 3a20 4368 6563 6b20 696e 666f  /log: Check info
│ │ │ -001f3bb0: 726d 6174 696f 6e20 6173 736f 6369 6174  rmation associat
│ │ │ -001f3bc0: 6564 2074 6f20 6d6f 756e 7470 6f69 6e74  ed to mountpoint
│ │ │ -001f3bd0: 270a 2020 616e 7369 626c 652e 6275 696c  '.  ansible.buil
│ │ │ -001f3be0: 7469 6e2e 636f 6d6d 616e 643a 2066 696e  tin.command: fin
│ │ │ -001f3bf0: 646d 6e74 202d 2d66 7374 6162 2027 2f76  dmnt --fstab '/v
│ │ │ -001f3c00: 6172 2f6c 6f67 270a 2020 7265 6769 7374  ar/log'.  regist
│ │ │ -001f3c10: 6572 3a20 6465 7669 6365 5f6e 616d 650a  er: device_name.
│ │ │ -001f3c20: 2020 6661 696c 6564 5f77 6865 6e3a 2064    failed_when: d
│ │ │ -001f3c30: 6576 6963 655f 6e61 6d65 2e72 6320 2667  evice_name.rc &g
│ │ │ -001f3c40: 743b 2031 0a20 2063 6861 6e67 6564 5f77  t; 1.  changed_w
│ │ │ -001f3c50: 6865 6e3a 2066 616c 7365 0a20 2063 6865  hen: false.  che
│ │ │ -001f3c60: 636b 5f6d 6f64 653a 2066 616c 7365 0a20  ck_mode: false. 
│ │ │ -001f3c70: 2077 6865 6e3a 0a20 202d 2028 206e 6f74   when:.  - ( not
│ │ │ -001f3c80: 2028 2022 6b65 726e 656c 2220 696e 2061   ( "kernel" in a
│ │ │ -001f3c90: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001f3ca0: 6b61 6765 7320 616e 6420 2262 6f6f 7463  kages and "bootc
│ │ │ -001f3cb0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001f3cc0: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ -001f3cd0: 616e 6420 6e6f 7420 226f 7065 6e73 6869  and not "openshi
│ │ │ -001f3ce0: 6674 2d6b 7562 656c 6574 2220 696e 2061  ft-kubelet" in a
│ │ │ -001f3cf0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001f3d00: 6b61 6765 7320 616e 6420 226f 7374 7265  kages and "ostre
│ │ │ -001f3d10: 6522 2069 6e20 616e 7369 626c 655f 7072  e" in ansible_pr
│ │ │ -001f3d20: 6f63 5f63 6d64 6c69 6e65 0a20 2020 2029  oc_cmdline.    )
│ │ │ -001f3d30: 2061 6e64 206e 6f74 2028 2061 6e73 6962   and not ( ansib
│ │ │ -001f3d40: 6c65 5f76 6972 7475 616c 697a 6174 696f  le_virtualizatio
│ │ │ -001f3d50: 6e5f 7479 7065 2069 6e20 5b22 646f 636b  n_type in ["dock
│ │ │ -001f3d60: 6572 222c 2022 6c78 6322 2c20 226f 7065  er", "lxc", "ope
│ │ │ -001f3d70: 6e76 7a22 2c20 2270 6f64 6d61 6e22 2c0a  nvz", "podman",.
│ │ │ -001f3d80: 2020 2020 2263 6f6e 7461 696e 6572 225d      "container"]
│ │ │ -001f3d90: 2029 2029 0a20 202d 2027 222f 7661 722f   ) ).  - '"/var/
│ │ │ -001f3da0: 6c6f 6722 2069 6e20 616e 7369 626c 655f  log" in ansible_
│ │ │ -001f3db0: 6d6f 756e 7473 207c 206d 6170 2861 7474  mounts | map(att
│ │ │ -001f3dc0: 7269 6275 7465 3d22 6d6f 756e 7422 2920  ribute="mount") 
│ │ │ -001f3dd0: 7c20 6c69 7374 270a 2020 7461 6773 3a0a  | list'.  tags:.
│ │ │ -001f3de0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -001f3df0: 4143 2d36 0a20 202d 204e 4953 542d 3830  AC-6.  - NIST-80
│ │ │ -001f3e00: 302d 3533 2d41 432d 3628 3129 0a20 202d  0-53-AC-6(1).  -
│ │ │ -001f3e10: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -001f3e20: 3628 6129 0a20 202d 204e 4953 542d 3830  6(a).  - NIST-80
│ │ │ -001f3e30: 302d 3533 2d43 4d2d 3728 6129 0a20 202d  0-53-CM-7(a).  -
│ │ │ -001f3e40: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -001f3e50: 3728 6229 0a20 202d 204e 4953 542d 3830  7(b).  - NIST-80
│ │ │ -001f3e60: 302d 3533 2d4d 502d 370a 2020 2d20 636f  0-53-MP-7.  - co
│ │ │ -001f3e70: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ -001f3e80: 0a20 202d 2068 6967 685f 6469 7372 7570  .  - high_disrup
│ │ │ -001f3e90: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d  tion.  - low_com
│ │ │ -001f3ea0: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ -001f3eb0: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ -001f3ec0: 6d6f 756e 745f 6f70 7469 6f6e 5f76 6172  mount_option_var
│ │ │ -001f3ed0: 5f6c 6f67 5f6e 6f73 7569 640a 2020 2d20  _log_nosuid.  - 
│ │ │ -001f3ee0: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ -001f3ef0: 0a0a 2d20 6e61 6d65 3a20 2741 6464 206e  ..- name: 'Add n
│ │ │ -001f3f00: 6f73 7569 6420 4f70 7469 6f6e 2074 6f20  osuid Option to 
│ │ │ -001f3f10: 2f76 6172 2f6c 6f67 3a20 4372 6561 7465  /var/log: Create
│ │ │ -001f3f20: 206d 6f75 6e74 5f69 6e66 6f20 6469 6374   mount_info dict
│ │ │ -001f3f30: 696f 6e61 7279 2076 6172 6961 626c 6527  ionary variable'
│ │ │ -001f3f40: 0a20 2073 6574 5f66 6163 743a 0a20 2020  .  set_fact:.   
│ │ │ -001f3f50: 206d 6f75 6e74 5f69 6e66 6f3a 2027 7b7b   mount_info: '{{
│ │ │ -001f3f60: 206d 6f75 6e74 5f69 6e66 6f7c 6465 6661   mount_info|defa
│ │ │ -001f3f70: 756c 7428 7b7d 297c 636f 6d62 696e 6528  ult({})|combine(
│ │ │ -001f3f80: 7b69 7465 6d2e 303a 2069 7465 6d2e 317d  {item.0: item.1}
│ │ │ -001f3f90: 2920 7d7d 270a 2020 7769 7468 5f74 6f67  ) }}'.  with_tog
│ │ │ -001f3fa0: 6574 6865 723a 0a20 202d 2027 7b7b 2064  ether:.  - '{{ d
│ │ │ -001f3fb0: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ -001f3fc0: 745f 6c69 6e65 735b 305d 2e73 706c 6974  t_lines[0].split
│ │ │ -001f3fd0: 2829 207c 206d 6170 2827 276c 6f77 6572  () | map(''lower
│ │ │ -001f3fe0: 2727 2920 7c20 6c69 7374 207d 7d27 0a20  '') | list }}'. 
│ │ │ -001f3ff0: 202d 2027 7b7b 2064 6576 6963 655f 6e61   - '{{ device_na
│ │ │ -001f4000: 6d65 2e73 7464 6f75 745f 6c69 6e65 735b  me.stdout_lines[
│ │ │ -001f4010: 315d 2e73 706c 6974 2829 207c 206c 6973  1].split() | lis
│ │ │ -001f4020: 7420 7d7d 270a 2020 7768 656e 3a0a 2020  t }}'.  when:.  
│ │ │ -001f4030: 2d20 2820 6e6f 7420 2820 226b 6572 6e65  - ( not ( "kerne
│ │ │ -001f4040: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ -001f4050: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ -001f4060: 2022 626f 6f74 6322 2069 6e20 616e 7369   "bootc" in ansi
│ │ │ -001f4070: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001f4080: 6573 0a20 2020 2061 6e64 206e 6f74 2022  es.    and not "
│ │ │ -001f4090: 6f70 656e 7368 6966 742d 6b75 6265 6c65  openshift-kubele
│ │ │ -001f40a0: 7422 2069 6e20 616e 7369 626c 655f 6661  t" in ansible_fa
│ │ │ -001f40b0: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ -001f40c0: 2022 6f73 7472 6565 2220 696e 2061 6e73   "ostree" in ans
│ │ │ -001f40d0: 6962 6c65 5f70 726f 635f 636d 646c 696e  ible_proc_cmdlin
│ │ │ -001f40e0: 650a 2020 2020 2920 616e 6420 6e6f 7420  e.    ) and not 
│ │ │ -001f40f0: 2820 616e 7369 626c 655f 7669 7274 7561  ( ansible_virtua
│ │ │ -001f4100: 6c69 7a61 7469 6f6e 5f74 7970 6520 696e  lization_type in
│ │ │ -001f4110: 205b 2264 6f63 6b65 7222 2c20 226c 7863   ["docker", "lxc
│ │ │ -001f4120: 222c 2022 6f70 656e 767a 222c 2022 706f  ", "openvz", "po
│ │ │ -001f4130: 646d 616e 222c 0a20 2020 2022 636f 6e74  dman",.    "cont
│ │ │ -001f4140: 6169 6e65 7222 5d20 2920 290a 2020 2d20  ainer"] ) ).  - 
│ │ │ -001f4150: 2722 2f76 6172 2f6c 6f67 2220 696e 2061  '"/var/log" in a
│ │ │ -001f4160: 6e73 6962 6c65 5f6d 6f75 6e74 7320 7c20  nsible_mounts | 
│ │ │ -001f4170: 6d61 7028 6174 7472 6962 7574 653d 226d  map(attribute="m
│ │ │ -001f4180: 6f75 6e74 2229 207c 206c 6973 7427 0a20  ount") | list'. 
│ │ │ -001f4190: 202d 2064 6576 6963 655f 6e61 6d65 2e73   - device_name.s
│ │ │ -001f41a0: 7464 6f75 7420 6973 2064 6566 696e 6564  tdout is defined
│ │ │ -001f41b0: 2061 6e64 2064 6576 6963 655f 6e61 6d65   and device_name
│ │ │ -001f41c0: 2e73 7464 6f75 745f 6c69 6e65 7320 6973  .stdout_lines is
│ │ │ -001f41d0: 2064 6566 696e 6564 0a20 202d 2028 6465   defined.  - (de
│ │ │ -001f41e0: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ -001f41f0: 207c 206c 656e 6774 6820 2667 743b 2030   | length > 0
│ │ │ -001f4200: 290a 2020 7461 6773 3a0a 2020 2d20 4e49  ).  tags:.  - NI
│ │ │ -001f4210: 5354 2d38 3030 2d35 332d 4143 2d36 0a20  ST-800-53-AC-6. 
│ │ │ -001f4220: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ -001f4230: 432d 3628 3129 0a20 202d 204e 4953 542d  C-6(1).  - NIST-
│ │ │ -001f4240: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ -001f4250: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -001f4260: 4d2d 3728 6129 0a20 202d 204e 4953 542d  M-7(a).  - NIST-
│ │ │ -001f4270: 3830 302d 3533 2d43 4d2d 3728 6229 0a20  800-53-CM-7(b). 
│ │ │ -001f4280: 202d 204e 4953 542d 3830 302d 3533 2d4d   - NIST-800-53-M
│ │ │ -001f4290: 502d 370a 2020 2d20 636f 6e66 6967 7572  P-7.  - configur
│ │ │ -001f42a0: 655f 7374 7261 7465 6779 0a20 202d 2068  e_strategy.  - h
│ │ │ -001f42b0: 6967 685f 6469 7372 7570 7469 6f6e 0a20  igh_disruption. 
│ │ │ -001f42c0: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ -001f42d0: 790a 2020 2d20 6d65 6469 756d 5f73 6576  y.  - medium_sev
│ │ │ -001f42e0: 6572 6974 790a 2020 2d20 6d6f 756e 745f  erity.  - mount_
│ │ │ -001f42f0: 6f70 7469 6f6e 5f76 6172 5f6c 6f67 5f6e  option_var_log_n
│ │ │ -001f4300: 6f73 7569 640a 2020 2d20 6e6f 5f72 6562  osuid.  - no_reb
│ │ │ -001f4310: 6f6f 745f 6e65 6564 6564 0a0a 2d20 6e61  oot_needed..- na
│ │ │ -001f4320: 6d65 3a20 2741 6464 206e 6f73 7569 6420  me: 'Add nosuid 
│ │ │ -001f4330: 4f70 7469 6f6e 2074 6f20 2f76 6172 2f6c  Option to /var/l
│ │ │ -001f4340: 6f67 3a20 4966 202f 7661 722f 6c6f 6720  og: If /var/log 
│ │ │ -001f4350: 6e6f 7420 6d6f 756e 7465 642c 2063 7261  not mounted, cra
│ │ │ -001f4360: 6674 206d 6f75 6e74 5f69 6e66 6f0a 2020  ft mount_info.  
│ │ │ -001f4370: 2020 6d61 6e75 616c 6c79 270a 2020 7365    manually'.  se
│ │ │ -001f4380: 745f 6661 6374 3a0a 2020 2020 6d6f 756e  t_fact:.    moun
│ │ │ -001f4390: 745f 696e 666f 3a20 277b 7b20 6d6f 756e  t_info: '{{ moun
│ │ │ -001f43a0: 745f 696e 666f 7c64 6566 6175 6c74 287b  t_info|default({
│ │ │ -001f43b0: 7d29 7c63 6f6d 6269 6e65 287b 6974 656d  })|combine({item
│ │ │ -001f43c0: 2e30 3a20 6974 656d 2e31 7d29 207d 7d27  .0: item.1}) }}'
│ │ │ -001f43d0: 0a20 2077 6974 685f 746f 6765 7468 6572  .  with_together
│ │ │ -001f43e0: 3a0a 2020 2d20 2d20 7461 7267 6574 0a20  :.  - - target. 
│ │ │ -001f43f0: 2020 202d 2073 6f75 7263 650a 2020 2020     - source.    
│ │ │ -001f4400: 2d20 6673 7479 7065 0a20 2020 202d 206f  - fstype.    - o
│ │ │ -001f4410: 7074 696f 6e73 0a20 202d 202d 202f 7661  ptions.  - - /va
│ │ │ -001f4420: 722f 6c6f 670a 2020 2020 2d20 2727 0a20  r/log.    - ''. 
│ │ │ -001f4430: 2020 202d 2027 270a 2020 2020 2d20 6465     - ''.    - de
│ │ │ -001f4440: 6661 756c 7473 0a20 2077 6865 6e3a 0a20  faults.  when:. 
│ │ │ -001f4450: 202d 2028 206e 6f74 2028 2022 6b65 726e   - ( not ( "kern
│ │ │ -001f4460: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ -001f4470: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ -001f4480: 6420 2262 6f6f 7463 2220 696e 2061 6e73  d "bootc" in ans
│ │ │ -001f4490: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -001f44a0: 6765 730a 2020 2020 616e 6420 6e6f 7420  ges.    and not 
│ │ │ -001f44b0: 226f 7065 6e73 6869 6674 2d6b 7562 656c  "openshift-kubel
│ │ │ -001f44c0: 6574 2220 696e 2061 6e73 6962 6c65 5f66  et" in ansible_f
│ │ │ -001f44d0: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ -001f44e0: 6420 226f 7374 7265 6522 2069 6e20 616e  d "ostree" in an
│ │ │ -001f44f0: 7369 626c 655f 7072 6f63 5f63 6d64 6c69  sible_proc_cmdli
│ │ │ -001f4500: 6e65 0a20 2020 2029 2061 6e64 206e 6f74  ne.    ) and not
│ │ │ -001f4510: 2028 2061 6e73 6962 6c65 5f76 6972 7475   ( ansible_virtu
│ │ │ -001f4520: 616c 697a 6174 696f 6e5f 7479 7065 2069  alization_type i
│ │ │ -001f4530: 6e20 5b22 646f 636b 6572 222c 2022 6c78  n ["docker", "lx
│ │ │ -001f4540: 6322 2c20 226f 7065 6e76 7a22 2c20 2270  c", "openvz", "p
│ │ │ -001f4550: 6f64 6d61 6e22 2c0a 2020 2020 2263 6f6e  odman",.    "con
│ │ │ -001f4560: 7461 696e 6572 225d 2029 2029 0a20 202d  tainer"] ) ).  -
│ │ │ -001f4570: 2027 222f 7661 722f 6c6f 6722 2069 6e20   '"/var/log" in 
│ │ │ -001f4580: 616e 7369 626c 655f 6d6f 756e 7473 207c  ansible_mounts |
│ │ │ -001f4590: 206d 6170 2861 7474 7269 6275 7465 3d22   map(attribute="
│ │ │ -001f45a0: 6d6f 756e 7422 2920 7c20 6c69 7374 270a  mount") | list'.
│ │ │ -001f45b0: 2020 2d20 2822 2d2d 6673 7461 6222 207c    - ("--fstab" |
│ │ │ -001f45c0: 206c 656e 6774 6820 3d3d 2030 290a 2020   length == 0).  
│ │ │ -001f45d0: 2d20 6465 7669 6365 5f6e 616d 652e 7374  - device_name.st
│ │ │ -001f45e0: 646f 7574 2069 7320 6465 6669 6e65 6420  dout is defined 
│ │ │ -001f45f0: 616e 6420 6465 7669 6365 5f6e 616d 652e  and device_name.
│ │ │ -001f4600: 7374 646f 7574 5f6c 696e 6573 2069 7320  stdout_lines is 
│ │ │ -001f4610: 6465 6669 6e65 640a 2020 2d20 2864 6576  defined.  - (dev
│ │ │ -001f4620: 6963 655f 6e61 6d65 2e73 7464 6f75 7420  ice_name.stdout 
│ │ │ -001f4630: 7c20 6c65 6e67 7468 203d 3d20 3029 0a20  | length == 0). 
│ │ │ -001f4640: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ -001f4650: 3830 302d 3533 2d41 432d 360a 2020 2d20  800-53-AC-6.  - 
│ │ │ -001f4660: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ -001f4670: 2831 290a 2020 2d20 4e49 5354 2d38 3030  (1).  - NIST-800
│ │ │ -001f4680: 2d35 332d 434d 2d36 2861 290a 2020 2d20  -53-CM-6(a).  - 
│ │ │ -001f4690: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ -001f46a0: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ -001f46b0: 2d35 332d 434d 2d37 2862 290a 2020 2d20  -53-CM-7(b).  - 
│ │ │ -001f46c0: 4e49 5354 2d38 3030 2d35 332d 4d50 2d37  NIST-800-53-MP-7
│ │ │ -001f46d0: 0a20 202d 2063 6f6e 6669 6775 7265 5f73  .  - configure_s
│ │ │ -001f46e0: 7472 6174 6567 790a 2020 2d20 6869 6768  trategy.  - high
│ │ │ -001f46f0: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ -001f4700: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ -001f4710: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ -001f4720: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074  ty.  - mount_opt
│ │ │ -001f4730: 696f 6e5f 7661 725f 6c6f 675f 6e6f 7375  ion_var_log_nosu
│ │ │ -001f4740: 6964 0a20 202d 206e 6f5f 7265 626f 6f74  id.  - no_reboot
│ │ │ -001f4750: 5f6e 6565 6465 640a 0a2d 206e 616d 653a  _needed..- name:
│ │ │ -001f4760: 2027 4164 6420 6e6f 7375 6964 204f 7074   'Add nosuid Opt
│ │ │ -001f4770: 696f 6e20 746f 202f 7661 722f 6c6f 673a  ion to /var/log:
│ │ │ -001f4780: 204d 616b 6520 7375 7265 206e 6f73 7569   Make sure nosui
│ │ │ -001f4790: 6420 6f70 7469 6f6e 2069 7320 7061 7274  d option is part
│ │ │ -001f47a0: 206f 6620 7468 6520 746f 0a20 2020 202f   of the to.    /
│ │ │ -001f47b0: 7661 722f 6c6f 6720 6f70 7469 6f6e 7327  var/log options'
│ │ │ -001f47c0: 0a20 2073 6574 5f66 6163 743a 0a20 2020  .  set_fact:.   
│ │ │ -001f47d0: 206d 6f75 6e74 5f69 6e66 6f3a 2027 7b7b   mount_info: '{{
│ │ │ -001f47e0: 206d 6f75 6e74 5f69 6e66 6f20 7c20 636f   mount_info | co
│ │ │ -001f47f0: 6d62 696e 6528 207b 2727 6f70 7469 6f6e  mbine( {''option
│ │ │ -001f4800: 7327 273a 2727 2727 7e28 6d6f 756e 745f  s'':''''~(mount_
│ │ │ -001f4810: 696e 666f 2e6f 7074 696f 6e73 207c 0a20  info.options |. 
│ │ │ -001f4820: 2020 2020 2064 6566 6175 6c74 2827 2727       default('''
│ │ │ -001f4830: 2729 297e 2827 272c 2727 2069 6620 286d  '))~('','' if (m
│ │ │ -001f4840: 6f75 6e74 5f69 6e66 6f2e 6f70 7469 6f6e  ount_info.option
│ │ │ -001f4850: 7320 7c20 6465 6661 756c 7428 2727 2727  s | default(''''
│ │ │ -001f4860: 2929 2065 6c73 6520 2727 2727 297e 2727  )) else '''')~''
│ │ │ -001f4870: 6e6f 7375 6964 2727 0a20 2020 2020 207d  nosuid''.      }
│ │ │ -001f4880: 2920 7d7d 270a 2020 7768 656e 3a0a 2020  ) }}'.  when:.  
│ │ │ -001f4890: 2d20 2820 6e6f 7420 2820 226b 6572 6e65  - ( not ( "kerne
│ │ │ -001f48a0: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ -001f48b0: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ -001f48c0: 2022 626f 6f74 6322 2069 6e20 616e 7369   "bootc" in ansi
│ │ │ -001f48d0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001f48e0: 6573 0a20 2020 2061 6e64 206e 6f74 2022  es.    and not "
│ │ │ -001f48f0: 6f70 656e 7368 6966 742d 6b75 6265 6c65  openshift-kubele
│ │ │ -001f4900: 7422 2069 6e20 616e 7369 626c 655f 6661  t" in ansible_fa
│ │ │ -001f4910: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ -001f4920: 2022 6f73 7472 6565 2220 696e 2061 6e73   "ostree" in ans
│ │ │ -001f4930: 6962 6c65 5f70 726f 635f 636d 646c 696e  ible_proc_cmdlin
│ │ │ -001f4940: 650a 2020 2020 2920 616e 6420 6e6f 7420  e.    ) and not 
│ │ │ -001f4950: 2820 616e 7369 626c 655f 7669 7274 7561  ( ansible_virtua
│ │ │ -001f4960: 6c69 7a61 7469 6f6e 5f74 7970 6520 696e  lization_type in
│ │ │ -001f4970: 205b 2264 6f63 6b65 7222 2c20 226c 7863   ["docker", "lxc
│ │ │ -001f4980: 222c 2022 6f70 656e 767a 222c 2022 706f  ", "openvz", "po
│ │ │ -001f4990: 646d 616e 222c 0a20 2020 2022 636f 6e74  dman",.    "cont
│ │ │ -001f49a0: 6169 6e65 7222 5d20 2920 290a 2020 2d20  ainer"] ) ).  - 
│ │ │ -001f49b0: 2722 2f76 6172 2f6c 6f67 2220 696e 2061  '"/var/log" in a
│ │ │ -001f49c0: 6e73 6962 6c65 5f6d 6f75 6e74 7320 7c20  nsible_mounts | 
│ │ │ -001f49d0: 6d61 7028 6174 7472 6962 7574 653d 226d  map(attribute="m
│ │ │ -001f49e0: 6f75 6e74 2229 207c 206c 6973 7427 0a20  ount") | list'. 
│ │ │ -001f49f0: 202d 206d 6f75 6e74 5f69 6e66 6f20 6973   - mount_info is
│ │ │ -001f4a00: 2064 6566 696e 6564 2061 6e64 2022 6e6f   defined and "no
│ │ │ -001f4a10: 7375 6964 2220 6e6f 7420 696e 2028 6d6f  suid" not in (mo
│ │ │ -001f4a20: 756e 745f 696e 666f 2e6f 7074 696f 6e73  unt_info.options
│ │ │ -001f4a30: 207c 2064 6566 6175 6c74 2827 2729 290a   | default('')).
│ │ │ -001f4a40: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ -001f4a50: 2d38 3030 2d35 332d 4143 2d36 0a20 202d  -800-53-AC-6.  -
│ │ │ -001f4a60: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ -001f4a70: 3628 3129 0a20 202d 204e 4953 542d 3830  6(1).  - NIST-80
│ │ │ -001f4a80: 302d 3533 2d43 4d2d 3628 6129 0a20 202d  0-53-CM-6(a).  -
│ │ │ -001f4a90: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -001f4aa0: 3728 6129 0a20 202d 204e 4953 542d 3830  7(a).  - NIST-80
│ │ │ -001f4ab0: 302d 3533 2d43 4d2d 3728 6229 0a20 202d  0-53-CM-7(b).  -
│ │ │ -001f4ac0: 204e 4953 542d 3830 302d 3533 2d4d 502d   NIST-800-53-MP-
│ │ │ -001f4ad0: 370a 2020 2d20 636f 6e66 6967 7572 655f  7.  - configure_
│ │ │ -001f4ae0: 7374 7261 7465 6779 0a20 202d 2068 6967  strategy.  - hig
│ │ │ -001f4af0: 685f 6469 7372 7570 7469 6f6e 0a20 202d  h_disruption.  -
│ │ │ -001f4b00: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ -001f4b10: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ -001f4b20: 6974 790a 2020 2d20 6d6f 756e 745f 6f70  ity.  - mount_op
│ │ │ -001f4b30: 7469 6f6e 5f76 6172 5f6c 6f67 5f6e 6f73  tion_var_log_nos
│ │ │ -001f4b40: 7569 640a 2020 2d20 6e6f 5f72 6562 6f6f  uid.  - no_reboo
│ │ │ -001f4b50: 745f 6e65 6564 6564 0a0a 2d20 6e61 6d65  t_needed..- name
│ │ │ -001f4b60: 3a20 2741 6464 206e 6f73 7569 6420 4f70  : 'Add nosuid Op
│ │ │ -001f4b70: 7469 6f6e 2074 6f20 2f76 6172 2f6c 6f67  tion to /var/log
│ │ │ -001f4b80: 3a20 456e 7375 7265 202f 7661 722f 6c6f  : Ensure /var/lo
│ │ │ -001f4b90: 6720 6973 206d 6f75 6e74 6564 2077 6974  g is mounted wit
│ │ │ -001f4ba0: 6820 6e6f 7375 6964 206f 7074 696f 6e27  h nosuid option'
│ │ │ -001f4bb0: 0a20 2061 6e73 6962 6c65 2e70 6f73 6978  .  ansible.posix
│ │ │ -001f4bc0: 2e6d 6f75 6e74 3a0a 2020 2020 7061 7468  .mount:.    path
│ │ │ -001f4bd0: 3a20 2f76 6172 2f6c 6f67 0a20 2020 2073  : /var/log.    s
│ │ │ -001f4be0: 7263 3a20 277b 7b20 6d6f 756e 745f 696e  rc: '{{ mount_in
│ │ │ -001f4bf0: 666f 2e73 6f75 7263 6520 7c20 6465 6661  fo.source | defa
│ │ │ -001f4c00: 756c 7428 2727 2727 2920 7d7d 270a 2020  ult('''') }}'.  
│ │ │ -001f4c10: 2020 6f70 7473 3a20 277b 7b20 6d6f 756e    opts: '{{ moun
│ │ │ -001f4c20: 745f 696e 666f 2e6f 7074 696f 6e73 207c  t_info.options |
│ │ │ -001f4c30: 2064 6566 6175 6c74 2827 2727 2729 207d   default('''') }
│ │ │ -001f4c40: 7d27 0a20 2020 2073 7461 7465 3a20 6d6f  }'.    state: mo
│ │ │ -001f4c50: 756e 7465 640a 2020 2020 6673 7479 7065  unted.    fstype
│ │ │ -001f4c60: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ -001f4c70: 2e66 7374 7970 6520 7c20 6465 6661 756c  .fstype | defaul
│ │ │ -001f4c80: 7428 2727 2727 2920 7d7d 270a 2020 7265  t('''') }}'.  re
│ │ │ -001f4c90: 6769 7374 6572 3a20 6d6f 756e 745f 7265  gister: mount_re
│ │ │ -001f4ca0: 7375 6c74 0a20 2066 6169 6c65 645f 7768  sult.  failed_wh
│ │ │ -001f4cb0: 656e 3a0a 2020 2d20 6d6f 756e 745f 7265  en:.  - mount_re
│ │ │ -001f4cc0: 7375 6c74 2069 7320 6661 696c 6564 0a20  sult is failed. 
│ │ │ -001f4cd0: 202d 2027 2727 7461 7267 6574 2069 7320   - '''target is 
│ │ │ -001f4ce0: 6275 7379 2727 206e 6f74 2069 6e20 286d  busy'' not in (m
│ │ │ -001f4cf0: 6f75 6e74 5f72 6573 756c 742e 6d73 6720  ount_result.msg 
│ │ │ -001f4d00: 7c20 6465 6661 756c 7428 2727 2727 2929  | default(''''))
│ │ │ -001f4d10: 270a 2020 2d20 2727 2761 6c72 6561 6479  '.  - '''already
│ │ │ -001f4d20: 206d 6f75 6e74 6564 2727 206e 6f74 2069   mounted'' not i
│ │ │ -001f4d30: 6e20 286d 6f75 6e74 5f72 6573 756c 742e  n (mount_result.
│ │ │ -001f4d40: 6d73 6720 7c20 6465 6661 756c 7428 2727  msg | default(''
│ │ │ -001f4d50: 2727 2929 270a 2020 7768 656e 3a0a 2020  ''))'.  when:.  
│ │ │ -001f4d60: 2d20 2820 6e6f 7420 2820 226b 6572 6e65  - ( not ( "kerne
│ │ │ -001f4d70: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ -001f4d80: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ -001f4d90: 2022 626f 6f74 6322 2069 6e20 616e 7369   "bootc" in ansi
│ │ │ -001f4da0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001f4db0: 6573 0a20 2020 2061 6e64 206e 6f74 2022  es.    and not "
│ │ │ -001f4dc0: 6f70 656e 7368 6966 742d 6b75 6265 6c65  openshift-kubele
│ │ │ -001f4dd0: 7422 2069 6e20 616e 7369 626c 655f 6661  t" in ansible_fa
│ │ │ -001f4de0: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ -001f4df0: 2022 6f73 7472 6565 2220 696e 2061 6e73   "ostree" in ans
│ │ │ -001f4e00: 6962 6c65 5f70 726f 635f 636d 646c 696e  ible_proc_cmdlin
│ │ │ -001f4e10: 650a 2020 2020 2920 616e 6420 6e6f 7420  e.    ) and not 
│ │ │ -001f4e20: 2820 616e 7369 626c 655f 7669 7274 7561  ( ansible_virtua
│ │ │ -001f4e30: 6c69 7a61 7469 6f6e 5f74 7970 6520 696e  lization_type in
│ │ │ -001f4e40: 205b 2264 6f63 6b65 7222 2c20 226c 7863   ["docker", "lxc
│ │ │ -001f4e50: 222c 2022 6f70 656e 767a 222c 2022 706f  ", "openvz", "po
│ │ │ -001f4e60: 646d 616e 222c 0a20 2020 2022 636f 6e74  dman",.    "cont
│ │ │ -001f4e70: 6169 6e65 7222 5d20 2920 290a 2020 2d20  ainer"] ) ).  - 
│ │ │ -001f4e80: 2722 2f76 6172 2f6c 6f67 2220 696e 2061  '"/var/log" in a
│ │ │ -001f4e90: 6e73 6962 6c65 5f6d 6f75 6e74 7320 7c20  nsible_mounts | 
│ │ │ -001f4ea0: 6d61 7028 6174 7472 6962 7574 653d 226d  map(attribute="m
│ │ │ -001f4eb0: 6f75 6e74 2229 207c 206c 6973 7427 0a20  ount") | list'. 
│ │ │ -001f4ec0: 202d 206d 6f75 6e74 5f69 6e66 6f20 6973   - mount_info is
│ │ │ -001f4ed0: 2064 6566 696e 6564 0a20 202d 2028 6465   defined.  - (de
│ │ │ -001f4ee0: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ -001f4ef0: 2069 7320 6465 6669 6e65 6420 616e 6420   is defined and 
│ │ │ -001f4f00: 2864 6576 6963 655f 6e61 6d65 2e73 7464  (device_name.std
│ │ │ -001f4f10: 6f75 7420 7c20 6c65 6e67 7468 2026 6774  out | length >
│ │ │ -001f4f20: 3b20 3029 2920 6f72 2028 222d 2d66 7374  ; 0)) or ("--fst
│ │ │ -001f4f30: 6162 220a 2020 2020 7c20 6c65 6e67 7468  ab".    | length
│ │ │ -001f4f40: 203d 3d20 3029 0a20 2074 6167 733a 0a20   == 0).  tags:. 
│ │ │ -001f4f50: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ -001f4f60: 432d 360a 2020 2d20 4e49 5354 2d38 3030  C-6.  - NIST-800
│ │ │ -001f4f70: 2d35 332d 4143 2d36 2831 290a 2020 2d20  -53-AC-6(1).  - 
│ │ │ -001f4f80: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ -001f4f90: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ -001f4fa0: 2d35 332d 434d 2d37 2861 290a 2020 2d20  -53-CM-7(a).  - 
│ │ │ -001f4fb0: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ -001f4fc0: 2862 290a 2020 2d20 4e49 5354 2d38 3030  (b).  - NIST-800
│ │ │ -001f4fd0: 2d35 332d 4d50 2d37 0a20 202d 2063 6f6e  -53-MP-7.  - con
│ │ │ -001f4fe0: 6669 6775 7265 5f73 7472 6174 6567 790a  figure_strategy.
│ │ │ -001f4ff0: 2020 2d20 6869 6768 5f64 6973 7275 7074    - high_disrupt
│ │ │ -001f5000: 696f 6e0a 2020 2d20 6c6f 775f 636f 6d70  ion.  - low_comp
│ │ │ -001f5010: 6c65 7869 7479 0a20 202d 206d 6564 6975  lexity.  - mediu
│ │ │ -001f5020: 6d5f 7365 7665 7269 7479 0a20 202d 206d  m_severity.  - m
│ │ │ -001f5030: 6f75 6e74 5f6f 7074 696f 6e5f 7661 725f  ount_option_var_
│ │ │ -001f5040: 6c6f 675f 6e6f 7375 6964 0a20 202d 206e  log_nosuid.  - n
│ │ │ -001f5050: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ -001f5060: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ -001f5110: 5265 6d65 6469 6174 696f 6e20 5368 656c Remediation Shel │ │ │ -001f5120: 6c20 7363 7269 7074 20e2 87b2 3c2f 613e l script ... │ │ │ -001f5130: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
Co │ │ │ -001f3970: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -001f39a0: 6e3a 3c2f 7468 3e3c 7464 3e68 6967 683c n:high< │ │ │ -001f39b0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -001f39f0: 3a3c 2f74 683e 3c74 643e 636f 6e66 6967 :config │ │ │ -001f3a00: 7572 653c 2f74 643e 3c2f 7472 3e3c 2f74 ure

│ │ │ -001f51e0: 2320 5265 6d65 6469 6174 696f 6e20 6973  # Remediation is
│ │ │ -001f51f0: 2061 7070 6c69 6361 626c 6520 6f6e 6c79   applicable only
│ │ │ -001f5200: 2069 6e20 6365 7274 6169 6e20 706c 6174   in certain plat
│ │ │ -001f5210: 666f 726d 730a 6966 2028 2021 2028 207b  forms.if ( ! ( {
│ │ │ -001f5220: 2072 706d 202d 2d71 7569 6574 202d 7120   rpm --quiet -q 
│ │ │ -001f5230: 6b65 726e 656c 203b 7d20 2661 6d70 3b26  kernel ;} &&
│ │ │ -001f5240: 616d 703b 207b 2072 706d 202d 2d71 7569  amp; { rpm --qui
│ │ │ -001f5250: 6574 202d 7120 626f 6f74 6320 3b7d 2026  et -q bootc ;} &
│ │ │ -001f5260: 616d 703b 2661 6d70 3b20 7b20 2120 7270  amp;& { ! rp
│ │ │ -001f5270: 6d20 2d2d 7175 6965 7420 2d71 206f 7065  m --quiet -q ope
│ │ │ -001f5280: 6e73 6869 6674 2d6b 7562 656c 6574 203b  nshift-kubelet ;
│ │ │ -001f5290: 7d20 2661 6d70 3b26 616d 703b 2028 5b20  } && ([ 
│ │ │ -001f52a0: 2d66 202f 7275 6e2f 6f73 7472 6565 2d62  -f /run/ostree-b
│ │ │ -001f52b0: 6f6f 7465 6420 5d20 7c7c 205b 202d 4c20  ooted ] || [ -L 
│ │ │ -001f52c0: 2f6f 7374 7265 6520 5d29 2029 2026 616d  /ostree ]) ) &am
│ │ │ -001f52d0: 703b 2661 6d70 3b20 2120 2820 5b20 2d66  p;& ! ( [ -f
│ │ │ -001f52e0: 202f 2e64 6f63 6b65 7265 6e76 205d 207c   /.dockerenv ] |
│ │ │ -001f52f0: 7c20 5b20 2d66 202f 7275 6e2f 2e63 6f6e  | [ -f /run/.con
│ │ │ -001f5300: 7461 696e 6572 656e 7620 5d20 2920 2920  tainerenv ] ) ) 
│ │ │ -001f5310: 2661 6d70 3b26 616d 703b 207b 2028 2066  && { ( f
│ │ │ -001f5320: 696e 646d 6e74 202d 2d6b 6572 6e65 6c20  indmnt --kernel 
│ │ │ -001f5330: 222f 7661 722f 6c6f 6722 2026 6774 3b20  "/var/log" > 
│ │ │ -001f5340: 2f64 6576 2f6e 756c 6c20 7c7c 2066 696e  /dev/null || fin
│ │ │ -001f5350: 646d 6e74 202d 2d66 7374 6162 2022 2f76  dmnt --fstab "/v
│ │ │ -001f5360: 6172 2f6c 6f67 2220 2667 743b 202f 6465  ar/log" > /de
│ │ │ -001f5370: 762f 6e75 6c6c 2029 3b20 7d3b 2074 6865  v/null ); }; the
│ │ │ -001f5380: 6e0a 0a66 756e 6374 696f 6e20 7065 7266  n..function perf
│ │ │ -001f5390: 6f72 6d5f 7265 6d65 6469 6174 696f 6e20  orm_remediation 
│ │ │ -001f53a0: 7b0a 0a20 2020 200a 2020 2020 2020 2020  {..    .        
│ │ │ -001f53b0: 2320 7468 6520 6d6f 756e 7420 706f 696e  # the mount poin
│ │ │ -001f53c0: 7420 2f76 6172 2f6c 6f67 2068 6173 2074  t /var/log has t
│ │ │ -001f53d0: 6f20 6265 2064 6566 696e 6564 2069 6e20  o be defined in 
│ │ │ -001f53e0: 2f65 7463 2f66 7374 6162 0a20 2020 2020  /etc/fstab.     
│ │ │ -001f53f0: 2020 2023 2062 6566 6f72 6520 7468 6973     # before this
│ │ │ -001f5400: 2072 656d 6564 6961 7469 6f6e 2063 616e   remediation can
│ │ │ -001f5410: 2062 6520 6578 6563 7574 6564 2e20 496e   be executed. In
│ │ │ -001f5420: 2063 6173 6520 6974 2069 7320 6e6f 7420   case it is not 
│ │ │ -001f5430: 6465 6669 6e65 642c 2074 6865 0a20 2020  defined, the.   
│ │ │ -001f5440: 2020 2020 2023 2072 656d 6564 6961 7469       # remediati
│ │ │ -001f5450: 6f6e 2061 626f 7274 7320 616e 6420 6e6f  on aborts and no
│ │ │ -001f5460: 2063 6861 6e67 6573 2072 6567 6172 6469   changes regardi
│ │ │ -001f5470: 6e67 2074 6865 206d 6f75 6e74 2070 6f69  ng the mount poi
│ │ │ -001f5480: 6e74 2061 7265 2064 6f6e 652e 0a20 2020  nt are done..   
│ │ │ -001f5490: 2020 2020 206d 6f75 6e74 5f70 6f69 6e74       mount_point
│ │ │ -001f54a0: 5f6d 6174 6368 5f72 6567 6578 703d 2224  _match_regexp="$
│ │ │ -001f54b0: 2870 7269 6e74 6620 225e 5b5b 3a73 7061  (printf "^[[:spa
│ │ │ -001f54c0: 6365 3a5d 5d2a 5b5e 235d 2e2a 5b5b 3a73  ce:]]*[^#].*[[:s
│ │ │ -001f54d0: 7061 6365 3a5d 5d25 735b 5b3a 7370 6163  pace:]]%s[[:spac
│ │ │ -001f54e0: 653a 5d5d 2220 222f 7661 722f 6c6f 6722  e:]]" "/var/log"
│ │ │ -001f54f0: 2922 0a0a 2020 2020 6772 6570 2022 246d  )"..    grep "$m
│ │ │ -001f5500: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ -001f5510: 5f72 6567 6578 7022 202d 7120 2f65 7463  _regexp" -q /etc
│ │ │ -001f5520: 2f66 7374 6162 205c 0a20 2020 2020 2020  /fstab \.       
│ │ │ -001f5530: 207c 7c20 7b20 6563 686f 2022 5468 6520   || { echo "The 
│ │ │ -001f5540: 6d6f 756e 7420 706f 696e 7420 272f 7661  mount point '/va
│ │ │ -001f5550: 722f 6c6f 6727 2069 7320 6e6f 7420 6576  r/log' is not ev
│ │ │ -001f5560: 656e 2069 6e20 2f65 7463 2f66 7374 6162  en in /etc/fstab
│ │ │ -001f5570: 2c20 736f 2077 6520 6361 6e27 7420 7365  , so we can't se
│ │ │ -001f5580: 7420 7570 206d 6f75 6e74 206f 7074 696f  t up mount optio
│ │ │ -001f5590: 6e73 2220 2667 743b 2661 6d70 3b32 3b0a  ns" >&2;.
│ │ │ -001f55a0: 2020 2020 2020 2020 2020 2020 2020 2020                  
│ │ │ -001f55b0: 6563 686f 2022 4e6f 7420 7265 6d65 6469  echo "Not remedi
│ │ │ -001f55c0: 6174 696e 672c 2062 6563 6175 7365 2074  ating, because t
│ │ │ -001f55d0: 6865 7265 2069 7320 6e6f 2072 6563 6f72  here is no recor
│ │ │ -001f55e0: 6420 6f66 202f 7661 722f 6c6f 6720 696e  d of /var/log in
│ │ │ -001f55f0: 202f 6574 632f 6673 7461 6222 2026 6774   /etc/fstab" >
│ │ │ -001f5600: 3b26 616d 703b 323b 2072 6574 7572 6e20  ;&2; return 
│ │ │ -001f5610: 313b 207d 0a20 2020 200a 0a0a 2020 2020  1; }.    ...    
│ │ │ -001f5620: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ -001f5630: 685f 7265 6765 7870 3d22 2428 7072 696e  h_regexp="$(prin
│ │ │ -001f5640: 7466 2022 5e5b 5b3a 7370 6163 653a 5d5d  tf "^[[:space:]]
│ │ │ -001f5650: 2a5b 5e23 5d2e 2a5b 5b3a 7370 6163 653a  *[^#].*[[:space:
│ │ │ -001f5660: 5d5d 2573 5b5b 3a73 7061 6365 3a5d 5d22  ]]%s[[:space:]]"
│ │ │ -001f5670: 202f 7661 722f 6c6f 6729 220a 0a20 2020   /var/log)"..   
│ │ │ -001f5680: 2023 2049 6620 7468 6520 6d6f 756e 7420   # If the mount 
│ │ │ -001f5690: 706f 696e 7420 6973 206e 6f74 2069 6e20  point is not in 
│ │ │ -001f56a0: 2f65 7463 2f66 7374 6162 2c20 6765 7420  /etc/fstab, get 
│ │ │ -001f56b0: 7072 6576 696f 7573 206d 6f75 6e74 206f  previous mount o
│ │ │ -001f56c0: 7074 696f 6e73 2066 726f 6d20 2f65 7463  ptions from /etc
│ │ │ -001f56d0: 2f6d 7461 620a 2020 2020 6966 2021 2067  /mtab.    if ! g
│ │ │ -001f56e0: 7265 7020 2d71 2022 246d 6f75 6e74 5f70  rep -q "$mount_p
│ │ │ -001f56f0: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ -001f5700: 7022 202f 6574 632f 6673 7461 623b 2074  p" /etc/fstab; t
│ │ │ -001f5710: 6865 6e0a 2020 2020 2020 2020 2320 7275  hen.        # ru
│ │ │ -001f5720: 6e74 696d 6520 6f70 7473 2077 6974 686f  ntime opts witho
│ │ │ -001f5730: 7574 2073 6f6d 6520 6175 746f 6d61 7469  ut some automati
│ │ │ -001f5740: 6320 6b65 726e 656c 2f75 7365 7273 7061  c kernel/userspa
│ │ │ -001f5750: 6365 2d61 6464 6564 2064 6566 6175 6c74  ce-added default
│ │ │ -001f5760: 730a 2020 2020 2020 2020 7072 6576 696f  s.        previo
│ │ │ -001f5770: 7573 5f6d 6f75 6e74 5f6f 7074 733d 2428  us_mount_opts=$(
│ │ │ -001f5780: 6772 6570 2022 246d 6f75 6e74 5f70 6f69  grep "$mount_poi
│ │ │ -001f5790: 6e74 5f6d 6174 6368 5f72 6567 6578 7022  nt_match_regexp"
│ │ │ -001f57a0: 202f 6574 632f 6d74 6162 207c 2068 6561   /etc/mtab | hea
│ │ │ -001f57b0: 6420 2d31 207c 2020 6177 6b20 277b 7072  d -1 |  awk '{pr
│ │ │ -001f57c0: 696e 7420 2434 7d27 205c 0a20 2020 2020  int $4}' \.     
│ │ │ -001f57d0: 2020 2020 2020 2020 2020 2020 2020 207c                 |
│ │ │ -001f57e0: 2073 6564 202d 4520 2273 2f28 7277 7c64   sed -E "s/(rw|d
│ │ │ -001f57f0: 6566 6175 6c74 737c 7365 636c 6162 656c  efaults|seclabel
│ │ │ -001f5800: 7c6e 6f73 7569 6429 282c 7c24 292f 2f67  |nosuid)(,|$)//g
│ │ │ -001f5810: 3b73 2f2c 242f 2f22 290a 2020 2020 2020  ;s/,$//").      
│ │ │ -001f5820: 2020 5b20 2224 7072 6576 696f 7573 5f6d    [ "$previous_m
│ │ │ -001f5830: 6f75 6e74 5f6f 7074 7322 205d 2026 616d  ount_opts" ] &am
│ │ │ -001f5840: 703b 2661 6d70 3b20 7072 6576 696f 7573  p;& previous
│ │ │ -001f5850: 5f6d 6f75 6e74 5f6f 7074 732b 3d22 2c22  _mount_opts+=","
│ │ │ -001f5860: 0a20 2020 2020 2020 2023 2049 6e20 6973  .        # In is
│ │ │ -001f5870: 6f39 3636 3020 6669 6c65 7379 7374 656d  o9660 filesystem
│ │ │ -001f5880: 7320 6d74 6162 2063 6f75 6c64 2064 6573  s mtab could des
│ │ │ -001f5890: 6372 6962 6520 6120 2262 6c6f 636b 7369  cribe a "blocksi
│ │ │ -001f58a0: 7a65 2220 7661 6c75 652c 2074 6869 7320  ze" value, this 
│ │ │ -001f58b0: 7368 6f75 6c64 2062 6520 7265 666c 6563  should be reflec
│ │ │ -001f58c0: 7465 6420 696e 0a20 2020 2020 2020 2023  ted in.        #
│ │ │ -001f58d0: 2066 7374 6162 2061 7320 2262 6c6f 636b   fstab as "block
│ │ │ -001f58e0: 222e 2020 5468 6520 6e65 7874 2076 6172  ".  The next var
│ │ │ -001f58f0: 6961 626c 6520 6973 2074 6f20 7361 7469  iable is to sati
│ │ │ -001f5900: 7366 7920 7368 656c 6c63 6865 636b 2053  sfy shellcheck S
│ │ │ -001f5910: 4332 3035 302e 0a20 2020 2020 2020 2066  C2050..        f
│ │ │ -001f5920: 735f 7479 7065 3d22 220a 2020 2020 2020  s_type="".      
│ │ │ -001f5930: 2020 6966 205b 2020 2224 6673 5f74 7970    if [  "$fs_typ
│ │ │ -001f5940: 6522 203d 3d20 2269 736f 3936 3630 2220  e" == "iso9660" 
│ │ │ -001f5950: 5d20 3b20 7468 656e 0a20 2020 2020 2020  ] ; then.       
│ │ │ -001f5960: 2020 2020 2070 7265 7669 6f75 735f 6d6f       previous_mo
│ │ │ -001f5970: 756e 745f 6f70 7473 3d24 2873 6564 2027  unt_opts=$(sed '
│ │ │ -001f5980: 732f 626c 6f63 6b73 697a 653d 2f62 6c6f  s/blocksize=/blo
│ │ │ -001f5990: 636b 3d2f 2720 266c 743b 266c 743b 266c  ck=/' <<&l
│ │ │ -001f59a0: 743b 2022 2470 7265 7669 6f75 735f 6d6f  t; "$previous_mo
│ │ │ -001f59b0: 756e 745f 6f70 7473 2229 0a20 2020 2020  unt_opts").     
│ │ │ -001f59c0: 2020 2066 690a 2020 2020 2020 2020 6563     fi.        ec
│ │ │ -001f59d0: 686f 2022 202f 7661 722f 6c6f 6720 2064  ho " /var/log  d
│ │ │ -001f59e0: 6566 6175 6c74 732c 247b 7072 6576 696f  efaults,${previo
│ │ │ -001f59f0: 7573 5f6d 6f75 6e74 5f6f 7074 737d 6e6f  us_mount_opts}no
│ │ │ -001f5a00: 7375 6964 2030 2030 2220 2667 743b 2667  suid 0 0" >&g
│ │ │ -001f5a10: 743b 202f 6574 632f 6673 7461 620a 2020  t; /etc/fstab.  
│ │ │ -001f5a20: 2020 2320 4966 2074 6865 206d 6f75 6e74    # If the mount
│ │ │ -001f5a30: 5f6f 7074 206f 7074 696f 6e20 6973 206e  _opt option is n
│ │ │ -001f5a40: 6f74 2061 6c72 6561 6479 2069 6e20 7468  ot already in th
│ │ │ -001f5a50: 6520 6d6f 756e 7420 706f 696e 7427 7320  e mount point's 
│ │ │ -001f5a60: 2f65 7463 2f66 7374 6162 2065 6e74 7279  /etc/fstab entry
│ │ │ -001f5a70: 2c20 6164 6420 6974 0a20 2020 2065 6c69  , add it.    eli
│ │ │ -001f5a80: 6620 2120 6772 6570 2022 246d 6f75 6e74  f ! grep "$mount
│ │ │ -001f5a90: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ -001f5aa0: 6578 7022 202f 6574 632f 6673 7461 6220  exp" /etc/fstab 
│ │ │ -001f5ab0: 7c20 6772 6570 202d 7120 226e 6f73 7569  | grep -q "nosui
│ │ │ -001f5ac0: 6422 3b20 7468 656e 0a20 2020 2020 2020  d"; then.       
│ │ │ -001f5ad0: 2070 7265 7669 6f75 735f 6d6f 756e 745f   previous_mount_
│ │ │ -001f5ae0: 6f70 7473 3d24 2867 7265 7020 2224 6d6f  opts=$(grep "$mo
│ │ │ -001f5af0: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ -001f5b00: 7265 6765 7870 2220 2f65 7463 2f66 7374  regexp" /etc/fst
│ │ │ -001f5b10: 6162 207c 2061 776b 2027 7b70 7269 6e74  ab | awk '{print
│ │ │ -001f5b20: 2024 347d 2729 0a20 2020 2020 2020 2073   $4}').        s
│ │ │ -001f5b30: 6564 202d 6920 2273 7c5c 2824 7b6d 6f75  ed -i "s|\(${mou
│ │ │ -001f5b40: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ -001f5b50: 6567 6578 707d 2e2a 247b 7072 6576 696f  egexp}.*${previo
│ │ │ -001f5b60: 7573 5f6d 6f75 6e74 5f6f 7074 737d 5c29  us_mount_opts}\)
│ │ │ -001f5b70: 7c5c 312c 6e6f 7375 6964 7c22 202f 6574  |\1,nosuid|" /et
│ │ │ -001f5b80: 632f 6673 7461 620a 2020 2020 6669 0a0a  c/fstab.    fi..
│ │ │ -001f5b90: 0a20 2020 2069 6620 6d6b 6469 7220 2d70  .    if mkdir -p
│ │ │ -001f5ba0: 2022 2f76 6172 2f6c 6f67 223b 2074 6865   "/var/log"; the
│ │ │ -001f5bb0: 6e0a 2020 2020 2020 2020 6966 206d 6f75  n.        if mou
│ │ │ -001f5bc0: 6e74 706f 696e 7420 2d71 2022 2f76 6172  ntpoint -q "/var
│ │ │ -001f5bd0: 2f6c 6f67 223b 2074 6865 6e0a 2020 2020  /log"; then.    
│ │ │ -001f5be0: 2020 2020 2020 2020 6d6f 756e 7420 2d6f          mount -o
│ │ │ -001f5bf0: 2072 656d 6f75 6e74 202d 2d74 6172 6765   remount --targe
│ │ │ -001f5c00: 7420 222f 7661 722f 6c6f 6722 0a20 2020  t "/var/log".   
│ │ │ -001f5c10: 2020 2020 2066 690a 2020 2020 6669 0a7d       fi.    fi.}
│ │ │ -001f5c20: 0a0a 7065 7266 6f72 6d5f 7265 6d65 6469  ..perform_remedi
│ │ │ -001f5c30: 6174 696f 6e0a 0a65 6c73 650a 2020 2020  ation..else.    
│ │ │ -001f5c40: 2667 743b 2661 6d70 3b32 2065 6368 6f20  >&2 echo 
│ │ │ -001f5c50: 2752 656d 6564 6961 7469 6f6e 2069 7320  'Remediation is 
│ │ │ -001f5c60: 6e6f 7420 6170 706c 6963 6162 6c65 2c20  not applicable, 
│ │ │ -001f5c70: 6e6f 7468 696e 6720 7761 7320 646f 6e65  nothing was done
│ │ │ -001f5c80: 270a 6669 0a3c 2f63 6f64 653e 3c2f 7072  '.fi.
< │ │ │ +001f3780: 7464 3e68 6967 683c 2f74 643e 3c2f 7472 td>highconfigure │ │ │ +001f37e0: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
Re │ │ │ -001f51b0: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -001f51c0: 6c73 653c 2f74 643e 3c2f 7472 3e3c 2f74 lse
Complexity │ │ │ +001f3750: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
D │ │ │ +001f3770: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:
Reboot: │ │ │ +001f37a0: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false
│ │ │ +001f37c0: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:
- name: │ │ │ +001f3800: 4761 7468 6572 2074 6865 2070 6163 6b61 Gather the packa │ │ │ +001f3810: 6765 2066 6163 7473 0a20 2070 6163 6b61 ge facts. packa │ │ │ +001f3820: 6765 5f66 6163 7473 3a0a 2020 2020 6d61 ge_facts:. ma │ │ │ +001f3830: 6e61 6765 723a 2061 7574 6f0a 2020 7461 nager: auto. ta │ │ │ +001f3840: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030 gs:. - NIST-800 │ │ │ +001f3850: 2d35 332d 4143 2d36 0a20 202d 204e 4953 -53-AC-6. - NIS │ │ │ +001f3860: 542d 3830 302d 3533 2d41 432d 3628 3129 T-800-53-AC-6(1) │ │ │ +001f3870: 0a20 202d 204e 4953 542d 3830 302d 3533 . - NIST-800-53 │ │ │ +001f3880: 2d43 4d2d 3628 6129 0a20 202d 204e 4953 -CM-6(a). - NIS │ │ │ +001f3890: 542d 3830 302d 3533 2d43 4d2d 3728 6129 T-800-53-CM-7(a) │ │ │ +001f38a0: 0a20 202d 204e 4953 542d 3830 302d 3533 . - NIST-800-53 │ │ │ +001f38b0: 2d43 4d2d 3728 6229 0a20 202d 204e 4953 -CM-7(b). - NIS │ │ │ +001f38c0: 542d 3830 302d 3533 2d4d 502d 370a 2020 T-800-53-MP-7. │ │ │ +001f38d0: 2d20 636f 6e66 6967 7572 655f 7374 7261 - configure_stra │ │ │ +001f38e0: 7465 6779 0a20 202d 2068 6967 685f 6469 tegy. - high_di │ │ │ +001f38f0: 7372 7570 7469 6f6e 0a20 202d 206c 6f77 sruption. - low │ │ │ +001f3900: 5f63 6f6d 706c 6578 6974 790a 2020 2d20 _complexity. - │ │ │ +001f3910: 6d65 6469 756d 5f73 6576 6572 6974 790a medium_severity. │ │ │ +001f3920: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e - mount_option │ │ │ +001f3930: 5f76 6172 5f6c 6f67 5f6e 6f73 7569 640a _var_log_nosuid. │ │ │ +001f3940: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65 - no_reboot_ne │ │ │ +001f3950: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741 eded..- name: 'A │ │ │ +001f3960: 6464 206e 6f73 7569 6420 4f70 7469 6f6e dd nosuid Option │ │ │ +001f3970: 2074 6f20 2f76 6172 2f6c 6f67 3a20 4368 to /var/log: Ch │ │ │ +001f3980: 6563 6b20 696e 666f 726d 6174 696f 6e20 eck information │ │ │ +001f3990: 6173 736f 6369 6174 6564 2074 6f20 6d6f associated to mo │ │ │ +001f39a0: 756e 7470 6f69 6e74 270a 2020 616e 7369 untpoint'. ansi │ │ │ +001f39b0: 626c 652e 6275 696c 7469 6e2e 636f 6d6d ble.builtin.comm │ │ │ +001f39c0: 616e 643a 2066 696e 646d 6e74 202d 2d66 and: findmnt --f │ │ │ +001f39d0: 7374 6162 2027 2f76 6172 2f6c 6f67 270a stab '/var/log'. │ │ │ +001f39e0: 2020 7265 6769 7374 6572 3a20 6465 7669 register: devi │ │ │ +001f39f0: 6365 5f6e 616d 650a 2020 6661 696c 6564 ce_name. failed │ │ │ +001f3a00: 5f77 6865 6e3a 2064 6576 6963 655f 6e61 _when: device_na │ │ │ +001f3a10: 6d65 2e72 6320 2667 743b 2031 0a20 2063 me.rc > 1. c │ │ │ +001f3a20: 6861 6e67 6564 5f77 6865 6e3a 2066 616c hanged_when: fal │ │ │ +001f3a30: 7365 0a20 2063 6865 636b 5f6d 6f64 653a se. check_mode: │ │ │ +001f3a40: 2066 616c 7365 0a20 2077 6865 6e3a 0a20 false. when:. │ │ │ +001f3a50: 202d 2028 206e 6f74 2028 2022 6b65 726e - ( not ( "kern │ │ │ +001f3a60: 656c 2220 696e 2061 6e73 6962 6c65 5f66 el" in ansible_f │ │ │ +001f3a70: 6163 7473 2e70 6163 6b61 6765 7320 616e acts.packages an │ │ │ +001f3a80: 6420 2262 6f6f 7463 2220 696e 2061 6e73 d "bootc" in ans │ │ │ +001f3a90: 6962 6c65 5f66 6163 7473 2e70 6163 6b61 ible_facts.packa │ │ │ +001f3aa0: 6765 730a 2020 2020 616e 6420 6e6f 7420 ges. and not │ │ │ +001f3ab0: 226f 7065 6e73 6869 6674 2d6b 7562 656c "openshift-kubel │ │ │ +001f3ac0: 6574 2220 696e 2061 6e73 6962 6c65 5f66 et" in ansible_f │ │ │ +001f3ad0: 6163 7473 2e70 6163 6b61 6765 7320 616e acts.packages an │ │ │ +001f3ae0: 6420 226f 7374 7265 6522 2069 6e20 616e d "ostree" in an │ │ │ +001f3af0: 7369 626c 655f 7072 6f63 5f63 6d64 6c69 sible_proc_cmdli │ │ │ +001f3b00: 6e65 0a20 2020 2029 2061 6e64 206e 6f74 ne. ) and not │ │ │ +001f3b10: 2028 2061 6e73 6962 6c65 5f76 6972 7475 ( ansible_virtu │ │ │ +001f3b20: 616c 697a 6174 696f 6e5f 7479 7065 2069 alization_type i │ │ │ +001f3b30: 6e20 5b22 646f 636b 6572 222c 2022 6c78 n ["docker", "lx │ │ │ +001f3b40: 6322 2c20 226f 7065 6e76 7a22 2c20 2270 c", "openvz", "p │ │ │ +001f3b50: 6f64 6d61 6e22 2c0a 2020 2020 2263 6f6e odman",. "con │ │ │ +001f3b60: 7461 696e 6572 225d 2029 2029 0a20 202d tainer"] ) ). - │ │ │ +001f3b70: 2027 222f 7661 722f 6c6f 6722 2069 6e20 '"/var/log" in │ │ │ +001f3b80: 616e 7369 626c 655f 6d6f 756e 7473 207c ansible_mounts | │ │ │ +001f3b90: 206d 6170 2861 7474 7269 6275 7465 3d22 map(attribute=" │ │ │ +001f3ba0: 6d6f 756e 7422 2920 7c20 6c69 7374 270a mount") | list'. │ │ │ +001f3bb0: 2020 7461 6773 3a0a 2020 2d20 4e49 5354 tags:. - NIST │ │ │ +001f3bc0: 2d38 3030 2d35 332d 4143 2d36 0a20 202d -800-53-AC-6. - │ │ │ +001f3bd0: 204e 4953 542d 3830 302d 3533 2d41 432d NIST-800-53-AC- │ │ │ +001f3be0: 3628 3129 0a20 202d 204e 4953 542d 3830 6(1). - NIST-80 │ │ │ +001f3bf0: 302d 3533 2d43 4d2d 3628 6129 0a20 202d 0-53-CM-6(a). - │ │ │ +001f3c00: 204e 4953 542d 3830 302d 3533 2d43 4d2d NIST-800-53-CM- │ │ │ +001f3c10: 3728 6129 0a20 202d 204e 4953 542d 3830 7(a). - NIST-80 │ │ │ +001f3c20: 302d 3533 2d43 4d2d 3728 6229 0a20 202d 0-53-CM-7(b). - │ │ │ +001f3c30: 204e 4953 542d 3830 302d 3533 2d4d 502d NIST-800-53-MP- │ │ │ +001f3c40: 370a 2020 2d20 636f 6e66 6967 7572 655f 7. - configure_ │ │ │ +001f3c50: 7374 7261 7465 6779 0a20 202d 2068 6967 strategy. - hig │ │ │ +001f3c60: 685f 6469 7372 7570 7469 6f6e 0a20 202d h_disruption. - │ │ │ +001f3c70: 206c 6f77 5f63 6f6d 706c 6578 6974 790a low_complexity. │ │ │ +001f3c80: 2020 2d20 6d65 6469 756d 5f73 6576 6572 - medium_sever │ │ │ +001f3c90: 6974 790a 2020 2d20 6d6f 756e 745f 6f70 ity. - mount_op │ │ │ +001f3ca0: 7469 6f6e 5f76 6172 5f6c 6f67 5f6e 6f73 tion_var_log_nos │ │ │ +001f3cb0: 7569 640a 2020 2d20 6e6f 5f72 6562 6f6f uid. - no_reboo │ │ │ +001f3cc0: 745f 6e65 6564 6564 0a0a 2d20 6e61 6d65 t_needed..- name │ │ │ +001f3cd0: 3a20 2741 6464 206e 6f73 7569 6420 4f70 : 'Add nosuid Op │ │ │ +001f3ce0: 7469 6f6e 2074 6f20 2f76 6172 2f6c 6f67 tion to /var/log │ │ │ +001f3cf0: 3a20 4372 6561 7465 206d 6f75 6e74 5f69 : Create mount_i │ │ │ +001f3d00: 6e66 6f20 6469 6374 696f 6e61 7279 2076 nfo dictionary v │ │ │ +001f3d10: 6172 6961 626c 6527 0a20 2073 6574 5f66 ariable'. set_f │ │ │ +001f3d20: 6163 743a 0a20 2020 206d 6f75 6e74 5f69 act:. mount_i │ │ │ +001f3d30: 6e66 6f3a 2027 7b7b 206d 6f75 6e74 5f69 nfo: '{{ mount_i │ │ │ +001f3d40: 6e66 6f7c 6465 6661 756c 7428 7b7d 297c nfo|default({})| │ │ │ +001f3d50: 636f 6d62 696e 6528 7b69 7465 6d2e 303a combine({item.0: │ │ │ +001f3d60: 2069 7465 6d2e 317d 2920 7d7d 270a 2020 item.1}) }}'. │ │ │ +001f3d70: 7769 7468 5f74 6f67 6574 6865 723a 0a20 with_together:. │ │ │ +001f3d80: 202d 2027 7b7b 2064 6576 6963 655f 6e61 - '{{ device_na │ │ │ +001f3d90: 6d65 2e73 7464 6f75 745f 6c69 6e65 735b me.stdout_lines[ │ │ │ +001f3da0: 305d 2e73 706c 6974 2829 207c 206d 6170 0].split() | map │ │ │ +001f3db0: 2827 276c 6f77 6572 2727 2920 7c20 6c69 (''lower'') | li │ │ │ +001f3dc0: 7374 207d 7d27 0a20 202d 2027 7b7b 2064 st }}'. - '{{ d │ │ │ +001f3dd0: 6576 6963 655f 6e61 6d65 2e73 7464 6f75 evice_name.stdou │ │ │ +001f3de0: 745f 6c69 6e65 735b 315d 2e73 706c 6974 t_lines[1].split │ │ │ +001f3df0: 2829 207c 206c 6973 7420 7d7d 270a 2020 () | list }}'. │ │ │ +001f3e00: 7768 656e 3a0a 2020 2d20 2820 6e6f 7420 when:. - ( not │ │ │ +001f3e10: 2820 226b 6572 6e65 6c22 2069 6e20 616e ( "kernel" in an │ │ │ +001f3e20: 7369 626c 655f 6661 6374 732e 7061 636b sible_facts.pack │ │ │ +001f3e30: 6167 6573 2061 6e64 2022 626f 6f74 6322 ages and "bootc" │ │ │ +001f3e40: 2069 6e20 616e 7369 626c 655f 6661 6374 in ansible_fact │ │ │ +001f3e50: 732e 7061 636b 6167 6573 0a20 2020 2061 s.packages. a │ │ │ +001f3e60: 6e64 206e 6f74 2022 6f70 656e 7368 6966 nd not "openshif │ │ │ +001f3e70: 742d 6b75 6265 6c65 7422 2069 6e20 616e t-kubelet" in an │ │ │ +001f3e80: 7369 626c 655f 6661 6374 732e 7061 636b sible_facts.pack │ │ │ +001f3e90: 6167 6573 2061 6e64 2022 6f73 7472 6565 ages and "ostree │ │ │ +001f3ea0: 2220 696e 2061 6e73 6962 6c65 5f70 726f " in ansible_pro │ │ │ +001f3eb0: 635f 636d 646c 696e 650a 2020 2020 2920 c_cmdline. ) │ │ │ +001f3ec0: 616e 6420 6e6f 7420 2820 616e 7369 626c and not ( ansibl │ │ │ +001f3ed0: 655f 7669 7274 7561 6c69 7a61 7469 6f6e e_virtualization │ │ │ +001f3ee0: 5f74 7970 6520 696e 205b 2264 6f63 6b65 _type in ["docke │ │ │ +001f3ef0: 7222 2c20 226c 7863 222c 2022 6f70 656e r", "lxc", "open │ │ │ +001f3f00: 767a 222c 2022 706f 646d 616e 222c 0a20 vz", "podman",. │ │ │ +001f3f10: 2020 2022 636f 6e74 6169 6e65 7222 5d20 "container"] │ │ │ +001f3f20: 2920 290a 2020 2d20 2722 2f76 6172 2f6c ) ). - '"/var/l │ │ │ +001f3f30: 6f67 2220 696e 2061 6e73 6962 6c65 5f6d og" in ansible_m │ │ │ +001f3f40: 6f75 6e74 7320 7c20 6d61 7028 6174 7472 ounts | map(attr │ │ │ +001f3f50: 6962 7574 653d 226d 6f75 6e74 2229 207c ibute="mount") | │ │ │ +001f3f60: 206c 6973 7427 0a20 202d 2064 6576 6963 list'. - devic │ │ │ +001f3f70: 655f 6e61 6d65 2e73 7464 6f75 7420 6973 e_name.stdout is │ │ │ +001f3f80: 2064 6566 696e 6564 2061 6e64 2064 6576 defined and dev │ │ │ +001f3f90: 6963 655f 6e61 6d65 2e73 7464 6f75 745f ice_name.stdout_ │ │ │ +001f3fa0: 6c69 6e65 7320 6973 2064 6566 696e 6564 lines is defined │ │ │ +001f3fb0: 0a20 202d 2028 6465 7669 6365 5f6e 616d . - (device_nam │ │ │ +001f3fc0: 652e 7374 646f 7574 207c 206c 656e 6774 e.stdout | lengt │ │ │ +001f3fd0: 6820 2667 743b 2030 290a 2020 7461 6773 h > 0). tags │ │ │ +001f3fe0: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35 :. - NIST-800-5 │ │ │ +001f3ff0: 332d 4143 2d36 0a20 202d 204e 4953 542d 3-AC-6. - NIST- │ │ │ +001f4000: 3830 302d 3533 2d41 432d 3628 3129 0a20 800-53-AC-6(1). │ │ │ +001f4010: 202d 204e 4953 542d 3830 302d 3533 2d43 - NIST-800-53-C │ │ │ +001f4020: 4d2d 3628 6129 0a20 202d 204e 4953 542d M-6(a). - NIST- │ │ │ +001f4030: 3830 302d 3533 2d43 4d2d 3728 6129 0a20 800-53-CM-7(a). │ │ │ +001f4040: 202d 204e 4953 542d 3830 302d 3533 2d43 - NIST-800-53-C │ │ │ +001f4050: 4d2d 3728 6229 0a20 202d 204e 4953 542d M-7(b). - NIST- │ │ │ +001f4060: 3830 302d 3533 2d4d 502d 370a 2020 2d20 800-53-MP-7. - │ │ │ +001f4070: 636f 6e66 6967 7572 655f 7374 7261 7465 configure_strate │ │ │ +001f4080: 6779 0a20 202d 2068 6967 685f 6469 7372 gy. - high_disr │ │ │ +001f4090: 7570 7469 6f6e 0a20 202d 206c 6f77 5f63 uption. - low_c │ │ │ +001f40a0: 6f6d 706c 6578 6974 790a 2020 2d20 6d65 omplexity. - me │ │ │ +001f40b0: 6469 756d 5f73 6576 6572 6974 790a 2020 dium_severity. │ │ │ +001f40c0: 2d20 6d6f 756e 745f 6f70 7469 6f6e 5f76 - mount_option_v │ │ │ +001f40d0: 6172 5f6c 6f67 5f6e 6f73 7569 640a 2020 ar_log_nosuid. │ │ │ +001f40e0: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564 - no_reboot_need │ │ │ +001f40f0: 6564 0a0a 2d20 6e61 6d65 3a20 2741 6464 ed..- name: 'Add │ │ │ +001f4100: 206e 6f73 7569 6420 4f70 7469 6f6e 2074 nosuid Option t │ │ │ +001f4110: 6f20 2f76 6172 2f6c 6f67 3a20 4966 202f o /var/log: If / │ │ │ +001f4120: 7661 722f 6c6f 6720 6e6f 7420 6d6f 756e var/log not moun │ │ │ +001f4130: 7465 642c 2063 7261 6674 206d 6f75 6e74 ted, craft mount │ │ │ +001f4140: 5f69 6e66 6f0a 2020 2020 6d61 6e75 616c _info. manual │ │ │ +001f4150: 6c79 270a 2020 7365 745f 6661 6374 3a0a ly'. set_fact:. │ │ │ +001f4160: 2020 2020 6d6f 756e 745f 696e 666f 3a20 mount_info: │ │ │ +001f4170: 277b 7b20 6d6f 756e 745f 696e 666f 7c64 '{{ mount_info|d │ │ │ +001f4180: 6566 6175 6c74 287b 7d29 7c63 6f6d 6269 efault({})|combi │ │ │ +001f4190: 6e65 287b 6974 656d 2e30 3a20 6974 656d ne({item.0: item │ │ │ +001f41a0: 2e31 7d29 207d 7d27 0a20 2077 6974 685f .1}) }}'. with_ │ │ │ +001f41b0: 746f 6765 7468 6572 3a0a 2020 2d20 2d20 together:. - - │ │ │ +001f41c0: 7461 7267 6574 0a20 2020 202d 2073 6f75 target. - sou │ │ │ +001f41d0: 7263 650a 2020 2020 2d20 6673 7479 7065 rce. - fstype │ │ │ +001f41e0: 0a20 2020 202d 206f 7074 696f 6e73 0a20 . - options. │ │ │ +001f41f0: 202d 202d 202f 7661 722f 6c6f 670a 2020 - - /var/log. │ │ │ +001f4200: 2020 2d20 2727 0a20 2020 202d 2027 270a - ''. - ''. │ │ │ +001f4210: 2020 2020 2d20 6465 6661 756c 7473 0a20 - defaults. │ │ │ +001f4220: 2077 6865 6e3a 0a20 202d 2028 206e 6f74 when:. - ( not │ │ │ +001f4230: 2028 2022 6b65 726e 656c 2220 696e 2061 ( "kernel" in a │ │ │ +001f4240: 6e73 6962 6c65 5f66 6163 7473 2e70 6163 nsible_facts.pac │ │ │ +001f4250: 6b61 6765 7320 616e 6420 2262 6f6f 7463 kages and "bootc │ │ │ +001f4260: 2220 696e 2061 6e73 6962 6c65 5f66 6163 " in ansible_fac │ │ │ +001f4270: 7473 2e70 6163 6b61 6765 730a 2020 2020 ts.packages. │ │ │ +001f4280: 616e 6420 6e6f 7420 226f 7065 6e73 6869 and not "openshi │ │ │ +001f4290: 6674 2d6b 7562 656c 6574 2220 696e 2061 ft-kubelet" in a │ │ │ +001f42a0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163 nsible_facts.pac │ │ │ +001f42b0: 6b61 6765 7320 616e 6420 226f 7374 7265 kages and "ostre │ │ │ +001f42c0: 6522 2069 6e20 616e 7369 626c 655f 7072 e" in ansible_pr │ │ │ +001f42d0: 6f63 5f63 6d64 6c69 6e65 0a20 2020 2029 oc_cmdline. ) │ │ │ +001f42e0: 2061 6e64 206e 6f74 2028 2061 6e73 6962 and not ( ansib │ │ │ +001f42f0: 6c65 5f76 6972 7475 616c 697a 6174 696f le_virtualizatio │ │ │ +001f4300: 6e5f 7479 7065 2069 6e20 5b22 646f 636b n_type in ["dock │ │ │ +001f4310: 6572 222c 2022 6c78 6322 2c20 226f 7065 er", "lxc", "ope │ │ │ +001f4320: 6e76 7a22 2c20 2270 6f64 6d61 6e22 2c0a nvz", "podman",. │ │ │ +001f4330: 2020 2020 2263 6f6e 7461 696e 6572 225d "container"] │ │ │ +001f4340: 2029 2029 0a20 202d 2027 222f 7661 722f ) ). - '"/var/ │ │ │ +001f4350: 6c6f 6722 2069 6e20 616e 7369 626c 655f log" in ansible_ │ │ │ +001f4360: 6d6f 756e 7473 207c 206d 6170 2861 7474 mounts | map(att │ │ │ +001f4370: 7269 6275 7465 3d22 6d6f 756e 7422 2920 ribute="mount") │ │ │ +001f4380: 7c20 6c69 7374 270a 2020 2d20 2822 2d2d | list'. - ("-- │ │ │ +001f4390: 6673 7461 6222 207c 206c 656e 6774 6820 fstab" | length │ │ │ +001f43a0: 3d3d 2030 290a 2020 2d20 6465 7669 6365 == 0). - device │ │ │ +001f43b0: 5f6e 616d 652e 7374 646f 7574 2069 7320 _name.stdout is │ │ │ +001f43c0: 6465 6669 6e65 6420 616e 6420 6465 7669 defined and devi │ │ │ +001f43d0: 6365 5f6e 616d 652e 7374 646f 7574 5f6c ce_name.stdout_l │ │ │ +001f43e0: 696e 6573 2069 7320 6465 6669 6e65 640a ines is defined. │ │ │ +001f43f0: 2020 2d20 2864 6576 6963 655f 6e61 6d65 - (device_name │ │ │ +001f4400: 2e73 7464 6f75 7420 7c20 6c65 6e67 7468 .stdout | length │ │ │ +001f4410: 203d 3d20 3029 0a20 2074 6167 733a 0a20 == 0). tags:. │ │ │ +001f4420: 202d 204e 4953 542d 3830 302d 3533 2d41 - NIST-800-53-A │ │ │ +001f4430: 432d 360a 2020 2d20 4e49 5354 2d38 3030 C-6. - NIST-800 │ │ │ +001f4440: 2d35 332d 4143 2d36 2831 290a 2020 2d20 -53-AC-6(1). - │ │ │ +001f4450: 4e49 5354 2d38 3030 2d35 332d 434d 2d36 NIST-800-53-CM-6 │ │ │ +001f4460: 2861 290a 2020 2d20 4e49 5354 2d38 3030 (a). - NIST-800 │ │ │ +001f4470: 2d35 332d 434d 2d37 2861 290a 2020 2d20 -53-CM-7(a). - │ │ │ +001f4480: 4e49 5354 2d38 3030 2d35 332d 434d 2d37 NIST-800-53-CM-7 │ │ │ +001f4490: 2862 290a 2020 2d20 4e49 5354 2d38 3030 (b). - NIST-800 │ │ │ +001f44a0: 2d35 332d 4d50 2d37 0a20 202d 2063 6f6e -53-MP-7. - con │ │ │ +001f44b0: 6669 6775 7265 5f73 7472 6174 6567 790a figure_strategy. │ │ │ +001f44c0: 2020 2d20 6869 6768 5f64 6973 7275 7074 - high_disrupt │ │ │ +001f44d0: 696f 6e0a 2020 2d20 6c6f 775f 636f 6d70 ion. - low_comp │ │ │ +001f44e0: 6c65 7869 7479 0a20 202d 206d 6564 6975 lexity. - mediu │ │ │ +001f44f0: 6d5f 7365 7665 7269 7479 0a20 202d 206d m_severity. - m │ │ │ +001f4500: 6f75 6e74 5f6f 7074 696f 6e5f 7661 725f ount_option_var_ │ │ │ +001f4510: 6c6f 675f 6e6f 7375 6964 0a20 202d 206e log_nosuid. - n │ │ │ +001f4520: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a o_reboot_needed. │ │ │ +001f4530: 0a2d 206e 616d 653a 2027 4164 6420 6e6f .- name: 'Add no │ │ │ +001f4540: 7375 6964 204f 7074 696f 6e20 746f 202f suid Option to / │ │ │ +001f4550: 7661 722f 6c6f 673a 204d 616b 6520 7375 var/log: Make su │ │ │ +001f4560: 7265 206e 6f73 7569 6420 6f70 7469 6f6e re nosuid option │ │ │ +001f4570: 2069 7320 7061 7274 206f 6620 7468 6520 is part of the │ │ │ +001f4580: 746f 0a20 2020 202f 7661 722f 6c6f 6720 to. /var/log │ │ │ +001f4590: 6f70 7469 6f6e 7327 0a20 2073 6574 5f66 options'. set_f │ │ │ +001f45a0: 6163 743a 0a20 2020 206d 6f75 6e74 5f69 act:. mount_i │ │ │ +001f45b0: 6e66 6f3a 2027 7b7b 206d 6f75 6e74 5f69 nfo: '{{ mount_i │ │ │ +001f45c0: 6e66 6f20 7c20 636f 6d62 696e 6528 207b nfo | combine( { │ │ │ +001f45d0: 2727 6f70 7469 6f6e 7327 273a 2727 2727 ''options'':'''' │ │ │ +001f45e0: 7e28 6d6f 756e 745f 696e 666f 2e6f 7074 ~(mount_info.opt │ │ │ +001f45f0: 696f 6e73 207c 0a20 2020 2020 2064 6566 ions |. def │ │ │ +001f4600: 6175 6c74 2827 2727 2729 297e 2827 272c ault(''''))~('', │ │ │ +001f4610: 2727 2069 6620 286d 6f75 6e74 5f69 6e66 '' if (mount_inf │ │ │ +001f4620: 6f2e 6f70 7469 6f6e 7320 7c20 6465 6661 o.options | defa │ │ │ +001f4630: 756c 7428 2727 2727 2929 2065 6c73 6520 ult('''')) else │ │ │ +001f4640: 2727 2727 297e 2727 6e6f 7375 6964 2727 '''')~''nosuid'' │ │ │ +001f4650: 0a20 2020 2020 207d 2920 7d7d 270a 2020 . }) }}'. │ │ │ +001f4660: 7768 656e 3a0a 2020 2d20 2820 6e6f 7420 when:. - ( not │ │ │ +001f4670: 2820 226b 6572 6e65 6c22 2069 6e20 616e ( "kernel" in an │ │ │ +001f4680: 7369 626c 655f 6661 6374 732e 7061 636b sible_facts.pack │ │ │ +001f4690: 6167 6573 2061 6e64 2022 626f 6f74 6322 ages and "bootc" │ │ │ +001f46a0: 2069 6e20 616e 7369 626c 655f 6661 6374 in ansible_fact │ │ │ +001f46b0: 732e 7061 636b 6167 6573 0a20 2020 2061 s.packages. a │ │ │ +001f46c0: 6e64 206e 6f74 2022 6f70 656e 7368 6966 nd not "openshif │ │ │ +001f46d0: 742d 6b75 6265 6c65 7422 2069 6e20 616e t-kubelet" in an │ │ │ +001f46e0: 7369 626c 655f 6661 6374 732e 7061 636b sible_facts.pack │ │ │ +001f46f0: 6167 6573 2061 6e64 2022 6f73 7472 6565 ages and "ostree │ │ │ +001f4700: 2220 696e 2061 6e73 6962 6c65 5f70 726f " in ansible_pro │ │ │ +001f4710: 635f 636d 646c 696e 650a 2020 2020 2920 c_cmdline. ) │ │ │ +001f4720: 616e 6420 6e6f 7420 2820 616e 7369 626c and not ( ansibl │ │ │ +001f4730: 655f 7669 7274 7561 6c69 7a61 7469 6f6e e_virtualization │ │ │ +001f4740: 5f74 7970 6520 696e 205b 2264 6f63 6b65 _type in ["docke │ │ │ +001f4750: 7222 2c20 226c 7863 222c 2022 6f70 656e r", "lxc", "open │ │ │ +001f4760: 767a 222c 2022 706f 646d 616e 222c 0a20 vz", "podman",. │ │ │ +001f4770: 2020 2022 636f 6e74 6169 6e65 7222 5d20 "container"] │ │ │ +001f4780: 2920 290a 2020 2d20 2722 2f76 6172 2f6c ) ). - '"/var/l │ │ │ +001f4790: 6f67 2220 696e 2061 6e73 6962 6c65 5f6d og" in ansible_m │ │ │ +001f47a0: 6f75 6e74 7320 7c20 6d61 7028 6174 7472 ounts | map(attr │ │ │ +001f47b0: 6962 7574 653d 226d 6f75 6e74 2229 207c ibute="mount") | │ │ │ +001f47c0: 206c 6973 7427 0a20 202d 206d 6f75 6e74 list'. - mount │ │ │ +001f47d0: 5f69 6e66 6f20 6973 2064 6566 696e 6564 _info is defined │ │ │ +001f47e0: 2061 6e64 2022 6e6f 7375 6964 2220 6e6f and "nosuid" no │ │ │ +001f47f0: 7420 696e 2028 6d6f 756e 745f 696e 666f t in (mount_info │ │ │ +001f4800: 2e6f 7074 696f 6e73 207c 2064 6566 6175 .options | defau │ │ │ +001f4810: 6c74 2827 2729 290a 2020 7461 6773 3a0a lt('')). tags:. │ │ │ +001f4820: 2020 2d20 4e49 5354 2d38 3030 2d35 332d - NIST-800-53- │ │ │ +001f4830: 4143 2d36 0a20 202d 204e 4953 542d 3830 AC-6. - NIST-80 │ │ │ +001f4840: 302d 3533 2d41 432d 3628 3129 0a20 202d 0-53-AC-6(1). - │ │ │ +001f4850: 204e 4953 542d 3830 302d 3533 2d43 4d2d NIST-800-53-CM- │ │ │ +001f4860: 3628 6129 0a20 202d 204e 4953 542d 3830 6(a). - NIST-80 │ │ │ +001f4870: 302d 3533 2d43 4d2d 3728 6129 0a20 202d 0-53-CM-7(a). - │ │ │ +001f4880: 204e 4953 542d 3830 302d 3533 2d43 4d2d NIST-800-53-CM- │ │ │ +001f4890: 3728 6229 0a20 202d 204e 4953 542d 3830 7(b). - NIST-80 │ │ │ +001f48a0: 302d 3533 2d4d 502d 370a 2020 2d20 636f 0-53-MP-7. - co │ │ │ +001f48b0: 6e66 6967 7572 655f 7374 7261 7465 6779 nfigure_strategy │ │ │ +001f48c0: 0a20 202d 2068 6967 685f 6469 7372 7570 . - high_disrup │ │ │ +001f48d0: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d tion. - low_com │ │ │ +001f48e0: 706c 6578 6974 790a 2020 2d20 6d65 6469 plexity. - medi │ │ │ +001f48f0: 756d 5f73 6576 6572 6974 790a 2020 2d20 um_severity. - │ │ │ +001f4900: 6d6f 756e 745f 6f70 7469 6f6e 5f76 6172 mount_option_var │ │ │ +001f4910: 5f6c 6f67 5f6e 6f73 7569 640a 2020 2d20 _log_nosuid. - │ │ │ +001f4920: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564 no_reboot_needed │ │ │ +001f4930: 0a0a 2d20 6e61 6d65 3a20 2741 6464 206e ..- name: 'Add n │ │ │ +001f4940: 6f73 7569 6420 4f70 7469 6f6e 2074 6f20 osuid Option to │ │ │ +001f4950: 2f76 6172 2f6c 6f67 3a20 456e 7375 7265 /var/log: Ensure │ │ │ +001f4960: 202f 7661 722f 6c6f 6720 6973 206d 6f75 /var/log is mou │ │ │ +001f4970: 6e74 6564 2077 6974 6820 6e6f 7375 6964 nted with nosuid │ │ │ +001f4980: 206f 7074 696f 6e27 0a20 2061 6e73 6962 option'. ansib │ │ │ +001f4990: 6c65 2e70 6f73 6978 2e6d 6f75 6e74 3a0a le.posix.mount:. │ │ │ +001f49a0: 2020 2020 7061 7468 3a20 2f76 6172 2f6c path: /var/l │ │ │ +001f49b0: 6f67 0a20 2020 2073 7263 3a20 277b 7b20 og. src: '{{ │ │ │ +001f49c0: 6d6f 756e 745f 696e 666f 2e73 6f75 7263 mount_info.sourc │ │ │ +001f49d0: 6520 7c20 6465 6661 756c 7428 2727 2727 e | default('''' │ │ │ +001f49e0: 2920 7d7d 270a 2020 2020 6f70 7473 3a20 ) }}'. opts: │ │ │ +001f49f0: 277b 7b20 6d6f 756e 745f 696e 666f 2e6f '{{ mount_info.o │ │ │ +001f4a00: 7074 696f 6e73 207c 2064 6566 6175 6c74 ptions | default │ │ │ +001f4a10: 2827 2727 2729 207d 7d27 0a20 2020 2073 ('''') }}'. s │ │ │ +001f4a20: 7461 7465 3a20 6d6f 756e 7465 640a 2020 tate: mounted. │ │ │ +001f4a30: 2020 6673 7479 7065 3a20 277b 7b20 6d6f fstype: '{{ mo │ │ │ +001f4a40: 756e 745f 696e 666f 2e66 7374 7970 6520 unt_info.fstype │ │ │ +001f4a50: 7c20 6465 6661 756c 7428 2727 2727 2920 | default('''') │ │ │ +001f4a60: 7d7d 270a 2020 7265 6769 7374 6572 3a20 }}'. register: │ │ │ +001f4a70: 6d6f 756e 745f 7265 7375 6c74 0a20 2066 mount_result. f │ │ │ +001f4a80: 6169 6c65 645f 7768 656e 3a0a 2020 2d20 ailed_when:. - │ │ │ +001f4a90: 6d6f 756e 745f 7265 7375 6c74 2069 7320 mount_result is │ │ │ +001f4aa0: 6661 696c 6564 0a20 202d 2027 2727 7461 failed. - '''ta │ │ │ +001f4ab0: 7267 6574 2069 7320 6275 7379 2727 206e rget is busy'' n │ │ │ +001f4ac0: 6f74 2069 6e20 286d 6f75 6e74 5f72 6573 ot in (mount_res │ │ │ +001f4ad0: 756c 742e 6d73 6720 7c20 6465 6661 756c ult.msg | defaul │ │ │ +001f4ae0: 7428 2727 2727 2929 270a 2020 2d20 2727 t(''''))'. - '' │ │ │ +001f4af0: 2761 6c72 6561 6479 206d 6f75 6e74 6564 'already mounted │ │ │ +001f4b00: 2727 206e 6f74 2069 6e20 286d 6f75 6e74 '' not in (mount │ │ │ +001f4b10: 5f72 6573 756c 742e 6d73 6720 7c20 6465 _result.msg | de │ │ │ +001f4b20: 6661 756c 7428 2727 2727 2929 270a 2020 fault(''''))'. │ │ │ +001f4b30: 7768 656e 3a0a 2020 2d20 2820 6e6f 7420 when:. - ( not │ │ │ +001f4b40: 2820 226b 6572 6e65 6c22 2069 6e20 616e ( "kernel" in an │ │ │ +001f4b50: 7369 626c 655f 6661 6374 732e 7061 636b sible_facts.pack │ │ │ +001f4b60: 6167 6573 2061 6e64 2022 626f 6f74 6322 ages and "bootc" │ │ │ +001f4b70: 2069 6e20 616e 7369 626c 655f 6661 6374 in ansible_fact │ │ │ +001f4b80: 732e 7061 636b 6167 6573 0a20 2020 2061 s.packages. a │ │ │ +001f4b90: 6e64 206e 6f74 2022 6f70 656e 7368 6966 nd not "openshif │ │ │ +001f4ba0: 742d 6b75 6265 6c65 7422 2069 6e20 616e t-kubelet" in an │ │ │ +001f4bb0: 7369 626c 655f 6661 6374 732e 7061 636b sible_facts.pack │ │ │ +001f4bc0: 6167 6573 2061 6e64 2022 6f73 7472 6565 ages and "ostree │ │ │ +001f4bd0: 2220 696e 2061 6e73 6962 6c65 5f70 726f " in ansible_pro │ │ │ +001f4be0: 635f 636d 646c 696e 650a 2020 2020 2920 c_cmdline. ) │ │ │ +001f4bf0: 616e 6420 6e6f 7420 2820 616e 7369 626c and not ( ansibl │ │ │ +001f4c00: 655f 7669 7274 7561 6c69 7a61 7469 6f6e e_virtualization │ │ │ +001f4c10: 5f74 7970 6520 696e 205b 2264 6f63 6b65 _type in ["docke │ │ │ +001f4c20: 7222 2c20 226c 7863 222c 2022 6f70 656e r", "lxc", "open │ │ │ +001f4c30: 767a 222c 2022 706f 646d 616e 222c 0a20 vz", "podman",. │ │ │ +001f4c40: 2020 2022 636f 6e74 6169 6e65 7222 5d20 "container"] │ │ │ +001f4c50: 2920 290a 2020 2d20 2722 2f76 6172 2f6c ) ). - '"/var/l │ │ │ +001f4c60: 6f67 2220 696e 2061 6e73 6962 6c65 5f6d og" in ansible_m │ │ │ +001f4c70: 6f75 6e74 7320 7c20 6d61 7028 6174 7472 ounts | map(attr │ │ │ +001f4c80: 6962 7574 653d 226d 6f75 6e74 2229 207c ibute="mount") | │ │ │ +001f4c90: 206c 6973 7427 0a20 202d 206d 6f75 6e74 list'. - mount │ │ │ +001f4ca0: 5f69 6e66 6f20 6973 2064 6566 696e 6564 _info is defined │ │ │ +001f4cb0: 0a20 202d 2028 6465 7669 6365 5f6e 616d . - (device_nam │ │ │ +001f4cc0: 652e 7374 646f 7574 2069 7320 6465 6669 e.stdout is defi │ │ │ +001f4cd0: 6e65 6420 616e 6420 2864 6576 6963 655f ned and (device_ │ │ │ +001f4ce0: 6e61 6d65 2e73 7464 6f75 7420 7c20 6c65 name.stdout | le │ │ │ +001f4cf0: 6e67 7468 2026 6774 3b20 3029 2920 6f72 ngth > 0)) or │ │ │ +001f4d00: 2028 222d 2d66 7374 6162 220a 2020 2020 ("--fstab". │ │ │ +001f4d10: 7c20 6c65 6e67 7468 203d 3d20 3029 0a20 | length == 0). │ │ │ +001f4d20: 2074 6167 733a 0a20 202d 204e 4953 542d tags:. - NIST- │ │ │ +001f4d30: 3830 302d 3533 2d41 432d 360a 2020 2d20 800-53-AC-6. - │ │ │ +001f4d40: 4e49 5354 2d38 3030 2d35 332d 4143 2d36 NIST-800-53-AC-6 │ │ │ +001f4d50: 2831 290a 2020 2d20 4e49 5354 2d38 3030 (1). - NIST-800 │ │ │ +001f4d60: 2d35 332d 434d 2d36 2861 290a 2020 2d20 -53-CM-6(a). - │ │ │ +001f4d70: 4e49 5354 2d38 3030 2d35 332d 434d 2d37 NIST-800-53-CM-7 │ │ │ +001f4d80: 2861 290a 2020 2d20 4e49 5354 2d38 3030 (a). - NIST-800 │ │ │ +001f4d90: 2d35 332d 434d 2d37 2862 290a 2020 2d20 -53-CM-7(b). - │ │ │ +001f4da0: 4e49 5354 2d38 3030 2d35 332d 4d50 2d37 NIST-800-53-MP-7 │ │ │ +001f4db0: 0a20 202d 2063 6f6e 6669 6775 7265 5f73 . - configure_s │ │ │ +001f4dc0: 7472 6174 6567 790a 2020 2d20 6869 6768 trategy. - high │ │ │ +001f4dd0: 5f64 6973 7275 7074 696f 6e0a 2020 2d20 _disruption. - │ │ │ +001f4de0: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20 low_complexity. │ │ │ +001f4df0: 202d 206d 6564 6975 6d5f 7365 7665 7269 - medium_severi │ │ │ +001f4e00: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074 ty. - mount_opt │ │ │ +001f4e10: 696f 6e5f 7661 725f 6c6f 675f 6e6f 7375 ion_var_log_nosu │ │ │ +001f4e20: 6964 0a20 202d 206e 6f5f 7265 626f 6f74 id. - no_reboot │ │ │ +001f4e30: 5f6e 6565 6465 640a 3c2f 636f 6465 3e3c _needed.< │ │ │ +001f4e40: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c /pre>
Remediat │ │ │ +001f4ef0: 696f 6e20 5368 656c 6c20 7363 7269 7074 ion Shell script │ │ │ +001f4f00: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Reboot:false │ │ │ +001f4fa0: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072 # Remedi │ │ │ +001f4fc0: 6174 696f 6e20 6973 2061 7070 6c69 6361 ation is applica │ │ │ +001f4fd0: 626c 6520 6f6e 6c79 2069 6e20 6365 7274 ble only in cert │ │ │ +001f4fe0: 6169 6e20 706c 6174 666f 726d 730a 6966 ain platforms.if │ │ │ +001f4ff0: 2028 2021 2028 207b 2072 706d 202d 2d71 ( ! ( { rpm --q │ │ │ +001f5000: 7569 6574 202d 7120 6b65 726e 656c 203b uiet -q kernel ; │ │ │ +001f5010: 7d20 2661 6d70 3b26 616d 703b 207b 2072 } && { r │ │ │ +001f5020: 706d 202d 2d71 7569 6574 202d 7120 626f pm --quiet -q bo │ │ │ +001f5030: 6f74 6320 3b7d 2026 616d 703b 2661 6d70 otc ;} && │ │ │ +001f5040: 3b20 7b20 2120 7270 6d20 2d2d 7175 6965 ; { ! rpm --quie │ │ │ +001f5050: 7420 2d71 206f 7065 6e73 6869 6674 2d6b t -q openshift-k │ │ │ +001f5060: 7562 656c 6574 203b 7d20 2661 6d70 3b26 ubelet ;} && │ │ │ +001f5070: 616d 703b 2028 5b20 2d66 202f 7275 6e2f amp; ([ -f /run/ │ │ │ +001f5080: 6f73 7472 6565 2d62 6f6f 7465 6420 5d20 ostree-booted ] │ │ │ +001f5090: 7c7c 205b 202d 4c20 2f6f 7374 7265 6520 || [ -L /ostree │ │ │ +001f50a0: 5d29 2029 2026 616d 703b 2661 6d70 3b20 ]) ) && │ │ │ +001f50b0: 2120 2820 5b20 2d66 202f 2e64 6f63 6b65 ! ( [ -f /.docke │ │ │ +001f50c0: 7265 6e76 205d 207c 7c20 5b20 2d66 202f renv ] || [ -f / │ │ │ +001f50d0: 7275 6e2f 2e63 6f6e 7461 696e 6572 656e run/.containeren │ │ │ +001f50e0: 7620 5d20 2920 2920 2661 6d70 3b26 616d v ] ) ) &&am │ │ │ +001f50f0: 703b 207b 2028 2066 696e 646d 6e74 202d p; { ( findmnt - │ │ │ +001f5100: 2d6b 6572 6e65 6c20 222f 7661 722f 6c6f -kernel "/var/lo │ │ │ +001f5110: 6722 2026 6774 3b20 2f64 6576 2f6e 756c g" > /dev/nul │ │ │ +001f5120: 6c20 7c7c 2066 696e 646d 6e74 202d 2d66 l || findmnt --f │ │ │ +001f5130: 7374 6162 2022 2f76 6172 2f6c 6f67 2220 stab "/var/log" │ │ │ +001f5140: 2667 743b 202f 6465 762f 6e75 6c6c 2029 > /dev/null ) │ │ │ +001f5150: 3b20 7d3b 2074 6865 6e0a 0a66 756e 6374 ; }; then..funct │ │ │ +001f5160: 696f 6e20 7065 7266 6f72 6d5f 7265 6d65 ion perform_reme │ │ │ +001f5170: 6469 6174 696f 6e20 7b0a 0a20 2020 200a diation {.. . │ │ │ +001f5180: 2020 2020 2020 2020 2320 7468 6520 6d6f # the mo │ │ │ +001f5190: 756e 7420 706f 696e 7420 2f76 6172 2f6c unt point /var/l │ │ │ +001f51a0: 6f67 2068 6173 2074 6f20 6265 2064 6566 og has to be def │ │ │ +001f51b0: 696e 6564 2069 6e20 2f65 7463 2f66 7374 ined in /etc/fst │ │ │ +001f51c0: 6162 0a20 2020 2020 2020 2023 2062 6566 ab. # bef │ │ │ +001f51d0: 6f72 6520 7468 6973 2072 656d 6564 6961 ore this remedia │ │ │ +001f51e0: 7469 6f6e 2063 616e 2062 6520 6578 6563 tion can be exec │ │ │ +001f51f0: 7574 6564 2e20 496e 2063 6173 6520 6974 uted. In case it │ │ │ +001f5200: 2069 7320 6e6f 7420 6465 6669 6e65 642c is not defined, │ │ │ +001f5210: 2074 6865 0a20 2020 2020 2020 2023 2072 the. # r │ │ │ +001f5220: 656d 6564 6961 7469 6f6e 2061 626f 7274 emediation abort │ │ │ +001f5230: 7320 616e 6420 6e6f 2063 6861 6e67 6573 s and no changes │ │ │ +001f5240: 2072 6567 6172 6469 6e67 2074 6865 206d regarding the m │ │ │ +001f5250: 6f75 6e74 2070 6f69 6e74 2061 7265 2064 ount point are d │ │ │ +001f5260: 6f6e 652e 0a20 2020 2020 2020 206d 6f75 one.. mou │ │ │ +001f5270: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72 nt_point_match_r │ │ │ +001f5280: 6567 6578 703d 2224 2870 7269 6e74 6620 egexp="$(printf │ │ │ +001f5290: 225e 5b5b 3a73 7061 6365 3a5d 5d2a 5b5e "^[[:space:]]*[^ │ │ │ +001f52a0: 235d 2e2a 5b5b 3a73 7061 6365 3a5d 5d25 #].*[[:space:]]% │ │ │ +001f52b0: 735b 5b3a 7370 6163 653a 5d5d 2220 222f s[[:space:]]" "/ │ │ │ +001f52c0: 7661 722f 6c6f 6722 2922 0a0a 2020 2020 var/log")".. │ │ │ +001f52d0: 6772 6570 2022 246d 6f75 6e74 5f70 6f69 grep "$mount_poi │ │ │ +001f52e0: 6e74 5f6d 6174 6368 5f72 6567 6578 7022 nt_match_regexp" │ │ │ +001f52f0: 202d 7120 2f65 7463 2f66 7374 6162 205c -q /etc/fstab \ │ │ │ +001f5300: 0a20 2020 2020 2020 207c 7c20 7b20 6563 . || { ec │ │ │ +001f5310: 686f 2022 5468 6520 6d6f 756e 7420 706f ho "The mount po │ │ │ +001f5320: 696e 7420 272f 7661 722f 6c6f 6727 2069 int '/var/log' i │ │ │ +001f5330: 7320 6e6f 7420 6576 656e 2069 6e20 2f65 s not even in /e │ │ │ +001f5340: 7463 2f66 7374 6162 2c20 736f 2077 6520 tc/fstab, so we │ │ │ +001f5350: 6361 6e27 7420 7365 7420 7570 206d 6f75 can't set up mou │ │ │ +001f5360: 6e74 206f 7074 696f 6e73 2220 2667 743b nt options" > │ │ │ +001f5370: 2661 6d70 3b32 3b0a 2020 2020 2020 2020 &2;. │ │ │ +001f5380: 2020 2020 2020 2020 6563 686f 2022 4e6f echo "No │ │ │ +001f5390: 7420 7265 6d65 6469 6174 696e 672c 2062 t remediating, b │ │ │ +001f53a0: 6563 6175 7365 2074 6865 7265 2069 7320 ecause there is │ │ │ +001f53b0: 6e6f 2072 6563 6f72 6420 6f66 202f 7661 no record of /va │ │ │ +001f53c0: 722f 6c6f 6720 696e 202f 6574 632f 6673 r/log in /etc/fs │ │ │ +001f53d0: 7461 6222 2026 6774 3b26 616d 703b 323b tab" >&2; │ │ │ +001f53e0: 2072 6574 7572 6e20 313b 207d 0a20 2020 return 1; }. │ │ │ +001f53f0: 200a 0a0a 2020 2020 6d6f 756e 745f 706f ... mount_po │ │ │ +001f5400: 696e 745f 6d61 7463 685f 7265 6765 7870 int_match_regexp │ │ │ +001f5410: 3d22 2428 7072 696e 7466 2022 5e5b 5b3a ="$(printf "^[[: │ │ │ +001f5420: 7370 6163 653a 5d5d 2a5b 5e23 5d2e 2a5b space:]]*[^#].*[ │ │ │ +001f5430: 5b3a 7370 6163 653a 5d5d 2573 5b5b 3a73 [:space:]]%s[[:s │ │ │ +001f5440: 7061 6365 3a5d 5d22 202f 7661 722f 6c6f pace:]]" /var/lo │ │ │ +001f5450: 6729 220a 0a20 2020 2023 2049 6620 7468 g)".. # If th │ │ │ +001f5460: 6520 6d6f 756e 7420 706f 696e 7420 6973 e mount point is │ │ │ +001f5470: 206e 6f74 2069 6e20 2f65 7463 2f66 7374 not in /etc/fst │ │ │ +001f5480: 6162 2c20 6765 7420 7072 6576 696f 7573 ab, get previous │ │ │ +001f5490: 206d 6f75 6e74 206f 7074 696f 6e73 2066 mount options f │ │ │ +001f54a0: 726f 6d20 2f65 7463 2f6d 7461 620a 2020 rom /etc/mtab. │ │ │ +001f54b0: 2020 6966 2021 2067 7265 7020 2d71 2022 if ! grep -q " │ │ │ +001f54c0: 246d 6f75 6e74 5f70 6f69 6e74 5f6d 6174 $mount_point_mat │ │ │ +001f54d0: 6368 5f72 6567 6578 7022 202f 6574 632f ch_regexp" /etc/ │ │ │ +001f54e0: 6673 7461 623b 2074 6865 6e0a 2020 2020 fstab; then. │ │ │ +001f54f0: 2020 2020 2320 7275 6e74 696d 6520 6f70 # runtime op │ │ │ +001f5500: 7473 2077 6974 686f 7574 2073 6f6d 6520 ts without some │ │ │ +001f5510: 6175 746f 6d61 7469 6320 6b65 726e 656c automatic kernel │ │ │ +001f5520: 2f75 7365 7273 7061 6365 2d61 6464 6564 /userspace-added │ │ │ +001f5530: 2064 6566 6175 6c74 730a 2020 2020 2020 defaults. │ │ │ +001f5540: 2020 7072 6576 696f 7573 5f6d 6f75 6e74 previous_mount │ │ │ +001f5550: 5f6f 7074 733d 2428 6772 6570 2022 246d _opts=$(grep "$m │ │ │ +001f5560: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368 ount_point_match │ │ │ +001f5570: 5f72 6567 6578 7022 202f 6574 632f 6d74 _regexp" /etc/mt │ │ │ +001f5580: 6162 207c 2068 6561 6420 2d31 207c 2020 ab | head -1 | │ │ │ +001f5590: 6177 6b20 277b 7072 696e 7420 2434 7d27 awk '{print $4}' │ │ │ +001f55a0: 205c 0a20 2020 2020 2020 2020 2020 2020 \. │ │ │ +001f55b0: 2020 2020 2020 207c 2073 6564 202d 4520 | sed -E │ │ │ +001f55c0: 2273 2f28 7277 7c64 6566 6175 6c74 737c "s/(rw|defaults| │ │ │ +001f55d0: 7365 636c 6162 656c 7c6e 6f73 7569 6429 seclabel|nosuid) │ │ │ +001f55e0: 282c 7c24 292f 2f67 3b73 2f2c 242f 2f22 (,|$)//g;s/,$//" │ │ │ +001f55f0: 290a 2020 2020 2020 2020 5b20 2224 7072 ). [ "$pr │ │ │ +001f5600: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074 evious_mount_opt │ │ │ +001f5610: 7322 205d 2026 616d 703b 2661 6d70 3b20 s" ] && │ │ │ +001f5620: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f previous_mount_o │ │ │ +001f5630: 7074 732b 3d22 2c22 0a20 2020 2020 2020 pts+=",". │ │ │ +001f5640: 2023 2049 6e20 6973 6f39 3636 3020 6669 # In iso9660 fi │ │ │ +001f5650: 6c65 7379 7374 656d 7320 6d74 6162 2063 lesystems mtab c │ │ │ +001f5660: 6f75 6c64 2064 6573 6372 6962 6520 6120 ould describe a │ │ │ +001f5670: 2262 6c6f 636b 7369 7a65 2220 7661 6c75 "blocksize" valu │ │ │ +001f5680: 652c 2074 6869 7320 7368 6f75 6c64 2062 e, this should b │ │ │ +001f5690: 6520 7265 666c 6563 7465 6420 696e 0a20 e reflected in. │ │ │ +001f56a0: 2020 2020 2020 2023 2066 7374 6162 2061 # fstab a │ │ │ +001f56b0: 7320 2262 6c6f 636b 222e 2020 5468 6520 s "block". The │ │ │ +001f56c0: 6e65 7874 2076 6172 6961 626c 6520 6973 next variable is │ │ │ +001f56d0: 2074 6f20 7361 7469 7366 7920 7368 656c to satisfy shel │ │ │ +001f56e0: 6c63 6865 636b 2053 4332 3035 302e 0a20 lcheck SC2050.. │ │ │ +001f56f0: 2020 2020 2020 2066 735f 7479 7065 3d22 fs_type=" │ │ │ +001f5700: 220a 2020 2020 2020 2020 6966 205b 2020 ". if [ │ │ │ +001f5710: 2224 6673 5f74 7970 6522 203d 3d20 2269 "$fs_type" == "i │ │ │ +001f5720: 736f 3936 3630 2220 5d20 3b20 7468 656e so9660" ] ; then │ │ │ +001f5730: 0a20 2020 2020 2020 2020 2020 2070 7265 . pre │ │ │ +001f5740: 7669 6f75 735f 6d6f 756e 745f 6f70 7473 vious_mount_opts │ │ │ +001f5750: 3d24 2873 6564 2027 732f 626c 6f63 6b73 =$(sed 's/blocks │ │ │ +001f5760: 697a 653d 2f62 6c6f 636b 3d2f 2720 266c ize=/block=/' &l │ │ │ +001f5770: 743b 266c 743b 266c 743b 2022 2470 7265 t;<< "$pre │ │ │ +001f5780: 7669 6f75 735f 6d6f 756e 745f 6f70 7473 vious_mount_opts │ │ │ +001f5790: 2229 0a20 2020 2020 2020 2066 690a 2020 "). fi. │ │ │ +001f57a0: 2020 2020 2020 6563 686f 2022 202f 7661 echo " /va │ │ │ +001f57b0: 722f 6c6f 6720 2064 6566 6175 6c74 732c r/log defaults, │ │ │ +001f57c0: 247b 7072 6576 696f 7573 5f6d 6f75 6e74 ${previous_mount │ │ │ +001f57d0: 5f6f 7074 737d 6e6f 7375 6964 2030 2030 _opts}nosuid 0 0 │ │ │ +001f57e0: 2220 2667 743b 2667 743b 202f 6574 632f " >> /etc/ │ │ │ +001f57f0: 6673 7461 620a 2020 2020 2320 4966 2074 fstab. # If t │ │ │ +001f5800: 6865 206d 6f75 6e74 5f6f 7074 206f 7074 he mount_opt opt │ │ │ +001f5810: 696f 6e20 6973 206e 6f74 2061 6c72 6561 ion is not alrea │ │ │ +001f5820: 6479 2069 6e20 7468 6520 6d6f 756e 7420 dy in the mount │ │ │ +001f5830: 706f 696e 7427 7320 2f65 7463 2f66 7374 point's /etc/fst │ │ │ +001f5840: 6162 2065 6e74 7279 2c20 6164 6420 6974 ab entry, add it │ │ │ +001f5850: 0a20 2020 2065 6c69 6620 2120 6772 6570 . elif ! grep │ │ │ +001f5860: 2022 246d 6f75 6e74 5f70 6f69 6e74 5f6d "$mount_point_m │ │ │ +001f5870: 6174 6368 5f72 6567 6578 7022 202f 6574 atch_regexp" /et │ │ │ +001f5880: 632f 6673 7461 6220 7c20 6772 6570 202d c/fstab | grep - │ │ │ +001f5890: 7120 226e 6f73 7569 6422 3b20 7468 656e q "nosuid"; then │ │ │ +001f58a0: 0a20 2020 2020 2020 2070 7265 7669 6f75 . previou │ │ │ +001f58b0: 735f 6d6f 756e 745f 6f70 7473 3d24 2867 s_mount_opts=$(g │ │ │ +001f58c0: 7265 7020 2224 6d6f 756e 745f 706f 696e rep "$mount_poin │ │ │ +001f58d0: 745f 6d61 7463 685f 7265 6765 7870 2220 t_match_regexp" │ │ │ +001f58e0: 2f65 7463 2f66 7374 6162 207c 2061 776b /etc/fstab | awk │ │ │ +001f58f0: 2027 7b70 7269 6e74 2024 347d 2729 0a20 '{print $4}'). │ │ │ +001f5900: 2020 2020 2020 2073 6564 202d 6920 2273 sed -i "s │ │ │ +001f5910: 7c5c 2824 7b6d 6f75 6e74 5f70 6f69 6e74 |\(${mount_point │ │ │ +001f5920: 5f6d 6174 6368 5f72 6567 6578 707d 2e2a _match_regexp}.* │ │ │ +001f5930: 247b 7072 6576 696f 7573 5f6d 6f75 6e74 ${previous_mount │ │ │ +001f5940: 5f6f 7074 737d 5c29 7c5c 312c 6e6f 7375 _opts}\)|\1,nosu │ │ │ +001f5950: 6964 7c22 202f 6574 632f 6673 7461 620a id|" /etc/fstab. │ │ │ +001f5960: 2020 2020 6669 0a0a 0a20 2020 2069 6620 fi... if │ │ │ +001f5970: 6d6b 6469 7220 2d70 2022 2f76 6172 2f6c mkdir -p "/var/l │ │ │ +001f5980: 6f67 223b 2074 6865 6e0a 2020 2020 2020 og"; then. │ │ │ +001f5990: 2020 6966 206d 6f75 6e74 706f 696e 7420 if mountpoint │ │ │ +001f59a0: 2d71 2022 2f76 6172 2f6c 6f67 223b 2074 -q "/var/log"; t │ │ │ +001f59b0: 6865 6e0a 2020 2020 2020 2020 2020 2020 hen. │ │ │ +001f59c0: 6d6f 756e 7420 2d6f 2072 656d 6f75 6e74 mount -o remount │ │ │ +001f59d0: 202d 2d74 6172 6765 7420 222f 7661 722f --target "/var/ │ │ │ +001f59e0: 6c6f 6722 0a20 2020 2020 2020 2066 690a log". fi. │ │ │ +001f59f0: 2020 2020 6669 0a7d 0a0a 7065 7266 6f72 fi.}..perfor │ │ │ +001f5a00: 6d5f 7265 6d65 6469 6174 696f 6e0a 0a65 m_remediation..e │ │ │ +001f5a10: 6c73 650a 2020 2020 2667 743b 2661 6d70 lse. >& │ │ │ +001f5a20: 3b32 2065 6368 6f20 2752 656d 6564 6961 ;2 echo 'Remedia │ │ │ +001f5a30: 7469 6f6e 2069 7320 6e6f 7420 6170 706c tion is not appl │ │ │ +001f5a40: 6963 6162 6c65 2c20 6e6f 7468 696e 6720 icable, nothing │ │ │ +001f5a50: 7761 7320 646f 6e65 270a 6669 0a3c 2f63 was done'.fi.
│ │ │ +001f5a70: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ +001f5b10: 6564 6961 7469 6f6e 2041 6e61 636f 6e64 ediation Anacond │ │ │ +001f5b20: 6120 736e 6970 7065 7420 e287 b23c 2f61 a snippet ...
< │ │ │ +001f5bc0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +001f5bd0: 3c74 723e 3c74 683e 4469 7372 7570 7469 Reboot:false
.p
│ │ │ +001f5c60: 6172 7420 2f76 6172 2f6c 6f67 202d 2d6d  art /var/log --m
│ │ │ +001f5c70: 6f75 6e74 6f70 7469 6f6e 733d 226e 6f73  ountoptions="nos
│ │ │ +001f5c80: 7569 6422 0a3c 2f63 6f64 653e 3c2f 7072  uid".
│ │ │ 001f5cb0: 3c2f 7461 626c 653e 3c2f 7464 3e3c 2f74
C │ │ │ +001f5bb0: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ +001f5be0: 6f6e 3a3c 2f74 683e 3c74 643e 6869 6768 on:high │ │ │ +001f5bf0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +001f5c30: 793a 3c2f 7468 3e3c 7464 3e65 6e61 626c y:enabl │ │ │ +001f5c40: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
Remediation An │ │ │ -001f6530: 6163 6f6e 6461 2073 6e69 7070 6574 20e2 aconda snippet . │ │ │ -001f6540: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ -001f65c0: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -001f65e0: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 < │ │ │ -001f6610: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr> │ │ │ -001f6660: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ -001f65d0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ -001f65f0: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:high
Reboot:false
St │ │ │ -001f6640: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ -001f6650: 656e 6162 6c65 3c2f 7464 3e3c 2f74 723e enable
.part /var --
│ │ │ -001f6680: 6d6f 756e 746f 7074 696f 6e73 3d22 6e6f  mountoptions="no
│ │ │ -001f6690: 6578 6563 220a 3c2f 636f 6465 3e3c 2f70  exec".

Remediatio │ │ │ -001f6750: 6e20 416e 7369 626c 6520 736e 6970 7065 n Ansible snippe │ │ │ -001f6760: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ -001f67e0: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ -001f67f0: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ -001f6810: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ -001f6820: 3c74 643e 6869 6768 3c2f 7464 3e3c 2f74 highReboot │ │ │ -001f6840: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -001f6850: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ -001f6870: 7464 3e63 6f6e 6669 6775 7265 3c2f 7464 td>configure

- name: │ │ │ -001f68a0: 2047 6174 6865 7220 7468 6520 7061 636b Gather the pack │ │ │ -001f68b0: 6167 6520 6661 6374 730a 2020 7061 636b age facts. pack │ │ │ -001f68c0: 6167 655f 6661 6374 733a 0a20 2020 206d age_facts:. m │ │ │ -001f68d0: 616e 6167 6572 3a20 6175 746f 0a20 2074 anager: auto. t │ │ │ -001f68e0: 6167 733a 0a20 202d 2063 6f6e 6669 6775 ags:. - configu │ │ │ -001f68f0: 7265 5f73 7472 6174 6567 790a 2020 2d20 re_strategy. - │ │ │ -001f6900: 6869 6768 5f64 6973 7275 7074 696f 6e0a high_disruption. │ │ │ -001f6910: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869 - low_complexi │ │ │ -001f6920: 7479 0a20 202d 206d 6564 6975 6d5f 7365 ty. - medium_se │ │ │ -001f6930: 7665 7269 7479 0a20 202d 206d 6f75 6e74 verity. - mount │ │ │ -001f6940: 5f6f 7074 696f 6e5f 7661 725f 6e6f 6578 _option_var_noex │ │ │ -001f6950: 6563 0a20 202d 206e 6f5f 7265 626f 6f74 ec. - no_reboot │ │ │ -001f6960: 5f6e 6565 6465 640a 0a2d 206e 616d 653a _needed..- name: │ │ │ -001f6970: 2027 4164 6420 6e6f 6578 6563 204f 7074 'Add noexec Opt │ │ │ -001f6980: 696f 6e20 746f 202f 7661 723a 2043 6865 ion to /var: Che │ │ │ -001f6990: 636b 2069 6e66 6f72 6d61 7469 6f6e 2061 ck information a │ │ │ -001f69a0: 7373 6f63 6961 7465 6420 746f 206d 6f75 ssociated to mou │ │ │ -001f69b0: 6e74 706f 696e 7427 0a20 2061 6e73 6962 ntpoint'. ansib │ │ │ -001f69c0: 6c65 2e62 7569 6c74 696e 2e63 6f6d 6d61 le.builtin.comma │ │ │ -001f69d0: 6e64 3a20 6669 6e64 6d6e 7420 2d2d 6673 nd: findmnt --fs │ │ │ -001f69e0: 7461 6220 272f 7661 7227 0a20 2072 6567 tab '/var'. reg │ │ │ -001f69f0: 6973 7465 723a 2064 6576 6963 655f 6e61 ister: device_na │ │ │ -001f6a00: 6d65 0a20 2066 6169 6c65 645f 7768 656e me. failed_when │ │ │ -001f6a10: 3a20 6465 7669 6365 5f6e 616d 652e 7263 : device_name.rc │ │ │ -001f6a20: 2026 6774 3b20 310a 2020 6368 616e 6765 > 1. change │ │ │ -001f6a30: 645f 7768 656e 3a20 6661 6c73 650a 2020 d_when: false. │ │ │ -001f6a40: 6368 6563 6b5f 6d6f 6465 3a20 6661 6c73 check_mode: fals │ │ │ -001f6a50: 650a 2020 7768 656e 3a0a 2020 2d20 2820 e. when:. - ( │ │ │ -001f6a60: 6e6f 7420 2820 226b 6572 6e65 6c22 2069 not ( "kernel" i │ │ │ -001f6a70: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ -001f6a80: 7061 636b 6167 6573 2061 6e64 2022 626f packages and "bo │ │ │ -001f6a90: 6f74 6322 2069 6e20 616e 7369 626c 655f otc" in ansible_ │ │ │ -001f6aa0: 6661 6374 732e 7061 636b 6167 6573 0a20 facts.packages. │ │ │ -001f6ab0: 2020 2061 6e64 206e 6f74 2022 6f70 656e and not "open │ │ │ -001f6ac0: 7368 6966 742d 6b75 6265 6c65 7422 2069 shift-kubelet" i │ │ │ -001f6ad0: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ -001f6ae0: 7061 636b 6167 6573 2061 6e64 2022 6f73 packages and "os │ │ │ -001f6af0: 7472 6565 2220 696e 2061 6e73 6962 6c65 tree" in ansible │ │ │ -001f6b00: 5f70 726f 635f 636d 646c 696e 650a 2020 _proc_cmdline. │ │ │ -001f6b10: 2020 2920 616e 6420 6e6f 7420 2820 616e ) and not ( an │ │ │ -001f6b20: 7369 626c 655f 7669 7274 7561 6c69 7a61 sible_virtualiza │ │ │ -001f6b30: 7469 6f6e 5f74 7970 6520 696e 205b 2264 tion_type in ["d │ │ │ -001f6b40: 6f63 6b65 7222 2c20 226c 7863 222c 2022 ocker", "lxc", " │ │ │ -001f6b50: 6f70 656e 767a 222c 2022 706f 646d 616e openvz", "podman │ │ │ -001f6b60: 222c 0a20 2020 2022 636f 6e74 6169 6e65 ",. "containe │ │ │ -001f6b70: 7222 5d20 2920 290a 2020 2d20 2722 2f76 r"] ) ). - '"/v │ │ │ -001f6b80: 6172 2220 696e 2061 6e73 6962 6c65 5f6d ar" in ansible_m │ │ │ -001f6b90: 6f75 6e74 7320 7c20 6d61 7028 6174 7472 ounts | map(attr │ │ │ -001f6ba0: 6962 7574 653d 226d 6f75 6e74 2229 207c ibute="mount") | │ │ │ -001f6bb0: 206c 6973 7427 0a20 2074 6167 733a 0a20 list'. tags:. │ │ │ -001f6bc0: 202d 2063 6f6e 6669 6775 7265 5f73 7472 - configure_str │ │ │ -001f6bd0: 6174 6567 790a 2020 2d20 6869 6768 5f64 ategy. - high_d │ │ │ -001f6be0: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f isruption. - lo │ │ │ -001f6bf0: 775f 636f 6d70 6c65 7869 7479 0a20 202d w_complexity. - │ │ │ -001f6c00: 206d 6564 6975 6d5f 7365 7665 7269 7479 medium_severity │ │ │ -001f6c10: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f . - mount_optio │ │ │ -001f6c20: 6e5f 7661 725f 6e6f 6578 6563 0a20 202d n_var_noexec. - │ │ │ -001f6c30: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465 no_reboot_neede │ │ │ -001f6c40: 640a 0a2d 206e 616d 653a 2027 4164 6420 d..- name: 'Add │ │ │ -001f6c50: 6e6f 6578 6563 204f 7074 696f 6e20 746f noexec Option to │ │ │ -001f6c60: 202f 7661 723a 2043 7265 6174 6520 6d6f /var: Create mo │ │ │ -001f6c70: 756e 745f 696e 666f 2064 6963 7469 6f6e unt_info diction │ │ │ -001f6c80: 6172 7920 7661 7269 6162 6c65 270a 2020 ary variable'. │ │ │ -001f6c90: 7365 745f 6661 6374 3a0a 2020 2020 6d6f set_fact:. mo │ │ │ -001f6ca0: 756e 745f 696e 666f 3a20 277b 7b20 6d6f unt_info: '{{ mo │ │ │ -001f6cb0: 756e 745f 696e 666f 7c64 6566 6175 6c74 unt_info|default │ │ │ -001f6cc0: 287b 7d29 7c63 6f6d 6269 6e65 287b 6974 ({})|combine({it │ │ │ -001f6cd0: 656d 2e30 3a20 6974 656d 2e31 7d29 207d em.0: item.1}) } │ │ │ -001f6ce0: 7d27 0a20 2077 6974 685f 746f 6765 7468 }'. with_togeth │ │ │ -001f6cf0: 6572 3a0a 2020 2d20 277b 7b20 6465 7669 er:. - '{{ devi │ │ │ -001f6d00: 6365 5f6e 616d 652e 7374 646f 7574 5f6c ce_name.stdout_l │ │ │ -001f6d10: 696e 6573 5b30 5d2e 7370 6c69 7428 2920 ines[0].split() │ │ │ -001f6d20: 7c20 6d61 7028 2727 6c6f 7765 7227 2729 | map(''lower'') │ │ │ -001f6d30: 207c 206c 6973 7420 7d7d 270a 2020 2d20 | list }}'. - │ │ │ -001f6d40: 277b 7b20 6465 7669 6365 5f6e 616d 652e '{{ device_name. │ │ │ -001f6d50: 7374 646f 7574 5f6c 696e 6573 5b31 5d2e stdout_lines[1]. │ │ │ -001f6d60: 7370 6c69 7428 2920 7c20 6c69 7374 207d split() | list } │ │ │ -001f6d70: 7d27 0a20 2077 6865 6e3a 0a20 202d 2028 }'. when:. - ( │ │ │ -001f6d80: 206e 6f74 2028 2022 6b65 726e 656c 2220 not ( "kernel" │ │ │ -001f6d90: 696e 2061 6e73 6962 6c65 5f66 6163 7473 in ansible_facts │ │ │ -001f6da0: 2e70 6163 6b61 6765 7320 616e 6420 2262 .packages and "b │ │ │ -001f6db0: 6f6f 7463 2220 696e 2061 6e73 6962 6c65 ootc" in ansible │ │ │ -001f6dc0: 5f66 6163 7473 2e70 6163 6b61 6765 730a _facts.packages. │ │ │ -001f6dd0: 2020 2020 616e 6420 6e6f 7420 226f 7065 and not "ope │ │ │ -001f6de0: 6e73 6869 6674 2d6b 7562 656c 6574 2220 nshift-kubelet" │ │ │ -001f6df0: 696e 2061 6e73 6962 6c65 5f66 6163 7473 in ansible_facts │ │ │ -001f6e00: 2e70 6163 6b61 6765 7320 616e 6420 226f .packages and "o │ │ │ -001f6e10: 7374 7265 6522 2069 6e20 616e 7369 626c stree" in ansibl │ │ │ -001f6e20: 655f 7072 6f63 5f63 6d64 6c69 6e65 0a20 e_proc_cmdline. │ │ │ -001f6e30: 2020 2029 2061 6e64 206e 6f74 2028 2061 ) and not ( a │ │ │ -001f6e40: 6e73 6962 6c65 5f76 6972 7475 616c 697a nsible_virtualiz │ │ │ -001f6e50: 6174 696f 6e5f 7479 7065 2069 6e20 5b22 ation_type in [" │ │ │ -001f6e60: 646f 636b 6572 222c 2022 6c78 6322 2c20 docker", "lxc", │ │ │ -001f6e70: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61 "openvz", "podma │ │ │ -001f6e80: 6e22 2c0a 2020 2020 2263 6f6e 7461 696e n",. "contain │ │ │ -001f6e90: 6572 225d 2029 2029 0a20 202d 2027 222f er"] ) ). - '"/ │ │ │ -001f6ea0: 7661 7222 2069 6e20 616e 7369 626c 655f var" in ansible_ │ │ │ -001f6eb0: 6d6f 756e 7473 207c 206d 6170 2861 7474 mounts | map(att │ │ │ -001f6ec0: 7269 6275 7465 3d22 6d6f 756e 7422 2920 ribute="mount") │ │ │ -001f6ed0: 7c20 6c69 7374 270a 2020 2d20 6465 7669 | list'. - devi │ │ │ -001f6ee0: 6365 5f6e 616d 652e 7374 646f 7574 2069 ce_name.stdout i │ │ │ -001f6ef0: 7320 6465 6669 6e65 6420 616e 6420 6465 s defined and de │ │ │ -001f6f00: 7669 6365 5f6e 616d 652e 7374 646f 7574 vice_name.stdout │ │ │ -001f6f10: 5f6c 696e 6573 2069 7320 6465 6669 6e65 _lines is define │ │ │ -001f6f20: 640a 2020 2d20 2864 6576 6963 655f 6e61 d. - (device_na │ │ │ -001f6f30: 6d65 2e73 7464 6f75 7420 7c20 6c65 6e67 me.stdout | leng │ │ │ -001f6f40: 7468 2026 6774 3b20 3029 0a20 2074 6167 th > 0). tag │ │ │ -001f6f50: 733a 0a20 202d 2063 6f6e 6669 6775 7265 s:. - configure │ │ │ -001f6f60: 5f73 7472 6174 6567 790a 2020 2d20 6869 _strategy. - hi │ │ │ -001f6f70: 6768 5f64 6973 7275 7074 696f 6e0a 2020 gh_disruption. │ │ │ -001f6f80: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479 - low_complexity │ │ │ -001f6f90: 0a20 202d 206d 6564 6975 6d5f 7365 7665 . - medium_seve │ │ │ -001f6fa0: 7269 7479 0a20 202d 206d 6f75 6e74 5f6f rity. - mount_o │ │ │ -001f6fb0: 7074 696f 6e5f 7661 725f 6e6f 6578 6563 ption_var_noexec │ │ │ -001f6fc0: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e . - no_reboot_n │ │ │ -001f6fd0: 6565 6465 640a 0a2d 206e 616d 653a 2027 eeded..- name: ' │ │ │ -001f6fe0: 4164 6420 6e6f 6578 6563 204f 7074 696f Add noexec Optio │ │ │ -001f6ff0: 6e20 746f 202f 7661 723a 2049 6620 2f76 n to /var: If /v │ │ │ -001f7000: 6172 206e 6f74 206d 6f75 6e74 6564 2c20 ar not mounted, │ │ │ -001f7010: 6372 6166 7420 6d6f 756e 745f 696e 666f craft mount_info │ │ │ -001f7020: 206d 616e 7561 6c6c 7927 0a20 2073 6574 manually'. set │ │ │ -001f7030: 5f66 6163 743a 0a20 2020 206d 6f75 6e74 _fact:. mount │ │ │ -001f7040: 5f69 6e66 6f3a 2027 7b7b 206d 6f75 6e74 _info: '{{ mount │ │ │ -001f7050: 5f69 6e66 6f7c 6465 6661 756c 7428 7b7d _info|default({} │ │ │ -001f7060: 297c 636f 6d62 696e 6528 7b69 7465 6d2e )|combine({item. │ │ │ -001f7070: 303a 2069 7465 6d2e 317d 2920 7d7d 270a 0: item.1}) }}'. │ │ │ -001f7080: 2020 7769 7468 5f74 6f67 6574 6865 723a with_together: │ │ │ -001f7090: 0a20 202d 202d 2074 6172 6765 740a 2020 . - - target. │ │ │ -001f70a0: 2020 2d20 736f 7572 6365 0a20 2020 202d - source. - │ │ │ -001f70b0: 2066 7374 7970 650a 2020 2020 2d20 6f70 fstype. - op │ │ │ -001f70c0: 7469 6f6e 730a 2020 2d20 2d20 2f76 6172 tions. - - /var │ │ │ -001f70d0: 0a20 2020 202d 2027 270a 2020 2020 2d20 . - ''. - │ │ │ -001f70e0: 2727 0a20 2020 202d 2064 6566 6175 6c74 ''. - default │ │ │ -001f70f0: 730a 2020 7768 656e 3a0a 2020 2d20 2820 s. when:. - ( │ │ │ -001f7100: 6e6f 7420 2820 226b 6572 6e65 6c22 2069 not ( "kernel" i │ │ │ -001f7110: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ -001f7120: 7061 636b 6167 6573 2061 6e64 2022 626f packages and "bo │ │ │ -001f7130: 6f74 6322 2069 6e20 616e 7369 626c 655f otc" in ansible_ │ │ │ -001f7140: 6661 6374 732e 7061 636b 6167 6573 0a20 facts.packages. │ │ │ -001f7150: 2020 2061 6e64 206e 6f74 2022 6f70 656e and not "open │ │ │ -001f7160: 7368 6966 742d 6b75 6265 6c65 7422 2069 shift-kubelet" i │ │ │ -001f7170: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ -001f7180: 7061 636b 6167 6573 2061 6e64 2022 6f73 packages and "os │ │ │ -001f7190: 7472 6565 2220 696e 2061 6e73 6962 6c65 tree" in ansible │ │ │ -001f71a0: 5f70 726f 635f 636d 646c 696e 650a 2020 _proc_cmdline. │ │ │ -001f71b0: 2020 2920 616e 6420 6e6f 7420 2820 616e ) and not ( an │ │ │ -001f71c0: 7369 626c 655f 7669 7274 7561 6c69 7a61 sible_virtualiza │ │ │ -001f71d0: 7469 6f6e 5f74 7970 6520 696e 205b 2264 tion_type in ["d │ │ │ -001f71e0: 6f63 6b65 7222 2c20 226c 7863 222c 2022 ocker", "lxc", " │ │ │ -001f71f0: 6f70 656e 767a 222c 2022 706f 646d 616e openvz", "podman │ │ │ -001f7200: 222c 0a20 2020 2022 636f 6e74 6169 6e65 ",. "containe │ │ │ -001f7210: 7222 5d20 2920 290a 2020 2d20 2722 2f76 r"] ) ). - '"/v │ │ │ -001f7220: 6172 2220 696e 2061 6e73 6962 6c65 5f6d ar" in ansible_m │ │ │ -001f7230: 6f75 6e74 7320 7c20 6d61 7028 6174 7472 ounts | map(attr │ │ │ -001f7240: 6962 7574 653d 226d 6f75 6e74 2229 207c ibute="mount") | │ │ │ -001f7250: 206c 6973 7427 0a20 202d 2028 222d 2d66 list'. - ("--f │ │ │ -001f7260: 7374 6162 2220 7c20 6c65 6e67 7468 203d stab" | length = │ │ │ -001f7270: 3d20 3029 0a20 202d 2064 6576 6963 655f = 0). - device_ │ │ │ -001f7280: 6e61 6d65 2e73 7464 6f75 7420 6973 2064 name.stdout is d │ │ │ -001f7290: 6566 696e 6564 2061 6e64 2064 6576 6963 efined and devic │ │ │ -001f72a0: 655f 6e61 6d65 2e73 7464 6f75 745f 6c69 e_name.stdout_li │ │ │ -001f72b0: 6e65 7320 6973 2064 6566 696e 6564 0a20 nes is defined. │ │ │ -001f72c0: 202d 2028 6465 7669 6365 5f6e 616d 652e - (device_name. │ │ │ -001f72d0: 7374 646f 7574 207c 206c 656e 6774 6820 stdout | length │ │ │ -001f72e0: 3d3d 2030 290a 2020 7461 6773 3a0a 2020 == 0). tags:. │ │ │ -001f72f0: 2d20 636f 6e66 6967 7572 655f 7374 7261 - configure_stra │ │ │ -001f7300: 7465 6779 0a20 202d 2068 6967 685f 6469 tegy. - high_di │ │ │ -001f7310: 7372 7570 7469 6f6e 0a20 202d 206c 6f77 sruption. - low │ │ │ -001f7320: 5f63 6f6d 706c 6578 6974 790a 2020 2d20 _complexity. - │ │ │ -001f7330: 6d65 6469 756d 5f73 6576 6572 6974 790a medium_severity. │ │ │ -001f7340: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e - mount_option │ │ │ -001f7350: 5f76 6172 5f6e 6f65 7865 630a 2020 2d20 _var_noexec. - │ │ │ -001f7360: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564 no_reboot_needed │ │ │ -001f7370: 0a0a 2d20 6e61 6d65 3a20 2741 6464 206e ..- name: 'Add n │ │ │ -001f7380: 6f65 7865 6320 4f70 7469 6f6e 2074 6f20 oexec Option to │ │ │ -001f7390: 2f76 6172 3a20 4d61 6b65 2073 7572 6520 /var: Make sure │ │ │ -001f73a0: 6e6f 6578 6563 206f 7074 696f 6e20 6973 noexec option is │ │ │ -001f73b0: 2070 6172 7420 6f66 2074 6865 2074 6f20 part of the to │ │ │ -001f73c0: 2f76 6172 0a20 2020 206f 7074 696f 6e73 /var. options │ │ │ -001f73d0: 270a 2020 7365 745f 6661 6374 3a0a 2020 '. set_fact:. │ │ │ -001f73e0: 2020 6d6f 756e 745f 696e 666f 3a20 277b mount_info: '{ │ │ │ -001f73f0: 7b20 6d6f 756e 745f 696e 666f 207c 2063 { mount_info | c │ │ │ -001f7400: 6f6d 6269 6e65 2820 7b27 276f 7074 696f ombine( {''optio │ │ │ -001f7410: 6e73 2727 3a27 2727 277e 286d 6f75 6e74 ns'':''''~(mount │ │ │ -001f7420: 5f69 6e66 6f2e 6f70 7469 6f6e 7320 7c0a _info.options |. │ │ │ -001f7430: 2020 2020 2020 6465 6661 756c 7428 2727 default('' │ │ │ -001f7440: 2727 2929 7e28 2727 2c27 2720 6966 2028 ''))~('','' if ( │ │ │ -001f7450: 6d6f 756e 745f 696e 666f 2e6f 7074 696f mount_info.optio │ │ │ -001f7460: 6e73 207c 2064 6566 6175 6c74 2827 2727 ns | default(''' │ │ │ -001f7470: 2729 2920 656c 7365 2027 2727 2729 7e27 ')) else '''')~' │ │ │ -001f7480: 276e 6f65 7865 6327 270a 2020 2020 2020 'noexec''. │ │ │ -001f7490: 7d29 207d 7d27 0a20 2077 6865 6e3a 0a20 }) }}'. when:. │ │ │ -001f74a0: 202d 2028 206e 6f74 2028 2022 6b65 726e - ( not ( "kern │ │ │ -001f74b0: 656c 2220 696e 2061 6e73 6962 6c65 5f66 el" in ansible_f │ │ │ -001f74c0: 6163 7473 2e70 6163 6b61 6765 7320 616e acts.packages an │ │ │ -001f74d0: 6420 2262 6f6f 7463 2220 696e 2061 6e73 d "bootc" in ans │ │ │ -001f74e0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61 ible_facts.packa │ │ │ -001f74f0: 6765 730a 2020 2020 616e 6420 6e6f 7420 ges. and not │ │ │ -001f7500: 226f 7065 6e73 6869 6674 2d6b 7562 656c "openshift-kubel │ │ │ -001f7510: 6574 2220 696e 2061 6e73 6962 6c65 5f66 et" in ansible_f │ │ │ -001f7520: 6163 7473 2e70 6163 6b61 6765 7320 616e acts.packages an │ │ │ -001f7530: 6420 226f 7374 7265 6522 2069 6e20 616e d "ostree" in an │ │ │ -001f7540: 7369 626c 655f 7072 6f63 5f63 6d64 6c69 sible_proc_cmdli │ │ │ -001f7550: 6e65 0a20 2020 2029 2061 6e64 206e 6f74 ne. ) and not │ │ │ -001f7560: 2028 2061 6e73 6962 6c65 5f76 6972 7475 ( ansible_virtu │ │ │ -001f7570: 616c 697a 6174 696f 6e5f 7479 7065 2069 alization_type i │ │ │ -001f7580: 6e20 5b22 646f 636b 6572 222c 2022 6c78 n ["docker", "lx │ │ │ -001f7590: 6322 2c20 226f 7065 6e76 7a22 2c20 2270 c", "openvz", "p │ │ │ -001f75a0: 6f64 6d61 6e22 2c0a 2020 2020 2263 6f6e odman",. "con │ │ │ -001f75b0: 7461 696e 6572 225d 2029 2029 0a20 202d tainer"] ) ). - │ │ │ -001f75c0: 2027 222f 7661 7222 2069 6e20 616e 7369 '"/var" in ansi │ │ │ -001f75d0: 626c 655f 6d6f 756e 7473 207c 206d 6170 ble_mounts | map │ │ │ -001f75e0: 2861 7474 7269 6275 7465 3d22 6d6f 756e (attribute="moun │ │ │ -001f75f0: 7422 2920 7c20 6c69 7374 270a 2020 2d20 t") | list'. - │ │ │ -001f7600: 6d6f 756e 745f 696e 666f 2069 7320 6465 mount_info is de │ │ │ -001f7610: 6669 6e65 6420 616e 6420 226e 6f65 7865 fined and "noexe │ │ │ -001f7620: 6322 206e 6f74 2069 6e20 286d 6f75 6e74 c" not in (mount │ │ │ -001f7630: 5f69 6e66 6f2e 6f70 7469 6f6e 7320 7c20 _info.options | │ │ │ -001f7640: 6465 6661 756c 7428 2727 2929 0a20 2074 default('')). t │ │ │ -001f7650: 6167 733a 0a20 202d 2063 6f6e 6669 6775 ags:. - configu │ │ │ -001f7660: 7265 5f73 7472 6174 6567 790a 2020 2d20 re_strategy. - │ │ │ -001f7670: 6869 6768 5f64 6973 7275 7074 696f 6e0a high_disruption. │ │ │ -001f7680: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869 - low_complexi │ │ │ -001f7690: 7479 0a20 202d 206d 6564 6975 6d5f 7365 ty. - medium_se │ │ │ -001f76a0: 7665 7269 7479 0a20 202d 206d 6f75 6e74 verity. - mount │ │ │ -001f76b0: 5f6f 7074 696f 6e5f 7661 725f 6e6f 6578 _option_var_noex │ │ │ -001f76c0: 6563 0a20 202d 206e 6f5f 7265 626f 6f74 ec. - no_reboot │ │ │ -001f76d0: 5f6e 6565 6465 640a 0a2d 206e 616d 653a _needed..- name: │ │ │ -001f76e0: 2027 4164 6420 6e6f 6578 6563 204f 7074 'Add noexec Opt │ │ │ -001f76f0: 696f 6e20 746f 202f 7661 723a 2045 6e73 ion to /var: Ens │ │ │ -001f7700: 7572 6520 2f76 6172 2069 7320 6d6f 756e ure /var is moun │ │ │ -001f7710: 7465 6420 7769 7468 206e 6f65 7865 6320 ted with noexec │ │ │ -001f7720: 6f70 7469 6f6e 270a 2020 616e 7369 626c option'. ansibl │ │ │ -001f7730: 652e 706f 7369 782e 6d6f 756e 743a 0a20 e.posix.mount:. │ │ │ -001f7740: 2020 2070 6174 683a 202f 7661 720a 2020 path: /var. │ │ │ -001f7750: 2020 7372 633a 2027 7b7b 206d 6f75 6e74 src: '{{ mount │ │ │ -001f7760: 5f69 6e66 6f2e 736f 7572 6365 207c 2064 _info.source | d │ │ │ -001f7770: 6566 6175 6c74 2827 2727 2729 207d 7d27 efault('''') }}' │ │ │ -001f7780: 0a20 2020 206f 7074 733a 2027 7b7b 206d . opts: '{{ m │ │ │ -001f7790: 6f75 6e74 5f69 6e66 6f2e 6f70 7469 6f6e ount_info.option │ │ │ -001f77a0: 7320 7c20 6465 6661 756c 7428 2727 2727 s | default('''' │ │ │ -001f77b0: 2920 7d7d 270a 2020 2020 7374 6174 653a ) }}'. state: │ │ │ -001f77c0: 206d 6f75 6e74 6564 0a20 2020 2066 7374 mounted. fst │ │ │ -001f77d0: 7970 653a 2027 7b7b 206d 6f75 6e74 5f69 ype: '{{ mount_i │ │ │ -001f77e0: 6e66 6f2e 6673 7479 7065 207c 2064 6566 nfo.fstype | def │ │ │ -001f77f0: 6175 6c74 2827 2727 2729 207d 7d27 0a20 ault('''') }}'. │ │ │ -001f7800: 2072 6567 6973 7465 723a 206d 6f75 6e74 register: mount │ │ │ -001f7810: 5f72 6573 756c 740a 2020 6661 696c 6564 _result. failed │ │ │ -001f7820: 5f77 6865 6e3a 0a20 202d 206d 6f75 6e74 _when:. - mount │ │ │ -001f7830: 5f72 6573 756c 7420 6973 2066 6169 6c65 _result is faile │ │ │ -001f7840: 640a 2020 2d20 2727 2774 6172 6765 7420 d. - '''target │ │ │ -001f7850: 6973 2062 7573 7927 2720 6e6f 7420 696e is busy'' not in │ │ │ -001f7860: 2028 6d6f 756e 745f 7265 7375 6c74 2e6d (mount_result.m │ │ │ -001f7870: 7367 207c 2064 6566 6175 6c74 2827 2727 sg | default(''' │ │ │ -001f7880: 2729 2927 0a20 202d 2027 2727 616c 7265 '))'. - '''alre │ │ │ -001f7890: 6164 7920 6d6f 756e 7465 6427 2720 6e6f ady mounted'' no │ │ │ -001f78a0: 7420 696e 2028 6d6f 756e 745f 7265 7375 t in (mount_resu │ │ │ -001f78b0: 6c74 2e6d 7367 207c 2064 6566 6175 6c74 lt.msg | default │ │ │ -001f78c0: 2827 2727 2729 2927 0a20 2077 6865 6e3a (''''))'. when: │ │ │ -001f78d0: 0a20 202d 2028 206e 6f74 2028 2022 6b65 . - ( not ( "ke │ │ │ -001f78e0: 726e 656c 2220 696e 2061 6e73 6962 6c65 rnel" in ansible │ │ │ -001f78f0: 5f66 6163 7473 2e70 6163 6b61 6765 7320 _facts.packages │ │ │ -001f7900: 616e 6420 2262 6f6f 7463 2220 696e 2061 and "bootc" in a │ │ │ -001f7910: 6e73 6962 6c65 5f66 6163 7473 2e70 6163 nsible_facts.pac │ │ │ -001f7920: 6b61 6765 730a 2020 2020 616e 6420 6e6f kages. and no │ │ │ -001f7930: 7420 226f 7065 6e73 6869 6674 2d6b 7562 t "openshift-kub │ │ │ -001f7940: 656c 6574 2220 696e 2061 6e73 6962 6c65 elet" in ansible │ │ │ -001f7950: 5f66 6163 7473 2e70 6163 6b61 6765 7320 _facts.packages │ │ │ -001f7960: 616e 6420 226f 7374 7265 6522 2069 6e20 and "ostree" in │ │ │ -001f7970: 616e 7369 626c 655f 7072 6f63 5f63 6d64 ansible_proc_cmd │ │ │ -001f7980: 6c69 6e65 0a20 2020 2029 2061 6e64 206e line. ) and n │ │ │ -001f7990: 6f74 2028 2061 6e73 6962 6c65 5f76 6972 ot ( ansible_vir │ │ │ -001f79a0: 7475 616c 697a 6174 696f 6e5f 7479 7065 tualization_type │ │ │ -001f79b0: 2069 6e20 5b22 646f 636b 6572 222c 2022 in ["docker", " │ │ │ -001f79c0: 6c78 6322 2c20 226f 7065 6e76 7a22 2c20 lxc", "openvz", │ │ │ -001f79d0: 2270 6f64 6d61 6e22 2c0a 2020 2020 2263 "podman",. "c │ │ │ -001f79e0: 6f6e 7461 696e 6572 225d 2029 2029 0a20 ontainer"] ) ). │ │ │ -001f79f0: 202d 2027 222f 7661 7222 2069 6e20 616e - '"/var" in an │ │ │ -001f7a00: 7369 626c 655f 6d6f 756e 7473 207c 206d sible_mounts | m │ │ │ -001f7a10: 6170 2861 7474 7269 6275 7465 3d22 6d6f ap(attribute="mo │ │ │ -001f7a20: 756e 7422 2920 7c20 6c69 7374 270a 2020 unt") | list'. │ │ │ -001f7a30: 2d20 6d6f 756e 745f 696e 666f 2069 7320 - mount_info is │ │ │ -001f7a40: 6465 6669 6e65 640a 2020 2d20 2864 6576 defined. - (dev │ │ │ -001f7a50: 6963 655f 6e61 6d65 2e73 7464 6f75 7420 ice_name.stdout │ │ │ -001f7a60: 6973 2064 6566 696e 6564 2061 6e64 2028 is defined and ( │ │ │ -001f7a70: 6465 7669 6365 5f6e 616d 652e 7374 646f device_name.stdo │ │ │ -001f7a80: 7574 207c 206c 656e 6774 6820 2667 743b ut | length > │ │ │ -001f7a90: 2030 2929 206f 7220 2822 2d2d 6673 7461 0)) or ("--fsta │ │ │ -001f7aa0: 6222 0a20 2020 207c 206c 656e 6774 6820 b". | length │ │ │ -001f7ab0: 3d3d 2030 290a 2020 7461 6773 3a0a 2020 == 0). tags:. │ │ │ -001f7ac0: 2d20 636f 6e66 6967 7572 655f 7374 7261 - configure_stra │ │ │ -001f7ad0: 7465 6779 0a20 202d 2068 6967 685f 6469 tegy. - high_di │ │ │ -001f7ae0: 7372 7570 7469 6f6e 0a20 202d 206c 6f77 sruption. - low │ │ │ -001f7af0: 5f63 6f6d 706c 6578 6974 790a 2020 2d20 _complexity. - │ │ │ -001f7b00: 6d65 6469 756d 5f73 6576 6572 6974 790a medium_severity. │ │ │ -001f7b10: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e - mount_option │ │ │ -001f7b20: 5f76 6172 5f6e 6f65 7865 630a 2020 2d20 _var_noexec. - │ │ │ -001f7b30: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564 no_reboot_needed │ │ │ -001f7b40: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f .Remediation She │ │ │ -001f7c00: 6c6c 2073 6372 6970 7420 e287 b23c 2f61 ll script ...

# Remediation i
│ │ │ -001f7cd0: 7320 6170 706c 6963 6162 6c65 206f 6e6c  s applicable onl
│ │ │ -001f7ce0: 7920 696e 2063 6572 7461 696e 2070 6c61  y in certain pla
│ │ │ -001f7cf0: 7466 6f72 6d73 0a69 6620 2820 2120 2820  tforms.if ( ! ( 
│ │ │ -001f7d00: 7b20 7270 6d20 2d2d 7175 6965 7420 2d71  { rpm --quiet -q
│ │ │ -001f7d10: 206b 6572 6e65 6c20 3b7d 2026 616d 703b   kernel ;} &
│ │ │ -001f7d20: 2661 6d70 3b20 7b20 7270 6d20 2d2d 7175  & { rpm --qu
│ │ │ -001f7d30: 6965 7420 2d71 2062 6f6f 7463 203b 7d20  iet -q bootc ;} 
│ │ │ -001f7d40: 2661 6d70 3b26 616d 703b 207b 2021 2072  && { ! r
│ │ │ -001f7d50: 706d 202d 2d71 7569 6574 202d 7120 6f70  pm --quiet -q op
│ │ │ -001f7d60: 656e 7368 6966 742d 6b75 6265 6c65 7420  enshift-kubelet 
│ │ │ -001f7d70: 3b7d 2026 616d 703b 2661 6d70 3b20 285b  ;} && ([
│ │ │ -001f7d80: 202d 6620 2f72 756e 2f6f 7374 7265 652d   -f /run/ostree-
│ │ │ -001f7d90: 626f 6f74 6564 205d 207c 7c20 5b20 2d4c  booted ] || [ -L
│ │ │ -001f7da0: 202f 6f73 7472 6565 205d 2920 2920 2661   /ostree ]) ) &a
│ │ │ -001f7db0: 6d70 3b26 616d 703b 2021 2028 205b 202d  mp;& ! ( [ -
│ │ │ -001f7dc0: 6620 2f2e 646f 636b 6572 656e 7620 5d20  f /.dockerenv ] 
│ │ │ -001f7dd0: 7c7c 205b 202d 6620 2f72 756e 2f2e 636f  || [ -f /run/.co
│ │ │ -001f7de0: 6e74 6169 6e65 7265 6e76 205d 2029 2029  ntainerenv ] ) )
│ │ │ -001f7df0: 2026 616d 703b 2661 6d70 3b20 7b20 2820   && { ( 
│ │ │ -001f7e00: 6669 6e64 6d6e 7420 2d2d 6b65 726e 656c  findmnt --kernel
│ │ │ -001f7e10: 2022 2f76 6172 2220 2667 743b 202f 6465   "/var" > /de
│ │ │ -001f7e20: 762f 6e75 6c6c 207c 7c20 6669 6e64 6d6e  v/null || findmn
│ │ │ -001f7e30: 7420 2d2d 6673 7461 6220 222f 7661 7222  t --fstab "/var"
│ │ │ -001f7e40: 2026 6774 3b20 2f64 6576 2f6e 756c 6c20   > /dev/null 
│ │ │ -001f7e50: 293b 207d 3b20 7468 656e 0a0a 6675 6e63  ); }; then..func
│ │ │ -001f7e60: 7469 6f6e 2070 6572 666f 726d 5f72 656d  tion perform_rem
│ │ │ -001f7e70: 6564 6961 7469 6f6e 207b 0a0a 2020 2020  ediation {..    
│ │ │ -001f7e80: 0a20 2020 2020 2020 2023 2074 6865 206d  .        # the m
│ │ │ -001f7e90: 6f75 6e74 2070 6f69 6e74 202f 7661 7220  ount point /var 
│ │ │ -001f7ea0: 6861 7320 746f 2062 6520 6465 6669 6e65  has to be define
│ │ │ -001f7eb0: 6420 696e 202f 6574 632f 6673 7461 620a  d in /etc/fstab.
│ │ │ -001f7ec0: 2020 2020 2020 2020 2320 6265 666f 7265          # before
│ │ │ -001f7ed0: 2074 6869 7320 7265 6d65 6469 6174 696f   this remediatio
│ │ │ -001f7ee0: 6e20 6361 6e20 6265 2065 7865 6375 7465  n can be execute
│ │ │ -001f7ef0: 642e 2049 6e20 6361 7365 2069 7420 6973  d. In case it is
│ │ │ -001f7f00: 206e 6f74 2064 6566 696e 6564 2c20 7468   not defined, th
│ │ │ -001f7f10: 650a 2020 2020 2020 2020 2320 7265 6d65  e.        # reme
│ │ │ -001f7f20: 6469 6174 696f 6e20 6162 6f72 7473 2061  diation aborts a
│ │ │ -001f7f30: 6e64 206e 6f20 6368 616e 6765 7320 7265  nd no changes re
│ │ │ -001f7f40: 6761 7264 696e 6720 7468 6520 6d6f 756e  garding the moun
│ │ │ -001f7f50: 7420 706f 696e 7420 6172 6520 646f 6e65  t point are done
│ │ │ -001f7f60: 2e0a 2020 2020 2020 2020 6d6f 756e 745f  ..        mount_
│ │ │ -001f7f70: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ -001f7f80: 7870 3d22 2428 7072 696e 7466 2022 5e5b  xp="$(printf "^[
│ │ │ -001f7f90: 5b3a 7370 6163 653a 5d5d 2a5b 5e23 5d2e  [:space:]]*[^#].
│ │ │ -001f7fa0: 2a5b 5b3a 7370 6163 653a 5d5d 2573 5b5b  *[[:space:]]%s[[
│ │ │ -001f7fb0: 3a73 7061 6365 3a5d 5d22 2022 2f76 6172  :space:]]" "/var
│ │ │ -001f7fc0: 2229 220a 0a20 2020 2067 7265 7020 2224  ")"..    grep "$
│ │ │ -001f7fd0: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ -001f7fe0: 685f 7265 6765 7870 2220 2d71 202f 6574  h_regexp" -q /et
│ │ │ -001f7ff0: 632f 6673 7461 6220 5c0a 2020 2020 2020  c/fstab \.      
│ │ │ -001f8000: 2020 7c7c 207b 2065 6368 6f20 2254 6865    || { echo "The
│ │ │ -001f8010: 206d 6f75 6e74 2070 6f69 6e74 2027 2f76   mount point '/v
│ │ │ -001f8020: 6172 2720 6973 206e 6f74 2065 7665 6e20  ar' is not even 
│ │ │ -001f8030: 696e 202f 6574 632f 6673 7461 622c 2073  in /etc/fstab, s
│ │ │ -001f8040: 6f20 7765 2063 616e 2774 2073 6574 2075  o we can't set u
│ │ │ -001f8050: 7020 6d6f 756e 7420 6f70 7469 6f6e 7322  p mount options"
│ │ │ -001f8060: 2026 6774 3b26 616d 703b 323b 0a20 2020   >&2;.   
│ │ │ -001f8070: 2020 2020 2020 2020 2020 2020 2065 6368               ech
│ │ │ -001f8080: 6f20 224e 6f74 2072 656d 6564 6961 7469  o "Not remediati
│ │ │ -001f8090: 6e67 2c20 6265 6361 7573 6520 7468 6572  ng, because ther
│ │ │ -001f80a0: 6520 6973 206e 6f20 7265 636f 7264 206f  e is no record o
│ │ │ -001f80b0: 6620 2f76 6172 2069 6e20 2f65 7463 2f66  f /var in /etc/f
│ │ │ -001f80c0: 7374 6162 2220 2667 743b 2661 6d70 3b32  stab" >&2
│ │ │ -001f80d0: 3b20 7265 7475 726e 2031 3b20 7d0a 2020  ; return 1; }.  
│ │ │ -001f80e0: 2020 0a0a 0a20 2020 206d 6f75 6e74 5f70    ...    mount_p
│ │ │ -001f80f0: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ -001f8100: 703d 2224 2870 7269 6e74 6620 225e 5b5b  p="$(printf "^[[
│ │ │ -001f8110: 3a73 7061 6365 3a5d 5d2a 5b5e 235d 2e2a  :space:]]*[^#].*
│ │ │ -001f8120: 5b5b 3a73 7061 6365 3a5d 5d25 735b 5b3a  [[:space:]]%s[[:
│ │ │ -001f8130: 7370 6163 653a 5d5d 2220 2f76 6172 2922  space:]]" /var)"
│ │ │ -001f8140: 0a0a 2020 2020 2320 4966 2074 6865 206d  ..    # If the m
│ │ │ -001f8150: 6f75 6e74 2070 6f69 6e74 2069 7320 6e6f  ount point is no
│ │ │ -001f8160: 7420 696e 202f 6574 632f 6673 7461 622c  t in /etc/fstab,
│ │ │ -001f8170: 2067 6574 2070 7265 7669 6f75 7320 6d6f   get previous mo
│ │ │ -001f8180: 756e 7420 6f70 7469 6f6e 7320 6672 6f6d  unt options from
│ │ │ -001f8190: 202f 6574 632f 6d74 6162 0a20 2020 2069   /etc/mtab.    i
│ │ │ -001f81a0: 6620 2120 6772 6570 202d 7120 2224 6d6f  f ! grep -q "$mo
│ │ │ -001f81b0: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ -001f81c0: 7265 6765 7870 2220 2f65 7463 2f66 7374  regexp" /etc/fst
│ │ │ -001f81d0: 6162 3b20 7468 656e 0a20 2020 2020 2020  ab; then.       
│ │ │ -001f81e0: 2023 2072 756e 7469 6d65 206f 7074 7320   # runtime opts 
│ │ │ -001f81f0: 7769 7468 6f75 7420 736f 6d65 2061 7574  without some aut
│ │ │ -001f8200: 6f6d 6174 6963 206b 6572 6e65 6c2f 7573  omatic kernel/us
│ │ │ -001f8210: 6572 7370 6163 652d 6164 6465 6420 6465  erspace-added de
│ │ │ -001f8220: 6661 756c 7473 0a20 2020 2020 2020 2070  faults.        p
│ │ │ -001f8230: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ -001f8240: 7473 3d24 2867 7265 7020 2224 6d6f 756e  ts=$(grep "$moun
│ │ │ -001f8250: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ -001f8260: 6765 7870 2220 2f65 7463 2f6d 7461 6220  gexp" /etc/mtab 
│ │ │ -001f8270: 7c20 6865 6164 202d 3120 7c20 2061 776b  | head -1 |  awk
│ │ │ -001f8280: 2027 7b70 7269 6e74 2024 347d 2720 5c0a   '{print $4}' \.
│ │ │ -001f8290: 2020 2020 2020 2020 2020 2020 2020 2020                  
│ │ │ -001f82a0: 2020 2020 7c20 7365 6420 2d45 2022 732f      | sed -E "s/
│ │ │ -001f82b0: 2872 777c 6465 6661 756c 7473 7c73 6563  (rw|defaults|sec
│ │ │ -001f82c0: 6c61 6265 6c7c 6e6f 6578 6563 2928 2c7c  label|noexec)(,|
│ │ │ -001f82d0: 2429 2f2f 673b 732f 2c24 2f2f 2229 0a20  $)//g;s/,$//"). 
│ │ │ -001f82e0: 2020 2020 2020 205b 2022 2470 7265 7669         [ "$previ
│ │ │ -001f82f0: 6f75 735f 6d6f 756e 745f 6f70 7473 2220  ous_mount_opts" 
│ │ │ -001f8300: 5d20 2661 6d70 3b26 616d 703b 2070 7265  ] && pre
│ │ │ -001f8310: 7669 6f75 735f 6d6f 756e 745f 6f70 7473  vious_mount_opts
│ │ │ -001f8320: 2b3d 222c 220a 2020 2020 2020 2020 2320  +=",".        # 
│ │ │ -001f8330: 496e 2069 736f 3936 3630 2066 696c 6573  In iso9660 files
│ │ │ -001f8340: 7973 7465 6d73 206d 7461 6220 636f 756c  ystems mtab coul
│ │ │ -001f8350: 6420 6465 7363 7269 6265 2061 2022 626c  d describe a "bl
│ │ │ -001f8360: 6f63 6b73 697a 6522 2076 616c 7565 2c20  ocksize" value, 
│ │ │ -001f8370: 7468 6973 2073 686f 756c 6420 6265 2072  this should be r
│ │ │ -001f8380: 6566 6c65 6374 6564 2069 6e0a 2020 2020  eflected in.    
│ │ │ -001f8390: 2020 2020 2320 6673 7461 6220 6173 2022      # fstab as "
│ │ │ -001f83a0: 626c 6f63 6b22 2e20 2054 6865 206e 6578  block".  The nex
│ │ │ -001f83b0: 7420 7661 7269 6162 6c65 2069 7320 746f  t variable is to
│ │ │ -001f83c0: 2073 6174 6973 6679 2073 6865 6c6c 6368   satisfy shellch
│ │ │ -001f83d0: 6563 6b20 5343 3230 3530 2e0a 2020 2020  eck SC2050..    
│ │ │ -001f83e0: 2020 2020 6673 5f74 7970 653d 2222 0a20      fs_type="". 
│ │ │ -001f83f0: 2020 2020 2020 2069 6620 5b20 2022 2466         if [  "$f
│ │ │ -001f8400: 735f 7479 7065 2220 3d3d 2022 6973 6f39  s_type" == "iso9
│ │ │ -001f8410: 3636 3022 205d 203b 2074 6865 6e0a 2020  660" ] ; then.  
│ │ │ -001f8420: 2020 2020 2020 2020 2020 7072 6576 696f            previo
│ │ │ -001f8430: 7573 5f6d 6f75 6e74 5f6f 7074 733d 2428  us_mount_opts=$(
│ │ │ -001f8440: 7365 6420 2773 2f62 6c6f 636b 7369 7a65  sed 's/blocksize
│ │ │ -001f8450: 3d2f 626c 6f63 6b3d 2f27 2026 6c74 3b26  =/block=/' <&
│ │ │ -001f8460: 6c74 3b26 6c74 3b20 2224 7072 6576 696f  lt;< "$previo
│ │ │ -001f8470: 7573 5f6d 6f75 6e74 5f6f 7074 7322 290a  us_mount_opts").
│ │ │ -001f8480: 2020 2020 2020 2020 6669 0a20 2020 2020          fi.     
│ │ │ -001f8490: 2020 2065 6368 6f20 2220 2f76 6172 2020     echo " /var  
│ │ │ -001f84a0: 6465 6661 756c 7473 2c24 7b70 7265 7669  defaults,${previ
│ │ │ -001f84b0: 6f75 735f 6d6f 756e 745f 6f70 7473 7d6e  ous_mount_opts}n
│ │ │ -001f84c0: 6f65 7865 6320 3020 3022 2026 6774 3b26  oexec 0 0" >&
│ │ │ -001f84d0: 6774 3b20 2f65 7463 2f66 7374 6162 0a20  gt; /etc/fstab. 
│ │ │ -001f84e0: 2020 2023 2049 6620 7468 6520 6d6f 756e     # If the moun
│ │ │ -001f84f0: 745f 6f70 7420 6f70 7469 6f6e 2069 7320  t_opt option is 
│ │ │ -001f8500: 6e6f 7420 616c 7265 6164 7920 696e 2074  not already in t
│ │ │ -001f8510: 6865 206d 6f75 6e74 2070 6f69 6e74 2773  he mount point's
│ │ │ -001f8520: 202f 6574 632f 6673 7461 6220 656e 7472   /etc/fstab entr
│ │ │ -001f8530: 792c 2061 6464 2069 740a 2020 2020 656c  y, add it.    el
│ │ │ -001f8540: 6966 2021 2067 7265 7020 2224 6d6f 756e  if ! grep "$moun
│ │ │ -001f8550: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ -001f8560: 6765 7870 2220 2f65 7463 2f66 7374 6162  gexp" /etc/fstab
│ │ │ -001f8570: 207c 2067 7265 7020 2d71 2022 6e6f 6578   | grep -q "noex
│ │ │ -001f8580: 6563 223b 2074 6865 6e0a 2020 2020 2020  ec"; then.      
│ │ │ -001f8590: 2020 7072 6576 696f 7573 5f6d 6f75 6e74    previous_mount
│ │ │ -001f85a0: 5f6f 7074 733d 2428 6772 6570 2022 246d  _opts=$(grep "$m
│ │ │ -001f85b0: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ -001f85c0: 5f72 6567 6578 7022 202f 6574 632f 6673  _regexp" /etc/fs
│ │ │ -001f85d0: 7461 6220 7c20 6177 6b20 277b 7072 696e  tab | awk '{prin
│ │ │ -001f85e0: 7420 2434 7d27 290a 2020 2020 2020 2020  t $4}').        
│ │ │ -001f85f0: 7365 6420 2d69 2022 737c 5c28 247b 6d6f  sed -i "s|\(${mo
│ │ │ -001f8600: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ -001f8610: 7265 6765 7870 7d2e 2a24 7b70 7265 7669  regexp}.*${previ
│ │ │ -001f8620: 6f75 735f 6d6f 756e 745f 6f70 7473 7d5c  ous_mount_opts}\
│ │ │ -001f8630: 297c 5c31 2c6e 6f65 7865 637c 2220 2f65  )|\1,noexec|" /e
│ │ │ -001f8640: 7463 2f66 7374 6162 0a20 2020 2066 690a  tc/fstab.    fi.
│ │ │ -001f8650: 0a0a 2020 2020 6966 206d 6b64 6972 202d  ..    if mkdir -
│ │ │ -001f8660: 7020 222f 7661 7222 3b20 7468 656e 0a20  p "/var"; then. 
│ │ │ -001f8670: 2020 2020 2020 2069 6620 6d6f 756e 7470         if mountp
│ │ │ -001f8680: 6f69 6e74 202d 7120 222f 7661 7222 3b20  oint -q "/var"; 
│ │ │ -001f8690: 7468 656e 0a20 2020 2020 2020 2020 2020  then.           
│ │ │ -001f86a0: 206d 6f75 6e74 202d 6f20 7265 6d6f 756e   mount -o remoun
│ │ │ -001f86b0: 7420 2d2d 7461 7267 6574 2022 2f76 6172  t --target "/var
│ │ │ -001f86c0: 220a 2020 2020 2020 2020 6669 0a20 2020  ".        fi.   
│ │ │ -001f86d0: 2066 690a 7d0a 0a70 6572 666f 726d 5f72   fi.}..perform_r
│ │ │ -001f86e0: 656d 6564 6961 7469 6f6e 0a0a 656c 7365  emediation..else
│ │ │ -001f86f0: 0a20 2020 2026 6774 3b26 616d 703b 3220  .    >&2 
│ │ │ -001f8700: 6563 686f 2027 5265 6d65 6469 6174 696f  echo 'Remediatio
│ │ │ -001f8710: 6e20 6973 206e 6f74 2061 7070 6c69 6361  n is not applica
│ │ │ -001f8720: 626c 652c 206e 6f74 6869 6e67 2077 6173  ble, nothing was
│ │ │ -001f8730: 2064 6f6e 6527 0a66 690a 3c2f 636f 6465   done'.fi.
R │ │ │ -001f7c90: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -001f7ca0: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c2f alse
< │ │ │ +001f65c0: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ +001f65e0: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr> │ │ │ +001f6630: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472
low
Disr │ │ │ +001f65f0: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +001f6600: 6869 6768 3c2f 7464 3e3c 2f74 723e 3c74 high
Reboot:false
Str │ │ │ +001f6640: 6174 6567 793a 3c2f 7468 3e3c 7464 3e63 ategy:c │ │ │ +001f6650: 6f6e 6669 6775 7265 3c2f 7464 3e3c 2f74 onfigure
<
│ │ │ +001f6670: 636f 6465 3e2d 206e 616d 653a 2047 6174  code>- name: Gat
│ │ │ +001f6680: 6865 7220 7468 6520 7061 636b 6167 6520  her the package 
│ │ │ +001f6690: 6661 6374 730a 2020 7061 636b 6167 655f  facts.  package_
│ │ │ +001f66a0: 6661 6374 733a 0a20 2020 206d 616e 6167  facts:.    manag
│ │ │ +001f66b0: 6572 3a20 6175 746f 0a20 2074 6167 733a  er: auto.  tags:
│ │ │ +001f66c0: 0a20 202d 2063 6f6e 6669 6775 7265 5f73  .  - configure_s
│ │ │ +001f66d0: 7472 6174 6567 790a 2020 2d20 6869 6768  trategy.  - high
│ │ │ +001f66e0: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +001f66f0: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ +001f6700: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ +001f6710: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074  ty.  - mount_opt
│ │ │ +001f6720: 696f 6e5f 7661 725f 6e6f 6578 6563 0a20  ion_var_noexec. 
│ │ │ +001f6730: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ +001f6740: 6465 640a 0a2d 206e 616d 653a 2027 4164  ded..- name: 'Ad
│ │ │ +001f6750: 6420 6e6f 6578 6563 204f 7074 696f 6e20  d noexec Option 
│ │ │ +001f6760: 746f 202f 7661 723a 2043 6865 636b 2069  to /var: Check i
│ │ │ +001f6770: 6e66 6f72 6d61 7469 6f6e 2061 7373 6f63  nformation assoc
│ │ │ +001f6780: 6961 7465 6420 746f 206d 6f75 6e74 706f  iated to mountpo
│ │ │ +001f6790: 696e 7427 0a20 2061 6e73 6962 6c65 2e62  int'.  ansible.b
│ │ │ +001f67a0: 7569 6c74 696e 2e63 6f6d 6d61 6e64 3a20  uiltin.command: 
│ │ │ +001f67b0: 6669 6e64 6d6e 7420 2d2d 6673 7461 6220  findmnt --fstab 
│ │ │ +001f67c0: 272f 7661 7227 0a20 2072 6567 6973 7465  '/var'.  registe
│ │ │ +001f67d0: 723a 2064 6576 6963 655f 6e61 6d65 0a20  r: device_name. 
│ │ │ +001f67e0: 2066 6169 6c65 645f 7768 656e 3a20 6465   failed_when: de
│ │ │ +001f67f0: 7669 6365 5f6e 616d 652e 7263 2026 6774  vice_name.rc >
│ │ │ +001f6800: 3b20 310a 2020 6368 616e 6765 645f 7768  ; 1.  changed_wh
│ │ │ +001f6810: 656e 3a20 6661 6c73 650a 2020 6368 6563  en: false.  chec
│ │ │ +001f6820: 6b5f 6d6f 6465 3a20 6661 6c73 650a 2020  k_mode: false.  
│ │ │ +001f6830: 7768 656e 3a0a 2020 2d20 2820 6e6f 7420  when:.  - ( not 
│ │ │ +001f6840: 2820 226b 6572 6e65 6c22 2069 6e20 616e  ( "kernel" in an
│ │ │ +001f6850: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001f6860: 6167 6573 2061 6e64 2022 626f 6f74 6322  ages and "bootc"
│ │ │ +001f6870: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001f6880: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ +001f6890: 6e64 206e 6f74 2022 6f70 656e 7368 6966  nd not "openshif
│ │ │ +001f68a0: 742d 6b75 6265 6c65 7422 2069 6e20 616e  t-kubelet" in an
│ │ │ +001f68b0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001f68c0: 6167 6573 2061 6e64 2022 6f73 7472 6565  ages and "ostree
│ │ │ +001f68d0: 2220 696e 2061 6e73 6962 6c65 5f70 726f  " in ansible_pro
│ │ │ +001f68e0: 635f 636d 646c 696e 650a 2020 2020 2920  c_cmdline.    ) 
│ │ │ +001f68f0: 616e 6420 6e6f 7420 2820 616e 7369 626c  and not ( ansibl
│ │ │ +001f6900: 655f 7669 7274 7561 6c69 7a61 7469 6f6e  e_virtualization
│ │ │ +001f6910: 5f74 7970 6520 696e 205b 2264 6f63 6b65  _type in ["docke
│ │ │ +001f6920: 7222 2c20 226c 7863 222c 2022 6f70 656e  r", "lxc", "open
│ │ │ +001f6930: 767a 222c 2022 706f 646d 616e 222c 0a20  vz", "podman",. 
│ │ │ +001f6940: 2020 2022 636f 6e74 6169 6e65 7222 5d20     "container"] 
│ │ │ +001f6950: 2920 290a 2020 2d20 2722 2f76 6172 2220  ) ).  - '"/var" 
│ │ │ +001f6960: 696e 2061 6e73 6962 6c65 5f6d 6f75 6e74  in ansible_mount
│ │ │ +001f6970: 7320 7c20 6d61 7028 6174 7472 6962 7574  s | map(attribut
│ │ │ +001f6980: 653d 226d 6f75 6e74 2229 207c 206c 6973  e="mount") | lis
│ │ │ +001f6990: 7427 0a20 2074 6167 733a 0a20 202d 2063  t'.  tags:.  - c
│ │ │ +001f69a0: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ +001f69b0: 790a 2020 2d20 6869 6768 5f64 6973 7275  y.  - high_disru
│ │ │ +001f69c0: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f  ption.  - low_co
│ │ │ +001f69d0: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ +001f69e0: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ +001f69f0: 206d 6f75 6e74 5f6f 7074 696f 6e5f 7661   mount_option_va
│ │ │ +001f6a00: 725f 6e6f 6578 6563 0a20 202d 206e 6f5f  r_noexec.  - no_
│ │ │ +001f6a10: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ +001f6a20: 206e 616d 653a 2027 4164 6420 6e6f 6578   name: 'Add noex
│ │ │ +001f6a30: 6563 204f 7074 696f 6e20 746f 202f 7661  ec Option to /va
│ │ │ +001f6a40: 723a 2043 7265 6174 6520 6d6f 756e 745f  r: Create mount_
│ │ │ +001f6a50: 696e 666f 2064 6963 7469 6f6e 6172 7920  info dictionary 
│ │ │ +001f6a60: 7661 7269 6162 6c65 270a 2020 7365 745f  variable'.  set_
│ │ │ +001f6a70: 6661 6374 3a0a 2020 2020 6d6f 756e 745f  fact:.    mount_
│ │ │ +001f6a80: 696e 666f 3a20 277b 7b20 6d6f 756e 745f  info: '{{ mount_
│ │ │ +001f6a90: 696e 666f 7c64 6566 6175 6c74 287b 7d29  info|default({})
│ │ │ +001f6aa0: 7c63 6f6d 6269 6e65 287b 6974 656d 2e30  |combine({item.0
│ │ │ +001f6ab0: 3a20 6974 656d 2e31 7d29 207d 7d27 0a20  : item.1}) }}'. 
│ │ │ +001f6ac0: 2077 6974 685f 746f 6765 7468 6572 3a0a   with_together:.
│ │ │ +001f6ad0: 2020 2d20 277b 7b20 6465 7669 6365 5f6e    - '{{ device_n
│ │ │ +001f6ae0: 616d 652e 7374 646f 7574 5f6c 696e 6573  ame.stdout_lines
│ │ │ +001f6af0: 5b30 5d2e 7370 6c69 7428 2920 7c20 6d61  [0].split() | ma
│ │ │ +001f6b00: 7028 2727 6c6f 7765 7227 2729 207c 206c  p(''lower'') | l
│ │ │ +001f6b10: 6973 7420 7d7d 270a 2020 2d20 277b 7b20  ist }}'.  - '{{ 
│ │ │ +001f6b20: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ +001f6b30: 7574 5f6c 696e 6573 5b31 5d2e 7370 6c69  ut_lines[1].spli
│ │ │ +001f6b40: 7428 2920 7c20 6c69 7374 207d 7d27 0a20  t() | list }}'. 
│ │ │ +001f6b50: 2077 6865 6e3a 0a20 202d 2028 206e 6f74   when:.  - ( not
│ │ │ +001f6b60: 2028 2022 6b65 726e 656c 2220 696e 2061   ( "kernel" in a
│ │ │ +001f6b70: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +001f6b80: 6b61 6765 7320 616e 6420 2262 6f6f 7463  kages and "bootc
│ │ │ +001f6b90: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +001f6ba0: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ +001f6bb0: 616e 6420 6e6f 7420 226f 7065 6e73 6869  and not "openshi
│ │ │ +001f6bc0: 6674 2d6b 7562 656c 6574 2220 696e 2061  ft-kubelet" in a
│ │ │ +001f6bd0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +001f6be0: 6b61 6765 7320 616e 6420 226f 7374 7265  kages and "ostre
│ │ │ +001f6bf0: 6522 2069 6e20 616e 7369 626c 655f 7072  e" in ansible_pr
│ │ │ +001f6c00: 6f63 5f63 6d64 6c69 6e65 0a20 2020 2029  oc_cmdline.    )
│ │ │ +001f6c10: 2061 6e64 206e 6f74 2028 2061 6e73 6962   and not ( ansib
│ │ │ +001f6c20: 6c65 5f76 6972 7475 616c 697a 6174 696f  le_virtualizatio
│ │ │ +001f6c30: 6e5f 7479 7065 2069 6e20 5b22 646f 636b  n_type in ["dock
│ │ │ +001f6c40: 6572 222c 2022 6c78 6322 2c20 226f 7065  er", "lxc", "ope
│ │ │ +001f6c50: 6e76 7a22 2c20 2270 6f64 6d61 6e22 2c0a  nvz", "podman",.
│ │ │ +001f6c60: 2020 2020 2263 6f6e 7461 696e 6572 225d      "container"]
│ │ │ +001f6c70: 2029 2029 0a20 202d 2027 222f 7661 7222   ) ).  - '"/var"
│ │ │ +001f6c80: 2069 6e20 616e 7369 626c 655f 6d6f 756e   in ansible_moun
│ │ │ +001f6c90: 7473 207c 206d 6170 2861 7474 7269 6275  ts | map(attribu
│ │ │ +001f6ca0: 7465 3d22 6d6f 756e 7422 2920 7c20 6c69  te="mount") | li
│ │ │ +001f6cb0: 7374 270a 2020 2d20 6465 7669 6365 5f6e  st'.  - device_n
│ │ │ +001f6cc0: 616d 652e 7374 646f 7574 2069 7320 6465  ame.stdout is de
│ │ │ +001f6cd0: 6669 6e65 6420 616e 6420 6465 7669 6365  fined and device
│ │ │ +001f6ce0: 5f6e 616d 652e 7374 646f 7574 5f6c 696e  _name.stdout_lin
│ │ │ +001f6cf0: 6573 2069 7320 6465 6669 6e65 640a 2020  es is defined.  
│ │ │ +001f6d00: 2d20 2864 6576 6963 655f 6e61 6d65 2e73  - (device_name.s
│ │ │ +001f6d10: 7464 6f75 7420 7c20 6c65 6e67 7468 2026  tdout | length &
│ │ │ +001f6d20: 6774 3b20 3029 0a20 2074 6167 733a 0a20  gt; 0).  tags:. 
│ │ │ +001f6d30: 202d 2063 6f6e 6669 6775 7265 5f73 7472   - configure_str
│ │ │ +001f6d40: 6174 6567 790a 2020 2d20 6869 6768 5f64  ategy.  - high_d
│ │ │ +001f6d50: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ +001f6d60: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ +001f6d70: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ +001f6d80: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f  .  - mount_optio
│ │ │ +001f6d90: 6e5f 7661 725f 6e6f 6578 6563 0a20 202d  n_var_noexec.  -
│ │ │ +001f6da0: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ +001f6db0: 640a 0a2d 206e 616d 653a 2027 4164 6420  d..- name: 'Add 
│ │ │ +001f6dc0: 6e6f 6578 6563 204f 7074 696f 6e20 746f  noexec Option to
│ │ │ +001f6dd0: 202f 7661 723a 2049 6620 2f76 6172 206e   /var: If /var n
│ │ │ +001f6de0: 6f74 206d 6f75 6e74 6564 2c20 6372 6166  ot mounted, craf
│ │ │ +001f6df0: 7420 6d6f 756e 745f 696e 666f 206d 616e  t mount_info man
│ │ │ +001f6e00: 7561 6c6c 7927 0a20 2073 6574 5f66 6163  ually'.  set_fac
│ │ │ +001f6e10: 743a 0a20 2020 206d 6f75 6e74 5f69 6e66  t:.    mount_inf
│ │ │ +001f6e20: 6f3a 2027 7b7b 206d 6f75 6e74 5f69 6e66  o: '{{ mount_inf
│ │ │ +001f6e30: 6f7c 6465 6661 756c 7428 7b7d 297c 636f  o|default({})|co
│ │ │ +001f6e40: 6d62 696e 6528 7b69 7465 6d2e 303a 2069  mbine({item.0: i
│ │ │ +001f6e50: 7465 6d2e 317d 2920 7d7d 270a 2020 7769  tem.1}) }}'.  wi
│ │ │ +001f6e60: 7468 5f74 6f67 6574 6865 723a 0a20 202d  th_together:.  -
│ │ │ +001f6e70: 202d 2074 6172 6765 740a 2020 2020 2d20   - target.    - 
│ │ │ +001f6e80: 736f 7572 6365 0a20 2020 202d 2066 7374  source.    - fst
│ │ │ +001f6e90: 7970 650a 2020 2020 2d20 6f70 7469 6f6e  ype.    - option
│ │ │ +001f6ea0: 730a 2020 2d20 2d20 2f76 6172 0a20 2020  s.  - - /var.   
│ │ │ +001f6eb0: 202d 2027 270a 2020 2020 2d20 2727 0a20   - ''.    - ''. 
│ │ │ +001f6ec0: 2020 202d 2064 6566 6175 6c74 730a 2020     - defaults.  
│ │ │ +001f6ed0: 7768 656e 3a0a 2020 2d20 2820 6e6f 7420  when:.  - ( not 
│ │ │ +001f6ee0: 2820 226b 6572 6e65 6c22 2069 6e20 616e  ( "kernel" in an
│ │ │ +001f6ef0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001f6f00: 6167 6573 2061 6e64 2022 626f 6f74 6322  ages and "bootc"
│ │ │ +001f6f10: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001f6f20: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ +001f6f30: 6e64 206e 6f74 2022 6f70 656e 7368 6966  nd not "openshif
│ │ │ +001f6f40: 742d 6b75 6265 6c65 7422 2069 6e20 616e  t-kubelet" in an
│ │ │ +001f6f50: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001f6f60: 6167 6573 2061 6e64 2022 6f73 7472 6565  ages and "ostree
│ │ │ +001f6f70: 2220 696e 2061 6e73 6962 6c65 5f70 726f  " in ansible_pro
│ │ │ +001f6f80: 635f 636d 646c 696e 650a 2020 2020 2920  c_cmdline.    ) 
│ │ │ +001f6f90: 616e 6420 6e6f 7420 2820 616e 7369 626c  and not ( ansibl
│ │ │ +001f6fa0: 655f 7669 7274 7561 6c69 7a61 7469 6f6e  e_virtualization
│ │ │ +001f6fb0: 5f74 7970 6520 696e 205b 2264 6f63 6b65  _type in ["docke
│ │ │ +001f6fc0: 7222 2c20 226c 7863 222c 2022 6f70 656e  r", "lxc", "open
│ │ │ +001f6fd0: 767a 222c 2022 706f 646d 616e 222c 0a20  vz", "podman",. 
│ │ │ +001f6fe0: 2020 2022 636f 6e74 6169 6e65 7222 5d20     "container"] 
│ │ │ +001f6ff0: 2920 290a 2020 2d20 2722 2f76 6172 2220  ) ).  - '"/var" 
│ │ │ +001f7000: 696e 2061 6e73 6962 6c65 5f6d 6f75 6e74  in ansible_mount
│ │ │ +001f7010: 7320 7c20 6d61 7028 6174 7472 6962 7574  s | map(attribut
│ │ │ +001f7020: 653d 226d 6f75 6e74 2229 207c 206c 6973  e="mount") | lis
│ │ │ +001f7030: 7427 0a20 202d 2028 222d 2d66 7374 6162  t'.  - ("--fstab
│ │ │ +001f7040: 2220 7c20 6c65 6e67 7468 203d 3d20 3029  " | length == 0)
│ │ │ +001f7050: 0a20 202d 2064 6576 6963 655f 6e61 6d65  .  - device_name
│ │ │ +001f7060: 2e73 7464 6f75 7420 6973 2064 6566 696e  .stdout is defin
│ │ │ +001f7070: 6564 2061 6e64 2064 6576 6963 655f 6e61  ed and device_na
│ │ │ +001f7080: 6d65 2e73 7464 6f75 745f 6c69 6e65 7320  me.stdout_lines 
│ │ │ +001f7090: 6973 2064 6566 696e 6564 0a20 202d 2028  is defined.  - (
│ │ │ +001f70a0: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ +001f70b0: 7574 207c 206c 656e 6774 6820 3d3d 2030  ut | length == 0
│ │ │ +001f70c0: 290a 2020 7461 6773 3a0a 2020 2d20 636f  ).  tags:.  - co
│ │ │ +001f70d0: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ +001f70e0: 0a20 202d 2068 6967 685f 6469 7372 7570  .  - high_disrup
│ │ │ +001f70f0: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d  tion.  - low_com
│ │ │ +001f7100: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ +001f7110: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ +001f7120: 6d6f 756e 745f 6f70 7469 6f6e 5f76 6172  mount_option_var
│ │ │ +001f7130: 5f6e 6f65 7865 630a 2020 2d20 6e6f 5f72  _noexec.  - no_r
│ │ │ +001f7140: 6562 6f6f 745f 6e65 6564 6564 0a0a 2d20  eboot_needed..- 
│ │ │ +001f7150: 6e61 6d65 3a20 2741 6464 206e 6f65 7865  name: 'Add noexe
│ │ │ +001f7160: 6320 4f70 7469 6f6e 2074 6f20 2f76 6172  c Option to /var
│ │ │ +001f7170: 3a20 4d61 6b65 2073 7572 6520 6e6f 6578  : Make sure noex
│ │ │ +001f7180: 6563 206f 7074 696f 6e20 6973 2070 6172  ec option is par
│ │ │ +001f7190: 7420 6f66 2074 6865 2074 6f20 2f76 6172  t of the to /var
│ │ │ +001f71a0: 0a20 2020 206f 7074 696f 6e73 270a 2020  .    options'.  
│ │ │ +001f71b0: 7365 745f 6661 6374 3a0a 2020 2020 6d6f  set_fact:.    mo
│ │ │ +001f71c0: 756e 745f 696e 666f 3a20 277b 7b20 6d6f  unt_info: '{{ mo
│ │ │ +001f71d0: 756e 745f 696e 666f 207c 2063 6f6d 6269  unt_info | combi
│ │ │ +001f71e0: 6e65 2820 7b27 276f 7074 696f 6e73 2727  ne( {''options''
│ │ │ +001f71f0: 3a27 2727 277e 286d 6f75 6e74 5f69 6e66  :''''~(mount_inf
│ │ │ +001f7200: 6f2e 6f70 7469 6f6e 7320 7c0a 2020 2020  o.options |.    
│ │ │ +001f7210: 2020 6465 6661 756c 7428 2727 2727 2929    default(''''))
│ │ │ +001f7220: 7e28 2727 2c27 2720 6966 2028 6d6f 756e  ~('','' if (moun
│ │ │ +001f7230: 745f 696e 666f 2e6f 7074 696f 6e73 207c  t_info.options |
│ │ │ +001f7240: 2064 6566 6175 6c74 2827 2727 2729 2920   default('''')) 
│ │ │ +001f7250: 656c 7365 2027 2727 2729 7e27 276e 6f65  else '''')~''noe
│ │ │ +001f7260: 7865 6327 270a 2020 2020 2020 7d29 207d  xec''.      }) }
│ │ │ +001f7270: 7d27 0a20 2077 6865 6e3a 0a20 202d 2028  }'.  when:.  - (
│ │ │ +001f7280: 206e 6f74 2028 2022 6b65 726e 656c 2220   not ( "kernel" 
│ │ │ +001f7290: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001f72a0: 2e70 6163 6b61 6765 7320 616e 6420 2262  .packages and "b
│ │ │ +001f72b0: 6f6f 7463 2220 696e 2061 6e73 6962 6c65  ootc" in ansible
│ │ │ +001f72c0: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ +001f72d0: 2020 2020 616e 6420 6e6f 7420 226f 7065      and not "ope
│ │ │ +001f72e0: 6e73 6869 6674 2d6b 7562 656c 6574 2220  nshift-kubelet" 
│ │ │ +001f72f0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001f7300: 2e70 6163 6b61 6765 7320 616e 6420 226f  .packages and "o
│ │ │ +001f7310: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ +001f7320: 655f 7072 6f63 5f63 6d64 6c69 6e65 0a20  e_proc_cmdline. 
│ │ │ +001f7330: 2020 2029 2061 6e64 206e 6f74 2028 2061     ) and not ( a
│ │ │ +001f7340: 6e73 6962 6c65 5f76 6972 7475 616c 697a  nsible_virtualiz
│ │ │ +001f7350: 6174 696f 6e5f 7479 7065 2069 6e20 5b22  ation_type in ["
│ │ │ +001f7360: 646f 636b 6572 222c 2022 6c78 6322 2c20  docker", "lxc", 
│ │ │ +001f7370: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61  "openvz", "podma
│ │ │ +001f7380: 6e22 2c0a 2020 2020 2263 6f6e 7461 696e  n",.    "contain
│ │ │ +001f7390: 6572 225d 2029 2029 0a20 202d 2027 222f  er"] ) ).  - '"/
│ │ │ +001f73a0: 7661 7222 2069 6e20 616e 7369 626c 655f  var" in ansible_
│ │ │ +001f73b0: 6d6f 756e 7473 207c 206d 6170 2861 7474  mounts | map(att
│ │ │ +001f73c0: 7269 6275 7465 3d22 6d6f 756e 7422 2920  ribute="mount") 
│ │ │ +001f73d0: 7c20 6c69 7374 270a 2020 2d20 6d6f 756e  | list'.  - moun
│ │ │ +001f73e0: 745f 696e 666f 2069 7320 6465 6669 6e65  t_info is define
│ │ │ +001f73f0: 6420 616e 6420 226e 6f65 7865 6322 206e  d and "noexec" n
│ │ │ +001f7400: 6f74 2069 6e20 286d 6f75 6e74 5f69 6e66  ot in (mount_inf
│ │ │ +001f7410: 6f2e 6f70 7469 6f6e 7320 7c20 6465 6661  o.options | defa
│ │ │ +001f7420: 756c 7428 2727 2929 0a20 2074 6167 733a  ult('')).  tags:
│ │ │ +001f7430: 0a20 202d 2063 6f6e 6669 6775 7265 5f73  .  - configure_s
│ │ │ +001f7440: 7472 6174 6567 790a 2020 2d20 6869 6768  trategy.  - high
│ │ │ +001f7450: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +001f7460: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ +001f7470: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ +001f7480: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074  ty.  - mount_opt
│ │ │ +001f7490: 696f 6e5f 7661 725f 6e6f 6578 6563 0a20  ion_var_noexec. 
│ │ │ +001f74a0: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ +001f74b0: 6465 640a 0a2d 206e 616d 653a 2027 4164  ded..- name: 'Ad
│ │ │ +001f74c0: 6420 6e6f 6578 6563 204f 7074 696f 6e20  d noexec Option 
│ │ │ +001f74d0: 746f 202f 7661 723a 2045 6e73 7572 6520  to /var: Ensure 
│ │ │ +001f74e0: 2f76 6172 2069 7320 6d6f 756e 7465 6420  /var is mounted 
│ │ │ +001f74f0: 7769 7468 206e 6f65 7865 6320 6f70 7469  with noexec opti
│ │ │ +001f7500: 6f6e 270a 2020 616e 7369 626c 652e 706f  on'.  ansible.po
│ │ │ +001f7510: 7369 782e 6d6f 756e 743a 0a20 2020 2070  six.mount:.    p
│ │ │ +001f7520: 6174 683a 202f 7661 720a 2020 2020 7372  ath: /var.    sr
│ │ │ +001f7530: 633a 2027 7b7b 206d 6f75 6e74 5f69 6e66  c: '{{ mount_inf
│ │ │ +001f7540: 6f2e 736f 7572 6365 207c 2064 6566 6175  o.source | defau
│ │ │ +001f7550: 6c74 2827 2727 2729 207d 7d27 0a20 2020  lt('''') }}'.   
│ │ │ +001f7560: 206f 7074 733a 2027 7b7b 206d 6f75 6e74   opts: '{{ mount
│ │ │ +001f7570: 5f69 6e66 6f2e 6f70 7469 6f6e 7320 7c20  _info.options | 
│ │ │ +001f7580: 6465 6661 756c 7428 2727 2727 2920 7d7d  default('''') }}
│ │ │ +001f7590: 270a 2020 2020 7374 6174 653a 206d 6f75  '.    state: mou
│ │ │ +001f75a0: 6e74 6564 0a20 2020 2066 7374 7970 653a  nted.    fstype:
│ │ │ +001f75b0: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f2e   '{{ mount_info.
│ │ │ +001f75c0: 6673 7479 7065 207c 2064 6566 6175 6c74  fstype | default
│ │ │ +001f75d0: 2827 2727 2729 207d 7d27 0a20 2072 6567  ('''') }}'.  reg
│ │ │ +001f75e0: 6973 7465 723a 206d 6f75 6e74 5f72 6573  ister: mount_res
│ │ │ +001f75f0: 756c 740a 2020 6661 696c 6564 5f77 6865  ult.  failed_whe
│ │ │ +001f7600: 6e3a 0a20 202d 206d 6f75 6e74 5f72 6573  n:.  - mount_res
│ │ │ +001f7610: 756c 7420 6973 2066 6169 6c65 640a 2020  ult is failed.  
│ │ │ +001f7620: 2d20 2727 2774 6172 6765 7420 6973 2062  - '''target is b
│ │ │ +001f7630: 7573 7927 2720 6e6f 7420 696e 2028 6d6f  usy'' not in (mo
│ │ │ +001f7640: 756e 745f 7265 7375 6c74 2e6d 7367 207c  unt_result.msg |
│ │ │ +001f7650: 2064 6566 6175 6c74 2827 2727 2729 2927   default(''''))'
│ │ │ +001f7660: 0a20 202d 2027 2727 616c 7265 6164 7920  .  - '''already 
│ │ │ +001f7670: 6d6f 756e 7465 6427 2720 6e6f 7420 696e  mounted'' not in
│ │ │ +001f7680: 2028 6d6f 756e 745f 7265 7375 6c74 2e6d   (mount_result.m
│ │ │ +001f7690: 7367 207c 2064 6566 6175 6c74 2827 2727  sg | default('''
│ │ │ +001f76a0: 2729 2927 0a20 2077 6865 6e3a 0a20 202d  '))'.  when:.  -
│ │ │ +001f76b0: 2028 206e 6f74 2028 2022 6b65 726e 656c   ( not ( "kernel
│ │ │ +001f76c0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +001f76d0: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ +001f76e0: 2262 6f6f 7463 2220 696e 2061 6e73 6962  "bootc" in ansib
│ │ │ +001f76f0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001f7700: 730a 2020 2020 616e 6420 6e6f 7420 226f  s.    and not "o
│ │ │ +001f7710: 7065 6e73 6869 6674 2d6b 7562 656c 6574  penshift-kubelet
│ │ │ +001f7720: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +001f7730: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ +001f7740: 226f 7374 7265 6522 2069 6e20 616e 7369  "ostree" in ansi
│ │ │ +001f7750: 626c 655f 7072 6f63 5f63 6d64 6c69 6e65  ble_proc_cmdline
│ │ │ +001f7760: 0a20 2020 2029 2061 6e64 206e 6f74 2028  .    ) and not (
│ │ │ +001f7770: 2061 6e73 6962 6c65 5f76 6972 7475 616c   ansible_virtual
│ │ │ +001f7780: 697a 6174 696f 6e5f 7479 7065 2069 6e20  ization_type in 
│ │ │ +001f7790: 5b22 646f 636b 6572 222c 2022 6c78 6322  ["docker", "lxc"
│ │ │ +001f77a0: 2c20 226f 7065 6e76 7a22 2c20 2270 6f64  , "openvz", "pod
│ │ │ +001f77b0: 6d61 6e22 2c0a 2020 2020 2263 6f6e 7461  man",.    "conta
│ │ │ +001f77c0: 696e 6572 225d 2029 2029 0a20 202d 2027  iner"] ) ).  - '
│ │ │ +001f77d0: 222f 7661 7222 2069 6e20 616e 7369 626c  "/var" in ansibl
│ │ │ +001f77e0: 655f 6d6f 756e 7473 207c 206d 6170 2861  e_mounts | map(a
│ │ │ +001f77f0: 7474 7269 6275 7465 3d22 6d6f 756e 7422  ttribute="mount"
│ │ │ +001f7800: 2920 7c20 6c69 7374 270a 2020 2d20 6d6f  ) | list'.  - mo
│ │ │ +001f7810: 756e 745f 696e 666f 2069 7320 6465 6669  unt_info is defi
│ │ │ +001f7820: 6e65 640a 2020 2d20 2864 6576 6963 655f  ned.  - (device_
│ │ │ +001f7830: 6e61 6d65 2e73 7464 6f75 7420 6973 2064  name.stdout is d
│ │ │ +001f7840: 6566 696e 6564 2061 6e64 2028 6465 7669  efined and (devi
│ │ │ +001f7850: 6365 5f6e 616d 652e 7374 646f 7574 207c  ce_name.stdout |
│ │ │ +001f7860: 206c 656e 6774 6820 2667 743b 2030 2929   length > 0))
│ │ │ +001f7870: 206f 7220 2822 2d2d 6673 7461 6222 0a20   or ("--fstab". 
│ │ │ +001f7880: 2020 207c 206c 656e 6774 6820 3d3d 2030     | length == 0
│ │ │ +001f7890: 290a 2020 7461 6773 3a0a 2020 2d20 636f  ).  tags:.  - co
│ │ │ +001f78a0: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ +001f78b0: 0a20 202d 2068 6967 685f 6469 7372 7570  .  - high_disrup
│ │ │ +001f78c0: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d  tion.  - low_com
│ │ │ +001f78d0: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ +001f78e0: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ +001f78f0: 6d6f 756e 745f 6f70 7469 6f6e 5f76 6172  mount_option_var
│ │ │ +001f7900: 5f6e 6f65 7865 630a 2020 2d20 6e6f 5f72  _noexec.  - no_r
│ │ │ +001f7910: 6562 6f6f 745f 6e65 6564 6564 0a3c 2f63  eboot_needed.
│ │ │ +001f7930: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ +001f79d0: 6564 6961 7469 6f6e 2053 6865 6c6c 2073 ediation Shell s │ │ │ +001f79e0: 6372 6970 7420 e287 b23c 2f61 3e3c 6272 cript ...
# R
│ │ │ +001f7aa0: 656d 6564 6961 7469 6f6e 2069 7320 6170  emediation is ap
│ │ │ +001f7ab0: 706c 6963 6162 6c65 206f 6e6c 7920 696e  plicable only in
│ │ │ +001f7ac0: 2063 6572 7461 696e 2070 6c61 7466 6f72   certain platfor
│ │ │ +001f7ad0: 6d73 0a69 6620 2820 2120 2820 7b20 7270  ms.if ( ! ( { rp
│ │ │ +001f7ae0: 6d20 2d2d 7175 6965 7420 2d71 206b 6572  m --quiet -q ker
│ │ │ +001f7af0: 6e65 6c20 3b7d 2026 616d 703b 2661 6d70  nel ;} &&
│ │ │ +001f7b00: 3b20 7b20 7270 6d20 2d2d 7175 6965 7420  ; { rpm --quiet 
│ │ │ +001f7b10: 2d71 2062 6f6f 7463 203b 7d20 2661 6d70  -q bootc ;} &
│ │ │ +001f7b20: 3b26 616d 703b 207b 2021 2072 706d 202d  ;& { ! rpm -
│ │ │ +001f7b30: 2d71 7569 6574 202d 7120 6f70 656e 7368  -quiet -q opensh
│ │ │ +001f7b40: 6966 742d 6b75 6265 6c65 7420 3b7d 2026  ift-kubelet ;} &
│ │ │ +001f7b50: 616d 703b 2661 6d70 3b20 285b 202d 6620  amp;& ([ -f 
│ │ │ +001f7b60: 2f72 756e 2f6f 7374 7265 652d 626f 6f74  /run/ostree-boot
│ │ │ +001f7b70: 6564 205d 207c 7c20 5b20 2d4c 202f 6f73  ed ] || [ -L /os
│ │ │ +001f7b80: 7472 6565 205d 2920 2920 2661 6d70 3b26  tree ]) ) &&
│ │ │ +001f7b90: 616d 703b 2021 2028 205b 202d 6620 2f2e  amp; ! ( [ -f /.
│ │ │ +001f7ba0: 646f 636b 6572 656e 7620 5d20 7c7c 205b  dockerenv ] || [
│ │ │ +001f7bb0: 202d 6620 2f72 756e 2f2e 636f 6e74 6169   -f /run/.contai
│ │ │ +001f7bc0: 6e65 7265 6e76 205d 2029 2029 2026 616d  nerenv ] ) ) &am
│ │ │ +001f7bd0: 703b 2661 6d70 3b20 7b20 2820 6669 6e64  p;& { ( find
│ │ │ +001f7be0: 6d6e 7420 2d2d 6b65 726e 656c 2022 2f76  mnt --kernel "/v
│ │ │ +001f7bf0: 6172 2220 2667 743b 202f 6465 762f 6e75  ar" > /dev/nu
│ │ │ +001f7c00: 6c6c 207c 7c20 6669 6e64 6d6e 7420 2d2d  ll || findmnt --
│ │ │ +001f7c10: 6673 7461 6220 222f 7661 7222 2026 6774  fstab "/var" >
│ │ │ +001f7c20: 3b20 2f64 6576 2f6e 756c 6c20 293b 207d  ; /dev/null ); }
│ │ │ +001f7c30: 3b20 7468 656e 0a0a 6675 6e63 7469 6f6e  ; then..function
│ │ │ +001f7c40: 2070 6572 666f 726d 5f72 656d 6564 6961   perform_remedia
│ │ │ +001f7c50: 7469 6f6e 207b 0a0a 2020 2020 0a20 2020  tion {..    .   
│ │ │ +001f7c60: 2020 2020 2023 2074 6865 206d 6f75 6e74       # the mount
│ │ │ +001f7c70: 2070 6f69 6e74 202f 7661 7220 6861 7320   point /var has 
│ │ │ +001f7c80: 746f 2062 6520 6465 6669 6e65 6420 696e  to be defined in
│ │ │ +001f7c90: 202f 6574 632f 6673 7461 620a 2020 2020   /etc/fstab.    
│ │ │ +001f7ca0: 2020 2020 2320 6265 666f 7265 2074 6869      # before thi
│ │ │ +001f7cb0: 7320 7265 6d65 6469 6174 696f 6e20 6361  s remediation ca
│ │ │ +001f7cc0: 6e20 6265 2065 7865 6375 7465 642e 2049  n be executed. I
│ │ │ +001f7cd0: 6e20 6361 7365 2069 7420 6973 206e 6f74  n case it is not
│ │ │ +001f7ce0: 2064 6566 696e 6564 2c20 7468 650a 2020   defined, the.  
│ │ │ +001f7cf0: 2020 2020 2020 2320 7265 6d65 6469 6174        # remediat
│ │ │ +001f7d00: 696f 6e20 6162 6f72 7473 2061 6e64 206e  ion aborts and n
│ │ │ +001f7d10: 6f20 6368 616e 6765 7320 7265 6761 7264  o changes regard
│ │ │ +001f7d20: 696e 6720 7468 6520 6d6f 756e 7420 706f  ing the mount po
│ │ │ +001f7d30: 696e 7420 6172 6520 646f 6e65 2e0a 2020  int are done..  
│ │ │ +001f7d40: 2020 2020 2020 6d6f 756e 745f 706f 696e        mount_poin
│ │ │ +001f7d50: 745f 6d61 7463 685f 7265 6765 7870 3d22  t_match_regexp="
│ │ │ +001f7d60: 2428 7072 696e 7466 2022 5e5b 5b3a 7370  $(printf "^[[:sp
│ │ │ +001f7d70: 6163 653a 5d5d 2a5b 5e23 5d2e 2a5b 5b3a  ace:]]*[^#].*[[:
│ │ │ +001f7d80: 7370 6163 653a 5d5d 2573 5b5b 3a73 7061  space:]]%s[[:spa
│ │ │ +001f7d90: 6365 3a5d 5d22 2022 2f76 6172 2229 220a  ce:]]" "/var")".
│ │ │ +001f7da0: 0a20 2020 2067 7265 7020 2224 6d6f 756e  .    grep "$moun
│ │ │ +001f7db0: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ +001f7dc0: 6765 7870 2220 2d71 202f 6574 632f 6673  gexp" -q /etc/fs
│ │ │ +001f7dd0: 7461 6220 5c0a 2020 2020 2020 2020 7c7c  tab \.        ||
│ │ │ +001f7de0: 207b 2065 6368 6f20 2254 6865 206d 6f75   { echo "The mou
│ │ │ +001f7df0: 6e74 2070 6f69 6e74 2027 2f76 6172 2720  nt point '/var' 
│ │ │ +001f7e00: 6973 206e 6f74 2065 7665 6e20 696e 202f  is not even in /
│ │ │ +001f7e10: 6574 632f 6673 7461 622c 2073 6f20 7765  etc/fstab, so we
│ │ │ +001f7e20: 2063 616e 2774 2073 6574 2075 7020 6d6f   can't set up mo
│ │ │ +001f7e30: 756e 7420 6f70 7469 6f6e 7322 2026 6774  unt options" >
│ │ │ +001f7e40: 3b26 616d 703b 323b 0a20 2020 2020 2020  ;&2;.       
│ │ │ +001f7e50: 2020 2020 2020 2020 2065 6368 6f20 224e           echo "N
│ │ │ +001f7e60: 6f74 2072 656d 6564 6961 7469 6e67 2c20  ot remediating, 
│ │ │ +001f7e70: 6265 6361 7573 6520 7468 6572 6520 6973  because there is
│ │ │ +001f7e80: 206e 6f20 7265 636f 7264 206f 6620 2f76   no record of /v
│ │ │ +001f7e90: 6172 2069 6e20 2f65 7463 2f66 7374 6162  ar in /etc/fstab
│ │ │ +001f7ea0: 2220 2667 743b 2661 6d70 3b32 3b20 7265  " >&2; re
│ │ │ +001f7eb0: 7475 726e 2031 3b20 7d0a 2020 2020 0a0a  turn 1; }.    ..
│ │ │ +001f7ec0: 0a20 2020 206d 6f75 6e74 5f70 6f69 6e74  .    mount_point
│ │ │ +001f7ed0: 5f6d 6174 6368 5f72 6567 6578 703d 2224  _match_regexp="$
│ │ │ +001f7ee0: 2870 7269 6e74 6620 225e 5b5b 3a73 7061  (printf "^[[:spa
│ │ │ +001f7ef0: 6365 3a5d 5d2a 5b5e 235d 2e2a 5b5b 3a73  ce:]]*[^#].*[[:s
│ │ │ +001f7f00: 7061 6365 3a5d 5d25 735b 5b3a 7370 6163  pace:]]%s[[:spac
│ │ │ +001f7f10: 653a 5d5d 2220 2f76 6172 2922 0a0a 2020  e:]]" /var)"..  
│ │ │ +001f7f20: 2020 2320 4966 2074 6865 206d 6f75 6e74    # If the mount
│ │ │ +001f7f30: 2070 6f69 6e74 2069 7320 6e6f 7420 696e   point is not in
│ │ │ +001f7f40: 202f 6574 632f 6673 7461 622c 2067 6574   /etc/fstab, get
│ │ │ +001f7f50: 2070 7265 7669 6f75 7320 6d6f 756e 7420   previous mount 
│ │ │ +001f7f60: 6f70 7469 6f6e 7320 6672 6f6d 202f 6574  options from /et
│ │ │ +001f7f70: 632f 6d74 6162 0a20 2020 2069 6620 2120  c/mtab.    if ! 
│ │ │ +001f7f80: 6772 6570 202d 7120 2224 6d6f 756e 745f  grep -q "$mount_
│ │ │ +001f7f90: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ +001f7fa0: 7870 2220 2f65 7463 2f66 7374 6162 3b20  xp" /etc/fstab; 
│ │ │ +001f7fb0: 7468 656e 0a20 2020 2020 2020 2023 2072  then.        # r
│ │ │ +001f7fc0: 756e 7469 6d65 206f 7074 7320 7769 7468  untime opts with
│ │ │ +001f7fd0: 6f75 7420 736f 6d65 2061 7574 6f6d 6174  out some automat
│ │ │ +001f7fe0: 6963 206b 6572 6e65 6c2f 7573 6572 7370  ic kernel/usersp
│ │ │ +001f7ff0: 6163 652d 6164 6465 6420 6465 6661 756c  ace-added defaul
│ │ │ +001f8000: 7473 0a20 2020 2020 2020 2070 7265 7669  ts.        previ
│ │ │ +001f8010: 6f75 735f 6d6f 756e 745f 6f70 7473 3d24  ous_mount_opts=$
│ │ │ +001f8020: 2867 7265 7020 2224 6d6f 756e 745f 706f  (grep "$mount_po
│ │ │ +001f8030: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ +001f8040: 2220 2f65 7463 2f6d 7461 6220 7c20 6865  " /etc/mtab | he
│ │ │ +001f8050: 6164 202d 3120 7c20 2061 776b 2027 7b70  ad -1 |  awk '{p
│ │ │ +001f8060: 7269 6e74 2024 347d 2720 5c0a 2020 2020  rint $4}' \.    
│ │ │ +001f8070: 2020 2020 2020 2020 2020 2020 2020 2020                  
│ │ │ +001f8080: 7c20 7365 6420 2d45 2022 732f 2872 777c  | sed -E "s/(rw|
│ │ │ +001f8090: 6465 6661 756c 7473 7c73 6563 6c61 6265  defaults|seclabe
│ │ │ +001f80a0: 6c7c 6e6f 6578 6563 2928 2c7c 2429 2f2f  l|noexec)(,|$)//
│ │ │ +001f80b0: 673b 732f 2c24 2f2f 2229 0a20 2020 2020  g;s/,$//").     
│ │ │ +001f80c0: 2020 205b 2022 2470 7265 7669 6f75 735f     [ "$previous_
│ │ │ +001f80d0: 6d6f 756e 745f 6f70 7473 2220 5d20 2661  mount_opts" ] &a
│ │ │ +001f80e0: 6d70 3b26 616d 703b 2070 7265 7669 6f75  mp;& previou
│ │ │ +001f80f0: 735f 6d6f 756e 745f 6f70 7473 2b3d 222c  s_mount_opts+=",
│ │ │ +001f8100: 220a 2020 2020 2020 2020 2320 496e 2069  ".        # In i
│ │ │ +001f8110: 736f 3936 3630 2066 696c 6573 7973 7465  so9660 filesyste
│ │ │ +001f8120: 6d73 206d 7461 6220 636f 756c 6420 6465  ms mtab could de
│ │ │ +001f8130: 7363 7269 6265 2061 2022 626c 6f63 6b73  scribe a "blocks
│ │ │ +001f8140: 697a 6522 2076 616c 7565 2c20 7468 6973  ize" value, this
│ │ │ +001f8150: 2073 686f 756c 6420 6265 2072 6566 6c65   should be refle
│ │ │ +001f8160: 6374 6564 2069 6e0a 2020 2020 2020 2020  cted in.        
│ │ │ +001f8170: 2320 6673 7461 6220 6173 2022 626c 6f63  # fstab as "bloc
│ │ │ +001f8180: 6b22 2e20 2054 6865 206e 6578 7420 7661  k".  The next va
│ │ │ +001f8190: 7269 6162 6c65 2069 7320 746f 2073 6174  riable is to sat
│ │ │ +001f81a0: 6973 6679 2073 6865 6c6c 6368 6563 6b20  isfy shellcheck 
│ │ │ +001f81b0: 5343 3230 3530 2e0a 2020 2020 2020 2020  SC2050..        
│ │ │ +001f81c0: 6673 5f74 7970 653d 2222 0a20 2020 2020  fs_type="".     
│ │ │ +001f81d0: 2020 2069 6620 5b20 2022 2466 735f 7479     if [  "$fs_ty
│ │ │ +001f81e0: 7065 2220 3d3d 2022 6973 6f39 3636 3022  pe" == "iso9660"
│ │ │ +001f81f0: 205d 203b 2074 6865 6e0a 2020 2020 2020   ] ; then.      
│ │ │ +001f8200: 2020 2020 2020 7072 6576 696f 7573 5f6d        previous_m
│ │ │ +001f8210: 6f75 6e74 5f6f 7074 733d 2428 7365 6420  ount_opts=$(sed 
│ │ │ +001f8220: 2773 2f62 6c6f 636b 7369 7a65 3d2f 626c  's/blocksize=/bl
│ │ │ +001f8230: 6f63 6b3d 2f27 2026 6c74 3b26 6c74 3b26  ock=/' <<&
│ │ │ +001f8240: 6c74 3b20 2224 7072 6576 696f 7573 5f6d  lt; "$previous_m
│ │ │ +001f8250: 6f75 6e74 5f6f 7074 7322 290a 2020 2020  ount_opts").    
│ │ │ +001f8260: 2020 2020 6669 0a20 2020 2020 2020 2065      fi.        e
│ │ │ +001f8270: 6368 6f20 2220 2f76 6172 2020 6465 6661  cho " /var  defa
│ │ │ +001f8280: 756c 7473 2c24 7b70 7265 7669 6f75 735f  ults,${previous_
│ │ │ +001f8290: 6d6f 756e 745f 6f70 7473 7d6e 6f65 7865  mount_opts}noexe
│ │ │ +001f82a0: 6320 3020 3022 2026 6774 3b26 6774 3b20  c 0 0" >> 
│ │ │ +001f82b0: 2f65 7463 2f66 7374 6162 0a20 2020 2023  /etc/fstab.    #
│ │ │ +001f82c0: 2049 6620 7468 6520 6d6f 756e 745f 6f70   If the mount_op
│ │ │ +001f82d0: 7420 6f70 7469 6f6e 2069 7320 6e6f 7420  t option is not 
│ │ │ +001f82e0: 616c 7265 6164 7920 696e 2074 6865 206d  already in the m
│ │ │ +001f82f0: 6f75 6e74 2070 6f69 6e74 2773 202f 6574  ount point's /et
│ │ │ +001f8300: 632f 6673 7461 6220 656e 7472 792c 2061  c/fstab entry, a
│ │ │ +001f8310: 6464 2069 740a 2020 2020 656c 6966 2021  dd it.    elif !
│ │ │ +001f8320: 2067 7265 7020 2224 6d6f 756e 745f 706f   grep "$mount_po
│ │ │ +001f8330: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ +001f8340: 2220 2f65 7463 2f66 7374 6162 207c 2067  " /etc/fstab | g
│ │ │ +001f8350: 7265 7020 2d71 2022 6e6f 6578 6563 223b  rep -q "noexec";
│ │ │ +001f8360: 2074 6865 6e0a 2020 2020 2020 2020 7072   then.        pr
│ │ │ +001f8370: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ +001f8380: 733d 2428 6772 6570 2022 246d 6f75 6e74  s=$(grep "$mount
│ │ │ +001f8390: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ +001f83a0: 6578 7022 202f 6574 632f 6673 7461 6220  exp" /etc/fstab 
│ │ │ +001f83b0: 7c20 6177 6b20 277b 7072 696e 7420 2434  | awk '{print $4
│ │ │ +001f83c0: 7d27 290a 2020 2020 2020 2020 7365 6420  }').        sed 
│ │ │ +001f83d0: 2d69 2022 737c 5c28 247b 6d6f 756e 745f  -i "s|\(${mount_
│ │ │ +001f83e0: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ +001f83f0: 7870 7d2e 2a24 7b70 7265 7669 6f75 735f  xp}.*${previous_
│ │ │ +001f8400: 6d6f 756e 745f 6f70 7473 7d5c 297c 5c31  mount_opts}\)|\1
│ │ │ +001f8410: 2c6e 6f65 7865 637c 2220 2f65 7463 2f66  ,noexec|" /etc/f
│ │ │ +001f8420: 7374 6162 0a20 2020 2066 690a 0a0a 2020  stab.    fi...  
│ │ │ +001f8430: 2020 6966 206d 6b64 6972 202d 7020 222f    if mkdir -p "/
│ │ │ +001f8440: 7661 7222 3b20 7468 656e 0a20 2020 2020  var"; then.     
│ │ │ +001f8450: 2020 2069 6620 6d6f 756e 7470 6f69 6e74     if mountpoint
│ │ │ +001f8460: 202d 7120 222f 7661 7222 3b20 7468 656e   -q "/var"; then
│ │ │ +001f8470: 0a20 2020 2020 2020 2020 2020 206d 6f75  .            mou
│ │ │ +001f8480: 6e74 202d 6f20 7265 6d6f 756e 7420 2d2d  nt -o remount --
│ │ │ +001f8490: 7461 7267 6574 2022 2f76 6172 220a 2020  target "/var".  
│ │ │ +001f84a0: 2020 2020 2020 6669 0a20 2020 2066 690a        fi.    fi.
│ │ │ +001f84b0: 7d0a 0a70 6572 666f 726d 5f72 656d 6564  }..perform_remed
│ │ │ +001f84c0: 6961 7469 6f6e 0a0a 656c 7365 0a20 2020  iation..else.   
│ │ │ +001f84d0: 2026 6774 3b26 616d 703b 3220 6563 686f   >&2 echo
│ │ │ +001f84e0: 2027 5265 6d65 6469 6174 696f 6e20 6973   'Remediation is
│ │ │ +001f84f0: 206e 6f74 2061 7070 6c69 6361 626c 652c   not applicable,
│ │ │ +001f8500: 206e 6f74 6869 6e67 2077 6173 2064 6f6e   nothing was don
│ │ │ +001f8510: 6527 0a66 690a 3c2f 636f 6465 3e3c 2f70  e'.fi.

Remediatio │ │ │ +001f85d0: 6e20 416e 6163 6f6e 6461 2073 6e69 7070 n Anaconda snipp │ │ │ +001f85e0: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ +001f8660: 3c74 723e 3c74 683e 436f 6d70 6c65 7869
Strategy: │ │ │ +001f86f0: 3c74 643e 656e 6162 6c65 3c2f 7464 3e3c < │ │ │ +001f8700: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
Reboo │ │ │ +001f7a70: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ +001f7a80: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Complexi │ │ │ +001f8670: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +001f8680: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Disruption:high
Reboo │ │ │ +001f86c0: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ +001f86d0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
enable
.part /va
│ │ │ +001f8720: 7220 2d2d 6d6f 756e 746f 7074 696f 6e73  r --mountoptions
│ │ │ +001f8730: 3d22 6e6f 6578 6563 220a 3c2f 636f 6465  ="noexec".
R │ │ │ -001f9040: 656d 6564 6961 7469 6f6e 2041 6e61 636f emediation Anaco │ │ │ -001f9050: 6e64 6120 736e 6970 7065 7420 e287 b23c nda snippet ...< │ │ │ -001f9060: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
│ │ │ -001f9130: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -001f9140: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f

│ │ │ -001f9190: 0a70 6172 7420 2f76 6172 202d 2d6d 6f75  .part /var --mou
│ │ │ -001f91a0: 6e74 6f70 7469 6f6e 733d 226e 6f73 7569  ntoptions="nosui
│ │ │ -001f91b0: 6422 0a3c 2f63 6f64 653e 3c2f 7072 653e  d".
│ │ │ -001f91c0: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22 Remediation A │ │ │ -001f9270: 6e73 6962 6c65 2073 6e69 7070 6574 20e2 nsible snippet . │ │ │ -001f9280: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
Complexity:low
Disrup │ │ │ -001f9110: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6869 tion:hi │ │ │ -001f9120: 6768 3c2f 7464 3e3c 2f74 723e 3c74 723e gh
Reboot:false
Strat │ │ │ -001f9160: 6567 793a 3c2f 7468 3e3c 7464 3e65 6e61 egy:ena │ │ │ -001f9170: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
│ │ │ -001f9300: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -001f9320: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 < │ │ │ -001f9350: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>
Complexity:< │ │ │ -001f9310: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ -001f9330: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:high
Reboot:false
St │ │ │ -001f9380: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ -001f9390: 636f 6e66 6967 7572 653c 2f74 643e 3c2f configure
│ │ │ -001f93b0: 3c63 6f64 653e 2d20 6e61 6d65 3a20 4761  - name: Ga
│ │ │ -001f93c0: 7468 6572 2074 6865 2070 6163 6b61 6765  ther the package
│ │ │ -001f93d0: 2066 6163 7473 0a20 2070 6163 6b61 6765   facts.  package
│ │ │ -001f93e0: 5f66 6163 7473 3a0a 2020 2020 6d61 6e61  _facts:.    mana
│ │ │ -001f93f0: 6765 723a 2061 7574 6f0a 2020 7461 6773  ger: auto.  tags
│ │ │ -001f9400: 3a0a 2020 2d20 636f 6e66 6967 7572 655f  :.  - configure_
│ │ │ -001f9410: 7374 7261 7465 6779 0a20 202d 2068 6967  strategy.  - hig
│ │ │ -001f9420: 685f 6469 7372 7570 7469 6f6e 0a20 202d  h_disruption.  -
│ │ │ -001f9430: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ -001f9440: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ -001f9450: 6974 790a 2020 2d20 6d6f 756e 745f 6f70  ity.  - mount_op
│ │ │ -001f9460: 7469 6f6e 5f76 6172 5f6e 6f73 7569 640a  tion_var_nosuid.
│ │ │ -001f9470: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ -001f9480: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741  eded..- name: 'A
│ │ │ -001f9490: 6464 206e 6f73 7569 6420 4f70 7469 6f6e  dd nosuid Option
│ │ │ -001f94a0: 2074 6f20 2f76 6172 3a20 4368 6563 6b20   to /var: Check 
│ │ │ -001f94b0: 696e 666f 726d 6174 696f 6e20 6173 736f  information asso
│ │ │ -001f94c0: 6369 6174 6564 2074 6f20 6d6f 756e 7470  ciated to mountp
│ │ │ -001f94d0: 6f69 6e74 270a 2020 616e 7369 626c 652e  oint'.  ansible.
│ │ │ -001f94e0: 6275 696c 7469 6e2e 636f 6d6d 616e 643a  builtin.command:
│ │ │ -001f94f0: 2066 696e 646d 6e74 202d 2d66 7374 6162   findmnt --fstab
│ │ │ -001f9500: 2027 2f76 6172 270a 2020 7265 6769 7374   '/var'.  regist
│ │ │ -001f9510: 6572 3a20 6465 7669 6365 5f6e 616d 650a  er: device_name.
│ │ │ -001f9520: 2020 6661 696c 6564 5f77 6865 6e3a 2064    failed_when: d
│ │ │ -001f9530: 6576 6963 655f 6e61 6d65 2e72 6320 2667  evice_name.rc &g
│ │ │ -001f9540: 743b 2031 0a20 2063 6861 6e67 6564 5f77  t; 1.  changed_w
│ │ │ -001f9550: 6865 6e3a 2066 616c 7365 0a20 2063 6865  hen: false.  che
│ │ │ -001f9560: 636b 5f6d 6f64 653a 2066 616c 7365 0a20  ck_mode: false. 
│ │ │ -001f9570: 2077 6865 6e3a 0a20 202d 2028 206e 6f74   when:.  - ( not
│ │ │ -001f9580: 2028 2022 6b65 726e 656c 2220 696e 2061   ( "kernel" in a
│ │ │ -001f9590: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001f95a0: 6b61 6765 7320 616e 6420 2262 6f6f 7463  kages and "bootc
│ │ │ -001f95b0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001f95c0: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ -001f95d0: 616e 6420 6e6f 7420 226f 7065 6e73 6869  and not "openshi
│ │ │ -001f95e0: 6674 2d6b 7562 656c 6574 2220 696e 2061  ft-kubelet" in a
│ │ │ -001f95f0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001f9600: 6b61 6765 7320 616e 6420 226f 7374 7265  kages and "ostre
│ │ │ -001f9610: 6522 2069 6e20 616e 7369 626c 655f 7072  e" in ansible_pr
│ │ │ -001f9620: 6f63 5f63 6d64 6c69 6e65 0a20 2020 2029  oc_cmdline.    )
│ │ │ -001f9630: 2061 6e64 206e 6f74 2028 2061 6e73 6962   and not ( ansib
│ │ │ -001f9640: 6c65 5f76 6972 7475 616c 697a 6174 696f  le_virtualizatio
│ │ │ -001f9650: 6e5f 7479 7065 2069 6e20 5b22 646f 636b  n_type in ["dock
│ │ │ -001f9660: 6572 222c 2022 6c78 6322 2c20 226f 7065  er", "lxc", "ope
│ │ │ -001f9670: 6e76 7a22 2c20 2270 6f64 6d61 6e22 2c0a  nvz", "podman",.
│ │ │ -001f9680: 2020 2020 2263 6f6e 7461 696e 6572 225d      "container"]
│ │ │ -001f9690: 2029 2029 0a20 202d 2027 222f 7661 7222   ) ).  - '"/var"
│ │ │ -001f96a0: 2069 6e20 616e 7369 626c 655f 6d6f 756e   in ansible_moun
│ │ │ -001f96b0: 7473 207c 206d 6170 2861 7474 7269 6275  ts | map(attribu
│ │ │ -001f96c0: 7465 3d22 6d6f 756e 7422 2920 7c20 6c69  te="mount") | li
│ │ │ -001f96d0: 7374 270a 2020 7461 6773 3a0a 2020 2d20  st'.  tags:.  - 
│ │ │ -001f96e0: 636f 6e66 6967 7572 655f 7374 7261 7465  configure_strate
│ │ │ -001f96f0: 6779 0a20 202d 2068 6967 685f 6469 7372  gy.  - high_disr
│ │ │ -001f9700: 7570 7469 6f6e 0a20 202d 206c 6f77 5f63  uption.  - low_c
│ │ │ -001f9710: 6f6d 706c 6578 6974 790a 2020 2d20 6d65  omplexity.  - me
│ │ │ -001f9720: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ -001f9730: 2d20 6d6f 756e 745f 6f70 7469 6f6e 5f76  - mount_option_v
│ │ │ -001f9740: 6172 5f6e 6f73 7569 640a 2020 2d20 6e6f  ar_nosuid.  - no
│ │ │ -001f9750: 5f72 6562 6f6f 745f 6e65 6564 6564 0a0a  _reboot_needed..
│ │ │ -001f9760: 2d20 6e61 6d65 3a20 2741 6464 206e 6f73  - name: 'Add nos
│ │ │ -001f9770: 7569 6420 4f70 7469 6f6e 2074 6f20 2f76  uid Option to /v
│ │ │ -001f9780: 6172 3a20 4372 6561 7465 206d 6f75 6e74  ar: Create mount
│ │ │ -001f9790: 5f69 6e66 6f20 6469 6374 696f 6e61 7279  _info dictionary
│ │ │ -001f97a0: 2076 6172 6961 626c 6527 0a20 2073 6574   variable'.  set
│ │ │ -001f97b0: 5f66 6163 743a 0a20 2020 206d 6f75 6e74  _fact:.    mount
│ │ │ -001f97c0: 5f69 6e66 6f3a 2027 7b7b 206d 6f75 6e74  _info: '{{ mount
│ │ │ -001f97d0: 5f69 6e66 6f7c 6465 6661 756c 7428 7b7d  _info|default({}
│ │ │ -001f97e0: 297c 636f 6d62 696e 6528 7b69 7465 6d2e  )|combine({item.
│ │ │ -001f97f0: 303a 2069 7465 6d2e 317d 2920 7d7d 270a  0: item.1}) }}'.
│ │ │ -001f9800: 2020 7769 7468 5f74 6f67 6574 6865 723a    with_together:
│ │ │ -001f9810: 0a20 202d 2027 7b7b 2064 6576 6963 655f  .  - '{{ device_
│ │ │ -001f9820: 6e61 6d65 2e73 7464 6f75 745f 6c69 6e65  name.stdout_line
│ │ │ -001f9830: 735b 305d 2e73 706c 6974 2829 207c 206d  s[0].split() | m
│ │ │ -001f9840: 6170 2827 276c 6f77 6572 2727 2920 7c20  ap(''lower'') | 
│ │ │ -001f9850: 6c69 7374 207d 7d27 0a20 202d 2027 7b7b  list }}'.  - '{{
│ │ │ -001f9860: 2064 6576 6963 655f 6e61 6d65 2e73 7464   device_name.std
│ │ │ -001f9870: 6f75 745f 6c69 6e65 735b 315d 2e73 706c  out_lines[1].spl
│ │ │ -001f9880: 6974 2829 207c 206c 6973 7420 7d7d 270a  it() | list }}'.
│ │ │ -001f9890: 2020 7768 656e 3a0a 2020 2d20 2820 6e6f    when:.  - ( no
│ │ │ -001f98a0: 7420 2820 226b 6572 6e65 6c22 2069 6e20  t ( "kernel" in 
│ │ │ -001f98b0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001f98c0: 636b 6167 6573 2061 6e64 2022 626f 6f74  ckages and "boot
│ │ │ -001f98d0: 6322 2069 6e20 616e 7369 626c 655f 6661  c" in ansible_fa
│ │ │ -001f98e0: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ -001f98f0: 2061 6e64 206e 6f74 2022 6f70 656e 7368   and not "opensh
│ │ │ -001f9900: 6966 742d 6b75 6265 6c65 7422 2069 6e20  ift-kubelet" in 
│ │ │ -001f9910: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001f9920: 636b 6167 6573 2061 6e64 2022 6f73 7472  ckages and "ostr
│ │ │ -001f9930: 6565 2220 696e 2061 6e73 6962 6c65 5f70  ee" in ansible_p
│ │ │ -001f9940: 726f 635f 636d 646c 696e 650a 2020 2020  roc_cmdline.    
│ │ │ -001f9950: 2920 616e 6420 6e6f 7420 2820 616e 7369  ) and not ( ansi
│ │ │ -001f9960: 626c 655f 7669 7274 7561 6c69 7a61 7469  ble_virtualizati
│ │ │ -001f9970: 6f6e 5f74 7970 6520 696e 205b 2264 6f63  on_type in ["doc
│ │ │ -001f9980: 6b65 7222 2c20 226c 7863 222c 2022 6f70  ker", "lxc", "op
│ │ │ -001f9990: 656e 767a 222c 2022 706f 646d 616e 222c  envz", "podman",
│ │ │ -001f99a0: 0a20 2020 2022 636f 6e74 6169 6e65 7222  .    "container"
│ │ │ -001f99b0: 5d20 2920 290a 2020 2d20 2722 2f76 6172  ] ) ).  - '"/var
│ │ │ -001f99c0: 2220 696e 2061 6e73 6962 6c65 5f6d 6f75  " in ansible_mou
│ │ │ -001f99d0: 6e74 7320 7c20 6d61 7028 6174 7472 6962  nts | map(attrib
│ │ │ -001f99e0: 7574 653d 226d 6f75 6e74 2229 207c 206c  ute="mount") | l
│ │ │ -001f99f0: 6973 7427 0a20 202d 2064 6576 6963 655f  ist'.  - device_
│ │ │ -001f9a00: 6e61 6d65 2e73 7464 6f75 7420 6973 2064  name.stdout is d
│ │ │ -001f9a10: 6566 696e 6564 2061 6e64 2064 6576 6963  efined and devic
│ │ │ -001f9a20: 655f 6e61 6d65 2e73 7464 6f75 745f 6c69  e_name.stdout_li
│ │ │ -001f9a30: 6e65 7320 6973 2064 6566 696e 6564 0a20  nes is defined. 
│ │ │ -001f9a40: 202d 2028 6465 7669 6365 5f6e 616d 652e   - (device_name.
│ │ │ -001f9a50: 7374 646f 7574 207c 206c 656e 6774 6820  stdout | length 
│ │ │ -001f9a60: 2667 743b 2030 290a 2020 7461 6773 3a0a  > 0).  tags:.
│ │ │ -001f9a70: 2020 2d20 636f 6e66 6967 7572 655f 7374    - configure_st
│ │ │ -001f9a80: 7261 7465 6779 0a20 202d 2068 6967 685f  rategy.  - high_
│ │ │ -001f9a90: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ -001f9aa0: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ -001f9ab0: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ -001f9ac0: 790a 2020 2d20 6d6f 756e 745f 6f70 7469  y.  - mount_opti
│ │ │ -001f9ad0: 6f6e 5f76 6172 5f6e 6f73 7569 640a 2020  on_var_nosuid.  
│ │ │ -001f9ae0: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ -001f9af0: 6564 0a0a 2d20 6e61 6d65 3a20 2741 6464  ed..- name: 'Add
│ │ │ -001f9b00: 206e 6f73 7569 6420 4f70 7469 6f6e 2074   nosuid Option t
│ │ │ -001f9b10: 6f20 2f76 6172 3a20 4966 202f 7661 7220  o /var: If /var 
│ │ │ -001f9b20: 6e6f 7420 6d6f 756e 7465 642c 2063 7261  not mounted, cra
│ │ │ -001f9b30: 6674 206d 6f75 6e74 5f69 6e66 6f20 6d61  ft mount_info ma
│ │ │ -001f9b40: 6e75 616c 6c79 270a 2020 7365 745f 6661  nually'.  set_fa
│ │ │ -001f9b50: 6374 3a0a 2020 2020 6d6f 756e 745f 696e  ct:.    mount_in
│ │ │ -001f9b60: 666f 3a20 277b 7b20 6d6f 756e 745f 696e  fo: '{{ mount_in
│ │ │ -001f9b70: 666f 7c64 6566 6175 6c74 287b 7d29 7c63  fo|default({})|c
│ │ │ -001f9b80: 6f6d 6269 6e65 287b 6974 656d 2e30 3a20  ombine({item.0: 
│ │ │ -001f9b90: 6974 656d 2e31 7d29 207d 7d27 0a20 2077  item.1}) }}'.  w
│ │ │ -001f9ba0: 6974 685f 746f 6765 7468 6572 3a0a 2020  ith_together:.  
│ │ │ -001f9bb0: 2d20 2d20 7461 7267 6574 0a20 2020 202d  - - target.    -
│ │ │ -001f9bc0: 2073 6f75 7263 650a 2020 2020 2d20 6673   source.    - fs
│ │ │ -001f9bd0: 7479 7065 0a20 2020 202d 206f 7074 696f  type.    - optio
│ │ │ -001f9be0: 6e73 0a20 202d 202d 202f 7661 720a 2020  ns.  - - /var.  
│ │ │ -001f9bf0: 2020 2d20 2727 0a20 2020 202d 2027 270a    - ''.    - ''.
│ │ │ -001f9c00: 2020 2020 2d20 6465 6661 756c 7473 0a20      - defaults. 
│ │ │ -001f9c10: 2077 6865 6e3a 0a20 202d 2028 206e 6f74   when:.  - ( not
│ │ │ -001f9c20: 2028 2022 6b65 726e 656c 2220 696e 2061   ( "kernel" in a
│ │ │ -001f9c30: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001f9c40: 6b61 6765 7320 616e 6420 2262 6f6f 7463  kages and "bootc
│ │ │ -001f9c50: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001f9c60: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ -001f9c70: 616e 6420 6e6f 7420 226f 7065 6e73 6869  and not "openshi
│ │ │ -001f9c80: 6674 2d6b 7562 656c 6574 2220 696e 2061  ft-kubelet" in a
│ │ │ -001f9c90: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001f9ca0: 6b61 6765 7320 616e 6420 226f 7374 7265  kages and "ostre
│ │ │ -001f9cb0: 6522 2069 6e20 616e 7369 626c 655f 7072  e" in ansible_pr
│ │ │ -001f9cc0: 6f63 5f63 6d64 6c69 6e65 0a20 2020 2029  oc_cmdline.    )
│ │ │ -001f9cd0: 2061 6e64 206e 6f74 2028 2061 6e73 6962   and not ( ansib
│ │ │ -001f9ce0: 6c65 5f76 6972 7475 616c 697a 6174 696f  le_virtualizatio
│ │ │ -001f9cf0: 6e5f 7479 7065 2069 6e20 5b22 646f 636b  n_type in ["dock
│ │ │ -001f9d00: 6572 222c 2022 6c78 6322 2c20 226f 7065  er", "lxc", "ope
│ │ │ -001f9d10: 6e76 7a22 2c20 2270 6f64 6d61 6e22 2c0a  nvz", "podman",.
│ │ │ -001f9d20: 2020 2020 2263 6f6e 7461 696e 6572 225d      "container"]
│ │ │ -001f9d30: 2029 2029 0a20 202d 2027 222f 7661 7222   ) ).  - '"/var"
│ │ │ -001f9d40: 2069 6e20 616e 7369 626c 655f 6d6f 756e   in ansible_moun
│ │ │ -001f9d50: 7473 207c 206d 6170 2861 7474 7269 6275  ts | map(attribu
│ │ │ -001f9d60: 7465 3d22 6d6f 756e 7422 2920 7c20 6c69  te="mount") | li
│ │ │ -001f9d70: 7374 270a 2020 2d20 2822 2d2d 6673 7461  st'.  - ("--fsta
│ │ │ -001f9d80: 6222 207c 206c 656e 6774 6820 3d3d 2030  b" | length == 0
│ │ │ -001f9d90: 290a 2020 2d20 6465 7669 6365 5f6e 616d  ).  - device_nam
│ │ │ -001f9da0: 652e 7374 646f 7574 2069 7320 6465 6669  e.stdout is defi
│ │ │ -001f9db0: 6e65 6420 616e 6420 6465 7669 6365 5f6e  ned and device_n
│ │ │ -001f9dc0: 616d 652e 7374 646f 7574 5f6c 696e 6573  ame.stdout_lines
│ │ │ -001f9dd0: 2069 7320 6465 6669 6e65 640a 2020 2d20   is defined.  - 
│ │ │ -001f9de0: 2864 6576 6963 655f 6e61 6d65 2e73 7464  (device_name.std
│ │ │ -001f9df0: 6f75 7420 7c20 6c65 6e67 7468 203d 3d20  out | length == 
│ │ │ -001f9e00: 3029 0a20 2074 6167 733a 0a20 202d 2063  0).  tags:.  - c
│ │ │ -001f9e10: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ -001f9e20: 790a 2020 2d20 6869 6768 5f64 6973 7275  y.  - high_disru
│ │ │ -001f9e30: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f  ption.  - low_co
│ │ │ -001f9e40: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ -001f9e50: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ -001f9e60: 206d 6f75 6e74 5f6f 7074 696f 6e5f 7661   mount_option_va
│ │ │ -001f9e70: 725f 6e6f 7375 6964 0a20 202d 206e 6f5f  r_nosuid.  - no_
│ │ │ -001f9e80: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ -001f9e90: 206e 616d 653a 2027 4164 6420 6e6f 7375   name: 'Add nosu
│ │ │ -001f9ea0: 6964 204f 7074 696f 6e20 746f 202f 7661  id Option to /va
│ │ │ -001f9eb0: 723a 204d 616b 6520 7375 7265 206e 6f73  r: Make sure nos
│ │ │ -001f9ec0: 7569 6420 6f70 7469 6f6e 2069 7320 7061  uid option is pa
│ │ │ -001f9ed0: 7274 206f 6620 7468 6520 746f 202f 7661  rt of the to /va
│ │ │ -001f9ee0: 720a 2020 2020 6f70 7469 6f6e 7327 0a20  r.    options'. 
│ │ │ -001f9ef0: 2073 6574 5f66 6163 743a 0a20 2020 206d   set_fact:.    m
│ │ │ -001f9f00: 6f75 6e74 5f69 6e66 6f3a 2027 7b7b 206d  ount_info: '{{ m
│ │ │ -001f9f10: 6f75 6e74 5f69 6e66 6f20 7c20 636f 6d62  ount_info | comb
│ │ │ -001f9f20: 696e 6528 207b 2727 6f70 7469 6f6e 7327  ine( {''options'
│ │ │ -001f9f30: 273a 2727 2727 7e28 6d6f 756e 745f 696e  ':''''~(mount_in
│ │ │ -001f9f40: 666f 2e6f 7074 696f 6e73 207c 0a20 2020  fo.options |.   
│ │ │ -001f9f50: 2020 2064 6566 6175 6c74 2827 2727 2729     default('''')
│ │ │ -001f9f60: 297e 2827 272c 2727 2069 6620 286d 6f75  )~('','' if (mou
│ │ │ -001f9f70: 6e74 5f69 6e66 6f2e 6f70 7469 6f6e 7320  nt_info.options 
│ │ │ -001f9f80: 7c20 6465 6661 756c 7428 2727 2727 2929  | default(''''))
│ │ │ -001f9f90: 2065 6c73 6520 2727 2727 297e 2727 6e6f   else '''')~''no
│ │ │ -001f9fa0: 7375 6964 2727 0a20 2020 2020 207d 2920  suid''.      }) 
│ │ │ -001f9fb0: 7d7d 270a 2020 7768 656e 3a0a 2020 2d20  }}'.  when:.  - 
│ │ │ -001f9fc0: 2820 6e6f 7420 2820 226b 6572 6e65 6c22  ( not ( "kernel"
│ │ │ -001f9fd0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001f9fe0: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ -001f9ff0: 626f 6f74 6322 2069 6e20 616e 7369 626c  bootc" in ansibl
│ │ │ -001fa000: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001fa010: 0a20 2020 2061 6e64 206e 6f74 2022 6f70  .    and not "op
│ │ │ -001fa020: 656e 7368 6966 742d 6b75 6265 6c65 7422  enshift-kubelet"
│ │ │ -001fa030: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -001fa040: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ -001fa050: 6f73 7472 6565 2220 696e 2061 6e73 6962  ostree" in ansib
│ │ │ -001fa060: 6c65 5f70 726f 635f 636d 646c 696e 650a  le_proc_cmdline.
│ │ │ -001fa070: 2020 2020 2920 616e 6420 6e6f 7420 2820      ) and not ( 
│ │ │ -001fa080: 616e 7369 626c 655f 7669 7274 7561 6c69  ansible_virtuali
│ │ │ -001fa090: 7a61 7469 6f6e 5f74 7970 6520 696e 205b  zation_type in [
│ │ │ -001fa0a0: 2264 6f63 6b65 7222 2c20 226c 7863 222c  "docker", "lxc",
│ │ │ -001fa0b0: 2022 6f70 656e 767a 222c 2022 706f 646d   "openvz", "podm
│ │ │ -001fa0c0: 616e 222c 0a20 2020 2022 636f 6e74 6169  an",.    "contai
│ │ │ -001fa0d0: 6e65 7222 5d20 2920 290a 2020 2d20 2722  ner"] ) ).  - '"
│ │ │ -001fa0e0: 2f76 6172 2220 696e 2061 6e73 6962 6c65  /var" in ansible
│ │ │ -001fa0f0: 5f6d 6f75 6e74 7320 7c20 6d61 7028 6174  _mounts | map(at
│ │ │ -001fa100: 7472 6962 7574 653d 226d 6f75 6e74 2229  tribute="mount")
│ │ │ -001fa110: 207c 206c 6973 7427 0a20 202d 206d 6f75   | list'.  - mou
│ │ │ -001fa120: 6e74 5f69 6e66 6f20 6973 2064 6566 696e  nt_info is defin
│ │ │ -001fa130: 6564 2061 6e64 2022 6e6f 7375 6964 2220  ed and "nosuid" 
│ │ │ -001fa140: 6e6f 7420 696e 2028 6d6f 756e 745f 696e  not in (mount_in
│ │ │ -001fa150: 666f 2e6f 7074 696f 6e73 207c 2064 6566  fo.options | def
│ │ │ -001fa160: 6175 6c74 2827 2729 290a 2020 7461 6773  ault('')).  tags
│ │ │ -001fa170: 3a0a 2020 2d20 636f 6e66 6967 7572 655f  :.  - configure_
│ │ │ -001fa180: 7374 7261 7465 6779 0a20 202d 2068 6967  strategy.  - hig
│ │ │ -001fa190: 685f 6469 7372 7570 7469 6f6e 0a20 202d  h_disruption.  -
│ │ │ -001fa1a0: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ -001fa1b0: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ -001fa1c0: 6974 790a 2020 2d20 6d6f 756e 745f 6f70  ity.  - mount_op
│ │ │ -001fa1d0: 7469 6f6e 5f76 6172 5f6e 6f73 7569 640a  tion_var_nosuid.
│ │ │ -001fa1e0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ -001fa1f0: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741  eded..- name: 'A
│ │ │ -001fa200: 6464 206e 6f73 7569 6420 4f70 7469 6f6e  dd nosuid Option
│ │ │ -001fa210: 2074 6f20 2f76 6172 3a20 456e 7375 7265   to /var: Ensure
│ │ │ -001fa220: 202f 7661 7220 6973 206d 6f75 6e74 6564   /var is mounted
│ │ │ -001fa230: 2077 6974 6820 6e6f 7375 6964 206f 7074   with nosuid opt
│ │ │ -001fa240: 696f 6e27 0a20 2061 6e73 6962 6c65 2e70  ion'.  ansible.p
│ │ │ -001fa250: 6f73 6978 2e6d 6f75 6e74 3a0a 2020 2020  osix.mount:.    
│ │ │ -001fa260: 7061 7468 3a20 2f76 6172 0a20 2020 2073  path: /var.    s
│ │ │ -001fa270: 7263 3a20 277b 7b20 6d6f 756e 745f 696e  rc: '{{ mount_in
│ │ │ -001fa280: 666f 2e73 6f75 7263 6520 7c20 6465 6661  fo.source | defa
│ │ │ -001fa290: 756c 7428 2727 2727 2920 7d7d 270a 2020  ult('''') }}'.  
│ │ │ -001fa2a0: 2020 6f70 7473 3a20 277b 7b20 6d6f 756e    opts: '{{ moun
│ │ │ -001fa2b0: 745f 696e 666f 2e6f 7074 696f 6e73 207c  t_info.options |
│ │ │ -001fa2c0: 2064 6566 6175 6c74 2827 2727 2729 207d   default('''') }
│ │ │ -001fa2d0: 7d27 0a20 2020 2073 7461 7465 3a20 6d6f  }'.    state: mo
│ │ │ -001fa2e0: 756e 7465 640a 2020 2020 6673 7479 7065  unted.    fstype
│ │ │ -001fa2f0: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ -001fa300: 2e66 7374 7970 6520 7c20 6465 6661 756c  .fstype | defaul
│ │ │ -001fa310: 7428 2727 2727 2920 7d7d 270a 2020 7265  t('''') }}'.  re
│ │ │ -001fa320: 6769 7374 6572 3a20 6d6f 756e 745f 7265  gister: mount_re
│ │ │ -001fa330: 7375 6c74 0a20 2066 6169 6c65 645f 7768  sult.  failed_wh
│ │ │ -001fa340: 656e 3a0a 2020 2d20 6d6f 756e 745f 7265  en:.  - mount_re
│ │ │ -001fa350: 7375 6c74 2069 7320 6661 696c 6564 0a20  sult is failed. 
│ │ │ -001fa360: 202d 2027 2727 7461 7267 6574 2069 7320   - '''target is 
│ │ │ -001fa370: 6275 7379 2727 206e 6f74 2069 6e20 286d  busy'' not in (m
│ │ │ -001fa380: 6f75 6e74 5f72 6573 756c 742e 6d73 6720  ount_result.msg 
│ │ │ -001fa390: 7c20 6465 6661 756c 7428 2727 2727 2929  | default(''''))
│ │ │ -001fa3a0: 270a 2020 2d20 2727 2761 6c72 6561 6479  '.  - '''already
│ │ │ -001fa3b0: 206d 6f75 6e74 6564 2727 206e 6f74 2069   mounted'' not i
│ │ │ -001fa3c0: 6e20 286d 6f75 6e74 5f72 6573 756c 742e  n (mount_result.
│ │ │ -001fa3d0: 6d73 6720 7c20 6465 6661 756c 7428 2727  msg | default(''
│ │ │ -001fa3e0: 2727 2929 270a 2020 7768 656e 3a0a 2020  ''))'.  when:.  
│ │ │ -001fa3f0: 2d20 2820 6e6f 7420 2820 226b 6572 6e65  - ( not ( "kerne
│ │ │ -001fa400: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ -001fa410: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ -001fa420: 2022 626f 6f74 6322 2069 6e20 616e 7369   "bootc" in ansi
│ │ │ -001fa430: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001fa440: 6573 0a20 2020 2061 6e64 206e 6f74 2022  es.    and not "
│ │ │ -001fa450: 6f70 656e 7368 6966 742d 6b75 6265 6c65  openshift-kubele
│ │ │ -001fa460: 7422 2069 6e20 616e 7369 626c 655f 6661  t" in ansible_fa
│ │ │ -001fa470: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ -001fa480: 2022 6f73 7472 6565 2220 696e 2061 6e73   "ostree" in ans
│ │ │ -001fa490: 6962 6c65 5f70 726f 635f 636d 646c 696e  ible_proc_cmdlin
│ │ │ -001fa4a0: 650a 2020 2020 2920 616e 6420 6e6f 7420  e.    ) and not 
│ │ │ -001fa4b0: 2820 616e 7369 626c 655f 7669 7274 7561  ( ansible_virtua
│ │ │ -001fa4c0: 6c69 7a61 7469 6f6e 5f74 7970 6520 696e  lization_type in
│ │ │ -001fa4d0: 205b 2264 6f63 6b65 7222 2c20 226c 7863   ["docker", "lxc
│ │ │ -001fa4e0: 222c 2022 6f70 656e 767a 222c 2022 706f  ", "openvz", "po
│ │ │ -001fa4f0: 646d 616e 222c 0a20 2020 2022 636f 6e74  dman",.    "cont
│ │ │ -001fa500: 6169 6e65 7222 5d20 2920 290a 2020 2d20  ainer"] ) ).  - 
│ │ │ -001fa510: 2722 2f76 6172 2220 696e 2061 6e73 6962  '"/var" in ansib
│ │ │ -001fa520: 6c65 5f6d 6f75 6e74 7320 7c20 6d61 7028  le_mounts | map(
│ │ │ -001fa530: 6174 7472 6962 7574 653d 226d 6f75 6e74  attribute="mount
│ │ │ -001fa540: 2229 207c 206c 6973 7427 0a20 202d 206d  ") | list'.  - m
│ │ │ -001fa550: 6f75 6e74 5f69 6e66 6f20 6973 2064 6566  ount_info is def
│ │ │ -001fa560: 696e 6564 0a20 202d 2028 6465 7669 6365  ined.  - (device
│ │ │ -001fa570: 5f6e 616d 652e 7374 646f 7574 2069 7320  _name.stdout is 
│ │ │ -001fa580: 6465 6669 6e65 6420 616e 6420 2864 6576  defined and (dev
│ │ │ -001fa590: 6963 655f 6e61 6d65 2e73 7464 6f75 7420  ice_name.stdout 
│ │ │ -001fa5a0: 7c20 6c65 6e67 7468 2026 6774 3b20 3029  | length > 0)
│ │ │ -001fa5b0: 2920 6f72 2028 222d 2d66 7374 6162 220a  ) or ("--fstab".
│ │ │ -001fa5c0: 2020 2020 7c20 6c65 6e67 7468 203d 3d20      | length == 
│ │ │ -001fa5d0: 3029 0a20 2074 6167 733a 0a20 202d 2063  0).  tags:.  - c
│ │ │ -001fa5e0: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ -001fa5f0: 790a 2020 2d20 6869 6768 5f64 6973 7275  y.  - high_disru
│ │ │ -001fa600: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f  ption.  - low_co
│ │ │ -001fa610: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ -001fa620: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ -001fa630: 206d 6f75 6e74 5f6f 7074 696f 6e5f 7661   mount_option_va
│ │ │ -001fa640: 725f 6e6f 7375 6964 0a20 202d 206e 6f5f  r_nosuid.  - no_
│ │ │ -001fa650: 7265 626f 6f74 5f6e 6565 6465 640a 3c2f  reboot_needed.
Re │ │ │ -001fa710: 6d65 6469 6174 696f 6e20 5368 656c 6c20 mediation Shell │ │ │ -001fa720: 7363 7269 7074 20e2 87b2 3c2f 613e 3c62 script ...
# 
│ │ │ -001fa7e0: 5265 6d65 6469 6174 696f 6e20 6973 2061  Remediation is a
│ │ │ -001fa7f0: 7070 6c69 6361 626c 6520 6f6e 6c79 2069  pplicable only i
│ │ │ -001fa800: 6e20 6365 7274 6169 6e20 706c 6174 666f  n certain platfo
│ │ │ -001fa810: 726d 730a 6966 2028 2021 2028 207b 2072  rms.if ( ! ( { r
│ │ │ -001fa820: 706d 202d 2d71 7569 6574 202d 7120 6b65  pm --quiet -q ke
│ │ │ -001fa830: 726e 656c 203b 7d20 2661 6d70 3b26 616d  rnel ;} &&am
│ │ │ -001fa840: 703b 207b 2072 706d 202d 2d71 7569 6574  p; { rpm --quiet
│ │ │ -001fa850: 202d 7120 626f 6f74 6320 3b7d 2026 616d   -q bootc ;} &am
│ │ │ -001fa860: 703b 2661 6d70 3b20 7b20 2120 7270 6d20  p;& { ! rpm 
│ │ │ -001fa870: 2d2d 7175 6965 7420 2d71 206f 7065 6e73  --quiet -q opens
│ │ │ -001fa880: 6869 6674 2d6b 7562 656c 6574 203b 7d20  hift-kubelet ;} 
│ │ │ -001fa890: 2661 6d70 3b26 616d 703b 2028 5b20 2d66  && ([ -f
│ │ │ -001fa8a0: 202f 7275 6e2f 6f73 7472 6565 2d62 6f6f   /run/ostree-boo
│ │ │ -001fa8b0: 7465 6420 5d20 7c7c 205b 202d 4c20 2f6f  ted ] || [ -L /o
│ │ │ -001fa8c0: 7374 7265 6520 5d29 2029 2026 616d 703b  stree ]) ) &
│ │ │ -001fa8d0: 2661 6d70 3b20 2120 2820 5b20 2d66 202f  & ! ( [ -f /
│ │ │ -001fa8e0: 2e64 6f63 6b65 7265 6e76 205d 207c 7c20  .dockerenv ] || 
│ │ │ -001fa8f0: 5b20 2d66 202f 7275 6e2f 2e63 6f6e 7461  [ -f /run/.conta
│ │ │ -001fa900: 696e 6572 656e 7620 5d20 2920 2920 2661  inerenv ] ) ) &a
│ │ │ -001fa910: 6d70 3b26 616d 703b 207b 2028 2066 696e  mp;& { ( fin
│ │ │ -001fa920: 646d 6e74 202d 2d6b 6572 6e65 6c20 222f  dmnt --kernel "/
│ │ │ -001fa930: 7661 7222 2026 6774 3b20 2f64 6576 2f6e  var" > /dev/n
│ │ │ -001fa940: 756c 6c20 7c7c 2066 696e 646d 6e74 202d  ull || findmnt -
│ │ │ -001fa950: 2d66 7374 6162 2022 2f76 6172 2220 2667  -fstab "/var" &g
│ │ │ -001fa960: 743b 202f 6465 762f 6e75 6c6c 2029 3b20  t; /dev/null ); 
│ │ │ -001fa970: 7d3b 2074 6865 6e0a 0a66 756e 6374 696f  }; then..functio
│ │ │ -001fa980: 6e20 7065 7266 6f72 6d5f 7265 6d65 6469  n perform_remedi
│ │ │ -001fa990: 6174 696f 6e20 7b0a 0a20 2020 200a 2020  ation {..    .  
│ │ │ -001fa9a0: 2020 2020 2020 2320 7468 6520 6d6f 756e        # the moun
│ │ │ -001fa9b0: 7420 706f 696e 7420 2f76 6172 2068 6173  t point /var has
│ │ │ -001fa9c0: 2074 6f20 6265 2064 6566 696e 6564 2069   to be defined i
│ │ │ -001fa9d0: 6e20 2f65 7463 2f66 7374 6162 0a20 2020  n /etc/fstab.   
│ │ │ -001fa9e0: 2020 2020 2023 2062 6566 6f72 6520 7468       # before th
│ │ │ -001fa9f0: 6973 2072 656d 6564 6961 7469 6f6e 2063  is remediation c
│ │ │ -001faa00: 616e 2062 6520 6578 6563 7574 6564 2e20  an be executed. 
│ │ │ -001faa10: 496e 2063 6173 6520 6974 2069 7320 6e6f  In case it is no
│ │ │ -001faa20: 7420 6465 6669 6e65 642c 2074 6865 0a20  t defined, the. 
│ │ │ -001faa30: 2020 2020 2020 2023 2072 656d 6564 6961         # remedia
│ │ │ -001faa40: 7469 6f6e 2061 626f 7274 7320 616e 6420  tion aborts and 
│ │ │ -001faa50: 6e6f 2063 6861 6e67 6573 2072 6567 6172  no changes regar
│ │ │ -001faa60: 6469 6e67 2074 6865 206d 6f75 6e74 2070  ding the mount p
│ │ │ -001faa70: 6f69 6e74 2061 7265 2064 6f6e 652e 0a20  oint are done.. 
│ │ │ -001faa80: 2020 2020 2020 206d 6f75 6e74 5f70 6f69         mount_poi
│ │ │ -001faa90: 6e74 5f6d 6174 6368 5f72 6567 6578 703d  nt_match_regexp=
│ │ │ -001faaa0: 2224 2870 7269 6e74 6620 225e 5b5b 3a73  "$(printf "^[[:s
│ │ │ -001faab0: 7061 6365 3a5d 5d2a 5b5e 235d 2e2a 5b5b  pace:]]*[^#].*[[
│ │ │ -001faac0: 3a73 7061 6365 3a5d 5d25 735b 5b3a 7370  :space:]]%s[[:sp
│ │ │ -001faad0: 6163 653a 5d5d 2220 222f 7661 7222 2922  ace:]]" "/var")"
│ │ │ -001faae0: 0a0a 2020 2020 6772 6570 2022 246d 6f75  ..    grep "$mou
│ │ │ -001faaf0: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ -001fab00: 6567 6578 7022 202d 7120 2f65 7463 2f66  egexp" -q /etc/f
│ │ │ -001fab10: 7374 6162 205c 0a20 2020 2020 2020 207c  stab \.        |
│ │ │ -001fab20: 7c20 7b20 6563 686f 2022 5468 6520 6d6f  | { echo "The mo
│ │ │ -001fab30: 756e 7420 706f 696e 7420 272f 7661 7227  unt point '/var'
│ │ │ -001fab40: 2069 7320 6e6f 7420 6576 656e 2069 6e20   is not even in 
│ │ │ -001fab50: 2f65 7463 2f66 7374 6162 2c20 736f 2077  /etc/fstab, so w
│ │ │ -001fab60: 6520 6361 6e27 7420 7365 7420 7570 206d  e can't set up m
│ │ │ -001fab70: 6f75 6e74 206f 7074 696f 6e73 2220 2667  ount options" &g
│ │ │ -001fab80: 743b 2661 6d70 3b32 3b0a 2020 2020 2020  t;&2;.      
│ │ │ -001fab90: 2020 2020 2020 2020 2020 6563 686f 2022            echo "
│ │ │ -001faba0: 4e6f 7420 7265 6d65 6469 6174 696e 672c  Not remediating,
│ │ │ -001fabb0: 2062 6563 6175 7365 2074 6865 7265 2069   because there i
│ │ │ -001fabc0: 7320 6e6f 2072 6563 6f72 6420 6f66 202f  s no record of /
│ │ │ -001fabd0: 7661 7220 696e 202f 6574 632f 6673 7461  var in /etc/fsta
│ │ │ -001fabe0: 6222 2026 6774 3b26 616d 703b 323b 2072  b" >&2; r
│ │ │ -001fabf0: 6574 7572 6e20 313b 207d 0a20 2020 200a  eturn 1; }.    .
│ │ │ -001fac00: 0a0a 2020 2020 6d6f 756e 745f 706f 696e  ..    mount_poin
│ │ │ -001fac10: 745f 6d61 7463 685f 7265 6765 7870 3d22  t_match_regexp="
│ │ │ -001fac20: 2428 7072 696e 7466 2022 5e5b 5b3a 7370  $(printf "^[[:sp
│ │ │ -001fac30: 6163 653a 5d5d 2a5b 5e23 5d2e 2a5b 5b3a  ace:]]*[^#].*[[:
│ │ │ -001fac40: 7370 6163 653a 5d5d 2573 5b5b 3a73 7061  space:]]%s[[:spa
│ │ │ -001fac50: 6365 3a5d 5d22 202f 7661 7229 220a 0a20  ce:]]" /var)".. 
│ │ │ -001fac60: 2020 2023 2049 6620 7468 6520 6d6f 756e     # If the moun
│ │ │ -001fac70: 7420 706f 696e 7420 6973 206e 6f74 2069  t point is not i
│ │ │ -001fac80: 6e20 2f65 7463 2f66 7374 6162 2c20 6765  n /etc/fstab, ge
│ │ │ -001fac90: 7420 7072 6576 696f 7573 206d 6f75 6e74  t previous mount
│ │ │ -001faca0: 206f 7074 696f 6e73 2066 726f 6d20 2f65   options from /e
│ │ │ -001facb0: 7463 2f6d 7461 620a 2020 2020 6966 2021  tc/mtab.    if !
│ │ │ -001facc0: 2067 7265 7020 2d71 2022 246d 6f75 6e74   grep -q "$mount
│ │ │ -001facd0: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ -001face0: 6578 7022 202f 6574 632f 6673 7461 623b  exp" /etc/fstab;
│ │ │ -001facf0: 2074 6865 6e0a 2020 2020 2020 2020 2320   then.        # 
│ │ │ -001fad00: 7275 6e74 696d 6520 6f70 7473 2077 6974  runtime opts wit
│ │ │ -001fad10: 686f 7574 2073 6f6d 6520 6175 746f 6d61  hout some automa
│ │ │ -001fad20: 7469 6320 6b65 726e 656c 2f75 7365 7273  tic kernel/users
│ │ │ -001fad30: 7061 6365 2d61 6464 6564 2064 6566 6175  pace-added defau
│ │ │ -001fad40: 6c74 730a 2020 2020 2020 2020 7072 6576  lts.        prev
│ │ │ -001fad50: 696f 7573 5f6d 6f75 6e74 5f6f 7074 733d  ious_mount_opts=
│ │ │ -001fad60: 2428 6772 6570 2022 246d 6f75 6e74 5f70  $(grep "$mount_p
│ │ │ -001fad70: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ -001fad80: 7022 202f 6574 632f 6d74 6162 207c 2068  p" /etc/mtab | h
│ │ │ -001fad90: 6561 6420 2d31 207c 2020 6177 6b20 277b  ead -1 |  awk '{
│ │ │ -001fada0: 7072 696e 7420 2434 7d27 205c 0a20 2020  print $4}' \.   
│ │ │ -001fadb0: 2020 2020 2020 2020 2020 2020 2020 2020                  
│ │ │ -001fadc0: 207c 2073 6564 202d 4520 2273 2f28 7277   | sed -E "s/(rw
│ │ │ -001fadd0: 7c64 6566 6175 6c74 737c 7365 636c 6162  |defaults|seclab
│ │ │ -001fade0: 656c 7c6e 6f73 7569 6429 282c 7c24 292f  el|nosuid)(,|$)/
│ │ │ -001fadf0: 2f67 3b73 2f2c 242f 2f22 290a 2020 2020  /g;s/,$//").    
│ │ │ -001fae00: 2020 2020 5b20 2224 7072 6576 696f 7573      [ "$previous
│ │ │ -001fae10: 5f6d 6f75 6e74 5f6f 7074 7322 205d 2026  _mount_opts" ] &
│ │ │ -001fae20: 616d 703b 2661 6d70 3b20 7072 6576 696f  amp;& previo
│ │ │ -001fae30: 7573 5f6d 6f75 6e74 5f6f 7074 732b 3d22  us_mount_opts+="
│ │ │ -001fae40: 2c22 0a20 2020 2020 2020 2023 2049 6e20  ,".        # In 
│ │ │ -001fae50: 6973 6f39 3636 3020 6669 6c65 7379 7374  iso9660 filesyst
│ │ │ -001fae60: 656d 7320 6d74 6162 2063 6f75 6c64 2064  ems mtab could d
│ │ │ -001fae70: 6573 6372 6962 6520 6120 2262 6c6f 636b  escribe a "block
│ │ │ -001fae80: 7369 7a65 2220 7661 6c75 652c 2074 6869  size" value, thi
│ │ │ -001fae90: 7320 7368 6f75 6c64 2062 6520 7265 666c  s should be refl
│ │ │ -001faea0: 6563 7465 6420 696e 0a20 2020 2020 2020  ected in.       
│ │ │ -001faeb0: 2023 2066 7374 6162 2061 7320 2262 6c6f   # fstab as "blo
│ │ │ -001faec0: 636b 222e 2020 5468 6520 6e65 7874 2076  ck".  The next v
│ │ │ -001faed0: 6172 6961 626c 6520 6973 2074 6f20 7361  ariable is to sa
│ │ │ -001faee0: 7469 7366 7920 7368 656c 6c63 6865 636b  tisfy shellcheck
│ │ │ -001faef0: 2053 4332 3035 302e 0a20 2020 2020 2020   SC2050..       
│ │ │ -001faf00: 2066 735f 7479 7065 3d22 220a 2020 2020   fs_type="".    
│ │ │ -001faf10: 2020 2020 6966 205b 2020 2224 6673 5f74      if [  "$fs_t
│ │ │ -001faf20: 7970 6522 203d 3d20 2269 736f 3936 3630  ype" == "iso9660
│ │ │ -001faf30: 2220 5d20 3b20 7468 656e 0a20 2020 2020  " ] ; then.     
│ │ │ -001faf40: 2020 2020 2020 2070 7265 7669 6f75 735f         previous_
│ │ │ -001faf50: 6d6f 756e 745f 6f70 7473 3d24 2873 6564  mount_opts=$(sed
│ │ │ -001faf60: 2027 732f 626c 6f63 6b73 697a 653d 2f62   's/blocksize=/b
│ │ │ -001faf70: 6c6f 636b 3d2f 2720 266c 743b 266c 743b  lock=/' <<
│ │ │ -001faf80: 266c 743b 2022 2470 7265 7669 6f75 735f  < "$previous_
│ │ │ -001faf90: 6d6f 756e 745f 6f70 7473 2229 0a20 2020  mount_opts").   
│ │ │ -001fafa0: 2020 2020 2066 690a 2020 2020 2020 2020       fi.        
│ │ │ -001fafb0: 6563 686f 2022 202f 7661 7220 2064 6566  echo " /var  def
│ │ │ -001fafc0: 6175 6c74 732c 247b 7072 6576 696f 7573  aults,${previous
│ │ │ -001fafd0: 5f6d 6f75 6e74 5f6f 7074 737d 6e6f 7375  _mount_opts}nosu
│ │ │ -001fafe0: 6964 2030 2030 2220 2667 743b 2667 743b  id 0 0" >>
│ │ │ -001faff0: 202f 6574 632f 6673 7461 620a 2020 2020   /etc/fstab.    
│ │ │ -001fb000: 2320 4966 2074 6865 206d 6f75 6e74 5f6f  # If the mount_o
│ │ │ -001fb010: 7074 206f 7074 696f 6e20 6973 206e 6f74  pt option is not
│ │ │ -001fb020: 2061 6c72 6561 6479 2069 6e20 7468 6520   already in the 
│ │ │ -001fb030: 6d6f 756e 7420 706f 696e 7427 7320 2f65  mount point's /e
│ │ │ -001fb040: 7463 2f66 7374 6162 2065 6e74 7279 2c20  tc/fstab entry, 
│ │ │ -001fb050: 6164 6420 6974 0a20 2020 2065 6c69 6620  add it.    elif 
│ │ │ -001fb060: 2120 6772 6570 2022 246d 6f75 6e74 5f70  ! grep "$mount_p
│ │ │ -001fb070: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ -001fb080: 7022 202f 6574 632f 6673 7461 6220 7c20  p" /etc/fstab | 
│ │ │ -001fb090: 6772 6570 202d 7120 226e 6f73 7569 6422  grep -q "nosuid"
│ │ │ -001fb0a0: 3b20 7468 656e 0a20 2020 2020 2020 2070  ; then.        p
│ │ │ -001fb0b0: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ -001fb0c0: 7473 3d24 2867 7265 7020 2224 6d6f 756e  ts=$(grep "$moun
│ │ │ -001fb0d0: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ -001fb0e0: 6765 7870 2220 2f65 7463 2f66 7374 6162  gexp" /etc/fstab
│ │ │ -001fb0f0: 207c 2061 776b 2027 7b70 7269 6e74 2024   | awk '{print $
│ │ │ -001fb100: 347d 2729 0a20 2020 2020 2020 2073 6564  4}').        sed
│ │ │ -001fb110: 202d 6920 2273 7c5c 2824 7b6d 6f75 6e74   -i "s|\(${mount
│ │ │ -001fb120: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ -001fb130: 6578 707d 2e2a 247b 7072 6576 696f 7573  exp}.*${previous
│ │ │ -001fb140: 5f6d 6f75 6e74 5f6f 7074 737d 5c29 7c5c  _mount_opts}\)|\
│ │ │ -001fb150: 312c 6e6f 7375 6964 7c22 202f 6574 632f  1,nosuid|" /etc/
│ │ │ -001fb160: 6673 7461 620a 2020 2020 6669 0a0a 0a20  fstab.    fi... 
│ │ │ -001fb170: 2020 2069 6620 6d6b 6469 7220 2d70 2022     if mkdir -p "
│ │ │ -001fb180: 2f76 6172 223b 2074 6865 6e0a 2020 2020  /var"; then.    
│ │ │ -001fb190: 2020 2020 6966 206d 6f75 6e74 706f 696e      if mountpoin
│ │ │ -001fb1a0: 7420 2d71 2022 2f76 6172 223b 2074 6865  t -q "/var"; the
│ │ │ -001fb1b0: 6e0a 2020 2020 2020 2020 2020 2020 6d6f  n.            mo
│ │ │ -001fb1c0: 756e 7420 2d6f 2072 656d 6f75 6e74 202d  unt -o remount -
│ │ │ -001fb1d0: 2d74 6172 6765 7420 222f 7661 7222 0a20  -target "/var". 
│ │ │ -001fb1e0: 2020 2020 2020 2066 690a 2020 2020 6669         fi.    fi
│ │ │ -001fb1f0: 0a7d 0a0a 7065 7266 6f72 6d5f 7265 6d65  .}..perform_reme
│ │ │ -001fb200: 6469 6174 696f 6e0a 0a65 6c73 650a 2020  diation..else.  
│ │ │ -001fb210: 2020 2667 743b 2661 6d70 3b32 2065 6368    >&2 ech
│ │ │ -001fb220: 6f20 2752 656d 6564 6961 7469 6f6e 2069  o 'Remediation i
│ │ │ -001fb230: 7320 6e6f 7420 6170 706c 6963 6162 6c65  s not applicable
│ │ │ -001fb240: 2c20 6e6f 7468 696e 6720 7761 7320 646f  , nothing was do
│ │ │ -001fb250: 6e65 270a 6669 0a3c 2f63 6f64 653e 3c2f  ne'.fi.
Rebo │ │ │ -001fa7b0: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ -001fa7c0: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
│ │ │ +001f90f0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 < │ │ │ +001f9130: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +001f9140: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false< │ │ │ +001f9180: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
- name: Gather
│ │ │ +001f91a0: 2074 6865 2070 6163 6b61 6765 2066 6163   the package fac
│ │ │ +001f91b0: 7473 0a20 2070 6163 6b61 6765 5f66 6163  ts.  package_fac
│ │ │ +001f91c0: 7473 3a0a 2020 2020 6d61 6e61 6765 723a  ts:.    manager:
│ │ │ +001f91d0: 2061 7574 6f0a 2020 7461 6773 3a0a 2020   auto.  tags:.  
│ │ │ +001f91e0: 2d20 636f 6e66 6967 7572 655f 7374 7261  - configure_stra
│ │ │ +001f91f0: 7465 6779 0a20 202d 2068 6967 685f 6469  tegy.  - high_di
│ │ │ +001f9200: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ +001f9210: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +001f9220: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ +001f9230: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e    - mount_option
│ │ │ +001f9240: 5f76 6172 5f6e 6f73 7569 640a 2020 2d20  _var_nosuid.  - 
│ │ │ +001f9250: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ +001f9260: 0a0a 2d20 6e61 6d65 3a20 2741 6464 206e  ..- name: 'Add n
│ │ │ +001f9270: 6f73 7569 6420 4f70 7469 6f6e 2074 6f20  osuid Option to 
│ │ │ +001f9280: 2f76 6172 3a20 4368 6563 6b20 696e 666f  /var: Check info
│ │ │ +001f9290: 726d 6174 696f 6e20 6173 736f 6369 6174  rmation associat
│ │ │ +001f92a0: 6564 2074 6f20 6d6f 756e 7470 6f69 6e74  ed to mountpoint
│ │ │ +001f92b0: 270a 2020 616e 7369 626c 652e 6275 696c  '.  ansible.buil
│ │ │ +001f92c0: 7469 6e2e 636f 6d6d 616e 643a 2066 696e  tin.command: fin
│ │ │ +001f92d0: 646d 6e74 202d 2d66 7374 6162 2027 2f76  dmnt --fstab '/v
│ │ │ +001f92e0: 6172 270a 2020 7265 6769 7374 6572 3a20  ar'.  register: 
│ │ │ +001f92f0: 6465 7669 6365 5f6e 616d 650a 2020 6661  device_name.  fa
│ │ │ +001f9300: 696c 6564 5f77 6865 6e3a 2064 6576 6963  iled_when: devic
│ │ │ +001f9310: 655f 6e61 6d65 2e72 6320 2667 743b 2031  e_name.rc > 1
│ │ │ +001f9320: 0a20 2063 6861 6e67 6564 5f77 6865 6e3a  .  changed_when:
│ │ │ +001f9330: 2066 616c 7365 0a20 2063 6865 636b 5f6d   false.  check_m
│ │ │ +001f9340: 6f64 653a 2066 616c 7365 0a20 2077 6865  ode: false.  whe
│ │ │ +001f9350: 6e3a 0a20 202d 2028 206e 6f74 2028 2022  n:.  - ( not ( "
│ │ │ +001f9360: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ +001f9370: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001f9380: 7320 616e 6420 2262 6f6f 7463 2220 696e  s and "bootc" in
│ │ │ +001f9390: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001f93a0: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ +001f93b0: 6e6f 7420 226f 7065 6e73 6869 6674 2d6b  not "openshift-k
│ │ │ +001f93c0: 7562 656c 6574 2220 696e 2061 6e73 6962  ubelet" in ansib
│ │ │ +001f93d0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001f93e0: 7320 616e 6420 226f 7374 7265 6522 2069  s and "ostree" i
│ │ │ +001f93f0: 6e20 616e 7369 626c 655f 7072 6f63 5f63  n ansible_proc_c
│ │ │ +001f9400: 6d64 6c69 6e65 0a20 2020 2029 2061 6e64  mdline.    ) and
│ │ │ +001f9410: 206e 6f74 2028 2061 6e73 6962 6c65 5f76   not ( ansible_v
│ │ │ +001f9420: 6972 7475 616c 697a 6174 696f 6e5f 7479  irtualization_ty
│ │ │ +001f9430: 7065 2069 6e20 5b22 646f 636b 6572 222c  pe in ["docker",
│ │ │ +001f9440: 2022 6c78 6322 2c20 226f 7065 6e76 7a22   "lxc", "openvz"
│ │ │ +001f9450: 2c20 2270 6f64 6d61 6e22 2c0a 2020 2020  , "podman",.    
│ │ │ +001f9460: 2263 6f6e 7461 696e 6572 225d 2029 2029  "container"] ) )
│ │ │ +001f9470: 0a20 202d 2027 222f 7661 7222 2069 6e20  .  - '"/var" in 
│ │ │ +001f9480: 616e 7369 626c 655f 6d6f 756e 7473 207c  ansible_mounts |
│ │ │ +001f9490: 206d 6170 2861 7474 7269 6275 7465 3d22   map(attribute="
│ │ │ +001f94a0: 6d6f 756e 7422 2920 7c20 6c69 7374 270a  mount") | list'.
│ │ │ +001f94b0: 2020 7461 6773 3a0a 2020 2d20 636f 6e66    tags:.  - conf
│ │ │ +001f94c0: 6967 7572 655f 7374 7261 7465 6779 0a20  igure_strategy. 
│ │ │ +001f94d0: 202d 2068 6967 685f 6469 7372 7570 7469   - high_disrupti
│ │ │ +001f94e0: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c  on.  - low_compl
│ │ │ +001f94f0: 6578 6974 790a 2020 2d20 6d65 6469 756d  exity.  - medium
│ │ │ +001f9500: 5f73 6576 6572 6974 790a 2020 2d20 6d6f  _severity.  - mo
│ │ │ +001f9510: 756e 745f 6f70 7469 6f6e 5f76 6172 5f6e  unt_option_var_n
│ │ │ +001f9520: 6f73 7569 640a 2020 2d20 6e6f 5f72 6562  osuid.  - no_reb
│ │ │ +001f9530: 6f6f 745f 6e65 6564 6564 0a0a 2d20 6e61  oot_needed..- na
│ │ │ +001f9540: 6d65 3a20 2741 6464 206e 6f73 7569 6420  me: 'Add nosuid 
│ │ │ +001f9550: 4f70 7469 6f6e 2074 6f20 2f76 6172 3a20  Option to /var: 
│ │ │ +001f9560: 4372 6561 7465 206d 6f75 6e74 5f69 6e66  Create mount_inf
│ │ │ +001f9570: 6f20 6469 6374 696f 6e61 7279 2076 6172  o dictionary var
│ │ │ +001f9580: 6961 626c 6527 0a20 2073 6574 5f66 6163  iable'.  set_fac
│ │ │ +001f9590: 743a 0a20 2020 206d 6f75 6e74 5f69 6e66  t:.    mount_inf
│ │ │ +001f95a0: 6f3a 2027 7b7b 206d 6f75 6e74 5f69 6e66  o: '{{ mount_inf
│ │ │ +001f95b0: 6f7c 6465 6661 756c 7428 7b7d 297c 636f  o|default({})|co
│ │ │ +001f95c0: 6d62 696e 6528 7b69 7465 6d2e 303a 2069  mbine({item.0: i
│ │ │ +001f95d0: 7465 6d2e 317d 2920 7d7d 270a 2020 7769  tem.1}) }}'.  wi
│ │ │ +001f95e0: 7468 5f74 6f67 6574 6865 723a 0a20 202d  th_together:.  -
│ │ │ +001f95f0: 2027 7b7b 2064 6576 6963 655f 6e61 6d65   '{{ device_name
│ │ │ +001f9600: 2e73 7464 6f75 745f 6c69 6e65 735b 305d  .stdout_lines[0]
│ │ │ +001f9610: 2e73 706c 6974 2829 207c 206d 6170 2827  .split() | map('
│ │ │ +001f9620: 276c 6f77 6572 2727 2920 7c20 6c69 7374  'lower'') | list
│ │ │ +001f9630: 207d 7d27 0a20 202d 2027 7b7b 2064 6576   }}'.  - '{{ dev
│ │ │ +001f9640: 6963 655f 6e61 6d65 2e73 7464 6f75 745f  ice_name.stdout_
│ │ │ +001f9650: 6c69 6e65 735b 315d 2e73 706c 6974 2829  lines[1].split()
│ │ │ +001f9660: 207c 206c 6973 7420 7d7d 270a 2020 7768   | list }}'.  wh
│ │ │ +001f9670: 656e 3a0a 2020 2d20 2820 6e6f 7420 2820  en:.  - ( not ( 
│ │ │ +001f9680: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ +001f9690: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001f96a0: 6573 2061 6e64 2022 626f 6f74 6322 2069  es and "bootc" i
│ │ │ +001f96b0: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001f96c0: 7061 636b 6167 6573 0a20 2020 2061 6e64  packages.    and
│ │ │ +001f96d0: 206e 6f74 2022 6f70 656e 7368 6966 742d   not "openshift-
│ │ │ +001f96e0: 6b75 6265 6c65 7422 2069 6e20 616e 7369  kubelet" in ansi
│ │ │ +001f96f0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001f9700: 6573 2061 6e64 2022 6f73 7472 6565 2220  es and "ostree" 
│ │ │ +001f9710: 696e 2061 6e73 6962 6c65 5f70 726f 635f  in ansible_proc_
│ │ │ +001f9720: 636d 646c 696e 650a 2020 2020 2920 616e  cmdline.    ) an
│ │ │ +001f9730: 6420 6e6f 7420 2820 616e 7369 626c 655f  d not ( ansible_
│ │ │ +001f9740: 7669 7274 7561 6c69 7a61 7469 6f6e 5f74  virtualization_t
│ │ │ +001f9750: 7970 6520 696e 205b 2264 6f63 6b65 7222  ype in ["docker"
│ │ │ +001f9760: 2c20 226c 7863 222c 2022 6f70 656e 767a  , "lxc", "openvz
│ │ │ +001f9770: 222c 2022 706f 646d 616e 222c 0a20 2020  ", "podman",.   
│ │ │ +001f9780: 2022 636f 6e74 6169 6e65 7222 5d20 2920   "container"] ) 
│ │ │ +001f9790: 290a 2020 2d20 2722 2f76 6172 2220 696e  ).  - '"/var" in
│ │ │ +001f97a0: 2061 6e73 6962 6c65 5f6d 6f75 6e74 7320   ansible_mounts 
│ │ │ +001f97b0: 7c20 6d61 7028 6174 7472 6962 7574 653d  | map(attribute=
│ │ │ +001f97c0: 226d 6f75 6e74 2229 207c 206c 6973 7427  "mount") | list'
│ │ │ +001f97d0: 0a20 202d 2064 6576 6963 655f 6e61 6d65  .  - device_name
│ │ │ +001f97e0: 2e73 7464 6f75 7420 6973 2064 6566 696e  .stdout is defin
│ │ │ +001f97f0: 6564 2061 6e64 2064 6576 6963 655f 6e61  ed and device_na
│ │ │ +001f9800: 6d65 2e73 7464 6f75 745f 6c69 6e65 7320  me.stdout_lines 
│ │ │ +001f9810: 6973 2064 6566 696e 6564 0a20 202d 2028  is defined.  - (
│ │ │ +001f9820: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ +001f9830: 7574 207c 206c 656e 6774 6820 2667 743b  ut | length >
│ │ │ +001f9840: 2030 290a 2020 7461 6773 3a0a 2020 2d20   0).  tags:.  - 
│ │ │ +001f9850: 636f 6e66 6967 7572 655f 7374 7261 7465  configure_strate
│ │ │ +001f9860: 6779 0a20 202d 2068 6967 685f 6469 7372  gy.  - high_disr
│ │ │ +001f9870: 7570 7469 6f6e 0a20 202d 206c 6f77 5f63  uption.  - low_c
│ │ │ +001f9880: 6f6d 706c 6578 6974 790a 2020 2d20 6d65  omplexity.  - me
│ │ │ +001f9890: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ +001f98a0: 2d20 6d6f 756e 745f 6f70 7469 6f6e 5f76  - mount_option_v
│ │ │ +001f98b0: 6172 5f6e 6f73 7569 640a 2020 2d20 6e6f  ar_nosuid.  - no
│ │ │ +001f98c0: 5f72 6562 6f6f 745f 6e65 6564 6564 0a0a  _reboot_needed..
│ │ │ +001f98d0: 2d20 6e61 6d65 3a20 2741 6464 206e 6f73  - name: 'Add nos
│ │ │ +001f98e0: 7569 6420 4f70 7469 6f6e 2074 6f20 2f76  uid Option to /v
│ │ │ +001f98f0: 6172 3a20 4966 202f 7661 7220 6e6f 7420  ar: If /var not 
│ │ │ +001f9900: 6d6f 756e 7465 642c 2063 7261 6674 206d  mounted, craft m
│ │ │ +001f9910: 6f75 6e74 5f69 6e66 6f20 6d61 6e75 616c  ount_info manual
│ │ │ +001f9920: 6c79 270a 2020 7365 745f 6661 6374 3a0a  ly'.  set_fact:.
│ │ │ +001f9930: 2020 2020 6d6f 756e 745f 696e 666f 3a20      mount_info: 
│ │ │ +001f9940: 277b 7b20 6d6f 756e 745f 696e 666f 7c64  '{{ mount_info|d
│ │ │ +001f9950: 6566 6175 6c74 287b 7d29 7c63 6f6d 6269  efault({})|combi
│ │ │ +001f9960: 6e65 287b 6974 656d 2e30 3a20 6974 656d  ne({item.0: item
│ │ │ +001f9970: 2e31 7d29 207d 7d27 0a20 2077 6974 685f  .1}) }}'.  with_
│ │ │ +001f9980: 746f 6765 7468 6572 3a0a 2020 2d20 2d20  together:.  - - 
│ │ │ +001f9990: 7461 7267 6574 0a20 2020 202d 2073 6f75  target.    - sou
│ │ │ +001f99a0: 7263 650a 2020 2020 2d20 6673 7479 7065  rce.    - fstype
│ │ │ +001f99b0: 0a20 2020 202d 206f 7074 696f 6e73 0a20  .    - options. 
│ │ │ +001f99c0: 202d 202d 202f 7661 720a 2020 2020 2d20   - - /var.    - 
│ │ │ +001f99d0: 2727 0a20 2020 202d 2027 270a 2020 2020  ''.    - ''.    
│ │ │ +001f99e0: 2d20 6465 6661 756c 7473 0a20 2077 6865  - defaults.  whe
│ │ │ +001f99f0: 6e3a 0a20 202d 2028 206e 6f74 2028 2022  n:.  - ( not ( "
│ │ │ +001f9a00: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ +001f9a10: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001f9a20: 7320 616e 6420 2262 6f6f 7463 2220 696e  s and "bootc" in
│ │ │ +001f9a30: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +001f9a40: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ +001f9a50: 6e6f 7420 226f 7065 6e73 6869 6674 2d6b  not "openshift-k
│ │ │ +001f9a60: 7562 656c 6574 2220 696e 2061 6e73 6962  ubelet" in ansib
│ │ │ +001f9a70: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +001f9a80: 7320 616e 6420 226f 7374 7265 6522 2069  s and "ostree" i
│ │ │ +001f9a90: 6e20 616e 7369 626c 655f 7072 6f63 5f63  n ansible_proc_c
│ │ │ +001f9aa0: 6d64 6c69 6e65 0a20 2020 2029 2061 6e64  mdline.    ) and
│ │ │ +001f9ab0: 206e 6f74 2028 2061 6e73 6962 6c65 5f76   not ( ansible_v
│ │ │ +001f9ac0: 6972 7475 616c 697a 6174 696f 6e5f 7479  irtualization_ty
│ │ │ +001f9ad0: 7065 2069 6e20 5b22 646f 636b 6572 222c  pe in ["docker",
│ │ │ +001f9ae0: 2022 6c78 6322 2c20 226f 7065 6e76 7a22   "lxc", "openvz"
│ │ │ +001f9af0: 2c20 2270 6f64 6d61 6e22 2c0a 2020 2020  , "podman",.    
│ │ │ +001f9b00: 2263 6f6e 7461 696e 6572 225d 2029 2029  "container"] ) )
│ │ │ +001f9b10: 0a20 202d 2027 222f 7661 7222 2069 6e20  .  - '"/var" in 
│ │ │ +001f9b20: 616e 7369 626c 655f 6d6f 756e 7473 207c  ansible_mounts |
│ │ │ +001f9b30: 206d 6170 2861 7474 7269 6275 7465 3d22   map(attribute="
│ │ │ +001f9b40: 6d6f 756e 7422 2920 7c20 6c69 7374 270a  mount") | list'.
│ │ │ +001f9b50: 2020 2d20 2822 2d2d 6673 7461 6222 207c    - ("--fstab" |
│ │ │ +001f9b60: 206c 656e 6774 6820 3d3d 2030 290a 2020   length == 0).  
│ │ │ +001f9b70: 2d20 6465 7669 6365 5f6e 616d 652e 7374  - device_name.st
│ │ │ +001f9b80: 646f 7574 2069 7320 6465 6669 6e65 6420  dout is defined 
│ │ │ +001f9b90: 616e 6420 6465 7669 6365 5f6e 616d 652e  and device_name.
│ │ │ +001f9ba0: 7374 646f 7574 5f6c 696e 6573 2069 7320  stdout_lines is 
│ │ │ +001f9bb0: 6465 6669 6e65 640a 2020 2d20 2864 6576  defined.  - (dev
│ │ │ +001f9bc0: 6963 655f 6e61 6d65 2e73 7464 6f75 7420  ice_name.stdout 
│ │ │ +001f9bd0: 7c20 6c65 6e67 7468 203d 3d20 3029 0a20  | length == 0). 
│ │ │ +001f9be0: 2074 6167 733a 0a20 202d 2063 6f6e 6669   tags:.  - confi
│ │ │ +001f9bf0: 6775 7265 5f73 7472 6174 6567 790a 2020  gure_strategy.  
│ │ │ +001f9c00: 2d20 6869 6768 5f64 6973 7275 7074 696f  - high_disruptio
│ │ │ +001f9c10: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65  n.  - low_comple
│ │ │ +001f9c20: 7869 7479 0a20 202d 206d 6564 6975 6d5f  xity.  - medium_
│ │ │ +001f9c30: 7365 7665 7269 7479 0a20 202d 206d 6f75  severity.  - mou
│ │ │ +001f9c40: 6e74 5f6f 7074 696f 6e5f 7661 725f 6e6f  nt_option_var_no
│ │ │ +001f9c50: 7375 6964 0a20 202d 206e 6f5f 7265 626f  suid.  - no_rebo
│ │ │ +001f9c60: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d  ot_needed..- nam
│ │ │ +001f9c70: 653a 2027 4164 6420 6e6f 7375 6964 204f  e: 'Add nosuid O
│ │ │ +001f9c80: 7074 696f 6e20 746f 202f 7661 723a 204d  ption to /var: M
│ │ │ +001f9c90: 616b 6520 7375 7265 206e 6f73 7569 6420  ake sure nosuid 
│ │ │ +001f9ca0: 6f70 7469 6f6e 2069 7320 7061 7274 206f  option is part o
│ │ │ +001f9cb0: 6620 7468 6520 746f 202f 7661 720a 2020  f the to /var.  
│ │ │ +001f9cc0: 2020 6f70 7469 6f6e 7327 0a20 2073 6574    options'.  set
│ │ │ +001f9cd0: 5f66 6163 743a 0a20 2020 206d 6f75 6e74  _fact:.    mount
│ │ │ +001f9ce0: 5f69 6e66 6f3a 2027 7b7b 206d 6f75 6e74  _info: '{{ mount
│ │ │ +001f9cf0: 5f69 6e66 6f20 7c20 636f 6d62 696e 6528  _info | combine(
│ │ │ +001f9d00: 207b 2727 6f70 7469 6f6e 7327 273a 2727   {''options'':''
│ │ │ +001f9d10: 2727 7e28 6d6f 756e 745f 696e 666f 2e6f  ''~(mount_info.o
│ │ │ +001f9d20: 7074 696f 6e73 207c 0a20 2020 2020 2064  ptions |.      d
│ │ │ +001f9d30: 6566 6175 6c74 2827 2727 2729 297e 2827  efault(''''))~('
│ │ │ +001f9d40: 272c 2727 2069 6620 286d 6f75 6e74 5f69  ','' if (mount_i
│ │ │ +001f9d50: 6e66 6f2e 6f70 7469 6f6e 7320 7c20 6465  nfo.options | de
│ │ │ +001f9d60: 6661 756c 7428 2727 2727 2929 2065 6c73  fault('''')) els
│ │ │ +001f9d70: 6520 2727 2727 297e 2727 6e6f 7375 6964  e '''')~''nosuid
│ │ │ +001f9d80: 2727 0a20 2020 2020 207d 2920 7d7d 270a  ''.      }) }}'.
│ │ │ +001f9d90: 2020 7768 656e 3a0a 2020 2d20 2820 6e6f    when:.  - ( no
│ │ │ +001f9da0: 7420 2820 226b 6572 6e65 6c22 2069 6e20  t ( "kernel" in 
│ │ │ +001f9db0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001f9dc0: 636b 6167 6573 2061 6e64 2022 626f 6f74  ckages and "boot
│ │ │ +001f9dd0: 6322 2069 6e20 616e 7369 626c 655f 6661  c" in ansible_fa
│ │ │ +001f9de0: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ +001f9df0: 2061 6e64 206e 6f74 2022 6f70 656e 7368   and not "opensh
│ │ │ +001f9e00: 6966 742d 6b75 6265 6c65 7422 2069 6e20  ift-kubelet" in 
│ │ │ +001f9e10: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001f9e20: 636b 6167 6573 2061 6e64 2022 6f73 7472  ckages and "ostr
│ │ │ +001f9e30: 6565 2220 696e 2061 6e73 6962 6c65 5f70  ee" in ansible_p
│ │ │ +001f9e40: 726f 635f 636d 646c 696e 650a 2020 2020  roc_cmdline.    
│ │ │ +001f9e50: 2920 616e 6420 6e6f 7420 2820 616e 7369  ) and not ( ansi
│ │ │ +001f9e60: 626c 655f 7669 7274 7561 6c69 7a61 7469  ble_virtualizati
│ │ │ +001f9e70: 6f6e 5f74 7970 6520 696e 205b 2264 6f63  on_type in ["doc
│ │ │ +001f9e80: 6b65 7222 2c20 226c 7863 222c 2022 6f70  ker", "lxc", "op
│ │ │ +001f9e90: 656e 767a 222c 2022 706f 646d 616e 222c  envz", "podman",
│ │ │ +001f9ea0: 0a20 2020 2022 636f 6e74 6169 6e65 7222  .    "container"
│ │ │ +001f9eb0: 5d20 2920 290a 2020 2d20 2722 2f76 6172  ] ) ).  - '"/var
│ │ │ +001f9ec0: 2220 696e 2061 6e73 6962 6c65 5f6d 6f75  " in ansible_mou
│ │ │ +001f9ed0: 6e74 7320 7c20 6d61 7028 6174 7472 6962  nts | map(attrib
│ │ │ +001f9ee0: 7574 653d 226d 6f75 6e74 2229 207c 206c  ute="mount") | l
│ │ │ +001f9ef0: 6973 7427 0a20 202d 206d 6f75 6e74 5f69  ist'.  - mount_i
│ │ │ +001f9f00: 6e66 6f20 6973 2064 6566 696e 6564 2061  nfo is defined a
│ │ │ +001f9f10: 6e64 2022 6e6f 7375 6964 2220 6e6f 7420  nd "nosuid" not 
│ │ │ +001f9f20: 696e 2028 6d6f 756e 745f 696e 666f 2e6f  in (mount_info.o
│ │ │ +001f9f30: 7074 696f 6e73 207c 2064 6566 6175 6c74  ptions | default
│ │ │ +001f9f40: 2827 2729 290a 2020 7461 6773 3a0a 2020  ('')).  tags:.  
│ │ │ +001f9f50: 2d20 636f 6e66 6967 7572 655f 7374 7261  - configure_stra
│ │ │ +001f9f60: 7465 6779 0a20 202d 2068 6967 685f 6469  tegy.  - high_di
│ │ │ +001f9f70: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ +001f9f80: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +001f9f90: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ +001f9fa0: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e    - mount_option
│ │ │ +001f9fb0: 5f76 6172 5f6e 6f73 7569 640a 2020 2d20  _var_nosuid.  - 
│ │ │ +001f9fc0: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ +001f9fd0: 0a0a 2d20 6e61 6d65 3a20 2741 6464 206e  ..- name: 'Add n
│ │ │ +001f9fe0: 6f73 7569 6420 4f70 7469 6f6e 2074 6f20  osuid Option to 
│ │ │ +001f9ff0: 2f76 6172 3a20 456e 7375 7265 202f 7661  /var: Ensure /va
│ │ │ +001fa000: 7220 6973 206d 6f75 6e74 6564 2077 6974  r is mounted wit
│ │ │ +001fa010: 6820 6e6f 7375 6964 206f 7074 696f 6e27  h nosuid option'
│ │ │ +001fa020: 0a20 2061 6e73 6962 6c65 2e70 6f73 6978  .  ansible.posix
│ │ │ +001fa030: 2e6d 6f75 6e74 3a0a 2020 2020 7061 7468  .mount:.    path
│ │ │ +001fa040: 3a20 2f76 6172 0a20 2020 2073 7263 3a20  : /var.    src: 
│ │ │ +001fa050: 277b 7b20 6d6f 756e 745f 696e 666f 2e73  '{{ mount_info.s
│ │ │ +001fa060: 6f75 7263 6520 7c20 6465 6661 756c 7428  ource | default(
│ │ │ +001fa070: 2727 2727 2920 7d7d 270a 2020 2020 6f70  '''') }}'.    op
│ │ │ +001fa080: 7473 3a20 277b 7b20 6d6f 756e 745f 696e  ts: '{{ mount_in
│ │ │ +001fa090: 666f 2e6f 7074 696f 6e73 207c 2064 6566  fo.options | def
│ │ │ +001fa0a0: 6175 6c74 2827 2727 2729 207d 7d27 0a20  ault('''') }}'. 
│ │ │ +001fa0b0: 2020 2073 7461 7465 3a20 6d6f 756e 7465     state: mounte
│ │ │ +001fa0c0: 640a 2020 2020 6673 7479 7065 3a20 277b  d.    fstype: '{
│ │ │ +001fa0d0: 7b20 6d6f 756e 745f 696e 666f 2e66 7374  { mount_info.fst
│ │ │ +001fa0e0: 7970 6520 7c20 6465 6661 756c 7428 2727  ype | default(''
│ │ │ +001fa0f0: 2727 2920 7d7d 270a 2020 7265 6769 7374  '') }}'.  regist
│ │ │ +001fa100: 6572 3a20 6d6f 756e 745f 7265 7375 6c74  er: mount_result
│ │ │ +001fa110: 0a20 2066 6169 6c65 645f 7768 656e 3a0a  .  failed_when:.
│ │ │ +001fa120: 2020 2d20 6d6f 756e 745f 7265 7375 6c74    - mount_result
│ │ │ +001fa130: 2069 7320 6661 696c 6564 0a20 202d 2027   is failed.  - '
│ │ │ +001fa140: 2727 7461 7267 6574 2069 7320 6275 7379  ''target is busy
│ │ │ +001fa150: 2727 206e 6f74 2069 6e20 286d 6f75 6e74  '' not in (mount
│ │ │ +001fa160: 5f72 6573 756c 742e 6d73 6720 7c20 6465  _result.msg | de
│ │ │ +001fa170: 6661 756c 7428 2727 2727 2929 270a 2020  fault(''''))'.  
│ │ │ +001fa180: 2d20 2727 2761 6c72 6561 6479 206d 6f75  - '''already mou
│ │ │ +001fa190: 6e74 6564 2727 206e 6f74 2069 6e20 286d  nted'' not in (m
│ │ │ +001fa1a0: 6f75 6e74 5f72 6573 756c 742e 6d73 6720  ount_result.msg 
│ │ │ +001fa1b0: 7c20 6465 6661 756c 7428 2727 2727 2929  | default(''''))
│ │ │ +001fa1c0: 270a 2020 7768 656e 3a0a 2020 2d20 2820  '.  when:.  - ( 
│ │ │ +001fa1d0: 6e6f 7420 2820 226b 6572 6e65 6c22 2069  not ( "kernel" i
│ │ │ +001fa1e0: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001fa1f0: 7061 636b 6167 6573 2061 6e64 2022 626f  packages and "bo
│ │ │ +001fa200: 6f74 6322 2069 6e20 616e 7369 626c 655f  otc" in ansible_
│ │ │ +001fa210: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ +001fa220: 2020 2061 6e64 206e 6f74 2022 6f70 656e     and not "open
│ │ │ +001fa230: 7368 6966 742d 6b75 6265 6c65 7422 2069  shift-kubelet" i
│ │ │ +001fa240: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +001fa250: 7061 636b 6167 6573 2061 6e64 2022 6f73  packages and "os
│ │ │ +001fa260: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ +001fa270: 5f70 726f 635f 636d 646c 696e 650a 2020  _proc_cmdline.  
│ │ │ +001fa280: 2020 2920 616e 6420 6e6f 7420 2820 616e    ) and not ( an
│ │ │ +001fa290: 7369 626c 655f 7669 7274 7561 6c69 7a61  sible_virtualiza
│ │ │ +001fa2a0: 7469 6f6e 5f74 7970 6520 696e 205b 2264  tion_type in ["d
│ │ │ +001fa2b0: 6f63 6b65 7222 2c20 226c 7863 222c 2022  ocker", "lxc", "
│ │ │ +001fa2c0: 6f70 656e 767a 222c 2022 706f 646d 616e  openvz", "podman
│ │ │ +001fa2d0: 222c 0a20 2020 2022 636f 6e74 6169 6e65  ",.    "containe
│ │ │ +001fa2e0: 7222 5d20 2920 290a 2020 2d20 2722 2f76  r"] ) ).  - '"/v
│ │ │ +001fa2f0: 6172 2220 696e 2061 6e73 6962 6c65 5f6d  ar" in ansible_m
│ │ │ +001fa300: 6f75 6e74 7320 7c20 6d61 7028 6174 7472  ounts | map(attr
│ │ │ +001fa310: 6962 7574 653d 226d 6f75 6e74 2229 207c  ibute="mount") |
│ │ │ +001fa320: 206c 6973 7427 0a20 202d 206d 6f75 6e74   list'.  - mount
│ │ │ +001fa330: 5f69 6e66 6f20 6973 2064 6566 696e 6564  _info is defined
│ │ │ +001fa340: 0a20 202d 2028 6465 7669 6365 5f6e 616d  .  - (device_nam
│ │ │ +001fa350: 652e 7374 646f 7574 2069 7320 6465 6669  e.stdout is defi
│ │ │ +001fa360: 6e65 6420 616e 6420 2864 6576 6963 655f  ned and (device_
│ │ │ +001fa370: 6e61 6d65 2e73 7464 6f75 7420 7c20 6c65  name.stdout | le
│ │ │ +001fa380: 6e67 7468 2026 6774 3b20 3029 2920 6f72  ngth > 0)) or
│ │ │ +001fa390: 2028 222d 2d66 7374 6162 220a 2020 2020   ("--fstab".    
│ │ │ +001fa3a0: 7c20 6c65 6e67 7468 203d 3d20 3029 0a20  | length == 0). 
│ │ │ +001fa3b0: 2074 6167 733a 0a20 202d 2063 6f6e 6669   tags:.  - confi
│ │ │ +001fa3c0: 6775 7265 5f73 7472 6174 6567 790a 2020  gure_strategy.  
│ │ │ +001fa3d0: 2d20 6869 6768 5f64 6973 7275 7074 696f  - high_disruptio
│ │ │ +001fa3e0: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65  n.  - low_comple
│ │ │ +001fa3f0: 7869 7479 0a20 202d 206d 6564 6975 6d5f  xity.  - medium_
│ │ │ +001fa400: 7365 7665 7269 7479 0a20 202d 206d 6f75  severity.  - mou
│ │ │ +001fa410: 6e74 5f6f 7074 696f 6e5f 7661 725f 6e6f  nt_option_var_no
│ │ │ +001fa420: 7375 6964 0a20 202d 206e 6f5f 7265 626f  suid.  - no_rebo
│ │ │ +001fa430: 6f74 5f6e 6565 6465 640a 3c2f 636f 6465  ot_needed.
Remedi │ │ │ +001fa4f0: 6174 696f 6e20 5368 656c 6c20 7363 7269 ation Shell scri │ │ │ +001fa500: 7074 20e2 87b2 3c2f 613e 3c62 723e 3c64 pt ...
│ │ │ +001fa580: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c
│ │ │ +001f90e0: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +001f9110: 696f 6e3a 3c2f 7468 3e3c 7464 3e68 6967 ion:hig │ │ │ +001f9120: 683c 2f74 643e 3c2f 7472 3e3c 7472 3e3c h
Strate │ │ │ +001f9160: 6779 3a3c 2f74 683e 3c74 643e 636f 6e66 gy:conf │ │ │ +001f9170: 6967 7572 653c 2f74 643e 3c2f 7472 3e3c igure
Reboot:< │ │ │ +001fa590: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>false
< │ │ │ +001fa5b0: 7072 653e 3c63 6f64 653e 2320 5265 6d65 pre># Reme │ │ │ +001fa5c0: 6469 6174 696f 6e20 6973 2061 7070 6c69 diation is appli │ │ │ +001fa5d0: 6361 626c 6520 6f6e 6c79 2069 6e20 6365 cable only in ce │ │ │ +001fa5e0: 7274 6169 6e20 706c 6174 666f 726d 730a rtain platforms. │ │ │ +001fa5f0: 6966 2028 2021 2028 207b 2072 706d 202d if ( ! ( { rpm - │ │ │ +001fa600: 2d71 7569 6574 202d 7120 6b65 726e 656c -quiet -q kernel │ │ │ +001fa610: 203b 7d20 2661 6d70 3b26 616d 703b 207b ;} && { │ │ │ +001fa620: 2072 706d 202d 2d71 7569 6574 202d 7120 rpm --quiet -q │ │ │ +001fa630: 626f 6f74 6320 3b7d 2026 616d 703b 2661 bootc ;} &&a │ │ │ +001fa640: 6d70 3b20 7b20 2120 7270 6d20 2d2d 7175 mp; { ! rpm --qu │ │ │ +001fa650: 6965 7420 2d71 206f 7065 6e73 6869 6674 iet -q openshift │ │ │ +001fa660: 2d6b 7562 656c 6574 203b 7d20 2661 6d70 -kubelet ;} & │ │ │ +001fa670: 3b26 616d 703b 2028 5b20 2d66 202f 7275 ;& ([ -f /ru │ │ │ +001fa680: 6e2f 6f73 7472 6565 2d62 6f6f 7465 6420 n/ostree-booted │ │ │ +001fa690: 5d20 7c7c 205b 202d 4c20 2f6f 7374 7265 ] || [ -L /ostre │ │ │ +001fa6a0: 6520 5d29 2029 2026 616d 703b 2661 6d70 e ]) ) && │ │ │ +001fa6b0: 3b20 2120 2820 5b20 2d66 202f 2e64 6f63 ; ! ( [ -f /.doc │ │ │ +001fa6c0: 6b65 7265 6e76 205d 207c 7c20 5b20 2d66 kerenv ] || [ -f │ │ │ +001fa6d0: 202f 7275 6e2f 2e63 6f6e 7461 696e 6572 /run/.container │ │ │ +001fa6e0: 656e 7620 5d20 2920 2920 2661 6d70 3b26 env ] ) ) && │ │ │ +001fa6f0: 616d 703b 207b 2028 2066 696e 646d 6e74 amp; { ( findmnt │ │ │ +001fa700: 202d 2d6b 6572 6e65 6c20 222f 7661 7222 --kernel "/var" │ │ │ +001fa710: 2026 6774 3b20 2f64 6576 2f6e 756c 6c20 > /dev/null │ │ │ +001fa720: 7c7c 2066 696e 646d 6e74 202d 2d66 7374 || findmnt --fst │ │ │ +001fa730: 6162 2022 2f76 6172 2220 2667 743b 202f ab "/var" > / │ │ │ +001fa740: 6465 762f 6e75 6c6c 2029 3b20 7d3b 2074 dev/null ); }; t │ │ │ +001fa750: 6865 6e0a 0a66 756e 6374 696f 6e20 7065 hen..function pe │ │ │ +001fa760: 7266 6f72 6d5f 7265 6d65 6469 6174 696f rform_remediatio │ │ │ +001fa770: 6e20 7b0a 0a20 2020 200a 2020 2020 2020 n {.. . │ │ │ +001fa780: 2020 2320 7468 6520 6d6f 756e 7420 706f # the mount po │ │ │ +001fa790: 696e 7420 2f76 6172 2068 6173 2074 6f20 int /var has to │ │ │ +001fa7a0: 6265 2064 6566 696e 6564 2069 6e20 2f65 be defined in /e │ │ │ +001fa7b0: 7463 2f66 7374 6162 0a20 2020 2020 2020 tc/fstab. │ │ │ +001fa7c0: 2023 2062 6566 6f72 6520 7468 6973 2072 # before this r │ │ │ +001fa7d0: 656d 6564 6961 7469 6f6e 2063 616e 2062 emediation can b │ │ │ +001fa7e0: 6520 6578 6563 7574 6564 2e20 496e 2063 e executed. In c │ │ │ +001fa7f0: 6173 6520 6974 2069 7320 6e6f 7420 6465 ase it is not de │ │ │ +001fa800: 6669 6e65 642c 2074 6865 0a20 2020 2020 fined, the. │ │ │ +001fa810: 2020 2023 2072 656d 6564 6961 7469 6f6e # remediation │ │ │ +001fa820: 2061 626f 7274 7320 616e 6420 6e6f 2063 aborts and no c │ │ │ +001fa830: 6861 6e67 6573 2072 6567 6172 6469 6e67 hanges regarding │ │ │ +001fa840: 2074 6865 206d 6f75 6e74 2070 6f69 6e74 the mount point │ │ │ +001fa850: 2061 7265 2064 6f6e 652e 0a20 2020 2020 are done.. │ │ │ +001fa860: 2020 206d 6f75 6e74 5f70 6f69 6e74 5f6d mount_point_m │ │ │ +001fa870: 6174 6368 5f72 6567 6578 703d 2224 2870 atch_regexp="$(p │ │ │ +001fa880: 7269 6e74 6620 225e 5b5b 3a73 7061 6365 rintf "^[[:space │ │ │ +001fa890: 3a5d 5d2a 5b5e 235d 2e2a 5b5b 3a73 7061 :]]*[^#].*[[:spa │ │ │ +001fa8a0: 6365 3a5d 5d25 735b 5b3a 7370 6163 653a ce:]]%s[[:space: │ │ │ +001fa8b0: 5d5d 2220 222f 7661 7222 2922 0a0a 2020 ]]" "/var")".. │ │ │ +001fa8c0: 2020 6772 6570 2022 246d 6f75 6e74 5f70 grep "$mount_p │ │ │ +001fa8d0: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578 oint_match_regex │ │ │ +001fa8e0: 7022 202d 7120 2f65 7463 2f66 7374 6162 p" -q /etc/fstab │ │ │ +001fa8f0: 205c 0a20 2020 2020 2020 207c 7c20 7b20 \. || { │ │ │ +001fa900: 6563 686f 2022 5468 6520 6d6f 756e 7420 echo "The mount │ │ │ +001fa910: 706f 696e 7420 272f 7661 7227 2069 7320 point '/var' is │ │ │ +001fa920: 6e6f 7420 6576 656e 2069 6e20 2f65 7463 not even in /etc │ │ │ +001fa930: 2f66 7374 6162 2c20 736f 2077 6520 6361 /fstab, so we ca │ │ │ +001fa940: 6e27 7420 7365 7420 7570 206d 6f75 6e74 n't set up mount │ │ │ +001fa950: 206f 7074 696f 6e73 2220 2667 743b 2661 options" >&a │ │ │ +001fa960: 6d70 3b32 3b0a 2020 2020 2020 2020 2020 mp;2;. │ │ │ +001fa970: 2020 2020 2020 6563 686f 2022 4e6f 7420 echo "Not │ │ │ +001fa980: 7265 6d65 6469 6174 696e 672c 2062 6563 remediating, bec │ │ │ +001fa990: 6175 7365 2074 6865 7265 2069 7320 6e6f ause there is no │ │ │ +001fa9a0: 2072 6563 6f72 6420 6f66 202f 7661 7220 record of /var │ │ │ +001fa9b0: 696e 202f 6574 632f 6673 7461 6222 2026 in /etc/fstab" & │ │ │ +001fa9c0: 6774 3b26 616d 703b 323b 2072 6574 7572 gt;&2; retur │ │ │ +001fa9d0: 6e20 313b 207d 0a20 2020 200a 0a0a 2020 n 1; }. ... │ │ │ +001fa9e0: 2020 6d6f 756e 745f 706f 696e 745f 6d61 mount_point_ma │ │ │ +001fa9f0: 7463 685f 7265 6765 7870 3d22 2428 7072 tch_regexp="$(pr │ │ │ +001faa00: 696e 7466 2022 5e5b 5b3a 7370 6163 653a intf "^[[:space: │ │ │ +001faa10: 5d5d 2a5b 5e23 5d2e 2a5b 5b3a 7370 6163 ]]*[^#].*[[:spac │ │ │ +001faa20: 653a 5d5d 2573 5b5b 3a73 7061 6365 3a5d e:]]%s[[:space:] │ │ │ +001faa30: 5d22 202f 7661 7229 220a 0a20 2020 2023 ]" /var)".. # │ │ │ +001faa40: 2049 6620 7468 6520 6d6f 756e 7420 706f If the mount po │ │ │ +001faa50: 696e 7420 6973 206e 6f74 2069 6e20 2f65 int is not in /e │ │ │ +001faa60: 7463 2f66 7374 6162 2c20 6765 7420 7072 tc/fstab, get pr │ │ │ +001faa70: 6576 696f 7573 206d 6f75 6e74 206f 7074 evious mount opt │ │ │ +001faa80: 696f 6e73 2066 726f 6d20 2f65 7463 2f6d ions from /etc/m │ │ │ +001faa90: 7461 620a 2020 2020 6966 2021 2067 7265 tab. if ! gre │ │ │ +001faaa0: 7020 2d71 2022 246d 6f75 6e74 5f70 6f69 p -q "$mount_poi │ │ │ +001faab0: 6e74 5f6d 6174 6368 5f72 6567 6578 7022 nt_match_regexp" │ │ │ +001faac0: 202f 6574 632f 6673 7461 623b 2074 6865 /etc/fstab; the │ │ │ +001faad0: 6e0a 2020 2020 2020 2020 2320 7275 6e74 n. # runt │ │ │ +001faae0: 696d 6520 6f70 7473 2077 6974 686f 7574 ime opts without │ │ │ +001faaf0: 2073 6f6d 6520 6175 746f 6d61 7469 6320 some automatic │ │ │ +001fab00: 6b65 726e 656c 2f75 7365 7273 7061 6365 kernel/userspace │ │ │ +001fab10: 2d61 6464 6564 2064 6566 6175 6c74 730a -added defaults. │ │ │ +001fab20: 2020 2020 2020 2020 7072 6576 696f 7573 previous │ │ │ +001fab30: 5f6d 6f75 6e74 5f6f 7074 733d 2428 6772 _mount_opts=$(gr │ │ │ +001fab40: 6570 2022 246d 6f75 6e74 5f70 6f69 6e74 ep "$mount_point │ │ │ +001fab50: 5f6d 6174 6368 5f72 6567 6578 7022 202f _match_regexp" / │ │ │ +001fab60: 6574 632f 6d74 6162 207c 2068 6561 6420 etc/mtab | head │ │ │ +001fab70: 2d31 207c 2020 6177 6b20 277b 7072 696e -1 | awk '{prin │ │ │ +001fab80: 7420 2434 7d27 205c 0a20 2020 2020 2020 t $4}' \. │ │ │ +001fab90: 2020 2020 2020 2020 2020 2020 207c 2073 | s │ │ │ +001faba0: 6564 202d 4520 2273 2f28 7277 7c64 6566 ed -E "s/(rw|def │ │ │ +001fabb0: 6175 6c74 737c 7365 636c 6162 656c 7c6e aults|seclabel|n │ │ │ +001fabc0: 6f73 7569 6429 282c 7c24 292f 2f67 3b73 osuid)(,|$)//g;s │ │ │ +001fabd0: 2f2c 242f 2f22 290a 2020 2020 2020 2020 /,$//"). │ │ │ +001fabe0: 5b20 2224 7072 6576 696f 7573 5f6d 6f75 [ "$previous_mou │ │ │ +001fabf0: 6e74 5f6f 7074 7322 205d 2026 616d 703b nt_opts" ] & │ │ │ +001fac00: 2661 6d70 3b20 7072 6576 696f 7573 5f6d & previous_m │ │ │ +001fac10: 6f75 6e74 5f6f 7074 732b 3d22 2c22 0a20 ount_opts+=",". │ │ │ +001fac20: 2020 2020 2020 2023 2049 6e20 6973 6f39 # In iso9 │ │ │ +001fac30: 3636 3020 6669 6c65 7379 7374 656d 7320 660 filesystems │ │ │ +001fac40: 6d74 6162 2063 6f75 6c64 2064 6573 6372 mtab could descr │ │ │ +001fac50: 6962 6520 6120 2262 6c6f 636b 7369 7a65 ibe a "blocksize │ │ │ +001fac60: 2220 7661 6c75 652c 2074 6869 7320 7368 " value, this sh │ │ │ +001fac70: 6f75 6c64 2062 6520 7265 666c 6563 7465 ould be reflecte │ │ │ +001fac80: 6420 696e 0a20 2020 2020 2020 2023 2066 d in. # f │ │ │ +001fac90: 7374 6162 2061 7320 2262 6c6f 636b 222e stab as "block". │ │ │ +001faca0: 2020 5468 6520 6e65 7874 2076 6172 6961 The next varia │ │ │ +001facb0: 626c 6520 6973 2074 6f20 7361 7469 7366 ble is to satisf │ │ │ +001facc0: 7920 7368 656c 6c63 6865 636b 2053 4332 y shellcheck SC2 │ │ │ +001facd0: 3035 302e 0a20 2020 2020 2020 2066 735f 050.. fs_ │ │ │ +001face0: 7479 7065 3d22 220a 2020 2020 2020 2020 type="". │ │ │ +001facf0: 6966 205b 2020 2224 6673 5f74 7970 6522 if [ "$fs_type" │ │ │ +001fad00: 203d 3d20 2269 736f 3936 3630 2220 5d20 == "iso9660" ] │ │ │ +001fad10: 3b20 7468 656e 0a20 2020 2020 2020 2020 ; then. │ │ │ +001fad20: 2020 2070 7265 7669 6f75 735f 6d6f 756e previous_moun │ │ │ +001fad30: 745f 6f70 7473 3d24 2873 6564 2027 732f t_opts=$(sed 's/ │ │ │ +001fad40: 626c 6f63 6b73 697a 653d 2f62 6c6f 636b blocksize=/block │ │ │ +001fad50: 3d2f 2720 266c 743b 266c 743b 266c 743b =/' <<< │ │ │ +001fad60: 2022 2470 7265 7669 6f75 735f 6d6f 756e "$previous_moun │ │ │ +001fad70: 745f 6f70 7473 2229 0a20 2020 2020 2020 t_opts"). │ │ │ +001fad80: 2066 690a 2020 2020 2020 2020 6563 686f fi. echo │ │ │ +001fad90: 2022 202f 7661 7220 2064 6566 6175 6c74 " /var default │ │ │ +001fada0: 732c 247b 7072 6576 696f 7573 5f6d 6f75 s,${previous_mou │ │ │ +001fadb0: 6e74 5f6f 7074 737d 6e6f 7375 6964 2030 nt_opts}nosuid 0 │ │ │ +001fadc0: 2030 2220 2667 743b 2667 743b 202f 6574 0" >> /et │ │ │ +001fadd0: 632f 6673 7461 620a 2020 2020 2320 4966 c/fstab. # If │ │ │ +001fade0: 2074 6865 206d 6f75 6e74 5f6f 7074 206f the mount_opt o │ │ │ +001fadf0: 7074 696f 6e20 6973 206e 6f74 2061 6c72 ption is not alr │ │ │ +001fae00: 6561 6479 2069 6e20 7468 6520 6d6f 756e eady in the moun │ │ │ +001fae10: 7420 706f 696e 7427 7320 2f65 7463 2f66 t point's /etc/f │ │ │ +001fae20: 7374 6162 2065 6e74 7279 2c20 6164 6420 stab entry, add │ │ │ +001fae30: 6974 0a20 2020 2065 6c69 6620 2120 6772 it. elif ! gr │ │ │ +001fae40: 6570 2022 246d 6f75 6e74 5f70 6f69 6e74 ep "$mount_point │ │ │ +001fae50: 5f6d 6174 6368 5f72 6567 6578 7022 202f _match_regexp" / │ │ │ +001fae60: 6574 632f 6673 7461 6220 7c20 6772 6570 etc/fstab | grep │ │ │ +001fae70: 202d 7120 226e 6f73 7569 6422 3b20 7468 -q "nosuid"; th │ │ │ +001fae80: 656e 0a20 2020 2020 2020 2070 7265 7669 en. previ │ │ │ +001fae90: 6f75 735f 6d6f 756e 745f 6f70 7473 3d24 ous_mount_opts=$ │ │ │ +001faea0: 2867 7265 7020 2224 6d6f 756e 745f 706f (grep "$mount_po │ │ │ +001faeb0: 696e 745f 6d61 7463 685f 7265 6765 7870 int_match_regexp │ │ │ +001faec0: 2220 2f65 7463 2f66 7374 6162 207c 2061 " /etc/fstab | a │ │ │ +001faed0: 776b 2027 7b70 7269 6e74 2024 347d 2729 wk '{print $4}') │ │ │ +001faee0: 0a20 2020 2020 2020 2073 6564 202d 6920 . sed -i │ │ │ +001faef0: 2273 7c5c 2824 7b6d 6f75 6e74 5f70 6f69 "s|\(${mount_poi │ │ │ +001faf00: 6e74 5f6d 6174 6368 5f72 6567 6578 707d nt_match_regexp} │ │ │ +001faf10: 2e2a 247b 7072 6576 696f 7573 5f6d 6f75 .*${previous_mou │ │ │ +001faf20: 6e74 5f6f 7074 737d 5c29 7c5c 312c 6e6f nt_opts}\)|\1,no │ │ │ +001faf30: 7375 6964 7c22 202f 6574 632f 6673 7461 suid|" /etc/fsta │ │ │ +001faf40: 620a 2020 2020 6669 0a0a 0a20 2020 2069 b. fi... i │ │ │ +001faf50: 6620 6d6b 6469 7220 2d70 2022 2f76 6172 f mkdir -p "/var │ │ │ +001faf60: 223b 2074 6865 6e0a 2020 2020 2020 2020 "; then. │ │ │ +001faf70: 6966 206d 6f75 6e74 706f 696e 7420 2d71 if mountpoint -q │ │ │ +001faf80: 2022 2f76 6172 223b 2074 6865 6e0a 2020 "/var"; then. │ │ │ +001faf90: 2020 2020 2020 2020 2020 6d6f 756e 7420 mount │ │ │ +001fafa0: 2d6f 2072 656d 6f75 6e74 202d 2d74 6172 -o remount --tar │ │ │ +001fafb0: 6765 7420 222f 7661 7222 0a20 2020 2020 get "/var". │ │ │ +001fafc0: 2020 2066 690a 2020 2020 6669 0a7d 0a0a fi. fi.}.. │ │ │ +001fafd0: 7065 7266 6f72 6d5f 7265 6d65 6469 6174 perform_remediat │ │ │ +001fafe0: 696f 6e0a 0a65 6c73 650a 2020 2020 2667 ion..else. &g │ │ │ +001faff0: 743b 2661 6d70 3b32 2065 6368 6f20 2752 t;&2 echo 'R │ │ │ +001fb000: 656d 6564 6961 7469 6f6e 2069 7320 6e6f emediation is no │ │ │ +001fb010: 7420 6170 706c 6963 6162 6c65 2c20 6e6f t applicable, no │ │ │ +001fb020: 7468 696e 6720 7761 7320 646f 6e65 270a thing was done'. │ │ │ +001fb030: 6669 0a3c 2f63 6f64 653e 3c2f 7072 653e fi. │ │ │ +001fb040: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation A │ │ │ +001fb0f0: 6e61 636f 6e64 6120 736e 6970 7065 7420 naconda snippet │ │ │ +001fb100: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
Complexity: │ │ │ +001fb190: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ +001fb1b0: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:high │ │ │ +001fb1d0: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ +001fb1e0: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ +001fb200: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:enable
.part /var -
│ │ │ +001fb240: 2d6d 6f75 6e74 6f70 7469 6f6e 733d 226e  -mountoptions="n
│ │ │ +001fb250: 6f73 7569 6422 0a3c 2f63 6f64 653e 3c2f  osuid".
│ │ │ 001fb270: 3c2f 7464 3e3c 2f74 723e 3c2f 7462 6f64 < │ │ │ 001fb290: 2f74 723e 3c74 7220 6461 7461 2d74 742d /tr>Remediatio │ │ │ -001fbc60: 6e20 416e 6163 6f6e 6461 2073 6e69 7070 n Anaconda snipp │ │ │ -001fbc70: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ -001fbcf0: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ -001fbd00: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -001fbd10: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:highReboo │ │ │ -001fbd50: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -001fbd60: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ -001fbd80: 3c74 643e 656e 6162 6c65 3c2f 7464 3e3c enable< │ │ │ -001fbd90: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
.part /va
│ │ │ -001fbdb0: 722f 746d 7020 2d2d 6d6f 756e 746f 7074  r/tmp --mountopt
│ │ │ -001fbdc0: 696f 6e73 3d22 6e6f 6578 6563 220a 3c2f  ions="noexec".
Re │ │ │ -001fbe80: 6d65 6469 6174 696f 6e20 416e 7369 626c mediation Ansibl │ │ │ -001fbe90: 6520 736e 6970 7065 7420 e287 b23c 2f61 e snippet ...
< │ │ │ -001fbf30: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -001fbf40: 3c74 723e 3c74 683e 4469 7372 7570 7469 Reboot:false
- name: Gather 
│ │ │ -001fbfe0: 7468 6520 7061 636b 6167 6520 6661 6374  the package fact
│ │ │ -001fbff0: 730a 2020 7061 636b 6167 655f 6661 6374  s.  package_fact
│ │ │ -001fc000: 733a 0a20 2020 206d 616e 6167 6572 3a20  s:.    manager: 
│ │ │ -001fc010: 6175 746f 0a20 2074 6167 733a 0a20 202d  auto.  tags:.  -
│ │ │ -001fc020: 2063 6f6e 6669 6775 7265 5f73 7472 6174   configure_strat
│ │ │ -001fc030: 6567 790a 2020 2d20 6869 6768 5f64 6973  egy.  - high_dis
│ │ │ -001fc040: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f  ruption.  - low_
│ │ │ -001fc050: 636f 6d70 6c65 7869 7479 0a20 202d 206d  complexity.  - m
│ │ │ -001fc060: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ -001fc070: 202d 206d 6f75 6e74 5f6f 7074 696f 6e5f   - mount_option_
│ │ │ -001fc080: 7661 725f 746d 705f 6e6f 6578 6563 0a20  var_tmp_noexec. 
│ │ │ -001fc090: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ -001fc0a0: 6465 640a 0a2d 206e 616d 653a 2027 4164  ded..- name: 'Ad
│ │ │ -001fc0b0: 6420 6e6f 6578 6563 204f 7074 696f 6e20  d noexec Option 
│ │ │ -001fc0c0: 746f 202f 7661 722f 746d 703a 2043 6865  to /var/tmp: Che
│ │ │ -001fc0d0: 636b 2069 6e66 6f72 6d61 7469 6f6e 2061  ck information a
│ │ │ -001fc0e0: 7373 6f63 6961 7465 6420 746f 206d 6f75  ssociated to mou
│ │ │ -001fc0f0: 6e74 706f 696e 7427 0a20 2061 6e73 6962  ntpoint'.  ansib
│ │ │ -001fc100: 6c65 2e62 7569 6c74 696e 2e63 6f6d 6d61  le.builtin.comma
│ │ │ -001fc110: 6e64 3a20 6669 6e64 6d6e 7420 2d2d 6673  nd: findmnt --fs
│ │ │ -001fc120: 7461 6220 272f 7661 722f 746d 7027 0a20  tab '/var/tmp'. 
│ │ │ -001fc130: 2072 6567 6973 7465 723a 2064 6576 6963   register: devic
│ │ │ -001fc140: 655f 6e61 6d65 0a20 2066 6169 6c65 645f  e_name.  failed_
│ │ │ -001fc150: 7768 656e 3a20 6465 7669 6365 5f6e 616d  when: device_nam
│ │ │ -001fc160: 652e 7263 2026 6774 3b20 310a 2020 6368  e.rc > 1.  ch
│ │ │ -001fc170: 616e 6765 645f 7768 656e 3a20 6661 6c73  anged_when: fals
│ │ │ -001fc180: 650a 2020 6368 6563 6b5f 6d6f 6465 3a20  e.  check_mode: 
│ │ │ -001fc190: 6661 6c73 650a 2020 7768 656e 3a0a 2020  false.  when:.  
│ │ │ -001fc1a0: 2d20 2820 6e6f 7420 2820 226b 6572 6e65  - ( not ( "kerne
│ │ │ -001fc1b0: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ -001fc1c0: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ -001fc1d0: 2022 626f 6f74 6322 2069 6e20 616e 7369   "bootc" in ansi
│ │ │ -001fc1e0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001fc1f0: 6573 0a20 2020 2061 6e64 206e 6f74 2022  es.    and not "
│ │ │ -001fc200: 6f70 656e 7368 6966 742d 6b75 6265 6c65  openshift-kubele
│ │ │ -001fc210: 7422 2069 6e20 616e 7369 626c 655f 6661  t" in ansible_fa
│ │ │ -001fc220: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ -001fc230: 2022 6f73 7472 6565 2220 696e 2061 6e73   "ostree" in ans
│ │ │ -001fc240: 6962 6c65 5f70 726f 635f 636d 646c 696e  ible_proc_cmdlin
│ │ │ -001fc250: 650a 2020 2020 2920 616e 6420 6e6f 7420  e.    ) and not 
│ │ │ -001fc260: 2820 616e 7369 626c 655f 7669 7274 7561  ( ansible_virtua
│ │ │ -001fc270: 6c69 7a61 7469 6f6e 5f74 7970 6520 696e  lization_type in
│ │ │ -001fc280: 205b 2264 6f63 6b65 7222 2c20 226c 7863   ["docker", "lxc
│ │ │ -001fc290: 222c 2022 6f70 656e 767a 222c 2022 706f  ", "openvz", "po
│ │ │ -001fc2a0: 646d 616e 222c 0a20 2020 2022 636f 6e74  dman",.    "cont
│ │ │ -001fc2b0: 6169 6e65 7222 5d20 2920 290a 2020 2d20  ainer"] ) ).  - 
│ │ │ -001fc2c0: 2722 2f76 6172 2f74 6d70 2220 696e 2061  '"/var/tmp" in a
│ │ │ -001fc2d0: 6e73 6962 6c65 5f6d 6f75 6e74 7320 7c20  nsible_mounts | 
│ │ │ -001fc2e0: 6d61 7028 6174 7472 6962 7574 653d 226d  map(attribute="m
│ │ │ -001fc2f0: 6f75 6e74 2229 207c 206c 6973 7427 0a20  ount") | list'. 
│ │ │ -001fc300: 2074 6167 733a 0a20 202d 2063 6f6e 6669   tags:.  - confi
│ │ │ -001fc310: 6775 7265 5f73 7472 6174 6567 790a 2020  gure_strategy.  
│ │ │ -001fc320: 2d20 6869 6768 5f64 6973 7275 7074 696f  - high_disruptio
│ │ │ -001fc330: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65  n.  - low_comple
│ │ │ -001fc340: 7869 7479 0a20 202d 206d 6564 6975 6d5f  xity.  - medium_
│ │ │ -001fc350: 7365 7665 7269 7479 0a20 202d 206d 6f75  severity.  - mou
│ │ │ -001fc360: 6e74 5f6f 7074 696f 6e5f 7661 725f 746d  nt_option_var_tm
│ │ │ -001fc370: 705f 6e6f 6578 6563 0a20 202d 206e 6f5f  p_noexec.  - no_
│ │ │ -001fc380: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ -001fc390: 206e 616d 653a 2027 4164 6420 6e6f 6578   name: 'Add noex
│ │ │ -001fc3a0: 6563 204f 7074 696f 6e20 746f 202f 7661  ec Option to /va
│ │ │ -001fc3b0: 722f 746d 703a 2043 7265 6174 6520 6d6f  r/tmp: Create mo
│ │ │ -001fc3c0: 756e 745f 696e 666f 2064 6963 7469 6f6e  unt_info diction
│ │ │ -001fc3d0: 6172 7920 7661 7269 6162 6c65 270a 2020  ary variable'.  
│ │ │ -001fc3e0: 7365 745f 6661 6374 3a0a 2020 2020 6d6f  set_fact:.    mo
│ │ │ -001fc3f0: 756e 745f 696e 666f 3a20 277b 7b20 6d6f  unt_info: '{{ mo
│ │ │ -001fc400: 756e 745f 696e 666f 7c64 6566 6175 6c74  unt_info|default
│ │ │ -001fc410: 287b 7d29 7c63 6f6d 6269 6e65 287b 6974  ({})|combine({it
│ │ │ -001fc420: 656d 2e30 3a20 6974 656d 2e31 7d29 207d  em.0: item.1}) }
│ │ │ -001fc430: 7d27 0a20 2077 6974 685f 746f 6765 7468  }'.  with_togeth
│ │ │ -001fc440: 6572 3a0a 2020 2d20 277b 7b20 6465 7669  er:.  - '{{ devi
│ │ │ -001fc450: 6365 5f6e 616d 652e 7374 646f 7574 5f6c  ce_name.stdout_l
│ │ │ -001fc460: 696e 6573 5b30 5d2e 7370 6c69 7428 2920  ines[0].split() 
│ │ │ -001fc470: 7c20 6d61 7028 2727 6c6f 7765 7227 2729  | map(''lower'')
│ │ │ -001fc480: 207c 206c 6973 7420 7d7d 270a 2020 2d20   | list }}'.  - 
│ │ │ -001fc490: 277b 7b20 6465 7669 6365 5f6e 616d 652e  '{{ device_name.
│ │ │ -001fc4a0: 7374 646f 7574 5f6c 696e 6573 5b31 5d2e  stdout_lines[1].
│ │ │ -001fc4b0: 7370 6c69 7428 2920 7c20 6c69 7374 207d  split() | list }
│ │ │ -001fc4c0: 7d27 0a20 2077 6865 6e3a 0a20 202d 2028  }'.  when:.  - (
│ │ │ -001fc4d0: 206e 6f74 2028 2022 6b65 726e 656c 2220   not ( "kernel" 
│ │ │ -001fc4e0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001fc4f0: 2e70 6163 6b61 6765 7320 616e 6420 2262  .packages and "b
│ │ │ -001fc500: 6f6f 7463 2220 696e 2061 6e73 6962 6c65  ootc" in ansible
│ │ │ -001fc510: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ -001fc520: 2020 2020 616e 6420 6e6f 7420 226f 7065      and not "ope
│ │ │ -001fc530: 6e73 6869 6674 2d6b 7562 656c 6574 2220  nshift-kubelet" 
│ │ │ -001fc540: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -001fc550: 2e70 6163 6b61 6765 7320 616e 6420 226f  .packages and "o
│ │ │ -001fc560: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ -001fc570: 655f 7072 6f63 5f63 6d64 6c69 6e65 0a20  e_proc_cmdline. 
│ │ │ -001fc580: 2020 2029 2061 6e64 206e 6f74 2028 2061     ) and not ( a
│ │ │ -001fc590: 6e73 6962 6c65 5f76 6972 7475 616c 697a  nsible_virtualiz
│ │ │ -001fc5a0: 6174 696f 6e5f 7479 7065 2069 6e20 5b22  ation_type in ["
│ │ │ -001fc5b0: 646f 636b 6572 222c 2022 6c78 6322 2c20  docker", "lxc", 
│ │ │ -001fc5c0: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61  "openvz", "podma
│ │ │ -001fc5d0: 6e22 2c0a 2020 2020 2263 6f6e 7461 696e  n",.    "contain
│ │ │ -001fc5e0: 6572 225d 2029 2029 0a20 202d 2027 222f  er"] ) ).  - '"/
│ │ │ -001fc5f0: 7661 722f 746d 7022 2069 6e20 616e 7369  var/tmp" in ansi
│ │ │ -001fc600: 626c 655f 6d6f 756e 7473 207c 206d 6170  ble_mounts | map
│ │ │ -001fc610: 2861 7474 7269 6275 7465 3d22 6d6f 756e  (attribute="moun
│ │ │ -001fc620: 7422 2920 7c20 6c69 7374 270a 2020 2d20  t") | list'.  - 
│ │ │ -001fc630: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ -001fc640: 7574 2069 7320 6465 6669 6e65 6420 616e  ut is defined an
│ │ │ -001fc650: 6420 6465 7669 6365 5f6e 616d 652e 7374  d device_name.st
│ │ │ -001fc660: 646f 7574 5f6c 696e 6573 2069 7320 6465  dout_lines is de
│ │ │ -001fc670: 6669 6e65 640a 2020 2d20 2864 6576 6963  fined.  - (devic
│ │ │ -001fc680: 655f 6e61 6d65 2e73 7464 6f75 7420 7c20  e_name.stdout | 
│ │ │ -001fc690: 6c65 6e67 7468 2026 6774 3b20 3029 0a20  length > 0). 
│ │ │ -001fc6a0: 2074 6167 733a 0a20 202d 2063 6f6e 6669   tags:.  - confi
│ │ │ -001fc6b0: 6775 7265 5f73 7472 6174 6567 790a 2020  gure_strategy.  
│ │ │ -001fc6c0: 2d20 6869 6768 5f64 6973 7275 7074 696f  - high_disruptio
│ │ │ -001fc6d0: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65  n.  - low_comple
│ │ │ -001fc6e0: 7869 7479 0a20 202d 206d 6564 6975 6d5f  xity.  - medium_
│ │ │ -001fc6f0: 7365 7665 7269 7479 0a20 202d 206d 6f75  severity.  - mou
│ │ │ -001fc700: 6e74 5f6f 7074 696f 6e5f 7661 725f 746d  nt_option_var_tm
│ │ │ -001fc710: 705f 6e6f 6578 6563 0a20 202d 206e 6f5f  p_noexec.  - no_
│ │ │ -001fc720: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ -001fc730: 206e 616d 653a 2027 4164 6420 6e6f 6578   name: 'Add noex
│ │ │ -001fc740: 6563 204f 7074 696f 6e20 746f 202f 7661  ec Option to /va
│ │ │ -001fc750: 722f 746d 703a 2049 6620 2f76 6172 2f74  r/tmp: If /var/t
│ │ │ -001fc760: 6d70 206e 6f74 206d 6f75 6e74 6564 2c20  mp not mounted, 
│ │ │ -001fc770: 6372 6166 7420 6d6f 756e 745f 696e 666f  craft mount_info
│ │ │ -001fc780: 0a20 2020 206d 616e 7561 6c6c 7927 0a20  .    manually'. 
│ │ │ -001fc790: 2073 6574 5f66 6163 743a 0a20 2020 206d   set_fact:.    m
│ │ │ -001fc7a0: 6f75 6e74 5f69 6e66 6f3a 2027 7b7b 206d  ount_info: '{{ m
│ │ │ -001fc7b0: 6f75 6e74 5f69 6e66 6f7c 6465 6661 756c  ount_info|defaul
│ │ │ -001fc7c0: 7428 7b7d 297c 636f 6d62 696e 6528 7b69  t({})|combine({i
│ │ │ -001fc7d0: 7465 6d2e 303a 2069 7465 6d2e 317d 2920  tem.0: item.1}) 
│ │ │ -001fc7e0: 7d7d 270a 2020 7769 7468 5f74 6f67 6574  }}'.  with_toget
│ │ │ -001fc7f0: 6865 723a 0a20 202d 202d 2074 6172 6765  her:.  - - targe
│ │ │ -001fc800: 740a 2020 2020 2d20 736f 7572 6365 0a20  t.    - source. 
│ │ │ -001fc810: 2020 202d 2066 7374 7970 650a 2020 2020     - fstype.    
│ │ │ -001fc820: 2d20 6f70 7469 6f6e 730a 2020 2d20 2d20  - options.  - - 
│ │ │ -001fc830: 2f76 6172 2f74 6d70 0a20 2020 202d 2027  /var/tmp.    - '
│ │ │ -001fc840: 270a 2020 2020 2d20 2727 0a20 2020 202d  '.    - ''.    -
│ │ │ -001fc850: 2064 6566 6175 6c74 730a 2020 7768 656e   defaults.  when
│ │ │ -001fc860: 3a0a 2020 2d20 2820 6e6f 7420 2820 226b  :.  - ( not ( "k
│ │ │ -001fc870: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ -001fc880: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001fc890: 2061 6e64 2022 626f 6f74 6322 2069 6e20   and "bootc" in 
│ │ │ -001fc8a0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -001fc8b0: 636b 6167 6573 0a20 2020 2061 6e64 206e  ckages.    and n
│ │ │ -001fc8c0: 6f74 2022 6f70 656e 7368 6966 742d 6b75  ot "openshift-ku
│ │ │ -001fc8d0: 6265 6c65 7422 2069 6e20 616e 7369 626c  belet" in ansibl
│ │ │ -001fc8e0: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -001fc8f0: 2061 6e64 2022 6f73 7472 6565 2220 696e   and "ostree" in
│ │ │ -001fc900: 2061 6e73 6962 6c65 5f70 726f 635f 636d   ansible_proc_cm
│ │ │ -001fc910: 646c 696e 650a 2020 2020 2920 616e 6420  dline.    ) and 
│ │ │ -001fc920: 6e6f 7420 2820 616e 7369 626c 655f 7669  not ( ansible_vi
│ │ │ -001fc930: 7274 7561 6c69 7a61 7469 6f6e 5f74 7970  rtualization_typ
│ │ │ -001fc940: 6520 696e 205b 2264 6f63 6b65 7222 2c20  e in ["docker", 
│ │ │ -001fc950: 226c 7863 222c 2022 6f70 656e 767a 222c  "lxc", "openvz",
│ │ │ -001fc960: 2022 706f 646d 616e 222c 0a20 2020 2022   "podman",.    "
│ │ │ -001fc970: 636f 6e74 6169 6e65 7222 5d20 2920 290a  container"] ) ).
│ │ │ -001fc980: 2020 2d20 2722 2f76 6172 2f74 6d70 2220    - '"/var/tmp" 
│ │ │ -001fc990: 696e 2061 6e73 6962 6c65 5f6d 6f75 6e74  in ansible_mount
│ │ │ -001fc9a0: 7320 7c20 6d61 7028 6174 7472 6962 7574  s | map(attribut
│ │ │ -001fc9b0: 653d 226d 6f75 6e74 2229 207c 206c 6973  e="mount") | lis
│ │ │ -001fc9c0: 7427 0a20 202d 2028 222d 2d66 7374 6162  t'.  - ("--fstab
│ │ │ -001fc9d0: 2220 7c20 6c65 6e67 7468 203d 3d20 3029  " | length == 0)
│ │ │ -001fc9e0: 0a20 202d 2064 6576 6963 655f 6e61 6d65  .  - device_name
│ │ │ -001fc9f0: 2e73 7464 6f75 7420 6973 2064 6566 696e  .stdout is defin
│ │ │ -001fca00: 6564 2061 6e64 2064 6576 6963 655f 6e61  ed and device_na
│ │ │ -001fca10: 6d65 2e73 7464 6f75 745f 6c69 6e65 7320  me.stdout_lines 
│ │ │ -001fca20: 6973 2064 6566 696e 6564 0a20 202d 2028  is defined.  - (
│ │ │ -001fca30: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ -001fca40: 7574 207c 206c 656e 6774 6820 3d3d 2030  ut | length == 0
│ │ │ -001fca50: 290a 2020 7461 6773 3a0a 2020 2d20 636f  ).  tags:.  - co
│ │ │ -001fca60: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ -001fca70: 0a20 202d 2068 6967 685f 6469 7372 7570  .  - high_disrup
│ │ │ -001fca80: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d  tion.  - low_com
│ │ │ -001fca90: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ -001fcaa0: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ -001fcab0: 6d6f 756e 745f 6f70 7469 6f6e 5f76 6172  mount_option_var
│ │ │ -001fcac0: 5f74 6d70 5f6e 6f65 7865 630a 2020 2d20  _tmp_noexec.  - 
│ │ │ -001fcad0: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ -001fcae0: 0a0a 2d20 6e61 6d65 3a20 2741 6464 206e  ..- name: 'Add n
│ │ │ -001fcaf0: 6f65 7865 6320 4f70 7469 6f6e 2074 6f20  oexec Option to 
│ │ │ -001fcb00: 2f76 6172 2f74 6d70 3a20 4d61 6b65 2073  /var/tmp: Make s
│ │ │ -001fcb10: 7572 6520 6e6f 6578 6563 206f 7074 696f  ure noexec optio
│ │ │ -001fcb20: 6e20 6973 2070 6172 7420 6f66 2074 6865  n is part of the
│ │ │ -001fcb30: 2074 6f0a 2020 2020 2f76 6172 2f74 6d70   to.    /var/tmp
│ │ │ -001fcb40: 206f 7074 696f 6e73 270a 2020 7365 745f   options'.  set_
│ │ │ -001fcb50: 6661 6374 3a0a 2020 2020 6d6f 756e 745f  fact:.    mount_
│ │ │ -001fcb60: 696e 666f 3a20 277b 7b20 6d6f 756e 745f  info: '{{ mount_
│ │ │ -001fcb70: 696e 666f 207c 2063 6f6d 6269 6e65 2820  info | combine( 
│ │ │ -001fcb80: 7b27 276f 7074 696f 6e73 2727 3a27 2727  {''options'':'''
│ │ │ -001fcb90: 277e 286d 6f75 6e74 5f69 6e66 6f2e 6f70  '~(mount_info.op
│ │ │ -001fcba0: 7469 6f6e 7320 7c0a 2020 2020 2020 6465  tions |.      de
│ │ │ -001fcbb0: 6661 756c 7428 2727 2727 2929 7e28 2727  fault(''''))~(''
│ │ │ -001fcbc0: 2c27 2720 6966 2028 6d6f 756e 745f 696e  ,'' if (mount_in
│ │ │ -001fcbd0: 666f 2e6f 7074 696f 6e73 207c 2064 6566  fo.options | def
│ │ │ -001fcbe0: 6175 6c74 2827 2727 2729 2920 656c 7365  ault('''')) else
│ │ │ -001fcbf0: 2027 2727 2729 7e27 276e 6f65 7865 6327   '''')~''noexec'
│ │ │ -001fcc00: 270a 2020 2020 2020 7d29 207d 7d27 0a20  '.      }) }}'. 
│ │ │ -001fcc10: 2077 6865 6e3a 0a20 202d 2028 206e 6f74   when:.  - ( not
│ │ │ -001fcc20: 2028 2022 6b65 726e 656c 2220 696e 2061   ( "kernel" in a
│ │ │ -001fcc30: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001fcc40: 6b61 6765 7320 616e 6420 2262 6f6f 7463  kages and "bootc
│ │ │ -001fcc50: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001fcc60: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ -001fcc70: 616e 6420 6e6f 7420 226f 7065 6e73 6869  and not "openshi
│ │ │ -001fcc80: 6674 2d6b 7562 656c 6574 2220 696e 2061  ft-kubelet" in a
│ │ │ -001fcc90: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001fcca0: 6b61 6765 7320 616e 6420 226f 7374 7265  kages and "ostre
│ │ │ -001fccb0: 6522 2069 6e20 616e 7369 626c 655f 7072  e" in ansible_pr
│ │ │ -001fccc0: 6f63 5f63 6d64 6c69 6e65 0a20 2020 2029  oc_cmdline.    )
│ │ │ -001fccd0: 2061 6e64 206e 6f74 2028 2061 6e73 6962   and not ( ansib
│ │ │ -001fcce0: 6c65 5f76 6972 7475 616c 697a 6174 696f  le_virtualizatio
│ │ │ -001fccf0: 6e5f 7479 7065 2069 6e20 5b22 646f 636b  n_type in ["dock
│ │ │ -001fcd00: 6572 222c 2022 6c78 6322 2c20 226f 7065  er", "lxc", "ope
│ │ │ -001fcd10: 6e76 7a22 2c20 2270 6f64 6d61 6e22 2c0a  nvz", "podman",.
│ │ │ -001fcd20: 2020 2020 2263 6f6e 7461 696e 6572 225d      "container"]
│ │ │ -001fcd30: 2029 2029 0a20 202d 2027 222f 7661 722f   ) ).  - '"/var/
│ │ │ -001fcd40: 746d 7022 2069 6e20 616e 7369 626c 655f  tmp" in ansible_
│ │ │ -001fcd50: 6d6f 756e 7473 207c 206d 6170 2861 7474  mounts | map(att
│ │ │ -001fcd60: 7269 6275 7465 3d22 6d6f 756e 7422 2920  ribute="mount") 
│ │ │ -001fcd70: 7c20 6c69 7374 270a 2020 2d20 6d6f 756e  | list'.  - moun
│ │ │ -001fcd80: 745f 696e 666f 2069 7320 6465 6669 6e65  t_info is define
│ │ │ -001fcd90: 6420 616e 6420 226e 6f65 7865 6322 206e  d and "noexec" n
│ │ │ -001fcda0: 6f74 2069 6e20 286d 6f75 6e74 5f69 6e66  ot in (mount_inf
│ │ │ -001fcdb0: 6f2e 6f70 7469 6f6e 7320 7c20 6465 6661  o.options | defa
│ │ │ -001fcdc0: 756c 7428 2727 2929 0a20 2074 6167 733a  ult('')).  tags:
│ │ │ -001fcdd0: 0a20 202d 2063 6f6e 6669 6775 7265 5f73  .  - configure_s
│ │ │ -001fcde0: 7472 6174 6567 790a 2020 2d20 6869 6768  trategy.  - high
│ │ │ -001fcdf0: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ -001fce00: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ -001fce10: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ -001fce20: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074  ty.  - mount_opt
│ │ │ -001fce30: 696f 6e5f 7661 725f 746d 705f 6e6f 6578  ion_var_tmp_noex
│ │ │ -001fce40: 6563 0a20 202d 206e 6f5f 7265 626f 6f74  ec.  - no_reboot
│ │ │ -001fce50: 5f6e 6565 6465 640a 0a2d 206e 616d 653a  _needed..- name:
│ │ │ -001fce60: 2027 4164 6420 6e6f 6578 6563 204f 7074   'Add noexec Opt
│ │ │ -001fce70: 696f 6e20 746f 202f 7661 722f 746d 703a  ion to /var/tmp:
│ │ │ -001fce80: 2045 6e73 7572 6520 2f76 6172 2f74 6d70   Ensure /var/tmp
│ │ │ -001fce90: 2069 7320 6d6f 756e 7465 6420 7769 7468   is mounted with
│ │ │ -001fcea0: 206e 6f65 7865 6320 6f70 7469 6f6e 270a   noexec option'.
│ │ │ -001fceb0: 2020 616e 7369 626c 652e 706f 7369 782e    ansible.posix.
│ │ │ -001fcec0: 6d6f 756e 743a 0a20 2020 2070 6174 683a  mount:.    path:
│ │ │ -001fced0: 202f 7661 722f 746d 700a 2020 2020 7372   /var/tmp.    sr
│ │ │ -001fcee0: 633a 2027 7b7b 206d 6f75 6e74 5f69 6e66  c: '{{ mount_inf
│ │ │ -001fcef0: 6f2e 736f 7572 6365 207c 2064 6566 6175  o.source | defau
│ │ │ -001fcf00: 6c74 2827 2727 2729 207d 7d27 0a20 2020  lt('''') }}'.   
│ │ │ -001fcf10: 206f 7074 733a 2027 7b7b 206d 6f75 6e74   opts: '{{ mount
│ │ │ -001fcf20: 5f69 6e66 6f2e 6f70 7469 6f6e 7320 7c20  _info.options | 
│ │ │ -001fcf30: 6465 6661 756c 7428 2727 2727 2920 7d7d  default('''') }}
│ │ │ -001fcf40: 270a 2020 2020 7374 6174 653a 206d 6f75  '.    state: mou
│ │ │ -001fcf50: 6e74 6564 0a20 2020 2066 7374 7970 653a  nted.    fstype:
│ │ │ -001fcf60: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f2e   '{{ mount_info.
│ │ │ -001fcf70: 6673 7479 7065 207c 2064 6566 6175 6c74  fstype | default
│ │ │ -001fcf80: 2827 2727 2729 207d 7d27 0a20 2072 6567  ('''') }}'.  reg
│ │ │ -001fcf90: 6973 7465 723a 206d 6f75 6e74 5f72 6573  ister: mount_res
│ │ │ -001fcfa0: 756c 740a 2020 6661 696c 6564 5f77 6865  ult.  failed_whe
│ │ │ -001fcfb0: 6e3a 0a20 202d 206d 6f75 6e74 5f72 6573  n:.  - mount_res
│ │ │ -001fcfc0: 756c 7420 6973 2066 6169 6c65 640a 2020  ult is failed.  
│ │ │ -001fcfd0: 2d20 2727 2774 6172 6765 7420 6973 2062  - '''target is b
│ │ │ -001fcfe0: 7573 7927 2720 6e6f 7420 696e 2028 6d6f  usy'' not in (mo
│ │ │ -001fcff0: 756e 745f 7265 7375 6c74 2e6d 7367 207c  unt_result.msg |
│ │ │ -001fd000: 2064 6566 6175 6c74 2827 2727 2729 2927   default(''''))'
│ │ │ -001fd010: 0a20 202d 2027 2727 616c 7265 6164 7920  .  - '''already 
│ │ │ -001fd020: 6d6f 756e 7465 6427 2720 6e6f 7420 696e  mounted'' not in
│ │ │ -001fd030: 2028 6d6f 756e 745f 7265 7375 6c74 2e6d   (mount_result.m
│ │ │ -001fd040: 7367 207c 2064 6566 6175 6c74 2827 2727  sg | default('''
│ │ │ -001fd050: 2729 2927 0a20 2077 6865 6e3a 0a20 202d  '))'.  when:.  -
│ │ │ -001fd060: 2028 206e 6f74 2028 2022 6b65 726e 656c   ( not ( "kernel
│ │ │ -001fd070: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001fd080: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ -001fd090: 2262 6f6f 7463 2220 696e 2061 6e73 6962  "bootc" in ansib
│ │ │ -001fd0a0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -001fd0b0: 730a 2020 2020 616e 6420 6e6f 7420 226f  s.    and not "o
│ │ │ -001fd0c0: 7065 6e73 6869 6674 2d6b 7562 656c 6574  penshift-kubelet
│ │ │ -001fd0d0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001fd0e0: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ -001fd0f0: 226f 7374 7265 6522 2069 6e20 616e 7369  "ostree" in ansi
│ │ │ -001fd100: 626c 655f 7072 6f63 5f63 6d64 6c69 6e65  ble_proc_cmdline
│ │ │ -001fd110: 0a20 2020 2029 2061 6e64 206e 6f74 2028  .    ) and not (
│ │ │ -001fd120: 2061 6e73 6962 6c65 5f76 6972 7475 616c   ansible_virtual
│ │ │ -001fd130: 697a 6174 696f 6e5f 7479 7065 2069 6e20  ization_type in 
│ │ │ -001fd140: 5b22 646f 636b 6572 222c 2022 6c78 6322  ["docker", "lxc"
│ │ │ -001fd150: 2c20 226f 7065 6e76 7a22 2c20 2270 6f64  , "openvz", "pod
│ │ │ -001fd160: 6d61 6e22 2c0a 2020 2020 2263 6f6e 7461  man",.    "conta
│ │ │ -001fd170: 696e 6572 225d 2029 2029 0a20 202d 2027  iner"] ) ).  - '
│ │ │ -001fd180: 222f 7661 722f 746d 7022 2069 6e20 616e  "/var/tmp" in an
│ │ │ -001fd190: 7369 626c 655f 6d6f 756e 7473 207c 206d  sible_mounts | m
│ │ │ -001fd1a0: 6170 2861 7474 7269 6275 7465 3d22 6d6f  ap(attribute="mo
│ │ │ -001fd1b0: 756e 7422 2920 7c20 6c69 7374 270a 2020  unt") | list'.  
│ │ │ -001fd1c0: 2d20 6d6f 756e 745f 696e 666f 2069 7320  - mount_info is 
│ │ │ -001fd1d0: 6465 6669 6e65 640a 2020 2d20 2864 6576  defined.  - (dev
│ │ │ -001fd1e0: 6963 655f 6e61 6d65 2e73 7464 6f75 7420  ice_name.stdout 
│ │ │ -001fd1f0: 6973 2064 6566 696e 6564 2061 6e64 2028  is defined and (
│ │ │ -001fd200: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ -001fd210: 7574 207c 206c 656e 6774 6820 2667 743b  ut | length >
│ │ │ -001fd220: 2030 2929 206f 7220 2822 2d2d 6673 7461   0)) or ("--fsta
│ │ │ -001fd230: 6222 0a20 2020 207c 206c 656e 6774 6820  b".    | length 
│ │ │ -001fd240: 3d3d 2030 290a 2020 7461 6773 3a0a 2020  == 0).  tags:.  
│ │ │ -001fd250: 2d20 636f 6e66 6967 7572 655f 7374 7261  - configure_stra
│ │ │ -001fd260: 7465 6779 0a20 202d 2068 6967 685f 6469  tegy.  - high_di
│ │ │ -001fd270: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ -001fd280: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ -001fd290: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ -001fd2a0: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e    - mount_option
│ │ │ -001fd2b0: 5f76 6172 5f74 6d70 5f6e 6f65 7865 630a  _var_tmp_noexec.
│ │ │ -001fd2c0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ -001fd2d0: 6564 6564 0a3c 2f63 6f64 653e 3c2f 7072  eded.Remediation
│ │ │ -001fd390: 2053 6865 6c6c 2073 6372 6970 7420 e287   Shell script ..
│ │ │ -001fd3a0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c  .
C │ │ │ -001fbf20: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -001fbf50: 6f6e 3a3c 2f74 683e 3c74 643e 6869 6768 on:high │ │ │ -001fbf60: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -001fbfa0: 793a 3c2f 7468 3e3c 7464 3e63 6f6e 6669 y:confi │ │ │ -001fbfb0: 6775 7265 3c2f 7464 3e3c 2f74 723e 3c2f gure
< │ │ │ -001fd420: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -001fd430: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
<
│ │ │ -001fd450: 636f 6465 3e23 2052 656d 6564 6961 7469  code># Remediati
│ │ │ -001fd460: 6f6e 2069 7320 6170 706c 6963 6162 6c65  on is applicable
│ │ │ -001fd470: 206f 6e6c 7920 696e 2063 6572 7461 696e   only in certain
│ │ │ -001fd480: 2070 6c61 7466 6f72 6d73 0a69 6620 2820   platforms.if ( 
│ │ │ -001fd490: 2120 2820 7b20 7270 6d20 2d2d 7175 6965  ! ( { rpm --quie
│ │ │ -001fd4a0: 7420 2d71 206b 6572 6e65 6c20 3b7d 2026  t -q kernel ;} &
│ │ │ -001fd4b0: 616d 703b 2661 6d70 3b20 7b20 7270 6d20  amp;& { rpm 
│ │ │ -001fd4c0: 2d2d 7175 6965 7420 2d71 2062 6f6f 7463  --quiet -q bootc
│ │ │ -001fd4d0: 203b 7d20 2661 6d70 3b26 616d 703b 207b   ;} && {
│ │ │ -001fd4e0: 2021 2072 706d 202d 2d71 7569 6574 202d   ! rpm --quiet -
│ │ │ -001fd4f0: 7120 6f70 656e 7368 6966 742d 6b75 6265  q openshift-kube
│ │ │ -001fd500: 6c65 7420 3b7d 2026 616d 703b 2661 6d70  let ;} &&
│ │ │ -001fd510: 3b20 285b 202d 6620 2f72 756e 2f6f 7374  ; ([ -f /run/ost
│ │ │ -001fd520: 7265 652d 626f 6f74 6564 205d 207c 7c20  ree-booted ] || 
│ │ │ -001fd530: 5b20 2d4c 202f 6f73 7472 6565 205d 2920  [ -L /ostree ]) 
│ │ │ -001fd540: 2920 2661 6d70 3b26 616d 703b 2021 2028  ) && ! (
│ │ │ -001fd550: 205b 202d 6620 2f2e 646f 636b 6572 656e   [ -f /.dockeren
│ │ │ -001fd560: 7620 5d20 7c7c 205b 202d 6620 2f72 756e  v ] || [ -f /run
│ │ │ -001fd570: 2f2e 636f 6e74 6169 6e65 7265 6e76 205d  /.containerenv ]
│ │ │ -001fd580: 2029 2029 2026 616d 703b 2661 6d70 3b20   ) ) && 
│ │ │ -001fd590: 7b20 2820 6669 6e64 6d6e 7420 2d2d 6b65  { ( findmnt --ke
│ │ │ -001fd5a0: 726e 656c 2022 2f76 6172 2f74 6d70 2220  rnel "/var/tmp" 
│ │ │ -001fd5b0: 2667 743b 202f 6465 762f 6e75 6c6c 207c  > /dev/null |
│ │ │ -001fd5c0: 7c20 6669 6e64 6d6e 7420 2d2d 6673 7461  | findmnt --fsta
│ │ │ -001fd5d0: 6220 222f 7661 722f 746d 7022 2026 6774  b "/var/tmp" >
│ │ │ -001fd5e0: 3b20 2f64 6576 2f6e 756c 6c20 293b 207d  ; /dev/null ); }
│ │ │ -001fd5f0: 3b20 7468 656e 0a0a 6675 6e63 7469 6f6e  ; then..function
│ │ │ -001fd600: 2070 6572 666f 726d 5f72 656d 6564 6961   perform_remedia
│ │ │ -001fd610: 7469 6f6e 207b 0a0a 2020 2020 0a20 2020  tion {..    .   
│ │ │ -001fd620: 2020 2020 2023 2074 6865 206d 6f75 6e74       # the mount
│ │ │ -001fd630: 2070 6f69 6e74 202f 7661 722f 746d 7020   point /var/tmp 
│ │ │ -001fd640: 6861 7320 746f 2062 6520 6465 6669 6e65  has to be define
│ │ │ -001fd650: 6420 696e 202f 6574 632f 6673 7461 620a  d in /etc/fstab.
│ │ │ -001fd660: 2020 2020 2020 2020 2320 6265 666f 7265          # before
│ │ │ -001fd670: 2074 6869 7320 7265 6d65 6469 6174 696f   this remediatio
│ │ │ -001fd680: 6e20 6361 6e20 6265 2065 7865 6375 7465  n can be execute
│ │ │ -001fd690: 642e 2049 6e20 6361 7365 2069 7420 6973  d. In case it is
│ │ │ -001fd6a0: 206e 6f74 2064 6566 696e 6564 2c20 7468   not defined, th
│ │ │ -001fd6b0: 650a 2020 2020 2020 2020 2320 7265 6d65  e.        # reme
│ │ │ -001fd6c0: 6469 6174 696f 6e20 6162 6f72 7473 2061  diation aborts a
│ │ │ -001fd6d0: 6e64 206e 6f20 6368 616e 6765 7320 7265  nd no changes re
│ │ │ -001fd6e0: 6761 7264 696e 6720 7468 6520 6d6f 756e  garding the moun
│ │ │ -001fd6f0: 7420 706f 696e 7420 6172 6520 646f 6e65  t point are done
│ │ │ -001fd700: 2e0a 2020 2020 2020 2020 6d6f 756e 745f  ..        mount_
│ │ │ -001fd710: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ -001fd720: 7870 3d22 2428 7072 696e 7466 2022 5e5b  xp="$(printf "^[
│ │ │ -001fd730: 5b3a 7370 6163 653a 5d5d 2a5b 5e23 5d2e  [:space:]]*[^#].
│ │ │ -001fd740: 2a5b 5b3a 7370 6163 653a 5d5d 2573 5b5b  *[[:space:]]%s[[
│ │ │ -001fd750: 3a73 7061 6365 3a5d 5d22 2022 2f76 6172  :space:]]" "/var
│ │ │ -001fd760: 2f74 6d70 2229 220a 0a20 2020 2067 7265  /tmp")"..    gre
│ │ │ -001fd770: 7020 2224 6d6f 756e 745f 706f 696e 745f  p "$mount_point_
│ │ │ -001fd780: 6d61 7463 685f 7265 6765 7870 2220 2d71  match_regexp" -q
│ │ │ -001fd790: 202f 6574 632f 6673 7461 6220 5c0a 2020   /etc/fstab \.  
│ │ │ -001fd7a0: 2020 2020 2020 7c7c 207b 2065 6368 6f20        || { echo 
│ │ │ -001fd7b0: 2254 6865 206d 6f75 6e74 2070 6f69 6e74  "The mount point
│ │ │ -001fd7c0: 2027 2f76 6172 2f74 6d70 2720 6973 206e   '/var/tmp' is n
│ │ │ -001fd7d0: 6f74 2065 7665 6e20 696e 202f 6574 632f  ot even in /etc/
│ │ │ -001fd7e0: 6673 7461 622c 2073 6f20 7765 2063 616e  fstab, so we can
│ │ │ -001fd7f0: 2774 2073 6574 2075 7020 6d6f 756e 7420  't set up mount 
│ │ │ -001fd800: 6f70 7469 6f6e 7322 2026 6774 3b26 616d  options" >&am
│ │ │ -001fd810: 703b 323b 0a20 2020 2020 2020 2020 2020  p;2;.           
│ │ │ -001fd820: 2020 2020 2065 6368 6f20 224e 6f74 2072       echo "Not r
│ │ │ -001fd830: 656d 6564 6961 7469 6e67 2c20 6265 6361  emediating, beca
│ │ │ -001fd840: 7573 6520 7468 6572 6520 6973 206e 6f20  use there is no 
│ │ │ -001fd850: 7265 636f 7264 206f 6620 2f76 6172 2f74  record of /var/t
│ │ │ -001fd860: 6d70 2069 6e20 2f65 7463 2f66 7374 6162  mp in /etc/fstab
│ │ │ -001fd870: 2220 2667 743b 2661 6d70 3b32 3b20 7265  " >&2; re
│ │ │ -001fd880: 7475 726e 2031 3b20 7d0a 2020 2020 0a0a  turn 1; }.    ..
│ │ │ -001fd890: 0a20 2020 206d 6f75 6e74 5f70 6f69 6e74  .    mount_point
│ │ │ -001fd8a0: 5f6d 6174 6368 5f72 6567 6578 703d 2224  _match_regexp="$
│ │ │ -001fd8b0: 2870 7269 6e74 6620 225e 5b5b 3a73 7061  (printf "^[[:spa
│ │ │ -001fd8c0: 6365 3a5d 5d2a 5b5e 235d 2e2a 5b5b 3a73  ce:]]*[^#].*[[:s
│ │ │ -001fd8d0: 7061 6365 3a5d 5d25 735b 5b3a 7370 6163  pace:]]%s[[:spac
│ │ │ -001fd8e0: 653a 5d5d 2220 2f76 6172 2f74 6d70 2922  e:]]" /var/tmp)"
│ │ │ -001fd8f0: 0a0a 2020 2020 2320 4966 2074 6865 206d  ..    # If the m
│ │ │ -001fd900: 6f75 6e74 2070 6f69 6e74 2069 7320 6e6f  ount point is no
│ │ │ -001fd910: 7420 696e 202f 6574 632f 6673 7461 622c  t in /etc/fstab,
│ │ │ -001fd920: 2067 6574 2070 7265 7669 6f75 7320 6d6f   get previous mo
│ │ │ -001fd930: 756e 7420 6f70 7469 6f6e 7320 6672 6f6d  unt options from
│ │ │ -001fd940: 202f 6574 632f 6d74 6162 0a20 2020 2069   /etc/mtab.    i
│ │ │ -001fd950: 6620 2120 6772 6570 202d 7120 2224 6d6f  f ! grep -q "$mo
│ │ │ -001fd960: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ -001fd970: 7265 6765 7870 2220 2f65 7463 2f66 7374  regexp" /etc/fst
│ │ │ -001fd980: 6162 3b20 7468 656e 0a20 2020 2020 2020  ab; then.       
│ │ │ -001fd990: 2023 2072 756e 7469 6d65 206f 7074 7320   # runtime opts 
│ │ │ -001fd9a0: 7769 7468 6f75 7420 736f 6d65 2061 7574  without some aut
│ │ │ -001fd9b0: 6f6d 6174 6963 206b 6572 6e65 6c2f 7573  omatic kernel/us
│ │ │ -001fd9c0: 6572 7370 6163 652d 6164 6465 6420 6465  erspace-added de
│ │ │ -001fd9d0: 6661 756c 7473 0a20 2020 2020 2020 2070  faults.        p
│ │ │ -001fd9e0: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ -001fd9f0: 7473 3d24 2867 7265 7020 2224 6d6f 756e  ts=$(grep "$moun
│ │ │ -001fda00: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ -001fda10: 6765 7870 2220 2f65 7463 2f6d 7461 6220  gexp" /etc/mtab 
│ │ │ -001fda20: 7c20 6865 6164 202d 3120 7c20 2061 776b  | head -1 |  awk
│ │ │ -001fda30: 2027 7b70 7269 6e74 2024 347d 2720 5c0a   '{print $4}' \.
│ │ │ -001fda40: 2020 2020 2020 2020 2020 2020 2020 2020                  
│ │ │ -001fda50: 2020 2020 7c20 7365 6420 2d45 2022 732f      | sed -E "s/
│ │ │ -001fda60: 2872 777c 6465 6661 756c 7473 7c73 6563  (rw|defaults|sec
│ │ │ -001fda70: 6c61 6265 6c7c 6e6f 6578 6563 2928 2c7c  label|noexec)(,|
│ │ │ -001fda80: 2429 2f2f 673b 732f 2c24 2f2f 2229 0a20  $)//g;s/,$//"). 
│ │ │ -001fda90: 2020 2020 2020 205b 2022 2470 7265 7669         [ "$previ
│ │ │ -001fdaa0: 6f75 735f 6d6f 756e 745f 6f70 7473 2220  ous_mount_opts" 
│ │ │ -001fdab0: 5d20 2661 6d70 3b26 616d 703b 2070 7265  ] && pre
│ │ │ -001fdac0: 7669 6f75 735f 6d6f 756e 745f 6f70 7473  vious_mount_opts
│ │ │ -001fdad0: 2b3d 222c 220a 2020 2020 2020 2020 2320  +=",".        # 
│ │ │ -001fdae0: 496e 2069 736f 3936 3630 2066 696c 6573  In iso9660 files
│ │ │ -001fdaf0: 7973 7465 6d73 206d 7461 6220 636f 756c  ystems mtab coul
│ │ │ -001fdb00: 6420 6465 7363 7269 6265 2061 2022 626c  d describe a "bl
│ │ │ -001fdb10: 6f63 6b73 697a 6522 2076 616c 7565 2c20  ocksize" value, 
│ │ │ -001fdb20: 7468 6973 2073 686f 756c 6420 6265 2072  this should be r
│ │ │ -001fdb30: 6566 6c65 6374 6564 2069 6e0a 2020 2020  eflected in.    
│ │ │ -001fdb40: 2020 2020 2320 6673 7461 6220 6173 2022      # fstab as "
│ │ │ -001fdb50: 626c 6f63 6b22 2e20 2054 6865 206e 6578  block".  The nex
│ │ │ -001fdb60: 7420 7661 7269 6162 6c65 2069 7320 746f  t variable is to
│ │ │ -001fdb70: 2073 6174 6973 6679 2073 6865 6c6c 6368   satisfy shellch
│ │ │ -001fdb80: 6563 6b20 5343 3230 3530 2e0a 2020 2020  eck SC2050..    
│ │ │ -001fdb90: 2020 2020 6673 5f74 7970 653d 2222 0a20      fs_type="". 
│ │ │ -001fdba0: 2020 2020 2020 2069 6620 5b20 2022 2466         if [  "$f
│ │ │ -001fdbb0: 735f 7479 7065 2220 3d3d 2022 6973 6f39  s_type" == "iso9
│ │ │ -001fdbc0: 3636 3022 205d 203b 2074 6865 6e0a 2020  660" ] ; then.  
│ │ │ -001fdbd0: 2020 2020 2020 2020 2020 7072 6576 696f            previo
│ │ │ -001fdbe0: 7573 5f6d 6f75 6e74 5f6f 7074 733d 2428  us_mount_opts=$(
│ │ │ -001fdbf0: 7365 6420 2773 2f62 6c6f 636b 7369 7a65  sed 's/blocksize
│ │ │ -001fdc00: 3d2f 626c 6f63 6b3d 2f27 2026 6c74 3b26  =/block=/' <&
│ │ │ -001fdc10: 6c74 3b26 6c74 3b20 2224 7072 6576 696f  lt;< "$previo
│ │ │ -001fdc20: 7573 5f6d 6f75 6e74 5f6f 7074 7322 290a  us_mount_opts").
│ │ │ -001fdc30: 2020 2020 2020 2020 6669 0a20 2020 2020          fi.     
│ │ │ -001fdc40: 2020 2065 6368 6f20 2220 2f76 6172 2f74     echo " /var/t
│ │ │ -001fdc50: 6d70 2020 6465 6661 756c 7473 2c24 7b70  mp  defaults,${p
│ │ │ -001fdc60: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ -001fdc70: 7473 7d6e 6f65 7865 6320 3020 3022 2026  ts}noexec 0 0" &
│ │ │ -001fdc80: 6774 3b26 6774 3b20 2f65 7463 2f66 7374  gt;> /etc/fst
│ │ │ -001fdc90: 6162 0a20 2020 2023 2049 6620 7468 6520  ab.    # If the 
│ │ │ -001fdca0: 6d6f 756e 745f 6f70 7420 6f70 7469 6f6e  mount_opt option
│ │ │ -001fdcb0: 2069 7320 6e6f 7420 616c 7265 6164 7920   is not already 
│ │ │ -001fdcc0: 696e 2074 6865 206d 6f75 6e74 2070 6f69  in the mount poi
│ │ │ -001fdcd0: 6e74 2773 202f 6574 632f 6673 7461 6220  nt's /etc/fstab 
│ │ │ -001fdce0: 656e 7472 792c 2061 6464 2069 740a 2020  entry, add it.  
│ │ │ -001fdcf0: 2020 656c 6966 2021 2067 7265 7020 2224    elif ! grep "$
│ │ │ -001fdd00: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ -001fdd10: 685f 7265 6765 7870 2220 2f65 7463 2f66  h_regexp" /etc/f
│ │ │ -001fdd20: 7374 6162 207c 2067 7265 7020 2d71 2022  stab | grep -q "
│ │ │ -001fdd30: 6e6f 6578 6563 223b 2074 6865 6e0a 2020  noexec"; then.  
│ │ │ -001fdd40: 2020 2020 2020 7072 6576 696f 7573 5f6d        previous_m
│ │ │ -001fdd50: 6f75 6e74 5f6f 7074 733d 2428 6772 6570  ount_opts=$(grep
│ │ │ -001fdd60: 2022 246d 6f75 6e74 5f70 6f69 6e74 5f6d   "$mount_point_m
│ │ │ -001fdd70: 6174 6368 5f72 6567 6578 7022 202f 6574  atch_regexp" /et
│ │ │ -001fdd80: 632f 6673 7461 6220 7c20 6177 6b20 277b  c/fstab | awk '{
│ │ │ -001fdd90: 7072 696e 7420 2434 7d27 290a 2020 2020  print $4}').    
│ │ │ -001fdda0: 2020 2020 7365 6420 2d69 2022 737c 5c28      sed -i "s|\(
│ │ │ -001fddb0: 247b 6d6f 756e 745f 706f 696e 745f 6d61  ${mount_point_ma
│ │ │ -001fddc0: 7463 685f 7265 6765 7870 7d2e 2a24 7b70  tch_regexp}.*${p
│ │ │ -001fddd0: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ -001fdde0: 7473 7d5c 297c 5c31 2c6e 6f65 7865 637c  ts}\)|\1,noexec|
│ │ │ -001fddf0: 2220 2f65 7463 2f66 7374 6162 0a20 2020  " /etc/fstab.   
│ │ │ -001fde00: 2066 690a 0a0a 2020 2020 6966 206d 6b64   fi...    if mkd
│ │ │ -001fde10: 6972 202d 7020 222f 7661 722f 746d 7022  ir -p "/var/tmp"
│ │ │ -001fde20: 3b20 7468 656e 0a20 2020 2020 2020 2069  ; then.        i
│ │ │ -001fde30: 6620 6d6f 756e 7470 6f69 6e74 202d 7120  f mountpoint -q 
│ │ │ -001fde40: 222f 7661 722f 746d 7022 3b20 7468 656e  "/var/tmp"; then
│ │ │ -001fde50: 0a20 2020 2020 2020 2020 2020 206d 6f75  .            mou
│ │ │ -001fde60: 6e74 202d 6f20 7265 6d6f 756e 7420 2d2d  nt -o remount --
│ │ │ -001fde70: 7461 7267 6574 2022 2f76 6172 2f74 6d70  target "/var/tmp
│ │ │ -001fde80: 220a 2020 2020 2020 2020 6669 0a20 2020  ".        fi.   
│ │ │ -001fde90: 2066 690a 7d0a 0a70 6572 666f 726d 5f72   fi.}..perform_r
│ │ │ -001fdea0: 656d 6564 6961 7469 6f6e 0a0a 656c 7365  emediation..else
│ │ │ -001fdeb0: 0a20 2020 2026 6774 3b26 616d 703b 3220  .    >&2 
│ │ │ -001fdec0: 6563 686f 2027 5265 6d65 6469 6174 696f  echo 'Remediatio
│ │ │ -001fded0: 6e20 6973 206e 6f74 2061 7070 6c69 6361  n is not applica
│ │ │ -001fdee0: 626c 652c 206e 6f74 6869 6e67 2077 6173  ble, nothing was
│ │ │ -001fdef0: 2064 6f6e 6527 0a66 690a 3c2f 636f 6465   done'.fi.
< │ │ │ +001fbcf0: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ +001fbd00: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ +001fbd20: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ +001fbd30: 3c74 643e 6869 6768 3c2f 7464 3e3c 2f74 highReboot │ │ │ +001fbd50: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +001fbd60: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ +001fbd80: 7464 3e63 6f6e 6669 6775 7265 3c2f 7464 td>configure

- name: │ │ │ +001fbdb0: 2047 6174 6865 7220 7468 6520 7061 636b Gather the pack │ │ │ +001fbdc0: 6167 6520 6661 6374 730a 2020 7061 636b age facts. pack │ │ │ +001fbdd0: 6167 655f 6661 6374 733a 0a20 2020 206d age_facts:. m │ │ │ +001fbde0: 616e 6167 6572 3a20 6175 746f 0a20 2074 anager: auto. t │ │ │ +001fbdf0: 6167 733a 0a20 202d 2063 6f6e 6669 6775 ags:. - configu │ │ │ +001fbe00: 7265 5f73 7472 6174 6567 790a 2020 2d20 re_strategy. - │ │ │ +001fbe10: 6869 6768 5f64 6973 7275 7074 696f 6e0a high_disruption. │ │ │ +001fbe20: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869 - low_complexi │ │ │ +001fbe30: 7479 0a20 202d 206d 6564 6975 6d5f 7365 ty. - medium_se │ │ │ +001fbe40: 7665 7269 7479 0a20 202d 206d 6f75 6e74 verity. - mount │ │ │ +001fbe50: 5f6f 7074 696f 6e5f 7661 725f 746d 705f _option_var_tmp_ │ │ │ +001fbe60: 6e6f 6578 6563 0a20 202d 206e 6f5f 7265 noexec. - no_re │ │ │ +001fbe70: 626f 6f74 5f6e 6565 6465 640a 0a2d 206e boot_needed..- n │ │ │ +001fbe80: 616d 653a 2027 4164 6420 6e6f 6578 6563 ame: 'Add noexec │ │ │ +001fbe90: 204f 7074 696f 6e20 746f 202f 7661 722f Option to /var/ │ │ │ +001fbea0: 746d 703a 2043 6865 636b 2069 6e66 6f72 tmp: Check infor │ │ │ +001fbeb0: 6d61 7469 6f6e 2061 7373 6f63 6961 7465 mation associate │ │ │ +001fbec0: 6420 746f 206d 6f75 6e74 706f 696e 7427 d to mountpoint' │ │ │ +001fbed0: 0a20 2061 6e73 6962 6c65 2e62 7569 6c74 . ansible.built │ │ │ +001fbee0: 696e 2e63 6f6d 6d61 6e64 3a20 6669 6e64 in.command: find │ │ │ +001fbef0: 6d6e 7420 2d2d 6673 7461 6220 272f 7661 mnt --fstab '/va │ │ │ +001fbf00: 722f 746d 7027 0a20 2072 6567 6973 7465 r/tmp'. registe │ │ │ +001fbf10: 723a 2064 6576 6963 655f 6e61 6d65 0a20 r: device_name. │ │ │ +001fbf20: 2066 6169 6c65 645f 7768 656e 3a20 6465 failed_when: de │ │ │ +001fbf30: 7669 6365 5f6e 616d 652e 7263 2026 6774 vice_name.rc > │ │ │ +001fbf40: 3b20 310a 2020 6368 616e 6765 645f 7768 ; 1. changed_wh │ │ │ +001fbf50: 656e 3a20 6661 6c73 650a 2020 6368 6563 en: false. chec │ │ │ +001fbf60: 6b5f 6d6f 6465 3a20 6661 6c73 650a 2020 k_mode: false. │ │ │ +001fbf70: 7768 656e 3a0a 2020 2d20 2820 6e6f 7420 when:. - ( not │ │ │ +001fbf80: 2820 226b 6572 6e65 6c22 2069 6e20 616e ( "kernel" in an │ │ │ +001fbf90: 7369 626c 655f 6661 6374 732e 7061 636b sible_facts.pack │ │ │ +001fbfa0: 6167 6573 2061 6e64 2022 626f 6f74 6322 ages and "bootc" │ │ │ +001fbfb0: 2069 6e20 616e 7369 626c 655f 6661 6374 in ansible_fact │ │ │ +001fbfc0: 732e 7061 636b 6167 6573 0a20 2020 2061 s.packages. a │ │ │ +001fbfd0: 6e64 206e 6f74 2022 6f70 656e 7368 6966 nd not "openshif │ │ │ +001fbfe0: 742d 6b75 6265 6c65 7422 2069 6e20 616e t-kubelet" in an │ │ │ +001fbff0: 7369 626c 655f 6661 6374 732e 7061 636b sible_facts.pack │ │ │ +001fc000: 6167 6573 2061 6e64 2022 6f73 7472 6565 ages and "ostree │ │ │ +001fc010: 2220 696e 2061 6e73 6962 6c65 5f70 726f " in ansible_pro │ │ │ +001fc020: 635f 636d 646c 696e 650a 2020 2020 2920 c_cmdline. ) │ │ │ +001fc030: 616e 6420 6e6f 7420 2820 616e 7369 626c and not ( ansibl │ │ │ +001fc040: 655f 7669 7274 7561 6c69 7a61 7469 6f6e e_virtualization │ │ │ +001fc050: 5f74 7970 6520 696e 205b 2264 6f63 6b65 _type in ["docke │ │ │ +001fc060: 7222 2c20 226c 7863 222c 2022 6f70 656e r", "lxc", "open │ │ │ +001fc070: 767a 222c 2022 706f 646d 616e 222c 0a20 vz", "podman",. │ │ │ +001fc080: 2020 2022 636f 6e74 6169 6e65 7222 5d20 "container"] │ │ │ +001fc090: 2920 290a 2020 2d20 2722 2f76 6172 2f74 ) ). - '"/var/t │ │ │ +001fc0a0: 6d70 2220 696e 2061 6e73 6962 6c65 5f6d mp" in ansible_m │ │ │ +001fc0b0: 6f75 6e74 7320 7c20 6d61 7028 6174 7472 ounts | map(attr │ │ │ +001fc0c0: 6962 7574 653d 226d 6f75 6e74 2229 207c ibute="mount") | │ │ │ +001fc0d0: 206c 6973 7427 0a20 2074 6167 733a 0a20 list'. tags:. │ │ │ +001fc0e0: 202d 2063 6f6e 6669 6775 7265 5f73 7472 - configure_str │ │ │ +001fc0f0: 6174 6567 790a 2020 2d20 6869 6768 5f64 ategy. - high_d │ │ │ +001fc100: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f isruption. - lo │ │ │ +001fc110: 775f 636f 6d70 6c65 7869 7479 0a20 202d w_complexity. - │ │ │ +001fc120: 206d 6564 6975 6d5f 7365 7665 7269 7479 medium_severity │ │ │ +001fc130: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f . - mount_optio │ │ │ +001fc140: 6e5f 7661 725f 746d 705f 6e6f 6578 6563 n_var_tmp_noexec │ │ │ +001fc150: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e . - no_reboot_n │ │ │ +001fc160: 6565 6465 640a 0a2d 206e 616d 653a 2027 eeded..- name: ' │ │ │ +001fc170: 4164 6420 6e6f 6578 6563 204f 7074 696f Add noexec Optio │ │ │ +001fc180: 6e20 746f 202f 7661 722f 746d 703a 2043 n to /var/tmp: C │ │ │ +001fc190: 7265 6174 6520 6d6f 756e 745f 696e 666f reate mount_info │ │ │ +001fc1a0: 2064 6963 7469 6f6e 6172 7920 7661 7269 dictionary vari │ │ │ +001fc1b0: 6162 6c65 270a 2020 7365 745f 6661 6374 able'. set_fact │ │ │ +001fc1c0: 3a0a 2020 2020 6d6f 756e 745f 696e 666f :. mount_info │ │ │ +001fc1d0: 3a20 277b 7b20 6d6f 756e 745f 696e 666f : '{{ mount_info │ │ │ +001fc1e0: 7c64 6566 6175 6c74 287b 7d29 7c63 6f6d |default({})|com │ │ │ +001fc1f0: 6269 6e65 287b 6974 656d 2e30 3a20 6974 bine({item.0: it │ │ │ +001fc200: 656d 2e31 7d29 207d 7d27 0a20 2077 6974 em.1}) }}'. wit │ │ │ +001fc210: 685f 746f 6765 7468 6572 3a0a 2020 2d20 h_together:. - │ │ │ +001fc220: 277b 7b20 6465 7669 6365 5f6e 616d 652e '{{ device_name. │ │ │ +001fc230: 7374 646f 7574 5f6c 696e 6573 5b30 5d2e stdout_lines[0]. │ │ │ +001fc240: 7370 6c69 7428 2920 7c20 6d61 7028 2727 split() | map('' │ │ │ +001fc250: 6c6f 7765 7227 2729 207c 206c 6973 7420 lower'') | list │ │ │ +001fc260: 7d7d 270a 2020 2d20 277b 7b20 6465 7669 }}'. - '{{ devi │ │ │ +001fc270: 6365 5f6e 616d 652e 7374 646f 7574 5f6c ce_name.stdout_l │ │ │ +001fc280: 696e 6573 5b31 5d2e 7370 6c69 7428 2920 ines[1].split() │ │ │ +001fc290: 7c20 6c69 7374 207d 7d27 0a20 2077 6865 | list }}'. whe │ │ │ +001fc2a0: 6e3a 0a20 202d 2028 206e 6f74 2028 2022 n:. - ( not ( " │ │ │ +001fc2b0: 6b65 726e 656c 2220 696e 2061 6e73 6962 kernel" in ansib │ │ │ +001fc2c0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765 le_facts.package │ │ │ +001fc2d0: 7320 616e 6420 2262 6f6f 7463 2220 696e s and "bootc" in │ │ │ +001fc2e0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70 ansible_facts.p │ │ │ +001fc2f0: 6163 6b61 6765 730a 2020 2020 616e 6420 ackages. and │ │ │ +001fc300: 6e6f 7420 226f 7065 6e73 6869 6674 2d6b not "openshift-k │ │ │ +001fc310: 7562 656c 6574 2220 696e 2061 6e73 6962 ubelet" in ansib │ │ │ +001fc320: 6c65 5f66 6163 7473 2e70 6163 6b61 6765 le_facts.package │ │ │ +001fc330: 7320 616e 6420 226f 7374 7265 6522 2069 s and "ostree" i │ │ │ +001fc340: 6e20 616e 7369 626c 655f 7072 6f63 5f63 n ansible_proc_c │ │ │ +001fc350: 6d64 6c69 6e65 0a20 2020 2029 2061 6e64 mdline. ) and │ │ │ +001fc360: 206e 6f74 2028 2061 6e73 6962 6c65 5f76 not ( ansible_v │ │ │ +001fc370: 6972 7475 616c 697a 6174 696f 6e5f 7479 irtualization_ty │ │ │ +001fc380: 7065 2069 6e20 5b22 646f 636b 6572 222c pe in ["docker", │ │ │ +001fc390: 2022 6c78 6322 2c20 226f 7065 6e76 7a22 "lxc", "openvz" │ │ │ +001fc3a0: 2c20 2270 6f64 6d61 6e22 2c0a 2020 2020 , "podman",. │ │ │ +001fc3b0: 2263 6f6e 7461 696e 6572 225d 2029 2029 "container"] ) ) │ │ │ +001fc3c0: 0a20 202d 2027 222f 7661 722f 746d 7022 . - '"/var/tmp" │ │ │ +001fc3d0: 2069 6e20 616e 7369 626c 655f 6d6f 756e in ansible_moun │ │ │ +001fc3e0: 7473 207c 206d 6170 2861 7474 7269 6275 ts | map(attribu │ │ │ +001fc3f0: 7465 3d22 6d6f 756e 7422 2920 7c20 6c69 te="mount") | li │ │ │ +001fc400: 7374 270a 2020 2d20 6465 7669 6365 5f6e st'. - device_n │ │ │ +001fc410: 616d 652e 7374 646f 7574 2069 7320 6465 ame.stdout is de │ │ │ +001fc420: 6669 6e65 6420 616e 6420 6465 7669 6365 fined and device │ │ │ +001fc430: 5f6e 616d 652e 7374 646f 7574 5f6c 696e _name.stdout_lin │ │ │ +001fc440: 6573 2069 7320 6465 6669 6e65 640a 2020 es is defined. │ │ │ +001fc450: 2d20 2864 6576 6963 655f 6e61 6d65 2e73 - (device_name.s │ │ │ +001fc460: 7464 6f75 7420 7c20 6c65 6e67 7468 2026 tdout | length & │ │ │ +001fc470: 6774 3b20 3029 0a20 2074 6167 733a 0a20 gt; 0). tags:. │ │ │ +001fc480: 202d 2063 6f6e 6669 6775 7265 5f73 7472 - configure_str │ │ │ +001fc490: 6174 6567 790a 2020 2d20 6869 6768 5f64 ategy. - high_d │ │ │ +001fc4a0: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f isruption. - lo │ │ │ +001fc4b0: 775f 636f 6d70 6c65 7869 7479 0a20 202d w_complexity. - │ │ │ +001fc4c0: 206d 6564 6975 6d5f 7365 7665 7269 7479 medium_severity │ │ │ +001fc4d0: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f . - mount_optio │ │ │ +001fc4e0: 6e5f 7661 725f 746d 705f 6e6f 6578 6563 n_var_tmp_noexec │ │ │ +001fc4f0: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e . - no_reboot_n │ │ │ +001fc500: 6565 6465 640a 0a2d 206e 616d 653a 2027 eeded..- name: ' │ │ │ +001fc510: 4164 6420 6e6f 6578 6563 204f 7074 696f Add noexec Optio │ │ │ +001fc520: 6e20 746f 202f 7661 722f 746d 703a 2049 n to /var/tmp: I │ │ │ +001fc530: 6620 2f76 6172 2f74 6d70 206e 6f74 206d f /var/tmp not m │ │ │ +001fc540: 6f75 6e74 6564 2c20 6372 6166 7420 6d6f ounted, craft mo │ │ │ +001fc550: 756e 745f 696e 666f 0a20 2020 206d 616e unt_info. man │ │ │ +001fc560: 7561 6c6c 7927 0a20 2073 6574 5f66 6163 ually'. set_fac │ │ │ +001fc570: 743a 0a20 2020 206d 6f75 6e74 5f69 6e66 t:. mount_inf │ │ │ +001fc580: 6f3a 2027 7b7b 206d 6f75 6e74 5f69 6e66 o: '{{ mount_inf │ │ │ +001fc590: 6f7c 6465 6661 756c 7428 7b7d 297c 636f o|default({})|co │ │ │ +001fc5a0: 6d62 696e 6528 7b69 7465 6d2e 303a 2069 mbine({item.0: i │ │ │ +001fc5b0: 7465 6d2e 317d 2920 7d7d 270a 2020 7769 tem.1}) }}'. wi │ │ │ +001fc5c0: 7468 5f74 6f67 6574 6865 723a 0a20 202d th_together:. - │ │ │ +001fc5d0: 202d 2074 6172 6765 740a 2020 2020 2d20 - target. - │ │ │ +001fc5e0: 736f 7572 6365 0a20 2020 202d 2066 7374 source. - fst │ │ │ +001fc5f0: 7970 650a 2020 2020 2d20 6f70 7469 6f6e ype. - option │ │ │ +001fc600: 730a 2020 2d20 2d20 2f76 6172 2f74 6d70 s. - - /var/tmp │ │ │ +001fc610: 0a20 2020 202d 2027 270a 2020 2020 2d20 . - ''. - │ │ │ +001fc620: 2727 0a20 2020 202d 2064 6566 6175 6c74 ''. - default │ │ │ +001fc630: 730a 2020 7768 656e 3a0a 2020 2d20 2820 s. when:. - ( │ │ │ +001fc640: 6e6f 7420 2820 226b 6572 6e65 6c22 2069 not ( "kernel" i │ │ │ +001fc650: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ +001fc660: 7061 636b 6167 6573 2061 6e64 2022 626f packages and "bo │ │ │ +001fc670: 6f74 6322 2069 6e20 616e 7369 626c 655f otc" in ansible_ │ │ │ +001fc680: 6661 6374 732e 7061 636b 6167 6573 0a20 facts.packages. │ │ │ +001fc690: 2020 2061 6e64 206e 6f74 2022 6f70 656e and not "open │ │ │ +001fc6a0: 7368 6966 742d 6b75 6265 6c65 7422 2069 shift-kubelet" i │ │ │ +001fc6b0: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ +001fc6c0: 7061 636b 6167 6573 2061 6e64 2022 6f73 packages and "os │ │ │ +001fc6d0: 7472 6565 2220 696e 2061 6e73 6962 6c65 tree" in ansible │ │ │ +001fc6e0: 5f70 726f 635f 636d 646c 696e 650a 2020 _proc_cmdline. │ │ │ +001fc6f0: 2020 2920 616e 6420 6e6f 7420 2820 616e ) and not ( an │ │ │ +001fc700: 7369 626c 655f 7669 7274 7561 6c69 7a61 sible_virtualiza │ │ │ +001fc710: 7469 6f6e 5f74 7970 6520 696e 205b 2264 tion_type in ["d │ │ │ +001fc720: 6f63 6b65 7222 2c20 226c 7863 222c 2022 ocker", "lxc", " │ │ │ +001fc730: 6f70 656e 767a 222c 2022 706f 646d 616e openvz", "podman │ │ │ +001fc740: 222c 0a20 2020 2022 636f 6e74 6169 6e65 ",. "containe │ │ │ +001fc750: 7222 5d20 2920 290a 2020 2d20 2722 2f76 r"] ) ). - '"/v │ │ │ +001fc760: 6172 2f74 6d70 2220 696e 2061 6e73 6962 ar/tmp" in ansib │ │ │ +001fc770: 6c65 5f6d 6f75 6e74 7320 7c20 6d61 7028 le_mounts | map( │ │ │ +001fc780: 6174 7472 6962 7574 653d 226d 6f75 6e74 attribute="mount │ │ │ +001fc790: 2229 207c 206c 6973 7427 0a20 202d 2028 ") | list'. - ( │ │ │ +001fc7a0: 222d 2d66 7374 6162 2220 7c20 6c65 6e67 "--fstab" | leng │ │ │ +001fc7b0: 7468 203d 3d20 3029 0a20 202d 2064 6576 th == 0). - dev │ │ │ +001fc7c0: 6963 655f 6e61 6d65 2e73 7464 6f75 7420 ice_name.stdout │ │ │ +001fc7d0: 6973 2064 6566 696e 6564 2061 6e64 2064 is defined and d │ │ │ +001fc7e0: 6576 6963 655f 6e61 6d65 2e73 7464 6f75 evice_name.stdou │ │ │ +001fc7f0: 745f 6c69 6e65 7320 6973 2064 6566 696e t_lines is defin │ │ │ +001fc800: 6564 0a20 202d 2028 6465 7669 6365 5f6e ed. - (device_n │ │ │ +001fc810: 616d 652e 7374 646f 7574 207c 206c 656e ame.stdout | len │ │ │ +001fc820: 6774 6820 3d3d 2030 290a 2020 7461 6773 gth == 0). tags │ │ │ +001fc830: 3a0a 2020 2d20 636f 6e66 6967 7572 655f :. - configure_ │ │ │ +001fc840: 7374 7261 7465 6779 0a20 202d 2068 6967 strategy. - hig │ │ │ +001fc850: 685f 6469 7372 7570 7469 6f6e 0a20 202d h_disruption. - │ │ │ +001fc860: 206c 6f77 5f63 6f6d 706c 6578 6974 790a low_complexity. │ │ │ +001fc870: 2020 2d20 6d65 6469 756d 5f73 6576 6572 - medium_sever │ │ │ +001fc880: 6974 790a 2020 2d20 6d6f 756e 745f 6f70 ity. - mount_op │ │ │ +001fc890: 7469 6f6e 5f76 6172 5f74 6d70 5f6e 6f65 tion_var_tmp_noe │ │ │ +001fc8a0: 7865 630a 2020 2d20 6e6f 5f72 6562 6f6f xec. - no_reboo │ │ │ +001fc8b0: 745f 6e65 6564 6564 0a0a 2d20 6e61 6d65 t_needed..- name │ │ │ +001fc8c0: 3a20 2741 6464 206e 6f65 7865 6320 4f70 : 'Add noexec Op │ │ │ +001fc8d0: 7469 6f6e 2074 6f20 2f76 6172 2f74 6d70 tion to /var/tmp │ │ │ +001fc8e0: 3a20 4d61 6b65 2073 7572 6520 6e6f 6578 : Make sure noex │ │ │ +001fc8f0: 6563 206f 7074 696f 6e20 6973 2070 6172 ec option is par │ │ │ +001fc900: 7420 6f66 2074 6865 2074 6f0a 2020 2020 t of the to. │ │ │ +001fc910: 2f76 6172 2f74 6d70 206f 7074 696f 6e73 /var/tmp options │ │ │ +001fc920: 270a 2020 7365 745f 6661 6374 3a0a 2020 '. set_fact:. │ │ │ +001fc930: 2020 6d6f 756e 745f 696e 666f 3a20 277b mount_info: '{ │ │ │ +001fc940: 7b20 6d6f 756e 745f 696e 666f 207c 2063 { mount_info | c │ │ │ +001fc950: 6f6d 6269 6e65 2820 7b27 276f 7074 696f ombine( {''optio │ │ │ +001fc960: 6e73 2727 3a27 2727 277e 286d 6f75 6e74 ns'':''''~(mount │ │ │ +001fc970: 5f69 6e66 6f2e 6f70 7469 6f6e 7320 7c0a _info.options |. │ │ │ +001fc980: 2020 2020 2020 6465 6661 756c 7428 2727 default('' │ │ │ +001fc990: 2727 2929 7e28 2727 2c27 2720 6966 2028 ''))~('','' if ( │ │ │ +001fc9a0: 6d6f 756e 745f 696e 666f 2e6f 7074 696f mount_info.optio │ │ │ +001fc9b0: 6e73 207c 2064 6566 6175 6c74 2827 2727 ns | default(''' │ │ │ +001fc9c0: 2729 2920 656c 7365 2027 2727 2729 7e27 ')) else '''')~' │ │ │ +001fc9d0: 276e 6f65 7865 6327 270a 2020 2020 2020 'noexec''. │ │ │ +001fc9e0: 7d29 207d 7d27 0a20 2077 6865 6e3a 0a20 }) }}'. when:. │ │ │ +001fc9f0: 202d 2028 206e 6f74 2028 2022 6b65 726e - ( not ( "kern │ │ │ +001fca00: 656c 2220 696e 2061 6e73 6962 6c65 5f66 el" in ansible_f │ │ │ +001fca10: 6163 7473 2e70 6163 6b61 6765 7320 616e acts.packages an │ │ │ +001fca20: 6420 2262 6f6f 7463 2220 696e 2061 6e73 d "bootc" in ans │ │ │ +001fca30: 6962 6c65 5f66 6163 7473 2e70 6163 6b61 ible_facts.packa │ │ │ +001fca40: 6765 730a 2020 2020 616e 6420 6e6f 7420 ges. and not │ │ │ +001fca50: 226f 7065 6e73 6869 6674 2d6b 7562 656c "openshift-kubel │ │ │ +001fca60: 6574 2220 696e 2061 6e73 6962 6c65 5f66 et" in ansible_f │ │ │ +001fca70: 6163 7473 2e70 6163 6b61 6765 7320 616e acts.packages an │ │ │ +001fca80: 6420 226f 7374 7265 6522 2069 6e20 616e d "ostree" in an │ │ │ +001fca90: 7369 626c 655f 7072 6f63 5f63 6d64 6c69 sible_proc_cmdli │ │ │ +001fcaa0: 6e65 0a20 2020 2029 2061 6e64 206e 6f74 ne. ) and not │ │ │ +001fcab0: 2028 2061 6e73 6962 6c65 5f76 6972 7475 ( ansible_virtu │ │ │ +001fcac0: 616c 697a 6174 696f 6e5f 7479 7065 2069 alization_type i │ │ │ +001fcad0: 6e20 5b22 646f 636b 6572 222c 2022 6c78 n ["docker", "lx │ │ │ +001fcae0: 6322 2c20 226f 7065 6e76 7a22 2c20 2270 c", "openvz", "p │ │ │ +001fcaf0: 6f64 6d61 6e22 2c0a 2020 2020 2263 6f6e odman",. "con │ │ │ +001fcb00: 7461 696e 6572 225d 2029 2029 0a20 202d tainer"] ) ). - │ │ │ +001fcb10: 2027 222f 7661 722f 746d 7022 2069 6e20 '"/var/tmp" in │ │ │ +001fcb20: 616e 7369 626c 655f 6d6f 756e 7473 207c ansible_mounts | │ │ │ +001fcb30: 206d 6170 2861 7474 7269 6275 7465 3d22 map(attribute=" │ │ │ +001fcb40: 6d6f 756e 7422 2920 7c20 6c69 7374 270a mount") | list'. │ │ │ +001fcb50: 2020 2d20 6d6f 756e 745f 696e 666f 2069 - mount_info i │ │ │ +001fcb60: 7320 6465 6669 6e65 6420 616e 6420 226e s defined and "n │ │ │ +001fcb70: 6f65 7865 6322 206e 6f74 2069 6e20 286d oexec" not in (m │ │ │ +001fcb80: 6f75 6e74 5f69 6e66 6f2e 6f70 7469 6f6e ount_info.option │ │ │ +001fcb90: 7320 7c20 6465 6661 756c 7428 2727 2929 s | default('')) │ │ │ +001fcba0: 0a20 2074 6167 733a 0a20 202d 2063 6f6e . tags:. - con │ │ │ +001fcbb0: 6669 6775 7265 5f73 7472 6174 6567 790a figure_strategy. │ │ │ +001fcbc0: 2020 2d20 6869 6768 5f64 6973 7275 7074 - high_disrupt │ │ │ +001fcbd0: 696f 6e0a 2020 2d20 6c6f 775f 636f 6d70 ion. - low_comp │ │ │ +001fcbe0: 6c65 7869 7479 0a20 202d 206d 6564 6975 lexity. - mediu │ │ │ +001fcbf0: 6d5f 7365 7665 7269 7479 0a20 202d 206d m_severity. - m │ │ │ +001fcc00: 6f75 6e74 5f6f 7074 696f 6e5f 7661 725f ount_option_var_ │ │ │ +001fcc10: 746d 705f 6e6f 6578 6563 0a20 202d 206e tmp_noexec. - n │ │ │ +001fcc20: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a o_reboot_needed. │ │ │ +001fcc30: 0a2d 206e 616d 653a 2027 4164 6420 6e6f .- name: 'Add no │ │ │ +001fcc40: 6578 6563 204f 7074 696f 6e20 746f 202f exec Option to / │ │ │ +001fcc50: 7661 722f 746d 703a 2045 6e73 7572 6520 var/tmp: Ensure │ │ │ +001fcc60: 2f76 6172 2f74 6d70 2069 7320 6d6f 756e /var/tmp is moun │ │ │ +001fcc70: 7465 6420 7769 7468 206e 6f65 7865 6320 ted with noexec │ │ │ +001fcc80: 6f70 7469 6f6e 270a 2020 616e 7369 626c option'. ansibl │ │ │ +001fcc90: 652e 706f 7369 782e 6d6f 756e 743a 0a20 e.posix.mount:. │ │ │ +001fcca0: 2020 2070 6174 683a 202f 7661 722f 746d path: /var/tm │ │ │ +001fccb0: 700a 2020 2020 7372 633a 2027 7b7b 206d p. src: '{{ m │ │ │ +001fccc0: 6f75 6e74 5f69 6e66 6f2e 736f 7572 6365 ount_info.source │ │ │ +001fccd0: 207c 2064 6566 6175 6c74 2827 2727 2729 | default('''') │ │ │ +001fcce0: 207d 7d27 0a20 2020 206f 7074 733a 2027 }}'. opts: ' │ │ │ +001fccf0: 7b7b 206d 6f75 6e74 5f69 6e66 6f2e 6f70 {{ mount_info.op │ │ │ +001fcd00: 7469 6f6e 7320 7c20 6465 6661 756c 7428 tions | default( │ │ │ +001fcd10: 2727 2727 2920 7d7d 270a 2020 2020 7374 '''') }}'. st │ │ │ +001fcd20: 6174 653a 206d 6f75 6e74 6564 0a20 2020 ate: mounted. │ │ │ +001fcd30: 2066 7374 7970 653a 2027 7b7b 206d 6f75 fstype: '{{ mou │ │ │ +001fcd40: 6e74 5f69 6e66 6f2e 6673 7479 7065 207c nt_info.fstype | │ │ │ +001fcd50: 2064 6566 6175 6c74 2827 2727 2729 207d default('''') } │ │ │ +001fcd60: 7d27 0a20 2072 6567 6973 7465 723a 206d }'. register: m │ │ │ +001fcd70: 6f75 6e74 5f72 6573 756c 740a 2020 6661 ount_result. fa │ │ │ +001fcd80: 696c 6564 5f77 6865 6e3a 0a20 202d 206d iled_when:. - m │ │ │ +001fcd90: 6f75 6e74 5f72 6573 756c 7420 6973 2066 ount_result is f │ │ │ +001fcda0: 6169 6c65 640a 2020 2d20 2727 2774 6172 ailed. - '''tar │ │ │ +001fcdb0: 6765 7420 6973 2062 7573 7927 2720 6e6f get is busy'' no │ │ │ +001fcdc0: 7420 696e 2028 6d6f 756e 745f 7265 7375 t in (mount_resu │ │ │ +001fcdd0: 6c74 2e6d 7367 207c 2064 6566 6175 6c74 lt.msg | default │ │ │ +001fcde0: 2827 2727 2729 2927 0a20 202d 2027 2727 (''''))'. - ''' │ │ │ +001fcdf0: 616c 7265 6164 7920 6d6f 756e 7465 6427 already mounted' │ │ │ +001fce00: 2720 6e6f 7420 696e 2028 6d6f 756e 745f ' not in (mount_ │ │ │ +001fce10: 7265 7375 6c74 2e6d 7367 207c 2064 6566 result.msg | def │ │ │ +001fce20: 6175 6c74 2827 2727 2729 2927 0a20 2077 ault(''''))'. w │ │ │ +001fce30: 6865 6e3a 0a20 202d 2028 206e 6f74 2028 hen:. - ( not ( │ │ │ +001fce40: 2022 6b65 726e 656c 2220 696e 2061 6e73 "kernel" in ans │ │ │ +001fce50: 6962 6c65 5f66 6163 7473 2e70 6163 6b61 ible_facts.packa │ │ │ +001fce60: 6765 7320 616e 6420 2262 6f6f 7463 2220 ges and "bootc" │ │ │ +001fce70: 696e 2061 6e73 6962 6c65 5f66 6163 7473 in ansible_facts │ │ │ +001fce80: 2e70 6163 6b61 6765 730a 2020 2020 616e .packages. an │ │ │ +001fce90: 6420 6e6f 7420 226f 7065 6e73 6869 6674 d not "openshift │ │ │ +001fcea0: 2d6b 7562 656c 6574 2220 696e 2061 6e73 -kubelet" in ans │ │ │ +001fceb0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61 ible_facts.packa │ │ │ +001fcec0: 6765 7320 616e 6420 226f 7374 7265 6522 ges and "ostree" │ │ │ +001fced0: 2069 6e20 616e 7369 626c 655f 7072 6f63 in ansible_proc │ │ │ +001fcee0: 5f63 6d64 6c69 6e65 0a20 2020 2029 2061 _cmdline. ) a │ │ │ +001fcef0: 6e64 206e 6f74 2028 2061 6e73 6962 6c65 nd not ( ansible │ │ │ +001fcf00: 5f76 6972 7475 616c 697a 6174 696f 6e5f _virtualization_ │ │ │ +001fcf10: 7479 7065 2069 6e20 5b22 646f 636b 6572 type in ["docker │ │ │ +001fcf20: 222c 2022 6c78 6322 2c20 226f 7065 6e76 ", "lxc", "openv │ │ │ +001fcf30: 7a22 2c20 2270 6f64 6d61 6e22 2c0a 2020 z", "podman",. │ │ │ +001fcf40: 2020 2263 6f6e 7461 696e 6572 225d 2029 "container"] ) │ │ │ +001fcf50: 2029 0a20 202d 2027 222f 7661 722f 746d ). - '"/var/tm │ │ │ +001fcf60: 7022 2069 6e20 616e 7369 626c 655f 6d6f p" in ansible_mo │ │ │ +001fcf70: 756e 7473 207c 206d 6170 2861 7474 7269 unts | map(attri │ │ │ +001fcf80: 6275 7465 3d22 6d6f 756e 7422 2920 7c20 bute="mount") | │ │ │ +001fcf90: 6c69 7374 270a 2020 2d20 6d6f 756e 745f list'. - mount_ │ │ │ +001fcfa0: 696e 666f 2069 7320 6465 6669 6e65 640a info is defined. │ │ │ +001fcfb0: 2020 2d20 2864 6576 6963 655f 6e61 6d65 - (device_name │ │ │ +001fcfc0: 2e73 7464 6f75 7420 6973 2064 6566 696e .stdout is defin │ │ │ +001fcfd0: 6564 2061 6e64 2028 6465 7669 6365 5f6e ed and (device_n │ │ │ +001fcfe0: 616d 652e 7374 646f 7574 207c 206c 656e ame.stdout | len │ │ │ +001fcff0: 6774 6820 2667 743b 2030 2929 206f 7220 gth > 0)) or │ │ │ +001fd000: 2822 2d2d 6673 7461 6222 0a20 2020 207c ("--fstab". | │ │ │ +001fd010: 206c 656e 6774 6820 3d3d 2030 290a 2020 length == 0). │ │ │ +001fd020: 7461 6773 3a0a 2020 2d20 636f 6e66 6967 tags:. - config │ │ │ +001fd030: 7572 655f 7374 7261 7465 6779 0a20 202d ure_strategy. - │ │ │ +001fd040: 2068 6967 685f 6469 7372 7570 7469 6f6e high_disruption │ │ │ +001fd050: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578 . - low_complex │ │ │ +001fd060: 6974 790a 2020 2d20 6d65 6469 756d 5f73 ity. - medium_s │ │ │ +001fd070: 6576 6572 6974 790a 2020 2d20 6d6f 756e everity. - moun │ │ │ +001fd080: 745f 6f70 7469 6f6e 5f76 6172 5f74 6d70 t_option_var_tmp │ │ │ +001fd090: 5f6e 6f65 7865 630a 2020 2d20 6e6f 5f72 _noexec. - no_r │ │ │ +001fd0a0: 6562 6f6f 745f 6e65 6564 6564 0a3c 2f63 eboot_needed.

│ │ │ +001fd0c0: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ +001fd160: 6564 6961 7469 6f6e 2053 6865 6c6c 2073 ediation Shell s │ │ │ +001fd170: 6372 6970 7420 e287 b23c 2f61 3e3c 6272 cript ...
# R
│ │ │ +001fd230: 656d 6564 6961 7469 6f6e 2069 7320 6170  emediation is ap
│ │ │ +001fd240: 706c 6963 6162 6c65 206f 6e6c 7920 696e  plicable only in
│ │ │ +001fd250: 2063 6572 7461 696e 2070 6c61 7466 6f72   certain platfor
│ │ │ +001fd260: 6d73 0a69 6620 2820 2120 2820 7b20 7270  ms.if ( ! ( { rp
│ │ │ +001fd270: 6d20 2d2d 7175 6965 7420 2d71 206b 6572  m --quiet -q ker
│ │ │ +001fd280: 6e65 6c20 3b7d 2026 616d 703b 2661 6d70  nel ;} &&
│ │ │ +001fd290: 3b20 7b20 7270 6d20 2d2d 7175 6965 7420  ; { rpm --quiet 
│ │ │ +001fd2a0: 2d71 2062 6f6f 7463 203b 7d20 2661 6d70  -q bootc ;} &
│ │ │ +001fd2b0: 3b26 616d 703b 207b 2021 2072 706d 202d  ;& { ! rpm -
│ │ │ +001fd2c0: 2d71 7569 6574 202d 7120 6f70 656e 7368  -quiet -q opensh
│ │ │ +001fd2d0: 6966 742d 6b75 6265 6c65 7420 3b7d 2026  ift-kubelet ;} &
│ │ │ +001fd2e0: 616d 703b 2661 6d70 3b20 285b 202d 6620  amp;& ([ -f 
│ │ │ +001fd2f0: 2f72 756e 2f6f 7374 7265 652d 626f 6f74  /run/ostree-boot
│ │ │ +001fd300: 6564 205d 207c 7c20 5b20 2d4c 202f 6f73  ed ] || [ -L /os
│ │ │ +001fd310: 7472 6565 205d 2920 2920 2661 6d70 3b26  tree ]) ) &&
│ │ │ +001fd320: 616d 703b 2021 2028 205b 202d 6620 2f2e  amp; ! ( [ -f /.
│ │ │ +001fd330: 646f 636b 6572 656e 7620 5d20 7c7c 205b  dockerenv ] || [
│ │ │ +001fd340: 202d 6620 2f72 756e 2f2e 636f 6e74 6169   -f /run/.contai
│ │ │ +001fd350: 6e65 7265 6e76 205d 2029 2029 2026 616d  nerenv ] ) ) &am
│ │ │ +001fd360: 703b 2661 6d70 3b20 7b20 2820 6669 6e64  p;& { ( find
│ │ │ +001fd370: 6d6e 7420 2d2d 6b65 726e 656c 2022 2f76  mnt --kernel "/v
│ │ │ +001fd380: 6172 2f74 6d70 2220 2667 743b 202f 6465  ar/tmp" > /de
│ │ │ +001fd390: 762f 6e75 6c6c 207c 7c20 6669 6e64 6d6e  v/null || findmn
│ │ │ +001fd3a0: 7420 2d2d 6673 7461 6220 222f 7661 722f  t --fstab "/var/
│ │ │ +001fd3b0: 746d 7022 2026 6774 3b20 2f64 6576 2f6e  tmp" > /dev/n
│ │ │ +001fd3c0: 756c 6c20 293b 207d 3b20 7468 656e 0a0a  ull ); }; then..
│ │ │ +001fd3d0: 6675 6e63 7469 6f6e 2070 6572 666f 726d  function perform
│ │ │ +001fd3e0: 5f72 656d 6564 6961 7469 6f6e 207b 0a0a  _remediation {..
│ │ │ +001fd3f0: 2020 2020 0a20 2020 2020 2020 2023 2074      .        # t
│ │ │ +001fd400: 6865 206d 6f75 6e74 2070 6f69 6e74 202f  he mount point /
│ │ │ +001fd410: 7661 722f 746d 7020 6861 7320 746f 2062  var/tmp has to b
│ │ │ +001fd420: 6520 6465 6669 6e65 6420 696e 202f 6574  e defined in /et
│ │ │ +001fd430: 632f 6673 7461 620a 2020 2020 2020 2020  c/fstab.        
│ │ │ +001fd440: 2320 6265 666f 7265 2074 6869 7320 7265  # before this re
│ │ │ +001fd450: 6d65 6469 6174 696f 6e20 6361 6e20 6265  mediation can be
│ │ │ +001fd460: 2065 7865 6375 7465 642e 2049 6e20 6361   executed. In ca
│ │ │ +001fd470: 7365 2069 7420 6973 206e 6f74 2064 6566  se it is not def
│ │ │ +001fd480: 696e 6564 2c20 7468 650a 2020 2020 2020  ined, the.      
│ │ │ +001fd490: 2020 2320 7265 6d65 6469 6174 696f 6e20    # remediation 
│ │ │ +001fd4a0: 6162 6f72 7473 2061 6e64 206e 6f20 6368  aborts and no ch
│ │ │ +001fd4b0: 616e 6765 7320 7265 6761 7264 696e 6720  anges regarding 
│ │ │ +001fd4c0: 7468 6520 6d6f 756e 7420 706f 696e 7420  the mount point 
│ │ │ +001fd4d0: 6172 6520 646f 6e65 2e0a 2020 2020 2020  are done..      
│ │ │ +001fd4e0: 2020 6d6f 756e 745f 706f 696e 745f 6d61    mount_point_ma
│ │ │ +001fd4f0: 7463 685f 7265 6765 7870 3d22 2428 7072  tch_regexp="$(pr
│ │ │ +001fd500: 696e 7466 2022 5e5b 5b3a 7370 6163 653a  intf "^[[:space:
│ │ │ +001fd510: 5d5d 2a5b 5e23 5d2e 2a5b 5b3a 7370 6163  ]]*[^#].*[[:spac
│ │ │ +001fd520: 653a 5d5d 2573 5b5b 3a73 7061 6365 3a5d  e:]]%s[[:space:]
│ │ │ +001fd530: 5d22 2022 2f76 6172 2f74 6d70 2229 220a  ]" "/var/tmp")".
│ │ │ +001fd540: 0a20 2020 2067 7265 7020 2224 6d6f 756e  .    grep "$moun
│ │ │ +001fd550: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ +001fd560: 6765 7870 2220 2d71 202f 6574 632f 6673  gexp" -q /etc/fs
│ │ │ +001fd570: 7461 6220 5c0a 2020 2020 2020 2020 7c7c  tab \.        ||
│ │ │ +001fd580: 207b 2065 6368 6f20 2254 6865 206d 6f75   { echo "The mou
│ │ │ +001fd590: 6e74 2070 6f69 6e74 2027 2f76 6172 2f74  nt point '/var/t
│ │ │ +001fd5a0: 6d70 2720 6973 206e 6f74 2065 7665 6e20  mp' is not even 
│ │ │ +001fd5b0: 696e 202f 6574 632f 6673 7461 622c 2073  in /etc/fstab, s
│ │ │ +001fd5c0: 6f20 7765 2063 616e 2774 2073 6574 2075  o we can't set u
│ │ │ +001fd5d0: 7020 6d6f 756e 7420 6f70 7469 6f6e 7322  p mount options"
│ │ │ +001fd5e0: 2026 6774 3b26 616d 703b 323b 0a20 2020   >&2;.   
│ │ │ +001fd5f0: 2020 2020 2020 2020 2020 2020 2065 6368               ech
│ │ │ +001fd600: 6f20 224e 6f74 2072 656d 6564 6961 7469  o "Not remediati
│ │ │ +001fd610: 6e67 2c20 6265 6361 7573 6520 7468 6572  ng, because ther
│ │ │ +001fd620: 6520 6973 206e 6f20 7265 636f 7264 206f  e is no record o
│ │ │ +001fd630: 6620 2f76 6172 2f74 6d70 2069 6e20 2f65  f /var/tmp in /e
│ │ │ +001fd640: 7463 2f66 7374 6162 2220 2667 743b 2661  tc/fstab" >&a
│ │ │ +001fd650: 6d70 3b32 3b20 7265 7475 726e 2031 3b20  mp;2; return 1; 
│ │ │ +001fd660: 7d0a 2020 2020 0a0a 0a20 2020 206d 6f75  }.    ...    mou
│ │ │ +001fd670: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ +001fd680: 6567 6578 703d 2224 2870 7269 6e74 6620  egexp="$(printf 
│ │ │ +001fd690: 225e 5b5b 3a73 7061 6365 3a5d 5d2a 5b5e  "^[[:space:]]*[^
│ │ │ +001fd6a0: 235d 2e2a 5b5b 3a73 7061 6365 3a5d 5d25  #].*[[:space:]]%
│ │ │ +001fd6b0: 735b 5b3a 7370 6163 653a 5d5d 2220 2f76  s[[:space:]]" /v
│ │ │ +001fd6c0: 6172 2f74 6d70 2922 0a0a 2020 2020 2320  ar/tmp)"..    # 
│ │ │ +001fd6d0: 4966 2074 6865 206d 6f75 6e74 2070 6f69  If the mount poi
│ │ │ +001fd6e0: 6e74 2069 7320 6e6f 7420 696e 202f 6574  nt is not in /et
│ │ │ +001fd6f0: 632f 6673 7461 622c 2067 6574 2070 7265  c/fstab, get pre
│ │ │ +001fd700: 7669 6f75 7320 6d6f 756e 7420 6f70 7469  vious mount opti
│ │ │ +001fd710: 6f6e 7320 6672 6f6d 202f 6574 632f 6d74  ons from /etc/mt
│ │ │ +001fd720: 6162 0a20 2020 2069 6620 2120 6772 6570  ab.    if ! grep
│ │ │ +001fd730: 202d 7120 2224 6d6f 756e 745f 706f 696e   -q "$mount_poin
│ │ │ +001fd740: 745f 6d61 7463 685f 7265 6765 7870 2220  t_match_regexp" 
│ │ │ +001fd750: 2f65 7463 2f66 7374 6162 3b20 7468 656e  /etc/fstab; then
│ │ │ +001fd760: 0a20 2020 2020 2020 2023 2072 756e 7469  .        # runti
│ │ │ +001fd770: 6d65 206f 7074 7320 7769 7468 6f75 7420  me opts without 
│ │ │ +001fd780: 736f 6d65 2061 7574 6f6d 6174 6963 206b  some automatic k
│ │ │ +001fd790: 6572 6e65 6c2f 7573 6572 7370 6163 652d  ernel/userspace-
│ │ │ +001fd7a0: 6164 6465 6420 6465 6661 756c 7473 0a20  added defaults. 
│ │ │ +001fd7b0: 2020 2020 2020 2070 7265 7669 6f75 735f         previous_
│ │ │ +001fd7c0: 6d6f 756e 745f 6f70 7473 3d24 2867 7265  mount_opts=$(gre
│ │ │ +001fd7d0: 7020 2224 6d6f 756e 745f 706f 696e 745f  p "$mount_point_
│ │ │ +001fd7e0: 6d61 7463 685f 7265 6765 7870 2220 2f65  match_regexp" /e
│ │ │ +001fd7f0: 7463 2f6d 7461 6220 7c20 6865 6164 202d  tc/mtab | head -
│ │ │ +001fd800: 3120 7c20 2061 776b 2027 7b70 7269 6e74  1 |  awk '{print
│ │ │ +001fd810: 2024 347d 2720 5c0a 2020 2020 2020 2020   $4}' \.        
│ │ │ +001fd820: 2020 2020 2020 2020 2020 2020 7c20 7365              | se
│ │ │ +001fd830: 6420 2d45 2022 732f 2872 777c 6465 6661  d -E "s/(rw|defa
│ │ │ +001fd840: 756c 7473 7c73 6563 6c61 6265 6c7c 6e6f  ults|seclabel|no
│ │ │ +001fd850: 6578 6563 2928 2c7c 2429 2f2f 673b 732f  exec)(,|$)//g;s/
│ │ │ +001fd860: 2c24 2f2f 2229 0a20 2020 2020 2020 205b  ,$//").        [
│ │ │ +001fd870: 2022 2470 7265 7669 6f75 735f 6d6f 756e   "$previous_moun
│ │ │ +001fd880: 745f 6f70 7473 2220 5d20 2661 6d70 3b26  t_opts" ] &&
│ │ │ +001fd890: 616d 703b 2070 7265 7669 6f75 735f 6d6f  amp; previous_mo
│ │ │ +001fd8a0: 756e 745f 6f70 7473 2b3d 222c 220a 2020  unt_opts+=",".  
│ │ │ +001fd8b0: 2020 2020 2020 2320 496e 2069 736f 3936        # In iso96
│ │ │ +001fd8c0: 3630 2066 696c 6573 7973 7465 6d73 206d  60 filesystems m
│ │ │ +001fd8d0: 7461 6220 636f 756c 6420 6465 7363 7269  tab could descri
│ │ │ +001fd8e0: 6265 2061 2022 626c 6f63 6b73 697a 6522  be a "blocksize"
│ │ │ +001fd8f0: 2076 616c 7565 2c20 7468 6973 2073 686f   value, this sho
│ │ │ +001fd900: 756c 6420 6265 2072 6566 6c65 6374 6564  uld be reflected
│ │ │ +001fd910: 2069 6e0a 2020 2020 2020 2020 2320 6673   in.        # fs
│ │ │ +001fd920: 7461 6220 6173 2022 626c 6f63 6b22 2e20  tab as "block". 
│ │ │ +001fd930: 2054 6865 206e 6578 7420 7661 7269 6162   The next variab
│ │ │ +001fd940: 6c65 2069 7320 746f 2073 6174 6973 6679  le is to satisfy
│ │ │ +001fd950: 2073 6865 6c6c 6368 6563 6b20 5343 3230   shellcheck SC20
│ │ │ +001fd960: 3530 2e0a 2020 2020 2020 2020 6673 5f74  50..        fs_t
│ │ │ +001fd970: 7970 653d 2222 0a20 2020 2020 2020 2069  ype="".        i
│ │ │ +001fd980: 6620 5b20 2022 2466 735f 7479 7065 2220  f [  "$fs_type" 
│ │ │ +001fd990: 3d3d 2022 6973 6f39 3636 3022 205d 203b  == "iso9660" ] ;
│ │ │ +001fd9a0: 2074 6865 6e0a 2020 2020 2020 2020 2020   then.          
│ │ │ +001fd9b0: 2020 7072 6576 696f 7573 5f6d 6f75 6e74    previous_mount
│ │ │ +001fd9c0: 5f6f 7074 733d 2428 7365 6420 2773 2f62  _opts=$(sed 's/b
│ │ │ +001fd9d0: 6c6f 636b 7369 7a65 3d2f 626c 6f63 6b3d  locksize=/block=
│ │ │ +001fd9e0: 2f27 2026 6c74 3b26 6c74 3b26 6c74 3b20  /' <<< 
│ │ │ +001fd9f0: 2224 7072 6576 696f 7573 5f6d 6f75 6e74  "$previous_mount
│ │ │ +001fda00: 5f6f 7074 7322 290a 2020 2020 2020 2020  _opts").        
│ │ │ +001fda10: 6669 0a20 2020 2020 2020 2065 6368 6f20  fi.        echo 
│ │ │ +001fda20: 2220 2f76 6172 2f74 6d70 2020 6465 6661  " /var/tmp  defa
│ │ │ +001fda30: 756c 7473 2c24 7b70 7265 7669 6f75 735f  ults,${previous_
│ │ │ +001fda40: 6d6f 756e 745f 6f70 7473 7d6e 6f65 7865  mount_opts}noexe
│ │ │ +001fda50: 6320 3020 3022 2026 6774 3b26 6774 3b20  c 0 0" >> 
│ │ │ +001fda60: 2f65 7463 2f66 7374 6162 0a20 2020 2023  /etc/fstab.    #
│ │ │ +001fda70: 2049 6620 7468 6520 6d6f 756e 745f 6f70   If the mount_op
│ │ │ +001fda80: 7420 6f70 7469 6f6e 2069 7320 6e6f 7420  t option is not 
│ │ │ +001fda90: 616c 7265 6164 7920 696e 2074 6865 206d  already in the m
│ │ │ +001fdaa0: 6f75 6e74 2070 6f69 6e74 2773 202f 6574  ount point's /et
│ │ │ +001fdab0: 632f 6673 7461 6220 656e 7472 792c 2061  c/fstab entry, a
│ │ │ +001fdac0: 6464 2069 740a 2020 2020 656c 6966 2021  dd it.    elif !
│ │ │ +001fdad0: 2067 7265 7020 2224 6d6f 756e 745f 706f   grep "$mount_po
│ │ │ +001fdae0: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ +001fdaf0: 2220 2f65 7463 2f66 7374 6162 207c 2067  " /etc/fstab | g
│ │ │ +001fdb00: 7265 7020 2d71 2022 6e6f 6578 6563 223b  rep -q "noexec";
│ │ │ +001fdb10: 2074 6865 6e0a 2020 2020 2020 2020 7072   then.        pr
│ │ │ +001fdb20: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074  evious_mount_opt
│ │ │ +001fdb30: 733d 2428 6772 6570 2022 246d 6f75 6e74  s=$(grep "$mount
│ │ │ +001fdb40: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ +001fdb50: 6578 7022 202f 6574 632f 6673 7461 6220  exp" /etc/fstab 
│ │ │ +001fdb60: 7c20 6177 6b20 277b 7072 696e 7420 2434  | awk '{print $4
│ │ │ +001fdb70: 7d27 290a 2020 2020 2020 2020 7365 6420  }').        sed 
│ │ │ +001fdb80: 2d69 2022 737c 5c28 247b 6d6f 756e 745f  -i "s|\(${mount_
│ │ │ +001fdb90: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ +001fdba0: 7870 7d2e 2a24 7b70 7265 7669 6f75 735f  xp}.*${previous_
│ │ │ +001fdbb0: 6d6f 756e 745f 6f70 7473 7d5c 297c 5c31  mount_opts}\)|\1
│ │ │ +001fdbc0: 2c6e 6f65 7865 637c 2220 2f65 7463 2f66  ,noexec|" /etc/f
│ │ │ +001fdbd0: 7374 6162 0a20 2020 2066 690a 0a0a 2020  stab.    fi...  
│ │ │ +001fdbe0: 2020 6966 206d 6b64 6972 202d 7020 222f    if mkdir -p "/
│ │ │ +001fdbf0: 7661 722f 746d 7022 3b20 7468 656e 0a20  var/tmp"; then. 
│ │ │ +001fdc00: 2020 2020 2020 2069 6620 6d6f 756e 7470         if mountp
│ │ │ +001fdc10: 6f69 6e74 202d 7120 222f 7661 722f 746d  oint -q "/var/tm
│ │ │ +001fdc20: 7022 3b20 7468 656e 0a20 2020 2020 2020  p"; then.       
│ │ │ +001fdc30: 2020 2020 206d 6f75 6e74 202d 6f20 7265       mount -o re
│ │ │ +001fdc40: 6d6f 756e 7420 2d2d 7461 7267 6574 2022  mount --target "
│ │ │ +001fdc50: 2f76 6172 2f74 6d70 220a 2020 2020 2020  /var/tmp".      
│ │ │ +001fdc60: 2020 6669 0a20 2020 2066 690a 7d0a 0a70    fi.    fi.}..p
│ │ │ +001fdc70: 6572 666f 726d 5f72 656d 6564 6961 7469  erform_remediati
│ │ │ +001fdc80: 6f6e 0a0a 656c 7365 0a20 2020 2026 6774  on..else.    >
│ │ │ +001fdc90: 3b26 616d 703b 3220 6563 686f 2027 5265  ;&2 echo 'Re
│ │ │ +001fdca0: 6d65 6469 6174 696f 6e20 6973 206e 6f74  mediation is not
│ │ │ +001fdcb0: 2061 7070 6c69 6361 626c 652c 206e 6f74   applicable, not
│ │ │ +001fdcc0: 6869 6e67 2077 6173 2064 6f6e 6527 0a66  hing was done'.f
│ │ │ +001fdcd0: 690a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  i.
< │ │ │ +001fdce0: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation An │ │ │ +001fdd90: 6163 6f6e 6461 2073 6e69 7070 6574 20e2 aconda snippet . │ │ │ +001fdda0: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
Reboo │ │ │ +001fd200: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ +001fd210: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
│ │ │ +001fde20: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +001fde40: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 < │ │ │ +001fde70: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr> │ │ │ +001fdec0: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ +001fde30: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +001fde50: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:high
Reboot:false
St │ │ │ +001fdea0: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ +001fdeb0: 656e 6162 6c65 3c2f 7464 3e3c 2f74 723e enable
.part /var/tm
│ │ │ +001fdee0: 7020 2d2d 6d6f 756e 746f 7074 696f 6e73  p --mountoptions
│ │ │ +001fdef0: 3d22 6e6f 6578 6563 220a 3c2f 636f 6465  ="noexec".
Remediation An │ │ │ -001fe940: 6163 6f6e 6461 2073 6e69 7070 6574 20e2 aconda snippet . │ │ │ -001fe950: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ -001fe9d0: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -001fe9f0: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 < │ │ │ -001fea20: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr> │ │ │ -001fea70: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ -001fe9e0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ -001fea00: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:high
Reboot:false
St │ │ │ -001fea50: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ -001fea60: 656e 6162 6c65 3c2f 7464 3e3c 2f74 723e enable
.part /var/tm
│ │ │ -001fea90: 7020 2d2d 6d6f 756e 746f 7074 696f 6e73  p --mountoptions
│ │ │ -001feaa0: 3d22 6e6f 7375 6964 220a 3c2f 636f 6465  ="nosuid".
Remedi │ │ │ -001feb60: 6174 696f 6e20 416e 7369 626c 6520 736e ation Ansible sn │ │ │ -001feb70: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ -001fec20: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c
- n
│ │ │ -001fecb0: 616d 653a 2047 6174 6865 7220 7468 6520  ame: Gather the 
│ │ │ -001fecc0: 7061 636b 6167 6520 6661 6374 730a 2020  package facts.  
│ │ │ -001fecd0: 7061 636b 6167 655f 6661 6374 733a 0a20  package_facts:. 
│ │ │ -001fece0: 2020 206d 616e 6167 6572 3a20 6175 746f     manager: auto
│ │ │ -001fecf0: 0a20 2074 6167 733a 0a20 202d 2063 6f6e  .  tags:.  - con
│ │ │ -001fed00: 6669 6775 7265 5f73 7472 6174 6567 790a  figure_strategy.
│ │ │ -001fed10: 2020 2d20 6869 6768 5f64 6973 7275 7074    - high_disrupt
│ │ │ -001fed20: 696f 6e0a 2020 2d20 6c6f 775f 636f 6d70  ion.  - low_comp
│ │ │ -001fed30: 6c65 7869 7479 0a20 202d 206d 6564 6975  lexity.  - mediu
│ │ │ -001fed40: 6d5f 7365 7665 7269 7479 0a20 202d 206d  m_severity.  - m
│ │ │ -001fed50: 6f75 6e74 5f6f 7074 696f 6e5f 7661 725f  ount_option_var_
│ │ │ -001fed60: 746d 705f 6e6f 7375 6964 0a20 202d 206e  tmp_nosuid.  - n
│ │ │ -001fed70: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ -001fed80: 0a2d 206e 616d 653a 2027 4164 6420 6e6f  .- name: 'Add no
│ │ │ -001fed90: 7375 6964 204f 7074 696f 6e20 746f 202f  suid Option to /
│ │ │ -001feda0: 7661 722f 746d 703a 2043 6865 636b 2069  var/tmp: Check i
│ │ │ -001fedb0: 6e66 6f72 6d61 7469 6f6e 2061 7373 6f63  nformation assoc
│ │ │ -001fedc0: 6961 7465 6420 746f 206d 6f75 6e74 706f  iated to mountpo
│ │ │ -001fedd0: 696e 7427 0a20 2061 6e73 6962 6c65 2e62  int'.  ansible.b
│ │ │ -001fede0: 7569 6c74 696e 2e63 6f6d 6d61 6e64 3a20  uiltin.command: 
│ │ │ -001fedf0: 6669 6e64 6d6e 7420 2d2d 6673 7461 6220  findmnt --fstab 
│ │ │ -001fee00: 272f 7661 722f 746d 7027 0a20 2072 6567  '/var/tmp'.  reg
│ │ │ -001fee10: 6973 7465 723a 2064 6576 6963 655f 6e61  ister: device_na
│ │ │ -001fee20: 6d65 0a20 2066 6169 6c65 645f 7768 656e  me.  failed_when
│ │ │ -001fee30: 3a20 6465 7669 6365 5f6e 616d 652e 7263  : device_name.rc
│ │ │ -001fee40: 2026 6774 3b20 310a 2020 6368 616e 6765   > 1.  change
│ │ │ -001fee50: 645f 7768 656e 3a20 6661 6c73 650a 2020  d_when: false.  
│ │ │ -001fee60: 6368 6563 6b5f 6d6f 6465 3a20 6661 6c73  check_mode: fals
│ │ │ -001fee70: 650a 2020 7768 656e 3a0a 2020 2d20 2820  e.  when:.  - ( 
│ │ │ -001fee80: 6e6f 7420 2820 226b 6572 6e65 6c22 2069  not ( "kernel" i
│ │ │ -001fee90: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -001feea0: 7061 636b 6167 6573 2061 6e64 2022 626f  packages and "bo
│ │ │ -001feeb0: 6f74 6322 2069 6e20 616e 7369 626c 655f  otc" in ansible_
│ │ │ -001feec0: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ -001feed0: 2020 2061 6e64 206e 6f74 2022 6f70 656e     and not "open
│ │ │ -001feee0: 7368 6966 742d 6b75 6265 6c65 7422 2069  shift-kubelet" i
│ │ │ -001feef0: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -001fef00: 7061 636b 6167 6573 2061 6e64 2022 6f73  packages and "os
│ │ │ -001fef10: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ -001fef20: 5f70 726f 635f 636d 646c 696e 650a 2020  _proc_cmdline.  
│ │ │ -001fef30: 2020 2920 616e 6420 6e6f 7420 2820 616e    ) and not ( an
│ │ │ -001fef40: 7369 626c 655f 7669 7274 7561 6c69 7a61  sible_virtualiza
│ │ │ -001fef50: 7469 6f6e 5f74 7970 6520 696e 205b 2264  tion_type in ["d
│ │ │ -001fef60: 6f63 6b65 7222 2c20 226c 7863 222c 2022  ocker", "lxc", "
│ │ │ -001fef70: 6f70 656e 767a 222c 2022 706f 646d 616e  openvz", "podman
│ │ │ -001fef80: 222c 0a20 2020 2022 636f 6e74 6169 6e65  ",.    "containe
│ │ │ -001fef90: 7222 5d20 2920 290a 2020 2d20 2722 2f76  r"] ) ).  - '"/v
│ │ │ -001fefa0: 6172 2f74 6d70 2220 696e 2061 6e73 6962  ar/tmp" in ansib
│ │ │ -001fefb0: 6c65 5f6d 6f75 6e74 7320 7c20 6d61 7028  le_mounts | map(
│ │ │ -001fefc0: 6174 7472 6962 7574 653d 226d 6f75 6e74  attribute="mount
│ │ │ -001fefd0: 2229 207c 206c 6973 7427 0a20 2074 6167  ") | list'.  tag
│ │ │ -001fefe0: 733a 0a20 202d 2063 6f6e 6669 6775 7265  s:.  - configure
│ │ │ -001feff0: 5f73 7472 6174 6567 790a 2020 2d20 6869  _strategy.  - hi
│ │ │ -001ff000: 6768 5f64 6973 7275 7074 696f 6e0a 2020  gh_disruption.  
│ │ │ -001ff010: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ -001ff020: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ -001ff030: 7269 7479 0a20 202d 206d 6f75 6e74 5f6f  rity.  - mount_o
│ │ │ -001ff040: 7074 696f 6e5f 7661 725f 746d 705f 6e6f  ption_var_tmp_no
│ │ │ -001ff050: 7375 6964 0a20 202d 206e 6f5f 7265 626f  suid.  - no_rebo
│ │ │ -001ff060: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d  ot_needed..- nam
│ │ │ -001ff070: 653a 2027 4164 6420 6e6f 7375 6964 204f  e: 'Add nosuid O
│ │ │ -001ff080: 7074 696f 6e20 746f 202f 7661 722f 746d  ption to /var/tm
│ │ │ -001ff090: 703a 2043 7265 6174 6520 6d6f 756e 745f  p: Create mount_
│ │ │ -001ff0a0: 696e 666f 2064 6963 7469 6f6e 6172 7920  info dictionary 
│ │ │ -001ff0b0: 7661 7269 6162 6c65 270a 2020 7365 745f  variable'.  set_
│ │ │ -001ff0c0: 6661 6374 3a0a 2020 2020 6d6f 756e 745f  fact:.    mount_
│ │ │ -001ff0d0: 696e 666f 3a20 277b 7b20 6d6f 756e 745f  info: '{{ mount_
│ │ │ -001ff0e0: 696e 666f 7c64 6566 6175 6c74 287b 7d29  info|default({})
│ │ │ -001ff0f0: 7c63 6f6d 6269 6e65 287b 6974 656d 2e30  |combine({item.0
│ │ │ -001ff100: 3a20 6974 656d 2e31 7d29 207d 7d27 0a20  : item.1}) }}'. 
│ │ │ -001ff110: 2077 6974 685f 746f 6765 7468 6572 3a0a   with_together:.
│ │ │ -001ff120: 2020 2d20 277b 7b20 6465 7669 6365 5f6e    - '{{ device_n
│ │ │ -001ff130: 616d 652e 7374 646f 7574 5f6c 696e 6573  ame.stdout_lines
│ │ │ -001ff140: 5b30 5d2e 7370 6c69 7428 2920 7c20 6d61  [0].split() | ma
│ │ │ -001ff150: 7028 2727 6c6f 7765 7227 2729 207c 206c  p(''lower'') | l
│ │ │ -001ff160: 6973 7420 7d7d 270a 2020 2d20 277b 7b20  ist }}'.  - '{{ 
│ │ │ -001ff170: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ -001ff180: 7574 5f6c 696e 6573 5b31 5d2e 7370 6c69  ut_lines[1].spli
│ │ │ -001ff190: 7428 2920 7c20 6c69 7374 207d 7d27 0a20  t() | list }}'. 
│ │ │ -001ff1a0: 2077 6865 6e3a 0a20 202d 2028 206e 6f74   when:.  - ( not
│ │ │ -001ff1b0: 2028 2022 6b65 726e 656c 2220 696e 2061   ( "kernel" in a
│ │ │ -001ff1c0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001ff1d0: 6b61 6765 7320 616e 6420 2262 6f6f 7463  kages and "bootc
│ │ │ -001ff1e0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -001ff1f0: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ -001ff200: 616e 6420 6e6f 7420 226f 7065 6e73 6869  and not "openshi
│ │ │ -001ff210: 6674 2d6b 7562 656c 6574 2220 696e 2061  ft-kubelet" in a
│ │ │ -001ff220: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -001ff230: 6b61 6765 7320 616e 6420 226f 7374 7265  kages and "ostre
│ │ │ -001ff240: 6522 2069 6e20 616e 7369 626c 655f 7072  e" in ansible_pr
│ │ │ -001ff250: 6f63 5f63 6d64 6c69 6e65 0a20 2020 2029  oc_cmdline.    )
│ │ │ -001ff260: 2061 6e64 206e 6f74 2028 2061 6e73 6962   and not ( ansib
│ │ │ -001ff270: 6c65 5f76 6972 7475 616c 697a 6174 696f  le_virtualizatio
│ │ │ -001ff280: 6e5f 7479 7065 2069 6e20 5b22 646f 636b  n_type in ["dock
│ │ │ -001ff290: 6572 222c 2022 6c78 6322 2c20 226f 7065  er", "lxc", "ope
│ │ │ -001ff2a0: 6e76 7a22 2c20 2270 6f64 6d61 6e22 2c0a  nvz", "podman",.
│ │ │ -001ff2b0: 2020 2020 2263 6f6e 7461 696e 6572 225d      "container"]
│ │ │ -001ff2c0: 2029 2029 0a20 202d 2027 222f 7661 722f   ) ).  - '"/var/
│ │ │ -001ff2d0: 746d 7022 2069 6e20 616e 7369 626c 655f  tmp" in ansible_
│ │ │ -001ff2e0: 6d6f 756e 7473 207c 206d 6170 2861 7474  mounts | map(att
│ │ │ -001ff2f0: 7269 6275 7465 3d22 6d6f 756e 7422 2920  ribute="mount") 
│ │ │ -001ff300: 7c20 6c69 7374 270a 2020 2d20 6465 7669  | list'.  - devi
│ │ │ -001ff310: 6365 5f6e 616d 652e 7374 646f 7574 2069  ce_name.stdout i
│ │ │ -001ff320: 7320 6465 6669 6e65 6420 616e 6420 6465  s defined and de
│ │ │ -001ff330: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ -001ff340: 5f6c 696e 6573 2069 7320 6465 6669 6e65  _lines is define
│ │ │ -001ff350: 640a 2020 2d20 2864 6576 6963 655f 6e61  d.  - (device_na
│ │ │ -001ff360: 6d65 2e73 7464 6f75 7420 7c20 6c65 6e67  me.stdout | leng
│ │ │ -001ff370: 7468 2026 6774 3b20 3029 0a20 2074 6167  th > 0).  tag
│ │ │ -001ff380: 733a 0a20 202d 2063 6f6e 6669 6775 7265  s:.  - configure
│ │ │ -001ff390: 5f73 7472 6174 6567 790a 2020 2d20 6869  _strategy.  - hi
│ │ │ -001ff3a0: 6768 5f64 6973 7275 7074 696f 6e0a 2020  gh_disruption.  
│ │ │ -001ff3b0: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ -001ff3c0: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ -001ff3d0: 7269 7479 0a20 202d 206d 6f75 6e74 5f6f  rity.  - mount_o
│ │ │ -001ff3e0: 7074 696f 6e5f 7661 725f 746d 705f 6e6f  ption_var_tmp_no
│ │ │ -001ff3f0: 7375 6964 0a20 202d 206e 6f5f 7265 626f  suid.  - no_rebo
│ │ │ -001ff400: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d  ot_needed..- nam
│ │ │ -001ff410: 653a 2027 4164 6420 6e6f 7375 6964 204f  e: 'Add nosuid O
│ │ │ -001ff420: 7074 696f 6e20 746f 202f 7661 722f 746d  ption to /var/tm
│ │ │ -001ff430: 703a 2049 6620 2f76 6172 2f74 6d70 206e  p: If /var/tmp n
│ │ │ -001ff440: 6f74 206d 6f75 6e74 6564 2c20 6372 6166  ot mounted, craf
│ │ │ -001ff450: 7420 6d6f 756e 745f 696e 666f 0a20 2020  t mount_info.   
│ │ │ -001ff460: 206d 616e 7561 6c6c 7927 0a20 2073 6574   manually'.  set
│ │ │ -001ff470: 5f66 6163 743a 0a20 2020 206d 6f75 6e74  _fact:.    mount
│ │ │ -001ff480: 5f69 6e66 6f3a 2027 7b7b 206d 6f75 6e74  _info: '{{ mount
│ │ │ -001ff490: 5f69 6e66 6f7c 6465 6661 756c 7428 7b7d  _info|default({}
│ │ │ -001ff4a0: 297c 636f 6d62 696e 6528 7b69 7465 6d2e  )|combine({item.
│ │ │ -001ff4b0: 303a 2069 7465 6d2e 317d 2920 7d7d 270a  0: item.1}) }}'.
│ │ │ -001ff4c0: 2020 7769 7468 5f74 6f67 6574 6865 723a    with_together:
│ │ │ -001ff4d0: 0a20 202d 202d 2074 6172 6765 740a 2020  .  - - target.  
│ │ │ -001ff4e0: 2020 2d20 736f 7572 6365 0a20 2020 202d    - source.    -
│ │ │ -001ff4f0: 2066 7374 7970 650a 2020 2020 2d20 6f70   fstype.    - op
│ │ │ -001ff500: 7469 6f6e 730a 2020 2d20 2d20 2f76 6172  tions.  - - /var
│ │ │ -001ff510: 2f74 6d70 0a20 2020 202d 2027 270a 2020  /tmp.    - ''.  
│ │ │ -001ff520: 2020 2d20 2727 0a20 2020 202d 2064 6566    - ''.    - def
│ │ │ -001ff530: 6175 6c74 730a 2020 7768 656e 3a0a 2020  aults.  when:.  
│ │ │ -001ff540: 2d20 2820 6e6f 7420 2820 226b 6572 6e65  - ( not ( "kerne
│ │ │ -001ff550: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ -001ff560: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ -001ff570: 2022 626f 6f74 6322 2069 6e20 616e 7369   "bootc" in ansi
│ │ │ -001ff580: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -001ff590: 6573 0a20 2020 2061 6e64 206e 6f74 2022  es.    and not "
│ │ │ -001ff5a0: 6f70 656e 7368 6966 742d 6b75 6265 6c65  openshift-kubele
│ │ │ -001ff5b0: 7422 2069 6e20 616e 7369 626c 655f 6661  t" in ansible_fa
│ │ │ -001ff5c0: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ -001ff5d0: 2022 6f73 7472 6565 2220 696e 2061 6e73   "ostree" in ans
│ │ │ -001ff5e0: 6962 6c65 5f70 726f 635f 636d 646c 696e  ible_proc_cmdlin
│ │ │ -001ff5f0: 650a 2020 2020 2920 616e 6420 6e6f 7420  e.    ) and not 
│ │ │ -001ff600: 2820 616e 7369 626c 655f 7669 7274 7561  ( ansible_virtua
│ │ │ -001ff610: 6c69 7a61 7469 6f6e 5f74 7970 6520 696e  lization_type in
│ │ │ -001ff620: 205b 2264 6f63 6b65 7222 2c20 226c 7863   ["docker", "lxc
│ │ │ -001ff630: 222c 2022 6f70 656e 767a 222c 2022 706f  ", "openvz", "po
│ │ │ -001ff640: 646d 616e 222c 0a20 2020 2022 636f 6e74  dman",.    "cont
│ │ │ -001ff650: 6169 6e65 7222 5d20 2920 290a 2020 2d20  ainer"] ) ).  - 
│ │ │ -001ff660: 2722 2f76 6172 2f74 6d70 2220 696e 2061  '"/var/tmp" in a
│ │ │ -001ff670: 6e73 6962 6c65 5f6d 6f75 6e74 7320 7c20  nsible_mounts | 
│ │ │ -001ff680: 6d61 7028 6174 7472 6962 7574 653d 226d  map(attribute="m
│ │ │ -001ff690: 6f75 6e74 2229 207c 206c 6973 7427 0a20  ount") | list'. 
│ │ │ -001ff6a0: 202d 2028 222d 2d66 7374 6162 2220 7c20   - ("--fstab" | 
│ │ │ -001ff6b0: 6c65 6e67 7468 203d 3d20 3029 0a20 202d  length == 0).  -
│ │ │ -001ff6c0: 2064 6576 6963 655f 6e61 6d65 2e73 7464   device_name.std
│ │ │ -001ff6d0: 6f75 7420 6973 2064 6566 696e 6564 2061  out is defined a
│ │ │ -001ff6e0: 6e64 2064 6576 6963 655f 6e61 6d65 2e73  nd device_name.s
│ │ │ -001ff6f0: 7464 6f75 745f 6c69 6e65 7320 6973 2064  tdout_lines is d
│ │ │ -001ff700: 6566 696e 6564 0a20 202d 2028 6465 7669  efined.  - (devi
│ │ │ -001ff710: 6365 5f6e 616d 652e 7374 646f 7574 207c  ce_name.stdout |
│ │ │ -001ff720: 206c 656e 6774 6820 3d3d 2030 290a 2020   length == 0).  
│ │ │ -001ff730: 7461 6773 3a0a 2020 2d20 636f 6e66 6967  tags:.  - config
│ │ │ -001ff740: 7572 655f 7374 7261 7465 6779 0a20 202d  ure_strategy.  -
│ │ │ -001ff750: 2068 6967 685f 6469 7372 7570 7469 6f6e   high_disruption
│ │ │ -001ff760: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ -001ff770: 6974 790a 2020 2d20 6d65 6469 756d 5f73  ity.  - medium_s
│ │ │ -001ff780: 6576 6572 6974 790a 2020 2d20 6d6f 756e  everity.  - moun
│ │ │ -001ff790: 745f 6f70 7469 6f6e 5f76 6172 5f74 6d70  t_option_var_tmp
│ │ │ -001ff7a0: 5f6e 6f73 7569 640a 2020 2d20 6e6f 5f72  _nosuid.  - no_r
│ │ │ -001ff7b0: 6562 6f6f 745f 6e65 6564 6564 0a0a 2d20  eboot_needed..- 
│ │ │ -001ff7c0: 6e61 6d65 3a20 2741 6464 206e 6f73 7569  name: 'Add nosui
│ │ │ -001ff7d0: 6420 4f70 7469 6f6e 2074 6f20 2f76 6172  d Option to /var
│ │ │ -001ff7e0: 2f74 6d70 3a20 4d61 6b65 2073 7572 6520  /tmp: Make sure 
│ │ │ -001ff7f0: 6e6f 7375 6964 206f 7074 696f 6e20 6973  nosuid option is
│ │ │ -001ff800: 2070 6172 7420 6f66 2074 6865 2074 6f0a   part of the to.
│ │ │ -001ff810: 2020 2020 2f76 6172 2f74 6d70 206f 7074      /var/tmp opt
│ │ │ -001ff820: 696f 6e73 270a 2020 7365 745f 6661 6374  ions'.  set_fact
│ │ │ -001ff830: 3a0a 2020 2020 6d6f 756e 745f 696e 666f  :.    mount_info
│ │ │ -001ff840: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ -001ff850: 207c 2063 6f6d 6269 6e65 2820 7b27 276f   | combine( {''o
│ │ │ -001ff860: 7074 696f 6e73 2727 3a27 2727 277e 286d  ptions'':''''~(m
│ │ │ -001ff870: 6f75 6e74 5f69 6e66 6f2e 6f70 7469 6f6e  ount_info.option
│ │ │ -001ff880: 7320 7c0a 2020 2020 2020 6465 6661 756c  s |.      defaul
│ │ │ -001ff890: 7428 2727 2727 2929 7e28 2727 2c27 2720  t(''''))~('','' 
│ │ │ -001ff8a0: 6966 2028 6d6f 756e 745f 696e 666f 2e6f  if (mount_info.o
│ │ │ -001ff8b0: 7074 696f 6e73 207c 2064 6566 6175 6c74  ptions | default
│ │ │ -001ff8c0: 2827 2727 2729 2920 656c 7365 2027 2727  ('''')) else '''
│ │ │ -001ff8d0: 2729 7e27 276e 6f73 7569 6427 270a 2020  ')~''nosuid''.  
│ │ │ -001ff8e0: 2020 2020 7d29 207d 7d27 0a20 2077 6865      }) }}'.  whe
│ │ │ -001ff8f0: 6e3a 0a20 202d 2028 206e 6f74 2028 2022  n:.  - ( not ( "
│ │ │ -001ff900: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ -001ff910: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -001ff920: 7320 616e 6420 2262 6f6f 7463 2220 696e  s and "bootc" in
│ │ │ -001ff930: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -001ff940: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ -001ff950: 6e6f 7420 226f 7065 6e73 6869 6674 2d6b  not "openshift-k
│ │ │ -001ff960: 7562 656c 6574 2220 696e 2061 6e73 6962  ubelet" in ansib
│ │ │ -001ff970: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -001ff980: 7320 616e 6420 226f 7374 7265 6522 2069  s and "ostree" i
│ │ │ -001ff990: 6e20 616e 7369 626c 655f 7072 6f63 5f63  n ansible_proc_c
│ │ │ -001ff9a0: 6d64 6c69 6e65 0a20 2020 2029 2061 6e64  mdline.    ) and
│ │ │ -001ff9b0: 206e 6f74 2028 2061 6e73 6962 6c65 5f76   not ( ansible_v
│ │ │ -001ff9c0: 6972 7475 616c 697a 6174 696f 6e5f 7479  irtualization_ty
│ │ │ -001ff9d0: 7065 2069 6e20 5b22 646f 636b 6572 222c  pe in ["docker",
│ │ │ -001ff9e0: 2022 6c78 6322 2c20 226f 7065 6e76 7a22   "lxc", "openvz"
│ │ │ -001ff9f0: 2c20 2270 6f64 6d61 6e22 2c0a 2020 2020  , "podman",.    
│ │ │ -001ffa00: 2263 6f6e 7461 696e 6572 225d 2029 2029  "container"] ) )
│ │ │ -001ffa10: 0a20 202d 2027 222f 7661 722f 746d 7022  .  - '"/var/tmp"
│ │ │ -001ffa20: 2069 6e20 616e 7369 626c 655f 6d6f 756e   in ansible_moun
│ │ │ -001ffa30: 7473 207c 206d 6170 2861 7474 7269 6275  ts | map(attribu
│ │ │ -001ffa40: 7465 3d22 6d6f 756e 7422 2920 7c20 6c69  te="mount") | li
│ │ │ -001ffa50: 7374 270a 2020 2d20 6d6f 756e 745f 696e  st'.  - mount_in
│ │ │ -001ffa60: 666f 2069 7320 6465 6669 6e65 6420 616e  fo is defined an
│ │ │ -001ffa70: 6420 226e 6f73 7569 6422 206e 6f74 2069  d "nosuid" not i
│ │ │ -001ffa80: 6e20 286d 6f75 6e74 5f69 6e66 6f2e 6f70  n (mount_info.op
│ │ │ -001ffa90: 7469 6f6e 7320 7c20 6465 6661 756c 7428  tions | default(
│ │ │ -001ffaa0: 2727 2929 0a20 2074 6167 733a 0a20 202d  '')).  tags:.  -
│ │ │ -001ffab0: 2063 6f6e 6669 6775 7265 5f73 7472 6174   configure_strat
│ │ │ -001ffac0: 6567 790a 2020 2d20 6869 6768 5f64 6973  egy.  - high_dis
│ │ │ -001ffad0: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f  ruption.  - low_
│ │ │ -001ffae0: 636f 6d70 6c65 7869 7479 0a20 202d 206d  complexity.  - m
│ │ │ -001ffaf0: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ -001ffb00: 202d 206d 6f75 6e74 5f6f 7074 696f 6e5f   - mount_option_
│ │ │ -001ffb10: 7661 725f 746d 705f 6e6f 7375 6964 0a20  var_tmp_nosuid. 
│ │ │ -001ffb20: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ -001ffb30: 6465 640a 0a2d 206e 616d 653a 2027 4164  ded..- name: 'Ad
│ │ │ -001ffb40: 6420 6e6f 7375 6964 204f 7074 696f 6e20  d nosuid Option 
│ │ │ -001ffb50: 746f 202f 7661 722f 746d 703a 2045 6e73  to /var/tmp: Ens
│ │ │ -001ffb60: 7572 6520 2f76 6172 2f74 6d70 2069 7320  ure /var/tmp is 
│ │ │ -001ffb70: 6d6f 756e 7465 6420 7769 7468 206e 6f73  mounted with nos
│ │ │ -001ffb80: 7569 6420 6f70 7469 6f6e 270a 2020 616e  uid option'.  an
│ │ │ -001ffb90: 7369 626c 652e 706f 7369 782e 6d6f 756e  sible.posix.moun
│ │ │ -001ffba0: 743a 0a20 2020 2070 6174 683a 202f 7661  t:.    path: /va
│ │ │ -001ffbb0: 722f 746d 700a 2020 2020 7372 633a 2027  r/tmp.    src: '
│ │ │ -001ffbc0: 7b7b 206d 6f75 6e74 5f69 6e66 6f2e 736f  {{ mount_info.so
│ │ │ -001ffbd0: 7572 6365 207c 2064 6566 6175 6c74 2827  urce | default('
│ │ │ -001ffbe0: 2727 2729 207d 7d27 0a20 2020 206f 7074  ''') }}'.    opt
│ │ │ -001ffbf0: 733a 2027 7b7b 206d 6f75 6e74 5f69 6e66  s: '{{ mount_inf
│ │ │ -001ffc00: 6f2e 6f70 7469 6f6e 7320 7c20 6465 6661  o.options | defa
│ │ │ -001ffc10: 756c 7428 2727 2727 2920 7d7d 270a 2020  ult('''') }}'.  
│ │ │ -001ffc20: 2020 7374 6174 653a 206d 6f75 6e74 6564    state: mounted
│ │ │ -001ffc30: 0a20 2020 2066 7374 7970 653a 2027 7b7b  .    fstype: '{{
│ │ │ -001ffc40: 206d 6f75 6e74 5f69 6e66 6f2e 6673 7479   mount_info.fsty
│ │ │ -001ffc50: 7065 207c 2064 6566 6175 6c74 2827 2727  pe | default('''
│ │ │ -001ffc60: 2729 207d 7d27 0a20 2072 6567 6973 7465  ') }}'.  registe
│ │ │ -001ffc70: 723a 206d 6f75 6e74 5f72 6573 756c 740a  r: mount_result.
│ │ │ -001ffc80: 2020 6661 696c 6564 5f77 6865 6e3a 0a20    failed_when:. 
│ │ │ -001ffc90: 202d 206d 6f75 6e74 5f72 6573 756c 7420   - mount_result 
│ │ │ -001ffca0: 6973 2066 6169 6c65 640a 2020 2d20 2727  is failed.  - ''
│ │ │ -001ffcb0: 2774 6172 6765 7420 6973 2062 7573 7927  'target is busy'
│ │ │ -001ffcc0: 2720 6e6f 7420 696e 2028 6d6f 756e 745f  ' not in (mount_
│ │ │ -001ffcd0: 7265 7375 6c74 2e6d 7367 207c 2064 6566  result.msg | def
│ │ │ -001ffce0: 6175 6c74 2827 2727 2729 2927 0a20 202d  ault(''''))'.  -
│ │ │ -001ffcf0: 2027 2727 616c 7265 6164 7920 6d6f 756e   '''already moun
│ │ │ -001ffd00: 7465 6427 2720 6e6f 7420 696e 2028 6d6f  ted'' not in (mo
│ │ │ -001ffd10: 756e 745f 7265 7375 6c74 2e6d 7367 207c  unt_result.msg |
│ │ │ -001ffd20: 2064 6566 6175 6c74 2827 2727 2729 2927   default(''''))'
│ │ │ -001ffd30: 0a20 2077 6865 6e3a 0a20 202d 2028 206e  .  when:.  - ( n
│ │ │ -001ffd40: 6f74 2028 2022 6b65 726e 656c 2220 696e  ot ( "kernel" in
│ │ │ -001ffd50: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -001ffd60: 6163 6b61 6765 7320 616e 6420 2262 6f6f  ackages and "boo
│ │ │ -001ffd70: 7463 2220 696e 2061 6e73 6962 6c65 5f66  tc" in ansible_f
│ │ │ -001ffd80: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ -001ffd90: 2020 616e 6420 6e6f 7420 226f 7065 6e73    and not "opens
│ │ │ -001ffda0: 6869 6674 2d6b 7562 656c 6574 2220 696e  hift-kubelet" in
│ │ │ -001ffdb0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -001ffdc0: 6163 6b61 6765 7320 616e 6420 226f 7374  ackages and "ost
│ │ │ -001ffdd0: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ -001ffde0: 7072 6f63 5f63 6d64 6c69 6e65 0a20 2020  proc_cmdline.   
│ │ │ -001ffdf0: 2029 2061 6e64 206e 6f74 2028 2061 6e73   ) and not ( ans
│ │ │ -001ffe00: 6962 6c65 5f76 6972 7475 616c 697a 6174  ible_virtualizat
│ │ │ -001ffe10: 696f 6e5f 7479 7065 2069 6e20 5b22 646f  ion_type in ["do
│ │ │ -001ffe20: 636b 6572 222c 2022 6c78 6322 2c20 226f  cker", "lxc", "o
│ │ │ -001ffe30: 7065 6e76 7a22 2c20 2270 6f64 6d61 6e22  penvz", "podman"
│ │ │ -001ffe40: 2c0a 2020 2020 2263 6f6e 7461 696e 6572  ,.    "container
│ │ │ -001ffe50: 225d 2029 2029 0a20 202d 2027 222f 7661  "] ) ).  - '"/va
│ │ │ -001ffe60: 722f 746d 7022 2069 6e20 616e 7369 626c  r/tmp" in ansibl
│ │ │ -001ffe70: 655f 6d6f 756e 7473 207c 206d 6170 2861  e_mounts | map(a
│ │ │ -001ffe80: 7474 7269 6275 7465 3d22 6d6f 756e 7422  ttribute="mount"
│ │ │ -001ffe90: 2920 7c20 6c69 7374 270a 2020 2d20 6d6f  ) | list'.  - mo
│ │ │ -001ffea0: 756e 745f 696e 666f 2069 7320 6465 6669  unt_info is defi
│ │ │ -001ffeb0: 6e65 640a 2020 2d20 2864 6576 6963 655f  ned.  - (device_
│ │ │ -001ffec0: 6e61 6d65 2e73 7464 6f75 7420 6973 2064  name.stdout is d
│ │ │ -001ffed0: 6566 696e 6564 2061 6e64 2028 6465 7669  efined and (devi
│ │ │ -001ffee0: 6365 5f6e 616d 652e 7374 646f 7574 207c  ce_name.stdout |
│ │ │ -001ffef0: 206c 656e 6774 6820 2667 743b 2030 2929   length > 0))
│ │ │ -001fff00: 206f 7220 2822 2d2d 6673 7461 6222 0a20   or ("--fstab". 
│ │ │ -001fff10: 2020 207c 206c 656e 6774 6820 3d3d 2030     | length == 0
│ │ │ -001fff20: 290a 2020 7461 6773 3a0a 2020 2d20 636f  ).  tags:.  - co
│ │ │ -001fff30: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ -001fff40: 0a20 202d 2068 6967 685f 6469 7372 7570  .  - high_disrup
│ │ │ -001fff50: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d  tion.  - low_com
│ │ │ -001fff60: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ -001fff70: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ -001fff80: 6d6f 756e 745f 6f70 7469 6f6e 5f76 6172  mount_option_var
│ │ │ -001fff90: 5f74 6d70 5f6e 6f73 7569 640a 2020 2d20  _tmp_nosuid.  - 
│ │ │ -001fffa0: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ -001fffb0: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation She │ │ │ -00200070: 6c6c 2073 6372 6970 7420 e287 b23c 2f61 ll script ...
Compl │ │ │ -001fec00: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ -001fec10: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ -001fec30: 2f74 683e 3c74 643e 6869 6768 3c2f 7464 /th>high
Re │ │ │ -001fec50: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -001fec60: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:configure │ │ │ -001fec90: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
# Remediation i
│ │ │ -00200140: 7320 6170 706c 6963 6162 6c65 206f 6e6c  s applicable onl
│ │ │ -00200150: 7920 696e 2063 6572 7461 696e 2070 6c61  y in certain pla
│ │ │ -00200160: 7466 6f72 6d73 0a69 6620 2820 2120 2820  tforms.if ( ! ( 
│ │ │ -00200170: 7b20 7270 6d20 2d2d 7175 6965 7420 2d71  { rpm --quiet -q
│ │ │ -00200180: 206b 6572 6e65 6c20 3b7d 2026 616d 703b   kernel ;} &
│ │ │ -00200190: 2661 6d70 3b20 7b20 7270 6d20 2d2d 7175  & { rpm --qu
│ │ │ -002001a0: 6965 7420 2d71 2062 6f6f 7463 203b 7d20  iet -q bootc ;} 
│ │ │ -002001b0: 2661 6d70 3b26 616d 703b 207b 2021 2072  && { ! r
│ │ │ -002001c0: 706d 202d 2d71 7569 6574 202d 7120 6f70  pm --quiet -q op
│ │ │ -002001d0: 656e 7368 6966 742d 6b75 6265 6c65 7420  enshift-kubelet 
│ │ │ -002001e0: 3b7d 2026 616d 703b 2661 6d70 3b20 285b  ;} && ([
│ │ │ -002001f0: 202d 6620 2f72 756e 2f6f 7374 7265 652d   -f /run/ostree-
│ │ │ -00200200: 626f 6f74 6564 205d 207c 7c20 5b20 2d4c  booted ] || [ -L
│ │ │ -00200210: 202f 6f73 7472 6565 205d 2920 2920 2661   /ostree ]) ) &a
│ │ │ -00200220: 6d70 3b26 616d 703b 2021 2028 205b 202d  mp;& ! ( [ -
│ │ │ -00200230: 6620 2f2e 646f 636b 6572 656e 7620 5d20  f /.dockerenv ] 
│ │ │ -00200240: 7c7c 205b 202d 6620 2f72 756e 2f2e 636f  || [ -f /run/.co
│ │ │ -00200250: 6e74 6169 6e65 7265 6e76 205d 2029 2029  ntainerenv ] ) )
│ │ │ -00200260: 2026 616d 703b 2661 6d70 3b20 7b20 2820   && { ( 
│ │ │ -00200270: 6669 6e64 6d6e 7420 2d2d 6b65 726e 656c  findmnt --kernel
│ │ │ -00200280: 2022 2f76 6172 2f74 6d70 2220 2667 743b   "/var/tmp" >
│ │ │ -00200290: 202f 6465 762f 6e75 6c6c 207c 7c20 6669   /dev/null || fi
│ │ │ -002002a0: 6e64 6d6e 7420 2d2d 6673 7461 6220 222f  ndmnt --fstab "/
│ │ │ -002002b0: 7661 722f 746d 7022 2026 6774 3b20 2f64  var/tmp" > /d
│ │ │ -002002c0: 6576 2f6e 756c 6c20 293b 207d 3b20 7468  ev/null ); }; th
│ │ │ -002002d0: 656e 0a0a 6675 6e63 7469 6f6e 2070 6572  en..function per
│ │ │ -002002e0: 666f 726d 5f72 656d 6564 6961 7469 6f6e  form_remediation
│ │ │ -002002f0: 207b 0a0a 2020 2020 0a20 2020 2020 2020   {..    .       
│ │ │ -00200300: 2023 2074 6865 206d 6f75 6e74 2070 6f69   # the mount poi
│ │ │ -00200310: 6e74 202f 7661 722f 746d 7020 6861 7320  nt /var/tmp has 
│ │ │ -00200320: 746f 2062 6520 6465 6669 6e65 6420 696e  to be defined in
│ │ │ -00200330: 202f 6574 632f 6673 7461 620a 2020 2020   /etc/fstab.    
│ │ │ -00200340: 2020 2020 2320 6265 666f 7265 2074 6869      # before thi
│ │ │ -00200350: 7320 7265 6d65 6469 6174 696f 6e20 6361  s remediation ca
│ │ │ -00200360: 6e20 6265 2065 7865 6375 7465 642e 2049  n be executed. I
│ │ │ -00200370: 6e20 6361 7365 2069 7420 6973 206e 6f74  n case it is not
│ │ │ -00200380: 2064 6566 696e 6564 2c20 7468 650a 2020   defined, the.  
│ │ │ -00200390: 2020 2020 2020 2320 7265 6d65 6469 6174        # remediat
│ │ │ -002003a0: 696f 6e20 6162 6f72 7473 2061 6e64 206e  ion aborts and n
│ │ │ -002003b0: 6f20 6368 616e 6765 7320 7265 6761 7264  o changes regard
│ │ │ -002003c0: 696e 6720 7468 6520 6d6f 756e 7420 706f  ing the mount po
│ │ │ -002003d0: 696e 7420 6172 6520 646f 6e65 2e0a 2020  int are done..  
│ │ │ -002003e0: 2020 2020 2020 6d6f 756e 745f 706f 696e        mount_poin
│ │ │ -002003f0: 745f 6d61 7463 685f 7265 6765 7870 3d22  t_match_regexp="
│ │ │ -00200400: 2428 7072 696e 7466 2022 5e5b 5b3a 7370  $(printf "^[[:sp
│ │ │ -00200410: 6163 653a 5d5d 2a5b 5e23 5d2e 2a5b 5b3a  ace:]]*[^#].*[[:
│ │ │ -00200420: 7370 6163 653a 5d5d 2573 5b5b 3a73 7061  space:]]%s[[:spa
│ │ │ -00200430: 6365 3a5d 5d22 2022 2f76 6172 2f74 6d70  ce:]]" "/var/tmp
│ │ │ -00200440: 2229 220a 0a20 2020 2067 7265 7020 2224  ")"..    grep "$
│ │ │ -00200450: 6d6f 756e 745f 706f 696e 745f 6d61 7463  mount_point_matc
│ │ │ -00200460: 685f 7265 6765 7870 2220 2d71 202f 6574  h_regexp" -q /et
│ │ │ -00200470: 632f 6673 7461 6220 5c0a 2020 2020 2020  c/fstab \.      
│ │ │ -00200480: 2020 7c7c 207b 2065 6368 6f20 2254 6865    || { echo "The
│ │ │ -00200490: 206d 6f75 6e74 2070 6f69 6e74 2027 2f76   mount point '/v
│ │ │ -002004a0: 6172 2f74 6d70 2720 6973 206e 6f74 2065  ar/tmp' is not e
│ │ │ -002004b0: 7665 6e20 696e 202f 6574 632f 6673 7461  ven in /etc/fsta
│ │ │ -002004c0: 622c 2073 6f20 7765 2063 616e 2774 2073  b, so we can't s
│ │ │ -002004d0: 6574 2075 7020 6d6f 756e 7420 6f70 7469  et up mount opti
│ │ │ -002004e0: 6f6e 7322 2026 6774 3b26 616d 703b 323b  ons" >&2;
│ │ │ -002004f0: 0a20 2020 2020 2020 2020 2020 2020 2020  .               
│ │ │ -00200500: 2065 6368 6f20 224e 6f74 2072 656d 6564   echo "Not remed
│ │ │ -00200510: 6961 7469 6e67 2c20 6265 6361 7573 6520  iating, because 
│ │ │ -00200520: 7468 6572 6520 6973 206e 6f20 7265 636f  there is no reco
│ │ │ -00200530: 7264 206f 6620 2f76 6172 2f74 6d70 2069  rd of /var/tmp i
│ │ │ -00200540: 6e20 2f65 7463 2f66 7374 6162 2220 2667  n /etc/fstab" &g
│ │ │ -00200550: 743b 2661 6d70 3b32 3b20 7265 7475 726e  t;&2; return
│ │ │ -00200560: 2031 3b20 7d0a 2020 2020 0a0a 0a20 2020   1; }.    ...   
│ │ │ -00200570: 206d 6f75 6e74 5f70 6f69 6e74 5f6d 6174   mount_point_mat
│ │ │ -00200580: 6368 5f72 6567 6578 703d 2224 2870 7269  ch_regexp="$(pri
│ │ │ -00200590: 6e74 6620 225e 5b5b 3a73 7061 6365 3a5d  ntf "^[[:space:]
│ │ │ -002005a0: 5d2a 5b5e 235d 2e2a 5b5b 3a73 7061 6365  ]*[^#].*[[:space
│ │ │ -002005b0: 3a5d 5d25 735b 5b3a 7370 6163 653a 5d5d  :]]%s[[:space:]]
│ │ │ -002005c0: 2220 2f76 6172 2f74 6d70 2922 0a0a 2020  " /var/tmp)"..  
│ │ │ -002005d0: 2020 2320 4966 2074 6865 206d 6f75 6e74    # If the mount
│ │ │ -002005e0: 2070 6f69 6e74 2069 7320 6e6f 7420 696e   point is not in
│ │ │ -002005f0: 202f 6574 632f 6673 7461 622c 2067 6574   /etc/fstab, get
│ │ │ -00200600: 2070 7265 7669 6f75 7320 6d6f 756e 7420   previous mount 
│ │ │ -00200610: 6f70 7469 6f6e 7320 6672 6f6d 202f 6574  options from /et
│ │ │ -00200620: 632f 6d74 6162 0a20 2020 2069 6620 2120  c/mtab.    if ! 
│ │ │ -00200630: 6772 6570 202d 7120 2224 6d6f 756e 745f  grep -q "$mount_
│ │ │ -00200640: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ -00200650: 7870 2220 2f65 7463 2f66 7374 6162 3b20  xp" /etc/fstab; 
│ │ │ -00200660: 7468 656e 0a20 2020 2020 2020 2023 2072  then.        # r
│ │ │ -00200670: 756e 7469 6d65 206f 7074 7320 7769 7468  untime opts with
│ │ │ -00200680: 6f75 7420 736f 6d65 2061 7574 6f6d 6174  out some automat
│ │ │ -00200690: 6963 206b 6572 6e65 6c2f 7573 6572 7370  ic kernel/usersp
│ │ │ -002006a0: 6163 652d 6164 6465 6420 6465 6661 756c  ace-added defaul
│ │ │ -002006b0: 7473 0a20 2020 2020 2020 2070 7265 7669  ts.        previ
│ │ │ -002006c0: 6f75 735f 6d6f 756e 745f 6f70 7473 3d24  ous_mount_opts=$
│ │ │ -002006d0: 2867 7265 7020 2224 6d6f 756e 745f 706f  (grep "$mount_po
│ │ │ -002006e0: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ -002006f0: 2220 2f65 7463 2f6d 7461 6220 7c20 6865  " /etc/mtab | he
│ │ │ -00200700: 6164 202d 3120 7c20 2061 776b 2027 7b70  ad -1 |  awk '{p
│ │ │ -00200710: 7269 6e74 2024 347d 2720 5c0a 2020 2020  rint $4}' \.    
│ │ │ -00200720: 2020 2020 2020 2020 2020 2020 2020 2020                  
│ │ │ -00200730: 7c20 7365 6420 2d45 2022 732f 2872 777c  | sed -E "s/(rw|
│ │ │ -00200740: 6465 6661 756c 7473 7c73 6563 6c61 6265  defaults|seclabe
│ │ │ -00200750: 6c7c 6e6f 7375 6964 2928 2c7c 2429 2f2f  l|nosuid)(,|$)//
│ │ │ -00200760: 673b 732f 2c24 2f2f 2229 0a20 2020 2020  g;s/,$//").     
│ │ │ -00200770: 2020 205b 2022 2470 7265 7669 6f75 735f     [ "$previous_
│ │ │ -00200780: 6d6f 756e 745f 6f70 7473 2220 5d20 2661  mount_opts" ] &a
│ │ │ -00200790: 6d70 3b26 616d 703b 2070 7265 7669 6f75  mp;& previou
│ │ │ -002007a0: 735f 6d6f 756e 745f 6f70 7473 2b3d 222c  s_mount_opts+=",
│ │ │ -002007b0: 220a 2020 2020 2020 2020 2320 496e 2069  ".        # In i
│ │ │ -002007c0: 736f 3936 3630 2066 696c 6573 7973 7465  so9660 filesyste
│ │ │ -002007d0: 6d73 206d 7461 6220 636f 756c 6420 6465  ms mtab could de
│ │ │ -002007e0: 7363 7269 6265 2061 2022 626c 6f63 6b73  scribe a "blocks
│ │ │ -002007f0: 697a 6522 2076 616c 7565 2c20 7468 6973  ize" value, this
│ │ │ -00200800: 2073 686f 756c 6420 6265 2072 6566 6c65   should be refle
│ │ │ -00200810: 6374 6564 2069 6e0a 2020 2020 2020 2020  cted in.        
│ │ │ -00200820: 2320 6673 7461 6220 6173 2022 626c 6f63  # fstab as "bloc
│ │ │ -00200830: 6b22 2e20 2054 6865 206e 6578 7420 7661  k".  The next va
│ │ │ -00200840: 7269 6162 6c65 2069 7320 746f 2073 6174  riable is to sat
│ │ │ -00200850: 6973 6679 2073 6865 6c6c 6368 6563 6b20  isfy shellcheck 
│ │ │ -00200860: 5343 3230 3530 2e0a 2020 2020 2020 2020  SC2050..        
│ │ │ -00200870: 6673 5f74 7970 653d 2222 0a20 2020 2020  fs_type="".     
│ │ │ -00200880: 2020 2069 6620 5b20 2022 2466 735f 7479     if [  "$fs_ty
│ │ │ -00200890: 7065 2220 3d3d 2022 6973 6f39 3636 3022  pe" == "iso9660"
│ │ │ -002008a0: 205d 203b 2074 6865 6e0a 2020 2020 2020   ] ; then.      
│ │ │ -002008b0: 2020 2020 2020 7072 6576 696f 7573 5f6d        previous_m
│ │ │ -002008c0: 6f75 6e74 5f6f 7074 733d 2428 7365 6420  ount_opts=$(sed 
│ │ │ -002008d0: 2773 2f62 6c6f 636b 7369 7a65 3d2f 626c  's/blocksize=/bl
│ │ │ -002008e0: 6f63 6b3d 2f27 2026 6c74 3b26 6c74 3b26  ock=/' <<&
│ │ │ -002008f0: 6c74 3b20 2224 7072 6576 696f 7573 5f6d  lt; "$previous_m
│ │ │ -00200900: 6f75 6e74 5f6f 7074 7322 290a 2020 2020  ount_opts").    
│ │ │ -00200910: 2020 2020 6669 0a20 2020 2020 2020 2065      fi.        e
│ │ │ -00200920: 6368 6f20 2220 2f76 6172 2f74 6d70 2020  cho " /var/tmp  
│ │ │ -00200930: 6465 6661 756c 7473 2c24 7b70 7265 7669  defaults,${previ
│ │ │ -00200940: 6f75 735f 6d6f 756e 745f 6f70 7473 7d6e  ous_mount_opts}n
│ │ │ -00200950: 6f73 7569 6420 3020 3022 2026 6774 3b26  osuid 0 0" >&
│ │ │ -00200960: 6774 3b20 2f65 7463 2f66 7374 6162 0a20  gt; /etc/fstab. 
│ │ │ -00200970: 2020 2023 2049 6620 7468 6520 6d6f 756e     # If the moun
│ │ │ -00200980: 745f 6f70 7420 6f70 7469 6f6e 2069 7320  t_opt option is 
│ │ │ -00200990: 6e6f 7420 616c 7265 6164 7920 696e 2074  not already in t
│ │ │ -002009a0: 6865 206d 6f75 6e74 2070 6f69 6e74 2773  he mount point's
│ │ │ -002009b0: 202f 6574 632f 6673 7461 6220 656e 7472   /etc/fstab entr
│ │ │ -002009c0: 792c 2061 6464 2069 740a 2020 2020 656c  y, add it.    el
│ │ │ -002009d0: 6966 2021 2067 7265 7020 2224 6d6f 756e  if ! grep "$moun
│ │ │ -002009e0: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ -002009f0: 6765 7870 2220 2f65 7463 2f66 7374 6162  gexp" /etc/fstab
│ │ │ -00200a00: 207c 2067 7265 7020 2d71 2022 6e6f 7375   | grep -q "nosu
│ │ │ -00200a10: 6964 223b 2074 6865 6e0a 2020 2020 2020  id"; then.      
│ │ │ -00200a20: 2020 7072 6576 696f 7573 5f6d 6f75 6e74    previous_mount
│ │ │ -00200a30: 5f6f 7074 733d 2428 6772 6570 2022 246d  _opts=$(grep "$m
│ │ │ -00200a40: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ -00200a50: 5f72 6567 6578 7022 202f 6574 632f 6673  _regexp" /etc/fs
│ │ │ -00200a60: 7461 6220 7c20 6177 6b20 277b 7072 696e  tab | awk '{prin
│ │ │ -00200a70: 7420 2434 7d27 290a 2020 2020 2020 2020  t $4}').        
│ │ │ -00200a80: 7365 6420 2d69 2022 737c 5c28 247b 6d6f  sed -i "s|\(${mo
│ │ │ -00200a90: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ -00200aa0: 7265 6765 7870 7d2e 2a24 7b70 7265 7669  regexp}.*${previ
│ │ │ -00200ab0: 6f75 735f 6d6f 756e 745f 6f70 7473 7d5c  ous_mount_opts}\
│ │ │ -00200ac0: 297c 5c31 2c6e 6f73 7569 647c 2220 2f65  )|\1,nosuid|" /e
│ │ │ -00200ad0: 7463 2f66 7374 6162 0a20 2020 2066 690a  tc/fstab.    fi.
│ │ │ -00200ae0: 0a0a 2020 2020 6966 206d 6b64 6972 202d  ..    if mkdir -
│ │ │ -00200af0: 7020 222f 7661 722f 746d 7022 3b20 7468  p "/var/tmp"; th
│ │ │ -00200b00: 656e 0a20 2020 2020 2020 2069 6620 6d6f  en.        if mo
│ │ │ -00200b10: 756e 7470 6f69 6e74 202d 7120 222f 7661  untpoint -q "/va
│ │ │ -00200b20: 722f 746d 7022 3b20 7468 656e 0a20 2020  r/tmp"; then.   
│ │ │ -00200b30: 2020 2020 2020 2020 206d 6f75 6e74 202d           mount -
│ │ │ -00200b40: 6f20 7265 6d6f 756e 7420 2d2d 7461 7267  o remount --targ
│ │ │ -00200b50: 6574 2022 2f76 6172 2f74 6d70 220a 2020  et "/var/tmp".  
│ │ │ -00200b60: 2020 2020 2020 6669 0a20 2020 2066 690a        fi.    fi.
│ │ │ -00200b70: 7d0a 0a70 6572 666f 726d 5f72 656d 6564  }..perform_remed
│ │ │ -00200b80: 6961 7469 6f6e 0a0a 656c 7365 0a20 2020  iation..else.   
│ │ │ -00200b90: 2026 6774 3b26 616d 703b 3220 6563 686f   >&2 echo
│ │ │ -00200ba0: 2027 5265 6d65 6469 6174 696f 6e20 6973   'Remediation is
│ │ │ -00200bb0: 206e 6f74 2061 7070 6c69 6361 626c 652c   not applicable,
│ │ │ -00200bc0: 206e 6f74 6869 6e67 2077 6173 2064 6f6e   nothing was don
│ │ │ -00200bd0: 6527 0a66 690a 3c2f 636f 6465 3e3c 2f70  e'.fi.


R │ │ │ -00200100: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -00200110: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c2f alse
< │ │ │ +001fe9d0: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ +001fe9f0: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr> │ │ │ +001fea40: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472
low
Disr │ │ │ +001fea00: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +001fea10: 6869 6768 3c2f 7464 3e3c 2f74 723e 3c74 high
Reboot:false
Str │ │ │ +001fea50: 6174 6567 793a 3c2f 7468 3e3c 7464 3e63 ategy:c │ │ │ +001fea60: 6f6e 6669 6775 7265 3c2f 7464 3e3c 2f74 onfigure
<
│ │ │ +001fea80: 636f 6465 3e2d 206e 616d 653a 2047 6174  code>- name: Gat
│ │ │ +001fea90: 6865 7220 7468 6520 7061 636b 6167 6520  her the package 
│ │ │ +001feaa0: 6661 6374 730a 2020 7061 636b 6167 655f  facts.  package_
│ │ │ +001feab0: 6661 6374 733a 0a20 2020 206d 616e 6167  facts:.    manag
│ │ │ +001feac0: 6572 3a20 6175 746f 0a20 2074 6167 733a  er: auto.  tags:
│ │ │ +001fead0: 0a20 202d 2063 6f6e 6669 6775 7265 5f73  .  - configure_s
│ │ │ +001feae0: 7472 6174 6567 790a 2020 2d20 6869 6768  trategy.  - high
│ │ │ +001feaf0: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +001feb00: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ +001feb10: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ +001feb20: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074  ty.  - mount_opt
│ │ │ +001feb30: 696f 6e5f 7661 725f 746d 705f 6e6f 7375  ion_var_tmp_nosu
│ │ │ +001feb40: 6964 0a20 202d 206e 6f5f 7265 626f 6f74  id.  - no_reboot
│ │ │ +001feb50: 5f6e 6565 6465 640a 0a2d 206e 616d 653a  _needed..- name:
│ │ │ +001feb60: 2027 4164 6420 6e6f 7375 6964 204f 7074   'Add nosuid Opt
│ │ │ +001feb70: 696f 6e20 746f 202f 7661 722f 746d 703a  ion to /var/tmp:
│ │ │ +001feb80: 2043 6865 636b 2069 6e66 6f72 6d61 7469   Check informati
│ │ │ +001feb90: 6f6e 2061 7373 6f63 6961 7465 6420 746f  on associated to
│ │ │ +001feba0: 206d 6f75 6e74 706f 696e 7427 0a20 2061   mountpoint'.  a
│ │ │ +001febb0: 6e73 6962 6c65 2e62 7569 6c74 696e 2e63  nsible.builtin.c
│ │ │ +001febc0: 6f6d 6d61 6e64 3a20 6669 6e64 6d6e 7420  ommand: findmnt 
│ │ │ +001febd0: 2d2d 6673 7461 6220 272f 7661 722f 746d  --fstab '/var/tm
│ │ │ +001febe0: 7027 0a20 2072 6567 6973 7465 723a 2064  p'.  register: d
│ │ │ +001febf0: 6576 6963 655f 6e61 6d65 0a20 2066 6169  evice_name.  fai
│ │ │ +001fec00: 6c65 645f 7768 656e 3a20 6465 7669 6365  led_when: device
│ │ │ +001fec10: 5f6e 616d 652e 7263 2026 6774 3b20 310a  _name.rc > 1.
│ │ │ +001fec20: 2020 6368 616e 6765 645f 7768 656e 3a20    changed_when: 
│ │ │ +001fec30: 6661 6c73 650a 2020 6368 6563 6b5f 6d6f  false.  check_mo
│ │ │ +001fec40: 6465 3a20 6661 6c73 650a 2020 7768 656e  de: false.  when
│ │ │ +001fec50: 3a0a 2020 2d20 2820 6e6f 7420 2820 226b  :.  - ( not ( "k
│ │ │ +001fec60: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ +001fec70: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +001fec80: 2061 6e64 2022 626f 6f74 6322 2069 6e20   and "bootc" in 
│ │ │ +001fec90: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001feca0: 636b 6167 6573 0a20 2020 2061 6e64 206e  ckages.    and n
│ │ │ +001fecb0: 6f74 2022 6f70 656e 7368 6966 742d 6b75  ot "openshift-ku
│ │ │ +001fecc0: 6265 6c65 7422 2069 6e20 616e 7369 626c  belet" in ansibl
│ │ │ +001fecd0: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +001fece0: 2061 6e64 2022 6f73 7472 6565 2220 696e   and "ostree" in
│ │ │ +001fecf0: 2061 6e73 6962 6c65 5f70 726f 635f 636d   ansible_proc_cm
│ │ │ +001fed00: 646c 696e 650a 2020 2020 2920 616e 6420  dline.    ) and 
│ │ │ +001fed10: 6e6f 7420 2820 616e 7369 626c 655f 7669  not ( ansible_vi
│ │ │ +001fed20: 7274 7561 6c69 7a61 7469 6f6e 5f74 7970  rtualization_typ
│ │ │ +001fed30: 6520 696e 205b 2264 6f63 6b65 7222 2c20  e in ["docker", 
│ │ │ +001fed40: 226c 7863 222c 2022 6f70 656e 767a 222c  "lxc", "openvz",
│ │ │ +001fed50: 2022 706f 646d 616e 222c 0a20 2020 2022   "podman",.    "
│ │ │ +001fed60: 636f 6e74 6169 6e65 7222 5d20 2920 290a  container"] ) ).
│ │ │ +001fed70: 2020 2d20 2722 2f76 6172 2f74 6d70 2220    - '"/var/tmp" 
│ │ │ +001fed80: 696e 2061 6e73 6962 6c65 5f6d 6f75 6e74  in ansible_mount
│ │ │ +001fed90: 7320 7c20 6d61 7028 6174 7472 6962 7574  s | map(attribut
│ │ │ +001feda0: 653d 226d 6f75 6e74 2229 207c 206c 6973  e="mount") | lis
│ │ │ +001fedb0: 7427 0a20 2074 6167 733a 0a20 202d 2063  t'.  tags:.  - c
│ │ │ +001fedc0: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ +001fedd0: 790a 2020 2d20 6869 6768 5f64 6973 7275  y.  - high_disru
│ │ │ +001fede0: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f  ption.  - low_co
│ │ │ +001fedf0: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ +001fee00: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ +001fee10: 206d 6f75 6e74 5f6f 7074 696f 6e5f 7661   mount_option_va
│ │ │ +001fee20: 725f 746d 705f 6e6f 7375 6964 0a20 202d  r_tmp_nosuid.  -
│ │ │ +001fee30: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ +001fee40: 640a 0a2d 206e 616d 653a 2027 4164 6420  d..- name: 'Add 
│ │ │ +001fee50: 6e6f 7375 6964 204f 7074 696f 6e20 746f  nosuid Option to
│ │ │ +001fee60: 202f 7661 722f 746d 703a 2043 7265 6174   /var/tmp: Creat
│ │ │ +001fee70: 6520 6d6f 756e 745f 696e 666f 2064 6963  e mount_info dic
│ │ │ +001fee80: 7469 6f6e 6172 7920 7661 7269 6162 6c65  tionary variable
│ │ │ +001fee90: 270a 2020 7365 745f 6661 6374 3a0a 2020  '.  set_fact:.  
│ │ │ +001feea0: 2020 6d6f 756e 745f 696e 666f 3a20 277b    mount_info: '{
│ │ │ +001feeb0: 7b20 6d6f 756e 745f 696e 666f 7c64 6566  { mount_info|def
│ │ │ +001feec0: 6175 6c74 287b 7d29 7c63 6f6d 6269 6e65  ault({})|combine
│ │ │ +001feed0: 287b 6974 656d 2e30 3a20 6974 656d 2e31  ({item.0: item.1
│ │ │ +001feee0: 7d29 207d 7d27 0a20 2077 6974 685f 746f  }) }}'.  with_to
│ │ │ +001feef0: 6765 7468 6572 3a0a 2020 2d20 277b 7b20  gether:.  - '{{ 
│ │ │ +001fef00: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ +001fef10: 7574 5f6c 696e 6573 5b30 5d2e 7370 6c69  ut_lines[0].spli
│ │ │ +001fef20: 7428 2920 7c20 6d61 7028 2727 6c6f 7765  t() | map(''lowe
│ │ │ +001fef30: 7227 2729 207c 206c 6973 7420 7d7d 270a  r'') | list }}'.
│ │ │ +001fef40: 2020 2d20 277b 7b20 6465 7669 6365 5f6e    - '{{ device_n
│ │ │ +001fef50: 616d 652e 7374 646f 7574 5f6c 696e 6573  ame.stdout_lines
│ │ │ +001fef60: 5b31 5d2e 7370 6c69 7428 2920 7c20 6c69  [1].split() | li
│ │ │ +001fef70: 7374 207d 7d27 0a20 2077 6865 6e3a 0a20  st }}'.  when:. 
│ │ │ +001fef80: 202d 2028 206e 6f74 2028 2022 6b65 726e   - ( not ( "kern
│ │ │ +001fef90: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ +001fefa0: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +001fefb0: 6420 2262 6f6f 7463 2220 696e 2061 6e73  d "bootc" in ans
│ │ │ +001fefc0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +001fefd0: 6765 730a 2020 2020 616e 6420 6e6f 7420  ges.    and not 
│ │ │ +001fefe0: 226f 7065 6e73 6869 6674 2d6b 7562 656c  "openshift-kubel
│ │ │ +001feff0: 6574 2220 696e 2061 6e73 6962 6c65 5f66  et" in ansible_f
│ │ │ +001ff000: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +001ff010: 6420 226f 7374 7265 6522 2069 6e20 616e  d "ostree" in an
│ │ │ +001ff020: 7369 626c 655f 7072 6f63 5f63 6d64 6c69  sible_proc_cmdli
│ │ │ +001ff030: 6e65 0a20 2020 2029 2061 6e64 206e 6f74  ne.    ) and not
│ │ │ +001ff040: 2028 2061 6e73 6962 6c65 5f76 6972 7475   ( ansible_virtu
│ │ │ +001ff050: 616c 697a 6174 696f 6e5f 7479 7065 2069  alization_type i
│ │ │ +001ff060: 6e20 5b22 646f 636b 6572 222c 2022 6c78  n ["docker", "lx
│ │ │ +001ff070: 6322 2c20 226f 7065 6e76 7a22 2c20 2270  c", "openvz", "p
│ │ │ +001ff080: 6f64 6d61 6e22 2c0a 2020 2020 2263 6f6e  odman",.    "con
│ │ │ +001ff090: 7461 696e 6572 225d 2029 2029 0a20 202d  tainer"] ) ).  -
│ │ │ +001ff0a0: 2027 222f 7661 722f 746d 7022 2069 6e20   '"/var/tmp" in 
│ │ │ +001ff0b0: 616e 7369 626c 655f 6d6f 756e 7473 207c  ansible_mounts |
│ │ │ +001ff0c0: 206d 6170 2861 7474 7269 6275 7465 3d22   map(attribute="
│ │ │ +001ff0d0: 6d6f 756e 7422 2920 7c20 6c69 7374 270a  mount") | list'.
│ │ │ +001ff0e0: 2020 2d20 6465 7669 6365 5f6e 616d 652e    - device_name.
│ │ │ +001ff0f0: 7374 646f 7574 2069 7320 6465 6669 6e65  stdout is define
│ │ │ +001ff100: 6420 616e 6420 6465 7669 6365 5f6e 616d  d and device_nam
│ │ │ +001ff110: 652e 7374 646f 7574 5f6c 696e 6573 2069  e.stdout_lines i
│ │ │ +001ff120: 7320 6465 6669 6e65 640a 2020 2d20 2864  s defined.  - (d
│ │ │ +001ff130: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ +001ff140: 7420 7c20 6c65 6e67 7468 2026 6774 3b20  t | length > 
│ │ │ +001ff150: 3029 0a20 2074 6167 733a 0a20 202d 2063  0).  tags:.  - c
│ │ │ +001ff160: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ +001ff170: 790a 2020 2d20 6869 6768 5f64 6973 7275  y.  - high_disru
│ │ │ +001ff180: 7074 696f 6e0a 2020 2d20 6c6f 775f 636f  ption.  - low_co
│ │ │ +001ff190: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ +001ff1a0: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ +001ff1b0: 206d 6f75 6e74 5f6f 7074 696f 6e5f 7661   mount_option_va
│ │ │ +001ff1c0: 725f 746d 705f 6e6f 7375 6964 0a20 202d  r_tmp_nosuid.  -
│ │ │ +001ff1d0: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ +001ff1e0: 640a 0a2d 206e 616d 653a 2027 4164 6420  d..- name: 'Add 
│ │ │ +001ff1f0: 6e6f 7375 6964 204f 7074 696f 6e20 746f  nosuid Option to
│ │ │ +001ff200: 202f 7661 722f 746d 703a 2049 6620 2f76   /var/tmp: If /v
│ │ │ +001ff210: 6172 2f74 6d70 206e 6f74 206d 6f75 6e74  ar/tmp not mount
│ │ │ +001ff220: 6564 2c20 6372 6166 7420 6d6f 756e 745f  ed, craft mount_
│ │ │ +001ff230: 696e 666f 0a20 2020 206d 616e 7561 6c6c  info.    manuall
│ │ │ +001ff240: 7927 0a20 2073 6574 5f66 6163 743a 0a20  y'.  set_fact:. 
│ │ │ +001ff250: 2020 206d 6f75 6e74 5f69 6e66 6f3a 2027     mount_info: '
│ │ │ +001ff260: 7b7b 206d 6f75 6e74 5f69 6e66 6f7c 6465  {{ mount_info|de
│ │ │ +001ff270: 6661 756c 7428 7b7d 297c 636f 6d62 696e  fault({})|combin
│ │ │ +001ff280: 6528 7b69 7465 6d2e 303a 2069 7465 6d2e  e({item.0: item.
│ │ │ +001ff290: 317d 2920 7d7d 270a 2020 7769 7468 5f74  1}) }}'.  with_t
│ │ │ +001ff2a0: 6f67 6574 6865 723a 0a20 202d 202d 2074  ogether:.  - - t
│ │ │ +001ff2b0: 6172 6765 740a 2020 2020 2d20 736f 7572  arget.    - sour
│ │ │ +001ff2c0: 6365 0a20 2020 202d 2066 7374 7970 650a  ce.    - fstype.
│ │ │ +001ff2d0: 2020 2020 2d20 6f70 7469 6f6e 730a 2020      - options.  
│ │ │ +001ff2e0: 2d20 2d20 2f76 6172 2f74 6d70 0a20 2020  - - /var/tmp.   
│ │ │ +001ff2f0: 202d 2027 270a 2020 2020 2d20 2727 0a20   - ''.    - ''. 
│ │ │ +001ff300: 2020 202d 2064 6566 6175 6c74 730a 2020     - defaults.  
│ │ │ +001ff310: 7768 656e 3a0a 2020 2d20 2820 6e6f 7420  when:.  - ( not 
│ │ │ +001ff320: 2820 226b 6572 6e65 6c22 2069 6e20 616e  ( "kernel" in an
│ │ │ +001ff330: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001ff340: 6167 6573 2061 6e64 2022 626f 6f74 6322  ages and "bootc"
│ │ │ +001ff350: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +001ff360: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ +001ff370: 6e64 206e 6f74 2022 6f70 656e 7368 6966  nd not "openshif
│ │ │ +001ff380: 742d 6b75 6265 6c65 7422 2069 6e20 616e  t-kubelet" in an
│ │ │ +001ff390: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +001ff3a0: 6167 6573 2061 6e64 2022 6f73 7472 6565  ages and "ostree
│ │ │ +001ff3b0: 2220 696e 2061 6e73 6962 6c65 5f70 726f  " in ansible_pro
│ │ │ +001ff3c0: 635f 636d 646c 696e 650a 2020 2020 2920  c_cmdline.    ) 
│ │ │ +001ff3d0: 616e 6420 6e6f 7420 2820 616e 7369 626c  and not ( ansibl
│ │ │ +001ff3e0: 655f 7669 7274 7561 6c69 7a61 7469 6f6e  e_virtualization
│ │ │ +001ff3f0: 5f74 7970 6520 696e 205b 2264 6f63 6b65  _type in ["docke
│ │ │ +001ff400: 7222 2c20 226c 7863 222c 2022 6f70 656e  r", "lxc", "open
│ │ │ +001ff410: 767a 222c 2022 706f 646d 616e 222c 0a20  vz", "podman",. 
│ │ │ +001ff420: 2020 2022 636f 6e74 6169 6e65 7222 5d20     "container"] 
│ │ │ +001ff430: 2920 290a 2020 2d20 2722 2f76 6172 2f74  ) ).  - '"/var/t
│ │ │ +001ff440: 6d70 2220 696e 2061 6e73 6962 6c65 5f6d  mp" in ansible_m
│ │ │ +001ff450: 6f75 6e74 7320 7c20 6d61 7028 6174 7472  ounts | map(attr
│ │ │ +001ff460: 6962 7574 653d 226d 6f75 6e74 2229 207c  ibute="mount") |
│ │ │ +001ff470: 206c 6973 7427 0a20 202d 2028 222d 2d66   list'.  - ("--f
│ │ │ +001ff480: 7374 6162 2220 7c20 6c65 6e67 7468 203d  stab" | length =
│ │ │ +001ff490: 3d20 3029 0a20 202d 2064 6576 6963 655f  = 0).  - device_
│ │ │ +001ff4a0: 6e61 6d65 2e73 7464 6f75 7420 6973 2064  name.stdout is d
│ │ │ +001ff4b0: 6566 696e 6564 2061 6e64 2064 6576 6963  efined and devic
│ │ │ +001ff4c0: 655f 6e61 6d65 2e73 7464 6f75 745f 6c69  e_name.stdout_li
│ │ │ +001ff4d0: 6e65 7320 6973 2064 6566 696e 6564 0a20  nes is defined. 
│ │ │ +001ff4e0: 202d 2028 6465 7669 6365 5f6e 616d 652e   - (device_name.
│ │ │ +001ff4f0: 7374 646f 7574 207c 206c 656e 6774 6820  stdout | length 
│ │ │ +001ff500: 3d3d 2030 290a 2020 7461 6773 3a0a 2020  == 0).  tags:.  
│ │ │ +001ff510: 2d20 636f 6e66 6967 7572 655f 7374 7261  - configure_stra
│ │ │ +001ff520: 7465 6779 0a20 202d 2068 6967 685f 6469  tegy.  - high_di
│ │ │ +001ff530: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ +001ff540: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +001ff550: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ +001ff560: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e    - mount_option
│ │ │ +001ff570: 5f76 6172 5f74 6d70 5f6e 6f73 7569 640a  _var_tmp_nosuid.
│ │ │ +001ff580: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ +001ff590: 6564 6564 0a0a 2d20 6e61 6d65 3a20 2741  eded..- name: 'A
│ │ │ +001ff5a0: 6464 206e 6f73 7569 6420 4f70 7469 6f6e  dd nosuid Option
│ │ │ +001ff5b0: 2074 6f20 2f76 6172 2f74 6d70 3a20 4d61   to /var/tmp: Ma
│ │ │ +001ff5c0: 6b65 2073 7572 6520 6e6f 7375 6964 206f  ke sure nosuid o
│ │ │ +001ff5d0: 7074 696f 6e20 6973 2070 6172 7420 6f66  ption is part of
│ │ │ +001ff5e0: 2074 6865 2074 6f0a 2020 2020 2f76 6172   the to.    /var
│ │ │ +001ff5f0: 2f74 6d70 206f 7074 696f 6e73 270a 2020  /tmp options'.  
│ │ │ +001ff600: 7365 745f 6661 6374 3a0a 2020 2020 6d6f  set_fact:.    mo
│ │ │ +001ff610: 756e 745f 696e 666f 3a20 277b 7b20 6d6f  unt_info: '{{ mo
│ │ │ +001ff620: 756e 745f 696e 666f 207c 2063 6f6d 6269  unt_info | combi
│ │ │ +001ff630: 6e65 2820 7b27 276f 7074 696f 6e73 2727  ne( {''options''
│ │ │ +001ff640: 3a27 2727 277e 286d 6f75 6e74 5f69 6e66  :''''~(mount_inf
│ │ │ +001ff650: 6f2e 6f70 7469 6f6e 7320 7c0a 2020 2020  o.options |.    
│ │ │ +001ff660: 2020 6465 6661 756c 7428 2727 2727 2929    default(''''))
│ │ │ +001ff670: 7e28 2727 2c27 2720 6966 2028 6d6f 756e  ~('','' if (moun
│ │ │ +001ff680: 745f 696e 666f 2e6f 7074 696f 6e73 207c  t_info.options |
│ │ │ +001ff690: 2064 6566 6175 6c74 2827 2727 2729 2920   default('''')) 
│ │ │ +001ff6a0: 656c 7365 2027 2727 2729 7e27 276e 6f73  else '''')~''nos
│ │ │ +001ff6b0: 7569 6427 270a 2020 2020 2020 7d29 207d  uid''.      }) }
│ │ │ +001ff6c0: 7d27 0a20 2077 6865 6e3a 0a20 202d 2028  }'.  when:.  - (
│ │ │ +001ff6d0: 206e 6f74 2028 2022 6b65 726e 656c 2220   not ( "kernel" 
│ │ │ +001ff6e0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001ff6f0: 2e70 6163 6b61 6765 7320 616e 6420 2262  .packages and "b
│ │ │ +001ff700: 6f6f 7463 2220 696e 2061 6e73 6962 6c65  ootc" in ansible
│ │ │ +001ff710: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ +001ff720: 2020 2020 616e 6420 6e6f 7420 226f 7065      and not "ope
│ │ │ +001ff730: 6e73 6869 6674 2d6b 7562 656c 6574 2220  nshift-kubelet" 
│ │ │ +001ff740: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001ff750: 2e70 6163 6b61 6765 7320 616e 6420 226f  .packages and "o
│ │ │ +001ff760: 7374 7265 6522 2069 6e20 616e 7369 626c  stree" in ansibl
│ │ │ +001ff770: 655f 7072 6f63 5f63 6d64 6c69 6e65 0a20  e_proc_cmdline. 
│ │ │ +001ff780: 2020 2029 2061 6e64 206e 6f74 2028 2061     ) and not ( a
│ │ │ +001ff790: 6e73 6962 6c65 5f76 6972 7475 616c 697a  nsible_virtualiz
│ │ │ +001ff7a0: 6174 696f 6e5f 7479 7065 2069 6e20 5b22  ation_type in ["
│ │ │ +001ff7b0: 646f 636b 6572 222c 2022 6c78 6322 2c20  docker", "lxc", 
│ │ │ +001ff7c0: 226f 7065 6e76 7a22 2c20 2270 6f64 6d61  "openvz", "podma
│ │ │ +001ff7d0: 6e22 2c0a 2020 2020 2263 6f6e 7461 696e  n",.    "contain
│ │ │ +001ff7e0: 6572 225d 2029 2029 0a20 202d 2027 222f  er"] ) ).  - '"/
│ │ │ +001ff7f0: 7661 722f 746d 7022 2069 6e20 616e 7369  var/tmp" in ansi
│ │ │ +001ff800: 626c 655f 6d6f 756e 7473 207c 206d 6170  ble_mounts | map
│ │ │ +001ff810: 2861 7474 7269 6275 7465 3d22 6d6f 756e  (attribute="moun
│ │ │ +001ff820: 7422 2920 7c20 6c69 7374 270a 2020 2d20  t") | list'.  - 
│ │ │ +001ff830: 6d6f 756e 745f 696e 666f 2069 7320 6465  mount_info is de
│ │ │ +001ff840: 6669 6e65 6420 616e 6420 226e 6f73 7569  fined and "nosui
│ │ │ +001ff850: 6422 206e 6f74 2069 6e20 286d 6f75 6e74  d" not in (mount
│ │ │ +001ff860: 5f69 6e66 6f2e 6f70 7469 6f6e 7320 7c20  _info.options | 
│ │ │ +001ff870: 6465 6661 756c 7428 2727 2929 0a20 2074  default('')).  t
│ │ │ +001ff880: 6167 733a 0a20 202d 2063 6f6e 6669 6775  ags:.  - configu
│ │ │ +001ff890: 7265 5f73 7472 6174 6567 790a 2020 2d20  re_strategy.  - 
│ │ │ +001ff8a0: 6869 6768 5f64 6973 7275 7074 696f 6e0a  high_disruption.
│ │ │ +001ff8b0: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ +001ff8c0: 7479 0a20 202d 206d 6564 6975 6d5f 7365  ty.  - medium_se
│ │ │ +001ff8d0: 7665 7269 7479 0a20 202d 206d 6f75 6e74  verity.  - mount
│ │ │ +001ff8e0: 5f6f 7074 696f 6e5f 7661 725f 746d 705f  _option_var_tmp_
│ │ │ +001ff8f0: 6e6f 7375 6964 0a20 202d 206e 6f5f 7265  nosuid.  - no_re
│ │ │ +001ff900: 626f 6f74 5f6e 6565 6465 640a 0a2d 206e  boot_needed..- n
│ │ │ +001ff910: 616d 653a 2027 4164 6420 6e6f 7375 6964  ame: 'Add nosuid
│ │ │ +001ff920: 204f 7074 696f 6e20 746f 202f 7661 722f   Option to /var/
│ │ │ +001ff930: 746d 703a 2045 6e73 7572 6520 2f76 6172  tmp: Ensure /var
│ │ │ +001ff940: 2f74 6d70 2069 7320 6d6f 756e 7465 6420  /tmp is mounted 
│ │ │ +001ff950: 7769 7468 206e 6f73 7569 6420 6f70 7469  with nosuid opti
│ │ │ +001ff960: 6f6e 270a 2020 616e 7369 626c 652e 706f  on'.  ansible.po
│ │ │ +001ff970: 7369 782e 6d6f 756e 743a 0a20 2020 2070  six.mount:.    p
│ │ │ +001ff980: 6174 683a 202f 7661 722f 746d 700a 2020  ath: /var/tmp.  
│ │ │ +001ff990: 2020 7372 633a 2027 7b7b 206d 6f75 6e74    src: '{{ mount
│ │ │ +001ff9a0: 5f69 6e66 6f2e 736f 7572 6365 207c 2064  _info.source | d
│ │ │ +001ff9b0: 6566 6175 6c74 2827 2727 2729 207d 7d27  efault('''') }}'
│ │ │ +001ff9c0: 0a20 2020 206f 7074 733a 2027 7b7b 206d  .    opts: '{{ m
│ │ │ +001ff9d0: 6f75 6e74 5f69 6e66 6f2e 6f70 7469 6f6e  ount_info.option
│ │ │ +001ff9e0: 7320 7c20 6465 6661 756c 7428 2727 2727  s | default(''''
│ │ │ +001ff9f0: 2920 7d7d 270a 2020 2020 7374 6174 653a  ) }}'.    state:
│ │ │ +001ffa00: 206d 6f75 6e74 6564 0a20 2020 2066 7374   mounted.    fst
│ │ │ +001ffa10: 7970 653a 2027 7b7b 206d 6f75 6e74 5f69  ype: '{{ mount_i
│ │ │ +001ffa20: 6e66 6f2e 6673 7479 7065 207c 2064 6566  nfo.fstype | def
│ │ │ +001ffa30: 6175 6c74 2827 2727 2729 207d 7d27 0a20  ault('''') }}'. 
│ │ │ +001ffa40: 2072 6567 6973 7465 723a 206d 6f75 6e74   register: mount
│ │ │ +001ffa50: 5f72 6573 756c 740a 2020 6661 696c 6564  _result.  failed
│ │ │ +001ffa60: 5f77 6865 6e3a 0a20 202d 206d 6f75 6e74  _when:.  - mount
│ │ │ +001ffa70: 5f72 6573 756c 7420 6973 2066 6169 6c65  _result is faile
│ │ │ +001ffa80: 640a 2020 2d20 2727 2774 6172 6765 7420  d.  - '''target 
│ │ │ +001ffa90: 6973 2062 7573 7927 2720 6e6f 7420 696e  is busy'' not in
│ │ │ +001ffaa0: 2028 6d6f 756e 745f 7265 7375 6c74 2e6d   (mount_result.m
│ │ │ +001ffab0: 7367 207c 2064 6566 6175 6c74 2827 2727  sg | default('''
│ │ │ +001ffac0: 2729 2927 0a20 202d 2027 2727 616c 7265  '))'.  - '''alre
│ │ │ +001ffad0: 6164 7920 6d6f 756e 7465 6427 2720 6e6f  ady mounted'' no
│ │ │ +001ffae0: 7420 696e 2028 6d6f 756e 745f 7265 7375  t in (mount_resu
│ │ │ +001ffaf0: 6c74 2e6d 7367 207c 2064 6566 6175 6c74  lt.msg | default
│ │ │ +001ffb00: 2827 2727 2729 2927 0a20 2077 6865 6e3a  (''''))'.  when:
│ │ │ +001ffb10: 0a20 202d 2028 206e 6f74 2028 2022 6b65  .  - ( not ( "ke
│ │ │ +001ffb20: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ +001ffb30: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ +001ffb40: 616e 6420 2262 6f6f 7463 2220 696e 2061  and "bootc" in a
│ │ │ +001ffb50: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +001ffb60: 6b61 6765 730a 2020 2020 616e 6420 6e6f  kages.    and no
│ │ │ +001ffb70: 7420 226f 7065 6e73 6869 6674 2d6b 7562  t "openshift-kub
│ │ │ +001ffb80: 656c 6574 2220 696e 2061 6e73 6962 6c65  elet" in ansible
│ │ │ +001ffb90: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ +001ffba0: 616e 6420 226f 7374 7265 6522 2069 6e20  and "ostree" in 
│ │ │ +001ffbb0: 616e 7369 626c 655f 7072 6f63 5f63 6d64  ansible_proc_cmd
│ │ │ +001ffbc0: 6c69 6e65 0a20 2020 2029 2061 6e64 206e  line.    ) and n
│ │ │ +001ffbd0: 6f74 2028 2061 6e73 6962 6c65 5f76 6972  ot ( ansible_vir
│ │ │ +001ffbe0: 7475 616c 697a 6174 696f 6e5f 7479 7065  tualization_type
│ │ │ +001ffbf0: 2069 6e20 5b22 646f 636b 6572 222c 2022   in ["docker", "
│ │ │ +001ffc00: 6c78 6322 2c20 226f 7065 6e76 7a22 2c20  lxc", "openvz", 
│ │ │ +001ffc10: 2270 6f64 6d61 6e22 2c0a 2020 2020 2263  "podman",.    "c
│ │ │ +001ffc20: 6f6e 7461 696e 6572 225d 2029 2029 0a20  ontainer"] ) ). 
│ │ │ +001ffc30: 202d 2027 222f 7661 722f 746d 7022 2069   - '"/var/tmp" i
│ │ │ +001ffc40: 6e20 616e 7369 626c 655f 6d6f 756e 7473  n ansible_mounts
│ │ │ +001ffc50: 207c 206d 6170 2861 7474 7269 6275 7465   | map(attribute
│ │ │ +001ffc60: 3d22 6d6f 756e 7422 2920 7c20 6c69 7374  ="mount") | list
│ │ │ +001ffc70: 270a 2020 2d20 6d6f 756e 745f 696e 666f  '.  - mount_info
│ │ │ +001ffc80: 2069 7320 6465 6669 6e65 640a 2020 2d20   is defined.  - 
│ │ │ +001ffc90: 2864 6576 6963 655f 6e61 6d65 2e73 7464  (device_name.std
│ │ │ +001ffca0: 6f75 7420 6973 2064 6566 696e 6564 2061  out is defined a
│ │ │ +001ffcb0: 6e64 2028 6465 7669 6365 5f6e 616d 652e  nd (device_name.
│ │ │ +001ffcc0: 7374 646f 7574 207c 206c 656e 6774 6820  stdout | length 
│ │ │ +001ffcd0: 2667 743b 2030 2929 206f 7220 2822 2d2d  > 0)) or ("--
│ │ │ +001ffce0: 6673 7461 6222 0a20 2020 207c 206c 656e  fstab".    | len
│ │ │ +001ffcf0: 6774 6820 3d3d 2030 290a 2020 7461 6773  gth == 0).  tags
│ │ │ +001ffd00: 3a0a 2020 2d20 636f 6e66 6967 7572 655f  :.  - configure_
│ │ │ +001ffd10: 7374 7261 7465 6779 0a20 202d 2068 6967  strategy.  - hig
│ │ │ +001ffd20: 685f 6469 7372 7570 7469 6f6e 0a20 202d  h_disruption.  -
│ │ │ +001ffd30: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ +001ffd40: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ +001ffd50: 6974 790a 2020 2d20 6d6f 756e 745f 6f70  ity.  - mount_op
│ │ │ +001ffd60: 7469 6f6e 5f76 6172 5f74 6d70 5f6e 6f73  tion_var_tmp_nos
│ │ │ +001ffd70: 7569 640a 2020 2d20 6e6f 5f72 6562 6f6f  uid.  - no_reboo
│ │ │ +001ffd80: 745f 6e65 6564 6564 0a3c 2f63 6f64 653e  t_needed.
│ │ │ +001ffd90: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ +001ffe40: 7469 6f6e 2053 6865 6c6c 2073 6372 6970 tion Shell scrip │ │ │ +001ffe50: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ +001ffed0: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:false

# Remed │ │ │ +001fff10: 6961 7469 6f6e 2069 7320 6170 706c 6963 iation is applic │ │ │ +001fff20: 6162 6c65 206f 6e6c 7920 696e 2063 6572 able only in cer │ │ │ +001fff30: 7461 696e 2070 6c61 7466 6f72 6d73 0a69 tain platforms.i │ │ │ +001fff40: 6620 2820 2120 2820 7b20 7270 6d20 2d2d f ( ! ( { rpm -- │ │ │ +001fff50: 7175 6965 7420 2d71 206b 6572 6e65 6c20 quiet -q kernel │ │ │ +001fff60: 3b7d 2026 616d 703b 2661 6d70 3b20 7b20 ;} && { │ │ │ +001fff70: 7270 6d20 2d2d 7175 6965 7420 2d71 2062 rpm --quiet -q b │ │ │ +001fff80: 6f6f 7463 203b 7d20 2661 6d70 3b26 616d ootc ;} &&am │ │ │ +001fff90: 703b 207b 2021 2072 706d 202d 2d71 7569 p; { ! rpm --qui │ │ │ +001fffa0: 6574 202d 7120 6f70 656e 7368 6966 742d et -q openshift- │ │ │ +001fffb0: 6b75 6265 6c65 7420 3b7d 2026 616d 703b kubelet ;} & │ │ │ +001fffc0: 2661 6d70 3b20 285b 202d 6620 2f72 756e & ([ -f /run │ │ │ +001fffd0: 2f6f 7374 7265 652d 626f 6f74 6564 205d /ostree-booted ] │ │ │ +001fffe0: 207c 7c20 5b20 2d4c 202f 6f73 7472 6565 || [ -L /ostree │ │ │ +001ffff0: 205d 2920 2920 2661 6d70 3b26 616d 703b ]) ) && │ │ │ +00200000: 2021 2028 205b 202d 6620 2f2e 646f 636b ! ( [ -f /.dock │ │ │ +00200010: 6572 656e 7620 5d20 7c7c 205b 202d 6620 erenv ] || [ -f │ │ │ +00200020: 2f72 756e 2f2e 636f 6e74 6169 6e65 7265 /run/.containere │ │ │ +00200030: 6e76 205d 2029 2029 2026 616d 703b 2661 nv ] ) ) &&a │ │ │ +00200040: 6d70 3b20 7b20 2820 6669 6e64 6d6e 7420 mp; { ( findmnt │ │ │ +00200050: 2d2d 6b65 726e 656c 2022 2f76 6172 2f74 --kernel "/var/t │ │ │ +00200060: 6d70 2220 2667 743b 202f 6465 762f 6e75 mp" > /dev/nu │ │ │ +00200070: 6c6c 207c 7c20 6669 6e64 6d6e 7420 2d2d ll || findmnt -- │ │ │ +00200080: 6673 7461 6220 222f 7661 722f 746d 7022 fstab "/var/tmp" │ │ │ +00200090: 2026 6774 3b20 2f64 6576 2f6e 756c 6c20 > /dev/null │ │ │ +002000a0: 293b 207d 3b20 7468 656e 0a0a 6675 6e63 ); }; then..func │ │ │ +002000b0: 7469 6f6e 2070 6572 666f 726d 5f72 656d tion perform_rem │ │ │ +002000c0: 6564 6961 7469 6f6e 207b 0a0a 2020 2020 ediation {.. │ │ │ +002000d0: 0a20 2020 2020 2020 2023 2074 6865 206d . # the m │ │ │ +002000e0: 6f75 6e74 2070 6f69 6e74 202f 7661 722f ount point /var/ │ │ │ +002000f0: 746d 7020 6861 7320 746f 2062 6520 6465 tmp has to be de │ │ │ +00200100: 6669 6e65 6420 696e 202f 6574 632f 6673 fined in /etc/fs │ │ │ +00200110: 7461 620a 2020 2020 2020 2020 2320 6265 tab. # be │ │ │ +00200120: 666f 7265 2074 6869 7320 7265 6d65 6469 fore this remedi │ │ │ +00200130: 6174 696f 6e20 6361 6e20 6265 2065 7865 ation can be exe │ │ │ +00200140: 6375 7465 642e 2049 6e20 6361 7365 2069 cuted. In case i │ │ │ +00200150: 7420 6973 206e 6f74 2064 6566 696e 6564 t is not defined │ │ │ +00200160: 2c20 7468 650a 2020 2020 2020 2020 2320 , the. # │ │ │ +00200170: 7265 6d65 6469 6174 696f 6e20 6162 6f72 remediation abor │ │ │ +00200180: 7473 2061 6e64 206e 6f20 6368 616e 6765 ts and no change │ │ │ +00200190: 7320 7265 6761 7264 696e 6720 7468 6520 s regarding the │ │ │ +002001a0: 6d6f 756e 7420 706f 696e 7420 6172 6520 mount point are │ │ │ +002001b0: 646f 6e65 2e0a 2020 2020 2020 2020 6d6f done.. mo │ │ │ +002001c0: 756e 745f 706f 696e 745f 6d61 7463 685f unt_point_match_ │ │ │ +002001d0: 7265 6765 7870 3d22 2428 7072 696e 7466 regexp="$(printf │ │ │ +002001e0: 2022 5e5b 5b3a 7370 6163 653a 5d5d 2a5b "^[[:space:]]*[ │ │ │ +002001f0: 5e23 5d2e 2a5b 5b3a 7370 6163 653a 5d5d ^#].*[[:space:]] │ │ │ +00200200: 2573 5b5b 3a73 7061 6365 3a5d 5d22 2022 %s[[:space:]]" " │ │ │ +00200210: 2f76 6172 2f74 6d70 2229 220a 0a20 2020 /var/tmp")".. │ │ │ +00200220: 2067 7265 7020 2224 6d6f 756e 745f 706f grep "$mount_po │ │ │ +00200230: 696e 745f 6d61 7463 685f 7265 6765 7870 int_match_regexp │ │ │ +00200240: 2220 2d71 202f 6574 632f 6673 7461 6220 " -q /etc/fstab │ │ │ +00200250: 5c0a 2020 2020 2020 2020 7c7c 207b 2065 \. || { e │ │ │ +00200260: 6368 6f20 2254 6865 206d 6f75 6e74 2070 cho "The mount p │ │ │ +00200270: 6f69 6e74 2027 2f76 6172 2f74 6d70 2720 oint '/var/tmp' │ │ │ +00200280: 6973 206e 6f74 2065 7665 6e20 696e 202f is not even in / │ │ │ +00200290: 6574 632f 6673 7461 622c 2073 6f20 7765 etc/fstab, so we │ │ │ +002002a0: 2063 616e 2774 2073 6574 2075 7020 6d6f can't set up mo │ │ │ +002002b0: 756e 7420 6f70 7469 6f6e 7322 2026 6774 unt options" > │ │ │ +002002c0: 3b26 616d 703b 323b 0a20 2020 2020 2020 ;&2;. │ │ │ +002002d0: 2020 2020 2020 2020 2065 6368 6f20 224e echo "N │ │ │ +002002e0: 6f74 2072 656d 6564 6961 7469 6e67 2c20 ot remediating, │ │ │ +002002f0: 6265 6361 7573 6520 7468 6572 6520 6973 because there is │ │ │ +00200300: 206e 6f20 7265 636f 7264 206f 6620 2f76 no record of /v │ │ │ +00200310: 6172 2f74 6d70 2069 6e20 2f65 7463 2f66 ar/tmp in /etc/f │ │ │ +00200320: 7374 6162 2220 2667 743b 2661 6d70 3b32 stab" >&2 │ │ │ +00200330: 3b20 7265 7475 726e 2031 3b20 7d0a 2020 ; return 1; }. │ │ │ +00200340: 2020 0a0a 0a20 2020 206d 6f75 6e74 5f70 ... mount_p │ │ │ +00200350: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578 oint_match_regex │ │ │ +00200360: 703d 2224 2870 7269 6e74 6620 225e 5b5b p="$(printf "^[[ │ │ │ +00200370: 3a73 7061 6365 3a5d 5d2a 5b5e 235d 2e2a :space:]]*[^#].* │ │ │ +00200380: 5b5b 3a73 7061 6365 3a5d 5d25 735b 5b3a [[:space:]]%s[[: │ │ │ +00200390: 7370 6163 653a 5d5d 2220 2f76 6172 2f74 space:]]" /var/t │ │ │ +002003a0: 6d70 2922 0a0a 2020 2020 2320 4966 2074 mp)".. # If t │ │ │ +002003b0: 6865 206d 6f75 6e74 2070 6f69 6e74 2069 he mount point i │ │ │ +002003c0: 7320 6e6f 7420 696e 202f 6574 632f 6673 s not in /etc/fs │ │ │ +002003d0: 7461 622c 2067 6574 2070 7265 7669 6f75 tab, get previou │ │ │ +002003e0: 7320 6d6f 756e 7420 6f70 7469 6f6e 7320 s mount options │ │ │ +002003f0: 6672 6f6d 202f 6574 632f 6d74 6162 0a20 from /etc/mtab. │ │ │ +00200400: 2020 2069 6620 2120 6772 6570 202d 7120 if ! grep -q │ │ │ +00200410: 2224 6d6f 756e 745f 706f 696e 745f 6d61 "$mount_point_ma │ │ │ +00200420: 7463 685f 7265 6765 7870 2220 2f65 7463 tch_regexp" /etc │ │ │ +00200430: 2f66 7374 6162 3b20 7468 656e 0a20 2020 /fstab; then. │ │ │ +00200440: 2020 2020 2023 2072 756e 7469 6d65 206f # runtime o │ │ │ +00200450: 7074 7320 7769 7468 6f75 7420 736f 6d65 pts without some │ │ │ +00200460: 2061 7574 6f6d 6174 6963 206b 6572 6e65 automatic kerne │ │ │ +00200470: 6c2f 7573 6572 7370 6163 652d 6164 6465 l/userspace-adde │ │ │ +00200480: 6420 6465 6661 756c 7473 0a20 2020 2020 d defaults. │ │ │ +00200490: 2020 2070 7265 7669 6f75 735f 6d6f 756e previous_moun │ │ │ +002004a0: 745f 6f70 7473 3d24 2867 7265 7020 2224 t_opts=$(grep "$ │ │ │ +002004b0: 6d6f 756e 745f 706f 696e 745f 6d61 7463 mount_point_matc │ │ │ +002004c0: 685f 7265 6765 7870 2220 2f65 7463 2f6d h_regexp" /etc/m │ │ │ +002004d0: 7461 6220 7c20 6865 6164 202d 3120 7c20 tab | head -1 | │ │ │ +002004e0: 2061 776b 2027 7b70 7269 6e74 2024 347d awk '{print $4} │ │ │ +002004f0: 2720 5c0a 2020 2020 2020 2020 2020 2020 ' \. │ │ │ +00200500: 2020 2020 2020 2020 7c20 7365 6420 2d45 | sed -E │ │ │ +00200510: 2022 732f 2872 777c 6465 6661 756c 7473 "s/(rw|defaults │ │ │ +00200520: 7c73 6563 6c61 6265 6c7c 6e6f 7375 6964 |seclabel|nosuid │ │ │ +00200530: 2928 2c7c 2429 2f2f 673b 732f 2c24 2f2f )(,|$)//g;s/,$// │ │ │ +00200540: 2229 0a20 2020 2020 2020 205b 2022 2470 "). [ "$p │ │ │ +00200550: 7265 7669 6f75 735f 6d6f 756e 745f 6f70 revious_mount_op │ │ │ +00200560: 7473 2220 5d20 2661 6d70 3b26 616d 703b ts" ] && │ │ │ +00200570: 2070 7265 7669 6f75 735f 6d6f 756e 745f previous_mount_ │ │ │ +00200580: 6f70 7473 2b3d 222c 220a 2020 2020 2020 opts+=",". │ │ │ +00200590: 2020 2320 496e 2069 736f 3936 3630 2066 # In iso9660 f │ │ │ +002005a0: 696c 6573 7973 7465 6d73 206d 7461 6220 ilesystems mtab │ │ │ +002005b0: 636f 756c 6420 6465 7363 7269 6265 2061 could describe a │ │ │ +002005c0: 2022 626c 6f63 6b73 697a 6522 2076 616c "blocksize" val │ │ │ +002005d0: 7565 2c20 7468 6973 2073 686f 756c 6420 ue, this should │ │ │ +002005e0: 6265 2072 6566 6c65 6374 6564 2069 6e0a be reflected in. │ │ │ +002005f0: 2020 2020 2020 2020 2320 6673 7461 6220 # fstab │ │ │ +00200600: 6173 2022 626c 6f63 6b22 2e20 2054 6865 as "block". The │ │ │ +00200610: 206e 6578 7420 7661 7269 6162 6c65 2069 next variable i │ │ │ +00200620: 7320 746f 2073 6174 6973 6679 2073 6865 s to satisfy she │ │ │ +00200630: 6c6c 6368 6563 6b20 5343 3230 3530 2e0a llcheck SC2050.. │ │ │ +00200640: 2020 2020 2020 2020 6673 5f74 7970 653d fs_type= │ │ │ +00200650: 2222 0a20 2020 2020 2020 2069 6620 5b20 "". if [ │ │ │ +00200660: 2022 2466 735f 7479 7065 2220 3d3d 2022 "$fs_type" == " │ │ │ +00200670: 6973 6f39 3636 3022 205d 203b 2074 6865 iso9660" ] ; the │ │ │ +00200680: 6e0a 2020 2020 2020 2020 2020 2020 7072 n. pr │ │ │ +00200690: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074 evious_mount_opt │ │ │ +002006a0: 733d 2428 7365 6420 2773 2f62 6c6f 636b s=$(sed 's/block │ │ │ +002006b0: 7369 7a65 3d2f 626c 6f63 6b3d 2f27 2026 size=/block=/' & │ │ │ +002006c0: 6c74 3b26 6c74 3b26 6c74 3b20 2224 7072 lt;<< "$pr │ │ │ +002006d0: 6576 696f 7573 5f6d 6f75 6e74 5f6f 7074 evious_mount_opt │ │ │ +002006e0: 7322 290a 2020 2020 2020 2020 6669 0a20 s"). fi. │ │ │ +002006f0: 2020 2020 2020 2065 6368 6f20 2220 2f76 echo " /v │ │ │ +00200700: 6172 2f74 6d70 2020 6465 6661 756c 7473 ar/tmp defaults │ │ │ +00200710: 2c24 7b70 7265 7669 6f75 735f 6d6f 756e ,${previous_moun │ │ │ +00200720: 745f 6f70 7473 7d6e 6f73 7569 6420 3020 t_opts}nosuid 0 │ │ │ +00200730: 3022 2026 6774 3b26 6774 3b20 2f65 7463 0" >> /etc │ │ │ +00200740: 2f66 7374 6162 0a20 2020 2023 2049 6620 /fstab. # If │ │ │ +00200750: 7468 6520 6d6f 756e 745f 6f70 7420 6f70 the mount_opt op │ │ │ +00200760: 7469 6f6e 2069 7320 6e6f 7420 616c 7265 tion is not alre │ │ │ +00200770: 6164 7920 696e 2074 6865 206d 6f75 6e74 ady in the mount │ │ │ +00200780: 2070 6f69 6e74 2773 202f 6574 632f 6673 point's /etc/fs │ │ │ +00200790: 7461 6220 656e 7472 792c 2061 6464 2069 tab entry, add i │ │ │ +002007a0: 740a 2020 2020 656c 6966 2021 2067 7265 t. elif ! gre │ │ │ +002007b0: 7020 2224 6d6f 756e 745f 706f 696e 745f p "$mount_point_ │ │ │ +002007c0: 6d61 7463 685f 7265 6765 7870 2220 2f65 match_regexp" /e │ │ │ +002007d0: 7463 2f66 7374 6162 207c 2067 7265 7020 tc/fstab | grep │ │ │ +002007e0: 2d71 2022 6e6f 7375 6964 223b 2074 6865 -q "nosuid"; the │ │ │ +002007f0: 6e0a 2020 2020 2020 2020 7072 6576 696f n. previo │ │ │ +00200800: 7573 5f6d 6f75 6e74 5f6f 7074 733d 2428 us_mount_opts=$( │ │ │ +00200810: 6772 6570 2022 246d 6f75 6e74 5f70 6f69 grep "$mount_poi │ │ │ +00200820: 6e74 5f6d 6174 6368 5f72 6567 6578 7022 nt_match_regexp" │ │ │ +00200830: 202f 6574 632f 6673 7461 6220 7c20 6177 /etc/fstab | aw │ │ │ +00200840: 6b20 277b 7072 696e 7420 2434 7d27 290a k '{print $4}'). │ │ │ +00200850: 2020 2020 2020 2020 7365 6420 2d69 2022 sed -i " │ │ │ +00200860: 737c 5c28 247b 6d6f 756e 745f 706f 696e s|\(${mount_poin │ │ │ +00200870: 745f 6d61 7463 685f 7265 6765 7870 7d2e t_match_regexp}. │ │ │ +00200880: 2a24 7b70 7265 7669 6f75 735f 6d6f 756e *${previous_moun │ │ │ +00200890: 745f 6f70 7473 7d5c 297c 5c31 2c6e 6f73 t_opts}\)|\1,nos │ │ │ +002008a0: 7569 647c 2220 2f65 7463 2f66 7374 6162 uid|" /etc/fstab │ │ │ +002008b0: 0a20 2020 2066 690a 0a0a 2020 2020 6966 . fi... if │ │ │ +002008c0: 206d 6b64 6972 202d 7020 222f 7661 722f mkdir -p "/var/ │ │ │ +002008d0: 746d 7022 3b20 7468 656e 0a20 2020 2020 tmp"; then. │ │ │ +002008e0: 2020 2069 6620 6d6f 756e 7470 6f69 6e74 if mountpoint │ │ │ +002008f0: 202d 7120 222f 7661 722f 746d 7022 3b20 -q "/var/tmp"; │ │ │ +00200900: 7468 656e 0a20 2020 2020 2020 2020 2020 then. │ │ │ +00200910: 206d 6f75 6e74 202d 6f20 7265 6d6f 756e mount -o remoun │ │ │ +00200920: 7420 2d2d 7461 7267 6574 2022 2f76 6172 t --target "/var │ │ │ +00200930: 2f74 6d70 220a 2020 2020 2020 2020 6669 /tmp". fi │ │ │ +00200940: 0a20 2020 2066 690a 7d0a 0a70 6572 666f . fi.}..perfo │ │ │ +00200950: 726d 5f72 656d 6564 6961 7469 6f6e 0a0a rm_remediation.. │ │ │ +00200960: 656c 7365 0a20 2020 2026 6774 3b26 616d else. >&am │ │ │ +00200970: 703b 3220 6563 686f 2027 5265 6d65 6469 p;2 echo 'Remedi │ │ │ +00200980: 6174 696f 6e20 6973 206e 6f74 2061 7070 ation is not app │ │ │ +00200990: 6c69 6361 626c 652c 206e 6f74 6869 6e67 licable, nothing │ │ │ +002009a0: 2077 6173 2064 6f6e 6527 0a66 690a 3c2f was done'.fi.

Re │ │ │ +00200a60: 6d65 6469 6174 696f 6e20 416e 6163 6f6e mediation Anacon │ │ │ +00200a70: 6461 2073 6e69 7070 6574 20e2 87b2 3c2f da snippet ...
│ │ │ +00200b10: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 < │ │ │ +00200b50: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +00200b60: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
.
│ │ │ +00200bb0: 7061 7274 202f 7661 722f 746d 7020 2d2d  part /var/tmp --
│ │ │ +00200bc0: 6d6f 756e 746f 7074 696f 6e73 3d22 6e6f  mountoptions="no
│ │ │ +00200bd0: 7375 6964 220a 3c2f 636f 6465 3e3c 2f70  suid".

< │ │ │ 00200bf0: 2f74 643e 3c2f 7472 3e3c 2f74 626f 6479 /td>
│ │ │ +00200b00: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +00200b30: 696f 6e3a 3c2f 7468 3e3c 7464 3e68 6967 ion:hig │ │ │ +00200b40: 683c 2f74 643e 3c2f 7472 3e3c 7472 3e3c h
Strate │ │ │ +00200b80: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ +00200b90: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
│ │ │ -0020ab10: 5265 6d65 6469 6174 696f 6e20 4f53 4275 Remediation OSBu │ │ │ -0020ab20: 696c 6420 426c 7565 7072 696e 7420 736e ild Blueprint sn │ │ │ -0020ab30: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...

[cus
│ │ │ -0020ab80: 746f 6d69 7a61 7469 6f6e 732e 6b65 726e  tomizations.kern
│ │ │ -0020ab90: 656c 5d0a 6170 7065 6e64 203d 2022 7061  el].append = "pa
│ │ │ -0020aba0: 6765 5f70 6f69 736f 6e3d 3122 0a3c 2f63  ge_poison=1".
│ │ │ -0020abc0: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ -0020ac60: 6564 6961 7469 6f6e 2041 6e73 6962 6c65 ediation Ansible │ │ │ -0020ac70: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -0020ac80: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
medium< │ │ │ -0020ad50: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -0020ad60: 7464 3e74 7275 653c 2f74 643e 3c2f 7472 td>true

│ │ │ -0020adb0: 2d20 6e61 6d65 3a20 4761 7468 6572 2074  - name: Gather t
│ │ │ -0020adc0: 6865 2070 6163 6b61 6765 2066 6163 7473  he package facts
│ │ │ -0020add0: 0a20 2070 6163 6b61 6765 5f66 6163 7473  .  package_facts
│ │ │ -0020ade0: 3a0a 2020 2020 6d61 6e61 6765 723a 2061  :.    manager: a
│ │ │ -0020adf0: 7574 6f0a 2020 7461 6773 3a0a 2020 2d20  uto.  tags:.  - 
│ │ │ -0020ae00: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ -0020ae10: 2861 290a 2020 2d20 6772 7562 325f 7061  (a).  - grub2_pa
│ │ │ -0020ae20: 6765 5f70 6f69 736f 6e5f 6172 6775 6d65  ge_poison_argume
│ │ │ -0020ae30: 6e74 0a20 202d 206c 6f77 5f64 6973 7275  nt.  - low_disru
│ │ │ -0020ae40: 7074 696f 6e0a 2020 2d20 6d65 6469 756d  ption.  - medium
│ │ │ -0020ae50: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ -0020ae60: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ -0020ae70: 2020 2d20 7265 626f 6f74 5f72 6571 7569    - reboot_requi
│ │ │ -0020ae80: 7265 640a 2020 2d20 7265 7374 7269 6374  red.  - restrict
│ │ │ -0020ae90: 5f73 7472 6174 6567 790a 0a2d 206e 616d  _strategy..- nam
│ │ │ -0020aea0: 653a 2043 6865 636b 2069 6620 7061 6765  e: Check if page
│ │ │ -0020aeb0: 5f70 6f69 736f 6e20 6172 6775 6d65 6e74  _poison argument
│ │ │ -0020aec0: 2069 7320 616c 7265 6164 7920 7072 6573   is already pres
│ │ │ -0020aed0: 656e 7420 696e 202f 6574 632f 6465 6661  ent in /etc/defa
│ │ │ -0020aee0: 756c 742f 6772 7562 0a20 2061 6e73 6962  ult/grub.  ansib
│ │ │ -0020aef0: 6c65 2e62 7569 6c74 696e 2e73 6c75 7270  le.builtin.slurp
│ │ │ -0020af00: 3a0a 2020 2020 7372 633a 202f 6574 632f  :.    src: /etc/
│ │ │ -0020af10: 6465 6661 756c 742f 6772 7562 0a20 2072  default/grub.  r
│ │ │ -0020af20: 6567 6973 7465 723a 2065 7463 5f64 6566  egister: etc_def
│ │ │ -0020af30: 6175 6c74 5f67 7275 620a 2020 7768 656e  ault_grub.  when
│ │ │ -0020af40: 3a0a 2020 2d20 2722 6b65 726e 656c 2220  :.  - '"kernel" 
│ │ │ -0020af50: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -0020af60: 2e70 6163 6b61 6765 7327 0a20 202d 2027  .packages'.  - '
│ │ │ -0020af70: 2267 7275 6232 2d63 6f6d 6d6f 6e22 2069  "grub2-common" i
│ │ │ -0020af80: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -0020af90: 7061 636b 6167 6573 270a 2020 7461 6773  packages'.  tags
│ │ │ -0020afa0: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ -0020afb0: 332d 434d 2d36 2861 290a 2020 2d20 6772  3-CM-6(a).  - gr
│ │ │ -0020afc0: 7562 325f 7061 6765 5f70 6f69 736f 6e5f  ub2_page_poison_
│ │ │ -0020afd0: 6172 6775 6d65 6e74 0a20 202d 206c 6f77  argument.  - low
│ │ │ -0020afe0: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ -0020aff0: 6d65 6469 756d 5f63 6f6d 706c 6578 6974  medium_complexit
│ │ │ -0020b000: 790a 2020 2d20 6d65 6469 756d 5f73 6576  y.  - medium_sev
│ │ │ -0020b010: 6572 6974 790a 2020 2d20 7265 626f 6f74  erity.  - reboot
│ │ │ -0020b020: 5f72 6571 7569 7265 640a 2020 2d20 7265  _required.  - re
│ │ │ -0020b030: 7374 7269 6374 5f73 7472 6174 6567 790a  strict_strategy.
│ │ │ -0020b040: 0a2d 206e 616d 653a 2043 6865 636b 2069  .- name: Check i
│ │ │ -0020b050: 6620 7061 6765 5f70 6f69 736f 6e20 6172  f page_poison ar
│ │ │ -0020b060: 6775 6d65 6e74 2069 7320 616c 7265 6164  gument is alread
│ │ │ -0020b070: 7920 7072 6573 656e 740a 2020 616e 7369  y present.  ansi
│ │ │ -0020b080: 626c 652e 6275 696c 7469 6e2e 636f 6d6d  ble.builtin.comm
│ │ │ -0020b090: 616e 643a 202f 7362 696e 2f67 7275 6262  and: /sbin/grubb
│ │ │ -0020b0a0: 7920 2d2d 696e 666f 3d41 4c4c 0a20 2072  y --info=ALL.  r
│ │ │ -0020b0b0: 6567 6973 7465 723a 2067 7275 6262 795f  egister: grubby_
│ │ │ -0020b0c0: 696e 666f 0a20 2063 6865 636b 5f6d 6f64  info.  check_mod
│ │ │ -0020b0d0: 653a 2066 616c 7365 0a20 2063 6861 6e67  e: false.  chang
│ │ │ -0020b0e0: 6564 5f77 6865 6e3a 2066 616c 7365 0a20  ed_when: false. 
│ │ │ -0020b0f0: 2066 6169 6c65 645f 7768 656e 3a20 6661   failed_when: fa
│ │ │ -0020b100: 6c73 650a 2020 7768 656e 3a0a 2020 2d20  lse.  when:.  - 
│ │ │ -0020b110: 2722 6b65 726e 656c 2220 696e 2061 6e73  '"kernel" in ans
│ │ │ -0020b120: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -0020b130: 6765 7327 0a20 202d 2027 2267 7275 6232  ges'.  - '"grub2
│ │ │ -0020b140: 2d63 6f6d 6d6f 6e22 2069 6e20 616e 7369  -common" in ansi
│ │ │ -0020b150: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -0020b160: 6573 270a 2020 7461 6773 3a0a 2020 2d20  es'.  tags:.  - 
│ │ │ -0020b170: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ -0020b180: 2861 290a 2020 2d20 6772 7562 325f 7061  (a).  - grub2_pa
│ │ │ -0020b190: 6765 5f70 6f69 736f 6e5f 6172 6775 6d65  ge_poison_argume
│ │ │ -0020b1a0: 6e74 0a20 202d 206c 6f77 5f64 6973 7275  nt.  - low_disru
│ │ │ -0020b1b0: 7074 696f 6e0a 2020 2d20 6d65 6469 756d  ption.  - medium
│ │ │ -0020b1c0: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ -0020b1d0: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ -0020b1e0: 2020 2d20 7265 626f 6f74 5f72 6571 7569    - reboot_requi
│ │ │ -0020b1f0: 7265 640a 2020 2d20 7265 7374 7269 6374  red.  - restrict
│ │ │ -0020b200: 5f73 7472 6174 6567 790a 0a2d 206e 616d  _strategy..- nam
│ │ │ -0020b210: 653a 2055 7064 6174 6520 6772 7562 2064  e: Update grub d
│ │ │ -0020b220: 6566 6175 6c74 7320 616e 6420 7468 6520  efaults and the 
│ │ │ -0020b230: 626f 6f74 6c6f 6164 6572 206d 656e 750a  bootloader menu.
│ │ │ -0020b240: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ -0020b250: 6e2e 636f 6d6d 616e 643a 202f 7362 696e  n.command: /sbin
│ │ │ -0020b260: 2f67 7275 6262 7920 2d2d 7570 6461 7465  /grubby --update
│ │ │ -0020b270: 2d6b 6572 6e65 6c3d 414c 4c20 2d2d 6172  -kernel=ALL --ar
│ │ │ -0020b280: 6773 3d22 7061 6765 5f70 6f69 736f 6e3d  gs="page_poison=
│ │ │ -0020b290: 3122 0a20 2077 6865 6e3a 0a20 202d 2027  1".  when:.  - '
│ │ │ -0020b2a0: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ -0020b2b0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -0020b2c0: 6573 270a 2020 2d20 2722 6772 7562 322d  es'.  - '"grub2-
│ │ │ -0020b2d0: 636f 6d6d 6f6e 2220 696e 2061 6e73 6962  common" in ansib
│ │ │ -0020b2e0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -0020b2f0: 7327 0a20 202d 2028 6772 7562 6279 5f69  s'.  - (grubby_i
│ │ │ -0020b300: 6e66 6f2e 7374 646f 7574 2069 7320 6e6f  nfo.stdout is no
│ │ │ -0020b310: 7420 7365 6172 6368 2827 7061 6765 5f70  t search('page_p
│ │ │ -0020b320: 6f69 736f 6e3d 3127 2929 206f 7220 2828  oison=1')) or ((
│ │ │ -0020b330: 6574 635f 6465 6661 756c 745f 6772 7562  etc_default_grub
│ │ │ -0020b340: 5b27 636f 6e74 656e 7427 5d0a 2020 2020  ['content'].    
│ │ │ -0020b350: 7c20 6236 3464 6563 6f64 6529 2069 7320  | b64decode) is 
│ │ │ -0020b360: 6e6f 7420 7365 6172 6368 2827 7061 6765  not search('page
│ │ │ -0020b370: 5f70 6f69 736f 6e3d 3127 2929 0a20 2074  _poison=1')).  t
│ │ │ -0020b380: 6167 733a 0a20 202d 204e 4953 542d 3830  ags:.  - NIST-80
│ │ │ -0020b390: 302d 3533 2d43 4d2d 3628 6129 0a20 202d  0-53-CM-6(a).  -
│ │ │ -0020b3a0: 2067 7275 6232 5f70 6167 655f 706f 6973   grub2_page_pois
│ │ │ -0020b3b0: 6f6e 5f61 7267 756d 656e 740a 2020 2d20  on_argument.  - 
│ │ │ -0020b3c0: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ -0020b3d0: 202d 206d 6564 6975 6d5f 636f 6d70 6c65   - medium_comple
│ │ │ -0020b3e0: 7869 7479 0a20 202d 206d 6564 6975 6d5f  xity.  - medium_
│ │ │ -0020b3f0: 7365 7665 7269 7479 0a20 202d 2072 6562  severity.  - reb
│ │ │ -0020b400: 6f6f 745f 7265 7175 6972 6564 0a20 202d  oot_required.  -
│ │ │ -0020b410: 2072 6573 7472 6963 745f 7374 7261 7465   restrict_strate
│ │ │ -0020b420: 6779 0a3c 2f63 6f64 653e 3c2f 7072 653e  gy.
│ │ │ +0020ab10: 5265 6d65 6469 6174 696f 6e20 416e 7369 Remediation Ansi │ │ │ +0020ab20: 626c 6520 736e 6970 7065 7420 e287 b23c ble snippet ...< │ │ │ +0020ab30: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
Co │ │ │ -0020ad00: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disrup │ │ │ -0020ad30: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -0020ad40: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strateg │ │ │ -0020ad80: 793a 3c2f 7468 3e3c 7464 3e72 6573 7472 y:restr │ │ │ -0020ad90: 6963 743c 2f74 643e 3c2f 7472 3e3c 2f74 ict
│ │ │ +0020abd0: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 < │ │ │ +0020ac20: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr> │ │ │ +0020ac50: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:medium
Dis │ │ │ +0020abe0: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:true
Stra │ │ │ +0020ac30: 7465 6779 3a3c 2f74 683e 3c74 643e 7265 tegy:re │ │ │ +0020ac40: 7374 7269 6374 3c2f 7464 3e3c 2f74 723e strict
- name: Gathe
│ │ │ +0020ac70: 7220 7468 6520 7061 636b 6167 6520 6661  r the package fa
│ │ │ +0020ac80: 6374 730a 2020 7061 636b 6167 655f 6661  cts.  package_fa
│ │ │ +0020ac90: 6374 733a 0a20 2020 206d 616e 6167 6572  cts:.    manager
│ │ │ +0020aca0: 3a20 6175 746f 0a20 2074 6167 733a 0a20  : auto.  tags:. 
│ │ │ +0020acb0: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +0020acc0: 4d2d 3628 6129 0a20 202d 2067 7275 6232  M-6(a).  - grub2
│ │ │ +0020acd0: 5f70 6167 655f 706f 6973 6f6e 5f61 7267  _page_poison_arg
│ │ │ +0020ace0: 756d 656e 740a 2020 2d20 6c6f 775f 6469  ument.  - low_di
│ │ │ +0020acf0: 7372 7570 7469 6f6e 0a20 202d 206d 6564  sruption.  - med
│ │ │ +0020ad00: 6975 6d5f 636f 6d70 6c65 7869 7479 0a20  ium_complexity. 
│ │ │ +0020ad10: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ +0020ad20: 7479 0a20 202d 2072 6562 6f6f 745f 7265  ty.  - reboot_re
│ │ │ +0020ad30: 7175 6972 6564 0a20 202d 2072 6573 7472  quired.  - restr
│ │ │ +0020ad40: 6963 745f 7374 7261 7465 6779 0a0a 2d20  ict_strategy..- 
│ │ │ +0020ad50: 6e61 6d65 3a20 4368 6563 6b20 6966 2070  name: Check if p
│ │ │ +0020ad60: 6167 655f 706f 6973 6f6e 2061 7267 756d  age_poison argum
│ │ │ +0020ad70: 656e 7420 6973 2061 6c72 6561 6479 2070  ent is already p
│ │ │ +0020ad80: 7265 7365 6e74 2069 6e20 2f65 7463 2f64  resent in /etc/d
│ │ │ +0020ad90: 6566 6175 6c74 2f67 7275 620a 2020 616e  efault/grub.  an
│ │ │ +0020ada0: 7369 626c 652e 6275 696c 7469 6e2e 736c  sible.builtin.sl
│ │ │ +0020adb0: 7572 703a 0a20 2020 2073 7263 3a20 2f65  urp:.    src: /e
│ │ │ +0020adc0: 7463 2f64 6566 6175 6c74 2f67 7275 620a  tc/default/grub.
│ │ │ +0020add0: 2020 7265 6769 7374 6572 3a20 6574 635f    register: etc_
│ │ │ +0020ade0: 6465 6661 756c 745f 6772 7562 0a20 2077  default_grub.  w
│ │ │ +0020adf0: 6865 6e3a 0a20 202d 2027 226b 6572 6e65  hen:.  - '"kerne
│ │ │ +0020ae00: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ +0020ae10: 6374 732e 7061 636b 6167 6573 270a 2020  cts.packages'.  
│ │ │ +0020ae20: 2d20 2722 6772 7562 322d 636f 6d6d 6f6e  - '"grub2-common
│ │ │ +0020ae30: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +0020ae40: 7473 2e70 6163 6b61 6765 7327 0a20 2074  ts.packages'.  t
│ │ │ +0020ae50: 6167 733a 0a20 202d 204e 4953 542d 3830  ags:.  - NIST-80
│ │ │ +0020ae60: 302d 3533 2d43 4d2d 3628 6129 0a20 202d  0-53-CM-6(a).  -
│ │ │ +0020ae70: 2067 7275 6232 5f70 6167 655f 706f 6973   grub2_page_pois
│ │ │ +0020ae80: 6f6e 5f61 7267 756d 656e 740a 2020 2d20  on_argument.  - 
│ │ │ +0020ae90: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ +0020aea0: 202d 206d 6564 6975 6d5f 636f 6d70 6c65   - medium_comple
│ │ │ +0020aeb0: 7869 7479 0a20 202d 206d 6564 6975 6d5f  xity.  - medium_
│ │ │ +0020aec0: 7365 7665 7269 7479 0a20 202d 2072 6562  severity.  - reb
│ │ │ +0020aed0: 6f6f 745f 7265 7175 6972 6564 0a20 202d  oot_required.  -
│ │ │ +0020aee0: 2072 6573 7472 6963 745f 7374 7261 7465   restrict_strate
│ │ │ +0020aef0: 6779 0a0a 2d20 6e61 6d65 3a20 4368 6563  gy..- name: Chec
│ │ │ +0020af00: 6b20 6966 2070 6167 655f 706f 6973 6f6e  k if page_poison
│ │ │ +0020af10: 2061 7267 756d 656e 7420 6973 2061 6c72   argument is alr
│ │ │ +0020af20: 6561 6479 2070 7265 7365 6e74 0a20 2061  eady present.  a
│ │ │ +0020af30: 6e73 6962 6c65 2e62 7569 6c74 696e 2e63  nsible.builtin.c
│ │ │ +0020af40: 6f6d 6d61 6e64 3a20 2f73 6269 6e2f 6772  ommand: /sbin/gr
│ │ │ +0020af50: 7562 6279 202d 2d69 6e66 6f3d 414c 4c0a  ubby --info=ALL.
│ │ │ +0020af60: 2020 7265 6769 7374 6572 3a20 6772 7562    register: grub
│ │ │ +0020af70: 6279 5f69 6e66 6f0a 2020 6368 6563 6b5f  by_info.  check_
│ │ │ +0020af80: 6d6f 6465 3a20 6661 6c73 650a 2020 6368  mode: false.  ch
│ │ │ +0020af90: 616e 6765 645f 7768 656e 3a20 6661 6c73  anged_when: fals
│ │ │ +0020afa0: 650a 2020 6661 696c 6564 5f77 6865 6e3a  e.  failed_when:
│ │ │ +0020afb0: 2066 616c 7365 0a20 2077 6865 6e3a 0a20   false.  when:. 
│ │ │ +0020afc0: 202d 2027 226b 6572 6e65 6c22 2069 6e20   - '"kernel" in 
│ │ │ +0020afd0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +0020afe0: 636b 6167 6573 270a 2020 2d20 2722 6772  ckages'.  - '"gr
│ │ │ +0020aff0: 7562 322d 636f 6d6d 6f6e 2220 696e 2061  ub2-common" in a
│ │ │ +0020b000: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +0020b010: 6b61 6765 7327 0a20 2074 6167 733a 0a20  kages'.  tags:. 
│ │ │ +0020b020: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +0020b030: 4d2d 3628 6129 0a20 202d 2067 7275 6232  M-6(a).  - grub2
│ │ │ +0020b040: 5f70 6167 655f 706f 6973 6f6e 5f61 7267  _page_poison_arg
│ │ │ +0020b050: 756d 656e 740a 2020 2d20 6c6f 775f 6469  ument.  - low_di
│ │ │ +0020b060: 7372 7570 7469 6f6e 0a20 202d 206d 6564  sruption.  - med
│ │ │ +0020b070: 6975 6d5f 636f 6d70 6c65 7869 7479 0a20  ium_complexity. 
│ │ │ +0020b080: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ +0020b090: 7479 0a20 202d 2072 6562 6f6f 745f 7265  ty.  - reboot_re
│ │ │ +0020b0a0: 7175 6972 6564 0a20 202d 2072 6573 7472  quired.  - restr
│ │ │ +0020b0b0: 6963 745f 7374 7261 7465 6779 0a0a 2d20  ict_strategy..- 
│ │ │ +0020b0c0: 6e61 6d65 3a20 5570 6461 7465 2067 7275  name: Update gru
│ │ │ +0020b0d0: 6220 6465 6661 756c 7473 2061 6e64 2074  b defaults and t
│ │ │ +0020b0e0: 6865 2062 6f6f 746c 6f61 6465 7220 6d65  he bootloader me
│ │ │ +0020b0f0: 6e75 0a20 2061 6e73 6962 6c65 2e62 7569  nu.  ansible.bui
│ │ │ +0020b100: 6c74 696e 2e63 6f6d 6d61 6e64 3a20 2f73  ltin.command: /s
│ │ │ +0020b110: 6269 6e2f 6772 7562 6279 202d 2d75 7064  bin/grubby --upd
│ │ │ +0020b120: 6174 652d 6b65 726e 656c 3d41 4c4c 202d  ate-kernel=ALL -
│ │ │ +0020b130: 2d61 7267 733d 2270 6167 655f 706f 6973  -args="page_pois
│ │ │ +0020b140: 6f6e 3d31 220a 2020 7768 656e 3a0a 2020  on=1".  when:.  
│ │ │ +0020b150: 2d20 2722 6b65 726e 656c 2220 696e 2061  - '"kernel" in a
│ │ │ +0020b160: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +0020b170: 6b61 6765 7327 0a20 202d 2027 2267 7275  kages'.  - '"gru
│ │ │ +0020b180: 6232 2d63 6f6d 6d6f 6e22 2069 6e20 616e  b2-common" in an
│ │ │ +0020b190: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +0020b1a0: 6167 6573 270a 2020 2d20 2867 7275 6262  ages'.  - (grubb
│ │ │ +0020b1b0: 795f 696e 666f 2e73 7464 6f75 7420 6973  y_info.stdout is
│ │ │ +0020b1c0: 206e 6f74 2073 6561 7263 6828 2770 6167   not search('pag
│ │ │ +0020b1d0: 655f 706f 6973 6f6e 3d31 2729 2920 6f72  e_poison=1')) or
│ │ │ +0020b1e0: 2028 2865 7463 5f64 6566 6175 6c74 5f67   ((etc_default_g
│ │ │ +0020b1f0: 7275 625b 2763 6f6e 7465 6e74 275d 0a20  rub['content']. 
│ │ │ +0020b200: 2020 207c 2062 3634 6465 636f 6465 2920     | b64decode) 
│ │ │ +0020b210: 6973 206e 6f74 2073 6561 7263 6828 2770  is not search('p
│ │ │ +0020b220: 6167 655f 706f 6973 6f6e 3d31 2729 290a  age_poison=1')).
│ │ │ +0020b230: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ +0020b240: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ +0020b250: 2020 2d20 6772 7562 325f 7061 6765 5f70    - grub2_page_p
│ │ │ +0020b260: 6f69 736f 6e5f 6172 6775 6d65 6e74 0a20  oison_argument. 
│ │ │ +0020b270: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ +0020b280: 6e0a 2020 2d20 6d65 6469 756d 5f63 6f6d  n.  - medium_com
│ │ │ +0020b290: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ +0020b2a0: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ +0020b2b0: 7265 626f 6f74 5f72 6571 7569 7265 640a  reboot_required.
│ │ │ +0020b2c0: 2020 2d20 7265 7374 7269 6374 5f73 7472    - restrict_str
│ │ │ +0020b2d0: 6174 6567 790a 3c2f 636f 6465 3e3c 2f70  ategy.

Remediatio │ │ │ +0020b390: 6e20 4f53 4275 696c 6420 426c 7565 7072 n OSBuild Bluepr │ │ │ +0020b3a0: 696e 7420 736e 6970 7065 7420 e287 b23c int snippet ...< │ │ │ +0020b3b0: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
[customization
│ │ │ +0020b400: 732e 6b65 726e 656c 5d0a 6170 7065 6e64  s.kernel].append
│ │ │ +0020b410: 203d 2022 7061 6765 5f70 6f69 736f 6e3d   = "page_poison=
│ │ │ +0020b420: 3122 0a3c 2f63 6f64 653e 3c2f 7072 653e  1".
│ │ │ 0020b430: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
R │ │ │ -0020c460: 656d 6564 6961 7469 6f6e 204f 5342 7569 emediation OSBui │ │ │ -0020c470: 6c64 2042 6c75 6570 7269 6e74 2073 6e69 ld Blueprint sni │ │ │ -0020c480: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -0020c490: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -0020c4c0: 3c70 7265 3e3c 636f 6465 3e5b 6375 7374
[cust
│ │ │ -0020c4d0: 6f6d 697a 6174 696f 6e73 2e6b 6572 6e65  omizations.kerne
│ │ │ -0020c4e0: 6c5d 0a61 7070 656e 6420 3d20 2273 6c75  l].append = "slu
│ │ │ -0020c4f0: 625f 6465 6275 673d 3c61 6262 7220 7469  b_debug=FZP".
Remediati │ │ │ -0020c620: 6f6e 2041 6e73 6962 6c65 2073 6e69 7070 on Ansible snipp │ │ │ -0020c630: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ -0020c6b0: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ -0020c6c0: 7479 3a3c 2f74 683e 3c74 643e 6d65 6469 ty:medi │ │ │ -0020c6d0: 756d 3c2f 7464 3e3c 2f74 723e 3c74 723e um │ │ │ -0020c6e0: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c Disruption:< │ │ │ -0020c6f0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low │ │ │ -0020c700: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 Reb │ │ │ -0020c710: 6f6f 743a 3c2f 7468 3e3c 7464 3e74 7275 oot:tru │ │ │ -0020c720: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e< │ │ │ -0020c730: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:restrict< │ │ │ -0020c760: 7072 653e 3c63 6f64 653e 2d20 6e61 6d65 pre>- name │ │ │ -0020c770: 3a20 4761 7468 6572 2074 6865 2070 6163 : Gather the pac │ │ │ -0020c780: 6b61 6765 2066 6163 7473 0a20 2070 6163 kage facts. pac │ │ │ -0020c790: 6b61 6765 5f66 6163 7473 3a0a 2020 2020 kage_facts:. │ │ │ -0020c7a0: 6d61 6e61 6765 723a 2061 7574 6f0a 2020 manager: auto. │ │ │ -0020c7b0: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38 tags:. - NIST-8 │ │ │ -0020c7c0: 3030 2d35 332d 434d 2d36 2861 290a 2020 00-53-CM-6(a). │ │ │ -0020c7d0: 2d20 6772 7562 325f 736c 7562 5f64 6562 - grub2_slub_deb │ │ │ -0020c7e0: 7567 5f61 7267 756d 656e 740a 2020 2d20 ug_argument. - │ │ │ -0020c7f0: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20 low_disruption. │ │ │ -0020c800: 202d 206d 6564 6975 6d5f 636f 6d70 6c65 - medium_comple │ │ │ -0020c810: 7869 7479 0a20 202d 206d 6564 6975 6d5f xity. - medium_ │ │ │ -0020c820: 7365 7665 7269 7479 0a20 202d 2072 6562 severity. - reb │ │ │ -0020c830: 6f6f 745f 7265 7175 6972 6564 0a20 202d oot_required. - │ │ │ -0020c840: 2072 6573 7472 6963 745f 7374 7261 7465 restrict_strate │ │ │ -0020c850: 6779 0a2d 206e 616d 653a 2058 4343 4446 gy.- name: XCCDF │ │ │ -0020c860: 2056 616c 7565 2076 6172 5f73 6c75 625f Value var_slub_ │ │ │ -0020c870: 6465 6275 675f 6f70 7469 6f6e 7320 2320 debug_options # │ │ │ -0020c880: 7072 6f6d 6f74 6520 746f 2076 6172 6961 promote to varia │ │ │ -0020c890: 626c 650a 2020 7365 745f 6661 6374 3a0a ble. set_fact:. │ │ │ -0020c8a0: 2020 2020 7661 725f 736c 7562 5f64 6562 var_slub_deb │ │ │ -0020c8b0: 7567 5f6f 7074 696f 6e73 3a20 2121 7374 ug_options: !!st │ │ │ -0020c8c0: 7220 3c61 6262 7220 7469 746c 653d 2266 r FZP. │ │ │ -0020c930: 2020 7461 6773 3a0a 2020 2020 2d20 616c tags:. - al │ │ │ -0020c940: 7761 7973 0a0a 2d20 6e61 6d65 3a20 4368 ways..- name: Ch │ │ │ -0020c950: 6563 6b20 6966 2073 6c75 625f 6465 6275 eck if slub_debu │ │ │ -0020c960: 6720 6172 6775 6d65 6e74 2069 7320 616c g argument is al │ │ │ -0020c970: 7265 6164 7920 7072 6573 656e 7420 696e ready present in │ │ │ -0020c980: 202f 6574 632f 6465 6661 756c 742f 6772 /etc/default/gr │ │ │ -0020c990: 7562 0a20 2061 6e73 6962 6c65 2e62 7569 ub. ansible.bui │ │ │ -0020c9a0: 6c74 696e 2e73 6c75 7270 3a0a 2020 2020 ltin.slurp:. │ │ │ -0020c9b0: 7372 633a 202f 6574 632f 6465 6661 756c src: /etc/defaul │ │ │ -0020c9c0: 742f 6772 7562 0a20 2072 6567 6973 7465 t/grub. registe │ │ │ -0020c9d0: 723a 2065 7463 5f64 6566 6175 6c74 5f67 r: etc_default_g │ │ │ -0020c9e0: 7275 620a 2020 7768 656e 3a0a 2020 2d20 rub. when:. - │ │ │ -0020c9f0: 2722 6b65 726e 656c 2220 696e 2061 6e73 '"kernel" in ans │ │ │ -0020ca00: 6962 6c65 5f66 6163 7473 2e70 6163 6b61 ible_facts.packa │ │ │ -0020ca10: 6765 7327 0a20 202d 2027 2267 7275 6232 ges'. - '"grub2 │ │ │ -0020ca20: 2d63 6f6d 6d6f 6e22 2069 6e20 616e 7369 -common" in ansi │ │ │ -0020ca30: 626c 655f 6661 6374 732e 7061 636b 6167 ble_facts.packag │ │ │ -0020ca40: 6573 270a 2020 7461 6773 3a0a 2020 2d20 es'. tags:. - │ │ │ -0020ca50: 4e49 5354 2d38 3030 2d35 332d 434d 2d36 NIST-800-53-CM-6 │ │ │ -0020ca60: 2861 290a 2020 2d20 6772 7562 325f 736c (a). - grub2_sl │ │ │ -0020ca70: 7562 5f64 6562 7567 5f61 7267 756d 656e ub_debug_argumen │ │ │ -0020ca80: 740a 2020 2d20 6c6f 775f 6469 7372 7570 t. - low_disrup │ │ │ -0020ca90: 7469 6f6e 0a20 202d 206d 6564 6975 6d5f tion. - medium_ │ │ │ -0020caa0: 636f 6d70 6c65 7869 7479 0a20 202d 206d complexity. - m │ │ │ -0020cab0: 6564 6975 6d5f 7365 7665 7269 7479 0a20 edium_severity. │ │ │ -0020cac0: 202d 2072 6562 6f6f 745f 7265 7175 6972 - reboot_requir │ │ │ -0020cad0: 6564 0a20 202d 2072 6573 7472 6963 745f ed. - restrict_ │ │ │ -0020cae0: 7374 7261 7465 6779 0a0a 2d20 6e61 6d65 strategy..- name │ │ │ -0020caf0: 3a20 4368 6563 6b20 6966 2073 6c75 625f : Check if slub_ │ │ │ -0020cb00: 6465 6275 6720 6172 6775 6d65 6e74 2069 debug argument i │ │ │ -0020cb10: 7320 616c 7265 6164 7920 7072 6573 656e s already presen │ │ │ -0020cb20: 740a 2020 616e 7369 626c 652e 6275 696c t. ansible.buil │ │ │ -0020cb30: 7469 6e2e 636f 6d6d 616e 643a 202f 7362 tin.command: /sb │ │ │ -0020cb40: 696e 2f67 7275 6262 7920 2d2d 696e 666f in/grubby --info │ │ │ -0020cb50: 3d41 4c4c 0a20 2072 6567 6973 7465 723a =ALL. register: │ │ │ -0020cb60: 2067 7275 6262 795f 696e 666f 0a20 2063 grubby_info. c │ │ │ -0020cb70: 6865 636b 5f6d 6f64 653a 2066 616c 7365 heck_mode: false │ │ │ -0020cb80: 0a20 2063 6861 6e67 6564 5f77 6865 6e3a . changed_when: │ │ │ -0020cb90: 2066 616c 7365 0a20 2066 6169 6c65 645f false. failed_ │ │ │ -0020cba0: 7768 656e 3a20 6661 6c73 650a 2020 7768 when: false. wh │ │ │ -0020cbb0: 656e 3a0a 2020 2d20 2722 6b65 726e 656c en:. - '"kernel │ │ │ -0020cbc0: 2220 696e 2061 6e73 6962 6c65 5f66 6163 " in ansible_fac │ │ │ -0020cbd0: 7473 2e70 6163 6b61 6765 7327 0a20 202d ts.packages'. - │ │ │ -0020cbe0: 2027 2267 7275 6232 2d63 6f6d 6d6f 6e22 '"grub2-common" │ │ │ -0020cbf0: 2069 6e20 616e 7369 626c 655f 6661 6374 in ansible_fact │ │ │ -0020cc00: 732e 7061 636b 6167 6573 270a 2020 7461 s.packages'. ta │ │ │ -0020cc10: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030 gs:. - NIST-800 │ │ │ -0020cc20: 2d35 332d 434d 2d36 2861 290a 2020 2d20 -53-CM-6(a). - │ │ │ -0020cc30: 6772 7562 325f 736c 7562 5f64 6562 7567 grub2_slub_debug │ │ │ -0020cc40: 5f61 7267 756d 656e 740a 2020 2d20 6c6f _argument. - lo │ │ │ -0020cc50: 775f 6469 7372 7570 7469 6f6e 0a20 202d w_disruption. - │ │ │ -0020cc60: 206d 6564 6975 6d5f 636f 6d70 6c65 7869 medium_complexi │ │ │ -0020cc70: 7479 0a20 202d 206d 6564 6975 6d5f 7365 ty. - medium_se │ │ │ -0020cc80: 7665 7269 7479 0a20 202d 2072 6562 6f6f verity. - reboo │ │ │ -0020cc90: 745f 7265 7175 6972 6564 0a20 202d 2072 t_required. - r │ │ │ -0020cca0: 6573 7472 6963 745f 7374 7261 7465 6779 estrict_strategy │ │ │ -0020ccb0: 0a0a 2d20 6e61 6d65 3a20 5570 6461 7465 ..- name: Update │ │ │ -0020ccc0: 2067 7275 6220 6465 6661 756c 7473 2061 grub defaults a │ │ │ -0020ccd0: 6e64 2074 6865 2062 6f6f 746c 6f61 6465 nd the bootloade │ │ │ -0020cce0: 7220 6d65 6e75 0a20 2061 6e73 6962 6c65 r menu. ansible │ │ │ -0020ccf0: 2e62 7569 6c74 696e 2e63 6f6d 6d61 6e64 .builtin.command │ │ │ -0020cd00: 3a20 2f73 6269 6e2f 6772 7562 6279 202d : /sbin/grubby - │ │ │ -0020cd10: 2d75 7064 6174 652d 6b65 726e 656c 3d41 -update-kernel=A │ │ │ -0020cd20: 4c4c 202d 2d61 7267 733d 2273 6c75 625f LL --args="slub_ │ │ │ -0020cd30: 6465 6275 673d 7b7b 0a20 2020 2076 6172 debug={{. var │ │ │ -0020cd40: 5f73 6c75 625f 6465 6275 675f 6f70 7469 _slub_debug_opti │ │ │ -0020cd50: 6f6e 7320 7d7d 220a 2020 7768 656e 3a0a ons }}". when:. │ │ │ -0020cd60: 2020 2d20 2722 6b65 726e 656c 2220 696e - '"kernel" in │ │ │ -0020cd70: 2061 6e73 6962 6c65 5f66 6163 7473 2e70 ansible_facts.p │ │ │ -0020cd80: 6163 6b61 6765 7327 0a20 202d 2027 2267 ackages'. - '"g │ │ │ -0020cd90: 7275 6232 2d63 6f6d 6d6f 6e22 2069 6e20 rub2-common" in │ │ │ -0020cda0: 616e 7369 626c 655f 6661 6374 732e 7061 ansible_facts.pa │ │ │ -0020cdb0: 636b 6167 6573 270a 2020 2d20 2867 7275 ckages'. - (gru │ │ │ -0020cdc0: 6262 795f 696e 666f 2e73 7464 6f75 7420 bby_info.stdout │ │ │ -0020cdd0: 6973 206e 6f74 2073 6561 7263 6828 2773 is not search('s │ │ │ -0020cde0: 6c75 625f 6465 6275 673d 2720 7e20 7661 lub_debug=' ~ va │ │ │ -0020cdf0: 725f 736c 7562 5f64 6562 7567 5f6f 7074 r_slub_debug_opt │ │ │ -0020ce00: 696f 6e73 2929 206f 720a 2020 2020 2828 ions)) or. (( │ │ │ -0020ce10: 6574 635f 6465 6661 756c 745f 6772 7562 etc_default_grub │ │ │ -0020ce20: 5b27 636f 6e74 656e 7427 5d20 7c20 6236 ['content'] | b6 │ │ │ -0020ce30: 3464 6563 6f64 6529 2069 7320 6e6f 7420 4decode) is not │ │ │ -0020ce40: 7365 6172 6368 2827 736c 7562 5f64 6562 search('slub_deb │ │ │ -0020ce50: 7567 3d27 207e 2076 6172 5f73 6c75 625f ug=' ~ var_slub_ │ │ │ -0020ce60: 6465 6275 675f 6f70 7469 6f6e 7329 290a debug_options)). │ │ │ -0020ce70: 2020 7461 6773 3a0a 2020 2d20 4e49 5354 tags:. - NIST │ │ │ -0020ce80: 2d38 3030 2d35 332d 434d 2d36 2861 290a -800-53-CM-6(a). │ │ │ -0020ce90: 2020 2d20 6772 7562 325f 736c 7562 5f64 - grub2_slub_d │ │ │ -0020cea0: 6562 7567 5f61 7267 756d 656e 740a 2020 ebug_argument. │ │ │ -0020ceb0: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e - low_disruption │ │ │ -0020cec0: 0a20 202d 206d 6564 6975 6d5f 636f 6d70 . - medium_comp │ │ │ -0020ced0: 6c65 7869 7479 0a20 202d 206d 6564 6975 lexity. - mediu │ │ │ -0020cee0: 6d5f 7365 7665 7269 7479 0a20 202d 2072 m_severity. - r │ │ │ -0020cef0: 6562 6f6f 745f 7265 7175 6972 6564 0a20 eboot_required. │ │ │ -0020cf00: 202d 2072 6573 7472 6963 745f 7374 7261 - restrict_stra │ │ │ -0020cf10: 7465 6779 0a3c 2f63 6f64 653e 3c2f 7072 tegy.
│ │ │ +0020c510: 3c74 643e 6d65 6469 756d 3c2f 7464 3e3c < │ │ │ +0020c520: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ +0020c5a0: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
- name: Gather
│ │ │ +0020c5c0: 2074 6865 2070 6163 6b61 6765 2066 6163   the package fac
│ │ │ +0020c5d0: 7473 0a20 2070 6163 6b61 6765 5f66 6163  ts.  package_fac
│ │ │ +0020c5e0: 7473 3a0a 2020 2020 6d61 6e61 6765 723a  ts:.    manager:
│ │ │ +0020c5f0: 2061 7574 6f0a 2020 7461 6773 3a0a 2020   auto.  tags:.  
│ │ │ +0020c600: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +0020c610: 2d36 2861 290a 2020 2d20 6772 7562 325f  -6(a).  - grub2_
│ │ │ +0020c620: 736c 7562 5f64 6562 7567 5f61 7267 756d  slub_debug_argum
│ │ │ +0020c630: 656e 740a 2020 2d20 6c6f 775f 6469 7372  ent.  - low_disr
│ │ │ +0020c640: 7570 7469 6f6e 0a20 202d 206d 6564 6975  uption.  - mediu
│ │ │ +0020c650: 6d5f 636f 6d70 6c65 7869 7479 0a20 202d  m_complexity.  -
│ │ │ +0020c660: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ +0020c670: 0a20 202d 2072 6562 6f6f 745f 7265 7175  .  - reboot_requ
│ │ │ +0020c680: 6972 6564 0a20 202d 2072 6573 7472 6963  ired.  - restric
│ │ │ +0020c690: 745f 7374 7261 7465 6779 0a2d 206e 616d  t_strategy.- nam
│ │ │ +0020c6a0: 653a 2058 4343 4446 2056 616c 7565 2076  e: XCCDF Value v
│ │ │ +0020c6b0: 6172 5f73 6c75 625f 6465 6275 675f 6f70  ar_slub_debug_op
│ │ │ +0020c6c0: 7469 6f6e 7320 2320 7072 6f6d 6f74 6520  tions # promote 
│ │ │ +0020c6d0: 746f 2076 6172 6961 626c 650a 2020 7365  to variable.  se
│ │ │ +0020c6e0: 745f 6661 6374 3a0a 2020 2020 7661 725f  t_fact:.    var_
│ │ │ +0020c6f0: 736c 7562 5f64 6562 7567 5f6f 7074 696f  slub_debug_optio
│ │ │ +0020c700: 6e73 3a20 2121 7374 7220 3c61 6262 7220  ns: !!str FZP
│ │ │ +0020c770: 3c2f 6162 6272 3e0a 2020 7461 6773 3a0a  .  tags:.
│ │ │ +0020c780: 2020 2020 2d20 616c 7761 7973 0a0a 2d20      - always..- 
│ │ │ +0020c790: 6e61 6d65 3a20 4368 6563 6b20 6966 2073  name: Check if s
│ │ │ +0020c7a0: 6c75 625f 6465 6275 6720 6172 6775 6d65  lub_debug argume
│ │ │ +0020c7b0: 6e74 2069 7320 616c 7265 6164 7920 7072  nt is already pr
│ │ │ +0020c7c0: 6573 656e 7420 696e 202f 6574 632f 6465  esent in /etc/de
│ │ │ +0020c7d0: 6661 756c 742f 6772 7562 0a20 2061 6e73  fault/grub.  ans
│ │ │ +0020c7e0: 6962 6c65 2e62 7569 6c74 696e 2e73 6c75  ible.builtin.slu
│ │ │ +0020c7f0: 7270 3a0a 2020 2020 7372 633a 202f 6574  rp:.    src: /et
│ │ │ +0020c800: 632f 6465 6661 756c 742f 6772 7562 0a20  c/default/grub. 
│ │ │ +0020c810: 2072 6567 6973 7465 723a 2065 7463 5f64   register: etc_d
│ │ │ +0020c820: 6566 6175 6c74 5f67 7275 620a 2020 7768  efault_grub.  wh
│ │ │ +0020c830: 656e 3a0a 2020 2d20 2722 6b65 726e 656c  en:.  - '"kernel
│ │ │ +0020c840: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +0020c850: 7473 2e70 6163 6b61 6765 7327 0a20 202d  ts.packages'.  -
│ │ │ +0020c860: 2027 2267 7275 6232 2d63 6f6d 6d6f 6e22   '"grub2-common"
│ │ │ +0020c870: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +0020c880: 732e 7061 636b 6167 6573 270a 2020 7461  s.packages'.  ta
│ │ │ +0020c890: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030  gs:.  - NIST-800
│ │ │ +0020c8a0: 2d35 332d 434d 2d36 2861 290a 2020 2d20  -53-CM-6(a).  - 
│ │ │ +0020c8b0: 6772 7562 325f 736c 7562 5f64 6562 7567  grub2_slub_debug
│ │ │ +0020c8c0: 5f61 7267 756d 656e 740a 2020 2d20 6c6f  _argument.  - lo
│ │ │ +0020c8d0: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ +0020c8e0: 206d 6564 6975 6d5f 636f 6d70 6c65 7869   medium_complexi
│ │ │ +0020c8f0: 7479 0a20 202d 206d 6564 6975 6d5f 7365  ty.  - medium_se
│ │ │ +0020c900: 7665 7269 7479 0a20 202d 2072 6562 6f6f  verity.  - reboo
│ │ │ +0020c910: 745f 7265 7175 6972 6564 0a20 202d 2072  t_required.  - r
│ │ │ +0020c920: 6573 7472 6963 745f 7374 7261 7465 6779  estrict_strategy
│ │ │ +0020c930: 0a0a 2d20 6e61 6d65 3a20 4368 6563 6b20  ..- name: Check 
│ │ │ +0020c940: 6966 2073 6c75 625f 6465 6275 6720 6172  if slub_debug ar
│ │ │ +0020c950: 6775 6d65 6e74 2069 7320 616c 7265 6164  gument is alread
│ │ │ +0020c960: 7920 7072 6573 656e 740a 2020 616e 7369  y present.  ansi
│ │ │ +0020c970: 626c 652e 6275 696c 7469 6e2e 636f 6d6d  ble.builtin.comm
│ │ │ +0020c980: 616e 643a 202f 7362 696e 2f67 7275 6262  and: /sbin/grubb
│ │ │ +0020c990: 7920 2d2d 696e 666f 3d41 4c4c 0a20 2072  y --info=ALL.  r
│ │ │ +0020c9a0: 6567 6973 7465 723a 2067 7275 6262 795f  egister: grubby_
│ │ │ +0020c9b0: 696e 666f 0a20 2063 6865 636b 5f6d 6f64  info.  check_mod
│ │ │ +0020c9c0: 653a 2066 616c 7365 0a20 2063 6861 6e67  e: false.  chang
│ │ │ +0020c9d0: 6564 5f77 6865 6e3a 2066 616c 7365 0a20  ed_when: false. 
│ │ │ +0020c9e0: 2066 6169 6c65 645f 7768 656e 3a20 6661   failed_when: fa
│ │ │ +0020c9f0: 6c73 650a 2020 7768 656e 3a0a 2020 2d20  lse.  when:.  - 
│ │ │ +0020ca00: 2722 6b65 726e 656c 2220 696e 2061 6e73  '"kernel" in ans
│ │ │ +0020ca10: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +0020ca20: 6765 7327 0a20 202d 2027 2267 7275 6232  ges'.  - '"grub2
│ │ │ +0020ca30: 2d63 6f6d 6d6f 6e22 2069 6e20 616e 7369  -common" in ansi
│ │ │ +0020ca40: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +0020ca50: 6573 270a 2020 7461 6773 3a0a 2020 2d20  es'.  tags:.  - 
│ │ │ +0020ca60: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ +0020ca70: 2861 290a 2020 2d20 6772 7562 325f 736c  (a).  - grub2_sl
│ │ │ +0020ca80: 7562 5f64 6562 7567 5f61 7267 756d 656e  ub_debug_argumen
│ │ │ +0020ca90: 740a 2020 2d20 6c6f 775f 6469 7372 7570  t.  - low_disrup
│ │ │ +0020caa0: 7469 6f6e 0a20 202d 206d 6564 6975 6d5f  tion.  - medium_
│ │ │ +0020cab0: 636f 6d70 6c65 7869 7479 0a20 202d 206d  complexity.  - m
│ │ │ +0020cac0: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ +0020cad0: 202d 2072 6562 6f6f 745f 7265 7175 6972   - reboot_requir
│ │ │ +0020cae0: 6564 0a20 202d 2072 6573 7472 6963 745f  ed.  - restrict_
│ │ │ +0020caf0: 7374 7261 7465 6779 0a0a 2d20 6e61 6d65  strategy..- name
│ │ │ +0020cb00: 3a20 5570 6461 7465 2067 7275 6220 6465  : Update grub de
│ │ │ +0020cb10: 6661 756c 7473 2061 6e64 2074 6865 2062  faults and the b
│ │ │ +0020cb20: 6f6f 746c 6f61 6465 7220 6d65 6e75 0a20  ootloader menu. 
│ │ │ +0020cb30: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ +0020cb40: 2e63 6f6d 6d61 6e64 3a20 2f73 6269 6e2f  .command: /sbin/
│ │ │ +0020cb50: 6772 7562 6279 202d 2d75 7064 6174 652d  grubby --update-
│ │ │ +0020cb60: 6b65 726e 656c 3d41 4c4c 202d 2d61 7267  kernel=ALL --arg
│ │ │ +0020cb70: 733d 2273 6c75 625f 6465 6275 673d 7b7b  s="slub_debug={{
│ │ │ +0020cb80: 0a20 2020 2076 6172 5f73 6c75 625f 6465  .    var_slub_de
│ │ │ +0020cb90: 6275 675f 6f70 7469 6f6e 7320 7d7d 220a  bug_options }}".
│ │ │ +0020cba0: 2020 7768 656e 3a0a 2020 2d20 2722 6b65    when:.  - '"ke
│ │ │ +0020cbb0: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ +0020cbc0: 5f66 6163 7473 2e70 6163 6b61 6765 7327  _facts.packages'
│ │ │ +0020cbd0: 0a20 202d 2027 2267 7275 6232 2d63 6f6d  .  - '"grub2-com
│ │ │ +0020cbe0: 6d6f 6e22 2069 6e20 616e 7369 626c 655f  mon" in ansible_
│ │ │ +0020cbf0: 6661 6374 732e 7061 636b 6167 6573 270a  facts.packages'.
│ │ │ +0020cc00: 2020 2d20 2867 7275 6262 795f 696e 666f    - (grubby_info
│ │ │ +0020cc10: 2e73 7464 6f75 7420 6973 206e 6f74 2073  .stdout is not s
│ │ │ +0020cc20: 6561 7263 6828 2773 6c75 625f 6465 6275  earch('slub_debu
│ │ │ +0020cc30: 673d 2720 7e20 7661 725f 736c 7562 5f64  g=' ~ var_slub_d
│ │ │ +0020cc40: 6562 7567 5f6f 7074 696f 6e73 2929 206f  ebug_options)) o
│ │ │ +0020cc50: 720a 2020 2020 2828 6574 635f 6465 6661  r.    ((etc_defa
│ │ │ +0020cc60: 756c 745f 6772 7562 5b27 636f 6e74 656e  ult_grub['conten
│ │ │ +0020cc70: 7427 5d20 7c20 6236 3464 6563 6f64 6529  t'] | b64decode)
│ │ │ +0020cc80: 2069 7320 6e6f 7420 7365 6172 6368 2827   is not search('
│ │ │ +0020cc90: 736c 7562 5f64 6562 7567 3d27 207e 2076  slub_debug=' ~ v
│ │ │ +0020cca0: 6172 5f73 6c75 625f 6465 6275 675f 6f70  ar_slub_debug_op
│ │ │ +0020ccb0: 7469 6f6e 7329 290a 2020 7461 6773 3a0a  tions)).  tags:.
│ │ │ +0020ccc0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +0020ccd0: 434d 2d36 2861 290a 2020 2d20 6772 7562  CM-6(a).  - grub
│ │ │ +0020cce0: 325f 736c 7562 5f64 6562 7567 5f61 7267  2_slub_debug_arg
│ │ │ +0020ccf0: 756d 656e 740a 2020 2d20 6c6f 775f 6469  ument.  - low_di
│ │ │ +0020cd00: 7372 7570 7469 6f6e 0a20 202d 206d 6564  sruption.  - med
│ │ │ +0020cd10: 6975 6d5f 636f 6d70 6c65 7869 7479 0a20  ium_complexity. 
│ │ │ +0020cd20: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ +0020cd30: 7479 0a20 202d 2072 6562 6f6f 745f 7265  ty.  - reboot_re
│ │ │ +0020cd40: 7175 6972 6564 0a20 202d 2072 6573 7472  quired.  - restr
│ │ │ +0020cd50: 6963 745f 7374 7261 7465 6779 0a3c 2f63  ict_strategy.
│ │ │ +0020cd70: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ +0020ce10: 6564 6961 7469 6f6e 204f 5342 7569 6c64 ediation OSBuild │ │ │ +0020ce20: 2042 6c75 6570 7269 6e74 2073 6e69 7070 Blueprint snipp │ │ │ +0020ce30: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...

[custom │ │ │ +0020ce80: 697a 6174 696f 6e73 2e6b 6572 6e65 6c5d izations.kernel] │ │ │ +0020ce90: 0a61 7070 656e 6420 3d20 2273 6c75 625f .append = "slub_ │ │ │ +0020cea0: 6465 6275 673d 3c61 6262 7220 7469 746c debug=FZP".Re │ │ │ -002361c0: 6d65 6469 6174 696f 6e20 416e 6163 6f6e mediation Anacon │ │ │ -002361d0: 6461 2073 6e69 7070 6574 20e2 87b2 3c2f da snippet ...

│ │ │ +0020c500: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:medium
Disr │ │ │ +0020c530: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +0020c540: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:true
Strat │ │ │ +0020c580: 6567 793a 3c2f 7468 3e3c 7464 3e72 6573 egy:res │ │ │ +0020c590: 7472 6963 743c 2f74 643e 3c2f 7472 3e3c trict
│ │ │ -00236270: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
.
│ │ │ -00236310: 0a70 6163 6b61 6765 202d 2d72 656d 6f76  .package --remov
│ │ │ -00236320: 653d 6468 6370 0a3c 2f63 6f64 653e 3c2f  e=dhcp.Remediati
│ │ │ -002363e0: 6f6e 2050 7570 7065 7420 736e 6970 7065  on Puppet snippe
│ │ │ -002363f0: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469  t ...
< │ │ │ -00236470: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>
│ │ │ -002364b0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 disable
│ │ │ -00236260: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -00236290: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -002362a0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -002362e0: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ -002362f0: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Complexit │ │ │ -00236480: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low
│ │ │ -002364a0: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption:low
Reboot: │ │ │ -002364d0: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false
│ │ │ -002364f0: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:
│ │ │ -00236520: 3c63 6f64 653e 0a69 6e63 6c75 6465 2072  .include r
│ │ │ -00236530: 656d 6f76 655f 6468 6370 0a0a 636c 6173  emove_dhcp..clas
│ │ │ -00236540: 7320 7265 6d6f 7665 5f64 6863 7020 7b0a  s remove_dhcp {.
│ │ │ -00236550: 2020 7061 636b 6167 6520 7b20 2764 6863    package { 'dhc
│ │ │ -00236560: 7027 3a0a 2020 2020 656e 7375 7265 203d  p':.    ensure =
│ │ │ -00236570: 2667 743b 2027 7075 7267 6564 272c 0a20  > 'purged',. 
│ │ │ -00236580: 207d 0a7d 0a3c 2f63 6f64 653e 3c2f 7072   }.}.
Remediation │ │ │ -00236640: 2041 6e73 6962 6c65 2073 6e69 7070 6574 Ansible snippet │ │ │ -00236650: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Complexity │ │ │ -002366e0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ -00236700: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ -00236710: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -00236720: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ -00236730: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ -00236750: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:disable
<
│ │ │ -00236780: 636f 6465 3e2d 206e 616d 653a 2027 556e  code>- name: 'Un
│ │ │ -00236790: 696e 7374 616c 6c20 4448 4350 2053 6572  install DHCP Ser
│ │ │ -002367a0: 7665 7220 5061 636b 6167 653a 2045 6e73  ver Package: Ens
│ │ │ -002367b0: 7572 6520 6468 6370 2069 7320 7265 6d6f  ure dhcp is remo
│ │ │ -002367c0: 7665 6427 0a20 2061 6e73 6962 6c65 2e62  ved'.  ansible.b
│ │ │ -002367d0: 7569 6c74 696e 2e70 6163 6b61 6765 3a0a  uiltin.package:.
│ │ │ -002367e0: 2020 2020 6e61 6d65 3a20 6468 6370 0a20      name: dhcp. 
│ │ │ -002367f0: 2020 2073 7461 7465 3a20 6162 7365 6e74     state: absent
│ │ │ -00236800: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ -00236810: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ -00236820: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -00236830: 2d43 4d2d 3728 6129 0a20 202d 204e 4953  -CM-7(a).  - NIS
│ │ │ -00236840: 542d 3830 302d 3533 2d43 4d2d 3728 6229  T-800-53-CM-7(b)
│ │ │ -00236850: 0a20 202d 2050 4349 2d44 5353 7634 2d32  .  - PCI-DSSv4-2
│ │ │ -00236860: 2e32 0a20 202d 2050 4349 2d44 5353 7634  .2.  - PCI-DSSv4
│ │ │ -00236870: 2d32 2e32 2e34 0a20 202d 2064 6973 6162  -2.2.4.  - disab
│ │ │ -00236880: 6c65 5f73 7472 6174 6567 790a 2020 2d20  le_strategy.  - 
│ │ │ -00236890: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ -002368a0: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ -002368b0: 6e0a 2020 2d20 6d65 6469 756d 5f73 6576  n.  - medium_sev
│ │ │ -002368c0: 6572 6974 790a 2020 2d20 6e6f 5f72 6562  erity.  - no_reb
│ │ │ -002368d0: 6f6f 745f 6e65 6564 6564 0a20 202d 2070  oot_needed.  - p
│ │ │ -002368e0: 6163 6b61 6765 5f64 6863 705f 7265 6d6f  ackage_dhcp_remo
│ │ │ -002368f0: 7665 640a 3c2f 636f 6465 3e3c 2f70 7265  ved.
Remediation │ │ │ -002369b0: 5368 656c 6c20 7363 7269 7074 20e2 87b2 Shell script ... │ │ │ -002369c0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity: │ │ │ -00236a90: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -00236aa0: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
.# CAUTION: Thi
│ │ │ -00236b00: 7320 7265 6d65 6469 6174 696f 6e20 7363  s remediation sc
│ │ │ -00236b10: 7269 7074 2077 696c 6c20 7265 6d6f 7665  ript will remove
│ │ │ -00236b20: 2064 6863 700a 2320 6672 6f6d 2074 6865   dhcp.# from the
│ │ │ -00236b30: 2073 7973 7465 6d2c 2061 6e64 206d 6179   system, and may
│ │ │ -00236b40: 2072 656d 6f76 6520 616e 7920 7061 636b   remove any pack
│ │ │ -00236b50: 6167 6573 0a23 2074 6861 7420 6465 7065  ages.# that depe
│ │ │ -00236b60: 6e64 206f 6e20 6468 6370 2e20 4578 6563  nd on dhcp. Exec
│ │ │ -00236b70: 7574 6520 7468 6973 0a23 2072 656d 6564  ute this.# remed
│ │ │ -00236b80: 6961 7469 6f6e 2041 4654 4552 2074 6573  iation AFTER tes
│ │ │ -00236b90: 7469 6e67 206f 6e20 6120 6e6f 6e2d 7072  ting on a non-pr
│ │ │ -00236ba0: 6f64 7563 7469 6f6e 0a23 2073 7973 7465  oduction.# syste
│ │ │ -00236bb0: 6d21 0a0a 0a69 6620 7270 6d20 2d71 202d  m!...if rpm -q -
│ │ │ -00236bc0: 2d71 7569 6574 2022 6468 6370 2220 3b20  -quiet "dhcp" ; 
│ │ │ -00236bd0: 7468 656e 0a64 6e66 2072 656d 6f76 6520  then.dnf remove 
│ │ │ -00236be0: 2d79 202d 2d6e 6f61 7574 6f72 656d 6f76  -y --noautoremov
│ │ │ -00236bf0: 6520 2264 6863 7022 0a66 690a 3c2f 636f  e "dhcp".fi.
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
< │ │ │ +00236270: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +00236280: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ +002362d0: 3c74 723e 3c74 683e 5374 7261 7465 6779
- 
│ │ │ +00236310: 6e61 6d65 3a20 2755 6e69 6e73 7461 6c6c  name: 'Uninstall
│ │ │ +00236320: 2044 4843 5020 5365 7276 6572 2050 6163   DHCP Server Pac
│ │ │ +00236330: 6b61 6765 3a20 456e 7375 7265 2064 6863  kage: Ensure dhc
│ │ │ +00236340: 7020 6973 2072 656d 6f76 6564 270a 2020  p is removed'.  
│ │ │ +00236350: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ +00236360: 7061 636b 6167 653a 0a20 2020 206e 616d  package:.    nam
│ │ │ +00236370: 653a 2064 6863 700a 2020 2020 7374 6174  e: dhcp.    stat
│ │ │ +00236380: 653a 2061 6273 656e 740a 2020 7461 6773  e: absent.  tags
│ │ │ +00236390: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ +002363a0: 332d 434d 2d36 2861 290a 2020 2d20 4e49  3-CM-6(a).  - NI
│ │ │ +002363b0: 5354 2d38 3030 2d35 332d 434d 2d37 2861  ST-800-53-CM-7(a
│ │ │ +002363c0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +002363d0: 332d 434d 2d37 2862 290a 2020 2d20 5043  3-CM-7(b).  - PC
│ │ │ +002363e0: 492d 4453 5376 342d 322e 320a 2020 2d20  I-DSSv4-2.2.  - 
│ │ │ +002363f0: 5043 492d 4453 5376 342d 322e 322e 340a  PCI-DSSv4-2.2.4.
│ │ │ +00236400: 2020 2d20 6469 7361 626c 655f 7374 7261    - disable_stra
│ │ │ +00236410: 7465 6779 0a20 202d 206c 6f77 5f63 6f6d  tegy.  - low_com
│ │ │ +00236420: 706c 6578 6974 790a 2020 2d20 6c6f 775f  plexity.  - low_
│ │ │ +00236430: 6469 7372 7570 7469 6f6e 0a20 202d 206d  disruption.  - m
│ │ │ +00236440: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ +00236450: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ +00236460: 6465 640a 2020 2d20 7061 636b 6167 655f  ded.  - package_
│ │ │ +00236470: 6468 6370 5f72 656d 6f76 6564 0a3c 2f63  dhcp_removed.
│ │ │ +00236490: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ +00236530: 6564 6961 7469 6f6e 2050 7570 7065 7420 ediation Puppet │ │ │ +00236540: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ +00236550: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
C │ │ │ +00236260: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ +00236290: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ +002362a0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ +002362e0: 3a3c 2f74 683e 3c74 643e 6469 7361 626c :disabl │ │ │ +002362f0: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
Com │ │ │ +002365d0: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ +00236600: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ +00236620: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +00236630: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ +00236650: 2f74 683e 3c74 643e 6469 7361 626c 653c /th>disable< │ │ │ +00236660: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
.inc
│ │ │ +00236680: 6c75 6465 2072 656d 6f76 655f 6468 6370  lude remove_dhcp
│ │ │ +00236690: 0a0a 636c 6173 7320 7265 6d6f 7665 5f64  ..class remove_d
│ │ │ +002366a0: 6863 7020 7b0a 2020 7061 636b 6167 6520  hcp {.  package 
│ │ │ +002366b0: 7b20 2764 6863 7027 3a0a 2020 2020 656e  { 'dhcp':.    en
│ │ │ +002366c0: 7375 7265 203d 2667 743b 2027 7075 7267  sure => 'purg
│ │ │ +002366d0: 6564 272c 0a20 207d 0a7d 0a3c 2f63 6f64  ed',.  }.}.
Remed │ │ │ +00236790: 6961 7469 6f6e 2053 6865 6c6c 2073 6372 iation Shell scr │ │ │ +002367a0: 6970 7420 e287 b23c 2f61 3e3c 6272 3e3c ipt ...
< │ │ │ +002367b0: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +002367c0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +002367d0: 7365 2220 6964 3d22 6964 3730 3822 3e3c se" id="id708">< │ │ │ +002367e0: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +002367f0: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +00236800: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +00236810: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +00236820: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Complex │ │ │ +00236830: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ +00236840: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Disruption:lowReboo │ │ │ +00236880: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ +00236890: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ +002368b0: 3c74 643e 6469 7361 626c 653c 2f74 643e disable │ │ │ +002368c0: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072 .# CAUTI │ │ │ +002368e0: 4f4e 3a20 5468 6973 2072 656d 6564 6961 ON: This remedia │ │ │ +002368f0: 7469 6f6e 2073 6372 6970 7420 7769 6c6c tion script will │ │ │ +00236900: 2072 656d 6f76 6520 6468 6370 0a23 2066 remove dhcp.# f │ │ │ +00236910: 726f 6d20 7468 6520 7379 7374 656d 2c20 rom the system, │ │ │ +00236920: 616e 6420 6d61 7920 7265 6d6f 7665 2061 and may remove a │ │ │ +00236930: 6e79 2070 6163 6b61 6765 730a 2320 7468 ny packages.# th │ │ │ +00236940: 6174 2064 6570 656e 6420 6f6e 2064 6863 at depend on dhc │ │ │ +00236950: 702e 2045 7865 6375 7465 2074 6869 730a p. Execute this. │ │ │ +00236960: 2320 7265 6d65 6469 6174 696f 6e20 4146 # remediation AF │ │ │ +00236970: 5445 5220 7465 7374 696e 6720 6f6e 2061 TER testing on a │ │ │ +00236980: 206e 6f6e 2d70 726f 6475 6374 696f 6e0a non-production. │ │ │ +00236990: 2320 7379 7374 656d 210a 0a0a 6966 2072 # system!...if r │ │ │ +002369a0: 706d 202d 7120 2d2d 7175 6965 7420 2264 pm -q --quiet "d │ │ │ +002369b0: 6863 7022 203b 2074 6865 6e0a 646e 6620 hcp" ; then.dnf │ │ │ +002369c0: 7265 6d6f 7665 202d 7920 2d2d 6e6f 6175 remove -y --noau │ │ │ +002369d0: 746f 7265 6d6f 7665 2022 6468 6370 220a toremove "dhcp". │ │ │ +002369e0: 6669 0a3c 2f63 6f64 653e 3c2f 7072 653e fi. │ │ │ +002369f0: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation A │ │ │ +00236aa0: 6e61 636f 6e64 6120 736e 6970 7065 7420 naconda snippet │ │ │ +00236ab0: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
Complexity: │ │ │ +00236b40: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ +00236b60: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:low< │ │ │ +00236b80: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:falseSt │ │ │ +00236bb0: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ +00236bc0: 6469 7361 626c 653c 2f74 643e 3c2f 7472 disable
..package --
│ │ │ +00236bf0: 7265 6d6f 7665 3d64 6863 700a 3c2f 636f  remove=dhcp.
< │ │ │ 00236c10: 2f64 6976 3e3c 2f74 643e 3c2f 7472 3e3c /div>< │ │ │ 00236c20: 2f74 626f 6479 3e3c 2f74 6162 6c65 3e3c /tbody>< │ │ │ 00236c30: 2f74 643e 3c2f 7472 3e3c 7472 2064 6174 /td>Remediatio │ │ │ -0023ade0: 6e20 416e 6163 6f6e 6461 2073 6e69 7070 n Anaconda snipp │ │ │ -0023adf0: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ -0023ae70: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ -0023ae80: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -0023ae90: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ -0023aed0: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -0023aee0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ -0023af00: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ -0023af10: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
..package
│ │ │ -0023af30: 202d 2d72 656d 6f76 653d 7365 6e64 6d61   --remove=sendma
│ │ │ -0023af40: 696c 0a3c 2f63 6f64 653e 3c2f 7072 653e  il.
│ │ │ -0023af50: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation P │ │ │ -0023b000: 7570 7065 7420 736e 6970 7065 7420 e287 uppet snippet .. │ │ │ -0023b010: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ -0023b090: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -0023b0b0: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -0023b100: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>< │ │ │ -0023b130: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
.include remov
│ │ │ -0023b150: 655f 7365 6e64 6d61 696c 0a0a 636c 6173  e_sendmail..clas
│ │ │ -0023b160: 7320 7265 6d6f 7665 5f73 656e 646d 6169  s remove_sendmai
│ │ │ -0023b170: 6c20 7b0a 2020 7061 636b 6167 6520 7b20  l {.  package { 
│ │ │ -0023b180: 2773 656e 646d 6169 6c27 3a0a 2020 2020  'sendmail':.    
│ │ │ -0023b190: 656e 7375 7265 203d 2667 743b 2027 7075  ensure => 'pu
│ │ │ -0023b1a0: 7267 6564 272c 0a20 207d 0a7d 0a3c 2f63  rged',.  }.}.
│ │ │ -0023b1c0: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ -0023b260: 6564 6961 7469 6f6e 2041 6e73 6962 6c65 ediation Ansible │ │ │ -0023b270: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -0023b280: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low
Disr │ │ │ -0023b0c0: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -0023b0d0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ -0023b110: 7465 6779 3a3c 2f74 683e 3c74 643e 6469 tegy:di │ │ │ -0023b120: 7361 626c 653c 2f74 643e 3c2f 7472 3e3c sable
low< │ │ │ -0023b320: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ -0023b370: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
- n
│ │ │ -0023b3b0: 616d 653a 2047 6174 6865 7220 7468 6520  ame: Gather the 
│ │ │ -0023b3c0: 7061 636b 6167 6520 6661 6374 730a 2020  package facts.  
│ │ │ -0023b3d0: 7061 636b 6167 655f 6661 6374 733a 0a20  package_facts:. 
│ │ │ -0023b3e0: 2020 206d 616e 6167 6572 3a20 6175 746f     manager: auto
│ │ │ -0023b3f0: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ -0023b400: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ -0023b410: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -0023b420: 2d43 4d2d 3728 6129 0a20 202d 204e 4953  -CM-7(a).  - NIS
│ │ │ -0023b430: 542d 3830 302d 3533 2d43 4d2d 3728 6229  T-800-53-CM-7(b)
│ │ │ -0023b440: 0a20 202d 2064 6973 6162 6c65 5f73 7472  .  - disable_str
│ │ │ -0023b450: 6174 6567 790a 2020 2d20 6c6f 775f 636f  ategy.  - low_co
│ │ │ -0023b460: 6d70 6c65 7869 7479 0a20 202d 206c 6f77  mplexity.  - low
│ │ │ -0023b470: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ -0023b480: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ -0023b490: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ -0023b4a0: 6564 6564 0a20 202d 2070 6163 6b61 6765  eded.  - package
│ │ │ -0023b4b0: 5f73 656e 646d 6169 6c5f 7265 6d6f 7665  _sendmail_remove
│ │ │ -0023b4c0: 640a 0a2d 206e 616d 653a 2027 556e 696e  d..- name: 'Unin
│ │ │ -0023b4d0: 7374 616c 6c20 5365 6e64 6d61 696c 2050  stall Sendmail P
│ │ │ -0023b4e0: 6163 6b61 6765 3a20 456e 7375 7265 2073  ackage: Ensure s
│ │ │ -0023b4f0: 656e 646d 6169 6c20 6973 2072 656d 6f76  endmail is remov
│ │ │ -0023b500: 6564 270a 2020 616e 7369 626c 652e 6275  ed'.  ansible.bu
│ │ │ -0023b510: 696c 7469 6e2e 7061 636b 6167 653a 0a20  iltin.package:. 
│ │ │ -0023b520: 2020 206e 616d 653a 2073 656e 646d 6169     name: sendmai
│ │ │ -0023b530: 6c0a 2020 2020 7374 6174 653a 2061 6273  l.    state: abs
│ │ │ -0023b540: 656e 740a 2020 7768 656e 3a20 2722 6b65  ent.  when: '"ke
│ │ │ -0023b550: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ -0023b560: 5f66 6163 7473 2e70 6163 6b61 6765 7327  _facts.packages'
│ │ │ -0023b570: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ -0023b580: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ -0023b590: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -0023b5a0: 2d43 4d2d 3728 6129 0a20 202d 204e 4953  -CM-7(a).  - NIS
│ │ │ -0023b5b0: 542d 3830 302d 3533 2d43 4d2d 3728 6229  T-800-53-CM-7(b)
│ │ │ -0023b5c0: 0a20 202d 2064 6973 6162 6c65 5f73 7472  .  - disable_str
│ │ │ -0023b5d0: 6174 6567 790a 2020 2d20 6c6f 775f 636f  ategy.  - low_co
│ │ │ -0023b5e0: 6d70 6c65 7869 7479 0a20 202d 206c 6f77  mplexity.  - low
│ │ │ -0023b5f0: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ -0023b600: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ -0023b610: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ -0023b620: 6564 6564 0a20 202d 2070 6163 6b61 6765  eded.  - package
│ │ │ -0023b630: 5f73 656e 646d 6169 6c5f 7265 6d6f 7665  _sendmail_remove
│ │ │ -0023b640: 640a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  d.
< │ │ │ -0023b650: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Sh │ │ │ -0023b700: 656c 6c20 7363 7269 7074 20e2 87b2 3c2f ell script ...
Co │ │ │ -0023b300: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -0023b330: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ -0023b350: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ -0023b360: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ -0023b380: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ -0023b390: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
│ │ │ -0023b7a0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
#
│ │ │ -0023b840: 2052 656d 6564 6961 7469 6f6e 2069 7320   Remediation is 
│ │ │ -0023b850: 6170 706c 6963 6162 6c65 206f 6e6c 7920  applicable only 
│ │ │ -0023b860: 696e 2063 6572 7461 696e 2070 6c61 7466  in certain platf
│ │ │ -0023b870: 6f72 6d73 0a69 6620 7270 6d20 2d2d 7175  orms.if rpm --qu
│ │ │ -0023b880: 6965 7420 2d71 206b 6572 6e65 6c3b 2074  iet -q kernel; t
│ │ │ -0023b890: 6865 6e0a 0a23 2043 4155 5449 4f4e 3a20  hen..# CAUTION: 
│ │ │ -0023b8a0: 5468 6973 2072 656d 6564 6961 7469 6f6e  This remediation
│ │ │ -0023b8b0: 2073 6372 6970 7420 7769 6c6c 2072 656d   script will rem
│ │ │ -0023b8c0: 6f76 6520 7365 6e64 6d61 696c 0a23 2066  ove sendmail.# f
│ │ │ -0023b8d0: 726f 6d20 7468 6520 7379 7374 656d 2c20  rom the system, 
│ │ │ -0023b8e0: 616e 6420 6d61 7920 7265 6d6f 7665 2061  and may remove a
│ │ │ -0023b8f0: 6e79 2070 6163 6b61 6765 730a 2320 7468  ny packages.# th
│ │ │ -0023b900: 6174 2064 6570 656e 6420 6f6e 2073 656e  at depend on sen
│ │ │ -0023b910: 646d 6169 6c2e 2045 7865 6375 7465 2074  dmail. Execute t
│ │ │ -0023b920: 6869 730a 2320 7265 6d65 6469 6174 696f  his.# remediatio
│ │ │ -0023b930: 6e20 4146 5445 5220 7465 7374 696e 6720  n AFTER testing 
│ │ │ -0023b940: 6f6e 2061 206e 6f6e 2d70 726f 6475 6374  on a non-product
│ │ │ -0023b950: 696f 6e0a 2320 7379 7374 656d 210a 0a0a  ion.# system!...
│ │ │ -0023b960: 6966 2072 706d 202d 7120 2d2d 7175 6965  if rpm -q --quie
│ │ │ -0023b970: 7420 2273 656e 646d 6169 6c22 203b 2074  t "sendmail" ; t
│ │ │ -0023b980: 6865 6e0a 646e 6620 7265 6d6f 7665 202d  hen.dnf remove -
│ │ │ -0023b990: 7920 2d2d 6e6f 6175 746f 7265 6d6f 7665  y --noautoremove
│ │ │ -0023b9a0: 2022 7365 6e64 6d61 696c 220a 6669 0a0a   "sendmail".fi..
│ │ │ -0023b9b0: 656c 7365 0a20 2020 2026 6774 3b26 616d  else.    >&am
│ │ │ -0023b9c0: 703b 3220 6563 686f 2027 5265 6d65 6469  p;2 echo 'Remedi
│ │ │ -0023b9d0: 6174 696f 6e20 6973 206e 6f74 2061 7070  ation is not app
│ │ │ -0023b9e0: 6c69 6361 626c 652c 206e 6f74 6869 6e67  licable, nothing
│ │ │ -0023b9f0: 2077 6173 2064 6f6e 6527 0a66 690a 3c2f   was done'.fi.
< │ │ │ +0023ae70: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>
│ │ │ +0023aeb0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 disable
│ │ │ -0023b790: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -0023b7c0: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -0023b7d0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -0023b810: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ -0023b820: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Complexit │ │ │ +0023ae80: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low
│ │ │ +0023aea0: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption:low
Reboot: │ │ │ +0023aed0: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false
│ │ │ +0023aef0: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:
│ │ │ +0023af20: 3c63 6f64 653e 2d20 6e61 6d65 3a20 4761  - name: Ga
│ │ │ +0023af30: 7468 6572 2074 6865 2070 6163 6b61 6765  ther the package
│ │ │ +0023af40: 2066 6163 7473 0a20 2070 6163 6b61 6765   facts.  package
│ │ │ +0023af50: 5f66 6163 7473 3a0a 2020 2020 6d61 6e61  _facts:.    mana
│ │ │ +0023af60: 6765 723a 2061 7574 6f0a 2020 7461 6773  ger: auto.  tags
│ │ │ +0023af70: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ +0023af80: 332d 434d 2d36 2861 290a 2020 2d20 4e49  3-CM-6(a).  - NI
│ │ │ +0023af90: 5354 2d38 3030 2d35 332d 434d 2d37 2861  ST-800-53-CM-7(a
│ │ │ +0023afa0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +0023afb0: 332d 434d 2d37 2862 290a 2020 2d20 6469  3-CM-7(b).  - di
│ │ │ +0023afc0: 7361 626c 655f 7374 7261 7465 6779 0a20  sable_strategy. 
│ │ │ +0023afd0: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ +0023afe0: 790a 2020 2d20 6c6f 775f 6469 7372 7570  y.  - low_disrup
│ │ │ +0023aff0: 7469 6f6e 0a20 202d 206d 6564 6975 6d5f  tion.  - medium_
│ │ │ +0023b000: 7365 7665 7269 7479 0a20 202d 206e 6f5f  severity.  - no_
│ │ │ +0023b010: 7265 626f 6f74 5f6e 6565 6465 640a 2020  reboot_needed.  
│ │ │ +0023b020: 2d20 7061 636b 6167 655f 7365 6e64 6d61  - package_sendma
│ │ │ +0023b030: 696c 5f72 656d 6f76 6564 0a0a 2d20 6e61  il_removed..- na
│ │ │ +0023b040: 6d65 3a20 2755 6e69 6e73 7461 6c6c 2053  me: 'Uninstall S
│ │ │ +0023b050: 656e 646d 6169 6c20 5061 636b 6167 653a  endmail Package:
│ │ │ +0023b060: 2045 6e73 7572 6520 7365 6e64 6d61 696c   Ensure sendmail
│ │ │ +0023b070: 2069 7320 7265 6d6f 7665 6427 0a20 2061   is removed'.  a
│ │ │ +0023b080: 6e73 6962 6c65 2e62 7569 6c74 696e 2e70  nsible.builtin.p
│ │ │ +0023b090: 6163 6b61 6765 3a0a 2020 2020 6e61 6d65  ackage:.    name
│ │ │ +0023b0a0: 3a20 7365 6e64 6d61 696c 0a20 2020 2073  : sendmail.    s
│ │ │ +0023b0b0: 7461 7465 3a20 6162 7365 6e74 0a20 2077  tate: absent.  w
│ │ │ +0023b0c0: 6865 6e3a 2027 226b 6572 6e65 6c22 2069  hen: '"kernel" i
│ │ │ +0023b0d0: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +0023b0e0: 7061 636b 6167 6573 270a 2020 7461 6773  packages'.  tags
│ │ │ +0023b0f0: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ +0023b100: 332d 434d 2d36 2861 290a 2020 2d20 4e49  3-CM-6(a).  - NI
│ │ │ +0023b110: 5354 2d38 3030 2d35 332d 434d 2d37 2861  ST-800-53-CM-7(a
│ │ │ +0023b120: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +0023b130: 332d 434d 2d37 2862 290a 2020 2d20 6469  3-CM-7(b).  - di
│ │ │ +0023b140: 7361 626c 655f 7374 7261 7465 6779 0a20  sable_strategy. 
│ │ │ +0023b150: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ +0023b160: 790a 2020 2d20 6c6f 775f 6469 7372 7570  y.  - low_disrup
│ │ │ +0023b170: 7469 6f6e 0a20 202d 206d 6564 6975 6d5f  tion.  - medium_
│ │ │ +0023b180: 7365 7665 7269 7479 0a20 202d 206e 6f5f  severity.  - no_
│ │ │ +0023b190: 7265 626f 6f74 5f6e 6565 6465 640a 2020  reboot_needed.  
│ │ │ +0023b1a0: 2d20 7061 636b 6167 655f 7365 6e64 6d61  - package_sendma
│ │ │ +0023b1b0: 696c 5f72 656d 6f76 6564 0a3c 2f63 6f64  il_removed.
Remed │ │ │ +0023b270: 6961 7469 6f6e 2050 7570 7065 7420 736e iation Puppet sn │ │ │ +0023b280: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ +0023b330: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ +0023b350: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ +0023b380: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ +0023b310: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ +0023b320: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ +0023b340: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ +0023b360: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ +0023b370: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:disable
< │ │ │ +0023b3b0: 7072 653e 3c63 6f64 653e 0a69 6e63 6c75 pre>.inclu │ │ │ +0023b3c0: 6465 2072 656d 6f76 655f 7365 6e64 6d61 de remove_sendma │ │ │ +0023b3d0: 696c 0a0a 636c 6173 7320 7265 6d6f 7665 il..class remove │ │ │ +0023b3e0: 5f73 656e 646d 6169 6c20 7b0a 2020 7061 _sendmail {. pa │ │ │ +0023b3f0: 636b 6167 6520 7b20 2773 656e 646d 6169 ckage { 'sendmai │ │ │ +0023b400: 6c27 3a0a 2020 2020 656e 7375 7265 203d l':. ensure = │ │ │ +0023b410: 2667 743b 2027 7075 7267 6564 272c 0a20 > 'purged',. │ │ │ +0023b420: 207d 0a7d 0a3c 2f63 6f64 653e 3c2f 7072 }.}.
Remediation │ │ │ +0023b4e0: 2053 6865 6c6c 2073 6372 6970 7420 e287 Shell script .. │ │ │ +0023b4f0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ +0023b570: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ +0023b590: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ +0023b5e0: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>< │ │ │ +0023b610: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
# Remediation 
│ │ │ +0023b630: 6973 2061 7070 6c69 6361 626c 6520 6f6e  is applicable on
│ │ │ +0023b640: 6c79 2069 6e20 6365 7274 6169 6e20 706c  ly in certain pl
│ │ │ +0023b650: 6174 666f 726d 730a 6966 2072 706d 202d  atforms.if rpm -
│ │ │ +0023b660: 2d71 7569 6574 202d 7120 6b65 726e 656c  -quiet -q kernel
│ │ │ +0023b670: 3b20 7468 656e 0a0a 2320 4341 5554 494f  ; then..# CAUTIO
│ │ │ +0023b680: 4e3a 2054 6869 7320 7265 6d65 6469 6174  N: This remediat
│ │ │ +0023b690: 696f 6e20 7363 7269 7074 2077 696c 6c20  ion script will 
│ │ │ +0023b6a0: 7265 6d6f 7665 2073 656e 646d 6169 6c0a  remove sendmail.
│ │ │ +0023b6b0: 2320 6672 6f6d 2074 6865 2073 7973 7465  # from the syste
│ │ │ +0023b6c0: 6d2c 2061 6e64 206d 6179 2072 656d 6f76  m, and may remov
│ │ │ +0023b6d0: 6520 616e 7920 7061 636b 6167 6573 0a23  e any packages.#
│ │ │ +0023b6e0: 2074 6861 7420 6465 7065 6e64 206f 6e20   that depend on 
│ │ │ +0023b6f0: 7365 6e64 6d61 696c 2e20 4578 6563 7574  sendmail. Execut
│ │ │ +0023b700: 6520 7468 6973 0a23 2072 656d 6564 6961  e this.# remedia
│ │ │ +0023b710: 7469 6f6e 2041 4654 4552 2074 6573 7469  tion AFTER testi
│ │ │ +0023b720: 6e67 206f 6e20 6120 6e6f 6e2d 7072 6f64  ng on a non-prod
│ │ │ +0023b730: 7563 7469 6f6e 0a23 2073 7973 7465 6d21  uction.# system!
│ │ │ +0023b740: 0a0a 0a69 6620 7270 6d20 2d71 202d 2d71  ...if rpm -q --q
│ │ │ +0023b750: 7569 6574 2022 7365 6e64 6d61 696c 2220  uiet "sendmail" 
│ │ │ +0023b760: 3b20 7468 656e 0a64 6e66 2072 656d 6f76  ; then.dnf remov
│ │ │ +0023b770: 6520 2d79 202d 2d6e 6f61 7574 6f72 656d  e -y --noautorem
│ │ │ +0023b780: 6f76 6520 2273 656e 646d 6169 6c22 0a66  ove "sendmail".f
│ │ │ +0023b790: 690a 0a65 6c73 650a 2020 2020 2667 743b  i..else.    >
│ │ │ +0023b7a0: 2661 6d70 3b32 2065 6368 6f20 2752 656d  &2 echo 'Rem
│ │ │ +0023b7b0: 6564 6961 7469 6f6e 2069 7320 6e6f 7420  ediation is not 
│ │ │ +0023b7c0: 6170 706c 6963 6162 6c65 2c20 6e6f 7468  applicable, noth
│ │ │ +0023b7d0: 696e 6720 7761 7320 646f 6e65 270a 6669  ing was done'.fi
│ │ │ +0023b7e0: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation Ana │ │ │ +0023b8a0: 636f 6e64 6120 736e 6970 7065 7420 e287 conda snippet .. │ │ │ +0023b8b0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
low
Disr │ │ │ +0023b5a0: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +0023b5b0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ +0023b5f0: 7465 6779 3a3c 2f74 683e 3c74 643e 6469 tegy:di │ │ │ +0023b600: 7361 626c 653c 2f74 643e 3c2f 7472 3e3c sable
< │ │ │ +0023b930: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ +0023b950: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ +0023b9a0: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>< │ │ │ +0023b9d0: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
..package --re
│ │ │ +0023b9f0: 6d6f 7665 3d73 656e 646d 6169 6c0a 3c2f  move=sendmail.
low
Disr │ │ │ +0023b960: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +0023b970: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ +0023b9b0: 7465 6779 3a3c 2f74 683e 3c74 643e 6469 tegy:di │ │ │ +0023b9c0: 7361 626c 653c 2f74 643e 3c2f 7472 3e3c sable
Reme │ │ │ -0023d6a0: 6469 6174 696f 6e20 4f53 4275 696c 6420 diation OSBuild │ │ │ -0023d6b0: 426c 7565 7072 696e 7420 736e 6970 7065 Blueprint snippe │ │ │ -0023d6c0: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
.[[packa │ │ │ -0023d710: 6765 735d 5d0a 6e61 6d65 203d 2022 6368 ges]].name = "ch │ │ │ -0023d720: 726f 6e79 220a 7665 7273 696f 6e20 3d20 rony".version = │ │ │ -0023d730: 222a 220a 3c2f 636f 6465 3e3c 2f70 7265 "*".
Remediation │ │ │ -0023d7f0: 416e 6163 6f6e 6461 2073 6e69 7070 6574 Anaconda snippet │ │ │ -0023d800: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Complexity │ │ │ -0023d890: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ -0023d8b0: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ -0023d8c0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -0023d8d0: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ -0023d8e0: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ -0023d900: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:enable
.package --a
│ │ │ -0023d940: 6464 3d63 6872 6f6e 790a 3c2f 636f 6465  dd=chrony.
Remedi │ │ │ -0023da00: 6174 696f 6e20 5075 7070 6574 2073 6e69 ation Puppet sni │ │ │ -0023da10: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -0023da20: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -0023da50: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ -0023dac0: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ -0023dae0: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ -0023db10: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy: │ │ │ -0023db30: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
Comple │ │ │ -0023daa0: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ -0023dab0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ -0023daf0: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ -0023db00: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
enable
include │ │ │ -0023db50: 696e 7374 616c 6c5f 6368 726f 6e79 0a0a install_chrony.. │ │ │ -0023db60: 636c 6173 7320 696e 7374 616c 6c5f 6368 class install_ch │ │ │ -0023db70: 726f 6e79 207b 0a20 2070 6163 6b61 6765 rony {. package │ │ │ -0023db80: 207b 2027 6368 726f 6e79 273a 0a20 2020 { 'chrony':. │ │ │ -0023db90: 2065 6e73 7572 6520 3d26 6774 3b20 2769 ensure => 'i │ │ │ -0023dba0: 6e73 7461 6c6c 6564 272c 0a20 207d 0a7d nstalled',. }.} │ │ │ -0023dbb0: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f .Remediation Ans │ │ │ -0023dc70: 6962 6c65 2073 6e69 7070 6574 20e2 87b2 ible snippet ... │ │ │ -0023dc80: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity: │ │ │ -0023dd50: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -0023dd60: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f

│ │ │ -0023ddb0: 2d20 6e61 6d65 3a20 4761 7468 6572 2074  - name: Gather t
│ │ │ -0023ddc0: 6865 2070 6163 6b61 6765 2066 6163 7473  he package facts
│ │ │ -0023ddd0: 0a20 2070 6163 6b61 6765 5f66 6163 7473  .  package_facts
│ │ │ -0023dde0: 3a0a 2020 2020 6d61 6e61 6765 723a 2061  :.    manager: a
│ │ │ -0023ddf0: 7574 6f0a 2020 7461 6773 3a0a 2020 2d20  uto.  tags:.  - 
│ │ │ -0023de00: 5043 492d 4453 532d 5265 712d 3130 2e34  PCI-DSS-Req-10.4
│ │ │ -0023de10: 0a20 202d 2050 4349 2d44 5353 7634 2d31  .  - PCI-DSSv4-1
│ │ │ -0023de20: 302e 360a 2020 2d20 5043 492d 4453 5376  0.6.  - PCI-DSSv
│ │ │ -0023de30: 342d 3130 2e36 2e31 0a20 202d 2065 6e61  4-10.6.1.  - ena
│ │ │ -0023de40: 626c 655f 7374 7261 7465 6779 0a20 202d  ble_strategy.  -
│ │ │ -0023de50: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ -0023de60: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ -0023de70: 6f6e 0a20 202d 206d 6564 6975 6d5f 7365  on.  - medium_se
│ │ │ -0023de80: 7665 7269 7479 0a20 202d 206e 6f5f 7265  verity.  - no_re
│ │ │ -0023de90: 626f 6f74 5f6e 6565 6465 640a 2020 2d20  boot_needed.  - 
│ │ │ -0023dea0: 7061 636b 6167 655f 6368 726f 6e79 5f69  package_chrony_i
│ │ │ -0023deb0: 6e73 7461 6c6c 6564 0a0a 2d20 6e61 6d65  nstalled..- name
│ │ │ -0023dec0: 3a20 456e 7375 7265 2063 6872 6f6e 7920  : Ensure chrony 
│ │ │ -0023ded0: 6973 2069 6e73 7461 6c6c 6564 0a20 2061  is installed.  a
│ │ │ -0023dee0: 6e73 6962 6c65 2e62 7569 6c74 696e 2e70  nsible.builtin.p
│ │ │ -0023def0: 6163 6b61 6765 3a0a 2020 2020 6e61 6d65  ackage:.    name
│ │ │ -0023df00: 3a20 6368 726f 6e79 0a20 2020 2073 7461  : chrony.    sta
│ │ │ -0023df10: 7465 3a20 7072 6573 656e 740a 2020 7768  te: present.  wh
│ │ │ -0023df20: 656e 3a20 2722 6b65 726e 656c 2220 696e  en: '"kernel" in
│ │ │ -0023df30: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -0023df40: 6163 6b61 6765 7327 0a20 2074 6167 733a  ackages'.  tags:
│ │ │ -0023df50: 0a20 202d 2050 4349 2d44 5353 2d52 6571  .  - PCI-DSS-Req
│ │ │ -0023df60: 2d31 302e 340a 2020 2d20 5043 492d 4453  -10.4.  - PCI-DS
│ │ │ -0023df70: 5376 342d 3130 2e36 0a20 202d 2050 4349  Sv4-10.6.  - PCI
│ │ │ -0023df80: 2d44 5353 7634 2d31 302e 362e 310a 2020  -DSSv4-10.6.1.  
│ │ │ -0023df90: 2d20 656e 6162 6c65 5f73 7472 6174 6567  - enable_strateg
│ │ │ -0023dfa0: 790a 2020 2d20 6c6f 775f 636f 6d70 6c65  y.  - low_comple
│ │ │ -0023dfb0: 7869 7479 0a20 202d 206c 6f77 5f64 6973  xity.  - low_dis
│ │ │ -0023dfc0: 7275 7074 696f 6e0a 2020 2d20 6d65 6469  ruption.  - medi
│ │ │ -0023dfd0: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ -0023dfe0: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ -0023dff0: 0a20 202d 2070 6163 6b61 6765 5f63 6872  .  - package_chr
│ │ │ -0023e000: 6f6e 795f 696e 7374 616c 6c65 640a 3c2f  ony_installed.
Re │ │ │ -0023e0c0: 6d65 6469 6174 696f 6e20 5368 656c 6c20 mediation Shell │ │ │ -0023e0d0: 7363 7269 7074 20e2 87b2 3c2f 613e 3c62 script ...
low
Disru │ │ │ -0023dd30: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ -0023dd40: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ -0023dd80: 6567 793a 3c2f 7468 3e3c 7464 3e65 6e61 egy:ena │ │ │ -0023dd90: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Comp │ │ │ -0023e160: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -0023e170: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -0023e190: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ -0023e1b0: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -0023e1c0: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:enable
< │ │ │ -0023e200: 7072 653e 3c63 6f64 653e 2320 5265 6d65 pre># Reme │ │ │ -0023e210: 6469 6174 696f 6e20 6973 2061 7070 6c69 diation is appli │ │ │ -0023e220: 6361 626c 6520 6f6e 6c79 2069 6e20 6365 cable only in ce │ │ │ -0023e230: 7274 6169 6e20 706c 6174 666f 726d 730a rtain platforms. │ │ │ -0023e240: 6966 2072 706d 202d 2d71 7569 6574 202d if rpm --quiet - │ │ │ -0023e250: 7120 6b65 726e 656c 3b20 7468 656e 0a0a q kernel; then.. │ │ │ -0023e260: 6966 2021 2072 706d 202d 7120 2d2d 7175 if ! rpm -q --qu │ │ │ -0023e270: 6965 7420 2263 6872 6f6e 7922 203b 2074 iet "chrony" ; t │ │ │ -0023e280: 6865 6e0a 2020 2020 646e 6620 696e 7374 hen. dnf inst │ │ │ -0023e290: 616c 6c20 2d79 2022 6368 726f 6e79 220a all -y "chrony". │ │ │ -0023e2a0: 6669 0a0a 656c 7365 0a20 2020 2026 6774 fi..else. > │ │ │ -0023e2b0: 3b26 616d 703b 3220 6563 686f 2027 5265 ;&2 echo 'Re │ │ │ -0023e2c0: 6d65 6469 6174 696f 6e20 6973 206e 6f74 mediation is not │ │ │ -0023e2d0: 2061 7070 6c69 6361 626c 652c 206e 6f74 applicable, not │ │ │ -0023e2e0: 6869 6e67 2077 6173 2064 6f6e 6527 0a66 hing was done'.f │ │ │ -0023e2f0: 690a 3c2f 636f 6465 3e3c 2f70 7265 3e3c i.< │ │ │ +0023d6a0: 6469 6174 696f 6e20 416e 7369 626c 6520 diation Ansible │ │ │ +0023d6b0: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ +0023d6c0: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Com │ │ │ +0023d740: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ +0023d770: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ +0023d790: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +0023d7a0: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ +0023d7c0: 2f74 683e 3c74 643e 656e 6162 6c65 3c2f /th>enable
│ │ │ +0023d7e0: 3c70 7265 3e3c 636f 6465 3e2d 206e 616d
- nam
│ │ │ +0023d7f0: 653a 2047 6174 6865 7220 7468 6520 7061  e: Gather the pa
│ │ │ +0023d800: 636b 6167 6520 6661 6374 730a 2020 7061  ckage facts.  pa
│ │ │ +0023d810: 636b 6167 655f 6661 6374 733a 0a20 2020  ckage_facts:.   
│ │ │ +0023d820: 206d 616e 6167 6572 3a20 6175 746f 0a20   manager: auto. 
│ │ │ +0023d830: 2074 6167 733a 0a20 202d 2050 4349 2d44   tags:.  - PCI-D
│ │ │ +0023d840: 5353 2d52 6571 2d31 302e 340a 2020 2d20  SS-Req-10.4.  - 
│ │ │ +0023d850: 5043 492d 4453 5376 342d 3130 2e36 0a20  PCI-DSSv4-10.6. 
│ │ │ +0023d860: 202d 2050 4349 2d44 5353 7634 2d31 302e   - PCI-DSSv4-10.
│ │ │ +0023d870: 362e 310a 2020 2d20 656e 6162 6c65 5f73  6.1.  - enable_s
│ │ │ +0023d880: 7472 6174 6567 790a 2020 2d20 6c6f 775f  trategy.  - low_
│ │ │ +0023d890: 636f 6d70 6c65 7869 7479 0a20 202d 206c  complexity.  - l
│ │ │ +0023d8a0: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ +0023d8b0: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ +0023d8c0: 790a 2020 2d20 6e6f 5f72 6562 6f6f 745f  y.  - no_reboot_
│ │ │ +0023d8d0: 6e65 6564 6564 0a20 202d 2070 6163 6b61  needed.  - packa
│ │ │ +0023d8e0: 6765 5f63 6872 6f6e 795f 696e 7374 616c  ge_chrony_instal
│ │ │ +0023d8f0: 6c65 640a 0a2d 206e 616d 653a 2045 6e73  led..- name: Ens
│ │ │ +0023d900: 7572 6520 6368 726f 6e79 2069 7320 696e  ure chrony is in
│ │ │ +0023d910: 7374 616c 6c65 640a 2020 616e 7369 626c  stalled.  ansibl
│ │ │ +0023d920: 652e 6275 696c 7469 6e2e 7061 636b 6167  e.builtin.packag
│ │ │ +0023d930: 653a 0a20 2020 206e 616d 653a 2063 6872  e:.    name: chr
│ │ │ +0023d940: 6f6e 790a 2020 2020 7374 6174 653a 2070  ony.    state: p
│ │ │ +0023d950: 7265 7365 6e74 0a20 2077 6865 6e3a 2027  resent.  when: '
│ │ │ +0023d960: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ +0023d970: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +0023d980: 6573 270a 2020 7461 6773 3a0a 2020 2d20  es'.  tags:.  - 
│ │ │ +0023d990: 5043 492d 4453 532d 5265 712d 3130 2e34  PCI-DSS-Req-10.4
│ │ │ +0023d9a0: 0a20 202d 2050 4349 2d44 5353 7634 2d31  .  - PCI-DSSv4-1
│ │ │ +0023d9b0: 302e 360a 2020 2d20 5043 492d 4453 5376  0.6.  - PCI-DSSv
│ │ │ +0023d9c0: 342d 3130 2e36 2e31 0a20 202d 2065 6e61  4-10.6.1.  - ena
│ │ │ +0023d9d0: 626c 655f 7374 7261 7465 6779 0a20 202d  ble_strategy.  -
│ │ │ +0023d9e0: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ +0023d9f0: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ +0023da00: 6f6e 0a20 202d 206d 6564 6975 6d5f 7365  on.  - medium_se
│ │ │ +0023da10: 7665 7269 7479 0a20 202d 206e 6f5f 7265  verity.  - no_re
│ │ │ +0023da20: 626f 6f74 5f6e 6565 6465 640a 2020 2d20  boot_needed.  - 
│ │ │ +0023da30: 7061 636b 6167 655f 6368 726f 6e79 5f69  package_chrony_i
│ │ │ +0023da40: 6e73 7461 6c6c 6564 0a3c 2f63 6f64 653e  nstalled.
│ │ │ +0023da50: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ +0023db00: 7469 6f6e 2050 7570 7065 7420 736e 6970 tion Puppet snip │ │ │ +0023db10: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ +0023db20: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +0023db30: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +0023db40: 7365 2220 6964 3d22 6964 3732 3122 3e3c se" id="id721">< │ │ │ +0023db50: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +0023db60: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +0023db70: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +0023db80: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +0023db90: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Complex │ │ │ +0023dba0: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ +0023dbb0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Disruption:lowReboo │ │ │ +0023dbf0: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ +0023dc00: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ +0023dc20: 3c74 643e 656e 6162 6c65 3c2f 7464 3e3c enable< │ │ │ +0023dc30: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
include i
│ │ │ +0023dc50: 6e73 7461 6c6c 5f63 6872 6f6e 790a 0a63  nstall_chrony..c
│ │ │ +0023dc60: 6c61 7373 2069 6e73 7461 6c6c 5f63 6872  lass install_chr
│ │ │ +0023dc70: 6f6e 7920 7b0a 2020 7061 636b 6167 6520  ony {.  package 
│ │ │ +0023dc80: 7b20 2763 6872 6f6e 7927 3a0a 2020 2020  { 'chrony':.    
│ │ │ +0023dc90: 656e 7375 7265 203d 2667 743b 2027 696e  ensure => 'in
│ │ │ +0023dca0: 7374 616c 6c65 6427 2c0a 2020 7d0a 7d0a  stalled',.  }.}.
│ │ │ +0023dcb0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ +0023dd60: 5265 6d65 6469 6174 696f 6e20 4f53 4275 Remediation OSBu │ │ │ +0023dd70: 696c 6420 426c 7565 7072 696e 7420 736e ild Blueprint sn │ │ │ +0023dd80: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
.[[p
│ │ │ +0023ddd0: 6163 6b61 6765 735d 5d0a 6e61 6d65 203d  ackages]].name =
│ │ │ +0023dde0: 2022 6368 726f 6e79 220a 7665 7273 696f   "chrony".versio
│ │ │ +0023ddf0: 6e20 3d20 222a 220a 3c2f 636f 6465 3e3c  n = "*".<
│ │ │ +0023de00: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>
Remediat │ │ │ +0023deb0: 696f 6e20 5368 656c 6c20 7363 7269 7074 ion Shell script │ │ │ +0023dec0: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Complexity │ │ │ +0023df50: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ +0023df70: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ +0023df80: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +0023df90: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ +0023dfa0: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ +0023dfc0: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:enable
# Remediatio
│ │ │ +0023e000: 6e20 6973 2061 7070 6c69 6361 626c 6520  n is applicable 
│ │ │ +0023e010: 6f6e 6c79 2069 6e20 6365 7274 6169 6e20  only in certain 
│ │ │ +0023e020: 706c 6174 666f 726d 730a 6966 2072 706d  platforms.if rpm
│ │ │ +0023e030: 202d 2d71 7569 6574 202d 7120 6b65 726e   --quiet -q kern
│ │ │ +0023e040: 656c 3b20 7468 656e 0a0a 6966 2021 2072  el; then..if ! r
│ │ │ +0023e050: 706d 202d 7120 2d2d 7175 6965 7420 2263  pm -q --quiet "c
│ │ │ +0023e060: 6872 6f6e 7922 203b 2074 6865 6e0a 2020  hrony" ; then.  
│ │ │ +0023e070: 2020 646e 6620 696e 7374 616c 6c20 2d79    dnf install -y
│ │ │ +0023e080: 2022 6368 726f 6e79 220a 6669 0a0a 656c   "chrony".fi..el
│ │ │ +0023e090: 7365 0a20 2020 2026 6774 3b26 616d 703b  se.    >&
│ │ │ +0023e0a0: 3220 6563 686f 2027 5265 6d65 6469 6174  2 echo 'Remediat
│ │ │ +0023e0b0: 696f 6e20 6973 206e 6f74 2061 7070 6c69  ion is not appli
│ │ │ +0023e0c0: 6361 626c 652c 206e 6f74 6869 6e67 2077  cable, nothing w
│ │ │ +0023e0d0: 6173 2064 6f6e 6527 0a66 690a 3c2f 636f  as done'.fi.
< │ │ │ +0023e0f0: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ +0023e100: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ +0023e110: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ +0023e120: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ +0023e130: 6437 3234 2220 7461 6269 6e64 6578 3d22 d724" tabindex=" │ │ │ +0023e140: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ +0023e150: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ +0023e160: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ +0023e170: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ +0023e180: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ +0023e190: 6469 6174 696f 6e20 416e 6163 6f6e 6461 diation Anaconda │ │ │ +0023e1a0: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ +0023e1b0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ +0023e250: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ +0023e2a0: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
Co │ │ │ +0023e230: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +0023e260: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +0023e280: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +0023e290: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +0023e2b0: 3c2f 7468 3e3c 7464 3e65 6e61 626c 653c enable< │ │ │ +0023e2c0: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
.pac
│ │ │ +0023e2e0: 6b61 6765 202d 2d61 6464 3d63 6872 6f6e  kage --add=chron
│ │ │ +0023e2f0: 790a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  y.
< │ │ │ 0023e300: 2f64 6976 3e3c 2f64 6976 3e3c 2f74 643e /div>
│ │ │ 0023e310: 3c2f 7472 3e3c 2f74 626f 6479 3e3c 2f74
< │ │ │ 0023e330: 7472 2064 6174 612d 7474 2d69 643d 2278 tr data-tt-id="x │ │ │ 0023e340: 6363 6466 5f6f 7267 2e73 7367 7072 6f6a ccdf_org.ssgproj │ │ │ 0023e350: 6563 742e 636f 6e74 656e 745f 7275 6c65 ect.content_rule │ │ │ 0023e360: 5f63 6872 6f6e 7964 5f73 7065 6369 6679 _chronyd_specify │ │ │ @@ -149195,214 +149195,214 @@ │ │ │ 00246ca0: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ 00246cb0: 6437 3338 2220 7461 6269 6e64 6578 3d22 d738" tabindex=" │ │ │ 00246cc0: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ 00246cd0: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ 00246ce0: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ 00246cf0: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ 00246d00: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ -00246d10: 6469 6174 696f 6e20 416e 6163 6f6e 6461 diation Anaconda │ │ │ -00246d20: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -00246d30: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ -00246dd0: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ -00246e20: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
..p
│ │ │ -00246e60: 6163 6b61 6765 202d 2d72 656d 6f76 653d  ackage --remove=
│ │ │ -00246e70: 7869 6e65 7464 0a3c 2f63 6f64 653e 3c2f  xinetd.Remediati
│ │ │ -00246f30: 6f6e 2050 7570 7065 7420 736e 6970 7065  on Puppet snippe
│ │ │ -00246f40: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469  t ...
< │ │ │ -00246fc0: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>
│ │ │ -00247000: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 disable
Co │ │ │ -00246db0: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -00246de0: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ -00246e00: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ -00246e10: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ -00246e30: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ -00246e40: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Complexit │ │ │ -00246fd0: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low
│ │ │ -00246ff0: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption:low
Reboot: │ │ │ -00247020: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false
│ │ │ -00247040: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:
│ │ │ -00247070: 3c63 6f64 653e 0a69 6e63 6c75 6465 2072  .include r
│ │ │ -00247080: 656d 6f76 655f 7869 6e65 7464 0a0a 636c  emove_xinetd..cl
│ │ │ -00247090: 6173 7320 7265 6d6f 7665 5f78 696e 6574  ass remove_xinet
│ │ │ -002470a0: 6420 7b0a 2020 7061 636b 6167 6520 7b20  d {.  package { 
│ │ │ -002470b0: 2778 696e 6574 6427 3a0a 2020 2020 656e  'xinetd':.    en
│ │ │ -002470c0: 7375 7265 203d 2667 743b 2027 7075 7267  sure => 'purg
│ │ │ -002470d0: 6564 272c 0a20 207d 0a7d 0a3c 2f63 6f64  ed',.  }.}.
Remed │ │ │ -00247190: 6961 7469 6f6e 2041 6e73 6962 6c65 2073 iation Ansible s │ │ │ -002471a0: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ -00247230: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -00247240: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -00247260: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ -00247280: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -00247290: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ -002472d0: 3c70 7265 3e3c 636f 6465 3e2d 206e 616d
- nam
│ │ │ -002472e0: 653a 2047 6174 6865 7220 7468 6520 7061  e: Gather the pa
│ │ │ -002472f0: 636b 6167 6520 6661 6374 730a 2020 7061  ckage facts.  pa
│ │ │ -00247300: 636b 6167 655f 6661 6374 733a 0a20 2020  ckage_facts:.   
│ │ │ -00247310: 206d 616e 6167 6572 3a20 6175 746f 0a20   manager: auto. 
│ │ │ -00247320: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ -00247330: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ -00247340: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -00247350: 4d2d 3728 6129 0a20 202d 204e 4953 542d  M-7(a).  - NIST-
│ │ │ -00247360: 3830 302d 3533 2d43 4d2d 3728 6229 0a20  800-53-CM-7(b). 
│ │ │ -00247370: 202d 2050 4349 2d44 5353 7634 2d32 2e32   - PCI-DSSv4-2.2
│ │ │ -00247380: 0a20 202d 2050 4349 2d44 5353 7634 2d32  .  - PCI-DSSv4-2
│ │ │ -00247390: 2e32 2e34 0a20 202d 2064 6973 6162 6c65  .2.4.  - disable
│ │ │ -002473a0: 5f73 7472 6174 6567 790a 2020 2d20 6c6f  _strategy.  - lo
│ │ │ -002473b0: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ -002473c0: 206c 6f77 5f64 6973 7275 7074 696f 6e0a   low_disruption.
│ │ │ -002473d0: 2020 2d20 6c6f 775f 7365 7665 7269 7479    - low_severity
│ │ │ -002473e0: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ -002473f0: 6565 6465 640a 2020 2d20 7061 636b 6167  eeded.  - packag
│ │ │ -00247400: 655f 7869 6e65 7464 5f72 656d 6f76 6564  e_xinetd_removed
│ │ │ -00247410: 0a0a 2d20 6e61 6d65 3a20 2755 6e69 6e73  ..- name: 'Unins
│ │ │ -00247420: 7461 6c6c 2078 696e 6574 6420 7061 636b  tall xinetd pack
│ │ │ -00247430: 6167 6520 6966 206e 6f74 2075 7365 6420  age if not used 
│ │ │ -00247440: 6279 206e 6574 776f 726b 2073 6572 7669  by network servi
│ │ │ -00247450: 6365 733a 2045 6e73 7572 6520 7869 6e65  ces: Ensure xine
│ │ │ -00247460: 7464 2069 730a 2020 2020 7265 6d6f 7665  td is.    remove
│ │ │ -00247470: 6427 0a20 2061 6e73 6962 6c65 2e62 7569  d'.  ansible.bui
│ │ │ -00247480: 6c74 696e 2e70 6163 6b61 6765 3a0a 2020  ltin.package:.  
│ │ │ -00247490: 2020 6e61 6d65 3a20 7869 6e65 7464 0a20    name: xinetd. 
│ │ │ -002474a0: 2020 2073 7461 7465 3a20 6162 7365 6e74     state: absent
│ │ │ -002474b0: 0a20 2077 6865 6e3a 2027 226b 6572 6e65  .  when: '"kerne
│ │ │ -002474c0: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ -002474d0: 6374 732e 7061 636b 6167 6573 270a 2020  cts.packages'.  
│ │ │ -002474e0: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38  tags:.  - NIST-8
│ │ │ -002474f0: 3030 2d35 332d 434d 2d36 2861 290a 2020  00-53-CM-6(a).  
│ │ │ -00247500: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -00247510: 2d37 2861 290a 2020 2d20 4e49 5354 2d38  -7(a).  - NIST-8
│ │ │ -00247520: 3030 2d35 332d 434d 2d37 2862 290a 2020  00-53-CM-7(b).  
│ │ │ -00247530: 2d20 5043 492d 4453 5376 342d 322e 320a  - PCI-DSSv4-2.2.
│ │ │ -00247540: 2020 2d20 5043 492d 4453 5376 342d 322e    - PCI-DSSv4-2.
│ │ │ -00247550: 322e 340a 2020 2d20 6469 7361 626c 655f  2.4.  - disable_
│ │ │ -00247560: 7374 7261 7465 6779 0a20 202d 206c 6f77  strategy.  - low
│ │ │ -00247570: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ -00247580: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ -00247590: 202d 206c 6f77 5f73 6576 6572 6974 790a   - low_severity.
│ │ │ -002475a0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ -002475b0: 6564 6564 0a20 202d 2070 6163 6b61 6765  eded.  - package
│ │ │ -002475c0: 5f78 696e 6574 645f 7265 6d6f 7665 640a  _xinetd_removed.
│ │ │ -002475d0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ -00247680: 5265 6d65 6469 6174 696f 6e20 5368 656c Remediation Shel │ │ │ -00247690: 6c20 7363 7269 7074 20e2 87b2 3c2f 613e l script ... │ │ │ -002476a0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ -00247740: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ -00247790: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
# R
│ │ │ -002477d0: 656d 6564 6961 7469 6f6e 2069 7320 6170  emediation is ap
│ │ │ -002477e0: 706c 6963 6162 6c65 206f 6e6c 7920 696e  plicable only in
│ │ │ -002477f0: 2063 6572 7461 696e 2070 6c61 7466 6f72   certain platfor
│ │ │ -00247800: 6d73 0a69 6620 7270 6d20 2d2d 7175 6965  ms.if rpm --quie
│ │ │ -00247810: 7420 2d71 206b 6572 6e65 6c3b 2074 6865  t -q kernel; the
│ │ │ -00247820: 6e0a 0a23 2043 4155 5449 4f4e 3a20 5468  n..# CAUTION: Th
│ │ │ -00247830: 6973 2072 656d 6564 6961 7469 6f6e 2073  is remediation s
│ │ │ -00247840: 6372 6970 7420 7769 6c6c 2072 656d 6f76  cript will remov
│ │ │ -00247850: 6520 7869 6e65 7464 0a23 2066 726f 6d20  e xinetd.# from 
│ │ │ -00247860: 7468 6520 7379 7374 656d 2c20 616e 6420  the system, and 
│ │ │ -00247870: 6d61 7920 7265 6d6f 7665 2061 6e79 2070  may remove any p
│ │ │ -00247880: 6163 6b61 6765 730a 2320 7468 6174 2064  ackages.# that d
│ │ │ -00247890: 6570 656e 6420 6f6e 2078 696e 6574 642e  epend on xinetd.
│ │ │ -002478a0: 2045 7865 6375 7465 2074 6869 730a 2320   Execute this.# 
│ │ │ -002478b0: 7265 6d65 6469 6174 696f 6e20 4146 5445  remediation AFTE
│ │ │ -002478c0: 5220 7465 7374 696e 6720 6f6e 2061 206e  R testing on a n
│ │ │ -002478d0: 6f6e 2d70 726f 6475 6374 696f 6e0a 2320  on-production.# 
│ │ │ -002478e0: 7379 7374 656d 210a 0a0a 6966 2072 706d  system!...if rpm
│ │ │ -002478f0: 202d 7120 2d2d 7175 6965 7420 2278 696e   -q --quiet "xin
│ │ │ -00247900: 6574 6422 203b 2074 6865 6e0a 646e 6620  etd" ; then.dnf 
│ │ │ -00247910: 7265 6d6f 7665 202d 7920 2d2d 6e6f 6175  remove -y --noau
│ │ │ -00247920: 746f 7265 6d6f 7665 2022 7869 6e65 7464  toremove "xinetd
│ │ │ -00247930: 220a 6669 0a0a 656c 7365 0a20 2020 2026  ".fi..else.    &
│ │ │ -00247940: 6774 3b26 616d 703b 3220 6563 686f 2027  gt;&2 echo '
│ │ │ -00247950: 5265 6d65 6469 6174 696f 6e20 6973 206e  Remediation is n
│ │ │ -00247960: 6f74 2061 7070 6c69 6361 626c 652c 206e  ot applicable, n
│ │ │ -00247970: 6f74 6869 6e67 2077 6173 2064 6f6e 6527  othing was done'
│ │ │ -00247980: 0a66 690a 3c2f 636f 6465 3e3c 2f70 7265  .fi.
< │ │ │ +00246d30: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Co │ │ │ -00247720: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -00247750: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ -00247770: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ -00247780: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ -002477a0: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ -002477b0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Com │ │ │ +00246db0: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ +00246de0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ +00246e00: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +00246e10: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ +00246e30: 2f74 683e 3c74 643e 6469 7361 626c 653c /th>disable< │ │ │ +00246e40: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
- na
│ │ │ +00246e60: 6d65 3a20 4761 7468 6572 2074 6865 2070  me: Gather the p
│ │ │ +00246e70: 6163 6b61 6765 2066 6163 7473 0a20 2070  ackage facts.  p
│ │ │ +00246e80: 6163 6b61 6765 5f66 6163 7473 3a0a 2020  ackage_facts:.  
│ │ │ +00246e90: 2020 6d61 6e61 6765 723a 2061 7574 6f0a    manager: auto.
│ │ │ +00246ea0: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ +00246eb0: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ +00246ec0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +00246ed0: 434d 2d37 2861 290a 2020 2d20 4e49 5354  CM-7(a).  - NIST
│ │ │ +00246ee0: 2d38 3030 2d35 332d 434d 2d37 2862 290a  -800-53-CM-7(b).
│ │ │ +00246ef0: 2020 2d20 5043 492d 4453 5376 342d 322e    - PCI-DSSv4-2.
│ │ │ +00246f00: 320a 2020 2d20 5043 492d 4453 5376 342d  2.  - PCI-DSSv4-
│ │ │ +00246f10: 322e 322e 340a 2020 2d20 6469 7361 626c  2.2.4.  - disabl
│ │ │ +00246f20: 655f 7374 7261 7465 6779 0a20 202d 206c  e_strategy.  - l
│ │ │ +00246f30: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ +00246f40: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ +00246f50: 0a20 202d 206c 6f77 5f73 6576 6572 6974  .  - low_severit
│ │ │ +00246f60: 790a 2020 2d20 6e6f 5f72 6562 6f6f 745f  y.  - no_reboot_
│ │ │ +00246f70: 6e65 6564 6564 0a20 202d 2070 6163 6b61  needed.  - packa
│ │ │ +00246f80: 6765 5f78 696e 6574 645f 7265 6d6f 7665  ge_xinetd_remove
│ │ │ +00246f90: 640a 0a2d 206e 616d 653a 2027 556e 696e  d..- name: 'Unin
│ │ │ +00246fa0: 7374 616c 6c20 7869 6e65 7464 2070 6163  stall xinetd pac
│ │ │ +00246fb0: 6b61 6765 2069 6620 6e6f 7420 7573 6564  kage if not used
│ │ │ +00246fc0: 2062 7920 6e65 7477 6f72 6b20 7365 7276   by network serv
│ │ │ +00246fd0: 6963 6573 3a20 456e 7375 7265 2078 696e  ices: Ensure xin
│ │ │ +00246fe0: 6574 6420 6973 0a20 2020 2072 656d 6f76  etd is.    remov
│ │ │ +00246ff0: 6564 270a 2020 616e 7369 626c 652e 6275  ed'.  ansible.bu
│ │ │ +00247000: 696c 7469 6e2e 7061 636b 6167 653a 0a20  iltin.package:. 
│ │ │ +00247010: 2020 206e 616d 653a 2078 696e 6574 640a     name: xinetd.
│ │ │ +00247020: 2020 2020 7374 6174 653a 2061 6273 656e      state: absen
│ │ │ +00247030: 740a 2020 7768 656e 3a20 2722 6b65 726e  t.  when: '"kern
│ │ │ +00247040: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ +00247050: 6163 7473 2e70 6163 6b61 6765 7327 0a20  acts.packages'. 
│ │ │ +00247060: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ +00247070: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ +00247080: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ +00247090: 4d2d 3728 6129 0a20 202d 204e 4953 542d  M-7(a).  - NIST-
│ │ │ +002470a0: 3830 302d 3533 2d43 4d2d 3728 6229 0a20  800-53-CM-7(b). 
│ │ │ +002470b0: 202d 2050 4349 2d44 5353 7634 2d32 2e32   - PCI-DSSv4-2.2
│ │ │ +002470c0: 0a20 202d 2050 4349 2d44 5353 7634 2d32  .  - PCI-DSSv4-2
│ │ │ +002470d0: 2e32 2e34 0a20 202d 2064 6973 6162 6c65  .2.4.  - disable
│ │ │ +002470e0: 5f73 7472 6174 6567 790a 2020 2d20 6c6f  _strategy.  - lo
│ │ │ +002470f0: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ +00247100: 206c 6f77 5f64 6973 7275 7074 696f 6e0a   low_disruption.
│ │ │ +00247110: 2020 2d20 6c6f 775f 7365 7665 7269 7479    - low_severity
│ │ │ +00247120: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ +00247130: 6565 6465 640a 2020 2d20 7061 636b 6167  eeded.  - packag
│ │ │ +00247140: 655f 7869 6e65 7464 5f72 656d 6f76 6564  e_xinetd_removed
│ │ │ +00247150: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation Pup │ │ │ +00247210: 7065 7420 736e 6970 7065 7420 e287 b23c pet snippet ...< │ │ │ +00247220: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
< │ │ │ +002472f0: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +00247300: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

│ │ │ +00247350: 0a69 6e63 6c75 6465 2072 656d 6f76 655f  .include remove_
│ │ │ +00247360: 7869 6e65 7464 0a0a 636c 6173 7320 7265  xinetd..class re
│ │ │ +00247370: 6d6f 7665 5f78 696e 6574 6420 7b0a 2020  move_xinetd {.  
│ │ │ +00247380: 7061 636b 6167 6520 7b20 2778 696e 6574  package { 'xinet
│ │ │ +00247390: 6427 3a0a 2020 2020 656e 7375 7265 203d  d':.    ensure =
│ │ │ +002473a0: 2667 743b 2027 7075 7267 6564 272c 0a20  > 'purged',. 
│ │ │ +002473b0: 207d 0a7d 0a3c 2f63 6f64 653e 3c2f 7072   }.}.Remediation
│ │ │ +00247470: 2053 6865 6c6c 2073 6372 6970 7420 e287   Shell script ..
│ │ │ +00247480: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c  .
Complexity:low
Disrup │ │ │ +002472d0: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ +002472e0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ +00247320: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ +00247330: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
< │ │ │ +00247500: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ +00247520: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ +00247570: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>< │ │ │ +002475a0: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
# Remediation 
│ │ │ +002475c0: 6973 2061 7070 6c69 6361 626c 6520 6f6e  is applicable on
│ │ │ +002475d0: 6c79 2069 6e20 6365 7274 6169 6e20 706c  ly in certain pl
│ │ │ +002475e0: 6174 666f 726d 730a 6966 2072 706d 202d  atforms.if rpm -
│ │ │ +002475f0: 2d71 7569 6574 202d 7120 6b65 726e 656c  -quiet -q kernel
│ │ │ +00247600: 3b20 7468 656e 0a0a 2320 4341 5554 494f  ; then..# CAUTIO
│ │ │ +00247610: 4e3a 2054 6869 7320 7265 6d65 6469 6174  N: This remediat
│ │ │ +00247620: 696f 6e20 7363 7269 7074 2077 696c 6c20  ion script will 
│ │ │ +00247630: 7265 6d6f 7665 2078 696e 6574 640a 2320  remove xinetd.# 
│ │ │ +00247640: 6672 6f6d 2074 6865 2073 7973 7465 6d2c  from the system,
│ │ │ +00247650: 2061 6e64 206d 6179 2072 656d 6f76 6520   and may remove 
│ │ │ +00247660: 616e 7920 7061 636b 6167 6573 0a23 2074  any packages.# t
│ │ │ +00247670: 6861 7420 6465 7065 6e64 206f 6e20 7869  hat depend on xi
│ │ │ +00247680: 6e65 7464 2e20 4578 6563 7574 6520 7468  netd. Execute th
│ │ │ +00247690: 6973 0a23 2072 656d 6564 6961 7469 6f6e  is.# remediation
│ │ │ +002476a0: 2041 4654 4552 2074 6573 7469 6e67 206f   AFTER testing o
│ │ │ +002476b0: 6e20 6120 6e6f 6e2d 7072 6f64 7563 7469  n a non-producti
│ │ │ +002476c0: 6f6e 0a23 2073 7973 7465 6d21 0a0a 0a69  on.# system!...i
│ │ │ +002476d0: 6620 7270 6d20 2d71 202d 2d71 7569 6574  f rpm -q --quiet
│ │ │ +002476e0: 2022 7869 6e65 7464 2220 3b20 7468 656e   "xinetd" ; then
│ │ │ +002476f0: 0a64 6e66 2072 656d 6f76 6520 2d79 202d  .dnf remove -y -
│ │ │ +00247700: 2d6e 6f61 7574 6f72 656d 6f76 6520 2278  -noautoremove "x
│ │ │ +00247710: 696e 6574 6422 0a66 690a 0a65 6c73 650a  inetd".fi..else.
│ │ │ +00247720: 2020 2020 2667 743b 2661 6d70 3b32 2065      >&2 e
│ │ │ +00247730: 6368 6f20 2752 656d 6564 6961 7469 6f6e  cho 'Remediation
│ │ │ +00247740: 2069 7320 6e6f 7420 6170 706c 6963 6162   is not applicab
│ │ │ +00247750: 6c65 2c20 6e6f 7468 696e 6720 7761 7320  le, nothing was 
│ │ │ +00247760: 646f 6e65 270a 6669 0a3c 2f63 6f64 653e  done'.fi.
│ │ │ +00247770: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ +00247820: 7469 6f6e 2041 6e61 636f 6e64 6120 736e tion Anaconda sn │ │ │ +00247830: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
low
Disr │ │ │ +00247530: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +00247540: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ +00247580: 7465 6779 3a3c 2f74 683e 3c74 643e 6469 tegy:di │ │ │ +00247590: 7361 626c 653c 2f74 643e 3c2f 7472 3e3c sable
│ │ │ +002478e0: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ +00247900: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ +00247930: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ +002478c0: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ +002478d0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ +002478f0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ +00247910: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ +00247920: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:disable
< │ │ │ +00247960: 7072 653e 3c63 6f64 653e 0a0a 7061 636b pre>..pack │ │ │ +00247970: 6167 6520 2d2d 7265 6d6f 7665 3d78 696e age --remove=xin │ │ │ +00247980: 6574 640a 3c2f 636f 6465 3e3c 2f70 7265 etd.
< │ │ │ 002479b0: 2f74 6162 6c65 3e3c 2f74 643e 3c2f 7472 /table> │ │ │ -00248950: 5265 6d65 6469 6174 696f 6e20 416e 6163 Remediation Anac │ │ │ -00248960: 6f6e 6461 2073 6e69 7070 6574 20e2 87b2 onda snippet ... │ │ │ -00248970: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity: │ │ │ -00248a40: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -00248a50: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
..package --rem
│ │ │ -00248ab0: 6f76 653d 7970 6269 6e64 0a3c 2f63 6f64  ove=ypbind.
Remed │ │ │ -00248b70: 6961 7469 6f6e 2050 7570 7065 7420 736e iation Puppet sn │ │ │ -00248b80: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
low
Disru │ │ │ -00248a20: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ -00248a30: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ -00248a70: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ -00248a80: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
│ │ │ -00248c30: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ -00248c50: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ -00248c80: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ -00248c10: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ -00248c20: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ -00248c40: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ -00248c60: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -00248c70: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:disable
< │ │ │ -00248cb0: 7072 653e 3c63 6f64 653e 0a69 6e63 6c75 pre>.inclu │ │ │ -00248cc0: 6465 2072 656d 6f76 655f 7970 6269 6e64 de remove_ypbind │ │ │ -00248cd0: 0a0a 636c 6173 7320 7265 6d6f 7665 5f79 ..class remove_y │ │ │ -00248ce0: 7062 696e 6420 7b0a 2020 7061 636b 6167 pbind {. packag │ │ │ -00248cf0: 6520 7b20 2779 7062 696e 6427 3a0a 2020 e { 'ypbind':. │ │ │ -00248d00: 2020 656e 7375 7265 203d 2667 743b 2027 ensure => ' │ │ │ -00248d10: 7075 7267 6564 272c 0a20 207d 0a7d 0a3c purged',. }.}.< │ │ │ -00248d20: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469 /code>R │ │ │ -00248dd0: 656d 6564 6961 7469 6f6e 2041 6e73 6962 emediation Ansib │ │ │ -00248de0: 6c65 2073 6e69 7070 6574 20e2 87b2 3c2f le snippet ...
│ │ │ -00248e80: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
-
│ │ │ -00248f20: 206e 616d 653a 2027 5265 6d6f 7665 204e   name: 'Remove N
│ │ │ -00248f30: 4953 2043 6c69 656e 743a 2045 6e73 7572  IS Client: Ensur
│ │ │ -00248f40: 6520 7970 6269 6e64 2069 7320 7265 6d6f  e ypbind is remo
│ │ │ -00248f50: 7665 6427 0a20 2061 6e73 6962 6c65 2e62  ved'.  ansible.b
│ │ │ -00248f60: 7569 6c74 696e 2e70 6163 6b61 6765 3a0a  uiltin.package:.
│ │ │ -00248f70: 2020 2020 6e61 6d65 3a20 7970 6269 6e64      name: ypbind
│ │ │ -00248f80: 0a20 2020 2073 7461 7465 3a20 6162 7365  .    state: abse
│ │ │ -00248f90: 6e74 0a20 2074 6167 733a 0a20 202d 2050  nt.  tags:.  - P
│ │ │ -00248fa0: 4349 2d44 5353 7634 2d32 2e32 0a20 202d  CI-DSSv4-2.2.  -
│ │ │ -00248fb0: 2050 4349 2d44 5353 7634 2d32 2e32 2e34   PCI-DSSv4-2.2.4
│ │ │ -00248fc0: 0a20 202d 2064 6973 6162 6c65 5f73 7472  .  - disable_str
│ │ │ -00248fd0: 6174 6567 790a 2020 2d20 6c6f 775f 636f  ategy.  - low_co
│ │ │ -00248fe0: 6d70 6c65 7869 7479 0a20 202d 206c 6f77  mplexity.  - low
│ │ │ -00248ff0: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ -00249000: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ -00249010: 0a20 202d 2070 6163 6b61 6765 5f79 7062  .  - package_ypb
│ │ │ -00249020: 696e 645f 7265 6d6f 7665 640a 2020 2d20  ind_removed.  - 
│ │ │ -00249030: 756e 6b6e 6f77 6e5f 7365 7665 7269 7479  unknown_severity
│ │ │ -00249040: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation She │ │ │ -00249100: 6c6c 2073 6372 6970 7420 e287 b23c 2f61 ll script ...
│ │ │ -00248e70: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -00248ea0: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -00248eb0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -00248ef0: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ -00248f00: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
< │ │ │ -002491a0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -002491b0: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ -00249200: 3c74 723e 3c74 683e 5374 7261 7465 6779
.#
│ │ │ -00249240: 2043 4155 5449 4f4e 3a20 5468 6973 2072   CAUTION: This r
│ │ │ -00249250: 656d 6564 6961 7469 6f6e 2073 6372 6970  emediation scrip
│ │ │ -00249260: 7420 7769 6c6c 2072 656d 6f76 6520 7970  t will remove yp
│ │ │ -00249270: 6269 6e64 0a23 2066 726f 6d20 7468 6520  bind.# from the 
│ │ │ -00249280: 7379 7374 656d 2c20 616e 6420 6d61 7920  system, and may 
│ │ │ -00249290: 7265 6d6f 7665 2061 6e79 2070 6163 6b61  remove any packa
│ │ │ -002492a0: 6765 730a 2320 7468 6174 2064 6570 656e  ges.# that depen
│ │ │ -002492b0: 6420 6f6e 2079 7062 696e 642e 2045 7865  d on ypbind. Exe
│ │ │ -002492c0: 6375 7465 2074 6869 730a 2320 7265 6d65  cute this.# reme
│ │ │ -002492d0: 6469 6174 696f 6e20 4146 5445 5220 7465  diation AFTER te
│ │ │ -002492e0: 7374 696e 6720 6f6e 2061 206e 6f6e 2d70  sting on a non-p
│ │ │ -002492f0: 726f 6475 6374 696f 6e0a 2320 7379 7374  roduction.# syst
│ │ │ -00249300: 656d 210a 0a0a 6966 2072 706d 202d 7120  em!...if rpm -q 
│ │ │ -00249310: 2d2d 7175 6965 7420 2279 7062 696e 6422  --quiet "ypbind"
│ │ │ -00249320: 203b 2074 6865 6e0a 646e 6620 7265 6d6f   ; then.dnf remo
│ │ │ -00249330: 7665 202d 7920 2d2d 6e6f 6175 746f 7265  ve -y --noautore
│ │ │ -00249340: 6d6f 7665 2022 7970 6269 6e64 220a 6669  move "ypbind".fi
│ │ │ +00248950: 5265 6d65 6469 6174 696f 6e20 416e 7369  Remediation Ansi
│ │ │ +00248960: 626c 6520 736e 6970 7065 7420 e287 b23c  ble snippet ...<
│ │ │ +00248970: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173  /a>
C │ │ │ -00249190: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -002491c0: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ -002491d0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -00249210: 3a3c 2f74 683e 3c74 643e 6469 7361 626c :disabl │ │ │ -00249220: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
< │ │ │ +00248a40: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +00248a50: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

│ │ │ +00248aa0: 2d20 6e61 6d65 3a20 2752 656d 6f76 6520  - name: 'Remove 
│ │ │ +00248ab0: 4e49 5320 436c 6965 6e74 3a20 456e 7375  NIS Client: Ensu
│ │ │ +00248ac0: 7265 2079 7062 696e 6420 6973 2072 656d  re ypbind is rem
│ │ │ +00248ad0: 6f76 6564 270a 2020 616e 7369 626c 652e  oved'.  ansible.
│ │ │ +00248ae0: 6275 696c 7469 6e2e 7061 636b 6167 653a  builtin.package:
│ │ │ +00248af0: 0a20 2020 206e 616d 653a 2079 7062 696e  .    name: ypbin
│ │ │ +00248b00: 640a 2020 2020 7374 6174 653a 2061 6273  d.    state: abs
│ │ │ +00248b10: 656e 740a 2020 7461 6773 3a0a 2020 2d20  ent.  tags:.  - 
│ │ │ +00248b20: 5043 492d 4453 5376 342d 322e 320a 2020  PCI-DSSv4-2.2.  
│ │ │ +00248b30: 2d20 5043 492d 4453 5376 342d 322e 322e  - PCI-DSSv4-2.2.
│ │ │ +00248b40: 340a 2020 2d20 6469 7361 626c 655f 7374  4.  - disable_st
│ │ │ +00248b50: 7261 7465 6779 0a20 202d 206c 6f77 5f63  rategy.  - low_c
│ │ │ +00248b60: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f  omplexity.  - lo
│ │ │ +00248b70: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ +00248b80: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ +00248b90: 640a 2020 2d20 7061 636b 6167 655f 7970  d.  - package_yp
│ │ │ +00248ba0: 6269 6e64 5f72 656d 6f76 6564 0a20 202d  bind_removed.  -
│ │ │ +00248bb0: 2075 6e6b 6e6f 776e 5f73 6576 6572 6974   unknown_severit
│ │ │ +00248bc0: 790a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  y.
< │ │ │ +00248bd0: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Pu │ │ │ +00248c80: 7070 6574 2073 6e69 7070 6574 20e2 87b2 ppet snippet ... │ │ │ +00248c90: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity:low
Disrup │ │ │ +00248a20: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ +00248a30: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ +00248a70: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ +00248a80: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Complexity: │ │ │ +00248d60: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +00248d70: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
.include remove
│ │ │ +00248dd0: 5f79 7062 696e 640a 0a63 6c61 7373 2072  _ypbind..class r
│ │ │ +00248de0: 656d 6f76 655f 7970 6269 6e64 207b 0a20  emove_ypbind {. 
│ │ │ +00248df0: 2070 6163 6b61 6765 207b 2027 7970 6269   package { 'ypbi
│ │ │ +00248e00: 6e64 273a 0a20 2020 2065 6e73 7572 6520  nd':.    ensure 
│ │ │ +00248e10: 3d26 6774 3b20 2770 7572 6765 6427 2c0a  => 'purged',.
│ │ │ +00248e20: 2020 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70    }.}.

Remediatio │ │ │ +00248ee0: 6e20 5368 656c 6c20 7363 7269 7074 20e2 n Shell script . │ │ │ +00248ef0: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
low
Disru │ │ │ +00248d40: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +00248d50: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +00248d90: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ +00248da0: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
│ │ │ +00248f70: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +00248f90: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ +00248fe0: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ +00249010: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ +00248f80: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +00248fa0: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ +00248ff0: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ +00249000: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
.# CAUTION: T
│ │ │ +00249030: 6869 7320 7265 6d65 6469 6174 696f 6e20  his remediation 
│ │ │ +00249040: 7363 7269 7074 2077 696c 6c20 7265 6d6f  script will remo
│ │ │ +00249050: 7665 2079 7062 696e 640a 2320 6672 6f6d  ve ypbind.# from
│ │ │ +00249060: 2074 6865 2073 7973 7465 6d2c 2061 6e64   the system, and
│ │ │ +00249070: 206d 6179 2072 656d 6f76 6520 616e 7920   may remove any 
│ │ │ +00249080: 7061 636b 6167 6573 0a23 2074 6861 7420  packages.# that 
│ │ │ +00249090: 6465 7065 6e64 206f 6e20 7970 6269 6e64  depend on ypbind
│ │ │ +002490a0: 2e20 4578 6563 7574 6520 7468 6973 0a23  . Execute this.#
│ │ │ +002490b0: 2072 656d 6564 6961 7469 6f6e 2041 4654   remediation AFT
│ │ │ +002490c0: 4552 2074 6573 7469 6e67 206f 6e20 6120  ER testing on a 
│ │ │ +002490d0: 6e6f 6e2d 7072 6f64 7563 7469 6f6e 0a23  non-production.#
│ │ │ +002490e0: 2073 7973 7465 6d21 0a0a 0a69 6620 7270   system!...if rp
│ │ │ +002490f0: 6d20 2d71 202d 2d71 7569 6574 2022 7970  m -q --quiet "yp
│ │ │ +00249100: 6269 6e64 2220 3b20 7468 656e 0a64 6e66  bind" ; then.dnf
│ │ │ +00249110: 2072 656d 6f76 6520 2d79 202d 2d6e 6f61   remove -y --noa
│ │ │ +00249120: 7574 6f72 656d 6f76 6520 2279 7062 696e  utoremove "ypbin
│ │ │ +00249130: 6422 0a66 690a 3c2f 636f 6465 3e3c 2f70  d".fi.

Remediatio │ │ │ +002491f0: 6e20 416e 6163 6f6e 6461 2073 6e69 7070 n Anaconda snipp │ │ │ +00249200: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ +00249280: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ +00249290: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +002492a0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ +002492e0: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +002492f0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ +00249310: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ +00249320: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
..package
│ │ │ +00249340: 202d 2d72 656d 6f76 653d 7970 6269 6e64   --remove=ypbind
│ │ │  00249350: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
< │ │ │ 00249370: 2f74 723e 3c2f 7462 6f64 793e 3c2f 7461 /tr>Remediation A │ │ │ -0024a530: 6e61 636f 6e64 6120 736e 6970 7065 7420 naconda snippet │ │ │ -0024a540: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
Complexity: │ │ │ -0024a5d0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ -0024a5f0: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:low< │ │ │ -0024a610: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:falseSt │ │ │ -0024a640: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ -0024a650: 6469 7361 626c 653c 2f74 643e 3c2f 7472 disable
..package --
│ │ │ -0024a680: 7265 6d6f 7665 3d79 7073 6572 760a 3c2f  remove=ypserv.
Re │ │ │ -0024a740: 6d65 6469 6174 696f 6e20 5075 7070 6574 mediation Puppet │ │ │ -0024a750: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -0024a760: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ -0024a800: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ -0024a850: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
.in
│ │ │ -0024a890: 636c 7564 6520 7265 6d6f 7665 5f79 7073  clude remove_yps
│ │ │ -0024a8a0: 6572 760a 0a63 6c61 7373 2072 656d 6f76  erv..class remov
│ │ │ -0024a8b0: 655f 7970 7365 7276 207b 0a20 2070 6163  e_ypserv {.  pac
│ │ │ -0024a8c0: 6b61 6765 207b 2027 7970 7365 7276 273a  kage { 'ypserv':
│ │ │ -0024a8d0: 0a20 2020 2065 6e73 7572 6520 3d26 6774  .    ensure =>
│ │ │ -0024a8e0: 3b20 2770 7572 6765 6427 2c0a 2020 7d0a  ; 'purged',.  }.
│ │ │ -0024a8f0: 7d0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  }.
< │ │ │ -0024a900: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation An │ │ │ -0024a9b0: 7369 626c 6520 736e 6970 7065 7420 e287 sible snippet .. │ │ │ -0024a9c0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
Co │ │ │ -0024a7e0: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -0024a810: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ -0024a830: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ -0024a840: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ -0024a860: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ -0024a870: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
< │ │ │ -0024aa40: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -0024aa60: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -0024aab0: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>< │ │ │ -0024aae0: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
- name: 'Unins
│ │ │ -0024ab00: 7461 6c6c 2079 7073 6572 7620 5061 636b  tall ypserv Pack
│ │ │ -0024ab10: 6167 653a 2045 6e73 7572 6520 7970 7365  age: Ensure ypse
│ │ │ -0024ab20: 7276 2069 7320 7265 6d6f 7665 6427 0a20  rv is removed'. 
│ │ │ -0024ab30: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ -0024ab40: 2e70 6163 6b61 6765 3a0a 2020 2020 6e61  .package:.    na
│ │ │ -0024ab50: 6d65 3a20 7970 7365 7276 0a20 2020 2073  me: ypserv.    s
│ │ │ -0024ab60: 7461 7465 3a20 6162 7365 6e74 0a20 2074  tate: absent.  t
│ │ │ -0024ab70: 6167 733a 0a20 202d 204e 4953 542d 3830  ags:.  - NIST-80
│ │ │ -0024ab80: 302d 3533 2d43 4d2d 3628 6129 0a20 202d  0-53-CM-6(a).  -
│ │ │ -0024ab90: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -0024aba0: 3728 6129 0a20 202d 204e 4953 542d 3830  7(a).  - NIST-80
│ │ │ -0024abb0: 302d 3533 2d43 4d2d 3728 6229 0a20 202d  0-53-CM-7(b).  -
│ │ │ -0024abc0: 204e 4953 542d 3830 302d 3533 2d49 412d   NIST-800-53-IA-
│ │ │ -0024abd0: 3528 3129 2863 290a 2020 2d20 5043 492d  5(1)(c).  - PCI-
│ │ │ -0024abe0: 4453 532d 5265 712d 322e 322e 320a 2020  DSS-Req-2.2.2.  
│ │ │ -0024abf0: 2d20 5043 492d 4453 5376 342d 322e 320a  - PCI-DSSv4-2.2.
│ │ │ -0024ac00: 2020 2d20 5043 492d 4453 5376 342d 322e    - PCI-DSSv4-2.
│ │ │ -0024ac10: 322e 340a 2020 2d20 6469 7361 626c 655f  2.4.  - disable_
│ │ │ -0024ac20: 7374 7261 7465 6779 0a20 202d 2068 6967  strategy.  - hig
│ │ │ -0024ac30: 685f 7365 7665 7269 7479 0a20 202d 206c  h_severity.  - l
│ │ │ -0024ac40: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ -0024ac50: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ -0024ac60: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ -0024ac70: 6565 6465 640a 2020 2d20 7061 636b 6167  eeded.  - packag
│ │ │ -0024ac80: 655f 7970 7365 7276 5f72 656d 6f76 6564  e_ypserv_removed
│ │ │ -0024ac90: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation She │ │ │ -0024ad50: 6c6c 2073 6372 6970 7420 e287 b23c 2f61 ll script ...
low
Disr │ │ │ -0024aa70: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -0024aa80: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ -0024aac0: 7465 6779 3a3c 2f74 683e 3c74 643e 6469 tegy:di │ │ │ -0024aad0: 7361 626c 653c 2f74 643e 3c2f 7472 3e3c sable
< │ │ │ -0024adf0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -0024ae00: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ -0024ae50: 3c74 723e 3c74 683e 5374 7261 7465 6779
.#
│ │ │ -0024ae90: 2043 4155 5449 4f4e 3a20 5468 6973 2072   CAUTION: This r
│ │ │ -0024aea0: 656d 6564 6961 7469 6f6e 2073 6372 6970  emediation scrip
│ │ │ -0024aeb0: 7420 7769 6c6c 2072 656d 6f76 6520 7970  t will remove yp
│ │ │ -0024aec0: 7365 7276 0a23 2066 726f 6d20 7468 6520  serv.# from the 
│ │ │ -0024aed0: 7379 7374 656d 2c20 616e 6420 6d61 7920  system, and may 
│ │ │ -0024aee0: 7265 6d6f 7665 2061 6e79 2070 6163 6b61  remove any packa
│ │ │ -0024aef0: 6765 730a 2320 7468 6174 2064 6570 656e  ges.# that depen
│ │ │ -0024af00: 6420 6f6e 2079 7073 6572 762e 2045 7865  d on ypserv. Exe
│ │ │ -0024af10: 6375 7465 2074 6869 730a 2320 7265 6d65  cute this.# reme
│ │ │ -0024af20: 6469 6174 696f 6e20 4146 5445 5220 7465  diation AFTER te
│ │ │ -0024af30: 7374 696e 6720 6f6e 2061 206e 6f6e 2d70  sting on a non-p
│ │ │ -0024af40: 726f 6475 6374 696f 6e0a 2320 7379 7374  roduction.# syst
│ │ │ -0024af50: 656d 210a 0a0a 6966 2072 706d 202d 7120  em!...if rpm -q 
│ │ │ -0024af60: 2d2d 7175 6965 7420 2279 7073 6572 7622  --quiet "ypserv"
│ │ │ -0024af70: 203b 2074 6865 6e0a 646e 6620 7265 6d6f   ; then.dnf remo
│ │ │ -0024af80: 7665 202d 7920 2d2d 6e6f 6175 746f 7265  ve -y --noautore
│ │ │ -0024af90: 6d6f 7665 2022 7970 7365 7276 220a 6669  move "ypserv".fi
│ │ │ +0024a530: 6e73 6962 6c65 2073 6e69 7070 6574 20e2  nsible snippet .
│ │ │ +0024a540: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063  ..
C │ │ │ -0024ade0: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -0024ae10: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ -0024ae20: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -0024ae60: 3a3c 2f74 683e 3c74 643e 6469 7361 626c :disabl │ │ │ -0024ae70: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
│ │ │ +0024a5c0: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +0024a5e0: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ +0024a630: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ +0024a660: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ +0024a5d0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +0024a5f0: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ +0024a640: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ +0024a650: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
- name: 'Unin
│ │ │ +0024a680: 7374 616c 6c20 7970 7365 7276 2050 6163  stall ypserv Pac
│ │ │ +0024a690: 6b61 6765 3a20 456e 7375 7265 2079 7073  kage: Ensure yps
│ │ │ +0024a6a0: 6572 7620 6973 2072 656d 6f76 6564 270a  erv is removed'.
│ │ │ +0024a6b0: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ +0024a6c0: 6e2e 7061 636b 6167 653a 0a20 2020 206e  n.package:.    n
│ │ │ +0024a6d0: 616d 653a 2079 7073 6572 760a 2020 2020  ame: ypserv.    
│ │ │ +0024a6e0: 7374 6174 653a 2061 6273 656e 740a 2020  state: absent.  
│ │ │ +0024a6f0: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38  tags:.  - NIST-8
│ │ │ +0024a700: 3030 2d35 332d 434d 2d36 2861 290a 2020  00-53-CM-6(a).  
│ │ │ +0024a710: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +0024a720: 2d37 2861 290a 2020 2d20 4e49 5354 2d38  -7(a).  - NIST-8
│ │ │ +0024a730: 3030 2d35 332d 434d 2d37 2862 290a 2020  00-53-CM-7(b).  
│ │ │ +0024a740: 2d20 4e49 5354 2d38 3030 2d35 332d 4941  - NIST-800-53-IA
│ │ │ +0024a750: 2d35 2831 2928 6329 0a20 202d 2050 4349  -5(1)(c).  - PCI
│ │ │ +0024a760: 2d44 5353 2d52 6571 2d32 2e32 2e32 0a20  -DSS-Req-2.2.2. 
│ │ │ +0024a770: 202d 2050 4349 2d44 5353 7634 2d32 2e32   - PCI-DSSv4-2.2
│ │ │ +0024a780: 0a20 202d 2050 4349 2d44 5353 7634 2d32  .  - PCI-DSSv4-2
│ │ │ +0024a790: 2e32 2e34 0a20 202d 2064 6973 6162 6c65  .2.4.  - disable
│ │ │ +0024a7a0: 5f73 7472 6174 6567 790a 2020 2d20 6869  _strategy.  - hi
│ │ │ +0024a7b0: 6768 5f73 6576 6572 6974 790a 2020 2d20  gh_severity.  - 
│ │ │ +0024a7c0: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ +0024a7d0: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ +0024a7e0: 6e0a 2020 2d20 6e6f 5f72 6562 6f6f 745f  n.  - no_reboot_
│ │ │ +0024a7f0: 6e65 6564 6564 0a20 202d 2070 6163 6b61  needed.  - packa
│ │ │ +0024a800: 6765 5f79 7073 6572 765f 7265 6d6f 7665  ge_ypserv_remove
│ │ │ +0024a810: 640a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  d.
< │ │ │ +0024a820: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Pu │ │ │ +0024a8d0: 7070 6574 2073 6e69 7070 6574 20e2 87b2 ppet snippet ... │ │ │ +0024a8e0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity: │ │ │ +0024a9b0: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +0024a9c0: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
.include remove
│ │ │ +0024aa20: 5f79 7073 6572 760a 0a63 6c61 7373 2072  _ypserv..class r
│ │ │ +0024aa30: 656d 6f76 655f 7970 7365 7276 207b 0a20  emove_ypserv {. 
│ │ │ +0024aa40: 2070 6163 6b61 6765 207b 2027 7970 7365   package { 'ypse
│ │ │ +0024aa50: 7276 273a 0a20 2020 2065 6e73 7572 6520  rv':.    ensure 
│ │ │ +0024aa60: 3d26 6774 3b20 2770 7572 6765 6427 2c0a  => 'purged',.
│ │ │ +0024aa70: 2020 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70    }.}.

Remediatio │ │ │ +0024ab30: 6e20 5368 656c 6c20 7363 7269 7074 20e2 n Shell script . │ │ │ +0024ab40: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
low
Disru │ │ │ +0024a990: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +0024a9a0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +0024a9e0: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ +0024a9f0: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
│ │ │ +0024abc0: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +0024abe0: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ +0024ac30: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ +0024ac60: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ +0024abd0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +0024abf0: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ +0024ac40: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ +0024ac50: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
.# CAUTION: T
│ │ │ +0024ac80: 6869 7320 7265 6d65 6469 6174 696f 6e20  his remediation 
│ │ │ +0024ac90: 7363 7269 7074 2077 696c 6c20 7265 6d6f  script will remo
│ │ │ +0024aca0: 7665 2079 7073 6572 760a 2320 6672 6f6d  ve ypserv.# from
│ │ │ +0024acb0: 2074 6865 2073 7973 7465 6d2c 2061 6e64   the system, and
│ │ │ +0024acc0: 206d 6179 2072 656d 6f76 6520 616e 7920   may remove any 
│ │ │ +0024acd0: 7061 636b 6167 6573 0a23 2074 6861 7420  packages.# that 
│ │ │ +0024ace0: 6465 7065 6e64 206f 6e20 7970 7365 7276  depend on ypserv
│ │ │ +0024acf0: 2e20 4578 6563 7574 6520 7468 6973 0a23  . Execute this.#
│ │ │ +0024ad00: 2072 656d 6564 6961 7469 6f6e 2041 4654   remediation AFT
│ │ │ +0024ad10: 4552 2074 6573 7469 6e67 206f 6e20 6120  ER testing on a 
│ │ │ +0024ad20: 6e6f 6e2d 7072 6f64 7563 7469 6f6e 0a23  non-production.#
│ │ │ +0024ad30: 2073 7973 7465 6d21 0a0a 0a69 6620 7270   system!...if rp
│ │ │ +0024ad40: 6d20 2d71 202d 2d71 7569 6574 2022 7970  m -q --quiet "yp
│ │ │ +0024ad50: 7365 7276 2220 3b20 7468 656e 0a64 6e66  serv" ; then.dnf
│ │ │ +0024ad60: 2072 656d 6f76 6520 2d79 202d 2d6e 6f61   remove -y --noa
│ │ │ +0024ad70: 7574 6f72 656d 6f76 6520 2279 7073 6572  utoremove "ypser
│ │ │ +0024ad80: 7622 0a66 690a 3c2f 636f 6465 3e3c 2f70  v".fi.

Remediatio │ │ │ +0024ae40: 6e20 416e 6163 6f6e 6461 2073 6e69 7070 n Anaconda snipp │ │ │ +0024ae50: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ +0024aed0: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ +0024aee0: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +0024aef0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ +0024af30: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +0024af40: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ +0024af60: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ +0024af70: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
..package
│ │ │ +0024af90: 202d 2d72 656d 6f76 653d 7970 7365 7276   --remove=ypserv
│ │ │  0024afa0: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
< │ │ │ 0024afc0: 2f74 723e 3c2f 7462 6f64 793e 3c2f 7461 /tr>Remed │ │ │ -0024c510: 6961 7469 6f6e 2041 6e61 636f 6e64 6120 iation Anaconda │ │ │ -0024c520: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ -0024c530: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Com │ │ │ -0024c5b0: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ -0024c5e0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ -0024c600: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -0024c610: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -0024c630: 2f74 683e 3c74 643e 6469 7361 626c 653c /th>disable< │ │ │ -0024c640: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
..pa
│ │ │ -0024c660: 636b 6167 6520 2d2d 7265 6d6f 7665 3d72  ckage --remove=r
│ │ │ -0024c670: 7368 2d73 6572 7665 720a 3c2f 636f 6465  sh-server.
Remedi │ │ │ -0024c730: 6174 696f 6e20 5075 7070 6574 2073 6e69 ation Puppet sni │ │ │ -0024c740: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -0024c750: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -0024c780: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ -0024c7f0: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ -0024c810: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ -0024c840: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
Comple │ │ │ -0024c7d0: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ -0024c7e0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ -0024c820: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ -0024c830: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
disable

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

Remedi │ │ │ -0024c9a0: 6174 696f 6e20 416e 7369 626c 6520 736e ation Ansible sn │ │ │ -0024c9b0: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ -0024ca60: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ -0024ca80: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ -0024cab0: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ -0024ca40: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ -0024ca50: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ -0024ca70: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ -0024ca90: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -0024caa0: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:disable
< │ │ │ -0024cae0: 7072 653e 3c63 6f64 653e 2d20 6e61 6d65 pre>- name │ │ │ -0024caf0: 3a20 2755 6e69 6e73 7461 6c6c 2072 7368 : 'Uninstall rsh │ │ │ -0024cb00: 2d73 6572 7665 7220 5061 636b 6167 653a -server Package: │ │ │ -0024cb10: 2045 6e73 7572 6520 7273 682d 7365 7276 Ensure rsh-serv │ │ │ -0024cb20: 6572 2069 7320 7265 6d6f 7665 6427 0a20 er is removed'. │ │ │ -0024cb30: 2061 6e73 6962 6c65 2e62 7569 6c74 696e ansible.builtin │ │ │ -0024cb40: 2e70 6163 6b61 6765 3a0a 2020 2020 6e61 .package:. na │ │ │ -0024cb50: 6d65 3a20 7273 682d 7365 7276 6572 0a20 me: rsh-server. │ │ │ -0024cb60: 2020 2073 7461 7465 3a20 6162 7365 6e74 state: absent │ │ │ -0024cb70: 0a20 2074 6167 733a 0a20 202d 204e 4953 . tags:. - NIS │ │ │ -0024cb80: 542d 3830 302d 3533 2d43 4d2d 3628 6129 T-800-53-CM-6(a) │ │ │ -0024cb90: 0a20 202d 204e 4953 542d 3830 302d 3533 . - NIST-800-53 │ │ │ -0024cba0: 2d43 4d2d 3728 6129 0a20 202d 204e 4953 -CM-7(a). - NIS │ │ │ -0024cbb0: 542d 3830 302d 3533 2d43 4d2d 3728 6229 T-800-53-CM-7(b) │ │ │ -0024cbc0: 0a20 202d 204e 4953 542d 3830 302d 3533 . - NIST-800-53 │ │ │ -0024cbd0: 2d49 412d 3528 3129 2863 290a 2020 2d20 -IA-5(1)(c). - │ │ │ -0024cbe0: 5043 492d 4453 5376 342d 322e 320a 2020 PCI-DSSv4-2.2. │ │ │ -0024cbf0: 2d20 5043 492d 4453 5376 342d 322e 322e - PCI-DSSv4-2.2. │ │ │ -0024cc00: 340a 2020 2d20 6469 7361 626c 655f 7374 4. - disable_st │ │ │ -0024cc10: 7261 7465 6779 0a20 202d 2068 6967 685f rategy. - high_ │ │ │ -0024cc20: 7365 7665 7269 7479 0a20 202d 206c 6f77 severity. - low │ │ │ -0024cc30: 5f63 6f6d 706c 6578 6974 790a 2020 2d20 _complexity. - │ │ │ -0024cc40: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20 low_disruption. │ │ │ -0024cc50: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565 - no_reboot_nee │ │ │ -0024cc60: 6465 640a 2020 2d20 7061 636b 6167 655f ded. - package_ │ │ │ -0024cc70: 7273 682d 7365 7276 6572 5f72 656d 6f76 rsh-server_remov │ │ │ -0024cc80: 6564 0a3c 2f63 6f64 653e 3c2f 7072 653e ed. │ │ │ -0024cc90: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation S │ │ │ -0024cd40: 6865 6c6c 2073 6372 6970 7420 e287 b23c hell script ...< │ │ │ -0024cd50: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
< │ │ │ -0024ce20: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -0024ce30: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

│ │ │ -0024ce80: 0a23 2043 4155 5449 4f4e 3a20 5468 6973  .# CAUTION: This
│ │ │ -0024ce90: 2072 656d 6564 6961 7469 6f6e 2073 6372   remediation scr
│ │ │ -0024cea0: 6970 7420 7769 6c6c 2072 656d 6f76 6520  ipt will remove 
│ │ │ -0024ceb0: 7273 682d 7365 7276 6572 0a23 2066 726f  rsh-server.# fro
│ │ │ -0024cec0: 6d20 7468 6520 7379 7374 656d 2c20 616e  m the system, an
│ │ │ -0024ced0: 6420 6d61 7920 7265 6d6f 7665 2061 6e79  d may remove any
│ │ │ -0024cee0: 2070 6163 6b61 6765 730a 2320 7468 6174   packages.# that
│ │ │ -0024cef0: 2064 6570 656e 6420 6f6e 2072 7368 2d73   depend on rsh-s
│ │ │ -0024cf00: 6572 7665 722e 2045 7865 6375 7465 2074  erver. Execute t
│ │ │ -0024cf10: 6869 730a 2320 7265 6d65 6469 6174 696f  his.# remediatio
│ │ │ -0024cf20: 6e20 4146 5445 5220 7465 7374 696e 6720  n AFTER testing 
│ │ │ -0024cf30: 6f6e 2061 206e 6f6e 2d70 726f 6475 6374  on a non-product
│ │ │ -0024cf40: 696f 6e0a 2320 7379 7374 656d 210a 0a0a  ion.# system!...
│ │ │ -0024cf50: 6966 2072 706d 202d 7120 2d2d 7175 6965  if rpm -q --quie
│ │ │ -0024cf60: 7420 2272 7368 2d73 6572 7665 7222 203b  t "rsh-server" ;
│ │ │ -0024cf70: 2074 6865 6e0a 646e 6620 7265 6d6f 7665   then.dnf remove
│ │ │ -0024cf80: 202d 7920 2d2d 6e6f 6175 746f 7265 6d6f   -y --noautoremo
│ │ │ -0024cf90: 7665 2022 7273 682d 7365 7276 6572 220a  ve "rsh-server".
│ │ │ -0024cfa0: 6669 0a3c 2f63 6f64 653e 3c2f 7072 653e  fi.
│ │ │ +0024c510: 6961 7469 6f6e 2041 6e73 6962 6c65 2073 iation Ansible s │ │ │ +0024c520: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Complexity:low
Disrup │ │ │ -0024ce00: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -0024ce10: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -0024ce50: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ -0024ce60: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Comp │ │ │ +0024c5b0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +0024c5c0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ +0024c5e0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ +0024c600: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +0024c610: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ +0024c650: 3c70 7265 3e3c 636f 6465 3e2d 206e 616d
- nam
│ │ │ +0024c660: 653a 2027 556e 696e 7374 616c 6c20 7273  e: 'Uninstall rs
│ │ │ +0024c670: 682d 7365 7276 6572 2050 6163 6b61 6765  h-server Package
│ │ │ +0024c680: 3a20 456e 7375 7265 2072 7368 2d73 6572  : Ensure rsh-ser
│ │ │ +0024c690: 7665 7220 6973 2072 656d 6f76 6564 270a  ver is removed'.
│ │ │ +0024c6a0: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ +0024c6b0: 6e2e 7061 636b 6167 653a 0a20 2020 206e  n.package:.    n
│ │ │ +0024c6c0: 616d 653a 2072 7368 2d73 6572 7665 720a  ame: rsh-server.
│ │ │ +0024c6d0: 2020 2020 7374 6174 653a 2061 6273 656e      state: absen
│ │ │ +0024c6e0: 740a 2020 7461 6773 3a0a 2020 2d20 4e49  t.  tags:.  - NI
│ │ │ +0024c6f0: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ +0024c700: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +0024c710: 332d 434d 2d37 2861 290a 2020 2d20 4e49  3-CM-7(a).  - NI
│ │ │ +0024c720: 5354 2d38 3030 2d35 332d 434d 2d37 2862  ST-800-53-CM-7(b
│ │ │ +0024c730: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +0024c740: 332d 4941 2d35 2831 2928 6329 0a20 202d  3-IA-5(1)(c).  -
│ │ │ +0024c750: 2050 4349 2d44 5353 7634 2d32 2e32 0a20   PCI-DSSv4-2.2. 
│ │ │ +0024c760: 202d 2050 4349 2d44 5353 7634 2d32 2e32   - PCI-DSSv4-2.2
│ │ │ +0024c770: 2e34 0a20 202d 2064 6973 6162 6c65 5f73  .4.  - disable_s
│ │ │ +0024c780: 7472 6174 6567 790a 2020 2d20 6869 6768  trategy.  - high
│ │ │ +0024c790: 5f73 6576 6572 6974 790a 2020 2d20 6c6f  _severity.  - lo
│ │ │ +0024c7a0: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ +0024c7b0: 206c 6f77 5f64 6973 7275 7074 696f 6e0a   low_disruption.
│ │ │ +0024c7c0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ +0024c7d0: 6564 6564 0a20 202d 2070 6163 6b61 6765  eded.  - package
│ │ │ +0024c7e0: 5f72 7368 2d73 6572 7665 725f 7265 6d6f  _rsh-server_remo
│ │ │ +0024c7f0: 7665 640a 3c2f 636f 6465 3e3c 2f70 7265  ved.
Remediation │ │ │ +0024c8b0: 5075 7070 6574 2073 6e69 7070 6574 20e2 Puppet snippet . │ │ │ +0024c8c0: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ +0024c940: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +0024c960: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ +0024c9b0: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ +0024c9e0: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ +0024c950: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +0024c970: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ +0024c9c0: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ +0024c9d0: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
.include remo
│ │ │ +0024ca00: 7665 5f72 7368 2d73 6572 7665 720a 0a63  ve_rsh-server..c
│ │ │ +0024ca10: 6c61 7373 2072 656d 6f76 655f 7273 682d  lass remove_rsh-
│ │ │ +0024ca20: 7365 7276 6572 207b 0a20 2070 6163 6b61  server {.  packa
│ │ │ +0024ca30: 6765 207b 2027 7273 682d 7365 7276 6572  ge { 'rsh-server
│ │ │ +0024ca40: 273a 0a20 2020 2065 6e73 7572 6520 3d26  ':.    ensure =&
│ │ │ +0024ca50: 6774 3b20 2770 7572 6765 6427 2c0a 2020  gt; 'purged',.  
│ │ │ +0024ca60: 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70 7265  }.}.
Remediation │ │ │ +0024cb20: 5368 656c 6c20 7363 7269 7074 20e2 87b2 Shell script ... │ │ │ +0024cb30: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity: │ │ │ +0024cc00: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +0024cc10: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
.# CAUTION: Thi
│ │ │ +0024cc70: 7320 7265 6d65 6469 6174 696f 6e20 7363  s remediation sc
│ │ │ +0024cc80: 7269 7074 2077 696c 6c20 7265 6d6f 7665  ript will remove
│ │ │ +0024cc90: 2072 7368 2d73 6572 7665 720a 2320 6672   rsh-server.# fr
│ │ │ +0024cca0: 6f6d 2074 6865 2073 7973 7465 6d2c 2061  om the system, a
│ │ │ +0024ccb0: 6e64 206d 6179 2072 656d 6f76 6520 616e  nd may remove an
│ │ │ +0024ccc0: 7920 7061 636b 6167 6573 0a23 2074 6861  y packages.# tha
│ │ │ +0024ccd0: 7420 6465 7065 6e64 206f 6e20 7273 682d  t depend on rsh-
│ │ │ +0024cce0: 7365 7276 6572 2e20 4578 6563 7574 6520  server. Execute 
│ │ │ +0024ccf0: 7468 6973 0a23 2072 656d 6564 6961 7469  this.# remediati
│ │ │ +0024cd00: 6f6e 2041 4654 4552 2074 6573 7469 6e67  on AFTER testing
│ │ │ +0024cd10: 206f 6e20 6120 6e6f 6e2d 7072 6f64 7563   on a non-produc
│ │ │ +0024cd20: 7469 6f6e 0a23 2073 7973 7465 6d21 0a0a  tion.# system!..
│ │ │ +0024cd30: 0a69 6620 7270 6d20 2d71 202d 2d71 7569  .if rpm -q --qui
│ │ │ +0024cd40: 6574 2022 7273 682d 7365 7276 6572 2220  et "rsh-server" 
│ │ │ +0024cd50: 3b20 7468 656e 0a64 6e66 2072 656d 6f76  ; then.dnf remov
│ │ │ +0024cd60: 6520 2d79 202d 2d6e 6f61 7574 6f72 656d  e -y --noautorem
│ │ │ +0024cd70: 6f76 6520 2272 7368 2d73 6572 7665 7222  ove "rsh-server"
│ │ │ +0024cd80: 0a66 690a 3c2f 636f 6465 3e3c 2f70 7265  .fi.
Remediation │ │ │ +0024ce40: 416e 6163 6f6e 6461 2073 6e69 7070 6574 Anaconda snippet │ │ │ +0024ce50: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
< │ │ │ +0024cf10: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +0024cf20: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c
low
Disru │ │ │ +0024cbe0: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +0024cbf0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +0024cc30: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ +0024cc40: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
Complexity │ │ │ +0024cee0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
D │ │ │ +0024cf00: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:
Reboot:< │ │ │ +0024cf30: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>false
S │ │ │ +0024cf50: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:disable
<
│ │ │ +0024cf80: 636f 6465 3e0a 0a70 6163 6b61 6765 202d  code>..package -
│ │ │ +0024cf90: 2d72 656d 6f76 653d 7273 682d 7365 7276  -remove=rsh-serv
│ │ │ +0024cfa0: 6572 0a3c 2f63 6f64 653e 3c2f 7072 653e  er.
│ │ │ 0024cfb0: 3c2f 6469 763e 3c2f 6469 763e 3c2f 7464
│ │ │ 0024cfe0: 3c74 7220 6461 7461 2d74 742d 6964 3d22 Remediat │ │ │ -0024db40: 696f 6e20 416e 6163 6f6e 6461 2073 6e69 ion Anaconda sni │ │ │ -0024db50: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -0024db60: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -0024db90: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ -0024dc00: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ -0024dc20: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ -0024dc50: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
Comple │ │ │ -0024dbe0: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ -0024dbf0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ -0024dc30: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ -0024dc40: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
disable

..packa │ │ │ -0024dc90: 6765 202d 2d72 656d 6f76 653d 7273 680a ge --remove=rsh. │ │ │ -0024dca0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64 │ │ │ -0024dd50: 5265 6d65 6469 6174 696f 6e20 5075 7070 Remediation Pupp │ │ │ -0024dd60: 6574 2073 6e69 7070 6574 20e2 87b2 3c2f et snippet ...

│ │ │ -0024de00: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
.
│ │ │ -0024dea0: 696e 636c 7564 6520 7265 6d6f 7665 5f72  include remove_r
│ │ │ -0024deb0: 7368 0a0a 636c 6173 7320 7265 6d6f 7665  sh..class remove
│ │ │ -0024dec0: 5f72 7368 207b 0a20 2070 6163 6b61 6765  _rsh {.  package
│ │ │ -0024ded0: 207b 2027 7273 6827 3a0a 2020 2020 656e   { 'rsh':.    en
│ │ │ -0024dee0: 7375 7265 203d 2667 743b 2027 7075 7267  sure => 'purg
│ │ │ -0024def0: 6564 272c 0a20 207d 0a7d 0a3c 2f63 6f64  ed',.  }.}.
Remed │ │ │ -0024dfb0: 6961 7469 6f6e 2041 6e73 6962 6c65 2073 iation Ansible s │ │ │ -0024dfc0: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
│ │ │ -0024ddf0: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -0024de20: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -0024de30: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -0024de70: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ -0024de80: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Comp │ │ │ -0024e050: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -0024e060: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -0024e080: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ -0024e0a0: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -0024e0b0: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ -0024e0f0: 3c70 7265 3e3c 636f 6465 3e2d 206e 616d
- nam
│ │ │ -0024e100: 653a 2027 556e 696e 7374 616c 6c20 7273  e: 'Uninstall rs
│ │ │ -0024e110: 6820 5061 636b 6167 653a 2045 6e73 7572  h Package: Ensur
│ │ │ -0024e120: 6520 7273 6820 6973 2072 656d 6f76 6564  e rsh is removed
│ │ │ -0024e130: 270a 2020 616e 7369 626c 652e 6275 696c  '.  ansible.buil
│ │ │ -0024e140: 7469 6e2e 7061 636b 6167 653a 0a20 2020  tin.package:.   
│ │ │ -0024e150: 206e 616d 653a 2072 7368 0a20 2020 2073   name: rsh.    s
│ │ │ -0024e160: 7461 7465 3a20 6162 7365 6e74 0a20 2074  tate: absent.  t
│ │ │ -0024e170: 6167 733a 0a20 202d 204e 4953 542d 3830  ags:.  - NIST-80
│ │ │ -0024e180: 302d 3137 312d 332e 312e 3133 0a20 202d  0-171-3.1.13.  -
│ │ │ -0024e190: 2050 4349 2d44 5353 7634 2d32 2e32 0a20   PCI-DSSv4-2.2. 
│ │ │ -0024e1a0: 202d 2050 4349 2d44 5353 7634 2d32 2e32   - PCI-DSSv4-2.2
│ │ │ -0024e1b0: 2e34 0a20 202d 2064 6973 6162 6c65 5f73  .4.  - disable_s
│ │ │ -0024e1c0: 7472 6174 6567 790a 2020 2d20 6c6f 775f  trategy.  - low_
│ │ │ -0024e1d0: 636f 6d70 6c65 7869 7479 0a20 202d 206c  complexity.  - l
│ │ │ -0024e1e0: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ -0024e1f0: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ -0024e200: 6564 0a20 202d 2070 6163 6b61 6765 5f72  ed.  - package_r
│ │ │ -0024e210: 7368 5f72 656d 6f76 6564 0a20 202d 2075  sh_removed.  - u
│ │ │ -0024e220: 6e6b 6e6f 776e 5f73 6576 6572 6974 790a  nknown_severity.
│ │ │ -0024e230: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ -0024e2e0: 5265 6d65 6469 6174 696f 6e20 5368 656c Remediation Shel │ │ │ -0024e2f0: 6c20 7363 7269 7074 20e2 87b2 3c2f 613e l script ... │ │ │ -0024e300: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ -0024e3a0: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ -0024e3f0: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
.# 
│ │ │ -0024e430: 4341 5554 494f 4e3a 2054 6869 7320 7265  CAUTION: This re
│ │ │ -0024e440: 6d65 6469 6174 696f 6e20 7363 7269 7074  mediation script
│ │ │ -0024e450: 2077 696c 6c20 7265 6d6f 7665 2072 7368   will remove rsh
│ │ │ -0024e460: 0a23 2066 726f 6d20 7468 6520 7379 7374  .# from the syst
│ │ │ -0024e470: 656d 2c20 616e 6420 6d61 7920 7265 6d6f  em, and may remo
│ │ │ -0024e480: 7665 2061 6e79 2070 6163 6b61 6765 730a  ve any packages.
│ │ │ -0024e490: 2320 7468 6174 2064 6570 656e 6420 6f6e  # that depend on
│ │ │ -0024e4a0: 2072 7368 2e20 4578 6563 7574 6520 7468   rsh. Execute th
│ │ │ -0024e4b0: 6973 0a23 2072 656d 6564 6961 7469 6f6e  is.# remediation
│ │ │ -0024e4c0: 2041 4654 4552 2074 6573 7469 6e67 206f   AFTER testing o
│ │ │ -0024e4d0: 6e20 6120 6e6f 6e2d 7072 6f64 7563 7469  n a non-producti
│ │ │ -0024e4e0: 6f6e 0a23 2073 7973 7465 6d21 0a0a 0a69  on.# system!...i
│ │ │ -0024e4f0: 6620 7270 6d20 2d71 202d 2d71 7569 6574  f rpm -q --quiet
│ │ │ -0024e500: 2022 7273 6822 203b 2074 6865 6e0a 646e   "rsh" ; then.dn
│ │ │ -0024e510: 6620 7265 6d6f 7665 202d 7920 2d2d 6e6f  f remove -y --no
│ │ │ -0024e520: 6175 746f 7265 6d6f 7665 2022 7273 6822  autoremove "rsh"
│ │ │ -0024e530: 0a66 690a 3c2f 636f 6465 3e3c 2f70 7265  .fi.

< │ │ │ +0024db60: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +0024db70: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +0024db80: 7365 2220 6964 3d22 6964 3735 3822 3e3c se" id="id758">< │ │ │ +0024db90: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +0024dba0: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +0024dbb0: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +0024dbc0: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +0024dbd0: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Disruption:Strategy: │ │ │ +0024dc60: 3c74 643e 6469 7361 626c 653c 2f74 643e │ │ │ +0024dc70: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
Co │ │ │ -0024e380: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -0024e3b0: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ -0024e3d0: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ -0024e3e0: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ -0024e400: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ -0024e410: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Complex │ │ │ +0024dbe0: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ +0024dbf0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
low
Reboo │ │ │ +0024dc30: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ +0024dc40: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
disable
- name: │ │ │ +0024dc90: 2755 6e69 6e73 7461 6c6c 2072 7368 2050 'Uninstall rsh P │ │ │ +0024dca0: 6163 6b61 6765 3a20 456e 7375 7265 2072 ackage: Ensure r │ │ │ +0024dcb0: 7368 2069 7320 7265 6d6f 7665 6427 0a20 sh is removed'. │ │ │ +0024dcc0: 2061 6e73 6962 6c65 2e62 7569 6c74 696e ansible.builtin │ │ │ +0024dcd0: 2e70 6163 6b61 6765 3a0a 2020 2020 6e61 .package:. na │ │ │ +0024dce0: 6d65 3a20 7273 680a 2020 2020 7374 6174 me: rsh. stat │ │ │ +0024dcf0: 653a 2061 6273 656e 740a 2020 7461 6773 e: absent. tags │ │ │ +0024dd00: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d31 :. - NIST-800-1 │ │ │ +0024dd10: 3731 2d33 2e31 2e31 330a 2020 2d20 5043 71-3.1.13. - PC │ │ │ +0024dd20: 492d 4453 5376 342d 322e 320a 2020 2d20 I-DSSv4-2.2. - │ │ │ +0024dd30: 5043 492d 4453 5376 342d 322e 322e 340a PCI-DSSv4-2.2.4. │ │ │ +0024dd40: 2020 2d20 6469 7361 626c 655f 7374 7261 - disable_stra │ │ │ +0024dd50: 7465 6779 0a20 202d 206c 6f77 5f63 6f6d tegy. - low_com │ │ │ +0024dd60: 706c 6578 6974 790a 2020 2d20 6c6f 775f plexity. - low_ │ │ │ +0024dd70: 6469 7372 7570 7469 6f6e 0a20 202d 206e disruption. - n │ │ │ +0024dd80: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a o_reboot_needed. │ │ │ +0024dd90: 2020 2d20 7061 636b 6167 655f 7273 685f - package_rsh_ │ │ │ +0024dda0: 7265 6d6f 7665 640a 2020 2d20 756e 6b6e removed. - unkn │ │ │ +0024ddb0: 6f77 6e5f 7365 7665 7269 7479 0a3c 2f63 own_severity.
│ │ │ +0024ddd0: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ +0024de70: 6564 6961 7469 6f6e 2050 7570 7065 7420 ediation Puppet │ │ │ +0024de80: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ +0024de90: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Com │ │ │ +0024df10: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ +0024df40: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ +0024df60: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +0024df70: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ +0024df90: 2f74 683e 3c74 643e 6469 7361 626c 653c /th>disable< │ │ │ +0024dfa0: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
.inc
│ │ │ +0024dfc0: 6c75 6465 2072 656d 6f76 655f 7273 680a  lude remove_rsh.
│ │ │ +0024dfd0: 0a63 6c61 7373 2072 656d 6f76 655f 7273  .class remove_rs
│ │ │ +0024dfe0: 6820 7b0a 2020 7061 636b 6167 6520 7b20  h {.  package { 
│ │ │ +0024dff0: 2772 7368 273a 0a20 2020 2065 6e73 7572  'rsh':.    ensur
│ │ │ +0024e000: 6520 3d26 6774 3b20 2770 7572 6765 6427  e => 'purged'
│ │ │ +0024e010: 2c0a 2020 7d0a 7d0a 3c2f 636f 6465 3e3c  ,.  }.}.<
│ │ │ +0024e020: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>
Remediat │ │ │ +0024e0d0: 696f 6e20 5368 656c 6c20 7363 7269 7074 ion Shell script │ │ │ +0024e0e0: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Complexity │ │ │ +0024e170: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ +0024e190: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ +0024e1a0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +0024e1b0: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ +0024e1c0: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ +0024e1e0: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:disable
<
│ │ │ +0024e210: 636f 6465 3e0a 2320 4341 5554 494f 4e3a  code>.# CAUTION:
│ │ │ +0024e220: 2054 6869 7320 7265 6d65 6469 6174 696f   This remediatio
│ │ │ +0024e230: 6e20 7363 7269 7074 2077 696c 6c20 7265  n script will re
│ │ │ +0024e240: 6d6f 7665 2072 7368 0a23 2066 726f 6d20  move rsh.# from 
│ │ │ +0024e250: 7468 6520 7379 7374 656d 2c20 616e 6420  the system, and 
│ │ │ +0024e260: 6d61 7920 7265 6d6f 7665 2061 6e79 2070  may remove any p
│ │ │ +0024e270: 6163 6b61 6765 730a 2320 7468 6174 2064  ackages.# that d
│ │ │ +0024e280: 6570 656e 6420 6f6e 2072 7368 2e20 4578  epend on rsh. Ex
│ │ │ +0024e290: 6563 7574 6520 7468 6973 0a23 2072 656d  ecute this.# rem
│ │ │ +0024e2a0: 6564 6961 7469 6f6e 2041 4654 4552 2074  ediation AFTER t
│ │ │ +0024e2b0: 6573 7469 6e67 206f 6e20 6120 6e6f 6e2d  esting on a non-
│ │ │ +0024e2c0: 7072 6f64 7563 7469 6f6e 0a23 2073 7973  production.# sys
│ │ │ +0024e2d0: 7465 6d21 0a0a 0a69 6620 7270 6d20 2d71  tem!...if rpm -q
│ │ │ +0024e2e0: 202d 2d71 7569 6574 2022 7273 6822 203b   --quiet "rsh" ;
│ │ │ +0024e2f0: 2074 6865 6e0a 646e 6620 7265 6d6f 7665   then.dnf remove
│ │ │ +0024e300: 202d 7920 2d2d 6e6f 6175 746f 7265 6d6f   -y --noautoremo
│ │ │ +0024e310: 7665 2022 7273 6822 0a66 690a 3c2f 636f  ve "rsh".fi.
< │ │ │ +0024e330: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ +0024e340: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ +0024e350: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ +0024e360: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ +0024e370: 6437 3631 2220 7461 6269 6e64 6578 3d22 d761" tabindex=" │ │ │ +0024e380: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ +0024e390: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ +0024e3a0: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ +0024e3b0: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ +0024e3c0: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ +0024e3d0: 6469 6174 696f 6e20 416e 6163 6f6e 6461 diation Anaconda │ │ │ +0024e3e0: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ +0024e3f0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ +0024e490: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ +0024e4e0: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
..p
│ │ │ +0024e520: 6163 6b61 6765 202d 2d72 656d 6f76 653d  ackage --remove=
│ │ │ +0024e530: 7273 680a 3c2f 636f 6465 3e3c 2f70 7265  rsh.
< │ │ │ 0024e560: 2f74 6162 6c65 3e3c 2f74 643e 3c2f 7472 /table>Remediation │ │ │ -0024f2a0: 416e 6163 6f6e 6461 2073 6e69 7070 6574 Anaconda snippet │ │ │ -0024f2b0: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
< │ │ │ -0024f370: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -0024f380: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c
Co │ │ │ +0024e470: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +0024e4a0: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +0024e4c0: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +0024e4d0: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +0024e4f0: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ +0024e500: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Complexity │ │ │ -0024f340: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
D │ │ │ -0024f360: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:
Reboot:< │ │ │ -0024f390: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>false
S │ │ │ -0024f3b0: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:disable
<
│ │ │ -0024f3e0: 636f 6465 3e0a 0a70 6163 6b61 6765 202d  code>..package -
│ │ │ -0024f3f0: 2d72 656d 6f76 653d 7461 6c6b 2d73 6572  -remove=talk-ser
│ │ │ -0024f400: 7665 720a 3c2f 636f 6465 3e3c 2f70 7265  ver.
Remediation │ │ │ -0024f4c0: 5075 7070 6574 2073 6e69 7070 6574 20e2 Puppet snippet . │ │ │ -0024f4d0: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ -0024f550: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -0024f570: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ -0024f5c0: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ -0024f5f0: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ -0024f560: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ -0024f580: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ -0024f5d0: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ -0024f5e0: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
.include remo
│ │ │ -0024f610: 7665 5f74 616c 6b2d 7365 7276 6572 0a0a  ve_talk-server..
│ │ │ -0024f620: 636c 6173 7320 7265 6d6f 7665 5f74 616c  class remove_tal
│ │ │ -0024f630: 6b2d 7365 7276 6572 207b 0a20 2070 6163  k-server {.  pac
│ │ │ -0024f640: 6b61 6765 207b 2027 7461 6c6b 2d73 6572  kage { 'talk-ser
│ │ │ -0024f650: 7665 7227 3a0a 2020 2020 656e 7375 7265  ver':.    ensure
│ │ │ -0024f660: 203d 2667 743b 2027 7075 7267 6564 272c   => 'purged',
│ │ │ -0024f670: 0a20 207d 0a7d 0a3c 2f63 6f64 653e 3c2f  .  }.}.
Remediati │ │ │ -0024f730: 6f6e 2041 6e73 6962 6c65 2073 6e69 7070 on Ansible snipp │ │ │ -0024f740: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ -0024f7c0: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ -0024f7d0: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -0024f7e0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ -0024f820: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -0024f830: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ -0024f850: 7464 3e64 6973 6162 6c65 3c2f 7464 3e3c td>disable< │ │ │ -0024f860: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
- name: '
│ │ │ -0024f880: 556e 696e 7374 616c 6c20 7461 6c6b 2d73  Uninstall talk-s
│ │ │ -0024f890: 6572 7665 7220 5061 636b 6167 653a 2045  erver Package: E
│ │ │ -0024f8a0: 6e73 7572 6520 7461 6c6b 2d73 6572 7665  nsure talk-serve
│ │ │ -0024f8b0: 7220 6973 2072 656d 6f76 6564 270a 2020  r is removed'.  
│ │ │ -0024f8c0: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ -0024f8d0: 7061 636b 6167 653a 0a20 2020 206e 616d  package:.    nam
│ │ │ -0024f8e0: 653a 2074 616c 6b2d 7365 7276 6572 0a20  e: talk-server. 
│ │ │ -0024f8f0: 2020 2073 7461 7465 3a20 6162 7365 6e74     state: absent
│ │ │ -0024f900: 0a20 2074 6167 733a 0a20 202d 2050 4349  .  tags:.  - PCI
│ │ │ -0024f910: 2d44 5353 7634 2d32 2e32 0a20 202d 2050  -DSSv4-2.2.  - P
│ │ │ -0024f920: 4349 2d44 5353 7634 2d32 2e32 2e34 0a20  CI-DSSv4-2.2.4. 
│ │ │ -0024f930: 202d 2064 6973 6162 6c65 5f73 7472 6174   - disable_strat
│ │ │ -0024f940: 6567 790a 2020 2d20 6c6f 775f 636f 6d70  egy.  - low_comp
│ │ │ -0024f950: 6c65 7869 7479 0a20 202d 206c 6f77 5f64  lexity.  - low_d
│ │ │ -0024f960: 6973 7275 7074 696f 6e0a 2020 2d20 6d65  isruption.  - me
│ │ │ -0024f970: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ -0024f980: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ -0024f990: 6564 0a20 202d 2070 6163 6b61 6765 5f74  ed.  - package_t
│ │ │ -0024f9a0: 616c 6b2d 7365 7276 6572 5f72 656d 6f76  alk-server_remov
│ │ │ -0024f9b0: 6564 0a3c 2f63 6f64 653e 3c2f 7072 653e  ed.
│ │ │ -0024f9c0: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation S │ │ │ -0024fa70: 6865 6c6c 2073 6372 6970 7420 e287 b23c hell script ...< │ │ │ -0024fa80: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
< │ │ │ -0024fb50: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -0024fb60: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

│ │ │ -0024fbb0: 0a23 2043 4155 5449 4f4e 3a20 5468 6973  .# CAUTION: This
│ │ │ -0024fbc0: 2072 656d 6564 6961 7469 6f6e 2073 6372   remediation scr
│ │ │ -0024fbd0: 6970 7420 7769 6c6c 2072 656d 6f76 6520  ipt will remove 
│ │ │ -0024fbe0: 7461 6c6b 2d73 6572 7665 720a 2320 6672  talk-server.# fr
│ │ │ -0024fbf0: 6f6d 2074 6865 2073 7973 7465 6d2c 2061  om the system, a
│ │ │ -0024fc00: 6e64 206d 6179 2072 656d 6f76 6520 616e  nd may remove an
│ │ │ -0024fc10: 7920 7061 636b 6167 6573 0a23 2074 6861  y packages.# tha
│ │ │ -0024fc20: 7420 6465 7065 6e64 206f 6e20 7461 6c6b  t depend on talk
│ │ │ -0024fc30: 2d73 6572 7665 722e 2045 7865 6375 7465  -server. Execute
│ │ │ -0024fc40: 2074 6869 730a 2320 7265 6d65 6469 6174   this.# remediat
│ │ │ -0024fc50: 696f 6e20 4146 5445 5220 7465 7374 696e  ion AFTER testin
│ │ │ -0024fc60: 6720 6f6e 2061 206e 6f6e 2d70 726f 6475  g on a non-produ
│ │ │ -0024fc70: 6374 696f 6e0a 2320 7379 7374 656d 210a  ction.# system!.
│ │ │ -0024fc80: 0a0a 6966 2072 706d 202d 7120 2d2d 7175  ..if rpm -q --qu
│ │ │ -0024fc90: 6965 7420 2274 616c 6b2d 7365 7276 6572  iet "talk-server
│ │ │ -0024fca0: 2220 3b20 7468 656e 0a64 6e66 2072 656d  " ; then.dnf rem
│ │ │ -0024fcb0: 6f76 6520 2d79 202d 2d6e 6f61 7574 6f72  ove -y --noautor
│ │ │ -0024fcc0: 656d 6f76 6520 2274 616c 6b2d 7365 7276  emove "talk-serv
│ │ │ -0024fcd0: 6572 220a 6669 0a3c 2f63 6f64 653e 3c2f  er".fi.
low< │ │ │ +0024f380: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>
Complexity:low
Disrup │ │ │ -0024fb30: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -0024fb40: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -0024fb80: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ -0024fb90: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Complexity: │ │ │ +0024f340: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Di │ │ │ +0024f360: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:
Reboot:false
St │ │ │ +0024f3b0: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ +0024f3c0: 6469 7361 626c 653c 2f74 643e 3c2f 7472 disable
- name: 'Uni
│ │ │ +0024f3f0: 6e73 7461 6c6c 2074 616c 6b2d 7365 7276  nstall talk-serv
│ │ │ +0024f400: 6572 2050 6163 6b61 6765 3a20 456e 7375  er Package: Ensu
│ │ │ +0024f410: 7265 2074 616c 6b2d 7365 7276 6572 2069  re talk-server i
│ │ │ +0024f420: 7320 7265 6d6f 7665 6427 0a20 2061 6e73  s removed'.  ans
│ │ │ +0024f430: 6962 6c65 2e62 7569 6c74 696e 2e70 6163  ible.builtin.pac
│ │ │ +0024f440: 6b61 6765 3a0a 2020 2020 6e61 6d65 3a20  kage:.    name: 
│ │ │ +0024f450: 7461 6c6b 2d73 6572 7665 720a 2020 2020  talk-server.    
│ │ │ +0024f460: 7374 6174 653a 2061 6273 656e 740a 2020  state: absent.  
│ │ │ +0024f470: 7461 6773 3a0a 2020 2d20 5043 492d 4453  tags:.  - PCI-DS
│ │ │ +0024f480: 5376 342d 322e 320a 2020 2d20 5043 492d  Sv4-2.2.  - PCI-
│ │ │ +0024f490: 4453 5376 342d 322e 322e 340a 2020 2d20  DSSv4-2.2.4.  - 
│ │ │ +0024f4a0: 6469 7361 626c 655f 7374 7261 7465 6779  disable_strategy
│ │ │ +0024f4b0: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ +0024f4c0: 6974 790a 2020 2d20 6c6f 775f 6469 7372  ity.  - low_disr
│ │ │ +0024f4d0: 7570 7469 6f6e 0a20 202d 206d 6564 6975  uption.  - mediu
│ │ │ +0024f4e0: 6d5f 7365 7665 7269 7479 0a20 202d 206e  m_severity.  - n
│ │ │ +0024f4f0: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ +0024f500: 2020 2d20 7061 636b 6167 655f 7461 6c6b    - package_talk
│ │ │ +0024f510: 2d73 6572 7665 725f 7265 6d6f 7665 640a  -server_removed.
│ │ │ +0024f520: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ +0024f5d0: 5265 6d65 6469 6174 696f 6e20 5075 7070 Remediation Pupp │ │ │ +0024f5e0: 6574 2073 6e69 7070 6574 20e2 87b2 3c2f et snippet ...
│ │ │ +0024f680: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
.
│ │ │ +0024f720: 696e 636c 7564 6520 7265 6d6f 7665 5f74  include remove_t
│ │ │ +0024f730: 616c 6b2d 7365 7276 6572 0a0a 636c 6173  alk-server..clas
│ │ │ +0024f740: 7320 7265 6d6f 7665 5f74 616c 6b2d 7365  s remove_talk-se
│ │ │ +0024f750: 7276 6572 207b 0a20 2070 6163 6b61 6765  rver {.  package
│ │ │ +0024f760: 207b 2027 7461 6c6b 2d73 6572 7665 7227   { 'talk-server'
│ │ │ +0024f770: 3a0a 2020 2020 656e 7375 7265 203d 2667  :.    ensure =&g
│ │ │ +0024f780: 743b 2027 7075 7267 6564 272c 0a20 207d  t; 'purged',.  }
│ │ │ +0024f790: 0a7d 0a3c 2f63 6f64 653e 3c2f 7072 653e  .}.
│ │ │ +0024f7a0: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22 Remediation S │ │ │ +0024f850: 6865 6c6c 2073 6372 6970 7420 e287 b23c hell script ...< │ │ │ +0024f860: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
│ │ │ +0024f670: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +0024f6a0: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +0024f6b0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +0024f6f0: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ +0024f700: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
< │ │ │ +0024f930: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +0024f940: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

│ │ │ +0024f990: 0a23 2043 4155 5449 4f4e 3a20 5468 6973  .# CAUTION: This
│ │ │ +0024f9a0: 2072 656d 6564 6961 7469 6f6e 2073 6372   remediation scr
│ │ │ +0024f9b0: 6970 7420 7769 6c6c 2072 656d 6f76 6520  ipt will remove 
│ │ │ +0024f9c0: 7461 6c6b 2d73 6572 7665 720a 2320 6672  talk-server.# fr
│ │ │ +0024f9d0: 6f6d 2074 6865 2073 7973 7465 6d2c 2061  om the system, a
│ │ │ +0024f9e0: 6e64 206d 6179 2072 656d 6f76 6520 616e  nd may remove an
│ │ │ +0024f9f0: 7920 7061 636b 6167 6573 0a23 2074 6861  y packages.# tha
│ │ │ +0024fa00: 7420 6465 7065 6e64 206f 6e20 7461 6c6b  t depend on talk
│ │ │ +0024fa10: 2d73 6572 7665 722e 2045 7865 6375 7465  -server. Execute
│ │ │ +0024fa20: 2074 6869 730a 2320 7265 6d65 6469 6174   this.# remediat
│ │ │ +0024fa30: 696f 6e20 4146 5445 5220 7465 7374 696e  ion AFTER testin
│ │ │ +0024fa40: 6720 6f6e 2061 206e 6f6e 2d70 726f 6475  g on a non-produ
│ │ │ +0024fa50: 6374 696f 6e0a 2320 7379 7374 656d 210a  ction.# system!.
│ │ │ +0024fa60: 0a0a 6966 2072 706d 202d 7120 2d2d 7175  ..if rpm -q --qu
│ │ │ +0024fa70: 6965 7420 2274 616c 6b2d 7365 7276 6572  iet "talk-server
│ │ │ +0024fa80: 2220 3b20 7468 656e 0a64 6e66 2072 656d  " ; then.dnf rem
│ │ │ +0024fa90: 6f76 6520 2d79 202d 2d6e 6f61 7574 6f72  ove -y --noautor
│ │ │ +0024faa0: 656d 6f76 6520 2274 616c 6b2d 7365 7276  emove "talk-serv
│ │ │ +0024fab0: 6572 220a 6669 0a3c 2f63 6f64 653e 3c2f  er".fi.Remediati
│ │ │ +0024fb70: 6f6e 2041 6e61 636f 6e64 6120 736e 6970  on Anaconda snip
│ │ │ +0024fb80: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c  pet ...
< │ │ │ +0024fb90: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +0024fba0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +0024fbb0: 7365 2220 6964 3d22 6964 3736 3622 3e3c se" id="id766">< │ │ │ +0024fbc0: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +0024fbd0: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +0024fbe0: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +0024fbf0: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +0024fc00: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >
Disruption:Strategy: │ │ │ +0024fc90: 3c74 643e 6469 7361 626c 653c 2f74 643e │ │ │ +0024fca0: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
Complexity:low
Disrup │ │ │ +0024f910: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ +0024f920: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ +0024f960: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ +0024f970: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Complex │ │ │ +0024fc10: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ +0024fc20: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
low
Reboo │ │ │ +0024fc60: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ +0024fc70: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
disable
..packag │ │ │ +0024fcc0: 6520 2d2d 7265 6d6f 7665 3d74 616c 6b2d e --remove=talk- │ │ │ +0024fcd0: 7365 7276 6572 0a3c 2f63 6f64 653e 3c2f server.
│ │ │ 0024fcf0: 3c2f 7464 3e3c 2f74 723e 3c2f 7462 6f64 < │ │ │ 0024fd10: 2f74 723e 3c74 7220 6461 7461 2d74 742d /tr>Remediation │ │ │ -002507a0: 2041 6e61 636f 6e64 6120 736e 6970 7065 Anaconda snippe │ │ │ -002507b0: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ -00250830: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ -00250840: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ -00250860: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ -00250870: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ -00250890: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ -002508b0: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:disable
│ │ │ -002508e0: 3c63 6f64 653e 0a0a 7061 636b 6167 6520  ..package 
│ │ │ -002508f0: 2d2d 7265 6d6f 7665 3d74 616c 6b0a 3c2f  --remove=talk.
Re │ │ │ -002509b0: 6d65 6469 6174 696f 6e20 5075 7070 6574 mediation Puppet │ │ │ -002509c0: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -002509d0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ -00250a70: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ -00250ac0: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
.in
│ │ │ -00250b00: 636c 7564 6520 7265 6d6f 7665 5f74 616c  clude remove_tal
│ │ │ -00250b10: 6b0a 0a63 6c61 7373 2072 656d 6f76 655f  k..class remove_
│ │ │ -00250b20: 7461 6c6b 207b 0a20 2070 6163 6b61 6765  talk {.  package
│ │ │ -00250b30: 207b 2027 7461 6c6b 273a 0a20 2020 2065   { 'talk':.    e
│ │ │ -00250b40: 6e73 7572 6520 3d26 6774 3b20 2770 7572  nsure => 'pur
│ │ │ -00250b50: 6765 6427 2c0a 2020 7d0a 7d0a 3c2f 636f  ged',.  }.}.
< │ │ │ -00250b70: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ -00250b80: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ -00250b90: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ -00250ba0: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ -00250bb0: 6437 3730 2220 7461 6269 6e64 6578 3d22 d770" tabindex=" │ │ │ -00250bc0: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ -00250bd0: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ -00250be0: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ -00250bf0: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ -00250c00: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ -00250c10: 6469 6174 696f 6e20 416e 7369 626c 6520 diation Ansible │ │ │ -00250c20: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ -00250c30: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Co │ │ │ -00250a50: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -00250a80: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ -00250aa0: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ -00250ab0: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ -00250ad0: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ -00250ae0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Com │ │ │ -00250cb0: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ -00250ce0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ -00250d00: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -00250d10: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -00250d30: 2f74 683e 3c74 643e 6469 7361 626c 653c /th>disable< │ │ │ -00250d40: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
- na
│ │ │ -00250d60: 6d65 3a20 2755 6e69 6e73 7461 6c6c 2074  me: 'Uninstall t
│ │ │ -00250d70: 616c 6b20 5061 636b 6167 653a 2045 6e73  alk Package: Ens
│ │ │ -00250d80: 7572 6520 7461 6c6b 2069 7320 7265 6d6f  ure talk is remo
│ │ │ -00250d90: 7665 6427 0a20 2061 6e73 6962 6c65 2e62  ved'.  ansible.b
│ │ │ -00250da0: 7569 6c74 696e 2e70 6163 6b61 6765 3a0a  uiltin.package:.
│ │ │ -00250db0: 2020 2020 6e61 6d65 3a20 7461 6c6b 0a20      name: talk. 
│ │ │ -00250dc0: 2020 2073 7461 7465 3a20 6162 7365 6e74     state: absent
│ │ │ -00250dd0: 0a20 2074 6167 733a 0a20 202d 2050 4349  .  tags:.  - PCI
│ │ │ -00250de0: 2d44 5353 7634 2d32 2e32 0a20 202d 2050  -DSSv4-2.2.  - P
│ │ │ -00250df0: 4349 2d44 5353 7634 2d32 2e32 2e34 0a20  CI-DSSv4-2.2.4. 
│ │ │ -00250e00: 202d 2064 6973 6162 6c65 5f73 7472 6174   - disable_strat
│ │ │ -00250e10: 6567 790a 2020 2d20 6c6f 775f 636f 6d70  egy.  - low_comp
│ │ │ -00250e20: 6c65 7869 7479 0a20 202d 206c 6f77 5f64  lexity.  - low_d
│ │ │ -00250e30: 6973 7275 7074 696f 6e0a 2020 2d20 6d65  isruption.  - me
│ │ │ -00250e40: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ -00250e50: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ -00250e60: 6564 0a20 202d 2070 6163 6b61 6765 5f74  ed.  - package_t
│ │ │ -00250e70: 616c 6b5f 7265 6d6f 7665 640a 3c2f 636f  alk_removed.
< │ │ │ -00250e90: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ -00250ea0: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ -00250eb0: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ -00250ec0: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ -00250ed0: 6437 3731 2220 7461 6269 6e64 6578 3d22 d771" tabindex=" │ │ │ -00250ee0: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ -00250ef0: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ -00250f00: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ -00250f10: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ -00250f20: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ -00250f30: 6469 6174 696f 6e20 5368 656c 6c20 7363 diation Shell sc │ │ │ -00250f40: 7269 7074 20e2 87b2 3c2f 613e 3c62 723e ript ...
│ │ │ -00250f50: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -00250f80: 3c74 6162 6c65 2063 6c61 7373 3d22 7461 < │ │ │ -00250ff0: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ -00251010: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ -00251040: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
Comple │ │ │ -00250fd0: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ -00250fe0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ -00251020: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ -00251030: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
disable

.# CAUT │ │ │ -00251080: 494f 4e3a 2054 6869 7320 7265 6d65 6469 ION: This remedi │ │ │ -00251090: 6174 696f 6e20 7363 7269 7074 2077 696c ation script wil │ │ │ -002510a0: 6c20 7265 6d6f 7665 2074 616c 6b0a 2320 l remove talk.# │ │ │ -002510b0: 6672 6f6d 2074 6865 2073 7973 7465 6d2c from the system, │ │ │ -002510c0: 2061 6e64 206d 6179 2072 656d 6f76 6520 and may remove │ │ │ -002510d0: 616e 7920 7061 636b 6167 6573 0a23 2074 any packages.# t │ │ │ -002510e0: 6861 7420 6465 7065 6e64 206f 6e20 7461 hat depend on ta │ │ │ -002510f0: 6c6b 2e20 4578 6563 7574 6520 7468 6973 lk. Execute this │ │ │ -00251100: 0a23 2072 656d 6564 6961 7469 6f6e 2041 .# remediation A │ │ │ -00251110: 4654 4552 2074 6573 7469 6e67 206f 6e20 FTER testing on │ │ │ -00251120: 6120 6e6f 6e2d 7072 6f64 7563 7469 6f6e a non-production │ │ │ -00251130: 0a23 2073 7973 7465 6d21 0a0a 0a69 6620 .# system!...if │ │ │ -00251140: 7270 6d20 2d71 202d 2d71 7569 6574 2022 rpm -q --quiet " │ │ │ -00251150: 7461 6c6b 2220 3b20 7468 656e 0a64 6e66 talk" ; then.dnf │ │ │ -00251160: 2072 656d 6f76 6520 2d79 202d 2d6e 6f61 remove -y --noa │ │ │ -00251170: 7574 6f72 656d 6f76 6520 2274 616c 6b22 utoremove "talk" │ │ │ -00251180: 0a66 690a 3c2f 636f 6465 3e3c 2f70 7265 .fi.

Complexity │ │ │ +00250840: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ +00250860: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ +00250870: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +00250880: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ +00250890: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ +002508b0: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:disable
<
│ │ │ +002508e0: 636f 6465 3e2d 206e 616d 653a 2027 556e  code>- name: 'Un
│ │ │ +002508f0: 696e 7374 616c 6c20 7461 6c6b 2050 6163  install talk Pac
│ │ │ +00250900: 6b61 6765 3a20 456e 7375 7265 2074 616c  kage: Ensure tal
│ │ │ +00250910: 6b20 6973 2072 656d 6f76 6564 270a 2020  k is removed'.  
│ │ │ +00250920: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ +00250930: 7061 636b 6167 653a 0a20 2020 206e 616d  package:.    nam
│ │ │ +00250940: 653a 2074 616c 6b0a 2020 2020 7374 6174  e: talk.    stat
│ │ │ +00250950: 653a 2061 6273 656e 740a 2020 7461 6773  e: absent.  tags
│ │ │ +00250960: 3a0a 2020 2d20 5043 492d 4453 5376 342d  :.  - PCI-DSSv4-
│ │ │ +00250970: 322e 320a 2020 2d20 5043 492d 4453 5376  2.2.  - PCI-DSSv
│ │ │ +00250980: 342d 322e 322e 340a 2020 2d20 6469 7361  4-2.2.4.  - disa
│ │ │ +00250990: 626c 655f 7374 7261 7465 6779 0a20 202d  ble_strategy.  -
│ │ │ +002509a0: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ +002509b0: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ +002509c0: 6f6e 0a20 202d 206d 6564 6975 6d5f 7365  on.  - medium_se
│ │ │ +002509d0: 7665 7269 7479 0a20 202d 206e 6f5f 7265  verity.  - no_re
│ │ │ +002509e0: 626f 6f74 5f6e 6565 6465 640a 2020 2d20  boot_needed.  - 
│ │ │ +002509f0: 7061 636b 6167 655f 7461 6c6b 5f72 656d  package_talk_rem
│ │ │ +00250a00: 6f76 6564 0a3c 2f63 6f64 653e 3c2f 7072  oved.
Remediation │ │ │ +00250ac0: 2050 7570 7065 7420 736e 6970 7065 7420 Puppet snippet │ │ │ +00250ad0: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
Complexity: │ │ │ +00250b60: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ +00250b80: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:low< │ │ │ +00250ba0: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:falseSt │ │ │ +00250bd0: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ +00250be0: 6469 7361 626c 653c 2f74 643e 3c2f 7472 disable
.include rem
│ │ │ +00250c10: 6f76 655f 7461 6c6b 0a0a 636c 6173 7320  ove_talk..class 
│ │ │ +00250c20: 7265 6d6f 7665 5f74 616c 6b20 7b0a 2020  remove_talk {.  
│ │ │ +00250c30: 7061 636b 6167 6520 7b20 2774 616c 6b27  package { 'talk'
│ │ │ +00250c40: 3a0a 2020 2020 656e 7375 7265 203d 2667  :.    ensure =&g
│ │ │ +00250c50: 743b 2027 7075 7267 6564 272c 0a20 207d  t; 'purged',.  }
│ │ │ +00250c60: 0a7d 0a3c 2f63 6f64 653e 3c2f 7072 653e  .}.
│ │ │ +00250c70: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation S │ │ │ +00250d20: 6865 6c6c 2073 6372 6970 7420 e287 b23c hell script ...< │ │ │ +00250d30: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
< │ │ │ +00250e00: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +00250e10: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

│ │ │ +00250e60: 0a23 2043 4155 5449 4f4e 3a20 5468 6973  .# CAUTION: This
│ │ │ +00250e70: 2072 656d 6564 6961 7469 6f6e 2073 6372   remediation scr
│ │ │ +00250e80: 6970 7420 7769 6c6c 2072 656d 6f76 6520  ipt will remove 
│ │ │ +00250e90: 7461 6c6b 0a23 2066 726f 6d20 7468 6520  talk.# from the 
│ │ │ +00250ea0: 7379 7374 656d 2c20 616e 6420 6d61 7920  system, and may 
│ │ │ +00250eb0: 7265 6d6f 7665 2061 6e79 2070 6163 6b61  remove any packa
│ │ │ +00250ec0: 6765 730a 2320 7468 6174 2064 6570 656e  ges.# that depen
│ │ │ +00250ed0: 6420 6f6e 2074 616c 6b2e 2045 7865 6375  d on talk. Execu
│ │ │ +00250ee0: 7465 2074 6869 730a 2320 7265 6d65 6469  te this.# remedi
│ │ │ +00250ef0: 6174 696f 6e20 4146 5445 5220 7465 7374  ation AFTER test
│ │ │ +00250f00: 696e 6720 6f6e 2061 206e 6f6e 2d70 726f  ing on a non-pro
│ │ │ +00250f10: 6475 6374 696f 6e0a 2320 7379 7374 656d  duction.# system
│ │ │ +00250f20: 210a 0a0a 6966 2072 706d 202d 7120 2d2d  !...if rpm -q --
│ │ │ +00250f30: 7175 6965 7420 2274 616c 6b22 203b 2074  quiet "talk" ; t
│ │ │ +00250f40: 6865 6e0a 646e 6620 7265 6d6f 7665 202d  hen.dnf remove -
│ │ │ +00250f50: 7920 2d2d 6e6f 6175 746f 7265 6d6f 7665  y --noautoremove
│ │ │ +00250f60: 2022 7461 6c6b 220a 6669 0a3c 2f63 6f64   "talk".fi.
Remed │ │ │ +00251020: 6961 7469 6f6e 2041 6e61 636f 6e64 6120 iation Anaconda │ │ │ +00251030: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ +00251040: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Complexity:low
Disrup │ │ │ +00250de0: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ +00250df0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ +00250e30: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ +00250e40: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Com │ │ │ +002510c0: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ +002510f0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ +00251110: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ +00251120: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ +00251140: 2f74 683e 3c74 643e 6469 7361 626c 653c /th>disable< │ │ │ +00251150: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
..pa
│ │ │ +00251170: 636b 6167 6520 2d2d 7265 6d6f 7665 3d74  ckage --remove=t
│ │ │ +00251180: 616c 6b0a 3c2f 636f 6465 3e3c 2f70 7265  alk.
< │ │ │ 002511b0: 2f74 6162 6c65 3e3c 2f74 643e 3c2f 7472 /table>Remediation │ │ │ -00252990: 2041 6e61 636f 6e64 6120 736e 6970 7065 Anaconda snippe │ │ │ -002529a0: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ -00252a20: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ -00252a30: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ -00252a50: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ -00252a60: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ -00252a80: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ -00252aa0: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:disable
│ │ │ -00252ad0: 3c63 6f64 653e 0a0a 7061 636b 6167 6520  ..package 
│ │ │ -00252ae0: 2d2d 7265 6d6f 7665 3d74 656c 6e65 742d  --remove=telnet-
│ │ │ -00252af0: 7365 7276 6572 0a3c 2f63 6f64 653e 3c2f  server.
Remediati │ │ │ -00252bb0: 6f6e 2050 7570 7065 7420 736e 6970 7065 on Puppet snippe │ │ │ -00252bc0: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ -00252c40: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ -00252c50: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ -00252c70: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ -00252c80: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ -00252ca0: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ -00252cc0: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:disable
│ │ │ -00252cf0: 3c63 6f64 653e 0a69 6e63 6c75 6465 2072  .include r
│ │ │ -00252d00: 656d 6f76 655f 7465 6c6e 6574 2d73 6572  emove_telnet-ser
│ │ │ -00252d10: 7665 720a 0a63 6c61 7373 2072 656d 6f76  ver..class remov
│ │ │ -00252d20: 655f 7465 6c6e 6574 2d73 6572 7665 7220  e_telnet-server 
│ │ │ -00252d30: 7b0a 2020 7061 636b 6167 6520 7b20 2774  {.  package { 't
│ │ │ -00252d40: 656c 6e65 742d 7365 7276 6572 273a 0a20  elnet-server':. 
│ │ │ -00252d50: 2020 2065 6e73 7572 6520 3d26 6774 3b20     ensure => 
│ │ │ -00252d60: 2770 7572 6765 6427 2c0a 2020 7d0a 7d0a  'purged',.  }.}.
│ │ │ -00252d70: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ -00252e20: 5265 6d65 6469 6174 696f 6e20 416e 7369 Remediation Ansi │ │ │ -00252e30: 626c 6520 736e 6970 7065 7420 e287 b23c ble snippet ...< │ │ │ -00252e40: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
< │ │ │ -00252f10: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -00252f20: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

│ │ │ -00252f70: 2d20 6e61 6d65 3a20 2755 6e69 6e73 7461  - name: 'Uninsta
│ │ │ -00252f80: 6c6c 2074 656c 6e65 742d 7365 7276 6572  ll telnet-server
│ │ │ -00252f90: 2050 6163 6b61 6765 3a20 456e 7375 7265   Package: Ensure
│ │ │ -00252fa0: 2074 656c 6e65 742d 7365 7276 6572 2069   telnet-server i
│ │ │ -00252fb0: 7320 7265 6d6f 7665 6427 0a20 2061 6e73  s removed'.  ans
│ │ │ -00252fc0: 6962 6c65 2e62 7569 6c74 696e 2e70 6163  ible.builtin.pac
│ │ │ -00252fd0: 6b61 6765 3a0a 2020 2020 6e61 6d65 3a20  kage:.    name: 
│ │ │ -00252fe0: 7465 6c6e 6574 2d73 6572 7665 720a 2020  telnet-server.  
│ │ │ -00252ff0: 2020 7374 6174 653a 2061 6273 656e 740a    state: absent.
│ │ │ -00253000: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ -00253010: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ -00253020: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -00253030: 434d 2d37 2861 290a 2020 2d20 4e49 5354  CM-7(a).  - NIST
│ │ │ -00253040: 2d38 3030 2d35 332d 434d 2d37 2862 290a  -800-53-CM-7(b).
│ │ │ -00253050: 2020 2d20 5043 492d 4453 532d 5265 712d    - PCI-DSS-Req-
│ │ │ -00253060: 322e 322e 320a 2020 2d20 5043 492d 4453  2.2.2.  - PCI-DS
│ │ │ -00253070: 5376 342d 322e 320a 2020 2d20 5043 492d  Sv4-2.2.  - PCI-
│ │ │ -00253080: 4453 5376 342d 322e 322e 340a 2020 2d20  DSSv4-2.2.4.  - 
│ │ │ -00253090: 6469 7361 626c 655f 7374 7261 7465 6779  disable_strategy
│ │ │ -002530a0: 0a20 202d 2068 6967 685f 7365 7665 7269  .  - high_severi
│ │ │ -002530b0: 7479 0a20 202d 206c 6f77 5f63 6f6d 706c  ty.  - low_compl
│ │ │ -002530c0: 6578 6974 790a 2020 2d20 6c6f 775f 6469  exity.  - low_di
│ │ │ -002530d0: 7372 7570 7469 6f6e 0a20 202d 206e 6f5f  sruption.  - no_
│ │ │ -002530e0: 7265 626f 6f74 5f6e 6565 6465 640a 2020  reboot_needed.  
│ │ │ -002530f0: 2d20 7061 636b 6167 655f 7465 6c6e 6574  - package_telnet
│ │ │ -00253100: 2d73 6572 7665 725f 7265 6d6f 7665 640a  -server_removed.
│ │ │ -00253110: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ -002531c0: 5265 6d65 6469 6174 696f 6e20 5368 656c Remediation Shel │ │ │ -002531d0: 6c20 7363 7269 7074 20e2 87b2 3c2f 613e l script ... │ │ │ -002531e0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
Complexity:low
Disrup │ │ │ -00252ef0: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -00252f00: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -00252f40: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ -00252f50: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
low< │ │ │ -00253280: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ -002532d0: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
.# 
│ │ │ -00253310: 4341 5554 494f 4e3a 2054 6869 7320 7265  CAUTION: This re
│ │ │ -00253320: 6d65 6469 6174 696f 6e20 7363 7269 7074  mediation script
│ │ │ -00253330: 2077 696c 6c20 7265 6d6f 7665 2074 656c   will remove tel
│ │ │ -00253340: 6e65 742d 7365 7276 6572 0a23 2066 726f  net-server.# fro
│ │ │ -00253350: 6d20 7468 6520 7379 7374 656d 2c20 616e  m the system, an
│ │ │ -00253360: 6420 6d61 7920 7265 6d6f 7665 2061 6e79  d may remove any
│ │ │ -00253370: 2070 6163 6b61 6765 730a 2320 7468 6174   packages.# that
│ │ │ -00253380: 2064 6570 656e 6420 6f6e 2074 656c 6e65   depend on telne
│ │ │ -00253390: 742d 7365 7276 6572 2e20 4578 6563 7574  t-server. Execut
│ │ │ -002533a0: 6520 7468 6973 0a23 2072 656d 6564 6961  e this.# remedia
│ │ │ -002533b0: 7469 6f6e 2041 4654 4552 2074 6573 7469  tion AFTER testi
│ │ │ -002533c0: 6e67 206f 6e20 6120 6e6f 6e2d 7072 6f64  ng on a non-prod
│ │ │ -002533d0: 7563 7469 6f6e 0a23 2073 7973 7465 6d21  uction.# system!
│ │ │ -002533e0: 0a0a 0a69 6620 7270 6d20 2d71 202d 2d71  ...if rpm -q --q
│ │ │ -002533f0: 7569 6574 2022 7465 6c6e 6574 2d73 6572  uiet "telnet-ser
│ │ │ -00253400: 7665 7222 203b 2074 6865 6e0a 646e 6620  ver" ; then.dnf 
│ │ │ -00253410: 7265 6d6f 7665 202d 7920 2d2d 6e6f 6175  remove -y --noau
│ │ │ -00253420: 746f 7265 6d6f 7665 2022 7465 6c6e 6574  toremove "telnet
│ │ │ -00253430: 2d73 6572 7665 7222 0a66 690a 3c2f 636f  -server".fi.
< │ │ │ +00252a60: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +00252a70: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c
Co │ │ │ -00253260: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ -00253290: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ -002532b0: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ -002532c0: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ -002532e0: 3c2f 7468 3e3c 7464 3e64 6973 6162 6c65 disable │ │ │ -002532f0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Complexity │ │ │ +00252a30: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
D │ │ │ +00252a50: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:
Reboot:< │ │ │ +00252a80: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>false
S │ │ │ +00252aa0: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:disable
<
│ │ │ +00252ad0: 636f 6465 3e2d 206e 616d 653a 2027 556e  code>- name: 'Un
│ │ │ +00252ae0: 696e 7374 616c 6c20 7465 6c6e 6574 2d73  install telnet-s
│ │ │ +00252af0: 6572 7665 7220 5061 636b 6167 653a 2045  erver Package: E
│ │ │ +00252b00: 6e73 7572 6520 7465 6c6e 6574 2d73 6572  nsure telnet-ser
│ │ │ +00252b10: 7665 7220 6973 2072 656d 6f76 6564 270a  ver is removed'.
│ │ │ +00252b20: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ +00252b30: 6e2e 7061 636b 6167 653a 0a20 2020 206e  n.package:.    n
│ │ │ +00252b40: 616d 653a 2074 656c 6e65 742d 7365 7276  ame: telnet-serv
│ │ │ +00252b50: 6572 0a20 2020 2073 7461 7465 3a20 6162  er.    state: ab
│ │ │ +00252b60: 7365 6e74 0a20 2074 6167 733a 0a20 202d  sent.  tags:.  -
│ │ │ +00252b70: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +00252b80: 3628 6129 0a20 202d 204e 4953 542d 3830  6(a).  - NIST-80
│ │ │ +00252b90: 302d 3533 2d43 4d2d 3728 6129 0a20 202d  0-53-CM-7(a).  -
│ │ │ +00252ba0: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +00252bb0: 3728 6229 0a20 202d 2050 4349 2d44 5353  7(b).  - PCI-DSS
│ │ │ +00252bc0: 2d52 6571 2d32 2e32 2e32 0a20 202d 2050  -Req-2.2.2.  - P
│ │ │ +00252bd0: 4349 2d44 5353 7634 2d32 2e32 0a20 202d  CI-DSSv4-2.2.  -
│ │ │ +00252be0: 2050 4349 2d44 5353 7634 2d32 2e32 2e34   PCI-DSSv4-2.2.4
│ │ │ +00252bf0: 0a20 202d 2064 6973 6162 6c65 5f73 7472  .  - disable_str
│ │ │ +00252c00: 6174 6567 790a 2020 2d20 6869 6768 5f73  ategy.  - high_s
│ │ │ +00252c10: 6576 6572 6974 790a 2020 2d20 6c6f 775f  everity.  - low_
│ │ │ +00252c20: 636f 6d70 6c65 7869 7479 0a20 202d 206c  complexity.  - l
│ │ │ +00252c30: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ +00252c40: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ +00252c50: 6564 0a20 202d 2070 6163 6b61 6765 5f74  ed.  - package_t
│ │ │ +00252c60: 656c 6e65 742d 7365 7276 6572 5f72 656d  elnet-server_rem
│ │ │ +00252c70: 6f76 6564 0a3c 2f63 6f64 653e 3c2f 7072  oved.
Remediation │ │ │ +00252d30: 2050 7570 7065 7420 736e 6970 7065 7420 Puppet snippet │ │ │ +00252d40: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
Complexity: │ │ │ +00252dd0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ +00252df0: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:low< │ │ │ +00252e10: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:falseSt │ │ │ +00252e40: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ +00252e50: 6469 7361 626c 653c 2f74 643e 3c2f 7472 disable
.include rem
│ │ │ +00252e80: 6f76 655f 7465 6c6e 6574 2d73 6572 7665  ove_telnet-serve
│ │ │ +00252e90: 720a 0a63 6c61 7373 2072 656d 6f76 655f  r..class remove_
│ │ │ +00252ea0: 7465 6c6e 6574 2d73 6572 7665 7220 7b0a  telnet-server {.
│ │ │ +00252eb0: 2020 7061 636b 6167 6520 7b20 2774 656c    package { 'tel
│ │ │ +00252ec0: 6e65 742d 7365 7276 6572 273a 0a20 2020  net-server':.   
│ │ │ +00252ed0: 2065 6e73 7572 6520 3d26 6774 3b20 2770   ensure => 'p
│ │ │ +00252ee0: 7572 6765 6427 2c0a 2020 7d0a 7d0a 3c2f  urged',.  }.}.
Re │ │ │ +00252fa0: 6d65 6469 6174 696f 6e20 5368 656c 6c20 mediation Shell │ │ │ +00252fb0: 7363 7269 7074 20e2 87b2 3c2f 613e 3c62 script ...
Comp │ │ │ +00253040: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +00253050: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ +00253070: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ +00253090: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +002530a0: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ +002530e0: 3c70 7265 3e3c 636f 6465 3e0a 2320 4341
.# CA
│ │ │ +002530f0: 5554 494f 4e3a 2054 6869 7320 7265 6d65  UTION: This reme
│ │ │ +00253100: 6469 6174 696f 6e20 7363 7269 7074 2077  diation script w
│ │ │ +00253110: 696c 6c20 7265 6d6f 7665 2074 656c 6e65  ill remove telne
│ │ │ +00253120: 742d 7365 7276 6572 0a23 2066 726f 6d20  t-server.# from 
│ │ │ +00253130: 7468 6520 7379 7374 656d 2c20 616e 6420  the system, and 
│ │ │ +00253140: 6d61 7920 7265 6d6f 7665 2061 6e79 2070  may remove any p
│ │ │ +00253150: 6163 6b61 6765 730a 2320 7468 6174 2064  ackages.# that d
│ │ │ +00253160: 6570 656e 6420 6f6e 2074 656c 6e65 742d  epend on telnet-
│ │ │ +00253170: 7365 7276 6572 2e20 4578 6563 7574 6520  server. Execute 
│ │ │ +00253180: 7468 6973 0a23 2072 656d 6564 6961 7469  this.# remediati
│ │ │ +00253190: 6f6e 2041 4654 4552 2074 6573 7469 6e67  on AFTER testing
│ │ │ +002531a0: 206f 6e20 6120 6e6f 6e2d 7072 6f64 7563   on a non-produc
│ │ │ +002531b0: 7469 6f6e 0a23 2073 7973 7465 6d21 0a0a  tion.# system!..
│ │ │ +002531c0: 0a69 6620 7270 6d20 2d71 202d 2d71 7569  .if rpm -q --qui
│ │ │ +002531d0: 6574 2022 7465 6c6e 6574 2d73 6572 7665  et "telnet-serve
│ │ │ +002531e0: 7222 203b 2074 6865 6e0a 646e 6620 7265  r" ; then.dnf re
│ │ │ +002531f0: 6d6f 7665 202d 7920 2d2d 6e6f 6175 746f  move -y --noauto
│ │ │ +00253200: 7265 6d6f 7665 2022 7465 6c6e 6574 2d73  remove "telnet-s
│ │ │ +00253210: 6572 7665 7222 0a66 690a 3c2f 636f 6465  erver".fi.
Remedi │ │ │ +002532d0: 6174 696f 6e20 416e 6163 6f6e 6461 2073 ation Anaconda s │ │ │ +002532e0: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ +00253370: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +00253380: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ +002533a0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ +002533c0: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +002533d0: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ +00253410: 3c70 7265 3e3c 636f 6465 3e0a 0a70 6163
..pac
│ │ │ +00253420: 6b61 6765 202d 2d72 656d 6f76 653d 7465  kage --remove=te
│ │ │ +00253430: 6c6e 6574 2d73 6572 7665 720a 3c2f 636f  lnet-server.
< │ │ │ 00253450: 2f64 6976 3e3c 2f74 643e 3c2f 7472 3e3c /div>< │ │ │ 00253460: 2f74 626f 6479 3e3c 2f74 6162 6c65 3e3c /tbody>< │ │ │ 00253470: 2f74 643e 3c2f 7472 3e3c 7472 2064 6174 /td> │ │ │ -00254010: 5265 6d65 6469 6174 696f 6e20 416e 6163 Remediation Anac │ │ │ -00254020: 6f6e 6461 2073 6e69 7070 6574 20e2 87b2 onda snippet ... │ │ │ -00254030: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity: │ │ │ -00254100: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -00254110: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
..package --rem
│ │ │ -00254170: 6f76 653d 7465 6c6e 6574 0a3c 2f63 6f64  ove=telnet.
Remed │ │ │ -00254230: 6961 7469 6f6e 2050 7570 7065 7420 736e iation Puppet sn │ │ │ -00254240: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
low
Disru │ │ │ -002540e0: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ -002540f0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ -00254130: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ -00254140: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
│ │ │ -002542f0: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ -00254310: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ -00254340: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ -002542d0: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ -002542e0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ -00254300: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ -00254320: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -00254330: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:disable
< │ │ │ -00254370: 7072 653e 3c63 6f64 653e 0a69 6e63 6c75 pre>.inclu │ │ │ -00254380: 6465 2072 656d 6f76 655f 7465 6c6e 6574 de remove_telnet │ │ │ -00254390: 0a0a 636c 6173 7320 7265 6d6f 7665 5f74 ..class remove_t │ │ │ -002543a0: 656c 6e65 7420 7b0a 2020 7061 636b 6167 elnet {. packag │ │ │ -002543b0: 6520 7b20 2774 656c 6e65 7427 3a0a 2020 e { 'telnet':. │ │ │ -002543c0: 2020 656e 7375 7265 203d 2667 743b 2027 ensure => ' │ │ │ -002543d0: 7075 7267 6564 272c 0a20 207d 0a7d 0a3c purged',. }.}.< │ │ │ -002543e0: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469 /code>R │ │ │ -00254490: 656d 6564 6961 7469 6f6e 2041 6e73 6962 emediation Ansib │ │ │ -002544a0: 6c65 2073 6e69 7070 6574 20e2 87b2 3c2f le snippet ...
│ │ │ -00254540: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
-
│ │ │ -002545e0: 206e 616d 653a 2027 5265 6d6f 7665 2074   name: 'Remove t
│ │ │ -002545f0: 656c 6e65 7420 436c 6965 6e74 733a 2045  elnet Clients: E
│ │ │ -00254600: 6e73 7572 6520 7465 6c6e 6574 2069 7320  nsure telnet is 
│ │ │ -00254610: 7265 6d6f 7665 6427 0a20 2061 6e73 6962  removed'.  ansib
│ │ │ -00254620: 6c65 2e62 7569 6c74 696e 2e70 6163 6b61  le.builtin.packa
│ │ │ -00254630: 6765 3a0a 2020 2020 6e61 6d65 3a20 7465  ge:.    name: te
│ │ │ -00254640: 6c6e 6574 0a20 2020 2073 7461 7465 3a20  lnet.    state: 
│ │ │ -00254650: 6162 7365 6e74 0a20 2074 6167 733a 0a20  absent.  tags:. 
│ │ │ -00254660: 202d 204e 4953 542d 3830 302d 3137 312d   - NIST-800-171-
│ │ │ -00254670: 332e 312e 3133 0a20 202d 2050 4349 2d44  3.1.13.  - PCI-D
│ │ │ -00254680: 5353 7634 2d32 2e32 0a20 202d 2050 4349  SSv4-2.2.  - PCI
│ │ │ -00254690: 2d44 5353 7634 2d32 2e32 2e34 0a20 202d  -DSSv4-2.2.4.  -
│ │ │ -002546a0: 2064 6973 6162 6c65 5f73 7472 6174 6567   disable_strateg
│ │ │ -002546b0: 790a 2020 2d20 6c6f 775f 636f 6d70 6c65  y.  - low_comple
│ │ │ -002546c0: 7869 7479 0a20 202d 206c 6f77 5f64 6973  xity.  - low_dis
│ │ │ -002546d0: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f  ruption.  - low_
│ │ │ -002546e0: 7365 7665 7269 7479 0a20 202d 206e 6f5f  severity.  - no_
│ │ │ -002546f0: 7265 626f 6f74 5f6e 6565 6465 640a 2020  reboot_needed.  
│ │ │ -00254700: 2d20 7061 636b 6167 655f 7465 6c6e 6574  - package_telnet
│ │ │ -00254710: 5f72 656d 6f76 6564 0a3c 2f63 6f64 653e  _removed.
│ │ │ -00254720: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ -002547d0: 7469 6f6e 2053 6865 6c6c 2073 6372 6970 tion Shell scrip │ │ │ -002547e0: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ -00254860: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr> │ │ │ -002548a0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 disable
│ │ │ -00254530: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -00254560: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -00254570: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -002545b0: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ -002545c0: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Complexit │ │ │ -00254870: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low
│ │ │ -00254890: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption:low
Reboot: │ │ │ -002548c0: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false
│ │ │ -002548e0: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:
│ │ │ -00254910: 3c63 6f64 653e 0a23 2043 4155 5449 4f4e  .# CAUTION
│ │ │ -00254920: 3a20 5468 6973 2072 656d 6564 6961 7469  : This remediati
│ │ │ -00254930: 6f6e 2073 6372 6970 7420 7769 6c6c 2072  on script will r
│ │ │ -00254940: 656d 6f76 6520 7465 6c6e 6574 0a23 2066  emove telnet.# f
│ │ │ -00254950: 726f 6d20 7468 6520 7379 7374 656d 2c20  rom the system, 
│ │ │ -00254960: 616e 6420 6d61 7920 7265 6d6f 7665 2061  and may remove a
│ │ │ -00254970: 6e79 2070 6163 6b61 6765 730a 2320 7468  ny packages.# th
│ │ │ -00254980: 6174 2064 6570 656e 6420 6f6e 2074 656c  at depend on tel
│ │ │ -00254990: 6e65 742e 2045 7865 6375 7465 2074 6869  net. Execute thi
│ │ │ -002549a0: 730a 2320 7265 6d65 6469 6174 696f 6e20  s.# remediation 
│ │ │ -002549b0: 4146 5445 5220 7465 7374 696e 6720 6f6e  AFTER testing on
│ │ │ -002549c0: 2061 206e 6f6e 2d70 726f 6475 6374 696f   a non-productio
│ │ │ -002549d0: 6e0a 2320 7379 7374 656d 210a 0a0a 6966  n.# system!...if
│ │ │ -002549e0: 2072 706d 202d 7120 2d2d 7175 6965 7420   rpm -q --quiet 
│ │ │ -002549f0: 2274 656c 6e65 7422 203b 2074 6865 6e0a  "telnet" ; then.
│ │ │ -00254a00: 646e 6620 7265 6d6f 7665 202d 7920 2d2d  dnf remove -y --
│ │ │ -00254a10: 6e6f 6175 746f 7265 6d6f 7665 2022 7465  noautoremove "te
│ │ │ -00254a20: 6c6e 6574 220a 6669 0a3c 2f63 6f64 653e  lnet".fi.
│ │ │ +00254010: 5265 6d65 6469 6174 696f 6e20 416e 7369  Remediation Ansi
│ │ │ +00254020: 626c 6520 736e 6970 7065 7420 e287 b23c  ble snippet ...<
│ │ │ +00254030: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173  /a>
< │ │ │ +00254100: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +00254110: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

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

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

Re │ │ │ +002545b0: 6d65 6469 6174 696f 6e20 5368 656c 6c20 mediation Shell │ │ │ +002545c0: 7363 7269 7074 20e2 87b2 3c2f 613e 3c62 script ...
Comp │ │ │ +00254650: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ +00254660: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ +00254680: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ +002546a0: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +002546b0: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:disable
│ │ │ +002546f0: 3c70 7265 3e3c 636f 6465 3e0a 2320 4341
.# CA
│ │ │ +00254700: 5554 494f 4e3a 2054 6869 7320 7265 6d65  UTION: This reme
│ │ │ +00254710: 6469 6174 696f 6e20 7363 7269 7074 2077  diation script w
│ │ │ +00254720: 696c 6c20 7265 6d6f 7665 2074 656c 6e65  ill remove telne
│ │ │ +00254730: 740a 2320 6672 6f6d 2074 6865 2073 7973  t.# from the sys
│ │ │ +00254740: 7465 6d2c 2061 6e64 206d 6179 2072 656d  tem, and may rem
│ │ │ +00254750: 6f76 6520 616e 7920 7061 636b 6167 6573  ove any packages
│ │ │ +00254760: 0a23 2074 6861 7420 6465 7065 6e64 206f  .# that depend o
│ │ │ +00254770: 6e20 7465 6c6e 6574 2e20 4578 6563 7574  n telnet. Execut
│ │ │ +00254780: 6520 7468 6973 0a23 2072 656d 6564 6961  e this.# remedia
│ │ │ +00254790: 7469 6f6e 2041 4654 4552 2074 6573 7469  tion AFTER testi
│ │ │ +002547a0: 6e67 206f 6e20 6120 6e6f 6e2d 7072 6f64  ng on a non-prod
│ │ │ +002547b0: 7563 7469 6f6e 0a23 2073 7973 7465 6d21  uction.# system!
│ │ │ +002547c0: 0a0a 0a69 6620 7270 6d20 2d71 202d 2d71  ...if rpm -q --q
│ │ │ +002547d0: 7569 6574 2022 7465 6c6e 6574 2220 3b20  uiet "telnet" ; 
│ │ │ +002547e0: 7468 656e 0a64 6e66 2072 656d 6f76 6520  then.dnf remove 
│ │ │ +002547f0: 2d79 202d 2d6e 6f61 7574 6f72 656d 6f76  -y --noautoremov
│ │ │ +00254800: 6520 2274 656c 6e65 7422 0a66 690a 3c2f  e "telnet".fi.
Re │ │ │ +002548c0: 6d65 6469 6174 696f 6e20 416e 6163 6f6e mediation Anacon │ │ │ +002548d0: 6461 2073 6e69 7070 6574 20e2 87b2 3c2f da snippet ...
│ │ │ +00254970: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
.
│ │ │ +00254a10: 0a70 6163 6b61 6765 202d 2d72 656d 6f76  .package --remov
│ │ │ +00254a20: 653d 7465 6c6e 6574 0a3c 2f63 6f64 653e  e=telnet.
│ │ │  00254a30: 3c2f 7072 653e 3c2f 6469 763e 3c2f 6469  
│ │ │ +00254960: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +00254990: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +002549a0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +002549e0: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ +002549f0: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
│ │ │ -00255f90: 5265 6d65 6469 6174 696f 6e20 416e 6163 Remediation Anac │ │ │ -00255fa0: 6f6e 6461 2073 6e69 7070 6574 20e2 87b2 onda snippet ... │ │ │ -00255fb0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61

Complexity: │ │ │ -00256080: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -00256090: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
..package --rem
│ │ │ -002560f0: 6f76 653d 7466 7470 2d73 6572 7665 720a  ove=tftp-server.
│ │ │ -00256100: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ -002561b0: 5265 6d65 6469 6174 696f 6e20 5075 7070 Remediation Pupp │ │ │ -002561c0: 6574 2073 6e69 7070 6574 20e2 87b2 3c2f et snippet ...
low
Disru │ │ │ -00256060: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ -00256070: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ -002560b0: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ -002560c0: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
│ │ │ -00256260: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
.
│ │ │ -00256300: 696e 636c 7564 6520 7265 6d6f 7665 5f74  include remove_t
│ │ │ -00256310: 6674 702d 7365 7276 6572 0a0a 636c 6173  ftp-server..clas
│ │ │ -00256320: 7320 7265 6d6f 7665 5f74 6674 702d 7365  s remove_tftp-se
│ │ │ -00256330: 7276 6572 207b 0a20 2070 6163 6b61 6765  rver {.  package
│ │ │ -00256340: 207b 2027 7466 7470 2d73 6572 7665 7227   { 'tftp-server'
│ │ │ -00256350: 3a0a 2020 2020 656e 7375 7265 203d 2667  :.    ensure =&g
│ │ │ -00256360: 743b 2027 7075 7267 6564 272c 0a20 207d  t; 'purged',.  }
│ │ │ -00256370: 0a7d 0a3c 2f63 6f64 653e 3c2f 7072 653e  .}.
│ │ │ -00256380: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22 Remediation A │ │ │ -00256430: 6e73 6962 6c65 2073 6e69 7070 6574 20e2 nsible snippet . │ │ │ -00256440: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ -00256250: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -00256280: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -00256290: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -002562d0: 793a 3c2f 7468 3e3c 7464 3e64 6973 6162 y:disab │ │ │ -002562e0: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
│ │ │ -002564c0: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -002564e0: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ -00256530: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 │ │ │ -00256560: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:< │ │ │ -002564d0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ -002564f0: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ -00256540: 6174 6567 793a 3c2f 7468 3e3c 7464 3e64 ategy:d │ │ │ -00256550: 6973 6162 6c65 3c2f 7464 3e3c 2f74 723e isable
- name: 'Unin
│ │ │ -00256580: 7374 616c 6c20 7466 7470 2d73 6572 7665  stall tftp-serve
│ │ │ -00256590: 7220 5061 636b 6167 653a 2045 6e73 7572  r Package: Ensur
│ │ │ -002565a0: 6520 7466 7470 2d73 6572 7665 7220 6973  e tftp-server is
│ │ │ -002565b0: 2072 656d 6f76 6564 270a 2020 616e 7369   removed'.  ansi
│ │ │ -002565c0: 626c 652e 6275 696c 7469 6e2e 7061 636b  ble.builtin.pack
│ │ │ -002565d0: 6167 653a 0a20 2020 206e 616d 653a 2074  age:.    name: t
│ │ │ -002565e0: 6674 702d 7365 7276 6572 0a20 2020 2073  ftp-server.    s
│ │ │ -002565f0: 7461 7465 3a20 6162 7365 6e74 0a20 2074  tate: absent.  t
│ │ │ -00256600: 6167 733a 0a20 202d 204e 4953 542d 3830  ags:.  - NIST-80
│ │ │ -00256610: 302d 3533 2d43 4d2d 3628 6129 0a20 202d  0-53-CM-6(a).  -
│ │ │ -00256620: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -00256630: 3728 6129 0a20 202d 204e 4953 542d 3830  7(a).  - NIST-80
│ │ │ -00256640: 302d 3533 2d43 4d2d 3728 6229 0a20 202d  0-53-CM-7(b).  -
│ │ │ -00256650: 2050 4349 2d44 5353 7634 2d32 2e32 0a20   PCI-DSSv4-2.2. 
│ │ │ -00256660: 202d 2050 4349 2d44 5353 7634 2d32 2e32   - PCI-DSSv4-2.2
│ │ │ -00256670: 2e34 0a20 202d 2064 6973 6162 6c65 5f73  .4.  - disable_s
│ │ │ -00256680: 7472 6174 6567 790a 2020 2d20 6869 6768  trategy.  - high
│ │ │ -00256690: 5f73 6576 6572 6974 790a 2020 2d20 6c6f  _severity.  - lo
│ │ │ -002566a0: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ -002566b0: 206c 6f77 5f64 6973 7275 7074 696f 6e0a   low_disruption.
│ │ │ -002566c0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ -002566d0: 6564 6564 0a20 202d 2070 6163 6b61 6765  eded.  - package
│ │ │ -002566e0: 5f74 6674 702d 7365 7276 6572 5f72 656d  _tftp-server_rem
│ │ │ -002566f0: 6f76 6564 0a3c 2f63 6f64 653e 3c2f 7072  oved.
Remediation │ │ │ -002567b0: 2053 6865 6c6c 2073 6372 6970 7420 e287 Shell script .. │ │ │ -002567c0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ -00256840: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -00256860: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -002568b0: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>< │ │ │ -002568e0: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
.# CAUTION: Th
│ │ │ -00256900: 6973 2072 656d 6564 6961 7469 6f6e 2073  is remediation s
│ │ │ -00256910: 6372 6970 7420 7769 6c6c 2072 656d 6f76  cript will remov
│ │ │ -00256920: 6520 7466 7470 2d73 6572 7665 720a 2320  e tftp-server.# 
│ │ │ -00256930: 6672 6f6d 2074 6865 2073 7973 7465 6d2c  from the system,
│ │ │ -00256940: 2061 6e64 206d 6179 2072 656d 6f76 6520   and may remove 
│ │ │ -00256950: 616e 7920 7061 636b 6167 6573 0a23 2074  any packages.# t
│ │ │ -00256960: 6861 7420 6465 7065 6e64 206f 6e20 7466  hat depend on tf
│ │ │ -00256970: 7470 2d73 6572 7665 722e 2045 7865 6375  tp-server. Execu
│ │ │ -00256980: 7465 2074 6869 730a 2320 7265 6d65 6469  te this.# remedi
│ │ │ -00256990: 6174 696f 6e20 4146 5445 5220 7465 7374  ation AFTER test
│ │ │ -002569a0: 696e 6720 6f6e 2061 206e 6f6e 2d70 726f  ing on a non-pro
│ │ │ -002569b0: 6475 6374 696f 6e0a 2320 7379 7374 656d  duction.# system
│ │ │ -002569c0: 210a 0a0a 6966 2072 706d 202d 7120 2d2d  !...if rpm -q --
│ │ │ -002569d0: 7175 6965 7420 2274 6674 702d 7365 7276  quiet "tftp-serv
│ │ │ -002569e0: 6572 2220 3b20 7468 656e 0a64 6e66 2072  er" ; then.dnf r
│ │ │ -002569f0: 656d 6f76 6520 2d79 202d 2d6e 6f61 7574  emove -y --noaut
│ │ │ -00256a00: 6f72 656d 6f76 6520 2274 6674 702d 7365  oremove "tftp-se
│ │ │ -00256a10: 7276 6572 220a 6669 0a3c 2f63 6f64 653e  rver".fi.
│ │ │ +00255f90: 5265 6d65 6469 6174 696f 6e20 416e 7369  Remediation Ansi
│ │ │ +00255fa0: 626c 6520 736e 6970 7065 7420 e287 b23c  ble snippet ...<
│ │ │ +00255fb0: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173  /a>
low
Disr │ │ │ -00256870: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -00256880: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ -002568c0: 7465 6779 3a3c 2f74 683e 3c74 643e 6469 tegy:di │ │ │ -002568d0: 7361 626c 653c 2f74 643e 3c2f 7472 3e3c sable
< │ │ │ +00256080: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +00256090: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false

│ │ │ +002560e0: 2d20 6e61 6d65 3a20 2755 6e69 6e73 7461  - name: 'Uninsta
│ │ │ +002560f0: 6c6c 2074 6674 702d 7365 7276 6572 2050  ll tftp-server P
│ │ │ +00256100: 6163 6b61 6765 3a20 456e 7375 7265 2074  ackage: Ensure t
│ │ │ +00256110: 6674 702d 7365 7276 6572 2069 7320 7265  ftp-server is re
│ │ │ +00256120: 6d6f 7665 6427 0a20 2061 6e73 6962 6c65  moved'.  ansible
│ │ │ +00256130: 2e62 7569 6c74 696e 2e70 6163 6b61 6765  .builtin.package
│ │ │ +00256140: 3a0a 2020 2020 6e61 6d65 3a20 7466 7470  :.    name: tftp
│ │ │ +00256150: 2d73 6572 7665 720a 2020 2020 7374 6174  -server.    stat
│ │ │ +00256160: 653a 2061 6273 656e 740a 2020 7461 6773  e: absent.  tags
│ │ │ +00256170: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35  :.  - NIST-800-5
│ │ │ +00256180: 332d 434d 2d36 2861 290a 2020 2d20 4e49  3-CM-6(a).  - NI
│ │ │ +00256190: 5354 2d38 3030 2d35 332d 434d 2d37 2861  ST-800-53-CM-7(a
│ │ │ +002561a0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +002561b0: 332d 434d 2d37 2862 290a 2020 2d20 5043  3-CM-7(b).  - PC
│ │ │ +002561c0: 492d 4453 5376 342d 322e 320a 2020 2d20  I-DSSv4-2.2.  - 
│ │ │ +002561d0: 5043 492d 4453 5376 342d 322e 322e 340a  PCI-DSSv4-2.2.4.
│ │ │ +002561e0: 2020 2d20 6469 7361 626c 655f 7374 7261    - disable_stra
│ │ │ +002561f0: 7465 6779 0a20 202d 2068 6967 685f 7365  tegy.  - high_se
│ │ │ +00256200: 7665 7269 7479 0a20 202d 206c 6f77 5f63  verity.  - low_c
│ │ │ +00256210: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f  omplexity.  - lo
│ │ │ +00256220: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ +00256230: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ +00256240: 640a 2020 2d20 7061 636b 6167 655f 7466  d.  - package_tf
│ │ │ +00256250: 7470 2d73 6572 7665 725f 7265 6d6f 7665  tp-server_remove
│ │ │ +00256260: 640a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  d.
< │ │ │ +00256270: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Pu │ │ │ +00256320: 7070 6574 2073 6e69 7070 6574 20e2 87b2 ppet snippet ... │ │ │ +00256330: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity:low
Disrup │ │ │ +00256060: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ +00256070: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ +002560b0: 6779 3a3c 2f74 683e 3c74 643e 6469 7361 gy:disa │ │ │ +002560c0: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Complexity: │ │ │ +00256400: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +00256410: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
.include remove
│ │ │ +00256470: 5f74 6674 702d 7365 7276 6572 0a0a 636c  _tftp-server..cl
│ │ │ +00256480: 6173 7320 7265 6d6f 7665 5f74 6674 702d  ass remove_tftp-
│ │ │ +00256490: 7365 7276 6572 207b 0a20 2070 6163 6b61  server {.  packa
│ │ │ +002564a0: 6765 207b 2027 7466 7470 2d73 6572 7665  ge { 'tftp-serve
│ │ │ +002564b0: 7227 3a0a 2020 2020 656e 7375 7265 203d  r':.    ensure =
│ │ │ +002564c0: 2667 743b 2027 7075 7267 6564 272c 0a20  > 'purged',. 
│ │ │ +002564d0: 207d 0a7d 0a3c 2f63 6f64 653e 3c2f 7072   }.}.Remediation
│ │ │ +00256590: 2053 6865 6c6c 2073 6372 6970 7420 e287   Shell script ..
│ │ │ +002565a0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c  .
low
Disru │ │ │ +002563e0: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +002563f0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +00256430: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ +00256440: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
< │ │ │ +00256620: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ +00256640: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ +00256690: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>< │ │ │ +002566c0: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
.# CAUTION: Th
│ │ │ +002566e0: 6973 2072 656d 6564 6961 7469 6f6e 2073  is remediation s
│ │ │ +002566f0: 6372 6970 7420 7769 6c6c 2072 656d 6f76  cript will remov
│ │ │ +00256700: 6520 7466 7470 2d73 6572 7665 720a 2320  e tftp-server.# 
│ │ │ +00256710: 6672 6f6d 2074 6865 2073 7973 7465 6d2c  from the system,
│ │ │ +00256720: 2061 6e64 206d 6179 2072 656d 6f76 6520   and may remove 
│ │ │ +00256730: 616e 7920 7061 636b 6167 6573 0a23 2074  any packages.# t
│ │ │ +00256740: 6861 7420 6465 7065 6e64 206f 6e20 7466  hat depend on tf
│ │ │ +00256750: 7470 2d73 6572 7665 722e 2045 7865 6375  tp-server. Execu
│ │ │ +00256760: 7465 2074 6869 730a 2320 7265 6d65 6469  te this.# remedi
│ │ │ +00256770: 6174 696f 6e20 4146 5445 5220 7465 7374  ation AFTER test
│ │ │ +00256780: 696e 6720 6f6e 2061 206e 6f6e 2d70 726f  ing on a non-pro
│ │ │ +00256790: 6475 6374 696f 6e0a 2320 7379 7374 656d  duction.# system
│ │ │ +002567a0: 210a 0a0a 6966 2072 706d 202d 7120 2d2d  !...if rpm -q --
│ │ │ +002567b0: 7175 6965 7420 2274 6674 702d 7365 7276  quiet "tftp-serv
│ │ │ +002567c0: 6572 2220 3b20 7468 656e 0a64 6e66 2072  er" ; then.dnf r
│ │ │ +002567d0: 656d 6f76 6520 2d79 202d 2d6e 6f61 7574  emove -y --noaut
│ │ │ +002567e0: 6f72 656d 6f76 6520 2274 6674 702d 7365  oremove "tftp-se
│ │ │ +002567f0: 7276 6572 220a 6669 0a3c 2f63 6f64 653e  rver".fi.
│ │ │ +00256800: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ +002568b0: 7469 6f6e 2041 6e61 636f 6e64 6120 736e tion Anaconda sn │ │ │ +002568c0: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
low
Disr │ │ │ +00256650: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +00256660: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ +002566a0: 7465 6779 3a3c 2f74 683e 3c74 643e 6469 tegy:di │ │ │ +002566b0: 7361 626c 653c 2f74 643e 3c2f 7472 3e3c sable
│ │ │ +00256970: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ +00256990: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ +002569c0: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ +00256950: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ +00256960: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ +00256980: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ +002569a0: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ +002569b0: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:disable
< │ │ │ +002569f0: 7072 653e 3c63 6f64 653e 0a0a 7061 636b pre>..pack │ │ │ +00256a00: 6167 6520 2d2d 7265 6d6f 7665 3d74 6674 age --remove=tft │ │ │ +00256a10: 702d 7365 7276 6572 0a3c 2f63 6f64 653e p-server. │ │ │ 00256a20: 3c2f 7072 653e 3c2f 6469 763e 3c2f 6469
Remediation Ana │ │ │ -002574a0: 636f 6e64 6120 736e 6970 7065 7420 e287 conda snippet .. │ │ │ -002574b0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
< │ │ │ -00257530: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -00257550: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -002575a0: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>< │ │ │ -002575d0: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
..package --re
│ │ │ -002575f0: 6d6f 7665 3d74 6674 700a 3c2f 636f 6465  move=tftp.
Remedi │ │ │ -002576b0: 6174 696f 6e20 5075 7070 6574 2073 6e69 ation Puppet sni │ │ │ -002576c0: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -002576d0: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -00257700: 3c74 6162 6c65 2063 6c61 7373 3d22 7461
low
Disr │ │ │ -00257560: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -00257570: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ -002575b0: 7465 6779 3a3c 2f74 683e 3c74 643e 6469 tegy:di │ │ │ -002575c0: 7361 626c 653c 2f74 643e 3c2f 7472 3e3c sable
< │ │ │ -00257770: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ -00257790: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ -002577c0: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
Comple │ │ │ -00257750: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ -00257760: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ -002577a0: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ -002577b0: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
disable

.includ │ │ │ -00257800: 6520 7265 6d6f 7665 5f74 6674 700a 0a63 e remove_tftp..c │ │ │ -00257810: 6c61 7373 2072 656d 6f76 655f 7466 7470 lass remove_tftp │ │ │ -00257820: 207b 0a20 2070 6163 6b61 6765 207b 2027 {. package { ' │ │ │ -00257830: 7466 7470 273a 0a20 2020 2065 6e73 7572 tftp':. ensur │ │ │ -00257840: 6520 3d26 6774 3b20 2770 7572 6765 6427 e => 'purged' │ │ │ -00257850: 2c0a 2020 7d0a 7d0a 3c2f 636f 6465 3e3c ,. }.}.< │ │ │ -00257860: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c /pre>

Remediat │ │ │ -00257910: 696f 6e20 416e 7369 626c 6520 736e 6970 ion Ansible snip │ │ │ -00257920: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ -00257930: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -00257940: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -00257950: 7365 2220 6964 3d22 6964 3739 3022 3e3c se" id="id790">< │ │ │ -00257960: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ -00257970: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ -00257980: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ -00257990: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ -002579a0: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Complex │ │ │ -002579b0: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ -002579c0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Disruption:lowReboo │ │ │ -00257a00: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -00257a10: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ -00257a30: 3c74 643e 6469 7361 626c 653c 2f74 643e disable │ │ │ -00257a40: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072 - name: │ │ │ -00257a60: 2752 656d 6f76 6520 7466 7470 2044 6165 'Remove tftp Dae │ │ │ -00257a70: 6d6f 6e3a 2045 6e73 7572 6520 7466 7470 mon: Ensure tftp │ │ │ -00257a80: 2069 7320 7265 6d6f 7665 6427 0a20 2061 is removed'. a │ │ │ -00257a90: 6e73 6962 6c65 2e62 7569 6c74 696e 2e70 nsible.builtin.p │ │ │ -00257aa0: 6163 6b61 6765 3a0a 2020 2020 6e61 6d65 ackage:. name │ │ │ -00257ab0: 3a20 7466 7470 0a20 2020 2073 7461 7465 : tftp. state │ │ │ -00257ac0: 3a20 6162 7365 6e74 0a20 2074 6167 733a : absent. tags: │ │ │ -00257ad0: 0a20 202d 2050 4349 2d44 5353 7634 2d32 . - PCI-DSSv4-2 │ │ │ -00257ae0: 2e32 0a20 202d 2050 4349 2d44 5353 7634 .2. - PCI-DSSv4 │ │ │ -00257af0: 2d32 2e32 2e34 0a20 202d 2064 6973 6162 -2.2.4. - disab │ │ │ -00257b00: 6c65 5f73 7472 6174 6567 790a 2020 2d20 le_strategy. - │ │ │ -00257b10: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20 low_complexity. │ │ │ -00257b20: 202d 206c 6f77 5f64 6973 7275 7074 696f - low_disruptio │ │ │ -00257b30: 6e0a 2020 2d20 6c6f 775f 7365 7665 7269 n. - low_severi │ │ │ -00257b40: 7479 0a20 202d 206e 6f5f 7265 626f 6f74 ty. - no_reboot │ │ │ -00257b50: 5f6e 6565 6465 640a 2020 2d20 7061 636b _needed. - pack │ │ │ -00257b60: 6167 655f 7466 7470 5f72 656d 6f76 6564 age_tftp_removed │ │ │ -00257b70: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f .Remediation She │ │ │ -00257c30: 6c6c 2073 6372 6970 7420 e287 b23c 2f61 ll script ...
< │ │ │ -00257cd0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -00257ce0: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ -00257d30: 3c74 723e 3c74 683e 5374 7261 7465 6779
.#
│ │ │ -00257d70: 2043 4155 5449 4f4e 3a20 5468 6973 2072   CAUTION: This r
│ │ │ -00257d80: 656d 6564 6961 7469 6f6e 2073 6372 6970  emediation scrip
│ │ │ -00257d90: 7420 7769 6c6c 2072 656d 6f76 6520 7466  t will remove tf
│ │ │ -00257da0: 7470 0a23 2066 726f 6d20 7468 6520 7379  tp.# from the sy
│ │ │ -00257db0: 7374 656d 2c20 616e 6420 6d61 7920 7265  stem, and may re
│ │ │ -00257dc0: 6d6f 7665 2061 6e79 2070 6163 6b61 6765  move any package
│ │ │ -00257dd0: 730a 2320 7468 6174 2064 6570 656e 6420  s.# that depend 
│ │ │ -00257de0: 6f6e 2074 6674 702e 2045 7865 6375 7465  on tftp. Execute
│ │ │ -00257df0: 2074 6869 730a 2320 7265 6d65 6469 6174   this.# remediat
│ │ │ -00257e00: 696f 6e20 4146 5445 5220 7465 7374 696e  ion AFTER testin
│ │ │ -00257e10: 6720 6f6e 2061 206e 6f6e 2d70 726f 6475  g on a non-produ
│ │ │ -00257e20: 6374 696f 6e0a 2320 7379 7374 656d 210a  ction.# system!.
│ │ │ -00257e30: 0a0a 6966 2072 706d 202d 7120 2d2d 7175  ..if rpm -q --qu
│ │ │ -00257e40: 6965 7420 2274 6674 7022 203b 2074 6865  iet "tftp" ; the
│ │ │ -00257e50: 6e0a 646e 6620 7265 6d6f 7665 202d 7920  n.dnf remove -y 
│ │ │ -00257e60: 2d2d 6e6f 6175 746f 7265 6d6f 7665 2022  --noautoremove "
│ │ │ -00257e70: 7466 7470 220a 6669 0a3c 2f63 6f64 653e  tftp".fi.
│ │ │ +00257490: 3e52 656d 6564 6961 7469 6f6e 2041 6e73  >Remediation Ans
│ │ │ +002574a0: 6962 6c65 2073 6e69 7070 6574 20e2 87b2  ible snippet ...
│ │ │ +002574b0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61  
C │ │ │ -00257cc0: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -00257cf0: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ -00257d00: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -00257d40: 3a3c 2f74 683e 3c74 643e 6469 7361 626c :disabl │ │ │ -00257d50: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
Complexity: │ │ │ +00257580: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +00257590: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
- name: 'Remove
│ │ │ +002575f0: 2074 6674 7020 4461 656d 6f6e 3a20 456e   tftp Daemon: En
│ │ │ +00257600: 7375 7265 2074 6674 7020 6973 2072 656d  sure tftp is rem
│ │ │ +00257610: 6f76 6564 270a 2020 616e 7369 626c 652e  oved'.  ansible.
│ │ │ +00257620: 6275 696c 7469 6e2e 7061 636b 6167 653a  builtin.package:
│ │ │ +00257630: 0a20 2020 206e 616d 653a 2074 6674 700a  .    name: tftp.
│ │ │ +00257640: 2020 2020 7374 6174 653a 2061 6273 656e      state: absen
│ │ │ +00257650: 740a 2020 7461 6773 3a0a 2020 2d20 5043  t.  tags:.  - PC
│ │ │ +00257660: 492d 4453 5376 342d 322e 320a 2020 2d20  I-DSSv4-2.2.  - 
│ │ │ +00257670: 5043 492d 4453 5376 342d 322e 322e 340a  PCI-DSSv4-2.2.4.
│ │ │ +00257680: 2020 2d20 6469 7361 626c 655f 7374 7261    - disable_stra
│ │ │ +00257690: 7465 6779 0a20 202d 206c 6f77 5f63 6f6d  tegy.  - low_com
│ │ │ +002576a0: 706c 6578 6974 790a 2020 2d20 6c6f 775f  plexity.  - low_
│ │ │ +002576b0: 6469 7372 7570 7469 6f6e 0a20 202d 206c  disruption.  - l
│ │ │ +002576c0: 6f77 5f73 6576 6572 6974 790a 2020 2d20  ow_severity.  - 
│ │ │ +002576d0: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ +002576e0: 0a20 202d 2070 6163 6b61 6765 5f74 6674  .  - package_tft
│ │ │ +002576f0: 705f 7265 6d6f 7665 640a 3c2f 636f 6465  p_removed.
Remedi │ │ │ +002577b0: 6174 696f 6e20 5075 7070 6574 2073 6e69 ation Puppet sni │ │ │ +002577c0: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ +002577d0: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ +00257800: 3c74 6162 6c65 2063 6c61 7373 3d22 7461
low
Disru │ │ │ +00257560: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +00257570: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +002575b0: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ +002575c0: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
< │ │ │ +00257870: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ +00257890: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ +002578c0: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:
Comple │ │ │ +00257850: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ +00257860: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ +002578a0: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +002578b0: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
disable

.includ │ │ │ +00257900: 6520 7265 6d6f 7665 5f74 6674 700a 0a63 e remove_tftp..c │ │ │ +00257910: 6c61 7373 2072 656d 6f76 655f 7466 7470 lass remove_tftp │ │ │ +00257920: 207b 0a20 2070 6163 6b61 6765 207b 2027 {. package { ' │ │ │ +00257930: 7466 7470 273a 0a20 2020 2065 6e73 7572 tftp':. ensur │ │ │ +00257940: 6520 3d26 6774 3b20 2770 7572 6765 6427 e => 'purged' │ │ │ +00257950: 2c0a 2020 7d0a 7d0a 3c2f 636f 6465 3e3c ,. }.}.< │ │ │ +00257960: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c /pre>

Remediat │ │ │ +00257a10: 696f 6e20 5368 656c 6c20 7363 7269 7074 ion Shell script │ │ │ +00257a20: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Complexity │ │ │ +00257ab0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ +00257ad0: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ +00257ae0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +00257af0: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ +00257b00: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ +00257b20: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:disable
<
│ │ │ +00257b50: 636f 6465 3e0a 2320 4341 5554 494f 4e3a  code>.# CAUTION:
│ │ │ +00257b60: 2054 6869 7320 7265 6d65 6469 6174 696f   This remediatio
│ │ │ +00257b70: 6e20 7363 7269 7074 2077 696c 6c20 7265  n script will re
│ │ │ +00257b80: 6d6f 7665 2074 6674 700a 2320 6672 6f6d  move tftp.# from
│ │ │ +00257b90: 2074 6865 2073 7973 7465 6d2c 2061 6e64   the system, and
│ │ │ +00257ba0: 206d 6179 2072 656d 6f76 6520 616e 7920   may remove any 
│ │ │ +00257bb0: 7061 636b 6167 6573 0a23 2074 6861 7420  packages.# that 
│ │ │ +00257bc0: 6465 7065 6e64 206f 6e20 7466 7470 2e20  depend on tftp. 
│ │ │ +00257bd0: 4578 6563 7574 6520 7468 6973 0a23 2072  Execute this.# r
│ │ │ +00257be0: 656d 6564 6961 7469 6f6e 2041 4654 4552  emediation AFTER
│ │ │ +00257bf0: 2074 6573 7469 6e67 206f 6e20 6120 6e6f   testing on a no
│ │ │ +00257c00: 6e2d 7072 6f64 7563 7469 6f6e 0a23 2073  n-production.# s
│ │ │ +00257c10: 7973 7465 6d21 0a0a 0a69 6620 7270 6d20  ystem!...if rpm 
│ │ │ +00257c20: 2d71 202d 2d71 7569 6574 2022 7466 7470  -q --quiet "tftp
│ │ │ +00257c30: 2220 3b20 7468 656e 0a64 6e66 2072 656d  " ; then.dnf rem
│ │ │ +00257c40: 6f76 6520 2d79 202d 2d6e 6f61 7574 6f72  ove -y --noautor
│ │ │ +00257c50: 656d 6f76 6520 2274 6674 7022 0a66 690a  emove "tftp".fi.
│ │ │ +00257c60: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ +00257d10: 5265 6d65 6469 6174 696f 6e20 416e 6163 Remediation Anac │ │ │ +00257d20: 6f6e 6461 2073 6e69 7070 6574 20e2 87b2 onda snippet ... │ │ │ +00257d30: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity: │ │ │ +00257e00: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +00257e10: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f
..package --rem
│ │ │ +00257e70: 6f76 653d 7466 7470 0a3c 2f63 6f64 653e  ove=tftp.
│ │ │  00257e80: 3c2f 7072 653e 3c2f 6469 763e 3c2f 6469  
low
Disru │ │ │ +00257de0: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +00257df0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +00257e30: 6567 793a 3c2f 7468 3e3c 7464 3e64 6973 egy:dis │ │ │ +00257e40: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
Remediatio │ │ │ -00265eb0: 6e20 5075 7070 6574 2073 6e69 7070 6574 n Puppet snippet │ │ │ -00265ec0: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
...includ
│ │ │ -00265f10: 6520 7373 685f 7072 6976 6174 655f 6b65  e ssh_private_ke
│ │ │ -00265f20: 795f 7065 726d 730a 0a63 6c61 7373 2073  y_perms..class s
│ │ │ -00265f30: 7368 5f70 7269 7661 7465 5f6b 6579 5f70  sh_private_key_p
│ │ │ -00265f40: 6572 6d73 207b 0a20 2065 7865 6320 7b20  erms {.  exec { 
│ │ │ -00265f50: 2773 7368 645f 7072 6976 5f6b 6579 273a  'sshd_priv_key':
│ │ │ -00265f60: 0a20 2020 2063 6f6d 6d61 6e64 203d 2667  .    command =&g
│ │ │ -00265f70: 743b 2022 6368 6d6f 6420 3036 3030 202f  t; "chmod 0600 /
│ │ │ -00265f80: 6574 632f 7373 682f 2a5f 6b65 7922 2c0a  etc/ssh/*_key",.
│ │ │ -00265f90: 2020 2020 7061 7468 2020 2020 3d26 6774      path    =>
│ │ │ -00265fa0: 3b20 272f 6269 6e3a 2f75 7372 2f62 696e  ; '/bin:/usr/bin
│ │ │ -00265fb0: 270a 2020 7d0a 7d0a 3c2f 636f 6465 3e3c  '.  }.}.<
│ │ │ -00265fc0: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>
Remediat │ │ │ -00266070: 696f 6e20 416e 7369 626c 6520 736e 6970 ion Ansible snip │ │ │ -00266080: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ -00266090: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -002660a0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -002660b0: 7365 2220 6964 3d22 6964 3831 3822 3e3c se" id="id818">< │ │ │ -002660c0: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ -002660d0: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ -002660e0: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ -002660f0: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ -00266100: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Complex │ │ │ -00266110: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ -00266120: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Disruption:lowReboo │ │ │ -00266160: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -00266170: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ -00266190: 3c74 643e 636f 6e66 6967 7572 653c 2f74 configure< │ │ │ -002661b0: 7072 653e 3c63 6f64 653e 2d20 6e61 6d65 pre>- name │ │ │ -002661c0: 3a20 4761 7468 6572 2074 6865 2070 6163 : Gather the pac │ │ │ -002661d0: 6b61 6765 2066 6163 7473 0a20 2070 6163 kage facts. pac │ │ │ -002661e0: 6b61 6765 5f66 6163 7473 3a0a 2020 2020 kage_facts:. │ │ │ -002661f0: 6d61 6e61 6765 723a 2061 7574 6f0a 2020 manager: auto. │ │ │ -00266200: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38 tags:. - NIST-8 │ │ │ -00266210: 3030 2d31 3731 2d33 2e31 2e31 330a 2020 00-171-3.1.13. │ │ │ -00266220: 2d20 4e49 5354 2d38 3030 2d31 3731 2d33 - NIST-800-171-3 │ │ │ -00266230: 2e31 332e 3130 0a20 202d 204e 4953 542d .13.10. - NIST- │ │ │ -00266240: 3830 302d 3533 2d41 432d 3137 2861 290a 800-53-AC-17(a). │ │ │ -00266250: 2020 2d20 4e49 5354 2d38 3030 2d35 332d - NIST-800-53- │ │ │ -00266260: 4143 2d36 2831 290a 2020 2d20 4e49 5354 AC-6(1). - NIST │ │ │ -00266270: 2d38 3030 2d35 332d 434d 2d36 2861 290a -800-53-CM-6(a). │ │ │ -00266280: 2020 2d20 5043 492d 4453 532d 5265 712d - PCI-DSS-Req- │ │ │ -00266290: 322e 322e 340a 2020 2d20 5043 492d 4453 2.2.4. - PCI-DS │ │ │ -002662a0: 5376 342d 322e 320a 2020 2d20 5043 492d Sv4-2.2. - PCI- │ │ │ -002662b0: 4453 5376 342d 322e 322e 360a 2020 2d20 DSSv4-2.2.6. - │ │ │ -002662c0: 636f 6e66 6967 7572 655f 7374 7261 7465 configure_strate │ │ │ -002662d0: 6779 0a20 202d 2066 696c 655f 7065 726d gy. - file_perm │ │ │ -002662e0: 6973 7369 6f6e 735f 7373 6864 5f70 7269 issions_sshd_pri │ │ │ -002662f0: 7661 7465 5f6b 6579 0a20 202d 206c 6f77 vate_key. - low │ │ │ -00266300: 5f63 6f6d 706c 6578 6974 790a 2020 2d20 _complexity. - │ │ │ -00266310: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20 low_disruption. │ │ │ -00266320: 202d 206d 6564 6975 6d5f 7365 7665 7269 - medium_severi │ │ │ -00266330: 7479 0a20 202d 206e 6f5f 7265 626f 6f74 ty. - no_reboot │ │ │ -00266340: 5f6e 6565 6465 640a 0a2d 206e 616d 653a _needed..- name: │ │ │ -00266350: 2046 696e 6420 726f 6f74 3a72 6f6f 742d Find root:root- │ │ │ -00266360: 6f77 6e65 6420 6b65 7973 0a20 2061 6e73 owned keys. ans │ │ │ -00266370: 6962 6c65 2e62 7569 6c74 696e 2e63 6f6d ible.builtin.com │ │ │ -00266380: 6d61 6e64 3a20 6669 6e64 202d 4820 2f65 mand: find -H /e │ │ │ -00266390: 7463 2f73 7368 2f20 2d6d 6178 6465 7074 tc/ssh/ -maxdept │ │ │ -002663a0: 6820 3120 2d75 7365 7220 726f 6f74 202d h 1 -user root - │ │ │ -002663b0: 7265 6765 7820 222e 2a5f 6b65 7924 220a regex ".*_key$". │ │ │ -002663c0: 2020 2020 2d74 7970 6520 6620 2d67 726f -type f -gro │ │ │ -002663d0: 7570 2072 6f6f 7420 2d70 6572 6d20 2f75 up root -perm /u │ │ │ -002663e0: 2b78 732c 672b 7877 7273 2c6f 2b78 7772 +xs,g+xwrs,o+xwr │ │ │ -002663f0: 740a 2020 7265 6769 7374 6572 3a20 726f t. register: ro │ │ │ -00266400: 6f74 5f6f 776e 6564 5f6b 6579 730a 2020 ot_owned_keys. │ │ │ -00266410: 6368 616e 6765 645f 7768 656e 3a20 6661 changed_when: fa │ │ │ -00266420: 6c73 650a 2020 6661 696c 6564 5f77 6865 lse. failed_whe │ │ │ -00266430: 6e3a 2066 616c 7365 0a20 2063 6865 636b n: false. check │ │ │ -00266440: 5f6d 6f64 653a 2066 616c 7365 0a20 2077 _mode: false. w │ │ │ -00266450: 6865 6e3a 2027 226b 6572 6e65 6c22 2069 hen: '"kernel" i │ │ │ -00266460: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ -00266470: 7061 636b 6167 6573 270a 2020 7461 6773 packages'. tags │ │ │ -00266480: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d31 :. - NIST-800-1 │ │ │ -00266490: 3731 2d33 2e31 2e31 330a 2020 2d20 4e49 71-3.1.13. - NI │ │ │ -002664a0: 5354 2d38 3030 2d31 3731 2d33 2e31 332e ST-800-171-3.13. │ │ │ -002664b0: 3130 0a20 202d 204e 4953 542d 3830 302d 10. - NIST-800- │ │ │ -002664c0: 3533 2d41 432d 3137 2861 290a 2020 2d20 53-AC-17(a). - │ │ │ -002664d0: 4e49 5354 2d38 3030 2d35 332d 4143 2d36 NIST-800-53-AC-6 │ │ │ -002664e0: 2831 290a 2020 2d20 4e49 5354 2d38 3030 (1). - NIST-800 │ │ │ -002664f0: 2d35 332d 434d 2d36 2861 290a 2020 2d20 -53-CM-6(a). - │ │ │ -00266500: 5043 492d 4453 532d 5265 712d 322e 322e PCI-DSS-Req-2.2. │ │ │ -00266510: 340a 2020 2d20 5043 492d 4453 5376 342d 4. - PCI-DSSv4- │ │ │ -00266520: 322e 320a 2020 2d20 5043 492d 4453 5376 2.2. - PCI-DSSv │ │ │ -00266530: 342d 322e 322e 360a 2020 2d20 636f 6e66 4-2.2.6. - conf │ │ │ -00266540: 6967 7572 655f 7374 7261 7465 6779 0a20 igure_strategy. │ │ │ -00266550: 202d 2066 696c 655f 7065 726d 6973 7369 - file_permissi │ │ │ -00266560: 6f6e 735f 7373 6864 5f70 7269 7661 7465 ons_sshd_private │ │ │ -00266570: 5f6b 6579 0a20 202d 206c 6f77 5f63 6f6d _key. - low_com │ │ │ -00266580: 706c 6578 6974 790a 2020 2d20 6c6f 775f plexity. - low_ │ │ │ -00266590: 6469 7372 7570 7469 6f6e 0a20 202d 206d disruption. - m │ │ │ -002665a0: 6564 6975 6d5f 7365 7665 7269 7479 0a20 edium_severity. │ │ │ -002665b0: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565 - no_reboot_nee │ │ │ -002665c0: 6465 640a 0a2d 206e 616d 653a 2053 6574 ded..- name: Set │ │ │ -002665d0: 2070 6572 6d69 7373 696f 6e73 2066 6f72 permissions for │ │ │ -002665e0: 2072 6f6f 743a 726f 6f74 2d6f 776e 6564 root:root-owned │ │ │ -002665f0: 206b 6579 730a 2020 616e 7369 626c 652e keys. ansible. │ │ │ -00266600: 6275 696c 7469 6e2e 6669 6c65 3a0a 2020 builtin.file:. │ │ │ -00266610: 2020 7061 7468 3a20 277b 7b20 6974 656d path: '{{ item │ │ │ -00266620: 207d 7d27 0a20 2020 206d 6f64 653a 2075 }}'. mode: u │ │ │ -00266630: 2d78 732c 672d 7877 7273 2c6f 2d78 7772 -xs,g-xwrs,o-xwr │ │ │ -00266640: 740a 2020 2020 7374 6174 653a 2066 696c t. state: fil │ │ │ -00266650: 650a 2020 7769 7468 5f69 7465 6d73 3a0a e. with_items:. │ │ │ -00266660: 2020 2d20 277b 7b20 726f 6f74 5f6f 776e - '{{ root_own │ │ │ -00266670: 6564 5f6b 6579 732e 7374 646f 7574 5f6c ed_keys.stdout_l │ │ │ -00266680: 696e 6573 207d 7d27 0a20 2077 6865 6e3a ines }}'. when: │ │ │ -00266690: 2027 226b 6572 6e65 6c22 2069 6e20 616e '"kernel" in an │ │ │ -002666a0: 7369 626c 655f 6661 6374 732e 7061 636b sible_facts.pack │ │ │ -002666b0: 6167 6573 270a 2020 7461 6773 3a0a 2020 ages'. tags:. │ │ │ -002666c0: 2d20 4e49 5354 2d38 3030 2d31 3731 2d33 - NIST-800-171-3 │ │ │ -002666d0: 2e31 2e31 330a 2020 2d20 4e49 5354 2d38 .1.13. - NIST-8 │ │ │ -002666e0: 3030 2d31 3731 2d33 2e31 332e 3130 0a20 00-171-3.13.10. │ │ │ -002666f0: 202d 204e 4953 542d 3830 302d 3533 2d41 - NIST-800-53-A │ │ │ -00266700: 432d 3137 2861 290a 2020 2d20 4e49 5354 C-17(a). - NIST │ │ │ -00266710: 2d38 3030 2d35 332d 4143 2d36 2831 290a -800-53-AC-6(1). │ │ │ -00266720: 2020 2d20 4e49 5354 2d38 3030 2d35 332d - NIST-800-53- │ │ │ -00266730: 434d 2d36 2861 290a 2020 2d20 5043 492d CM-6(a). - PCI- │ │ │ -00266740: 4453 532d 5265 712d 322e 322e 340a 2020 DSS-Req-2.2.4. │ │ │ -00266750: 2d20 5043 492d 4453 5376 342d 322e 320a - PCI-DSSv4-2.2. │ │ │ -00266760: 2020 2d20 5043 492d 4453 5376 342d 322e - PCI-DSSv4-2. │ │ │ -00266770: 322e 360a 2020 2d20 636f 6e66 6967 7572 2.6. - configur │ │ │ -00266780: 655f 7374 7261 7465 6779 0a20 202d 2066 e_strategy. - f │ │ │ -00266790: 696c 655f 7065 726d 6973 7369 6f6e 735f ile_permissions_ │ │ │ -002667a0: 7373 6864 5f70 7269 7661 7465 5f6b 6579 sshd_private_key │ │ │ -002667b0: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578 . - low_complex │ │ │ -002667c0: 6974 790a 2020 2d20 6c6f 775f 6469 7372 ity. - low_disr │ │ │ -002667d0: 7570 7469 6f6e 0a20 202d 206d 6564 6975 uption. - mediu │ │ │ -002667e0: 6d5f 7365 7665 7269 7479 0a20 202d 206e m_severity. - n │ │ │ -002667f0: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a o_reboot_needed. │ │ │ +00265eb0: 6e20 416e 7369 626c 6520 736e 6970 7065 n Ansible snippe │ │ │ +00265ec0: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ +00265f40: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ +00265f50: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ +00265f70: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ +00265f80: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ +00265fa0: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ +00265fc0: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:configure │ │ │ +00265fe0: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072 - name: │ │ │ +00266000: 4761 7468 6572 2074 6865 2070 6163 6b61 Gather the packa │ │ │ +00266010: 6765 2066 6163 7473 0a20 2070 6163 6b61 ge facts. packa │ │ │ +00266020: 6765 5f66 6163 7473 3a0a 2020 2020 6d61 ge_facts:. ma │ │ │ +00266030: 6e61 6765 723a 2061 7574 6f0a 2020 7461 nager: auto. ta │ │ │ +00266040: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030 gs:. - NIST-800 │ │ │ +00266050: 2d31 3731 2d33 2e31 2e31 330a 2020 2d20 -171-3.1.13. - │ │ │ +00266060: 4e49 5354 2d38 3030 2d31 3731 2d33 2e31 NIST-800-171-3.1 │ │ │ +00266070: 332e 3130 0a20 202d 204e 4953 542d 3830 3.10. - NIST-80 │ │ │ +00266080: 302d 3533 2d41 432d 3137 2861 290a 2020 0-53-AC-17(a). │ │ │ +00266090: 2d20 4e49 5354 2d38 3030 2d35 332d 4143 - NIST-800-53-AC │ │ │ +002660a0: 2d36 2831 290a 2020 2d20 4e49 5354 2d38 -6(1). - NIST-8 │ │ │ +002660b0: 3030 2d35 332d 434d 2d36 2861 290a 2020 00-53-CM-6(a). │ │ │ +002660c0: 2d20 5043 492d 4453 532d 5265 712d 322e - PCI-DSS-Req-2. │ │ │ +002660d0: 322e 340a 2020 2d20 5043 492d 4453 5376 2.4. - PCI-DSSv │ │ │ +002660e0: 342d 322e 320a 2020 2d20 5043 492d 4453 4-2.2. - PCI-DS │ │ │ +002660f0: 5376 342d 322e 322e 360a 2020 2d20 636f Sv4-2.2.6. - co │ │ │ +00266100: 6e66 6967 7572 655f 7374 7261 7465 6779 nfigure_strategy │ │ │ +00266110: 0a20 202d 2066 696c 655f 7065 726d 6973 . - file_permis │ │ │ +00266120: 7369 6f6e 735f 7373 6864 5f70 7269 7661 sions_sshd_priva │ │ │ +00266130: 7465 5f6b 6579 0a20 202d 206c 6f77 5f63 te_key. - low_c │ │ │ +00266140: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f omplexity. - lo │ │ │ +00266150: 775f 6469 7372 7570 7469 6f6e 0a20 202d w_disruption. - │ │ │ +00266160: 206d 6564 6975 6d5f 7365 7665 7269 7479 medium_severity │ │ │ +00266170: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e . - no_reboot_n │ │ │ +00266180: 6565 6465 640a 0a2d 206e 616d 653a 2046 eeded..- name: F │ │ │ +00266190: 696e 6420 726f 6f74 3a72 6f6f 742d 6f77 ind root:root-ow │ │ │ +002661a0: 6e65 6420 6b65 7973 0a20 2061 6e73 6962 ned keys. ansib │ │ │ +002661b0: 6c65 2e62 7569 6c74 696e 2e63 6f6d 6d61 le.builtin.comma │ │ │ +002661c0: 6e64 3a20 6669 6e64 202d 4820 2f65 7463 nd: find -H /etc │ │ │ +002661d0: 2f73 7368 2f20 2d6d 6178 6465 7074 6820 /ssh/ -maxdepth │ │ │ +002661e0: 3120 2d75 7365 7220 726f 6f74 202d 7265 1 -user root -re │ │ │ +002661f0: 6765 7820 222e 2a5f 6b65 7924 220a 2020 gex ".*_key$". │ │ │ +00266200: 2020 2d74 7970 6520 6620 2d67 726f 7570 -type f -group │ │ │ +00266210: 2072 6f6f 7420 2d70 6572 6d20 2f75 2b78 root -perm /u+x │ │ │ +00266220: 732c 672b 7877 7273 2c6f 2b78 7772 740a s,g+xwrs,o+xwrt. │ │ │ +00266230: 2020 7265 6769 7374 6572 3a20 726f 6f74 register: root │ │ │ +00266240: 5f6f 776e 6564 5f6b 6579 730a 2020 6368 _owned_keys. ch │ │ │ +00266250: 616e 6765 645f 7768 656e 3a20 6661 6c73 anged_when: fals │ │ │ +00266260: 650a 2020 6661 696c 6564 5f77 6865 6e3a e. failed_when: │ │ │ +00266270: 2066 616c 7365 0a20 2063 6865 636b 5f6d false. check_m │ │ │ +00266280: 6f64 653a 2066 616c 7365 0a20 2077 6865 ode: false. whe │ │ │ +00266290: 6e3a 2027 226b 6572 6e65 6c22 2069 6e20 n: '"kernel" in │ │ │ +002662a0: 616e 7369 626c 655f 6661 6374 732e 7061 ansible_facts.pa │ │ │ +002662b0: 636b 6167 6573 270a 2020 7461 6773 3a0a ckages'. tags:. │ │ │ +002662c0: 2020 2d20 4e49 5354 2d38 3030 2d31 3731 - NIST-800-171 │ │ │ +002662d0: 2d33 2e31 2e31 330a 2020 2d20 4e49 5354 -3.1.13. - NIST │ │ │ +002662e0: 2d38 3030 2d31 3731 2d33 2e31 332e 3130 -800-171-3.13.10 │ │ │ +002662f0: 0a20 202d 204e 4953 542d 3830 302d 3533 . - NIST-800-53 │ │ │ +00266300: 2d41 432d 3137 2861 290a 2020 2d20 4e49 -AC-17(a). - NI │ │ │ +00266310: 5354 2d38 3030 2d35 332d 4143 2d36 2831 ST-800-53-AC-6(1 │ │ │ +00266320: 290a 2020 2d20 4e49 5354 2d38 3030 2d35 ). - NIST-800-5 │ │ │ +00266330: 332d 434d 2d36 2861 290a 2020 2d20 5043 3-CM-6(a). - PC │ │ │ +00266340: 492d 4453 532d 5265 712d 322e 322e 340a I-DSS-Req-2.2.4. │ │ │ +00266350: 2020 2d20 5043 492d 4453 5376 342d 322e - PCI-DSSv4-2. │ │ │ +00266360: 320a 2020 2d20 5043 492d 4453 5376 342d 2. - PCI-DSSv4- │ │ │ +00266370: 322e 322e 360a 2020 2d20 636f 6e66 6967 2.2.6. - config │ │ │ +00266380: 7572 655f 7374 7261 7465 6779 0a20 202d ure_strategy. - │ │ │ +00266390: 2066 696c 655f 7065 726d 6973 7369 6f6e file_permission │ │ │ +002663a0: 735f 7373 6864 5f70 7269 7661 7465 5f6b s_sshd_private_k │ │ │ +002663b0: 6579 0a20 202d 206c 6f77 5f63 6f6d 706c ey. - low_compl │ │ │ +002663c0: 6578 6974 790a 2020 2d20 6c6f 775f 6469 exity. - low_di │ │ │ +002663d0: 7372 7570 7469 6f6e 0a20 202d 206d 6564 sruption. - med │ │ │ +002663e0: 6975 6d5f 7365 7665 7269 7479 0a20 202d ium_severity. - │ │ │ +002663f0: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465 no_reboot_neede │ │ │ +00266400: 640a 0a2d 206e 616d 653a 2053 6574 2070 d..- name: Set p │ │ │ +00266410: 6572 6d69 7373 696f 6e73 2066 6f72 2072 ermissions for r │ │ │ +00266420: 6f6f 743a 726f 6f74 2d6f 776e 6564 206b oot:root-owned k │ │ │ +00266430: 6579 730a 2020 616e 7369 626c 652e 6275 eys. ansible.bu │ │ │ +00266440: 696c 7469 6e2e 6669 6c65 3a0a 2020 2020 iltin.file:. │ │ │ +00266450: 7061 7468 3a20 277b 7b20 6974 656d 207d path: '{{ item } │ │ │ +00266460: 7d27 0a20 2020 206d 6f64 653a 2075 2d78 }'. mode: u-x │ │ │ +00266470: 732c 672d 7877 7273 2c6f 2d78 7772 740a s,g-xwrs,o-xwrt. │ │ │ +00266480: 2020 2020 7374 6174 653a 2066 696c 650a state: file. │ │ │ +00266490: 2020 7769 7468 5f69 7465 6d73 3a0a 2020 with_items:. │ │ │ +002664a0: 2d20 277b 7b20 726f 6f74 5f6f 776e 6564 - '{{ root_owned │ │ │ +002664b0: 5f6b 6579 732e 7374 646f 7574 5f6c 696e _keys.stdout_lin │ │ │ +002664c0: 6573 207d 7d27 0a20 2077 6865 6e3a 2027 es }}'. when: ' │ │ │ +002664d0: 226b 6572 6e65 6c22 2069 6e20 616e 7369 "kernel" in ansi │ │ │ +002664e0: 626c 655f 6661 6374 732e 7061 636b 6167 ble_facts.packag │ │ │ +002664f0: 6573 270a 2020 7461 6773 3a0a 2020 2d20 es'. tags:. - │ │ │ +00266500: 4e49 5354 2d38 3030 2d31 3731 2d33 2e31 NIST-800-171-3.1 │ │ │ +00266510: 2e31 330a 2020 2d20 4e49 5354 2d38 3030 .13. - NIST-800 │ │ │ +00266520: 2d31 3731 2d33 2e31 332e 3130 0a20 202d -171-3.13.10. - │ │ │ +00266530: 204e 4953 542d 3830 302d 3533 2d41 432d NIST-800-53-AC- │ │ │ +00266540: 3137 2861 290a 2020 2d20 4e49 5354 2d38 17(a). - NIST-8 │ │ │ +00266550: 3030 2d35 332d 4143 2d36 2831 290a 2020 00-53-AC-6(1). │ │ │ +00266560: 2d20 4e49 5354 2d38 3030 2d35 332d 434d - NIST-800-53-CM │ │ │ +00266570: 2d36 2861 290a 2020 2d20 5043 492d 4453 -6(a). - PCI-DS │ │ │ +00266580: 532d 5265 712d 322e 322e 340a 2020 2d20 S-Req-2.2.4. - │ │ │ +00266590: 5043 492d 4453 5376 342d 322e 320a 2020 PCI-DSSv4-2.2. │ │ │ +002665a0: 2d20 5043 492d 4453 5376 342d 322e 322e - PCI-DSSv4-2.2. │ │ │ +002665b0: 360a 2020 2d20 636f 6e66 6967 7572 655f 6. - configure_ │ │ │ +002665c0: 7374 7261 7465 6779 0a20 202d 2066 696c strategy. - fil │ │ │ +002665d0: 655f 7065 726d 6973 7369 6f6e 735f 7373 e_permissions_ss │ │ │ +002665e0: 6864 5f70 7269 7661 7465 5f6b 6579 0a20 hd_private_key. │ │ │ +002665f0: 202d 206c 6f77 5f63 6f6d 706c 6578 6974 - low_complexit │ │ │ +00266600: 790a 2020 2d20 6c6f 775f 6469 7372 7570 y. - low_disrup │ │ │ +00266610: 7469 6f6e 0a20 202d 206d 6564 6975 6d5f tion. - medium_ │ │ │ +00266620: 7365 7665 7269 7479 0a20 202d 206e 6f5f severity. - no_ │ │ │ +00266630: 7265 626f 6f74 5f6e 6565 6465 640a 3c2f reboot_needed.
Re │ │ │ +002666f0: 6d65 6469 6174 696f 6e20 5075 7070 6574 mediation Puppet │ │ │ +00266700: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ +00266710: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
.
│ │ │ +00266750: 0a0a 696e 636c 7564 6520 7373 685f 7072  ..include ssh_pr
│ │ │ +00266760: 6976 6174 655f 6b65 795f 7065 726d 730a  ivate_key_perms.
│ │ │ +00266770: 0a63 6c61 7373 2073 7368 5f70 7269 7661  .class ssh_priva
│ │ │ +00266780: 7465 5f6b 6579 5f70 6572 6d73 207b 0a20  te_key_perms {. 
│ │ │ +00266790: 2065 7865 6320 7b20 2773 7368 645f 7072   exec { 'sshd_pr
│ │ │ +002667a0: 6976 5f6b 6579 273a 0a20 2020 2063 6f6d  iv_key':.    com
│ │ │ +002667b0: 6d61 6e64 203d 2667 743b 2022 6368 6d6f  mand => "chmo
│ │ │ +002667c0: 6420 3036 3030 202f 6574 632f 7373 682f  d 0600 /etc/ssh/
│ │ │ +002667d0: 2a5f 6b65 7922 2c0a 2020 2020 7061 7468  *_key",.    path
│ │ │ +002667e0: 2020 2020 3d26 6774 3b20 272f 6269 6e3a      => '/bin:
│ │ │ +002667f0: 2f75 7372 2f62 696e 270a 2020 7d0a 7d0a  /usr/bin'.  }.}.
│ │ │  00266800: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
Remediati │ │ │ -00267c10: 6f6e 2050 7570 7065 7420 736e 6970 7065 on Puppet snippe │ │ │ -00267c20: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
include │ │ │ -00267c70: 7373 685f 7075 626c 6963 5f6b 6579 5f70 ssh_public_key_p │ │ │ -00267c80: 6572 6d73 0a0a 636c 6173 7320 7373 685f erms..class ssh_ │ │ │ -00267c90: 7075 626c 6963 5f6b 6579 5f70 6572 6d73 public_key_perms │ │ │ -00267ca0: 207b 0a20 2065 7865 6320 7b20 2773 7368 {. exec { 'ssh │ │ │ -00267cb0: 645f 7075 625f 6b65 7927 3a0a 2020 2020 d_pub_key':. │ │ │ -00267cc0: 636f 6d6d 616e 6420 3d26 6774 3b20 2263 command => "c │ │ │ -00267cd0: 686d 6f64 2030 3634 3420 2f65 7463 2f73 hmod 0644 /etc/s │ │ │ -00267ce0: 7368 2f2a 2e70 7562 222c 0a20 2020 2070 sh/*.pub",. p │ │ │ -00267cf0: 6174 6820 2020 203d 2667 743b 2027 2f62 ath => '/b │ │ │ -00267d00: 696e 3a2f 7573 722f 6269 6e27 0a20 207d in:/usr/bin'. } │ │ │ -00267d10: 0a7d 0a3c 2f63 6f64 653e 3c2f 7072 653e .}. │ │ │ -00267d20: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation A │ │ │ -00267dd0: 6e73 6962 6c65 2073 6e69 7070 6574 20e2 nsible snippet . │ │ │ -00267de0: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ -00267e60: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -00267e80: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ -00267ed0: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472
Complexity:< │ │ │ -00267e70: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ -00267e90: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ -00267ee0: 6174 6567 793a 3c2f 7468 3e3c 7464 3e63 ategy:c │ │ │ -00267ef0: 6f6e 6669 6775 7265 3c2f 7464 3e3c 2f74 onfigure
<
│ │ │ -00267f10: 636f 6465 3e2d 206e 616d 653a 2047 6174  code>- name: Gat
│ │ │ -00267f20: 6865 7220 7468 6520 7061 636b 6167 6520  her the package 
│ │ │ -00267f30: 6661 6374 730a 2020 7061 636b 6167 655f  facts.  package_
│ │ │ -00267f40: 6661 6374 733a 0a20 2020 206d 616e 6167  facts:.    manag
│ │ │ -00267f50: 6572 3a20 6175 746f 0a20 2074 6167 733a  er: auto.  tags:
│ │ │ -00267f60: 0a20 202d 204e 4953 542d 3830 302d 3137  .  - NIST-800-17
│ │ │ -00267f70: 312d 332e 312e 3133 0a20 202d 204e 4953  1-3.1.13.  - NIS
│ │ │ -00267f80: 542d 3830 302d 3137 312d 332e 3133 2e31  T-800-171-3.13.1
│ │ │ -00267f90: 300a 2020 2d20 4e49 5354 2d38 3030 2d35  0.  - NIST-800-5
│ │ │ -00267fa0: 332d 4143 2d31 3728 6129 0a20 202d 204e  3-AC-17(a).  - N
│ │ │ -00267fb0: 4953 542d 3830 302d 3533 2d41 432d 3628  IST-800-53-AC-6(
│ │ │ -00267fc0: 3129 0a20 202d 204e 4953 542d 3830 302d  1).  - NIST-800-
│ │ │ -00267fd0: 3533 2d43 4d2d 3628 6129 0a20 202d 2050  53-CM-6(a).  - P
│ │ │ -00267fe0: 4349 2d44 5353 2d52 6571 2d32 2e32 2e34  CI-DSS-Req-2.2.4
│ │ │ -00267ff0: 0a20 202d 2050 4349 2d44 5353 7634 2d32  .  - PCI-DSSv4-2
│ │ │ -00268000: 2e32 0a20 202d 2050 4349 2d44 5353 7634  .2.  - PCI-DSSv4
│ │ │ -00268010: 2d32 2e32 2e36 0a20 202d 2063 6f6e 6669  -2.2.6.  - confi
│ │ │ -00268020: 6775 7265 5f73 7472 6174 6567 790a 2020  gure_strategy.  
│ │ │ -00268030: 2d20 6669 6c65 5f70 6572 6d69 7373 696f  - file_permissio
│ │ │ -00268040: 6e73 5f73 7368 645f 7075 625f 6b65 790a  ns_sshd_pub_key.
│ │ │ -00268050: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ -00268060: 7479 0a20 202d 206c 6f77 5f64 6973 7275  ty.  - low_disru
│ │ │ -00268070: 7074 696f 6e0a 2020 2d20 6d65 6469 756d  ption.  - medium
│ │ │ -00268080: 5f73 6576 6572 6974 790a 2020 2d20 6e6f  _severity.  - no
│ │ │ -00268090: 5f72 6562 6f6f 745f 6e65 6564 6564 0a0a  _reboot_needed..
│ │ │ -002680a0: 2d20 6e61 6d65 3a20 4669 6e64 202f 6574  - name: Find /et
│ │ │ -002680b0: 632f 7373 682f 2066 696c 6528 7329 0a20  c/ssh/ file(s). 
│ │ │ -002680c0: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ -002680d0: 2e63 6f6d 6d61 6e64 3a20 6669 6e64 202d  .command: find -
│ │ │ -002680e0: 5020 2f65 7463 2f73 7368 2f20 2d6d 6178  P /etc/ssh/ -max
│ │ │ -002680f0: 6465 7074 6820 3120 2d70 6572 6d20 2f75  depth 1 -perm /u
│ │ │ -00268100: 2b78 732c 672b 7877 732c 6f2b 7877 7420  +xs,g+xws,o+xwt 
│ │ │ -00268110: 202d 7479 7065 0a20 2020 2066 202d 7265   -type.    f -re
│ │ │ -00268120: 6765 7874 7970 6520 706f 7369 782d 6578  gextype posix-ex
│ │ │ -00268130: 7465 6e64 6564 202d 7265 6765 7820 225e  tended -regex "^
│ │ │ -00268140: 2e2a 5c2e 7075 6224 220a 2020 7265 6769  .*\.pub$".  regi
│ │ │ -00268150: 7374 6572 3a20 6669 6c65 735f 666f 756e  ster: files_foun
│ │ │ -00268160: 640a 2020 6368 616e 6765 645f 7768 656e  d.  changed_when
│ │ │ -00268170: 3a20 6661 6c73 650a 2020 6661 696c 6564  : false.  failed
│ │ │ -00268180: 5f77 6865 6e3a 2066 616c 7365 0a20 2063  _when: false.  c
│ │ │ -00268190: 6865 636b 5f6d 6f64 653a 2066 616c 7365  heck_mode: false
│ │ │ -002681a0: 0a20 2077 6865 6e3a 2027 226b 6572 6e65  .  when: '"kerne
│ │ │ -002681b0: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ -002681c0: 6374 732e 7061 636b 6167 6573 270a 2020  cts.packages'.  
│ │ │ -002681d0: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38  tags:.  - NIST-8
│ │ │ -002681e0: 3030 2d31 3731 2d33 2e31 2e31 330a 2020  00-171-3.1.13.  
│ │ │ -002681f0: 2d20 4e49 5354 2d38 3030 2d31 3731 2d33  - NIST-800-171-3
│ │ │ -00268200: 2e31 332e 3130 0a20 202d 204e 4953 542d  .13.10.  - NIST-
│ │ │ -00268210: 3830 302d 3533 2d41 432d 3137 2861 290a  800-53-AC-17(a).
│ │ │ -00268220: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -00268230: 4143 2d36 2831 290a 2020 2d20 4e49 5354  AC-6(1).  - NIST
│ │ │ -00268240: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ -00268250: 2020 2d20 5043 492d 4453 532d 5265 712d    - PCI-DSS-Req-
│ │ │ -00268260: 322e 322e 340a 2020 2d20 5043 492d 4453  2.2.4.  - PCI-DS
│ │ │ -00268270: 5376 342d 322e 320a 2020 2d20 5043 492d  Sv4-2.2.  - PCI-
│ │ │ -00268280: 4453 5376 342d 322e 322e 360a 2020 2d20  DSSv4-2.2.6.  - 
│ │ │ -00268290: 636f 6e66 6967 7572 655f 7374 7261 7465  configure_strate
│ │ │ -002682a0: 6779 0a20 202d 2066 696c 655f 7065 726d  gy.  - file_perm
│ │ │ -002682b0: 6973 7369 6f6e 735f 7373 6864 5f70 7562  issions_sshd_pub
│ │ │ -002682c0: 5f6b 6579 0a20 202d 206c 6f77 5f63 6f6d  _key.  - low_com
│ │ │ -002682d0: 706c 6578 6974 790a 2020 2d20 6c6f 775f  plexity.  - low_
│ │ │ -002682e0: 6469 7372 7570 7469 6f6e 0a20 202d 206d  disruption.  - m
│ │ │ -002682f0: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ -00268300: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ -00268310: 6465 640a 0a2d 206e 616d 653a 2053 6574  ded..- name: Set
│ │ │ -00268320: 2070 6572 6d69 7373 696f 6e73 2066 6f72   permissions for
│ │ │ -00268330: 202f 6574 632f 7373 682f 2066 696c 6528   /etc/ssh/ file(
│ │ │ -00268340: 7329 0a20 2061 6e73 6962 6c65 2e62 7569  s).  ansible.bui
│ │ │ -00268350: 6c74 696e 2e66 696c 653a 0a20 2020 2070  ltin.file:.    p
│ │ │ -00268360: 6174 683a 2027 7b7b 2069 7465 6d20 7d7d  ath: '{{ item }}
│ │ │ -00268370: 270a 2020 2020 6d6f 6465 3a20 752d 7873  '.    mode: u-xs
│ │ │ -00268380: 2c67 2d78 7773 2c6f 2d78 7774 0a20 2020  ,g-xws,o-xwt.   
│ │ │ -00268390: 2073 7461 7465 3a20 6669 6c65 0a20 2077   state: file.  w
│ │ │ -002683a0: 6974 685f 6974 656d 733a 0a20 202d 2027  ith_items:.  - '
│ │ │ -002683b0: 7b7b 2066 696c 6573 5f66 6f75 6e64 2e73  {{ files_found.s
│ │ │ -002683c0: 7464 6f75 745f 6c69 6e65 7320 7d7d 270a  tdout_lines }}'.
│ │ │ -002683d0: 2020 7768 656e 3a20 2722 6b65 726e 656c    when: '"kernel
│ │ │ -002683e0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -002683f0: 7473 2e70 6163 6b61 6765 7327 0a20 2074  ts.packages'.  t
│ │ │ -00268400: 6167 733a 0a20 202d 204e 4953 542d 3830  ags:.  - NIST-80
│ │ │ -00268410: 302d 3137 312d 332e 312e 3133 0a20 202d  0-171-3.1.13.  -
│ │ │ -00268420: 204e 4953 542d 3830 302d 3137 312d 332e   NIST-800-171-3.
│ │ │ -00268430: 3133 2e31 300a 2020 2d20 4e49 5354 2d38  13.10.  - NIST-8
│ │ │ -00268440: 3030 2d35 332d 4143 2d31 3728 6129 0a20  00-53-AC-17(a). 
│ │ │ -00268450: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ -00268460: 432d 3628 3129 0a20 202d 204e 4953 542d  C-6(1).  - NIST-
│ │ │ -00268470: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ -00268480: 202d 2050 4349 2d44 5353 2d52 6571 2d32   - PCI-DSS-Req-2
│ │ │ -00268490: 2e32 2e34 0a20 202d 2050 4349 2d44 5353  .2.4.  - PCI-DSS
│ │ │ -002684a0: 7634 2d32 2e32 0a20 202d 2050 4349 2d44  v4-2.2.  - PCI-D
│ │ │ -002684b0: 5353 7634 2d32 2e32 2e36 0a20 202d 2063  SSv4-2.2.6.  - c
│ │ │ -002684c0: 6f6e 6669 6775 7265 5f73 7472 6174 6567  onfigure_strateg
│ │ │ -002684d0: 790a 2020 2d20 6669 6c65 5f70 6572 6d69  y.  - file_permi
│ │ │ -002684e0: 7373 696f 6e73 5f73 7368 645f 7075 625f  ssions_sshd_pub_
│ │ │ -002684f0: 6b65 790a 2020 2d20 6c6f 775f 636f 6d70  key.  - low_comp
│ │ │ -00268500: 6c65 7869 7479 0a20 202d 206c 6f77 5f64  lexity.  - low_d
│ │ │ -00268510: 6973 7275 7074 696f 6e0a 2020 2d20 6d65  isruption.  - me
│ │ │ -00268520: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ -00268530: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ -00268540: 6564 0a3c 2f63 6f64 653e 3c2f 7072 653e  ed.
│ │ │ +00267c10: 6f6e 2041 6e73 6962 6c65 2073 6e69 7070 on Ansible snipp │ │ │ +00267c20: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ +00267ca0: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ +00267cb0: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +00267cc0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ +00267d00: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +00267d10: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ +00267d30: 7464 3e63 6f6e 6669 6775 7265 3c2f 7464 td>configure

- name: │ │ │ +00267d60: 2047 6174 6865 7220 7468 6520 7061 636b Gather the pack │ │ │ +00267d70: 6167 6520 6661 6374 730a 2020 7061 636b age facts. pack │ │ │ +00267d80: 6167 655f 6661 6374 733a 0a20 2020 206d age_facts:. m │ │ │ +00267d90: 616e 6167 6572 3a20 6175 746f 0a20 2074 anager: auto. t │ │ │ +00267da0: 6167 733a 0a20 202d 204e 4953 542d 3830 ags:. - NIST-80 │ │ │ +00267db0: 302d 3137 312d 332e 312e 3133 0a20 202d 0-171-3.1.13. - │ │ │ +00267dc0: 204e 4953 542d 3830 302d 3137 312d 332e NIST-800-171-3. │ │ │ +00267dd0: 3133 2e31 300a 2020 2d20 4e49 5354 2d38 13.10. - NIST-8 │ │ │ +00267de0: 3030 2d35 332d 4143 2d31 3728 6129 0a20 00-53-AC-17(a). │ │ │ +00267df0: 202d 204e 4953 542d 3830 302d 3533 2d41 - NIST-800-53-A │ │ │ +00267e00: 432d 3628 3129 0a20 202d 204e 4953 542d C-6(1). - NIST- │ │ │ +00267e10: 3830 302d 3533 2d43 4d2d 3628 6129 0a20 800-53-CM-6(a). │ │ │ +00267e20: 202d 2050 4349 2d44 5353 2d52 6571 2d32 - PCI-DSS-Req-2 │ │ │ +00267e30: 2e32 2e34 0a20 202d 2050 4349 2d44 5353 .2.4. - PCI-DSS │ │ │ +00267e40: 7634 2d32 2e32 0a20 202d 2050 4349 2d44 v4-2.2. - PCI-D │ │ │ +00267e50: 5353 7634 2d32 2e32 2e36 0a20 202d 2063 SSv4-2.2.6. - c │ │ │ +00267e60: 6f6e 6669 6775 7265 5f73 7472 6174 6567 onfigure_strateg │ │ │ +00267e70: 790a 2020 2d20 6669 6c65 5f70 6572 6d69 y. - file_permi │ │ │ +00267e80: 7373 696f 6e73 5f73 7368 645f 7075 625f ssions_sshd_pub_ │ │ │ +00267e90: 6b65 790a 2020 2d20 6c6f 775f 636f 6d70 key. - low_comp │ │ │ +00267ea0: 6c65 7869 7479 0a20 202d 206c 6f77 5f64 lexity. - low_d │ │ │ +00267eb0: 6973 7275 7074 696f 6e0a 2020 2d20 6d65 isruption. - me │ │ │ +00267ec0: 6469 756d 5f73 6576 6572 6974 790a 2020 dium_severity. │ │ │ +00267ed0: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564 - no_reboot_need │ │ │ +00267ee0: 6564 0a0a 2d20 6e61 6d65 3a20 4669 6e64 ed..- name: Find │ │ │ +00267ef0: 202f 6574 632f 7373 682f 2066 696c 6528 /etc/ssh/ file( │ │ │ +00267f00: 7329 0a20 2061 6e73 6962 6c65 2e62 7569 s). ansible.bui │ │ │ +00267f10: 6c74 696e 2e63 6f6d 6d61 6e64 3a20 6669 ltin.command: fi │ │ │ +00267f20: 6e64 202d 5020 2f65 7463 2f73 7368 2f20 nd -P /etc/ssh/ │ │ │ +00267f30: 2d6d 6178 6465 7074 6820 3120 2d70 6572 -maxdepth 1 -per │ │ │ +00267f40: 6d20 2f75 2b78 732c 672b 7877 732c 6f2b m /u+xs,g+xws,o+ │ │ │ +00267f50: 7877 7420 202d 7479 7065 0a20 2020 2066 xwt -type. f │ │ │ +00267f60: 202d 7265 6765 7874 7970 6520 706f 7369 -regextype posi │ │ │ +00267f70: 782d 6578 7465 6e64 6564 202d 7265 6765 x-extended -rege │ │ │ +00267f80: 7820 225e 2e2a 5c2e 7075 6224 220a 2020 x "^.*\.pub$". │ │ │ +00267f90: 7265 6769 7374 6572 3a20 6669 6c65 735f register: files_ │ │ │ +00267fa0: 666f 756e 640a 2020 6368 616e 6765 645f found. changed_ │ │ │ +00267fb0: 7768 656e 3a20 6661 6c73 650a 2020 6661 when: false. fa │ │ │ +00267fc0: 696c 6564 5f77 6865 6e3a 2066 616c 7365 iled_when: false │ │ │ +00267fd0: 0a20 2063 6865 636b 5f6d 6f64 653a 2066 . check_mode: f │ │ │ +00267fe0: 616c 7365 0a20 2077 6865 6e3a 2027 226b alse. when: '"k │ │ │ +00267ff0: 6572 6e65 6c22 2069 6e20 616e 7369 626c ernel" in ansibl │ │ │ +00268000: 655f 6661 6374 732e 7061 636b 6167 6573 e_facts.packages │ │ │ +00268010: 270a 2020 7461 6773 3a0a 2020 2d20 4e49 '. tags:. - NI │ │ │ +00268020: 5354 2d38 3030 2d31 3731 2d33 2e31 2e31 ST-800-171-3.1.1 │ │ │ +00268030: 330a 2020 2d20 4e49 5354 2d38 3030 2d31 3. - NIST-800-1 │ │ │ +00268040: 3731 2d33 2e31 332e 3130 0a20 202d 204e 71-3.13.10. - N │ │ │ +00268050: 4953 542d 3830 302d 3533 2d41 432d 3137 IST-800-53-AC-17 │ │ │ +00268060: 2861 290a 2020 2d20 4e49 5354 2d38 3030 (a). - NIST-800 │ │ │ +00268070: 2d35 332d 4143 2d36 2831 290a 2020 2d20 -53-AC-6(1). - │ │ │ +00268080: 4e49 5354 2d38 3030 2d35 332d 434d 2d36 NIST-800-53-CM-6 │ │ │ +00268090: 2861 290a 2020 2d20 5043 492d 4453 532d (a). - PCI-DSS- │ │ │ +002680a0: 5265 712d 322e 322e 340a 2020 2d20 5043 Req-2.2.4. - PC │ │ │ +002680b0: 492d 4453 5376 342d 322e 320a 2020 2d20 I-DSSv4-2.2. - │ │ │ +002680c0: 5043 492d 4453 5376 342d 322e 322e 360a PCI-DSSv4-2.2.6. │ │ │ +002680d0: 2020 2d20 636f 6e66 6967 7572 655f 7374 - configure_st │ │ │ +002680e0: 7261 7465 6779 0a20 202d 2066 696c 655f rategy. - file_ │ │ │ +002680f0: 7065 726d 6973 7369 6f6e 735f 7373 6864 permissions_sshd │ │ │ +00268100: 5f70 7562 5f6b 6579 0a20 202d 206c 6f77 _pub_key. - low │ │ │ +00268110: 5f63 6f6d 706c 6578 6974 790a 2020 2d20 _complexity. - │ │ │ +00268120: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20 low_disruption. │ │ │ +00268130: 202d 206d 6564 6975 6d5f 7365 7665 7269 - medium_severi │ │ │ +00268140: 7479 0a20 202d 206e 6f5f 7265 626f 6f74 ty. - no_reboot │ │ │ +00268150: 5f6e 6565 6465 640a 0a2d 206e 616d 653a _needed..- name: │ │ │ +00268160: 2053 6574 2070 6572 6d69 7373 696f 6e73 Set permissions │ │ │ +00268170: 2066 6f72 202f 6574 632f 7373 682f 2066 for /etc/ssh/ f │ │ │ +00268180: 696c 6528 7329 0a20 2061 6e73 6962 6c65 ile(s). ansible │ │ │ +00268190: 2e62 7569 6c74 696e 2e66 696c 653a 0a20 .builtin.file:. │ │ │ +002681a0: 2020 2070 6174 683a 2027 7b7b 2069 7465 path: '{{ ite │ │ │ +002681b0: 6d20 7d7d 270a 2020 2020 6d6f 6465 3a20 m }}'. mode: │ │ │ +002681c0: 752d 7873 2c67 2d78 7773 2c6f 2d78 7774 u-xs,g-xws,o-xwt │ │ │ +002681d0: 0a20 2020 2073 7461 7465 3a20 6669 6c65 . state: file │ │ │ +002681e0: 0a20 2077 6974 685f 6974 656d 733a 0a20 . with_items:. │ │ │ +002681f0: 202d 2027 7b7b 2066 696c 6573 5f66 6f75 - '{{ files_fou │ │ │ +00268200: 6e64 2e73 7464 6f75 745f 6c69 6e65 7320 nd.stdout_lines │ │ │ +00268210: 7d7d 270a 2020 7768 656e 3a20 2722 6b65 }}'. when: '"ke │ │ │ +00268220: 726e 656c 2220 696e 2061 6e73 6962 6c65 rnel" in ansible │ │ │ +00268230: 5f66 6163 7473 2e70 6163 6b61 6765 7327 _facts.packages' │ │ │ +00268240: 0a20 2074 6167 733a 0a20 202d 204e 4953 . tags:. - NIS │ │ │ +00268250: 542d 3830 302d 3137 312d 332e 312e 3133 T-800-171-3.1.13 │ │ │ +00268260: 0a20 202d 204e 4953 542d 3830 302d 3137 . - NIST-800-17 │ │ │ +00268270: 312d 332e 3133 2e31 300a 2020 2d20 4e49 1-3.13.10. - NI │ │ │ +00268280: 5354 2d38 3030 2d35 332d 4143 2d31 3728 ST-800-53-AC-17( │ │ │ +00268290: 6129 0a20 202d 204e 4953 542d 3830 302d a). - NIST-800- │ │ │ +002682a0: 3533 2d41 432d 3628 3129 0a20 202d 204e 53-AC-6(1). - N │ │ │ +002682b0: 4953 542d 3830 302d 3533 2d43 4d2d 3628 IST-800-53-CM-6( │ │ │ +002682c0: 6129 0a20 202d 2050 4349 2d44 5353 2d52 a). - PCI-DSS-R │ │ │ +002682d0: 6571 2d32 2e32 2e34 0a20 202d 2050 4349 eq-2.2.4. - PCI │ │ │ +002682e0: 2d44 5353 7634 2d32 2e32 0a20 202d 2050 -DSSv4-2.2. - P │ │ │ +002682f0: 4349 2d44 5353 7634 2d32 2e32 2e36 0a20 CI-DSSv4-2.2.6. │ │ │ +00268300: 202d 2063 6f6e 6669 6775 7265 5f73 7472 - configure_str │ │ │ +00268310: 6174 6567 790a 2020 2d20 6669 6c65 5f70 ategy. - file_p │ │ │ +00268320: 6572 6d69 7373 696f 6e73 5f73 7368 645f ermissions_sshd_ │ │ │ +00268330: 7075 625f 6b65 790a 2020 2d20 6c6f 775f pub_key. - low_ │ │ │ +00268340: 636f 6d70 6c65 7869 7479 0a20 202d 206c complexity. - l │ │ │ +00268350: 6f77 5f64 6973 7275 7074 696f 6e0a 2020 ow_disruption. │ │ │ +00268360: 2d20 6d65 6469 756d 5f73 6576 6572 6974 - medium_severit │ │ │ +00268370: 790a 2020 2d20 6e6f 5f72 6562 6f6f 745f y. - no_reboot_ │ │ │ +00268380: 6e65 6564 6564 0a3c 2f63 6f64 653e 3c2f needed.

Remediati │ │ │ +00268440: 6f6e 2050 7570 7065 7420 736e 6970 7065 on Puppet snippe │ │ │ +00268450: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
include │ │ │ +002684a0: 7373 685f 7075 626c 6963 5f6b 6579 5f70 ssh_public_key_p │ │ │ +002684b0: 6572 6d73 0a0a 636c 6173 7320 7373 685f erms..class ssh_ │ │ │ +002684c0: 7075 626c 6963 5f6b 6579 5f70 6572 6d73 public_key_perms │ │ │ +002684d0: 207b 0a20 2065 7865 6320 7b20 2773 7368 {. exec { 'ssh │ │ │ +002684e0: 645f 7075 625f 6b65 7927 3a0a 2020 2020 d_pub_key':. │ │ │ +002684f0: 636f 6d6d 616e 6420 3d26 6774 3b20 2263 command => "c │ │ │ +00268500: 686d 6f64 2030 3634 3420 2f65 7463 2f73 hmod 0644 /etc/s │ │ │ +00268510: 7368 2f2a 2e70 7562 222c 0a20 2020 2070 sh/*.pub",. p │ │ │ +00268520: 6174 6820 2020 203d 2667 743b 2027 2f62 ath => '/b │ │ │ +00268530: 696e 3a2f 7573 722f 6269 6e27 0a20 207d in:/usr/bin'. } │ │ │ +00268540: 0a7d 0a3c 2f63 6f64 653e 3c2f 7072 653e .}. │ │ │ 00268550: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation O │ │ │ -0026ee80: 5342 7569 6c64 2042 6c75 6570 7269 6e74 SBuild Blueprint │ │ │ -0026ee90: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -0026eea0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
.
│ │ │ -0026eee0: 5b5b 7061 636b 6167 6573 5d5d 0a6e 616d  [[packages]].nam
│ │ │ -0026eef0: 6520 3d20 2273 7373 6422 0a76 6572 7369  e = "sssd".versi
│ │ │ -0026ef00: 6f6e 203d 2022 2a22 0a3c 2f63 6f64 653e  on = "*".
│ │ │ -0026ef10: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ -0026efc0: 7469 6f6e 2041 6e61 636f 6e64 6120 736e tion Anaconda sn │ │ │ -0026efd0: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
│ │ │ -0026f080: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ -0026f0a0: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ -0026f0d0: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ -0026f060: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ -0026f070: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ -0026f090: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ -0026f0b0: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ -0026f0c0: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:enable

.packag │ │ │ -0026f110: 6520 2d2d 6164 643d 7373 7364 0a3c 2f63 e --add=sssd.

│ │ │ -0026f130: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ -0026f1d0: 6564 6961 7469 6f6e 2050 7570 7065 7420 ediation Puppet │ │ │ -0026f1e0: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ -0026f1f0: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Com │ │ │ -0026f270: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ -0026f2a0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ -0026f2c0: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -0026f2d0: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -0026f2f0: 2f74 683e 3c74 643e 656e 6162 6c65 3c2f /th>enable
│ │ │ -0026f310: 3c70 7265 3e3c 636f 6465 3e69 6e63 6c75
inclu
│ │ │ -0026f320: 6465 2069 6e73 7461 6c6c 5f73 7373 640a  de install_sssd.
│ │ │ -0026f330: 0a63 6c61 7373 2069 6e73 7461 6c6c 5f73  .class install_s
│ │ │ -0026f340: 7373 6420 7b0a 2020 7061 636b 6167 6520  ssd {.  package 
│ │ │ -0026f350: 7b20 2773 7373 6427 3a0a 2020 2020 656e  { 'sssd':.    en
│ │ │ -0026f360: 7375 7265 203d 2667 743b 2027 696e 7374  sure => 'inst
│ │ │ -0026f370: 616c 6c65 6427 2c0a 2020 7d0a 7d0a 3c2f  alled',.  }.}.
Re │ │ │ -0026f430: 6d65 6469 6174 696f 6e20 416e 7369 626c mediation Ansibl │ │ │ -0026f440: 6520 736e 6970 7065 7420 e287 b23c 2f61 e snippet ...
< │ │ │ -0026f4e0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -0026f4f0: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ -0026f540: 3c74 723e 3c74 683e 5374 7261 7465 6779
- n
│ │ │ -0026f580: 616d 653a 2047 6174 6865 7220 7468 6520  ame: Gather the 
│ │ │ -0026f590: 7061 636b 6167 6520 6661 6374 730a 2020  package facts.  
│ │ │ -0026f5a0: 7061 636b 6167 655f 6661 6374 733a 0a20  package_facts:. 
│ │ │ -0026f5b0: 2020 206d 616e 6167 6572 3a20 6175 746f     manager: auto
│ │ │ -0026f5c0: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ -0026f5d0: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ -0026f5e0: 0a20 202d 2065 6e61 626c 655f 7374 7261  .  - enable_stra
│ │ │ -0026f5f0: 7465 6779 0a20 202d 206c 6f77 5f63 6f6d  tegy.  - low_com
│ │ │ -0026f600: 706c 6578 6974 790a 2020 2d20 6c6f 775f  plexity.  - low_
│ │ │ -0026f610: 6469 7372 7570 7469 6f6e 0a20 202d 206d  disruption.  - m
│ │ │ -0026f620: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ -0026f630: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ -0026f640: 6465 640a 2020 2d20 7061 636b 6167 655f  ded.  - package_
│ │ │ -0026f650: 7373 7364 5f69 6e73 7461 6c6c 6564 0a0a  sssd_installed..
│ │ │ -0026f660: 2d20 6e61 6d65 3a20 456e 7375 7265 2073  - name: Ensure s
│ │ │ -0026f670: 7373 6420 6973 2069 6e73 7461 6c6c 6564  ssd is installed
│ │ │ -0026f680: 0a20 2061 6e73 6962 6c65 2e62 7569 6c74  .  ansible.built
│ │ │ -0026f690: 696e 2e70 6163 6b61 6765 3a0a 2020 2020  in.package:.    
│ │ │ -0026f6a0: 6e61 6d65 3a20 7373 7364 0a20 2020 2073  name: sssd.    s
│ │ │ -0026f6b0: 7461 7465 3a20 7072 6573 656e 740a 2020  tate: present.  
│ │ │ -0026f6c0: 7768 656e 3a20 2722 7373 7364 2d63 6f6d  when: '"sssd-com
│ │ │ -0026f6d0: 6d6f 6e22 2069 6e20 616e 7369 626c 655f  mon" in ansible_
│ │ │ -0026f6e0: 6661 6374 732e 7061 636b 6167 6573 270a  facts.packages'.
│ │ │ -0026f6f0: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ -0026f700: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ -0026f710: 2020 2d20 656e 6162 6c65 5f73 7472 6174    - enable_strat
│ │ │ -0026f720: 6567 790a 2020 2d20 6c6f 775f 636f 6d70  egy.  - low_comp
│ │ │ -0026f730: 6c65 7869 7479 0a20 202d 206c 6f77 5f64  lexity.  - low_d
│ │ │ -0026f740: 6973 7275 7074 696f 6e0a 2020 2d20 6d65  isruption.  - me
│ │ │ -0026f750: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ -0026f760: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ -0026f770: 6564 0a20 202d 2070 6163 6b61 6765 5f73  ed.  - package_s
│ │ │ -0026f780: 7373 645f 696e 7374 616c 6c65 640a 3c2f  ssd_installed.
Re │ │ │ -0026f840: 6d65 6469 6174 696f 6e20 5368 656c 6c20 mediation Shell │ │ │ -0026f850: 7363 7269 7074 20e2 87b2 3c2f 613e 3c62 script ...
C │ │ │ -0026f4d0: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -0026f500: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ -0026f510: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -0026f550: 3a3c 2f74 683e 3c74 643e 656e 6162 6c65 :enable │ │ │ -0026f560: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Comp │ │ │ -0026f8e0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -0026f8f0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -0026f910: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ -0026f930: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -0026f940: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:enable
< │ │ │ -0026f980: 7072 653e 3c63 6f64 653e 2320 5265 6d65 pre># Reme │ │ │ -0026f990: 6469 6174 696f 6e20 6973 2061 7070 6c69 diation is appli │ │ │ -0026f9a0: 6361 626c 6520 6f6e 6c79 2069 6e20 6365 cable only in ce │ │ │ -0026f9b0: 7274 6169 6e20 706c 6174 666f 726d 730a rtain platforms. │ │ │ -0026f9c0: 6966 2072 706d 202d 2d71 7569 6574 202d if rpm --quiet - │ │ │ -0026f9d0: 7120 7373 7364 2d63 6f6d 6d6f 6e3b 2074 q sssd-common; t │ │ │ -0026f9e0: 6865 6e0a 0a69 6620 2120 7270 6d20 2d71 hen..if ! rpm -q │ │ │ -0026f9f0: 202d 2d71 7569 6574 2022 7373 7364 2220 --quiet "sssd" │ │ │ -0026fa00: 3b20 7468 656e 0a20 2020 2064 6e66 2069 ; then. dnf i │ │ │ -0026fa10: 6e73 7461 6c6c 202d 7920 2273 7373 6422 nstall -y "sssd" │ │ │ -0026fa20: 0a66 690a 0a65 6c73 650a 2020 2020 2667 .fi..else. &g │ │ │ -0026fa30: 743b 2661 6d70 3b32 2065 6368 6f20 2752 t;&2 echo 'R │ │ │ -0026fa40: 656d 6564 6961 7469 6f6e 2069 7320 6e6f emediation is no │ │ │ -0026fa50: 7420 6170 706c 6963 6162 6c65 2c20 6e6f t applicable, no │ │ │ -0026fa60: 7468 696e 6720 7761 7320 646f 6e65 270a thing was done'. │ │ │ -0026fa70: 6669 0a3c 2f63 6f64 653e 3c2f 7072 653e fi. │ │ │ +0026ee70: 2122 3e52 656d 6564 6961 7469 6f6e 2041 !">Remediation A │ │ │ +0026ee80: 6e73 6962 6c65 2073 6e69 7070 6574 20e2 nsible snippet . │ │ │ +0026ee90: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ +0026ef10: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +0026ef30: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ +0026ef80: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 < │ │ │ +0026efb0: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
- name: Gather
│ │ │ +0026efd0: 2074 6865 2070 6163 6b61 6765 2066 6163   the package fac
│ │ │ +0026efe0: 7473 0a20 2070 6163 6b61 6765 5f66 6163  ts.  package_fac
│ │ │ +0026eff0: 7473 3a0a 2020 2020 6d61 6e61 6765 723a  ts:.    manager:
│ │ │ +0026f000: 2061 7574 6f0a 2020 7461 6773 3a0a 2020   auto.  tags:.  
│ │ │ +0026f010: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +0026f020: 2d36 2861 290a 2020 2d20 656e 6162 6c65  -6(a).  - enable
│ │ │ +0026f030: 5f73 7472 6174 6567 790a 2020 2d20 6c6f  _strategy.  - lo
│ │ │ +0026f040: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ +0026f050: 206c 6f77 5f64 6973 7275 7074 696f 6e0a   low_disruption.
│ │ │ +0026f060: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ +0026f070: 6974 790a 2020 2d20 6e6f 5f72 6562 6f6f  ity.  - no_reboo
│ │ │ +0026f080: 745f 6e65 6564 6564 0a20 202d 2070 6163  t_needed.  - pac
│ │ │ +0026f090: 6b61 6765 5f73 7373 645f 696e 7374 616c  kage_sssd_instal
│ │ │ +0026f0a0: 6c65 640a 0a2d 206e 616d 653a 2045 6e73  led..- name: Ens
│ │ │ +0026f0b0: 7572 6520 7373 7364 2069 7320 696e 7374  ure sssd is inst
│ │ │ +0026f0c0: 616c 6c65 640a 2020 616e 7369 626c 652e  alled.  ansible.
│ │ │ +0026f0d0: 6275 696c 7469 6e2e 7061 636b 6167 653a  builtin.package:
│ │ │ +0026f0e0: 0a20 2020 206e 616d 653a 2073 7373 640a  .    name: sssd.
│ │ │ +0026f0f0: 2020 2020 7374 6174 653a 2070 7265 7365      state: prese
│ │ │ +0026f100: 6e74 0a20 2077 6865 6e3a 2027 2273 7373  nt.  when: '"sss
│ │ │ +0026f110: 642d 636f 6d6d 6f6e 2220 696e 2061 6e73  d-common" in ans
│ │ │ +0026f120: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +0026f130: 6765 7327 0a20 2074 6167 733a 0a20 202d  ges'.  tags:.  -
│ │ │ +0026f140: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +0026f150: 3628 6129 0a20 202d 2065 6e61 626c 655f  6(a).  - enable_
│ │ │ +0026f160: 7374 7261 7465 6779 0a20 202d 206c 6f77  strategy.  - low
│ │ │ +0026f170: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +0026f180: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ +0026f190: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ +0026f1a0: 7479 0a20 202d 206e 6f5f 7265 626f 6f74  ty.  - no_reboot
│ │ │ +0026f1b0: 5f6e 6565 6465 640a 2020 2d20 7061 636b  _needed.  - pack
│ │ │ +0026f1c0: 6167 655f 7373 7364 5f69 6e73 7461 6c6c  age_sssd_install
│ │ │ +0026f1d0: 6564 0a3c 2f63 6f64 653e 3c2f 7072 653e  ed.
│ │ │ +0026f1e0: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22 Remediation P │ │ │ +0026f290: 7570 7065 7420 736e 6970 7065 7420 e287 uppet snippet .. │ │ │ +0026f2a0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
Complexity:< │ │ │ +0026ef20: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +0026ef40: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ +0026ef90: 6174 6567 793a 3c2f 7468 3e3c 7464 3e65 ategy:e │ │ │ +0026efa0: 6e61 626c 653c 2f74 643e 3c2f 7472 3e3c nable
< │ │ │ +0026f320: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ +0026f340: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ +0026f390: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
include install
│ │ │ +0026f3e0: 5f73 7373 640a 0a63 6c61 7373 2069 6e73  _sssd..class ins
│ │ │ +0026f3f0: 7461 6c6c 5f73 7373 6420 7b0a 2020 7061  tall_sssd {.  pa
│ │ │ +0026f400: 636b 6167 6520 7b20 2773 7373 6427 3a0a  ckage { 'sssd':.
│ │ │ +0026f410: 2020 2020 656e 7375 7265 203d 2667 743b      ensure =>
│ │ │ +0026f420: 2027 696e 7374 616c 6c65 6427 2c0a 2020   'installed',.  
│ │ │ +0026f430: 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70 7265  }.}.
Remediation │ │ │ +0026f4f0: 4f53 4275 696c 6420 426c 7565 7072 696e OSBuild Blueprin │ │ │ +0026f500: 7420 736e 6970 7065 7420 e287 b23c 2f61 t snippet ...

│ │ │ +0026f550: 0a5b 5b70 6163 6b61 6765 735d 5d0a 6e61  .[[packages]].na
│ │ │ +0026f560: 6d65 203d 2022 7373 7364 220a 7665 7273  me = "sssd".vers
│ │ │ +0026f570: 696f 6e20 3d20 222a 220a 3c2f 636f 6465  ion = "*".
Remedi │ │ │ +0026f630: 6174 696f 6e20 5368 656c 6c20 7363 7269 ation Shell scri │ │ │ +0026f640: 7074 20e2 87b2 3c2f 613e 3c62 723e 3c64 pt ...
│ │ │ +0026f6c0: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 < │ │ │ +0026f750: 7464 3e65 6e61 626c 653c 2f74 643e 3c2f td>enable
low
Disr │ │ │ +0026f350: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +0026f360: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ +0026f3a0: 7465 6779 3a3c 2f74 683e 3c74 643e 656e tegy:en │ │ │ +0026f3b0: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
Complexi │ │ │ +0026f6d0: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +0026f6e0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Disruption:low
Reboot │ │ │ +0026f720: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +0026f730: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Strategy:
│ │ │ +0026f770: 3c63 6f64 653e 2320 5265 6d65 6469 6174  # Remediat
│ │ │ +0026f780: 696f 6e20 6973 2061 7070 6c69 6361 626c  ion is applicabl
│ │ │ +0026f790: 6520 6f6e 6c79 2069 6e20 6365 7274 6169  e only in certai
│ │ │ +0026f7a0: 6e20 706c 6174 666f 726d 730a 6966 2072  n platforms.if r
│ │ │ +0026f7b0: 706d 202d 2d71 7569 6574 202d 7120 7373  pm --quiet -q ss
│ │ │ +0026f7c0: 7364 2d63 6f6d 6d6f 6e3b 2074 6865 6e0a  sd-common; then.
│ │ │ +0026f7d0: 0a69 6620 2120 7270 6d20 2d71 202d 2d71  .if ! rpm -q --q
│ │ │ +0026f7e0: 7569 6574 2022 7373 7364 2220 3b20 7468  uiet "sssd" ; th
│ │ │ +0026f7f0: 656e 0a20 2020 2064 6e66 2069 6e73 7461  en.    dnf insta
│ │ │ +0026f800: 6c6c 202d 7920 2273 7373 6422 0a66 690a  ll -y "sssd".fi.
│ │ │ +0026f810: 0a65 6c73 650a 2020 2020 2667 743b 2661  .else.    >&a
│ │ │ +0026f820: 6d70 3b32 2065 6368 6f20 2752 656d 6564  mp;2 echo 'Remed
│ │ │ +0026f830: 6961 7469 6f6e 2069 7320 6e6f 7420 6170  iation is not ap
│ │ │ +0026f840: 706c 6963 6162 6c65 2c20 6e6f 7468 696e  plicable, nothin
│ │ │ +0026f850: 6720 7761 7320 646f 6e65 270a 6669 0a3c  g was done'.fi.<
│ │ │ +0026f860: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ +0026f910: 656d 6564 6961 7469 6f6e 2041 6e61 636f emediation Anaco │ │ │ +0026f920: 6e64 6120 736e 6970 7065 7420 e287 b23c nda snippet ...< │ │ │ +0026f930: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
< │ │ │ +0026fa00: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +0026fa10: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
.
│ │ │ +0026fa60: 7061 636b 6167 6520 2d2d 6164 643d 7373  package --add=ss
│ │ │ +0026fa70: 7364 0a3c 2f63 6f64 653e 3c2f 7072 653e  sd.
│ │ │ 0026fa80: 3c2f 6469 763e 3c2f 6469 763e 3c2f 7464 │ │ │ 0026fab0: 3c74 7220 6461 7461 2d74 742d 6964 3d22 Remediation O │ │ │ -00270960: 5342 7569 6c64 2042 6c75 6570 7269 6e74 SBuild Blueprint │ │ │ -00270970: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -00270980: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
.
│ │ │ -002709c0: 5b63 7573 746f 6d69 7a61 7469 6f6e 732e  [customizations.
│ │ │ -002709d0: 7365 7276 6963 6573 5d0a 656e 6162 6c65  services].enable
│ │ │ -002709e0: 6420 3d20 5b22 7373 7364 225d 0a3c 2f63  d = ["sssd"].
│ │ │ -00270a00: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ -00270aa0: 6564 6961 7469 6f6e 2050 7570 7065 7420 ediation Puppet │ │ │ -00270ab0: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ -00270ac0: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Complexity:low
Disrup │ │ │ +0026f9e0: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ +0026f9f0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ +0026fa30: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ +0026fa40: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Com │ │ │ -00270b40: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ -00270b70: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ -00270b90: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -00270ba0: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -00270bc0: 2f74 683e 3c74 643e 656e 6162 6c65 3c2f /th>enable
│ │ │ -00270be0: 3c70 7265 3e3c 636f 6465 3e69 6e63 6c75
inclu
│ │ │ -00270bf0: 6465 2065 6e61 626c 655f 7373 7364 0a0a  de enable_sssd..
│ │ │ -00270c00: 636c 6173 7320 656e 6162 6c65 5f73 7373  class enable_sss
│ │ │ -00270c10: 6420 7b0a 2020 7365 7276 6963 6520 7b27  d {.  service {'
│ │ │ -00270c20: 7373 7364 273a 0a20 2020 2065 6e61 626c  sssd':.    enabl
│ │ │ -00270c30: 6520 3d26 6774 3b20 7472 7565 2c0a 2020  e => true,.  
│ │ │ -00270c40: 2020 656e 7375 7265 203d 2667 743b 2027    ensure => '
│ │ │ -00270c50: 7275 6e6e 696e 6727 2c0a 2020 7d0a 7d0a  running',.  }.}.
│ │ │ -00270c60: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ -00270d10: 5265 6d65 6469 6174 696f 6e20 416e 7369 Remediation Ansi │ │ │ -00270d20: 626c 6520 736e 6970 7065 7420 e287 b23c ble snippet ...< │ │ │ -00270d30: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
< │ │ │ -00270e00: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -00270e10: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
-
│ │ │ -00270e60: 206e 616d 653a 2047 6174 6865 7220 7468   name: Gather th
│ │ │ -00270e70: 6520 7061 636b 6167 6520 6661 6374 730a  e package facts.
│ │ │ -00270e80: 2020 7061 636b 6167 655f 6661 6374 733a    package_facts:
│ │ │ -00270e90: 0a20 2020 206d 616e 6167 6572 3a20 6175  .    manager: au
│ │ │ -00270ea0: 746f 0a20 2074 6167 733a 0a20 202d 204e  to.  tags:.  - N
│ │ │ -00270eb0: 4953 542d 3830 302d 3533 2d43 4d2d 3628  IST-800-53-CM-6(
│ │ │ -00270ec0: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ -00270ed0: 3533 2d49 412d 3528 3130 290a 2020 2d20  53-IA-5(10).  - 
│ │ │ -00270ee0: 656e 6162 6c65 5f73 7472 6174 6567 790a  enable_strategy.
│ │ │ -00270ef0: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ -00270f00: 7479 0a20 202d 206c 6f77 5f64 6973 7275  ty.  - low_disru
│ │ │ -00270f10: 7074 696f 6e0a 2020 2d20 6d65 6469 756d  ption.  - medium
│ │ │ -00270f20: 5f73 6576 6572 6974 790a 2020 2d20 6e6f  _severity.  - no
│ │ │ -00270f30: 5f72 6562 6f6f 745f 6e65 6564 6564 0a20  _reboot_needed. 
│ │ │ -00270f40: 202d 2073 6572 7669 6365 5f73 7373 645f   - service_sssd_
│ │ │ -00270f50: 656e 6162 6c65 640a 0a2d 206e 616d 653a  enabled..- name:
│ │ │ -00270f60: 2045 6e61 626c 6520 7468 6520 5353 5344   Enable the SSSD
│ │ │ -00270f70: 2053 6572 7669 6365 202d 2045 6e61 626c   Service - Enabl
│ │ │ -00270f80: 6520 7365 7276 6963 6520 7373 7364 0a20  e service sssd. 
│ │ │ -00270f90: 2062 6c6f 636b 3a0a 0a20 202d 206e 616d   block:..  - nam
│ │ │ -00270fa0: 653a 2047 6174 6865 7220 7468 6520 7061  e: Gather the pa
│ │ │ -00270fb0: 636b 6167 6520 6661 6374 730a 2020 2020  ckage facts.    
│ │ │ -00270fc0: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ -00270fd0: 7061 636b 6167 655f 6661 6374 733a 0a20  package_facts:. 
│ │ │ -00270fe0: 2020 2020 206d 616e 6167 6572 3a20 6175       manager: au
│ │ │ -00270ff0: 746f 0a0a 2020 2d20 6e61 6d65 3a20 456e  to..  - name: En
│ │ │ -00271000: 6162 6c65 2074 6865 2053 5353 4420 5365  able the SSSD Se
│ │ │ -00271010: 7276 6963 6520 2d20 456e 6162 6c65 2053  rvice - Enable S
│ │ │ -00271020: 6572 7669 6365 2073 7373 640a 2020 2020  ervice sssd.    
│ │ │ -00271030: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ -00271040: 7379 7374 656d 643a 0a20 2020 2020 206e  systemd:.      n
│ │ │ -00271050: 616d 653a 2073 7373 640a 2020 2020 2020  ame: sssd.      
│ │ │ -00271060: 656e 6162 6c65 643a 2074 7275 650a 2020  enabled: true.  
│ │ │ -00271070: 2020 2020 7374 6174 653a 2073 7461 7274      state: start
│ │ │ -00271080: 6564 0a20 2020 2020 206d 6173 6b65 643a  ed.      masked:
│ │ │ -00271090: 2066 616c 7365 0a20 2020 2077 6865 6e3a   false.    when:
│ │ │ -002710a0: 0a20 2020 202d 2027 2273 7373 642d 636f  .    - '"sssd-co
│ │ │ -002710b0: 6d6d 6f6e 2220 696e 2061 6e73 6962 6c65  mmon" in ansible
│ │ │ -002710c0: 5f66 6163 7473 2e70 6163 6b61 6765 7327  _facts.packages'
│ │ │ -002710d0: 0a20 2074 6167 733a 0a20 202d 204e 4953  .  tags:.  - NIS
│ │ │ -002710e0: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ -002710f0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -00271100: 2d49 412d 3528 3130 290a 2020 2d20 656e  -IA-5(10).  - en
│ │ │ -00271110: 6162 6c65 5f73 7472 6174 6567 790a 2020  able_strategy.  
│ │ │ -00271120: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ -00271130: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ -00271140: 696f 6e0a 2020 2d20 6d65 6469 756d 5f73  ion.  - medium_s
│ │ │ -00271150: 6576 6572 6974 790a 2020 2d20 6e6f 5f72  everity.  - no_r
│ │ │ -00271160: 6562 6f6f 745f 6e65 6564 6564 0a20 202d  eboot_needed.  -
│ │ │ -00271170: 2073 6572 7669 6365 5f73 7373 645f 656e   service_sssd_en
│ │ │ -00271180: 6162 6c65 640a 2020 2d20 7370 6563 6961  abled.  - specia
│ │ │ -00271190: 6c5f 7365 7276 6963 655f 626c 6f63 6b0a  l_service_block.
│ │ │ -002711a0: 2020 7768 656e 3a0a 2020 2d20 2722 7373    when:.  - '"ss
│ │ │ -002711b0: 7364 2d63 6f6d 6d6f 6e22 2069 6e20 616e  sd-common" in an
│ │ │ -002711c0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -002711d0: 6167 6573 270a 2020 2d20 2820 2273 7373  ages'.  - ( "sss
│ │ │ -002711e0: 642d 636f 6d6d 6f6e 2220 696e 2061 6e73  d-common" in ans
│ │ │ -002711f0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -00271200: 6765 7320 616e 6420 226b 6572 6e65 6c22  ges and "kernel"
│ │ │ -00271210: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -00271220: 732e 7061 636b 6167 6573 0a20 2020 2029  s.packages.    )
│ │ │ +00270950: 2122 3e52 656d 6564 6961 7469 6f6e 2041  !">Remediation A
│ │ │ +00270960: 6e73 6962 6c65 2073 6e69 7070 6574 20e2  nsible snippet .
│ │ │ +00270970: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063  ..
Complexity:low
Disrup │ │ │ -00270de0: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -00270df0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -00270e30: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ -00270e40: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
│ │ │ +002709f0: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +00270a10: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ +00270a60: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 < │ │ │ +00270a90: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
- name: Gather
│ │ │ +00270ab0: 2074 6865 2070 6163 6b61 6765 2066 6163   the package fac
│ │ │ +00270ac0: 7473 0a20 2070 6163 6b61 6765 5f66 6163  ts.  package_fac
│ │ │ +00270ad0: 7473 3a0a 2020 2020 6d61 6e61 6765 723a  ts:.    manager:
│ │ │ +00270ae0: 2061 7574 6f0a 2020 7461 6773 3a0a 2020   auto.  tags:.  
│ │ │ +00270af0: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ +00270b00: 2d36 2861 290a 2020 2d20 4e49 5354 2d38  -6(a).  - NIST-8
│ │ │ +00270b10: 3030 2d35 332d 4941 2d35 2831 3029 0a20  00-53-IA-5(10). 
│ │ │ +00270b20: 202d 2065 6e61 626c 655f 7374 7261 7465   - enable_strate
│ │ │ +00270b30: 6779 0a20 202d 206c 6f77 5f63 6f6d 706c  gy.  - low_compl
│ │ │ +00270b40: 6578 6974 790a 2020 2d20 6c6f 775f 6469  exity.  - low_di
│ │ │ +00270b50: 7372 7570 7469 6f6e 0a20 202d 206d 6564  sruption.  - med
│ │ │ +00270b60: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ +00270b70: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ +00270b80: 640a 2020 2d20 7365 7276 6963 655f 7373  d.  - service_ss
│ │ │ +00270b90: 7364 5f65 6e61 626c 6564 0a0a 2d20 6e61  sd_enabled..- na
│ │ │ +00270ba0: 6d65 3a20 456e 6162 6c65 2074 6865 2053  me: Enable the S
│ │ │ +00270bb0: 5353 4420 5365 7276 6963 6520 2d20 456e  SSD Service - En
│ │ │ +00270bc0: 6162 6c65 2073 6572 7669 6365 2073 7373  able service sss
│ │ │ +00270bd0: 640a 2020 626c 6f63 6b3a 0a0a 2020 2d20  d.  block:..  - 
│ │ │ +00270be0: 6e61 6d65 3a20 4761 7468 6572 2074 6865  name: Gather the
│ │ │ +00270bf0: 2070 6163 6b61 6765 2066 6163 7473 0a20   package facts. 
│ │ │ +00270c00: 2020 2061 6e73 6962 6c65 2e62 7569 6c74     ansible.built
│ │ │ +00270c10: 696e 2e70 6163 6b61 6765 5f66 6163 7473  in.package_facts
│ │ │ +00270c20: 3a0a 2020 2020 2020 6d61 6e61 6765 723a  :.      manager:
│ │ │ +00270c30: 2061 7574 6f0a 0a20 202d 206e 616d 653a   auto..  - name:
│ │ │ +00270c40: 2045 6e61 626c 6520 7468 6520 5353 5344   Enable the SSSD
│ │ │ +00270c50: 2053 6572 7669 6365 202d 2045 6e61 626c   Service - Enabl
│ │ │ +00270c60: 6520 5365 7276 6963 6520 7373 7364 0a20  e Service sssd. 
│ │ │ +00270c70: 2020 2061 6e73 6962 6c65 2e62 7569 6c74     ansible.built
│ │ │ +00270c80: 696e 2e73 7973 7465 6d64 3a0a 2020 2020  in.systemd:.    
│ │ │ +00270c90: 2020 6e61 6d65 3a20 7373 7364 0a20 2020    name: sssd.   
│ │ │ +00270ca0: 2020 2065 6e61 626c 6564 3a20 7472 7565     enabled: true
│ │ │ +00270cb0: 0a20 2020 2020 2073 7461 7465 3a20 7374  .      state: st
│ │ │ +00270cc0: 6172 7465 640a 2020 2020 2020 6d61 736b  arted.      mask
│ │ │ +00270cd0: 6564 3a20 6661 6c73 650a 2020 2020 7768  ed: false.    wh
│ │ │ +00270ce0: 656e 3a0a 2020 2020 2d20 2722 7373 7364  en:.    - '"sssd
│ │ │ +00270cf0: 2d63 6f6d 6d6f 6e22 2069 6e20 616e 7369  -common" in ansi
│ │ │ +00270d00: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +00270d10: 6573 270a 2020 7461 6773 3a0a 2020 2d20  es'.  tags:.  - 
│ │ │ +00270d20: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ +00270d30: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ +00270d40: 2d35 332d 4941 2d35 2831 3029 0a20 202d  -53-IA-5(10).  -
│ │ │ +00270d50: 2065 6e61 626c 655f 7374 7261 7465 6779   enable_strategy
│ │ │ +00270d60: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ +00270d70: 6974 790a 2020 2d20 6c6f 775f 6469 7372  ity.  - low_disr
│ │ │ +00270d80: 7570 7469 6f6e 0a20 202d 206d 6564 6975  uption.  - mediu
│ │ │ +00270d90: 6d5f 7365 7665 7269 7479 0a20 202d 206e  m_severity.  - n
│ │ │ +00270da0: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ +00270db0: 2020 2d20 7365 7276 6963 655f 7373 7364    - service_sssd
│ │ │ +00270dc0: 5f65 6e61 626c 6564 0a20 202d 2073 7065  _enabled.  - spe
│ │ │ +00270dd0: 6369 616c 5f73 6572 7669 6365 5f62 6c6f  cial_service_blo
│ │ │ +00270de0: 636b 0a20 2077 6865 6e3a 0a20 202d 2027  ck.  when:.  - '
│ │ │ +00270df0: 2273 7373 642d 636f 6d6d 6f6e 2220 696e  "sssd-common" in
│ │ │ +00270e00: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +00270e10: 6163 6b61 6765 7327 0a20 202d 2028 2022  ackages'.  - ( "
│ │ │ +00270e20: 7373 7364 2d63 6f6d 6d6f 6e22 2069 6e20  sssd-common" in 
│ │ │ +00270e30: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +00270e40: 636b 6167 6573 2061 6e64 2022 6b65 726e  ckages and "kern
│ │ │ +00270e50: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ +00270e60: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ +00270e70: 2020 290a 3c2f 636f 6465 3e3c 2f70 7265    ).
Remediation │ │ │ +00270f30: 5075 7070 6574 2073 6e69 7070 6574 20e2 Puppet snippet . │ │ │ +00270f40: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
Complexity:< │ │ │ +00270a00: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +00270a20: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ +00270a70: 6174 6567 793a 3c2f 7468 3e3c 7464 3e65 ategy:e │ │ │ +00270a80: 6e61 626c 653c 2f74 643e 3c2f 7472 3e3c nable
│ │ │ +00270fc0: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +00270fe0: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ +00271030: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 < │ │ │ +00271060: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
include enable
│ │ │ +00271080: 5f73 7373 640a 0a63 6c61 7373 2065 6e61  _sssd..class ena
│ │ │ +00271090: 626c 655f 7373 7364 207b 0a20 2073 6572  ble_sssd {.  ser
│ │ │ +002710a0: 7669 6365 207b 2773 7373 6427 3a0a 2020  vice {'sssd':.  
│ │ │ +002710b0: 2020 656e 6162 6c65 203d 2667 743b 2074    enable => t
│ │ │ +002710c0: 7275 652c 0a20 2020 2065 6e73 7572 6520  rue,.    ensure 
│ │ │ +002710d0: 3d26 6774 3b20 2772 756e 6e69 6e67 272c  => 'running',
│ │ │ +002710e0: 0a20 207d 0a7d 0a3c 2f63 6f64 653e 3c2f  .  }.}.Remediati
│ │ │ +002711a0: 6f6e 204f 5342 7569 6c64 2042 6c75 6570  on OSBuild Bluep
│ │ │ +002711b0: 7269 6e74 2073 6e69 7070 6574 20e2 87b2  rint snippet ...
│ │ │ +002711c0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61  
.[customizati
│ │ │ +00271210: 6f6e 732e 7365 7276 6963 6573 5d0a 656e  ons.services].en
│ │ │ +00271220: 6162 6c65 6420 3d20 5b22 7373 7364 225d  abled = ["sssd"]
│ │ │  00271230: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
│ │ │ -003fe4e0: 5265 6d65 6469 6174 696f 6e20 4f53 4275 Remediation OSBu │ │ │ -003fe4f0: 696c 6420 426c 7565 7072 696e 7420 736e ild Blueprint sn │ │ │ -003fe500: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
.[[p
│ │ │ -003fe550: 6163 6b61 6765 735d 5d0a 6e61 6d65 203d  ackages]].name =
│ │ │ -003fe560: 2022 6175 6469 7422 0a76 6572 7369 6f6e   "audit".version
│ │ │ -003fe570: 203d 2022 2a22 0a3c 2f63 6f64 653e 3c2f   = "*".
Remediati │ │ │ -003fe630: 6f6e 2041 6e61 636f 6e64 6120 736e 6970 on Anaconda snip │ │ │ -003fe640: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ -003fe650: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -003fe660: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -003fe670: 7365 2220 6964 3d22 6964 3939 3622 3e3c se" id="id996">< │ │ │ -003fe680: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ -003fe690: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ -003fe6a0: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ -003fe6b0: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ -003fe6c0: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >
Disruption:Strategy: │ │ │ -003fe750: 3c74 643e 656e 6162 6c65 3c2f 7464 3e3c < │ │ │ -003fe760: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
Complexity:< │ │ │ +00270fd0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +00270ff0: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ +00271040: 6174 6567 793a 3c2f 7468 3e3c 7464 3e65 ategy:e │ │ │ +00271050: 6e61 626c 653c 2f74 643e 3c2f 7472 3e3c nable
Complex │ │ │ -003fe6d0: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ -003fe6e0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
low
Reboo │ │ │ -003fe720: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -003fe730: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
enable
.package 
│ │ │ -003fe780: 2d2d 6164 643d 6175 6469 740a 3c2f 636f  --add=audit.
< │ │ │ -003fe7a0: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ -003fe7b0: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ -003fe7c0: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ -003fe7d0: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ -003fe7e0: 6439 3937 2220 7461 6269 6e64 6578 3d22 d997" tabindex=" │ │ │ -003fe7f0: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ -003fe800: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ -003fe810: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ -003fe820: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ -003fe830: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ -003fe840: 6469 6174 696f 6e20 5075 7070 6574 2073 diation Puppet s │ │ │ -003fe850: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ -003fe8e0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -003fe8f0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -003fe910: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ -003fe930: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ -003fe940: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:enable
< │ │ │ -003fe980: 7072 653e 3c63 6f64 653e 696e 636c 7564 pre>includ │ │ │ -003fe990: 6520 696e 7374 616c 6c5f 6175 6469 740a e install_audit. │ │ │ -003fe9a0: 0a63 6c61 7373 2069 6e73 7461 6c6c 5f61 .class install_a │ │ │ -003fe9b0: 7564 6974 207b 0a20 2070 6163 6b61 6765 udit {. package │ │ │ -003fe9c0: 207b 2027 6175 6469 7427 3a0a 2020 2020 { 'audit':. │ │ │ -003fe9d0: 656e 7375 7265 203d 2667 743b 2027 696e ensure => 'in │ │ │ -003fe9e0: 7374 616c 6c65 6427 2c0a 2020 7d0a 7d0a stalled',. }.}. │ │ │ -003fe9f0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64 │ │ │ -003feaa0: 5265 6d65 6469 6174 696f 6e20 416e 7369 Remediation Ansi │ │ │ -003feab0: 626c 6520 736e 6970 7065 7420 e287 b23c ble snippet ...< │ │ │ -003feac0: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
< │ │ │ -003feb90: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -003feba0: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
-
│ │ │ -003febf0: 206e 616d 653a 2047 6174 6865 7220 7468   name: Gather th
│ │ │ -003fec00: 6520 7061 636b 6167 6520 6661 6374 730a  e package facts.
│ │ │ -003fec10: 2020 7061 636b 6167 655f 6661 6374 733a    package_facts:
│ │ │ -003fec20: 0a20 2020 206d 616e 6167 6572 3a20 6175  .    manager: au
│ │ │ -003fec30: 746f 0a20 2074 6167 733a 0a20 202d 204e  to.  tags:.  - N
│ │ │ -003fec40: 4953 542d 3830 302d 3533 2d41 432d 3728  IST-800-53-AC-7(
│ │ │ -003fec50: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ -003fec60: 3533 2d41 552d 3132 2832 290a 2020 2d20  53-AU-12(2).  - 
│ │ │ -003fec70: 4e49 5354 2d38 3030 2d35 332d 4155 2d31  NIST-800-53-AU-1
│ │ │ -003fec80: 340a 2020 2d20 4e49 5354 2d38 3030 2d35  4.  - NIST-800-5
│ │ │ -003fec90: 332d 4155 2d32 2861 290a 2020 2d20 4e49  3-AU-2(a).  - NI
│ │ │ -003feca0: 5354 2d38 3030 2d35 332d 4155 2d37 2831  ST-800-53-AU-7(1
│ │ │ -003fecb0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ -003fecc0: 332d 4155 2d37 2832 290a 2020 2d20 4e49  3-AU-7(2).  - NI
│ │ │ -003fecd0: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ -003fece0: 290a 2020 2d20 5043 492d 4453 532d 5265  ).  - PCI-DSS-Re
│ │ │ -003fecf0: 712d 3130 2e31 0a20 202d 2050 4349 2d44  q-10.1.  - PCI-D
│ │ │ -003fed00: 5353 7634 2d31 302e 320a 2020 2d20 5043  SSv4-10.2.  - PC
│ │ │ -003fed10: 492d 4453 5376 342d 3130 2e32 2e31 0a20  I-DSSv4-10.2.1. 
│ │ │ -003fed20: 202d 2065 6e61 626c 655f 7374 7261 7465   - enable_strate
│ │ │ -003fed30: 6779 0a20 202d 206c 6f77 5f63 6f6d 706c  gy.  - low_compl
│ │ │ -003fed40: 6578 6974 790a 2020 2d20 6c6f 775f 6469  exity.  - low_di
│ │ │ -003fed50: 7372 7570 7469 6f6e 0a20 202d 206d 6564  sruption.  - med
│ │ │ -003fed60: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ -003fed70: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ -003fed80: 640a 2020 2d20 7061 636b 6167 655f 6175  d.  - package_au
│ │ │ -003fed90: 6469 745f 696e 7374 616c 6c65 640a 0a2d  dit_installed..-
│ │ │ -003feda0: 206e 616d 653a 2045 6e73 7572 6520 6175   name: Ensure au
│ │ │ -003fedb0: 6469 7420 6973 2069 6e73 7461 6c6c 6564  dit is installed
│ │ │ -003fedc0: 0a20 2061 6e73 6962 6c65 2e62 7569 6c74  .  ansible.built
│ │ │ -003fedd0: 696e 2e70 6163 6b61 6765 3a0a 2020 2020  in.package:.    
│ │ │ -003fede0: 6e61 6d65 3a20 6175 6469 740a 2020 2020  name: audit.    
│ │ │ -003fedf0: 7374 6174 653a 2070 7265 7365 6e74 0a20  state: present. 
│ │ │ -003fee00: 2077 6865 6e3a 2027 226b 6572 6e65 6c22   when: '"kernel"
│ │ │ -003fee10: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -003fee20: 732e 7061 636b 6167 6573 270a 2020 7461  s.packages'.  ta
│ │ │ -003fee30: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030  gs:.  - NIST-800
│ │ │ -003fee40: 2d35 332d 4143 2d37 2861 290a 2020 2d20  -53-AC-7(a).  - 
│ │ │ -003fee50: 4e49 5354 2d38 3030 2d35 332d 4155 2d31  NIST-800-53-AU-1
│ │ │ -003fee60: 3228 3229 0a20 202d 204e 4953 542d 3830  2(2).  - NIST-80
│ │ │ -003fee70: 302d 3533 2d41 552d 3134 0a20 202d 204e  0-53-AU-14.  - N
│ │ │ -003fee80: 4953 542d 3830 302d 3533 2d41 552d 3228  IST-800-53-AU-2(
│ │ │ -003fee90: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ -003feea0: 3533 2d41 552d 3728 3129 0a20 202d 204e  53-AU-7(1).  - N
│ │ │ -003feeb0: 4953 542d 3830 302d 3533 2d41 552d 3728  IST-800-53-AU-7(
│ │ │ -003feec0: 3229 0a20 202d 204e 4953 542d 3830 302d  2).  - NIST-800-
│ │ │ -003feed0: 3533 2d43 4d2d 3628 6129 0a20 202d 2050  53-CM-6(a).  - P
│ │ │ -003feee0: 4349 2d44 5353 2d52 6571 2d31 302e 310a  CI-DSS-Req-10.1.
│ │ │ -003feef0: 2020 2d20 5043 492d 4453 5376 342d 3130    - PCI-DSSv4-10
│ │ │ -003fef00: 2e32 0a20 202d 2050 4349 2d44 5353 7634  .2.  - PCI-DSSv4
│ │ │ -003fef10: 2d31 302e 322e 310a 2020 2d20 656e 6162  -10.2.1.  - enab
│ │ │ -003fef20: 6c65 5f73 7472 6174 6567 790a 2020 2d20  le_strategy.  - 
│ │ │ -003fef30: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ -003fef40: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ -003fef50: 6e0a 2020 2d20 6d65 6469 756d 5f73 6576  n.  - medium_sev
│ │ │ -003fef60: 6572 6974 790a 2020 2d20 6e6f 5f72 6562  erity.  - no_reb
│ │ │ -003fef70: 6f6f 745f 6e65 6564 6564 0a20 202d 2070  oot_needed.  - p
│ │ │ -003fef80: 6163 6b61 6765 5f61 7564 6974 5f69 6e73  ackage_audit_ins
│ │ │ -003fef90: 7461 6c6c 6564 0a3c 2f63 6f64 653e 3c2f  talled.Remediati
│ │ │ -003ff050: 6f6e 2053 6865 6c6c 2073 6372 6970 7420  on Shell script 
│ │ │ -003ff060: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620  ...
low< │ │ │ -003ff130: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr> │ │ │ -003ff180: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
Complexity:low
Disrup │ │ │ -003feb70: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -003feb80: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -003febc0: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ -003febd0: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Complexity: │ │ │ -003ff0f0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Di │ │ │ -003ff110: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:
Reboot:false
St │ │ │ -003ff160: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ -003ff170: 656e 6162 6c65 3c2f 7464 3e3c 2f74 723e enable
# Remediation
│ │ │ -003ff1a0: 2069 7320 6170 706c 6963 6162 6c65 206f   is applicable o
│ │ │ -003ff1b0: 6e6c 7920 696e 2063 6572 7461 696e 2070  nly in certain p
│ │ │ -003ff1c0: 6c61 7466 6f72 6d73 0a69 6620 7270 6d20  latforms.if rpm 
│ │ │ -003ff1d0: 2d2d 7175 6965 7420 2d71 206b 6572 6e65  --quiet -q kerne
│ │ │ -003ff1e0: 6c3b 2074 6865 6e0a 0a69 6620 2120 7270  l; then..if ! rp
│ │ │ -003ff1f0: 6d20 2d71 202d 2d71 7569 6574 2022 6175  m -q --quiet "au
│ │ │ -003ff200: 6469 7422 203b 2074 6865 6e0a 2020 2020  dit" ; then.    
│ │ │ -003ff210: 646e 6620 696e 7374 616c 6c20 2d79 2022  dnf install -y "
│ │ │ -003ff220: 6175 6469 7422 0a66 690a 0a65 6c73 650a  audit".fi..else.
│ │ │ -003ff230: 2020 2020 2667 743b 2661 6d70 3b32 2065      >&2 e
│ │ │ -003ff240: 6368 6f20 2752 656d 6564 6961 7469 6f6e  cho 'Remediation
│ │ │ -003ff250: 2069 7320 6e6f 7420 6170 706c 6963 6162   is not applicab
│ │ │ -003ff260: 6c65 2c20 6e6f 7468 696e 6720 7761 7320  le, nothing was 
│ │ │ -003ff270: 646f 6e65 270a 6669 0a3c 2f63 6f64 653e  done'.fi.
│ │ │ +003fe4e0: 5265 6d65 6469 6174 696f 6e20 416e 7369  Remediation Ansi
│ │ │ +003fe4f0: 626c 6520 736e 6970 7065 7420 e287 b23c  ble snippet ...<
│ │ │ +003fe500: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173  /a>
< │ │ │ +003fe5d0: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +003fe5e0: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
-
│ │ │ +003fe630: 206e 616d 653a 2047 6174 6865 7220 7468   name: Gather th
│ │ │ +003fe640: 6520 7061 636b 6167 6520 6661 6374 730a  e package facts.
│ │ │ +003fe650: 2020 7061 636b 6167 655f 6661 6374 733a    package_facts:
│ │ │ +003fe660: 0a20 2020 206d 616e 6167 6572 3a20 6175  .    manager: au
│ │ │ +003fe670: 746f 0a20 2074 6167 733a 0a20 202d 204e  to.  tags:.  - N
│ │ │ +003fe680: 4953 542d 3830 302d 3533 2d41 432d 3728  IST-800-53-AC-7(
│ │ │ +003fe690: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ +003fe6a0: 3533 2d41 552d 3132 2832 290a 2020 2d20  53-AU-12(2).  - 
│ │ │ +003fe6b0: 4e49 5354 2d38 3030 2d35 332d 4155 2d31  NIST-800-53-AU-1
│ │ │ +003fe6c0: 340a 2020 2d20 4e49 5354 2d38 3030 2d35  4.  - NIST-800-5
│ │ │ +003fe6d0: 332d 4155 2d32 2861 290a 2020 2d20 4e49  3-AU-2(a).  - NI
│ │ │ +003fe6e0: 5354 2d38 3030 2d35 332d 4155 2d37 2831  ST-800-53-AU-7(1
│ │ │ +003fe6f0: 290a 2020 2d20 4e49 5354 2d38 3030 2d35  ).  - NIST-800-5
│ │ │ +003fe700: 332d 4155 2d37 2832 290a 2020 2d20 4e49  3-AU-7(2).  - NI
│ │ │ +003fe710: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ +003fe720: 290a 2020 2d20 5043 492d 4453 532d 5265  ).  - PCI-DSS-Re
│ │ │ +003fe730: 712d 3130 2e31 0a20 202d 2050 4349 2d44  q-10.1.  - PCI-D
│ │ │ +003fe740: 5353 7634 2d31 302e 320a 2020 2d20 5043  SSv4-10.2.  - PC
│ │ │ +003fe750: 492d 4453 5376 342d 3130 2e32 2e31 0a20  I-DSSv4-10.2.1. 
│ │ │ +003fe760: 202d 2065 6e61 626c 655f 7374 7261 7465   - enable_strate
│ │ │ +003fe770: 6779 0a20 202d 206c 6f77 5f63 6f6d 706c  gy.  - low_compl
│ │ │ +003fe780: 6578 6974 790a 2020 2d20 6c6f 775f 6469  exity.  - low_di
│ │ │ +003fe790: 7372 7570 7469 6f6e 0a20 202d 206d 6564  sruption.  - med
│ │ │ +003fe7a0: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ +003fe7b0: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ +003fe7c0: 640a 2020 2d20 7061 636b 6167 655f 6175  d.  - package_au
│ │ │ +003fe7d0: 6469 745f 696e 7374 616c 6c65 640a 0a2d  dit_installed..-
│ │ │ +003fe7e0: 206e 616d 653a 2045 6e73 7572 6520 6175   name: Ensure au
│ │ │ +003fe7f0: 6469 7420 6973 2069 6e73 7461 6c6c 6564  dit is installed
│ │ │ +003fe800: 0a20 2061 6e73 6962 6c65 2e62 7569 6c74  .  ansible.built
│ │ │ +003fe810: 696e 2e70 6163 6b61 6765 3a0a 2020 2020  in.package:.    
│ │ │ +003fe820: 6e61 6d65 3a20 6175 6469 740a 2020 2020  name: audit.    
│ │ │ +003fe830: 7374 6174 653a 2070 7265 7365 6e74 0a20  state: present. 
│ │ │ +003fe840: 2077 6865 6e3a 2027 226b 6572 6e65 6c22   when: '"kernel"
│ │ │ +003fe850: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +003fe860: 732e 7061 636b 6167 6573 270a 2020 7461  s.packages'.  ta
│ │ │ +003fe870: 6773 3a0a 2020 2d20 4e49 5354 2d38 3030  gs:.  - NIST-800
│ │ │ +003fe880: 2d35 332d 4143 2d37 2861 290a 2020 2d20  -53-AC-7(a).  - 
│ │ │ +003fe890: 4e49 5354 2d38 3030 2d35 332d 4155 2d31  NIST-800-53-AU-1
│ │ │ +003fe8a0: 3228 3229 0a20 202d 204e 4953 542d 3830  2(2).  - NIST-80
│ │ │ +003fe8b0: 302d 3533 2d41 552d 3134 0a20 202d 204e  0-53-AU-14.  - N
│ │ │ +003fe8c0: 4953 542d 3830 302d 3533 2d41 552d 3228  IST-800-53-AU-2(
│ │ │ +003fe8d0: 6129 0a20 202d 204e 4953 542d 3830 302d  a).  - NIST-800-
│ │ │ +003fe8e0: 3533 2d41 552d 3728 3129 0a20 202d 204e  53-AU-7(1).  - N
│ │ │ +003fe8f0: 4953 542d 3830 302d 3533 2d41 552d 3728  IST-800-53-AU-7(
│ │ │ +003fe900: 3229 0a20 202d 204e 4953 542d 3830 302d  2).  - NIST-800-
│ │ │ +003fe910: 3533 2d43 4d2d 3628 6129 0a20 202d 2050  53-CM-6(a).  - P
│ │ │ +003fe920: 4349 2d44 5353 2d52 6571 2d31 302e 310a  CI-DSS-Req-10.1.
│ │ │ +003fe930: 2020 2d20 5043 492d 4453 5376 342d 3130    - PCI-DSSv4-10
│ │ │ +003fe940: 2e32 0a20 202d 2050 4349 2d44 5353 7634  .2.  - PCI-DSSv4
│ │ │ +003fe950: 2d31 302e 322e 310a 2020 2d20 656e 6162  -10.2.1.  - enab
│ │ │ +003fe960: 6c65 5f73 7472 6174 6567 790a 2020 2d20  le_strategy.  - 
│ │ │ +003fe970: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ +003fe980: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ +003fe990: 6e0a 2020 2d20 6d65 6469 756d 5f73 6576  n.  - medium_sev
│ │ │ +003fe9a0: 6572 6974 790a 2020 2d20 6e6f 5f72 6562  erity.  - no_reb
│ │ │ +003fe9b0: 6f6f 745f 6e65 6564 6564 0a20 202d 2070  oot_needed.  - p
│ │ │ +003fe9c0: 6163 6b61 6765 5f61 7564 6974 5f69 6e73  ackage_audit_ins
│ │ │ +003fe9d0: 7461 6c6c 6564 0a3c 2f63 6f64 653e 3c2f  talled.Remediati
│ │ │ +003fea90: 6f6e 2050 7570 7065 7420 736e 6970 7065  on Puppet snippe
│ │ │ +003feaa0: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469  t ...
< │ │ │ +003feb20: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>
│ │ │ +003feb60: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 enable
Complexity:low
Disrup │ │ │ +003fe5b0: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ +003fe5c0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ +003fe600: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ +003fe610: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Complexit │ │ │ +003feb30: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low
│ │ │ +003feb50: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption:low
Reboot: │ │ │ +003feb80: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false
│ │ │ +003feba0: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:
<
│ │ │ +003febd0: 636f 6465 3e69 6e63 6c75 6465 2069 6e73  code>include ins
│ │ │ +003febe0: 7461 6c6c 5f61 7564 6974 0a0a 636c 6173  tall_audit..clas
│ │ │ +003febf0: 7320 696e 7374 616c 6c5f 6175 6469 7420  s install_audit 
│ │ │ +003fec00: 7b0a 2020 7061 636b 6167 6520 7b20 2761  {.  package { 'a
│ │ │ +003fec10: 7564 6974 273a 0a20 2020 2065 6e73 7572  udit':.    ensur
│ │ │ +003fec20: 6520 3d26 6774 3b20 2769 6e73 7461 6c6c  e => 'install
│ │ │ +003fec30: 6564 272c 0a20 207d 0a7d 0a3c 2f63 6f64  ed',.  }.}.
Remed │ │ │ +003fecf0: 6961 7469 6f6e 204f 5342 7569 6c64 2042 iation OSBuild B │ │ │ +003fed00: 6c75 6570 7269 6e74 2073 6e69 7070 6574 lueprint snippet │ │ │ +003fed10: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
.[[packag
│ │ │ +003fed60: 6573 5d5d 0a6e 616d 6520 3d20 2261 7564  es]].name = "aud
│ │ │ +003fed70: 6974 220a 7665 7273 696f 6e20 3d20 222a  it".version = "*
│ │ │ +003fed80: 220a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  ".
< │ │ │ +003fed90: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Sh │ │ │ +003fee40: 656c 6c20 7363 7269 7074 20e2 87b2 3c2f ell script ...
│ │ │ +003feee0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
# 
│ │ │ +003fef80: 5265 6d65 6469 6174 696f 6e20 6973 2061  Remediation is a
│ │ │ +003fef90: 7070 6c69 6361 626c 6520 6f6e 6c79 2069  pplicable only i
│ │ │ +003fefa0: 6e20 6365 7274 6169 6e20 706c 6174 666f  n certain platfo
│ │ │ +003fefb0: 726d 730a 6966 2072 706d 202d 2d71 7569  rms.if rpm --qui
│ │ │ +003fefc0: 6574 202d 7120 6b65 726e 656c 3b20 7468  et -q kernel; th
│ │ │ +003fefd0: 656e 0a0a 6966 2021 2072 706d 202d 7120  en..if ! rpm -q 
│ │ │ +003fefe0: 2d2d 7175 6965 7420 2261 7564 6974 2220  --quiet "audit" 
│ │ │ +003feff0: 3b20 7468 656e 0a20 2020 2064 6e66 2069  ; then.    dnf i
│ │ │ +003ff000: 6e73 7461 6c6c 202d 7920 2261 7564 6974  nstall -y "audit
│ │ │ +003ff010: 220a 6669 0a0a 656c 7365 0a20 2020 2026  ".fi..else.    &
│ │ │ +003ff020: 6774 3b26 616d 703b 3220 6563 686f 2027  gt;&2 echo '
│ │ │ +003ff030: 5265 6d65 6469 6174 696f 6e20 6973 206e  Remediation is n
│ │ │ +003ff040: 6f74 2061 7070 6c69 6361 626c 652c 206e  ot applicable, n
│ │ │ +003ff050: 6f74 6869 6e67 2077 6173 2064 6f6e 6527  othing was done'
│ │ │ +003ff060: 0a66 690a 3c2f 636f 6465 3e3c 2f70 7265  .fi.
Remediation │ │ │ +003ff120: 416e 6163 6f6e 6461 2073 6e69 7070 6574 Anaconda snippet │ │ │ +003ff130: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
< │ │ │ +003ff1f0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +003ff200: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c
│ │ │ +003feed0: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +003fef00: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +003fef10: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +003fef50: 793a 3c2f 7468 3e3c 7464 3e65 6e61 626c y:enabl │ │ │ +003fef60: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
Complexity │ │ │ +003ff1c0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
D │ │ │ +003ff1e0: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:
Reboot:< │ │ │ +003ff210: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>false
S │ │ │ +003ff230: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:enable
.package --a
│ │ │ +003ff270: 6464 3d61 7564 6974 0a3c 2f63 6f64 653e  dd=audit.
│ │ │  003ff280: 3c2f 7072 653e 3c2f 6469 763e 3c2f 6469  
Re │ │ │ -00400bd0: 6d65 6469 6174 696f 6e20 4f53 4275 696c mediation OSBuil │ │ │ -00400be0: 6420 426c 7565 7072 696e 7420 736e 6970 d Blueprint snip │ │ │ -00400bf0: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ -00400c00: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -00400c10: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -00400c20: 7365 2220 6964 3d22 6964 3130 3031 223e se" id="id1001"> │ │ │ -00400c30: 3c70 7265 3e3c 636f 6465 3e0a 5b63 7573
.[cus
│ │ │ -00400c40: 746f 6d69 7a61 7469 6f6e 732e 7365 7276  tomizations.serv
│ │ │ -00400c50: 6963 6573 5d0a 656e 6162 6c65 6420 3d20  ices].enabled = 
│ │ │ -00400c60: 5b22 6175 6469 7464 225d 0a3c 2f63 6f64  ["auditd"].
Reme │ │ │ -00400d20: 6469 6174 696f 6e20 4b75 6265 726e 6574 diation Kubernet │ │ │ -00400d30: 6573 2073 6e69 7070 6574 20e2 87b2 3c2f es snippet ...
---.apiVersion
│ │ │ -00400d90: 3a20 6d61 6368 696e 6563 6f6e 6669 6775  : machineconfigu
│ │ │ -00400da0: 7261 7469 6f6e 2e6f 7065 6e73 6869 6674  ration.openshift
│ │ │ -00400db0: 2e69 6f2f 7631 0a6b 696e 643a 204d 6163  .io/v1.kind: Mac
│ │ │ -00400dc0: 6869 6e65 436f 6e66 6967 0a73 7065 633a  hineConfig.spec:
│ │ │ -00400dd0: 0a20 2063 6f6e 6669 673a 0a20 2020 2069  .  config:.    i
│ │ │ -00400de0: 676e 6974 696f 6e3a 0a20 2020 2020 2076  gnition:.      v
│ │ │ -00400df0: 6572 7369 6f6e 3a20 332e 312e 300a 2020  ersion: 3.1.0.  
│ │ │ -00400e00: 2020 7379 7374 656d 643a 0a20 2020 2020    systemd:.     
│ │ │ -00400e10: 2075 6e69 7473 3a0a 2020 2020 2020 2d20   units:.      - 
│ │ │ -00400e20: 6e61 6d65 3a20 6175 6469 7464 2e73 6572  name: auditd.ser
│ │ │ -00400e30: 7669 6365 0a20 2020 2020 2020 2065 6e61  vice.        ena
│ │ │ -00400e40: 626c 6564 3a20 7472 7565 0a3c 2f63 6f64  bled: true.
Reme │ │ │ -00400f00: 6469 6174 696f 6e20 5075 7070 6574 2073 diation Puppet s │ │ │ -00400f10: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Com │ │ │ -00400fa0: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ -00400fd0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ -00400ff0: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -00401000: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -00401020: 2f74 683e 3c74 643e 656e 6162 6c65 3c2f /th>enable
│ │ │ -00401040: 3c70 7265 3e3c 636f 6465 3e69 6e63 6c75
inclu
│ │ │ -00401050: 6465 2065 6e61 626c 655f 6175 6469 7464  de enable_auditd
│ │ │ -00401060: 0a0a 636c 6173 7320 656e 6162 6c65 5f61  ..class enable_a
│ │ │ -00401070: 7564 6974 6420 7b0a 2020 7365 7276 6963  uditd {.  servic
│ │ │ -00401080: 6520 7b27 6175 6469 7464 273a 0a20 2020  e {'auditd':.   
│ │ │ -00401090: 2065 6e61 626c 6520 3d26 6774 3b20 7472   enable => tr
│ │ │ -004010a0: 7565 2c0a 2020 2020 656e 7375 7265 203d  ue,.    ensure =
│ │ │ -004010b0: 2667 743b 2027 7275 6e6e 696e 6727 2c0a  > 'running',.
│ │ │ -004010c0: 2020 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70    }.}.

Remediati │ │ │ -00401180: 6f6e 2041 6e73 6962 6c65 2073 6e69 7070 on Ansible snipp │ │ │ -00401190: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
< │ │ │ -004011d0: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ -004011e0: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ -004011f0: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ -00401200: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ -00401210: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Complex │ │ │ -00401220: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ -00401230: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Disruption:lowReboo │ │ │ -00401270: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ -00401280: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ -004012a0: 3c74 643e 656e 6162 6c65 3c2f 7464 3e3c enable< │ │ │ -004012b0: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
- name: G
│ │ │ -004012d0: 6174 6865 7220 7468 6520 7061 636b 6167  ather the packag
│ │ │ -004012e0: 6520 6661 6374 730a 2020 7061 636b 6167  e facts.  packag
│ │ │ -004012f0: 655f 6661 6374 733a 0a20 2020 206d 616e  e_facts:.    man
│ │ │ -00401300: 6167 6572 3a20 6175 746f 0a20 2074 6167  ager: auto.  tag
│ │ │ -00401310: 733a 0a20 202d 2043 4a49 532d 352e 342e  s:.  - CJIS-5.4.
│ │ │ -00401320: 312e 310a 2020 2d20 4e49 5354 2d38 3030  1.1.  - NIST-800
│ │ │ -00401330: 2d31 3731 2d33 2e33 2e31 0a20 202d 204e  -171-3.3.1.  - N
│ │ │ -00401340: 4953 542d 3830 302d 3137 312d 332e 332e  IST-800-171-3.3.
│ │ │ -00401350: 320a 2020 2d20 4e49 5354 2d38 3030 2d31  2.  - NIST-800-1
│ │ │ -00401360: 3731 2d33 2e33 2e36 0a20 202d 204e 4953  71-3.3.6.  - NIS
│ │ │ -00401370: 542d 3830 302d 3533 2d41 432d 3228 6729  T-800-53-AC-2(g)
│ │ │ -00401380: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -00401390: 2d41 432d 3628 3929 0a20 202d 204e 4953  -AC-6(9).  - NIS
│ │ │ -004013a0: 542d 3830 302d 3533 2d41 552d 3130 0a20  T-800-53-AU-10. 
│ │ │ -004013b0: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ -004013c0: 552d 3132 2863 290a 2020 2d20 4e49 5354  U-12(c).  - NIST
│ │ │ -004013d0: 2d38 3030 2d35 332d 4155 2d31 3428 3129  -800-53-AU-14(1)
│ │ │ -004013e0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -004013f0: 2d41 552d 3228 6429 0a20 202d 204e 4953  -AU-2(d).  - NIS
│ │ │ -00401400: 542d 3830 302d 3533 2d41 552d 330a 2020  T-800-53-AU-3.  
│ │ │ -00401410: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -00401420: 2d36 2861 290a 2020 2d20 4e49 5354 2d38  -6(a).  - NIST-8
│ │ │ -00401430: 3030 2d35 332d 5349 2d34 2832 3329 0a20  00-53-SI-4(23). 
│ │ │ -00401440: 202d 2050 4349 2d44 5353 2d52 6571 2d31   - PCI-DSS-Req-1
│ │ │ -00401450: 302e 310a 2020 2d20 5043 492d 4453 5376  0.1.  - PCI-DSSv
│ │ │ -00401460: 342d 3130 2e32 0a20 202d 2050 4349 2d44  4-10.2.  - PCI-D
│ │ │ -00401470: 5353 7634 2d31 302e 322e 310a 2020 2d20  SSv4-10.2.1.  - 
│ │ │ -00401480: 656e 6162 6c65 5f73 7472 6174 6567 790a  enable_strategy.
│ │ │ -00401490: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ -004014a0: 7479 0a20 202d 206c 6f77 5f64 6973 7275  ty.  - low_disru
│ │ │ -004014b0: 7074 696f 6e0a 2020 2d20 6d65 6469 756d  ption.  - medium
│ │ │ -004014c0: 5f73 6576 6572 6974 790a 2020 2d20 6e6f  _severity.  - no
│ │ │ -004014d0: 5f72 6562 6f6f 745f 6e65 6564 6564 0a20  _reboot_needed. 
│ │ │ -004014e0: 202d 2073 6572 7669 6365 5f61 7564 6974   - service_audit
│ │ │ -004014f0: 645f 656e 6162 6c65 640a 0a2d 206e 616d  d_enabled..- nam
│ │ │ -00401500: 653a 2045 6e61 626c 6520 6175 6469 7464  e: Enable auditd
│ │ │ -00401510: 2053 6572 7669 6365 202d 2045 6e61 626c   Service - Enabl
│ │ │ -00401520: 6520 7365 7276 6963 6520 6175 6469 7464  e service auditd
│ │ │ -00401530: 0a20 2062 6c6f 636b 3a0a 0a20 202d 206e  .  block:..  - n
│ │ │ -00401540: 616d 653a 2047 6174 6865 7220 7468 6520  ame: Gather the 
│ │ │ -00401550: 7061 636b 6167 6520 6661 6374 730a 2020  package facts.  
│ │ │ -00401560: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ -00401570: 6e2e 7061 636b 6167 655f 6661 6374 733a  n.package_facts:
│ │ │ -00401580: 0a20 2020 2020 206d 616e 6167 6572 3a20  .      manager: 
│ │ │ -00401590: 6175 746f 0a0a 2020 2d20 6e61 6d65 3a20  auto..  - name: 
│ │ │ -004015a0: 456e 6162 6c65 2061 7564 6974 6420 5365  Enable auditd Se
│ │ │ -004015b0: 7276 6963 6520 2d20 456e 6162 6c65 2053  rvice - Enable S
│ │ │ -004015c0: 6572 7669 6365 2061 7564 6974 640a 2020  ervice auditd.  
│ │ │ -004015d0: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ -004015e0: 6e2e 7379 7374 656d 643a 0a20 2020 2020  n.systemd:.     
│ │ │ -004015f0: 206e 616d 653a 2061 7564 6974 640a 2020   name: auditd.  
│ │ │ -00401600: 2020 2020 656e 6162 6c65 643a 2074 7275      enabled: tru
│ │ │ -00401610: 650a 2020 2020 2020 7374 6174 653a 2073  e.      state: s
│ │ │ -00401620: 7461 7274 6564 0a20 2020 2020 206d 6173  tarted.      mas
│ │ │ -00401630: 6b65 643a 2066 616c 7365 0a20 2020 2077  ked: false.    w
│ │ │ -00401640: 6865 6e3a 0a20 2020 202d 2027 2261 7564  hen:.    - '"aud
│ │ │ -00401650: 6974 2220 696e 2061 6e73 6962 6c65 5f66  it" in ansible_f
│ │ │ -00401660: 6163 7473 2e70 6163 6b61 6765 7327 0a20  acts.packages'. 
│ │ │ -00401670: 2074 6167 733a 0a20 202d 2043 4a49 532d   tags:.  - CJIS-
│ │ │ -00401680: 352e 342e 312e 310a 2020 2d20 4e49 5354  5.4.1.1.  - NIST
│ │ │ -00401690: 2d38 3030 2d31 3731 2d33 2e33 2e31 0a20  -800-171-3.3.1. 
│ │ │ -004016a0: 202d 204e 4953 542d 3830 302d 3137 312d   - NIST-800-171-
│ │ │ -004016b0: 332e 332e 320a 2020 2d20 4e49 5354 2d38  3.3.2.  - NIST-8
│ │ │ -004016c0: 3030 2d31 3731 2d33 2e33 2e36 0a20 202d  00-171-3.3.6.  -
│ │ │ -004016d0: 204e 4953 542d 3830 302d 3533 2d41 432d   NIST-800-53-AC-
│ │ │ -004016e0: 3228 6729 0a20 202d 204e 4953 542d 3830  2(g).  - NIST-80
│ │ │ -004016f0: 302d 3533 2d41 432d 3628 3929 0a20 202d  0-53-AC-6(9).  -
│ │ │ -00401700: 204e 4953 542d 3830 302d 3533 2d41 552d   NIST-800-53-AU-
│ │ │ -00401710: 3130 0a20 202d 204e 4953 542d 3830 302d  10.  - NIST-800-
│ │ │ -00401720: 3533 2d41 552d 3132 2863 290a 2020 2d20  53-AU-12(c).  - 
│ │ │ -00401730: 4e49 5354 2d38 3030 2d35 332d 4155 2d31  NIST-800-53-AU-1
│ │ │ -00401740: 3428 3129 0a20 202d 204e 4953 542d 3830  4(1).  - NIST-80
│ │ │ -00401750: 302d 3533 2d41 552d 3228 6429 0a20 202d  0-53-AU-2(d).  -
│ │ │ -00401760: 204e 4953 542d 3830 302d 3533 2d41 552d   NIST-800-53-AU-
│ │ │ -00401770: 330a 2020 2d20 4e49 5354 2d38 3030 2d35  3.  - NIST-800-5
│ │ │ -00401780: 332d 434d 2d36 2861 290a 2020 2d20 4e49  3-CM-6(a).  - NI
│ │ │ -00401790: 5354 2d38 3030 2d35 332d 5349 2d34 2832  ST-800-53-SI-4(2
│ │ │ -004017a0: 3329 0a20 202d 2050 4349 2d44 5353 2d52  3).  - PCI-DSS-R
│ │ │ -004017b0: 6571 2d31 302e 310a 2020 2d20 5043 492d  eq-10.1.  - PCI-
│ │ │ -004017c0: 4453 5376 342d 3130 2e32 0a20 202d 2050  DSSv4-10.2.  - P
│ │ │ -004017d0: 4349 2d44 5353 7634 2d31 302e 322e 310a  CI-DSSv4-10.2.1.
│ │ │ -004017e0: 2020 2d20 656e 6162 6c65 5f73 7472 6174    - enable_strat
│ │ │ -004017f0: 6567 790a 2020 2d20 6c6f 775f 636f 6d70  egy.  - low_comp
│ │ │ -00401800: 6c65 7869 7479 0a20 202d 206c 6f77 5f64  lexity.  - low_d
│ │ │ -00401810: 6973 7275 7074 696f 6e0a 2020 2d20 6d65  isruption.  - me
│ │ │ -00401820: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ -00401830: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ -00401840: 6564 0a20 202d 2073 6572 7669 6365 5f61  ed.  - service_a
│ │ │ -00401850: 7564 6974 645f 656e 6162 6c65 640a 2020  uditd_enabled.  
│ │ │ -00401860: 2d20 7370 6563 6961 6c5f 7365 7276 6963  - special_servic
│ │ │ -00401870: 655f 626c 6f63 6b0a 2020 7768 656e 3a0a  e_block.  when:.
│ │ │ -00401880: 2020 2d20 2722 6b65 726e 656c 2220 696e    - '"kernel" in
│ │ │ -00401890: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -004018a0: 6163 6b61 6765 7327 0a20 202d 2027 2261  ackages'.  - '"a
│ │ │ -004018b0: 7564 6974 2220 696e 2061 6e73 6962 6c65  udit" in ansible
│ │ │ -004018c0: 5f66 6163 7473 2e70 6163 6b61 6765 7327  _facts.packages'
│ │ │ +00400bd0: 6d65 6469 6174 696f 6e20 416e 7369 626c  mediation Ansibl
│ │ │ +00400be0: 6520 736e 6970 7065 7420 e287 b23c 2f61  e snippet ...
│ │ │ +00400c80: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
- 
│ │ │ +00400d20: 6e61 6d65 3a20 4761 7468 6572 2074 6865  name: Gather the
│ │ │ +00400d30: 2070 6163 6b61 6765 2066 6163 7473 0a20   package facts. 
│ │ │ +00400d40: 2070 6163 6b61 6765 5f66 6163 7473 3a0a   package_facts:.
│ │ │ +00400d50: 2020 2020 6d61 6e61 6765 723a 2061 7574      manager: aut
│ │ │ +00400d60: 6f0a 2020 7461 6773 3a0a 2020 2d20 434a  o.  tags:.  - CJ
│ │ │ +00400d70: 4953 2d35 2e34 2e31 2e31 0a20 202d 204e  IS-5.4.1.1.  - N
│ │ │ +00400d80: 4953 542d 3830 302d 3137 312d 332e 332e  IST-800-171-3.3.
│ │ │ +00400d90: 310a 2020 2d20 4e49 5354 2d38 3030 2d31  1.  - NIST-800-1
│ │ │ +00400da0: 3731 2d33 2e33 2e32 0a20 202d 204e 4953  71-3.3.2.  - NIS
│ │ │ +00400db0: 542d 3830 302d 3137 312d 332e 332e 360a  T-800-171-3.3.6.
│ │ │ +00400dc0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +00400dd0: 4143 2d32 2867 290a 2020 2d20 4e49 5354  AC-2(g).  - NIST
│ │ │ +00400de0: 2d38 3030 2d35 332d 4143 2d36 2839 290a  -800-53-AC-6(9).
│ │ │ +00400df0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +00400e00: 4155 2d31 300a 2020 2d20 4e49 5354 2d38  AU-10.  - NIST-8
│ │ │ +00400e10: 3030 2d35 332d 4155 2d31 3228 6329 0a20  00-53-AU-12(c). 
│ │ │ +00400e20: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ +00400e30: 552d 3134 2831 290a 2020 2d20 4e49 5354  U-14(1).  - NIST
│ │ │ +00400e40: 2d38 3030 2d35 332d 4155 2d32 2864 290a  -800-53-AU-2(d).
│ │ │ +00400e50: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ +00400e60: 4155 2d33 0a20 202d 204e 4953 542d 3830  AU-3.  - NIST-80
│ │ │ +00400e70: 302d 3533 2d43 4d2d 3628 6129 0a20 202d  0-53-CM-6(a).  -
│ │ │ +00400e80: 204e 4953 542d 3830 302d 3533 2d53 492d   NIST-800-53-SI-
│ │ │ +00400e90: 3428 3233 290a 2020 2d20 5043 492d 4453  4(23).  - PCI-DS
│ │ │ +00400ea0: 532d 5265 712d 3130 2e31 0a20 202d 2050  S-Req-10.1.  - P
│ │ │ +00400eb0: 4349 2d44 5353 7634 2d31 302e 320a 2020  CI-DSSv4-10.2.  
│ │ │ +00400ec0: 2d20 5043 492d 4453 5376 342d 3130 2e32  - PCI-DSSv4-10.2
│ │ │ +00400ed0: 2e31 0a20 202d 2065 6e61 626c 655f 7374  .1.  - enable_st
│ │ │ +00400ee0: 7261 7465 6779 0a20 202d 206c 6f77 5f63  rategy.  - low_c
│ │ │ +00400ef0: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f  omplexity.  - lo
│ │ │ +00400f00: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ +00400f10: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ +00400f20: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ +00400f30: 6565 6465 640a 2020 2d20 7365 7276 6963  eeded.  - servic
│ │ │ +00400f40: 655f 6175 6469 7464 5f65 6e61 626c 6564  e_auditd_enabled
│ │ │ +00400f50: 0a0a 2d20 6e61 6d65 3a20 456e 6162 6c65  ..- name: Enable
│ │ │ +00400f60: 2061 7564 6974 6420 5365 7276 6963 6520   auditd Service 
│ │ │ +00400f70: 2d20 456e 6162 6c65 2073 6572 7669 6365  - Enable service
│ │ │ +00400f80: 2061 7564 6974 640a 2020 626c 6f63 6b3a   auditd.  block:
│ │ │ +00400f90: 0a0a 2020 2d20 6e61 6d65 3a20 4761 7468  ..  - name: Gath
│ │ │ +00400fa0: 6572 2074 6865 2070 6163 6b61 6765 2066  er the package f
│ │ │ +00400fb0: 6163 7473 0a20 2020 2061 6e73 6962 6c65  acts.    ansible
│ │ │ +00400fc0: 2e62 7569 6c74 696e 2e70 6163 6b61 6765  .builtin.package
│ │ │ +00400fd0: 5f66 6163 7473 3a0a 2020 2020 2020 6d61  _facts:.      ma
│ │ │ +00400fe0: 6e61 6765 723a 2061 7574 6f0a 0a20 202d  nager: auto..  -
│ │ │ +00400ff0: 206e 616d 653a 2045 6e61 626c 6520 6175   name: Enable au
│ │ │ +00401000: 6469 7464 2053 6572 7669 6365 202d 2045  ditd Service - E
│ │ │ +00401010: 6e61 626c 6520 5365 7276 6963 6520 6175  nable Service au
│ │ │ +00401020: 6469 7464 0a20 2020 2061 6e73 6962 6c65  ditd.    ansible
│ │ │ +00401030: 2e62 7569 6c74 696e 2e73 7973 7465 6d64  .builtin.systemd
│ │ │ +00401040: 3a0a 2020 2020 2020 6e61 6d65 3a20 6175  :.      name: au
│ │ │ +00401050: 6469 7464 0a20 2020 2020 2065 6e61 626c  ditd.      enabl
│ │ │ +00401060: 6564 3a20 7472 7565 0a20 2020 2020 2073  ed: true.      s
│ │ │ +00401070: 7461 7465 3a20 7374 6172 7465 640a 2020  tate: started.  
│ │ │ +00401080: 2020 2020 6d61 736b 6564 3a20 6661 6c73      masked: fals
│ │ │ +00401090: 650a 2020 2020 7768 656e 3a0a 2020 2020  e.    when:.    
│ │ │ +004010a0: 2d20 2722 6175 6469 7422 2069 6e20 616e  - '"audit" in an
│ │ │ +004010b0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +004010c0: 6167 6573 270a 2020 7461 6773 3a0a 2020  ages'.  tags:.  
│ │ │ +004010d0: 2d20 434a 4953 2d35 2e34 2e31 2e31 0a20  - CJIS-5.4.1.1. 
│ │ │ +004010e0: 202d 204e 4953 542d 3830 302d 3137 312d   - NIST-800-171-
│ │ │ +004010f0: 332e 332e 310a 2020 2d20 4e49 5354 2d38  3.3.1.  - NIST-8
│ │ │ +00401100: 3030 2d31 3731 2d33 2e33 2e32 0a20 202d  00-171-3.3.2.  -
│ │ │ +00401110: 204e 4953 542d 3830 302d 3137 312d 332e   NIST-800-171-3.
│ │ │ +00401120: 332e 360a 2020 2d20 4e49 5354 2d38 3030  3.6.  - NIST-800
│ │ │ +00401130: 2d35 332d 4143 2d32 2867 290a 2020 2d20  -53-AC-2(g).  - 
│ │ │ +00401140: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ +00401150: 2839 290a 2020 2d20 4e49 5354 2d38 3030  (9).  - NIST-800
│ │ │ +00401160: 2d35 332d 4155 2d31 300a 2020 2d20 4e49  -53-AU-10.  - NI
│ │ │ +00401170: 5354 2d38 3030 2d35 332d 4155 2d31 3228  ST-800-53-AU-12(
│ │ │ +00401180: 6329 0a20 202d 204e 4953 542d 3830 302d  c).  - NIST-800-
│ │ │ +00401190: 3533 2d41 552d 3134 2831 290a 2020 2d20  53-AU-14(1).  - 
│ │ │ +004011a0: 4e49 5354 2d38 3030 2d35 332d 4155 2d32  NIST-800-53-AU-2
│ │ │ +004011b0: 2864 290a 2020 2d20 4e49 5354 2d38 3030  (d).  - NIST-800
│ │ │ +004011c0: 2d35 332d 4155 2d33 0a20 202d 204e 4953  -53-AU-3.  - NIS
│ │ │ +004011d0: 542d 3830 302d 3533 2d43 4d2d 3628 6129  T-800-53-CM-6(a)
│ │ │ +004011e0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ +004011f0: 2d53 492d 3428 3233 290a 2020 2d20 5043  -SI-4(23).  - PC
│ │ │ +00401200: 492d 4453 532d 5265 712d 3130 2e31 0a20  I-DSS-Req-10.1. 
│ │ │ +00401210: 202d 2050 4349 2d44 5353 7634 2d31 302e   - PCI-DSSv4-10.
│ │ │ +00401220: 320a 2020 2d20 5043 492d 4453 5376 342d  2.  - PCI-DSSv4-
│ │ │ +00401230: 3130 2e32 2e31 0a20 202d 2065 6e61 626c  10.2.1.  - enabl
│ │ │ +00401240: 655f 7374 7261 7465 6779 0a20 202d 206c  e_strategy.  - l
│ │ │ +00401250: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ +00401260: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ +00401270: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ +00401280: 7269 7479 0a20 202d 206e 6f5f 7265 626f  rity.  - no_rebo
│ │ │ +00401290: 6f74 5f6e 6565 6465 640a 2020 2d20 7365  ot_needed.  - se
│ │ │ +004012a0: 7276 6963 655f 6175 6469 7464 5f65 6e61  rvice_auditd_ena
│ │ │ +004012b0: 626c 6564 0a20 202d 2073 7065 6369 616c  bled.  - special
│ │ │ +004012c0: 5f73 6572 7669 6365 5f62 6c6f 636b 0a20  _service_block. 
│ │ │ +004012d0: 2077 6865 6e3a 0a20 202d 2027 226b 6572   when:.  - '"ker
│ │ │ +004012e0: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ +004012f0: 6661 6374 732e 7061 636b 6167 6573 270a  facts.packages'.
│ │ │ +00401300: 2020 2d20 2722 6175 6469 7422 2069 6e20    - '"audit" in 
│ │ │ +00401310: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +00401320: 636b 6167 6573 270a 3c2f 636f 6465 3e3c  ckages'.<
│ │ │ +00401330: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>Remedia
│ │ │ +004013e0: 7469 6f6e 204b 7562 6572 6e65 7465 7320  tion Kubernetes 
│ │ │ +004013f0: 736e 6970 7065 7420 e287 b23c 2f61 3e3c  snippet ...<
│ │ │ +00401400: 6272 3e3c 6469 7620 636c 6173 733d 2270  br>
-
│ │ │ +00401440: 2d2d 0a61 7069 5665 7273 696f 6e3a 206d  --.apiVersion: m
│ │ │ +00401450: 6163 6869 6e65 636f 6e66 6967 7572 6174  achineconfigurat
│ │ │ +00401460: 696f 6e2e 6f70 656e 7368 6966 742e 696f  ion.openshift.io
│ │ │ +00401470: 2f76 310a 6b69 6e64 3a20 4d61 6368 696e  /v1.kind: Machin
│ │ │ +00401480: 6543 6f6e 6669 670a 7370 6563 3a0a 2020  eConfig.spec:.  
│ │ │ +00401490: 636f 6e66 6967 3a0a 2020 2020 6967 6e69  config:.    igni
│ │ │ +004014a0: 7469 6f6e 3a0a 2020 2020 2020 7665 7273  tion:.      vers
│ │ │ +004014b0: 696f 6e3a 2033 2e31 2e30 0a20 2020 2073  ion: 3.1.0.    s
│ │ │ +004014c0: 7973 7465 6d64 3a0a 2020 2020 2020 756e  ystemd:.      un
│ │ │ +004014d0: 6974 733a 0a20 2020 2020 202d 206e 616d  its:.      - nam
│ │ │ +004014e0: 653a 2061 7564 6974 642e 7365 7276 6963  e: auditd.servic
│ │ │ +004014f0: 650a 2020 2020 2020 2020 656e 6162 6c65  e.        enable
│ │ │ +00401500: 643a 2074 7275 650a 3c2f 636f 6465 3e3c  d: true.<
│ │ │ +00401510: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>
Remedia │ │ │ +004015c0: 7469 6f6e 2050 7570 7065 7420 736e 6970 tion Puppet snip │ │ │ +004015d0: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ +004015e0: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +004015f0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +00401600: 7365 2220 6964 3d22 6964 3130 3033 223e se" id="id1003"> │ │ │ +00401610: 3c74 6162 6c65 2063 6c61 7373 3d22 7461
│ │ │ +00400c70: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +00400ca0: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +00400cb0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +00400cf0: 793a 3c2f 7468 3e3c 7464 3e65 6e61 626c y:enabl │ │ │ +00400d00: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
< │ │ │ +00401680: 7468 3e44 6973 7275 7074 696f 6e3a 3c2f th>Disruption:< │ │ │ +004016a0: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>< │ │ │ +004016d0: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy: │ │ │ +004016f0: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072
Comple │ │ │ +00401660: 7869 7479 3a3c 2f74 683e 3c74 643e 6c6f xity:lo │ │ │ +00401670: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
low
Rebo │ │ │ +004016b0: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ +004016c0: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e
enable
include │ │ │ +00401710: 656e 6162 6c65 5f61 7564 6974 640a 0a63 enable_auditd..c │ │ │ +00401720: 6c61 7373 2065 6e61 626c 655f 6175 6469 lass enable_audi │ │ │ +00401730: 7464 207b 0a20 2073 6572 7669 6365 207b td {. service { │ │ │ +00401740: 2761 7564 6974 6427 3a0a 2020 2020 656e 'auditd':. en │ │ │ +00401750: 6162 6c65 203d 2667 743b 2074 7275 652c able => true, │ │ │ +00401760: 0a20 2020 2065 6e73 7572 6520 3d26 6774 . ensure => │ │ │ +00401770: 3b20 2772 756e 6e69 6e67 272c 0a20 207d ; 'running',. } │ │ │ +00401780: 0a7d 0a3c 2f63 6f64 653e 3c2f 7072 653e .}.
│ │ │ +00401790: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation │ │ │ +00401840: 4f53 4275 696c 6420 426c 7565 7072 696e OSBuild Blueprin │ │ │ +00401850: 7420 736e 6970 7065 7420 e287 b23c 2f61 t snippet ...
.[customization
│ │ │ +004018b0: 732e 7365 7276 6963 6573 5d0a 656e 6162  s.services].enab
│ │ │ +004018c0: 6c65 6420 3d20 5b22 6175 6469 7464 225d  led = ["auditd"]
│ │ │  004018d0: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
'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: │ │ │ │ @@ -517,21 +517,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: │ │ │ │ @@ -577,14 +570,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. │ │ │ │ @@ -599,38 +599,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: │ │ │ │ @@ -657,14 +633,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 │ │ │ │ @@ -672,14 +665,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. │ │ │ │ @@ -1549,38 +1549,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: │ │ │ │ @@ -1604,14 +1580,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 bootc ;} && { ! rpm --quiet -q openshift- │ │ │ │ @@ -1621,14 +1614,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 │ │ │ │ @@ -13000,17 +13000,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: │ │ │ │ @@ -13063,14 +13060,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 bootc && ! rpm --quiet -q openshift-kubelet && { [ -f "/ │ │ │ │ run/.containerenv" ] || [ -f "/.containerenv" ]; }; } ; then │ │ │ │ KARGS_DIR="/usr/lib/bootc/kargs.d/" │ │ │ │ @@ -13101,17 +13101,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: │ │ │ │ @@ -13170,14 +13167,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' │ │ │ │ │ │ │ │ │ │ │ │ @@ -13209,17 +13209,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: │ │ │ │ @@ -13272,14 +13269,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 bootc && ! rpm --quiet -q openshift-kubelet && { [ -f "/ │ │ │ │ run/.containerenv" ] || [ -f "/.containerenv" ]; }; } ; then │ │ │ │ KARGS_DIR="/usr/lib/bootc/kargs.d/" │ │ │ │ @@ -13314,17 +13314,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: │ │ │ │ @@ -13383,14 +13380,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' │ │ │ │ │ │ │ │ │ │ │ │ @@ -13612,17 +13612,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: │ │ │ │ @@ -13675,14 +13672,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 bootc && ! rpm --quiet -q openshift-kubelet && { [ -f "/run/.containerenv" │ │ │ │ ] || [ -f "/.containerenv" ]; }; } ; then │ │ │ │ KARGS_DIR="/usr/lib/bootc/kargs.d/" │ │ │ │ @@ -13710,17 +13710,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: │ │ │ │ @@ -13777,14 +13774,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 bootc && ! rpm --quiet -q openshift-kubelet && { [ -f "/ │ │ │ │ run/.containerenv" ] || [ -f "/.containerenv" ]; }; } ; then │ │ │ │ KARGS_DIR="/usr/lib/bootc/kargs.d/" │ │ │ │ @@ -13817,17 +13817,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: │ │ │ │ @@ -13887,14 +13884,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' │ │ │ │ │ │ │ │ │ │ │ │ @@ -13930,17 +13930,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: │ │ │ │ @@ -13993,14 +13990,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 bootc && ! rpm --quiet -q openshift-kubelet && { [ -f "/ │ │ │ │ run/.containerenv" ] || [ -f "/.containerenv" ]; }; } ; then │ │ │ │ KARGS_DIR="/usr/lib/bootc/kargs.d/" │ │ │ │ @@ -14033,17 +14033,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: │ │ │ │ @@ -14104,14 +14101,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' │ │ │ │ │ │ │ │ │ │ │ │ @@ -14146,17 +14146,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: │ │ │ │ @@ -14209,14 +14206,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 bootc && ! rpm --quiet -q openshift-kubelet && { [ -f "/ │ │ │ │ run/.containerenv" ] || [ -f "/.containerenv" ]; }; } ; then │ │ │ │ KARGS_DIR="/usr/lib/bootc/kargs.d/" │ │ │ │ @@ -15534,38 +15534,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: │ │ │ │ @@ -15594,14 +15570,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 │ │ │ │ @@ -15609,14 +15602,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 │ │ │ │ @@ -16286,38 +16286,14 @@ │ │ │ │ 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 │ │ │ │ _o_s_-_s_r_g SRG-OS-000480-GPOS-00227, SRG-OS-000120-GPOS-00061 │ │ │ │ References: _a_n_s_s_i R71 │ │ │ │ _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-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: │ │ │ │ @@ -16338,14 +16314,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 │ │ │ │ @@ -16353,14 +16346,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 │ │ │ │ ****** 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 │ │ │ │ @@ -30391,21 +30391,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: │ │ │ │ @@ -30587,35 +30580,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: │ │ │ │ @@ -30833,31 +30826,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: │ │ │ │ @@ -31045,14 +31038,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 │ │ │ │ @@ -31072,21 +31072,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: │ │ │ │ @@ -31310,14 +31303,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 │ │ │ │ @@ -31596,21 +31596,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: │ │ │ │ @@ -31798,31 +31791,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: │ │ │ │ @@ -32010,14 +32003,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 │ │ │ │ @@ -32036,21 +32036,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: │ │ │ │ @@ -32274,14 +32267,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 │ │ │ │ @@ -32301,21 +32301,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: │ │ │ │ @@ -32539,14 +32532,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 │ │ │ │ @@ -32554,21 +32554,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: │ │ │ │ @@ -32793,14 +32786,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 │ │ │ │ @@ -32808,21 +32808,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: │ │ │ │ @@ -33049,29 +33042,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: │ │ │ │ @@ -33260,30 +33253,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: │ │ │ │ @@ -33472,32 +33465,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: │ │ │ │ @@ -33688,32 +33681,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: │ │ │ │ @@ -33904,14 +33897,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 │ │ │ │ @@ -34648,17 +34648,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: │ │ │ │ @@ -34717,14 +34714,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 bootc && ! rpm --quiet -q openshift-kubelet && { [ -f "/ │ │ │ │ run/.containerenv" ] || [ -f "/.containerenv" ]; }; } ; then │ │ │ │ KARGS_DIR="/usr/lib/bootc/kargs.d/" │ │ │ │ @@ -34753,17 +34753,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: │ │ │ │ @@ -34828,14 +34825,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' │ │ │ │ │ │ │ │ │ │ │ │ @@ -38011,35 +38011,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: │ │ │ │ @@ -38053,14 +38032,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 │ │ │ │ @@ -38069,14 +38061,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 │ │ │ │ @@ -38243,35 +38243,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: │ │ │ │ @@ -38298,14 +38277,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 │ │ │ │ @@ -38320,14 +38312,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 │ │ │ │ @@ -38380,38 +38380,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: │ │ │ │ @@ -38438,14 +38414,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 │ │ │ │ @@ -38453,14 +38446,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 │ │ │ │ @@ -39119,35 +39119,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: │ │ │ │ @@ -39179,14 +39158,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 │ │ │ │ @@ -39201,14 +39193,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 │ │ │ │ @@ -39222,35 +39222,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: │ │ │ │ @@ -39261,14 +39240,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 │ │ │ │ @@ -39277,14 +39269,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. │ │ │ │ @@ -39308,35 +39308,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: │ │ │ │ @@ -39352,14 +39331,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 │ │ │ │ @@ -39368,14 +39360,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 │ │ │ │ @@ -39402,35 +39402,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: │ │ │ │ @@ -39445,14 +39424,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 │ │ │ │ @@ -39461,14 +39453,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. │ │ │ │ @@ -39476,35 +39476,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: │ │ │ │ @@ -39516,14 +39495,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 │ │ │ │ @@ -39532,14 +39524,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 │ │ │ │ @@ -39547,35 +39547,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: │ │ │ │ @@ -39586,14 +39565,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 │ │ │ │ @@ -39602,14 +39594,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 │ │ │ │ @@ -39617,35 +39617,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: │ │ │ │ @@ -39656,14 +39635,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 │ │ │ │ @@ -39672,14 +39664,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 │ │ │ │ @@ -39714,35 +39714,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: │ │ │ │ @@ -39757,14 +39736,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 │ │ │ │ @@ -39773,14 +39765,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 │ │ │ │ @@ -39788,35 +39788,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: │ │ │ │ @@ -39828,14 +39807,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 │ │ │ │ @@ -39844,14 +39836,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_]] ****** │ │ │ │ @@ -39881,35 +39881,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: │ │ │ │ @@ -39923,14 +39902,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 │ │ │ │ @@ -39939,48 +39931,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: │ │ │ │ @@ -39991,14 +39970,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 │ │ │ │ @@ -40007,14 +39999,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 │ │ │ │ @@ -40912,26 +40912,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 0600 /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: │ │ │ │ @@ -40995,14 +40983,26 @@ │ │ │ │ - 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 0600 /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 │ │ │ │ @@ -41039,23 +41039,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: │ │ │ │ @@ -41119,14 +41110,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 │ │ │ │ @@ -41604,38 +41604,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: │ │ │ │ @@ -41658,14 +41634,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 │ │ │ │ @@ -41673,14 +41666,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. │ │ │ │ @@ -41696,31 +41696,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: │ │ │ │ @@ -41760,14 +41743,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 ) ); }; │ │ │ │ @@ -79057,38 +79057,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: │ │ │ │ @@ -79129,14 +79105,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 │ │ │ │ @@ -79144,14 +79137,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 │ │ │ │ @@ -79198,43 +79198,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: │ │ │ │ @@ -79301,14 +79272,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 ..
< │ │ │ -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 Remediatio │ │ │ -0004be00: 6e20 416e 6163 6f6e 6461 2073 6e69 7070 n Anaconda snipp │ │ │ -0004be10: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
< │ │ │ -0004be90: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr> │ │ │ -0004bed0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 enable
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
Complexit │ │ │ -0004bea0: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low
│ │ │ -0004bec0: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption:low
Reboot: │ │ │ -0004bef0: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false
│ │ │ -0004bf10: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:
<
│ │ │ -0004bf40: 636f 6465 3e0a 7365 7276 6963 6573 202d  code>.services -
│ │ │ -0004bf50: 2d65 6e61 626c 6564 3d74 6d70 2e6d 6f75  -enabled=tmp.mou
│ │ │ -0004bf60: 6e74 0a3c 2f63 6f64 653e 3c2f 7072 653e  nt.
│ │ │ -0004bf70: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation An │ │ │ -0004c020: 7369 626c 6520 736e 6970 7065 7420 e287 sible snippet .. │ │ │ -0004c030: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
Complexity: │ │ │ -0004c100: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -0004c110: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f

│ │ │ -0004c160: 2d20 6e61 6d65 3a20 4761 7468 6572 2074  - name: Gather t
│ │ │ -0004c170: 6865 2070 6163 6b61 6765 2066 6163 7473  he package facts
│ │ │ -0004c180: 0a20 2070 6163 6b61 6765 5f66 6163 7473  .  package_facts
│ │ │ -0004c190: 3a0a 2020 2020 6d61 6e61 6765 723a 2061  :.    manager: a
│ │ │ -0004c1a0: 7574 6f0a 2020 7461 6773 3a0a 2020 2d20  uto.  tags:.  - 
│ │ │ -0004c1b0: 656e 6162 6c65 5f73 7472 6174 6567 790a  enable_strategy.
│ │ │ -0004c1c0: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ -0004c1d0: 7479 0a20 202d 206c 6f77 5f64 6973 7275  ty.  - low_disru
│ │ │ -0004c1e0: 7074 696f 6e0a 2020 2d20 6c6f 775f 7365  ption.  - low_se
│ │ │ -0004c1f0: 7665 7269 7479 0a20 202d 206e 6f5f 7265  verity.  - no_re
│ │ │ -0004c200: 626f 6f74 5f6e 6565 6465 640a 2020 2d20  boot_needed.  - 
│ │ │ -0004c210: 7379 7374 656d 645f 746d 705f 6d6f 756e  systemd_tmp_moun
│ │ │ -0004c220: 745f 656e 6162 6c65 640a 0a2d 206e 616d  t_enabled..- nam
│ │ │ -0004c230: 653a 2045 6e61 626c 6520 6d6f 756e 7420  e: Enable mount 
│ │ │ -0004c240: 746d 700a 2020 616e 7369 626c 652e 6275  tmp.  ansible.bu
│ │ │ -0004c250: 696c 7469 6e2e 7379 7374 656d 643a 0a20  iltin.systemd:. 
│ │ │ -0004c260: 2020 206e 616d 653a 2074 6d70 2e6d 6f75     name: tmp.mou
│ │ │ -0004c270: 6e74 0a20 2020 2065 6e61 626c 6564 3a20  nt.    enabled: 
│ │ │ -0004c280: 2779 6573 270a 2020 2020 7374 6174 653a  'yes'.    state:
│ │ │ -0004c290: 2073 7461 7274 6564 0a20 2020 206d 6173   started.    mas
│ │ │ -0004c2a0: 6b65 643a 2027 6661 6c73 6527 0a20 2077  ked: 'false'.  w
│ │ │ -0004c2b0: 6865 6e3a 2028 206e 6f74 2028 2022 6b65  hen: ( not ( "ke
│ │ │ -0004c2c0: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ -0004c2d0: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ -0004c2e0: 616e 6420 2262 6f6f 7463 2220 696e 2061  and "bootc" in a
│ │ │ -0004c2f0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -0004c300: 6b61 6765 730a 2020 2020 616e 6420 6e6f  kages.    and no
│ │ │ -0004c310: 7420 226f 7065 6e73 6869 6674 2d6b 7562  t "openshift-kub
│ │ │ -0004c320: 656c 6574 2220 696e 2061 6e73 6962 6c65  elet" in ansible
│ │ │ -0004c330: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ -0004c340: 616e 6420 226f 7374 7265 6522 2069 6e20  and "ostree" in 
│ │ │ -0004c350: 616e 7369 626c 655f 7072 6f63 5f63 6d64  ansible_proc_cmd
│ │ │ -0004c360: 6c69 6e65 0a20 2020 2029 2061 6e64 206e  line.    ) and n
│ │ │ -0004c370: 6f74 2028 2061 6e73 6962 6c65 5f76 6972  ot ( ansible_vir
│ │ │ -0004c380: 7475 616c 697a 6174 696f 6e5f 7479 7065  tualization_type
│ │ │ -0004c390: 2069 6e20 5b22 646f 636b 6572 222c 2022   in ["docker", "
│ │ │ -0004c3a0: 6c78 6322 2c20 226f 7065 6e76 7a22 2c20  lxc", "openvz", 
│ │ │ -0004c3b0: 2270 6f64 6d61 6e22 2c0a 2020 2020 2263  "podman",.    "c
│ │ │ -0004c3c0: 6f6e 7461 696e 6572 225d 2029 2029 0a20  ontainer"] ) ). 
│ │ │ -0004c3d0: 2074 6167 733a 0a20 202d 2065 6e61 626c   tags:.  - enabl
│ │ │ -0004c3e0: 655f 7374 7261 7465 6779 0a20 202d 206c  e_strategy.  - l
│ │ │ -0004c3f0: 6f77 5f63 6f6d 706c 6578 6974 790a 2020  ow_complexity.  
│ │ │ -0004c400: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ -0004c410: 0a20 202d 206c 6f77 5f73 6576 6572 6974  .  - low_severit
│ │ │ -0004c420: 790a 2020 2d20 6e6f 5f72 6562 6f6f 745f  y.  - no_reboot_
│ │ │ -0004c430: 6e65 6564 6564 0a20 202d 2073 7973 7465  needed.  - syste
│ │ │ -0004c440: 6d64 5f74 6d70 5f6d 6f75 6e74 5f65 6e61  md_tmp_mount_ena
│ │ │ -0004c450: 626c 6564 0a3c 2f63 6f64 653e 3c2f 7072  bled.Remediation 
│ │ │ -0004c510: 5368 656c 6c20 7363 7269 7074 20e2 87b2  Shell script ...
│ │ │ -0004c520: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61  
low
Disru │ │ │ -0004c0e0: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ -0004c0f0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ -0004c130: 6567 793a 3c2f 7468 3e3c 7464 3e65 6e61 egy:ena │ │ │ -0004c140: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
< │ │ │ -0004c5f0: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -0004c600: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
#
│ │ │ -0004c650: 2052 656d 6564 6961 7469 6f6e 2069 7320   Remediation is 
│ │ │ -0004c660: 6170 706c 6963 6162 6c65 206f 6e6c 7920  applicable only 
│ │ │ -0004c670: 696e 2063 6572 7461 696e 2070 6c61 7466  in certain platf
│ │ │ -0004c680: 6f72 6d73 0a69 6620 2820 2120 2820 7b20  orms.if ( ! ( { 
│ │ │ -0004c690: 7270 6d20 2d2d 7175 6965 7420 2d71 206b  rpm --quiet -q k
│ │ │ -0004c6a0: 6572 6e65 6c20 3b7d 2026 616d 703b 2661  ernel ;} &&a
│ │ │ -0004c6b0: 6d70 3b20 7b20 7270 6d20 2d2d 7175 6965  mp; { rpm --quie
│ │ │ -0004c6c0: 7420 2d71 2062 6f6f 7463 203b 7d20 2661  t -q bootc ;} &a
│ │ │ -0004c6d0: 6d70 3b26 616d 703b 207b 2021 2072 706d  mp;& { ! rpm
│ │ │ -0004c6e0: 202d 2d71 7569 6574 202d 7120 6f70 656e   --quiet -q open
│ │ │ -0004c6f0: 7368 6966 742d 6b75 6265 6c65 7420 3b7d  shift-kubelet ;}
│ │ │ -0004c700: 2026 616d 703b 2661 6d70 3b20 285b 202d   && ([ -
│ │ │ -0004c710: 6620 2f72 756e 2f6f 7374 7265 652d 626f  f /run/ostree-bo
│ │ │ -0004c720: 6f74 6564 205d 207c 7c20 5b20 2d4c 202f  oted ] || [ -L /
│ │ │ -0004c730: 6f73 7472 6565 205d 2920 2920 2661 6d70  ostree ]) ) &
│ │ │ -0004c740: 3b26 616d 703b 2021 2028 205b 202d 6620  ;& ! ( [ -f 
│ │ │ -0004c750: 2f2e 646f 636b 6572 656e 7620 5d20 7c7c  /.dockerenv ] ||
│ │ │ -0004c760: 205b 202d 6620 2f72 756e 2f2e 636f 6e74   [ -f /run/.cont
│ │ │ -0004c770: 6169 6e65 7265 6e76 205d 2029 2029 3b20  ainerenv ] ) ); 
│ │ │ -0004c780: 7468 656e 0a0a 5359 5354 454d 4354 4c5f  then..SYSTEMCTL_
│ │ │ -0004c790: 4558 4543 3d27 2f75 7372 2f62 696e 2f73  EXEC='/usr/bin/s
│ │ │ -0004c7a0: 7973 7465 6d63 746c 270a 2224 5359 5354  ystemctl'."$SYST
│ │ │ -0004c7b0: 454d 4354 4c5f 4558 4543 2220 756e 6d61  EMCTL_EXEC" unma
│ │ │ -0004c7c0: 736b 2027 746d 702e 6d6f 756e 7427 0a69  sk 'tmp.mount'.i
│ │ │ -0004c7d0: 6620 5b5b 2024 2822 2453 5953 5445 4d43  f [[ $("$SYSTEMC
│ │ │ -0004c7e0: 544c 5f45 5845 4322 2069 732d 7379 7374  TL_EXEC" is-syst
│ │ │ -0004c7f0: 656d 2d72 756e 6e69 6e67 2920 213d 2022  em-running) != "
│ │ │ -0004c800: 6f66 666c 696e 6522 205d 5d3b 2074 6865  offline" ]]; the
│ │ │ -0004c810: 6e0a 2020 2224 5359 5354 454d 4354 4c5f  n.  "$SYSTEMCTL_
│ │ │ -0004c820: 4558 4543 2220 7374 6172 7420 2774 6d70  EXEC" start 'tmp
│ │ │ -0004c830: 2e6d 6f75 6e74 270a 6669 0a22 2453 5953  .mount'.fi."$SYS
│ │ │ -0004c840: 5445 4d43 544c 5f45 5845 4322 2065 6e61  TEMCTL_EXEC" ena
│ │ │ -0004c850: 626c 6520 2774 6d70 2e6d 6f75 6e74 270a  ble 'tmp.mount'.
│ │ │ -0004c860: 0a65 6c73 650a 2020 2020 2667 743b 2661  .else.    >&a
│ │ │ -0004c870: 6d70 3b32 2065 6368 6f20 2752 656d 6564  mp;2 echo 'Remed
│ │ │ -0004c880: 6961 7469 6f6e 2069 7320 6e6f 7420 6170  iation is not ap
│ │ │ -0004c890: 706c 6963 6162 6c65 2c20 6e6f 7468 696e  plicable, nothin
│ │ │ -0004c8a0: 6720 7761 7320 646f 6e65 270a 6669 0a3c  g was done'.fi.<
│ │ │ +0004be00: 6e20 416e 7369 626c 6520 736e 6970 7065  n Ansible snippe
│ │ │ +0004be10: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469  t ...
< │ │ │ +0004bed0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +0004bee0: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c
Complexity:low
Disrup │ │ │ -0004c5d0: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ -0004c5e0: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ -0004c620: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ -0004c630: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Complexity │ │ │ +0004bea0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
D │ │ │ +0004bec0: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:
Reboot:< │ │ │ +0004bef0: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>false
S │ │ │ +0004bf10: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:enable
- name: Gath
│ │ │ +0004bf50: 6572 2074 6865 2070 6163 6b61 6765 2066  er the package f
│ │ │ +0004bf60: 6163 7473 0a20 2070 6163 6b61 6765 5f66  acts.  package_f
│ │ │ +0004bf70: 6163 7473 3a0a 2020 2020 6d61 6e61 6765  acts:.    manage
│ │ │ +0004bf80: 723a 2061 7574 6f0a 2020 7461 6773 3a0a  r: auto.  tags:.
│ │ │ +0004bf90: 2020 2d20 656e 6162 6c65 5f73 7472 6174    - enable_strat
│ │ │ +0004bfa0: 6567 790a 2020 2d20 6c6f 775f 636f 6d70  egy.  - low_comp
│ │ │ +0004bfb0: 6c65 7869 7479 0a20 202d 206c 6f77 5f64  lexity.  - low_d
│ │ │ +0004bfc0: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ +0004bfd0: 775f 7365 7665 7269 7479 0a20 202d 206e  w_severity.  - n
│ │ │ +0004bfe0: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ +0004bff0: 2020 2d20 7379 7374 656d 645f 746d 705f    - systemd_tmp_
│ │ │ +0004c000: 6d6f 756e 745f 656e 6162 6c65 640a 0a2d  mount_enabled..-
│ │ │ +0004c010: 206e 616d 653a 2045 6e61 626c 6520 6d6f   name: Enable mo
│ │ │ +0004c020: 756e 7420 746d 700a 2020 616e 7369 626c  unt tmp.  ansibl
│ │ │ +0004c030: 652e 6275 696c 7469 6e2e 7379 7374 656d  e.builtin.system
│ │ │ +0004c040: 643a 0a20 2020 206e 616d 653a 2074 6d70  d:.    name: tmp
│ │ │ +0004c050: 2e6d 6f75 6e74 0a20 2020 2065 6e61 626c  .mount.    enabl
│ │ │ +0004c060: 6564 3a20 2779 6573 270a 2020 2020 7374  ed: 'yes'.    st
│ │ │ +0004c070: 6174 653a 2073 7461 7274 6564 0a20 2020  ate: started.   
│ │ │ +0004c080: 206d 6173 6b65 643a 2027 6661 6c73 6527   masked: 'false'
│ │ │ +0004c090: 0a20 2077 6865 6e3a 2028 206e 6f74 2028  .  when: ( not (
│ │ │ +0004c0a0: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ +0004c0b0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +0004c0c0: 6765 7320 616e 6420 2262 6f6f 7463 2220  ges and "bootc" 
│ │ │ +0004c0d0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +0004c0e0: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ +0004c0f0: 6420 6e6f 7420 226f 7065 6e73 6869 6674  d not "openshift
│ │ │ +0004c100: 2d6b 7562 656c 6574 2220 696e 2061 6e73  -kubelet" in ans
│ │ │ +0004c110: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +0004c120: 6765 7320 616e 6420 226f 7374 7265 6522  ges and "ostree"
│ │ │ +0004c130: 2069 6e20 616e 7369 626c 655f 7072 6f63   in ansible_proc
│ │ │ +0004c140: 5f63 6d64 6c69 6e65 0a20 2020 2029 2061  _cmdline.    ) a
│ │ │ +0004c150: 6e64 206e 6f74 2028 2061 6e73 6962 6c65  nd not ( ansible
│ │ │ +0004c160: 5f76 6972 7475 616c 697a 6174 696f 6e5f  _virtualization_
│ │ │ +0004c170: 7479 7065 2069 6e20 5b22 646f 636b 6572  type in ["docker
│ │ │ +0004c180: 222c 2022 6c78 6322 2c20 226f 7065 6e76  ", "lxc", "openv
│ │ │ +0004c190: 7a22 2c20 2270 6f64 6d61 6e22 2c0a 2020  z", "podman",.  
│ │ │ +0004c1a0: 2020 2263 6f6e 7461 696e 6572 225d 2029    "container"] )
│ │ │ +0004c1b0: 2029 0a20 2074 6167 733a 0a20 202d 2065   ).  tags:.  - e
│ │ │ +0004c1c0: 6e61 626c 655f 7374 7261 7465 6779 0a20  nable_strategy. 
│ │ │ +0004c1d0: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ +0004c1e0: 790a 2020 2d20 6c6f 775f 6469 7372 7570  y.  - low_disrup
│ │ │ +0004c1f0: 7469 6f6e 0a20 202d 206c 6f77 5f73 6576  tion.  - low_sev
│ │ │ +0004c200: 6572 6974 790a 2020 2d20 6e6f 5f72 6562  erity.  - no_reb
│ │ │ +0004c210: 6f6f 745f 6e65 6564 6564 0a20 202d 2073  oot_needed.  - s
│ │ │ +0004c220: 7973 7465 6d64 5f74 6d70 5f6d 6f75 6e74  ystemd_tmp_mount
│ │ │ +0004c230: 5f65 6e61 626c 6564 0a3c 2f63 6f64 653e  _enabled.
│ │ │ +0004c240: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remediat │ │ │ +0004c2f0: 696f 6e20 5368 656c 6c20 7363 7269 7074 ion Shell script │ │ │ +0004c300: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Complexity: │ │ │ +0004c390: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 lowDi │ │ │ +0004c3b0: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:low< │ │ │ +0004c3d0: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr>Reboot:falseSt │ │ │ +0004c400: 7261 7465 6779 3a3c 2f74 683e 3c74 643e rategy: │ │ │ +0004c410: 656e 6162 6c65 3c2f 7464 3e3c 2f74 723e enable │ │ │ +0004c420: 3c2f 7461 626c 653e 3c70 7265 3e3c 636f
# Remediation
│ │ │ +0004c440: 2069 7320 6170 706c 6963 6162 6c65 206f   is applicable o
│ │ │ +0004c450: 6e6c 7920 696e 2063 6572 7461 696e 2070  nly in certain p
│ │ │ +0004c460: 6c61 7466 6f72 6d73 0a69 6620 2820 2120  latforms.if ( ! 
│ │ │ +0004c470: 2820 7b20 7270 6d20 2d2d 7175 6965 7420  ( { rpm --quiet 
│ │ │ +0004c480: 2d71 206b 6572 6e65 6c20 3b7d 2026 616d  -q kernel ;} &am
│ │ │ +0004c490: 703b 2661 6d70 3b20 7b20 7270 6d20 2d2d  p;& { rpm --
│ │ │ +0004c4a0: 7175 6965 7420 2d71 2062 6f6f 7463 203b  quiet -q bootc ;
│ │ │ +0004c4b0: 7d20 2661 6d70 3b26 616d 703b 207b 2021  } && { !
│ │ │ +0004c4c0: 2072 706d 202d 2d71 7569 6574 202d 7120   rpm --quiet -q 
│ │ │ +0004c4d0: 6f70 656e 7368 6966 742d 6b75 6265 6c65  openshift-kubele
│ │ │ +0004c4e0: 7420 3b7d 2026 616d 703b 2661 6d70 3b20  t ;} && 
│ │ │ +0004c4f0: 285b 202d 6620 2f72 756e 2f6f 7374 7265  ([ -f /run/ostre
│ │ │ +0004c500: 652d 626f 6f74 6564 205d 207c 7c20 5b20  e-booted ] || [ 
│ │ │ +0004c510: 2d4c 202f 6f73 7472 6565 205d 2920 2920  -L /ostree ]) ) 
│ │ │ +0004c520: 2661 6d70 3b26 616d 703b 2021 2028 205b  && ! ( [
│ │ │ +0004c530: 202d 6620 2f2e 646f 636b 6572 656e 7620   -f /.dockerenv 
│ │ │ +0004c540: 5d20 7c7c 205b 202d 6620 2f72 756e 2f2e  ] || [ -f /run/.
│ │ │ +0004c550: 636f 6e74 6169 6e65 7265 6e76 205d 2029  containerenv ] )
│ │ │ +0004c560: 2029 3b20 7468 656e 0a0a 5359 5354 454d   ); then..SYSTEM
│ │ │ +0004c570: 4354 4c5f 4558 4543 3d27 2f75 7372 2f62  CTL_EXEC='/usr/b
│ │ │ +0004c580: 696e 2f73 7973 7465 6d63 746c 270a 2224  in/systemctl'."$
│ │ │ +0004c590: 5359 5354 454d 4354 4c5f 4558 4543 2220  SYSTEMCTL_EXEC" 
│ │ │ +0004c5a0: 756e 6d61 736b 2027 746d 702e 6d6f 756e  unmask 'tmp.moun
│ │ │ +0004c5b0: 7427 0a69 6620 5b5b 2024 2822 2453 5953  t'.if [[ $("$SYS
│ │ │ +0004c5c0: 5445 4d43 544c 5f45 5845 4322 2069 732d  TEMCTL_EXEC" is-
│ │ │ +0004c5d0: 7379 7374 656d 2d72 756e 6e69 6e67 2920  system-running) 
│ │ │ +0004c5e0: 213d 2022 6f66 666c 696e 6522 205d 5d3b  != "offline" ]];
│ │ │ +0004c5f0: 2074 6865 6e0a 2020 2224 5359 5354 454d   then.  "$SYSTEM
│ │ │ +0004c600: 4354 4c5f 4558 4543 2220 7374 6172 7420  CTL_EXEC" start 
│ │ │ +0004c610: 2774 6d70 2e6d 6f75 6e74 270a 6669 0a22  'tmp.mount'.fi."
│ │ │ +0004c620: 2453 5953 5445 4d43 544c 5f45 5845 4322  $SYSTEMCTL_EXEC"
│ │ │ +0004c630: 2065 6e61 626c 6520 2774 6d70 2e6d 6f75   enable 'tmp.mou
│ │ │ +0004c640: 6e74 270a 0a65 6c73 650a 2020 2020 2667  nt'..else.    &g
│ │ │ +0004c650: 743b 2661 6d70 3b32 2065 6368 6f20 2752  t;&2 echo 'R
│ │ │ +0004c660: 656d 6564 6961 7469 6f6e 2069 7320 6e6f  emediation is no
│ │ │ +0004c670: 7420 6170 706c 6963 6162 6c65 2c20 6e6f  t applicable, no
│ │ │ +0004c680: 7468 696e 6720 7761 7320 646f 6e65 270a  thing was done'.
│ │ │ +0004c690: 6669 0a3c 2f63 6f64 653e 3c2f 7072 653e  fi.
│ │ │ +0004c6a0: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation An │ │ │ +0004c750: 6163 6f6e 6461 2073 6e69 7070 6574 20e2 aconda snippet . │ │ │ +0004c760: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
< │ │ │ +0004c7e0: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ +0004c800: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ +0004c850: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
.services --ena
│ │ │ +0004c8a0: 626c 6564 3d74 6d70 2e6d 6f75 6e74 0a3c  bled=tmp.mount.<
│ │ │  0004c8b0: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
Remed │ │ │ -0004d8e0: 6961 7469 6f6e 204f 5342 7569 6c64 2042 iation OSBuild B │ │ │ -0004d8f0: 6c75 6570 7269 6e74 2073 6e69 7070 6574 lueprint snippet │ │ │ -0004d900: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
│ │ │ -0004d940: 3c63 6f64 653e 0a5b 5b70 6163 6b61 6765  .[[package
│ │ │ -0004d950: 735d 5d0a 6e61 6d65 203d 2022 7375 646f  s]].name = "sudo
│ │ │ -0004d960: 220a 7665 7273 696f 6e20 3d20 222a 220a  ".version = "*".
│ │ │ -0004d970: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
R │ │ │ -0004da20: 656d 6564 6961 7469 6f6e 2041 6e61 636f emediation Anaco │ │ │ -0004da30: 6e64 6120 736e 6970 7065 7420 e287 b23c nda snippet ...< │ │ │ -0004da40: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
low
Disr │ │ │ +0004c810: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +0004c820: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ +0004c860: 7465 6779 3a3c 2f74 683e 3c74 643e 656e tegy:en │ │ │ +0004c870: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
│ │ │ -0004dad0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
.p
│ │ │ -0004db70: 6163 6b61 6765 202d 2d61 6464 3d73 7564  ackage --add=sud
│ │ │ -0004db80: 6f0a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  o.
< │ │ │ -0004db90: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Pup │ │ │ -0004dc40: 7065 7420 736e 6970 7065 7420 e287 b23c pet snippet ...< │ │ │ -0004dc50: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
│ │ │ -0004dac0: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -0004daf0: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -0004db00: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -0004db40: 793a 3c2f 7468 3e3c 7464 3e65 6e61 626c y:enabl │ │ │ -0004db50: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
│ │ │ -0004dce0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
in
│ │ │ -0004dd80: 636c 7564 6520 696e 7374 616c 6c5f 7375  clude install_su
│ │ │ -0004dd90: 646f 0a0a 636c 6173 7320 696e 7374 616c  do..class instal
│ │ │ -0004dda0: 6c5f 7375 646f 207b 0a20 2070 6163 6b61  l_sudo {.  packa
│ │ │ -0004ddb0: 6765 207b 2027 7375 646f 273a 0a20 2020  ge { 'sudo':.   
│ │ │ -0004ddc0: 2065 6e73 7572 6520 3d26 6774 3b20 2769   ensure => 'i
│ │ │ -0004ddd0: 6e73 7461 6c6c 6564 272c 0a20 207d 0a7d  nstalled',.  }.}
│ │ │ -0004dde0: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
│ │ │ -0004de90: 5265 6d65 6469 6174 696f 6e20 416e 7369 Remediation Ansi │ │ │ -0004dea0: 626c 6520 736e 6970 7065 7420 e287 b23c ble snippet ...< │ │ │ -0004deb0: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
│ │ │ -0004dcd0: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -0004dd00: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -0004dd10: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -0004dd50: 793a 3c2f 7468 3e3c 7464 3e65 6e61 626c y:enabl │ │ │ -0004dd60: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
│ │ │ -0004df40: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
- 
│ │ │ -0004dfe0: 6e61 6d65 3a20 4761 7468 6572 2074 6865  name: Gather the
│ │ │ -0004dff0: 2070 6163 6b61 6765 2066 6163 7473 0a20   package facts. 
│ │ │ -0004e000: 2070 6163 6b61 6765 5f66 6163 7473 3a0a   package_facts:.
│ │ │ -0004e010: 2020 2020 6d61 6e61 6765 723a 2061 7574      manager: aut
│ │ │ -0004e020: 6f0a 2020 7461 6773 3a0a 2020 2d20 4e49  o.  tags:.  - NI
│ │ │ -0004e030: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ -0004e040: 290a 2020 2d20 5043 492d 4453 5376 342d  ).  - PCI-DSSv4-
│ │ │ -0004e050: 322e 320a 2020 2d20 5043 492d 4453 5376  2.2.  - PCI-DSSv
│ │ │ -0004e060: 342d 322e 322e 360a 2020 2d20 656e 6162  4-2.2.6.  - enab
│ │ │ -0004e070: 6c65 5f73 7472 6174 6567 790a 2020 2d20  le_strategy.  - 
│ │ │ -0004e080: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ -0004e090: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ -0004e0a0: 6e0a 2020 2d20 6d65 6469 756d 5f73 6576  n.  - medium_sev
│ │ │ -0004e0b0: 6572 6974 790a 2020 2d20 6e6f 5f72 6562  erity.  - no_reb
│ │ │ -0004e0c0: 6f6f 745f 6e65 6564 6564 0a20 202d 2070  oot_needed.  - p
│ │ │ -0004e0d0: 6163 6b61 6765 5f73 7564 6f5f 696e 7374  ackage_sudo_inst
│ │ │ -0004e0e0: 616c 6c65 640a 0a2d 206e 616d 653a 2045  alled..- name: E
│ │ │ -0004e0f0: 6e73 7572 6520 7375 646f 2069 7320 696e  nsure sudo is in
│ │ │ -0004e100: 7374 616c 6c65 640a 2020 616e 7369 626c  stalled.  ansibl
│ │ │ -0004e110: 652e 6275 696c 7469 6e2e 7061 636b 6167  e.builtin.packag
│ │ │ -0004e120: 653a 0a20 2020 206e 616d 653a 2073 7564  e:.    name: sud
│ │ │ -0004e130: 6f0a 2020 2020 7374 6174 653a 2070 7265  o.    state: pre
│ │ │ -0004e140: 7365 6e74 0a20 2077 6865 6e3a 2027 226b  sent.  when: '"k
│ │ │ -0004e150: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ -0004e160: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -0004e170: 270a 2020 7461 6773 3a0a 2020 2d20 4e49  '.  tags:.  - NI
│ │ │ -0004e180: 5354 2d38 3030 2d35 332d 434d 2d36 2861  ST-800-53-CM-6(a
│ │ │ -0004e190: 290a 2020 2d20 5043 492d 4453 5376 342d  ).  - PCI-DSSv4-
│ │ │ -0004e1a0: 322e 320a 2020 2d20 5043 492d 4453 5376  2.2.  - PCI-DSSv
│ │ │ -0004e1b0: 342d 322e 322e 360a 2020 2d20 656e 6162  4-2.2.6.  - enab
│ │ │ -0004e1c0: 6c65 5f73 7472 6174 6567 790a 2020 2d20  le_strategy.  - 
│ │ │ -0004e1d0: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ -0004e1e0: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ -0004e1f0: 6e0a 2020 2d20 6d65 6469 756d 5f73 6576  n.  - medium_sev
│ │ │ -0004e200: 6572 6974 790a 2020 2d20 6e6f 5f72 6562  erity.  - no_reb
│ │ │ -0004e210: 6f6f 745f 6e65 6564 6564 0a20 202d 2070  oot_needed.  - p
│ │ │ -0004e220: 6163 6b61 6765 5f73 7564 6f5f 696e 7374  ackage_sudo_inst
│ │ │ -0004e230: 616c 6c65 640a 3c2f 636f 6465 3e3c 2f70  alled.

Remediation │ │ │ -0004e2f0: 2053 6865 6c6c 2073 6372 6970 7420 e287 Shell script .. │ │ │ -0004e300: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
│ │ │ -0004df30: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -0004df60: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -0004df70: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ -0004dfb0: 793a 3c2f 7468 3e3c 7464 3e65 6e61 626c y:enabl │ │ │ -0004dfc0: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
Complexity: │ │ │ -0004e3d0: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -0004e3e0: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f

│ │ │ -0004e430: 2320 5265 6d65 6469 6174 696f 6e20 6973  # Remediation is
│ │ │ -0004e440: 2061 7070 6c69 6361 626c 6520 6f6e 6c79   applicable only
│ │ │ -0004e450: 2069 6e20 6365 7274 6169 6e20 706c 6174   in certain plat
│ │ │ -0004e460: 666f 726d 730a 6966 2072 706d 202d 2d71  forms.if rpm --q
│ │ │ -0004e470: 7569 6574 202d 7120 6b65 726e 656c 3b20  uiet -q kernel; 
│ │ │ -0004e480: 7468 656e 0a0a 6966 2021 2072 706d 202d  then..if ! rpm -
│ │ │ -0004e490: 7120 2d2d 7175 6965 7420 2273 7564 6f22  q --quiet "sudo"
│ │ │ -0004e4a0: 203b 2074 6865 6e0a 2020 2020 646e 6620   ; then.    dnf 
│ │ │ -0004e4b0: 696e 7374 616c 6c20 2d79 2022 7375 646f  install -y "sudo
│ │ │ -0004e4c0: 220a 6669 0a0a 656c 7365 0a20 2020 2026  ".fi..else.    &
│ │ │ -0004e4d0: 6774 3b26 616d 703b 3220 6563 686f 2027  gt;&2 echo '
│ │ │ -0004e4e0: 5265 6d65 6469 6174 696f 6e20 6973 206e  Remediation is n
│ │ │ -0004e4f0: 6f74 2061 7070 6c69 6361 626c 652c 206e  ot applicable, n
│ │ │ -0004e500: 6f74 6869 6e67 2077 6173 2064 6f6e 6527  othing was done'
│ │ │ -0004e510: 0a66 690a 3c2f 636f 6465 3e3c 2f70 7265  .fi.
low
Disru │ │ │ -0004e3b0: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ -0004e3c0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ -0004e400: 6567 793a 3c2f 7468 3e3c 7464 3e65 6e61 egy:ena │ │ │ -0004e410: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
│ │ │ +0004d9a0: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ +0004d9c0: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ +0004d9f0: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ +0004d980: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ +0004d990: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ +0004d9b0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ +0004d9d0: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ +0004d9e0: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:enable

- name: │ │ │ +0004da30: 2047 6174 6865 7220 7468 6520 7061 636b Gather the pack │ │ │ +0004da40: 6167 6520 6661 6374 730a 2020 7061 636b age facts. pack │ │ │ +0004da50: 6167 655f 6661 6374 733a 0a20 2020 206d age_facts:. m │ │ │ +0004da60: 616e 6167 6572 3a20 6175 746f 0a20 2074 anager: auto. t │ │ │ +0004da70: 6167 733a 0a20 202d 204e 4953 542d 3830 ags:. - NIST-80 │ │ │ +0004da80: 302d 3533 2d43 4d2d 3628 6129 0a20 202d 0-53-CM-6(a). - │ │ │ +0004da90: 2050 4349 2d44 5353 7634 2d32 2e32 0a20 PCI-DSSv4-2.2. │ │ │ +0004daa0: 202d 2050 4349 2d44 5353 7634 2d32 2e32 - PCI-DSSv4-2.2 │ │ │ +0004dab0: 2e36 0a20 202d 2065 6e61 626c 655f 7374 .6. - enable_st │ │ │ +0004dac0: 7261 7465 6779 0a20 202d 206c 6f77 5f63 rategy. - low_c │ │ │ +0004dad0: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f omplexity. - lo │ │ │ +0004dae0: 775f 6469 7372 7570 7469 6f6e 0a20 202d w_disruption. - │ │ │ +0004daf0: 206d 6564 6975 6d5f 7365 7665 7269 7479 medium_severity │ │ │ +0004db00: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e . - no_reboot_n │ │ │ +0004db10: 6565 6465 640a 2020 2d20 7061 636b 6167 eeded. - packag │ │ │ +0004db20: 655f 7375 646f 5f69 6e73 7461 6c6c 6564 e_sudo_installed │ │ │ +0004db30: 0a0a 2d20 6e61 6d65 3a20 456e 7375 7265 ..- name: Ensure │ │ │ +0004db40: 2073 7564 6f20 6973 2069 6e73 7461 6c6c sudo is install │ │ │ +0004db50: 6564 0a20 2061 6e73 6962 6c65 2e62 7569 ed. ansible.bui │ │ │ +0004db60: 6c74 696e 2e70 6163 6b61 6765 3a0a 2020 ltin.package:. │ │ │ +0004db70: 2020 6e61 6d65 3a20 7375 646f 0a20 2020 name: sudo. │ │ │ +0004db80: 2073 7461 7465 3a20 7072 6573 656e 740a state: present. │ │ │ +0004db90: 2020 7768 656e 3a20 2722 6b65 726e 656c when: '"kernel │ │ │ +0004dba0: 2220 696e 2061 6e73 6962 6c65 5f66 6163 " in ansible_fac │ │ │ +0004dbb0: 7473 2e70 6163 6b61 6765 7327 0a20 2074 ts.packages'. t │ │ │ +0004dbc0: 6167 733a 0a20 202d 204e 4953 542d 3830 ags:. - NIST-80 │ │ │ +0004dbd0: 302d 3533 2d43 4d2d 3628 6129 0a20 202d 0-53-CM-6(a). - │ │ │ +0004dbe0: 2050 4349 2d44 5353 7634 2d32 2e32 0a20 PCI-DSSv4-2.2. │ │ │ +0004dbf0: 202d 2050 4349 2d44 5353 7634 2d32 2e32 - PCI-DSSv4-2.2 │ │ │ +0004dc00: 2e36 0a20 202d 2065 6e61 626c 655f 7374 .6. - enable_st │ │ │ +0004dc10: 7261 7465 6779 0a20 202d 206c 6f77 5f63 rategy. - low_c │ │ │ +0004dc20: 6f6d 706c 6578 6974 790a 2020 2d20 6c6f omplexity. - lo │ │ │ +0004dc30: 775f 6469 7372 7570 7469 6f6e 0a20 202d w_disruption. - │ │ │ +0004dc40: 206d 6564 6975 6d5f 7365 7665 7269 7479 medium_severity │ │ │ +0004dc50: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e . - no_reboot_n │ │ │ +0004dc60: 6565 6465 640a 2020 2d20 7061 636b 6167 eeded. - packag │ │ │ +0004dc70: 655f 7375 646f 5f69 6e73 7461 6c6c 6564 e_sudo_installed │ │ │ +0004dc80: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f . │ │ │ +0004dd30: 5265 6d65 6469 6174 696f 6e20 5075 7070 Remediation Pupp │ │ │ +0004dd40: 6574 2073 6e69 7070 6574 20e2 87b2 3c2f et snippet ...

< │ │ │ +0004dde0: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +0004ddf0: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ +0004de40: 3c74 723e 3c74 683e 5374 7261 7465 6779
inc
│ │ │ +0004de80: 6c75 6465 2069 6e73 7461 6c6c 5f73 7564  lude install_sud
│ │ │ +0004de90: 6f0a 0a63 6c61 7373 2069 6e73 7461 6c6c  o..class install
│ │ │ +0004dea0: 5f73 7564 6f20 7b0a 2020 7061 636b 6167  _sudo {.  packag
│ │ │ +0004deb0: 6520 7b20 2773 7564 6f27 3a0a 2020 2020  e { 'sudo':.    
│ │ │ +0004dec0: 656e 7375 7265 203d 2667 743b 2027 696e  ensure => 'in
│ │ │ +0004ded0: 7374 616c 6c65 6427 2c0a 2020 7d0a 7d0a  stalled',.  }.}.
│ │ │ +0004dee0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
R │ │ │ +0004df90: 656d 6564 6961 7469 6f6e 204f 5342 7569 emediation OSBui │ │ │ +0004dfa0: 6c64 2042 6c75 6570 7269 6e74 2073 6e69 ld Blueprint sni │ │ │ +0004dfb0: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ +0004dfc0: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
< │ │ │ +0004dff0: 7072 653e 3c63 6f64 653e 0a5b 5b70 6163 pre>.[[pac │ │ │ +0004e000: 6b61 6765 735d 5d0a 6e61 6d65 203d 2022 kages]].name = " │ │ │ +0004e010: 7375 646f 220a 7665 7273 696f 6e20 3d20 sudo".version = │ │ │ +0004e020: 222a 220a 3c2f 636f 6465 3e3c 2f70 7265 "*".
Remediation S │ │ │ +0004e0e0: 6865 6c6c 2073 6372 6970 7420 e287 b23c hell script ...< │ │ │ +0004e0f0: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
C │ │ │ +0004ddd0: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ +0004de00: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ +0004de10: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ +0004de50: 3a3c 2f74 683e 3c74 643e 656e 6162 6c65 :enable │ │ │ +0004de60: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
│ │ │ +0004e180: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
# 
│ │ │ +0004e220: 5265 6d65 6469 6174 696f 6e20 6973 2061  Remediation is a
│ │ │ +0004e230: 7070 6c69 6361 626c 6520 6f6e 6c79 2069  pplicable only i
│ │ │ +0004e240: 6e20 6365 7274 6169 6e20 706c 6174 666f  n certain platfo
│ │ │ +0004e250: 726d 730a 6966 2072 706d 202d 2d71 7569  rms.if rpm --qui
│ │ │ +0004e260: 6574 202d 7120 6b65 726e 656c 3b20 7468  et -q kernel; th
│ │ │ +0004e270: 656e 0a0a 6966 2021 2072 706d 202d 7120  en..if ! rpm -q 
│ │ │ +0004e280: 2d2d 7175 6965 7420 2273 7564 6f22 203b  --quiet "sudo" ;
│ │ │ +0004e290: 2074 6865 6e0a 2020 2020 646e 6620 696e   then.    dnf in
│ │ │ +0004e2a0: 7374 616c 6c20 2d79 2022 7375 646f 220a  stall -y "sudo".
│ │ │ +0004e2b0: 6669 0a0a 656c 7365 0a20 2020 2026 6774  fi..else.    >
│ │ │ +0004e2c0: 3b26 616d 703b 3220 6563 686f 2027 5265  ;&2 echo 'Re
│ │ │ +0004e2d0: 6d65 6469 6174 696f 6e20 6973 206e 6f74  mediation is not
│ │ │ +0004e2e0: 2061 7070 6c69 6361 626c 652c 206e 6f74   applicable, not
│ │ │ +0004e2f0: 6869 6e67 2077 6173 2064 6f6e 6527 0a66  hing was done'.f
│ │ │ +0004e300: 690a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  i.
< │ │ │ +0004e310: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation Ana │ │ │ +0004e3c0: 636f 6e64 6120 736e 6970 7065 7420 e287 conda snippet .. │ │ │ +0004e3d0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
│ │ │ +0004e170: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +0004e1a0: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +0004e1b0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +0004e1f0: 793a 3c2f 7468 3e3c 7464 3e65 6e61 626c y:enabl │ │ │ +0004e200: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
Complexity: │ │ │ +0004e4a0: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +0004e4b0: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f

│ │ │ +0004e500: 0a70 6163 6b61 6765 202d 2d61 6464 3d73  .package --add=s
│ │ │ +0004e510: 7564 6f0a 3c2f 636f 6465 3e3c 2f70 7265  udo.
< │ │ │ 0004e540: 2f74 6162 6c65 3e3c 2f74 643e 3c2f 7472 /table>Remediation OSB │ │ │ -0005d560: 7569 6c64 2042 6c75 6570 7269 6e74 2073 uild Blueprint s │ │ │ -0005d570: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
.[[p
│ │ │ -0005d5c0: 6163 6b61 6765 735d 5d0a 6e61 6d65 203d  ackages]].name =
│ │ │ -0005d5d0: 2022 646e 662d 6175 746f 6d61 7469 6322   "dnf-automatic"
│ │ │ -0005d5e0: 0a76 6572 7369 6f6e 203d 2022 2a22 0a3c  .version = "*".<
│ │ │ -0005d5f0: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
Re │ │ │ -0005d6a0: 6d65 6469 6174 696f 6e20 416e 6163 6f6e mediation Anacon │ │ │ -0005d6b0: 6461 2073 6e69 7070 6574 20e2 87b2 3c2f da snippet ...
low
Disru │ │ │ +0004e480: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +0004e490: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +0004e4d0: 6567 793a 3c2f 7468 3e3c 7464 3e65 6e61 egy:ena │ │ │ +0004e4e0: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
< │ │ │ -0005d750: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -0005d760: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ -0005d7b0: 3c74 723e 3c74 683e 5374 7261 7465 6779
.pa
│ │ │ -0005d7f0: 636b 6167 6520 2d2d 6164 643d 646e 662d  ckage --add=dnf-
│ │ │ -0005d800: 6175 746f 6d61 7469 630a 3c2f 636f 6465  automatic.
Remedia │ │ │ -0005d8c0: 7469 6f6e 2050 7570 7065 7420 736e 6970 tion Puppet snip │ │ │ -0005d8d0: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ -0005d8e0: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -0005d8f0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -0005d900: 7365 2220 6964 3d22 6964 3931 223e 3c74 se" id="id91"> │ │ │ -0005d950: 3c74 723e 3c74 683e 436f 6d70 6c65 7869
< │ │ │ -0005d9e0: 7464 3e65 6e61 626c 653c 2f74 643e 3c2f td>enable
C │ │ │ -0005d740: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -0005d770: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ -0005d780: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -0005d7c0: 3a3c 2f74 683e 3c74 643e 656e 6162 6c65 :enable │ │ │ -0005d7d0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Complexi │ │ │ -0005d960: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -0005d970: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Disruption:low
Reboot │ │ │ -0005d9b0: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -0005d9c0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Strategy:
│ │ │ -0005da00: 3c63 6f64 653e 696e 636c 7564 6520 696e  include in
│ │ │ -0005da10: 7374 616c 6c5f 646e 662d 6175 746f 6d61  stall_dnf-automa
│ │ │ -0005da20: 7469 630a 0a63 6c61 7373 2069 6e73 7461  tic..class insta
│ │ │ -0005da30: 6c6c 5f64 6e66 2d61 7574 6f6d 6174 6963  ll_dnf-automatic
│ │ │ -0005da40: 207b 0a20 2070 6163 6b61 6765 207b 2027   {.  package { '
│ │ │ -0005da50: 646e 662d 6175 746f 6d61 7469 6327 3a0a  dnf-automatic':.
│ │ │ -0005da60: 2020 2020 656e 7375 7265 203d 2667 743b      ensure =>
│ │ │ -0005da70: 2027 696e 7374 616c 6c65 6427 2c0a 2020   'installed',.  
│ │ │ -0005da80: 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70 7265  }.}.
Remediation A │ │ │ -0005db40: 6e73 6962 6c65 2073 6e69 7070 6574 20e2 nsible snippet . │ │ │ -0005db50: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
< │ │ │ -0005dbd0: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ -0005dbf0: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -0005dc40: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
- name: Gather 
│ │ │ -0005dc90: 7468 6520 7061 636b 6167 6520 6661 6374  the package fact
│ │ │ -0005dca0: 730a 2020 7061 636b 6167 655f 6661 6374  s.  package_fact
│ │ │ -0005dcb0: 733a 0a20 2020 206d 616e 6167 6572 3a20  s:.    manager: 
│ │ │ -0005dcc0: 6175 746f 0a20 2074 6167 733a 0a20 202d  auto.  tags:.  -
│ │ │ -0005dcd0: 2065 6e61 626c 655f 7374 7261 7465 6779   enable_strategy
│ │ │ -0005dce0: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ -0005dcf0: 6974 790a 2020 2d20 6c6f 775f 6469 7372  ity.  - low_disr
│ │ │ -0005dd00: 7570 7469 6f6e 0a20 202d 206d 6564 6975  uption.  - mediu
│ │ │ -0005dd10: 6d5f 7365 7665 7269 7479 0a20 202d 206e  m_severity.  - n
│ │ │ -0005dd20: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ -0005dd30: 2020 2d20 7061 636b 6167 655f 646e 662d    - package_dnf-
│ │ │ -0005dd40: 6175 746f 6d61 7469 635f 696e 7374 616c  automatic_instal
│ │ │ -0005dd50: 6c65 640a 0a2d 206e 616d 653a 2045 6e73  led..- name: Ens
│ │ │ -0005dd60: 7572 6520 646e 662d 6175 746f 6d61 7469  ure dnf-automati
│ │ │ -0005dd70: 6320 6973 2069 6e73 7461 6c6c 6564 0a20  c is installed. 
│ │ │ -0005dd80: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ -0005dd90: 2e70 6163 6b61 6765 3a0a 2020 2020 6e61  .package:.    na
│ │ │ -0005dda0: 6d65 3a20 646e 662d 6175 746f 6d61 7469  me: dnf-automati
│ │ │ -0005ddb0: 630a 2020 2020 7374 6174 653a 2070 7265  c.    state: pre
│ │ │ -0005ddc0: 7365 6e74 0a20 2077 6865 6e3a 2028 206e  sent.  when: ( n
│ │ │ -0005ddd0: 6f74 2028 2022 6b65 726e 656c 2220 696e  ot ( "kernel" in
│ │ │ -0005dde0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -0005ddf0: 6163 6b61 6765 7320 616e 6420 2262 6f6f  ackages and "boo
│ │ │ -0005de00: 7463 2220 696e 2061 6e73 6962 6c65 5f66  tc" in ansible_f
│ │ │ -0005de10: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ -0005de20: 2020 616e 6420 6e6f 7420 226f 7065 6e73    and not "opens
│ │ │ -0005de30: 6869 6674 2d6b 7562 656c 6574 2220 696e  hift-kubelet" in
│ │ │ -0005de40: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -0005de50: 6163 6b61 6765 7320 616e 6420 226f 7374  ackages and "ost
│ │ │ -0005de60: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ -0005de70: 7072 6f63 5f63 6d64 6c69 6e65 0a20 2020  proc_cmdline.   
│ │ │ -0005de80: 2029 2061 6e64 206e 6f74 2028 2061 6e73   ) and not ( ans
│ │ │ -0005de90: 6962 6c65 5f76 6972 7475 616c 697a 6174  ible_virtualizat
│ │ │ -0005dea0: 696f 6e5f 7479 7065 2069 6e20 5b22 646f  ion_type in ["do
│ │ │ -0005deb0: 636b 6572 222c 2022 6c78 6322 2c20 226f  cker", "lxc", "o
│ │ │ -0005dec0: 7065 6e76 7a22 2c20 2270 6f64 6d61 6e22  penvz", "podman"
│ │ │ -0005ded0: 2c0a 2020 2020 2263 6f6e 7461 696e 6572  ,.    "container
│ │ │ -0005dee0: 225d 2029 2029 0a20 2074 6167 733a 0a20  "] ) ).  tags:. 
│ │ │ -0005def0: 202d 2065 6e61 626c 655f 7374 7261 7465   - enable_strate
│ │ │ -0005df00: 6779 0a20 202d 206c 6f77 5f63 6f6d 706c  gy.  - low_compl
│ │ │ -0005df10: 6578 6974 790a 2020 2d20 6c6f 775f 6469  exity.  - low_di
│ │ │ -0005df20: 7372 7570 7469 6f6e 0a20 202d 206d 6564  sruption.  - med
│ │ │ -0005df30: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ -0005df40: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ -0005df50: 640a 2020 2d20 7061 636b 6167 655f 646e  d.  - package_dn
│ │ │ -0005df60: 662d 6175 746f 6d61 7469 635f 696e 7374  f-automatic_inst
│ │ │ -0005df70: 616c 6c65 640a 3c2f 636f 6465 3e3c 2f70  alled.

Remediation │ │ │ -0005e030: 2053 6865 6c6c 2073 6372 6970 7420 e287 Shell script .. │ │ │ -0005e040: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
low
Disr │ │ │ -0005dc00: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -0005dc10: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ -0005dc50: 7465 6779 3a3c 2f74 683e 3c74 643e 656e tegy:en │ │ │ -0005dc60: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
Complexity: │ │ │ -0005e110: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -0005e120: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f

│ │ │ -0005e170: 2320 5265 6d65 6469 6174 696f 6e20 6973  # Remediation is
│ │ │ -0005e180: 2061 7070 6c69 6361 626c 6520 6f6e 6c79   applicable only
│ │ │ -0005e190: 2069 6e20 6365 7274 6169 6e20 706c 6174   in certain plat
│ │ │ -0005e1a0: 666f 726d 730a 6966 2028 2028 2021 2028  forms.if ( ( ! (
│ │ │ -0005e1b0: 207b 2072 706d 202d 2d71 7569 6574 202d   { rpm --quiet -
│ │ │ -0005e1c0: 7120 6b65 726e 656c 203b 7d20 2661 6d70  q kernel ;} &
│ │ │ -0005e1d0: 3b26 616d 703b 207b 2072 706d 202d 2d71  ;& { rpm --q
│ │ │ -0005e1e0: 7569 6574 202d 7120 626f 6f74 6320 3b7d  uiet -q bootc ;}
│ │ │ -0005e1f0: 2026 616d 703b 2661 6d70 3b20 7b20 2120   && { ! 
│ │ │ -0005e200: 7270 6d20 2d2d 7175 6965 7420 2d71 206f  rpm --quiet -q o
│ │ │ -0005e210: 7065 6e73 6869 6674 2d6b 7562 656c 6574  penshift-kubelet
│ │ │ -0005e220: 203b 7d20 2661 6d70 3b26 616d 703b 2028   ;} && (
│ │ │ -0005e230: 5b20 2d66 202f 7275 6e2f 6f73 7472 6565  [ -f /run/ostree
│ │ │ -0005e240: 2d62 6f6f 7465 6420 5d20 7c7c 205b 202d  -booted ] || [ -
│ │ │ -0005e250: 4c20 2f6f 7374 7265 6520 5d29 2029 2026  L /ostree ]) ) &
│ │ │ -0005e260: 616d 703b 2661 6d70 3b20 2120 2820 5b20  amp;& ! ( [ 
│ │ │ -0005e270: 2d66 202f 2e64 6f63 6b65 7265 6e76 205d  -f /.dockerenv ]
│ │ │ -0005e280: 207c 7c20 5b20 2d66 202f 7275 6e2f 2e63   || [ -f /run/.c
│ │ │ -0005e290: 6f6e 7461 696e 6572 656e 7620 5d20 2920  ontainerenv ] ) 
│ │ │ -0005e2a0: 2920 293b 2074 6865 6e0a 0a69 6620 2120  ) ); then..if ! 
│ │ │ -0005e2b0: 7270 6d20 2d71 202d 2d71 7569 6574 2022  rpm -q --quiet "
│ │ │ -0005e2c0: 646e 662d 6175 746f 6d61 7469 6322 203b  dnf-automatic" ;
│ │ │ -0005e2d0: 2074 6865 6e0a 2020 2020 646e 6620 696e   then.    dnf in
│ │ │ -0005e2e0: 7374 616c 6c20 2d79 2022 646e 662d 6175  stall -y "dnf-au
│ │ │ -0005e2f0: 746f 6d61 7469 6322 0a66 690a 0a65 6c73  tomatic".fi..els
│ │ │ -0005e300: 650a 2020 2020 2667 743b 2661 6d70 3b32  e.    >&2
│ │ │ -0005e310: 2065 6368 6f20 2752 656d 6564 6961 7469   echo 'Remediati
│ │ │ -0005e320: 6f6e 2069 7320 6e6f 7420 6170 706c 6963  on is not applic
│ │ │ -0005e330: 6162 6c65 2c20 6e6f 7468 696e 6720 7761  able, nothing wa
│ │ │ -0005e340: 7320 646f 6e65 270a 6669 0a3c 2f63 6f64  s done'.fi.Remediation Ans
│ │ │ +0005d560: 6962 6c65 2073 6e69 7070 6574 20e2 87b2  ible snippet ...
│ │ │ +0005d570: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61  
low
Disru │ │ │ -0005e0f0: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ -0005e100: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ -0005e140: 6567 793a 3c2f 7468 3e3c 7464 3e65 6e61 egy:ena │ │ │ -0005e150: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
< │ │ │ +0005d640: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +0005d650: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
-
│ │ │ +0005d6a0: 206e 616d 653a 2047 6174 6865 7220 7468   name: Gather th
│ │ │ +0005d6b0: 6520 7061 636b 6167 6520 6661 6374 730a  e package facts.
│ │ │ +0005d6c0: 2020 7061 636b 6167 655f 6661 6374 733a    package_facts:
│ │ │ +0005d6d0: 0a20 2020 206d 616e 6167 6572 3a20 6175  .    manager: au
│ │ │ +0005d6e0: 746f 0a20 2074 6167 733a 0a20 202d 2065  to.  tags:.  - e
│ │ │ +0005d6f0: 6e61 626c 655f 7374 7261 7465 6779 0a20  nable_strategy. 
│ │ │ +0005d700: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ +0005d710: 790a 2020 2d20 6c6f 775f 6469 7372 7570  y.  - low_disrup
│ │ │ +0005d720: 7469 6f6e 0a20 202d 206d 6564 6975 6d5f  tion.  - medium_
│ │ │ +0005d730: 7365 7665 7269 7479 0a20 202d 206e 6f5f  severity.  - no_
│ │ │ +0005d740: 7265 626f 6f74 5f6e 6565 6465 640a 2020  reboot_needed.  
│ │ │ +0005d750: 2d20 7061 636b 6167 655f 646e 662d 6175  - package_dnf-au
│ │ │ +0005d760: 746f 6d61 7469 635f 696e 7374 616c 6c65  tomatic_installe
│ │ │ +0005d770: 640a 0a2d 206e 616d 653a 2045 6e73 7572  d..- name: Ensur
│ │ │ +0005d780: 6520 646e 662d 6175 746f 6d61 7469 6320  e dnf-automatic 
│ │ │ +0005d790: 6973 2069 6e73 7461 6c6c 6564 0a20 2061  is installed.  a
│ │ │ +0005d7a0: 6e73 6962 6c65 2e62 7569 6c74 696e 2e70  nsible.builtin.p
│ │ │ +0005d7b0: 6163 6b61 6765 3a0a 2020 2020 6e61 6d65  ackage:.    name
│ │ │ +0005d7c0: 3a20 646e 662d 6175 746f 6d61 7469 630a  : dnf-automatic.
│ │ │ +0005d7d0: 2020 2020 7374 6174 653a 2070 7265 7365      state: prese
│ │ │ +0005d7e0: 6e74 0a20 2077 6865 6e3a 2028 206e 6f74  nt.  when: ( not
│ │ │ +0005d7f0: 2028 2022 6b65 726e 656c 2220 696e 2061   ( "kernel" in a
│ │ │ +0005d800: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +0005d810: 6b61 6765 7320 616e 6420 2262 6f6f 7463  kages and "bootc
│ │ │ +0005d820: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +0005d830: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ +0005d840: 616e 6420 6e6f 7420 226f 7065 6e73 6869  and not "openshi
│ │ │ +0005d850: 6674 2d6b 7562 656c 6574 2220 696e 2061  ft-kubelet" in a
│ │ │ +0005d860: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +0005d870: 6b61 6765 7320 616e 6420 226f 7374 7265  kages and "ostre
│ │ │ +0005d880: 6522 2069 6e20 616e 7369 626c 655f 7072  e" in ansible_pr
│ │ │ +0005d890: 6f63 5f63 6d64 6c69 6e65 0a20 2020 2029  oc_cmdline.    )
│ │ │ +0005d8a0: 2061 6e64 206e 6f74 2028 2061 6e73 6962   and not ( ansib
│ │ │ +0005d8b0: 6c65 5f76 6972 7475 616c 697a 6174 696f  le_virtualizatio
│ │ │ +0005d8c0: 6e5f 7479 7065 2069 6e20 5b22 646f 636b  n_type in ["dock
│ │ │ +0005d8d0: 6572 222c 2022 6c78 6322 2c20 226f 7065  er", "lxc", "ope
│ │ │ +0005d8e0: 6e76 7a22 2c20 2270 6f64 6d61 6e22 2c0a  nvz", "podman",.
│ │ │ +0005d8f0: 2020 2020 2263 6f6e 7461 696e 6572 225d      "container"]
│ │ │ +0005d900: 2029 2029 0a20 2074 6167 733a 0a20 202d   ) ).  tags:.  -
│ │ │ +0005d910: 2065 6e61 626c 655f 7374 7261 7465 6779   enable_strategy
│ │ │ +0005d920: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ +0005d930: 6974 790a 2020 2d20 6c6f 775f 6469 7372  ity.  - low_disr
│ │ │ +0005d940: 7570 7469 6f6e 0a20 202d 206d 6564 6975  uption.  - mediu
│ │ │ +0005d950: 6d5f 7365 7665 7269 7479 0a20 202d 206e  m_severity.  - n
│ │ │ +0005d960: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a  o_reboot_needed.
│ │ │ +0005d970: 2020 2d20 7061 636b 6167 655f 646e 662d    - package_dnf-
│ │ │ +0005d980: 6175 746f 6d61 7469 635f 696e 7374 616c  automatic_instal
│ │ │ +0005d990: 6c65 640a 3c2f 636f 6465 3e3c 2f70 7265  led.
Remediation P │ │ │ +0005da50: 7570 7065 7420 736e 6970 7065 7420 e287 uppet snippet .. │ │ │ +0005da60: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
Complexity:low
Disrup │ │ │ +0005d620: 7469 6f6e 3a3c 2f74 683e 3c74 643e 6c6f tion:lo │ │ │ +0005d630: 773c 2f74 643e 3c2f 7472 3e3c 7472 3e3c w
Strate │ │ │ +0005d670: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ +0005d680: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Complexity: │ │ │ +0005db30: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +0005db40: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f

│ │ │ +0005db90: 696e 636c 7564 6520 696e 7374 616c 6c5f  include install_
│ │ │ +0005dba0: 646e 662d 6175 746f 6d61 7469 630a 0a63  dnf-automatic..c
│ │ │ +0005dbb0: 6c61 7373 2069 6e73 7461 6c6c 5f64 6e66  lass install_dnf
│ │ │ +0005dbc0: 2d61 7574 6f6d 6174 6963 207b 0a20 2070  -automatic {.  p
│ │ │ +0005dbd0: 6163 6b61 6765 207b 2027 646e 662d 6175  ackage { 'dnf-au
│ │ │ +0005dbe0: 746f 6d61 7469 6327 3a0a 2020 2020 656e  tomatic':.    en
│ │ │ +0005dbf0: 7375 7265 203d 2667 743b 2027 696e 7374  sure => 'inst
│ │ │ +0005dc00: 616c 6c65 6427 2c0a 2020 7d0a 7d0a 3c2f  alled',.  }.}.
Rem │ │ │ +0005dcc0: 6564 6961 7469 6f6e 204f 5342 7569 6c64 ediation OSBuild │ │ │ +0005dcd0: 2042 6c75 6570 7269 6e74 2073 6e69 7070 Blueprint snipp │ │ │ +0005dce0: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
.[[packa │ │ │ +0005dd30: 6765 735d 5d0a 6e61 6d65 203d 2022 646e ges]].name = "dn │ │ │ +0005dd40: 662d 6175 746f 6d61 7469 6322 0a76 6572 f-automatic".ver │ │ │ +0005dd50: 7369 6f6e 203d 2022 2a22 0a3c 2f63 6f64 sion = "*".Remedi │ │ │ +0005de10: 6174 696f 6e20 5368 656c 6c20 7363 7269 ation Shell scri │ │ │ +0005de20: 7074 20e2 87b2 3c2f 613e 3c62 723e 3c64 pt ...
< │ │ │ +0005dea0: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>
│ │ │ +0005dee0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 enable
low
Disru │ │ │ +0005db10: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +0005db20: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +0005db60: 6567 793a 3c2f 7468 3e3c 7464 3e65 6e61 egy:ena │ │ │ +0005db70: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Complexit │ │ │ +0005deb0: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low
│ │ │ +0005ded0: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption:low
Reboot: │ │ │ +0005df00: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false
│ │ │ +0005df20: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:
<
│ │ │ +0005df50: 636f 6465 3e23 2052 656d 6564 6961 7469  code># Remediati
│ │ │ +0005df60: 6f6e 2069 7320 6170 706c 6963 6162 6c65  on is applicable
│ │ │ +0005df70: 206f 6e6c 7920 696e 2063 6572 7461 696e   only in certain
│ │ │ +0005df80: 2070 6c61 7466 6f72 6d73 0a69 6620 2820   platforms.if ( 
│ │ │ +0005df90: 2820 2120 2820 7b20 7270 6d20 2d2d 7175  ( ! ( { rpm --qu
│ │ │ +0005dfa0: 6965 7420 2d71 206b 6572 6e65 6c20 3b7d  iet -q kernel ;}
│ │ │ +0005dfb0: 2026 616d 703b 2661 6d70 3b20 7b20 7270   && { rp
│ │ │ +0005dfc0: 6d20 2d2d 7175 6965 7420 2d71 2062 6f6f  m --quiet -q boo
│ │ │ +0005dfd0: 7463 203b 7d20 2661 6d70 3b26 616d 703b  tc ;} &&
│ │ │ +0005dfe0: 207b 2021 2072 706d 202d 2d71 7569 6574   { ! rpm --quiet
│ │ │ +0005dff0: 202d 7120 6f70 656e 7368 6966 742d 6b75   -q openshift-ku
│ │ │ +0005e000: 6265 6c65 7420 3b7d 2026 616d 703b 2661  belet ;} &&a
│ │ │ +0005e010: 6d70 3b20 285b 202d 6620 2f72 756e 2f6f  mp; ([ -f /run/o
│ │ │ +0005e020: 7374 7265 652d 626f 6f74 6564 205d 207c  stree-booted ] |
│ │ │ +0005e030: 7c20 5b20 2d4c 202f 6f73 7472 6565 205d  | [ -L /ostree ]
│ │ │ +0005e040: 2920 2920 2661 6d70 3b26 616d 703b 2021  ) ) && !
│ │ │ +0005e050: 2028 205b 202d 6620 2f2e 646f 636b 6572   ( [ -f /.docker
│ │ │ +0005e060: 656e 7620 5d20 7c7c 205b 202d 6620 2f72  env ] || [ -f /r
│ │ │ +0005e070: 756e 2f2e 636f 6e74 6169 6e65 7265 6e76  un/.containerenv
│ │ │ +0005e080: 205d 2029 2029 2029 3b20 7468 656e 0a0a   ] ) ) ); then..
│ │ │ +0005e090: 6966 2021 2072 706d 202d 7120 2d2d 7175  if ! rpm -q --qu
│ │ │ +0005e0a0: 6965 7420 2264 6e66 2d61 7574 6f6d 6174  iet "dnf-automat
│ │ │ +0005e0b0: 6963 2220 3b20 7468 656e 0a20 2020 2064  ic" ; then.    d
│ │ │ +0005e0c0: 6e66 2069 6e73 7461 6c6c 202d 7920 2264  nf install -y "d
│ │ │ +0005e0d0: 6e66 2d61 7574 6f6d 6174 6963 220a 6669  nf-automatic".fi
│ │ │ +0005e0e0: 0a0a 656c 7365 0a20 2020 2026 6774 3b26  ..else.    >&
│ │ │ +0005e0f0: 616d 703b 3220 6563 686f 2027 5265 6d65  amp;2 echo 'Reme
│ │ │ +0005e100: 6469 6174 696f 6e20 6973 206e 6f74 2061  diation is not a
│ │ │ +0005e110: 7070 6c69 6361 626c 652c 206e 6f74 6869  pplicable, nothi
│ │ │ +0005e120: 6e67 2077 6173 2064 6f6e 6527 0a66 690a  ng was done'.fi.
│ │ │ +0005e130: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
R │ │ │ +0005e1e0: 656d 6564 6961 7469 6f6e 2041 6e61 636f emediation Anaco │ │ │ +0005e1f0: 6e64 6120 736e 6970 7065 7420 e287 b23c nda snippet ...< │ │ │ +0005e200: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
│ │ │ +0005e290: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 Reboot:false
.p
│ │ │ +0005e330: 6163 6b61 6765 202d 2d61 6464 3d64 6e66  ackage --add=dnf
│ │ │ +0005e340: 2d61 7574 6f6d 6174 6963 0a3c 2f63 6f64  -automatic.
│ │ │ +0005e280: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +0005e2b0: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +0005e2c0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strateg │ │ │ +0005e300: 793a 3c2f 7468 3e3c 7464 3e65 6e61 626c y:enabl │ │ │ +0005e310: 653c 2f74 643e 3c2f 7472 3e3c 2f74 6162 e
Remediation OSB │ │ │ -000fd750: 7569 6c64 2042 6c75 6570 7269 6e74 2073 uild Blueprint s │ │ │ -000fd760: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
[cu
│ │ │ -000fd7b0: 7374 6f6d 697a 6174 696f 6e73 2e6b 6572  stomizations.ker
│ │ │ -000fd7c0: 6e65 6c5d 0a61 7070 656e 6420 3d20 2269  nel].append = "i
│ │ │ -000fd7d0: 6f6d 6d75 3d66 6f72 6365 220a 3c2f 636f  ommu=force".
< │ │ │ -000fd7f0: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ -000fd800: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ -000fd810: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ -000fd820: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ -000fd830: 6432 3437 2220 7461 6269 6e64 6578 3d22 d247" tabindex=" │ │ │ -000fd840: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ -000fd850: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ -000fd860: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ -000fd870: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ -000fd880: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ -000fd890: 6469 6174 696f 6e20 416e 7369 626c 6520 diation Ansible │ │ │ -000fd8a0: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ -000fd8b0: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Reboot:true │ │ │ -000fd9a0: 3c74 723e 3c74 683e 5374 7261 7465 6779
-
│ │ │ -000fd9e0: 206e 616d 653a 2047 6174 6865 7220 7468   name: Gather th
│ │ │ -000fd9f0: 6520 7061 636b 6167 6520 6661 6374 730a  e package facts.
│ │ │ -000fda00: 2020 7061 636b 6167 655f 6661 6374 733a    package_facts:
│ │ │ -000fda10: 0a20 2020 206d 616e 6167 6572 3a20 6175  .    manager: au
│ │ │ -000fda20: 746f 0a20 2074 6167 733a 0a20 202d 2067  to.  tags:.  - g
│ │ │ -000fda30: 7275 6232 5f65 6e61 626c 655f 696f 6d6d  rub2_enable_iomm
│ │ │ -000fda40: 755f 666f 7263 650a 2020 2d20 6c6f 775f  u_force.  - low_
│ │ │ -000fda50: 6469 7372 7570 7469 6f6e 0a20 202d 206d  disruption.  - m
│ │ │ -000fda60: 6564 6975 6d5f 636f 6d70 6c65 7869 7479  edium_complexity
│ │ │ -000fda70: 0a20 202d 2072 6562 6f6f 745f 7265 7175  .  - reboot_requ
│ │ │ -000fda80: 6972 6564 0a20 202d 2072 6573 7472 6963  ired.  - restric
│ │ │ -000fda90: 745f 7374 7261 7465 6779 0a20 202d 2075  t_strategy.  - u
│ │ │ -000fdaa0: 6e6b 6e6f 776e 5f73 6576 6572 6974 790a  nknown_severity.
│ │ │ -000fdab0: 0a2d 206e 616d 653a 2043 6865 636b 2069  .- name: Check i
│ │ │ -000fdac0: 6620 696f 6d6d 7520 6172 6775 6d65 6e74  f iommu argument
│ │ │ -000fdad0: 2069 7320 616c 7265 6164 7920 7072 6573   is already pres
│ │ │ -000fdae0: 656e 7420 696e 202f 6574 632f 6465 6661  ent in /etc/defa
│ │ │ -000fdaf0: 756c 742f 6772 7562 0a20 2061 6e73 6962  ult/grub.  ansib
│ │ │ -000fdb00: 6c65 2e62 7569 6c74 696e 2e73 6c75 7270  le.builtin.slurp
│ │ │ -000fdb10: 3a0a 2020 2020 7372 633a 202f 6574 632f  :.    src: /etc/
│ │ │ -000fdb20: 6465 6661 756c 742f 6772 7562 0a20 2072  default/grub.  r
│ │ │ -000fdb30: 6567 6973 7465 723a 2065 7463 5f64 6566  egister: etc_def
│ │ │ -000fdb40: 6175 6c74 5f67 7275 620a 2020 7768 656e  ault_grub.  when
│ │ │ -000fdb50: 3a20 2820 2267 7275 6232 2d63 6f6d 6d6f  : ( "grub2-commo
│ │ │ -000fdb60: 6e22 2069 6e20 616e 7369 626c 655f 6661  n" in ansible_fa
│ │ │ -000fdb70: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ -000fdb80: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ -000fdb90: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -000fdba0: 6765 730a 2020 2020 290a 2020 7461 6773  ges.    ).  tags
│ │ │ -000fdbb0: 3a0a 2020 2d20 6772 7562 325f 656e 6162  :.  - grub2_enab
│ │ │ -000fdbc0: 6c65 5f69 6f6d 6d75 5f66 6f72 6365 0a20  le_iommu_force. 
│ │ │ -000fdbd0: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ -000fdbe0: 6e0a 2020 2d20 6d65 6469 756d 5f63 6f6d  n.  - medium_com
│ │ │ -000fdbf0: 706c 6578 6974 790a 2020 2d20 7265 626f  plexity.  - rebo
│ │ │ -000fdc00: 6f74 5f72 6571 7569 7265 640a 2020 2d20  ot_required.  - 
│ │ │ -000fdc10: 7265 7374 7269 6374 5f73 7472 6174 6567  restrict_strateg
│ │ │ -000fdc20: 790a 2020 2d20 756e 6b6e 6f77 6e5f 7365  y.  - unknown_se
│ │ │ -000fdc30: 7665 7269 7479 0a0a 2d20 6e61 6d65 3a20  verity..- name: 
│ │ │ -000fdc40: 4368 6563 6b20 6966 2069 6f6d 6d75 2061  Check if iommu a
│ │ │ -000fdc50: 7267 756d 656e 7420 6973 2061 6c72 6561  rgument is alrea
│ │ │ -000fdc60: 6479 2070 7265 7365 6e74 0a20 2061 6e73  dy present.  ans
│ │ │ -000fdc70: 6962 6c65 2e62 7569 6c74 696e 2e63 6f6d  ible.builtin.com
│ │ │ -000fdc80: 6d61 6e64 3a20 2f73 6269 6e2f 6772 7562  mand: /sbin/grub
│ │ │ -000fdc90: 6279 202d 2d69 6e66 6f3d 414c 4c0a 2020  by --info=ALL.  
│ │ │ -000fdca0: 7265 6769 7374 6572 3a20 6772 7562 6279  register: grubby
│ │ │ -000fdcb0: 5f69 6e66 6f0a 2020 6368 6563 6b5f 6d6f  _info.  check_mo
│ │ │ -000fdcc0: 6465 3a20 6661 6c73 650a 2020 6368 616e  de: false.  chan
│ │ │ -000fdcd0: 6765 645f 7768 656e 3a20 6661 6c73 650a  ged_when: false.
│ │ │ -000fdce0: 2020 6661 696c 6564 5f77 6865 6e3a 2066    failed_when: f
│ │ │ -000fdcf0: 616c 7365 0a20 2077 6865 6e3a 2028 2022  alse.  when: ( "
│ │ │ -000fdd00: 6772 7562 322d 636f 6d6d 6f6e 2220 696e  grub2-common" in
│ │ │ -000fdd10: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -000fdd20: 6163 6b61 6765 7320 616e 6420 226b 6572  ackages and "ker
│ │ │ -000fdd30: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ -000fdd40: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ -000fdd50: 2020 2029 0a20 2074 6167 733a 0a20 202d     ).  tags:.  -
│ │ │ -000fdd60: 2067 7275 6232 5f65 6e61 626c 655f 696f   grub2_enable_io
│ │ │ -000fdd70: 6d6d 755f 666f 7263 650a 2020 2d20 6c6f  mmu_force.  - lo
│ │ │ -000fdd80: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ -000fdd90: 206d 6564 6975 6d5f 636f 6d70 6c65 7869   medium_complexi
│ │ │ -000fdda0: 7479 0a20 202d 2072 6562 6f6f 745f 7265  ty.  - reboot_re
│ │ │ -000fddb0: 7175 6972 6564 0a20 202d 2072 6573 7472  quired.  - restr
│ │ │ -000fddc0: 6963 745f 7374 7261 7465 6779 0a20 202d  ict_strategy.  -
│ │ │ -000fddd0: 2075 6e6b 6e6f 776e 5f73 6576 6572 6974   unknown_severit
│ │ │ -000fdde0: 790a 0a2d 206e 616d 653a 2055 7064 6174  y..- name: Updat
│ │ │ -000fddf0: 6520 6772 7562 2064 6566 6175 6c74 7320  e grub defaults 
│ │ │ -000fde00: 616e 6420 7468 6520 626f 6f74 6c6f 6164  and the bootload
│ │ │ -000fde10: 6572 206d 656e 750a 2020 616e 7369 626c  er menu.  ansibl
│ │ │ -000fde20: 652e 6275 696c 7469 6e2e 636f 6d6d 616e  e.builtin.comman
│ │ │ -000fde30: 643a 202f 7362 696e 2f67 7275 6262 7920  d: /sbin/grubby 
│ │ │ -000fde40: 2d2d 7570 6461 7465 2d6b 6572 6e65 6c3d  --update-kernel=
│ │ │ -000fde50: 414c 4c20 2d2d 6172 6773 3d22 696f 6d6d  ALL --args="iomm
│ │ │ -000fde60: 753d 666f 7263 6522 0a20 2077 6865 6e3a  u=force".  when:
│ │ │ -000fde70: 0a20 202d 2028 2022 6772 7562 322d 636f  .  - ( "grub2-co
│ │ │ -000fde80: 6d6d 6f6e 2220 696e 2061 6e73 6962 6c65  mmon" in ansible
│ │ │ -000fde90: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ -000fdea0: 616e 6420 226b 6572 6e65 6c22 2069 6e20  and "kernel" in 
│ │ │ -000fdeb0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -000fdec0: 636b 6167 6573 0a20 2020 2029 0a20 202d  ckages.    ).  -
│ │ │ -000fded0: 2028 6772 7562 6279 5f69 6e66 6f2e 7374   (grubby_info.st
│ │ │ -000fdee0: 646f 7574 2069 7320 6e6f 7420 7365 6172  dout is not sear
│ │ │ -000fdef0: 6368 2827 696f 6d6d 753d 666f 7263 6527  ch('iommu=force'
│ │ │ -000fdf00: 2929 206f 7220 2828 6574 635f 6465 6661  )) or ((etc_defa
│ │ │ -000fdf10: 756c 745f 6772 7562 5b27 636f 6e74 656e  ult_grub['conten
│ │ │ -000fdf20: 7427 5d0a 2020 2020 7c20 6236 3464 6563  t'].    | b64dec
│ │ │ -000fdf30: 6f64 6529 2069 7320 6e6f 7420 7365 6172  ode) is not sear
│ │ │ -000fdf40: 6368 2827 696f 6d6d 753d 666f 7263 6527  ch('iommu=force'
│ │ │ -000fdf50: 2929 0a20 2074 6167 733a 0a20 202d 2067  )).  tags:.  - g
│ │ │ -000fdf60: 7275 6232 5f65 6e61 626c 655f 696f 6d6d  rub2_enable_iomm
│ │ │ -000fdf70: 755f 666f 7263 650a 2020 2d20 6c6f 775f  u_force.  - low_
│ │ │ -000fdf80: 6469 7372 7570 7469 6f6e 0a20 202d 206d  disruption.  - m
│ │ │ -000fdf90: 6564 6975 6d5f 636f 6d70 6c65 7869 7479  edium_complexity
│ │ │ -000fdfa0: 0a20 202d 2072 6562 6f6f 745f 7265 7175  .  - reboot_requ
│ │ │ -000fdfb0: 6972 6564 0a20 202d 2072 6573 7472 6963  ired.  - restric
│ │ │ -000fdfc0: 745f 7374 7261 7465 6779 0a20 202d 2075  t_strategy.  - u
│ │ │ -000fdfd0: 6e6b 6e6f 776e 5f73 6576 6572 6974 790a  nknown_severity.
│ │ │ +000fd740: 3e52 656d 6564 6961 7469 6f6e 2041 6e73  >Remediation Ans
│ │ │ +000fd750: 6962 6c65 2073 6e69 7070 6574 20e2 87b2  ible snippet ...
│ │ │ +000fd760: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61  
Com │ │ │ -000fd930: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:medium
Disrupt │ │ │ -000fd960: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -000fd970: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strategy │ │ │ -000fd9b0: 3a3c 2f74 683e 3c74 643e 7265 7374 7269 :restri │ │ │ -000fd9c0: 6374 3c2f 7464 3e3c 2f74 723e 3c2f 7461 ct
Complexity:low< │ │ │ +000fd830: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr> │ │ │ +000fd850: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472
medium
Di │ │ │ +000fd810: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:
Reboot:true
Str │ │ │ +000fd860: 6174 6567 793a 3c2f 7468 3e3c 7464 3e72 ategy:r │ │ │ +000fd870: 6573 7472 6963 743c 2f74 643e 3c2f 7472 estrict
- name: Gath
│ │ │ +000fd8a0: 6572 2074 6865 2070 6163 6b61 6765 2066  er the package f
│ │ │ +000fd8b0: 6163 7473 0a20 2070 6163 6b61 6765 5f66  acts.  package_f
│ │ │ +000fd8c0: 6163 7473 3a0a 2020 2020 6d61 6e61 6765  acts:.    manage
│ │ │ +000fd8d0: 723a 2061 7574 6f0a 2020 7461 6773 3a0a  r: auto.  tags:.
│ │ │ +000fd8e0: 2020 2d20 6772 7562 325f 656e 6162 6c65    - grub2_enable
│ │ │ +000fd8f0: 5f69 6f6d 6d75 5f66 6f72 6365 0a20 202d  _iommu_force.  -
│ │ │ +000fd900: 206c 6f77 5f64 6973 7275 7074 696f 6e0a   low_disruption.
│ │ │ +000fd910: 2020 2d20 6d65 6469 756d 5f63 6f6d 706c    - medium_compl
│ │ │ +000fd920: 6578 6974 790a 2020 2d20 7265 626f 6f74  exity.  - reboot
│ │ │ +000fd930: 5f72 6571 7569 7265 640a 2020 2d20 7265  _required.  - re
│ │ │ +000fd940: 7374 7269 6374 5f73 7472 6174 6567 790a  strict_strategy.
│ │ │ +000fd950: 2020 2d20 756e 6b6e 6f77 6e5f 7365 7665    - unknown_seve
│ │ │ +000fd960: 7269 7479 0a0a 2d20 6e61 6d65 3a20 4368  rity..- name: Ch
│ │ │ +000fd970: 6563 6b20 6966 2069 6f6d 6d75 2061 7267  eck if iommu arg
│ │ │ +000fd980: 756d 656e 7420 6973 2061 6c72 6561 6479  ument is already
│ │ │ +000fd990: 2070 7265 7365 6e74 2069 6e20 2f65 7463   present in /etc
│ │ │ +000fd9a0: 2f64 6566 6175 6c74 2f67 7275 620a 2020  /default/grub.  
│ │ │ +000fd9b0: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ +000fd9c0: 736c 7572 703a 0a20 2020 2073 7263 3a20  slurp:.    src: 
│ │ │ +000fd9d0: 2f65 7463 2f64 6566 6175 6c74 2f67 7275  /etc/default/gru
│ │ │ +000fd9e0: 620a 2020 7265 6769 7374 6572 3a20 6574  b.  register: et
│ │ │ +000fd9f0: 635f 6465 6661 756c 745f 6772 7562 0a20  c_default_grub. 
│ │ │ +000fda00: 2077 6865 6e3a 2028 2022 6772 7562 322d   when: ( "grub2-
│ │ │ +000fda10: 636f 6d6d 6f6e 2220 696e 2061 6e73 6962  common" in ansib
│ │ │ +000fda20: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +000fda30: 7320 616e 6420 226b 6572 6e65 6c22 2069  s and "kernel" i
│ │ │ +000fda40: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +000fda50: 7061 636b 6167 6573 0a20 2020 2029 0a20  packages.    ). 
│ │ │ +000fda60: 2074 6167 733a 0a20 202d 2067 7275 6232   tags:.  - grub2
│ │ │ +000fda70: 5f65 6e61 626c 655f 696f 6d6d 755f 666f  _enable_iommu_fo
│ │ │ +000fda80: 7263 650a 2020 2d20 6c6f 775f 6469 7372  rce.  - low_disr
│ │ │ +000fda90: 7570 7469 6f6e 0a20 202d 206d 6564 6975  uption.  - mediu
│ │ │ +000fdaa0: 6d5f 636f 6d70 6c65 7869 7479 0a20 202d  m_complexity.  -
│ │ │ +000fdab0: 2072 6562 6f6f 745f 7265 7175 6972 6564   reboot_required
│ │ │ +000fdac0: 0a20 202d 2072 6573 7472 6963 745f 7374  .  - restrict_st
│ │ │ +000fdad0: 7261 7465 6779 0a20 202d 2075 6e6b 6e6f  rategy.  - unkno
│ │ │ +000fdae0: 776e 5f73 6576 6572 6974 790a 0a2d 206e  wn_severity..- n
│ │ │ +000fdaf0: 616d 653a 2043 6865 636b 2069 6620 696f  ame: Check if io
│ │ │ +000fdb00: 6d6d 7520 6172 6775 6d65 6e74 2069 7320  mmu argument is 
│ │ │ +000fdb10: 616c 7265 6164 7920 7072 6573 656e 740a  already present.
│ │ │ +000fdb20: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ +000fdb30: 6e2e 636f 6d6d 616e 643a 202f 7362 696e  n.command: /sbin
│ │ │ +000fdb40: 2f67 7275 6262 7920 2d2d 696e 666f 3d41  /grubby --info=A
│ │ │ +000fdb50: 4c4c 0a20 2072 6567 6973 7465 723a 2067  LL.  register: g
│ │ │ +000fdb60: 7275 6262 795f 696e 666f 0a20 2063 6865  rubby_info.  che
│ │ │ +000fdb70: 636b 5f6d 6f64 653a 2066 616c 7365 0a20  ck_mode: false. 
│ │ │ +000fdb80: 2063 6861 6e67 6564 5f77 6865 6e3a 2066   changed_when: f
│ │ │ +000fdb90: 616c 7365 0a20 2066 6169 6c65 645f 7768  alse.  failed_wh
│ │ │ +000fdba0: 656e 3a20 6661 6c73 650a 2020 7768 656e  en: false.  when
│ │ │ +000fdbb0: 3a20 2820 2267 7275 6232 2d63 6f6d 6d6f  : ( "grub2-commo
│ │ │ +000fdbc0: 6e22 2069 6e20 616e 7369 626c 655f 6661  n" in ansible_fa
│ │ │ +000fdbd0: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ +000fdbe0: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ +000fdbf0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +000fdc00: 6765 730a 2020 2020 290a 2020 7461 6773  ges.    ).  tags
│ │ │ +000fdc10: 3a0a 2020 2d20 6772 7562 325f 656e 6162  :.  - grub2_enab
│ │ │ +000fdc20: 6c65 5f69 6f6d 6d75 5f66 6f72 6365 0a20  le_iommu_force. 
│ │ │ +000fdc30: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ +000fdc40: 6e0a 2020 2d20 6d65 6469 756d 5f63 6f6d  n.  - medium_com
│ │ │ +000fdc50: 706c 6578 6974 790a 2020 2d20 7265 626f  plexity.  - rebo
│ │ │ +000fdc60: 6f74 5f72 6571 7569 7265 640a 2020 2d20  ot_required.  - 
│ │ │ +000fdc70: 7265 7374 7269 6374 5f73 7472 6174 6567  restrict_strateg
│ │ │ +000fdc80: 790a 2020 2d20 756e 6b6e 6f77 6e5f 7365  y.  - unknown_se
│ │ │ +000fdc90: 7665 7269 7479 0a0a 2d20 6e61 6d65 3a20  verity..- name: 
│ │ │ +000fdca0: 5570 6461 7465 2067 7275 6220 6465 6661  Update grub defa
│ │ │ +000fdcb0: 756c 7473 2061 6e64 2074 6865 2062 6f6f  ults and the boo
│ │ │ +000fdcc0: 746c 6f61 6465 7220 6d65 6e75 0a20 2061  tloader menu.  a
│ │ │ +000fdcd0: 6e73 6962 6c65 2e62 7569 6c74 696e 2e63  nsible.builtin.c
│ │ │ +000fdce0: 6f6d 6d61 6e64 3a20 2f73 6269 6e2f 6772  ommand: /sbin/gr
│ │ │ +000fdcf0: 7562 6279 202d 2d75 7064 6174 652d 6b65  ubby --update-ke
│ │ │ +000fdd00: 726e 656c 3d41 4c4c 202d 2d61 7267 733d  rnel=ALL --args=
│ │ │ +000fdd10: 2269 6f6d 6d75 3d66 6f72 6365 220a 2020  "iommu=force".  
│ │ │ +000fdd20: 7768 656e 3a0a 2020 2d20 2820 2267 7275  when:.  - ( "gru
│ │ │ +000fdd30: 6232 2d63 6f6d 6d6f 6e22 2069 6e20 616e  b2-common" in an
│ │ │ +000fdd40: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +000fdd50: 6167 6573 2061 6e64 2022 6b65 726e 656c  ages and "kernel
│ │ │ +000fdd60: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +000fdd70: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ +000fdd80: 290a 2020 2d20 2867 7275 6262 795f 696e  ).  - (grubby_in
│ │ │ +000fdd90: 666f 2e73 7464 6f75 7420 6973 206e 6f74  fo.stdout is not
│ │ │ +000fdda0: 2073 6561 7263 6828 2769 6f6d 6d75 3d66   search('iommu=f
│ │ │ +000fddb0: 6f72 6365 2729 2920 6f72 2028 2865 7463  orce')) or ((etc
│ │ │ +000fddc0: 5f64 6566 6175 6c74 5f67 7275 625b 2763  _default_grub['c
│ │ │ +000fddd0: 6f6e 7465 6e74 275d 0a20 2020 207c 2062  ontent'].    | b
│ │ │ +000fdde0: 3634 6465 636f 6465 2920 6973 206e 6f74  64decode) is not
│ │ │ +000fddf0: 2073 6561 7263 6828 2769 6f6d 6d75 3d66   search('iommu=f
│ │ │ +000fde00: 6f72 6365 2729 290a 2020 7461 6773 3a0a  orce')).  tags:.
│ │ │ +000fde10: 2020 2d20 6772 7562 325f 656e 6162 6c65    - grub2_enable
│ │ │ +000fde20: 5f69 6f6d 6d75 5f66 6f72 6365 0a20 202d  _iommu_force.  -
│ │ │ +000fde30: 206c 6f77 5f64 6973 7275 7074 696f 6e0a   low_disruption.
│ │ │ +000fde40: 2020 2d20 6d65 6469 756d 5f63 6f6d 706c    - medium_compl
│ │ │ +000fde50: 6578 6974 790a 2020 2d20 7265 626f 6f74  exity.  - reboot
│ │ │ +000fde60: 5f72 6571 7569 7265 640a 2020 2d20 7265  _required.  - re
│ │ │ +000fde70: 7374 7269 6374 5f73 7472 6174 6567 790a  strict_strategy.
│ │ │ +000fde80: 2020 2d20 756e 6b6e 6f77 6e5f 7365 7665    - unknown_seve
│ │ │ +000fde90: 7269 7479 0a3c 2f63 6f64 653e 3c2f 7072  rity.
Remediation │ │ │ +000fdf50: 204f 5342 7569 6c64 2042 6c75 6570 7269 OSBuild Bluepri │ │ │ +000fdf60: 6e74 2073 6e69 7070 6574 20e2 87b2 3c2f nt snippet ...
[customizations
│ │ │ +000fdfc0: 2e6b 6572 6e65 6c5d 0a61 7070 656e 6420  .kernel].append 
│ │ │ +000fdfd0: 3d20 2269 6f6d 6d75 3d66 6f72 6365 220a  = "iommu=force".
│ │ │  000fdfe0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
Reme │ │ │ -000ff080: 6469 6174 696f 6e20 4f53 4275 696c 6420 diation OSBuild │ │ │ -000ff090: 426c 7565 7072 696e 7420 736e 6970 7065 Blueprint snippe │ │ │ -000ff0a0: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
[customi │ │ │ -000ff0f0: 7a61 7469 6f6e 732e 6b65 726e 656c 5d0a zations.kernel]. │ │ │ -000ff100: 6170 7065 6e64 203d 2022 6c31 7466 3d3c append = "l1tf=< │ │ │ -000ff110: 6162 6272 2074 6974 6c65 3d22 6672 6f6d abbr title="from │ │ │ -000ff120: 2050 726f 6669 6c65 2f72 6566 696e 652d Profile/refine- │ │ │ -000ff130: 7661 6c75 653a 2078 6363 6466 5f6f 7267 value: xccdf_org │ │ │ -000ff140: 2e73 7367 7072 6f6a 6563 742e 636f 6e74 .ssgproject.cont │ │ │ -000ff150: 656e 745f 7661 6c75 655f 7661 725f 6c31 ent_value_var_l1 │ │ │ -000ff160: 7466 5f6f 7074 696f 6e73 223e 6675 6c6c tf_options">full │ │ │ -000ff170: 2c66 6f72 6365 3c2f 6162 6272 3e22 0a3c ,force".< │ │ │ -000ff180: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469 /code>R │ │ │ -000ff230: 656d 6564 6961 7469 6f6e 2041 6e73 6962 emediation Ansib │ │ │ -000ff240: 6c65 2073 6e69 7070 6574 20e2 87b2 3c2f le snippet ...
│ │ │ -000ff2e0: 3c74 643e 6d65 6469 756d 3c2f 7464 3e3c < │ │ │ -000ff2f0: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -000ff370: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
- name: Gather
│ │ │ -000ff390: 2074 6865 2070 6163 6b61 6765 2066 6163   the package fac
│ │ │ -000ff3a0: 7473 0a20 2070 6163 6b61 6765 5f66 6163  ts.  package_fac
│ │ │ -000ff3b0: 7473 3a0a 2020 2020 6d61 6e61 6765 723a  ts:.    manager:
│ │ │ -000ff3c0: 2061 7574 6f0a 2020 7461 6773 3a0a 2020   auto.  tags:.  
│ │ │ -000ff3d0: 2d20 6772 7562 325f 6c31 7466 5f61 7267  - grub2_l1tf_arg
│ │ │ -000ff3e0: 756d 656e 740a 2020 2d20 6869 6768 5f73  ument.  - high_s
│ │ │ -000ff3f0: 6576 6572 6974 790a 2020 2d20 6c6f 775f  everity.  - low_
│ │ │ -000ff400: 6469 7372 7570 7469 6f6e 0a20 202d 206d  disruption.  - m
│ │ │ -000ff410: 6564 6975 6d5f 636f 6d70 6c65 7869 7479  edium_complexity
│ │ │ -000ff420: 0a20 202d 2072 6562 6f6f 745f 7265 7175  .  - reboot_requ
│ │ │ -000ff430: 6972 6564 0a20 202d 2072 6573 7472 6963  ired.  - restric
│ │ │ -000ff440: 745f 7374 7261 7465 6779 0a2d 206e 616d  t_strategy.- nam
│ │ │ -000ff450: 653a 2058 4343 4446 2056 616c 7565 2076  e: XCCDF Value v
│ │ │ -000ff460: 6172 5f6c 3174 665f 6f70 7469 6f6e 7320  ar_l1tf_options 
│ │ │ -000ff470: 2320 7072 6f6d 6f74 6520 746f 2076 6172  # promote to var
│ │ │ -000ff480: 6961 626c 650a 2020 7365 745f 6661 6374  iable.  set_fact
│ │ │ -000ff490: 3a0a 2020 2020 7661 725f 6c31 7466 5f6f  :.    var_l1tf_o
│ │ │ -000ff4a0: 7074 696f 6e73 3a20 2121 7374 7220 3c61  ptions: !!str full,
│ │ │ -000ff510: 666f 7263 653c 2f61 6262 723e 0a20 2074  force.  t
│ │ │ -000ff520: 6167 733a 0a20 2020 202d 2061 6c77 6179  ags:.    - alway
│ │ │ -000ff530: 730a 0a2d 206e 616d 653a 2043 6865 636b  s..- name: Check
│ │ │ -000ff540: 2069 6620 6c31 7466 2061 7267 756d 656e   if l1tf argumen
│ │ │ -000ff550: 7420 6973 2061 6c72 6561 6479 2070 7265  t is already pre
│ │ │ -000ff560: 7365 6e74 2069 6e20 2f65 7463 2f64 6566  sent in /etc/def
│ │ │ -000ff570: 6175 6c74 2f67 7275 620a 2020 616e 7369  ault/grub.  ansi
│ │ │ -000ff580: 626c 652e 6275 696c 7469 6e2e 736c 7572  ble.builtin.slur
│ │ │ -000ff590: 703a 0a20 2020 2073 7263 3a20 2f65 7463  p:.    src: /etc
│ │ │ -000ff5a0: 2f64 6566 6175 6c74 2f67 7275 620a 2020  /default/grub.  
│ │ │ -000ff5b0: 7265 6769 7374 6572 3a20 6574 635f 6465  register: etc_de
│ │ │ -000ff5c0: 6661 756c 745f 6772 7562 0a20 2077 6865  fault_grub.  whe
│ │ │ -000ff5d0: 6e3a 2028 2022 6772 7562 322d 636f 6d6d  n: ( "grub2-comm
│ │ │ -000ff5e0: 6f6e 2220 696e 2061 6e73 6962 6c65 5f66  on" in ansible_f
│ │ │ -000ff5f0: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ -000ff600: 6420 226b 6572 6e65 6c22 2069 6e20 616e  d "kernel" in an
│ │ │ -000ff610: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -000ff620: 6167 6573 0a20 2020 2029 0a20 2074 6167  ages.    ).  tag
│ │ │ -000ff630: 733a 0a20 202d 2067 7275 6232 5f6c 3174  s:.  - grub2_l1t
│ │ │ -000ff640: 665f 6172 6775 6d65 6e74 0a20 202d 2068  f_argument.  - h
│ │ │ -000ff650: 6967 685f 7365 7665 7269 7479 0a20 202d  igh_severity.  -
│ │ │ -000ff660: 206c 6f77 5f64 6973 7275 7074 696f 6e0a   low_disruption.
│ │ │ -000ff670: 2020 2d20 6d65 6469 756d 5f63 6f6d 706c    - medium_compl
│ │ │ -000ff680: 6578 6974 790a 2020 2d20 7265 626f 6f74  exity.  - reboot
│ │ │ -000ff690: 5f72 6571 7569 7265 640a 2020 2d20 7265  _required.  - re
│ │ │ -000ff6a0: 7374 7269 6374 5f73 7472 6174 6567 790a  strict_strategy.
│ │ │ -000ff6b0: 0a2d 206e 616d 653a 2043 6865 636b 2069  .- name: Check i
│ │ │ -000ff6c0: 6620 6c31 7466 2061 7267 756d 656e 7420  f l1tf argument 
│ │ │ -000ff6d0: 6973 2061 6c72 6561 6479 2070 7265 7365  is already prese
│ │ │ -000ff6e0: 6e74 0a20 2061 6e73 6962 6c65 2e62 7569  nt.  ansible.bui
│ │ │ -000ff6f0: 6c74 696e 2e63 6f6d 6d61 6e64 3a20 2f73  ltin.command: /s
│ │ │ -000ff700: 6269 6e2f 6772 7562 6279 202d 2d69 6e66  bin/grubby --inf
│ │ │ -000ff710: 6f3d 414c 4c0a 2020 7265 6769 7374 6572  o=ALL.  register
│ │ │ -000ff720: 3a20 6772 7562 6279 5f69 6e66 6f0a 2020  : grubby_info.  
│ │ │ -000ff730: 6368 6563 6b5f 6d6f 6465 3a20 6661 6c73  check_mode: fals
│ │ │ -000ff740: 650a 2020 6368 616e 6765 645f 7768 656e  e.  changed_when
│ │ │ -000ff750: 3a20 6661 6c73 650a 2020 6661 696c 6564  : false.  failed
│ │ │ -000ff760: 5f77 6865 6e3a 2066 616c 7365 0a20 2077  _when: false.  w
│ │ │ -000ff770: 6865 6e3a 2028 2022 6772 7562 322d 636f  hen: ( "grub2-co
│ │ │ -000ff780: 6d6d 6f6e 2220 696e 2061 6e73 6962 6c65  mmon" in ansible
│ │ │ -000ff790: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ -000ff7a0: 616e 6420 226b 6572 6e65 6c22 2069 6e20  and "kernel" in 
│ │ │ -000ff7b0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -000ff7c0: 636b 6167 6573 0a20 2020 2029 0a20 2074  ckages.    ).  t
│ │ │ -000ff7d0: 6167 733a 0a20 202d 2067 7275 6232 5f6c  ags:.  - grub2_l
│ │ │ -000ff7e0: 3174 665f 6172 6775 6d65 6e74 0a20 202d  1tf_argument.  -
│ │ │ -000ff7f0: 2068 6967 685f 7365 7665 7269 7479 0a20   high_severity. 
│ │ │ -000ff800: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ -000ff810: 6e0a 2020 2d20 6d65 6469 756d 5f63 6f6d  n.  - medium_com
│ │ │ -000ff820: 706c 6578 6974 790a 2020 2d20 7265 626f  plexity.  - rebo
│ │ │ -000ff830: 6f74 5f72 6571 7569 7265 640a 2020 2d20  ot_required.  - 
│ │ │ -000ff840: 7265 7374 7269 6374 5f73 7472 6174 6567  restrict_strateg
│ │ │ -000ff850: 790a 0a2d 206e 616d 653a 2055 7064 6174  y..- name: Updat
│ │ │ -000ff860: 6520 6772 7562 2064 6566 6175 6c74 7320  e grub defaults 
│ │ │ -000ff870: 616e 6420 7468 6520 626f 6f74 6c6f 6164  and the bootload
│ │ │ -000ff880: 6572 206d 656e 750a 2020 616e 7369 626c  er menu.  ansibl
│ │ │ -000ff890: 652e 6275 696c 7469 6e2e 636f 6d6d 616e  e.builtin.comman
│ │ │ -000ff8a0: 643a 202f 7362 696e 2f67 7275 6262 7920  d: /sbin/grubby 
│ │ │ -000ff8b0: 2d2d 7570 6461 7465 2d6b 6572 6e65 6c3d  --update-kernel=
│ │ │ -000ff8c0: 414c 4c20 2d2d 6172 6773 3d22 6c31 7466  ALL --args="l1tf
│ │ │ -000ff8d0: 3d7b 7b20 7661 725f 6c31 7466 5f6f 7074  ={{ var_l1tf_opt
│ │ │ -000ff8e0: 696f 6e73 0a20 2020 207d 7d22 0a20 2077  ions.    }}".  w
│ │ │ -000ff8f0: 6865 6e3a 0a20 202d 2028 2022 6772 7562  hen:.  - ( "grub
│ │ │ -000ff900: 322d 636f 6d6d 6f6e 2220 696e 2061 6e73  2-common" in ans
│ │ │ -000ff910: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -000ff920: 6765 7320 616e 6420 226b 6572 6e65 6c22  ges and "kernel"
│ │ │ -000ff930: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -000ff940: 732e 7061 636b 6167 6573 0a20 2020 2029  s.packages.    )
│ │ │ -000ff950: 0a20 202d 2028 6772 7562 6279 5f69 6e66  .  - (grubby_inf
│ │ │ -000ff960: 6f2e 7374 646f 7574 2069 7320 6e6f 7420  o.stdout is not 
│ │ │ -000ff970: 7365 6172 6368 2827 6c31 7466 3d27 207e  search('l1tf=' ~
│ │ │ -000ff980: 2076 6172 5f6c 3174 665f 6f70 7469 6f6e   var_l1tf_option
│ │ │ -000ff990: 7329 2920 6f72 2028 2865 7463 5f64 6566  s)) or ((etc_def
│ │ │ -000ff9a0: 6175 6c74 5f67 7275 625b 2763 6f6e 7465  ault_grub['conte
│ │ │ -000ff9b0: 6e74 275d 0a20 2020 207c 2062 3634 6465  nt'].    | b64de
│ │ │ -000ff9c0: 636f 6465 2920 6973 206e 6f74 2073 6561  code) is not sea
│ │ │ -000ff9d0: 7263 6828 276c 3174 663d 2720 7e20 7661  rch('l1tf=' ~ va
│ │ │ -000ff9e0: 725f 6c31 7466 5f6f 7074 696f 6e73 2929  r_l1tf_options))
│ │ │ -000ff9f0: 0a20 2074 6167 733a 0a20 202d 2067 7275  .  tags:.  - gru
│ │ │ -000ffa00: 6232 5f6c 3174 665f 6172 6775 6d65 6e74  b2_l1tf_argument
│ │ │ -000ffa10: 0a20 202d 2068 6967 685f 7365 7665 7269  .  - high_severi
│ │ │ -000ffa20: 7479 0a20 202d 206c 6f77 5f64 6973 7275  ty.  - low_disru
│ │ │ -000ffa30: 7074 696f 6e0a 2020 2d20 6d65 6469 756d  ption.  - medium
│ │ │ -000ffa40: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ -000ffa50: 7265 626f 6f74 5f72 6571 7569 7265 640a  reboot_required.
│ │ │ -000ffa60: 2020 2d20 7265 7374 7269 6374 5f73 7472    - restrict_str
│ │ │ -000ffa70: 6174 6567 790a 3c2f 636f 6465 3e3c 2f70  ategy.

< │ │ │ +000ff0a0: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
│ │ │ -000ff2d0: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:medium
Disr │ │ │ -000ff300: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -000ff310: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:true
Strat │ │ │ -000ff350: 6567 793a 3c2f 7468 3e3c 7464 3e72 6573 egy:res │ │ │ -000ff360: 7472 6963 743c 2f74 643e 3c2f 7472 3e3c trict
Reboot:true │ │ │ +000ff190: 3c74 723e 3c74 683e 5374 7261 7465 6779
-
│ │ │ +000ff1d0: 206e 616d 653a 2047 6174 6865 7220 7468   name: Gather th
│ │ │ +000ff1e0: 6520 7061 636b 6167 6520 6661 6374 730a  e package facts.
│ │ │ +000ff1f0: 2020 7061 636b 6167 655f 6661 6374 733a    package_facts:
│ │ │ +000ff200: 0a20 2020 206d 616e 6167 6572 3a20 6175  .    manager: au
│ │ │ +000ff210: 746f 0a20 2074 6167 733a 0a20 202d 2067  to.  tags:.  - g
│ │ │ +000ff220: 7275 6232 5f6c 3174 665f 6172 6775 6d65  rub2_l1tf_argume
│ │ │ +000ff230: 6e74 0a20 202d 2068 6967 685f 7365 7665  nt.  - high_seve
│ │ │ +000ff240: 7269 7479 0a20 202d 206c 6f77 5f64 6973  rity.  - low_dis
│ │ │ +000ff250: 7275 7074 696f 6e0a 2020 2d20 6d65 6469  ruption.  - medi
│ │ │ +000ff260: 756d 5f63 6f6d 706c 6578 6974 790a 2020  um_complexity.  
│ │ │ +000ff270: 2d20 7265 626f 6f74 5f72 6571 7569 7265  - reboot_require
│ │ │ +000ff280: 640a 2020 2d20 7265 7374 7269 6374 5f73  d.  - restrict_s
│ │ │ +000ff290: 7472 6174 6567 790a 2d20 6e61 6d65 3a20  trategy.- name: 
│ │ │ +000ff2a0: 5843 4344 4620 5661 6c75 6520 7661 725f  XCCDF Value var_
│ │ │ +000ff2b0: 6c31 7466 5f6f 7074 696f 6e73 2023 2070  l1tf_options # p
│ │ │ +000ff2c0: 726f 6d6f 7465 2074 6f20 7661 7269 6162  romote to variab
│ │ │ +000ff2d0: 6c65 0a20 2073 6574 5f66 6163 743a 0a20  le.  set_fact:. 
│ │ │ +000ff2e0: 2020 2076 6172 5f6c 3174 665f 6f70 7469     var_l1tf_opti
│ │ │ +000ff2f0: 6f6e 733a 2021 2173 7472 203c 6162 6272  ons: !!str full,for
│ │ │ +000ff360: 6365 3c2f 6162 6272 3e0a 2020 7461 6773  ce.  tags
│ │ │ +000ff370: 3a0a 2020 2020 2d20 616c 7761 7973 0a0a  :.    - always..
│ │ │ +000ff380: 2d20 6e61 6d65 3a20 4368 6563 6b20 6966  - name: Check if
│ │ │ +000ff390: 206c 3174 6620 6172 6775 6d65 6e74 2069   l1tf argument i
│ │ │ +000ff3a0: 7320 616c 7265 6164 7920 7072 6573 656e  s already presen
│ │ │ +000ff3b0: 7420 696e 202f 6574 632f 6465 6661 756c  t in /etc/defaul
│ │ │ +000ff3c0: 742f 6772 7562 0a20 2061 6e73 6962 6c65  t/grub.  ansible
│ │ │ +000ff3d0: 2e62 7569 6c74 696e 2e73 6c75 7270 3a0a  .builtin.slurp:.
│ │ │ +000ff3e0: 2020 2020 7372 633a 202f 6574 632f 6465      src: /etc/de
│ │ │ +000ff3f0: 6661 756c 742f 6772 7562 0a20 2072 6567  fault/grub.  reg
│ │ │ +000ff400: 6973 7465 723a 2065 7463 5f64 6566 6175  ister: etc_defau
│ │ │ +000ff410: 6c74 5f67 7275 620a 2020 7768 656e 3a20  lt_grub.  when: 
│ │ │ +000ff420: 2820 2267 7275 6232 2d63 6f6d 6d6f 6e22  ( "grub2-common"
│ │ │ +000ff430: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +000ff440: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ +000ff450: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ +000ff460: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +000ff470: 730a 2020 2020 290a 2020 7461 6773 3a0a  s.    ).  tags:.
│ │ │ +000ff480: 2020 2d20 6772 7562 325f 6c31 7466 5f61    - grub2_l1tf_a
│ │ │ +000ff490: 7267 756d 656e 740a 2020 2d20 6869 6768  rgument.  - high
│ │ │ +000ff4a0: 5f73 6576 6572 6974 790a 2020 2d20 6c6f  _severity.  - lo
│ │ │ +000ff4b0: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ +000ff4c0: 206d 6564 6975 6d5f 636f 6d70 6c65 7869   medium_complexi
│ │ │ +000ff4d0: 7479 0a20 202d 2072 6562 6f6f 745f 7265  ty.  - reboot_re
│ │ │ +000ff4e0: 7175 6972 6564 0a20 202d 2072 6573 7472  quired.  - restr
│ │ │ +000ff4f0: 6963 745f 7374 7261 7465 6779 0a0a 2d20  ict_strategy..- 
│ │ │ +000ff500: 6e61 6d65 3a20 4368 6563 6b20 6966 206c  name: Check if l
│ │ │ +000ff510: 3174 6620 6172 6775 6d65 6e74 2069 7320  1tf argument is 
│ │ │ +000ff520: 616c 7265 6164 7920 7072 6573 656e 740a  already present.
│ │ │ +000ff530: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ +000ff540: 6e2e 636f 6d6d 616e 643a 202f 7362 696e  n.command: /sbin
│ │ │ +000ff550: 2f67 7275 6262 7920 2d2d 696e 666f 3d41  /grubby --info=A
│ │ │ +000ff560: 4c4c 0a20 2072 6567 6973 7465 723a 2067  LL.  register: g
│ │ │ +000ff570: 7275 6262 795f 696e 666f 0a20 2063 6865  rubby_info.  che
│ │ │ +000ff580: 636b 5f6d 6f64 653a 2066 616c 7365 0a20  ck_mode: false. 
│ │ │ +000ff590: 2063 6861 6e67 6564 5f77 6865 6e3a 2066   changed_when: f
│ │ │ +000ff5a0: 616c 7365 0a20 2066 6169 6c65 645f 7768  alse.  failed_wh
│ │ │ +000ff5b0: 656e 3a20 6661 6c73 650a 2020 7768 656e  en: false.  when
│ │ │ +000ff5c0: 3a20 2820 2267 7275 6232 2d63 6f6d 6d6f  : ( "grub2-commo
│ │ │ +000ff5d0: 6e22 2069 6e20 616e 7369 626c 655f 6661  n" in ansible_fa
│ │ │ +000ff5e0: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ +000ff5f0: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ +000ff600: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +000ff610: 6765 730a 2020 2020 290a 2020 7461 6773  ges.    ).  tags
│ │ │ +000ff620: 3a0a 2020 2d20 6772 7562 325f 6c31 7466  :.  - grub2_l1tf
│ │ │ +000ff630: 5f61 7267 756d 656e 740a 2020 2d20 6869  _argument.  - hi
│ │ │ +000ff640: 6768 5f73 6576 6572 6974 790a 2020 2d20  gh_severity.  - 
│ │ │ +000ff650: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ +000ff660: 202d 206d 6564 6975 6d5f 636f 6d70 6c65   - medium_comple
│ │ │ +000ff670: 7869 7479 0a20 202d 2072 6562 6f6f 745f  xity.  - reboot_
│ │ │ +000ff680: 7265 7175 6972 6564 0a20 202d 2072 6573  required.  - res
│ │ │ +000ff690: 7472 6963 745f 7374 7261 7465 6779 0a0a  trict_strategy..
│ │ │ +000ff6a0: 2d20 6e61 6d65 3a20 5570 6461 7465 2067  - name: Update g
│ │ │ +000ff6b0: 7275 6220 6465 6661 756c 7473 2061 6e64  rub defaults and
│ │ │ +000ff6c0: 2074 6865 2062 6f6f 746c 6f61 6465 7220   the bootloader 
│ │ │ +000ff6d0: 6d65 6e75 0a20 2061 6e73 6962 6c65 2e62  menu.  ansible.b
│ │ │ +000ff6e0: 7569 6c74 696e 2e63 6f6d 6d61 6e64 3a20  uiltin.command: 
│ │ │ +000ff6f0: 2f73 6269 6e2f 6772 7562 6279 202d 2d75  /sbin/grubby --u
│ │ │ +000ff700: 7064 6174 652d 6b65 726e 656c 3d41 4c4c  pdate-kernel=ALL
│ │ │ +000ff710: 202d 2d61 7267 733d 226c 3174 663d 7b7b   --args="l1tf={{
│ │ │ +000ff720: 2076 6172 5f6c 3174 665f 6f70 7469 6f6e   var_l1tf_option
│ │ │ +000ff730: 730a 2020 2020 7d7d 220a 2020 7768 656e  s.    }}".  when
│ │ │ +000ff740: 3a0a 2020 2d20 2820 2267 7275 6232 2d63  :.  - ( "grub2-c
│ │ │ +000ff750: 6f6d 6d6f 6e22 2069 6e20 616e 7369 626c  ommon" in ansibl
│ │ │ +000ff760: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +000ff770: 2061 6e64 2022 6b65 726e 656c 2220 696e   and "kernel" in
│ │ │ +000ff780: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +000ff790: 6163 6b61 6765 730a 2020 2020 290a 2020  ackages.    ).  
│ │ │ +000ff7a0: 2d20 2867 7275 6262 795f 696e 666f 2e73  - (grubby_info.s
│ │ │ +000ff7b0: 7464 6f75 7420 6973 206e 6f74 2073 6561  tdout is not sea
│ │ │ +000ff7c0: 7263 6828 276c 3174 663d 2720 7e20 7661  rch('l1tf=' ~ va
│ │ │ +000ff7d0: 725f 6c31 7466 5f6f 7074 696f 6e73 2929  r_l1tf_options))
│ │ │ +000ff7e0: 206f 7220 2828 6574 635f 6465 6661 756c   or ((etc_defaul
│ │ │ +000ff7f0: 745f 6772 7562 5b27 636f 6e74 656e 7427  t_grub['content'
│ │ │ +000ff800: 5d0a 2020 2020 7c20 6236 3464 6563 6f64  ].    | b64decod
│ │ │ +000ff810: 6529 2069 7320 6e6f 7420 7365 6172 6368  e) is not search
│ │ │ +000ff820: 2827 6c31 7466 3d27 207e 2076 6172 5f6c  ('l1tf=' ~ var_l
│ │ │ +000ff830: 3174 665f 6f70 7469 6f6e 7329 290a 2020  1tf_options)).  
│ │ │ +000ff840: 7461 6773 3a0a 2020 2d20 6772 7562 325f  tags:.  - grub2_
│ │ │ +000ff850: 6c31 7466 5f61 7267 756d 656e 740a 2020  l1tf_argument.  
│ │ │ +000ff860: 2d20 6869 6768 5f73 6576 6572 6974 790a  - high_severity.
│ │ │ +000ff870: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ +000ff880: 6f6e 0a20 202d 206d 6564 6975 6d5f 636f  on.  - medium_co
│ │ │ +000ff890: 6d70 6c65 7869 7479 0a20 202d 2072 6562  mplexity.  - reb
│ │ │ +000ff8a0: 6f6f 745f 7265 7175 6972 6564 0a20 202d  oot_required.  -
│ │ │ +000ff8b0: 2072 6573 7472 6963 745f 7374 7261 7465   restrict_strate
│ │ │ +000ff8c0: 6779 0a3c 2f63 6f64 653e 3c2f 7072 653e  gy.
│ │ │ +000ff8d0: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22 Remediation O │ │ │ +000ff980: 5342 7569 6c64 2042 6c75 6570 7269 6e74 SBuild Blueprint │ │ │ +000ff990: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ +000ff9a0: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
[
│ │ │ +000ff9e0: 6375 7374 6f6d 697a 6174 696f 6e73 2e6b  customizations.k
│ │ │ +000ff9f0: 6572 6e65 6c5d 0a61 7070 656e 6420 3d20  ernel].append = 
│ │ │ +000ffa00: 226c 3174 663d 3c61 6262 7220 7469 746c  "l1tf=full,force".

Reme │ │ │ -001008f0: 6469 6174 696f 6e20 4f53 4275 696c 6420 diation OSBuild │ │ │ -00100900: 426c 7565 7072 696e 7420 736e 6970 7065 Blueprint snippe │ │ │ -00100910: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
[customi │ │ │ -00100960: 7a61 7469 6f6e 732e 6b65 726e 656c 5d0a zations.kernel]. │ │ │ -00100970: 6170 7065 6e64 203d 2022 6d63 653d 3022 append = "mce=0" │ │ │ -00100980: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f .Remediation Ans │ │ │ -00100a40: 6962 6c65 2073 6e69 7070 6574 20e2 87b2 ible snippet ... │ │ │ -00100a50: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Com │ │ │ +000ff120: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:medium
Disrupt │ │ │ +000ff150: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +000ff160: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strategy │ │ │ +000ff1a0: 3a3c 2f74 683e 3c74 643e 7265 7374 7269 :restri │ │ │ +000ff1b0: 6374 3c2f 7464 3e3c 2f74 723e 3c2f 7461 ct
Complexity:low< │ │ │ -00100b20: 7472 3e3c 7468 3e52 6562 6f6f 743a 3c2f tr> │ │ │ -00100b40: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472
medium
Di │ │ │ -00100b00: 7372 7570 7469 6f6e 3a3c 2f74 683e 3c74 sruption:
Reboot:true
Str │ │ │ -00100b50: 6174 6567 793a 3c2f 7468 3e3c 7464 3e72 ategy:r │ │ │ -00100b60: 6573 7472 6963 743c 2f74 643e 3c2f 7472 estrict
- name: Gath
│ │ │ -00100b90: 6572 2074 6865 2070 6163 6b61 6765 2066  er the package f
│ │ │ -00100ba0: 6163 7473 0a20 2070 6163 6b61 6765 5f66  acts.  package_f
│ │ │ -00100bb0: 6163 7473 3a0a 2020 2020 6d61 6e61 6765  acts:.    manage
│ │ │ -00100bc0: 723a 2061 7574 6f0a 2020 7461 6773 3a0a  r: auto.  tags:.
│ │ │ -00100bd0: 2020 2d20 6772 7562 325f 6d63 655f 6172    - grub2_mce_ar
│ │ │ -00100be0: 6775 6d65 6e74 0a20 202d 206c 6f77 5f64  gument.  - low_d
│ │ │ -00100bf0: 6973 7275 7074 696f 6e0a 2020 2d20 6d65  isruption.  - me
│ │ │ -00100c00: 6469 756d 5f63 6f6d 706c 6578 6974 790a  dium_complexity.
│ │ │ -00100c10: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ -00100c20: 6974 790a 2020 2d20 7265 626f 6f74 5f72  ity.  - reboot_r
│ │ │ -00100c30: 6571 7569 7265 640a 2020 2d20 7265 7374  equired.  - rest
│ │ │ -00100c40: 7269 6374 5f73 7472 6174 6567 790a 0a2d  rict_strategy..-
│ │ │ -00100c50: 206e 616d 653a 2043 6865 636b 2069 6620   name: Check if 
│ │ │ -00100c60: 6d63 6520 6172 6775 6d65 6e74 2069 7320  mce argument is 
│ │ │ -00100c70: 616c 7265 6164 7920 7072 6573 656e 7420  already present 
│ │ │ -00100c80: 696e 202f 6574 632f 6465 6661 756c 742f  in /etc/default/
│ │ │ -00100c90: 6772 7562 0a20 2061 6e73 6962 6c65 2e62  grub.  ansible.b
│ │ │ -00100ca0: 7569 6c74 696e 2e73 6c75 7270 3a0a 2020  uiltin.slurp:.  
│ │ │ -00100cb0: 2020 7372 633a 202f 6574 632f 6465 6661    src: /etc/defa
│ │ │ -00100cc0: 756c 742f 6772 7562 0a20 2072 6567 6973  ult/grub.  regis
│ │ │ -00100cd0: 7465 723a 2065 7463 5f64 6566 6175 6c74  ter: etc_default
│ │ │ -00100ce0: 5f67 7275 620a 2020 7768 656e 3a20 2820  _grub.  when: ( 
│ │ │ -00100cf0: 2267 7275 6232 2d63 6f6d 6d6f 6e22 2069  "grub2-common" i
│ │ │ -00100d00: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -00100d10: 7061 636b 6167 6573 2061 6e64 2022 6b65  packages and "ke
│ │ │ -00100d20: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ -00100d30: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ -00100d40: 2020 2020 290a 2020 7461 6773 3a0a 2020      ).  tags:.  
│ │ │ -00100d50: 2d20 6772 7562 325f 6d63 655f 6172 6775  - grub2_mce_argu
│ │ │ -00100d60: 6d65 6e74 0a20 202d 206c 6f77 5f64 6973  ment.  - low_dis
│ │ │ -00100d70: 7275 7074 696f 6e0a 2020 2d20 6d65 6469  ruption.  - medi
│ │ │ -00100d80: 756d 5f63 6f6d 706c 6578 6974 790a 2020  um_complexity.  
│ │ │ -00100d90: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ -00100da0: 790a 2020 2d20 7265 626f 6f74 5f72 6571  y.  - reboot_req
│ │ │ -00100db0: 7569 7265 640a 2020 2d20 7265 7374 7269  uired.  - restri
│ │ │ -00100dc0: 6374 5f73 7472 6174 6567 790a 0a2d 206e  ct_strategy..- n
│ │ │ -00100dd0: 616d 653a 2043 6865 636b 2069 6620 6d63  ame: Check if mc
│ │ │ -00100de0: 6520 6172 6775 6d65 6e74 2069 7320 616c  e argument is al
│ │ │ -00100df0: 7265 6164 7920 7072 6573 656e 740a 2020  ready present.  
│ │ │ -00100e00: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ -00100e10: 636f 6d6d 616e 643a 202f 7362 696e 2f67  command: /sbin/g
│ │ │ -00100e20: 7275 6262 7920 2d2d 696e 666f 3d41 4c4c  rubby --info=ALL
│ │ │ -00100e30: 0a20 2072 6567 6973 7465 723a 2067 7275  .  register: gru
│ │ │ -00100e40: 6262 795f 696e 666f 0a20 2063 6865 636b  bby_info.  check
│ │ │ -00100e50: 5f6d 6f64 653a 2066 616c 7365 0a20 2063  _mode: false.  c
│ │ │ -00100e60: 6861 6e67 6564 5f77 6865 6e3a 2066 616c  hanged_when: fal
│ │ │ -00100e70: 7365 0a20 2066 6169 6c65 645f 7768 656e  se.  failed_when
│ │ │ -00100e80: 3a20 6661 6c73 650a 2020 7768 656e 3a20  : false.  when: 
│ │ │ -00100e90: 2820 2267 7275 6232 2d63 6f6d 6d6f 6e22  ( "grub2-common"
│ │ │ -00100ea0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -00100eb0: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ -00100ec0: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ -00100ed0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -00100ee0: 730a 2020 2020 290a 2020 7461 6773 3a0a  s.    ).  tags:.
│ │ │ -00100ef0: 2020 2d20 6772 7562 325f 6d63 655f 6172    - grub2_mce_ar
│ │ │ -00100f00: 6775 6d65 6e74 0a20 202d 206c 6f77 5f64  gument.  - low_d
│ │ │ -00100f10: 6973 7275 7074 696f 6e0a 2020 2d20 6d65  isruption.  - me
│ │ │ -00100f20: 6469 756d 5f63 6f6d 706c 6578 6974 790a  dium_complexity.
│ │ │ -00100f30: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ -00100f40: 6974 790a 2020 2d20 7265 626f 6f74 5f72  ity.  - reboot_r
│ │ │ -00100f50: 6571 7569 7265 640a 2020 2d20 7265 7374  equired.  - rest
│ │ │ -00100f60: 7269 6374 5f73 7472 6174 6567 790a 0a2d  rict_strategy..-
│ │ │ -00100f70: 206e 616d 653a 2055 7064 6174 6520 6772   name: Update gr
│ │ │ -00100f80: 7562 2064 6566 6175 6c74 7320 616e 6420  ub defaults and 
│ │ │ -00100f90: 7468 6520 626f 6f74 6c6f 6164 6572 206d  the bootloader m
│ │ │ -00100fa0: 656e 750a 2020 616e 7369 626c 652e 6275  enu.  ansible.bu
│ │ │ -00100fb0: 696c 7469 6e2e 636f 6d6d 616e 643a 202f  iltin.command: /
│ │ │ -00100fc0: 7362 696e 2f67 7275 6262 7920 2d2d 7570  sbin/grubby --up
│ │ │ -00100fd0: 6461 7465 2d6b 6572 6e65 6c3d 414c 4c20  date-kernel=ALL 
│ │ │ -00100fe0: 2d2d 6172 6773 3d22 6d63 653d 3022 0a20  --args="mce=0". 
│ │ │ -00100ff0: 2077 6865 6e3a 0a20 202d 2028 2022 6772   when:.  - ( "gr
│ │ │ -00101000: 7562 322d 636f 6d6d 6f6e 2220 696e 2061  ub2-common" in a
│ │ │ -00101010: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -00101020: 6b61 6765 7320 616e 6420 226b 6572 6e65  kages and "kerne
│ │ │ -00101030: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ -00101040: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ -00101050: 2029 0a20 202d 2028 6772 7562 6279 5f69   ).  - (grubby_i
│ │ │ -00101060: 6e66 6f2e 7374 646f 7574 2069 7320 6e6f  nfo.stdout is no
│ │ │ -00101070: 7420 7365 6172 6368 2827 6d63 653d 3027  t search('mce=0'
│ │ │ -00101080: 2929 206f 7220 2828 6574 635f 6465 6661  )) or ((etc_defa
│ │ │ -00101090: 756c 745f 6772 7562 5b27 636f 6e74 656e  ult_grub['conten
│ │ │ -001010a0: 7427 5d20 7c0a 2020 2020 6236 3464 6563  t'] |.    b64dec
│ │ │ -001010b0: 6f64 6529 2069 7320 6e6f 7420 7365 6172  ode) is not sear
│ │ │ -001010c0: 6368 2827 6d63 653d 3027 2929 0a20 2074  ch('mce=0')).  t
│ │ │ -001010d0: 6167 733a 0a20 202d 2067 7275 6232 5f6d  ags:.  - grub2_m
│ │ │ -001010e0: 6365 5f61 7267 756d 656e 740a 2020 2d20  ce_argument.  - 
│ │ │ -001010f0: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ -00101100: 202d 206d 6564 6975 6d5f 636f 6d70 6c65   - medium_comple
│ │ │ -00101110: 7869 7479 0a20 202d 206d 6564 6975 6d5f  xity.  - medium_
│ │ │ -00101120: 7365 7665 7269 7479 0a20 202d 2072 6562  severity.  - reb
│ │ │ -00101130: 6f6f 745f 7265 7175 6972 6564 0a20 202d  oot_required.  -
│ │ │ -00101140: 2072 6573 7472 6963 745f 7374 7261 7465   restrict_strate
│ │ │ -00101150: 6779 0a3c 2f63 6f64 653e 3c2f 7072 653e  gy.
│ │ │ +001008f0: 6469 6174 696f 6e20 416e 7369 626c 6520 diation Ansible │ │ │ +00100900: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ +00100910: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Reboot:true │ │ │ +00100a00: 3c74 723e 3c74 683e 5374 7261 7465 6779
-
│ │ │ +00100a40: 206e 616d 653a 2047 6174 6865 7220 7468   name: Gather th
│ │ │ +00100a50: 6520 7061 636b 6167 6520 6661 6374 730a  e package facts.
│ │ │ +00100a60: 2020 7061 636b 6167 655f 6661 6374 733a    package_facts:
│ │ │ +00100a70: 0a20 2020 206d 616e 6167 6572 3a20 6175  .    manager: au
│ │ │ +00100a80: 746f 0a20 2074 6167 733a 0a20 202d 2067  to.  tags:.  - g
│ │ │ +00100a90: 7275 6232 5f6d 6365 5f61 7267 756d 656e  rub2_mce_argumen
│ │ │ +00100aa0: 740a 2020 2d20 6c6f 775f 6469 7372 7570  t.  - low_disrup
│ │ │ +00100ab0: 7469 6f6e 0a20 202d 206d 6564 6975 6d5f  tion.  - medium_
│ │ │ +00100ac0: 636f 6d70 6c65 7869 7479 0a20 202d 206d  complexity.  - m
│ │ │ +00100ad0: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ +00100ae0: 202d 2072 6562 6f6f 745f 7265 7175 6972   - reboot_requir
│ │ │ +00100af0: 6564 0a20 202d 2072 6573 7472 6963 745f  ed.  - restrict_
│ │ │ +00100b00: 7374 7261 7465 6779 0a0a 2d20 6e61 6d65  strategy..- name
│ │ │ +00100b10: 3a20 4368 6563 6b20 6966 206d 6365 2061  : Check if mce a
│ │ │ +00100b20: 7267 756d 656e 7420 6973 2061 6c72 6561  rgument is alrea
│ │ │ +00100b30: 6479 2070 7265 7365 6e74 2069 6e20 2f65  dy present in /e
│ │ │ +00100b40: 7463 2f64 6566 6175 6c74 2f67 7275 620a  tc/default/grub.
│ │ │ +00100b50: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ +00100b60: 6e2e 736c 7572 703a 0a20 2020 2073 7263  n.slurp:.    src
│ │ │ +00100b70: 3a20 2f65 7463 2f64 6566 6175 6c74 2f67  : /etc/default/g
│ │ │ +00100b80: 7275 620a 2020 7265 6769 7374 6572 3a20  rub.  register: 
│ │ │ +00100b90: 6574 635f 6465 6661 756c 745f 6772 7562  etc_default_grub
│ │ │ +00100ba0: 0a20 2077 6865 6e3a 2028 2022 6772 7562  .  when: ( "grub
│ │ │ +00100bb0: 322d 636f 6d6d 6f6e 2220 696e 2061 6e73  2-common" in ans
│ │ │ +00100bc0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +00100bd0: 6765 7320 616e 6420 226b 6572 6e65 6c22  ges and "kernel"
│ │ │ +00100be0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +00100bf0: 732e 7061 636b 6167 6573 0a20 2020 2029  s.packages.    )
│ │ │ +00100c00: 0a20 2074 6167 733a 0a20 202d 2067 7275  .  tags:.  - gru
│ │ │ +00100c10: 6232 5f6d 6365 5f61 7267 756d 656e 740a  b2_mce_argument.
│ │ │ +00100c20: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ +00100c30: 6f6e 0a20 202d 206d 6564 6975 6d5f 636f  on.  - medium_co
│ │ │ +00100c40: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ +00100c50: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ +00100c60: 2072 6562 6f6f 745f 7265 7175 6972 6564   reboot_required
│ │ │ +00100c70: 0a20 202d 2072 6573 7472 6963 745f 7374  .  - restrict_st
│ │ │ +00100c80: 7261 7465 6779 0a0a 2d20 6e61 6d65 3a20  rategy..- name: 
│ │ │ +00100c90: 4368 6563 6b20 6966 206d 6365 2061 7267  Check if mce arg
│ │ │ +00100ca0: 756d 656e 7420 6973 2061 6c72 6561 6479  ument is already
│ │ │ +00100cb0: 2070 7265 7365 6e74 0a20 2061 6e73 6962   present.  ansib
│ │ │ +00100cc0: 6c65 2e62 7569 6c74 696e 2e63 6f6d 6d61  le.builtin.comma
│ │ │ +00100cd0: 6e64 3a20 2f73 6269 6e2f 6772 7562 6279  nd: /sbin/grubby
│ │ │ +00100ce0: 202d 2d69 6e66 6f3d 414c 4c0a 2020 7265   --info=ALL.  re
│ │ │ +00100cf0: 6769 7374 6572 3a20 6772 7562 6279 5f69  gister: grubby_i
│ │ │ +00100d00: 6e66 6f0a 2020 6368 6563 6b5f 6d6f 6465  nfo.  check_mode
│ │ │ +00100d10: 3a20 6661 6c73 650a 2020 6368 616e 6765  : false.  change
│ │ │ +00100d20: 645f 7768 656e 3a20 6661 6c73 650a 2020  d_when: false.  
│ │ │ +00100d30: 6661 696c 6564 5f77 6865 6e3a 2066 616c  failed_when: fal
│ │ │ +00100d40: 7365 0a20 2077 6865 6e3a 2028 2022 6772  se.  when: ( "gr
│ │ │ +00100d50: 7562 322d 636f 6d6d 6f6e 2220 696e 2061  ub2-common" in a
│ │ │ +00100d60: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +00100d70: 6b61 6765 7320 616e 6420 226b 6572 6e65  kages and "kerne
│ │ │ +00100d80: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ +00100d90: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ +00100da0: 2029 0a20 2074 6167 733a 0a20 202d 2067   ).  tags:.  - g
│ │ │ +00100db0: 7275 6232 5f6d 6365 5f61 7267 756d 656e  rub2_mce_argumen
│ │ │ +00100dc0: 740a 2020 2d20 6c6f 775f 6469 7372 7570  t.  - low_disrup
│ │ │ +00100dd0: 7469 6f6e 0a20 202d 206d 6564 6975 6d5f  tion.  - medium_
│ │ │ +00100de0: 636f 6d70 6c65 7869 7479 0a20 202d 206d  complexity.  - m
│ │ │ +00100df0: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ +00100e00: 202d 2072 6562 6f6f 745f 7265 7175 6972   - reboot_requir
│ │ │ +00100e10: 6564 0a20 202d 2072 6573 7472 6963 745f  ed.  - restrict_
│ │ │ +00100e20: 7374 7261 7465 6779 0a0a 2d20 6e61 6d65  strategy..- name
│ │ │ +00100e30: 3a20 5570 6461 7465 2067 7275 6220 6465  : Update grub de
│ │ │ +00100e40: 6661 756c 7473 2061 6e64 2074 6865 2062  faults and the b
│ │ │ +00100e50: 6f6f 746c 6f61 6465 7220 6d65 6e75 0a20  ootloader menu. 
│ │ │ +00100e60: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ +00100e70: 2e63 6f6d 6d61 6e64 3a20 2f73 6269 6e2f  .command: /sbin/
│ │ │ +00100e80: 6772 7562 6279 202d 2d75 7064 6174 652d  grubby --update-
│ │ │ +00100e90: 6b65 726e 656c 3d41 4c4c 202d 2d61 7267  kernel=ALL --arg
│ │ │ +00100ea0: 733d 226d 6365 3d30 220a 2020 7768 656e  s="mce=0".  when
│ │ │ +00100eb0: 3a0a 2020 2d20 2820 2267 7275 6232 2d63  :.  - ( "grub2-c
│ │ │ +00100ec0: 6f6d 6d6f 6e22 2069 6e20 616e 7369 626c  ommon" in ansibl
│ │ │ +00100ed0: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ +00100ee0: 2061 6e64 2022 6b65 726e 656c 2220 696e   and "kernel" in
│ │ │ +00100ef0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +00100f00: 6163 6b61 6765 730a 2020 2020 290a 2020  ackages.    ).  
│ │ │ +00100f10: 2d20 2867 7275 6262 795f 696e 666f 2e73  - (grubby_info.s
│ │ │ +00100f20: 7464 6f75 7420 6973 206e 6f74 2073 6561  tdout is not sea
│ │ │ +00100f30: 7263 6828 276d 6365 3d30 2729 2920 6f72  rch('mce=0')) or
│ │ │ +00100f40: 2028 2865 7463 5f64 6566 6175 6c74 5f67   ((etc_default_g
│ │ │ +00100f50: 7275 625b 2763 6f6e 7465 6e74 275d 207c  rub['content'] |
│ │ │ +00100f60: 0a20 2020 2062 3634 6465 636f 6465 2920  .    b64decode) 
│ │ │ +00100f70: 6973 206e 6f74 2073 6561 7263 6828 276d  is not search('m
│ │ │ +00100f80: 6365 3d30 2729 290a 2020 7461 6773 3a0a  ce=0')).  tags:.
│ │ │ +00100f90: 2020 2d20 6772 7562 325f 6d63 655f 6172    - grub2_mce_ar
│ │ │ +00100fa0: 6775 6d65 6e74 0a20 202d 206c 6f77 5f64  gument.  - low_d
│ │ │ +00100fb0: 6973 7275 7074 696f 6e0a 2020 2d20 6d65  isruption.  - me
│ │ │ +00100fc0: 6469 756d 5f63 6f6d 706c 6578 6974 790a  dium_complexity.
│ │ │ +00100fd0: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ +00100fe0: 6974 790a 2020 2d20 7265 626f 6f74 5f72  ity.  - reboot_r
│ │ │ +00100ff0: 6571 7569 7265 640a 2020 2d20 7265 7374  equired.  - rest
│ │ │ +00101000: 7269 6374 5f73 7472 6174 6567 790a 3c2f  rict_strategy.
Re │ │ │ +001010c0: 6d65 6469 6174 696f 6e20 4f53 4275 696c mediation OSBuil │ │ │ +001010d0: 6420 426c 7565 7072 696e 7420 736e 6970 d Blueprint snip │ │ │ +001010e0: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ +001010f0: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +00101100: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +00101110: 7365 2220 6964 3d22 6964 3235 3522 3e3c se" id="id255">< │ │ │ +00101120: 7072 653e 3c63 6f64 653e 5b63 7573 746f pre>[custo │ │ │ +00101130: 6d69 7a61 7469 6f6e 732e 6b65 726e 656c mizations.kernel │ │ │ +00101140: 5d0a 6170 7065 6e64 203d 2022 6d63 653d ].append = "mce= │ │ │ +00101150: 3022 0a3c 2f63 6f64 653e 3c2f 7072 653e 0". │ │ │ 00101160: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22 Remediati │ │ │ -001023e0: 6f6e 204f 5342 7569 6c64 2042 6c75 6570 on OSBuild Bluep │ │ │ -001023f0: 7269 6e74 2073 6e69 7070 6574 20e2 87b2 rint snippet ... │ │ │ -00102400: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
[customizatio
│ │ │ -00102450: 6e73 2e6b 6572 6e65 6c5d 0a61 7070 656e  ns.kernel].appen
│ │ │ -00102460: 6420 3d20 226d 6473 3d3c 6162 6272 2074  d = "mds=full,nosmt<
│ │ │ -001024d0: 2f61 6262 723e 220a 3c2f 636f 6465 3e3c  /abbr>".<
│ │ │ -001024e0: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>
Remediat │ │ │ -00102590: 696f 6e20 416e 7369 626c 6520 736e 6970 ion Ansible snip │ │ │ -001025a0: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ -001025b0: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -001025c0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -001025d0: 7365 2220 6964 3d22 6964 3235 3922 3e3c se" id="id259">< │ │ │ -001025e0: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ -001025f0: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ -00102600: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ -00102610: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ -00102620: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 > │ │ │ -001026a0: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Com │ │ │ +00100990: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:medium
Disrupt │ │ │ +001009c0: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ +001009d0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strategy │ │ │ +00100a10: 3a3c 2f74 683e 3c74 643e 7265 7374 7269 :restri │ │ │ +00100a20: 6374 3c2f 7464 3e3c 2f74 723e 3c2f 7461 ct
Complex │ │ │ -00102630: 6974 793a 3c2f 7468 3e3c 7464 3e6d 6564 ity:med │ │ │ -00102640: 6975 6d3c 2f74 643e 3c2f 7472 3e3c 7472 ium
Disruption: │ │ │ -00102660: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ -00102680: 626f 6f74 3a3c 2f74 683e 3c74 643e 7472 boot:tr │ │ │ -00102690: 7565 3c2f 7464 3e3c 2f74 723e 3c74 723e ue
Strategy:restrict
│ │ │ -001026d0: 3c70 7265 3e3c 636f 6465 3e2d 206e 616d
- nam
│ │ │ -001026e0: 653a 2047 6174 6865 7220 7468 6520 7061  e: Gather the pa
│ │ │ -001026f0: 636b 6167 6520 6661 6374 730a 2020 7061  ckage facts.  pa
│ │ │ -00102700: 636b 6167 655f 6661 6374 733a 0a20 2020  ckage_facts:.   
│ │ │ -00102710: 206d 616e 6167 6572 3a20 6175 746f 0a20   manager: auto. 
│ │ │ -00102720: 2074 6167 733a 0a20 202d 2067 7275 6232   tags:.  - grub2
│ │ │ -00102730: 5f6d 6473 5f61 7267 756d 656e 740a 2020  _mds_argument.  
│ │ │ -00102740: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ -00102750: 0a20 202d 206d 6564 6975 6d5f 636f 6d70  .  - medium_comp
│ │ │ -00102760: 6c65 7869 7479 0a20 202d 206d 6564 6975  lexity.  - mediu
│ │ │ -00102770: 6d5f 7365 7665 7269 7479 0a20 202d 2072  m_severity.  - r
│ │ │ -00102780: 6562 6f6f 745f 7265 7175 6972 6564 0a20  eboot_required. 
│ │ │ -00102790: 202d 2072 6573 7472 6963 745f 7374 7261   - restrict_stra
│ │ │ -001027a0: 7465 6779 0a2d 206e 616d 653a 2058 4343  tegy.- name: XCC
│ │ │ -001027b0: 4446 2056 616c 7565 2076 6172 5f6d 6473  DF Value var_mds
│ │ │ -001027c0: 5f6f 7074 696f 6e73 2023 2070 726f 6d6f  _options # promo
│ │ │ -001027d0: 7465 2074 6f20 7661 7269 6162 6c65 0a20  te to variable. 
│ │ │ -001027e0: 2073 6574 5f66 6163 743a 0a20 2020 2076   set_fact:.    v
│ │ │ -001027f0: 6172 5f6d 6473 5f6f 7074 696f 6e73 3a20  ar_mds_options: 
│ │ │ -00102800: 2121 7374 7220 3c61 6262 7220 7469 746c  !!str full,nosmt.  tags:.    
│ │ │ -00102880: 2d20 616c 7761 7973 0a0a 2d20 6e61 6d65  - always..- name
│ │ │ -00102890: 3a20 4368 6563 6b20 6966 206d 6473 2061  : Check if mds a
│ │ │ -001028a0: 7267 756d 656e 7420 6973 2061 6c72 6561  rgument is alrea
│ │ │ -001028b0: 6479 2070 7265 7365 6e74 2069 6e20 2f65  dy present in /e
│ │ │ -001028c0: 7463 2f64 6566 6175 6c74 2f67 7275 620a  tc/default/grub.
│ │ │ -001028d0: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ -001028e0: 6e2e 736c 7572 703a 0a20 2020 2073 7263  n.slurp:.    src
│ │ │ -001028f0: 3a20 2f65 7463 2f64 6566 6175 6c74 2f67  : /etc/default/g
│ │ │ -00102900: 7275 620a 2020 7265 6769 7374 6572 3a20  rub.  register: 
│ │ │ -00102910: 6574 635f 6465 6661 756c 745f 6772 7562  etc_default_grub
│ │ │ -00102920: 0a20 2077 6865 6e3a 2028 2022 6772 7562  .  when: ( "grub
│ │ │ -00102930: 322d 636f 6d6d 6f6e 2220 696e 2061 6e73  2-common" in ans
│ │ │ -00102940: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -00102950: 6765 7320 616e 6420 226b 6572 6e65 6c22  ges and "kernel"
│ │ │ -00102960: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -00102970: 732e 7061 636b 6167 6573 0a20 2020 2029  s.packages.    )
│ │ │ -00102980: 0a20 2074 6167 733a 0a20 202d 2067 7275  .  tags:.  - gru
│ │ │ -00102990: 6232 5f6d 6473 5f61 7267 756d 656e 740a  b2_mds_argument.
│ │ │ -001029a0: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ -001029b0: 6f6e 0a20 202d 206d 6564 6975 6d5f 636f  on.  - medium_co
│ │ │ -001029c0: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ -001029d0: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ -001029e0: 2072 6562 6f6f 745f 7265 7175 6972 6564   reboot_required
│ │ │ -001029f0: 0a20 202d 2072 6573 7472 6963 745f 7374  .  - restrict_st
│ │ │ -00102a00: 7261 7465 6779 0a0a 2d20 6e61 6d65 3a20  rategy..- name: 
│ │ │ -00102a10: 4368 6563 6b20 6966 206d 6473 2061 7267  Check if mds arg
│ │ │ -00102a20: 756d 656e 7420 6973 2061 6c72 6561 6479  ument is already
│ │ │ -00102a30: 2070 7265 7365 6e74 0a20 2061 6e73 6962   present.  ansib
│ │ │ -00102a40: 6c65 2e62 7569 6c74 696e 2e63 6f6d 6d61  le.builtin.comma
│ │ │ -00102a50: 6e64 3a20 2f73 6269 6e2f 6772 7562 6279  nd: /sbin/grubby
│ │ │ -00102a60: 202d 2d69 6e66 6f3d 414c 4c0a 2020 7265   --info=ALL.  re
│ │ │ -00102a70: 6769 7374 6572 3a20 6772 7562 6279 5f69  gister: grubby_i
│ │ │ -00102a80: 6e66 6f0a 2020 6368 6563 6b5f 6d6f 6465  nfo.  check_mode
│ │ │ -00102a90: 3a20 6661 6c73 650a 2020 6368 616e 6765  : false.  change
│ │ │ -00102aa0: 645f 7768 656e 3a20 6661 6c73 650a 2020  d_when: false.  
│ │ │ -00102ab0: 6661 696c 6564 5f77 6865 6e3a 2066 616c  failed_when: fal
│ │ │ -00102ac0: 7365 0a20 2077 6865 6e3a 2028 2022 6772  se.  when: ( "gr
│ │ │ -00102ad0: 7562 322d 636f 6d6d 6f6e 2220 696e 2061  ub2-common" in a
│ │ │ -00102ae0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -00102af0: 6b61 6765 7320 616e 6420 226b 6572 6e65  kages and "kerne
│ │ │ -00102b00: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ -00102b10: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ -00102b20: 2029 0a20 2074 6167 733a 0a20 202d 2067   ).  tags:.  - g
│ │ │ -00102b30: 7275 6232 5f6d 6473 5f61 7267 756d 656e  rub2_mds_argumen
│ │ │ -00102b40: 740a 2020 2d20 6c6f 775f 6469 7372 7570  t.  - low_disrup
│ │ │ -00102b50: 7469 6f6e 0a20 202d 206d 6564 6975 6d5f  tion.  - medium_
│ │ │ -00102b60: 636f 6d70 6c65 7869 7479 0a20 202d 206d  complexity.  - m
│ │ │ -00102b70: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ -00102b80: 202d 2072 6562 6f6f 745f 7265 7175 6972   - reboot_requir
│ │ │ -00102b90: 6564 0a20 202d 2072 6573 7472 6963 745f  ed.  - restrict_
│ │ │ -00102ba0: 7374 7261 7465 6779 0a0a 2d20 6e61 6d65  strategy..- name
│ │ │ -00102bb0: 3a20 5570 6461 7465 2067 7275 6220 6465  : Update grub de
│ │ │ -00102bc0: 6661 756c 7473 2061 6e64 2074 6865 2062  faults and the b
│ │ │ -00102bd0: 6f6f 746c 6f61 6465 7220 6d65 6e75 0a20  ootloader menu. 
│ │ │ -00102be0: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ -00102bf0: 2e63 6f6d 6d61 6e64 3a20 2f73 6269 6e2f  .command: /sbin/
│ │ │ -00102c00: 6772 7562 6279 202d 2d75 7064 6174 652d  grubby --update-
│ │ │ -00102c10: 6b65 726e 656c 3d41 4c4c 202d 2d61 7267  kernel=ALL --arg
│ │ │ -00102c20: 733d 226d 6473 3d7b 7b20 7661 725f 6d64  s="mds={{ var_md
│ │ │ -00102c30: 735f 6f70 7469 6f6e 730a 2020 2020 7d7d  s_options.    }}
│ │ │ -00102c40: 220a 2020 7768 656e 3a0a 2020 2d20 2820  ".  when:.  - ( 
│ │ │ -00102c50: 2267 7275 6232 2d63 6f6d 6d6f 6e22 2069  "grub2-common" i
│ │ │ -00102c60: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -00102c70: 7061 636b 6167 6573 2061 6e64 2022 6b65  packages and "ke
│ │ │ -00102c80: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ -00102c90: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ -00102ca0: 2020 2020 290a 2020 2d20 2867 7275 6262      ).  - (grubb
│ │ │ -00102cb0: 795f 696e 666f 2e73 7464 6f75 7420 6973  y_info.stdout is
│ │ │ -00102cc0: 206e 6f74 2073 6561 7263 6828 276d 6473   not search('mds
│ │ │ -00102cd0: 3d27 207e 2076 6172 5f6d 6473 5f6f 7074  =' ~ var_mds_opt
│ │ │ -00102ce0: 696f 6e73 2929 206f 7220 2828 6574 635f  ions)) or ((etc_
│ │ │ -00102cf0: 6465 6661 756c 745f 6772 7562 5b27 636f  default_grub['co
│ │ │ -00102d00: 6e74 656e 7427 5d0a 2020 2020 7c20 6236  ntent'].    | b6
│ │ │ -00102d10: 3464 6563 6f64 6529 2069 7320 6e6f 7420  4decode) is not 
│ │ │ -00102d20: 7365 6172 6368 2827 6d64 733d 2720 7e20  search('mds=' ~ 
│ │ │ -00102d30: 7661 725f 6d64 735f 6f70 7469 6f6e 7329  var_mds_options)
│ │ │ -00102d40: 290a 2020 7461 6773 3a0a 2020 2d20 6772  ).  tags:.  - gr
│ │ │ -00102d50: 7562 325f 6d64 735f 6172 6775 6d65 6e74  ub2_mds_argument
│ │ │ -00102d60: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ -00102d70: 696f 6e0a 2020 2d20 6d65 6469 756d 5f63  ion.  - medium_c
│ │ │ -00102d80: 6f6d 706c 6578 6974 790a 2020 2d20 6d65  omplexity.  - me
│ │ │ -00102d90: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ -00102da0: 2d20 7265 626f 6f74 5f72 6571 7569 7265  - reboot_require
│ │ │ -00102db0: 640a 2020 2d20 7265 7374 7269 6374 5f73  d.  - restrict_s
│ │ │ -00102dc0: 7472 6174 6567 790a 3c2f 636f 6465 3e3c  trategy.<
│ │ │ +001023e0: 6f6e 2041 6e73 6962 6c65 2073 6e69 7070  on Ansible snipp
│ │ │ +001023f0: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64  et ...
│ │ │ +00102470: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ +00102480: 7479 3a3c 2f74 683e 3c74 643e 6d65 6469 ty:medi │ │ │ +00102490: 756d 3c2f 7464 3e3c 2f74 723e 3c74 723e um │ │ │ +001024a0: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c Disruption:< │ │ │ +001024b0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low │ │ │ +001024c0: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 Reb │ │ │ +001024d0: 6f6f 743a 3c2f 7468 3e3c 7464 3e74 7275 oot:tru │ │ │ +001024e0: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e< │ │ │ +001024f0: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:restrict< │ │ │ +00102520: 7072 653e 3c63 6f64 653e 2d20 6e61 6d65 pre>- name │ │ │ +00102530: 3a20 4761 7468 6572 2074 6865 2070 6163 : Gather the pac │ │ │ +00102540: 6b61 6765 2066 6163 7473 0a20 2070 6163 kage facts. pac │ │ │ +00102550: 6b61 6765 5f66 6163 7473 3a0a 2020 2020 kage_facts:. │ │ │ +00102560: 6d61 6e61 6765 723a 2061 7574 6f0a 2020 manager: auto. │ │ │ +00102570: 7461 6773 3a0a 2020 2d20 6772 7562 325f tags:. - grub2_ │ │ │ +00102580: 6d64 735f 6172 6775 6d65 6e74 0a20 202d mds_argument. - │ │ │ +00102590: 206c 6f77 5f64 6973 7275 7074 696f 6e0a low_disruption. │ │ │ +001025a0: 2020 2d20 6d65 6469 756d 5f63 6f6d 706c - medium_compl │ │ │ +001025b0: 6578 6974 790a 2020 2d20 6d65 6469 756d exity. - medium │ │ │ +001025c0: 5f73 6576 6572 6974 790a 2020 2d20 7265 _severity. - re │ │ │ +001025d0: 626f 6f74 5f72 6571 7569 7265 640a 2020 boot_required. │ │ │ +001025e0: 2d20 7265 7374 7269 6374 5f73 7472 6174 - restrict_strat │ │ │ +001025f0: 6567 790a 2d20 6e61 6d65 3a20 5843 4344 egy.- name: XCCD │ │ │ +00102600: 4620 5661 6c75 6520 7661 725f 6d64 735f F Value var_mds_ │ │ │ +00102610: 6f70 7469 6f6e 7320 2320 7072 6f6d 6f74 options # promot │ │ │ +00102620: 6520 746f 2076 6172 6961 626c 650a 2020 e to variable. │ │ │ +00102630: 7365 745f 6661 6374 3a0a 2020 2020 7661 set_fact:. va │ │ │ +00102640: 725f 6d64 735f 6f70 7469 6f6e 733a 2021 r_mds_options: ! │ │ │ +00102650: 2173 7472 203c 6162 6272 2074 6974 6c65 !str full,nosmt. tags:. - │ │ │ +001026d0: 2061 6c77 6179 730a 0a2d 206e 616d 653a always..- name: │ │ │ +001026e0: 2043 6865 636b 2069 6620 6d64 7320 6172 Check if mds ar │ │ │ +001026f0: 6775 6d65 6e74 2069 7320 616c 7265 6164 gument is alread │ │ │ +00102700: 7920 7072 6573 656e 7420 696e 202f 6574 y present in /et │ │ │ +00102710: 632f 6465 6661 756c 742f 6772 7562 0a20 c/default/grub. │ │ │ +00102720: 2061 6e73 6962 6c65 2e62 7569 6c74 696e ansible.builtin │ │ │ +00102730: 2e73 6c75 7270 3a0a 2020 2020 7372 633a .slurp:. src: │ │ │ +00102740: 202f 6574 632f 6465 6661 756c 742f 6772 /etc/default/gr │ │ │ +00102750: 7562 0a20 2072 6567 6973 7465 723a 2065 ub. register: e │ │ │ +00102760: 7463 5f64 6566 6175 6c74 5f67 7275 620a tc_default_grub. │ │ │ +00102770: 2020 7768 656e 3a20 2820 2267 7275 6232 when: ( "grub2 │ │ │ +00102780: 2d63 6f6d 6d6f 6e22 2069 6e20 616e 7369 -common" in ansi │ │ │ +00102790: 626c 655f 6661 6374 732e 7061 636b 6167 ble_facts.packag │ │ │ +001027a0: 6573 2061 6e64 2022 6b65 726e 656c 2220 es and "kernel" │ │ │ +001027b0: 696e 2061 6e73 6962 6c65 5f66 6163 7473 in ansible_facts │ │ │ +001027c0: 2e70 6163 6b61 6765 730a 2020 2020 290a .packages. ). │ │ │ +001027d0: 2020 7461 6773 3a0a 2020 2d20 6772 7562 tags:. - grub │ │ │ +001027e0: 325f 6d64 735f 6172 6775 6d65 6e74 0a20 2_mds_argument. │ │ │ +001027f0: 202d 206c 6f77 5f64 6973 7275 7074 696f - low_disruptio │ │ │ +00102800: 6e0a 2020 2d20 6d65 6469 756d 5f63 6f6d n. - medium_com │ │ │ +00102810: 706c 6578 6974 790a 2020 2d20 6d65 6469 plexity. - medi │ │ │ +00102820: 756d 5f73 6576 6572 6974 790a 2020 2d20 um_severity. - │ │ │ +00102830: 7265 626f 6f74 5f72 6571 7569 7265 640a reboot_required. │ │ │ +00102840: 2020 2d20 7265 7374 7269 6374 5f73 7472 - restrict_str │ │ │ +00102850: 6174 6567 790a 0a2d 206e 616d 653a 2043 ategy..- name: C │ │ │ +00102860: 6865 636b 2069 6620 6d64 7320 6172 6775 heck if mds argu │ │ │ +00102870: 6d65 6e74 2069 7320 616c 7265 6164 7920 ment is already │ │ │ +00102880: 7072 6573 656e 740a 2020 616e 7369 626c present. ansibl │ │ │ +00102890: 652e 6275 696c 7469 6e2e 636f 6d6d 616e e.builtin.comman │ │ │ +001028a0: 643a 202f 7362 696e 2f67 7275 6262 7920 d: /sbin/grubby │ │ │ +001028b0: 2d2d 696e 666f 3d41 4c4c 0a20 2072 6567 --info=ALL. reg │ │ │ +001028c0: 6973 7465 723a 2067 7275 6262 795f 696e ister: grubby_in │ │ │ +001028d0: 666f 0a20 2063 6865 636b 5f6d 6f64 653a fo. check_mode: │ │ │ +001028e0: 2066 616c 7365 0a20 2063 6861 6e67 6564 false. changed │ │ │ +001028f0: 5f77 6865 6e3a 2066 616c 7365 0a20 2066 _when: false. f │ │ │ +00102900: 6169 6c65 645f 7768 656e 3a20 6661 6c73 ailed_when: fals │ │ │ +00102910: 650a 2020 7768 656e 3a20 2820 2267 7275 e. when: ( "gru │ │ │ +00102920: 6232 2d63 6f6d 6d6f 6e22 2069 6e20 616e b2-common" in an │ │ │ +00102930: 7369 626c 655f 6661 6374 732e 7061 636b sible_facts.pack │ │ │ +00102940: 6167 6573 2061 6e64 2022 6b65 726e 656c ages and "kernel │ │ │ +00102950: 2220 696e 2061 6e73 6962 6c65 5f66 6163 " in ansible_fac │ │ │ +00102960: 7473 2e70 6163 6b61 6765 730a 2020 2020 ts.packages. │ │ │ +00102970: 290a 2020 7461 6773 3a0a 2020 2d20 6772 ). tags:. - gr │ │ │ +00102980: 7562 325f 6d64 735f 6172 6775 6d65 6e74 ub2_mds_argument │ │ │ +00102990: 0a20 202d 206c 6f77 5f64 6973 7275 7074 . - low_disrupt │ │ │ +001029a0: 696f 6e0a 2020 2d20 6d65 6469 756d 5f63 ion. - medium_c │ │ │ +001029b0: 6f6d 706c 6578 6974 790a 2020 2d20 6d65 omplexity. - me │ │ │ +001029c0: 6469 756d 5f73 6576 6572 6974 790a 2020 dium_severity. │ │ │ +001029d0: 2d20 7265 626f 6f74 5f72 6571 7569 7265 - reboot_require │ │ │ +001029e0: 640a 2020 2d20 7265 7374 7269 6374 5f73 d. - restrict_s │ │ │ +001029f0: 7472 6174 6567 790a 0a2d 206e 616d 653a trategy..- name: │ │ │ +00102a00: 2055 7064 6174 6520 6772 7562 2064 6566 Update grub def │ │ │ +00102a10: 6175 6c74 7320 616e 6420 7468 6520 626f aults and the bo │ │ │ +00102a20: 6f74 6c6f 6164 6572 206d 656e 750a 2020 otloader menu. │ │ │ +00102a30: 616e 7369 626c 652e 6275 696c 7469 6e2e ansible.builtin. │ │ │ +00102a40: 636f 6d6d 616e 643a 202f 7362 696e 2f67 command: /sbin/g │ │ │ +00102a50: 7275 6262 7920 2d2d 7570 6461 7465 2d6b rubby --update-k │ │ │ +00102a60: 6572 6e65 6c3d 414c 4c20 2d2d 6172 6773 ernel=ALL --args │ │ │ +00102a70: 3d22 6d64 733d 7b7b 2076 6172 5f6d 6473 ="mds={{ var_mds │ │ │ +00102a80: 5f6f 7074 696f 6e73 0a20 2020 207d 7d22 _options. }}" │ │ │ +00102a90: 0a20 2077 6865 6e3a 0a20 202d 2028 2022 . when:. - ( " │ │ │ +00102aa0: 6772 7562 322d 636f 6d6d 6f6e 2220 696e grub2-common" in │ │ │ +00102ab0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70 ansible_facts.p │ │ │ +00102ac0: 6163 6b61 6765 7320 616e 6420 226b 6572 ackages and "ker │ │ │ +00102ad0: 6e65 6c22 2069 6e20 616e 7369 626c 655f nel" in ansible_ │ │ │ +00102ae0: 6661 6374 732e 7061 636b 6167 6573 0a20 facts.packages. │ │ │ +00102af0: 2020 2029 0a20 202d 2028 6772 7562 6279 ). - (grubby │ │ │ +00102b00: 5f69 6e66 6f2e 7374 646f 7574 2069 7320 _info.stdout is │ │ │ +00102b10: 6e6f 7420 7365 6172 6368 2827 6d64 733d not search('mds= │ │ │ +00102b20: 2720 7e20 7661 725f 6d64 735f 6f70 7469 ' ~ var_mds_opti │ │ │ +00102b30: 6f6e 7329 2920 6f72 2028 2865 7463 5f64 ons)) or ((etc_d │ │ │ +00102b40: 6566 6175 6c74 5f67 7275 625b 2763 6f6e efault_grub['con │ │ │ +00102b50: 7465 6e74 275d 0a20 2020 207c 2062 3634 tent']. | b64 │ │ │ +00102b60: 6465 636f 6465 2920 6973 206e 6f74 2073 decode) is not s │ │ │ +00102b70: 6561 7263 6828 276d 6473 3d27 207e 2076 earch('mds=' ~ v │ │ │ +00102b80: 6172 5f6d 6473 5f6f 7074 696f 6e73 2929 ar_mds_options)) │ │ │ +00102b90: 0a20 2074 6167 733a 0a20 202d 2067 7275 . tags:. - gru │ │ │ +00102ba0: 6232 5f6d 6473 5f61 7267 756d 656e 740a b2_mds_argument. │ │ │ +00102bb0: 2020 2d20 6c6f 775f 6469 7372 7570 7469 - low_disrupti │ │ │ +00102bc0: 6f6e 0a20 202d 206d 6564 6975 6d5f 636f on. - medium_co │ │ │ +00102bd0: 6d70 6c65 7869 7479 0a20 202d 206d 6564 mplexity. - med │ │ │ +00102be0: 6975 6d5f 7365 7665 7269 7479 0a20 202d ium_severity. - │ │ │ +00102bf0: 2072 6562 6f6f 745f 7265 7175 6972 6564 reboot_required │ │ │ +00102c00: 0a20 202d 2072 6573 7472 6963 745f 7374 . - restrict_st │ │ │ +00102c10: 7261 7465 6779 0a3c 2f63 6f64 653e 3c2f rategy.
Remediati │ │ │ +00102cd0: 6f6e 204f 5342 7569 6c64 2042 6c75 6570 on OSBuild Bluep │ │ │ +00102ce0: 7269 6e74 2073 6e69 7070 6574 20e2 87b2 rint snippet ... │ │ │ +00102cf0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
[customizatio
│ │ │ +00102d40: 6e73 2e6b 6572 6e65 6c5d 0a61 7070 656e  ns.kernel].appen
│ │ │ +00102d50: 6420 3d20 226d 6473 3d3c 6162 6272 2074  d = "mds=full,nosmt<
│ │ │ +00102dc0: 2f61 6262 723e 220a 3c2f 636f 6465 3e3c  /abbr>".<
│ │ │  00102dd0: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>
Remediat │ │ │ -00106870: 696f 6e20 4f53 4275 696c 6420 426c 7565 ion OSBuild Blue │ │ │ -00106880: 7072 696e 7420 736e 6970 7065 7420 e287 print snippet .. │ │ │ -00106890: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
[customizati
│ │ │ -001068e0: 6f6e 732e 6b65 726e 656c 5d0a 6170 7065  ons.kernel].appe
│ │ │ -001068f0: 6e64 203d 2022 7061 6765 5f61 6c6c 6f63  nd = "page_alloc
│ │ │ -00106900: 2e73 6875 6666 6c65 3d31 220a 3c2f 636f  .shuffle=1".
< │ │ │ -00106920: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ -00106930: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ -00106940: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ -00106950: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ -00106960: 6432 3639 2220 7461 6269 6e64 6578 3d22 d269" tabindex=" │ │ │ -00106970: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ -00106980: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ -00106990: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ -001069a0: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ -001069b0: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ -001069c0: 6469 6174 696f 6e20 416e 7369 626c 6520 diation Ansible │ │ │ -001069d0: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ -001069e0: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Reboot:true │ │ │ -00106ad0: 3c74 723e 3c74 683e 5374 7261 7465 6779
-
│ │ │ -00106b10: 206e 616d 653a 2047 6174 6865 7220 7468   name: Gather th
│ │ │ -00106b20: 6520 7061 636b 6167 6520 6661 6374 730a  e package facts.
│ │ │ -00106b30: 2020 7061 636b 6167 655f 6661 6374 733a    package_facts:
│ │ │ -00106b40: 0a20 2020 206d 616e 6167 6572 3a20 6175  .    manager: au
│ │ │ -00106b50: 746f 0a20 2074 6167 733a 0a20 202d 2067  to.  tags:.  - g
│ │ │ -00106b60: 7275 6232 5f70 6167 655f 616c 6c6f 635f  rub2_page_alloc_
│ │ │ -00106b70: 7368 7566 666c 655f 6172 6775 6d65 6e74  shuffle_argument
│ │ │ -00106b80: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ -00106b90: 696f 6e0a 2020 2d20 6d65 6469 756d 5f63  ion.  - medium_c
│ │ │ -00106ba0: 6f6d 706c 6578 6974 790a 2020 2d20 6d65  omplexity.  - me
│ │ │ -00106bb0: 6469 756d 5f73 6576 6572 6974 790a 2020  dium_severity.  
│ │ │ -00106bc0: 2d20 7265 626f 6f74 5f72 6571 7569 7265  - reboot_require
│ │ │ -00106bd0: 640a 2020 2d20 7265 7374 7269 6374 5f73  d.  - restrict_s
│ │ │ -00106be0: 7472 6174 6567 790a 0a2d 206e 616d 653a  trategy..- name:
│ │ │ -00106bf0: 2043 6865 636b 2069 6620 7061 6765 5f61   Check if page_a
│ │ │ -00106c00: 6c6c 6f63 2e73 6875 6666 6c65 2061 7267  lloc.shuffle arg
│ │ │ -00106c10: 756d 656e 7420 6973 2061 6c72 6561 6479  ument is already
│ │ │ -00106c20: 2070 7265 7365 6e74 2069 6e20 2f65 7463   present in /etc
│ │ │ -00106c30: 2f64 6566 6175 6c74 2f67 7275 620a 2020  /default/grub.  
│ │ │ -00106c40: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ -00106c50: 736c 7572 703a 0a20 2020 2073 7263 3a20  slurp:.    src: 
│ │ │ -00106c60: 2f65 7463 2f64 6566 6175 6c74 2f67 7275  /etc/default/gru
│ │ │ -00106c70: 620a 2020 7265 6769 7374 6572 3a20 6574  b.  register: et
│ │ │ -00106c80: 635f 6465 6661 756c 745f 6772 7562 0a20  c_default_grub. 
│ │ │ -00106c90: 2077 6865 6e3a 2028 2022 6772 7562 322d   when: ( "grub2-
│ │ │ -00106ca0: 636f 6d6d 6f6e 2220 696e 2061 6e73 6962  common" in ansib
│ │ │ -00106cb0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -00106cc0: 7320 616e 6420 226b 6572 6e65 6c22 2069  s and "kernel" i
│ │ │ -00106cd0: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -00106ce0: 7061 636b 6167 6573 0a20 2020 2029 0a20  packages.    ). 
│ │ │ -00106cf0: 2074 6167 733a 0a20 202d 2067 7275 6232   tags:.  - grub2
│ │ │ -00106d00: 5f70 6167 655f 616c 6c6f 635f 7368 7566  _page_alloc_shuf
│ │ │ -00106d10: 666c 655f 6172 6775 6d65 6e74 0a20 202d  fle_argument.  -
│ │ │ -00106d20: 206c 6f77 5f64 6973 7275 7074 696f 6e0a   low_disruption.
│ │ │ -00106d30: 2020 2d20 6d65 6469 756d 5f63 6f6d 706c    - medium_compl
│ │ │ -00106d40: 6578 6974 790a 2020 2d20 6d65 6469 756d  exity.  - medium
│ │ │ -00106d50: 5f73 6576 6572 6974 790a 2020 2d20 7265  _severity.  - re
│ │ │ -00106d60: 626f 6f74 5f72 6571 7569 7265 640a 2020  boot_required.  
│ │ │ -00106d70: 2d20 7265 7374 7269 6374 5f73 7472 6174  - restrict_strat
│ │ │ -00106d80: 6567 790a 0a2d 206e 616d 653a 2043 6865  egy..- name: Che
│ │ │ -00106d90: 636b 2069 6620 7061 6765 5f61 6c6c 6f63  ck if page_alloc
│ │ │ -00106da0: 2e73 6875 6666 6c65 2061 7267 756d 656e  .shuffle argumen
│ │ │ -00106db0: 7420 6973 2061 6c72 6561 6479 2070 7265  t is already pre
│ │ │ -00106dc0: 7365 6e74 0a20 2061 6e73 6962 6c65 2e62  sent.  ansible.b
│ │ │ -00106dd0: 7569 6c74 696e 2e63 6f6d 6d61 6e64 3a20  uiltin.command: 
│ │ │ -00106de0: 2f73 6269 6e2f 6772 7562 6279 202d 2d69  /sbin/grubby --i
│ │ │ -00106df0: 6e66 6f3d 414c 4c0a 2020 7265 6769 7374  nfo=ALL.  regist
│ │ │ -00106e00: 6572 3a20 6772 7562 6279 5f69 6e66 6f0a  er: grubby_info.
│ │ │ -00106e10: 2020 6368 6563 6b5f 6d6f 6465 3a20 6661    check_mode: fa
│ │ │ -00106e20: 6c73 650a 2020 6368 616e 6765 645f 7768  lse.  changed_wh
│ │ │ -00106e30: 656e 3a20 6661 6c73 650a 2020 6661 696c  en: false.  fail
│ │ │ -00106e40: 6564 5f77 6865 6e3a 2066 616c 7365 0a20  ed_when: false. 
│ │ │ -00106e50: 2077 6865 6e3a 2028 2022 6772 7562 322d   when: ( "grub2-
│ │ │ -00106e60: 636f 6d6d 6f6e 2220 696e 2061 6e73 6962  common" in ansib
│ │ │ -00106e70: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -00106e80: 7320 616e 6420 226b 6572 6e65 6c22 2069  s and "kernel" i
│ │ │ -00106e90: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -00106ea0: 7061 636b 6167 6573 0a20 2020 2029 0a20  packages.    ). 
│ │ │ -00106eb0: 2074 6167 733a 0a20 202d 2067 7275 6232   tags:.  - grub2
│ │ │ -00106ec0: 5f70 6167 655f 616c 6c6f 635f 7368 7566  _page_alloc_shuf
│ │ │ -00106ed0: 666c 655f 6172 6775 6d65 6e74 0a20 202d  fle_argument.  -
│ │ │ -00106ee0: 206c 6f77 5f64 6973 7275 7074 696f 6e0a   low_disruption.
│ │ │ -00106ef0: 2020 2d20 6d65 6469 756d 5f63 6f6d 706c    - medium_compl
│ │ │ -00106f00: 6578 6974 790a 2020 2d20 6d65 6469 756d  exity.  - medium
│ │ │ -00106f10: 5f73 6576 6572 6974 790a 2020 2d20 7265  _severity.  - re
│ │ │ -00106f20: 626f 6f74 5f72 6571 7569 7265 640a 2020  boot_required.  
│ │ │ -00106f30: 2d20 7265 7374 7269 6374 5f73 7472 6174  - restrict_strat
│ │ │ -00106f40: 6567 790a 0a2d 206e 616d 653a 2055 7064  egy..- name: Upd
│ │ │ -00106f50: 6174 6520 6772 7562 2064 6566 6175 6c74  ate grub default
│ │ │ -00106f60: 7320 616e 6420 7468 6520 626f 6f74 6c6f  s and the bootlo
│ │ │ -00106f70: 6164 6572 206d 656e 750a 2020 616e 7369  ader menu.  ansi
│ │ │ -00106f80: 626c 652e 6275 696c 7469 6e2e 636f 6d6d  ble.builtin.comm
│ │ │ -00106f90: 616e 643a 202f 7362 696e 2f67 7275 6262  and: /sbin/grubb
│ │ │ -00106fa0: 7920 2d2d 7570 6461 7465 2d6b 6572 6e65  y --update-kerne
│ │ │ -00106fb0: 6c3d 414c 4c20 2d2d 6172 6773 3d22 7061  l=ALL --args="pa
│ │ │ -00106fc0: 6765 5f61 6c6c 6f63 2e73 6875 6666 6c65  ge_alloc.shuffle
│ │ │ -00106fd0: 3d31 220a 2020 7768 656e 3a0a 2020 2d20  =1".  when:.  - 
│ │ │ -00106fe0: 2820 2267 7275 6232 2d63 6f6d 6d6f 6e22  ( "grub2-common"
│ │ │ -00106ff0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -00107000: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ -00107010: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ -00107020: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -00107030: 730a 2020 2020 290a 2020 2d20 2867 7275  s.    ).  - (gru
│ │ │ -00107040: 6262 795f 696e 666f 2e73 7464 6f75 7420  bby_info.stdout 
│ │ │ -00107050: 6973 206e 6f74 2073 6561 7263 6828 2770  is not search('p
│ │ │ -00107060: 6167 655f 616c 6c6f 632e 7368 7566 666c  age_alloc.shuffl
│ │ │ -00107070: 653d 3127 2929 206f 7220 2828 6574 635f  e=1')) or ((etc_
│ │ │ -00107080: 6465 6661 756c 745f 6772 7562 5b27 636f  default_grub['co
│ │ │ -00107090: 6e74 656e 7427 5d0a 2020 2020 7c20 6236  ntent'].    | b6
│ │ │ -001070a0: 3464 6563 6f64 6529 2069 7320 6e6f 7420  4decode) is not 
│ │ │ -001070b0: 7365 6172 6368 2827 7061 6765 5f61 6c6c  search('page_all
│ │ │ -001070c0: 6f63 2e73 6875 6666 6c65 3d31 2729 290a  oc.shuffle=1')).
│ │ │ -001070d0: 2020 7461 6773 3a0a 2020 2d20 6772 7562    tags:.  - grub
│ │ │ -001070e0: 325f 7061 6765 5f61 6c6c 6f63 5f73 6875  2_page_alloc_shu
│ │ │ -001070f0: 6666 6c65 5f61 7267 756d 656e 740a 2020  ffle_argument.  
│ │ │ -00107100: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ -00107110: 0a20 202d 206d 6564 6975 6d5f 636f 6d70  .  - medium_comp
│ │ │ -00107120: 6c65 7869 7479 0a20 202d 206d 6564 6975  lexity.  - mediu
│ │ │ -00107130: 6d5f 7365 7665 7269 7479 0a20 202d 2072  m_severity.  - r
│ │ │ -00107140: 6562 6f6f 745f 7265 7175 6972 6564 0a20  eboot_required. 
│ │ │ -00107150: 202d 2072 6573 7472 6963 745f 7374 7261   - restrict_stra
│ │ │ -00107160: 7465 6779 0a3c 2f63 6f64 653e 3c2f 7072  tegy.
< │ │ │ +00106890: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +001068a0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +001068b0: 7365 2220 6964 3d22 6964 3236 3822 3e3c se" id="id268">< │ │ │ +001068c0: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +001068d0: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +001068e0: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +001068f0: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +00106900: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >
│ │ │ +00106980: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Com │ │ │ -00106a60: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:medium
Disrupt │ │ │ -00106a90: 696f 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 ion:low │ │ │ -00106aa0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74
Strategy │ │ │ -00106ae0: 3a3c 2f74 683e 3c74 643e 7265 7374 7269 :restri │ │ │ -00106af0: 6374 3c2f 7464 3e3c 2f74 723e 3c2f 7461 ct
Complex │ │ │ +00106910: 6974 793a 3c2f 7468 3e3c 7464 3e6d 6564 ity:med │ │ │ +00106920: 6975 6d3c 2f74 643e 3c2f 7472 3e3c 7472 ium
Disruption: │ │ │ +00106940: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ +00106960: 626f 6f74 3a3c 2f74 683e 3c74 643e 7472 boot:tr │ │ │ +00106970: 7565 3c2f 7464 3e3c 2f74 723e 3c74 723e ue
Strategy:restrict
│ │ │ +001069b0: 3c70 7265 3e3c 636f 6465 3e2d 206e 616d
- nam
│ │ │ +001069c0: 653a 2047 6174 6865 7220 7468 6520 7061  e: Gather the pa
│ │ │ +001069d0: 636b 6167 6520 6661 6374 730a 2020 7061  ckage facts.  pa
│ │ │ +001069e0: 636b 6167 655f 6661 6374 733a 0a20 2020  ckage_facts:.   
│ │ │ +001069f0: 206d 616e 6167 6572 3a20 6175 746f 0a20   manager: auto. 
│ │ │ +00106a00: 2074 6167 733a 0a20 202d 2067 7275 6232   tags:.  - grub2
│ │ │ +00106a10: 5f70 6167 655f 616c 6c6f 635f 7368 7566  _page_alloc_shuf
│ │ │ +00106a20: 666c 655f 6172 6775 6d65 6e74 0a20 202d  fle_argument.  -
│ │ │ +00106a30: 206c 6f77 5f64 6973 7275 7074 696f 6e0a   low_disruption.
│ │ │ +00106a40: 2020 2d20 6d65 6469 756d 5f63 6f6d 706c    - medium_compl
│ │ │ +00106a50: 6578 6974 790a 2020 2d20 6d65 6469 756d  exity.  - medium
│ │ │ +00106a60: 5f73 6576 6572 6974 790a 2020 2d20 7265  _severity.  - re
│ │ │ +00106a70: 626f 6f74 5f72 6571 7569 7265 640a 2020  boot_required.  
│ │ │ +00106a80: 2d20 7265 7374 7269 6374 5f73 7472 6174  - restrict_strat
│ │ │ +00106a90: 6567 790a 0a2d 206e 616d 653a 2043 6865  egy..- name: Che
│ │ │ +00106aa0: 636b 2069 6620 7061 6765 5f61 6c6c 6f63  ck if page_alloc
│ │ │ +00106ab0: 2e73 6875 6666 6c65 2061 7267 756d 656e  .shuffle argumen
│ │ │ +00106ac0: 7420 6973 2061 6c72 6561 6479 2070 7265  t is already pre
│ │ │ +00106ad0: 7365 6e74 2069 6e20 2f65 7463 2f64 6566  sent in /etc/def
│ │ │ +00106ae0: 6175 6c74 2f67 7275 620a 2020 616e 7369  ault/grub.  ansi
│ │ │ +00106af0: 626c 652e 6275 696c 7469 6e2e 736c 7572  ble.builtin.slur
│ │ │ +00106b00: 703a 0a20 2020 2073 7263 3a20 2f65 7463  p:.    src: /etc
│ │ │ +00106b10: 2f64 6566 6175 6c74 2f67 7275 620a 2020  /default/grub.  
│ │ │ +00106b20: 7265 6769 7374 6572 3a20 6574 635f 6465  register: etc_de
│ │ │ +00106b30: 6661 756c 745f 6772 7562 0a20 2077 6865  fault_grub.  whe
│ │ │ +00106b40: 6e3a 2028 2022 6772 7562 322d 636f 6d6d  n: ( "grub2-comm
│ │ │ +00106b50: 6f6e 2220 696e 2061 6e73 6962 6c65 5f66  on" in ansible_f
│ │ │ +00106b60: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +00106b70: 6420 226b 6572 6e65 6c22 2069 6e20 616e  d "kernel" in an
│ │ │ +00106b80: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +00106b90: 6167 6573 0a20 2020 2029 0a20 2074 6167  ages.    ).  tag
│ │ │ +00106ba0: 733a 0a20 202d 2067 7275 6232 5f70 6167  s:.  - grub2_pag
│ │ │ +00106bb0: 655f 616c 6c6f 635f 7368 7566 666c 655f  e_alloc_shuffle_
│ │ │ +00106bc0: 6172 6775 6d65 6e74 0a20 202d 206c 6f77  argument.  - low
│ │ │ +00106bd0: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +00106be0: 6d65 6469 756d 5f63 6f6d 706c 6578 6974  medium_complexit
│ │ │ +00106bf0: 790a 2020 2d20 6d65 6469 756d 5f73 6576  y.  - medium_sev
│ │ │ +00106c00: 6572 6974 790a 2020 2d20 7265 626f 6f74  erity.  - reboot
│ │ │ +00106c10: 5f72 6571 7569 7265 640a 2020 2d20 7265  _required.  - re
│ │ │ +00106c20: 7374 7269 6374 5f73 7472 6174 6567 790a  strict_strategy.
│ │ │ +00106c30: 0a2d 206e 616d 653a 2043 6865 636b 2069  .- name: Check i
│ │ │ +00106c40: 6620 7061 6765 5f61 6c6c 6f63 2e73 6875  f page_alloc.shu
│ │ │ +00106c50: 6666 6c65 2061 7267 756d 656e 7420 6973  ffle argument is
│ │ │ +00106c60: 2061 6c72 6561 6479 2070 7265 7365 6e74   already present
│ │ │ +00106c70: 0a20 2061 6e73 6962 6c65 2e62 7569 6c74  .  ansible.built
│ │ │ +00106c80: 696e 2e63 6f6d 6d61 6e64 3a20 2f73 6269  in.command: /sbi
│ │ │ +00106c90: 6e2f 6772 7562 6279 202d 2d69 6e66 6f3d  n/grubby --info=
│ │ │ +00106ca0: 414c 4c0a 2020 7265 6769 7374 6572 3a20  ALL.  register: 
│ │ │ +00106cb0: 6772 7562 6279 5f69 6e66 6f0a 2020 6368  grubby_info.  ch
│ │ │ +00106cc0: 6563 6b5f 6d6f 6465 3a20 6661 6c73 650a  eck_mode: false.
│ │ │ +00106cd0: 2020 6368 616e 6765 645f 7768 656e 3a20    changed_when: 
│ │ │ +00106ce0: 6661 6c73 650a 2020 6661 696c 6564 5f77  false.  failed_w
│ │ │ +00106cf0: 6865 6e3a 2066 616c 7365 0a20 2077 6865  hen: false.  whe
│ │ │ +00106d00: 6e3a 2028 2022 6772 7562 322d 636f 6d6d  n: ( "grub2-comm
│ │ │ +00106d10: 6f6e 2220 696e 2061 6e73 6962 6c65 5f66  on" in ansible_f
│ │ │ +00106d20: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +00106d30: 6420 226b 6572 6e65 6c22 2069 6e20 616e  d "kernel" in an
│ │ │ +00106d40: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +00106d50: 6167 6573 0a20 2020 2029 0a20 2074 6167  ages.    ).  tag
│ │ │ +00106d60: 733a 0a20 202d 2067 7275 6232 5f70 6167  s:.  - grub2_pag
│ │ │ +00106d70: 655f 616c 6c6f 635f 7368 7566 666c 655f  e_alloc_shuffle_
│ │ │ +00106d80: 6172 6775 6d65 6e74 0a20 202d 206c 6f77  argument.  - low
│ │ │ +00106d90: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +00106da0: 6d65 6469 756d 5f63 6f6d 706c 6578 6974  medium_complexit
│ │ │ +00106db0: 790a 2020 2d20 6d65 6469 756d 5f73 6576  y.  - medium_sev
│ │ │ +00106dc0: 6572 6974 790a 2020 2d20 7265 626f 6f74  erity.  - reboot
│ │ │ +00106dd0: 5f72 6571 7569 7265 640a 2020 2d20 7265  _required.  - re
│ │ │ +00106de0: 7374 7269 6374 5f73 7472 6174 6567 790a  strict_strategy.
│ │ │ +00106df0: 0a2d 206e 616d 653a 2055 7064 6174 6520  .- name: Update 
│ │ │ +00106e00: 6772 7562 2064 6566 6175 6c74 7320 616e  grub defaults an
│ │ │ +00106e10: 6420 7468 6520 626f 6f74 6c6f 6164 6572  d the bootloader
│ │ │ +00106e20: 206d 656e 750a 2020 616e 7369 626c 652e   menu.  ansible.
│ │ │ +00106e30: 6275 696c 7469 6e2e 636f 6d6d 616e 643a  builtin.command:
│ │ │ +00106e40: 202f 7362 696e 2f67 7275 6262 7920 2d2d   /sbin/grubby --
│ │ │ +00106e50: 7570 6461 7465 2d6b 6572 6e65 6c3d 414c  update-kernel=AL
│ │ │ +00106e60: 4c20 2d2d 6172 6773 3d22 7061 6765 5f61  L --args="page_a
│ │ │ +00106e70: 6c6c 6f63 2e73 6875 6666 6c65 3d31 220a  lloc.shuffle=1".
│ │ │ +00106e80: 2020 7768 656e 3a0a 2020 2d20 2820 2267    when:.  - ( "g
│ │ │ +00106e90: 7275 6232 2d63 6f6d 6d6f 6e22 2069 6e20  rub2-common" in 
│ │ │ +00106ea0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +00106eb0: 636b 6167 6573 2061 6e64 2022 6b65 726e  ckages and "kern
│ │ │ +00106ec0: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ +00106ed0: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ +00106ee0: 2020 290a 2020 2d20 2867 7275 6262 795f    ).  - (grubby_
│ │ │ +00106ef0: 696e 666f 2e73 7464 6f75 7420 6973 206e  info.stdout is n
│ │ │ +00106f00: 6f74 2073 6561 7263 6828 2770 6167 655f  ot search('page_
│ │ │ +00106f10: 616c 6c6f 632e 7368 7566 666c 653d 3127  alloc.shuffle=1'
│ │ │ +00106f20: 2929 206f 7220 2828 6574 635f 6465 6661  )) or ((etc_defa
│ │ │ +00106f30: 756c 745f 6772 7562 5b27 636f 6e74 656e  ult_grub['conten
│ │ │ +00106f40: 7427 5d0a 2020 2020 7c20 6236 3464 6563  t'].    | b64dec
│ │ │ +00106f50: 6f64 6529 2069 7320 6e6f 7420 7365 6172  ode) is not sear
│ │ │ +00106f60: 6368 2827 7061 6765 5f61 6c6c 6f63 2e73  ch('page_alloc.s
│ │ │ +00106f70: 6875 6666 6c65 3d31 2729 290a 2020 7461  huffle=1')).  ta
│ │ │ +00106f80: 6773 3a0a 2020 2d20 6772 7562 325f 7061  gs:.  - grub2_pa
│ │ │ +00106f90: 6765 5f61 6c6c 6f63 5f73 6875 6666 6c65  ge_alloc_shuffle
│ │ │ +00106fa0: 5f61 7267 756d 656e 740a 2020 2d20 6c6f  _argument.  - lo
│ │ │ +00106fb0: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ +00106fc0: 206d 6564 6975 6d5f 636f 6d70 6c65 7869   medium_complexi
│ │ │ +00106fd0: 7479 0a20 202d 206d 6564 6975 6d5f 7365  ty.  - medium_se
│ │ │ +00106fe0: 7665 7269 7479 0a20 202d 2072 6562 6f6f  verity.  - reboo
│ │ │ +00106ff0: 745f 7265 7175 6972 6564 0a20 202d 2072  t_required.  - r
│ │ │ +00107000: 6573 7472 6963 745f 7374 7261 7465 6779  estrict_strategy
│ │ │ +00107010: 0a3c 2f63 6f64 653e 3c2f 7072 653e 3c2f  .
Remediation OSB │ │ │ +001070d0: 7569 6c64 2042 6c75 6570 7269 6e74 2073 uild Blueprint s │ │ │ +001070e0: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
[cu
│ │ │ +00107130: 7374 6f6d 697a 6174 696f 6e73 2e6b 6572  stomizations.ker
│ │ │ +00107140: 6e65 6c5d 0a61 7070 656e 6420 3d20 2270  nel].append = "p
│ │ │ +00107150: 6167 655f 616c 6c6f 632e 7368 7566 666c  age_alloc.shuffl
│ │ │ +00107160: 653d 3122 0a3c 2f63 6f64 653e 3c2f 7072  e=1".
Remediat │ │ │ -00107fd0: 696f 6e20 4f53 4275 696c 6420 426c 7565 ion OSBuild Blue │ │ │ -00107fe0: 7072 696e 7420 736e 6970 7065 7420 e287 print snippet .. │ │ │ -00107ff0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
[customizati
│ │ │ -00108040: 6f6e 732e 6b65 726e 656c 5d0a 6170 7065  ons.kernel].appe
│ │ │ -00108050: 6e64 203d 2022 7074 693d 6f6e 220a 3c2f  nd = "pti=on".
Re │ │ │ -00108110: 6d65 6469 6174 696f 6e20 416e 7369 626c mediation Ansibl │ │ │ -00108120: 6520 736e 6970 7065 7420 e287 b23c 2f61 e snippet ...
< │ │ │ -001081c0: 7464 3e6d 6564 6975 6d3c 2f74 643e 3c2f td>medium │ │ │ -00108200: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -00108210: 3c74 643e 7472 7565 3c2f 7464 3e3c 2f74
- name: Gather 
│ │ │ -00108270: 7468 6520 7061 636b 6167 6520 6661 6374  the package fact
│ │ │ -00108280: 730a 2020 7061 636b 6167 655f 6661 6374  s.  package_fact
│ │ │ -00108290: 733a 0a20 2020 206d 616e 6167 6572 3a20  s:.    manager: 
│ │ │ -001082a0: 6175 746f 0a20 2074 6167 733a 0a20 202d  auto.  tags:.  -
│ │ │ -001082b0: 204e 4953 542d 3830 302d 3533 2d53 492d   NIST-800-53-SI-
│ │ │ -001082c0: 3136 0a20 202d 2067 7275 6232 5f70 7469  16.  - grub2_pti
│ │ │ -001082d0: 5f61 7267 756d 656e 740a 2020 2d20 6c6f  _argument.  - lo
│ │ │ -001082e0: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ -001082f0: 206c 6f77 5f73 6576 6572 6974 790a 2020   low_severity.  
│ │ │ -00108300: 2d20 6d65 6469 756d 5f63 6f6d 706c 6578  - medium_complex
│ │ │ -00108310: 6974 790a 2020 2d20 7265 626f 6f74 5f72  ity.  - reboot_r
│ │ │ -00108320: 6571 7569 7265 640a 2020 2d20 7265 7374  equired.  - rest
│ │ │ -00108330: 7269 6374 5f73 7472 6174 6567 790a 0a2d  rict_strategy..-
│ │ │ -00108340: 206e 616d 653a 2043 6865 636b 2069 6620   name: Check if 
│ │ │ -00108350: 7074 6920 6172 6775 6d65 6e74 2069 7320  pti argument is 
│ │ │ -00108360: 616c 7265 6164 7920 7072 6573 656e 7420  already present 
│ │ │ -00108370: 696e 202f 6574 632f 6465 6661 756c 742f  in /etc/default/
│ │ │ -00108380: 6772 7562 0a20 2061 6e73 6962 6c65 2e62  grub.  ansible.b
│ │ │ -00108390: 7569 6c74 696e 2e73 6c75 7270 3a0a 2020  uiltin.slurp:.  
│ │ │ -001083a0: 2020 7372 633a 202f 6574 632f 6465 6661    src: /etc/defa
│ │ │ -001083b0: 756c 742f 6772 7562 0a20 2072 6567 6973  ult/grub.  regis
│ │ │ -001083c0: 7465 723a 2065 7463 5f64 6566 6175 6c74  ter: etc_default
│ │ │ -001083d0: 5f67 7275 620a 2020 7768 656e 3a20 2820  _grub.  when: ( 
│ │ │ -001083e0: 2267 7275 6232 2d63 6f6d 6d6f 6e22 2069  "grub2-common" i
│ │ │ -001083f0: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -00108400: 7061 636b 6167 6573 2061 6e64 2022 6b65  packages and "ke
│ │ │ -00108410: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ -00108420: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ -00108430: 2020 2020 290a 2020 7461 6773 3a0a 2020      ).  tags:.  
│ │ │ -00108440: 2d20 4e49 5354 2d38 3030 2d35 332d 5349  - NIST-800-53-SI
│ │ │ -00108450: 2d31 360a 2020 2d20 6772 7562 325f 7074  -16.  - grub2_pt
│ │ │ -00108460: 695f 6172 6775 6d65 6e74 0a20 202d 206c  i_argument.  - l
│ │ │ -00108470: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ -00108480: 2d20 6c6f 775f 7365 7665 7269 7479 0a20  - low_severity. 
│ │ │ -00108490: 202d 206d 6564 6975 6d5f 636f 6d70 6c65   - medium_comple
│ │ │ -001084a0: 7869 7479 0a20 202d 2072 6562 6f6f 745f  xity.  - reboot_
│ │ │ -001084b0: 7265 7175 6972 6564 0a20 202d 2072 6573  required.  - res
│ │ │ -001084c0: 7472 6963 745f 7374 7261 7465 6779 0a0a  trict_strategy..
│ │ │ -001084d0: 2d20 6e61 6d65 3a20 4368 6563 6b20 6966  - name: Check if
│ │ │ -001084e0: 2070 7469 2061 7267 756d 656e 7420 6973   pti argument is
│ │ │ -001084f0: 2061 6c72 6561 6479 2070 7265 7365 6e74   already present
│ │ │ -00108500: 0a20 2061 6e73 6962 6c65 2e62 7569 6c74  .  ansible.built
│ │ │ -00108510: 696e 2e63 6f6d 6d61 6e64 3a20 2f73 6269  in.command: /sbi
│ │ │ -00108520: 6e2f 6772 7562 6279 202d 2d69 6e66 6f3d  n/grubby --info=
│ │ │ -00108530: 414c 4c0a 2020 7265 6769 7374 6572 3a20  ALL.  register: 
│ │ │ -00108540: 6772 7562 6279 5f69 6e66 6f0a 2020 6368  grubby_info.  ch
│ │ │ -00108550: 6563 6b5f 6d6f 6465 3a20 6661 6c73 650a  eck_mode: false.
│ │ │ -00108560: 2020 6368 616e 6765 645f 7768 656e 3a20    changed_when: 
│ │ │ -00108570: 6661 6c73 650a 2020 6661 696c 6564 5f77  false.  failed_w
│ │ │ -00108580: 6865 6e3a 2066 616c 7365 0a20 2077 6865  hen: false.  whe
│ │ │ -00108590: 6e3a 2028 2022 6772 7562 322d 636f 6d6d  n: ( "grub2-comm
│ │ │ -001085a0: 6f6e 2220 696e 2061 6e73 6962 6c65 5f66  on" in ansible_f
│ │ │ -001085b0: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ -001085c0: 6420 226b 6572 6e65 6c22 2069 6e20 616e  d "kernel" in an
│ │ │ -001085d0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -001085e0: 6167 6573 0a20 2020 2029 0a20 2074 6167  ages.    ).  tag
│ │ │ -001085f0: 733a 0a20 202d 204e 4953 542d 3830 302d  s:.  - NIST-800-
│ │ │ -00108600: 3533 2d53 492d 3136 0a20 202d 2067 7275  53-SI-16.  - gru
│ │ │ -00108610: 6232 5f70 7469 5f61 7267 756d 656e 740a  b2_pti_argument.
│ │ │ -00108620: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ -00108630: 6f6e 0a20 202d 206c 6f77 5f73 6576 6572  on.  - low_sever
│ │ │ -00108640: 6974 790a 2020 2d20 6d65 6469 756d 5f63  ity.  - medium_c
│ │ │ -00108650: 6f6d 706c 6578 6974 790a 2020 2d20 7265  omplexity.  - re
│ │ │ -00108660: 626f 6f74 5f72 6571 7569 7265 640a 2020  boot_required.  
│ │ │ -00108670: 2d20 7265 7374 7269 6374 5f73 7472 6174  - restrict_strat
│ │ │ -00108680: 6567 790a 0a2d 206e 616d 653a 2055 7064  egy..- name: Upd
│ │ │ -00108690: 6174 6520 6772 7562 2064 6566 6175 6c74  ate grub default
│ │ │ -001086a0: 7320 616e 6420 7468 6520 626f 6f74 6c6f  s and the bootlo
│ │ │ -001086b0: 6164 6572 206d 656e 750a 2020 616e 7369  ader menu.  ansi
│ │ │ -001086c0: 626c 652e 6275 696c 7469 6e2e 636f 6d6d  ble.builtin.comm
│ │ │ -001086d0: 616e 643a 202f 7362 696e 2f67 7275 6262  and: /sbin/grubb
│ │ │ -001086e0: 7920 2d2d 7570 6461 7465 2d6b 6572 6e65  y --update-kerne
│ │ │ -001086f0: 6c3d 414c 4c20 2d2d 6172 6773 3d22 7074  l=ALL --args="pt
│ │ │ -00108700: 693d 6f6e 220a 2020 7768 656e 3a0a 2020  i=on".  when:.  
│ │ │ -00108710: 2d20 2820 2267 7275 6232 2d63 6f6d 6d6f  - ( "grub2-commo
│ │ │ -00108720: 6e22 2069 6e20 616e 7369 626c 655f 6661  n" in ansible_fa
│ │ │ -00108730: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ -00108740: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ -00108750: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -00108760: 6765 730a 2020 2020 290a 2020 2d20 2867  ges.    ).  - (g
│ │ │ -00108770: 7275 6262 795f 696e 666f 2e73 7464 6f75  rubby_info.stdou
│ │ │ -00108780: 7420 6973 206e 6f74 2073 6561 7263 6828  t is not search(
│ │ │ -00108790: 2770 7469 3d6f 6e27 2929 206f 7220 2828  'pti=on')) or ((
│ │ │ -001087a0: 6574 635f 6465 6661 756c 745f 6772 7562  etc_default_grub
│ │ │ -001087b0: 5b27 636f 6e74 656e 7427 5d0a 2020 2020  ['content'].    
│ │ │ -001087c0: 7c20 6236 3464 6563 6f64 6529 2069 7320  | b64decode) is 
│ │ │ -001087d0: 6e6f 7420 7365 6172 6368 2827 7074 693d  not search('pti=
│ │ │ -001087e0: 6f6e 2729 290a 2020 7461 6773 3a0a 2020  on')).  tags:.  
│ │ │ -001087f0: 2d20 4e49 5354 2d38 3030 2d35 332d 5349  - NIST-800-53-SI
│ │ │ -00108800: 2d31 360a 2020 2d20 6772 7562 325f 7074  -16.  - grub2_pt
│ │ │ -00108810: 695f 6172 6775 6d65 6e74 0a20 202d 206c  i_argument.  - l
│ │ │ -00108820: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ -00108830: 2d20 6c6f 775f 7365 7665 7269 7479 0a20  - low_severity. 
│ │ │ -00108840: 202d 206d 6564 6975 6d5f 636f 6d70 6c65   - medium_comple
│ │ │ -00108850: 7869 7479 0a20 202d 2072 6562 6f6f 745f  xity.  - reboot_
│ │ │ -00108860: 7265 7175 6972 6564 0a20 202d 2072 6573  required.  - res
│ │ │ -00108870: 7472 6963 745f 7374 7261 7465 6779 0a3c  trict_strategy.<
│ │ │ +00107fd0: 696f 6e20 416e 7369 626c 6520 736e 6970  ion Ansible snip
│ │ │ +00107fe0: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c  pet ...
< │ │ │ +00107ff0: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +00108000: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +00108010: 7365 2220 6964 3d22 6964 3237 3222 3e3c se" id="id272">< │ │ │ +00108020: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +00108030: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +00108040: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +00108050: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +00108060: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >
│ │ │ +001080e0: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
C │ │ │ -001081b0: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disru │ │ │ -001081e0: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ -001081f0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:true
Strate │ │ │ -00108230: 6779 3a3c 2f74 683e 3c74 643e 7265 7374 gy:rest │ │ │ -00108240: 7269 6374 3c2f 7464 3e3c 2f74 723e 3c2f rict
Complex │ │ │ +00108070: 6974 793a 3c2f 7468 3e3c 7464 3e6d 6564 ity:med │ │ │ +00108080: 6975 6d3c 2f74 643e 3c2f 7472 3e3c 7472 ium
Disruption: │ │ │ +001080a0: 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f 7464 low
Re │ │ │ +001080c0: 626f 6f74 3a3c 2f74 683e 3c74 643e 7472 boot:tr │ │ │ +001080d0: 7565 3c2f 7464 3e3c 2f74 723e 3c74 723e ue
Strategy:restrict
│ │ │ +00108110: 3c70 7265 3e3c 636f 6465 3e2d 206e 616d
- nam
│ │ │ +00108120: 653a 2047 6174 6865 7220 7468 6520 7061  e: Gather the pa
│ │ │ +00108130: 636b 6167 6520 6661 6374 730a 2020 7061  ckage facts.  pa
│ │ │ +00108140: 636b 6167 655f 6661 6374 733a 0a20 2020  ckage_facts:.   
│ │ │ +00108150: 206d 616e 6167 6572 3a20 6175 746f 0a20   manager: auto. 
│ │ │ +00108160: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ +00108170: 3830 302d 3533 2d53 492d 3136 0a20 202d  800-53-SI-16.  -
│ │ │ +00108180: 2067 7275 6232 5f70 7469 5f61 7267 756d   grub2_pti_argum
│ │ │ +00108190: 656e 740a 2020 2d20 6c6f 775f 6469 7372  ent.  - low_disr
│ │ │ +001081a0: 7570 7469 6f6e 0a20 202d 206c 6f77 5f73  uption.  - low_s
│ │ │ +001081b0: 6576 6572 6974 790a 2020 2d20 6d65 6469  everity.  - medi
│ │ │ +001081c0: 756d 5f63 6f6d 706c 6578 6974 790a 2020  um_complexity.  
│ │ │ +001081d0: 2d20 7265 626f 6f74 5f72 6571 7569 7265  - reboot_require
│ │ │ +001081e0: 640a 2020 2d20 7265 7374 7269 6374 5f73  d.  - restrict_s
│ │ │ +001081f0: 7472 6174 6567 790a 0a2d 206e 616d 653a  trategy..- name:
│ │ │ +00108200: 2043 6865 636b 2069 6620 7074 6920 6172   Check if pti ar
│ │ │ +00108210: 6775 6d65 6e74 2069 7320 616c 7265 6164  gument is alread
│ │ │ +00108220: 7920 7072 6573 656e 7420 696e 202f 6574  y present in /et
│ │ │ +00108230: 632f 6465 6661 756c 742f 6772 7562 0a20  c/default/grub. 
│ │ │ +00108240: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ +00108250: 2e73 6c75 7270 3a0a 2020 2020 7372 633a  .slurp:.    src:
│ │ │ +00108260: 202f 6574 632f 6465 6661 756c 742f 6772   /etc/default/gr
│ │ │ +00108270: 7562 0a20 2072 6567 6973 7465 723a 2065  ub.  register: e
│ │ │ +00108280: 7463 5f64 6566 6175 6c74 5f67 7275 620a  tc_default_grub.
│ │ │ +00108290: 2020 7768 656e 3a20 2820 2267 7275 6232    when: ( "grub2
│ │ │ +001082a0: 2d63 6f6d 6d6f 6e22 2069 6e20 616e 7369  -common" in ansi
│ │ │ +001082b0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +001082c0: 6573 2061 6e64 2022 6b65 726e 656c 2220  es and "kernel" 
│ │ │ +001082d0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +001082e0: 2e70 6163 6b61 6765 730a 2020 2020 290a  .packages.    ).
│ │ │ +001082f0: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ +00108300: 2d38 3030 2d35 332d 5349 2d31 360a 2020  -800-53-SI-16.  
│ │ │ +00108310: 2d20 6772 7562 325f 7074 695f 6172 6775  - grub2_pti_argu
│ │ │ +00108320: 6d65 6e74 0a20 202d 206c 6f77 5f64 6973  ment.  - low_dis
│ │ │ +00108330: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f  ruption.  - low_
│ │ │ +00108340: 7365 7665 7269 7479 0a20 202d 206d 6564  severity.  - med
│ │ │ +00108350: 6975 6d5f 636f 6d70 6c65 7869 7479 0a20  ium_complexity. 
│ │ │ +00108360: 202d 2072 6562 6f6f 745f 7265 7175 6972   - reboot_requir
│ │ │ +00108370: 6564 0a20 202d 2072 6573 7472 6963 745f  ed.  - restrict_
│ │ │ +00108380: 7374 7261 7465 6779 0a0a 2d20 6e61 6d65  strategy..- name
│ │ │ +00108390: 3a20 4368 6563 6b20 6966 2070 7469 2061  : Check if pti a
│ │ │ +001083a0: 7267 756d 656e 7420 6973 2061 6c72 6561  rgument is alrea
│ │ │ +001083b0: 6479 2070 7265 7365 6e74 0a20 2061 6e73  dy present.  ans
│ │ │ +001083c0: 6962 6c65 2e62 7569 6c74 696e 2e63 6f6d  ible.builtin.com
│ │ │ +001083d0: 6d61 6e64 3a20 2f73 6269 6e2f 6772 7562  mand: /sbin/grub
│ │ │ +001083e0: 6279 202d 2d69 6e66 6f3d 414c 4c0a 2020  by --info=ALL.  
│ │ │ +001083f0: 7265 6769 7374 6572 3a20 6772 7562 6279  register: grubby
│ │ │ +00108400: 5f69 6e66 6f0a 2020 6368 6563 6b5f 6d6f  _info.  check_mo
│ │ │ +00108410: 6465 3a20 6661 6c73 650a 2020 6368 616e  de: false.  chan
│ │ │ +00108420: 6765 645f 7768 656e 3a20 6661 6c73 650a  ged_when: false.
│ │ │ +00108430: 2020 6661 696c 6564 5f77 6865 6e3a 2066    failed_when: f
│ │ │ +00108440: 616c 7365 0a20 2077 6865 6e3a 2028 2022  alse.  when: ( "
│ │ │ +00108450: 6772 7562 322d 636f 6d6d 6f6e 2220 696e  grub2-common" in
│ │ │ +00108460: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +00108470: 6163 6b61 6765 7320 616e 6420 226b 6572  ackages and "ker
│ │ │ +00108480: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ +00108490: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ +001084a0: 2020 2029 0a20 2074 6167 733a 0a20 202d     ).  tags:.  -
│ │ │ +001084b0: 204e 4953 542d 3830 302d 3533 2d53 492d   NIST-800-53-SI-
│ │ │ +001084c0: 3136 0a20 202d 2067 7275 6232 5f70 7469  16.  - grub2_pti
│ │ │ +001084d0: 5f61 7267 756d 656e 740a 2020 2d20 6c6f  _argument.  - lo
│ │ │ +001084e0: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ +001084f0: 206c 6f77 5f73 6576 6572 6974 790a 2020   low_severity.  
│ │ │ +00108500: 2d20 6d65 6469 756d 5f63 6f6d 706c 6578  - medium_complex
│ │ │ +00108510: 6974 790a 2020 2d20 7265 626f 6f74 5f72  ity.  - reboot_r
│ │ │ +00108520: 6571 7569 7265 640a 2020 2d20 7265 7374  equired.  - rest
│ │ │ +00108530: 7269 6374 5f73 7472 6174 6567 790a 0a2d  rict_strategy..-
│ │ │ +00108540: 206e 616d 653a 2055 7064 6174 6520 6772   name: Update gr
│ │ │ +00108550: 7562 2064 6566 6175 6c74 7320 616e 6420  ub defaults and 
│ │ │ +00108560: 7468 6520 626f 6f74 6c6f 6164 6572 206d  the bootloader m
│ │ │ +00108570: 656e 750a 2020 616e 7369 626c 652e 6275  enu.  ansible.bu
│ │ │ +00108580: 696c 7469 6e2e 636f 6d6d 616e 643a 202f  iltin.command: /
│ │ │ +00108590: 7362 696e 2f67 7275 6262 7920 2d2d 7570  sbin/grubby --up
│ │ │ +001085a0: 6461 7465 2d6b 6572 6e65 6c3d 414c 4c20  date-kernel=ALL 
│ │ │ +001085b0: 2d2d 6172 6773 3d22 7074 693d 6f6e 220a  --args="pti=on".
│ │ │ +001085c0: 2020 7768 656e 3a0a 2020 2d20 2820 2267    when:.  - ( "g
│ │ │ +001085d0: 7275 6232 2d63 6f6d 6d6f 6e22 2069 6e20  rub2-common" in 
│ │ │ +001085e0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +001085f0: 636b 6167 6573 2061 6e64 2022 6b65 726e  ckages and "kern
│ │ │ +00108600: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ +00108610: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ +00108620: 2020 290a 2020 2d20 2867 7275 6262 795f    ).  - (grubby_
│ │ │ +00108630: 696e 666f 2e73 7464 6f75 7420 6973 206e  info.stdout is n
│ │ │ +00108640: 6f74 2073 6561 7263 6828 2770 7469 3d6f  ot search('pti=o
│ │ │ +00108650: 6e27 2929 206f 7220 2828 6574 635f 6465  n')) or ((etc_de
│ │ │ +00108660: 6661 756c 745f 6772 7562 5b27 636f 6e74  fault_grub['cont
│ │ │ +00108670: 656e 7427 5d0a 2020 2020 7c20 6236 3464  ent'].    | b64d
│ │ │ +00108680: 6563 6f64 6529 2069 7320 6e6f 7420 7365  ecode) is not se
│ │ │ +00108690: 6172 6368 2827 7074 693d 6f6e 2729 290a  arch('pti=on')).
│ │ │ +001086a0: 2020 7461 6773 3a0a 2020 2d20 4e49 5354    tags:.  - NIST
│ │ │ +001086b0: 2d38 3030 2d35 332d 5349 2d31 360a 2020  -800-53-SI-16.  
│ │ │ +001086c0: 2d20 6772 7562 325f 7074 695f 6172 6775  - grub2_pti_argu
│ │ │ +001086d0: 6d65 6e74 0a20 202d 206c 6f77 5f64 6973  ment.  - low_dis
│ │ │ +001086e0: 7275 7074 696f 6e0a 2020 2d20 6c6f 775f  ruption.  - low_
│ │ │ +001086f0: 7365 7665 7269 7479 0a20 202d 206d 6564  severity.  - med
│ │ │ +00108700: 6975 6d5f 636f 6d70 6c65 7869 7479 0a20  ium_complexity. 
│ │ │ +00108710: 202d 2072 6562 6f6f 745f 7265 7175 6972   - reboot_requir
│ │ │ +00108720: 6564 0a20 202d 2072 6573 7472 6963 745f  ed.  - restrict_
│ │ │ +00108730: 7374 7261 7465 6779 0a3c 2f63 6f64 653e  strategy.
│ │ │ +00108740: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ +001087f0: 7469 6f6e 204f 5342 7569 6c64 2042 6c75 tion OSBuild Blu │ │ │ +00108800: 6570 7269 6e74 2073 6e69 7070 6574 20e2 eprint snippet . │ │ │ +00108810: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
<
│ │ │ +00108850: 636f 6465 3e5b 6375 7374 6f6d 697a 6174  code>[customizat
│ │ │ +00108860: 696f 6e73 2e6b 6572 6e65 6c5d 0a61 7070  ions.kernel].app
│ │ │ +00108870: 656e 6420 3d20 2270 7469 3d6f 6e22 0a3c  end = "pti=on".<
│ │ │  00108880: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
Remediation O │ │ │ -00109a40: 5342 7569 6c64 2042 6c75 6570 7269 6e74 SBuild Blueprint │ │ │ -00109a50: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ -00109a60: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
[
│ │ │ -00109aa0: 6375 7374 6f6d 697a 6174 696f 6e73 2e6b  customizations.k
│ │ │ -00109ab0: 6572 6e65 6c5d 0a61 7070 656e 6420 3d20  ernel].append = 
│ │ │ -00109ac0: 2272 6e67 5f63 6f72 652e 6465 6661 756c  "rng_core.defaul
│ │ │ -00109ad0: 745f 7175 616c 6974 793d 3c61 6262 7220  t_quality=500".<
│ │ │ -00109b50: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ -00109c00: 656d 6564 6961 7469 6f6e 2041 6e73 6962 emediation Ansib │ │ │ -00109c10: 6c65 2073 6e69 7070 6574 20e2 87b2 3c2f le snippet ...
│ │ │ -00109cb0: 3c74 643e 6d65 6469 756d 3c2f 7464 3e3c < │ │ │ -00109cc0: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ -00109d40: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
- name: Gather
│ │ │ -00109d60: 2074 6865 2070 6163 6b61 6765 2066 6163   the package fac
│ │ │ -00109d70: 7473 0a20 2070 6163 6b61 6765 5f66 6163  ts.  package_fac
│ │ │ -00109d80: 7473 3a0a 2020 2020 6d61 6e61 6765 723a  ts:.    manager:
│ │ │ -00109d90: 2061 7574 6f0a 2020 7461 6773 3a0a 2020   auto.  tags:.  
│ │ │ -00109da0: 2d20 6772 7562 325f 726e 675f 636f 7265  - grub2_rng_core
│ │ │ -00109db0: 5f64 6566 6175 6c74 5f71 7561 6c69 7479  _default_quality
│ │ │ -00109dc0: 5f61 7267 756d 656e 740a 2020 2d20 6c6f  _argument.  - lo
│ │ │ -00109dd0: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ -00109de0: 206c 6f77 5f73 6576 6572 6974 790a 2020   low_severity.  
│ │ │ -00109df0: 2d20 6d65 6469 756d 5f63 6f6d 706c 6578  - medium_complex
│ │ │ -00109e00: 6974 790a 2020 2d20 7265 626f 6f74 5f72  ity.  - reboot_r
│ │ │ -00109e10: 6571 7569 7265 640a 2020 2d20 7265 7374  equired.  - rest
│ │ │ -00109e20: 7269 6374 5f73 7472 6174 6567 790a 2d20  rict_strategy.- 
│ │ │ -00109e30: 6e61 6d65 3a20 5843 4344 4620 5661 6c75  name: XCCDF Valu
│ │ │ -00109e40: 6520 7661 725f 726e 675f 636f 7265 5f64  e var_rng_core_d
│ │ │ -00109e50: 6566 6175 6c74 5f71 7561 6c69 7479 2023  efault_quality #
│ │ │ -00109e60: 2070 726f 6d6f 7465 2074 6f20 7661 7269   promote to vari
│ │ │ -00109e70: 6162 6c65 0a20 2073 6574 5f66 6163 743a  able.  set_fact:
│ │ │ -00109e80: 0a20 2020 2076 6172 5f72 6e67 5f63 6f72  .    var_rng_cor
│ │ │ -00109e90: 655f 6465 6661 756c 745f 7175 616c 6974  e_default_qualit
│ │ │ -00109ea0: 793a 2021 2173 7472 203c 6162 6272 2074  y: !!str 500.  t
│ │ │ -00109f20: 6167 733a 0a20 2020 202d 2061 6c77 6179  ags:.    - alway
│ │ │ -00109f30: 730a 0a2d 206e 616d 653a 2043 6865 636b  s..- name: Check
│ │ │ -00109f40: 2069 6620 726e 675f 636f 7265 2e64 6566   if rng_core.def
│ │ │ -00109f50: 6175 6c74 5f71 7561 6c69 7479 2061 7267  ault_quality arg
│ │ │ -00109f60: 756d 656e 7420 6973 2061 6c72 6561 6479  ument is already
│ │ │ -00109f70: 2070 7265 7365 6e74 2069 6e20 2f65 7463   present in /etc
│ │ │ -00109f80: 2f64 6566 6175 6c74 2f67 7275 620a 2020  /default/grub.  
│ │ │ -00109f90: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ -00109fa0: 736c 7572 703a 0a20 2020 2073 7263 3a20  slurp:.    src: 
│ │ │ -00109fb0: 2f65 7463 2f64 6566 6175 6c74 2f67 7275  /etc/default/gru
│ │ │ -00109fc0: 620a 2020 7265 6769 7374 6572 3a20 6574  b.  register: et
│ │ │ -00109fd0: 635f 6465 6661 756c 745f 6772 7562 0a20  c_default_grub. 
│ │ │ -00109fe0: 2077 6865 6e3a 2028 2022 6772 7562 322d   when: ( "grub2-
│ │ │ -00109ff0: 636f 6d6d 6f6e 2220 696e 2061 6e73 6962  common" in ansib
│ │ │ -0010a000: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -0010a010: 7320 616e 6420 226b 6572 6e65 6c22 2069  s and "kernel" i
│ │ │ -0010a020: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -0010a030: 7061 636b 6167 6573 0a20 2020 2029 0a20  packages.    ). 
│ │ │ -0010a040: 2074 6167 733a 0a20 202d 2067 7275 6232   tags:.  - grub2
│ │ │ -0010a050: 5f72 6e67 5f63 6f72 655f 6465 6661 756c  _rng_core_defaul
│ │ │ -0010a060: 745f 7175 616c 6974 795f 6172 6775 6d65  t_quality_argume
│ │ │ -0010a070: 6e74 0a20 202d 206c 6f77 5f64 6973 7275  nt.  - low_disru
│ │ │ -0010a080: 7074 696f 6e0a 2020 2d20 6c6f 775f 7365  ption.  - low_se
│ │ │ -0010a090: 7665 7269 7479 0a20 202d 206d 6564 6975  verity.  - mediu
│ │ │ -0010a0a0: 6d5f 636f 6d70 6c65 7869 7479 0a20 202d  m_complexity.  -
│ │ │ -0010a0b0: 2072 6562 6f6f 745f 7265 7175 6972 6564   reboot_required
│ │ │ -0010a0c0: 0a20 202d 2072 6573 7472 6963 745f 7374  .  - restrict_st
│ │ │ -0010a0d0: 7261 7465 6779 0a0a 2d20 6e61 6d65 3a20  rategy..- name: 
│ │ │ -0010a0e0: 4368 6563 6b20 6966 2072 6e67 5f63 6f72  Check if rng_cor
│ │ │ -0010a0f0: 652e 6465 6661 756c 745f 7175 616c 6974  e.default_qualit
│ │ │ -0010a100: 7920 6172 6775 6d65 6e74 2069 7320 616c  y argument is al
│ │ │ -0010a110: 7265 6164 7920 7072 6573 656e 740a 2020  ready present.  
│ │ │ -0010a120: 616e 7369 626c 652e 6275 696c 7469 6e2e  ansible.builtin.
│ │ │ -0010a130: 636f 6d6d 616e 643a 202f 7362 696e 2f67  command: /sbin/g
│ │ │ -0010a140: 7275 6262 7920 2d2d 696e 666f 3d41 4c4c  rubby --info=ALL
│ │ │ -0010a150: 0a20 2072 6567 6973 7465 723a 2067 7275  .  register: gru
│ │ │ -0010a160: 6262 795f 696e 666f 0a20 2063 6865 636b  bby_info.  check
│ │ │ -0010a170: 5f6d 6f64 653a 2066 616c 7365 0a20 2063  _mode: false.  c
│ │ │ -0010a180: 6861 6e67 6564 5f77 6865 6e3a 2066 616c  hanged_when: fal
│ │ │ -0010a190: 7365 0a20 2066 6169 6c65 645f 7768 656e  se.  failed_when
│ │ │ -0010a1a0: 3a20 6661 6c73 650a 2020 7768 656e 3a20  : false.  when: 
│ │ │ -0010a1b0: 2820 2267 7275 6232 2d63 6f6d 6d6f 6e22  ( "grub2-common"
│ │ │ -0010a1c0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -0010a1d0: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ -0010a1e0: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ -0010a1f0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -0010a200: 730a 2020 2020 290a 2020 7461 6773 3a0a  s.    ).  tags:.
│ │ │ -0010a210: 2020 2d20 6772 7562 325f 726e 675f 636f    - grub2_rng_co
│ │ │ -0010a220: 7265 5f64 6566 6175 6c74 5f71 7561 6c69  re_default_quali
│ │ │ -0010a230: 7479 5f61 7267 756d 656e 740a 2020 2d20  ty_argument.  - 
│ │ │ -0010a240: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ -0010a250: 202d 206c 6f77 5f73 6576 6572 6974 790a   - low_severity.
│ │ │ -0010a260: 2020 2d20 6d65 6469 756d 5f63 6f6d 706c    - medium_compl
│ │ │ -0010a270: 6578 6974 790a 2020 2d20 7265 626f 6f74  exity.  - reboot
│ │ │ -0010a280: 5f72 6571 7569 7265 640a 2020 2d20 7265  _required.  - re
│ │ │ -0010a290: 7374 7269 6374 5f73 7472 6174 6567 790a  strict_strategy.
│ │ │ -0010a2a0: 0a2d 206e 616d 653a 2055 7064 6174 6520  .- name: Update 
│ │ │ -0010a2b0: 6772 7562 2064 6566 6175 6c74 7320 616e  grub defaults an
│ │ │ -0010a2c0: 6420 7468 6520 626f 6f74 6c6f 6164 6572  d the bootloader
│ │ │ -0010a2d0: 206d 656e 750a 2020 616e 7369 626c 652e   menu.  ansible.
│ │ │ -0010a2e0: 6275 696c 7469 6e2e 636f 6d6d 616e 643a  builtin.command:
│ │ │ -0010a2f0: 202f 7362 696e 2f67 7275 6262 7920 2d2d   /sbin/grubby --
│ │ │ -0010a300: 7570 6461 7465 2d6b 6572 6e65 6c3d 414c  update-kernel=AL
│ │ │ -0010a310: 4c20 2d2d 6172 6773 3d22 726e 675f 636f  L --args="rng_co
│ │ │ -0010a320: 7265 2e64 6566 6175 6c74 5f71 7561 6c69  re.default_quali
│ │ │ -0010a330: 7479 3d7b 7b0a 2020 2020 7661 725f 726e  ty={{.    var_rn
│ │ │ -0010a340: 675f 636f 7265 5f64 6566 6175 6c74 5f71  g_core_default_q
│ │ │ -0010a350: 7561 6c69 7479 207d 7d22 0a20 2077 6865  uality }}".  whe
│ │ │ -0010a360: 6e3a 0a20 202d 2028 2022 6772 7562 322d  n:.  - ( "grub2-
│ │ │ -0010a370: 636f 6d6d 6f6e 2220 696e 2061 6e73 6962  common" in ansib
│ │ │ -0010a380: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -0010a390: 7320 616e 6420 226b 6572 6e65 6c22 2069  s and "kernel" i
│ │ │ -0010a3a0: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -0010a3b0: 7061 636b 6167 6573 0a20 2020 2029 0a20  packages.    ). 
│ │ │ -0010a3c0: 202d 2028 6772 7562 6279 5f69 6e66 6f2e   - (grubby_info.
│ │ │ -0010a3d0: 7374 646f 7574 2069 7320 6e6f 7420 7365  stdout is not se
│ │ │ -0010a3e0: 6172 6368 2827 726e 675f 636f 7265 2e64  arch('rng_core.d
│ │ │ -0010a3f0: 6566 6175 6c74 5f71 7561 6c69 7479 3d27  efault_quality='
│ │ │ -0010a400: 207e 2076 6172 5f72 6e67 5f63 6f72 655f   ~ var_rng_core_
│ │ │ -0010a410: 6465 6661 756c 745f 7175 616c 6974 7929  default_quality)
│ │ │ -0010a420: 290a 2020 2020 6f72 2028 2865 7463 5f64  ).    or ((etc_d
│ │ │ -0010a430: 6566 6175 6c74 5f67 7275 625b 2763 6f6e  efault_grub['con
│ │ │ -0010a440: 7465 6e74 275d 207c 2062 3634 6465 636f  tent'] | b64deco
│ │ │ -0010a450: 6465 2920 6973 206e 6f74 2073 6561 7263  de) is not searc
│ │ │ -0010a460: 6828 2772 6e67 5f63 6f72 652e 6465 6661  h('rng_core.defa
│ │ │ -0010a470: 756c 745f 7175 616c 6974 793d 270a 2020  ult_quality='.  
│ │ │ -0010a480: 2020 7e20 7661 725f 726e 675f 636f 7265    ~ var_rng_core
│ │ │ -0010a490: 5f64 6566 6175 6c74 5f71 7561 6c69 7479  _default_quality
│ │ │ -0010a4a0: 2929 0a20 2074 6167 733a 0a20 202d 2067  )).  tags:.  - g
│ │ │ -0010a4b0: 7275 6232 5f72 6e67 5f63 6f72 655f 6465  rub2_rng_core_de
│ │ │ -0010a4c0: 6661 756c 745f 7175 616c 6974 795f 6172  fault_quality_ar
│ │ │ -0010a4d0: 6775 6d65 6e74 0a20 202d 206c 6f77 5f64  gument.  - low_d
│ │ │ -0010a4e0: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ -0010a4f0: 775f 7365 7665 7269 7479 0a20 202d 206d  w_severity.  - m
│ │ │ -0010a500: 6564 6975 6d5f 636f 6d70 6c65 7869 7479  edium_complexity
│ │ │ -0010a510: 0a20 202d 2072 6562 6f6f 745f 7265 7175  .  - reboot_requ
│ │ │ -0010a520: 6972 6564 0a20 202d 2072 6573 7472 6963  ired.  - restric
│ │ │ -0010a530: 745f 7374 7261 7465 6779 0a3c 2f63 6f64  t_strategy.Remediation A
│ │ │ +00109a40: 6e73 6962 6c65 2073 6e69 7070 6574 20e2  nsible snippet .
│ │ │ +00109a50: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063  ..
│ │ │ -00109ca0: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:medium
Disr │ │ │ -00109cd0: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ -00109ce0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:true
Strat │ │ │ -00109d20: 6567 793a 3c2f 7468 3e3c 7464 3e72 6573 egy:res │ │ │ -00109d30: 7472 6963 743c 2f74 643e 3c2f 7472 3e3c trict
│ │ │ +00109ad0: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +00109b10: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472
Complexity:< │ │ │ +00109ae0: 2f74 683e 3c74 643e 6d65 6469 756d 3c2f /th>medium
│ │ │ +00109b00: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption:low
Reboot: │ │ │ +00109b30: 3c2f 7468 3e3c 7464 3e74 7275 653c 2f74 true
S │ │ │ +00109b50: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:restrict
│ │ │ +00109b80: 3c63 6f64 653e 2d20 6e61 6d65 3a20 4761  - name: Ga
│ │ │ +00109b90: 7468 6572 2074 6865 2070 6163 6b61 6765  ther the package
│ │ │ +00109ba0: 2066 6163 7473 0a20 2070 6163 6b61 6765   facts.  package
│ │ │ +00109bb0: 5f66 6163 7473 3a0a 2020 2020 6d61 6e61  _facts:.    mana
│ │ │ +00109bc0: 6765 723a 2061 7574 6f0a 2020 7461 6773  ger: auto.  tags
│ │ │ +00109bd0: 3a0a 2020 2d20 6772 7562 325f 726e 675f  :.  - grub2_rng_
│ │ │ +00109be0: 636f 7265 5f64 6566 6175 6c74 5f71 7561  core_default_qua
│ │ │ +00109bf0: 6c69 7479 5f61 7267 756d 656e 740a 2020  lity_argument.  
│ │ │ +00109c00: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e  - low_disruption
│ │ │ +00109c10: 0a20 202d 206c 6f77 5f73 6576 6572 6974  .  - low_severit
│ │ │ +00109c20: 790a 2020 2d20 6d65 6469 756d 5f63 6f6d  y.  - medium_com
│ │ │ +00109c30: 706c 6578 6974 790a 2020 2d20 7265 626f  plexity.  - rebo
│ │ │ +00109c40: 6f74 5f72 6571 7569 7265 640a 2020 2d20  ot_required.  - 
│ │ │ +00109c50: 7265 7374 7269 6374 5f73 7472 6174 6567  restrict_strateg
│ │ │ +00109c60: 790a 2d20 6e61 6d65 3a20 5843 4344 4620  y.- name: XCCDF 
│ │ │ +00109c70: 5661 6c75 6520 7661 725f 726e 675f 636f  Value var_rng_co
│ │ │ +00109c80: 7265 5f64 6566 6175 6c74 5f71 7561 6c69  re_default_quali
│ │ │ +00109c90: 7479 2023 2070 726f 6d6f 7465 2074 6f20  ty # promote to 
│ │ │ +00109ca0: 7661 7269 6162 6c65 0a20 2073 6574 5f66  variable.  set_f
│ │ │ +00109cb0: 6163 743a 0a20 2020 2076 6172 5f72 6e67  act:.    var_rng
│ │ │ +00109cc0: 5f63 6f72 655f 6465 6661 756c 745f 7175  _core_default_qu
│ │ │ +00109cd0: 616c 6974 793a 2021 2173 7472 203c 6162  ality: !!str 500
│ │ │ +00109d50: 0a20 2074 6167 733a 0a20 2020 202d 2061  .  tags:.    - a
│ │ │ +00109d60: 6c77 6179 730a 0a2d 206e 616d 653a 2043  lways..- name: C
│ │ │ +00109d70: 6865 636b 2069 6620 726e 675f 636f 7265  heck if rng_core
│ │ │ +00109d80: 2e64 6566 6175 6c74 5f71 7561 6c69 7479  .default_quality
│ │ │ +00109d90: 2061 7267 756d 656e 7420 6973 2061 6c72   argument is alr
│ │ │ +00109da0: 6561 6479 2070 7265 7365 6e74 2069 6e20  eady present in 
│ │ │ +00109db0: 2f65 7463 2f64 6566 6175 6c74 2f67 7275  /etc/default/gru
│ │ │ +00109dc0: 620a 2020 616e 7369 626c 652e 6275 696c  b.  ansible.buil
│ │ │ +00109dd0: 7469 6e2e 736c 7572 703a 0a20 2020 2073  tin.slurp:.    s
│ │ │ +00109de0: 7263 3a20 2f65 7463 2f64 6566 6175 6c74  rc: /etc/default
│ │ │ +00109df0: 2f67 7275 620a 2020 7265 6769 7374 6572  /grub.  register
│ │ │ +00109e00: 3a20 6574 635f 6465 6661 756c 745f 6772  : etc_default_gr
│ │ │ +00109e10: 7562 0a20 2077 6865 6e3a 2028 2022 6772  ub.  when: ( "gr
│ │ │ +00109e20: 7562 322d 636f 6d6d 6f6e 2220 696e 2061  ub2-common" in a
│ │ │ +00109e30: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +00109e40: 6b61 6765 7320 616e 6420 226b 6572 6e65  kages and "kerne
│ │ │ +00109e50: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ +00109e60: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ +00109e70: 2029 0a20 2074 6167 733a 0a20 202d 2067   ).  tags:.  - g
│ │ │ +00109e80: 7275 6232 5f72 6e67 5f63 6f72 655f 6465  rub2_rng_core_de
│ │ │ +00109e90: 6661 756c 745f 7175 616c 6974 795f 6172  fault_quality_ar
│ │ │ +00109ea0: 6775 6d65 6e74 0a20 202d 206c 6f77 5f64  gument.  - low_d
│ │ │ +00109eb0: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ +00109ec0: 775f 7365 7665 7269 7479 0a20 202d 206d  w_severity.  - m
│ │ │ +00109ed0: 6564 6975 6d5f 636f 6d70 6c65 7869 7479  edium_complexity
│ │ │ +00109ee0: 0a20 202d 2072 6562 6f6f 745f 7265 7175  .  - reboot_requ
│ │ │ +00109ef0: 6972 6564 0a20 202d 2072 6573 7472 6963  ired.  - restric
│ │ │ +00109f00: 745f 7374 7261 7465 6779 0a0a 2d20 6e61  t_strategy..- na
│ │ │ +00109f10: 6d65 3a20 4368 6563 6b20 6966 2072 6e67  me: Check if rng
│ │ │ +00109f20: 5f63 6f72 652e 6465 6661 756c 745f 7175  _core.default_qu
│ │ │ +00109f30: 616c 6974 7920 6172 6775 6d65 6e74 2069  ality argument i
│ │ │ +00109f40: 7320 616c 7265 6164 7920 7072 6573 656e  s already presen
│ │ │ +00109f50: 740a 2020 616e 7369 626c 652e 6275 696c  t.  ansible.buil
│ │ │ +00109f60: 7469 6e2e 636f 6d6d 616e 643a 202f 7362  tin.command: /sb
│ │ │ +00109f70: 696e 2f67 7275 6262 7920 2d2d 696e 666f  in/grubby --info
│ │ │ +00109f80: 3d41 4c4c 0a20 2072 6567 6973 7465 723a  =ALL.  register:
│ │ │ +00109f90: 2067 7275 6262 795f 696e 666f 0a20 2063   grubby_info.  c
│ │ │ +00109fa0: 6865 636b 5f6d 6f64 653a 2066 616c 7365  heck_mode: false
│ │ │ +00109fb0: 0a20 2063 6861 6e67 6564 5f77 6865 6e3a  .  changed_when:
│ │ │ +00109fc0: 2066 616c 7365 0a20 2066 6169 6c65 645f   false.  failed_
│ │ │ +00109fd0: 7768 656e 3a20 6661 6c73 650a 2020 7768  when: false.  wh
│ │ │ +00109fe0: 656e 3a20 2820 2267 7275 6232 2d63 6f6d  en: ( "grub2-com
│ │ │ +00109ff0: 6d6f 6e22 2069 6e20 616e 7369 626c 655f  mon" in ansible_
│ │ │ +0010a000: 6661 6374 732e 7061 636b 6167 6573 2061  facts.packages a
│ │ │ +0010a010: 6e64 2022 6b65 726e 656c 2220 696e 2061  nd "kernel" in a
│ │ │ +0010a020: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +0010a030: 6b61 6765 730a 2020 2020 290a 2020 7461  kages.    ).  ta
│ │ │ +0010a040: 6773 3a0a 2020 2d20 6772 7562 325f 726e  gs:.  - grub2_rn
│ │ │ +0010a050: 675f 636f 7265 5f64 6566 6175 6c74 5f71  g_core_default_q
│ │ │ +0010a060: 7561 6c69 7479 5f61 7267 756d 656e 740a  uality_argument.
│ │ │ +0010a070: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ +0010a080: 6f6e 0a20 202d 206c 6f77 5f73 6576 6572  on.  - low_sever
│ │ │ +0010a090: 6974 790a 2020 2d20 6d65 6469 756d 5f63  ity.  - medium_c
│ │ │ +0010a0a0: 6f6d 706c 6578 6974 790a 2020 2d20 7265  omplexity.  - re
│ │ │ +0010a0b0: 626f 6f74 5f72 6571 7569 7265 640a 2020  boot_required.  
│ │ │ +0010a0c0: 2d20 7265 7374 7269 6374 5f73 7472 6174  - restrict_strat
│ │ │ +0010a0d0: 6567 790a 0a2d 206e 616d 653a 2055 7064  egy..- name: Upd
│ │ │ +0010a0e0: 6174 6520 6772 7562 2064 6566 6175 6c74  ate grub default
│ │ │ +0010a0f0: 7320 616e 6420 7468 6520 626f 6f74 6c6f  s and the bootlo
│ │ │ +0010a100: 6164 6572 206d 656e 750a 2020 616e 7369  ader menu.  ansi
│ │ │ +0010a110: 626c 652e 6275 696c 7469 6e2e 636f 6d6d  ble.builtin.comm
│ │ │ +0010a120: 616e 643a 202f 7362 696e 2f67 7275 6262  and: /sbin/grubb
│ │ │ +0010a130: 7920 2d2d 7570 6461 7465 2d6b 6572 6e65  y --update-kerne
│ │ │ +0010a140: 6c3d 414c 4c20 2d2d 6172 6773 3d22 726e  l=ALL --args="rn
│ │ │ +0010a150: 675f 636f 7265 2e64 6566 6175 6c74 5f71  g_core.default_q
│ │ │ +0010a160: 7561 6c69 7479 3d7b 7b0a 2020 2020 7661  uality={{.    va
│ │ │ +0010a170: 725f 726e 675f 636f 7265 5f64 6566 6175  r_rng_core_defau
│ │ │ +0010a180: 6c74 5f71 7561 6c69 7479 207d 7d22 0a20  lt_quality }}". 
│ │ │ +0010a190: 2077 6865 6e3a 0a20 202d 2028 2022 6772   when:.  - ( "gr
│ │ │ +0010a1a0: 7562 322d 636f 6d6d 6f6e 2220 696e 2061  ub2-common" in a
│ │ │ +0010a1b0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +0010a1c0: 6b61 6765 7320 616e 6420 226b 6572 6e65  kages and "kerne
│ │ │ +0010a1d0: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ +0010a1e0: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ +0010a1f0: 2029 0a20 202d 2028 6772 7562 6279 5f69   ).  - (grubby_i
│ │ │ +0010a200: 6e66 6f2e 7374 646f 7574 2069 7320 6e6f  nfo.stdout is no
│ │ │ +0010a210: 7420 7365 6172 6368 2827 726e 675f 636f  t search('rng_co
│ │ │ +0010a220: 7265 2e64 6566 6175 6c74 5f71 7561 6c69  re.default_quali
│ │ │ +0010a230: 7479 3d27 207e 2076 6172 5f72 6e67 5f63  ty=' ~ var_rng_c
│ │ │ +0010a240: 6f72 655f 6465 6661 756c 745f 7175 616c  ore_default_qual
│ │ │ +0010a250: 6974 7929 290a 2020 2020 6f72 2028 2865  ity)).    or ((e
│ │ │ +0010a260: 7463 5f64 6566 6175 6c74 5f67 7275 625b  tc_default_grub[
│ │ │ +0010a270: 2763 6f6e 7465 6e74 275d 207c 2062 3634  'content'] | b64
│ │ │ +0010a280: 6465 636f 6465 2920 6973 206e 6f74 2073  decode) is not s
│ │ │ +0010a290: 6561 7263 6828 2772 6e67 5f63 6f72 652e  earch('rng_core.
│ │ │ +0010a2a0: 6465 6661 756c 745f 7175 616c 6974 793d  default_quality=
│ │ │ +0010a2b0: 270a 2020 2020 7e20 7661 725f 726e 675f  '.    ~ var_rng_
│ │ │ +0010a2c0: 636f 7265 5f64 6566 6175 6c74 5f71 7561  core_default_qua
│ │ │ +0010a2d0: 6c69 7479 2929 0a20 2074 6167 733a 0a20  lity)).  tags:. 
│ │ │ +0010a2e0: 202d 2067 7275 6232 5f72 6e67 5f63 6f72   - grub2_rng_cor
│ │ │ +0010a2f0: 655f 6465 6661 756c 745f 7175 616c 6974  e_default_qualit
│ │ │ +0010a300: 795f 6172 6775 6d65 6e74 0a20 202d 206c  y_argument.  - l
│ │ │ +0010a310: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ +0010a320: 2d20 6c6f 775f 7365 7665 7269 7479 0a20  - low_severity. 
│ │ │ +0010a330: 202d 206d 6564 6975 6d5f 636f 6d70 6c65   - medium_comple
│ │ │ +0010a340: 7869 7479 0a20 202d 2072 6562 6f6f 745f  xity.  - reboot_
│ │ │ +0010a350: 7265 7175 6972 6564 0a20 202d 2072 6573  required.  - res
│ │ │ +0010a360: 7472 6963 745f 7374 7261 7465 6779 0a3c  trict_strategy.<
│ │ │ +0010a370: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ +0010a420: 656d 6564 6961 7469 6f6e 204f 5342 7569 emediation OSBui │ │ │ +0010a430: 6c64 2042 6c75 6570 7269 6e74 2073 6e69 ld Blueprint sni │ │ │ +0010a440: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ +0010a450: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ +0010a480: 3c70 7265 3e3c 636f 6465 3e5b 6375 7374
[cust
│ │ │ +0010a490: 6f6d 697a 6174 696f 6e73 2e6b 6572 6e65  omizations.kerne
│ │ │ +0010a4a0: 6c5d 0a61 7070 656e 6420 3d20 2272 6e67  l].append = "rng
│ │ │ +0010a4b0: 5f63 6f72 652e 6465 6661 756c 745f 7175  _core.default_qu
│ │ │ +0010a4c0: 616c 6974 793d 3c61 6262 7220 7469 746c  ality=5
│ │ │ +0010a530: 3030 3c2f 6162 6272 3e22 0a3c 2f63 6f64  00".
Remedia │ │ │ -0010b680: 7469 6f6e 204f 5342 7569 6c64 2042 6c75 tion OSBuild Blu │ │ │ -0010b690: 6570 7269 6e74 2073 6e69 7070 6574 20e2 eprint snippet . │ │ │ -0010b6a0: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
<
│ │ │ -0010b6e0: 636f 6465 3e5b 6375 7374 6f6d 697a 6174  code>[customizat
│ │ │ -0010b6f0: 696f 6e73 2e6b 6572 6e65 6c5d 0a61 7070  ions.kernel].app
│ │ │ -0010b700: 656e 6420 3d20 2273 6c61 625f 6e6f 6d65  end = "slab_nome
│ │ │ -0010b710: 7267 653d 7965 7322 0a3c 2f63 6f64 653e  rge=yes".
│ │ │ -0010b720: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ -0010b7d0: 7469 6f6e 2041 6e73 6962 6c65 2073 6e69 tion Ansible sni │ │ │ -0010b7e0: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ -0010b7f0: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -0010b820: 3c74 6162 6c65 2063 6c61 7373 3d22 7461
Comple │ │ │ -0010b870: 7869 7479 3a3c 2f74 683e 3c74 643e 6d65 xity:me │ │ │ -0010b880: 6469 756d 3c2f 7464 3e3c 2f74 723e 3c74 dium
Disruption │ │ │ -0010b8a0: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ -0010b8c0: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e74 eboot:t │ │ │ -0010b8d0: 7275 653c 2f74 643e 3c2f 7472 3e3c 7472 rue
Strategy:restrict< │ │ │ -0010b900: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
- na
│ │ │ -0010b920: 6d65 3a20 4761 7468 6572 2074 6865 2070  me: Gather the p
│ │ │ -0010b930: 6163 6b61 6765 2066 6163 7473 0a20 2070  ackage facts.  p
│ │ │ -0010b940: 6163 6b61 6765 5f66 6163 7473 3a0a 2020  ackage_facts:.  
│ │ │ -0010b950: 2020 6d61 6e61 6765 723a 2061 7574 6f0a    manager: auto.
│ │ │ -0010b960: 2020 7461 6773 3a0a 2020 2d20 6772 7562    tags:.  - grub
│ │ │ -0010b970: 325f 736c 6162 5f6e 6f6d 6572 6765 5f61  2_slab_nomerge_a
│ │ │ -0010b980: 7267 756d 656e 740a 2020 2d20 6c6f 775f  rgument.  - low_
│ │ │ -0010b990: 6469 7372 7570 7469 6f6e 0a20 202d 206d  disruption.  - m
│ │ │ -0010b9a0: 6564 6975 6d5f 636f 6d70 6c65 7869 7479  edium_complexity
│ │ │ -0010b9b0: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ -0010b9c0: 7269 7479 0a20 202d 2072 6562 6f6f 745f  rity.  - reboot_
│ │ │ -0010b9d0: 7265 7175 6972 6564 0a20 202d 2072 6573  required.  - res
│ │ │ -0010b9e0: 7472 6963 745f 7374 7261 7465 6779 0a0a  trict_strategy..
│ │ │ -0010b9f0: 2d20 6e61 6d65 3a20 4368 6563 6b20 6966  - name: Check if
│ │ │ -0010ba00: 2073 6c61 625f 6e6f 6d65 7267 6520 6172   slab_nomerge ar
│ │ │ -0010ba10: 6775 6d65 6e74 2069 7320 616c 7265 6164  gument is alread
│ │ │ -0010ba20: 7920 7072 6573 656e 7420 696e 202f 6574  y present in /et
│ │ │ -0010ba30: 632f 6465 6661 756c 742f 6772 7562 0a20  c/default/grub. 
│ │ │ -0010ba40: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ -0010ba50: 2e73 6c75 7270 3a0a 2020 2020 7372 633a  .slurp:.    src:
│ │ │ -0010ba60: 202f 6574 632f 6465 6661 756c 742f 6772   /etc/default/gr
│ │ │ -0010ba70: 7562 0a20 2072 6567 6973 7465 723a 2065  ub.  register: e
│ │ │ -0010ba80: 7463 5f64 6566 6175 6c74 5f67 7275 620a  tc_default_grub.
│ │ │ -0010ba90: 2020 7768 656e 3a20 2820 2267 7275 6232    when: ( "grub2
│ │ │ -0010baa0: 2d63 6f6d 6d6f 6e22 2069 6e20 616e 7369  -common" in ansi
│ │ │ -0010bab0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -0010bac0: 6573 2061 6e64 2022 6b65 726e 656c 2220  es and "kernel" 
│ │ │ -0010bad0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -0010bae0: 2e70 6163 6b61 6765 730a 2020 2020 290a  .packages.    ).
│ │ │ -0010baf0: 2020 7461 6773 3a0a 2020 2d20 6772 7562    tags:.  - grub
│ │ │ -0010bb00: 325f 736c 6162 5f6e 6f6d 6572 6765 5f61  2_slab_nomerge_a
│ │ │ -0010bb10: 7267 756d 656e 740a 2020 2d20 6c6f 775f  rgument.  - low_
│ │ │ -0010bb20: 6469 7372 7570 7469 6f6e 0a20 202d 206d  disruption.  - m
│ │ │ -0010bb30: 6564 6975 6d5f 636f 6d70 6c65 7869 7479  edium_complexity
│ │ │ -0010bb40: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ -0010bb50: 7269 7479 0a20 202d 2072 6562 6f6f 745f  rity.  - reboot_
│ │ │ -0010bb60: 7265 7175 6972 6564 0a20 202d 2072 6573  required.  - res
│ │ │ -0010bb70: 7472 6963 745f 7374 7261 7465 6779 0a0a  trict_strategy..
│ │ │ -0010bb80: 2d20 6e61 6d65 3a20 4368 6563 6b20 6966  - name: Check if
│ │ │ -0010bb90: 2073 6c61 625f 6e6f 6d65 7267 6520 6172   slab_nomerge ar
│ │ │ -0010bba0: 6775 6d65 6e74 2069 7320 616c 7265 6164  gument is alread
│ │ │ -0010bbb0: 7920 7072 6573 656e 740a 2020 616e 7369  y present.  ansi
│ │ │ -0010bbc0: 626c 652e 6275 696c 7469 6e2e 636f 6d6d  ble.builtin.comm
│ │ │ -0010bbd0: 616e 643a 202f 7362 696e 2f67 7275 6262  and: /sbin/grubb
│ │ │ -0010bbe0: 7920 2d2d 696e 666f 3d41 4c4c 0a20 2072  y --info=ALL.  r
│ │ │ -0010bbf0: 6567 6973 7465 723a 2067 7275 6262 795f  egister: grubby_
│ │ │ -0010bc00: 696e 666f 0a20 2063 6865 636b 5f6d 6f64  info.  check_mod
│ │ │ -0010bc10: 653a 2066 616c 7365 0a20 2063 6861 6e67  e: false.  chang
│ │ │ -0010bc20: 6564 5f77 6865 6e3a 2066 616c 7365 0a20  ed_when: false. 
│ │ │ -0010bc30: 2066 6169 6c65 645f 7768 656e 3a20 6661   failed_when: fa
│ │ │ -0010bc40: 6c73 650a 2020 7768 656e 3a20 2820 2267  lse.  when: ( "g
│ │ │ -0010bc50: 7275 6232 2d63 6f6d 6d6f 6e22 2069 6e20  rub2-common" in 
│ │ │ -0010bc60: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -0010bc70: 636b 6167 6573 2061 6e64 2022 6b65 726e  ckages and "kern
│ │ │ -0010bc80: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ -0010bc90: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ -0010bca0: 2020 290a 2020 7461 6773 3a0a 2020 2d20    ).  tags:.  - 
│ │ │ -0010bcb0: 6772 7562 325f 736c 6162 5f6e 6f6d 6572  grub2_slab_nomer
│ │ │ -0010bcc0: 6765 5f61 7267 756d 656e 740a 2020 2d20  ge_argument.  - 
│ │ │ -0010bcd0: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ -0010bce0: 202d 206d 6564 6975 6d5f 636f 6d70 6c65   - medium_comple
│ │ │ -0010bcf0: 7869 7479 0a20 202d 206d 6564 6975 6d5f  xity.  - medium_
│ │ │ -0010bd00: 7365 7665 7269 7479 0a20 202d 2072 6562  severity.  - reb
│ │ │ -0010bd10: 6f6f 745f 7265 7175 6972 6564 0a20 202d  oot_required.  -
│ │ │ -0010bd20: 2072 6573 7472 6963 745f 7374 7261 7465   restrict_strate
│ │ │ -0010bd30: 6779 0a0a 2d20 6e61 6d65 3a20 5570 6461  gy..- name: Upda
│ │ │ -0010bd40: 7465 2067 7275 6220 6465 6661 756c 7473  te grub defaults
│ │ │ -0010bd50: 2061 6e64 2074 6865 2062 6f6f 746c 6f61   and the bootloa
│ │ │ -0010bd60: 6465 7220 6d65 6e75 0a20 2061 6e73 6962  der menu.  ansib
│ │ │ -0010bd70: 6c65 2e62 7569 6c74 696e 2e63 6f6d 6d61  le.builtin.comma
│ │ │ -0010bd80: 6e64 3a20 2f73 6269 6e2f 6772 7562 6279  nd: /sbin/grubby
│ │ │ -0010bd90: 202d 2d75 7064 6174 652d 6b65 726e 656c   --update-kernel
│ │ │ -0010bda0: 3d41 4c4c 202d 2d61 7267 733d 2273 6c61  =ALL --args="sla
│ │ │ -0010bdb0: 625f 6e6f 6d65 7267 653d 7965 7322 0a20  b_nomerge=yes". 
│ │ │ -0010bdc0: 2077 6865 6e3a 0a20 202d 2028 2022 6772   when:.  - ( "gr
│ │ │ -0010bdd0: 7562 322d 636f 6d6d 6f6e 2220 696e 2061  ub2-common" in a
│ │ │ -0010bde0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -0010bdf0: 6b61 6765 7320 616e 6420 226b 6572 6e65  kages and "kerne
│ │ │ -0010be00: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ -0010be10: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ -0010be20: 2029 0a20 202d 2028 6772 7562 6279 5f69   ).  - (grubby_i
│ │ │ -0010be30: 6e66 6f2e 7374 646f 7574 2069 7320 6e6f  nfo.stdout is no
│ │ │ -0010be40: 7420 7365 6172 6368 2827 736c 6162 5f6e  t search('slab_n
│ │ │ -0010be50: 6f6d 6572 6765 3d79 6573 2729 2920 6f72  omerge=yes')) or
│ │ │ -0010be60: 2028 2865 7463 5f64 6566 6175 6c74 5f67   ((etc_default_g
│ │ │ -0010be70: 7275 625b 2763 6f6e 7465 6e74 275d 0a20  rub['content']. 
│ │ │ -0010be80: 2020 207c 2062 3634 6465 636f 6465 2920     | b64decode) 
│ │ │ -0010be90: 6973 206e 6f74 2073 6561 7263 6828 2773  is not search('s
│ │ │ -0010bea0: 6c61 625f 6e6f 6d65 7267 653d 7965 7327  lab_nomerge=yes'
│ │ │ -0010beb0: 2929 0a20 2074 6167 733a 0a20 202d 2067  )).  tags:.  - g
│ │ │ -0010bec0: 7275 6232 5f73 6c61 625f 6e6f 6d65 7267  rub2_slab_nomerg
│ │ │ -0010bed0: 655f 6172 6775 6d65 6e74 0a20 202d 206c  e_argument.  - l
│ │ │ -0010bee0: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ -0010bef0: 2d20 6d65 6469 756d 5f63 6f6d 706c 6578  - medium_complex
│ │ │ -0010bf00: 6974 790a 2020 2d20 6d65 6469 756d 5f73  ity.  - medium_s
│ │ │ -0010bf10: 6576 6572 6974 790a 2020 2d20 7265 626f  everity.  - rebo
│ │ │ -0010bf20: 6f74 5f72 6571 7569 7265 640a 2020 2d20  ot_required.  - 
│ │ │ -0010bf30: 7265 7374 7269 6374 5f73 7472 6174 6567  restrict_strateg
│ │ │ -0010bf40: 790a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  y.
< │ │ │ +0010b680: 7469 6f6e 2041 6e73 6962 6c65 2073 6e69 tion Ansible sni │ │ │ +0010b690: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ +0010b6a0: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ +0010b6d0: 3c74 6162 6c65 2063 6c61 7373 3d22 7461
Comple │ │ │ +0010b720: 7869 7479 3a3c 2f74 683e 3c74 643e 6d65 xity:me │ │ │ +0010b730: 6469 756d 3c2f 7464 3e3c 2f74 723e 3c74 dium
Disruption │ │ │ +0010b750: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ +0010b770: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e74 eboot:t │ │ │ +0010b780: 7275 653c 2f74 643e 3c2f 7472 3e3c 7472 rue
Strategy:restrict< │ │ │ +0010b7b0: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
- na
│ │ │ +0010b7d0: 6d65 3a20 4761 7468 6572 2074 6865 2070  me: Gather the p
│ │ │ +0010b7e0: 6163 6b61 6765 2066 6163 7473 0a20 2070  ackage facts.  p
│ │ │ +0010b7f0: 6163 6b61 6765 5f66 6163 7473 3a0a 2020  ackage_facts:.  
│ │ │ +0010b800: 2020 6d61 6e61 6765 723a 2061 7574 6f0a    manager: auto.
│ │ │ +0010b810: 2020 7461 6773 3a0a 2020 2d20 6772 7562    tags:.  - grub
│ │ │ +0010b820: 325f 736c 6162 5f6e 6f6d 6572 6765 5f61  2_slab_nomerge_a
│ │ │ +0010b830: 7267 756d 656e 740a 2020 2d20 6c6f 775f  rgument.  - low_
│ │ │ +0010b840: 6469 7372 7570 7469 6f6e 0a20 202d 206d  disruption.  - m
│ │ │ +0010b850: 6564 6975 6d5f 636f 6d70 6c65 7869 7479  edium_complexity
│ │ │ +0010b860: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ +0010b870: 7269 7479 0a20 202d 2072 6562 6f6f 745f  rity.  - reboot_
│ │ │ +0010b880: 7265 7175 6972 6564 0a20 202d 2072 6573  required.  - res
│ │ │ +0010b890: 7472 6963 745f 7374 7261 7465 6779 0a0a  trict_strategy..
│ │ │ +0010b8a0: 2d20 6e61 6d65 3a20 4368 6563 6b20 6966  - name: Check if
│ │ │ +0010b8b0: 2073 6c61 625f 6e6f 6d65 7267 6520 6172   slab_nomerge ar
│ │ │ +0010b8c0: 6775 6d65 6e74 2069 7320 616c 7265 6164  gument is alread
│ │ │ +0010b8d0: 7920 7072 6573 656e 7420 696e 202f 6574  y present in /et
│ │ │ +0010b8e0: 632f 6465 6661 756c 742f 6772 7562 0a20  c/default/grub. 
│ │ │ +0010b8f0: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ +0010b900: 2e73 6c75 7270 3a0a 2020 2020 7372 633a  .slurp:.    src:
│ │ │ +0010b910: 202f 6574 632f 6465 6661 756c 742f 6772   /etc/default/gr
│ │ │ +0010b920: 7562 0a20 2072 6567 6973 7465 723a 2065  ub.  register: e
│ │ │ +0010b930: 7463 5f64 6566 6175 6c74 5f67 7275 620a  tc_default_grub.
│ │ │ +0010b940: 2020 7768 656e 3a20 2820 2267 7275 6232    when: ( "grub2
│ │ │ +0010b950: 2d63 6f6d 6d6f 6e22 2069 6e20 616e 7369  -common" in ansi
│ │ │ +0010b960: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +0010b970: 6573 2061 6e64 2022 6b65 726e 656c 2220  es and "kernel" 
│ │ │ +0010b980: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +0010b990: 2e70 6163 6b61 6765 730a 2020 2020 290a  .packages.    ).
│ │ │ +0010b9a0: 2020 7461 6773 3a0a 2020 2d20 6772 7562    tags:.  - grub
│ │ │ +0010b9b0: 325f 736c 6162 5f6e 6f6d 6572 6765 5f61  2_slab_nomerge_a
│ │ │ +0010b9c0: 7267 756d 656e 740a 2020 2d20 6c6f 775f  rgument.  - low_
│ │ │ +0010b9d0: 6469 7372 7570 7469 6f6e 0a20 202d 206d  disruption.  - m
│ │ │ +0010b9e0: 6564 6975 6d5f 636f 6d70 6c65 7869 7479  edium_complexity
│ │ │ +0010b9f0: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ +0010ba00: 7269 7479 0a20 202d 2072 6562 6f6f 745f  rity.  - reboot_
│ │ │ +0010ba10: 7265 7175 6972 6564 0a20 202d 2072 6573  required.  - res
│ │ │ +0010ba20: 7472 6963 745f 7374 7261 7465 6779 0a0a  trict_strategy..
│ │ │ +0010ba30: 2d20 6e61 6d65 3a20 4368 6563 6b20 6966  - name: Check if
│ │ │ +0010ba40: 2073 6c61 625f 6e6f 6d65 7267 6520 6172   slab_nomerge ar
│ │ │ +0010ba50: 6775 6d65 6e74 2069 7320 616c 7265 6164  gument is alread
│ │ │ +0010ba60: 7920 7072 6573 656e 740a 2020 616e 7369  y present.  ansi
│ │ │ +0010ba70: 626c 652e 6275 696c 7469 6e2e 636f 6d6d  ble.builtin.comm
│ │ │ +0010ba80: 616e 643a 202f 7362 696e 2f67 7275 6262  and: /sbin/grubb
│ │ │ +0010ba90: 7920 2d2d 696e 666f 3d41 4c4c 0a20 2072  y --info=ALL.  r
│ │ │ +0010baa0: 6567 6973 7465 723a 2067 7275 6262 795f  egister: grubby_
│ │ │ +0010bab0: 696e 666f 0a20 2063 6865 636b 5f6d 6f64  info.  check_mod
│ │ │ +0010bac0: 653a 2066 616c 7365 0a20 2063 6861 6e67  e: false.  chang
│ │ │ +0010bad0: 6564 5f77 6865 6e3a 2066 616c 7365 0a20  ed_when: false. 
│ │ │ +0010bae0: 2066 6169 6c65 645f 7768 656e 3a20 6661   failed_when: fa
│ │ │ +0010baf0: 6c73 650a 2020 7768 656e 3a20 2820 2267  lse.  when: ( "g
│ │ │ +0010bb00: 7275 6232 2d63 6f6d 6d6f 6e22 2069 6e20  rub2-common" in 
│ │ │ +0010bb10: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ +0010bb20: 636b 6167 6573 2061 6e64 2022 6b65 726e  ckages and "kern
│ │ │ +0010bb30: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ +0010bb40: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ +0010bb50: 2020 290a 2020 7461 6773 3a0a 2020 2d20    ).  tags:.  - 
│ │ │ +0010bb60: 6772 7562 325f 736c 6162 5f6e 6f6d 6572  grub2_slab_nomer
│ │ │ +0010bb70: 6765 5f61 7267 756d 656e 740a 2020 2d20  ge_argument.  - 
│ │ │ +0010bb80: 6c6f 775f 6469 7372 7570 7469 6f6e 0a20  low_disruption. 
│ │ │ +0010bb90: 202d 206d 6564 6975 6d5f 636f 6d70 6c65   - medium_comple
│ │ │ +0010bba0: 7869 7479 0a20 202d 206d 6564 6975 6d5f  xity.  - medium_
│ │ │ +0010bbb0: 7365 7665 7269 7479 0a20 202d 2072 6562  severity.  - reb
│ │ │ +0010bbc0: 6f6f 745f 7265 7175 6972 6564 0a20 202d  oot_required.  -
│ │ │ +0010bbd0: 2072 6573 7472 6963 745f 7374 7261 7465   restrict_strate
│ │ │ +0010bbe0: 6779 0a0a 2d20 6e61 6d65 3a20 5570 6461  gy..- name: Upda
│ │ │ +0010bbf0: 7465 2067 7275 6220 6465 6661 756c 7473  te grub defaults
│ │ │ +0010bc00: 2061 6e64 2074 6865 2062 6f6f 746c 6f61   and the bootloa
│ │ │ +0010bc10: 6465 7220 6d65 6e75 0a20 2061 6e73 6962  der menu.  ansib
│ │ │ +0010bc20: 6c65 2e62 7569 6c74 696e 2e63 6f6d 6d61  le.builtin.comma
│ │ │ +0010bc30: 6e64 3a20 2f73 6269 6e2f 6772 7562 6279  nd: /sbin/grubby
│ │ │ +0010bc40: 202d 2d75 7064 6174 652d 6b65 726e 656c   --update-kernel
│ │ │ +0010bc50: 3d41 4c4c 202d 2d61 7267 733d 2273 6c61  =ALL --args="sla
│ │ │ +0010bc60: 625f 6e6f 6d65 7267 653d 7965 7322 0a20  b_nomerge=yes". 
│ │ │ +0010bc70: 2077 6865 6e3a 0a20 202d 2028 2022 6772   when:.  - ( "gr
│ │ │ +0010bc80: 7562 322d 636f 6d6d 6f6e 2220 696e 2061  ub2-common" in a
│ │ │ +0010bc90: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +0010bca0: 6b61 6765 7320 616e 6420 226b 6572 6e65  kages and "kerne
│ │ │ +0010bcb0: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ +0010bcc0: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ +0010bcd0: 2029 0a20 202d 2028 6772 7562 6279 5f69   ).  - (grubby_i
│ │ │ +0010bce0: 6e66 6f2e 7374 646f 7574 2069 7320 6e6f  nfo.stdout is no
│ │ │ +0010bcf0: 7420 7365 6172 6368 2827 736c 6162 5f6e  t search('slab_n
│ │ │ +0010bd00: 6f6d 6572 6765 3d79 6573 2729 2920 6f72  omerge=yes')) or
│ │ │ +0010bd10: 2028 2865 7463 5f64 6566 6175 6c74 5f67   ((etc_default_g
│ │ │ +0010bd20: 7275 625b 2763 6f6e 7465 6e74 275d 0a20  rub['content']. 
│ │ │ +0010bd30: 2020 207c 2062 3634 6465 636f 6465 2920     | b64decode) 
│ │ │ +0010bd40: 6973 206e 6f74 2073 6561 7263 6828 2773  is not search('s
│ │ │ +0010bd50: 6c61 625f 6e6f 6d65 7267 653d 7965 7327  lab_nomerge=yes'
│ │ │ +0010bd60: 2929 0a20 2074 6167 733a 0a20 202d 2067  )).  tags:.  - g
│ │ │ +0010bd70: 7275 6232 5f73 6c61 625f 6e6f 6d65 7267  rub2_slab_nomerg
│ │ │ +0010bd80: 655f 6172 6775 6d65 6e74 0a20 202d 206c  e_argument.  - l
│ │ │ +0010bd90: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ +0010bda0: 2d20 6d65 6469 756d 5f63 6f6d 706c 6578  - medium_complex
│ │ │ +0010bdb0: 6974 790a 2020 2d20 6d65 6469 756d 5f73  ity.  - medium_s
│ │ │ +0010bdc0: 6576 6572 6974 790a 2020 2d20 7265 626f  everity.  - rebo
│ │ │ +0010bdd0: 6f74 5f72 6571 7569 7265 640a 2020 2d20  ot_required.  - 
│ │ │ +0010bde0: 7265 7374 7269 6374 5f73 7472 6174 6567  restrict_strateg
│ │ │ +0010bdf0: 790a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  y.
< │ │ │ +0010be00: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation OS │ │ │ +0010beb0: 4275 696c 6420 426c 7565 7072 696e 7420 Build Blueprint │ │ │ +0010bec0: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ +0010bed0: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
[c
│ │ │ +0010bf10: 7573 746f 6d69 7a61 7469 6f6e 732e 6b65  ustomizations.ke
│ │ │ +0010bf20: 726e 656c 5d0a 6170 7065 6e64 203d 2022  rnel].append = "
│ │ │ +0010bf30: 736c 6162 5f6e 6f6d 6572 6765 3d79 6573  slab_nomerge=yes
│ │ │ +0010bf40: 220a 3c2f 636f 6465 3e3c 2f70 7265 3e3c  ".
< │ │ │ 0010bf50: 2f64 6976 3e3c 6120 636c 6173 733d 2262 /div>Remediation │ │ │ -0010d1f0: 4f53 4275 696c 6420 426c 7565 7072 696e OSBuild Blueprin │ │ │ -0010d200: 7420 736e 6970 7065 7420 e287 b23c 2f61 t snippet ...

│ │ │ -0010d250: 5b63 7573 746f 6d69 7a61 7469 6f6e 732e  [customizations.
│ │ │ -0010d260: 6b65 726e 656c 5d0a 6170 7065 6e64 203d  kernel].append =
│ │ │ -0010d270: 2022 7370 6563 5f73 746f 7265 5f62 7970   "spec_store_byp
│ │ │ -0010d280: 6173 735f 6469 7361 626c 653d 3c61 6262  ass_disable=se
│ │ │ -0010d300: 6363 6f6d 703c 2f61 6262 723e 220a 3c2f  ccomp".
Re │ │ │ -0010d3c0: 6d65 6469 6174 696f 6e20 416e 7369 626c mediation Ansibl │ │ │ -0010d3d0: 6520 736e 6970 7065 7420 e287 b23c 2f61 e snippet ...
< │ │ │ -0010d470: 7464 3e6d 6564 6975 6d3c 2f74 643e 3c2f td>medium │ │ │ -0010d4b0: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ -0010d4c0: 3c74 643e 7472 7565 3c2f 7464 3e3c 2f74
- name: Gather 
│ │ │ -0010d520: 7468 6520 7061 636b 6167 6520 6661 6374  the package fact
│ │ │ -0010d530: 730a 2020 7061 636b 6167 655f 6661 6374  s.  package_fact
│ │ │ -0010d540: 733a 0a20 2020 206d 616e 6167 6572 3a20  s:.    manager: 
│ │ │ -0010d550: 6175 746f 0a20 2074 6167 733a 0a20 202d  auto.  tags:.  -
│ │ │ -0010d560: 2067 7275 6232 5f73 7065 635f 7374 6f72   grub2_spec_stor
│ │ │ -0010d570: 655f 6279 7061 7373 5f64 6973 6162 6c65  e_bypass_disable
│ │ │ -0010d580: 5f61 7267 756d 656e 740a 2020 2d20 6c6f  _argument.  - lo
│ │ │ -0010d590: 775f 6469 7372 7570 7469 6f6e 0a20 202d  w_disruption.  -
│ │ │ -0010d5a0: 206d 6564 6975 6d5f 636f 6d70 6c65 7869   medium_complexi
│ │ │ -0010d5b0: 7479 0a20 202d 206d 6564 6975 6d5f 7365  ty.  - medium_se
│ │ │ -0010d5c0: 7665 7269 7479 0a20 202d 2072 6562 6f6f  verity.  - reboo
│ │ │ -0010d5d0: 745f 7265 7175 6972 6564 0a20 202d 2072  t_required.  - r
│ │ │ -0010d5e0: 6573 7472 6963 745f 7374 7261 7465 6779  estrict_strategy
│ │ │ -0010d5f0: 0a2d 206e 616d 653a 2058 4343 4446 2056  .- name: XCCDF V
│ │ │ -0010d600: 616c 7565 2076 6172 5f73 7065 635f 7374  alue var_spec_st
│ │ │ -0010d610: 6f72 655f 6279 7061 7373 5f64 6973 6162  ore_bypass_disab
│ │ │ -0010d620: 6c65 5f6f 7074 696f 6e73 2023 2070 726f  le_options # pro
│ │ │ -0010d630: 6d6f 7465 2074 6f20 7661 7269 6162 6c65  mote to variable
│ │ │ -0010d640: 0a20 2073 6574 5f66 6163 743a 0a20 2020  .  set_fact:.   
│ │ │ -0010d650: 2076 6172 5f73 7065 635f 7374 6f72 655f   var_spec_store_
│ │ │ -0010d660: 6279 7061 7373 5f64 6973 6162 6c65 5f6f  bypass_disable_o
│ │ │ -0010d670: 7074 696f 6e73 3a20 2121 7374 7220 3c61  ptions: !!str 
│ │ │ -0010d6f0: 7365 6363 6f6d 703c 2f61 6262 723e 0a20  seccomp. 
│ │ │ -0010d700: 2074 6167 733a 0a20 2020 202d 2061 6c77   tags:.    - alw
│ │ │ -0010d710: 6179 730a 0a2d 206e 616d 653a 2043 6865  ays..- name: Che
│ │ │ -0010d720: 636b 2069 6620 7370 6563 5f73 746f 7265  ck if spec_store
│ │ │ -0010d730: 5f62 7970 6173 735f 6469 7361 626c 6520  _bypass_disable 
│ │ │ -0010d740: 6172 6775 6d65 6e74 2069 7320 616c 7265  argument is alre
│ │ │ -0010d750: 6164 7920 7072 6573 656e 7420 696e 202f  ady present in /
│ │ │ -0010d760: 6574 632f 6465 6661 756c 742f 6772 7562  etc/default/grub
│ │ │ -0010d770: 0a20 2061 6e73 6962 6c65 2e62 7569 6c74  .  ansible.built
│ │ │ -0010d780: 696e 2e73 6c75 7270 3a0a 2020 2020 7372  in.slurp:.    sr
│ │ │ -0010d790: 633a 202f 6574 632f 6465 6661 756c 742f  c: /etc/default/
│ │ │ -0010d7a0: 6772 7562 0a20 2072 6567 6973 7465 723a  grub.  register:
│ │ │ -0010d7b0: 2065 7463 5f64 6566 6175 6c74 5f67 7275   etc_default_gru
│ │ │ -0010d7c0: 620a 2020 7768 656e 3a20 2820 2267 7275  b.  when: ( "gru
│ │ │ -0010d7d0: 6232 2d63 6f6d 6d6f 6e22 2069 6e20 616e  b2-common" in an
│ │ │ -0010d7e0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -0010d7f0: 6167 6573 2061 6e64 2022 6b65 726e 656c  ages and "kernel
│ │ │ -0010d800: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -0010d810: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ -0010d820: 290a 2020 7461 6773 3a0a 2020 2d20 6772  ).  tags:.  - gr
│ │ │ -0010d830: 7562 325f 7370 6563 5f73 746f 7265 5f62  ub2_spec_store_b
│ │ │ -0010d840: 7970 6173 735f 6469 7361 626c 655f 6172  ypass_disable_ar
│ │ │ -0010d850: 6775 6d65 6e74 0a20 202d 206c 6f77 5f64  gument.  - low_d
│ │ │ -0010d860: 6973 7275 7074 696f 6e0a 2020 2d20 6d65  isruption.  - me
│ │ │ -0010d870: 6469 756d 5f63 6f6d 706c 6578 6974 790a  dium_complexity.
│ │ │ -0010d880: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ -0010d890: 6974 790a 2020 2d20 7265 626f 6f74 5f72  ity.  - reboot_r
│ │ │ -0010d8a0: 6571 7569 7265 640a 2020 2d20 7265 7374  equired.  - rest
│ │ │ -0010d8b0: 7269 6374 5f73 7472 6174 6567 790a 0a2d  rict_strategy..-
│ │ │ -0010d8c0: 206e 616d 653a 2043 6865 636b 2069 6620   name: Check if 
│ │ │ -0010d8d0: 7370 6563 5f73 746f 7265 5f62 7970 6173  spec_store_bypas
│ │ │ -0010d8e0: 735f 6469 7361 626c 6520 6172 6775 6d65  s_disable argume
│ │ │ -0010d8f0: 6e74 2069 7320 616c 7265 6164 7920 7072  nt is already pr
│ │ │ -0010d900: 6573 656e 740a 2020 616e 7369 626c 652e  esent.  ansible.
│ │ │ -0010d910: 6275 696c 7469 6e2e 636f 6d6d 616e 643a  builtin.command:
│ │ │ -0010d920: 202f 7362 696e 2f67 7275 6262 7920 2d2d   /sbin/grubby --
│ │ │ -0010d930: 696e 666f 3d41 4c4c 0a20 2072 6567 6973  info=ALL.  regis
│ │ │ -0010d940: 7465 723a 2067 7275 6262 795f 696e 666f  ter: grubby_info
│ │ │ -0010d950: 0a20 2063 6865 636b 5f6d 6f64 653a 2066  .  check_mode: f
│ │ │ -0010d960: 616c 7365 0a20 2063 6861 6e67 6564 5f77  alse.  changed_w
│ │ │ -0010d970: 6865 6e3a 2066 616c 7365 0a20 2066 6169  hen: false.  fai
│ │ │ -0010d980: 6c65 645f 7768 656e 3a20 6661 6c73 650a  led_when: false.
│ │ │ -0010d990: 2020 7768 656e 3a20 2820 2267 7275 6232    when: ( "grub2
│ │ │ -0010d9a0: 2d63 6f6d 6d6f 6e22 2069 6e20 616e 7369  -common" in ansi
│ │ │ -0010d9b0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ -0010d9c0: 6573 2061 6e64 2022 6b65 726e 656c 2220  es and "kernel" 
│ │ │ -0010d9d0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -0010d9e0: 2e70 6163 6b61 6765 730a 2020 2020 290a  .packages.    ).
│ │ │ -0010d9f0: 2020 7461 6773 3a0a 2020 2d20 6772 7562    tags:.  - grub
│ │ │ -0010da00: 325f 7370 6563 5f73 746f 7265 5f62 7970  2_spec_store_byp
│ │ │ -0010da10: 6173 735f 6469 7361 626c 655f 6172 6775  ass_disable_argu
│ │ │ -0010da20: 6d65 6e74 0a20 202d 206c 6f77 5f64 6973  ment.  - low_dis
│ │ │ -0010da30: 7275 7074 696f 6e0a 2020 2d20 6d65 6469  ruption.  - medi
│ │ │ -0010da40: 756d 5f63 6f6d 706c 6578 6974 790a 2020  um_complexity.  
│ │ │ -0010da50: 2d20 6d65 6469 756d 5f73 6576 6572 6974  - medium_severit
│ │ │ -0010da60: 790a 2020 2d20 7265 626f 6f74 5f72 6571  y.  - reboot_req
│ │ │ -0010da70: 7569 7265 640a 2020 2d20 7265 7374 7269  uired.  - restri
│ │ │ -0010da80: 6374 5f73 7472 6174 6567 790a 0a2d 206e  ct_strategy..- n
│ │ │ -0010da90: 616d 653a 2055 7064 6174 6520 6772 7562  ame: Update grub
│ │ │ -0010daa0: 2064 6566 6175 6c74 7320 616e 6420 7468   defaults and th
│ │ │ -0010dab0: 6520 626f 6f74 6c6f 6164 6572 206d 656e  e bootloader men
│ │ │ -0010dac0: 750a 2020 616e 7369 626c 652e 6275 696c  u.  ansible.buil
│ │ │ -0010dad0: 7469 6e2e 636f 6d6d 616e 643a 202f 7362  tin.command: /sb
│ │ │ -0010dae0: 696e 2f67 7275 6262 7920 2d2d 7570 6461  in/grubby --upda
│ │ │ -0010daf0: 7465 2d6b 6572 6e65 6c3d 414c 4c20 2d2d  te-kernel=ALL --
│ │ │ -0010db00: 6172 6773 3d22 7370 6563 5f73 746f 7265  args="spec_store
│ │ │ -0010db10: 5f62 7970 6173 735f 6469 7361 626c 653d  _bypass_disable=
│ │ │ -0010db20: 7b7b 0a20 2020 2076 6172 5f73 7065 635f  {{.    var_spec_
│ │ │ -0010db30: 7374 6f72 655f 6279 7061 7373 5f64 6973  store_bypass_dis
│ │ │ -0010db40: 6162 6c65 5f6f 7074 696f 6e73 207d 7d22  able_options }}"
│ │ │ -0010db50: 0a20 2077 6865 6e3a 0a20 202d 2028 2022  .  when:.  - ( "
│ │ │ -0010db60: 6772 7562 322d 636f 6d6d 6f6e 2220 696e  grub2-common" in
│ │ │ -0010db70: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -0010db80: 6163 6b61 6765 7320 616e 6420 226b 6572  ackages and "ker
│ │ │ -0010db90: 6e65 6c22 2069 6e20 616e 7369 626c 655f  nel" in ansible_
│ │ │ -0010dba0: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ -0010dbb0: 2020 2029 0a20 202d 2028 6772 7562 6279     ).  - (grubby
│ │ │ -0010dbc0: 5f69 6e66 6f2e 7374 646f 7574 2069 7320  _info.stdout is 
│ │ │ -0010dbd0: 6e6f 7420 7365 6172 6368 2827 7370 6563  not search('spec
│ │ │ -0010dbe0: 5f73 746f 7265 5f62 7970 6173 735f 6469  _store_bypass_di
│ │ │ -0010dbf0: 7361 626c 653d 2720 7e20 7661 725f 7370  sable=' ~ var_sp
│ │ │ -0010dc00: 6563 5f73 746f 7265 5f62 7970 6173 735f  ec_store_bypass_
│ │ │ -0010dc10: 6469 7361 626c 655f 6f70 7469 6f6e 7329  disable_options)
│ │ │ -0010dc20: 290a 2020 2020 6f72 2028 2865 7463 5f64  ).    or ((etc_d
│ │ │ -0010dc30: 6566 6175 6c74 5f67 7275 625b 2763 6f6e  efault_grub['con
│ │ │ -0010dc40: 7465 6e74 275d 207c 2062 3634 6465 636f  tent'] | b64deco
│ │ │ -0010dc50: 6465 2920 6973 206e 6f74 2073 6561 7263  de) is not searc
│ │ │ -0010dc60: 6828 2773 7065 635f 7374 6f72 655f 6279  h('spec_store_by
│ │ │ -0010dc70: 7061 7373 5f64 6973 6162 6c65 3d27 0a20  pass_disable='. 
│ │ │ -0010dc80: 2020 207e 2076 6172 5f73 7065 635f 7374     ~ var_spec_st
│ │ │ -0010dc90: 6f72 655f 6279 7061 7373 5f64 6973 6162  ore_bypass_disab
│ │ │ -0010dca0: 6c65 5f6f 7074 696f 6e73 2929 0a20 2074  le_options)).  t
│ │ │ -0010dcb0: 6167 733a 0a20 202d 2067 7275 6232 5f73  ags:.  - grub2_s
│ │ │ -0010dcc0: 7065 635f 7374 6f72 655f 6279 7061 7373  pec_store_bypass
│ │ │ -0010dcd0: 5f64 6973 6162 6c65 5f61 7267 756d 656e  _disable_argumen
│ │ │ -0010dce0: 740a 2020 2d20 6c6f 775f 6469 7372 7570  t.  - low_disrup
│ │ │ -0010dcf0: 7469 6f6e 0a20 202d 206d 6564 6975 6d5f  tion.  - medium_
│ │ │ -0010dd00: 636f 6d70 6c65 7869 7479 0a20 202d 206d  complexity.  - m
│ │ │ -0010dd10: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ -0010dd20: 202d 2072 6562 6f6f 745f 7265 7175 6972   - reboot_requir
│ │ │ -0010dd30: 6564 0a20 202d 2072 6573 7472 6963 745f  ed.  - restrict_
│ │ │ -0010dd40: 7374 7261 7465 6779 0a3c 2f63 6f64 653e  strategy.
│ │ │ +0010d1f0: 416e 7369 626c 6520 736e 6970 7065 7420  Ansible snippet 
│ │ │ +0010d200: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620  ...
restrict< │ │ │ +0010d320: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
C │ │ │ -0010d460: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disru │ │ │ -0010d490: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ -0010d4a0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:true
Strate │ │ │ -0010d4e0: 6779 3a3c 2f74 683e 3c74 643e 7265 7374 gy:rest │ │ │ -0010d4f0: 7269 6374 3c2f 7464 3e3c 2f74 723e 3c2f rict
Complexity: │ │ │ +0010d290: 3c2f 7468 3e3c 7464 3e6d 6564 6975 6d3c medium< │ │ │ +0010d2a0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Disruption:low
Reboot │ │ │ +0010d2e0: 3a3c 2f74 683e 3c74 643e 7472 7565 3c2f :true
│ │ │ +0010d300: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:
- name: G
│ │ │ +0010d340: 6174 6865 7220 7468 6520 7061 636b 6167  ather the packag
│ │ │ +0010d350: 6520 6661 6374 730a 2020 7061 636b 6167  e facts.  packag
│ │ │ +0010d360: 655f 6661 6374 733a 0a20 2020 206d 616e  e_facts:.    man
│ │ │ +0010d370: 6167 6572 3a20 6175 746f 0a20 2074 6167  ager: auto.  tag
│ │ │ +0010d380: 733a 0a20 202d 2067 7275 6232 5f73 7065  s:.  - grub2_spe
│ │ │ +0010d390: 635f 7374 6f72 655f 6279 7061 7373 5f64  c_store_bypass_d
│ │ │ +0010d3a0: 6973 6162 6c65 5f61 7267 756d 656e 740a  isable_argument.
│ │ │ +0010d3b0: 2020 2d20 6c6f 775f 6469 7372 7570 7469    - low_disrupti
│ │ │ +0010d3c0: 6f6e 0a20 202d 206d 6564 6975 6d5f 636f  on.  - medium_co
│ │ │ +0010d3d0: 6d70 6c65 7869 7479 0a20 202d 206d 6564  mplexity.  - med
│ │ │ +0010d3e0: 6975 6d5f 7365 7665 7269 7479 0a20 202d  ium_severity.  -
│ │ │ +0010d3f0: 2072 6562 6f6f 745f 7265 7175 6972 6564   reboot_required
│ │ │ +0010d400: 0a20 202d 2072 6573 7472 6963 745f 7374  .  - restrict_st
│ │ │ +0010d410: 7261 7465 6779 0a2d 206e 616d 653a 2058  rategy.- name: X
│ │ │ +0010d420: 4343 4446 2056 616c 7565 2076 6172 5f73  CCDF Value var_s
│ │ │ +0010d430: 7065 635f 7374 6f72 655f 6279 7061 7373  pec_store_bypass
│ │ │ +0010d440: 5f64 6973 6162 6c65 5f6f 7074 696f 6e73  _disable_options
│ │ │ +0010d450: 2023 2070 726f 6d6f 7465 2074 6f20 7661   # promote to va
│ │ │ +0010d460: 7269 6162 6c65 0a20 2073 6574 5f66 6163  riable.  set_fac
│ │ │ +0010d470: 743a 0a20 2020 2076 6172 5f73 7065 635f  t:.    var_spec_
│ │ │ +0010d480: 7374 6f72 655f 6279 7061 7373 5f64 6973  store_bypass_dis
│ │ │ +0010d490: 6162 6c65 5f6f 7074 696f 6e73 3a20 2121  able_options: !!
│ │ │ +0010d4a0: 7374 7220 3c61 6262 7220 7469 746c 653d  str seccomp.  tags:.   
│ │ │ +0010d530: 202d 2061 6c77 6179 730a 0a2d 206e 616d   - always..- nam
│ │ │ +0010d540: 653a 2043 6865 636b 2069 6620 7370 6563  e: Check if spec
│ │ │ +0010d550: 5f73 746f 7265 5f62 7970 6173 735f 6469  _store_bypass_di
│ │ │ +0010d560: 7361 626c 6520 6172 6775 6d65 6e74 2069  sable argument i
│ │ │ +0010d570: 7320 616c 7265 6164 7920 7072 6573 656e  s already presen
│ │ │ +0010d580: 7420 696e 202f 6574 632f 6465 6661 756c  t in /etc/defaul
│ │ │ +0010d590: 742f 6772 7562 0a20 2061 6e73 6962 6c65  t/grub.  ansible
│ │ │ +0010d5a0: 2e62 7569 6c74 696e 2e73 6c75 7270 3a0a  .builtin.slurp:.
│ │ │ +0010d5b0: 2020 2020 7372 633a 202f 6574 632f 6465      src: /etc/de
│ │ │ +0010d5c0: 6661 756c 742f 6772 7562 0a20 2072 6567  fault/grub.  reg
│ │ │ +0010d5d0: 6973 7465 723a 2065 7463 5f64 6566 6175  ister: etc_defau
│ │ │ +0010d5e0: 6c74 5f67 7275 620a 2020 7768 656e 3a20  lt_grub.  when: 
│ │ │ +0010d5f0: 2820 2267 7275 6232 2d63 6f6d 6d6f 6e22  ( "grub2-common"
│ │ │ +0010d600: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +0010d610: 732e 7061 636b 6167 6573 2061 6e64 2022  s.packages and "
│ │ │ +0010d620: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ +0010d630: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +0010d640: 730a 2020 2020 290a 2020 7461 6773 3a0a  s.    ).  tags:.
│ │ │ +0010d650: 2020 2d20 6772 7562 325f 7370 6563 5f73    - grub2_spec_s
│ │ │ +0010d660: 746f 7265 5f62 7970 6173 735f 6469 7361  tore_bypass_disa
│ │ │ +0010d670: 626c 655f 6172 6775 6d65 6e74 0a20 202d  ble_argument.  -
│ │ │ +0010d680: 206c 6f77 5f64 6973 7275 7074 696f 6e0a   low_disruption.
│ │ │ +0010d690: 2020 2d20 6d65 6469 756d 5f63 6f6d 706c    - medium_compl
│ │ │ +0010d6a0: 6578 6974 790a 2020 2d20 6d65 6469 756d  exity.  - medium
│ │ │ +0010d6b0: 5f73 6576 6572 6974 790a 2020 2d20 7265  _severity.  - re
│ │ │ +0010d6c0: 626f 6f74 5f72 6571 7569 7265 640a 2020  boot_required.  
│ │ │ +0010d6d0: 2d20 7265 7374 7269 6374 5f73 7472 6174  - restrict_strat
│ │ │ +0010d6e0: 6567 790a 0a2d 206e 616d 653a 2043 6865  egy..- name: Che
│ │ │ +0010d6f0: 636b 2069 6620 7370 6563 5f73 746f 7265  ck if spec_store
│ │ │ +0010d700: 5f62 7970 6173 735f 6469 7361 626c 6520  _bypass_disable 
│ │ │ +0010d710: 6172 6775 6d65 6e74 2069 7320 616c 7265  argument is alre
│ │ │ +0010d720: 6164 7920 7072 6573 656e 740a 2020 616e  ady present.  an
│ │ │ +0010d730: 7369 626c 652e 6275 696c 7469 6e2e 636f  sible.builtin.co
│ │ │ +0010d740: 6d6d 616e 643a 202f 7362 696e 2f67 7275  mmand: /sbin/gru
│ │ │ +0010d750: 6262 7920 2d2d 696e 666f 3d41 4c4c 0a20  bby --info=ALL. 
│ │ │ +0010d760: 2072 6567 6973 7465 723a 2067 7275 6262   register: grubb
│ │ │ +0010d770: 795f 696e 666f 0a20 2063 6865 636b 5f6d  y_info.  check_m
│ │ │ +0010d780: 6f64 653a 2066 616c 7365 0a20 2063 6861  ode: false.  cha
│ │ │ +0010d790: 6e67 6564 5f77 6865 6e3a 2066 616c 7365  nged_when: false
│ │ │ +0010d7a0: 0a20 2066 6169 6c65 645f 7768 656e 3a20  .  failed_when: 
│ │ │ +0010d7b0: 6661 6c73 650a 2020 7768 656e 3a20 2820  false.  when: ( 
│ │ │ +0010d7c0: 2267 7275 6232 2d63 6f6d 6d6f 6e22 2069  "grub2-common" i
│ │ │ +0010d7d0: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ +0010d7e0: 7061 636b 6167 6573 2061 6e64 2022 6b65  packages and "ke
│ │ │ +0010d7f0: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ +0010d800: 5f66 6163 7473 2e70 6163 6b61 6765 730a  _facts.packages.
│ │ │ +0010d810: 2020 2020 290a 2020 7461 6773 3a0a 2020      ).  tags:.  
│ │ │ +0010d820: 2d20 6772 7562 325f 7370 6563 5f73 746f  - grub2_spec_sto
│ │ │ +0010d830: 7265 5f62 7970 6173 735f 6469 7361 626c  re_bypass_disabl
│ │ │ +0010d840: 655f 6172 6775 6d65 6e74 0a20 202d 206c  e_argument.  - l
│ │ │ +0010d850: 6f77 5f64 6973 7275 7074 696f 6e0a 2020  ow_disruption.  
│ │ │ +0010d860: 2d20 6d65 6469 756d 5f63 6f6d 706c 6578  - medium_complex
│ │ │ +0010d870: 6974 790a 2020 2d20 6d65 6469 756d 5f73  ity.  - medium_s
│ │ │ +0010d880: 6576 6572 6974 790a 2020 2d20 7265 626f  everity.  - rebo
│ │ │ +0010d890: 6f74 5f72 6571 7569 7265 640a 2020 2d20  ot_required.  - 
│ │ │ +0010d8a0: 7265 7374 7269 6374 5f73 7472 6174 6567  restrict_strateg
│ │ │ +0010d8b0: 790a 0a2d 206e 616d 653a 2055 7064 6174  y..- name: Updat
│ │ │ +0010d8c0: 6520 6772 7562 2064 6566 6175 6c74 7320  e grub defaults 
│ │ │ +0010d8d0: 616e 6420 7468 6520 626f 6f74 6c6f 6164  and the bootload
│ │ │ +0010d8e0: 6572 206d 656e 750a 2020 616e 7369 626c  er menu.  ansibl
│ │ │ +0010d8f0: 652e 6275 696c 7469 6e2e 636f 6d6d 616e  e.builtin.comman
│ │ │ +0010d900: 643a 202f 7362 696e 2f67 7275 6262 7920  d: /sbin/grubby 
│ │ │ +0010d910: 2d2d 7570 6461 7465 2d6b 6572 6e65 6c3d  --update-kernel=
│ │ │ +0010d920: 414c 4c20 2d2d 6172 6773 3d22 7370 6563  ALL --args="spec
│ │ │ +0010d930: 5f73 746f 7265 5f62 7970 6173 735f 6469  _store_bypass_di
│ │ │ +0010d940: 7361 626c 653d 7b7b 0a20 2020 2076 6172  sable={{.    var
│ │ │ +0010d950: 5f73 7065 635f 7374 6f72 655f 6279 7061  _spec_store_bypa
│ │ │ +0010d960: 7373 5f64 6973 6162 6c65 5f6f 7074 696f  ss_disable_optio
│ │ │ +0010d970: 6e73 207d 7d22 0a20 2077 6865 6e3a 0a20  ns }}".  when:. 
│ │ │ +0010d980: 202d 2028 2022 6772 7562 322d 636f 6d6d   - ( "grub2-comm
│ │ │ +0010d990: 6f6e 2220 696e 2061 6e73 6962 6c65 5f66  on" in ansible_f
│ │ │ +0010d9a0: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +0010d9b0: 6420 226b 6572 6e65 6c22 2069 6e20 616e  d "kernel" in an
│ │ │ +0010d9c0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +0010d9d0: 6167 6573 0a20 2020 2029 0a20 202d 2028  ages.    ).  - (
│ │ │ +0010d9e0: 6772 7562 6279 5f69 6e66 6f2e 7374 646f  grubby_info.stdo
│ │ │ +0010d9f0: 7574 2069 7320 6e6f 7420 7365 6172 6368  ut is not search
│ │ │ +0010da00: 2827 7370 6563 5f73 746f 7265 5f62 7970  ('spec_store_byp
│ │ │ +0010da10: 6173 735f 6469 7361 626c 653d 2720 7e20  ass_disable=' ~ 
│ │ │ +0010da20: 7661 725f 7370 6563 5f73 746f 7265 5f62  var_spec_store_b
│ │ │ +0010da30: 7970 6173 735f 6469 7361 626c 655f 6f70  ypass_disable_op
│ │ │ +0010da40: 7469 6f6e 7329 290a 2020 2020 6f72 2028  tions)).    or (
│ │ │ +0010da50: 2865 7463 5f64 6566 6175 6c74 5f67 7275  (etc_default_gru
│ │ │ +0010da60: 625b 2763 6f6e 7465 6e74 275d 207c 2062  b['content'] | b
│ │ │ +0010da70: 3634 6465 636f 6465 2920 6973 206e 6f74  64decode) is not
│ │ │ +0010da80: 2073 6561 7263 6828 2773 7065 635f 7374   search('spec_st
│ │ │ +0010da90: 6f72 655f 6279 7061 7373 5f64 6973 6162  ore_bypass_disab
│ │ │ +0010daa0: 6c65 3d27 0a20 2020 207e 2076 6172 5f73  le='.    ~ var_s
│ │ │ +0010dab0: 7065 635f 7374 6f72 655f 6279 7061 7373  pec_store_bypass
│ │ │ +0010dac0: 5f64 6973 6162 6c65 5f6f 7074 696f 6e73  _disable_options
│ │ │ +0010dad0: 2929 0a20 2074 6167 733a 0a20 202d 2067  )).  tags:.  - g
│ │ │ +0010dae0: 7275 6232 5f73 7065 635f 7374 6f72 655f  rub2_spec_store_
│ │ │ +0010daf0: 6279 7061 7373 5f64 6973 6162 6c65 5f61  bypass_disable_a
│ │ │ +0010db00: 7267 756d 656e 740a 2020 2d20 6c6f 775f  rgument.  - low_
│ │ │ +0010db10: 6469 7372 7570 7469 6f6e 0a20 202d 206d  disruption.  - m
│ │ │ +0010db20: 6564 6975 6d5f 636f 6d70 6c65 7869 7479  edium_complexity
│ │ │ +0010db30: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ +0010db40: 7269 7479 0a20 202d 2072 6562 6f6f 745f  rity.  - reboot_
│ │ │ +0010db50: 7265 7175 6972 6564 0a20 202d 2072 6573  required.  - res
│ │ │ +0010db60: 7472 6963 745f 7374 7261 7465 6779 0a3c  trict_strategy.<
│ │ │ +0010db70: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ +0010dc20: 656d 6564 6961 7469 6f6e 204f 5342 7569 emediation OSBui │ │ │ +0010dc30: 6c64 2042 6c75 6570 7269 6e74 2073 6e69 ld Blueprint sni │ │ │ +0010dc40: 7070 6574 20e2 87b2 3c2f 613e 3c62 723e ppet ...
│ │ │ +0010dc50: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ +0010dc80: 3c70 7265 3e3c 636f 6465 3e5b 6375 7374
[cust
│ │ │ +0010dc90: 6f6d 697a 6174 696f 6e73 2e6b 6572 6e65  omizations.kerne
│ │ │ +0010dca0: 6c5d 0a61 7070 656e 6420 3d20 2273 7065  l].append = "spe
│ │ │ +0010dcb0: 635f 7374 6f72 655f 6279 7061 7373 5f64  c_store_bypass_d
│ │ │ +0010dcc0: 6973 6162 6c65 3d3c 6162 6272 2074 6974  isable=seccomp
│ │ │ +0010dd40: 3c2f 6162 6272 3e22 0a3c 2f63 6f64 653e  ".
│ │ │  0010dd50: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedi │ │ │ -0010ed30: 6174 696f 6e20 4f53 4275 696c 6420 426c ation OSBuild Bl │ │ │ -0010ed40: 7565 7072 696e 7420 736e 6970 7065 7420 ueprint snippet │ │ │ -0010ed50: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620 ...
│ │ │ -0010ed90: 3c63 6f64 653e 5b63 7573 746f 6d69 7a61  [customiza
│ │ │ -0010eda0: 7469 6f6e 732e 6b65 726e 656c 5d0a 6170  tions.kernel].ap
│ │ │ -0010edb0: 7065 6e64 203d 2022 7370 6563 7472 655f  pend = "spectre_
│ │ │ -0010edc0: 7632 3d6f 6e22 0a3c 2f63 6f64 653e 3c2f  v2=on".
Remediati │ │ │ -0010ee80: 6f6e 2041 6e73 6962 6c65 2073 6e69 7070 on Ansible snipp │ │ │ -0010ee90: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ -0010ef10: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ -0010ef20: 7479 3a3c 2f74 683e 3c74 643e 6d65 6469 ty:medi │ │ │ -0010ef30: 756d 3c2f 7464 3e3c 2f74 723e 3c74 723e um │ │ │ -0010ef40: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c Disruption:< │ │ │ -0010ef50: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low │ │ │ -0010ef60: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 Reb │ │ │ -0010ef70: 6f6f 743a 3c2f 7468 3e3c 7464 3e74 7275 oot:tru │ │ │ -0010ef80: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e< │ │ │ -0010ef90: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:restrict< │ │ │ -0010efc0: 7072 653e 3c63 6f64 653e 2d20 6e61 6d65 pre>- name │ │ │ -0010efd0: 3a20 4761 7468 6572 2074 6865 2070 6163 : Gather the pac │ │ │ -0010efe0: 6b61 6765 2066 6163 7473 0a20 2070 6163 kage facts. pac │ │ │ -0010eff0: 6b61 6765 5f66 6163 7473 3a0a 2020 2020 kage_facts:. │ │ │ -0010f000: 6d61 6e61 6765 723a 2061 7574 6f0a 2020 manager: auto. │ │ │ -0010f010: 7461 6773 3a0a 2020 2d20 6772 7562 325f tags:. - grub2_ │ │ │ -0010f020: 7370 6563 7472 655f 7632 5f61 7267 756d spectre_v2_argum │ │ │ -0010f030: 656e 740a 2020 2d20 6869 6768 5f73 6576 ent. - high_sev │ │ │ -0010f040: 6572 6974 790a 2020 2d20 6c6f 775f 6469 erity. - low_di │ │ │ -0010f050: 7372 7570 7469 6f6e 0a20 202d 206d 6564 sruption. - med │ │ │ -0010f060: 6975 6d5f 636f 6d70 6c65 7869 7479 0a20 ium_complexity. │ │ │ -0010f070: 202d 2072 6562 6f6f 745f 7265 7175 6972 - reboot_requir │ │ │ -0010f080: 6564 0a20 202d 2072 6573 7472 6963 745f ed. - restrict_ │ │ │ -0010f090: 7374 7261 7465 6779 0a0a 2d20 6e61 6d65 strategy..- name │ │ │ -0010f0a0: 3a20 4368 6563 6b20 6966 2073 7065 6374 : Check if spect │ │ │ -0010f0b0: 7265 5f76 3220 6172 6775 6d65 6e74 2069 re_v2 argument i │ │ │ -0010f0c0: 7320 616c 7265 6164 7920 7072 6573 656e s already presen │ │ │ -0010f0d0: 7420 696e 202f 6574 632f 6465 6661 756c t in /etc/defaul │ │ │ -0010f0e0: 742f 6772 7562 0a20 2061 6e73 6962 6c65 t/grub. ansible │ │ │ -0010f0f0: 2e62 7569 6c74 696e 2e73 6c75 7270 3a0a .builtin.slurp:. │ │ │ -0010f100: 2020 2020 7372 633a 202f 6574 632f 6465 src: /etc/de │ │ │ -0010f110: 6661 756c 742f 6772 7562 0a20 2072 6567 fault/grub. reg │ │ │ -0010f120: 6973 7465 723a 2065 7463 5f64 6566 6175 ister: etc_defau │ │ │ -0010f130: 6c74 5f67 7275 620a 2020 7768 656e 3a20 lt_grub. when: │ │ │ -0010f140: 2820 2267 7275 6232 2d63 6f6d 6d6f 6e22 ( "grub2-common" │ │ │ -0010f150: 2069 6e20 616e 7369 626c 655f 6661 6374 in ansible_fact │ │ │ -0010f160: 732e 7061 636b 6167 6573 2061 6e64 2022 s.packages and " │ │ │ -0010f170: 6b65 726e 656c 2220 696e 2061 6e73 6962 kernel" in ansib │ │ │ -0010f180: 6c65 5f66 6163 7473 2e70 6163 6b61 6765 le_facts.package │ │ │ -0010f190: 730a 2020 2020 290a 2020 7461 6773 3a0a s. ). tags:. │ │ │ -0010f1a0: 2020 2d20 6772 7562 325f 7370 6563 7472 - grub2_spectr │ │ │ -0010f1b0: 655f 7632 5f61 7267 756d 656e 740a 2020 e_v2_argument. │ │ │ -0010f1c0: 2d20 6869 6768 5f73 6576 6572 6974 790a - high_severity. │ │ │ -0010f1d0: 2020 2d20 6c6f 775f 6469 7372 7570 7469 - low_disrupti │ │ │ -0010f1e0: 6f6e 0a20 202d 206d 6564 6975 6d5f 636f on. - medium_co │ │ │ -0010f1f0: 6d70 6c65 7869 7479 0a20 202d 2072 6562 mplexity. - reb │ │ │ -0010f200: 6f6f 745f 7265 7175 6972 6564 0a20 202d oot_required. - │ │ │ -0010f210: 2072 6573 7472 6963 745f 7374 7261 7465 restrict_strate │ │ │ -0010f220: 6779 0a0a 2d20 6e61 6d65 3a20 4368 6563 gy..- name: Chec │ │ │ -0010f230: 6b20 6966 2073 7065 6374 7265 5f76 3220 k if spectre_v2 │ │ │ -0010f240: 6172 6775 6d65 6e74 2069 7320 616c 7265 argument is alre │ │ │ -0010f250: 6164 7920 7072 6573 656e 740a 2020 616e ady present. an │ │ │ -0010f260: 7369 626c 652e 6275 696c 7469 6e2e 636f sible.builtin.co │ │ │ -0010f270: 6d6d 616e 643a 202f 7362 696e 2f67 7275 mmand: /sbin/gru │ │ │ -0010f280: 6262 7920 2d2d 696e 666f 3d41 4c4c 0a20 bby --info=ALL. │ │ │ -0010f290: 2072 6567 6973 7465 723a 2067 7275 6262 register: grubb │ │ │ -0010f2a0: 795f 696e 666f 0a20 2063 6865 636b 5f6d y_info. check_m │ │ │ -0010f2b0: 6f64 653a 2066 616c 7365 0a20 2063 6861 ode: false. cha │ │ │ -0010f2c0: 6e67 6564 5f77 6865 6e3a 2066 616c 7365 nged_when: false │ │ │ -0010f2d0: 0a20 2066 6169 6c65 645f 7768 656e 3a20 . failed_when: │ │ │ -0010f2e0: 6661 6c73 650a 2020 7768 656e 3a20 2820 false. when: ( │ │ │ -0010f2f0: 2267 7275 6232 2d63 6f6d 6d6f 6e22 2069 "grub2-common" i │ │ │ -0010f300: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ -0010f310: 7061 636b 6167 6573 2061 6e64 2022 6b65 packages and "ke │ │ │ -0010f320: 726e 656c 2220 696e 2061 6e73 6962 6c65 rnel" in ansible │ │ │ -0010f330: 5f66 6163 7473 2e70 6163 6b61 6765 730a _facts.packages. │ │ │ -0010f340: 2020 2020 290a 2020 7461 6773 3a0a 2020 ). tags:. │ │ │ -0010f350: 2d20 6772 7562 325f 7370 6563 7472 655f - grub2_spectre_ │ │ │ -0010f360: 7632 5f61 7267 756d 656e 740a 2020 2d20 v2_argument. - │ │ │ -0010f370: 6869 6768 5f73 6576 6572 6974 790a 2020 high_severity. │ │ │ -0010f380: 2d20 6c6f 775f 6469 7372 7570 7469 6f6e - low_disruption │ │ │ -0010f390: 0a20 202d 206d 6564 6975 6d5f 636f 6d70 . - medium_comp │ │ │ -0010f3a0: 6c65 7869 7479 0a20 202d 2072 6562 6f6f lexity. - reboo │ │ │ -0010f3b0: 745f 7265 7175 6972 6564 0a20 202d 2072 t_required. - r │ │ │ -0010f3c0: 6573 7472 6963 745f 7374 7261 7465 6779 estrict_strategy │ │ │ -0010f3d0: 0a0a 2d20 6e61 6d65 3a20 5570 6461 7465 ..- name: Update │ │ │ -0010f3e0: 2067 7275 6220 6465 6661 756c 7473 2061 grub defaults a │ │ │ -0010f3f0: 6e64 2074 6865 2062 6f6f 746c 6f61 6465 nd the bootloade │ │ │ -0010f400: 7220 6d65 6e75 0a20 2061 6e73 6962 6c65 r menu. ansible │ │ │ -0010f410: 2e62 7569 6c74 696e 2e63 6f6d 6d61 6e64 .builtin.command │ │ │ -0010f420: 3a20 2f73 6269 6e2f 6772 7562 6279 202d : /sbin/grubby - │ │ │ -0010f430: 2d75 7064 6174 652d 6b65 726e 656c 3d41 -update-kernel=A │ │ │ -0010f440: 4c4c 202d 2d61 7267 733d 2273 7065 6374 LL --args="spect │ │ │ -0010f450: 7265 5f76 323d 6f6e 220a 2020 7768 656e re_v2=on". when │ │ │ -0010f460: 3a0a 2020 2d20 2820 2267 7275 6232 2d63 :. - ( "grub2-c │ │ │ -0010f470: 6f6d 6d6f 6e22 2069 6e20 616e 7369 626c ommon" in ansibl │ │ │ -0010f480: 655f 6661 6374 732e 7061 636b 6167 6573 e_facts.packages │ │ │ -0010f490: 2061 6e64 2022 6b65 726e 656c 2220 696e and "kernel" in │ │ │ -0010f4a0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70 ansible_facts.p │ │ │ -0010f4b0: 6163 6b61 6765 730a 2020 2020 290a 2020 ackages. ). │ │ │ -0010f4c0: 2d20 2867 7275 6262 795f 696e 666f 2e73 - (grubby_info.s │ │ │ -0010f4d0: 7464 6f75 7420 6973 206e 6f74 2073 6561 tdout is not sea │ │ │ -0010f4e0: 7263 6828 2773 7065 6374 7265 5f76 323d rch('spectre_v2= │ │ │ -0010f4f0: 6f6e 2729 2920 6f72 2028 2865 7463 5f64 on')) or ((etc_d │ │ │ -0010f500: 6566 6175 6c74 5f67 7275 625b 2763 6f6e efault_grub['con │ │ │ -0010f510: 7465 6e74 275d 0a20 2020 207c 2062 3634 tent']. | b64 │ │ │ -0010f520: 6465 636f 6465 2920 6973 206e 6f74 2073 decode) is not s │ │ │ -0010f530: 6561 7263 6828 2773 7065 6374 7265 5f76 earch('spectre_v │ │ │ -0010f540: 323d 6f6e 2729 290a 2020 7461 6773 3a0a 2=on')). tags:. │ │ │ -0010f550: 2020 2d20 6772 7562 325f 7370 6563 7472 - grub2_spectr │ │ │ -0010f560: 655f 7632 5f61 7267 756d 656e 740a 2020 e_v2_argument. │ │ │ -0010f570: 2d20 6869 6768 5f73 6576 6572 6974 790a - high_severity. │ │ │ -0010f580: 2020 2d20 6c6f 775f 6469 7372 7570 7469 - low_disrupti │ │ │ -0010f590: 6f6e 0a20 202d 206d 6564 6975 6d5f 636f on. - medium_co │ │ │ -0010f5a0: 6d70 6c65 7869 7479 0a20 202d 2072 6562 mplexity. - reb │ │ │ -0010f5b0: 6f6f 745f 7265 7175 6972 6564 0a20 202d oot_required. - │ │ │ -0010f5c0: 2072 6573 7472 6963 745f 7374 7261 7465 restrict_strate │ │ │ -0010f5d0: 6779 0a3c 2f63 6f64 653e 3c2f 7072 653e gy. │ │ │ +0010ed30: 6174 696f 6e20 416e 7369 626c 6520 736e ation Ansible sn │ │ │ +0010ed40: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
< │ │ │ +0010edf0: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>
- n
│ │ │ +0010ee80: 616d 653a 2047 6174 6865 7220 7468 6520  ame: Gather the 
│ │ │ +0010ee90: 7061 636b 6167 6520 6661 6374 730a 2020  package facts.  
│ │ │ +0010eea0: 7061 636b 6167 655f 6661 6374 733a 0a20  package_facts:. 
│ │ │ +0010eeb0: 2020 206d 616e 6167 6572 3a20 6175 746f     manager: auto
│ │ │ +0010eec0: 0a20 2074 6167 733a 0a20 202d 2067 7275  .  tags:.  - gru
│ │ │ +0010eed0: 6232 5f73 7065 6374 7265 5f76 325f 6172  b2_spectre_v2_ar
│ │ │ +0010eee0: 6775 6d65 6e74 0a20 202d 2068 6967 685f  gument.  - high_
│ │ │ +0010eef0: 7365 7665 7269 7479 0a20 202d 206c 6f77  severity.  - low
│ │ │ +0010ef00: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +0010ef10: 6d65 6469 756d 5f63 6f6d 706c 6578 6974  medium_complexit
│ │ │ +0010ef20: 790a 2020 2d20 7265 626f 6f74 5f72 6571  y.  - reboot_req
│ │ │ +0010ef30: 7569 7265 640a 2020 2d20 7265 7374 7269  uired.  - restri
│ │ │ +0010ef40: 6374 5f73 7472 6174 6567 790a 0a2d 206e  ct_strategy..- n
│ │ │ +0010ef50: 616d 653a 2043 6865 636b 2069 6620 7370  ame: Check if sp
│ │ │ +0010ef60: 6563 7472 655f 7632 2061 7267 756d 656e  ectre_v2 argumen
│ │ │ +0010ef70: 7420 6973 2061 6c72 6561 6479 2070 7265  t is already pre
│ │ │ +0010ef80: 7365 6e74 2069 6e20 2f65 7463 2f64 6566  sent in /etc/def
│ │ │ +0010ef90: 6175 6c74 2f67 7275 620a 2020 616e 7369  ault/grub.  ansi
│ │ │ +0010efa0: 626c 652e 6275 696c 7469 6e2e 736c 7572  ble.builtin.slur
│ │ │ +0010efb0: 703a 0a20 2020 2073 7263 3a20 2f65 7463  p:.    src: /etc
│ │ │ +0010efc0: 2f64 6566 6175 6c74 2f67 7275 620a 2020  /default/grub.  
│ │ │ +0010efd0: 7265 6769 7374 6572 3a20 6574 635f 6465  register: etc_de
│ │ │ +0010efe0: 6661 756c 745f 6772 7562 0a20 2077 6865  fault_grub.  whe
│ │ │ +0010eff0: 6e3a 2028 2022 6772 7562 322d 636f 6d6d  n: ( "grub2-comm
│ │ │ +0010f000: 6f6e 2220 696e 2061 6e73 6962 6c65 5f66  on" in ansible_f
│ │ │ +0010f010: 6163 7473 2e70 6163 6b61 6765 7320 616e  acts.packages an
│ │ │ +0010f020: 6420 226b 6572 6e65 6c22 2069 6e20 616e  d "kernel" in an
│ │ │ +0010f030: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ +0010f040: 6167 6573 0a20 2020 2029 0a20 2074 6167  ages.    ).  tag
│ │ │ +0010f050: 733a 0a20 202d 2067 7275 6232 5f73 7065  s:.  - grub2_spe
│ │ │ +0010f060: 6374 7265 5f76 325f 6172 6775 6d65 6e74  ctre_v2_argument
│ │ │ +0010f070: 0a20 202d 2068 6967 685f 7365 7665 7269  .  - high_severi
│ │ │ +0010f080: 7479 0a20 202d 206c 6f77 5f64 6973 7275  ty.  - low_disru
│ │ │ +0010f090: 7074 696f 6e0a 2020 2d20 6d65 6469 756d  ption.  - medium
│ │ │ +0010f0a0: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +0010f0b0: 7265 626f 6f74 5f72 6571 7569 7265 640a  reboot_required.
│ │ │ +0010f0c0: 2020 2d20 7265 7374 7269 6374 5f73 7472    - restrict_str
│ │ │ +0010f0d0: 6174 6567 790a 0a2d 206e 616d 653a 2043  ategy..- name: C
│ │ │ +0010f0e0: 6865 636b 2069 6620 7370 6563 7472 655f  heck if spectre_
│ │ │ +0010f0f0: 7632 2061 7267 756d 656e 7420 6973 2061  v2 argument is a
│ │ │ +0010f100: 6c72 6561 6479 2070 7265 7365 6e74 0a20  lready present. 
│ │ │ +0010f110: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ +0010f120: 2e63 6f6d 6d61 6e64 3a20 2f73 6269 6e2f  .command: /sbin/
│ │ │ +0010f130: 6772 7562 6279 202d 2d69 6e66 6f3d 414c  grubby --info=AL
│ │ │ +0010f140: 4c0a 2020 7265 6769 7374 6572 3a20 6772  L.  register: gr
│ │ │ +0010f150: 7562 6279 5f69 6e66 6f0a 2020 6368 6563  ubby_info.  chec
│ │ │ +0010f160: 6b5f 6d6f 6465 3a20 6661 6c73 650a 2020  k_mode: false.  
│ │ │ +0010f170: 6368 616e 6765 645f 7768 656e 3a20 6661  changed_when: fa
│ │ │ +0010f180: 6c73 650a 2020 6661 696c 6564 5f77 6865  lse.  failed_whe
│ │ │ +0010f190: 6e3a 2066 616c 7365 0a20 2077 6865 6e3a  n: false.  when:
│ │ │ +0010f1a0: 2028 2022 6772 7562 322d 636f 6d6d 6f6e   ( "grub2-common
│ │ │ +0010f1b0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +0010f1c0: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ +0010f1d0: 226b 6572 6e65 6c22 2069 6e20 616e 7369  "kernel" in ansi
│ │ │ +0010f1e0: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +0010f1f0: 6573 0a20 2020 2029 0a20 2074 6167 733a  es.    ).  tags:
│ │ │ +0010f200: 0a20 202d 2067 7275 6232 5f73 7065 6374  .  - grub2_spect
│ │ │ +0010f210: 7265 5f76 325f 6172 6775 6d65 6e74 0a20  re_v2_argument. 
│ │ │ +0010f220: 202d 2068 6967 685f 7365 7665 7269 7479   - high_severity
│ │ │ +0010f230: 0a20 202d 206c 6f77 5f64 6973 7275 7074  .  - low_disrupt
│ │ │ +0010f240: 696f 6e0a 2020 2d20 6d65 6469 756d 5f63  ion.  - medium_c
│ │ │ +0010f250: 6f6d 706c 6578 6974 790a 2020 2d20 7265  omplexity.  - re
│ │ │ +0010f260: 626f 6f74 5f72 6571 7569 7265 640a 2020  boot_required.  
│ │ │ +0010f270: 2d20 7265 7374 7269 6374 5f73 7472 6174  - restrict_strat
│ │ │ +0010f280: 6567 790a 0a2d 206e 616d 653a 2055 7064  egy..- name: Upd
│ │ │ +0010f290: 6174 6520 6772 7562 2064 6566 6175 6c74  ate grub default
│ │ │ +0010f2a0: 7320 616e 6420 7468 6520 626f 6f74 6c6f  s and the bootlo
│ │ │ +0010f2b0: 6164 6572 206d 656e 750a 2020 616e 7369  ader menu.  ansi
│ │ │ +0010f2c0: 626c 652e 6275 696c 7469 6e2e 636f 6d6d  ble.builtin.comm
│ │ │ +0010f2d0: 616e 643a 202f 7362 696e 2f67 7275 6262  and: /sbin/grubb
│ │ │ +0010f2e0: 7920 2d2d 7570 6461 7465 2d6b 6572 6e65  y --update-kerne
│ │ │ +0010f2f0: 6c3d 414c 4c20 2d2d 6172 6773 3d22 7370  l=ALL --args="sp
│ │ │ +0010f300: 6563 7472 655f 7632 3d6f 6e22 0a20 2077  ectre_v2=on".  w
│ │ │ +0010f310: 6865 6e3a 0a20 202d 2028 2022 6772 7562  hen:.  - ( "grub
│ │ │ +0010f320: 322d 636f 6d6d 6f6e 2220 696e 2061 6e73  2-common" in ans
│ │ │ +0010f330: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +0010f340: 6765 7320 616e 6420 226b 6572 6e65 6c22  ges and "kernel"
│ │ │ +0010f350: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ +0010f360: 732e 7061 636b 6167 6573 0a20 2020 2029  s.packages.    )
│ │ │ +0010f370: 0a20 202d 2028 6772 7562 6279 5f69 6e66  .  - (grubby_inf
│ │ │ +0010f380: 6f2e 7374 646f 7574 2069 7320 6e6f 7420  o.stdout is not 
│ │ │ +0010f390: 7365 6172 6368 2827 7370 6563 7472 655f  search('spectre_
│ │ │ +0010f3a0: 7632 3d6f 6e27 2929 206f 7220 2828 6574  v2=on')) or ((et
│ │ │ +0010f3b0: 635f 6465 6661 756c 745f 6772 7562 5b27  c_default_grub['
│ │ │ +0010f3c0: 636f 6e74 656e 7427 5d0a 2020 2020 7c20  content'].    | 
│ │ │ +0010f3d0: 6236 3464 6563 6f64 6529 2069 7320 6e6f  b64decode) is no
│ │ │ +0010f3e0: 7420 7365 6172 6368 2827 7370 6563 7472  t search('spectr
│ │ │ +0010f3f0: 655f 7632 3d6f 6e27 2929 0a20 2074 6167  e_v2=on')).  tag
│ │ │ +0010f400: 733a 0a20 202d 2067 7275 6232 5f73 7065  s:.  - grub2_spe
│ │ │ +0010f410: 6374 7265 5f76 325f 6172 6775 6d65 6e74  ctre_v2_argument
│ │ │ +0010f420: 0a20 202d 2068 6967 685f 7365 7665 7269  .  - high_severi
│ │ │ +0010f430: 7479 0a20 202d 206c 6f77 5f64 6973 7275  ty.  - low_disru
│ │ │ +0010f440: 7074 696f 6e0a 2020 2d20 6d65 6469 756d  ption.  - medium
│ │ │ +0010f450: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ +0010f460: 7265 626f 6f74 5f72 6571 7569 7265 640a  reboot_required.
│ │ │ +0010f470: 2020 2d20 7265 7374 7269 6374 5f73 7472    - restrict_str
│ │ │ +0010f480: 6174 6567 790a 3c2f 636f 6465 3e3c 2f70  ategy.

Remediatio │ │ │ +0010f540: 6e20 4f53 4275 696c 6420 426c 7565 7072 n OSBuild Bluepr │ │ │ +0010f550: 696e 7420 736e 6970 7065 7420 e287 b23c int snippet ...< │ │ │ +0010f560: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
[customization
│ │ │ +0010f5b0: 732e 6b65 726e 656c 5d0a 6170 7065 6e64  s.kernel].append
│ │ │ +0010f5c0: 203d 2022 7370 6563 7472 655f 7632 3d6f   = "spectre_v2=o
│ │ │ +0010f5d0: 6e22 0a3c 2f63 6f64 653e 3c2f 7072 653e  n".
│ │ │ 0010f5e0: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22
Remediation OS │ │ │ -0014ac60: 4275 696c 6420 426c 7565 7072 696e 7420 Build Blueprint │ │ │ -0014ac70: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ -0014ac80: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
.[
│ │ │ -0014acc0: 5b70 6163 6b61 6765 735d 5d0a 6e61 6d65  [packages]].name
│ │ │ -0014acd0: 203d 2022 6c6f 6772 6f74 6174 6522 0a76   = "logrotate".v
│ │ │ -0014ace0: 6572 7369 6f6e 203d 2022 2a22 0a3c 2f63  ersion = "*".
│ │ │ -0014ad00: 3c61 2063 6c61 7373 3d22 6274 6e20 6274 Rem │ │ │ -0014ada0: 6564 6961 7469 6f6e 2041 6e61 636f 6e64 ediation Anacond │ │ │ -0014adb0: 6120 736e 6970 7065 7420 e287 b23c 2f61 a snippet ...
Compl │ │ │ +0010edd0: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6d exity:m │ │ │ +0010ede0: 6564 6975 6d3c 2f74 643e 3c2f 7472 3e3c edium
Disruptio │ │ │ +0010ee00: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +0010ee20: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +0010ee30: 7472 7565 3c2f 7464 3e3c 2f74 723e 3c74 true
Strategy:< │ │ │ +0010ee50: 2f74 683e 3c74 643e 7265 7374 7269 6374 /th>restrict │ │ │ +0010ee60: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
< │ │ │ -0014ae50: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -0014ae60: 3c74 723e 3c74 683e 4469 7372 7570 7469 │ │ │ -0014aeb0: 3c74 723e 3c74 683e 5374 7261 7465 6779
.pa
│ │ │ -0014aef0: 636b 6167 6520 2d2d 6164 643d 6c6f 6772  ckage --add=logr
│ │ │ -0014af00: 6f74 6174 650a 3c2f 636f 6465 3e3c 2f70  otate.

Remediatio │ │ │ -0014afc0: 6e20 5075 7070 6574 2073 6e69 7070 6574 n Puppet snippet │ │ │ -0014afd0: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
< │ │ │ -0014b090: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ -0014b0a0: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c
C │ │ │ -0014ae40: 6f6d 706c 6578 6974 793a 3c2f 7468 3e3c omplexity:
Disrupti │ │ │ -0014ae70: 6f6e 3a3c 2f74 683e 3c74 643e 6c6f 773c on:low< │ │ │ -0014ae80: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>
Reboot:false
Strategy │ │ │ -0014aec0: 3a3c 2f74 683e 3c74 643e 656e 6162 6c65 :enable │ │ │ -0014aed0: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Complexity │ │ │ -0014b060: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
D │ │ │ -0014b080: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:
Reboot:< │ │ │ -0014b0b0: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>false
S │ │ │ -0014b0d0: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:enable
include inst
│ │ │ -0014b110: 616c 6c5f 6c6f 6772 6f74 6174 650a 0a63  all_logrotate..c
│ │ │ -0014b120: 6c61 7373 2069 6e73 7461 6c6c 5f6c 6f67  lass install_log
│ │ │ -0014b130: 726f 7461 7465 207b 0a20 2070 6163 6b61  rotate {.  packa
│ │ │ -0014b140: 6765 207b 2027 6c6f 6772 6f74 6174 6527  ge { 'logrotate'
│ │ │ -0014b150: 3a0a 2020 2020 656e 7375 7265 203d 2667  :.    ensure =&g
│ │ │ -0014b160: 743b 2027 696e 7374 616c 6c65 6427 2c0a  t; 'installed',.
│ │ │ -0014b170: 2020 7d0a 7d0a 3c2f 636f 6465 3e3c 2f70    }.}.

Remediatio │ │ │ -0014b230: 6e20 416e 7369 626c 6520 736e 6970 7065 n Ansible snippe │ │ │ -0014b240: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ -0014b2c0: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ -0014b2d0: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ -0014b2f0: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ -0014b300: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 lowReboot: │ │ │ -0014b320: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false │ │ │ -0014b340: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:enable
<
│ │ │ -0014b370: 636f 6465 3e2d 206e 616d 653a 2047 6174  code>- name: Gat
│ │ │ -0014b380: 6865 7220 7468 6520 7061 636b 6167 6520  her the package 
│ │ │ -0014b390: 6661 6374 730a 2020 7061 636b 6167 655f  facts.  package_
│ │ │ -0014b3a0: 6661 6374 733a 0a20 2020 206d 616e 6167  facts:.    manag
│ │ │ -0014b3b0: 6572 3a20 6175 746f 0a20 2074 6167 733a  er: auto.  tags:
│ │ │ -0014b3c0: 0a20 202d 204e 4953 542d 3830 302d 3533  .  - NIST-800-53
│ │ │ -0014b3d0: 2d43 4d2d 3628 6129 0a20 202d 2050 4349  -CM-6(a).  - PCI
│ │ │ -0014b3e0: 2d44 5353 2d52 6571 2d31 302e 370a 2020  -DSS-Req-10.7.  
│ │ │ -0014b3f0: 2d20 5043 492d 4453 5376 342d 3130 2e35  - PCI-DSSv4-10.5
│ │ │ -0014b400: 0a20 202d 2050 4349 2d44 5353 7634 2d31  .  - PCI-DSSv4-1
│ │ │ -0014b410: 302e 352e 310a 2020 2d20 656e 6162 6c65  0.5.1.  - enable
│ │ │ -0014b420: 5f73 7472 6174 6567 790a 2020 2d20 6c6f  _strategy.  - lo
│ │ │ -0014b430: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ -0014b440: 206c 6f77 5f64 6973 7275 7074 696f 6e0a   low_disruption.
│ │ │ -0014b450: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ -0014b460: 6974 790a 2020 2d20 6e6f 5f72 6562 6f6f  ity.  - no_reboo
│ │ │ -0014b470: 745f 6e65 6564 6564 0a20 202d 2070 6163  t_needed.  - pac
│ │ │ -0014b480: 6b61 6765 5f6c 6f67 726f 7461 7465 5f69  kage_logrotate_i
│ │ │ -0014b490: 6e73 7461 6c6c 6564 0a0a 2d20 6e61 6d65  nstalled..- name
│ │ │ -0014b4a0: 3a20 456e 7375 7265 206c 6f67 726f 7461  : Ensure logrota
│ │ │ -0014b4b0: 7465 2069 7320 696e 7374 616c 6c65 640a  te is installed.
│ │ │ -0014b4c0: 2020 616e 7369 626c 652e 6275 696c 7469    ansible.builti
│ │ │ -0014b4d0: 6e2e 7061 636b 6167 653a 0a20 2020 206e  n.package:.    n
│ │ │ -0014b4e0: 616d 653a 206c 6f67 726f 7461 7465 0a20  ame: logrotate. 
│ │ │ -0014b4f0: 2020 2073 7461 7465 3a20 7072 6573 656e     state: presen
│ │ │ -0014b500: 740a 2020 7768 656e 3a20 2722 6b65 726e  t.  when: '"kern
│ │ │ -0014b510: 656c 2220 696e 2061 6e73 6962 6c65 5f66  el" in ansible_f
│ │ │ -0014b520: 6163 7473 2e70 6163 6b61 6765 7327 0a20  acts.packages'. 
│ │ │ -0014b530: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ -0014b540: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ -0014b550: 202d 2050 4349 2d44 5353 2d52 6571 2d31   - PCI-DSS-Req-1
│ │ │ -0014b560: 302e 370a 2020 2d20 5043 492d 4453 5376  0.7.  - PCI-DSSv
│ │ │ -0014b570: 342d 3130 2e35 0a20 202d 2050 4349 2d44  4-10.5.  - PCI-D
│ │ │ -0014b580: 5353 7634 2d31 302e 352e 310a 2020 2d20  SSv4-10.5.1.  - 
│ │ │ -0014b590: 656e 6162 6c65 5f73 7472 6174 6567 790a  enable_strategy.
│ │ │ -0014b5a0: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ -0014b5b0: 7479 0a20 202d 206c 6f77 5f64 6973 7275  ty.  - low_disru
│ │ │ -0014b5c0: 7074 696f 6e0a 2020 2d20 6d65 6469 756d  ption.  - medium
│ │ │ -0014b5d0: 5f73 6576 6572 6974 790a 2020 2d20 6e6f  _severity.  - no
│ │ │ -0014b5e0: 5f72 6562 6f6f 745f 6e65 6564 6564 0a20  _reboot_needed. 
│ │ │ -0014b5f0: 202d 2070 6163 6b61 6765 5f6c 6f67 726f   - package_logro
│ │ │ -0014b600: 7461 7465 5f69 6e73 7461 6c6c 6564 0a3c  tate_installed.<
│ │ │ -0014b610: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ -0014b6c0: 656d 6564 6961 7469 6f6e 2053 6865 6c6c emediation Shell │ │ │ -0014b6d0: 2073 6372 6970 7420 e287 b23c 2f61 3e3c script ...< │ │ │ -0014b6e0: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
Com │ │ │ -0014b760: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ -0014b790: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :low
R │ │ │ -0014b7b0: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -0014b7c0: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -0014b7e0: 2f74 683e 3c74 643e 656e 6162 6c65 3c2f /th>enable
│ │ │ -0014b800: 3c70 7265 3e3c 636f 6465 3e23 2052 656d
# Rem
│ │ │ -0014b810: 6564 6961 7469 6f6e 2069 7320 6170 706c  ediation is appl
│ │ │ -0014b820: 6963 6162 6c65 206f 6e6c 7920 696e 2063  icable only in c
│ │ │ -0014b830: 6572 7461 696e 2070 6c61 7466 6f72 6d73  ertain platforms
│ │ │ -0014b840: 0a69 6620 7270 6d20 2d2d 7175 6965 7420  .if rpm --quiet 
│ │ │ -0014b850: 2d71 206b 6572 6e65 6c3b 2074 6865 6e0a  -q kernel; then.
│ │ │ -0014b860: 0a69 6620 2120 7270 6d20 2d71 202d 2d71  .if ! rpm -q --q
│ │ │ -0014b870: 7569 6574 2022 6c6f 6772 6f74 6174 6522  uiet "logrotate"
│ │ │ -0014b880: 203b 2074 6865 6e0a 2020 2020 646e 6620   ; then.    dnf 
│ │ │ -0014b890: 696e 7374 616c 6c20 2d79 2022 6c6f 6772  install -y "logr
│ │ │ -0014b8a0: 6f74 6174 6522 0a66 690a 0a65 6c73 650a  otate".fi..else.
│ │ │ -0014b8b0: 2020 2020 2667 743b 2661 6d70 3b32 2065      >&2 e
│ │ │ -0014b8c0: 6368 6f20 2752 656d 6564 6961 7469 6f6e  cho 'Remediation
│ │ │ -0014b8d0: 2069 7320 6e6f 7420 6170 706c 6963 6162   is not applicab
│ │ │ -0014b8e0: 6c65 2c20 6e6f 7468 696e 6720 7761 7320  le, nothing was 
│ │ │ -0014b8f0: 646f 6e65 270a 6669 0a3c 2f63 6f64 653e  done'.fi.
│ │ │ +0014ac50: 223e 5265 6d65 6469 6174 696f 6e20 416e  ">Remediation An
│ │ │ +0014ac60: 7369 626c 6520 736e 6970 7065 7420 e287  sible snippet ..
│ │ │ +0014ac70: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c  .
< │ │ │ +0014acf0: 7468 3e43 6f6d 706c 6578 6974 793a 3c2f th>Complexity:< │ │ │ +0014ad10: 2f74 723e 3c74 723e 3c74 683e 4469 7372 /tr>< │ │ │ +0014ad60: 2f74 723e 3c74 723e 3c74 683e 5374 7261 /tr>
- name: Gather 
│ │ │ +0014adb0: 7468 6520 7061 636b 6167 6520 6661 6374  the package fact
│ │ │ +0014adc0: 730a 2020 7061 636b 6167 655f 6661 6374  s.  package_fact
│ │ │ +0014add0: 733a 0a20 2020 206d 616e 6167 6572 3a20  s:.    manager: 
│ │ │ +0014ade0: 6175 746f 0a20 2074 6167 733a 0a20 202d  auto.  tags:.  -
│ │ │ +0014adf0: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ +0014ae00: 3628 6129 0a20 202d 2050 4349 2d44 5353  6(a).  - PCI-DSS
│ │ │ +0014ae10: 2d52 6571 2d31 302e 370a 2020 2d20 5043  -Req-10.7.  - PC
│ │ │ +0014ae20: 492d 4453 5376 342d 3130 2e35 0a20 202d  I-DSSv4-10.5.  -
│ │ │ +0014ae30: 2050 4349 2d44 5353 7634 2d31 302e 352e   PCI-DSSv4-10.5.
│ │ │ +0014ae40: 310a 2020 2d20 656e 6162 6c65 5f73 7472  1.  - enable_str
│ │ │ +0014ae50: 6174 6567 790a 2020 2d20 6c6f 775f 636f  ategy.  - low_co
│ │ │ +0014ae60: 6d70 6c65 7869 7479 0a20 202d 206c 6f77  mplexity.  - low
│ │ │ +0014ae70: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ +0014ae80: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ +0014ae90: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ +0014aea0: 6564 6564 0a20 202d 2070 6163 6b61 6765  eded.  - package
│ │ │ +0014aeb0: 5f6c 6f67 726f 7461 7465 5f69 6e73 7461  _logrotate_insta
│ │ │ +0014aec0: 6c6c 6564 0a0a 2d20 6e61 6d65 3a20 456e  lled..- name: En
│ │ │ +0014aed0: 7375 7265 206c 6f67 726f 7461 7465 2069  sure logrotate i
│ │ │ +0014aee0: 7320 696e 7374 616c 6c65 640a 2020 616e  s installed.  an
│ │ │ +0014aef0: 7369 626c 652e 6275 696c 7469 6e2e 7061  sible.builtin.pa
│ │ │ +0014af00: 636b 6167 653a 0a20 2020 206e 616d 653a  ckage:.    name:
│ │ │ +0014af10: 206c 6f67 726f 7461 7465 0a20 2020 2073   logrotate.    s
│ │ │ +0014af20: 7461 7465 3a20 7072 6573 656e 740a 2020  tate: present.  
│ │ │ +0014af30: 7768 656e 3a20 2722 6b65 726e 656c 2220  when: '"kernel" 
│ │ │ +0014af40: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +0014af50: 2e70 6163 6b61 6765 7327 0a20 2074 6167  .packages'.  tag
│ │ │ +0014af60: 733a 0a20 202d 204e 4953 542d 3830 302d  s:.  - NIST-800-
│ │ │ +0014af70: 3533 2d43 4d2d 3628 6129 0a20 202d 2050  53-CM-6(a).  - P
│ │ │ +0014af80: 4349 2d44 5353 2d52 6571 2d31 302e 370a  CI-DSS-Req-10.7.
│ │ │ +0014af90: 2020 2d20 5043 492d 4453 5376 342d 3130    - PCI-DSSv4-10
│ │ │ +0014afa0: 2e35 0a20 202d 2050 4349 2d44 5353 7634  .5.  - PCI-DSSv4
│ │ │ +0014afb0: 2d31 302e 352e 310a 2020 2d20 656e 6162  -10.5.1.  - enab
│ │ │ +0014afc0: 6c65 5f73 7472 6174 6567 790a 2020 2d20  le_strategy.  - 
│ │ │ +0014afd0: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ +0014afe0: 202d 206c 6f77 5f64 6973 7275 7074 696f   - low_disruptio
│ │ │ +0014aff0: 6e0a 2020 2d20 6d65 6469 756d 5f73 6576  n.  - medium_sev
│ │ │ +0014b000: 6572 6974 790a 2020 2d20 6e6f 5f72 6562  erity.  - no_reb
│ │ │ +0014b010: 6f6f 745f 6e65 6564 6564 0a20 202d 2070  oot_needed.  - p
│ │ │ +0014b020: 6163 6b61 6765 5f6c 6f67 726f 7461 7465  ackage_logrotate
│ │ │ +0014b030: 5f69 6e73 7461 6c6c 6564 0a3c 2f63 6f64  _installed.
Remed │ │ │ +0014b0f0: 6961 7469 6f6e 2050 7570 7065 7420 736e iation Puppet sn │ │ │ +0014b100: 6970 7065 7420 e287 b23c 2f61 3e3c 6272 ippet ...
low
Disr │ │ │ +0014ad20: 7570 7469 6f6e 3a3c 2f74 683e 3c74 643e uption: │ │ │ +0014ad30: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Reboot:false
Stra │ │ │ +0014ad70: 7465 6779 3a3c 2f74 683e 3c74 643e 656e tegy:en │ │ │ +0014ad80: 6162 6c65 3c2f 7464 3e3c 2f74 723e 3c2f able
│ │ │ +0014b1b0: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c │ │ │ +0014b1d0: 3c2f 7472 3e3c 7472 3e3c 7468 3e52 6562 │ │ │ +0014b200: 3c74 683e 5374 7261 7465 6779 3a3c 2f74
Compl │ │ │ +0014b190: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ +0014b1a0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ +0014b1c0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Reb │ │ │ +0014b1e0: 6f6f 743a 3c2f 7468 3e3c 7464 3e66 616c oot:fal │ │ │ +0014b1f0: 7365 3c2f 7464 3e3c 2f74 723e 3c74 723e se
Strategy:enable

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

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

Remediatio │ │ │ +0014b4b0: 6e20 5368 656c 6c20 7363 7269 7074 20e2 n Shell script . │ │ │ +0014b4c0: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ +0014b540: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ +0014b560: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ +0014b5b0: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 < │ │ │ +0014b5e0: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
# Remediation 
│ │ │ +0014b600: 6973 2061 7070 6c69 6361 626c 6520 6f6e  is applicable on
│ │ │ +0014b610: 6c79 2069 6e20 6365 7274 6169 6e20 706c  ly in certain pl
│ │ │ +0014b620: 6174 666f 726d 730a 6966 2072 706d 202d  atforms.if rpm -
│ │ │ +0014b630: 2d71 7569 6574 202d 7120 6b65 726e 656c  -quiet -q kernel
│ │ │ +0014b640: 3b20 7468 656e 0a0a 6966 2021 2072 706d  ; then..if ! rpm
│ │ │ +0014b650: 202d 7120 2d2d 7175 6965 7420 226c 6f67   -q --quiet "log
│ │ │ +0014b660: 726f 7461 7465 2220 3b20 7468 656e 0a20  rotate" ; then. 
│ │ │ +0014b670: 2020 2064 6e66 2069 6e73 7461 6c6c 202d     dnf install -
│ │ │ +0014b680: 7920 226c 6f67 726f 7461 7465 220a 6669  y "logrotate".fi
│ │ │ +0014b690: 0a0a 656c 7365 0a20 2020 2026 6774 3b26  ..else.    >&
│ │ │ +0014b6a0: 616d 703b 3220 6563 686f 2027 5265 6d65  amp;2 echo 'Reme
│ │ │ +0014b6b0: 6469 6174 696f 6e20 6973 206e 6f74 2061  diation is not a
│ │ │ +0014b6c0: 7070 6c69 6361 626c 652c 206e 6f74 6869  pplicable, nothi
│ │ │ +0014b6d0: 6e67 2077 6173 2064 6f6e 6527 0a66 690a  ng was done'.fi.
│ │ │ +0014b6e0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64  
│ │ │ +0014b790: 5265 6d65 6469 6174 696f 6e20 416e 6163 Remediation Anac │ │ │ +0014b7a0: 6f6e 6461 2073 6e69 7070 6574 20e2 87b2 onda snippet ... │ │ │ +0014b7b0: 3c2f 613e 3c62 723e 3c64 6976 2063 6c61
Complexity:< │ │ │ +0014b550: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ +0014b570: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ +0014b5c0: 6174 6567 793a 3c2f 7468 3e3c 7464 3e65 ategy:e │ │ │ +0014b5d0: 6e61 626c 653c 2f74 643e 3c2f 7472 3e3c nable
Complexity: │ │ │ +0014b880: 3c74 683e 5265 626f 6f74 3a3c 2f74 683e │ │ │ +0014b890: 3c74 643e 6661 6c73 653c 2f74 643e 3c2f

│ │ │ +0014b8e0: 0a70 6163 6b61 6765 202d 2d61 6464 3d6c  .package --add=l
│ │ │ +0014b8f0: 6f67 726f 7461 7465 0a3c 2f63 6f64 653e  ogrotate.
│ │ │  0014b900: 3c2f 7072 653e 3c2f 6469 763e 3c2f 6469  
low
Disru │ │ │ +0014b860: 7074 696f 6e3a 3c2f 7468 3e3c 7464 3e6c ption:l │ │ │ +0014b870: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Reboot:false
Strat │ │ │ +0014b8b0: 6567 793a 3c2f 7468 3e3c 7464 3e65 6e61 egy:ena │ │ │ +0014b8c0: 626c 653c 2f74 643e 3c2f 7472 3e3c 2f74 ble
Remediatio │ │ │ -00155f90: 6e20 4f53 4275 696c 6420 426c 7565 7072 n OSBuild Bluepr │ │ │ -00155fa0: 696e 7420 736e 6970 7065 7420 e287 b23c int snippet ...< │ │ │ -00155fb0: 2f61 3e3c 6272 3e3c 6469 7620 636c 6173 /a>
.[[packages]].
│ │ │ -00156000: 6e61 6d65 203d 2022 7273 7973 6c6f 672d  name = "rsyslog-
│ │ │ -00156010: 676e 7574 6c73 220a 7665 7273 696f 6e20  gnutls".version 
│ │ │ -00156020: 3d20 222a 220a 3c2f 636f 6465 3e3c 2f70  = "*".

Remediatio │ │ │ -001560e0: 6e20 416e 6163 6f6e 6461 2073 6e69 7070 n Anaconda snipp │ │ │ -001560f0: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64 et ...
│ │ │ -00156170: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ -00156180: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ -00156190: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:lowReboot │ │ │ -001561d0: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -001561e0: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ -00156200: 7464 3e65 6e61 626c 653c 2f74 643e 3c2f td>enable
│ │ │ -00156220: 3c63 6f64 653e 0a70 6163 6b61 6765 202d  .package -
│ │ │ -00156230: 2d61 6464 3d72 7379 736c 6f67 2d67 6e75  -add=rsyslog-gnu
│ │ │ -00156240: 746c 730a 3c2f 636f 6465 3e3c 2f70 7265  tls.
Remediation │ │ │ -00156300: 5075 7070 6574 2073 6e69 7070 6574 20e2 Puppet snippet . │ │ │ -00156310: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
│ │ │ -00156390: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -001563b0: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ -00156400: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 < │ │ │ -00156430: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
include instal
│ │ │ -00156450: 6c5f 7273 7973 6c6f 672d 676e 7574 6c73  l_rsyslog-gnutls
│ │ │ -00156460: 0a0a 636c 6173 7320 696e 7374 616c 6c5f  ..class install_
│ │ │ -00156470: 7273 7973 6c6f 672d 676e 7574 6c73 207b  rsyslog-gnutls {
│ │ │ -00156480: 0a20 2070 6163 6b61 6765 207b 2027 7273  .  package { 'rs
│ │ │ -00156490: 7973 6c6f 672d 676e 7574 6c73 273a 0a20  yslog-gnutls':. 
│ │ │ -001564a0: 2020 2065 6e73 7572 6520 3d26 6774 3b20     ensure => 
│ │ │ -001564b0: 2769 6e73 7461 6c6c 6564 272c 0a20 207d  'installed',.  }
│ │ │ -001564c0: 0a7d 0a3c 2f63 6f64 653e 3c2f 7072 653e  .}.
│ │ │ -001564d0: 3c2f 6469 763e 3c61 2063 6c61 7373 3d22 Remediation A │ │ │ -00156580: 6e73 6962 6c65 2073 6e69 7070 6574 20e2 nsible snippet . │ │ │ -00156590: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
Complexity:< │ │ │ -001563a0: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ -001563c0: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ -00156410: 6174 6567 793a 3c2f 7468 3e3c 7464 3e65 ategy:e │ │ │ -00156420: 6e61 626c 653c 2f74 643e 3c2f 7472 3e3c nable
│ │ │ -00156610: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -00156630: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ -00156680: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 < │ │ │ -001566b0: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
- name: Gather
│ │ │ -001566d0: 2074 6865 2070 6163 6b61 6765 2066 6163   the package fac
│ │ │ -001566e0: 7473 0a20 2070 6163 6b61 6765 5f66 6163  ts.  package_fac
│ │ │ -001566f0: 7473 3a0a 2020 2020 6d61 6e61 6765 723a  ts:.    manager:
│ │ │ -00156700: 2061 7574 6f0a 2020 7461 6773 3a0a 2020   auto.  tags:.  
│ │ │ -00156710: 2d20 656e 6162 6c65 5f73 7472 6174 6567  - enable_strateg
│ │ │ -00156720: 790a 2020 2d20 6c6f 775f 636f 6d70 6c65  y.  - low_comple
│ │ │ -00156730: 7869 7479 0a20 202d 206c 6f77 5f64 6973  xity.  - low_dis
│ │ │ -00156740: 7275 7074 696f 6e0a 2020 2d20 6d65 6469  ruption.  - medi
│ │ │ -00156750: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ -00156760: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ -00156770: 0a20 202d 2070 6163 6b61 6765 5f72 7379  .  - package_rsy
│ │ │ -00156780: 736c 6f67 2d67 6e75 746c 735f 696e 7374  slog-gnutls_inst
│ │ │ -00156790: 616c 6c65 640a 0a2d 206e 616d 653a 2045  alled..- name: E
│ │ │ -001567a0: 6e73 7572 6520 7273 7973 6c6f 672d 676e  nsure rsyslog-gn
│ │ │ -001567b0: 7574 6c73 2069 7320 696e 7374 616c 6c65  utls is installe
│ │ │ -001567c0: 640a 2020 616e 7369 626c 652e 6275 696c  d.  ansible.buil
│ │ │ -001567d0: 7469 6e2e 7061 636b 6167 653a 0a20 2020  tin.package:.   
│ │ │ -001567e0: 206e 616d 653a 2072 7379 736c 6f67 2d67   name: rsyslog-g
│ │ │ -001567f0: 6e75 746c 730a 2020 2020 7374 6174 653a  nutls.    state:
│ │ │ -00156800: 2070 7265 7365 6e74 0a20 2077 6865 6e3a   present.  when:
│ │ │ -00156810: 2027 226b 6572 6e65 6c22 2069 6e20 616e   '"kernel" in an
│ │ │ -00156820: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -00156830: 6167 6573 270a 2020 7461 6773 3a0a 2020  ages'.  tags:.  
│ │ │ -00156840: 2d20 656e 6162 6c65 5f73 7472 6174 6567  - enable_strateg
│ │ │ -00156850: 790a 2020 2d20 6c6f 775f 636f 6d70 6c65  y.  - low_comple
│ │ │ -00156860: 7869 7479 0a20 202d 206c 6f77 5f64 6973  xity.  - low_dis
│ │ │ -00156870: 7275 7074 696f 6e0a 2020 2d20 6d65 6469  ruption.  - medi
│ │ │ -00156880: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ -00156890: 6e6f 5f72 6562 6f6f 745f 6e65 6564 6564  no_reboot_needed
│ │ │ -001568a0: 0a20 202d 2070 6163 6b61 6765 5f72 7379  .  - package_rsy
│ │ │ -001568b0: 736c 6f67 2d67 6e75 746c 735f 696e 7374  slog-gnutls_inst
│ │ │ -001568c0: 616c 6c65 640a 3c2f 636f 6465 3e3c 2f70  alled.

Remediatio │ │ │ -00156980: 6e20 5368 656c 6c20 7363 7269 7074 20e2 n Shell script . │ │ │ -00156990: 87b2 3c2f 613e 3c62 723e 3c64 6976 2063 ..
Complexity:< │ │ │ -00156620: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ -00156640: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ -00156690: 6174 6567 793a 3c2f 7468 3e3c 7464 3e65 ategy:e │ │ │ -001566a0: 6e61 626c 653c 2f74 643e 3c2f 7472 3e3c nable
│ │ │ -00156a10: 3c74 683e 436f 6d70 6c65 7869 7479 3a3c │ │ │ -00156a30: 3c2f 7472 3e3c 7472 3e3c 7468 3e44 6973 │ │ │ -00156a80: 3c2f 7472 3e3c 7472 3e3c 7468 3e53 7472 < │ │ │ -00156ab0: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
# Remediation 
│ │ │ -00156ad0: 6973 2061 7070 6c69 6361 626c 6520 6f6e  is applicable on
│ │ │ -00156ae0: 6c79 2069 6e20 6365 7274 6169 6e20 706c  ly in certain pl
│ │ │ -00156af0: 6174 666f 726d 730a 6966 2072 706d 202d  atforms.if rpm -
│ │ │ -00156b00: 2d71 7569 6574 202d 7120 6b65 726e 656c  -quiet -q kernel
│ │ │ -00156b10: 3b20 7468 656e 0a0a 6966 2021 2072 706d  ; then..if ! rpm
│ │ │ -00156b20: 202d 7120 2d2d 7175 6965 7420 2272 7379   -q --quiet "rsy
│ │ │ -00156b30: 736c 6f67 2d67 6e75 746c 7322 203b 2074  slog-gnutls" ; t
│ │ │ -00156b40: 6865 6e0a 2020 2020 646e 6620 696e 7374  hen.    dnf inst
│ │ │ -00156b50: 616c 6c20 2d79 2022 7273 7973 6c6f 672d  all -y "rsyslog-
│ │ │ -00156b60: 676e 7574 6c73 220a 6669 0a0a 656c 7365  gnutls".fi..else
│ │ │ -00156b70: 0a20 2020 2026 6774 3b26 616d 703b 3220  .    >&2 
│ │ │ -00156b80: 6563 686f 2027 5265 6d65 6469 6174 696f  echo 'Remediatio
│ │ │ -00156b90: 6e20 6973 206e 6f74 2061 7070 6c69 6361  n is not applica
│ │ │ -00156ba0: 626c 652c 206e 6f74 6869 6e67 2077 6173  ble, nothing was
│ │ │ -00156bb0: 2064 6f6e 6527 0a66 690a 3c2f 636f 6465   done'.fi.
< │ │ │ +00156020: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>
│ │ │ +00156060: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 enable
Complexity:< │ │ │ -00156a20: 2f74 683e 3c74 643e 6c6f 773c 2f74 643e /th>low
Dis │ │ │ -00156a40: 7275 7074 696f 6e3a 3c2f 7468 3e3c 7464 ruption:low
Reboot:false
Str │ │ │ -00156a90: 6174 6567 793a 3c2f 7468 3e3c 7464 3e65 ategy:e │ │ │ -00156aa0: 6e61 626c 653c 2f74 643e 3c2f 7472 3e3c nable
Complexit │ │ │ +00156030: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low
│ │ │ +00156050: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption:low
Reboot: │ │ │ +00156080: 3c2f 7468 3e3c 7464 3e66 616c 7365 3c2f false
│ │ │ +001560a0: 5374 7261 7465 6779 3a3c 2f74 683e 3c74 Strategy:
<
│ │ │ +001560d0: 636f 6465 3e2d 206e 616d 653a 2047 6174  code>- name: Gat
│ │ │ +001560e0: 6865 7220 7468 6520 7061 636b 6167 6520  her the package 
│ │ │ +001560f0: 6661 6374 730a 2020 7061 636b 6167 655f  facts.  package_
│ │ │ +00156100: 6661 6374 733a 0a20 2020 206d 616e 6167  facts:.    manag
│ │ │ +00156110: 6572 3a20 6175 746f 0a20 2074 6167 733a  er: auto.  tags:
│ │ │ +00156120: 0a20 202d 2065 6e61 626c 655f 7374 7261  .  - enable_stra
│ │ │ +00156130: 7465 6779 0a20 202d 206c 6f77 5f63 6f6d  tegy.  - low_com
│ │ │ +00156140: 706c 6578 6974 790a 2020 2d20 6c6f 775f  plexity.  - low_
│ │ │ +00156150: 6469 7372 7570 7469 6f6e 0a20 202d 206d  disruption.  - m
│ │ │ +00156160: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ +00156170: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ +00156180: 6465 640a 2020 2d20 7061 636b 6167 655f  ded.  - package_
│ │ │ +00156190: 7273 7973 6c6f 672d 676e 7574 6c73 5f69  rsyslog-gnutls_i
│ │ │ +001561a0: 6e73 7461 6c6c 6564 0a0a 2d20 6e61 6d65  nstalled..- name
│ │ │ +001561b0: 3a20 456e 7375 7265 2072 7379 736c 6f67  : Ensure rsyslog
│ │ │ +001561c0: 2d67 6e75 746c 7320 6973 2069 6e73 7461  -gnutls is insta
│ │ │ +001561d0: 6c6c 6564 0a20 2061 6e73 6962 6c65 2e62  lled.  ansible.b
│ │ │ +001561e0: 7569 6c74 696e 2e70 6163 6b61 6765 3a0a  uiltin.package:.
│ │ │ +001561f0: 2020 2020 6e61 6d65 3a20 7273 7973 6c6f      name: rsyslo
│ │ │ +00156200: 672d 676e 7574 6c73 0a20 2020 2073 7461  g-gnutls.    sta
│ │ │ +00156210: 7465 3a20 7072 6573 656e 740a 2020 7768  te: present.  wh
│ │ │ +00156220: 656e 3a20 2722 6b65 726e 656c 2220 696e  en: '"kernel" in
│ │ │ +00156230: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ +00156240: 6163 6b61 6765 7327 0a20 2074 6167 733a  ackages'.  tags:
│ │ │ +00156250: 0a20 202d 2065 6e61 626c 655f 7374 7261  .  - enable_stra
│ │ │ +00156260: 7465 6779 0a20 202d 206c 6f77 5f63 6f6d  tegy.  - low_com
│ │ │ +00156270: 706c 6578 6974 790a 2020 2d20 6c6f 775f  plexity.  - low_
│ │ │ +00156280: 6469 7372 7570 7469 6f6e 0a20 202d 206d  disruption.  - m
│ │ │ +00156290: 6564 6975 6d5f 7365 7665 7269 7479 0a20  edium_severity. 
│ │ │ +001562a0: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565   - no_reboot_nee
│ │ │ +001562b0: 6465 640a 2020 2d20 7061 636b 6167 655f  ded.  - package_
│ │ │ +001562c0: 7273 7973 6c6f 672d 676e 7574 6c73 5f69  rsyslog-gnutls_i
│ │ │ +001562d0: 6e73 7461 6c6c 6564 0a3c 2f63 6f64 653e  nstalled.
│ │ │ +001562e0: 3c2f 7072 653e 3c2f 6469 763e 3c61 2063  
Remedia │ │ │ +00156390: 7469 6f6e 2050 7570 7065 7420 736e 6970 tion Puppet snip │ │ │ +001563a0: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ +001563b0: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ +001563c0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ +001563d0: 7365 2220 6964 3d22 6964 3338 3822 3e3c se" id="id388">< │ │ │ +001563e0: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ +001563f0: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ +00156400: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ +00156410: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ +00156420: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Complex │ │ │ +00156430: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ +00156440: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Disruption:lowReboo │ │ │ +00156480: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ +00156490: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ +001564b0: 3c74 643e 656e 6162 6c65 3c2f 7464 3e3c enable< │ │ │ +001564c0: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
include i
│ │ │ +001564e0: 6e73 7461 6c6c 5f72 7379 736c 6f67 2d67  nstall_rsyslog-g
│ │ │ +001564f0: 6e75 746c 730a 0a63 6c61 7373 2069 6e73  nutls..class ins
│ │ │ +00156500: 7461 6c6c 5f72 7379 736c 6f67 2d67 6e75  tall_rsyslog-gnu
│ │ │ +00156510: 746c 7320 7b0a 2020 7061 636b 6167 6520  tls {.  package 
│ │ │ +00156520: 7b20 2772 7379 736c 6f67 2d67 6e75 746c  { 'rsyslog-gnutl
│ │ │ +00156530: 7327 3a0a 2020 2020 656e 7375 7265 203d  s':.    ensure =
│ │ │ +00156540: 2667 743b 2027 696e 7374 616c 6c65 6427  > 'installed'
│ │ │ +00156550: 2c0a 2020 7d0a 7d0a 3c2f 636f 6465 3e3c  ,.  }.}.<
│ │ │ +00156560: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>
Remediat │ │ │ +00156610: 696f 6e20 4f53 4275 696c 6420 426c 7565 ion OSBuild Blue │ │ │ +00156620: 7072 696e 7420 736e 6970 7065 7420 e287 print snippet .. │ │ │ +00156630: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c .
.[[packages]
│ │ │ +00156680: 5d0a 6e61 6d65 203d 2022 7273 7973 6c6f  ].name = "rsyslo
│ │ │ +00156690: 672d 676e 7574 6c73 220a 7665 7273 696f  g-gnutls".versio
│ │ │ +001566a0: 6e20 3d20 222a 220a 3c2f 636f 6465 3e3c  n = "*".<
│ │ │ +001566b0: 2f70 7265 3e3c 2f64 6976 3e3c 6120 636c  /pre>
Remediat │ │ │ +00156760: 696f 6e20 5368 656c 6c20 7363 7269 7074 ion Shell script │ │ │ +00156770: 20e2 87b2 3c2f 613e 3c62 723e 3c64 6976 ...
Complexity │ │ │ +00156800: 3a3c 2f74 683e 3c74 643e 6c6f 773c 2f74 :lowD │ │ │ +00156820: 6973 7275 7074 696f 6e3a 3c2f 7468 3e3c isruption:< │ │ │ +00156830: 7464 3e6c 6f77 3c2f 7464 3e3c 2f74 723e td>low │ │ │ +00156840: 3c74 723e 3c74 683e 5265 626f 6f74 3a3c Reboot:< │ │ │ +00156850: 2f74 683e 3c74 643e 6661 6c73 653c 2f74 /th>falseS │ │ │ +00156870: 7472 6174 6567 793a 3c2f 7468 3e3c 7464 trategy:enable
# Remediatio
│ │ │ +001568b0: 6e20 6973 2061 7070 6c69 6361 626c 6520  n is applicable 
│ │ │ +001568c0: 6f6e 6c79 2069 6e20 6365 7274 6169 6e20  only in certain 
│ │ │ +001568d0: 706c 6174 666f 726d 730a 6966 2072 706d  platforms.if rpm
│ │ │ +001568e0: 202d 2d71 7569 6574 202d 7120 6b65 726e   --quiet -q kern
│ │ │ +001568f0: 656c 3b20 7468 656e 0a0a 6966 2021 2072  el; then..if ! r
│ │ │ +00156900: 706d 202d 7120 2d2d 7175 6965 7420 2272  pm -q --quiet "r
│ │ │ +00156910: 7379 736c 6f67 2d67 6e75 746c 7322 203b  syslog-gnutls" ;
│ │ │ +00156920: 2074 6865 6e0a 2020 2020 646e 6620 696e   then.    dnf in
│ │ │ +00156930: 7374 616c 6c20 2d79 2022 7273 7973 6c6f  stall -y "rsyslo
│ │ │ +00156940: 672d 676e 7574 6c73 220a 6669 0a0a 656c  g-gnutls".fi..el
│ │ │ +00156950: 7365 0a20 2020 2026 6774 3b26 616d 703b  se.    >&
│ │ │ +00156960: 3220 6563 686f 2027 5265 6d65 6469 6174  2 echo 'Remediat
│ │ │ +00156970: 696f 6e20 6973 206e 6f74 2061 7070 6c69  ion is not appli
│ │ │ +00156980: 6361 626c 652c 206e 6f74 6869 6e67 2077  cable, nothing w
│ │ │ +00156990: 6173 2064 6f6e 6527 0a66 690a 3c2f 636f  as done'.fi.
< │ │ │ +001569b0: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ +001569c0: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ +001569d0: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ +001569e0: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ +001569f0: 6433 3931 2220 7461 6269 6e64 6578 3d22 d391" tabindex=" │ │ │ +00156a00: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ +00156a10: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ +00156a20: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ +00156a30: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ +00156a40: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ +00156a50: 6469 6174 696f 6e20 416e 6163 6f6e 6461 diation Anaconda │ │ │ +00156a60: 2073 6e69 7070 6574 20e2 87b2 3c2f 613e snippet ... │ │ │ +00156a70: 3c62 723e 3c64 6976 2063 6c61 7373 3d22
low< │ │ │ +00156b10: 7472 3e3c 7468 3e44 6973 7275 7074 696f tr>< │ │ │ +00156b60: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
Co │ │ │ +00156af0: 6d70 6c65 7869 7479 3a3c 2f74 683e 3c74 mplexity:
Disruptio │ │ │ +00156b20: 6e3a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f n:low
│ │ │ +00156b40: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ +00156b50: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ +00156b70: 3c2f 7468 3e3c 7464 3e65 6e61 626c 653c enable< │ │ │ +00156b80: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
.pac
│ │ │ +00156ba0: 6b61 6765 202d 2d61 6464 3d72 7379 736c  kage --add=rsysl
│ │ │ +00156bb0: 6f67 2d67 6e75 746c 730a 3c2f 636f 6465  og-gnutls.
Remedi │ │ │ -00212540: 6174 696f 6e20 416e 6163 6f6e 6461 2073 ation Anaconda s │ │ │ -00212550: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
Comp │ │ │ -002125e0: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -002125f0: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -00212610: 3c2f 7468 3e3c 7464 3e68 6967 683c 2f74 high
R │ │ │ -00212630: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -00212640: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -00212660: 2f74 683e 3c74 643e 656e 6162 6c65 3c2f /th>enable
│ │ │ -00212680: 3c70 7265 3e3c 636f 6465 3e0a 7061 7274
.part
│ │ │ -00212690: 202f 626f 6f74 202d 2d6d 6f75 6e74 6f70   /boot --mountop
│ │ │ -002126a0: 7469 6f6e 733d 226e 6f65 7865 6322 0a3c  tions="noexec".<
│ │ │ -002126b0: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ -00212760: 656d 6564 6961 7469 6f6e 2041 6e73 6962 emediation Ansib │ │ │ -00212770: 6c65 2073 6e69 7070 6574 20e2 87b2 3c2f le snippet ...
│ │ │ -00212810: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 < │ │ │ -00212850: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -00212860: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false< │ │ │ -002128a0: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
- name: Gather
│ │ │ -002128c0: 2074 6865 2070 6163 6b61 6765 2066 6163   the package fac
│ │ │ -002128d0: 7473 0a20 2070 6163 6b61 6765 5f66 6163  ts.  package_fac
│ │ │ -002128e0: 7473 3a0a 2020 2020 6d61 6e61 6765 723a  ts:.    manager:
│ │ │ -002128f0: 2061 7574 6f0a 2020 7461 6773 3a0a 2020   auto.  tags:.  
│ │ │ -00212900: 2d20 636f 6e66 6967 7572 655f 7374 7261  - configure_stra
│ │ │ -00212910: 7465 6779 0a20 202d 2068 6967 685f 6469  tegy.  - high_di
│ │ │ -00212920: 7372 7570 7469 6f6e 0a20 202d 206c 6f77  sruption.  - low
│ │ │ -00212930: 5f63 6f6d 706c 6578 6974 790a 2020 2d20  _complexity.  - 
│ │ │ -00212940: 6d65 6469 756d 5f73 6576 6572 6974 790a  medium_severity.
│ │ │ -00212950: 2020 2d20 6d6f 756e 745f 6f70 7469 6f6e    - mount_option
│ │ │ -00212960: 5f62 6f6f 745f 6e6f 6578 6563 0a20 202d  _boot_noexec.  -
│ │ │ -00212970: 206e 6f5f 7265 626f 6f74 5f6e 6565 6465   no_reboot_neede
│ │ │ -00212980: 640a 0a2d 206e 616d 653a 2027 4164 6420  d..- name: 'Add 
│ │ │ -00212990: 6e6f 6578 6563 204f 7074 696f 6e20 746f  noexec Option to
│ │ │ -002129a0: 202f 626f 6f74 3a20 4368 6563 6b20 696e   /boot: Check in
│ │ │ -002129b0: 666f 726d 6174 696f 6e20 6173 736f 6369  formation associ
│ │ │ -002129c0: 6174 6564 2074 6f20 6d6f 756e 7470 6f69  ated to mountpoi
│ │ │ -002129d0: 6e74 270a 2020 616e 7369 626c 652e 6275  nt'.  ansible.bu
│ │ │ -002129e0: 696c 7469 6e2e 636f 6d6d 616e 643a 2066  iltin.command: f
│ │ │ -002129f0: 696e 646d 6e74 202d 2d66 7374 6162 2027  indmnt --fstab '
│ │ │ -00212a00: 2f62 6f6f 7427 0a20 2072 6567 6973 7465  /boot'.  registe
│ │ │ -00212a10: 723a 2064 6576 6963 655f 6e61 6d65 0a20  r: device_name. 
│ │ │ -00212a20: 2066 6169 6c65 645f 7768 656e 3a20 6465   failed_when: de
│ │ │ -00212a30: 7669 6365 5f6e 616d 652e 7263 2026 6774  vice_name.rc >
│ │ │ -00212a40: 3b20 310a 2020 6368 616e 6765 645f 7768  ; 1.  changed_wh
│ │ │ -00212a50: 656e 3a20 6661 6c73 650a 2020 6368 6563  en: false.  chec
│ │ │ -00212a60: 6b5f 6d6f 6465 3a20 6661 6c73 650a 2020  k_mode: false.  
│ │ │ -00212a70: 7768 656e 3a20 2820 6e6f 7420 2820 226b  when: ( not ( "k
│ │ │ -00212a80: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ -00212a90: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -00212aa0: 2061 6e64 2022 626f 6f74 6322 2069 6e20   and "bootc" in 
│ │ │ -00212ab0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -00212ac0: 636b 6167 6573 0a20 2020 2061 6e64 206e  ckages.    and n
│ │ │ -00212ad0: 6f74 2022 6f70 656e 7368 6966 742d 6b75  ot "openshift-ku
│ │ │ -00212ae0: 6265 6c65 7422 2069 6e20 616e 7369 626c  belet" in ansibl
│ │ │ -00212af0: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -00212b00: 2061 6e64 2022 6f73 7472 6565 2220 696e   and "ostree" in
│ │ │ -00212b10: 2061 6e73 6962 6c65 5f70 726f 635f 636d   ansible_proc_cm
│ │ │ -00212b20: 646c 696e 650a 2020 2020 2920 616e 6420  dline.    ) and 
│ │ │ -00212b30: 6e6f 7420 2820 616e 7369 626c 655f 7669  not ( ansible_vi
│ │ │ -00212b40: 7274 7561 6c69 7a61 7469 6f6e 5f74 7970  rtualization_typ
│ │ │ -00212b50: 6520 696e 205b 2264 6f63 6b65 7222 2c20  e in ["docker", 
│ │ │ -00212b60: 226c 7863 222c 2022 6f70 656e 767a 222c  "lxc", "openvz",
│ │ │ -00212b70: 2022 706f 646d 616e 222c 0a20 2020 2022   "podman",.    "
│ │ │ -00212b80: 636f 6e74 6169 6e65 7222 5d20 2920 290a  container"] ) ).
│ │ │ -00212b90: 2020 7461 6773 3a0a 2020 2d20 636f 6e66    tags:.  - conf
│ │ │ -00212ba0: 6967 7572 655f 7374 7261 7465 6779 0a20  igure_strategy. 
│ │ │ -00212bb0: 202d 2068 6967 685f 6469 7372 7570 7469   - high_disrupti
│ │ │ -00212bc0: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c  on.  - low_compl
│ │ │ -00212bd0: 6578 6974 790a 2020 2d20 6d65 6469 756d  exity.  - medium
│ │ │ -00212be0: 5f73 6576 6572 6974 790a 2020 2d20 6d6f  _severity.  - mo
│ │ │ -00212bf0: 756e 745f 6f70 7469 6f6e 5f62 6f6f 745f  unt_option_boot_
│ │ │ -00212c00: 6e6f 6578 6563 0a20 202d 206e 6f5f 7265  noexec.  - no_re
│ │ │ -00212c10: 626f 6f74 5f6e 6565 6465 640a 0a2d 206e  boot_needed..- n
│ │ │ -00212c20: 616d 653a 2027 4164 6420 6e6f 6578 6563  ame: 'Add noexec
│ │ │ -00212c30: 204f 7074 696f 6e20 746f 202f 626f 6f74   Option to /boot
│ │ │ -00212c40: 3a20 4372 6561 7465 206d 6f75 6e74 5f69  : Create mount_i
│ │ │ -00212c50: 6e66 6f20 6469 6374 696f 6e61 7279 2076  nfo dictionary v
│ │ │ -00212c60: 6172 6961 626c 6527 0a20 2073 6574 5f66  ariable'.  set_f
│ │ │ -00212c70: 6163 743a 0a20 2020 206d 6f75 6e74 5f69  act:.    mount_i
│ │ │ -00212c80: 6e66 6f3a 2027 7b7b 206d 6f75 6e74 5f69  nfo: '{{ mount_i
│ │ │ -00212c90: 6e66 6f7c 6465 6661 756c 7428 7b7d 297c  nfo|default({})|
│ │ │ -00212ca0: 636f 6d62 696e 6528 7b69 7465 6d2e 303a  combine({item.0:
│ │ │ -00212cb0: 2069 7465 6d2e 317d 2920 7d7d 270a 2020   item.1}) }}'.  
│ │ │ -00212cc0: 7769 7468 5f74 6f67 6574 6865 723a 0a20  with_together:. 
│ │ │ -00212cd0: 202d 2027 7b7b 2064 6576 6963 655f 6e61   - '{{ device_na
│ │ │ -00212ce0: 6d65 2e73 7464 6f75 745f 6c69 6e65 735b  me.stdout_lines[
│ │ │ -00212cf0: 305d 2e73 706c 6974 2829 207c 206d 6170  0].split() | map
│ │ │ -00212d00: 2827 276c 6f77 6572 2727 2920 7c20 6c69  (''lower'') | li
│ │ │ -00212d10: 7374 207d 7d27 0a20 202d 2027 7b7b 2064  st }}'.  - '{{ d
│ │ │ -00212d20: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ -00212d30: 745f 6c69 6e65 735b 315d 2e73 706c 6974  t_lines[1].split
│ │ │ -00212d40: 2829 207c 206c 6973 7420 7d7d 270a 2020  () | list }}'.  
│ │ │ -00212d50: 7768 656e 3a0a 2020 2d20 2820 6e6f 7420  when:.  - ( not 
│ │ │ -00212d60: 2820 226b 6572 6e65 6c22 2069 6e20 616e  ( "kernel" in an
│ │ │ -00212d70: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -00212d80: 6167 6573 2061 6e64 2022 626f 6f74 6322  ages and "bootc"
│ │ │ -00212d90: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -00212da0: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ -00212db0: 6e64 206e 6f74 2022 6f70 656e 7368 6966  nd not "openshif
│ │ │ -00212dc0: 742d 6b75 6265 6c65 7422 2069 6e20 616e  t-kubelet" in an
│ │ │ -00212dd0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -00212de0: 6167 6573 2061 6e64 2022 6f73 7472 6565  ages and "ostree
│ │ │ -00212df0: 2220 696e 2061 6e73 6962 6c65 5f70 726f  " in ansible_pro
│ │ │ -00212e00: 635f 636d 646c 696e 650a 2020 2020 2920  c_cmdline.    ) 
│ │ │ -00212e10: 616e 6420 6e6f 7420 2820 616e 7369 626c  and not ( ansibl
│ │ │ -00212e20: 655f 7669 7274 7561 6c69 7a61 7469 6f6e  e_virtualization
│ │ │ -00212e30: 5f74 7970 6520 696e 205b 2264 6f63 6b65  _type in ["docke
│ │ │ -00212e40: 7222 2c20 226c 7863 222c 2022 6f70 656e  r", "lxc", "open
│ │ │ -00212e50: 767a 222c 2022 706f 646d 616e 222c 0a20  vz", "podman",. 
│ │ │ -00212e60: 2020 2022 636f 6e74 6169 6e65 7222 5d20     "container"] 
│ │ │ -00212e70: 2920 290a 2020 2d20 6465 7669 6365 5f6e  ) ).  - device_n
│ │ │ -00212e80: 616d 652e 7374 646f 7574 2069 7320 6465  ame.stdout is de
│ │ │ -00212e90: 6669 6e65 6420 616e 6420 6465 7669 6365  fined and device
│ │ │ -00212ea0: 5f6e 616d 652e 7374 646f 7574 5f6c 696e  _name.stdout_lin
│ │ │ -00212eb0: 6573 2069 7320 6465 6669 6e65 640a 2020  es is defined.  
│ │ │ -00212ec0: 2d20 2864 6576 6963 655f 6e61 6d65 2e73  - (device_name.s
│ │ │ -00212ed0: 7464 6f75 7420 7c20 6c65 6e67 7468 2026  tdout | length &
│ │ │ -00212ee0: 6774 3b20 3029 0a20 2074 6167 733a 0a20  gt; 0).  tags:. 
│ │ │ -00212ef0: 202d 2063 6f6e 6669 6775 7265 5f73 7472   - configure_str
│ │ │ -00212f00: 6174 6567 790a 2020 2d20 6869 6768 5f64  ategy.  - high_d
│ │ │ -00212f10: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ -00212f20: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ -00212f30: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ -00212f40: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f  .  - mount_optio
│ │ │ -00212f50: 6e5f 626f 6f74 5f6e 6f65 7865 630a 2020  n_boot_noexec.  
│ │ │ -00212f60: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ -00212f70: 6564 0a0a 2d20 6e61 6d65 3a20 2741 6464  ed..- name: 'Add
│ │ │ -00212f80: 206e 6f65 7865 6320 4f70 7469 6f6e 2074   noexec Option t
│ │ │ -00212f90: 6f20 2f62 6f6f 743a 2049 6620 2f62 6f6f  o /boot: If /boo
│ │ │ -00212fa0: 7420 6e6f 7420 6d6f 756e 7465 642c 2063  t not mounted, c
│ │ │ -00212fb0: 7261 6674 206d 6f75 6e74 5f69 6e66 6f20  raft mount_info 
│ │ │ -00212fc0: 6d61 6e75 616c 6c79 270a 2020 7365 745f  manually'.  set_
│ │ │ -00212fd0: 6661 6374 3a0a 2020 2020 6d6f 756e 745f  fact:.    mount_
│ │ │ -00212fe0: 696e 666f 3a20 277b 7b20 6d6f 756e 745f  info: '{{ mount_
│ │ │ -00212ff0: 696e 666f 7c64 6566 6175 6c74 287b 7d29  info|default({})
│ │ │ -00213000: 7c63 6f6d 6269 6e65 287b 6974 656d 2e30  |combine({item.0
│ │ │ -00213010: 3a20 6974 656d 2e31 7d29 207d 7d27 0a20  : item.1}) }}'. 
│ │ │ -00213020: 2077 6974 685f 746f 6765 7468 6572 3a0a   with_together:.
│ │ │ -00213030: 2020 2d20 2d20 7461 7267 6574 0a20 2020    - - target.   
│ │ │ -00213040: 202d 2073 6f75 7263 650a 2020 2020 2d20   - source.    - 
│ │ │ -00213050: 6673 7479 7065 0a20 2020 202d 206f 7074  fstype.    - opt
│ │ │ -00213060: 696f 6e73 0a20 202d 202d 202f 626f 6f74  ions.  - - /boot
│ │ │ -00213070: 0a20 2020 202d 2027 270a 2020 2020 2d20  .    - ''.    - 
│ │ │ -00213080: 2727 0a20 2020 202d 2064 6566 6175 6c74  ''.    - default
│ │ │ -00213090: 730a 2020 7768 656e 3a0a 2020 2d20 2820  s.  when:.  - ( 
│ │ │ -002130a0: 6e6f 7420 2820 226b 6572 6e65 6c22 2069  not ( "kernel" i
│ │ │ -002130b0: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -002130c0: 7061 636b 6167 6573 2061 6e64 2022 626f  packages and "bo
│ │ │ -002130d0: 6f74 6322 2069 6e20 616e 7369 626c 655f  otc" in ansible_
│ │ │ -002130e0: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ -002130f0: 2020 2061 6e64 206e 6f74 2022 6f70 656e     and not "open
│ │ │ -00213100: 7368 6966 742d 6b75 6265 6c65 7422 2069  shift-kubelet" i
│ │ │ -00213110: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -00213120: 7061 636b 6167 6573 2061 6e64 2022 6f73  packages and "os
│ │ │ -00213130: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ -00213140: 5f70 726f 635f 636d 646c 696e 650a 2020  _proc_cmdline.  
│ │ │ -00213150: 2020 2920 616e 6420 6e6f 7420 2820 616e    ) and not ( an
│ │ │ -00213160: 7369 626c 655f 7669 7274 7561 6c69 7a61  sible_virtualiza
│ │ │ -00213170: 7469 6f6e 5f74 7970 6520 696e 205b 2264  tion_type in ["d
│ │ │ -00213180: 6f63 6b65 7222 2c20 226c 7863 222c 2022  ocker", "lxc", "
│ │ │ -00213190: 6f70 656e 767a 222c 2022 706f 646d 616e  openvz", "podman
│ │ │ -002131a0: 222c 0a20 2020 2022 636f 6e74 6169 6e65  ",.    "containe
│ │ │ -002131b0: 7222 5d20 2920 290a 2020 2d20 2822 2d2d  r"] ) ).  - ("--
│ │ │ -002131c0: 6673 7461 6222 207c 206c 656e 6774 6820  fstab" | length 
│ │ │ -002131d0: 3d3d 2030 290a 2020 2d20 6465 7669 6365  == 0).  - device
│ │ │ -002131e0: 5f6e 616d 652e 7374 646f 7574 2069 7320  _name.stdout is 
│ │ │ -002131f0: 6465 6669 6e65 6420 616e 6420 6465 7669  defined and devi
│ │ │ -00213200: 6365 5f6e 616d 652e 7374 646f 7574 5f6c  ce_name.stdout_l
│ │ │ -00213210: 696e 6573 2069 7320 6465 6669 6e65 640a  ines is defined.
│ │ │ -00213220: 2020 2d20 2864 6576 6963 655f 6e61 6d65    - (device_name
│ │ │ -00213230: 2e73 7464 6f75 7420 7c20 6c65 6e67 7468  .stdout | length
│ │ │ -00213240: 203d 3d20 3029 0a20 2074 6167 733a 0a20   == 0).  tags:. 
│ │ │ -00213250: 202d 2063 6f6e 6669 6775 7265 5f73 7472   - configure_str
│ │ │ -00213260: 6174 6567 790a 2020 2d20 6869 6768 5f64  ategy.  - high_d
│ │ │ -00213270: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ -00213280: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ -00213290: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ -002132a0: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f  .  - mount_optio
│ │ │ -002132b0: 6e5f 626f 6f74 5f6e 6f65 7865 630a 2020  n_boot_noexec.  
│ │ │ -002132c0: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ -002132d0: 6564 0a0a 2d20 6e61 6d65 3a20 2741 6464  ed..- name: 'Add
│ │ │ -002132e0: 206e 6f65 7865 6320 4f70 7469 6f6e 2074   noexec Option t
│ │ │ -002132f0: 6f20 2f62 6f6f 743a 204d 616b 6520 7375  o /boot: Make su
│ │ │ -00213300: 7265 206e 6f65 7865 6320 6f70 7469 6f6e  re noexec option
│ │ │ -00213310: 2069 7320 7061 7274 206f 6620 7468 6520   is part of the 
│ │ │ -00213320: 746f 202f 626f 6f74 0a20 2020 206f 7074  to /boot.    opt
│ │ │ -00213330: 696f 6e73 270a 2020 7365 745f 6661 6374  ions'.  set_fact
│ │ │ -00213340: 3a0a 2020 2020 6d6f 756e 745f 696e 666f  :.    mount_info
│ │ │ -00213350: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ -00213360: 207c 2063 6f6d 6269 6e65 2820 7b27 276f   | combine( {''o
│ │ │ -00213370: 7074 696f 6e73 2727 3a27 2727 277e 286d  ptions'':''''~(m
│ │ │ -00213380: 6f75 6e74 5f69 6e66 6f2e 6f70 7469 6f6e  ount_info.option
│ │ │ -00213390: 7320 7c0a 2020 2020 2020 6465 6661 756c  s |.      defaul
│ │ │ -002133a0: 7428 2727 2727 2929 7e28 2727 2c27 2720  t(''''))~('','' 
│ │ │ -002133b0: 6966 2028 6d6f 756e 745f 696e 666f 2e6f  if (mount_info.o
│ │ │ -002133c0: 7074 696f 6e73 207c 2064 6566 6175 6c74  ptions | default
│ │ │ -002133d0: 2827 2727 2729 2920 656c 7365 2027 2727  ('''')) else '''
│ │ │ -002133e0: 2729 7e27 276e 6f65 7865 6327 270a 2020  ')~''noexec''.  
│ │ │ -002133f0: 2020 2020 7d29 207d 7d27 0a20 2077 6865      }) }}'.  whe
│ │ │ -00213400: 6e3a 0a20 202d 2028 206e 6f74 2028 2022  n:.  - ( not ( "
│ │ │ -00213410: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ -00213420: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -00213430: 7320 616e 6420 2262 6f6f 7463 2220 696e  s and "bootc" in
│ │ │ -00213440: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -00213450: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ -00213460: 6e6f 7420 226f 7065 6e73 6869 6674 2d6b  not "openshift-k
│ │ │ -00213470: 7562 656c 6574 2220 696e 2061 6e73 6962  ubelet" in ansib
│ │ │ -00213480: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -00213490: 7320 616e 6420 226f 7374 7265 6522 2069  s and "ostree" i
│ │ │ -002134a0: 6e20 616e 7369 626c 655f 7072 6f63 5f63  n ansible_proc_c
│ │ │ -002134b0: 6d64 6c69 6e65 0a20 2020 2029 2061 6e64  mdline.    ) and
│ │ │ -002134c0: 206e 6f74 2028 2061 6e73 6962 6c65 5f76   not ( ansible_v
│ │ │ -002134d0: 6972 7475 616c 697a 6174 696f 6e5f 7479  irtualization_ty
│ │ │ -002134e0: 7065 2069 6e20 5b22 646f 636b 6572 222c  pe in ["docker",
│ │ │ -002134f0: 2022 6c78 6322 2c20 226f 7065 6e76 7a22   "lxc", "openvz"
│ │ │ -00213500: 2c20 2270 6f64 6d61 6e22 2c0a 2020 2020  , "podman",.    
│ │ │ -00213510: 2263 6f6e 7461 696e 6572 225d 2029 2029  "container"] ) )
│ │ │ -00213520: 0a20 202d 206d 6f75 6e74 5f69 6e66 6f20  .  - mount_info 
│ │ │ -00213530: 6973 2064 6566 696e 6564 2061 6e64 2022  is defined and "
│ │ │ -00213540: 6e6f 6578 6563 2220 6e6f 7420 696e 2028  noexec" not in (
│ │ │ -00213550: 6d6f 756e 745f 696e 666f 2e6f 7074 696f  mount_info.optio
│ │ │ -00213560: 6e73 207c 2064 6566 6175 6c74 2827 2729  ns | default('')
│ │ │ -00213570: 290a 2020 7461 6773 3a0a 2020 2d20 636f  ).  tags:.  - co
│ │ │ -00213580: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ -00213590: 0a20 202d 2068 6967 685f 6469 7372 7570  .  - high_disrup
│ │ │ -002135a0: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d  tion.  - low_com
│ │ │ -002135b0: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ -002135c0: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ -002135d0: 6d6f 756e 745f 6f70 7469 6f6e 5f62 6f6f  mount_option_boo
│ │ │ -002135e0: 745f 6e6f 6578 6563 0a20 202d 206e 6f5f  t_noexec.  - no_
│ │ │ -002135f0: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ -00213600: 206e 616d 653a 2027 4164 6420 6e6f 6578   name: 'Add noex
│ │ │ -00213610: 6563 204f 7074 696f 6e20 746f 202f 626f  ec Option to /bo
│ │ │ -00213620: 6f74 3a20 456e 7375 7265 202f 626f 6f74  ot: Ensure /boot
│ │ │ -00213630: 2069 7320 6d6f 756e 7465 6420 7769 7468   is mounted with
│ │ │ -00213640: 206e 6f65 7865 6320 6f70 7469 6f6e 270a   noexec option'.
│ │ │ -00213650: 2020 616e 7369 626c 652e 706f 7369 782e    ansible.posix.
│ │ │ -00213660: 6d6f 756e 743a 0a20 2020 2070 6174 683a  mount:.    path:
│ │ │ -00213670: 202f 626f 6f74 0a20 2020 2073 7263 3a20   /boot.    src: 
│ │ │ -00213680: 277b 7b20 6d6f 756e 745f 696e 666f 2e73  '{{ mount_info.s
│ │ │ -00213690: 6f75 7263 6520 7c20 6465 6661 756c 7428  ource | default(
│ │ │ -002136a0: 2727 2727 2920 7d7d 270a 2020 2020 6f70  '''') }}'.    op
│ │ │ -002136b0: 7473 3a20 277b 7b20 6d6f 756e 745f 696e  ts: '{{ mount_in
│ │ │ -002136c0: 666f 2e6f 7074 696f 6e73 207c 2064 6566  fo.options | def
│ │ │ -002136d0: 6175 6c74 2827 2727 2729 207d 7d27 0a20  ault('''') }}'. 
│ │ │ -002136e0: 2020 2073 7461 7465 3a20 6d6f 756e 7465     state: mounte
│ │ │ -002136f0: 640a 2020 2020 6673 7479 7065 3a20 277b  d.    fstype: '{
│ │ │ -00213700: 7b20 6d6f 756e 745f 696e 666f 2e66 7374  { mount_info.fst
│ │ │ -00213710: 7970 6520 7c20 6465 6661 756c 7428 2727  ype | default(''
│ │ │ -00213720: 2727 2920 7d7d 270a 2020 7265 6769 7374  '') }}'.  regist
│ │ │ -00213730: 6572 3a20 6d6f 756e 745f 7265 7375 6c74  er: mount_result
│ │ │ -00213740: 0a20 2066 6169 6c65 645f 7768 656e 3a0a  .  failed_when:.
│ │ │ -00213750: 2020 2d20 6d6f 756e 745f 7265 7375 6c74    - mount_result
│ │ │ -00213760: 2069 7320 6661 696c 6564 0a20 202d 2027   is failed.  - '
│ │ │ -00213770: 2727 7461 7267 6574 2069 7320 6275 7379  ''target is busy
│ │ │ -00213780: 2727 206e 6f74 2069 6e20 286d 6f75 6e74  '' not in (mount
│ │ │ -00213790: 5f72 6573 756c 742e 6d73 6720 7c20 6465  _result.msg | de
│ │ │ -002137a0: 6661 756c 7428 2727 2727 2929 270a 2020  fault(''''))'.  
│ │ │ -002137b0: 2d20 2727 2761 6c72 6561 6479 206d 6f75  - '''already mou
│ │ │ -002137c0: 6e74 6564 2727 206e 6f74 2069 6e20 286d  nted'' not in (m
│ │ │ -002137d0: 6f75 6e74 5f72 6573 756c 742e 6d73 6720  ount_result.msg 
│ │ │ -002137e0: 7c20 6465 6661 756c 7428 2727 2727 2929  | default(''''))
│ │ │ -002137f0: 270a 2020 7768 656e 3a0a 2020 2d20 2820  '.  when:.  - ( 
│ │ │ -00213800: 6e6f 7420 2820 226b 6572 6e65 6c22 2069  not ( "kernel" i
│ │ │ -00213810: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -00213820: 7061 636b 6167 6573 2061 6e64 2022 626f  packages and "bo
│ │ │ -00213830: 6f74 6322 2069 6e20 616e 7369 626c 655f  otc" in ansible_
│ │ │ -00213840: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ -00213850: 2020 2061 6e64 206e 6f74 2022 6f70 656e     and not "open
│ │ │ -00213860: 7368 6966 742d 6b75 6265 6c65 7422 2069  shift-kubelet" i
│ │ │ -00213870: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -00213880: 7061 636b 6167 6573 2061 6e64 2022 6f73  packages and "os
│ │ │ -00213890: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ -002138a0: 5f70 726f 635f 636d 646c 696e 650a 2020  _proc_cmdline.  
│ │ │ -002138b0: 2020 2920 616e 6420 6e6f 7420 2820 616e    ) and not ( an
│ │ │ -002138c0: 7369 626c 655f 7669 7274 7561 6c69 7a61  sible_virtualiza
│ │ │ -002138d0: 7469 6f6e 5f74 7970 6520 696e 205b 2264  tion_type in ["d
│ │ │ -002138e0: 6f63 6b65 7222 2c20 226c 7863 222c 2022  ocker", "lxc", "
│ │ │ -002138f0: 6f70 656e 767a 222c 2022 706f 646d 616e  openvz", "podman
│ │ │ -00213900: 222c 0a20 2020 2022 636f 6e74 6169 6e65  ",.    "containe
│ │ │ -00213910: 7222 5d20 2920 290a 2020 2d20 6d6f 756e  r"] ) ).  - moun
│ │ │ -00213920: 745f 696e 666f 2069 7320 6465 6669 6e65  t_info is define
│ │ │ -00213930: 640a 2020 2d20 2864 6576 6963 655f 6e61  d.  - (device_na
│ │ │ -00213940: 6d65 2e73 7464 6f75 7420 6973 2064 6566  me.stdout is def
│ │ │ -00213950: 696e 6564 2061 6e64 2028 6465 7669 6365  ined and (device
│ │ │ -00213960: 5f6e 616d 652e 7374 646f 7574 207c 206c  _name.stdout | l
│ │ │ -00213970: 656e 6774 6820 2667 743b 2030 2929 206f  ength > 0)) o
│ │ │ -00213980: 7220 2822 2d2d 6673 7461 6222 0a20 2020  r ("--fstab".   
│ │ │ -00213990: 207c 206c 656e 6774 6820 3d3d 2030 290a   | length == 0).
│ │ │ -002139a0: 2020 7461 6773 3a0a 2020 2d20 636f 6e66    tags:.  - conf
│ │ │ -002139b0: 6967 7572 655f 7374 7261 7465 6779 0a20  igure_strategy. 
│ │ │ -002139c0: 202d 2068 6967 685f 6469 7372 7570 7469   - high_disrupti
│ │ │ -002139d0: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c  on.  - low_compl
│ │ │ -002139e0: 6578 6974 790a 2020 2d20 6d65 6469 756d  exity.  - medium
│ │ │ -002139f0: 5f73 6576 6572 6974 790a 2020 2d20 6d6f  _severity.  - mo
│ │ │ -00213a00: 756e 745f 6f70 7469 6f6e 5f62 6f6f 745f  unt_option_boot_
│ │ │ -00213a10: 6e6f 6578 6563 0a20 202d 206e 6f5f 7265  noexec.  - no_re
│ │ │ -00213a20: 626f 6f74 5f6e 6565 6465 640a 3c2f 636f  boot_needed.
< │ │ │ -00213a40: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ -00213a50: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ -00213a60: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ -00213a70: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ -00213a80: 6436 3638 2220 7461 6269 6e64 6578 3d22 d668" tabindex=" │ │ │ -00213a90: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ -00213aa0: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ -00213ab0: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ -00213ac0: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ -00213ad0: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ -00213ae0: 6469 6174 696f 6e20 5368 656c 6c20 7363 diation Shell sc │ │ │ -00213af0: 7269 7074 20e2 87b2 3c2f 613e 3c62 723e ript ...
│ │ │ -00213b00: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -00213b30: 3c74 6162 6c65 2063 6c61 7373 3d22 7461
│ │ │ -00212800: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -00212830: 696f 6e3a 3c2f 7468 3e3c 7464 3e68 6967 ion:hig │ │ │ -00212840: 683c 2f74 643e 3c2f 7472 3e3c 7472 3e3c h
Strate │ │ │ -00212880: 6779 3a3c 2f74 683e 3c74 643e 636f 6e66 gy:conf │ │ │ -00212890: 6967 7572 653c 2f74 643e 3c2f 7472 3e3c igure
Reboot │ │ │ -00213b80: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -00213b90: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
# Re
│ │ │ -00213bb0: 6d65 6469 6174 696f 6e20 6973 2061 7070  mediation is app
│ │ │ -00213bc0: 6c69 6361 626c 6520 6f6e 6c79 2069 6e20  licable only in 
│ │ │ -00213bd0: 6365 7274 6169 6e20 706c 6174 666f 726d  certain platform
│ │ │ -00213be0: 730a 6966 2028 2021 2028 207b 2072 706d  s.if ( ! ( { rpm
│ │ │ -00213bf0: 202d 2d71 7569 6574 202d 7120 6b65 726e   --quiet -q kern
│ │ │ -00213c00: 656c 203b 7d20 2661 6d70 3b26 616d 703b  el ;} &&
│ │ │ -00213c10: 207b 2072 706d 202d 2d71 7569 6574 202d   { rpm --quiet -
│ │ │ -00213c20: 7120 626f 6f74 6320 3b7d 2026 616d 703b  q bootc ;} &
│ │ │ -00213c30: 2661 6d70 3b20 7b20 2120 7270 6d20 2d2d  & { ! rpm --
│ │ │ -00213c40: 7175 6965 7420 2d71 206f 7065 6e73 6869  quiet -q openshi
│ │ │ -00213c50: 6674 2d6b 7562 656c 6574 203b 7d20 2661  ft-kubelet ;} &a
│ │ │ -00213c60: 6d70 3b26 616d 703b 2028 5b20 2d66 202f  mp;& ([ -f /
│ │ │ -00213c70: 7275 6e2f 6f73 7472 6565 2d62 6f6f 7465  run/ostree-boote
│ │ │ -00213c80: 6420 5d20 7c7c 205b 202d 4c20 2f6f 7374  d ] || [ -L /ost
│ │ │ -00213c90: 7265 6520 5d29 2029 2026 616d 703b 2661  ree ]) ) &&a
│ │ │ -00213ca0: 6d70 3b20 2120 2820 5b20 2d66 202f 2e64  mp; ! ( [ -f /.d
│ │ │ -00213cb0: 6f63 6b65 7265 6e76 205d 207c 7c20 5b20  ockerenv ] || [ 
│ │ │ -00213cc0: 2d66 202f 7275 6e2f 2e63 6f6e 7461 696e  -f /run/.contain
│ │ │ -00213cd0: 6572 656e 7620 5d20 2920 293b 2074 6865  erenv ] ) ); the
│ │ │ -00213ce0: 6e0a 0a66 756e 6374 696f 6e20 7065 7266  n..function perf
│ │ │ -00213cf0: 6f72 6d5f 7265 6d65 6469 6174 696f 6e20  orm_remediation 
│ │ │ -00213d00: 7b0a 0a20 2020 200a 2020 2020 2020 2020  {..    .        
│ │ │ -00213d10: 2320 7468 6520 6d6f 756e 7420 706f 696e  # the mount poin
│ │ │ -00213d20: 7420 2f62 6f6f 7420 6861 7320 746f 2062  t /boot has to b
│ │ │ -00213d30: 6520 6465 6669 6e65 6420 696e 202f 6574  e defined in /et
│ │ │ -00213d40: 632f 6673 7461 620a 2020 2020 2020 2020  c/fstab.        
│ │ │ -00213d50: 2320 6265 666f 7265 2074 6869 7320 7265  # before this re
│ │ │ -00213d60: 6d65 6469 6174 696f 6e20 6361 6e20 6265  mediation can be
│ │ │ -00213d70: 2065 7865 6375 7465 642e 2049 6e20 6361   executed. In ca
│ │ │ -00213d80: 7365 2069 7420 6973 206e 6f74 2064 6566  se it is not def
│ │ │ -00213d90: 696e 6564 2c20 7468 650a 2020 2020 2020  ined, the.      
│ │ │ -00213da0: 2020 2320 7265 6d65 6469 6174 696f 6e20    # remediation 
│ │ │ -00213db0: 6162 6f72 7473 2061 6e64 206e 6f20 6368  aborts and no ch
│ │ │ -00213dc0: 616e 6765 7320 7265 6761 7264 696e 6720  anges regarding 
│ │ │ -00213dd0: 7468 6520 6d6f 756e 7420 706f 696e 7420  the mount point 
│ │ │ -00213de0: 6172 6520 646f 6e65 2e0a 2020 2020 2020  are done..      
│ │ │ -00213df0: 2020 6d6f 756e 745f 706f 696e 745f 6d61    mount_point_ma
│ │ │ -00213e00: 7463 685f 7265 6765 7870 3d22 2428 7072  tch_regexp="$(pr
│ │ │ -00213e10: 696e 7466 2022 5e5b 5b3a 7370 6163 653a  intf "^[[:space:
│ │ │ -00213e20: 5d5d 2a5b 5e23 5d2e 2a5b 5b3a 7370 6163  ]]*[^#].*[[:spac
│ │ │ -00213e30: 653a 5d5d 2573 5b5b 3a73 7061 6365 3a5d  e:]]%s[[:space:]
│ │ │ -00213e40: 5d22 2022 2f62 6f6f 7422 2922 0a0a 2020  ]" "/boot")"..  
│ │ │ -00213e50: 2020 6772 6570 2022 246d 6f75 6e74 5f70    grep "$mount_p
│ │ │ -00213e60: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ -00213e70: 7022 202d 7120 2f65 7463 2f66 7374 6162  p" -q /etc/fstab
│ │ │ -00213e80: 205c 0a20 2020 2020 2020 207c 7c20 7b20   \.        || { 
│ │ │ -00213e90: 6563 686f 2022 5468 6520 6d6f 756e 7420  echo "The mount 
│ │ │ -00213ea0: 706f 696e 7420 272f 626f 6f74 2720 6973  point '/boot' is
│ │ │ -00213eb0: 206e 6f74 2065 7665 6e20 696e 202f 6574   not even in /et
│ │ │ -00213ec0: 632f 6673 7461 622c 2073 6f20 7765 2063  c/fstab, so we c
│ │ │ -00213ed0: 616e 2774 2073 6574 2075 7020 6d6f 756e  an't set up moun
│ │ │ -00213ee0: 7420 6f70 7469 6f6e 7322 2026 6774 3b26  t options" >&
│ │ │ -00213ef0: 616d 703b 323b 0a20 2020 2020 2020 2020  amp;2;.         
│ │ │ -00213f00: 2020 2020 2020 2065 6368 6f20 224e 6f74         echo "Not
│ │ │ -00213f10: 2072 656d 6564 6961 7469 6e67 2c20 6265   remediating, be
│ │ │ -00213f20: 6361 7573 6520 7468 6572 6520 6973 206e  cause there is n
│ │ │ -00213f30: 6f20 7265 636f 7264 206f 6620 2f62 6f6f  o record of /boo
│ │ │ -00213f40: 7420 696e 202f 6574 632f 6673 7461 6222  t in /etc/fstab"
│ │ │ -00213f50: 2026 6774 3b26 616d 703b 323b 2072 6574   >&2; ret
│ │ │ -00213f60: 7572 6e20 313b 207d 0a20 2020 200a 0a0a  urn 1; }.    ...
│ │ │ -00213f70: 2020 2020 6d6f 756e 745f 706f 696e 745f      mount_point_
│ │ │ -00213f80: 6d61 7463 685f 7265 6765 7870 3d22 2428  match_regexp="$(
│ │ │ -00213f90: 7072 696e 7466 2022 5e5b 5b3a 7370 6163  printf "^[[:spac
│ │ │ -00213fa0: 653a 5d5d 2a5b 5e23 5d2e 2a5b 5b3a 7370  e:]]*[^#].*[[:sp
│ │ │ -00213fb0: 6163 653a 5d5d 2573 5b5b 3a73 7061 6365  ace:]]%s[[:space
│ │ │ -00213fc0: 3a5d 5d22 202f 626f 6f74 2922 0a0a 2020  :]]" /boot)"..  
│ │ │ -00213fd0: 2020 2320 4966 2074 6865 206d 6f75 6e74    # If the mount
│ │ │ -00213fe0: 2070 6f69 6e74 2069 7320 6e6f 7420 696e   point is not in
│ │ │ -00213ff0: 202f 6574 632f 6673 7461 622c 2067 6574   /etc/fstab, get
│ │ │ -00214000: 2070 7265 7669 6f75 7320 6d6f 756e 7420   previous mount 
│ │ │ -00214010: 6f70 7469 6f6e 7320 6672 6f6d 202f 6574  options from /et
│ │ │ -00214020: 632f 6d74 6162 0a20 2020 2069 6620 2120  c/mtab.    if ! 
│ │ │ -00214030: 6772 6570 202d 7120 2224 6d6f 756e 745f  grep -q "$mount_
│ │ │ -00214040: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ -00214050: 7870 2220 2f65 7463 2f66 7374 6162 3b20  xp" /etc/fstab; 
│ │ │ -00214060: 7468 656e 0a20 2020 2020 2020 2023 2072  then.        # r
│ │ │ -00214070: 756e 7469 6d65 206f 7074 7320 7769 7468  untime opts with
│ │ │ -00214080: 6f75 7420 736f 6d65 2061 7574 6f6d 6174  out some automat
│ │ │ -00214090: 6963 206b 6572 6e65 6c2f 7573 6572 7370  ic kernel/usersp
│ │ │ -002140a0: 6163 652d 6164 6465 6420 6465 6661 756c  ace-added defaul
│ │ │ -002140b0: 7473 0a20 2020 2020 2020 2070 7265 7669  ts.        previ
│ │ │ -002140c0: 6f75 735f 6d6f 756e 745f 6f70 7473 3d24  ous_mount_opts=$
│ │ │ -002140d0: 2867 7265 7020 2224 6d6f 756e 745f 706f  (grep "$mount_po
│ │ │ -002140e0: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ -002140f0: 2220 2f65 7463 2f6d 7461 6220 7c20 6865  " /etc/mtab | he
│ │ │ -00214100: 6164 202d 3120 7c20 2061 776b 2027 7b70  ad -1 |  awk '{p
│ │ │ -00214110: 7269 6e74 2024 347d 2720 5c0a 2020 2020  rint $4}' \.    
│ │ │ -00214120: 2020 2020 2020 2020 2020 2020 2020 2020                  
│ │ │ -00214130: 7c20 7365 6420 2d45 2022 732f 2872 777c  | sed -E "s/(rw|
│ │ │ -00214140: 6465 6661 756c 7473 7c73 6563 6c61 6265  defaults|seclabe
│ │ │ -00214150: 6c7c 6e6f 6578 6563 2928 2c7c 2429 2f2f  l|noexec)(,|$)//
│ │ │ -00214160: 673b 732f 2c24 2f2f 2229 0a20 2020 2020  g;s/,$//").     
│ │ │ -00214170: 2020 205b 2022 2470 7265 7669 6f75 735f     [ "$previous_
│ │ │ -00214180: 6d6f 756e 745f 6f70 7473 2220 5d20 2661  mount_opts" ] &a
│ │ │ -00214190: 6d70 3b26 616d 703b 2070 7265 7669 6f75  mp;& previou
│ │ │ -002141a0: 735f 6d6f 756e 745f 6f70 7473 2b3d 222c  s_mount_opts+=",
│ │ │ -002141b0: 220a 2020 2020 2020 2020 2320 496e 2069  ".        # In i
│ │ │ -002141c0: 736f 3936 3630 2066 696c 6573 7973 7465  so9660 filesyste
│ │ │ -002141d0: 6d73 206d 7461 6220 636f 756c 6420 6465  ms mtab could de
│ │ │ -002141e0: 7363 7269 6265 2061 2022 626c 6f63 6b73  scribe a "blocks
│ │ │ -002141f0: 697a 6522 2076 616c 7565 2c20 7468 6973  ize" value, this
│ │ │ -00214200: 2073 686f 756c 6420 6265 2072 6566 6c65   should be refle
│ │ │ -00214210: 6374 6564 2069 6e0a 2020 2020 2020 2020  cted in.        
│ │ │ -00214220: 2320 6673 7461 6220 6173 2022 626c 6f63  # fstab as "bloc
│ │ │ -00214230: 6b22 2e20 2054 6865 206e 6578 7420 7661  k".  The next va
│ │ │ -00214240: 7269 6162 6c65 2069 7320 746f 2073 6174  riable is to sat
│ │ │ -00214250: 6973 6679 2073 6865 6c6c 6368 6563 6b20  isfy shellcheck 
│ │ │ -00214260: 5343 3230 3530 2e0a 2020 2020 2020 2020  SC2050..        
│ │ │ -00214270: 6673 5f74 7970 653d 2222 0a20 2020 2020  fs_type="".     
│ │ │ -00214280: 2020 2069 6620 5b20 2022 2466 735f 7479     if [  "$fs_ty
│ │ │ -00214290: 7065 2220 3d3d 2022 6973 6f39 3636 3022  pe" == "iso9660"
│ │ │ -002142a0: 205d 203b 2074 6865 6e0a 2020 2020 2020   ] ; then.      
│ │ │ -002142b0: 2020 2020 2020 7072 6576 696f 7573 5f6d        previous_m
│ │ │ -002142c0: 6f75 6e74 5f6f 7074 733d 2428 7365 6420  ount_opts=$(sed 
│ │ │ -002142d0: 2773 2f62 6c6f 636b 7369 7a65 3d2f 626c  's/blocksize=/bl
│ │ │ -002142e0: 6f63 6b3d 2f27 2026 6c74 3b26 6c74 3b26  ock=/' <<&
│ │ │ -002142f0: 6c74 3b20 2224 7072 6576 696f 7573 5f6d  lt; "$previous_m
│ │ │ -00214300: 6f75 6e74 5f6f 7074 7322 290a 2020 2020  ount_opts").    
│ │ │ -00214310: 2020 2020 6669 0a20 2020 2020 2020 2065      fi.        e
│ │ │ -00214320: 6368 6f20 2220 2f62 6f6f 7420 2064 6566  cho " /boot  def
│ │ │ -00214330: 6175 6c74 732c 247b 7072 6576 696f 7573  aults,${previous
│ │ │ -00214340: 5f6d 6f75 6e74 5f6f 7074 737d 6e6f 6578  _mount_opts}noex
│ │ │ -00214350: 6563 2030 2030 2220 2667 743b 2667 743b  ec 0 0" >>
│ │ │ -00214360: 202f 6574 632f 6673 7461 620a 2020 2020   /etc/fstab.    
│ │ │ -00214370: 2320 4966 2074 6865 206d 6f75 6e74 5f6f  # If the mount_o
│ │ │ -00214380: 7074 206f 7074 696f 6e20 6973 206e 6f74  pt option is not
│ │ │ -00214390: 2061 6c72 6561 6479 2069 6e20 7468 6520   already in the 
│ │ │ -002143a0: 6d6f 756e 7420 706f 696e 7427 7320 2f65  mount point's /e
│ │ │ -002143b0: 7463 2f66 7374 6162 2065 6e74 7279 2c20  tc/fstab entry, 
│ │ │ -002143c0: 6164 6420 6974 0a20 2020 2065 6c69 6620  add it.    elif 
│ │ │ -002143d0: 2120 6772 6570 2022 246d 6f75 6e74 5f70  ! grep "$mount_p
│ │ │ -002143e0: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ -002143f0: 7022 202f 6574 632f 6673 7461 6220 7c20  p" /etc/fstab | 
│ │ │ -00214400: 6772 6570 202d 7120 226e 6f65 7865 6322  grep -q "noexec"
│ │ │ -00214410: 3b20 7468 656e 0a20 2020 2020 2020 2070  ; then.        p
│ │ │ -00214420: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ -00214430: 7473 3d24 2867 7265 7020 2224 6d6f 756e  ts=$(grep "$moun
│ │ │ -00214440: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ -00214450: 6765 7870 2220 2f65 7463 2f66 7374 6162  gexp" /etc/fstab
│ │ │ -00214460: 207c 2061 776b 2027 7b70 7269 6e74 2024   | awk '{print $
│ │ │ -00214470: 347d 2729 0a20 2020 2020 2020 2073 6564  4}').        sed
│ │ │ -00214480: 202d 6920 2273 7c5c 2824 7b6d 6f75 6e74   -i "s|\(${mount
│ │ │ -00214490: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ -002144a0: 6578 707d 2e2a 247b 7072 6576 696f 7573  exp}.*${previous
│ │ │ -002144b0: 5f6d 6f75 6e74 5f6f 7074 737d 5c29 7c5c  _mount_opts}\)|\
│ │ │ -002144c0: 312c 6e6f 6578 6563 7c22 202f 6574 632f  1,noexec|" /etc/
│ │ │ -002144d0: 6673 7461 620a 2020 2020 6669 0a0a 0a20  fstab.    fi... 
│ │ │ -002144e0: 2020 2069 6620 6d6b 6469 7220 2d70 2022     if mkdir -p "
│ │ │ -002144f0: 2f62 6f6f 7422 3b20 7468 656e 0a20 2020  /boot"; then.   
│ │ │ -00214500: 2020 2020 2069 6620 6d6f 756e 7470 6f69       if mountpoi
│ │ │ -00214510: 6e74 202d 7120 222f 626f 6f74 223b 2074  nt -q "/boot"; t
│ │ │ -00214520: 6865 6e0a 2020 2020 2020 2020 2020 2020  hen.            
│ │ │ -00214530: 6d6f 756e 7420 2d6f 2072 656d 6f75 6e74  mount -o remount
│ │ │ -00214540: 202d 2d74 6172 6765 7420 222f 626f 6f74   --target "/boot
│ │ │ -00214550: 220a 2020 2020 2020 2020 6669 0a20 2020  ".        fi.   
│ │ │ -00214560: 2066 690a 7d0a 0a70 6572 666f 726d 5f72   fi.}..perform_r
│ │ │ -00214570: 656d 6564 6961 7469 6f6e 0a0a 656c 7365  emediation..else
│ │ │ -00214580: 0a20 2020 2026 6774 3b26 616d 703b 3220  .    >&2 
│ │ │ -00214590: 6563 686f 2027 5265 6d65 6469 6174 696f  echo 'Remediatio
│ │ │ -002145a0: 6e20 6973 206e 6f74 2061 7070 6c69 6361  n is not applica
│ │ │ -002145b0: 626c 652c 206e 6f74 6869 6e67 2077 6173  ble, nothing was
│ │ │ -002145c0: 2064 6f6e 6527 0a66 690a 3c2f 636f 6465   done'.fi.
│ │ │ +00212600: 3c74 683e 4469 7372 7570 7469 6f6e 3a3c
- n
│ │ │ +00212690: 616d 653a 2047 6174 6865 7220 7468 6520  ame: Gather the 
│ │ │ +002126a0: 7061 636b 6167 6520 6661 6374 730a 2020  package facts.  
│ │ │ +002126b0: 7061 636b 6167 655f 6661 6374 733a 0a20  package_facts:. 
│ │ │ +002126c0: 2020 206d 616e 6167 6572 3a20 6175 746f     manager: auto
│ │ │ +002126d0: 0a20 2074 6167 733a 0a20 202d 2063 6f6e  .  tags:.  - con
│ │ │ +002126e0: 6669 6775 7265 5f73 7472 6174 6567 790a  figure_strategy.
│ │ │ +002126f0: 2020 2d20 6869 6768 5f64 6973 7275 7074    - high_disrupt
│ │ │ +00212700: 696f 6e0a 2020 2d20 6c6f 775f 636f 6d70  ion.  - low_comp
│ │ │ +00212710: 6c65 7869 7479 0a20 202d 206d 6564 6975  lexity.  - mediu
│ │ │ +00212720: 6d5f 7365 7665 7269 7479 0a20 202d 206d  m_severity.  - m
│ │ │ +00212730: 6f75 6e74 5f6f 7074 696f 6e5f 626f 6f74  ount_option_boot
│ │ │ +00212740: 5f6e 6f65 7865 630a 2020 2d20 6e6f 5f72  _noexec.  - no_r
│ │ │ +00212750: 6562 6f6f 745f 6e65 6564 6564 0a0a 2d20  eboot_needed..- 
│ │ │ +00212760: 6e61 6d65 3a20 2741 6464 206e 6f65 7865  name: 'Add noexe
│ │ │ +00212770: 6320 4f70 7469 6f6e 2074 6f20 2f62 6f6f  c Option to /boo
│ │ │ +00212780: 743a 2043 6865 636b 2069 6e66 6f72 6d61  t: Check informa
│ │ │ +00212790: 7469 6f6e 2061 7373 6f63 6961 7465 6420  tion associated 
│ │ │ +002127a0: 746f 206d 6f75 6e74 706f 696e 7427 0a20  to mountpoint'. 
│ │ │ +002127b0: 2061 6e73 6962 6c65 2e62 7569 6c74 696e   ansible.builtin
│ │ │ +002127c0: 2e63 6f6d 6d61 6e64 3a20 6669 6e64 6d6e  .command: findmn
│ │ │ +002127d0: 7420 2d2d 6673 7461 6220 272f 626f 6f74  t --fstab '/boot
│ │ │ +002127e0: 270a 2020 7265 6769 7374 6572 3a20 6465  '.  register: de
│ │ │ +002127f0: 7669 6365 5f6e 616d 650a 2020 6661 696c  vice_name.  fail
│ │ │ +00212800: 6564 5f77 6865 6e3a 2064 6576 6963 655f  ed_when: device_
│ │ │ +00212810: 6e61 6d65 2e72 6320 2667 743b 2031 0a20  name.rc > 1. 
│ │ │ +00212820: 2063 6861 6e67 6564 5f77 6865 6e3a 2066   changed_when: f
│ │ │ +00212830: 616c 7365 0a20 2063 6865 636b 5f6d 6f64  alse.  check_mod
│ │ │ +00212840: 653a 2066 616c 7365 0a20 2077 6865 6e3a  e: false.  when:
│ │ │ +00212850: 2028 206e 6f74 2028 2022 6b65 726e 656c   ( not ( "kernel
│ │ │ +00212860: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +00212870: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ +00212880: 2262 6f6f 7463 2220 696e 2061 6e73 6962  "bootc" in ansib
│ │ │ +00212890: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ +002128a0: 730a 2020 2020 616e 6420 6e6f 7420 226f  s.    and not "o
│ │ │ +002128b0: 7065 6e73 6869 6674 2d6b 7562 656c 6574  penshift-kubelet
│ │ │ +002128c0: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ +002128d0: 7473 2e70 6163 6b61 6765 7320 616e 6420  ts.packages and 
│ │ │ +002128e0: 226f 7374 7265 6522 2069 6e20 616e 7369  "ostree" in ansi
│ │ │ +002128f0: 626c 655f 7072 6f63 5f63 6d64 6c69 6e65  ble_proc_cmdline
│ │ │ +00212900: 0a20 2020 2029 2061 6e64 206e 6f74 2028  .    ) and not (
│ │ │ +00212910: 2061 6e73 6962 6c65 5f76 6972 7475 616c   ansible_virtual
│ │ │ +00212920: 697a 6174 696f 6e5f 7479 7065 2069 6e20  ization_type in 
│ │ │ +00212930: 5b22 646f 636b 6572 222c 2022 6c78 6322  ["docker", "lxc"
│ │ │ +00212940: 2c20 226f 7065 6e76 7a22 2c20 2270 6f64  , "openvz", "pod
│ │ │ +00212950: 6d61 6e22 2c0a 2020 2020 2263 6f6e 7461  man",.    "conta
│ │ │ +00212960: 696e 6572 225d 2029 2029 0a20 2074 6167  iner"] ) ).  tag
│ │ │ +00212970: 733a 0a20 202d 2063 6f6e 6669 6775 7265  s:.  - configure
│ │ │ +00212980: 5f73 7472 6174 6567 790a 2020 2d20 6869  _strategy.  - hi
│ │ │ +00212990: 6768 5f64 6973 7275 7074 696f 6e0a 2020  gh_disruption.  
│ │ │ +002129a0: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ +002129b0: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ +002129c0: 7269 7479 0a20 202d 206d 6f75 6e74 5f6f  rity.  - mount_o
│ │ │ +002129d0: 7074 696f 6e5f 626f 6f74 5f6e 6f65 7865  ption_boot_noexe
│ │ │ +002129e0: 630a 2020 2d20 6e6f 5f72 6562 6f6f 745f  c.  - no_reboot_
│ │ │ +002129f0: 6e65 6564 6564 0a0a 2d20 6e61 6d65 3a20  needed..- name: 
│ │ │ +00212a00: 2741 6464 206e 6f65 7865 6320 4f70 7469  'Add noexec Opti
│ │ │ +00212a10: 6f6e 2074 6f20 2f62 6f6f 743a 2043 7265  on to /boot: Cre
│ │ │ +00212a20: 6174 6520 6d6f 756e 745f 696e 666f 2064  ate mount_info d
│ │ │ +00212a30: 6963 7469 6f6e 6172 7920 7661 7269 6162  ictionary variab
│ │ │ +00212a40: 6c65 270a 2020 7365 745f 6661 6374 3a0a  le'.  set_fact:.
│ │ │ +00212a50: 2020 2020 6d6f 756e 745f 696e 666f 3a20      mount_info: 
│ │ │ +00212a60: 277b 7b20 6d6f 756e 745f 696e 666f 7c64  '{{ mount_info|d
│ │ │ +00212a70: 6566 6175 6c74 287b 7d29 7c63 6f6d 6269  efault({})|combi
│ │ │ +00212a80: 6e65 287b 6974 656d 2e30 3a20 6974 656d  ne({item.0: item
│ │ │ +00212a90: 2e31 7d29 207d 7d27 0a20 2077 6974 685f  .1}) }}'.  with_
│ │ │ +00212aa0: 746f 6765 7468 6572 3a0a 2020 2d20 277b  together:.  - '{
│ │ │ +00212ab0: 7b20 6465 7669 6365 5f6e 616d 652e 7374  { device_name.st
│ │ │ +00212ac0: 646f 7574 5f6c 696e 6573 5b30 5d2e 7370  dout_lines[0].sp
│ │ │ +00212ad0: 6c69 7428 2920 7c20 6d61 7028 2727 6c6f  lit() | map(''lo
│ │ │ +00212ae0: 7765 7227 2729 207c 206c 6973 7420 7d7d  wer'') | list }}
│ │ │ +00212af0: 270a 2020 2d20 277b 7b20 6465 7669 6365  '.  - '{{ device
│ │ │ +00212b00: 5f6e 616d 652e 7374 646f 7574 5f6c 696e  _name.stdout_lin
│ │ │ +00212b10: 6573 5b31 5d2e 7370 6c69 7428 2920 7c20  es[1].split() | 
│ │ │ +00212b20: 6c69 7374 207d 7d27 0a20 2077 6865 6e3a  list }}'.  when:
│ │ │ +00212b30: 0a20 202d 2028 206e 6f74 2028 2022 6b65  .  - ( not ( "ke
│ │ │ +00212b40: 726e 656c 2220 696e 2061 6e73 6962 6c65  rnel" in ansible
│ │ │ +00212b50: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ +00212b60: 616e 6420 2262 6f6f 7463 2220 696e 2061  and "bootc" in a
│ │ │ +00212b70: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ +00212b80: 6b61 6765 730a 2020 2020 616e 6420 6e6f  kages.    and no
│ │ │ +00212b90: 7420 226f 7065 6e73 6869 6674 2d6b 7562  t "openshift-kub
│ │ │ +00212ba0: 656c 6574 2220 696e 2061 6e73 6962 6c65  elet" in ansible
│ │ │ +00212bb0: 5f66 6163 7473 2e70 6163 6b61 6765 7320  _facts.packages 
│ │ │ +00212bc0: 616e 6420 226f 7374 7265 6522 2069 6e20  and "ostree" in 
│ │ │ +00212bd0: 616e 7369 626c 655f 7072 6f63 5f63 6d64  ansible_proc_cmd
│ │ │ +00212be0: 6c69 6e65 0a20 2020 2029 2061 6e64 206e  line.    ) and n
│ │ │ +00212bf0: 6f74 2028 2061 6e73 6962 6c65 5f76 6972  ot ( ansible_vir
│ │ │ +00212c00: 7475 616c 697a 6174 696f 6e5f 7479 7065  tualization_type
│ │ │ +00212c10: 2069 6e20 5b22 646f 636b 6572 222c 2022   in ["docker", "
│ │ │ +00212c20: 6c78 6322 2c20 226f 7065 6e76 7a22 2c20  lxc", "openvz", 
│ │ │ +00212c30: 2270 6f64 6d61 6e22 2c0a 2020 2020 2263  "podman",.    "c
│ │ │ +00212c40: 6f6e 7461 696e 6572 225d 2029 2029 0a20  ontainer"] ) ). 
│ │ │ +00212c50: 202d 2064 6576 6963 655f 6e61 6d65 2e73   - device_name.s
│ │ │ +00212c60: 7464 6f75 7420 6973 2064 6566 696e 6564  tdout is defined
│ │ │ +00212c70: 2061 6e64 2064 6576 6963 655f 6e61 6d65   and device_name
│ │ │ +00212c80: 2e73 7464 6f75 745f 6c69 6e65 7320 6973  .stdout_lines is
│ │ │ +00212c90: 2064 6566 696e 6564 0a20 202d 2028 6465   defined.  - (de
│ │ │ +00212ca0: 7669 6365 5f6e 616d 652e 7374 646f 7574  vice_name.stdout
│ │ │ +00212cb0: 207c 206c 656e 6774 6820 2667 743b 2030   | length > 0
│ │ │ +00212cc0: 290a 2020 7461 6773 3a0a 2020 2d20 636f  ).  tags:.  - co
│ │ │ +00212cd0: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ +00212ce0: 0a20 202d 2068 6967 685f 6469 7372 7570  .  - high_disrup
│ │ │ +00212cf0: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d  tion.  - low_com
│ │ │ +00212d00: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ +00212d10: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ +00212d20: 6d6f 756e 745f 6f70 7469 6f6e 5f62 6f6f  mount_option_boo
│ │ │ +00212d30: 745f 6e6f 6578 6563 0a20 202d 206e 6f5f  t_noexec.  - no_
│ │ │ +00212d40: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ +00212d50: 206e 616d 653a 2027 4164 6420 6e6f 6578   name: 'Add noex
│ │ │ +00212d60: 6563 204f 7074 696f 6e20 746f 202f 626f  ec Option to /bo
│ │ │ +00212d70: 6f74 3a20 4966 202f 626f 6f74 206e 6f74  ot: If /boot not
│ │ │ +00212d80: 206d 6f75 6e74 6564 2c20 6372 6166 7420   mounted, craft 
│ │ │ +00212d90: 6d6f 756e 745f 696e 666f 206d 616e 7561  mount_info manua
│ │ │ +00212da0: 6c6c 7927 0a20 2073 6574 5f66 6163 743a  lly'.  set_fact:
│ │ │ +00212db0: 0a20 2020 206d 6f75 6e74 5f69 6e66 6f3a  .    mount_info:
│ │ │ +00212dc0: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f7c   '{{ mount_info|
│ │ │ +00212dd0: 6465 6661 756c 7428 7b7d 297c 636f 6d62  default({})|comb
│ │ │ +00212de0: 696e 6528 7b69 7465 6d2e 303a 2069 7465  ine({item.0: ite
│ │ │ +00212df0: 6d2e 317d 2920 7d7d 270a 2020 7769 7468  m.1}) }}'.  with
│ │ │ +00212e00: 5f74 6f67 6574 6865 723a 0a20 202d 202d  _together:.  - -
│ │ │ +00212e10: 2074 6172 6765 740a 2020 2020 2d20 736f   target.    - so
│ │ │ +00212e20: 7572 6365 0a20 2020 202d 2066 7374 7970  urce.    - fstyp
│ │ │ +00212e30: 650a 2020 2020 2d20 6f70 7469 6f6e 730a  e.    - options.
│ │ │ +00212e40: 2020 2d20 2d20 2f62 6f6f 740a 2020 2020    - - /boot.    
│ │ │ +00212e50: 2d20 2727 0a20 2020 202d 2027 270a 2020  - ''.    - ''.  
│ │ │ +00212e60: 2020 2d20 6465 6661 756c 7473 0a20 2077    - defaults.  w
│ │ │ +00212e70: 6865 6e3a 0a20 202d 2028 206e 6f74 2028  hen:.  - ( not (
│ │ │ +00212e80: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ +00212e90: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +00212ea0: 6765 7320 616e 6420 2262 6f6f 7463 2220  ges and "bootc" 
│ │ │ +00212eb0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +00212ec0: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ +00212ed0: 6420 6e6f 7420 226f 7065 6e73 6869 6674  d not "openshift
│ │ │ +00212ee0: 2d6b 7562 656c 6574 2220 696e 2061 6e73  -kubelet" in ans
│ │ │ +00212ef0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +00212f00: 6765 7320 616e 6420 226f 7374 7265 6522  ges and "ostree"
│ │ │ +00212f10: 2069 6e20 616e 7369 626c 655f 7072 6f63   in ansible_proc
│ │ │ +00212f20: 5f63 6d64 6c69 6e65 0a20 2020 2029 2061  _cmdline.    ) a
│ │ │ +00212f30: 6e64 206e 6f74 2028 2061 6e73 6962 6c65  nd not ( ansible
│ │ │ +00212f40: 5f76 6972 7475 616c 697a 6174 696f 6e5f  _virtualization_
│ │ │ +00212f50: 7479 7065 2069 6e20 5b22 646f 636b 6572  type in ["docker
│ │ │ +00212f60: 222c 2022 6c78 6322 2c20 226f 7065 6e76  ", "lxc", "openv
│ │ │ +00212f70: 7a22 2c20 2270 6f64 6d61 6e22 2c0a 2020  z", "podman",.  
│ │ │ +00212f80: 2020 2263 6f6e 7461 696e 6572 225d 2029    "container"] )
│ │ │ +00212f90: 2029 0a20 202d 2028 222d 2d66 7374 6162   ).  - ("--fstab
│ │ │ +00212fa0: 2220 7c20 6c65 6e67 7468 203d 3d20 3029  " | length == 0)
│ │ │ +00212fb0: 0a20 202d 2064 6576 6963 655f 6e61 6d65  .  - device_name
│ │ │ +00212fc0: 2e73 7464 6f75 7420 6973 2064 6566 696e  .stdout is defin
│ │ │ +00212fd0: 6564 2061 6e64 2064 6576 6963 655f 6e61  ed and device_na
│ │ │ +00212fe0: 6d65 2e73 7464 6f75 745f 6c69 6e65 7320  me.stdout_lines 
│ │ │ +00212ff0: 6973 2064 6566 696e 6564 0a20 202d 2028  is defined.  - (
│ │ │ +00213000: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ +00213010: 7574 207c 206c 656e 6774 6820 3d3d 2030  ut | length == 0
│ │ │ +00213020: 290a 2020 7461 6773 3a0a 2020 2d20 636f  ).  tags:.  - co
│ │ │ +00213030: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ +00213040: 0a20 202d 2068 6967 685f 6469 7372 7570  .  - high_disrup
│ │ │ +00213050: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d  tion.  - low_com
│ │ │ +00213060: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ +00213070: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ +00213080: 6d6f 756e 745f 6f70 7469 6f6e 5f62 6f6f  mount_option_boo
│ │ │ +00213090: 745f 6e6f 6578 6563 0a20 202d 206e 6f5f  t_noexec.  - no_
│ │ │ +002130a0: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ +002130b0: 206e 616d 653a 2027 4164 6420 6e6f 6578   name: 'Add noex
│ │ │ +002130c0: 6563 204f 7074 696f 6e20 746f 202f 626f  ec Option to /bo
│ │ │ +002130d0: 6f74 3a20 4d61 6b65 2073 7572 6520 6e6f  ot: Make sure no
│ │ │ +002130e0: 6578 6563 206f 7074 696f 6e20 6973 2070  exec option is p
│ │ │ +002130f0: 6172 7420 6f66 2074 6865 2074 6f20 2f62  art of the to /b
│ │ │ +00213100: 6f6f 740a 2020 2020 6f70 7469 6f6e 7327  oot.    options'
│ │ │ +00213110: 0a20 2073 6574 5f66 6163 743a 0a20 2020  .  set_fact:.   
│ │ │ +00213120: 206d 6f75 6e74 5f69 6e66 6f3a 2027 7b7b   mount_info: '{{
│ │ │ +00213130: 206d 6f75 6e74 5f69 6e66 6f20 7c20 636f   mount_info | co
│ │ │ +00213140: 6d62 696e 6528 207b 2727 6f70 7469 6f6e  mbine( {''option
│ │ │ +00213150: 7327 273a 2727 2727 7e28 6d6f 756e 745f  s'':''''~(mount_
│ │ │ +00213160: 696e 666f 2e6f 7074 696f 6e73 207c 0a20  info.options |. 
│ │ │ +00213170: 2020 2020 2064 6566 6175 6c74 2827 2727       default('''
│ │ │ +00213180: 2729 297e 2827 272c 2727 2069 6620 286d  '))~('','' if (m
│ │ │ +00213190: 6f75 6e74 5f69 6e66 6f2e 6f70 7469 6f6e  ount_info.option
│ │ │ +002131a0: 7320 7c20 6465 6661 756c 7428 2727 2727  s | default(''''
│ │ │ +002131b0: 2929 2065 6c73 6520 2727 2727 297e 2727  )) else '''')~''
│ │ │ +002131c0: 6e6f 6578 6563 2727 0a20 2020 2020 207d  noexec''.      }
│ │ │ +002131d0: 2920 7d7d 270a 2020 7768 656e 3a0a 2020  ) }}'.  when:.  
│ │ │ +002131e0: 2d20 2820 6e6f 7420 2820 226b 6572 6e65  - ( not ( "kerne
│ │ │ +002131f0: 6c22 2069 6e20 616e 7369 626c 655f 6661  l" in ansible_fa
│ │ │ +00213200: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ +00213210: 2022 626f 6f74 6322 2069 6e20 616e 7369   "bootc" in ansi
│ │ │ +00213220: 626c 655f 6661 6374 732e 7061 636b 6167  ble_facts.packag
│ │ │ +00213230: 6573 0a20 2020 2061 6e64 206e 6f74 2022  es.    and not "
│ │ │ +00213240: 6f70 656e 7368 6966 742d 6b75 6265 6c65  openshift-kubele
│ │ │ +00213250: 7422 2069 6e20 616e 7369 626c 655f 6661  t" in ansible_fa
│ │ │ +00213260: 6374 732e 7061 636b 6167 6573 2061 6e64  cts.packages and
│ │ │ +00213270: 2022 6f73 7472 6565 2220 696e 2061 6e73   "ostree" in ans
│ │ │ +00213280: 6962 6c65 5f70 726f 635f 636d 646c 696e  ible_proc_cmdlin
│ │ │ +00213290: 650a 2020 2020 2920 616e 6420 6e6f 7420  e.    ) and not 
│ │ │ +002132a0: 2820 616e 7369 626c 655f 7669 7274 7561  ( ansible_virtua
│ │ │ +002132b0: 6c69 7a61 7469 6f6e 5f74 7970 6520 696e  lization_type in
│ │ │ +002132c0: 205b 2264 6f63 6b65 7222 2c20 226c 7863   ["docker", "lxc
│ │ │ +002132d0: 222c 2022 6f70 656e 767a 222c 2022 706f  ", "openvz", "po
│ │ │ +002132e0: 646d 616e 222c 0a20 2020 2022 636f 6e74  dman",.    "cont
│ │ │ +002132f0: 6169 6e65 7222 5d20 2920 290a 2020 2d20  ainer"] ) ).  - 
│ │ │ +00213300: 6d6f 756e 745f 696e 666f 2069 7320 6465  mount_info is de
│ │ │ +00213310: 6669 6e65 6420 616e 6420 226e 6f65 7865  fined and "noexe
│ │ │ +00213320: 6322 206e 6f74 2069 6e20 286d 6f75 6e74  c" not in (mount
│ │ │ +00213330: 5f69 6e66 6f2e 6f70 7469 6f6e 7320 7c20  _info.options | 
│ │ │ +00213340: 6465 6661 756c 7428 2727 2929 0a20 2074  default('')).  t
│ │ │ +00213350: 6167 733a 0a20 202d 2063 6f6e 6669 6775  ags:.  - configu
│ │ │ +00213360: 7265 5f73 7472 6174 6567 790a 2020 2d20  re_strategy.  - 
│ │ │ +00213370: 6869 6768 5f64 6973 7275 7074 696f 6e0a  high_disruption.
│ │ │ +00213380: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ +00213390: 7479 0a20 202d 206d 6564 6975 6d5f 7365  ty.  - medium_se
│ │ │ +002133a0: 7665 7269 7479 0a20 202d 206d 6f75 6e74  verity.  - mount
│ │ │ +002133b0: 5f6f 7074 696f 6e5f 626f 6f74 5f6e 6f65  _option_boot_noe
│ │ │ +002133c0: 7865 630a 2020 2d20 6e6f 5f72 6562 6f6f  xec.  - no_reboo
│ │ │ +002133d0: 745f 6e65 6564 6564 0a0a 2d20 6e61 6d65  t_needed..- name
│ │ │ +002133e0: 3a20 2741 6464 206e 6f65 7865 6320 4f70  : 'Add noexec Op
│ │ │ +002133f0: 7469 6f6e 2074 6f20 2f62 6f6f 743a 2045  tion to /boot: E
│ │ │ +00213400: 6e73 7572 6520 2f62 6f6f 7420 6973 206d  nsure /boot is m
│ │ │ +00213410: 6f75 6e74 6564 2077 6974 6820 6e6f 6578  ounted with noex
│ │ │ +00213420: 6563 206f 7074 696f 6e27 0a20 2061 6e73  ec option'.  ans
│ │ │ +00213430: 6962 6c65 2e70 6f73 6978 2e6d 6f75 6e74  ible.posix.mount
│ │ │ +00213440: 3a0a 2020 2020 7061 7468 3a20 2f62 6f6f  :.    path: /boo
│ │ │ +00213450: 740a 2020 2020 7372 633a 2027 7b7b 206d  t.    src: '{{ m
│ │ │ +00213460: 6f75 6e74 5f69 6e66 6f2e 736f 7572 6365  ount_info.source
│ │ │ +00213470: 207c 2064 6566 6175 6c74 2827 2727 2729   | default('''')
│ │ │ +00213480: 207d 7d27 0a20 2020 206f 7074 733a 2027   }}'.    opts: '
│ │ │ +00213490: 7b7b 206d 6f75 6e74 5f69 6e66 6f2e 6f70  {{ mount_info.op
│ │ │ +002134a0: 7469 6f6e 7320 7c20 6465 6661 756c 7428  tions | default(
│ │ │ +002134b0: 2727 2727 2920 7d7d 270a 2020 2020 7374  '''') }}'.    st
│ │ │ +002134c0: 6174 653a 206d 6f75 6e74 6564 0a20 2020  ate: mounted.   
│ │ │ +002134d0: 2066 7374 7970 653a 2027 7b7b 206d 6f75   fstype: '{{ mou
│ │ │ +002134e0: 6e74 5f69 6e66 6f2e 6673 7479 7065 207c  nt_info.fstype |
│ │ │ +002134f0: 2064 6566 6175 6c74 2827 2727 2729 207d   default('''') }
│ │ │ +00213500: 7d27 0a20 2072 6567 6973 7465 723a 206d  }'.  register: m
│ │ │ +00213510: 6f75 6e74 5f72 6573 756c 740a 2020 6661  ount_result.  fa
│ │ │ +00213520: 696c 6564 5f77 6865 6e3a 0a20 202d 206d  iled_when:.  - m
│ │ │ +00213530: 6f75 6e74 5f72 6573 756c 7420 6973 2066  ount_result is f
│ │ │ +00213540: 6169 6c65 640a 2020 2d20 2727 2774 6172  ailed.  - '''tar
│ │ │ +00213550: 6765 7420 6973 2062 7573 7927 2720 6e6f  get is busy'' no
│ │ │ +00213560: 7420 696e 2028 6d6f 756e 745f 7265 7375  t in (mount_resu
│ │ │ +00213570: 6c74 2e6d 7367 207c 2064 6566 6175 6c74  lt.msg | default
│ │ │ +00213580: 2827 2727 2729 2927 0a20 202d 2027 2727  (''''))'.  - '''
│ │ │ +00213590: 616c 7265 6164 7920 6d6f 756e 7465 6427  already mounted'
│ │ │ +002135a0: 2720 6e6f 7420 696e 2028 6d6f 756e 745f  ' not in (mount_
│ │ │ +002135b0: 7265 7375 6c74 2e6d 7367 207c 2064 6566  result.msg | def
│ │ │ +002135c0: 6175 6c74 2827 2727 2729 2927 0a20 2077  ault(''''))'.  w
│ │ │ +002135d0: 6865 6e3a 0a20 202d 2028 206e 6f74 2028  hen:.  - ( not (
│ │ │ +002135e0: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ +002135f0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +00213600: 6765 7320 616e 6420 2262 6f6f 7463 2220  ges and "bootc" 
│ │ │ +00213610: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ +00213620: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ +00213630: 6420 6e6f 7420 226f 7065 6e73 6869 6674  d not "openshift
│ │ │ +00213640: 2d6b 7562 656c 6574 2220 696e 2061 6e73  -kubelet" in ans
│ │ │ +00213650: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ +00213660: 6765 7320 616e 6420 226f 7374 7265 6522  ges and "ostree"
│ │ │ +00213670: 2069 6e20 616e 7369 626c 655f 7072 6f63   in ansible_proc
│ │ │ +00213680: 5f63 6d64 6c69 6e65 0a20 2020 2029 2061  _cmdline.    ) a
│ │ │ +00213690: 6e64 206e 6f74 2028 2061 6e73 6962 6c65  nd not ( ansible
│ │ │ +002136a0: 5f76 6972 7475 616c 697a 6174 696f 6e5f  _virtualization_
│ │ │ +002136b0: 7479 7065 2069 6e20 5b22 646f 636b 6572  type in ["docker
│ │ │ +002136c0: 222c 2022 6c78 6322 2c20 226f 7065 6e76  ", "lxc", "openv
│ │ │ +002136d0: 7a22 2c20 2270 6f64 6d61 6e22 2c0a 2020  z", "podman",.  
│ │ │ +002136e0: 2020 2263 6f6e 7461 696e 6572 225d 2029    "container"] )
│ │ │ +002136f0: 2029 0a20 202d 206d 6f75 6e74 5f69 6e66   ).  - mount_inf
│ │ │ +00213700: 6f20 6973 2064 6566 696e 6564 0a20 202d  o is defined.  -
│ │ │ +00213710: 2028 6465 7669 6365 5f6e 616d 652e 7374   (device_name.st
│ │ │ +00213720: 646f 7574 2069 7320 6465 6669 6e65 6420  dout is defined 
│ │ │ +00213730: 616e 6420 2864 6576 6963 655f 6e61 6d65  and (device_name
│ │ │ +00213740: 2e73 7464 6f75 7420 7c20 6c65 6e67 7468  .stdout | length
│ │ │ +00213750: 2026 6774 3b20 3029 2920 6f72 2028 222d   > 0)) or ("-
│ │ │ +00213760: 2d66 7374 6162 220a 2020 2020 7c20 6c65  -fstab".    | le
│ │ │ +00213770: 6e67 7468 203d 3d20 3029 0a20 2074 6167  ngth == 0).  tag
│ │ │ +00213780: 733a 0a20 202d 2063 6f6e 6669 6775 7265  s:.  - configure
│ │ │ +00213790: 5f73 7472 6174 6567 790a 2020 2d20 6869  _strategy.  - hi
│ │ │ +002137a0: 6768 5f64 6973 7275 7074 696f 6e0a 2020  gh_disruption.  
│ │ │ +002137b0: 2d20 6c6f 775f 636f 6d70 6c65 7869 7479  - low_complexity
│ │ │ +002137c0: 0a20 202d 206d 6564 6975 6d5f 7365 7665  .  - medium_seve
│ │ │ +002137d0: 7269 7479 0a20 202d 206d 6f75 6e74 5f6f  rity.  - mount_o
│ │ │ +002137e0: 7074 696f 6e5f 626f 6f74 5f6e 6f65 7865  ption_boot_noexe
│ │ │ +002137f0: 630a 2020 2d20 6e6f 5f72 6562 6f6f 745f  c.  - no_reboot_
│ │ │ +00213800: 6e65 6564 6564 0a3c 2f63 6f64 653e 3c2f  needed.Remediati
│ │ │ +002138c0: 6f6e 2053 6865 6c6c 2073 6372 6970 7420  on Shell script 
│ │ │ +002138d0: e287 b23c 2f61 3e3c 6272 3e3c 6469 7620  ...
< │ │ │ +00213970: 2f74 723e 3c2f 7461 626c 653e 3c70 7265 /tr>
Compl │ │ │ +002125e0: 6578 6974 793a 3c2f 7468 3e3c 7464 3e6c exity:l │ │ │ +002125f0: 6f77 3c2f 7464 3e3c 2f74 723e 3c74 723e ow
Disruption:< │ │ │ +00212610: 2f74 683e 3c74 643e 6869 6768 3c2f 7464 /th>high
Re │ │ │ +00212630: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +00212640: 6c73 653c 2f74 643e 3c2f 7472 3e3c 7472 lse
Strategy:configure │ │ │ +00212670: 3c2f 7464 3e3c 2f74 723e 3c2f 7461 626c
Reboot:false
# Remedia
│ │ │ +00213990: 7469 6f6e 2069 7320 6170 706c 6963 6162  tion is applicab
│ │ │ +002139a0: 6c65 206f 6e6c 7920 696e 2063 6572 7461  le only in certa
│ │ │ +002139b0: 696e 2070 6c61 7466 6f72 6d73 0a69 6620  in platforms.if 
│ │ │ +002139c0: 2820 2120 2820 7b20 7270 6d20 2d2d 7175  ( ! ( { rpm --qu
│ │ │ +002139d0: 6965 7420 2d71 206b 6572 6e65 6c20 3b7d  iet -q kernel ;}
│ │ │ +002139e0: 2026 616d 703b 2661 6d70 3b20 7b20 7270   && { rp
│ │ │ +002139f0: 6d20 2d2d 7175 6965 7420 2d71 2062 6f6f  m --quiet -q boo
│ │ │ +00213a00: 7463 203b 7d20 2661 6d70 3b26 616d 703b  tc ;} &&
│ │ │ +00213a10: 207b 2021 2072 706d 202d 2d71 7569 6574   { ! rpm --quiet
│ │ │ +00213a20: 202d 7120 6f70 656e 7368 6966 742d 6b75   -q openshift-ku
│ │ │ +00213a30: 6265 6c65 7420 3b7d 2026 616d 703b 2661  belet ;} &&a
│ │ │ +00213a40: 6d70 3b20 285b 202d 6620 2f72 756e 2f6f  mp; ([ -f /run/o
│ │ │ +00213a50: 7374 7265 652d 626f 6f74 6564 205d 207c  stree-booted ] |
│ │ │ +00213a60: 7c20 5b20 2d4c 202f 6f73 7472 6565 205d  | [ -L /ostree ]
│ │ │ +00213a70: 2920 2920 2661 6d70 3b26 616d 703b 2021  ) ) && !
│ │ │ +00213a80: 2028 205b 202d 6620 2f2e 646f 636b 6572   ( [ -f /.docker
│ │ │ +00213a90: 656e 7620 5d20 7c7c 205b 202d 6620 2f72  env ] || [ -f /r
│ │ │ +00213aa0: 756e 2f2e 636f 6e74 6169 6e65 7265 6e76  un/.containerenv
│ │ │ +00213ab0: 205d 2029 2029 3b20 7468 656e 0a0a 6675   ] ) ); then..fu
│ │ │ +00213ac0: 6e63 7469 6f6e 2070 6572 666f 726d 5f72  nction perform_r
│ │ │ +00213ad0: 656d 6564 6961 7469 6f6e 207b 0a0a 2020  emediation {..  
│ │ │ +00213ae0: 2020 0a20 2020 2020 2020 2023 2074 6865    .        # the
│ │ │ +00213af0: 206d 6f75 6e74 2070 6f69 6e74 202f 626f   mount point /bo
│ │ │ +00213b00: 6f74 2068 6173 2074 6f20 6265 2064 6566  ot has to be def
│ │ │ +00213b10: 696e 6564 2069 6e20 2f65 7463 2f66 7374  ined in /etc/fst
│ │ │ +00213b20: 6162 0a20 2020 2020 2020 2023 2062 6566  ab.        # bef
│ │ │ +00213b30: 6f72 6520 7468 6973 2072 656d 6564 6961  ore this remedia
│ │ │ +00213b40: 7469 6f6e 2063 616e 2062 6520 6578 6563  tion can be exec
│ │ │ +00213b50: 7574 6564 2e20 496e 2063 6173 6520 6974  uted. In case it
│ │ │ +00213b60: 2069 7320 6e6f 7420 6465 6669 6e65 642c   is not defined,
│ │ │ +00213b70: 2074 6865 0a20 2020 2020 2020 2023 2072   the.        # r
│ │ │ +00213b80: 656d 6564 6961 7469 6f6e 2061 626f 7274  emediation abort
│ │ │ +00213b90: 7320 616e 6420 6e6f 2063 6861 6e67 6573  s and no changes
│ │ │ +00213ba0: 2072 6567 6172 6469 6e67 2074 6865 206d   regarding the m
│ │ │ +00213bb0: 6f75 6e74 2070 6f69 6e74 2061 7265 2064  ount point are d
│ │ │ +00213bc0: 6f6e 652e 0a20 2020 2020 2020 206d 6f75  one..        mou
│ │ │ +00213bd0: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ +00213be0: 6567 6578 703d 2224 2870 7269 6e74 6620  egexp="$(printf 
│ │ │ +00213bf0: 225e 5b5b 3a73 7061 6365 3a5d 5d2a 5b5e  "^[[:space:]]*[^
│ │ │ +00213c00: 235d 2e2a 5b5b 3a73 7061 6365 3a5d 5d25  #].*[[:space:]]%
│ │ │ +00213c10: 735b 5b3a 7370 6163 653a 5d5d 2220 222f  s[[:space:]]" "/
│ │ │ +00213c20: 626f 6f74 2229 220a 0a20 2020 2067 7265  boot")"..    gre
│ │ │ +00213c30: 7020 2224 6d6f 756e 745f 706f 696e 745f  p "$mount_point_
│ │ │ +00213c40: 6d61 7463 685f 7265 6765 7870 2220 2d71  match_regexp" -q
│ │ │ +00213c50: 202f 6574 632f 6673 7461 6220 5c0a 2020   /etc/fstab \.  
│ │ │ +00213c60: 2020 2020 2020 7c7c 207b 2065 6368 6f20        || { echo 
│ │ │ +00213c70: 2254 6865 206d 6f75 6e74 2070 6f69 6e74  "The mount point
│ │ │ +00213c80: 2027 2f62 6f6f 7427 2069 7320 6e6f 7420   '/boot' is not 
│ │ │ +00213c90: 6576 656e 2069 6e20 2f65 7463 2f66 7374  even in /etc/fst
│ │ │ +00213ca0: 6162 2c20 736f 2077 6520 6361 6e27 7420  ab, so we can't 
│ │ │ +00213cb0: 7365 7420 7570 206d 6f75 6e74 206f 7074  set up mount opt
│ │ │ +00213cc0: 696f 6e73 2220 2667 743b 2661 6d70 3b32  ions" >&2
│ │ │ +00213cd0: 3b0a 2020 2020 2020 2020 2020 2020 2020  ;.              
│ │ │ +00213ce0: 2020 6563 686f 2022 4e6f 7420 7265 6d65    echo "Not reme
│ │ │ +00213cf0: 6469 6174 696e 672c 2062 6563 6175 7365  diating, because
│ │ │ +00213d00: 2074 6865 7265 2069 7320 6e6f 2072 6563   there is no rec
│ │ │ +00213d10: 6f72 6420 6f66 202f 626f 6f74 2069 6e20  ord of /boot in 
│ │ │ +00213d20: 2f65 7463 2f66 7374 6162 2220 2667 743b  /etc/fstab" >
│ │ │ +00213d30: 2661 6d70 3b32 3b20 7265 7475 726e 2031  &2; return 1
│ │ │ +00213d40: 3b20 7d0a 2020 2020 0a0a 0a20 2020 206d  ; }.    ...    m
│ │ │ +00213d50: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368  ount_point_match
│ │ │ +00213d60: 5f72 6567 6578 703d 2224 2870 7269 6e74  _regexp="$(print
│ │ │ +00213d70: 6620 225e 5b5b 3a73 7061 6365 3a5d 5d2a  f "^[[:space:]]*
│ │ │ +00213d80: 5b5e 235d 2e2a 5b5b 3a73 7061 6365 3a5d  [^#].*[[:space:]
│ │ │ +00213d90: 5d25 735b 5b3a 7370 6163 653a 5d5d 2220  ]%s[[:space:]]" 
│ │ │ +00213da0: 2f62 6f6f 7429 220a 0a20 2020 2023 2049  /boot)"..    # I
│ │ │ +00213db0: 6620 7468 6520 6d6f 756e 7420 706f 696e  f the mount poin
│ │ │ +00213dc0: 7420 6973 206e 6f74 2069 6e20 2f65 7463  t is not in /etc
│ │ │ +00213dd0: 2f66 7374 6162 2c20 6765 7420 7072 6576  /fstab, get prev
│ │ │ +00213de0: 696f 7573 206d 6f75 6e74 206f 7074 696f  ious mount optio
│ │ │ +00213df0: 6e73 2066 726f 6d20 2f65 7463 2f6d 7461  ns from /etc/mta
│ │ │ +00213e00: 620a 2020 2020 6966 2021 2067 7265 7020  b.    if ! grep 
│ │ │ +00213e10: 2d71 2022 246d 6f75 6e74 5f70 6f69 6e74  -q "$mount_point
│ │ │ +00213e20: 5f6d 6174 6368 5f72 6567 6578 7022 202f  _match_regexp" /
│ │ │ +00213e30: 6574 632f 6673 7461 623b 2074 6865 6e0a  etc/fstab; then.
│ │ │ +00213e40: 2020 2020 2020 2020 2320 7275 6e74 696d          # runtim
│ │ │ +00213e50: 6520 6f70 7473 2077 6974 686f 7574 2073  e opts without s
│ │ │ +00213e60: 6f6d 6520 6175 746f 6d61 7469 6320 6b65  ome automatic ke
│ │ │ +00213e70: 726e 656c 2f75 7365 7273 7061 6365 2d61  rnel/userspace-a
│ │ │ +00213e80: 6464 6564 2064 6566 6175 6c74 730a 2020  dded defaults.  
│ │ │ +00213e90: 2020 2020 2020 7072 6576 696f 7573 5f6d        previous_m
│ │ │ +00213ea0: 6f75 6e74 5f6f 7074 733d 2428 6772 6570  ount_opts=$(grep
│ │ │ +00213eb0: 2022 246d 6f75 6e74 5f70 6f69 6e74 5f6d   "$mount_point_m
│ │ │ +00213ec0: 6174 6368 5f72 6567 6578 7022 202f 6574  atch_regexp" /et
│ │ │ +00213ed0: 632f 6d74 6162 207c 2068 6561 6420 2d31  c/mtab | head -1
│ │ │ +00213ee0: 207c 2020 6177 6b20 277b 7072 696e 7420   |  awk '{print 
│ │ │ +00213ef0: 2434 7d27 205c 0a20 2020 2020 2020 2020  $4}' \.         
│ │ │ +00213f00: 2020 2020 2020 2020 2020 207c 2073 6564             | sed
│ │ │ +00213f10: 202d 4520 2273 2f28 7277 7c64 6566 6175   -E "s/(rw|defau
│ │ │ +00213f20: 6c74 737c 7365 636c 6162 656c 7c6e 6f65  lts|seclabel|noe
│ │ │ +00213f30: 7865 6329 282c 7c24 292f 2f67 3b73 2f2c  xec)(,|$)//g;s/,
│ │ │ +00213f40: 242f 2f22 290a 2020 2020 2020 2020 5b20  $//").        [ 
│ │ │ +00213f50: 2224 7072 6576 696f 7573 5f6d 6f75 6e74  "$previous_mount
│ │ │ +00213f60: 5f6f 7074 7322 205d 2026 616d 703b 2661  _opts" ] &&a
│ │ │ +00213f70: 6d70 3b20 7072 6576 696f 7573 5f6d 6f75  mp; previous_mou
│ │ │ +00213f80: 6e74 5f6f 7074 732b 3d22 2c22 0a20 2020  nt_opts+=",".   
│ │ │ +00213f90: 2020 2020 2023 2049 6e20 6973 6f39 3636       # In iso966
│ │ │ +00213fa0: 3020 6669 6c65 7379 7374 656d 7320 6d74  0 filesystems mt
│ │ │ +00213fb0: 6162 2063 6f75 6c64 2064 6573 6372 6962  ab could describ
│ │ │ +00213fc0: 6520 6120 2262 6c6f 636b 7369 7a65 2220  e a "blocksize" 
│ │ │ +00213fd0: 7661 6c75 652c 2074 6869 7320 7368 6f75  value, this shou
│ │ │ +00213fe0: 6c64 2062 6520 7265 666c 6563 7465 6420  ld be reflected 
│ │ │ +00213ff0: 696e 0a20 2020 2020 2020 2023 2066 7374  in.        # fst
│ │ │ +00214000: 6162 2061 7320 2262 6c6f 636b 222e 2020  ab as "block".  
│ │ │ +00214010: 5468 6520 6e65 7874 2076 6172 6961 626c  The next variabl
│ │ │ +00214020: 6520 6973 2074 6f20 7361 7469 7366 7920  e is to satisfy 
│ │ │ +00214030: 7368 656c 6c63 6865 636b 2053 4332 3035  shellcheck SC205
│ │ │ +00214040: 302e 0a20 2020 2020 2020 2066 735f 7479  0..        fs_ty
│ │ │ +00214050: 7065 3d22 220a 2020 2020 2020 2020 6966  pe="".        if
│ │ │ +00214060: 205b 2020 2224 6673 5f74 7970 6522 203d   [  "$fs_type" =
│ │ │ +00214070: 3d20 2269 736f 3936 3630 2220 5d20 3b20  = "iso9660" ] ; 
│ │ │ +00214080: 7468 656e 0a20 2020 2020 2020 2020 2020  then.           
│ │ │ +00214090: 2070 7265 7669 6f75 735f 6d6f 756e 745f   previous_mount_
│ │ │ +002140a0: 6f70 7473 3d24 2873 6564 2027 732f 626c  opts=$(sed 's/bl
│ │ │ +002140b0: 6f63 6b73 697a 653d 2f62 6c6f 636b 3d2f  ocksize=/block=/
│ │ │ +002140c0: 2720 266c 743b 266c 743b 266c 743b 2022  ' <<< "
│ │ │ +002140d0: 2470 7265 7669 6f75 735f 6d6f 756e 745f  $previous_mount_
│ │ │ +002140e0: 6f70 7473 2229 0a20 2020 2020 2020 2066  opts").        f
│ │ │ +002140f0: 690a 2020 2020 2020 2020 6563 686f 2022  i.        echo "
│ │ │ +00214100: 202f 626f 6f74 2020 6465 6661 756c 7473   /boot  defaults
│ │ │ +00214110: 2c24 7b70 7265 7669 6f75 735f 6d6f 756e  ,${previous_moun
│ │ │ +00214120: 745f 6f70 7473 7d6e 6f65 7865 6320 3020  t_opts}noexec 0 
│ │ │ +00214130: 3022 2026 6774 3b26 6774 3b20 2f65 7463  0" >> /etc
│ │ │ +00214140: 2f66 7374 6162 0a20 2020 2023 2049 6620  /fstab.    # If 
│ │ │ +00214150: 7468 6520 6d6f 756e 745f 6f70 7420 6f70  the mount_opt op
│ │ │ +00214160: 7469 6f6e 2069 7320 6e6f 7420 616c 7265  tion is not alre
│ │ │ +00214170: 6164 7920 696e 2074 6865 206d 6f75 6e74  ady in the mount
│ │ │ +00214180: 2070 6f69 6e74 2773 202f 6574 632f 6673   point's /etc/fs
│ │ │ +00214190: 7461 6220 656e 7472 792c 2061 6464 2069  tab entry, add i
│ │ │ +002141a0: 740a 2020 2020 656c 6966 2021 2067 7265  t.    elif ! gre
│ │ │ +002141b0: 7020 2224 6d6f 756e 745f 706f 696e 745f  p "$mount_point_
│ │ │ +002141c0: 6d61 7463 685f 7265 6765 7870 2220 2f65  match_regexp" /e
│ │ │ +002141d0: 7463 2f66 7374 6162 207c 2067 7265 7020  tc/fstab | grep 
│ │ │ +002141e0: 2d71 2022 6e6f 6578 6563 223b 2074 6865  -q "noexec"; the
│ │ │ +002141f0: 6e0a 2020 2020 2020 2020 7072 6576 696f  n.        previo
│ │ │ +00214200: 7573 5f6d 6f75 6e74 5f6f 7074 733d 2428  us_mount_opts=$(
│ │ │ +00214210: 6772 6570 2022 246d 6f75 6e74 5f70 6f69  grep "$mount_poi
│ │ │ +00214220: 6e74 5f6d 6174 6368 5f72 6567 6578 7022  nt_match_regexp"
│ │ │ +00214230: 202f 6574 632f 6673 7461 6220 7c20 6177   /etc/fstab | aw
│ │ │ +00214240: 6b20 277b 7072 696e 7420 2434 7d27 290a  k '{print $4}').
│ │ │ +00214250: 2020 2020 2020 2020 7365 6420 2d69 2022          sed -i "
│ │ │ +00214260: 737c 5c28 247b 6d6f 756e 745f 706f 696e  s|\(${mount_poin
│ │ │ +00214270: 745f 6d61 7463 685f 7265 6765 7870 7d2e  t_match_regexp}.
│ │ │ +00214280: 2a24 7b70 7265 7669 6f75 735f 6d6f 756e  *${previous_moun
│ │ │ +00214290: 745f 6f70 7473 7d5c 297c 5c31 2c6e 6f65  t_opts}\)|\1,noe
│ │ │ +002142a0: 7865 637c 2220 2f65 7463 2f66 7374 6162  xec|" /etc/fstab
│ │ │ +002142b0: 0a20 2020 2066 690a 0a0a 2020 2020 6966  .    fi...    if
│ │ │ +002142c0: 206d 6b64 6972 202d 7020 222f 626f 6f74   mkdir -p "/boot
│ │ │ +002142d0: 223b 2074 6865 6e0a 2020 2020 2020 2020  "; then.        
│ │ │ +002142e0: 6966 206d 6f75 6e74 706f 696e 7420 2d71  if mountpoint -q
│ │ │ +002142f0: 2022 2f62 6f6f 7422 3b20 7468 656e 0a20   "/boot"; then. 
│ │ │ +00214300: 2020 2020 2020 2020 2020 206d 6f75 6e74             mount
│ │ │ +00214310: 202d 6f20 7265 6d6f 756e 7420 2d2d 7461   -o remount --ta
│ │ │ +00214320: 7267 6574 2022 2f62 6f6f 7422 0a20 2020  rget "/boot".   
│ │ │ +00214330: 2020 2020 2066 690a 2020 2020 6669 0a7d       fi.    fi.}
│ │ │ +00214340: 0a0a 7065 7266 6f72 6d5f 7265 6d65 6469  ..perform_remedi
│ │ │ +00214350: 6174 696f 6e0a 0a65 6c73 650a 2020 2020  ation..else.    
│ │ │ +00214360: 2667 743b 2661 6d70 3b32 2065 6368 6f20  >&2 echo 
│ │ │ +00214370: 2752 656d 6564 6961 7469 6f6e 2069 7320  'Remediation is 
│ │ │ +00214380: 6e6f 7420 6170 706c 6963 6162 6c65 2c20  not applicable, 
│ │ │ +00214390: 6e6f 7468 696e 6720 7761 7320 646f 6e65  nothing was done
│ │ │ +002143a0: 270a 6669 0a3c 2f63 6f64 653e 3c2f 7072  '.fi.
Remediation │ │ │ +00214460: 2041 6e61 636f 6e64 6120 736e 6970 7065 Anaconda snippe │ │ │ +00214470: 7420 e287 b23c 2f61 3e3c 6272 3e3c 6469 t ...
< │ │ │ +002144f0: 7472 3e3c 7468 3e43 6f6d 706c 6578 6974 tr>Complexit │ │ │ +00214500: 793a 3c2f 7468 3e3c 7464 3e6c 6f77 3c2f y:low │ │ │ +00214520: 4469 7372 7570 7469 6f6e 3a3c 2f74 683e Disruption: │ │ │ +00214530: 3c74 643e 6869 6768 3c2f 7464 3e3c 2f74 highReboot │ │ │ +00214550: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ +00214560: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Strategy:< │ │ │ +00214580: 7464 3e65 6e61 626c 653c 2f74 643e 3c2f td>enable
│ │ │ +002145a0: 3c63 6f64 653e 0a70 6172 7420 2f62 6f6f  .part /boo
│ │ │ +002145b0: 7420 2d2d 6d6f 756e 746f 7074 696f 6e73  t --mountoptions
│ │ │ +002145c0: 3d22 6e6f 6578 6563 220a 3c2f 636f 6465  ="noexec".
Remediati │ │ │ -002151b0: 6f6e 2041 6e61 636f 6e64 6120 736e 6970 on Anaconda snip │ │ │ -002151c0: 7065 7420 e287 b23c 2f61 3e3c 6272 3e3c pet ...
< │ │ │ -002151d0: 6469 7620 636c 6173 733d 2270 616e 656c div class="panel │ │ │ -002151e0: 2d63 6f6c 6c61 7073 6520 636f 6c6c 6170 -collapse collap │ │ │ -002151f0: 7365 2220 6964 3d22 6964 3637 3022 3e3c se" id="id670">< │ │ │ -00215200: 7461 626c 6520 636c 6173 733d 2274 6162 table class="tab │ │ │ -00215210: 6c65 2074 6162 6c65 2d73 7472 6970 6564 le table-striped │ │ │ -00215220: 2074 6162 6c65 2d62 6f72 6465 7265 6420 table-bordered │ │ │ -00215230: 7461 626c 652d 636f 6e64 656e 7365 6422 table-condensed" │ │ │ -00215240: 3e3c 7472 3e3c 7468 3e43 6f6d 706c 6578 >Complex │ │ │ -00215250: 6974 793a 3c2f 7468 3e3c 7464 3e6c 6f77 ity:low │ │ │ -00215260: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Disruption:high< │ │ │ -00215290: 2f74 723e 3c74 723e 3c74 683e 5265 626f /tr>Rebo │ │ │ -002152a0: 6f74 3a3c 2f74 683e 3c74 643e 6661 6c73 ot:fals │ │ │ -002152b0: 653c 2f74 643e 3c2f 7472 3e3c 7472 3e3c e< │ │ │ -002152c0: 7468 3e53 7472 6174 6567 793a 3c2f 7468 th>Strategy:enable │ │ │ -002152e0: 3c2f 7472 3e3c 2f74 6162 6c65 3e3c 7072 .part /b │ │ │ -00215300: 6f6f 7420 2d2d 6d6f 756e 746f 7074 696f oot --mountoptio │ │ │ -00215310: 6e73 3d22 6e6f 7375 6964 220a 3c2f 636f ns="nosuid".
< │ │ │ -00215330: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ -00215340: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ -00215350: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ -00215360: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ -00215370: 6436 3731 2220 7461 6269 6e64 6578 3d22 d671" tabindex=" │ │ │ -00215380: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ -00215390: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ -002153a0: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ -002153b0: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ -002153c0: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ -002153d0: 6469 6174 696f 6e20 416e 7369 626c 6520 diation Ansible │ │ │ -002153e0: 736e 6970 7065 7420 e287 b23c 2f61 3e3c snippet ...< │ │ │ -002153f0: 6272 3e3c 6469 7620 636c 6173 733d 2270 br>
< │ │ │ -002154e0: 7472 3e3c 7468 3e53 7472 6174 6567 793a tr>
-
│ │ │ -00215520: 206e 616d 653a 2047 6174 6865 7220 7468   name: Gather th
│ │ │ -00215530: 6520 7061 636b 6167 6520 6661 6374 730a  e package facts.
│ │ │ -00215540: 2020 7061 636b 6167 655f 6661 6374 733a    package_facts:
│ │ │ -00215550: 0a20 2020 206d 616e 6167 6572 3a20 6175  .    manager: au
│ │ │ -00215560: 746f 0a20 2074 6167 733a 0a20 202d 204e  to.  tags:.  - N
│ │ │ -00215570: 4953 542d 3830 302d 3533 2d41 432d 360a  IST-800-53-AC-6.
│ │ │ -00215580: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -00215590: 4143 2d36 2831 290a 2020 2d20 4e49 5354  AC-6(1).  - NIST
│ │ │ -002155a0: 2d38 3030 2d35 332d 434d 2d36 2861 290a  -800-53-CM-6(a).
│ │ │ -002155b0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -002155c0: 434d 2d37 2861 290a 2020 2d20 4e49 5354  CM-7(a).  - NIST
│ │ │ -002155d0: 2d38 3030 2d35 332d 434d 2d37 2862 290a  -800-53-CM-7(b).
│ │ │ -002155e0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -002155f0: 4d50 2d37 0a20 202d 2063 6f6e 6669 6775  MP-7.  - configu
│ │ │ -00215600: 7265 5f73 7472 6174 6567 790a 2020 2d20  re_strategy.  - 
│ │ │ -00215610: 6869 6768 5f64 6973 7275 7074 696f 6e0a  high_disruption.
│ │ │ -00215620: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869    - low_complexi
│ │ │ -00215630: 7479 0a20 202d 206d 6564 6975 6d5f 7365  ty.  - medium_se
│ │ │ -00215640: 7665 7269 7479 0a20 202d 206d 6f75 6e74  verity.  - mount
│ │ │ -00215650: 5f6f 7074 696f 6e5f 626f 6f74 5f6e 6f73  _option_boot_nos
│ │ │ -00215660: 7569 640a 2020 2d20 6e6f 5f72 6562 6f6f  uid.  - no_reboo
│ │ │ -00215670: 745f 6e65 6564 6564 0a0a 2d20 6e61 6d65  t_needed..- name
│ │ │ -00215680: 3a20 2741 6464 206e 6f73 7569 6420 4f70  : 'Add nosuid Op
│ │ │ -00215690: 7469 6f6e 2074 6f20 2f62 6f6f 743a 2043  tion to /boot: C
│ │ │ -002156a0: 6865 636b 2069 6e66 6f72 6d61 7469 6f6e  heck information
│ │ │ -002156b0: 2061 7373 6f63 6961 7465 6420 746f 206d   associated to m
│ │ │ -002156c0: 6f75 6e74 706f 696e 7427 0a20 2061 6e73  ountpoint'.  ans
│ │ │ -002156d0: 6962 6c65 2e62 7569 6c74 696e 2e63 6f6d  ible.builtin.com
│ │ │ -002156e0: 6d61 6e64 3a20 6669 6e64 6d6e 7420 2d2d  mand: findmnt --
│ │ │ -002156f0: 6673 7461 6220 272f 626f 6f74 270a 2020  fstab '/boot'.  
│ │ │ -00215700: 7265 6769 7374 6572 3a20 6465 7669 6365  register: device
│ │ │ -00215710: 5f6e 616d 650a 2020 6661 696c 6564 5f77  _name.  failed_w
│ │ │ -00215720: 6865 6e3a 2064 6576 6963 655f 6e61 6d65  hen: device_name
│ │ │ -00215730: 2e72 6320 2667 743b 2031 0a20 2063 6861  .rc > 1.  cha
│ │ │ -00215740: 6e67 6564 5f77 6865 6e3a 2066 616c 7365  nged_when: false
│ │ │ -00215750: 0a20 2063 6865 636b 5f6d 6f64 653a 2066  .  check_mode: f
│ │ │ -00215760: 616c 7365 0a20 2077 6865 6e3a 2028 206e  alse.  when: ( n
│ │ │ -00215770: 6f74 2028 2022 6b65 726e 656c 2220 696e  ot ( "kernel" in
│ │ │ -00215780: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -00215790: 6163 6b61 6765 7320 616e 6420 2262 6f6f  ackages and "boo
│ │ │ -002157a0: 7463 2220 696e 2061 6e73 6962 6c65 5f66  tc" in ansible_f
│ │ │ -002157b0: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ -002157c0: 2020 616e 6420 6e6f 7420 226f 7065 6e73    and not "opens
│ │ │ -002157d0: 6869 6674 2d6b 7562 656c 6574 2220 696e  hift-kubelet" in
│ │ │ -002157e0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -002157f0: 6163 6b61 6765 7320 616e 6420 226f 7374  ackages and "ost
│ │ │ -00215800: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ -00215810: 7072 6f63 5f63 6d64 6c69 6e65 0a20 2020  proc_cmdline.   
│ │ │ -00215820: 2029 2061 6e64 206e 6f74 2028 2061 6e73   ) and not ( ans
│ │ │ -00215830: 6962 6c65 5f76 6972 7475 616c 697a 6174  ible_virtualizat
│ │ │ -00215840: 696f 6e5f 7479 7065 2069 6e20 5b22 646f  ion_type in ["do
│ │ │ -00215850: 636b 6572 222c 2022 6c78 6322 2c20 226f  cker", "lxc", "o
│ │ │ -00215860: 7065 6e76 7a22 2c20 2270 6f64 6d61 6e22  penvz", "podman"
│ │ │ -00215870: 2c0a 2020 2020 2263 6f6e 7461 696e 6572  ,.    "container
│ │ │ -00215880: 225d 2029 2029 0a20 2074 6167 733a 0a20  "] ) ).  tags:. 
│ │ │ -00215890: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ -002158a0: 432d 360a 2020 2d20 4e49 5354 2d38 3030  C-6.  - NIST-800
│ │ │ -002158b0: 2d35 332d 4143 2d36 2831 290a 2020 2d20  -53-AC-6(1).  - 
│ │ │ -002158c0: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ -002158d0: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ -002158e0: 2d35 332d 434d 2d37 2861 290a 2020 2d20  -53-CM-7(a).  - 
│ │ │ -002158f0: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ -00215900: 2862 290a 2020 2d20 4e49 5354 2d38 3030  (b).  - NIST-800
│ │ │ -00215910: 2d35 332d 4d50 2d37 0a20 202d 2063 6f6e  -53-MP-7.  - con
│ │ │ -00215920: 6669 6775 7265 5f73 7472 6174 6567 790a  figure_strategy.
│ │ │ -00215930: 2020 2d20 6869 6768 5f64 6973 7275 7074    - high_disrupt
│ │ │ -00215940: 696f 6e0a 2020 2d20 6c6f 775f 636f 6d70  ion.  - low_comp
│ │ │ -00215950: 6c65 7869 7479 0a20 202d 206d 6564 6975  lexity.  - mediu
│ │ │ -00215960: 6d5f 7365 7665 7269 7479 0a20 202d 206d  m_severity.  - m
│ │ │ -00215970: 6f75 6e74 5f6f 7074 696f 6e5f 626f 6f74  ount_option_boot
│ │ │ -00215980: 5f6e 6f73 7569 640a 2020 2d20 6e6f 5f72  _nosuid.  - no_r
│ │ │ -00215990: 6562 6f6f 745f 6e65 6564 6564 0a0a 2d20  eboot_needed..- 
│ │ │ -002159a0: 6e61 6d65 3a20 2741 6464 206e 6f73 7569  name: 'Add nosui
│ │ │ -002159b0: 6420 4f70 7469 6f6e 2074 6f20 2f62 6f6f  d Option to /boo
│ │ │ -002159c0: 743a 2043 7265 6174 6520 6d6f 756e 745f  t: Create mount_
│ │ │ -002159d0: 696e 666f 2064 6963 7469 6f6e 6172 7920  info dictionary 
│ │ │ -002159e0: 7661 7269 6162 6c65 270a 2020 7365 745f  variable'.  set_
│ │ │ -002159f0: 6661 6374 3a0a 2020 2020 6d6f 756e 745f  fact:.    mount_
│ │ │ -00215a00: 696e 666f 3a20 277b 7b20 6d6f 756e 745f  info: '{{ mount_
│ │ │ -00215a10: 696e 666f 7c64 6566 6175 6c74 287b 7d29  info|default({})
│ │ │ -00215a20: 7c63 6f6d 6269 6e65 287b 6974 656d 2e30  |combine({item.0
│ │ │ -00215a30: 3a20 6974 656d 2e31 7d29 207d 7d27 0a20  : item.1}) }}'. 
│ │ │ -00215a40: 2077 6974 685f 746f 6765 7468 6572 3a0a   with_together:.
│ │ │ -00215a50: 2020 2d20 277b 7b20 6465 7669 6365 5f6e    - '{{ device_n
│ │ │ -00215a60: 616d 652e 7374 646f 7574 5f6c 696e 6573  ame.stdout_lines
│ │ │ -00215a70: 5b30 5d2e 7370 6c69 7428 2920 7c20 6d61  [0].split() | ma
│ │ │ -00215a80: 7028 2727 6c6f 7765 7227 2729 207c 206c  p(''lower'') | l
│ │ │ -00215a90: 6973 7420 7d7d 270a 2020 2d20 277b 7b20  ist }}'.  - '{{ 
│ │ │ -00215aa0: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ -00215ab0: 7574 5f6c 696e 6573 5b31 5d2e 7370 6c69  ut_lines[1].spli
│ │ │ -00215ac0: 7428 2920 7c20 6c69 7374 207d 7d27 0a20  t() | list }}'. 
│ │ │ -00215ad0: 2077 6865 6e3a 0a20 202d 2028 206e 6f74   when:.  - ( not
│ │ │ -00215ae0: 2028 2022 6b65 726e 656c 2220 696e 2061   ( "kernel" in a
│ │ │ -00215af0: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -00215b00: 6b61 6765 7320 616e 6420 2262 6f6f 7463  kages and "bootc
│ │ │ -00215b10: 2220 696e 2061 6e73 6962 6c65 5f66 6163  " in ansible_fac
│ │ │ -00215b20: 7473 2e70 6163 6b61 6765 730a 2020 2020  ts.packages.    
│ │ │ -00215b30: 616e 6420 6e6f 7420 226f 7065 6e73 6869  and not "openshi
│ │ │ -00215b40: 6674 2d6b 7562 656c 6574 2220 696e 2061  ft-kubelet" in a
│ │ │ -00215b50: 6e73 6962 6c65 5f66 6163 7473 2e70 6163  nsible_facts.pac
│ │ │ -00215b60: 6b61 6765 7320 616e 6420 226f 7374 7265  kages and "ostre
│ │ │ -00215b70: 6522 2069 6e20 616e 7369 626c 655f 7072  e" in ansible_pr
│ │ │ -00215b80: 6f63 5f63 6d64 6c69 6e65 0a20 2020 2029  oc_cmdline.    )
│ │ │ -00215b90: 2061 6e64 206e 6f74 2028 2061 6e73 6962   and not ( ansib
│ │ │ -00215ba0: 6c65 5f76 6972 7475 616c 697a 6174 696f  le_virtualizatio
│ │ │ -00215bb0: 6e5f 7479 7065 2069 6e20 5b22 646f 636b  n_type in ["dock
│ │ │ -00215bc0: 6572 222c 2022 6c78 6322 2c20 226f 7065  er", "lxc", "ope
│ │ │ -00215bd0: 6e76 7a22 2c20 2270 6f64 6d61 6e22 2c0a  nvz", "podman",.
│ │ │ -00215be0: 2020 2020 2263 6f6e 7461 696e 6572 225d      "container"]
│ │ │ -00215bf0: 2029 2029 0a20 202d 2064 6576 6963 655f   ) ).  - device_
│ │ │ -00215c00: 6e61 6d65 2e73 7464 6f75 7420 6973 2064  name.stdout is d
│ │ │ -00215c10: 6566 696e 6564 2061 6e64 2064 6576 6963  efined and devic
│ │ │ -00215c20: 655f 6e61 6d65 2e73 7464 6f75 745f 6c69  e_name.stdout_li
│ │ │ -00215c30: 6e65 7320 6973 2064 6566 696e 6564 0a20  nes is defined. 
│ │ │ -00215c40: 202d 2028 6465 7669 6365 5f6e 616d 652e   - (device_name.
│ │ │ -00215c50: 7374 646f 7574 207c 206c 656e 6774 6820  stdout | length 
│ │ │ -00215c60: 2667 743b 2030 290a 2020 7461 6773 3a0a  > 0).  tags:.
│ │ │ -00215c70: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -00215c80: 4143 2d36 0a20 202d 204e 4953 542d 3830  AC-6.  - NIST-80
│ │ │ -00215c90: 302d 3533 2d41 432d 3628 3129 0a20 202d  0-53-AC-6(1).  -
│ │ │ -00215ca0: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -00215cb0: 3628 6129 0a20 202d 204e 4953 542d 3830  6(a).  - NIST-80
│ │ │ -00215cc0: 302d 3533 2d43 4d2d 3728 6129 0a20 202d  0-53-CM-7(a).  -
│ │ │ -00215cd0: 204e 4953 542d 3830 302d 3533 2d43 4d2d   NIST-800-53-CM-
│ │ │ -00215ce0: 3728 6229 0a20 202d 204e 4953 542d 3830  7(b).  - NIST-80
│ │ │ -00215cf0: 302d 3533 2d4d 502d 370a 2020 2d20 636f  0-53-MP-7.  - co
│ │ │ -00215d00: 6e66 6967 7572 655f 7374 7261 7465 6779  nfigure_strategy
│ │ │ -00215d10: 0a20 202d 2068 6967 685f 6469 7372 7570  .  - high_disrup
│ │ │ -00215d20: 7469 6f6e 0a20 202d 206c 6f77 5f63 6f6d  tion.  - low_com
│ │ │ -00215d30: 706c 6578 6974 790a 2020 2d20 6d65 6469  plexity.  - medi
│ │ │ -00215d40: 756d 5f73 6576 6572 6974 790a 2020 2d20  um_severity.  - 
│ │ │ -00215d50: 6d6f 756e 745f 6f70 7469 6f6e 5f62 6f6f  mount_option_boo
│ │ │ -00215d60: 745f 6e6f 7375 6964 0a20 202d 206e 6f5f  t_nosuid.  - no_
│ │ │ -00215d70: 7265 626f 6f74 5f6e 6565 6465 640a 0a2d  reboot_needed..-
│ │ │ -00215d80: 206e 616d 653a 2027 4164 6420 6e6f 7375   name: 'Add nosu
│ │ │ -00215d90: 6964 204f 7074 696f 6e20 746f 202f 626f  id Option to /bo
│ │ │ -00215da0: 6f74 3a20 4966 202f 626f 6f74 206e 6f74  ot: If /boot not
│ │ │ -00215db0: 206d 6f75 6e74 6564 2c20 6372 6166 7420   mounted, craft 
│ │ │ -00215dc0: 6d6f 756e 745f 696e 666f 206d 616e 7561  mount_info manua
│ │ │ -00215dd0: 6c6c 7927 0a20 2073 6574 5f66 6163 743a  lly'.  set_fact:
│ │ │ -00215de0: 0a20 2020 206d 6f75 6e74 5f69 6e66 6f3a  .    mount_info:
│ │ │ -00215df0: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f7c   '{{ mount_info|
│ │ │ -00215e00: 6465 6661 756c 7428 7b7d 297c 636f 6d62  default({})|comb
│ │ │ -00215e10: 696e 6528 7b69 7465 6d2e 303a 2069 7465  ine({item.0: ite
│ │ │ -00215e20: 6d2e 317d 2920 7d7d 270a 2020 7769 7468  m.1}) }}'.  with
│ │ │ -00215e30: 5f74 6f67 6574 6865 723a 0a20 202d 202d  _together:.  - -
│ │ │ -00215e40: 2074 6172 6765 740a 2020 2020 2d20 736f   target.    - so
│ │ │ -00215e50: 7572 6365 0a20 2020 202d 2066 7374 7970  urce.    - fstyp
│ │ │ -00215e60: 650a 2020 2020 2d20 6f70 7469 6f6e 730a  e.    - options.
│ │ │ -00215e70: 2020 2d20 2d20 2f62 6f6f 740a 2020 2020    - - /boot.    
│ │ │ -00215e80: 2d20 2727 0a20 2020 202d 2027 270a 2020  - ''.    - ''.  
│ │ │ -00215e90: 2020 2d20 6465 6661 756c 7473 0a20 2077    - defaults.  w
│ │ │ -00215ea0: 6865 6e3a 0a20 202d 2028 206e 6f74 2028  hen:.  - ( not (
│ │ │ -00215eb0: 2022 6b65 726e 656c 2220 696e 2061 6e73   "kernel" in ans
│ │ │ -00215ec0: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -00215ed0: 6765 7320 616e 6420 2262 6f6f 7463 2220  ges and "bootc" 
│ │ │ -00215ee0: 696e 2061 6e73 6962 6c65 5f66 6163 7473  in ansible_facts
│ │ │ -00215ef0: 2e70 6163 6b61 6765 730a 2020 2020 616e  .packages.    an
│ │ │ -00215f00: 6420 6e6f 7420 226f 7065 6e73 6869 6674  d not "openshift
│ │ │ -00215f10: 2d6b 7562 656c 6574 2220 696e 2061 6e73  -kubelet" in ans
│ │ │ -00215f20: 6962 6c65 5f66 6163 7473 2e70 6163 6b61  ible_facts.packa
│ │ │ -00215f30: 6765 7320 616e 6420 226f 7374 7265 6522  ges and "ostree"
│ │ │ -00215f40: 2069 6e20 616e 7369 626c 655f 7072 6f63   in ansible_proc
│ │ │ -00215f50: 5f63 6d64 6c69 6e65 0a20 2020 2029 2061  _cmdline.    ) a
│ │ │ -00215f60: 6e64 206e 6f74 2028 2061 6e73 6962 6c65  nd not ( ansible
│ │ │ -00215f70: 5f76 6972 7475 616c 697a 6174 696f 6e5f  _virtualization_
│ │ │ -00215f80: 7479 7065 2069 6e20 5b22 646f 636b 6572  type in ["docker
│ │ │ -00215f90: 222c 2022 6c78 6322 2c20 226f 7065 6e76  ", "lxc", "openv
│ │ │ -00215fa0: 7a22 2c20 2270 6f64 6d61 6e22 2c0a 2020  z", "podman",.  
│ │ │ -00215fb0: 2020 2263 6f6e 7461 696e 6572 225d 2029    "container"] )
│ │ │ -00215fc0: 2029 0a20 202d 2028 222d 2d66 7374 6162   ).  - ("--fstab
│ │ │ -00215fd0: 2220 7c20 6c65 6e67 7468 203d 3d20 3029  " | length == 0)
│ │ │ -00215fe0: 0a20 202d 2064 6576 6963 655f 6e61 6d65  .  - device_name
│ │ │ -00215ff0: 2e73 7464 6f75 7420 6973 2064 6566 696e  .stdout is defin
│ │ │ -00216000: 6564 2061 6e64 2064 6576 6963 655f 6e61  ed and device_na
│ │ │ -00216010: 6d65 2e73 7464 6f75 745f 6c69 6e65 7320  me.stdout_lines 
│ │ │ -00216020: 6973 2064 6566 696e 6564 0a20 202d 2028  is defined.  - (
│ │ │ -00216030: 6465 7669 6365 5f6e 616d 652e 7374 646f  device_name.stdo
│ │ │ -00216040: 7574 207c 206c 656e 6774 6820 3d3d 2030  ut | length == 0
│ │ │ -00216050: 290a 2020 7461 6773 3a0a 2020 2d20 4e49  ).  tags:.  - NI
│ │ │ -00216060: 5354 2d38 3030 2d35 332d 4143 2d36 0a20  ST-800-53-AC-6. 
│ │ │ -00216070: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ -00216080: 432d 3628 3129 0a20 202d 204e 4953 542d  C-6(1).  - NIST-
│ │ │ -00216090: 3830 302d 3533 2d43 4d2d 3628 6129 0a20  800-53-CM-6(a). 
│ │ │ -002160a0: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -002160b0: 4d2d 3728 6129 0a20 202d 204e 4953 542d  M-7(a).  - NIST-
│ │ │ -002160c0: 3830 302d 3533 2d43 4d2d 3728 6229 0a20  800-53-CM-7(b). 
│ │ │ -002160d0: 202d 204e 4953 542d 3830 302d 3533 2d4d   - NIST-800-53-M
│ │ │ -002160e0: 502d 370a 2020 2d20 636f 6e66 6967 7572  P-7.  - configur
│ │ │ -002160f0: 655f 7374 7261 7465 6779 0a20 202d 2068  e_strategy.  - h
│ │ │ -00216100: 6967 685f 6469 7372 7570 7469 6f6e 0a20  igh_disruption. 
│ │ │ -00216110: 202d 206c 6f77 5f63 6f6d 706c 6578 6974   - low_complexit
│ │ │ -00216120: 790a 2020 2d20 6d65 6469 756d 5f73 6576  y.  - medium_sev
│ │ │ -00216130: 6572 6974 790a 2020 2d20 6d6f 756e 745f  erity.  - mount_
│ │ │ -00216140: 6f70 7469 6f6e 5f62 6f6f 745f 6e6f 7375  option_boot_nosu
│ │ │ -00216150: 6964 0a20 202d 206e 6f5f 7265 626f 6f74  id.  - no_reboot
│ │ │ -00216160: 5f6e 6565 6465 640a 0a2d 206e 616d 653a  _needed..- name:
│ │ │ -00216170: 2027 4164 6420 6e6f 7375 6964 204f 7074   'Add nosuid Opt
│ │ │ -00216180: 696f 6e20 746f 202f 626f 6f74 3a20 4d61  ion to /boot: Ma
│ │ │ -00216190: 6b65 2073 7572 6520 6e6f 7375 6964 206f  ke sure nosuid o
│ │ │ -002161a0: 7074 696f 6e20 6973 2070 6172 7420 6f66  ption is part of
│ │ │ -002161b0: 2074 6865 2074 6f20 2f62 6f6f 740a 2020   the to /boot.  
│ │ │ -002161c0: 2020 6f70 7469 6f6e 7327 0a20 2073 6574    options'.  set
│ │ │ -002161d0: 5f66 6163 743a 0a20 2020 206d 6f75 6e74  _fact:.    mount
│ │ │ -002161e0: 5f69 6e66 6f3a 2027 7b7b 206d 6f75 6e74  _info: '{{ mount
│ │ │ -002161f0: 5f69 6e66 6f20 7c20 636f 6d62 696e 6528  _info | combine(
│ │ │ -00216200: 207b 2727 6f70 7469 6f6e 7327 273a 2727   {''options'':''
│ │ │ -00216210: 2727 7e28 6d6f 756e 745f 696e 666f 2e6f  ''~(mount_info.o
│ │ │ -00216220: 7074 696f 6e73 207c 0a20 2020 2020 2064  ptions |.      d
│ │ │ -00216230: 6566 6175 6c74 2827 2727 2729 297e 2827  efault(''''))~('
│ │ │ -00216240: 272c 2727 2069 6620 286d 6f75 6e74 5f69  ','' if (mount_i
│ │ │ -00216250: 6e66 6f2e 6f70 7469 6f6e 7320 7c20 6465  nfo.options | de
│ │ │ -00216260: 6661 756c 7428 2727 2727 2929 2065 6c73  fault('''')) els
│ │ │ -00216270: 6520 2727 2727 297e 2727 6e6f 7375 6964  e '''')~''nosuid
│ │ │ -00216280: 2727 0a20 2020 2020 207d 2920 7d7d 270a  ''.      }) }}'.
│ │ │ -00216290: 2020 7768 656e 3a0a 2020 2d20 2820 6e6f    when:.  - ( no
│ │ │ -002162a0: 7420 2820 226b 6572 6e65 6c22 2069 6e20  t ( "kernel" in 
│ │ │ -002162b0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -002162c0: 636b 6167 6573 2061 6e64 2022 626f 6f74  ckages and "boot
│ │ │ -002162d0: 6322 2069 6e20 616e 7369 626c 655f 6661  c" in ansible_fa
│ │ │ -002162e0: 6374 732e 7061 636b 6167 6573 0a20 2020  cts.packages.   
│ │ │ -002162f0: 2061 6e64 206e 6f74 2022 6f70 656e 7368   and not "opensh
│ │ │ -00216300: 6966 742d 6b75 6265 6c65 7422 2069 6e20  ift-kubelet" in 
│ │ │ -00216310: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -00216320: 636b 6167 6573 2061 6e64 2022 6f73 7472  ckages and "ostr
│ │ │ -00216330: 6565 2220 696e 2061 6e73 6962 6c65 5f70  ee" in ansible_p
│ │ │ -00216340: 726f 635f 636d 646c 696e 650a 2020 2020  roc_cmdline.    
│ │ │ -00216350: 2920 616e 6420 6e6f 7420 2820 616e 7369  ) and not ( ansi
│ │ │ -00216360: 626c 655f 7669 7274 7561 6c69 7a61 7469  ble_virtualizati
│ │ │ -00216370: 6f6e 5f74 7970 6520 696e 205b 2264 6f63  on_type in ["doc
│ │ │ -00216380: 6b65 7222 2c20 226c 7863 222c 2022 6f70  ker", "lxc", "op
│ │ │ -00216390: 656e 767a 222c 2022 706f 646d 616e 222c  envz", "podman",
│ │ │ -002163a0: 0a20 2020 2022 636f 6e74 6169 6e65 7222  .    "container"
│ │ │ -002163b0: 5d20 2920 290a 2020 2d20 6d6f 756e 745f  ] ) ).  - mount_
│ │ │ -002163c0: 696e 666f 2069 7320 6465 6669 6e65 6420  info is defined 
│ │ │ -002163d0: 616e 6420 226e 6f73 7569 6422 206e 6f74  and "nosuid" not
│ │ │ -002163e0: 2069 6e20 286d 6f75 6e74 5f69 6e66 6f2e   in (mount_info.
│ │ │ -002163f0: 6f70 7469 6f6e 7320 7c20 6465 6661 756c  options | defaul
│ │ │ -00216400: 7428 2727 2929 0a20 2074 6167 733a 0a20  t('')).  tags:. 
│ │ │ -00216410: 202d 204e 4953 542d 3830 302d 3533 2d41   - NIST-800-53-A
│ │ │ -00216420: 432d 360a 2020 2d20 4e49 5354 2d38 3030  C-6.  - NIST-800
│ │ │ -00216430: 2d35 332d 4143 2d36 2831 290a 2020 2d20  -53-AC-6(1).  - 
│ │ │ -00216440: 4e49 5354 2d38 3030 2d35 332d 434d 2d36  NIST-800-53-CM-6
│ │ │ -00216450: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ -00216460: 2d35 332d 434d 2d37 2861 290a 2020 2d20  -53-CM-7(a).  - 
│ │ │ -00216470: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ -00216480: 2862 290a 2020 2d20 4e49 5354 2d38 3030  (b).  - NIST-800
│ │ │ -00216490: 2d35 332d 4d50 2d37 0a20 202d 2063 6f6e  -53-MP-7.  - con
│ │ │ -002164a0: 6669 6775 7265 5f73 7472 6174 6567 790a  figure_strategy.
│ │ │ -002164b0: 2020 2d20 6869 6768 5f64 6973 7275 7074    - high_disrupt
│ │ │ -002164c0: 696f 6e0a 2020 2d20 6c6f 775f 636f 6d70  ion.  - low_comp
│ │ │ -002164d0: 6c65 7869 7479 0a20 202d 206d 6564 6975  lexity.  - mediu
│ │ │ -002164e0: 6d5f 7365 7665 7269 7479 0a20 202d 206d  m_severity.  - m
│ │ │ -002164f0: 6f75 6e74 5f6f 7074 696f 6e5f 626f 6f74  ount_option_boot
│ │ │ -00216500: 5f6e 6f73 7569 640a 2020 2d20 6e6f 5f72  _nosuid.  - no_r
│ │ │ -00216510: 6562 6f6f 745f 6e65 6564 6564 0a0a 2d20  eboot_needed..- 
│ │ │ -00216520: 6e61 6d65 3a20 2741 6464 206e 6f73 7569  name: 'Add nosui
│ │ │ -00216530: 6420 4f70 7469 6f6e 2074 6f20 2f62 6f6f  d Option to /boo
│ │ │ -00216540: 743a 2045 6e73 7572 6520 2f62 6f6f 7420  t: Ensure /boot 
│ │ │ -00216550: 6973 206d 6f75 6e74 6564 2077 6974 6820  is mounted with 
│ │ │ -00216560: 6e6f 7375 6964 206f 7074 696f 6e27 0a20  nosuid option'. 
│ │ │ -00216570: 2061 6e73 6962 6c65 2e70 6f73 6978 2e6d   ansible.posix.m
│ │ │ -00216580: 6f75 6e74 3a0a 2020 2020 7061 7468 3a20  ount:.    path: 
│ │ │ -00216590: 2f62 6f6f 740a 2020 2020 7372 633a 2027  /boot.    src: '
│ │ │ -002165a0: 7b7b 206d 6f75 6e74 5f69 6e66 6f2e 736f  {{ mount_info.so
│ │ │ -002165b0: 7572 6365 207c 2064 6566 6175 6c74 2827  urce | default('
│ │ │ -002165c0: 2727 2729 207d 7d27 0a20 2020 206f 7074  ''') }}'.    opt
│ │ │ -002165d0: 733a 2027 7b7b 206d 6f75 6e74 5f69 6e66  s: '{{ mount_inf
│ │ │ -002165e0: 6f2e 6f70 7469 6f6e 7320 7c20 6465 6661  o.options | defa
│ │ │ -002165f0: 756c 7428 2727 2727 2920 7d7d 270a 2020  ult('''') }}'.  
│ │ │ -00216600: 2020 7374 6174 653a 206d 6f75 6e74 6564    state: mounted
│ │ │ -00216610: 0a20 2020 2066 7374 7970 653a 2027 7b7b  .    fstype: '{{
│ │ │ -00216620: 206d 6f75 6e74 5f69 6e66 6f2e 6673 7479   mount_info.fsty
│ │ │ -00216630: 7065 207c 2064 6566 6175 6c74 2827 2727  pe | default('''
│ │ │ -00216640: 2729 207d 7d27 0a20 2072 6567 6973 7465  ') }}'.  registe
│ │ │ -00216650: 723a 206d 6f75 6e74 5f72 6573 756c 740a  r: mount_result.
│ │ │ -00216660: 2020 6661 696c 6564 5f77 6865 6e3a 0a20    failed_when:. 
│ │ │ -00216670: 202d 206d 6f75 6e74 5f72 6573 756c 7420   - mount_result 
│ │ │ -00216680: 6973 2066 6169 6c65 640a 2020 2d20 2727  is failed.  - ''
│ │ │ -00216690: 2774 6172 6765 7420 6973 2062 7573 7927  'target is busy'
│ │ │ -002166a0: 2720 6e6f 7420 696e 2028 6d6f 756e 745f  ' not in (mount_
│ │ │ -002166b0: 7265 7375 6c74 2e6d 7367 207c 2064 6566  result.msg | def
│ │ │ -002166c0: 6175 6c74 2827 2727 2729 2927 0a20 202d  ault(''''))'.  -
│ │ │ -002166d0: 2027 2727 616c 7265 6164 7920 6d6f 756e   '''already moun
│ │ │ -002166e0: 7465 6427 2720 6e6f 7420 696e 2028 6d6f  ted'' not in (mo
│ │ │ -002166f0: 756e 745f 7265 7375 6c74 2e6d 7367 207c  unt_result.msg |
│ │ │ -00216700: 2064 6566 6175 6c74 2827 2727 2729 2927   default(''''))'
│ │ │ -00216710: 0a20 2077 6865 6e3a 0a20 202d 2028 206e  .  when:.  - ( n
│ │ │ -00216720: 6f74 2028 2022 6b65 726e 656c 2220 696e  ot ( "kernel" in
│ │ │ -00216730: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -00216740: 6163 6b61 6765 7320 616e 6420 2262 6f6f  ackages and "boo
│ │ │ -00216750: 7463 2220 696e 2061 6e73 6962 6c65 5f66  tc" in ansible_f
│ │ │ -00216760: 6163 7473 2e70 6163 6b61 6765 730a 2020  acts.packages.  
│ │ │ -00216770: 2020 616e 6420 6e6f 7420 226f 7065 6e73    and not "opens
│ │ │ -00216780: 6869 6674 2d6b 7562 656c 6574 2220 696e  hift-kubelet" in
│ │ │ -00216790: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -002167a0: 6163 6b61 6765 7320 616e 6420 226f 7374  ackages and "ost
│ │ │ -002167b0: 7265 6522 2069 6e20 616e 7369 626c 655f  ree" in ansible_
│ │ │ -002167c0: 7072 6f63 5f63 6d64 6c69 6e65 0a20 2020  proc_cmdline.   
│ │ │ -002167d0: 2029 2061 6e64 206e 6f74 2028 2061 6e73   ) and not ( ans
│ │ │ -002167e0: 6962 6c65 5f76 6972 7475 616c 697a 6174  ible_virtualizat
│ │ │ -002167f0: 696f 6e5f 7479 7065 2069 6e20 5b22 646f  ion_type in ["do
│ │ │ -00216800: 636b 6572 222c 2022 6c78 6322 2c20 226f  cker", "lxc", "o
│ │ │ -00216810: 7065 6e76 7a22 2c20 2270 6f64 6d61 6e22  penvz", "podman"
│ │ │ -00216820: 2c0a 2020 2020 2263 6f6e 7461 696e 6572  ,.    "container
│ │ │ -00216830: 225d 2029 2029 0a20 202d 206d 6f75 6e74  "] ) ).  - mount
│ │ │ -00216840: 5f69 6e66 6f20 6973 2064 6566 696e 6564  _info is defined
│ │ │ -00216850: 0a20 202d 2028 6465 7669 6365 5f6e 616d  .  - (device_nam
│ │ │ -00216860: 652e 7374 646f 7574 2069 7320 6465 6669  e.stdout is defi
│ │ │ -00216870: 6e65 6420 616e 6420 2864 6576 6963 655f  ned and (device_
│ │ │ -00216880: 6e61 6d65 2e73 7464 6f75 7420 7c20 6c65  name.stdout | le
│ │ │ -00216890: 6e67 7468 2026 6774 3b20 3029 2920 6f72  ngth > 0)) or
│ │ │ -002168a0: 2028 222d 2d66 7374 6162 220a 2020 2020   ("--fstab".    
│ │ │ -002168b0: 7c20 6c65 6e67 7468 203d 3d20 3029 0a20  | length == 0). 
│ │ │ -002168c0: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ -002168d0: 3830 302d 3533 2d41 432d 360a 2020 2d20  800-53-AC-6.  - 
│ │ │ -002168e0: 4e49 5354 2d38 3030 2d35 332d 4143 2d36  NIST-800-53-AC-6
│ │ │ -002168f0: 2831 290a 2020 2d20 4e49 5354 2d38 3030  (1).  - NIST-800
│ │ │ -00216900: 2d35 332d 434d 2d36 2861 290a 2020 2d20  -53-CM-6(a).  - 
│ │ │ -00216910: 4e49 5354 2d38 3030 2d35 332d 434d 2d37  NIST-800-53-CM-7
│ │ │ -00216920: 2861 290a 2020 2d20 4e49 5354 2d38 3030  (a).  - NIST-800
│ │ │ -00216930: 2d35 332d 434d 2d37 2862 290a 2020 2d20  -53-CM-7(b).  - 
│ │ │ -00216940: 4e49 5354 2d38 3030 2d35 332d 4d50 2d37  NIST-800-53-MP-7
│ │ │ -00216950: 0a20 202d 2063 6f6e 6669 6775 7265 5f73  .  - configure_s
│ │ │ -00216960: 7472 6174 6567 790a 2020 2d20 6869 6768  trategy.  - high
│ │ │ -00216970: 5f64 6973 7275 7074 696f 6e0a 2020 2d20  _disruption.  - 
│ │ │ -00216980: 6c6f 775f 636f 6d70 6c65 7869 7479 0a20  low_complexity. 
│ │ │ -00216990: 202d 206d 6564 6975 6d5f 7365 7665 7269   - medium_severi
│ │ │ -002169a0: 7479 0a20 202d 206d 6f75 6e74 5f6f 7074  ty.  - mount_opt
│ │ │ -002169b0: 696f 6e5f 626f 6f74 5f6e 6f73 7569 640a  ion_boot_nosuid.
│ │ │ -002169c0: 2020 2d20 6e6f 5f72 6562 6f6f 745f 6e65    - no_reboot_ne
│ │ │ -002169d0: 6564 6564 0a3c 2f63 6f64 653e 3c2f 7072  eded.Remediation
│ │ │ -00216a90: 2053 6865 6c6c 2073 6372 6970 7420 e287   Shell script ..
│ │ │ -00216aa0: b23c 2f61 3e3c 6272 3e3c 6469 7620 636c  .
Com │ │ │ -00215470: 706c 6578 6974 793a 3c2f 7468 3e3c 7464 plexity:low
Disruption │ │ │ -002154a0: 3a3c 2f74 683e 3c74 643e 6869 6768 3c2f :high
│ │ │ -002154c0: 5265 626f 6f74 3a3c 2f74 683e 3c74 643e Reboot: │ │ │ -002154d0: 6661 6c73 653c 2f74 643e 3c2f 7472 3e3c false
Strategy: │ │ │ -002154f0: 3c2f 7468 3e3c 7464 3e63 6f6e 6669 6775 configu │ │ │ -00215500: 7265 3c2f 7464 3e3c 2f74 723e 3c2f 7461 re
< │ │ │ -00216b20: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -00216b30: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
<
│ │ │ -00216b50: 636f 6465 3e23 2052 656d 6564 6961 7469  code># Remediati
│ │ │ -00216b60: 6f6e 2069 7320 6170 706c 6963 6162 6c65  on is applicable
│ │ │ -00216b70: 206f 6e6c 7920 696e 2063 6572 7461 696e   only in certain
│ │ │ -00216b80: 2070 6c61 7466 6f72 6d73 0a69 6620 2820   platforms.if ( 
│ │ │ -00216b90: 2120 2820 7b20 7270 6d20 2d2d 7175 6965  ! ( { rpm --quie
│ │ │ -00216ba0: 7420 2d71 206b 6572 6e65 6c20 3b7d 2026  t -q kernel ;} &
│ │ │ -00216bb0: 616d 703b 2661 6d70 3b20 7b20 7270 6d20  amp;& { rpm 
│ │ │ -00216bc0: 2d2d 7175 6965 7420 2d71 2062 6f6f 7463  --quiet -q bootc
│ │ │ -00216bd0: 203b 7d20 2661 6d70 3b26 616d 703b 207b   ;} && {
│ │ │ -00216be0: 2021 2072 706d 202d 2d71 7569 6574 202d   ! rpm --quiet -
│ │ │ -00216bf0: 7120 6f70 656e 7368 6966 742d 6b75 6265  q openshift-kube
│ │ │ -00216c00: 6c65 7420 3b7d 2026 616d 703b 2661 6d70  let ;} &&
│ │ │ -00216c10: 3b20 285b 202d 6620 2f72 756e 2f6f 7374  ; ([ -f /run/ost
│ │ │ -00216c20: 7265 652d 626f 6f74 6564 205d 207c 7c20  ree-booted ] || 
│ │ │ -00216c30: 5b20 2d4c 202f 6f73 7472 6565 205d 2920  [ -L /ostree ]) 
│ │ │ -00216c40: 2920 2661 6d70 3b26 616d 703b 2021 2028  ) && ! (
│ │ │ -00216c50: 205b 202d 6620 2f2e 646f 636b 6572 656e   [ -f /.dockeren
│ │ │ -00216c60: 7620 5d20 7c7c 205b 202d 6620 2f72 756e  v ] || [ -f /run
│ │ │ -00216c70: 2f2e 636f 6e74 6169 6e65 7265 6e76 205d  /.containerenv ]
│ │ │ -00216c80: 2029 2029 3b20 7468 656e 0a0a 6675 6e63   ) ); then..func
│ │ │ -00216c90: 7469 6f6e 2070 6572 666f 726d 5f72 656d  tion perform_rem
│ │ │ -00216ca0: 6564 6961 7469 6f6e 207b 0a0a 2020 2020  ediation {..    
│ │ │ -00216cb0: 0a20 2020 2020 2020 2023 2074 6865 206d  .        # the m
│ │ │ -00216cc0: 6f75 6e74 2070 6f69 6e74 202f 626f 6f74  ount point /boot
│ │ │ -00216cd0: 2068 6173 2074 6f20 6265 2064 6566 696e   has to be defin
│ │ │ -00216ce0: 6564 2069 6e20 2f65 7463 2f66 7374 6162  ed in /etc/fstab
│ │ │ -00216cf0: 0a20 2020 2020 2020 2023 2062 6566 6f72  .        # befor
│ │ │ -00216d00: 6520 7468 6973 2072 656d 6564 6961 7469  e this remediati
│ │ │ -00216d10: 6f6e 2063 616e 2062 6520 6578 6563 7574  on can be execut
│ │ │ -00216d20: 6564 2e20 496e 2063 6173 6520 6974 2069  ed. In case it i
│ │ │ -00216d30: 7320 6e6f 7420 6465 6669 6e65 642c 2074  s not defined, t
│ │ │ -00216d40: 6865 0a20 2020 2020 2020 2023 2072 656d  he.        # rem
│ │ │ -00216d50: 6564 6961 7469 6f6e 2061 626f 7274 7320  ediation aborts 
│ │ │ -00216d60: 616e 6420 6e6f 2063 6861 6e67 6573 2072  and no changes r
│ │ │ -00216d70: 6567 6172 6469 6e67 2074 6865 206d 6f75  egarding the mou
│ │ │ -00216d80: 6e74 2070 6f69 6e74 2061 7265 2064 6f6e  nt point are don
│ │ │ -00216d90: 652e 0a20 2020 2020 2020 206d 6f75 6e74  e..        mount
│ │ │ -00216da0: 5f70 6f69 6e74 5f6d 6174 6368 5f72 6567  _point_match_reg
│ │ │ -00216db0: 6578 703d 2224 2870 7269 6e74 6620 225e  exp="$(printf "^
│ │ │ -00216dc0: 5b5b 3a73 7061 6365 3a5d 5d2a 5b5e 235d  [[:space:]]*[^#]
│ │ │ -00216dd0: 2e2a 5b5b 3a73 7061 6365 3a5d 5d25 735b  .*[[:space:]]%s[
│ │ │ -00216de0: 5b3a 7370 6163 653a 5d5d 2220 222f 626f  [:space:]]" "/bo
│ │ │ -00216df0: 6f74 2229 220a 0a20 2020 2067 7265 7020  ot")"..    grep 
│ │ │ -00216e00: 2224 6d6f 756e 745f 706f 696e 745f 6d61  "$mount_point_ma
│ │ │ -00216e10: 7463 685f 7265 6765 7870 2220 2d71 202f  tch_regexp" -q /
│ │ │ -00216e20: 6574 632f 6673 7461 6220 5c0a 2020 2020  etc/fstab \.    
│ │ │ -00216e30: 2020 2020 7c7c 207b 2065 6368 6f20 2254      || { echo "T
│ │ │ -00216e40: 6865 206d 6f75 6e74 2070 6f69 6e74 2027  he mount point '
│ │ │ -00216e50: 2f62 6f6f 7427 2069 7320 6e6f 7420 6576  /boot' is not ev
│ │ │ -00216e60: 656e 2069 6e20 2f65 7463 2f66 7374 6162  en in /etc/fstab
│ │ │ -00216e70: 2c20 736f 2077 6520 6361 6e27 7420 7365  , so we can't se
│ │ │ -00216e80: 7420 7570 206d 6f75 6e74 206f 7074 696f  t up mount optio
│ │ │ -00216e90: 6e73 2220 2667 743b 2661 6d70 3b32 3b0a  ns" >&2;.
│ │ │ +002151b0: 6f6e 2041 6e73 6962 6c65 2073 6e69 7070  on Ansible snipp
│ │ │ +002151c0: 6574 20e2 87b2 3c2f 613e 3c62 723e 3c64  et ...
│ │ │ +00215240: 3c74 723e 3c74 683e 436f 6d70 6c65 7869 Complexi │ │ │ +00215250: 7479 3a3c 2f74 683e 3c74 643e 6c6f 773c ty:low< │ │ │ +00215260: 2f74 643e 3c2f 7472 3e3c 7472 3e3c 7468 /td>Disruption:highReboo │ │ │ +002152a0: 743a 3c2f 7468 3e3c 7464 3e66 616c 7365 t:false │ │ │ +002152b0: 3c2f 7464 3e3c 2f74 723e 3c74 723e 3c74 Strategy: │ │ │ +002152d0: 3c74 643e 636f 6e66 6967 7572 653c 2f74 configure< │ │ │ +002152f0: 7072 653e 3c63 6f64 653e 2d20 6e61 6d65 pre>- name │ │ │ +00215300: 3a20 4761 7468 6572 2074 6865 2070 6163 : Gather the pac │ │ │ +00215310: 6b61 6765 2066 6163 7473 0a20 2070 6163 kage facts. pac │ │ │ +00215320: 6b61 6765 5f66 6163 7473 3a0a 2020 2020 kage_facts:. │ │ │ +00215330: 6d61 6e61 6765 723a 2061 7574 6f0a 2020 manager: auto. │ │ │ +00215340: 7461 6773 3a0a 2020 2d20 4e49 5354 2d38 tags:. - NIST-8 │ │ │ +00215350: 3030 2d35 332d 4143 2d36 0a20 202d 204e 00-53-AC-6. - N │ │ │ +00215360: 4953 542d 3830 302d 3533 2d41 432d 3628 IST-800-53-AC-6( │ │ │ +00215370: 3129 0a20 202d 204e 4953 542d 3830 302d 1). - NIST-800- │ │ │ +00215380: 3533 2d43 4d2d 3628 6129 0a20 202d 204e 53-CM-6(a). - N │ │ │ +00215390: 4953 542d 3830 302d 3533 2d43 4d2d 3728 IST-800-53-CM-7( │ │ │ +002153a0: 6129 0a20 202d 204e 4953 542d 3830 302d a). - NIST-800- │ │ │ +002153b0: 3533 2d43 4d2d 3728 6229 0a20 202d 204e 53-CM-7(b). - N │ │ │ +002153c0: 4953 542d 3830 302d 3533 2d4d 502d 370a IST-800-53-MP-7. │ │ │ +002153d0: 2020 2d20 636f 6e66 6967 7572 655f 7374 - configure_st │ │ │ +002153e0: 7261 7465 6779 0a20 202d 2068 6967 685f rategy. - high_ │ │ │ +002153f0: 6469 7372 7570 7469 6f6e 0a20 202d 206c disruption. - l │ │ │ +00215400: 6f77 5f63 6f6d 706c 6578 6974 790a 2020 ow_complexity. │ │ │ +00215410: 2d20 6d65 6469 756d 5f73 6576 6572 6974 - medium_severit │ │ │ +00215420: 790a 2020 2d20 6d6f 756e 745f 6f70 7469 y. - mount_opti │ │ │ +00215430: 6f6e 5f62 6f6f 745f 6e6f 7375 6964 0a20 on_boot_nosuid. │ │ │ +00215440: 202d 206e 6f5f 7265 626f 6f74 5f6e 6565 - no_reboot_nee │ │ │ +00215450: 6465 640a 0a2d 206e 616d 653a 2027 4164 ded..- name: 'Ad │ │ │ +00215460: 6420 6e6f 7375 6964 204f 7074 696f 6e20 d nosuid Option │ │ │ +00215470: 746f 202f 626f 6f74 3a20 4368 6563 6b20 to /boot: Check │ │ │ +00215480: 696e 666f 726d 6174 696f 6e20 6173 736f information asso │ │ │ +00215490: 6369 6174 6564 2074 6f20 6d6f 756e 7470 ciated to mountp │ │ │ +002154a0: 6f69 6e74 270a 2020 616e 7369 626c 652e oint'. ansible. │ │ │ +002154b0: 6275 696c 7469 6e2e 636f 6d6d 616e 643a builtin.command: │ │ │ +002154c0: 2066 696e 646d 6e74 202d 2d66 7374 6162 findmnt --fstab │ │ │ +002154d0: 2027 2f62 6f6f 7427 0a20 2072 6567 6973 '/boot'. regis │ │ │ +002154e0: 7465 723a 2064 6576 6963 655f 6e61 6d65 ter: device_name │ │ │ +002154f0: 0a20 2066 6169 6c65 645f 7768 656e 3a20 . failed_when: │ │ │ +00215500: 6465 7669 6365 5f6e 616d 652e 7263 2026 device_name.rc & │ │ │ +00215510: 6774 3b20 310a 2020 6368 616e 6765 645f gt; 1. changed_ │ │ │ +00215520: 7768 656e 3a20 6661 6c73 650a 2020 6368 when: false. ch │ │ │ +00215530: 6563 6b5f 6d6f 6465 3a20 6661 6c73 650a eck_mode: false. │ │ │ +00215540: 2020 7768 656e 3a20 2820 6e6f 7420 2820 when: ( not ( │ │ │ +00215550: 226b 6572 6e65 6c22 2069 6e20 616e 7369 "kernel" in ansi │ │ │ +00215560: 626c 655f 6661 6374 732e 7061 636b 6167 ble_facts.packag │ │ │ +00215570: 6573 2061 6e64 2022 626f 6f74 6322 2069 es and "bootc" i │ │ │ +00215580: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ +00215590: 7061 636b 6167 6573 0a20 2020 2061 6e64 packages. and │ │ │ +002155a0: 206e 6f74 2022 6f70 656e 7368 6966 742d not "openshift- │ │ │ +002155b0: 6b75 6265 6c65 7422 2069 6e20 616e 7369 kubelet" in ansi │ │ │ +002155c0: 626c 655f 6661 6374 732e 7061 636b 6167 ble_facts.packag │ │ │ +002155d0: 6573 2061 6e64 2022 6f73 7472 6565 2220 es and "ostree" │ │ │ +002155e0: 696e 2061 6e73 6962 6c65 5f70 726f 635f in ansible_proc_ │ │ │ +002155f0: 636d 646c 696e 650a 2020 2020 2920 616e cmdline. ) an │ │ │ +00215600: 6420 6e6f 7420 2820 616e 7369 626c 655f d not ( ansible_ │ │ │ +00215610: 7669 7274 7561 6c69 7a61 7469 6f6e 5f74 virtualization_t │ │ │ +00215620: 7970 6520 696e 205b 2264 6f63 6b65 7222 ype in ["docker" │ │ │ +00215630: 2c20 226c 7863 222c 2022 6f70 656e 767a , "lxc", "openvz │ │ │ +00215640: 222c 2022 706f 646d 616e 222c 0a20 2020 ", "podman",. │ │ │ +00215650: 2022 636f 6e74 6169 6e65 7222 5d20 2920 "container"] ) │ │ │ +00215660: 290a 2020 7461 6773 3a0a 2020 2d20 4e49 ). tags:. - NI │ │ │ +00215670: 5354 2d38 3030 2d35 332d 4143 2d36 0a20 ST-800-53-AC-6. │ │ │ +00215680: 202d 204e 4953 542d 3830 302d 3533 2d41 - NIST-800-53-A │ │ │ +00215690: 432d 3628 3129 0a20 202d 204e 4953 542d C-6(1). - NIST- │ │ │ +002156a0: 3830 302d 3533 2d43 4d2d 3628 6129 0a20 800-53-CM-6(a). │ │ │ +002156b0: 202d 204e 4953 542d 3830 302d 3533 2d43 - NIST-800-53-C │ │ │ +002156c0: 4d2d 3728 6129 0a20 202d 204e 4953 542d M-7(a). - NIST- │ │ │ +002156d0: 3830 302d 3533 2d43 4d2d 3728 6229 0a20 800-53-CM-7(b). │ │ │ +002156e0: 202d 204e 4953 542d 3830 302d 3533 2d4d - NIST-800-53-M │ │ │ +002156f0: 502d 370a 2020 2d20 636f 6e66 6967 7572 P-7. - configur │ │ │ +00215700: 655f 7374 7261 7465 6779 0a20 202d 2068 e_strategy. - h │ │ │ +00215710: 6967 685f 6469 7372 7570 7469 6f6e 0a20 igh_disruption. │ │ │ +00215720: 202d 206c 6f77 5f63 6f6d 706c 6578 6974 - low_complexit │ │ │ +00215730: 790a 2020 2d20 6d65 6469 756d 5f73 6576 y. - medium_sev │ │ │ +00215740: 6572 6974 790a 2020 2d20 6d6f 756e 745f erity. - mount_ │ │ │ +00215750: 6f70 7469 6f6e 5f62 6f6f 745f 6e6f 7375 option_boot_nosu │ │ │ +00215760: 6964 0a20 202d 206e 6f5f 7265 626f 6f74 id. - no_reboot │ │ │ +00215770: 5f6e 6565 6465 640a 0a2d 206e 616d 653a _needed..- name: │ │ │ +00215780: 2027 4164 6420 6e6f 7375 6964 204f 7074 'Add nosuid Opt │ │ │ +00215790: 696f 6e20 746f 202f 626f 6f74 3a20 4372 ion to /boot: Cr │ │ │ +002157a0: 6561 7465 206d 6f75 6e74 5f69 6e66 6f20 eate mount_info │ │ │ +002157b0: 6469 6374 696f 6e61 7279 2076 6172 6961 dictionary varia │ │ │ +002157c0: 626c 6527 0a20 2073 6574 5f66 6163 743a ble'. set_fact: │ │ │ +002157d0: 0a20 2020 206d 6f75 6e74 5f69 6e66 6f3a . mount_info: │ │ │ +002157e0: 2027 7b7b 206d 6f75 6e74 5f69 6e66 6f7c '{{ mount_info| │ │ │ +002157f0: 6465 6661 756c 7428 7b7d 297c 636f 6d62 default({})|comb │ │ │ +00215800: 696e 6528 7b69 7465 6d2e 303a 2069 7465 ine({item.0: ite │ │ │ +00215810: 6d2e 317d 2920 7d7d 270a 2020 7769 7468 m.1}) }}'. with │ │ │ +00215820: 5f74 6f67 6574 6865 723a 0a20 202d 2027 _together:. - ' │ │ │ +00215830: 7b7b 2064 6576 6963 655f 6e61 6d65 2e73 {{ device_name.s │ │ │ +00215840: 7464 6f75 745f 6c69 6e65 735b 305d 2e73 tdout_lines[0].s │ │ │ +00215850: 706c 6974 2829 207c 206d 6170 2827 276c plit() | map(''l │ │ │ +00215860: 6f77 6572 2727 2920 7c20 6c69 7374 207d ower'') | list } │ │ │ +00215870: 7d27 0a20 202d 2027 7b7b 2064 6576 6963 }'. - '{{ devic │ │ │ +00215880: 655f 6e61 6d65 2e73 7464 6f75 745f 6c69 e_name.stdout_li │ │ │ +00215890: 6e65 735b 315d 2e73 706c 6974 2829 207c nes[1].split() | │ │ │ +002158a0: 206c 6973 7420 7d7d 270a 2020 7768 656e list }}'. when │ │ │ +002158b0: 3a0a 2020 2d20 2820 6e6f 7420 2820 226b :. - ( not ( "k │ │ │ +002158c0: 6572 6e65 6c22 2069 6e20 616e 7369 626c ernel" in ansibl │ │ │ +002158d0: 655f 6661 6374 732e 7061 636b 6167 6573 e_facts.packages │ │ │ +002158e0: 2061 6e64 2022 626f 6f74 6322 2069 6e20 and "bootc" in │ │ │ +002158f0: 616e 7369 626c 655f 6661 6374 732e 7061 ansible_facts.pa │ │ │ +00215900: 636b 6167 6573 0a20 2020 2061 6e64 206e ckages. and n │ │ │ +00215910: 6f74 2022 6f70 656e 7368 6966 742d 6b75 ot "openshift-ku │ │ │ +00215920: 6265 6c65 7422 2069 6e20 616e 7369 626c belet" in ansibl │ │ │ +00215930: 655f 6661 6374 732e 7061 636b 6167 6573 e_facts.packages │ │ │ +00215940: 2061 6e64 2022 6f73 7472 6565 2220 696e and "ostree" in │ │ │ +00215950: 2061 6e73 6962 6c65 5f70 726f 635f 636d ansible_proc_cm │ │ │ +00215960: 646c 696e 650a 2020 2020 2920 616e 6420 dline. ) and │ │ │ +00215970: 6e6f 7420 2820 616e 7369 626c 655f 7669 not ( ansible_vi │ │ │ +00215980: 7274 7561 6c69 7a61 7469 6f6e 5f74 7970 rtualization_typ │ │ │ +00215990: 6520 696e 205b 2264 6f63 6b65 7222 2c20 e in ["docker", │ │ │ +002159a0: 226c 7863 222c 2022 6f70 656e 767a 222c "lxc", "openvz", │ │ │ +002159b0: 2022 706f 646d 616e 222c 0a20 2020 2022 "podman",. " │ │ │ +002159c0: 636f 6e74 6169 6e65 7222 5d20 2920 290a container"] ) ). │ │ │ +002159d0: 2020 2d20 6465 7669 6365 5f6e 616d 652e - device_name. │ │ │ +002159e0: 7374 646f 7574 2069 7320 6465 6669 6e65 stdout is define │ │ │ +002159f0: 6420 616e 6420 6465 7669 6365 5f6e 616d d and device_nam │ │ │ +00215a00: 652e 7374 646f 7574 5f6c 696e 6573 2069 e.stdout_lines i │ │ │ +00215a10: 7320 6465 6669 6e65 640a 2020 2d20 2864 s defined. - (d │ │ │ +00215a20: 6576 6963 655f 6e61 6d65 2e73 7464 6f75 evice_name.stdou │ │ │ +00215a30: 7420 7c20 6c65 6e67 7468 2026 6774 3b20 t | length > │ │ │ +00215a40: 3029 0a20 2074 6167 733a 0a20 202d 204e 0). tags:. - N │ │ │ +00215a50: 4953 542d 3830 302d 3533 2d41 432d 360a IST-800-53-AC-6. │ │ │ +00215a60: 2020 2d20 4e49 5354 2d38 3030 2d35 332d - NIST-800-53- │ │ │ +00215a70: 4143 2d36 2831 290a 2020 2d20 4e49 5354 AC-6(1). - NIST │ │ │ +00215a80: 2d38 3030 2d35 332d 434d 2d36 2861 290a -800-53-CM-6(a). │ │ │ +00215a90: 2020 2d20 4e49 5354 2d38 3030 2d35 332d - NIST-800-53- │ │ │ +00215aa0: 434d 2d37 2861 290a 2020 2d20 4e49 5354 CM-7(a). - NIST │ │ │ +00215ab0: 2d38 3030 2d35 332d 434d 2d37 2862 290a -800-53-CM-7(b). │ │ │ +00215ac0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d - NIST-800-53- │ │ │ +00215ad0: 4d50 2d37 0a20 202d 2063 6f6e 6669 6775 MP-7. - configu │ │ │ +00215ae0: 7265 5f73 7472 6174 6567 790a 2020 2d20 re_strategy. - │ │ │ +00215af0: 6869 6768 5f64 6973 7275 7074 696f 6e0a high_disruption. │ │ │ +00215b00: 2020 2d20 6c6f 775f 636f 6d70 6c65 7869 - low_complexi │ │ │ +00215b10: 7479 0a20 202d 206d 6564 6975 6d5f 7365 ty. - medium_se │ │ │ +00215b20: 7665 7269 7479 0a20 202d 206d 6f75 6e74 verity. - mount │ │ │ +00215b30: 5f6f 7074 696f 6e5f 626f 6f74 5f6e 6f73 _option_boot_nos │ │ │ +00215b40: 7569 640a 2020 2d20 6e6f 5f72 6562 6f6f uid. - no_reboo │ │ │ +00215b50: 745f 6e65 6564 6564 0a0a 2d20 6e61 6d65 t_needed..- name │ │ │ +00215b60: 3a20 2741 6464 206e 6f73 7569 6420 4f70 : 'Add nosuid Op │ │ │ +00215b70: 7469 6f6e 2074 6f20 2f62 6f6f 743a 2049 tion to /boot: I │ │ │ +00215b80: 6620 2f62 6f6f 7420 6e6f 7420 6d6f 756e f /boot not moun │ │ │ +00215b90: 7465 642c 2063 7261 6674 206d 6f75 6e74 ted, craft mount │ │ │ +00215ba0: 5f69 6e66 6f20 6d61 6e75 616c 6c79 270a _info manually'. │ │ │ +00215bb0: 2020 7365 745f 6661 6374 3a0a 2020 2020 set_fact:. │ │ │ +00215bc0: 6d6f 756e 745f 696e 666f 3a20 277b 7b20 mount_info: '{{ │ │ │ +00215bd0: 6d6f 756e 745f 696e 666f 7c64 6566 6175 mount_info|defau │ │ │ +00215be0: 6c74 287b 7d29 7c63 6f6d 6269 6e65 287b lt({})|combine({ │ │ │ +00215bf0: 6974 656d 2e30 3a20 6974 656d 2e31 7d29 item.0: item.1}) │ │ │ +00215c00: 207d 7d27 0a20 2077 6974 685f 746f 6765 }}'. with_toge │ │ │ +00215c10: 7468 6572 3a0a 2020 2d20 2d20 7461 7267 ther:. - - targ │ │ │ +00215c20: 6574 0a20 2020 202d 2073 6f75 7263 650a et. - source. │ │ │ +00215c30: 2020 2020 2d20 6673 7479 7065 0a20 2020 - fstype. │ │ │ +00215c40: 202d 206f 7074 696f 6e73 0a20 202d 202d - options. - - │ │ │ +00215c50: 202f 626f 6f74 0a20 2020 202d 2027 270a /boot. - ''. │ │ │ +00215c60: 2020 2020 2d20 2727 0a20 2020 202d 2064 - ''. - d │ │ │ +00215c70: 6566 6175 6c74 730a 2020 7768 656e 3a0a efaults. when:. │ │ │ +00215c80: 2020 2d20 2820 6e6f 7420 2820 226b 6572 - ( not ( "ker │ │ │ +00215c90: 6e65 6c22 2069 6e20 616e 7369 626c 655f nel" in ansible_ │ │ │ +00215ca0: 6661 6374 732e 7061 636b 6167 6573 2061 facts.packages a │ │ │ +00215cb0: 6e64 2022 626f 6f74 6322 2069 6e20 616e nd "bootc" in an │ │ │ +00215cc0: 7369 626c 655f 6661 6374 732e 7061 636b sible_facts.pack │ │ │ +00215cd0: 6167 6573 0a20 2020 2061 6e64 206e 6f74 ages. and not │ │ │ +00215ce0: 2022 6f70 656e 7368 6966 742d 6b75 6265 "openshift-kube │ │ │ +00215cf0: 6c65 7422 2069 6e20 616e 7369 626c 655f let" in ansible_ │ │ │ +00215d00: 6661 6374 732e 7061 636b 6167 6573 2061 facts.packages a │ │ │ +00215d10: 6e64 2022 6f73 7472 6565 2220 696e 2061 nd "ostree" in a │ │ │ +00215d20: 6e73 6962 6c65 5f70 726f 635f 636d 646c nsible_proc_cmdl │ │ │ +00215d30: 696e 650a 2020 2020 2920 616e 6420 6e6f ine. ) and no │ │ │ +00215d40: 7420 2820 616e 7369 626c 655f 7669 7274 t ( ansible_virt │ │ │ +00215d50: 7561 6c69 7a61 7469 6f6e 5f74 7970 6520 ualization_type │ │ │ +00215d60: 696e 205b 2264 6f63 6b65 7222 2c20 226c in ["docker", "l │ │ │ +00215d70: 7863 222c 2022 6f70 656e 767a 222c 2022 xc", "openvz", " │ │ │ +00215d80: 706f 646d 616e 222c 0a20 2020 2022 636f podman",. "co │ │ │ +00215d90: 6e74 6169 6e65 7222 5d20 2920 290a 2020 ntainer"] ) ). │ │ │ +00215da0: 2d20 2822 2d2d 6673 7461 6222 207c 206c - ("--fstab" | l │ │ │ +00215db0: 656e 6774 6820 3d3d 2030 290a 2020 2d20 ength == 0). - │ │ │ +00215dc0: 6465 7669 6365 5f6e 616d 652e 7374 646f device_name.stdo │ │ │ +00215dd0: 7574 2069 7320 6465 6669 6e65 6420 616e ut is defined an │ │ │ +00215de0: 6420 6465 7669 6365 5f6e 616d 652e 7374 d device_name.st │ │ │ +00215df0: 646f 7574 5f6c 696e 6573 2069 7320 6465 dout_lines is de │ │ │ +00215e00: 6669 6e65 640a 2020 2d20 2864 6576 6963 fined. - (devic │ │ │ +00215e10: 655f 6e61 6d65 2e73 7464 6f75 7420 7c20 e_name.stdout | │ │ │ +00215e20: 6c65 6e67 7468 203d 3d20 3029 0a20 2074 length == 0). t │ │ │ +00215e30: 6167 733a 0a20 202d 204e 4953 542d 3830 ags:. - NIST-80 │ │ │ +00215e40: 302d 3533 2d41 432d 360a 2020 2d20 4e49 0-53-AC-6. - NI │ │ │ +00215e50: 5354 2d38 3030 2d35 332d 4143 2d36 2831 ST-800-53-AC-6(1 │ │ │ +00215e60: 290a 2020 2d20 4e49 5354 2d38 3030 2d35 ). - NIST-800-5 │ │ │ +00215e70: 332d 434d 2d36 2861 290a 2020 2d20 4e49 3-CM-6(a). - NI │ │ │ +00215e80: 5354 2d38 3030 2d35 332d 434d 2d37 2861 ST-800-53-CM-7(a │ │ │ +00215e90: 290a 2020 2d20 4e49 5354 2d38 3030 2d35 ). - NIST-800-5 │ │ │ +00215ea0: 332d 434d 2d37 2862 290a 2020 2d20 4e49 3-CM-7(b). - NI │ │ │ +00215eb0: 5354 2d38 3030 2d35 332d 4d50 2d37 0a20 ST-800-53-MP-7. │ │ │ +00215ec0: 202d 2063 6f6e 6669 6775 7265 5f73 7472 - configure_str │ │ │ +00215ed0: 6174 6567 790a 2020 2d20 6869 6768 5f64 ategy. - high_d │ │ │ +00215ee0: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f isruption. - lo │ │ │ +00215ef0: 775f 636f 6d70 6c65 7869 7479 0a20 202d w_complexity. - │ │ │ +00215f00: 206d 6564 6975 6d5f 7365 7665 7269 7479 medium_severity │ │ │ +00215f10: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f . - mount_optio │ │ │ +00215f20: 6e5f 626f 6f74 5f6e 6f73 7569 640a 2020 n_boot_nosuid. │ │ │ +00215f30: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564 - no_reboot_need │ │ │ +00215f40: 6564 0a0a 2d20 6e61 6d65 3a20 2741 6464 ed..- name: 'Add │ │ │ +00215f50: 206e 6f73 7569 6420 4f70 7469 6f6e 2074 nosuid Option t │ │ │ +00215f60: 6f20 2f62 6f6f 743a 204d 616b 6520 7375 o /boot: Make su │ │ │ +00215f70: 7265 206e 6f73 7569 6420 6f70 7469 6f6e re nosuid option │ │ │ +00215f80: 2069 7320 7061 7274 206f 6620 7468 6520 is part of the │ │ │ +00215f90: 746f 202f 626f 6f74 0a20 2020 206f 7074 to /boot. opt │ │ │ +00215fa0: 696f 6e73 270a 2020 7365 745f 6661 6374 ions'. set_fact │ │ │ +00215fb0: 3a0a 2020 2020 6d6f 756e 745f 696e 666f :. mount_info │ │ │ +00215fc0: 3a20 277b 7b20 6d6f 756e 745f 696e 666f : '{{ mount_info │ │ │ +00215fd0: 207c 2063 6f6d 6269 6e65 2820 7b27 276f | combine( {''o │ │ │ +00215fe0: 7074 696f 6e73 2727 3a27 2727 277e 286d ptions'':''''~(m │ │ │ +00215ff0: 6f75 6e74 5f69 6e66 6f2e 6f70 7469 6f6e ount_info.option │ │ │ +00216000: 7320 7c0a 2020 2020 2020 6465 6661 756c s |. defaul │ │ │ +00216010: 7428 2727 2727 2929 7e28 2727 2c27 2720 t(''''))~('','' │ │ │ +00216020: 6966 2028 6d6f 756e 745f 696e 666f 2e6f if (mount_info.o │ │ │ +00216030: 7074 696f 6e73 207c 2064 6566 6175 6c74 ptions | default │ │ │ +00216040: 2827 2727 2729 2920 656c 7365 2027 2727 ('''')) else ''' │ │ │ +00216050: 2729 7e27 276e 6f73 7569 6427 270a 2020 ')~''nosuid''. │ │ │ +00216060: 2020 2020 7d29 207d 7d27 0a20 2077 6865 }) }}'. whe │ │ │ +00216070: 6e3a 0a20 202d 2028 206e 6f74 2028 2022 n:. - ( not ( " │ │ │ +00216080: 6b65 726e 656c 2220 696e 2061 6e73 6962 kernel" in ansib │ │ │ +00216090: 6c65 5f66 6163 7473 2e70 6163 6b61 6765 le_facts.package │ │ │ +002160a0: 7320 616e 6420 2262 6f6f 7463 2220 696e s and "bootc" in │ │ │ +002160b0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70 ansible_facts.p │ │ │ +002160c0: 6163 6b61 6765 730a 2020 2020 616e 6420 ackages. and │ │ │ +002160d0: 6e6f 7420 226f 7065 6e73 6869 6674 2d6b not "openshift-k │ │ │ +002160e0: 7562 656c 6574 2220 696e 2061 6e73 6962 ubelet" in ansib │ │ │ +002160f0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765 le_facts.package │ │ │ +00216100: 7320 616e 6420 226f 7374 7265 6522 2069 s and "ostree" i │ │ │ +00216110: 6e20 616e 7369 626c 655f 7072 6f63 5f63 n ansible_proc_c │ │ │ +00216120: 6d64 6c69 6e65 0a20 2020 2029 2061 6e64 mdline. ) and │ │ │ +00216130: 206e 6f74 2028 2061 6e73 6962 6c65 5f76 not ( ansible_v │ │ │ +00216140: 6972 7475 616c 697a 6174 696f 6e5f 7479 irtualization_ty │ │ │ +00216150: 7065 2069 6e20 5b22 646f 636b 6572 222c pe in ["docker", │ │ │ +00216160: 2022 6c78 6322 2c20 226f 7065 6e76 7a22 "lxc", "openvz" │ │ │ +00216170: 2c20 2270 6f64 6d61 6e22 2c0a 2020 2020 , "podman",. │ │ │ +00216180: 2263 6f6e 7461 696e 6572 225d 2029 2029 "container"] ) ) │ │ │ +00216190: 0a20 202d 206d 6f75 6e74 5f69 6e66 6f20 . - mount_info │ │ │ +002161a0: 6973 2064 6566 696e 6564 2061 6e64 2022 is defined and " │ │ │ +002161b0: 6e6f 7375 6964 2220 6e6f 7420 696e 2028 nosuid" not in ( │ │ │ +002161c0: 6d6f 756e 745f 696e 666f 2e6f 7074 696f mount_info.optio │ │ │ +002161d0: 6e73 207c 2064 6566 6175 6c74 2827 2729 ns | default('') │ │ │ +002161e0: 290a 2020 7461 6773 3a0a 2020 2d20 4e49 ). tags:. - NI │ │ │ +002161f0: 5354 2d38 3030 2d35 332d 4143 2d36 0a20 ST-800-53-AC-6. │ │ │ +00216200: 202d 204e 4953 542d 3830 302d 3533 2d41 - NIST-800-53-A │ │ │ +00216210: 432d 3628 3129 0a20 202d 204e 4953 542d C-6(1). - NIST- │ │ │ +00216220: 3830 302d 3533 2d43 4d2d 3628 6129 0a20 800-53-CM-6(a). │ │ │ +00216230: 202d 204e 4953 542d 3830 302d 3533 2d43 - NIST-800-53-C │ │ │ +00216240: 4d2d 3728 6129 0a20 202d 204e 4953 542d M-7(a). - NIST- │ │ │ +00216250: 3830 302d 3533 2d43 4d2d 3728 6229 0a20 800-53-CM-7(b). │ │ │ +00216260: 202d 204e 4953 542d 3830 302d 3533 2d4d - NIST-800-53-M │ │ │ +00216270: 502d 370a 2020 2d20 636f 6e66 6967 7572 P-7. - configur │ │ │ +00216280: 655f 7374 7261 7465 6779 0a20 202d 2068 e_strategy. - h │ │ │ +00216290: 6967 685f 6469 7372 7570 7469 6f6e 0a20 igh_disruption. │ │ │ +002162a0: 202d 206c 6f77 5f63 6f6d 706c 6578 6974 - low_complexit │ │ │ +002162b0: 790a 2020 2d20 6d65 6469 756d 5f73 6576 y. - medium_sev │ │ │ +002162c0: 6572 6974 790a 2020 2d20 6d6f 756e 745f erity. - mount_ │ │ │ +002162d0: 6f70 7469 6f6e 5f62 6f6f 745f 6e6f 7375 option_boot_nosu │ │ │ +002162e0: 6964 0a20 202d 206e 6f5f 7265 626f 6f74 id. - no_reboot │ │ │ +002162f0: 5f6e 6565 6465 640a 0a2d 206e 616d 653a _needed..- name: │ │ │ +00216300: 2027 4164 6420 6e6f 7375 6964 204f 7074 'Add nosuid Opt │ │ │ +00216310: 696f 6e20 746f 202f 626f 6f74 3a20 456e ion to /boot: En │ │ │ +00216320: 7375 7265 202f 626f 6f74 2069 7320 6d6f sure /boot is mo │ │ │ +00216330: 756e 7465 6420 7769 7468 206e 6f73 7569 unted with nosui │ │ │ +00216340: 6420 6f70 7469 6f6e 270a 2020 616e 7369 d option'. ansi │ │ │ +00216350: 626c 652e 706f 7369 782e 6d6f 756e 743a ble.posix.mount: │ │ │ +00216360: 0a20 2020 2070 6174 683a 202f 626f 6f74 . path: /boot │ │ │ +00216370: 0a20 2020 2073 7263 3a20 277b 7b20 6d6f . src: '{{ mo │ │ │ +00216380: 756e 745f 696e 666f 2e73 6f75 7263 6520 unt_info.source │ │ │ +00216390: 7c20 6465 6661 756c 7428 2727 2727 2920 | default('''') │ │ │ +002163a0: 7d7d 270a 2020 2020 6f70 7473 3a20 277b }}'. opts: '{ │ │ │ +002163b0: 7b20 6d6f 756e 745f 696e 666f 2e6f 7074 { mount_info.opt │ │ │ +002163c0: 696f 6e73 207c 2064 6566 6175 6c74 2827 ions | default(' │ │ │ +002163d0: 2727 2729 207d 7d27 0a20 2020 2073 7461 ''') }}'. sta │ │ │ +002163e0: 7465 3a20 6d6f 756e 7465 640a 2020 2020 te: mounted. │ │ │ +002163f0: 6673 7479 7065 3a20 277b 7b20 6d6f 756e fstype: '{{ moun │ │ │ +00216400: 745f 696e 666f 2e66 7374 7970 6520 7c20 t_info.fstype | │ │ │ +00216410: 6465 6661 756c 7428 2727 2727 2920 7d7d default('''') }} │ │ │ +00216420: 270a 2020 7265 6769 7374 6572 3a20 6d6f '. register: mo │ │ │ +00216430: 756e 745f 7265 7375 6c74 0a20 2066 6169 unt_result. fai │ │ │ +00216440: 6c65 645f 7768 656e 3a0a 2020 2d20 6d6f led_when:. - mo │ │ │ +00216450: 756e 745f 7265 7375 6c74 2069 7320 6661 unt_result is fa │ │ │ +00216460: 696c 6564 0a20 202d 2027 2727 7461 7267 iled. - '''targ │ │ │ +00216470: 6574 2069 7320 6275 7379 2727 206e 6f74 et is busy'' not │ │ │ +00216480: 2069 6e20 286d 6f75 6e74 5f72 6573 756c in (mount_resul │ │ │ +00216490: 742e 6d73 6720 7c20 6465 6661 756c 7428 t.msg | default( │ │ │ +002164a0: 2727 2727 2929 270a 2020 2d20 2727 2761 ''''))'. - '''a │ │ │ +002164b0: 6c72 6561 6479 206d 6f75 6e74 6564 2727 lready mounted'' │ │ │ +002164c0: 206e 6f74 2069 6e20 286d 6f75 6e74 5f72 not in (mount_r │ │ │ +002164d0: 6573 756c 742e 6d73 6720 7c20 6465 6661 esult.msg | defa │ │ │ +002164e0: 756c 7428 2727 2727 2929 270a 2020 7768 ult(''''))'. wh │ │ │ +002164f0: 656e 3a0a 2020 2d20 2820 6e6f 7420 2820 en:. - ( not ( │ │ │ +00216500: 226b 6572 6e65 6c22 2069 6e20 616e 7369 "kernel" in ansi │ │ │ +00216510: 626c 655f 6661 6374 732e 7061 636b 6167 ble_facts.packag │ │ │ +00216520: 6573 2061 6e64 2022 626f 6f74 6322 2069 es and "bootc" i │ │ │ +00216530: 6e20 616e 7369 626c 655f 6661 6374 732e n ansible_facts. │ │ │ +00216540: 7061 636b 6167 6573 0a20 2020 2061 6e64 packages. and │ │ │ +00216550: 206e 6f74 2022 6f70 656e 7368 6966 742d not "openshift- │ │ │ +00216560: 6b75 6265 6c65 7422 2069 6e20 616e 7369 kubelet" in ansi │ │ │ +00216570: 626c 655f 6661 6374 732e 7061 636b 6167 ble_facts.packag │ │ │ +00216580: 6573 2061 6e64 2022 6f73 7472 6565 2220 es and "ostree" │ │ │ +00216590: 696e 2061 6e73 6962 6c65 5f70 726f 635f in ansible_proc_ │ │ │ +002165a0: 636d 646c 696e 650a 2020 2020 2920 616e cmdline. ) an │ │ │ +002165b0: 6420 6e6f 7420 2820 616e 7369 626c 655f d not ( ansible_ │ │ │ +002165c0: 7669 7274 7561 6c69 7a61 7469 6f6e 5f74 virtualization_t │ │ │ +002165d0: 7970 6520 696e 205b 2264 6f63 6b65 7222 ype in ["docker" │ │ │ +002165e0: 2c20 226c 7863 222c 2022 6f70 656e 767a , "lxc", "openvz │ │ │ +002165f0: 222c 2022 706f 646d 616e 222c 0a20 2020 ", "podman",. │ │ │ +00216600: 2022 636f 6e74 6169 6e65 7222 5d20 2920 "container"] ) │ │ │ +00216610: 290a 2020 2d20 6d6f 756e 745f 696e 666f ). - mount_info │ │ │ +00216620: 2069 7320 6465 6669 6e65 640a 2020 2d20 is defined. - │ │ │ +00216630: 2864 6576 6963 655f 6e61 6d65 2e73 7464 (device_name.std │ │ │ +00216640: 6f75 7420 6973 2064 6566 696e 6564 2061 out is defined a │ │ │ +00216650: 6e64 2028 6465 7669 6365 5f6e 616d 652e nd (device_name. │ │ │ +00216660: 7374 646f 7574 207c 206c 656e 6774 6820 stdout | length │ │ │ +00216670: 2667 743b 2030 2929 206f 7220 2822 2d2d > 0)) or ("-- │ │ │ +00216680: 6673 7461 6222 0a20 2020 207c 206c 656e fstab". | len │ │ │ +00216690: 6774 6820 3d3d 2030 290a 2020 7461 6773 gth == 0). tags │ │ │ +002166a0: 3a0a 2020 2d20 4e49 5354 2d38 3030 2d35 :. - NIST-800-5 │ │ │ +002166b0: 332d 4143 2d36 0a20 202d 204e 4953 542d 3-AC-6. - NIST- │ │ │ +002166c0: 3830 302d 3533 2d41 432d 3628 3129 0a20 800-53-AC-6(1). │ │ │ +002166d0: 202d 204e 4953 542d 3830 302d 3533 2d43 - NIST-800-53-C │ │ │ +002166e0: 4d2d 3628 6129 0a20 202d 204e 4953 542d M-6(a). - NIST- │ │ │ +002166f0: 3830 302d 3533 2d43 4d2d 3728 6129 0a20 800-53-CM-7(a). │ │ │ +00216700: 202d 204e 4953 542d 3830 302d 3533 2d43 - NIST-800-53-C │ │ │ +00216710: 4d2d 3728 6229 0a20 202d 204e 4953 542d M-7(b). - NIST- │ │ │ +00216720: 3830 302d 3533 2d4d 502d 370a 2020 2d20 800-53-MP-7. - │ │ │ +00216730: 636f 6e66 6967 7572 655f 7374 7261 7465 configure_strate │ │ │ +00216740: 6779 0a20 202d 2068 6967 685f 6469 7372 gy. - high_disr │ │ │ +00216750: 7570 7469 6f6e 0a20 202d 206c 6f77 5f63 uption. - low_c │ │ │ +00216760: 6f6d 706c 6578 6974 790a 2020 2d20 6d65 omplexity. - me │ │ │ +00216770: 6469 756d 5f73 6576 6572 6974 790a 2020 dium_severity. │ │ │ +00216780: 2d20 6d6f 756e 745f 6f70 7469 6f6e 5f62 - mount_option_b │ │ │ +00216790: 6f6f 745f 6e6f 7375 6964 0a20 202d 206e oot_nosuid. - n │ │ │ +002167a0: 6f5f 7265 626f 6f74 5f6e 6565 6465 640a o_reboot_needed. │ │ │ +002167b0: 3c2f 636f 6465 3e3c 2f70 7265 3e3c 2f64
│ │ │ +00216860: 5265 6d65 6469 6174 696f 6e20 5368 656c Remediation Shel │ │ │ +00216870: 6c20 7363 7269 7074 20e2 87b2 3c2f 613e l script ... │ │ │ +00216880: 3c62 723e 3c64 6976 2063 6c61 7373 3d22

│ │ │ +00216930: 2320 5265 6d65 6469 6174 696f 6e20 6973  # Remediation is
│ │ │ +00216940: 2061 7070 6c69 6361 626c 6520 6f6e 6c79   applicable only
│ │ │ +00216950: 2069 6e20 6365 7274 6169 6e20 706c 6174   in certain plat
│ │ │ +00216960: 666f 726d 730a 6966 2028 2021 2028 207b  forms.if ( ! ( {
│ │ │ +00216970: 2072 706d 202d 2d71 7569 6574 202d 7120   rpm --quiet -q 
│ │ │ +00216980: 6b65 726e 656c 203b 7d20 2661 6d70 3b26  kernel ;} &&
│ │ │ +00216990: 616d 703b 207b 2072 706d 202d 2d71 7569  amp; { rpm --qui
│ │ │ +002169a0: 6574 202d 7120 626f 6f74 6320 3b7d 2026  et -q bootc ;} &
│ │ │ +002169b0: 616d 703b 2661 6d70 3b20 7b20 2120 7270  amp;& { ! rp
│ │ │ +002169c0: 6d20 2d2d 7175 6965 7420 2d71 206f 7065  m --quiet -q ope
│ │ │ +002169d0: 6e73 6869 6674 2d6b 7562 656c 6574 203b  nshift-kubelet ;
│ │ │ +002169e0: 7d20 2661 6d70 3b26 616d 703b 2028 5b20  } && ([ 
│ │ │ +002169f0: 2d66 202f 7275 6e2f 6f73 7472 6565 2d62  -f /run/ostree-b
│ │ │ +00216a00: 6f6f 7465 6420 5d20 7c7c 205b 202d 4c20  ooted ] || [ -L 
│ │ │ +00216a10: 2f6f 7374 7265 6520 5d29 2029 2026 616d  /ostree ]) ) &am
│ │ │ +00216a20: 703b 2661 6d70 3b20 2120 2820 5b20 2d66  p;& ! ( [ -f
│ │ │ +00216a30: 202f 2e64 6f63 6b65 7265 6e76 205d 207c   /.dockerenv ] |
│ │ │ +00216a40: 7c20 5b20 2d66 202f 7275 6e2f 2e63 6f6e  | [ -f /run/.con
│ │ │ +00216a50: 7461 696e 6572 656e 7620 5d20 2920 293b  tainerenv ] ) );
│ │ │ +00216a60: 2074 6865 6e0a 0a66 756e 6374 696f 6e20   then..function 
│ │ │ +00216a70: 7065 7266 6f72 6d5f 7265 6d65 6469 6174  perform_remediat
│ │ │ +00216a80: 696f 6e20 7b0a 0a20 2020 200a 2020 2020  ion {..    .    
│ │ │ +00216a90: 2020 2020 2320 7468 6520 6d6f 756e 7420      # the mount 
│ │ │ +00216aa0: 706f 696e 7420 2f62 6f6f 7420 6861 7320  point /boot has 
│ │ │ +00216ab0: 746f 2062 6520 6465 6669 6e65 6420 696e  to be defined in
│ │ │ +00216ac0: 202f 6574 632f 6673 7461 620a 2020 2020   /etc/fstab.    
│ │ │ +00216ad0: 2020 2020 2320 6265 666f 7265 2074 6869      # before thi
│ │ │ +00216ae0: 7320 7265 6d65 6469 6174 696f 6e20 6361  s remediation ca
│ │ │ +00216af0: 6e20 6265 2065 7865 6375 7465 642e 2049  n be executed. I
│ │ │ +00216b00: 6e20 6361 7365 2069 7420 6973 206e 6f74  n case it is not
│ │ │ +00216b10: 2064 6566 696e 6564 2c20 7468 650a 2020   defined, the.  
│ │ │ +00216b20: 2020 2020 2020 2320 7265 6d65 6469 6174        # remediat
│ │ │ +00216b30: 696f 6e20 6162 6f72 7473 2061 6e64 206e  ion aborts and n
│ │ │ +00216b40: 6f20 6368 616e 6765 7320 7265 6761 7264  o changes regard
│ │ │ +00216b50: 696e 6720 7468 6520 6d6f 756e 7420 706f  ing the mount po
│ │ │ +00216b60: 696e 7420 6172 6520 646f 6e65 2e0a 2020  int are done..  
│ │ │ +00216b70: 2020 2020 2020 6d6f 756e 745f 706f 696e        mount_poin
│ │ │ +00216b80: 745f 6d61 7463 685f 7265 6765 7870 3d22  t_match_regexp="
│ │ │ +00216b90: 2428 7072 696e 7466 2022 5e5b 5b3a 7370  $(printf "^[[:sp
│ │ │ +00216ba0: 6163 653a 5d5d 2a5b 5e23 5d2e 2a5b 5b3a  ace:]]*[^#].*[[:
│ │ │ +00216bb0: 7370 6163 653a 5d5d 2573 5b5b 3a73 7061  space:]]%s[[:spa
│ │ │ +00216bc0: 6365 3a5d 5d22 2022 2f62 6f6f 7422 2922  ce:]]" "/boot")"
│ │ │ +00216bd0: 0a0a 2020 2020 6772 6570 2022 246d 6f75  ..    grep "$mou
│ │ │ +00216be0: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ +00216bf0: 6567 6578 7022 202d 7120 2f65 7463 2f66  egexp" -q /etc/f
│ │ │ +00216c00: 7374 6162 205c 0a20 2020 2020 2020 207c  stab \.        |
│ │ │ +00216c10: 7c20 7b20 6563 686f 2022 5468 6520 6d6f  | { echo "The mo
│ │ │ +00216c20: 756e 7420 706f 696e 7420 272f 626f 6f74  unt point '/boot
│ │ │ +00216c30: 2720 6973 206e 6f74 2065 7665 6e20 696e  ' is not even in
│ │ │ +00216c40: 202f 6574 632f 6673 7461 622c 2073 6f20   /etc/fstab, so 
│ │ │ +00216c50: 7765 2063 616e 2774 2073 6574 2075 7020  we can't set up 
│ │ │ +00216c60: 6d6f 756e 7420 6f70 7469 6f6e 7322 2026  mount options" &
│ │ │ +00216c70: 6774 3b26 616d 703b 323b 0a20 2020 2020  gt;&2;.     
│ │ │ +00216c80: 2020 2020 2020 2020 2020 2065 6368 6f20             echo 
│ │ │ +00216c90: 224e 6f74 2072 656d 6564 6961 7469 6e67  "Not remediating
│ │ │ +00216ca0: 2c20 6265 6361 7573 6520 7468 6572 6520  , because there 
│ │ │ +00216cb0: 6973 206e 6f20 7265 636f 7264 206f 6620  is no record of 
│ │ │ +00216cc0: 2f62 6f6f 7420 696e 202f 6574 632f 6673  /boot in /etc/fs
│ │ │ +00216cd0: 7461 6222 2026 6774 3b26 616d 703b 323b  tab" >&2;
│ │ │ +00216ce0: 2072 6574 7572 6e20 313b 207d 0a20 2020   return 1; }.   
│ │ │ +00216cf0: 200a 0a0a 2020 2020 6d6f 756e 745f 706f   ...    mount_po
│ │ │ +00216d00: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ +00216d10: 3d22 2428 7072 696e 7466 2022 5e5b 5b3a  ="$(printf "^[[:
│ │ │ +00216d20: 7370 6163 653a 5d5d 2a5b 5e23 5d2e 2a5b  space:]]*[^#].*[
│ │ │ +00216d30: 5b3a 7370 6163 653a 5d5d 2573 5b5b 3a73  [:space:]]%s[[:s
│ │ │ +00216d40: 7061 6365 3a5d 5d22 202f 626f 6f74 2922  pace:]]" /boot)"
│ │ │ +00216d50: 0a0a 2020 2020 2320 4966 2074 6865 206d  ..    # If the m
│ │ │ +00216d60: 6f75 6e74 2070 6f69 6e74 2069 7320 6e6f  ount point is no
│ │ │ +00216d70: 7420 696e 202f 6574 632f 6673 7461 622c  t in /etc/fstab,
│ │ │ +00216d80: 2067 6574 2070 7265 7669 6f75 7320 6d6f   get previous mo
│ │ │ +00216d90: 756e 7420 6f70 7469 6f6e 7320 6672 6f6d  unt options from
│ │ │ +00216da0: 202f 6574 632f 6d74 6162 0a20 2020 2069   /etc/mtab.    i
│ │ │ +00216db0: 6620 2120 6772 6570 202d 7120 2224 6d6f  f ! grep -q "$mo
│ │ │ +00216dc0: 756e 745f 706f 696e 745f 6d61 7463 685f  unt_point_match_
│ │ │ +00216dd0: 7265 6765 7870 2220 2f65 7463 2f66 7374  regexp" /etc/fst
│ │ │ +00216de0: 6162 3b20 7468 656e 0a20 2020 2020 2020  ab; then.       
│ │ │ +00216df0: 2023 2072 756e 7469 6d65 206f 7074 7320   # runtime opts 
│ │ │ +00216e00: 7769 7468 6f75 7420 736f 6d65 2061 7574  without some aut
│ │ │ +00216e10: 6f6d 6174 6963 206b 6572 6e65 6c2f 7573  omatic kernel/us
│ │ │ +00216e20: 6572 7370 6163 652d 6164 6465 6420 6465  erspace-added de
│ │ │ +00216e30: 6661 756c 7473 0a20 2020 2020 2020 2070  faults.        p
│ │ │ +00216e40: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ +00216e50: 7473 3d24 2867 7265 7020 2224 6d6f 756e  ts=$(grep "$moun
│ │ │ +00216e60: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ +00216e70: 6765 7870 2220 2f65 7463 2f6d 7461 6220  gexp" /etc/mtab 
│ │ │ +00216e80: 7c20 6865 6164 202d 3120 7c20 2061 776b  | head -1 |  awk
│ │ │ +00216e90: 2027 7b70 7269 6e74 2024 347d 2720 5c0a   '{print $4}' \.
│ │ │  00216ea0: 2020 2020 2020 2020 2020 2020 2020 2020                  
│ │ │ -00216eb0: 6563 686f 2022 4e6f 7420 7265 6d65 6469  echo "Not remedi
│ │ │ -00216ec0: 6174 696e 672c 2062 6563 6175 7365 2074  ating, because t
│ │ │ -00216ed0: 6865 7265 2069 7320 6e6f 2072 6563 6f72  here is no recor
│ │ │ -00216ee0: 6420 6f66 202f 626f 6f74 2069 6e20 2f65  d of /boot in /e
│ │ │ -00216ef0: 7463 2f66 7374 6162 2220 2667 743b 2661  tc/fstab" >&a
│ │ │ -00216f00: 6d70 3b32 3b20 7265 7475 726e 2031 3b20  mp;2; return 1; 
│ │ │ -00216f10: 7d0a 2020 2020 0a0a 0a20 2020 206d 6f75  }.    ...    mou
│ │ │ -00216f20: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72  nt_point_match_r
│ │ │ -00216f30: 6567 6578 703d 2224 2870 7269 6e74 6620  egexp="$(printf 
│ │ │ -00216f40: 225e 5b5b 3a73 7061 6365 3a5d 5d2a 5b5e  "^[[:space:]]*[^
│ │ │ -00216f50: 235d 2e2a 5b5b 3a73 7061 6365 3a5d 5d25  #].*[[:space:]]%
│ │ │ -00216f60: 735b 5b3a 7370 6163 653a 5d5d 2220 2f62  s[[:space:]]" /b
│ │ │ -00216f70: 6f6f 7429 220a 0a20 2020 2023 2049 6620  oot)"..    # If 
│ │ │ -00216f80: 7468 6520 6d6f 756e 7420 706f 696e 7420  the mount point 
│ │ │ -00216f90: 6973 206e 6f74 2069 6e20 2f65 7463 2f66  is not in /etc/f
│ │ │ -00216fa0: 7374 6162 2c20 6765 7420 7072 6576 696f  stab, get previo
│ │ │ -00216fb0: 7573 206d 6f75 6e74 206f 7074 696f 6e73  us mount options
│ │ │ -00216fc0: 2066 726f 6d20 2f65 7463 2f6d 7461 620a   from /etc/mtab.
│ │ │ -00216fd0: 2020 2020 6966 2021 2067 7265 7020 2d71      if ! grep -q
│ │ │ -00216fe0: 2022 246d 6f75 6e74 5f70 6f69 6e74 5f6d   "$mount_point_m
│ │ │ -00216ff0: 6174 6368 5f72 6567 6578 7022 202f 6574  atch_regexp" /et
│ │ │ -00217000: 632f 6673 7461 623b 2074 6865 6e0a 2020  c/fstab; then.  
│ │ │ -00217010: 2020 2020 2020 2320 7275 6e74 696d 6520        # runtime 
│ │ │ -00217020: 6f70 7473 2077 6974 686f 7574 2073 6f6d  opts without som
│ │ │ -00217030: 6520 6175 746f 6d61 7469 6320 6b65 726e  e automatic kern
│ │ │ -00217040: 656c 2f75 7365 7273 7061 6365 2d61 6464  el/userspace-add
│ │ │ -00217050: 6564 2064 6566 6175 6c74 730a 2020 2020  ed defaults.    
│ │ │ -00217060: 2020 2020 7072 6576 696f 7573 5f6d 6f75      previous_mou
│ │ │ -00217070: 6e74 5f6f 7074 733d 2428 6772 6570 2022  nt_opts=$(grep "
│ │ │ -00217080: 246d 6f75 6e74 5f70 6f69 6e74 5f6d 6174  $mount_point_mat
│ │ │ -00217090: 6368 5f72 6567 6578 7022 202f 6574 632f  ch_regexp" /etc/
│ │ │ -002170a0: 6d74 6162 207c 2068 6561 6420 2d31 207c  mtab | head -1 |
│ │ │ -002170b0: 2020 6177 6b20 277b 7072 696e 7420 2434    awk '{print $4
│ │ │ -002170c0: 7d27 205c 0a20 2020 2020 2020 2020 2020  }' \.           
│ │ │ -002170d0: 2020 2020 2020 2020 207c 2073 6564 202d           | sed -
│ │ │ -002170e0: 4520 2273 2f28 7277 7c64 6566 6175 6c74  E "s/(rw|default
│ │ │ -002170f0: 737c 7365 636c 6162 656c 7c6e 6f73 7569  s|seclabel|nosui
│ │ │ -00217100: 6429 282c 7c24 292f 2f67 3b73 2f2c 242f  d)(,|$)//g;s/,$/
│ │ │ -00217110: 2f22 290a 2020 2020 2020 2020 5b20 2224  /").        [ "$
│ │ │ -00217120: 7072 6576 696f 7573 5f6d 6f75 6e74 5f6f  previous_mount_o
│ │ │ -00217130: 7074 7322 205d 2026 616d 703b 2661 6d70  pts" ] &&
│ │ │ -00217140: 3b20 7072 6576 696f 7573 5f6d 6f75 6e74  ; previous_mount
│ │ │ -00217150: 5f6f 7074 732b 3d22 2c22 0a20 2020 2020  _opts+=",".     
│ │ │ -00217160: 2020 2023 2049 6e20 6973 6f39 3636 3020     # In iso9660 
│ │ │ -00217170: 6669 6c65 7379 7374 656d 7320 6d74 6162  filesystems mtab
│ │ │ -00217180: 2063 6f75 6c64 2064 6573 6372 6962 6520   could describe 
│ │ │ -00217190: 6120 2262 6c6f 636b 7369 7a65 2220 7661  a "blocksize" va
│ │ │ -002171a0: 6c75 652c 2074 6869 7320 7368 6f75 6c64  lue, this should
│ │ │ -002171b0: 2062 6520 7265 666c 6563 7465 6420 696e   be reflected in
│ │ │ -002171c0: 0a20 2020 2020 2020 2023 2066 7374 6162  .        # fstab
│ │ │ -002171d0: 2061 7320 2262 6c6f 636b 222e 2020 5468   as "block".  Th
│ │ │ -002171e0: 6520 6e65 7874 2076 6172 6961 626c 6520  e next variable 
│ │ │ -002171f0: 6973 2074 6f20 7361 7469 7366 7920 7368  is to satisfy sh
│ │ │ -00217200: 656c 6c63 6865 636b 2053 4332 3035 302e  ellcheck SC2050.
│ │ │ -00217210: 0a20 2020 2020 2020 2066 735f 7479 7065  .        fs_type
│ │ │ -00217220: 3d22 220a 2020 2020 2020 2020 6966 205b  ="".        if [
│ │ │ -00217230: 2020 2224 6673 5f74 7970 6522 203d 3d20    "$fs_type" == 
│ │ │ -00217240: 2269 736f 3936 3630 2220 5d20 3b20 7468  "iso9660" ] ; th
│ │ │ -00217250: 656e 0a20 2020 2020 2020 2020 2020 2070  en.            p
│ │ │ -00217260: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ -00217270: 7473 3d24 2873 6564 2027 732f 626c 6f63  ts=$(sed 's/bloc
│ │ │ -00217280: 6b73 697a 653d 2f62 6c6f 636b 3d2f 2720  ksize=/block=/' 
│ │ │ -00217290: 266c 743b 266c 743b 266c 743b 2022 2470  <<< "$p
│ │ │ -002172a0: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ -002172b0: 7473 2229 0a20 2020 2020 2020 2066 690a  ts").        fi.
│ │ │ -002172c0: 2020 2020 2020 2020 6563 686f 2022 202f          echo " /
│ │ │ -002172d0: 626f 6f74 2020 6465 6661 756c 7473 2c24  boot  defaults,$
│ │ │ -002172e0: 7b70 7265 7669 6f75 735f 6d6f 756e 745f  {previous_mount_
│ │ │ -002172f0: 6f70 7473 7d6e 6f73 7569 6420 3020 3022  opts}nosuid 0 0"
│ │ │ -00217300: 2026 6774 3b26 6774 3b20 2f65 7463 2f66   >> /etc/f
│ │ │ -00217310: 7374 6162 0a20 2020 2023 2049 6620 7468  stab.    # If th
│ │ │ -00217320: 6520 6d6f 756e 745f 6f70 7420 6f70 7469  e mount_opt opti
│ │ │ -00217330: 6f6e 2069 7320 6e6f 7420 616c 7265 6164  on is not alread
│ │ │ -00217340: 7920 696e 2074 6865 206d 6f75 6e74 2070  y in the mount p
│ │ │ -00217350: 6f69 6e74 2773 202f 6574 632f 6673 7461  oint's /etc/fsta
│ │ │ -00217360: 6220 656e 7472 792c 2061 6464 2069 740a  b entry, add it.
│ │ │ -00217370: 2020 2020 656c 6966 2021 2067 7265 7020      elif ! grep 
│ │ │ -00217380: 2224 6d6f 756e 745f 706f 696e 745f 6d61  "$mount_point_ma
│ │ │ -00217390: 7463 685f 7265 6765 7870 2220 2f65 7463  tch_regexp" /etc
│ │ │ -002173a0: 2f66 7374 6162 207c 2067 7265 7020 2d71  /fstab | grep -q
│ │ │ -002173b0: 2022 6e6f 7375 6964 223b 2074 6865 6e0a   "nosuid"; then.
│ │ │ -002173c0: 2020 2020 2020 2020 7072 6576 696f 7573          previous
│ │ │ -002173d0: 5f6d 6f75 6e74 5f6f 7074 733d 2428 6772  _mount_opts=$(gr
│ │ │ -002173e0: 6570 2022 246d 6f75 6e74 5f70 6f69 6e74  ep "$mount_point
│ │ │ -002173f0: 5f6d 6174 6368 5f72 6567 6578 7022 202f  _match_regexp" /
│ │ │ -00217400: 6574 632f 6673 7461 6220 7c20 6177 6b20  etc/fstab | awk 
│ │ │ -00217410: 277b 7072 696e 7420 2434 7d27 290a 2020  '{print $4}').  
│ │ │ -00217420: 2020 2020 2020 7365 6420 2d69 2022 737c        sed -i "s|
│ │ │ -00217430: 5c28 247b 6d6f 756e 745f 706f 696e 745f  \(${mount_point_
│ │ │ -00217440: 6d61 7463 685f 7265 6765 7870 7d2e 2a24  match_regexp}.*$
│ │ │ -00217450: 7b70 7265 7669 6f75 735f 6d6f 756e 745f  {previous_mount_
│ │ │ -00217460: 6f70 7473 7d5c 297c 5c31 2c6e 6f73 7569  opts}\)|\1,nosui
│ │ │ -00217470: 647c 2220 2f65 7463 2f66 7374 6162 0a20  d|" /etc/fstab. 
│ │ │ -00217480: 2020 2066 690a 0a0a 2020 2020 6966 206d     fi...    if m
│ │ │ -00217490: 6b64 6972 202d 7020 222f 626f 6f74 223b  kdir -p "/boot";
│ │ │ -002174a0: 2074 6865 6e0a 2020 2020 2020 2020 6966   then.        if
│ │ │ -002174b0: 206d 6f75 6e74 706f 696e 7420 2d71 2022   mountpoint -q "
│ │ │ -002174c0: 2f62 6f6f 7422 3b20 7468 656e 0a20 2020  /boot"; then.   
│ │ │ -002174d0: 2020 2020 2020 2020 206d 6f75 6e74 202d           mount -
│ │ │ -002174e0: 6f20 7265 6d6f 756e 7420 2d2d 7461 7267  o remount --targ
│ │ │ -002174f0: 6574 2022 2f62 6f6f 7422 0a20 2020 2020  et "/boot".     
│ │ │ -00217500: 2020 2066 690a 2020 2020 6669 0a7d 0a0a     fi.    fi.}..
│ │ │ -00217510: 7065 7266 6f72 6d5f 7265 6d65 6469 6174  perform_remediat
│ │ │ -00217520: 696f 6e0a 0a65 6c73 650a 2020 2020 2667  ion..else.    &g
│ │ │ -00217530: 743b 2661 6d70 3b32 2065 6368 6f20 2752  t;&2 echo 'R
│ │ │ -00217540: 656d 6564 6961 7469 6f6e 2069 7320 6e6f  emediation is no
│ │ │ -00217550: 7420 6170 706c 6963 6162 6c65 2c20 6e6f  t applicable, no
│ │ │ -00217560: 7468 696e 6720 7761 7320 646f 6e65 270a  thing was done'.
│ │ │ -00217570: 6669 0a3c 2f63 6f64 653e 3c2f 7072 653e  fi.
│ │ │ +00216eb0: 2020 2020 7c20 7365 6420 2d45 2022 732f | sed -E "s/ │ │ │ +00216ec0: 2872 777c 6465 6661 756c 7473 7c73 6563 (rw|defaults|sec │ │ │ +00216ed0: 6c61 6265 6c7c 6e6f 7375 6964 2928 2c7c label|nosuid)(,| │ │ │ +00216ee0: 2429 2f2f 673b 732f 2c24 2f2f 2229 0a20 $)//g;s/,$//"). │ │ │ +00216ef0: 2020 2020 2020 205b 2022 2470 7265 7669 [ "$previ │ │ │ +00216f00: 6f75 735f 6d6f 756e 745f 6f70 7473 2220 ous_mount_opts" │ │ │ +00216f10: 5d20 2661 6d70 3b26 616d 703b 2070 7265 ] && pre │ │ │ +00216f20: 7669 6f75 735f 6d6f 756e 745f 6f70 7473 vious_mount_opts │ │ │ +00216f30: 2b3d 222c 220a 2020 2020 2020 2020 2320 +=",". # │ │ │ +00216f40: 496e 2069 736f 3936 3630 2066 696c 6573 In iso9660 files │ │ │ +00216f50: 7973 7465 6d73 206d 7461 6220 636f 756c ystems mtab coul │ │ │ +00216f60: 6420 6465 7363 7269 6265 2061 2022 626c d describe a "bl │ │ │ +00216f70: 6f63 6b73 697a 6522 2076 616c 7565 2c20 ocksize" value, │ │ │ +00216f80: 7468 6973 2073 686f 756c 6420 6265 2072 this should be r │ │ │ +00216f90: 6566 6c65 6374 6564 2069 6e0a 2020 2020 eflected in. │ │ │ +00216fa0: 2020 2020 2320 6673 7461 6220 6173 2022 # fstab as " │ │ │ +00216fb0: 626c 6f63 6b22 2e20 2054 6865 206e 6578 block". The nex │ │ │ +00216fc0: 7420 7661 7269 6162 6c65 2069 7320 746f t variable is to │ │ │ +00216fd0: 2073 6174 6973 6679 2073 6865 6c6c 6368 satisfy shellch │ │ │ +00216fe0: 6563 6b20 5343 3230 3530 2e0a 2020 2020 eck SC2050.. │ │ │ +00216ff0: 2020 2020 6673 5f74 7970 653d 2222 0a20 fs_type="". │ │ │ +00217000: 2020 2020 2020 2069 6620 5b20 2022 2466 if [ "$f │ │ │ +00217010: 735f 7479 7065 2220 3d3d 2022 6973 6f39 s_type" == "iso9 │ │ │ +00217020: 3636 3022 205d 203b 2074 6865 6e0a 2020 660" ] ; then. │ │ │ +00217030: 2020 2020 2020 2020 2020 7072 6576 696f previo │ │ │ +00217040: 7573 5f6d 6f75 6e74 5f6f 7074 733d 2428 us_mount_opts=$( │ │ │ +00217050: 7365 6420 2773 2f62 6c6f 636b 7369 7a65 sed 's/blocksize │ │ │ +00217060: 3d2f 626c 6f63 6b3d 2f27 2026 6c74 3b26 =/block=/' <& │ │ │ +00217070: 6c74 3b26 6c74 3b20 2224 7072 6576 696f lt;< "$previo │ │ │ +00217080: 7573 5f6d 6f75 6e74 5f6f 7074 7322 290a us_mount_opts"). │ │ │ +00217090: 2020 2020 2020 2020 6669 0a20 2020 2020 fi. │ │ │ +002170a0: 2020 2065 6368 6f20 2220 2f62 6f6f 7420 echo " /boot │ │ │ +002170b0: 2064 6566 6175 6c74 732c 247b 7072 6576 defaults,${prev │ │ │ +002170c0: 696f 7573 5f6d 6f75 6e74 5f6f 7074 737d ious_mount_opts} │ │ │ +002170d0: 6e6f 7375 6964 2030 2030 2220 2667 743b nosuid 0 0" > │ │ │ +002170e0: 2667 743b 202f 6574 632f 6673 7461 620a > /etc/fstab. │ │ │ +002170f0: 2020 2020 2320 4966 2074 6865 206d 6f75 # If the mou │ │ │ +00217100: 6e74 5f6f 7074 206f 7074 696f 6e20 6973 nt_opt option is │ │ │ +00217110: 206e 6f74 2061 6c72 6561 6479 2069 6e20 not already in │ │ │ +00217120: 7468 6520 6d6f 756e 7420 706f 696e 7427 the mount point' │ │ │ +00217130: 7320 2f65 7463 2f66 7374 6162 2065 6e74 s /etc/fstab ent │ │ │ +00217140: 7279 2c20 6164 6420 6974 0a20 2020 2065 ry, add it. e │ │ │ +00217150: 6c69 6620 2120 6772 6570 2022 246d 6f75 lif ! grep "$mou │ │ │ +00217160: 6e74 5f70 6f69 6e74 5f6d 6174 6368 5f72 nt_point_match_r │ │ │ +00217170: 6567 6578 7022 202f 6574 632f 6673 7461 egexp" /etc/fsta │ │ │ +00217180: 6220 7c20 6772 6570 202d 7120 226e 6f73 b | grep -q "nos │ │ │ +00217190: 7569 6422 3b20 7468 656e 0a20 2020 2020 uid"; then. │ │ │ +002171a0: 2020 2070 7265 7669 6f75 735f 6d6f 756e previous_moun │ │ │ +002171b0: 745f 6f70 7473 3d24 2867 7265 7020 2224 t_opts=$(grep "$ │ │ │ +002171c0: 6d6f 756e 745f 706f 696e 745f 6d61 7463 mount_point_matc │ │ │ +002171d0: 685f 7265 6765 7870 2220 2f65 7463 2f66 h_regexp" /etc/f │ │ │ +002171e0: 7374 6162 207c 2061 776b 2027 7b70 7269 stab | awk '{pri │ │ │ +002171f0: 6e74 2024 347d 2729 0a20 2020 2020 2020 nt $4}'). │ │ │ +00217200: 2073 6564 202d 6920 2273 7c5c 2824 7b6d sed -i "s|\(${m │ │ │ +00217210: 6f75 6e74 5f70 6f69 6e74 5f6d 6174 6368 ount_point_match │ │ │ +00217220: 5f72 6567 6578 707d 2e2a 247b 7072 6576 _regexp}.*${prev │ │ │ +00217230: 696f 7573 5f6d 6f75 6e74 5f6f 7074 737d ious_mount_opts} │ │ │ +00217240: 5c29 7c5c 312c 6e6f 7375 6964 7c22 202f \)|\1,nosuid|" / │ │ │ +00217250: 6574 632f 6673 7461 620a 2020 2020 6669 etc/fstab. fi │ │ │ +00217260: 0a0a 0a20 2020 2069 6620 6d6b 6469 7220 ... if mkdir │ │ │ +00217270: 2d70 2022 2f62 6f6f 7422 3b20 7468 656e -p "/boot"; then │ │ │ +00217280: 0a20 2020 2020 2020 2069 6620 6d6f 756e . if moun │ │ │ +00217290: 7470 6f69 6e74 202d 7120 222f 626f 6f74 tpoint -q "/boot │ │ │ +002172a0: 223b 2074 6865 6e0a 2020 2020 2020 2020 "; then. │ │ │ +002172b0: 2020 2020 6d6f 756e 7420 2d6f 2072 656d mount -o rem │ │ │ +002172c0: 6f75 6e74 202d 2d74 6172 6765 7420 222f ount --target "/ │ │ │ +002172d0: 626f 6f74 220a 2020 2020 2020 2020 6669 boot". fi │ │ │ +002172e0: 0a20 2020 2066 690a 7d0a 0a70 6572 666f . fi.}..perfo │ │ │ +002172f0: 726d 5f72 656d 6564 6961 7469 6f6e 0a0a rm_remediation.. │ │ │ +00217300: 656c 7365 0a20 2020 2026 6774 3b26 616d else. >&am │ │ │ +00217310: 703b 3220 6563 686f 2027 5265 6d65 6469 p;2 echo 'Remedi │ │ │ +00217320: 6174 696f 6e20 6973 206e 6f74 2061 7070 ation is not app │ │ │ +00217330: 6c69 6361 626c 652c 206e 6f74 6869 6e67 licable, nothing │ │ │ +00217340: 2077 6173 2064 6f6e 6527 0a66 690a 3c2f was done'.fi.Re │ │ │ +00217400: 6d65 6469 6174 696f 6e20 416e 6163 6f6e mediation Anacon │ │ │ +00217410: 6461 2073 6e69 7070 6574 20e2 87b2 3c2f da snippet ...
Re │ │ │ +00216900: 626f 6f74 3a3c 2f74 683e 3c74 643e 6661 boot:fa │ │ │ +00216910: 6c73 653c 2f74 643e 3c2f 7472 3e3c 2f74 lse
│ │ │ +002174b0: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 < │ │ │ +002174f0: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ +00217500: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false
.
│ │ │ +00217550: 7061 7274 202f 626f 6f74 202d 2d6d 6f75  part /boot --mou
│ │ │ +00217560: 6e74 6f70 7469 6f6e 733d 226e 6f73 7569  ntoptions="nosui
│ │ │ +00217570: 6422 0a3c 2f63 6f64 653e 3c2f 7072 653e  d".
│ │ │ 00217580: 3c2f 6469 763e 3c2f 6469 763e 3c2f 7464 │ │ │ 002175b0: 3c74 7220 6461 7461 2d74 742d 6964 3d22 Remedi │ │ │ -00217f60: 6174 696f 6e20 416e 6163 6f6e 6461 2073 ation Anaconda s │ │ │ -00217f70: 6e69 7070 6574 20e2 87b2 3c2f 613e 3c62 nippet ...
│ │ │ +002174a0: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ +002174d0: 696f 6e3a 3c2f 7468 3e3c 7464 3e68 6967 ion:hig │ │ │ +002174e0: 683c 2f74 643e 3c2f 7472 3e3c 7472 3e3c h
Strate │ │ │ +00217520: 6779 3a3c 2f74 683e 3c74 643e 656e 6162 gy:enab │ │ │ +00217530: 6c65 3c2f 7464 3e3c 2f74 723e 3c2f 7461 le
Comp │ │ │ -00218000: 6c65 7869 7479 3a3c 2f74 683e 3c74 643e lexity: │ │ │ -00218010: 6c6f 773c 2f74 643e 3c2f 7472 3e3c 7472 low
Disruption: │ │ │ -00218030: 3c2f 7468 3e3c 7464 3e68 6967 683c 2f74 high
R │ │ │ -00218050: 6562 6f6f 743a 3c2f 7468 3e3c 7464 3e66 eboot:f │ │ │ -00218060: 616c 7365 3c2f 7464 3e3c 2f74 723e 3c74 alse
Strategy:< │ │ │ -00218080: 2f74 683e 3c74 643e 656e 6162 6c65 3c2f /th>enable
│ │ │ -002180a0: 3c70 7265 3e3c 636f 6465 3e0a 7061 7274
.part
│ │ │ -002180b0: 202f 686f 6d65 202d 2d6d 6f75 6e74 6f70   /home --mountop
│ │ │ -002180c0: 7469 6f6e 733d 226e 6f65 7865 6322 0a3c  tions="noexec".<
│ │ │ -002180d0: 2f63 6f64 653e 3c2f 7072 653e 3c2f 6469  /code>
R │ │ │ -00218180: 656d 6564 6961 7469 6f6e 2041 6e73 6962 emediation Ansib │ │ │ -00218190: 6c65 2073 6e69 7070 6574 20e2 87b2 3c2f le snippet ...
│ │ │ -00218230: 3c74 643e 6c6f 773c 2f74 643e 3c2f 7472 < │ │ │ -00218270: 7468 3e52 6562 6f6f 743a 3c2f 7468 3e3c th>Reboot:< │ │ │ -00218280: 7464 3e66 616c 7365 3c2f 7464 3e3c 2f74 td>false< │ │ │ -002182c0: 2f74 6162 6c65 3e3c 7072 653e 3c63 6f64 /table>
- name: Gather
│ │ │ -002182e0: 2074 6865 2070 6163 6b61 6765 2066 6163   the package fac
│ │ │ -002182f0: 7473 0a20 2070 6163 6b61 6765 5f66 6163  ts.  package_fac
│ │ │ -00218300: 7473 3a0a 2020 2020 6d61 6e61 6765 723a  ts:.    manager:
│ │ │ -00218310: 2061 7574 6f0a 2020 7461 6773 3a0a 2020   auto.  tags:.  
│ │ │ -00218320: 2d20 4e49 5354 2d38 3030 2d35 332d 434d  - NIST-800-53-CM
│ │ │ -00218330: 2d36 2862 290a 2020 2d20 636f 6e66 6967  -6(b).  - config
│ │ │ -00218340: 7572 655f 7374 7261 7465 6779 0a20 202d  ure_strategy.  -
│ │ │ -00218350: 2068 6967 685f 6469 7372 7570 7469 6f6e   high_disruption
│ │ │ -00218360: 0a20 202d 206c 6f77 5f63 6f6d 706c 6578  .  - low_complex
│ │ │ -00218370: 6974 790a 2020 2d20 6d65 6469 756d 5f73  ity.  - medium_s
│ │ │ -00218380: 6576 6572 6974 790a 2020 2d20 6d6f 756e  everity.  - moun
│ │ │ -00218390: 745f 6f70 7469 6f6e 5f68 6f6d 655f 6e6f  t_option_home_no
│ │ │ -002183a0: 6578 6563 0a20 202d 206e 6f5f 7265 626f  exec.  - no_rebo
│ │ │ -002183b0: 6f74 5f6e 6565 6465 640a 0a2d 206e 616d  ot_needed..- nam
│ │ │ -002183c0: 653a 2027 4164 6420 6e6f 6578 6563 204f  e: 'Add noexec O
│ │ │ -002183d0: 7074 696f 6e20 746f 202f 686f 6d65 3a20  ption to /home: 
│ │ │ -002183e0: 4368 6563 6b20 696e 666f 726d 6174 696f  Check informatio
│ │ │ -002183f0: 6e20 6173 736f 6369 6174 6564 2074 6f20  n associated to 
│ │ │ -00218400: 6d6f 756e 7470 6f69 6e74 270a 2020 616e  mountpoint'.  an
│ │ │ -00218410: 7369 626c 652e 6275 696c 7469 6e2e 636f  sible.builtin.co
│ │ │ -00218420: 6d6d 616e 643a 2066 696e 646d 6e74 202d  mmand: findmnt -
│ │ │ -00218430: 2d66 7374 6162 2027 2f68 6f6d 6527 0a20  -fstab '/home'. 
│ │ │ -00218440: 2072 6567 6973 7465 723a 2064 6576 6963   register: devic
│ │ │ -00218450: 655f 6e61 6d65 0a20 2066 6169 6c65 645f  e_name.  failed_
│ │ │ -00218460: 7768 656e 3a20 6465 7669 6365 5f6e 616d  when: device_nam
│ │ │ -00218470: 652e 7263 2026 6774 3b20 310a 2020 6368  e.rc > 1.  ch
│ │ │ -00218480: 616e 6765 645f 7768 656e 3a20 6661 6c73  anged_when: fals
│ │ │ -00218490: 650a 2020 6368 6563 6b5f 6d6f 6465 3a20  e.  check_mode: 
│ │ │ -002184a0: 6661 6c73 650a 2020 7768 656e 3a20 2820  false.  when: ( 
│ │ │ -002184b0: 6e6f 7420 2820 226b 6572 6e65 6c22 2069  not ( "kernel" i
│ │ │ -002184c0: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -002184d0: 7061 636b 6167 6573 2061 6e64 2022 626f  packages and "bo
│ │ │ -002184e0: 6f74 6322 2069 6e20 616e 7369 626c 655f  otc" in ansible_
│ │ │ -002184f0: 6661 6374 732e 7061 636b 6167 6573 0a20  facts.packages. 
│ │ │ -00218500: 2020 2061 6e64 206e 6f74 2022 6f70 656e     and not "open
│ │ │ -00218510: 7368 6966 742d 6b75 6265 6c65 7422 2069  shift-kubelet" i
│ │ │ -00218520: 6e20 616e 7369 626c 655f 6661 6374 732e  n ansible_facts.
│ │ │ -00218530: 7061 636b 6167 6573 2061 6e64 2022 6f73  packages and "os
│ │ │ -00218540: 7472 6565 2220 696e 2061 6e73 6962 6c65  tree" in ansible
│ │ │ -00218550: 5f70 726f 635f 636d 646c 696e 650a 2020  _proc_cmdline.  
│ │ │ -00218560: 2020 2920 616e 6420 6e6f 7420 2820 616e    ) and not ( an
│ │ │ -00218570: 7369 626c 655f 7669 7274 7561 6c69 7a61  sible_virtualiza
│ │ │ -00218580: 7469 6f6e 5f74 7970 6520 696e 205b 2264  tion_type in ["d
│ │ │ -00218590: 6f63 6b65 7222 2c20 226c 7863 222c 2022  ocker", "lxc", "
│ │ │ -002185a0: 6f70 656e 767a 222c 2022 706f 646d 616e  openvz", "podman
│ │ │ -002185b0: 222c 0a20 2020 2022 636f 6e74 6169 6e65  ",.    "containe
│ │ │ -002185c0: 7222 5d20 2920 290a 2020 7461 6773 3a0a  r"] ) ).  tags:.
│ │ │ -002185d0: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -002185e0: 434d 2d36 2862 290a 2020 2d20 636f 6e66  CM-6(b).  - conf
│ │ │ -002185f0: 6967 7572 655f 7374 7261 7465 6779 0a20  igure_strategy. 
│ │ │ -00218600: 202d 2068 6967 685f 6469 7372 7570 7469   - high_disrupti
│ │ │ -00218610: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c  on.  - low_compl
│ │ │ -00218620: 6578 6974 790a 2020 2d20 6d65 6469 756d  exity.  - medium
│ │ │ -00218630: 5f73 6576 6572 6974 790a 2020 2d20 6d6f  _severity.  - mo
│ │ │ -00218640: 756e 745f 6f70 7469 6f6e 5f68 6f6d 655f  unt_option_home_
│ │ │ -00218650: 6e6f 6578 6563 0a20 202d 206e 6f5f 7265  noexec.  - no_re
│ │ │ -00218660: 626f 6f74 5f6e 6565 6465 640a 0a2d 206e  boot_needed..- n
│ │ │ -00218670: 616d 653a 2027 4164 6420 6e6f 6578 6563  ame: 'Add noexec
│ │ │ -00218680: 204f 7074 696f 6e20 746f 202f 686f 6d65   Option to /home
│ │ │ -00218690: 3a20 4372 6561 7465 206d 6f75 6e74 5f69  : Create mount_i
│ │ │ -002186a0: 6e66 6f20 6469 6374 696f 6e61 7279 2076  nfo dictionary v
│ │ │ -002186b0: 6172 6961 626c 6527 0a20 2073 6574 5f66  ariable'.  set_f
│ │ │ -002186c0: 6163 743a 0a20 2020 206d 6f75 6e74 5f69  act:.    mount_i
│ │ │ -002186d0: 6e66 6f3a 2027 7b7b 206d 6f75 6e74 5f69  nfo: '{{ mount_i
│ │ │ -002186e0: 6e66 6f7c 6465 6661 756c 7428 7b7d 297c  nfo|default({})|
│ │ │ -002186f0: 636f 6d62 696e 6528 7b69 7465 6d2e 303a  combine({item.0:
│ │ │ -00218700: 2069 7465 6d2e 317d 2920 7d7d 270a 2020   item.1}) }}'.  
│ │ │ -00218710: 7769 7468 5f74 6f67 6574 6865 723a 0a20  with_together:. 
│ │ │ -00218720: 202d 2027 7b7b 2064 6576 6963 655f 6e61   - '{{ device_na
│ │ │ -00218730: 6d65 2e73 7464 6f75 745f 6c69 6e65 735b  me.stdout_lines[
│ │ │ -00218740: 305d 2e73 706c 6974 2829 207c 206d 6170  0].split() | map
│ │ │ -00218750: 2827 276c 6f77 6572 2727 2920 7c20 6c69  (''lower'') | li
│ │ │ -00218760: 7374 207d 7d27 0a20 202d 2027 7b7b 2064  st }}'.  - '{{ d
│ │ │ -00218770: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ -00218780: 745f 6c69 6e65 735b 315d 2e73 706c 6974  t_lines[1].split
│ │ │ -00218790: 2829 207c 206c 6973 7420 7d7d 270a 2020  () | list }}'.  
│ │ │ -002187a0: 7768 656e 3a0a 2020 2d20 2820 6e6f 7420  when:.  - ( not 
│ │ │ -002187b0: 2820 226b 6572 6e65 6c22 2069 6e20 616e  ( "kernel" in an
│ │ │ -002187c0: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -002187d0: 6167 6573 2061 6e64 2022 626f 6f74 6322  ages and "bootc"
│ │ │ -002187e0: 2069 6e20 616e 7369 626c 655f 6661 6374   in ansible_fact
│ │ │ -002187f0: 732e 7061 636b 6167 6573 0a20 2020 2061  s.packages.    a
│ │ │ -00218800: 6e64 206e 6f74 2022 6f70 656e 7368 6966  nd not "openshif
│ │ │ -00218810: 742d 6b75 6265 6c65 7422 2069 6e20 616e  t-kubelet" in an
│ │ │ -00218820: 7369 626c 655f 6661 6374 732e 7061 636b  sible_facts.pack
│ │ │ -00218830: 6167 6573 2061 6e64 2022 6f73 7472 6565  ages and "ostree
│ │ │ -00218840: 2220 696e 2061 6e73 6962 6c65 5f70 726f  " in ansible_pro
│ │ │ -00218850: 635f 636d 646c 696e 650a 2020 2020 2920  c_cmdline.    ) 
│ │ │ -00218860: 616e 6420 6e6f 7420 2820 616e 7369 626c  and not ( ansibl
│ │ │ -00218870: 655f 7669 7274 7561 6c69 7a61 7469 6f6e  e_virtualization
│ │ │ -00218880: 5f74 7970 6520 696e 205b 2264 6f63 6b65  _type in ["docke
│ │ │ -00218890: 7222 2c20 226c 7863 222c 2022 6f70 656e  r", "lxc", "open
│ │ │ -002188a0: 767a 222c 2022 706f 646d 616e 222c 0a20  vz", "podman",. 
│ │ │ -002188b0: 2020 2022 636f 6e74 6169 6e65 7222 5d20     "container"] 
│ │ │ -002188c0: 2920 290a 2020 2d20 6465 7669 6365 5f6e  ) ).  - device_n
│ │ │ -002188d0: 616d 652e 7374 646f 7574 2069 7320 6465  ame.stdout is de
│ │ │ -002188e0: 6669 6e65 6420 616e 6420 6465 7669 6365  fined and device
│ │ │ -002188f0: 5f6e 616d 652e 7374 646f 7574 5f6c 696e  _name.stdout_lin
│ │ │ -00218900: 6573 2069 7320 6465 6669 6e65 640a 2020  es is defined.  
│ │ │ -00218910: 2d20 2864 6576 6963 655f 6e61 6d65 2e73  - (device_name.s
│ │ │ -00218920: 7464 6f75 7420 7c20 6c65 6e67 7468 2026  tdout | length &
│ │ │ -00218930: 6774 3b20 3029 0a20 2074 6167 733a 0a20  gt; 0).  tags:. 
│ │ │ -00218940: 202d 204e 4953 542d 3830 302d 3533 2d43   - NIST-800-53-C
│ │ │ -00218950: 4d2d 3628 6229 0a20 202d 2063 6f6e 6669  M-6(b).  - confi
│ │ │ -00218960: 6775 7265 5f73 7472 6174 6567 790a 2020  gure_strategy.  
│ │ │ -00218970: 2d20 6869 6768 5f64 6973 7275 7074 696f  - high_disruptio
│ │ │ -00218980: 6e0a 2020 2d20 6c6f 775f 636f 6d70 6c65  n.  - low_comple
│ │ │ -00218990: 7869 7479 0a20 202d 206d 6564 6975 6d5f  xity.  - medium_
│ │ │ -002189a0: 7365 7665 7269 7479 0a20 202d 206d 6f75  severity.  - mou
│ │ │ -002189b0: 6e74 5f6f 7074 696f 6e5f 686f 6d65 5f6e  nt_option_home_n
│ │ │ -002189c0: 6f65 7865 630a 2020 2d20 6e6f 5f72 6562  oexec.  - no_reb
│ │ │ -002189d0: 6f6f 745f 6e65 6564 6564 0a0a 2d20 6e61  oot_needed..- na
│ │ │ -002189e0: 6d65 3a20 2741 6464 206e 6f65 7865 6320  me: 'Add noexec 
│ │ │ -002189f0: 4f70 7469 6f6e 2074 6f20 2f68 6f6d 653a  Option to /home:
│ │ │ -00218a00: 2049 6620 2f68 6f6d 6520 6e6f 7420 6d6f   If /home not mo
│ │ │ -00218a10: 756e 7465 642c 2063 7261 6674 206d 6f75  unted, craft mou
│ │ │ -00218a20: 6e74 5f69 6e66 6f20 6d61 6e75 616c 6c79  nt_info manually
│ │ │ -00218a30: 270a 2020 7365 745f 6661 6374 3a0a 2020  '.  set_fact:.  
│ │ │ -00218a40: 2020 6d6f 756e 745f 696e 666f 3a20 277b    mount_info: '{
│ │ │ -00218a50: 7b20 6d6f 756e 745f 696e 666f 7c64 6566  { mount_info|def
│ │ │ -00218a60: 6175 6c74 287b 7d29 7c63 6f6d 6269 6e65  ault({})|combine
│ │ │ -00218a70: 287b 6974 656d 2e30 3a20 6974 656d 2e31  ({item.0: item.1
│ │ │ -00218a80: 7d29 207d 7d27 0a20 2077 6974 685f 746f  }) }}'.  with_to
│ │ │ -00218a90: 6765 7468 6572 3a0a 2020 2d20 2d20 7461  gether:.  - - ta
│ │ │ -00218aa0: 7267 6574 0a20 2020 202d 2073 6f75 7263  rget.    - sourc
│ │ │ -00218ab0: 650a 2020 2020 2d20 6673 7479 7065 0a20  e.    - fstype. 
│ │ │ -00218ac0: 2020 202d 206f 7074 696f 6e73 0a20 202d     - options.  -
│ │ │ -00218ad0: 202d 202f 686f 6d65 0a20 2020 202d 2027   - /home.    - '
│ │ │ -00218ae0: 270a 2020 2020 2d20 2727 0a20 2020 202d  '.    - ''.    -
│ │ │ -00218af0: 2064 6566 6175 6c74 730a 2020 7768 656e   defaults.  when
│ │ │ -00218b00: 3a0a 2020 2d20 2820 6e6f 7420 2820 226b  :.  - ( not ( "k
│ │ │ -00218b10: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ -00218b20: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -00218b30: 2061 6e64 2022 626f 6f74 6322 2069 6e20   and "bootc" in 
│ │ │ -00218b40: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -00218b50: 636b 6167 6573 0a20 2020 2061 6e64 206e  ckages.    and n
│ │ │ -00218b60: 6f74 2022 6f70 656e 7368 6966 742d 6b75  ot "openshift-ku
│ │ │ -00218b70: 6265 6c65 7422 2069 6e20 616e 7369 626c  belet" in ansibl
│ │ │ -00218b80: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -00218b90: 2061 6e64 2022 6f73 7472 6565 2220 696e   and "ostree" in
│ │ │ -00218ba0: 2061 6e73 6962 6c65 5f70 726f 635f 636d   ansible_proc_cm
│ │ │ -00218bb0: 646c 696e 650a 2020 2020 2920 616e 6420  dline.    ) and 
│ │ │ -00218bc0: 6e6f 7420 2820 616e 7369 626c 655f 7669  not ( ansible_vi
│ │ │ -00218bd0: 7274 7561 6c69 7a61 7469 6f6e 5f74 7970  rtualization_typ
│ │ │ -00218be0: 6520 696e 205b 2264 6f63 6b65 7222 2c20  e in ["docker", 
│ │ │ -00218bf0: 226c 7863 222c 2022 6f70 656e 767a 222c  "lxc", "openvz",
│ │ │ -00218c00: 2022 706f 646d 616e 222c 0a20 2020 2022   "podman",.    "
│ │ │ -00218c10: 636f 6e74 6169 6e65 7222 5d20 2920 290a  container"] ) ).
│ │ │ -00218c20: 2020 2d20 2822 2d2d 6673 7461 6222 207c    - ("--fstab" |
│ │ │ -00218c30: 206c 656e 6774 6820 3d3d 2030 290a 2020   length == 0).  
│ │ │ -00218c40: 2d20 6465 7669 6365 5f6e 616d 652e 7374  - device_name.st
│ │ │ -00218c50: 646f 7574 2069 7320 6465 6669 6e65 6420  dout is defined 
│ │ │ -00218c60: 616e 6420 6465 7669 6365 5f6e 616d 652e  and device_name.
│ │ │ -00218c70: 7374 646f 7574 5f6c 696e 6573 2069 7320  stdout_lines is 
│ │ │ -00218c80: 6465 6669 6e65 640a 2020 2d20 2864 6576  defined.  - (dev
│ │ │ -00218c90: 6963 655f 6e61 6d65 2e73 7464 6f75 7420  ice_name.stdout 
│ │ │ -00218ca0: 7c20 6c65 6e67 7468 203d 3d20 3029 0a20  | length == 0). 
│ │ │ -00218cb0: 2074 6167 733a 0a20 202d 204e 4953 542d   tags:.  - NIST-
│ │ │ -00218cc0: 3830 302d 3533 2d43 4d2d 3628 6229 0a20  800-53-CM-6(b). 
│ │ │ -00218cd0: 202d 2063 6f6e 6669 6775 7265 5f73 7472   - configure_str
│ │ │ -00218ce0: 6174 6567 790a 2020 2d20 6869 6768 5f64  ategy.  - high_d
│ │ │ -00218cf0: 6973 7275 7074 696f 6e0a 2020 2d20 6c6f  isruption.  - lo
│ │ │ -00218d00: 775f 636f 6d70 6c65 7869 7479 0a20 202d  w_complexity.  -
│ │ │ -00218d10: 206d 6564 6975 6d5f 7365 7665 7269 7479   medium_severity
│ │ │ -00218d20: 0a20 202d 206d 6f75 6e74 5f6f 7074 696f  .  - mount_optio
│ │ │ -00218d30: 6e5f 686f 6d65 5f6e 6f65 7865 630a 2020  n_home_noexec.  
│ │ │ -00218d40: 2d20 6e6f 5f72 6562 6f6f 745f 6e65 6564  - no_reboot_need
│ │ │ -00218d50: 6564 0a0a 2d20 6e61 6d65 3a20 2741 6464  ed..- name: 'Add
│ │ │ -00218d60: 206e 6f65 7865 6320 4f70 7469 6f6e 2074   noexec Option t
│ │ │ -00218d70: 6f20 2f68 6f6d 653a 204d 616b 6520 7375  o /home: Make su
│ │ │ -00218d80: 7265 206e 6f65 7865 6320 6f70 7469 6f6e  re noexec option
│ │ │ -00218d90: 2069 7320 7061 7274 206f 6620 7468 6520   is part of the 
│ │ │ -00218da0: 746f 202f 686f 6d65 0a20 2020 206f 7074  to /home.    opt
│ │ │ -00218db0: 696f 6e73 270a 2020 7365 745f 6661 6374  ions'.  set_fact
│ │ │ -00218dc0: 3a0a 2020 2020 6d6f 756e 745f 696e 666f  :.    mount_info
│ │ │ -00218dd0: 3a20 277b 7b20 6d6f 756e 745f 696e 666f  : '{{ mount_info
│ │ │ -00218de0: 207c 2063 6f6d 6269 6e65 2820 7b27 276f   | combine( {''o
│ │ │ -00218df0: 7074 696f 6e73 2727 3a27 2727 277e 286d  ptions'':''''~(m
│ │ │ -00218e00: 6f75 6e74 5f69 6e66 6f2e 6f70 7469 6f6e  ount_info.option
│ │ │ -00218e10: 7320 7c0a 2020 2020 2020 6465 6661 756c  s |.      defaul
│ │ │ -00218e20: 7428 2727 2727 2929 7e28 2727 2c27 2720  t(''''))~('','' 
│ │ │ -00218e30: 6966 2028 6d6f 756e 745f 696e 666f 2e6f  if (mount_info.o
│ │ │ -00218e40: 7074 696f 6e73 207c 2064 6566 6175 6c74  ptions | default
│ │ │ -00218e50: 2827 2727 2729 2920 656c 7365 2027 2727  ('''')) else '''
│ │ │ -00218e60: 2729 7e27 276e 6f65 7865 6327 270a 2020  ')~''noexec''.  
│ │ │ -00218e70: 2020 2020 7d29 207d 7d27 0a20 2077 6865      }) }}'.  whe
│ │ │ -00218e80: 6e3a 0a20 202d 2028 206e 6f74 2028 2022  n:.  - ( not ( "
│ │ │ -00218e90: 6b65 726e 656c 2220 696e 2061 6e73 6962  kernel" in ansib
│ │ │ -00218ea0: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -00218eb0: 7320 616e 6420 2262 6f6f 7463 2220 696e  s and "bootc" in
│ │ │ -00218ec0: 2061 6e73 6962 6c65 5f66 6163 7473 2e70   ansible_facts.p
│ │ │ -00218ed0: 6163 6b61 6765 730a 2020 2020 616e 6420  ackages.    and 
│ │ │ -00218ee0: 6e6f 7420 226f 7065 6e73 6869 6674 2d6b  not "openshift-k
│ │ │ -00218ef0: 7562 656c 6574 2220 696e 2061 6e73 6962  ubelet" in ansib
│ │ │ -00218f00: 6c65 5f66 6163 7473 2e70 6163 6b61 6765  le_facts.package
│ │ │ -00218f10: 7320 616e 6420 226f 7374 7265 6522 2069  s and "ostree" i
│ │ │ -00218f20: 6e20 616e 7369 626c 655f 7072 6f63 5f63  n ansible_proc_c
│ │ │ -00218f30: 6d64 6c69 6e65 0a20 2020 2029 2061 6e64  mdline.    ) and
│ │ │ -00218f40: 206e 6f74 2028 2061 6e73 6962 6c65 5f76   not ( ansible_v
│ │ │ -00218f50: 6972 7475 616c 697a 6174 696f 6e5f 7479  irtualization_ty
│ │ │ -00218f60: 7065 2069 6e20 5b22 646f 636b 6572 222c  pe in ["docker",
│ │ │ -00218f70: 2022 6c78 6322 2c20 226f 7065 6e76 7a22   "lxc", "openvz"
│ │ │ -00218f80: 2c20 2270 6f64 6d61 6e22 2c0a 2020 2020  , "podman",.    
│ │ │ -00218f90: 2263 6f6e 7461 696e 6572 225d 2029 2029  "container"] ) )
│ │ │ -00218fa0: 0a20 202d 206d 6f75 6e74 5f69 6e66 6f20  .  - mount_info 
│ │ │ -00218fb0: 6973 2064 6566 696e 6564 2061 6e64 2022  is defined and "
│ │ │ -00218fc0: 6e6f 6578 6563 2220 6e6f 7420 696e 2028  noexec" not in (
│ │ │ -00218fd0: 6d6f 756e 745f 696e 666f 2e6f 7074 696f  mount_info.optio
│ │ │ -00218fe0: 6e73 207c 2064 6566 6175 6c74 2827 2729  ns | default('')
│ │ │ -00218ff0: 290a 2020 7461 6773 3a0a 2020 2d20 4e49  ).  tags:.  - NI
│ │ │ -00219000: 5354 2d38 3030 2d35 332d 434d 2d36 2862  ST-800-53-CM-6(b
│ │ │ -00219010: 290a 2020 2d20 636f 6e66 6967 7572 655f  ).  - configure_
│ │ │ -00219020: 7374 7261 7465 6779 0a20 202d 2068 6967  strategy.  - hig
│ │ │ -00219030: 685f 6469 7372 7570 7469 6f6e 0a20 202d  h_disruption.  -
│ │ │ -00219040: 206c 6f77 5f63 6f6d 706c 6578 6974 790a   low_complexity.
│ │ │ -00219050: 2020 2d20 6d65 6469 756d 5f73 6576 6572    - medium_sever
│ │ │ -00219060: 6974 790a 2020 2d20 6d6f 756e 745f 6f70  ity.  - mount_op
│ │ │ -00219070: 7469 6f6e 5f68 6f6d 655f 6e6f 6578 6563  tion_home_noexec
│ │ │ -00219080: 0a20 202d 206e 6f5f 7265 626f 6f74 5f6e  .  - no_reboot_n
│ │ │ -00219090: 6565 6465 640a 0a2d 206e 616d 653a 2027  eeded..- name: '
│ │ │ -002190a0: 4164 6420 6e6f 6578 6563 204f 7074 696f  Add noexec Optio
│ │ │ -002190b0: 6e20 746f 202f 686f 6d65 3a20 456e 7375  n to /home: Ensu
│ │ │ -002190c0: 7265 202f 686f 6d65 2069 7320 6d6f 756e  re /home is moun
│ │ │ -002190d0: 7465 6420 7769 7468 206e 6f65 7865 6320  ted with noexec 
│ │ │ -002190e0: 6f70 7469 6f6e 270a 2020 616e 7369 626c  option'.  ansibl
│ │ │ -002190f0: 652e 706f 7369 782e 6d6f 756e 743a 0a20  e.posix.mount:. 
│ │ │ -00219100: 2020 2070 6174 683a 202f 686f 6d65 0a20     path: /home. 
│ │ │ -00219110: 2020 2073 7263 3a20 277b 7b20 6d6f 756e     src: '{{ moun
│ │ │ -00219120: 745f 696e 666f 2e73 6f75 7263 6520 7c20  t_info.source | 
│ │ │ -00219130: 6465 6661 756c 7428 2727 2727 2920 7d7d  default('''') }}
│ │ │ -00219140: 270a 2020 2020 6f70 7473 3a20 277b 7b20  '.    opts: '{{ 
│ │ │ -00219150: 6d6f 756e 745f 696e 666f 2e6f 7074 696f  mount_info.optio
│ │ │ -00219160: 6e73 207c 2064 6566 6175 6c74 2827 2727  ns | default('''
│ │ │ -00219170: 2729 207d 7d27 0a20 2020 2073 7461 7465  ') }}'.    state
│ │ │ -00219180: 3a20 6d6f 756e 7465 640a 2020 2020 6673  : mounted.    fs
│ │ │ -00219190: 7479 7065 3a20 277b 7b20 6d6f 756e 745f  type: '{{ mount_
│ │ │ -002191a0: 696e 666f 2e66 7374 7970 6520 7c20 6465  info.fstype | de
│ │ │ -002191b0: 6661 756c 7428 2727 2727 2920 7d7d 270a  fault('''') }}'.
│ │ │ -002191c0: 2020 7265 6769 7374 6572 3a20 6d6f 756e    register: moun
│ │ │ -002191d0: 745f 7265 7375 6c74 0a20 2066 6169 6c65  t_result.  faile
│ │ │ -002191e0: 645f 7768 656e 3a0a 2020 2d20 6d6f 756e  d_when:.  - moun
│ │ │ -002191f0: 745f 7265 7375 6c74 2069 7320 6661 696c  t_result is fail
│ │ │ -00219200: 6564 0a20 202d 2027 2727 7461 7267 6574  ed.  - '''target
│ │ │ -00219210: 2069 7320 6275 7379 2727 206e 6f74 2069   is busy'' not i
│ │ │ -00219220: 6e20 286d 6f75 6e74 5f72 6573 756c 742e  n (mount_result.
│ │ │ -00219230: 6d73 6720 7c20 6465 6661 756c 7428 2727  msg | default(''
│ │ │ -00219240: 2727 2929 270a 2020 2d20 2727 2761 6c72  ''))'.  - '''alr
│ │ │ -00219250: 6561 6479 206d 6f75 6e74 6564 2727 206e  eady mounted'' n
│ │ │ -00219260: 6f74 2069 6e20 286d 6f75 6e74 5f72 6573  ot in (mount_res
│ │ │ -00219270: 756c 742e 6d73 6720 7c20 6465 6661 756c  ult.msg | defaul
│ │ │ -00219280: 7428 2727 2727 2929 270a 2020 7768 656e  t(''''))'.  when
│ │ │ -00219290: 3a0a 2020 2d20 2820 6e6f 7420 2820 226b  :.  - ( not ( "k
│ │ │ -002192a0: 6572 6e65 6c22 2069 6e20 616e 7369 626c  ernel" in ansibl
│ │ │ -002192b0: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -002192c0: 2061 6e64 2022 626f 6f74 6322 2069 6e20   and "bootc" in 
│ │ │ -002192d0: 616e 7369 626c 655f 6661 6374 732e 7061  ansible_facts.pa
│ │ │ -002192e0: 636b 6167 6573 0a20 2020 2061 6e64 206e  ckages.    and n
│ │ │ -002192f0: 6f74 2022 6f70 656e 7368 6966 742d 6b75  ot "openshift-ku
│ │ │ -00219300: 6265 6c65 7422 2069 6e20 616e 7369 626c  belet" in ansibl
│ │ │ -00219310: 655f 6661 6374 732e 7061 636b 6167 6573  e_facts.packages
│ │ │ -00219320: 2061 6e64 2022 6f73 7472 6565 2220 696e   and "ostree" in
│ │ │ -00219330: 2061 6e73 6962 6c65 5f70 726f 635f 636d   ansible_proc_cm
│ │ │ -00219340: 646c 696e 650a 2020 2020 2920 616e 6420  dline.    ) and 
│ │ │ -00219350: 6e6f 7420 2820 616e 7369 626c 655f 7669  not ( ansible_vi
│ │ │ -00219360: 7274 7561 6c69 7a61 7469 6f6e 5f74 7970  rtualization_typ
│ │ │ -00219370: 6520 696e 205b 2264 6f63 6b65 7222 2c20  e in ["docker", 
│ │ │ -00219380: 226c 7863 222c 2022 6f70 656e 767a 222c  "lxc", "openvz",
│ │ │ -00219390: 2022 706f 646d 616e 222c 0a20 2020 2022   "podman",.    "
│ │ │ -002193a0: 636f 6e74 6169 6e65 7222 5d20 2920 290a  container"] ) ).
│ │ │ -002193b0: 2020 2d20 6d6f 756e 745f 696e 666f 2069    - mount_info i
│ │ │ -002193c0: 7320 6465 6669 6e65 640a 2020 2d20 2864  s defined.  - (d
│ │ │ -002193d0: 6576 6963 655f 6e61 6d65 2e73 7464 6f75  evice_name.stdou
│ │ │ -002193e0: 7420 6973 2064 6566 696e 6564 2061 6e64  t is defined and
│ │ │ -002193f0: 2028 6465 7669 6365 5f6e 616d 652e 7374   (device_name.st
│ │ │ -00219400: 646f 7574 207c 206c 656e 6774 6820 2667  dout | length &g
│ │ │ -00219410: 743b 2030 2929 206f 7220 2822 2d2d 6673  t; 0)) or ("--fs
│ │ │ -00219420: 7461 6222 0a20 2020 207c 206c 656e 6774  tab".    | lengt
│ │ │ -00219430: 6820 3d3d 2030 290a 2020 7461 6773 3a0a  h == 0).  tags:.
│ │ │ -00219440: 2020 2d20 4e49 5354 2d38 3030 2d35 332d    - NIST-800-53-
│ │ │ -00219450: 434d 2d36 2862 290a 2020 2d20 636f 6e66  CM-6(b).  - conf
│ │ │ -00219460: 6967 7572 655f 7374 7261 7465 6779 0a20  igure_strategy. 
│ │ │ -00219470: 202d 2068 6967 685f 6469 7372 7570 7469   - high_disrupti
│ │ │ -00219480: 6f6e 0a20 202d 206c 6f77 5f63 6f6d 706c  on.  - low_compl
│ │ │ -00219490: 6578 6974 790a 2020 2d20 6d65 6469 756d  exity.  - medium
│ │ │ -002194a0: 5f73 6576 6572 6974 790a 2020 2d20 6d6f  _severity.  - mo
│ │ │ -002194b0: 756e 745f 6f70 7469 6f6e 5f68 6f6d 655f  unt_option_home_
│ │ │ -002194c0: 6e6f 6578 6563 0a20 202d 206e 6f5f 7265  noexec.  - no_re
│ │ │ -002194d0: 626f 6f74 5f6e 6565 6465 640a 3c2f 636f  boot_needed.
< │ │ │ -002194f0: 6120 636c 6173 733d 2262 746e 2062 746e a class="btn btn │ │ │ -00219500: 2d73 7563 6365 7373 2220 6461 7461 2d74 -success" data-t │ │ │ -00219510: 6f67 676c 653d 2263 6f6c 6c61 7073 6522 oggle="collapse" │ │ │ -00219520: 2064 6174 612d 7461 7267 6574 3d22 2369 data-target="#i │ │ │ -00219530: 6436 3736 2220 7461 6269 6e64 6578 3d22 d676" tabindex=" │ │ │ -00219540: 3022 2072 6f6c 653d 2262 7574 746f 6e22 0" role="button" │ │ │ -00219550: 2061 7269 612d 6578 7061 6e64 6564 3d22 aria-expanded=" │ │ │ -00219560: 6661 6c73 6522 2074 6974 6c65 3d22 4163 false" title="Ac │ │ │ -00219570: 7469 7661 7465 2074 6f20 7265 7665 616c tivate to reveal │ │ │ -00219580: 2220 6872 6566 3d22 2321 223e 5265 6d65 " href="#!">Reme │ │ │ -00219590: 6469 6174 696f 6e20 5368 656c 6c20 7363 diation Shell sc │ │ │ -002195a0: 7269 7074 20e2 87b2 3c2f 613e 3c62 723e ript ...
│ │ │ -002195b0: 3c64 6976 2063 6c61 7373 3d22 7061 6e65
│ │ │ -002195e0: 3c74 6162 6c65 2063 6c61 7373 3d22 7461
│ │ │ -00218220: 436f 6d70 6c65 7869 7479 3a3c 2f74 683e Complexity:low
Disrupt │ │ │ -00218250: 696f 6e3a 3c2f 7468 3e3c 7464 3e68 6967 ion:hig │ │ │ -00218260: 683c 2f74 643e 3c2f 7472 3e3c 7472 3e3c h
Strate │ │ │ -002182a0: 6779 3a3c 2f74 683e 3c74 643e 636f 6e66 gy:conf │ │ │ -002182b0: 6967 7572 653c 2f74 643e 3c2f 7472 3e3c igure
Reboot │ │ │ -00219630: 3a3c 2f74 683e 3c74 643e 6661 6c73 653c :false< │ │ │ -00219640: 2f74 643e 3c2f 7472 3e3c 2f74 6162 6c65 /td>
# Re
│ │ │ -00219660: 6d65 6469 6174 696f 6e20 6973 2061 7070  mediation is app
│ │ │ -00219670: 6c69 6361 626c 6520 6f6e 6c79 2069 6e20  licable only in 
│ │ │ -00219680: 6365 7274 6169 6e20 706c 6174 666f 726d  certain platform
│ │ │ -00219690: 730a 6966 2028 2021 2028 207b 2072 706d  s.if ( ! ( { rpm
│ │ │ -002196a0: 202d 2d71 7569 6574 202d 7120 6b65 726e   --quiet -q kern
│ │ │ -002196b0: 656c 203b 7d20 2661 6d70 3b26 616d 703b  el ;} &&
│ │ │ -002196c0: 207b 2072 706d 202d 2d71 7569 6574 202d   { rpm --quiet -
│ │ │ -002196d0: 7120 626f 6f74 6320 3b7d 2026 616d 703b  q bootc ;} &
│ │ │ -002196e0: 2661 6d70 3b20 7b20 2120 7270 6d20 2d2d  & { ! rpm --
│ │ │ -002196f0: 7175 6965 7420 2d71 206f 7065 6e73 6869  quiet -q openshi
│ │ │ -00219700: 6674 2d6b 7562 656c 6574 203b 7d20 2661  ft-kubelet ;} &a
│ │ │ -00219710: 6d70 3b26 616d 703b 2028 5b20 2d66 202f  mp;& ([ -f /
│ │ │ -00219720: 7275 6e2f 6f73 7472 6565 2d62 6f6f 7465  run/ostree-boote
│ │ │ -00219730: 6420 5d20 7c7c 205b 202d 4c20 2f6f 7374  d ] || [ -L /ost
│ │ │ -00219740: 7265 6520 5d29 2029 2026 616d 703b 2661  ree ]) ) &&a
│ │ │ -00219750: 6d70 3b20 2120 2820 5b20 2d66 202f 2e64  mp; ! ( [ -f /.d
│ │ │ -00219760: 6f63 6b65 7265 6e76 205d 207c 7c20 5b20  ockerenv ] || [ 
│ │ │ -00219770: 2d66 202f 7275 6e2f 2e63 6f6e 7461 696e  -f /run/.contain
│ │ │ -00219780: 6572 656e 7620 5d20 2920 293b 2074 6865  erenv ] ) ); the
│ │ │ -00219790: 6e0a 0a66 756e 6374 696f 6e20 7065 7266  n..function perf
│ │ │ -002197a0: 6f72 6d5f 7265 6d65 6469 6174 696f 6e20  orm_remediation 
│ │ │ -002197b0: 7b0a 0a20 2020 200a 2020 2020 2020 2020  {..    .        
│ │ │ -002197c0: 2320 7468 6520 6d6f 756e 7420 706f 696e  # the mount poin
│ │ │ -002197d0: 7420 2f68 6f6d 6520 6861 7320 746f 2062  t /home has to b
│ │ │ -002197e0: 6520 6465 6669 6e65 6420 696e 202f 6574  e defined in /et
│ │ │ -002197f0: 632f 6673 7461 620a 2020 2020 2020 2020  c/fstab.        
│ │ │ -00219800: 2320 6265 666f 7265 2074 6869 7320 7265  # before this re
│ │ │ -00219810: 6d65 6469 6174 696f 6e20 6361 6e20 6265  mediation can be
│ │ │ -00219820: 2065 7865 6375 7465 642e 2049 6e20 6361   executed. In ca
│ │ │ -00219830: 7365 2069 7420 6973 206e 6f74 2064 6566  se it is not def
│ │ │ -00219840: 696e 6564 2c20 7468 650a 2020 2020 2020  ined, the.      
│ │ │ -00219850: 2020 2320 7265 6d65 6469 6174 696f 6e20    # remediation 
│ │ │ -00219860: 6162 6f72 7473 2061 6e64 206e 6f20 6368  aborts and no ch
│ │ │ -00219870: 616e 6765 7320 7265 6761 7264 696e 6720  anges regarding 
│ │ │ -00219880: 7468 6520 6d6f 756e 7420 706f 696e 7420  the mount point 
│ │ │ -00219890: 6172 6520 646f 6e65 2e0a 2020 2020 2020  are done..      
│ │ │ -002198a0: 2020 6d6f 756e 745f 706f 696e 745f 6d61    mount_point_ma
│ │ │ -002198b0: 7463 685f 7265 6765 7870 3d22 2428 7072  tch_regexp="$(pr
│ │ │ -002198c0: 696e 7466 2022 5e5b 5b3a 7370 6163 653a  intf "^[[:space:
│ │ │ -002198d0: 5d5d 2a5b 5e23 5d2e 2a5b 5b3a 7370 6163  ]]*[^#].*[[:spac
│ │ │ -002198e0: 653a 5d5d 2573 5b5b 3a73 7061 6365 3a5d  e:]]%s[[:space:]
│ │ │ -002198f0: 5d22 2022 2f68 6f6d 6522 2922 0a0a 2020  ]" "/home")"..  
│ │ │ -00219900: 2020 6772 6570 2022 246d 6f75 6e74 5f70    grep "$mount_p
│ │ │ -00219910: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ -00219920: 7022 202d 7120 2f65 7463 2f66 7374 6162  p" -q /etc/fstab
│ │ │ -00219930: 205c 0a20 2020 2020 2020 207c 7c20 7b20   \.        || { 
│ │ │ -00219940: 6563 686f 2022 5468 6520 6d6f 756e 7420  echo "The mount 
│ │ │ -00219950: 706f 696e 7420 272f 686f 6d65 2720 6973  point '/home' is
│ │ │ -00219960: 206e 6f74 2065 7665 6e20 696e 202f 6574   not even in /et
│ │ │ -00219970: 632f 6673 7461 622c 2073 6f20 7765 2063  c/fstab, so we c
│ │ │ -00219980: 616e 2774 2073 6574 2075 7020 6d6f 756e  an't set up moun
│ │ │ -00219990: 7420 6f70 7469 6f6e 7322 2026 6774 3b26  t options" >&
│ │ │ -002199a0: 616d 703b 323b 0a20 2020 2020 2020 2020  amp;2;.         
│ │ │ -002199b0: 2020 2020 2020 2065 6368 6f20 224e 6f74         echo "Not
│ │ │ -002199c0: 2072 656d 6564 6961 7469 6e67 2c20 6265   remediating, be
│ │ │ -002199d0: 6361 7573 6520 7468 6572 6520 6973 206e  cause there is n
│ │ │ -002199e0: 6f20 7265 636f 7264 206f 6620 2f68 6f6d  o record of /hom
│ │ │ -002199f0: 6520 696e 202f 6574 632f 6673 7461 6222  e in /etc/fstab"
│ │ │ -00219a00: 2026 6774 3b26 616d 703b 323b 2072 6574   >&2; ret
│ │ │ -00219a10: 7572 6e20 313b 207d 0a20 2020 200a 0a0a  urn 1; }.    ...
│ │ │ -00219a20: 2020 2020 6d6f 756e 745f 706f 696e 745f      mount_point_
│ │ │ -00219a30: 6d61 7463 685f 7265 6765 7870 3d22 2428  match_regexp="$(
│ │ │ -00219a40: 7072 696e 7466 2022 5e5b 5b3a 7370 6163  printf "^[[:spac
│ │ │ -00219a50: 653a 5d5d 2a5b 5e23 5d2e 2a5b 5b3a 7370  e:]]*[^#].*[[:sp
│ │ │ -00219a60: 6163 653a 5d5d 2573 5b5b 3a73 7061 6365  ace:]]%s[[:space
│ │ │ -00219a70: 3a5d 5d22 202f 686f 6d65 2922 0a0a 2020  :]]" /home)"..  
│ │ │ -00219a80: 2020 2320 4966 2074 6865 206d 6f75 6e74    # If the mount
│ │ │ -00219a90: 2070 6f69 6e74 2069 7320 6e6f 7420 696e   point is not in
│ │ │ -00219aa0: 202f 6574 632f 6673 7461 622c 2067 6574   /etc/fstab, get
│ │ │ -00219ab0: 2070 7265 7669 6f75 7320 6d6f 756e 7420   previous mount 
│ │ │ -00219ac0: 6f70 7469 6f6e 7320 6672 6f6d 202f 6574  options from /et
│ │ │ -00219ad0: 632f 6d74 6162 0a20 2020 2069 6620 2120  c/mtab.    if ! 
│ │ │ -00219ae0: 6772 6570 202d 7120 2224 6d6f 756e 745f  grep -q "$mount_
│ │ │ -00219af0: 706f 696e 745f 6d61 7463 685f 7265 6765  point_match_rege
│ │ │ -00219b00: 7870 2220 2f65 7463 2f66 7374 6162 3b20  xp" /etc/fstab; 
│ │ │ -00219b10: 7468 656e 0a20 2020 2020 2020 2023 2072  then.        # r
│ │ │ -00219b20: 756e 7469 6d65 206f 7074 7320 7769 7468  untime opts with
│ │ │ -00219b30: 6f75 7420 736f 6d65 2061 7574 6f6d 6174  out some automat
│ │ │ -00219b40: 6963 206b 6572 6e65 6c2f 7573 6572 7370  ic kernel/usersp
│ │ │ -00219b50: 6163 652d 6164 6465 6420 6465 6661 756c  ace-added defaul
│ │ │ -00219b60: 7473 0a20 2020 2020 2020 2070 7265 7669  ts.        previ
│ │ │ -00219b70: 6f75 735f 6d6f 756e 745f 6f70 7473 3d24  ous_mount_opts=$
│ │ │ -00219b80: 2867 7265 7020 2224 6d6f 756e 745f 706f  (grep "$mount_po
│ │ │ -00219b90: 696e 745f 6d61 7463 685f 7265 6765 7870  int_match_regexp
│ │ │ -00219ba0: 2220 2f65 7463 2f6d 7461 6220 7c20 6865  " /etc/mtab | he
│ │ │ -00219bb0: 6164 202d 3120 7c20 2061 776b 2027 7b70  ad -1 |  awk '{p
│ │ │ -00219bc0: 7269 6e74 2024 347d 2720 5c0a 2020 2020  rint $4}' \.    
│ │ │ -00219bd0: 2020 2020 2020 2020 2020 2020 2020 2020                  
│ │ │ -00219be0: 7c20 7365 6420 2d45 2022 732f 2872 777c  | sed -E "s/(rw|
│ │ │ -00219bf0: 6465 6661 756c 7473 7c73 6563 6c61 6265  defaults|seclabe
│ │ │ -00219c00: 6c7c 6e6f 6578 6563 2928 2c7c 2429 2f2f  l|noexec)(,|$)//
│ │ │ -00219c10: 673b 732f 2c24 2f2f 2229 0a20 2020 2020  g;s/,$//").     
│ │ │ -00219c20: 2020 205b 2022 2470 7265 7669 6f75 735f     [ "$previous_
│ │ │ -00219c30: 6d6f 756e 745f 6f70 7473 2220 5d20 2661  mount_opts" ] &a
│ │ │ -00219c40: 6d70 3b26 616d 703b 2070 7265 7669 6f75  mp;& previou
│ │ │ -00219c50: 735f 6d6f 756e 745f 6f70 7473 2b3d 222c  s_mount_opts+=",
│ │ │ -00219c60: 220a 2020 2020 2020 2020 2320 496e 2069  ".        # In i
│ │ │ -00219c70: 736f 3936 3630 2066 696c 6573 7973 7465  so9660 filesyste
│ │ │ -00219c80: 6d73 206d 7461 6220 636f 756c 6420 6465  ms mtab could de
│ │ │ -00219c90: 7363 7269 6265 2061 2022 626c 6f63 6b73  scribe a "blocks
│ │ │ -00219ca0: 697a 6522 2076 616c 7565 2c20 7468 6973  ize" value, this
│ │ │ -00219cb0: 2073 686f 756c 6420 6265 2072 6566 6c65   should be refle
│ │ │ -00219cc0: 6374 6564 2069 6e0a 2020 2020 2020 2020  cted in.        
│ │ │ -00219cd0: 2320 6673 7461 6220 6173 2022 626c 6f63  # fstab as "bloc
│ │ │ -00219ce0: 6b22 2e20 2054 6865 206e 6578 7420 7661  k".  The next va
│ │ │ -00219cf0: 7269 6162 6c65 2069 7320 746f 2073 6174  riable is to sat
│ │ │ -00219d00: 6973 6679 2073 6865 6c6c 6368 6563 6b20  isfy shellcheck 
│ │ │ -00219d10: 5343 3230 3530 2e0a 2020 2020 2020 2020  SC2050..        
│ │ │ -00219d20: 6673 5f74 7970 653d 2222 0a20 2020 2020  fs_type="".     
│ │ │ -00219d30: 2020 2069 6620 5b20 2022 2466 735f 7479     if [  "$fs_ty
│ │ │ -00219d40: 7065 2220 3d3d 2022 6973 6f39 3636 3022  pe" == "iso9660"
│ │ │ -00219d50: 205d 203b 2074 6865 6e0a 2020 2020 2020   ] ; then.      
│ │ │ -00219d60: 2020 2020 2020 7072 6576 696f 7573 5f6d        previous_m
│ │ │ -00219d70: 6f75 6e74 5f6f 7074 733d 2428 7365 6420  ount_opts=$(sed 
│ │ │ -00219d80: 2773 2f62 6c6f 636b 7369 7a65 3d2f 626c  's/blocksize=/bl
│ │ │ -00219d90: 6f63 6b3d 2f27 2026 6c74 3b26 6c74 3b26  ock=/' <<&
│ │ │ -00219da0: 6c74 3b20 2224 7072 6576 696f 7573 5f6d  lt; "$previous_m
│ │ │ -00219db0: 6f75 6e74 5f6f 7074 7322 290a 2020 2020  ount_opts").    
│ │ │ -00219dc0: 2020 2020 6669 0a20 2020 2020 2020 2065      fi.        e
│ │ │ -00219dd0: 6368 6f20 2220 2f68 6f6d 6520 2064 6566  cho " /home  def
│ │ │ -00219de0: 6175 6c74 732c 247b 7072 6576 696f 7573  aults,${previous
│ │ │ -00219df0: 5f6d 6f75 6e74 5f6f 7074 737d 6e6f 6578  _mount_opts}noex
│ │ │ -00219e00: 6563 2030 2030 2220 2667 743b 2667 743b  ec 0 0" >>
│ │ │ -00219e10: 202f 6574 632f 6673 7461 620a 2020 2020   /etc/fstab.    
│ │ │ -00219e20: 2320 4966 2074 6865 206d 6f75 6e74 5f6f  # If the mount_o
│ │ │ -00219e30: 7074 206f 7074 696f 6e20 6973 206e 6f74  pt option is not
│ │ │ -00219e40: 2061 6c72 6561 6479 2069 6e20 7468 6520   already in the 
│ │ │ -00219e50: 6d6f 756e 7420 706f 696e 7427 7320 2f65  mount point's /e
│ │ │ -00219e60: 7463 2f66 7374 6162 2065 6e74 7279 2c20  tc/fstab entry, 
│ │ │ -00219e70: 6164 6420 6974 0a20 2020 2065 6c69 6620  add it.    elif 
│ │ │ -00219e80: 2120 6772 6570 2022 246d 6f75 6e74 5f70  ! grep "$mount_p
│ │ │ -00219e90: 6f69 6e74 5f6d 6174 6368 5f72 6567 6578  oint_match_regex
│ │ │ -00219ea0: 7022 202f 6574 632f 6673 7461 6220 7c20  p" /etc/fstab | 
│ │ │ -00219eb0: 6772 6570 202d 7120 226e 6f65 7865 6322  grep -q "noexec"
│ │ │ -00219ec0: 3b20 7468 656e 0a20 2020 2020 2020 2070  ; then.        p
│ │ │ -00219ed0: 7265 7669 6f75 735f 6d6f 756e 745f 6f70  revious_mount_op
│ │ │ -00219ee0: 7473 3d24 2867 7265 7020 2224 6d6f 756e  ts=$(grep "$moun
│ │ │ -00219ef0: 745f 706f 696e 745f 6d61 7463 685f 7265  t_point_match_re
│ │ │ -00219f00: 6765 7870 2220 2f65 7463 2f6

TRUNCATED DUE TO SIZE LIMIT: 10485760 bytes