上一主题: 一般登录程序的截获下一主题: 限制 Root 用户的终端


定义用户使用终端的权限

防止入侵者访问系统的最有效方法之一是采取终端(即登录源)保护。 该源可以是用户从其中进行登录的主机或终端(如 X 终端或控制台)。

在如今的现代化体系结构中,终端不再是为其开发 UNIX 的 teletype 计算机。 在大多数站点中,通过 pseudo 终端服务器 (PTS) 或 X 窗口管理器分配“pseudo 终端”,对于安全系统而言,该终端的名称是没有意义的符号。 CA ControlMinder 保护我们视为终端的对象。 当 CA ControlMinder 以下列三种方法之一定义终端时,CA ControlMinder 在登录阶段中执行终端保护:

通过在 TERMINAL 类中定义特定主机以及向对象的访问列表添加适当的用户和组,可以为该特定主机定义登录规则。 对于每个登录源,还可以通过设置 TERMINAL 对象的日期和时间限制来限制允许从该主机或终端登录的日期和时间。 您还可以在 TERMINAL 类中使用通配符来定义与模式(主机名或 IP 地址)匹配的主机。

在大多数情况下,必须限制拥有强大权限的用户(如超级用户或系统管理员)从位于安全位置的终端登录。 希望以超级用户身份进入系统的入侵者和黑客无法从他们自己的远程工作站执行该操作;他们必须从一个位于受保护位置的授权终端执行操作。

通过网络登录时,您不能确定用户确实坐在主机控制台前。 用户可能正坐在与该主机连接的任何终端前,或正在与网络中有权从请求主机接收服务的任何其他节点进行通讯。 允许用户从另一主机登录意味着不仅允许该用户从特定工作站登录,还允许该用户从该工作站授权的任何其他终端登录。 为了确保部门之间的隔离,需要对终端组进行定义,并只允许每个部门的用户从他们部门的终端组进行操作。

与其他资源不同,在终端授权中,授予用户访问信息的权限越大,用户的终端权限就会越低。 超级用户必须是终端访问中最受限制的用户,从而确保没有人可以以 root 身份从不安全的远程终端登录。

当定义终端时,CA ControlMinder 将要求您显式指定终端定义的所有者。 这是因为,如果 root 作为安全管理员成为终端的所有者(默认设置),则超级用户可登录该终端。 在大多数情况下,并不希望这样。 为了防止您犯下此类可能会不小心导致漏洞的错误,CA ControlMinder 会要求您在定义终端时定义所有者。

要定义终端 tty34,请使用以下命令:

newres TERMINAL tty34 defaccess(none) owner(userA)

该命令为终端 tty34 创建记录,将其默认访问权限设置为无,并将 userA 定义为其所有者。 请注意,将自动允许作为终端所有者的 userA 通过终端 tty34 进入系统。

要防止所有用户从终端 tty34 登录,请指定“nobody”作为所有者:

newres TERMINAL tty34 defaccess(none) owner(nobody)

要允许用户从特定终端登录,请输入以下命令:

authorize TERMINAL tty34 uid(USR1)

该命令允许 USR1 从终端 tty34 登录。

还可以授予组使用终端的权限。 例如,以下命令允许组 DEPT1 的成员使用终端 tty34:

authorize TERMINAL tty34 gid(DEPT1)

要定义一组终端(称为终端组),请输入以下命令:

newres GTERMINAL TERM.DEPT1 owner(ADM1)

要将成员终端添加到终端组 TERM.DEPT1,请输入以下命令:

chres GTERMINAL TERM.DEPT1 mem(tty34, tty35)

要授权 USR1 使用该终端组,请输入以下命令:

authorize GTERMINAL TERM.DEPT1 uid(USR1)

这可以向 USR1 授予使用 tty34 和 tty35 的权限。