Skip to content
KitploitKITPLOIT
उपकरणब्लॉग
जमा करें
उपकरणब्लॉग
जमा करें

हैकिंग, पेनटेस्ट और साइबर सुरक्षा उपकरण आपके सुरक्षा शस्त्रागार के लिए!

Kitploit हैकिंग, साइबर सुरक्षा और पेंटेस्टिंग टूल्स की एक निर्देशिका है। कमजोरियों को खोजने, सिस्टम का विश्लेषण करने, परीक्षण को स्वचालित करने और अपनी सुरक्षा को मजबूत करने के लिए नवीनतम प्रोजेक्ट अपडेट खोजें।

··फ़ीड·संपर्क·गोपनीयता·© 2026 Kitploit

टूल निर्देशिका

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
canarytokens-docker — Docker कॉन्फ़िगरेशन अपने खुद के Canarytokens को जल्दी से सेटअप करने के लिए। | Kitploit
उपकरण/GitHubGitHub/thinkst/canarytokens-docker
रक्षात्मक उपकरणनेटवर्क सुरक्षाघुसपैठ का पता लगानाघटना प्रतिक्रिया
GitHubthinkst/canarytokens-docker

canarytokens-docker

Docker कॉन्फ़िगरेशन अपने खुद के Canarytokens को जल्दी से सेटअप करने के लिए।

रिपॉजिटरी देखें
65811923 दिन पहलेKitploit द्वारा समीक्षित

सबसे लोकप्रिय

सभी देखें →

हमारे समुदाय द्वारा सबसे अधिक उपयोग किए जाने वाले उपकरण खोजें।

सभी उपकरण खोजें

हमारे उपकरणों का संग्रह ब्राउज़ करें

सभी उपकरण देखें →
साझा करें

डॉकराइज़्ड Canarytokens

Thinkst Applied Research द्वारा

अवलोकन

Canarytokens आपके नेटवर्क पर गतिविधि और क्रियाओं को ट्रैक करने में मदद करते हैं।

यदि आपको कोई समस्या आती है तो कृपया हमारा FAQ यहाँ देखें, या एक issue बनाएँ और हम जल्द से जल्द आपसे संपर्क करने का प्रयास करेंगे।

विषय-सूची

  • आचार संहिता
  • पूर्वापेक्षाएँ
  • v3 में माइग्रेट करना
  • सेटअप (Ubuntu में)
  • डेटा स्थायी रूप से सहेजना
  • HTTPS कैसे सक्षम करें
  • अपनी Canarytokens साइट पर बेसिक ऑथ सक्षम करना
  • क्या नया है?
  • FAQ
  • योगदान

आचार संहिता

यह परियोजना और इसमें भाग लेने वाले सभी लोग आचार संहिता द्वारा शासित हैं। भाग लेने से, आपसे इस संहिता का पालन करने की अपेक्षा की जाती है। कृपया अस्वीकार्य व्यवहार की रिपोर्ट [email protected] पर करें।

पूर्वापेक्षाएँ

  • कम से कम एक डोमेन नाम। यदि आप PDF-खोलने की ट्रैकिंग सक्षम करना चाहते हैं, तो कम से कम दो डोमेन।
  • इंटरनेट-सुलभ Docker होस्ट। आप Linux होस्ट पर Docker इंस्टॉल कर सकते हैं।

v3 में माइग्रेट करना

  • आप letsencrypt का उपयोग कर रहे हैं या नहीं, इस पर निर्भर करते हुए: docker compose -f docker-compose.yml down या docker compose -f docker-compose-letsencrypt.yml down
  • यदि आप Docker के पुराने संस्करण पर चल रहे हैं, तो आपको अपग्रेड करने की आवश्यकता होगी।
  • docker-compose अब काम नहीं करता है, और docker compose के साथ अपनी Canarytokens इंस्टेंस चालू करने से पहले आपको docker network prune चलाना होगा। Canarytokens v2 अभी भी काम करेगा।
  • canarytokens-docker रेपो का नवीनतम संस्करण पुल करें।
  • और उसी के अनुरूप: docker compose -f docker-compose.yml up -d या docker compose -f docker-compose-letsencrypt.yml up -d

नोट: अपडेटेड canarytokens-docker रेपो में अब Canarytokens v2 के लिए Dockerfile नहीं है, इसलिए इसे चलाने के लिए टैग की गई इमेज thinkst/canarytokens:v2_latest का उपयोग करना आवश्यक है। हम दृढ़ता से v3 में जाने की अनुशंसा करते हैं। यदि आप माइग्रेशन में परेशानी का सामना कर रहे हैं तो कृपया हमसे संपर्क करें।

सेटअप (Ubuntu में)

  • अपने Docker होस्ट को बूट करें, और सार्वजनिक IP पर ध्यान दें।
  • अपने डोमेन कॉन्फ़िगर करें ताकि उनके नेमसर्वर Docker होस्ट के सार्वजनिक IP की ओर इंगित करें। इसके लिए आपके रजिस्ट्रार (Registrar) पर बदलाव करना आवश्यक है। ज़ोन फ़ाइल में केवल NS रिकॉर्ड बदलना पर्याप्त नहीं है। आपको अपने डोमेन का एक A रिकॉर्ड चाहिए जो आपके सार्वजनिक IP की ओर इंगित करे।
  • Docker सेटअप क्लोन करें:
root@kitploit:~
$ git clone https://github.com/thinkst/canarytokens-docker
$ cd canarytokens-docker
  • Docker compose इंस्टॉल करें (यदि पहले से मौजूद नहीं है):
root@kitploit:~
$ sudo apt-get install python3-pip python3-dev
$ sudo pip install -U docker-compose
#if this breaks with PyYAML errors, install the libyaml development package
# sudo apt-get install libyaml-dev
  • हम दो .env फ़ाइलें वितरित करते हैं जिनका उपयोग कॉन्फ़िगरेशन के लिए किया जाएगा, अर्थात् switchboard.env.dist और frontend.env.dist। आपको उन्हें क्रमशः switchboard.env और frontend.env में कॉपी/रीनेम करना होगा (यह सुनिश्चित करता है कि यदि आप बदलाव पुल करते हैं तो आपका कॉन्फ़िगरेशन मिट न जाए)। एक बार ऐसा कर लेने के बाद, आप उन्हें संपादित कर सकते हैं:
  1. कृपया अपनी दोनों नव निर्मित कॉन्फ़िगरेशन फ़ाइलों, switchboard.env और frontend.env को देखें, और Required Settings अनुभाग भरें। Optional Settings काम करने के लिए आवश्यक नहीं हैं और उनमें उचित डिफ़ॉल्ट मान हैं, इसलिए यदि आपको आवश्यकता न हो तो उन्हें न बदलें।

  2. इसके बाद तय करें कि आप अलर्ट भेजने के लिए किस ईमेल प्रदाता का उपयोग करना चाहते हैं। आपको mailgun, SMTP और sendgrid के बीच चयन करना होगा। संबंधित आवश्यक विवरण संबंधित .env फ़ाइल में पाए जा सकते हैं।

  3. switchboard.env और frontend.env दोनों में CANARY_WG_PRIVATE_KEY_SEED के रूप में सेट करने के लिए एक अद्वितीय WireGuard key seed जनरेट करें, इस कमांड से:

root@kitploit:~
dd bs=32 count=1 if=/dev/urandom 2>/dev/null | base64
  • यहाँ एक सेटअप के लिए उदाहरण फ़ाइलें दी गई हैं जो निम्न का उपयोग करता है:
    • switchboard के माध्यम से canarytoken ट्रिगर के लिए डोमेन example1.com, example2.com, और example3.com (PDFs)

    • switchboard ट्रिगर के लिए सार्वजनिक IP 1.1.1.1

    • फ्रंटएंड को सर्व करने के लिए डोमेन 'my.domain'

    • Mailgun डोमेन नाम 'x.y' और API Key 'zzzzzzzzzz'

    • WireGuard key seed vk/GD+frlhve/hDTTSUvqpQ/WsQtioKAri0Rt5mg7dw=

    • frontend.env

root@kitploit:~
#These domains are used for general purpose tokens
CANARY_PUBLIC_IP=1.1.1.1
CANARY_DOMAINS=example1.com,example2.com

#These domains are only used for PDF tokens
CANARY_NXDOMAINS=example3.com

#Requires a Google Cloud API key to generate an incident map on the history page with the Maps JavaScript API
CANARY_GOOGLE_API_KEY=<grab google maps api key>
LOG_FILE=frontend.log
  • switchboard.env (ईमेल के लिए Mailgun का उपयोग करने का उदाहरण)
root@kitploit:~
CANARY_PUBLIC_DOMAIN=mydomain.com
LOG_FILE=switchboard.log
CANARY_MAILGUN_DOMAIN_NAME=x.y
CANARY_MAILGUN_API_KEY=zzzzzzzzzz
[email protected]
CANARY_ALERT_EMAIL_FROM_DISPLAY="Example Canarytokens"
CANARY_ALERT_EMAIL_SUBJECT="Canarytoken"
CANARY_WG_PRIVATE_KEY_SEED=vk/GD+frlhve/hDTTSUvqpQ/WsQtioKAri0Rt5mg7dw=
  • अंत में, इमेज डाउनलोड करें और प्रारंभ करें:
root@kitploit:~
$ docker compose up
  • फ्रंट एंड और switchboard अब फोरग्राउंड में चल रहे होंगे। फ्रंट एंड http://example1.com/generate पर उपलब्ध है। यदि आप इसे बैकग्राउंड में चलाना चाहते हैं, तो आप उपयोग कर सकते हैं
root@kitploit:~
$ docker compose up -d

नोट: यदि आपके पास केवल एक डोमेन है, और आप pdf टोकन का उपयोग करना चाहते हैं, तो आप CANARY_NXDOMAINS के लिए सबडोमेन का उपयोग कर सकते हैं। example.com को अपना डोमेन मानते हुए, आप CANARY_NXDOMAINS को nx.example.com पर सेट कर सकते हैं। फिर अपने DNS मैनेजर कंसोल में लॉग इन करें (जहाँ आप अपने डोमेन के DNS रिकॉर्ड संपादित कर सकते हैं) और nx.example.com का एक NS रिकॉर्ड जोड़ें जो example.com की ओर मैप करता हो।

डेटा स्थायी रूप से सहेजना

टोकन एक Redis डेटाबेस फ़ाइल में सहेजे जाते हैं जो Docker कंटेनरों के बाहर मौजूद होती है। canarytokens-docker/data डायरेक्टरी में dump.rdb देखें।

यदि आप अपने सभी टोकन मिटाना चाहते हैं, तो dump.rdb को डिलीट करें।

HTTPS कैसे सक्षम करें

हमारे पास एक अलग docker-compose फ़ाइल है जो HTTPS के साथ Canarytokens सर्वर को चालू करने की प्रक्रिया को (अधिकतर) स्वचालित कर देगी। आपको निम्नलिखित करना होगा:

  • certbot.env को संपादित करें। आपको अपना डोमेन और ईमेल पता प्रदान करना होगा (ये certbot की पंजीकरण प्रक्रिया के लिए आवश्यक हैं)। उदा.
root@kitploit:~
# Specify a single domain name
MY_DOMAIN_NAME=example.com

# or multiple domains names with this different key (comment out MY_DOMAIN_NAME above if you do):
# MY_DOMAIN_NAMES=example.com anotherexample.net thirdexample.org

[email protected]
  • अब जब आप अपना सर्वर चालू करना चाहें, तो आप docker compose -f docker-compose-letsencrypt.yml up का उपयोग करेंगे जो सर्वर को फोरग्राउंड में चलाएगा ताकि आप सुनिश्चित कर सकें कि सब कुछ ठीक से शुरू हो गया है।

  • यदि सब कुछ चल रहा है, तो आप CTRL+C दबाना चाहेंगे, एक स्वच्छ स्थिति पाने के लिए docker compose -f docker-compose-letsencrypt.yml down चलाएँ, और फिर सर्वर को बैकग्राउंड में (डेमॉन मोड में) चलाने के लिए जोड़े गए -d के साथ docker compose -f docker-compose-letsencrypt.yml up -d दोबारा चलाएँ

  • कृपया ध्यान रखें कि HTTPS विधि का उपयोग करने पर सर्टिफिकेट पंजीकृत करने के लिए आपके द्वारा निर्दिष्ट ईमेल और डोमेन नाम का उपयोग किया जाएगा। आप let's encrypt प्रक्रिया (cerbot का उपयोग करके) के बारे में यहाँ पढ़ सकते हैं। इस प्रक्रिया में यह सत्यापित करना शामिल है कि आप अपने द्वारा निर्दिष्ट डोमेन के स्वामी हैं, और आपको let's encrypt के साथ पंजीकृत करना शामिल है।

  • एक RATE LIMIT (दर सीमा) है। इसलिए इस सर्वर को बार-बार चालू और बंद न करें, अन्यथा आप जल्दी ही let's encrypt सर्टिफिकेट जनरेशन सीमा तक पहुँच जाएँगे। इससे बचने के लिए, परीक्षण उद्देश्यों के लिए आप cerbot-nginx/start.sh में ./certbot-auto कमांड में --staging जोड़ सकते हैं, जो यह परीक्षण करेगा कि let's encrypt आपको सर्टिफिकेट देता है या नहीं।

अपनी Canarytokens साइट पर बेसिक ऑथ सक्षम करना

यदि आप एक सार्वजनिक canarytokens साइट रखना चाहते हैं लेकिन उस तक पहुँचने के लिए कुछ बेसिक ऑथ चाहते हैं, तो आप इन चरणों का पालन कर सकते हैं।

  1. git clone https://github.com/thinkst/canarytokens-docker.git
  2. nginx फ़ोल्डर पर जाएँ:
    • HTTP के लिए:
    root@kitploit:~
    cd canarytokens-docker/nginx
    
    • HTTPS के लिए:
    root@kitploit:~
    cd canarytokens-docker/certbot-nginx
    
  3. sudo htpasswd -c .htpasswd user जहाँ user कोई भी यूज़रनेम हो सकता है जिसे आप उपयोग करना चाहें।
  4. sudo chown <user>:<user> .htpasswd जहाँ user स्थानीय linux उपयोगकर्ता है
  5. उपयुक्त nginx.conf संपादित करें और
root@kitploit:~
server {
    ...
    location ~* (/generate|/manage|/download|/history|/settings|/resources|/legal).* {
        auth_basic           "Basic Auth Restricted Canrytokens"; <---- ADD
        auth_basic_user_file /etc/nginx/.htpasswd;                 <---- ADD
  1. उपयुक्त Dockerfile संपादित करें और COPY nginx.conf ... के नीचे जोड़ें
root@kitploit:~
COPY .htpasswd /etc/nginx/.htpasswd
  1. इमेज को पुनः बनाएँ (rebuild) निम्न का उपयोग करके:
    • HTTP के लिए:
    root@kitploit:~
    docker compose build
    
    • HTTPS के लिए:
    root@kitploit:~
    docker compose -f docker-compose-letsencrypt.yml build
    

अपने docker कंटेनर पुनः प्रारंभ करें, और आनंद लें!

धन्यवाद, @mamisano, उपरोक्त का उपयोग करते समय एक छोटी-सी समस्या पकड़ने के लिए 🙏

क्या नया है?

हम यहाँ कुछ नई सुविधाओं/जोड़ों को ट्रैक करने जा रहे हैं ताकि यह देखना त्वरित और आसान हो कि हाल ही में क्या जोड़ा गया है।

  • हमने "What's new?" को Github Discussions पर स्थानांतरित कर दिया है। इसे यहाँ देखें।

  • अब हमारे पास त्रुटि लॉग को आपकी पसंद के webhook पर भेजने की क्षमता है, उम्मीद है कि यह आपको या आपकी टीम को विफलताओं के प्रति सचेत करेगा, बजाय इसके कि ये त्रुटियाँ केवल एक लॉग फ़ाइल में रहें। अपनी switchboard.env फ़ाइल में ERROR_LOG_WEBHOOK मान में संबंधित webhook URI प्रदान करें। (2021-04-09)

  • हमने वितरित .env फ़ाइलों का नाम बदलकर switchboard.env.dist और frontend.env.dist कर दिया है। यह सुनिश्चित करता है कि जब आप रेपो से बदलाव पुल करते हैं तो आपका स्थानीय कॉन्फ़िगरेशन मिट न जाए। (हम कॉन्फ़िग के लिए अभी भी switchboard.env और frontend.env का उपयोग करते हैं, इसका सीधा मतलब है कि रेपो की नई क्लोन में उपयोगकर्ताओं को dist फ़ाइलों को कॉपी/रीनेम करना होगा)

  • हमने एक अतिरिक्त switchboard.env जोड़ा है जिसका नाम CANARY_IPINFO_API_KEY है। यह आपको अपनी ipinfo.io API key का उपयोग करने की अनुमति देता है यदि आप चाहें (ध्यान रखें कि ipinfo.io का एक निःशुल्क टियर है जिसमें प्रतिदिन 1000 अनुरोध तक शामिल हैं)।

  • अब हमारे पास slack समर्थन है। जब आप एक webhook प्रदान करते हैं, तो आप बस अपना slack webhook URL प्रदान करते हैं। (@shortstack को धन्यवाद)।

  • हमने frontend.env में एक नया environment variable जोड़ा है जिसका नाम है, जो आपको AWS ID टोकन के लिए एक निजी या अलग URL निर्दिष्ट करने की अनुमति देता है। इसका मतलब है कि आप आसानी से खातों के बीच बदलाव कर सकते हैं। (2018-10-17)

FAQ

हमारा एक FAQ यहाँ है

योगदान

पुल रिक्वेस्ट सबमिट करने से पहले कृपया हमारे आचार संहिता और योगदान दस्तावेज़ देखें।

हम आपके बहुमूल्य योगदानों की प्रतीक्षा कर रहे हैं।

टूल डाउनलोड करें
CANARY_AWSID_URL
  • यदि आप उस इमेज को बनाने का इरादा रखते हैं जिसे भिन्न आर्किटेक्चर वाले किसी अन्य सिस्टम पर चलाया जाना है, तो आप इमेज को docker compose build --build-arg ARCH=<target arch>/ के साथ बना सकते हैं, ध्यान दें कि आर्ग्युमेंट के अंत में forward slash है। यदि इसे शामिल नहीं किया गया तो इमेज सही ढंग से नहीं बनेगी।