パスワードを記述する必要なくSSHを使用するようにSSHを構成します。 Windows 10でUbuntu 18.04 LTSを使用しています。Hadoop3.1.1の実行に必要です( https://hadoop.Apache.org/docs/r3.1.1/hadoop-project-dist/hadoop-common/ SingleCluster.html#Standalone_Operation )疑似分散モードを使用します。
私は多くの異なるソリューションを試しましたが、結果はありませんでした。コマンドssh localhostを初めて使用したとき、パスフレーズを書く必要はありませんが、もう一度書くときはパスフレーズを書かなければならないことに気付きました。
私が使用したさまざまな手順を説明します。
この時点ですべては正しいですが、ssh localhostを再度実行すると、パスフレーズを書く必要があります。これらの手順は3年前のAWSのUbuntuで正常に機能していました。
私はポイント3でこの他の方法を試しました: https://www.ssh.com/ssh/copy-id
私が見つけたすべての可能な解決策は、ポイント3で試したのと同じことを言った、または私はそれを思う。他のソリューションでも見つかったように、authorized_keysと.sshの権限を変更しようとしましたが、成功しませんでした。
この回答 をご覧ください。これは、ユーザーのssh
の構成(~/.ssh/config
の編集)およびその他の詳細を説明しています。
手順は次のとおりです。
ssh
キーを生成します。~/.ssh/config
ファイルに追加します。.pub
)キーをリモートユーザーの~/.ssh/authorized_keys
に追加します。ssh-copy-id
コマンドで最も簡単に実行できます。ssh
は、very~/.ssh/
のパーミッションとその中にあるファイルに特化しています。 ssh-copy-id
がすべてを処理します。ssh Host
ssh Host -vvv # Verbose output for troubleshooting
キーがパスワードで保護されているため、ssh-agent
を使用しようとしていますか? ssh-agent
を使用せずに手動で接続して作業することをお勧めします。キーを機能させたら、ssh-agent
固有の問題の解決に取り組むことができます。
トラブルシューティングを行うには、必ずssh
を冗長モードで使用し、リモートサーバーのtail -f
ファイルを監視(/var/log/auth.log
)してください。新しいシステムでは、journalctl
(journalctl -u sshd | tail -f
)を使用する必要があります。
キーが一般的に機能するようになったら、 このセットアップ手順のセット などのssh-agent
ドキュメントを確認できます。通常、手順は次のとおりです。
ssh-agent
を開始します。eval ssh-agent
ssh-agent
:に追加します。ssh-add ~/.ssh/private_key
キーのロックが解除されない期間など、他のssh-agent
設定オプションを必ず確認してください。
少しまとめると、問題は次のいずれかである可能性があります。
ssh-agent
の開始とid_rsa
キーの追加(過去)を追加したと言いますが、新しいキーを生成したので、そのキーもssh-add
'dである必要があります。ssh-agent
が実際にシステムで実行されていることを確認してください。ps aux | ssh-agent
$HOME
ディレクトリにある必要があります。ssh-agent
が、テストしたよりも短い時間でキーをロックするように設定されているかどうかを理解しようとしています。~/.ssh/authorized_keys
ファイル(>>
)に追加するときは、最初にファイルを作成しましたが、これには不正なアクセス許可があります。~/.ssh/
ディレクトリ全体を削除し、ssh-copy-id
を使用して、リモートホスト上のユーザーを適切にキー設定します。auth.log
に表示され、ファイルのアクセス許可が正しくないことを指定します。ssh-copy-id
を使用してディレクトリとファイルを作成した後も引き続き問題が発生する場合は、~/.ssh
および生成されたキーファイルの権限を投稿してください。ssh
をリモートホストに挿入すると、ssh-agent
を構成していない限り、ssh-agent
を失い、~/.ssh/config
を介してForwardAgent yes
にssh
を失います。 ssh-agent
を転送したい場合は、それを許可するように設定し、その決定がセキュリティに与える影響を理解する必要があります。また、ForwardAgent
は異なるマシンで実行するように設計されている可能性があります。また、ssh-agent
が既に実行されているため、ローカルで転送を実行できない場合があります。