centos7一键优化脚本
#!/bin/bash
usage() {cat <<EOFI
Usage: $0 [OPTION]
OPTION:all (expcet net_config) #执行所有disable_selinux #禁用selinuxuseless_user #删除无用账号ulimit_config #修改ulimit限制disable_ipv6 #禁用IPV6useless_service #优化服务sysctl_config #优化内核参数sshd_config #配置SSHDyum_config #配置YUM源yum_update #安全的自动更新软件包vim_config #配置VIM编辑器install_docker #安装并配置dockerntpdate_config #设置时间同步
EOFI
}
#禁用selinux
disable_selinux() {if grep -q '^SELINUX' /etc/selinux/config;thensed -ri '/^SELINUX/s/(SELINUX=)(.*)/\1disabled/' /etc/selinux/configelseecho "SELINUX=disabled" >>/etc/selinux/configfi
}
#删除无用账号
useless_user() {for u in lp shutdown halt news uucp operator games gopherdouserdel -r $udonefor g in lp news uucp games didogroupdel $gdone
}
#修改ulimit限制
ulimit_config() {cat > /etc/security/limits.d/30-nofile.conf << EOFI
* soft nofile 102400
* hard nofile 102400
EOFIcat > /etc/security/limits.d/20-nproc.conf << EOFI
* soft nproc 102400
* hard nproc 102400
EOFI
}
#禁用IPv6
disable_ipv6() {grep '^GRUB_CMDLINE_LINUX' /etc/default/grub|grep -q 'ipv6.disable=1'if [ $? -ne 0 ];thensed -ri '/^GRUB_CMDLINE_LINUX/s/(.*)(rhgb.*)/\1ipv6.disable=1 \2/' /etc/default/grubgrub2-mkconfig -o /boot/grub2/grub.cfgfi
}
#优化服务
useless_service() {yum remove -y postfixyum remove -y firewalld-*yum remove -y NetworkManager-*grep '^After' /etc/systemd/system/multi-user.target.wants/sshd.service|grep -q 'network.service'if [ $? -ne 0 ];thensed -ri '/^After/s/(.*)/\1 network.service/' /etc/systemd/system/multi-user.target.wants/sshd.servicefi
}
#内核参数优化
sysctl_config() {cat > /etc/sysctl.conf << EOFI
#消息队列
kernel.msgmnb = 65536
kernel.msgmax = 65536
#共享内存
kernel.shmmax = 68719476736
kernel.shmall = 4294967296
#网络参数优化
net.core.netdev_max_backlog = 262144
net.core.somaxconn = 65535
net.core.optmem_max = 81920
net.core.wmem_default = 8388608
net.core.rmem_default = 8388608
net.core.rmem_max = 16777216
net.core.wmem_max = 16777216
net.ipv4.tcp_mem = 94500000 915000000 927000000
net.ipv4.tcp_max_orphans = 3276800
net.ipv4.tcp_max_syn_backlog = 262144
net.ipv4.tcp_timestamps = 0
net.ipv4.tcp_synack_retries = 1
net.ipv4.tcp_syn_retries = 1
net.ipv4.tcp_max_tw_buckets = 6000
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_fin_timeout = 10
net.ipv4.tcp_keepalive_time = 1200
net.ipv4.tcp_keepalive_intvl = 30
net.ipv4.tcp_keepalive_probes = 3
net.ipv4.ip_local_port_range = 1024 65535
net.ipv4.conf.all.log_martians = 1
net.ipv4.conf.all.send_redirects = 0
#redis参数
vm.overcommit_memory = 1
vm.swappiness = 0
#IO参数优化
vm.dirty_background_ratio = 5
vm.dirty_ratio = 20
#LVS忽略VIP的arp请求
net.ipv4.conf.all.arp_ignore = 1
net.ipv4.conf.all.arp_announce = 2
EOFIsysctl -p
}
#修改sshd配置
sshd_config() {sed -i 's/^#AddressFamily any$/AddressFamily inet/' /etc/ssh/sshd_configsed -i 's/^GSSAPIAuthentication yes$/GSSAPIAuthentication no/' /etc/ssh/sshd_configsed -i 's/#UseDNS yes/UseDNS no/' /etc/ssh/sshd_configgrep -q 'pam_tally2.so' /etc/pam.d/sshdif [ $? -ne 0 ];thensed -i '/pam_sepermit/a\auth required pam_tally2.so onerr=fail deny=3 unlock_time=60 even_deny_root root_unlock_time=180' \/etc/pam.d/sshdfi
}
#yum源配置
yum_config() {yum install -y wget epel-releasewget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.reposed -i '/aliyuncs/d' /etc/yum.repos.d/CentOS-Base.repowget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.reposed -i '/aliyuncs/d' /etc/yum.repos.d/epel.repoyum clean allyum makecache
}
#自动安全的更新
yum_update() {yum install -y yum-cronsed -i 's/update_cmd = default/update_cmd = security/' /etc/yum/yum-cron.confsed -i 's/apply_updates = no/apply_updates = yes/' /etc/yum/yum-cron.confsystemctl enable yum-cron.servicesystemctl restart yum-cron.service
}
#配置VIM编辑器
vim_config() {yum install -y vim-en*grep -q 'set tabstop' /etc/vimrcif [ $? -ne 0 ];thensed -i '/set ruler/a\set tabstop=2' /etc/vimrcfi
}
#安装并配置docker-ce
install_docker() {yum install -y yum-utils device-mapper-persistent-data lvm2yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.reposed -i 's#download.docker.com#mirrors.aliyun.com/docker-ce#' /etc/yum.repos.d/docker-ce.repoyum makecache fastyum -y install docker-cesystemctl start docker.servicecat > /etc/docker/daemon.json <<EOFI
{"registry-mirrors": ["https://bm5sgu8k.mirror.aliyuncs.com"]
}
EOFIsystemctl daemon-reloadsystemctl restart docker.service
}
#时间同步
ntpdate_config() {yum install -y ntpdatetimedatectl set-timezone Asia/Shanghaigrep -q '/usr/sbin/ntpdate' /var/spool/cron/rootif [ $? -ne 0 ];thenecho "11 */1 * * * /usr/sbin/ntpdate -s ntp1.aliyun.com" >>/var/spool/cron/rootfi
}
if [ -z $1 ];thenusage
fi
if [ "$1" == "all" ];thendisable_selinuxuseless_userulimit_configdisable_ipv6useless_servicesysctl_configsshd_configyum_configyum_updatevim_configinstall_dockerntpdate_config
else$1
fi
centos7一键优化脚本相关推荐
- linux 优化脚本 关闭服务器,linux服务器一键优化脚本
服务器一键优化脚本,高亮显示linux 内容:关闭selinux.时间同步设置.永久静态路由天添加.经常使用软件安装centos 高并发参数调优:文件句柄数调优.防火墙表空间调优bash 测试环境:c ...
- linux一键优化脚本1.0
2019独角兽企业重金招聘Python工程师标准>>> #!/bin/bash #Author:Johnny.Feng #fengjihu@chnvideo.com . /etc/i ...
- Centos7脚本一键优化
我把优化centos7的脚本分享给大家,建议刚安装完服务器的朋友执行如下优化脚本 [root@test2 yum.repos.d]# cat centos7.sh #!/bin/bash #autho ...
- Centos7 Mysql 一键安装(设置默认密码)、一键卸载脚本
平台:Centos7 安装包:mysql-8.0.16-2.el7.x86_64.rpm-bundle.tar 兼容:Mysql8.5 一键安装脚本:请在NEWPASS变量上写下你要设置的默认密码 # ...
- linux安装csgo服务器,Centos7.x的CSGO服务器一键安装脚本
在我意识到shell编程的重要性之后,我便开始想着学习shell,但是拿什么练手呢?我想到了CSGO服务器的搭建,于是这个一键安装CSGO服务器的脚本就诞生了. 一. 前期的准备 1.首先我们需要获取 ...
- CentOS7下pptp ***一键安装脚本
CentOS 6.7下pptp ***一键安装脚本,安装如下: wget http://mirrors.linuxeye.com/scripts/***_centos.sh chmod +x ./** ...
- Scoks5 一键搭建脚本,解决nolanjdc被限制IP
Socks5服务一键搭建脚本 github链接 很多人的nolanjdc被限制ip,又找不到合适的代理ip,今天介绍一个socks5代理搭建脚本,一键傻瓜式操作. 交流:914535027 懒人上车链 ...
- kangle环境liunx一键安装脚本
CentOS5.x/6.x用以下一键脚本 1.kangle官方脚本 linux下easypanel版本安装及升级 (集成了kangle web 服务器和mysql,仅支持centos 5和centos ...
- Linux一键性能测试脚本
收集一些自用的shell脚本. 测试环境:Centos7.6系统-服务器来自:蓝易云 香港五网CN2网络 ,国内速度优秀,支持VPC内网互联.快照.备份等功能. 移动+联通+电信+教育网+广电-五网 ...
最新文章
- Java大数加法乘法减法、36进制加法
- vue2.0s中eventBus实现兄弟组件通信
- EntityFramework Core自动返回SQL语句
- 如何处理Oracle客户端查询乱码问题
- 第72课 函数与最大值-2021.10.15
- arm linux dma 编程 request_dma,Linux驱动技术技术之一:DMA编程
- idea vscode快捷键
- 微信读书vscode插件_想用 VSCode 写书?这款插件必须备上!
- 01-2制作U盘启动盘--装机助理工具
- Sqlite 对数据进行增删改查
- Revo Uninstaller专业版
- matlab中欠定方程组超定方程组_生辰八字中天干与地支是什么
- 9 Greenplum高级使用
- 腾讯云服务器登录宝塔面板命令
- 提莫攻击的中毒持续时间
- 看表情读情绪:AI“察言观色”背后的表情识别数据
- (2019春)软件构造:雨课堂试卷(第3章)
- python自动化之word操作用python做邀请函
- cocos2dx3.0戳青蛙游戏(打地鼠)
- 英语orientaljasper鸡血石OrientalJasper单词
热门文章
- 中国硫酸铜杀菌剂市场趋势报告、技术动态创新及市场预测
- Xshell窗口置顶的问题
- 面试中有关UI自动化的那些事 ~
- Android usb-serial-for-android驱动库 实现(读卡器rs232串口转usb)插入开发板读取数据
- 收藏:NVMe协议基础原理介绍
- 制作视频倒放特效,几分钟教会你
- p标签是啥意思 php,htmlp标签是什么元素?关于html p标签的定义和作用详解
- 游戏数值策划属性篇(二):属性价值评估
- c#调用打印机(针式打印机),实现打印
- System.InvalidOperationException HResult=0x80131509 Message=ExecuteNonQuery 要求已打开且可用的 Connection