תוכן
סקירה כללית
fTP or פרוטוקול העברת קבצים הוא פרוטוקול שכבת יישומים שנמצא בשימוש נרחב להעברת קבצים בתכנון ארכיטקטורת שרת לקוח המסתמך על שכבות רשת TCP / IP. FTP הוא פרוטוקול מורכב וברור (ללא מודעות לאבטחה), על יציאות המשמשות משא ומתן בשכבת היישום בין הלקוח לשרת, כך שקצת קשה לטעון איזון או ליצור כללי חומת אש. בנוסף, שרת FTP ולקוח יכולים להתנהג במצבים פעילים או פסיביים, שניתן לתאר להלן.
כמה תכונות המספקות FTP הן: 2 יציאות TCP (20, 21 כברירת מחדל) משמשות עבור פקודות בקרה ועוד עבור נתונים, תמיכה במנגנון אימות, ללא תמיכה בהצפנה, העברת ASCII ובינארי, פקודות רחבות זמינות (רשימת ספריות, להעלות קבצים, להוריד קבצים, וכו ') ואת הטמון החוסן TCP.
TFTP or טריוויאלי FTP היא גרסה עם העברת קבצים מהירה יותר ועיצוב ארכיטקטורה פשוט יותר המשתמשת ביציאת UDP אחת בלבד (69 כברירת מחדל), ללא מנגנון אימות תמיכה או הצפנה, שלושה מצבי העברה זמינים (netascii, octet ודואר) ורק פקודות בסיסיות כגון טעינה והורדה קבצים.
שניהם FTP ו- TFTP שירותי יכול להיות מאוזן מאוזנת בקלות עם זאובנט. תמשיכו לקרוא כדי לדעת איך להשיג את זה.
סביבת איזון עומס ה- FTP
התרחיש שאנו רוצים להשיג במאמר זה מוצג בתרשים שלהלן.
או שיש מקביליות גבוהה של משתמשים וזה נדרש להגדלת השירות או שמדובר בשירות קריטי שצריך להיות זמין גבוה, יהיה צורך באיזון עומסים בשירות FTP.
תצורת מצב FTP פעילה
An FTP פעיל ההתקנה תחייב להשתמש ביציאות 20 ו 21 בצד השרתים או בצד האחורי. התמונה הבאה מראה כיצד החיבור זורם כאשר נתונים נדרשים להעברה בין לקוח לשרת FTP.
ברצף המוצג לעיל:
1. הלקוח מבקש לשרת דרך היציאה 21 הפקודה.
2. השרת מאשר ללקוח.
3. אל האני שרת יוזם חיבור הנתונים באמצעות יציאת הנתונים 20.
4. הלקוח מאשר לשרת כשתסיים.
בשלב זה עלינו להגדיר איזון עומסים בין הלקוח לשרת, ואז לדאוג לתזרימי התעבורה, אתחול החיבורים והסכמי הנמלים בין הלקוח לשרת.
עם Zevenet Load Balancer, עלינו להשיג תצורה מסוג זה ליצירת פרופיל חווה LSLB L4xNAT עם יציאות 20,21 ו fTP פרוטוקול, כפי שהוא מוצג בתמונה למטה, ולבסוף מגדירים את הגבולות (לא נדרש להגדרת היציאות).
על הלקוחות להתחבר לכתובת ה- VIP של חוות ה- FTP החדשה.
הערה: תצורה זו נשמרת לשימוש הן במצבי לקוח / שרת פעילים ופסיביים.
תצורת מצב FTP פסיבית
A FTP פסיבי ההתקנה משתמשת רק ביציאה 21 בצד השרתים או בצד האחורי. התמונה הבאה מראה כיצד החיבור זורם כאשר נתונים נדרשים להעברה בין לקוח לשרת FTP.
ברצף המוצג לעיל:
1. הלקוח מבקש לשרת דרך היציאה 21 הפקודה.
2. השרת מאשר ללקוח.
3. אל האני הלקוח יוזם את חיבור הנתונים באמצעות יציאת נתונים גבוהה ליישום שכבת יישום הסכים בצד השרת.
4. השרת מאשר ללקוח לאחר סיום.
בשלב זה עלינו להגדיר איזון עומסים בין הלקוח לשרת, ואז לדאוג לתזרימי התעבורה, אתחול החיבורים והסכמי הנמלים בין הלקוח לשרת.
עם Zevenet Load Balancer, עלינו להשיג תצורה מסוג זה ליצירת פרופיל חווה LSLB L4xNAT עם היציאה 21 ו fTP פרוטוקול, כפי שהוא מוצג בתמונה למטה, ולבסוף מגדירים את הגבולות (לא נדרש להגדרת היציאות).
על הלקוחות להתחבר לכתובת ה- VIP של חוות ה- FTP החדשה.
תצורת TFTP
טריוויאלי FTP פרוטוקולים משמשים בעיקר במהלך PXE (Preboot eXecution Environment) בסביבות המורכבות משילוב של שירותי DHCP ו- TFTP, שבהם ניתן לפרוס עשרות, מאות ואף אלפי מחשבים באמצעות הרשת.
ההתנהגות פרוטוקול הראשי יהיה:
1. הלקוח מבקש לשרת דרך היציאה 69 בקשת קריאה (RRQ) או בקשת בקשה (WRQ) כולל את הקובץ ואת מצב ההעברה.
2. השרת מאשר ללקוח ומודיע ליציאת הנתונים החדשה שיש להשתמש בה.
3. אל האני הלקוח יוזם את חיבור הנתונים ליישום שכבת יציאת הסכים בצד השרת.
4. השרת מאשר ללקוח כאשר נותרו בו עדכוני ה- 512 האחרונים.
בסביבה בה שירות TFTP צריך להתמקד, התצורה עם Zevenet 5 היא קלה מאוד. נדרש ליצור פרופיל חווה LSLB L4xNAT עם הנמל 69 ו TFTP פרוטוקול, כפי שהוא מוצג בתמונה למטה, ולבסוף מגדירים את הגבולות (לא נדרש להגדרת היציאות).
על הלקוחות להתחבר לכתובת ה- VIP של חוות TFTP החדשה.
Secure FTP
כדי לפתור את האבטחה המשופרת של פרוטוקול FTP, פרוטוקול העברת קבצים SSH או הידועה יותר SFTP נועד לספק שכבת אבטחה. בתרחיש זה, שרתי ה- FTP צריך להיות מוגדר כמו SFTP ואת איזון העומס של אלה יהיה קל כמו יצירת LSLB עם חוות פרופיל L4xNAT מעל יציאת ברירת המחדל 22 ופרוטוקול TCP כפי שמוצג בצילום המסך למטה. לבסוף, פשוט הוסף את שירותי ה- SFTP שלך.
על הלקוחות להתחבר לכתובת ה- VIP של חוות ה- TCP החדשה, המשרתת שירות SFTP.
בדיקות בריאות מתקדמות
בדיקת בריאות ה- FTP
מכשירי Zevenet כבר כוללים את check_ftp בדיקה רפואית עבור שירותי ה- FTP, כך שנוכל לבדוק את בדיקת הבריאות עם backend למעלה:
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
מצד שני, עם backend למטה נקבל את התפוקה הבאה:
root@zevenet:/usr/local/zenloadbalancer/app/libexec# ./check_ftp -H ftp.debian.org CRITICAL - Socket timeout after 10 seconds
אז פקודת שומר החווה כדי להגדיר בחוות ה- FTP יהיה:
check_ftp -H HOST
בכרטיסייה שירותים, ודא את תצורת Farm Guardian כפי שמוצג להלן. פסק זמן של 60 שניות יהיה מספיק כדי להבטיח את ההתנהגות הנכונה של backend.
בדיקת בריאות TFTP
אם check_tftp בדיקה מתקדמת עדיין לא קיימת במכשיר Zevenet, אנו יכולים ליצור סקריפט קל לבדיקת בריאות כפי שמתואר להלן עבור שירותי TFTP שלנו.
ראשית, ליצור קובץ דמה בספריית TFTP backends שלך, לדוגמה tftp_zevenet_check.txt, והוסף תוכן, למשל "אישור".
לאחר מכן, במכשיר ה- Zevenet, התקן את לקוח ה- tftp באמצעות ביצוע הפקודה הבאה:
apt-get install tftp
ואז, ליצור קובץ Script חדש בספריית ברירת המחדל של Zevenet Health Check, לדוגמה /usr/local/zenloadbalancer/app/libexec/check_mytftp.sh עם קוד ה- Script הבא:
#!/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
אם ננסה לבצע את התסריט נקבל הודעה מוצלחת כאשר ה- backend מוגדר ומוגדר היטב:
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
או שגיאה כאשר backend הוא למטה:
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.
לבסוף, הגדר את בדיקת הבריאות בחוות TFTP, כולל בפקודה אסימון HOST.
check_mytftp.sh HOST
בכרטיסייה שירותים, ודא את תצורת Farm Guardian כפי שמוצג להלן. פסק זמן של 60 שניות יהיה מספיק כדי להבטיח את ההתנהגות הנכונה של backend.
בדיקת בריאות SFTP
כפי שכבר קיים לבדוק את הבריאות check_ssh, אנו יכולים להשתמש בו ישירות. אז פקודת שומר החווה כדי להגדיר בחוות SFTP יהיה כדלקמן:
check_ssh HOST
לאחר מכן, התצורה תוצג כפי שהיא מוצגת בצילום המסך הבא.
ליהנות העברת קבצים גבוהה שלך מדרגי!