지정된 IP를 가진 컴퓨터만 SSH를 통해 로그인하도록 허용하는 방법은 무엇입니까?

지정된 IP를 가진 컴퓨터만 SSH를 통해 로그인하도록 허용하는 방법은 무엇입니까?

허용된 IP를 가진 컴퓨터만 SSH를 통해 내 시스템에 로그인하도록 허용하고 싶습니다.

예를 들어, IP 나 SSH를 userA통해서만 로그인할 수 있으며 , 다른 IP로는 로그인할 수 없습니다 . 그리고 ssh를 통해서만 로그인이 가능하며 , 다른 ip로는 로그인이 불가능합니다 .xx.xx.xx.xxyy.yy.yy.yyuserAuserBzz.zz.zz.zzzz.zz.zz.zzuserB

이를 달성하려면 Linux를 어떻게 설정해야 합니까?

답변1

/etc/ssh/sshd_config다음을 추가하세요 .

AllowUsers [email protected] [email protected] userA
AllowUsers [email protected] userB

그런 다음 SSH 데몬을 다시 시작합니다.

다음에 설명된 대로 와일드카드를 사용할 수 있습니다.무늬부분ssh_config 매뉴얼.

답변2

iptables를 통해 이를 수행할 수 있습니다.

주소 1.2.3.4에서 SSH(포트 22)에 대한 모든 연결:

iptables -A INPUT -p tcp -m state --state NEW --source 1.2.3.4 --dport 22 -j ACCEPT

다른 모든 SSH 연결을 거부합니다.

iptables -A INPUT -p tcp --dport 22 -j DROP

답변3

인증을 위해 PAM을 사용하는 경우 한 가지 방법 pam_rhosts은 각 사용자가 연결이 허용되는 파일을 지정할 수 있도록 하는 것입니다.required/etc/pam.d/ssh.rhosts

파일의 인증 모듈은 pam.d공개 키 로그인에 사용되지 않습니다(예: auth required pam_deny.so내 컴퓨터에서 비밀번호 로그인을 방지해야 함). 아직 다른 모듈( accountsession)을 사용하고 있습니다.

관련 정보