כאשר אתם בתהליך הגדרת יכולות העברת קבצים מרחוק לעובדים שלכם, אתם רוצים שהדברים יהיו פשוטים ומאובטחים ככל האפשר. עם זאת בחשבון, מה עדיף, FTPS או SFTP? בפוסט שאלות ותשובות של SuperUser היום יש את התשובות לשאלת קורא סקרנית.
מושב השאלות והתשובות של היום מגיע אלינו באדיבות SuperUser - חלוקה של Stack Exchange, קיבוץ מונחה קהילה של אתרי שאלות ותשובות.
צילום מסך באדיבות קוג'י האצ'יסו (Fickr) .
השאלה
משתמש הקורא SuperUser334875 רוצה לדעת מה ההבדל בין FTPS ו- SFTP, ואיזו טובה יותר:
אני מנסה להקים מערכת לארבעה מעובדי שעובדים מרחוק כדי שיוכלו להעביר קבצים. אני גם צריך את זה כדי להיות מאובטח. האם SFTP טוב יותר מ- FTPS? מה ההבדל בין השניים?
מה ההבדל בין השניים ואיזו טובה יותר?
התשובה
לתורמים של SuperUser NuTTyX ו- Vdub יש את התשובה עבורנו. ראשית, NuTTyX:
הם שני פרוטוקולים שונים לחלוטין.
FTPS הוא FTP עם SSL לאבטחה. הוא משתמש בערוץ בקרה ופותח חיבורים חדשים להעברת הנתונים. מכיוון שהיא משתמשת ב- SSL, נדרש אישור.
SFTP (פרוטוקול העברת קבצים SSH / פרוטוקול העברת קבצים מאובטח) תוכנן כהרחבה של SSH כדי לספק יכולת העברת קבצים, ולכן הוא משתמש בדרך כלל רק ביציאת SSH לנתונים ולבקרה.
ברוב ההתקנות של שרת SSH תהיה לך תמיכה ב- SFTP, אך FTPS יזדקק לתצורה נוספת של שרת FTP נתמך.
ואחריו התשובה מ- Vdub:
FTPS (FTP / SSL) הוא שם המשמש לספק מספר דרכים שתוכנות FTP יכולות לבצע העברות קבצים מאובטחות. כל דרך כוללת שימוש בשכבת SSL / TLS מתחת לפרוטוקול FTP הרגיל להצפנת ערוצי הבקרה ו / או הנתונים.
יתרונות:
- ידוע ומשומש באופן נרחב
- ניתן לקרוא ולהבין את התקשורת על ידי אדם
- מספק שירותים להעברת קבצים בין שרת לשרת
- ל- SSL / TLS יש מנגנוני אימות טובים (תכונות אישור X.509)
- תמיכה ב- FTP ו- SSL / TLS מובנית במסגרות תקשורת אינטרנט רבות
חסרונות:
- אין לו פורמט אחיד של רשימת ספריות
- דורש ערוץ DATA משני, מה שמקשה על השימוש מאחורי חומות אש
- לא מגדיר תקן לקבוצות תווים (קידודים) של שם קובץ.
- לא כל שרתי ה- FTP תומכים ב- SSL / TLS
- אין דרך סטנדרטית להשיג ולשנות תכונות קבצים או ספריות
SFTP (SSH File Transfer Protocol) הוא פרוטוקול רשת המספק פונקציונליות העברת קבצים ומניפולציות על כל זרם נתונים אמין. זה משמש בדרך כלל עם פרוטוקול SSH-2 (יציאת TCP 22) כדי לספק העברת קבצים מאובטחת, אך נועד לשמש גם עם פרוטוקולים אחרים.
יתרונות:
- בעל רקע סטנדרטי טוב המגדיר בקפדנות את רוב (אם לא כל) היבטי הפעולה
- יש חיבור אחד בלבד (אין צורך בחיבור DATA)
- הקשר מאובטח תמיד
- רישום הספריות אחיד וקריא במכונה
- הפרוטוקול כולל פעולות לאישור מניפולציה של תכונות, נעילת קבצים ופונקציונליות נוספת
חסרונות:
- התקשורת בינארית ולא ניתן לרשום אותה "כפי שהיא" לקריאת בני אדם
- קשה יותר לנהל ולאמת את מפתחות ה- SSH
- הסטנדרטים מגדירים דברים מסוימים כאופציונליים או מומלצים, מה שמוביל לבעיות תאימות מסוימות בין כותרות תוכנה שונות מספקים שונים.
- אין פעולות של העתקת שרת לשרת ופעולות הסרת ספרייה רקורסיבית
- אין תמיכה מובנית ב- SSH / SFTP במסגרות VCL ו- .NET
יש לך מה להוסיף להסבר? נשמע בתגובות. רוצה לקרוא תשובות נוספות ממשתמשי Stack Exchange אחרים המתמצאים בטכנולוגיה? עיין כאן בשרשור הדיון המלא .