기본적으로 SSH를 통해 로그인할 수 있는 사용자는 누구입니까?

기본적으로 SSH를 통해 로그인할 수 있는 사용자는 누구입니까?
  1. 데비안 6을 설정할 때 루트 외에 어떤 사용자가 SSH를 통해 내 시스템에 로그인할 수 있는지 알고 싶습니다. 비밀번호는 알고 있습니까?

  2. Apache 2를 설치하면 www-data라는 사용자가 생성되었습니다. 이 사용자에게 SSH를 통해 내 시스템에 로그인할 수 있는 권한이 있습니까? 그러나 www-data에 모든 사람이 로그인할 수 있는 기본 비밀번호가 있다면 그럴 것 같지 않습니다.

  3. SSH를 통해 내 시스템에 로그인할 수 있는 사용자 목록은 어디에서 찾을 수 있습니까? SSH 구성 파일에서 아무것도 찾을 수 없습니다.

답변1

Paradeepchhetri는 완전히 정확하지 않습니다.

데비안에는 수정되지 않은 다음 내용이 있습니다 sshd_config:

PubkeyAuthentication yes
PermitEmptyPasswords no
UsePAM yes

따라서 SSH를 통한 로그인은 비밀번호 필드가 채워져 있거나 /etc/shadowSSH 키가 있는 사용자에게만 작동합니다 ~/.ssh/authorized_keys. is 및 for is PubkeyAuthentication에는 기본값이 있으므로 제거하더라도 동작은 동일합니다.yesPermitEmptyPasswordsno

문제의 예에서는 www-data데비안 설치 프로그램이 비밀번호나 www-data.

pam_access, 필요한 경우 AllowUsers더 미세한 제어를 위해 in 을 사용할 수 있습니다. 데비안에서는 이것이 강력히 권장됩니다.AllowGroupssshd_configUsePAM

답변2

기본적으로 Debian의 모든 사용자는 로그인이 허용됩니다.

파일을 편집하여 특정 사용자가 로그인하도록 허용하여 /etc/ssh/sshd_config이를 변경할 수 있습니다.

sshd_config 매뉴얼 페이지에서 언급한 바와 같습니다.

AllowUsers


이 키워드 뒤에는 공백으로 구분된 사용자 이름 패턴 목록이 올 수 있습니다 . 지정된 경우 이러한 패턴 중 하나와 일치하는 사용자 이름만 로그인이 허용됩니다. 사용자 이름만 유효하며
숫자로 된 사용자 ID는 인식되지 않습니다. 기본적으로 모든 사용자는 로그인이 허용됩니다. 패턴이 USER@HOSTthen 의 형태를 취하는 경우 개별적으로 USER검사 HOST하여 특정 호스트의 특정 사용자에 대한 로그인을 제한합니다. 허용/거부 지시어는 DenyUsers, AllowUsers, DenyGroupfinally 순서로 처리됩니다 AllowGroups.

답변3

기본적으로 SSH server는 설치되어 있지도 않습니다. openssh-server누구든지 SSH를 통해 로그인하려면 먼저 이 패키지를 설치해야 합니다 .

그 후에 모든 사용자는 두 가지 확인을 통과해야 합니다.

  • SSH 인증
  • PAM 계좌 확인

SSH 인증은 사용자가 대상 사용자의 .sh 파일에 올바른 비밀번호 /etc/shadow또는 올바른 권한이 있는 유효한 SSH 공개 키를 가지고 있어야 함을 의미합니다 ~/.ssh/authorized_keys.

유효한 비밀번호는 매뉴얼 페이지에 자세히 설명되어 있지만 crypt(3)기본적으로 사용자의 두 번째 필드가 or /etc/shadow로 시작 하면 $NUMBER$아마도 유효하고, *or !이면 유효하지 않습니다.

PAM 계정 확인은 기본적으로 계정이 만료되지 않았음을 의미합니다. 를 이용하여 확인할 수 있습니다 chage -l USERNAME.

제가 아는 한, 귀하의 질문에 답변해 드리자면:

  1. 루트와 설치 마법사 중에 생성한 계정만 새 시스템에 로그인할 수 있습니다.
  2. 아니요. www-data해시된 비밀번호가 있고 파일이 *없기 때문입니다.~www-data/.ssh/authorized_keys
  3. 여러 요구 사항이 있으므로 단일 목록은 없지만 아이디어를 얻으려면 다음을 실행해 볼 수 있습니다.grep -v '^[^:]*:[!*]:' /etc/shadow

관련 정보