/localhome/user
동일한 네트워크에 있는 두 개의 별도 가상 머신에 두 명의 로컬 사용자(아래에 홈 디렉터리가 나열되어 있음)가 있습니다. 이들은 동일 uid
( 에 설정 /etc/passwd
) 및 동일한 사용자 이름( <user>
여기)을 공유합니다.
useradd user -g user
VM-A에서 다음 명령을 실행하여 공개 키를 생성합니다.
[user@VM-A] ssh-keygen -t rsa -C "[email protected]" -b 4096
VM-A에서 생성된 공개 키를 복사하여 /localhome/dev/.ssh/authorized_keys
VM-B에 배치했습니다. VM-A에서 VM-B로 SSH를 시도하면 비밀번호 프롬프트가 나타납니다.
[user@VM-A] ssh user@VM-B
password:
권한이 올바르게 설정되었는지 확인했습니다( .ssh
두 디렉터리 모두 700, VM-B에서는 664) authorized_keys
. 또한 두 사용자가 모두 로 설정되어 있고 좋아하지 않는지 확인했습니다 /bin/bash
.nologin
/etc/passwd
restorecon -R -v ~/.ssh
VM-A와 VM-B에서도 실행 해 보았습니다 .
제가 완전히 미친 것은 아닌지 확인하기 위해 주어진 계정을 사용하여 ssh
비밀번호 없이도 할 수 있는지 확인했습니다. 이 계정은 마운트된 "기본" 드라이브에 액세스할 수 있습니다. 먼저 VM-A에서 VM-B로 이동을 시도했는데 ssh
비밀번호를 묻는 메시지가 표시되었습니다. 그런 다음 키를 생성하고 업데이트한 authorized_keys
후 다시 시도했습니다. 두 번째로 ssh
내 계정을 사용하여 다른 가상 머신에 성공적으로 연결했습니다.
로컬 사용자를 사용하여 두 개의 서로 다른 가상 머신에 SSH 키를 설정할 수 있습니까?
답변1
귀하의 권한이 authorized_keys
너무 광범위합니다. 당신은 그들을 고칠 수 있습니다
chmod u=rw,go= ~/.ssh/authorized_keys
예를 들어 서버에서 인증서를 사용할 수 없는 이유를 보안 로그에서 확인할 수 있습니다 /var/log/auth.log
.