Как подключиться на свой сервер

HackWare.ru

Этичный хакинг и тестирование на проникновение, информационная безопасность

Как веб-сервер на своём компьютере сделать доступным для других

После установки веб-сервера может понадобиться сделать его доступным для других в локальной или глобальной сети. Это может быть нужно, например, чтобы тестировать свой сайт на разных платформах (посмотреть, как выглядит сайт на мобильных телефонах) или если вы создали сервис (файлообменник, чат и т.п.), который должен быть доступен для других.

Локальные и глобальные компьютерные сети

Чтобы добиться нужного результата, необходимо знать, что компьютерные сети бывают локальными и глобальными. Пример локальной сети: домашний роутер, к которому подключены компьютеры и мобильные устройства. Глобальная сеть – это Интернет.

Глобальная сеть и локальные сети различаются IP адресами. Каждое сетевое устройство в любой сети должно иметь свой уникальный IP адрес. Особенностью IP адресов в глобальной сети является то, что они уникальны на глобальном уровне, т.е. к Интернету не могут быть подключены устройства, у которых одинаковый IP. В локальных сетях IP адреса также уникальны, но уникальны они только на локальном уровне: т.е. в вашей домашней сети IP адрес, к примеру, 192.168.0.2 может быть только у одного устройства, иначе это вызовет проблемы; но у других пользователей, имеющих свои локальные сети, в этих сетях также может использоваться IP адрес 192.168.0.2.

Поскольку локальные сети напрямую не связаны друг с другом, не возникает путаницы из-за одинаковых IP адресов. Связь между локальными сетями может происходить черед подключение к глобальной сети. Это происходит обязательно через устройства, которые имеют глобальный IP.

Примечание: Я знаю про NAT (технология, позволяющая нескольким устройствам иметь Интернет-подключение через один IP адрес), про объединение локальных сетей с помощью другой локальной сети, про туннелированние и т.д., но сознательно пропускаю это для упрощения.

Локальные и глобальные IP адреса

Работа домашней (локальной) сети, в которой присутствует роутер и несколько устройств, подключённых к роутеру, обычно выглядит следующим образом:

Настройка веб-сервера, чтобы его можно было открыть на других компьютерах в локальной сети

По умолчанию, веб-сервер Apache настроен отвечать всем, кто пытается к нему подключиться. Подключиться к компьютеру, а, следовательно, и к веб-серверу, проще всего по его IP адресу.

Если вы хотите открыть страницу локального веб-сервера на другом устройстве (компьютер, телефон), подключённом к этой же локальной сети, то достаточно в строке браузера набрать IP адрес компьютера, на котором запущен веб-сервер.

Как узнать локальный IP адрес

Но чтобы это сделать, нужно знать, какой у компьютера с веб-сервером IP адрес. Как уже было сказано, локальные IP раздаёт роутер. Локальные IP могут быть в следующих диапазонах:

В Windows чтобы узнать локальный IP адрес откройте командную строку (нажмите Win+x, и выберите Windows PowerShell). В открывшемся окне выполните команду

Как подключиться на свой сервер

У вас, наверное, будет меньше сетевых устройств, но в любом случае, для всех из них будет выведена информация, в том числе IP адреса.

Мой компьютер имеет локальный IP адрес 192.168.0.90. Если я, например, в телефоне, подключённому по Wi-Fi к роутеру наберу в адресной строке 192.168.0.90, то откроется веб-страница моего локального веб-сервера, запущенного на компьютере (да, у меня там бардак):

Как подключиться на свой сервер

Внимание: если у вас не получается открыть веб-сервер, хотя IP адрес введён правильно – попробуйте отключить файервол. Если это помогло, то файервол можно включить, но настройте исключение для 80 порта.

Всё довольно просто, но имеется проблема – после перезагрузки компьютера IP адрес, скорее всего, изменится. Т.е. чтобы вновь открыть локальный веб-сервер понадобится проверять IP адрес и сообщать его другим желающим посетить ваш локальный веб-сайт.

Как уже было сказано, локальный IP адреса «раздаёт» роутер. Адреса являются произвольными в рамках данной подсети.

Чтобы исправить ситуацию с постоянно меняющимся локальным IP, давайте познакомимся с такими понятиями как динамичный и статичный IP адреса.

Динамичный IP адрес выдаётся произвольно (роутером, Интернет-провайдером). Он может меняться при последующих подключениях.

Статичный IP адрес закреплён за сетевым интерфейсом (фактически, закреплён за компьютером, мобильным телефоном). Он не меняется при последующих переключениях.

В локальной сети, по умолчанию используются динамичные IP адреса, но это легко изменить.

Имеется, как минимум, два способа поменять динамичный локальный адрес на статичный локальный адрес:

Не нужно делать изменения и там, и там – достаточно сделать настройки или на компьютере, или в роутере. Принципиальной разницы нет, какой именно метод вы будете использовать.

Настройка постоянного IP в Windows

Для настройки статичного локального адреса на компьютере откройте «Сетевые подключения». Проще всего это сделать набрав в командной строке Windows:

Выберите интересующий вас сетевой адаптер (сетевой подключение), нажмите на него правой кнопкой мыши и выберите «Свойства»:

Как подключиться на свой сервер

В открывшемся окне выберите «IP версии 4 (TCP/IPv4)» и нажмите кнопку «Свойства»:

Как подключиться на свой сервер

Вы увидите следующее:

Как подключиться на свой сервер

Переключите на «Использовать следующий IP адрес».

Теперь нужно заполнить все поля. Первые три поля являются взаимосвязанными и также связаны с роутером. Когда ранее мы смотрели свой локальный IP адрес, нам также была показана такая информация как Маска подсети (на моём скриншоте это 255.255.255.0) и Основной шлюз (на моём скриншоте это 192.168.0.1). Посмотрите ваши значения (вполне вероятно, что они будут такими же) и введите их в поля «Маска подсети» и «Основной шлюз». Кстати, основной шлюз – это адрес роутера. Очень часто локальными адресами роутера являются 192.168.0.1 и 192.168.1.1

В поле IP-адрес введите желаемый IP. Он должен соответствовать вашей сети. Т.е. если роутер имеет IP 192.168.0.1, то компьютер должен иметь IP вида 192.168.0.* (например, 192.168.0.100), если роутер имеет IP 192.168.1.1, то компьютер должен иметь адрес вида 192.168.1.* (например, 192.168.1.100).

Чтобы не было проблем, устройства в одной локальной сети не должны иметь одинаковый IP адрес.

В качестве DNS серверов («Предпочитаемый DNS-сервер» и «Альтернативный DNS-сервер») введите 8.8.8.8 и 8.8.4.4 соответственно.

У меня получилось так (для компьютера я выбрал IP 192.168.0.100):

Как подключиться на свой сервер

Закройте окна с сохранением настроек.

Теперь при каждом подключении ваш компьютер будет иметь один и тот же IP адрес.

Настройка статичного IP в роутере

Для каждого роутера детальная инструкция по настройке различается. Но схема общая: в настройках локальной сети перейдите к настройкам DHCP-сервера, выберите желаемые компьютеры/телефоны по MAC-адресу и привяжите их к определённым локальным IP адресам.

Как подключиться на свой сервер

Пример настройки статических IP адресов в ZyXEL Keenetic Lite II.

Имеется перечень компьютеров со следующими именами и следующими желательными статичными IP адресами:

На роутере Переходим в Домашняя сеть → Параметры IP. По умолчанию размер пула адресов был равен 20, увеличиваем его количество до 40. Поскольку первым IP адресом пула является 192.168.1.33, то теперь доступный для использования диапазон стал 192.168.1.33-192.168.1.72.

Как подключиться на свой сервер

Переходим в список устройств (вкладка «Устройства»):

Как подключиться на свой сервер

Выбираем поочереди каждое устройство, ставим галочку «Постоянный IP-адрес», вводим желаемый статичный IP и нажимаем кнопку «Зарегистрировать»:

Как подключиться на свой сервер

Повторяем эту операцию для каждого компьютера и устройства, которым мы хотим назначить статичные IP адреса.

Когда всё будет готово, все устройства со статичными адресами будут выделены полужирным шрифтом.

Как подключиться на свой сервер

Изменения вступят в силу при следующем подключения устройств к роутеру.

Как открыть веб-сервер для доступа из Интернета

Поскольку Apache по умолчанию прослушивает все сетевые интерфейсы и отвечает всем, то можно предположить, что если в веб-браузере ввести глобальный адрес, то мы увидим наш веб-сайт.

Если кабель Интернет-провайдера подключён к вашему компьютеру напрямую, то, вероятно, доступ по IP адресу будет работать (имеются нюансы с NAT).

Но если вы используете роутер, то IP адрес принадлежит роутеру. Если из Интернета приходит запрос на роутер, то он просто не знает, какому именно устройству в локальной сети переадресовать этот запрос. Более того, большинство роутеров имеют свой собственный веб-сервер – это он показывает страницы с настройками роутера в веб-браузере.

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

Переадресация портов доступна для настроек локальной сети и для настроек Интернет-подключения – нам нужно именно второе.

В роутере перейдите в настройки Интернета, найдите там переадресацию портов. Некоторые роутеры поддерживают Переключение портов – нам это не подойдёт.

В качестве порта для переадресации выберите 80, введите локальный IP адрес компьютера, на котором размещён веб-сервер и введите порт, на который будет происходить переадресация – 80, протоколTCP.

Как подключиться на свой сервер

Теперь мой веб-сервер доступен также по внешнему IP:

Как подключиться на свой сервер

Кстати, чтобы узнать свой внешний IP адрес перейдите на эту страницу: https://suip.biz/ru/?act=myip

Как сделать глобальный IP адрес статичным

Вы столкнётесь с той же проблемой, что и для локального IP адреса – скорее всего, ваш внешний IP адрес является динамичным и будет время от времени меняться. Если вам нужен статичный IP адрес, то, скорее всего, его придётся покупать у вашего Интернет-провайдера как дополнительную услугу с ежемесячной абонентской платой.

Очень хороший хостинг сайтов

Если вы уже наигрались с локальным веб-сервером и почувствовали, что готовы выпустить ваш сайт в свет, то я рекомендую тот же хостинг, на котором работает этот сайт:

Источник

Как запустить свой сервер с белым ip из локальной домашней сети

Disclaimer

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

Буду стараться писать очень подробно, чтобы человек, знающий столько сколько я в начале своего пути, все понял.

Вступление

Мне очень давно хотелось поднять видимый извне сервер в своей домашней локальной сети, чтобы использовать его для pet проектов или же возможно для сайта-визитки.

Возникает вопрос: почему не использовать для этого самую простую VPS и не тратить мощности своего компьютера? Ответ очень прост: статический белый ip у меня уже был и давно, а в качестве сервера я решил использовать не основной пк а старый ноутбук. Поэтому дополнительных затрат не предвиделось.

Что мы имеем?

Ноутбук (intel core i5 M 560 2,67 GHz, 4/60Gb) с установленной Ubuntu Server 20.04.3 (для создания установочной флешки советую использовать rufus (win) или balenaEtcher (os x)

роутер провайдера с подключенным пакетом «статический ip адрес»

второй компьютер для тестов (все что делается через браузер можно, конечно, сделать и на телефоне, вопрос удобства)

хорошая музыка чтобы процесс не был скучным

Какая цель?

Сделать python3 flask (взял для простоты) сервер доступный из вне.

Установка постоянного локального адреса на сервер

Приступим. Во-первых установим постоянный ip для нашего сервера в локальной сети. По идее изначально используется DHCP (протокол, по которому каждое устройство в сети получает относительно случайный ip адрес, а нам нужен постоянный для сервера, чтобы роутер всегда знал куда отправлять внешние запросы)

Смотрим интерфейс, который мы используем, с помощью ifconfig

В зависимости от того какой тип соединения мы используем (кабель или wi-fi) выбираем файл в катологе /etc/netplan

И настраиваем его примерно так:

Здесь важно понимать что означают строки:

/24 означает маску сети (255.255.255.0), в данной ситуации первые 3 числа должны совпадать с локальным адресом роутера, а последнее число произольно. Я выбрал адрес 192.168.1.200

в строке nameservers: addresses (9) указываем тот же адрес что и в gateway4 (простите, но я беспонятия что это)

dhcp4: no и dhcp6: no указывают, что мы не будем использовать протокол DHCP

На этом этапе возможно потребуется проверка:

Чтобы следить за тем кто нас пингует.

Все это подробно описано в этой статье для Ubuntu, для других дистрибутивов гуглите «Установка статического ip «.

Все работает? Идем дальше!

Рассказываем роутеру про сервер

Теперь наш сервер знает, что мы имеем дело с постоянным ip и не используем протокол DHCP. Самое время рассказать роутеру, что внешние запросы нужно отправлять на сервер. Чтобы получить доступ к настройкам роутера вбиваем в поисковую строку его ip адрес.

Установить DMZ зону внутри настроек роутера и указать туда локальный адрес нашего сервера. Этим действием мы делаем наш сервер публичным и теперь любой может попробовать подключиться к нему.

Пробросить порты нужных нам ресурсов через роутер на сервер (перенаправление портов). Не забудьте порт SSH (22) и flask (5000)

Попробуйте пингануть его из внешней сети.

Все норм? Теперь наш сервер виден из вне, самое время подумать о безопасности.

Защита сервера

Во-первых сделаем еще одного пользователя помимо root (1), зададим ему пароль (2) и разрешим использовать root привелегии через sudo (3):

Настраивайте по инструкции в статье упомянутой выше. Там мне совсем нечего добавить, кроме подроностей о public и private ключах:

Открытый ключ отправляется на сервер в файл authorized_keys в папке /.ssh в домашней директории пользователя ( /home/username/.shh/authorized_key )

Для этого можно использовать команду:

Закрытый ключ используется для аутентификации, скопируйте его куда-нибудь чтобы не потерять

Использовать ключ для входа можно командой:

Важно отключить аутентификацию по паролю иначе мы все это делали зря.

Firewall

Используя проброс портов мы разрешаем доступ к нашему серверу лишь посредством подключений к определенным портам, но DMZ зона допускает почти все типы запросов. Используя DMZ зону нам строит поднять FireWall на сервере, который как раз и ограничит количество портов которые могут принимать внешние запросы.

Разрешим использование SSH (1) и порта 5000 (2) в ufw (Firewall), и запустим Firewall (3):

Подняв FireWall важно не забыть разрешить доступ к порту SSH (22) и порту Flask (5000) (ну или другого ПО, которое мы собираемся использовать). Я забыл и долго не понимал, почему мой сервер не отвечает.

На сайте хорошо разобраны команды для управления Firewall-ом.

Fail2ban

Fail2ban ограничивает количество попыток подключения, это сильно усложнит подбор аутентификационных данных SSH.

Для начала установим его (1) и запустим (2, 3):

Теперь сделаем проверку более сложного уровня

Установим flask и python3:

Скопируем код тестового сервера с сайта в файл server.py :

Находясь в директории с этим файлом, запустим сервер:

Сервер запущен и теперь мы можем попробовать подключиться к нему с внешнего устройства прямо через строку в браузере, вводя внешний адрес нашего роутера, к примеру:

Если все работает мы должны увидеть строку «Hello, World!». Не заработало? Пройдитесь по моим заметкам в этом гайде еще раз.

Источник

Как играть по локальной сети в Minecraft [TLauncher]

Как подключиться на свой сервер

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

Настройка сервера при нахождении с другим игроком в одной сети Wi-Fi или Lan

Если несколько компьютеров находится не далеко друг от друга и находится в одной сети: Wi-Fi или Lan (по кабелю подключены), то вам подойдет данная настройка.

Windows: На компьютере, где будет открыт сервер, открываем Пуск и вписываем в поиск cmd, открываем данную программу:

Как подключиться на свой сервер

В открывшемся окне вписываем ipconfig, нажимаем enter. Ищем ваш локальный IP, который начинается с 192.168.*.*, в примере он 192.168.1.47 (у вас будет другой!), копируем его.

Как подключиться на свой сервер

MacOS: Для нахождения локального IP открываем Терминал (Terminal), вписать можно в поиск по Mac данную программу и найти её, в окне вписываем ifconfig |grep inet и ищем IP который начинается с 192.168.*.*, копируем его.

Как подключиться на свой сервер

Теперь открываем TLauncher и выбираем версию с иконкой TL и запускаем игру (Под аккаунтом TLauncher.org тоже лучше авторизоваться). Если выбрать без иконки TL, то не сможете подключится к серверу без лицензии Mojang.

Как подключиться на свой сервер

Заходим в свой мир и в меню Паузы (Esc) кликаем Open to Lan (Открыть для сети), в чате появится сообщение об успешном открытии сервера, а так же порт сервера, в примере это 31790 (у вас будет другой).

Как подключиться на свой сервер

Теперь на другом компьютере, который должен подключится к вашему серверу, необходимо так же открыть версию с иконкой TL (плюс, версия игры должна быть одинаковая с первым компьютером), переходим в Multiplayer (Сетевая игра), открываем Direct connect (Прямое подключение).

Теперь вводим в поле IP адрес + порт, которые мы получили ранее, в примере это 192.168.1.47:31790. Если всё ок, то произойдёт подключение к серверу! Вы сможете теперь играть на сервере с другом.

Как подключиться на свой сервер

Настройка сервера при игре по интернет с другим игроком с помощью Hamachi

Если физически вы не можете находится с другим игроком в одной сети, компьютеры находятся далеко друг от друга, то можно создать специальную сеть используя интернет с помощью Hamachi.

На обоих компьютерах делаем следующие действия: Создаём аккаунт Hamachi и скачиваем их программу (после перехода по ссылке, кнопка Download по центру).

Устанавливаем программу и авторизуемся под созданными данными. Теперь, на одном из компьютеров в Hamachi кликаем на «Создать новую сеть«, вводим ЛЮБОЕ название сети и любой пароль. Появится в окне новая сеть.

Как подключиться на свой сервер

Теперь открываем TLauncher и выбираем версию с иконкой TL и запускаем игру (Под аккаунтом TLauncher.org тоже лучше авторизоваться). Если выбрать без иконки TL, то не сможете подключится к серверу без лицензии Mojang.

Как подключиться на свой сервер

Заходим в свой мир и в меню Паузы (Esc) кликаем Open to Lan (Открыть для сети), в чате появится сообщение об успешном открытии сервера, а так же порт сервера, в примере это 60000 (у вас будет другой).

Как подключиться на свой сервер

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

Как подключиться на свой сервер

Потом необходимо так же открыть версию с иконкой TL (плюс, версия игры должна быть одинаковая с первым компьютером), переходим в Multiplayer (Сетевая игра), открываем Direct connect (Прямое подключение).

Теперь вводим в поле IP адрес из Hamachi (компьютера, где открыт сервер) + порт, которые мы получили ранее, в примере это 25.1.80.229:60000. Если всё ок, то произойдёт подключение к серверу! Вы сможете теперь играть на сервере с другом.

Как подключиться на свой сервер

Настройка локального сервера Майнкрафт с модами

После того, как вы настроили сервер для игры в одной сети WiFi (Lan) или же с помощью Hamachi, вы сможете установить моды и играть с ними с друзьями. Инструкция очень простая.

Устанавливаем на все клиенты абсолютно такие же моды, чтобы всё было идентично, плюс сама версия Forge должна быть одинаковая, к примеру, ForgeOptiFine 1.12.2. Незабываем, что версия должна быть с иконкой TL!

Как подключиться на свой сервер

Теперь создаём и подключаемся к серверу абсолютно по тем же инструкциями выше, в зависимости от вашей сети. Готово, можете играть с модами в Minecraft!

Возможные проблемы и их решения

Как подключиться на свой сервер

При подключении к серверу появляется: «Недопустимая сессия» или «Проверьте имя пользователя».

При подключении к серверу появляется: «Io.netty.channel.AbstractChannel$AnnotatedConnectException: Connection time out: no further information»

Как подключиться на свой сервер

Решение: игра не смогла найти информации о таком сервере, значит настройка сети выполнена не верно. Попробуйте на хост компьютере отключить антивирус и брандмауэр или настроить правильно.

Нужно проверить, что ваш компьютер может пинговать нужный вам IP (сервер). Для этого, нажимаем «Пуск» и в поиск пишем «CMD», открываем эту программу (Если поиска у вас нет в пуске, нажимаем кнопки Windows+R и там пишем CMD).

Как подключиться на свой сервер

Превышен интервал ожидания для запроса: Если у вас такой ответ, значит сервер Не пингуется, настройки сети выполнены не верно.

Ответ от 190.100.1.1: число байт=32 время=275мс TTL=242: Значит сеть настроена верно, у вас должна быть возможность войти на сервер.

При подключении к серверу идет прогрузка чанков и сразу выкидывает с сервера (разрыв соединения).

Решение: настройка сети выполнена верно, но антивирус или брандмауэр разрывает соединение. Отключите их или настройте правильно.

При подключении к серверу появляется: 1.14.2: Bad packet ID 26; 1.13.2: Bad packet ID 27; 1.7.10: Застряло на Logging in. или «received string length longer than maximum allowed»

Решение: длина вашего ника больше 16 символов, сделайте меньше.

Обсудить эту тему можно в комментариях ниже:

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *