2026年10月28日
2026年10月28日
WordPressのSSH鍵認証でFTPなしにファイル管理する方法
はじめに
WordPressサイトの管理では、サーバー上のファイルを編集する必要がよくあります。通常はFTPクライアントを使用してファイル操作を行いますが、SSH鍵認証を利用することでよりセキュリティが高く便利な方法でファイルアクセスや編集を行うことができます。
症状・背景
このテーマが必要になる主な場面:
- セキュリティを向上させたい
- FTPクライアントの設定が煩雑である
- SSH接続を利用したい
- WordPressプラグインでのファイル操作機能を使うため
手順・設定方法
ステップ1: SSH鍵ペアを作成する
# SSH鍵ペアを作成します。パスフレーズは任意です。
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
# パスフレーズなしで生成する場合(推奨)
ssh-keygen -t rsa -f ~/.ssh/id_rsa
ステップ2: SSH鍵をサーバーに転送する
# ユーザーデータを使用してSSH接続を行い、公開鍵ファイルをサーバーの~/.ssh/authorized_keysに追加します。
ssh-copy-id -i ~/.ssh/id_rsa.pub user@your_server_ip
ステップ3: WordPressプラグインを設定する
# WP-CLIを使用してSSHプラグイン(例:Deployer)をインストールします。
wp plugin install deployer --activate
# プラグインの設定ページを開き、SSH接続情報を入力します。
wp option update deployer_config '{
"connection": {
"host": "your_server_ip",
"user": "username",
"identity_file": "~/.ssh/id_rsa"
}
}'
ステップ4: FTPパススルーの設定を無効化する
# WordPress管理画面で「設定」 > 「一般」に移動し、FTPパススルーのオプションを無効化します。
wp option update fileupload_url ''
wp option update file_uploads 0
注意事項
- SSH鍵ペアを作成する際は適切なパスフレーズを使用してセキュリティを強化すること。
- 公開鍵をサーバーに転送する際は、権限設定が正しいことを確認すること(例:chmod 600 ~/.ssh/id_rsa)。
- SSH接続情報を安全に管理し、共有しないこと。
- サーバーのセキュリティポリシーに従って適切なアクセス制御を行うこと。
まとめ
1. SSH鍵ペア: 安全で便利なファイル操作を可能にする。
2. 公開鍵転送: アクセス権限を確立するための重要な手順。
3. WP-CLIプラグイン設定: WordPressでのSSH操作の実現に必要な設定。
4. FTPパススルー無効化: セキュリティ上のリスクを最小限にする。
5. 定期的なセキュリティレビュー: SSH鍵やアクセス権限を定期的にチェックする。
関連記事: