pub struct TlsConfig {
pub enabled: bool,
pub intercepted_ports: Vec<u16>,
pub bypass: Vec<String>,
pub verify_upstream: bool,
pub block_quic_on_intercept: bool,
pub upstream_ca_cert: Vec<PathBuf>,
pub scoped_upstream_ca_cert: Vec<ScopedUpstreamCaCert>,
pub scoped_verify_upstream: Vec<ScopedVerifyUpstream>,
pub intercept_ca: InterceptCaConfig,
pub cache: CertCacheConfig,
}Expand description
TLS interception configuration. Carried in NetworkSpec::tls.
The local network engine terminates TCP at its in-process stack, so TLS MITM is handled by proxy tasks — these fields configure which ports/domains are intercepted and how the interception CA is sourced.
Fields§
§enabled: boolWhether TLS interception is enabled.
intercepted_ports: Vec<u16>TCP ports subject to TLS interception (default: [443]).
bypass: Vec<String>Domains to bypass (no MITM). Supports exact match and *.suffix wildcards.
verify_upstream: boolWhether to verify the upstream server’s TLS certificate.
block_quic_on_intercept: boolDrop UDP to intercepted ports when TLS interception is active, forcing QUIC traffic to fall back to TCP/TLS.
upstream_ca_cert: Vec<PathBuf>CA certificate PEM files to trust for upstream server verification.
scoped_upstream_ca_cert: Vec<ScopedUpstreamCaCert>Host-scoped CA certificate PEM files to trust for upstream server verification.
scoped_verify_upstream: Vec<ScopedVerifyUpstream>Host-scoped upstream verification overrides.
intercept_ca: InterceptCaConfigInterception CA configuration. The TLS proxy uses this CA to sign per-domain certs it presents to the guest during interception.
cache: CertCacheConfigPer-domain certificate cache configuration.
Trait Implementations§
Source§impl<'de> Deserialize<'de> for TlsConfig
impl<'de> Deserialize<'de> for TlsConfig
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<TlsConfig, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<TlsConfig, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Source§impl Serialize for TlsConfig
impl Serialize for TlsConfig
Source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
Auto Trait Implementations§
impl Freeze for TlsConfig
impl RefUnwindSafe for TlsConfig
impl Send for TlsConfig
impl Sync for TlsConfig
impl Unpin for TlsConfig
impl UnsafeUnpin for TlsConfig
impl UnwindSafe for TlsConfig
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more