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
- Abilita Cloudflare Turnstile
- Distribuisci il frontend
- Crea un robot Telegram
- 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.
- Apri https://github.com/cjh0613/csubot-vue , fork questo repository
- Scegli la piattaforma di distribuzione, come Cloudflare Pages, Vercel, Netlify, ecc.
- 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)>
- 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:
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