From f17b78b91bcb3398bd1d1613db28f4ed676b67b3 Mon Sep 17 00:00:00 2001 From: caissonfiv Date: Thu, 26 Mar 2026 18:18:59 +0800 Subject: [PATCH] Include local IP in certificate SAN for LAN access --- __init__.py | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/__init__.py b/__init__.py index fb21bdf..ec736da 100644 --- a/__init__.py +++ b/__init__.py @@ -103,7 +103,18 @@ def generate_cert(): return str(cert_file), str(key_file) CERT_DIR.mkdir(exist_ok=True) - print('[HTTPS Bridge] ๐Ÿ” ้ฆ–ๆฌก่ฟ่กŒ๏ผŒ็”Ÿๆˆ่‡ช็ญพๅ่ฏไนฆ๏ผˆๆœ‰ๆ•ˆๆœŸ 10 ๅนด๏ผ‰...') + + # ๆ”ถ้›†ๆœฌๆœบๆ‰€ๆœ‰้œ€่ฆ่ฆ†็›–็š„ IP + local_ip = _get_local_ip() + san_ips = {ipaddress.IPv4Address('127.0.0.1')} + if local_ip != '127.0.0.1': + try: + san_ips.add(ipaddress.IPv4Address(local_ip)) + except ValueError: + pass + + print(f'[HTTPS Bridge] ๐Ÿ” ้ฆ–ๆฌก่ฟ่กŒ๏ผŒ็”Ÿๆˆ่‡ช็ญพๅ่ฏไนฆ๏ผˆๆœ‰ๆ•ˆๆœŸ 10 ๅนด๏ผ‰...') + print(f' ่ฆ†็›–ๅœฐๅ€: localhost, 127.0.0.1' + (f', {local_ip}' if local_ip != '127.0.0.1' else '')) key = rsa.generate_private_key(public_exponent=65537, key_size=2048) @@ -121,7 +132,7 @@ def generate_cert(): .add_extension( x509.SubjectAlternativeName([ x509.DNSName('localhost'), - x509.IPAddress(ipaddress.IPv4Address('127.0.0.1')), + *[x509.IPAddress(ip) for ip in san_ips], ]), critical=False, )