キーペアとパスワードを使用してSSH接続をスクリプト化するには?

キーペアとパスワードを使用してSSH接続をスクリプト化するには?

次のコマンドを使用してホスティングプロバイダに手動でログインしました。

ssh -i /path/to/key-ssh [email protected]

その後、サーバーはパスワードを要求し、ログインに成功します。

MySQLのバックアップを自動化したいので、シェルスクリプトを使ってログインする必要があります。 (明確に言えば、プロバイダはログインするためにキーペアとパスワードを要求します)

その後、sshpassを使用しようとしています。

sshpass -p 'MYPASSWORD' ssh [email protected]

権限が拒否されました(公開鍵、gssapi-keyex、gssapi-with-mic)。

それからこれを試しました。

sshpass -p 'MYPASSWORD' ssh -i /path/to/key-ssh [email protected]

このようにして、リモートサーバーはまったく応答しません(プロンプト停止)。

私のサーバーはDebian 8.10(Jessie)を実行しています。

私はsshpassを使用するセキュリティリスクを知っていますが、このサーバーを使用している唯一の人です。私もautomysqlbackupを試しましたが、SSLで動作しようとすると頭が痛いです。

SSHによる自動バックアップが最も簡単なソリューションのようです(もはやわかりません...)

ベストアンサー1

サーバーはあなたのパスワードを要求しません。入力した内容は秘密鍵を保護するパスワードです。

パスワードを入力せずに自動的にログインするには、まずパスワードを削除する必要があります。次のコマンドを使用してこれを実行できます。

ssh-keygen -p

ただし、秘密鍵はパスワードなしで誰でも使用できますので、安全な場所に保管してください。

おすすめ記事