1. 程式人生 > >CentOS7.4.1708查看系統相關信息及系統的初步優化

CentOS7.4.1708查看系統相關信息及系統的初步優化

centos7優化 修改dns 修改IP

一、常用操作

1,查看系統版本號

[root@localhost ~]# cat /etc/redhat-release 
CentOS Linux release 7.4.1708 (Core)

2.查看主機名

[root@localhost ~]# hostname
localhost.localdomain

3.顯示系統名、節點名稱、操作系統的發行版號、操作系統版本、運行系統的機器 ID 號

[root@localhost ~]# uname -a
Linux localhost.localdomain 3.10.0-693.el7.x86_64 #1 SMP Tue Aug 22 21:09:27 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux

4.查看系統位數

[root@localhost ~]# getconf LONG_BIT
64

5.查看系統版本

[root@localhost ~]# cat /proc/version
Linux version 3.10.0-693.el7.x86_64 ([email protected]) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-16) (GCC) ) #1 SMP Tue Aug 22 21:09:27 UTC 2017
[root@localhost ~]#

6.查看系統內存使用情況

[root@localhost ~]# free -m
              total        used        free      shared  buff/cache   available
Mem:            976         119         564           6         291         676
Swap:          2047           0        2047


7.查看CPU信息

[root@localhost ~]# cat /proc/cpuinfo
[root@localhost ~]# cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c      1  Intel(R) Core(TM) i7-8550U CPU @ 1.80GHz

8.查看內存信息

[root@localhost ~]#  cat /proc/meminfo

二、修改IP地址、網關、主機名、DNS等

1.修改IP、網關、DNS和網卡自動啟動

以root權限登陸centos7並編輯vi /etc/sysconfig/network-scripts/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=eno16777736      
UUID=4f40dedc-031b-4b72-ad4d-ef4721947439      
DEVICE=eno16777736      
ONBOOT=yes     #這裏如果為no的話就改為yes,表示網卡設備自動啟動      
PEERDNS=yes      
PEERROUTES=yes      
IPV6_PEERDNS=yes      
IPV6_PEERROUTES=yes      
IPV6_PRIVACY=no
GATEWAY=192.168.10.2     #這裏的網關地址就是第二步獲取到的那個網關地址      
IPADDR=192.168.10.150    #配置ip,在第二步已經設置ip處於192.168.10.xxx這個範圍,我就隨便設為150了,只要不和網關相同均可      
NETMASK=255.255.255.0    #子網掩碼      
DNS1=202.96.128.86     #dns服務器1,填寫你所在的網絡可用的dns服務器地址即可      
DNS2=223.5.5.5        #dns服器2

:wq 保存並退出

重啟網卡服務,執行 /etc/init.d/network restart


2.修改主機名

[root@localhost~]# vi /etc/hostname 
mrxiong.test.com
~                                                                                                                                                            
~                                                                                                                                                            
~                                                                                                                                                            
~                                                                                                                                                            
                                                                                                                                                          
:wq
[root@localhost ~]# reboot


3.修改全局DNS

[root@localhost~]# vi /etc/resolv.conf 
#Generated by NetworkManager
search test.com
nameserver 8.8.8.8                                                                                                                                                           
~                                                                                                                                                            
~                                                                                                                                                            
~                                                                                                                                                            
                                                                                                                                                          
:wq
[root@localhost ~]# reboot


三、關閉Selinux,清空iptables

1.關閉selinux

★修改配置文件需要重啟機器:

修改/etc/selinux/config 文件

[root@localhost~]#cp /etc/selinux/config /etc/selinux/config.bak  #備份需要修改的文件
[root@localhost~]#vim /etc/selinux/config
   將SELINUX=enforcing改為SELINUX=disabled
  :wq  #保存並退出
[root@localhost~]#reboot

或者:

[root@localhost~]#cp /etc/selinux/config /etc/selinux/config.bak  #備份需要修改的文件
[root@localhost~]#sed -i 's#SELINUX=enforcing#SELINUX=disabled#g' /etc/selinux/config 
[root@localhost~]#reboot

#查看更改後的結果

grep SELINUX=disabled /etc/selinux/config



★臨時關閉(不用重啟機器)

setenforce 0 #設置SELinux 成為permissive模式

#setenforce 1 設置SELinux 成為enforcing模式

getenforce #查看selinux當前狀態


2.清空iptables和禁止firewalld運行

iptables F #清理防火墻規則

iptables –L #查看防火墻規則


禁用/停止自帶的firewalld服務

#停止firewalld服務

systemctl stop firewalld.service

#禁用firewalld服務

systemctl disable firewalld.service


四、配置yum更新

centos7更新163源方法:

訪問地址為:http://mirrors.163.com/.help/centos.html

操作如下:

#安裝wget工具
[root@localhost ~]# yum install wget -y   
#備份現有的源
[root@localhost~]#cp /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup   
#下載163源
[root@localhost~]#cd /etc/yum.repos.d/
[root@localhost~]#wget   
[root@localhost~]#mv -f CentOS7-Base-163.repo CentOS-Base.repo
#清空及刷新YUM的緩存狀態:
[root@localhost~]#yum clean all   
[root@localhost~]#yum makecache


更新CentOS7和安裝幾個必要的軟件

[root@localhost~]#rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY*       #導入簽名KEY到RPM
[root@localhost~]#yum  upgrade -y                                 #更新系統內核到最新
[root@localhost~]#yum --exclude=kernel* update               #更新系統軟件而不更新內核
[root@localhost~]#yum install lrzsz ntpdate sysstat -y            #安裝幾個必要的軟件了


五、定時自動更新服務器時間

首先我們立即手動更新所有預先安裝的軟件

yum -y update
yum -y install cronie yum-cron


設置crond.service服務自啟動

systemctl enable crond.service


★ 使用ntpdate命令進行更新:

首先使用ntpdate測試時間服務器可否使用

ntpdate time.windows.com



★設置linux自動每5分鐘同步一次時間服務器進行時間同步

[root@localhost~]#echo '###time sync by mrxiong at 2018-03-09###' >>/var/spool/cron/root
[root@localhost~]#echo '*/5****/usr/sbin/ntpdate time.windows.com>/dev/null 2>&1'>>/var/spool/cron/root


擴展:在機器數量少時,以上定時任務同步時間就可以了。如果機器數量大時,可以在網內另外部署一臺時間同步服務器NTP Server


查看定時任務,查看是否己設置成功

 [root@localhost~]#crontab -l


六、定時自動清理/var/spool/clientmquene/目錄垃圾文件,防止inodes節點被占滿

★ 手動清理方法:

find /var/spool/clientmqueue/ -type f |xargs rm -f


★ 使用shell腳本+定時任務自動清理方法:

[root@localhost ~]# mkdir /server/scripts -p
[root@localhost ~]# vi /server/scripts/spool_clean.sh
#!/bin/sh
find /var/spool/clientmqueue/ -type f |xargs rm -f


然後將其加入到crontab定時任務中

echo '*/30 * * * * /bin/sh /server/scripts/spool_clean.sh >/dev/null 2>&1' >>/var/spool/cron/root


#檢查一下定時任務

 crontab -l


註意:

centos5.8,默認沒有clientmqueue

centos6.4和centos7的要先安裝sendmail才能有/var/spool/clientmqueue/ 這個目錄

[root@localhost ~]# yum install sendmail -y


七、更改默認的SSH服務端口及禁止root用戶遠程連接

[root@localhost ~]# cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak
[root@localhost ~]# vim /etc/ssh/sshd_config
Port 2000          #ssh連接默認的端口是22,改為2000
PermitRootLogin no    #root用戶黑客都知道,禁止它遠程登錄
PermitEmptyPasswords no        #禁止空密碼登錄
UseDNS no              #不使用DNS
[root@localhost ~]#systemctl restart sshd.service    #重啟sshd服務
[root@localhost ~]# netstat -lnt            #查看一下端口
[root@localhost ~]# yum install lsof -y
[root@localhost ~]# lsof -i:2000           #己知端口查服務
[root@localhost ~]# netstat -an|grep -i est        #查看連接狀態


八、鎖定關鍵系統文件chattr +i /etc/passwd

chattr +i /etc/inittab

chattr +i /etc/group

chattr +i /etc/shadow

chattr -i /etc/passwd 對/etc/passwd解鎖

可以防止黑客對系統的修改和攻擊


九、調整文件描述符大小

#查看文件描述符大小

[root@localhost ~]# ulimit -n     
1024


配置文件描述符為65535

[root@localhost ~]# echo '* - nofile 65535'>>/etc/security/limits.conf


配置完成後,重新登錄即可查看

★ 也可以把ulimit -SHn 65535命令加入到/etc/rc.local,然後每次重啟生效

[root@dingjian ~]cat >>/etc/rc.local<<EOF
#open files
ulimit -HSn 65535
#stack size
ulimit -s 65535
EOF


、更改字符集、支持中文

centos7的與centos6有少許不同:

1.安裝中文包:

[root@localhost ~]#yum groupinstall "fonts"


查看系統是否有安裝中文語言包 (列出所有可用的公共語言環境的名稱,包含有zh_CN)

[root@localhost ~]#locale -a |grep "zh_CN"
zh_CN
zh_CN.gb1803
0zh_CN.gb2312
zh_CN.gbk
zh_CN.utf8


若發現以上幾項,說明系統已安裝中文語言包,無需再安裝,

[root@localhost ~]# cat /etc/locale.conf 
LANG="en_US.UTF-8"
[root@localhost ~]# echo $LANG
en_US.UTF-8

十一、清空/etc/issue.去除系統及內核版本登錄前的屏幕顯示

>/etc/issue #清空登陸顯示的信息

echo "welcome!">/etc/issue vi /etc/issue #修改系統登陸時顯示的信息

十二、內核優化

本優化適合apachenginx,squid多種等web應用,特殊的業務也可能需要略作調整。

★centos7內核優化:

[root@localhost ~]# vi /etc/sysctl.conf        #把以下的參數加到最後面
#CTCDN系統優化參數
#關閉ipv6
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
# 避免放大攻擊
net.ipv4.icmp_echo_ignore_broadcasts = 1
# 開啟惡意icmp錯誤消息保護
net.ipv4.icmp_ignore_bogus_error_responses = 1
#關閉路由轉發
net.ipv4.ip_forward = 0
net.ipv4.conf.all.send_redirects = 0
net.ipv4.conf.default.send_redirects = 0
#開啟反向路徑過濾
net.ipv4.conf.all.rp_filter = 1
net.ipv4.conf.default.rp_filter = 1
#處理無源路由的包
net.ipv4.conf.all.accept_source_route = 0
net.ipv4.conf.default.accept_source_route = 0
#關閉sysrq功能
kernel.sysrq = 0
#core文件名中添加pid作為擴展名
kernel.core_uses_pid = 1
# 開啟SYN洪水攻擊保護
net.ipv4.tcp_syncookies = 1
#修改消息隊列長度
kernel.msgmnb = 65536
kernel.msgmax = 65536
#設置最大內存共享段大小bytes
kernel.shmmax = 68719476736
kernel.shmall = 4294967296
#timewait的數量,默認180000
net.ipv4.tcp_max_tw_buckets = 6000
net.ipv4.tcp_sack = 1
net.ipv4.tcp_window_scaling = 1
net.ipv4.tcp_rmem = 4096        87380   4194304
net.ipv4.tcp_wmem = 4096        16384   4194304
net.core.wmem_default = 8388608
net.core.rmem_default = 8388608
net.core.rmem_max = 16777216
net.core.wmem_max = 16777216
#每個網絡接口接收數據包的速率比內核處理這些包的速率快時,允許送到隊列的數據包的最大數目
net.core.netdev_max_backlog = 262144
#限制僅僅是為了防止簡單的DoS 攻擊
net.ipv4.tcp_max_orphans = 3276800
#未收到客戶端確認信息的連接請求的最大值
net.ipv4.tcp_max_syn_backlog = 262144
net.ipv4.tcp_timestamps = 0
#內核放棄建立連接之前發送SYNACK 包的數量
net.ipv4.tcp_synack_retries = 1
#內核放棄建立連接之前發送SYN 包的數量
net.ipv4.tcp_syn_retries = 1
#啟用timewait 快速回收
net.ipv4.tcp_tw_recycle = 1
#開啟重用。允許將TIME-WAIT sockets 重新用於新的TCP 連接
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_mem = 94500000 915000000 927000000
net.ipv4.tcp_fin_timeout = 1
#當keepalive 起用的時候,TCP 發送keepalive 消息的頻度。缺省是2 小時
net.ipv4.tcp_keepalive_time = 30
#允許系統打開的端口範圍
net.ipv4.ip_local_port_range = 1024    65000
#修改防火墻表大小,默認65536
#net.netfilter.nf_conntrack_max=655350
#net.netfilter.nf_conntrack_tcp_timeout_established=1200
# 確保無人能修改路由表
net.ipv4.conf.all.accept_redirects = 0
net.ipv4.conf.default.accept_redirects = 0
net.ipv4.conf.all.secure_redirects = 0
net.ipv4.conf.d


重新加載內核參數

[root@localhost ~]#sysctl -p


CentOS7.4.1708查看系統相關信息及系統的初步優化