ssh key_load_public:無効な形式の警告

ssh key_load_public:無効な形式の警告

SSHは私のシステムに正常に接続しましたが、フラグがないにもかかわらずメッセージを-v受け取りました。key_load_public: invalid format以下はverboseフラグを使用した出力です。

具体的に

debug1: key_load_public: No such file or directory debug1: identity file /home/myname/.ssh/private_rsa_key-cert type -1

そのファイルがないので問題のようです。しかし、他のシステムをチェックしてみると、上記の2行についても同じメッセージが表示されました。しかし、それ以前はそうではありませんkey_load_public: invalid format。それが私が本当に取り除きたいものです。 Authorized_keys ファイルに対する権限は、private_keys の権限と同様に、両方のリモート・システムで同じように見えます。

    $ ssh -v desired_host
    OpenSSH_7.2p2, OpenSSL 1.0.2g  1 Mar 2016
    debug1: Reading configuration data /home/myname/.ssh/config
    debug1: /home/dli/.ssh/config line 16: Applying options for desired_host
    debug1: Reading configuration data /etc/ssh_config
    debug1: Connecting to desired_host [X.X.X.X] port 22.
    debug1: Connection established.
    key_load_public: invalid format
    debug1: identity file /home/myname/.ssh/private_rsa_key type -1
    debug1: key_load_public: No such file or directory
    debug1: identity file /home/myname/.ssh/private_rsa_key-cert type -1
    debug1: Enabling compatibility mode for protocol 2.0
    debug1: Local version string SSH-2.0-OpenSSH_7.2
    debug1: Remote protocol version 2.0, remote software version OpenSSH_5.3
    debug1: match: OpenSSH_5.3 pat OpenSSH_5* compat 0x0c000000
    debug1: Authenticating to desired_host:22 as 'myname'
    debug1: SSH2_MSG_KEXINIT sent
    debug1: SSH2_MSG_KEXINIT received
    debug1: kex: algorithm: diffie-hellman-group-exchange-sha256
    debug1: kex: host key algorithm: ssh-rsa
    debug1: kex: server->client cipher: aes128-ctr MAC: [email protected] compression: none
    debug1: kex: client->server cipher: aes128-ctr MAC: [email protected] compression: none
    debug1: SSH2_MSG_KEX_DH_GEX_REQUEST(2048<3072<8192) sent
    debug1: got SSH2_MSG_KEX_DH_GEX_GROUP
    debug1: SSH2_MSG_KEX_DH_GEX_INIT sent
    debug1: got SSH2_MSG_KEX_DH_GEX_REPLY
    debug1: Server host key: ssh-rsa SHA256:EmG/FBK0OCXtaAqAkfHKxoXKLGiZiHUsQpObK6aWd30
    debug1: Host 'desired_host' is known and matches the RSA host key.
    debug1: Found key in /home/myname/.ssh/known_hosts:39
    debug1: rekey after 4294967296 blocks
    debug1: SSH2_MSG_NEWKEYS sent
    debug1: expecting SSH2_MSG_NEWKEYS
    debug1: rekey after 4294967296 blocks
    debug1: SSH2_MSG_NEWKEYS received
    debug1: SSH2_MSG_SERVICE_ACCEPT received
    debug1: Authentications that can continue: publickey,gssapi-keyex,gssapi-with-mic,password
    debug1: Next authentication method: publickey
    debug1: Trying private key: /home/myname/.ssh/private_rsa_key
    debug1: Authentication succeeded (publickey).
    Authenticated to desired_host ([X.X.X.X]:22).
    debug1: channel 0: new [client-session]
    debug1: Requesting [email protected]
    debug1: Entering interactive session.
    debug1: pledge: network

答え1

私にも同じ問題がありますが、ソースとソリューションは異なります。

クライアントの.sshフォルダにid_rsa.foo(正しい秘密鍵)とid_rsa.foo.pub(一致するpubkey)があります。公開鍵を削除または名前を変更すると、メッセージが消えます。

答え2

2つの別々のメッセージがあります。

.ssh/private_rsa_keyこれはフォーマットが間違っていることを示します。

key_load_public: invalid format
debug1: identity file /home/myname/.ssh/private_rsa_key type -1

これはスイッチなしでは表示されず、-v証明書がないという情報のみを提供します。

debug1: key_load_public: No such file or directory
debug1: identity file /home/myname/.ssh/private_rsa_key-cert type -1

2番目のメッセージは心配することはありません。

答え3

私が発行するとき

ssh myid@mydomain

(リモートボックスに正常にログインしたにもかかわらず)メッセージを受け取ります。

key_load_public: invalid format

これは、リモートホストが ~myid/.ssh/authorized_keys ファイルに自分の公開鍵を正しく含めても、私のローカル ~/.ssh/xxx.pub に実際に私の秘密鍵ファイルの内容が含まれているために発生します.したがって、解決策は修正することです。私のローカル〜/.ssh/xxx.pubに私の公開鍵があります。

答え4

ついに成功し、プライベートRSAキーの内容を正確にコピーして貼り付けました。

-----BEGIN RSA PRIVATE KEY-----
<content>.....
-----END RSA PRIVATE KEY-----

すべてのEOLタブまたはその他の項目が含まれています。

関連情報