Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/mrahmadt/smartgw
Domain based VPN Gateway/Proxy for all devices
https://github.com/mrahmadt/smartgw
dns-server dnsmasq firewall gateway http-proxy nordvpn privacy proxy smart-dns sniproxy unblocker vpn vpn-client
Last synced: 23 days ago
JSON representation
Domain based VPN Gateway/Proxy for all devices
- Host: GitHub
- URL: https://github.com/mrahmadt/smartgw
- Owner: mrahmadt
- Created: 2018-08-19T01:58:22.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2020-08-13T08:29:40.000Z (over 4 years ago)
- Last Synced: 2024-08-05T09:15:10.043Z (4 months ago)
- Topics: dns-server, dnsmasq, firewall, gateway, http-proxy, nordvpn, privacy, proxy, smart-dns, sniproxy, unblocker, vpn, vpn-client
- Language: PHP
- Homepage:
- Size: 163 KB
- Stars: 54
- Watchers: 5
- Forks: 16
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
- awesome-network-stuff - **23**星
README
# SmartGW
SmartGW is a VPN Gateway/Proxy that allows you to route HTTP/HTTPS traffic for specific internet domains to go through VPN tunnel while keeping the other traffic goes through your ISP gateway.
**Example:**
- HTTP/HTTPS for **netflix.com** (from all devices in your network) --> Will go through your **VPN tunnel**.
- HTTP/HTTPS for **youtube.com** (from all devices in your network) --> Will go through your **ISP gateway**.**This can help you to:**
- Access Geo-restricted content.
- Access any blocked domains.
- Use it with all your devices (Laptop, Mobiles, SmartTV...etc).
- Utilize your full ISP network speed to access any site that you don't want it to go through the VPN tunnel.
- Work with Pi-Hole for Network-wide Ad Blocking
- More browsing privacy?.## Features
* Works with all devices in local network (PC, Laptop, Mobiles, SmartTV...etc).
* No need to change any settings in your devices, install SmartGW and configure the DNS in your internet router.
* Simple GUI to check SmartGW status and to add/remove any domain.
* Automatically connect to the fastest low latency VPN servers in a given country.
* Auto retry and auto-failover to next best VPN server if the connection dies.## How difficult it's?
The setup is straightforward, you need a Linux server, and a NordVPN VPN subscription.## What Do I need to start?
1. Linux server (any old laptop or single-board such us Raspberry Pi will work).
2. NordVPN VPN subscription.
3. Static IP in your local network.
4. Docker engine with basic know how.## Instructions
1. Install Linux.
2. Set a static IP in your server.
3. Install Docker.
4. Download SmartGW source code.
5. Rename example.env to .env and change the variables
```
#Your NordVPN Username
[email protected]
#Your NordVPN Password
VPN_PASSWORD=yourNordvpnPassword
#VPN country
VPN_OPTIONS=us
#Local network CIDR network
CIDR_NETWORK=192.168.1.0/24
#No need to change this
VPN_DNS1=103.86.96.100
#No need to change this
VPN_DNS2=103.86.99.100
#Pi-Hole web admin password
PIHOLE_PASSWORD=pihole
```
6. Run SmartGW docker-compose
``` bash
docker-compose up
```
7. Open your browser and type your SmartGW IP (port 8080) (http://Your-Server-IP:8080/) and start adding your domains (e.g., yahoo.com).
8. Define SmartGW IP address as the only DNS entry in the router.
```
Login to your router’s configuration page and find the DHCP/DNS settings.
Note: make sure you adjust this setting under your LAN settings and not the WAN.
```
![6e475c318358d8266052015e28841a72b3cc3b84](https://user-images.githubusercontent.com/957921/44320410-9cccc200-a44a-11e8-88fe-570d01eb2e93.png)Enjoy!.
## Screenshots
![Screen Shot 2019-04-27 at 3 57 54 AM](https://user-images.githubusercontent.com/957921/56842702-fc645280-68a0-11e9-83df-0a9c4089a87e.png)
![Screen Shot 2019-04-27 at 3 58 13 AM](https://user-images.githubusercontent.com/957921/56842707-fff7d980-68a0-11e9-975b-1e81e1bc6133.png)
.