특정 IP 범위 내에서 SSH를 통해 직접 루트 액세스를 허용하는 방법은 무엇입니까?

특정 IP 범위 내에서 SSH를 통해 직접 루트 액세스를 허용하는 방법은 무엇입니까?
  1. 집에 있을 때 SSH를 통해 직접 루트(192.168.1.0/24)에 로그인하고 싶습니다.

  2. 하지만 외부(예: 직장)에서는 내가 만든 사용자 지정 계정 중 하나를 사용하여 SSH를 통해 계속 로그인할 수 있습니다.

방금 시도했습니다.

Match Address 192.168.1.0/24
        PermitRootLogin yes

이제 나는 상자 밖에 완전히 잠겨 있습니다. 직장이나 집에서 로그인할 수 없습니다(다른 FreeBSD 상자에 연결했습니다).

이 작업을 수행하는 방법에 대한 아이디어가 있습니까? 감사해요

답변1

확인하다AUTHORIZED_KEYS 파일 형식sshd 매뉴얼 페이지의 섹션. 그런 다음 다음을 추가합니다 ~root/.ssh/authorized_keys(해당 ssh-ed25519 ...부분을 SSH 공개 키로 교체).

from="192.168.1.0/24" ssh-ed25519 AA...

그러면 해당 키는 특정 네트워크에서만 허용됩니다.

또한 sshd_config에 다음이 있는지 확인하십시오.

PermitRootLogin prohibit-password

답변2

구성 변경은 "192.168.1.0/24의 루트를 허용하고 다른 모든 것은 거부함"을 의미합니다. 즉, 기준을 충족하는 사람만 접근이 허용됩니다.

다음을 시도해 볼 수 있습니다.

AllowUsers [email protected].? anotheruser1 anotheruser2

이는 루트가 192.168.1.0/24 출신이고 다른 두 사용자는 어디 출신인지를 의미합니다.

관련 정보