<?xml version="1.0" encoding="utf-8" ?><rss version="2.0" xmlns:tt="http://teletype.in/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:media="http://search.yahoo.com/mrss/"><channel><title>Nurullaev Elnur</title><generator>teletype.in</generator><description><![CDATA[Nurullaev Elnur]]></description><link>https://teletype.in/@nurullaev?utm_source=teletype&amp;utm_medium=feed_rss&amp;utm_campaign=nurullaev</link><atom:link rel="self" type="application/rss+xml" href="https://teletype.in/rss/nurullaev?offset=0"></atom:link><atom:link rel="next" type="application/rss+xml" href="https://teletype.in/rss/nurullaev?offset=10"></atom:link><atom:link rel="search" type="application/opensearchdescription+xml" title="Teletype" href="https://teletype.in/opensearch.xml"></atom:link><pubDate>Sat, 04 Apr 2026 07:33:45 GMT</pubDate><lastBuildDate>Sat, 04 Apr 2026 07:33:45 GMT</lastBuildDate><item><guid isPermaLink="true">https://teletype.in/@nurullaev/emC9MH3-3AT</guid><link>https://teletype.in/@nurullaev/emC9MH3-3AT?utm_source=teletype&amp;utm_medium=feed_rss&amp;utm_campaign=nurullaev</link><comments>https://teletype.in/@nurullaev/emC9MH3-3AT?utm_source=teletype&amp;utm_medium=feed_rss&amp;utm_campaign=nurullaev#comments</comments><dc:creator>nurullaev</dc:creator><title>Установка Tbloсker Solobot</title><pubDate>Thu, 28 Aug 2025 12:48:55 GMT</pubDate><description><![CDATA[1. Настройка Ноды (действие выполнять на каждой ноде)]]></description><content:encoded><![CDATA[
  <p id="hNM6">1. Настройка Ноды (действие выполнять на каждой ноде)</p>
  <p id="yodT">переходим в папку <code>cd /opt/remnanode</code></p>
  <p id="RnAA">открываем файл <code>nano docker-compose.yml</code></p>
  <p id="qa7X">в самый конец добавляем </p>
  <p id="fSD8"><code>volumes:<br /> - &#x27;/var/log/remnanode:/var/log/remnanode&#x27;</code></p>
  <p id="2pNZ">Должно получиться так.</p>
  <p id="Hcyf"><code>services:<br />    remnanode:<br />        container_name: remnanode<br />        hostname: remnanode<br />        image: remnawave/node:latest<br />        restart: always<br />        network_mode: host<br />        env_file:<br />            - .env<br />        volumes:<br />            - &#x27;/var/log/remnanode:/var/log/remnanode&#x27;</code></p>
  <p id="3bMO">сохраняем данные, нажав <strong>Ctrl-X</strong> далее <strong>Y</strong> и <strong>Enter</strong></p>
  <p id="ljOx">создаем папку для хранения логов</p>
  <p id="1SMc"><code>mkdir -p /var/log/remnanode</code></p>
  <p id="T6uL">устанавливаем ротатор логов</p>
  <p id="GkvF"><code>sudo apt update &amp;&amp; sudo apt install logrotate</code></p>
  <p id="5eXB">создаем файл конфигурации</p>
  <p id="I2zc"><code>nano /etc/logrotate.d/remnanode</code></p>
  <p id="50iA">вставляем данные в файл</p>
  <p id="RxAb"><code>/var/log/remnanode/*.log {<br />      size 50M<br />      rotate 5<br />      compress<br />      missingok<br />      notifempty<br />      copytruncate<br />  }</code></p>
  <p id="FXVo">сохраняем данные, нажав <strong>Ctrl-X</strong> далее <strong>Y</strong> и <strong>Enter</strong></p>
  <p id="dF3N">запускаем ротатор логов</p>
  <p id="wrrO"><code>logrotate -vf /etc/logrotate.d/remnanode</code></p>
  <p id="qsTS">переходим в паку ноды <code>cd /opt/remnanode</code> и перезапускаем контейнер</p>
  <p id="eDc8"><code>docker compose down &amp;&amp; docker compose up -d &amp;&amp; docker compose logs -f</code></p>
  <p id="AhUL">2.Настройка конфигурации xray</p>
  <p id="SGOI">Переходим в панель remnawave в открываем профили (конфиг xray) и меняем пункт с логами на это</p>
  <p id="akvF"><code>  &quot;log&quot;: {<br />      &quot;error&quot;: &quot;/var/log/remnanode/error.log&quot;,<br />      &quot;access&quot;: &quot;/var/log/remnanode/access.log&quot;,<br />      &quot;loglevel&quot;: &quot;warning&quot;<br />  }</code></p>
  <p id="MXSY">В &quot;outbounds&quot; добавляем </p>
  <p id="usHu"><code>{<br />  &quot;tag&quot;: &quot;TORRENT&quot;,<br />  &quot;protocol&quot;: &quot;blackhole&quot;<br />}</code></p>
  <p id="Z76P">в &quot;routing&quot; добавляем</p>
  <p id="fN88"><code>{<br />    &quot;type&quot;: &quot;field&quot;,<br />    &quot;protocol&quot;: [<br />      &quot;bittorrent&quot;<br />    ],<br />    &quot;outboundTag&quot;: &quot;TORRENT&quot;<br />  }</code></p>
  <p id="SyqK">нажимаем <strong>форматировать</strong> и <strong>сохранить</strong> конфиг</p>
  <p id="a96k">3.Установка Tblocker</p>
  <p id="upL2">на сервере ноды</p>
  <p id="KCUv">Если до этого был установлен старый tblocker вводим команду</p>
  <p id="oTRB"><code>apt remove tblocker </code></p>
  <p id="qoCz">далее запускаем команду</p>
  <p id="M6ep"><code>bash &lt;(curl -fsSL git.new/install)</code></p>
  <p id="h2Y3">во время установки запросит адрес логов, вводим</p>
  <p id="YUac"><code>/var/log/remnanode/access.log</code></p>
  <p id="SqT7">после выбираем цифру &quot;1&quot; -iptables</p>
  <p id="yKNQ">установка завершена. открываем конфиг файл блокера</p>
  <p id="0yn1"><code>nano /opt/tblocker/config.yaml</code></p>
  <p id="j6Lh">в файле должно быть вот так ( прописываем домен бота и при необходимости меняет срок блокировки)</p>
  <p id="Vw0d"><code>LogFile: &quot;/var/log/remnanode/access.log&quot;<br />BlockDuration: 30<br />TorrentTag: &quot;TORRENT&quot;<br />BlockMode: &quot;iptables&quot;<br />BypassIPS:<br />  - &quot;127.0.0.1&quot;<br />  - &quot;::1&quot;<br />StorageDir: &quot;/opt/tblocker&quot;<br />UsernameRegex: &quot;email: (\\S+)&quot;<br />SendWebhook: true<br />WebhookURL: &quot;https://ДоменБота/tblocker/webhook&quot;<br />WebhookTemplate: &#x27;{&quot;username&quot;:&quot;%s&quot;,&quot;ip&quot;:&quot;%s&quot;,&quot;server&quot;:&quot;%s&quot;,&quot;action&quot;:&quot;%s&quot;,&quot;duration&quot;:%d,&quot;timestamp&quot;:&quot;%s&quot;}&#x27;</code></p>
  <p id="cRMq">сохраняем данные, нажав <strong>Ctrl-X</strong> далее <strong>Y</strong> и <strong>Enter</strong></p>
  <p id="pouk">Перезапускаем Тблокер</p>
  <p id="M3hV"><code>systemctl stop tblocker<br />systemctl start tblocker<br />systemctl status tblocker</code></p>
  <p id="GABW">4.Установка модуля tBlocker для Solobot</p>
  <p id="qKgF">скачиваем модуль из личного кабинета</p>
  <p id="jmUz">вносим корректировки в файл setting</p>
  <p id="b50r">впишите хостнеймы по всем своим нодам где установлен tblocker</p>
  <p id="aKd9"><code>SERVER_COUNTRIES = {<br />    &quot;hostname&quot;: &quot;🇷🇺 Россия&quot;,<br />    &quot;hostname&quot;: &quot;🇫🇷 Франция&quot;,<br />    &quot;hostname&quot;: &quot;🇩🇪 Германия&quot;,<br />    &quot;hostname&quot;: &quot;🇺🇸 США&quot;<br />}</code></p>
  <p id="AQwL">Настройте уведомления, сохраните и закройте файл.</p>
  <p id="Qmym">Загрузите папку в modules папки солобот.<br />Перезапустите бота</p>

]]></content:encoded></item><item><guid isPermaLink="true">https://teletype.in/@nurullaev/tkkRRmJEzdf</guid><link>https://teletype.in/@nurullaev/tkkRRmJEzdf?utm_source=teletype&amp;utm_medium=feed_rss&amp;utm_campaign=nurullaev</link><comments>https://teletype.in/@nurullaev/tkkRRmJEzdf?utm_source=teletype&amp;utm_medium=feed_rss&amp;utm_campaign=nurullaev#comments</comments><dc:creator>nurullaev</dc:creator><title>Установка  Remnawave</title><pubDate>Tue, 15 Apr 2025 18:16:00 GMT</pubDate><description><![CDATA[<img src="https://img2.teletype.in/files/5b/ab/5bab0d21-59d2-4127-bf83-7663ac6da673.png"></img>Установка Remnawave состоит из нескольких частей :]]></description><content:encoded><![CDATA[
  <p id="6yhe">Установка Remnawave состоит из нескольких частей :</p>
  <ul id="HFSP">
    <li id="1a3a">Основная панель (aka backend)</li>
    <li id="0yYC">Нода (aka Node )</li>
  </ul>
  <p id="KnOY">Минимальные требования для Backend: <a href="https://timeweb.cloud/r/zt55728" target="_blank">Timeweb</a> - 550 р в месяц (1/2)</p>
  <ul id="gMLA">
    <li id="Ob1V">2GB of RAM</li>
    <li id="avTl">2 CPU cores</li>
    <li id="5a6V">Docker Engine</li>
  </ul>
  <p id="Qnm3">Минимальные требования для Node: <a href="https://cp.inferno.name/aff.php?aff=4990" target="_blank">Inferno</a></p>
  <ul id="pGvY">
    <li id="P57S">1GB of RAM</li>
    <li id="fCHD">1 CPU core</li>
    <li id="tPyq">Docker Engine</li>
  </ul>
  <p id="elnI"><strong>Важно про настройку DNS:</strong></p>
  <ul id="Y1jE">
    <li id="OqSX">Домены <strong>panel.domen.com, subs.domen.com</strong> должны указывать на IP-адрес сервера с панелью</li>
    <li id="ubyd">Домен <strong>steel.domen.com </strong>для сайта-заглушки Self Steal должен указывать на IP-адрес сервера с нодой</li>
  </ul>
  <h3 id="Iw9A"><strong>1. Установка Основная панель</strong></h3>
  <ul id="jFt5">
    <li id="zR3r">Устанавливаем docker.</li>
  </ul>
  <pre id="2pMP">sudo curl -fsSL https://get.docker.com | sh</pre>
  <ul id="N8jK">
    <li id="liMT">Создаем папку и переходим в нее.</li>
  </ul>
  <pre id="zh5u">mkdir /opt/remnawave &amp;&amp; cd /opt/remnawave</pre>
  <ul id="SxQT">
    <li id="VocY">Загружаем файл конфигурации env.</li>
  </ul>
  <pre id="BoBr">curl -o .env https://raw.githubusercontent.com/remnawave/backend/refs/heads/main/.env.sample</pre>
  <ul id="POF8">
    <li id="HDeS">Настраиваем переменные.</li>
  </ul>
  <pre id="zp5o">nano .env</pre>
  <p id="iaCv">Важные пункты в env :</p>
  <p id="FioC">FRONT_END_DOMAIN=panel.domen.com указываем адрес панели</p>
  <p id="tObu">SUB_PUBLIC_DOMAIN=subs.domen.com указываем адрес страницы подписок</p>
  <p id="M7aP">и обязательно прописать данные для БД</p>
  <p id="98RU">Сохраняем данные, нажав <strong>Ctrl-X</strong> далее <strong>Y</strong> и <strong>Enter</strong></p>
  <ul id="tqAJ">
    <li id="djz4">Создаем файл <strong>docker-compose.yml</strong>.</li>
  </ul>
  <pre id="JDOp">nano docker-compose.yml</pre>
  <p id="PwCx">Вставляем данные:</p>
  <pre id="9rby">services:
    remnawave-db:
        image: postgres:17
        container_name: &#x27;remnawave-db&#x27;
        hostname: remnawave-db
        restart: always
        env_file:
            - .env
        environment:
            - POSTGRES_USER=${POSTGRES_USER}
            - POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
            - POSTGRES_DB=${POSTGRES_DB}
            - TZ=UTC
        ports:
            - &#x27;127.0.0.1:6767:5432&#x27;
        volumes:
            - remnawave-db-data:/var/lib/postgresql/data
        networks:
            - remnawave-network
        healthcheck:
            test: [&#x27;CMD-SHELL&#x27;, &#x27;pg_isready -U $${POSTGRES_USER} -d $${POSTGRES_DB}&#x27;]
            interval: 3s
            timeout: 10s
            retries: 3

    remnawave:
        image: remnawave/backend:latest
        container_name: &#x27;remnawave&#x27;
        hostname: remnawave
        restart: always
        ports:
            - &#x27;127.0.0.1:3000:3000&#x27;
        env_file:
            - .env
        networks:
            - remnawave-network
        depends_on:
            remnawave-db:
                condition: service_healthy
            remnawave-redis:
                condition: service_healthy

    remnawave-redis:
        image: valkey/valkey:8.0.2-alpine
        container_name: remnawave-redis
        hostname: remnawave-redis
        restart: always
        networks:
            - remnawave-network
        volumes:
            - remnawave-redis-data:/data
        healthcheck:
            test: [&#x27;CMD&#x27;, &#x27;valkey-cli&#x27;, &#x27;ping&#x27;]
            interval: 3s
            timeout: 10s
            retries: 3

networks:
    remnawave-network:
        name: remnawave-network
        driver: bridge
        external: false

volumes:
    remnawave-db-data:
        driver: local
        external: false
        name: remnawave-db-data
    remnawave-redis-data:
        driver: local
        external: false
        name: remnawave-redis-data</pre>
  <p id="wl3E">Сохраняем данные, нажав <strong>Ctrl-X</strong> далее <strong>Y</strong> и <strong>Enter</strong></p>
  <ul id="I14O">
    <li id="t7mo">Запускаем контейнер</li>
  </ul>
  <pre id="Q19i">docker compose up -d</pre>
  <ul id="6i9W">
    <li id="g1v8">Проверка логов при необходимости.</li>
  </ul>
  <pre id="TdWl">docker compose logs -f</pre>
  <ul id="ktjd">
    <li id="oLfL">Создаем файл <code>Caddyfile</code> в папке <code>/opt/remnawave/caddy</code></li>
  </ul>
  <pre id="P4tp">mkdir -p /opt/remnawave/caddy &amp;&amp; cd /opt/remnawave/caddy &amp;&amp; nano Caddyfile</pre>
  <p id="7ko1">и вставляем данные предварительно заменив panel.domen.com на домен панели</p>
  <pre id="b86m">https://panel.domen.com {
        reverse_proxy * http://remnawave:3000
}
:443 {
    tls internal
    respond 204
}</pre>
  <p id="KyGP">Сохраняем данные, нажав <strong>Ctrl-X</strong> далее <strong>Y</strong> и <strong>Enter</strong></p>
  <ul id="TFxv">
    <li id="RAs6">Создаем файл <code>docker-compose.yml</code> в папке <code>/opt/remnawave/caddy</code></li>
  </ul>
  <pre id="CUHl">cd /opt/remnawave/caddy &amp;&amp; nano docker-compose.yml</pre>
  <p id="5syP">Вставляем данные</p>
  <pre id="w2Ll">services:
    caddy:
        image: caddy:2.9
        container_name: &#x27;caddy&#x27;
        hostname: caddy
        restart: always
        ports:
            - &#x27;0.0.0.0:443:443&#x27;
        networks:
            - remnawave-network
        volumes:
            - ./Caddyfile:/etc/caddy/Caddyfile
            - caddy-ssl-data:/data

networks:
    remnawave-network:
        name: remnawave-network
        driver: bridge
        external: true

volumes:
    caddy-ssl-data:
        driver: local
        external: false
        name: caddy-ssl-data</pre>
  <p id="jqGO">Сохраняем данные, нажав <strong>Ctrl-X</strong> далее <strong>Y</strong> и <strong>Enter</strong></p>
  <ul id="EWJ8">
    <li id="JE7g">Запускаем контейнер</li>
  </ul>
  <pre id="ZgOe">docker compose up -d</pre>
  <ul id="6i9W">
    <li id="z4T0">Проверка логов при необходимости.</li>
  </ul>
  <pre id="uDPS">docker compose logs -f</pre>
  <p id="GHpQ">Ваша панель установлена и теперь доступна по адресу: <a href="https://panel.domen.com" target="_blank">https://panel.domen.com</a></p>
  <h3 id="Iqg1">2. Установка страницы подписок</h3>
  <ul id="j7lc">
    <li id="ou7h">Создаем файл docker-compose.yml в папке /opt/remnawave/subscription</li>
  </ul>
  <pre id="lTgD">mkdir -p /opt/remnawave/subscription &amp;&amp; cd /opt/remnawave/subscription &amp;&amp; nano docker-compose.yml</pre>
  <p id="step-2-paste-the-following-configuration">и вставляем данные предварительно заменив panel.domen.com на домен панели</p>
  <pre id="BQH1">services:
    remnawave-subscription-page:
        image: remnawave/subscription-page:latest
        container_name: remnawave-subscription-page
        hostname: remnawave-subscription-page
        restart: always
        environment:
            - REMNAWAVE_PANEL_URL=https://panel.com
            - APP_PORT=3010
            - META_TITLE=&quot;Subscription Page Title&quot;
            - META_DESCRIPTION=&quot;Subscription Page Description&quot;
        ports:
            - &#x27;127.0.0.1:3010:3010&#x27;
        networks:
            - remnawave-network

networks:
    remnawave-network:
        driver: bridge
        external: true</pre>
  <p id="hKt4">Сохраняем данные, нажав <strong>Ctrl-X</strong> далее <strong>Y</strong> и <strong>Enter</strong></p>
  <ul id="EWJ8">
    <li id="VEzj">Запускаем контейнер</li>
  </ul>
  <pre id="PO6P">docker compose up -d</pre>
  <ul id="6i9W">
    <li id="vLWv">Проверка логов при необходимости.</li>
  </ul>
  <pre id="1yOL">docker compose logs -f</pre>
  <ul id="byaz">
    <li id="o9Wy">Открываем Caddy</li>
  </ul>
  <pre id="nCH4">cd /opt/remnawave/caddy &amp;&amp; nano Caddyfile</pre>
  <p id="vuBb">И добавляем в самый низ строки предварительно заменив sub.domen.com на поддомен подписок</p>
  <pre id="CiIf">https://sub.domen.com {
        reverse_proxy * http://remnawave-subscription-page:3010
}</pre>
  <p id="WaKF">Сохраняем данные, нажав <strong>Ctrl-X</strong> далее <strong>Y</strong> и <strong>Enter</strong></p>
  <ul id="VLCL">
    <li id="fRut">Перезапускаем контейнер</li>
  </ul>
  <pre id="hCPC">docker compose down &amp;&amp; docker compose up -d</pre>
  <ul id="Skf8">
    <li id="fIQa">Проверка логов при необходимости.</li>
  </ul>
  <pre id="fPVQ">docker compose logs -f</pre>
  <h3 id="M3LF">3. Установка Ноды</h3>
  <ul id="HPZZ">
    <li id="CspJ">Устанавливаем docker.</li>
  </ul>
  <pre id="Chf4">sudo curl -fsSL https://get.docker.com | sh</pre>
  <ul id="qw2N">
    <li id="aem3">Создаем папку и переходим в нее.</li>
  </ul>
  <pre id="iq5m">mkdir -p /opt/remnanode &amp;&amp; cd /opt/remnanode</pre>
  <ul id="udw5">
    <li id="Qhu3">Настраиваем переменные</li>
  </ul>
  <pre id="9YtU">nano .env</pre>
  <p id="fyfm">Добавляем данные</p>
  <pre id="q9kF">APP_PORT=2222

SSL_CERT=CERT_FROM_MAIN_PANEL</pre>
  <p id="vZje"><strong>APP_PORT</strong> - указываем любой, это порт для подключения к ноде с панели (но не 61001)<br /><strong>SSL_CERT=CERT_FROM_MAIN_PAN - </strong>полностью удаляем данную строку. </p>
  <p id="TCj2">Переходим в основную панель panel.domen.com  Раздел: <em>Ноды- Управление -Создать новую ноду, нажимаем скопировать сертификат и вставляем полностью текст в файл nano.env вместо <strong>SSL_CERT=CERT_FROM_MAIN_PAN</strong></em></p>
  <figure id="uyAD" class="m_original">
    <img src="https://img2.teletype.in/files/5b/ab/5bab0d21-59d2-4127-bf83-7663ac6da673.png" width="467" />
    <figcaption><em>Ноды- Управление -Создать новую ноду</em></figcaption>
  </figure>
  <p id="vAsX">Сохраняем данные, нажав <strong>Ctrl-X</strong> далее <strong>Y</strong> и <strong>Enter</strong></p>
  <ul id="os90">
    <li id="2cTa">Создаем файл <strong>docker-compose.yml</strong>.</li>
  </ul>
  <pre id="RfyH">nano docker-compose.yml</pre>
  <p id="guDS">Вставляем данные</p>
  <pre id="QuVB">services:
    remnanode:
        container_name: remnanode
        hostname: remnanode
        image: remnawave/node:latest
        restart: always
        network_mode: host
        env_file:
            - .env</pre>
  <p id="3qfv">Сохраняем данные, нажав <strong>Ctrl-X</strong> далее <strong>Y</strong> и <strong>Enter</strong></p>
  <ul id="EWJ8">
    <li id="wwD4">Запускаем контейнер</li>
  </ul>
  <pre id="JYUV">docker compose up -d</pre>
  <ul id="6i9W">
    <li id="s3Ow">Проверка логов при необходимости.</li>
  </ul>
  <pre id="Qbxg">docker compose logs -f</pre>
  <p id="FnvG">Переходим в panel.domen.com и продолжаем добавление Ноды</p>
  <p id="NfSs">Адрес панели указываем IP, порт тот который указали выше <strong>APP_PORT</strong></p>
  <figure id="G57s" class="m_original">
    <img src="https://img3.teletype.in/files/e5/3a/e53a3269-f32b-45af-b01b-866e72fe1fef.png" width="489" />
  </figure>
  <h3 id="d7A4">4. Установка Selfsteel (SNI)</h3>
  <ul id="8Y5l">
    <li id="TDKv">Создаем файл <code>Caddyfile</code> в папке <code>/opt/selfsteel</code></li>
  </ul>
  <pre id="3X5I">mkdir -p /opt/selfsteel &amp;&amp; cd /opt/selfsteel &amp;&amp; nano Caddyfile</pre>
  <p id="kv8s">Вставляем данные</p>
  <pre id="SzMD">{
    https_port {$SELF_STEAL_PORT}
    default_bind 127.0.0.1
    servers {
        listener_wrappers {
            proxy_protocol {
                allow 127.0.0.1/32
            }
            tls
        }
    }
    auto_https disable_redirects
}

http://{$SELF_STEAL_DOMAIN} {
    bind 0.0.0.0
    redir https://{$SELF_STEAL_DOMAIN}{uri} permanent
}

https://{$SELF_STEAL_DOMAIN} {
    root * /var/www/html
    try_files {path} /index.html
    file_server

}


:{$SELF_STEAL_PORT} {
    tls internal
    respond 204
}

:80 {
    bind 0.0.0.0
    respond 204
}
</pre>
  <p id="qJE6">Сохраняем данные, нажав <strong>Ctrl-X</strong> далее <strong>Y</strong> и <strong>Enter</strong></p>
  <ul id="F2aY">
    <li id="imPh">Настраиваем переменные.</li>
  </ul>
  <pre id="cYd2">nano .env</pre>
  <p id="szUt">и вставляем данные предварительно заменив steel.domen.com на домен для страницы заглушки</p>
  <pre id="5Uwd"># Домены
SELF_STEAL_DOMAIN=steel.domen.com #Должен совпадать с XRAY конфигом (realitySettings.serverNames)
SELF_STEAL_PORT=9443 #Должен совпадать с XRAY конфигом (realitySettings.dest)</pre>
  <p id="ECBX">Сохраняем данные, нажав <strong>Ctrl-X</strong> далее <strong>Y</strong> и <strong>Enter</strong></p>
  <ul id="U4DR">
    <li id="Hov0">Создаем файл <strong>docker-compose.yml</strong>.</li>
  </ul>
  <pre id="aY6A">nano docker-compose.yml</pre>
  <p id="F8Ra">Вставляем данные</p>
  <pre id="LYnu">services:
  caddy:
    image: caddy:2.9.1
    container_name: caddy-remnawave
    restart: unless-stopped
    volumes:
      - ./Caddyfile:/etc/caddy/Caddyfile
      - ../html:/var/www/html
      - ./logs:/var/log/caddy
      - caddy_data_selfsteal:/data
      - caddy_config_selfsteal:/config
    env_file:
      - .env
    network_mode: &quot;host&quot;

volumes:
  caddy_data_selfsteal:
  caddy_config_selfsteal:</pre>
  <p id="80nL">Сохраняем данные, нажав <strong>Ctrl-X</strong> далее <strong>Y</strong> и <strong>Enter</strong></p>
  <ul id="PmK4">
    <li id="nUim">Запускаем контейнер</li>
  </ul>
  <pre id="XZwg">docker compose up -d</pre>
  <ul id="6i9W">
    <li id="vWto">Проверка логов при необходимости.</li>
  </ul>
  <pre id="CGx1">docker compose logs -f</pre>
  <ul id="BWIw">
    <li id="z5N9">В папке opt создаем папку html и добавляем любой файл index.html </li>
  </ul>
  <h3 id="jG4Y">5. Настройка Конфиг</h3>
  <p id="IAQK">Переходим в панель по адресу panel.domen.com раздел конфиг и меняем данные предварительно заменим данные &quot;меняем&quot; и steel.domen.com(блок Shadowsocks можно в будущем удалить)</p>
  <pre id="lC0h">{
  &quot;log&quot;: {
    &quot;loglevel&quot;: &quot;info&quot;
  },
  &quot;inbounds&quot;: [
    {
      &quot;tag&quot;: &quot;Shadowsocks&quot;,
      &quot;port&quot;: 1234,
      &quot;protocol&quot;: &quot;shadowsocks&quot;,
      &quot;settings&quot;: {
        &quot;clients&quot;: [],
        &quot;network&quot;: &quot;tcp,udp&quot;
      },
      &quot;sniffing&quot;: {
        &quot;enabled&quot;: true,
        &quot;destOverride&quot;: [
          &quot;http&quot;,
          &quot;tls&quot;,
          &quot;quic&quot;
        ]
      }
    },
    {
      &quot;tag&quot;: &quot;VLESS&quot;,
      &quot;port&quot;: 443,
      &quot;listen&quot;: &quot;0.0.0.0&quot;,
      &quot;protocol&quot;: &quot;vless&quot;,
      &quot;settings&quot;: {
        &quot;clients&quot;: [],
        &quot;decryption&quot;: &quot;none&quot;
      },
      &quot;sniffing&quot;: {
        &quot;enabled&quot;: true,
        &quot;routeOnly&quot;: false,
        &quot;destOverride&quot;: [
          &quot;http&quot;,
          &quot;tls&quot;,
          &quot;quic&quot;,
          &quot;fakedns&quot;
        ],
        &quot;metadataOnly&quot;: false
      },
      &quot;streamSettings&quot;: {
        &quot;network&quot;: &quot;tcp&quot;,
        &quot;security&quot;: &quot;reality&quot;,
        &quot;tcpSettings&quot;: {
          &quot;header&quot;: {
            &quot;type&quot;: &quot;none&quot;
          },
          &quot;acceptProxyProtocol&quot;: false
        },
        &quot;realitySettings&quot;: {
          &quot;dest&quot;: &quot;9443&quot;,
          &quot;show&quot;: false,
          &quot;xver&quot;: 0,
          &quot;spiderX&quot;: &quot;/&quot;,
          &quot;shortIds&quot;: [
            &quot;Меняем&quot;
          ],
          &quot;publicKey&quot;: &quot;Меняем&quot;,
          &quot;privateKey&quot;: &quot;Меняем&quot;,
          &quot;fingerprint&quot;: &quot;chrome&quot;,
          &quot;serverNames&quot;: [
            &quot;steel.domen.com&quot;
          ]
        }
      }
    }
  ],
  &quot;outbounds&quot;: [
    {
      &quot;tag&quot;: &quot;DIRECT&quot;,
      &quot;protocol&quot;: &quot;freedom&quot;
    },
    {
      &quot;tag&quot;: &quot;BLOCK&quot;,
      &quot;protocol&quot;: &quot;blackhole&quot;
    }
  ],
  &quot;routing&quot;: {
    &quot;rules&quot;: [
      {
        &quot;ip&quot;: [
          &quot;geoip:private&quot;
        ],
        &quot;type&quot;: &quot;field&quot;,
        &quot;outboundTag&quot;: &quot;BLOCK&quot;
      },
      {
        &quot;type&quot;: &quot;field&quot;,
        &quot;domain&quot;: [
          &quot;geosite:private&quot;
        ],
        &quot;outboundTag&quot;: &quot;BLOCK&quot;
      },
      {
        &quot;type&quot;: &quot;field&quot;,
        &quot;protocol&quot;: [
          &quot;bittorrent&quot;
        ],
        &quot;outboundTag&quot;: &quot;BLOCK&quot;
      }
    ]
  }
}</pre>
  <p id="QIAh">Ключи можно сгенерировать на панели нажав </p>
  <figure id="I0SL" class="m_original">
    <img src="https://img4.teletype.in/files/bd/56/bd56ce23-cb58-49a6-874f-2a0a424a0055.png" width="397" />
  </figure>
  <h3 id="19An">6. Добавление Хоста</h3>
  <p id="oZnZ">Переходим в панель по адресу panel.domen.com раздел Хост</p>
  <p id="KqiG">Добавляем хост, Указываем примечание, можно Инбаунд VLESS&gt; адрес меняем на свой из пункта 4</p>
  <figure id="U42f" class="m_original">
    <img src="https://img4.teletype.in/files/be/c5/bec59e3b-703e-4a34-aef8-a5511ae81bba.png" width="499" />
  </figure>

]]></content:encoded></item></channel></rss>