Block IP เข้าเว็บ เซิร์ฟเวอร์ เป็นข่วง ด้วย .htaccess บล๊อคช่วงไอที เข้าโจมตีเว็บ

ตอบกระทู้

รูปแสดงอารมณ์
:icon_plusone: :like: :plusone: :gfb: :-D :) :( :-o 8O :? 8) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: :angry: :baa: :biggrin:
รูปแสดงอารมณ์อื่นๆ

BBCode เปิด
[img] เปิด
[url] เปิด
[Smile icon] เปิด

กระทู้แนะนำ
   

มุมมองที่ขยายได้ กระทู้แนะนำ: Block IP เข้าเว็บ เซิร์ฟเวอร์ เป็นข่วง ด้วย .htaccess บล๊อคช่วงไอที เข้าโจมตีเว็บ

Re: Block IP เข้าเว็บ เซิร์ฟเวอร์ เป็นข่วง ด้วย .htaccess

โดย mindphp » 09/04/2020 6:29 pm

ตัวอย่างการ block เป็น ช่วง

โค้ด: เลือกทั้งหมด

<Limit GET HEAD POST>
order allow,deny
deny from 171.97.48.177
deny from 34.217.30.46
deny from 54.186.238.225
deny from 162.158.165.0/24
deny from 162.158.166.0/24
deny from 162.158.167.0/24
deny from 172.69.134.0/24
deny from 172.69.135.0/24
deny from 172.68.146.0/24
deny from 141.101.69.0/24
Deny from 172.69.0.0/16
Deny from 162.158.0.0/16
Deny from 108.162.0.0/16
Allow from all
</Limit>
IP ที่โชว์นี้ โจมตีจริง
ถ้า ต้องการ block ทั้งชุด สามชุด ก็ใช้
***.0.0.0/8 (แต่ไม่ค่อยมี คนที่สามารถหาไอทีช่วง กว้างขนาดนั้นมาโจมตีกันได้)
ตัวอย่างนี้ใช้ได้ทั้ง FreeBSD แต่ถ้าใครจะลงเป็น firewall ไว้ แนะนำ ipfw set ยากหน่อยแต่ชัวร์

Re: Block IP เข้าเว็บ เซิร์ฟเวอร์ เป็นข่วง ด้วย .htaccess

โดย mindphp » 08/12/2019 11:17 am

สำหรับ .htaccess ของ apache 2.3 สำหรับใช้ อนุญาติ แค่บาง ไอพี

โค้ด: เลือกทั้งหมด

<Limit GET HEAD POST>
order deny,allow
allow from 66.249.71.0/24
deny from all
</Limit>

Re: Block IP เข้าเว็บ เซิร์ฟเวอร์ เป็นข่วง ด้วย .htaccess

โดย mindphp » 07/12/2019 3:37 pm

สำหรับ การ block bot แนะนำให้ใช้วิธีแรก แบบช่วงจะทำงานได้ดีกว่า แบบที่สอง

Block IP เข้าเว็บ เซิร์ฟเวอร์ เป็นข่วง ด้วย .htaccess บล๊อคช่วงไอที เข้าโจมตีเว็บ

โดย mindphp » 07/12/2019 2:12 pm

สำหรับคนที่ยังไม่รู้จัก .htaccess อ่านได้ตามนี้ กระทู้นี้มาแนะนำ การป้องกันไม่ให้ ip ไม่พึงประสงค์เข้า มาที่เว็บไซต์เรา เช่น IP ของ Hacker หรือ IP ของ spam bot ต่างๆ รวมถึง ip ของ bot ของเก็บข้อมูลต่างๆ สามารถใช้ได้ โดยเปลี่ยน IP ที่แนะนำ นี้เป็น IP ที่ท่านต้องการ block หรือช่วง ip ที่ท่านต้องการ block
ซึ่งทำได้ สองแบบ คือ ใช้ Rewrite และ ใช้ rule ป้องกัน
ตัวอย่างแรก แบบ mod Rewrite
#Block แบบ IP เดี่ยว 192.168.169.111

โค้ด: เลือกทั้งหมด

RewriteEngine on
RewriteCond %{Remote_Addr} ^192\.168\.169\.111$
RewriteRule ^(.*) http://localhost/ [R,L]
##Block แบบ IP เป็นช่วง จาก 192.168.1.0 ถึง 192.168.1.255

โค้ด: เลือกทั้งหมด

RewriteEngine on
RewriteCond %{Remote_Addr} ^192\.168\.1
RewriteRule ^(.*) http://localhost/ [R,L]

วิธีที่สอง ใช้ Allow,Deny
##Block แบบ IP เป็นช่วง จาก 192.168.1.0 ถึง 192.168.1.255

โค้ด: เลือกทั้งหมด

Order Allow,Deny
Deny from 192.168.1.0/24
Allow from all
สามารถ ศึกษาเพิ่มเติม การใช้ .htaccess แบบต่างๆ ได้ที่นี่
https://www.mindphp.com/%E0%B8%9A%E0%B8 ... ot-li.html
สำหรับโปรแกรมเช็ค IP ดูได้ที่นี่ https://www.mindphp.com/tools/checkip/index.php

สำหรับคนที่ใช้ CMS อย่างเช่น Joomla, Wordpress หรือ cms ตัวอื่นๆ แนะให้สร้างไฟล์ 403.shtml ไว้เพื่อป้องกันไม่ให้ CMS เหล่านั้นกลบมาทำงาน 403 แบบของ cms เองอีกเพราะจะทำให้ Server ทำงานหนักทั้งๆ ที่เรา block ip ไว้แล้ว

ข้างบน