Tik*_*ik0 0 ssh services hosts
我正在运行一个小型服务器,我想在其中使用/etc/hosts.deny阻止一些特殊的 IP 。如果我输入类似
ALL: <IP>
Run Code Online (Sandbox Code Playgroud)
只有 ssh 服务会被IP阻止。所有其他服务,如 ftp、http 等,仍然可以通过IP访问。host.deny文件没有定义全局规则吗?
/etc/hosts.deny 和 /etc/hosts.allow 是 TCP-Wrapper 的一部分,这是一个由 Wietse Venema 在九十年代开发的用于拒绝黑客访问的程序。
TCP 包装器控制从 /etc/inetd.conf 运行的进程的 TCP 访问。大多数现代 Linux 发行版(所有基于 Debian、Arch Linux...)都不再有inetd。
一些应用程序还受 TCPwrapper 控制,因为它们是用 libwrap 库编译的,因此即使它们不是从 /etc/inetd.conf 运行,也可以识别 tcpwrapper。据我所知,这些应用程序包括 telnet、ssh、sendmail、pop3 和 stunnel。
您可以通过strings命令检查您的应用程序是否支持 tcp-wrapper-aware :
# strings /usr/sbin/sshd|grep hosts_access
hosts_access
Run Code Online (Sandbox Code Playgroud)
或通过ldd:
# ldd /usr/sbin/sshd | grep libwrap
libwrap.so.0 => /lib/x86_64-linux-gnu/libwrap.so.0 (0x00007f7059e7a000)
Run Code Online (Sandbox Code Playgroud)
如今,阻止入侵者访问您的系统的正确方法是使用iptables:
iptables -A INPUT -s 11.22.33.44 -j DROP
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
3503 次 |
最近记录: |