Linux 上的hosts.allow 格式和示例Linux 上的hosts.allow 格式和示例Linux 上的hosts.allow 格式和示例Linux 上的hosts.allow 格式和示例
  • 文章
  • 正则表达式
    • 工具
  • 登录
找到的结果: {phrase} (显示: {results_count} 共: {results_count_total})
显示: {results_count} 共: {results_count_total}

加载更多搜索结果...

搜索范围
模糊匹配
搜索标题
搜索内容
发表 admin at 2025年2月28日
类别
  • 未分类
标签

Linux 上的hosts.allow 格式和示例

Linux 系统可以利用 hosts.allow 文件来指定允许连接到它的 IP 地址、主机名或域。这专门适用于 TCP 包装的服务。 hosts.allow 文件与 hosts.deny 结合使用来确定连接尝试是否被接受或拒绝。

hosts.allow 文件只是一个语法相当简单的纯文本配置文件。在本教程中,您将看到 hosts.allow 文件的示例,我们将向您展示如何针对不同可能的情况设置文件格式。

在本教程中您将学习:

  • hosts.allow 文件有什么作用?

  • 如何编辑和格式化 hosts.allow 文件

Linux 上的hosts.allow 格式和示例

hosts.allow 文件包含允许主机或网络访问文件内指定服务的规则列表。可接受的格式是每行列出一个规则。下面,我们将展示您可以在文件中使用的规则的各种示例。

注意
尝试连接时,将查阅hosts.allow 文件以确定是否允许连接。如果允许,则随后查阅hosts.deny 文件,以查看是否有明确拒绝连接的规则。

  1. 通常的语法如下。每个值均由冒号 : 分隔。

    
    service : host/network
    

    您还可以提供选项,但这并不常见。我们将在下面介绍一些其他的利基选择。如有必要,可以添加更多选项,每个选项之间用另一个冒号分隔。

    
    service : host/network [: <option>: <option>: ...]
    
  2. 以下行将允许所有流量到达 sshd 服务。 ALL 用作通配符。

    
    sshd : ALL
    
  3. 此行将允许来自 10. 网络上的所有主机的连接。然后,来自所有其他主机的连接可以被 hosts.deny 文件拒绝。这种类型的配置将按预期工作,因为 allow 行位于另一个文件中相应的 deny 行之前,因此将首先被触发。

    
    sshd : 10.
    
  4. 接受来自特定 IPv4 和 IPv6 地址的连接:

    
    sshd : 10.10.136.241
    sshd : [2a02:2149:88f1:4c00:9991:9daa:b580:aee1]
    

    请注意,IPv6 地址必须括在 [ ] 括号内。

  5. 您还可以指定接受或拒绝来自的连接的主机名,而不是使用 IP。

    
    sshd : some.host
    
  6. 接受来自所有使用 .linuxconfig.org 域名的主机的连接。

    
    sshd : .linuxconfig.org
    
  7. 您还可以对服务和主机/网络字段使用通配符。这将接受与任何服务的所有连接。这将使所有其他规则(包括 hosts.deny 中的规则)变得无关紧要,因为所有连接在有机会被拒绝之前都将被该规则接受。

    
    ALL : ALL
    
  8. 要仅接受本地连接,可以使用 LOCAL 通配符。

    
    sshd : LOCAL
    
  9. EXCEPT 运算符可用于在其他所有包罗万象的规则中创建例外。例如,此规则将允许来自 .linuxconfig.org 域名的所有连接(一台主机除外)。

    
    sshd : .linuxconfig.org EXCEPT terminal.linuxconfig.org
    

结束语

在本教程中,我们了解了如何在 Linux 系统上使用各种过滤规则来格式化 hosts.allow。这可能是过滤 TCP 包装服务流量的有效方法,尽管随着 Linux 内核中内置的强大 iptables/nftables 防火墙的兴起,它已经不再常用。

©2015-2025 艾丽卡 support@alaica.com