Заставить SSH-сервер пересылать соединение для каждого пользователя

Есть ли способ заставить OpenSSH (или создать какой-либо прокси-сервер) перенаправлять одного пользователя на одну машину, а другого пользователя на другую машину только по имени пользователя, которое он (или она) предоставил ?

У меня следующая проблема: я собираюсь запустить GitLab в контейнере Docker и одновременно SSH-сервер на хост-машине. GitLab слушает SSH-соединения, но его интересует только "git" но не было ответа, решающего эту проблему - наиболее полезным оказался вариант, предлагающий настраиваемую оболочку, но я не нашел способа создать что-то подобное.

4
задан 23 May 2017 в 15:41
1 ответ

Туннелирование TCP-порта SSH настраивается клиентом ssh. На сервере вы можете ограничить конфигурацию туннелирования, используя allowopen=host:port в ключах authorized_keys.

Другим способом перенаправления трафика будет использование Netfilter/iptables с -m владельцем --uid-владельцем $UID и DNAT целью.

.
0
ответ дан 3 December 2019 в 04:20

Теги

Похожие вопросы