A CSUBOT egy nyílt forráskódú szuperadminisztrátori robot.

Ez a cikk bemutatja, hogyan telepítsd a CSUBOT-ot saját magad.

Kérjük, először olvasd el ezt a dokumentumot teljes egészében: CSUBOT robot használati útmutató

Ajánlott: Kérdezd le a géped különböző weboldalakra történő nyilvános IP-címét a jelenlegi hálózati környezet ellenőrzéséhez.

Előfeltételek

A CSUBOT önálló telepítéséhez legalább a következő feltételeknek kell teljesülniük:

  • Domain birtoklása. (Legalább egy másodszintű domain név szükséges a háttérhez. A tényleges front-endhez és háttérhez összesen két másodszintű domain név szükséges, de általában a front-end domain nevet a telepítési platform biztosítja)
  • Szerver birtoklása. Vagy telepítsd egy olyan platformra, ahol háttérszolgáltatásokat lehet telepíteni. Ha ismersz egy ingyenes platformot, amely képes háttérszolgáltatásokat telepíteni, ne habozz, kattints ide, hogy hozzászólást küldj a szerzőnek.
  • Nem korlátozott Telegram-fiók birtoklása, Telegram-robot létrehozásához és a robot Tokenjének lekéréséhez
  • Nem korlátozott Cloudflare-fiók birtoklása a Cloudflare Turnstile captcha engedélyezéséhez. Fiók regisztrálása: https://dash.cloudflare.com/

Lépések

  1. Cloudflare Turnstile engedélyezése
  2. Front-end telepítése
  3. Telegram robot létrehozása
  4. Háttér konfigurálása

Cloudflare Turnstile engedélyezése

Kattints erre a linkre a Cloudflare Turnstile konfigurációs paneljének megnyitásához Turnstile komponens konfiguráció

Kattints az add widget gombra egy Turnstile widget hozzáadásához

Kattints az Add Hostnames gombra a front-end domain nevének hozzáadásához. Ha a front-end üzemeltetési platform által biztosított domain nevet szeretnéd használni, ide bármit beírhatsz.

Kattints a létrehozás gombra, és ekkor látod a Site Key-t és a Secret Key-t.

Front-end telepítése

Példaként vegyük a front-end üzemeltetési platformra történő telepítést.

  1. Nyisd meg a https://github.com/cjh0613/csubot-vue oldalt, és forkold ezt a tárolót
  2. Válaszd ki a telepítési platformot, mint például Cloudflare Pages, Vercel, Netlify stb.
  3. Válaszd a Github tárolóból történő importálást, válaszd ki az első lépésben forkolt tárolót.

A munkakönyvtár konfigurálása a projekt gyökérkönyvtárába, a fordítási parancs pedig:

npm install && npm run build

A kimeneti könyvtár:

dist/

Környezeti változók konfigurálása:

VITE_ENDPOINT=https://xxxx.com <Háttér URL, https szükséges>

VITE_SITEKEY=0x4AAAAAABBBBBBBBBBB <Cloudflare turnstile webhelykulcs Site Key (a felső)>
  1. Kezdd el a telepítést, és a befejezés után láthatod a platform által biztosított domain nevet. Saját domain nevet is csatolhatsz. Várni kell a DNS konfigurációra és a tanúsítvány generálására.

Telegram robot létrehozása

Privát csevegés https://t.me/BotFather , küldj egy /newbot üzenetet, és hozz létre egy új robotot a robot kérései alapján. A létrehozás befejezése után kapsz egy Tokent

Háttér konfigurálása

Dönthetsz úgy, hogy közvetlenül futtatsz egy bináris végrehajtható fájlt, vagy saját magad fordítod le.

Környezeti változó referencia

TGWD_TOKEN=<Telegram robot tokenje, @botfather helyen szerezhető be>
TGWD_FRONTEND_DOMAIN=<Front-end domain név, https nélkül>
TGWD_SECRET=<Töltsd ki tetszőlegesen>
TGWD_PORT=8000
TGWD_CFTS_API_KEY=<Cloudflare turnstile Secret Key titkos kulcs (a webhelykulcs alatt)>

Bináris végrehajtható fájl használata

Példaként vegyük a linux amd64 operációs rendszert.

Először hozz létre egy új mappát.

mkdir csubot && cd csubot

Töltsd le a bináris végrehajtható fájlt. Ehhez a letöltési linkhez nyisd meg a https://github.com/cjh0613/csubot/releases oldalt, és szerezd be a legújabb linket, lehet, hogy a Show all assets gombra kell kattintanod, hogy megtaláld a platformodhoz megfelelő fájlt.

wget https://github.com/cjh0613/csubot/releases/download/vxxx/csubot-linux-amd64.zip

Mivel ez egy zip formátumú tömörített fájl, bontsd ki:

unzip csubot-linux-amd64.zip

Ha nem tudod végrehajtani ezt a parancsot, ellenőrizd, hogy sikeresen telepítetted-e az unzip csomagot.

Lépj be a csubot könyvtárba,

A következő paranccsal megtekintheted a rejtett .env.example fájlt.

ls -la

Használd a szövegszerkesztődet (például nano, vim), hozz létre egy új .env fájlt, és konfiguráld a .env.example példafájl alapján.

Próbáld meg futtatni:

export $(grep -v '^#' .env | xargs) && ./csubot

Saját fordítás

Futtasd a parancsot a projekt gyökérkönyvtárában:

go build -o csubot

Próbáld meg futtatni:

export $(grep -v '^#' .env | xargs) && ./csubot

HTTPS

A háttér nem nyújt közvetlen https támogatást, csak http hozzáférés lehetséges.

HTTPS-t konfigurálhatsz olyan szolgáltatásokkal, mint az Apache, Nginx, Microsoft Internet Information Services (IIS).

Ha Cloudflare CDN-t használsz, akkor az SSL/TLS titkosításnál a titkosítási módot Flexible értékre is állíthatod. Így a felhasználók a Cloudflare szerverhez a Cloudflare által automatikusan konfigurált https protokollal férnek hozzá, majd a Cloudflare a te konfigurált háttérszolgáltatási szerveredhez http protokollal fér hozzá.

Futtatás systemd szolgáltatásként

sudo mkdir /usr/local/bin/csubot/
sudo cp .env /usr/local/bin/csubot/.env
sudo cp csubot /usr/local/bin/csubot/csubot
sudo cp -r ./locales /usr/local/bin/csubot/locales

Szolgáltatás felhasználó létrehozása

sudo useradd --system --no-create-home --shell /sbin/nologin csubotuser

Engedélyek konfigurálása

sudo chown csubotuser:csubotuser /usr/local/bin/csubot/csubot
sudo setfacl -R -m u:csubotuser:r /usr/local/bin/csubot
sudo chmod +x /usr/local/bin/csubot/csubot

Hozd létre és szerkeszd a /etc/systemd/system/csubot.service fájlt, írd be a következőt

[Unit]
Description=CSUBOT Backend
After=network-online.target
Wants=network-online.target

[Install]
WantedBy=multi-user.target

[Service]
Type=simple
User=csubotuser
Group=csubotuser
ExecStart=/usr/local/bin/csubot/csubot
WorkingDirectory=/usr/local/bin/csubot
RestartSec=10s
Restart=always
# Restart=on-failure

# Környezeti változó fájl betöltése
EnvironmentFile=/usr/local/bin/csubot/.env
# Szolgáltatás indítása
sudo systemctl start csubot.service

# Futtatási állapot megtekintése
sudo systemctl status csubot.service

# Indítás beállítása rendszerindításkor
sudo systemctl enable csubot.service

A weboldal más verziói

Ez a cikk többféle nyelven is elérhető.

Ha megjegyzést szeretnél írni, látogass el a következő weboldalakra:

ZH EN ZH-TW JA

Ezek az oldalak csak böngészést tesznek lehetővé, megjegyzések vagy üzenetek írását nem, de több nyelvi lehetőséget kínálnak, és rövidebb betöltési idővel rendelkeznek:

ZH EN ZH-TW JA RU KO CS ES AR FR PT DE TR IT NL SV DA FI PL UK HE RO HU EL HR TH HI BN ID SW VI NO