Linux服務(wù)器加固的基本步驟詳解
如果默認(rèn)情況下 netstat 沒(méi)有包含在你的 Linux 發(fā)行版中,請(qǐng)安裝軟件包 net-tools 或使用 ss -tulpn命令。
本文引用地址:http://butianyuan.cn/article/201809/389050.htm以下是 netstat 的輸出示例。 請(qǐng)注意,因?yàn)槟J(rèn)情況下不同發(fā)行版會(huì)運(yùn)行不同的服務(wù),你的輸出將有所不同:
netstat 告訴我們服務(wù)正在運(yùn)行 RPC(rpc.statd 和 rpcbind)、SSH(sshd)、NTPdate(ntpd)和Exim(exim4)。
TCP
請(qǐng)參閱 netstat 輸出的 Local Address 那一列。進(jìn)程 rpcbind 正在偵聽(tīng) 0.0.0.0:111 和 :::111,外部地址是 0.0.0.0:* 或者 :::* 。這意味著它從任何端口和任何網(wǎng)絡(luò)接口接受來(lái)自任何外部地址(IPv4 和 IPv6)上的其它 RPC 客戶端的傳入 TCP 連接。 我們看到類似的 SSH,Exim 正在偵聽(tīng)來(lái)自回環(huán)接口的流量,如所示的 127.0.0.1 地址。
UDP
UDP 套接字是無(wú)狀態(tài)的,這意味著它們只有打開(kāi)或關(guān)閉,并且每個(gè)進(jìn)程的連接是獨(dú)立于前后發(fā)生的連接。這與 TCP 的連接狀態(tài)(例如 LISTEN、ESTABLISHED和 CLOSE_WAIT)形成對(duì)比。
我們的 netstat輸出說(shuō)明 NTPdate :1)接受服務(wù)器的公網(wǎng) IP 地址的傳入連接;2)通過(guò)本地主機(jī)進(jìn)行通信;3)接受來(lái)自外部的連接。這些連接是通過(guò)端口 123 進(jìn)行的,同時(shí)支持 IPv4 和 IPv6。我們還看到了 RPC 打開(kāi)的更多的套接字。
查明該移除哪個(gè)服務(wù)
如果你在沒(méi)有啟用防火墻的情況下對(duì)服務(wù)器進(jìn)行基本的 TCP 和 UDP 的 nmap 掃描,那么在打開(kāi)端口的結(jié)果中將出現(xiàn) SSH、RPC 和 NTPdate 。通過(guò)配置防火墻,你可以過(guò)濾掉這些端口,但 SSH 除外,因?yàn)樗仨氃试S你的傳入連接。但是,理想情況下,應(yīng)該禁用未使用的服務(wù)。
你可能主要通過(guò) SSH 連接管理你的服務(wù)器,所以讓這個(gè)服務(wù)需要保留。如上所述,RSA 密鑰和 Fail2Ban 可以幫助你保護(hù) SSH。
NTP 是服務(wù)器計(jì)時(shí)所必需的,但有個(gè)替代 NTPdate 的方法。如果你喜歡不開(kāi)放網(wǎng)絡(luò)端口的時(shí)間同步方法,并且你不需要納秒精度,那么你可能有興趣用 OpenNTPD 來(lái)代替 NTPdate。
然而,Exim 和 RPC 是不必要的,除非你有特定的用途,否則應(yīng)該刪除它們。
本節(jié)針對(duì) Debian 8。默認(rèn)情況下,不同的 Linux 發(fā)行版具有不同的服務(wù)。如果你不確定某項(xiàng)服務(wù)的功能,請(qǐng)嘗試搜索互聯(lián)網(wǎng)以了解該功能是什么,然后再嘗試刪除或禁用它。
卸載監(jiān)聽(tīng)的服務(wù)
如何移除包取決于發(fā)行版的包管理器:
Arch
CentOS
Debian / Ubuntu
Fedora
再次運(yùn)行 sudo netstat -tulpn,你看到監(jiān)聽(tīng)的服務(wù)就只會(huì)有 SSH(sshd)和 NTP(ntpdate,網(wǎng)絡(luò)時(shí)間協(xié)議)。
配置防火墻
使用防火墻阻止不需要的入站流量能為你的服務(wù)器提供一個(gè)高效的安全層。 通過(guò)指定入站流量,你可以阻止入侵和網(wǎng)絡(luò)測(cè)繪。 最佳做法是只允許你需要的流量,并拒絕一切其他流量。請(qǐng)參閱我們的一些關(guān)于最常見(jiàn)的防火墻程序的文檔:
iptables 是 netfilter 的控制器,它是 Linux 內(nèi)核的包過(guò)濾框架。 默認(rèn)情況下,iptables 包含在大多數(shù) Linux 發(fā)行版中。
firewallD 是可用于 CentOS/Fedora 系列發(fā)行版的 iptables 控制器。
UFW 為 Debian 和 Ubuntu 提供了一個(gè) iptables 前端。
接下來(lái)
這些是加固 Linux 服務(wù)器的最基本步驟,但是進(jìn)一步的安全層將取決于其預(yù)期用途。 其他技術(shù)可以包括應(yīng)用程序配置,使用入侵檢測(cè)或者安裝某個(gè)形式的訪問(wèn)控制。
現(xiàn)在你可以按你的需求開(kāi)始設(shè)置你的服務(wù)器了。
評(píng)論