CSUBOT è un robot super amministratore open source.

Questo articolo spiega come distribuire CSUBOT da soli.

Si prega di leggere prima completamente questo documento: Manuale di istruzioni del robot CSUBOT

Consigliato: Verifica l’IP pubblico di accesso del dispositivo a diversi siti web, utilizzato per verificare l’ambiente di rete corrente.

Prerequisiti

Per distribuire CSUBOT da soli, è necessario soddisfare almeno le seguenti condizioni:

  • Possedere un dominio. (Avere almeno un dominio di secondo livello, utilizzato per il backend. In realtà, sia il frontend che il backend richiedono due domini di secondo livello, ma in genere il dominio del frontend può essere fornito dalla piattaforma di distribuzione)
  • Possedere un server. Oppure distribuire su una piattaforma in grado di distribuire servizi backend. Se conosci una piattaforma gratuita in grado di distribuire servizi backend, non esitare, clicca qui, pubblica un commento per dirlo all’autore .
  • Possedere un account Telegram non limitato, utilizzato per creare un robot Telegram e ottenere il Token del robot.
  • Possedere un account Cloudflare non limitato, utilizzato per abilitare il codice di verifica Cloudflare Turnstile. Registra un account: https://dash.cloudflare.com/

Passaggi operativi

  1. Abilita Cloudflare Turnstile
  2. Distribuisci il frontend
  3. Crea un robot Telegram
  4. Configura il backend

Abilita Cloudflare Turnstile

Clicca su questo link per aprire il pannello di configurazione di Cloudflare Turnstile Configurazione del componente Turnstile

Clicca su add widget, aggiungi un componente Turnstile

Clicca su Add Hostnames, aggiungi il dominio del frontend. Se intendi utilizzare il dominio fornito dalla piattaforma di hosting frontend, puoi scrivere qualsiasi cosa qui.

Clicca sul pulsante di creazione, quindi puoi vedere Site Key e Secret Key

Distribuisci il frontend

Prendiamo come esempio la distribuzione su una piattaforma di hosting frontend.

  1. Apri https://github.com/cjh0613/csubot-vue , fork questo repository
  2. Scegli la piattaforma di distribuzione, come Cloudflare Pages, Vercel, Netlify, ecc.
  3. Scegli di importare dal repository Github, scegli il repository forked nel primo passaggio.

Il percorso di lavoro è configurato come la directory root del progetto, il comando di compilazione è:

npm install && npm run build

La directory di output è:

dist/

Configura le variabili d’ambiente:

VITE_ENDPOINT=https://xxxx.com <URL backend, richiede https>

VITE_SITEKEY=0x4AAAAAABBBBBBBBBBB <Chiave del sito Site Key di Cloudflare turnstile (quella in alto)>
  1. Inizia la distribuzione, una volta completata potrai vedere il dominio fornito dalla piattaforma. Puoi anche associare il tuo dominio. Devi attendere la configurazione del DNS e la generazione del certificato.

Crea un robot Telegram

Chatta privatamente con https://t.me/BotFather , invia /newbot, segui le istruzioni del robot per creare un nuovo robot, una volta completata la creazione, riceverai un Token

Configura il backend

Puoi scegliere di eseguire direttamente il file eseguibile binario o di compilarlo da solo.

Riferimento alle variabili d’ambiente

TGWD_TOKEN=<token del robot Telegram, ottenuto da @botfather>
TGWD_FRONTEND_DOMAIN=<dominio frontend, non richiede https>
TGWD_SECRET=<inserisci qualsiasi cosa>
TGWD_PORT=8000
TGWD_CFTS_API_KEY=<Chiave segreta Secret Key di Cloudflare turnstile (quella sotto la chiave del sito)>

Utilizza il file eseguibile binario

Prendiamo come esempio il sistema operativo linux amd64.

Innanzitutto, crea una nuova cartella.

mkdir csubot && cd csubot

Scarica il file eseguibile binario. Apri https://github.com/cjh0613/csubot/releases per ottenere l’ultimo link, potrebbe essere necessario fare clic su Show all assets per trovare il file adatto alla tua piattaforma.

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

Poiché si tratta di un pacchetto compresso in formato zip, decomprimi:

unzip csubot-linux-amd64.zip

Se non riesci a eseguire questo comando, verifica di aver installato correttamente il pacchetto unzip.

Entra nella directory in cui si trova csubot,

Utilizza il seguente comando per visualizzare il file nascosto .env.example.

ls -la

Utilizza il tuo editor di testo (come nano, vim), crea un nuovo file .env, fai riferimento al file di esempio .env.example per la configurazione.

Prova a eseguire:

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

Compila da solo

Esegui il comando nella directory root del progetto:

go build -o csubot

Prova a eseguire:

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

HTTPS

Il backend non fornisce direttamente il supporto https, è possibile accedere solo tramite http.

Puoi utilizzare servizi come Apache, Nginx, Microsoft Internet Information Services (IIS) per configurare HTTPS.

Se utilizzi Cloudflare CDN, puoi anche impostare la modalità di crittografia su Flexible in SSL/TLS encryption. In questo modo, gli utenti accedono al server Cloudflare utilizzando il protocollo https configurato automaticamente da Cloudflare, quindi Cloudflare accede al server che hai configurato per il servizio backend utilizzando il protocollo http.

Esegui come servizio systemd

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

Crea un utente di servizio

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

Configura le autorizzazioni

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

Crea e modifica /etc/systemd/system/csubot.service, scrivi

[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

# Carica il file delle variabili d'ambiente
EnvironmentFile=/usr/local/bin/csubot/.env
# Avvia il servizio
sudo systemctl start csubot.service

# Visualizza lo stato di esecuzione
sudo systemctl status csubot.service

# Imposta l'avvio automatico
sudo systemctl enable csubot.service

Altre versioni di questa pagina web

Questo articolo ha diverse versioni linguistiche.

Se desideri pubblicare un commento, visita la seguente pagina web:

ZH EN ZH-TW JA

Queste pagine web supportano solo la visualizzazione, non possono essere pubblicati commenti o messaggi, ma forniscono più opzioni linguistiche e tempi di caricamento più brevi:

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