CSUBOT, açık kaynaklı bir süper yönetici robotudur.

Bu makale, CSUBOT’u nasıl kendiniz dağıtabileceğinizi anlatmaktadır.

Lütfen öncelikle bu belgeyi eksiksiz olarak okuyun: CSUBOT Robotu Kullanım Kılavuzu

Öneri: Farklı web sitelerine erişmek için yerel makinenizin genel IP adresini sorgulayın, mevcut ağ ortamını kontrol etmek için.

Ön Koşullar

CSUBOT’u kendiniz dağıtmak için, en azından aşağıdaki koşulların sağlanması gerekir:

  • Bir alan adına sahip olun. (En az bir ikinci düzey alan adına sahip olun, arka uç için. Gerçekte ön uç ve arka uç için toplamda iki ikinci düzey alan adı gerekir, ancak genellikle ön uç alan adı dağıtım platformu tarafından sağlanabilir)
  • Bir sunucuya sahip olun veya arka uç hizmetlerini dağıtabileceğiniz bir platformda dağıtın. Ücretsiz, arka uç hizmetlerini dağıtabileceğiniz bir platform biliyorsanız, lütfen tereddüt etmeyin, buraya tıklayarak yazara bir yorum bırakın .
  • Telegram robotu oluşturmak ve robotun Token’ını almak için kısıtlanmamış bir Telegram hesabına sahip olun.
  • Cloudflare Turnstile doğrulama kodunu etkinleştirmek için kısıtlanmamış bir Cloudflare hesabına sahip olun. Hesap kaydı: https://dash.cloudflare.com/

İşlem Adımları

  1. Cloudflare Turnstile’ı etkinleştirin
  2. Ön ucu dağıtın
  3. Telegram robotu oluşturun
  4. Arka ucu yapılandırın

Cloudflare Turnstile’ı Etkinleştirme

Bu bağlantıya tıklayarak Cloudflare Turnstile yapılandırma panelini açın: Turnstile Bileşen Yapılandırması

Add widget’a tıklayarak bir Turnstile bileşeni ekleyin

Add Hostnames’e tıklayarak ön ucun alan adını ekleyin. Ön uç barındırma platformu tarafından sağlanan bir alan adını kullanmayı planlıyorsanız, buraya rastgele bir şey yazabilirsiniz.

Oluştur düğmesine tıklayın ve ardından Site Key ve Secret Key’i görebilirsiniz

Ön Ucu Dağıtma

Ön uç barındırma platformuna dağıtma örneğini ele alalım.

  1. https://github.com/cjh0613/csubot-vue adresini açın ve bu depoyu çatallayın
  2. Dağıtım platformunu seçin, örneğin Cloudflare Pages, Vercel, Netlify vb. olabilir.
  3. Github deposundan içe aktarmayı seçin, ilk adımda çatalladığınız depoyu seçin.

Çalışma yolu, proje kök dizini olarak yapılandırılmıştır ve derleme komutu şudur:

npm install && npm run build

Çıktı dizini şudur:

dist/

Ortam değişkenlerini yapılandırın:

VITE_ENDPOINT=https://xxxx.com <Arka uç URL'si, https gerektirir>

VITE_SITEKEY=0x4AAAAAABBBBBBBBBBB <Cloudflare turnstile'ın site anahtarı Site Key (üstteki)>
  1. Dağıtıma başlayın, tamamlandıktan sonra platform tarafından sağlanan bir alan adını görebilirsiniz. Kendi alan adınızı da bağlayabilirsiniz. DNS yapılandırması ve sertifika oluşturulması için beklemeniz gerekir.

Telegram Robotu Oluşturma

https://t.me/BotFather adresine özel mesaj göndererek /newbot gönderin, robotun talimatlarına göre yeni bir robot oluşturun, oluşturma tamamlandıktan sonra bir Token alacaksınız

Arka Ucu Yapılandırma

İkili yürütülebilir dosyayı doğrudan çalıştırmayı veya kendiniz derlemeyi seçebilirsiniz.

Ortam Değişkenleri Referansı

TGWD_TOKEN=<Telegram robotunun token'ı, @botfather'dan alın>
TGWD_FRONTEND_DOMAIN=<Ön uç alan adı, https gerekmez>
TGWD_SECRET=<Rastgele doldurun>
TGWD_PORT=8000
TGWD_CFTS_API_KEY=<Cloudflare turnstile'ın Gizli Anahtarı Secret Key (Site anahtarının altındaki)>

İkili Yürütülebilir Dosya Kullanımı

Linux amd64 işletim sistemini örnek alalım.

Öncelikle yeni bir klasör oluşturun.

mkdir csubot && cd csubot

İkili yürütülebilir dosyayı indirin. Buradaki indirme bağlantısı için lütfen https://github.com/cjh0613/csubot/releases adresini açarak en son bağlantıyı alın, platformunuza uygun dosyayı bulmak için Show all assets ’e tıklamanız gerekebilir.

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

Zip formatında sıkıştırılmış bir dosya olduğundan, açın:

unzip csubot-linux-amd64.zip

Bu komutu yürütemiyorsanız, lütfen unzip paketinin başarıyla yüklendiğinden emin olun.

csubot’un bulunduğu dizine girin,

Aşağıdaki komutu kullanarak gizli .env.example dosyasını görüntüleyebilirsiniz.

ls -la

Metin düzenleyiciniz (örneğin nano, vim) kullanarak yeni bir .env dosyası oluşturun ve .env.example örnek dosyasına göre yapılandırın.

Çalıştırmayı deneyin:

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

Kendiniz Derleme

Proje kök dizininde şu komutu yürütün:

go build -o csubot

Çalıştırmayı deneyin:

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

HTTPS

Arka uç doğrudan https desteği sağlamaz, yalnızca http üzerinden erişilebilir.

HTTPS’yi yapılandırmak için Apache, Nginx, Microsoft Internet Information Services (IIS) vb. hizmetleri kullanabilirsiniz.

Cloudflare CDN kullanıyorsanız, SSL/TLS şifrelemesinde şifreleme modunu Flexible olarak da ayarlayabilirsiniz. Bu sayede kullanıcılar Cloudflare sunucusuna erişirken Cloudflare’in otomatik olarak yapılandırdığı https protokolünü kullanırlar ve ardından Cloudflare, yapılandırdığınız arka uç hizmetinin sunucusuna http protokolü üzerinden erişir.

Systemd Hizmeti Olarak Çalıştırma

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

Hizmet kullanıcısı oluşturun

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

İzinleri yapılandırın

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

/etc/systemd/system/csubot.service dosyasını oluşturun ve düzenleyin, içine şunu yazın

[Unit]
Description=CSUBOT Arka Ucu
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

# Ortam değişkenleri dosyasını yükle
EnvironmentFile=/usr/local/bin/csubot/.env
# Hizmeti başlat
sudo systemctl start csubot.service

# Çalışma durumunu görüntüle
sudo systemctl status csubot.service

# Başlangıçta başlatmayı ayarla
sudo systemctl enable csubot.service

Bu Web Sayfasının Diğer Sürümleri

Bu makalenin birden çok dilde sürümü bulunmaktadır.

Yorum yapmak isterseniz, lütfen aşağıdaki web sayfasını ziyaret edin:

ZH EN ZH-TW JA

Bu web sayfaları yalnızca görüntülemeyi destekler, yorum veya mesaj bırakılamaz, ancak daha fazla dil seçeneği sunar ve daha kısa yükleme süreleri sunar:

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