过期域名预定抢注

 找回密碼
 免费注册

Blog作者如何阻止惡意鏈接 轉

[複製鏈接]
發表於 2009-1-10 10:08:13 | 顯示全部樓層 |閱讀模式
禁止惡意評論者看起來是非常嚴厲的行為,但在禁止惡意評論者灌水的同時扔允許評論發表的方法也是有的。
2 b7 {5 i! X. z; n) R$ O! D
- `$ _4 {- V* `2 E大多數的惡意評論發佈者使用隨機IP地址。封掉他們的IP地址在一定程度上能阻止惡意鏈接,但同時也使得封掉合法用戶的幾率上升了。% _3 z0 Z0 ]$ N
封惡意評論者的IP
$ o* i0 }# ?6 g) [
- r/ }7 x$ I6 c: I0 J當評論發送至你的Blog時,IP地址就會包括在數據包中並隨著該評論發佈到因特網上。你可以把IP地址看作是電話號碼,而WordPress評論審核管理就像是來電顯示,你可以知道評論來自何處。
9 H( k7 r3 d4 ?  [$ u( P; L
; D, D, Q7 b# O惡意評論者的IP劫持手段早已惡名昭彰了,因此附帶惡意鏈接的IP地址實際上是從某個合法的因特網連接設備上竊取的。' Y- D: {: l2 d% A: u) C, f
; z& u& C/ p5 _& w# k
如果你仔細觀察IP地址,你會注意到數字上僅存微小差異。如:
3 X, [9 q% T7 C: q+ `4 g$ Q3 F192.168.0.17 v2 F6 K3 V% Y- w
192.168.0.2" v6 M3 Y) w1 q( x: M: x- s. F
192.168.0.32 m) h' j1 x+ E0 A- `5 e

0 |! A# F- ?9 ~1 w以及其他相繼的或相似的數字排序。你可以通過制定1段或多段IP數字來向惡意評論語列表添加更簡單的IP地址,如192.168 -- 這樣任何以192.168開頭的IP地址將被看作惡意IP。這樣一來你就不用勞神輸入這麼多段數字了。請注意通配符IP數字的使用範圍,因為比如你只使用192.的話,就會將合法IP地址也拒之門外。9 Q) `' h! h2 I
1 i1 S% H. E  l& L- C3 m0 ^0 v
.htaccess文件 - 它也能控制永久鏈接 - 可被用來某個IP地址完全阻止住,甚至無法在你網站上看到它。你可以將它放入網站root或Blog所在目錄之下。
# D. f/ `8 U( H! V/ h' u# K# F# `$ T9 x1 A  k/ n
以下為.htaccess文件位於網站root目錄下的例子。1 ~8 _8 X2 L) w
order allow,deny
* t% z2 p- ]# M: I: r) ~deny from 123.123.123.123, C7 f2 }9 S. P
deny from 456.456.456.*; v: a' C- Z- [5 }& o' f1 W
deny from 789.789.*.*
6 [9 l* h  l/ S" ^# z3 u3 S( C, Tallow from all. _( _1 r: f* |; G( {
禁止123.123.123.123  
) k5 e( P# \' q0 @僅禁止該IP
- o! {; A9 g& i! n2 W4 K禁止456.456.456.*  $ @3 l8 S8 m0 s3 N
禁止所有以456.456.456開頭的IP地址用戶0 f" y# B' z( {$ y4 X5 D+ x0 E9 s8 t
禁止789.789.*.*  8 |" x8 r, u2 U3 q9 W$ N
禁止所有以789.789開頭的IP地址用戶。, x# z% ?- n& O; \

; B2 @0 r! B9 ]! H因此能夠阻止256*256個IP地址
( y7 y5 u( ]0 O$ W4 r: B. j% X5 h+ ^9 `2 J
如果你開始阻止IP地址,被阻止的訪問者就能看到一個403錯誤頁面。請確保在該頁面上留下你的詳細聯繫方式。你可以詢問托管商定制403頁面內容的方法(也可以看後文)。
! e6 g7 w& j8 }& r6 k$ L2 V7 K: F
如果你使用*通配符來阻止IP地址的話,至少留下你的聯繫方式,以防「錯斬賢臣」。+ O! y0 E8 r1 Q1 ~$ ?

0 G/ W2 r$ j. Y如果你想確認確實能夠進行IP阻止的話,可以拿朋友的IP地址來做實驗,不過你得先告訴他們你正在做測試。
' F) C7 e3 W) X* x# t& c5 O禁止No Referrer請求 - O% V! V9 K$ J1 u( l& k9 r: U

0 }8 a" _9 x6 [+ p9 H  Z2 p; Z當訪客進行評論時,wp-comments-post.php文件就會被訪問,完成其工作並創建日誌。用戶的瀏覽器則會發送一個有關於此的"referral"行。$ s8 C& @7 e9 g2 Q. R% X" A9 s0 f  b. V

/ \7 f) u9 |3 C) z( @0 L/ [當spam-bot進入時,它會直接點擊文件且不會留下一個referrer。這允許直接來自服務器的某些巧妙檢測和動作。如果你對Apache指令不太熟悉的話,可以在根目錄.htaccess 文件中寫入如下內容::5 {/ r0 k- ~; q5 v1 t: [
RewriteEngine On
0 P1 D$ b) _, fRewriteCond %{REQUEST_METHOD} POST
! _6 k( O- C0 J# U! Z) nRewriteCond %{REQUEST_URI} .wp-comments-post\.php*
# N/ M# Z7 M- lRewriteCond %{HTTP_REFERER} !.*yourdomain.com.* [OR]& a  I) X: K& }, k) \
RewriteCond %{HTTP_USER_AGENT} ^$
( a9 L/ k8 B6 ]RewriteRule (.*) ^http://%{REMOTE_ADDR}/$ [R=301,L]8 X, p3 k& }) h

* E2 A% W: I9 J( q4 c( U這將:
  C, k9 S  _! {' |  l% w3 }# J檢測日誌創建時間
% A# S7 I9 M1 D- Z$ G1 X, a檢測日誌是否在wp-comments-post.php上- J8 t- S* i+ [& C" W+ `/ ?7 p
檢查referrer是否在你的domain中或是不存在referrer
$ V5 {2 g0 [# \2 z/ {& z將spam-bot 送回生成它的服務器IP地址處。2 P9 o6 t8 g" |. f0 R8 @, @5 X
注1: 在第四行中,將yourdomain.com修改為domain.xxx,不要帶上www或其他前綴。
/ I2 i! u5 A( D: X+ J% W" ?注2: 某些用戶的瀏覽器可能無法發送referral,但這是非常罕見的。
+ _9 Z, J' Z8 H6 A! O/ t/ H  m# ]: z6 N1 J  ?( l
將spam-bot偏返是有必要的。* J; _# o* r' {5 P, e+ W$ p% L( g

. c" m' Y" p/ d$ y% n$ v技巧:如果你希望這樣而且也知道根目錄的路徑,可以如此:! z" o9 c/ ~! @2 o9 G
RewriteEngine On
9 z  L0 D; X( ]: W& R& zRewriteLog /absolute/path/to/your/wwwroot/public_html/rewrite_log.txt
5 w6 ^: O, H6 k3 S7 a3 o! SRewriteLogLevel 2+ t" U' _2 {5 f8 X' F  Y8 `- t! i

( L( I) l( b  {1 O當激活了RewriteRule,你就會在rewrite_log.txt中得到類似如下的內容:
' V& L* B( m* z9 Y6 H65.197.28.xxx- - [06/Feb/2005:10:59:34 --0500] [yourdomain.com/sid#80054890][rid#804b6a50/initial] (2)
2 C/ L* _) q; }5 M8 xinit rewrite engine with requested uri /wp-comments-post.php9 n- f' ~$ Y6 P/ x' D3 u
65.197.28.xxx- - [06/Feb/2005:10:59:34 --0500] [yourdomain.com/sid#80054890][rid#804b6a50/initial] (2)
% B1 b+ N0 O& M' g2 \rewrite /press/wp-comments-post.php -> http://65.197.28.xxx/
$ o9 c. I5 o2 Z( N+ O$ y% l5 B65.197.28.xxx- - [06/Feb/2005:10:59:34 --0500] [yourdomain.com/sid#80054890][rid#804b6a50/initial] (2) . T  _/ U5 e, |7 A0 X
explicitly forcing redirect with http://65.197.28.170/
1 s% r1 }8 c# E( q5 H65.197.28.xxx- - [06/Feb/2005:10:59:34 --0500] [yourdomain.com/sid#80054890][rid#804b6a50/initial] (1) ) c  `  W6 M. F
escaping http://65.197.28.xxx/ for redirect  N, [  o4 P  ~) k) [, |
65.197.28.xxx- - [06/Feb/2005:10:59:34 --0500] [yourdomain.com/sid#80054890][rid#804b6a50/initial] (1) $ |  t2 u; L$ _0 H# W
redirect to http://65.197.28.xxx/ [REDIRECT/301]
( G2 _" E' l6 P/ Y# u* S3 q0 t取自真實的日誌+ |1 Z( c8 k8 v, D

6 B/ X- @+ v: U7 f註:阻止IP地址很簡單,對利用受感染的機器來散佈惡意鏈接卻束手無策,原因有二:1. 機器原主人仍訪問該機器,通常是無辜的不應被阻止的用戶。2. 此類機器的數量之大並不是按IP地址進行阻止就能應付得了的。
您需要登錄後才可以回帖 登錄 | 免费注册

本版積分規則

4um點基跨境網編創業社區

GMT+8, 2024-11-24 05:56

By DZ X3.5

小黑屋

快速回復 返回頂部 返回列表