सभी Windows Server वर्जन बिल्ट-इन TFTP सर्वर चलाने की क्षमता का समर्थन करते हैं। हालांकि TFTP सर्वर का कोई समर्पित रोल या सर्विस नहीं है (इसे अपने IIS सर्वर के FTP सेक्शन में न खोजें), यह फीचर, Windows Server 2003 की तरह, Windows Deployment Services (WDS) का एक हिस्सा है। TFTP सर्विस WDS प्रोसेस svchost.exe के अंदर काम करती है।
TFTP (Trivial File Transfer Protocol) एक सरलीकृत फाइल ट्रांसफर प्रोटोकॉल है जो फाइलों को डाउनलोड और अपलोड करने का एक आसान तरीका प्रदान करता है। एक नियम के रूप में, TFTP का उपयोग PXE बूट सिस्टम (नेटवर्क बूट, डिस्कलेस वर्कस्टेशन, आदि), नेटवर्क उपकरण कॉन्फिगरेशन इम्पोर्ट/एक्सपोर्ट और कुछ अन्य विशिष्ट कार्यों में किया जाता है। इस प्रोटोकॉल में सुरक्षा, ऑथेंटिकेशन या प्रबंधन का कोई साधन नहीं है। इसका मुख्य लाभ आसान क्लाइंट-साइड कार्यान्वयन और बड़ी फाइलें ट्रांसफर करते समय उच्च प्रदर्शन है। प्रोटोकॉल UDP पोर्ट 69 का उपयोग करता है।
नोट: Microsoft TFTP सर्वर की विशेषताएं काफी सीमित हैं, लेकिन PXE बूटिंग के लिए पर्याप्त हैं। विशेष रूप से, क्लाइंट ऐसे TFTP सर्वर से केवल डेटा पढ़ सकते हैं, लेकिन लिखना उपलब्ध नहीं है।
Windows Server 2012 R2 पर TFTP सर्विस इंस्टॉल करने के लिए, Server Manager शुरू करें और Add Roles and Features Wizard का उपयोग करके Windows Deployment Services रोल चुनें।
अगले चरण में, WDS रोल कंपोनेंट्स में केवल Transport Server चुनें और Deployment Server को अनचेक करें।
रोल इंस्टॉल होने के बाद, एक डायरेक्टरी बनाएं जो TFTP सर्वर की रूट डायरेक्टरी होगी, उदाहरण के लिए, C:\tftp।
फिर Registry Editor में HKLM\SYSTEM\CurrentControlSet\services\WDSServer\Providers\WDSTFTP में RootFolder नाम का एक नया स्ट्रिंग पैरामीटर बनाएं और इसमें पहले बनाई गई रूट डायरेक्टरी का पथ मान दें।
ReadFilter पैरामीटर के मान पर ध्यान दें। डिफ़ॉल्ट रूप से, यह केवल \boot और \tmp डायरेक्टरी से फाइलें डाउनलोड करने की अनुमति देता है। यदि आपको रूट या अन्य फोल्डर से फाइलें डाउनलोड करने का अवसर चाहिए, तो ReadFilter मान को \* पर बदलें।
निम्न कमांड से WDS शुरू करें:
WDSUTIL /Start-TransportServer
टिप: सर्विस को ऑटोमैटिकली शुरू करने के लिए, services.msc या कमांड प्रॉम्प्ट का उपयोग करके Windows Deployment Services का स्टार्टअप टाइप Auto पर बदलें:
set-service WDSServer -StartupType Automatic
Windows Firewall में एक नियम दिखाई देगा, जो UDP पोर्ट 69 पर इनकमिंग ट्रैफिक की अनुमति देता है (सर्विस 1023 से अधिक किसी भी पोर्ट से प्रतिक्रिया देती है)। कुछ एंटीवायरस पोर्ट 69 को ब्लॉक कर सकते हैं (McAffee Enterprise ऐसा करता है)।
तो आपने अपना TFTP सर्वर कॉन्फिगर कर लिया है।
TFTP सर्वर टेस्ट करने के लिए, आपको TFTP क्लाइंट की आवश्यकता होगी। इसे Server Manager का उपयोग करके इंस्टॉल किया जा सकता है, जिसमें आप TFTP Client चुनते हैं।
आइए स्थानीय रूप से डेप्लॉय किए गए TFTP सर्वर से कनेक्ट करने और test.zip फाइल डाउनलोड करने का प्रयास करें।
आप इस कमांड का उपयोग करके फाइल डाउनलोड कर सकते हैं:
tftp –i localhost GET tmp\test.zip C:\temp\test.zip
सैद्धांतिक रूप से, यह काम करना चाहिए, लेकिन व्यवहार में मुझे अंतिम कमांड चलाने के बाद निम्न एरर मिली:
Connect request failed
Windows Deployment Services Server शुरू या रीस्टार्ट करते समय, WDSTFTP सर्विस से निम्न इवेंट और EventID 259 एप्लिकेशन लॉग में दिखाई दिया:
The root folder for the Windows Deployment TFTP server is not configured. Error Information: 0x2
TFTP सर्वर को काम करने के लिए, मुझे रोल के कंपोनेंट WDS -> Deployment Service को इंस्टॉल करना पड़ा और इसे तुरंत डिलीट करना पड़ा। इसके इंस्टॉल होने के बाद, मैंने RootFolder मान को C:\RemoteInstall से c:\tftp पर बदल दिया। फिर मैंने फाइल फिर से डाउनलोड करने का प्रयास किया।
PS C:\temp> tftp -i localhost get boot\test.zip
सफलता!
हमने विचार किया कि बिना थर्ड-पार्टी टूल्स के Windows Server 2012 में TFTP सर्वर को आसानी से कैसे डेप्लॉय करें। इस तरह के सर्वर की विशेषताएं सीमित होंगी, इसलिए अधिक जटिल इंस्टॉलेशन में वैकल्पिक TFTP सर्वर कार्यान्वयन बेहतर हैं, उदाहरण के लिए, tftpd32।