content: # File contents taken from a Fedora 36 Workstation installation
  # with some manual extra files to allow for other test cases
  
  [files."/etc/ssh/sshd_config.d"]
  content = """50-redhat.conf"""
  stat.isdir = true
  
  [files."/etc/ssh/sshd_config"]
  content = """#       $OpenBSD: sshd_config,v 1.104 2021/07/02 05:11:21 dtucker Exp $
                                           
  # This is the sshd server system-wide configuration file.  See
  # sshd_config(5) for more information.
                                           
  # This sshd was compiled with PATH=/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin
                                           
  # The strategy used for options in the default sshd_config shipped with
  # OpenSSH is to specify options with their default value where
  # possible, but leave them commented.  Uncommented options override the
  # default value.                                                                  
                                           
  # To modify the system-wide sshd configuration, create a  *.conf  file under
  #  /etc/ssh/sshd_config.d/  which will be automatically included below
  Include /etc/ssh/sshd_config.d/*.conf
                                           
  # If you want to change the port on a SELinux system, you have to tell
  # SELinux about this change.                                                      
  # semanage port -a -t ssh_port_t -p tcp #PORTNUMBER
  #                                        
  #Port 22          
  #AddressFamily any                 
  #ListenAddress 0.0.0.0                                                            
  #ListenAddress ::         
                                                                                    
  #HostKey /etc/ssh/ssh_host_rsa_key
  #HostKey /etc/ssh/ssh_host_ecdsa_key     
  #HostKey /etc/ssh/ssh_host_ed25519_key
                                           
  # Ciphers and keying           
  #RekeyLimit default none  
  
  
  # Logging
  #SyslogFacility AUTH
  #LogLevel INFO
  
  # Authentication:
  
  #LoginGraceTime 2m
  #PermitRootLogin prohibit-password
  #StrictModes yes
  #MaxAuthTries 6
  #MaxSessions 10
  
  #PubkeyAuthentication yes
  
  # The default is to check both .ssh/authorized_keys and .ssh/authorized_keys2
  # but this is overridden so installations will only check .ssh/authorized_keys
  AuthorizedKeysFile      .ssh/authorized_keys
  
  #AuthorizedPrincipalsFile none
  
  #AuthorizedKeysCommand none
  #AuthorizedKeysCommandUser nobody
  
  # For this to work you will also need host keys in /etc/ssh/ssh_known_hosts
  #HostbasedAuthentication no
  # Change to yes if you don't trust ~/.ssh/known_hosts for
  # HostbasedAuthentication
  #IgnoreUserKnownHosts no
  # Don't read the user's ~/.rhosts and ~/.shosts files
  #IgnoreRhosts yes
  
  # To disable tunneled clear text passwords, change to no here!
  #PasswordAuthentication yes
  #PermitEmptyPasswords no
  
  # Change to no to disable s/key passwords 
  #KbdInteractiveAuthentication yes
  
  # Kerberos options
  #KerberosAuthentication no
  #KerberosOrLocalPasswd yes
  #KerberosTicketCleanup yes
  #KerberosGetAFSToken no
  #KerberosUseKuserok yes
  
  # GSSAPI options
  #GSSAPIAuthentication no
  #GSSAPICleanupCredentials yes
  #GSSAPIStrictAcceptorCheck yes
  #GSSAPIKeyExchange no
  #GSSAPIEnablek5users no
  
  # Set this to 'yes' to enable PAM authentication, account processing,
  # and session processing. If this is enabled, PAM authentication will
  # be allowed through the KbdInteractiveAuthentication and
  # PasswordAuthentication.  Depending on your PAM configuration,
  # PAM authentication via KbdInteractiveAuthentication may bypass
  # the setting of "PermitRootLogin without-password".
  # If you just want the PAM account and session checks to run without
  # PAM authentication, then enable this but set PasswordAuthentication
  # and KbdInteractiveAuthentication to 'no'.
  # WARNING: 'UsePAM no' is not supported in Fedora and may cause several
  # problems.
  #UsePAM no
  
  #AllowAgentForwarding yes
  #AllowTcpForwarding yes
  #GatewayPorts no
  #X11Forwarding no
  #X11DisplayOffset 10
  #X11UseLocalhost yes
  #PermitTTY yes
  #PrintMotd yes
  #PrintLastLog yes
  #TCPKeepAlive yes
  #PermitUserEnvironment no
  #Compression delayed
  #ClientAliveInterval 0
  #ClientAliveCountMax 3
  #UseDNS no
  #PidFile /var/run/sshd.pid
  #MaxStartups 10:30:100
  #PermitTunnel no
  #ChrootDirectory none
  #VersionAddendum none
  
  # no default banner path
  #Banner none
  
  # override default of no subsystems
  Subsystem       sftp    /usr/libexec/openssh/sftp-server
  
  # Example of overriding settings on a per-user basis
  #Match User anoncvs
  #       X11Forwarding no
  #       AllowTcpForwarding no
  #       PermitTTY no
  #       ForceCommand cvs server
  
  """
  
  [files."/etc/ssh/sshd_config.d/50-redhat.conf"]
  content = """# This system is following system-wide crypto policy. The changes to
  # crypto properties (Ciphers, MACs, ...) will not have any effect in
  # this or following included files. To override some configuration option,
  # write it before this block or include it before this file.
  # Please, see manual pages for update-crypto-policies(8) and sshd_config(5).
  Include /etc/crypto-policies/back-ends/opensshserver.config made-up-file.conf
  
  SyslogFacility AUTHPRIV
  
  ChallengeResponseAuthentication no
  
  GSSAPIAuthentication yes
  GSSAPICleanupCredentials no
  
  UsePAM yes
  
  X11Forwarding yes
  
  # It is recommended to use pam_motd in /etc/pam.d/sshd instead of PrintMotd,
  # as it is more configurable and versatile than the built-in version.
  PrintMotd no
  
  # Accept locale-related environment variables
  AcceptEnv LANG LC_CTYPE LC_NUMERIC LC_TIME LC_COLLATE LC_MONETARY LC_MESSAGES
  AcceptEnv LC_PAPER LC_NAME LC_ADDRESS LC_TELEPHONE LC_MEASUREMENT
  AcceptEnv LC_IDENTIFICATION LC_ALL LANGUAGE
  AcceptEnv XMODIFIERS
  
  """
  
  [files."/etc/ssh/made-up-file.conf"]
  content = """Port 35
  Include directory-with-files
  """
  
  [files."/etc/ssh/directory-with-files"]
  stat.isdir = true
  content = """maxsessions
  """
  
  [files."/etc/ssh/directory-with-files/maxsessions"]
  content = """MaxSessions 99"""
  
  [files."/etc/crypto-policies/back-ends/opensshserver.config"]
  content = """Ciphers aes256-gcm@openssh.com,chacha20-poly1305@openssh.com,aes256-ctr,aes128-gcm@openssh.com,aes128-ctr
  MACs hmac-sha2-256-etm@openssh.com,hmac-sha1-etm@openssh.com,umac-128-etm@openssh.com,hmac-sha2-512-etm@openssh.com,hmac-sha2-256,hmac-sha1,umac-128@openssh.com,hmac-sha2-512
  GSSAPIKexAlgorithms gss-curve25519-sha256-,gss-nistp256-sha256-,gss-group14-sha256-,gss-group16-sha512-
  KexAlgorithms curve25519-sha256,curve25519-sha256@libssh.org,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group-exchange-sha256,diffie-hellman-group14-sha256,diffie-hellman-group16-sha512,diffie-hellman-group18-sha512
  HostKeyAlgorithms ecdsa-sha2-nistp256,ecdsa-sha2-nistp256-cert-v01@openssh.com,sk-ecdsa-sha2-nistp256@openssh.com,sk-ecdsa-sha2-nistp256-cert-v01@openssh.com,ecdsa-sha2-nistp384,ecdsa-sha2-nistp384-cert-v01@openssh.com,ecdsa-sha2-nistp521,ecdsa-sha2-nistp521-cert-v01@openssh.com,ssh-ed25519,ssh-ed25519-cert-v01@openssh.com,sk-ssh-ed25519@openssh.com,sk-ssh-ed25519-cert-v01@openssh.com,rsa-sha2-256,rsa-sha2-256-cert-v01@openssh.com,rsa-sha2-512,rsa-sha2-512-cert-v01@openssh.com
  PubkeyAcceptedAlgorithms ecdsa-sha2-nistp256,ecdsa-sha2-nistp256-cert-v01@openssh.com,sk-ecdsa-sha2-nistp256@openssh.com,sk-ecdsa-sha2-nistp256-cert-v01@openssh.com,ecdsa-sha2-nistp384,ecdsa-sha2-nistp384-cert-v01@openssh.com,ecdsa-sha2-nistp521,ecdsa-sha2-nistp521-cert-v01@openssh.com,ssh-ed25519,ssh-ed25519-cert-v01@openssh.com,sk-ssh-ed25519@openssh.com,sk-ssh-ed25519-cert-v01@openssh.com,rsa-sha2-256,rsa-sha2-256-cert-v01@openssh.com,rsa-sha2-512,rsa-sha2-512-cert-v01@openssh.com
  CASignatureAlgorithms ecdsa-sha2-nistp256,sk-ecdsa-sha2-nistp256@openssh.com,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521,ssh-ed25519,sk-ssh-ed25519@openssh.com,rsa-sha2-256,rsa-sha2-512
  """
  