aws ec2 跨帐号共享_AWS共享资源的警告
aws ec2 跨帳號(hào)共享
最近,我一直在發(fā)布一個(gè)新版本,與往常一樣,通過(guò)將DNS記錄切換為指向以前的“備用”組的負(fù)載平衡器來(lái)利用藍(lán)綠色部署 。 但是在切換DNS之前,我檢查了新發(fā)布版本的日志并發(fā)現(xiàn)了一些奇怪的現(xiàn)象– Web框架(Spring MVC)連續(xù)出現(xiàn)HTTP錯(cuò)誤,表明某個(gè)端點(diǎn)不支持HTTP方法。
奇怪的是–我根本沒(méi)有這樣的終點(diǎn)。 我啟用了進(jìn)一步的日志記錄,結(jié)果發(fā)現(xiàn)請(qǐng)求URL根本與我的域無(wú)關(guān)。 備用組還沒(méi)有針對(duì)它的流量,它正在接收指向一個(gè)完全不同的域的請(qǐng)求,而這個(gè)域不是我所擁有的。
我向域所有者以及AWS傳達(dá)了消息,以告知他們?cè)搯?wèn)題。 域所有者表示,他們不知道這是什么,并且他們沒(méi)有任何未使用或遺忘的AWS資源。 但是,AWS做出了如下回應(yīng):
ELB服務(wù)會(huì)隨著流量需求的變化而動(dòng)態(tài)擴(kuò)展,因此,在進(jìn)行擴(kuò)展時(shí),ELB服務(wù)將從未使用的AWS公共IP地址池中獲取IP地址,并將其分配給為您配置的ELB節(jié)點(diǎn)。 您在本例中看到的外部域名可能屬于另一位AWS客戶(hù),該客戶(hù)的AWS資源不再使用您的ELB節(jié)點(diǎn)現(xiàn)在擁有的IP地址,因?yàn)樗谀硞€(gè)階段被釋放到AWS未使用的IP池中, Web客戶(hù)端很可能過(guò)度為這些DNS名稱(chēng)緩存DNS(不遵守DNS TTL),或者它們自己的DNS服務(wù)器配置了靜態(tài)條目,因此正在與現(xiàn)在屬于您的ELB的IP地址進(jìn)行通信。 [Link 1]中簡(jiǎn)要介紹了從Route53添加和刪除IP的ELB,DNS名稱(chēng)附帶的TTL為60秒。 只要客戶(hù)尊重TTL,就不會(huì)出現(xiàn)此類(lèi)問(wèn)題。
我可以簡(jiǎn)單地忽略流量,但是如果我擔(dān)任此角色,會(huì)發(fā)生什么情況–在突發(fā)IP釋放后,但是某些客戶(hù)端(或某些中間DNS解析器)將信息緩存的時(shí)間超過(guò)了指示的時(shí)間。 然后,對(duì)我的服務(wù)的請(qǐng)求(包括密碼,API密鑰等)將轉(zhuǎn)發(fā)給其他人。
在瀏覽器中使用HTTPS可能會(huì)有所幫助,因?yàn)樾仑?fù)載均衡器的證書(shū)與我的域不匹配,但是在其他未執(zhí)行此驗(yàn)證或?qū)⑵渚彺娴墓ぞ叩那闆r下,HTTPS則無(wú)濟(jì)于事。證書(shū)固定。
AWS表示無(wú)法在負(fù)載均衡器上解決此問(wèn)題,但實(shí)際上可以通過(guò)在IP,所有者和Host標(biāo)頭之間保持映射來(lái)解決。 這不會(huì)很瑣碎,但是如果我的經(jīng)驗(yàn)不是特殊情況,則值得探索。 如果HTTPS解決了它是否值得修復(fù)-可能不是。
因此,這是始終使用HTTPS并在通過(guò)HTTP建立連接時(shí)強(qiáng)制使用HTTPS的另一個(gè)原因。 但也提醒您不要進(jìn)行聰明的客戶(hù)端IP緩存(由DNS解析器處理),并始終驗(yàn)證服務(wù)器證書(shū)。
翻譯自: https://www.javacodegeeks.com/2018/08/caveat-aws-shared-resources.html
aws ec2 跨帳號(hào)共享
總結(jié)
以上是生活随笔為你收集整理的aws ec2 跨帐号共享_AWS共享资源的警告的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: linux使jdk开机可用_JDK 11
- 下一篇: jdk 流合并_JDK 12,合并的收集