2013-10-23 77 views
0

我想禁止IP用戶,如果他沒有在我的網站上登錄5次/ IP黑名單中刪除。我如何在Java中獲得某人的IP,然後從我的網站上禁止它?如何禁令失敗的登錄嘗試

目前,我登錄的servlet看起來是這樣的。我知道計數系統應該以不同的方式實施,我將在稍後進行處理。現在,我只想測試IP禁令。

if(user.isValid()) 
      { 
       HttpSession session = request.getSession(true); 
       session.setAttribute("currentSessionUser",user); 

       response.sendRedirect("Unit_Info.jsp"); 
      }else{ 
       x=x+1; 
       System.out.println("Failed Login " + x + "\n"); 

       if(x==5) 
        response.sendRedirect("http://google.com"); //IP BAN HIM 
       else 
        response.sendRedirect("index.jsp"); 
      } 

編輯:現在,我想它更多的,如果有人使用代理和嘗試的用戶名/密碼時不斷變化的IP地址會發生什麼。是否有一個可靠的方法來禁止這個人,無論他是否使用代理?

+0

對於代理(如果它不是完全匿名)http://en.wikipedia.org/wiki/X-Forwarded-For – lummycoder

回答

1

你可以使用的fail2ban來實現相同的。這裏是resource。否則,你可以在其中規定,一旦越過嘗試參數的數量的分貝一點。您可以將這些IP地址放入服務器的阻止列表中。

+0

是的,目前在我的數據庫中我有一個帳戶表,一個失敗的嘗試表和一個禁止IP表。會有什麼我需要這個登錄過程? – krikara

+1

這對於這個過程來說已經足夠了。你可以通過使用相同的資源來實現它。但我告訴你,封鎖應該是暫時的。如果您永久阻止它,主要用戶可能會受到影響。 –

+0

什麼是一個臨時禁令一個好的制度?我認爲,在主要用戶被禁止的情況下,他們可以調用db管理員來取消他們的權限。 – krikara

相關問題