Создание собственного домена в моей сети Wi-Fi с помощью компьютера под управлением Windows и Apache

547
Jinendra Khobare

У меня есть роутер и ноутбук. На моем ноутбуке я установил WAMP, который включает в себя Apache. Я настроил Apache для предоставления доступа через интранет. Используя IP-адрес, я могу получить доступ к серверу с любого другого ПК / мобильного устройства в моей внутренней сети. Я не хочу использовать IP-адрес, но какое-то легко запоминающееся имя, например http: //free.goodies, открывает веб-страницу, которую я создал.

ПРИМЕЧАНИЕ. Маршрутизатор WiFi не будет иметь доступа к Интернету, это будет чисто внутренняя сеть, а на ноутбуке установлена ​​операционная система Windows.

Можно ли это сделать, и если да, то как это сделать?

0
Если это просто машина Windows, добавьте соответствующую строку в файл hosts. Если требуется доступ ко всей локальной сети, вы можете изменить / настроить разрешение DNS в маршрутизаторе - если / как это будет сделано, будет зависеть от маршрутизатора. davidgo 7 лет назад 0

1 ответ на вопрос

0
Anaksunaman

Я не хочу использовать IP-адрес, но какое-то легко запоминающееся имя, например http: //free.goodies, открывает веб-страницу, которую я создал.

Это можно сделать, разместив свой собственный DNS-сервер.

Имейте в виду, что хотя любой компьютер, который вы решите использовать в качестве DNS-сервера, можно использовать для других целей, его необходимо будет включить с соответствующей службой, чтобы разрешить пользовательские доменные имена.


Примечание. Описанные ниже шаги относятся к Windows 7, но Windows 10 должен быть практически идентичным процессом. Кроме того, хотя эти шаги могут показаться немного утомительными, если вы правильно настроили BIND, вам редко придется возиться с ним.


Установка BIND

Сначала вам нужно будет загрузить программное обеспечение DNS-сервера. Мы будем использовать последнюю стабильную копию ISC BIND . На момент написания статьи это версия 9.10.6 (следует избегать любых нестабильных или ранних версий развертывания ).

  • Нажмите на знак +, чтобы развернуть параметры ISC BIND.

  • Нажмите «Скачать».

  • При появлении запроса в диалоговом окне выберите 32-разрядную или 64-разрядную версию (синяя кнопка / строка является ссылкой).

По завершении загрузки извлеките ZIP-файл и найдите файл с именем BINDInstall.exe . Вы должны «Запустить эту программу от имени администратора» ( Свойства → Совместимость ), поскольку для установки службы «ISC BIND» необходимы повышенные привилегии.

  • Установите «Целевой каталог» (где вы хотите установить BIND). Это может быть любой каталог, который вам нравится.

  • Установите учетную запись службы как «NT AUTHORITY \ LocalService» (без кавычек). Не используйте "named" в качестве учетной записи службы.

  • Оставьте поля пароля пустыми.

  • Убедитесь, что «Автоматический запуск» установлен. Это обеспечит запуск BIND при запуске сервера.

  • «Сохранить файлы конфигурации после удаления» может быть проверен автоматически. Это отлично. Два оставшихся поля должны быть сняты («Только инструменты» и «Начать привязку после установки»).

  • Нажмите «Установить». Это должно зарегистрировать службу «ISC BIND» в Windows и создать два новых каталога («bin» и «etc») в «Target Directory».

BIND 9 Installation Example

Обратите внимание, что если вы использовали прямую / косую черту (т. Е. NT AUTHORITY / LocalService) вместо правильной обратной косой черты \ (т. Е. NT AUTHORITY \ LocalService), BINDInstall выдаст ошибку, указав, что поля пароля не могут быть пустыми. Вы должны использовать обратную косую черту.

Если после первого нажатия кнопки «Установить» вам будет предложено установить распространяемые файлы Visual C ++, вам следует это сделать. Однако, если установщик распространяемых файлов Visual C ++ говорит «Восстановить», а не «Установить», у вас уже есть нужные файлы и вы можете нажать «Отмена».

После установки необходимо дважды проверить, что служба «ISC BIND» была успешно создана в меню «Пуск» → «Администрирование» → «Службы» (поочередно меню «Пуск» → «Поиск / Выполнить» → «services.msc» ).

Если служба не была успешно установлена ​​(«ISC BIND» не отображается в окне «Службы»), перезапустите BINDInstall.exe и выберите «Удалить». Вам не нужно изменять какие-либо значения при удалении.

Повторите шаги установки, описанные выше (начиная с первого пункта «Целевой каталог»), пока служба не зарегистрируется успешно.

BIND 9 Service Installation Success Example


Настройка BIND

Вы не должны пытаться запустить BIND еще, так как у нас есть немного конфигурации, чтобы сделать.

В вашем каталоге установки (например, C: \ ISC BIND 9) у вас должно быть две папки, как упомянуто ранее («bin» и «etc»). В этом же каталоге вручную создайте третью папку, называемую «зоны».

Когда закончите, войдите в папку «bin». Из командной строки в той же папке ( Shift + щелчок правой кнопкой мыши → открыть окно командной строки здесь ) выполните следующие две команды:

rndc-confgen -a rndc-confgen > ..\etc\rndc.conf 

RNDC Confgen Example

Возвращаясь к папке «etc», должны появиться два новых файла - «rndc.key» и «rndc.conf». Пропустив их на мгновение, создайте новый файл с именем «named.conf» в «etc», например, следующим образом:

ех. C: \ ISC BIND 9 \ etc \ named.conf

# Anything with a hash (#) is a comment.  # Our basic options -- where do we find our zone files? # This should be changed to correspond with the path to # your zones folder.  options { directory "C:\ISC BIND 9\zones"; allow-transfer { none; };  # Tack down the edges a little regarding security.  # allow-recursion ; // change IPs as required  allow-recursion {"localnets";};  # The option below sets up DNS forwarding to outside servers. # In this case, we route through BIND which then passes certain  # requests to Google DNS. This is unnecessary for intranets.   # forwarders { 8.8.8.8; 8.8.4.4; };  };  # Local domains  zone "free.goodies" IN { type master; file "free.goodies.txt"; allow-transfer { none; }; }; 

Примечание: для раздела выше, вы можете просто скопировать и вставить. Но убедитесь, что вы указали правильный путь к «зонам», как указано выше.

Сохраняя "named.conf" открытым, теперь также откройте "rndc.conf". Скопируйте весь закомментированный (#) раздел внизу файла и вставьте его в конец файла named.conf. Убедитесь, что вы раскомментировали все, что вы только что вставили в named.conf, кроме # End of named.conf.

ех. C: \ ISC BIND 9 \ etc \ named.conf (продолжение)

# This section needs the correct "secret". You will have to substitute  # the proper rndc.conf section you generated earlier.  # Use with the following in named.conf, adjusting the allow list as needed: key "rndc-key" { algorithm hmac-md5; secret "2diZ8TosQlmJc15Nw3+ISh=="; };  controls { inet 127.0.0.1 port 953 allow { 127.0.0.1; } keys { "rndc-key"; }; };  # End of named.conf 

Создать локальный домен

Теперь, когда у нас есть базовая конфигурация BIND ("named.conf"), мы можем создать запись, подробно описывающую связь между "free.goodies" и самим сервером WAMP.

В папке «zone» создайте новый файл с именем «free.goodies.txt» (или любой другой файл, который вы положили в файл «named.conf») и сделайте так, чтобы он выглядел следующим образом:

; Enables use of e.g. http://free.goodies/ ; Anything with a semi-colon is a comment  $TTL 3600 ; Default TTL @ IN SOA ns.free.goodies. candyman.free.goodies. ( 2017081001 ; serial 10800 ; Refresh period 3600 ; Retry interval 604800 ; Expire time 86400 ) ; Negative caching TTL  @ NS ns.free.goodies.  ns IN A 10.0.0.10 ; This entry is necessary - Use the IP of the BIND server  free.goodies. IN A 10.0.0.10 ; A Record for the WAMP server - we're assuming its on the same server as BIND cool IN A 10.0.0.10 ; A Record for a subdomain on the same machine e.g. cool.free.goodies 

Примечание: для раздела выше, вы можете просто скопировать и вставить снова, если хотите. Но не забудьте указать правильные IP-адреса.

Если вы когда-нибудь захотите внести изменения в этот файл, помните ...

  • не входящие в субдомен записи требуют завершающего периода "."
  • Вам необходимо обновить серийный номер (увеличить его, например, увеличить на 1).
  • Например, candyman.free.goodies может быть любым, что вы пожелаете (это адрес электронной почты с "." Для "@").
  • Ваша запись для основного домена, например, free.goodies.должна соответствовать записи зоны "named.conf", например zone "free.goodies" IN {.
  • Вы должны перезагрузить свой сервер, чтобы увидеть любые изменения (это также относится к изменениям в named.conf)

Начиная BIND

Теперь вы можете запустить BIND в окне «Службы». Найдите службу «ISC BIND» в меню «Пуск» → «Администрирование» → «Службы» (или, опять же, меню «Пуск» → «Поиск / Выполнить» → services.msc ) и нажмите «Пуск».

Если ошибок нет, служба BIND должна запуститься. Если он не запускается, в вашем файле конфигурации ("named.conf") или файле локальной доменной зоны ("free.goodies.txt") произошла ошибка.

BIND 9 Service Example

Брандмауэр сервера

Для доступа к сети убедитесь, что порты 53 и 953 (как TCP, так и UDP) открыты на брандмауэре DNS-сервера для входящего и исходящего трафика. Это стандартные DNS-порты.

Настройка вашего роутера

Последний шаг в процессе настройки вашего пользовательского домена - это настройка маршрутизатора. Конкретные шаги могут отличаться от маршрутизатора к маршрутизатору, но вы хотите найти настройки, которые позволят вам указать, какие DNS-серверы будут использовать ваш маршрутизатор.

Если вы хотите, чтобы этот сервер был общедоступным, вы должны убедиться, что маршрутизатор правильно перенаправляет порты 53 и 953.

BIND Router Settings


Успех! (Может быть)

После запуска службы ISC BIND и правильной настройки маршрутизатора вы сможете перейти, например, к http: //free.goodies/ в своем браузере и получить страницу сервера WAMP.

Если ты не можешь ...

  • Дважды проверьте настройки маршрутизатора.

  • Дважды проверьте файл зоны «named.conf» и, например, «free.goodies.txt».

  • Убедитесь, что ваш сервер WAMP настроен правильно (т . Е. Он настроен на обработку http: //free.goodies/ и что нет проблем с брандмауэром на сервере WAMP или BIND).

  • В браузерах на основе Chrome (Chrome, Firefox, Opera и т. Д.) Обязательно используйте «/» в конце адреса вашего локального домена. Из-за встроенных функций, http://free.goodiesскорее всего, приведет к ошибке, где, как http://free.goodies/не будет.

  • Дважды проверьте, что BIND работает. BIND также может (в крайне редких случаях) перестать отвечать на запросы. В любом случае вы можете использовать окно «Службы», чтобы остановить и запустить BIND по мере необходимости.

Обратите внимание, что, поскольку вы (вероятно) включили управление RNDC в своей конфигурации (по крайней мере, если вы выполнили все шаги), вы можете использовать, например:

@echo off "C:\ISC BIND 9\bin\rndc" reload pause  

в пакетном файле ( .bat), чтобы быстро перезагрузить сервер во время его работы. Это намного проще, чем останавливать и запускать BIND через окно «Службы», если вам нужно внести изменения в конфигурацию «named.conf» или файла вашей зоны.


Настройка виртуального хоста в WAMP

Согласно этой статье, это шаг, который вам необходимо выполнить для настройки виртуального хоста в WAMP для обработки free.goodies:

  1. Откройте httpd.conf под C:\wamp\bin\Apache#.#.#\conf\httpd.conf. Вы можете сделать копию этого для резервного копирования, прежде чем вносить какие-либо изменения.

  2. Раскомментируйте следующие строки (уберите # перед ними):

    LoadModule vhost_alias_module modules/mod_vhost_alias.so 

    а также

    Include conf/extra/httpd-vhosts.conf 
  3. Сохраните httpd.conf .

  4. Теперь откройте httpd-vhosts.conf под C:\wamp\bin\Apache#.#.#\conf\httpd.conf\extra. Опять же, вы можете сделать копию этого для резервного копирования, прежде чем вносить какие-либо изменения.

  5. В конце httpd-vhosts.conf добавьте следующее:

     # Virtual host entry for the free.goodies local domain. # Anything beginning with a # are comments.  <VirtualHost *:80>  ServerName free.goodies #ServerAlias www.free.goodies  # DocumentRoot should correspond to wherever the HTML files # for your free.goodies site are located. This is an example.  DocumentRoot "C:/wamp/www/free-goodies"  #ErrorLog "logs/free.goodies-error.log" #CustomLog "logs/free.goodies-access.log" common  # If you have any problems with "Forbidden", try uncommenting # the following. You may have to alter the directory to match # your DocumentRoot above.  #<Directory "/"> #AllowOverride None #Options None #Require all granted #</Directory>  </VirtualHost>  
  6. Сохраните httpd-vhosts.conf . Вы можете скопировать и вставить вышеизложенное непосредственно в httpd-vhosts.conf, но не забудьте указать правильные пути для вашей установки WAMP.

  7. Перезапустите все службы. Предполагая, что с вашими изменениями все в порядке, WAMP должен нормально перезапуститься и обслуживать любые запросы на http: //free.goodies из соответствующего каталога.

Привязка ISC не принимает пустые поля пароля. Jinendra Khobare 7 лет назад 0
Я установил ISC Bind, чтобы он работал сейчас, но только на моей системе для других устройств в моем WiFi, ссылка не загружается, он говорит: «DNS-адрес сервера free.goodie не найден». Jinendra Khobare 7 лет назад 0
Вам следует 1) убедиться, что маршрутизатор использует ваш сервер для DNS; 2) убедиться, что брандмауэр на сервере не блокирует порт 53 или 953 (TCP или UDP) и 3) убедиться, что добавлен конечный / (например, бесплатный). положительные герои /) по каждому запросу (не только локально). Anaksunaman 7 лет назад 0
Как настроить wamp для работы с http: //free.goodies/? Jinendra Khobare 7 лет назад 0
Кажется 953 порт не слушает только 53 слушает Jinendra Khobare 7 лет назад 0
Что касается порта 953, это должно быть хорошо, за исключением, возможно, препятствующих перезапускам RNDC. Большинство запросов делается на 53. Тем не менее, я бы дважды проверил, что вы добавили правила брандмауэра для всего * входящего и исходящего * трафика TCP и UDP на портах 53 и 953. Anaksunaman 7 лет назад 0
Ах! Искренне рад это слышать. Повеселись! :-П Anaksunaman 7 лет назад 0
У меня есть дополнительный вопрос, когда я пытаюсь установить IP-адрес сервера на статический, все перестает работать. Любой обходной путь для этого? Jinendra Khobare 7 лет назад 0
Хм. Это странно. Предполагая, что ваш файл зоны и настройки маршрутизатора соответствуют статическим IP-адресам вашего сервера WAMP и сервера BIND соответственно, проблем не должно быть. Вам необходимо увеличить последовательный файл зоны "free.goodies.txt", если вы в нем что-то измените (т.е. установите статический IP-адрес, отличный от того, который в данный момент указан в нем.) Anaksunaman 7 лет назад 0
Вы должны перезагрузить BIND после любых изменений, связанных с его конфигурацией (включая изменения в файлах вашей зоны). Anaksunaman 7 лет назад 0

Похожие вопросы