Windowsから安全にファイル交換
とある部署から会社の外と中とで、安全な経路をつかってファイル交換をしたいとの要望。大昔は外部サーバをつかってftpでファイルをやり取りしていたらしい。なんとなく契約が切れてからはメールでやり取りしてたんだけど、なんだか面倒になってきたらしい。
(もちろん無料で)実現するにもいろいろと方法はあるけれども、SFTPでの環境を作ってみることにした。サーバ側はsshdが動作していればいいので、環境構築については省略。クライアント側の環境はこんな感じで作ってみました。
必要なもの
つかうものは以下の3つ。
これはSFTPをしゃべるFTPクライアントです。今回はWinのものを使います。
- puttygen
FileZillaのSSHはputtyのものを使っているので、puttygenで鍵ペアを作成します。
上記のputtygenで作成した鍵ペアのうち秘密鍵を読み込んで、認証を代行してくれるエージェント。常駐させて使います。FileZillaがSFTPのセッションを張るときにこいつに認証を代行させるみたい。
FileZillaのインストール
まずFileZillaをインストール。ダウンロードサイトからものをダウンロードして、exeをダブルクリック。ライセンスの認証画面がでるので"I Agree"をクリック。
だれが使うかのオプション選択。このあたりはお好みで。
インストール物件の選択。貧乏性なので、全部インストールを選択。
インストール先ディレクトリを指定。なにか理由があれば、好きなところを指定。だいたいの場合はデフォルトでOK。
スタートメニューに登録するメニュー名を選択。これもデフォルトでいいでしょう。
がーっとインストールがすすんで、
無事終了。
puttygenで鍵ペアを作成する
つぎにputtyを使って鍵ペアを作成します。鍵ペアを作成するにはputtyのツールの一つであるputtygenを作成します。ここからダウンロードできます。puttygenをダウンロードしたらおもむろにダブルクリック。
下の方に"Parameters"を選択するところがあります。生成する鍵の種類を選択するんですが、これはこれからつなごうとするサーバがどの種類の鍵に対応しているかに依存します。わからない場合は、接続先のサーバ管理者にどの種類でどれくらいの長さの鍵をつくればいいか訪ねてください。
今回はRSAで、1024bit長の鍵、つまりデフォルトの鍵を作成します。"Generate"をクリックします。画面がすこし切り替わるので、ウィンドウの上でマウスをぐりぐりと動かします。ランダム種の代わりですね。
ある程度ぐりぐりと動かすと画面が切り替わって、パスワードを入力する画面になります。適当にパスワードを入力します。
次に秘密鍵と公開鍵をファイルに書き出します。"Save public key"と"Save private key"をクリックして、適当に名前をつけて保存します。
保存したもののうち、公開鍵、上記に例でいうとpublicの方を接続する先のサーバ管理者へ送付します。これで鍵生成は終了。公開鍵はパスワードを入力する画面の上の方にも表示されています。これをコピペして送っても可。