溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

保護(hù)Linux服務(wù)器的常用方法有哪些

發(fā)布時(shí)間:2021-11-11 09:58:47 來源:億速云 閱讀:103 作者:柒染 欄目:編程語(yǔ)言

保護(hù)Linux服務(wù)器的常用方法有哪些,很多新手對(duì)此不是很清楚,為了幫助大家解決這個(gè)難題,下面小編將為大家詳細(xì)講解,有這方面需求的人可以來學(xué)習(xí)下,希望你能有所收獲。

在實(shí)際的生產(chǎn)環(huán)境中,開發(fā)和測(cè)試人員都盡可能的保證安全,以避免一些重要信息泄露甚至被竊取。許多企業(yè)或組織還擁有較為完善的威脅建模,但即便如此安全問題仍層出不窮。有的企業(yè)則期望通過網(wǎng)絡(luò)上的白帽或黑帽們,來幫助他們共同完成企業(yè)的安全建設(shè)。但是作為企業(yè)需要明白一點(diǎn),并不是所有的白帽或黑帽,都愿意將自己的安全建議分享給他們。對(duì)于安全防護(hù)也不僅僅是使用2FA和密碼管理器,安裝更新和不點(diǎn)擊可疑鏈接這一口號(hào)那么簡(jiǎn)單。

這篇文章的內(nèi)容其實(shí)我在一些安全會(huì)議上已經(jīng)演講過兩回了,在這里我對(duì)部分內(nèi)容做了一些修改并希望再次分享給大家,主要面向那些剛剛學(xué)習(xí)或了解Linux安全的人。在本文我并不會(huì)實(shí)際討論Web應(yīng)用的安全,想要了解和學(xué)習(xí)這方面的內(nèi)容,大可以參考OWASP Top 10它可以教會(huì)開發(fā)和測(cè)試人員有關(guān)SQL注入,CSRF,XSS,會(huì)話管理等知識(shí)。如果你擔(dān)心的是更加高級(jí)的攻擊者,并且需要防范可能的惡意代碼或提權(quán)腳本被執(zhí)行,那么在本文中你將學(xué)習(xí)到你想了解的知識(shí)。遠(yuǎn)端的入侵者甚至是一個(gè)不起眼的內(nèi)部威脅者,此時(shí)可能早已潛伏在你的系統(tǒng)中伺機(jī)而動(dòng)。

以下我會(huì)提到一些基本概念,并包含相關(guān)的工具。同時(shí),在這里你需要問你自己:

ACL(訪問控制列表)

你的基礎(chǔ)設(shè)施是否分為不同的系統(tǒng),具有不同的基于角色的訪問級(jí)別,或者用戶擁有完全相同的特權(quán)?

acl: getfacl+setfacl

系統(tǒng)審計(jì)

你是否已對(duì)登錄到某臺(tái)機(jī)器的用戶執(zhí)行考慮周全?

查看:auditd, go-audit

靜態(tài)分析和fuzzing

你可能正在運(yùn)行C/C++。內(nèi)存安全問題,占據(jù)了大多數(shù)出現(xiàn)的漏洞。你是否對(duì)這些代碼做過審計(jì),靜態(tài)分析或fuzzing測(cè)試以確保它們的安全性?你是否考慮過在 Rust中開發(fā)?

查看:afl, Radamsa, Sulley, boofuzz, Coverity Scan, Valgrind, sanitizers

網(wǎng)絡(luò)分段

你是否已將你的后端與你的前端及負(fù)載均衡器正確分離?你是否花時(shí)間設(shè)置了公司VPN,并授予你的機(jī)器私有的內(nèi)部地址?

查看: iptables, ufw

隔離

你的員工是否將他們的工作電腦用于個(gè)人活動(dòng),例如游戲或與其工作無關(guān)的應(yīng)用程序?或者他們是否有使用像虛擬機(jī)或容器一類的東西來進(jìn)行消息傳遞,瀏覽,開發(fā)......?

查看: Qubes, VirtualBox

文件權(quán)限和umask

任何對(duì)Unix有基礎(chǔ)了解的人,都不會(huì)對(duì)文件權(quán)限感到陌生。如果你沒有嚴(yán)格控制某些文件的讀寫執(zhí)行權(quán)限,那么我強(qiáng)烈建議你按照最嚴(yán)格的規(guī)范實(shí)施權(quán)限控制。

更多內(nèi)容

容器

集裝箱化在理論上對(duì)安全有很大的幫助。但我想知道誰(shuí)被允許建立并將鏡像投入生產(chǎn)環(huán)境,他們是否也進(jìn)行了簽名和驗(yàn)證,并對(duì)安全更新和CVE進(jìn)行監(jiān)控?

查看:Docker, LXC

利用威脅情報(bào)

從IPv4地址空間發(fā)起惡意IP流,準(zhǔn)備進(jìn)行DDoS攻擊的僵尸網(wǎng)絡(luò)以及自動(dòng)化的利用掃描正在進(jìn)行。你可以自己收集有關(guān)此類活動(dòng)的情報(bào),也可以訂閱相關(guān)產(chǎn)品的feed或黑名單列表。但你的端點(diǎn)/防火墻,是否有對(duì)此作出反應(yīng)并合并這些信息?

查看:威脅情報(bào)資源列表

防火墻和包過濾

你多久審查一次你的iptables規(guī)則或你是否了解你的路由器/防火墻執(zhí)行的內(nèi)容,有沒有對(duì)它們進(jìn)行運(yùn)行驗(yàn)證測(cè)試?你是否正確配置了包過濾規(guī)則,以確保機(jī)器只能與那些需要的數(shù)據(jù)通信?

查看:pfSense, OPNsense

DNS和域名注冊(cè)商

你為此鎖定了多少努力?你已經(jīng)付出了多少努力來鎖定它?當(dāng)你的域名服務(wù)器或DNS區(qū)域文件被未經(jīng)授權(quán)更改時(shí),你是否會(huì)收到相應(yīng)警報(bào)?此外,你是否啟用了DNSSEC?

就我個(gè)人而言,我建議將Namecheap作為注冊(cè)服務(wù)商,并將Cloudflare用于高性能DNS。

物理訪問

如果我是法院的執(zhí)法人員,數(shù)據(jù)中心工作人員或你的托管服務(wù)提供商,我是否可以自由的的讀取你服務(wù)器的內(nèi)容(全盤加密除外)?當(dāng)你的磁盤退役或更換時(shí),其中的內(nèi)容是否會(huì)被擦除?如果有人將USB插入1U機(jī)架伺服器,你是否會(huì)收到警報(bào)提醒?

查看:LUKS/cryptsetup

你有確定性的構(gòu)建嗎?

當(dāng)開發(fā)人員將構(gòu)建代碼推送到生產(chǎn)環(huán)境中時(shí),你是否可以驗(yàn)證這些代碼的真實(shí)意圖,并且保證源碼或靜態(tài)鏈接的依賴關(guān)系未被惡意修改?

查看:Gitian

驗(yàn)證數(shù)字簽名

毫無疑問,你可能會(huì)從一些非官方站點(diǎn)獲取或下載一些代碼和軟件。那么在團(tuán)隊(duì)成員繼續(xù)構(gòu)建或安裝之前,你是否比較過校驗(yàn)和/哈希或驗(yàn)證了該下載的簽名?

查看:使用GnuPG制作和驗(yàn)證簽名

沙盒環(huán)境

它是否具有AppArmor配置文件,seccomp過濾器或RBAC策略,指定它在系統(tǒng)調(diào)用和訪問權(quán)限方面的功能?

查看:seccomp, AppArmor

TLS和加密配置

你是否已經(jīng)完全棄用那些不安全的加密套件和算法(例如MD5,SHA1,RC4)?并在兼容性和用戶期望上選擇最佳的加密方式,HMAC和密鑰交換算法。如果可用,優(yōu)先考慮使用RSA加密算法。這適用于OpenSSH,GnuPG,OpenVPN等。使用Let’s Encrypt.t即可輕松獲得ssl的免費(fèi)證書。

查看:應(yīng)用密碼加固,SSL和TLS,服務(wù)器端TLS

公密鑰管理

如果你的每個(gè)員工都擁有自己的密鑰,請(qǐng)考慮在整個(gè)域中對(duì)其進(jìn)行同步,并將密鑰移出版本控制。

查看:GPGSync, sops, Vault

HTTP頭安全

關(guān)于HTTP頭安全,這里有一個(gè)列表可供大家參考:X-Frame-Options, X-XSS-Protection, X-Content-Type-Options, X-Download-Options, X-Permitted-Cross-Domain-Policies, Content-Security-Policy, Referrer-Policy, Strict-Transport-Security, Public-Key-Pins。這些響應(yīng)頭的正確配置,對(duì)安全也至關(guān)重要。

查看: securityheaders.io, Mozilla web安全指南

文件完整性監(jiān)控

你是否對(duì)重要文件做定期檢查,已確保文件未被修改并生成被更改的警報(bào)?

查看: Tripwire, OSSEC

入侵檢測(cè)

或許你已經(jīng)部署了多種類型的入侵檢測(cè)工具,但你是否僅僅只是按照默認(rèn)的規(guī)則配置來運(yùn)行它,并沒有花費(fèi)時(shí)間來學(xué)習(xí)相關(guān)的技術(shù)知識(shí),以及根據(jù)自身應(yīng)用情況來配置合適的規(guī)則集?

查看:比較基于主機(jī)的入侵檢測(cè)系統(tǒng),Snort

漏洞管理

通過訂閱郵件,我們可以獲取新的漏洞報(bào)告并修復(fù)漏洞。那么,你還記得你最后一次檢查CVE活動(dòng)是什么時(shí)候嗎?

查看:Nessus, CoreOS clair

基礎(chǔ)系統(tǒng)的安全

你是否真的完全信任Debian/Ubuntu,RHEL或任何公司的第三方軟件存儲(chǔ)庫(kù),可以始終為你提供非惡意的軟件包?這里有一個(gè)想法:你可以托管自己的存儲(chǔ)庫(kù),固定到特定的版本,并且僅在測(cè)試后才升級(jí)。

或者,你也可以運(yùn)行基于Alpine或LinuxKit的極小操作系統(tǒng),這樣可以最大程度上的減少你的攻擊面。

LSM(Linux安全模塊)

即AppArmor或SELINUX,他們最近是否為你做過任何事情?

Linux內(nèi)核加固

這里我建議大家直接去查看PaX和grsecurity補(bǔ)丁。前不久被曝出的Spectre和Meltdown漏洞,也為我們的內(nèi)核安全問題敲響了警鐘。

查看:grsecurity.net,Linux 內(nèi)核安全衛(wèi)士,內(nèi)核自我保護(hù)項(xiàng)目

移除不必要的設(shè)備

如果你沒有使用Thunderbolt,F(xiàn)irewire,無線網(wǎng)卡或任何具有DMA(直接內(nèi)存訪問)模式的模塊,那么你就沒有理由加載這些內(nèi)核模塊。

查看:內(nèi)核模塊黑名單列表

日志過濾

也許你還在通過手動(dòng)的方式檢查日志文件,那么你應(yīng)該學(xué)會(huì)編寫Logstash過濾和grok pattern。Grok是Logstash 最重要的插件。你可以在 grok 里預(yù)定義好命名正則表達(dá)式,在稍后(grok參數(shù)或者其他正則表達(dá)式里)引用它。它非常適用于syslog logs,apache和一些其他的webserver logs,以及mysql logs。grok有很多定義好pattern,當(dāng)然也可以自己定義。

查看:Filebeat, rsyslog, Logstash

你如何監(jiān)控資源的使用情況?

RAM,CPU負(fù)載,可用磁盤空間。這些雖然看上去無關(guān)緊要,但這些地方都是發(fā)生異?;顒?dòng)的關(guān)鍵位置,因此值得一提。

查看:Metricbeat, Prometheus node_exporter, Nagios, Osquery

基礎(chǔ)設(shè)施測(cè)試

人們對(duì)軟件測(cè)試的各個(gè)方面都很熟悉,但對(duì)于基礎(chǔ)設(shè)施的測(cè)試卻并不熟悉。你如何確保你的系統(tǒng)狀態(tài)始終符合你的預(yù)期?

查看:Serverspec, Testinfra

平臺(tái)和固件安全

你的BIOS和其他低級(jí)接口受到錯(cuò)誤影響。英特爾?AMT和管理引擎,以及Computrace應(yīng)被禁用。下面鏈接提供了一個(gè)非常有用的用于分析系統(tǒng)固件和硬件組件安全性的框架。

查看:CHIPSEC

保護(hù)遠(yuǎn)程shell

sshd通用準(zhǔn)則:禁用root登錄,使用密鑰代替密碼,并設(shè)置暴破防護(hù)。而更好的解決方案是將其放置在VPN后面,通過驗(yàn)證的Tor隱藏服務(wù),或者需要端口試探來動(dòng)態(tài)開啟一些特定端口連接主機(jī)。

查看:fail2ban, denyhosts, sshguard, Secure Secure Shell

Webserver最佳實(shí)踐

如果你不想泄露你當(dāng)前正在運(yùn)行服務(wù)器的版本信息,對(duì)于nginx你可以通過將參數(shù)server_tokens設(shè)為off來實(shí)現(xiàn),如果是Apache則將ServerSignature設(shè)為off即可。

在運(yùn)行依賴于動(dòng)態(tài)腳本語(yǔ)言的復(fù)雜應(yīng)用程序時(shí),請(qǐng)考慮運(yùn)行類似ModSecurity的WAF(Web應(yīng)用程序防火墻)。 Cloudflare正大規(guī)模的向其客戶提供此項(xiàng)服務(wù)。

次要因素

我強(qiáng)烈推薦使用YubiKey,它有很多有用的功能。它可以配置為輸出靜態(tài)密碼(非常適合PAM用戶登錄或掛載卷加密),HOTP或通用雙因素(U2F)認(rèn)證,或者可以使用OpenPGP智能卡。這些設(shè)備對(duì)于任何系統(tǒng)管理員來說都是不可或缺的。為此,我已經(jīng)發(fā)布了詳細(xì)的YubiKey GPG+SSH的安裝指南。

DNS解析

你的/etc/resolv.conf文件是否正確配置? Quad9是谷歌公共DNS或OpenDNS的替代產(chǎn)品,可阻止客戶端訪問惡意域名,這與Chrome瀏覽器通過安全瀏覽功能來保護(hù)用戶的功能類似。所以將你的域名服務(wù)器設(shè)置為9.9.9.9將能更好的保障你的安全。

審計(jì)信任方

除了讓系統(tǒng)的可信根證書存儲(chǔ)保持最新之外,還應(yīng)該每隔一段時(shí)間檢查一次包管理器,以查看哪些第三方是可信的,他們的存儲(chǔ)庫(kù)簽名密鑰是否足夠強(qiáng)大(許多仍使用1024-bit DSA),并刪除那些過期的。

嘗試:apt-key list, rpm -qa gpg-pubkey

簽名git提交和標(biāo)簽

目前,幾乎所有人都在使用git進(jìn)行版本控制。當(dāng)你發(fā)布新版本時(shí),它是否基于GPG簽名git標(biāo)簽?如果你喜歡,你也可以簽名提交。

查看:使用GPG簽名標(biāo)簽, Git簽名, Git工具?簽名你的工作

看完上述內(nèi)容是否對(duì)您有幫助呢?如果還想對(duì)相關(guān)知識(shí)有進(jìn)一步的了解或閱讀更多相關(guān)文章,請(qǐng)關(guān)注億速云行業(yè)資訊頻道,感謝您對(duì)億速云的支持。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI