一.基礎必備優化:
1.關閉SElinux
2.Firewalld CenetOS7 Iptables (C6) 安全組(阿里雲)
3.網絡管理服務
NetworkManagernetwork
相同地方管理網絡管理網絡
區別通過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以樹形顯示目錄結構
psmiscpstree 等命令
vimvi升級版
wget下載工具
bash-completion(默認源)自動補全增強工具,可以補全命令參數
bash-completion-extras(epel)自動補全超級增強工具,可以補全命令參數
lrzsz上傳下載工具 rz和sz
net-toolsifconfig route命令屬於的軟體包
sysstatsar iostat 屬於的軟體包
iotop查詢系統每個進程的io讀寫情況 swap寫入情況
iftop查詢網絡流量情況
nethogs顯示每個進程的流量情況
htoptop升級版
unzip解壓
ncncat 類似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:
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:
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:
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 越小越優先使用物理內存