सक्रिय और निष्क्रिय FTP / TFTP सेवाएं संतुलन और उच्च उपलब्धता लोड करती हैं

द्वारा प्रकाशित किया गया था Zevenet | 16 अगस्त, 2017

अवलोकन

FTP or फ़ाइल ट्रांसफ़र प्रोटोकॉल एक क्लाइंट-सर्वर आर्किटेक्चर डिज़ाइन में फ़ाइल ट्रांसफरिंग के लिए व्यापक रूप से उपयोग किया जाने वाला एक एप्लिकेशन लेयर प्रोटोकॉल है जो टीसीपी / आईपी नेटवर्क परतों पर निर्भर करता है। एफ़टीपी एक जटिल और सादा (कोई सुरक्षा जागरूक नहीं) प्रोटोकॉल है जिसका उपयोग पोर्ट क्लाइंट और सर्वर के बीच एप्लिकेशन लेयर पर करते हैं, ताकि शेष राशि लोड करना या फ़ायरवॉल नियम बनाना थोड़ा मुश्किल हो। इसके अलावा, एफ़टीपी सर्वर और क्लाइंट सक्रिय या निष्क्रिय मोड में व्यवहार कर सकते हैं, जिसे नीचे वर्णित किया जा सकता है।

एफ़टीपी प्रदान करने वाली कुछ विशेषताएं हैं: 2 टीसीपी पोर्ट्स (20, 21 डिफ़ॉल्ट रूप से) एक का उपयोग नियंत्रण आदेशों के लिए किया जाता है और दूसरा डेटा के लिए उपयोग किया जाता है, ऑथेंटिकेशन मैकेनिज्म सपोर्ट, कोई सिफरिंग सपोर्ट, एएससीआई और बाइनरी ट्रांसफरिंग, व्यापक रूप से उपलब्ध (डायरेक्टरी लिस्टिंग, डायरेक्टरी ब्राउजिंग) फ़ाइलें अपलोड करें, फ़ाइलें डाउनलोड करें, आदि) और निहित टीसीपी लचीलापन।

TFTP or तुच्छ एफ़टीपी एक तेज़ फ़ाइल ट्रांसफ़रिंग और सरल आर्किटेक्चर डिज़ाइन के साथ भिन्नता है जो केवल एक यूडीपी पोर्ट (डिफ़ॉल्ट रूप से 69) का उपयोग करता है, कोई प्रमाणीकरण तंत्र समर्थन या सिफरिंग नहीं करता है, तीन ट्रांसफ़रिंग मोड उपलब्ध हैं (नेटाससी, ऑक्टेट और मेल) और केवल बुनियादी कमांड जैसे अपलोड और डाउनलोड। फ़ाइलें।

एफ़टीपी और टीएफटीपी दोनों सेवाओं को आसानी से संतुलित किया जा सकता है ज़ेवनेट लोड बैलेंसर। इसे प्राप्त करने के लिए जानने के लिए पढ़ते रहें।

एफ़टीपी लोड संतुलन पर्यावरण

इस आलेख में हम जो परिदृश्य प्राप्त करना चाहते हैं, वह नीचे दिए गए चित्र में दिखाया गया है।

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

सक्रिय एफ़टीपी मोड विन्यास

An सक्रिय एफ़टीपी सेटअप को बंदरगाहों का उपयोग करने की आवश्यकता होगी 20 और 21 सर्वर में या पक्ष में। नीचे दी गई तस्वीर दिखाती है कि जब क्लाइंट और FTP सर्वर के बीच डेटा ट्रांसफर करने की आवश्यकता होती है तो कनेक्शन कैसे प्रवाहित होता है।

active_ftp_client_server

ऊपर दिखाए गए क्रम में:
1. क्लाइंट पोर्ट के माध्यम से सर्वर से अनुरोध करता है 21 आदेश।
2. सर्वर क्लाइंट को स्वीकार करता है।
3. RSI सर्वर आरंभ करता है डेटा पोर्ट का उपयोग करके डेटा कनेक्शन 20.
4. क्लाइंट सर्वर को स्वीकार करता है जब वह पूरा हो जाता है।

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

Zevenet Load Balancer के साथ, हम इस तरह के कॉन्फ़िगरेशन को प्राप्त करने के लिए बंदरगाहों के साथ LSLB फ़ार्म प्रोफ़ाइल L4xNAT बना रहे हैं 20,21 और FTP प्रोटोकॉल, जैसा कि नीचे दी गई तस्वीर में दिखाया गया है, और अंत में बैकएंड सेट करें (पोर्ट सेट करने के लिए आवश्यक नहीं)।

zevenet_adc_lb_active_ftp_configuration

ग्राहकों को नए एफ़टीपी फार्म के वीआईपी पते से जुड़ना होगा।

नोट: इस कॉन्फ़िगरेशन को सक्रिय और निष्क्रिय क्लाइंट / सर्वर मोड दोनों के लिए उपयोग करने के लिए सहेजा जाता है।

निष्क्रिय एफ़टीपी मोड विन्यास

A निष्क्रिय एफ़टीपी सेटअप केवल पोर्ट का उपयोग करता है 21 सर्वर में या पक्ष में। नीचे दी गई तस्वीर दिखाती है कि जब क्लाइंट और FTP सर्वर के बीच डेटा ट्रांसफर करने की आवश्यकता होती है तो कनेक्शन कैसे प्रवाहित होता है।

passive_ftp_client_server

ऊपर दिखाए गए क्रम में:
1. क्लाइंट पोर्ट के माध्यम से सर्वर से अनुरोध करता है 21 आदेश।
2. सर्वर क्लाइंट को स्वीकार करता है।
3. RSI ग्राहक पहल करता है सर्वर साइड में एक एप्लिकेशन लेयर सहमत पोर्ट के लिए एक उच्च डेटा पोर्ट का उपयोग करके डेटा कनेक्शन।
4. जब यह काम पूरा हो जाता है तो सर्वर क्लाइंट को स्वीकार करता है।

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

Zevenet लोड बैलेंसर के साथ, हम इस तरह के कॉन्फ़िगरेशन को प्राप्त करने के लिए पोर्ट के साथ एक एलएसएलबी फार्म प्रोफाइल L4xNAT बना रहे हैं 21 और FTP प्रोटोकॉल, जैसा कि नीचे दी गई तस्वीर में दिखाया गया है, और अंत में बैकएंड सेट करें (पोर्ट सेट करने के लिए आवश्यक नहीं)।

zevenet_adc_lb_passive_ftp_configuration

ग्राहकों को नए एफ़टीपी फार्म के वीआईपी पते से जुड़ना होगा।

TFTP कॉन्फ़िगरेशन

तुच्छ एफ़टीपी प्रोटोकॉल का उपयोग मुख्य रूप से के दौरान किया जाता है पीएक्सई (प्रीबूट eXecution एनवायरनमेंट) वातावरण जो डीएचसीपी और टीएफटीपी सेवाओं के संयोजन से बना है, जहां नेटवर्क के माध्यम से दसियों, सैकड़ों या हजारों कंप्यूटरों को तैनात किया जा सकता है।

मुख्य प्रोटोकॉल व्यवहार होगा:
1. क्लाइंट पोर्ट के माध्यम से सर्वर से अनुरोध करता है 69 फ़ाइल और स्थानांतरण मोड सहित एक अनुरोध (आरआरक्यू) या रिक्वेस्ट रिक्वेस्ट (डब्ल्यूआरक्यू) पढ़ें।
2. सर्वर क्लाइंट को स्वीकार करता है और उपयोग किए जाने वाले नए डेटा पोर्ट को सूचित करता है।
3. RSI ग्राहक पहल करता है सर्वर साइड में एक एप्लीकेशन लेयर सहमत पोर्ट पर डेटा कनेक्शन।
4. नवीनतम 512 बाइट्स शेष रहने पर सर्वर क्लाइंट को स्वीकार करता है।

ऐसे वातावरण में जहां TFTP सेवा को स्केल करने की आवश्यकता होती है, Zevenet 5 के साथ कॉन्फ़िगरेशन बहुत आसान है। पोर्ट के साथ एलएसएलबी फार्म प्रोफाइल एल 4 एक्सएनएटी बनाना आवश्यक है 69 और TFTP प्रोटोकॉल, जैसा कि नीचे दी गई तस्वीर में दिखाया गया है, और अंत में बैकएंड सेट करें (पोर्ट सेट करने के लिए आवश्यक नहीं)।

zevenet_adc_lb_tftp_configuration

ग्राहकों को नए टीएफटीपी फार्म के वीआईपी पते से जुड़ना होगा।

सुरक्षित एफ़टीपी

एफ़टीपी प्रोटोकॉल की बढ़ी हुई सुरक्षा को हल करने के लिए, SSH फ़ाइल स्थानांतरण प्रोटोकॉल या बेहतर के रूप में जाना जाता है SFTP एक सुरक्षा परत प्रदान करने के लिए डिज़ाइन किया गया था। उस परिदृश्य में, FTP सर्वर को SFTP के रूप में कॉन्फ़िगर किया जाना चाहिए और उन लोगों का लोड संतुलन उतना आसान होगा जितना कि डिफ़ॉल्ट पोर्ट पर L4xNAT प्रोफाइल फ़ार्म के साथ LSLB बनाना 22 और प्रोटोकॉल टीसीपी जैसा कि नीचे स्क्रीनशॉट में दिखाया गया है। अंत में, बस अपनी SFTP सेवा बैकेंड जोड़ें।

zevenet_adc_lb_secure_ftp_sftp_configuration

ग्राहकों को नए TCP फ़ार्म के VIP पते से कनेक्ट करना होगा, जो SFTP सेवा प्रदान करता है।

उन्नत स्वास्थ्य जांच

एफ़टीपी स्वास्थ्य जाँच

Zevenet उपकरणों में पहले से ही शामिल हैं check_ftp एफ़टीपी सेवाओं के लिए स्वास्थ्य जांच, इसलिए हम एक बैकएंड के साथ स्वास्थ्य जांच का परीक्षण कर सकते हैं:

root@zevenet:/usr/local/zenloadbalancer/app/libexec# ./check_ftp -H ftp.debian.org
FTP OK - 0.262 second response time on ftp.debian.org port 21 [220 ftp.debian.org FTP server]|time=0.262090s;;;0.000000;10.000000 

दूसरे हाथ से, नीचे बैकेंड के साथ हम निम्नलिखित आउटपुट प्राप्त करेंगे:

root@zevenet:/usr/local/zenloadbalancer/app/libexec# ./check_ftp -H ftp.debian.org
CRITICAL - Socket timeout after 10 seconds

इसलिए एफ़टीपी फ़ार्म में कॉन्फ़िगर करने के लिए फ़ार्म गार्जियन कमांड होगी:

check_ftp -H HOST

सेवा टैब में फार्म गार्जियन का विन्यास सुनिश्चित करें जैसा कि नीचे दिखाया गया है। बैकएंड के सही व्यवहार को सुनिश्चित करने के लिए 60 सेकंड का टाइमआउट पर्याप्त होगा।

zevenet_active_passive_ftp_farm_guardian_advanced_health_check_config

टीएफटीपी स्वास्थ्य जांच

अगर check_tftp उन्नत चेक ज़ेवनेट उपकरण में पहले से मौजूद नहीं है, हम अपनी टीएफटीपी सेवाओं के लिए नीचे वर्णित के रूप में एक आसान स्वास्थ्य जांच स्क्रिप्ट बना सकते हैं।

सबसे पहले, उदाहरण के लिए, अपनी TFTP बैकएंड निर्देशिका में एक डमी फ़ाइल बनाएं tftp_zevenet_check.txt, और कुछ सामग्री जोड़ें, उदाहरण के लिए "ओके"।

फिर, अपने Zevenet उपकरण में निम्न कमांड निष्पादित करके tftp क्लाइंट स्थापित करें:

apt-get install tftp

और फिर, उदाहरण के लिए Zevenet स्वास्थ्य जांच डिफ़ॉल्ट निर्देशिका में एक नई स्क्रिप्ट फ़ाइल बनाएं /usr/local/zenloadbalancer/app/libexec/check_mytftp.sh निम्नलिखित स्क्रिप्ट कोड के साथ:

#!/bin/bash
###
### Check TFTP services
### Copyright 2017-now Zevenet SL
###
### $1 : Host to be checked
CRITICAL=1
OK=0
RESULT=$(echo get tftp_zevenet_check.txt | tftp $1 2>&1 | head -n 1)

echo "TFTP health check status for $1 is $RESULT"

if [ "`echo $RESULT | grep Received`" != "" ]; then
        exit $OK
else
        exit $CRITICAL
fi

फिर, कमांड के साथ निष्पादन की अनुमति दें:

root@zevenet:/# chmod 755 /usr/local/zenloadbalancer/app/libexec/check_mytftp.sh

यदि हम स्क्रिप्ट को निष्पादित करने का प्रयास करते हैं तो बैकएंड और अच्छी तरह से कॉन्फ़िगर होने पर हमें एक सफल संदेश मिलेगा:

root@zevenet:/usr/local/zenloadbalancer/app/libexec# ./tftp_check.sh 192.168.101.250
TFTP health check status for 192.168.101.250 is tftp> Received 4 bytes in 0.0 seconds

या बैकएंड के डाउन होने पर कोई त्रुटि:

root@zevenet:/usr/local/zenloadbalancer/app/libexec# ./tftp_check.sh 192.168.101.250
TFTP health check status for 192.168.101.254 is tftp> Transfer timed out.

अंत में, टीएफटीपी खेत में स्वास्थ्य जांच को कॉन्फ़िगर करें, जिसमें HOST टोकन शामिल है।

check_mytftp.sh HOST

सेवा टैब में फार्म गार्जियन का विन्यास सुनिश्चित करें जैसा कि नीचे दिखाया गया है। बैकएंड के सही व्यवहार को सुनिश्चित करने के लिए 60 सेकंड का टाइमआउट पर्याप्त होगा।

zevenet_tftp_farm_guardian_advanced_health_check_config

एसएफटीपी स्वास्थ्य जांच

जैसा कि पहले से ही स्वास्थ्य जांच उपलब्ध है check_ssh, हम इसे सीधे उपयोग कर सकते हैं। तो SFTP खेत में कॉन्फ़िगर करने के लिए फार्म गार्जियन आदेश निम्नानुसार होगा:

check_ssh HOST

फिर, निम्न स्क्रीनशॉट में दिखाए अनुसार कॉन्फ़िगरेशन दिखाया जाएगा।

zevenet_ssh_sftp_farm_guardian_advanced_health_check_config

अपने उच्च उपलब्ध और स्केलेबल फ़ाइल स्थानांतरण का आनंद लें!

पर साझा करें:

GNU फ्री डॉक्यूमेंटेशन लाइसेंस की शर्तों के तहत प्रलेखन।

क्या यह लेख सहायक था?

संबंधित आलेख