OpenWrt 라우터가 있는데 SSH에서 비밀번호 인증을 비활성화하여 키로만 인증할 수 있도록 하고 싶습니다. 이는 다음을 통해 쉽게 달성할 수 있습니다.가이드그러나 문서에는 WAN 인터페이스에서만 비밀번호 인증을 비활성화하고 싶습니다. 이것이 가능합니까?
답변1
이 답변은 OpenSSH에 적용됩니다. OpenWRT에는 기본적으로 Dropbear가 포함되어 있으므로 다음과 같이 교체해야 합니다.이 링크(기본적으로 설치 openssh-server
및 비활성화 dropbear
).
OpenSSH를 사용하면 다음 두 가지 메커니즘을 사용하여 원하는 것이 가능합니다.
sshd
LAN 및 WAN 인터페이스에 대한 별도의 구성. 이는 고정 WAN IP가 있는 경우에만 잘 작동합니다(sshd
특정 인터페이스를 듣도록 지시하는 것은 불가능하며 특정 IP만 듣도록 지시할 수 있습니다 ).- LAN의 클라이언트에 대해서만 비밀번호 인증을 허용하십시오.
옵션 1:
LAN 구성 파일(예: /etc/ssh/sshd_config
기본 파일)에는 다음과 같은 내용이 있습니다.
PasswordAuthentication yes
Listen 192.168.1.1:22
WAN 구성 파일(예 /etc/ssh/sshd_config_wan
:
PasswordAuthentication no
Listen 10.1.1.1:22
위에서 192.168.1.1은 LAN 인터페이스 IP이고, 10.1.1.1은 WAN IP 주소이며, 두 경우 모두 22는 수신할 포트입니다. -f
옵션을 사용하여 로드할 구성 파일을 지정할 수 있습니다 sshd
. 기본 init 스크립트를 새 스크립트에 복사하고 sshd
으로 호출하도록 수정해야 합니다 -f /etc/ssh/sshd_config_wan
.
옵션 2:
에서는 /etc/ssh/sshd_config
이것을끝파일 중:
PasswordAuthentication no
Match address 192.168.1.0/24
PasswordAuthentication yes
여기서는 LAN 주소(여기서는 192.168.1.0/24로 가정)를 제외하고 비밀번호 인증을 비활성화합니다.
답변2
서로 다른 인터페이스를 수신하는 서로 다른 구성을 사용하여 SSH 서버의 두 인스턴스를 실행할 수 있습니다.