timeweb-loodka/README.md
q cfdfd27196 Initial commit: Timeweb floating IP grabber
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-05-31 19:45:26 +03:00

60 lines
2.6 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# timeweb-loodka
Скрипт для получения «floating IP» в облаке Timeweb из нужных подсетей.
Для каждого аккаунта по кругу создаёт floating IP, проверяет попадание в заданный
диапазон подсетей и удаляет неподходящие. О результатах уведомляет в Telegram.
## Установка
```bash
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt
```
## Настройка
1. Скопируйте пример конфигурации и заполните значения:
```bash
cp .env.example .env
```
| Переменная | Описание |
| ------------------- | ----------------------------------------------------- |
| `AVAILABILITY_ZONE` | Зона доступности (например `spb-3`) |
| `IS_DDOS_GUARD` | Включить DDoS-Guard (`true`/`false`) |
| `MAX_ATTEMPTS` | Сколько раз пытаться получить подходящий IP |
| `ACCOUNTS_FILE` | Файл с API-ключами аккаунтов (по одному на строку) |
| `PROXIES_FILE` | Файл с прокси (по одному на строку, опционально) |
| `TG_BOT_TOKEN` | Токен Telegram-бота (у `@BotFather`) |
| `TG_CHAT_ID` | Chat ID для уведомлений (у `@userinfobot`) |
2. Создайте `accounts.txt` — по одному API-ключу Timeweb на строку.
3. (Опционально) создайте `proxies.txt` — по одному прокси на строку, например:
```
socks5://user:pass@host:port
```
Прокси назначаются аккаунтам по кругу. Если файл отсутствует — запросы идут напрямую.
> Файлы `.env`, `accounts.txt` и `proxies.txt` содержат секреты и игнорируются git.
## Запуск
```bash
python tw.py
```
## Запуск по расписанию (systemd)
В комплекте есть `tw.service` и `tw.timer` (ежедневный запуск в 08:00).
Отредактируйте пути/пользователя под своё окружение, затем:
```bash
sudo cp tw.service tw.timer /etc/systemd/system/
sudo systemctl daemon-reload
sudo systemctl enable --now tw.timer
```