3

Я настраиваю сервер Gitlab (https://about.gitlab.com/) внутри виртуальной машины, используя KVM на хосте Ubuntu 14.04. Мой университет взимает с нас плату за каждый внешний IP-адрес, поэтому я не могу использовать мостовую сеть и заставить каждую виртуальную машину напрямую общаться с внешним миром. Вместо этого я должен использовать NAT, и хост-машина должна обрабатывать весь входящий трафик.

Для HTTP это не большая проблема. Я настроил обратный прокси-сервер с помощью Nginx и dnsmaq для направления трафика на основе поддоменов (например, git.example.com будет отправляться на сервер Gitlab). Но серверу Gitlab также нужны входящие SSH-соединения для работы git. Я дошел до того, что выяснил, что Nginx, по-видимому, обеспечивает только обратное проксирование для соединений HTTP/S, и я не могу использовать его для SSH. Также важно, чтобы сервер Gitlab был доступен на порту 22, потому что в противном случае всем пользователям пришлось бы указывать использовать другой порт.

Кто-нибудь знает, могу ли я использовать Apache с mod_proxy для этого или другого решения? Идеальная настройка - направлять трафик SSH на основе субдомена, чтобы ssh example.com отправлялся на хост, ssh git.example.com - на git-сервер и т.д.

0