Глава 6: Видимость в локальной сети и не только
6.1 Что такое IP-адрес, локальный и внешний?
Представь, что интернет — это огромный город, а каждый компьютер в нём — дом.
Локальный IP-адрес (например,
192.168.1.100) — это номер квартиры внутри одного подъезда. Все устройства в твоей домашней Wi-Fi-сети (телефон, ноутбук, умный телевизор, наш сервер) имеют такие адреса. Они нужны, чтобы устройства "общались" между собой внутри локальной сети. Другие люди из интернета по этому адресу тебя не найдут.Внешний (публичный) IP-адрес (например,
95.165.123.222) — это адрес всего твоего дома (подъезда) в городе. Его провайдер выдаёт твоему роутеру. По этому адресу к тебе могут "прийти гости" из интернета.
Наш сервер в виртуальной машине пока имеет только локальный IP. Давай научимся открывать к нему доступ.
6.2 Как открыть доступ к сайту другим компьютерам в локальной сети
Допустим, ты хочешь показать свой сайт другу, который пришёл к тебе в гости и подключился к твоему Wi-Fi.
Шаг 1: Узнаём точный локальный IP сервера.
В терминале сервера выполни команду ip addr show (или ip a для краткости). Тебя интересует адрес не у lo (это localhost, внутренняя петля), а у eth0, enp0s3 или enp0s8. Выглядит это так:
inet 192.168.1.105/24 brd 192.168.1.255 scope global dynamic enp0s3Локальный IP в этом примере — 192.168.1.105. Запиши свой.
Шаг 2: Настраиваем сеть VirtualBox (если сайт не открывается). По умолчанию VirtualBox использует режим NAT. Сервер в нём получает IP в своей, изолированной виртуальной сети. Чтобы он стал "соседом" в твоей реальной домашней сети, нужно сменить режим.
Выключи виртуальную машину (команда
sudo poweroffвнутри неё или через меню VirtualBox).В VirtualBox: выбери машину -> "Настроить" -> "Сеть".
В поле "Тип подключения" смени "Трансляция сетевых адресов (NAT)" на "Сетевой мост (Bridge Adapter)".
В поле "Имя" выбери свою физическую сетевую карту (Wi-Fi или Ethernet).
Нажми "ОК" и запусти машину заново.
Снова выполни
ip aи найди новый локальный IP. Теперь он будет из диапазона твоей домашней сети (например,192.168.1.105).
Шаг 3: Проверяем доступ с другого устройства.
Возьми другой компьютер/телефон, подключи его к той же самой Wi-Fi-сети.
На этом устройстве открой браузер.
В адресную строку введи
http://ТВОЙ-ЛОКАЛЬНЫЙ-IP(например,http://192.168.1.105).Если всё сделано правильно, откроется твой сайт!
Волшебство: Ты только что создал настоящий веб-сервер, доступный в своей локальной сети. Это основа для домашнего медиа-сервера, файлового хранилища или панели управления умным домом.
6.3 Внимание! Почему не стоит "открывать" сервер в интернет прямо сейчас
Теперь у тебя может возникнуть идея: "А что, если дать этот IP другу из другого города?" Или: "А если прописать этот IP в настройках роутера, чтобы сайт был доступен из интернета?"
СТОП. Не делай этого пока.
Причина — безопасность. Наш сервер сейчас похож на дом:
Двери (порт 80 для HTTP) открыты нараспашку.
Нет забора (фаервола).
Нет охраны (системы обнаружения вторжений).
На столе лежат чертежи всей системы (стандартные настройки Apache).
В интернете постоянно "ходят" автоматические боты, которые сканируют все IP-адреса в поисках именно таких незащищённых серверов. Они могут:
Залить на твой сервер вирусы или использовать его для атак на другие сайты.
Украсть твои файлы.
Использовать твой трафик и ресурсы для майнинга криптовалюты.
Наш план: Сначала мы научимся защищать наш сервер (следующие главы), а потом уже, если очень нужно, будем аккуратно открывать его в интернет — только после настройки фаервола и смены стандартных паролей.
Последнее обновление