Существует множество причин, по которым необходимо получить доступ к собственной локальной сети из глобальной сети интернет: кому-то необходимо подключиться, чтобы была возможность просматривать удаленной файлы и папки, некоторым нужен доступ к системам безопасности, камерам и прочим объектам, кто-то «поднял» веб-сервер и не хочет платить за хостинг, а кому-то нужен совет по настройке компьютера с удаленным подключением. Причин множество, также, как и вариантов решения проблемы.
Постановка задачи
Согласно теории сети, для доступа к ресурсам сервера или отдельно взятого компьютера используются два основных параметра — это IP адрес и порт, на котором работает служба, обеспечивающая подключение к ресурсу по определенному протоколу. Поэтому необходима осознанная настройка маршрутизатора, компьютера и сервера, для обеспечения совместной работы и корректного доступа.
Общепринятыми стандартами доступ по каждому протоколу происходит по следующим портам:
- Веб-сервер или доступ по HTTP протоколу. Удаленное подключение обеспечивается по TCP портам 80 и 8080.
- Защищенная передача данных к веб-серверу — 443 порт.
- Основной протокол для передачи файлов или FTP использует порт 21.
- Защищенный протокол для доступа из терминала SSH по порту 22. Обычно используется для выполнения настроек устройств.
- Открытый протокол для подключения к удаленному терминалу TCP — порт 23.
- Доступ к почтовым серверам SMTP и POP3 используют порты 25 и 110 соответственно.
Специализированные программы используют свои собственные порты, например, чтобы получить доступ из интернета в локальную сеть используя программу VNC нужно открыть порт 5900, Radmin — 4899, а для подключения к встроенной службе удаленного рабочего стола Windows (RDC) — 3389.
Стоит отметить, что открытие портов на сервере добавляет уязвимости и привлекает злоумышленников. Поэтому открытие портов производится исключительно по мере необходимости, т.е. если нет необходимости в использовании доступа по протоколу, то и порт, используемой службой необходимо закрыть. Хорошей практикой является такая, что изначально закрывается доступ к любой службе, а по мере необходимости производится настройка доступа к службе. Особо уязвимыми являются порты, не предусматривающие авторизацию пользователя, например, 21-й порт в Windows по умолчанию открыт, что дает возможность несанкционированного подключения.
После того, как будут определены конкретные цели, т.е. для чего и к каким ресурсам нужен доступ, можно приступать к настройке удаленного доступа.
Настройка маршрутизатора — трансляция адресов
Трансляция или проброс адресов необходим для того, чтобы роутер переключил внутренний локальный адрес на внешний. Это означает, что при подключении будет указываться IP, который «смотрит» в интернет. Внешний IP адрес бывает «серым» (динамическим) или «белым» (статическим), но особенности настройки маршрутизатора по каждому из случаев выходят за рамки статьи, поэтому в качестве примера условно будет использоваться настройка на статическом адресе.
Настройка доступа производится на примере роутера Zyxel семейства Keenetic с версией прошивки v2. Этот роутер хорошо подходит для реализации поставленных задач. Чтобы выполнить настройку необходимо зайти через веб-интерфейс на страницу конфигурации.
Компьютер подключается к роутеру по DHCP. Это означает, что каждый раз при запросе добавить в сеть он получает новый IP адрес. Чтобы обеспечить доступ к локальной сети через интернет необходимо закрепить IP за каждым устройством. Это делается на главной странице во вкладке «Домашняя сеть» путем нажатия зеленой стрелки (при наведении появляется подсказка — «Закрепить IP адрес за устройством»).
Далее в конфигурации выбирается пункт меню «Безопасность» и вкладка «Трансляция сетевых адресов». На этой вкладке необходимо добавить для каждой выбранной службы свое правило доступа и трансляции сокета в интернет. Сокет — это связка IP адреса и номера порта, например, 192.168.1.1:8080 для подключения к Веб-серверу.
В открывшемся по нажатию кнопки «Добавить правило» окне нужно указать конкретные поля для создания правила:
- «Интерфейс» — из выпадающего списка выбирается WAN интерфейс. Вариантов выбора может быть несколько в зависимости от настроек провайдера: PPTP, PPPoE, L2TP или ISP (Broadband Connection).
- «Протокол» — выбирается из списка протокол для удаленного подключения входящих соединений.
- «Перенаправить на адрес» — указывается локальный адрес машины, для которой необходимо сделать перенаправление.
- «Новый номер порта назначения» — номер локального порта указанного компьютера.
Эти действия необходимо выполнить для каждого устройства в локальной сети и для каждого протокола, т.е. каждое устройство и служба на нем будут иметь отдельное правило. Не стоит забывать нажимать кнопку «Сохранить». После того как все нужные правила будут добавлены можно приступать к настройке конкретного компьютера.
Настройка доступа на компьютере с ОС Windows
Для настройки компьютера нужно на нем открыть порты для входящих соединений. Это делается в программе стандартной поставки «Брандмауэр Windows». Программа запускается из «Панели управления — Система и безопасность — Брандмауэр» или «Пуск — Выполнить — cmd — firewall.cpl».
Открытие портов происходит следующим образом:
- В программе нужно выбрать пункт меню «Дополнительные параметры».
- Откроется новое окно, которое позволит настроить расширенные параметры защиты компьютера.
- При нажатии кнопки «Правила для входящих соединений — Создать правило» открывает модальный диалог «Мастера создания правила».
- Первый пункт диалога позволяет выбрать тип правила: для конкретной программы (обычно при установке программы самостоятельно добавляют правила для корректно работы), для порта, предустановленные правила и настраиваемые правила.
- Выбирать нужно переключатель «Для порта».
- Выбирается тип протокола (TCP или UDP), и в соответствующее поле вносится конкретный порт или диапазон портов через дефис.
- После выбора порта создается само правило, т.е. разрешается или запрещается подключение. В нашем случае при открытии порта нужно поставить переключатель напротив «Разрешить подключение».
- Определяется профиль сетевого соединения. Можно проставить галочки напротив всех профилей.
- На последнем пункте нужно придумать имя для правила и нажать «Готово».
Таким образом открывается порт на компьютере. Аналогично, как и в роутере для каждого порта нужно создавать отдельное правило. Чтобы не добавлять доступ к каждому порту, можно полностью отключить брандмауэр, но делать это категорически не рекомендуется.
Настройка доступа с использованием сторонних программ
Для доступа к локальной сети из интернета при использовании сторонних специализированных программ обычно не требуется специальных знаний или навыков. Достаточно того, чтобы программа была установлена на машине клиенте и запущена на сервере. В некоторых случаях потребуется открыть для трансляции адреса на маршрутизаторе.
В качестве примера можно привести популярную программу TeamVewer. Она позволяет подключаться к удаленному рабочему столу, передавать и скачивать файлы и другие функции. Для подключения достаточно знать UserID и пароль компьютера, к которому необходимо подключиться.