Initial commit: local_machine docs and scripts
This commit is contained in:
163
docs/hotspot/scripts/README.md
Normal file
163
docs/hotspot/scripts/README.md
Normal file
@@ -0,0 +1,163 @@
|
||||
# Гайд по скриптам hotspot
|
||||
|
||||
Скрипты для настройки и использования хотспота с VPN на Mac: установка WireGuard, TTL, запуск и остановка VPN.
|
||||
|
||||
**Контекст:** [GUARANTEED_TETHERING_HIDE.md](../GUARANTEED_TETHERING_HIDE.md) — полная схема скрытия tethering (VPN на Mac, не на телефоне; TTL=65; USB модем).
|
||||
|
||||
---
|
||||
|
||||
## Обзор скриптов
|
||||
|
||||
| Скрипт | Назначение | Когда запускать |
|
||||
|--------|------------|-----------------|
|
||||
| `setup-wireguard-mac.sh` | Первичная установка WireGuard и конфига | Один раз при настройке |
|
||||
| `set-ttl-macos.sh` | Установка TTL=65 (скрытие tethering) | Один раз, при необходимости — после перезагрузки |
|
||||
| `vpn-up.sh` | Запуск WireGuard VPN | Каждый раз при использовании USB/хотспота |
|
||||
| `vpn-down.sh` | Остановка WireGuard VPN | По окончании работы через хотспот |
|
||||
|
||||
---
|
||||
|
||||
## 1. setup-wireguard-mac.sh
|
||||
|
||||
**Назначение:** Установка WireGuard на macOS и разовая настройка (конфиг в `/etc/wireguard/wg0.conf`, первый запуск VPN).
|
||||
|
||||
**Запуск:**
|
||||
```bash
|
||||
cd /Users/eternal/code/local_machine
|
||||
./docs/hotspot/scripts/setup-wireguard-mac.sh
|
||||
```
|
||||
|
||||
**Что делает:**
|
||||
1. Проверяет наличие `wg-quick`; при отсутствии ставит `wireguard-tools` через Homebrew.
|
||||
2. Создаёт `/etc/wireguard` (права `700`).
|
||||
3. Копирует `docs/hotspot/wg-ru.conf` в `/etc/wireguard/wg0.conf` (права `600`).
|
||||
4. Запускает `wg-quick up wg0`.
|
||||
5. Проверяет внешний IP (ожидается `83.136.235.230`).
|
||||
|
||||
**Требования:**
|
||||
- Файл конфигурации: `docs/hotspot/wg-ru.conf` (относительно корня репозитория).
|
||||
- Запуск из корня репо или с путём, где доступен `docs/hotspot/wg-ru.conf`.
|
||||
- `sudo` для установки в `/etc/wireguard` и для `wg-quick up`.
|
||||
|
||||
**После установки:** VPN уже поднят; для следующих сессий используйте `vpn-up.sh` / `vpn-down.sh`.
|
||||
|
||||
---
|
||||
|
||||
## 2. set-ttl-macos.sh
|
||||
|
||||
**Назначение:** Установка TTL=65 на Mac, чтобы после прохождения через телефон (TTL-1) оператор видел TTL=64 и не определял tethering.
|
||||
|
||||
**Запуск:**
|
||||
```bash
|
||||
./docs/hotspot/scripts/set-ttl-macos.sh
|
||||
```
|
||||
|
||||
**Что делает:**
|
||||
1. Показывает текущий TTL.
|
||||
2. Выполняет `sudo sysctl -w net.inet.ip.ttl=65`.
|
||||
3. Проверяет, что TTL стал 65.
|
||||
4. Добавляет `net.inet.ip.ttl=65` в `/etc/sysctl.conf`, если ещё нет (сохранится после перезагрузки).
|
||||
|
||||
**Требования:** `sudo`.
|
||||
|
||||
**Когда запускать:** Один раз после установки ОС/нового Mac; при необходимости — после каждой перезагрузки, если значение не подхватывается из `sysctl.conf`.
|
||||
|
||||
**Проверка:**
|
||||
```bash
|
||||
sysctl net.inet.ip.ttl
|
||||
# net.inet.ip.ttl: 65
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 3. vpn-up.sh
|
||||
|
||||
**Назначение:** Быстрый запуск WireGuard VPN на Mac при использовании интернета через USB модем/хотспот.
|
||||
|
||||
**Запуск:**
|
||||
```bash
|
||||
./docs/hotspot/scripts/vpn-up.sh
|
||||
```
|
||||
|
||||
**Что делает:**
|
||||
1. Выполняет `sudo wg-quick up wg0`.
|
||||
2. Ждёт 2 секунды.
|
||||
3. Проверяет внешний IP через `api.ipify.org` (ожидается `83.136.235.230`).
|
||||
4. Выводит `sudo wg show`.
|
||||
|
||||
**Требования:**
|
||||
- WireGuard уже настроен (`setup-wireguard-mac.sh` выполнен хотя бы раз).
|
||||
- Конфиг: `/etc/wireguard/wg0.conf`.
|
||||
- `sudo`.
|
||||
|
||||
**Порядок при использовании хотспота:** сначала TTL=65 (если ещё не стоит), на телефоне включить USB модем **без VPN**, затем на Mac запустить этот скрипт.
|
||||
|
||||
---
|
||||
|
||||
## 4. vpn-down.sh
|
||||
|
||||
**Назначение:** Остановка WireGuard VPN на Mac.
|
||||
|
||||
**Запуск:**
|
||||
```bash
|
||||
./docs/hotspot/scripts/vpn-down.sh
|
||||
```
|
||||
|
||||
**Что делает:** Выполняет `sudo wg-quick down wg0`.
|
||||
|
||||
**Требования:** `sudo`.
|
||||
|
||||
---
|
||||
|
||||
## Типичный сценарий
|
||||
|
||||
### Первая настройка (один раз)
|
||||
|
||||
```bash
|
||||
cd /Users/eternal/code/local_machine
|
||||
|
||||
# 1. Установить WireGuard и конфиг, поднять VPN
|
||||
./docs/hotspot/scripts/setup-wireguard-mac.sh
|
||||
|
||||
# 2. Установить TTL=65
|
||||
./docs/hotspot/scripts/set-ttl-macos.sh
|
||||
```
|
||||
|
||||
### Каждое использование хотспота
|
||||
|
||||
1. На телефоне: **не** включать VPN, включить **USB модем** (или Wi‑Fi точку доступа).
|
||||
2. На Mac:
|
||||
```bash
|
||||
./docs/hotspot/scripts/vpn-up.sh
|
||||
```
|
||||
3. Проверка:
|
||||
```bash
|
||||
curl https://api.ipify.org
|
||||
# 83.136.235.230
|
||||
```
|
||||
4. По окончании:
|
||||
```bash
|
||||
./docs/hotspot/scripts/vpn-down.sh
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Права на выполнение
|
||||
|
||||
Если скрипты не запускаются:
|
||||
|
||||
```bash
|
||||
chmod +x docs/hotspot/scripts/setup-wireguard-mac.sh
|
||||
chmod +x docs/hotspot/scripts/set-ttl-macos.sh
|
||||
chmod +x docs/hotspot/scripts/vpn-up.sh
|
||||
chmod +x docs/hotspot/scripts/vpn-down.sh
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Связанные документы
|
||||
|
||||
- [GUARANTEED_TETHERING_HIDE.md](../GUARANTEED_TETHERING_HIDE.md) — полная схема: TTL, VPN на Mac, USB модем, порядок действий, решение проблем.
|
||||
- [QUICK_FIX_VPN_ROUTING.md](../QUICK_FIX_VPN_ROUTING.md) — быстрый фикс: VPN на Mac вместо телефона.
|
||||
- [ANDROID_VPN_TETHERING_ROUTING.md](../ANDROID_VPN_TETHERING_ROUTING.md) — почему tethering не идёт через VPN на Android.
|
||||
- [SPEED_LIMITATIONS_AND_USB_TETHERING.md](../SPEED_LIMITATIONS_AND_USB_TETHERING.md) — ограничения скорости и настройка USB tethering.
|
||||
Reference in New Issue
Block a user