sshd_config에서 AllowGroups와 AllowUsers를 모두 사용하는 방법은 무엇입니까? 시도 ssh testuser@<server_ip>하고 비밀번호를 입력하려고합니다. 내

나는 수정하기 위해 노력하고있어 /etc/ssh/sshd_config모두 내 전용 debian7 서버 AllowUsersAllowGroups. 그러나 나는 둘 다 함께 일할 수는없는 것 같습니다.


설정

  • 라는 사용자가 testuser있습니다.
  • 해당 사용자는 다음과 같은 그룹에 있습니다 ssh-users.

    $ groups testuser
    testuser : testuser ssh-users
    
  • testuser연결을 시도 ssh testuser@<server_ip>하고 비밀번호를 입력하려고합니다.

  • sshd_config여기에서 찾을 수 있습니다 : http://pastebin.com/iZvVDFKL- 기본적으로 내가 기본값에서 한 유일한 변경 사항은 다음과 같습니다.
    • 설정 PermitRootLogin no
    • 두 명의 사용자를 추가하십시오 AllowUsers(실제 사용자 이름은 서버마다 다릅니다)
  • service ssh restart수정 후 매번 실행됩니다 sshd_config.

문제

  • testuser 설정하면 연결할 있습니다AllowUsers:

    AllowUsers user1 user2 testuser
    
  • testuser그룹을 설정할 때 연결할 수 없습니다AllowGroups :

    AllowUsers user1 user2
    AllowGroups ssh-users
    

    어떤 결과 Permission denied, please try again.testuserssh를 암호 프롬프트에 암호를 입력합니다.


질문

  • 합니까의 AllowUsers재정 AllowGroups?
  • 사용자 이름을 수동으로 추가하지 않고이를 해결하는 가장 좋은 방법은 무엇입니까 AllowUsers? 이상적으로 ssh-users는 나중에 sshd_config다시 만질 필요없이 그룹에 사용자를 추가 할 수 있기를 바랍니다.


답변

예, AllowUsers이상 우선합니다 AllowGroups. 지정된 경우 지정된 패턴과 일치하는 사용자 만 AllowUsersSSHD 인스턴스에 연결할 수 있습니다.

sshd_config 맨 페이지 에 따르면 :

(가) / 허용 지시자는 다음과 같은 순서로 처리 부인 :
DenyUsers, AllowUsers, DenyGroups, 마지막 AllowGroups.

따라서 문제에 대한 해결책은 그룹이 선호하는 사용자 관리 방법 인 경우 그룹 액세스 지시문 중 하나를 사용하는 것입니다.


답변

제프의 대답은 설명 된대로 문제의 세부 사항을 포함,하지만 난 사용을 찾고이 질문에 발견 AllowUsers하고 AllowGroups약간 다른 시나리오를. 특정 서브넷에서 들어오는 그룹 (ssh)의 사용자로 들어오는 연결을 제한하고 싶었습니다.

sshd_config 의 연결 규칙은 필터입니다. 각 추가 규칙이 적용되면 허용되는 사용자 집합 만 줄일 수 있습니다. PATTERNSssh_config를 (5) 이 규칙의 형태를 설명한다.

또한 AllowUsers섹션에 따르면 sshd_config:

패턴이 USER @ HOST 형식 인 경우 USER 및 HOST를 별도로 검사하여 특정 호스트의 특정 사용자로 로그인을 제한합니다. HOST 기준에는 CIDR 주소 / 마스크 렌 형식으로 일치하는 주소가 추가로 포함될 수 있습니다.

AllowGroups USER @ HOST 양식을 수락하지 않습니다.

따라서 1) ssh 그룹의 사용자와 2) 특정 서브넷 / 호스트의 사용자를 수락하려면 다음을 수행하십시오.

AllowUsers *@192.168.1.0/24 *@*.example.com *@1.2.3.4
AllowGroups ssh

답변

다음은 작동하는 솔루션입니다.

AllowUsers user1 user2
Match group ssh-users
    AllowUsers *

답변