Назад | Перейти на главную страницу

Блокировать IP-адреса в apache2

Хорошо, еще один вопрос о новичках. У меня есть серверный IP-адрес, который проверяет мой сервер на наличие phpmyadmin и других административных вещей, похоже, они ищут что-то, что можно взломать, но, честно говоря, мне все равно, кто они, я просто хочу их заблокировать. Как я могу заблокировать эти IP-адреса? Это в .htaccess? У меня есть все модули аутентификации в apache, и они активированы.

Лучший способ сделать это с помощью apache - использовать модуль контроля доступа. По сути, просто поместите что-то подобное в свой .htaccess

 Deny from 10.252.46.165

Более подробную информацию о нем можно найти Вот.

Однако это не обязательно лучший способ сделать это, потому что Apache все еще обрабатывает запрос. Фактически вы можете заблокировать весь входящий трафик с определенных IP-адресов, прежде чем они достигнут Apache или любых других служб. Обратной стороной этого является то, что вам необходимо иметь root-доступ к вашему серверу. Информацию об этом можно найти Вот.

Вероятно, более ориентированный на безопасность подход будет заключаться в том, что вы заблокируете всех для конфиденциальных URL-адресов (PHPMyAdmin и т. Д.) И разрешите только пару IP-адресов, чтобы вы все еще могли получить доступ к этим службам. Пример:

<Location /sensitive/url>
    Order allow,deny
    Allow from 127.0.0.1 a.b.c.d your.manager.hosts.address
    Deny from all
</Location>

Конечно, это зависит от ситуации, подходит это вам или нет.

Вы также можете комбинировать это с HTTP-аутентификацией, вероятно, этот метод более гибкий. Если вы используете Order и Require с участием

Satisfy Any

в <Location /> или <Directory /> block, то вы можете получить доступ к этому ресурсу отовсюду. В этом случае, если вы пришли с одного из IP-адресов, определенных в Allow строку, вы можете получить доступ к URL как обычно. Однако, если вы зашли с другого хоста, веб-сервер запросит имя пользователя и пароль.

Надеюсь, это помогло.

Есть ли межсетевой экран между вашим сервером и Интернетом? Это было бы лучшее место, чтобы их заблокировать. Блокирование IP-адресов от доступа к вашему серверу на сервере защитит вас от атак грубой силы, но не от DDoS-атаки, поскольку они все еще делают запросы, которые ваш сервер должен отклонять.

Если вам нужно сделать это локально, я бы сказал, сделайте это в iptables.