man
OS X 및 기타 시스템 관련 페이지를 확인 하고 파일을 사용해 보았습니다.ssh
hosts.allow
hosts.deny
이 게시물, 그리고 sshd_config
소용이 없습니다.
$ cat /etc/hosts.allow
sshd: 192.168.0.4/255.255.255.0
$ cat /etc/hosts.deny
sshd: ALL
sshd_config
사용해 보았지만 성공 Match
하지 못했습니다(정확한 구성이 기억나지 않습니다).
sshd
내 시스템은 OS X 10.8.5이고 로컬 IP 192.168.0.4/24 또는 해당 로컬 이름에서의 액세스를 허용하고 게이트웨이 192.168.0.1을 포함한 다른 모든 호스트의 액세스를 거부하고 싶습니다 .
고쳐 쓰다아래 Stephen Kitt가 제안한 솔루션은 형식을 제외하고 작동합니다 AllowUsers name/pattern@hostname
. 그러면 다음이 기록됩니다.
sshd[31723]: debug1: attempt 6 failures 5 [preauth]
sshd[31723]: debug1: keyboard-interactive devs [preauth]
sshd[31723]: debug1: auth2_challenge: user=test devs= [preauth]
sshd[31723]: debug1: kbdint_alloc: devices 'pam' [preauth]
sshd[31723]: debug1: auth2_challenge_start: trying authentication method 'pam' [preauth]
sshd[31723]: Postponed keyboard-interactive for invalid user test from 192.168.0.4 port 55680 ssh2 [preauth]
sshd[31723]: error: PAM: authentication error for illegal user test from 192.168.0.4 via 192.168.0.5
sshd[31723]: Failed keyboard-interactive/pam for invalid user test from 192.168.0.4 port 55680 ssh2
sshd[31723]: Disconnecting: Too many authentication failures for test [preauth]
sshd[31723]: debug1: do_cleanup [preauth]
답변1
Match
를 사용하는 대신 단일 호스트에서 로그인을 허용하려면 다음이 나에게 도움이 되었습니다(in sshd_config
).
AllowUsers *@192.168.0.4
사용자는 대상의 로그인을 사용하여 192.168.0.4에서만 로그인할 수 있습니다. 원하는 경우 *
특정 로그인 이름으로 바꾸고 공백으로 구분된 여러 패턴을 지정할 수 있습니다.
AllowUsers [email protected] [email protected]