Redhat: Как создать новую роль с SELinux?

Я не знаю о любом программном обеспечении прокси для RDP, но что должно быть возможным, должен установить VPN (PPTP, IPSEC и т.д.) к одному из удаленных серверов и NAT соединение позади IP-адреса сервера. Это установит связь, кажется, прибывают из IP сервера, и должно быть намного легче усовершенствовать VPN.

Если один из удаленных серверов выполняет пользу Linux/BSD с OpenSSH, Вы могли бы также использовать Шпаклевку для туннелирования. В Шпаклевке, перед соединением переходят к "Соединению-> SSH-> Туннели". Под разделом "Add new forwarded port", но исходным портом как 66 389, и место назначения, поскольку "Добавляют" $rdpip:3389 и хит. Затем откройте соединение как нормальное. Затем скажите удаленному рабочему столу соединяться с localhost:63389, и он использует туннель и, будет казаться, прибудет из IP-адреса ssh сервера.

1
задан 22 August 2013 в 23:16
2 ответа

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

Моя идея предоставить пользователю ограниченную роль администратора реализована автор:

  1. сопоставив его / ее с guest_u , это сильно ограниченный (и уже существующий) пользователь SELinux.
  2. создание правил управления доступом на основе ролей (RBAC) в сочетании с sudo , позволяющие конкретным людям запускать определенные команды на определенных машинах с определенной ролью и типом SELinux.
  3. (Конечно, это ограниченная версия того, как выглядит действительно замкнутая среда, вам нужно добавить, например, правильно настроенный rbash , ограниченный ПУТЬ , аутентификация 2FA, правильная авторизация, ...)

Ключевым моментом здесь является возможность предоставить непривилегированный guest_u пользователь может запускать команду с повышенными привилегиями , не покидая своего ограниченного отображения пользователя SELinux .

Подробности смотрите на странице sudoers (5) .

Cmnd_Spec ::= Runas_Spec? SELinux_Spec? Tag_Spec* Cmnd

SELinux_Spec В системах с поддержкой SELinux записи sudoers могут дополнительно иметь роль и / или тип SELinux, связанные с командой. Если роль или тип указаны с помощью команды, они переопределят любые значения по умолчанию, указанные в sudoers. Однако роль или тип, указанные в командной строке, будут заменять значения в sudoers.

Чтобы проверить поддержку SELinux в sudo , выполните:

# ldd $(which sudo) | grep selinux

В RHEL, sudo ] по умолчанию включена поддержка SELinux.

0
ответ дан 3 December 2019 в 21:28

Используйте sepolicy из пакета policycoreutils-devel в вашем дистрибутиве RedHat. Чтобы добиться того, что вы просили, вам нужно использовать следующее:

sepolicy generate --confined_admin -n NAME [-a ADMIN_DOMAIN] [-u  USER]

Это сгенерирует политику, которую вы можете скомпилировать (make -f /usr/share/selinux/devel/Makefile) в модуль, который вы можете установить с помощью -i, но, пожалуйста, сначала проверьте полученный .te файл и настройте его так, как вам удобно. Обратите также внимание, что генератор по умолчанию вставляет разрешительный домен в политику. Поэтому, как только вы довольны созданной политикой -- вам нужно удалить разрешительный домен, перекомпилировать политику с помощью make -f /usr/share/selinux/devel/Makefile и выключить :)

.
2
ответ дан 3 December 2019 в 21:28

Теги

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