CSUBOT est un robot super administrateur open source.

Cet article explique comment déployer CSUBOT vous-même.

Veuillez d’abord lire attentivement ce document : Manuel d’utilisation du robot CSUBOT

Recommandé : Vérifier l’adresse IP publique de cette machine pour accéder à différents sites Web, pour vérifier l’environnement réseau actuel.

Prérequis

Pour déployer CSUBOT vous-même, vous devez au moins remplir les conditions suivantes :

  • Posséder un nom de domaine. (Vous devez posséder au moins un sous-domaine, pour le backend. En réalité, vous avez besoin de deux sous-domaines pour le frontend et le backend, mais généralement le nom de domaine du frontend peut être fourni par la plateforme de déploiement)
  • Posséder un serveur. Ou déployer sur une plateforme où vous pouvez déployer des services backend. Si vous connaissez une plateforme gratuite où vous pouvez déployer des services backend, n’hésitez pas à cliquer ici et laisser un commentaire pour l’auteur .
  • Posséder un compte Telegram non restreint, pour créer un robot Telegram et obtenir le Token du robot
  • Posséder un compte Cloudflare non restreint, pour activer le CAPTCHA Cloudflare Turnstile. S’inscrire : https://dash.cloudflare.com/

Étapes

  1. Activer Cloudflare Turnstile
  2. Déployer le frontend
  3. Créer un robot Telegram
  4. Configurer le backend

Activer Cloudflare Turnstile

Cliquez sur ce lien pour ouvrir le panneau de configuration de Cloudflare Turnstile Configuration du composant Turnstile

Cliquez sur add widget pour ajouter un widget Turnstile

Cliquez sur Add Hostnames, ajoutez le nom de domaine du frontend. Si vous prévoyez d’utiliser le nom de domaine fourni par la plateforme d’hébergement frontend, vous pouvez écrire n’importe quoi ici.

Cliquez sur le bouton créer, puis vous pouvez voir la Site Key et la Secret Key

Déployer le frontend

Prenons l’exemple du déploiement sur une plateforme d’hébergement frontend.

  1. Ouvrez https://github.com/cjh0613/csubot-vue , faites un fork de ce dépôt
  2. Choisissez la plateforme de déploiement, comme Cloudflare Pages, Vercel, Netlify, etc.
  3. Choisissez d’importer depuis le dépôt Github, choisissez le dépôt forké à la première étape.

Le chemin de travail est configuré comme le répertoire racine du projet, la commande de compilation est :

npm install && npm run build

Le répertoire de sortie est :

dist/

Configurer les variables d’environnement :

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

VITE_SITEKEY=0x4AAAAAABBBBBBBBBBB <Clé du site Cloudflare turnstile Site Key (celle qui est en haut)>
  1. Démarrez le déploiement, une fois terminé, vous pouvez voir le nom de domaine fourni par la plateforme. Vous pouvez également lier votre propre nom de domaine. Vous devez attendre la configuration DNS et la génération du certificat.

Créer un robot Telegram

Envoyez un message privé à https://t.me/BotFather , envoyez /newbot, suivez les instructions du robot pour créer un nouveau robot, une fois la création terminée, vous recevrez un Token

Configurer le backend

Vous pouvez choisir d’exécuter directement le fichier exécutable binaire ou de le compiler vous-même.

Référence des variables d’environnement

TGWD_TOKEN=<Token du robot Telegram, obtenu chez @botfather>
TGWD_FRONTEND_DOMAIN=<Nom de domaine du frontend, https non requis>
TGWD_SECRET=<Remplir avec n'importe quoi>
TGWD_PORT=8000
TGWD_CFTS_API_KEY=<Clé secrète Cloudflare turnstile Secret Key (celle en dessous de la clé du site)>

Utiliser un fichier exécutable binaire

Prenons l’exemple d’un système d’exploitation linux amd64.

Tout d’abord, créez un nouveau dossier.

mkdir csubot && cd csubot

Téléchargez le fichier exécutable binaire. Pour le lien de téléchargement, veuillez ouvrir https://github.com/cjh0613/csubot/releases pour obtenir le lien le plus récent, vous devrez peut-être cliquer sur Show all assets pour trouver le fichier adapté à votre plateforme.

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

Puisqu’il s’agit d’un paquet compressé au format zip, décompressez-le :

unzip csubot-linux-amd64.zip

Si vous ne pouvez pas exécuter cette commande, veuillez vérifier que le paquet unzip est installé avec succès.

Entrez dans le répertoire où se trouve csubot,

Utilisez la commande suivante pour afficher le fichier caché .env.example.

ls -la

Utilisez votre éditeur de texte (comme nano, vim), créez un nouveau fichier .env, référencez le fichier d’exemple .env.example pour la configuration.

Essayez d’exécuter :

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

Compiler vous-même

Exécutez la commande dans le répertoire racine du projet :

go build -o csubot

Essayez d’exécuter :

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

HTTPS

Le backend ne fournit pas directement de support HTTPS, il ne peut être accessible que via HTTP.

Vous pouvez utiliser des services tels qu’Apache, Nginx, Microsoft Internet Information Services (IIS) pour configurer HTTPS.

Si vous utilisez Cloudflare CDN, vous pouvez également définir le mode de cryptage sur Flexible dans SSL/TLS encryption. De cette façon, l’utilisateur accède au serveur Cloudflare en utilisant le protocole HTTPS configuré automatiquement par Cloudflare, puis Cloudflare accède au serveur où vous avez configuré les services backend en utilisant le protocole HTTP.

Exécuter en tant que service 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

Créer un utilisateur de service

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

Configurer les autorisations

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

Créer et modifier /etc/systemd/system/csubot.service, écrire

[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

# Charger le fichier de variables d'environnement
EnvironmentFile=/usr/local/bin/csubot/.env
# Démarrer le service
sudo systemctl start csubot.service

# Voir l'état de fonctionnement
sudo systemctl status csubot.service

# Définir le démarrage automatique au démarrage
sudo systemctl enable csubot.service

Autres versions de cette page Web

Cet article existe en plusieurs langues.

Si vous souhaitez laisser un commentaire, veuillez visiter la page Web suivante :

ZH EN ZH-TW JA

Ces pages Web ne permettent que la navigation, et ne peuvent pas publier de commentaires ou de messages, mais offrent plus d’options linguistiques et des temps de chargement plus courts :

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