web-dev-qa-db-ja.com

ワードプレスのSSHキーを介してSFTPを有効にします

誰も私を助けることができます

define('FTP_PUBKEY','/home/use/.ssh/id_rsa');
define('FTP_PRIKEY','/home/user/.ssh/id_rsa');
define('FTP_USER','');
define('FTP_PASS','');
define('FTP_Host','127.0.0.1:22');

home/user/wordpressにあるインストール

にあるキー

間違ったキーを取得する

キーパーミション600、600フォルファー755

1

Sshを介した接続の場合、FTP_USERを使用してsshユーザーを指定する必要があります

define( 'FS_METHOD', 'ssh' );
define( 'FTP_BASE', '/home/user/wordpress' );
define( 'FTP_PUBKEY', '/home/user/.ssh/id_rsa.pub' );
define( 'FTP_PRIKEY', '/home/user/.ssh/id_rsa' );
define( 'FTP_USER', 'user' );
define( 'FTP_Host', 'localhost:22' );

FTP_BASEも定義する必要があると思います。

また、sshアップグレードアクセスを有効にする必要があります。コーデックスから:

SSHアップグレードアクセスの有効化

SSH2を使用してアップグレードするには2つの方法があります

最初の方法は、 SSH SFTP Updater Supportプラグイン を使用することです。 2つ目は、組み込みのSSH2アップグレーダーを使用することです。これには、pecl SSH2拡張機能がインストールされている必要があります。

Pecl SSH2拡張機能をインストールするには、次のようなコマンドを発行するか、Webホスティングプロバイダーに連絡してインストールする必要があります。

pecl install ssh2

Pecl ssh2拡張機能をインストールした後、この拡張機能を自動的にロードするようにPHP構成を変更する必要があります。

peclは、ほとんどのLinuxディストリビューションのpearパッケージで提供されます。 Red Hat/Fedora/CentOSにpeclをインストールするには:

yum -y install php-pear

Debian/Ubuntuにpeclをインストールするには:

apt-get install php-pear

パスフレーズで保護されていない秘密鍵を使用することをお勧めします。パスフレーズで保護された秘密鍵が適切に機能しないという報告が多数あります。パスフレーズで保護された秘密鍵を試す場合は、秘密鍵のパスフレーズをFTP_PASSとして入力するか、更新プログラムをインストールするときに提示された資格情報フィールドの「パスワード」フィールドに入力する必要があります。

2
Tunji

私は初心者のときにこの質問をしました。しかし、vpsまたはクラウドで使用している場合、wordpresのsshとsftpでさえもftpアカウントをセットアップする必要がないことに最終的に気付きました。

ファイル転送にsftpクライアントを使用しました。ただし、所有権の問題により、一部のプラグインのインストールが機能しませんでした。 Apacheユーザーおよびグループwww-dataの許可を変更しました。

1