老男孩教育专注IT教育10余年,只培养IT技术精英

全国免费咨询电话(渠道合作):400-609-2893

运维必备技能:Linux系统优化进阶都需要掌握哪些知识?

老男孩IT教育

技术博客

2020年11月10日 10:35

Linux基础必备优化,Linux基础服务优化,Linux内核优化,老男孩教育Linux运维培训课程带你领域Linux优化之美

一.基础必备优化:

1.关闭SElinux

2.Firewalld CenetOS7 Iptables (C6) 安全组(阿里云)

3.网络管理服务

  NetworkManager network
相同地方 管理网络 管理网络
区别 通过nmcli命令 修改配置文件 重启网卡

4.添加普通用户 配置sudo

1oldboy ALL=(ALL)    NOPASSWD: ALL

5.hosts文件 解析当前的主机名

6.锁定关键文件系统 chattr lsattr

7.系统字符集:UTF-8

1#en_US.UTF8
2#zh_CN.UTF8 

8.调整用户登录提示信息 /etc/motd

9.清空 /etc/issue /etc/issue.net

 

二.基础服务优化:

10.ssh优化 :

Port 22 #修改默认的端口号
PermitRootLogin no #禁止root远程登陆
#ssh远程连接慢
UseDNS no #禁止系统把ip解析对应域名
GSSAPIAuthentication no

配置内外网监听不同端口
ListenAddress 10.0.0.7:52113
ListenAddress 172.16.1.7:22

11.yum源: 修改系统默认的yum源 增加epel源

12.软件包默认的源+epel

必须安装的工具 tree vim wget bash-completion (默认源) bash-completion-extras(epel) lrzsz net-tools sysstat iotop iftop htop unzip nc nmap telnet bc psmisc

命令 作用
tree 以树形显示目录结构
psmisc pstree 等命令
vim vi升级版
wget 下载工具
bash-completion(默认源) 自动补全增强工具,可以补全命令参数
bash-completion-extras(epel) 自动补全超级增强工具,可以补全命令参数
lrzsz 上传下载工具 rz和sz
net-tools ifconfig route命令属于的软件包
sysstat sar iostat 属于的软件包
iotop 查询系统每个进程的io读写情况 swap写入情况
iftop 查询网络流量情况
nethogs 显示每个进程的流量情况
htop top升级版
unzip 解压
nc ncat 类似telnet
nmap 网络扫描工具
telnet 检查端口是否开启
bc 基础计算器
lsof 显示所有被打开的文件

13.时间同步:定时任务+ ntpdate / chrony

14.文件描述符 每个进程可以打开的最大文件数量

11)临时 ulimit -n65535 
22)永久 /etc/security/limits.conf

echo '* - nofile 65535 ' >>/etc/security/limits.conf

15.开机自启动crond sysstat network rsyslog sshd (c6)

16.修改历史命令环境变量

export TMOUT=300 #timeout linux不进行任何操作 300s之后自动登出
export HISTFILE=1000 history 命令最多记录几条
export HISTFILESIZE=1000 history 历史记录的文件里面最多记录几条
export HISTCONTROL=ignorespace #控制history 命令如何记录 历史命令
#只要以空格开头的命令 history不记录

 

三.内核优化:

17.禁止被ping

1  echo "net.ipv4.icmp_echo_ignore_all=1" >> /etc/sysctl.conf 
2  sysctl -p 
 1[root@web01 ~]# ip a 
 21: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
 3    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
 4    inet 127.0.0.1/8 scope host lo
 5       valid_lft forever preferred_lft forever
 6    inet6 ::1/128 scope host 
 7       valid_lft forever preferred_lft forever
 82: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
 9    link/ether 00:0c:29:82:a5:bb brd ff:ff:ff:ff:ff:ff
10    inet 10.0.0.7/24 brd 10.0.0.255 scope global eth0
11       valid_lft forever preferred_lft forever
12    inet6 fe80::20c:29ff:fe82:a5bb/64 scope link 
13       valid_lft forever preferred_lft forever
143: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
15    link/ether 00:0c:29:82:a5:c5 brd ff:ff:ff:ff:ff:ff
16    inet 172.16.1.7/24 brd 172.16.1.255 scope global eth1
17       valid_lft forever preferred_lft forever
18    inet6 fe80::20c:29ff:fe82:a5c5/64 scope link 
19       valid_lft forever preferred_lft forever
20
21[root@web01 ~]# echo '  net.ipv4.icmp_echo_ignore_all=1' >> /etc/sysctl.conf  
22[root@web01 ~]# sysctl -p 
23net.ipv4.icmp_echo_ignore_all = 1
24[root@web01 ~]# cat /proc/sys/net/ipv4/icmp_echo_ignore_all 
251
26[root@web01 ~]# ping 10.0.0.7
27PING 10.0.0.7 (10.0.0.7) 56(84) bytes of data.
28^C
29--- 10.0.0.7 ping statistics ---
306 packets transmitted, 0 received, 100% packet loss, time 5000ms
31
32[root@web01 ~]# ping 172.16.1.7
33PING 172.16.1.7 (172.16.1.7) 56(84) bytes of data.
34^C
35--- 172.16.1.7 ping statistics ---
362 packets transmitted, 0 received, 100% packet loss, time 999ms

18.内核

开启内核转发功能(内网服务器,上外网的时候需要用到)

1echo 'net.ipv4.ip_forward=1 ' >>/etc/sysctl.conf 
2sysctl -p 

/proc/sys/net/ipv4/ip_forward

time_wait过多

1 echo 'net.ipv4.tcp_tw_recycle=1 ' >>/etc/sysctl.conf 
2 echo 'net.ipv4.tcp_tw_reuse=1 ' >>/etc/sysctl.conf 

/proc/sys/net/ipv4/tcp_tw_recycle #开启tcp回收功能
/proc/sys/net/ipv4/tcp_tw_reuse #开启tcp重复使用功能

java程序 故障 导致大量占用swap 而不占用物理内存

vm.swappiness #控制系统是否优先使用swap 数字越大越优先使用swap 越小越优先使用物理内存

 

本文经授权发布,不代表老男孩教育立场。如若转载请联系原作者。