您好,登錄后才能下訂單哦!
小編給大家分享一下合理規劃和區分不同安全組的方法,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
在安全組的使用過程中,通常會將所有的云服務器放置在同一個安全組中,從而可以減少初期配置的工作量。但從長遠來看,業務系統網絡的交互將變得復雜和不可控。在執行安全組變更時,您將無法明確添加和刪除規則的影響范圍。
合理規劃和區分不同的安全組將使得您的系統更加便于調整,梳理應用提供的服務并對不同應用進行分層。這里推薦您對不同的業務規劃不同的安全組,設置不同的安全組規則。
區分不同的安全組
公網服務的云服務器和內網服務器盡量屬于不同的安全組
是否對外提供公網服務,包括主動暴露某些端口對外訪問(例如 80、443 等),被動地提供(例如云服務器具有公網 IP、EIP、NAT 端口轉發規則等)端口轉發規則,都會導致自己的應用可能被公網訪問到。
2 種場景的云服務器所屬的安全組規則要采用最嚴格的規則,建議拒絕優先,默認情況下應當關閉所有的端口和協議,僅僅暴露對外提供需要服務的端口,例如 80、443。由于僅對屬于對外公網訪問的服務器編組,調整安全組規則時也比較容易控制。
對于對外提供服務器編組的職責應該比較明晰和簡單,避免在同樣的服務器上對外提供其它的服務。例如 MySQL、Redis 等,建議將這些服務安裝在沒有公網訪問權限的云服務器上,然后通過安全組的組組授權來訪問。
如果當前有公網云服務器已經和其它的應用在同一個安全組 SG_CURRENT。您可以通過下面的方法來進行變更。
梳理當前提供的公網服務暴露的端口和協議,例如 80、443。
新創建一個安全組,例如 SG_WEB, 然后添加相應的端口和規則。
說明:授權策略:允許,協議類型:ALL, 端口: 80/80,授權對象: 0.0.0.0/0, 授權策略:允許,協議類型:ALL,端口: 443/443 授權對象: 0.0.0.0/0。
選擇安全組 SG_CURRENT, 然后添加一條安全組規則,組組授權,允許 SG_WEB 中的資源訪問SG_CURRENT。
說明:授權策略:允許,協議類型:ALL,端口:-1/-1,授權對象:SG_WEB,優先級:按照實際情況自定義[1-100]。
將一臺需要切換安全組的實例 ECS_WEB_1 添加到新的安全組中。
在 ECS 控制臺中,選擇 安全組管理。
選擇 SG_WEB > 管理實例 > 添加實例,選擇實例 ECS_WEB_1 加入到新的安全組 SG_WEB 中,確認 ECS_WEB_1 實例的流量和網絡工作正常。
將 ECS_WEB_1 從原來的安全組中移出。
在 ECS 控制臺中,選擇 安全組管理。
選擇 SG_CURRENT > 管理實例 > 移出實例,選擇 ECS_WEB_1 ,從 SG_CURRENT 移除,測試網絡連通性,確認流量和網絡工作正常。
如果工作不正常,將 ECS_WEB_1 仍然加回到安全組 SG_CURRENT 中,檢查設置的 SG_WEB 暴露的端口是否符合預期,然后繼續變更。
執行其它的服務器安全組變更。
不同的應用使用不同的安全組
在生產環境中,不同的操作系統大多情況下不會屬于同一個應用分組來提供負載均衡服務。提供不同的服務意味著需要暴露的端口和拒絕的端口是不同的,建議不同的操作系統盡量歸屬于不同的安全組。
例如,對于 Linux 操作系統,可能需要暴露 TCP(22)端口來實現 SSH,對 Windows 可能需要開通 TCP(3389) 遠程桌面連接。
除了不同的操作系統歸屬不同的安全組,即便同一個鏡像類型,提供不同的服務,如果之間不需要通過內網進行訪問的話,最好也劃歸不同的安全組。這樣方便解耦,并對未來的安全組規則進行變更,做到職責單一。
在規劃和新增應用時,除了考慮劃分不同的虛擬交換機配置子網,也應該同時合理的規劃安全組。使用網段+安全組約束自己作為服務提供者和消費者的邊界。
具體的變更流程參見上面的操作步驟。
生產環境和測試環境使用不同的安全組
為了更好的做系統的隔離,在實際開發過程中,您可能會構建多套的測試環境和一套線上環境。為了更合理的做網絡隔離,您需要對不同的環境配置使用不通的安全策略,避免因為測試環境的變更刷新到了線上影響線上的穩定性。
通過創建不同的安全組,限制應用的訪問域,避免生產環境和測試環境聯通。同時也可以對不同的測試環境分配不同的安全組,避免多套測試環境之間互相干擾,提升開發效率。
僅對需要公網訪問子網或者云服務器分配公網 IP
不論是經典網絡還是專有網絡 (VPC) 中,合理的分配公網 IP 可以讓系統更加方便地進行公網管理,同時減少系統受攻擊的風險。在專有網絡的場景下,創建虛擬交換機時,建議您盡量將需要公網訪問的服務區的 IP 區間放在固定的幾個交換機(子網 CIDR)中,方便審計和區分,避免不小心暴露公網訪問。
在分布式應用中,大多數應用都有不同的分層和分組,對于不提供公網訪問的云服務器盡量不提供公網IP,如果是有多臺服務器提供公網訪問,建議您配置公網流量分發的負載均衡服務來公網服務,提升系統的可用性,避免單點。
對于不需要公網訪問的云服務器盡量不要分配公網 IP。專有網絡中當您的云服務器需要訪問公網的時候,優先建議您使用 NAT 網關,用于為 VPC 內無公網 IP 的 ECS 實例提供訪問互聯網的代理服務,您只需要配置相應的 SNAT 規則即可為具體的 CIDR 網段或者子網提供公網訪問能力,具體配置參見 SNAT。避免因為只需要訪問公網的能力而在分配了公網 IP(EIP) 之后也向公網暴露了服務。
最小原則
安全組應該是白名單性質的,所以需盡量開放和暴露最少的端口,同時盡可能少地分配公網 IP。若想訪問線上機器進行任務日志或錯誤排查的時候直接分配公網 IP 或者掛載 EIP 雖然簡便,但是畢竟會將整個機器暴露在公網之上,更安全的策略是建議通過跳板機來管理。
使用跳板機
跳板機由于其自身的權限巨大,除了通過工具做好審計記錄。在專有網絡中,建議將跳板機分配在專有的虛擬交換機之中,對其提供相應的 EIP 或者 NAT 端口轉發表。
首先創建專有的安全組 SG_BRIDGE,例如開放相應的端口,例如 Linux TCP(22) 或者 Windows RDP(3389)。為了限制安全組的入網規則,可以限制可以登錄的授權對象為企業的公網出口范圍,減少被登錄和掃描的概率。
然后將作為跳板機的云服務器加入到該安全組中。為了讓該機器能訪問相應的云服務器,可以配置相應的組授權。例如在 SG_CURRENT 添加一條規則允許 SG_BRIDGE 訪問某些端口和協議。
使用跳板機 SSH 時,建議您優先使用 SSH 密鑰對而不是密碼登錄。
總之,合理的安全組規劃使您在擴容應用時更加游刃有余,同時讓您的系統更加安全。
以上是合理規劃和區分不同安全組的方法的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。