-
Notifications
You must be signed in to change notification settings - Fork 89
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
資安:處理 DDoS 攻擊(目前暫時改為用 Disqus 來 host) #35
Comments
因為我是用 API gate way, 如果是這樣的話,看來可能不得不放棄 serverles 的架構了, |
要怎麼知道是 DDoS,還是因為新聞報導而突然增多的使用者? |
我同意 @qrtt1 說法也有可能不是 DDoS 而是突然流量的增長,可能要先查明清楚來源。 |
@qrtt1 我原先的做法就是在 Lambda 內自行 filter,(第一次在 User 認證那裡濾掉) |
@tony1223 主要還是得針對重複、相似留言的檢查 pattern |
現在就是依照 TonyQ 的建議先把 Facebook 留言掛上去擋著 XD |
剛剛找到這篇 |
額,雖說我有回信推薦其它作法,Disqus 一票 順道,APIGW 自帶客制化的 CF,實現其快取行為(但又與一般 CF 不同); |
@clifflu 但是 CF 掛上去以及你信裡面寫的解法,可能要等到之後再好好請教你了。 |
這些spam留意,你能夠log到他們的header嗎?有時可以利用header中某些資料當做阻擋依據。 |
在AWS Cloudfront和WAF設定上有任何問題,都可以mail給我。我之前有設定過的經驗可以協助。 |
感謝各位 AWS Master!m ( _ _ ) m 目前先上一版用 DIsqus 擋著的, 正在根據以上所蒐集的意見在調整新的架構。 |
大量 spam 的內容?請問有試過 Google 的 reCAPTCHA 嗎? 輸入留言的時候讓使用者輸入驗證碼至少可以擋下不少的 spam。 |
Yes,現在 Spam 那邊會先用 reCAPTCHA 擋掉, 現在也先觀察一下大家對 DIsqus 的使用情形怎麼樣。
|
GET 的話,api gateway 本身有 caching 的能力,內容沒變的話應該不用直接打到 db。 不過大部分資料都會漸漸由 hot 變成 cold,最後轉成 s3 static page 比較不耗 db 或 lambda 的 limit |
@qrtt1 |
加一層cloudflare? |
我是很好奇有沒有可能透過第三方的資源來block 像是wordpress 有名的擋 spam 服務 這不知道能不能額外串接, |
用 CDN (ex. cloudflare) 擋在前面 |
spam 內容... 看來只能用一些身份認證機制了!! 比方簡訊, email? 然後呈現上依舊使用匿名 |
spam 問題,加入留言間隔時間的機制如何? |
不同 IP 的話,這種方式也沒有用
|
加入身份驗證,使用fb或google的oauth進行身份驗證,因為 authorization code只能被使用一次,攻擊者也無法大量取得google和fb帳號,可以解決db流量的問題,即使攻擊也很好預防。 至於隱私部分,對外不顯示暱稱即可,db也不留任何使用者 PII 資料 |
Hi! 就別擔心費用問題了。 |
Cloudfront + WAF 的費用會很驚人,如果荷包不夠深的話可能要考慮其他方式 如果有AWS相關問題也可以問我喔~~ :) |
@j100002ben CloudFlare 不穩定?現在不是都已經很穩定了嗎,台灣也有主機了。 |
雖然現在已經做到一半, Spam
架構建議
Cloud front 的價錢算一算之後的確蠻貴的, |
嗨,晚安,稍微提醒一下 S3 的部分要小心,不要讓別人知道直接到 S3 的網址, 因為如果人家跑去 DDoS 你的 S3,你的信用卡可能就會被刷爆了。 |
S3 get request要錢,資料傳出也要錢。 XD |
XD 現在全部進來之前都會再擋一層 Cloud Front, 現在想先觀察一陣子到底會燒多少錢,再來決定以後要不要遷移。 |
CloudFront HTTP請求和資料傳輸也是要錢的 XD
|
爆了是不可逆的欸 XDDDDD靠 |
@abalone0204 Hi, 我正在理解你的 code, 雖然我不是 web developer, 需要些時間, 哪裡找的到你存入 db 裡的 schema 呢? 我這裡可以先 shared 出 cloudant 的 db,只要開好帳號,告訴我即可,使用 shared db 的流量都會算我的。 |
@iblis17 Hi, 另外,原本搭配 DynamoDB 就是因為能用 AWS 的整套服務。 但比起換掉原先架構中的 DB,我覺得 Issue #36 倒是個可以試試看的方向, |
@abalone0204 在我的想像中, migrate 到 couchdb 上,可以整個 aws 抽掉, couchdb 有 server side js 可以用, #36 我覺得不錯啊,都不衝突。 FYI: This is the hidden feature of couchdb. http://docs.couchdb.org/en/1.6.1/couchapp/ |
btw, couchdb 可以直接開始 serve static content |
trigger event 的部分 couchdb 提供 long polling / SSE, 那麼你可以另外寫程式去聽 event |
@abalone0204 如果你願意把 db schema 的 spec 寫出來,我很樂意在 couchdb 上試做! |
The text was updated successfully, but these errors were encountered: