Поэтому я добавил открытый ключ к authorized_keys
. Как я могу ограничить его, чтобы он мог перенаправлять порты, но у него может не быть оболочки?
8
Вы должны поставить 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 ...
Раздел AUTHORIZED_KEYS ФОРМАТ ФАЙЛА . Вы можете ограничить то, на что пользователи могут перенаправлять порты, просто добавив порты и хосты, которые вы хотите разрешить, например
Также вы можете ограничить, откуда пользователь подключается, какие команды могут выполнять и т. Д.
источник
Я бы посмотрел на использование scponly , я подозреваю, что его можно использовать для переадресации портов, а не для доступа только по scp / sftp. Он предназначен для ограничения пользователя от входа в систему или выполнения команд через ssh.
Другой фактор, который вам может понадобиться или вы хотите использовать sshd в среде chroot , вот несколько инструкций по настройке sftp с помощью chroot. Вы должны быть в состоянии адаптировать их довольно легко.
Я надеюсь, что это поможет вам найти свое решение.
источник
scponly
похоже переехал на github.com/scponly/scponly . Ваша ссылка дает 404. :(