WindowsからXSERVERにSFTPで接続する方法

シェアしていただけるとうれしいです


サーバーにファイルをアップロードしたり、サーバーからファイルをダウンロードするために「FTP」という仕組みをよく使います。パソコン側からはFTPの「クライアントソフト」を使います。Windowsでしたら、

  1. FFFTP
  2. NextFTP
  3. FileZilla

といった、フリーや有償のソフトがあります。

FTPはサーバーとパソコンの間でファイルをやり取りするために必要な仕組みですが、欠点があります。それは、「通信内容が暗号化されておらず、秘密を守れないおそれがある」ということです。FTPのクライアントソフトを使ってサーバーに接続する際には「ユーザー名」と「パスワード」を入力しなければなりませんが、これらの情報も暗号化されておらず、悪意を持った第三者に傍受されれば、悪用されてしまう可能性があります。

FTPのそういった欠点を補うために、SFTPやFTPSといった仕組みが考えられました。

FTPSは、通信経路は暗号化されていますが、闇雲にユーザー名とパスワードを入力されると、たまたま合致した場合にログインされてしまうという危険性があります。

SFTPも同じようにパスワード認証を使っているとその恐れはありますが、「秘密鍵」を使うことで、パスワード認証を行わずにサーバーにログインできます。

XSERVERはSFTPが使えますが、パスワード認証ではログインできません。

パスワード認証ではログインできない

「秘密鍵」を作ってSFTP接続できるようにしたので、忘備録として残しておきます。

XSERVERにSFTPで接続する

LinuxやOS Xでは「OpenSSH」が最初からインストールされているので、「ssh-keygen」というコマンドを使って秘密鍵を作ることが可能です。WindowsにはOpenSSHがないので、そのままでは秘密鍵を作れません。

SFTPのクライアントソフトであるWinSCPで秘密鍵を作ることができるので、そちらで作った秘密鍵をXSERVERに登録します。
ダウンロードWinSCP(窓の杜)

秘密鍵を作る

WinSCPを起動して、「ツール>PuTTYgen を実行」をクリックします。

PuTTYgenを起動

「Generate」をクリックします。

Generateをクリック

「Please generate some randomness by moving the mouse over the blank area.」

Google翻訳

「空白領域の上にマウスを移動させることによって、いくつかのランダム性を生成してください。」

つまりは、「乱数を発生させるのでプログレスバーの白いところでマウスをくるくる動かしてね!」ということみたいです。マウスのカーソルをプログレスバーの白いところでくるくる動かすと、プログレスバーが「ぐーん!」と動きます。
プログレスバーの白いところでマウスのカーソルをくるくる動かす

終了したら、「Public key for pasting into OpenSSH authorized_keys file:」のとこををマウスのカーソルで全部選択し、コピー(Ctrl+c)します。
鍵の内容をコピー

サーバーに秘密鍵を登録する

XSERVERのサーバーパネルにログインし、「SSH設定」をクリックします。
SSH設定

「公開鍵登録・設定」のところに先ほどコピーした内容を貼り付けます。

秘密鍵を貼り付け

秘密鍵の内容は「ssh-rsa」から始まって、「rsa-key-20160409」(番号は多分日付)までです。すべてコピーして貼り付けます。

「公開鍵を登録する」をクリックして、登録します。

公開鍵の登録

秘密鍵を保存する

「PuTTYgen」で作った秘密鍵をファイルとしてPCに保存します。「Save Private key」をクリックします。
「Save Private key」をクリック

「パスフレーズ」は特に必要ないと思うので、そのまま「はい」をクリックします。「はい」をクリック

秘密鍵を保存する専用のフォルダをユーザーのフォルダの下に作りました。

フォルダを作成

そこへ「xserver.ppk」という名前で保存しました。

秘密鍵に名前をつけて保存

「×」をクリックして、PuTTYgenを終了します。

作成した秘密鍵を使ってSFTP接続する

WinSCPで「新しいサイト」を作成し、

  • ホスト名→XSERVERの指定のホスト名(ユーザー名.xsrv.jp)
  • ポート番号→10022
  • ユーザー名→サーバーID(FTPユーザー)
  • パスワード→空欄

を入力し、「設定」をクリックします。

新しいサイト

「SSH>認証」のところの「秘密鍵」に先ほど保存したファイルを指定します。

秘密鍵を指定

「OK」をクリックして閉じます。「保存」をクリックします。

「ログイン」をクリックすると、ログインできるはずです。
認証中

他のPCからサーバーに接続するときは

別のPCからもSFTPでサーバーに接続したいときは、保存した「xserver.ppk」ファイルを何らかの方法で送ってあげて、その「ppk」ファイルで認証をすればいいです。新しくファイルを作りなおすと、最初に設定したPCから接続できなくなってしまいます(鍵が別の鍵になってしまうので)。

せっかく暗号化されているので、まちがってもメールで送らないほうがいいと思います

いわゆる「画像直リンク」、画像の複製は固くお断りいたします。
スポンサーリンク

シェアしていただけるとうれしいです

フォローよろしくお願いします

関連記事