วิธีที่ดีที่สุดในการ จำกัด การเข้าถึงพื้นที่การดูแลด้วย IP ใน Magento คืออะไร? โปรดทราบว่าผู้ดูแลระบบสามารถทำงานได้ทั้งจาก/admin
หรือindex.php/admin
วิธีที่ดีที่สุดในการ จำกัด การเข้าถึงพื้นที่การดูแลด้วย IP ใน Magento คืออะไร? โปรดทราบว่าผู้ดูแลระบบสามารถทำงานได้ทั้งจาก/admin
หรือindex.php/admin
คำตอบ:
คุณสามารถวางรหัสต่อไปนี้ลงใน.htaccess
ไฟล์ของคุณ: -
RewriteCond %{REQUEST_URI} ^/(index.php/)?admin/ [NC]
RewriteCond %{REMOTE_ADDR} !^1\.1\.1\.1
RewriteRule ^(.*)$ http://%{HTTP_HOST}/ [R=302,L]
ที่อยู่1.1.1.1
IP ของคุณอยู่ที่ไหน
* สำหรับบรรทัดสุดท้ายตรวจสอบให้แน่ใจว่ามีระยะห่างระหว่างไม่มีและhttp://
%{HTTP_HOST}/
StackExchange ไม่อนุญาตให้http://%
โพสต์รหัสดังนั้นฉันต้องเพิ่มระยะห่างระหว่างกัน
ในกรณีที่ทุกคนใช้ Nginx:
location ~* ^/(index\.php/bcknd|bcknd) {
allow 1.1.1.1;
try_files $uri $uri/ /index.php?$args;
location ~* \.php$ { try_files /dummy @proxy; }
deny all;
}
หลายรายการได้รับการจัดการโดยการเพิ่มสายการแข่งขันอื่น
RewriteCond %{REQUEST_URI} ^/(index.php/)?admin(.*) [NC]
RewriteCond %{REMOTE_ADDR} !^10\.1\.1\.10
RewriteCond %{REMOTE_ADDR} !^10\.2\.1\.10
RewriteRule .* - [F,L]
โดยทั่วไปจะแปลว่าหาก url regex นี้ไม่ใช่ที่อยู่เหล่านี้ดังนั้น 403 คุณจะออกจากที่นี่
F
ก็L
จะบอกเป็นนัย httpd.apache.org/docs/2.4/rewrite/flags.html "เมื่อใช้ [F] หมายถึง [L] - ซึ่งก็คือการตอบสนองจะถูกส่งกลับทันทีและจะไม่มีการประเมินกฎใด ๆ เพิ่มเติม"
นอกจากนี้คุณยังสามารถตั้งค่ากฎ "อนุญาตจาก" ใน httpd config สำหรับไฟล์โฮสต์เสมือน ฉันจะเปลี่ยน URL ผู้ดูแลระบบเพื่อความปลอดภัยเพิ่มเติม (ตกลงซ้ำซ้อนกับ "อนุญาตจาก" แต่เข็มขัดและวงเล็บปีกกา)
ภายในไฟล์ conf ฉันทำอะไรแบบนี้:
<Location /index.php/mynewadminname>
Order deny,allow
deny from all
#home
allow from 1.2.3.4
#office
allow from 5.6.7.8
</Location>
<Location /mynewadminname>
Order deny,allow
deny from all
#home
allow from 1.2.3.4
#office
allow from 5.6.7.8
</Location>
โดยที่ 1.2.3.4 และ 5.6.7.8 เป็นที่อยู่ IP ที่อนุญาตสองแห่ง อาจเป็นทางเลือก
RewriteCond %{REMOTE_ADDR} !^10\.125\.192\.50
RewriteCond %{REMOTE_ADDR} !^10\.125\.192\.50
RewriteCond %{REQUEST_URI} admin [NC]
RewriteRule ^(.*)$ / [F,L]