本文共 7084 字,大约阅读时间需要 23 分钟。
1, 优化网络设备接收队列 net.core.netdev_max_backlog=3000 该文件表示在每个网络接口接收数据包的速率比内核处理这些包的速率快时,允许送到队列的数据包的最大数目。 默认值:Red Hat Linux release 9 (Shrike)默认为300 rhel5 默认为1000 建议值为30002, net.ipv4.conf.lo.accept_redirects accept_redirects:该参数位于 /proc/sys/net/ipv4/conf/DEV/accept_redirects (DEV表示具体的网络接口),如果你的主机所在的网段中有两个路由器,你将其中一个设置成了缺省网关,但是该网关在收到你的ip包时发现该ip包必须经 过另外一个路由器,这时这个路由器就会给你发一个所谓的“重定向”icmp包,告诉将ip包转发到另外一个路由器。参数值为布尔值,1表示接收这类重定向 icmp 信息,0表示忽略。在充当路由器的linux主机上缺省值为0,在一般的linux主机上缺省值为1。建议将其改为0,或者使用“安全重定向”(见下文) 以消除安全性隐患。 net.ipv4.conf.lo.accept_redirects=0 net.ipv4.conf.all.accept_redirects=0 net.ipv4.conf.eth0.accept_redirects=0 net.ipv4.conf.default.accept_redirects=03, 打开TIME-WAIT套接字重用功能,对于存在大量连接的Web服务器非常有效。 net.ipv4.tcp_tw_recyle=1 net.ipv4.tcp_tw_reuse=1 10) /proc/sys/net/ipv4/tcp_tw_recyle 打开快速 TIME-WAIT sockets 回收。除非得到技术专家的建议或要求,请不要随 意修改这个值。 缺省设置:0 11) /proc/sys/net/ipv4/tcp_tw_reuse 该文件表示是否允许重新应用处于TIME-WAIT状态的socket用于新的TCP连接。 缺省设置:0下边的命令用来对连接数量非常大的服务器进行调优. ·对于同时支持很多连接的服务器,新的连接可以重新使用TIME-WAIT套接字. 这对于Web服务器非常有效:tcp_syncookies 参数类型:整型
只有在内核编译时选择了CONFIG_SYNCOOKIES时才会发生作用。当出现syn等候队列出现溢出时象对方发送syncookies。目的是为了防止syn flood攻击。默认值是false。
注意:该选项千万不能用于那些没有收到攻击的高负载服务器,如果在日志中出现 synflood消息,但是调查发现没有收到synflood攻击,而是合法用户的连接负载过高的原因,你应该调整其它参数来提高服务器性能。参考: tcp_max_syn_backlog, tcp_synack_retries, tcp_abort_on_overflow.
syncookie严重的违背TCP协议,不允许使用TCP扩展,可能对某些服务导致严重的性能影响(如SMTP转发)。
开启TCP SYN cookies,保护服务器避免受syn-flood攻击,包括服务取决denial-of-service (DoS) 或者分布式服务拒绝distributed denial-of-service (DDoS) (仅适用Red Hat Enterprise Linux AS) 9 关闭路由相关功能 net.ipv4.conf.lo.accept_source_route=0 net.ipv4.conf.all.accept_source_route=0 net.ipv4.conf.eth0.accept_source_route=0 net.ipv4.conf.default.accept_source_route=0 net.ipv4.conf.lo.accept_redirects=0 net.ipv4.conf.all.accept_redirects=0 net.ipv4.conf.eth0.accept_redirects=0 net.ipv4.conf.default.accept_redirects=0 net.ipv4.conf.lo.secure_redirects=0 net.ipv4.conf.all.secure_redirects=0 net.ipv4.conf.eth0.secure_redirects=0 net.ipv4.conf.default.secure_redirects=0 net.ipv4.conf.lo.send_redirects=0 net.ipv4.conf.all.send_redirects=0 net.ipv4.conf.eth0.send_redirects=0 net.ipv4.conf.default.send_redirects=0 /proc/sys/net/ipv4/*/secure_redirects 其实所谓的“安全重定向”就是只接受来自网关的“重定向”icmp包。该参数就是 用来设置“安全重定向”功能的。参数值为布尔值,1表示启用,0表示禁止,缺省值 为启用。send_redirects - 布尔类型
如果是router,发送重定向消息,默认值是TRUE
accept_redirects - 布尔类型
收发接收ICMP重定向消息。对于主机来说默认为True,对于用作路由器时默认值为False。 ·以下命令使服务器忽略来自被列入网关的服务器的重定向。因重定向可以被用来进行攻击,所以我们只接受有可靠来源的重定向。10 优化TCP接收/发送缓冲区
net.ipv4.tcp_rmem=4096 87380 16777216net.ipv4.tcp_wmem=4096 65536 1677721625) /proc/sys/net/ipv4/tcp_wmem该文件包含3个整数值,分别是:min,default,maxMin:为TCP socket预留用于发送缓冲的内存最小值。每个TCP socket都可以使用它。Default:为TCP socket预留用于发送缓冲的内存数量,默认情况下该值会影响其它协议使用的net.core.wmem中default的 值,一般要低于net.core.wmem中default的值。Max:为TCP socket预留用于发送缓冲的内存最大值。该值不会影响net.core.wmem_max,今天选择参数SO_SNDBUF则不受该值影响。默认值为128K。缺省设置:4096 16384 13107226) /proc/sys/net/ipv4/tcp_rmem该文件包含3个整数值,分别是:min,default,maxMin:为TCP socket预留用于接收缓冲的内存数量,即使在内存出现紧张情况下TCP socket都至少会有这么多数量的内存用于接收缓冲。Default: 为TCP socket预留用于接收缓冲的内存数量,默认情况下该值影响其它协议使用的 net.core.wmem中default的值。该值决定了在tcp_adv_win_scale、tcp_app_win和tcp_app_win的 默认值情况下,TCP 窗口大小为65535。Max:为TCP socket预留用于接收缓冲的内存最大值。该值不会影响 net.core.wmem中max的值,今天选择参数 SO_SNDBUF则不受该值影响。
tcp_wmem - 三个整数的向量: min, default, max
min:为TCP socket预留用于发送缓冲的内存最小值。每个tcp socket都可以在建议以后都可以使用它。默认值为4K。 default:为TCP socket预留用于发送缓冲的内存数量,默认情况下该值会影响其它协议使用的net.core.wmem_default 值,一般要低于net.core.wmem_default的值。默认值为16K。 max: 用于TCP socket发送缓冲的内存最大值。该值不会影响net.core.wmem_max,今天选择参数SO_SNDBUF则不受该值影响。默认值为128K。
tcp_rmem - 三个整数的向量: min, default, max
min:为TCP socket预留用于接收缓冲的内存数量,即使在内存出现紧张情况下tcp socket都至少会有这么多数量的内存用于接收缓冲,默认值为8K。 default:为TCP socket预留用于接收缓冲的内存数量,默认情况下该值影响其它协议使用的 net.core.wmem_default 值。该值决定了在tcp_adv_win_scale、tcp_app_win和tcp_app_win:0是默认值情况下,tcp 窗口大小为65535。 max:用于TCP socket接收缓冲的内存最大值。该值不会影响 net.core.wmem_max,今天选择参数 SO_SNDBUF则不受该值影响。默认值为 128K。默认值为87380*2 bytes。 11, 配置服务器拒绝接受广播风暴或者smurf 攻击attacks:# don't cache ssthresh from previous connection net.ipv4.tcp_no_metrics_save = 1 14, # Increase the maximum number of skb-heads to be cached net.core.hot_list_length = 256 15, # Increase the tcp-time-wait buckets pool size net.ipv4.tcp_max_tw_buckets = 360000 16# Lower syn retry rates net.ipv4.tcp_synack_retries = 2 net.ipv4.tcp_syn_retries = 3 17,# Set TCP Re-Ordering value in kernel to ‘5′ net.ipv4.tcp_reordering = 5
转载地址:http://mavob.baihongyu.com/