============== jail-shell安全受限shell是一个Linux环境下的安全工具,主要使用chroot, namespace技术,限制用户执行特定的命令,和访问特定的目录;可将用户通过ssh, scp, sftp,telnet, 终端等方式登录限制到安全的运行环境中。
相比ssh自带的chroo功能,有易于使用,自动生成chroot环境,支持Namespace隔离,支持chroot环境只读,目录文件映射等功能。
可用于:
webhost的ssh,sftp受限访问;
企业管理员的权限分级管理;
一体化产品的权限控制;
============== 1.易于使用 通过配置文件,自动生成chroot运行环境,提供jail-shell管理命令方便添加、查看、删除受限用户,以及安装、删除chroot运行环境。 2.chroot技术限制用户访问范围 采用Linux chroot技术,限制用户的目录访问范围,避免用户访问受限信息,防止用户对系统做破坏。 3.目录只读保护 对chroot运行环境进行只读保护,避免需要保护的目录被修改、文件被破坏;避免用户创建设备文件,访问系统受限文件,并避免执行外部可执行文件。 4.namespace限制用户可见范围 采用Linux namespace技术,限制用户pid,mount目录的可见范围,避免信息泄漏。 5.系统命令通道 提供系统命令代理通道,允许用户在chroot环境中执行真实系统的受限命令,在提供必要功能的情况下,保护系统。 6.自动处理chroot环境命令依赖 只需要提供命令列表,即可自动将命令依赖的动态库复制到chroot环境,避免手工复制动态库的繁杂工作。 7.capabilities限制 丢弃关键的capabilities权限,避免系统,chroot运行环境被rootkit破解。 8.多Linux操作系统支持 支持redhat, sles, debian及其衍生的操作系统。
============== 安全受限shell包含3部分,pam插件,jail-cmd命令代理,jail-shell命令工具。 pam_jail_shell插件: 主要控制登录的用户,根据配置列表,将登录的用户采用chroot, namespace技术,限制在特定的受限目录中。 jail-cmd命令代理 主要将命令转发到真实的系统中,如用户密码修改,或其他用户相关的业务命令的执行,并对命令做注入检测,防止注入 jail-shell工具 主要提供管理安全受限shell的功能,让用户更加易于使用,包括用户的添加、删除,shell的配置,安装,删除。
说明
1. 用户通过ssh, 终端,telnet等shell管理工具登录到系统后,pam_jail_shell插件根据配置列表,将登录用户的访问范围限制在指定的chroot环境中。2. 管理员通过jail-shell命令,管理受限用户名单列表,以及管理chroot环境的命令列表,并配置目录的访问范围。 3. jail-cmd代理用户执行的系统命令,辅助实现必要的业务功能。
============== 下载源代码,编译安装完成后,可使用 jail-shell 命令管理安全受限shell,通过 jail-shell -h 查看命令帮助 在使用上,步骤如下: 1. 使用 useradd username 命令添加用户到系统中。 2. 使用 jail-shell jail 创建安全受限shell配置,并创建受限运行环境。 3. 使用 jail-shell user 将用户添加到受限系统中。