4
我的第一個基於Node.js的公共網站(使用Express)在幾周前進入公開場合。我經常檢查服務器日誌,有時候會有一些奇怪的記錄。 下面是一些例子:在Node.js Express日誌文件中發現奇怪的http請求
- - - [Sat, 19 Oct 2013 08:44:38 GMT] "GET http://www.google.com/ HTTP/1.0" 200 3539 "-" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)"
222.205.7.245 - - [Sat, 19 Oct 2013 19:54:57 GMT] "GET http://www.wikipedia.org/ HTTP/1.1" 200 3539 "-" "Mozilla/5.0 (compatible; MSIE 5.01; Win2000)"
223.94.178.192 - - [Sun, 20 Oct 2013 06:04:23 GMT] "GET http://www.sciencedirect.com/ HTTP/1.1" 200 3539 "-" "Mozilla/5.0 (compatible; MSIE 5.01; Win2000)"
那些由express.logger
(記錄:http://www.senchalabs.org/connect/logger.html)生成的默認格式:
default ':remote-addr - - [:date] ":method :url HTTP/:http-version" :status :res[content-length] ":referrer" ":user-agent"'
只有express.urlencoded()
使用和express.cookieParser
和express.session
在我的項目沒有啓用。
這裏是我的問題:
- 爲什麼
remote-addr
缺少登錄?在node.js + express上獲取此信息會極其困難嗎? - 似乎有人試圖使用我的網站作爲代理。他/她如何發送像
GET http://www.google.com
這樣的http請求?我應該如何阻止這些請求? - 基於服務器日誌中的這些記錄,我的Web服務器安全性足夠了嗎?我的項目中是否應該使用頭盔(github.com/evilpacket/helmet)或CSRF(www.senchalabs.org/connect/csrf.html)?
非常感謝。
嗨@robertklep,感謝您的建議。我沒有明確地實現一個通用的路由在我的服務。然而,使用'curl'命令你建議,在大多數情況下,我的服務器將簡單地返回首頁。看起來好像我的服務器沒有被入侵(還) 關於丟失的遠程地址,我猜黑客有自己的花招:) 無論如何,再次感謝。 –