У меня есть следующие настройки в моей сети:
Internet <--> Bastion <--> Local Network
У меня есть несколько пользователей, и каждый пользователь назначен на определенную машину. Или другими словами: каждый пользователь должен иметь доступ только к одному из этих серверов. Например: User1 -> Machine1, User2 -> Machine2 и так далее.
Эти пользователи будут подключаться из-за пределов моей сети, и я рассмотрел множество вариантов переадресации их подключений через мой бастионный хост в мою сеть.
В конце концов я выбрал Match Blocks и forcecommand.
Итак, мой / etc / ssh / sshd_config на бастионе выглядит так:
Match User User1
ForceCommand ssh User1@Machine1 $SSH_ORIGINAL_COMMAND
Пользователь1 подключается к бастионному хосту, который автоматически устанавливает соединение с Machine1.
Насколько я понял ForceCommand, User1 не будет иметь реального доступа к хосту бастиона, потому что все его операции будут сначала обрабатываться блоком соответствия, следовательно, перенаправляются на Machine1. Однако так ли это на самом деле? Этого уже достаточно, чтобы быть безопасной установкой? В любом случае пользователь находится в тюрьме на Machine1, поэтому у него там не будет много возможностей.