使用 sshd 配置 Ubuntu SELinux

使用 sshd 配置 Ubuntu SELinux

我正在尝试在 Ubuntu Trusty 服务器(Amazon EC2 实例)中设置 SELinux。我按照 Debian 文档安装 SELinux。安装工作顺利,如下所示:

root@machine:~# sestatus

SELinux 状态:已启用

SELinuxfs 挂载:/sys/fs/selinux

SELinux 根目录:/etc/selinux

加载的策略名称:default

当前模式:宽容

配置文件中的模式:宽容

政策 MLS 状态:已启用

政策拒绝_未知状态:允许

最高内核策略版本:28

但是,作为使用 ssh 的标准用户,我的上下文有些问题。我的上下文是:system_u:system_r:sysadm_t:SystemLow。我使用 root 用户进行了测试,他也是 system_u:system_r:sysadm_t:SystemLow。

root@ip-172-31-4-210:~# id -Z

system_u:system_r:sysadm_t:SystemLow

由于我只能通过 SSH 连接此服务器,我猜问题就出在这里。是否有一个布尔值或策略允许使用 unconfined_u 上下文进行 ssh 登录?

编辑1:抱歉,我没有提供足够的细节。我想要做的只是设置 SELinux 来限制进程和守护进程,我希望我的标准用户能够使用 sudo 并能够管理系统。root 不是应该处于“unconfined_u”上下文中吗?为什么我是 system_u?

semanage login -l 的输出:

登录名 SELinux 用户 MLS/MCS 范围 服务

__default__ unconfined_u 系统低-系统高 *

root unconfined_u 系统低位-系统高位 *

system_u system_u 系统低-系统高 *

ubuntu unconfined_u 系统低-系统高 *

答案1

首先,你可以使用以下命令检查所有 SELinux 布尔值:

getsebool -a

您可以在那里检查是否存在与此问题有关的布尔值。

您可以尝试的另一件事是赋予用户不同的角色:

semanage login -a -s <role> <your_user>

只需确保角色与 root 用户(在本例中为 system_u)相同,但要注意安全风险。您可以随时使用以下命令返回:

semanage login -d <your_user>

相关内容