linux系統優化

                        Linux系統的優化

 

優化內容有:

修改ip地址、網關、主機名、DNS

關閉selinux,清空iptables

添加普通用戶並進行sudo授權管理

更新yum源及必要軟件安裝

定時自動更新服務器時間

精簡開機自啓動服務

變更默認的ssh服務端口,禁止root用戶遠程連接

鎖定關鍵文件系統

調整文件描述符大小

調整字符集,使其支持中文

去除系統及內核版本登錄前的屏幕顯示

內核參數優化

 

 

1.1修改IP地址,網管,主機名,DNS

  

[root@localhost ~]# vi/etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0        #網卡名字

BOOTPROTO=static  #靜態IP地址獲取狀態如:DHCP表示自動獲取IP地址

IPADDR=192.168.186.128         #IP地址

NETMASK=255.255.255.0        #子網掩碼

ONBOOT=yes                  #引導時是否激活

GATEWAY=192.168.1.1

 

修改Linux系統的主機名

[root@localhost ~]# vi/etc/sysconfig/network

HOSTNAME=lg    #修改主機名,重啓生效

GATEWAY=192.168.1.1   #修改默認網關,如果上面eth0裏面不配置網關的話,默認就使用這裏的網關了。

 

修改LinuxDNS

[root@localhost ~]# vi/etc/resolv.conf  #修改DNS信息

nameserver 192.168.1.1

 

配置完成後,重啓網卡,有3中方法:

   1#ifup eth0

   2#service network restart

   3#/etc/init.d/network restart

 

1.   關閉selinux,清空iptables

SELinux(Security-Enhanced Linux) 是美國國家安全局(NSA)對於強制訪問控制的實現,是 Linux 上最傑出的新安全子系統

關閉seliunx

[root@lg~]#sed–I ‘s#SELINUX=enforcing#SELINUX=disables#g’ /etc/selinux/config  #修改配置文件則永久生效,但是必須要重啓系統。

sed

[root@lg ~]# grep SELINUX=disabled/etc/selinux/config

SELINUX=disabled    #查看更改後的結果

[root@lg ~]# setenforce 0  #臨時生效命令

[root@lg ~]# getenforce      #查看selinux當前狀態

Permissive

 

   清空iptables

[root@lg ~]# iptables F   #清理防火牆規則

[root@lg ~]# iptables L   #查看防火牆規則

[root@lg ~]#/etc/init.d/iptables save  #保存防火牆配置信息

 

2.1添加普通用戶並進行sudo授權管理

  [root@lg ~]#useradd lg

  [root@lg ~]#passwd  設置密碼

 [root@lg ~]#vi sudo

          Lg  ALL=(ALL)   ALL  NOPASSWD=ALL

     :wq 保存退出

3.1更新yum源及必要軟件安裝

Linux下方便安裝軟件的優秀工具叫做yum工具,linux的二進制軟件包一般是rpm

類似window下的EXE程序  相當於360軟件包

通過yum工具來安裝軟件,默認獲取rpm包的軟件配置是從國外centos官方源下載

因此,我們yum安裝軟件速度會比較慢,因此需要把默認獲取rpm包配置從國外官方源,改成國內的優秀yum

[root@lg ~]#rpm –qa|grep yum  #確保系統中安裝yum

[root@lg ~]#cd /etc/yum.repos.d/  進入yum工具編輯

[root@lgyum.repos.d]#cp centos-base.repo  centos-base.repo.ori  備份很重要

 [root@lgyum.repos.d]#wgethttp://mirrors.163.com/.help/CentOS6-Base-163.repo下載

[root@lg yum.repos.d]#cpcentos-base-163.repo centos-base.repo 替換掉原來的yum  更新yum軟件

[[email protected]]#yum  install tree  telnet  dos2unix sysstat   lrzsz

安裝軟件包

[root@lg yum.repos.d]#yum update  更新到最新

更新到不是什麼好事,已經使用上的服務,不要更新,更新後會出現問題。

[root@lg yum.repos.d]#yum grouplist這個是包主

下載的地址:

http://mirrors.163.com/.help/CentOS6-Base-163.repo

 

安裝看網頁

http://mirrors.163.com/.help/centos.html

接下來執行如下命令,檢測yum是否正常

 

[root@lg~]# yum cleanall  #清空yum緩存

[root@lg~]# yummakecache  #建立yum緩存

4/1定時自動更新服務器時間

[root@lg ~]# echo '*/5 * * * * /usr/sbin/ntpdatetime.windows.com >/dev/null 2 >&1' >>/var/spool/cron/root

[root@lg ~]# echo '*/10* * * * /usr/sbin/ntpdate time.nist.gov >/dev/null 2>&1'>>/var/spool/cron/root

 

5/1精簡開機自啓動服務

命令的處理方法:1ntsysv 2setup –systemservice 3)腳本一鍵完成 

剛裝完操作系統可以只保留crond(定時任務),network(網絡服務),rsyslog(日誌),sshd(遠程連接)這四個服務

[root@lg ~]# for sun in `chkconfig --list|grep3:on|awk '{print $1}'`;do chkconfig --level 3 $sun off;done

[root@lg~]# for sun in crond rsyslog sshd network;do chkconfig --level 3 $sun on;done

[root@lg ~]# chkconfig--list|grep 3:on

crond          0:off 1:off  2:on    3:on   4:on    5:on    6:off

network        0:off 1:off  2:on    3:on   4:on    5:on    6:off

rsyslog        0:off 1:off  2:on    3:on   4:on    5:on    6:off

sshd            0:off  1:off 2:on    3:on    4:on   5:on    6:off

 

 

6/1變更默認的ssh服務端口,禁止root用戶遠程連接

    ssh默認端口號是22,要更改端口號爲9688,需要編輯/etc/ssh/ssh_config/etc/ssh/sshd_config兩個文件即可;

禁止root遠程登錄,則需要編輯/etc/ssh/sshd_config。(可能部分Linux目錄爲/etc/sshd,請根據實際情況修改)

 

#cd/etc/ssh           //進去ssh目錄

#cpssh_config ssh_config.bak    

#cpsshd_config sshd_config.bak   //備份倆個文件

#vissh_config

將被註釋掉的Port 22前的註釋符號“#”去掉,並將22改爲如上的9688,保存退出。

 

#vi sshd_config

   找到PermitRootLogin,將後面的yes改爲no,這樣root就不能遠程登錄了,保存退出。

   重啓ssh

   #/etc/init.d/sshrestart

 

 

9.鎖定關鍵文件系統

[root@c64 ~]# chattr +i /etc/passwd

[root@c64 ~]# chattr +i /etc/inittab

[root@c64 ~]# chattr +i /etc/group

[root@c64 ~]# chattr +i /etc/shadow

[root@c64 ~]# chattr +i /etc/gshadow

使用chattr命令後,爲了安全我們需要將其改名

[root@c64 ~]# /bin/mv /usr/bin/chattr /usr/bin/任意名稱

 

10. Linux中修改字符,中文設置

第一步

   #cat/etc/sysconfig/i18n   //字符集的配置文件位置及查看

第二步

   #cp i18ni18n.lg20150708 /etc/sysconfig/   //備份i18n配置文件

第三步

   #sed -i's#LAND="en_US.UTF-8"#LAND="zh_CN.UTF-8"#g'/etc/sysconfig/il8n

第四步

   #source/etc/sysconfig/i18n   //讓剛配置的文件生效

第五步

   #echo$LAND

第六步

CRT客戶端字符集改成UTF-8

 

11.去除系統及內核版本登錄前的屏幕顯示

[root@c64 ~]# >/etc/RedHat-release

[root@c64 ~]# >/etc/issue

 

12.內核參數優化

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

[root@c64~]# vi /etc/sysctl.conf

#by sun in 20131001

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.ipv4.ip_conntrack_max = 25000000

net.ipv4.netfilter.ip_conntrack_max = 25000000

net.ipv4.netfilter.ip_conntrack_tcp_timeout_established = 180

net.ipv4.netfilter.ip_conntrack_tcp_timeout_time_wait = 120

net.ipv4.netfilter.ip_conntrack_tcp_timeout_close_wait = 60

net.ipv4.netfilter.ip_conntrack_tcp_timeout_fin_wait = 120

[root@localhost ~]# sysctl p #使配置文件生效

  


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章