לדלג לתוכן

מה זה FTP וכך העברת קבצים ברשת עבדה

לפני שהיה לנו Google Drive, קישור לוואטסאפ, או פשוט לגרור קובץ לענן, הייתה צריכה להיות דרך להעביר קבצים בין שני מחשבים שיושבים במקומות שונים ברשת. הפתרון הוותיק לזה נקרא FTP, ראשי תיבות של File Transfer Protocol, והוא עדיין קיים היום, למרות שרוב האנשים כבר לא נתקלים בו ישירות.

מה FTP בעצם עושה

FTP הוא פרוטוקול שתפקידו היחיד הוא להעביר קבצים בין לקוח לשרת. יש שרת FTP שמחזיק תיקיות וקבצים, ויש תוכנת לקוח שמתחברת אליו ומאפשרת להעלות, להוריד, למחוק ולארגן קבצים מרחוק, בדיוק כאילו הם נמצאים על הדיסק המקומי שלכם. זה נשמע פשוט, וזה באמת פשוט - וזו בדיוק הסיבה שהוא היה כל כך נפוץ במשך עשורים, עוד לפני שהאינטרנט כפי שאנחנו מכירים אותו בכלל התקיים.

שני חיבורים, לא אחד

אחד הדברים המעניינים ב-FTP, ומה שמבדיל אותו מרוב הפרוטוקולים שאתם מכירים כמו HTTP, הוא שהוא משתמש בשני חיבורים נפרדים במקביל. חיבור אחד נקרא ערוץ הבקרה, וזה זה שמעביר פקודות כמו "תראה לי מה יש בתיקייה" או "אני רוצה להוריד את הקובץ הזה". חיבור שני, נפרד לגמרי, נקרא ערוץ הנתונים, וזה החיבור שדרכו עובר תוכן הקובץ עצמו.

ההפרדה הזו הייתה הגיונית בזמנו, אבל היא גם הסיבה ש-FTP ידוע כמעצבן במיוחד לעבודה מאחורי חומות אש ו-NAT, כי המערכת צריכה לפתוח עוד חיבור באמצע השיחה, וזה בדיוק סוג הדבר שחומות אש נועדו לחסום.

הבעיה הגדולה - FTP לא מוצפן

הבעיה האמיתית של FTP, זו שהופכת אותו לבלתי מומלץ היום, היא שהוא נשלח כברירת מחדל כטקסט גלוי לגמרי. שם המשתמש, הסיסמה, וכל הקובץ שאתם מעבירים עוברים ברשת בלי שום הצפנה. מי שיושב באמצע, על אותה רשת WiFi למשל, יכול לקרוא את כל זה בקלות יחסית.

זו בדיוק אותה בעיה ש-Telnet סבל ממנה, ושגרמה ל-SSH להחליף אותו. וכמו ש-SSH פתר את הבעיה של Telnet, יש היום שני פתרונות מקבילים ל-FTP.

הפתרונות - SFTP ו-FTPS

SFTP, ראשי תיבות של SSH File Transfer Protocol, הוא בעצם לא FTP בכלל, למרות השם הדומה. זו יכולת שרצה מעל פרוטוקול SSH, ומשתמשת באותה הצפנה ואותו מנגנון אימות במפתחות. זו הדרך המומלצת היום להעביר קבצים בצורה בטוחה לשרת מרוחק, וכל שרת שכבר תומך ב-SSH תומך בה כמעט אוטומטית.

FTPS, ראשי תיבות של FTP over SSL/TLS, הוא גישה אחרת, שלוקחת את FTP המקורי ועוטפת אותו בשכבת הצפנה, אותה הצפנה שמגינה על HTTPS. זה פחות נפוץ מ-SFTP היום, אבל עדיין קיים בסביבות ארגוניות מסוימות.

אז איפה בכלל נתקלים ב-FTP היום

בפועל, מפתחי אתרים ותיקים עדיין עשויים להעלות קבצים לאחסון אתרים ישן דרך FTP או FTPS, וכלים כמו FileZilla עדיין תומכים בכל הגרסאות. אבל אם אתם בונים משהו חדש היום, וצריך להעביר קבצים לשרת מרוחק, כמעט תמיד תבחרו ב-SFTP. הוא בטוח יותר, פשוט יותר להגדיר מבחינת חומת אש, ובדרך כלל כבר זמין כי השרת שלכם כבר תומך ב-SSH ממילא.

לסיכום

FTP הוא דוגמה טובה לאיך פרוטוקולים ותיקים מהעידן שלפני שהאבטחה הייתה בראש סדר העדיפויות עדיין משפיעים על העולם הדיגיטלי היום. הרעיון הבסיסי שלו, להעביר קבצים בין מחשב ללקוח, עדיין רלוונטי לגמרי, אבל הדרך שבה עושים את זה בבטחה השתנתה. אם אתם זוכרים רק דבר אחד מהמאמר הזה, שיהיה זה - FTP רגיל לא מוצפן, אז אם אתם צריכים להעביר קבצים לשרת, תחפשו SFTP.

רוצים להבין לעומק איך פרוטוקולים אחרים ברשת עובדים, ואיך כל זה מתחבר יחד לתמונה שלמה? יש לנו קורס רשתות שלם בחינם שבונה את התמונה, מהיסודות ועד הפרוטוקולים המתקדמים.

יש לכם שאלה על FTP, SFTP, או כל דבר אחר שקשור לרשתות? בואו לשאול בדיסקורד.

הצטרפו לקהילה בדיסקורד