Simple-Dimple Telegram Bot for Wireguard VPN config generation
/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 messageJust 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 👉🏻👈🏻
/newbot
, choose a bot's name and username, and receive Telegram Bot API Tokenudp:51820
)go
, wireguard
and wireguard-tools
on your server
wg0.conf
) and run Wireguard
git clone git@github.com:skoret/wireguard-telegram-bot.git
cd wireguard-telegram-bot && cp .env.example .env
Set env variables in .env
file:
Variable | Content | Notes |
---|---|---|
TELEGRAM_APITOKEN |
your Telegram Bot API token from @BotFather | keep it in secret! |
ADMIN_USERNAMES |
list of Telegram usernames, separated by commas, who are allowed to access this bot | leave variable empty for public access |
DNS_IPS |
list of DNS ip addresses, separated by commas | e.g. 8.8.8.8,8.8.4.4 |
SERVER_ENDPOINT |
<your_machine's_external_ip:open_port> |
|
WIREGUARD_INTERFACE |
new Wireguard interface name | e.g. wg0 |
TEMPLATES_FOLDER |
path to configuration template files | probably, you don't wanna change it |
DEV_MODE |
false for common usestrue for mocked internal wireguard client |
dev 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!