بررسی پروتکل TFTP

پروتکل TFTP چیست؟ تفاوت FTP و TFTP در چیست؟ واژه FTP برای افرادی که در حوزه شبکه فعالیت می کنند واژه آشنایی است اما TFTP شاید کمی غریبه باشد. TFTP مخفف کلمات Trivial File Transfer Protocol است و به نوعی می توان از آن به عنوان ساده ترین حالت ممکن از پروتکل FTP نام برد. از این پروتکل معمولا برای انتقال خودکار فایل های Boot و تنظیمات دستگاه هایی از قبیل روتر و سویچ در شبکه های محلی استفاده می شود.اگر بخواهیم TFTP را با FTP مقایسه کنیم بایستی بگوییم TFTP بسیار بسیار نسبت به FTP دارای محدودیت می باشد ، TFTP هیچگونه ساختار احراز هویت ندارد و همچنین به ندرت با کاربر ارتباط برقرار می کند و معمولا این دستگاه ها هستند که به این سرویس متصل و از آن استفاده می کنند.با توجه به طراحی ساده این سرویس شما می توانید TFTP را با کمترین مقدار حافظه در شبکه خود پیاده سازی کنید. یکی از مصارفی که TFTP سرورها برای ما دارند boot کردن دستگاه هایی مانند روترها و سویچ ها می باشد که حافظه مناسبی برای ذخیره سازی اطلاعات ندارند. TFTP یکی از اساسی ترین قسمت های پروتکل PXE یا Preboot Execution Environment بر روی کارت های شبکه می باشد که امکان دریافت آدرس IP و Boot شدن سیستم قبل از رسیدن به سیستم عامل را فراهم می کند. Firmware پروتکل PXE در داخل حافظه ROM یا NVRAM کارت های شبکه امروزی قرار گرفته است.یکی دیگر از کاربردهای TFTP در شبکه این است که شما می توانید براحتی با استفاده از یک ترمینال ساده یا یک Thin Client با سرور TFTP ارتباط برقرار کنید و فایل های کوچک را براحتی بین این دو دستگاه رد و بدل کنید ، برای مثال معمولا برای بروز رسانی Firmware های دستگاه هایی مثل IP Phone ها یا Router ها می توانید Image آنها را درون TFTP سرور قرار بدهید و از طریق آن Firmware دستگاه را بروز کنید.بسیاری از نرم افزارهایی که قبل از Boot شدن سیستم عامل قابلیت استفاده از شبکه را دارند مانند Solaris Jumpstart یا Symantec Ghost و از همه معروف تر سرویس WDS شرکت مایکروسافت برای رسیدن به مرحله نصب سیستم عامل تحت شبکه یا مواردی از این قبیل یک Kernel ساده را از طریق TFTP سرور Load می کنند تا بتوانند فرآیند های خود را ادامه دهند.همچنین TFTP سرور برای نگهداری فایل های تنظیمات روترهای سیسکو نیز مورد استفاده قرار می گیرد.پروتکل TFTP اولین بار در سال 1980 مورد استفاده قرار گرفت و Extension های مختلفی از این پروتکل نیز ارائه شد. TFTP بر اساس یک پروتکل قدیمیتر به نام EFTP بنا گذاشته شد. به دلیل عدم داشتن تهدیدات امنیتی برای این پروتکل به دلیل نداشتن هرگونه سیستم احراز هویت استفاده از این پروتکل بسیار خطرناک است به گونه ای که فقط و فقط پیشنهاد می شود از TFTP در شبکه های داخلی و خصوص استفاده شود و به هیچ عنوان در شبکه های عمومی از TFTP استفاده نشود.TFTP ذاتا برای کامپیوترهایی طراحی شده بود که حافظه و فضای لازم برای راه اندازی سرویس FTP را نداشتند ، امروزه تمامی دستگاه های شبکه ای از قبیل روتر و سویچ و امثال اینها از این پروتکل پشتیبانی می کنند.روش کارکرد پروتکل TFTPبا توجه به اینکه TFTP نسخه ساده شده ای از FTP به حساب می آید بنابراین ساختار کاری تقریبا مشابه FTP دارد . ساختار کاری TFTP نیز به شکل Client Server می باشد و ارتباطی که بین دو دستگاه در شبکه برقرار می شود. از طریق TFTP Client فایل ها می توانند از TFTP سرور دانلود و یا به داخل TFTP سرور آپلود شوند.پروتکلTFTP از UDP برای انتقال داده ها استفاده می کند. TFTP Client ها بصورت خط فرمانی در اکثر سیستم عامل های امروزی از قبیل ویندوز و لینوکس و MAC تعبیه شده اند اما کنسول های گرافیکی TFTP Client نیز امروزه بصورت رایگان در اینترنت قرار دارد که می توانید آنها را دانلود و استفاده کنید.سیستم عامل های مایکروسافت بصورت ذاتی بر روی خود TFTP سرور ندارند اما سیستم عامل های دیگر از قبیل بینوکس و Mac OSX بر روی خود TFTP سروری به نام TFTPD را دارند که البته معمولا بصورت پیشفرض غیرفعال شده است.شما می توانید براحتی با استفاده از ابزارهای رایگان راه اندازی TFTP سرور که در اینترنت برای ویندوز وجود دارد این سرویس را براحتی با در نظر گرفتن موارد امنیتی راه اندازی کنید ، سه نوع از بهترین نرم افزارهای رایگان راه اندازی TFTP سرور روی سیستم عامل ویندوز به شرح زیر هستند :Solarwinds Trivial File Transfer Protocol (TFTP) servertftpd32 Trivial File Transfer Protocol (TFTP) serverOpen Trivial File Transfer Protocol (TFTP) serverتفاوت TFTP و FTP در چیست ؟پروتکل TFTP در یک سری موارد کلیدی با FTP تفاوت دارد ، TFTP در نسخه های اصلی خود فقط اجازه آپلود و دانلود فایل هایی را می داد که ماکزیمم 32 مگابایت حجم داشتند اما در نسخه های جدیدتر آن این محدودیت برداشته شد. این محدودیت حجمی در FTP وجود ندارد. TFTP هیچگونه مکانیزم احراز هویت و Login به سیستم ندارد و به شما هیچ پیام ورود نام کاربری و رمز عبور نمایش داده نمی شود اما FTP حداقل کاری که می کند احراز هویت بصورت Anonymous را انجام می دهد و قابلیت احراز هویت را نیز دارد هر چند احراز هویت FTP اصلا قابل اعتماد نیست اما به هر حال کاچی به از هیچی است.پروتکلTFTP از شماره پورت 69 برای برقراری ارتباطات شبکه ای استفاده می کند و این در حالی است که FTP از شماره پورت های 20 و 21 برای اینکار استفاده می کند. به دلیل استفاده TFTP از UDP معمولا در شبکه های داخلی از این پروتکل استفاده می شود و این در حالی است که شما می توانید از FTP در شبکه های عمومی و اینترنت نیز استفاده کنید.