Linux系統基礎優化

1、關閉防火牆iptables:linux

               (1)關閉
                 /etc/init.d/iptables stop
                (2)檢查
                  /etc/init.d/iptables status
                (3)設置開機不自動啓動
                  chkconfig iptables off
                (4)檢查
                  chkconfig --list iptablesweb

2、關閉selinux(安全):shell

說明:永久生效,須要重啓計算機。
       (1)檢查配置文件
          cat /etc/selinux/config
          # This file controls the state of SELinux on the system.
          # SELINUX= can take one of these three values:
          #     enforcing - SELinux security policy is enforced.
          #     permissive - SELinux prints warnings instead of enforcing.
          #     disabled - No SELinux policy is loaded.
          SELINUX=enforcing
          # SELINUXTYPE= can take one of these two values:
          #     targeted - Targeted processes are protected,
          #     mls - Multi Level Security protection.
          SELINUXTYPE=targeted
       (2)修改配置文件
         sed -i "s#SELINUX=enforcing#SELINUX=disabled#g" /etc/selinux/config
       (3)不重啓系統的臨時生效辦法
          setenforce 0 #設置Permissive模式
          getenforce  #查生效狀況
        (4)參數說明
          #     enforcing - SELinux security policy is enforced. 正常開啓
          #     permissive - SELinux prints warnings instead of enforcing. 打印警告,可是也是禁止了。
          #     disabled - No SELinux policy is loaded. 禁止狀態。vim

3、更改yum源:安全

         (1)建立備份目錄
           mkdir  -p  /etc/yum.repos.d/{default,back}              ###記住,每次操做以前必定要備份!備份!備份!重要的事說三遍
        (2)備份全部默認的配置文件
           \mv  /etc/yum.repos.d/*repo   /etc/yum.repos.d/default
         (3)獲取yum源
           wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo
         (4)備份yum源
            \cp  /etc/yum.repos.d/CentOS-Base.repo   /etc/yum.repos.d/defaultbash

4、精簡開機自啓動服務:服務器

         (1)只保留重要的基礎服務,其他所有關閉
           chkconfig --list|egrep -v "sysstat|crond|sshd|network|rsyslog"|awk '{print "chkconfig "$1,"off"}'|bash
         (2)檢查
           chkconfig --list|grep 3:oncookie

5、修改Linux服務器字符集:架構

        (1)檢查配置文件
          cat /etc/sysconfig/i18n
          裏面默認應該有如下2行內容:
          LANG="en_US.UTF-8"                                   ###默認每次提示爲英文,若是不熟悉英語的小夥伴能夠進行下列操做
          SYSFONT="latarcyrheb-sun16"
       (2)備份配置文件
         cp /etc/sysconfig/i18n{,.back}
       (3)修改(此步選作)
         說明:能夠將字符集修改成中文的,也能夠不修改。
         echo 'LANG="zn_CN.UTF-8"' > /etc/sysconfig/i18n
         echo 'SYSFONT="latarcyrheb-sun16"' >> /etc/sysconfig/i18n
       (4)生效
         source /etc/sysconfig/i18n
      (5)檢查
         echo $LANGdom

6、內核優化:

      (1)修改配置文件/etc/sysctl.conf,添加以下內容(直接一次性複製如下全部內容,在命令行裏粘貼執行便可)
         cat >>/etc/sysctl.conf<<EOF
         net.ipv4.tcp_fin_timeout = 2
         net.ipv4.tcp_tw_reuse = 1
         net.ipv4.tcp_tw_recycle = 1
         net.ipv4.tcp_syncookies = 1
         net.ipv4.tcp_keepalive_time = 600
         net.ipv4.ip_local_port_range = 4000    65000
         net.ipv4.tcp_max_syn_backlog = 16384
         net.ipv4.tcp_max_tw_buckets = 36000
         net.ipv4.route.gc_timeout = 100
         net.ipv4.tcp_syn_retries = 1
         net.ipv4.tcp_synack_retries = 1
         net.core.somaxconn = 16384
         net.core.netdev_max_backlog = 16384
         net.ipv4.tcp_max_orphans = 16384
         #如下參數是對iptables防火牆的優化,防火牆不開會提示,能夠忽略不理。
         net.nf_conntrack_max = 25000000
         net.netfilter.nf_conntrack_max = 25000000
         net.netfilter.nf_conntrack_tcp_timeout_established = 180
         net.netfilter.nf_conntrack_tcp_timeout_time_wait = 120
         net.netfilter.nf_conntrack_tcp_timeout_close_wait = 60
         net.netfilter.nf_conntrack_tcp_timeout_fin_wait = 120
         EOF
      (2)生效
         sysctl -p

7、時間同步:(工做中時間同步很重要,很是重要!)

(1)配置
          echo '#time sync by oldboy at 2018-04-26' >> /var/spool/cron/root
          echo '*/5 * * * * /usr/sbin/ntpdate ntp1.aliyun.com >/dev/null 2>&1' >> /var/spool/cron/root    

          ###通常以阿里雲時間服務器爲基準,如下地址可本身選擇:

        ntp1.aliyun.com
        ntp2.aliyun.com
        ntp3.aliyun.com
        ntp4.aliyun.com
        ntp5.aliyun.com
        ntp6.aliyun.com
        ntp7.aliyun.com
 (2)檢查
          crontab -l
 (3)備份
          \cp /var/spool/cron/root{,.back}

8、加大文件描述:

   (1)配置
       echo '*               -       nofile          65535 ' >>/etc/security/limits.conf
    (2)檢查
      tail -1 /etc/security/limits.conf
    (3)備份
      \cp /etc/security/limits.conf{,.back}

9、下載安裝系統基礎軟件:

     yum install -y lrzsz nmap tree dos2unix nc        ###一些基礎軟件會在集羣架構中常常用到

10、配置hosts文件:

     說明:期中集羣架構的域名解析均使用內網IP,基礎服務共涉及差很少9臺服務器
     (1)修改
       cat >/etc/hosts<<EOF
       127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
       ::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
       172.16.1.5      lb01
       172.16.1.6      lb02
       172.16.1.7      web01
       172.16.1.8      web02
       172.16.1.9      web03
       172.16.1.51     db01
       172.16.1.31     nfs01
       172.16.1.41     backup
       172.16.1.61     m01
       EOF
     (2)備份
       \cp /etc/hosts{,.back}

11、處理/etc/bashrc以及/root/.bashrc:

     (1)備份配置文件
        \cp /etc/bashrc{,.back}
     (2)處理/etc/bashrc
       編輯配置文件/etc/bashrc(vim /etc/bashrc),
       把這個文件的第36行註釋掉,
       而後在剛剛註釋掉的第36行下面另起一行,添加如下內容:
       [ "$PS1" = "\\s-\\v\\\$ " ] && PS1="[\[\e[34;1m\]\u@\H\[\e[0m\] \[\e[31;1m\]\w\[\e[0m\] \[\e[32;1m\]\t\[\e[0m\]]\\$ "
       注意,上面那一行很長,必需要一點不差的複製粘貼進去,而且中間不能出現回車,只能有空格,必定要注意檢查!!!
       使之生效:source /etc/bashrc
       查看效果:按組合鍵ctrl+d,而後從新登陸系統。

###咯,差很少就上面這樣,我一老師寫的,感受挺方便的,不用隨時pwd看路徑和位置,在企業中尤爲管用

    (3)處理/etc/bashrc
      修改配置文件/root/.bashrc(vim /root/.bashrc),
      在最後一行alias下面添加如下2行內容:
      alias grep='grep --color'
      alias egrep='egrep --color'
      保存並退出;
      使之生效:. /root/.bashrc
      注意:此處的點號(.)是一個命令,此命令等價於source命令。

12、添加一個用戶:

      (1)添加
        useradd oldboy
      (2)檢查
        id oldboy
      (3)設置密碼
        echo 123456|passwd --stdin oldboy

 十3、提權給新建的用戶(解釋一下,由於root 用戶知道的人太多了,都知道是超級管理員,爲了企業的安全,從新設置一個用戶)

        將oldboy添加到sudo管理,之後oldboy就至關於管理員
      (1)備份
        \cp /etc/sudoers{,.back}
       (2)修改
         echo "oldboy  ALL=(ALL) NOPASSWD: ALL " >> /etc/sudoers
       (3)檢查
         tail -1 /etc/sudoers
      (4)生效
        visudo -c

    ###此時的oldboy權限至關於root用戶

十4、優化SSH遠程鏈接:

   (1)備份配置文件
     cp /etc/ssh/sshd_config{,.back}
   (2)修改配置文件
     編輯ssh服務的配置文件(vim /etc/ssh/sshd_config),在第12行下面添加以下內容:
     ####Start by oldboy#2018-04-26###
     Port 52113                                                                                     ###一樣爲了安全,更改登陸端口
     PermitRootLogin no
     PermitEmptyPasswords no
     UseDNS no
     GSSAPIAuthentication no
     ####End by oldboy#2018-04-26###
  (3)檢查
    grep -A 5 -i 'Start by oldboy' /etc/ssh/sshd_config
  (4)重啓ssh服務
    /etc/init.d/sshd restart
 (5)檢查
    netstat -lntup | grep ssh
 (6)配置說明
    ####Start by oldboy#2018-04-26###
    Port 52113      #使用大於10000的端口號
    PermitRootLogin no    #禁止root遠程登陸
    PermitEmptyPasswords no   #禁止空密碼登陸
    UseDNS no      #不使用dns解析
    GSSAPIAuthentication no   #鏈接慢的解決配置
    ####End by oldboy#2018-04-26###

十5、xshell鏈接

########################################################################################################

企業中:若是學習的話上面優化差很少了,固然企業實戰中還能夠作隱藏Linux版本信息展現;鎖定關鍵系統文件,防止被提權篡改;爲grub菜單加密碼;禁ping等

相關文章
相關標籤/搜索