Сведения о вопросе

Killer

15:11, 21st August, 2020

Как запретить доступ по http к определённому адресу сайта?

Просмотров: 421   Ответов: 7

Свой сервер FreeBSD, Apache, php.

Сайт открывается как по http, так и по https. Прикручен phpMyAdmin, вот отрывок из httpd.conf

Alias /myadmin &quot;/usr/local/www/sites/phpMyAdmin/&quot;<br/>
<br/>
&lt;Directory &quot;/usr/local/www/sites/phpMyAdmin/&quot;&gt;<br/>
 Options none<br/>
 AllowOverride Limit<br/>
<br/>
Order Deny,Allow<br/>
 Deny from all<br/>
 Allow from all<br/>



Заметил, что кто-то перебирает все популярные адреса, в надежде наткнуться на phpMyAdmin
error.log:<br/>
<br/>
[error] [client 72.95.223.67] File does not exist: /usr/local/www/sites/data/phpmyadmin<br/>
[error] [client 72.95.223.67] File does not exist: /usr/local/www/sites/data/phpMyAdmin<br/>
[error] [client 72.95.223.67] File does not exist: /usr/local/www/sites/data/db<br/>
[error] [client 72.95.223.67] File does not exist: /usr/local/www/sites/data/web<br/>
[error] [client 72.95.223.67] File does not exist: /usr/local/www/sites/data/PMA<br/>
[error] [client 72.95.223.67] File does not exist: /usr/local/www/sites/data/admin<br/>
[error] [client 72.95.223.67] File does not exist: /usr/local/www/sites/data/mysql<br/>



И в результате он всё-таки натыкается на нужный адрес. Как наиболее просто (я пока новичёк в этих делах) обезопасить себя от таких переборов или хотя бы сделать их безуспешными?

Есть идея закрыть доступ по http к адресу mysite.ru/myadmin, что бы открывался только по https (без перенаправлений), но как это сделать тоже пока не знаю.

Как поступить посоветуете?

Заранее благодарю.



  Сведения об ответе

Chhiki

00:09, 6th August, 2020

вот тут подробнее если что


  Сведения об ответе

ЯЯ__4

00:33, 24th August, 2020

Если нужно вынести myadmin только на https, я бы предпочел разделить http и https на разные виртуальные хосты.
Будет выглядеть примерно так:

<VirtualHost *:80>



<VirtualHost *:443>
Alias /myadmin "/usr/local/www/sites/phpMyAdmin/"
SSLEngine on
SSLCertificateFile /path/to/certificate

<Directory "/usr/local/www/sites/phpMyAdmin/">




Файл конфигурации лежит в /usr/local/etc/apache22/extra и называется как-то типа httpd-vhosts.conf, но предварительно его нужно раскоментировать в основном config файле apache.


  Сведения об ответе

FAriza

04:40, 29th August, 2020

Переборы останутся всегда, как и паролей к SSH.

Как самый простой вариант — поменять имя папки где находится phpmyadmin, или положить всё важное в подпапку, например:
site/xxsecret/phpmyadmin/

Как второй вариант — .htaccess — с указанием своих IP:
Order Allow,Deny
Deny From All
Allow From 127.0.0.1 127.0.0.2


  Сведения об ответе

+-*/

20:51, 29th August, 2020

в deny from этот адрес и вписать. не?


  Сведения об ответе

appple

03:19, 20th August, 2020

fail2ban


  Сведения об ответе

baggs

07:56, 24th August, 2020

Переборы чаще всего ведут боты с довольно ограниченной базой логинов-паролей. Чаще всего можно обойтись хорошей связкой логин-пароль.
Насчёт переноса phpmyadmin, проще сделать второй хост (конфиг апача) для https соединений. И соответсвенно для http: deby from all для папки с phpmyadmin, для второго конфига: allow from all


  Сведения об ответе

pumpa

07:32, 1st August, 2020

Можно сделать папку phpmyadmin и повесить на неё htaccess с длииинным паролем.
а сам пхпмуадмин положить куда-нибудь поглубже
А потом читать логи и радоваться жизни.


Ответить на вопрос

Чтобы ответить на вопрос вам нужно войти в систему или зарегистрироваться