Gebruikershandleiding voor mudfish-exclude
Dit programma is alleen beschikbaar in Mudfish Cloud VPN 6.5.4 of nieuwer.
mudfish-exclude is een opdrachtregelhulpmiddel voor Mudfish op Linux waarmee je bepaalde programma's buiten het Mudfish-pad start. Dit is vooral handig als je Full VPN gebruikt, maar verkeer van browsers, chatprogramma's, videospelers of downloadprogramma's rechtstreeks via je bestaande internetverbinding wilt sturen.
일반 프로그램 -> 미꾸라지 경로 -> 중계 서버
mudfish-exclude 앱 -> 기존 기본 경로 -> 인터넷
In dit oorspronkelijke schema gaat een gewoon programma via het Mudfish-pad naar een knooppunt. Een app die met mudfish-exclude wordt gestart, volgt de bestaande standaardroute naar internet.
Dit hulpmiddel voegt geen instellingen aan het Mudfish-dashboard toe. Start het uit te sluiten programma eenvoudig met mudfish-exclude in plaats van het gebruikelijke commando.
Ondersteuning: momenteel alleen Linux en IPv4. Het werkt niet op Windows, macOS of Android en past geen afzonderlijk omleidingsbeleid toe op IPv6-verkeer.
Vereisten
Aan alle volgende voorwaarden moet zijn voldaan:
- Mudfish voor Linux is geïnstalleerd.
- cgroup v2 is gekoppeld op
/sys/fs/cgroup. - De commando's
ipeniptablesen de cgroup-matchfunctie van iptables zijn beschikbaar. - Je hebt
sudo-rechten om beleidsroutering en firewallregels in te stellen. - De main-routeringstabel van Linux bevat een werkende IPv4-standaardroute.
Het uitvoerbare bestand staat doorgaans hier:
/opt/mudfish/<미꾸라지 버전>/bin/mudfish-exclude
De Koreaanse plaatsaanduiding betekent de Mudfish-versie. Zoek het huidige installatiepad met:
ls /opt/mudfish/*/bin/mudfish-exclude
Staat het bestand niet in PATH, vervang dan mudfish-exclude in de voorbeelden door het gevonden volledige pad. Voor versie 6.5.4 is het standaardpad bijvoorbeeld /opt/mudfish/6.5.4/bin/mudfish-exclude.
Basisgebruik
- Start Mudfish en verbind met de gewenste items of Full VPN.
- Als het uit te sluiten programma al actief is, sluit het dan volledig af, inclusief systeemvak- en achtergrondprocessen.
- Start het programma opnieuw in de terminal met de volgende vorm:
sudo mudfish-exclude <프로그램> [프로그램 옵션...]
De plaatsaanduidingen staan voor het programma en de eventuele programmaopties. Voor Discord gebruik je bijvoorbeeld:
sudo mudfish-exclude discord
Om Firefox uit te sluiten en een privévenster te openen:
sudo mudfish-exclude firefox --private-window
Zet een uitvoerbaar pad met spaties tussen aanhalingstekens:
sudo mudfish-exclude "/path/to/My Program" --option
sudo wordt gebruikt om het netwerkbeleid in te stellen. Het programma zelf wordt waar mogelijk gestart met de UID, GID, thuismap en bureaubladsessie van de oorspronkelijke gebruiker die sudo heeft aangeroepen.
Goed om te weten
- Het uitsluitingsbeleid geldt voor het nieuwe proces dat met
mudfish-excludeis gestart en zijn kindprocessen. - Je kunt dit beleid niet achteraf aan een bestaand proces koppelen. Sluit programma's met één instantie eerst volledig af, zodat ze niet een bestaand proces hergebruiken.
- Bij de normale eenmalige uitvoering wordt het beleid automatisch opgeruimd wanneer het programma en alle kindprocessen zijn afgesloten.
- Je kunt meerdere
mudfish-exclude-commando's tegelijk uitvoeren. Het gedeelde beleid wordt pas opgeruimd nadat het laatste uitgesloten programma stopt. - IPv4-verkeer van uitgesloten programma's gebruikt geen Mudfish-knooppunten, versnelling of het openbare IP-adres van dat pad.
De werking controleren
Dit is het eenvoudigst als het openbare IPv4-adres vóór de Full VPN-verbinding verschilt van dat van het Full VPN-knooppunt.
Controleer eerst het adres in een gewone terminal terwijl Full VPN verbonden is:
curl -4 https://myip.mudfish.net
Voer hetzelfde commando uit via mudfish-exclude:
sudo mudfish-exclude curl -4 https://myip.mudfish.net
Het eerste resultaat moet het adres aan de kant van het Mudfish-knooppunt tonen, het tweede dat van je bestaande internetverbinding. Met -4 test je uitsluitend IPv4, passend bij de ondersteuning van dit hulpmiddel.
Wil je dit in een browser controleren, sluit de browser dan volledig af, start hem als volgt en open https://myip.mudfish.net:
sudo mudfish-exclude firefox
Afsluiten en beleid opruimen
Na normaal afsluiten is geen opruimcommando nodig. Als je mudfish-exclude geforceerd beëindigt, de terminal onverwacht sluit of het systeem stopt, kunnen beleidsregels achterblijven.
Sluit eerst alle programma's die je via dit hulpmiddel hebt gestart en voer daarna uit:
sudo mudfish-exclude --cleanup
Als je
--cleanupgebruikt terwijl uitgesloten programma's nog actief zijn, kan hun omleiding onmiddellijk stoppen.
Commando-opties
사용법: mudfish-exclude [옵션] 프로그램 [프로그램 옵션...]
Dit betekent: mudfish-exclude, gevolgd door eventuele opties, het programma en de programmaopties.
| Optie | Beschrijving |
|---|---|
-h, --help | Toont de hulptekst. |
--setup | Stelt alleen het uitsluitingsbeleid voor het netwerk in en stopt. Je kunt niet tegelijk een programma opgeven. |
--cleanup | Verwijdert het uitsluitingsbeleid en stopt. Je kunt niet tegelijk een programma opgeven. |
--no-setup | Start het programma in de opgegeven cgroup zonder het bestaande beleid opnieuw in te stellen. |
--cgroup NAME | De naam van de cgroup v2. Standaard mudfish-exclude. |
--mark VALUE | De firewallmarkering voor pakketten. Standaard 0x6d660001. |
--priority VALUE | De prioriteit van de IPv4-beleidsregel. Standaard 8252. |
--table VALUE | Het nummer van de routeringstabel voor de bestaande standaardroute. Standaard 8252. |
Zet het programma achter -- om expliciet aan te geven waar de opties eindigen:
sudo mudfish-exclude -- firefox --private-window
Beleid voor meerdere programma's hergebruiken
Voor gewoon gebruik raden we de eenmalige uitvoering per programma aan. Wil je het beleid één keer handmatig instellen en daarna voor meerdere commando's hergebruiken, doe dan het volgende:
sudo mudfish-exclude --setup
sudo mudfish-exclude --no-setup discord
sudo mudfish-exclude --no-setup firefox
Ruim het beleid altijd op nadat alle programma's zijn afgesloten:
sudo mudfish-exclude --cleanup
De handmatige methode ruimt niet automatisch op. Sommige bureaubladprogramma's kunnen bovendien tijdens het uitvoeren naar een andere systemd-cgroup verhuizen. Voor die programma's is de standaard eenmalige uitvoering geschikter, omdat die cgroup-verplaatsingen volgt en automatisch opruimt.
Als je --cgroup, --mark, --priority of --table wijzigt, gebruik dan dezelfde waarden bij --setup, --no-setup en --cleanup. Eigen waarden mogen niet conflicteren met bestaande firewallmarkeringen of beleidsrouteringsregels van het systeem.
Problemen oplossen
mudfish-exclude: command not found
Het uitvoerbare bestand staat niet in PATH. Zoek de installatie en gebruik het volledige pad:
ls /opt/mudfish/*/bin/mudfish-exclude
sudo /opt/mudfish/6.5.4/bin/mudfish-exclude discord
Vervang het versienummer in het tweede commando door je geïnstalleerde versie.
network policy setup requires root
Je hebt onvoldoende rechten om het netwerkbeleid in te stellen. Voeg sudo toe en probeer opnieuw:
sudo mudfish-exclude discord
cgroup v2 is required at /sys/fs/cgroup
Het systeem gebruikt geen cgroup v2 of heeft deze niet op de vereiste locatie gekoppeld. Controleer dit met:
test -f /sys/fs/cgroup/cgroup.controllers && echo "cgroup v2 사용 가능"
De uitvoer betekent dat cgroup v2 beschikbaar is. Verschijnt er niets, raadpleeg dan hoe je cgroup v2 in jouw distributie inschakelt.
iptables rule add failed of een cgroup-matchfout
Controleer of iptables is geïnstalleerd en of zowel de kernel als iptables cgroup match ondersteunen. Ook op distributies met nftables gebruikt dit hulpmiddel rechtstreeks compatibele iptables-commando's. Er is dus een werkende iptables-compatibiliteitslaag nodig.
failed to find the IPv4 default route
De IPv4-standaardroute voor je bestaande internetverbinding is niet gevonden in de main-routeringstabel. Controleer of het volgende commando een default-route toont:
ip -4 route show default table main
Als er geen standaardroute is of deze al naar een andere VPN-interface wijst, kan mudfish-exclude het oorspronkelijke internetpad niet instellen.