원격 시스템에 홈 디렉터리가 없는 경우 공개 키를 통해 SSH를 통해 연결할 수 있나요?

원격 시스템에 홈 디렉터리가 없는 경우 공개 키를 통해 SSH를 통해 연결할 수 있나요?

현재 FOO 사용자에게 ssh를 수행한 다음 BAR 사용자에게 sudo를 수행해야 합니다.

공개 키를 사용하여 ssh를 실행하고 싶지만 원격 시스템에는 사용자 FOO에 대한 홈 디렉터리가 없으므로 분명히 .ssh/authorized_keys가 없습니다. 공개 키를 어디에 넣을 수 있나요?

/home 디렉토리가 비어 있으므로 사용자에 대해 홈 디렉토리가 생성되지 않은 것으로 보이며 시스템에 대한 루트 권한이 없습니다.

감사해요.

답변1

귀하의 사용자 이름은 다음과 같습니다 testssh.

  • /etc/ssh/authorized_keys_testssh키를 생성 하고 거기에 넣습니다.
  • 다음을 추가하세요 /etc/ssh/sshd_config.
Match User testssh
    AuthorizedKeysFile  /etc/ssh/authorized_keys_%u

그리고 sshd를 다시 시작하세요. 귀하의 사용자는 자신의 개인 키를 사용하여 SSH를 통해 연결할 수 있습니다.

답변2

짧은 답변

그렇지 않을 수도 있습니다. 시스템 관리자에게 문의하세요.


더 긴 답변

첫째, /home디렉터리가 비어 있다고 해서(존재하지 않더라도) 반드시 사용자에게 홈 디렉터리가 없다는 의미는 아닙니다. 환경 변수의 값을 볼 수 있습니다 HOME.

$ echo $HOME
/path/to/nonstandard/homedirectory

또는 getent다음 명령을 사용하십시오.

$ getent passwd username
username:*:1001:1001:User Name:/path/to/nonstandard/homedirectory:/bin/bash

사용자에게 실제로 홈 디렉터리가 없는 것으로 밝혀진 경우 authorized_keys에도 서버 관리자가 파일에 대해 비표준 위치를 설정했다면 공개 키를 사용할 수 있습니다.

당신이 사용하고 있다고 가정SSH 열기, 파일 위치는 authorized_keys구성 파일 AuthorizedKeysFile의 키워드를 통해 지정할 수 있습니다 sshd_config. 자세한 내용은 설명서를 참조하세요.

기본값은 입니다 ~/.ssh/authorized_keys. /etc/ssh/sshd_config기본값이 재정의되었는지 확인하려면 설정을 확인해야 합니다 . 루트 액세스 권한이 없으므로 변경하려는 경우 시스템 관리자에게 도움을 요청해야 할 수도 있습니다.

홈 디렉터리가 없고 시스템 관리자가 파일의 다른 위치를 구성하지 않았으며 authorized_keys컴퓨터에 대한 관리 권한이 없는 것으로 밝혀지면 키를 사용하지 못할 수 있습니다. 기반 인증 - 시스템 관리자에게 문의하세요.

관련 정보