A script for generating WireGuard configs from Surfshark VPN

Overview

Surfshark WireGuard

A script for generating WireGuard configs from Surfshark VPN.
You must have python3 available on your machine.

Usage

Currently we support only Unix based systems, Windows is not supported yet.
To use the scrpt:

python wiregen.py -u USERNAME -p PASSWORD

If above command doesn't work, try:

python3 wiregen.py --user USERNAME --pass PASSWORD
You might also like...
Openconnect VPN RPi Gateway

Openconnect-VPN-RPi-Gateway See the blog (Chinese) for how to build an Openconne

KoreaVPN - Create a VPN App for Mac Using Automator

VPN app 만들기 (a.k.a. KoreaVPN) VPN을 사용하기 위해 들어가는 10초의 시간을 아끼고, 귀찮음을 최소화 하기 위해 크롤링

A vpn that sits in your browser, accessible via a website

VPNInYourBrowser A vpn that sits in your browser, accessible via a website Example setup: https://VPNInBrowser.jaffa42.repl.co Setup Put the code onto

A vpn that sits in your browser, accessible via a website

VPNInYourBrowser A vpn that sits in your browser, accessible via a website Example setup: https://VPNInBrowser.jaffa42.repl.co Setup Put the code onto

A simple python application for generating a WiFi QR code for ease of connection

A simple python application for generating a WiFi QR code Initialize the class by providing QR code values WiFi_QR_Code(self, error_correction: int =

PcapConverter - A project for generating 15min frames out of a .pcap file containing network traffic

CMB Assignment 02 code + notebooks This is a project for containing code for the

Simple Port Scanner script written in Python, plans is to expand upon this script to turn it into a GUI based pen testing suite

PortScanner Simple Port Scanner script written in Python, plans is to expand upon this script to turn it into a GUI based pen testing suite. #IMPORTAN

euserv auto-renew script - A Python script which can help you renew your free EUserv IPv6 VPS.
euserv auto-renew script - A Python script which can help you renew your free EUserv IPv6 VPS.

eu_ex eu_ex means EUserv_extend. A Python script which can help you renew your free EUserv IPv6 VPS. This Script can check the VPS amount in your acco

ProtOSINT is a Python script that helps you investigate Protonmail accounts and ProtonVPN IP addresses
ProtOSINT is a Python script that helps you investigate Protonmail accounts and ProtonVPN IP addresses

ProtOSINT ProtOSINT is a Python script that helps you investigate ProtonMail accounts and ProtonVPN IP addresses. Description This tool can help you i

Comments
  • Fails after generating two configs

    Fails after generating two configs

    Status: OK Register: True Valid: 2022-08-11T17:35:24+00:00 Generating zip file Tirana Created Successfully. Algiers Created Successfully. Traceback (most recent call last): File "/home/Nick/Wiregen/wiregen.py", line 216, in main(sys.argv[1:]) File "/home/Nick/Wiregen/wiregen.py", line 209, in main Builder(path) File "/home/Nick/Wiregen/wiregen.py", line 109, in Builder ip = socket.gethostbyname(i['connectionName']) socket.gaierror: [Errno -2] Name or service not known

    opened by dontcrash 9
  • Error 401

    Error 401

    python3 wiregen.py --user * --pass * Error 401

    python wiregen.py -u * -p * File "wiregen.py", line 24 print(f'PrivateK : {prvK}') ^ SyntaxError: invalid syntax

    opened by OBrein 4
  • Wiregen confs need to be regenerated after a few days?

    Wiregen confs need to be regenerated after a few days?

    I'm rather new to wireguard, so I don't know if this is normal behavior.

    After a seemingly random amount of time (~1-2 weeks), all the .conf files generated by wiregen become unusable, as if they "expired"? Wireguard doesn't seem to throw any errors, but I won't have any internet access. I tried switching servers, but the issue seems to affect all confs. Of course if I disconnect from wireguard, my internet connection comes back.

    When it happens, if I regenerate the confs with wiregen, replace them in /etc/wireguard and try to reconnect, it fixes the problem and everything works fine until the confs "expire" again.

    I'm not sure if this is an issue with:

    • My wireguard installation
    • Surfshark
    • Wiregen
    • My OS settings
    • Something else entirely

    But I've got wireguard configured on two different computers both running Manjaro linux KDE. And the issue keeps happening on both computers.

    Switching servers, rebooting, reconnecting and so on doesn't seem to fix anything, the only fix I found is to regenerate the confs.

    opened by Inkapa 2
  • What is uymgg1.com?

    What is uymgg1.com?

    The script uses two different hostnames to access the Surfshark API: api.surfshark.com and api.uymgg1.com

    What is uymgg1.com?

    Replacing all instances of uymgg1 with surfshark in the script works.

    Now, based on anecdotal reports, it does look like uymgg1 may actually be a Surfshark URL, but a few things gave me spoofy vibes:

    • The surfshark.com SSL certificate was issued by Cloudflare. The uymgg1.com certificate was issued by Let's Encrypt.
    • The domain registration information for the two domains looks quite different.
    • Browsing to https://uymgg1.com involves a noticeable delay before the site loads. But pinging uymgg1.com results in much faster response times than pinging surfshark.com (both from a Seattle server: 15ms versus 50ms).

    If the surfshark domain works, perhaps consider switching to eliminate any confusion. I am not saying you are doing anything nefarious, but the unexpected nature of a strange URL combined with the three factors above made me a bit suspicious. It's why I changed all the URLs to surfshark.com, and I'm glad it worked because I am not willing to authenticate against uymgg1 unless I see something from Surfshark claiming ownership of that URL.

    Aside from that, thanks for throwing this together, so far it's working perfectly well. I'm curious, how did you figure out the correct sequence of steps, endpoints, and request fields/payload structure?

    opened by rallyemax 1
Owner
Alireza Ahmand
Android,Windows,Web developer my hobby is android cracking. i love GNU/Linux world.i use arch linux every time. i live in babolsar from iran.
Alireza Ahmand
Simplest dashboard for WireGuard VPN written in Python w/ Flask

Hi! I'm planning the next major update for this project, please let me know if you have any suggestions or feature requests ;) You can create an issue

Donald Zou 763 Jan 2, 2023
Python Program to connect to different VPN servers autoatically using Windscribe VPN.

AutomateVPN What is VPN ? VPN stands for Virtual Private Network , it is a technology that creates a safe and encrypted connectionover a less secure n

Vivek 1 Oct 27, 2021
Ctech Didik Auto Script VPN 👨🏻‍💻Youtube: Ctech Didik

CTech Didik Auto Script VPN SUPPORT OPERATING SYSTEM Debian GNU/Linux 11 (Bullseye) Debian GNU/Linux 10 (Buster) Debian GNU/Linux 9 (Stretch) Ubuntu S

Ctech Didik 27 Dec 20, 2022
Python script to stop qBittorrent from torrenting without VPN for users with static IP.

Python script to stop qBittorrent from torrenting without VPN for users with static IP.

voidoak_ 1 Oct 25, 2021
wg-exporter is a simple yet effective Prometheus exporter for Wireguard

wg-exporter wg-exporter is a simple yet effective Prometheus exporter for Wireguard. What are the collected metrics ? General: wg_connected_peers: num

men1n2 3 May 20, 2022
SonicWall SSL-VPN Exploit

VisualDoor SonicWall SSL-VPN Exploit, as used by Phineas Fisher to hack Cayman Trust Bank and Hacking Team.

null 169 Nov 15, 2022
sshuttle: where transparent proxy meets VPN meets ssh

Transparent proxy server that works as a poor man's VPN. Forwards over ssh. Doesn't require admin. Works with Linux and MacOS. Supports DNS tunneling.

null 9.4k Jan 9, 2023
A fire and forget command-line tool to allow for easy transitions of VPN connections between a pool of AWS machines.

VPN Swapper A fire and forget command-line tool to allow for easy transitions of VPN connections between a pool of AWS machines. Dependencies poetry -

Workday 5 Jul 7, 2022
Pritunl is a distributed enterprise vpn server built using the OpenVPN protocol.

Pritunl is a distributed enterprise vpn server built using the OpenVPN protocol.

Pritunl 3.8k Jan 3, 2023
Raspberry Pi Based Serial Console Server, with PushBullet Notification of IP changes, Automatic VPN termination, custom menu, Power Outlet Control, and a lot more

ConsolePi Acts as a serial Console Server, allowing you to remotely connect to ConsolePi via Telnet/SSH/bluetooth to gain Console Access to devices co

null 120 Jan 5, 2023