Установите rcp на RHEL

Моя вторая идея - запустить "удаленную" панель управления как собственного пользователя (root?). который затем создает отдельных пользователей для каждого сервера и запускает их как соответствующих пользователей.

Это не лучшее решение, но в интересах вашего обучения, я все равно буду критиковать его. Я доберусь до лучшего решения всего за секунду, но это важно.Повторяйте за мной: [116523]никогда, никогда не запускайте веб-сервисы в качестве root, если вы можете помочь ему[116524] (и в этом случае вы [116525]можете помочь ему, потому что у вас есть контроль над приложением). Правильным способом реализации этого является наличие демона, который начинает с root, но передает привилегии непривилегированному пользователю. Вы заставите этого демона породить второго демона перед тем, как он сбросит привилегии, а непривилегированный демон будет разговаривать с демоном с привилегиями. Привилегированный демон будет выполнять действия от имени непривилегированного демона.Повторяйте за мной: [116527]такое разделение привилегий БЕЗ ИСПОЛЬЗОВАНИЯ, если только демон с привилегиями не выполняет валидацию.[116528] Это означает, что демон с привилегиями не может слепо принимать команды от демона с непривилегированными правами. Он должен убедиться, что команда - это что-то, что хорошо и имеет смысл. Если вы не делаете валидацию, вы ввели [116529] запутанную проблему заместителей [116530]. При написании такого кода безопасности предположим, что ваш веб-сервис будет скомпрометирован. Я слышу, что вы говорите - "этого никогда не случится". [116531] Да, случится. [116532] Безопасность заключается в ограничении ущерба. Вы также можете извлечь пользу из чтения [116533]Шесть самых тупых идей в компьютерной безопасности[116534].Моя третья идея - расширить первую и запустить все серверы в какой-нибудь песочнице, где исполняемые файлы не могут получить доступ к файлам снаружи. Но технически я не знаю, как это будет сделано и возможно ли это вообще.

Screenshot of “ChromeLite”

A+: это (часть) правильный способ достижения такого рода безопасности веб-приложений. Способ, которым вы бы это сделали, это порождение процессов вашего сервера в [116537]chroot jail[116538].[116030].

1
09.07.2014, 00:05
2 ответа

Я использую CentOS 6.5, а двоичный файл rcp принадлежит пакету krb5-appl-clients-1.0.1-7.el6_2.1.x86_64

[root@CentOS-VM1 6]# rpm -qf $(which rcp)
krb5-appl-servers-1.0.1-7.el6_2.1.x86_64
krb5-appl-clients-1.0.1-7.el6_2.1.x86_64

Моя версия CentOS -

[root@CentOS-VM1 6]# lsb_release -d
Description:    CentOS release 6.5 (Final)

Вы можете установить пакет krb5-appl-clients-1.0.1-7.el6_2.1.x86_64 с использованием yum

yum install krb5-appl-clients

Примечание : я рекомендую вам использовать scp или rsync через ssh (частная / общедоступная аутентификация)

3
27.01.2020, 23:17

Вы можете попробовать (как root), набрав

yum install rsh

Вероятно, он не установлен, так как он старый и небезопасный, но вы МОЖЕТЕ установить его и запустить.

RCP / RSH устарел и небезопасен, и разрабатывать устройства для работы с ним, а не обновлять его для использования более современных технологий, бессмысленно.

Может быть, попробуйте показать «дизайнеру» это или, что еще лучше, покажите своего менеджера.


Теперь вы можете попробовать следующие шаги:

Шаг 01: Включите службу RCP на хосте UNIX

Включите службу RCP на машине unix, используя inetd :

  1. Войдите в систему как корень.
  2. Отредактируйте файл /etc/inetd.conf .
  3. Раскомментируйте строки, начинающиеся с оболочки и начинающиеся с exec .
  4. Сохраните файл.
  5. Используйте ps -ef | grep inetd и определите идентификатор службы inetd . Отправьте сигнал профиля пользователя хоста (HUP) на inetd , используя kill или используя pkill .
  6. Снова запустите inetd , используя inetd restart .

Чтобы включить службу RCP с помощью xinetd :

  1. Войдите в систему как root.
  2. Отредактируйте файл /etc/Xinetd.d/rsh . Вы можете получить другой файл на основе вашего дистрибутива Linux.
  3. Измените отключение линии на нет .
  4. Сохраните файл.
  5. Используйте ps -ef | grep inetd и определите pid службы inetd . Отправьте сигнал HUP на xinetd , используя kill или используя pkill .
  6. Снова запустите xinetd , используя xinetd restart или service xinetd restart .

Шаг 02: Установите разрешения безопасности

После включения служб RCP вы должны установить разрешения безопасности, чтобы хост Windows мог подключаться к вашему компьютеру.

  1. Отредактируйте файл /etc/hosts.equiv . В зависимости от вашего дистрибутива Linux этот файл может отличаться. Вы можете получить что-то вроде /etc/hosts.allow .
  2. Добавьте в файл строку, содержащую имя вашего хоста Windows.
  3. Добавьте вторую строку, содержащую имя вашего хоста Windows и имя пользователя, который может получить доступ к каталогу, который вы хотите передать. Разделите два элемента символом табуляции.
  4. Сохраните файл.
2
27.01.2020, 23:17

Теги

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