diff --git a/proxy/proxy.go b/proxy/proxy.go
index 03344444b9357dfe30ca9233123a93d5ed3bcf8a..2546842c4e93458eb8eac1f849dff787d3ede2ab 100644
--- a/proxy/proxy.go
+++ b/proxy/proxy.go
@@ -73,6 +73,12 @@ func (b *Backend) newHandler(ssow *httpsso.SSOWrapper) (http.Handler, error) {
 			var d net.Dialer
 			return d.DialContext(ctx, network, b.Upstream[rnd.Intn(len(b.Upstream))])
 		},
+
+		// Parameters match those of net/http.DefaultTransport.
+		MaxIdleConns:          100,
+		IdleConnTimeout:       90 * time.Second,
+		TLSHandshakeTimeout:   10 * time.Second,
+		ExpectContinueTimeout: 1 * time.Second,
 	}
 
 	h := ssow.Wrap(proxy, b.Host+"/", b.AllowedGroups)