Практическое руководство отключает локальное перенаправление портов SSH?

У меня есть сервер под управлением Ubuntu и демон OpenSSH. Давайте назовем это S1.

Я использую этот сервер от клиентских машин (давайте назовем одного из них C1) чтобы сделать обратный туннель SSH при помощи передачи удаленного порта, например:

ssh -R 1234:localhost:23 login@S1

На S1 я использую значение по умолчанию sshd_config файл. Из того, что я вижу, любой имеющий правильные учетные данные {вход в систему, pwd} на S1 может войти в S1, и любой делает передачу удаленного порта и локальное перенаправление портов. Такие учетные данные могли быть сертификатом в будущем, таким образом, в моем понимании любой захватывающий сертификат отовсюду еще может войти в S1 (не обязательно C1) и следовательно создать локальное перенаправление портов.

Мне, позволяя локальное перенаправление портов слишком опасно, так как оно позволяет создавать некоторый общедоступный прокси. Я ищу путь tto, отключают только-L передачи.

Я попробовал следующее, но это отключает и локальную и удаленную передачу:

AllowTcpForwarding No

Я также попробовал следующее, это только позволит-L SX:1. Это лучше чем ничего, но все еще в чем я нуждаюсь, который не является "ни одним" опция.

PermitOpen SX:1

Таким образом, я задаюсь вопросом, существует ли путь, так, чтобы я мог запретить всему локальному порту вперед писать что-то как:

PermitOpen none:none

Действительно ли следующее является хорошей идеей?

PermitOpen localhost:1
20
задан 06.01.2011, 11:38

2 ответа

любой с данными для входа в систему может поднять их собственный экземпляр sshd, работая на случайном порте и позволить то, что они хотят, включая-L локальные передачи:

% /usr/sbin/sshd -d -f mysshd.config -p 12345

если Вы не доверяете пользователям, чтобы сделать что-то с Вашей машиной затем, Вы не должны позволять им входить в систему во-первых.

(btw, флаг-D довольно "прокси проблематичен" также),

16
ответ дан 07.12.2019, 10:11

Другое решение состояло бы в том, чтобы только позволить перенаправление портов specififc пользователям:

От SSH: полное руководство

Перенаправление портов может быть глобально включено или отключено в sshd. Это сделано с serverwide ключевым словом конфигурации AllowTcpForwarding в/etc/sshd_config. Ключевое слово может иметь значение да (значение по умолчанию, включая передающий) или не (отключающий передающий):

# SSH1, SSH2, OpenSSH
AllowTcpForwarding no

Кроме того, SSH2 имеет следующие опции:

# SSH2 only
AllowTcpForwardingForUsers
AllowTcpForwardingForGroups

Синтаксис их совпадает с для опций AllowUsers и AllowGroups. [Разделите 5.5.2.1, "Управление доступом к счету"] Они указывают список пользователей или групп, которым разрешают использовать перенаправление портов; сервер отказывается соблюдать запросы перенаправления портов на кого-либо еще. Обратите внимание, что они обращаются к целевой учетной записи сессии SSH, не клиентскому имени пользователя (который не часто известен).

...

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

17
ответ дан 07.12.2019, 10:11

Теги

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