Настроить SSH, чтобы разрешить переадресацию портов, но нет команд для определенного ключа?


8

Поэтому я добавил открытый ключ к authorized_keys. Как я могу ограничить его, чтобы он мог перенаправлять порты, но у него может не быть оболочки?

Ответы:


10

Вы должны поставить no-ptyключевое слово перед вашим ключом, чтобы оно выглядело так:

no-pty ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABBACzbcwCZNaN3HhHmpnaVrfZlNJ0HhPnOqEj
k2llms1OOPnEXetIlZuJw0UXbyMbhQbBl/E2wxXvXvF+jyLRR5yN6kBydM4LhjC0ej0PcH839vXd
uwJpDFjPw3s7r0VOhU1WRyk6Da6rX6shzabhQioIm3MHCjNOdywPb0k1cTj4yOxoOCOqGjmXK0
xxzTd+ZjTJqQGWzZ+8L8cVtKmU8kspYlCdhGWSv0Den36OsScnWTBn8A3X3lVJB5NkEm
BM1yKX4F6BhhD317VensEUu031PtFULeSF97IxDPmK36OFz9TPSf4d8Hp3BqtysqUlbWfEhYdHXj
+1Mn4xXZKiZhBh1DX youruser@yourhome

(Это все в одной строке, я добавил разрывы строк для удобства чтения).

ОБНОВЛЕНИЕ: если вы хотите предотвратить удаленное выполнение команд, вы должны добавить: command="/bin/false"

no-pty,command="/bin/false" ssh-rsa ...

4
Это ограничивает возможность удаленного входа в систему, не препятствует удаленному выполнению команд. Источник
mctylr

1
@mctylr: это не было частью вопроса. Но вы правы, возможно, ОП не знал об этом, поэтому я добавил это к ответу. (+1)
cstamas

1
Также стоит отметить, что вам нужно использовать ssh -N, чтобы поддерживать туннель, когда на удаленном конце нет оболочки.
Майк Pountney

1

человек сшд

Раздел AUTHORIZED_KEYS ФОРМАТ ФАЙЛА . Вы можете ограничить то, на что пользователи могут перенаправлять порты, просто добавив порты и хосты, которые вы хотите разрешить, например

permitopen = "192.0.2.1:80"

Также вы можете ограничить, откуда пользователь подключается, какие команды могут выполнять и т. Д.


1

Я бы посмотрел на использование scponly , я подозреваю, что его можно использовать для переадресации портов, а не для доступа только по scp / sftp. Он предназначен для ограничения пользователя от входа в систему или выполнения команд через ssh.

Другой фактор, который вам может понадобиться или вы хотите использовать sshd в среде chroot , вот несколько инструкций по настройке sftp с помощью chroot. Вы должны быть в состоянии адаптировать их довольно легко.

Я надеюсь, что это поможет вам найти свое решение.


scponlyпохоже переехал на github.com/scponly/scponly . Ваша ссылка дает 404. :(
Билл Вайс
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.