#■はじめに
ファイル転送用に、Windows Server 2016 にFTPサーバをインストールします。
併せて、FTPクライアントからCUIにて転送(FTP-Get)の確認を行います。
なお、あくまでクローズド環境用の簡易手法のため、
Web公開等のセキュリティは一切考慮していない点をご了承ください。
#■手順
・FTPサーバ側の設定
手順① IIS/FTPサーバのインストール
手順② FTPユーザの追加
手順③ FTPルートディレクトリの作成
手順④ FTPサービスの設定
手順⑤ Windowsファイアウォールの受信設定
・FTPクライアント側の設定および転送確認
手順①' FTPクライアント側のWindowsファイアウォールの受信設定
手順②' FTPクライアント側のディレクトリ作成
手順③' FTPサーバ側のファイル配置
手順④' FTPクライアント側のからFTP-Get
#■手順① IIS/FTPサーバのインストール
役割と機能から、IIS/FTPサーバのインストールを行います。
①-1 「サーバマネージャー」の「管理」から、「役割と機能の追加」を選択します。
①-3 「役割ベースまたは機能ベースのインストール」を選択し、「次へ」を押下します。
①-4 「サーバープールからサーバーを選択」を選択し、「次へ」を押下します。
①-6 「管理ツールを含める」を選択し、「機能の追加」を押下します。
①-7 「機能」の画面については、何も選択せずに「次へ」を押下します。
①-11 10分ほど待つと、インストールが完了します。
併せて、IISがインストールされ、localhostが表示されるようになります。
#手順② FTPユーザの追加
②-6 ユーザ名、パスワード、パスワードの確認入力、パスワードのヒントの全てを入力し、「次へ」を押下します。
#■手順③ FTPルートディレクトリの作成
どこでも良いのですが、今回はCドライブ直下に作ります。
③-1 C:\直下に「ftproot」ディレクトリを作成します。
③-2 「ftproot」ディレクトリのプロパティを開きます。
③-5 ftpにて利用するユーザを「選択するオブジェクト名を入力してください」欄に入力し、「名前の確認」を押下したのち、「OK」を押下します。
③-7 「アクセス許可」の「フルコントロール」を選択し、「OK」を押下します。
#■手順④ FTPサービスの設定
④-1 「サーバーマネージャー」の「ツール」より、「インターネットインフォメーションサービス(IIS)マネージャー」を選択します。
④-2 左ペインのホスト名を右クリックし、「FTPサイトの追加」を選択します。
④-3 FTPサイト名(任意)、および物理パス(FTPルートディレクトリ)を入力し、「次へ」を押下します。
④-4 IPアドレスを「すべて未割り当て」(デフォルト)、ポートを「21」(デフォルト)、SSLを「無し」(デフォルト:必要)に選択し、「次へ」を押下します。
**Web公開する場合、SSL認証の設定を行ってください。**本記事では割愛します。
④-5 認証を「基本」、承認を「指定されたユーザー」、「(FTPユーザ名)」、アクセス許可は「読み取り」および「書き込み」を両方チェックし、「終了」を押下します。
④-6 これで、自ホストからFTP接続は出来るようになります。
#手順⑤ Windowsファイアウォールの受信設定
FTPで利用するTCP22の受信許可設定をします。
⑤-1 コントロールパネルを起動します。
⑤-5 左ペインの「受信の規則」を選択し、右ペインの「新しい規則...」を押下します。
⑤-7 「TCP」を選択し、「特定のローカルポート」-「21」を設定し、「次へ」を押下します。
⑤-9 「ドメイン」、「プライベート」、「パブリック」を選択し、「次へ」を押下します。
#■FTPサーバの動作確認
以下は、FTPクライアントからファイルダウンロード(FTP-Get)を行い、動作確認を実施する手順となります。なお、クライアントもWindows Server 2016を利用し、FTPクライアントは標準のCUI(コマンドプロンプト)を利用します。
#■手順①' FTPクライアント側のWindowsファイアウォールの受信設定
FTPのアクティブモードの場合、FTPサーバ→クライアントへは20ポートを利用してデータ転送を行うため、クライアント側にて対向サーバが20番を利用している場合の受信許可設定を行います。
(FTPサーバ[TCP20] -> (転送データ) -> FTPクライアント[TCP1024-65535のどれか])
①'-1 コントロールパネルを起動します。
①'-2 「システムとセキュリティ」を押下します。
①'-3 「Windowsファイアウォール」を押下します。
①'-4 左ペインの「詳細設定」を押下します。
①'-5 左ペインの「受信の規則」を選択し、右ペインの「新しい規則...」を押下します。
※ここまでは手順⑤と同じ。
①'-7 「すべてのプログラム」を選択し、「次へ」を押下します。
①'-8 プロトコルの種類は「TCP」、ローカルポートは「すべてのポート」、リモートポートは「特定のポート」-「20」を選択し、「次へ」を押下します。
①'-9 ローカルアドレスおよびリモートアドレスは、「任意のIPアドレス」を選択し、「次へ」を押下します。
①'-10 「接続を許可する」を選択し、「次へ」を押下します。
①'-11 「ドメイン」、「プライベート」、「パブリック」を選択し、「次へ」を押下します。
#■手順②' FTPクライアント側のディレクトリ作成
今回はCドライブ直下に「ftpclient」ディレクトリを作成しました。
#■手順③' FTPサーバ側のファイル配置
FTPルートディレクトリに、適当なファイルを置きます。
#■手順④' FTPクライアント側のからFTP-Get
④'-1 FTPクライアントからFTPサーバへ接続
④'-5 FTPクライアントのディレクトリにファイルが転送されたことを確認
#■出典/参考
Windows Server 2016でFTPサイトの構築手順
http://g-network.boo.jp/wiki/2018/09/post-1545/
Windows Server 2016 のFTPサーバを利用する場合のファイアーウォール設定
https://www.ipentec.com/document/windows-server-2016-setup-ftp-firewall
【FTPの基本】 「アクティブモード」と「パッシブモード」の違いとは?
https://go-journey.club/archives/545
MS-DOS(コマンド)プロンプト用 FTPの使い方 - コマンド解説
http://www.urban.ne.jp/tech/dosftp/reference.html