一吼鱼、系統(tǒng)的安裝
1.系統(tǒng)的安裝一般采用最小化安裝,除非一些特殊需求需要安裝圖形界面绰咽。
2.系統(tǒng)安裝之前首先要做好磁盤蛉抓、分區(qū)的規(guī)劃,需要根據(jù)實際需求制定相應的磁盤分區(qū)方案剃诅。例如:數(shù)據(jù)庫及存儲服務器可以單獨使用一塊磁盤分區(qū)之后掛載到指定掛載點巷送。如果使用了LVM對磁盤進行管理,那么可以新建一個VG矛辕,這塊磁盤的分區(qū)創(chuàng)建PV之后加入到該VG來分配使用笑跛。這樣就與系統(tǒng)的分區(qū)獨立開了付魔,提高了數(shù)據(jù)的安全性。
3.對于swap分區(qū)飞蹂,一般設置為物理內(nèi)存的1.5-2倍几苍。若物理內(nèi)存大于16GB,可以配置為8-16GB陈哑。對于swap空間的擴展妻坝,我使用過的有2種方式,之前的文章有介紹惊窖。
4.對于boot分區(qū)刽宪,一般200MB-300MB就行。系統(tǒng)默認為500MB界酒,可以適當減少圣拄,我一般設置為300MB。
5.時區(qū)毁欣、語言庇谆、字符集、鍵盤布局選擇正確凭疮,主機名饭耳、網(wǎng)絡配置按實際情況進行設置。
二执解、系統(tǒng)的調(diào)優(yōu)及安全設置
1.養(yǎng)成能不用root則不用root的良好習慣寞肖。每次安裝軟件、部署應用之前材鹦,先做好管理賬戶逝淹、目錄的規(guī)劃耕姊。最好是裝完系統(tǒng)就新增一個標準用戶桶唐,visudo給這個賬戶配置sudo權限,只有這個賬戶具有root權限茉兰。在這一點上必須得贊一下Ubuntu尤泽,安裝完成之后你是不能直接root用戶登錄的。
2.啟用密碼策略规脸。
3.禁止通過telnet等不安全的登錄方式坯约。目前的系統(tǒng)默認一般不自帶telnet,如果裝了telnet那就卸載了莫鸭。
4.使用ssh2協(xié)議闹丐,禁止root用戶通過ssh登錄。設置某些賬號可以su到root被因,大部分標準用戶禁止切換到root卿拴。
5.設置不活動用戶登錄超時自動退出登錄并斷開ssh連接衫仑。例如:TMOUT=300
6.設置HISTORYFILESIZE和HISTSIZE。
7.調(diào)整文件描述符堕花。文件描述符是有無符號的整數(shù)表示的句柄文狱,進程使用它來標識打開的文件,文件描述符包括相關信息的文件對象關聯(lián)缘挽,這些信息被稱為文件的上下文文件描述符的有效范圍是0到OPEN_MAX瞄崇。文件描述符的默認大小是1024,可以使用命令ulimit -n進行查看壕曼。使用ulimit -n 2048可以臨時性的進行設置苏研,退出登錄之后失效∥迅澹可以編輯/etc/security/limits.conf使其永久生效楣富, 在被注釋了的內(nèi)容中,我們基本能夠看到每一個配置項的詳細說明伴榔,按照說明進行配置即可纹蝴。在這個配置文件最后一行新增:* - nofile 2048,重新登錄或重啟之后生效踪少。如果并發(fā)不大可以不用修改此項塘安。
8.關閉SELinux。將/etc/selinux/config中的SELINUX=enforcing改為:SELINUX=disabled援奢,保存之后重啟系統(tǒng)即可生效兼犯。
9.如果使用了硬件防火墻及其他相關的網(wǎng)絡安全措施,可以將系統(tǒng)自帶的防火墻卸載集漾。CentOS6自帶的防火墻是iptables切黔,CentOS7自帶的防火墻是firewalld,并且從CentOS7.4起具篇,防火墻開機自動啟動纬霞,這需要特別注意。如果是直接暴露在外網(wǎng)的服務器驱显,那么強烈建議開啟防火墻诗芜。需要注意的是,iptables和firewalld不能同時存在埃疫,只能選擇其一伏恐,建議使用動態(tài)防火墻firewalld。
9.如果確定使用ntp連網(wǎng)來獲取時間栓霜,CentOS7.X自帶了chrony翠桦,并且為開機啟動,可用通過修改/etc/chrony.conf配置文件來設置同步時間源胳蛮。一般公司都具有內(nèi)部NTP服務器销凑,統(tǒng)一指向這些NTP服務器即可愁铺。當然,也可以使用連網(wǎng)NTP服務器闻鉴,例如阿里云的茵乱,或者其他穩(wěn)定、可靠的NTP時間服務器孟岛。也可以通過交互式命令chronyc來設置ntp服務瓶竭。需要注意的是:如果填寫了ntp服務器的域名,則需要配置能夠正常解析的dns服務器渠羞,NTP處于的層級(stratum )也非常重要斤贰。其他時間、日期次询、NTP設定可以使用timedatectl荧恍。如果有其他時間同步管理方案,請卸載chronyd屯吊。
10.鎖定關鍵系統(tǒng)文件送巡,防止被提權篡改。使用chattr命令來進行操作盒卸,需要鎖定的文件如:/etc/passwd,/etc/shadow,/etc/group,/etc/gshadow等骗爆。
10.清除多余的系統(tǒng)虛擬賬號。如:games蔽介、lp摘投、ftp等。
11.給grub菜單加密虹蓄。
12.一些服務器可以設置禁ping犀呼。但這也不是最佳方案,因為有時候我們也需要通過ping來檢查網(wǎng)絡情況薇组。
13.配置內(nèi)部yum源或者國內(nèi)yum源外臂。
14.優(yōu)化Linux內(nèi)核參數(shù)。此部分內(nèi)容較多体箕,操作也需要十分謹慎专钉,后期會專門針對這一部分進行深入探索挑童。
15.禁止顯示內(nèi)核版本及系統(tǒng)版本信息累铅。此部分本人認為不必太重視,因為在CentOS7中站叼,/etc/redhat-release及/proc/version都會涉及到相關內(nèi)容的顯示娃兽,沒必要糾結這一項。
三尽楔、結語
1.在本文中提到的內(nèi)容在之前的文章中大多數(shù)均有涉及投储,只是沒有綜合整理而已第练。
2.文章的第一部分可以概括為系統(tǒng)的安裝注意事項,第二部分基本可以概括為系統(tǒng)的安全設置與優(yōu)化玛荞,這一部分我沒有對這些內(nèi)容按照安全部分與系統(tǒng)優(yōu)化部分進行區(qū)分娇掏。
3.有些項未必適合自己的情況,需要根據(jù)實際情況進行改進勋眯、設計婴梧。
4.本文僅僅提及思路,并未進行詳細的內(nèi)容討論及落地客蹋。在后續(xù)的文章中會進一步將本文的內(nèi)容進行落地塞蹭。
5.本文內(nèi)容均為本人在實際工作中的一些經(jīng)驗,不妥之處希望諸位多多指教讶坯,歡迎多多交流番电,一起進步。
四辆琅、本文擴展成為公司內(nèi)部資料--《XX公司Linux系統(tǒng)運維操作流程》
4.1安裝流程
4.1.1 系統(tǒng)如無特殊要求一律采用小化安裝方式進行安裝漱办。
4.1.2 安裝過程開始之前需要根據(jù)實際情況進行CPU數(shù)量、磁盤容量婉烟、內(nèi)存分配洼冻、文件系統(tǒng)、目錄結構隅很、磁盤分區(qū)規(guī)劃撞牢、磁盤管理方案進行分析與設計,并按照方案進行系統(tǒng)的安裝叔营。
4.1.3 安裝過程中屋彪,需要按照實際情況設置恰當?shù)闹鳈C名、語言绒尊、字符集畜挥、鍵盤布局、網(wǎng)絡參數(shù)婴谱。
4.2系統(tǒng)安全設置及優(yōu)化設置
4.2.1 創(chuàng)建標準賬號蟹但,授予sudo權限,指定特定賬戶可以su到root賬戶谭羔。禁止root用戶通過ssh遠程登錄华糖,使用安全性較高的ssh2協(xié)議進行登錄,卸載telnet(如果已安裝)瘟裸。
4.2.2 啟用密碼策略客叉。
4.2.3 在應用部署之前需要按要求建好管理賬戶,做好應用目錄的規(guī)劃與權限設計,使用指定用戶啟動指定應用兼搏。
4.2.4 設置不活動用戶登錄超時自動退出登錄并斷開ssh連接卵慰。例如:TMOUT=300
4.2.5 設置HISTORYFILESIZE和HISTSIZE。
4.2.6 調(diào)整文件描述符佛呻。
4.2.7 關閉SELinux裳朋。
4.2.8 使用或禁用防火墻。
4.2.9 設置NTP時間同步吓著。
4.2.10 鎖定關鍵系統(tǒng)文件再扭,防止被提權篡改。
4.2.11 清除多余的系統(tǒng)虛擬賬號夜矗。如:games泛范、lp、ftp等紊撕。
4.2.12 給grub菜單加密(可選)罢荡。
4.2.13 一些服務器可以設置禁ping(可選)。
4.2.14 配置內(nèi)部yum源或者國內(nèi)yum源对扶。
4.2.15 優(yōu)化Linux內(nèi)核參數(shù)(謹慎操作)区赵。
4.2.16 禁止顯示內(nèi)核版本及系統(tǒng)版本信息(可選)。
針對每一項內(nèi)容進行細化即可浪南。