本文へ移動
目次
ウェブサイト

SFTP接続方法:FileZilla、Cyberduck、コマンドラインでの接続

機械翻訳です。英語の原文もご利用いただけます。

SFTP(Secure File Transfer Protocol)を使うと、サーバー上のサイトのファイルに直接アクセスできます。このガイドでは、認証情報の確認方法からトラブルシューティングまで、接続に必要なすべてを解説します。

SFTPとは何か、いつ使うべきか

KPanelに組み込まれているファイルマネージャーは、ファイル名の変更、設定の確認、単一のアセットのアップロードなど、簡単な編集には便利です。SFTPは、それ以上のことが必要なときに適したツールです。

  • 一度に大量のファイルをアップロードまたはダウンロードする場合(サイトの移行、画像の一括アップロードなど)。
  • ブラウザ経由のアップロードではタイムアウトしてしまうような大きなファイルを転送する場合。
  • ローカルでファイルを編集し変更を反映させる開発ワークフローの一環として作業する場合。
  • ローカルフォルダとリモートフォルダを同期できるGUIクライアントを使用する場合。
  • KPanelのファイルマネージャーでは公開されていないログや設定ファイルにアクセスする場合。

SFTPは転送中のすべてのデータを暗号化するため、通常のFTPよりも安全です。KapsuleHostでは暗号化されていないFTP接続は提供していません。

KPanelにおけるサイトのSSHおよびSFTP接続の詳細

前提条件

接続する前に、2つの準備が必要です。

1. KPanelでサイトに追加されたSSHキー。

KapsuleHostのSFTPはSSHキー認証を使用します。セキュリティ上の理由からパスワード認証は無効化されています。まだSSH公開鍵を追加していない場合は、先にサイトへのSSHキーの追加ガイドに従ってから、このページに戻ってください。

2. サイトのユーザー名。

KapsuleHostの各サイトには専用のシステムユーザーがあります。これはKPanelのメールアドレスとは異なります。そのサイトに固有の短いユーザー名です。

確認方法は次のとおりです。

  1. kpanel.kapsulehost.comでKPanelにログインします。
  2. 左サイドバーのウェブサイトをクリックします。
  3. 接続したいサイトをクリックします。
  4. SSH / SFTPページに移動します。
  5. このタブの上部にサイトのユーザー名が表示されます。通常はmysite_comやmyexamplesite_netのような形式です。

接続情報の一覧:

項目値
ホストcp1-kapsule.kapsulehost.com
ポート22
プロトコルSFTP(FTPでもFTPSでもありません)
認証方式SSHキーのみ
ユーザー名サイトのユーザー名(KPanel > Websites > [サイト] > Settings > SFTPで確認)

FileZillaで接続する

FileZillaは無料のクロスプラットフォームSFTPクライアントで、Windows、macOS、Linuxで利用できます。まだお持ちでない場合はfilezilla-project.orgからダウンロードしてください。

設定手順

  1. FileZillaを開きます。

  2. File > Site Managerに移動します(WindowsではWindowsの場合はCtrl+S、Macの場合はCmd+Sを押します)。

  3. ウェブサイトを追加をクリックし、名前を付けます(例:「My KapsuleHost Site」)。

  4. Generalタブで、以下の項目を設定します。

    項目値
    プロトコルSFTP - SSH File Transfer Protocol
    ホストcp1-kapsule.kapsulehost.com
    ポート22
    ログオンタイプKey file
    ユーザーサイトのユーザー名(例:mysite_com)
    キーファイルBrowseをクリックし、秘密鍵ファイルを選択します
  5. キーファイルには、KPanelで追加した公開鍵に対応する秘密鍵を選択してください。macOSおよびLinuxでは、秘密鍵は通常~/.ssh/に保存されています(例:~/.ssh/id_ed25519や~/.ssh/id_rsa)。WindowsではC:\Users\YourName\.ssh\にあることが多いです。

秘密鍵にパスフレーズが設定されている場合、接続時にFileZillaから入力を求められます。これは正常な動作です。このパスフレーズは秘密鍵ファイルを保護するためのもので、KapsuleHostのパスワードとは別のものです。

  1. Connectをクリックして接続をテストするか、OKをクリックして保存し、後で接続します。

保存して再接続する

Site Managerに一度保存すれば、File > Site ManagerからConnectをクリックするだけでいつでも再接続できます。FileZillaはツールバーのドロップダウンにも保存済みのサイトを表示するため、すばやくアクセスできます。

FileZillaのSite Managerでは、初回接続時にAlways trust this hostのチェックボックスをオンにしておくと、今後の接続でホストキーの確認プロンプトが表示されなくなります。


Cyberduckで接続する

CyberduckはmacOSおよびWindows向けの無料SFTPクライアントです。cyberduck.ioからダウンロードしてください。

設定手順

  1. Cyberduckを開きます。

  2. Open Connection(ツールバーの地球アイコン)をクリックします。

  3. ダイアログ上部のプロトコルのドロップダウンからSFTP (SSH File Transfer Protocol)を選択します。

  4. 接続項目を入力します。

    項目値
    サーバーcp1-kapsule.kapsulehost.com
    ポート22
    ユーザー名サイトのユーザー名(例:mysite_com)
    パスワード空欄のままにします
    SSH秘密鍵Chooseをクリックし、秘密鍵ファイルを選択します
  5. Connectをクリックします。

初回接続時、Cyberduckはサーバーのホストキーのフィンガープリントの確認を求めます。Allowをクリックして進めてください。別のフィンガープリントでこのプロンプトが後続の接続で表示された場合は、承認せずにサポートに連絡してください。設定変更の兆候である可能性があります。

ブックマークとして保存する

接続を今後のために保存するには、次の手順に従います。

  1. 接続に成功したら、Bookmark > New Bookmarkに移動します(MacではCmd+Shift+Bを押します)。
  2. ブックマークに名前を付けてダイアログを閉じます。ブックマークはCyberduckのブックマーク一覧に表示されます。

ターミナルから接続する(Mac、Linux、WSL)

コマンドラインを使いたい場合、sftpコマンドはmacOS、Linux、Windows Subsystem for Linux(WSL)で利用できます。

基本的な接続方法

sftp mysite_com@cp1-kapsule.kapsulehost.com

mysite_comの部分は実際のサイトのユーザー名に置き換えてください。秘密鍵がデフォルトの場所(~/.ssh/id_rsaまたは~/.ssh/id_ed25519)にない場合は、-iフラグで指定してください。

sftp -i ~/.ssh/your_private_key mysite_com@cp1-kapsule.kapsulehost.com

初回接続時には、サーバーのホストフィンガープリントの確認を求められます。yesと入力してEnterを押してください。これはデバイスごと、キーごとに一度だけ発生します。

便利なSFTPコマンド

接続すると、sftp>プロンプトが表示されます。以下のコマンドでファイルの移動や転送を行います。

コマンド内容
ls現在のリモートディレクトリのファイル一覧を表示
lls現在のローカルディレクトリのファイル一覧を表示
cd [dir]リモートサーバー上のディレクトリを変更
lcd [dir]ローカルマシン上のディレクトリを変更
pwd現在のリモートディレクトリのパスを表示
lpwd現在のローカルディレクトリのパスを表示
get [file]リモートからローカルへファイルをダウンロード
get -r [dir]ディレクトリを再帰的にダウンロード
put [file]ローカルからリモートへファイルをアップロード
put -r [dir]ディレクトリを再帰的にアップロード
rm [file]リモートサーバー上のファイルを削除
mkdir [dir]リモートサーバー上にディレクトリを作成
quitSFTP接続を終了

例:ファイルをダウンロードする

sftp> cd htdocs/wp-content/themes
sftp> get my-theme.zip

例:ファイルをアップロードする

sftp> lcd ~/Desktop
sftp> cd htdocs/wp-content/uploads
sftp> put my-image.jpg

ファイルの場所について

接続すると、サイトユーザーのホームディレクトリ/home/[siteuser]/に移動します。

ディレクトリ構成は次のようになっています。

/home/mysite_com/
├── htdocs/              ← Your web root (main location for site files)
│   ├── index.php
│   ├── wp-config.php
│   ├── wp-content/
│   │   ├── themes/
│   │   ├── plugins/
│   │   └── uploads/
│   └── ...
├── logs/                ← PHP and access logs
└── tmp/                 ← Temporary files

WordPress(またはその他のアプリケーション)が配置されているウェブルートはhtdocs/です。ほとんどの作業はこのディレクトリ内で行うことになります。サイトの構成によっては、代わりにpublic_html/という名前になっている場合もあります。接続時にhtdocs/ではなくpublic_html/が表示された場合は、そちらを使用してください。

アクセスできるのは、自分のサイトユーザーに属するファイルのみです。/home/[siteuser]/より上の階層に移動したり、他のお客様のディレクトリにアクセスしたりすることはできません。これは仕様です。


接続時の問題のトラブルシューティング

「Connection refused」

接続が確立される前に明示的に拒否されました。

確認事項: ホストcp1-kapsule.kapsulehost.comとポート22を使用していることを確認してください。よくある間違いは、ポート21(これはFTP用であり、SFTPではありません)を入力していることや、ホスト名の入力ミスです。

「Permission denied (publickey)」

サーバーは接続要求自体は受け入れましたが、認証を拒否しました。

以下をそれぞれ確認してください:

  • KPanel > Websites > [サイト] > Settings > SSH KeysにSSH公開鍵が追加されていること。そこに表示されていない場合、サーバーはそのキーを把握していません。
  • FileZilla/Cyberduckで正しい秘密鍵、つまりKPanelに追加した公開鍵と対になる秘密鍵を選択していること。
  • キーにパスフレーズがある場合は、正しく入力できているか確認してください。
  • 複数のキーがある場合は、誤って別のキーを選択していないか確認してください。

「Host key verification failed」

SFTPクライアントが以前このホスト名に対して別のホストキーを確認しており、不一致を警告しています。

初回接続時: フィンガープリントの承認を求められます。これは正常です。Acceptをクリックするか、yesと入力してください。

異なるフィンガープリントで後続の接続が発生した場合: サーバー側の設定変更を示している可能性があります。承認する前にsupport@kapsulehost.comのサポートに連絡し、見た内容を伝えてください。

ターミナルで古いホストキーを削除するには、~/.ssh/known_hostsを編集し、cp1-kapsule.kapsulehost.comに該当する行を削除してください。

「Could not read from remote repository」または誤ったディレクトリ

サイトのユーザー名ではなく、KPanelのメールアドレスをユーザー名として使用した可能性があります。

確認事項: ユーザー名は、メールアドレスではなく、サイトのユーザー名(例:mysite_com)である必要があります。正しいユーザー名はKPanel > Websites > [サイト] > Settings > SFTPで確認できます。

接続がタイムアウトする

接続を試みた後、応答がないままタイムアウトします。

考えられる原因:

  • ログイン失敗が繰り返されたことにより、お使いのIPアドレスがKapsuleHostのファイアウォールによって一時的にブロックされている可能性があります。support@kapsulehost.comのサポートに連絡し、ファイアウォールのログを確認してもらってください。
  • ネットワーク上のローカルファイアウォールやVPNが、ポート22でのアウトバウンド接続をブロックしている可能性があります。これを切り分けるために、別のネットワーク(例:モバイルホットスポット)から試してみてください。

関連記事

この記事は役に立ちましたか?

AI の方へ:このページを Markdown で読む

関連記事

SSL証明書とHTTPSKapsuleHostがどのようにSSLを自動的に処理するか、また証明書に問題が発生した場合にどうすればよいかを、平易な言葉で説明します。…ウェブサイト:まず始めにKapsuleHostにおけるウェブサイトホスティングの仕組み、サイトの各タブに何があるか、そして目の前の作業にどのガイドを読むべきかについて説明します。…サイトの稼働監視KapsuleHostのすべてのサイトは60秒ごとに自動でチェックされ、Uptimeタブでその結果を確認できます。現在のステータス、稼働率、応答時間、そして完全なインシデント履歴です。…サイト設定設定タブには、他のどのタブにも属さない、サイト全体に関わるわずかな数のスイッチがまとめられています。HTTPS を強制するかどうか、サイトがメンテナンスページを表示してい…

解決しませんでしたか?

お客様のアカウントを把握している Kora にご質問いただくか、サポートチームにお問い合わせください。

お問い合わせサポートにメール