데비안을 실행하는 vps가 있고 ssh를 통해 루트로 액세스할 수 있습니다. SSH 액세스를 허용하도록 사용자 계정을 설정하고 싶습니다. 나는 루트로 로그인하고 사용자를 생성했습니다.
useradd -m user
사용자에 대해 생성된 비밀번호:
passwd user
그리고 이 사용자를 /etc/ssh/sshd_config 파일에 추가합니다:
AllowUsers user
그런 다음 로컬 컴퓨터에서 키를 만들었습니다.
ssh-keygen -t rsa -b 4096 -C "user"
vps에서 /home/user/.ssh/authorized_keys 파일을 만들었습니다.
공개 키에 붙여넣으세요.
하지만 다음 사용자로 로그인할 수 없습니다.
$ ssh user@vpshost
user@vpshost: Permission denied (publickey).
$
내가 뭘 잘못했나요? 어떤 곳에서는 SSH 서비스를 다시 시작해야 한다는 내용을 읽었지만(다른 곳에서는 필요하지 않다고 합니다) vps에 대한 유일한 액세스는 ssh를 통해서만 이루어지기 때문에 ssh에서 ssh를 다시 시작할 수 없다는 내용을 읽었습니다. ), 그게 문제인지 궁금합니다.
제안?
답변1
일반적인 문제는 서버 또는 클라이언트의 .ssh 폴더에 있는 잘못된 파일 권한입니다. 공개 키를 서버에 복사하는 가장 안전한 방법은 ssh-copy-id 명령을 사용하는 것입니다. 그러면 Authorized_keys 파일에 적절한 권한이 설정됩니다(정확히 기억하면 600 또는 640).
세부 수준을 높여볼 수도 있습니다.
ssh -vvv 사용자@vpshost