当前位置:   article > 正文

CentOS 7 系统优化

CentOS 7 系统优化

CentOS 7 系统优化

1、配置YUM源

阿里云的YUM源配置:
CentOS 7使用以下命令:
sudo wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

CentOS 8使用以下命令:
sudo wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-8.repo


清华大学的YUM源配置:
CentOS 7使用以下命令:
sudo wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.tuna.tsinghua.edu.cn/help/centos-vault/

CentOS 8使用以下命令:
sudo wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.tuna.tsinghua.edu.cn/help/centos/

阿里云的EPEL源
CentOS 7使用以下命令:
sudo wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo

CentOS 8使用以下命令:
sudo wget -O /etc/yum.repos.d/epel.repo https://mirrors.aliyun.com/repo/epel-8.repo

更新YUM缓存
sudo yum clean all
sudo yum makecache
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25

2、更新系统

yum update -y
  • 1

3、安装必要的工具

yum install -y lrzsz net-tools unzip zip vim wget curl telnet bash-completion bash-completion-extras
  • 1

4、修改root用户密码

echo 123456 | passwd --stdin root
  • 1

5、关闭selinux

临时关闭
setenforce 0

永久关闭
sed -i  's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config

查看状态
getenforce
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

6、修改操作系统的语言

通过LANG变量查看系统语言
echo $LANG
 
在文件中查看
cat /etc/locale.conf 
LANG=zh_CN.UTF-8
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

7、修改主机名

hostnamectl set-hostname CentOS7.5
  • 1

8、设置时区:

查询当前时区
timedatectl

设置时区
sudo timedatectl set-timezone Asia/Shanghai

显示系统的所有时区
#timedatectl list-timezones

硬件时间 clock
系统时间同步到硬件时间 -w 保证硬件和系统时间一致
clock -w
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

9、检查防火墙状态并放开22端口

#查看firewalld状态
systemctl status firewalld

#关闭firewalld
systemctl stop firewalld

#firewalld放开22端口
firewalld-cmd --add-port=22/tcp --permanent
#重启firewalld
firewall-cmd--reload
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

10、关闭postfix服务:

sudo systemctl stop postfix
sudo systemctl disable postfix
  • 1
  • 2

11、锁定系统关键文件,防止被提权篡改

#对系统文件添加 -i 权限,所有用户都不能对文件进行修改删除操作
chattr +i /etc/passwd /etc/shadow /etc/group /etc/inittab

#取消 -i 权限
chattr -i /etc/passwd /etc/shadow /etc/group /etc/inittab

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

12、禁ping

永久设置禁止ping :
echo "net.ipv4.icmp_echo_ignore_all=1"  >> /etc/sysctl.conf  #0表示允许,1表示禁止
sysctl -p 

实际生产环境中最常用的做法:
echo 0 > /proc/sys/net/ipv4/icmp_echo_ignore_all    #0表示允许,1表示禁止
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

13、设置ulimit

# 调整/etc/security/limits.conf默认配置,将使用nohup命令的进程调整了ulimit值
cat >>/etc/security/limits.conf<<'EOF'
root soft nofile 65535
root hard nofile 65535
* soft nofile 65535
* hard nofile 65535
EOF


# 使用systemd管理的命令,可以使用以下命令调整ulimit值
sed -i 's/#DefaultLimitNOFILE=/DefaultLimitNOFILE=65535/g' /etc/systemd/*.conf
systemctl daemon-reload


# 将系统整体的句柄限制数调整为188844
echo "fs.file-max = 188844" >> /etc/sysctl.conf
# 查看是否生效
cat /etc/sysctl.conf

#生效配置
sysctl -p
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21

14、ssh配置优化

cp /etc/ssh/sshd_config vim /etc/ssh/sshd_config_bak
vim /etc/ssh/sshd_config

StrictHostKeyChecking no #首次登录不需要输入yes
Port    22                  #默认端口,生产环境建议修改
ListenAddress IP            #监听服务器端的IP,ss -ntl 查看22端口绑定的iP地址
LoginGraceTime 2m           #登录时不输入密码时超时时间
HostKey                     #HostKey本地服务端的公钥路径
UseDNS no                   #禁止将IP逆向解析为主机名,然后比对正向解析的结果,防止客户端欺骗**
PermitRootLogin yes         #是否允许root使用SSH远程登录**
MaxAuthTries 6              #密码错误的次数6/2=3(MAN帮助中写明要除2)次后断开连接
MaxSessions 10              #最大的会话连接数(连接未登录的会话最大值,默认拒绝旧的连接未登录的会话)

StrictModes yes             #检查用户家目录中ssh相关的配置文件是否正确
PubkeyAuthentication yes    #是否使用基于key验证登录
AuthorizedKeysFile      .ssh/authorized_keys    #key验证登录的客户端公钥路径
PasswordAuthentication yes  #是否允许使用密码登录
PermitEmptyPasswords no     #用户使用空口令登录
GatewayPorts no             #启用网关功能,开启后可以将建立的SSH隧道(端口转发)共享出去

ClientAliveCountMax 3       #探测3次客户端是否为空闲会话,↓3*10分钟后断开连接
ClientAliveInterval 10      #空闲会话时长,每10分钟探测一次
GSSAPIAuthentication no     #不开启GSSAPI认证
AllowUsers username         #白名单,如果白名单有用户只有白名单的用户可以登陆
DenyUsers                   #黑名单,被拒绝的用户,如果即允许又拒绝则拒绝生效
AllowGroups                 #组白名单
DenyGroups                  #组黑名单
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/天景科技苑/article/detail/1000677
推荐阅读
相关标签
  

闽ICP备14008679号