Простите за стену с текстом, я немного новичок, но мои поисковые ресурсы исчерпаны.
Чтобы установить общедоступный IP-адрес для моего локального сервера разработки Django, я настроил микроэкземпляр AWS в качестве сервера для обратного туннелирования SSH. Общедоступный IP-адрес указывает на туннельный сервер, и я создаю обратный туннель с моей локальной машины на туннельный сервер, который пересылает трафик между общедоступным IP-адресом и моей машиной. Вот команда, если вам интересно:
autossh -M 8001:8001 -NR 80:localhost:8000 root@mytunnelserver.com -v
Сейчас я работаю над привлечением другого разработчика, и мне нужно настроить что-то подобное для него. Я мог бы создать клон своей установки (по сути, создав новый туннельный сервер только для него), но это кажется беспорядочным, особенно потому, что мне нужно добавить больше разработчиков в будущем.
Есть ли способ настроить один сервер, который несколько пользователей могут использовать для настройки обратных туннелей SSH, учитывая, что эти пользователи имеют уникальные общедоступные IP-адреса, но перенаправляют одни и те же порты? В принципе, могу ли я и мой партнер использовать один и тот же сервер для обратного SSH-туннелирования, правильно перенаправляя трафик через одни и те же порты для разных общедоступных IP-адресов?
Заранее спасибо и дайте мне знать, если я смогу уточнить.
мы используем это так:
установите локальный скрипт для туннеля (чтобы не вспоминать :)) - например:
_username_local.domain.org.sh_
#!/bin/sh
echo "local: 8080 - remote: 8081"
echo "http://username-local.domain.org/"
ssh root@domain.org -R 8081:localhost:8080 -g
поэтому первый пользователь слушает удаленный порт 8081, второй - 8082 и т. д.
на сервере настройте nginx как обратный прокси, по одному «серверу» на пользователя:
upstream user_1 {
server localhost:8081 fail_timeout=0;
}
server {
listen 80;
server_name username-local.domain.org;
location / {
proxy_redirect off;
proxy_pass http://user_1;
}
}
и не забудьте установить создание записей DNS ... (возможно, с подстановочным знаком на * .domain.org)