bashシェルスクリプトを使用してWebカメラのイメージをWebホストにアップロードする複数のRaspberry Pieがあります。
すべてのPiで同じアップロードコードは次のとおりです。
curl -s -S -u myname: \
--connect-timeout 25 \
--max-time 40 \
--retry 3 \
--pubkey ~/.ssh/id_rsa.pub \
-T $file $host >> $log 2>&1
ホストはsftp://ftp.mydomain.com/~/public_html/です。
これは数年間、両方のパイでうまくいきました。
私は最近Piesの1つにある〜/ .ssh / known_hostsファイルを詳しく見ました。これにより、すぐにカールエラー60が発生しました。
curl: (60) SSL peer certificate or SSH remote key was not OK
More details here: https://curl.haxx.se/docs/sslcerts.html
curl failed to verify the legitimacy of the server and therefore could not
establish a secure connection to it. To learn more about this situation and
how to fix it, please visit the web page mentioned above.
空の新しいKnown_hostsファイルを作成し、コマンドラインでsshを使用して破損したPiからWebホストにログインしました。すべてが正常です。パスワードは必要ありません。
残念ながら、カールの問題を解決する方法を見つけることができる唯一の方法は、カールの安全でないオプション(-k)を使用することです。
同じコードを使用する他のPiは、安全でないオプションがなくても引き続き機能します。
壊れたPiまたはホストの証明書を変更していないため、ここで何が起こっているのかわかりません。
安全性が低い方法でこの問題を解決できるように説明できる人はいますか?
=====
編集:Known_hostsファイルを上書きする方法です。 systemd リバース SSH トンネルサービスのステータスログに、次のエラーメッセージが表示されます。
Mar 24 11:43:30 raspcondo ssh[946]: Offending ECDSA key in /home/pi/.ssh/known_h
Mar 24 11:43:30 raspcondo ssh[946]: remove with:
Mar 24 11:43:30 raspcondo ssh[946]: ssh-keygen -f "/home/pi/.ssh/known_hosts"
もちろん、これらの指示は既知のホストを新しい秘密鍵で上書きするので、間違っています(切り捨てられたと仮定します)。次のようにする必要があります。
ssh-keygen -f "/home/pi/.ssh/known_hosts" -R "host"
ベストアンサー1
他の同じPiから失われたファイルをコピーします。動作していることを確認してください