FileZillaでmixhostにSFTP接続してファイル転送する方法

FTPソフト「FileZilla(ファイルジラ)」でmixhostにSFTP接続してファイル転送するための設定方法をまとめた記事です。

ブログ関連のファイル転送ではFTPS接続を使っているのですが、公開鍵認証方式でのSFTP接続も使えるようにしておいた方がいいかなということで設定してみました。

スポンサーリンク
スポンサーリンク

SFTP接続の大まかな手順

  1. サーバー側でのSSH設定
    1. 公開鍵の生成
    2. 公開鍵の許可/有効化
    3. 秘密鍵ファイルをダウンロード
      • OpenSSH形式 / PPK形式
  2. FTPソフト側の設定
    • 秘密鍵ファイルを設定/登録
上記は「FileZilla」&「mixhost」での手順です。
他のソフト・レンタルサーバーでは順序が違ったりすることもあると思います。
※「公開鍵=公開キー」、「秘密鍵=秘密キー」とも表記。

SSH技術を使ったSFTPの「公開鍵認証」方式では「公開鍵」と「秘密鍵」のペアを照合して認証する。

そのため、設定手順は「サーバー側で公開鍵を生成」→「照合のための秘密鍵をFTPソフトに設定」が基本の流れとなる。

FTPソフトは「FileZilla」「WinSCP」などを利用可能。

サーバーのSSH設定

ということで、まずはサーバー側のSSH設定を開始!

cPanelのSSH設定にアクセス

cPanelのSSHアクセス

マイページ – mixhost 」→「有効なサービス」→「cPanelにログイン」→「(中段あたりにある)セキュリティ/SSH アクセス」と進行。

SSH アクセスページ

「SSH アクセス」のページで「SSHキーの管理」をクリック。

新しいキーの生成

SSHキーの管理ページで「新しいキーの生成」をクリック。

既に公開鍵が作られている場合は、ここに「公開キー/秘密キー」のリストが表示される。

公開キーの設定

  • Key Name
    • 何でもOK、初期値の「id_rsa」でも可
    • 既に同名のファイルがある場合は適当に変更
  • キーのパスワード
    • パスワード生成ツールの使用推奨
    • 暗号強度が強くなるようになるべく長く・複雑に
    • パスワードはメモ/コピーして保存する
  • キーの種類
    • DSA / RSAの2種類
    • RSAを選択
  • キーサイズ
    • 1024 / 2048 / 4096 の3種類
    • キーサイズが大きいほど暗号強度が高いので4096を選択

設定が終わったら「キーの生成」をクリック。すると、「キーの生成が完了しました」と表示されるのでSSHキーの管理ページに戻る。

パスワード生成ツールの使用

パスワード生成ツールを使う際の設定について。

まずは「詳細オプション」でメニューを開いて設定。

  • 長さ
    • 10~18で設定可
    • 一番長い18に設定
  • 英字
    • 「両方」を選択
    • 大文字と小文字が含まれるようになる
  • 英字以外
    • 「両方」を選択
    • 数字と記号が含まれるようになる

暗号強度が高まるように「長さ18」で「大文字/小文字」と「数字/記号」が含まれるようにしておけばOK。

「パスワードの生成」をクリックすると自動でパスワードが生成される。

「このパスワードを安全な場所にコピーしました。」にチェックを入れると、「パスワードの使用」ボタンをクリックできるようになって、入力欄に自動で書き込んでくれる。

キーの許可/有効化

SSHキーの管理ページに先程生成した「公開キー」が表示されているがこのままだと使えないので、「管理」→「Authorize(許可)」→「認証ステータス:authorized」して使える状態にする。

秘密キーのダウンロード

SSHキーの管理ページの「秘密キー」項目にある「表示/ダウンロード」にアクセス。

ページを下にスクロールしていき、SSHキーをそのままダウンロードするか、PPK形式に変換してダウンロードする。

PPK形式に変換する際は、キーを生成した際のパスワード(パスフレーズ)を入力して「変換」ボタンを押せばいい。

FileZillaで登録設定する際の手順が前後するだけなのでどっちでもOK!
いちおう両方ダウンロードしておけばいいかも。

サーバー側での設定は「キーの生成&ダウンロード」って感じですな。
あとはFileZillaに秘密鍵の設定をするだけです。

FileZillaのSFTP設定

FileZilla側のSFTP設定では大きく2種類の方法がある。

  • 秘密鍵ファイルを予めFileZillaに登録する
  • 秘密鍵ファイルをFileZillaに登録せずファイル指定して読み込む
実用上はどちらも大して変わらないのでお好みで。
ただ、秘密鍵ファイルを登録しすぎるとエラーが出るという情報も上がっているようなので、登録数が多くなる場合は注意かもしれません。
mixhostではcPanelの「ファイル→FTPアカウント」からダウンロードできるFileZilla用のFTP/SFTP構成ファイルで簡単に設定できたらしいのですが、2020年1月30日時点では確認できませんでした。cPanelのバージョン更新で除外された?

秘密鍵ファイルを登録する場合

FileZillaのメニューから「編集→設定→SFTP」と移動。

「鍵ファイルの追加」ボタンをクリックして、ダウンロードしておいた秘密鍵ファイルを選択。

この際、秘密鍵ファイルがPPK形式でない場合は、「鍵ファイルの変換確認&パスワードの入力」が表示される。

パスワードを入力して「OK」ボタンを押せば、元の秘密鍵ファイルをPPK形式に変換して登録してくれる。

その後は、メニューの「ファイル→サイトマネージャー」から「新しいサイト」を選択してエントリーを作成。

  • プロトコル
    • SFTP – SSH File Transfer Protocol
  • ホスト
    • プライマリドメイン、FTP/FTPSホスト名
    • cPanelの一般情報にある「~.mixh.jp」
  • ポート
    • 空欄でOK
    • 空欄の場合は自動で22が使われる
  • ログオンタイプ
    • 通常
  • ユーザー
    • ユーザー名
    • cPanelの一般情報で確認可
  • パスワード
    • 空欄

設定が済んだら「OK」ボタンをクリックで基本設定はひとまず完了!

秘密鍵ファイルを登録しない場合

秘密鍵ファイルを登録しない場合は、「ログオンタイプ」を「鍵ファイル」にして、「鍵ファイル」欄にダウンロードしたPPK形式の秘密鍵ファイルを指定すればOK。

接続時の設定/入力

サイトマネージャーの設定が終わったら「接続」ボタンで接続開始!

サーバー側のなりすましの可能性を警告する「不明なホスト鍵」の情報ダイアログが毎回表示されるのが邪魔くさいなら「常にこのホストを信用し、この鍵をキャッシュに追加」にチェックを入れる。

その後、パスワードの入力ダイアログが表示されるので、秘密鍵のパスフレーズを入力してOKボタンを押せば接続完了!

「FileZillaが終了するまでパスワードを記憶」にチェックを入れておくと、FileZillaを終了しない限りはパスフレーズの入力を省ける。

まとめ

WordPress用のファイル転送ならFTPSでも特には問題無さそうですが、SSHも使えるようにしておいたほうがいいかなということでSFTPの設定を試してみました。

セキュリティ的には違いはあるようですが、FTPSとSFTPのどちらでも良さそうな雰囲気です。

公開鍵・秘密鍵の設定・ダウンロードなどが少し手間でしたが、一度設定してしまえば後は簡単に使えました。ただ、接続毎のパスワード入力が若干面倒くさいかも。

SFTP接続の使い方は他のレンタルサーバーでも大体似たようなものなので、乗り替えた際にも役立ちそうな予感!シェアも兼ねての備忘録記事でした、お疲れ様でした!

コメント