<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Transport Layer Security (TLS) on </title>
    <link>https://emissary-ingress.dev/docs/4.1/topics/running/tls/</link>
    <description>Recent content in Transport Layer Security (TLS) on </description>
    <generator>Hugo</generator>
    <language>en</language>
    <atom:link href="https://emissary-ingress.dev/docs/4.1/topics/running/tls/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Cleartext support</title>
      <link>https://emissary-ingress.dev/docs/4.1/topics/running/tls/cleartext-redirection/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://emissary-ingress.dev/docs/4.1/topics/running/tls/cleartext-redirection/</guid>
      <description>&lt;p&gt;While most modern web applications choose to encrypt all traffic, there remain&#xA;cases where supporting cleartext communications is important. Emissary supports&#xA;both forcing &lt;a href=&#34;https://emissary-ingress.dev/docs/4.1/topics/running/tls/cleartext-redirection/#http-https-redirection&#34;&gt;automatic redirection to HTTPS&lt;/a&gt; and&#xA;&lt;a href=&#34;https://emissary-ingress.dev/docs/4.1/topics/running/tls/cleartext-redirection/#cleartext-routing&#34;&gt;serving cleartext&lt;/a&gt; traffic on a &lt;code&gt;Host&lt;/code&gt;.&lt;/p&gt;&#xA;&lt;Alert severity=&#34;info&#34;&gt;&#xA;  The &lt;a href=&#34;../../listener&#34;&gt;&lt;code&gt;Listener&lt;/code&gt;&lt;/a&gt; and&#xA;  &lt;a href=&#34;../../host-crd&#34;&gt;&lt;code&gt;Host&lt;/code&gt;&lt;/a&gt; CRDs work together to manage HTTP and HTTPS routing.&#xA;  This document is meant as a quick reference to the &lt;code&gt;Host&lt;/code&gt; resource: for a more complete&#xA;  treatment of handling cleartext and HTTPS, see &lt;a href=&#34;../../../../howtos/configure-communications&#34;&gt;Configuring Emissary Communications&lt;/a&gt;.&#xA;&lt;/Alert&gt;&#xA;&lt;h2 id=&#34;cleartext-routing&#34;&gt;Cleartext Routing&lt;/h2&gt;&#xA;&lt;p&gt;To allow cleartext to be routed, set the &lt;code&gt;requestPolicy.insecure.action&lt;/code&gt; of a &lt;code&gt;Host&lt;/code&gt; to &lt;code&gt;Route&lt;/code&gt;:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Mutual TLS (mTLS)</title>
      <link>https://emissary-ingress.dev/docs/4.1/topics/running/tls/mtls/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://emissary-ingress.dev/docs/4.1/topics/running/tls/mtls/</guid>
      <description>&lt;p&gt;Many organizations have security concerns that require all network traffic&#xA;throughout their cluster be encrypted. With traditional architectures,&#xA;this was not that complicated of a requirement since internal network traffic&#xA;was fairly minimal. With microservices, we are making many more requests over&#xA;the network that must all be authenticated and secured.&lt;/p&gt;&#xA;&lt;p&gt;In order for services to authenticate with each other, they will each need to&#xA;provide a certificate and key that the other trusts before establishing a&#xA;connection. This action of both the client and server providing and validating&#xA;certificates is referred to as mutual TLS.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Server Name Indication (SNI)</title>
      <link>https://emissary-ingress.dev/docs/4.1/topics/running/tls/sni/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://emissary-ingress.dev/docs/4.1/topics/running/tls/sni/</guid>
      <description>&lt;p&gt;Emissary supports serving multiple &lt;code&gt;Host&lt;/code&gt;s behind a single IP address, each&#xA;with their own certificate.&lt;/p&gt;&#xA;&lt;p&gt;This is as easy to do as creating a &lt;code&gt;Host&lt;/code&gt; for each domain or subdomain you&#xA;want Emissary to serve, getting a certificate for each, and telling&#xA;Emissary which &lt;code&gt;Host&lt;/code&gt; the route should be created for.&lt;/p&gt;&#xA;&lt;p&gt;The example below configures two &lt;code&gt;Host&lt;/code&gt;s and assigns routes to them.&lt;/p&gt;&#xA;&lt;h2 id=&#34;configuring-a-host&#34;&gt;Configuring a &lt;code&gt;Host&lt;/code&gt;&lt;/h2&gt;&#xA;&lt;p&gt;The &lt;code&gt;Host&lt;/code&gt; resources lets you separate configuration for each distinct domain&#xA;and subdomain you plan on serving behind Emissary.&lt;/p&gt;</description>
    </item>
    <item>
      <title>TLS Origination</title>
      <link>https://emissary-ingress.dev/docs/4.1/topics/running/tls/origination/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://emissary-ingress.dev/docs/4.1/topics/running/tls/origination/</guid>
      <description>&lt;p&gt;Sometimes you may want traffic from Emissary to your services to be encrypted. For the cases where terminating TLS at the ingress is not enough, Emissary can be configured to originate TLS connections to your upstream services.&lt;/p&gt;&#xA;&lt;h2 id=&#34;basic-configuration&#34;&gt;Basic configuration&lt;/h2&gt;&#xA;&lt;p&gt;Telling Emissary to talk to your services over HTTPS is easily configured in the &lt;code&gt;Mapping&lt;/code&gt; definition by setting &lt;code&gt;https://&lt;/code&gt; in the &lt;code&gt;service&lt;/code&gt; field.&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-yaml&#34; data-lang=&#34;yaml&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#000&#34;&gt;---&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;&lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;apiVersion&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#000&#34;&gt;getambassador.io/v3alpha1&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;&lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;kind&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#000&#34;&gt;Mapping&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;&lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;metadata&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;  &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;name&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#000&#34;&gt;basic-tls&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;&lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;spec&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;  &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;hostname&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;*&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;  &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;prefix&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#000&#34;&gt;/&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;  &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;service&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#000&#34;&gt;https://example-service&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8;text-decoration:underline&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id=&#34;advanced-configuration-using-a-tlscontext&#34;&gt;Advanced configuration using a &lt;code&gt;TLSContext&lt;/code&gt;&lt;/h2&gt;&#xA;&lt;p&gt;If your upstream services require more than basic HTTPS support (for example, providing a client certificate or&#xA;setting the minimum TLS version support) you must create a &lt;code&gt;TLSContext&lt;/code&gt; for Emissary to use when&#xA;originating TLS. For example:&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
