Как лучше всего ограничить доступ в админку по 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://%
размещать код , поэтому я должен добавить интервал между ними.
Мультипликаторы обрабатываются путем добавления еще одной строки соответствия
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, а не эти адреса, то 403, вы ушли отсюда.
F
то L
подразумевается. httpd.apache.org/docs/2.4/rewrite/flags.html . «При использовании [F] подразумевается [L], то есть ответ возвращается немедленно, и дальнейшие правила не оцениваются».
Вы также можете установить правила «разрешить из» в конфигурации httpd для файлов виртуального хоста. Я также изменил бы URL-адрес администратора для дополнительной безопасности (хорошо, вид избыточен с "allow from", но поясом и скобками).
Внутри файла 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-адреса. Может быть альтернативой.