CentOS 7 日常优化

本文详细介绍CentOS7系统的全面优化策略,包括设置基本信息、管理账户、配置yum源、优化selinux与防火墙、定时清理文件、调整文件描述符数量、更改字符集、锁定关键文件等,提供实用脚本与配置参考。

1.设置基本信息主机名、ip地址、系统时间和互联网同步

1>设置主机名

hostnamectl set-hostname mark01

2>设置IP地址
2.1>nmtui图形化设置参考

https://jingyan.baidu.com/article/22a299b593315b9e19376a00.html

2.2>编辑网卡配置文件

vi /etc/sysconfig/network-scripts/ifcfg-ens33 #注意ifcfg-ens33为网卡名,不同机器会有所不同
配置文件

TYPE="Ethernet"
BOOTPROTO="static"  #启用静态IP地址
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
NAME="ens33"
UUID="8071cc7b-d407-4dea-a41e-16f7d2e75ee9"
ONBOOT="yes"  #开启自动启用网络连接
IPADDR0="192.168.126.201"  #设置IP地址
PREFIX0="24"  #设置子网掩码
GATEWAY0="192.168.126.2"  #设置网关
DNS1="119.29.29.29"  #设置主DNS
DNS2="223.5.5.5"  #设置备DNS
HWADDR="00:0C:29:EB:F2:B3"
IPV6_PEERDNS="yes"
IPV6_PEERROUTES="yes"
3>设置时区,自动同步服务器

CentOS 7或基于RHEL 7操作系统,默认安装了chrony,因此我们无需再安装使用ntp
timedatectl set-timezone Asia/Shanghai #设置时区
vi /etc/chrony.conf #修改配置文件内网环境使用局域网主机地址
参考配置文件

# 使用pool.ntp.org项目中的公共服务器。以server开,理论上你想添加多少时间服务器都可以。
# Please consider joining the pool (http://www.pool.ntp.org/join.html).
server 0.centos.pool.ntp.org iburst
server 1.centos.pool.ntp.org iburst
server 2.centos.pool.ntp.org iburst
server 3.centos.pool.ntp.org iburst

# 根据实际时间计算出服务器增减时间的比率,然后记录到一个文件中,在系统重启后为系统做出最佳时间补偿调整。
driftfile /var/lib/chrony/drift

# chronyd根据需求减慢或加速时间调整,
# 在某些情况下系统时钟可能漂移过快,导致时间调整用时过长。
# 该指令强制chronyd调整时期,大于某个阀值时步进调整系统时钟。
# 只有在因chronyd启动时间超过指定的限制时(可使用负值来禁用限制)没有更多时钟更新时才生效。
makestep 1.0 3

# 将启用一个内核模式,在该模式中,系统时间每11分钟会拷贝到实时时钟(RTC)。
rtcsync

# Enable hardware timestamping on all interfaces that support it.
# 通过使用hwtimestamp指令启用硬件时间戳
#hwtimestamp eth0
#hwtimestamp eth1
#hwtimestamp *

# Increase the minimum number of selectable sources required to adjust
# the system clock.
#minsources 2

# 指定一台主机、子网,或者网络以允许或拒绝NTP连接到扮演时钟服务器的机器
#allow 192.168.0.0/16
#deny 192.168/16

# Serve time even if not synchronized to a time source.
local stratum 10

# 指定包含NTP验证密钥的文件。
#keyfile /etc/chrony.keys

# 指定日志文件的目录。
logdir /var/log/chrony

# Select which information is logged.
#log measurements statistics tracking

2.管理添加账户,禁用root账户直接登录

sed -i 's/#Port 22/Port 2121/' /etc/ssh/sshd_config #更改ssh端口
useradd user ; passwd user #创建用户
修改配置文件限制root用户登录管理系统
vi /etc/ssh/sshd_config #找到“PermitRootLogin yes”把注释去掉 保存,然后重启sshd服务
利用sudo控制用户的使用权限
vi /etc/sudoers 配置参考

root    ALL=(ALL)       ALL
joker   ALL=(ALL)       /usr/bin/rsync
user    ALL=(ALL)       NOPASSWD:ALL

解释:第一个ALL代表机器,就是所有机器,第二个ALL代表所有角色,第三个ALL代表可以执行所有命令,NOPASSWD代表提权命令时不需要提示密码
joker用户执行rsync命令添加sudo不需要输入root密码
user用户执行任何命令添加sudo不需要输入root密码

3.配置yum源、epel源,选择国内站点

mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak	#备份
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo	#下载yum源
wget -P /etc/yum.repos.d/ http://mirrors.aliyun.com/repo/Centos-7.repo	#下载epel源

4.配置selinux、防火墙

sed -i 's#SELINUX=enforcing#SELINUX=disabled#' /etc/selinux/config #关闭selinux
firewall-cmd --permanent --add-port=80/tcp #示例开放tcp80端口
iptables/firewalld防火墙常用操作参考
https://blog.youkuaiyun.com/junweicn/article/details/84101737

5.定时自动清理临时文件、日志文件(脚本)

mkdir -p /data/sh/cleanlog
vi /data/sh/cleanlog/delOldLogs.sh	#创建清理脚本
vi /data/sh/cleanlog/del_all_OldLogs.sh	#指定目录调用delOldLogs.sh

delOldLogs.sh

#!/bin/sh
#删除输入路径下的修改时间在45天以前的日志文件
find $1 -mtime +45 -name "*log*" -exec rm -f {} \;

del_all_OldLogs.sh

#!/bin/bash
/data/sh/cleanlog/delOldLogs.sh “/home/usr/ewp/logs”
/data/sh/cleanlog/delOldLogs.sh “/home/usr/h5/logs”
/data/sh/cleanlog/delOldLogs.sh “/home/usr/Payment/logs”

chmod a+x /data/sh/cleanlog/del*.sh #给脚本添加执行权限
添加计划任务

echo "10 0 * * 6 root /data/sh/cleanlog/del_all_OldLogs.sh" > /tmp/tmp.txt" >> /etc/crontab
crontab /etc/crontab	#加载配置文件
crontab -l	#查看配置是否生效

6.优化调整文件描述符的数量

\cp /etc/security/limits.conf{,.$(date +%F_%T).backup}
echo '*               -    nofile            65535' >> /etc/security/limits.conf
tail -1 /etc/security/limits.conf 
# 重启生效
ulimit -n

7.更改系统字符集为“zh_CN.UTF-8”,使其支持中文,防止出现乱码问题

vi ~/.bash_profile
#添加
LANG="zh_CN.UTF-8"
export LANG

8.锁定关键文件,如: passwd、/etc/shadow/、/etc/group/、/etc/gshadow、/etc/inittab,处理以上内容后把chattr、lsattr、改名为root,转移走,这样就安全多了

chattr +a /etc/passwd /etc/shadow /etc/group /etc/gshadow /etc/inittab
mv /usr/bin/chattr ~/.pki/root
mv /usr/bin/lsattr ~/.pki/toor

9.设置定义/etc/issue /etcissue.net,系统及内核版本登录前的屏幕显示

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

10.打补丁并升级有已知漏洞的软件

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值