MobaXTerm-SSH 키 인증


8

퍼티와 변환하고 잘 작동하는 키가 있습니다.

나는이 형식을 시도했다 :

ssh -p 1111 -i id_rsa chip@192.168.0.100

ssh -i id_rsa -p 1111 chip@192.168.0.100

키는 MobaXTerm 실행 파일과 같은 폴더에 있습니다.

감사!

편집하다:

[chip.client] $ ssh -p 1111 -i id_rsa chip@192.168.0.100 -v
Warning: Identity file id_rsa not accessible: No such file or directory.
OpenSSH_5.6p1, OpenSSL 0.9.8r 8 Feb 2011
debug1: Reading configuration data /etc/ssh_config
debug1: Connecting to 192.168.0.9 [192.168.0.100] port 1111.
debug1: Connection established.
debug1: identity file /home/chip/.ssh/id_rsa type -1
debug1: identity file /home/chip/.ssh/id_rsa-cert type -1
debug1: Remote protocol version 2.0, remote software version OpenSSH_5.3p1 Debian-3ubuntu7
debug1: match: OpenSSH_5.3p1 Debian-3ubuntu7 pat OpenSSH*
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_5.6
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: server->client aes128-ctr hmac-md5 zlib@openssh.com
debug1: kex: client->server aes128-ctr hmac-md5 zlib@openssh.com
debug1: SSH2_MSG_KEX_DH_GEX_REQUEST(1024<1024<8192) sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_GROUP
debug1: SSH2_MSG_KEX_DH_GEX_INIT sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_REPLY
debug1: checking without port identifier
Warning: Permanently added '[192.168.0.100]:1111' (RSA) to the list of known hosts.
debug1: ssh_rsa_verify: signature correct
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: /home/chip/.ssh/id_rsa
debug1: No more authentication methods to try.
Permission denied (publickey).

[01/09/2011 - 09:15.38] ~

2
디버그 출력을 보여주기 위해 "-v"옵션으로 실행할 수 있습니까?
cjc

그리고 당신은 어떤 결과를 얻습니까? ssh 서버 로그를 보셨습니까?
quanta

열쇠를 어디에 두어야할지 모르겠습니다. 오리지널 질문에 -v 출력을 추가했습니다.
Chip Sprague

답변:


7

기본적으로 MobaXterm은 홈 디렉토리 위치를 Windows Temp 디렉토리로 사용합니다. 따라서 MobaXterm을 닫는 즉시 생성 한 키를 사용할 수 없습니다.

키가 생성되면 Windows 드라이브의 다른 폴더에 보관하고 "-i"옵션의 전체 경로로 참조하십시오. Windows 드라이브는 MobaXterm에서 '/ drives / c /', 'drives / d /'등으로 불립니다. 개인 키가 E : \ keys \ id_rsa에 유지되면 명령은 다음과 같습니다.

ssh -p 1111 -i /drives/e/keys/id_rsa chip@192.168.0.100

MobaXterm을 정기적으로 사용하는 경우이를 처리하는 가장 좋은 방법은 기본 Temp 디렉토리가 아닌 홈 디렉토리의 영구 위치를 사용하는 것입니다. 설정-> 구성-> 기타 옵션-> 다음 지속 홈 디렉토리 사용 으로 이동하여이를 수행 할 수 있습니다 . 이 경우 키는 홈 디렉토리에있을 수 있으며 "i"옵션을 제공하지 않아도됩니다.


2

Putty 또는 다른 방법으로 이미 키를 설정 한 경우 가장 쉬운 방법은 복사하여 MobaXterm의 ssh 디렉토리에 붙여 넣는 것입니다.

따라서 복사 한 다음 키를 붙여 넣습니다.C:\Users\%USERNAME%\Documents\MobaXterm\home\.ssh

노트 :

퍼티의 기본 위치는 일반적으로 C:\Users\.ssh

Cygwin의 기본 위치는 일반적으로 C:\cygwin64\home\%USERNAME%\.ssh


또한 세션 구성마다 사용자 이름을 설정하고 개인 키를 할당해야합니다.
okwap

0

로그인 환경 측면에서 MobaXTerm의 작동 방식을 잘 모르겠습니다. 분명히 출력에서 ​​ssh는 /home/chip.ssh/id_rsa라는 이름의 키를 찾고 있습니다.

따라서 MobaXTerm을 시작할 때 "pwd"를 실행하고 그것이 어떤 디렉토리에 있다고 생각하는지 확인하고 키를 넣는 작업을 할 수 있습니까? ssh 명령에서 "ssh -i / path / to / ssh / key / id_rsa"와 함께 사용중인 다른 ssh 옵션을 사용하여 키의 전체 경로를 지정할 수 있어야합니다.

또는 대체 경로를 지정할 수 있습니다. MobaXTerm이 Cygwin 기반 인 경우 파일 시스템의 "C : \ Documents \ ssh \ id_rsa"에 해당하는 "/ cygdrive / c / Documents / ssh / id_rsa"와 같은 것을 말할 수 있습니다.


pwd는 그것이 / home / X에 있다고 생각했다. 여기서 X는 .exe가있는 디렉토리이다
Chip Sprague

/ home / X / id_rsa를 사용하려고 할 때 파일이나 디렉토리가 없다고 알려줍니다. /
Chip Sprague

OK, 방금 MobaXterm을 다운로드하여 사용해 보았습니다. "ssh-keygen"으로 새 키를 만들었습니다. / home / MobaXTerm이 실제로 어디에 있는지 잘 모르겠습니다. 어딘가에 일종의 가상 주택입니다. 어쨌든 "ssh -i ./id_rsa -l username server"를 지정하여 서버에 연결할 수있었습니다. 여기서 id_rsa는 현재 디렉토리입니다.
cjc

좋아, 키 파일은 "id_rsa"이고 MobaXTerm.exe와 같은 디렉토리에 있습니까?
Chip Sprague

열쇠는 / home / MobaXTerm에있었습니다. Windows 파일 시스템에서 실제로 어디에 있는지 모르겠습니다. 기존 키를 사용하지 않았습니다. "ssh-keygen"을 사용하여 / home / MobaXTerm에 새로운 것을 만들었습니다.
cjc
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.