如何在Linux下使用TCP封装器来加强网络服务安全

本文涉及的产品
云解析 DNS,旗舰版 1个月
全局流量管理 GTM,标准版 1个月
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
简介:

在这篇文章中,我们将会讲述什么是 TCP 封装器(TCP wrappers)以及如何在一台 Linux 服务器上配置他们来限制网络服务的权限。在开始之前,我们必须澄清 TCP 封装器并不能消除对于正确配置防火墙的需要。

就这一点而言,你可以把这个工具看作是一个基于主机的访问控制列表,而且并不能作为你的系统的终极安全措施。通过使用一个防火墙和 TCP 封装器,而不是只偏爱其中的一个,你将会确保你的服务不会被出现单点故障。

正确理解 hosts.allow 和 hosts.deny 文件

当一个网络请求到达你的主机的时候,TCP 封装器会使用 hosts.allow 和 hosts.deny (按照这样的顺序)来决定客户端是否应该被允许使用一个提供的服务。.

在默认情况下,这些文件内容是空的,或者被注释掉,或者根本不存在。所以,任何请求都会被允许通过 TCP 过滤器而且你的系统被置于依靠防火墙来提供所有的保护。因为这并不是我们想要的。由于在一开始我们就介绍过的原因,清确保下面两个文件都存在:


  
  
  1. # ls -l /etc/hosts.allow /etc/hosts.deny 

两个文件的编写语法规则是一样的:


  
  
  1. <services> : <clients> [: <option1> : <option2> : ...] 

在文件中,

1. services 指当前规则对应的服务,是一个逗号分割的列表。

2. clients 指被规则影响的主机名或者 IP 地址,逗号分割的。下面的通配符也可以接受:

1).ALL 表示所有事物,应用于clients和services。

2).LOCAL 表示匹配在正式域名中没有完全限定主机名(FQDN)的机器,例如 localhost。

3).KNOWN 表示主机名,主机地址,或者用户是已知的(即可以通过 DNS 或其它服务解析到)。

4).UNKNOWN 和 KNOWN 相反。

5).PARANOID 如果进行反向 DNS 查找彼此返回了不同的地址,那么连接就会被断开(首先根据 IP 去解析主机名,然后根据主机名去获得 IP 地址)。

3. 最后,一个冒号分割的动作列表表示了当一个规则被触发的时候会采取什么操作。

你应该记住 /etc/hosts.allow 文件中允许一个服务接入的规则要优先于 /etc/hosts.deny 中的规则。另外还有,如果两个规则应用于同一个服务,只有第一个规则会被纳入考虑。

不幸的是,不是所有的网络服务都支持 TCP 过滤器,为了查看一个给定的服务是否支持他们,可以执行以下命令:


  
  
  1. # ldd /path/to/binary | grep libwrap 

如果以上命令执行以后得到了以下结果,那么它就可以支持 TCP 过滤器,sshd 和 vsftpd 作为例子,输出如下所示。

查找 TCP 过滤器支持的服务

如何使用 TCP 过滤器来限制服务的权限

当你编辑 /etc/hosts.allow 和 /etc/hosts.deny 的时候,确保你在最后一个非空行后面通过回车键来添加一个新的行。

为了使得 SSH 和 FTP 服务只允许 localhost 和 192.168.0.102 并且拒绝所有其他用户,在 /etc/hosts.deny 添加如下内容:


  
  
  1. sshd,vsftpd : ALL 
  2. ALL : ALL 

而且在 /etc/hosts.allow 文件中添加如下内容:


  
  
  1. sshd,vsftpd : 192.168.0.102,LOCAL 

这些更改会立刻生效并且不需要重新启动。

在下图中你会看到,在最后一行中删掉 LOCAL 后,FTP 服务器会对于 localhost 不可用。在我们添加了通配符以后,服务又变得可用了。

确认 FTP 权限

为了允许所有服务对于主机名中含有 example.com 都可用,在 hosts.allow 中添加如下一行:


  
  
  1. ALL : .example.com 

而为了禁止 10.0.1.0/24 的机器访问 vsftpd 服务,在 hosts.deny 文件中添加如下一行:


  
  
  1. vsftpd : 10.0.1. 

在最后的两个例子中,注意到客户端列表每行开头和结尾的点。这是用来表示 “所有名字或者 IP 中含有那个字符串的主机或客户端”

这篇文章对你有用吗?你有什么问题或者评论吗?请你尽情在下面留言交流。





作者:Gabriel Cánepa
来源:51CTO
目录
相关文章
|
11天前
|
存储 安全 算法
网络安全与信息安全:构建安全数字生活的基石
【10月更文挑战第5天】 在数字化时代,网络安全与信息安全已成为维护个人隐私、企业机密和国家安全的重要防线。本文旨在探讨网络安全漏洞的形成与防范、加密技术的应用及其重要性,以及提升公众安全意识的必要性。通过深入浅出的方式,帮助读者理解网络安全的核心要素,并强调每个人都是网络安全生态中不可或缺的一环。
37 1
|
11天前
|
存储 安全 网络安全
云计算与网络安全:探索云服务中的安全挑战与对策
【10月更文挑战第6天】在数字化转型的浪潮中,云计算已成为企业IT架构的核心。然而,随着其应用的广泛性,网络安全问题也日益凸显。本文将深入探讨云计算环境下的安全挑战,并提出相应的安全策略和最佳实践,以帮助组织构建更加安全的云环境。我们将从云服务的基础知识出发,逐步深入到网络安全和信息安全的关键领域,最后通过代码示例展示如何实施这些安全措施。
|
8天前
|
存储 安全 5G
|
10天前
|
存储 安全 网络安全
云端盾牌:云计算时代的网络安全守护在数字化浪潮中,云计算以其高效、灵活的特性成为企业转型的加速器。然而,伴随其迅猛发展,网络安全问题亦如影随形,成为悬在每个组织头顶的达摩克利斯之剑。本文旨在探讨云计算服务中的网络安全挑战,分析信息安全的重要性,并提出相应对策,以期为企业构建一道坚实的云端防护网。
在当今这个数据驱动的时代,云计算已成为推动创新与效率的关键力量。它允许用户随时随地访问强大的计算资源,降低了企业的运营成本,加速了产品上市时间。但随之而来的网络威胁也日益猖獗,尤其是对于依赖云服务的企业而言,数据泄露、身份盗用等安全事件频发,不仅造成经济损失,更严重损害品牌信誉。本文深入剖析云计算环境中的安全风险,强调建立健全的信息安全管理机制的重要性,并分享一系列有效策略,旨在帮助企业和个人用户在享受云服务带来的便利的同时,也能构筑起强有力的网络防线。
|
11天前
|
Ubuntu Linux 网络安全
Linux中服务管理问题
【10月更文挑战第4天】
11 2
|
11天前
|
存储 安全 网络安全
云计算与网络安全的融合之路:探索云服务的安全边界
【10月更文挑战第6天】随着云计算技术的飞速发展,越来越多的企业和个人选择将数据和应用迁移到云端。然而,随之而来的网络安全问题也日益凸显。本文将从云计算的基础概念入手,探讨云服务中的网络安全挑战,并提出相应的信息安全策略。文章旨在为读者提供一个关于如何在享受云计算便捷的同时,保障数据安全和隐私保护的全面视角。
|
7天前
|
存储 安全 网络安全
云计算与网络安全:构建安全的数字基石
【10月更文挑战第10天】 在当今数字化时代,云计算已成为推动企业创新和效率的关键驱动力。然而,随着数据和业务向云端迁移,网络安全问题变得日益突出。本文将探讨云计算与网络安全的融合,分析云服务中的主要安全挑战,并讨论如何通过先进的信息安全技术来应对这些挑战。我们将重点关注加密技术、访问控制、安全审计以及云服务提供商(CSP)的角色,以构建一个安全可靠的云计算环境。
|
9天前
|
安全 大数据 网络安全
网络安全与信息安全:守护数字世界的坚盾在数字化浪潮席卷全球的今天,网络安全已成为维系社会稳定、促进经济发展的重要基石。本文旨在深入探讨网络安全漏洞、加密技术及安全意识等核心议题,通过分享前沿知识与实用策略,助力构建更加安全可靠的网络环境。
【10月更文挑战第8天】 本文聚焦网络安全领域的关键要素,包括安全漏洞的识别与防御、加密技术的演进与应用,以及安全意识的培养与提升。通过对最新研究成果和实际案例的分析,文章揭示了网络安全威胁的多样性和复杂性,强调了综合防护策略的重要性。同时,倡导社会各界共同参与,形成全民网络安全意识,共筑数字空间的安全防线。
30 0
|
10天前
|
存储 安全 网络安全
云计算与网络安全:构建安全、可靠的云服务生态
【10月更文挑战第7天】 在数字化时代,云计算已成为企业运营的核心支柱。然而,随着云服务的普及,网络安全问题也日益凸显。本文将探讨云计算与网络安全的关系,分析云服务中的安全隐患,并提出相应的解决方案。通过深入剖析云计算的发展趋势和面临的安全挑战,本文旨在为企业构建安全、可靠的云服务生态提供指导。
39 0
|
10天前
|
存储 安全 网络安全
云计算与网络安全:技术融合下的安全挑战与策略
【10月更文挑战第7天】随着云计算技术的飞速发展,企业和个人越来越依赖云服务来存储和处理数据。然而,这种便利性也带来了新的网络安全威胁和挑战。本文将探讨云计算环境下的网络安全问题,分析当前面临的安全挑战,并提出相应的防护策略。我们将通过实际案例和简单的代码示例,展示如何在云计算环境中实施有效的安全措施,以保护数据和系统免受网络攻击。