百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术资源 > 正文

详解Linux系统标准化设置--脚本一键设置,值得收藏

lipiwang 2024-10-18 09:43 16 浏览 0 评论

概述

Linux有很多标准化的内容,这里总结了下用一键脚本来设置,下面的命令请看懂后再执行。


Linux自动化部署需求

系统环境标准化

  • 标准化 - 字符集
  • 标准化 - 命令行
  • 标准化 - 内核参数
  • 标准化 - 系统参数

分区标准化

  • 标准化 - 标准化分区

系统配置标准化

  • 标准化 - YUM环境
  • 标准化 - 系统服务
  • 标准化 - 主机名
  • 标准化 - VIM
  • 标准化 - 用户
  • 标准化 - SSH
  • 标准化 - 时间
  • 标准化 - Selinux
  • 标准化 - 关闭ctrl+alt+del快捷键

软件标准化

  • 标准化 - 基础软件包
  • 标准化 - 常用软件包
  • 标准化 - 设置公钥

01

系统环境标准化

1、系统环境标准化 - 字符集

需求:字符集设置 en_US.utf8

一键优化脚本配置

Centos 7.x

#update system character
localectl set-locale LANG=en_US.utf8

注意 Centos 6 和 Centos 7 之间配置的差异

2、系统环境标准化 - 命令行

需求:配置shell,便于定位当前目录

一键优化脚本

#modify PS1
echo 'export PS1="[ \033[01;33m\u\033[0;36m@\033[01;34m\h \033[01;31m\w\033[0m ]\033[0m \n#"' >> /etc/profile

3、系统环境标准化 - 内核参数

需求:优化网卡+优化swap

一键优化脚本配置

#tune kernel parametres
cat >> /etc/sysctl.conf << EOF
net.ipv4.tcp_tw_recycle = 1
net.ipv4.tcp_tw_reuse = 1
net.ipv4.ip_local_port_range = 10000 65000
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_max_tw_buckets = 36000
net.ipv4.tcp_max_syn_backlog = 16384
net.ipv4.tcp_keepalive_time = 600
net.ipv4.tcp_fin_timeout = 30
vm.swappiness=10
vm.max_map_count = 262144
EOF

4、系统环境标准化 - 系统参数

需求:打开文件描述符

一键优化脚本配置

#set the file limit
cat >> /etc/security/limits.conf << EOF
* soft nofile 65535
* hard nofile 65535
EOF

02

分区标准化

1、分区标准化 - 标准化分区

需求:

  • 虚拟机或服务器
/boot 200M~1G
/swap 1G~8G
/ 剩余全部
  • Oracle服务器
/boot 200M~1G
/swap >16G
/ 40G
/data(Oracle数据目录) 剩余全部

03

系统配置标准化

1、系统配置标准化 - YUM环境

需求:

  • 使用内网YUM源
  • 如无内网YUM源,配置外网YUM源

一键优化脚本

假设没有内网repo,就配置阿里YUM源

#clean OS default repo
mkdir /etc/yum.repos.d/old && mv /etc/yum.repos.d/C* /etc/yum.repos.d/old/
#add repo
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
function_writelog_judgment "[add aliyun mirrors base]"

2、系统配置标准化 - 系统服务

需求:关闭无用服务

一键优化脚本

Centos 7.x

目前无优化方案

Centos 6.x

#set system start service
LANG=en
for chkoff in `chkconfig --list|grep 3:on|awk '{print $1}'`;do chkconfig --level 3 $chkoff off;done 
for chkoff in crond network rsyslog sshd;do chkconfig --level 3 $chkoff on;done

3、系统配置标准化 - VIM

需求:VIM基础配置,并增加易读性

一键优化脚本(结尾拷贝到普通用户环境变量)

#modify vimrc
cat >> /root/.vimrc << EOF
syntax enable
syntax on
set ruler
set number
set cursorline
set cursorcolumn
set hlsearch
set incsearch
set ignorecase
set nocompatible
set wildmenu
set paste
set nowrap
set expandtab
set tabstop=2
set shiftwidth=4
set softtabstop=4
set gcr=a:block-blinkon0
set guioptions-=l
set guioptions-=L
set guioptions-=r
set guioptions-=R
highlight CursorLine cterm=NONE ctermbg=black ctermfg=green guibg=NONE guifg=NONE
highlight CursorColumn cterm=NONE ctermbg=black ctermfg=green guibg=NONE guifg=NONE
EOF
cp /root/.vimrc /home/oracle/

4、系统配置标准化 - 用户

需求:

  • 建立日常管理用户
  • 为用户设置sudo权限
  • 所有用户使用相同密码(无CMDB情况下)
  • 用户设置强密码

一键优化脚本

#add default user
useradd hwb -u 2019
echo 'hwb@)!&' | passwd --stdin hwb && history -c 
#set sudo authority
echo "" >> /etc/sudoers
echo "#set sudo authority" >> /etc/sudoers
echo "hwb ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers

5、系统配置标准化 - SSH

需求:

  • 禁止Root远程登录
  • 关闭DNS解析
  • 不允许空密码
  • 修改SSH默认端口
  • 关闭GSSAPI校验

一键优化脚本

\cp /etc/ssh/sshd_config /etc/ssh/sshd_config.`date +%F`
sed -i 's/^GSSAPIAuthentication yes$/GSSAPIAuthentication no/' /etc/ssh/sshd_config
sed -i 's/#UseDNS yes/UseDNS no/' /etc/ssh/sshd_config
sed -i 's%#PermitRootLogin yes%PermitRootLogin no%g' /etc/ssh/sshd_config
sed -i 's%#PermitEmptyPasswords no%PermitEmptyPasswords no%g' /etc/ssh/sshd_config
#sed -i 's%#Port 22%Port 52020%g' /etc/ssh/sshd_config

6、系统配置标准化 - 时间

需求

  • 所有服务器每分钟与时间服务器进行同步

一键优化脚本

 echo "* 4 * * * /usr/sbin/ntpdate ${ntp_server}> /dev/null 2>&1" >> /var/spool/cron/root

7、系统配置标准化 - Selinux

需求:关闭selinux

一键优化脚本

sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config

8、系统配置标准化 - 关闭ctrl+alt+del快捷键

需求:关闭ctrl+alt+del快捷键

一键优化脚本

centos 7.x

mv /usr/lib/systemd/system/ctrl-alt-del.target /usr/lib/systemd/system/ctrl-alt-del.target.bak

centos 6.x

mv /etc/init/control-alt-delete.conf /etc/init/control-alt-delete.conf.bak

04

软件标准化

1、软件标准化 - 常用软件包

需求:安装常用软件

一键优化脚本

yum -y install ntp wget tree telnet sysstat sysstat iptraf ncurses-devel openssl-devel zlib-devel OpenIPMI-tools nmap screen

2、软件标准化 - 升级软件包

需求:升级当前软件包

一键优化脚本

yum -y update

3、配套软件标准化 - 公钥(管理机免密钥)

需求:

  • 设置管理机(Ansible)的公钥
  • 便于上线后,进行个性化配置(配置文件修改)

一键优化脚本

wget http://xx.xx.xx.xx/ansible_key -O /tmp/ansible_key
cat /tmp/ansible_key >> /home/hwb/.ssh/authorized_keys
rm -f /tmp/ansible_key

篇幅有限,这块就先介绍到这了,如果大家想做公司标准化这一块,建议还是根据公司实际情况去具体设置,最后再根据需求统一写成一个shell脚本,这样一个标准化的脚本就建立起来了。后面会分享更多devops和DBA方面的内容,感兴趣的朋友可以关注一下~

相关推荐

前端入门——css 网格轨道详细介绍

上篇前端入门——cssGrid网格基础知识整体大概介绍了cssgrid的基本概念及使用方法,本文将介绍创建网格容器时会发生什么?以及在网格容器上使用行、列属性如何定位元素。在本文中,将介绍:...

Islands Architecture(孤岛架构)在携程新版首页的实践

一、项目背景2022,携程PC版首页终于迎来了首次改版,完成了用户体验与技术栈的全面升级。作为与用户连接的重要入口,旧版PC首页已经陪伴携程走过了22年,承担着重要使命的同时,也遇到了很多问题:维护/...

HTML中script标签中的那些属性

HTML中的<script>标签详解在HTML中,<script>标签用于包含或引用JavaScript代码,是前端开发中不可或缺的一部分。通过合理使用<scrip...

CSS 中各种居中你真的玩明白了么

页面布局中最常见的需求就是元素或者文字居中了,但是根据场景的不同,居中也有简单到复杂各种不同的实现方式,本篇就带大家一起了解下,各种场景下,该如何使用CSS实现居中前言页面布局中最常见的需求就是元...

CSS样式更改——列表、表格和轮廓

上篇文章主要介绍了CSS样式更改篇中的字体设置Font&边框Border设置,这篇文章分享列表、表格和轮廓,一起来看看吧。1.列表List1).列表的类型<ulstyle='list-...

一文吃透 CSS Flex 布局

原文链接:一文吃透CSSFlex布局教学游戏这里有两个小游戏,可用来练习flex布局。塔防游戏送小青蛙回家Flexbox概述Flexbox布局也叫Flex布局,弹性盒子布局。它决定了...

css实现多行文本的展开收起

背景在我们写需求时可能会遇到类似于这样的多行文本展开与收起的场景:那么,如何通过纯css实现这样的效果呢?实现的难点(1)位于多行文本右下角的展开收起按钮。(2)展开和收起两种状态的切换。(3)文本...

css 垂直居中的几种实现方式

前言设计是带有主观色彩的,同样网页设计中的css一样让人摸不头脑。网上列举的实现方式一大把,或许在这里你都看到过,但既然来到这里我希望这篇能让你看有所收获,毕竟这也是前端面试的基础。实现方式备注:...

WordPress固定链接设置

WordPress设置里的最后一项就是固定链接设置,固定链接设置是决定WordPress文章及静态页面URL的重要步骤,从站点的SEO角度来讲也是。固定链接设置决定网站URL,当页面数少的时候,可以一...

面试发愁!吃透 20 道 CSS 核心题,大厂 Offer 轻松拿

前端小伙伴们,是不是一想到面试里的CSS布局题就发愁?写代码时布局总是对不齐,面试官追问兼容性就卡壳,想跳槽却总被“多列等高”“响应式布局”这些问题难住——别担心!从今天起,咱们每天拆解一...

3种CSS清除浮动的方法

今天这篇文章给大家介绍3种CSS清除浮动的方法。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。首先,这里就不讲为什么我们要清楚浮动,反正不清除浮动事多多。下面我就讲3种常用清除浮动的...

2025 年 CSS 终于要支持强大的自定义函数了?

大家好,很高兴又见面了,我是"高级前端进阶",由我带着大家一起关注前端前沿、深入前端底层技术,大家一起进步,也欢迎大家关注、点赞、收藏、转发!1.什么是CSS自定义属性CSS自...

css3属性(transform)的一个css3动画小应用

闲言碎语不多讲,咱们说说css3的transform属性:先上效果:效果说明:当鼠标移到a标签的时候,从右上角滑出二维码。实现方法:HTML代码如下:需要说明的一点是,a链接的跳转需要用javasc...

CSS基础知识(七)CSS背景

一、CSS背景属性1.背景颜色(background-color)属性值:transparent(透明的)或color(颜色)2.背景图片(background-image)属性值:none(没有)...

CSS 水平居中方式二

<divid="parent"><!--定义子级元素--><divid="child">居中布局</div>...

取消回复欢迎 发表评论: