Skip to content

HTTP und HTTPS

Die von Potatso unterstützten Optionen, Links und Funktionen für HTTP- und HTTPS-Proxys.

Updated Als Markdown anzeigen

Ein HTTP-Proxy ist ein Server, der Verbindungen für dich öffnet, wenn man ihn mit einer HTTP-CONNECT-Anfrage darum bittet. Ein HTTPS-Proxy ist derselbe Server, der über TLS erreicht wird, sodass auch die Verbindung zum Proxy verschlüsselt ist. Potatso verbindet sich mit beiden, mit oder ohne Benutzernamen und Passwort.

Ein HTTP-Proxy trägt nur TCP. Was mit dem Rest deines Datenverkehrs geschieht, steht unter UDP.

Einen HTTP- oder HTTPS-Proxy kannst du von Hand, mit einem http://- oder https://-Link oder per Import hinzufügen:

  • eines Clash- oder Mihomo-Abonnements (type: http),
  • einer Surge-Konfiguration (http und https),
  • einer Xray- oder V2Ray-Konfiguration (http-Outbound).

Um einen HTTPS-Proxy von Hand hinzuzufügen, wähle HTTP und schalte TLS ein.

Einstellungen

Einstellung Beschreibung
Server, Port Adresse und Port des Proxys. Auch eine IPv6-Adresse funktioniert.
Benutzername, Passwort Optional. Wird mit Basic-Authentifizierung gesendet.
TLS Bei einem HTTPS-Proxy an.
Servername Nur HTTPS, optional. Der im TLS-Handshake gesendete und gegen das Zertifikat geprüfte Name. Lass ihn leer, um die Serveradresse zu verwenden.
Zertifikatsprüfung überspringen Nur HTTPS. Akzeptiert jedes Zertifikat. Nutze es nur zum Testen.
Zertifikat-Pin Nur HTTPS, optional. Der SHA-256-Fingerabdruck des Zertifikats des Proxys, als 64 Hex-Ziffern. Mit einem Pin akzeptiert Potatso das gepinnte Zertifikat, auch ein selbstsigniertes, und nichts anderes.

Das Passwort kann beliebige Zeichen enthalten, auch : und Buchstaben außerhalb von ASCII. Der Benutzername darf kein : enthalten.

Eigene Header

Eine Clash-, Mihomo- oder Xray-Konfiguration kann der CONNECT-Anfrage Header hinzufügen, etwa einen User-Agent, den dein Anbieter verlangt. Potatso behält sie beim Import des Proxys bei und sendet sie bei jeder Verbindung. Ein Host-Header ersetzt den, den Potatso sendet. Header kannst du in der App weder hinzufügen noch bearbeiten.

Zertifikate

Ein HTTPS-Proxy braucht ein Zertifikat, dem dein Gerät vertraut, außer du setzt einen Zertifikat-Pin oder schaltest Zertifikatsprüfung überspringen ein.

Potatso unterstützt nicht:

  • ein eigenes CA-Zertifikat für einen HTTPS-Proxy: Pinne stattdessen das Zertifikat des Proxys,
  • ein TLS-Clientzertifikat (Clash certificate und private-key): Potatso importiert keinen Proxy, der eines braucht,
  • eine ALPN-Liste: Potatso spricht mit dem Proxy immer HTTP/1.1.

UDP

HTTP-Proxys tragen nur TCP, daher sendet Potatso nie UDP an einen. UDP nutzen QUIC, Sprach- und Videoanrufe und viele Spiele.

  • Bei Regeln überspringt Potatso eine Regel, die UDP an einen HTTP- oder HTTPS-Proxy sendet, und die nächste passende Regel entscheidet. UDP, auf das keine andere Regel passt, wird direkt gesendet.
  • Im Modus Global funktioniert UDP nicht, weil der gesamte Datenverkehr über den Proxy laufen muss.

Um UDP ebenfalls über einen Proxy zu senden, nutze einen Server, dessen Protokoll UDP trägt, etwa SOCKS5 oder Shadowsocks.

Funktionsunterstützung

Funktion Unterstützt
CONNECT-Tunnel (RFC 9110 §9.3.6) zu IPv4-, IPv6- und Domain-Zielen ✅
Basic-Authentifizierung (RFC 7617), UTF-8-Passwörter ✅
Digest-Authentifizierung (RFC 7616) ❌
HTTPS-Proxys (HTTP über TLS) ✅ Mit Servername, Zertifikat-Pin und Zertifikatsprüfung überspringen
Eigene CONNECT-Header ✅ Aus Importen
Eine IPv6-Proxyadresse ✅
HTTP/2-CONNECT (RFC 9113 §8.5) ❌
HTTP/3-CONNECT (RFC 9114 §4.4) ❌
UDP über den Proxy (CONNECT-UDP, RFC 9298) ❌
Weiterleitung von reinem HTTP ohne CONNECT (Anfragen in Absolutform) ❌ Potatso nutzt für jede Verbindung CONNECT
TLS-Clientzertifikate, eigene CA, ALPN ❌

Jede unterstützte Funktion ist gegen echte Proxy-Server getestet: tinyproxy, sing-box, Xray und Mihomo.

Verwende den CONNECT-Port des Servers, nicht einen Web-Port, der nur einfache Webanfragen weiterleitet. Manche Proxys erlauben CONNECT nur zu Port 443. Funktionieren über deinen Proxy nur manche Websites, frage deinen Anbieter, ob er die CONNECT-Ports einschränkt.

Ein http://- oder https://-Link enthält einen ganzen Proxy in einer Zeile:

http://user:password@host:port#name
https://user:password@host:port?sni=…&insecure=1#name
Teil Beschreibung
user:password Optional. Kodiere :, @ und andere Sonderzeichen im Passwort prozentkodiert, zum Beispiel p%3Ass für p:ss.
host Proxyadresse. Setze eine IPv6-Adresse in eckige Klammern, etwa [2001:db8::1].
port Proxyport.
sni Nur HTTPS, optional. Der Servername. Potatso liest auch peer und servername.
insecure Nur HTTPS, optional. 1 schaltet Zertifikatsprüfung überspringen ein. Potatso liest auch allowInsecure und skip-cert-verify.
name Optional. Der Name des Proxys in Potatso.

Ein Link kann weder einen Zertifikat-Pin noch eigene Header enthalten. Potatso importiert auch die ältere Form, in der alles zwischen :// und # Base64-kodiert ist:

http://base64(user:password@host:port)#name

Ein Proxy ohne Passwort:

http://proxy.example.com:8080#Open

Ein Proxy mit dem Benutzernamen alice und dem Passwort s3cret:

http://alice:s3cret@proxy.example.com:8080#Basic

Das Passwort p:ss wörd, prozentkodiert:

http://alice:p%3Ass%20w%C3%B6rd@proxy.example.com:8080#Encoded

Ein HTTPS-Proxy:

https://alice:s3cret@proxy.example.com:443#TLS

Ein HTTPS-Proxy, der über seine IP-Adresse erreicht wird, mit dem Zertifikatsnamen proxy.example.com:

https://alice:s3cret@203.0.113.10:443?sni=proxy.example.com#SNI

Ein HTTPS-Proxy mit selbstsigniertem Zertifikat:

https://proxy.example.com:443?insecure=1#Self-signed

Ein Proxy mit einer IPv6-Adresse:

http://[2001:db8::1]:8080#IPv6

Die ältere Form des einfachen Proxys:

http://YWxpY2U6czNjcmV0QHByb3h5LmV4YW1wbGUuY29tOjgwODA#Legacy
Navigation

Type to search…

↑↓ navigate↵ selectEsc close