Bladeren bron

Merge pull request #8588 from dqminh/remove-sslv3

remove sslv3 from server's TLS supported versions
Tibor Vass 10 jaren geleden
bovenliggende
commit
10f78974ca
3 gewijzigde bestanden met toevoegingen van 9 en 1 verwijderingen
  1. 2 0
      api/server/server.go
  2. 2 0
      docker/docker.go
  3. 5 1
      registry/registry.go

+ 2 - 0
api/server/server.go

@@ -1439,6 +1439,8 @@ func ListenAndServe(proto, addr string, job *engine.Job) error {
 		tlsConfig := &tls.Config{
 			NextProtos:   []string{"http/1.1"},
 			Certificates: []tls.Certificate{cert},
+			// Avoid fallback on insecure SSL protocols
+			MinVersion: tls.VersionTLS10,
 		}
 		if job.GetenvBool("TlsVerify") {
 			certPool := x509.NewCertPool()

+ 2 - 0
docker/docker.go

@@ -93,6 +93,8 @@ func main() {
 			}
 			tlsConfig.Certificates = []tls.Certificate{cert}
 		}
+		// Avoid fallback to SSL protocols < TLS1.0
+		tlsConfig.MinVersion = tls.VersionTLS10
 	}
 
 	if *flTls || *flTlsVerify {

+ 5 - 1
registry/registry.go

@@ -36,7 +36,11 @@ const (
 )
 
 func newClient(jar http.CookieJar, roots *x509.CertPool, cert *tls.Certificate, timeout TimeoutType) *http.Client {
-	tlsConfig := tls.Config{RootCAs: roots}
+	tlsConfig := tls.Config{
+		RootCAs: roots,
+		// Avoid fallback to SSL protocols < TLS1.0
+		MinVersion: tls.VersionTLS10,
+	}
 
 	if cert != nil {
 		tlsConfig.Certificates = append(tlsConfig.Certificates, *cert)