详解Linux系统标准化设置--脚本一键设置,值得收藏
sinye56 2024-10-03 00:34 7 浏览 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方面的内容,感兴趣的朋友可以关注一下~
相关推荐
- Linux两种光驱自动挂载的方法
-
环境:CentOS6.4西昆云服务器方式一修改fstab文件/etc/fstab是系统保存文件系统信息?静态文件,每一行描述一个文件系统;系统每次启动会读取此文件信息以确定需要挂载哪些文件系统。参...
- linux系统运维,挂载和分区概念太难?在虚机下操作一次全掌握
-
虚拟机的好处就是可以模拟和学习生产环境的一切操作,假如我们还不熟悉磁盘操作,那先在虚机环境下多操作几次。这次来练习下硬盘扩容操作。虚拟机环境:centos8vm11linux设备命名规则在linux中...
- Linux 挂载 NFS 外部存储 (mount 和 /etc/fstab)
-
mount:手工挂载,下次重启需再重新挂载,操作命令:mount-tnfs-ooptionsserver:/remote/export/local/directory上面命令中,本地目录...
- 在Linux中如何设置自动挂载特定文件系统(示例)
-
Linux...
- Linux环境中的绑定挂载(bind mount)
-
简介:Linux中的mount命令是一个特殊的指令,主要用于挂载文件目录。而绑定挂载(bindmount)命令更为特别。mount的bind选项将第一个目录克隆到第二个。一个目录中的改变将会在...
- Linux挂载CIFS共享 临时挂载 1. 首先
-
如何解决服务器存储空间不足的问题?大家好,欢迎回来。在上一期视频中,我为大家介绍了如何利用Linux挂载来扩容服务器存储空间。这一期视频,我将以Linux为例,教大家如何进行扩容。群辉使用的是Linu...
- Linux 硬盘挂载(服务器重启自动挂载)
-
1、先查看目前机器上有几块硬盘,及已挂载磁盘:fdisk-l能够查看到当前主机上已连接上的磁盘,以及已经分割的磁盘分区。(下面以/dev/vdb磁盘进行分区、挂载为例,挂载点设置为/data)df...
- linux 挂载磁盘
-
在Linux中挂载硬盘的步骤如下:...
- 笨小猪教您Linux磁盘挂载
-
本教程针对Linux系统比较熟悉或者想学习Linux基础的用户朋友,本教程操作起来比较傻瓜式,跟着步骤就会操作,本文使用的工具是XShell同时多多注意空格(文中会有提示)。【问答】什么是磁盘挂载?答...
- Linux 磁盘挂载和docker安装命令
-
本篇给大家介绍Linux磁盘挂载和docker安装的相关内容,Linux服务器的操作是一个手熟的过程,一些不常用的命令隔断时间就忘记了,熟话说好记性不如烂笔头,还需在平时的工作中多练习记录。...
- Linux设置开机自动挂载分区
-
有时候,我们在安装完Linux系统之后,可能在使用过程中添加硬盘或者分区进行使用,这时候就需要手动把磁盘分区挂载到某个路径,但是开机之后就会消失,需要重新挂载,非常麻烦,那么我们应该如何设置开机自动挂...
- 在linux挂载一个新硬盘的完整步骤
-
以下是在Linux中挂载新原始磁盘的完整步骤,包括分区、创建文件系统以及使用UUID在/etc/fstab中启动时挂载磁盘:将新的原始磁盘连接到Linux系统并打开电源。运行以下命令,...
- Linux系统如何挂载exFAT分区
-
简介:Linux系统中不能像Windows系统那样自动识别加载新设备,需要手动识别,手动加载。Linux中一切皆文件。文件通过一个很大的文件树来组织,文件树的根目录是:/,从根目开始录逐级展开。这些文...
- Linux系统挂载硬盘
-
fdisk-l查看可挂载的磁盘都有哪些df-h查看已经挂载的磁盘...
- WSL2发布,如何在Win10中挂载Linux文件系统
-
WSL2是最新版本的架构,它为Windows子系统提供支持,使其能够在Windows上运行ELF64Linux二进制文件。通过最近的更新,它允许使用Linux文件系统访问存储在硬盘中的文件。如果你...
你 发表评论:
欢迎- 一周热门
- 最近发表
- 标签列表
-
- oracle忘记用户名密码 (59)
- oracle11gr2安装教程 (55)
- mybatis调用oracle存储过程 (67)
- oracle spool的用法 (57)
- oracle asm 磁盘管理 (67)
- 前端 设计模式 (64)
- 前端面试vue (56)
- linux格式化 (55)
- linux图形界面 (62)
- linux文件压缩 (75)
- Linux设置权限 (53)
- linux服务器配置 (62)
- mysql安装linux (71)
- linux启动命令 (59)
- 查看linux磁盘 (72)
- linux用户组 (74)
- linux多线程 (70)
- linux设备驱动 (53)
- linux自启动 (59)
- linux网络命令 (55)
- linux传文件 (60)
- linux打包文件 (58)
- linux查看数据库 (61)
- linux获取ip (64)
- 关闭防火墙linux (53)