Auto base sync: 2025-12-10 22:04:59

This commit is contained in:
2025-12-10 22:04:59 +04:00
parent 8e6594cefe
commit d5a21d4fc0
20 changed files with 1018 additions and 8 deletions

View File

@@ -17,6 +17,6 @@
"repelStrength": 10, "repelStrength": 10,
"linkStrength": 1, "linkStrength": 1,
"linkDistance": 250, "linkDistance": 250,
"scale": 0.04224918762698833, "scale": 1.2570341048229237,
"close": false "close": false
} }

View File

@@ -95,10 +95,24 @@
"id": "06e223311e1373f4", "id": "06e223311e1373f4",
"type": "leaf", "type": "leaf",
"state": { "state": {
"type": "graph", "type": "markdown",
"state": {
"file": "Без названия.md",
"mode": "source",
"source": false
},
"icon": "lucide-file",
"title": "Без названия"
}
},
{
"id": "59f79e6832dc6c0e",
"type": "leaf",
"state": {
"type": "empty",
"state": {}, "state": {},
"icon": "lucide-git-fork", "icon": "lucide-file",
"title": "Граф" "title": "Новая вкладка"
} }
} }
], ],
@@ -261,18 +275,43 @@
"obsidian-git:Open Git source control": false "obsidian-git:Open Git source control": false
} }
}, },
"active": "06e223311e1373f4", "active": "d179233a4e24f3eb",
"lastOpenFiles": [ "lastOpenFiles": [
"3. Instruction inastall devices/Установка на разные девайсы.md",
"3. Instruction inastall devices/Рабочий конфиг..md",
"3. Instruction inastall devices",
"2. Инструкция Marzban/Коды/Vless-код.md",
"2. Инструкция Marzban/Коды/Rules Marzban.md",
"2. Инструкция Marzban/Коды/Outbound Warp.md",
"2. Инструкция Marzban/Cache/Gif.md",
"2. Инструкция Marzban/Создание сертификатов и их внесение в marzban.md",
"2. Инструкция Marzban/Коды",
"2. Инструкция Marzban/Cache",
"2. Инструкция Marzban/3.1 Создание, настройка и подключение конфига warp к марзбан.md",
"2. Инструкция Marzban/3. Подключение WARP к Marz.md",
"2. Инструкция Marzban/2. Ручная установка и настройка marzban.md",
"2. Инструкция Marzban/1. Скрипт установки VPN.md",
"2. Инструкция Marzban",
"1. Инструкция Marzban/2. Ручная установка/Папка с кодом/Vless-код.md",
"1. Инструкция Marzban/2. Ручная установка/Cache/Gif.md",
"1. Инструкция Marzban/1. Установка скриптом/2. Файл/СМОТРИ ФАЙЛ.md",
"1. Инструкция Marzban/1. Установка скриптом/2. Файл/installer-marzban.sh",
"1. Инструкция Marzban/2. Ручная установка/Папка с кодом",
"1. Инструкция Marzban/2. Ручная установка/Cache",
"1. Инструкция Marzban/2. Ручная установка/2. Создание сертификатов и их внесение в marzban.md",
"1. Инструкция Marzban/2. Ручная установка/1. Установка и настройка.md",
"1. Инструкция Marzban/1. Установка скриптом/2. Файл",
"1. Инструкция Marzban/1. Установка скриптом/1. Скрипт установки VPN.md",
"1. Инструкция Marzban/2. Ручная установка",
"1. Инструкция Marzban/1. Установка скриптом",
"Без названия.md", "Без названия.md",
"2 заметка.md", "2 заметка.md",
"Без названия 1.md", "Без названия 1.md",
"шаблоны/notes123.md", "шаблоны/notes123.md",
"Без названия",
"README.md", "README.md",
"шаблоны/Совмещение 2.md", "шаблоны/Совмещение 2.md",
"шаблоны/Без названия 2.md", "шаблоны/Без названия 2.md",
"шаблоны/Без названия 1.md", "шаблоны/Без названия 1.md",
"шаблоны/Без названия 3.md", "шаблоны/Без названия 3.md"
"шаблоны"
] ]
} }

View File

@@ -0,0 +1,12 @@
## Вариант 1. установка по скрипту
>[!Bug] **Использовать код**
>`bash <(wget --no-check-certificate -O - https://gist.githubusercontent.com/Stich505/50104e1d672873e9fcbde0b1656f7974/raw/f370333e62c658271483b77cedcc45bb1adacfa0/gistfile.txt)`
## Вариант 2. установка из файла
>[!example]
>1) **Нужно закинуть файл из [[СМОТРИ ФАЙЛ]] в любое место на Linux**
>2) **Нужно перейти в это место через `cd __`**
>3) **использовать команду `sudo chmod +x ./installer-marzban.sh && ./installer-marzban.sh`**

View File

@@ -0,0 +1,103 @@
#!/usr/bin/env bash
systemctl disable --now unattended-upgrades
apt update -y
apt install curl net-tools iftop nload cron socat -y
apt autoremove --purge snapd -y
# Clean journal logs
journalctl --vacuum-size=5M
journalctl --verify
sed -i -e "s/#SystemMaxUse=/SystemMaxUse=5M/g" /etc/systemd/journald.conf
sed -i -e "s/#SystemMaxFileSize=/SystemMaxFileSize=1M/g" /etc/systemd/journald.conf
sed -i -e "s/#SystemMaxFiles=100/SystemMaxFiles=5/g" /etc/systemd/journald.conf
systemctl daemon-reload
systemctl restart systemd-journald
sleep 1
#### ENABLE BBRv2
enable_bbr() {
echo -e "${blue}Enable BBR${clear}"
if [[ ! "$(sysctl net.core.default_qdisc)" == *"= fq" ]]
then
echo "net.core.default_qdisc = fq" >> /etc/sysctl.conf
fi
if [[ ! "$(sysctl net.ipv4.tcp_congestion_control)" == *"bbr" ]]
then
echo "net.ipv4.tcp_congestion_control = bbr" >> /etc/sysctl.conf
fi
}
enable_bbr
### WARP INSTALL on UBUNTU - 127.0.0.1:40000
bash <(curl -fsSL checkvpn.net/files/warp.sh) proxy
# IP VPS
IPVPS=`ip addr show $ETH | grep global | sed -En -e 's/.*inet ([0-9.]+).*/\1/p' | head -n1`
# Download env and fix pass.
cd /root/
curl -sL "https://checkvpn.net/files/.env.example" -o .env.example
cp -r .env.example env_marzban
# random password with 16 symbols
PASSMARZBAN=`openssl rand -hex 16`
# random port from
RANDPORT=`echo $(( ( RANDOM % 65535 ) + 1025 ))`
# get email
read -p "Введите вашу почту(admin@example.com): " EMAIL
curl https://get.acme.sh | sh -s email=$EMAIL
# get domain
read -p "Введите имя домена (example.com): " DOMAIN
mkdir -p /var/lib/marzban/certs/
~/.acme.sh/acme.sh --set-default-ca --server letsencrypt --issue --standalone -d $DOMAIN \
--key-file /var/lib/marzban/certs/key.pem \
--fullchain-file /var/lib/marzban/certs/fullchain.pem
sed -i '1d' env_marzban
sed -i '1d' env_marzban
sed -i -e '1iUVICORN_PORT = "'$RANDPORT'" ' env_marzban
sed -i -e '1iUVICORN_HOST = "'$DOMAIN'" ' env_marzban
sed -i -e '1iXRAY_SUBSCRIPTION_URL_PREFIX = "https://'$DOMAIN':'$RANDPORT'" ' env_marzban
sed -i -e '1iSUDO_PASSWORD = "'$PASSMARZBAN'" ' env_marzban
sed -i -e '1iSUDO_USERNAME = "marzban" ' env_marzban
sed -i -e '1iUVICORN_SSL_CERTFILE = "'/var/lib/marzban/certs/fullchain.pem'" ' env_marzban
sed -i -e '1iUVICORN_SSL_KEYFILE = "'/var/lib/marzban/certs/key.pem'" ' env_marzban
# install marzban with fixed .env
bash -c "$(curl -sL https://checkvpn.net/files/marzban2.sh)" @ install
sleep 1
echo "------------------------------------------"
echo "WEB interface Marzban IP: https://"$DOMAIN":"$RANDPORT"/dashboard/login"
echo "WEB interface Marzban login: marzban"
echo "WEB interface Marzban password:" $PASSMARZBAN
sleep 10
marzban restart

View File

@@ -0,0 +1,2 @@
>[!bug] **Возврат в статью**
>[[1. Скрипт установки VPN]]

View File

@@ -0,0 +1,79 @@
>[!Example]- **Установка Marzban, создание админа и открытие панели**
> Установить marzban нужно командой:
> `sudo bash -c "$(curl -sL https://github.com/Gozargah/Marzban-scripts/raw/master/marzban.sh)" @ install`
> >[!Bug] этой командой идёт установка **LAST** версии `marzban`
>
> **После установки Marzban, нужно установить пользователя **
>
> >[!Todo] Создание админа и его пароля производится командой:
>>`marzban cli admin create --sudo`
>>Указываете (Name_user) -> enter
>>Указываете (Password) -> enter
>>Указываете 2 раз тот же (Password) -> enter
>>>[!warning] Остальное можно просто скипнуть нажав enter
>
>Установка завершена, открыть панель можно по пути:
>`http://YOUR_SERVER_IP:8000/dashboard/`
>Для входа укажите созданные вами login и password
>[!Danger]+ **С момента создания протокола и до момента, пока не будут отредактированы важные файлы, marzban НЕ ДАСТ сохранить конфигурацию, это нормальное поведение!!**
>[!Example]- **Создание VLESS протокола**
> 1) нужно находясь в панели открыть основные настройки:
>![[Pasted image 20241006120520.png]]
>**Теперь нам нужно опустится до строки** `inbound`
![[Pasted image 20241006121617.png]]
> Нажимаем enter и вставляем [[Vless-код]], как это должно выглядеть смотрите ниже:
> ![[vivaldi_lH5qIAPZ2n.gif]]
>[!Example]- **Поиск подходящего сайта**
>Нам нужно найти сайт у которого: `минимальный пинг, tls 1.3, сайт не за CDN сервисом`
>
>**для поиска подходящего сайта открываем две новых вкладки в браузере с гугл поиском где:**
**1 вкладка** - Пишем в поисковой строке `site:nl` (`NL` заменить нужной страной)
> 1) После загрузки запроса будут выведены сайты нужной нам страны.
> 2) Открываем сайты **и копируем из ссылки ТОЛЬКО доменную часть**
>
>**2 вкладка** Открываем сайт `https://www.cdn77.com/tls-test` и вставляем скопированный домен из *1 вкладки* -> нажимаем _Enter_ и ждем когда прогрузятся данные
>
> После загрузки данных мы видим данные о `tls и ssl У сайта` в конечном итоге данные должны выглядеть вот так:
> ![[Pasted image 20241006123927.png]]
>
>Теперь нужно проверить пинг от нас до сайта, в консоли вашего сервера пишем:
>`ping npo.nl` -> enter
>>[!Warning] достаточно 10 запросов чтобы понять отклик в миллисекундах, затем нажимаем `CTRL+C` для остановки запросов к сайту
>
>в конечном итоге на экране консоли будет выдана такая информация:
>![[Pasted image 20241006125142.png]]
>
>>[!Info] На примере скриншота видно, что пинг огромный, а значит нужно продолжать искать сайт с подходящими условиями и минимальным пингом
>[!Example]- **Внесение домена найденного сайта с соответствующими требованиями**
>
>**Когда нужный сайт найден, возвращаемся в основные настройки и указываем в полях:**
>`dest` домен сервера:443
>`serverNames` домен сервера
>**Итоговый пример** ![[Pasted image 20241006125744.png]]
>[!Example]- **Генерация ключей шифрования и параметра shortIds и внесения в панель**
>осуществляется командами:
> `docker exec marzban-marzban-1 xray x25519`
>`openssl rand -hex 8`
>После генерации данных нужно их также внести в панель марзбана в поля:
>`privateKey`
>`shordlds`
>Итоговый пример ![[Pasted image 20241006130325.png]]
>
>**Теперь нажимаем сохранить и перезапустить ядро + обновляем страницу**
>[!note] **Переходы:
> [[2. Создание сертификатов и их внесение в marzban]]**
>[!Danger] [Оригинал инструкция](https://habr.com/ru/articles/771892/)

View File

@@ -0,0 +1,51 @@
>[!Tip]- **Установка socat и cron:**
`apt install cron socat`
>[!tip]- **Устанавливаем acme.sh**
>>[!Bug] EMAIL = Это ваш email
> `curl https://get.acme.sh | sh -s email=EMAIL`
>sdfsdf
>[!tip]- **Создание директории для сертификатов**
>`mkdir -p /var/lib/marzban/certs/`
>[!Tip]+ Получение сертификата
>>[!Danger] Введите ваш домен или субдомен в поле `DOMAIN`
>>**Ниже 1 единая команда!!!**
>
```
~/.acme.sh/acme.sh --set-default-ca --server letsencrypt --issue --standalone -d DOMAIN \
--key-file /var/lib/marzban/certs/key.pem \
--fullchain-file /var/lib/marzban/certs/fullchain.pem
```
Проверить список выпущенных сертификатов можно командой:
```
~/.acme.sh/acme.sh --list
```
>[!Tip]- **Редактирование данных в файле .env**
>После создания сертификатов, нужно отредактировать файл
>1) Открываем файл командой:
>2) `nano /opt/marzban/.env
>Делаем изменения в полях:
>1) `UVICORN_PORT = 443`
>2) `UVICORN_SSL_CERTFILE = "/var/lib/marzban/certs/fullchain.pem"`
>3) `UVICORN_SSL_KEYFILE = "/var/lib/marzban/certs/key.pem"`
>4) `XRAY_SUBSCRIPTION_URL_PREFIX` = https://YOUR_DOMAIN (Ковычки удаляем)
>5) *Пример ниже, красное как было, зеленое как стало*
>![[Pasted image 20241006133752.png]]
После редактирования нужно перезапустить марзбан командой:
`sudo marzban restart`
>[!Note] Переход в [[1. Установка и настройка]]

View File

@@ -0,0 +1 @@
![[vivaldi_lH5qIAPZ2n.gif]]

View File

@@ -0,0 +1,35 @@
{
"tag": "VLESS TCP REALITY",
"listen": "0.0.0.0",
"port": 443,
"protocol": "vless",
"settings": {
"clients": [],
"decryption": "none"
},
"streamSettings": {
"network": "tcp",
"tcpSettings": {},
"security": "reality",
"realitySettings": {
"show": false,
"dest": "заменить:443",
"xver": 0,
"serverNames": [
"заменить"
],
"privateKey": "заменить",
"shortIds": [
"заменить"
]
}
},
"sniffing": {
"enabled": true,
"destOverride": [
"http",
"tls",
"quic"
]
}
},

View File

@@ -0,0 +1,12 @@
## Вариант 1. установка по скрипту
>[!Bug] **Использовать код**
>`bash <(wget --no-check-certificate -O - https://gist.githubusercontent.com/Stich505/50104e1d672873e9fcbde0b1656f7974/raw/f370333e62c658271483b77cedcc45bb1adacfa0/gistfile.txt)`
## Вариант 2. установка из файла
>[!example]
>1) **Нужно закинуть файл из [[СМОТРИ ФАЙЛ]] в любое место на Linux**
>2) **Нужно перейти в это место через `cd __`**
>3) **использовать команду `sudo chmod +x ./installer-marzban.sh && ./installer-marzban.sh`**

View File

@@ -0,0 +1,129 @@
>[!Example]- **Установка Marzban, создание админа и открытие панели**
> Установить marzban нужно командой:
> `sudo bash -c "$(curl -sL https://github.com/Gozargah/Marzban-scripts/raw/master/marzban.sh)" @ install`
> >[!Bug] этой командой идёт установка **LAST** версии `marzban`
>
> **После установки Marzban, нужно установить пользователя **
>
> >[!Todo] Создание админа и его пароля производится командой:
>>`marzban cli admin create --sudo`
>>Указываете (Name_user) -> enter
>>Указываете (Password) -> enter
>>Указываете 2 раз тот же (Password) -> enter
>>>[!warning] Остальное можно просто скипнуть нажав enter
>
>Установка завершена, открыть панель можно по пути:
>`http://YOUR_SERVER_IP:8000/dashboard/`
>Для входа укажите созданные вами login и password
>[!Danger]+ **С момента создания протокола и до момента, пока не будут отредактированы важные файлы, marzban НЕ ДАСТ сохранить конфигурацию, это нормальное поведение!!**
>[!Example]- **Создание VLESS протокола**
> 1) нужно находясь в панели открыть основные настройки:
>![[Pasted image 20241006120520.png]]
>**Теперь нам нужно опустится до строки** `inbound`
![[Pasted image 20241006121617.png]]
> Нажимаем enter и вставляем [[Vless-код]], как это должно выглядеть смотрите ниже:
> ![[vivaldi_lH5qIAPZ2n.gif]]
>[!Example]- **Поиск подходящего сайта**
>Нам нужно найти сайт у которого: `минимальный пинг, tls 1.3, сайт не за CDN сервисом`
>
>**для поиска подходящего сайта открываем две новых вкладки в браузере с гугл поиском где:**
**1 вкладка** - Пишем в поисковой строке `site:nl` (`NL` заменить нужной страной)
> 1) После загрузки запроса будут выведены сайты нужной нам страны.
> 2) Открываем сайты **и копируем из ссылки ТОЛЬКО доменную часть**
>
>**2 вкладка** Открываем сайт `https://www.cdn77.com/tls-test` и вставляем скопированный домен из *1 вкладки* -> нажимаем _Enter_ и ждем когда прогрузятся данные
>
> После загрузки данных мы видим данные о `tls и ssl У сайта` в конечном итоге данные должны выглядеть вот так:
> ![[Pasted image 20241006123927.png]]
>
>Теперь нужно проверить пинг от нас до сайта, в консоли вашего сервера пишем:
>`ping npo.nl` -> enter
>>[!Warning] достаточно 10 запросов чтобы понять отклик в миллисекундах, затем нажимаем `CTRL+C` для остановки запросов к сайту
>
>в конечном итоге на экране консоли будет выдана такая информация:
>![[Pasted image 20241006125142.png]]
>
>>[!Info] На примере скриншота видно, что пинг огромный, а значит нужно продолжать искать сайт с подходящими условиями и минимальным пингом
>[!Example]- **Внесение домена найденного сайта с соответствующими требованиями**
>
>**Когда нужный сайт найден, возвращаемся в основные настройки и указываем в полях:**
>`dest` домен сервера:443
>`serverNames` домен сервера
>**Итоговый пример** ![[Pasted image 20241006125744.png]]
>[!Example]- **Генерация ключей шифрования и параметра shortIds и внесения в панель**
>осуществляется командами:
> `docker exec marzban-marzban-1 xray x25519`
>`openssl rand -hex 8`
>После генерации данных нужно их также внести в панель марзбана в поля:
>`privateKey`
>`shordlds`
>Итоговый пример ![[Pasted image 20241006130325.png]]
>
>**Теперь нажимаем сохранить и перезапустить ядро + обновляем страницу**
>[!BUG]- **Инструкция: подключение Linux-сервера к AdGuard Home через нестандартный порт (5300) через systemd-resolved**
>
> 1. **Убедись, что на сервере-клиенте установлен systemd-resolved**
>
>Для большинства современных дистрибутивов (Ubuntu, Debian, Fedora) это уже так:
>
>`systemctl status systemd-resolved`
>
>Если не активен, запусти:
>
>`systemctl enable --now systemd-resolved`
>
>### 2. **Отредактируй файл /etc/systemd/resolved.conf**
>
Открой файл:
>
>`nano /etc/systemd/resolved.conf`
>
>Добавь (или измени) строчки:
>
> ` [Resolve]DNS=45.95.232.245:5300`
> `FallbackDNS=8.8.8.8 1.1.1.1`
> тогда если твой сервер недоступен, будет fallback на них.
>
>### 3. **Убедись, что /etc/resolv.conf — симлинк**
>
> Проверь:
>
> `ls -l /etc/resolv.conf`
>
Должно быть:
>
> `/etc/resolv.conf -> ../run/systemd/resolve/stub-resolv.conf`
>
> Если не так, исправь:
>` rm -f /etc/resolv.conf`
> `ln -s /run/systemd/resolve/stub-resolv.conf /etc/resolv.conf`
>### 4. **Перезапусти systemd-resolved**
>
> `systemctl restart systemd-resolved`
>
>### 5. **Проверь DNS**
>
> Выполни:
> `dig ya.ru`
>
> или
>
> `systemd-resolve ya.ru`
>
> Ответ должен прийти, DNS-сервер будет 127.0.0.53, а на самом деле он будет перенаправлен через твой AdGuard Home на 5300 порту.
>
>## **Если не работает:**
>
>- Проверь открытость порта на сервере AdGuard Home:
>
> `nc -v 45.95.232.245 5300`
>[!note] **Переход в [[Создание сертификатов и их внесение в marzban]]**

View File

@@ -0,0 +1,71 @@
>[!Example]- Создание конфига WireGuard для ВАРПА
> 1. Установим WARP Командой
>```
>wget https://github.com/ViRb3/wgcf/releases/download/v2.2.29/wgcf_2.2.29_linux_amd64
>```
>2. Перемещаем скачанный файл в /usr/bin и меняем его имя на wgcf
>**(тупо скопируй команду и вставь)**
>```
>mv wgcf_2.2.29_linux_amd64 /usr/bin/wgcf && chmod +x /usr/bin/wgcf
>```
>3. Генерируем конфиг Варпа
>**(тупо скопируй команду и вставь)**
>```
wgcf register
wgcf generate
>```
>>[!danger] а теперь настройка [[3.1 Создание, настройка и подключение конфига warp к марзбан]]
>[!Bug]- ЧЕК ЛИСТ ОБЯЗАТЕЛЬНЫЙ!!!
>
>1. Проверка статуса сервиса:
> `systemctl status wire-proxy`
> Должен быть ***active (running)***
> _________________________________________
> 2. Проверка порта SOCKS:
> `ss -tlnp | grep 40000`
> ***Должен показать wireproxy на порту 40000***
> _________________________________________
> 3. Проверка WARP через прокси
> `curl -x socks5h://127.0.0.1:40000 https://www.cloudflare.com/cdn-cgi/trace/ | grep warp`
> ***Должно показать warp=on или warp=plus***
> _________________________________________
> 4. Проверка IP через прокси
> `curl -x socks5h://127.0.0.1:40000 https://ifconfig.me`
> ***Должен показать IP Cloudflare, отличный от вашего серверного.***
> _________________________________________
> 5. Перезапуск
>`systemctl restart wireproxy`
>[!Example]- Получаем Warp+
>6. Заходим в тг бота — https://t.me/generatewarpplusbot
> ![[Pasted image 20241007055150.png]]
>7. Вставляем ключ
>```
nano wgcf-account.toml
>```
![[Pasted image 20241007055447.png]]
>3. Затем обновляем конфиг Варпа
>```
wgcf update
wgcf generate
>```
> [!example]- Активация WARP+ в Marzban
>
>1. Заходим в конфиг Варпа и добавляем его в Веб-марзбан
>```
nano wgcf-profile.conf
>```
>![[Pasted image 20241007060414.png]]
> 2. В настройках Веб-Марза нужно найти строку **"outbounds": [**
>- вставляем туда [[Outbound Warp]] (только свои данные вставить)
>> [!warning]- Да, я тупой и не понял, что и куда копировать
>![[Pasted image 20241007060820.png]]
>
>3. Вставить правила в Веб-Марз
>- Перейти и вставить [[Rules Marzban]]
(>тут все готово и только вставить)
`

View File

@@ -0,0 +1,48 @@
>[!bug]+ Установка Wireproxy
>Используй команды ниже
```
wget https://github.com/octeep/wireproxy/releases/download/v1.0.9/wireproxy_linux_amd64.tar.gz
tar -xzf wireproxy_linux_amd64.tar.gz
mv wireproxy /usr/local/bin/
chmod +x /usr/local/bin/wireproxy
```
>[!danger] Создания конфигурации
> `nano /etc/wireproxy.conf`
> **вставить код ниже**
```
[Interface]
PrivateKey = <ваш_приватный_ключ_из_wgcf-profile.conf>
Address = <ваш_адрес_из_wgcf-profile.conf>
DNS = 1.1.1.1
[Peer]
PublicKey = <публичный_ключ_пира_из_wgcf-profile.conf>
Endpoint = engage.cloudflareclient.com:2408
AllowedIPs = 0.0.0.0/0, ::/0
[Socks5]
BindAddress = 127.0.0.1:40000
```
>[!danger] Создания конфигурации
>`nano /etc/systemd/system/wire-proxy.service`
```
[Unit]
Description=Wireproxy WARP SOCKS5 Proxy
After=network.target
[Service]
Type=simple
ExecStart=/usr/local/bin/wireproxy -c /etc/wireproxy.conf
Restart=always
RestartSec=5
[Install]
WantedBy=multi-user.target
```
>[!bug] Подключение и запуск
> systemctl daemon-reload
> systemctl enable --now wire-proxy
>>[!tip] ***Молодец, теперь проверь по чек листу*** [[3. Подключение WARP к Marz]]

View File

@@ -0,0 +1 @@
![[vivaldi_lH5qIAPZ2n.gif]]

View File

@@ -0,0 +1,31 @@
"outbounds": [
{
"tag": "WARP",
"protocol": "wireguard",
"settings": {
"secretKey": "Ваш_Параметр1",
"DNS": "1.1.1.1",
"address": [ "172.16.0.2/32",
"Ваш_Параметр2"
],
"peers": [
{
"publicKey": "Ваш_Параметр3",
"endpoint": "engage.cloudflareclient.com:2408"
}
],
"kernelMode": false
}
},
{
"protocol": "freedom",
"tag": "DIRECT"
},
{
"protocol": "blackhole",
"tag": "BLOCK"
}
]
}
```
Тут смотреть в коде на **Ваш_Параметр** и менять на **свои**

View File

@@ -0,0 +1,30 @@
```json
"routing": {
"rules": [
{
"outboundTag": "WARP",
"domain": [
"geosite:google",
"geosite:openai"
],
"type": "field"
},
{
"outboundTag": "DIRECT",
"domain": [
"full:cp.cloudflare.com",
"domain:msftconnecttest.com",
"domain:msftncsi.com",
"domain:connectivitycheck.gstatic.com",
"domain:captive.apple.com",
"full:detectportal.firefox.com",
"domain:networkcheck.kde.org",
"full:*.gstatic.com"
],
"type": "field"
}
]
},
```
он уже **готовый** и вставляется ниже строки **"routing": {**
![[Pasted image 20241007062448.png]]

View File

@@ -0,0 +1,37 @@
```
{
"tag": "VLESS TCP REALITY",
"listen": "0.0.0.0",
"port": 443,
"protocol": "vless",
"settings": {
"clients": [],
"decryption": "none"
},
"streamSettings": {
"network": "tcp",
"tcpSettings": {},
"security": "reality",
"realitySettings": {
"show": false,
"dest": "заменить:443",
"xver": 0,
"serverNames": [
"заменить"
],
"privateKey": "заменить",
"shortIds": [
"заменить"
]
}
},
"sniffing": {
"enabled": true,
"destOverride": [
"http",
"tls",
"quic"
]
}
},
```

View File

@@ -0,0 +1,53 @@
>[!Tip]- **Установка socat и cron:**
`apt install cron socat`
>[!tip]- **Устанавливаем acme.sh**
>>[!Bug] EMAIL = Это ваш email
> `curl https://get.acme.sh | sh -s email=EMAIL`
>sdfsdf
>[!tip]- **Создание директории для сертификатов**
>`mkdir -p /var/lib/marzban/certs/`
>[!Tip]+ Получение сертификата
>>[!Danger] Введите ваш домен или субдомен в поле `DOMAIN`
>>**Ниже 1 единая команда!!!**
>
```
~/.acme.sh/acme.sh --set-default-ca --server letsencrypt --issue --standalone -d DOMAIN \
--key-file /var/lib/marzban/certs/key.pem \
--fullchain-file /var/lib/marzban/certs/fullchain.pem
```
Проверить список выпущенных сертификатов можно командой:
```
~/.acme.sh/acme.sh --list
```
>[!Tip]- **Редактирование данных в файле .env**
>После создания сертификатов, нужно отредактировать файл
>1) Открываем файл командой:
>2) `nano /opt/marzban/.env`
>Делаем изменения в полях:
>1) `UVICORN_PORT = 443`
>2) `UVICORN_SSL_CERTFILE = "/var/lib/marzban/certs/fullchain.pem"`
>3) `UVICORN_SSL_KEYFILE = "/var/lib/marzban/certs/key.pem"`
>4) `XRAY_SUBSCRIPTION_URL_PREFIX` = https://YOUR_DOMAIN (Ковычки удаляем)
>5) *Пример ниже, красное как было, зеленое как стало*
>![[Pasted image 20241006133752.png]]
После редактирования нужно перезапустить марзбан командой:
`sudo marzban restart`
>[!Note] Переход в [[2. Ручная установка и настройка marzban]]
>[!Bug] Сделай автобекапы
>https://git.lifazzz.sbs:3000/lifaz/backup-m

View File

@@ -0,0 +1,274 @@
```
{
"log": {
"loglevel": "warning"
},
"dns": {
"servers": [
"1.1.1.1"
]
},
"routing": {
"rules": [
{
"outboundTag": "DIRECT",
"domain": [
"jut.su",
"geosite:category-ru",
"proton.me",
"mail.proton.me",
"regexp:^.*.rutube.ru$",
"geosite:microsoft",
"instagram.com",
"whoer.net",
"youtube.com",
"youtube.googleapis.com",
"googlevideo.com"
],
"type": "field"
},
{
"outboundTag": "DIRECT",
"protocol": [
"bittorrent"
],
"type": "field"
},
{
"outboundTag": "BLOCK",
"domain": [
"geosite:category-ads-all",
"ads.youtube.com"
],
"type": "field"
},
{
"ip": [
"geoip:private"
],
"outboundTag": "BLOCK",
"type": "field"
}
]
},
"inbounds": [
{
"tag": "VMess TCP",
"listen": "0.0.0.0",
"port": 8081,
"protocol": "vmess",
"settings": {
"clients": []
},
"streamSettings": {
"network": "tcp",
"tcpSettings": {
"header": {
"type": "http",
"request": {
"method": "GET",
"path": [
"/"
],
"headers": {
"Host": [
"google.com"
]
}
},
"response": {}
}
},
"security": "none"
},
"sniffing": {
"enabled": true,
"destOverride": [
"http",
"tls"
]
}
},
{
"tag": "VMess Websocket",
"listen": "0.0.0.0",
"port": 8080,
"protocol": "vmess",
"settings": {
"clients": []
},
"streamSettings": {
"network": "ws",
"wsSettings": {
"path": "/",
"headers": {
"Host": "google.com"
}
},
"security": "none"
},
"sniffing": {
"enabled": true,
"destOverride": [
"http",
"tls"
]
}
},
{
"tag": "VLESS TCP REALITY",
"listen": "0.0.0.0",
"port": 8443,
"protocol": "vless",
"settings": {
"clients": [],
"decryption": "none"
},
"streamSettings": {
"network": "tcp",
"tcpSettings": {},
"security": "reality",
"realitySettings": {
"show": false,
"dest": "discordapp.com:443",
"xver": 0,
"serverNames": [
"discordapp.com"
],
"privateKey": "wI494sqcfCIErXDiGWIOusJSIMCs_Di0R5nRifjIzgQ",
"shortIds": [
"",
"e20f777f3e6b06ec"
]
}
},
"sniffing": {
"enabled": true,
"destOverride": [
"http",
"tls"
]
}
},
{
"tag": "VLESS GRPC REALITY",
"listen": "0.0.0.0",
"port": 2053,
"protocol": "vless",
"settings": {
"clients": [],
"decryption": "none"
},
"streamSettings": {
"network": "grpc",
"grpcSettings": {
"serviceName": "xyz"
},
"security": "reality",
"realitySettings": {
"show": false,
"dest": "discordapp.com:443",
"xver": 0,
"serverNames": [
"cdn.discordapp.com",
"discordapp.com"
],
"privateKey": "MMX7m0Mj3faUstoEm5NBdegeXkHG6ZB78xzBv2n3ZUA",
"shortIds": [
"",
"6ba85179e30d4fc2"
]
}
},
"sniffing": {
"enabled": true,
"destOverride": [
"http",
"tls"
]
}
},
{
"tag": "Trojan Websocket TLS",
"listen": "0.0.0.0",
"port": 2083,
"protocol": "trojan",
"settings": {
"clients": []
},
"streamSettings": {
"network": "ws",
"security": "tls",
"tlsSettings": {
"certificates": [
{
"certificate": [
"-----BEGIN CERTIFICATE-----",
"MIIBvTCCAWOgAwIBAgIRAIY9Lzn0T3VFedUnT9idYkEwCgYIKoZIzj0EAwIwJjER",
"MA8GA1UEChMIWHJheSBJbmMxETAPBgNVBAMTCFhyYXkgSW5jMB4XDTIzMDUyMTA4",
"NDUxMVoXDTMzMDMyOTA5NDUxMVowJjERMA8GA1UEChMIWHJheSBJbmMxETAPBgNV",
"BAMTCFhyYXkgSW5jMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEGAmB8CILK7Q1",
"FG47g5VXg/oX3EFQqlW8B0aZAftYpHGLm4hEYVA4MasoGSxRuborhGu3lDvlt0cZ",
"aQTLvO/IK6NyMHAwDgYDVR0PAQH/BAQDAgWgMBMGA1UdJQQMMAoGCCsGAQUFBwMB",
"MAwGA1UdEwEB/wQCMAAwOwYDVR0RBDQwMoILZ3N0YXRpYy5jb22CDSouZ3N0YXRp",
"Yy5jb22CFCoubWV0cmljLmdzdGF0aWMuY29tMAoGCCqGSM49BAMCA0gAMEUCIQC1",
"XMIz1XwJrcu3BSZQFlNteutyepHrIttrtsfdd05YsQIgAtCg53wGUSSOYGL8921d",
"KuUcpBWSPkvH6y3Ak+YsTMg=",
"-----END CERTIFICATE-----"
],
"key": [
"-----BEGIN RSA PRIVATE KEY-----",
"MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQg7ptMDsNFiL7iB5N5",
"gemkQUHIWvgIet+GiY7x7qB13V6hRANCAAQYCYHwIgsrtDUUbjuDlVeD+hfcQVCq",
"VbwHRpkB+1ikcYubiERhUDgxqygZLFG5uiuEa7eUO+W3RxlpBMu878gr",
"-----END RSA PRIVATE KEY-----"
]
}
],
"minVersion": "1.2",
"cipherSuites": "TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256:TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256:TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384:TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384:TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256:TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256"
}
},
"sniffing": {
"enabled": true,
"destOverride": [
"http",
"tls"
]
}
},
{
"tag": "Shadowsocks TCP",
"listen": "0.0.0.0",
"port": 1080,
"protocol": "shadowsocks",
"settings": {
"clients": [],
"network": "tcp,udp"
}
}
],
"outbounds": [
{
"protocol": "freedom",
"tag": "DIRECT"
},
{
"protocol": "blackhole",
"tag": "BLOCK"
},
{
"tag": "WARP",
"protocol": "socks",
"settings": {
"servers": [
{
"address": "127.0.0.1",
"port": 40000
}
]
}
}
]
}
```

View File

@@ -0,0 +1,2 @@
>[!bug]
>**https://www.merralius.cfd**