Follow

**Название концепта:**
YggVPN: Децентрализованный VPN на основе Yggdrasil

**Подназвание:**
Доступ во все сети с монетизацией проксирования

**Вступление:**
В мире, где сетевое пространство все чаще становится управляемым, децентрализованные технологии играют ключевую роль в обеспечении приватности и свободы доступа. YggVPN — это новый концепт VPN, работающий на базе Yggdrasil, который разрешает пользователям доступ к любым сетям (включая Clearnet, Tor, I2P и саму Yggdrasil), а провайдеры сервиса получают вознаграждение за проксирование.

**Описание:**
YggVPN сочетает в себе силу децентрализованной маршрутизации Yggdrasil и современных VPN-технологий (таких как WireGuard или OpenVPN). Пользователи подключаются к сети через локальные узлы, которые запускаются провайдерами услуги. Это обеспечивает доступ во все мыслимые сети (как открытые, так и анонимные), тогда как за каждый мегабайт проксированного трафика провайдеры получают криптовалютные вознаграждения на базе Vertcoin Core (форк).

### Примеры конфигураций и кода

#### Установка и настройка Yggdrasil
##### Установка:
```bash
# Скачай бинарник или установи через пакетный менеджер
wget github.com/yggdrasil-network/y -O /usr/local/bin/yggdrasil
chmod +x /usr/local/bin/yggdrasil

# Сгенерируй конфигурацию
yggdrasil -genconf > /etc/yggdrasil.conf
```

##### Настройка:
1. Открой файл `/etc/yggdrasil.conf` и найди:
```json
"Listen": ["tcp://0.0.0.0:12345"]
```
Это позволит принимать входящие подключения.

2. Запусти Yggdrasil:
```bash
yggdrasil -useconffile /etc/yggdrasil.conf
```

3. Проверь статус:
```bash
curl -s http://localhost:9001/status
```

#### Конфигурация WireGuard поверх Yggdrasil
##### Установка:
```bash
apt update && apt install wireguard
```

##### Настройка:
1. Создай ключи:
```bash
wg genkey | tee privatekey | wg pubkey > publickey
```

2. Создай конфиг `/etc/wireguard/wg0.conf`:
```ini
[Interface]
PrivateKey = <твоя_приватка>
Address = 10.0.0.1/24
ListenPort = 51820

[Peer]
PublicKey = <публичный_ключ_клиента>
AllowedIPs = 10.0.0.2/32
Endpoint = <адрес_клиента>:51820
```

3. Запусти WireGuard:
```bash
wg-quick up wg0
```

4. Для маршрутизации через Yggdrasil добавь в `/etc/wireguard/wg0.conf`:
```ini
PostUp = ip route add 200::/7 dev yggdrasil
```

#### HTTP-прокси через Squid
##### Установка Squid:
```bash
apt install squid
```

##### Настройка:
1. Открой файл `/etc/squid/squid.conf` и добавь:
```plaintext
http_port 3128
acl localnet src 10.0.0.0/24
http_access allow localnet
```

2. Перезапусти Squid:
```bash
systemctl restart squid
```

#### Настройка платежей через Vertcoin
1. **Форк Vertcoin Core:**
- Склони репозиторий:
```bash
git clone github.com/vertcoin-project/ve
cd vertcoin-core
```
- Добавь функционал учёта трафика и формирования транзакций.

2. **Настрой кошелек:**
Установи и запусти Vertcoin Daemon:
```bash
vertcoind -daemon
```

3. **API для оплаты:**
Напиши Python-скрипт с использованием библиотеки `bitcoinrpc`:
```python
from bitcoinrpc.authproxy import AuthServiceProxy

rpc = AuthServiceProxy("http://<user>:<password>@localhost:8332")

def create_payment_request(amount, address):
return rpc.sendtoaddress(address, amount)
```

### Автоматизация и развертывание

#### Docker Compose:
```yaml
version: '3.8'
services:
yggdrasil:
image: yggdrasil-network/yggdrasil
volumes:
- ./yggdrasil.conf:/etc/yggdrasil.conf
ports:
- "12345:12345"
wireguard:
image: linuxserver/wireguard
cap_add:
- NET_ADMIN
environment:
- PEERS=client1
- ALLOWEDIPS=0.0.0.0/0
squid:
image: datadog/squid
ports:
- "3128:3128"
```

**Ключи:**
- Yggdrasil
- VPN
- WireGuard
- OpenVPN
- Децентрализованная маршрутизация
- Tor
- I2P
- Криптовалюта
- Vertcoin Core

Sign in to participate in the conversation
Qoto Mastodon

QOTO: Question Others to Teach Ourselves
An inclusive, Academic Freedom, instance
All cultures welcome.
Hate speech and harassment strictly forbidden.