diff --git a/adapter/outbound/shadowsocks.go b/adapter/outbound/shadowsocks.go index 80d113c71..156b419ac 100644 --- a/adapter/outbound/shadowsocks.go +++ b/adapter/outbound/shadowsocks.go @@ -84,7 +84,7 @@ type gostObfsOption struct { } type shadowTLSOption struct { - Password string `obfs:"password"` + Password string `obfs:"password,omitempty"` Host string `obfs:"host"` Fingerprint string `obfs:"fingerprint,omitempty"` SkipCertVerify bool `obfs:"skip-cert-verify,omitempty"` diff --git a/transport/sing-shadowtls/shadowtls.go b/transport/sing-shadowtls/shadowtls.go index 2f634bcbb..ff7a2ccd5 100644 --- a/transport/sing-shadowtls/shadowtls.go +++ b/transport/sing-shadowtls/shadowtls.go @@ -37,6 +37,9 @@ func NewShadowTLS(ctx context.Context, conn net.Conn, option *ShadowTLSOption) ( InsecureSkipVerify: option.SkipCertVerify, ServerName: option.Host, } + if option.Version == 1 { + tlsConfig.MaxVersion = tls.VersionTLS12 // ShadowTLS v1 only support TLS 1.2 + } var err error tlsConfig, err = ca.GetSpecifiedFingerprintTLSConfig(tlsConfig, option.Fingerprint)