CentOS 7.x操做系統使用前的基礎優化

一、修改網卡爲eth0

一、編輯網卡
# cd  /etc/sysconfig/network-scripts/
# mv ifcfg-ens160 ifcfg-eth0
# mv ifcfg-ens192 ifcfg-eth1
# vim ifcfg-eth0
TYPE=Ethernet
BOOTPROTO=none
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=eth0                      #網卡名稱改成eth0
DEVICE=eth0               #設備名稱改成eth0
ONBOOT=yes
IPADDR=xxx.xxx.x.xx
PREFIX=24
GATEWAY=xxx.xxx.x.x
DNS1=xxx.xxx.x.x
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_PRIVACY=no
注:刪掉網卡內的UUID=176582f7-d198-4e4f-aab0-34ab10d17247   通用惟一識別碼和HWADDR=00:0c:29:a5:3f:39   MAC地址  這兩行。  全部網卡都須要修改

二、編輯grub文件:
[root@localhost network-scripts]# cp -a /etc/sysconfig/grub /etc/sysconfig/grub.bak    #備份文件
[root@localhost network-scripts]# vim /etc/sysconfig/grub
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_DEFAULT=saved
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console" 
GRUB_CMDLINE_LINUX="crashkernel=auto net.ifnames=0 biosdevname=0 rhgb quiet"   #這行添加net.ifnames=0 biosdevname=0
GRUB_DISABLE_RECOVERY="true"

三、生成啓動菜單:
[root@localhost network-scripts]# grub2-mkconfig -o /boot/grub2/grub.cfg
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-3.10.0-514.el7.x86_64
Found initrd image: /boot/initramfs-3.10.0-514.el7.x86_64.img
Found linux image: /boot/vmlinuz-0-rescue-7d9a96ac2162427d937e06ede5350e9e
Found initrd image: /boot/initramfs-0-rescue-7d9a96ac2162427d937e06ede5350e9e.img
done

四、而後重啓服務器:reboot,重啓服務器後查看網卡信息

CentOS 7.x操做系統使用前的基礎優化

二、下載必要軟件包

再安裝操做系統的時候使用的最小化安裝,有不少包沒有安裝,使用時發現好多命令沒有如{vim、wget、tree...等},下面就安裝命令,能夠根據需求自行調整。linux

# yum -y install wget net-tools screen lsof tcpdump nc mtr openssl-devel vim bash-completion lrzsz nmap telnet tree ntpdate

三、使用aliyun的repo源

操做系統自帶的是國外的源,改爲國內的源安裝包會快不少 例:aliyun或者清華的源均可以,這裏使用aliyun的repo源。
rpm -ivh http://mirrors.aliyun.com/epel/epel-release-latest-7.noarch.rpmios

四、 給/etc/rc.local添加執行權限

須要開機自啓動的腳本或者配置,能夠放在/etc/rc.local裏,可是發現並無執行,下面咱們看一下緣由。web

# ll /etc/rc.local 
lrwxrwxrwx 1 root root 13 Jan  5 23:31 /etc/rc.local -> rc.d/rc.local     #發現是個軟鏈接文件
# ls -l /etc/rc.d/rc.local 
-rw-r--r-- 1 root root 473 Oct 20 11:07 /etc/rc.d/rc.local        #問題在這裏,沒有執行權限
# chmod +x /etc/rc.d/rc.local      #添加執行權限
# ls -l /etc/rc.d/rc.local 
-rwxr-xr-x 1 root root 473 Oct 20 11:07 /etc/rc.d/rc.local
注:這樣添加在rc.local裏的開機自啓動配置就能夠執行了。

五、修改ssh默認端口並禁止root用戶遠程登錄

linux系統下都有一個默認的超級管理員root,ssh服務的默認端口是22,圈內都知道,那麼接下來咱們能夠修改一下咱們的默認端口和禁止root用戶遠程登陸,初步提升一下服務器的安全vim

一、首先修改ssh的默認端口
# sed -i "s#\#Port 22#Port 23451#g" /etc/ssh/sshd_config         #端口能夠改爲任意端口,建議改爲較大的端口,由於一萬之內的端口經常使用的服務有佔用,防止衝突(須要注意的是:這個端口要記住,不然鏈接不上服務器)
二、禁止root用戶遠程登錄
  a):添加一個普通用戶並設置密碼(注:這一步必須執行,不然將形成遠程鏈接不上服務器)
# useradd xxx        #添加xxx用戶
# echo "pass" | passwd --stdin xxx     #給xxx用戶設置密碼爲pass
  b):修改ssh服務配置文件並撐起服務
# sed -i 's/#PermitRootLogin yes/PermitRootLogin no/' /etc/ssh/sshd_config
# systemctl restart sshd

此時斷開當前鏈接或者新開一個鏈接就會發現使用root用戶鏈接不上服務器了,莫慌,使用xxx用戶鏈接而後切換到root用戶便可安全

六、關閉selinux

SELinux(Security-Enhanced Linux) 是美國國家安全局(NSA)對於強制訪問控制的實現,說白了就是安全機制,固然若是會配置的話建議配置更好,這裏就介紹一下如何關閉吧,哈哈哈。bash

# sed -i.bak 's#SELINUX=enforcing#SELINUX=disabled#g' /etc/selinux/config    #修改配置文件須要重啓服務器配置纔會生效,如何當即生效那?
# setenforce 0      #關閉SELinux當即生效,重啓服務器後配置失效。

七、關閉防火牆

防火牆,不解釋,內網服務建議關掉,對外開放的服務器須要配置規則,這裏先關掉,關於防火牆配置規則等待後續更新。服務器

# systemctl stop firewalld         #臨時關閉
# systemctl disable firewalld          #永久關閉

systemctl stop firewalld.service

八、修改主機名並設置主機名解析

裝機後主機名默認爲localhost,這裏我的想更改本身的主機名,在不搭建內網DNS的狀況,能經過主機名找到本機的IP地址。網絡

# hostnamectl set-hostname web01     #設置主機名爲web01,這樣設置連配置文件裏都修改了

接下來修改hosts文件實現IP地址到主機名的解析
CentOS 7.x操做系統使用前的基礎優化
此時發現能夠實現連接。併發

九、解決ssh遠程鏈接慢的問題

# sed -i.bak 's@#UseDNS yes@UseDNS no@g;s@^GSSAPIAuthentication yes@GSSAPIAuthentication no@g'  /etc/ssh/sshd_config
# systemctl restart sshd

說明: GSSAPIAuthentication參數是用於Kerberos驗證的,而對於絕大多數人來講,不可能使用這種驗證機制的,因此要注意把他們停掉。而後重啓服務會發現遠程鏈接速度有明顯提高負載均衡

十、設置字符集

設置當前服務器字符集,國際通用utf-8,固然根據本身的業務本身調整,

#  localectl status      #查看當前字符集
   System Locale: LANG=en_US.UTF-8
       VC Keymap: us
      X11 Layout: us
# localectl set-locale LANG=zh_CN.UTF-8     #修改字符集爲zh_CN.UTF-8,命令行和配置文件都生效
# cat /etc/locale.conf       #查看配置文件
LANG=zh_CN.UTF-8

十一、加大打開文件數的限制(open files)

CentOS 7.2系統默認最大打開文件限制爲1024,每創建一個TCP鏈接既浪費一個限制(這裏不細講,後續會更新詳細說明),爲了提高服務器性能,因此咱們要增長打開文件的最大限制。

# ulimit -n         #默認大小
1024
# echo "* soft nofile 65536" >> /etc/security/limits.conf         #xi修改最大限制爲65535
# echo "* hard nofile 65536" >> /etc/security/limits.conf
# reboot           #重啓後生效

十二、時間同步

時間同步,這裏很少說了,向OpenStack的全部節點的時間不一致會致使建立不了虛擬機,也會有其餘的問題,很少說,咱們生產上全部服務器時間都是同步的。

# yun install -y ntpdate        #前面已經裝過了
# ntpdate ntp1.aliyun.com       #這裏同步的是aliyun的時間,公司內部建議本身搭建時間服務器(減小流量、廣播等),而後加入crontab便可,內網時間服務器等待後續更新。

1三、開啓快速回收

TCP斷開鏈接時會有一個等待時間爲2msl(60秒)對應的狀態爲TIME_WAIT,若是業務併發較大的話會有不少的TIME_WAIT狀態(詳細等待後續更新),如何來解決那?

# cat /proc/sys/net/ipv4/tcp_timestamps     #時間戳,默認是開啓的
# cat /proc/sys/net/ipv4/tcp_tw_reuse      # 鏈接複用,tcp_timestamps是開啓的狀態下是能夠開啓的,1爲開啓,默認是關閉的狀態。
# cat /proc/sys/net/ipv4/tcp_tw_recycle      #socket快速回收,net網絡狀態下不能夠開啓,負載均衡上不能夠打開,讀者根據自身狀況開啓或關閉,默認爲關閉狀態。
相關文章
相關標籤/搜索