通过回复消息阻止传入的 ssh

通过回复消息阻止传入的 ssh

我想阻止所有从一组特定的 ip 传入我的系统的 ssh,并向它们发送一条典型的消息,内容如下:

You don't have permissions to access this server as the specified user. Contact admin to get appropriate access".

我知道我们可以使用防火墙规则阻止传入的 ssh,但是我如何阻止特定的集合(请注意,该集合中的 ip 可能不是连续的,例如该集合可能包含以下 ip 范围甚至单个 ip:

{192.168.1.1-9, 192.168.15-20, 192.168.1.25, ...})

然后将上述消息发送到前面提到的那些 ip。

PS:我使用的是ubuntu-14.04

答案1

在 sshd_config 中,您可以设置一个 Match 块来发出自定义横幅(文件路径),并明确将 MaxAuthTries 设置为零。

Match Address 192.168.1.?,192.168.1.15,192.168.1.4?
    Banner /etc/ssh_refused_banner
    MaxAuthTries 0

我不相信匹配模式列表可以做范围,但可以做通配符?和 * 应该可以工作,以及像 192.168.1.0/24 这样的子网。在整个子网上进行匹配并明确将允许的地址列入白名单可能会更容易,例如“192.168.1.0/24,!192.168.1.12,!192.168.1.35”

相关内容