首页 | Linux 基础 | 资讯动态 | Linux 应用 | Linux 服务器 | Linux 开发 | Linux 安全 | 专题 | 联盟论坛
  当前位置:主页>Linux 开发>linux 内核>文章内容
调整内核网络参数提高Linux系统安全
来源:http://www.unix5.com 作者: 发布时间:2007-08-26  

摘要:本文主要介绍了linux系统位于目录/proc/sys/net/ipv4/下的部分内核网络参数,同时对通过linux内核网络参数的调整来提高linux系统的安全性和稳定性提出了自己的见解。从而为系统管理员进一步增强网络的安全性和系统的稳定性提供了参考。

在linux中,我们可以根据不同的需求来调整/proc/sys/net/ipv4/目录下的内核网络参数,通过合理的配置这里内核网络参数,从而达到提高网络的安全性和系统的稳定性的目的。因为这方面的文献比较少,所以我们不可能进行全面的介绍。现在已经有linux组织正在从事这方面的文档的写作,相信在不久的把来,我们就会看到比较完整的文档。下面我们就来看一看一些比较常用的内核网络参数。

注意:1. 参数值带有速度(rate)的参数不能在loopback接口上工作。

2.因为内核是以HZ为单位的内部时钟来定义速度的,通常速度为100HZ,所以设定一个参数值为100就表示允许1个包/秒,假如为20则允许5个包/秒。

3.所有内核网络参数配置文件位于/proc/sys/net/ipv4/目录下。

一、 icmp相关内核配置参数

概述:通常我们使用icmp包来探测目的主机上的其它协议(如tcp和udp)是否可用。比如包含“destination unreachable”信息的icmp包就是最常见的icmp包。

1.icmp_destunreach_rate:设置内容为“Destination Unreachable”icmp包的响应速率。设置值应为整数。

应用实例:

假设有A、B两部主机,首先我们在主机A上执行以下ipchains语句:

 

  ipchains -A input -p icmp -j REJECT

这里的REJECT和DENY不同,DENY会丢掉符合条件的包如同没有接收到该包一样,而REJECT会在丢掉该包的同时给请求主机发回一个“Destination Unreachable”的icmp。

然后在主机B上ping主机A,这时候我们会发现“Destination Unreachable”icmp包的响应速度是很及时的。接着我们在主机A上执行:

 

  echo "1000" > /proc/sys/net/ipv4/icmp_destunreach_rate

也即每10秒钟响应一个“Destination Unreachable”的icmp包。这时候再从主机B上ping主机A就会发现“Destination Unreachable”icmp包的响应速度已经明显变慢,我很好奇的测试了一下,发现刚好是每10秒响应一次。

2.icmp_echo_ignore_broadcasts:设置是否响应icmp echo请求广播,设置值应为布尔值,0表示响应icmp echo请求广播,1表示忽略。

注意:windows系统是不响应icmp echo请求广播的。

应用实例:

在我的RedHat6.x和RedHat7上该值缺省为0,这样当有个用ping我的服务器所在的网段的网络地址时,所有的linux服务器就会响应,从而也能让让该用户得到我的服务器的ip地址,可以执行:

 

  echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts

来关闭该功能。从而防止icmp风暴,防止网络阻塞。

3.icmp_echoreply_rate:设置系统响应icmp echo请求的icmp包的响应速度,设置值为整数。

应用实例:

假设有A、B两部主机,首先我们在主机B上ping主机A,可以看到响应很正常,然后在主机A上执行:

 

  echo "1000" > /proc/sys/net/ipv4/icmp_echoreply_rate

也即每10秒钟响应一个icmp echo请求包。然后再ping主机A就可以看到响应速度已经变成10秒一次。最好合理的调整该参数的值来防止icmp风暴。

4.icmp_echo_ignore_all:设置系统是否忽略所有的icmp echo请求,如果设置了一个非0值,系统把忽略所有的icmp echo请求。其实这是icmp_echoreply_rate的一种极端情况。参数值为布尔值,1表示忽略,0表示响应。

共3页: 上一页 1 [2] [3] 下一页
 
如果您对本文有任何疑问或者建议,请到论坛讨论区发表您的意见: >> 论坛入口
[收藏] [推荐] [评论(0条)] [返回顶部] [打印本页] [关闭窗口]  
  热点文章
·使用 Linux 系统调用的内核命令
·Linux 2.6.11内核文件IO系统调用
·Linux操作系统的源代码目录树结
·Linux用户态与内核态的交互讲解
·Linux内核对I/O端口的管理实现(
·深入分析 Linux操作系统的内核链
·Linux内核可装载模块对设备驱动
·概述Linux系统的驱动框架及驱动
·详解Linux 2.6内核新文件系统变
·Linux系统可卸载内核模块完全指
·FreeBSD手册讲解(一)--配置FreeB
·编译Linux操作系统的内核讲解
  相关文章
·Linux可加载内核模块:入侵响应
·概述Linux系统的驱动框架及驱动
·Linux 2.6新内核的设计理念及新
·Linux内核重编译常见故障及其解
·Linux用户态与内核态的交互讲解
·FreeBSD手册讲解(二)—配置FreeB
·FreeBSD手册讲解(一)--配置FreeB
·一种内核到用户空间的高效数据传
·Linux系统内核新型包过滤结构的
·编译支持NTFS的Linux系统内核模
·Linux操作系统动态函式库讲解(二
·Linux操作系统动态函式库讲解(

本站信息源至:互联网络,均为学习,交流所用,如有版权问题,请联系我们.
站长QQ:397422079 E_mail:riechelr_hl@unix5.com
转载本站内容请注明原作者名.谢谢!