互聯(lián)網(wǎng)公司-阿里云主機安全加固方案

來源:百家號
作者: 互聯(lián)網(wǎng)資深ops專家
時間:2020-07-02
3790
本文為互聯(lián)網(wǎng)公司-阿里云主機安全加固方案的實例介紹。

阿里云運維方案

1.1現(xiàn)有環(huán)境介紹

XX公司現(xiàn)有10人以上開發(fā)團隊(開發(fā)+測試),現(xiàn)有Nginx服務(wù)器1臺,Web服務(wù)器1臺,Mongodb服務(wù)器2臺(主從)+Mysql 5.6版本1臺,Elasticsearch+2臺(主從)+MQ(1臺)+任務(wù)調(diào)度服務(wù)器1臺,域名用的新網(wǎng)解析;已跟技術(shù)負責(zé)人做了詳細溝通,現(xiàn)有資源已無法滿足當前業(yè)務(wù),現(xiàn)有架構(gòu)缺點表現(xiàn)如下:

1.(開發(fā)+測試環(huán)境)不在本地,開發(fā)人員上傳數(shù)據(jù)慢;

2.網(wǎng)站經(jīng)常受攻擊,數(shù)據(jù)經(jīng)常被人爬蟲;(沒有防范);

3.缺乏有效的監(jiān)控手段,出現(xiàn)問題無法及時報警,及時處理問題;

4.所有服務(wù)都是單點,一臺服務(wù)器故障,所有服務(wù)都中斷;

5.網(wǎng)絡(luò)特別慢(只能等待)+tomcat訪問丟失,日志無法分析;

6.數(shù)據(jù)安全無法保證;權(quán)限無法分類;

XX公司架構(gòu)設(shè)計解決方案

1.jpeg

1.2系統(tǒng)架構(gòu):

分析目前的情況,需要專業(yè)的運維團隊來服務(wù),需要7*24小時不間斷的給客戶提供服務(wù),在這樣的基礎(chǔ)上,需要對現(xiàn)有架構(gòu)進行升級優(yōu)化,用阿里云的整體解決方案,此方案優(yōu)勢:阿里云結(jié)合云計算彈性計算的特點以及自己在互聯(lián)網(wǎng)上的成功經(jīng)驗,規(guī)劃了一整套完善的軟件負載均衡解決方案,能更好的滿足彈性計算平臺負載均衡的需求,成功的解決了硬件負載均衡在達到性能上限后擴展性受限的問題。只需要訂購軟件的負載均衡設(shè)備,就可以輕松應(yīng)對網(wǎng)絡(luò)流量和數(shù)據(jù)量不斷增長的場景。而且可以同時享受阿里云的安全解決方案,提供防DDOS攻擊能力,不需要再購買入侵檢測以及防火墻產(chǎn)品。系統(tǒng)架構(gòu)圖設(shè)計如下:

962bd40735fae6cdddea71f26890e82243a70ff5.jpeg

更新的后架構(gòu),此方案的好處低成本,高性能,具體體現(xiàn)在如下幾個方面:

低成本:使用彈性負載均衡,成本很低,與傳統(tǒng)硬件負載均衡設(shè)備的高投入相比成本能下降60%,

高可擴展:不論是ECS主機還是SLB負載均衡,企業(yè)均可以根據(jù)負載進行彈性擴展,在不中斷業(yè)務(wù)系統(tǒng),隨時擴展新的資源。

安全性高:購買SLB就可以享受阿里云的安全解決方案,提供防DDOS攻擊能力,不需要再購買入侵檢測以及防火墻產(chǎn)品。

穩(wěn)定性高:SLB采用的是全冗余設(shè)計,無單點,可用性高達99.99%,

展昭網(wǎng)絡(luò)技術(shù)有限的數(shù)據(jù)庫系統(tǒng)使用MySQL,版本5.7,目前使用的架構(gòu)為MySQL單點,需要改成主從復(fù)制(Master-Slave),即Master-Slave架構(gòu);

0823dd54564e92582198dc14c2a1365ecdbf4e42.jpeg

優(yōu)化監(jiān)控,目前的監(jiān)控報警機制,按照人員劃分為二部分:

第一部分是運維人員,內(nèi)部的運維人員根據(jù)所負責(zé)的系統(tǒng)劃分,接收相應(yīng)的應(yīng)用及系統(tǒng)報警信息

第二部分是項目及應(yīng)用的負責(zé)人及相關(guān)責(zé)任人,僅僅接收所在項目組的應(yīng)用報警信息

按照告警事件劃分為二級:

第一級是普通報警,主要是各個應(yīng)用和項目組的應(yīng)用報警,影響范圍限制在該項目組內(nèi)部

第二級是系統(tǒng)報警,主要是服務(wù)器系統(tǒng)報警信息,以及內(nèi)部虛擬機的報警信息,影響范圍不限于一個項目組

報警方式主要有短信,郵件,微信方式。

報警的處理方式,根據(jù)事件等級劃分:

第一級的事件報警信息,相關(guān)責(zé)任人接收信息之后,10分鐘內(nèi)必須做出處理,根據(jù)技術(shù)難度,在30-60分鐘內(nèi)必須處理完畢

第二級的事件報警,運維人員在收到范圍內(nèi)的報警信息后,5分鐘必須做出響應(yīng),根據(jù)處理的技術(shù)復(fù)雜度,在10-60分鐘內(nèi)處理完畢

告警記錄的保存:

目前系統(tǒng)中的報警信息主要是通過zabbix監(jiān)控平臺發(fā)布,根據(jù)平臺的設(shè)置,對應(yīng)的監(jiān)控項和服務(wù)器的報警信息會發(fā)送給對應(yīng)的人員,監(jiān)控的日志記錄在該軟件平臺內(nèi)部可查詢,可分析。

建議優(yōu)化開發(fā)環(huán)境,采購一臺塔式dell服務(wù)器做虛擬化,

T430(4盤位3.5寸)冷電冷盤E5-2603v4 64G 1T SAS*2 DVD H330單電450W

建議系統(tǒng)安全加固,對CentOS 6.7跟Centos7.3安全加固及性能優(yōu)化

我們可以通過調(diào)整系統(tǒng)參數(shù)來提高系統(tǒng)內(nèi)存、CPU、內(nèi)核資源的占用,通過禁用不必要的服務(wù)、端口,來提高系統(tǒng)的安全性,更好的發(fā)揮系統(tǒng)的可用性。通過自己對Linux了解,對系統(tǒng)調(diào)優(yōu)做了如下小結(jié)。

經(jīng)常玩Linux系統(tǒng)的朋友多多少少也知道些系統(tǒng)參數(shù)優(yōu)化和怎樣增強系統(tǒng)安全性,系統(tǒng)默認的一些參數(shù)都是比較保守的,所以我們可以通過調(diào)整系統(tǒng)參數(shù)來提高系統(tǒng)內(nèi)存、CPU、內(nèi)核資源的占用,通過禁用不必要的服務(wù)、端口,來提高系統(tǒng)的安全性,更好的發(fā)揮系統(tǒng)的可用性。通過自己對Linux了解,對系統(tǒng)調(diào)優(yōu)做了如下小結(jié):

操作系統(tǒng):CentOS 6.8_x64最小化安裝

1、主機名設(shè)置

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

HOSTNAME=test.com

[root localhost~]#hostname test.com#臨時生效

2、關(guān)閉SELinux

[root localhost~]#vi/etc/selinux/config

SELINUX=disabled

[root localhost~]#setenforce#臨時生效

[root localhost~]#getenforce#查看selinux狀態(tài)

3、清空防火墻并設(shè)置規(guī)則

[root localhost~]#iptables-F#清楚防火墻規(guī)則

[root localhost~]#iptables-L#查看防火墻規(guī)則

[root localhost~]#iptables-A INPUT-p tcp--dport 80-j ACCEPT

[root localhost~]#iptables-A INPUT-p tcp--dport 22-j ACCEPT

[root localhost~]#iptables-A INPUT-p tcp--dport 53-j ACCEPT

[root localhost~]#iptables-A INPUT-p udp--dport 53-j ACCEPT

[root localhost~]#iptables-A INPUT-p udp--dport 123-j ACCEPT

[root localhost~]#iptables-A INPUT-p icmp-j ACCEPT

[root localhost~]#iptables-P INPUT DROP

[root localhost~]#/etc/init.d/iptables save

#根據(jù)需求開啟相應(yīng)端口

d058ccbf6c81800ab73c0402ef16d4fc838b478f.jpeg

4、添加普通用戶并進行sudo授權(quán)管理

[root localhost~]#useradd user

[root localhost~]#echo"123456"|passwd--stdin user#設(shè)置密碼

[root localhost~]#vi/etc/sudoers#或visudo打開,添加user用戶所有權(quán)限

root ALL=(ALL)ALL

user ALL=(ALL)ALL

5、禁用root遠程登錄

[root localhost~]#vi/etc/ssh/sshd_config

PermitRootLoginno

PermitEmptyPasswords no#禁止空密碼登錄

UseDNSno#關(guān)閉DNS查詢

6、關(guān)閉不必要開機自啟動服務(wù)

562c11dfa9ec8a131fcc0a98a8207689a1ecc09a.jpeg

7、刪除不必要的系統(tǒng)用戶

8694a4c27d1ed21ba2f8f845f04d3ac251da3f03.jpeg

8、關(guān)閉重啟ctl-alt-delete組合鍵

[root localhost~]#vi/etc/init/control-alt-delete.conf

#exec/sbin/shutdown-r now"Control-Alt-Deletepressed"#注釋掉

9、調(diào)整文件描述符大小

[root localhost~]#ulimit–n#默認是1024

1024

[root localhost~]#echo"ulimit-SHn 102400">>/etc/rc.local#設(shè)置開機自動生效

10、去除系統(tǒng)相關(guān)信息

[root localhost~]#echo"Welcome to Server">/etc/issue

[root localhost~]#echo"Welcome to Server">/etc/redhat-release

11、修改history記錄

[root localhost~]#vi/etc/profile#修改記錄10個

HISTSIZE=10

12、同步系統(tǒng)時間

[root localhost~]#cp/usr/share/zoneinfo/Asia/Shanghai/etc/localtime#設(shè)置Shanghai時區(qū)

[root localhost~]#ntpdate cn.pool.ntp.org;hwclock–w#同步時間并寫入blos硬件時間

[root localhost~]#crontab–e#設(shè)置任務(wù)計劃每天零點同步一次

0****/usr/sbin/ntpdate cn.pool.ntp.org;hwclock-w

13、內(nèi)核參數(shù)優(yōu)化

[root localhost~]#vi/etc/sysctl.conf#末尾添加如下參數(shù)

net.ipv4.tcp_syncookies=1#1是開啟SYN Cookies,當出現(xiàn)SYN等待隊列溢出時,啟用Cookies來處,理,可防范少量SYN攻擊,默認是0關(guān)閉

net.ipv4.tcp_tw_reuse=1#1是開啟重用,允許講TIME_AIT sockets重新用于新的TCP連接,默認是0關(guān)閉

net.ipv4.tcp_tw_recycle=1#TCP失敗重傳次數(shù),默認是15,減少次數(shù)可釋放內(nèi)核資源

net.ipv4.ip_local_port_range=4096 65000#應(yīng)用程序可使用的端口范圍

net.ipv4.tcp_max_tw_buckets=5000#系統(tǒng)同時保持TIME_WAIT套接字的最大數(shù)量,如果超出這個數(shù)字,TIME_WATI套接字將立刻被清除并打印警告信息,默認180000

net.ipv4.tcp_max_syn_backlog=4096#進入SYN寶的最大請求隊列,默認是1024

net.core.netdev_max_backlog=10240#允許送到隊列的數(shù)據(jù)包最大設(shè)備隊列,默認300

net.core.somaxconn=2048#listen掛起請求的最大數(shù)量,默認128

net.core.wmem_default=8388608#發(fā)送緩存區(qū)大小的缺省值

net.core.rmem_default=8388608#接受套接字緩沖區(qū)大小的缺省值(以字節(jié)為單位)

net.core.rmem_max=16777216#最大接收緩沖區(qū)大小的最大值

net.core.wmem_max=16777216#發(fā)送緩沖區(qū)大小的最大值

net.ipv4.tcp_synack_retries=2#SYN-ACK握手狀態(tài)重試次數(shù),默認5

net.ipv4.tcp_syn_retries=2#向外SYN握手重試次數(shù),默認4

net.ipv4.tcp_tw_recycle=1#開啟TCP連接中TIME_WAIT sockets的快速回收,默認是0關(guān)閉

net.ipv4.tcp_max_orphans=3276800#系統(tǒng)中最多有多少個TCP套接字不被關(guān)聯(lián)到任何一個用戶文件句柄上,如果超出這個數(shù)字,孤兒連接將立即復(fù)位并打印警告信息

net.ipv4.tcp_mem=94500000 915000000 927000000

net.ipv4.tcp_mem[0]:低于此值,TCP沒有內(nèi)存壓力;

net.ipv4.tcp_mem[1]:在此值下,進入內(nèi)存壓力階段;

net.ipv4.tcp_mem[2]:高于此值,TCP拒絕分配socket。內(nèi)存單位是頁,可根據(jù)物理內(nèi)存大小進行

14./etc/ssh/sshd_config通過編輯文件可以修改sshd服務(wù)的相關(guān)配置,以下新增端口22223,

1.3高可用設(shè)計跟補丁修補-備份策略

1.業(yè)務(wù)系統(tǒng)采用雙服務(wù)器進行冗余設(shè)計,數(shù)據(jù)庫服務(wù)器采用雙服務(wù)器進行冗余設(shè)計,防止單點故障造成網(wǎng)絡(luò)服務(wù)中斷。

2.根據(jù),Centos官方社區(qū)和Linux社區(qū)出現(xiàn)的漏洞進行及時手動補丁修復(fù)。

3.建立主機系統(tǒng)軟件版本維護機制,隨時根據(jù)系統(tǒng)廠商發(fā)布的最新系統(tǒng)補丁進行對照,檢查當前使用的系統(tǒng)版本,并對補丁進行升級。

4.建立主機系統(tǒng)軟件備份和恢復(fù)機制,對主機系統(tǒng)的軟件和數(shù)據(jù)進行了定時備份任務(wù)。當出現(xiàn)災(zāi)難性時,可以對系統(tǒng)軟件和數(shù)據(jù)進行快速恢復(fù)。

業(yè)務(wù)系統(tǒng)中的應(yīng)用服務(wù)器采用負載均衡技術(shù)對外提供訪問,數(shù)據(jù)庫服務(wù)器也實現(xiàn)負載均衡,對應(yīng)用提供數(shù)據(jù)訪問,避免了所有的單點故障問題,而且可以隨時擴容服務(wù)器。

(1)目前系統(tǒng)中的數(shù)據(jù)備份分為兩級

第一級是每天的本地服務(wù)器備份,保留一周的數(shù)據(jù)

第二級是集中備份,有大容量存儲空間的文件服務(wù)器負責(zé)存儲所有的數(shù)據(jù)備份,保留周期一年。

系統(tǒng)中的系統(tǒng)數(shù)據(jù)備份,包括程序目錄備份,有單獨的目錄存放,以區(qū)別于數(shù)據(jù)庫備份。

(2)業(yè)務(wù)系統(tǒng)的異地備份機制,以及災(zāi)難恢復(fù)計劃。

異地備份容災(zāi)的考慮:系統(tǒng)中的所有數(shù)據(jù)備份,和程序及日志備份,均有異地存儲。

目前的系統(tǒng)運維中有災(zāi)難恢復(fù)的計劃。系統(tǒng)中目前有腳本結(jié)合人工實現(xiàn),腳本部分負責(zé)恢復(fù)數(shù)據(jù)及程序,人工修復(fù)部分負責(zé)搭建環(huán)境,每季度進行一次災(zāi)難恢復(fù)演練,確保數(shù)據(jù)及程序的恢復(fù)完整性。

(3)建立日常數(shù)據(jù)備份管理制度,和災(zāi)備演練制度。

系統(tǒng)中的數(shù)據(jù)備份,備份介質(zhì)的保管有專人負責(zé)。

介質(zhì)的安全性在整個保密體系規(guī)劃中。

(4)根據(jù)目前建立的災(zāi)難恢復(fù)計劃,系統(tǒng)中目前的災(zāi)難恢復(fù)演練為每季度進行一次,系統(tǒng)運維主要負責(zé)人定期每個季度對運維人員進行培訓(xùn)。

95eef01f3a292df51487c47ce312bb6634a87339.jpeg

立即登錄,閱讀全文
原文鏈接:點擊前往 >
版權(quán)說明:本文內(nèi)容來自于百家號,本站不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。文章內(nèi)容系作者個人觀點,不代表快出海對觀點贊同或支持。如有侵權(quán),請聯(lián)系管理員(zzx@kchuhai.com)刪除!
優(yōu)質(zhì)服務(wù)商推薦
更多
個人VIP