2개의 네트워크 카드가 있는 CentOS 7 서버가 있습니다. 하나는 개인 IP 192.168.1.1(lan0)이 있는 LAN 내부에 있고 다른 하나는 공용 인터넷 IP(ppp0)가 있습니다.
LAN 내에서 시작되는 연결의 경우 비밀번호 또는 공개 키 인증을 사용할 수 있기를 바랍니다.
인터넷 연결에는 공개 키만 필요합니다. 나는 /etc/ssh/sshd_config에서 이 작업을 수행했습니다.
PasswordAuthentication No
마지막 몇 줄은 다음과 같습니다:
Match address 192.168.1.0/24
PasswordAuthentication yes
그래서 테스트를 위해 제가 소유한 다른 컴퓨터(예: 인터넷의 VPS)에 로그인하고 SSH를 통해 로그인을 시도했습니다. 예상대로 다음과 같은 결과를 얻었습니다.
Permission denied (publickey).
하지만 내가 이해하지 못하는 것은 왜 내 /var/log/secure가 다음과 같은 무차별 대입 시도로 가득 차 있는지입니다: (IP 변경됨)
Apr 22 09:57:36 linuxhost1 sshd[15149]: input_userauth_request: invalid user webmaster [preauth]
Apr 22 09:57:36 linuxhost1 sshd[15149]: Received disconnect from a.b.c.d: 11: Bye Bye [preauth]
Apr 22 09:57:36 linuxhost1 sshd[15151]: Invalid user webmaster from a.b.c.d
Apr 22 09:57:36 linuxhost1 sshd[15151]: input_userauth_request: invalid user webmaster [preauth]
Apr 22 09:57:36 linuxhost1 sshd[15151]: Received disconnect from a.b.c.d: 11: Bye Bye [preauth]
Apr 22 09:57:36 linuxhost1 sshd[15153]: Invalid user webpop from a.b.c.d
Apr 22 09:57:36 linuxhost1 sshd[15153]: input_userauth_request: invalid user webpop [preauth]
Apr 22 09:57:36 linuxhost1 sshd[15153]: Received disconnect from a.b.c.d: 11: Bye Bye [preauth]
Apr 22 09:57:36 linuxhost1 sshd[15155]: Invalid user web from a.b.c.d
Apr 22 09:57:36 linuxhost1 sshd[15155]: input_userauth_request: invalid user web [preauth]
Apr 22 09:57:36 linuxhost1 sshd[15155]: Received disconnect from a.b.c.d: 11: Bye Bye [preauth]
Apr 22 09:57:37 linuxhost1 sshd[15157]: Invalid user william from a.b.c.d
Apr 22 09:57:37 linuxhost1 sshd[15157]: input_userauth_request: invalid user william [preauth]
Apr 22 09:57:37 linuxhost1 sshd[15157]: Received disconnect from a.b.c.d: 11: Bye Bye [preauth]
Apr 22 09:57:37 linuxhost1 sshd[15159]: Invalid user windowserver from a.b.c.d
Apr 22 09:57:37 linuxhost1 sshd[15159]: input_userauth_request: invalid user windowserver [preauth]
Apr 22 09:57:37 linuxhost1 sshd[15159]: Received disconnect from a.b.c.d: 11: Bye Bye [preauth]
이러한 무차별 대입 공격자들은 어떻게 username
.
답변1
이러한 무차별 대입 공격자들은 어떻게
username
.
명령줄에 사용자 이름을 입력합니다(또는 현재 사용자 이름이 기본값입니다). 항상 사용자 이름을 입력해야 합니다. 이를 통해 연결을 차단하는 것이 아니라 firewalld
비밀번호 iptables
인증만 차단하는 것입니다.
좀 더 디테일한 분들을 위해RFC4252, 섹션 5, SSH_MSG_USERAUTH_REQUEST
키 교환 이후의 메시지를 설명합니다. 요청한 사용자 이름이 포함된 필드가 있습니다. password
거부되는 인증을 요청하거나 , pubkey
키를 도난당하지 않는 한 거부되는 인증을 사용 none
하거나, 기본적으로 사용 가능한 방법을 나열하는 요청인 (섹션 5.2) 시도해야 할 첫 번째 방법입니다. ).
답변2
공개키 인증은사용자당. 사용자 이름과 비밀 키가 필요합니다. 실제로 동일한 키를 사용하여 동일한 서버에 있는 두 명의 다른 사용자에게 로그인할 수 있습니다.
유효한 키가 있든 없든 이 작업을 시도하면 "권한 거부" 메시지가 표시되고 서버 로그에 오류가 표시됩니다.ssh [email protected]
따라서 이 동작은 의도적인 것이며 실제로 공개 키 인증 자체와는 아무런 관련이 없습니다.