Landings get per-project themes (params.theme, params.fonts) and optional chat/start/note/engine sections, so they don't look like clones. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
92 lines
7.2 KiB
Markdown
92 lines
7.2 KiB
Markdown
---
|
||
title: "MyPoint VPN"
|
||
tagline: "Свой VPN на своем сервере за одно сообщение"
|
||
description: "Арендуйте сервер, пришлите Телеграм-боту IP и пароль, и он сам закроет сервер, поставит 3x-ui и настроит VLESS + Reality. Ключи и подписки для клиентов тоже выдает бот."
|
||
domain: "https://mypointvpn.sokolab.xyz/"
|
||
badge: "Телеграм-бот · Debian 12 и 13"
|
||
theme: mypointvpn
|
||
fonts: "family=Unbounded:wght@500;700&family=Manrope:wght@400;600;800&family=JetBrains+Mono:wght@400;600"
|
||
post: "/blog/mypointvpn-serverus"
|
||
postLabel: "Как бот для VPN научился управлять серверами"
|
||
build:
|
||
list: never
|
||
sitemap:
|
||
disable: true
|
||
|
||
nav:
|
||
- { label: "Возможности", href: "#features" }
|
||
- { label: "Как начать", href: "#start" }
|
||
- { label: "Serverus", href: "#engine" }
|
||
- { label: "Сообщество", href: "#community" }
|
||
|
||
cta:
|
||
- { label: "Открыть бота", href: "https://t.me/barbarisiska_bot", primary: true }
|
||
- { label: "Как начать", href: "#start" }
|
||
|
||
chat:
|
||
title: "Так это выглядит в боте"
|
||
messages:
|
||
- { from: "me", text: "`203.0.113.7:пароль-root`" }
|
||
- { from: "bot", text: "ssh перенесен на случайный порт, вход только по ключу. Фаервол включен, система обновлена." }
|
||
- { from: "bot", text: "3x-ui установлена: VLESS + XHTTP + Reality на 443 порту." }
|
||
- { from: "me", text: "Выпустить ключ" }
|
||
- { from: "bot", text: "Готово. Вот ссылка на подписку для клиента." }
|
||
|
||
features:
|
||
title: "Что вы получаете"
|
||
items:
|
||
- title: "VLESS + XHTTP + Reality"
|
||
text: "Подключение на 443 порту. Цель для Reality бот подбирает сам."
|
||
- title: "Сервер маскировки"
|
||
text: "По желанию. Клиенты подключаются к нему, он пересылает трафик на панель, и адрес панели нигде не светится."
|
||
- title: "Сертификаты"
|
||
text: "Домен с Let's Encrypt для панели и подписки. Без домена бот выпустит короткий сертификат на IP и будет продлевать его сам."
|
||
- title: "Ключи без ограничений"
|
||
text: "Ни по трафику, ни по сроку, ни по устройствам. Подписки для v2rayN, Hiddify, Happ и v2rayNG. По каждому ключу видно трафик и когда клиент был онлайн."
|
||
- title: "Прокси и DNS"
|
||
text: "На выходе свой прокси или Cloudflare WARP. DNS на сервере шифруется: DNS-over-TLS, а если его режут, запасной DNS-over-HTTPS."
|
||
- title: "Присмотр"
|
||
text: "Раз в сутки бот проверяет панель, Xray и сертификат подписки и пишет, если что-то сломалось или починилось."
|
||
|
||
start:
|
||
title: "Как начать"
|
||
steps:
|
||
- title: "Арендуйте сервер"
|
||
text: "Любой хостер, Debian 12 или 13. Нужны только IP и пароль root."
|
||
- title: "Пришлите боту `ip:пароль`"
|
||
text: "Бот переведет ssh на случайный порт со входом по ключу, включит фаервол, обновит систему и поставит 3x-ui."
|
||
- title: "Выпустите ключ"
|
||
text: "Добавьте ссылку на подписку в клиент, и VPN работает."
|
||
|
||
note:
|
||
title: "Сервер остается вашим"
|
||
text: "Кнопка «Вернуть» убирает доступы бота, откатывает ssh и фаервол и присылает новый пароль root. Данные на сервере остаются. А через Cloudflare бот не работает специально: Cloudflare сам завершает TLS, и Reality за ним работать не может."
|
||
|
||
engine:
|
||
kicker: "Под капотом"
|
||
title: "Serverus"
|
||
lead: "Почти вся работа бота сводится к одному: взять голый Debian, закрыть его и управлять им по ключу. Этим занимается `serverus`, пакет на ansible внутри проекта. VPN лишь одна из задач поверх него, вторая это docker-сервер."
|
||
items:
|
||
- "Docker, Caddy и автообновления системы, сертификаты для доменов выпускает Caddy"
|
||
- "Приложение это папка с `docker-compose.yaml`, `.env` и `caddy.conf`, архивом или по файлам"
|
||
- "Перед применением разница и предупреждения по файлам, в том числе если домен не указывает на сервер"
|
||
- "Проверка compose, портов и конфига Caddy. При ошибке приложение не трогается, пересоздаются только изменившиеся сервисы"
|
||
- "Откат на предыдущую версию файлов, старт, стоп, рестарт и логи по сервисам"
|
||
- "Логин в приватный docker registry и гостевой доступ к volumes для заливки данных"
|
||
callout:
|
||
title: "Бот держит сам себя"
|
||
text: "Прод MyPoint VPN развернут как приложение Serverus на docker-сервере, которым управляет этот же бот. Что умеет бот, решает интерфейс в админке: «MyPoint VPN», «Serverus» или оба сразу."
|
||
|
||
community:
|
||
title: "Сообщество"
|
||
lead: "Вопросы, идеи и баги принимаются в Redmine. Регистрироваться не обязательно: гостевой вход описан в [теме на форуме](https://redmine.sokolab.xyz/boards/2/topics/3)."
|
||
links:
|
||
- { title: "Бот", text: "Начать пользоваться в Телеграме.", href: "https://t.me/barbarisiska_bot" }
|
||
- { title: "Код", text: "Исходники и вики: деплой, перенос данных, приложения Serverus.", href: "https://git.sokolab.xyz/s0k0l/mypointvpn" }
|
||
- { title: "Задачи", text: "Баги и пожелания в Redmine.", href: "https://redmine.sokolab.xyz/projects/mypointvpn" }
|
||
- { title: "Форум", text: "Вопросы и идеи, там же гостевой вход.", href: "https://redmine.sokolab.xyz/boards/2/topics/3" }
|
||
- { title: "Запись в блоге", text: "Как бот для VPN научился управлять серверами.", href: "https://sokolab.xyz/blog/mypointvpn-serverus/" }
|
||
|
||
footer: "Используйте VPN в рамках законов вашей страны."
|
||
---
|