January 14, 2023

Получаем белый IP с помощью VDS за копейки

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

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

Для чего это может быть нужно?

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

  1. Вы сможете подключаться к своему компьютеру через RDPс любой точки мира, с любого интернета, при этом не имея услуги белый IP у своего провайдера.​
  2. Разместить сайт в открытый доступ​.
  3. Или поднять игровой сервер, будь то майнкрафт или кс.

Почему бы не купить белый айпи у своего провайдера?

Тут тоже есть свои нюансы. Например белый айпи адрес у вашего провайдера может стоить дорого, как у меня, он стоит 150р в мес, но при этом я могу взять VDS за 80р в месяц, разница существенна.

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

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

Установка + настройка и объяснение

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

На этом хостинге присутствует почасовая оплата, что неплохо как для теста.

Создаем любой VDS с любыми характеристиками и желательно с операционной системой Ubuntu, например я выбрал 1 ядро и 1 гигабайт оперативной памяти с 100мб/интернетом в Санкт-Петербурге.

Особенно смотрите на локацию вашего сервера, ведь от него будет зависеть пинг, и скорость соединения, вашего ПК/Телефона с VDS.

Далее получаем данные от сервера, а именно айпи адрес ( который кстати и будет использоваться у нас в качестве белого айпи) , пароль, и логин.

Логин зачастую всегда root.

Скачиваем программу WinSCP и Putty. С помощью них мы сможем взаимодействовать с нашим сервером.

Подключаемся к нашему серверу:

Далее в нашей консоле прописываем следующие команды:

sudo apt update
sudo apt install git
git clone https://github.com/Nyr/openvpn-install

У нас скачивается репозиторий с установщиком open-vpn.

Заходим в папку.

cd openvpn-install

И запускаем инсталлер:

bash openvpn-install.sh

После этого скрипт спрашивает какой протокол использовать, выбираем TCP.

Второй пункт просто нажимаем Enter.

В третьем пункте выбираем DNS, можете выбрать любой, я выбрал гугл.

И в четвертом пункте название конфигурации.

После чего просто нажимаем любую клавишу и ждем. У нас создался файл конфигурации для open-vpn:

Мы его переносим на наш компьютер. Далее скачиваем open-vpn на наш компьютер. После установки тыкаем два раза по нашему конфигу и импортируем его, и подключаемся к нашему VPN.

После этого VPN назначит нам наш локальный айпи адрес, зачастую это 10.8.0.2

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

Используем айпи адрес VDS для подключения к компьютеру через RDP.

Для начала вам нужно настроить RDP в локальной сети, как это сделать вы можете посмотреть в интернете

Например по этому гайду:

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

Заходим снова в нашу консоль и прописываем следующие команды:

открываем порт 3389 (он используется в протоколе RDP).

iptables -I INPUT -p tcp -m tcp --dport 3389 -j ACCEPT

делаем переадресацию с ip vds на наш компьютер:

iptables -t nat -A PREROUTING -p tcp --dport 3389 -j DNAT --to-destination 10.8.0.2:3389

Теперь когда мы будем вводить айпи адрес VDS в RDP, мы будем подключаться к своему ПК!

Поднимаем сайт

В моем случае я подниму fastapi проект на Python, у вас может быть что угодно.

Где ip я прописываю 10.8.0.2(назначеный впном), а порт какой хочу, к примеру 80.

Далее опять заходим в консоль, чтобы открыть порт и переадресовать его:

iptables -I INPUT -p tcp -m tcp --dport 80 -j ACCEPT
iptables -t nat -A PREROUTING -p tcp --dport 80 -j DNAT --to-destination 10.8.0.2:80

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

Таким же образом вы можете открыть порты для сервера майнкрафт:

iptables -I INPUT -p tcp -m tcp --dport 25565 -j ACCEPT
iptables -t nat -A PREROUTING -p tcp --dport 25565 -j DNAT --to-destination 10.8.0.2:25565

И указав ip в конфиге на 10.8.0.2.

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