根据IP地址更改SSHauthentication方法

我如何设置我的SSH服务器,使validation方法取决于客户端IP地址?

internal network -> password login enabled request from WAN -> only passkeys enabled 

我会避免为每个用户设置两个帐户(内部/外部),并相应地重写configuration文件。

看看sshd_config的手册页。 如果你有一个合理的最新版本的OpenSSH,你可以使用Match指令:

 Match Address 192.168.0.0/24 PasswordAuthentication yes Match Address 10.0.0.0/24 PasswordAuthentication no 

但是正如ErikA所说的那样,无论如何只要使用keyauth,不要让你这么做;-)

为什么要允许密码authentication?

如果是从内外连接的同一组用户,那么他们已经想出了如何获得关键authentication。

老实说,当正确设置(密码保护私钥,使用ssh-agent的客户端)时,密钥validation比每次input密码要容易得多。