<feed xmlns='http://www.w3.org/2005/Atom'>
<title>vyos-1x.git/data/templates/https/nginx.default.j2, branch T9338-l3vpn-multi-domain-switching</title>
<subtitle>VyOS command definitions, scripts, and utilities (mirror of https://github.com/vyos/vyos-1x.git)
</subtitle>
<id>https://git.amelek.net/vyos/vyos-1x.git/atom?h=T9338-l3vpn-multi-domain-switching</id>
<link rel='self' href='https://git.amelek.net/vyos/vyos-1x.git/atom?h=T9338-l3vpn-multi-domain-switching'/>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos/vyos-1x.git/'/>
<updated>2026-09-11T21:22:16+00:00</updated>
<entry>
<title>https: T8989: fix X-Client-Verify header passthrough auth bypass</title>
<updated>2026-09-11T21:22:16+00:00</updated>
<author>
<name>omnom62</name>
<email>omnom62@outlook.com</email>
</author>
<published>2026-09-11T21:22:16+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos/vyos-1x.git/commit/?id=fa46c294c8239534472a140293125864c0ea857d'/>
<id>urn:sha1:fa46c294c8239534472a140293125864c0ea857d</id>
<content type='text'>
Always set proxy_set_header X-Client-Verify unconditionally so a
client-supplied X-Client-Verify: SUCCESS header cannot bypass mTLS
authentication when mTLS is not configured.

When mTLS is disabled, nginx sets X-Client-Verify to empty string
which correctly fails the == 'SUCCESS' check in auth_required.

Fixes: GHSA-4w7q-wwx4-6973
</content>
</entry>
<entry>
<title>http-api: T8989: translate to correct term in nginx directive</title>
<updated>2026-09-02T02:06:13+00:00</updated>
<author>
<name>John Estabrook</name>
<email>jestabro@vyos.io</email>
</author>
<published>2026-09-02T02:06:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos/vyos-1x.git/commit/?id=99decdac737629507b88c4d0390344a981a181ab'/>
<id>urn:sha1:99decdac737629507b88c4d0390344a981a181ab</id>
<content type='text'>
</content>
</entry>
<entry>
<title>http-api: T8989: address further review comments</title>
<updated>2026-08-26T18:33:34+00:00</updated>
<author>
<name>omnom62</name>
<email>omnom62@outlook.com</email>
</author>
<published>2026-08-12T05:22:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos/vyos-1x.git/commit/?id=1832b2bb3e9948f8bf6dfb3be50fd10363bc3a38'/>
<id>urn:sha1:1832b2bb3e9948f8bf6dfb3be50fd10363bc3a38</id>
<content type='text'>
- Scope mTLS CA chain to selected CA only (not all configured CAs)
- Pass verify-client value to nginx template instead of hardcoding optional
- Allow mTLS-only REST configuration without API keys
- Add mTLS warning when no API keys are configured
</content>
</entry>
<entry>
<title>http-api: T8989: linter fixes</title>
<updated>2026-08-26T18:33:34+00:00</updated>
<author>
<name>omnom62</name>
<email>omnom62@outlook.com</email>
</author>
<published>2026-08-11T07:01:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos/vyos-1x.git/commit/?id=c489a19e454a9be5438fc16e26e62407a0d64f49'/>
<id>urn:sha1:c489a19e454a9be5438fc16e26e62407a0d64f49</id>
<content type='text'>
</content>
</entry>
<entry>
<title>http-api: T8989: add mTLS client certificate authentication</title>
<updated>2026-08-26T18:33:34+00:00</updated>
<author>
<name>omnom62</name>
<email>omnom62@outlook.com</email>
</author>
<published>2026-08-11T06:45:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos/vyos-1x.git/commit/?id=0cdf7e696b4deb3c3103a596bfe4d4f167dcf4b7'/>
<id>urn:sha1:0cdf7e696b4deb3c3103a596bfe4d4f167dcf4b7</id>
<content type='text'>
Add support for mutual TLS (mTLS) authentication to the VyOS REST API.

When configured, nginx requests a client certificate and verifies it
against the configured CA chain. FastAPI reads the X-Client-Verify
header set by nginx and bypasses API key/token authentication when
the client certificate is valid.

Configuration:
  set service https certificates ca-certificate &lt;name&gt;
  set service https certificates verify-client &lt;optional|required&gt;

Note: requires TLSv1.2 due to nginx 1.22 TLSv1.3 post-handshake
authentication limitations. TLSv1.3 support pending nginx upgrade.
</content>
</entry>
<entry>
<title>http-api: T8989: add REST Bearer token authentication</title>
<updated>2026-08-26T18:33:34+00:00</updated>
<author>
<name>omnom62</name>
<email>omnom62@outlook.com</email>
</author>
<published>2026-08-04T23:14:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos/vyos-1x.git/commit/?id=f3012e652edef614d4f0ed169b320106a85d83b3'/>
<id>urn:sha1:f3012e652edef614d4f0ed169b320106a85d83b3</id>
<content type='text'>
Add JWT Bearer token support to the REST API, as an additional
authentication method alongside the existing form-field key and
X-API-Key header.

- New POST /token endpoint mints a JWT for a valid API key
- auth_required() accepts Authorization: Bearer &lt;token&gt; alongside
  existing key/X-API-Key auth
- New config nodes: service https api rest authentication
  {expiration, secret-length} (defaults: 3600s / 32 bytes)
- REST tokens use an independent signing secret from GraphQL's,
  since GraphQL may not be enabled on all deployments and the two
  subsystems have different expiry requirements
- nginx location regex updated to allow /token
- service_https.py default-value merge generalized to also apply
  to the rest node, not just graphql, so REST authentication
  defaults populate correctly on commit
</content>
</entry>
<entry>
<title>http-api: T9224: add ping endpoint to REST API</title>
<updated>2026-08-18T12:53:52+00:00</updated>
<author>
<name>Jonathan Voss</name>
<email>jvoss@onvox.net</email>
</author>
<published>2026-08-17T04:50:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos/vyos-1x.git/commit/?id=ea65e1d24bf9327edd2244a81e9c307f3001b16f'/>
<id>urn:sha1:ea65e1d24bf9327edd2244a81e9c307f3001b16f</id>
<content type='text'>
</content>
</entry>
<entry>
<title>T6734: Nginx disable software version reporting</title>
<updated>2026-01-27T22:02:49+00:00</updated>
<author>
<name>Viacheslav Hletenko</name>
<email>v.gletenko@vyos.io</email>
</author>
<published>2026-01-27T22:02:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos/vyos-1x.git/commit/?id=8fcaa97be4d7532a9efc61e52672d09f1c12be02'/>
<id>urn:sha1:8fcaa97be4d7532a9efc61e52672d09f1c12be02</id>
<content type='text'>
</content>
</entry>
<entry>
<title>T7395: Add support for renew in REST Server</title>
<updated>2025-05-28T14:42:26+00:00</updated>
<author>
<name>IDerr</name>
<email>ibrahim@derraz.fr</email>
</author>
<published>2025-05-28T14:42:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos/vyos-1x.git/commit/?id=7b3ce52e3babdf3a17910ce5322e571d5c91bb38'/>
<id>urn:sha1:7b3ce52e3babdf3a17910ce5322e571d5c91bb38</id>
<content type='text'>
</content>
</entry>
<entry>
<title>T4406: Add public API endpoint to display information</title>
<updated>2025-03-06T12:46:40+00:00</updated>
<author>
<name>oniko94</name>
<email>onikolaiev94@outlook.com</email>
</author>
<published>2025-03-05T17:37:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos/vyos-1x.git/commit/?id=9fe7d85f78e967c251b3437a90e1a5f01dab1868'/>
<id>urn:sha1:9fe7d85f78e967c251b3437a90e1a5f01dab1868</id>
<content type='text'>
</content>
</entry>
</feed>
