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
- Cloudflare Turnstile engedélyezése
- Front-end telepítése
- Telegram robot létrehozása
- 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.
- Nyisd meg a https://github.com/cjh0613/csubot-vue oldalt, és forkold ezt a tárolót
- Válaszd ki a telepítési platformot, mint például Cloudflare Pages, Vercel, Netlify stb.
- 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ő)>
- 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:
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