narrow-chef-71655
02/18/2026, 7:03 AMtall-airline-16756
02/18/2026, 7:03 AMtall-airline-16756
02/18/2026, 7:04 AMnarrow-chef-71655
02/18/2026, 7:25 AMraceback (most recent call last):
File "/livekit-agent/.venv/lib/python3.13/site-packages/aiohttp/connector.py", line 1313, in _wrap_create_connection
return await self._loop.create_connection(*args, **kwargs, sock=sock)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "python3.13/asyncio/base_events.py", line 1201, in create_connection
transport, protocol = await self._create_connection_transport(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
...<2 lines>...
ssl_shutdown_timeout=ssl_shutdown_timeout)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "lib/python3.13/asyncio/base_events.py", line 1234, in _create_connection_transport
await waiter
File "asyncio/sslproto.py", line 581, in _on_handshake_complete
raise handshake_exc
File "asyncio/sslproto.py", line 563, in _do_handshake
self._sslobj.do_handshake()
~~~~~~~~~~~~~~~~~~~~~~~~~^^
File "python3.13/ssl.py", line 951, in do_handshake
self._sslobj.do_handshake()
~~~~~~~~~~~~~~~~~~~~~~~~~^^
ssl.SSLCertVerificationError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: self-signed certificate in certificate chain (_ssl.c:1032)
how can i disable this ?tall-airline-16756
02/18/2026, 7:26 AMssl.SSLCertVerificationError: self-signed certificate in certificate chain and want to disable verification so your Python code can connect.
Quick answer (development only): you can disable SSL verification for aiohttp by creating a connector that skips checks. Example:
import aiohttp
connector = aiohttp.TCPConnector(ssl=False)
async with aiohttp.ClientSession(connector=connector) as session:
async with session.get("<https://your-server>") as resp:
print(await resp.text())
Alternative (equivalent): create an insecure SSLContext:
import ssl
import aiohttp
ctx = ssl.create_default_context()
ctx.check_hostname = False
ctx.verify_mode = ssl.CERT_NONE
connector = aiohttp.TCPConnector(ssl=ctx)
Important security note: Do not use these settings in production. Disabling verification exposes you to man‑in‑the‑middle attacks.
Safer recommendation (best practice):
• Add the self‑signed certificate (or your internal CA) to a trusted CA bundle and point Python to it via SSL_CERT_FILE or REQUESTS_CA_BUNDLE environment variable, or configure your system trust store. That preserves TLS validation while trusting your certificate.
If you’re using the LiveKit Python SDK: the SDK does not document a built‑in flag to turn off SSL verification, so you’ll need either to:
• Trust the certificate at the OS / env level (recommended), or
• If the SDK exposes a way to pass an aiohttp connector or custom HTTP client, pass a connector like above (only for development).
If you tell me:
• Are you running this locally or in a container/VM?
• Which LiveKit client or SDK code path you’re using (raw aiohttp, LiveKit Python SDK, or another wrapper)?
I can provide specific commands to export the certificate, add it to a CA bundle, or show how to configure the environment for your runtime.
Sources: Python SDKs | livekit/livekit_composite | DeepWiki | Running LiveKit on AWSnarrow-chef-71655
02/18/2026, 2:45 PMtall-airline-16756
02/18/2026, 2:46 PMSSL_CERT_FILE or REQUESTS_CA_BUNDLE) so all requests still validate but trust your cert.
• Configure the specific client making the requests
◦ If you control the code that makes the HTTP/WebSocket calls (for example, direct aiohttp calls), you can disable verification per client by passing a connector/SSLContext with verification turned off.
◦ Use this only for development or trusted internal networks — it is insecure.
• Component-specific flags
◦ Some plugins/components may expose their own use_ssl or similar flags (for example, certain TTS plugins). Check the individual component’s config to see if it accepts an option to bypass or alter SSL behavior.
• Proxy or internal gateway
◦ Terminate TLS at a trusted gateway or reverse proxy that you control, with that proxy talking to your LiveKit components over an internal trusted network.
Why I don’t recommend a global “disable for a room”:
• Disabling verification for a room/job would create a significant security risk for other traffic and isn’t supported by the framework’s security model, which expects TLS for signaling and media.
If you’d like, tell me:
• Which SDK or agent you’re using (LiveKit Python agent, Node agent, direct aiohttp calls, etc.), and
• Whether this is for development or a production environment.
With that I can give exact commands or code snippets to (a) add your cert to a trust bundle, or (b) show the exact place to set an insecure connector for development only.
Sources: Agents (Node.js) | livekit/livekit_composite | DeepWiki | How to build an agent with speech-to-text input and text-only output | Live... | server-sdk-go | livekit/livekit_composite | DeepWiki | Agents Framework | livekit/livekit_composite | DeepWiki | Security | LiveKit