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

Что касается привязки MySql и Apache к localhost

Я читал статьи о защите MySql и Apache в Ubuntu, и одним из предложений было «Убедитесь, что MySQL разрешает соединения только с localhost».

Это значит делать [bind-address = 127.0.0.1]

Дело в том, могу ли я оставить его привязанным к localhost, даже когда сайт заработает?

Сайт взаимодействует с БД для получения и добавления данных. Смогут ли другие пользователи использовать этот сайт, когда они будут заходить на сайт, используя мое доменное имя? Меня это немного смущает. Как это сделать?

Когда он заработает, на что мне его заменить, чтобы он оставался безопасным и неуязвимым для атак?

Да, пока MySQL работает на хосте веб-сервера, вы должны сохранить bind-address = 127.0.0.1. Когда пользователь обращается к вашему сайту, веб-сервер, а не пользователь, вызывает MySQL для выполнения запроса. Таким образом, запрос исходит с IP-адреса веб-сервера, который равен 127.0.0.1, если он размещен вместе с MySQL. Итак, для того, чтобы ваш сайт работал, вам нужно только иметь возможность принимать соединения от localhost. С другой стороны, если вы разрешаете соединения из любого места, то любой в сети может подключиться к вашему серверу MySQL, если это разрешено вашим брандмауэром (возможно, из-за неправильной конфигурации).

Другой вариант - создать DMZ между внутренним и внешним межсетевым экраном, при этом веб-сервер находится в DMZ, а MySQL - на отдельном хосте за внутренним межсетевым экраном. Внутренний брандмауэр позволяет подключаться к MySQL только с хоста веб-сервера. Это создает дополнительный уровень межсетевого экрана между внешним сервером и вашим сервером MySQL. Тогда вам нужно будет установить bind-address чтобы разрешить соединения с веб-сервера.