WindowsServer でFTP サーバーを設置した時のメモ
Contents
WindowsServer2019 でFTP を設定する手順。
- FTP の機能を追加
- FTP サーバーの設置、設定
- FTP 接続用のユーザーおよびフォルダの作成
- ファイアウォールの設定
FTP 機能を追加
「役割と機能を追加」からWEB サーバーを追加
![](https://zapping.beccou.com/wp-content/uploads/2023/08/image-26.png)
機能はそのまま次へで進む。この画面で次へ。
![](https://zapping.beccou.com/wp-content/uploads/2023/08/image-16.png)
こんな感じで。FTP に関連してそうなものだけをインストール。
80 番ポートにはApache が居るから開けておきたい。
![](https://zapping.beccou.com/wp-content/uploads/2023/08/image-27.png)
追加される機能を確認して、インストール。
![](https://zapping.beccou.com/wp-content/uploads/2023/08/image-28.png)
![](https://zapping.beccou.com/wp-content/uploads/2023/08/image-29.png)
FTP サーバーの追加
設定前の準備
先に、FTP のルートになるフォルダと、接続用のユーザーを用意する。
![](https://zapping.beccou.com/wp-content/uploads/2023/08/image-34.png)
FTP のルートフォルダには、FTPユーザー向けのアクセス件を付与しておく。
![](https://zapping.beccou.com/wp-content/uploads/2023/08/image-36.png)
FTP サーバーの設定
サーバーマネージャーから、
ツール >「インターネットインフォメーションサービス(IIS)マネージャー」を開く。
または、IIS の項目で、サーバー名を右クリック >「IIS マネージャー」をクリックする。
![](https://zapping.beccou.com/wp-content/uploads/2023/08/image-30.png)
サイトを右クリックして、FTP サイト追加
![](https://zapping.beccou.com/wp-content/uploads/2023/08/image-33.png)
サーバー名と、先に用意したフォルダを指定する。
(後から詳細設定で変更できます。)
![](https://zapping.beccou.com/wp-content/uploads/2023/08/image-37.png)
IP はサーバーのIPを指定。
SSL はとりあえず「無し」で。
![](https://zapping.beccou.com/wp-content/uploads/2023/08/image-43.png)
基本認証で、ユーザーも限定する。
![](https://zapping.beccou.com/wp-content/uploads/2023/08/image-40.png)
追加されたことを確認する。
![](https://zapping.beccou.com/wp-content/uploads/2023/08/image-44.png)
![](https://zapping.beccou.com/wp-content/uploads/2023/08/image-41.png)
ログファイルの保存場所の設定
FTPサーバーのメニューから「FTPログ」を選択し ログファイルの場所を指定しておいた。
![](https://zapping.beccou.com/wp-content/uploads/2023/08/image-45.png)
W3C フィールドで、ログに残す内容を設定。
![](https://zapping.beccou.com/wp-content/uploads/2023/08/image-46.png)
最後に右側の操作パネル内にある「適用」をクリックします。
パッシブモードの設定
パッシブ接続への設定。右のパネルで「適用」をクリック。
![](https://zapping.beccou.com/wp-content/uploads/2023/08/image-57-edited.png)
設定後に値を変更したい場合は、サーバー名のレベルにある、ファイアウォールのサポートから編集する。
![](https://zapping.beccou.com/wp-content/uploads/2023/08/image-55.png)
ファイアウォールの設定
既存でFTP の21番ポートを許可する設定があるんだけど、機能していない?
別途ディフェンダーファイアウォールの受信規則を作成したところ、接続できるようになった。
![](https://zapping.beccou.com/wp-content/uploads/2023/08/image-47.png)
パッシブモードの設定で指定したポートの許可も設定しておく。
![](https://zapping.beccou.com/wp-content/uploads/2023/08/image-59.png)
接続テスト
![](https://zapping.beccou.com/wp-content/uploads/2023/08/image-50.png)
![](https://zapping.beccou.com/wp-content/uploads/2023/08/image-51.png)
接続できました。
![](https://zapping.beccou.com/wp-content/uploads/2023/08/image-60-1024x711.png)
今回のはまったこと
外部ファイアウォールの設定をしていたんですが、ユーザーログオンまでできても、ファイル一覧の取得で止まってしまうという現象が発生。
![](https://zapping.beccou.com/wp-content/uploads/2023/08/image-48.png)
接続できない。。。
レスポンスで「227 Entering Passive Mode (10,0,0,1,195,81)」が見えるので、195*256+81 で50001 番が指定されているので設定はうまくいっていると思うんだけど。
![](https://zapping.beccou.com/wp-content/uploads/2023/08/image-53.png)
![](https://zapping.beccou.com/wp-content/uploads/2023/08/image-52.png)
ワイヤーシャークでパケットを見ても、ログインはできていて、LIST のリクエストも送信している。
ファイアウォールを無効にして、powershell から接続したところ、一覧の取得ができた。
おそらく、パッシブモードの設定に問題があると思われ。
![](https://zapping.beccou.com/wp-content/uploads/2023/08/image-54.png)
結局、外部ファイアウォールの設定がいりませんでした。
この設定で接続できるようになりました。
![](https://zapping.beccou.com/wp-content/uploads/2023/08/image-56.png)
参考サイト
[Windows] FTPで「150 Opening ASCII mode data connecton.」以降の結果が返ってこない場合の対処法