利用jailkit-2.16.tar.gz + ssh 进行 chroot 操作[备忘]

2023-12-15 04:58

本文主要是介绍利用jailkit-2.16.tar.gz + ssh 进行 chroot 操作[备忘],希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目标

 利用  jaikit 环境, 能够把某个目录虚拟成为 / ,  并且把远程用户限制在该目录中活动,与真正的系统 / 环境进行隔离

利用该环境能够避免开发人员过多地访问系统资源,增加系统安全性

 

 

1.      编译jailkit-2.16.tar.gz

 ./configure && make && make install

 

2.      定义 /data作为数据存放区间, 笼环境专用分区

利用 sdb1 挂载 /data

chown root:root /data

/etc/fstab 定义自动挂载

/dev/sda1  /data   ext4  defaults  0 0

 

3.      自动建立 chroot需要文件,库文件资料

jk_init -v -j /data basicshell editors extendedshell netutils ssh  sftp scp

 

命令执行后,会发现  /data 目录下生成了 shell 环境必须的文件与目录

ls /data/

bin  dev  etc   lib  lib64  lost+found   usr

 

4.      创建用户方法

mkdir  /data/usr/sbin

cp /usr/sbin/jk_lsh /data/usr/sbin/jk_lsh

useradd  terry

jk_jailuser -m -j /data terry

 注:  jk_jailuser 能够把系统用户切换成为笼环境受限用户

注意 /etc/passwd 中用户资料中,默认的 shell 环境发生了变化

terry:x:500:500::/data/./home/terry:/usr/sbin/jk_chrootsh

 

5.      创建chroot后的 /tmp目录

mkdir /data/tmp

chmod 1777 /data/tmp

cp /usr/bin/id /data/usr/bin/id

 

6.      参考笼环境下的passwd文件

/data/etc/passwd

root:x:0:0:root:/root:/bin/bash

terry:x:500:500::/home/terry:/usr/sbin/jk_lsh

 

/data/etc/group

root:x:0:root

terry:x:500:

 

7.   注意,当前 shell /usr/sbin/jk_lsh只允许 scp, cvs, sftp,假如需要使用 ssh登录,必须修改 /data/etc/passwd 中 shell 为/bin/bash

8.   要让用户登录, 还需要修改 "/etc/jailkit/jk_chrootsh.ini" 文件添加下面字段, 注, 每个用户都需要独立添加

[terry]
relax_home_group_permissions=1
relax_home_other_permissions=1

[mary]
relax_home_group_permissions=1
relax_home_other_permissions=1

 

9. 默认情况下, 用户登录后,只具备英文环境, 参考下面链接, 添加用户中文环境
参考

jailkit-2.16.tar.gz 笼环境增加中文环境[备忘]


 

这篇关于利用jailkit-2.16.tar.gz + ssh 进行 chroot 操作[备忘]的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/495198

相关文章

使用Java将各种数据写入Excel表格的操作示例

《使用Java将各种数据写入Excel表格的操作示例》在数据处理与管理领域,Excel凭借其强大的功能和广泛的应用,成为了数据存储与展示的重要工具,在Java开发过程中,常常需要将不同类型的数据,本文... 目录前言安装免费Java库1. 写入文本、或数值到 Excel单元格2. 写入数组到 Excel表格

Python中pywin32 常用窗口操作的实现

《Python中pywin32常用窗口操作的实现》本文主要介绍了Python中pywin32常用窗口操作的实现,pywin32主要的作用是供Python开发者快速调用WindowsAPI的一个... 目录获取窗口句柄获取最前端窗口句柄获取指定坐标处的窗口根据窗口的完整标题匹配获取句柄根据窗口的类别匹配获取句

Python位移操作和位运算的实现示例

《Python位移操作和位运算的实现示例》本文主要介绍了Python位移操作和位运算的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一... 目录1. 位移操作1.1 左移操作 (<<)1.2 右移操作 (>>)注意事项:2. 位运算2.1

利用python实现对excel文件进行加密

《利用python实现对excel文件进行加密》由于文件内容的私密性,需要对Excel文件进行加密,保护文件以免给第三方看到,本文将以Python语言为例,和大家讲讲如何对Excel文件进行加密,感兴... 目录前言方法一:使用pywin32库(仅限Windows)方法二:使用msoffcrypto-too

Pandas使用AdaBoost进行分类的实现

《Pandas使用AdaBoost进行分类的实现》Pandas和AdaBoost分类算法,可以高效地进行数据预处理和分类任务,本文主要介绍了Pandas使用AdaBoost进行分类的实现,具有一定的参... 目录什么是 AdaBoost?使用 AdaBoost 的步骤安装必要的库步骤一:数据准备步骤二:模型

使用Pandas进行均值填充的实现

《使用Pandas进行均值填充的实现》缺失数据(NaN值)是一个常见的问题,我们可以通过多种方法来处理缺失数据,其中一种常用的方法是均值填充,本文主要介绍了使用Pandas进行均值填充的实现,感兴趣的... 目录什么是均值填充?为什么选择均值填充?均值填充的步骤实际代码示例总结在数据分析和处理过程中,缺失数

Python ZIP文件操作技巧详解

《PythonZIP文件操作技巧详解》在数据处理和系统开发中,ZIP文件操作是开发者必须掌握的核心技能,Python标准库提供的zipfile模块以简洁的API和跨平台特性,成为处理ZIP文件的首选... 目录一、ZIP文件操作基础三板斧1.1 创建压缩包1.2 解压操作1.3 文件遍历与信息获取二、进阶技

Java中字符串转时间与时间转字符串的操作详解

《Java中字符串转时间与时间转字符串的操作详解》Java的java.time包提供了强大的日期和时间处理功能,通过DateTimeFormatter可以轻松地在日期时间对象和字符串之间进行转换,下面... 目录一、字符串转时间(一)使用预定义格式(二)自定义格式二、时间转字符串(一)使用预定义格式(二)自

CentOS7更改默认SSH端口与配置指南

《CentOS7更改默认SSH端口与配置指南》SSH是Linux服务器远程管理的核心工具,其默认监听端口为22,由于端口22众所周知,这也使得服务器容易受到自动化扫描和暴力破解攻击,本文将系统性地介绍... 目录引言为什么要更改 SSH 默认端口?步骤详解:如何更改 Centos 7 的 SSH 默认端口1

Java字符串操作技巧之语法、示例与应用场景分析

《Java字符串操作技巧之语法、示例与应用场景分析》在Java算法题和日常开发中,字符串处理是必备的核心技能,本文全面梳理Java中字符串的常用操作语法,结合代码示例、应用场景和避坑指南,可快速掌握字... 目录引言1. 基础操作1.1 创建字符串1.2 获取长度1.3 访问字符2. 字符串处理2.1 子字