Skip to content

Commit a064840

Browse files
committed
tweak tls configuration
1 parent 6e3ff5d commit a064840

File tree

1 file changed

+23
-0
lines changed

1 file changed

+23
-0
lines changed

cmd/web/server.go

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ package main
22

33
import (
44
"context"
5+
"crypto/tls"
56
"database/sql"
67
"fmt"
78
"log"
@@ -68,12 +69,34 @@ func (app *App) CloseDB() {
6869
}
6970

7071
func (app *App) InitServer() {
72+
tlsConfig := &tls.Config{
73+
PreferServerCipherSuites: true,
74+
CurvePreferences: []tls.CurveID{tls.X25519, tls.CurveP256},
75+
CipherSuites: []uint16{
76+
tls.TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305,
77+
tls.TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305,
78+
tls.TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256,
79+
tls.TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,
80+
tls.TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384,
81+
tls.TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384,
82+
tls.TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256,
83+
tls.TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256,
84+
tls.TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA,
85+
tls.TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,
86+
tls.TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA,
87+
tls.TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA,
88+
},
89+
MinVersion: tls.VersionTLS12,
90+
MaxVersion: tls.VersionTLS12,
91+
}
92+
7193
app.server = &http.Server{
7294
Addr: app.addr,
7395
Handler: app.Routes(),
7496
WriteTimeout: 15 * time.Second,
7597
ReadTimeout: 15 * time.Second,
7698
IdleTimeout: 60 * time.Second,
99+
TLSConfig: tlsConfig,
77100
}
78101
}
79102

0 commit comments

Comments
 (0)