sysctl 默认值_centos6.x sysctl优化选项

本文介绍了CentOS 6.x系统中sysctl的默认设置及优化选项,包括网络连接、内核参数、socket缓冲区、TIME_WAIT状态处理等方面,旨在提升系统性能和抵御SYN Flood攻击。
摘要由CSDN通过智能技术生成

系统自带

net.ipv4.ip_forward = 0

net.ipv4.conf.default.rp_filter = 1

net.ipv4.conf.default.accept_source_route = 0

kernel.sysrq = 0

kernel.core_uses_pid = 1

kernel.msgmnb = 65536

kernel.msgmax = 65536

kernel.shmmax = 68719476736

kernel.shmall = 4294967296

内核socket优化项

(http://blog.csdn.net/lcx46/article/details/12418873)

net.core.netdev_max_backlog = 262144 #默认1000 #每个网络接口接收数据包的速率比内核处理这些包的速率快时,允许送到队列的数据包的最大数目

net.core.rmem_default = 8388608 #默认212992 接收套接字缓冲区大小的默认值(以字节为单位)

net.core.rmem_max = 16777216 #默认212992 接收套接字缓冲区大小的最大值(以字节为单位)

net.core.somaxconn = 262144 #默认128 用来限制监听(LISTEN)队列最大数据包的数量,超过这个数量就会导致链接超时或者触发重传机制

net.core.wmem_default = 8388608 #默认212992 发送套接字缓冲区大小的默认值(以字节为单位)

net.core.wmem_max = 16777216 #默认212992 发送套接字缓冲区大小的最大值(以字节为单位)

网卡桥接,kvm服务需要

net.bridge.bridge-nf-call-arptables = 0

net.bridge.bridge-nf-call-ip6tables = 0

net.bridge.bridge-nf-call-iptables = 0

socket buffer

socket buffer的最大初始化值,默认10K;选项用于设定系统中最多有多少个TCP套接字不被关联到任何一个用户文件句柄上。如果超过这个数字,孤立连接将立即被复位并打印出警告信息。这个限制只是为了防止简单的DoS攻击。不能过分依靠这个限制甚至人为减小这个值,更多的情况下应该增加这个值,更应该增加这个值(如果增加了内存之后)。

net.ipv4.tcp_max_orphans = 3276800

TIME_WAIT状态处理 抵抗syn flood攻击

表示开启SYN Cookies。当出现SYN等待队列溢出时,启用cookies来处理,可防范少量SYN攻击,默认为1,表示开启的;

net.ipv4.tcp_syncookies = 1

表示开启重用。允许将TIME-WAIT sockets重新用于新的TCP连接,默认为0,表示关闭;客户端是nat环境或者服务器在nat环境,最好不要开启

net.ipv4.tcp_tw_reuse = 0

表示开启TCP连接中TIME-WAIT sockets的快速回收,默认为0,表示关闭。

net.ipv4.tcp_tw_recycle = 0

开启时间戳,默认系统开启

net.ipv4.tcp_timestamps = 1

表示SYN队列的长度,默认为1024,加大队列长度为8192,可以容纳更多等待连接的网络连接数

net.ipv4.tcp_max_syn_backlog = 262144

**表示系统同时保持TIME_WAIT套接字的最大数量,如果超过这个数字,TIME_WAIT套接字将立刻被清除并打印警告信息。默认为180000,改为5000。对于Apache、Nginx等服务器,上几行的参数可以很好地减少TIME_WAIT套接字数量,但是对于Squid,效果却不大。此项参数可以控制TIME_WAIT套接字的最大数量,避免Squid服务器被大量的TIME_WAIT套接字拖死

net.ipv4.tcp_max_tw_buckets = 6000

syn-ack握手状态重试次数,默认5,遭受syn-flood攻击时改为1或2

net.ipv4.tcp_synack_retries = 3

对于一个新建连接,内核要发送多少个 SYN 连接请求才决定放弃。不应该大于255,默认值是5,对应于180秒左右。

net.ipv4.tcp_syn_retries = 1

使用 Selective ACK,管理TCP的选择性应答,允许接收端向发送端传递关于字节流中丢失的序列号,减少了段丢失时需要重传的段数目,当段丢失频繁时,sack是很有益的。(这可以通过有选择地应答乱序接收到的报文来提高性能(这样可以让发送者只发送丢失的报文段)。(对于广域网通信来说这个选项应该启用,但是这会增加对 CPU 的占用。)

net.ipv4.tcp_sack = 1

net.ipv4.tcp_window_scaling = 1

TCP 缓冲区选项

tcp写buffer,可参考的优化值: 8192 436600 873200

net.ipv4.tcp_wmem = 8192 436600 873200

TCP读buffer,可参考的优化值: 32768 436600 873200

net.ipv4.tcp_rmem = 32768 436600 873200

同样有3个值,意思是:

net.ipv4.tcp_mem[0]:低于此值,TCP没有内存压力。

net.ipv4.tcp_mem[1]:在此值下,进入内存压力阶段。

net.ipv4.tcp_mem[2]:高于此值,TCP拒绝分配socket。

上述内存单位是页,而不是字节。可参考的优化值是:786432 1048576 1572864

net.ipv4.tcp_mem = 786432 1048576 1572864

表示如果套接字由本端要求关闭,这个参数决定了它保持在FIN-WAIT-2状态的时间

net.ipv4.tcp_fin_timeout = 30

TCP keepalive选项

表示当keepalive起用的时候,TCP发送keepalive消息的频度。缺省是2小时,改为20分钟,内核才发起probe;如果probe 15次(每次3秒)不成功,内核才彻底放弃,认为该连接已失效.对服务器而言,显然上述值太大,百科聊天室有心跳检测机制,检测心跳的间隔一定要大于这个tcp_keepalive_intvl值

net.ipv4.tcp_keepalive_time = 1200

net.ipv4.tcp_keepalive_intvl = 15

net.ipv4.tcp_keepalive_probes = 3

表示用于向外连接的端口范围。缺省情况下很小:32768到61000,改为1024到65000。

net.ipv4.ip_local_port_range = 1024 65535

系统使用的缓存大小占用内存比例阀值触发IO同步

vm.swappiness = 10

vm.dirty_ratio = 10

iptables

net.nf_conntrack_max = 2000000

net.netfilter.nf_conntrack_max = 2000000

net.netfilter.nf_conntrack_tcp_timeout_established = 180net.netfilter.nf_conntrack_tcp_timeout_time_wait = 120net.netfilter.nf_conntrack_tcp_timeout_close_wait = 60net.netfilter.nf_conntrack_tcp_timeout_fin_wait = 120

inotify rsync优化

fs.inotify.max_queued_events=99999999

fs.inotify.max_user_watches=99999999

fs.inotify.max_user_instances=65535

简化说明版

kernel.core_uses_pid = 1

kernel.msgmax = 65536

kernel.msgmnb = 65536

kernel.shmall = 4294967296

kernel.shmmax = 68719476736

kernel.sysrq = 0

net.core.netdev_max_backlog = 262144

net.core.rmem_default = 8388608

net.core.rmem_max = 16777216

net.core.somaxconn = 262144

net.core.wmem_default = 8388608

net.core.wmem_max = 16777216

net.ipv4.conf.default.accept_source_route = 0

net.ipv4.conf.default.rp_filter = 1

net.ipv4.ip_forward = 0

net.ipv4.tcp_max_orphans = 3276800

###TIME_WAIT状态处理 抵抗syn flood攻击

#表示开启SYN Cookies。当出现SYN等待队列溢出时,启用cookies来处理,可防范少量SYN攻击,默认为0,表示关闭;

net.ipv4.tcp_syncookies = 1

net.ipv4.tcp_tw_reuse = 0

net.ipv4.tcp_tw_recycle = 0

net.ipv4.tcp_timestamps = 1

net.ipv4.tcp_max_syn_backlog = 262144

net.ipv4.tcp_max_tw_buckets = 6000

net.ipv4.tcp_synack_retries = 3

net.ipv4.tcp_syn_retries = 1

net.ipv4.tcp_sack = 1

net.ipv4.tcp_window_scaling = 1

net.ipv4.tcp_wmem = 8192 436600 873200

net.ipv4.tcp_rmem = 32768 436600 873200

net.ipv4.tcp_mem = 786432 1048576 1572864

net.ipv4.tcp_fin_timeout = 30

#表示当keepalive起用的时候,TCP发送keepalive消息的频度。

net.ipv4.tcp_keepalive_time = 1200

net.ipv4.tcp_keepalive_intvl = 15

net.ipv4.tcp_keepalive_probes = 3

net.ipv4.ip_local_port_range = 1024 65535

###系统使用的缓存大小占用内存比例阀值触发IO同步

vm.swappiness = 10

vm.dirty_ratio = 10

###iptables服务用到

net.nf_conntrack_max = 2000000

net.netfilter.nf_conntrack_max = 2000000

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值