Назад | Перейти на главную страницу

Ограничить пользователя ssh только подключением

Настройка окна перехода по SSH, чтобы позволить некоторым внешним людям получить доступ к внутреннему серверу. У меня есть все средства проверки подлинности, где они будут использовать пару закрытых / открытых ключей для проверки подлинности. Затем я буду использовать IP-таблицы, чтобы разрешить доступ по RDP к серверу, с которым им нужно работать. Затем я попрошу их использовать функцию туннеля в Putty, поэтому им нужно будет сделать только порт localhost: в окне RDP после подключения вместо запуска команд в поле. Выше все работает нормально.

Поскольку это посторонние люди, я НЕ хочу, чтобы у них вообще был доступ к чему-либо на поле прыжка. Я просто хочу, чтобы они ТОЛЬКО аутентифицировались, а затем удаленно использовали Windows RDP.

Прямо сейчас, когда они аутентифицируются, он открывает командную строку в замазке, и она должна оставаться открытой, чтобы они могли удаленно. У меня такой вопрос. Можно ли ограничить пользователей только возможностью аутентификации и ничего больше? Я вообще не хочу, чтобы у них был доступ к оболочке. Возможно, что-то похожее на то, что делает / bin / false, ЗА ИСКЛЮЧЕНИЕМ того, что соединение остается открытым, чтобы разрешить RDP без возможности даже вводить команды.

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

Я немного новичок в Linux, поэтому терпите меня, если я прошу глупостей.

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

Из GNU интернет сайт:

Если Bash запускается с именем rbash, или --restricted или -r опция предоставляется при вызове, оболочка становится ограниченной. Оболочка с ограничениями используется для создания более контролируемой среды, чем стандартная оболочка. Оболочка с ограничениями ведет себя идентично bash за исключением того, что запрещены или не выполняются следующие действия:

  • Смена каталогов с помощью cd встроенный.
  • Установка или снятие значений SHELL, PATH, ENV, или BASH_ENV переменные.
  • Указание имен команд, содержащих косую черту.
  • Указание имени файла, содержащего косую черту в качестве аргумента . встроенная команда.
  • Указание имени файла, содержащего косую черту в качестве аргумента -p вариант для hash встроенная команда.
  • Импорт определений функций из среды оболочки при запуске.
  • Анализ значения SHELLOPTS из среды оболочки при запуске.
  • Перенаправление вывода с помощью >, >|, <>, >&, &>, и >> операторы перенаправления.
  • Используя exec встроенный для замены оболочки другой командой.
  • Добавление или удаление встроенных команд с помощью -f и -d варианты для enable встроенный.
  • Используя enable Встроенная команда для включения отключенных встроенных команд оболочки.
  • Указание -p вариант для command встроенный.
  • Отключение ограниченного режима с помощью set +r или set +o restricted.

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

я бы порекомендовал SoftEther VPN server, потому что он легкий, мощный и действительно простой в настройке. Процесс настройки сервера также одинаков для разных платформ и операционных систем, которые вы можете использовать.