こんにちは。ワラゴンです。
みなさんは、サーバにファイルをアップロードする時、何接続していますでしょうか?
ブログを書いている皆さんは、ほとんどの場合FTPだと思います。
しかし、FTPはご存知の通り通信が暗号化されていないため、セキュリティ上あまり好ましくありません。
私も、このブログではセキュリティうんぬんについて少し書いているので、のんきにFTP接続なんてしていられません。
今回は多くのブロガーの皆さん御用達のエックスサーバでSSHというセキュアな接続でファイルをアップロード・ダウンロードする方法を紹介したいと思います。
SSHとは?
SSHは、かなり大雑把に言えば、UNIX/LINUXサーバにリモートでログインしてコマンドをたたくためのプロトコルです。
FTPはファイル転送用のプロトコルですが、SSHも数あるプロトコルのひとつです。
SSHはSecure SHellから来ており、公開鍵認証という方式を使ってサーバと安全に通信することができます。
FTPクライアントソフトはどれがいいの?
先に少し触れましたが、多くのブロガーさんはFTPを使っている人が多いのではないでしょうか。
日本では、古来からFFFTPが愛用されているので、今でもFFFTPを使っている人も多いと思います。
しかし、FFFTPではここで紹介するSSHによるサーバへの接続ができないので、これを機にWinSCPかFileZillaをに乗り換えることをおすすめします。
私は断然WinSCP派なので、ここではWinSCPによるSSH接続の方法を紹介したいと思います。
※WinSCPはFFFTPと操作感がほとんど一緒なので、全く無理なく乗り換えられますよ!
エックスサーバでSSHでの接続を有効にする
サーバパネルにログイン
インフォパネルから行ってもいいですし、直接サーバーパネルにログインしても良いです。
サーバーIDをメモして、「SSH設定」に行く
「公開鍵登録・設定」タブに行き、「登録公開鍵を表示」を押して、何も登録されていないことを確認する。
下のように何か暗号のようなものが出てきたら、以前に誰かが設定した可能性があるので注意が必要です。
自分以外の誰かが操作をした可能性がある場合は、よく確認するようにしましょう。
もし誰かがSSHの認証に使っていたら、これ以降の操作でその人がSSHの認証ができなくなってしまいます。
「SSH 設定」タブを選択し、ONにて「設定する」を押す。
設定が終わったら、「公開鍵認証鍵ペアの生成」タブに行く
パスフレーズは空のままで「確認画面へ進む」を押す。
「生成する」を押すと秘密鍵がダウンロードされるので、分かる場所に移動しておく。
これでエックスサーバ側での設定は終わりになります。
WinSCPの設定
WinSCPを開き「New Site」をクリックし、必要な情報を入力する。
2. SFTP を選択する
3. Host name (*1)
4. Port Number は必ず10022固定です(エックスサーバの場合のみ。一般的にSSHのポートは22です。)
5. User Name は上でメモった「サーバーID」を入力します
*1 Host name は以下から取得することができます。
サーバーパネルの「サーバー情報」に行き、「ホスト名」を取得
最後に、⑥Advancedをクリックして、次の画面に進みます。
左ペインから「Authentication」を選び、「Private Key file:」の所にあるファイルを開くボタンを押す。
秘密鍵を保存したフォルダに行き、***.key ファイルを選択する。
(注意:All Filesを選択しないと***.keyファイルが表示されません)
以下のようなメッセージが出て、OpenSSH形式の秘密鍵をWinSCPがサポートしている形式に変換するかどうか聞かれるので、「OK」を押す。
変換後の秘密鍵を保存する(名前を変えてもいいですし、そのままでも良いです)。
以下のような画面となり、Private Key File:のところに上で選択したファイルが選択されていることを確認し、「OK」とする。
最後にOKとして設定を保存する(ここでも保存する名前は好みで変えて良いです)。
これで設定完了です。
対象の設定を選んで「Login」します。
接続できました
まとめ
いかがでしたでしょうか?
サーバにSSHで接続してみて、
FTP卒業しますた(キリッ
なんて少し上級者気分に浸るのもいいんじゃないかなと思います。
SSHで接続する、しないは別にして、まだFFFTPを使っているならWinSCPは絶対おすすめです。
というか、WinSCPを使わない理由が全く見つからないくらい使い勝手が良く万能なツールです。
WinSCPを使うだけでも
FFFTP卒業しますた(キリッ
なんて上級者気分に浸れる可能性があります。
そういえば記事の中であまり説明しませんでしたが、WinSCPの設定の中で、プロトコルを「SFTP」にしたと思います。
SSHじゃないの?という疑問を持たれるかもしれませんが、SFTPはSSHを使って安全にファイル転送を行うFTPなので、これで良いです。
みなさん頑張ってFTP卒業しましょう。