私のサーバーAは、基本的なWebサイトがホストされている場所です。そこにパネルがあり、新しいユーザーが参加するたびにサーバーBで安全にシェルコマンドを実行したいと思います。デフォルトでは、サーバーBに新しいユーザーを作成します。私はshell_exec()の使用を検討していますが、それがどれほど安全かはわかりません。
次のコマンドを使用しています。
$connection = ssh2_connect('IP_ADDRESS', 22);
ssh2_auth_password($connection, 'user', 'pass');
echo ssh2_exec($connection, 'ls');
次のエラーが発生します。
PHP Warning: ssh2_connect(): Error starting up SSH connection(-5): Unable to exchange encryption keys
リモートサーバーには次のものが表示されます。
Unable to negotiate with IP_ADDRESS port xxx: no matching host key type found. Their offer: ssh-rsa,ssh-dss [preauth]