Centos系统常见的优化

本文详细介绍Linux服务器的优化策略,包括安全登录管理、时间同步、文件保护、内核调优等,旨在提升服务器的安全性和性能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

优化而言,没有标准的优化方案,只有最合适自己的优化方案,同时每个系统的功能也是不一样的,所以说每个服务器优化起来也是不一样的!

安全优化

  1. 登录管理
    对于linux系统来说,最好所有的操作都通过普通用户提权去操作,root拥有对系统最大的权限,对外开放也是不安全的,同时建议每个服务都有对应的服务账号,并非使用root。
1. 创建普通登录用户
useradd visitor
echo 123456|passwd --stdin visitor #此为测试生产环境需要替换成复杂密码
2. 添加sudo用户
echo "visitor ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers
visudo -c
具体的详细sudo配置可以自己寻找文件
  1. 禁止root用户通过远程登录
[visitor@JD ~]$ sudo cat /etc/ssh/sshd_config | grep Root
PermitRootLogin no
#提前确保有普通账户可以登录系统,不然的话就很尴尬
  1. 修改SSHD默认22端口
[visitor@JD ~]$ cat /etc/ssh/sshd_config| grep -i setup
Port 2598 #Setup sshd login port
AddressFamily any #Setup login source IP address
ListenAddress 0.0.0.0 #Setup loging ListenIP
  1. 清理无用的系统账户
根据实际情况修改/etc/passwd

时间管理

  1. 配置时间管理服务器,可以根据下列文章去配置

https://blog.csdn.net/AiL598/article/details/89463215

  1. 配置定时同步时间
[root@JD ~]# echo "*/5 * * * * /usr/bin/ntpdate ntp1.aliyun.com >>/dev/null 2>&1" >>/var/spool/cron/root
[root@JD ~]# crontab -l
*/5 * * * * /usr/bin/ntpdate ntp1.aliyun.com >>/dev/null 2>&1
#我这里为公有云的机器,所有同步的是公网,实际按照生产环境来同步时间

安全限制

常见的情况下selinux、iptables都是需要关闭的,一般使用硬件的waf来控制网络策略

1. 关闭selinux
sed -i "s#SELINUX=enforcing#SELINUX=disabled#g" /etc/selinux/config
setenforce 0
getenforce

2. 关闭iptables&firewalld #centos为firewalld
/etc/init.d/iptables status
/etc/init.d/iptables stop
chkconfig iptables off

服务打开文件限制

服务打开限制在centos7上面默认为1024个;但是如果是高并发的系统的话,1024显得太渺小了,为了服务器的正常稳定运行,需要设置

echo ;*             -      nofile             65535'>>/etc/security/limits.conf
ulimit -n #查看now 的限制

内核优化

  • TCP内核优化
netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'

#这个命令会输出类似下面的结果:
LAST_ACK 16
SYN_RECV 348
ESTABLISHED 70
FIN_WAIT 1229
FIN_WAIT 230
CLOSING 33
TIME_WAIT 18098

由上命令所见,TIME_WAIT的数量为18098,而TCP链接在断开之后会以TIME_WAIT的状态等待好久才会端口,在此期间链接所占用的端口并不会断开,如果我们是在高并发的情况下,如果端口被TIME_WAIT占用了满了;会出现链接失败的报错,所以下列参数是优化TCP链接的,但是如果服务器本身的并发量并不是很大,优化的效果也不是很明显

vim /etc/sysctl.conf

net.ipv4.tcp_syncookies= 1	#表示开启SYNCookies。当出现SYN等待队列溢出时,启用cookies来处理,可防范少量SYN攻击,默认为0,表示关闭;
net.ipv4.tcp_tw_reuse= 1	#表示开启重用。允许将TIME-WAITsockets重新用于新的TCP连接,默认为0,表示关闭;
net.ipv4.tcp_tw_recycle= 1	#表示开启TCP连接中TIME-WAITsockets的快速回收,默认为0,表示关闭;
net.ipv4.tcp_fin_timeout= 30	#修改系統默认的TIMEOUT 时间。

执行此命令直接生效
[visitor@JD ~]$ sudo sysctl -p
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_tw_recycle = 1
net.ipv4.tcp_fin_timeout = 30

文件安全

对于一些比较重要的文件,需要保护的文件可以使用chattr、lsattr进行保护,然后再将chattr、lsattr修改为其他的名字

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

高Sir_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值