委員会概要 各種申請 サービス サポート リンク
マニュアル BBS FAQ 管理者各位 リサーチ

FFFTP + Port Forwarding


 
1.FFFTP + Port Forwardingの説明

FFFTP』は完全な日本語表示による分かりやすい表示、ミラーリングアップロード・ダウンロード、様々なファイアウォールに対応している等、強力な機能を持つFTPクライアントです。 また、SSHの機能である『ポートフォワーディング(Port Forwarding)』を使用することで通信を暗号化し、パスワードなどを保護することができます。

注意:この方法はユーザ名やパスワードなどの情報を暗号化するもので、ダウンロード・アップロードするデータはいっさい暗号化されません。以前、データも暗号化されるような記述をしており、誤解を与えたことをお詫びします。また、データを暗号化したい場合は、SCPSFTPを使用してください。

目次へ戻る
 
 
2.ポートフォワーディング(Port Forwarding)

ポートフォワーディングとは、Xウインドウシステムや任意のTCP/IPアプリケーションの通信を暗号化して安全なものにすることができる、SSHの機能です。

普通FTPを使って通信すると、通信内容はすべて暗号化なしの状態で行われます。暗号化していない状態では、その通信に使われた経路でデータを盗聴される可能性があります。

そこでポートフォワーディングを使うことにより、ユーザ名やパスワードなどの情報を送信する経路を暗号化し、盗聴されてもわからないようにすることができます。

ポートフォワーディングのイメージ図

FTPクライアントは本来リモートホストのFTPサーバ21番ポートに転送するデータをローカルホストのSSHクライアント1234番(任意)ポートに転送します。SSHクライアントはそのデータを通信経路を暗号化してリモートホストのSSHサーバ22番ポートに転送します。リモートホストのSSHサーバは転送されてくるデータをリモートホストのFTPサーバ21番ポートに転送します。これにより、安全に通信することができます。

目次へ戻る
 
 
3.ポートフォワーディング対応SSHクライアント

ここでは3種類のソフトを紹介します。

設定後の使いやすさで言えばPortForwarderを推奨します。
また、ポートフォワーディング機能を使用している間ターミナル画面を操作することや、ここでは扱っていないXのフォワーディングを利用される場合はPuTTYを推奨します。
TTSSHはSSH1であることや、保存方法が難しいことからあまり推奨しません。
(SSH1とSSH2の違いについてはここを参考にしてください。)

目次へ戻る
 
 
4.FFFTPのダウンロードと準備

こちらのサイトからDownload ffftp-1.92.exe、もしくはDownload ffftp-1.82a.exeをダウンロードしてください。 終わったら実行してインストールします。

プログラム本体だけのDownload ffftp-1.92.lzhを解凍してもかまいません。

目次へ戻る
 
 
5.接続の設定

FFFTPを起動します。

まずホスト一覧が表示されますので、[新規ホスト]をクリックします。

ホストの設定名は自由に名前を設定してください。ホスト名にはlocalhost(SSHクライアントを経由させるため、接続先は自分になります。)と入力します。ユーザ名は共用計算機(ruby)のアカウント名です。パスワードは入力しなければ接続時に聞いてきます。なおここに書いたパスワードは保存されます。ローカルの初期フォルダは指定しなければマイドキュメントになり、ホストの初期フォルダはホームディレクトリになります。

次に[拡張]タブを選択します。

PASV(パッシブ)モードを使うには必ずチェックを入れてください。これがないと正常に接続できません。ポート番号は、SSHクライアントがポートフォワーディングによって転送するデータを受け取るために設定したものです。ここでは1234で説明します。

[OK]を押して、設定を完了します。

目次へ戻る
 
 
6.接続と一般的な使用方法

先ほど作った設定を使って接続しますが、その前にポートフォワーディングを有効にしておく必要があります。ポートフォワーディングの設定をしたSSHクライアントを起動して接続し、ポートフォワーディングを有効にしてください。

有効になったら[接続]します。

パスワードを保存していない場合には、ここで聞かれますので入力してください。

接続に成功すると、以下の画面になります。

ファイルを個別にアップロードするには、選択して[アップロード]ボタンを押します。

パーミッションは変更したいファイルを右クリックし、属性変更で設定できます。

最後に、接続を終了するときはFFFTPを切断してからSSHクライアントのポートフォワーディングを切断しましょう。ポートフォワーディングを有効にさせたままでいないでください。

目次へ戻る
 
 
7.高度な使用方法(ミラーリングアップロード)

ここではちょっと高度な使用方法を説明します。設定をするのは少し面倒ですが、終わればとても便利にFFFTPを使えるようになります。特にホームページをFTPで更新している人がとても楽になるでしょう。

ミラーリングというのは双方の状態(ディレクトリ構造やファイル)を同じにする作業を言います。ほとんどの人はホームページを作るとき、まず自分のコンピュータで作成してからサーバーにアップロードすると思います。しかし、しばらく経つと更新したファイルがどれか忘れてしまったり、覚えていても100個以上ある時など手作業でするのは大変です。

ミラーリングアップロードを使えば、ファイルやディレクトリを比較して更新しているものだけをアップロードしてくれるので、時間も最低限ですみます。では実際にやってみましょう。

下記の双方をミラーリングします。[ミラーリングアップロード]ボタンを押してみてください。

アップロードなので、左側にあって右側にないものが追加され、右側だけにあるものは削除されてしまいますので、ご注意ください。これについてはあとで回避方法を説明します。

[処理内容表示]ボタンを押せば、どのファイルを転送したり削除したりするのかがわかります。

個別に選択して一覧から削除することもできます。

[実行]すると、以下の左上の数字が1ずつ減っていきます。

0になると処理が終わるわけです。

 

さて、いくらミラーリングといっても転送したくないファイルや、サーバー側の削除したくないファイル、ディレクトリもあるでしょう。Windowsでは特にいらないファイルがたくさんありますので、この設定をすることで余計なものをアップロードしなくてすみます。

[オプション][環境設定]を選択しましょう。ここに[ミラーリング]タブがあります。

転送しないファイルに*.bakThumbs.dbdesktop.iniを追加、拡張子がないものはフォルダで、_vti_cnf_vti_pvtを追加。また、削除しないファイル名のところにはoldfilesを追加。これでサーバ側のoldfilesという名前のファイルやディレクトリは削除されなくなります。

補足説明
Thumbs.db
WindowsXPで使用されている、画像や動画のプレビューを記録しているもの。Windowsでしか使えないので、サーバに送っても無駄である。
desktop.ini
Windowsのフォルダの情報がかかれているファイル。やはりWindowsでしか使えないので、サーバに送っても無駄である。
_vti_cnf
ホームページ作成ソフトウェア(FrontPage)が一時的に作るフォルダ。これはただの作業領域なので、これを含めて中のものはサーバに送る必要はない。
_vti_pvt
上と同じ。

ホームページ作成ソフトウェアは一時領域を作ることが多々あるので、きちんと設定しないと無駄なものまで送ってしまいます。

ミラーリングに関してはこのくらいですが、せっかくですのでもう一つ設定しましょう。

[転送3]タブをクリックします。ここはファイルごとのパーミッションを設定することができます。このように設定しておけば、CGIなどをファイルアップロード後にパーミッションを変更せずにすみます。

パーミッションの設定はそれぞれの設置マニュアルを見てください。この設定は個人Webページでほぼ有効な設定です。ただし、PHP, JSP, Servletを使っている人にはこれではダメな場合があります。自分で見直してみましょう。

また、ミラーリングアップロードする際はファイルを消してしまうなど取り返しのつかないことになったりするので十分注意してください。

目次へ戻る
 

Topへ戻る


(C) 2004 九州工業大学 学生自治ネットワーク委員会
K.I.T. Student Administered Network Commission