explaingit

b3hnamr/psiphonovermitm

471PowerShell
This is a quick first-pass explanation. The richer sections — use-cases, tech stack, setup, prompts — are still being generated.

TLDR

PsiphonOverMITM is a Windows tool written in PowerShell that helps Psiphon, a censorship-circumvention VPN used in countries with internet restrictions, connect to its network via a technique called MITM-DomainFronting.

Mindmap

A visual breakdown will appear here once this repo is fully enriched.

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

In plain English

PsiphonOverMITM is a Windows tool written in PowerShell that helps Psiphon, a censorship-circumvention VPN used in countries with internet restrictions, connect to its network via a technique called MITM-DomainFronting. The readme is written in Farsi (Persian), suggesting it is primarily aimed at users in Iran or other regions with internet censorship. The architecture works like this: instead of Psiphon connecting directly to its network (which can be blocked), it routes its connection through a local proxy running Xray (an open-source traffic routing tool) on your computer. Xray intercepts the TLS traffic using a locally generated self-signed certificate, then forwards it through domain fronting routes via CDN providers like Akamai and Fastly, which are harder for censors to block. The tool includes a simple Start/Stop/Status menu, automatic certificate generation, and step-by-step logs of each stage. Setup requires running the launcher as Administrator on Windows 10 or 11 (to install the certificate into Windows' trusted certificate store and manage ports), then configuring Psiphon to use localhost port 20808 as its upstream proxy. The project credits its core MITM-DomainFronting configuration to a separate project called Patterniha.

Open on GitHub → Explain another repo

← b3hnamr on gitmyhub — every repo by this author, as a profile.

Verify against the repo before relying on details.