wireguard-telegram-bot
wireguard-telegram-bot copied to clipboard
easy-peasy wg tg bot
wireguard-telegram-bot
Simple-Dimple Telegram Bot for Wireguard VPN config generation
Functionality
/menu— list available commands/newkeys— create a new config file and qr code for new generated key pair/pubkey— create a new config file template for the public key you provided/help— print this message
Public Wireguard Telegram Bot
Just drop a message to @wrgrdtgbot and ask him for some new config for you and your friends
Install Wireguard client for your device and import generated file or scan qr code
Disclaimer: stability, availability and security are not guaranteed! Sorry not sorry 👉🏻👈🏻
Setup your own Wireguard Telegram Bot
-
Go to @BotFather, send him
/newbot, choose a bot's name and username, and receive Telegram Bot API Token -
Go to AWS, GCP, whatever ☁️ and setup your remote server in desired region
- You need to open corresponding port (e.g.
udp:51820)
- You need to open corresponding port (e.g.
-
Install
go,wireguardandwireguard-toolson your server- Someday, we hope there will be a handy Dockerfile for it 🐳
-
Generate Wireguard key pair for your server, create appropriate config file (e.g.
wg0.conf) and run Wireguard- You're all big boys, you'll handle it
-
git clone [email protected]:skoret/wireguard-telegram-bot.git -
cd wireguard-telegram-bot && cp .env.example .env -
Set env variables in
.envfile:Variable Content Notes TELEGRAM_APITOKENyour Telegram Bot API token from @BotFather keep it in secret! ADMIN_USERNAMESlist of Telegram usernames, separated by commas, who are allowed to access this bot leave variable empty for public access DNS_IPSlist of DNS ip addresses, separated by commas e.g. 8.8.8.8,8.8.4.4SERVER_ENDPOINT<your_machine's_external_ip:open_port>WIREGUARD_INTERFACEnew Wireguard interface name e.g. wg0TEMPLATES_FOLDERpath to configuration template files probably, you don't wanna change it DEV_MODEfalsefor common usestruefor mocked internal wireguard clientdev mode suitable for manual bot ui tests -
sudo go run cmd/bot/main.go -
🎉 🍻 🥳
We hope the bot will be helpful. The code is not of the best quality. Contributions are welcome!
Acknowledgements
- Thanks to @randallmunroe and all ipython/xkcd-font contributors for such an awesome stuff
- Thanks to authors from Noun Project