programing

SSH-Keygen "해당 파일 또는 디렉터리 없음"

goodsources 2023. 8. 4. 23:03
반응형

SSH-Keygen "해당 파일 또는 디렉터리 없음"

Git에 대한 공개 키를 생성하려고 합니다.파워셸을 사용합니다.

PS>ssh-keygen -t rsa -b 4096 -C "my@emailaddress.com"
Generating public/private rsa key pair.
Enter file in which to save the key (//.ssh/id_rsa):
Could not create directory '//.ssh': Read-only file system
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Saving key "//.ssh/id_rsa" failed: No such file or directory

파일 위치를 지정하고 실행할 경우

ssh -vT git@github.com

공용 키가 사용할 사용자 지정 위치를 확인하지 않습니다.

OpenSSH_7.1p1, OpenSSL 1.0.2d 9 Jul 2015
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: Connecting to github.com [<<ANIPADDRESS>>] port 22.
debug1: Connection established.
debug1: key_load_public: No such file or directory
debug1: identity file /.ssh/id_rsa type -1
debug1: key_load_public: No such file or directory
debug1: identity file /.ssh/id_rsa-cert type -1
debug1: key_load_public: No such file or directory
debug1: identity file /.ssh/id_dsa type -1
debug1: key_load_public: No such file or directory
debug1: identity file /.ssh/id_dsa-cert type -1
debug1: key_load_public: No such file or directory
debug1: identity file /.ssh/id_ecdsa type -1
debug1: key_load_public: No such file or directory
debug1: identity file /.ssh/id_ecdsa-cert type -1
debug1: key_load_public: No such file or directory
debug1: identity file /.ssh/id_ed25519 type -1
debug1: key_load_public: No such file or directory
debug1: identity file /.ssh/id_ed25519-cert type -1
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_7.1
debug1: Remote protocol version 2.0, remote software version libssh-0.7.0
debug1: no match: libssh-0.7.0
debug1: Authenticating to github.com:22 as 'git'
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: server->client chacha20-poly1305@openssh.com <implicit> none
debug1: kex: client->server chacha20-poly1305@openssh.com <implicit> none
debug1: expecting SSH2_MSG_KEX_ECDH_REPLY
debug1: Server host key: ssh-rsa SHA256:<<SCAREDTOPUBLISH>>
debug1: Host 'github.com' is known and matches the RSA host key.
debug1: Found key in /.ssh/known_hosts:1
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug1: SSH2_MSG_NEWKEYS received
debug1: Roaming not allowed by server
debug1: SSH2_MSG_SERVICE_REQUEST sent
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug1: Authentications that can continue: publickey
debug1: Next authentication method: publickey
debug1: Trying private key: /.ssh/id_rsa
debug1: Trying private key: /.ssh/id_dsa
debug1: Trying private key: /.ssh/id_ecdsa
debug1: Trying private key: /.ssh/id_ed25519
debug1: No more authentication methods to try.
Permission denied (publickey).

명령이 키를 저장할 수 없습니다. 이는 다음을 확인할 수 없기 때문일 수 있습니다.$HOME디렉토리입니다.쓰기 액세스 권한이 있는 위치에서 파일을 지정합니다.

ssh-keygen -t rsa -b 4096 -C "my@emailaddress.com" -f /path/to/key

개인 키가 저장됩니다./path/to/key그리고 공개 키는/path/to/key.pub성공하면 오류 메시지 대신 다음과 같은 메시지가 표시됩니다.

Your identification has been saved in /path/to/key.
Your public key has been saved in /path/to/key.pub.
The key fingerprint is:
76:f7:82:04:1e:64:eb:9c:df:dc:0a:6b:26:73:1b:2c
The key's randomart image is:
+--[ RSA 2048]----+
|        o        |
|       o .       |
|        +        |
|       + +       |
|        S o .    |
|       . = = o   |
|        E * + o  |
|        o.++ o   |
|         *o..    |
+-----------------+

그리고 나서, 만들기 위해서.ssh사용자 지정 위치에서 파일을 찾습니다.-i플래그:

ssh -i /path/to/key -vT git@github.com

또는 인증 에이전트가 실행 중인 경우 다음을 사용하여 키를 에이전트에 추가할 수 있습니다.

ssh-add /path/to/key

에이전트에서 키를 저장한 후에는 다음 작업을 간단히 수행할 수 있습니다.

ssh -T git@github.com

응답은 다음과 같이 표시되어야 합니다.

Hi USER! You've successfully authenticated, but GitHub does not provide shell access.

또한 다음과 같은 기능을 통해 저장소를 복제할 수 있습니다.

git clone git@github.com:USER/REPO

저는.ssh-keygencmd:를 사용하는 경우에만 명령이 실패하는 것으로 나타납니다.

귀하의 신분증이 [...]/.ssh/id_rsa에 저장되었습니다.fdopen [...]/.vmdk/id_dll.fdopen 실패:해당 파일 또는 디렉터리가 없습니다.

개인 키는 생성되지만 공용 키 파일은 0바이트로 생성됩니다.

Windows에서 Git Bash 명령을 실행하면 작동합니다.

이 작업은 다음과 같습니다.ssh-add '/home/user/.ssh/id_rsa'

나는 대신 이것을 시도했습니다.~/.ssh/whatever_file_name

이 코드는 나에게 효과가 있었습니다.

ssh-add /Users/<user>/.ssh/id_ed25519

교체하다<user>사용자 폴더 이름과 함께...

다음 오류가 표시됩니다.Saving key "//.ssh/id_rsa" failed: No such file or directory

내가 보기엔 당신이 폴더를 만들어야 할 것 같습니다..ssh

해라mkdir .ssh그리고 나서 뛰어요.ssh-keygen -t rsa다시.

Mac에서 작업 가능:ssh-add /Users/your_user_name/.ssh/id_rsa

저는 사용자 이름이 잘못됐어요 :) 그게 간단하다니 믿을 수가 없어요 :(

언급URL : https://stackoverflow.com/questions/32910928/ssh-keygen-no-such-file-or-directory

반응형