우분투 서버에서 Windows 2008로의 SSH는 반복적으로 비밀번호를 묻습니다.

우분투 서버에서 Windows 2008로의 SSH는 반복적으로 비밀번호를 묻습니다.

SSH 모드를 사용하여 GIT를 설정하려고 합니다. 중앙 GIT 저장소는 Windows 2008 서버를 실행하는 NAS 장치에 있고 사용자 GIT 저장소는 ubuntu 12.04에 있습니다.

Windows 시스템에 SSH를 시도했지만 성공적으로 들어갈 수 없습니다.

SSH 키가 설정되지 않았지만 올바른 비밀번호를 제공하는 것만으로는 들어갈 수 없기 때문에 그 이전에도 문제가 있는 것 같습니다. SSH 명령의 출력은 다음과 같습니다.

dba@clpserv01:~$ ssh -v -l administrator clpnas
OpenSSH_5.9p1 Debian-5ubuntu1, OpenSSL 1.0.1 14 Mar 2012
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 19: Applying options for *
debug1: Connecting to clpnas [***.***.***.***] port 22.
debug1: Connection established.
debug1: identity file /home/dba/.ssh/id_rsa type -1
debug1: identity file /home/dba/.ssh/id_rsa-cert type -1
debug1: identity file /home/dba/.ssh/id_dsa type -1
debug1: identity file /home/dba/.ssh/id_dsa-cert type -1
debug1: identity file /home/dba/.ssh/id_ecdsa type -1
debug1: identity file /home/dba/.ssh/id_ecdsa-cert type -1
debug1: Remote protocol version 2.0, remote software version OpenSSH_5.5p1 Debian-6+squeeze2
debug1: match: OpenSSH_5.5p1 Debian-6+squeeze2 pat OpenSSH*
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_5.9p1 Debian-5ubuntu1
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: server->client aes128-ctr hmac-md5 none
debug1: kex: client->server aes128-ctr hmac-md5 none
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: Server host key: RSA bd:37:d1:98:51:2a:d6:b5:f5:c7:98:d8:74:2c:4e:cd
debug1: Host 'clpnas' is known and matches the RSA host key.
debug1: Found key in /home/dba/.ssh/known_hosts:1
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,password,keyboard-interactive
debug1: Next authentication method: publickey
debug1: Trying private key: /home/dba/.ssh/id_rsa
debug1: Trying private key: /home/dba/.ssh/id_dsa
debug1: Trying private key: /home/dba/.ssh/id_ecdsa
debug1: Next authentication method: keyboard-interactive
Password:
debug1: Authentications that can continue: publickey,password,keyboard-interactive
Password:

답변1

가장 먼저 할 일은 홈 폴더에 대한 권한을 확인하는 것입니다.

*nix 명령줄에서 다음 명령을 실행합니다.

1) 홈 디렉터리로 이동합니다.

cd ~

2) 홈 디렉토리에 대한 권한을 확인하십시오.

ls -dl
(if that doesn't work, try sudo -dl)

결과는 다음과 유사해야 합니다.

drw------- 10 shaheed shaheed 4096 Nov 20 09:44 .

두 번째부터 네 번째 문자는 사용자의 권한을 나타내며 이 경우에는 rw-읽기/쓰기가 가능합니다. 메모: 대신에 말한다면 rwx그게 문제입니다. ssh는 보안 문제로 인해 홈 디렉토리에 쓰기 권한이 있는 것을 좋아하지 않습니다.

내 생각엔 당신의 글이 다음과 비슷할 것 같습니다.

drwx------ 10 shaheed shaheed 4096 Nov 20 09:44 .

네 번째 위치의 문자 x는 사용자에게 디렉터리에 대한 실행 권한이 있음을 나타냅니다. 이것은 안돼요.

이 상황을 해결하려면 다음 명령을 사용하여 실행 권한을 제거하십시오.

chmod 600 .

그런 다음 다음 명령을 실행하여 권한이 올바르게 설정되었는지 확인합니다.

ls -dl

다음 메시지가 표시됩니다.

ls: cannot access .: Permission denied

더 이상 실행 권한이 없다는 것을 나타내는 것은 좋은 일입니다.

다음 실행:

sudo ls -dl 

그리고 당신은 모든 것이 사랑이라는 것을 확인할 수 있을 것입니다! 결과는 다음과 유사해야 합니다.

drw------- 10 shaheed shaheed 4096 Nov 20 09:44 .

이제 git 사용자 비밀번호를 입력하지 않고도 ssh에 접속할 수 있습니다.

관련 정보