ホームディレクトリを任意の場所に作りたいとの相談を受けてちょっと触ってみた。
IISのFTPは昔ちょっと触ったことがあるだけで殆どわからない。
でも、ホームディレクトリ位どこにでも設定できるでしょ。っと思い引き受けたのだが意外とちょこちょこ躓く。
IISにFTPを追加インストールして、その設定を見渡したのだがそもそもFTPってどこにあるの?
なんとなーく昔はIISマネージャからたどれたような記憶があるのだが。(気のせいか?)
調べてみると、IISマネージャからサイトを右クリックしてコンテキストメニューから「FTPサイトの追加」が出来ることが判った。
適当に進んでいって、「認証および承認の情報」で「基本認証」を選び「アクセスの許可」に適当なローカルユーザーを指定した。
次にIISマネージャから「FTP認証」を開いて「基本認証」を有効に設定。
同じく、「FTP承認規則」を開いて先ほど指定したローカルユーザーに対してアクセス許可を設定。
あとはホームディレクトリの設定だが、確かに調べてみるとローカルユーザーでアクセスする場合には、「FTPルート\LocalUser\ユーザー名」がホームディレクトリになるようだ。
しかし、こいつは仮想ディレクトリーでも良いようなので「ユーザー名」の仮想ディレクトリーを作ってやれば目的は達成できそうだ。
(ACLの追加とかもしておく)
また、IISのFTPにはユーザー分離という機能が有ってFTPユーザーがアクセスできる場所が限定できる。
そこで、以下のように分離してみた。
おそらく今回の目的を実現するだけであればユーザー分離せずに「ユーザー名ディレクトリ」を選んでも良さそうに思うが。
これでサーバー側の設定を終えて、クライアントからテストしてみる。
が、うんともすんとも言わない。
ファイアウォールで引っかかっているのかな。
しかし、なんのメッセージも返ってこない。(セキュリティ強化の一環なのだろうか・・・)
とりあえずサーバー自身で試してみたらOKだったので、やはり自分で穴を空ける必要があるようだ。
調べてみるととりあえず以下のコマンドを叩けば良さそう。
netsh advfirewall firewall add rule name="FTP (non-SSL)" action=allow protocol=TCP dir=in localport=21
枯れた技術のFTPなはずだが、久しぶりに触ってみるとなんか知らないこともちらほら。
ちょっと調べてみたくなったがとりあえず目的は達成したのでやめておく。
0 件のコメント:
コメントを投稿