policy routing for VPNs
Project description
# Wepwawet
Route the traffic of a process over a interface.
> Note: currently only IPv4 is working.
# Install
Install using pip:
`bash $ pip install wepwawet `
# Examples
Route over wg0 interface and drop a bash shell:
`bash $ sudo wepwawet --interface wg0 exec /bin/bash `
> Note: when running a shell or something similar, make sure to correctly exit. Otherwise cleanup will not work and you will end up with zombie tables, iptable rules, etc.
Don’t route subnet 192.168.0.0/24 and 192.168.1.0/24 over the vpn (e.g. for a home network) and use the DNS 1.1.1.1:
`bash $ sudo wepwawet --exclude 192.168.0.0/24 --exclude 192.168.1.0/24 --dns 1.1.1.1 exec "ping 192.168.0.1" `
Only route a specific subnet over the interface, but the other traffic flows through your default interface:
`bash $ sudo wepwawet --net 192.168.0.0/24 exec /bin/bash `
> Note: This creates an iptable masquerade rule for most interfaces on the system. Depending on the number of interfaces, this might get a little bit messy…
# Disable automatic rule creation in your VPN
## Wireguard
Add to your wireguard interface configuration file:
`toml [Interface] ... Table = off ... `
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
File details
Details for the file wepwawet-0.1.0-py3-none-any.whl
.
File metadata
- Download URL: wepwawet-0.1.0-py3-none-any.whl
- Upload date:
- Size: 2.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.7.1 importlib_metadata/4.8.1 pkginfo/1.8.2 requests/2.27.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.10.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | f021d3bc03fd1c546c43fd66928c0b9b061a69d5c589204d1a9fd6184478e761 |
|
MD5 | d4c7411ed3ffff72e9fe76c9da9b9f86 |
|
BLAKE2b-256 | 3c17b381a7ac94708c40eb95cc538aee36c3881019c3bb9deb0d27168c5c6003 |