定义用户权限以使用终端
阻止入侵者访问系统的最有效方法之一是进行终端保护,即登录的源。 源可以是用户登录的主机或终端(如 X 终端或控制台)。
cminder12901cn
阻止入侵者访问系统的最有效方法之一是进行终端保护,即登录的源。 源可以是用户登录的主机或终端(如 X 终端或控制台)。
在当今的现代化体系结构中,终端不再是为其开发 UNIX 的电传计算机。 在大多数站点中,pseudo 终端通过 pseudo 终端服务器 (PTS) 或 X 窗口管理器分配,终端的名称对于安全系统而言是毫无意义的符号。 CA ControlMinder 对我们所理解的终端提供保护。 CA ControlMinder 在登录阶段实施终端保护,此时 CA ControlMinder 通过以下三种方式之一定义终端:
- 当用户使用 XDM 登录窗口从 X 终端登录时,CA ControlMinder 将 X 终端的 IP 地址转换为终端用于登录请求的主机名(从 /etc/hosts、NIS 或 DNS)。 当转换主机名失败或您更愿意使用 IP 地址时,CA ControlMinder 也可以使用 IP 地址提供保护。
- 当用户从哑终端登录时,TTY 名称识别此终端。
- 当用户通过网络(telnet、rlogin、rsh 等)登录时,转换为主机名(通过 /etc/hosts、NIS 或 DNS)的请求 IP 地址被视为终端名称。
通过在 TERMINAL 类中定义此主机并向该对象的访问列表添加适当的用户和组,您可以为特定主机定义登录规则。 对于每个登录源,您还可以通过为 TERMINAL 对象设置日期和时间限制,来限制允许从此主机或终端登录和日期和时间。 还可以在 TERMINAL 类中使用通配符来定义与模式(主机名或 IP 地址)匹配的主机。
在大多数情况下,必须将如超级用户或系统管理员等经过高度授权的用户限制为登录位于安全区域的终端。 希望以超级用户身份进入系统的入侵者和黑客将从自己的远程工作站执行入侵;他们必须从应位于受保护位置的授权终端入侵。
从网络登录时,您不能确定该用户是否确实坐在主机控制台前。 用户可能正坐在与该主机连接的任何终端前,或从网络中的任何其他节点进行通讯,以接收来自请求主机的服务。 允许用户从另一主机登录,意味着我们不仅允许该用户从特定工作站登录,还允许其从该工作站授权的任何其他终端登录。 为了确保部门之间的隔离,请定义终端组,并允许每个部门的用户只能从他们部门的终端组工作。
不同于其他资源,在终端授权中,用户能够访问的信息越多,该用户的终端权限就会越低。 超级用户必须是终端访问中最受限制的用户,以确保没有人能够以 root 用户身份从不安全的远程终端登录。
定义终端时,CA ControlMinder 需要您明确指定终端定义的所有者。 原因是,如果作为安全管理员的 root 用户默认成为终端的所有者,超级用户将有权登录该终端。 在大多数情况下,这并不是我们所希望的。 为了防止您出现此类错误,从而无意导致安全漏洞,CA ControlMinder 要求您在定义终端时定义所有者。
要定义终端 tty34,请使用以下命令:
newres TERMINAL tty34 defaccess(none) owner(userA)
此命令为终端 tty34 创建记录,将其默认访问权限设为 NONE,并将 userA 定义为其所有者。 请注意,作为终端所有者的 userA 自动获得通过终端 tty34 进入系统的权限。
要防止所有用户从终端 tty34 登录,请将 nobody 指定为所有者:
newres TERMINAL tty34 defaccess(none) owner(nobody)
要允许用户从特定终端登录,请输入以下命令:
authorize TERMINAL tty34 uid(USR1)
此命令允许 USR1 从终端 tty34 登录。
还可以授予某个组使用终端的权限。 例如,以下命令允许组 DEPT1 的成员使用终端 tty34 DEPT1:
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 的权限。