FastaPI के साथ एक खतरा प्रतिक्रिया एपीआई बनाने के लिए कैसे

Microsoft के साथ अनुवादित

खतरे इंटेल के लिए कई महान एपीआई उपलब्ध हैं। AbuseIP उनमें से एक है और बड़ी बिक्री यह है कि यह मुफ़्त है!

इस एपीआई को सीधे चलाना, हमेशा एक विकल्प होता है, हालांकि, इसके लिए मैं अपना खुद का निर्माण करने जा रहा हूं और उनका शामिल हूं। ऐसा करने में, मैं तब इस पर निर्माण कर सकता हूं और डेटा को समृद्ध करने के लिए कई एपीआई को शामिल कर सकता हूं।

आइए हम मूल बातें के साथ शुरू करते हैं …

सबसे पहले, आपको एक मेजबान की आवश्यकता है। मैं एक बादल होस्टिंग सेवा का उपयोग करना पसंद है. मैं IONOS का उपयोग करें के रूप में यह सस्ता और हंसमुख है. आप Azure और AWS जैसे अन्य क्लाउड प्रदाताओं का उपयोग करके एक मुफ्त भी प्राप्त कर सकते हैं।

मेरे IONOS पर, मेरे “देव” होस्ट की लागत लगभग £ 3 p / m p / h है।

इसके लिए, मैं एक कम-स्पेक डेबियन होस्ट का उपयोग करने जा रहा हूं। एक बार जब आप कनेक्ट हो जाते हैं, तो आइए निम्नलिखित स्थापित करें:

एक बार जब आप उपरोक्त कर लेते हैं , तो एक ऐप फ़ोल्डर और एक पायथन फ़ाइल बनाएं main.py (आपको बनाने की आवश्यकता है)

फिर अपनी server.py फ़ाइल बनाएँ जो मुख्य निर्देशिका में रह सकती है।

वैकल्पिक:

यदि आप HTTPS का उपयोग करके अपना FastAPI चलाना चाहते हैं , तो आपको एक प्रमाणपत्र की आवश्यकता होगी। CertBot सबसे आसान तरीका है, और निर्देश यहां पाए जा सकते हैं: https://certbot.eff.org/instructions?ws=other&os=debianbuster

एक बार जब आपके पास अपनी कुंजी फ़ाइलें होती हैं, तो आप उन्हें बाद में server.py के भीतर संदर्भित कर सकते हैं:

अब हमारे पास मूल बातें की गई हैं, चलो काम पर आते हैं।

अपनी main.py फ़ाइल संपादित करें और निम्न जोड़ें: Github पर कोड

चलो इसे तोड़ते हैं ताकि हम जान सकें कि क्या है।

इस अनुभाग में, मैं सभी पुस्तकालयों को आयात कर रहा हूँ, मैं की जरूरत है:

यहां मैं ऐप को परिभाषित कर रहा हूं और डिफ़ॉल्ट पथ पर एक साधारण एचटीएमएल पेज चला रहा हूं:

आपको इस btw की आवश्यकता नहीं है, हालांकि उदाहरण के लिए:

यहाँ दुरुपयोग के लिए हमारा कोड है । सूचना @app.get(‘/abuse/{abip}’)) आप इसे जो कुछ भी बना सकते हैं, हालांकि, अगर यह आपके लिए नया है।

@app.get एक जीईटी अनुरोध का उल्लेख कर रहा है।

‘/abuse/’ अनुभाग URL पथ है, इसलिए इस उदाहरण के लिए, यह एक बार उपयोगकर्ता द्वारा https://antler.xstag0.com:300/abuse/XXX दर्ज किए जाने के बाद चलेगा

{abip} वह चर है जिसे उपयोगकर्ता द्वारा पारित किया जा रहा है. हम इसका उपयोग यह जांचने के लिए करते हैं कि उपयोगकर्ता ने क्या दर्ज किया है। हम तो async def abusescan (abip: str)
के तहत इस पारित:

इसके लिए मैंने httpx का उपयोग करने के लिए चुना है लेकिन कई विकल्प हैं। यदि आप अनुसरण कर रहे हैं और कार्यान्वित कर रहे हैं, तो आपको सामग्री को अपनी कुंजी में बदलना होगा [आपके दुरुपयोगआईपी खाते पर पाया गया]।

एक बार जब आप अपना main.py (एपीआई) जोड़ लेते हैं या बना लेते हैं, तो चलो इसे चलाते हैं। इसके लिए, बस चलाएं:

एक साधारण परीक्षण की पुष्टि करने के लिए अपने ब्राउज़र में लोड करने के लिए किया जाएगा:

यही है। अब आपके पास एक साधारण एपीआई है जिस पर आप निर्माण कर सकते हैं। इस उदाहरण के लिए, आप एक Powershell फ़ंक्शन जैसे: Github पर कोड बना सकते हैं

यह आपके उपयोगकर्ताओं को केंद्रीय स्क्रिप्ट की आवश्यकता या एपीआई कुंजी होने के बिना एक बार में एकल या एकाधिक आईपी क्वेरी करने की अनुमति दे सकता है।

एकल IP प्राप्त करें:

एकाधिक प्राप्त करें:

आप इसका उपयोग अपने सुरक्षा प्लेटफ़ॉर्म के भीतर डेटा को समृद्ध करने के लिए भी कर सकते हैं। यदि आपका XDR, EDR उदाहरण के लिए “वेब हुक” स्वीकार करता है, तो आप अपनी घटना प्रतिक्रिया के भाग को स्वचालित करने के लिए आवश्यक डेटा वापस करने के लिए अपने API का उपयोग कर सकते हैं।

आपको एपीआई पक्ष पर कुछ पार्सिंग और फ़िल्टरिंग करने की आवश्यकता होगी, क्योंकि कुछ समाधान एक पूर्ण जेएसओएन अनुरोध को धक्का देंगे, हालांकि एक बार हो जाने के बाद, यह आपको लंबे समय में लाभ पहुंचा सकता है।

इससे पहले कि मैं समाप्त, यह ध्यान देने योग्य है कि मैं कुछ सिफारिशें जोड़ना होगा:

· रूट के नीचे मत भागो।

· फ़ायरवॉल को प्रतिबंधित करें, यदि संभव हो, तो इनबाउंड अनुरोधों के लिए।

· API कुंजियों को उत्पादन कोड के भीतर संग्रहीत न करें.

· इसके साथ मज़े करो।

अंतिम बिंदु मुख्य बात है। यदि उत्सुक है, तो आप कुछ अच्छा बनाने में सक्षम हो सकते हैं। यद्यपि यह बुनियादी हो सकता है, FastAPI या फ्लास्क आपको कुछ विशेष बनाने के लिए समाधानों को संयोजित करने की अनुमति देता है।

Advertisement

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Create a website or blog at WordPress.com

%d bloggers like this: