go.mondoo.com/cnquery@v0.0.0-20231005093811-59568235f6ea/providers/os/resources/sshd/params_test.go (about)

     1  // Copyright (c) Mondoo, Inc.
     2  // SPDX-License-Identifier: BUSL-1.1
     3  
     4  package sshd
     5  
     6  import (
     7  	"os"
     8  	"testing"
     9  
    10  	"github.com/stretchr/testify/assert"
    11  	"github.com/stretchr/testify/require"
    12  )
    13  
    14  func TestSSHParser(t *testing.T) {
    15  	raw, err := os.ReadFile("./testdata/sshd_config")
    16  	require.NoError(t, err)
    17  
    18  	sshParams, err := Params(string(raw))
    19  	if err != nil {
    20  		t.Fatalf("cannot request file %v", err)
    21  	}
    22  
    23  	assert.NotNil(t, sshParams, "params are not nil")
    24  
    25  	// check result for multiple host-keys
    26  	assert.Equal(t, "/etc/ssh/ssh_host_rsa_key,/etc/ssh/ssh_host_ecdsa_key,/etc/ssh/ssh_host_ed25519_key", sshParams["HostKey"])
    27  	assert.Equal(t, "yes", sshParams["X11Forwarding"])
    28  	assert.Equal(t, "60", sshParams["LoginGraceTime"])
    29  }
    30  
    31  func TestSSHParseCaseInsensitive(t *testing.T) {
    32  	raw, err := os.ReadFile("./testdata/case_insensitive")
    33  	require.NoError(t, err)
    34  
    35  	sshParams, err := Params(string(raw))
    36  	if err != nil {
    37  		t.Fatalf("cannot request file %v", err)
    38  	}
    39  
    40  	assert.NotNil(t, sshParams, "params are not nil")
    41  
    42  	assert.Equal(t, "22", sshParams["Port"])
    43  	assert.Equal(t, "any", sshParams["AddressFamily"])
    44  	assert.Equal(t, "0.0.0.0", sshParams["ListenAddress"])
    45  }