enable https and key handling

- add key generation and import for warewulfd
- add https port to warewulfd
- configuration optiions for port and

keys
This commit is contained in:
Christian Goll
2025-12-01 16:15:16 +01:00
committed by Jonathon Anderson
parent 856223dadd
commit a1c11db8cc
10 changed files with 429 additions and 0 deletions

View File

@@ -42,7 +42,9 @@ func (conf TFTPConf) Enabled() bool {
// BaseConf.
type WarewulfConf struct {
Port int `yaml:"port,omitempty" default:"9873"`
SecurePort int `yaml:"secure port,omitempty" default:"9874"`
SecureP *bool `yaml:"secure,omitempty" default:"true"`
EnableHttpsP *bool `yaml:"enable https,omitempty" default:"false"`
UpdateInterval int `yaml:"update interval,omitempty" default:"60"`
AutobuildOverlaysP *bool `yaml:"autobuild overlays,omitempty" default:"true"`
EnableHostOverlayP *bool `yaml:"host overlay,omitempty" default:"true"`
@@ -54,6 +56,10 @@ func (conf WarewulfConf) Secure() bool {
return util.BoolP(conf.SecureP)
}
func (conf WarewulfConf) EnableHttps() bool {
return util.BoolP(conf.EnableHttpsP)
}
func (conf WarewulfConf) AutobuildOverlays() bool {
return util.BoolP(conf.AutobuildOverlaysP)
}

View File

@@ -17,10 +17,12 @@ func TestParse(t *testing.T) {
result: `
warewulf:
autobuild overlays: true
enable https: false
grubboot: false
host overlay: true
port: 9873
secure: true
secure port: 9874
update interval: 60
nfs:
enabled: true
@@ -63,10 +65,12 @@ network: 192.168.0.0
netmask: 255.255.255.0
warewulf:
autobuild overlays: true
enable https: false
grubboot: false
host overlay: true
port: 9873
secure: true
secure port: 9874
update interval: 60
nfs:
enabled: true
@@ -111,10 +115,12 @@ network: 192.168.0.0
netmask: 255.255.0.0
warewulf:
autobuild overlays: true
enable https: false
grubboot: false
host overlay: true
port: 9873
secure: true
secure port: 9874
update interval: 60
nfs:
enabled: true
@@ -156,10 +162,12 @@ ipaddr6: "2001:db8::1"
prefixlen6: "64"
warewulf:
autobuild overlays: true
enable https: false
grubboot: false
host overlay: true
port: 9873
secure: true
secure port: 9874
update interval: 60
nfs:
enabled: true
@@ -230,10 +238,12 @@ netmask: 255.255.255.0
network: 192.168.200.0
warewulf:
autobuild overlays: true
enable https: false
grubboot: false
host overlay: true
port: 9873
secure: false
secure port: 9874
update interval: 60
nfs:
enabled: true