可搜索,可注册,可登录,致敬逗比大佬!尽在救援版逗比根据地 dbgjd.com
投稿文章 | 广告合作 | Telegram 群组 / 公告频道 / 使用教程

随机文章

News gibbsdanielle11965 97℃ 0评论

环境:centos6.8 2.6.32-642.el6.x86_64
一键优化CentOS系统(包含以下1、4、5、6、7、9、10、11、12点)

cp /etc/selinux/config{,.ori} sed -i "s#SELINUX=enforcing#SELINUX=disabled#g" /etc/selinux/config  setenforce 0 cp /etc/profile{,.ori} cat >> /etc/profile<<EOF #export HISTSIZE=5 #export HISTFILESIZE=5 export TMOUT=300 EOF source /etc/profile LANG=en chkconfig --list | grep "3:on"|egrep -v "sshd|network|crond|rsyslog|sysstat " |awk '{print "chkconfig", $1 ,"off"}'|bash cp /etc/ssh/sshd_config{,.ori} cat >>/etc/ssh/sshd_config <<EOF #Port 52113 #PermitRootLogin no PermitEmptyPasswords no GSSAPIAuthentication no UseDNS no EOF /etc/init.d/sshd reload echo "* * * * * /usr/sbin/ntpdate 61.160.212.28 &>/dev/null" >>/var/spool/cron/root cp /etc/security/limits.conf{,.ori} echo "* - nofile 65535" >> /etc/security/limits.conf  cp /etc/sysctl.conf{,.ori}  cat >> /etc/sysctl.conf <<EOF net.ipv4.tcp_max_tw_buckets = 20000  net.core.somaxconn = 65535  net.ipv4.tcp_max_syn_backlog = 262144  net.core.netdev_max_backlog = 30000  net.ipv4.tcp_tw_recycle = 0  fs.file-max = 6815744  EOF sysctl -p >/etc/issue >/etc/issue.net reboot 

1、关闭SELinux(重启生效)

cp /etc/selinux/config{,.ori} sed -i “s#SELINUX=enforcing#SELINUX=disabled#g” /etc/selinux/config  setenforce 0

2、系统运行级别设定3(最小化安装默认是3)

#runlevel N 3 #vim /etc/inittab id:3:initdefault: 

3、设置中文字符集
vim /etc/sysconfig/i18n
默认是LANG=”en_US.UTF-8″
cp /etc/sysconfig/i18n{,.ori}
echo ‘LANG=”zh_CN.UTF-8″‘ > /etc/sysconfig/i18n
source /etc/sysconfig/i18n <=== 使文件立即生效
echo $LANG

4、历史记录及登录超时环境变量设置

/etc/profile 此文件是系统全局变量永久生效的配置文件

~./bash_history 此文件记录当前用户的历史记录

cat >> /etc/profile<<EOF #export HISTSIZE=5 #export HISTFILESIZE=5  export TMOUT=300 EOF source /etc/profile 

5、关闭防火墙

/etc/init.d/iptables stop chkcong iptables off /etc/init.d/iptables status 

6、精简开机自启动服务
*重要的开机自启动服务:sshd、network、crond、rsyslog、sysstat
除这5个服务开启外其余全部关闭:*
(先全部关闭再开启那5个)

chkconfig –list | egrep -v “sshd|network|crond|rsyslog|sysstat”|bash chkconfig –list | egrep “sshd|rsyslog|network|crond|sysstat”|awk ‘{print”chkconfig”,$1,”on”}’|bash 

(默认这5 个服务是开启的,只需关闭其它即可)

chkconfig –list | grep “3:on”|egrep -v “sshd|network|crond|rsyslog|sysstat ” |awk ‘{print “chkconfig”, $1 ,”off”}’|bash 

7、更换ssh服务器端远程登录的配置

cp /etc/ssh/sshd_config{,.ori} cat >>/etc/ssh/sshd_config <<EOF Port 52113 PermitRootLogin no PermitEmptyPasswords no GSSAPIAuthentication no UseDNS no EOF /etc/init.d/sshd reload 

8、利用sudo控制用户对系统命令的使用权限
visudo 或者 vi /etc/sudoers 编辑
文件内有说明可以参考
对普通用户设置
例如添加:oldboy ALL=(ALL) /usr/sbin/useradd, /usr/sbin/userdel <===普通用户oldboy可以在机器上运行useradd和userdel命令(注意全路径),使用前命令前面要加sudo
oldboy ALL=(ALL) NOPASSWD:ALL <===拥有完全的系统管理权限
cp /etc/sudoers{,.ori}
echo ” oldboy ALL=(ALL) NOPASSWD:ALL ” >>/etc/sudoers
sudo -l <===查看当前用户被授予的sudo仅限集合
visudo -c <===检查语法

9、时间同步
ntp服务器搭建好后在客户机做个同步时间定时任务即可
crontal -l 查看当前系统有哪些定时任务
crontal -e 编辑定时任务,等价于 编辑/var/spool/cron/root文件

echo “* * * * * /usr/sbin/ntpdate 61.160.212.28 &>/dev/null” >>  /var/spool/cron/root 

10、调整系统文件描述符的数量
文件描述符(file descriptor)是内核为了高效管理已被打开的文件所创建的索引,所有打开的文件都是通过文件描述符引用的。一般最大打开文件数会是系统内存的10%(以KB来计算)(称之为系统级限制)
查看文件描述符设置情况(默认1024)

ulimit -n 

配置文件/etc/security/limits.conf

echo “* – nofile 65535” >> /etc/security/limits.conf  

重新登录才能生效
临时更改文件描述符

ulimit -SHn 65535 

11、内核优化
配置文件/etc/sysctl.conf

#该参数设置系统的TIME_WAIT的数量,如果超过默认值则会被立即清除 net.ipv4.tcp_max_tw_buckets = 20000  #定义了系统中每一个端口最大的监听队列的长度,这是个全局的参数 net.core.somaxconn = 65535  #对于还未获得对方确认的连接请求,可保存在队列中的最大数目 net.ipv4.tcp_max_syn_backlog = 262144  #在每个网络接口接收数据包的速率比内核处理这些包的速率快时,允许送到队列的数据包的最大数目  net.core.netdev_max_backlog = 30000  #能够更快地回收TIME-WAIT套接字。此选项会导致处于NAT网络的客户端超时,建议为0  net.ipv4.tcp_tw_recycle = 0  #系统所有进程一共可以打开的文件数量  fs.file-max = 6815744  #防火墙跟踪表的大小。注意:如果防火墙没开则会提示error:”net.netfilter.nf_conntrack_max” is an unknown key,忽略即可 (防火墙没有开放也可以不设置) #net.netfilter.nf_conntrack_max = 2621440  运行 sysctl -p即可生效  

一键优化内核

cp /etc/sysctl.conf{,.ori}  cat >> /etc/sysctl.conf <<EOF net.ipv4.tcp_max_tw_buckets = 20000  net.core.somaxconn = 65535  net.ipv4.tcp_max_syn_backlog = 262144  net.core.netdev_max_backlog = 30000  net.ipv4.tcp_tw_recycle = 0  fs.file-max = 6815744  EOF sysctl -p 

12、隐藏linux版本信息显示
本地登录之前会显示系统版本及内核信息

cat /etc/issue.net  CentOS release 6.8 (Final) Kernel /r on an /m 

清空即可

>/etc/issue >/etc/issue.net 

13、锁定关键系统文件,防止被提权篡改
上锁后所有用户都不能对文件操作

charr +i /etc/passwd /etc/shadow /etc/grop /etc/gshadow /etc/inittab 

解锁

charr -i /etc/passwd /etc/shadow /etc/grop /etc/gshadow /etc/inittab 

转载请注明:逗比根据地 » 随机文章

喜欢 (0)
发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址