- 配置国内源和epel源
cd /etc/yum.repos.d/ mkdir repo_bak mv *.repo repo_bak/ #基础源文件 wget -P /etc/yum.repos.d/ http://mirrors.aliyun.com/repo/Centos-7.repo #epel源文件 wget -O /etc/yum.repos.d/epel-7.repo http://mirrors.aliyun.com/repo/epel-7.repo #重新生成yum缓存 yum clean all yum makecache #升级系统 yum update -y
- 安装基础依赖包
yum install -y htop lrzsz nmap screen man expect
gcc gcc-c++ autoconf automake bzip2-devel
openssl-devel multitail kernel-devel
pam-devel zlib-devel perl-devel tcp_wrappers-devel
- 关闭selinux
sed -i 's/^SELINUX=.*/SELINUX=disabled/g' /etc/selinux/config setenforce 0 #查看selinux设置 getenforce
- 关闭默认的邮件服务
#(默认端口25) systemctl disable postfix systemctl stop postfix #查看系统默认监听的端口 netstat -nlput |grep -v "Proto" | grep "LISTEN"
- 设置系统环境变量
#添加执行权限 chmod a+x /etc/rc.d/rc.local #设置环境变量 cat >>/etc/profile <<EOF
$(date +%F)
alias vi='vim' alias grep='grep --color=auto' #设置300秒内用户无操作就字段断开终端 export TMOUT=300 #将值设置为readonly 防止用户更改 readonly TMOUT EOF source /etc/profile #vimrc设置 cat >>/etc/vimrc <<EOF set tabstop=4 set softtabstop=4 set shiftwidth=4 set expandtab EOF 6. 设置文件打开描述符
cat >/etc/security/limits.conf <<EOF ##### $(date) ##### * soft noproc 65535 * hard noproc 65535 * soft nofile 409600 * hard nofile 409600 EOF
- 优化系统内核参数
###优化内核参数### if [ ! -f '/etc/sysctl.conf.bak' ];then \cp /etc/sysctl.conf{,.bak} cat > /etc/sysctl.conf <<EOF
$(date)
#修改最大连接数 net.nf_conntrack_max = 655360 net.netfilter.nf_conntrack_tcp_timeout_established = 1200 #套接字由本端关闭,这个参数决了它在FIN-WAIT-2状态的时间,默认是60秒。 net.ipv4.tcp_fin_timeout = 2 #socket废弃前重试的次数,重负载web服务器建议调小 net.ipv4.tcp_orphan_retries = 1 #表示开启重用。允许将TIME-WAIT sockets重新用于新的TCP连接。 net.ipv4.tcp_tw_reuse = 1 #表示开启TCP连接中TIME-WAIT sockets的快速回收。 net.ipv4.tcp_tw_recycle = 1 #表示开启SYN Cookies。当出现SYN等待队列溢出时,启用cookies来处理,可防范少量SYN攻击。 net.ipv4.tcp_syncookies = 1 #表示当keepalive起用的时候,TCP发送keepalive消息的频度。缺省是2小时,改为10分钟。 net.ipv4.tcp_keepalive_time = 600 #表示用于向外连接的端口范围。缺省情况下很小:32768到61000,改为1024到65000。 net.ipv4.ip_local_port_range = 1024 65000 #加大SYN队列长度,默认是1024.可以容纳更多等待连接的网络连接数。 net.ipv4.tcp_max_syn_backlog = 262144 #imewait的数量,默认是180000。 net.ipv4.tcp_max_tw_buckets = 6000 #路由缓存刷新频率,当一个路由失败后多长时间跳到另一个路由,默认是300。 net.ipv4.route.gc_timeout = 100 #内核放弃连接之前发送SYN+ACK的时间 net.ipv4.tcp_syn_retries = 1 #内核放弃建立连接之前发送SYN包的数量。 net.ipv4.tcp_synack_retries = 1 #调解系统同时发起的TCP连接数,默认为128.在高并发的请求中,默认值可能导致连接超时或重传。 net.core.somaxconn = 262144 #该参数决定了,网络设备接收数据包的速率比内核处理这些包的速率快时,允许送到队列的数据包的最大数目。 net.core.netdev_max_backlog = 262144 #设定系统中最多有多少个TCP套接字不被关联到任何一个用户文件句柄上。可防止简单DoS攻击。 net.ipv4.tcp_max_orphans = 262144 EOF fi #刷新系统内核参数: /sbin/sysctl -p