通过sshd_config限制用户登录

在CentOS Stream或其他现代的Linux发行版中,你可能会发现传统的hosts.deny和 hosts.allow文件已经不存在或不被使用。这是因为随着时间的推移,系统的安全策略和网络管理工具已经发生了演变,许多系统管理员和发行版维护者选择使用更现代、更灵活的工具来管理访问控制。

请注意,移除或禁用hosts.deny和hosts.allow文件不会影响大多数现代系统的安全性,因为这些文件通常不被广泛使用。然而,如果你依赖这些文件来控制对网络服务的访问,你需要考虑实施替代的安全策略。hosts.deny和 hosts.allow文件是TCP Wrapper的一部分,这是一个用于控制对网络服务的访问的工具。然而,TCP Wrapper在许多现代系统上被认为过于简单和有限,因此可能不再默认安装或配置。

最后,如果你确实需要使用TCP Wrapper,你可以手动创建hosts.deny和hosts.allow文件,并安装和配置TCP Wrapper工具。但是,请注意这样做可能会引入潜在的安全风险,并且可能不是现代系统的最佳实践。如果你需要控制对网络服务的访问,你可以考虑使用以下替代方案:

  • 防火墙规则:使用系统的防火墙工具(如 firewalld、iptables 或 nftables)来定义允许或拒绝的访问规则。这些工具提供了更强大和灵活的方式来控制网络流量。
  • SELinux:如果你的系统启用了 SELinux(Security-Enhanced Linux),你可以利用它来实施更细粒度的访问控制策略。SELinux 提供了强大的安全功能,可以帮助你限制对网络服务的访问。
  • 通过配置sshd_config中AllowUsers实现SSH访问控制

1、查看linux是否支持hosts.deny

# ll /etc/hosts.allow

# ldd /usr/sbin/sshd |grep libwrap.so.0

没有显示libwrap.so.0库文件表示此服务器上安装的SSH没有应用libwrapped库文件,也就不能用tcp_Wrappers防火墙控制访问策略。以下为支持tcp_Wrappers查看结果:

2、通过配置sshd_config限制用户登录

CentOS Linux 8以后就不再支持/etc/hosts.allow和/etc/hosts.deny

  • CentOS Linux 8
  • CentOS Stream 9
  • CentOS Stream 8

以上3种系统均可以按以下方法来实现SSH访问控制

2.1查看sshd_config中AllowUsers参数说明

man sshd_config

2.2 限制来192.168.3.28所有用户连接

vim /etc/ssh/sshd_config

DenyUsers *@192.168.3.28 

AllowUsers root@192.168.3.10 #只充许来192.168.3.10的root用户连接,其均不能连接

systemctl restart sshd

2.3 只充许来192.168.3.10的root用户连接,其均不能连接

vim /etc/ssh/sshd_config

AllowUsers root@192.168.3.10 #只充许来192.168.3.10的root用户连接,其均不能连接

systemctl restart sshd

注:以上两种情况,请根实际需求进行相关配置,以防配置相互冲突。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

码哝小鱼

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值