Когда я ввожу адресную строку ns1.mydomain.com (мой сервер имен), она обслуживает домашнюю страницу Apache по умолчанию. или, другими словами, он ответил на HTTP-запрос. Это нормально? Если нет, то как я могу этому помешать?
Даже если ты делать хотите запустить веб-сервер в том же окне, вы можете перенастроить Apache для обслуживания контента только для настроен имена хостов. Конечно, это просто заменит страницу по умолчанию с ошибкой http (потому что имя хоста передается только после соединение уже установлено), но может быть чище и слегка лучше защищены от атак / эксплойтов веб-сервера.
Нет, это ненормально - это демонстрирует, что системный администратор не нашел времени для правильной настройки системы - и, учитывая последствия для безопасности плохо настроенного HTTP-сервера или DNS-сервера, это действительно плохие новости для всех нас (но хорошие новости для любой, кто ищет систему для злоупотребления).
Как вы «мешаете» этому - научиться правильно настраивать сервер и применять эти знания, но ответ на этот вопрос выходит далеко за рамки статьи.
Это нормально в самых разных конфигурациях. Например, насколько я помню, RedHat по умолчанию устанавливает apache. Debian и Ubuntu по умолчанию не устанавливают apache.
Некоторые варианты изменения этого:
Предполагая, что вы хотите, чтобы apache работал на вашем сервере, и у вас есть несколько IP-адресов на сервере, отредактируйте конфигурацию apache, чтобы прослушивать только желаемые IP-адреса. Вероятно, сейчас он прослушивает 0.0.0.0 (все IP-адреса).
Если вам не нужен apache, удалите его.
Предполагая, что вам действительно нужен apache, и у вас есть только 1 IP-адрес на сервере, люди всегда смогут использовать этот IP-адрес на порту 80, поэтому вам нужно будет сделать, как предложил Хаген выше, и перенастроить apache только для содержимого сервера для настроенных имен хостов.