Windows Server
 Computer >> コンピューター >  >> システム >> Windows Server

Windows Server 2012 R2にTFTPサーバーをインストールする方法

Windows Server 2012 R2に標準機能でTFTPサーバーを構築する

すべてのWindows Serverのバージョンには、TFTPサーバーを動作させる機能が標準で搭載されています。ただし、TFTPサーバー専用のロールやサービスは存在しないため、IISサーバーのFTPセクションを探しても見つかりません。この機能は、Windows Server 2003と同様に、Windows展開サービス(WDS)の一部として提供されており、TFTPサービスはWDSのプロセスであるsvchost.exe内で動作します。

TFTP(Trivial File Transfer Protocol)は、ファイルのアップロード・ダウンロードを手軽に行えるように設計された簡易的なファイル転送プロトコルです。一般的には、PXEブートシステム(ネットワークブートやディスクレスワークステーションなど)、ネットワーク機器の設定ファイルのインポート/エクスポート、その他の特殊なタスクに利用されます。このプロトコルにはセキュリティ、認証、管理の仕組みが一切ありません。その代わり、クライアント側の実装が容易で、大きなファイルを転送する際のパフォーマンスに優れている点が主なメリットです。通信にはUDPポート69を使用します。

注意: Microsoft純正のTFTPサーバーは機能がかなり制限されていますが、PXEブート用途であれば十分に使えます。特に、クライアントはサーバーからデータを読み取ることしかできず、書き込み操作は行えません。

TFTPサービスのインストール手順

Windows Server 2012 R2にTFTPサービスをインストールするには、サーバーマネージャーを起動し、「役割と機能の追加ウィザード」から「Windows展開サービス」の役割を選択します。

Windows Server 2012 R2にTFTPサーバーをインストールする方法

次の画面では、WDS役割のコンポーネントとして「トランスポートサーバー」のみを選択し、「展開サーバー」のチェックを外します。

Windows Server 2012 R2にTFTPサーバーをインストールする方法

役割のインストール完了後、TFTPサーバーのルートディレクトリとなるフォルダを作成します。ここでは例として C:\tftp を使用します。

続いて、レジストリエディターで HKLM\SYSTEM\CurrentControlSet\services\WDSServer\Providers\WDSTFTP キーを開き、RootFolderという名前の新しい文字列値を作成し、先ほど作成したルートディレクトリへのパスを値として設定します。

Windows Server 2012 R2にTFTPサーバーをインストールする方法

ReadFilterパラメーターの値にも注目してください。デフォルトでは、\boot\tmpディレクトリからのみファイルをダウンロードできるようになっています。ルートディレクトリやその他のフォルダからもダウンロードできるようにしたい場合は、ReadFilterの値を \* に変更します。

以下のコマンドでWDSを起動します。

WDSUTIL /Start-TransportServer

ヒント: サービスを自動起動させたい場合は、services.mscまたはコマンドプロンプトを使って、Windows展開サービスのスタートアップの種類を「自動」に変更しておきましょう。

set-service WDSServer -StartupType Automatic

Windowsファイアウォールには、UDPポート69への着信トラフィックを許可するルールが自動的に作成されます(サービスは1023より大きい任意のポートから応答します)。なお、一部のウイルス対策ソフトはポート69をブロックすることがあるため注意が必要です(McAfee Enterpriseなどが該当します)。

これでTFTPサーバーの構成は完了です。

TFTPクライアントによる動作テスト

TFTPサーバーをテストするには、TFTPクライアントが必要です。これはサーバーマネージャーから「TFTPクライアント」機能を選択してインストールできます。

Windows Server 2012 R2にTFTPサーバーをインストールする方法

それでは、構築したTFTPサーバーにローカルで接続し、test.zipファイルをダウンロードしてみましょう。以下のコマンドを使用します。

tftp –i localhost GET tmp\test.zip C:\temp\test.zip

理論上はこれで成功するはずですが、実際にコマンドを実行すると、次のようなエラーが発生しました。

Connect request failed

Windows Server 2012 R2にTFTPサーバーをインストールする方法

さらに、Windows展開サービスを起動・再起動した際に、アプリケーションログにWDSTFTPサービスからのイベントID 259 が記録されていました。

The root folder for the Windows Deployment TFTP server is not configured. Error Information: 0x2

接続エラーの解決方法

TFTPサーバーを正常に動作させるために有効だったのが、役割コンポーネントの「WDS → 展開サーバー」を一度インストールして、すぐに削除するという方法です。インストール後、RootFolderの値をC:\RemoteInstallからc:\tftpに変更します。その後、再度ファイルのダウンロードを試みました。

PS C:\temp> tftp -i localhost get boot\test.zip

今度は無事に成功しました!

Windows Server 2012 R2にTFTPサーバーをインストールする方法

まとめ

この記事では、サードパーティ製ツールを使わずに、Windows Server 2012へTFTPサーバーを簡単に導入する方法を解説しました。ただし、この方式のTFTPサーバーは機能が制限されているため、より複雑な要件がある環境では、tftpd32などの代替となるTFTPサーバー実装の利用を検討することをおすすめします。

  1. Windows Server 2012/2012 R2にMicrosoft Security Essentialsをインストールする方法

    Microsoft Security Essentials(最新のOSバージョンでは「Windows Defender」と呼ばれています)は、潜在的に悪意のあるソフトウェアやウイルスを検出・阻止できる無料のフル機能マルウェア対策ソリューションです。Windows 8、8.1、Windows 10、そしてWindows Server 2016には標準で搭載されています。 しかし、Windows Server 2012および2012 R2では、Windows DefenderはServer Coreインストール(GUIなし環境)でのみ利用可能という制限があります。幸い、この制限を回避する方法があり

  2. Windows ServerにVMware vCenter Server 6.7をインストールする完全ガイド

    本記事では、Windows環境にVMware vCenter Server 6.7をインストールする手順を、ステップバイステップで詳しく解説します。インストール作業を始める前に、必要なシステム要件やデプロイオプション、そして導入を成功させるために押さえておくべきポイントを理解しておくことが重要です。 vSphereインフラにおける中核コンポーネント VMware vSphereインフラストラクチャの中核を担うのは、「VMware vSphere ESXi」と「VMware vSphere vCenter Server」の2つのコンポーネントです。ESXiは仮想化レイヤーを提供し、物理サーバ