Как перенаправить мой локальный хост на IP-адрес моего VPS?

Как перенаправить мой локальный хост на IP-адрес моего VPS?

Я использую локальный хостинг на своем VPS.

При запуске сервиса я получаю следующее:

Navigate to https://127.0.0.1:7443 in a browser

Проблема в том, что я не могу открыть его в своем браузере, потому что это VPS.

Я попробовал запустить ngrok, но он сообщает, что подключение к localhost не удалось.

Есть ли способ перенаправить его на IP-адрес того же VPS, на котором работает localhost? Например, я открываю браузер и ввожу IP-адрес своего сервера?

решение1

Вы уже пробовали получить доступ к порту с помощью IP-адреса VPS, а не с помощью localhost, потому что какое-то приложение в консоли сказало перейти на localhost, но прослушивать все интерфейсы?

Альтернативный вариант, если служба прослушивает только localhost и у вас есть доступ по SSH к VPS, вы можете перенаправить порт localhost вашего VPS на локальную машину.

ssh user@vpsIP -L 7443:localhost:7443

объяснение -L [LOCAL_IP:]LOCAL_PORT:DESTINATION:DESTINATION_PORT первые квадратные скобки необязательны, если вы хотите указать, где прослушивать на вашем компьютере, по умолчанию все интерфейсы

решение2

Запустите веб-сервер, прослушивающий удаленные адреса, и получите доступ через Интернет.

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

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

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

решение3

Можно организовать это через прокси. У меня есть WireGuard, который имеет внутренний IP-адрес участников. Давайте возьмем пример с сервера, который подключил VPN с IP-адресом: 10.8.0.2 (внутренний IP-адрес) IP-адрес VPN: 10.8.0.2

Вам нужно установить на вашем vps vpn, который создает локальную сеть. У меня есть wireguard. Затем установите nginx в качестве прокси. После установки откройте браузер и введите IP-адрес вашего vps. Если откроется приветствие nginx. Это хорошо. Это должно работать примерно так: запрос приходит на vps, nginx обрабатывает его и отправляет информацию на подключенный сервер через vpn (WireGuard), ждет ответа и отправляет его обратно тому, кто отправил запрос.

Осталось поправить конфиг.

Конфигурация vpn nginx введите код здесь

 server {
    client_body_timeout 5s;
    client_header_timeout 5s;
    listen       80; #port
    server_name  2.16.136.1;# domen/ip vpn

    add_header Access-Control-Allow-Origin *;
    location / {
              #limit_conn addr 3;
               limit_rate 71680k;
                 #if ($http_cookie ~* ".+" ) {
                #set $cookie_cache_bypass 1;
                #}
                proxy_pass http://10.8.0.2:5000;
                
                proxy_read_timeout      300;
                proxy_connect_timeout   300;
                proxy_redirect          off;
                proxy_set_header        X-Forwarded-Proto https;
                proxy_set_header        Host              $http_host;
                proxy_set_header        X-Real-IP         $remote_addr;
                proxy_set_header        X-Forwarded-For   
                $proxy_add_x_forwarded_for;
                proxy_set_header        X-Forwarded-Ssl   on;
                proxy_set_header        X-Frame-Options   SAMEORIGIN;
                
                proxy_cache all;
                proxy_cache_valid 404 502 503 20m;
                proxy_cache_valid any 2h;
                proxy_cache_use_stale error timeout invalid_header updating;
    
    
    
                gzip on;
                gzip_disable "msie6";
    
                gzip_vary on;
                #gzip_proxied any;
                gzip_comp_level 5;
                gzip_min_length 2240;
                gzip_proxied expired no-cache no-store private auth;
                gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript application/javascript application/vnd.ms-fontobject application/x-font-ttf font/opentype image/svg+xml image/x-icon;
                
            }
}

PS: извините за опечатки в конфигурации, если таковые имеются.

решение4

Например, вы можете установить прокси-менеджер nginx.

Там вы можете добавить домен или свой публичный IP-адрес и затем https://127.0.0.1:7443получить доступ к этому хосту с помощью своего публичного IP-адреса.

Связанный контент