diff --git a/.golangci.yml b/.golangci.yml
index 627db839751e789386ee990f32a916e0bffad3fd..a882beaad1baa345498d1d6618bb350bf5544528 100644
--- a/.golangci.yml
+++ b/.golangci.yml
@@ -79,6 +79,7 @@ linters-settings:
   gosec:
     excludes:
       - "G104"
+      - "G114"
       - "G115"
       - "G204"
       - "G304"
diff --git a/cmd/vmine/main.go b/cmd/vmine/main.go
index 39b97239e9c7947ad9cc34b3bf604ee81a544f38..c31d9e0bba63f762069b0a7c79770273ac7288d1 100644
--- a/cmd/vmine/main.go
+++ b/cmd/vmine/main.go
@@ -122,8 +122,13 @@ func main() {
 	}()
 	signal.Notify(termCh, syscall.SIGTERM, syscall.SIGINT)
 
-	// Spawn the HTTP server on a goroutine.
-	go http.ListenAndServe(*addr, vmine.NewHTTPEngine(engine))
+	// Spawn the HTTP server on a goroutine. Errors will cause the
+	// process to abort (no clean shutdown).
+	go func() {
+		if err := http.ListenAndServe(*addr, vmine.NewHTTPEngine(engine)); err != nil && !errors.Is(err, http.ErrServerClosed) {
+			log.Fatal(err)
+		}
+	}()
 
 	engine.Wait()
 }