Отключить SSH удаленное туннелирование


2

Мне нужно ограничить функции туннеля SSH. Пользователям не должно быть разрешено создавать удаленные туннели, а только туннели к localhost. Я попытался настроить все это в конфигурации SSH, но я могу только полностью отключить TCPForwarding. Я думаю, это может быть возможно только с iptables тогда? Кто-нибудь имеет опыт и может мне помочь?

Ответы:


1

Для OpenSSH вы можете использовать PermitOpen host:portдля ограничения, куда пользователи могут туннелировать. Чтобы позволить им туннелировать к MySQL, который только локально прослушивает порт по умолчанию:

PermitOpen LocalHost:3306

Со страницы руководства для sshd_config:

PermitOpen

Определяет пункты назначения, к которым разрешена переадресация портов TCP. Спецификация пересылки должна иметь одну из следующих форм:

PermitOpen host:port
PermitOpen IPv4_addr:port
PermitOpen [IPv6_addr]:port

Можно указать несколько форвардов, разделив их пробелами. Аргумент any может использоваться для снятия всех ограничений и разрешения любых запросов на пересылку. Аргумент none может быть использован для запрета всех запросов на пересылку. По умолчанию все запросы на переадресацию портов разрешены.


Спасибо за ваш ответ, он работает с localhost: <PORT>, но не с "any". Кажется, что каждый порт должен быть вставлен в этот момент.
Владислав Джабантов

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

Это верно, но это может стоить запроса функции ;-)
Владислав Дзабантов

@Brian Попробуйте использоватьPermitOpen localhost:*
kurtm

@kurtm это выдает ошибку «неверный номер порта в PermitOpen»
Владислав Дзабантов
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.