Linux服務(wù)器 CentOS 6系列最小化安裝優(yōu)化腳本詳解01————yum優(yōu)化、優(yōu)化啟動服務(wù)、調(diào)整TTY數(shù)量、調(diào)整TCP/IP網(wǎng)絡(luò)參數(shù)

Linux服務(wù)器 CentOS 6系列最小化安裝優(yōu)化腳本詳解01————yum優(yōu)化、優(yōu)化啟動服務(wù)、調(diào)整TTY數(shù)量、調(diào)整TCP/IP網(wǎng)絡(luò)參數(shù)

前言

當(dāng)最小化安裝CentOS 6系列時,在使用過程中,可以基于性能和安全做一些優(yōu)化,篇幅較多,這里我分篇幅寫,希望各位大佬批評指正。
完整的腳本晚些時候會上傳至github的。

yum優(yōu)化

CentOS自帶的yum源在國內(nèi)使用,速度十分緩慢。一般運(yùn)維人員可以將其更換為國內(nèi)的yum源。使用網(wǎng)易源或者阿里云都是可以。這里我使用網(wǎng)易源。

詳細(xì)步驟:

wget http://mirrors.163.com/.help/CentOS6-Base-163.repo
cd /etc/yum.repos.d/
mv CentOS-Base.repo CentOS-Base.repo.bak
mv CentOS6-Base-163.repo CentOS-Base.repo
yum clean all
yum makecache   #重建yum緩存
# yum update    #升級Linux系統(tǒng)(系統(tǒng)升級的操作根據(jù)各自業(yè)務(wù)的需求進(jìn)行選擇,部分公有云平臺不建議升級)

企業(yè)版 Linux 附加軟件包(以下簡稱 EPEL)是一個由特別興趣小組創(chuàng)建、維護(hù)并管理的,針對 紅帽企業(yè)版 Linux(RHEL)及其衍生發(fā)行版(比如 CentOS、Scientific Linux、Oracle Enterprise Linux)的一個高質(zhì)量附加軟件包項(xiàng)目。

增加epel源,詳細(xì)操作步驟:
(1)下載rpm文件進(jìn)行安裝,命令如下:

cd /usr/local/src   #用戶存放源碼程序的位置,可以任意放置
wget http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
rpm -ivh epel-release-6-8.noarch.rpm

(2)安裝yum-priorities源優(yōu)先級工具
Linux 發(fā)行版比較多,同時還有很多個人或組織維護(hù)了某些特定用途的安裝/升級源。Yum Priorities 插件可以用來強(qiáng)制保護(hù)源。它通過給各個源設(shè)定不同的優(yōu)先級,使得系統(tǒng)管理員可以將某些源(比如 Linux 發(fā)行版的官方源)設(shè)定為最高優(yōu)先級,從而保證系統(tǒng)的穩(wěn)定性(同時也可能無法更新到其它源上提供的軟件最新版本)。
用來給yum源分優(yōu)先級的。比如你在centos下有centos,epel,rpmfusion三個yum源。三個yum源中可能含有相同的軟件,補(bǔ)丁之類的東西。yum管理器為了分辨更新系統(tǒng)或者安裝軟件的時候用那個yum源的軟件所以才有這么個東西。如果說,設(shè)置centos官方的yum源優(yōu)先級最高,epelyum源第二,rpmfusion第三。(用1到99來表示,1最高)那在安裝程序的時候,先尋找centos的yum源,如果源里面有要的程序,那就停止尋找,直接安裝找到的,如果沒有找到,就依次尋找epel和rpmfusion的源。
如果說三個yum源都含有同一個軟件,那就安裝優(yōu)先級最高的yum源的。

添加yum源優(yōu)先級需要在對于的repo文件末尾添加:priority=優(yōu)先級數(shù)字

命令如下:

yum install yum-priorities

如果要開啟yum源的優(yōu)先級功能,就要先確保priorities.conf文件配置正確。

[root@private src]# cat /etc/yum/pluginconf.d/priorities.conf
[main]
enabled = 1

關(guān)閉不必要的服務(wù)

眾所周知,服務(wù)越少,系統(tǒng)占用的資源就會越少,所以應(yīng)當(dāng)關(guān)閉不必要的服務(wù)。這樣可以極大的節(jié)省內(nèi)存和CPU資源占用。

首先查看系統(tǒng)中存在哪些已經(jīng)啟動了的服務(wù),查看命令:ntsysv
使用該命令會出現(xiàn)Linux字符圖形顯示目前已經(jīng)自啟動的服務(wù)。

服務(wù)器根據(jù)業(yè)務(wù)所需進(jìn)行調(diào)整,列出幾個需要啟動的服務(wù):

  • crond:自動計劃任務(wù)
  • network:Linux系統(tǒng)的網(wǎng)絡(luò)服務(wù)
  • sshd:OpenSSH服務(wù)器守護(hù)進(jìn)程
  • rsyslog:Linux的日志系統(tǒng)服務(wù)(CentOS5.8以下叫做syslog)

關(guān)閉不必要的TTY

需要修改"/etc/init/start-ttys.conf"文件
查看該文件內(nèi)容:

[root@private ~]# cat /etc/init/start-ttys.conf 
#
# This service starts the configured number of gettys.
#
# Do not edit this file directly. If you want to change the behaviour,
# please create a file start-ttys.override and put your changes there.

start on stopped rc RUNLEVEL=[2345]

env ACTIVE_CONSOLES=/dev/tty[1-6]
env X_TTY=/dev/tty1
task
script
    . /etc/sysconfig/init
    for tty in $(echo $ACTIVE_CONSOLES) ; do
        [ "$RUNLEVEL" = "5" -a "$tty" = "$X_TTY" ] && continue
        initctl start tty TTY=$tty
    done
end script

這段代碼使init打開了6個控制臺,可分別用ALT+F1到ALT+F6進(jìn)行訪問。此6個控制臺默認(rèn)都駐留在內(nèi)存中,可以使用ps aux命令查看。

[root@private ~]# ps aux | grep tty | grep -v grep
root       1582  0.0  0.0   4064   548 tty1     Ss+  12:58   0:00 /sbin/mingetty /dev/tty1
root       1584  0.0  0.0   4064   548 tty2     Ss+  12:58   0:00 /sbin/mingetty /dev/tty2
root       1586  0.0  0.0   4064   548 tty3     Ss+  12:58   0:00 /sbin/mingetty /dev/tty3
root       1588  0.0  0.0   4064   548 tty4     Ss+  12:58   0:00 /sbin/mingetty /dev/tty4
root       1590  0.0  0.0   4064   548 tty5     Ss+  12:58   0:00 /sbin/mingetty /dev/tty5
root       1592  0.0  0.0   4064   552 tty6     Ss+  12:58   0:00 /sbin/mingetty /dev/tty6
[root@private ~]#

事實(shí)上沒有必要使用這么多,可以關(guān)閉不用的進(jìn)程,通常保留兩個控制臺即可。
需要修改的操作流程:
1.打開"/etc/init/start-ttys.conf",其中有:"env ACTIVE_CONSOLES=/dev/tty[1-6]"
需要將其修改為:"env ACTIVE_CONSOLES=/dev/tty[1-2]"
2.打開"/etc/sysconfig/init "文件,其中有:"ACTIVE_CONSOLES=/dev/tty[1-6]",將其修改為
"ACTIVE_CONSOLES=/dev/tty[1-2]"

可以使用sed命令直接修改:

sed -i "/env ACTIVE/ s/6/2/" /etc/init/start-ttys.conf 
sed -i "/ACTIVE_CONSOLES/ s/6/2/" /etc/sysconfig/init 

修改完成后,需要重啟機(jī)器

調(diào)整TCP/IP網(wǎng)絡(luò)參數(shù)

調(diào)整TCP/IP網(wǎng)絡(luò)參數(shù),可以加強(qiáng)對抗SYN Flood的能力。

SYN Flood是一種廣為人知的DoS(拒絕服務(wù)攻擊)是DDoS(分布式拒絕服務(wù)攻擊)的方式之一,這是一種利用TCP協(xié)議缺陷,發(fā)送大量偽造的TCP連接請求,從而使得被攻擊方資源耗盡(CPU滿負(fù)荷或內(nèi)存不足)的攻擊方式。
從防御角度來說,有幾種簡單的解決方法:第一種是縮短SYN Timeout時間;第二種方法是設(shè)置SYN Cookie;
net.ipv4.tcp_syncookies = 1
表示開啟SYN Cookies。當(dāng)出現(xiàn)SYN等待隊列溢出時,啟用cookies來處理,可防范少量SYN攻擊,默認(rèn)為 0,表示關(guān)閉。

使用命令:

[root@private shell]# echo "net.ipv4.tcp_syncookies = 1" >> /etc/sysctl.conf 
[root@private shell]# sysctl -p
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

推薦閱讀更多精彩內(nèi)容

  • linux資料總章2.1 1.0寫的不好抱歉 但是2.0已經(jīng)改了很多 但是錯誤還是無法避免 以后資料會慢慢更新 大...
    數(shù)據(jù)革命閱讀 12,218評論 2 33
  • 個人認(rèn)為,Goodboy1881先生的TCP /IP 協(xié)議詳解學(xué)習(xí)博客系列博客是一部非常精彩的學(xué)習(xí)筆記,這雖然只是...
    貳零壹柒_fc10閱讀 5,090評論 0 8
  • 背景: 閱讀新聞 12C CDB模式下RMAN備份與恢復(fù) [日期:2016-11-29] 來源:Linux社區(qū) 作...
    陽屯okyepd閱讀 3,567評論 0 7
  • rvm是什么?為什么要安裝rvm呢,因?yàn)閞vm可以讓你擁有多個版本的Ruby,并且可以在多個版本之間自由切換。 第...
    Chars閱讀 1,310評論 0 0
  • postgresql連接查詢 1.創(chuàng)建表a create table a(id integer primary k...
    LOOK_LOOK閱讀 373評論 0 0