科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道Linux系统内核中网络参数的意义及其应用 (2)

Linux系统内核中网络参数的意义及其应用 (2)

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

在一个tcp会话过程中,在会话结束时,A首先向B发送一个fin包,在获得B的ack确认包后,A就进入FIN WAIT2状态等待B的fin包然后给B发ack确认包。

作者:赛迪网 来源:赛迪网 2007年10月17日

关键字: 参数 内核 系统 Linux

  • 评论
  • 分享微博
  • 分享邮件
 

三、tcp相关内核配置参数

  通过tcp配置参数可以控制tcp会话过程中的各个方面。

  a) tcp_fin_timeout:在一个tcp会话过程中,在会话结束时,A首先向B发送一个fin包,在获得B的ack确认包后,A就进入FIN WAIT2状态等待B的fin包然后给B发ack确认包。这个参数就是用来设置A进入FIN WAIT2状态等待对方fin包的超时时间。如果时间到了仍未收到对方的fin包就主动释放该会话。参数值为整数,单位为秒,缺省为180秒。

  b) tcp_syn_retires:设置开始建立一个tcp会话时,重试发送syn连接请求包的次数。

  参数值为小于255的整数,缺省值为10。假如你的连接速度很快,可以考虑降低该值来提高系统响应时间,即便对连接速度很慢的用户,缺省值的设定也足够大了。

  c) tcp_window_scaling:设置tcp/ip会话的滑动窗口大小是否可变。参数值为布尔值,为1时表示可变,为0时表示不可变。Tcp/ip 通常使用的窗口最大可达到65535 字节,对于高速网络,该值可能太小,这时候如果启用了该功能,可以使tcp/ip滑动窗口大小增大数个数量级,从而提高数据传输的能力。

  四、有关防止ip欺骗攻击的内核网络参数



  假设有如下的情景:

  在缺省状态下,路由器根据包的目的地址进行转发,所以路由器缺省是对来自任何地方的包进行转发的。如上图所示,假如路由器的2.2.2.2接口(也即广域网接口)接收到一个包,该包的源地址为1.1.1.100(也即为 Intranet地址),虽然这是不可能或者说是不合理的,但是由于路由器的特性,路由器还是会将这个不合法的包转发到Intranet。从而让黑客有了可乘之机,为其进行ip欺骗攻击打开了方便之门。

  幸好,我们可以通过Linux的内核系统参数“反向路径过滤”来防止这种情况,该参数位于/proc/sys/net/ipv4/conf/下的各个子目录中的rp_filter文件。参数值为整数,可能的值有:

  2 - 进行全面的反向路径过滤,推荐在边缘路由器上使用。但是要注意,在复杂的网络环境中,如果使用了静态路由或rip、ospf路由协议时,不推荐使用该值。

  1 - 是该参数的缺省值,它只对直接连接的网络进行反向路径过滤。

  0 - 不进行反向路径过滤。

  应用实例:

  建立如下的脚本,文件名为rp.sh

  #/bin/bash  for i in /proc/sys/net/ipv4/conf/*/rp_filter ;   do       echo 2 > $i      done

  然后更改文件权限chmod 755 rp.sh

  最后执行 ./rp.sh

  五、针对每一网络接口的内核网络参数

  通过针对每一网络接口的内核网络参数,你可以为诸如eth0、eth1等具体的网络接口指
定响应的内核网络参数。

  注意:/proc/sys/net/ipv4/conf/all/下的参数将应用于所有的网络接口。

  1.accept_redirects:该参数位于/proc/sys/net/ipv4/conf/DEV/accept_redirects (DEV表示具体的网络接口),如果你的主机所在的网段中有两个路由器,你将其中一个设置成了缺省网关,但是该网关在收到你的ip包时发现该ip包必须经过另外一个路由器,这时这个路由器就会给你发一个所谓的“重定向”icmp包,告诉将ip包转发到另外一个路由器。参数值为布尔值,1表示接收这类重定向 icmp 信息,0表示忽略。在充当路由器的linux主机上缺省值为0,在一般的linux主机上缺省值为1。建议将其改为0,或者使用“安全重定向”(见下文)以消除安全性隐患。

  2.log_martians:将包含非法地址信息的ip包记录到内核日志。参数值为布尔值。

  应用实例:

  上面我们讲过rp_filter反向路径过滤参数,同时我们可以执行下面的语句

  echo “1” > /proc/sys/net/ipv4/conf/all/log_martians

  然后就可以将进行ip假冒的ip包记录到/var/log/messages。

  3. forwarding:启用特定网络接口的ip转发功能。参数值为布尔值,1表示进行记录。

  应用实例:

  echo "1"  > /proc/sys/net/ipv4/conf/eth0/forwarding

  4.accept_source_route:是否接受含有源路由信息的ip包。参数值为布尔值,1表示接受,0表示不接受。在充当网关的linux主机上缺省值为1,在一般的linux主机上缺省值为0。从安全性角度出发,建议你关闭该功能。

  5.secure_redirects:前面我们已经提到过“安全重定向”的概念,其实所谓的“安全重定向”就是只接受来自网关的“重定向”icmp包。该参数就是用来设置“安全重定向”功能的。参数值为布尔值,1表示启用,0表示禁止,缺省值为启用。

  6.proxy_arp:设置是否对网络上的arp包进行中继。参数值为布尔值,1表示中继,0表示忽略,缺省值为0。该参数通常只对充当路由器的linux主机有用。

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章